diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..9590e99 Binary files /dev/null and b/.DS_Store differ diff --git a/.gitignore b/.gitignore index 94b0a14..dafb9c7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,2 @@ /public/ -/resources/_gen/ -/node_modules/ -/.DS_Store +/resources/ \ No newline at end of file diff --git a/node_modules/.bin/cssesc b/node_modules/.bin/cssesc new file mode 120000 index 0000000..487b689 --- /dev/null +++ b/node_modules/.bin/cssesc @@ -0,0 +1 @@ +../cssesc/bin/cssesc \ No newline at end of file diff --git a/node_modules/.bin/nanoid b/node_modules/.bin/nanoid new file mode 120000 index 0000000..e2be547 --- /dev/null +++ b/node_modules/.bin/nanoid @@ -0,0 +1 @@ +../nanoid/bin/nanoid.cjs \ No newline at end of file diff --git a/node_modules/.bin/postcss b/node_modules/.bin/postcss new file mode 120000 index 0000000..236af7c --- /dev/null +++ b/node_modules/.bin/postcss @@ -0,0 +1 @@ +../postcss-cli/index.js \ No newline at end of file diff --git a/node_modules/.bin/prettier b/node_modules/.bin/prettier new file mode 120000 index 0000000..a478df3 --- /dev/null +++ b/node_modules/.bin/prettier @@ -0,0 +1 @@ +../prettier/bin-prettier.js \ No newline at end of file diff --git a/node_modules/.bin/purgecss b/node_modules/.bin/purgecss new file mode 120000 index 0000000..6ef98b0 --- /dev/null +++ b/node_modules/.bin/purgecss @@ -0,0 +1 @@ +../purgecss/bin/purgecss.js \ No newline at end of file diff --git a/node_modules/.bin/ulid b/node_modules/.bin/ulid new file mode 120000 index 0000000..8262ea0 --- /dev/null +++ b/node_modules/.bin/ulid @@ -0,0 +1 @@ +../ulid/bin/cli.js \ No newline at end of file diff --git a/node_modules/.bin/yaml b/node_modules/.bin/yaml new file mode 120000 index 0000000..0368324 --- /dev/null +++ b/node_modules/.bin/yaml @@ -0,0 +1 @@ +../yaml/bin.mjs \ No newline at end of file diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json new file mode 100644 index 0000000..3b670cc --- /dev/null +++ b/node_modules/.package-lock.json @@ -0,0 +1,1026 @@ +{ + "name": "agico-hugo", + "version": "3.1.3", + "lockfileVersion": 3, + "requires": true, + "packages": { + "node_modules/@fullhuman/postcss-purgecss": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@fullhuman/postcss-purgecss/-/postcss-purgecss-5.0.0.tgz", + "integrity": "sha512-onDS/b/2pMRzqSoj4qOs2tYFmOpaspjTAgvACIHMPiicu1ptajiBruTrjBzTKdxWdX0ldaBb7wj8nEaTLyFkJw==", + "dev": true, + "dependencies": { + "purgecss": "^5.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/dependency-graph": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "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.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs-extra": { + "version": "11.3.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.1.tgz", + "integrity": "sha512-eXvGGwZ5CL17ZSwHWd3bbgk7UUpF6IFHtP57NYYakPvHOs8GDgDe5KJI36jIJzDkJ6eJjuzRA8eBQb6SkKue0g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-stdin": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", + "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-cli": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-10.1.0.tgz", + "integrity": "sha512-Zu7PLORkE9YwNdvOeOVKPmWghprOtjFQU3srMUGbdz3pHJiFh7yZ4geiZFMkjMfB0mtTFR3h8RemR62rPkbOPA==", + "dev": true, + "dependencies": { + "chokidar": "^3.3.0", + "dependency-graph": "^0.11.0", + "fs-extra": "^11.0.0", + "get-stdin": "^9.0.0", + "globby": "^13.0.0", + "picocolors": "^1.0.0", + "postcss-load-config": "^4.0.0", + "postcss-reporter": "^7.0.0", + "pretty-hrtime": "^1.0.3", + "read-cache": "^1.0.0", + "slash": "^5.0.0", + "yargs": "^17.0.0" + }, + "bin": { + "postcss": "index.js" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-reporter": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-7.1.0.tgz", + "integrity": "sha512-/eoEylGWyy6/DOiMP5lmFRdmDKThqgn7D6hP2dXKJI/0rJSO1ADFNngZfDzxL0YAxFvws+Rtpuji1YIHj4mySA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "picocolors": "^1.0.0", + "thenby": "^1.3.4" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-plugin-go-template": { + "version": "0.0.13", + "resolved": "https://registry.npmjs.org/prettier-plugin-go-template/-/prettier-plugin-go-template-0.0.13.tgz", + "integrity": "sha512-gG/xT5kd+kCzoMaTchXvdfBdsunyRCV6G8cgdPGPd2V5JGGKXUG7SjzBKU7jaGh2RTeblcAdBb/E+S/duOAMsA==", + "dev": true, + "dependencies": { + "ulid": "^2.3.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "prettier": "^2.0.0" + } + }, + "node_modules/pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/purgecss": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/purgecss/-/purgecss-5.0.0.tgz", + "integrity": "sha512-RAnuxrGuVyLLTr8uMbKaxDRGWMgK5CCYDfRyUNNcaz5P3kGgD2b7ymQGYEyo2ST7Tl/ScwFgf5l3slKMxHSbrw==", + "dev": true, + "dependencies": { + "commander": "^9.0.0", + "glob": "^8.0.3", + "postcss": "^8.4.4", + "postcss-selector-parser": "^6.0.7" + }, + "bin": { + "purgecss": "bin/purgecss.js" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/slash": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", + "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", + "dev": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/thenby": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/thenby/-/thenby-1.3.4.tgz", + "integrity": "sha512-89Gi5raiWA3QZ4b2ePcEwswC3me9JIg+ToSgtE0JWeCynLnLxNr/f9G+xfo9K+Oj4AFdom8YNJjibIARTJmapQ==", + "dev": true + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ulid": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/ulid/-/ulid-2.4.0.tgz", + "integrity": "sha512-fIRiVTJNcSRmXKPZtGzFQv9WRrZ3M9eoptl/teFJvjOzmpU+/K/JH6HZ8deBfb5vMEpicJcLn7JmvdknlMq7Zg==", + "dev": true, + "bin": { + "ulid": "bin/cli.js" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yaml": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz", + "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==", + "dev": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "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" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + } + } +} diff --git a/node_modules/@fullhuman/postcss-purgecss/README.md b/node_modules/@fullhuman/postcss-purgecss/README.md new file mode 100644 index 0000000..75de58e --- /dev/null +++ b/node_modules/@fullhuman/postcss-purgecss/README.md @@ -0,0 +1,139 @@ +# PostCSS Purgecss +![David (path)](https://img.shields.io/david/FullHuman/purgecss?path=packages%2Fpostcss-purgecss&style=for-the-badge) +![Dependabot](https://img.shields.io/badge/dependabot-enabled-%23024ea4?style=for-the-badge) +![npm](https://img.shields.io/npm/v/@fullhuman/postcss-purgecss?style=for-the-badge) +![npm](https://img.shields.io/npm/dw/@fullhuman/postcss-purgecss?style=for-the-badge) +![GitHub](https://img.shields.io/github/license/FullHuman/purgecss?style=for-the-badge) + +[PostCSS] plugin for PurgeCSS. + +[PostCSS]: https://github.com/postcss/postcss + +## Installation + +``` +npm i -D @fullhuman/postcss-purgecss postcss +``` + +## Usage + +```js +const purgecss = require('@fullhuman/postcss-purgecss') +postcss([ + purgecss({ + content: ['./src/**/*.html'] + }) +]) +``` + +See [PostCSS] docs for examples for your environment. + +## Options + +All of the options of purgecss are available to use with the plugins. +You will find below the main options available. For the complete list, go to the [purgecss documentation website](https://www.purgecss.com/configuration.html#options). + +### `content` (**required** or use `contentFunction` instead) +Type: `Array` + +You can specify content that should be analyzed by Purgecss with an array of filenames or globs. The files can be HTML, Pug, Blade, etc. + +### `contentFunction` (as alternative to `content`) +Type: `(sourceInputFile: string) => Array` + +The function receives the current source input file. With this you may provide a specific array of globs for each input. E.g. for +an angular application only scan the components template counterpart for every component scss file: + +```js +purgecss({ + contentFunction: (sourceInputFileName: string) => { + if (/component\.scss$/.test(sourceInputFileName)) + return [sourceInputFileName.replace(/scss$/, 'html')] + else + return ['./src/**/*.html'] + }, +}) +``` + +### `extractors` +Type: `Array` + +Purgecss can be adapted to suit your needs. If you notice a lot of unused CSS is not being removed, you might want to use a custom extractor. +More information about extractors [here](https://www.purgecss.com/extractors.html). + +### `safelist` + +You can indicate which selectors are safe to leave in the final CSS. This can be accomplished with the option `safelist`. + +Two forms are available for this option. + +```ts +safelist: ['random', 'yep', 'button', /^nav-/] +``` + +In this form, safelist is an array that can take a string or a regex. + +The _complex_ form is: + +```ts +safelist: { + standard: ['random', 'yep', 'button', /^nav-/], + deep: [], + greedy: [], + keyframes: [], + variables: [] +} +``` + +### `blocklist` + +Blocklist will block the CSS selectors from appearing in the final output CSS. The selectors will be removed even when they are seen as used by PurgeCSS. + +```ts +blocklist: ['usedClass', /^nav-/] +``` +Even if nav-links and usedClass are found by an extractor, they will be removed. + +### `skippedContentGlobs` + +If you provide globs for the `content` parameter, you can use this option to exclude certain files or folders that would otherwise be scanned. Pass an array of globs matching items that should be excluded. (Note: this option has no effect if `content` is not globs.) + +```ts +skippedContentGlobs: ['node_modules/**', 'components/**'] +``` +Here, PurgeCSS will not scan anything in the "node_modules" and "components" folders. + + +### `rejected` +Type: `boolean` +Default value: `false` + +If true, purged selectors will be captured and rendered as PostCSS messages. +Use with a PostCSS reporter plugin like [`postcss-reporter`](https://github.com/postcss/postcss-reporter) +to print the purged selectors to the console as they are processed. + +### `keyframes` +Type: `boolean` +Default value: `false` + +If you are using a CSS animation library such as animate.css, you can remove unused keyframes by setting the keyframes option to true. + +#### `fontFace` +Type: `boolean` +Default value: `false` + +If there are any unused @font-face rules in your css, you can remove them by setting the fontFace option to true. + +## Contributing + +Please read [CONTRIBUTING.md](./../../CONTRIBUTING.md) for details on our code of +conduct, and the process for submitting pull requests to us. + +## Versioning + +postcss-purgecss use [SemVer](http://semver.org/) for versioning. + +## License + +This project is licensed under the MIT License - see the [LICENSE](./../../LICENSE) file +for details. diff --git a/node_modules/@fullhuman/postcss-purgecss/lib/postcss-purgecss.d.ts b/node_modules/@fullhuman/postcss-purgecss/lib/postcss-purgecss.d.ts new file mode 100644 index 0000000..beafa9f --- /dev/null +++ b/node_modules/@fullhuman/postcss-purgecss/lib/postcss-purgecss.d.ts @@ -0,0 +1,164 @@ +/** + * PostCSS Plugin for PurgeCSS + * + * Most bundlers and frameworks to build websites are using PostCSS. + * The easiest way to configure PurgeCSS is with its PostCSS plugin. + * + * @packageDocumentation + */ + +import * as postcss from 'postcss'; + +/** + * @public + */ +declare type ComplexSafelist = { + standard?: StringRegExpArray; + /** + * You can safelist selectors and their children based on a regular + * expression with `safelist.deep` + * + * @example + * + * ```ts + * const purgecss = await new PurgeCSS().purge({ + * content: [], + * css: [], + * safelist: { + * deep: [/red$/] + * } + * }) + * ``` + * + * In this example, selectors such as `.bg-red .child-of-bg` will be left + * in the final CSS, even if `child-of-bg` is not found. + * + */ + deep?: RegExp[]; + greedy?: RegExp[]; + variables?: StringRegExpArray; + keyframes?: StringRegExpArray; +}; + +/** + * @public + */ +declare type ExtractorFunction = (content: T) => ExtractorResult; + +/** + * @public + */ +declare type ExtractorResult = ExtractorResultDetailed | string[]; + +/** + * @public + */ +declare interface ExtractorResultDetailed { + attributes: { + names: string[]; + values: string[]; + }; + classes: string[]; + ids: string[]; + tags: string[]; + undetermined: string[]; +} + +/** + * @public + */ +declare interface Extractors { + extensions: string[]; + extractor: ExtractorFunction; +} + +/** + * PostCSS Plugin for PurgeCSS + * + * @param opts - PurgeCSS Options + * @returns the postCSS plugin + * + * @public + */ +declare const purgeCSSPlugin: postcss.PluginCreator; +export default purgeCSSPlugin; + +/** + * @public + */ +declare interface RawContent { + extension: string; + raw: T; +} + +/** + * @public + */ +declare interface RawCSS { + raw: string; + name?: string; +} + +/** + * @public + */ +declare type StringRegExpArray = Array; + +/** + * {@inheritDoc purgecss#UserDefinedOptions} + * + * @public + */ +export declare interface UserDefinedOptions extends Omit { + content?: UserDefinedOptions_2["content"]; + contentFunction?: (sourceFile: string) => Array; +} + +/** + * Options used by PurgeCSS to remove unused CSS + * + * @public + */ +declare interface UserDefinedOptions_2 { + /** {@inheritDoc Options.content} */ + content: Array; + /** {@inheritDoc Options.css} */ + css: Array; + /** {@inheritDoc Options.defaultExtractor} */ + defaultExtractor?: ExtractorFunction; + /** {@inheritDoc Options.extractors} */ + extractors?: Array; + /** {@inheritDoc Options.fontFace} */ + fontFace?: boolean; + /** {@inheritDoc Options.keyframes} */ + keyframes?: boolean; + /** {@inheritDoc Options.output} */ + output?: string; + /** {@inheritDoc Options.rejected} */ + rejected?: boolean; + /** {@inheritDoc Options.rejectedCss} */ + rejectedCss?: boolean; + /** {@inheritDoc Options.sourceMap } */ + sourceMap?: boolean | (postcss.SourceMapOptions & { to?: string }); + /** {@inheritDoc Options.stdin} */ + stdin?: boolean; + /** {@inheritDoc Options.stdout} */ + stdout?: boolean; + /** {@inheritDoc Options.variables} */ + variables?: boolean; + /** {@inheritDoc Options.safelist} */ + safelist?: UserDefinedSafelist; + /** {@inheritDoc Options.blocklist} */ + blocklist?: StringRegExpArray; + /** {@inheritDoc Options.skippedContentGlobs} */ + skippedContentGlobs?: Array; + /** {@inheritDoc Options.dynamicAttributes} */ + dynamicAttributes?: string[]; +} + +/** + * @public + */ +declare type UserDefinedSafelist = StringRegExpArray | ComplexSafelist; + +export { } diff --git a/node_modules/@fullhuman/postcss-purgecss/lib/postcss-purgecss.esm.js b/node_modules/@fullhuman/postcss-purgecss/lib/postcss-purgecss.esm.js new file mode 100644 index 0000000..6e811fd --- /dev/null +++ b/node_modules/@fullhuman/postcss-purgecss/lib/postcss-purgecss.esm.js @@ -0,0 +1 @@ +import*as e from"path";import{PurgeCSS as s,defaultOptions as t,standardizeSafelist as o,mergeExtractorSelectors as r}from"purgecss";const n=function(n){if(void 0===n)throw new Error("PurgeCSS plugin does not have the correct options");return{postcssPlugin:"postcss-purgecss",OnceExit:(c,i)=>async function(n,c,{result:i}){const a=new s;let l;try{const s=e.resolve(process.cwd(),"purgecss.config.js");l=await import(s)}catch{}const p={...t,...l,...n,safelist:o((null==n?void 0:n.safelist)||(null==l?void 0:l.safelist))};n&&"function"==typeof n.contentFunction&&(p.content=n.contentFunction(c.source&&c.source.input.file||"")),a.options=p,p.variables&&(a.variablesStructure.safelist=p.safelist.variables||[]);const{content:u,extractors:f}=p,m=u.filter((e=>"string"==typeof e)),g=u.filter((e=>"object"==typeof e)),v=await a.extractSelectorsFromFiles(m,f),d=await a.extractSelectorsFromString(g,f),S=r(v,d);a.walkThroughCSS(c,S),a.options.fontFace&&a.removeUnusedFontFaces(),a.options.keyframes&&a.removeUnusedKeyframes(),a.options.variables&&a.removeUnusedCSSVariables(),a.options.rejected&&a.selectorsRemoved.size>0&&(i.messages.push({type:"purgecss",plugin:"postcss-purgecss",text:`purging ${a.selectorsRemoved.size} selectors:\n ${Array.from(a.selectorsRemoved).map((e=>e.trim())).join("\n ")}`}),a.selectorsRemoved.clear())}(n,c,i)}};n.postcss=!0;export{n as default}; diff --git a/node_modules/@fullhuman/postcss-purgecss/lib/postcss-purgecss.js b/node_modules/@fullhuman/postcss-purgecss/lib/postcss-purgecss.js new file mode 100644 index 0000000..b981fa7 --- /dev/null +++ b/node_modules/@fullhuman/postcss-purgecss/lib/postcss-purgecss.js @@ -0,0 +1 @@ +"use strict";var e=require("path"),t=require("purgecss");function r(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var s=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,s.get?s:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var s=r(e);const o=function(e){if(void 0===e)throw new Error("PurgeCSS plugin does not have the correct options");return{postcssPlugin:"postcss-purgecss",OnceExit:(o,n)=>async function(e,o,{result:n}){const c=new t.PurgeCSS;let i;try{const e=s.resolve(process.cwd(),"purgecss.config.js");i=await function(e){return Promise.resolve().then((function(){return r(require(e))}))}(e)}catch{}const a={...t.defaultOptions,...i,...e,safelist:t.standardizeSafelist((null==e?void 0:e.safelist)||(null==i?void 0:i.safelist))};e&&"function"==typeof e.contentFunction&&(a.content=e.contentFunction(o.source&&o.source.input.file||"")),c.options=a,a.variables&&(c.variablesStructure.safelist=a.safelist.variables||[]);const{content:u,extractors:l}=a,f=u.filter((e=>"string"==typeof e)),p=u.filter((e=>"object"==typeof e)),d=await c.extractSelectorsFromFiles(f,l),g=await c.extractSelectorsFromString(p,l),v=t.mergeExtractorSelectors(d,g);c.walkThroughCSS(o,v),c.options.fontFace&&c.removeUnusedFontFaces(),c.options.keyframes&&c.removeUnusedKeyframes(),c.options.variables&&c.removeUnusedCSSVariables(),c.options.rejected&&c.selectorsRemoved.size>0&&(n.messages.push({type:"purgecss",plugin:"postcss-purgecss",text:`purging ${c.selectorsRemoved.size} selectors:\n ${Array.from(c.selectorsRemoved).map((e=>e.trim())).join("\n ")}`}),c.selectorsRemoved.clear())}(e,o,n)}};o.postcss=!0,module.exports=o; diff --git a/node_modules/@fullhuman/postcss-purgecss/package.json b/node_modules/@fullhuman/postcss-purgecss/package.json new file mode 100644 index 0000000..4d28162 --- /dev/null +++ b/node_modules/@fullhuman/postcss-purgecss/package.json @@ -0,0 +1,42 @@ +{ + "name": "@fullhuman/postcss-purgecss", + "version": "5.0.0", + "description": "PostCSS plugin for PurgeCSS", + "author": "FoundrySH ", + "homepage": "https://purgecss.com", + "license": "MIT", + "main": "lib/postcss-purgecss.js", + "module": "lib/postcss-purgecss.esm.js", + "types": "lib/postcss-purgecss.d.ts", + "directories": { + "lib": "lib", + "test": "__tests__" + }, + "files": [ + "lib" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/FullHuman/purgecss.git" + }, + "scripts": { + "build": "ts-node build.ts", + "test": "jest" + }, + "bugs": { + "url": "https://github.com/FullHuman/purgecss/issues" + }, + "dependencies": { + "purgecss": "^5.0.0" + }, + "devDependencies": { + "postcss": "^8.4.4" + }, + "peerDependencies": { + "postcss": "^8.0.0" + }, + "publishConfig": { + "access": "public", + "registry": "https://registry.npmjs.org/" + } +} diff --git a/node_modules/@nodelib/fs.scandir/LICENSE b/node_modules/@nodelib/fs.scandir/LICENSE new file mode 100644 index 0000000..65a9994 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Denis Malinochkin + +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. diff --git a/node_modules/@nodelib/fs.scandir/README.md b/node_modules/@nodelib/fs.scandir/README.md new file mode 100644 index 0000000..e0b218b --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/README.md @@ -0,0 +1,171 @@ +# @nodelib/fs.scandir + +> List files and directories inside the specified directory. + +## :bulb: Highlights + +The package is aimed at obtaining information about entries in the directory. + +* :moneybag: Returns useful information: `name`, `path`, `dirent` and `stats` (optional). +* :gear: On Node.js 10.10+ uses the mechanism without additional calls to determine the entry type. See [`old` and `modern` mode](#old-and-modern-mode). +* :link: Can safely work with broken symbolic links. + +## Install + +```console +npm install @nodelib/fs.scandir +``` + +## Usage + +```ts +import * as fsScandir from '@nodelib/fs.scandir'; + +fsScandir.scandir('path', (error, stats) => { /* … */ }); +``` + +## API + +### .scandir(path, [optionsOrSettings], callback) + +Returns an array of plain objects ([`Entry`](#entry)) with information about entry for provided path with standard callback-style. + +```ts +fsScandir.scandir('path', (error, entries) => { /* … */ }); +fsScandir.scandir('path', {}, (error, entries) => { /* … */ }); +fsScandir.scandir('path', new fsScandir.Settings(), (error, entries) => { /* … */ }); +``` + +### .scandirSync(path, [optionsOrSettings]) + +Returns an array of plain objects ([`Entry`](#entry)) with information about entry for provided path. + +```ts +const entries = fsScandir.scandirSync('path'); +const entries = fsScandir.scandirSync('path', {}); +const entries = fsScandir.scandirSync(('path', new fsScandir.Settings()); +``` + +#### path + +* Required: `true` +* Type: `string | Buffer | URL` + +A path to a file. If a URL is provided, it must use the `file:` protocol. + +#### optionsOrSettings + +* Required: `false` +* Type: `Options | Settings` +* Default: An instance of `Settings` class + +An [`Options`](#options) object or an instance of [`Settings`](#settingsoptions) class. + +> :book: When you pass a plain object, an instance of the `Settings` class will be created automatically. If you plan to call the method frequently, use a pre-created instance of the `Settings` class. + +### Settings([options]) + +A class of full settings of the package. + +```ts +const settings = new fsScandir.Settings({ followSymbolicLinks: false }); + +const entries = fsScandir.scandirSync('path', settings); +``` + +## Entry + +* `name` — The name of the entry (`unknown.txt`). +* `path` — The path of the entry relative to call directory (`root/unknown.txt`). +* `dirent` — An instance of [`fs.Dirent`](./src/types/index.ts) class. On Node.js below 10.10 will be emulated by [`DirentFromStats`](./src/utils/fs.ts) class. +* `stats` (optional) — An instance of `fs.Stats` class. + +For example, the `scandir` call for `tools` directory with one directory inside: + +```ts +{ + dirent: Dirent { name: 'typedoc', /* … */ }, + name: 'typedoc', + path: 'tools/typedoc' +} +``` + +## Options + +### stats + +* Type: `boolean` +* Default: `false` + +Adds an instance of `fs.Stats` class to the [`Entry`](#entry). + +> :book: Always use `fs.readdir` without the `withFileTypes` option. ??TODO?? + +### followSymbolicLinks + +* Type: `boolean` +* Default: `false` + +Follow symbolic links or not. Call `fs.stat` on symbolic link if `true`. + +### `throwErrorOnBrokenSymbolicLink` + +* Type: `boolean` +* Default: `true` + +Throw an error when symbolic link is broken if `true` or safely use `lstat` call if `false`. + +### `pathSegmentSeparator` + +* Type: `string` +* Default: `path.sep` + +By default, this package uses the correct path separator for your OS (`\` on Windows, `/` on Unix-like systems). But you can set this option to any separator character(s) that you want to use instead. + +### `fs` + +* Type: [`FileSystemAdapter`](./src/adapters/fs.ts) +* Default: A default FS methods + +By default, the built-in Node.js module (`fs`) is used to work with the file system. You can replace any method with your own. + +```ts +interface FileSystemAdapter { + lstat?: typeof fs.lstat; + stat?: typeof fs.stat; + lstatSync?: typeof fs.lstatSync; + statSync?: typeof fs.statSync; + readdir?: typeof fs.readdir; + readdirSync?: typeof fs.readdirSync; +} + +const settings = new fsScandir.Settings({ + fs: { lstat: fakeLstat } +}); +``` + +## `old` and `modern` mode + +This package has two modes that are used depending on the environment and parameters of use. + +### old + +* Node.js below `10.10` or when the `stats` option is enabled + +When working in the old mode, the directory is read first (`fs.readdir`), then the type of entries is determined (`fs.lstat` and/or `fs.stat` for symbolic links). + +### modern + +* Node.js 10.10+ and the `stats` option is disabled + +In the modern mode, reading the directory (`fs.readdir` with the `withFileTypes` option) is combined with obtaining information about its entries. An additional call for symbolic links (`fs.stat`) is still present. + +This mode makes fewer calls to the file system. It's faster. + +## Changelog + +See the [Releases section of our GitHub project](https://github.com/nodelib/nodelib/releases) for changelog for each release version. + +## License + +This software is released under the terms of the MIT license. diff --git a/node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts b/node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts new file mode 100644 index 0000000..827f1db --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts @@ -0,0 +1,20 @@ +import type * as fsStat from '@nodelib/fs.stat'; +import type { Dirent, ErrnoException } from '../types'; +export interface ReaddirAsynchronousMethod { + (filepath: string, options: { + withFileTypes: true; + }, callback: (error: ErrnoException | null, files: Dirent[]) => void): void; + (filepath: string, callback: (error: ErrnoException | null, files: string[]) => void): void; +} +export interface ReaddirSynchronousMethod { + (filepath: string, options: { + withFileTypes: true; + }): Dirent[]; + (filepath: string): string[]; +} +export declare type FileSystemAdapter = fsStat.FileSystemAdapter & { + readdir: ReaddirAsynchronousMethod; + readdirSync: ReaddirSynchronousMethod; +}; +export declare const FILE_SYSTEM_ADAPTER: FileSystemAdapter; +export declare function createFileSystemAdapter(fsMethods?: Partial): FileSystemAdapter; diff --git a/node_modules/@nodelib/fs.scandir/out/adapters/fs.js b/node_modules/@nodelib/fs.scandir/out/adapters/fs.js new file mode 100644 index 0000000..f0fe022 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/adapters/fs.js @@ -0,0 +1,19 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.createFileSystemAdapter = exports.FILE_SYSTEM_ADAPTER = void 0; +const fs = require("fs"); +exports.FILE_SYSTEM_ADAPTER = { + lstat: fs.lstat, + stat: fs.stat, + lstatSync: fs.lstatSync, + statSync: fs.statSync, + readdir: fs.readdir, + readdirSync: fs.readdirSync +}; +function createFileSystemAdapter(fsMethods) { + if (fsMethods === undefined) { + return exports.FILE_SYSTEM_ADAPTER; + } + return Object.assign(Object.assign({}, exports.FILE_SYSTEM_ADAPTER), fsMethods); +} +exports.createFileSystemAdapter = createFileSystemAdapter; diff --git a/node_modules/@nodelib/fs.scandir/out/constants.d.ts b/node_modules/@nodelib/fs.scandir/out/constants.d.ts new file mode 100644 index 0000000..33f1749 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/constants.d.ts @@ -0,0 +1,4 @@ +/** + * IS `true` for Node.js 10.10 and greater. + */ +export declare const IS_SUPPORT_READDIR_WITH_FILE_TYPES: boolean; diff --git a/node_modules/@nodelib/fs.scandir/out/constants.js b/node_modules/@nodelib/fs.scandir/out/constants.js new file mode 100644 index 0000000..7e3d441 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/constants.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.IS_SUPPORT_READDIR_WITH_FILE_TYPES = void 0; +const NODE_PROCESS_VERSION_PARTS = process.versions.node.split('.'); +if (NODE_PROCESS_VERSION_PARTS[0] === undefined || NODE_PROCESS_VERSION_PARTS[1] === undefined) { + throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`); +} +const MAJOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[0], 10); +const MINOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[1], 10); +const SUPPORTED_MAJOR_VERSION = 10; +const SUPPORTED_MINOR_VERSION = 10; +const IS_MATCHED_BY_MAJOR = MAJOR_VERSION > SUPPORTED_MAJOR_VERSION; +const IS_MATCHED_BY_MAJOR_AND_MINOR = MAJOR_VERSION === SUPPORTED_MAJOR_VERSION && MINOR_VERSION >= SUPPORTED_MINOR_VERSION; +/** + * IS `true` for Node.js 10.10 and greater. + */ +exports.IS_SUPPORT_READDIR_WITH_FILE_TYPES = IS_MATCHED_BY_MAJOR || IS_MATCHED_BY_MAJOR_AND_MINOR; diff --git a/node_modules/@nodelib/fs.scandir/out/index.d.ts b/node_modules/@nodelib/fs.scandir/out/index.d.ts new file mode 100644 index 0000000..b9da83e --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/index.d.ts @@ -0,0 +1,12 @@ +import type { FileSystemAdapter, ReaddirAsynchronousMethod, ReaddirSynchronousMethod } from './adapters/fs'; +import * as async from './providers/async'; +import Settings, { Options } from './settings'; +import type { Dirent, Entry } from './types'; +declare type AsyncCallback = async.AsyncCallback; +declare function scandir(path: string, callback: AsyncCallback): void; +declare function scandir(path: string, optionsOrSettings: Options | Settings, callback: AsyncCallback): void; +declare namespace scandir { + function __promisify__(path: string, optionsOrSettings?: Options | Settings): Promise; +} +declare function scandirSync(path: string, optionsOrSettings?: Options | Settings): Entry[]; +export { scandir, scandirSync, Settings, AsyncCallback, Dirent, Entry, FileSystemAdapter, ReaddirAsynchronousMethod, ReaddirSynchronousMethod, Options }; diff --git a/node_modules/@nodelib/fs.scandir/out/index.js b/node_modules/@nodelib/fs.scandir/out/index.js new file mode 100644 index 0000000..99c70d3 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/index.js @@ -0,0 +1,26 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Settings = exports.scandirSync = exports.scandir = void 0; +const async = require("./providers/async"); +const sync = require("./providers/sync"); +const settings_1 = require("./settings"); +exports.Settings = settings_1.default; +function scandir(path, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === 'function') { + async.read(path, getSettings(), optionsOrSettingsOrCallback); + return; + } + async.read(path, getSettings(optionsOrSettingsOrCallback), callback); +} +exports.scandir = scandir; +function scandirSync(path, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + return sync.read(path, settings); +} +exports.scandirSync = scandirSync; +function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); +} diff --git a/node_modules/@nodelib/fs.scandir/out/providers/async.d.ts b/node_modules/@nodelib/fs.scandir/out/providers/async.d.ts new file mode 100644 index 0000000..5829676 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/providers/async.d.ts @@ -0,0 +1,7 @@ +/// +import type Settings from '../settings'; +import type { Entry } from '../types'; +export declare type AsyncCallback = (error: NodeJS.ErrnoException, entries: Entry[]) => void; +export declare function read(directory: string, settings: Settings, callback: AsyncCallback): void; +export declare function readdirWithFileTypes(directory: string, settings: Settings, callback: AsyncCallback): void; +export declare function readdir(directory: string, settings: Settings, callback: AsyncCallback): void; diff --git a/node_modules/@nodelib/fs.scandir/out/providers/async.js b/node_modules/@nodelib/fs.scandir/out/providers/async.js new file mode 100644 index 0000000..e8e2f0a --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/providers/async.js @@ -0,0 +1,104 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; +const fsStat = require("@nodelib/fs.stat"); +const rpl = require("run-parallel"); +const constants_1 = require("../constants"); +const utils = require("../utils"); +const common = require("./common"); +function read(directory, settings, callback) { + if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { + readdirWithFileTypes(directory, settings, callback); + return; + } + readdir(directory, settings, callback); +} +exports.read = read; +function readdirWithFileTypes(directory, settings, callback) { + settings.fs.readdir(directory, { withFileTypes: true }, (readdirError, dirents) => { + if (readdirError !== null) { + callFailureCallback(callback, readdirError); + return; + } + const entries = dirents.map((dirent) => ({ + dirent, + name: dirent.name, + path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) + })); + if (!settings.followSymbolicLinks) { + callSuccessCallback(callback, entries); + return; + } + const tasks = entries.map((entry) => makeRplTaskEntry(entry, settings)); + rpl(tasks, (rplError, rplEntries) => { + if (rplError !== null) { + callFailureCallback(callback, rplError); + return; + } + callSuccessCallback(callback, rplEntries); + }); + }); +} +exports.readdirWithFileTypes = readdirWithFileTypes; +function makeRplTaskEntry(entry, settings) { + return (done) => { + if (!entry.dirent.isSymbolicLink()) { + done(null, entry); + return; + } + settings.fs.stat(entry.path, (statError, stats) => { + if (statError !== null) { + if (settings.throwErrorOnBrokenSymbolicLink) { + done(statError); + return; + } + done(null, entry); + return; + } + entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); + done(null, entry); + }); + }; +} +function readdir(directory, settings, callback) { + settings.fs.readdir(directory, (readdirError, names) => { + if (readdirError !== null) { + callFailureCallback(callback, readdirError); + return; + } + const tasks = names.map((name) => { + const path = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); + return (done) => { + fsStat.stat(path, settings.fsStatSettings, (error, stats) => { + if (error !== null) { + done(error); + return; + } + const entry = { + name, + path, + dirent: utils.fs.createDirentFromStats(name, stats) + }; + if (settings.stats) { + entry.stats = stats; + } + done(null, entry); + }); + }; + }); + rpl(tasks, (rplError, entries) => { + if (rplError !== null) { + callFailureCallback(callback, rplError); + return; + } + callSuccessCallback(callback, entries); + }); + }); +} +exports.readdir = readdir; +function callFailureCallback(callback, error) { + callback(error); +} +function callSuccessCallback(callback, result) { + callback(null, result); +} diff --git a/node_modules/@nodelib/fs.scandir/out/providers/common.d.ts b/node_modules/@nodelib/fs.scandir/out/providers/common.d.ts new file mode 100644 index 0000000..2b4d08b --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/providers/common.d.ts @@ -0,0 +1 @@ +export declare function joinPathSegments(a: string, b: string, separator: string): string; diff --git a/node_modules/@nodelib/fs.scandir/out/providers/common.js b/node_modules/@nodelib/fs.scandir/out/providers/common.js new file mode 100644 index 0000000..8724cb5 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/providers/common.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.joinPathSegments = void 0; +function joinPathSegments(a, b, separator) { + /** + * The correct handling of cases when the first segment is a root (`/`, `C:/`) or UNC path (`//?/C:/`). + */ + if (a.endsWith(separator)) { + return a + b; + } + return a + separator + b; +} +exports.joinPathSegments = joinPathSegments; diff --git a/node_modules/@nodelib/fs.scandir/out/providers/sync.d.ts b/node_modules/@nodelib/fs.scandir/out/providers/sync.d.ts new file mode 100644 index 0000000..e05c8f0 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/providers/sync.d.ts @@ -0,0 +1,5 @@ +import type Settings from '../settings'; +import type { Entry } from '../types'; +export declare function read(directory: string, settings: Settings): Entry[]; +export declare function readdirWithFileTypes(directory: string, settings: Settings): Entry[]; +export declare function readdir(directory: string, settings: Settings): Entry[]; diff --git a/node_modules/@nodelib/fs.scandir/out/providers/sync.js b/node_modules/@nodelib/fs.scandir/out/providers/sync.js new file mode 100644 index 0000000..146db34 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/providers/sync.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.readdir = exports.readdirWithFileTypes = exports.read = void 0; +const fsStat = require("@nodelib/fs.stat"); +const constants_1 = require("../constants"); +const utils = require("../utils"); +const common = require("./common"); +function read(directory, settings) { + if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { + return readdirWithFileTypes(directory, settings); + } + return readdir(directory, settings); +} +exports.read = read; +function readdirWithFileTypes(directory, settings) { + const dirents = settings.fs.readdirSync(directory, { withFileTypes: true }); + return dirents.map((dirent) => { + const entry = { + dirent, + name: dirent.name, + path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) + }; + if (entry.dirent.isSymbolicLink() && settings.followSymbolicLinks) { + try { + const stats = settings.fs.statSync(entry.path); + entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); + } + catch (error) { + if (settings.throwErrorOnBrokenSymbolicLink) { + throw error; + } + } + } + return entry; + }); +} +exports.readdirWithFileTypes = readdirWithFileTypes; +function readdir(directory, settings) { + const names = settings.fs.readdirSync(directory); + return names.map((name) => { + const entryPath = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); + const stats = fsStat.statSync(entryPath, settings.fsStatSettings); + const entry = { + name, + path: entryPath, + dirent: utils.fs.createDirentFromStats(name, stats) + }; + if (settings.stats) { + entry.stats = stats; + } + return entry; + }); +} +exports.readdir = readdir; diff --git a/node_modules/@nodelib/fs.scandir/out/settings.d.ts b/node_modules/@nodelib/fs.scandir/out/settings.d.ts new file mode 100644 index 0000000..a0db115 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/settings.d.ts @@ -0,0 +1,20 @@ +import * as fsStat from '@nodelib/fs.stat'; +import * as fs from './adapters/fs'; +export interface Options { + followSymbolicLinks?: boolean; + fs?: Partial; + pathSegmentSeparator?: string; + stats?: boolean; + throwErrorOnBrokenSymbolicLink?: boolean; +} +export default class Settings { + private readonly _options; + readonly followSymbolicLinks: boolean; + readonly fs: fs.FileSystemAdapter; + readonly pathSegmentSeparator: string; + readonly stats: boolean; + readonly throwErrorOnBrokenSymbolicLink: boolean; + readonly fsStatSettings: fsStat.Settings; + constructor(_options?: Options); + private _getValue; +} diff --git a/node_modules/@nodelib/fs.scandir/out/settings.js b/node_modules/@nodelib/fs.scandir/out/settings.js new file mode 100644 index 0000000..15a3e8c --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/settings.js @@ -0,0 +1,24 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const path = require("path"); +const fsStat = require("@nodelib/fs.stat"); +const fs = require("./adapters/fs"); +class Settings { + constructor(_options = {}) { + this._options = _options; + this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, false); + this.fs = fs.createFileSystemAdapter(this._options.fs); + this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path.sep); + this.stats = this._getValue(this._options.stats, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); + this.fsStatSettings = new fsStat.Settings({ + followSymbolicLink: this.followSymbolicLinks, + fs: this.fs, + throwErrorOnBrokenSymbolicLink: this.throwErrorOnBrokenSymbolicLink + }); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } +} +exports.default = Settings; diff --git a/node_modules/@nodelib/fs.scandir/out/types/index.d.ts b/node_modules/@nodelib/fs.scandir/out/types/index.d.ts new file mode 100644 index 0000000..f326c5e --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/types/index.d.ts @@ -0,0 +1,20 @@ +/// +import type * as fs from 'fs'; +export interface Entry { + dirent: Dirent; + name: string; + path: string; + stats?: Stats; +} +export declare type Stats = fs.Stats; +export declare type ErrnoException = NodeJS.ErrnoException; +export interface Dirent { + isBlockDevice: () => boolean; + isCharacterDevice: () => boolean; + isDirectory: () => boolean; + isFIFO: () => boolean; + isFile: () => boolean; + isSocket: () => boolean; + isSymbolicLink: () => boolean; + name: string; +} diff --git a/node_modules/@nodelib/fs.scandir/out/types/index.js b/node_modules/@nodelib/fs.scandir/out/types/index.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/types/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@nodelib/fs.scandir/out/utils/fs.d.ts b/node_modules/@nodelib/fs.scandir/out/utils/fs.d.ts new file mode 100644 index 0000000..bb863f1 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/utils/fs.d.ts @@ -0,0 +1,2 @@ +import type { Dirent, Stats } from '../types'; +export declare function createDirentFromStats(name: string, stats: Stats): Dirent; diff --git a/node_modules/@nodelib/fs.scandir/out/utils/fs.js b/node_modules/@nodelib/fs.scandir/out/utils/fs.js new file mode 100644 index 0000000..ace7c74 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/utils/fs.js @@ -0,0 +1,19 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.createDirentFromStats = void 0; +class DirentFromStats { + constructor(name, stats) { + this.name = name; + this.isBlockDevice = stats.isBlockDevice.bind(stats); + this.isCharacterDevice = stats.isCharacterDevice.bind(stats); + this.isDirectory = stats.isDirectory.bind(stats); + this.isFIFO = stats.isFIFO.bind(stats); + this.isFile = stats.isFile.bind(stats); + this.isSocket = stats.isSocket.bind(stats); + this.isSymbolicLink = stats.isSymbolicLink.bind(stats); + } +} +function createDirentFromStats(name, stats) { + return new DirentFromStats(name, stats); +} +exports.createDirentFromStats = createDirentFromStats; diff --git a/node_modules/@nodelib/fs.scandir/out/utils/index.d.ts b/node_modules/@nodelib/fs.scandir/out/utils/index.d.ts new file mode 100644 index 0000000..1b41954 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/utils/index.d.ts @@ -0,0 +1,2 @@ +import * as fs from './fs'; +export { fs }; diff --git a/node_modules/@nodelib/fs.scandir/out/utils/index.js b/node_modules/@nodelib/fs.scandir/out/utils/index.js new file mode 100644 index 0000000..f5de129 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/out/utils/index.js @@ -0,0 +1,5 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.fs = void 0; +const fs = require("./fs"); +exports.fs = fs; diff --git a/node_modules/@nodelib/fs.scandir/package.json b/node_modules/@nodelib/fs.scandir/package.json new file mode 100644 index 0000000..d3a8924 --- /dev/null +++ b/node_modules/@nodelib/fs.scandir/package.json @@ -0,0 +1,44 @@ +{ + "name": "@nodelib/fs.scandir", + "version": "2.1.5", + "description": "List files and directories inside the specified directory", + "license": "MIT", + "repository": "https://github.com/nodelib/nodelib/tree/master/packages/fs/fs.scandir", + "keywords": [ + "NodeLib", + "fs", + "FileSystem", + "file system", + "scandir", + "readdir", + "dirent" + ], + "engines": { + "node": ">= 8" + }, + "files": [ + "out/**", + "!out/**/*.map", + "!out/**/*.spec.*" + ], + "main": "out/index.js", + "typings": "out/index.d.ts", + "scripts": { + "clean": "rimraf {tsconfig.tsbuildinfo,out}", + "lint": "eslint \"src/**/*.ts\" --cache", + "compile": "tsc -b .", + "compile:watch": "tsc -p . --watch --sourceMap", + "test": "mocha \"out/**/*.spec.js\" -s 0", + "build": "npm run clean && npm run compile && npm run lint && npm test", + "watch": "npm run clean && npm run compile:watch" + }, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "devDependencies": { + "@nodelib/fs.macchiato": "1.0.4", + "@types/run-parallel": "^1.1.0" + }, + "gitHead": "d6a7960d5281d3dd5f8e2efba49bb552d090f562" +} diff --git a/node_modules/@nodelib/fs.stat/LICENSE b/node_modules/@nodelib/fs.stat/LICENSE new file mode 100644 index 0000000..65a9994 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Denis Malinochkin + +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. diff --git a/node_modules/@nodelib/fs.stat/README.md b/node_modules/@nodelib/fs.stat/README.md new file mode 100644 index 0000000..686f047 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/README.md @@ -0,0 +1,126 @@ +# @nodelib/fs.stat + +> Get the status of a file with some features. + +## :bulb: Highlights + +Wrapper around standard method `fs.lstat` and `fs.stat` with some features. + +* :beginner: Normally follows symbolic link. +* :gear: Can safely work with broken symbolic link. + +## Install + +```console +npm install @nodelib/fs.stat +``` + +## Usage + +```ts +import * as fsStat from '@nodelib/fs.stat'; + +fsStat.stat('path', (error, stats) => { /* … */ }); +``` + +## API + +### .stat(path, [optionsOrSettings], callback) + +Returns an instance of `fs.Stats` class for provided path with standard callback-style. + +```ts +fsStat.stat('path', (error, stats) => { /* … */ }); +fsStat.stat('path', {}, (error, stats) => { /* … */ }); +fsStat.stat('path', new fsStat.Settings(), (error, stats) => { /* … */ }); +``` + +### .statSync(path, [optionsOrSettings]) + +Returns an instance of `fs.Stats` class for provided path. + +```ts +const stats = fsStat.stat('path'); +const stats = fsStat.stat('path', {}); +const stats = fsStat.stat('path', new fsStat.Settings()); +``` + +#### path + +* Required: `true` +* Type: `string | Buffer | URL` + +A path to a file. If a URL is provided, it must use the `file:` protocol. + +#### optionsOrSettings + +* Required: `false` +* Type: `Options | Settings` +* Default: An instance of `Settings` class + +An [`Options`](#options) object or an instance of [`Settings`](#settings) class. + +> :book: When you pass a plain object, an instance of the `Settings` class will be created automatically. If you plan to call the method frequently, use a pre-created instance of the `Settings` class. + +### Settings([options]) + +A class of full settings of the package. + +```ts +const settings = new fsStat.Settings({ followSymbolicLink: false }); + +const stats = fsStat.stat('path', settings); +``` + +## Options + +### `followSymbolicLink` + +* Type: `boolean` +* Default: `true` + +Follow symbolic link or not. Call `fs.stat` on symbolic link if `true`. + +### `markSymbolicLink` + +* Type: `boolean` +* Default: `false` + +Mark symbolic link by setting the return value of `isSymbolicLink` function to always `true` (even after `fs.stat`). + +> :book: Can be used if you want to know what is hidden behind a symbolic link, but still continue to know that it is a symbolic link. + +### `throwErrorOnBrokenSymbolicLink` + +* Type: `boolean` +* Default: `true` + +Throw an error when symbolic link is broken if `true` or safely return `lstat` call if `false`. + +### `fs` + +* Type: [`FileSystemAdapter`](./src/adapters/fs.ts) +* Default: A default FS methods + +By default, the built-in Node.js module (`fs`) is used to work with the file system. You can replace any method with your own. + +```ts +interface FileSystemAdapter { + lstat?: typeof fs.lstat; + stat?: typeof fs.stat; + lstatSync?: typeof fs.lstatSync; + statSync?: typeof fs.statSync; +} + +const settings = new fsStat.Settings({ + fs: { lstat: fakeLstat } +}); +``` + +## Changelog + +See the [Releases section of our GitHub project](https://github.com/nodelib/nodelib/releases) for changelog for each release version. + +## License + +This software is released under the terms of the MIT license. diff --git a/node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts b/node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts new file mode 100644 index 0000000..3af759c --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts @@ -0,0 +1,13 @@ +/// +import * as fs from 'fs'; +import type { ErrnoException } from '../types'; +export declare type StatAsynchronousMethod = (path: string, callback: (error: ErrnoException | null, stats: fs.Stats) => void) => void; +export declare type StatSynchronousMethod = (path: string) => fs.Stats; +export interface FileSystemAdapter { + lstat: StatAsynchronousMethod; + stat: StatAsynchronousMethod; + lstatSync: StatSynchronousMethod; + statSync: StatSynchronousMethod; +} +export declare const FILE_SYSTEM_ADAPTER: FileSystemAdapter; +export declare function createFileSystemAdapter(fsMethods?: Partial): FileSystemAdapter; diff --git a/node_modules/@nodelib/fs.stat/out/adapters/fs.js b/node_modules/@nodelib/fs.stat/out/adapters/fs.js new file mode 100644 index 0000000..8dc08c8 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/adapters/fs.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.createFileSystemAdapter = exports.FILE_SYSTEM_ADAPTER = void 0; +const fs = require("fs"); +exports.FILE_SYSTEM_ADAPTER = { + lstat: fs.lstat, + stat: fs.stat, + lstatSync: fs.lstatSync, + statSync: fs.statSync +}; +function createFileSystemAdapter(fsMethods) { + if (fsMethods === undefined) { + return exports.FILE_SYSTEM_ADAPTER; + } + return Object.assign(Object.assign({}, exports.FILE_SYSTEM_ADAPTER), fsMethods); +} +exports.createFileSystemAdapter = createFileSystemAdapter; diff --git a/node_modules/@nodelib/fs.stat/out/index.d.ts b/node_modules/@nodelib/fs.stat/out/index.d.ts new file mode 100644 index 0000000..f95db99 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/index.d.ts @@ -0,0 +1,12 @@ +import type { FileSystemAdapter, StatAsynchronousMethod, StatSynchronousMethod } from './adapters/fs'; +import * as async from './providers/async'; +import Settings, { Options } from './settings'; +import type { Stats } from './types'; +declare type AsyncCallback = async.AsyncCallback; +declare function stat(path: string, callback: AsyncCallback): void; +declare function stat(path: string, optionsOrSettings: Options | Settings, callback: AsyncCallback): void; +declare namespace stat { + function __promisify__(path: string, optionsOrSettings?: Options | Settings): Promise; +} +declare function statSync(path: string, optionsOrSettings?: Options | Settings): Stats; +export { Settings, stat, statSync, AsyncCallback, FileSystemAdapter, StatAsynchronousMethod, StatSynchronousMethod, Options, Stats }; diff --git a/node_modules/@nodelib/fs.stat/out/index.js b/node_modules/@nodelib/fs.stat/out/index.js new file mode 100644 index 0000000..b23f751 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/index.js @@ -0,0 +1,26 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.statSync = exports.stat = exports.Settings = void 0; +const async = require("./providers/async"); +const sync = require("./providers/sync"); +const settings_1 = require("./settings"); +exports.Settings = settings_1.default; +function stat(path, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === 'function') { + async.read(path, getSettings(), optionsOrSettingsOrCallback); + return; + } + async.read(path, getSettings(optionsOrSettingsOrCallback), callback); +} +exports.stat = stat; +function statSync(path, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + return sync.read(path, settings); +} +exports.statSync = statSync; +function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); +} diff --git a/node_modules/@nodelib/fs.stat/out/providers/async.d.ts b/node_modules/@nodelib/fs.stat/out/providers/async.d.ts new file mode 100644 index 0000000..85423ce --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/providers/async.d.ts @@ -0,0 +1,4 @@ +import type Settings from '../settings'; +import type { ErrnoException, Stats } from '../types'; +export declare type AsyncCallback = (error: ErrnoException, stats: Stats) => void; +export declare function read(path: string, settings: Settings, callback: AsyncCallback): void; diff --git a/node_modules/@nodelib/fs.stat/out/providers/async.js b/node_modules/@nodelib/fs.stat/out/providers/async.js new file mode 100644 index 0000000..983ff0e --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/providers/async.js @@ -0,0 +1,36 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.read = void 0; +function read(path, settings, callback) { + settings.fs.lstat(path, (lstatError, lstat) => { + if (lstatError !== null) { + callFailureCallback(callback, lstatError); + return; + } + if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { + callSuccessCallback(callback, lstat); + return; + } + settings.fs.stat(path, (statError, stat) => { + if (statError !== null) { + if (settings.throwErrorOnBrokenSymbolicLink) { + callFailureCallback(callback, statError); + return; + } + callSuccessCallback(callback, lstat); + return; + } + if (settings.markSymbolicLink) { + stat.isSymbolicLink = () => true; + } + callSuccessCallback(callback, stat); + }); + }); +} +exports.read = read; +function callFailureCallback(callback, error) { + callback(error); +} +function callSuccessCallback(callback, result) { + callback(null, result); +} diff --git a/node_modules/@nodelib/fs.stat/out/providers/sync.d.ts b/node_modules/@nodelib/fs.stat/out/providers/sync.d.ts new file mode 100644 index 0000000..428c3d7 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/providers/sync.d.ts @@ -0,0 +1,3 @@ +import type Settings from '../settings'; +import type { Stats } from '../types'; +export declare function read(path: string, settings: Settings): Stats; diff --git a/node_modules/@nodelib/fs.stat/out/providers/sync.js b/node_modules/@nodelib/fs.stat/out/providers/sync.js new file mode 100644 index 0000000..1521c36 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/providers/sync.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.read = void 0; +function read(path, settings) { + const lstat = settings.fs.lstatSync(path); + if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { + return lstat; + } + try { + const stat = settings.fs.statSync(path); + if (settings.markSymbolicLink) { + stat.isSymbolicLink = () => true; + } + return stat; + } + catch (error) { + if (!settings.throwErrorOnBrokenSymbolicLink) { + return lstat; + } + throw error; + } +} +exports.read = read; diff --git a/node_modules/@nodelib/fs.stat/out/settings.d.ts b/node_modules/@nodelib/fs.stat/out/settings.d.ts new file mode 100644 index 0000000..f4b3d44 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/settings.d.ts @@ -0,0 +1,16 @@ +import * as fs from './adapters/fs'; +export interface Options { + followSymbolicLink?: boolean; + fs?: Partial; + markSymbolicLink?: boolean; + throwErrorOnBrokenSymbolicLink?: boolean; +} +export default class Settings { + private readonly _options; + readonly followSymbolicLink: boolean; + readonly fs: fs.FileSystemAdapter; + readonly markSymbolicLink: boolean; + readonly throwErrorOnBrokenSymbolicLink: boolean; + constructor(_options?: Options); + private _getValue; +} diff --git a/node_modules/@nodelib/fs.stat/out/settings.js b/node_modules/@nodelib/fs.stat/out/settings.js new file mode 100644 index 0000000..111ec09 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/settings.js @@ -0,0 +1,16 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const fs = require("./adapters/fs"); +class Settings { + constructor(_options = {}) { + this._options = _options; + this.followSymbolicLink = this._getValue(this._options.followSymbolicLink, true); + this.fs = fs.createFileSystemAdapter(this._options.fs); + this.markSymbolicLink = this._getValue(this._options.markSymbolicLink, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } +} +exports.default = Settings; diff --git a/node_modules/@nodelib/fs.stat/out/types/index.d.ts b/node_modules/@nodelib/fs.stat/out/types/index.d.ts new file mode 100644 index 0000000..74c08ed --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/types/index.d.ts @@ -0,0 +1,4 @@ +/// +import type * as fs from 'fs'; +export declare type Stats = fs.Stats; +export declare type ErrnoException = NodeJS.ErrnoException; diff --git a/node_modules/@nodelib/fs.stat/out/types/index.js b/node_modules/@nodelib/fs.stat/out/types/index.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/out/types/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@nodelib/fs.stat/package.json b/node_modules/@nodelib/fs.stat/package.json new file mode 100644 index 0000000..f2540c2 --- /dev/null +++ b/node_modules/@nodelib/fs.stat/package.json @@ -0,0 +1,37 @@ +{ + "name": "@nodelib/fs.stat", + "version": "2.0.5", + "description": "Get the status of a file with some features", + "license": "MIT", + "repository": "https://github.com/nodelib/nodelib/tree/master/packages/fs/fs.stat", + "keywords": [ + "NodeLib", + "fs", + "FileSystem", + "file system", + "stat" + ], + "engines": { + "node": ">= 8" + }, + "files": [ + "out/**", + "!out/**/*.map", + "!out/**/*.spec.*" + ], + "main": "out/index.js", + "typings": "out/index.d.ts", + "scripts": { + "clean": "rimraf {tsconfig.tsbuildinfo,out}", + "lint": "eslint \"src/**/*.ts\" --cache", + "compile": "tsc -b .", + "compile:watch": "tsc -p . --watch --sourceMap", + "test": "mocha \"out/**/*.spec.js\" -s 0", + "build": "npm run clean && npm run compile && npm run lint && npm test", + "watch": "npm run clean && npm run compile:watch" + }, + "devDependencies": { + "@nodelib/fs.macchiato": "1.0.4" + }, + "gitHead": "d6a7960d5281d3dd5f8e2efba49bb552d090f562" +} diff --git a/node_modules/@nodelib/fs.walk/LICENSE b/node_modules/@nodelib/fs.walk/LICENSE new file mode 100644 index 0000000..65a9994 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Denis Malinochkin + +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. diff --git a/node_modules/@nodelib/fs.walk/README.md b/node_modules/@nodelib/fs.walk/README.md new file mode 100644 index 0000000..6ccc08d --- /dev/null +++ b/node_modules/@nodelib/fs.walk/README.md @@ -0,0 +1,215 @@ +# @nodelib/fs.walk + +> A library for efficiently walking a directory recursively. + +## :bulb: Highlights + +* :moneybag: Returns useful information: `name`, `path`, `dirent` and `stats` (optional). +* :rocket: On Node.js 10.10+ uses the mechanism without additional calls to determine the entry type for performance reasons. See [`old` and `modern` mode](https://github.com/nodelib/nodelib/blob/master/packages/fs/fs.scandir/README.md#old-and-modern-mode). +* :gear: Built-in directories/files and error filtering system. +* :link: Can safely work with broken symbolic links. + +## Install + +```console +npm install @nodelib/fs.walk +``` + +## Usage + +```ts +import * as fsWalk from '@nodelib/fs.walk'; + +fsWalk.walk('path', (error, entries) => { /* … */ }); +``` + +## API + +### .walk(path, [optionsOrSettings], callback) + +Reads the directory recursively and asynchronously. Requires a callback function. + +> :book: If you want to use the Promise API, use `util.promisify`. + +```ts +fsWalk.walk('path', (error, entries) => { /* … */ }); +fsWalk.walk('path', {}, (error, entries) => { /* … */ }); +fsWalk.walk('path', new fsWalk.Settings(), (error, entries) => { /* … */ }); +``` + +### .walkStream(path, [optionsOrSettings]) + +Reads the directory recursively and asynchronously. [Readable Stream](https://nodejs.org/dist/latest-v12.x/docs/api/stream.html#stream_readable_streams) is used as a provider. + +```ts +const stream = fsWalk.walkStream('path'); +const stream = fsWalk.walkStream('path', {}); +const stream = fsWalk.walkStream('path', new fsWalk.Settings()); +``` + +### .walkSync(path, [optionsOrSettings]) + +Reads the directory recursively and synchronously. Returns an array of entries. + +```ts +const entries = fsWalk.walkSync('path'); +const entries = fsWalk.walkSync('path', {}); +const entries = fsWalk.walkSync('path', new fsWalk.Settings()); +``` + +#### path + +* Required: `true` +* Type: `string | Buffer | URL` + +A path to a file. If a URL is provided, it must use the `file:` protocol. + +#### optionsOrSettings + +* Required: `false` +* Type: `Options | Settings` +* Default: An instance of `Settings` class + +An [`Options`](#options) object or an instance of [`Settings`](#settings) class. + +> :book: When you pass a plain object, an instance of the `Settings` class will be created automatically. If you plan to call the method frequently, use a pre-created instance of the `Settings` class. + +### Settings([options]) + +A class of full settings of the package. + +```ts +const settings = new fsWalk.Settings({ followSymbolicLinks: true }); + +const entries = fsWalk.walkSync('path', settings); +``` + +## Entry + +* `name` — The name of the entry (`unknown.txt`). +* `path` — The path of the entry relative to call directory (`root/unknown.txt`). +* `dirent` — An instance of [`fs.Dirent`](./src/types/index.ts) class. +* [`stats`] — An instance of `fs.Stats` class. + +## Options + +### basePath + +* Type: `string` +* Default: `undefined` + +By default, all paths are built relative to the root path. You can use this option to set custom root path. + +In the example below we read the files from the `root` directory, but in the results the root path will be `custom`. + +```ts +fsWalk.walkSync('root'); // → ['root/file.txt'] +fsWalk.walkSync('root', { basePath: 'custom' }); // → ['custom/file.txt'] +``` + +### concurrency + +* Type: `number` +* Default: `Infinity` + +The maximum number of concurrent calls to `fs.readdir`. + +> :book: The higher the number, the higher performance and the load on the File System. If you want to read in quiet mode, set the value to `4 * os.cpus().length` (4 is default size of [thread pool work scheduling](http://docs.libuv.org/en/v1.x/threadpool.html#thread-pool-work-scheduling)). + +### deepFilter + +* Type: [`DeepFilterFunction`](./src/settings.ts) +* Default: `undefined` + +A function that indicates whether the directory will be read deep or not. + +```ts +// Skip all directories that starts with `node_modules` +const filter: DeepFilterFunction = (entry) => !entry.path.startsWith('node_modules'); +``` + +### entryFilter + +* Type: [`EntryFilterFunction`](./src/settings.ts) +* Default: `undefined` + +A function that indicates whether the entry will be included to results or not. + +```ts +// Exclude all `.js` files from results +const filter: EntryFilterFunction = (entry) => !entry.name.endsWith('.js'); +``` + +### errorFilter + +* Type: [`ErrorFilterFunction`](./src/settings.ts) +* Default: `undefined` + +A function that allows you to skip errors that occur when reading directories. + +For example, you can skip `ENOENT` errors if required: + +```ts +// Skip all ENOENT errors +const filter: ErrorFilterFunction = (error) => error.code == 'ENOENT'; +``` + +### stats + +* Type: `boolean` +* Default: `false` + +Adds an instance of `fs.Stats` class to the [`Entry`](#entry). + +> :book: Always use `fs.readdir` with additional `fs.lstat/fs.stat` calls to determine the entry type. + +### followSymbolicLinks + +* Type: `boolean` +* Default: `false` + +Follow symbolic links or not. Call `fs.stat` on symbolic link if `true`. + +### `throwErrorOnBrokenSymbolicLink` + +* Type: `boolean` +* Default: `true` + +Throw an error when symbolic link is broken if `true` or safely return `lstat` call if `false`. + +### `pathSegmentSeparator` + +* Type: `string` +* Default: `path.sep` + +By default, this package uses the correct path separator for your OS (`\` on Windows, `/` on Unix-like systems). But you can set this option to any separator character(s) that you want to use instead. + +### `fs` + +* Type: `FileSystemAdapter` +* Default: A default FS methods + +By default, the built-in Node.js module (`fs`) is used to work with the file system. You can replace any method with your own. + +```ts +interface FileSystemAdapter { + lstat: typeof fs.lstat; + stat: typeof fs.stat; + lstatSync: typeof fs.lstatSync; + statSync: typeof fs.statSync; + readdir: typeof fs.readdir; + readdirSync: typeof fs.readdirSync; +} + +const settings = new fsWalk.Settings({ + fs: { lstat: fakeLstat } +}); +``` + +## Changelog + +See the [Releases section of our GitHub project](https://github.com/nodelib/nodelib/releases) for changelog for each release version. + +## License + +This software is released under the terms of the MIT license. diff --git a/node_modules/@nodelib/fs.walk/out/index.d.ts b/node_modules/@nodelib/fs.walk/out/index.d.ts new file mode 100644 index 0000000..8864c7b --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/index.d.ts @@ -0,0 +1,14 @@ +/// +import type { Readable } from 'stream'; +import type { Dirent, FileSystemAdapter } from '@nodelib/fs.scandir'; +import { AsyncCallback } from './providers/async'; +import Settings, { DeepFilterFunction, EntryFilterFunction, ErrorFilterFunction, Options } from './settings'; +import type { Entry } from './types'; +declare function walk(directory: string, callback: AsyncCallback): void; +declare function walk(directory: string, optionsOrSettings: Options | Settings, callback: AsyncCallback): void; +declare namespace walk { + function __promisify__(directory: string, optionsOrSettings?: Options | Settings): Promise; +} +declare function walkSync(directory: string, optionsOrSettings?: Options | Settings): Entry[]; +declare function walkStream(directory: string, optionsOrSettings?: Options | Settings): Readable; +export { walk, walkSync, walkStream, Settings, AsyncCallback, Dirent, Entry, FileSystemAdapter, Options, DeepFilterFunction, EntryFilterFunction, ErrorFilterFunction }; diff --git a/node_modules/@nodelib/fs.walk/out/index.js b/node_modules/@nodelib/fs.walk/out/index.js new file mode 100644 index 0000000..1520787 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/index.js @@ -0,0 +1,34 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.Settings = exports.walkStream = exports.walkSync = exports.walk = void 0; +const async_1 = require("./providers/async"); +const stream_1 = require("./providers/stream"); +const sync_1 = require("./providers/sync"); +const settings_1 = require("./settings"); +exports.Settings = settings_1.default; +function walk(directory, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === 'function') { + new async_1.default(directory, getSettings()).read(optionsOrSettingsOrCallback); + return; + } + new async_1.default(directory, getSettings(optionsOrSettingsOrCallback)).read(callback); +} +exports.walk = walk; +function walkSync(directory, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + const provider = new sync_1.default(directory, settings); + return provider.read(); +} +exports.walkSync = walkSync; +function walkStream(directory, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + const provider = new stream_1.default(directory, settings); + return provider.read(); +} +exports.walkStream = walkStream; +function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); +} diff --git a/node_modules/@nodelib/fs.walk/out/providers/async.d.ts b/node_modules/@nodelib/fs.walk/out/providers/async.d.ts new file mode 100644 index 0000000..0f6717d --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/providers/async.d.ts @@ -0,0 +1,12 @@ +import AsyncReader from '../readers/async'; +import type Settings from '../settings'; +import type { Entry, Errno } from '../types'; +export declare type AsyncCallback = (error: Errno, entries: Entry[]) => void; +export default class AsyncProvider { + private readonly _root; + private readonly _settings; + protected readonly _reader: AsyncReader; + private readonly _storage; + constructor(_root: string, _settings: Settings); + read(callback: AsyncCallback): void; +} diff --git a/node_modules/@nodelib/fs.walk/out/providers/async.js b/node_modules/@nodelib/fs.walk/out/providers/async.js new file mode 100644 index 0000000..51d3be5 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/providers/async.js @@ -0,0 +1,30 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const async_1 = require("../readers/async"); +class AsyncProvider { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new async_1.default(this._root, this._settings); + this._storage = []; + } + read(callback) { + this._reader.onError((error) => { + callFailureCallback(callback, error); + }); + this._reader.onEntry((entry) => { + this._storage.push(entry); + }); + this._reader.onEnd(() => { + callSuccessCallback(callback, this._storage); + }); + this._reader.read(); + } +} +exports.default = AsyncProvider; +function callFailureCallback(callback, error) { + callback(error); +} +function callSuccessCallback(callback, entries) { + callback(null, entries); +} diff --git a/node_modules/@nodelib/fs.walk/out/providers/index.d.ts b/node_modules/@nodelib/fs.walk/out/providers/index.d.ts new file mode 100644 index 0000000..874f60c --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/providers/index.d.ts @@ -0,0 +1,4 @@ +import AsyncProvider from './async'; +import StreamProvider from './stream'; +import SyncProvider from './sync'; +export { AsyncProvider, StreamProvider, SyncProvider }; diff --git a/node_modules/@nodelib/fs.walk/out/providers/index.js b/node_modules/@nodelib/fs.walk/out/providers/index.js new file mode 100644 index 0000000..4c2529c --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/providers/index.js @@ -0,0 +1,9 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SyncProvider = exports.StreamProvider = exports.AsyncProvider = void 0; +const async_1 = require("./async"); +exports.AsyncProvider = async_1.default; +const stream_1 = require("./stream"); +exports.StreamProvider = stream_1.default; +const sync_1 = require("./sync"); +exports.SyncProvider = sync_1.default; diff --git a/node_modules/@nodelib/fs.walk/out/providers/stream.d.ts b/node_modules/@nodelib/fs.walk/out/providers/stream.d.ts new file mode 100644 index 0000000..294185f --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/providers/stream.d.ts @@ -0,0 +1,12 @@ +/// +import { Readable } from 'stream'; +import AsyncReader from '../readers/async'; +import type Settings from '../settings'; +export default class StreamProvider { + private readonly _root; + private readonly _settings; + protected readonly _reader: AsyncReader; + protected readonly _stream: Readable; + constructor(_root: string, _settings: Settings); + read(): Readable; +} diff --git a/node_modules/@nodelib/fs.walk/out/providers/stream.js b/node_modules/@nodelib/fs.walk/out/providers/stream.js new file mode 100644 index 0000000..51298b0 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/providers/stream.js @@ -0,0 +1,34 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const stream_1 = require("stream"); +const async_1 = require("../readers/async"); +class StreamProvider { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new async_1.default(this._root, this._settings); + this._stream = new stream_1.Readable({ + objectMode: true, + read: () => { }, + destroy: () => { + if (!this._reader.isDestroyed) { + this._reader.destroy(); + } + } + }); + } + read() { + this._reader.onError((error) => { + this._stream.emit('error', error); + }); + this._reader.onEntry((entry) => { + this._stream.push(entry); + }); + this._reader.onEnd(() => { + this._stream.push(null); + }); + this._reader.read(); + return this._stream; + } +} +exports.default = StreamProvider; diff --git a/node_modules/@nodelib/fs.walk/out/providers/sync.d.ts b/node_modules/@nodelib/fs.walk/out/providers/sync.d.ts new file mode 100644 index 0000000..551c42e --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/providers/sync.d.ts @@ -0,0 +1,10 @@ +import SyncReader from '../readers/sync'; +import type Settings from '../settings'; +import type { Entry } from '../types'; +export default class SyncProvider { + private readonly _root; + private readonly _settings; + protected readonly _reader: SyncReader; + constructor(_root: string, _settings: Settings); + read(): Entry[]; +} diff --git a/node_modules/@nodelib/fs.walk/out/providers/sync.js b/node_modules/@nodelib/fs.walk/out/providers/sync.js new file mode 100644 index 0000000..faab6ca --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/providers/sync.js @@ -0,0 +1,14 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const sync_1 = require("../readers/sync"); +class SyncProvider { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new sync_1.default(this._root, this._settings); + } + read() { + return this._reader.read(); + } +} +exports.default = SyncProvider; diff --git a/node_modules/@nodelib/fs.walk/out/readers/async.d.ts b/node_modules/@nodelib/fs.walk/out/readers/async.d.ts new file mode 100644 index 0000000..9acf4e6 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/readers/async.d.ts @@ -0,0 +1,30 @@ +/// +import { EventEmitter } from 'events'; +import * as fsScandir from '@nodelib/fs.scandir'; +import type Settings from '../settings'; +import type { Entry, Errno } from '../types'; +import Reader from './reader'; +declare type EntryEventCallback = (entry: Entry) => void; +declare type ErrorEventCallback = (error: Errno) => void; +declare type EndEventCallback = () => void; +export default class AsyncReader extends Reader { + protected readonly _settings: Settings; + protected readonly _scandir: typeof fsScandir.scandir; + protected readonly _emitter: EventEmitter; + private readonly _queue; + private _isFatalError; + private _isDestroyed; + constructor(_root: string, _settings: Settings); + read(): EventEmitter; + get isDestroyed(): boolean; + destroy(): void; + onEntry(callback: EntryEventCallback): void; + onError(callback: ErrorEventCallback): void; + onEnd(callback: EndEventCallback): void; + private _pushToQueue; + private _worker; + private _handleError; + private _handleEntry; + private _emitEntry; +} +export {}; diff --git a/node_modules/@nodelib/fs.walk/out/readers/async.js b/node_modules/@nodelib/fs.walk/out/readers/async.js new file mode 100644 index 0000000..ebe8dd5 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/readers/async.js @@ -0,0 +1,97 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const events_1 = require("events"); +const fsScandir = require("@nodelib/fs.scandir"); +const fastq = require("fastq"); +const common = require("./common"); +const reader_1 = require("./reader"); +class AsyncReader extends reader_1.default { + constructor(_root, _settings) { + super(_root, _settings); + this._settings = _settings; + this._scandir = fsScandir.scandir; + this._emitter = new events_1.EventEmitter(); + this._queue = fastq(this._worker.bind(this), this._settings.concurrency); + this._isFatalError = false; + this._isDestroyed = false; + this._queue.drain = () => { + if (!this._isFatalError) { + this._emitter.emit('end'); + } + }; + } + read() { + this._isFatalError = false; + this._isDestroyed = false; + setImmediate(() => { + this._pushToQueue(this._root, this._settings.basePath); + }); + return this._emitter; + } + get isDestroyed() { + return this._isDestroyed; + } + destroy() { + if (this._isDestroyed) { + throw new Error('The reader is already destroyed'); + } + this._isDestroyed = true; + this._queue.killAndDrain(); + } + onEntry(callback) { + this._emitter.on('entry', callback); + } + onError(callback) { + this._emitter.once('error', callback); + } + onEnd(callback) { + this._emitter.once('end', callback); + } + _pushToQueue(directory, base) { + const queueItem = { directory, base }; + this._queue.push(queueItem, (error) => { + if (error !== null) { + this._handleError(error); + } + }); + } + _worker(item, done) { + this._scandir(item.directory, this._settings.fsScandirSettings, (error, entries) => { + if (error !== null) { + done(error, undefined); + return; + } + for (const entry of entries) { + this._handleEntry(entry, item.base); + } + done(null, undefined); + }); + } + _handleError(error) { + if (this._isDestroyed || !common.isFatalError(this._settings, error)) { + return; + } + this._isFatalError = true; + this._isDestroyed = true; + this._emitter.emit('error', error); + } + _handleEntry(entry, base) { + if (this._isDestroyed || this._isFatalError) { + return; + } + const fullpath = entry.path; + if (base !== undefined) { + entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); + } + if (common.isAppliedFilter(this._settings.entryFilter, entry)) { + this._emitEntry(entry); + } + if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { + this._pushToQueue(fullpath, base === undefined ? undefined : entry.path); + } + } + _emitEntry(entry) { + this._emitter.emit('entry', entry); + } +} +exports.default = AsyncReader; diff --git a/node_modules/@nodelib/fs.walk/out/readers/common.d.ts b/node_modules/@nodelib/fs.walk/out/readers/common.d.ts new file mode 100644 index 0000000..5985f97 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/readers/common.d.ts @@ -0,0 +1,7 @@ +import type { FilterFunction } from '../settings'; +import type Settings from '../settings'; +import type { Errno } from '../types'; +export declare function isFatalError(settings: Settings, error: Errno): boolean; +export declare function isAppliedFilter(filter: FilterFunction | null, value: T): boolean; +export declare function replacePathSegmentSeparator(filepath: string, separator: string): string; +export declare function joinPathSegments(a: string, b: string, separator: string): string; diff --git a/node_modules/@nodelib/fs.walk/out/readers/common.js b/node_modules/@nodelib/fs.walk/out/readers/common.js new file mode 100644 index 0000000..a93572f --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/readers/common.js @@ -0,0 +1,31 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.joinPathSegments = exports.replacePathSegmentSeparator = exports.isAppliedFilter = exports.isFatalError = void 0; +function isFatalError(settings, error) { + if (settings.errorFilter === null) { + return true; + } + return !settings.errorFilter(error); +} +exports.isFatalError = isFatalError; +function isAppliedFilter(filter, value) { + return filter === null || filter(value); +} +exports.isAppliedFilter = isAppliedFilter; +function replacePathSegmentSeparator(filepath, separator) { + return filepath.split(/[/\\]/).join(separator); +} +exports.replacePathSegmentSeparator = replacePathSegmentSeparator; +function joinPathSegments(a, b, separator) { + if (a === '') { + return b; + } + /** + * The correct handling of cases when the first segment is a root (`/`, `C:/`) or UNC path (`//?/C:/`). + */ + if (a.endsWith(separator)) { + return a + b; + } + return a + separator + b; +} +exports.joinPathSegments = joinPathSegments; diff --git a/node_modules/@nodelib/fs.walk/out/readers/reader.d.ts b/node_modules/@nodelib/fs.walk/out/readers/reader.d.ts new file mode 100644 index 0000000..e1f383b --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/readers/reader.d.ts @@ -0,0 +1,6 @@ +import type Settings from '../settings'; +export default class Reader { + protected readonly _root: string; + protected readonly _settings: Settings; + constructor(_root: string, _settings: Settings); +} diff --git a/node_modules/@nodelib/fs.walk/out/readers/reader.js b/node_modules/@nodelib/fs.walk/out/readers/reader.js new file mode 100644 index 0000000..782f07c --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/readers/reader.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const common = require("./common"); +class Reader { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._root = common.replacePathSegmentSeparator(_root, _settings.pathSegmentSeparator); + } +} +exports.default = Reader; diff --git a/node_modules/@nodelib/fs.walk/out/readers/sync.d.ts b/node_modules/@nodelib/fs.walk/out/readers/sync.d.ts new file mode 100644 index 0000000..af41033 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/readers/sync.d.ts @@ -0,0 +1,15 @@ +import * as fsScandir from '@nodelib/fs.scandir'; +import type { Entry } from '../types'; +import Reader from './reader'; +export default class SyncReader extends Reader { + protected readonly _scandir: typeof fsScandir.scandirSync; + private readonly _storage; + private readonly _queue; + read(): Entry[]; + private _pushToQueue; + private _handleQueue; + private _handleDirectory; + private _handleError; + private _handleEntry; + private _pushToStorage; +} diff --git a/node_modules/@nodelib/fs.walk/out/readers/sync.js b/node_modules/@nodelib/fs.walk/out/readers/sync.js new file mode 100644 index 0000000..9a8d5a6 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/readers/sync.js @@ -0,0 +1,59 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const fsScandir = require("@nodelib/fs.scandir"); +const common = require("./common"); +const reader_1 = require("./reader"); +class SyncReader extends reader_1.default { + constructor() { + super(...arguments); + this._scandir = fsScandir.scandirSync; + this._storage = []; + this._queue = new Set(); + } + read() { + this._pushToQueue(this._root, this._settings.basePath); + this._handleQueue(); + return this._storage; + } + _pushToQueue(directory, base) { + this._queue.add({ directory, base }); + } + _handleQueue() { + for (const item of this._queue.values()) { + this._handleDirectory(item.directory, item.base); + } + } + _handleDirectory(directory, base) { + try { + const entries = this._scandir(directory, this._settings.fsScandirSettings); + for (const entry of entries) { + this._handleEntry(entry, base); + } + } + catch (error) { + this._handleError(error); + } + } + _handleError(error) { + if (!common.isFatalError(this._settings, error)) { + return; + } + throw error; + } + _handleEntry(entry, base) { + const fullpath = entry.path; + if (base !== undefined) { + entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); + } + if (common.isAppliedFilter(this._settings.entryFilter, entry)) { + this._pushToStorage(entry); + } + if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { + this._pushToQueue(fullpath, base === undefined ? undefined : entry.path); + } + } + _pushToStorage(entry) { + this._storage.push(entry); + } +} +exports.default = SyncReader; diff --git a/node_modules/@nodelib/fs.walk/out/settings.d.ts b/node_modules/@nodelib/fs.walk/out/settings.d.ts new file mode 100644 index 0000000..d1c4b45 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/settings.d.ts @@ -0,0 +1,30 @@ +import * as fsScandir from '@nodelib/fs.scandir'; +import type { Entry, Errno } from './types'; +export declare type FilterFunction = (value: T) => boolean; +export declare type DeepFilterFunction = FilterFunction; +export declare type EntryFilterFunction = FilterFunction; +export declare type ErrorFilterFunction = FilterFunction; +export interface Options { + basePath?: string; + concurrency?: number; + deepFilter?: DeepFilterFunction; + entryFilter?: EntryFilterFunction; + errorFilter?: ErrorFilterFunction; + followSymbolicLinks?: boolean; + fs?: Partial; + pathSegmentSeparator?: string; + stats?: boolean; + throwErrorOnBrokenSymbolicLink?: boolean; +} +export default class Settings { + private readonly _options; + readonly basePath?: string; + readonly concurrency: number; + readonly deepFilter: DeepFilterFunction | null; + readonly entryFilter: EntryFilterFunction | null; + readonly errorFilter: ErrorFilterFunction | null; + readonly pathSegmentSeparator: string; + readonly fsScandirSettings: fsScandir.Settings; + constructor(_options?: Options); + private _getValue; +} diff --git a/node_modules/@nodelib/fs.walk/out/settings.js b/node_modules/@nodelib/fs.walk/out/settings.js new file mode 100644 index 0000000..d7a85c8 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/settings.js @@ -0,0 +1,26 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const path = require("path"); +const fsScandir = require("@nodelib/fs.scandir"); +class Settings { + constructor(_options = {}) { + this._options = _options; + this.basePath = this._getValue(this._options.basePath, undefined); + 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, path.sep); + this.fsScandirSettings = new fsScandir.Settings({ + followSymbolicLinks: this._options.followSymbolicLinks, + fs: this._options.fs, + pathSegmentSeparator: this._options.pathSegmentSeparator, + stats: this._options.stats, + throwErrorOnBrokenSymbolicLink: this._options.throwErrorOnBrokenSymbolicLink + }); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } +} +exports.default = Settings; diff --git a/node_modules/@nodelib/fs.walk/out/types/index.d.ts b/node_modules/@nodelib/fs.walk/out/types/index.d.ts new file mode 100644 index 0000000..6ee9bd3 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/types/index.d.ts @@ -0,0 +1,8 @@ +/// +import type * as scandir from '@nodelib/fs.scandir'; +export declare type Entry = scandir.Entry; +export declare type Errno = NodeJS.ErrnoException; +export interface QueueItem { + directory: string; + base?: string; +} diff --git a/node_modules/@nodelib/fs.walk/out/types/index.js b/node_modules/@nodelib/fs.walk/out/types/index.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/out/types/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/@nodelib/fs.walk/package.json b/node_modules/@nodelib/fs.walk/package.json new file mode 100644 index 0000000..86bfce4 --- /dev/null +++ b/node_modules/@nodelib/fs.walk/package.json @@ -0,0 +1,44 @@ +{ + "name": "@nodelib/fs.walk", + "version": "1.2.8", + "description": "A library for efficiently walking a directory recursively", + "license": "MIT", + "repository": "https://github.com/nodelib/nodelib/tree/master/packages/fs/fs.walk", + "keywords": [ + "NodeLib", + "fs", + "FileSystem", + "file system", + "walk", + "scanner", + "crawler" + ], + "engines": { + "node": ">= 8" + }, + "files": [ + "out/**", + "!out/**/*.map", + "!out/**/*.spec.*", + "!out/**/tests/**" + ], + "main": "out/index.js", + "typings": "out/index.d.ts", + "scripts": { + "clean": "rimraf {tsconfig.tsbuildinfo,out}", + "lint": "eslint \"src/**/*.ts\" --cache", + "compile": "tsc -b .", + "compile:watch": "tsc -p . --watch --sourceMap", + "test": "mocha \"out/**/*.spec.js\" -s 0", + "build": "npm run clean && npm run compile && npm run lint && npm test", + "watch": "npm run clean && npm run compile:watch" + }, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "devDependencies": { + "@nodelib/fs.macchiato": "1.0.4" + }, + "gitHead": "1e5bad48565da2b06b8600e744324ea240bf49d8" +} diff --git a/node_modules/ansi-regex/index.d.ts b/node_modules/ansi-regex/index.d.ts new file mode 100644 index 0000000..2dbf6af --- /dev/null +++ b/node_modules/ansi-regex/index.d.ts @@ -0,0 +1,37 @@ +declare namespace ansiRegex { + interface Options { + /** + Match only the first ANSI escape. + + @default false + */ + onlyFirst: boolean; + } +} + +/** +Regular expression for matching ANSI escape codes. + +@example +``` +import ansiRegex = require('ansi-regex'); + +ansiRegex().test('\u001B[4mcake\u001B[0m'); +//=> true + +ansiRegex().test('cake'); +//=> false + +'\u001B[4mcake\u001B[0m'.match(ansiRegex()); +//=> ['\u001B[4m', '\u001B[0m'] + +'\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true})); +//=> ['\u001B[4m'] + +'\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex()); +//=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007'] +``` +*/ +declare function ansiRegex(options?: ansiRegex.Options): RegExp; + +export = ansiRegex; diff --git a/node_modules/ansi-regex/index.js b/node_modules/ansi-regex/index.js new file mode 100644 index 0000000..616ff83 --- /dev/null +++ b/node_modules/ansi-regex/index.js @@ -0,0 +1,10 @@ +'use strict'; + +module.exports = ({onlyFirst = false} = {}) => { + const pattern = [ + '[\\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(pattern, onlyFirst ? undefined : 'g'); +}; diff --git a/node_modules/ansi-regex/license b/node_modules/ansi-regex/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/ansi-regex/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.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. diff --git a/node_modules/ansi-regex/package.json b/node_modules/ansi-regex/package.json new file mode 100644 index 0000000..017f531 --- /dev/null +++ b/node_modules/ansi-regex/package.json @@ -0,0 +1,55 @@ +{ + "name": "ansi-regex", + "version": "5.0.1", + "description": "Regular expression for matching ANSI escape codes", + "license": "MIT", + "repository": "chalk/ansi-regex", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "view-supported": "node fixtures/view-codes.js" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "command-line", + "text", + "regex", + "regexp", + "re", + "match", + "test", + "find", + "pattern" + ], + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.9.0", + "xo": "^0.25.3" + } +} diff --git a/node_modules/ansi-regex/readme.md b/node_modules/ansi-regex/readme.md new file mode 100644 index 0000000..4d848bc --- /dev/null +++ b/node_modules/ansi-regex/readme.md @@ -0,0 +1,78 @@ +# ansi-regex + +> Regular expression for matching [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) + + +## Install + +``` +$ npm install ansi-regex +``` + + +## Usage + +```js +const ansiRegex = require('ansi-regex'); + +ansiRegex().test('\u001B[4mcake\u001B[0m'); +//=> true + +ansiRegex().test('cake'); +//=> false + +'\u001B[4mcake\u001B[0m'.match(ansiRegex()); +//=> ['\u001B[4m', '\u001B[0m'] + +'\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true})); +//=> ['\u001B[4m'] + +'\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex()); +//=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007'] +``` + + +## API + +### ansiRegex(options?) + +Returns a regex for matching ANSI escape codes. + +#### options + +Type: `object` + +##### onlyFirst + +Type: `boolean`
+Default: `false` *(Matches any ANSI escape codes in a string)* + +Match only the first ANSI escape. + + +## FAQ + +### Why do you test for codes not in the ECMA 48 standard? + +Some of the codes we run as a test are codes that we acquired finding various lists of non-standard or manufacturer specific codes. We test for both standard and non-standard codes, as most of them follow the same or similar format and can be safely matched in strings without the risk of removing actual string content. There are a few non-standard control codes that do not follow the traditional format (i.e. they end in numbers) thus forcing us to exclude them from the test because we cannot reliably match them. + +On the historical side, those ECMA standards were established in the early 90's whereas the VT100, for example, was designed in the mid/late 70's. At that point in time, control codes were still pretty ungoverned and engineers used them for a multitude of things, namely to activate hardware ports that may have been proprietary. Somewhere else you see a similar 'anarchy' of codes is in the x86 architecture for processors; there are a ton of "interrupts" that can mean different things on certain brands of processors, most of which have been phased out. + + +## Maintainers + +- [Sindre Sorhus](https://github.com/sindresorhus) +- [Josh Junon](https://github.com/qix-) + + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
diff --git a/node_modules/ansi-styles/index.d.ts b/node_modules/ansi-styles/index.d.ts new file mode 100644 index 0000000..44a907e --- /dev/null +++ b/node_modules/ansi-styles/index.d.ts @@ -0,0 +1,345 @@ +declare type CSSColor = + | 'aliceblue' + | 'antiquewhite' + | 'aqua' + | 'aquamarine' + | 'azure' + | 'beige' + | 'bisque' + | 'black' + | 'blanchedalmond' + | 'blue' + | 'blueviolet' + | 'brown' + | 'burlywood' + | 'cadetblue' + | 'chartreuse' + | 'chocolate' + | 'coral' + | 'cornflowerblue' + | 'cornsilk' + | 'crimson' + | 'cyan' + | 'darkblue' + | 'darkcyan' + | 'darkgoldenrod' + | 'darkgray' + | 'darkgreen' + | 'darkgrey' + | 'darkkhaki' + | 'darkmagenta' + | 'darkolivegreen' + | 'darkorange' + | 'darkorchid' + | 'darkred' + | 'darksalmon' + | 'darkseagreen' + | 'darkslateblue' + | 'darkslategray' + | 'darkslategrey' + | 'darkturquoise' + | 'darkviolet' + | 'deeppink' + | 'deepskyblue' + | 'dimgray' + | 'dimgrey' + | 'dodgerblue' + | 'firebrick' + | 'floralwhite' + | 'forestgreen' + | 'fuchsia' + | 'gainsboro' + | 'ghostwhite' + | 'gold' + | 'goldenrod' + | 'gray' + | 'green' + | 'greenyellow' + | 'grey' + | 'honeydew' + | 'hotpink' + | 'indianred' + | 'indigo' + | 'ivory' + | 'khaki' + | 'lavender' + | 'lavenderblush' + | 'lawngreen' + | 'lemonchiffon' + | 'lightblue' + | 'lightcoral' + | 'lightcyan' + | 'lightgoldenrodyellow' + | 'lightgray' + | 'lightgreen' + | 'lightgrey' + | 'lightpink' + | 'lightsalmon' + | 'lightseagreen' + | 'lightskyblue' + | 'lightslategray' + | 'lightslategrey' + | 'lightsteelblue' + | 'lightyellow' + | 'lime' + | 'limegreen' + | 'linen' + | 'magenta' + | 'maroon' + | 'mediumaquamarine' + | 'mediumblue' + | 'mediumorchid' + | 'mediumpurple' + | 'mediumseagreen' + | 'mediumslateblue' + | 'mediumspringgreen' + | 'mediumturquoise' + | 'mediumvioletred' + | 'midnightblue' + | 'mintcream' + | 'mistyrose' + | 'moccasin' + | 'navajowhite' + | 'navy' + | 'oldlace' + | 'olive' + | 'olivedrab' + | 'orange' + | 'orangered' + | 'orchid' + | 'palegoldenrod' + | 'palegreen' + | 'paleturquoise' + | 'palevioletred' + | 'papayawhip' + | 'peachpuff' + | 'peru' + | 'pink' + | 'plum' + | 'powderblue' + | 'purple' + | 'rebeccapurple' + | 'red' + | 'rosybrown' + | 'royalblue' + | 'saddlebrown' + | 'salmon' + | 'sandybrown' + | 'seagreen' + | 'seashell' + | 'sienna' + | 'silver' + | 'skyblue' + | 'slateblue' + | 'slategray' + | 'slategrey' + | 'snow' + | 'springgreen' + | 'steelblue' + | 'tan' + | 'teal' + | 'thistle' + | 'tomato' + | 'turquoise' + | 'violet' + | 'wheat' + | 'white' + | 'whitesmoke' + | 'yellow' + | 'yellowgreen'; + +declare namespace ansiStyles { + interface ColorConvert { + /** + The RGB color space. + + @param red - (`0`-`255`) + @param green - (`0`-`255`) + @param blue - (`0`-`255`) + */ + rgb(red: number, green: number, blue: number): string; + + /** + The RGB HEX color space. + + @param hex - A hexadecimal string containing RGB data. + */ + hex(hex: string): string; + + /** + @param keyword - A CSS color name. + */ + keyword(keyword: CSSColor): string; + + /** + The HSL color space. + + @param hue - (`0`-`360`) + @param saturation - (`0`-`100`) + @param lightness - (`0`-`100`) + */ + hsl(hue: number, saturation: number, lightness: number): string; + + /** + The HSV color space. + + @param hue - (`0`-`360`) + @param saturation - (`0`-`100`) + @param value - (`0`-`100`) + */ + hsv(hue: number, saturation: number, value: number): string; + + /** + The HSV color space. + + @param hue - (`0`-`360`) + @param whiteness - (`0`-`100`) + @param blackness - (`0`-`100`) + */ + hwb(hue: number, whiteness: number, blackness: number): string; + + /** + Use a [4-bit unsigned number](https://en.wikipedia.org/wiki/ANSI_escape_code#3/4-bit) to set text color. + */ + ansi(ansi: number): string; + + /** + Use an [8-bit unsigned number](https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit) to set text color. + */ + ansi256(ansi: number): string; + } + + interface CSPair { + /** + The ANSI terminal control sequence for starting this style. + */ + readonly open: string; + + /** + The ANSI terminal control sequence for ending this style. + */ + readonly close: string; + } + + interface ColorBase { + readonly ansi: ColorConvert; + readonly ansi256: ColorConvert; + readonly ansi16m: ColorConvert; + + /** + The ANSI terminal control sequence for ending this color. + */ + readonly close: string; + } + + interface Modifier { + /** + Resets the current color chain. + */ + readonly reset: CSPair; + + /** + Make text bold. + */ + readonly bold: CSPair; + + /** + Emitting only a small amount of light. + */ + readonly dim: CSPair; + + /** + Make text italic. (Not widely supported) + */ + readonly italic: CSPair; + + /** + Make text underline. (Not widely supported) + */ + readonly underline: CSPair; + + /** + Inverse background and foreground colors. + */ + readonly inverse: CSPair; + + /** + Prints the text, but makes it invisible. + */ + readonly hidden: CSPair; + + /** + Puts a horizontal line through the center of the text. (Not widely supported) + */ + readonly strikethrough: CSPair; + } + + interface ForegroundColor { + readonly black: CSPair; + readonly red: CSPair; + readonly green: CSPair; + readonly yellow: CSPair; + readonly blue: CSPair; + readonly cyan: CSPair; + readonly magenta: CSPair; + readonly white: CSPair; + + /** + Alias for `blackBright`. + */ + readonly gray: CSPair; + + /** + Alias for `blackBright`. + */ + readonly grey: CSPair; + + readonly blackBright: CSPair; + readonly redBright: CSPair; + readonly greenBright: CSPair; + readonly yellowBright: CSPair; + readonly blueBright: CSPair; + readonly cyanBright: CSPair; + readonly magentaBright: CSPair; + readonly whiteBright: CSPair; + } + + interface BackgroundColor { + readonly bgBlack: CSPair; + readonly bgRed: CSPair; + readonly bgGreen: CSPair; + readonly bgYellow: CSPair; + readonly bgBlue: CSPair; + readonly bgCyan: CSPair; + readonly bgMagenta: CSPair; + readonly bgWhite: CSPair; + + /** + Alias for `bgBlackBright`. + */ + readonly bgGray: CSPair; + + /** + Alias for `bgBlackBright`. + */ + readonly bgGrey: CSPair; + + readonly bgBlackBright: CSPair; + readonly bgRedBright: CSPair; + readonly bgGreenBright: CSPair; + readonly bgYellowBright: CSPair; + readonly bgBlueBright: CSPair; + readonly bgCyanBright: CSPair; + readonly bgMagentaBright: CSPair; + readonly bgWhiteBright: CSPair; + } +} + +declare const ansiStyles: { + readonly modifier: ansiStyles.Modifier; + readonly color: ansiStyles.ForegroundColor & ansiStyles.ColorBase; + readonly bgColor: ansiStyles.BackgroundColor & ansiStyles.ColorBase; + readonly codes: ReadonlyMap; +} & ansiStyles.BackgroundColor & ansiStyles.ForegroundColor & ansiStyles.Modifier; + +export = ansiStyles; diff --git a/node_modules/ansi-styles/index.js b/node_modules/ansi-styles/index.js new file mode 100644 index 0000000..5d82581 --- /dev/null +++ b/node_modules/ansi-styles/index.js @@ -0,0 +1,163 @@ +'use strict'; + +const wrapAnsi16 = (fn, offset) => (...args) => { + const code = fn(...args); + return `\u001B[${code + offset}m`; +}; + +const wrapAnsi256 = (fn, offset) => (...args) => { + const code = fn(...args); + return `\u001B[${38 + offset};5;${code}m`; +}; + +const wrapAnsi16m = (fn, offset) => (...args) => { + const rgb = fn(...args); + return `\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; +}; + +const ansi2ansi = n => n; +const rgb2rgb = (r, g, b) => [r, g, b]; + +const setLazyProperty = (object, property, get) => { + Object.defineProperty(object, property, { + get: () => { + const value = get(); + + Object.defineProperty(object, property, { + value, + enumerable: true, + configurable: true + }); + + return value; + }, + enumerable: true, + configurable: true + }); +}; + +/** @type {typeof import('color-convert')} */ +let colorConvert; +const makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => { + if (colorConvert === undefined) { + colorConvert = require('color-convert'); + } + + const offset = isBackground ? 10 : 0; + const styles = {}; + + for (const [sourceSpace, suite] of Object.entries(colorConvert)) { + const name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace; + if (sourceSpace === targetSpace) { + styles[name] = wrap(identity, offset); + } else if (typeof suite === 'object') { + styles[name] = wrap(suite[targetSpace], offset); + } + } + + return styles; +}; + +function assembleStyles() { + const codes = new Map(); + const styles = { + modifier: { + reset: [0, 0], + // 21 isn't widely supported and 22 does the same thing + 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], + + // Bright color + 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], + + // Bright color + bgBlackBright: [100, 49], + bgRedBright: [101, 49], + bgGreenBright: [102, 49], + bgYellowBright: [103, 49], + bgBlueBright: [104, 49], + bgMagentaBright: [105, 49], + bgCyanBright: [106, 49], + bgWhiteBright: [107, 49] + } + }; + + // Alias bright black as gray (and grey) + styles.color.gray = styles.color.blackBright; + styles.bgColor.bgGray = styles.bgColor.bgBlackBright; + styles.color.grey = styles.color.blackBright; + styles.bgColor.bgGrey = styles.bgColor.bgBlackBright; + + for (const [groupName, group] of Object.entries(styles)) { + for (const [styleName, style] of Object.entries(group)) { + styles[styleName] = { + open: `\u001B[${style[0]}m`, + close: `\u001B[${style[1]}m` + }; + + group[styleName] = styles[styleName]; + + codes.set(style[0], style[1]); + } + + Object.defineProperty(styles, groupName, { + value: group, + enumerable: false + }); + } + + Object.defineProperty(styles, 'codes', { + value: codes, + enumerable: false + }); + + styles.color.close = '\u001B[39m'; + styles.bgColor.close = '\u001B[49m'; + + setLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false)); + setLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false)); + setLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false)); + setLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true)); + setLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true)); + setLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true)); + + return styles; +} + +// Make the export immutable +Object.defineProperty(module, 'exports', { + enumerable: true, + get: assembleStyles +}); diff --git a/node_modules/ansi-styles/license b/node_modules/ansi-styles/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/ansi-styles/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.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. diff --git a/node_modules/ansi-styles/package.json b/node_modules/ansi-styles/package.json new file mode 100644 index 0000000..7539328 --- /dev/null +++ b/node_modules/ansi-styles/package.json @@ -0,0 +1,56 @@ +{ + "name": "ansi-styles", + "version": "4.3.0", + "description": "ANSI escape codes for styling strings in the terminal", + "license": "MIT", + "repository": "chalk/ansi-styles", + "funding": "https://github.com/chalk/ansi-styles?sponsor=1", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "screenshot": "svg-term --command='node screenshot' --out=screenshot.svg --padding=3 --width=55 --height=3 --at=1000 --no-cursor" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "color-convert": "^2.0.1" + }, + "devDependencies": { + "@types/color-convert": "^1.9.0", + "ava": "^2.3.0", + "svg-term-cli": "^2.1.1", + "tsd": "^0.11.0", + "xo": "^0.25.3" + } +} diff --git a/node_modules/ansi-styles/readme.md b/node_modules/ansi-styles/readme.md new file mode 100644 index 0000000..24883de --- /dev/null +++ b/node_modules/ansi-styles/readme.md @@ -0,0 +1,152 @@ +# ansi-styles [![Build Status](https://travis-ci.org/chalk/ansi-styles.svg?branch=master)](https://travis-ci.org/chalk/ansi-styles) + +> [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles) for styling strings in the terminal + +You probably want the higher-level [chalk](https://github.com/chalk/chalk) module for styling your strings. + + + +## Install + +``` +$ npm install ansi-styles +``` + +## Usage + +```js +const style = require('ansi-styles'); + +console.log(`${style.green.open}Hello world!${style.green.close}`); + + +// Color conversion between 16/256/truecolor +// NOTE: If conversion goes to 16 colors or 256 colors, the original color +// may be degraded to fit that color palette. This means terminals +// that do not support 16 million colors will best-match the +// original color. +console.log(style.bgColor.ansi.hsl(120, 80, 72) + 'Hello world!' + style.bgColor.close); +console.log(style.color.ansi256.rgb(199, 20, 250) + 'Hello world!' + style.color.close); +console.log(style.color.ansi16m.hex('#abcdef') + 'Hello world!' + style.color.close); +``` + +## API + +Each style has an `open` and `close` property. + +## Styles + +### Modifiers + +- `reset` +- `bold` +- `dim` +- `italic` *(Not widely supported)* +- `underline` +- `inverse` +- `hidden` +- `strikethrough` *(Not widely supported)* + +### Colors + +- `black` +- `red` +- `green` +- `yellow` +- `blue` +- `magenta` +- `cyan` +- `white` +- `blackBright` (alias: `gray`, `grey`) +- `redBright` +- `greenBright` +- `yellowBright` +- `blueBright` +- `magentaBright` +- `cyanBright` +- `whiteBright` + +### Background colors + +- `bgBlack` +- `bgRed` +- `bgGreen` +- `bgYellow` +- `bgBlue` +- `bgMagenta` +- `bgCyan` +- `bgWhite` +- `bgBlackBright` (alias: `bgGray`, `bgGrey`) +- `bgRedBright` +- `bgGreenBright` +- `bgYellowBright` +- `bgBlueBright` +- `bgMagentaBright` +- `bgCyanBright` +- `bgWhiteBright` + +## Advanced usage + +By default, you get a map of styles, but the styles are also available as groups. They are non-enumerable so they don't show up unless you access them explicitly. This makes it easier to expose only a subset in a higher-level module. + +- `style.modifier` +- `style.color` +- `style.bgColor` + +###### Example + +```js +console.log(style.color.green.open); +``` + +Raw escape codes (i.e. without the CSI escape prefix `\u001B[` and render mode postfix `m`) are available under `style.codes`, which returns a `Map` with the open codes as keys and close codes as values. + +###### Example + +```js +console.log(style.codes.get(36)); +//=> 39 +``` + +## [256 / 16 million (TrueColor) support](https://gist.github.com/XVilka/8346728) + +`ansi-styles` uses the [`color-convert`](https://github.com/Qix-/color-convert) package to allow for converting between various colors and ANSI escapes, with support for 256 and 16 million colors. + +The following color spaces from `color-convert` are supported: + +- `rgb` +- `hex` +- `keyword` +- `hsl` +- `hsv` +- `hwb` +- `ansi` +- `ansi256` + +To use these, call the associated conversion function with the intended output, for example: + +```js +style.color.ansi.rgb(100, 200, 15); // RGB to 16 color ansi foreground code +style.bgColor.ansi.rgb(100, 200, 15); // RGB to 16 color ansi background code + +style.color.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code +style.bgColor.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code + +style.color.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color foreground code +style.bgColor.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color background code +``` + +## Related + +- [ansi-escapes](https://github.com/sindresorhus/ansi-escapes) - ANSI escape codes for manipulating the terminal + +## Maintainers + +- [Sindre Sorhus](https://github.com/sindresorhus) +- [Josh Junon](https://github.com/qix-) + +## For enterprise + +Available as part of the Tidelift Subscription. + +The maintainers of `ansi-styles` and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-ansi-styles?utm_source=npm-ansi-styles&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) diff --git a/node_modules/anymatch/LICENSE b/node_modules/anymatch/LICENSE new file mode 100644 index 0000000..491766c --- /dev/null +++ b/node_modules/anymatch/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) 2019 Elan Shanker, Paul Miller (https://paulmillr.com) + +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. diff --git a/node_modules/anymatch/README.md b/node_modules/anymatch/README.md new file mode 100644 index 0000000..1dd67f5 --- /dev/null +++ b/node_modules/anymatch/README.md @@ -0,0 +1,87 @@ +anymatch [![Build Status](https://travis-ci.org/micromatch/anymatch.svg?branch=master)](https://travis-ci.org/micromatch/anymatch) [![Coverage Status](https://img.shields.io/coveralls/micromatch/anymatch.svg?branch=master)](https://coveralls.io/r/micromatch/anymatch?branch=master) +====== +Javascript module to match a string against a regular expression, glob, string, +or function that takes the string as an argument and returns a truthy or falsy +value. The matcher can also be an array of any or all of these. Useful for +allowing a very flexible user-defined config to define things like file paths. + +__Note: This module has Bash-parity, please be aware that Windows-style backslashes are not supported as separators. See https://github.com/micromatch/micromatch#backslashes for more information.__ + + +Usage +----- +```sh +npm install anymatch +``` + +#### anymatch(matchers, testString, [returnIndex], [options]) +* __matchers__: (_Array|String|RegExp|Function_) +String to be directly matched, string with glob patterns, regular expression +test, function that takes the testString as an argument and returns a truthy +value if it should be matched, or an array of any number and mix of these types. +* __testString__: (_String|Array_) The string to test against the matchers. If +passed as an array, the first element of the array will be used as the +`testString` for non-function matchers, while the entire array will be applied +as the arguments for function matchers. +* __options__: (_Object_ [optional]_) Any of the [picomatch](https://github.com/micromatch/picomatch#options) options. + * __returnIndex__: (_Boolean [optional]_) If true, return the array index of +the first matcher that that testString matched, or -1 if no match, instead of a +boolean result. + +```js +const anymatch = require('anymatch'); + +const matchers = [ 'path/to/file.js', 'path/anyjs/**/*.js', /foo.js$/, string => string.includes('bar') && string.length > 10 ] ; + +anymatch(matchers, 'path/to/file.js'); // true +anymatch(matchers, 'path/anyjs/baz.js'); // true +anymatch(matchers, 'path/to/foo.js'); // true +anymatch(matchers, 'path/to/bar.js'); // true +anymatch(matchers, 'bar.js'); // false + +// returnIndex = true +anymatch(matchers, 'foo.js', {returnIndex: true}); // 2 +anymatch(matchers, 'path/anyjs/foo.js', {returnIndex: true}); // 1 + +// any picomatc + +// using globs to match directories and their children +anymatch('node_modules', 'node_modules'); // true +anymatch('node_modules', 'node_modules/somelib/index.js'); // false +anymatch('node_modules/**', 'node_modules/somelib/index.js'); // true +anymatch('node_modules/**', '/absolute/path/to/node_modules/somelib/index.js'); // false +anymatch('**/node_modules/**', '/absolute/path/to/node_modules/somelib/index.js'); // true + +const matcher = anymatch(matchers); +['foo.js', 'bar.js'].filter(matcher); // [ 'foo.js' ] +anymatch master* ❯ + +``` + +#### anymatch(matchers) +You can also pass in only your matcher(s) to get a curried function that has +already been bound to the provided matching criteria. This can be used as an +`Array#filter` callback. + +```js +var matcher = anymatch(matchers); + +matcher('path/to/file.js'); // true +matcher('path/anyjs/baz.js', true); // 1 + +['foo.js', 'bar.js'].filter(matcher); // ['foo.js'] +``` + +Changelog +---------- +[See release notes page on GitHub](https://github.com/micromatch/anymatch/releases) + +- **v3.0:** Removed `startIndex` and `endIndex` arguments. Node 8.x-only. +- **v2.0:** [micromatch](https://github.com/jonschlinkert/micromatch) moves away from minimatch-parity and inline with Bash. This includes handling backslashes differently (see https://github.com/micromatch/micromatch#backslashes for more information). +- **v1.2:** anymatch uses [micromatch](https://github.com/jonschlinkert/micromatch) +for glob pattern matching. Issues with glob pattern matching should be +reported directly to the [micromatch issue tracker](https://github.com/jonschlinkert/micromatch/issues). + +License +------- +[ISC](https://raw.github.com/micromatch/anymatch/master/LICENSE) diff --git a/node_modules/anymatch/index.d.ts b/node_modules/anymatch/index.d.ts new file mode 100644 index 0000000..3ef7eaa --- /dev/null +++ b/node_modules/anymatch/index.d.ts @@ -0,0 +1,20 @@ +type AnymatchFn = (testString: string) => boolean; +type AnymatchPattern = string|RegExp|AnymatchFn; +type AnymatchMatcher = AnymatchPattern|AnymatchPattern[] +type AnymatchTester = { + (testString: string|any[], returnIndex: true): number; + (testString: string|any[]): boolean; +} + +type PicomatchOptions = {dot: boolean}; + +declare const anymatch: { + (matchers: AnymatchMatcher): AnymatchTester; + (matchers: AnymatchMatcher, testString: null, returnIndex: true | PicomatchOptions): AnymatchTester; + (matchers: AnymatchMatcher, testString: string|any[], returnIndex: true | PicomatchOptions): number; + (matchers: AnymatchMatcher, testString: string|any[]): boolean; +} + +export {AnymatchMatcher as Matcher} +export {AnymatchTester as Tester} +export default anymatch diff --git a/node_modules/anymatch/index.js b/node_modules/anymatch/index.js new file mode 100644 index 0000000..8eb73e9 --- /dev/null +++ b/node_modules/anymatch/index.js @@ -0,0 +1,104 @@ +'use strict'; + +Object.defineProperty(exports, "__esModule", { value: true }); + +const picomatch = require('picomatch'); +const normalizePath = require('normalize-path'); + +/** + * @typedef {(testString: string) => boolean} AnymatchFn + * @typedef {string|RegExp|AnymatchFn} AnymatchPattern + * @typedef {AnymatchPattern|AnymatchPattern[]} AnymatchMatcher + */ +const BANG = '!'; +const DEFAULT_OPTIONS = {returnIndex: false}; +const arrify = (item) => Array.isArray(item) ? item : [item]; + +/** + * @param {AnymatchPattern} matcher + * @param {object} options + * @returns {AnymatchFn} + */ +const createPattern = (matcher, options) => { + if (typeof matcher === 'function') { + return matcher; + } + if (typeof matcher === 'string') { + const glob = picomatch(matcher, options); + return (string) => matcher === string || glob(string); + } + if (matcher instanceof RegExp) { + return (string) => matcher.test(string); + } + return (string) => false; +}; + +/** + * @param {Array} patterns + * @param {Array} negPatterns + * @param {String|Array} args + * @param {Boolean} returnIndex + * @returns {boolean|number} + */ +const matchPatterns = (patterns, negPatterns, args, returnIndex) => { + const isList = Array.isArray(args); + const _path = isList ? args[0] : args; + if (!isList && typeof _path !== 'string') { + throw new TypeError('anymatch: second argument must be a string: got ' + + Object.prototype.toString.call(_path)) + } + const path = normalizePath(_path, false); + + for (let index = 0; index < negPatterns.length; index++) { + const nglob = negPatterns[index]; + if (nglob(path)) { + return returnIndex ? -1 : false; + } + } + + const applied = isList && [path].concat(args.slice(1)); + for (let index = 0; index < patterns.length; index++) { + const pattern = patterns[index]; + if (isList ? pattern(...applied) : pattern(path)) { + return returnIndex ? index : true; + } + } + + return returnIndex ? -1 : false; +}; + +/** + * @param {AnymatchMatcher} matchers + * @param {Array|string} testString + * @param {object} options + * @returns {boolean|number|Function} + */ +const anymatch = (matchers, testString, options = DEFAULT_OPTIONS) => { + if (matchers == null) { + throw new TypeError('anymatch: specify first argument'); + } + const opts = typeof options === 'boolean' ? {returnIndex: options} : options; + const returnIndex = opts.returnIndex || false; + + // Early cache for matchers. + const mtchers = arrify(matchers); + const negatedGlobs = mtchers + .filter(item => typeof item === 'string' && item.charAt(0) === BANG) + .map(item => item.slice(1)) + .map(item => picomatch(item, opts)); + const patterns = mtchers + .filter(item => typeof item !== 'string' || (typeof item === 'string' && item.charAt(0) !== BANG)) + .map(matcher => createPattern(matcher, opts)); + + if (testString == null) { + return (testString, ri = false) => { + const returnIndex = typeof ri === 'boolean' ? ri : false; + return matchPatterns(patterns, negatedGlobs, testString, returnIndex); + } + } + + return matchPatterns(patterns, negatedGlobs, testString, returnIndex); +}; + +anymatch.default = anymatch; +module.exports = anymatch; diff --git a/node_modules/anymatch/package.json b/node_modules/anymatch/package.json new file mode 100644 index 0000000..2cb2307 --- /dev/null +++ b/node_modules/anymatch/package.json @@ -0,0 +1,48 @@ +{ + "name": "anymatch", + "version": "3.1.3", + "description": "Matches strings against configurable strings, globs, regular expressions, and/or functions", + "files": [ + "index.js", + "index.d.ts" + ], + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "author": { + "name": "Elan Shanker", + "url": "https://github.com/es128" + }, + "license": "ISC", + "homepage": "https://github.com/micromatch/anymatch", + "repository": { + "type": "git", + "url": "https://github.com/micromatch/anymatch" + }, + "keywords": [ + "match", + "any", + "string", + "file", + "fs", + "list", + "glob", + "regex", + "regexp", + "regular", + "expression", + "function" + ], + "scripts": { + "test": "nyc mocha", + "mocha": "mocha" + }, + "devDependencies": { + "mocha": "^6.1.3", + "nyc": "^14.0.0" + }, + "engines": { + "node": ">= 8" + } +} diff --git a/node_modules/balanced-match/.github/FUNDING.yml b/node_modules/balanced-match/.github/FUNDING.yml new file mode 100644 index 0000000..cea8b16 --- /dev/null +++ b/node_modules/balanced-match/.github/FUNDING.yml @@ -0,0 +1,2 @@ +tidelift: "npm/balanced-match" +patreon: juliangruber diff --git a/node_modules/balanced-match/LICENSE.md b/node_modules/balanced-match/LICENSE.md new file mode 100644 index 0000000..2cdc8e4 --- /dev/null +++ b/node_modules/balanced-match/LICENSE.md @@ -0,0 +1,21 @@ +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.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. diff --git a/node_modules/balanced-match/README.md b/node_modules/balanced-match/README.md new file mode 100644 index 0000000..d2a48b6 --- /dev/null +++ b/node_modules/balanced-match/README.md @@ -0,0 +1,97 @@ +# balanced-match + +Match balanced string pairs, like `{` and `}` or `` and ``. Supports regular expressions as well! + +[![build status](https://secure.travis-ci.org/juliangruber/balanced-match.svg)](http://travis-ci.org/juliangruber/balanced-match) +[![downloads](https://img.shields.io/npm/dm/balanced-match.svg)](https://www.npmjs.org/package/balanced-match) + +[![testling badge](https://ci.testling.com/juliangruber/balanced-match.png)](https://ci.testling.com/juliangruber/balanced-match) + +## Example + +Get the first matching pair of braces: + +```js +var balanced = require('balanced-match'); + +console.log(balanced('{', '}', 'pre{in{nested}}post')); +console.log(balanced('{', '}', 'pre{first}between{second}post')); +console.log(balanced(/\s+\{\s+/, /\s+\}\s+/, 'pre { in{nest} } post')); +``` + +The matches are: + +```bash +$ node example.js +{ start: 3, end: 14, pre: 'pre', body: 'in{nested}', post: 'post' } +{ start: 3, + end: 9, + pre: 'pre', + body: 'first', + post: 'between{second}post' } +{ start: 3, end: 17, pre: 'pre', body: 'in{nest}', post: 'post' } +``` + +## API + +### var m = balanced(a, b, str) + +For the first non-nested matching pair of `a` and `b` in `str`, return an +object with those keys: + +* **start** the index of the first match of `a` +* **end** the index of the matching `b` +* **pre** the preamble, `a` and `b` not included +* **body** the match, `a` and `b` not included +* **post** the postscript, `a` and `b` not included + +If there's no match, `undefined` will be returned. + +If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `['{', 'a', '']` and `{a}}` will match `['', 'a', '}']`. + +### var r = balanced.range(a, b, str) + +For the first non-nested matching pair of `a` and `b` in `str`, return an +array with indexes: `[ , ]`. + +If there's no match, `undefined` will be returned. + +If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `[ 1, 3 ]` and `{a}}` will match `[0, 2]`. + +## Installation + +With [npm](https://npmjs.org) do: + +```bash +npm install balanced-match +``` + +## Security contact information + +To report a security vulnerability, please use the +[Tidelift security contact](https://tidelift.com/security). +Tidelift will coordinate the fix and disclosure. + +## License + +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.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. diff --git a/node_modules/balanced-match/index.js b/node_modules/balanced-match/index.js new file mode 100644 index 0000000..c67a646 --- /dev/null +++ b/node_modules/balanced-match/index.js @@ -0,0 +1,62 @@ +'use strict'; +module.exports = balanced; +function balanced(a, b, str) { + if (a instanceof RegExp) a = maybeMatch(a, str); + if (b instanceof RegExp) b = maybeMatch(b, str); + + var r = range(a, b, str); + + return r && { + start: r[0], + end: r[1], + pre: str.slice(0, r[0]), + body: str.slice(r[0] + a.length, r[1]), + post: str.slice(r[1] + b.length) + }; +} + +function maybeMatch(reg, str) { + var m = str.match(reg); + return m ? m[0] : null; +} + +balanced.range = range; +function range(a, b, str) { + var begs, beg, left, right, result; + var ai = str.indexOf(a); + var bi = str.indexOf(b, ai + 1); + var i = ai; + + if (ai >= 0 && bi > 0) { + if(a===b) { + return [ai, bi]; + } + begs = []; + left = str.length; + + while (i >= 0 && !result) { + if (i == ai) { + begs.push(i); + ai = str.indexOf(a, i + 1); + } else if (begs.length == 1) { + result = [ begs.pop(), bi ]; + } else { + beg = begs.pop(); + if (beg < left) { + left = beg; + right = bi; + } + + bi = str.indexOf(b, i + 1); + } + + i = ai < bi && ai >= 0 ? ai : bi; + } + + if (begs.length) { + result = [ left, right ]; + } + } + + return result; +} diff --git a/node_modules/balanced-match/package.json b/node_modules/balanced-match/package.json new file mode 100644 index 0000000..ce6073e --- /dev/null +++ b/node_modules/balanced-match/package.json @@ -0,0 +1,48 @@ +{ + "name": "balanced-match", + "description": "Match balanced character pairs, like \"{\" and \"}\"", + "version": "1.0.2", + "repository": { + "type": "git", + "url": "git://github.com/juliangruber/balanced-match.git" + }, + "homepage": "https://github.com/juliangruber/balanced-match", + "main": "index.js", + "scripts": { + "test": "tape test/test.js", + "bench": "matcha test/bench.js" + }, + "devDependencies": { + "matcha": "^0.7.0", + "tape": "^4.6.0" + }, + "keywords": [ + "match", + "regexp", + "test", + "balanced", + "parse" + ], + "author": { + "name": "Julian Gruber", + "email": "mail@juliangruber.com", + "url": "http://juliangruber.com" + }, + "license": "MIT", + "testling": { + "files": "test/*.js", + "browsers": [ + "ie/8..latest", + "firefox/20..latest", + "firefox/nightly", + "chrome/25..latest", + "chrome/canary", + "opera/12..latest", + "opera/next", + "safari/5.1..latest", + "ipad/6.0..latest", + "iphone/6.0..latest", + "android-browser/4.2..latest" + ] + } +} diff --git a/node_modules/binary-extensions/binary-extensions.json b/node_modules/binary-extensions/binary-extensions.json new file mode 100644 index 0000000..ac08048 --- /dev/null +++ b/node_modules/binary-extensions/binary-extensions.json @@ -0,0 +1,263 @@ +[ + "3dm", + "3ds", + "3g2", + "3gp", + "7z", + "a", + "aac", + "adp", + "afdesign", + "afphoto", + "afpub", + "ai", + "aif", + "aiff", + "alz", + "ape", + "apk", + "appimage", + "ar", + "arj", + "asf", + "au", + "avi", + "bak", + "baml", + "bh", + "bin", + "bk", + "bmp", + "btif", + "bz2", + "bzip2", + "cab", + "caf", + "cgm", + "class", + "cmx", + "cpio", + "cr2", + "cur", + "dat", + "dcm", + "deb", + "dex", + "djvu", + "dll", + "dmg", + "dng", + "doc", + "docm", + "docx", + "dot", + "dotm", + "dra", + "DS_Store", + "dsk", + "dts", + "dtshd", + "dvb", + "dwg", + "dxf", + "ecelp4800", + "ecelp7470", + "ecelp9600", + "egg", + "eol", + "eot", + "epub", + "exe", + "f4v", + "fbs", + "fh", + "fla", + "flac", + "flatpak", + "fli", + "flv", + "fpx", + "fst", + "fvt", + "g3", + "gh", + "gif", + "graffle", + "gz", + "gzip", + "h261", + "h263", + "h264", + "icns", + "ico", + "ief", + "img", + "ipa", + "iso", + "jar", + "jpeg", + "jpg", + "jpgv", + "jpm", + "jxr", + "key", + "ktx", + "lha", + "lib", + "lvp", + "lz", + "lzh", + "lzma", + "lzo", + "m3u", + "m4a", + "m4v", + "mar", + "mdi", + "mht", + "mid", + "midi", + "mj2", + "mka", + "mkv", + "mmr", + "mng", + "mobi", + "mov", + "movie", + "mp3", + "mp4", + "mp4a", + "mpeg", + "mpg", + "mpga", + "mxu", + "nef", + "npx", + "numbers", + "nupkg", + "o", + "odp", + "ods", + "odt", + "oga", + "ogg", + "ogv", + "otf", + "ott", + "pages", + "pbm", + "pcx", + "pdb", + "pdf", + "pea", + "pgm", + "pic", + "png", + "pnm", + "pot", + "potm", + "potx", + "ppa", + "ppam", + "ppm", + "pps", + "ppsm", + "ppsx", + "ppt", + "pptm", + "pptx", + "psd", + "pya", + "pyc", + "pyo", + "pyv", + "qt", + "rar", + "ras", + "raw", + "resources", + "rgb", + "rip", + "rlc", + "rmf", + "rmvb", + "rpm", + "rtf", + "rz", + "s3m", + "s7z", + "scpt", + "sgi", + "shar", + "snap", + "sil", + "sketch", + "slk", + "smv", + "snk", + "so", + "stl", + "suo", + "sub", + "swf", + "tar", + "tbz", + "tbz2", + "tga", + "tgz", + "thmx", + "tif", + "tiff", + "tlz", + "ttc", + "ttf", + "txz", + "udf", + "uvh", + "uvi", + "uvm", + "uvp", + "uvs", + "uvu", + "viv", + "vob", + "war", + "wav", + "wax", + "wbmp", + "wdp", + "weba", + "webm", + "webp", + "whl", + "wim", + "wm", + "wma", + "wmv", + "wmx", + "woff", + "woff2", + "wrm", + "wvx", + "xbm", + "xif", + "xla", + "xlam", + "xls", + "xlsb", + "xlsm", + "xlsx", + "xlt", + "xltm", + "xltx", + "xm", + "xmind", + "xpi", + "xpm", + "xwd", + "xz", + "z", + "zip", + "zipx" +] diff --git a/node_modules/binary-extensions/binary-extensions.json.d.ts b/node_modules/binary-extensions/binary-extensions.json.d.ts new file mode 100644 index 0000000..94a248c --- /dev/null +++ b/node_modules/binary-extensions/binary-extensions.json.d.ts @@ -0,0 +1,3 @@ +declare const binaryExtensionsJson: readonly string[]; + +export = binaryExtensionsJson; diff --git a/node_modules/binary-extensions/index.d.ts b/node_modules/binary-extensions/index.d.ts new file mode 100644 index 0000000..f469ac5 --- /dev/null +++ b/node_modules/binary-extensions/index.d.ts @@ -0,0 +1,14 @@ +/** +List of binary file extensions. + +@example +``` +import binaryExtensions = require('binary-extensions'); + +console.log(binaryExtensions); +//=> ['3ds', '3g2', …] +``` +*/ +declare const binaryExtensions: readonly string[]; + +export = binaryExtensions; diff --git a/node_modules/binary-extensions/index.js b/node_modules/binary-extensions/index.js new file mode 100644 index 0000000..d46e468 --- /dev/null +++ b/node_modules/binary-extensions/index.js @@ -0,0 +1 @@ +module.exports = require('./binary-extensions.json'); diff --git a/node_modules/binary-extensions/license b/node_modules/binary-extensions/license new file mode 100644 index 0000000..5493a1a --- /dev/null +++ b/node_modules/binary-extensions/license @@ -0,0 +1,10 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.com) +Copyright (c) Paul Miller (https://paulmillr.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. diff --git a/node_modules/binary-extensions/package.json b/node_modules/binary-extensions/package.json new file mode 100644 index 0000000..4710c33 --- /dev/null +++ b/node_modules/binary-extensions/package.json @@ -0,0 +1,40 @@ +{ + "name": "binary-extensions", + "version": "2.3.0", + "description": "List of binary file extensions", + "license": "MIT", + "repository": "sindresorhus/binary-extensions", + "funding": "https://github.com/sponsors/sindresorhus", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "https://sindresorhus.com" + }, + "sideEffects": false, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts", + "binary-extensions.json", + "binary-extensions.json.d.ts" + ], + "keywords": [ + "binary", + "extensions", + "extension", + "file", + "json", + "list", + "array" + ], + "devDependencies": { + "ava": "^1.4.1", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/binary-extensions/readme.md b/node_modules/binary-extensions/readme.md new file mode 100644 index 0000000..88519b3 --- /dev/null +++ b/node_modules/binary-extensions/readme.md @@ -0,0 +1,25 @@ +# binary-extensions + +> List of binary file extensions + +The list is just a [JSON file](binary-extensions.json) and can be used anywhere. + +## Install + +```sh +npm install binary-extensions +``` + +## Usage + +```js +const binaryExtensions = require('binary-extensions'); + +console.log(binaryExtensions); +//=> ['3ds', '3g2', …] +``` + +## Related + +- [is-binary-path](https://github.com/sindresorhus/is-binary-path) - Check if a filepath is a binary file +- [text-extensions](https://github.com/sindresorhus/text-extensions) - List of text file extensions diff --git a/node_modules/brace-expansion/.github/FUNDING.yml b/node_modules/brace-expansion/.github/FUNDING.yml new file mode 100644 index 0000000..79d1eaf --- /dev/null +++ b/node_modules/brace-expansion/.github/FUNDING.yml @@ -0,0 +1,2 @@ +tidelift: "npm/brace-expansion" +patreon: juliangruber diff --git a/node_modules/brace-expansion/LICENSE b/node_modules/brace-expansion/LICENSE new file mode 100644 index 0000000..de32266 --- /dev/null +++ b/node_modules/brace-expansion/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2013 Julian Gruber + +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. diff --git a/node_modules/brace-expansion/README.md b/node_modules/brace-expansion/README.md new file mode 100644 index 0000000..e55c583 --- /dev/null +++ b/node_modules/brace-expansion/README.md @@ -0,0 +1,135 @@ +# brace-expansion + +[Brace expansion](https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html), +as known from sh/bash, in JavaScript. + +[![build status](https://secure.travis-ci.org/juliangruber/brace-expansion.svg)](http://travis-ci.org/juliangruber/brace-expansion) +[![downloads](https://img.shields.io/npm/dm/brace-expansion.svg)](https://www.npmjs.org/package/brace-expansion) +[![Greenkeeper badge](https://badges.greenkeeper.io/juliangruber/brace-expansion.svg)](https://greenkeeper.io/) + +[![testling badge](https://ci.testling.com/juliangruber/brace-expansion.png)](https://ci.testling.com/juliangruber/brace-expansion) + +## Example + +```js +var expand = require('brace-expansion'); + +expand('file-{a,b,c}.jpg') +// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg'] + +expand('-v{,,}') +// => ['-v', '-v', '-v'] + +expand('file{0..2}.jpg') +// => ['file0.jpg', 'file1.jpg', 'file2.jpg'] + +expand('file-{a..c}.jpg') +// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg'] + +expand('file{2..0}.jpg') +// => ['file2.jpg', 'file1.jpg', 'file0.jpg'] + +expand('file{0..4..2}.jpg') +// => ['file0.jpg', 'file2.jpg', 'file4.jpg'] + +expand('file-{a..e..2}.jpg') +// => ['file-a.jpg', 'file-c.jpg', 'file-e.jpg'] + +expand('file{00..10..5}.jpg') +// => ['file00.jpg', 'file05.jpg', 'file10.jpg'] + +expand('{{A..C},{a..c}}') +// => ['A', 'B', 'C', 'a', 'b', 'c'] + +expand('ppp{,config,oe{,conf}}') +// => ['ppp', 'pppconfig', 'pppoe', 'pppoeconf'] +``` + +## API + +```js +var expand = require('brace-expansion'); +``` + +### var expanded = expand(str) + +Return an array of all possible and valid expansions of `str`. If none are +found, `[str]` is returned. + +Valid expansions are: + +```js +/^(.*,)+(.+)?$/ +// {a,b,...} +``` + +A comma separated list of options, like `{a,b}` or `{a,{b,c}}` or `{,a,}`. + +```js +/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/ +// {x..y[..incr]} +``` + +A numeric sequence from `x` to `y` inclusive, with optional increment. +If `x` or `y` start with a leading `0`, all the numbers will be padded +to have equal length. Negative numbers and backwards iteration work too. + +```js +/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/ +// {x..y[..incr]} +``` + +An alphabetic sequence from `x` to `y` inclusive, with optional increment. +`x` and `y` must be exactly one character, and if given, `incr` must be a +number. + +For compatibility reasons, the string `${` is not eligible for brace expansion. + +## Installation + +With [npm](https://npmjs.org) do: + +```bash +npm install brace-expansion +``` + +## Contributors + +- [Julian Gruber](https://github.com/juliangruber) +- [Isaac Z. Schlueter](https://github.com/isaacs) + +## Sponsors + +This module is proudly supported by my [Sponsors](https://github.com/juliangruber/sponsors)! + +Do you want to support modules like this to improve their quality, stability and weigh in on new features? Then please consider donating to my [Patreon](https://www.patreon.com/juliangruber). Not sure how much of my modules you're using? Try [feross/thanks](https://github.com/feross/thanks)! + +## Security contact information + +To report a security vulnerability, please use the +[Tidelift security contact](https://tidelift.com/security). +Tidelift will coordinate the fix and disclosure. + +## License + +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.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. diff --git a/node_modules/brace-expansion/index.js b/node_modules/brace-expansion/index.js new file mode 100644 index 0000000..a27f81c --- /dev/null +++ b/node_modules/brace-expansion/index.js @@ -0,0 +1,203 @@ +var balanced = require('balanced-match'); + +module.exports = expandTop; + +var escSlash = '\0SLASH'+Math.random()+'\0'; +var escOpen = '\0OPEN'+Math.random()+'\0'; +var escClose = '\0CLOSE'+Math.random()+'\0'; +var escComma = '\0COMMA'+Math.random()+'\0'; +var escPeriod = '\0PERIOD'+Math.random()+'\0'; + +function numeric(str) { + return parseInt(str, 10) == str + ? parseInt(str, 10) + : str.charCodeAt(0); +} + +function escapeBraces(str) { + return str.split('\\\\').join(escSlash) + .split('\\{').join(escOpen) + .split('\\}').join(escClose) + .split('\\,').join(escComma) + .split('\\.').join(escPeriod); +} + +function unescapeBraces(str) { + return str.split(escSlash).join('\\') + .split(escOpen).join('{') + .split(escClose).join('}') + .split(escComma).join(',') + .split(escPeriod).join('.'); +} + + +// Basically just str.split(","), but handling cases +// where we have nested braced sections, which should be +// treated as individual members, like {a,{b,c},d} +function parseCommaParts(str) { + if (!str) + return ['']; + + var parts = []; + var m = balanced('{', '}', str); + + if (!m) + return str.split(','); + + var pre = m.pre; + var body = m.body; + var post = m.post; + var p = pre.split(','); + + p[p.length-1] += '{' + body + '}'; + var postParts = parseCommaParts(post); + if (post.length) { + p[p.length-1] += postParts.shift(); + p.push.apply(p, postParts); + } + + parts.push.apply(parts, p); + + return parts; +} + +function expandTop(str) { + if (!str) + return []; + + // I don't know why Bash 4.3 does this, but it does. + // Anything starting with {} will have the first two bytes preserved + // but *only* at the top level, so {},a}b will not expand to anything, + // but a{},b}c will be expanded to [a}c,abc]. + // One could argue that this is a bug in Bash, but since the goal of + // this module is to match Bash's rules, we escape a leading {} + if (str.substr(0, 2) === '{}') { + str = '\\{\\}' + str.substr(2); + } + + return expand(escapeBraces(str), true).map(unescapeBraces); +} + +function embrace(str) { + return '{' + str + '}'; +} +function isPadded(el) { + return /^-?0\d/.test(el); +} + +function lte(i, y) { + return i <= y; +} +function gte(i, y) { + return i >= y; +} + +function expand(str, isTop) { + var expansions = []; + + var m = balanced('{', '}', str); + if (!m) return [str]; + + // no need to expand pre, since it is guaranteed to be free of brace-sets + var pre = m.pre; + var post = m.post.length + ? expand(m.post, false) + : ['']; + + if (/\$$/.test(m.pre)) { + for (var k = 0; k < post.length; k++) { + var expansion = pre+ '{' + m.body + '}' + post[k]; + expansions.push(expansion); + } + } else { + var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); + var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); + var isSequence = isNumericSequence || isAlphaSequence; + var isOptions = m.body.indexOf(',') >= 0; + if (!isSequence && !isOptions) { + // {a},b} + if (m.post.match(/,(?!,).*\}/)) { + str = m.pre + '{' + m.body + escClose + m.post; + return expand(str); + } + return [str]; + } + + var n; + if (isSequence) { + n = m.body.split(/\.\./); + } else { + n = parseCommaParts(m.body); + if (n.length === 1) { + // x{{a,b}}y ==> x{a}y x{b}y + n = expand(n[0], false).map(embrace); + if (n.length === 1) { + return post.map(function(p) { + return m.pre + n[0] + p; + }); + } + } + } + + // at this point, n is the parts, and we know it's not a comma set + // with a single entry. + var N; + + if (isSequence) { + var x = numeric(n[0]); + var y = numeric(n[1]); + var width = Math.max(n[0].length, n[1].length) + var incr = n.length == 3 + ? Math.abs(numeric(n[2])) + : 1; + var test = lte; + var reverse = y < x; + if (reverse) { + incr *= -1; + test = gte; + } + var pad = n.some(isPadded); + + N = []; + + for (var i = x; test(i, y); i += incr) { + var c; + if (isAlphaSequence) { + c = String.fromCharCode(i); + if (c === '\\') + c = ''; + } else { + c = String(i); + if (pad) { + var need = width - c.length; + if (need > 0) { + var z = new Array(need + 1).join('0'); + if (i < 0) + c = '-' + z + c.slice(1); + else + c = z + c; + } + } + } + N.push(c); + } + } else { + N = []; + + for (var j = 0; j < n.length; j++) { + N.push.apply(N, expand(n[j], false)); + } + } + + for (var j = 0; j < N.length; j++) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + N[j] + post[k]; + if (!isTop || isSequence || expansion) + expansions.push(expansion); + } + } + } + + return expansions; +} + diff --git a/node_modules/brace-expansion/package.json b/node_modules/brace-expansion/package.json new file mode 100644 index 0000000..c7eee34 --- /dev/null +++ b/node_modules/brace-expansion/package.json @@ -0,0 +1,49 @@ +{ + "name": "brace-expansion", + "description": "Brace expansion as known from sh/bash", + "version": "2.0.2", + "repository": { + "type": "git", + "url": "git://github.com/juliangruber/brace-expansion.git" + }, + "homepage": "https://github.com/juliangruber/brace-expansion", + "main": "index.js", + "scripts": { + "test": "tape test/*.js", + "gentest": "bash test/generate.sh", + "bench": "matcha test/perf/bench.js" + }, + "dependencies": { + "balanced-match": "^1.0.0" + }, + "devDependencies": { + "@c4312/matcha": "^1.3.1", + "tape": "^4.6.0" + }, + "keywords": [], + "author": { + "name": "Julian Gruber", + "email": "mail@juliangruber.com", + "url": "http://juliangruber.com" + }, + "license": "MIT", + "testling": { + "files": "test/*.js", + "browsers": [ + "ie/8..latest", + "firefox/20..latest", + "firefox/nightly", + "chrome/25..latest", + "chrome/canary", + "opera/12..latest", + "opera/next", + "safari/5.1..latest", + "ipad/6.0..latest", + "iphone/6.0..latest", + "android-browser/4.2..latest" + ] + }, + "publishConfig": { + "tag": "2.x" + } +} diff --git a/node_modules/braces/LICENSE b/node_modules/braces/LICENSE new file mode 100644 index 0000000..9af4a67 --- /dev/null +++ b/node_modules/braces/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-present, Jon Schlinkert. + +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. diff --git a/node_modules/braces/README.md b/node_modules/braces/README.md new file mode 100644 index 0000000..f59dd60 --- /dev/null +++ b/node_modules/braces/README.md @@ -0,0 +1,586 @@ +# braces [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=W8YFZ425KND68) [![NPM version](https://img.shields.io/npm/v/braces.svg?style=flat)](https://www.npmjs.com/package/braces) [![NPM monthly downloads](https://img.shields.io/npm/dm/braces.svg?style=flat)](https://npmjs.org/package/braces) [![NPM total downloads](https://img.shields.io/npm/dt/braces.svg?style=flat)](https://npmjs.org/package/braces) [![Linux Build Status](https://img.shields.io/travis/micromatch/braces.svg?style=flat&label=Travis)](https://travis-ci.org/micromatch/braces) + +> Bash-like brace expansion, implemented in JavaScript. Safer than other brace expansion libs, with complete support for the Bash 4.3 braces specification, without sacrificing speed. + +Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save braces +``` + +## v3.0.0 Released!! + +See the [changelog](CHANGELOG.md) for details. + +## Why use braces? + +Brace patterns make globs more powerful by adding the ability to match specific ranges and sequences of characters. + +- **Accurate** - complete support for the [Bash 4.3 Brace Expansion](www.gnu.org/software/bash/) specification (passes all of the Bash braces tests) +- **[fast and performant](#benchmarks)** - Starts fast, runs fast and [scales well](#performance) as patterns increase in complexity. +- **Organized code base** - The parser and compiler are easy to maintain and update when edge cases crop up. +- **Well-tested** - Thousands of test assertions, and passes all of the Bash, minimatch, and [brace-expansion](https://github.com/juliangruber/brace-expansion) unit tests (as of the date this was written). +- **Safer** - You shouldn't have to worry about users defining aggressive or malicious brace patterns that can break your application. Braces takes measures to prevent malicious regex that can be used for DDoS attacks (see [catastrophic backtracking](https://www.regular-expressions.info/catastrophic.html)). +- [Supports lists](#lists) - (aka "sets") `a/{b,c}/d` => `['a/b/d', 'a/c/d']` +- [Supports sequences](#sequences) - (aka "ranges") `{01..03}` => `['01', '02', '03']` +- [Supports steps](#steps) - (aka "increments") `{2..10..2}` => `['2', '4', '6', '8', '10']` +- [Supports escaping](#escaping) - To prevent evaluation of special characters. + +## Usage + +The main export is a function that takes one or more brace `patterns` and `options`. + +```js +const braces = require('braces'); +// braces(patterns[, options]); + +console.log(braces(['{01..05}', '{a..e}'])); +//=> ['(0[1-5])', '([a-e])'] + +console.log(braces(['{01..05}', '{a..e}'], { expand: true })); +//=> ['01', '02', '03', '04', '05', 'a', 'b', 'c', 'd', 'e'] +``` + +### Brace Expansion vs. Compilation + +By default, brace patterns are compiled into strings that are optimized for creating regular expressions and matching. + +**Compiled** + +```js +console.log(braces('a/{x,y,z}/b')); +//=> ['a/(x|y|z)/b'] +console.log(braces(['a/{01..20}/b', 'a/{1..5}/b'])); +//=> [ 'a/(0[1-9]|1[0-9]|20)/b', 'a/([1-5])/b' ] +``` + +**Expanded** + +Enable brace expansion by setting the `expand` option to true, or by using [braces.expand()](#expand) (returns an array similar to what you'd expect from Bash, or `echo {1..5}`, or [minimatch](https://github.com/isaacs/minimatch)): + +```js +console.log(braces('a/{x,y,z}/b', { expand: true })); +//=> ['a/x/b', 'a/y/b', 'a/z/b'] + +console.log(braces.expand('{01..10}')); +//=> ['01','02','03','04','05','06','07','08','09','10'] +``` + +### Lists + +Expand lists (like Bash "sets"): + +```js +console.log(braces('a/{foo,bar,baz}/*.js')); +//=> ['a/(foo|bar|baz)/*.js'] + +console.log(braces.expand('a/{foo,bar,baz}/*.js')); +//=> ['a/foo/*.js', 'a/bar/*.js', 'a/baz/*.js'] +``` + +### Sequences + +Expand ranges of characters (like Bash "sequences"): + +```js +console.log(braces.expand('{1..3}')); // ['1', '2', '3'] +console.log(braces.expand('a/{1..3}/b')); // ['a/1/b', 'a/2/b', 'a/3/b'] +console.log(braces('{a..c}', { expand: true })); // ['a', 'b', 'c'] +console.log(braces('foo/{a..c}', { expand: true })); // ['foo/a', 'foo/b', 'foo/c'] + +// supports zero-padded ranges +console.log(braces('a/{01..03}/b')); //=> ['a/(0[1-3])/b'] +console.log(braces('a/{001..300}/b')); //=> ['a/(0{2}[1-9]|0[1-9][0-9]|[12][0-9]{2}|300)/b'] +``` + +See [fill-range](https://github.com/jonschlinkert/fill-range) for all available range-expansion options. + +### Steppped ranges + +Steps, or increments, may be used with ranges: + +```js +console.log(braces.expand('{2..10..2}')); +//=> ['2', '4', '6', '8', '10'] + +console.log(braces('{2..10..2}')); +//=> ['(2|4|6|8|10)'] +``` + +When the [.optimize](#optimize) method is used, or [options.optimize](#optionsoptimize) is set to true, sequences are passed to [to-regex-range](https://github.com/jonschlinkert/to-regex-range) for expansion. + +### Nesting + +Brace patterns may be nested. The results of each expanded string are not sorted, and left to right order is preserved. + +**"Expanded" braces** + +```js +console.log(braces.expand('a{b,c,/{x,y}}/e')); +//=> ['ab/e', 'ac/e', 'a/x/e', 'a/y/e'] + +console.log(braces.expand('a/{x,{1..5},y}/c')); +//=> ['a/x/c', 'a/1/c', 'a/2/c', 'a/3/c', 'a/4/c', 'a/5/c', 'a/y/c'] +``` + +**"Optimized" braces** + +```js +console.log(braces('a{b,c,/{x,y}}/e')); +//=> ['a(b|c|/(x|y))/e'] + +console.log(braces('a/{x,{1..5},y}/c')); +//=> ['a/(x|([1-5])|y)/c'] +``` + +### Escaping + +**Escaping braces** + +A brace pattern will not be expanded or evaluted if _either the opening or closing brace is escaped_: + +```js +console.log(braces.expand('a\\{d,c,b}e')); +//=> ['a{d,c,b}e'] + +console.log(braces.expand('a{d,c,b\\}e')); +//=> ['a{d,c,b}e'] +``` + +**Escaping commas** + +Commas inside braces may also be escaped: + +```js +console.log(braces.expand('a{b\\,c}d')); +//=> ['a{b,c}d'] + +console.log(braces.expand('a{d\\,c,b}e')); +//=> ['ad,ce', 'abe'] +``` + +**Single items** + +Following bash conventions, a brace pattern is also not expanded when it contains a single character: + +```js +console.log(braces.expand('a{b}c')); +//=> ['a{b}c'] +``` + +## Options + +### options.maxLength + +**Type**: `Number` + +**Default**: `10,000` + +**Description**: Limit the length of the input string. Useful when the input string is generated or your application allows users to pass a string, et cetera. + +```js +console.log(braces('a/{b,c}/d', { maxLength: 3 })); //=> throws an error +``` + +### options.expand + +**Type**: `Boolean` + +**Default**: `undefined` + +**Description**: Generate an "expanded" brace pattern (alternatively you can use the `braces.expand()` method, which does the same thing). + +```js +console.log(braces('a/{b,c}/d', { expand: true })); +//=> [ 'a/b/d', 'a/c/d' ] +``` + +### options.nodupes + +**Type**: `Boolean` + +**Default**: `undefined` + +**Description**: Remove duplicates from the returned array. + +### options.rangeLimit + +**Type**: `Number` + +**Default**: `1000` + +**Description**: To prevent malicious patterns from being passed by users, an error is thrown when `braces.expand()` is used or `options.expand` is true and the generated range will exceed the `rangeLimit`. + +You can customize `options.rangeLimit` or set it to `Inifinity` to disable this altogether. + +**Examples** + +```js +// pattern exceeds the "rangeLimit", so it's optimized automatically +console.log(braces.expand('{1..1000}')); +//=> ['([1-9]|[1-9][0-9]{1,2}|1000)'] + +// pattern does not exceed "rangeLimit", so it's NOT optimized +console.log(braces.expand('{1..100}')); +//=> ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', '60', '61', '62', '63', '64', '65', '66', '67', '68', '69', '70', '71', '72', '73', '74', '75', '76', '77', '78', '79', '80', '81', '82', '83', '84', '85', '86', '87', '88', '89', '90', '91', '92', '93', '94', '95', '96', '97', '98', '99', '100'] +``` + +### options.transform + +**Type**: `Function` + +**Default**: `undefined` + +**Description**: Customize range expansion. + +**Example: Transforming non-numeric values** + +```js +const alpha = braces.expand('x/{a..e}/y', { + transform(value, index) { + // When non-numeric values are passed, "value" is a character code. + return 'foo/' + String.fromCharCode(value) + '-' + index; + }, +}); +console.log(alpha); +//=> [ 'x/foo/a-0/y', 'x/foo/b-1/y', 'x/foo/c-2/y', 'x/foo/d-3/y', 'x/foo/e-4/y' ] +``` + +**Example: Transforming numeric values** + +```js +const numeric = braces.expand('{1..5}', { + transform(value) { + // when numeric values are passed, "value" is a number + return 'foo/' + value * 2; + }, +}); +console.log(numeric); +//=> [ 'foo/2', 'foo/4', 'foo/6', 'foo/8', 'foo/10' ] +``` + +### options.quantifiers + +**Type**: `Boolean` + +**Default**: `undefined` + +**Description**: In regular expressions, quanitifiers can be used to specify how many times a token can be repeated. For example, `a{1,3}` will match the letter `a` one to three times. + +Unfortunately, regex quantifiers happen to share the same syntax as [Bash lists](#lists) + +The `quantifiers` option tells braces to detect when [regex quantifiers](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp#quantifiers) are defined in the given pattern, and not to try to expand them as lists. + +**Examples** + +```js +const braces = require('braces'); +console.log(braces('a/b{1,3}/{x,y,z}')); +//=> [ 'a/b(1|3)/(x|y|z)' ] +console.log(braces('a/b{1,3}/{x,y,z}', { quantifiers: true })); +//=> [ 'a/b{1,3}/(x|y|z)' ] +console.log(braces('a/b{1,3}/{x,y,z}', { quantifiers: true, expand: true })); +//=> [ 'a/b{1,3}/x', 'a/b{1,3}/y', 'a/b{1,3}/z' ] +``` + +### options.keepEscaping + +**Type**: `Boolean` + +**Default**: `undefined` + +**Description**: Do not strip backslashes that were used for escaping from the result. + +## What is "brace expansion"? + +Brace expansion is a type of parameter expansion that was made popular by unix shells for generating lists of strings, as well as regex-like matching when used alongside wildcards (globs). + +In addition to "expansion", braces are also used for matching. In other words: + +- [brace expansion](#brace-expansion) is for generating new lists +- [brace matching](#brace-matching) is for filtering existing lists + +
+More about brace expansion (click to expand) + +There are two main types of brace expansion: + +1. **lists**: which are defined using comma-separated values inside curly braces: `{a,b,c}` +2. **sequences**: which are defined using a starting value and an ending value, separated by two dots: `a{1..3}b`. Optionally, a third argument may be passed to define a "step" or increment to use: `a{1..100..10}b`. These are also sometimes referred to as "ranges". + +Here are some example brace patterns to illustrate how they work: + +**Sets** + +``` +{a,b,c} => a b c +{a,b,c}{1,2} => a1 a2 b1 b2 c1 c2 +``` + +**Sequences** + +``` +{1..9} => 1 2 3 4 5 6 7 8 9 +{4..-4} => 4 3 2 1 0 -1 -2 -3 -4 +{1..20..3} => 1 4 7 10 13 16 19 +{a..j} => a b c d e f g h i j +{j..a} => j i h g f e d c b a +{a..z..3} => a d g j m p s v y +``` + +**Combination** + +Sets and sequences can be mixed together or used along with any other strings. + +``` +{a,b,c}{1..3} => a1 a2 a3 b1 b2 b3 c1 c2 c3 +foo/{a,b,c}/bar => foo/a/bar foo/b/bar foo/c/bar +``` + +The fact that braces can be "expanded" from relatively simple patterns makes them ideal for quickly generating test fixtures, file paths, and similar use cases. + +## Brace matching + +In addition to _expansion_, brace patterns are also useful for performing regular-expression-like matching. + +For example, the pattern `foo/{1..3}/bar` would match any of following strings: + +``` +foo/1/bar +foo/2/bar +foo/3/bar +``` + +But not: + +``` +baz/1/qux +baz/2/qux +baz/3/qux +``` + +Braces can also be combined with [glob patterns](https://github.com/jonschlinkert/micromatch) to perform more advanced wildcard matching. For example, the pattern `*/{1..3}/*` would match any of following strings: + +``` +foo/1/bar +foo/2/bar +foo/3/bar +baz/1/qux +baz/2/qux +baz/3/qux +``` + +## Brace matching pitfalls + +Although brace patterns offer a user-friendly way of matching ranges or sets of strings, there are also some major disadvantages and potential risks you should be aware of. + +### tldr + +**"brace bombs"** + +- brace expansion can eat up a huge amount of processing resources +- as brace patterns increase _linearly in size_, the system resources required to expand the pattern increase exponentially +- users can accidentally (or intentially) exhaust your system's resources resulting in the equivalent of a DoS attack (bonus: no programming knowledge is required!) + +For a more detailed explanation with examples, see the [geometric complexity](#geometric-complexity) section. + +### The solution + +Jump to the [performance section](#performance) to see how Braces solves this problem in comparison to other libraries. + +### Geometric complexity + +At minimum, brace patterns with sets limited to two elements have quadradic or `O(n^2)` complexity. But the complexity of the algorithm increases exponentially as the number of sets, _and elements per set_, increases, which is `O(n^c)`. + +For example, the following sets demonstrate quadratic (`O(n^2)`) complexity: + +``` +{1,2}{3,4} => (2X2) => 13 14 23 24 +{1,2}{3,4}{5,6} => (2X2X2) => 135 136 145 146 235 236 245 246 +``` + +But add an element to a set, and we get a n-fold Cartesian product with `O(n^c)` complexity: + +``` +{1,2,3}{4,5,6}{7,8,9} => (3X3X3) => 147 148 149 157 158 159 167 168 169 247 248 + 249 257 258 259 267 268 269 347 348 349 357 + 358 359 367 368 369 +``` + +Now, imagine how this complexity grows given that each element is a n-tuple: + +``` +{1..100}{1..100} => (100X100) => 10,000 elements (38.4 kB) +{1..100}{1..100}{1..100} => (100X100X100) => 1,000,000 elements (5.76 MB) +``` + +Although these examples are clearly contrived, they demonstrate how brace patterns can quickly grow out of control. + +**More information** + +Interested in learning more about brace expansion? + +- [linuxjournal/bash-brace-expansion](http://www.linuxjournal.com/content/bash-brace-expansion) +- [rosettacode/Brace_expansion](https://rosettacode.org/wiki/Brace_expansion) +- [cartesian product](https://en.wikipedia.org/wiki/Cartesian_product) + +
+ +## Performance + +Braces is not only screaming fast, it's also more accurate the other brace expansion libraries. + +### Better algorithms + +Fortunately there is a solution to the ["brace bomb" problem](#brace-matching-pitfalls): _don't expand brace patterns into an array when they're used for matching_. + +Instead, convert the pattern into an optimized regular expression. This is easier said than done, and braces is the only library that does this currently. + +**The proof is in the numbers** + +Minimatch gets exponentially slower as patterns increase in complexity, braces does not. The following results were generated using `braces()` and `minimatch.braceExpand()`, respectively. + +| **Pattern** | **braces** | **[minimatch][]** | +| --------------------------- | ------------------- | ---------------------------- | +| `{1..9007199254740991}`[^1] | `298 B` (5ms 459μs) | N/A (freezes) | +| `{1..1000000000000000}` | `41 B` (1ms 15μs) | N/A (freezes) | +| `{1..100000000000000}` | `40 B` (890μs) | N/A (freezes) | +| `{1..10000000000000}` | `39 B` (2ms 49μs) | N/A (freezes) | +| `{1..1000000000000}` | `38 B` (608μs) | N/A (freezes) | +| `{1..100000000000}` | `37 B` (397μs) | N/A (freezes) | +| `{1..10000000000}` | `35 B` (983μs) | N/A (freezes) | +| `{1..1000000000}` | `34 B` (798μs) | N/A (freezes) | +| `{1..100000000}` | `33 B` (733μs) | N/A (freezes) | +| `{1..10000000}` | `32 B` (5ms 632μs) | `78.89 MB` (16s 388ms 569μs) | +| `{1..1000000}` | `31 B` (1ms 381μs) | `6.89 MB` (1s 496ms 887μs) | +| `{1..100000}` | `30 B` (950μs) | `588.89 kB` (146ms 921μs) | +| `{1..10000}` | `29 B` (1ms 114μs) | `48.89 kB` (14ms 187μs) | +| `{1..1000}` | `28 B` (760μs) | `3.89 kB` (1ms 453μs) | +| `{1..100}` | `22 B` (345μs) | `291 B` (196μs) | +| `{1..10}` | `10 B` (533μs) | `20 B` (37μs) | +| `{1..3}` | `7 B` (190μs) | `5 B` (27μs) | + +### Faster algorithms + +When you need expansion, braces is still much faster. + +_(the following results were generated using `braces.expand()` and `minimatch.braceExpand()`, respectively)_ + +| **Pattern** | **braces** | **[minimatch][]** | +| --------------- | --------------------------- | ---------------------------- | +| `{1..10000000}` | `78.89 MB` (2s 698ms 642μs) | `78.89 MB` (18s 601ms 974μs) | +| `{1..1000000}` | `6.89 MB` (458ms 576μs) | `6.89 MB` (1s 491ms 621μs) | +| `{1..100000}` | `588.89 kB` (20ms 728μs) | `588.89 kB` (156ms 919μs) | +| `{1..10000}` | `48.89 kB` (2ms 202μs) | `48.89 kB` (13ms 641μs) | +| `{1..1000}` | `3.89 kB` (1ms 796μs) | `3.89 kB` (1ms 958μs) | +| `{1..100}` | `291 B` (424μs) | `291 B` (211μs) | +| `{1..10}` | `20 B` (487μs) | `20 B` (72μs) | +| `{1..3}` | `5 B` (166μs) | `5 B` (27μs) | + +If you'd like to run these comparisons yourself, see [test/support/generate.js](test/support/generate.js). + +## Benchmarks + +### Running benchmarks + +Install dev dependencies: + +```bash +npm i -d && npm benchmark +``` + +### Latest results + +Braces is more accurate, without sacrificing performance. + +```bash +● expand - range (expanded) + braces x 53,167 ops/sec ±0.12% (102 runs sampled) + minimatch x 11,378 ops/sec ±0.10% (102 runs sampled) +● expand - range (optimized for regex) + braces x 373,442 ops/sec ±0.04% (100 runs sampled) + minimatch x 3,262 ops/sec ±0.18% (100 runs sampled) +● expand - nested ranges (expanded) + braces x 33,921 ops/sec ±0.09% (99 runs sampled) + minimatch x 10,855 ops/sec ±0.28% (100 runs sampled) +● expand - nested ranges (optimized for regex) + braces x 287,479 ops/sec ±0.52% (98 runs sampled) + minimatch x 3,219 ops/sec ±0.28% (101 runs sampled) +● expand - set (expanded) + braces x 238,243 ops/sec ±0.19% (97 runs sampled) + minimatch x 538,268 ops/sec ±0.31% (96 runs sampled) +● expand - set (optimized for regex) + braces x 321,844 ops/sec ±0.10% (97 runs sampled) + minimatch x 140,600 ops/sec ±0.15% (100 runs sampled) +● expand - nested sets (expanded) + braces x 165,371 ops/sec ±0.42% (96 runs sampled) + minimatch x 337,720 ops/sec ±0.28% (100 runs sampled) +● expand - nested sets (optimized for regex) + braces x 242,948 ops/sec ±0.12% (99 runs sampled) + minimatch x 87,403 ops/sec ±0.79% (96 runs sampled) +``` + +## About + +
+Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +
+ +
+Running Tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +
+ +
+Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +
+ +### Contributors + +| **Commits** | **Contributor** | +| ----------- | ------------------------------------------------------------- | +| 197 | [jonschlinkert](https://github.com/jonschlinkert) | +| 4 | [doowb](https://github.com/doowb) | +| 1 | [es128](https://github.com/es128) | +| 1 | [eush77](https://github.com/eush77) | +| 1 | [hemanth](https://github.com/hemanth) | +| 1 | [wtgtybhertgeghgtwtg](https://github.com/wtgtybhertgeghgtwtg) | + +### Author + +**Jon Schlinkert** + +- [GitHub Profile](https://github.com/jonschlinkert) +- [Twitter Profile](https://twitter.com/jonschlinkert) +- [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) + +### License + +Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +--- + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on April 08, 2019._ diff --git a/node_modules/braces/index.js b/node_modules/braces/index.js new file mode 100644 index 0000000..d222c13 --- /dev/null +++ b/node_modules/braces/index.js @@ -0,0 +1,170 @@ +'use strict'; + +const stringify = require('./lib/stringify'); +const compile = require('./lib/compile'); +const expand = require('./lib/expand'); +const parse = require('./lib/parse'); + +/** + * Expand the given pattern or create a regex-compatible string. + * + * ```js + * const braces = require('braces'); + * console.log(braces('{a,b,c}', { compile: true })); //=> ['(a|b|c)'] + * console.log(braces('{a,b,c}')); //=> ['a', 'b', 'c'] + * ``` + * @param {String} `str` + * @param {Object} `options` + * @return {String} + * @api public + */ + +const braces = (input, options = {}) => { + let output = []; + + if (Array.isArray(input)) { + for (const pattern of input) { + const result = braces.create(pattern, options); + if (Array.isArray(result)) { + output.push(...result); + } else { + output.push(result); + } + } + } else { + output = [].concat(braces.create(input, options)); + } + + if (options && options.expand === true && options.nodupes === true) { + output = [...new Set(output)]; + } + return output; +}; + +/** + * Parse the given `str` with the given `options`. + * + * ```js + * // braces.parse(pattern, [, options]); + * const ast = braces.parse('a/{b,c}/d'); + * console.log(ast); + * ``` + * @param {String} pattern Brace pattern to parse + * @param {Object} options + * @return {Object} Returns an AST + * @api public + */ + +braces.parse = (input, options = {}) => parse(input, options); + +/** + * Creates a braces string from an AST, or an AST node. + * + * ```js + * const braces = require('braces'); + * let ast = braces.parse('foo/{a,b}/bar'); + * console.log(stringify(ast.nodes[2])); //=> '{a,b}' + * ``` + * @param {String} `input` Brace pattern or AST. + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ + +braces.stringify = (input, options = {}) => { + if (typeof input === 'string') { + return stringify(braces.parse(input, options), options); + } + return stringify(input, options); +}; + +/** + * Compiles a brace pattern into a regex-compatible, optimized string. + * This method is called by the main [braces](#braces) function by default. + * + * ```js + * const braces = require('braces'); + * console.log(braces.compile('a/{b,c}/d')); + * //=> ['a/(b|c)/d'] + * ``` + * @param {String} `input` Brace pattern or AST. + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ + +braces.compile = (input, options = {}) => { + if (typeof input === 'string') { + input = braces.parse(input, options); + } + return compile(input, options); +}; + +/** + * Expands a brace pattern into an array. This method is called by the + * main [braces](#braces) function when `options.expand` is true. Before + * using this method it's recommended that you read the [performance notes](#performance)) + * and advantages of using [.compile](#compile) instead. + * + * ```js + * const braces = require('braces'); + * console.log(braces.expand('a/{b,c}/d')); + * //=> ['a/b/d', 'a/c/d']; + * ``` + * @param {String} `pattern` Brace pattern + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ + +braces.expand = (input, options = {}) => { + if (typeof input === 'string') { + input = braces.parse(input, options); + } + + let result = expand(input, options); + + // filter out empty strings if specified + if (options.noempty === true) { + result = result.filter(Boolean); + } + + // filter out duplicates if specified + if (options.nodupes === true) { + result = [...new Set(result)]; + } + + return result; +}; + +/** + * Processes a brace pattern and returns either an expanded array + * (if `options.expand` is true), a highly optimized regex-compatible string. + * This method is called by the main [braces](#braces) function. + * + * ```js + * const braces = require('braces'); + * console.log(braces.create('user-{200..300}/project-{a,b,c}-{1..10}')) + * //=> 'user-(20[0-9]|2[1-9][0-9]|300)/project-(a|b|c)-([1-9]|10)' + * ``` + * @param {String} `pattern` Brace pattern + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ + +braces.create = (input, options = {}) => { + if (input === '' || input.length < 3) { + return [input]; + } + + return options.expand !== true + ? braces.compile(input, options) + : braces.expand(input, options); +}; + +/** + * Expose "braces" + */ + +module.exports = braces; diff --git a/node_modules/braces/lib/compile.js b/node_modules/braces/lib/compile.js new file mode 100644 index 0000000..dce69be --- /dev/null +++ b/node_modules/braces/lib/compile.js @@ -0,0 +1,60 @@ +'use strict'; + +const fill = require('fill-range'); +const utils = require('./utils'); + +const compile = (ast, options = {}) => { + const walk = (node, parent = {}) => { + const invalidBlock = utils.isInvalidBrace(parent); + const invalidNode = node.invalid === true && options.escapeInvalid === true; + const invalid = invalidBlock === true || invalidNode === true; + const prefix = options.escapeInvalid === true ? '\\' : ''; + let output = ''; + + if (node.isOpen === true) { + return prefix + node.value; + } + + if (node.isClose === true) { + console.log('node.isClose', prefix, node.value); + return prefix + node.value; + } + + if (node.type === 'open') { + return invalid ? prefix + node.value : '('; + } + + if (node.type === 'close') { + return invalid ? prefix + node.value : ')'; + } + + if (node.type === 'comma') { + return node.prev.type === 'comma' ? '' : invalid ? node.value : '|'; + } + + if (node.value) { + return node.value; + } + + if (node.nodes && node.ranges > 0) { + const args = utils.reduce(node.nodes); + const range = fill(...args, { ...options, wrap: false, toRegex: true, strictZeros: true }); + + if (range.length !== 0) { + return args.length > 1 && range.length > 1 ? `(${range})` : range; + } + } + + if (node.nodes) { + for (const child of node.nodes) { + output += walk(child, node); + } + } + + return output; + }; + + return walk(ast); +}; + +module.exports = compile; diff --git a/node_modules/braces/lib/constants.js b/node_modules/braces/lib/constants.js new file mode 100644 index 0000000..2bb3b88 --- /dev/null +++ b/node_modules/braces/lib/constants.js @@ -0,0 +1,57 @@ +'use strict'; + +module.exports = { + MAX_LENGTH: 10000, + + // Digits + CHAR_0: '0', /* 0 */ + CHAR_9: '9', /* 9 */ + + // Alphabet chars. + CHAR_UPPERCASE_A: 'A', /* A */ + CHAR_LOWERCASE_A: 'a', /* a */ + CHAR_UPPERCASE_Z: 'Z', /* Z */ + CHAR_LOWERCASE_Z: 'z', /* z */ + + CHAR_LEFT_PARENTHESES: '(', /* ( */ + CHAR_RIGHT_PARENTHESES: ')', /* ) */ + + CHAR_ASTERISK: '*', /* * */ + + // Non-alphabetic chars. + CHAR_AMPERSAND: '&', /* & */ + CHAR_AT: '@', /* @ */ + CHAR_BACKSLASH: '\\', /* \ */ + CHAR_BACKTICK: '`', /* ` */ + CHAR_CARRIAGE_RETURN: '\r', /* \r */ + CHAR_CIRCUMFLEX_ACCENT: '^', /* ^ */ + CHAR_COLON: ':', /* : */ + CHAR_COMMA: ',', /* , */ + CHAR_DOLLAR: '$', /* . */ + CHAR_DOT: '.', /* . */ + CHAR_DOUBLE_QUOTE: '"', /* " */ + CHAR_EQUAL: '=', /* = */ + CHAR_EXCLAMATION_MARK: '!', /* ! */ + CHAR_FORM_FEED: '\f', /* \f */ + CHAR_FORWARD_SLASH: '/', /* / */ + CHAR_HASH: '#', /* # */ + CHAR_HYPHEN_MINUS: '-', /* - */ + CHAR_LEFT_ANGLE_BRACKET: '<', /* < */ + CHAR_LEFT_CURLY_BRACE: '{', /* { */ + CHAR_LEFT_SQUARE_BRACKET: '[', /* [ */ + CHAR_LINE_FEED: '\n', /* \n */ + CHAR_NO_BREAK_SPACE: '\u00A0', /* \u00A0 */ + 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: '\t', /* \t */ + CHAR_UNDERSCORE: '_', /* _ */ + CHAR_VERTICAL_LINE: '|', /* | */ + CHAR_ZERO_WIDTH_NOBREAK_SPACE: '\uFEFF' /* \uFEFF */ +}; diff --git a/node_modules/braces/lib/expand.js b/node_modules/braces/lib/expand.js new file mode 100644 index 0000000..35b2c41 --- /dev/null +++ b/node_modules/braces/lib/expand.js @@ -0,0 +1,113 @@ +'use strict'; + +const fill = require('fill-range'); +const stringify = require('./stringify'); +const utils = require('./utils'); + +const append = (queue = '', stash = '', enclose = false) => { + const result = []; + + queue = [].concat(queue); + stash = [].concat(stash); + + if (!stash.length) return queue; + if (!queue.length) { + return enclose ? utils.flatten(stash).map(ele => `{${ele}}`) : stash; + } + + for (const item of queue) { + if (Array.isArray(item)) { + for (const value of item) { + result.push(append(value, stash, enclose)); + } + } else { + for (let ele of stash) { + if (enclose === true && typeof ele === 'string') ele = `{${ele}}`; + result.push(Array.isArray(ele) ? append(item, ele, enclose) : item + ele); + } + } + } + return utils.flatten(result); +}; + +const expand = (ast, options = {}) => { + const rangeLimit = options.rangeLimit === undefined ? 1000 : options.rangeLimit; + + const walk = (node, parent = {}) => { + node.queue = []; + + let p = parent; + let q = parent.queue; + + while (p.type !== 'brace' && p.type !== 'root' && p.parent) { + p = p.parent; + q = p.queue; + } + + if (node.invalid || node.dollar) { + q.push(append(q.pop(), stringify(node, options))); + return; + } + + if (node.type === 'brace' && node.invalid !== true && node.nodes.length === 2) { + q.push(append(q.pop(), ['{}'])); + return; + } + + if (node.nodes && node.ranges > 0) { + const args = utils.reduce(node.nodes); + + if (utils.exceedsLimit(...args, options.step, rangeLimit)) { + throw new RangeError('expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.'); + } + + let range = fill(...args, options); + if (range.length === 0) { + range = stringify(node, options); + } + + q.push(append(q.pop(), range)); + node.nodes = []; + return; + } + + const enclose = utils.encloseBrace(node); + let queue = node.queue; + let block = node; + + while (block.type !== 'brace' && block.type !== 'root' && block.parent) { + block = block.parent; + queue = block.queue; + } + + for (let i = 0; i < node.nodes.length; i++) { + const child = node.nodes[i]; + + if (child.type === 'comma' && node.type === 'brace') { + if (i === 1) queue.push(''); + queue.push(''); + continue; + } + + if (child.type === 'close') { + q.push(append(q.pop(), queue, enclose)); + continue; + } + + if (child.value && child.type !== 'open') { + queue.push(append(queue.pop(), child.value)); + continue; + } + + if (child.nodes) { + walk(child, node); + } + } + + return queue; + }; + + return utils.flatten(walk(ast)); +}; + +module.exports = expand; diff --git a/node_modules/braces/lib/parse.js b/node_modules/braces/lib/parse.js new file mode 100644 index 0000000..3a6988e --- /dev/null +++ b/node_modules/braces/lib/parse.js @@ -0,0 +1,331 @@ +'use strict'; + +const stringify = require('./stringify'); + +/** + * Constants + */ + +const { + MAX_LENGTH, + CHAR_BACKSLASH, /* \ */ + CHAR_BACKTICK, /* ` */ + CHAR_COMMA, /* , */ + CHAR_DOT, /* . */ + CHAR_LEFT_PARENTHESES, /* ( */ + CHAR_RIGHT_PARENTHESES, /* ) */ + CHAR_LEFT_CURLY_BRACE, /* { */ + CHAR_RIGHT_CURLY_BRACE, /* } */ + CHAR_LEFT_SQUARE_BRACKET, /* [ */ + CHAR_RIGHT_SQUARE_BRACKET, /* ] */ + CHAR_DOUBLE_QUOTE, /* " */ + CHAR_SINGLE_QUOTE, /* ' */ + CHAR_NO_BREAK_SPACE, + CHAR_ZERO_WIDTH_NOBREAK_SPACE +} = require('./constants'); + +/** + * parse + */ + +const parse = (input, options = {}) => { + if (typeof input !== 'string') { + throw new TypeError('Expected a string'); + } + + const opts = options || {}; + const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + if (input.length > max) { + throw new SyntaxError(`Input length (${input.length}), exceeds max characters (${max})`); + } + + const ast = { type: 'root', input, nodes: [] }; + const stack = [ast]; + let block = ast; + let prev = ast; + let brackets = 0; + const length = input.length; + let index = 0; + let depth = 0; + let value; + + /** + * Helpers + */ + + const advance = () => input[index++]; + const push = node => { + if (node.type === 'text' && prev.type === 'dot') { + prev.type = 'text'; + } + + if (prev && prev.type === 'text' && node.type === 'text') { + prev.value += node.value; + return; + } + + block.nodes.push(node); + node.parent = block; + node.prev = prev; + prev = node; + return node; + }; + + push({ type: 'bos' }); + + while (index < length) { + block = stack[stack.length - 1]; + value = advance(); + + /** + * Invalid chars + */ + + if (value === CHAR_ZERO_WIDTH_NOBREAK_SPACE || value === CHAR_NO_BREAK_SPACE) { + continue; + } + + /** + * Escaped chars + */ + + if (value === CHAR_BACKSLASH) { + push({ type: 'text', value: (options.keepEscaping ? value : '') + advance() }); + continue; + } + + /** + * Right square bracket (literal): ']' + */ + + if (value === CHAR_RIGHT_SQUARE_BRACKET) { + push({ type: 'text', value: '\\' + value }); + continue; + } + + /** + * Left square bracket: '[' + */ + + if (value === CHAR_LEFT_SQUARE_BRACKET) { + brackets++; + + let next; + + while (index < length && (next = advance())) { + value += next; + + if (next === CHAR_LEFT_SQUARE_BRACKET) { + brackets++; + continue; + } + + if (next === CHAR_BACKSLASH) { + value += advance(); + continue; + } + + if (next === CHAR_RIGHT_SQUARE_BRACKET) { + brackets--; + + if (brackets === 0) { + break; + } + } + } + + push({ type: 'text', value }); + continue; + } + + /** + * Parentheses + */ + + if (value === CHAR_LEFT_PARENTHESES) { + block = push({ type: 'paren', nodes: [] }); + stack.push(block); + push({ type: 'text', value }); + continue; + } + + if (value === CHAR_RIGHT_PARENTHESES) { + if (block.type !== 'paren') { + push({ type: 'text', value }); + continue; + } + block = stack.pop(); + push({ type: 'text', value }); + block = stack[stack.length - 1]; + continue; + } + + /** + * Quotes: '|"|` + */ + + if (value === CHAR_DOUBLE_QUOTE || value === CHAR_SINGLE_QUOTE || value === CHAR_BACKTICK) { + const open = value; + let next; + + if (options.keepQuotes !== true) { + value = ''; + } + + while (index < length && (next = advance())) { + if (next === CHAR_BACKSLASH) { + value += next + advance(); + continue; + } + + if (next === open) { + if (options.keepQuotes === true) value += next; + break; + } + + value += next; + } + + push({ type: 'text', value }); + continue; + } + + /** + * Left curly brace: '{' + */ + + if (value === CHAR_LEFT_CURLY_BRACE) { + depth++; + + const dollar = prev.value && prev.value.slice(-1) === '$' || block.dollar === true; + const brace = { + type: 'brace', + open: true, + close: false, + dollar, + depth, + commas: 0, + ranges: 0, + nodes: [] + }; + + block = push(brace); + stack.push(block); + push({ type: 'open', value }); + continue; + } + + /** + * Right curly brace: '}' + */ + + if (value === CHAR_RIGHT_CURLY_BRACE) { + if (block.type !== 'brace') { + push({ type: 'text', value }); + continue; + } + + const type = 'close'; + block = stack.pop(); + block.close = true; + + push({ type, value }); + depth--; + + block = stack[stack.length - 1]; + continue; + } + + /** + * Comma: ',' + */ + + if (value === CHAR_COMMA && depth > 0) { + if (block.ranges > 0) { + block.ranges = 0; + const open = block.nodes.shift(); + block.nodes = [open, { type: 'text', value: stringify(block) }]; + } + + push({ type: 'comma', value }); + block.commas++; + continue; + } + + /** + * Dot: '.' + */ + + if (value === CHAR_DOT && depth > 0 && block.commas === 0) { + const siblings = block.nodes; + + if (depth === 0 || siblings.length === 0) { + push({ type: 'text', value }); + continue; + } + + if (prev.type === 'dot') { + block.range = []; + prev.value += value; + prev.type = 'range'; + + if (block.nodes.length !== 3 && block.nodes.length !== 5) { + block.invalid = true; + block.ranges = 0; + prev.type = 'text'; + continue; + } + + block.ranges++; + block.args = []; + continue; + } + + if (prev.type === 'range') { + siblings.pop(); + + const before = siblings[siblings.length - 1]; + before.value += prev.value + value; + prev = before; + block.ranges--; + continue; + } + + push({ type: 'dot', value }); + continue; + } + + /** + * Text + */ + + push({ type: 'text', value }); + } + + // Mark imbalanced braces and brackets as invalid + do { + block = stack.pop(); + + if (block.type !== 'root') { + block.nodes.forEach(node => { + if (!node.nodes) { + if (node.type === 'open') node.isOpen = true; + if (node.type === 'close') node.isClose = true; + if (!node.nodes) node.type = 'text'; + node.invalid = true; + } + }); + + // get the location of the block on parent.nodes (block's siblings) + const parent = stack[stack.length - 1]; + const index = parent.nodes.indexOf(block); + // replace the (invalid) block with it's nodes + parent.nodes.splice(index, 1, ...block.nodes); + } + } while (stack.length > 0); + + push({ type: 'eos' }); + return ast; +}; + +module.exports = parse; diff --git a/node_modules/braces/lib/stringify.js b/node_modules/braces/lib/stringify.js new file mode 100644 index 0000000..8bcf872 --- /dev/null +++ b/node_modules/braces/lib/stringify.js @@ -0,0 +1,32 @@ +'use strict'; + +const utils = require('./utils'); + +module.exports = (ast, options = {}) => { + const stringify = (node, parent = {}) => { + const invalidBlock = options.escapeInvalid && utils.isInvalidBrace(parent); + const invalidNode = node.invalid === true && options.escapeInvalid === true; + let output = ''; + + if (node.value) { + if ((invalidBlock || invalidNode) && utils.isOpenOrClose(node)) { + return '\\' + node.value; + } + return node.value; + } + + if (node.value) { + return node.value; + } + + if (node.nodes) { + for (const child of node.nodes) { + output += stringify(child); + } + } + return output; + }; + + return stringify(ast); +}; + diff --git a/node_modules/braces/lib/utils.js b/node_modules/braces/lib/utils.js new file mode 100644 index 0000000..d19311f --- /dev/null +++ b/node_modules/braces/lib/utils.js @@ -0,0 +1,122 @@ +'use strict'; + +exports.isInteger = num => { + if (typeof num === 'number') { + return Number.isInteger(num); + } + if (typeof num === 'string' && num.trim() !== '') { + return Number.isInteger(Number(num)); + } + return false; +}; + +/** + * Find a node of the given type + */ + +exports.find = (node, type) => node.nodes.find(node => node.type === type); + +/** + * Find a node of the given type + */ + +exports.exceedsLimit = (min, max, step = 1, limit) => { + if (limit === false) return false; + if (!exports.isInteger(min) || !exports.isInteger(max)) return false; + return ((Number(max) - Number(min)) / Number(step)) >= limit; +}; + +/** + * Escape the given node with '\\' before node.value + */ + +exports.escapeNode = (block, n = 0, type) => { + const node = block.nodes[n]; + if (!node) return; + + if ((type && node.type === type) || node.type === 'open' || node.type === 'close') { + if (node.escaped !== true) { + node.value = '\\' + node.value; + node.escaped = true; + } + } +}; + +/** + * Returns true if the given brace node should be enclosed in literal braces + */ + +exports.encloseBrace = node => { + if (node.type !== 'brace') return false; + if ((node.commas >> 0 + node.ranges >> 0) === 0) { + node.invalid = true; + return true; + } + return false; +}; + +/** + * Returns true if a brace node is invalid. + */ + +exports.isInvalidBrace = block => { + if (block.type !== 'brace') return false; + if (block.invalid === true || block.dollar) return true; + if ((block.commas >> 0 + block.ranges >> 0) === 0) { + block.invalid = true; + return true; + } + if (block.open !== true || block.close !== true) { + block.invalid = true; + return true; + } + return false; +}; + +/** + * Returns true if a node is an open or close node + */ + +exports.isOpenOrClose = node => { + if (node.type === 'open' || node.type === 'close') { + return true; + } + return node.open === true || node.close === true; +}; + +/** + * Reduce an array of text nodes. + */ + +exports.reduce = nodes => nodes.reduce((acc, node) => { + if (node.type === 'text') acc.push(node.value); + if (node.type === 'range') node.type = 'text'; + return acc; +}, []); + +/** + * Flatten an array + */ + +exports.flatten = (...args) => { + const result = []; + + const flat = arr => { + for (let i = 0; i < arr.length; i++) { + const ele = arr[i]; + + if (Array.isArray(ele)) { + flat(ele); + continue; + } + + if (ele !== undefined) { + result.push(ele); + } + } + return result; + }; + + flat(args); + return result; +}; diff --git a/node_modules/braces/package.json b/node_modules/braces/package.json new file mode 100644 index 0000000..c3c056e --- /dev/null +++ b/node_modules/braces/package.json @@ -0,0 +1,77 @@ +{ + "name": "braces", + "description": "Bash-like brace expansion, implemented in JavaScript. Safer than other brace expansion libs, with complete support for the Bash 4.3 braces specification, without sacrificing speed.", + "version": "3.0.3", + "homepage": "https://github.com/micromatch/braces", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "contributors": [ + "Brian Woodward (https://twitter.com/doowb)", + "Elan Shanker (https://github.com/es128)", + "Eugene Sharygin (https://github.com/eush77)", + "hemanth.hm (http://h3manth.com)", + "Jon Schlinkert (http://twitter.com/jonschlinkert)" + ], + "repository": "micromatch/braces", + "bugs": { + "url": "https://github.com/micromatch/braces/issues" + }, + "license": "MIT", + "files": [ + "index.js", + "lib" + ], + "main": "index.js", + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "mocha", + "benchmark": "node benchmark" + }, + "dependencies": { + "fill-range": "^7.1.1" + }, + "devDependencies": { + "ansi-colors": "^3.2.4", + "bash-path": "^2.0.1", + "gulp-format-md": "^2.0.0", + "mocha": "^6.1.1" + }, + "keywords": [ + "alpha", + "alphabetical", + "bash", + "brace", + "braces", + "expand", + "expansion", + "filepath", + "fill", + "fs", + "glob", + "globbing", + "letter", + "match", + "matches", + "matching", + "number", + "numerical", + "path", + "range", + "ranges", + "sh" + ], + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "lint": { + "reflinks": true + }, + "plugins": [ + "gulp-format-md" + ] + } +} diff --git a/node_modules/chokidar/LICENSE b/node_modules/chokidar/LICENSE new file mode 100644 index 0000000..fa9162b --- /dev/null +++ b/node_modules/chokidar/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2012-2019 Paul Miller (https://paulmillr.com), Elan Shanker + +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. diff --git a/node_modules/chokidar/README.md b/node_modules/chokidar/README.md new file mode 100644 index 0000000..8e25dec --- /dev/null +++ b/node_modules/chokidar/README.md @@ -0,0 +1,308 @@ +# Chokidar [![Weekly downloads](https://img.shields.io/npm/dw/chokidar.svg)](https://github.com/paulmillr/chokidar) [![Yearly downloads](https://img.shields.io/npm/dy/chokidar.svg)](https://github.com/paulmillr/chokidar) + +> Minimal and efficient cross-platform file watching library + +[![NPM](https://nodei.co/npm/chokidar.png)](https://www.npmjs.com/package/chokidar) + +## Why? + +Node.js `fs.watch`: + +* Doesn't report filenames on MacOS. +* Doesn't report events at all when using editors like Sublime on MacOS. +* Often reports events twice. +* Emits most changes as `rename`. +* Does not provide an easy way to recursively watch file trees. +* Does not support recursive watching on Linux. + +Node.js `fs.watchFile`: + +* Almost as bad at event handling. +* Also does not provide any recursive watching. +* Results in high CPU utilization. + +Chokidar resolves these problems. + +Initially made for **[Brunch](https://brunch.io/)** (an ultra-swift web app build tool), it is now used in +[Microsoft's Visual Studio Code](https://github.com/microsoft/vscode), +[gulp](https://github.com/gulpjs/gulp/), +[karma](https://karma-runner.github.io/), +[PM2](https://github.com/Unitech/PM2), +[browserify](http://browserify.org/), +[webpack](https://webpack.github.io/), +[BrowserSync](https://www.browsersync.io/), +and [many others](https://www.npmjs.com/browse/depended/chokidar). +It has proven itself in production environments. + +Version 3 is out! Check out our blog post about it: [Chokidar 3: How to save 32TB of traffic every week](https://paulmillr.com/posts/chokidar-3-save-32tb-of-traffic/) + +## How? + +Chokidar does still rely on the Node.js core `fs` module, but when using +`fs.watch` and `fs.watchFile` for watching, it normalizes the events it +receives, often checking for truth by getting file stats and/or dir contents. + +On MacOS, chokidar by default uses a native extension exposing the Darwin +`FSEvents` API. This provides very efficient recursive watching compared with +implementations like `kqueue` available on most \*nix platforms. Chokidar still +does have to do some work to normalize the events received that way as well. + +On most other platforms, the `fs.watch`-based implementation is the default, which +avoids polling and keeps CPU usage down. Be advised that chokidar will initiate +watchers recursively for everything within scope of the paths that have been +specified, so be judicious about not wasting system resources by watching much +more than needed. + +## Getting started + +Install with npm: + +```sh +npm install chokidar +``` + +Then `require` and use it in your code: + +```javascript +const chokidar = require('chokidar'); + +// One-liner for current directory +chokidar.watch('.').on('all', (event, path) => { + console.log(event, path); +}); +``` + +## API + +```javascript +// Example of a more typical implementation structure + +// Initialize watcher. +const watcher = chokidar.watch('file, dir, glob, or array', { + ignored: /(^|[\/\\])\../, // ignore dotfiles + persistent: true +}); + +// Something to use when events are received. +const log = console.log.bind(console); +// Add event listeners. +watcher + .on('add', path => log(`File ${path} has been added`)) + .on('change', path => log(`File ${path} has been changed`)) + .on('unlink', path => log(`File ${path} has been removed`)); + +// More possible events. +watcher + .on('addDir', path => log(`Directory ${path} has been added`)) + .on('unlinkDir', path => log(`Directory ${path} has been removed`)) + .on('error', error => log(`Watcher error: ${error}`)) + .on('ready', () => log('Initial scan complete. Ready for changes')) + .on('raw', (event, path, details) => { // internal + log('Raw event info:', event, path, details); + }); + +// 'add', 'addDir' and 'change' events also receive stat() results as second +// argument when available: https://nodejs.org/api/fs.html#fs_class_fs_stats +watcher.on('change', (path, stats) => { + if (stats) console.log(`File ${path} changed size to ${stats.size}`); +}); + +// Watch new files. +watcher.add('new-file'); +watcher.add(['new-file-2', 'new-file-3', '**/other-file*']); + +// Get list of actual paths being watched on the filesystem +var watchedPaths = watcher.getWatched(); + +// Un-watch some files. +await watcher.unwatch('new-file*'); + +// Stop watching. +// The method is async! +watcher.close().then(() => console.log('closed')); + +// Full list of options. See below for descriptions. +// Do not use this example! +chokidar.watch('file', { + persistent: true, + + ignored: '*.txt', + ignoreInitial: false, + followSymlinks: true, + cwd: '.', + disableGlobbing: false, + + usePolling: false, + interval: 100, + binaryInterval: 300, + alwaysStat: false, + depth: 99, + awaitWriteFinish: { + stabilityThreshold: 2000, + pollInterval: 100 + }, + + ignorePermissionErrors: false, + atomic: true // or a custom 'atomicity delay', in milliseconds (default 100) +}); + +``` + +`chokidar.watch(paths, [options])` + +* `paths` (string or array of strings). Paths to files, dirs to be watched +recursively, or glob patterns. + - Note: globs must not contain windows separators (`\`), + because that's how they work by the standard — + you'll need to replace them with forward slashes (`/`). + - Note 2: for additional glob documentation, check out low-level + library: [picomatch](https://github.com/micromatch/picomatch). +* `options` (object) Options object as defined below: + +#### Persistence + +* `persistent` (default: `true`). Indicates whether the process +should continue to run as long as files are being watched. If set to +`false` when using `fsevents` to watch, no more events will be emitted +after `ready`, even if the process continues to run. + +#### Path filtering + +* `ignored` ([anymatch](https://github.com/es128/anymatch)-compatible definition) +Defines files/paths to be ignored. The whole relative or absolute path is +tested, not just filename. If a function with two arguments is provided, it +gets called twice per path - once with a single argument (the path), second +time with two arguments (the path and the +[`fs.Stats`](https://nodejs.org/api/fs.html#fs_class_fs_stats) +object of that path). +* `ignoreInitial` (default: `false`). If set to `false` then `add`/`addDir` events are also emitted for matching paths while +instantiating the watching as chokidar discovers these file paths (before the `ready` event). +* `followSymlinks` (default: `true`). When `false`, only the +symlinks themselves will be watched for changes instead of following +the link references and bubbling events through the link's path. +* `cwd` (no default). The base directory from which watch `paths` are to be +derived. Paths emitted with events will be relative to this. +* `disableGlobbing` (default: `false`). If set to `true` then the strings passed to `.watch()` and `.add()` are treated as +literal path names, even if they look like globs. + +#### Performance + +* `usePolling` (default: `false`). +Whether to use fs.watchFile (backed by polling), or fs.watch. If polling +leads to high CPU utilization, consider setting this to `false`. It is +typically necessary to **set this to `true` to successfully watch files over +a network**, and it may be necessary to successfully watch files in other +non-standard situations. Setting to `true` explicitly on MacOS overrides the +`useFsEvents` default. You may also set the CHOKIDAR_USEPOLLING env variable +to true (1) or false (0) in order to override this option. +* _Polling-specific settings_ (effective when `usePolling: true`) + * `interval` (default: `100`). Interval of file system polling, in milliseconds. You may also + set the CHOKIDAR_INTERVAL env variable to override this option. + * `binaryInterval` (default: `300`). Interval of file system + polling for binary files. + ([see list of binary extensions](https://github.com/sindresorhus/binary-extensions/blob/master/binary-extensions.json)) +* `useFsEvents` (default: `true` on MacOS). Whether to use the +`fsevents` watching interface if available. When set to `true` explicitly +and `fsevents` is available this supercedes the `usePolling` setting. When +set to `false` on MacOS, `usePolling: true` becomes the default. +* `alwaysStat` (default: `false`). If relying upon the +[`fs.Stats`](https://nodejs.org/api/fs.html#fs_class_fs_stats) +object that may get passed with `add`, `addDir`, and `change` events, set +this to `true` to ensure it is provided even in cases where it wasn't +already available from the underlying watch events. +* `depth` (default: `undefined`). If set, limits how many levels of +subdirectories will be traversed. +* `awaitWriteFinish` (default: `false`). +By default, the `add` event will fire when a file first appears on disk, before +the entire file has been written. Furthermore, in some cases some `change` +events will be emitted while the file is being written. In some cases, +especially when watching for large files there will be a need to wait for the +write operation to finish before responding to a file creation or modification. +Setting `awaitWriteFinish` to `true` (or a truthy value) will poll file size, +holding its `add` and `change` events until the size does not change for a +configurable amount of time. The appropriate duration setting is heavily +dependent on the OS and hardware. For accurate detection this parameter should +be relatively high, making file watching much less responsive. +Use with caution. + * *`options.awaitWriteFinish` can be set to an object in order to adjust + timing params:* + * `awaitWriteFinish.stabilityThreshold` (default: 2000). Amount of time in + milliseconds for a file size to remain constant before emitting its event. + * `awaitWriteFinish.pollInterval` (default: 100). File size polling interval, in milliseconds. + +#### Errors + +* `ignorePermissionErrors` (default: `false`). Indicates whether to watch files +that don't have read permissions if possible. If watching fails due to `EPERM` +or `EACCES` with this set to `true`, the errors will be suppressed silently. +* `atomic` (default: `true` if `useFsEvents` and `usePolling` are `false`). +Automatically filters out artifacts that occur when using editors that use +"atomic writes" instead of writing directly to the source file. If a file is +re-added within 100 ms of being deleted, Chokidar emits a `change` event +rather than `unlink` then `add`. If the default of 100 ms does not work well +for you, you can override it by setting `atomic` to a custom value, in +milliseconds. + +### Methods & Events + +`chokidar.watch()` produces an instance of `FSWatcher`. Methods of `FSWatcher`: + +* `.add(path / paths)`: Add files, directories, or glob patterns for tracking. +Takes an array of strings or just one string. +* `.on(event, callback)`: Listen for an FS event. +Available events: `add`, `addDir`, `change`, `unlink`, `unlinkDir`, `ready`, +`raw`, `error`. +Additionally `all` is available which gets emitted with the underlying event +name and path for every event other than `ready`, `raw`, and `error`. `raw` is internal, use it carefully. +* `.unwatch(path / paths)`: Stop watching files, directories, or glob patterns. +Takes an array of strings or just one string. +* `.close()`: **async** Removes all listeners from watched files. Asynchronous, returns Promise. Use with `await` to ensure bugs don't happen. +* `.getWatched()`: Returns an object representing all the paths on the file +system being watched by this `FSWatcher` instance. The object's keys are all the +directories (using absolute paths unless the `cwd` option was used), and the +values are arrays of the names of the items contained in each directory. + +## CLI + +If you need a CLI interface for your file watching, check out +[chokidar-cli](https://github.com/open-cli-tools/chokidar-cli), allowing you to +execute a command on each change, or get a stdio stream of change events. + +## Install Troubleshooting + +* `npm WARN optional dep failed, continuing fsevents@n.n.n` + * This message is normal part of how `npm` handles optional dependencies and is + not indicative of a problem. Even if accompanied by other related error messages, + Chokidar should function properly. + +* `TypeError: fsevents is not a constructor` + * Update chokidar by doing `rm -rf node_modules package-lock.json yarn.lock && npm install`, or update your dependency that uses chokidar. + +* Chokidar is producing `ENOSP` error on Linux, like this: + * `bash: cannot set terminal process group (-1): Inappropriate ioctl for device bash: no job control in this shell` + `Error: watch /home/ ENOSPC` + * This means Chokidar ran out of file handles and you'll need to increase their count by executing the following command in Terminal: + `echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p` + +## Changelog + +For more detailed changelog, see [`full_changelog.md`](.github/full_changelog.md). +- **v3.5 (Jan 6, 2021):** Support for ARM Macs with Apple Silicon. Fixes for deleted symlinks. +- **v3.4 (Apr 26, 2020):** Support for directory-based symlinks. Fixes for macos file replacement. +- **v3.3 (Nov 2, 2019):** `FSWatcher#close()` method became async. That fixes IO race conditions related to close method. +- **v3.2 (Oct 1, 2019):** Improve Linux RAM usage by 50%. Race condition fixes. Windows glob fixes. Improve stability by using tight range of dependency versions. +- **v3.1 (Sep 16, 2019):** dotfiles are no longer filtered out by default. Use `ignored` option if needed. Improve initial Linux scan time by 50%. +- **v3 (Apr 30, 2019):** massive CPU & RAM consumption improvements; reduces deps / package size by a factor of 17x and bumps Node.js requirement to v8.16 and higher. +- **v2 (Dec 29, 2017):** Globs are now posix-style-only; without windows support. Tons of bugfixes. +- **v1 (Apr 7, 2015):** Glob support, symlink support, tons of bugfixes. Node 0.8+ is supported +- **v0.1 (Apr 20, 2012):** Initial release, extracted from [Brunch](https://github.com/brunch/brunch/blob/9847a065aea300da99bd0753f90354cde9de1261/src/helpers.coffee#L66) + +## Also + +Why was chokidar named this way? What's the meaning behind it? + +>Chowkidar is a transliteration of a Hindi word meaning 'watchman, gatekeeper', चौकीदार. This ultimately comes from Sanskrit _ चतुष्क_ (crossway, quadrangle, consisting-of-four). This word is also used in other languages like Urdu as (چوکیدار) which is widely used in Pakistan and India. + +## License + +MIT (c) Paul Miller (), see [LICENSE](LICENSE) file. diff --git a/node_modules/chokidar/index.js b/node_modules/chokidar/index.js new file mode 100644 index 0000000..8752893 --- /dev/null +++ b/node_modules/chokidar/index.js @@ -0,0 +1,973 @@ +'use strict'; + +const { EventEmitter } = require('events'); +const fs = require('fs'); +const sysPath = require('path'); +const { promisify } = require('util'); +const readdirp = require('readdirp'); +const anymatch = require('anymatch').default; +const globParent = require('glob-parent'); +const isGlob = require('is-glob'); +const braces = require('braces'); +const normalizePath = require('normalize-path'); + +const NodeFsHandler = require('./lib/nodefs-handler'); +const FsEventsHandler = require('./lib/fsevents-handler'); +const { + EV_ALL, + EV_READY, + EV_ADD, + EV_CHANGE, + EV_UNLINK, + EV_ADD_DIR, + EV_UNLINK_DIR, + EV_RAW, + EV_ERROR, + + STR_CLOSE, + STR_END, + + BACK_SLASH_RE, + DOUBLE_SLASH_RE, + SLASH_OR_BACK_SLASH_RE, + DOT_RE, + REPLACER_RE, + + SLASH, + SLASH_SLASH, + BRACE_START, + BANG, + ONE_DOT, + TWO_DOTS, + GLOBSTAR, + SLASH_GLOBSTAR, + ANYMATCH_OPTS, + STRING_TYPE, + FUNCTION_TYPE, + EMPTY_STR, + EMPTY_FN, + + isWindows, + isMacos, + isIBMi +} = require('./lib/constants'); + +const stat = promisify(fs.stat); +const readdir = promisify(fs.readdir); + +/** + * @typedef {String} Path + * @typedef {'all'|'add'|'addDir'|'change'|'unlink'|'unlinkDir'|'raw'|'error'|'ready'} EventName + * @typedef {'readdir'|'watch'|'add'|'remove'|'change'} ThrottleType + */ + +/** + * + * @typedef {Object} WatchHelpers + * @property {Boolean} followSymlinks + * @property {'stat'|'lstat'} statMethod + * @property {Path} path + * @property {Path} watchPath + * @property {Function} entryPath + * @property {Boolean} hasGlob + * @property {Object} globFilter + * @property {Function} filterPath + * @property {Function} filterDir + */ + +const arrify = (value = []) => Array.isArray(value) ? value : [value]; +const flatten = (list, result = []) => { + list.forEach(item => { + if (Array.isArray(item)) { + flatten(item, result); + } else { + result.push(item); + } + }); + return result; +}; + +const unifyPaths = (paths_) => { + /** + * @type {Array} + */ + const paths = flatten(arrify(paths_)); + if (!paths.every(p => typeof p === STRING_TYPE)) { + throw new TypeError(`Non-string provided as watch path: ${paths}`); + } + return paths.map(normalizePathToUnix); +}; + +// If SLASH_SLASH occurs at the beginning of path, it is not replaced +// because "//StoragePC/DrivePool/Movies" is a valid network path +const toUnix = (string) => { + let str = string.replace(BACK_SLASH_RE, SLASH); + let prepend = false; + if (str.startsWith(SLASH_SLASH)) { + prepend = true; + } + while (str.match(DOUBLE_SLASH_RE)) { + str = str.replace(DOUBLE_SLASH_RE, SLASH); + } + if (prepend) { + str = SLASH + str; + } + return str; +}; + +// Our version of upath.normalize +// TODO: this is not equal to path-normalize module - investigate why +const normalizePathToUnix = (path) => toUnix(sysPath.normalize(toUnix(path))); + +const normalizeIgnored = (cwd = EMPTY_STR) => (path) => { + if (typeof path !== STRING_TYPE) return path; + return normalizePathToUnix(sysPath.isAbsolute(path) ? path : sysPath.join(cwd, path)); +}; + +const getAbsolutePath = (path, cwd) => { + if (sysPath.isAbsolute(path)) { + return path; + } + if (path.startsWith(BANG)) { + return BANG + sysPath.join(cwd, path.slice(1)); + } + return sysPath.join(cwd, path); +}; + +const undef = (opts, key) => opts[key] === undefined; + +/** + * Directory entry. + * @property {Path} path + * @property {Set} items + */ +class DirEntry { + /** + * @param {Path} dir + * @param {Function} removeWatcher + */ + constructor(dir, removeWatcher) { + this.path = dir; + this._removeWatcher = removeWatcher; + /** @type {Set} */ + this.items = new Set(); + } + + add(item) { + const {items} = this; + if (!items) return; + if (item !== ONE_DOT && item !== TWO_DOTS) items.add(item); + } + + async remove(item) { + const {items} = this; + if (!items) return; + items.delete(item); + if (items.size > 0) return; + + const dir = this.path; + try { + await readdir(dir); + } catch (err) { + if (this._removeWatcher) { + this._removeWatcher(sysPath.dirname(dir), sysPath.basename(dir)); + } + } + } + + has(item) { + const {items} = this; + if (!items) return; + return items.has(item); + } + + /** + * @returns {Array} + */ + getChildren() { + const {items} = this; + if (!items) return; + return [...items.values()]; + } + + dispose() { + this.items.clear(); + delete this.path; + delete this._removeWatcher; + delete this.items; + Object.freeze(this); + } +} + +const STAT_METHOD_F = 'stat'; +const STAT_METHOD_L = 'lstat'; +class WatchHelper { + constructor(path, watchPath, follow, fsw) { + this.fsw = fsw; + this.path = path = path.replace(REPLACER_RE, EMPTY_STR); + this.watchPath = watchPath; + this.fullWatchPath = sysPath.resolve(watchPath); + this.hasGlob = watchPath !== path; + /** @type {object|boolean} */ + if (path === EMPTY_STR) this.hasGlob = false; + this.globSymlink = this.hasGlob && follow ? undefined : false; + this.globFilter = this.hasGlob ? anymatch(path, undefined, ANYMATCH_OPTS) : false; + this.dirParts = this.getDirParts(path); + this.dirParts.forEach((parts) => { + if (parts.length > 1) parts.pop(); + }); + this.followSymlinks = follow; + this.statMethod = follow ? STAT_METHOD_F : STAT_METHOD_L; + } + + checkGlobSymlink(entry) { + // only need to resolve once + // first entry should always have entry.parentDir === EMPTY_STR + if (this.globSymlink === undefined) { + this.globSymlink = entry.fullParentDir === this.fullWatchPath ? + false : {realPath: entry.fullParentDir, linkPath: this.fullWatchPath}; + } + + if (this.globSymlink) { + return entry.fullPath.replace(this.globSymlink.realPath, this.globSymlink.linkPath); + } + + return entry.fullPath; + } + + entryPath(entry) { + return sysPath.join(this.watchPath, + sysPath.relative(this.watchPath, this.checkGlobSymlink(entry)) + ); + } + + filterPath(entry) { + const {stats} = entry; + if (stats && stats.isSymbolicLink()) return this.filterDir(entry); + const resolvedPath = this.entryPath(entry); + const matchesGlob = this.hasGlob && typeof this.globFilter === FUNCTION_TYPE ? + this.globFilter(resolvedPath) : true; + return matchesGlob && + this.fsw._isntIgnored(resolvedPath, stats) && + this.fsw._hasReadPermissions(stats); + } + + getDirParts(path) { + if (!this.hasGlob) return []; + const parts = []; + const expandedPath = path.includes(BRACE_START) ? braces.expand(path) : [path]; + expandedPath.forEach((path) => { + parts.push(sysPath.relative(this.watchPath, path).split(SLASH_OR_BACK_SLASH_RE)); + }); + return parts; + } + + filterDir(entry) { + if (this.hasGlob) { + const entryParts = this.getDirParts(this.checkGlobSymlink(entry)); + let globstar = false; + this.unmatchedGlob = !this.dirParts.some((parts) => { + return parts.every((part, i) => { + if (part === GLOBSTAR) globstar = true; + return globstar || !entryParts[0][i] || anymatch(part, entryParts[0][i], ANYMATCH_OPTS); + }); + }); + } + return !this.unmatchedGlob && this.fsw._isntIgnored(this.entryPath(entry), entry.stats); + } +} + +/** + * Watches files & directories for changes. Emitted events: + * `add`, `addDir`, `change`, `unlink`, `unlinkDir`, `all`, `error` + * + * new FSWatcher() + * .add(directories) + * .on('add', path => log('File', path, 'was added')) + */ +class FSWatcher extends EventEmitter { +// Not indenting methods for history sake; for now. +constructor(_opts) { + super(); + + const opts = {}; + if (_opts) Object.assign(opts, _opts); // for frozen objects + + /** @type {Map} */ + this._watched = new Map(); + /** @type {Map} */ + this._closers = new Map(); + /** @type {Set} */ + this._ignoredPaths = new Set(); + + /** @type {Map} */ + this._throttled = new Map(); + + /** @type {Map} */ + this._symlinkPaths = new Map(); + + this._streams = new Set(); + this.closed = false; + + // Set up default options. + if (undef(opts, 'persistent')) opts.persistent = true; + if (undef(opts, 'ignoreInitial')) opts.ignoreInitial = false; + if (undef(opts, 'ignorePermissionErrors')) opts.ignorePermissionErrors = false; + if (undef(opts, 'interval')) opts.interval = 100; + if (undef(opts, 'binaryInterval')) opts.binaryInterval = 300; + if (undef(opts, 'disableGlobbing')) opts.disableGlobbing = false; + opts.enableBinaryInterval = opts.binaryInterval !== opts.interval; + + // Enable fsevents on OS X when polling isn't explicitly enabled. + if (undef(opts, 'useFsEvents')) opts.useFsEvents = !opts.usePolling; + + // If we can't use fsevents, ensure the options reflect it's disabled. + const canUseFsEvents = FsEventsHandler.canUse(); + if (!canUseFsEvents) opts.useFsEvents = false; + + // Use polling on Mac if not using fsevents. + // Other platforms use non-polling fs_watch. + if (undef(opts, 'usePolling') && !opts.useFsEvents) { + opts.usePolling = isMacos; + } + + // Always default to polling on IBM i because fs.watch() is not available on IBM i. + if(isIBMi) { + opts.usePolling = true; + } + + // Global override (useful for end-developers that need to force polling for all + // instances of chokidar, regardless of usage/dependency depth) + const envPoll = process.env.CHOKIDAR_USEPOLLING; + if (envPoll !== undefined) { + const envLower = envPoll.toLowerCase(); + + if (envLower === 'false' || envLower === '0') { + opts.usePolling = false; + } else if (envLower === 'true' || envLower === '1') { + opts.usePolling = true; + } else { + opts.usePolling = !!envLower; + } + } + const envInterval = process.env.CHOKIDAR_INTERVAL; + if (envInterval) { + opts.interval = Number.parseInt(envInterval, 10); + } + + // Editor atomic write normalization enabled by default with fs.watch + if (undef(opts, 'atomic')) opts.atomic = !opts.usePolling && !opts.useFsEvents; + if (opts.atomic) this._pendingUnlinks = new Map(); + + if (undef(opts, 'followSymlinks')) opts.followSymlinks = true; + + if (undef(opts, 'awaitWriteFinish')) opts.awaitWriteFinish = false; + if (opts.awaitWriteFinish === true) opts.awaitWriteFinish = {}; + const awf = opts.awaitWriteFinish; + if (awf) { + if (!awf.stabilityThreshold) awf.stabilityThreshold = 2000; + if (!awf.pollInterval) awf.pollInterval = 100; + this._pendingWrites = new Map(); + } + if (opts.ignored) opts.ignored = arrify(opts.ignored); + + let readyCalls = 0; + this._emitReady = () => { + readyCalls++; + if (readyCalls >= this._readyCount) { + this._emitReady = EMPTY_FN; + this._readyEmitted = true; + // use process.nextTick to allow time for listener to be bound + process.nextTick(() => this.emit(EV_READY)); + } + }; + this._emitRaw = (...args) => this.emit(EV_RAW, ...args); + this._readyEmitted = false; + this.options = opts; + + // Initialize with proper watcher. + if (opts.useFsEvents) { + this._fsEventsHandler = new FsEventsHandler(this); + } else { + this._nodeFsHandler = new NodeFsHandler(this); + } + + // You’re frozen when your heart’s not open. + Object.freeze(opts); +} + +// Public methods + +/** + * Adds paths to be watched on an existing FSWatcher instance + * @param {Path|Array} paths_ + * @param {String=} _origAdd private; for handling non-existent paths to be watched + * @param {Boolean=} _internal private; indicates a non-user add + * @returns {FSWatcher} for chaining + */ +add(paths_, _origAdd, _internal) { + const {cwd, disableGlobbing} = this.options; + this.closed = false; + let paths = unifyPaths(paths_); + if (cwd) { + paths = paths.map((path) => { + const absPath = getAbsolutePath(path, cwd); + + // Check `path` instead of `absPath` because the cwd portion can't be a glob + if (disableGlobbing || !isGlob(path)) { + return absPath; + } + return normalizePath(absPath); + }); + } + + // set aside negated glob strings + paths = paths.filter((path) => { + if (path.startsWith(BANG)) { + this._ignoredPaths.add(path.slice(1)); + return false; + } + + // if a path is being added that was previously ignored, stop ignoring it + this._ignoredPaths.delete(path); + this._ignoredPaths.delete(path + SLASH_GLOBSTAR); + + // reset the cached userIgnored anymatch fn + // to make ignoredPaths changes effective + this._userIgnored = undefined; + + return true; + }); + + if (this.options.useFsEvents && this._fsEventsHandler) { + if (!this._readyCount) this._readyCount = paths.length; + if (this.options.persistent) this._readyCount += paths.length; + paths.forEach((path) => this._fsEventsHandler._addToFsEvents(path)); + } else { + if (!this._readyCount) this._readyCount = 0; + this._readyCount += paths.length; + Promise.all( + paths.map(async path => { + const res = await this._nodeFsHandler._addToNodeFs(path, !_internal, 0, 0, _origAdd); + if (res) this._emitReady(); + return res; + }) + ).then(results => { + if (this.closed) return; + results.filter(item => item).forEach(item => { + this.add(sysPath.dirname(item), sysPath.basename(_origAdd || item)); + }); + }); + } + + return this; +} + +/** + * Close watchers or start ignoring events from specified paths. + * @param {Path|Array} paths_ - string or array of strings, file/directory paths and/or globs + * @returns {FSWatcher} for chaining +*/ +unwatch(paths_) { + if (this.closed) return this; + const paths = unifyPaths(paths_); + const {cwd} = this.options; + + paths.forEach((path) => { + // convert to absolute path unless relative path already matches + if (!sysPath.isAbsolute(path) && !this._closers.has(path)) { + if (cwd) path = sysPath.join(cwd, path); + path = sysPath.resolve(path); + } + + this._closePath(path); + + this._ignoredPaths.add(path); + if (this._watched.has(path)) { + this._ignoredPaths.add(path + SLASH_GLOBSTAR); + } + + // reset the cached userIgnored anymatch fn + // to make ignoredPaths changes effective + this._userIgnored = undefined; + }); + + return this; +} + +/** + * Close watchers and remove all listeners from watched paths. + * @returns {Promise}. +*/ +close() { + if (this.closed) return this._closePromise; + this.closed = true; + + // Memory management. + this.removeAllListeners(); + const closers = []; + this._closers.forEach(closerList => closerList.forEach(closer => { + const promise = closer(); + if (promise instanceof Promise) closers.push(promise); + })); + this._streams.forEach(stream => stream.destroy()); + this._userIgnored = undefined; + this._readyCount = 0; + this._readyEmitted = false; + this._watched.forEach(dirent => dirent.dispose()); + ['closers', 'watched', 'streams', 'symlinkPaths', 'throttled'].forEach(key => { + this[`_${key}`].clear(); + }); + + this._closePromise = closers.length ? Promise.all(closers).then(() => undefined) : Promise.resolve(); + return this._closePromise; +} + +/** + * Expose list of watched paths + * @returns {Object} for chaining +*/ +getWatched() { + const watchList = {}; + this._watched.forEach((entry, dir) => { + const key = this.options.cwd ? sysPath.relative(this.options.cwd, dir) : dir; + watchList[key || ONE_DOT] = entry.getChildren().sort(); + }); + return watchList; +} + +emitWithAll(event, args) { + this.emit(...args); + if (event !== EV_ERROR) this.emit(EV_ALL, ...args); +} + +// Common helpers +// -------------- + +/** + * Normalize and emit events. + * Calling _emit DOES NOT MEAN emit() would be called! + * @param {EventName} event Type of event + * @param {Path} path File or directory path + * @param {*=} val1 arguments to be passed with event + * @param {*=} val2 + * @param {*=} val3 + * @returns the error if defined, otherwise the value of the FSWatcher instance's `closed` flag + */ +async _emit(event, path, val1, val2, val3) { + if (this.closed) return; + + const opts = this.options; + if (isWindows) path = sysPath.normalize(path); + if (opts.cwd) path = sysPath.relative(opts.cwd, path); + /** @type Array */ + const args = [event, path]; + if (val3 !== undefined) args.push(val1, val2, val3); + else if (val2 !== undefined) args.push(val1, val2); + else if (val1 !== undefined) args.push(val1); + + const awf = opts.awaitWriteFinish; + let pw; + if (awf && (pw = this._pendingWrites.get(path))) { + pw.lastChange = new Date(); + return this; + } + + if (opts.atomic) { + if (event === EV_UNLINK) { + this._pendingUnlinks.set(path, args); + setTimeout(() => { + this._pendingUnlinks.forEach((entry, path) => { + this.emit(...entry); + this.emit(EV_ALL, ...entry); + this._pendingUnlinks.delete(path); + }); + }, typeof opts.atomic === 'number' ? opts.atomic : 100); + return this; + } + if (event === EV_ADD && this._pendingUnlinks.has(path)) { + event = args[0] = EV_CHANGE; + this._pendingUnlinks.delete(path); + } + } + + if (awf && (event === EV_ADD || event === EV_CHANGE) && this._readyEmitted) { + const awfEmit = (err, stats) => { + if (err) { + event = args[0] = EV_ERROR; + args[1] = err; + this.emitWithAll(event, args); + } else if (stats) { + // if stats doesn't exist the file must have been deleted + if (args.length > 2) { + args[2] = stats; + } else { + args.push(stats); + } + this.emitWithAll(event, args); + } + }; + + this._awaitWriteFinish(path, awf.stabilityThreshold, event, awfEmit); + return this; + } + + if (event === EV_CHANGE) { + const isThrottled = !this._throttle(EV_CHANGE, path, 50); + if (isThrottled) return this; + } + + if (opts.alwaysStat && val1 === undefined && + (event === EV_ADD || event === EV_ADD_DIR || event === EV_CHANGE) + ) { + const fullPath = opts.cwd ? sysPath.join(opts.cwd, path) : path; + let stats; + try { + stats = await stat(fullPath); + } catch (err) {} + // Suppress event when fs_stat fails, to avoid sending undefined 'stat' + if (!stats || this.closed) return; + args.push(stats); + } + this.emitWithAll(event, args); + + return this; +} + +/** + * Common handler for errors + * @param {Error} error + * @returns {Error|Boolean} The error if defined, otherwise the value of the FSWatcher instance's `closed` flag + */ +_handleError(error) { + const code = error && error.code; + if (error && code !== 'ENOENT' && code !== 'ENOTDIR' && + (!this.options.ignorePermissionErrors || (code !== 'EPERM' && code !== 'EACCES')) + ) { + this.emit(EV_ERROR, error); + } + return error || this.closed; +} + +/** + * Helper utility for throttling + * @param {ThrottleType} actionType type being throttled + * @param {Path} path being acted upon + * @param {Number} timeout duration of time to suppress duplicate actions + * @returns {Object|false} tracking object or false if action should be suppressed + */ +_throttle(actionType, path, timeout) { + if (!this._throttled.has(actionType)) { + this._throttled.set(actionType, new Map()); + } + + /** @type {Map} */ + const action = this._throttled.get(actionType); + /** @type {Object} */ + const actionPath = action.get(path); + + if (actionPath) { + actionPath.count++; + return false; + } + + let timeoutObject; + const clear = () => { + const item = action.get(path); + const count = item ? item.count : 0; + action.delete(path); + clearTimeout(timeoutObject); + if (item) clearTimeout(item.timeoutObject); + return count; + }; + timeoutObject = setTimeout(clear, timeout); + const thr = {timeoutObject, clear, count: 0}; + action.set(path, thr); + return thr; +} + +_incrReadyCount() { + return this._readyCount++; +} + +/** + * Awaits write operation to finish. + * Polls a newly created file for size variations. When files size does not change for 'threshold' milliseconds calls callback. + * @param {Path} path being acted upon + * @param {Number} threshold Time in milliseconds a file size must be fixed before acknowledging write OP is finished + * @param {EventName} event + * @param {Function} awfEmit Callback to be called when ready for event to be emitted. + */ +_awaitWriteFinish(path, threshold, event, awfEmit) { + let timeoutHandler; + + let fullPath = path; + if (this.options.cwd && !sysPath.isAbsolute(path)) { + fullPath = sysPath.join(this.options.cwd, path); + } + + const now = new Date(); + + const awaitWriteFinish = (prevStat) => { + fs.stat(fullPath, (err, curStat) => { + if (err || !this._pendingWrites.has(path)) { + if (err && err.code !== 'ENOENT') awfEmit(err); + return; + } + + const now = Number(new Date()); + + if (prevStat && curStat.size !== prevStat.size) { + this._pendingWrites.get(path).lastChange = now; + } + const pw = this._pendingWrites.get(path); + const df = now - pw.lastChange; + + if (df >= threshold) { + this._pendingWrites.delete(path); + awfEmit(undefined, curStat); + } else { + timeoutHandler = setTimeout( + awaitWriteFinish, + this.options.awaitWriteFinish.pollInterval, + curStat + ); + } + }); + }; + + if (!this._pendingWrites.has(path)) { + this._pendingWrites.set(path, { + lastChange: now, + cancelWait: () => { + this._pendingWrites.delete(path); + clearTimeout(timeoutHandler); + return event; + } + }); + timeoutHandler = setTimeout( + awaitWriteFinish, + this.options.awaitWriteFinish.pollInterval + ); + } +} + +_getGlobIgnored() { + return [...this._ignoredPaths.values()]; +} + +/** + * Determines whether user has asked to ignore this path. + * @param {Path} path filepath or dir + * @param {fs.Stats=} stats result of fs.stat + * @returns {Boolean} + */ +_isIgnored(path, stats) { + if (this.options.atomic && DOT_RE.test(path)) return true; + if (!this._userIgnored) { + const {cwd} = this.options; + const ign = this.options.ignored; + + const ignored = ign && ign.map(normalizeIgnored(cwd)); + const paths = arrify(ignored) + .filter((path) => typeof path === STRING_TYPE && !isGlob(path)) + .map((path) => path + SLASH_GLOBSTAR); + const list = this._getGlobIgnored().map(normalizeIgnored(cwd)).concat(ignored, paths); + this._userIgnored = anymatch(list, undefined, ANYMATCH_OPTS); + } + + return this._userIgnored([path, stats]); +} + +_isntIgnored(path, stat) { + return !this._isIgnored(path, stat); +} + +/** + * Provides a set of common helpers and properties relating to symlink and glob handling. + * @param {Path} path file, directory, or glob pattern being watched + * @param {Number=} depth at any depth > 0, this isn't a glob + * @returns {WatchHelper} object containing helpers for this path + */ +_getWatchHelpers(path, depth) { + const watchPath = depth || this.options.disableGlobbing || !isGlob(path) ? path : globParent(path); + const follow = this.options.followSymlinks; + + return new WatchHelper(path, watchPath, follow, this); +} + +// Directory helpers +// ----------------- + +/** + * Provides directory tracking objects + * @param {String} directory path of the directory + * @returns {DirEntry} the directory's tracking object + */ +_getWatchedDir(directory) { + if (!this._boundRemove) this._boundRemove = this._remove.bind(this); + const dir = sysPath.resolve(directory); + if (!this._watched.has(dir)) this._watched.set(dir, new DirEntry(dir, this._boundRemove)); + return this._watched.get(dir); +} + +// File helpers +// ------------ + +/** + * Check for read permissions. + * Based on this answer on SO: https://stackoverflow.com/a/11781404/1358405 + * @param {fs.Stats} stats - object, result of fs_stat + * @returns {Boolean} indicates whether the file can be read +*/ +_hasReadPermissions(stats) { + if (this.options.ignorePermissionErrors) return true; + + // stats.mode may be bigint + const md = stats && Number.parseInt(stats.mode, 10); + const st = md & 0o777; + const it = Number.parseInt(st.toString(8)[0], 10); + return Boolean(4 & it); +} + +/** + * Handles emitting unlink events for + * files and directories, and via recursion, for + * files and directories within directories that are unlinked + * @param {String} directory within which the following item is located + * @param {String} item base path of item/directory + * @returns {void} +*/ +_remove(directory, item, isDirectory) { + // if what is being deleted is a directory, get that directory's paths + // for recursive deleting and cleaning of watched object + // if it is not a directory, nestedDirectoryChildren will be empty array + const path = sysPath.join(directory, item); + const fullPath = sysPath.resolve(path); + isDirectory = isDirectory != null + ? isDirectory + : this._watched.has(path) || this._watched.has(fullPath); + + // prevent duplicate handling in case of arriving here nearly simultaneously + // via multiple paths (such as _handleFile and _handleDir) + if (!this._throttle('remove', path, 100)) return; + + // if the only watched file is removed, watch for its return + if (!isDirectory && !this.options.useFsEvents && this._watched.size === 1) { + this.add(directory, item, true); + } + + // This will create a new entry in the watched object in either case + // so we got to do the directory check beforehand + const wp = this._getWatchedDir(path); + const nestedDirectoryChildren = wp.getChildren(); + + // Recursively remove children directories / files. + nestedDirectoryChildren.forEach(nested => this._remove(path, nested)); + + // Check if item was on the watched list and remove it + const parent = this._getWatchedDir(directory); + const wasTracked = parent.has(item); + parent.remove(item); + + // Fixes issue #1042 -> Relative paths were detected and added as symlinks + // (https://github.com/paulmillr/chokidar/blob/e1753ddbc9571bdc33b4a4af172d52cb6e611c10/lib/nodefs-handler.js#L612), + // but never removed from the map in case the path was deleted. + // This leads to an incorrect state if the path was recreated: + // https://github.com/paulmillr/chokidar/blob/e1753ddbc9571bdc33b4a4af172d52cb6e611c10/lib/nodefs-handler.js#L553 + if (this._symlinkPaths.has(fullPath)) { + this._symlinkPaths.delete(fullPath); + } + + // If we wait for this file to be fully written, cancel the wait. + let relPath = path; + if (this.options.cwd) relPath = sysPath.relative(this.options.cwd, path); + if (this.options.awaitWriteFinish && this._pendingWrites.has(relPath)) { + const event = this._pendingWrites.get(relPath).cancelWait(); + if (event === EV_ADD) return; + } + + // The Entry will either be a directory that just got removed + // or a bogus entry to a file, in either case we have to remove it + this._watched.delete(path); + this._watched.delete(fullPath); + const eventName = isDirectory ? EV_UNLINK_DIR : EV_UNLINK; + if (wasTracked && !this._isIgnored(path)) this._emit(eventName, path); + + // Avoid conflicts if we later create another file with the same name + if (!this.options.useFsEvents) { + this._closePath(path); + } +} + +/** + * Closes all watchers for a path + * @param {Path} path + */ +_closePath(path) { + this._closeFile(path) + const dir = sysPath.dirname(path); + this._getWatchedDir(dir).remove(sysPath.basename(path)); +} + +/** + * Closes only file-specific watchers + * @param {Path} path + */ +_closeFile(path) { + const closers = this._closers.get(path); + if (!closers) return; + closers.forEach(closer => closer()); + this._closers.delete(path); +} + +/** + * + * @param {Path} path + * @param {Function} closer + */ +_addPathCloser(path, closer) { + if (!closer) return; + let list = this._closers.get(path); + if (!list) { + list = []; + this._closers.set(path, list); + } + list.push(closer); +} + +_readdirp(root, opts) { + if (this.closed) return; + const options = {type: EV_ALL, alwaysStat: true, lstat: true, ...opts}; + let stream = readdirp(root, options); + this._streams.add(stream); + stream.once(STR_CLOSE, () => { + stream = undefined; + }); + stream.once(STR_END, () => { + if (stream) { + this._streams.delete(stream); + stream = undefined; + } + }); + return stream; +} + +} + +// Export FSWatcher class +exports.FSWatcher = FSWatcher; + +/** + * Instantiates watcher with paths to be tracked. + * @param {String|Array} paths file/directory paths and/or globs + * @param {Object=} options chokidar opts + * @returns an instance of FSWatcher for chaining. + */ +const watch = (paths, options) => { + const watcher = new FSWatcher(options); + watcher.add(paths); + return watcher; +}; + +exports.watch = watch; diff --git a/node_modules/chokidar/lib/constants.js b/node_modules/chokidar/lib/constants.js new file mode 100644 index 0000000..4743865 --- /dev/null +++ b/node_modules/chokidar/lib/constants.js @@ -0,0 +1,66 @@ +'use strict'; + +const {sep} = require('path'); +const {platform} = process; +const os = require('os'); + +exports.EV_ALL = 'all'; +exports.EV_READY = 'ready'; +exports.EV_ADD = 'add'; +exports.EV_CHANGE = 'change'; +exports.EV_ADD_DIR = 'addDir'; +exports.EV_UNLINK = 'unlink'; +exports.EV_UNLINK_DIR = 'unlinkDir'; +exports.EV_RAW = 'raw'; +exports.EV_ERROR = 'error'; + +exports.STR_DATA = 'data'; +exports.STR_END = 'end'; +exports.STR_CLOSE = 'close'; + +exports.FSEVENT_CREATED = 'created'; +exports.FSEVENT_MODIFIED = 'modified'; +exports.FSEVENT_DELETED = 'deleted'; +exports.FSEVENT_MOVED = 'moved'; +exports.FSEVENT_CLONED = 'cloned'; +exports.FSEVENT_UNKNOWN = 'unknown'; +exports.FSEVENT_FLAG_MUST_SCAN_SUBDIRS = 1; +exports.FSEVENT_TYPE_FILE = 'file'; +exports.FSEVENT_TYPE_DIRECTORY = 'directory'; +exports.FSEVENT_TYPE_SYMLINK = 'symlink'; + +exports.KEY_LISTENERS = 'listeners'; +exports.KEY_ERR = 'errHandlers'; +exports.KEY_RAW = 'rawEmitters'; +exports.HANDLER_KEYS = [exports.KEY_LISTENERS, exports.KEY_ERR, exports.KEY_RAW]; + +exports.DOT_SLASH = `.${sep}`; + +exports.BACK_SLASH_RE = /\\/g; +exports.DOUBLE_SLASH_RE = /\/\//; +exports.SLASH_OR_BACK_SLASH_RE = /[/\\]/; +exports.DOT_RE = /\..*\.(sw[px])$|~$|\.subl.*\.tmp/; +exports.REPLACER_RE = /^\.[/\\]/; + +exports.SLASH = '/'; +exports.SLASH_SLASH = '//'; +exports.BRACE_START = '{'; +exports.BANG = '!'; +exports.ONE_DOT = '.'; +exports.TWO_DOTS = '..'; +exports.STAR = '*'; +exports.GLOBSTAR = '**'; +exports.ROOT_GLOBSTAR = '/**/*'; +exports.SLASH_GLOBSTAR = '/**'; +exports.DIR_SUFFIX = 'Dir'; +exports.ANYMATCH_OPTS = {dot: true}; +exports.STRING_TYPE = 'string'; +exports.FUNCTION_TYPE = 'function'; +exports.EMPTY_STR = ''; +exports.EMPTY_FN = () => {}; +exports.IDENTITY_FN = val => val; + +exports.isWindows = platform === 'win32'; +exports.isMacos = platform === 'darwin'; +exports.isLinux = platform === 'linux'; +exports.isIBMi = os.type() === 'OS400'; diff --git a/node_modules/chokidar/lib/fsevents-handler.js b/node_modules/chokidar/lib/fsevents-handler.js new file mode 100644 index 0000000..fe29393 --- /dev/null +++ b/node_modules/chokidar/lib/fsevents-handler.js @@ -0,0 +1,526 @@ +'use strict'; + +const fs = require('fs'); +const sysPath = require('path'); +const { promisify } = require('util'); + +let fsevents; +try { + fsevents = require('fsevents'); +} catch (error) { + if (process.env.CHOKIDAR_PRINT_FSEVENTS_REQUIRE_ERROR) console.error(error); +} + +if (fsevents) { + // TODO: real check + const mtch = process.version.match(/v(\d+)\.(\d+)/); + if (mtch && mtch[1] && mtch[2]) { + const maj = Number.parseInt(mtch[1], 10); + const min = Number.parseInt(mtch[2], 10); + if (maj === 8 && min < 16) { + fsevents = undefined; + } + } +} + +const { + EV_ADD, + EV_CHANGE, + EV_ADD_DIR, + EV_UNLINK, + EV_ERROR, + STR_DATA, + STR_END, + FSEVENT_CREATED, + FSEVENT_MODIFIED, + FSEVENT_DELETED, + FSEVENT_MOVED, + // FSEVENT_CLONED, + FSEVENT_UNKNOWN, + FSEVENT_FLAG_MUST_SCAN_SUBDIRS, + FSEVENT_TYPE_FILE, + FSEVENT_TYPE_DIRECTORY, + FSEVENT_TYPE_SYMLINK, + + ROOT_GLOBSTAR, + DIR_SUFFIX, + DOT_SLASH, + FUNCTION_TYPE, + EMPTY_FN, + IDENTITY_FN +} = require('./constants'); + +const Depth = (value) => isNaN(value) ? {} : {depth: value}; + +const stat = promisify(fs.stat); +const lstat = promisify(fs.lstat); +const realpath = promisify(fs.realpath); + +const statMethods = { stat, lstat }; + +/** + * @typedef {String} Path + */ + +/** + * @typedef {Object} FsEventsWatchContainer + * @property {Set} listeners + * @property {Function} rawEmitter + * @property {{stop: Function}} watcher + */ + +// fsevents instance helper functions +/** + * Object to hold per-process fsevents instances (may be shared across chokidar FSWatcher instances) + * @type {Map} + */ +const FSEventsWatchers = new Map(); + +// Threshold of duplicate path prefixes at which to start +// consolidating going forward +const consolidateThreshhold = 10; + +const wrongEventFlags = new Set([ + 69888, 70400, 71424, 72704, 73472, 131328, 131840, 262912 +]); + +/** + * Instantiates the fsevents interface + * @param {Path} path path to be watched + * @param {Function} callback called when fsevents is bound and ready + * @returns {{stop: Function}} new fsevents instance + */ +const createFSEventsInstance = (path, callback) => { + const stop = fsevents.watch(path, callback); + return {stop}; +}; + +/** + * Instantiates the fsevents interface or binds listeners to an existing one covering + * the same file tree. + * @param {Path} path - to be watched + * @param {Path} realPath - real path for symlinks + * @param {Function} listener - called when fsevents emits events + * @param {Function} rawEmitter - passes data to listeners of the 'raw' event + * @returns {Function} closer + */ +function setFSEventsListener(path, realPath, listener, rawEmitter) { + let watchPath = sysPath.extname(realPath) ? sysPath.dirname(realPath) : realPath; + + const parentPath = sysPath.dirname(watchPath); + let cont = FSEventsWatchers.get(watchPath); + + // If we've accumulated a substantial number of paths that + // could have been consolidated by watching one directory + // above the current one, create a watcher on the parent + // path instead, so that we do consolidate going forward. + if (couldConsolidate(parentPath)) { + watchPath = parentPath; + } + + const resolvedPath = sysPath.resolve(path); + const hasSymlink = resolvedPath !== realPath; + + const filteredListener = (fullPath, flags, info) => { + if (hasSymlink) fullPath = fullPath.replace(realPath, resolvedPath); + if ( + fullPath === resolvedPath || + !fullPath.indexOf(resolvedPath + sysPath.sep) + ) listener(fullPath, flags, info); + }; + + // check if there is already a watcher on a parent path + // modifies `watchPath` to the parent path when it finds a match + let watchedParent = false; + for (const watchedPath of FSEventsWatchers.keys()) { + if (realPath.indexOf(sysPath.resolve(watchedPath) + sysPath.sep) === 0) { + watchPath = watchedPath; + cont = FSEventsWatchers.get(watchPath); + watchedParent = true; + break; + } + } + + if (cont || watchedParent) { + cont.listeners.add(filteredListener); + } else { + cont = { + listeners: new Set([filteredListener]), + rawEmitter, + watcher: createFSEventsInstance(watchPath, (fullPath, flags) => { + if (!cont.listeners.size) return; + if (flags & FSEVENT_FLAG_MUST_SCAN_SUBDIRS) return; + const info = fsevents.getInfo(fullPath, flags); + cont.listeners.forEach(list => { + list(fullPath, flags, info); + }); + + cont.rawEmitter(info.event, fullPath, info); + }) + }; + FSEventsWatchers.set(watchPath, cont); + } + + // removes this instance's listeners and closes the underlying fsevents + // instance if there are no more listeners left + return () => { + const lst = cont.listeners; + + lst.delete(filteredListener); + if (!lst.size) { + FSEventsWatchers.delete(watchPath); + if (cont.watcher) return cont.watcher.stop().then(() => { + cont.rawEmitter = cont.watcher = undefined; + Object.freeze(cont); + }); + } + }; +} + +// Decide whether or not we should start a new higher-level +// parent watcher +const couldConsolidate = (path) => { + let count = 0; + for (const watchPath of FSEventsWatchers.keys()) { + if (watchPath.indexOf(path) === 0) { + count++; + if (count >= consolidateThreshhold) { + return true; + } + } + } + + return false; +}; + +// returns boolean indicating whether fsevents can be used +const canUse = () => fsevents && FSEventsWatchers.size < 128; + +// determines subdirectory traversal levels from root to path +const calcDepth = (path, root) => { + let i = 0; + while (!path.indexOf(root) && (path = sysPath.dirname(path)) !== root) i++; + return i; +}; + +// returns boolean indicating whether the fsevents' event info has the same type +// as the one returned by fs.stat +const sameTypes = (info, stats) => ( + info.type === FSEVENT_TYPE_DIRECTORY && stats.isDirectory() || + info.type === FSEVENT_TYPE_SYMLINK && stats.isSymbolicLink() || + info.type === FSEVENT_TYPE_FILE && stats.isFile() +) + +/** + * @mixin + */ +class FsEventsHandler { + +/** + * @param {import('../index').FSWatcher} fsw + */ +constructor(fsw) { + this.fsw = fsw; +} +checkIgnored(path, stats) { + const ipaths = this.fsw._ignoredPaths; + if (this.fsw._isIgnored(path, stats)) { + ipaths.add(path); + if (stats && stats.isDirectory()) { + ipaths.add(path + ROOT_GLOBSTAR); + } + return true; + } + + ipaths.delete(path); + ipaths.delete(path + ROOT_GLOBSTAR); +} + +addOrChange(path, fullPath, realPath, parent, watchedDir, item, info, opts) { + const event = watchedDir.has(item) ? EV_CHANGE : EV_ADD; + this.handleEvent(event, path, fullPath, realPath, parent, watchedDir, item, info, opts); +} + +async checkExists(path, fullPath, realPath, parent, watchedDir, item, info, opts) { + try { + const stats = await stat(path) + if (this.fsw.closed) return; + if (sameTypes(info, stats)) { + this.addOrChange(path, fullPath, realPath, parent, watchedDir, item, info, opts); + } else { + this.handleEvent(EV_UNLINK, path, fullPath, realPath, parent, watchedDir, item, info, opts); + } + } catch (error) { + if (error.code === 'EACCES') { + this.addOrChange(path, fullPath, realPath, parent, watchedDir, item, info, opts); + } else { + this.handleEvent(EV_UNLINK, path, fullPath, realPath, parent, watchedDir, item, info, opts); + } + } +} + +handleEvent(event, path, fullPath, realPath, parent, watchedDir, item, info, opts) { + if (this.fsw.closed || this.checkIgnored(path)) return; + + if (event === EV_UNLINK) { + const isDirectory = info.type === FSEVENT_TYPE_DIRECTORY + // suppress unlink events on never before seen files + if (isDirectory || watchedDir.has(item)) { + this.fsw._remove(parent, item, isDirectory); + } + } else { + if (event === EV_ADD) { + // track new directories + if (info.type === FSEVENT_TYPE_DIRECTORY) this.fsw._getWatchedDir(path); + + if (info.type === FSEVENT_TYPE_SYMLINK && opts.followSymlinks) { + // push symlinks back to the top of the stack to get handled + const curDepth = opts.depth === undefined ? + undefined : calcDepth(fullPath, realPath) + 1; + return this._addToFsEvents(path, false, true, curDepth); + } + + // track new paths + // (other than symlinks being followed, which will be tracked soon) + this.fsw._getWatchedDir(parent).add(item); + } + /** + * @type {'add'|'addDir'|'unlink'|'unlinkDir'} + */ + const eventName = info.type === FSEVENT_TYPE_DIRECTORY ? event + DIR_SUFFIX : event; + this.fsw._emit(eventName, path); + if (eventName === EV_ADD_DIR) this._addToFsEvents(path, false, true); + } +} + +/** + * Handle symlinks encountered during directory scan + * @param {String} watchPath - file/dir path to be watched with fsevents + * @param {String} realPath - real path (in case of symlinks) + * @param {Function} transform - path transformer + * @param {Function} globFilter - path filter in case a glob pattern was provided + * @returns {Function} closer for the watcher instance +*/ +_watchWithFsEvents(watchPath, realPath, transform, globFilter) { + if (this.fsw.closed || this.fsw._isIgnored(watchPath)) return; + const opts = this.fsw.options; + const watchCallback = async (fullPath, flags, info) => { + if (this.fsw.closed) return; + if ( + opts.depth !== undefined && + calcDepth(fullPath, realPath) > opts.depth + ) return; + const path = transform(sysPath.join( + watchPath, sysPath.relative(watchPath, fullPath) + )); + if (globFilter && !globFilter(path)) return; + // ensure directories are tracked + const parent = sysPath.dirname(path); + const item = sysPath.basename(path); + const watchedDir = this.fsw._getWatchedDir( + info.type === FSEVENT_TYPE_DIRECTORY ? path : parent + ); + + // correct for wrong events emitted + if (wrongEventFlags.has(flags) || info.event === FSEVENT_UNKNOWN) { + if (typeof opts.ignored === FUNCTION_TYPE) { + let stats; + try { + stats = await stat(path); + } catch (error) {} + if (this.fsw.closed) return; + if (this.checkIgnored(path, stats)) return; + if (sameTypes(info, stats)) { + this.addOrChange(path, fullPath, realPath, parent, watchedDir, item, info, opts); + } else { + this.handleEvent(EV_UNLINK, path, fullPath, realPath, parent, watchedDir, item, info, opts); + } + } else { + this.checkExists(path, fullPath, realPath, parent, watchedDir, item, info, opts); + } + } else { + switch (info.event) { + case FSEVENT_CREATED: + case FSEVENT_MODIFIED: + return this.addOrChange(path, fullPath, realPath, parent, watchedDir, item, info, opts); + case FSEVENT_DELETED: + case FSEVENT_MOVED: + return this.checkExists(path, fullPath, realPath, parent, watchedDir, item, info, opts); + } + } + }; + + const closer = setFSEventsListener( + watchPath, + realPath, + watchCallback, + this.fsw._emitRaw + ); + + this.fsw._emitReady(); + return closer; +} + +/** + * Handle symlinks encountered during directory scan + * @param {String} linkPath path to symlink + * @param {String} fullPath absolute path to the symlink + * @param {Function} transform pre-existing path transformer + * @param {Number} curDepth level of subdirectories traversed to where symlink is + * @returns {Promise} + */ +async _handleFsEventsSymlink(linkPath, fullPath, transform, curDepth) { + // don't follow the same symlink more than once + if (this.fsw.closed || this.fsw._symlinkPaths.has(fullPath)) return; + + this.fsw._symlinkPaths.set(fullPath, true); + this.fsw._incrReadyCount(); + + try { + const linkTarget = await realpath(linkPath); + if (this.fsw.closed) return; + if (this.fsw._isIgnored(linkTarget)) { + return this.fsw._emitReady(); + } + + this.fsw._incrReadyCount(); + + // add the linkTarget for watching with a wrapper for transform + // that causes emitted paths to incorporate the link's path + this._addToFsEvents(linkTarget || linkPath, (path) => { + let aliasedPath = linkPath; + if (linkTarget && linkTarget !== DOT_SLASH) { + aliasedPath = path.replace(linkTarget, linkPath); + } else if (path !== DOT_SLASH) { + aliasedPath = sysPath.join(linkPath, path); + } + return transform(aliasedPath); + }, false, curDepth); + } catch(error) { + if (this.fsw._handleError(error)) { + return this.fsw._emitReady(); + } + } +} + +/** + * + * @param {Path} newPath + * @param {fs.Stats} stats + */ +emitAdd(newPath, stats, processPath, opts, forceAdd) { + const pp = processPath(newPath); + const isDir = stats.isDirectory(); + const dirObj = this.fsw._getWatchedDir(sysPath.dirname(pp)); + const base = sysPath.basename(pp); + + // ensure empty dirs get tracked + if (isDir) this.fsw._getWatchedDir(pp); + if (dirObj.has(base)) return; + dirObj.add(base); + + if (!opts.ignoreInitial || forceAdd === true) { + this.fsw._emit(isDir ? EV_ADD_DIR : EV_ADD, pp, stats); + } +} + +initWatch(realPath, path, wh, processPath) { + if (this.fsw.closed) return; + const closer = this._watchWithFsEvents( + wh.watchPath, + sysPath.resolve(realPath || wh.watchPath), + processPath, + wh.globFilter + ); + this.fsw._addPathCloser(path, closer); +} + +/** + * Handle added path with fsevents + * @param {String} path file/dir path or glob pattern + * @param {Function|Boolean=} transform converts working path to what the user expects + * @param {Boolean=} forceAdd ensure add is emitted + * @param {Number=} priorDepth Level of subdirectories already traversed. + * @returns {Promise} + */ +async _addToFsEvents(path, transform, forceAdd, priorDepth) { + if (this.fsw.closed) { + return; + } + const opts = this.fsw.options; + const processPath = typeof transform === FUNCTION_TYPE ? transform : IDENTITY_FN; + + const wh = this.fsw._getWatchHelpers(path); + + // evaluate what is at the path we're being asked to watch + try { + const stats = await statMethods[wh.statMethod](wh.watchPath); + if (this.fsw.closed) return; + if (this.fsw._isIgnored(wh.watchPath, stats)) { + throw null; + } + if (stats.isDirectory()) { + // emit addDir unless this is a glob parent + if (!wh.globFilter) this.emitAdd(processPath(path), stats, processPath, opts, forceAdd); + + // don't recurse further if it would exceed depth setting + if (priorDepth && priorDepth > opts.depth) return; + + // scan the contents of the dir + this.fsw._readdirp(wh.watchPath, { + fileFilter: entry => wh.filterPath(entry), + directoryFilter: entry => wh.filterDir(entry), + ...Depth(opts.depth - (priorDepth || 0)) + }).on(STR_DATA, (entry) => { + // need to check filterPath on dirs b/c filterDir is less restrictive + if (this.fsw.closed) { + return; + } + if (entry.stats.isDirectory() && !wh.filterPath(entry)) return; + + const joinedPath = sysPath.join(wh.watchPath, entry.path); + const {fullPath} = entry; + + if (wh.followSymlinks && entry.stats.isSymbolicLink()) { + // preserve the current depth here since it can't be derived from + // real paths past the symlink + const curDepth = opts.depth === undefined ? + undefined : calcDepth(joinedPath, sysPath.resolve(wh.watchPath)) + 1; + + this._handleFsEventsSymlink(joinedPath, fullPath, processPath, curDepth); + } else { + this.emitAdd(joinedPath, entry.stats, processPath, opts, forceAdd); + } + }).on(EV_ERROR, EMPTY_FN).on(STR_END, () => { + this.fsw._emitReady(); + }); + } else { + this.emitAdd(wh.watchPath, stats, processPath, opts, forceAdd); + this.fsw._emitReady(); + } + } catch (error) { + if (!error || this.fsw._handleError(error)) { + // TODO: Strange thing: "should not choke on an ignored watch path" will be failed without 2 ready calls -__- + this.fsw._emitReady(); + this.fsw._emitReady(); + } + } + + if (opts.persistent && forceAdd !== true) { + if (typeof transform === FUNCTION_TYPE) { + // realpath has already been resolved + this.initWatch(undefined, path, wh, processPath); + } else { + let realPath; + try { + realPath = await realpath(wh.watchPath); + } catch (e) {} + this.initWatch(realPath, path, wh, processPath); + } + } +} + +} + +module.exports = FsEventsHandler; +module.exports.canUse = canUse; diff --git a/node_modules/chokidar/lib/nodefs-handler.js b/node_modules/chokidar/lib/nodefs-handler.js new file mode 100644 index 0000000..199cfe9 --- /dev/null +++ b/node_modules/chokidar/lib/nodefs-handler.js @@ -0,0 +1,654 @@ +'use strict'; + +const fs = require('fs'); +const sysPath = require('path'); +const { promisify } = require('util'); +const isBinaryPath = require('is-binary-path'); +const { + isWindows, + isLinux, + EMPTY_FN, + EMPTY_STR, + KEY_LISTENERS, + KEY_ERR, + KEY_RAW, + HANDLER_KEYS, + EV_CHANGE, + EV_ADD, + EV_ADD_DIR, + EV_ERROR, + STR_DATA, + STR_END, + BRACE_START, + STAR +} = require('./constants'); + +const THROTTLE_MODE_WATCH = 'watch'; + +const open = promisify(fs.open); +const stat = promisify(fs.stat); +const lstat = promisify(fs.lstat); +const close = promisify(fs.close); +const fsrealpath = promisify(fs.realpath); + +const statMethods = { lstat, stat }; + +// TODO: emit errors properly. Example: EMFILE on Macos. +const foreach = (val, fn) => { + if (val instanceof Set) { + val.forEach(fn); + } else { + fn(val); + } +}; + +const addAndConvert = (main, prop, item) => { + let container = main[prop]; + if (!(container instanceof Set)) { + main[prop] = container = new Set([container]); + } + container.add(item); +}; + +const clearItem = cont => key => { + const set = cont[key]; + if (set instanceof Set) { + set.clear(); + } else { + delete cont[key]; + } +}; + +const delFromSet = (main, prop, item) => { + const container = main[prop]; + if (container instanceof Set) { + container.delete(item); + } else if (container === item) { + delete main[prop]; + } +}; + +const isEmptySet = (val) => val instanceof Set ? val.size === 0 : !val; + +/** + * @typedef {String} Path + */ + +// fs_watch helpers + +// object to hold per-process fs_watch instances +// (may be shared across chokidar FSWatcher instances) + +/** + * @typedef {Object} FsWatchContainer + * @property {Set} listeners + * @property {Set} errHandlers + * @property {Set} rawEmitters + * @property {fs.FSWatcher=} watcher + * @property {Boolean=} watcherUnusable + */ + +/** + * @type {Map} + */ +const FsWatchInstances = new Map(); + +/** + * Instantiates the fs_watch interface + * @param {String} path to be watched + * @param {Object} options to be passed to fs_watch + * @param {Function} listener main event handler + * @param {Function} errHandler emits info about errors + * @param {Function} emitRaw emits raw event data + * @returns {fs.FSWatcher} new fsevents instance + */ +function createFsWatchInstance(path, options, listener, errHandler, emitRaw) { + const handleEvent = (rawEvent, evPath) => { + listener(path); + emitRaw(rawEvent, evPath, {watchedPath: path}); + + // emit based on events occurring for files from a directory's watcher in + // case the file's watcher misses it (and rely on throttling to de-dupe) + if (evPath && path !== evPath) { + fsWatchBroadcast( + sysPath.resolve(path, evPath), KEY_LISTENERS, sysPath.join(path, evPath) + ); + } + }; + try { + return fs.watch(path, options, handleEvent); + } catch (error) { + errHandler(error); + } +} + +/** + * Helper for passing fs_watch event data to a collection of listeners + * @param {Path} fullPath absolute path bound to fs_watch instance + * @param {String} type listener type + * @param {*=} val1 arguments to be passed to listeners + * @param {*=} val2 + * @param {*=} val3 + */ +const fsWatchBroadcast = (fullPath, type, val1, val2, val3) => { + const cont = FsWatchInstances.get(fullPath); + if (!cont) return; + foreach(cont[type], (listener) => { + listener(val1, val2, val3); + }); +}; + +/** + * Instantiates the fs_watch interface or binds listeners + * to an existing one covering the same file system entry + * @param {String} path + * @param {String} fullPath absolute path + * @param {Object} options to be passed to fs_watch + * @param {Object} handlers container for event listener functions + */ +const setFsWatchListener = (path, fullPath, options, handlers) => { + const {listener, errHandler, rawEmitter} = handlers; + let cont = FsWatchInstances.get(fullPath); + + /** @type {fs.FSWatcher=} */ + let watcher; + if (!options.persistent) { + watcher = createFsWatchInstance( + path, options, listener, errHandler, rawEmitter + ); + return watcher.close.bind(watcher); + } + if (cont) { + addAndConvert(cont, KEY_LISTENERS, listener); + addAndConvert(cont, KEY_ERR, errHandler); + addAndConvert(cont, KEY_RAW, rawEmitter); + } else { + watcher = createFsWatchInstance( + path, + options, + fsWatchBroadcast.bind(null, fullPath, KEY_LISTENERS), + errHandler, // no need to use broadcast here + fsWatchBroadcast.bind(null, fullPath, KEY_RAW) + ); + if (!watcher) return; + watcher.on(EV_ERROR, async (error) => { + const broadcastErr = fsWatchBroadcast.bind(null, fullPath, KEY_ERR); + cont.watcherUnusable = true; // documented since Node 10.4.1 + // Workaround for https://github.com/joyent/node/issues/4337 + if (isWindows && error.code === 'EPERM') { + try { + const fd = await open(path, 'r'); + await close(fd); + broadcastErr(error); + } catch (err) {} + } else { + broadcastErr(error); + } + }); + cont = { + listeners: listener, + errHandlers: errHandler, + rawEmitters: rawEmitter, + watcher + }; + FsWatchInstances.set(fullPath, cont); + } + // const index = cont.listeners.indexOf(listener); + + // removes this instance's listeners and closes the underlying fs_watch + // instance if there are no more listeners left + return () => { + delFromSet(cont, KEY_LISTENERS, listener); + delFromSet(cont, KEY_ERR, errHandler); + delFromSet(cont, KEY_RAW, rawEmitter); + if (isEmptySet(cont.listeners)) { + // Check to protect against issue gh-730. + // if (cont.watcherUnusable) { + cont.watcher.close(); + // } + FsWatchInstances.delete(fullPath); + HANDLER_KEYS.forEach(clearItem(cont)); + cont.watcher = undefined; + Object.freeze(cont); + } + }; +}; + +// fs_watchFile helpers + +// object to hold per-process fs_watchFile instances +// (may be shared across chokidar FSWatcher instances) +const FsWatchFileInstances = new Map(); + +/** + * Instantiates the fs_watchFile interface or binds listeners + * to an existing one covering the same file system entry + * @param {String} path to be watched + * @param {String} fullPath absolute path + * @param {Object} options options to be passed to fs_watchFile + * @param {Object} handlers container for event listener functions + * @returns {Function} closer + */ +const setFsWatchFileListener = (path, fullPath, options, handlers) => { + const {listener, rawEmitter} = handlers; + let cont = FsWatchFileInstances.get(fullPath); + + /* eslint-disable no-unused-vars, prefer-destructuring */ + let listeners = new Set(); + let rawEmitters = new Set(); + + const copts = cont && cont.options; + if (copts && (copts.persistent < options.persistent || copts.interval > options.interval)) { + // "Upgrade" the watcher to persistence or a quicker interval. + // This creates some unlikely edge case issues if the user mixes + // settings in a very weird way, but solving for those cases + // doesn't seem worthwhile for the added complexity. + listeners = cont.listeners; + rawEmitters = cont.rawEmitters; + fs.unwatchFile(fullPath); + cont = undefined; + } + + /* eslint-enable no-unused-vars, prefer-destructuring */ + + if (cont) { + addAndConvert(cont, KEY_LISTENERS, listener); + addAndConvert(cont, KEY_RAW, rawEmitter); + } else { + // TODO + // listeners.add(listener); + // rawEmitters.add(rawEmitter); + cont = { + listeners: listener, + rawEmitters: rawEmitter, + options, + watcher: fs.watchFile(fullPath, options, (curr, prev) => { + foreach(cont.rawEmitters, (rawEmitter) => { + rawEmitter(EV_CHANGE, fullPath, {curr, prev}); + }); + const currmtime = curr.mtimeMs; + if (curr.size !== prev.size || currmtime > prev.mtimeMs || currmtime === 0) { + foreach(cont.listeners, (listener) => listener(path, curr)); + } + }) + }; + FsWatchFileInstances.set(fullPath, cont); + } + // const index = cont.listeners.indexOf(listener); + + // Removes this instance's listeners and closes the underlying fs_watchFile + // instance if there are no more listeners left. + return () => { + delFromSet(cont, KEY_LISTENERS, listener); + delFromSet(cont, KEY_RAW, rawEmitter); + if (isEmptySet(cont.listeners)) { + FsWatchFileInstances.delete(fullPath); + fs.unwatchFile(fullPath); + cont.options = cont.watcher = undefined; + Object.freeze(cont); + } + }; +}; + +/** + * @mixin + */ +class NodeFsHandler { + +/** + * @param {import("../index").FSWatcher} fsW + */ +constructor(fsW) { + this.fsw = fsW; + this._boundHandleError = (error) => fsW._handleError(error); +} + +/** + * Watch file for changes with fs_watchFile or fs_watch. + * @param {String} path to file or dir + * @param {Function} listener on fs change + * @returns {Function} closer for the watcher instance + */ +_watchWithNodeFs(path, listener) { + const opts = this.fsw.options; + const directory = sysPath.dirname(path); + const basename = sysPath.basename(path); + const parent = this.fsw._getWatchedDir(directory); + parent.add(basename); + const absolutePath = sysPath.resolve(path); + const options = {persistent: opts.persistent}; + if (!listener) listener = EMPTY_FN; + + let closer; + if (opts.usePolling) { + options.interval = opts.enableBinaryInterval && isBinaryPath(basename) ? + opts.binaryInterval : opts.interval; + closer = setFsWatchFileListener(path, absolutePath, options, { + listener, + rawEmitter: this.fsw._emitRaw + }); + } else { + closer = setFsWatchListener(path, absolutePath, options, { + listener, + errHandler: this._boundHandleError, + rawEmitter: this.fsw._emitRaw + }); + } + return closer; +} + +/** + * Watch a file and emit add event if warranted. + * @param {Path} file Path + * @param {fs.Stats} stats result of fs_stat + * @param {Boolean} initialAdd was the file added at watch instantiation? + * @returns {Function} closer for the watcher instance + */ +_handleFile(file, stats, initialAdd) { + if (this.fsw.closed) { + return; + } + const dirname = sysPath.dirname(file); + const basename = sysPath.basename(file); + const parent = this.fsw._getWatchedDir(dirname); + // stats is always present + let prevStats = stats; + + // if the file is already being watched, do nothing + if (parent.has(basename)) return; + + const listener = async (path, newStats) => { + if (!this.fsw._throttle(THROTTLE_MODE_WATCH, file, 5)) return; + if (!newStats || newStats.mtimeMs === 0) { + try { + const newStats = await stat(file); + if (this.fsw.closed) return; + // Check that change event was not fired because of changed only accessTime. + const at = newStats.atimeMs; + const mt = newStats.mtimeMs; + if (!at || at <= mt || mt !== prevStats.mtimeMs) { + this.fsw._emit(EV_CHANGE, file, newStats); + } + if (isLinux && prevStats.ino !== newStats.ino) { + this.fsw._closeFile(path) + prevStats = newStats; + this.fsw._addPathCloser(path, this._watchWithNodeFs(file, listener)); + } else { + prevStats = newStats; + } + } catch (error) { + // Fix issues where mtime is null but file is still present + this.fsw._remove(dirname, basename); + } + // add is about to be emitted if file not already tracked in parent + } else if (parent.has(basename)) { + // Check that change event was not fired because of changed only accessTime. + const at = newStats.atimeMs; + const mt = newStats.mtimeMs; + if (!at || at <= mt || mt !== prevStats.mtimeMs) { + this.fsw._emit(EV_CHANGE, file, newStats); + } + prevStats = newStats; + } + } + // kick off the watcher + const closer = this._watchWithNodeFs(file, listener); + + // emit an add event if we're supposed to + if (!(initialAdd && this.fsw.options.ignoreInitial) && this.fsw._isntIgnored(file)) { + if (!this.fsw._throttle(EV_ADD, file, 0)) return; + this.fsw._emit(EV_ADD, file, stats); + } + + return closer; +} + +/** + * Handle symlinks encountered while reading a dir. + * @param {Object} entry returned by readdirp + * @param {String} directory path of dir being read + * @param {String} path of this item + * @param {String} item basename of this item + * @returns {Promise} true if no more processing is needed for this entry. + */ +async _handleSymlink(entry, directory, path, item) { + if (this.fsw.closed) { + return; + } + const full = entry.fullPath; + const dir = this.fsw._getWatchedDir(directory); + + if (!this.fsw.options.followSymlinks) { + // watch symlink directly (don't follow) and detect changes + this.fsw._incrReadyCount(); + + let linkPath; + try { + linkPath = await fsrealpath(path); + } catch (e) { + this.fsw._emitReady(); + return true; + } + + if (this.fsw.closed) return; + if (dir.has(item)) { + if (this.fsw._symlinkPaths.get(full) !== linkPath) { + this.fsw._symlinkPaths.set(full, linkPath); + this.fsw._emit(EV_CHANGE, path, entry.stats); + } + } else { + dir.add(item); + this.fsw._symlinkPaths.set(full, linkPath); + this.fsw._emit(EV_ADD, path, entry.stats); + } + this.fsw._emitReady(); + return true; + } + + // don't follow the same symlink more than once + if (this.fsw._symlinkPaths.has(full)) { + return true; + } + + this.fsw._symlinkPaths.set(full, true); +} + +_handleRead(directory, initialAdd, wh, target, dir, depth, throttler) { + // Normalize the directory name on Windows + directory = sysPath.join(directory, EMPTY_STR); + + if (!wh.hasGlob) { + throttler = this.fsw._throttle('readdir', directory, 1000); + if (!throttler) return; + } + + const previous = this.fsw._getWatchedDir(wh.path); + const current = new Set(); + + let stream = this.fsw._readdirp(directory, { + fileFilter: entry => wh.filterPath(entry), + directoryFilter: entry => wh.filterDir(entry), + depth: 0 + }).on(STR_DATA, async (entry) => { + if (this.fsw.closed) { + stream = undefined; + return; + } + const item = entry.path; + let path = sysPath.join(directory, item); + current.add(item); + + if (entry.stats.isSymbolicLink() && await this._handleSymlink(entry, directory, path, item)) { + return; + } + + if (this.fsw.closed) { + stream = undefined; + return; + } + // Files that present in current directory snapshot + // but absent in previous are added to watch list and + // emit `add` event. + if (item === target || !target && !previous.has(item)) { + this.fsw._incrReadyCount(); + + // ensure relativeness of path is preserved in case of watcher reuse + path = sysPath.join(dir, sysPath.relative(dir, path)); + + this._addToNodeFs(path, initialAdd, wh, depth + 1); + } + }).on(EV_ERROR, this._boundHandleError); + + return new Promise(resolve => + stream.once(STR_END, () => { + if (this.fsw.closed) { + stream = undefined; + return; + } + const wasThrottled = throttler ? throttler.clear() : false; + + resolve(); + + // Files that absent in current directory snapshot + // but present in previous emit `remove` event + // and are removed from @watched[directory]. + previous.getChildren().filter((item) => { + return item !== directory && + !current.has(item) && + // in case of intersecting globs; + // a path may have been filtered out of this readdir, but + // shouldn't be removed because it matches a different glob + (!wh.hasGlob || wh.filterPath({ + fullPath: sysPath.resolve(directory, item) + })); + }).forEach((item) => { + this.fsw._remove(directory, item); + }); + + stream = undefined; + + // one more time for any missed in case changes came in extremely quickly + if (wasThrottled) this._handleRead(directory, false, wh, target, dir, depth, throttler); + }) + ); +} + +/** + * Read directory to add / remove files from `@watched` list and re-read it on change. + * @param {String} dir fs path + * @param {fs.Stats} stats + * @param {Boolean} initialAdd + * @param {Number} depth relative to user-supplied path + * @param {String} target child path targeted for watch + * @param {Object} wh Common watch helpers for this path + * @param {String} realpath + * @returns {Promise} closer for the watcher instance. + */ +async _handleDir(dir, stats, initialAdd, depth, target, wh, realpath) { + const parentDir = this.fsw._getWatchedDir(sysPath.dirname(dir)); + const tracked = parentDir.has(sysPath.basename(dir)); + if (!(initialAdd && this.fsw.options.ignoreInitial) && !target && !tracked) { + if (!wh.hasGlob || wh.globFilter(dir)) this.fsw._emit(EV_ADD_DIR, dir, stats); + } + + // ensure dir is tracked (harmless if redundant) + parentDir.add(sysPath.basename(dir)); + this.fsw._getWatchedDir(dir); + let throttler; + let closer; + + const oDepth = this.fsw.options.depth; + if ((oDepth == null || depth <= oDepth) && !this.fsw._symlinkPaths.has(realpath)) { + if (!target) { + await this._handleRead(dir, initialAdd, wh, target, dir, depth, throttler); + if (this.fsw.closed) return; + } + + closer = this._watchWithNodeFs(dir, (dirPath, stats) => { + // if current directory is removed, do nothing + if (stats && stats.mtimeMs === 0) return; + + this._handleRead(dirPath, false, wh, target, dir, depth, throttler); + }); + } + return closer; +} + +/** + * Handle added file, directory, or glob pattern. + * Delegates call to _handleFile / _handleDir after checks. + * @param {String} path to file or ir + * @param {Boolean} initialAdd was the file added at watch instantiation? + * @param {Object} priorWh depth relative to user-supplied path + * @param {Number} depth Child path actually targeted for watch + * @param {String=} target Child path actually targeted for watch + * @returns {Promise} + */ +async _addToNodeFs(path, initialAdd, priorWh, depth, target) { + const ready = this.fsw._emitReady; + if (this.fsw._isIgnored(path) || this.fsw.closed) { + ready(); + return false; + } + + const wh = this.fsw._getWatchHelpers(path, depth); + if (!wh.hasGlob && priorWh) { + wh.hasGlob = priorWh.hasGlob; + wh.globFilter = priorWh.globFilter; + wh.filterPath = entry => priorWh.filterPath(entry); + wh.filterDir = entry => priorWh.filterDir(entry); + } + + // evaluate what is at the path we're being asked to watch + try { + const stats = await statMethods[wh.statMethod](wh.watchPath); + if (this.fsw.closed) return; + if (this.fsw._isIgnored(wh.watchPath, stats)) { + ready(); + return false; + } + + const follow = this.fsw.options.followSymlinks && !path.includes(STAR) && !path.includes(BRACE_START); + let closer; + if (stats.isDirectory()) { + const absPath = sysPath.resolve(path); + const targetPath = follow ? await fsrealpath(path) : path; + if (this.fsw.closed) return; + closer = await this._handleDir(wh.watchPath, stats, initialAdd, depth, target, wh, targetPath); + if (this.fsw.closed) return; + // preserve this symlink's target path + if (absPath !== targetPath && targetPath !== undefined) { + this.fsw._symlinkPaths.set(absPath, targetPath); + } + } else if (stats.isSymbolicLink()) { + const targetPath = follow ? await fsrealpath(path) : path; + if (this.fsw.closed) return; + const parent = sysPath.dirname(wh.watchPath); + this.fsw._getWatchedDir(parent).add(wh.watchPath); + this.fsw._emit(EV_ADD, wh.watchPath, stats); + closer = await this._handleDir(parent, stats, initialAdd, depth, path, wh, targetPath); + if (this.fsw.closed) return; + + // preserve this symlink's target path + if (targetPath !== undefined) { + this.fsw._symlinkPaths.set(sysPath.resolve(path), targetPath); + } + } else { + closer = this._handleFile(wh.watchPath, stats, initialAdd); + } + ready(); + + this.fsw._addPathCloser(path, closer); + return false; + + } catch (error) { + if (this.fsw._handleError(error)) { + ready(); + return path; + } + } +} + +} + +module.exports = NodeFsHandler; diff --git a/node_modules/chokidar/package.json b/node_modules/chokidar/package.json new file mode 100644 index 0000000..e8f8b3d --- /dev/null +++ b/node_modules/chokidar/package.json @@ -0,0 +1,70 @@ +{ + "name": "chokidar", + "description": "Minimal and efficient cross-platform file watching library", + "version": "3.6.0", + "homepage": "https://github.com/paulmillr/chokidar", + "author": "Paul Miller (https://paulmillr.com)", + "contributors": [ + "Paul Miller (https://paulmillr.com)", + "Elan Shanker" + ], + "engines": { + "node": ">= 8.10.0" + }, + "main": "index.js", + "types": "./types/index.d.ts", + "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" + }, + "devDependencies": { + "@types/node": "^14", + "chai": "^4.3", + "dtslint": "^3.3.0", + "eslint": "^7.0.0", + "mocha": "^7.0.0", + "rimraf": "^3.0.0", + "sinon": "^9.0.1", + "sinon-chai": "^3.3.0", + "typescript": "^4.4.3", + "upath": "^1.2.0" + }, + "files": [ + "index.js", + "lib/*.js", + "types/index.d.ts" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/paulmillr/chokidar.git" + }, + "bugs": { + "url": "https://github.com/paulmillr/chokidar/issues" + }, + "license": "MIT", + "scripts": { + "dtslint": "dtslint types", + "lint": "eslint --report-unused-disable-directives --ignore-path .gitignore .", + "build": "npm ls", + "mocha": "mocha --exit --timeout 90000", + "test": "npm run lint && npm run mocha" + }, + "keywords": [ + "fs", + "watch", + "watchFile", + "watcher", + "watching", + "file", + "fsevents" + ], + "funding": "https://paulmillr.com/funding/" +} diff --git a/node_modules/chokidar/types/index.d.ts b/node_modules/chokidar/types/index.d.ts new file mode 100644 index 0000000..4558066 --- /dev/null +++ b/node_modules/chokidar/types/index.d.ts @@ -0,0 +1,192 @@ +// TypeScript Version: 3.0 + +/// + +import * as fs from "fs"; +import { EventEmitter } from "events"; +import { Matcher } from 'anymatch'; + +export class FSWatcher extends EventEmitter implements fs.FSWatcher { + options: WatchOptions; + + /** + * Constructs a new FSWatcher instance with optional WatchOptions parameter. + */ + constructor(options?: WatchOptions); + + /** + * Add files, directories, or glob patterns for tracking. Takes an array of strings or just one + * string. + */ + add(paths: string | ReadonlyArray): this; + + /** + * Stop watching files, directories, or glob patterns. Takes an array of strings or just one + * string. + */ + unwatch(paths: string | ReadonlyArray): this; + + /** + * Returns an object representing all the paths on the file system being watched by this + * `FSWatcher` instance. The object's keys are all the directories (using absolute paths unless + * the `cwd` option was used), and the values are arrays of the names of the items contained in + * each directory. + */ + getWatched(): { + [directory: string]: string[]; + }; + + /** + * Removes all listeners from watched files. + */ + close(): Promise; + + on(event: 'add'|'addDir'|'change', listener: (path: string, stats?: fs.Stats) => void): this; + + on(event: 'all', listener: (eventName: 'add'|'addDir'|'change'|'unlink'|'unlinkDir', path: string, stats?: fs.Stats) => void): this; + + /** + * Error occurred + */ + on(event: 'error', listener: (error: Error) => void): this; + + /** + * Exposes the native Node `fs.FSWatcher events` + */ + on(event: 'raw', listener: (eventName: string, path: string, details: any) => void): this; + + /** + * Fires when the initial scan is complete + */ + on(event: 'ready', listener: () => void): this; + + on(event: 'unlink'|'unlinkDir', listener: (path: string) => void): this; + + on(event: string, listener: (...args: any[]) => void): this; + + ref(): this; + + unref(): this; +} + +export interface WatchOptions { + /** + * Indicates whether the process should continue to run as long as files are being watched. If + * set to `false` when using `fsevents` to watch, no more events will be emitted after `ready`, + * even if the process continues to run. + */ + persistent?: boolean; + + /** + * ([anymatch](https://github.com/micromatch/anymatch)-compatible definition) Defines files/paths to + * be ignored. The whole relative or absolute path is tested, not just filename. If a function + * with two arguments is provided, it gets called twice per path - once with a single argument + * (the path), second time with two arguments (the path and the + * [`fs.Stats`](https://nodejs.org/api/fs.html#fs_class_fs_stats) object of that path). + */ + ignored?: Matcher; + + /** + * If set to `false` then `add`/`addDir` events are also emitted for matching paths while + * instantiating the watching as chokidar discovers these file paths (before the `ready` event). + */ + ignoreInitial?: boolean; + + /** + * When `false`, only the symlinks themselves will be watched for changes instead of following + * the link references and bubbling events through the link's path. + */ + followSymlinks?: boolean; + + /** + * The base directory from which watch `paths` are to be derived. Paths emitted with events will + * be relative to this. + */ + cwd?: string; + + /** + * If set to true then the strings passed to .watch() and .add() are treated as literal path + * names, even if they look like globs. Default: false. + */ + disableGlobbing?: boolean; + + /** + * Whether to use fs.watchFile (backed by polling), or fs.watch. If polling leads to high CPU + * utilization, consider setting this to `false`. It is typically necessary to **set this to + * `true` to successfully watch files over a network**, and it may be necessary to successfully + * watch files in other non-standard situations. Setting to `true` explicitly on OS X overrides + * the `useFsEvents` default. + */ + usePolling?: boolean; + + /** + * Whether to use the `fsevents` watching interface if available. When set to `true` explicitly + * and `fsevents` is available this supercedes the `usePolling` setting. When set to `false` on + * OS X, `usePolling: true` becomes the default. + */ + useFsEvents?: boolean; + + /** + * If relying upon the [`fs.Stats`](https://nodejs.org/api/fs.html#fs_class_fs_stats) object that + * may get passed with `add`, `addDir`, and `change` events, set this to `true` to ensure it is + * provided even in cases where it wasn't already available from the underlying watch events. + */ + alwaysStat?: boolean; + + /** + * If set, limits how many levels of subdirectories will be traversed. + */ + depth?: number; + + /** + * Interval of file system polling. + */ + interval?: number; + + /** + * Interval of file system polling for binary files. ([see list of binary extensions](https://gi + * thub.com/sindresorhus/binary-extensions/blob/master/binary-extensions.json)) + */ + binaryInterval?: number; + + /** + * Indicates whether to watch files that don't have read permissions if possible. If watching + * fails due to `EPERM` or `EACCES` with this set to `true`, the errors will be suppressed + * silently. + */ + ignorePermissionErrors?: boolean; + + /** + * `true` if `useFsEvents` and `usePolling` are `false`). Automatically filters out artifacts + * that occur when using editors that use "atomic writes" instead of writing directly to the + * source file. If a file is re-added within 100 ms of being deleted, Chokidar emits a `change` + * event rather than `unlink` then `add`. If the default of 100 ms does not work well for you, + * you can override it by setting `atomic` to a custom value, in milliseconds. + */ + atomic?: boolean | number; + + /** + * can be set to an object in order to adjust timing params: + */ + awaitWriteFinish?: AwaitWriteFinishOptions | boolean; +} + +export interface AwaitWriteFinishOptions { + /** + * Amount of time in milliseconds for a file size to remain constant before emitting its event. + */ + stabilityThreshold?: number; + + /** + * File size polling interval. + */ + pollInterval?: number; +} + +/** + * produces an instance of `FSWatcher`. + */ +export function watch( + paths: string | ReadonlyArray, + options?: WatchOptions +): FSWatcher; diff --git a/node_modules/cliui/CHANGELOG.md b/node_modules/cliui/CHANGELOG.md new file mode 100644 index 0000000..61f06c3 --- /dev/null +++ b/node_modules/cliui/CHANGELOG.md @@ -0,0 +1,139 @@ +# Change Log + +All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. + +## [8.0.1](https://github.com/yargs/cliui/compare/v8.0.0...v8.0.1) (2022-10-01) + + +### Bug Fixes + +* **deps:** move rollup-plugin-ts to dev deps ([#124](https://github.com/yargs/cliui/issues/124)) ([7c8bd6b](https://github.com/yargs/cliui/commit/7c8bd6ba024d61e4eeae310c7959ab8ab6829081)) + +## [8.0.0](https://github.com/yargs/cliui/compare/v7.0.4...v8.0.0) (2022-09-30) + + +### ⚠ BREAKING CHANGES + +* **deps:** drop Node 10 to release CVE-2021-3807 patch (#122) + +### Bug Fixes + +* **deps:** drop Node 10 to release CVE-2021-3807 patch ([#122](https://github.com/yargs/cliui/issues/122)) ([f156571](https://github.com/yargs/cliui/commit/f156571ce4f2ebf313335e3a53ad905589da5a30)) + +### [7.0.4](https://www.github.com/yargs/cliui/compare/v7.0.3...v7.0.4) (2020-11-08) + + +### Bug Fixes + +* **deno:** import UIOptions from definitions ([#97](https://www.github.com/yargs/cliui/issues/97)) ([f04f343](https://www.github.com/yargs/cliui/commit/f04f3439bc78114c7e90f82ff56f5acf16268ea8)) + +### [7.0.3](https://www.github.com/yargs/cliui/compare/v7.0.2...v7.0.3) (2020-10-16) + + +### Bug Fixes + +* **exports:** node 13.0 and 13.1 require the dotted object form _with_ a string fallback ([#93](https://www.github.com/yargs/cliui/issues/93)) ([eca16fc](https://www.github.com/yargs/cliui/commit/eca16fc05d26255df3280906c36d7f0e5b05c6e9)) + +### [7.0.2](https://www.github.com/yargs/cliui/compare/v7.0.1...v7.0.2) (2020-10-14) + + +### Bug Fixes + +* **exports:** node 13.0-13.6 require a string fallback ([#91](https://www.github.com/yargs/cliui/issues/91)) ([b529d7e](https://www.github.com/yargs/cliui/commit/b529d7e432901af1af7848b23ed6cf634497d961)) + +### [7.0.1](https://www.github.com/yargs/cliui/compare/v7.0.0...v7.0.1) (2020-08-16) + + +### Bug Fixes + +* **build:** main should be build/index.cjs ([dc29a3c](https://www.github.com/yargs/cliui/commit/dc29a3cc617a410aa850e06337b5954b04f2cb4d)) + +## [7.0.0](https://www.github.com/yargs/cliui/compare/v6.0.0...v7.0.0) (2020-08-16) + + +### ⚠ BREAKING CHANGES + +* tsc/ESM/Deno support (#82) +* modernize deps and build (#80) + +### Build System + +* modernize deps and build ([#80](https://www.github.com/yargs/cliui/issues/80)) ([339d08d](https://www.github.com/yargs/cliui/commit/339d08dc71b15a3928aeab09042af94db2f43743)) + + +### Code Refactoring + +* tsc/ESM/Deno support ([#82](https://www.github.com/yargs/cliui/issues/82)) ([4b777a5](https://www.github.com/yargs/cliui/commit/4b777a5fe01c5d8958c6708695d6aab7dbe5706c)) + +## [6.0.0](https://www.github.com/yargs/cliui/compare/v5.0.0...v6.0.0) (2019-11-10) + + +### ⚠ BREAKING CHANGES + +* update deps, drop Node 6 + +### Code Refactoring + +* update deps, drop Node 6 ([62056df](https://www.github.com/yargs/cliui/commit/62056df)) + +## [5.0.0](https://github.com/yargs/cliui/compare/v4.1.0...v5.0.0) (2019-04-10) + + +### Bug Fixes + +* Update wrap-ansi to fix compatibility with latest versions of chalk. ([#60](https://github.com/yargs/cliui/issues/60)) ([7bf79ae](https://github.com/yargs/cliui/commit/7bf79ae)) + + +### BREAKING CHANGES + +* Drop support for node < 6. + + + +
+## [4.1.0](https://github.com/yargs/cliui/compare/v4.0.0...v4.1.0) (2018-04-23) + + +### Features + +* add resetOutput method ([#57](https://github.com/yargs/cliui/issues/57)) ([7246902](https://github.com/yargs/cliui/commit/7246902)) + + + + +## [4.0.0](https://github.com/yargs/cliui/compare/v3.2.0...v4.0.0) (2017-12-18) + + +### Bug Fixes + +* downgrades strip-ansi to version 3.0.1 ([#54](https://github.com/yargs/cliui/issues/54)) ([5764c46](https://github.com/yargs/cliui/commit/5764c46)) +* set env variable FORCE_COLOR. ([#56](https://github.com/yargs/cliui/issues/56)) ([7350e36](https://github.com/yargs/cliui/commit/7350e36)) + + +### Chores + +* drop support for node < 4 ([#53](https://github.com/yargs/cliui/issues/53)) ([b105376](https://github.com/yargs/cliui/commit/b105376)) + + +### Features + +* add fallback for window width ([#45](https://github.com/yargs/cliui/issues/45)) ([d064922](https://github.com/yargs/cliui/commit/d064922)) + + +### BREAKING CHANGES + +* officially drop support for Node < 4 + + + + +## [3.2.0](https://github.com/yargs/cliui/compare/v3.1.2...v3.2.0) (2016-04-11) + + +### Bug Fixes + +* reduces tarball size ([acc6c33](https://github.com/yargs/cliui/commit/acc6c33)) + +### Features + +* adds standard-version for release management ([ff84e32](https://github.com/yargs/cliui/commit/ff84e32)) diff --git a/node_modules/cliui/LICENSE.txt b/node_modules/cliui/LICENSE.txt new file mode 100644 index 0000000..c7e2747 --- /dev/null +++ b/node_modules/cliui/LICENSE.txt @@ -0,0 +1,14 @@ +Copyright (c) 2015, Contributors + +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. diff --git a/node_modules/cliui/README.md b/node_modules/cliui/README.md new file mode 100644 index 0000000..65b5672 --- /dev/null +++ b/node_modules/cliui/README.md @@ -0,0 +1,141 @@ +# cliui + +![ci](https://github.com/yargs/cliui/workflows/ci/badge.svg) +[![NPM version](https://img.shields.io/npm/v/cliui.svg)](https://www.npmjs.com/package/cliui) +[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg)](https://conventionalcommits.org) +![nycrc config on GitHub](https://img.shields.io/nycrc/yargs/cliui) + +easily create complex multi-column command-line-interfaces. + +## Example + +```js +const ui = require('cliui')() + +ui.div('Usage: $0 [command] [options]') + +ui.div({ + text: 'Options:', + padding: [2, 0, 1, 0] +}) + +ui.div( + { + text: "-f, --file", + width: 20, + padding: [0, 4, 0, 4] + }, + { + text: "the file to load." + + chalk.green("(if this description is long it wraps).") + , + width: 20 + }, + { + text: chalk.red("[required]"), + align: 'right' + } +) + +console.log(ui.toString()) +``` + +## Deno/ESM Support + +As of `v7` `cliui` supports [Deno](https://github.com/denoland/deno) and +[ESM](https://nodejs.org/api/esm.html#esm_ecmascript_modules): + +```typescript +import cliui from "https://deno.land/x/cliui/deno.ts"; + +const ui = cliui({}) + +ui.div('Usage: $0 [command] [options]') + +ui.div({ + text: 'Options:', + padding: [2, 0, 1, 0] +}) + +ui.div({ + text: "-f, --file", + width: 20, + padding: [0, 4, 0, 4] +}) + +console.log(ui.toString()) +``` + + + +## Layout DSL + +cliui exposes a simple layout DSL: + +If you create a single `ui.div`, passing a string rather than an +object: + +* `\n`: characters will be interpreted as new rows. +* `\t`: characters will be interpreted as new columns. +* `\s`: characters will be interpreted as padding. + +**as an example...** + +```js +var ui = require('./')({ + width: 60 +}) + +ui.div( + 'Usage: node ./bin/foo.js\n' + + ' \t provide a regex\n' + + ' \t provide a glob\t [required]' +) + +console.log(ui.toString()) +``` + +**will output:** + +```shell +Usage: node ./bin/foo.js + provide a regex + provide a glob [required] +``` + +## Methods + +```js +cliui = require('cliui') +``` + +### cliui({width: integer}) + +Specify the maximum width of the UI being generated. +If no width is provided, cliui will try to get the current window's width and use it, and if that doesn't work, width will be set to `80`. + +### cliui({wrap: boolean}) + +Enable or disable the wrapping of text in a column. + +### cliui.div(column, column, column) + +Create a row with any number of columns, a column +can either be a string, or an object with the following +options: + +* **text:** some text to place in the column. +* **width:** the width of a column. +* **align:** alignment, `right` or `center`. +* **padding:** `[top, right, bottom, left]`. +* **border:** should a border be placed around the div? + +### cliui.span(column, column, column) + +Similar to `div`, except the next row will be appended without +a new line being created. + +### cliui.resetOutput() + +Resets the UI elements of the current cliui instance, maintaining the values +set for `width` and `wrap`. diff --git a/node_modules/cliui/build/index.cjs b/node_modules/cliui/build/index.cjs new file mode 100644 index 0000000..82126b6 --- /dev/null +++ b/node_modules/cliui/build/index.cjs @@ -0,0 +1,302 @@ +'use strict'; + +const align = { + right: alignRight, + center: alignCenter +}; +const top = 0; +const right = 1; +const bottom = 2; +const left = 3; +class UI { + constructor(opts) { + var _a; + this.width = opts.width; + this.wrap = (_a = opts.wrap) !== null && _a !== void 0 ? _a : true; + this.rows = []; + } + span(...args) { + const cols = this.div(...args); + cols.span = true; + } + resetOutput() { + this.rows = []; + } + div(...args) { + if (args.length === 0) { + this.div(''); + } + if (this.wrap && this.shouldApplyLayoutDSL(...args) && typeof args[0] === 'string') { + return this.applyLayoutDSL(args[0]); + } + const cols = args.map(arg => { + if (typeof arg === 'string') { + return this.colFromString(arg); + } + return arg; + }); + this.rows.push(cols); + return cols; + } + shouldApplyLayoutDSL(...args) { + return args.length === 1 && typeof args[0] === 'string' && + /[\t\n]/.test(args[0]); + } + applyLayoutDSL(str) { + const rows = str.split('\n').map(row => row.split('\t')); + let leftColumnWidth = 0; + // simple heuristic for layout, make sure the + // second column lines up along the left-hand. + // don't allow the first column to take up more + // than 50% of the screen. + rows.forEach(columns => { + if (columns.length > 1 && mixin.stringWidth(columns[0]) > leftColumnWidth) { + leftColumnWidth = Math.min(Math.floor(this.width * 0.5), mixin.stringWidth(columns[0])); + } + }); + // generate a table: + // replacing ' ' with padding calculations. + // using the algorithmically generated width. + rows.forEach(columns => { + this.div(...columns.map((r, i) => { + return { + text: r.trim(), + padding: this.measurePadding(r), + width: (i === 0 && columns.length > 1) ? leftColumnWidth : undefined + }; + })); + }); + return this.rows[this.rows.length - 1]; + } + colFromString(text) { + return { + text, + padding: this.measurePadding(text) + }; + } + measurePadding(str) { + // measure padding without ansi escape codes + const noAnsi = mixin.stripAnsi(str); + return [0, noAnsi.match(/\s*$/)[0].length, 0, noAnsi.match(/^\s*/)[0].length]; + } + toString() { + const lines = []; + this.rows.forEach(row => { + this.rowToString(row, lines); + }); + // don't display any lines with the + // hidden flag set. + return lines + .filter(line => !line.hidden) + .map(line => line.text) + .join('\n'); + } + rowToString(row, lines) { + this.rasterize(row).forEach((rrow, r) => { + let str = ''; + rrow.forEach((col, c) => { + const { width } = row[c]; // the width with padding. + const wrapWidth = this.negatePadding(row[c]); // the width without padding. + let ts = col; // temporary string used during alignment/padding. + if (wrapWidth > mixin.stringWidth(col)) { + ts += ' '.repeat(wrapWidth - mixin.stringWidth(col)); + } + // align the string within its column. + if (row[c].align && row[c].align !== 'left' && this.wrap) { + const fn = align[row[c].align]; + ts = fn(ts, wrapWidth); + if (mixin.stringWidth(ts) < wrapWidth) { + ts += ' '.repeat((width || 0) - mixin.stringWidth(ts) - 1); + } + } + // apply border and padding to string. + const padding = row[c].padding || [0, 0, 0, 0]; + if (padding[left]) { + str += ' '.repeat(padding[left]); + } + str += addBorder(row[c], ts, '| '); + str += ts; + str += addBorder(row[c], ts, ' |'); + if (padding[right]) { + str += ' '.repeat(padding[right]); + } + // if prior row is span, try to render the + // current row on the prior line. + if (r === 0 && lines.length > 0) { + str = this.renderInline(str, lines[lines.length - 1]); + } + }); + // remove trailing whitespace. + lines.push({ + text: str.replace(/ +$/, ''), + span: row.span + }); + }); + return lines; + } + // if the full 'source' can render in + // the target line, do so. + renderInline(source, previousLine) { + const match = source.match(/^ */); + const leadingWhitespace = match ? match[0].length : 0; + const target = previousLine.text; + const targetTextWidth = mixin.stringWidth(target.trimRight()); + if (!previousLine.span) { + return source; + } + // if we're not applying wrapping logic, + // just always append to the span. + if (!this.wrap) { + previousLine.hidden = true; + return target + source; + } + if (leadingWhitespace < targetTextWidth) { + return source; + } + previousLine.hidden = true; + return target.trimRight() + ' '.repeat(leadingWhitespace - targetTextWidth) + source.trimLeft(); + } + rasterize(row) { + const rrows = []; + const widths = this.columnWidths(row); + let wrapped; + // word wrap all columns, and create + // a data-structure that is easy to rasterize. + row.forEach((col, c) => { + // leave room for left and right padding. + col.width = widths[c]; + if (this.wrap) { + wrapped = mixin.wrap(col.text, this.negatePadding(col), { hard: true }).split('\n'); + } + else { + wrapped = col.text.split('\n'); + } + if (col.border) { + wrapped.unshift('.' + '-'.repeat(this.negatePadding(col) + 2) + '.'); + wrapped.push("'" + '-'.repeat(this.negatePadding(col) + 2) + "'"); + } + // add top and bottom padding. + if (col.padding) { + wrapped.unshift(...new Array(col.padding[top] || 0).fill('')); + wrapped.push(...new Array(col.padding[bottom] || 0).fill('')); + } + wrapped.forEach((str, r) => { + if (!rrows[r]) { + rrows.push([]); + } + const rrow = rrows[r]; + for (let i = 0; i < c; i++) { + if (rrow[i] === undefined) { + rrow.push(''); + } + } + rrow.push(str); + }); + }); + return rrows; + } + negatePadding(col) { + let wrapWidth = col.width || 0; + if (col.padding) { + wrapWidth -= (col.padding[left] || 0) + (col.padding[right] || 0); + } + if (col.border) { + wrapWidth -= 4; + } + return wrapWidth; + } + columnWidths(row) { + if (!this.wrap) { + return row.map(col => { + return col.width || mixin.stringWidth(col.text); + }); + } + let unset = row.length; + let remainingWidth = this.width; + // column widths can be set in config. + const widths = row.map(col => { + if (col.width) { + unset--; + remainingWidth -= col.width; + return col.width; + } + return undefined; + }); + // any unset widths should be calculated. + const unsetWidth = unset ? Math.floor(remainingWidth / unset) : 0; + return widths.map((w, i) => { + if (w === undefined) { + return Math.max(unsetWidth, _minWidth(row[i])); + } + return w; + }); + } +} +function addBorder(col, ts, style) { + if (col.border) { + if (/[.']-+[.']/.test(ts)) { + return ''; + } + if (ts.trim().length !== 0) { + return style; + } + return ' '; + } + return ''; +} +// calculates the minimum width of +// a column, based on padding preferences. +function _minWidth(col) { + const padding = col.padding || []; + const minWidth = 1 + (padding[left] || 0) + (padding[right] || 0); + if (col.border) { + return minWidth + 4; + } + return minWidth; +} +function getWindowWidth() { + /* istanbul ignore next: depends on terminal */ + if (typeof process === 'object' && process.stdout && process.stdout.columns) { + return process.stdout.columns; + } + return 80; +} +function alignRight(str, width) { + str = str.trim(); + const strWidth = mixin.stringWidth(str); + if (strWidth < width) { + return ' '.repeat(width - strWidth) + str; + } + return str; +} +function alignCenter(str, width) { + str = str.trim(); + const strWidth = mixin.stringWidth(str); + /* istanbul ignore next */ + if (strWidth >= width) { + return str; + } + return ' '.repeat((width - strWidth) >> 1) + str; +} +let mixin; +function cliui(opts, _mixin) { + mixin = _mixin; + return new UI({ + width: (opts === null || opts === void 0 ? void 0 : opts.width) || getWindowWidth(), + wrap: opts === null || opts === void 0 ? void 0 : opts.wrap + }); +} + +// Bootstrap cliui with CommonJS dependencies: +const stringWidth = require('string-width'); +const stripAnsi = require('strip-ansi'); +const wrap = require('wrap-ansi'); +function ui(opts) { + return cliui(opts, { + stringWidth, + stripAnsi, + wrap + }); +} + +module.exports = ui; diff --git a/node_modules/cliui/build/index.d.cts b/node_modules/cliui/build/index.d.cts new file mode 100644 index 0000000..4567f94 --- /dev/null +++ b/node_modules/cliui/build/index.d.cts @@ -0,0 +1,43 @@ +interface UIOptions { + width: number; + wrap?: boolean; + rows?: string[]; +} +interface Column { + text: string; + width?: number; + align?: "right" | "left" | "center"; + padding: number[]; + border?: boolean; +} +interface ColumnArray extends Array { + span: boolean; +} +interface Line { + hidden?: boolean; + text: string; + span?: boolean; +} +declare class UI { + width: number; + wrap: boolean; + rows: ColumnArray[]; + constructor(opts: UIOptions); + span(...args: ColumnArray): void; + resetOutput(): void; + div(...args: (Column | string)[]): ColumnArray; + private shouldApplyLayoutDSL; + private applyLayoutDSL; + private colFromString; + private measurePadding; + toString(): string; + rowToString(row: ColumnArray, lines: Line[]): Line[]; + // if the full 'source' can render in + // the target line, do so. + private renderInline; + private rasterize; + private negatePadding; + private columnWidths; +} +declare function ui(opts: UIOptions): UI; +export { ui as default }; diff --git a/node_modules/cliui/build/lib/index.js b/node_modules/cliui/build/lib/index.js new file mode 100644 index 0000000..b6eb054 --- /dev/null +++ b/node_modules/cliui/build/lib/index.js @@ -0,0 +1,287 @@ +'use strict'; +const align = { + right: alignRight, + center: alignCenter +}; +const top = 0; +const right = 1; +const bottom = 2; +const left = 3; +export class UI { + constructor(opts) { + var _a; + this.width = opts.width; + this.wrap = (_a = opts.wrap) !== null && _a !== void 0 ? _a : true; + this.rows = []; + } + span(...args) { + const cols = this.div(...args); + cols.span = true; + } + resetOutput() { + this.rows = []; + } + div(...args) { + if (args.length === 0) { + this.div(''); + } + if (this.wrap && this.shouldApplyLayoutDSL(...args) && typeof args[0] === 'string') { + return this.applyLayoutDSL(args[0]); + } + const cols = args.map(arg => { + if (typeof arg === 'string') { + return this.colFromString(arg); + } + return arg; + }); + this.rows.push(cols); + return cols; + } + shouldApplyLayoutDSL(...args) { + return args.length === 1 && typeof args[0] === 'string' && + /[\t\n]/.test(args[0]); + } + applyLayoutDSL(str) { + const rows = str.split('\n').map(row => row.split('\t')); + let leftColumnWidth = 0; + // simple heuristic for layout, make sure the + // second column lines up along the left-hand. + // don't allow the first column to take up more + // than 50% of the screen. + rows.forEach(columns => { + if (columns.length > 1 && mixin.stringWidth(columns[0]) > leftColumnWidth) { + leftColumnWidth = Math.min(Math.floor(this.width * 0.5), mixin.stringWidth(columns[0])); + } + }); + // generate a table: + // replacing ' ' with padding calculations. + // using the algorithmically generated width. + rows.forEach(columns => { + this.div(...columns.map((r, i) => { + return { + text: r.trim(), + padding: this.measurePadding(r), + width: (i === 0 && columns.length > 1) ? leftColumnWidth : undefined + }; + })); + }); + return this.rows[this.rows.length - 1]; + } + colFromString(text) { + return { + text, + padding: this.measurePadding(text) + }; + } + measurePadding(str) { + // measure padding without ansi escape codes + const noAnsi = mixin.stripAnsi(str); + return [0, noAnsi.match(/\s*$/)[0].length, 0, noAnsi.match(/^\s*/)[0].length]; + } + toString() { + const lines = []; + this.rows.forEach(row => { + this.rowToString(row, lines); + }); + // don't display any lines with the + // hidden flag set. + return lines + .filter(line => !line.hidden) + .map(line => line.text) + .join('\n'); + } + rowToString(row, lines) { + this.rasterize(row).forEach((rrow, r) => { + let str = ''; + rrow.forEach((col, c) => { + const { width } = row[c]; // the width with padding. + const wrapWidth = this.negatePadding(row[c]); // the width without padding. + let ts = col; // temporary string used during alignment/padding. + if (wrapWidth > mixin.stringWidth(col)) { + ts += ' '.repeat(wrapWidth - mixin.stringWidth(col)); + } + // align the string within its column. + if (row[c].align && row[c].align !== 'left' && this.wrap) { + const fn = align[row[c].align]; + ts = fn(ts, wrapWidth); + if (mixin.stringWidth(ts) < wrapWidth) { + ts += ' '.repeat((width || 0) - mixin.stringWidth(ts) - 1); + } + } + // apply border and padding to string. + const padding = row[c].padding || [0, 0, 0, 0]; + if (padding[left]) { + str += ' '.repeat(padding[left]); + } + str += addBorder(row[c], ts, '| '); + str += ts; + str += addBorder(row[c], ts, ' |'); + if (padding[right]) { + str += ' '.repeat(padding[right]); + } + // if prior row is span, try to render the + // current row on the prior line. + if (r === 0 && lines.length > 0) { + str = this.renderInline(str, lines[lines.length - 1]); + } + }); + // remove trailing whitespace. + lines.push({ + text: str.replace(/ +$/, ''), + span: row.span + }); + }); + return lines; + } + // if the full 'source' can render in + // the target line, do so. + renderInline(source, previousLine) { + const match = source.match(/^ */); + const leadingWhitespace = match ? match[0].length : 0; + const target = previousLine.text; + const targetTextWidth = mixin.stringWidth(target.trimRight()); + if (!previousLine.span) { + return source; + } + // if we're not applying wrapping logic, + // just always append to the span. + if (!this.wrap) { + previousLine.hidden = true; + return target + source; + } + if (leadingWhitespace < targetTextWidth) { + return source; + } + previousLine.hidden = true; + return target.trimRight() + ' '.repeat(leadingWhitespace - targetTextWidth) + source.trimLeft(); + } + rasterize(row) { + const rrows = []; + const widths = this.columnWidths(row); + let wrapped; + // word wrap all columns, and create + // a data-structure that is easy to rasterize. + row.forEach((col, c) => { + // leave room for left and right padding. + col.width = widths[c]; + if (this.wrap) { + wrapped = mixin.wrap(col.text, this.negatePadding(col), { hard: true }).split('\n'); + } + else { + wrapped = col.text.split('\n'); + } + if (col.border) { + wrapped.unshift('.' + '-'.repeat(this.negatePadding(col) + 2) + '.'); + wrapped.push("'" + '-'.repeat(this.negatePadding(col) + 2) + "'"); + } + // add top and bottom padding. + if (col.padding) { + wrapped.unshift(...new Array(col.padding[top] || 0).fill('')); + wrapped.push(...new Array(col.padding[bottom] || 0).fill('')); + } + wrapped.forEach((str, r) => { + if (!rrows[r]) { + rrows.push([]); + } + const rrow = rrows[r]; + for (let i = 0; i < c; i++) { + if (rrow[i] === undefined) { + rrow.push(''); + } + } + rrow.push(str); + }); + }); + return rrows; + } + negatePadding(col) { + let wrapWidth = col.width || 0; + if (col.padding) { + wrapWidth -= (col.padding[left] || 0) + (col.padding[right] || 0); + } + if (col.border) { + wrapWidth -= 4; + } + return wrapWidth; + } + columnWidths(row) { + if (!this.wrap) { + return row.map(col => { + return col.width || mixin.stringWidth(col.text); + }); + } + let unset = row.length; + let remainingWidth = this.width; + // column widths can be set in config. + const widths = row.map(col => { + if (col.width) { + unset--; + remainingWidth -= col.width; + return col.width; + } + return undefined; + }); + // any unset widths should be calculated. + const unsetWidth = unset ? Math.floor(remainingWidth / unset) : 0; + return widths.map((w, i) => { + if (w === undefined) { + return Math.max(unsetWidth, _minWidth(row[i])); + } + return w; + }); + } +} +function addBorder(col, ts, style) { + if (col.border) { + if (/[.']-+[.']/.test(ts)) { + return ''; + } + if (ts.trim().length !== 0) { + return style; + } + return ' '; + } + return ''; +} +// calculates the minimum width of +// a column, based on padding preferences. +function _minWidth(col) { + const padding = col.padding || []; + const minWidth = 1 + (padding[left] || 0) + (padding[right] || 0); + if (col.border) { + return minWidth + 4; + } + return minWidth; +} +function getWindowWidth() { + /* istanbul ignore next: depends on terminal */ + if (typeof process === 'object' && process.stdout && process.stdout.columns) { + return process.stdout.columns; + } + return 80; +} +function alignRight(str, width) { + str = str.trim(); + const strWidth = mixin.stringWidth(str); + if (strWidth < width) { + return ' '.repeat(width - strWidth) + str; + } + return str; +} +function alignCenter(str, width) { + str = str.trim(); + const strWidth = mixin.stringWidth(str); + /* istanbul ignore next */ + if (strWidth >= width) { + return str; + } + return ' '.repeat((width - strWidth) >> 1) + str; +} +let mixin; +export function cliui(opts, _mixin) { + mixin = _mixin; + return new UI({ + width: (opts === null || opts === void 0 ? void 0 : opts.width) || getWindowWidth(), + wrap: opts === null || opts === void 0 ? void 0 : opts.wrap + }); +} diff --git a/node_modules/cliui/build/lib/string-utils.js b/node_modules/cliui/build/lib/string-utils.js new file mode 100644 index 0000000..4b87453 --- /dev/null +++ b/node_modules/cliui/build/lib/string-utils.js @@ -0,0 +1,27 @@ +// Minimal replacement for ansi string helpers "wrap-ansi" and "strip-ansi". +// to facilitate ESM and Deno modules. +// TODO: look at porting https://www.npmjs.com/package/wrap-ansi to ESM. +// The npm application +// Copyright (c) npm, Inc. and Contributors +// Licensed on the terms of The Artistic License 2.0 +// See: https://github.com/npm/cli/blob/4c65cd952bc8627811735bea76b9b110cc4fc80e/lib/utils/ansi-trim.js +const ansi = new RegExp('\x1b(?:\\[(?:\\d+[ABCDEFGJKSTm]|\\d+;\\d+[Hfm]|' + + '\\d+;\\d+;\\d+m|6n|s|u|\\?25[lh])|\\w)', 'g'); +export function stripAnsi(str) { + return str.replace(ansi, ''); +} +export function wrap(str, width) { + const [start, end] = str.match(ansi) || ['', '']; + str = stripAnsi(str); + let wrapped = ''; + for (let i = 0; i < str.length; i++) { + if (i !== 0 && (i % width) === 0) { + wrapped += '\n'; + } + wrapped += str.charAt(i); + } + if (start && end) { + wrapped = `${start}${wrapped}${end}`; + } + return wrapped; +} diff --git a/node_modules/cliui/index.mjs b/node_modules/cliui/index.mjs new file mode 100644 index 0000000..bc7a022 --- /dev/null +++ b/node_modules/cliui/index.mjs @@ -0,0 +1,13 @@ +// Bootstrap cliui with CommonJS dependencies: +import { cliui } from './build/lib/index.js' +import { wrap, stripAnsi } from './build/lib/string-utils.js' + +export default function ui (opts) { + return cliui(opts, { + stringWidth: (str) => { + return [...str].length + }, + stripAnsi, + wrap + }) +} diff --git a/node_modules/cliui/package.json b/node_modules/cliui/package.json new file mode 100644 index 0000000..eab6bf4 --- /dev/null +++ b/node_modules/cliui/package.json @@ -0,0 +1,83 @@ +{ + "name": "cliui", + "version": "8.0.1", + "description": "easily create complex multi-column command-line-interfaces", + "main": "build/index.cjs", + "exports": { + ".": [ + { + "import": "./index.mjs", + "require": "./build/index.cjs" + }, + "./build/index.cjs" + ] + }, + "type": "module", + "module": "./index.mjs", + "scripts": { + "check": "standardx '**/*.ts' && standardx '**/*.js' && standardx '**/*.cjs'", + "fix": "standardx --fix '**/*.ts' && standardx --fix '**/*.js' && standardx --fix '**/*.cjs'", + "pretest": "rimraf build && tsc -p tsconfig.test.json && cross-env NODE_ENV=test npm run build:cjs", + "test": "c8 mocha ./test/*.cjs", + "test:esm": "c8 mocha ./test/esm/cliui-test.mjs", + "postest": "check", + "coverage": "c8 report --check-coverage", + "precompile": "rimraf build", + "compile": "tsc", + "postcompile": "npm run build:cjs", + "build:cjs": "rollup -c", + "prepare": "npm run compile" + }, + "repository": "yargs/cliui", + "standard": { + "ignore": [ + "**/example/**" + ], + "globals": [ + "it" + ] + }, + "keywords": [ + "cli", + "command-line", + "layout", + "design", + "console", + "wrap", + "table" + ], + "author": "Ben Coe ", + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "devDependencies": { + "@types/node": "^14.0.27", + "@typescript-eslint/eslint-plugin": "^4.0.0", + "@typescript-eslint/parser": "^4.0.0", + "c8": "^7.3.0", + "chai": "^4.2.0", + "chalk": "^4.1.0", + "cross-env": "^7.0.2", + "eslint": "^7.6.0", + "eslint-plugin-import": "^2.22.0", + "eslint-plugin-node": "^11.1.0", + "gts": "^3.0.0", + "mocha": "^10.0.0", + "rimraf": "^3.0.2", + "rollup": "^2.23.1", + "rollup-plugin-ts": "^3.0.2", + "standardx": "^7.0.0", + "typescript": "^4.0.0" + }, + "files": [ + "build", + "index.mjs", + "!*.d.ts" + ], + "engines": { + "node": ">=12" + } +} diff --git a/node_modules/color-convert/CHANGELOG.md b/node_modules/color-convert/CHANGELOG.md new file mode 100644 index 0000000..0a7bce4 --- /dev/null +++ b/node_modules/color-convert/CHANGELOG.md @@ -0,0 +1,54 @@ +# 1.0.0 - 2016-01-07 + +- Removed: unused speed test +- Added: Automatic routing between previously unsupported conversions +([#27](https://github.com/Qix-/color-convert/pull/27)) +- Removed: `xxx2xxx()` and `xxx2xxxRaw()` functions +([#27](https://github.com/Qix-/color-convert/pull/27)) +- Removed: `convert()` class +([#27](https://github.com/Qix-/color-convert/pull/27)) +- Changed: all functions to lookup dictionary +([#27](https://github.com/Qix-/color-convert/pull/27)) +- Changed: `ansi` to `ansi256` +([#27](https://github.com/Qix-/color-convert/pull/27)) +- Fixed: argument grouping for functions requiring only one argument +([#27](https://github.com/Qix-/color-convert/pull/27)) + +# 0.6.0 - 2015-07-23 + +- Added: methods to handle +[ANSI](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors) 16/256 colors: + - rgb2ansi16 + - rgb2ansi + - hsl2ansi16 + - hsl2ansi + - hsv2ansi16 + - hsv2ansi + - hwb2ansi16 + - hwb2ansi + - cmyk2ansi16 + - cmyk2ansi + - keyword2ansi16 + - keyword2ansi + - ansi162rgb + - ansi162hsl + - ansi162hsv + - ansi162hwb + - ansi162cmyk + - ansi162keyword + - ansi2rgb + - ansi2hsl + - ansi2hsv + - ansi2hwb + - ansi2cmyk + - ansi2keyword +([#18](https://github.com/harthur/color-convert/pull/18)) + +# 0.5.3 - 2015-06-02 + +- Fixed: hsl2hsv does not return `NaN` anymore when using `[0,0,0]` +([#15](https://github.com/harthur/color-convert/issues/15)) + +--- + +Check out commit logs for older releases diff --git a/node_modules/color-convert/LICENSE b/node_modules/color-convert/LICENSE new file mode 100644 index 0000000..5b4c386 --- /dev/null +++ b/node_modules/color-convert/LICENSE @@ -0,0 +1,21 @@ +Copyright (c) 2011-2016 Heather Arthur + +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. + diff --git a/node_modules/color-convert/README.md b/node_modules/color-convert/README.md new file mode 100644 index 0000000..d4b08fc --- /dev/null +++ b/node_modules/color-convert/README.md @@ -0,0 +1,68 @@ +# color-convert + +[![Build Status](https://travis-ci.org/Qix-/color-convert.svg?branch=master)](https://travis-ci.org/Qix-/color-convert) + +Color-convert is a color conversion library for JavaScript and node. +It converts all ways between `rgb`, `hsl`, `hsv`, `hwb`, `cmyk`, `ansi`, `ansi16`, `hex` strings, and CSS `keyword`s (will round to closest): + +```js +var convert = require('color-convert'); + +convert.rgb.hsl(140, 200, 100); // [96, 48, 59] +convert.keyword.rgb('blue'); // [0, 0, 255] + +var rgbChannels = convert.rgb.channels; // 3 +var cmykChannels = convert.cmyk.channels; // 4 +var ansiChannels = convert.ansi16.channels; // 1 +``` + +# Install + +```console +$ npm install color-convert +``` + +# API + +Simply get the property of the _from_ and _to_ conversion that you're looking for. + +All functions have a rounded and unrounded variant. By default, return values are rounded. To get the unrounded (raw) results, simply tack on `.raw` to the function. + +All 'from' functions have a hidden property called `.channels` that indicates the number of channels the function expects (not including alpha). + +```js +var convert = require('color-convert'); + +// Hex to LAB +convert.hex.lab('DEADBF'); // [ 76, 21, -2 ] +convert.hex.lab.raw('DEADBF'); // [ 75.56213190997677, 20.653827952644754, -2.290532499330533 ] + +// RGB to CMYK +convert.rgb.cmyk(167, 255, 4); // [ 35, 0, 98, 0 ] +convert.rgb.cmyk.raw(167, 255, 4); // [ 34.509803921568626, 0, 98.43137254901961, 0 ] +``` + +### Arrays +All functions that accept multiple arguments also support passing an array. + +Note that this does **not** apply to functions that convert from a color that only requires one value (e.g. `keyword`, `ansi256`, `hex`, etc.) + +```js +var convert = require('color-convert'); + +convert.rgb.hex(123, 45, 67); // '7B2D43' +convert.rgb.hex([123, 45, 67]); // '7B2D43' +``` + +## Routing + +Conversions that don't have an _explicitly_ defined conversion (in [conversions.js](conversions.js)), but can be converted by means of sub-conversions (e.g. XYZ -> **RGB** -> CMYK), are automatically routed together. This allows just about any color model supported by `color-convert` to be converted to any other model, so long as a sub-conversion path exists. This is also true for conversions requiring more than one step in between (e.g. LCH -> **LAB** -> **XYZ** -> **RGB** -> Hex). + +Keep in mind that extensive conversions _may_ result in a loss of precision, and exist only to be complete. For a list of "direct" (single-step) conversions, see [conversions.js](conversions.js). + +# Contribute + +If there is a new model you would like to support, or want to add a direct conversion between two existing models, please send us a pull request. + +# License +Copyright © 2011-2016, Heather Arthur and Josh Junon. Licensed under the [MIT License](LICENSE). diff --git a/node_modules/color-convert/conversions.js b/node_modules/color-convert/conversions.js new file mode 100644 index 0000000..2657f26 --- /dev/null +++ b/node_modules/color-convert/conversions.js @@ -0,0 +1,839 @@ +/* MIT license */ +/* eslint-disable no-mixed-operators */ +const cssKeywords = require('color-name'); + +// NOTE: conversions should only return primitive values (i.e. arrays, or +// values that give correct `typeof` results). +// do not use box values types (i.e. Number(), String(), etc.) + +const reverseKeywords = {}; +for (const key of Object.keys(cssKeywords)) { + reverseKeywords[cssKeywords[key]] = key; +} + +const convert = { + 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']} +}; + +module.exports = convert; + +// Hide .channels and .labels properties +for (const model of Object.keys(convert)) { + if (!('channels' in convert[model])) { + throw new Error('missing channels property: ' + model); + } + + if (!('labels' in convert[model])) { + throw new Error('missing channel labels property: ' + model); + } + + if (convert[model].labels.length !== convert[model].channels) { + throw new Error('channel and label counts mismatch: ' + model); + } + + const {channels, labels} = convert[model]; + delete convert[model].channels; + delete convert[model].labels; + Object.defineProperty(convert[model], 'channels', {value: channels}); + Object.defineProperty(convert[model], 'labels', {value: labels}); +} + +convert.rgb.hsl = function (rgb) { + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + const min = Math.min(r, g, b); + const max = Math.max(r, g, b); + const delta = max - min; + let h; + let s; + + if (max === min) { + h = 0; + } else if (r === max) { + h = (g - b) / delta; + } else if (g === max) { + h = 2 + (b - r) / delta; + } else if (b === max) { + h = 4 + (r - g) / delta; + } + + h = Math.min(h * 60, 360); + + if (h < 0) { + h += 360; + } + + const l = (min + max) / 2; + + if (max === min) { + s = 0; + } else if (l <= 0.5) { + s = delta / (max + min); + } else { + s = delta / (2 - max - min); + } + + return [h, s * 100, l * 100]; +}; + +convert.rgb.hsv = function (rgb) { + let rdif; + let gdif; + let bdif; + let h; + let s; + + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + const v = Math.max(r, g, b); + const diff = v - Math.min(r, g, b); + const diffc = function (c) { + return (v - c) / 6 / diff + 1 / 2; + }; + + if (diff === 0) { + h = 0; + s = 0; + } else { + s = diff / v; + rdif = diffc(r); + gdif = diffc(g); + bdif = diffc(b); + + if (r === v) { + h = bdif - gdif; + } else if (g === v) { + h = (1 / 3) + rdif - bdif; + } else if (b === v) { + h = (2 / 3) + gdif - rdif; + } + + if (h < 0) { + h += 1; + } else if (h > 1) { + h -= 1; + } + } + + return [ + h * 360, + s * 100, + v * 100 + ]; +}; + +convert.rgb.hwb = function (rgb) { + const r = rgb[0]; + const g = rgb[1]; + let b = rgb[2]; + const h = convert.rgb.hsl(rgb)[0]; + const w = 1 / 255 * Math.min(r, Math.min(g, b)); + + b = 1 - 1 / 255 * Math.max(r, Math.max(g, b)); + + return [h, w * 100, b * 100]; +}; + +convert.rgb.cmyk = function (rgb) { + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + + const k = Math.min(1 - r, 1 - g, 1 - b); + const c = (1 - r - k) / (1 - k) || 0; + const m = (1 - g - k) / (1 - k) || 0; + const y = (1 - b - k) / (1 - k) || 0; + + return [c * 100, m * 100, y * 100, k * 100]; +}; + +function comparativeDistance(x, y) { + /* + See https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance + */ + return ( + ((x[0] - y[0]) ** 2) + + ((x[1] - y[1]) ** 2) + + ((x[2] - y[2]) ** 2) + ); +} + +convert.rgb.keyword = function (rgb) { + const reversed = reverseKeywords[rgb]; + if (reversed) { + return reversed; + } + + let currentClosestDistance = Infinity; + let currentClosestKeyword; + + for (const keyword of Object.keys(cssKeywords)) { + const value = cssKeywords[keyword]; + + // Compute comparative distance + const distance = comparativeDistance(rgb, value); + + // Check if its less, if so set as closest + if (distance < currentClosestDistance) { + currentClosestDistance = distance; + currentClosestKeyword = keyword; + } + } + + return currentClosestKeyword; +}; + +convert.keyword.rgb = function (keyword) { + return cssKeywords[keyword]; +}; + +convert.rgb.xyz = function (rgb) { + let r = rgb[0] / 255; + let g = rgb[1] / 255; + let b = rgb[2] / 255; + + // Assume sRGB + r = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92); + g = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92); + b = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92); + + const x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805); + const y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722); + const z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505); + + return [x * 100, y * 100, z * 100]; +}; + +convert.rgb.lab = function (rgb) { + const xyz = convert.rgb.xyz(rgb); + let x = xyz[0]; + let y = xyz[1]; + let z = xyz[2]; + + x /= 95.047; + y /= 100; + z /= 108.883; + + x = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116); + y = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116); + z = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116); + + const l = (116 * y) - 16; + const a = 500 * (x - y); + const b = 200 * (y - z); + + return [l, a, b]; +}; + +convert.hsl.rgb = function (hsl) { + const h = hsl[0] / 360; + const s = hsl[1] / 100; + const l = hsl[2] / 100; + let t2; + let t3; + let val; + + if (s === 0) { + val = l * 255; + return [val, val, val]; + } + + if (l < 0.5) { + t2 = l * (1 + s); + } else { + t2 = l + s - l * s; + } + + const t1 = 2 * l - t2; + + const rgb = [0, 0, 0]; + for (let i = 0; i < 3; i++) { + t3 = h + 1 / 3 * -(i - 1); + if (t3 < 0) { + t3++; + } + + if (t3 > 1) { + t3--; + } + + if (6 * t3 < 1) { + val = t1 + (t2 - t1) * 6 * t3; + } else if (2 * t3 < 1) { + val = t2; + } else if (3 * t3 < 2) { + val = t1 + (t2 - t1) * (2 / 3 - t3) * 6; + } else { + val = t1; + } + + rgb[i] = val * 255; + } + + return rgb; +}; + +convert.hsl.hsv = function (hsl) { + const h = hsl[0]; + let s = hsl[1] / 100; + let l = hsl[2] / 100; + let smin = s; + const lmin = Math.max(l, 0.01); + + l *= 2; + s *= (l <= 1) ? l : 2 - l; + smin *= lmin <= 1 ? lmin : 2 - lmin; + const v = (l + s) / 2; + const sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s); + + return [h, sv * 100, v * 100]; +}; + +convert.hsv.rgb = function (hsv) { + const h = hsv[0] / 60; + const s = hsv[1] / 100; + let v = hsv[2] / 100; + const hi = Math.floor(h) % 6; + + const f = h - Math.floor(h); + const p = 255 * v * (1 - s); + const q = 255 * v * (1 - (s * f)); + const t = 255 * v * (1 - (s * (1 - f))); + v *= 255; + + switch (hi) { + case 0: + return [v, t, p]; + case 1: + return [q, v, p]; + case 2: + return [p, v, t]; + case 3: + return [p, q, v]; + case 4: + return [t, p, v]; + case 5: + return [v, p, q]; + } +}; + +convert.hsv.hsl = function (hsv) { + const h = hsv[0]; + const s = hsv[1] / 100; + const v = hsv[2] / 100; + const vmin = Math.max(v, 0.01); + let sl; + let l; + + l = (2 - s) * v; + const lmin = (2 - s) * vmin; + sl = s * vmin; + sl /= (lmin <= 1) ? lmin : 2 - lmin; + sl = sl || 0; + l /= 2; + + return [h, sl * 100, l * 100]; +}; + +// http://dev.w3.org/csswg/css-color/#hwb-to-rgb +convert.hwb.rgb = function (hwb) { + const h = hwb[0] / 360; + let wh = hwb[1] / 100; + let bl = hwb[2] / 100; + const ratio = wh + bl; + let f; + + // Wh + bl cant be > 1 + if (ratio > 1) { + wh /= ratio; + bl /= ratio; + } + + const i = Math.floor(6 * h); + const v = 1 - bl; + f = 6 * h - i; + + if ((i & 0x01) !== 0) { + f = 1 - f; + } + + const n = wh + f * (v - wh); // Linear interpolation + + let r; + let g; + let b; + /* eslint-disable max-statements-per-line,no-multi-spaces */ + switch (i) { + default: + case 6: + case 0: r = v; g = n; b = wh; break; + case 1: r = n; g = v; b = wh; break; + case 2: r = wh; g = v; b = n; break; + case 3: r = wh; g = n; b = v; break; + case 4: r = n; g = wh; b = v; break; + case 5: r = v; g = wh; b = n; break; + } + /* eslint-enable max-statements-per-line,no-multi-spaces */ + + return [r * 255, g * 255, b * 255]; +}; + +convert.cmyk.rgb = function (cmyk) { + const c = cmyk[0] / 100; + const m = cmyk[1] / 100; + const y = cmyk[2] / 100; + const k = cmyk[3] / 100; + + const r = 1 - Math.min(1, c * (1 - k) + k); + const g = 1 - Math.min(1, m * (1 - k) + k); + const b = 1 - Math.min(1, y * (1 - k) + k); + + return [r * 255, g * 255, b * 255]; +}; + +convert.xyz.rgb = function (xyz) { + const x = xyz[0] / 100; + const y = xyz[1] / 100; + const z = xyz[2] / 100; + let r; + let g; + let b; + + r = (x * 3.2406) + (y * -1.5372) + (z * -0.4986); + g = (x * -0.9689) + (y * 1.8758) + (z * 0.0415); + b = (x * 0.0557) + (y * -0.2040) + (z * 1.0570); + + // Assume sRGB + r = r > 0.0031308 + ? ((1.055 * (r ** (1.0 / 2.4))) - 0.055) + : r * 12.92; + + g = g > 0.0031308 + ? ((1.055 * (g ** (1.0 / 2.4))) - 0.055) + : g * 12.92; + + b = b > 0.0031308 + ? ((1.055 * (b ** (1.0 / 2.4))) - 0.055) + : b * 12.92; + + r = Math.min(Math.max(0, r), 1); + g = Math.min(Math.max(0, g), 1); + b = Math.min(Math.max(0, b), 1); + + return [r * 255, g * 255, b * 255]; +}; + +convert.xyz.lab = function (xyz) { + let x = xyz[0]; + let y = xyz[1]; + let z = xyz[2]; + + x /= 95.047; + y /= 100; + z /= 108.883; + + x = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116); + y = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116); + z = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116); + + const l = (116 * y) - 16; + const a = 500 * (x - y); + const b = 200 * (y - z); + + return [l, a, b]; +}; + +convert.lab.xyz = function (lab) { + const l = lab[0]; + const a = lab[1]; + const b = lab[2]; + let x; + let y; + let z; + + y = (l + 16) / 116; + x = a / 500 + y; + z = y - b / 200; + + const y2 = y ** 3; + const x2 = x ** 3; + const z2 = z ** 3; + y = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787; + x = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787; + z = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787; + + x *= 95.047; + y *= 100; + z *= 108.883; + + return [x, y, z]; +}; + +convert.lab.lch = function (lab) { + const l = lab[0]; + const a = lab[1]; + const b = lab[2]; + let h; + + const hr = Math.atan2(b, a); + h = hr * 360 / 2 / Math.PI; + + if (h < 0) { + h += 360; + } + + const c = Math.sqrt(a * a + b * b); + + return [l, c, h]; +}; + +convert.lch.lab = function (lch) { + const l = lch[0]; + const c = lch[1]; + const h = lch[2]; + + const hr = h / 360 * 2 * Math.PI; + const a = c * Math.cos(hr); + const b = c * Math.sin(hr); + + return [l, a, b]; +}; + +convert.rgb.ansi16 = function (args, saturation = null) { + const [r, g, b] = args; + let value = saturation === null ? convert.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization + + value = Math.round(value / 50); + + if (value === 0) { + return 30; + } + + let ansi = 30 + + ((Math.round(b / 255) << 2) + | (Math.round(g / 255) << 1) + | Math.round(r / 255)); + + if (value === 2) { + ansi += 60; + } + + return ansi; +}; + +convert.hsv.ansi16 = function (args) { + // Optimization here; we already know the value and don't need to get + // it converted for us. + return convert.rgb.ansi16(convert.hsv.rgb(args), args[2]); +}; + +convert.rgb.ansi256 = function (args) { + const r = args[0]; + const g = args[1]; + const b = args[2]; + + // We use the extended greyscale palette here, with the exception of + // black and white. normal palette only has 4 greyscale shades. + if (r === g && g === b) { + if (r < 8) { + return 16; + } + + if (r > 248) { + return 231; + } + + return Math.round(((r - 8) / 247) * 24) + 232; + } + + const ansi = 16 + + (36 * Math.round(r / 255 * 5)) + + (6 * Math.round(g / 255 * 5)) + + Math.round(b / 255 * 5); + + return ansi; +}; + +convert.ansi16.rgb = function (args) { + let color = args % 10; + + // Handle greyscale + if (color === 0 || color === 7) { + if (args > 50) { + color += 3.5; + } + + color = color / 10.5 * 255; + + return [color, color, color]; + } + + const mult = (~~(args > 50) + 1) * 0.5; + const r = ((color & 1) * mult) * 255; + const g = (((color >> 1) & 1) * mult) * 255; + const b = (((color >> 2) & 1) * mult) * 255; + + return [r, g, b]; +}; + +convert.ansi256.rgb = function (args) { + // Handle greyscale + if (args >= 232) { + const c = (args - 232) * 10 + 8; + return [c, c, c]; + } + + args -= 16; + + let rem; + const r = Math.floor(args / 36) / 5 * 255; + const g = Math.floor((rem = args % 36) / 6) / 5 * 255; + const b = (rem % 6) / 5 * 255; + + return [r, g, b]; +}; + +convert.rgb.hex = function (args) { + const integer = ((Math.round(args[0]) & 0xFF) << 16) + + ((Math.round(args[1]) & 0xFF) << 8) + + (Math.round(args[2]) & 0xFF); + + const string = integer.toString(16).toUpperCase(); + return '000000'.substring(string.length) + string; +}; + +convert.hex.rgb = function (args) { + const match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i); + if (!match) { + return [0, 0, 0]; + } + + let colorString = match[0]; + + if (match[0].length === 3) { + colorString = colorString.split('').map(char => { + return char + char; + }).join(''); + } + + const integer = parseInt(colorString, 16); + const r = (integer >> 16) & 0xFF; + const g = (integer >> 8) & 0xFF; + const b = integer & 0xFF; + + return [r, g, b]; +}; + +convert.rgb.hcg = function (rgb) { + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + const max = Math.max(Math.max(r, g), b); + const min = Math.min(Math.min(r, g), b); + const chroma = (max - min); + let grayscale; + let hue; + + if (chroma < 1) { + grayscale = min / (1 - chroma); + } else { + grayscale = 0; + } + + if (chroma <= 0) { + hue = 0; + } else + if (max === r) { + hue = ((g - b) / chroma) % 6; + } else + if (max === g) { + hue = 2 + (b - r) / chroma; + } else { + hue = 4 + (r - g) / chroma; + } + + hue /= 6; + hue %= 1; + + return [hue * 360, chroma * 100, grayscale * 100]; +}; + +convert.hsl.hcg = function (hsl) { + const s = hsl[1] / 100; + const l = hsl[2] / 100; + + const c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l)); + + let f = 0; + if (c < 1.0) { + f = (l - 0.5 * c) / (1.0 - c); + } + + return [hsl[0], c * 100, f * 100]; +}; + +convert.hsv.hcg = function (hsv) { + const s = hsv[1] / 100; + const v = hsv[2] / 100; + + const c = s * v; + let f = 0; + + if (c < 1.0) { + f = (v - c) / (1 - c); + } + + return [hsv[0], c * 100, f * 100]; +}; + +convert.hcg.rgb = function (hcg) { + const h = hcg[0] / 360; + const c = hcg[1] / 100; + const g = hcg[2] / 100; + + if (c === 0.0) { + return [g * 255, g * 255, g * 255]; + } + + const pure = [0, 0, 0]; + const hi = (h % 1) * 6; + const v = hi % 1; + const w = 1 - v; + let mg = 0; + + /* eslint-disable max-statements-per-line */ + switch (Math.floor(hi)) { + case 0: + pure[0] = 1; pure[1] = v; pure[2] = 0; break; + case 1: + pure[0] = w; pure[1] = 1; pure[2] = 0; break; + case 2: + pure[0] = 0; pure[1] = 1; pure[2] = v; break; + case 3: + pure[0] = 0; pure[1] = w; pure[2] = 1; break; + case 4: + pure[0] = v; pure[1] = 0; pure[2] = 1; break; + default: + pure[0] = 1; pure[1] = 0; pure[2] = w; + } + /* eslint-enable max-statements-per-line */ + + mg = (1.0 - c) * g; + + return [ + (c * pure[0] + mg) * 255, + (c * pure[1] + mg) * 255, + (c * pure[2] + mg) * 255 + ]; +}; + +convert.hcg.hsv = function (hcg) { + const c = hcg[1] / 100; + const g = hcg[2] / 100; + + const v = c + g * (1.0 - c); + let f = 0; + + if (v > 0.0) { + f = c / v; + } + + return [hcg[0], f * 100, v * 100]; +}; + +convert.hcg.hsl = function (hcg) { + const c = hcg[1] / 100; + const g = hcg[2] / 100; + + const l = g * (1.0 - c) + 0.5 * c; + let s = 0; + + if (l > 0.0 && l < 0.5) { + s = c / (2 * l); + } else + if (l >= 0.5 && l < 1.0) { + s = c / (2 * (1 - l)); + } + + return [hcg[0], s * 100, l * 100]; +}; + +convert.hcg.hwb = function (hcg) { + const c = hcg[1] / 100; + const g = hcg[2] / 100; + const v = c + g * (1.0 - c); + return [hcg[0], (v - c) * 100, (1 - v) * 100]; +}; + +convert.hwb.hcg = function (hwb) { + const w = hwb[1] / 100; + const b = hwb[2] / 100; + const v = 1 - b; + const c = v - w; + let g = 0; + + if (c < 1) { + g = (v - c) / (1 - c); + } + + return [hwb[0], c * 100, g * 100]; +}; + +convert.apple.rgb = function (apple) { + return [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255]; +}; + +convert.rgb.apple = function (rgb) { + return [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535]; +}; + +convert.gray.rgb = function (args) { + return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255]; +}; + +convert.gray.hsl = function (args) { + return [0, 0, args[0]]; +}; + +convert.gray.hsv = convert.gray.hsl; + +convert.gray.hwb = function (gray) { + return [0, 100, gray[0]]; +}; + +convert.gray.cmyk = function (gray) { + return [0, 0, 0, gray[0]]; +}; + +convert.gray.lab = function (gray) { + return [gray[0], 0, 0]; +}; + +convert.gray.hex = function (gray) { + const val = Math.round(gray[0] / 100 * 255) & 0xFF; + const integer = (val << 16) + (val << 8) + val; + + const string = integer.toString(16).toUpperCase(); + return '000000'.substring(string.length) + string; +}; + +convert.rgb.gray = function (rgb) { + const val = (rgb[0] + rgb[1] + rgb[2]) / 3; + return [val / 255 * 100]; +}; diff --git a/node_modules/color-convert/index.js b/node_modules/color-convert/index.js new file mode 100644 index 0000000..b648e57 --- /dev/null +++ b/node_modules/color-convert/index.js @@ -0,0 +1,81 @@ +const conversions = require('./conversions'); +const route = require('./route'); + +const convert = {}; + +const models = Object.keys(conversions); + +function wrapRaw(fn) { + const wrappedFn = function (...args) { + const arg0 = args[0]; + if (arg0 === undefined || arg0 === null) { + return arg0; + } + + if (arg0.length > 1) { + args = arg0; + } + + return fn(args); + }; + + // Preserve .conversion property if there is one + if ('conversion' in fn) { + wrappedFn.conversion = fn.conversion; + } + + return wrappedFn; +} + +function wrapRounded(fn) { + const wrappedFn = function (...args) { + const arg0 = args[0]; + + if (arg0 === undefined || arg0 === null) { + return arg0; + } + + if (arg0.length > 1) { + args = arg0; + } + + const result = fn(args); + + // We're assuming the result is an array here. + // see notice in conversions.js; don't use box types + // in conversion functions. + if (typeof result === 'object') { + for (let len = result.length, i = 0; i < len; i++) { + result[i] = Math.round(result[i]); + } + } + + return result; + }; + + // Preserve .conversion property if there is one + if ('conversion' in fn) { + wrappedFn.conversion = fn.conversion; + } + + return wrappedFn; +} + +models.forEach(fromModel => { + convert[fromModel] = {}; + + Object.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels}); + Object.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels}); + + const routes = route(fromModel); + const routeModels = Object.keys(routes); + + routeModels.forEach(toModel => { + const fn = routes[toModel]; + + convert[fromModel][toModel] = wrapRounded(fn); + convert[fromModel][toModel].raw = wrapRaw(fn); + }); +}); + +module.exports = convert; diff --git a/node_modules/color-convert/package.json b/node_modules/color-convert/package.json new file mode 100644 index 0000000..6e48000 --- /dev/null +++ b/node_modules/color-convert/package.json @@ -0,0 +1,48 @@ +{ + "name": "color-convert", + "description": "Plain color conversion functions", + "version": "2.0.1", + "author": "Heather Arthur ", + "license": "MIT", + "repository": "Qix-/color-convert", + "scripts": { + "pretest": "xo", + "test": "node test/basic.js" + }, + "engines": { + "node": ">=7.0.0" + }, + "keywords": [ + "color", + "colour", + "convert", + "converter", + "conversion", + "rgb", + "hsl", + "hsv", + "hwb", + "cmyk", + "ansi", + "ansi16" + ], + "files": [ + "index.js", + "conversions.js", + "route.js" + ], + "xo": { + "rules": { + "default-case": 0, + "no-inline-comments": 0, + "operator-linebreak": 0 + } + }, + "devDependencies": { + "chalk": "^2.4.2", + "xo": "^0.24.0" + }, + "dependencies": { + "color-name": "~1.1.4" + } +} diff --git a/node_modules/color-convert/route.js b/node_modules/color-convert/route.js new file mode 100644 index 0000000..1a08521 --- /dev/null +++ b/node_modules/color-convert/route.js @@ -0,0 +1,97 @@ +const conversions = require('./conversions'); + +/* + This function routes a model to all other models. + + all functions that are routed have a property `.conversion` attached + to the returned synthetic function. This property is an array + of strings, each with the steps in between the 'from' and 'to' + color models (inclusive). + + conversions that are not possible simply are not included. +*/ + +function buildGraph() { + const graph = {}; + // https://jsperf.com/object-keys-vs-for-in-with-closure/3 + const models = Object.keys(conversions); + + for (let len = models.length, i = 0; i < len; i++) { + graph[models[i]] = { + // http://jsperf.com/1-vs-infinity + // micro-opt, but this is simple. + distance: -1, + parent: null + }; + } + + return graph; +} + +// https://en.wikipedia.org/wiki/Breadth-first_search +function deriveBFS(fromModel) { + const graph = buildGraph(); + const queue = [fromModel]; // Unshift -> queue -> pop + + graph[fromModel].distance = 0; + + while (queue.length) { + const current = queue.pop(); + const adjacents = Object.keys(conversions[current]); + + for (let len = adjacents.length, i = 0; i < len; i++) { + const adjacent = adjacents[i]; + const node = graph[adjacent]; + + if (node.distance === -1) { + node.distance = graph[current].distance + 1; + node.parent = current; + queue.unshift(adjacent); + } + } + } + + return graph; +} + +function link(from, to) { + return function (args) { + return to(from(args)); + }; +} + +function wrapConversion(toModel, graph) { + const path = [graph[toModel].parent, toModel]; + let fn = conversions[graph[toModel].parent][toModel]; + + let cur = graph[toModel].parent; + while (graph[cur].parent) { + path.unshift(graph[cur].parent); + fn = link(conversions[graph[cur].parent][cur], fn); + cur = graph[cur].parent; + } + + fn.conversion = path; + return fn; +} + +module.exports = function (fromModel) { + const graph = deriveBFS(fromModel); + const conversion = {}; + + const models = Object.keys(graph); + for (let len = models.length, i = 0; i < len; i++) { + const toModel = models[i]; + const node = graph[toModel]; + + if (node.parent === null) { + // No possible conversion, or this node is the source model. + continue; + } + + conversion[toModel] = wrapConversion(toModel, graph); + } + + return conversion; +}; + diff --git a/node_modules/color-name/LICENSE b/node_modules/color-name/LICENSE new file mode 100644 index 0000000..c6b1001 --- /dev/null +++ b/node_modules/color-name/LICENSE @@ -0,0 +1,8 @@ +The MIT License (MIT) +Copyright (c) 2015 Dmitry Ivanov + +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. \ No newline at end of file diff --git a/node_modules/color-name/README.md b/node_modules/color-name/README.md new file mode 100644 index 0000000..932b979 --- /dev/null +++ b/node_modules/color-name/README.md @@ -0,0 +1,11 @@ +A JSON with color names and its values. Based on http://dev.w3.org/csswg/css-color/#named-colors. + +[![NPM](https://nodei.co/npm/color-name.png?mini=true)](https://nodei.co/npm/color-name/) + + +```js +var colors = require('color-name'); +colors.red //[255,0,0] +``` + + diff --git a/node_modules/color-name/index.js b/node_modules/color-name/index.js new file mode 100644 index 0000000..b7c198a --- /dev/null +++ b/node_modules/color-name/index.js @@ -0,0 +1,152 @@ +'use strict' + +module.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] +}; diff --git a/node_modules/color-name/package.json b/node_modules/color-name/package.json new file mode 100644 index 0000000..782dd82 --- /dev/null +++ b/node_modules/color-name/package.json @@ -0,0 +1,28 @@ +{ + "name": "color-name", + "version": "1.1.4", + "description": "A list of color names and its values", + "main": "index.js", + "files": [ + "index.js" + ], + "scripts": { + "test": "node test.js" + }, + "repository": { + "type": "git", + "url": "git@github.com:colorjs/color-name.git" + }, + "keywords": [ + "color-name", + "color", + "color-keyword", + "keyword" + ], + "author": "DY ", + "license": "MIT", + "bugs": { + "url": "https://github.com/colorjs/color-name/issues" + }, + "homepage": "https://github.com/colorjs/color-name" +} diff --git a/node_modules/commander/LICENSE b/node_modules/commander/LICENSE new file mode 100644 index 0000000..10f997a --- /dev/null +++ b/node_modules/commander/LICENSE @@ -0,0 +1,22 @@ +(The MIT License) + +Copyright (c) 2011 TJ Holowaychuk + +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. diff --git a/node_modules/commander/Readme.md b/node_modules/commander/Readme.md new file mode 100644 index 0000000..ed19cff --- /dev/null +++ b/node_modules/commander/Readme.md @@ -0,0 +1,1129 @@ +# Commander.js + +[![Build Status](https://github.com/tj/commander.js/workflows/build/badge.svg)](https://github.com/tj/commander.js/actions?query=workflow%3A%22build%22) +[![NPM Version](http://img.shields.io/npm/v/commander.svg?style=flat)](https://www.npmjs.org/package/commander) +[![NPM Downloads](https://img.shields.io/npm/dm/commander.svg?style=flat)](https://npmcharts.com/compare/commander?minimal=true) +[![Install Size](https://packagephobia.now.sh/badge?p=commander)](https://packagephobia.now.sh/result?p=commander) + +The complete solution for [node.js](http://nodejs.org) command-line interfaces. + +Read this in other languages: English | [简体中文](./Readme_zh-CN.md) + +- [Commander.js](#commanderjs) + - [Installation](#installation) + - [Quick Start](#quick-start) + - [Declaring _program_ variable](#declaring-program-variable) + - [Options](#options) + - [Common option types, boolean and value](#common-option-types-boolean-and-value) + - [Default option value](#default-option-value) + - [Other option types, negatable boolean and boolean|value](#other-option-types-negatable-boolean-and-booleanvalue) + - [Required option](#required-option) + - [Variadic option](#variadic-option) + - [Version option](#version-option) + - [More configuration](#more-configuration) + - [Custom option processing](#custom-option-processing) + - [Commands](#commands) + - [Command-arguments](#command-arguments) + - [More configuration](#more-configuration-1) + - [Custom argument processing](#custom-argument-processing) + - [Action handler](#action-handler) + - [Stand-alone executable (sub)commands](#stand-alone-executable-subcommands) + - [Life cycle hooks](#life-cycle-hooks) + - [Automated help](#automated-help) + - [Custom help](#custom-help) + - [Display help after errors](#display-help-after-errors) + - [Display help from code](#display-help-from-code) + - [.name](#name) + - [.usage](#usage) + - [.description and .summary](#description-and-summary) + - [.helpOption(flags, description)](#helpoptionflags-description) + - [.addHelpCommand()](#addhelpcommand) + - [More configuration](#more-configuration-2) + - [Custom event listeners](#custom-event-listeners) + - [Bits and pieces](#bits-and-pieces) + - [.parse() and .parseAsync()](#parse-and-parseasync) + - [Parsing Configuration](#parsing-configuration) + - [Legacy options as properties](#legacy-options-as-properties) + - [TypeScript](#typescript) + - [createCommand()](#createcommand) + - [Node options such as `--harmony`](#node-options-such-as---harmony) + - [Debugging stand-alone executable subcommands](#debugging-stand-alone-executable-subcommands) + - [Display error](#display-error) + - [Override exit and output handling](#override-exit-and-output-handling) + - [Additional documentation](#additional-documentation) + - [Support](#support) + - [Commander for enterprise](#commander-for-enterprise) + +For information about terms used in this document see: [terminology](./docs/terminology.md) + +## Installation + +```sh +npm install commander +``` + +## Quick Start + +You write code to describe your command line interface. +Commander looks after parsing the arguments into options and command-arguments, +displays usage errors for problems, and implements a help system. + +Commander is strict and displays an error for unrecognised options. +The two most used option types are a boolean option, and an option which takes its value from the following argument. + +Example file: [split.js](./examples/split.js) + +```js +const { program } = require('commander'); + +program + .option('--first') + .option('-s, --separator '); + +program.parse(); + +const options = program.opts(); +const limit = options.first ? 1 : undefined; +console.log(program.args[0].split(options.separator, limit)); +``` + +```console +$ node split.js -s / --fits a/b/c +error: unknown option '--fits' +(Did you mean --first?) +$ node split.js -s / --first a/b/c +[ 'a' ] +``` + +Here is a more complete program using a subcommand and with descriptions for the help. In a multi-command program, you have an action handler for each command (or stand-alone executables for the commands). + +Example file: [string-util.js](./examples/string-util.js) + +```js +const { Command } = require('commander'); +const program = new Command(); + +program + .name('string-util') + .description('CLI to some JavaScript string utilities') + .version('0.8.0'); + +program.command('split') + .description('Split a string into substrings and display as an array') + .argument('', 'string to split') + .option('--first', 'display just the first substring') + .option('-s, --separator ', 'separator character', ',') + .action((str, options) => { + const limit = options.first ? 1 : undefined; + console.log(str.split(options.separator, limit)); + }); + +program.parse(); +``` + +```console +$ node string-util.js help split +Usage: string-util split [options] + +Split a string into substrings and display as an array. + +Arguments: + string string to split + +Options: + --first display just the first substring + -s, --separator separator character (default: ",") + -h, --help display help for command + +$ node string-util.js split --separator=/ a/b/c +[ 'a', 'b', 'c' ] +``` + +More samples can be found in the [examples](https://github.com/tj/commander.js/tree/master/examples) directory. + +## Declaring _program_ variable + +Commander exports a global object which is convenient for quick programs. +This is used in the examples in this README for brevity. + +```js +// CommonJS (.cjs) +const { program } = require('commander'); +``` + +For larger programs which may use commander in multiple ways, including unit testing, it is better to create a local Command object to use. + +```js +// CommonJS (.cjs) +const { Command } = require('commander'); +const program = new Command(); +``` + +```js +// ECMAScript (.mjs) +import { Command } from 'commander'; +const program = new Command(); +``` + +```ts +// TypeScript (.ts) +import { Command } from 'commander'; +const program = new Command(); +``` + +## Options + +Options are defined with the `.option()` method, also serving as documentation for the options. Each option can have a short flag (single character) and a long name, separated by a comma or space or vertical bar ('|'). + +The parsed options can be accessed by calling `.opts()` on a `Command` object, and are passed to the action handler. + +Multi-word options such as "--template-engine" are camel-cased, becoming `program.opts().templateEngine` etc. + +An option and its option-argument can be separated by a space, or combined into the same argument. The option-argument can follow the short option directly or follow an `=` for a long option. + +```sh +serve -p 80 +serve -p80 +serve --port 80 +serve --port=80 +``` + +You can use `--` to indicate the end of the options, and any remaining arguments will be used without being interpreted. + +By default options on the command line are not positional, and can be specified before or after other arguments. + +There are additional related routines for when `.opts()` is not enough: + +- `.optsWithGlobals()` returns merged local and global option values +- `.getOptionValue()` and `.setOptionValue()` work with a single option value +- `.getOptionValueSource()` and `.setOptionValueWithSource()` include where the option value came from + +### Common option types, boolean and value + +The two most used option types are a boolean option, and an option which takes its value +from the following argument (declared with angle brackets like `--expect `). Both are `undefined` unless specified on command line. + +Example file: [options-common.js](./examples/options-common.js) + +```js +program + .option('-d, --debug', 'output extra debugging') + .option('-s, --small', 'small pizza size') + .option('-p, --pizza-type ', 'flavour of pizza'); + +program.parse(process.argv); + +const options = program.opts(); +if (options.debug) console.log(options); +console.log('pizza details:'); +if (options.small) console.log('- small pizza size'); +if (options.pizzaType) console.log(`- ${options.pizzaType}`); +``` + +```console +$ pizza-options -p +error: option '-p, --pizza-type ' argument missing +$ pizza-options -d -s -p vegetarian +{ debug: true, small: true, pizzaType: 'vegetarian' } +pizza details: +- small pizza size +- vegetarian +$ pizza-options --pizza-type=cheese +pizza details: +- cheese +``` + +Multiple boolean short options may be combined together following the dash, and may be followed by a single short option taking a value. +For example `-d -s -p cheese` may be written as `-ds -p cheese` or even `-dsp cheese`. + +Options with an expected option-argument are greedy and will consume the following argument whatever the value. +So `--id -xyz` reads `-xyz` as the option-argument. + +`program.parse(arguments)` processes the arguments, leaving any args not consumed by the program options in the `program.args` array. The parameter is optional and defaults to `process.argv`. + +### Default option value + +You can specify a default value for an option. + +Example file: [options-defaults.js](./examples/options-defaults.js) + +```js +program + .option('-c, --cheese ', 'add the specified type of cheese', 'blue'); + +program.parse(); + +console.log(`cheese: ${program.opts().cheese}`); +``` + +```console +$ pizza-options +cheese: blue +$ pizza-options --cheese stilton +cheese: stilton +``` + +### Other option types, negatable boolean and boolean|value + +You can define a boolean option long name with a leading `no-` to set the option value to false when used. +Defined alone this also makes the option true by default. + +If you define `--foo` first, adding `--no-foo` does not change the default value from what it would +otherwise be. + +Example file: [options-negatable.js](./examples/options-negatable.js) + +```js +program + .option('--no-sauce', 'Remove sauce') + .option('--cheese ', 'cheese flavour', 'mozzarella') + .option('--no-cheese', 'plain with no cheese') + .parse(); + +const options = program.opts(); +const sauceStr = options.sauce ? 'sauce' : 'no sauce'; +const cheeseStr = (options.cheese === false) ? 'no cheese' : `${options.cheese} cheese`; +console.log(`You ordered a pizza with ${sauceStr} and ${cheeseStr}`); +``` + +```console +$ pizza-options +You ordered a pizza with sauce and mozzarella cheese +$ pizza-options --sauce +error: unknown option '--sauce' +$ pizza-options --cheese=blue +You ordered a pizza with sauce and blue cheese +$ pizza-options --no-sauce --no-cheese +You ordered a pizza with no sauce and no cheese +``` + +You can specify an option which may be used as a boolean option but may optionally take an option-argument +(declared with square brackets like `--optional [value]`). + +Example file: [options-boolean-or-value.js](./examples/options-boolean-or-value.js) + +```js +program + .option('-c, --cheese [type]', 'Add cheese with optional type'); + +program.parse(process.argv); + +const options = program.opts(); +if (options.cheese === undefined) console.log('no cheese'); +else if (options.cheese === true) console.log('add cheese'); +else console.log(`add cheese type ${options.cheese}`); +``` + +```console +$ pizza-options +no cheese +$ pizza-options --cheese +add cheese +$ pizza-options --cheese mozzarella +add cheese type mozzarella +``` + +Options with an optional option-argument are not greedy and will ignore arguments starting with a dash. +So `id` behaves as a boolean option for `--id -5`, but you can use a combined form if needed like `--id=-5`. + +For information about possible ambiguous cases, see [options taking varying arguments](./docs/options-taking-varying-arguments.md). + +### Required option + +You may specify a required (mandatory) option using `.requiredOption()`. The option must have a value after parsing, usually specified on the command line, or perhaps from a default value (say from environment). The method is otherwise the same as `.option()` in format, taking flags and description, and optional default value or custom processing. + +Example file: [options-required.js](./examples/options-required.js) + +```js +program + .requiredOption('-c, --cheese ', 'pizza must have cheese'); + +program.parse(); +``` + +```console +$ pizza +error: required option '-c, --cheese ' not specified +``` + +### Variadic option + +You may make an option variadic by appending `...` to the value placeholder when declaring the option. On the command line you +can then specify multiple option-arguments, and the parsed option value will be an array. The extra arguments +are read until the first argument starting with a dash. The special argument `--` stops option processing entirely. If a value +is specified in the same argument as the option then no further values are read. + +Example file: [options-variadic.js](./examples/options-variadic.js) + +```js +program + .option('-n, --number ', 'specify numbers') + .option('-l, --letter [letters...]', 'specify letters'); + +program.parse(); + +console.log('Options: ', program.opts()); +console.log('Remaining arguments: ', program.args); +``` + +```console +$ collect -n 1 2 3 --letter a b c +Options: { number: [ '1', '2', '3' ], letter: [ 'a', 'b', 'c' ] } +Remaining arguments: [] +$ collect --letter=A -n80 operand +Options: { number: [ '80' ], letter: [ 'A' ] } +Remaining arguments: [ 'operand' ] +$ collect --letter -n 1 -n 2 3 -- operand +Options: { number: [ '1', '2', '3' ], letter: true } +Remaining arguments: [ 'operand' ] +``` + +For information about possible ambiguous cases, see [options taking varying arguments](./docs/options-taking-varying-arguments.md). + +### Version option + +The optional `version` method adds handling for displaying the command version. The default option flags are `-V` and `--version`, and when present the command prints the version number and exits. + +```js +program.version('0.0.1'); +``` + +```console +$ ./examples/pizza -V +0.0.1 +``` + +You may change the flags and description by passing additional parameters to the `version` method, using +the same syntax for flags as the `option` method. + +```js +program.version('0.0.1', '-v, --vers', 'output the current version'); +``` + +### More configuration + +You can add most options using the `.option()` method, but there are some additional features available +by constructing an `Option` explicitly for less common cases. + +Example files: [options-extra.js](./examples/options-extra.js), [options-env.js](./examples/options-env.js), [options-conflicts.js](./examples/options-conflicts.js), [options-implies.js](./examples/options-implies.js) + +```js +program + .addOption(new Option('-s, --secret').hideHelp()) + .addOption(new Option('-t, --timeout ', 'timeout in seconds').default(60, 'one minute')) + .addOption(new Option('-d, --drink ', 'drink size').choices(['small', 'medium', 'large'])) + .addOption(new Option('-p, --port ', 'port number').env('PORT')) + .addOption(new Option('--donate [amount]', 'optional donation in dollars').preset('20').argParser(parseFloat)) + .addOption(new Option('--disable-server', 'disables the server').conflicts('port')) + .addOption(new Option('--free-drink', 'small drink included free ').implies({ drink: 'small' })); +``` + +```console +$ extra --help +Usage: help [options] + +Options: + -t, --timeout timeout in seconds (default: one minute) + -d, --drink drink cup size (choices: "small", "medium", "large") + -p, --port port number (env: PORT) + --donate [amount] optional donation in dollars (preset: "20") + --disable-server disables the server + --free-drink small drink included free + -h, --help display help for command + +$ extra --drink huge +error: option '-d, --drink ' argument 'huge' is invalid. Allowed choices are small, medium, large. + +$ PORT=80 extra --donate --free-drink +Options: { timeout: 60, donate: 20, port: '80', freeDrink: true, drink: 'small' } + +$ extra --disable-server --port 8000 +error: option '--disable-server' cannot be used with option '-p, --port ' +``` + +Specify a required (mandatory) option using the `Option` method `.makeOptionMandatory()`. This matches the `Command` method [.requiredOption()](#required-option). + +### Custom option processing + +You may specify a function to do custom processing of option-arguments. The callback function receives two parameters, +the user specified option-argument and the previous value for the option. It returns the new value for the option. + +This allows you to coerce the option-argument to the desired type, or accumulate values, or do entirely custom processing. + +You can optionally specify the default/starting value for the option after the function parameter. + +Example file: [options-custom-processing.js](./examples/options-custom-processing.js) + +```js +function myParseInt(value, dummyPrevious) { + // parseInt takes a string and a radix + const parsedValue = parseInt(value, 10); + if (isNaN(parsedValue)) { + throw new commander.InvalidArgumentError('Not a number.'); + } + return parsedValue; +} + +function increaseVerbosity(dummyValue, previous) { + return previous + 1; +} + +function collect(value, previous) { + return previous.concat([value]); +} + +function commaSeparatedList(value, dummyPrevious) { + return value.split(','); +} + +program + .option('-f, --float ', 'float argument', parseFloat) + .option('-i, --integer ', 'integer argument', myParseInt) + .option('-v, --verbose', 'verbosity that can be increased', increaseVerbosity, 0) + .option('-c, --collect ', 'repeatable value', collect, []) + .option('-l, --list ', 'comma separated list', commaSeparatedList) +; + +program.parse(); + +const options = program.opts(); +if (options.float !== undefined) console.log(`float: ${options.float}`); +if (options.integer !== undefined) console.log(`integer: ${options.integer}`); +if (options.verbose > 0) console.log(`verbosity: ${options.verbose}`); +if (options.collect.length > 0) console.log(options.collect); +if (options.list !== undefined) console.log(options.list); +``` + +```console +$ custom -f 1e2 +float: 100 +$ custom --integer 2 +integer: 2 +$ custom -v -v -v +verbose: 3 +$ custom -c a -c b -c c +[ 'a', 'b', 'c' ] +$ custom --list x,y,z +[ 'x', 'y', 'z' ] +``` + +## Commands + +You can specify (sub)commands using `.command()` or `.addCommand()`. There are two ways these can be implemented: using an action handler attached to the command, or as a stand-alone executable file (described in more detail later). The subcommands may be nested ([example](./examples/nestedCommands.js)). + +In the first parameter to `.command()` you specify the command name. You may append the command-arguments after the command name, or specify them separately using `.argument()`. The arguments may be `` or `[optional]`, and the last argument may also be `variadic...`. + +You can use `.addCommand()` to add an already configured subcommand to the program. + +For example: + +```js +// Command implemented using action handler (description is supplied separately to `.command`) +// Returns new command for configuring. +program + .command('clone [destination]') + .description('clone a repository into a newly created directory') + .action((source, destination) => { + console.log('clone command called'); + }); + +// Command implemented using stand-alone executable file, indicated by adding description as second parameter to `.command`. +// Returns `this` for adding more commands. +program + .command('start ', 'start named service') + .command('stop [service]', 'stop named service, or all if no name supplied'); + +// Command prepared separately. +// Returns `this` for adding more commands. +program + .addCommand(build.makeBuildCommand()); +``` + +Configuration options can be passed with the call to `.command()` and `.addCommand()`. Specifying `hidden: true` will +remove the command from the generated help output. Specifying `isDefault: true` will run the subcommand if no other +subcommand is specified ([example](./examples/defaultCommand.js)). + +You can add alternative names for a command with `.alias()`. ([example](./examples/alias.js)) + +For safety, `.addCommand()` does not automatically copy the inherited settings from the parent command. There is a helper routine `.copyInheritedSettings()` for copying the settings when they are wanted. + +### Command-arguments + +For subcommands, you can specify the argument syntax in the call to `.command()` (as shown above). This +is the only method usable for subcommands implemented using a stand-alone executable, but for other subcommands +you can instead use the following method. + +To configure a command, you can use `.argument()` to specify each expected command-argument. +You supply the argument name and an optional description. The argument may be `` or `[optional]`. +You can specify a default value for an optional command-argument. + +Example file: [argument.js](./examples/argument.js) + +```js +program + .version('0.1.0') + .argument('', 'user to login') + .argument('[password]', 'password for user, if required', 'no password given') + .action((username, password) => { + console.log('username:', username); + console.log('password:', password); + }); +``` + + The last argument of a command can be variadic, and only the last argument. To make an argument variadic you + append `...` to the argument name. A variadic argument is passed to the action handler as an array. For example: + +```js +program + .version('0.1.0') + .command('rmdir') + .argument('') + .action(function (dirs) { + dirs.forEach((dir) => { + console.log('rmdir %s', dir); + }); + }); +``` + +There is a convenience method to add multiple arguments at once, but without descriptions: + +```js +program + .arguments(' '); +``` + +#### More configuration + +There are some additional features available by constructing an `Argument` explicitly for less common cases. + +Example file: [arguments-extra.js](./examples/arguments-extra.js) + +```js +program + .addArgument(new commander.Argument('', 'drink cup size').choices(['small', 'medium', 'large'])) + .addArgument(new commander.Argument('[timeout]', 'timeout in seconds').default(60, 'one minute')) +``` + +#### Custom argument processing + +You may specify a function to do custom processing of command-arguments (like for option-arguments). +The callback function receives two parameters, the user specified command-argument and the previous value for the argument. +It returns the new value for the argument. + +The processed argument values are passed to the action handler, and saved as `.processedArgs`. + +You can optionally specify the default/starting value for the argument after the function parameter. + +Example file: [arguments-custom-processing.js](./examples/arguments-custom-processing.js) + +```js +program + .command('add') + .argument('', 'integer argument', myParseInt) + .argument('[second]', 'integer argument', myParseInt, 1000) + .action((first, second) => { + console.log(`${first} + ${second} = ${first + second}`); + }) +; +``` + +### Action handler + +The action handler gets passed a parameter for each command-argument you declared, and two additional parameters +which are the parsed options and the command object itself. + +Example file: [thank.js](./examples/thank.js) + +```js +program + .argument('') + .option('-t, --title ', 'title to use before name') + .option('-d, --debug', 'display some debugging') + .action((name, options, command) => { + if (options.debug) { + console.error('Called %s with options %o', command.name(), options); + } + const title = options.title ? `${options.title} ` : ''; + console.log(`Thank-you ${title}${name}`); + }); +``` + +If you prefer, you can work with the command directly and skip declaring the parameters for the action handler. The `this` keyword is set to the running command and can be used from a function expression (but not from an arrow function). + +Example file: [action-this.js](./examples/action-this.js) + +```js +program + .command('serve') + .argument(' +``` + +In [Node.js](https://nodejs.org/): + +```js +const cssesc = require('cssesc'); +``` + +In Ruby using [the `ruby-cssesc` wrapper gem](https://github.com/borodean/ruby-cssesc): + +```bash +gem install ruby-cssesc +``` + +```ruby +require 'ruby-cssesc' +CSSEsc.escape('I ♥ Ruby', is_identifier: true) +``` + +In Sass using [`sassy-escape`](https://github.com/borodean/sassy-escape): + +```bash +gem install sassy-escape +``` + +```scss +body { + content: escape('I ♥ Sass', $is-identifier: true); +} +``` + +## API + +### `cssesc(value, options)` + +This function takes a value and returns an escaped version of the value where any characters that are not printable ASCII symbols are escaped using the shortest possible (but valid) [escape sequences for use in CSS strings or identifiers](https://mathiasbynens.be/notes/css-escapes). + +```js +cssesc('Ich ♥ Bücher'); +// → 'Ich \\2665 B\\FC cher' + +cssesc('foo 𝌆 bar'); +// → 'foo \\1D306 bar' +``` + +By default, `cssesc` returns a string that can be used as part of a CSS string. If the target is a CSS identifier rather than a CSS string, use the `isIdentifier: true` setting (see below). + +The optional `options` argument accepts an object with the following options: + +#### `isIdentifier` + +The default value for the `isIdentifier` option is `false`. This means that the input text will be escaped for use in a CSS string literal. If you want to use the result as a CSS identifier instead (in a selector, for example), set this option to `true`. + +```js +cssesc('123a2b'); +// → '123a2b' + +cssesc('123a2b', { + 'isIdentifier': true +}); +// → '\\31 23a2b' +``` + +#### `quotes` + +The default value for the `quotes` option is `'single'`. This means that any occurences of `'` in the input text will be escaped as `\'`, so that the output can be used in a CSS string literal wrapped in single quotes. + +```js +cssesc('Lorem ipsum "dolor" sit \'amet\' etc.'); +// → 'Lorem ipsum "dolor" sit \\\'amet\\\' etc.' +// → "Lorem ipsum \"dolor\" sit \\'amet\\' etc." + +cssesc('Lorem ipsum "dolor" sit \'amet\' etc.', { + 'quotes': 'single' +}); +// → 'Lorem ipsum "dolor" sit \\\'amet\\\' etc.' +// → "Lorem ipsum \"dolor\" sit \\'amet\\' etc." +``` + +If you want to use the output as part of a CSS string literal wrapped in double quotes, set the `quotes` option to `'double'`. + +```js +cssesc('Lorem ipsum "dolor" sit \'amet\' etc.', { + 'quotes': 'double' +}); +// → 'Lorem ipsum \\"dolor\\" sit \'amet\' etc.' +// → "Lorem ipsum \\\"dolor\\\" sit 'amet' etc." +``` + +#### `wrap` + +The `wrap` option takes a boolean value (`true` or `false`), and defaults to `false` (disabled). When enabled, the output will be a valid CSS string literal wrapped in quotes. The type of quotes can be specified through the `quotes` setting. + +```js +cssesc('Lorem ipsum "dolor" sit \'amet\' etc.', { + 'quotes': 'single', + 'wrap': true +}); +// → '\'Lorem ipsum "dolor" sit \\\'amet\\\' etc.\'' +// → "\'Lorem ipsum \"dolor\" sit \\\'amet\\\' etc.\'" + +cssesc('Lorem ipsum "dolor" sit \'amet\' etc.', { + 'quotes': 'double', + 'wrap': true +}); +// → '"Lorem ipsum \\"dolor\\" sit \'amet\' etc."' +// → "\"Lorem ipsum \\\"dolor\\\" sit \'amet\' etc.\"" +``` + +#### `escapeEverything` + +The `escapeEverything` option takes a boolean value (`true` or `false`), and defaults to `false` (disabled). When enabled, all the symbols in the output will be escaped, even printable ASCII symbols. + +```js +cssesc('lolwat"foo\'bar', { + 'escapeEverything': true +}); +// → '\\6C\\6F\\6C\\77\\61\\74\\"\\66\\6F\\6F\\\'\\62\\61\\72' +// → "\\6C\\6F\\6C\\77\\61\\74\\\"\\66\\6F\\6F\\'\\62\\61\\72" +``` + +#### Overriding the default options globally + +The global default settings can be overridden by modifying the `css.options` object. This saves you from passing in an `options` object for every call to `encode` if you want to use the non-default setting. + +```js +// Read the global default setting for `escapeEverything`: +cssesc.options.escapeEverything; +// → `false` by default + +// Override the global default setting for `escapeEverything`: +cssesc.options.escapeEverything = true; + +// Using the global default setting for `escapeEverything`, which is now `true`: +cssesc('foo © bar ≠ baz 𝌆 qux'); +// → '\\66\\6F\\6F\\ \\A9\\ \\62\\61\\72\\ \\2260\\ \\62\\61\\7A\\ \\1D306\\ \\71\\75\\78' +``` + +### `cssesc.version` + +A string representing the semantic version number. + +### Using the `cssesc` binary + +To use the `cssesc` binary in your shell, simply install cssesc globally using npm: + +```bash +npm install -g cssesc +``` + +After that you will be able to escape text for use in CSS strings or identifiers from the command line: + +```bash +$ cssesc 'föo ♥ bår 𝌆 baz' +f\F6o \2665 b\E5r \1D306 baz +``` + +If the output needs to be a CSS identifier rather than part of a string literal, use the `-i`/`--identifier` option: + +```bash +$ cssesc --identifier 'föo ♥ bår 𝌆 baz' +f\F6o\ \2665\ b\E5r\ \1D306\ baz +``` + +See `cssesc --help` for the full list of options. + +## Support + +This library supports the Node.js and browser versions mentioned in [`.babelrc`](https://github.com/mathiasbynens/cssesc/blob/master/.babelrc). For a version that supports a wider variety of legacy browsers and environments out-of-the-box, [see v0.1.0](https://github.com/mathiasbynens/cssesc/releases/tag/v0.1.0). + +## Author + +| [![twitter/mathias](https://gravatar.com/avatar/24e08a9ea84deb17ae121074d0f17125?s=70)](https://twitter.com/mathias "Follow @mathias on Twitter") | +|---| +| [Mathias Bynens](https://mathiasbynens.be/) | + +## License + +This library is available under the [MIT](https://mths.be/mit) license. diff --git a/node_modules/cssesc/bin/cssesc b/node_modules/cssesc/bin/cssesc new file mode 100755 index 0000000..188c034 --- /dev/null +++ b/node_modules/cssesc/bin/cssesc @@ -0,0 +1,116 @@ +#!/usr/bin/env node +const fs = require('fs'); +const cssesc = require('../cssesc.js'); +const strings = process.argv.splice(2); +const stdin = process.stdin; +const options = {}; +const log = console.log; + +const main = function() { + const option = strings[0]; + + if (/^(?:-h|--help|undefined)$/.test(option)) { + log( + 'cssesc v%s - https://mths.be/cssesc', + cssesc.version + ); + log([ + '\nUsage:\n', + '\tcssesc [string]', + '\tcssesc [-i | --identifier] [string]', + '\tcssesc [-s | --single-quotes] [string]', + '\tcssesc [-d | --double-quotes] [string]', + '\tcssesc [-w | --wrap] [string]', + '\tcssesc [-e | --escape-everything] [string]', + '\tcssesc [-v | --version]', + '\tcssesc [-h | --help]', + '\nExamples:\n', + '\tcssesc \'f\xF6o \u2665 b\xE5r \uD834\uDF06 baz\'', + '\tcssesc --identifier \'f\xF6o \u2665 b\xE5r \uD834\uDF06 baz\'', + '\tcssesc --escape-everything \'f\xF6o \u2665 b\xE5r \uD834\uDF06 baz\'', + '\tcssesc --double-quotes --wrap \'f\xF6o \u2665 b\xE5r \uD834\uDF06 baz\'', + '\techo \'f\xF6o \u2665 b\xE5r \uD834\uDF06 baz\' | cssesc' + ].join('\n')); + return process.exit(1); + } + + if (/^(?:-v|--version)$/.test(option)) { + log('v%s', cssesc.version); + return process.exit(1); + } + + strings.forEach(function(string) { + // Process options + if (/^(?:-i|--identifier)$/.test(string)) { + options.isIdentifier = true; + return; + } + if (/^(?:-s|--single-quotes)$/.test(string)) { + options.quotes = 'single'; + return; + } + if (/^(?:-d|--double-quotes)$/.test(string)) { + options.quotes = 'double'; + return; + } + if (/^(?:-w|--wrap)$/.test(string)) { + options.wrap = true; + return; + } + if (/^(?:-e|--escape-everything)$/.test(string)) { + options.escapeEverything = true; + return; + } + + // Process string(s) + let result; + try { + result = cssesc(string, options); + log(result); + } catch (exception) { + log(exception.message + '\n'); + log('Error: failed to escape.'); + log('If you think this is a bug in cssesc, please report it:'); + log('https://github.com/mathiasbynens/cssesc/issues/new'); + log( + '\nStack trace using cssesc@%s:\n', + cssesc.version + ); + log(exception.stack); + return process.exit(1); + } + }); + // Return with exit status 0 outside of the `forEach` loop, in case + // multiple strings were passed in. + return process.exit(0); + +}; + +if (stdin.isTTY) { + // handle shell arguments + main(); +} else { + let timeout; + // Either the script is called from within a non-TTY context, or `stdin` + // content is being piped in. + if (!process.stdout.isTTY) { + // The script was called from a non-TTY context. This is a rather uncommon + // use case we don’t actively support. However, we don’t want the script + // to wait forever in such cases, so… + timeout = setTimeout(function() { + // …if no piped data arrived after a whole minute, handle shell + // arguments instead. + main(); + }, 60000); + } + let data = ''; + stdin.on('data', function(chunk) { + clearTimeout(timeout); + data += chunk; + }); + stdin.on('end', function() { + strings.push(data.trim()); + main(); + }); + stdin.resume(); +} diff --git a/node_modules/cssesc/cssesc.js b/node_modules/cssesc/cssesc.js new file mode 100644 index 0000000..1c0928e --- /dev/null +++ b/node_modules/cssesc/cssesc.js @@ -0,0 +1,110 @@ +/*! https://mths.be/cssesc v3.0.0 by @mathias */ +'use strict'; + +var object = {}; +var hasOwnProperty = object.hasOwnProperty; +var merge = function merge(options, defaults) { + if (!options) { + return defaults; + } + var result = {}; + for (var key in defaults) { + // `if (defaults.hasOwnProperty(key) { … }` is not needed here, since + // only recognized option names are used. + result[key] = hasOwnProperty.call(options, key) ? options[key] : defaults[key]; + } + return result; +}; + +var regexAnySingleEscape = /[ -,\.\/:-@\[-\^`\{-~]/; +var regexSingleEscape = /[ -,\.\/:-@\[\]\^`\{-~]/; +var regexAlwaysEscape = /['"\\]/; +var regexExcessiveSpaces = /(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![a-fA-F0-9\x20])/g; + +// https://mathiasbynens.be/notes/css-escapes#css +var cssesc = function cssesc(string, options) { + options = merge(options, cssesc.options); + if (options.quotes != 'single' && options.quotes != 'double') { + options.quotes = 'single'; + } + var quote = options.quotes == 'double' ? '"' : '\''; + var isIdentifier = options.isIdentifier; + + var firstChar = string.charAt(0); + var output = ''; + var counter = 0; + var length = string.length; + while (counter < length) { + var character = string.charAt(counter++); + var codePoint = character.charCodeAt(); + var value = void 0; + // If it’s not a printable ASCII character… + if (codePoint < 0x20 || codePoint > 0x7E) { + if (codePoint >= 0xD800 && codePoint <= 0xDBFF && counter < length) { + // It’s a high surrogate, and there is a next character. + var extra = string.charCodeAt(counter++); + if ((extra & 0xFC00) == 0xDC00) { + // next character is low surrogate + codePoint = ((codePoint & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000; + } else { + // It’s an unmatched surrogate; only append this code unit, in case + // the next code unit is the high surrogate of a surrogate pair. + counter--; + } + } + value = '\\' + codePoint.toString(16).toUpperCase() + ' '; + } else { + if (options.escapeEverything) { + if (regexAnySingleEscape.test(character)) { + value = '\\' + character; + } else { + value = '\\' + codePoint.toString(16).toUpperCase() + ' '; + } + } else if (/[\t\n\f\r\x0B]/.test(character)) { + value = '\\' + codePoint.toString(16).toUpperCase() + ' '; + } else if (character == '\\' || !isIdentifier && (character == '"' && quote == character || character == '\'' && quote == character) || isIdentifier && regexSingleEscape.test(character)) { + value = '\\' + character; + } else { + value = character; + } + } + output += value; + } + + if (isIdentifier) { + if (/^-[-\d]/.test(output)) { + output = '\\-' + output.slice(1); + } else if (/\d/.test(firstChar)) { + output = '\\3' + firstChar + ' ' + output.slice(1); + } + } + + // Remove spaces after `\HEX` escapes that are not followed by a hex digit, + // since they’re redundant. Note that this is only possible if the escape + // sequence isn’t preceded by an odd number of backslashes. + output = output.replace(regexExcessiveSpaces, function ($0, $1, $2) { + if ($1 && $1.length % 2) { + // It’s not safe to remove the space, so don’t. + return $0; + } + // Strip the space. + return ($1 || '') + $2; + }); + + if (!isIdentifier && options.wrap) { + return quote + output + quote; + } + return output; +}; + +// Expose default options (so they can be overridden globally). +cssesc.options = { + 'escapeEverything': false, + 'isIdentifier': false, + 'quotes': 'single', + 'wrap': false +}; + +cssesc.version = '3.0.0'; + +module.exports = cssesc; diff --git a/node_modules/cssesc/man/cssesc.1 b/node_modules/cssesc/man/cssesc.1 new file mode 100644 index 0000000..eee4996 --- /dev/null +++ b/node_modules/cssesc/man/cssesc.1 @@ -0,0 +1,70 @@ +.Dd August 9, 2013 +.Dt cssesc 1 +.Sh NAME +.Nm cssesc +.Nd escape text for use in CSS string literals or identifiers +.Sh SYNOPSIS +.Nm +.Op Fl i | -identifier Ar string +.br +.Op Fl s | -single-quotes Ar string +.br +.Op Fl d | -double-quotes Ar string +.br +.Op Fl w | -wrap Ar string +.br +.Op Fl e | -escape-everything Ar string +.br +.Op Fl v | -version +.br +.Op Fl h | -help +.Sh DESCRIPTION +.Nm +escapes strings for use in CSS string literals or identifiers while generating the shortest possible valid ASCII-only output. +.Sh OPTIONS +.Bl -ohang -offset +.It Sy "-s, --single-quotes" +Escape any occurences of ' in the input string as \\', so that the output can be used in a CSS string literal wrapped in single quotes. +.It Sy "-d, --double-quotes" +Escape any occurences of " in the input string as \\", so that the output can be used in a CSS string literal wrapped in double quotes. +.It Sy "-w, --wrap" +Make sure the output is a valid CSS string literal wrapped in quotes. The type of quotes can be specified using the +.Ar -s | --single-quotes +or +.Ar -d | --double-quotes +settings. +.It Sy "-e, --escape-everything" +Escape all the symbols in the output, even printable ASCII symbols. +.It Sy "-v, --version" +Print cssesc's version. +.It Sy "-h, --help" +Show the help screen. +.El +.Sh EXIT STATUS +The +.Nm cssesc +utility exits with one of the following values: +.Pp +.Bl -tag -width flag -compact +.It Li 0 +.Nm +successfully escaped the given text and printed the result. +.It Li 1 +.Nm +wasn't instructed to escape anything (for example, the +.Ar --help +flag was set); or, an error occurred. +.El +.Sh EXAMPLES +.Bl -ohang -offset +.It Sy "cssesc 'foo bar baz'" +Print an escaped version of the given text. +.It Sy echo\ 'foo bar baz'\ |\ cssesc +Print an escaped version of the text that gets piped in. +.El +.Sh BUGS +cssesc's bug tracker is located at . +.Sh AUTHOR +Mathias Bynens +.Sh WWW + diff --git a/node_modules/cssesc/package.json b/node_modules/cssesc/package.json new file mode 100644 index 0000000..076c84d --- /dev/null +++ b/node_modules/cssesc/package.json @@ -0,0 +1,51 @@ +{ + "name": "cssesc", + "version": "3.0.0", + "description": "A JavaScript library for escaping CSS strings and identifiers while generating the shortest possible ASCII-only output.", + "homepage": "https://mths.be/cssesc", + "engines": { + "node": ">=4" + }, + "main": "cssesc.js", + "bin": "bin/cssesc", + "man": "man/cssesc.1", + "keywords": [ + "css", + "escape", + "identifier", + "string", + "tool" + ], + "license": "MIT", + "author": { + "name": "Mathias Bynens", + "url": "https://mathiasbynens.be/" + }, + "repository": { + "type": "git", + "url": "https://github.com/mathiasbynens/cssesc.git" + }, + "bugs": "https://github.com/mathiasbynens/cssesc/issues", + "files": [ + "LICENSE-MIT.txt", + "cssesc.js", + "bin/", + "man/" + ], + "scripts": { + "build": "grunt template && babel cssesc.js -o cssesc.js", + "test": "mocha tests", + "cover": "istanbul cover --report html node_modules/.bin/_mocha tests -- -u exports -R spec" + }, + "devDependencies": { + "babel-cli": "^6.26.0", + "babel-preset-env": "^1.6.1", + "codecov": "^1.0.1", + "grunt": "^1.0.1", + "grunt-template": "^1.0.0", + "istanbul": "^0.4.4", + "mocha": "^2.5.3", + "regenerate": "^1.2.1", + "requirejs": "^2.1.16" + } +} diff --git a/node_modules/dependency-graph/CHANGELOG.md b/node_modules/dependency-graph/CHANGELOG.md new file mode 100755 index 0000000..5e6c4d9 --- /dev/null +++ b/node_modules/dependency-graph/CHANGELOG.md @@ -0,0 +1,82 @@ +# Dependency Graph Changelog + +## 0.11.0 (March 5, 2021) + +- Add `entryNodes` method that returns the nodes that nothing depends on - thanks [amcdnl](https://github.com/amcdnl)! + +## 0.10.0 (January 9, 2021) + +- Add `directDependenciesOf` and `directDependantsOf` methods for retrieving direct dependency information. (Fixes #40) +- Add aliases `dependentsOf` and `directDependentsOf`. + +## 0.9.0 (February 10, 2020) + +- Rewrite the topological sort DFS to be more efficient (and work!) on large graphs. + - No longer uses recursion to avoid stack overflows with large/deep graphs + - No longer is accidentally `O(N^2)` (thanks [willtennien](https://github.com/willtennien) for pointing this out!) + +## 0.8.1 (December 3, 2019) + +- Ensure all nodes are included in overallOrder when cycles are allowed. (Fixes #33) + +## 0.8.0 (December 11, 2018) + +- Add a `DepGraphCycleError` with cyclePath property - thanks [jhugman](https://github.com/jhugman)! + +## 0.7.2 (August 30, 2018) + +- Make constructor parameter optional in Typescript definition. (Fixes #26) + +## 0.7.1 (June 5, 2018) + +- Fix Typescript definition to include the new constructor arguments added in `0.7.0` - thanks [tbranyen](https://github.com/tbranyen)! + +## 0.7.0 (January 17, 2018) + +- Allow circular dependencies by passing in `{circular: true}` into the constructor - thanks [tbranyen](https://github.com/tbranyen)! + +## 0.6.0 (October 22, 2017) + +- Add a `size` method that will return the number of nodes in the graph. +- Add a `clone` method that will clone the graph. Any custom node data will only be shallow-copied. (Fixes #14) + +## 0.5.2 (October 22, 2017) + +- Add missing parameter in TypeScript definition. (Fixes #19) + +## 0.5.1 (October 7, 2017) + +- Now exposes Typescript type definition - thanks [vangorra](https://github.com/vangorra)! + +## 0.5.0 (April 26, 2016) + +- Add optional data parameter for the addNode method. (Fixes #12) +- Add methods getNodeData and setNodeData to manipulate the data associated with a node name. (Fixes #12) +- Change the hasNode method to be able to cope with falsy node data. (Fixes #12) + +## 0.4.1 (Sept 3, 2015) + +- Check all nodes for potential cycles when calculating overall order. (Fixes #8) + +## 0.4.0 (Aug 1, 2015) + +- Better error messages + - When a cycle is detected, the error message will now include the cycle in it. E.g `Dependency Cycle Found: a -> b -> c -> a` (Fixes #7) + - When calling `addDependency` if one of the nodes does not exist, the error will say which one it was (instead of saying that "one" of the two nodes did not exist and making you manually determine which one) +- Calling `overallOrder` on an empty graph will no longer throw an error about a dependency cycle. It will return an empty array. + +## 0.3.0 (July 24, 2015) + +- Fix issue where if you call `addNode` twice with the same name, it would clear all edges for that node. Now it will do nothing if a node with the specified name already exists. (Fixes #3) + +## 0.2.1 (July 3, 2015) + +- Fixed removeNode leaving references in outgoingEdges and reference to non-existent var edges - thanks [juhoha](https://github.com/juhoha)! (Fixes #2) + +## 0.2.0 (May 1, 2015) + +- Removed dependency on Underscore - thanks [myndzi](https://github.com/myndzi)! (Fixes #1) + +## 0.1.0 (May 18, 2013) + +- Initial Release - extracted out of asset-smasher diff --git a/node_modules/dependency-graph/LICENSE b/node_modules/dependency-graph/LICENSE new file mode 100755 index 0000000..6ebe5b6 --- /dev/null +++ b/node_modules/dependency-graph/LICENSE @@ -0,0 +1,19 @@ +Copyright (C) 2013-2020 by Jim Riecken + +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. \ No newline at end of file diff --git a/node_modules/dependency-graph/README.md b/node_modules/dependency-graph/README.md new file mode 100755 index 0000000..763aaf8 --- /dev/null +++ b/node_modules/dependency-graph/README.md @@ -0,0 +1,78 @@ +# Dependency Graph + +Simple dependency graph + +## Overview + +This is a simple dependency graph useful for determining the order to do a list of things that depend on certain items being done before they are. + +To use, `npm install dependency-graph` and then `require('dependency-graph').DepGraph` + +## API + +### DepGraph + +Nodes in the graph are just simple strings with optional data associated with them. + + - `addNode(name, data)` - add a node in the graph with optional data. If `data` is not given, `name` will be used as data + - `removeNode(name)` - remove a node from the graph + - `hasNode(name)` - check if a node exists in the graph + - `size()` - return the number of nodes in the graph + - `getNodeData(name)` - get the data associated with a node (will throw an `Error` if the node does not exist) + - `setNodeData(name, data)` - set the data for an existing node (will throw an `Error` if the node does not exist) + - `addDependency(from, to)` - add a dependency between two nodes (will throw an `Error` if one of the nodes does not exist) + - `removeDependency(from, to)` - remove a dependency between two nodes + - `clone()` - return a clone of the graph. Any data attached to the nodes will only be *shallow-copied* + - `dependenciesOf(name, leavesOnly)` - get an array containing the nodes that the specified node depends on (transitively). If `leavesOnly` is true, only nodes that do not depend on any other nodes will be returned in the array. + - `dependantsOf(name, leavesOnly)` (aliased as `dependentsOf`) - get an array containing the nodes that depend on the specified node (transitively). If `leavesOnly` is true, only nodes that do not have any dependants will be returned in the array. + - `directDependenciesOf(name)` - get an array containing the direct dependencies of the specified node + - `directDependantsOf(name)` (aliased as `directDependentsOf`) - get an array containing the nodes that directly depend on the specified node + - `overallOrder(leavesOnly)` - construct the overall processing order for the dependency graph. If `leavesOnly` is true, only nodes that do not depend on any other nodes will be returned. + - `entryNodes()` - array of nodes that have no dependants (i.e. nothing depends on them). + +Dependency Cycles are detected when running `dependenciesOf`, `dependantsOf`, and `overallOrder` and if one is found, a `DepGraphCycleError` will be thrown that includes what the cycle was in the message as well as the `cyclePath` property: e.g. `Dependency Cycle Found: a -> b -> c -> a`. If you wish to silence this error, pass `circular: true` when instantiating `DepGraph` (more below). + +## Examples + + var DepGraph = require('dependency-graph').DepGraph; + + var graph = new DepGraph(); + graph.addNode('a'); + graph.addNode('b'); + graph.addNode('c'); + + graph.size() // 3 + + graph.addDependency('a', 'b'); + graph.addDependency('b', 'c'); + + graph.dependenciesOf('a'); // ['c', 'b'] + graph.dependenciesOf('b'); // ['c'] + graph.dependantsOf('c'); // ['a', 'b'] + + graph.overallOrder(); // ['c', 'b', 'a'] + graph.overallOrder(true); // ['c'] + graph.entryNodes(); // ['a'] + + graph.addNode('d', 'data'); + + graph.getNodeData('d'); // 'data' + + graph.setNodeData('d', 'newData'); + + graph.getNodeData('d'); // 'newData' + + var circularGraph = new DepGraph({ circular: true }); + + circularGraph.addNode('a'); + circularGraph.addNode('b'); + circularGraph.addNode('c'); + circularGraph.addNode('d'); + + circularGraph.addDependency('a', 'b'); + circularGraph.addDependency('b', 'c'); // b depends on c + circularGraph.addDependency('c', 'a'); // c depends on a, which depends on b + circularGraph.addDependency('d', 'a'); + + circularGraph.dependenciesOf('b'); // ['a', 'c'] + circularGraph.overallOrder(); // ['c', 'b', 'a', 'd'] diff --git a/node_modules/dependency-graph/lib/dep_graph.js b/node_modules/dependency-graph/lib/dep_graph.js new file mode 100755 index 0000000..a64f801 --- /dev/null +++ b/node_modules/dependency-graph/lib/dep_graph.js @@ -0,0 +1,364 @@ +/** + * A simple dependency graph + */ + +/** + * Helper for creating a Topological Sort using Depth-First-Search on a set of edges. + * + * Detects cycles and throws an Error if one is detected (unless the "circular" + * parameter is "true" in which case it ignores them). + * + * @param edges The set of edges to DFS through + * @param leavesOnly Whether to only return "leaf" nodes (ones who have no edges) + * @param result An array in which the results will be populated + * @param circular A boolean to allow circular dependencies + */ +function createDFS(edges, leavesOnly, result, circular) { + var visited = {}; + return function (start) { + if (visited[start]) { + return; + } + var inCurrentPath = {}; + var currentPath = []; + var todo = []; // used as a stack + todo.push({ node: start, processed: false }); + while (todo.length > 0) { + var current = todo[todo.length - 1]; // peek at the todo stack + var processed = current.processed; + var node = current.node; + if (!processed) { + // Haven't visited edges yet (visiting phase) + if (visited[node]) { + todo.pop(); + continue; + } else if (inCurrentPath[node]) { + // It's not a DAG + if (circular) { + todo.pop(); + // If we're tolerating cycles, don't revisit the node + continue; + } + currentPath.push(node); + throw new DepGraphCycleError(currentPath); + } + + inCurrentPath[node] = true; + currentPath.push(node); + var nodeEdges = edges[node]; + // (push edges onto the todo stack in reverse order to be order-compatible with the old DFS implementation) + for (var i = nodeEdges.length - 1; i >= 0; i--) { + todo.push({ node: nodeEdges[i], processed: false }); + } + current.processed = true; + } else { + // Have visited edges (stack unrolling phase) + todo.pop(); + currentPath.pop(); + inCurrentPath[node] = false; + visited[node] = true; + if (!leavesOnly || edges[node].length === 0) { + result.push(node); + } + } + } + }; +} + +/** + * Simple Dependency Graph + */ +var DepGraph = (exports.DepGraph = function DepGraph(opts) { + this.nodes = {}; // Node -> Node/Data (treated like a Set) + this.outgoingEdges = {}; // Node -> [Dependency Node] + this.incomingEdges = {}; // Node -> [Dependant Node] + this.circular = opts && !!opts.circular; // Allows circular deps +}); +DepGraph.prototype = { + /** + * The number of nodes in the graph. + */ + size: function () { + return Object.keys(this.nodes).length; + }, + /** + * Add a node to the dependency graph. If a node already exists, this method will do nothing. + */ + addNode: function (node, data) { + if (!this.hasNode(node)) { + // Checking the arguments length allows the user to add a node with undefined data + if (arguments.length === 2) { + this.nodes[node] = data; + } else { + this.nodes[node] = node; + } + this.outgoingEdges[node] = []; + this.incomingEdges[node] = []; + } + }, + /** + * Remove a node from the dependency graph. If a node does not exist, this method will do nothing. + */ + removeNode: function (node) { + if (this.hasNode(node)) { + delete this.nodes[node]; + delete this.outgoingEdges[node]; + delete this.incomingEdges[node]; + [this.incomingEdges, this.outgoingEdges].forEach(function (edgeList) { + Object.keys(edgeList).forEach(function (key) { + var idx = edgeList[key].indexOf(node); + if (idx >= 0) { + edgeList[key].splice(idx, 1); + } + }, this); + }); + } + }, + /** + * Check if a node exists in the graph + */ + hasNode: function (node) { + return this.nodes.hasOwnProperty(node); + }, + /** + * Get the data associated with a node name + */ + getNodeData: function (node) { + if (this.hasNode(node)) { + return this.nodes[node]; + } else { + throw new Error("Node does not exist: " + node); + } + }, + /** + * Set the associated data for a given node name. If the node does not exist, this method will throw an error + */ + setNodeData: function (node, data) { + if (this.hasNode(node)) { + this.nodes[node] = data; + } else { + throw new Error("Node does not exist: " + node); + } + }, + /** + * Add a dependency between two nodes. If either of the nodes does not exist, + * an Error will be thrown. + */ + addDependency: function (from, to) { + if (!this.hasNode(from)) { + throw new Error("Node does not exist: " + from); + } + if (!this.hasNode(to)) { + throw new Error("Node does not exist: " + to); + } + if (this.outgoingEdges[from].indexOf(to) === -1) { + this.outgoingEdges[from].push(to); + } + if (this.incomingEdges[to].indexOf(from) === -1) { + this.incomingEdges[to].push(from); + } + return true; + }, + /** + * Remove a dependency between two nodes. + */ + removeDependency: function (from, to) { + var idx; + if (this.hasNode(from)) { + idx = this.outgoingEdges[from].indexOf(to); + if (idx >= 0) { + this.outgoingEdges[from].splice(idx, 1); + } + } + + if (this.hasNode(to)) { + idx = this.incomingEdges[to].indexOf(from); + if (idx >= 0) { + this.incomingEdges[to].splice(idx, 1); + } + } + }, + /** + * Return a clone of the dependency graph. If any custom data is attached + * to the nodes, it will only be shallow copied. + */ + clone: function () { + var source = this; + var result = new DepGraph(); + var keys = Object.keys(source.nodes); + keys.forEach(function (n) { + result.nodes[n] = source.nodes[n]; + result.outgoingEdges[n] = source.outgoingEdges[n].slice(0); + result.incomingEdges[n] = source.incomingEdges[n].slice(0); + }); + return result; + }, + /** + * Get an array containing the direct dependencies of the specified node. + * + * Throws an Error if the specified node does not exist. + */ + directDependenciesOf: function (node) { + if (this.hasNode(node)) { + return this.outgoingEdges[node].slice(0); + } else { + throw new Error("Node does not exist: " + node); + } + }, + /** + * Get an array containing the nodes that directly depend on the specified node. + * + * Throws an Error if the specified node does not exist. + */ + directDependantsOf: function (node) { + if (this.hasNode(node)) { + return this.incomingEdges[node].slice(0); + } else { + throw new Error("Node does not exist: " + node); + } + }, + /** + * Get an array containing the nodes that the specified node depends on (transitively). + * + * Throws an Error if the graph has a cycle, or the specified node does not exist. + * + * If `leavesOnly` is true, only nodes that do not depend on any other nodes will be returned + * in the array. + */ + dependenciesOf: function (node, leavesOnly) { + if (this.hasNode(node)) { + var result = []; + var DFS = createDFS( + this.outgoingEdges, + leavesOnly, + result, + this.circular + ); + DFS(node); + var idx = result.indexOf(node); + if (idx >= 0) { + result.splice(idx, 1); + } + return result; + } else { + throw new Error("Node does not exist: " + node); + } + }, + /** + * get an array containing the nodes that depend on the specified node (transitively). + * + * Throws an Error if the graph has a cycle, or the specified node does not exist. + * + * If `leavesOnly` is true, only nodes that do not have any dependants will be returned in the array. + */ + dependantsOf: function (node, leavesOnly) { + if (this.hasNode(node)) { + var result = []; + var DFS = createDFS( + this.incomingEdges, + leavesOnly, + result, + this.circular + ); + DFS(node); + var idx = result.indexOf(node); + if (idx >= 0) { + result.splice(idx, 1); + } + return result; + } else { + throw new Error("Node does not exist: " + node); + } + }, + /** + * Construct the overall processing order for the dependency graph. + * + * Throws an Error if the graph has a cycle. + * + * If `leavesOnly` is true, only nodes that do not depend on any other nodes will be returned. + */ + overallOrder: function (leavesOnly) { + var self = this; + var result = []; + var keys = Object.keys(this.nodes); + if (keys.length === 0) { + return result; // Empty graph + } else { + if (!this.circular) { + // Look for cycles - we run the DFS starting at all the nodes in case there + // are several disconnected subgraphs inside this dependency graph. + var CycleDFS = createDFS(this.outgoingEdges, false, [], this.circular); + keys.forEach(function (n) { + CycleDFS(n); + }); + } + + var DFS = createDFS( + this.outgoingEdges, + leavesOnly, + result, + this.circular + ); + // Find all potential starting points (nodes with nothing depending on them) an + // run a DFS starting at these points to get the order + keys + .filter(function (node) { + return self.incomingEdges[node].length === 0; + }) + .forEach(function (n) { + DFS(n); + }); + + // If we're allowing cycles - we need to run the DFS against any remaining + // nodes that did not end up in the initial result (as they are part of a + // subgraph that does not have a clear starting point) + if (this.circular) { + keys + .filter(function (node) { + return result.indexOf(node) === -1; + }) + .forEach(function (n) { + DFS(n); + }); + } + + return result; + } + }, + /** + * Get an array of nodes that have no dependants (i.e. nothing depends on them). + */ + entryNodes: function () { + var self = this; + return Object.keys(this.nodes).filter(function (node) { + return self.incomingEdges[node].length === 0; + }); + } +}; + +// Create some aliases +DepGraph.prototype.directDependentsOf = DepGraph.prototype.directDependantsOf; +DepGraph.prototype.dependentsOf = DepGraph.prototype.dependantsOf; + +/** + * Cycle error, including the path of the cycle. + */ +var DepGraphCycleError = (exports.DepGraphCycleError = function (cyclePath) { + var message = "Dependency Cycle Found: " + cyclePath.join(" -> "); + var instance = new Error(message); + instance.cyclePath = cyclePath; + Object.setPrototypeOf(instance, Object.getPrototypeOf(this)); + if (Error.captureStackTrace) { + Error.captureStackTrace(instance, DepGraphCycleError); + } + return instance; +}); +DepGraphCycleError.prototype = Object.create(Error.prototype, { + constructor: { + value: Error, + enumerable: false, + writable: true, + configurable: true + } +}); +Object.setPrototypeOf(DepGraphCycleError, Error); diff --git a/node_modules/dependency-graph/lib/index.d.ts b/node_modules/dependency-graph/lib/index.d.ts new file mode 100755 index 0000000..6ed8de5 --- /dev/null +++ b/node_modules/dependency-graph/lib/index.d.ts @@ -0,0 +1,127 @@ +declare module 'dependency-graph' { + export interface Options { + circular?: boolean; + } + + export class DepGraph { + /** + * Creates an instance of DepGraph with optional Options. + */ + constructor(opts?: Options); + + /** + * The number of nodes in the graph. + */ + size(): number; + + /** + * Add a node in the graph with optional data. If data is not given, name will be used as data. + * @param {string} name + * @param data + */ + addNode(name: string, data?: T): void; + + /** + * Remove a node from the graph. + * @param {string} name + */ + removeNode(name: string): void; + + /** + * Check if a node exists in the graph. + * @param {string} name + */ + hasNode(name: string): boolean; + + /** + * Get the data associated with a node (will throw an Error if the node does not exist). + * @param {string} name + */ + getNodeData(name: string): T; + + /** + * Set the data for an existing node (will throw an Error if the node does not exist). + * @param {string} name + * @param data + */ + setNodeData(name: string, data?: T): void; + + /** + * Add a dependency between two nodes (will throw an Error if one of the nodes does not exist). + * @param {string} from + * @param {string} to + */ + addDependency(from: string, to: string): void; + + /** + * Remove a dependency between two nodes. + * @param {string} from + * @param {string} to + */ + removeDependency(from: string, to: string): void; + + /** + * Return a clone of the dependency graph (If any custom data is attached + * to the nodes, it will only be shallow copied). + */ + clone(): DepGraph; + + /** + * Get an array containing the direct dependency nodes of the specified node. + * @param name + */ + directDependenciesOf(name: string): string[]; + + /** + * Get an array containing the nodes that directly depend on the specified node. + * @param name + */ + directDependantsOf(name: string): string[]; + + /** + * Alias of `directDependantsOf` + * + * @see directDependantsOf + * @param {string} name + */ + directDependentsOf(name: string): string[]; + + /** + * Get an array containing the nodes that the specified node depends on (transitively). If leavesOnly is true, only nodes that do not depend on any other nodes will be returned in the array. + * @param {string} name + * @param {boolean} leavesOnly + */ + dependenciesOf(name: string, leavesOnly?: boolean): string[]; + + /** + * Get an array containing the nodes that depend on the specified node (transitively). If leavesOnly is true, only nodes that do not have any dependants will be returned in the array. + * @param {string} name + * @param {boolean} leavesOnly + */ + dependantsOf(name: string, leavesOnly?: boolean): string[]; + + /** + * Alias of `dependantsOf` + * + * @see dependantsOf + * @param name + * @param leavesOnly + */ + dependentsOf(name: string, leavesOnly?: boolean): string[]; + + /** + * Get an array of nodes that have no dependants (i.e. nothing depends on them). + */ + entryNodes(): string[]; + + /** + * Construct the overall processing order for the dependency graph. If leavesOnly is true, only nodes that do not depend on any other nodes will be returned. + * @param {boolean} leavesOnly + */ + overallOrder(leavesOnly?: boolean): string[]; + } + + export class DepGraphCycleError extends Error { + cyclePath: string[]; + } +} diff --git a/node_modules/dependency-graph/package.json b/node_modules/dependency-graph/package.json new file mode 100755 index 0000000..d965899 --- /dev/null +++ b/node_modules/dependency-graph/package.json @@ -0,0 +1,31 @@ +{ + "name": "dependency-graph", + "description": "Simple dependency graph.", + "version": "0.11.0", + "author": "Jim Riecken ", + "keywords": [ + "dependency", + "graph" + ], + "license": "MIT", + "repository": { + "type": "git", + "url": "git://github.com/jriecken/dependency-graph.git" + }, + "bugs": { + "url": "http://github.com/jriecken/dependency-graph/issues" + }, + "main": "./lib/dep_graph.js", + "scripts": { + "test": "jasmine specs/**/*.js" + }, + "dependencies": {}, + "optionalDependencies": {}, + "devDependencies": { + "jasmine": "3.5.0" + }, + "engines": { + "node": ">= 0.6.0" + }, + "types": "./lib/index.d.ts" +} \ No newline at end of file diff --git a/node_modules/dependency-graph/specs/dep_graph_spec.js b/node_modules/dependency-graph/specs/dep_graph_spec.js new file mode 100755 index 0000000..07aa68e --- /dev/null +++ b/node_modules/dependency-graph/specs/dep_graph_spec.js @@ -0,0 +1,542 @@ +var dep_graph = require("../lib/dep_graph"); +var DepGraph = dep_graph.DepGraph; + +describe("DepGraph", function () { + it("should be able to add/remove nodes", function () { + var graph = new DepGraph(); + + graph.addNode("Foo"); + graph.addNode("Bar"); + + expect(graph.hasNode("Foo")).toBeTrue(); + expect(graph.hasNode("Bar")).toBeTrue(); + expect(graph.hasNode("NotThere")).toBeFalse(); + + graph.removeNode("Bar"); + + expect(graph.hasNode("Bar")).toBeFalse(); + }); + + it("should calculate its size", function () { + var graph = new DepGraph(); + + expect(graph.size()).toBe(0); + + graph.addNode("Foo"); + graph.addNode("Bar"); + + expect(graph.size()).toBe(2); + + graph.removeNode("Bar"); + + expect(graph.size()).toBe(1); + }); + + it("should treat the node data parameter as optional and use the node name as data if node data was not given", function () { + var graph = new DepGraph(); + + graph.addNode("Foo"); + + expect(graph.getNodeData("Foo")).toBe("Foo"); + }); + + it("should be able to associate a node name with data on node add", function () { + var graph = new DepGraph(); + + graph.addNode("Foo", "data"); + + expect(graph.getNodeData("Foo")).toBe("data"); + }); + + it("should be able to add undefined as node data", function () { + var graph = new DepGraph(); + + graph.addNode("Foo", undefined); + + expect(graph.getNodeData("Foo")).toBeUndefined(); + }); + + it("should return true when using hasNode with a node which has falsy data", function () { + var graph = new DepGraph(); + + var falsyData = ["", 0, null, undefined, false]; + graph.addNode("Foo"); + + falsyData.forEach(function (data) { + graph.setNodeData("Foo", data); + + expect(graph.hasNode("Foo")).toBeTrue(); + + // Just an extra check to make sure that the saved data is correct + expect(graph.getNodeData("Foo")).toBe(data); + }); + }); + + it("should be able to set data after a node was added", function () { + var graph = new DepGraph(); + + graph.addNode("Foo", "data"); + graph.setNodeData("Foo", "data2"); + + expect(graph.getNodeData("Foo")).toBe("data2"); + }); + + it("should throw an error if we try to set data for a non-existing node", function () { + var graph = new DepGraph(); + + expect(function () { + graph.setNodeData("Foo", "data"); + }).toThrow(new Error("Node does not exist: Foo")); + }); + + it("should throw an error if the node does not exists and we try to get data", function () { + var graph = new DepGraph(); + + expect(function () { + graph.getNodeData("Foo"); + }).toThrow(new Error("Node does not exist: Foo")); + }); + + it("should do nothing if creating a node that already exists", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + + graph.addDependency("a", "b"); + + graph.addNode("a"); + + expect(graph.dependenciesOf("a")).toEqual(["b"]); + }); + + it("should do nothing if removing a node that does not exist", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + expect(graph.hasNode("a")).toBeTrue(); + + graph.removeNode("a"); + expect(graph.hasNode("Foo")).toBeFalse(); + + graph.removeNode("a"); + expect(graph.hasNode("Foo")).toBeFalse(); + }); + + it("should be able to add dependencies between nodes", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + + graph.addDependency("a", "b"); + graph.addDependency("a", "c"); + + expect(graph.dependenciesOf("a")).toEqual(["b", "c"]); + }); + + it("should find entry nodes", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + + graph.addDependency("a", "b"); + graph.addDependency("a", "c"); + + expect(graph.entryNodes()).toEqual(["a"]); + }); + + it("should throw an error if a node does not exist and a dependency is added", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + + expect(function () { + graph.addDependency("a", "b"); + }).toThrow(new Error("Node does not exist: b")); + }); + + it("should detect cycles", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + graph.addNode("d"); + + graph.addDependency("a", "b"); + graph.addDependency("b", "c"); + graph.addDependency("c", "a"); + graph.addDependency("d", "a"); + + expect(function () { + graph.dependenciesOf("b"); + }).toThrow(new dep_graph.DepGraphCycleError(["b", "c", "a", "b"])); + }); + + it("should allow cycles when configured", function () { + var graph = new DepGraph({ circular: true }); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + graph.addNode("d"); + + graph.addDependency("a", "b"); + graph.addDependency("b", "c"); + graph.addDependency("c", "a"); + graph.addDependency("d", "a"); + + expect(graph.dependenciesOf("b")).toEqual(["a", "c"]); + expect(graph.overallOrder()).toEqual(["c", "b", "a", "d"]); + }); + + it( + "should include all nodes in overall order even from " + + "cycles in disconnected subgraphs when circular is true", + function () { + var graph = new DepGraph({ circular: true }); + + graph.addNode("2a"); + graph.addNode("2b"); + graph.addNode("2c"); + graph.addDependency("2a", "2b"); + graph.addDependency("2b", "2c"); + graph.addDependency("2c", "2a"); + + graph.addNode("1a"); + graph.addNode("1b"); + graph.addNode("1c"); + graph.addNode("1d"); + graph.addNode("1e"); + + graph.addDependency("1a", "1b"); + graph.addDependency("1a", "1c"); + graph.addDependency("1b", "1c"); + graph.addDependency("1c", "1d"); + + expect(graph.overallOrder()).toEqual([ + "1d", + "1c", + "1b", + "1a", + "1e", + "2c", + "2b", + "2a" + ]); + } + ); + + it("should detect cycles in overall order", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + graph.addNode("d"); + + graph.addDependency("a", "b"); + graph.addDependency("b", "c"); + graph.addDependency("c", "a"); + graph.addDependency("d", "a"); + + expect(function () { + graph.overallOrder(); + }).toThrow(new dep_graph.DepGraphCycleError(["a", "b", "c", "a"])); + }); + + it("should detect cycles in overall order when all nodes have dependants (incoming edges)", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + + graph.addDependency("a", "b"); + graph.addDependency("b", "c"); + graph.addDependency("c", "a"); + + expect(function () { + graph.overallOrder(); + }).toThrow(new dep_graph.DepGraphCycleError(["a", "b", "c", "a"])); + }); + + it( + "should detect cycles in overall order when there are several " + + "disconnected subgraphs (with one that does not have a cycle", + function () { + var graph = new DepGraph(); + + graph.addNode("a_1"); + graph.addNode("a_2"); + graph.addNode("b_1"); + graph.addNode("b_2"); + graph.addNode("b_3"); + + graph.addDependency("a_1", "a_2"); + graph.addDependency("b_1", "b_2"); + graph.addDependency("b_2", "b_3"); + graph.addDependency("b_3", "b_1"); + + expect(function () { + graph.overallOrder(); + }).toThrow( + new dep_graph.DepGraphCycleError(["b_1", "b_2", "b_3", "b_1"]) + ); + } + ); + + it("should retrieve dependencies and dependants in the correct order", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + graph.addNode("d"); + + graph.addDependency("a", "d"); + graph.addDependency("a", "b"); + graph.addDependency("b", "c"); + graph.addDependency("d", "b"); + + expect(graph.dependenciesOf("a")).toEqual(["c", "b", "d"]); + expect(graph.dependenciesOf("b")).toEqual(["c"]); + expect(graph.dependenciesOf("c")).toEqual([]); + expect(graph.dependenciesOf("d")).toEqual(["c", "b"]); + + expect(graph.dependantsOf("a")).toEqual([]); + expect(graph.dependantsOf("b")).toEqual(["a", "d"]); + expect(graph.dependantsOf("c")).toEqual(["a", "d", "b"]); + expect(graph.dependantsOf("d")).toEqual(["a"]); + + // check the alias "dependentsOf" + expect(graph.dependentsOf("a")).toEqual([]); + expect(graph.dependentsOf("b")).toEqual(["a", "d"]); + expect(graph.dependentsOf("c")).toEqual(["a", "d", "b"]); + expect(graph.dependentsOf("d")).toEqual(["a"]); + }); + + it("should be able to retrieve direct dependencies/dependants", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + graph.addNode("d"); + + graph.addDependency("a", "d"); + graph.addDependency("a", "b"); + graph.addDependency("b", "c"); + graph.addDependency("d", "b"); + + expect(graph.directDependenciesOf("a")).toEqual(["d", "b"]); + expect(graph.directDependenciesOf("b")).toEqual(["c"]); + expect(graph.directDependenciesOf("c")).toEqual([]); + expect(graph.directDependenciesOf("d")).toEqual(["b"]); + + expect(graph.directDependantsOf("a")).toEqual([]); + expect(graph.directDependantsOf("b")).toEqual(["a", "d"]); + expect(graph.directDependantsOf("c")).toEqual(["b"]); + expect(graph.directDependantsOf("d")).toEqual(["a"]); + + // check the alias "directDependentsOf" + expect(graph.directDependentsOf("a")).toEqual([]); + expect(graph.directDependentsOf("b")).toEqual(["a", "d"]); + expect(graph.directDependentsOf("c")).toEqual(["b"]); + expect(graph.directDependentsOf("d")).toEqual(["a"]); + }); + + it("should be able to resolve the overall order of things", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + graph.addNode("d"); + graph.addNode("e"); + + graph.addDependency("a", "b"); + graph.addDependency("a", "c"); + graph.addDependency("b", "c"); + graph.addDependency("c", "d"); + + expect(graph.overallOrder()).toEqual(["d", "c", "b", "a", "e"]); + }); + + it('should be able to only retrieve the "leaves" in the overall order', function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + graph.addNode("d"); + graph.addNode("e"); + + graph.addDependency("a", "b"); + graph.addDependency("a", "c"); + graph.addDependency("b", "c"); + graph.addDependency("c", "d"); + + expect(graph.overallOrder(true)).toEqual(["d", "e"]); + }); + + it("should be able to give the overall order for a graph with several disconnected subgraphs", function () { + var graph = new DepGraph(); + + graph.addNode("a_1"); + graph.addNode("a_2"); + graph.addNode("b_1"); + graph.addNode("b_2"); + graph.addNode("b_3"); + + graph.addDependency("a_1", "a_2"); + graph.addDependency("b_1", "b_2"); + graph.addDependency("b_2", "b_3"); + + expect(graph.overallOrder()).toEqual(["a_2", "a_1", "b_3", "b_2", "b_1"]); + }); + + it("should give an empty overall order for an empty graph", function () { + var graph = new DepGraph(); + + expect(graph.overallOrder()).toEqual([]); + }); + + it("should still work after nodes are removed", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + graph.addDependency("a", "b"); + graph.addDependency("b", "c"); + + expect(graph.dependenciesOf("a")).toEqual(["c", "b"]); + + graph.removeNode("c"); + + expect(graph.dependenciesOf("a")).toEqual(["b"]); + }); + + it("should clone an empty graph", function () { + var graph = new DepGraph(); + expect(graph.size()).toEqual(0); + var cloned = graph.clone(); + expect(cloned.size()).toEqual(0); + + expect(graph === cloned).toBeFalse(); + }); + + it("should clone a non-empty graph", function () { + var graph = new DepGraph(); + + graph.addNode("a"); + graph.addNode("b"); + graph.addNode("c"); + graph.addDependency("a", "b"); + graph.addDependency("b", "c"); + + var cloned = graph.clone(); + + expect(graph === cloned).toBeFalse(); + expect(cloned.hasNode("a")).toBeTrue(); + expect(cloned.hasNode("b")).toBeTrue(); + expect(cloned.hasNode("c")).toBeTrue(); + expect(cloned.dependenciesOf("a")).toEqual(["c", "b"]); + expect(cloned.dependantsOf("c")).toEqual(["a", "b"]); + + // Changes to the original graph shouldn't affect the clone + graph.removeNode("c"); + expect(graph.dependenciesOf("a")).toEqual(["b"]); + expect(cloned.dependenciesOf("a")).toEqual(["c", "b"]); + + graph.addNode("d"); + graph.addDependency("b", "d"); + expect(graph.dependenciesOf("a")).toEqual(["d", "b"]); + expect(cloned.dependenciesOf("a")).toEqual(["c", "b"]); + }); + + it("should only be a shallow clone", function () { + var graph = new DepGraph(); + + var data = { a: 42 }; + graph.addNode("a", data); + + var cloned = graph.clone(); + expect(graph === cloned).toBeFalse(); + expect(graph.getNodeData("a") === cloned.getNodeData("a")).toBeTrue(); + + graph.getNodeData("a").a = 43; + expect(cloned.getNodeData("a").a).toBe(43); + + cloned.setNodeData("a", { a: 42 }); + expect(cloned.getNodeData("a").a).toBe(42); + expect(graph.getNodeData("a") === cloned.getNodeData("a")).toBeFalse(); + }); +}); + +describe("DepGraph Performance", function () { + it("should not exceed max call stack with a very deep graph", function () { + var g = new DepGraph(); + var expected = []; + for (var i = 0; i < 100000; i++) { + var istr = i.toString(); + g.addNode(istr); + expected.push(istr); + if (i > 0) { + g.addDependency(istr, (i - 1).toString()); + } + } + var order = g.overallOrder(); + expect(order).toEqual(expected); + }); + + it("should run an a reasonable amount of time for a very large graph", function () { + var randInt = function (min, max) { + return Math.floor(Math.random() * (max - min + 1)) + min; + }; + var g = new DepGraph(); + var nodes = []; + // Create a graph with 100000 nodes in it with 10 random connections to + // lower numbered nodes + for (var i = 0; i < 100000; i++) { + nodes.push(i.toString()); + g.addNode(i.toString()); + for (var j = 0; j < 10; j++) { + var dep = randInt(0, i); + if (i !== dep) { + g.addDependency(i.toString(), dep.toString()); + } + } + } + var start = new Date().getTime(); + g.overallOrder(); + var end = new Date().getTime(); + expect(start - end).toBeLessThan(1000); + }); +}); + +describe("DepGraphCycleError", function () { + var DepGraphCycleError = dep_graph.DepGraphCycleError; + + it("should have a message", function () { + var err = new DepGraphCycleError(["a", "b", "c", "a"]); + expect(err.message).toEqual("Dependency Cycle Found: a -> b -> c -> a"); + }); + + it("should be an instanceof DepGraphCycleError", function () { + var err = new DepGraphCycleError(["a", "b", "c", "a"]); + expect(err instanceof DepGraphCycleError).toBeTrue(); + expect(err instanceof Error).toBeTrue(); + }); + + it("should have a cyclePath", function () { + var cyclePath = ["a", "b", "c", "a"]; + var err = new DepGraphCycleError(cyclePath); + expect(err.cyclePath).toEqual(cyclePath); + }); +}); diff --git a/node_modules/dir-glob/index.js b/node_modules/dir-glob/index.js new file mode 100644 index 0000000..c21cdf3 --- /dev/null +++ b/node_modules/dir-glob/index.js @@ -0,0 +1,75 @@ +'use strict'; +const path = require('path'); +const pathType = require('path-type'); + +const getExtensions = extensions => extensions.length > 1 ? `{${extensions.join(',')}}` : extensions[0]; + +const getPath = (filepath, cwd) => { + const pth = filepath[0] === '!' ? filepath.slice(1) : filepath; + return path.isAbsolute(pth) ? pth : path.join(cwd, pth); +}; + +const addExtensions = (file, extensions) => { + if (path.extname(file)) { + return `**/${file}`; + } + + return `**/${file}.${getExtensions(extensions)}`; +}; + +const getGlob = (directory, options) => { + if (options.files && !Array.isArray(options.files)) { + throw new TypeError(`Expected \`files\` to be of type \`Array\` but received type \`${typeof options.files}\``); + } + + if (options.extensions && !Array.isArray(options.extensions)) { + throw new TypeError(`Expected \`extensions\` to be of type \`Array\` but received type \`${typeof options.extensions}\``); + } + + if (options.files && options.extensions) { + return options.files.map(x => path.posix.join(directory, addExtensions(x, options.extensions))); + } + + if (options.files) { + return options.files.map(x => path.posix.join(directory, `**/${x}`)); + } + + if (options.extensions) { + return [path.posix.join(directory, `**/*.${getExtensions(options.extensions)}`)]; + } + + return [path.posix.join(directory, '**')]; +}; + +module.exports = async (input, options) => { + options = { + cwd: process.cwd(), + ...options + }; + + if (typeof options.cwd !== 'string') { + throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof options.cwd}\``); + } + + const globs = await Promise.all([].concat(input).map(async x => { + const isDirectory = await pathType.isDirectory(getPath(x, options.cwd)); + return isDirectory ? getGlob(x, options) : x; + })); + + return [].concat.apply([], globs); // eslint-disable-line prefer-spread +}; + +module.exports.sync = (input, options) => { + options = { + cwd: process.cwd(), + ...options + }; + + if (typeof options.cwd !== 'string') { + throw new TypeError(`Expected \`cwd\` to be of type \`string\` but received type \`${typeof options.cwd}\``); + } + + const globs = [].concat(input).map(x => pathType.isDirectorySync(getPath(x, options.cwd)) ? getGlob(x, options) : x); + + return [].concat.apply([], globs); // eslint-disable-line prefer-spread +}; diff --git a/node_modules/dir-glob/license b/node_modules/dir-glob/license new file mode 100644 index 0000000..db6bc32 --- /dev/null +++ b/node_modules/dir-glob/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Kevin Mårtensson (github.com/kevva) + +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. diff --git a/node_modules/dir-glob/package.json b/node_modules/dir-glob/package.json new file mode 100644 index 0000000..b0a397e --- /dev/null +++ b/node_modules/dir-glob/package.json @@ -0,0 +1,38 @@ +{ + "name": "dir-glob", + "version": "3.0.1", + "description": "Convert directories to glob compatible strings", + "license": "MIT", + "repository": "kevva/dir-glob", + "author": { + "name": "Kevin Mårtensson", + "email": "kevinmartensson@gmail.com", + "url": "github.com/kevva" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava" + }, + "files": [ + "index.js" + ], + "keywords": [ + "convert", + "directory", + "extensions", + "files", + "glob" + ], + "dependencies": { + "path-type": "^4.0.0" + }, + "devDependencies": { + "ava": "^2.1.0", + "del": "^4.1.1", + "make-dir": "^3.0.0", + "rimraf": "^2.5.0", + "xo": "^0.24.0" + } +} diff --git a/node_modules/dir-glob/readme.md b/node_modules/dir-glob/readme.md new file mode 100644 index 0000000..cb7313f --- /dev/null +++ b/node_modules/dir-glob/readme.md @@ -0,0 +1,76 @@ +# dir-glob [![Build Status](https://travis-ci.org/kevva/dir-glob.svg?branch=master)](https://travis-ci.org/kevva/dir-glob) + +> Convert directories to glob compatible strings + + +## Install + +``` +$ npm install dir-glob +``` + + +## Usage + +```js +const dirGlob = require('dir-glob'); + +(async () => { + console.log(await dirGlob(['index.js', 'test.js', 'fixtures'])); + //=> ['index.js', 'test.js', 'fixtures/**'] + + console.log(await dirGlob(['index.js', 'inner_folder'], {cwd: 'fixtures'})); + //=> ['index.js', 'inner_folder/**'] + + console.log(await dirGlob(['lib/**', 'fixtures'], { + files: ['test', 'unicorn'] + extensions: ['js'] + })); + //=> ['lib/**', 'fixtures/**/test.js', 'fixtures/**/unicorn.js'] + + console.log(await dirGlob(['lib/**', 'fixtures'], { + files: ['test', 'unicorn', '*.jsx'], + extensions: ['js', 'png'] + })); + //=> ['lib/**', 'fixtures/**/test.{js,png}', 'fixtures/**/unicorn.{js,png}', 'fixtures/**/*.jsx'] +})(); +``` + + +## API + +### dirGlob(input, options?) + +Returns a `Promise` with globs. + +### dirGlob.sync(input, options?) + +Returns a `string[]` with globs. + +#### input + +Type: `string | string[]` + +Paths. + +#### options + +Type: `object` + +##### extensions + +Type: `string[]` + +Append extensions to the end of your globs. + +##### files + +Type: `string[]` + +Only glob for certain files. + +##### cwd + +Type: `string[]` + +Test in specific directory. diff --git a/node_modules/emoji-regex/LICENSE-MIT.txt b/node_modules/emoji-regex/LICENSE-MIT.txt new file mode 100644 index 0000000..a41e0a7 --- /dev/null +++ b/node_modules/emoji-regex/LICENSE-MIT.txt @@ -0,0 +1,20 @@ +Copyright Mathias Bynens + +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. diff --git a/node_modules/emoji-regex/README.md b/node_modules/emoji-regex/README.md new file mode 100644 index 0000000..f10e173 --- /dev/null +++ b/node_modules/emoji-regex/README.md @@ -0,0 +1,73 @@ +# emoji-regex [![Build status](https://travis-ci.org/mathiasbynens/emoji-regex.svg?branch=master)](https://travis-ci.org/mathiasbynens/emoji-regex) + +_emoji-regex_ offers a regular expression to match all emoji symbols (including textual representations of emoji) as per the Unicode Standard. + +This repository contains a script that generates this regular expression based on [the data from Unicode v12](https://github.com/mathiasbynens/unicode-12.0.0). Because of this, the regular expression can easily be updated whenever new emoji are added to the Unicode standard. + +## Installation + +Via [npm](https://www.npmjs.com/): + +```bash +npm install emoji-regex +``` + +In [Node.js](https://nodejs.org/): + +```js +const emojiRegex = require('emoji-regex'); +// Note: because the regular expression has the global flag set, this module +// exports a function that returns the regex rather than exporting the regular +// expression itself, to make it impossible to (accidentally) mutate the +// original regular expression. + +const text = ` +\u{231A}: ⌚ default emoji presentation character (Emoji_Presentation) +\u{2194}\u{FE0F}: ↔️ default text presentation character rendered as emoji +\u{1F469}: 👩 emoji modifier base (Emoji_Modifier_Base) +\u{1F469}\u{1F3FF}: 👩🏿 emoji modifier base followed by a modifier +`; + +const regex = emojiRegex(); +let match; +while (match = regex.exec(text)) { + const emoji = match[0]; + console.log(`Matched sequence ${ emoji } — code points: ${ [...emoji].length }`); +} +``` + +Console output: + +``` +Matched sequence ⌚ — code points: 1 +Matched sequence ⌚ — code points: 1 +Matched sequence ↔️ — code points: 2 +Matched sequence ↔️ — code points: 2 +Matched sequence 👩 — code points: 1 +Matched sequence 👩 — code points: 1 +Matched sequence 👩🏿 — code points: 2 +Matched sequence 👩🏿 — code points: 2 +``` + +To match emoji in their textual representation as well (i.e. emoji that are not `Emoji_Presentation` symbols and that aren’t forced to render as emoji by a variation selector), `require` the other regex: + +```js +const emojiRegex = require('emoji-regex/text.js'); +``` + +Additionally, in environments which support ES2015 Unicode escapes, you may `require` ES2015-style versions of the regexes: + +```js +const emojiRegex = require('emoji-regex/es2015/index.js'); +const emojiRegexText = require('emoji-regex/es2015/text.js'); +``` + +## Author + +| [![twitter/mathias](https://gravatar.com/avatar/24e08a9ea84deb17ae121074d0f17125?s=70)](https://twitter.com/mathias "Follow @mathias on Twitter") | +|---| +| [Mathias Bynens](https://mathiasbynens.be/) | + +## License + +_emoji-regex_ is available under the [MIT](https://mths.be/mit) license. diff --git a/node_modules/emoji-regex/es2015/index.js b/node_modules/emoji-regex/es2015/index.js new file mode 100644 index 0000000..b4cf3dc --- /dev/null +++ b/node_modules/emoji-regex/es2015/index.js @@ -0,0 +1,6 @@ +"use strict"; + +module.exports = () => { + // https://mths.be/emoji + return /\u{1F3F4}\u{E0067}\u{E0062}(?:\u{E0065}\u{E006E}\u{E0067}|\u{E0073}\u{E0063}\u{E0074}|\u{E0077}\u{E006C}\u{E0073})\u{E007F}|\u{1F468}(?:\u{1F3FC}\u200D(?:\u{1F91D}\u200D\u{1F468}\u{1F3FB}|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FF}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FE}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FE}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FD}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FD}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FC}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D)?\u{1F468}|[\u{1F468}\u{1F469}]\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}]|[\u{1F468}\u{1F469}]\u200D[\u{1F466}\u{1F467}]|[\u2695\u2696\u2708]\uFE0F|[\u{1F466}\u{1F467}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|(?:\u{1F3FB}\u200D[\u2695\u2696\u2708]|\u{1F3FF}\u200D[\u2695\u2696\u2708]|\u{1F3FE}\u200D[\u2695\u2696\u2708]|\u{1F3FD}\u200D[\u2695\u2696\u2708]|\u{1F3FC}\u200D[\u2695\u2696\u2708])\uFE0F|\u{1F3FB}\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}]|[\u{1F3FB}-\u{1F3FF}])|(?:\u{1F9D1}\u{1F3FB}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F469})\u{1F3FB}|\u{1F9D1}(?:\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F9D1}[\u{1F3FB}-\u{1F3FF}]|\u200D\u{1F91D}\u200D\u{1F9D1})|(?:\u{1F9D1}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D[\u{1F468}\u{1F469}])[\u{1F3FB}-\u{1F3FE}]|(?:\u{1F9D1}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F469})[\u{1F3FB}\u{1F3FC}]|\u{1F469}(?:\u{1F3FE}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FD}\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FC}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FD}-\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FB}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FC}-\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FD}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FC}\u{1F3FE}\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D[\u{1F468}\u{1F469}]|[\u{1F468}\u{1F469}])|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FF}\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F469}\u200D\u{1F469}\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|(?:\u{1F9D1}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F469})[\u{1F3FB}-\u{1F3FD}]|\u{1F469}\u200D\u{1F466}\u200D\u{1F466}|\u{1F469}\u200D\u{1F469}\u200D[\u{1F466}\u{1F467}]|(?:\u{1F441}\uFE0F\u200D\u{1F5E8}|\u{1F469}(?:\u{1F3FF}\u200D[\u2695\u2696\u2708]|\u{1F3FE}\u200D[\u2695\u2696\u2708]|\u{1F3FC}\u200D[\u2695\u2696\u2708]|\u{1F3FB}\u200D[\u2695\u2696\u2708]|\u{1F3FD}\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}]\uFE0F|[\u{1F46F}\u{1F93C}\u{1F9DE}\u{1F9DF}])\u200D[\u2640\u2642]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9CD}-\u{1F9CF}\u{1F9D6}-\u{1F9DD}](?:[\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\u{1F3F4}\u200D\u2620)\uFE0F|\u{1F469}\u200D\u{1F467}\u200D[\u{1F466}\u{1F467}]|\u{1F3F3}\uFE0F\u200D\u{1F308}|\u{1F415}\u200D\u{1F9BA}|\u{1F469}\u200D\u{1F466}|\u{1F469}\u200D\u{1F467}|\u{1F1FD}\u{1F1F0}|\u{1F1F4}\u{1F1F2}|\u{1F1F6}\u{1F1E6}|[#\*0-9]\uFE0F\u20E3|\u{1F1E7}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EF}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|\u{1F1F9}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1ED}\u{1F1EF}-\u{1F1F4}\u{1F1F7}\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FF}]|\u{1F1EA}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1ED}\u{1F1F7}-\u{1F1FA}]|\u{1F9D1}[\u{1F3FB}-\u{1F3FF}]|\u{1F1F7}[\u{1F1EA}\u{1F1F4}\u{1F1F8}\u{1F1FA}\u{1F1FC}]|\u{1F469}[\u{1F3FB}-\u{1F3FF}]|\u{1F1F2}[\u{1F1E6}\u{1F1E8}-\u{1F1ED}\u{1F1F0}-\u{1F1FF}]|\u{1F1E6}[\u{1F1E8}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F2}\u{1F1F4}\u{1F1F6}-\u{1F1FA}\u{1F1FC}\u{1F1FD}\u{1F1FF}]|\u{1F1F0}[\u{1F1EA}\u{1F1EC}-\u{1F1EE}\u{1F1F2}\u{1F1F3}\u{1F1F5}\u{1F1F7}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|\u{1F1ED}[\u{1F1F0}\u{1F1F2}\u{1F1F3}\u{1F1F7}\u{1F1F9}\u{1F1FA}]|\u{1F1E9}[\u{1F1EA}\u{1F1EC}\u{1F1EF}\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1FF}]|\u{1F1FE}[\u{1F1EA}\u{1F1F9}]|\u{1F1EC}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EE}\u{1F1F1}-\u{1F1F3}\u{1F1F5}-\u{1F1FA}\u{1F1FC}\u{1F1FE}]|\u{1F1F8}[\u{1F1E6}-\u{1F1EA}\u{1F1EC}-\u{1F1F4}\u{1F1F7}-\u{1F1F9}\u{1F1FB}\u{1F1FD}-\u{1F1FF}]|\u{1F1EB}[\u{1F1EE}-\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1F7}]|\u{1F1F5}[\u{1F1E6}\u{1F1EA}-\u{1F1ED}\u{1F1F0}-\u{1F1F3}\u{1F1F7}-\u{1F1F9}\u{1F1FC}\u{1F1FE}]|\u{1F1FB}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1EE}\u{1F1F3}\u{1F1FA}]|\u{1F1F3}[\u{1F1E6}\u{1F1E8}\u{1F1EA}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F4}\u{1F1F5}\u{1F1F7}\u{1F1FA}\u{1F1FF}]|\u{1F1E8}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1EE}\u{1F1F0}-\u{1F1F5}\u{1F1F7}\u{1F1FA}-\u{1F1FF}]|\u{1F1F1}[\u{1F1E6}-\u{1F1E8}\u{1F1EE}\u{1F1F0}\u{1F1F7}-\u{1F1FB}\u{1F1FE}]|\u{1F1FF}[\u{1F1E6}\u{1F1F2}\u{1F1FC}]|\u{1F1FC}[\u{1F1EB}\u{1F1F8}]|\u{1F1FA}[\u{1F1E6}\u{1F1EC}\u{1F1F2}\u{1F1F3}\u{1F1F8}\u{1F1FE}\u{1F1FF}]|\u{1F1EE}[\u{1F1E8}-\u{1F1EA}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}]|\u{1F1EF}[\u{1F1EA}\u{1F1F2}\u{1F1F4}\u{1F1F5}]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9CD}-\u{1F9CF}\u{1F9D6}-\u{1F9DD}][\u{1F3FB}-\u{1F3FF}]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]|[\u261D\u270A-\u270D\u{1F385}\u{1F3C2}\u{1F3C7}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}\u{1F467}\u{1F46B}-\u{1F46D}\u{1F470}\u{1F472}\u{1F474}-\u{1F476}\u{1F478}\u{1F47C}\u{1F483}\u{1F485}\u{1F4AA}\u{1F574}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F64C}\u{1F64F}\u{1F6C0}\u{1F6CC}\u{1F90F}\u{1F918}-\u{1F91C}\u{1F91E}\u{1F91F}\u{1F930}-\u{1F936}\u{1F9B5}\u{1F9B6}\u{1F9BB}\u{1F9D2}-\u{1F9D5}][\u{1F3FB}-\u{1F3FF}]|[\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\u{1F004}\u{1F0CF}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F236}\u{1F238}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F320}\u{1F32D}-\u{1F335}\u{1F337}-\u{1F37C}\u{1F37E}-\u{1F393}\u{1F3A0}-\u{1F3CA}\u{1F3CF}-\u{1F3D3}\u{1F3E0}-\u{1F3F0}\u{1F3F4}\u{1F3F8}-\u{1F43E}\u{1F440}\u{1F442}-\u{1F4FC}\u{1F4FF}-\u{1F53D}\u{1F54B}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F57A}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5FB}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CC}\u{1F6D0}-\u{1F6D2}\u{1F6D5}\u{1F6EB}\u{1F6EC}\u{1F6F4}-\u{1F6FA}\u{1F7E0}-\u{1F7EB}\u{1F90D}-\u{1F93A}\u{1F93C}-\u{1F945}\u{1F947}-\u{1F971}\u{1F973}-\u{1F976}\u{1F97A}-\u{1F9A2}\u{1F9A5}-\u{1F9AA}\u{1F9AE}-\u{1F9CA}\u{1F9CD}-\u{1F9FF}\u{1FA70}-\u{1FA73}\u{1FA78}-\u{1FA7A}\u{1FA80}-\u{1FA82}\u{1FA90}-\u{1FA95}]|[#\*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\u{1F004}\u{1F0CF}\u{1F170}\u{1F171}\u{1F17E}\u{1F17F}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F202}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F321}\u{1F324}-\u{1F393}\u{1F396}\u{1F397}\u{1F399}-\u{1F39B}\u{1F39E}-\u{1F3F0}\u{1F3F3}-\u{1F3F5}\u{1F3F7}-\u{1F4FD}\u{1F4FF}-\u{1F53D}\u{1F549}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F56F}\u{1F570}\u{1F573}-\u{1F57A}\u{1F587}\u{1F58A}-\u{1F58D}\u{1F590}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5A5}\u{1F5A8}\u{1F5B1}\u{1F5B2}\u{1F5BC}\u{1F5C2}-\u{1F5C4}\u{1F5D1}-\u{1F5D3}\u{1F5DC}-\u{1F5DE}\u{1F5E1}\u{1F5E3}\u{1F5E8}\u{1F5EF}\u{1F5F3}\u{1F5FA}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CB}-\u{1F6D2}\u{1F6D5}\u{1F6E0}-\u{1F6E5}\u{1F6E9}\u{1F6EB}\u{1F6EC}\u{1F6F0}\u{1F6F3}-\u{1F6FA}\u{1F7E0}-\u{1F7EB}\u{1F90D}-\u{1F93A}\u{1F93C}-\u{1F945}\u{1F947}-\u{1F971}\u{1F973}-\u{1F976}\u{1F97A}-\u{1F9A2}\u{1F9A5}-\u{1F9AA}\u{1F9AE}-\u{1F9CA}\u{1F9CD}-\u{1F9FF}\u{1FA70}-\u{1FA73}\u{1FA78}-\u{1FA7A}\u{1FA80}-\u{1FA82}\u{1FA90}-\u{1FA95}]\uFE0F|[\u261D\u26F9\u270A-\u270D\u{1F385}\u{1F3C2}-\u{1F3C4}\u{1F3C7}\u{1F3CA}-\u{1F3CC}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}-\u{1F478}\u{1F47C}\u{1F481}-\u{1F483}\u{1F485}-\u{1F487}\u{1F48F}\u{1F491}\u{1F4AA}\u{1F574}\u{1F575}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F645}-\u{1F647}\u{1F64B}-\u{1F64F}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F6C0}\u{1F6CC}\u{1F90F}\u{1F918}-\u{1F91F}\u{1F926}\u{1F930}-\u{1F939}\u{1F93C}-\u{1F93E}\u{1F9B5}\u{1F9B6}\u{1F9B8}\u{1F9B9}\u{1F9BB}\u{1F9CD}-\u{1F9CF}\u{1F9D1}-\u{1F9DD}]/gu; +}; diff --git a/node_modules/emoji-regex/es2015/text.js b/node_modules/emoji-regex/es2015/text.js new file mode 100644 index 0000000..780309d --- /dev/null +++ b/node_modules/emoji-regex/es2015/text.js @@ -0,0 +1,6 @@ +"use strict"; + +module.exports = () => { + // https://mths.be/emoji + return /\u{1F3F4}\u{E0067}\u{E0062}(?:\u{E0065}\u{E006E}\u{E0067}|\u{E0073}\u{E0063}\u{E0074}|\u{E0077}\u{E006C}\u{E0073})\u{E007F}|\u{1F468}(?:\u{1F3FC}\u200D(?:\u{1F91D}\u200D\u{1F468}\u{1F3FB}|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FF}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FE}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FE}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FD}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FD}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FC}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D)?\u{1F468}|[\u{1F468}\u{1F469}]\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}]|[\u{1F468}\u{1F469}]\u200D[\u{1F466}\u{1F467}]|[\u2695\u2696\u2708]\uFE0F|[\u{1F466}\u{1F467}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|(?:\u{1F3FB}\u200D[\u2695\u2696\u2708]|\u{1F3FF}\u200D[\u2695\u2696\u2708]|\u{1F3FE}\u200D[\u2695\u2696\u2708]|\u{1F3FD}\u200D[\u2695\u2696\u2708]|\u{1F3FC}\u200D[\u2695\u2696\u2708])\uFE0F|\u{1F3FB}\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}]|[\u{1F3FB}-\u{1F3FF}])|(?:\u{1F9D1}\u{1F3FB}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F469})\u{1F3FB}|\u{1F9D1}(?:\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F9D1}[\u{1F3FB}-\u{1F3FF}]|\u200D\u{1F91D}\u200D\u{1F9D1})|(?:\u{1F9D1}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D[\u{1F468}\u{1F469}])[\u{1F3FB}-\u{1F3FE}]|(?:\u{1F9D1}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F469})[\u{1F3FB}\u{1F3FC}]|\u{1F469}(?:\u{1F3FE}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}-\u{1F3FD}\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FC}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FD}-\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FB}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FC}-\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FD}\u200D(?:\u{1F91D}\u200D\u{1F468}[\u{1F3FB}\u{1F3FC}\u{1F3FE}\u{1F3FF}]|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u200D(?:\u2764\uFE0F\u200D(?:\u{1F48B}\u200D[\u{1F468}\u{1F469}]|[\u{1F468}\u{1F469}])|[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F3FF}\u200D[\u{1F33E}\u{1F373}\u{1F393}\u{1F3A4}\u{1F3A8}\u{1F3EB}\u{1F3ED}\u{1F4BB}\u{1F4BC}\u{1F527}\u{1F52C}\u{1F680}\u{1F692}\u{1F9AF}-\u{1F9B3}\u{1F9BC}\u{1F9BD}])|\u{1F469}\u200D\u{1F469}\u200D(?:\u{1F466}\u200D\u{1F466}|\u{1F467}\u200D[\u{1F466}\u{1F467}])|(?:\u{1F9D1}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F9D1}|\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F469})[\u{1F3FB}-\u{1F3FD}]|\u{1F469}\u200D\u{1F466}\u200D\u{1F466}|\u{1F469}\u200D\u{1F469}\u200D[\u{1F466}\u{1F467}]|(?:\u{1F441}\uFE0F\u200D\u{1F5E8}|\u{1F469}(?:\u{1F3FF}\u200D[\u2695\u2696\u2708]|\u{1F3FE}\u200D[\u2695\u2696\u2708]|\u{1F3FC}\u200D[\u2695\u2696\u2708]|\u{1F3FB}\u200D[\u2695\u2696\u2708]|\u{1F3FD}\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}]\uFE0F|[\u{1F46F}\u{1F93C}\u{1F9DE}\u{1F9DF}])\u200D[\u2640\u2642]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9CD}-\u{1F9CF}\u{1F9D6}-\u{1F9DD}](?:[\u{1F3FB}-\u{1F3FF}]\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\u{1F3F4}\u200D\u2620)\uFE0F|\u{1F469}\u200D\u{1F467}\u200D[\u{1F466}\u{1F467}]|\u{1F3F3}\uFE0F\u200D\u{1F308}|\u{1F415}\u200D\u{1F9BA}|\u{1F469}\u200D\u{1F466}|\u{1F469}\u200D\u{1F467}|\u{1F1FD}\u{1F1F0}|\u{1F1F4}\u{1F1F2}|\u{1F1F6}\u{1F1E6}|[#\*0-9]\uFE0F\u20E3|\u{1F1E7}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EF}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|\u{1F1F9}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1ED}\u{1F1EF}-\u{1F1F4}\u{1F1F7}\u{1F1F9}\u{1F1FB}\u{1F1FC}\u{1F1FF}]|\u{1F1EA}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1ED}\u{1F1F7}-\u{1F1FA}]|\u{1F9D1}[\u{1F3FB}-\u{1F3FF}]|\u{1F1F7}[\u{1F1EA}\u{1F1F4}\u{1F1F8}\u{1F1FA}\u{1F1FC}]|\u{1F469}[\u{1F3FB}-\u{1F3FF}]|\u{1F1F2}[\u{1F1E6}\u{1F1E8}-\u{1F1ED}\u{1F1F0}-\u{1F1FF}]|\u{1F1E6}[\u{1F1E8}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F2}\u{1F1F4}\u{1F1F6}-\u{1F1FA}\u{1F1FC}\u{1F1FD}\u{1F1FF}]|\u{1F1F0}[\u{1F1EA}\u{1F1EC}-\u{1F1EE}\u{1F1F2}\u{1F1F3}\u{1F1F5}\u{1F1F7}\u{1F1FC}\u{1F1FE}\u{1F1FF}]|\u{1F1ED}[\u{1F1F0}\u{1F1F2}\u{1F1F3}\u{1F1F7}\u{1F1F9}\u{1F1FA}]|\u{1F1E9}[\u{1F1EA}\u{1F1EC}\u{1F1EF}\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1FF}]|\u{1F1FE}[\u{1F1EA}\u{1F1F9}]|\u{1F1EC}[\u{1F1E6}\u{1F1E7}\u{1F1E9}-\u{1F1EE}\u{1F1F1}-\u{1F1F3}\u{1F1F5}-\u{1F1FA}\u{1F1FC}\u{1F1FE}]|\u{1F1F8}[\u{1F1E6}-\u{1F1EA}\u{1F1EC}-\u{1F1F4}\u{1F1F7}-\u{1F1F9}\u{1F1FB}\u{1F1FD}-\u{1F1FF}]|\u{1F1EB}[\u{1F1EE}-\u{1F1F0}\u{1F1F2}\u{1F1F4}\u{1F1F7}]|\u{1F1F5}[\u{1F1E6}\u{1F1EA}-\u{1F1ED}\u{1F1F0}-\u{1F1F3}\u{1F1F7}-\u{1F1F9}\u{1F1FC}\u{1F1FE}]|\u{1F1FB}[\u{1F1E6}\u{1F1E8}\u{1F1EA}\u{1F1EC}\u{1F1EE}\u{1F1F3}\u{1F1FA}]|\u{1F1F3}[\u{1F1E6}\u{1F1E8}\u{1F1EA}-\u{1F1EC}\u{1F1EE}\u{1F1F1}\u{1F1F4}\u{1F1F5}\u{1F1F7}\u{1F1FA}\u{1F1FF}]|\u{1F1E8}[\u{1F1E6}\u{1F1E8}\u{1F1E9}\u{1F1EB}-\u{1F1EE}\u{1F1F0}-\u{1F1F5}\u{1F1F7}\u{1F1FA}-\u{1F1FF}]|\u{1F1F1}[\u{1F1E6}-\u{1F1E8}\u{1F1EE}\u{1F1F0}\u{1F1F7}-\u{1F1FB}\u{1F1FE}]|\u{1F1FF}[\u{1F1E6}\u{1F1F2}\u{1F1FC}]|\u{1F1FC}[\u{1F1EB}\u{1F1F8}]|\u{1F1FA}[\u{1F1E6}\u{1F1EC}\u{1F1F2}\u{1F1F3}\u{1F1F8}\u{1F1FE}\u{1F1FF}]|\u{1F1EE}[\u{1F1E8}-\u{1F1EA}\u{1F1F1}-\u{1F1F4}\u{1F1F6}-\u{1F1F9}]|\u{1F1EF}[\u{1F1EA}\u{1F1F2}\u{1F1F4}\u{1F1F5}]|[\u{1F3C3}\u{1F3C4}\u{1F3CA}\u{1F46E}\u{1F471}\u{1F473}\u{1F477}\u{1F481}\u{1F482}\u{1F486}\u{1F487}\u{1F645}-\u{1F647}\u{1F64B}\u{1F64D}\u{1F64E}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F926}\u{1F937}-\u{1F939}\u{1F93D}\u{1F93E}\u{1F9B8}\u{1F9B9}\u{1F9CD}-\u{1F9CF}\u{1F9D6}-\u{1F9DD}][\u{1F3FB}-\u{1F3FF}]|[\u26F9\u{1F3CB}\u{1F3CC}\u{1F575}][\u{1F3FB}-\u{1F3FF}]|[\u261D\u270A-\u270D\u{1F385}\u{1F3C2}\u{1F3C7}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}\u{1F467}\u{1F46B}-\u{1F46D}\u{1F470}\u{1F472}\u{1F474}-\u{1F476}\u{1F478}\u{1F47C}\u{1F483}\u{1F485}\u{1F4AA}\u{1F574}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F64C}\u{1F64F}\u{1F6C0}\u{1F6CC}\u{1F90F}\u{1F918}-\u{1F91C}\u{1F91E}\u{1F91F}\u{1F930}-\u{1F936}\u{1F9B5}\u{1F9B6}\u{1F9BB}\u{1F9D2}-\u{1F9D5}][\u{1F3FB}-\u{1F3FF}]|[\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\u{1F004}\u{1F0CF}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F236}\u{1F238}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F320}\u{1F32D}-\u{1F335}\u{1F337}-\u{1F37C}\u{1F37E}-\u{1F393}\u{1F3A0}-\u{1F3CA}\u{1F3CF}-\u{1F3D3}\u{1F3E0}-\u{1F3F0}\u{1F3F4}\u{1F3F8}-\u{1F43E}\u{1F440}\u{1F442}-\u{1F4FC}\u{1F4FF}-\u{1F53D}\u{1F54B}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F57A}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5FB}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CC}\u{1F6D0}-\u{1F6D2}\u{1F6D5}\u{1F6EB}\u{1F6EC}\u{1F6F4}-\u{1F6FA}\u{1F7E0}-\u{1F7EB}\u{1F90D}-\u{1F93A}\u{1F93C}-\u{1F945}\u{1F947}-\u{1F971}\u{1F973}-\u{1F976}\u{1F97A}-\u{1F9A2}\u{1F9A5}-\u{1F9AA}\u{1F9AE}-\u{1F9CA}\u{1F9CD}-\u{1F9FF}\u{1FA70}-\u{1FA73}\u{1FA78}-\u{1FA7A}\u{1FA80}-\u{1FA82}\u{1FA90}-\u{1FA95}]|[#\*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\u{1F004}\u{1F0CF}\u{1F170}\u{1F171}\u{1F17E}\u{1F17F}\u{1F18E}\u{1F191}-\u{1F19A}\u{1F1E6}-\u{1F1FF}\u{1F201}\u{1F202}\u{1F21A}\u{1F22F}\u{1F232}-\u{1F23A}\u{1F250}\u{1F251}\u{1F300}-\u{1F321}\u{1F324}-\u{1F393}\u{1F396}\u{1F397}\u{1F399}-\u{1F39B}\u{1F39E}-\u{1F3F0}\u{1F3F3}-\u{1F3F5}\u{1F3F7}-\u{1F4FD}\u{1F4FF}-\u{1F53D}\u{1F549}-\u{1F54E}\u{1F550}-\u{1F567}\u{1F56F}\u{1F570}\u{1F573}-\u{1F57A}\u{1F587}\u{1F58A}-\u{1F58D}\u{1F590}\u{1F595}\u{1F596}\u{1F5A4}\u{1F5A5}\u{1F5A8}\u{1F5B1}\u{1F5B2}\u{1F5BC}\u{1F5C2}-\u{1F5C4}\u{1F5D1}-\u{1F5D3}\u{1F5DC}-\u{1F5DE}\u{1F5E1}\u{1F5E3}\u{1F5E8}\u{1F5EF}\u{1F5F3}\u{1F5FA}-\u{1F64F}\u{1F680}-\u{1F6C5}\u{1F6CB}-\u{1F6D2}\u{1F6D5}\u{1F6E0}-\u{1F6E5}\u{1F6E9}\u{1F6EB}\u{1F6EC}\u{1F6F0}\u{1F6F3}-\u{1F6FA}\u{1F7E0}-\u{1F7EB}\u{1F90D}-\u{1F93A}\u{1F93C}-\u{1F945}\u{1F947}-\u{1F971}\u{1F973}-\u{1F976}\u{1F97A}-\u{1F9A2}\u{1F9A5}-\u{1F9AA}\u{1F9AE}-\u{1F9CA}\u{1F9CD}-\u{1F9FF}\u{1FA70}-\u{1FA73}\u{1FA78}-\u{1FA7A}\u{1FA80}-\u{1FA82}\u{1FA90}-\u{1FA95}]\uFE0F?|[\u261D\u26F9\u270A-\u270D\u{1F385}\u{1F3C2}-\u{1F3C4}\u{1F3C7}\u{1F3CA}-\u{1F3CC}\u{1F442}\u{1F443}\u{1F446}-\u{1F450}\u{1F466}-\u{1F478}\u{1F47C}\u{1F481}-\u{1F483}\u{1F485}-\u{1F487}\u{1F48F}\u{1F491}\u{1F4AA}\u{1F574}\u{1F575}\u{1F57A}\u{1F590}\u{1F595}\u{1F596}\u{1F645}-\u{1F647}\u{1F64B}-\u{1F64F}\u{1F6A3}\u{1F6B4}-\u{1F6B6}\u{1F6C0}\u{1F6CC}\u{1F90F}\u{1F918}-\u{1F91F}\u{1F926}\u{1F930}-\u{1F939}\u{1F93C}-\u{1F93E}\u{1F9B5}\u{1F9B6}\u{1F9B8}\u{1F9B9}\u{1F9BB}\u{1F9CD}-\u{1F9CF}\u{1F9D1}-\u{1F9DD}]/gu; +}; diff --git a/node_modules/emoji-regex/index.d.ts b/node_modules/emoji-regex/index.d.ts new file mode 100644 index 0000000..1955b47 --- /dev/null +++ b/node_modules/emoji-regex/index.d.ts @@ -0,0 +1,23 @@ +declare module 'emoji-regex' { + function emojiRegex(): RegExp; + + export default emojiRegex; +} + +declare module 'emoji-regex/text' { + function emojiRegex(): RegExp; + + export default emojiRegex; +} + +declare module 'emoji-regex/es2015' { + function emojiRegex(): RegExp; + + export default emojiRegex; +} + +declare module 'emoji-regex/es2015/text' { + function emojiRegex(): RegExp; + + export default emojiRegex; +} diff --git a/node_modules/emoji-regex/index.js b/node_modules/emoji-regex/index.js new file mode 100644 index 0000000..d993a3a --- /dev/null +++ b/node_modules/emoji-regex/index.js @@ -0,0 +1,6 @@ +"use strict"; + +module.exports = function () { + // https://mths.be/emoji + 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; +}; diff --git a/node_modules/emoji-regex/package.json b/node_modules/emoji-regex/package.json new file mode 100644 index 0000000..6d32352 --- /dev/null +++ b/node_modules/emoji-regex/package.json @@ -0,0 +1,50 @@ +{ + "name": "emoji-regex", + "version": "8.0.0", + "description": "A regular expression to match all Emoji-only symbols as per the Unicode Standard.", + "homepage": "https://mths.be/emoji-regex", + "main": "index.js", + "types": "index.d.ts", + "keywords": [ + "unicode", + "regex", + "regexp", + "regular expressions", + "code points", + "symbols", + "characters", + "emoji" + ], + "license": "MIT", + "author": { + "name": "Mathias Bynens", + "url": "https://mathiasbynens.be/" + }, + "repository": { + "type": "git", + "url": "https://github.com/mathiasbynens/emoji-regex.git" + }, + "bugs": "https://github.com/mathiasbynens/emoji-regex/issues", + "files": [ + "LICENSE-MIT.txt", + "index.js", + "index.d.ts", + "text.js", + "es2015/index.js", + "es2015/text.js" + ], + "scripts": { + "build": "rm -rf -- es2015; babel src -d .; NODE_ENV=es2015 babel src -d ./es2015; node script/inject-sequences.js", + "test": "mocha", + "test:watch": "npm run test -- --watch" + }, + "devDependencies": { + "@babel/cli": "^7.2.3", + "@babel/core": "^7.3.4", + "@babel/plugin-proposal-unicode-property-regex": "^7.2.0", + "@babel/preset-env": "^7.3.4", + "mocha": "^6.0.2", + "regexgen": "^1.3.0", + "unicode-12.0.0": "^0.7.9" + } +} diff --git a/node_modules/emoji-regex/text.js b/node_modules/emoji-regex/text.js new file mode 100644 index 0000000..0a55ce2 --- /dev/null +++ b/node_modules/emoji-regex/text.js @@ -0,0 +1,6 @@ +"use strict"; + +module.exports = function () { + // https://mths.be/emoji + 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; +}; diff --git a/node_modules/escalade/dist/index.js b/node_modules/escalade/dist/index.js new file mode 100644 index 0000000..ad236c4 --- /dev/null +++ b/node_modules/escalade/dist/index.js @@ -0,0 +1,22 @@ +const { dirname, resolve } = require('path'); +const { readdir, stat } = require('fs'); +const { promisify } = require('util'); + +const toStats = promisify(stat); +const toRead = promisify(readdir); + +module.exports = async function (start, callback) { + let dir = resolve('.', start); + let tmp, stats = await toStats(dir); + + if (!stats.isDirectory()) { + dir = dirname(dir); + } + + while (true) { + tmp = await callback(dir, await toRead(dir)); + if (tmp) return resolve(dir, tmp); + dir = dirname(tmp = dir); + if (tmp === dir) break; + } +} diff --git a/node_modules/escalade/dist/index.mjs b/node_modules/escalade/dist/index.mjs new file mode 100644 index 0000000..bf95be0 --- /dev/null +++ b/node_modules/escalade/dist/index.mjs @@ -0,0 +1,22 @@ +import { dirname, resolve } from 'path'; +import { readdir, stat } from 'fs'; +import { promisify } from 'util'; + +const toStats = promisify(stat); +const toRead = promisify(readdir); + +export default async function (start, callback) { + let dir = resolve('.', start); + let tmp, stats = await toStats(dir); + + if (!stats.isDirectory()) { + dir = dirname(dir); + } + + while (true) { + tmp = await callback(dir, await toRead(dir)); + if (tmp) return resolve(dir, tmp); + dir = dirname(tmp = dir); + if (tmp === dir) break; + } +} diff --git a/node_modules/escalade/index.d.mts b/node_modules/escalade/index.d.mts new file mode 100644 index 0000000..550699c --- /dev/null +++ b/node_modules/escalade/index.d.mts @@ -0,0 +1,11 @@ +type Promisable = T | Promise; + +export type Callback = ( + directory: string, + files: string[], +) => Promisable; + +export default function ( + directory: string, + callback: Callback, +): Promise; diff --git a/node_modules/escalade/index.d.ts b/node_modules/escalade/index.d.ts new file mode 100644 index 0000000..26c58f2 --- /dev/null +++ b/node_modules/escalade/index.d.ts @@ -0,0 +1,15 @@ +type Promisable = T | Promise; + +declare namespace escalade { + export type Callback = ( + directory: string, + files: string[], + ) => Promisable; +} + +declare function escalade( + directory: string, + callback: escalade.Callback, +): Promise; + +export = escalade; diff --git a/node_modules/escalade/license b/node_modules/escalade/license new file mode 100644 index 0000000..fa6089f --- /dev/null +++ b/node_modules/escalade/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Luke Edwards (lukeed.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. diff --git a/node_modules/escalade/package.json b/node_modules/escalade/package.json new file mode 100644 index 0000000..1eed4f9 --- /dev/null +++ b/node_modules/escalade/package.json @@ -0,0 +1,74 @@ +{ + "name": "escalade", + "version": "3.2.0", + "repository": "lukeed/escalade", + "description": "A tiny (183B to 210B) and fast utility to ascend parent directories", + "module": "dist/index.mjs", + "main": "dist/index.js", + "types": "index.d.ts", + "license": "MIT", + "author": { + "name": "Luke Edwards", + "email": "luke.edwards05@gmail.com", + "url": "https://lukeed.com" + }, + "exports": { + ".": [ + { + "import": { + "types": "./index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./index.d.ts", + "default": "./dist/index.js" + } + }, + "./dist/index.js" + ], + "./sync": [ + { + "import": { + "types": "./sync/index.d.mts", + "default": "./sync/index.mjs" + }, + "require": { + "types": "./sync/index.d.ts", + "default": "./sync/index.js" + } + }, + "./sync/index.js" + ] + }, + "files": [ + "*.d.mts", + "*.d.ts", + "dist", + "sync" + ], + "modes": { + "sync": "src/sync.js", + "default": "src/async.js" + }, + "engines": { + "node": ">=6" + }, + "scripts": { + "build": "bundt", + "pretest": "npm run build", + "test": "uvu -r esm test -i fixtures" + }, + "keywords": [ + "find", + "parent", + "parents", + "directory", + "search", + "walk" + ], + "devDependencies": { + "bundt": "1.1.1", + "esm": "3.2.25", + "uvu": "0.3.3" + } +} diff --git a/node_modules/escalade/readme.md b/node_modules/escalade/readme.md new file mode 100644 index 0000000..e07ee0d --- /dev/null +++ b/node_modules/escalade/readme.md @@ -0,0 +1,211 @@ +# escalade [![CI](https://github.com/lukeed/escalade/workflows/CI/badge.svg)](https://github.com/lukeed/escalade/actions) [![licenses](https://licenses.dev/b/npm/escalade)](https://licenses.dev/npm/escalade) [![codecov](https://badgen.now.sh/codecov/c/github/lukeed/escalade)](https://codecov.io/gh/lukeed/escalade) + +> A tiny (183B to 210B) and [fast](#benchmarks) utility to ascend parent directories + +With [escalade](https://en.wikipedia.org/wiki/Escalade), you can scale parent directories until you've found what you're looking for.
Given an input file or directory, `escalade` will continue executing your callback function until either: + +1) the callback returns a truthy value +2) `escalade` has reached the system root directory (eg, `/`) + +> **Important:**
Please note that `escalade` only deals with direct ancestry – it will not dive into parents' sibling directories. + +--- + +**Notice:** As of v3.1.0, `escalade` now includes [Deno support](http://deno.land/x/escalade)! Please see [Deno Usage](#deno) below. + +--- + +## Install + +``` +$ npm install --save escalade +``` + + +## Modes + +There are two "versions" of `escalade` available: + +#### "async" +> **Node.js:** >= 8.x
+> **Size (gzip):** 210 bytes
+> **Availability:** [CommonJS](https://unpkg.com/escalade/dist/index.js), [ES Module](https://unpkg.com/escalade/dist/index.mjs) + +This is the primary/default mode. It makes use of `async`/`await` and [`util.promisify`](https://nodejs.org/api/util.html#util_util_promisify_original). + +#### "sync" +> **Node.js:** >= 6.x
+> **Size (gzip):** 183 bytes
+> **Availability:** [CommonJS](https://unpkg.com/escalade/sync/index.js), [ES Module](https://unpkg.com/escalade/sync/index.mjs) + +This is the opt-in mode, ideal for scenarios where `async` usage cannot be supported. + + +## Usage + +***Example Structure*** + +``` +/Users/lukeed + └── oss + ├── license + └── escalade + ├── package.json + └── test + └── fixtures + ├── index.js + └── foobar + └── demo.js +``` + +***Example Usage*** + +```js +//~> demo.js +import { join } from 'path'; +import escalade from 'escalade'; + +const input = join(__dirname, 'demo.js'); +// or: const input = __dirname; + +const pkg = await escalade(input, (dir, names) => { + console.log('~> dir:', dir); + console.log('~> names:', names); + console.log('---'); + + if (names.includes('package.json')) { + // will be resolved into absolute + return 'package.json'; + } +}); + +//~> dir: /Users/lukeed/oss/escalade/test/fixtures/foobar +//~> names: ['demo.js'] +//--- +//~> dir: /Users/lukeed/oss/escalade/test/fixtures +//~> names: ['index.js', 'foobar'] +//--- +//~> dir: /Users/lukeed/oss/escalade/test +//~> names: ['fixtures'] +//--- +//~> dir: /Users/lukeed/oss/escalade +//~> names: ['package.json', 'test'] +//--- + +console.log(pkg); +//=> /Users/lukeed/oss/escalade/package.json + +// Now search for "missing123.txt" +// (Assume it doesn't exist anywhere!) +const missing = await escalade(input, (dir, names) => { + console.log('~> dir:', dir); + return names.includes('missing123.txt') && 'missing123.txt'; +}); + +//~> dir: /Users/lukeed/oss/escalade/test/fixtures/foobar +//~> dir: /Users/lukeed/oss/escalade/test/fixtures +//~> dir: /Users/lukeed/oss/escalade/test +//~> dir: /Users/lukeed/oss/escalade +//~> dir: /Users/lukeed/oss +//~> dir: /Users/lukeed +//~> dir: /Users +//~> dir: / + +console.log(missing); +//=> undefined +``` + +> **Note:** To run the above example with "sync" mode, import from `escalade/sync` and remove the `await` keyword. + + +## API + +### escalade(input, callback) +Returns: `string|void` or `Promise` + +When your `callback` locates a file, `escalade` will resolve/return with an absolute path.
+If your `callback` was never satisfied, then `escalade` will resolve/return with nothing (undefined). + +> **Important:**
The `sync` and `async` versions share the same API.
The **only** difference is that `sync` is not Promise-based. + +#### input +Type: `string` + +The path from which to start ascending. + +This may be a file or a directory path.
However, when `input` is a file, `escalade` will begin with its parent directory. + +> **Important:** Unless given an absolute path, `input` will be resolved from `process.cwd()` location. + +#### callback +Type: `Function` + +The callback to execute for each ancestry level. It always is given two arguments: + +1) `dir` - an absolute path of the current parent directory +2) `names` - a list (`string[]`) of contents _relative to_ the `dir` parent + +> **Note:** The `names` list can contain names of files _and_ directories. + +When your callback returns a _falsey_ value, then `escalade` will continue with `dir`'s parent directory, re-invoking your callback with new argument values. + +When your callback returns a string, then `escalade` stops iteration immediately.
+If the string is an absolute path, then it's left as is. Otherwise, the string is resolved into an absolute path _from_ the `dir` that housed the satisfying condition. + +> **Important:** Your `callback` can be a `Promise/AsyncFunction` when using the "async" version of `escalade`. + +## Benchmarks + +> Running on Node.js v10.13.0 + +``` +# Load Time + find-up 3.891ms + escalade 0.485ms + escalade/sync 0.309ms + +# Levels: 6 (target = "foo.txt"): + find-up x 24,856 ops/sec ±6.46% (55 runs sampled) + escalade x 73,084 ops/sec ±4.23% (73 runs sampled) + find-up.sync x 3,663 ops/sec ±1.12% (83 runs sampled) + escalade/sync x 9,360 ops/sec ±0.62% (88 runs sampled) + +# Levels: 12 (target = "package.json"): + find-up x 29,300 ops/sec ±10.68% (70 runs sampled) + escalade x 73,685 ops/sec ± 5.66% (66 runs sampled) + find-up.sync x 1,707 ops/sec ± 0.58% (91 runs sampled) + escalade/sync x 4,667 ops/sec ± 0.68% (94 runs sampled) + +# Levels: 18 (target = "missing123.txt"): + find-up x 21,818 ops/sec ±17.37% (14 runs sampled) + escalade x 67,101 ops/sec ±21.60% (20 runs sampled) + find-up.sync x 1,037 ops/sec ± 2.86% (88 runs sampled) + escalade/sync x 1,248 ops/sec ± 0.50% (93 runs sampled) +``` + +## Deno + +As of v3.1.0, `escalade` is available on the Deno registry. + +Please note that the [API](#api) is identical and that there are still [two modes](#modes) from which to choose: + +```ts +// Choose "async" mode +import escalade from 'https://deno.land/escalade/async.ts'; + +// Choose "sync" mode +import escalade from 'https://deno.land/escalade/sync.ts'; +``` + +> **Important:** The `allow-read` permission is required! + + +## Related + +- [premove](https://github.com/lukeed/premove) - A tiny (247B) utility to remove items recursively +- [totalist](https://github.com/lukeed/totalist) - A tiny (195B to 224B) utility to recursively list all (total) files in a directory +- [mk-dirs](https://github.com/lukeed/mk-dirs) - A tiny (420B) utility to make a directory and its parents, recursively + +## License + +MIT © [Luke Edwards](https://lukeed.com) diff --git a/node_modules/escalade/sync/index.d.mts b/node_modules/escalade/sync/index.d.mts new file mode 100644 index 0000000..c023d37 --- /dev/null +++ b/node_modules/escalade/sync/index.d.mts @@ -0,0 +1,9 @@ +export type Callback = ( + directory: string, + files: string[], +) => string | false | void; + +export default function ( + directory: string, + callback: Callback, +): string | void; diff --git a/node_modules/escalade/sync/index.d.ts b/node_modules/escalade/sync/index.d.ts new file mode 100644 index 0000000..9d5b589 --- /dev/null +++ b/node_modules/escalade/sync/index.d.ts @@ -0,0 +1,13 @@ +declare namespace escalade { + export type Callback = ( + directory: string, + files: string[], + ) => string | false | void; +} + +declare function escalade( + directory: string, + callback: escalade.Callback, +): string | void; + +export = escalade; diff --git a/node_modules/escalade/sync/index.js b/node_modules/escalade/sync/index.js new file mode 100644 index 0000000..902cc46 --- /dev/null +++ b/node_modules/escalade/sync/index.js @@ -0,0 +1,18 @@ +const { dirname, resolve } = require('path'); +const { readdirSync, statSync } = require('fs'); + +module.exports = function (start, callback) { + let dir = resolve('.', start); + let tmp, stats = statSync(dir); + + if (!stats.isDirectory()) { + dir = dirname(dir); + } + + while (true) { + tmp = callback(dir, readdirSync(dir)); + if (tmp) return resolve(dir, tmp); + dir = dirname(tmp = dir); + if (tmp === dir) break; + } +} diff --git a/node_modules/escalade/sync/index.mjs b/node_modules/escalade/sync/index.mjs new file mode 100644 index 0000000..3cdc5bd --- /dev/null +++ b/node_modules/escalade/sync/index.mjs @@ -0,0 +1,18 @@ +import { dirname, resolve } from 'path'; +import { readdirSync, statSync } from 'fs'; + +export default function (start, callback) { + let dir = resolve('.', start); + let tmp, stats = statSync(dir); + + if (!stats.isDirectory()) { + dir = dirname(dir); + } + + while (true) { + tmp = callback(dir, readdirSync(dir)); + if (tmp) return resolve(dir, tmp); + dir = dirname(tmp = dir); + if (tmp === dir) break; + } +} diff --git a/node_modules/fast-glob/LICENSE b/node_modules/fast-glob/LICENSE new file mode 100644 index 0000000..65a9994 --- /dev/null +++ b/node_modules/fast-glob/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Denis Malinochkin + +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. diff --git a/node_modules/fast-glob/README.md b/node_modules/fast-glob/README.md new file mode 100644 index 0000000..1d7843a --- /dev/null +++ b/node_modules/fast-glob/README.md @@ -0,0 +1,830 @@ +# fast-glob + +> It's a very fast and efficient [glob][glob_definition] library for [Node.js][node_js]. + +This package provides methods for traversing the file system and returning pathnames that matched a defined set of a specified pattern according to the rules used by the Unix Bash shell with some simplifications, meanwhile results are returned in **arbitrary order**. Quick, simple, effective. + +## Table of Contents + +
+Details + +* [Highlights](#highlights) +* [Old and modern mode](#old-and-modern-mode) +* [Pattern syntax](#pattern-syntax) + * [Basic syntax](#basic-syntax) + * [Advanced syntax](#advanced-syntax) +* [Installation](#installation) +* [API](#api) + * [Asynchronous](#asynchronous) + * [Synchronous](#synchronous) + * [Stream](#stream) + * [patterns](#patterns) + * [[options]](#options) + * [Helpers](#helpers) + * [generateTasks](#generatetaskspatterns-options) + * [isDynamicPattern](#isdynamicpatternpattern-options) + * [escapePath](#escapepathpath) + * [convertPathToPattern](#convertpathtopatternpath) +* [Options](#options-3) + * [Common](#common) + * [concurrency](#concurrency) + * [cwd](#cwd) + * [deep](#deep) + * [followSymbolicLinks](#followsymboliclinks) + * [fs](#fs) + * [ignore](#ignore) + * [suppressErrors](#suppresserrors) + * [throwErrorOnBrokenSymbolicLink](#throwerroronbrokensymboliclink) + * [Output control](#output-control) + * [absolute](#absolute) + * [markDirectories](#markdirectories) + * [objectMode](#objectmode) + * [onlyDirectories](#onlydirectories) + * [onlyFiles](#onlyfiles) + * [stats](#stats) + * [unique](#unique) + * [Matching control](#matching-control) + * [braceExpansion](#braceexpansion) + * [caseSensitiveMatch](#casesensitivematch) + * [dot](#dot) + * [extglob](#extglob) + * [globstar](#globstar) + * [baseNameMatch](#basenamematch) +* [FAQ](#faq) + * [What is a static or dynamic pattern?](#what-is-a-static-or-dynamic-pattern) + * [How to write patterns on Windows?](#how-to-write-patterns-on-windows) + * [Why are parentheses match wrong?](#why-are-parentheses-match-wrong) + * [How to exclude directory from reading?](#how-to-exclude-directory-from-reading) + * [How to use UNC path?](#how-to-use-unc-path) + * [Compatible with `node-glob`?](#compatible-with-node-glob) +* [Benchmarks](#benchmarks) + * [Server](#server) + * [Nettop](#nettop) +* [Changelog](#changelog) +* [License](#license) + +
+ +## Highlights + +* Fast. Probably the fastest. +* Supports multiple and negative patterns. +* Synchronous, Promise and Stream API. +* Object mode. Can return more than just strings. +* Error-tolerant. + +## Old and modern mode + +This package works in two modes, depending on the environment in which it is used. + +* **Old mode**. Node.js below 10.10 or when the [`stats`](#stats) option is *enabled*. +* **Modern mode**. Node.js 10.10+ and the [`stats`](#stats) option is *disabled*. + +The modern mode is faster. Learn more about the [internal mechanism][nodelib_fs_scandir_old_and_modern_modern]. + +## Pattern syntax + +> :warning: Always use forward-slashes in glob expressions (patterns and [`ignore`](#ignore) option). Use backslashes for escaping characters. + +There is more than one form of syntax: basic and advanced. Below is a brief overview of the supported features. Also pay attention to our [FAQ](#faq). + +> :book: This package uses [`micromatch`][micromatch] as a library for pattern matching. + +### Basic syntax + +* An asterisk (`*`) — matches everything except slashes (path separators), hidden files (names starting with `.`). +* A double star or globstar (`**`) — matches zero or more directories. +* Question mark (`?`) – matches any single character except slashes (path separators). +* Sequence (`[seq]`) — matches any character in sequence. + +> :book: A few additional words about the [basic matching behavior][picomatch_matching_behavior]. + +Some examples: + +* `src/**/*.js` — matches all files in the `src` directory (any level of nesting) that have the `.js` extension. +* `src/*.??` — matches all files in the `src` directory (only first level of nesting) that have a two-character extension. +* `file-[01].js` — matches files: `file-0.js`, `file-1.js`. + +### Advanced syntax + +* [Escapes characters][micromatch_backslashes] (`\\`) — matching special characters (`$^*+?()[]`) as literals. +* [POSIX character classes][picomatch_posix_brackets] (`[[:digit:]]`). +* [Extended globs][micromatch_extglobs] (`?(pattern-list)`). +* [Bash style brace expansions][micromatch_braces] (`{}`). +* [Regexp character classes][micromatch_regex_character_classes] (`[1-5]`). +* [Regex groups][regular_expressions_brackets] (`(a|b)`). + +> :book: A few additional words about the [advanced matching behavior][micromatch_extended_globbing]. + +Some examples: + +* `src/**/*.{css,scss}` — matches all files in the `src` directory (any level of nesting) that have the `.css` or `.scss` extension. +* `file-[[:digit:]].js` — matches files: `file-0.js`, `file-1.js`, …, `file-9.js`. +* `file-{1..3}.js` — matches files: `file-1.js`, `file-2.js`, `file-3.js`. +* `file-(1|2)` — matches files: `file-1.js`, `file-2.js`. + +## Installation + +```console +npm install fast-glob +``` + +## API + +### Asynchronous + +```js +fg(patterns, [options]) +fg.async(patterns, [options]) +fg.glob(patterns, [options]) +``` + +Returns a `Promise` with an array of matching entries. + +```js +const fg = require('fast-glob'); + +const entries = await fg(['.editorconfig', '**/index.js'], { dot: true }); + +// ['.editorconfig', 'services/index.js'] +``` + +### Synchronous + +```js +fg.sync(patterns, [options]) +fg.globSync(patterns, [options]) +``` + +Returns an array of matching entries. + +```js +const fg = require('fast-glob'); + +const entries = fg.sync(['.editorconfig', '**/index.js'], { dot: true }); + +// ['.editorconfig', 'services/index.js'] +``` + +### Stream + +```js +fg.stream(patterns, [options]) +fg.globStream(patterns, [options]) +``` + +Returns a [`ReadableStream`][node_js_stream_readable_streams] when the `data` event will be emitted with matching entry. + +```js +const fg = require('fast-glob'); + +const stream = fg.stream(['.editorconfig', '**/index.js'], { dot: true }); + +for await (const entry of stream) { + // .editorconfig + // services/index.js +} +``` + +#### patterns + +* Required: `true` +* Type: `string | string[]` + +Any correct pattern(s). + +> :1234: [Pattern syntax](#pattern-syntax) +> +> :warning: This package does not respect the order of patterns. First, all the negative patterns are applied, and only then the positive patterns. If you want to get a certain order of records, use sorting or split calls. + +#### [options] + +* Required: `false` +* Type: [`Options`](#options-3) + +See [Options](#options-3) section. + +### Helpers + +#### `generateTasks(patterns, [options])` + +Returns the internal representation of patterns ([`Task`](./src/managers/tasks.ts) is a combining patterns by base directory). + +```js +fg.generateTasks('*'); + +[{ + base: '.', // Parent directory for all patterns inside this task + dynamic: true, // Dynamic or static patterns are in this task + patterns: ['*'], + positive: ['*'], + negative: [] +}] +``` + +##### patterns + +* Required: `true` +* Type: `string | string[]` + +Any correct pattern(s). + +##### [options] + +* Required: `false` +* Type: [`Options`](#options-3) + +See [Options](#options-3) section. + +#### `isDynamicPattern(pattern, [options])` + +Returns `true` if the passed pattern is a dynamic pattern. + +> :1234: [What is a static or dynamic pattern?](#what-is-a-static-or-dynamic-pattern) + +```js +fg.isDynamicPattern('*'); // true +fg.isDynamicPattern('abc'); // false +``` + +##### pattern + +* Required: `true` +* Type: `string` + +Any correct pattern. + +##### [options] + +* Required: `false` +* Type: [`Options`](#options-3) + +See [Options](#options-3) section. + +#### `escapePath(path)` + +Returns the path with escaped special characters depending on the platform. + +* Posix: + * `*?|(){}[]`; + * `!` at the beginning of line; + * `@+!` before the opening parenthesis; + * `\\` before non-special characters; +* Windows: + * `(){}[]` + * `!` at the beginning of line; + * `@+!` before the opening parenthesis; + * Characters like `*?|` cannot be used in the path ([windows_naming_conventions][windows_naming_conventions]), so they will not be escaped; + +```js +fg.escapePath('!abc'); +// \\!abc +fg.escapePath('[OpenSource] mrmlnc – fast-glob (Deluxe Edition) 2014') + '/*.flac' +// \\[OpenSource\\] mrmlnc – fast-glob \\(Deluxe Edition\\) 2014/*.flac + +fg.posix.escapePath('C:\\Program Files (x86)\\**\\*'); +// C:\\\\Program Files \\(x86\\)\\*\\*\\* +fg.win32.escapePath('C:\\Program Files (x86)\\**\\*'); +// Windows: C:\\Program Files \\(x86\\)\\**\\* +``` + +#### `convertPathToPattern(path)` + +Converts a path to a pattern depending on the platform, including special character escaping. + +* Posix. Works similarly to the `fg.posix.escapePath` method. +* Windows. Works similarly to the `fg.win32.escapePath` method, additionally converting backslashes to forward slashes in cases where they are not escape characters (`!()+@{}[]`). + +```js +fg.convertPathToPattern('[OpenSource] mrmlnc – fast-glob (Deluxe Edition) 2014') + '/*.flac'; +// \\[OpenSource\\] mrmlnc – fast-glob \\(Deluxe Edition\\) 2014/*.flac + +fg.convertPathToPattern('C:/Program Files (x86)/**/*'); +// Posix: C:/Program Files \\(x86\\)/\\*\\*/\\* +// Windows: C:/Program Files \\(x86\\)/**/* + +fg.convertPathToPattern('C:\\Program Files (x86)\\**\\*'); +// Posix: C:\\\\Program Files \\(x86\\)\\*\\*\\* +// Windows: C:/Program Files \\(x86\\)/**/* + +fg.posix.convertPathToPattern('\\\\?\\c:\\Program Files (x86)') + '/**/*'; +// Posix: \\\\\\?\\\\c:\\\\Program Files \\(x86\\)/**/* (broken pattern) +fg.win32.convertPathToPattern('\\\\?\\c:\\Program Files (x86)') + '/**/*'; +// Windows: //?/c:/Program Files \\(x86\\)/**/* +``` + +## Options + +### Common options + +#### concurrency + +* Type: `number` +* Default: `os.cpus().length` + +Specifies the maximum number of concurrent requests from a reader to read directories. + +> :book: The higher the number, the higher the performance and load on the file system. If you want to read in quiet mode, set the value to a comfortable number or `1`. + +
+ +More details + +In Node, there are [two types of threads][nodejs_thread_pool]: Event Loop (code) and a Thread Pool (fs, dns, …). The thread pool size controlled by the `UV_THREADPOOL_SIZE` environment variable. Its default size is 4 ([documentation][libuv_thread_pool]). The pool is one for all tasks within a single Node process. + +Any code can make 4 real concurrent accesses to the file system. The rest of the FS requests will wait in the queue. + +> :book: Each new instance of FG in the same Node process will use the same Thread pool. + +But this package also has the `concurrency` option. This option allows you to control the number of concurrent accesses to the FS at the package level. By default, this package has a value equal to the number of cores available for the current Node process. This allows you to set a value smaller than the pool size (`concurrency: 1`) or, conversely, to prepare tasks for the pool queue more quickly (`concurrency: Number.POSITIVE_INFINITY`). + +So, in fact, this package can **only make 4 concurrent requests to the FS**. You can increase this value by using an environment variable (`UV_THREADPOOL_SIZE`), but in practice this does not give a multiple advantage. + +
+ +#### cwd + +* Type: `string` +* Default: `process.cwd()` + +The current working directory in which to search. + +#### deep + +* Type: `number` +* Default: `Infinity` + +Specifies the maximum depth of a read directory relative to the start directory. + +For example, you have the following tree: + +```js +dir/ +└── one/ // 1 + └── two/ // 2 + └── file.js // 3 +``` + +```js +// With base directory +fg.sync('dir/**', { onlyFiles: false, deep: 1 }); // ['dir/one'] +fg.sync('dir/**', { onlyFiles: false, deep: 2 }); // ['dir/one', 'dir/one/two'] + +// With cwd option +fg.sync('**', { onlyFiles: false, cwd: 'dir', deep: 1 }); // ['one'] +fg.sync('**', { onlyFiles: false, cwd: 'dir', deep: 2 }); // ['one', 'one/two'] +``` + +> :book: If you specify a pattern with some base directory, this directory will not participate in the calculation of the depth of the found directories. Think of it as a [`cwd`](#cwd) option. + +#### followSymbolicLinks + +* Type: `boolean` +* Default: `true` + +Indicates whether to traverse descendants of symbolic link directories when expanding `**` patterns. + +> :book: Note that this option does not affect the base directory of the pattern. For example, if `./a` is a symlink to directory `./b` and you specified `['./a**', './b/**']` patterns, then directory `./a` will still be read. + +> :book: If the [`stats`](#stats) option is specified, the information about the symbolic link (`fs.lstat`) will be replaced with information about the entry (`fs.stat`) behind it. + +#### fs + +* Type: `FileSystemAdapter` +* Default: `fs.*` + +Custom implementation of methods for working with the file system. Supports objects with enumerable properties only. + +```ts +export interface FileSystemAdapter { + lstat?: typeof fs.lstat; + stat?: typeof fs.stat; + lstatSync?: typeof fs.lstatSync; + statSync?: typeof fs.statSync; + readdir?: typeof fs.readdir; + readdirSync?: typeof fs.readdirSync; +} +``` + +#### ignore + +* Type: `string[]` +* Default: `[]` + +An array of glob patterns to exclude matches. This is an alternative way to use negative patterns. + +```js +dir/ +├── package-lock.json +└── package.json +``` + +```js +fg.sync(['*.json', '!package-lock.json']); // ['package.json'] +fg.sync('*.json', { ignore: ['package-lock.json'] }); // ['package.json'] +``` + +#### suppressErrors + +* Type: `boolean` +* Default: `false` + +By default this package suppress only `ENOENT` errors. Set to `true` to suppress any error. + +> :book: Can be useful when the directory has entries with a special level of access. + +#### throwErrorOnBrokenSymbolicLink + +* Type: `boolean` +* Default: `false` + +Throw an error when symbolic link is broken if `true` or safely return `lstat` call if `false`. + +> :book: This option has no effect on errors when reading the symbolic link directory. + +### Output control + +#### absolute + +* Type: `boolean` +* Default: `false` + +Return the absolute path for entries. + +```js +fg.sync('*.js', { absolute: false }); // ['index.js'] +fg.sync('*.js', { absolute: true }); // ['/home/user/index.js'] +``` + +> :book: This option is required if you want to use negative patterns with absolute path, for example, `!${__dirname}/*.js`. + +#### markDirectories + +* Type: `boolean` +* Default: `false` + +Mark the directory path with the final slash. + +```js +fg.sync('*', { onlyFiles: false, markDirectories: false }); // ['index.js', 'controllers'] +fg.sync('*', { onlyFiles: false, markDirectories: true }); // ['index.js', 'controllers/'] +``` + +#### objectMode + +* Type: `boolean` +* Default: `false` + +Returns objects (instead of strings) describing entries. + +```js +fg.sync('*', { objectMode: false }); // ['src/index.js'] +fg.sync('*', { objectMode: true }); // [{ name: 'index.js', path: 'src/index.js', dirent: }] +``` + +The object has the following fields: + +* name (`string`) — the last part of the path (basename) +* path (`string`) — full path relative to the pattern base directory +* dirent ([`fs.Dirent`][node_js_fs_class_fs_dirent]) — instance of `fs.Dirent` + +> :book: An object is an internal representation of entry, so getting it does not affect performance. + +#### onlyDirectories + +* Type: `boolean` +* Default: `false` + +Return only directories. + +```js +fg.sync('*', { onlyDirectories: false }); // ['index.js', 'src'] +fg.sync('*', { onlyDirectories: true }); // ['src'] +``` + +> :book: If `true`, the [`onlyFiles`](#onlyfiles) option is automatically `false`. + +#### onlyFiles + +* Type: `boolean` +* Default: `true` + +Return only files. + +```js +fg.sync('*', { onlyFiles: false }); // ['index.js', 'src'] +fg.sync('*', { onlyFiles: true }); // ['index.js'] +``` + +#### stats + +* Type: `boolean` +* Default: `false` + +Enables an [object mode](#objectmode) with an additional field: + +* stats ([`fs.Stats`][node_js_fs_class_fs_stats]) — instance of `fs.Stats` + +```js +fg.sync('*', { stats: false }); // ['src/index.js'] +fg.sync('*', { stats: true }); // [{ name: 'index.js', path: 'src/index.js', dirent: , stats: }] +``` + +> :book: Returns `fs.stat` instead of `fs.lstat` for symbolic links when the [`followSymbolicLinks`](#followsymboliclinks) option is specified. +> +> :warning: Unlike [object mode](#objectmode) this mode requires additional calls to the file system. On average, this mode is slower at least twice. See [old and modern mode](#old-and-modern-mode) for more details. + +#### unique + +* Type: `boolean` +* Default: `true` + +Ensures that the returned entries are unique. + +```js +fg.sync(['*.json', 'package.json'], { unique: false }); // ['package.json', 'package.json'] +fg.sync(['*.json', 'package.json'], { unique: true }); // ['package.json'] +``` + +If `true` and similar entries are found, the result is the first found. + +### Matching control + +#### braceExpansion + +* Type: `boolean` +* Default: `true` + +Enables Bash-like brace expansion. + +> :1234: [Syntax description][bash_hackers_syntax_expansion_brace] or more [detailed description][micromatch_braces]. + +```js +dir/ +├── abd +├── acd +└── a{b,c}d +``` + +```js +fg.sync('a{b,c}d', { braceExpansion: false }); // ['a{b,c}d'] +fg.sync('a{b,c}d', { braceExpansion: true }); // ['abd', 'acd'] +``` + +#### caseSensitiveMatch + +* Type: `boolean` +* Default: `true` + +Enables a [case-sensitive][wikipedia_case_sensitivity] mode for matching files. + +```js +dir/ +├── file.txt +└── File.txt +``` + +```js +fg.sync('file.txt', { caseSensitiveMatch: false }); // ['file.txt', 'File.txt'] +fg.sync('file.txt', { caseSensitiveMatch: true }); // ['file.txt'] +``` + +#### dot + +* Type: `boolean` +* Default: `false` + +Allow patterns to match entries that begin with a period (`.`). + +> :book: Note that an explicit dot in a portion of the pattern will always match dot files. + +```js +dir/ +├── .editorconfig +└── package.json +``` + +```js +fg.sync('*', { dot: false }); // ['package.json'] +fg.sync('*', { dot: true }); // ['.editorconfig', 'package.json'] +``` + +#### extglob + +* Type: `boolean` +* Default: `true` + +Enables Bash-like `extglob` functionality. + +> :1234: [Syntax description][micromatch_extglobs]. + +```js +dir/ +├── README.md +└── package.json +``` + +```js +fg.sync('*.+(json|md)', { extglob: false }); // [] +fg.sync('*.+(json|md)', { extglob: true }); // ['README.md', 'package.json'] +``` + +#### globstar + +* Type: `boolean` +* Default: `true` + +Enables recursively repeats a pattern containing `**`. If `false`, `**` behaves exactly like `*`. + +```js +dir/ +└── a + └── b +``` + +```js +fg.sync('**', { onlyFiles: false, globstar: false }); // ['a'] +fg.sync('**', { onlyFiles: false, globstar: true }); // ['a', 'a/b'] +``` + +#### baseNameMatch + +* Type: `boolean` +* Default: `false` + +If set to `true`, then patterns without slashes will be matched against the basename of the path if it contains slashes. + +```js +dir/ +└── one/ + └── file.md +``` + +```js +fg.sync('*.md', { baseNameMatch: false }); // [] +fg.sync('*.md', { baseNameMatch: true }); // ['one/file.md'] +``` + +## FAQ + +## What is a static or dynamic pattern? + +All patterns can be divided into two types: + +* **static**. A pattern is considered static if it can be used to get an entry on the file system without using matching mechanisms. For example, the `file.js` pattern is a static pattern because we can just verify that it exists on the file system. +* **dynamic**. A pattern is considered dynamic if it cannot be used directly to find occurrences without using a matching mechanisms. For example, the `*` pattern is a dynamic pattern because we cannot use this pattern directly. + +A pattern is considered dynamic if it contains the following characters (`…` — any characters or their absence) or options: + +* The [`caseSensitiveMatch`](#casesensitivematch) option is disabled +* `\\` (the escape character) +* `*`, `?`, `!` (at the beginning of line) +* `[…]` +* `(…|…)` +* `@(…)`, `!(…)`, `*(…)`, `?(…)`, `+(…)` (respects the [`extglob`](#extglob) option) +* `{…,…}`, `{…..…}` (respects the [`braceExpansion`](#braceexpansion) option) + +## How to write patterns on Windows? + +Always use forward-slashes in glob expressions (patterns and [`ignore`](#ignore) option). Use backslashes for escaping characters. With the [`cwd`](#cwd) option use a convenient format. + +**Bad** + +```ts +[ + 'directory\\*', + path.join(process.cwd(), '**') +] +``` + +**Good** + +```ts +[ + 'directory/*', + fg.convertPathToPattern(process.cwd()) + '/**' +] +``` + +> :book: Use the [`.convertPathToPattern`](#convertpathtopatternpath) package to convert Windows-style path to a Unix-style path. + +Read more about [matching with backslashes][micromatch_backslashes]. + +## Why are parentheses match wrong? + +```js +dir/ +└── (special-*file).txt +``` + +```js +fg.sync(['(special-*file).txt']) // [] +``` + +Refers to Bash. You need to escape special characters: + +```js +fg.sync(['\\(special-*file\\).txt']) // ['(special-*file).txt'] +``` + +Read more about [matching special characters as literals][picomatch_matching_special_characters_as_literals]. Or use the [`.escapePath`](#escapepathpath). + +## How to exclude directory from reading? + +You can use a negative pattern like this: `!**/node_modules` or `!**/node_modules/**`. Also you can use [`ignore`](#ignore) option. Just look at the example below. + +```js +first/ +├── file.md +└── second/ + └── file.txt +``` + +If you don't want to read the `second` directory, you must write the following pattern: `!**/second` or `!**/second/**`. + +```js +fg.sync(['**/*.md', '!**/second']); // ['first/file.md'] +fg.sync(['**/*.md'], { ignore: ['**/second/**'] }); // ['first/file.md'] +``` + +> :warning: When you write `!**/second/**/*` it means that the directory will be **read**, but all the entries will not be included in the results. + +You have to understand that if you write the pattern to exclude directories, then the directory will not be read under any circumstances. + +## How to use UNC path? + +You cannot use [Uniform Naming Convention (UNC)][unc_path] paths as patterns (due to syntax) directly, but you can use them as [`cwd`](#cwd) directory or use the `fg.convertPathToPattern` method. + +```ts +// cwd +fg.sync('*', { cwd: '\\\\?\\C:\\Python27' /* or //?/C:/Python27 */ }); +fg.sync('Python27/*', { cwd: '\\\\?\\C:\\' /* or //?/C:/ */ }); + +// .convertPathToPattern +fg.sync(fg.convertPathToPattern('\\\\?\\c:\\Python27') + '/*'); +``` + +## Compatible with `node-glob`? + +| node-glob | fast-glob | +| :----------: | :-------: | +| `cwd` | [`cwd`](#cwd) | +| `root` | – | +| `dot` | [`dot`](#dot) | +| `nomount` | – | +| `mark` | [`markDirectories`](#markdirectories) | +| `nosort` | – | +| `nounique` | [`unique`](#unique) | +| `nobrace` | [`braceExpansion`](#braceexpansion) | +| `noglobstar` | [`globstar`](#globstar) | +| `noext` | [`extglob`](#extglob) | +| `nocase` | [`caseSensitiveMatch`](#casesensitivematch) | +| `matchBase` | [`baseNameMatch`](#basenamematch) | +| `nodir` | [`onlyFiles`](#onlyfiles) | +| `ignore` | [`ignore`](#ignore) | +| `follow` | [`followSymbolicLinks`](#followsymboliclinks) | +| `realpath` | – | +| `absolute` | [`absolute`](#absolute) | + +## Benchmarks + +You can see results [here](https://github.com/mrmlnc/fast-glob/actions/workflows/benchmark.yml?query=branch%3Amaster) for every commit into the `main` branch. + +* **Product benchmark** – comparison with the main competitors. +* **Regress benchmark** – regression between the current version and the version from the npm registry. + +## Changelog + +See the [Releases section of our GitHub project][github_releases] for changelog for each release version. + +## License + +This software is released under the terms of the MIT license. + +[bash_hackers_syntax_expansion_brace]: https://wiki.bash-hackers.org/syntax/expansion/brace +[github_releases]: https://github.com/mrmlnc/fast-glob/releases +[glob_definition]: https://en.wikipedia.org/wiki/Glob_(programming) +[glob_linux_man]: http://man7.org/linux/man-pages/man3/glob.3.html +[micromatch_backslashes]: https://github.com/micromatch/micromatch#backslashes +[micromatch_braces]: https://github.com/micromatch/braces +[micromatch_extended_globbing]: https://github.com/micromatch/micromatch#extended-globbing +[micromatch_extglobs]: https://github.com/micromatch/micromatch#extglobs +[micromatch_regex_character_classes]: https://github.com/micromatch/micromatch#regex-character-classes +[micromatch]: https://github.com/micromatch/micromatch +[node_js_fs_class_fs_dirent]: https://nodejs.org/api/fs.html#fs_class_fs_dirent +[node_js_fs_class_fs_stats]: https://nodejs.org/api/fs.html#fs_class_fs_stats +[node_js_stream_readable_streams]: https://nodejs.org/api/stream.html#stream_readable_streams +[node_js]: https://nodejs.org/en +[nodelib_fs_scandir_old_and_modern_modern]: https://github.com/nodelib/nodelib/blob/master/packages/fs/fs.scandir/README.md#old-and-modern-mode +[npm_normalize_path]: https://www.npmjs.com/package/normalize-path +[npm_unixify]: https://www.npmjs.com/package/unixify +[picomatch_matching_behavior]: https://github.com/micromatch/picomatch#matching-behavior-vs-bash +[picomatch_matching_special_characters_as_literals]: https://github.com/micromatch/picomatch#matching-special-characters-as-literals +[picomatch_posix_brackets]: https://github.com/micromatch/picomatch#posix-brackets +[regular_expressions_brackets]: https://www.regular-expressions.info/brackets.html +[unc_path]: https://learn.microsoft.com/openspecs/windows_protocols/ms-dtyp/62e862f4-2a51-452e-8eeb-dc4ff5ee33cc +[wikipedia_case_sensitivity]: https://en.wikipedia.org/wiki/Case_sensitivity +[nodejs_thread_pool]: https://nodejs.org/en/docs/guides/dont-block-the-event-loop +[libuv_thread_pool]: http://docs.libuv.org/en/v1.x/threadpool.html +[windows_naming_conventions]: https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#naming-conventions diff --git a/node_modules/fast-glob/out/index.d.ts b/node_modules/fast-glob/out/index.d.ts new file mode 100644 index 0000000..46823bb --- /dev/null +++ b/node_modules/fast-glob/out/index.d.ts @@ -0,0 +1,40 @@ +/// +import * as taskManager from './managers/tasks'; +import { Options as OptionsInternal } from './settings'; +import { Entry as EntryInternal, FileSystemAdapter as FileSystemAdapterInternal, Pattern as PatternInternal } from './types'; +type EntryObjectModePredicate = { + [TKey in keyof Pick]-?: true; +}; +type EntryStatsPredicate = { + [TKey in keyof Pick]-?: true; +}; +type EntryObjectPredicate = EntryObjectModePredicate | EntryStatsPredicate; +declare function FastGlob(source: PatternInternal | PatternInternal[], options: OptionsInternal & EntryObjectPredicate): Promise; +declare function FastGlob(source: PatternInternal | PatternInternal[], options?: OptionsInternal): Promise; +declare namespace FastGlob { + type Options = OptionsInternal; + type Entry = EntryInternal; + type Task = taskManager.Task; + type Pattern = PatternInternal; + type FileSystemAdapter = FileSystemAdapterInternal; + const glob: typeof FastGlob; + const globSync: typeof sync; + const globStream: typeof stream; + const async: typeof FastGlob; + function sync(source: PatternInternal | PatternInternal[], options: OptionsInternal & EntryObjectPredicate): EntryInternal[]; + function sync(source: PatternInternal | PatternInternal[], options?: OptionsInternal): string[]; + function stream(source: PatternInternal | PatternInternal[], options?: OptionsInternal): NodeJS.ReadableStream; + function generateTasks(source: PatternInternal | PatternInternal[], options?: OptionsInternal): Task[]; + function isDynamicPattern(source: PatternInternal, options?: OptionsInternal): boolean; + function escapePath(source: string): PatternInternal; + function convertPathToPattern(source: string): PatternInternal; + namespace posix { + function escapePath(source: string): PatternInternal; + function convertPathToPattern(source: string): PatternInternal; + } + namespace win32 { + function escapePath(source: string): PatternInternal; + function convertPathToPattern(source: string): PatternInternal; + } +} +export = FastGlob; diff --git a/node_modules/fast-glob/out/index.js b/node_modules/fast-glob/out/index.js new file mode 100644 index 0000000..90365d4 --- /dev/null +++ b/node_modules/fast-glob/out/index.js @@ -0,0 +1,102 @@ +"use strict"; +const taskManager = require("./managers/tasks"); +const async_1 = require("./providers/async"); +const stream_1 = require("./providers/stream"); +const sync_1 = require("./providers/sync"); +const settings_1 = require("./settings"); +const utils = require("./utils"); +async function FastGlob(source, options) { + assertPatternsInput(source); + const works = getWorks(source, async_1.default, options); + const result = await Promise.all(works); + return utils.array.flatten(result); +} +// https://github.com/typescript-eslint/typescript-eslint/issues/60 +// eslint-disable-next-line no-redeclare +(function (FastGlob) { + FastGlob.glob = FastGlob; + FastGlob.globSync = sync; + FastGlob.globStream = stream; + FastGlob.async = FastGlob; + function sync(source, options) { + assertPatternsInput(source); + const works = getWorks(source, sync_1.default, options); + return utils.array.flatten(works); + } + FastGlob.sync = sync; + function stream(source, options) { + assertPatternsInput(source); + const works = getWorks(source, stream_1.default, options); + /** + * The stream returned by the provider cannot work with an asynchronous iterator. + * To support asynchronous iterators, regardless of the number of tasks, we always multiplex streams. + * This affects performance (+25%). I don't see best solution right now. + */ + return utils.stream.merge(works); + } + FastGlob.stream = stream; + function generateTasks(source, options) { + assertPatternsInput(source); + const patterns = [].concat(source); + const settings = new settings_1.default(options); + return taskManager.generate(patterns, settings); + } + FastGlob.generateTasks = generateTasks; + function isDynamicPattern(source, options) { + assertPatternsInput(source); + const settings = new settings_1.default(options); + return utils.pattern.isDynamicPattern(source, settings); + } + FastGlob.isDynamicPattern = isDynamicPattern; + function escapePath(source) { + assertPatternsInput(source); + return utils.path.escape(source); + } + FastGlob.escapePath = escapePath; + function convertPathToPattern(source) { + assertPatternsInput(source); + return utils.path.convertPathToPattern(source); + } + FastGlob.convertPathToPattern = convertPathToPattern; + let posix; + (function (posix) { + function escapePath(source) { + assertPatternsInput(source); + return utils.path.escapePosixPath(source); + } + posix.escapePath = escapePath; + function convertPathToPattern(source) { + assertPatternsInput(source); + return utils.path.convertPosixPathToPattern(source); + } + posix.convertPathToPattern = convertPathToPattern; + })(posix = FastGlob.posix || (FastGlob.posix = {})); + let win32; + (function (win32) { + function escapePath(source) { + assertPatternsInput(source); + return utils.path.escapeWindowsPath(source); + } + win32.escapePath = escapePath; + function convertPathToPattern(source) { + assertPatternsInput(source); + return utils.path.convertWindowsPathToPattern(source); + } + win32.convertPathToPattern = convertPathToPattern; + })(win32 = FastGlob.win32 || (FastGlob.win32 = {})); +})(FastGlob || (FastGlob = {})); +function getWorks(source, _Provider, options) { + const patterns = [].concat(source); + const settings = new settings_1.default(options); + const tasks = taskManager.generate(patterns, settings); + const provider = new _Provider(settings); + return tasks.map(provider.read, provider); +} +function assertPatternsInput(input) { + const source = [].concat(input); + const isValidSource = source.every((item) => utils.string.isString(item) && !utils.string.isEmpty(item)); + if (!isValidSource) { + throw new TypeError('Patterns must be a string (non empty) or an array of strings'); + } +} +module.exports = FastGlob; diff --git a/node_modules/fast-glob/out/managers/tasks.d.ts b/node_modules/fast-glob/out/managers/tasks.d.ts new file mode 100644 index 0000000..59d2c42 --- /dev/null +++ b/node_modules/fast-glob/out/managers/tasks.d.ts @@ -0,0 +1,22 @@ +import Settings from '../settings'; +import { Pattern, PatternsGroup } from '../types'; +export type Task = { + base: string; + dynamic: boolean; + patterns: Pattern[]; + positive: Pattern[]; + negative: Pattern[]; +}; +export declare function generate(input: Pattern[], settings: Settings): Task[]; +/** + * Returns tasks grouped by basic pattern directories. + * + * Patterns that can be found inside (`./`) and outside (`../`) the current directory are handled separately. + * This is necessary because directory traversal starts at the base directory and goes deeper. + */ +export declare function convertPatternsToTasks(positive: Pattern[], negative: Pattern[], dynamic: boolean): Task[]; +export declare function getPositivePatterns(patterns: Pattern[]): Pattern[]; +export declare function getNegativePatternsAsPositive(patterns: Pattern[], ignore: Pattern[]): Pattern[]; +export declare function groupPatternsByBaseDirectory(patterns: Pattern[]): PatternsGroup; +export declare function convertPatternGroupsToTasks(positive: PatternsGroup, negative: Pattern[], dynamic: boolean): Task[]; +export declare function convertPatternGroupToTask(base: string, positive: Pattern[], negative: Pattern[], dynamic: boolean): Task; diff --git a/node_modules/fast-glob/out/managers/tasks.js b/node_modules/fast-glob/out/managers/tasks.js new file mode 100644 index 0000000..335a765 --- /dev/null +++ b/node_modules/fast-glob/out/managers/tasks.js @@ -0,0 +1,110 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.convertPatternGroupToTask = exports.convertPatternGroupsToTasks = exports.groupPatternsByBaseDirectory = exports.getNegativePatternsAsPositive = exports.getPositivePatterns = exports.convertPatternsToTasks = exports.generate = void 0; +const utils = require("../utils"); +function generate(input, settings) { + const patterns = processPatterns(input, settings); + const ignore = processPatterns(settings.ignore, settings); + const positivePatterns = getPositivePatterns(patterns); + const negativePatterns = getNegativePatternsAsPositive(patterns, ignore); + const staticPatterns = positivePatterns.filter((pattern) => utils.pattern.isStaticPattern(pattern, settings)); + const dynamicPatterns = positivePatterns.filter((pattern) => utils.pattern.isDynamicPattern(pattern, settings)); + const staticTasks = convertPatternsToTasks(staticPatterns, negativePatterns, /* dynamic */ false); + const dynamicTasks = convertPatternsToTasks(dynamicPatterns, negativePatterns, /* dynamic */ true); + return staticTasks.concat(dynamicTasks); +} +exports.generate = generate; +function processPatterns(input, settings) { + let patterns = input; + /** + * The original pattern like `{,*,**,a/*}` can lead to problems checking the depth when matching entry + * and some problems with the micromatch package (see fast-glob issues: #365, #394). + * + * To solve this problem, we expand all patterns containing brace expansion. This can lead to a slight slowdown + * in matching in the case of a large set of patterns after expansion. + */ + if (settings.braceExpansion) { + patterns = utils.pattern.expandPatternsWithBraceExpansion(patterns); + } + /** + * If the `baseNameMatch` option is enabled, we must add globstar to patterns, so that they can be used + * at any nesting level. + * + * We do this here, because otherwise we have to complicate the filtering logic. For example, we need to change + * the pattern in the filter before creating a regular expression. There is no need to change the patterns + * in the application. Only on the input. + */ + if (settings.baseNameMatch) { + patterns = patterns.map((pattern) => pattern.includes('/') ? pattern : `**/${pattern}`); + } + /** + * This method also removes duplicate slashes that may have been in the pattern or formed as a result of expansion. + */ + return patterns.map((pattern) => utils.pattern.removeDuplicateSlashes(pattern)); +} +/** + * Returns tasks grouped by basic pattern directories. + * + * Patterns that can be found inside (`./`) and outside (`../`) the current directory are handled separately. + * This is necessary because directory traversal starts at the base directory and goes deeper. + */ +function convertPatternsToTasks(positive, negative, dynamic) { + const tasks = []; + const patternsOutsideCurrentDirectory = utils.pattern.getPatternsOutsideCurrentDirectory(positive); + const patternsInsideCurrentDirectory = utils.pattern.getPatternsInsideCurrentDirectory(positive); + const outsideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsOutsideCurrentDirectory); + const insideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsInsideCurrentDirectory); + tasks.push(...convertPatternGroupsToTasks(outsideCurrentDirectoryGroup, negative, dynamic)); + /* + * For the sake of reducing future accesses to the file system, we merge all tasks within the current directory + * into a global task, if at least one pattern refers to the root (`.`). In this case, the global task covers the rest. + */ + if ('.' in insideCurrentDirectoryGroup) { + tasks.push(convertPatternGroupToTask('.', patternsInsideCurrentDirectory, negative, dynamic)); + } + else { + tasks.push(...convertPatternGroupsToTasks(insideCurrentDirectoryGroup, negative, dynamic)); + } + return tasks; +} +exports.convertPatternsToTasks = convertPatternsToTasks; +function getPositivePatterns(patterns) { + return utils.pattern.getPositivePatterns(patterns); +} +exports.getPositivePatterns = getPositivePatterns; +function getNegativePatternsAsPositive(patterns, ignore) { + const negative = utils.pattern.getNegativePatterns(patterns).concat(ignore); + const positive = negative.map(utils.pattern.convertToPositivePattern); + return positive; +} +exports.getNegativePatternsAsPositive = getNegativePatternsAsPositive; +function groupPatternsByBaseDirectory(patterns) { + const group = {}; + return patterns.reduce((collection, pattern) => { + const base = utils.pattern.getBaseDirectory(pattern); + if (base in collection) { + collection[base].push(pattern); + } + else { + collection[base] = [pattern]; + } + return collection; + }, group); +} +exports.groupPatternsByBaseDirectory = groupPatternsByBaseDirectory; +function convertPatternGroupsToTasks(positive, negative, dynamic) { + return Object.keys(positive).map((base) => { + return convertPatternGroupToTask(base, positive[base], negative, dynamic); + }); +} +exports.convertPatternGroupsToTasks = convertPatternGroupsToTasks; +function convertPatternGroupToTask(base, positive, negative, dynamic) { + return { + dynamic, + positive, + negative, + base, + patterns: [].concat(positive, negative.map(utils.pattern.convertToNegativePattern)) + }; +} +exports.convertPatternGroupToTask = convertPatternGroupToTask; diff --git a/node_modules/fast-glob/out/providers/async.d.ts b/node_modules/fast-glob/out/providers/async.d.ts new file mode 100644 index 0000000..2742616 --- /dev/null +++ b/node_modules/fast-glob/out/providers/async.d.ts @@ -0,0 +1,9 @@ +import { Task } from '../managers/tasks'; +import { Entry, EntryItem, ReaderOptions } from '../types'; +import ReaderAsync from '../readers/async'; +import Provider from './provider'; +export default class ProviderAsync extends Provider> { + protected _reader: ReaderAsync; + read(task: Task): Promise; + api(root: string, task: Task, options: ReaderOptions): Promise; +} diff --git a/node_modules/fast-glob/out/providers/async.js b/node_modules/fast-glob/out/providers/async.js new file mode 100644 index 0000000..0c5286e --- /dev/null +++ b/node_modules/fast-glob/out/providers/async.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const async_1 = require("../readers/async"); +const provider_1 = require("./provider"); +class ProviderAsync extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new async_1.default(this._settings); + } + async read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const entries = await this.api(root, task, options); + return entries.map((entry) => options.transform(entry)); + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } +} +exports.default = ProviderAsync; diff --git a/node_modules/fast-glob/out/providers/filters/deep.d.ts b/node_modules/fast-glob/out/providers/filters/deep.d.ts new file mode 100644 index 0000000..377fab8 --- /dev/null +++ b/node_modules/fast-glob/out/providers/filters/deep.d.ts @@ -0,0 +1,16 @@ +import { MicromatchOptions, EntryFilterFunction, Pattern } from '../../types'; +import Settings from '../../settings'; +export default class DeepFilter { + private readonly _settings; + private readonly _micromatchOptions; + constructor(_settings: Settings, _micromatchOptions: MicromatchOptions); + getFilter(basePath: string, positive: Pattern[], negative: Pattern[]): EntryFilterFunction; + private _getMatcher; + private _getNegativePatternsRe; + private _filter; + private _isSkippedByDeep; + private _getEntryLevel; + private _isSkippedSymbolicLink; + private _isSkippedByPositivePatterns; + private _isSkippedByNegativePatterns; +} diff --git a/node_modules/fast-glob/out/providers/filters/deep.js b/node_modules/fast-glob/out/providers/filters/deep.js new file mode 100644 index 0000000..644bf41 --- /dev/null +++ b/node_modules/fast-glob/out/providers/filters/deep.js @@ -0,0 +1,62 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const utils = require("../../utils"); +const partial_1 = require("../matchers/partial"); +class DeepFilter { + constructor(_settings, _micromatchOptions) { + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + } + getFilter(basePath, positive, negative) { + const matcher = this._getMatcher(positive); + const negativeRe = this._getNegativePatternsRe(negative); + return (entry) => this._filter(basePath, entry, matcher, negativeRe); + } + _getMatcher(patterns) { + return new partial_1.default(patterns, this._settings, this._micromatchOptions); + } + _getNegativePatternsRe(patterns) { + const affectDepthOfReadingPatterns = patterns.filter(utils.pattern.isAffectDepthOfReadingPattern); + return utils.pattern.convertPatternsToRe(affectDepthOfReadingPatterns, this._micromatchOptions); + } + _filter(basePath, entry, matcher, negativeRe) { + if (this._isSkippedByDeep(basePath, entry.path)) { + return false; + } + if (this._isSkippedSymbolicLink(entry)) { + return false; + } + const filepath = utils.path.removeLeadingDotSegment(entry.path); + if (this._isSkippedByPositivePatterns(filepath, matcher)) { + return false; + } + return this._isSkippedByNegativePatterns(filepath, negativeRe); + } + _isSkippedByDeep(basePath, entryPath) { + /** + * Avoid unnecessary depth calculations when it doesn't matter. + */ + if (this._settings.deep === Infinity) { + return false; + } + return this._getEntryLevel(basePath, entryPath) >= this._settings.deep; + } + _getEntryLevel(basePath, entryPath) { + const entryPathDepth = entryPath.split('/').length; + if (basePath === '') { + return entryPathDepth; + } + const basePathDepth = basePath.split('/').length; + return entryPathDepth - basePathDepth; + } + _isSkippedSymbolicLink(entry) { + return !this._settings.followSymbolicLinks && entry.dirent.isSymbolicLink(); + } + _isSkippedByPositivePatterns(entryPath, matcher) { + return !this._settings.baseNameMatch && !matcher.match(entryPath); + } + _isSkippedByNegativePatterns(entryPath, patternsRe) { + return !utils.pattern.matchAny(entryPath, patternsRe); + } +} +exports.default = DeepFilter; diff --git a/node_modules/fast-glob/out/providers/filters/entry.d.ts b/node_modules/fast-glob/out/providers/filters/entry.d.ts new file mode 100644 index 0000000..23db353 --- /dev/null +++ b/node_modules/fast-glob/out/providers/filters/entry.d.ts @@ -0,0 +1,17 @@ +import Settings from '../../settings'; +import { EntryFilterFunction, MicromatchOptions, Pattern } from '../../types'; +export default class EntryFilter { + private readonly _settings; + private readonly _micromatchOptions; + readonly index: Map; + constructor(_settings: Settings, _micromatchOptions: MicromatchOptions); + getFilter(positive: Pattern[], negative: Pattern[]): EntryFilterFunction; + private _filter; + private _isDuplicateEntry; + private _createIndexRecord; + private _onlyFileFilter; + private _onlyDirectoryFilter; + private _isMatchToPatternsSet; + private _isMatchToAbsoluteNegative; + private _isMatchToPatterns; +} diff --git a/node_modules/fast-glob/out/providers/filters/entry.js b/node_modules/fast-glob/out/providers/filters/entry.js new file mode 100644 index 0000000..0c9210c --- /dev/null +++ b/node_modules/fast-glob/out/providers/filters/entry.js @@ -0,0 +1,85 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const utils = require("../../utils"); +class EntryFilter { + constructor(_settings, _micromatchOptions) { + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + this.index = new Map(); + } + getFilter(positive, negative) { + const [absoluteNegative, relativeNegative] = utils.pattern.partitionAbsoluteAndRelative(negative); + const patterns = { + positive: { + all: utils.pattern.convertPatternsToRe(positive, this._micromatchOptions) + }, + negative: { + absolute: utils.pattern.convertPatternsToRe(absoluteNegative, Object.assign(Object.assign({}, this._micromatchOptions), { dot: true })), + relative: utils.pattern.convertPatternsToRe(relativeNegative, Object.assign(Object.assign({}, this._micromatchOptions), { dot: true })) + } + }; + return (entry) => this._filter(entry, patterns); + } + _filter(entry, patterns) { + const filepath = utils.path.removeLeadingDotSegment(entry.path); + if (this._settings.unique && this._isDuplicateEntry(filepath)) { + return false; + } + if (this._onlyFileFilter(entry) || this._onlyDirectoryFilter(entry)) { + return false; + } + const isMatched = this._isMatchToPatternsSet(filepath, patterns, entry.dirent.isDirectory()); + if (this._settings.unique && isMatched) { + this._createIndexRecord(filepath); + } + return isMatched; + } + _isDuplicateEntry(filepath) { + return this.index.has(filepath); + } + _createIndexRecord(filepath) { + this.index.set(filepath, undefined); + } + _onlyFileFilter(entry) { + return this._settings.onlyFiles && !entry.dirent.isFile(); + } + _onlyDirectoryFilter(entry) { + return this._settings.onlyDirectories && !entry.dirent.isDirectory(); + } + _isMatchToPatternsSet(filepath, patterns, isDirectory) { + const isMatched = this._isMatchToPatterns(filepath, patterns.positive.all, isDirectory); + if (!isMatched) { + return false; + } + const isMatchedByRelativeNegative = this._isMatchToPatterns(filepath, patterns.negative.relative, isDirectory); + if (isMatchedByRelativeNegative) { + return false; + } + const isMatchedByAbsoluteNegative = this._isMatchToAbsoluteNegative(filepath, patterns.negative.absolute, isDirectory); + if (isMatchedByAbsoluteNegative) { + return false; + } + return true; + } + _isMatchToAbsoluteNegative(filepath, patternsRe, isDirectory) { + if (patternsRe.length === 0) { + return false; + } + const fullpath = utils.path.makeAbsolute(this._settings.cwd, filepath); + return this._isMatchToPatterns(fullpath, patternsRe, isDirectory); + } + _isMatchToPatterns(filepath, patternsRe, isDirectory) { + if (patternsRe.length === 0) { + return false; + } + // Trying to match files and directories by patterns. + const isMatched = utils.pattern.matchAny(filepath, patternsRe); + // A pattern with a trailling slash can be used for directory matching. + // To apply such pattern, we need to add a tralling slash to the path. + if (!isMatched && isDirectory) { + return utils.pattern.matchAny(filepath + '/', patternsRe); + } + return isMatched; + } +} +exports.default = EntryFilter; diff --git a/node_modules/fast-glob/out/providers/filters/error.d.ts b/node_modules/fast-glob/out/providers/filters/error.d.ts new file mode 100644 index 0000000..170eb25 --- /dev/null +++ b/node_modules/fast-glob/out/providers/filters/error.d.ts @@ -0,0 +1,8 @@ +import Settings from '../../settings'; +import { ErrorFilterFunction } from '../../types'; +export default class ErrorFilter { + private readonly _settings; + constructor(_settings: Settings); + getFilter(): ErrorFilterFunction; + private _isNonFatalError; +} diff --git a/node_modules/fast-glob/out/providers/filters/error.js b/node_modules/fast-glob/out/providers/filters/error.js new file mode 100644 index 0000000..1c6f241 --- /dev/null +++ b/node_modules/fast-glob/out/providers/filters/error.js @@ -0,0 +1,15 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const utils = require("../../utils"); +class ErrorFilter { + constructor(_settings) { + this._settings = _settings; + } + getFilter() { + return (error) => this._isNonFatalError(error); + } + _isNonFatalError(error) { + return utils.errno.isEnoentCodeError(error) || this._settings.suppressErrors; + } +} +exports.default = ErrorFilter; diff --git a/node_modules/fast-glob/out/providers/matchers/matcher.d.ts b/node_modules/fast-glob/out/providers/matchers/matcher.d.ts new file mode 100644 index 0000000..d04c232 --- /dev/null +++ b/node_modules/fast-glob/out/providers/matchers/matcher.d.ts @@ -0,0 +1,33 @@ +import { Pattern, MicromatchOptions, PatternRe } from '../../types'; +import Settings from '../../settings'; +export type PatternSegment = StaticPatternSegment | DynamicPatternSegment; +type StaticPatternSegment = { + dynamic: false; + pattern: Pattern; +}; +type DynamicPatternSegment = { + dynamic: true; + pattern: Pattern; + patternRe: PatternRe; +}; +export type PatternSection = PatternSegment[]; +export type PatternInfo = { + /** + * Indicates that the pattern has a globstar (more than a single section). + */ + complete: boolean; + pattern: Pattern; + segments: PatternSegment[]; + sections: PatternSection[]; +}; +export default abstract class Matcher { + private readonly _patterns; + private readonly _settings; + private readonly _micromatchOptions; + protected readonly _storage: PatternInfo[]; + constructor(_patterns: Pattern[], _settings: Settings, _micromatchOptions: MicromatchOptions); + private _fillStorage; + private _getPatternSegments; + private _splitSegmentsIntoSections; +} +export {}; diff --git a/node_modules/fast-glob/out/providers/matchers/matcher.js b/node_modules/fast-glob/out/providers/matchers/matcher.js new file mode 100644 index 0000000..eae67c9 --- /dev/null +++ b/node_modules/fast-glob/out/providers/matchers/matcher.js @@ -0,0 +1,45 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const utils = require("../../utils"); +class Matcher { + constructor(_patterns, _settings, _micromatchOptions) { + this._patterns = _patterns; + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + this._storage = []; + this._fillStorage(); + } + _fillStorage() { + for (const pattern of this._patterns) { + const segments = this._getPatternSegments(pattern); + const sections = this._splitSegmentsIntoSections(segments); + this._storage.push({ + complete: sections.length <= 1, + pattern, + segments, + sections + }); + } + } + _getPatternSegments(pattern) { + const parts = utils.pattern.getPatternParts(pattern, this._micromatchOptions); + return parts.map((part) => { + const dynamic = utils.pattern.isDynamicPattern(part, this._settings); + if (!dynamic) { + return { + dynamic: false, + pattern: part + }; + } + return { + dynamic: true, + pattern: part, + patternRe: utils.pattern.makeRe(part, this._micromatchOptions) + }; + }); + } + _splitSegmentsIntoSections(segments) { + return utils.array.splitWhen(segments, (segment) => segment.dynamic && utils.pattern.hasGlobStar(segment.pattern)); + } +} +exports.default = Matcher; diff --git a/node_modules/fast-glob/out/providers/matchers/partial.d.ts b/node_modules/fast-glob/out/providers/matchers/partial.d.ts new file mode 100644 index 0000000..91520f6 --- /dev/null +++ b/node_modules/fast-glob/out/providers/matchers/partial.d.ts @@ -0,0 +1,4 @@ +import Matcher from './matcher'; +export default class PartialMatcher extends Matcher { + match(filepath: string): boolean; +} diff --git a/node_modules/fast-glob/out/providers/matchers/partial.js b/node_modules/fast-glob/out/providers/matchers/partial.js new file mode 100644 index 0000000..1dfffeb --- /dev/null +++ b/node_modules/fast-glob/out/providers/matchers/partial.js @@ -0,0 +1,38 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const matcher_1 = require("./matcher"); +class PartialMatcher extends matcher_1.default { + match(filepath) { + const parts = filepath.split('/'); + const levels = parts.length; + const patterns = this._storage.filter((info) => !info.complete || info.segments.length > levels); + for (const pattern of patterns) { + const section = pattern.sections[0]; + /** + * In this case, the pattern has a globstar and we must read all directories unconditionally, + * but only if the level has reached the end of the first group. + * + * fixtures/{a,b}/** + * ^ true/false ^ always true + */ + if (!pattern.complete && levels > section.length) { + return true; + } + const match = parts.every((part, index) => { + const segment = pattern.segments[index]; + if (segment.dynamic && segment.patternRe.test(part)) { + return true; + } + if (!segment.dynamic && segment.pattern === part) { + return true; + } + return false; + }); + if (match) { + return true; + } + } + return false; + } +} +exports.default = PartialMatcher; diff --git a/node_modules/fast-glob/out/providers/provider.d.ts b/node_modules/fast-glob/out/providers/provider.d.ts new file mode 100644 index 0000000..1053460 --- /dev/null +++ b/node_modules/fast-glob/out/providers/provider.d.ts @@ -0,0 +1,19 @@ +import { Task } from '../managers/tasks'; +import Settings from '../settings'; +import { MicromatchOptions, ReaderOptions } from '../types'; +import DeepFilter from './filters/deep'; +import EntryFilter from './filters/entry'; +import ErrorFilter from './filters/error'; +import EntryTransformer from './transformers/entry'; +export default abstract class Provider { + protected readonly _settings: Settings; + readonly errorFilter: ErrorFilter; + readonly entryFilter: EntryFilter; + readonly deepFilter: DeepFilter; + readonly entryTransformer: EntryTransformer; + constructor(_settings: Settings); + abstract read(_task: Task): T; + protected _getRootDirectory(task: Task): string; + protected _getReaderOptions(task: Task): ReaderOptions; + protected _getMicromatchOptions(): MicromatchOptions; +} diff --git a/node_modules/fast-glob/out/providers/provider.js b/node_modules/fast-glob/out/providers/provider.js new file mode 100644 index 0000000..da88ee0 --- /dev/null +++ b/node_modules/fast-glob/out/providers/provider.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const path = require("path"); +const deep_1 = require("./filters/deep"); +const entry_1 = require("./filters/entry"); +const error_1 = require("./filters/error"); +const entry_2 = require("./transformers/entry"); +class Provider { + constructor(_settings) { + this._settings = _settings; + this.errorFilter = new error_1.default(this._settings); + this.entryFilter = new entry_1.default(this._settings, this._getMicromatchOptions()); + this.deepFilter = new deep_1.default(this._settings, this._getMicromatchOptions()); + this.entryTransformer = new entry_2.default(this._settings); + } + _getRootDirectory(task) { + return path.resolve(this._settings.cwd, task.base); + } + _getReaderOptions(task) { + const basePath = task.base === '.' ? '' : task.base; + return { + basePath, + pathSegmentSeparator: '/', + concurrency: this._settings.concurrency, + deepFilter: this.deepFilter.getFilter(basePath, task.positive, task.negative), + entryFilter: this.entryFilter.getFilter(task.positive, task.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: true, + strictSlashes: false + }; + } +} +exports.default = Provider; diff --git a/node_modules/fast-glob/out/providers/stream.d.ts b/node_modules/fast-glob/out/providers/stream.d.ts new file mode 100644 index 0000000..3d02a1f --- /dev/null +++ b/node_modules/fast-glob/out/providers/stream.d.ts @@ -0,0 +1,11 @@ +/// +import { Readable } from 'stream'; +import { Task } from '../managers/tasks'; +import ReaderStream from '../readers/stream'; +import { ReaderOptions } from '../types'; +import Provider from './provider'; +export default class ProviderStream extends Provider { + protected _reader: ReaderStream; + read(task: Task): Readable; + api(root: string, task: Task, options: ReaderOptions): Readable; +} diff --git a/node_modules/fast-glob/out/providers/stream.js b/node_modules/fast-glob/out/providers/stream.js new file mode 100644 index 0000000..85da62e --- /dev/null +++ b/node_modules/fast-glob/out/providers/stream.js @@ -0,0 +1,31 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const stream_1 = require("stream"); +const stream_2 = require("../readers/stream"); +const provider_1 = require("./provider"); +class ProviderStream extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new stream_2.default(this._settings); + } + read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const source = this.api(root, task, options); + const destination = new stream_1.Readable({ objectMode: true, read: () => { } }); + source + .once('error', (error) => destination.emit('error', error)) + .on('data', (entry) => destination.emit('data', options.transform(entry))) + .once('end', () => destination.emit('end')); + destination + .once('close', () => source.destroy()); + return destination; + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } +} +exports.default = ProviderStream; diff --git a/node_modules/fast-glob/out/providers/sync.d.ts b/node_modules/fast-glob/out/providers/sync.d.ts new file mode 100644 index 0000000..9c0fe1e --- /dev/null +++ b/node_modules/fast-glob/out/providers/sync.d.ts @@ -0,0 +1,9 @@ +import { Task } from '../managers/tasks'; +import ReaderSync from '../readers/sync'; +import { Entry, EntryItem, ReaderOptions } from '../types'; +import Provider from './provider'; +export default class ProviderSync extends Provider { + protected _reader: ReaderSync; + read(task: Task): EntryItem[]; + api(root: string, task: Task, options: ReaderOptions): Entry[]; +} diff --git a/node_modules/fast-glob/out/providers/sync.js b/node_modules/fast-glob/out/providers/sync.js new file mode 100644 index 0000000..d70aa1b --- /dev/null +++ b/node_modules/fast-glob/out/providers/sync.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const sync_1 = require("../readers/sync"); +const provider_1 = require("./provider"); +class ProviderSync extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new sync_1.default(this._settings); + } + read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const entries = this.api(root, task, options); + return entries.map(options.transform); + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } +} +exports.default = ProviderSync; diff --git a/node_modules/fast-glob/out/providers/transformers/entry.d.ts b/node_modules/fast-glob/out/providers/transformers/entry.d.ts new file mode 100644 index 0000000..e9b85fa --- /dev/null +++ b/node_modules/fast-glob/out/providers/transformers/entry.d.ts @@ -0,0 +1,8 @@ +import Settings from '../../settings'; +import { EntryTransformerFunction } from '../../types'; +export default class EntryTransformer { + private readonly _settings; + constructor(_settings: Settings); + getTransformer(): EntryTransformerFunction; + private _transform; +} diff --git a/node_modules/fast-glob/out/providers/transformers/entry.js b/node_modules/fast-glob/out/providers/transformers/entry.js new file mode 100644 index 0000000..d11903c --- /dev/null +++ b/node_modules/fast-glob/out/providers/transformers/entry.js @@ -0,0 +1,26 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const utils = require("../../utils"); +class EntryTransformer { + constructor(_settings) { + this._settings = _settings; + } + getTransformer() { + return (entry) => this._transform(entry); + } + _transform(entry) { + let filepath = entry.path; + if (this._settings.absolute) { + filepath = utils.path.makeAbsolute(this._settings.cwd, filepath); + filepath = utils.path.unixify(filepath); + } + if (this._settings.markDirectories && entry.dirent.isDirectory()) { + filepath += '/'; + } + if (!this._settings.objectMode) { + return filepath; + } + return Object.assign(Object.assign({}, entry), { path: filepath }); + } +} +exports.default = EntryTransformer; diff --git a/node_modules/fast-glob/out/readers/async.d.ts b/node_modules/fast-glob/out/readers/async.d.ts new file mode 100644 index 0000000..fbca428 --- /dev/null +++ b/node_modules/fast-glob/out/readers/async.d.ts @@ -0,0 +1,10 @@ +import * as fsWalk from '@nodelib/fs.walk'; +import { Entry, ReaderOptions, Pattern } from '../types'; +import Reader from './reader'; +import ReaderStream from './stream'; +export default class ReaderAsync extends Reader> { + protected _walkAsync: typeof fsWalk.walk; + protected _readerStream: ReaderStream; + dynamic(root: string, options: ReaderOptions): Promise; + static(patterns: Pattern[], options: ReaderOptions): Promise; +} diff --git a/node_modules/fast-glob/out/readers/async.js b/node_modules/fast-glob/out/readers/async.js new file mode 100644 index 0000000..d024145 --- /dev/null +++ b/node_modules/fast-glob/out/readers/async.js @@ -0,0 +1,35 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const fsWalk = require("@nodelib/fs.walk"); +const reader_1 = require("./reader"); +const stream_1 = require("./stream"); +class ReaderAsync extends reader_1.default { + constructor() { + super(...arguments); + this._walkAsync = fsWalk.walk; + this._readerStream = new stream_1.default(this._settings); + } + dynamic(root, options) { + return new Promise((resolve, reject) => { + this._walkAsync(root, options, (error, entries) => { + if (error === null) { + resolve(entries); + } + else { + reject(error); + } + }); + }); + } + async static(patterns, options) { + const entries = []; + const stream = this._readerStream.static(patterns, options); + // After #235, replace it with an asynchronous iterator. + return new Promise((resolve, reject) => { + stream.once('error', reject); + stream.on('data', (entry) => entries.push(entry)); + stream.once('end', () => resolve(entries)); + }); + } +} +exports.default = ReaderAsync; diff --git a/node_modules/fast-glob/out/readers/reader.d.ts b/node_modules/fast-glob/out/readers/reader.d.ts new file mode 100644 index 0000000..2af16b6 --- /dev/null +++ b/node_modules/fast-glob/out/readers/reader.d.ts @@ -0,0 +1,15 @@ +/// +import * as fs from 'fs'; +import * as fsStat from '@nodelib/fs.stat'; +import Settings from '../settings'; +import { Entry, ErrnoException, Pattern, ReaderOptions } from '../types'; +export default abstract class Reader { + protected readonly _settings: Settings; + protected readonly _fsStatSettings: fsStat.Settings; + constructor(_settings: Settings); + abstract dynamic(root: string, options: ReaderOptions): T; + abstract static(patterns: Pattern[], options: ReaderOptions): T; + protected _getFullEntryPath(filepath: string): string; + protected _makeEntry(stats: fs.Stats, pattern: Pattern): Entry; + protected _isFatalError(error: ErrnoException): boolean; +} diff --git a/node_modules/fast-glob/out/readers/reader.js b/node_modules/fast-glob/out/readers/reader.js new file mode 100644 index 0000000..7b40255 --- /dev/null +++ b/node_modules/fast-glob/out/readers/reader.js @@ -0,0 +1,33 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const path = require("path"); +const fsStat = require("@nodelib/fs.stat"); +const utils = require("../utils"); +class Reader { + constructor(_settings) { + this._settings = _settings; + this._fsStatSettings = new fsStat.Settings({ + followSymbolicLink: this._settings.followSymbolicLinks, + fs: this._settings.fs, + throwErrorOnBrokenSymbolicLink: this._settings.followSymbolicLinks + }); + } + _getFullEntryPath(filepath) { + return path.resolve(this._settings.cwd, filepath); + } + _makeEntry(stats, pattern) { + const entry = { + name: pattern, + path: pattern, + dirent: utils.fs.createDirentFromStats(pattern, stats) + }; + if (this._settings.stats) { + entry.stats = stats; + } + return entry; + } + _isFatalError(error) { + return !utils.errno.isEnoentCodeError(error) && !this._settings.suppressErrors; + } +} +exports.default = Reader; diff --git a/node_modules/fast-glob/out/readers/stream.d.ts b/node_modules/fast-glob/out/readers/stream.d.ts new file mode 100644 index 0000000..1c74cac --- /dev/null +++ b/node_modules/fast-glob/out/readers/stream.d.ts @@ -0,0 +1,14 @@ +/// +import { Readable } from 'stream'; +import * as fsStat from '@nodelib/fs.stat'; +import * as fsWalk from '@nodelib/fs.walk'; +import { Pattern, ReaderOptions } from '../types'; +import Reader from './reader'; +export default class ReaderStream extends Reader { + protected _walkStream: typeof fsWalk.walkStream; + protected _stat: typeof fsStat.stat; + dynamic(root: string, options: ReaderOptions): Readable; + static(patterns: Pattern[], options: ReaderOptions): Readable; + private _getEntry; + private _getStat; +} diff --git a/node_modules/fast-glob/out/readers/stream.js b/node_modules/fast-glob/out/readers/stream.js new file mode 100644 index 0000000..317c6d5 --- /dev/null +++ b/node_modules/fast-glob/out/readers/stream.js @@ -0,0 +1,55 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const stream_1 = require("stream"); +const fsStat = require("@nodelib/fs.stat"); +const fsWalk = require("@nodelib/fs.walk"); +const reader_1 = require("./reader"); +class ReaderStream extends reader_1.default { + constructor() { + super(...arguments); + this._walkStream = fsWalk.walkStream; + this._stat = fsStat.stat; + } + dynamic(root, options) { + return this._walkStream(root, options); + } + static(patterns, options) { + const filepaths = patterns.map(this._getFullEntryPath, this); + const stream = new stream_1.PassThrough({ objectMode: true }); + stream._write = (index, _enc, done) => { + return this._getEntry(filepaths[index], patterns[index], options) + .then((entry) => { + if (entry !== null && options.entryFilter(entry)) { + stream.push(entry); + } + if (index === filepaths.length - 1) { + stream.end(); + } + done(); + }) + .catch(done); + }; + for (let i = 0; i < filepaths.length; i++) { + stream.write(i); + } + return stream; + } + _getEntry(filepath, pattern, options) { + return this._getStat(filepath) + .then((stats) => this._makeEntry(stats, pattern)) + .catch((error) => { + if (options.errorFilter(error)) { + return null; + } + throw error; + }); + } + _getStat(filepath) { + return new Promise((resolve, reject) => { + this._stat(filepath, this._fsStatSettings, (error, stats) => { + return error === null ? resolve(stats) : reject(error); + }); + }); + } +} +exports.default = ReaderStream; diff --git a/node_modules/fast-glob/out/readers/sync.d.ts b/node_modules/fast-glob/out/readers/sync.d.ts new file mode 100644 index 0000000..c96ffee --- /dev/null +++ b/node_modules/fast-glob/out/readers/sync.d.ts @@ -0,0 +1,12 @@ +import * as fsStat from '@nodelib/fs.stat'; +import * as fsWalk from '@nodelib/fs.walk'; +import { Entry, Pattern, ReaderOptions } from '../types'; +import Reader from './reader'; +export default class ReaderSync extends Reader { + protected _walkSync: typeof fsWalk.walkSync; + protected _statSync: typeof fsStat.statSync; + dynamic(root: string, options: ReaderOptions): Entry[]; + static(patterns: Pattern[], options: ReaderOptions): Entry[]; + private _getEntry; + private _getStat; +} diff --git a/node_modules/fast-glob/out/readers/sync.js b/node_modules/fast-glob/out/readers/sync.js new file mode 100644 index 0000000..4704d65 --- /dev/null +++ b/node_modules/fast-glob/out/readers/sync.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const fsStat = require("@nodelib/fs.stat"); +const fsWalk = require("@nodelib/fs.walk"); +const reader_1 = require("./reader"); +class ReaderSync extends reader_1.default { + constructor() { + super(...arguments); + this._walkSync = fsWalk.walkSync; + this._statSync = fsStat.statSync; + } + dynamic(root, options) { + return this._walkSync(root, options); + } + static(patterns, options) { + const entries = []; + for (const pattern of patterns) { + const filepath = this._getFullEntryPath(pattern); + const entry = this._getEntry(filepath, pattern, options); + if (entry === null || !options.entryFilter(entry)) { + continue; + } + entries.push(entry); + } + return entries; + } + _getEntry(filepath, pattern, options) { + try { + const stats = this._getStat(filepath); + return this._makeEntry(stats, pattern); + } + catch (error) { + if (options.errorFilter(error)) { + return null; + } + throw error; + } + } + _getStat(filepath) { + return this._statSync(filepath, this._fsStatSettings); + } +} +exports.default = ReaderSync; diff --git a/node_modules/fast-glob/out/settings.d.ts b/node_modules/fast-glob/out/settings.d.ts new file mode 100644 index 0000000..76a74f8 --- /dev/null +++ b/node_modules/fast-glob/out/settings.d.ts @@ -0,0 +1,164 @@ +import { FileSystemAdapter, Pattern } from './types'; +export declare const DEFAULT_FILE_SYSTEM_ADAPTER: FileSystemAdapter; +export type Options = { + /** + * Return the absolute path for entries. + * + * @default false + */ + absolute?: boolean; + /** + * If set to `true`, then patterns without slashes will be matched against + * the basename of the path if it contains slashes. + * + * @default false + */ + baseNameMatch?: boolean; + /** + * Enables Bash-like brace expansion. + * + * @default true + */ + braceExpansion?: boolean; + /** + * Enables a case-sensitive mode for matching files. + * + * @default true + */ + caseSensitiveMatch?: boolean; + /** + * Specifies the maximum number of concurrent requests from a reader to read + * directories. + * + * @default os.cpus().length + */ + concurrency?: number; + /** + * The current working directory in which to search. + * + * @default process.cwd() + */ + cwd?: string; + /** + * Specifies the maximum depth of a read directory relative to the start + * directory. + * + * @default Infinity + */ + deep?: number; + /** + * Allow patterns to match entries that begin with a period (`.`). + * + * @default false + */ + dot?: boolean; + /** + * Enables Bash-like `extglob` functionality. + * + * @default true + */ + extglob?: boolean; + /** + * Indicates whether to traverse descendants of symbolic link directories. + * + * @default true + */ + followSymbolicLinks?: boolean; + /** + * Custom implementation of methods for working with the file system. + * + * @default fs.* + */ + fs?: Partial; + /** + * Enables recursively repeats a pattern containing `**`. + * If `false`, `**` behaves exactly like `*`. + * + * @default true + */ + globstar?: boolean; + /** + * An array of glob patterns to exclude matches. + * This is an alternative way to use negative patterns. + * + * @default [] + */ + ignore?: Pattern[]; + /** + * Mark the directory path with the final slash. + * + * @default false + */ + markDirectories?: boolean; + /** + * Returns objects (instead of strings) describing entries. + * + * @default false + */ + objectMode?: boolean; + /** + * Return only directories. + * + * @default false + */ + onlyDirectories?: boolean; + /** + * Return only files. + * + * @default true + */ + onlyFiles?: boolean; + /** + * Enables an object mode (`objectMode`) with an additional `stats` field. + * + * @default false + */ + stats?: boolean; + /** + * By default this package suppress only `ENOENT` errors. + * Set to `true` to suppress any error. + * + * @default false + */ + suppressErrors?: boolean; + /** + * Throw an error when symbolic link is broken if `true` or safely + * return `lstat` call if `false`. + * + * @default false + */ + throwErrorOnBrokenSymbolicLink?: boolean; + /** + * Ensures that the returned entries are unique. + * + * @default true + */ + unique?: boolean; +}; +export default class Settings { + private readonly _options; + readonly absolute: boolean; + readonly baseNameMatch: boolean; + readonly braceExpansion: boolean; + readonly caseSensitiveMatch: boolean; + readonly concurrency: number; + readonly cwd: string; + readonly deep: number; + readonly dot: boolean; + readonly extglob: boolean; + readonly followSymbolicLinks: boolean; + readonly fs: FileSystemAdapter; + readonly globstar: boolean; + readonly ignore: Pattern[]; + readonly markDirectories: boolean; + readonly objectMode: boolean; + readonly onlyDirectories: boolean; + readonly onlyFiles: boolean; + readonly stats: boolean; + readonly suppressErrors: boolean; + readonly throwErrorOnBrokenSymbolicLink: boolean; + readonly unique: boolean; + constructor(_options?: Options); + private _getValue; + private _getFileSystemMethods; +} diff --git a/node_modules/fast-glob/out/settings.js b/node_modules/fast-glob/out/settings.js new file mode 100644 index 0000000..23f916c --- /dev/null +++ b/node_modules/fast-glob/out/settings.js @@ -0,0 +1,59 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.DEFAULT_FILE_SYSTEM_ADAPTER = void 0; +const fs = require("fs"); +const os = require("os"); +/** + * The `os.cpus` method can return zero. We expect the number of cores to be greater than zero. + * https://github.com/nodejs/node/blob/7faeddf23a98c53896f8b574a6e66589e8fb1eb8/lib/os.js#L106-L107 + */ +const CPU_COUNT = Math.max(os.cpus().length, 1); +exports.DEFAULT_FILE_SYSTEM_ADAPTER = { + lstat: fs.lstat, + lstatSync: fs.lstatSync, + stat: fs.stat, + statSync: fs.statSync, + readdir: fs.readdir, + readdirSync: fs.readdirSync +}; +class Settings { + constructor(_options = {}) { + this._options = _options; + this.absolute = this._getValue(this._options.absolute, false); + this.baseNameMatch = this._getValue(this._options.baseNameMatch, false); + this.braceExpansion = this._getValue(this._options.braceExpansion, true); + this.caseSensitiveMatch = this._getValue(this._options.caseSensitiveMatch, true); + this.concurrency = this._getValue(this._options.concurrency, CPU_COUNT); + this.cwd = this._getValue(this._options.cwd, process.cwd()); + this.deep = this._getValue(this._options.deep, Infinity); + this.dot = this._getValue(this._options.dot, false); + this.extglob = this._getValue(this._options.extglob, true); + this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, true); + this.fs = this._getFileSystemMethods(this._options.fs); + this.globstar = this._getValue(this._options.globstar, true); + this.ignore = this._getValue(this._options.ignore, []); + this.markDirectories = this._getValue(this._options.markDirectories, false); + this.objectMode = this._getValue(this._options.objectMode, false); + this.onlyDirectories = this._getValue(this._options.onlyDirectories, false); + this.onlyFiles = this._getValue(this._options.onlyFiles, true); + this.stats = this._getValue(this._options.stats, false); + this.suppressErrors = this._getValue(this._options.suppressErrors, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, false); + this.unique = this._getValue(this._options.unique, true); + if (this.onlyDirectories) { + this.onlyFiles = false; + } + if (this.stats) { + this.objectMode = true; + } + // Remove the cast to the array in the next major (#404). + this.ignore = [].concat(this.ignore); + } + _getValue(option, value) { + return option === undefined ? value : option; + } + _getFileSystemMethods(methods = {}) { + return Object.assign(Object.assign({}, exports.DEFAULT_FILE_SYSTEM_ADAPTER), methods); + } +} +exports.default = Settings; diff --git a/node_modules/fast-glob/out/types/index.d.ts b/node_modules/fast-glob/out/types/index.d.ts new file mode 100644 index 0000000..6506caf --- /dev/null +++ b/node_modules/fast-glob/out/types/index.d.ts @@ -0,0 +1,31 @@ +/// +import * as fsWalk from '@nodelib/fs.walk'; +export type ErrnoException = NodeJS.ErrnoException; +export type Entry = fsWalk.Entry; +export type EntryItem = string | Entry; +export type Pattern = string; +export type PatternRe = RegExp; +export type PatternsGroup = Record; +export type ReaderOptions = fsWalk.Options & { + transform(entry: Entry): EntryItem; + deepFilter: DeepFilterFunction; + entryFilter: EntryFilterFunction; + errorFilter: ErrorFilterFunction; + fs: FileSystemAdapter; + stats: boolean; +}; +export type ErrorFilterFunction = fsWalk.ErrorFilterFunction; +export type EntryFilterFunction = fsWalk.EntryFilterFunction; +export type DeepFilterFunction = fsWalk.DeepFilterFunction; +export type EntryTransformerFunction = (entry: Entry) => EntryItem; +export type MicromatchOptions = { + dot?: boolean; + matchBase?: boolean; + nobrace?: boolean; + nocase?: boolean; + noext?: boolean; + noglobstar?: boolean; + posix?: boolean; + strictSlashes?: boolean; +}; +export type FileSystemAdapter = fsWalk.FileSystemAdapter; diff --git a/node_modules/fast-glob/out/types/index.js b/node_modules/fast-glob/out/types/index.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/node_modules/fast-glob/out/types/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/node_modules/fast-glob/out/utils/array.d.ts b/node_modules/fast-glob/out/utils/array.d.ts new file mode 100644 index 0000000..98e7325 --- /dev/null +++ b/node_modules/fast-glob/out/utils/array.d.ts @@ -0,0 +1,2 @@ +export declare function flatten(items: T[][]): T[]; +export declare function splitWhen(items: T[], predicate: (item: T) => boolean): T[][]; diff --git a/node_modules/fast-glob/out/utils/array.js b/node_modules/fast-glob/out/utils/array.js new file mode 100644 index 0000000..50c406e --- /dev/null +++ b/node_modules/fast-glob/out/utils/array.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.splitWhen = exports.flatten = void 0; +function flatten(items) { + return items.reduce((collection, item) => [].concat(collection, item), []); +} +exports.flatten = flatten; +function splitWhen(items, predicate) { + const result = [[]]; + let groupIndex = 0; + for (const item of items) { + if (predicate(item)) { + groupIndex++; + result[groupIndex] = []; + } + else { + result[groupIndex].push(item); + } + } + return result; +} +exports.splitWhen = splitWhen; diff --git a/node_modules/fast-glob/out/utils/errno.d.ts b/node_modules/fast-glob/out/utils/errno.d.ts new file mode 100644 index 0000000..1c08d3b --- /dev/null +++ b/node_modules/fast-glob/out/utils/errno.d.ts @@ -0,0 +1,2 @@ +import { ErrnoException } from '../types'; +export declare function isEnoentCodeError(error: ErrnoException): boolean; diff --git a/node_modules/fast-glob/out/utils/errno.js b/node_modules/fast-glob/out/utils/errno.js new file mode 100644 index 0000000..f0bd801 --- /dev/null +++ b/node_modules/fast-glob/out/utils/errno.js @@ -0,0 +1,7 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isEnoentCodeError = void 0; +function isEnoentCodeError(error) { + return error.code === 'ENOENT'; +} +exports.isEnoentCodeError = isEnoentCodeError; diff --git a/node_modules/fast-glob/out/utils/fs.d.ts b/node_modules/fast-glob/out/utils/fs.d.ts new file mode 100644 index 0000000..64c61ce --- /dev/null +++ b/node_modules/fast-glob/out/utils/fs.d.ts @@ -0,0 +1,4 @@ +/// +import * as fs from 'fs'; +import { Dirent } from '@nodelib/fs.walk'; +export declare function createDirentFromStats(name: string, stats: fs.Stats): Dirent; diff --git a/node_modules/fast-glob/out/utils/fs.js b/node_modules/fast-glob/out/utils/fs.js new file mode 100644 index 0000000..ace7c74 --- /dev/null +++ b/node_modules/fast-glob/out/utils/fs.js @@ -0,0 +1,19 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.createDirentFromStats = void 0; +class DirentFromStats { + constructor(name, stats) { + this.name = name; + this.isBlockDevice = stats.isBlockDevice.bind(stats); + this.isCharacterDevice = stats.isCharacterDevice.bind(stats); + this.isDirectory = stats.isDirectory.bind(stats); + this.isFIFO = stats.isFIFO.bind(stats); + this.isFile = stats.isFile.bind(stats); + this.isSocket = stats.isSocket.bind(stats); + this.isSymbolicLink = stats.isSymbolicLink.bind(stats); + } +} +function createDirentFromStats(name, stats) { + return new DirentFromStats(name, stats); +} +exports.createDirentFromStats = createDirentFromStats; diff --git a/node_modules/fast-glob/out/utils/index.d.ts b/node_modules/fast-glob/out/utils/index.d.ts new file mode 100644 index 0000000..f634cad --- /dev/null +++ b/node_modules/fast-glob/out/utils/index.d.ts @@ -0,0 +1,8 @@ +import * as array from './array'; +import * as errno from './errno'; +import * as fs from './fs'; +import * as path from './path'; +import * as pattern from './pattern'; +import * as stream from './stream'; +import * as string from './string'; +export { array, errno, fs, path, pattern, stream, string }; diff --git a/node_modules/fast-glob/out/utils/index.js b/node_modules/fast-glob/out/utils/index.js new file mode 100644 index 0000000..0f92c16 --- /dev/null +++ b/node_modules/fast-glob/out/utils/index.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.string = exports.stream = exports.pattern = exports.path = exports.fs = exports.errno = exports.array = void 0; +const array = require("./array"); +exports.array = array; +const errno = require("./errno"); +exports.errno = errno; +const fs = require("./fs"); +exports.fs = fs; +const path = require("./path"); +exports.path = path; +const pattern = require("./pattern"); +exports.pattern = pattern; +const stream = require("./stream"); +exports.stream = stream; +const string = require("./string"); +exports.string = string; diff --git a/node_modules/fast-glob/out/utils/path.d.ts b/node_modules/fast-glob/out/utils/path.d.ts new file mode 100644 index 0000000..0b13f4b --- /dev/null +++ b/node_modules/fast-glob/out/utils/path.d.ts @@ -0,0 +1,13 @@ +import { Pattern } from '../types'; +/** + * Designed to work only with simple paths: `dir\\file`. + */ +export declare function unixify(filepath: string): string; +export declare function makeAbsolute(cwd: string, filepath: string): string; +export declare function removeLeadingDotSegment(entry: string): string; +export declare const escape: typeof escapeWindowsPath; +export declare function escapeWindowsPath(pattern: Pattern): Pattern; +export declare function escapePosixPath(pattern: Pattern): Pattern; +export declare const convertPathToPattern: typeof convertWindowsPathToPattern; +export declare function convertWindowsPathToPattern(filepath: string): Pattern; +export declare function convertPosixPathToPattern(filepath: string): Pattern; diff --git a/node_modules/fast-glob/out/utils/path.js b/node_modules/fast-glob/out/utils/path.js new file mode 100644 index 0000000..7b53b39 --- /dev/null +++ b/node_modules/fast-glob/out/utils/path.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.convertPosixPathToPattern = exports.convertWindowsPathToPattern = exports.convertPathToPattern = exports.escapePosixPath = exports.escapeWindowsPath = exports.escape = exports.removeLeadingDotSegment = exports.makeAbsolute = exports.unixify = void 0; +const os = require("os"); +const path = require("path"); +const IS_WINDOWS_PLATFORM = os.platform() === 'win32'; +const LEADING_DOT_SEGMENT_CHARACTERS_COUNT = 2; // ./ or .\\ +/** + * All non-escaped special characters. + * Posix: ()*?[]{|}, !+@ before (, ! at the beginning, \\ before non-special characters. + * Windows: (){}[], !+@ before (, ! at the beginning. + */ +const POSIX_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g; +const WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()[\]{}]|^!|[!+@](?=\())/g; +/** + * The device path (\\.\ or \\?\). + * https://learn.microsoft.com/en-us/dotnet/standard/io/file-path-formats#dos-device-paths + */ +const DOS_DEVICE_PATH_RE = /^\\\\([.?])/; +/** + * All backslashes except those escaping special characters. + * Windows: !()+@{} + * https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#naming-conventions + */ +const WINDOWS_BACKSLASHES_RE = /\\(?![!()+@[\]{}])/g; +/** + * Designed to work only with simple paths: `dir\\file`. + */ +function unixify(filepath) { + return filepath.replace(/\\/g, '/'); +} +exports.unixify = unixify; +function makeAbsolute(cwd, filepath) { + return path.resolve(cwd, filepath); +} +exports.makeAbsolute = makeAbsolute; +function removeLeadingDotSegment(entry) { + // We do not use `startsWith` because this is 10x slower than current implementation for some cases. + // eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with + if (entry.charAt(0) === '.') { + const secondCharactery = entry.charAt(1); + if (secondCharactery === '/' || secondCharactery === '\\') { + return entry.slice(LEADING_DOT_SEGMENT_CHARACTERS_COUNT); + } + } + return entry; +} +exports.removeLeadingDotSegment = removeLeadingDotSegment; +exports.escape = IS_WINDOWS_PLATFORM ? escapeWindowsPath : escapePosixPath; +function escapeWindowsPath(pattern) { + return pattern.replace(WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE, '\\$2'); +} +exports.escapeWindowsPath = escapeWindowsPath; +function escapePosixPath(pattern) { + return pattern.replace(POSIX_UNESCAPED_GLOB_SYMBOLS_RE, '\\$2'); +} +exports.escapePosixPath = escapePosixPath; +exports.convertPathToPattern = IS_WINDOWS_PLATFORM ? convertWindowsPathToPattern : convertPosixPathToPattern; +function convertWindowsPathToPattern(filepath) { + return escapeWindowsPath(filepath) + .replace(DOS_DEVICE_PATH_RE, '//$1') + .replace(WINDOWS_BACKSLASHES_RE, '/'); +} +exports.convertWindowsPathToPattern = convertWindowsPathToPattern; +function convertPosixPathToPattern(filepath) { + return escapePosixPath(filepath); +} +exports.convertPosixPathToPattern = convertPosixPathToPattern; diff --git a/node_modules/fast-glob/out/utils/pattern.d.ts b/node_modules/fast-glob/out/utils/pattern.d.ts new file mode 100644 index 0000000..e3598a9 --- /dev/null +++ b/node_modules/fast-glob/out/utils/pattern.d.ts @@ -0,0 +1,49 @@ +import { MicromatchOptions, Pattern, PatternRe } from '../types'; +type PatternTypeOptions = { + braceExpansion?: boolean; + caseSensitiveMatch?: boolean; + extglob?: boolean; +}; +export declare function isStaticPattern(pattern: Pattern, options?: PatternTypeOptions): boolean; +export declare function isDynamicPattern(pattern: Pattern, options?: PatternTypeOptions): boolean; +export declare function convertToPositivePattern(pattern: Pattern): Pattern; +export declare function convertToNegativePattern(pattern: Pattern): Pattern; +export declare function isNegativePattern(pattern: Pattern): boolean; +export declare function isPositivePattern(pattern: Pattern): boolean; +export declare function getNegativePatterns(patterns: Pattern[]): Pattern[]; +export declare function getPositivePatterns(patterns: Pattern[]): Pattern[]; +/** + * Returns patterns that can be applied inside the current directory. + * + * @example + * // ['./*', '*', 'a/*'] + * getPatternsInsideCurrentDirectory(['./*', '*', 'a/*', '../*', './../*']) + */ +export declare function getPatternsInsideCurrentDirectory(patterns: Pattern[]): Pattern[]; +/** + * Returns patterns to be expanded relative to (outside) the current directory. + * + * @example + * // ['../*', './../*'] + * getPatternsInsideCurrentDirectory(['./*', '*', 'a/*', '../*', './../*']) + */ +export declare function getPatternsOutsideCurrentDirectory(patterns: Pattern[]): Pattern[]; +export declare function isPatternRelatedToParentDirectory(pattern: Pattern): boolean; +export declare function getBaseDirectory(pattern: Pattern): string; +export declare function hasGlobStar(pattern: Pattern): boolean; +export declare function endsWithSlashGlobStar(pattern: Pattern): boolean; +export declare function isAffectDepthOfReadingPattern(pattern: Pattern): boolean; +export declare function expandPatternsWithBraceExpansion(patterns: Pattern[]): Pattern[]; +export declare function expandBraceExpansion(pattern: Pattern): Pattern[]; +export declare function getPatternParts(pattern: Pattern, options: MicromatchOptions): Pattern[]; +export declare function makeRe(pattern: Pattern, options: MicromatchOptions): PatternRe; +export declare function convertPatternsToRe(patterns: Pattern[], options: MicromatchOptions): PatternRe[]; +export declare function matchAny(entry: string, patternsRe: PatternRe[]): boolean; +/** + * This package only works with forward slashes as a path separator. + * Because of this, we cannot use the standard `path.normalize` method, because on Windows platform it will use of backslashes. + */ +export declare function removeDuplicateSlashes(pattern: string): string; +export declare function partitionAbsoluteAndRelative(patterns: Pattern[]): Pattern[][]; +export declare function isAbsolute(pattern: string): boolean; +export {}; diff --git a/node_modules/fast-glob/out/utils/pattern.js b/node_modules/fast-glob/out/utils/pattern.js new file mode 100644 index 0000000..b2924e7 --- /dev/null +++ b/node_modules/fast-glob/out/utils/pattern.js @@ -0,0 +1,206 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isAbsolute = exports.partitionAbsoluteAndRelative = exports.removeDuplicateSlashes = exports.matchAny = exports.convertPatternsToRe = exports.makeRe = exports.getPatternParts = exports.expandBraceExpansion = exports.expandPatternsWithBraceExpansion = exports.isAffectDepthOfReadingPattern = exports.endsWithSlashGlobStar = exports.hasGlobStar = exports.getBaseDirectory = exports.isPatternRelatedToParentDirectory = exports.getPatternsOutsideCurrentDirectory = exports.getPatternsInsideCurrentDirectory = exports.getPositivePatterns = exports.getNegativePatterns = exports.isPositivePattern = exports.isNegativePattern = exports.convertToNegativePattern = exports.convertToPositivePattern = exports.isDynamicPattern = exports.isStaticPattern = void 0; +const path = require("path"); +const globParent = require("glob-parent"); +const micromatch = require("micromatch"); +const GLOBSTAR = '**'; +const ESCAPE_SYMBOL = '\\'; +const COMMON_GLOB_SYMBOLS_RE = /[*?]|^!/; +const REGEX_CHARACTER_CLASS_SYMBOLS_RE = /\[[^[]*]/; +const REGEX_GROUP_SYMBOLS_RE = /(?:^|[^!*+?@])\([^(]*\|[^|]*\)/; +const GLOB_EXTENSION_SYMBOLS_RE = /[!*+?@]\([^(]*\)/; +const BRACE_EXPANSION_SEPARATORS_RE = /,|\.\./; +/** + * Matches a sequence of two or more consecutive slashes, excluding the first two slashes at the beginning of the string. + * The latter is due to the presence of the device path at the beginning of the UNC path. + */ +const DOUBLE_SLASH_RE = /(?!^)\/{2,}/g; +function isStaticPattern(pattern, options = {}) { + return !isDynamicPattern(pattern, options); +} +exports.isStaticPattern = isStaticPattern; +function isDynamicPattern(pattern, options = {}) { + /** + * A special case with an empty string is necessary for matching patterns that start with a forward slash. + * An empty string cannot be a dynamic pattern. + * For example, the pattern `/lib/*` will be spread into parts: '', 'lib', '*'. + */ + if (pattern === '') { + return false; + } + /** + * When the `caseSensitiveMatch` option is disabled, all patterns must be marked as dynamic, because we cannot check + * filepath directly (without read directory). + */ + if (options.caseSensitiveMatch === false || pattern.includes(ESCAPE_SYMBOL)) { + return true; + } + if (COMMON_GLOB_SYMBOLS_RE.test(pattern) || REGEX_CHARACTER_CLASS_SYMBOLS_RE.test(pattern) || REGEX_GROUP_SYMBOLS_RE.test(pattern)) { + return true; + } + if (options.extglob !== false && GLOB_EXTENSION_SYMBOLS_RE.test(pattern)) { + return true; + } + if (options.braceExpansion !== false && hasBraceExpansion(pattern)) { + return true; + } + return false; +} +exports.isDynamicPattern = isDynamicPattern; +function hasBraceExpansion(pattern) { + const openingBraceIndex = pattern.indexOf('{'); + if (openingBraceIndex === -1) { + return false; + } + const closingBraceIndex = pattern.indexOf('}', openingBraceIndex + 1); + if (closingBraceIndex === -1) { + return false; + } + const braceContent = pattern.slice(openingBraceIndex, closingBraceIndex); + return BRACE_EXPANSION_SEPARATORS_RE.test(braceContent); +} +function convertToPositivePattern(pattern) { + return isNegativePattern(pattern) ? pattern.slice(1) : pattern; +} +exports.convertToPositivePattern = convertToPositivePattern; +function convertToNegativePattern(pattern) { + return '!' + pattern; +} +exports.convertToNegativePattern = convertToNegativePattern; +function isNegativePattern(pattern) { + return pattern.startsWith('!') && pattern[1] !== '('; +} +exports.isNegativePattern = isNegativePattern; +function isPositivePattern(pattern) { + return !isNegativePattern(pattern); +} +exports.isPositivePattern = isPositivePattern; +function getNegativePatterns(patterns) { + return patterns.filter(isNegativePattern); +} +exports.getNegativePatterns = getNegativePatterns; +function getPositivePatterns(patterns) { + return patterns.filter(isPositivePattern); +} +exports.getPositivePatterns = getPositivePatterns; +/** + * Returns patterns that can be applied inside the current directory. + * + * @example + * // ['./*', '*', 'a/*'] + * getPatternsInsideCurrentDirectory(['./*', '*', 'a/*', '../*', './../*']) + */ +function getPatternsInsideCurrentDirectory(patterns) { + return patterns.filter((pattern) => !isPatternRelatedToParentDirectory(pattern)); +} +exports.getPatternsInsideCurrentDirectory = getPatternsInsideCurrentDirectory; +/** + * Returns patterns to be expanded relative to (outside) the current directory. + * + * @example + * // ['../*', './../*'] + * getPatternsInsideCurrentDirectory(['./*', '*', 'a/*', '../*', './../*']) + */ +function getPatternsOutsideCurrentDirectory(patterns) { + return patterns.filter(isPatternRelatedToParentDirectory); +} +exports.getPatternsOutsideCurrentDirectory = getPatternsOutsideCurrentDirectory; +function isPatternRelatedToParentDirectory(pattern) { + return pattern.startsWith('..') || pattern.startsWith('./..'); +} +exports.isPatternRelatedToParentDirectory = isPatternRelatedToParentDirectory; +function getBaseDirectory(pattern) { + return globParent(pattern, { flipBackslashes: false }); +} +exports.getBaseDirectory = getBaseDirectory; +function hasGlobStar(pattern) { + return pattern.includes(GLOBSTAR); +} +exports.hasGlobStar = hasGlobStar; +function endsWithSlashGlobStar(pattern) { + return pattern.endsWith('/' + GLOBSTAR); +} +exports.endsWithSlashGlobStar = endsWithSlashGlobStar; +function isAffectDepthOfReadingPattern(pattern) { + const basename = path.basename(pattern); + return endsWithSlashGlobStar(pattern) || isStaticPattern(basename); +} +exports.isAffectDepthOfReadingPattern = isAffectDepthOfReadingPattern; +function expandPatternsWithBraceExpansion(patterns) { + return patterns.reduce((collection, pattern) => { + return collection.concat(expandBraceExpansion(pattern)); + }, []); +} +exports.expandPatternsWithBraceExpansion = expandPatternsWithBraceExpansion; +function expandBraceExpansion(pattern) { + const patterns = micromatch.braces(pattern, { expand: true, nodupes: true, keepEscaping: true }); + /** + * Sort the patterns by length so that the same depth patterns are processed side by side. + * `a/{b,}/{c,}/*` – `['a///*', 'a/b//*', 'a//c/*', 'a/b/c/*']` + */ + patterns.sort((a, b) => a.length - b.length); + /** + * Micromatch can return an empty string in the case of patterns like `{a,}`. + */ + return patterns.filter((pattern) => pattern !== ''); +} +exports.expandBraceExpansion = expandBraceExpansion; +function getPatternParts(pattern, options) { + let { parts } = micromatch.scan(pattern, Object.assign(Object.assign({}, options), { parts: true })); + /** + * The scan method returns an empty array in some cases. + * See micromatch/picomatch#58 for more details. + */ + if (parts.length === 0) { + parts = [pattern]; + } + /** + * The scan method does not return an empty part for the pattern with a forward slash. + * This is another part of micromatch/picomatch#58. + */ + if (parts[0].startsWith('/')) { + parts[0] = parts[0].slice(1); + parts.unshift(''); + } + return parts; +} +exports.getPatternParts = getPatternParts; +function makeRe(pattern, options) { + return micromatch.makeRe(pattern, options); +} +exports.makeRe = makeRe; +function convertPatternsToRe(patterns, options) { + return patterns.map((pattern) => makeRe(pattern, options)); +} +exports.convertPatternsToRe = convertPatternsToRe; +function matchAny(entry, patternsRe) { + return patternsRe.some((patternRe) => patternRe.test(entry)); +} +exports.matchAny = matchAny; +/** + * This package only works with forward slashes as a path separator. + * Because of this, we cannot use the standard `path.normalize` method, because on Windows platform it will use of backslashes. + */ +function removeDuplicateSlashes(pattern) { + return pattern.replace(DOUBLE_SLASH_RE, '/'); +} +exports.removeDuplicateSlashes = removeDuplicateSlashes; +function partitionAbsoluteAndRelative(patterns) { + const absolute = []; + const relative = []; + for (const pattern of patterns) { + if (isAbsolute(pattern)) { + absolute.push(pattern); + } + else { + relative.push(pattern); + } + } + return [absolute, relative]; +} +exports.partitionAbsoluteAndRelative = partitionAbsoluteAndRelative; +function isAbsolute(pattern) { + return path.isAbsolute(pattern); +} +exports.isAbsolute = isAbsolute; diff --git a/node_modules/fast-glob/out/utils/stream.d.ts b/node_modules/fast-glob/out/utils/stream.d.ts new file mode 100644 index 0000000..4daf913 --- /dev/null +++ b/node_modules/fast-glob/out/utils/stream.d.ts @@ -0,0 +1,4 @@ +/// +/// +import { Readable } from 'stream'; +export declare function merge(streams: Readable[]): NodeJS.ReadableStream; diff --git a/node_modules/fast-glob/out/utils/stream.js b/node_modules/fast-glob/out/utils/stream.js new file mode 100644 index 0000000..b32028c --- /dev/null +++ b/node_modules/fast-glob/out/utils/stream.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.merge = void 0; +const merge2 = require("merge2"); +function merge(streams) { + const mergedStream = merge2(streams); + streams.forEach((stream) => { + stream.once('error', (error) => mergedStream.emit('error', error)); + }); + mergedStream.once('close', () => propagateCloseEventToSources(streams)); + mergedStream.once('end', () => propagateCloseEventToSources(streams)); + return mergedStream; +} +exports.merge = merge; +function propagateCloseEventToSources(streams) { + streams.forEach((stream) => stream.emit('close')); +} diff --git a/node_modules/fast-glob/out/utils/string.d.ts b/node_modules/fast-glob/out/utils/string.d.ts new file mode 100644 index 0000000..c884735 --- /dev/null +++ b/node_modules/fast-glob/out/utils/string.d.ts @@ -0,0 +1,2 @@ +export declare function isString(input: unknown): input is string; +export declare function isEmpty(input: string): boolean; diff --git a/node_modules/fast-glob/out/utils/string.js b/node_modules/fast-glob/out/utils/string.js new file mode 100644 index 0000000..76e7ea5 --- /dev/null +++ b/node_modules/fast-glob/out/utils/string.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isEmpty = exports.isString = void 0; +function isString(input) { + return typeof input === 'string'; +} +exports.isString = isString; +function isEmpty(input) { + return input === ''; +} +exports.isEmpty = isEmpty; diff --git a/node_modules/fast-glob/package.json b/node_modules/fast-glob/package.json new file mode 100644 index 0000000..e910de9 --- /dev/null +++ b/node_modules/fast-glob/package.json @@ -0,0 +1,81 @@ +{ + "name": "fast-glob", + "version": "3.3.3", + "description": "It's a very fast and efficient glob library for Node.js", + "license": "MIT", + "repository": "mrmlnc/fast-glob", + "author": { + "name": "Denis Malinochkin", + "url": "https://mrmlnc.com" + }, + "engines": { + "node": ">=8.6.0" + }, + "main": "out/index.js", + "typings": "out/index.d.ts", + "files": [ + "out", + "!out/{benchmark,tests}", + "!out/**/*.map", + "!out/**/*.spec.*" + ], + "keywords": [ + "glob", + "patterns", + "fast", + "implementation" + ], + "devDependencies": { + "@nodelib/fs.macchiato": "^1.0.1", + "@types/glob-parent": "^5.1.0", + "@types/merge2": "^1.1.4", + "@types/micromatch": "^4.0.0", + "@types/mocha": "^5.2.7", + "@types/node": "^14.18.53", + "@types/picomatch": "^2.3.0", + "@types/sinon": "^7.5.0", + "bencho": "^0.1.1", + "eslint": "^6.5.1", + "eslint-config-mrmlnc": "^1.1.0", + "execa": "^7.1.1", + "fast-glob": "^3.0.4", + "fdir": "6.0.1", + "glob": "^10.0.0", + "hereby": "^1.8.1", + "mocha": "^6.2.1", + "rimraf": "^5.0.0", + "sinon": "^7.5.0", + "snap-shot-it": "^7.9.10", + "typescript": "^4.9.5" + }, + "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.8" + }, + "scripts": { + "clean": "rimraf out", + "lint": "eslint \"src/**/*.ts\" --cache", + "compile": "tsc", + "test": "mocha \"out/**/*.spec.js\" -s 0", + "test:e2e": "mocha \"out/**/*.e2e.js\" -s 0", + "test:e2e:sync": "mocha \"out/**/*.e2e.js\" -s 0 --grep \"\\(sync\\)\"", + "test:e2e:async": "mocha \"out/**/*.e2e.js\" -s 0 --grep \"\\(async\\)\"", + "test:e2e:stream": "mocha \"out/**/*.e2e.js\" -s 0 --grep \"\\(stream\\)\"", + "build": "npm run clean && npm run compile && npm run lint && npm test", + "watch": "npm run clean && npm run compile -- -- --sourceMap --watch", + "bench:async": "npm run bench:product:async && npm run bench:regression:async", + "bench:stream": "npm run bench:product:stream && npm run bench:regression:stream", + "bench:sync": "npm run bench:product:sync && npm run bench:regression:sync", + "bench:product": "npm run bench:product:async && npm run bench:product:sync && npm run bench:product:stream", + "bench:product:async": "hereby bench:product:async", + "bench:product:sync": "hereby bench:product:sync", + "bench:product:stream": "hereby bench:product:stream", + "bench:regression": "npm run bench:regression:async && npm run bench:regression:sync && npm run bench:regression:stream", + "bench:regression:async": "hereby bench:regression:async", + "bench:regression:sync": "hereby bench:regression:sync", + "bench:regression:stream": "hereby bench:regression:stream" + } +} diff --git a/node_modules/fastq/.github/dependabot.yml b/node_modules/fastq/.github/dependabot.yml new file mode 100644 index 0000000..7e7cbe1 --- /dev/null +++ b/node_modules/fastq/.github/dependabot.yml @@ -0,0 +1,11 @@ +version: 2 +updates: +- package-ecosystem: npm + directory: "/" + schedule: + interval: daily + open-pull-requests-limit: 10 + ignore: + - dependency-name: standard + versions: + - 16.0.3 diff --git a/node_modules/fastq/.github/workflows/ci.yml b/node_modules/fastq/.github/workflows/ci.yml new file mode 100644 index 0000000..09dc7a3 --- /dev/null +++ b/node_modules/fastq/.github/workflows/ci.yml @@ -0,0 +1,75 @@ +name: ci + +on: [push, pull_request] + +jobs: + legacy: + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: ['0.10', '0.12', 4.x, 6.x, 8.x, 10.x, 12.x, 13.x, 14.x, 15.x, 16.x] + + steps: + - uses: actions/checkout@v3 + with: + persist-credentials: false + + - name: Use Node.js + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + + - name: Install + run: | + npm install --production && npm install tape + + - name: Run tests + run: | + npm run legacy + + test: + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [18.x, 20.x, 22.x] + + steps: + - uses: actions/checkout@v3 + with: + persist-credentials: false + + - name: Use Node.js + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node-version }} + + - name: Install + run: | + npm install + + - name: Run tests + run: | + npm run test + + types: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + with: + persist-credentials: false + + - name: Use Node.js + uses: actions/setup-node@v3 + with: + node-version: 16 + + - name: Install + run: | + npm install + + - name: Run types tests + run: | + npm run typescript diff --git a/node_modules/fastq/LICENSE b/node_modules/fastq/LICENSE new file mode 100644 index 0000000..27c7bb4 --- /dev/null +++ b/node_modules/fastq/LICENSE @@ -0,0 +1,13 @@ +Copyright (c) 2015-2020, Matteo Collina + +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. diff --git a/node_modules/fastq/README.md b/node_modules/fastq/README.md new file mode 100644 index 0000000..1644111 --- /dev/null +++ b/node_modules/fastq/README.md @@ -0,0 +1,312 @@ +# fastq + +![ci][ci-url] +[![npm version][npm-badge]][npm-url] + +Fast, in memory work queue. + +Benchmarks (1 million tasks): + +* setImmediate: 812ms +* fastq: 854ms +* async.queue: 1298ms +* neoAsync.queue: 1249ms + +Obtained on node 12.16.1, on a dedicated server. + +If you need zero-overhead series function call, check out +[fastseries](http://npm.im/fastseries). For zero-overhead parallel +function call, check out [fastparallel](http://npm.im/fastparallel). + +[![js-standard-style](https://raw.githubusercontent.com/feross/standard/master/badge.png)](https://github.com/feross/standard) + + * Installation + * Usage + * API + * Licence & copyright + +## Install + +`npm i fastq --save` + +## Usage (callback API) + +```js +'use strict' + +const queue = require('fastq')(worker, 1) + +queue.push(42, function (err, result) { + if (err) { throw err } + console.log('the result is', result) +}) + +function worker (arg, cb) { + cb(null, arg * 2) +} +``` + +## Usage (promise API) + +```js +const queue = require('fastq').promise(worker, 1) + +async function worker (arg) { + return arg * 2 +} + +async function run () { + const result = await queue.push(42) + console.log('the result is', result) +} + +run() +``` + +### Setting "this" + +```js +'use strict' + +const that = { hello: 'world' } +const queue = require('fastq')(that, worker, 1) + +queue.push(42, function (err, result) { + if (err) { throw err } + console.log(this) + console.log('the result is', result) +}) + +function worker (arg, cb) { + console.log(this) + cb(null, arg * 2) +} +``` + +### Using with TypeScript (callback API) + +```ts +'use strict' + +import * as fastq from "fastq"; +import type { queue, done } from "fastq"; + +type Task = { + id: number +} + +const q: queue = fastq(worker, 1) + +q.push({ id: 42}) + +function worker (arg: Task, cb: done) { + console.log(arg.id) + cb(null) +} +``` + +### Using with TypeScript (promise API) + +```ts +'use strict' + +import * as fastq from "fastq"; +import type { queueAsPromised } from "fastq"; + +type Task = { + id: number +} + +const q: queueAsPromised = fastq.promise(asyncWorker, 1) + +q.push({ id: 42}).catch((err) => console.error(err)) + +async function asyncWorker (arg: Task): Promise { + // No need for a try-catch block, fastq handles errors automatically + console.log(arg.id) +} +``` + +## API + +* fastqueue() +* queue#push() +* queue#unshift() +* queue#pause() +* queue#resume() +* queue#idle() +* queue#length() +* queue#getQueue() +* queue#kill() +* queue#killAndDrain() +* queue#error() +* queue#concurrency +* queue#drain +* queue#empty +* queue#saturated +* fastqueue.promise() + +------------------------------------------------------- + +### fastqueue([that], worker, concurrency) + +Creates a new queue. + +Arguments: + +* `that`, optional context of the `worker` function. +* `worker`, worker function, it would be called with `that` as `this`, + if that is specified. +* `concurrency`, number of concurrent tasks that could be executed in + parallel. + +------------------------------------------------------- + +### queue.push(task, done) + +Add a task at the end of the queue. `done(err, result)` will be called +when the task was processed. + +------------------------------------------------------- + +### queue.unshift(task, done) + +Add a task at the beginning of the queue. `done(err, result)` will be called +when the task was processed. + +------------------------------------------------------- + +### queue.pause() + +Pause the processing of tasks. Currently worked tasks are not +stopped. + +------------------------------------------------------- + +### queue.resume() + +Resume the processing of tasks. + +------------------------------------------------------- + +### queue.idle() + +Returns `false` if there are tasks being processed or waiting to be processed. +`true` otherwise. + +------------------------------------------------------- + +### queue.length() + +Returns the number of tasks waiting to be processed (in the queue). + +------------------------------------------------------- + +### queue.getQueue() + +Returns all the tasks be processed (in the queue). Returns empty array when there are no tasks + +------------------------------------------------------- + +### queue.kill() + +Removes all tasks waiting to be processed, and reset `drain` to an empty +function. + +------------------------------------------------------- + +### queue.killAndDrain() + +Same than `kill` but the `drain` function will be called before reset to empty. + +------------------------------------------------------- + +### queue.error(handler) + +Set a global error handler. `handler(err, task)` will be called +each time a task is completed, `err` will be not null if the task has thrown an error. + +------------------------------------------------------- + +### queue.concurrency + +Property that returns the number of concurrent tasks that could be executed in +parallel. It can be altered at runtime. + +------------------------------------------------------- + +### queue.paused + +Property (Read-Only) that returns `true` when the queue is in a paused state. + +------------------------------------------------------- + +### queue.drain + +Function that will be called when the last +item from the queue has been processed by a worker. +It can be altered at runtime. + +------------------------------------------------------- + +### queue.empty + +Function that will be called when the last +item from the queue has been assigned to a worker. +It can be altered at runtime. + +------------------------------------------------------- + +### queue.saturated + +Function that will be called when the queue hits the concurrency +limit. +It can be altered at runtime. + +------------------------------------------------------- + +### fastqueue.promise([that], worker(arg), concurrency) + +Creates a new queue with `Promise` apis. It also offers all the methods +and properties of the object returned by [`fastqueue`](#fastqueue) with the modified +[`push`](#pushPromise) and [`unshift`](#unshiftPromise) methods. + +Node v10+ is required to use the promisified version. + +Arguments: +* `that`, optional context of the `worker` function. +* `worker`, worker function, it would be called with `that` as `this`, + if that is specified. It MUST return a `Promise`. +* `concurrency`, number of concurrent tasks that could be executed in + parallel. + + +#### queue.push(task) => Promise + +Add a task at the end of the queue. The returned `Promise` will be fulfilled (rejected) +when the task is completed successfully (unsuccessfully). + +This promise could be ignored as it will not lead to a `'unhandledRejection'`. + + +#### queue.unshift(task) => Promise + +Add a task at the beginning of the queue. The returned `Promise` will be fulfilled (rejected) +when the task is completed successfully (unsuccessfully). + +This promise could be ignored as it will not lead to a `'unhandledRejection'`. + + +#### queue.drained() => Promise + +Wait for the queue to be drained. The returned `Promise` will be resolved when all tasks in the queue have been processed by a worker. + +This promise could be ignored as it will not lead to a `'unhandledRejection'`. + +## License + +ISC + +[ci-url]: https://github.com/mcollina/fastq/workflows/ci/badge.svg +[npm-badge]: https://badge.fury.io/js/fastq.svg +[npm-url]: https://badge.fury.io/js/fastq diff --git a/node_modules/fastq/SECURITY.md b/node_modules/fastq/SECURITY.md new file mode 100644 index 0000000..dd9f1d5 --- /dev/null +++ b/node_modules/fastq/SECURITY.md @@ -0,0 +1,15 @@ +# Security Policy + +## Supported Versions + +Use this section to tell people about which versions of your project are +currently being supported with security updates. + +| Version | Supported | +| ------- | ------------------ | +| 1.x | :white_check_mark: | +| < 1.0 | :x: | + +## Reporting a Vulnerability + +Please report all vulnerabilities at [https://github.com/mcollina/fastq/security](https://github.com/mcollina/fastq/security). diff --git a/node_modules/fastq/bench.js b/node_modules/fastq/bench.js new file mode 100644 index 0000000..4eaa829 --- /dev/null +++ b/node_modules/fastq/bench.js @@ -0,0 +1,66 @@ +'use strict' + +const max = 1000000 +const fastqueue = require('./')(worker, 1) +const { promisify } = require('util') +const immediate = promisify(setImmediate) +const qPromise = require('./').promise(immediate, 1) +const async = require('async') +const neo = require('neo-async') +const asyncqueue = async.queue(worker, 1) +const neoqueue = neo.queue(worker, 1) + +function bench (func, done) { + const key = max + '*' + func.name + let count = -1 + + console.time(key) + end() + + function end () { + if (++count < max) { + func(end) + } else { + console.timeEnd(key) + if (done) { + done() + } + } + } +} + +function benchFastQ (done) { + fastqueue.push(42, done) +} + +function benchAsyncQueue (done) { + asyncqueue.push(42, done) +} + +function benchNeoQueue (done) { + neoqueue.push(42, done) +} + +function worker (arg, cb) { + setImmediate(cb) +} + +function benchSetImmediate (cb) { + worker(42, cb) +} + +function benchFastQPromise (done) { + qPromise.push(42).then(function () { done() }, done) +} + +function runBench (done) { + async.eachSeries([ + benchSetImmediate, + benchFastQ, + benchNeoQueue, + benchAsyncQueue, + benchFastQPromise + ], bench, done) +} + +runBench(runBench) diff --git a/node_modules/fastq/example.js b/node_modules/fastq/example.js new file mode 100644 index 0000000..665fdc8 --- /dev/null +++ b/node_modules/fastq/example.js @@ -0,0 +1,14 @@ +'use strict' + +/* eslint-disable no-var */ + +var queue = require('./')(worker, 1) + +queue.push(42, function (err, result) { + if (err) { throw err } + console.log('the result is', result) +}) + +function worker (arg, cb) { + cb(null, 42 * 2) +} diff --git a/node_modules/fastq/example.mjs b/node_modules/fastq/example.mjs new file mode 100644 index 0000000..81be789 --- /dev/null +++ b/node_modules/fastq/example.mjs @@ -0,0 +1,11 @@ +import { promise as queueAsPromised } from './queue.js' + +/* eslint-disable */ + +const queue = queueAsPromised(worker, 1) + +console.log('the result is', await queue.push(42)) + +async function worker (arg) { + return 42 * 2 +} diff --git a/node_modules/fastq/index.d.ts b/node_modules/fastq/index.d.ts new file mode 100644 index 0000000..817cdb5 --- /dev/null +++ b/node_modules/fastq/index.d.ts @@ -0,0 +1,57 @@ +declare function fastq(context: C, worker: fastq.worker, concurrency: number): fastq.queue +declare function fastq(worker: fastq.worker, concurrency: number): fastq.queue + +declare namespace fastq { + type worker = (this: C, task: T, cb: fastq.done) => void + type asyncWorker = (this: C, task: T) => Promise + type done = (err: Error | null, result?: R) => void + type errorHandler = (err: Error, task: T) => void + + interface queue { + /** Add a task at the end of the queue. `done(err, result)` will be called when the task was processed. */ + push(task: T, done?: done): void + /** Add a task at the beginning of the queue. `done(err, result)` will be called when the task was processed. */ + unshift(task: T, done?: done): void + /** Pause the processing of tasks. Currently worked tasks are not stopped. */ + pause(): any + /** Resume the processing of tasks. */ + resume(): any + running(): number + /** Returns `false` if there are tasks being processed or waiting to be processed. `true` otherwise. */ + idle(): boolean + /** Returns the number of tasks waiting to be processed (in the queue). */ + length(): number + /** Returns all the tasks be processed (in the queue). Returns empty array when there are no tasks */ + getQueue(): T[] + /** Removes all tasks waiting to be processed, and reset `drain` to an empty function. */ + kill(): any + /** Same than `kill` but the `drain` function will be called before reset to empty. */ + killAndDrain(): any + /** Set a global error handler. `handler(err, task)` will be called each time a task is completed, `err` will be not null if the task has thrown an error. */ + error(handler: errorHandler): void + /** Property that returns the number of concurrent tasks that could be executed in parallel. It can be altered at runtime. */ + concurrency: number + /** Property (Read-Only) that returns `true` when the queue is in a paused state. */ + readonly paused: boolean + /** Function that will be called when the last item from the queue has been processed by a worker. It can be altered at runtime. */ + drain(): any + /** Function that will be called when the last item from the queue has been assigned to a worker. It can be altered at runtime. */ + empty: () => void + /** Function that will be called when the queue hits the concurrency limit. It can be altered at runtime. */ + saturated: () => void + } + + interface queueAsPromised extends queue { + /** Add a task at the end of the queue. The returned `Promise` will be fulfilled (rejected) when the task is completed successfully (unsuccessfully). */ + push(task: T): Promise + /** Add a task at the beginning of the queue. The returned `Promise` will be fulfilled (rejected) when the task is completed successfully (unsuccessfully). */ + unshift(task: T): Promise + /** Wait for the queue to be drained. The returned `Promise` will be resolved when all tasks in the queue have been processed by a worker. */ + drained(): Promise + } + + function promise(context: C, worker: fastq.asyncWorker, concurrency: number): fastq.queueAsPromised + function promise(worker: fastq.asyncWorker, concurrency: number): fastq.queueAsPromised +} + +export = fastq diff --git a/node_modules/fastq/package.json b/node_modules/fastq/package.json new file mode 100644 index 0000000..989151f --- /dev/null +++ b/node_modules/fastq/package.json @@ -0,0 +1,53 @@ +{ + "name": "fastq", + "version": "1.19.1", + "description": "Fast, in memory work queue", + "main": "queue.js", + "scripts": { + "lint": "standard --verbose | snazzy", + "unit": "nyc --lines 100 --branches 100 --functions 100 --check-coverage --reporter=text tape test/test.js test/promise.js", + "coverage": "nyc --reporter=html --reporter=cobertura --reporter=text tape test/test.js test/promise.js", + "test:report": "npm run lint && npm run unit:report", + "test": "npm run lint && npm run unit", + "typescript": "tsc --project ./test/tsconfig.json", + "legacy": "tape test/test.js" + }, + "pre-commit": [ + "test", + "typescript" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/mcollina/fastq.git" + }, + "keywords": [ + "fast", + "queue", + "async", + "worker" + ], + "author": "Matteo Collina ", + "license": "ISC", + "bugs": { + "url": "https://github.com/mcollina/fastq/issues" + }, + "homepage": "https://github.com/mcollina/fastq#readme", + "devDependencies": { + "async": "^3.1.0", + "neo-async": "^2.6.1", + "nyc": "^17.0.0", + "pre-commit": "^1.2.2", + "snazzy": "^9.0.0", + "standard": "^16.0.0", + "tape": "^5.0.0", + "typescript": "^5.0.4" + }, + "dependencies": { + "reusify": "^1.0.4" + }, + "standard": { + "ignore": [ + "example.mjs" + ] + } +} diff --git a/node_modules/fastq/queue.js b/node_modules/fastq/queue.js new file mode 100644 index 0000000..7ea8a31 --- /dev/null +++ b/node_modules/fastq/queue.js @@ -0,0 +1,311 @@ +'use strict' + +/* eslint-disable no-var */ + +var reusify = require('reusify') + +function fastqueue (context, worker, _concurrency) { + if (typeof context === 'function') { + _concurrency = worker + worker = context + context = null + } + + if (!(_concurrency >= 1)) { + throw new Error('fastqueue concurrency must be equal to or greater than 1') + } + + var cache = reusify(Task) + var queueHead = null + var queueTail = null + var _running = 0 + var errorHandler = null + + var self = { + push: push, + drain: noop, + saturated: noop, + pause: pause, + paused: false, + + get concurrency () { + return _concurrency + }, + set concurrency (value) { + if (!(value >= 1)) { + throw new Error('fastqueue concurrency must be equal to or greater than 1') + } + _concurrency = value + + if (self.paused) return + for (; queueHead && _running < _concurrency;) { + _running++ + release() + } + }, + + running: running, + resume: resume, + idle: idle, + length: length, + getQueue: getQueue, + unshift: unshift, + empty: noop, + kill: kill, + killAndDrain: killAndDrain, + error: error + } + + return self + + function running () { + return _running + } + + function pause () { + self.paused = true + } + + function length () { + var current = queueHead + var counter = 0 + + while (current) { + current = current.next + counter++ + } + + return counter + } + + function getQueue () { + var current = queueHead + var tasks = [] + + while (current) { + tasks.push(current.value) + current = current.next + } + + return tasks + } + + function resume () { + if (!self.paused) return + self.paused = false + if (queueHead === null) { + _running++ + release() + return + } + for (; queueHead && _running < _concurrency;) { + _running++ + release() + } + } + + function idle () { + return _running === 0 && self.length() === 0 + } + + function push (value, done) { + var current = cache.get() + + current.context = context + current.release = release + current.value = value + current.callback = done || noop + current.errorHandler = errorHandler + + if (_running >= _concurrency || self.paused) { + if (queueTail) { + queueTail.next = current + queueTail = current + } else { + queueHead = current + queueTail = current + self.saturated() + } + } else { + _running++ + worker.call(context, current.value, current.worked) + } + } + + function unshift (value, done) { + var current = cache.get() + + current.context = context + current.release = release + current.value = value + current.callback = done || noop + current.errorHandler = errorHandler + + if (_running >= _concurrency || self.paused) { + if (queueHead) { + current.next = queueHead + queueHead = current + } else { + queueHead = current + queueTail = current + self.saturated() + } + } else { + _running++ + worker.call(context, current.value, current.worked) + } + } + + function release (holder) { + if (holder) { + cache.release(holder) + } + var next = queueHead + if (next && _running <= _concurrency) { + if (!self.paused) { + if (queueTail === queueHead) { + queueTail = null + } + queueHead = next.next + next.next = null + worker.call(context, next.value, next.worked) + if (queueTail === null) { + self.empty() + } + } else { + _running-- + } + } else if (--_running === 0) { + self.drain() + } + } + + function kill () { + queueHead = null + queueTail = null + self.drain = noop + } + + function killAndDrain () { + queueHead = null + queueTail = null + self.drain() + self.drain = noop + } + + function error (handler) { + errorHandler = handler + } +} + +function noop () {} + +function Task () { + this.value = null + this.callback = noop + this.next = null + this.release = noop + this.context = null + this.errorHandler = null + + var self = this + + this.worked = function worked (err, result) { + var callback = self.callback + var errorHandler = self.errorHandler + var val = self.value + self.value = null + self.callback = noop + if (self.errorHandler) { + errorHandler(err, val) + } + callback.call(self.context, err, result) + self.release(self) + } +} + +function queueAsPromised (context, worker, _concurrency) { + if (typeof context === 'function') { + _concurrency = worker + worker = context + context = null + } + + function asyncWrapper (arg, cb) { + worker.call(this, arg) + .then(function (res) { + cb(null, res) + }, cb) + } + + var queue = fastqueue(context, asyncWrapper, _concurrency) + + var pushCb = queue.push + var unshiftCb = queue.unshift + + queue.push = push + queue.unshift = unshift + queue.drained = drained + + return queue + + function push (value) { + var p = new Promise(function (resolve, reject) { + pushCb(value, function (err, result) { + if (err) { + reject(err) + return + } + resolve(result) + }) + }) + + // Let's fork the promise chain to + // make the error bubble up to the user but + // not lead to a unhandledRejection + p.catch(noop) + + return p + } + + function unshift (value) { + var p = new Promise(function (resolve, reject) { + unshiftCb(value, function (err, result) { + if (err) { + reject(err) + return + } + resolve(result) + }) + }) + + // Let's fork the promise chain to + // make the error bubble up to the user but + // not lead to a unhandledRejection + p.catch(noop) + + return p + } + + function drained () { + var p = new Promise(function (resolve) { + process.nextTick(function () { + if (queue.idle()) { + resolve() + } else { + var previousDrain = queue.drain + queue.drain = function () { + if (typeof previousDrain === 'function') previousDrain() + resolve() + queue.drain = previousDrain + } + } + }) + }) + + return p + } +} + +module.exports = fastqueue +module.exports.promise = queueAsPromised diff --git a/node_modules/fastq/test/example.ts b/node_modules/fastq/test/example.ts new file mode 100644 index 0000000..a47d441 --- /dev/null +++ b/node_modules/fastq/test/example.ts @@ -0,0 +1,83 @@ +import * as fastq from '../' +import { promise as queueAsPromised } from '../' + +// Basic example + +const queue = fastq(worker, 1) + +queue.push('world', (err, result) => { + if (err) throw err + console.log('the result is', result) +}) + +queue.push('push without cb') + +queue.concurrency + +queue.drain() + +queue.empty = () => undefined + +console.log('the queue tasks are', queue.getQueue()) + +queue.idle() + +queue.kill() + +queue.killAndDrain() + +queue.length + +queue.pause() + +queue.resume() + +queue.running() + +queue.saturated = () => undefined + +queue.unshift('world', (err, result) => { + if (err) throw err + console.log('the result is', result) +}) + +queue.unshift('unshift without cb') + +function worker(task: any, cb: fastq.done) { + cb(null, 'hello ' + task) +} + +// Generics example + +interface GenericsContext { + base: number; +} + +const genericsQueue = fastq({ base: 6 }, genericsWorker, 1) + +genericsQueue.push(7, (err, done) => { + if (err) throw err + console.log('the result is', done) +}) + +genericsQueue.unshift(7, (err, done) => { + if (err) throw err + console.log('the result is', done) +}) + +function genericsWorker(this: GenericsContext, task: number, cb: fastq.done) { + cb(null, 'the meaning of life is ' + (this.base * task)) +} + +const queue2 = queueAsPromised(asyncWorker, 1) + +async function asyncWorker(task: any) { + return 'hello ' + task +} + +async function run () { + await queue.push(42) + await queue.unshift(42) +} + +run() diff --git a/node_modules/fastq/test/promise.js b/node_modules/fastq/test/promise.js new file mode 100644 index 0000000..45349a4 --- /dev/null +++ b/node_modules/fastq/test/promise.js @@ -0,0 +1,291 @@ +'use strict' + +const test = require('tape') +const buildQueue = require('../').promise +const { promisify } = require('util') +const sleep = promisify(setTimeout) +const immediate = promisify(setImmediate) + +test('concurrency', function (t) { + t.plan(2) + t.throws(buildQueue.bind(null, worker, 0)) + t.doesNotThrow(buildQueue.bind(null, worker, 1)) + + async function worker (arg) { + return true + } +}) + +test('worker execution', async function (t) { + const queue = buildQueue(worker, 1) + + const result = await queue.push(42) + + t.equal(result, true, 'result matches') + + async function worker (arg) { + t.equal(arg, 42) + return true + } +}) + +test('limit', async function (t) { + const queue = buildQueue(worker, 1) + + const [res1, res2] = await Promise.all([queue.push(10), queue.push(0)]) + t.equal(res1, 10, 'the result matches') + t.equal(res2, 0, 'the result matches') + + async function worker (arg) { + await sleep(arg) + return arg + } +}) + +test('multiple executions', async function (t) { + const queue = buildQueue(worker, 1) + const toExec = [1, 2, 3, 4, 5] + const expected = ['a', 'b', 'c', 'd', 'e'] + let count = 0 + + await Promise.all(toExec.map(async function (task, i) { + const result = await queue.push(task) + t.equal(result, expected[i], 'the result matches') + })) + + async function worker (arg) { + t.equal(arg, toExec[count], 'arg matches') + return expected[count++] + } +}) + +test('drained', async function (t) { + const queue = buildQueue(worker, 2) + + const toExec = new Array(10).fill(10) + let count = 0 + + async function worker (arg) { + await sleep(arg) + count++ + } + + toExec.forEach(function (i) { + queue.push(i) + }) + + await queue.drained() + + t.equal(count, toExec.length) + + toExec.forEach(function (i) { + queue.push(i) + }) + + await queue.drained() + + t.equal(count, toExec.length * 2) +}) + +test('drained with exception should not throw', async function (t) { + const queue = buildQueue(worker, 2) + + const toExec = new Array(10).fill(10) + + async function worker () { + throw new Error('foo') + } + + toExec.forEach(function (i) { + queue.push(i) + }) + + await queue.drained() +}) + +test('drained with drain function', async function (t) { + let drainCalled = false + const queue = buildQueue(worker, 2) + + queue.drain = function () { + drainCalled = true + } + + const toExec = new Array(10).fill(10) + let count = 0 + + async function worker (arg) { + await sleep(arg) + count++ + } + + toExec.forEach(function () { + queue.push() + }) + + await queue.drained() + + t.equal(count, toExec.length) + t.equal(drainCalled, true) +}) + +test('drained while idle should resolve', async function (t) { + const queue = buildQueue(worker, 2) + + async function worker (arg) { + await sleep(arg) + } + + await queue.drained() +}) + +test('drained while idle should not call the drain function', async function (t) { + let drainCalled = false + const queue = buildQueue(worker, 2) + + queue.drain = function () { + drainCalled = true + } + + async function worker (arg) { + await sleep(arg) + } + + await queue.drained() + + t.equal(drainCalled, false) +}) + +test('set this', async function (t) { + t.plan(1) + const that = {} + const queue = buildQueue(that, worker, 1) + + await queue.push(42) + + async function worker (arg) { + t.equal(this, that, 'this matches') + } +}) + +test('unshift', async function (t) { + const queue = buildQueue(worker, 1) + const expected = [1, 2, 3, 4] + + await Promise.all([ + queue.push(1), + queue.push(4), + queue.unshift(3), + queue.unshift(2) + ]) + + t.is(expected.length, 0) + + async function worker (arg) { + t.equal(expected.shift(), arg, 'tasks come in order') + } +}) + +test('push with worker throwing error', async function (t) { + t.plan(5) + const q = buildQueue(async function (task, cb) { + throw new Error('test error') + }, 1) + q.error(function (err, task) { + t.ok(err instanceof Error, 'global error handler should catch the error') + t.match(err.message, /test error/, 'error message should be "test error"') + t.equal(task, 42, 'The task executed should be passed') + }) + try { + await q.push(42) + } catch (err) { + t.ok(err instanceof Error, 'push callback should catch the error') + t.match(err.message, /test error/, 'error message should be "test error"') + } +}) + +test('unshift with worker throwing error', async function (t) { + t.plan(2) + const q = buildQueue(async function (task, cb) { + throw new Error('test error') + }, 1) + try { + await q.unshift(42) + } catch (err) { + t.ok(err instanceof Error, 'push callback should catch the error') + t.match(err.message, /test error/, 'error message should be "test error"') + } +}) + +test('no unhandledRejection (push)', async function (t) { + function handleRejection () { + t.fail('unhandledRejection') + } + process.once('unhandledRejection', handleRejection) + const q = buildQueue(async function (task, cb) { + throw new Error('test error') + }, 1) + + q.push(42) + + await immediate() + process.removeListener('unhandledRejection', handleRejection) +}) + +test('no unhandledRejection (unshift)', async function (t) { + function handleRejection () { + t.fail('unhandledRejection') + } + process.once('unhandledRejection', handleRejection) + const q = buildQueue(async function (task, cb) { + throw new Error('test error') + }, 1) + + q.unshift(42) + + await immediate() + process.removeListener('unhandledRejection', handleRejection) +}) + +test('drained should resolve after async tasks complete', async function (t) { + const logs = [] + + async function processTask () { + await new Promise(resolve => setTimeout(resolve, 0)) + logs.push('processed') + } + + const queue = buildQueue(processTask, 1) + queue.drain = () => logs.push('called drain') + + queue.drained().then(() => logs.push('drained promise resolved')) + + await Promise.all([ + queue.push(), + queue.push(), + queue.push() + ]) + + t.deepEqual(logs, [ + 'processed', + 'processed', + 'processed', + 'called drain', + 'drained promise resolved' + ], 'events happened in correct order') +}) + +test('drained should handle undefined drain function', async function (t) { + const queue = buildQueue(worker, 1) + + async function worker (arg) { + await sleep(10) + return arg + } + + queue.drain = undefined + queue.push(1) + await queue.drained() + + t.pass('drained resolved successfully with undefined drain') +}) diff --git a/node_modules/fastq/test/test.js b/node_modules/fastq/test/test.js new file mode 100644 index 0000000..79f0f6c --- /dev/null +++ b/node_modules/fastq/test/test.js @@ -0,0 +1,653 @@ +'use strict' + +/* eslint-disable no-var */ + +var test = require('tape') +var buildQueue = require('../') + +test('concurrency', function (t) { + t.plan(6) + t.throws(buildQueue.bind(null, worker, 0)) + t.throws(buildQueue.bind(null, worker, NaN)) + t.doesNotThrow(buildQueue.bind(null, worker, 1)) + + var queue = buildQueue(worker, 1) + t.throws(function () { + queue.concurrency = 0 + }) + t.throws(function () { + queue.concurrency = NaN + }) + t.doesNotThrow(function () { + queue.concurrency = 2 + }) + + function worker (arg, cb) { + cb(null, true) + } +}) + +test('worker execution', function (t) { + t.plan(3) + + var queue = buildQueue(worker, 1) + + queue.push(42, function (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + }) + + function worker (arg, cb) { + t.equal(arg, 42) + cb(null, true) + } +}) + +test('limit', function (t) { + t.plan(4) + + var expected = [10, 0] + var queue = buildQueue(worker, 1) + + queue.push(10, result) + queue.push(0, result) + + function result (err, arg) { + t.error(err, 'no error') + t.equal(arg, expected.shift(), 'the result matches') + } + + function worker (arg, cb) { + setTimeout(cb, arg, null, arg) + } +}) + +test('multiple executions', function (t) { + t.plan(15) + + var queue = buildQueue(worker, 1) + var toExec = [1, 2, 3, 4, 5] + var count = 0 + + toExec.forEach(function (task) { + queue.push(task, done) + }) + + function done (err, result) { + t.error(err, 'no error') + t.equal(result, toExec[count - 1], 'the result matches') + } + + function worker (arg, cb) { + t.equal(arg, toExec[count], 'arg matches') + count++ + setImmediate(cb, null, arg) + } +}) + +test('multiple executions, one after another', function (t) { + t.plan(15) + + var queue = buildQueue(worker, 1) + var toExec = [1, 2, 3, 4, 5] + var count = 0 + + queue.push(toExec[0], done) + + function done (err, result) { + t.error(err, 'no error') + t.equal(result, toExec[count - 1], 'the result matches') + if (count < toExec.length) { + queue.push(toExec[count], done) + } + } + + function worker (arg, cb) { + t.equal(arg, toExec[count], 'arg matches') + count++ + setImmediate(cb, null, arg) + } +}) + +test('set this', function (t) { + t.plan(3) + + var that = {} + var queue = buildQueue(that, worker, 1) + + queue.push(42, function (err, result) { + t.error(err, 'no error') + t.equal(this, that, 'this matches') + }) + + function worker (arg, cb) { + t.equal(this, that, 'this matches') + cb(null, true) + } +}) + +test('drain', function (t) { + t.plan(4) + + var queue = buildQueue(worker, 1) + var worked = false + + queue.push(42, function (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + }) + + queue.drain = function () { + t.equal(true, worked, 'drained') + } + + function worker (arg, cb) { + t.equal(arg, 42) + worked = true + setImmediate(cb, null, true) + } +}) + +test('pause && resume', function (t) { + t.plan(13) + + var queue = buildQueue(worker, 1) + var worked = false + var expected = [42, 24] + + t.notOk(queue.paused, 'it should not be paused') + + queue.pause() + + queue.push(42, function (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + }) + + queue.push(24, function (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + }) + + t.notOk(worked, 'it should be paused') + t.ok(queue.paused, 'it should be paused') + + queue.resume() + queue.pause() + queue.resume() + queue.resume() // second resume is a no-op + + function worker (arg, cb) { + t.notOk(queue.paused, 'it should not be paused') + t.ok(queue.running() <= queue.concurrency, 'should respect the concurrency') + t.equal(arg, expected.shift()) + worked = true + process.nextTick(function () { cb(null, true) }) + } +}) + +test('pause in flight && resume', function (t) { + t.plan(16) + + var queue = buildQueue(worker, 1) + var expected = [42, 24, 12] + + t.notOk(queue.paused, 'it should not be paused') + + queue.push(42, function (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + t.ok(queue.paused, 'it should be paused') + process.nextTick(function () { + queue.resume() + queue.pause() + queue.resume() + }) + }) + + queue.push(24, function (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + t.notOk(queue.paused, 'it should not be paused') + }) + + queue.push(12, function (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + t.notOk(queue.paused, 'it should not be paused') + }) + + queue.pause() + + function worker (arg, cb) { + t.ok(queue.running() <= queue.concurrency, 'should respect the concurrency') + t.equal(arg, expected.shift()) + process.nextTick(function () { cb(null, true) }) + } +}) + +test('altering concurrency', function (t) { + t.plan(24) + + var queue = buildQueue(worker, 1) + + queue.push(24, workDone) + queue.push(24, workDone) + queue.push(24, workDone) + + queue.pause() + + queue.concurrency = 3 // concurrency changes are ignored while paused + queue.concurrency = 2 + + queue.resume() + + t.equal(queue.running(), 2, '2 jobs running') + + queue.concurrency = 3 + + t.equal(queue.running(), 3, '3 jobs running') + + queue.concurrency = 1 + + t.equal(queue.running(), 3, '3 jobs running') // running jobs can't be killed + + queue.push(24, workDone) + queue.push(24, workDone) + queue.push(24, workDone) + queue.push(24, workDone) + + function workDone (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + } + + function worker (arg, cb) { + t.ok(queue.running() <= queue.concurrency, 'should respect the concurrency') + setImmediate(function () { + cb(null, true) + }) + } +}) + +test('idle()', function (t) { + t.plan(12) + + var queue = buildQueue(worker, 1) + + t.ok(queue.idle(), 'queue is idle') + + queue.push(42, function (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + t.notOk(queue.idle(), 'queue is not idle') + }) + + queue.push(42, function (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + // it will go idle after executing this function + setImmediate(function () { + t.ok(queue.idle(), 'queue is now idle') + }) + }) + + t.notOk(queue.idle(), 'queue is not idle') + + function worker (arg, cb) { + t.notOk(queue.idle(), 'queue is not idle') + t.equal(arg, 42) + setImmediate(cb, null, true) + } +}) + +test('saturated', function (t) { + t.plan(9) + + var queue = buildQueue(worker, 1) + var preworked = 0 + var worked = 0 + + queue.saturated = function () { + t.pass('saturated') + t.equal(preworked, 1, 'started 1 task') + t.equal(worked, 0, 'worked zero task') + } + + queue.push(42, done) + queue.push(42, done) + + function done (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + } + + function worker (arg, cb) { + t.equal(arg, 42) + preworked++ + setImmediate(function () { + worked++ + cb(null, true) + }) + } +}) + +test('length', function (t) { + t.plan(7) + + var queue = buildQueue(worker, 1) + + t.equal(queue.length(), 0, 'nothing waiting') + queue.push(42, done) + t.equal(queue.length(), 0, 'nothing waiting') + queue.push(42, done) + t.equal(queue.length(), 1, 'one task waiting') + queue.push(42, done) + t.equal(queue.length(), 2, 'two tasks waiting') + + function done (err, result) { + t.error(err, 'no error') + } + + function worker (arg, cb) { + setImmediate(function () { + cb(null, true) + }) + } +}) + +test('getQueue', function (t) { + t.plan(10) + + var queue = buildQueue(worker, 1) + + t.equal(queue.getQueue().length, 0, 'nothing waiting') + queue.push(42, done) + t.equal(queue.getQueue().length, 0, 'nothing waiting') + queue.push(42, done) + t.equal(queue.getQueue().length, 1, 'one task waiting') + t.equal(queue.getQueue()[0], 42, 'should be equal') + queue.push(43, done) + t.equal(queue.getQueue().length, 2, 'two tasks waiting') + t.equal(queue.getQueue()[0], 42, 'should be equal') + t.equal(queue.getQueue()[1], 43, 'should be equal') + + function done (err, result) { + t.error(err, 'no error') + } + + function worker (arg, cb) { + setImmediate(function () { + cb(null, true) + }) + } +}) + +test('unshift', function (t) { + t.plan(8) + + var queue = buildQueue(worker, 1) + var expected = [1, 2, 3, 4] + + queue.push(1, done) + queue.push(4, done) + queue.unshift(3, done) + queue.unshift(2, done) + + function done (err, result) { + t.error(err, 'no error') + } + + function worker (arg, cb) { + t.equal(expected.shift(), arg, 'tasks come in order') + setImmediate(function () { + cb(null, true) + }) + } +}) + +test('unshift && empty', function (t) { + t.plan(2) + + var queue = buildQueue(worker, 1) + var completed = false + + queue.pause() + + queue.empty = function () { + t.notOk(completed, 'the task has not completed yet') + } + + queue.unshift(1, done) + + queue.resume() + + function done (err, result) { + completed = true + t.error(err, 'no error') + } + + function worker (arg, cb) { + setImmediate(function () { + cb(null, true) + }) + } +}) + +test('push && empty', function (t) { + t.plan(2) + + var queue = buildQueue(worker, 1) + var completed = false + + queue.pause() + + queue.empty = function () { + t.notOk(completed, 'the task has not completed yet') + } + + queue.push(1, done) + + queue.resume() + + function done (err, result) { + completed = true + t.error(err, 'no error') + } + + function worker (arg, cb) { + setImmediate(function () { + cb(null, true) + }) + } +}) + +test('kill', function (t) { + t.plan(5) + + var queue = buildQueue(worker, 1) + var expected = [1] + + var predrain = queue.drain + + queue.drain = function drain () { + t.fail('drain should never be called') + } + + queue.push(1, done) + queue.push(4, done) + queue.unshift(3, done) + queue.unshift(2, done) + queue.kill() + + function done (err, result) { + t.error(err, 'no error') + setImmediate(function () { + t.equal(queue.length(), 0, 'no queued tasks') + t.equal(queue.running(), 0, 'no running tasks') + t.equal(queue.drain, predrain, 'drain is back to default') + }) + } + + function worker (arg, cb) { + t.equal(expected.shift(), arg, 'tasks come in order') + setImmediate(function () { + cb(null, true) + }) + } +}) + +test('killAndDrain', function (t) { + t.plan(6) + + var queue = buildQueue(worker, 1) + var expected = [1] + + var predrain = queue.drain + + queue.drain = function drain () { + t.pass('drain has been called') + } + + queue.push(1, done) + queue.push(4, done) + queue.unshift(3, done) + queue.unshift(2, done) + queue.killAndDrain() + + function done (err, result) { + t.error(err, 'no error') + setImmediate(function () { + t.equal(queue.length(), 0, 'no queued tasks') + t.equal(queue.running(), 0, 'no running tasks') + t.equal(queue.drain, predrain, 'drain is back to default') + }) + } + + function worker (arg, cb) { + t.equal(expected.shift(), arg, 'tasks come in order') + setImmediate(function () { + cb(null, true) + }) + } +}) + +test('pause && idle', function (t) { + t.plan(11) + + var queue = buildQueue(worker, 1) + var worked = false + + t.notOk(queue.paused, 'it should not be paused') + t.ok(queue.idle(), 'should be idle') + + queue.pause() + + queue.push(42, function (err, result) { + t.error(err, 'no error') + t.equal(result, true, 'result matches') + }) + + t.notOk(worked, 'it should be paused') + t.ok(queue.paused, 'it should be paused') + t.notOk(queue.idle(), 'should not be idle') + + queue.resume() + + t.notOk(queue.paused, 'it should not be paused') + t.notOk(queue.idle(), 'it should not be idle') + + function worker (arg, cb) { + t.equal(arg, 42) + worked = true + process.nextTick(cb.bind(null, null, true)) + process.nextTick(function () { + t.ok(queue.idle(), 'is should be idle') + }) + } +}) + +test('push without cb', function (t) { + t.plan(1) + + var queue = buildQueue(worker, 1) + + queue.push(42) + + function worker (arg, cb) { + t.equal(arg, 42) + cb() + } +}) + +test('unshift without cb', function (t) { + t.plan(1) + + var queue = buildQueue(worker, 1) + + queue.unshift(42) + + function worker (arg, cb) { + t.equal(arg, 42) + cb() + } +}) + +test('push with worker throwing error', function (t) { + t.plan(5) + var q = buildQueue(function (task, cb) { + cb(new Error('test error'), null) + }, 1) + q.error(function (err, task) { + t.ok(err instanceof Error, 'global error handler should catch the error') + t.match(err.message, /test error/, 'error message should be "test error"') + t.equal(task, 42, 'The task executed should be passed') + }) + q.push(42, function (err) { + t.ok(err instanceof Error, 'push callback should catch the error') + t.match(err.message, /test error/, 'error message should be "test error"') + }) +}) + +test('unshift with worker throwing error', function (t) { + t.plan(5) + var q = buildQueue(function (task, cb) { + cb(new Error('test error'), null) + }, 1) + q.error(function (err, task) { + t.ok(err instanceof Error, 'global error handler should catch the error') + t.match(err.message, /test error/, 'error message should be "test error"') + t.equal(task, 42, 'The task executed should be passed') + }) + q.unshift(42, function (err) { + t.ok(err instanceof Error, 'unshift callback should catch the error') + t.match(err.message, /test error/, 'error message should be "test error"') + }) +}) + +test('pause/resume should trigger drain event', function (t) { + t.plan(1) + + var queue = buildQueue(worker, 1) + queue.pause() + queue.drain = function () { + t.pass('drain should be called') + } + + function worker (arg, cb) { + cb(null, true) + } + + queue.resume() +}) + +test('paused flag', function (t) { + t.plan(2) + + var queue = buildQueue(function (arg, cb) { + cb(null) + }, 1) + t.equal(queue.paused, false) + queue.pause() + t.equal(queue.paused, true) +}) diff --git a/node_modules/fastq/test/tsconfig.json b/node_modules/fastq/test/tsconfig.json new file mode 100644 index 0000000..66e16e9 --- /dev/null +++ b/node_modules/fastq/test/tsconfig.json @@ -0,0 +1,11 @@ +{ + "compilerOptions": { + "target": "es6", + "module": "commonjs", + "noEmit": true, + "strict": true + }, + "files": [ + "./example.ts" + ] +} diff --git a/node_modules/fill-range/LICENSE b/node_modules/fill-range/LICENSE new file mode 100644 index 0000000..9af4a67 --- /dev/null +++ b/node_modules/fill-range/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-present, Jon Schlinkert. + +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. diff --git a/node_modules/fill-range/README.md b/node_modules/fill-range/README.md new file mode 100644 index 0000000..8d756fe --- /dev/null +++ b/node_modules/fill-range/README.md @@ -0,0 +1,237 @@ +# fill-range [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=W8YFZ425KND68) [![NPM version](https://img.shields.io/npm/v/fill-range.svg?style=flat)](https://www.npmjs.com/package/fill-range) [![NPM monthly downloads](https://img.shields.io/npm/dm/fill-range.svg?style=flat)](https://npmjs.org/package/fill-range) [![NPM total downloads](https://img.shields.io/npm/dt/fill-range.svg?style=flat)](https://npmjs.org/package/fill-range) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/fill-range.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/fill-range) + +> Fill in a range of numbers or letters, optionally passing an increment or `step` to use, or create a regex-compatible range with `options.toRegex` + +Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save fill-range +``` + +## Usage + +Expands numbers and letters, optionally using a `step` as the last argument. _(Numbers may be defined as JavaScript numbers or strings)_. + +```js +const fill = require('fill-range'); +// fill(from, to[, step, options]); + +console.log(fill('1', '10')); //=> ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'] +console.log(fill('1', '10', { toRegex: true })); //=> [1-9]|10 +``` + +**Params** + +* `from`: **{String|Number}** the number or letter to start with +* `to`: **{String|Number}** the number or letter to end with +* `step`: **{String|Number|Object|Function}** Optionally pass a [step](#optionsstep) to use. +* `options`: **{Object|Function}**: See all available [options](#options) + +## Examples + +By default, an array of values is returned. + +**Alphabetical ranges** + +```js +console.log(fill('a', 'e')); //=> ['a', 'b', 'c', 'd', 'e'] +console.log(fill('A', 'E')); //=> [ 'A', 'B', 'C', 'D', 'E' ] +``` + +**Numerical ranges** + +Numbers can be defined as actual numbers or strings. + +```js +console.log(fill(1, 5)); //=> [ 1, 2, 3, 4, 5 ] +console.log(fill('1', '5')); //=> [ 1, 2, 3, 4, 5 ] +``` + +**Negative ranges** + +Numbers can be defined as actual numbers or strings. + +```js +console.log(fill('-5', '-1')); //=> [ '-5', '-4', '-3', '-2', '-1' ] +console.log(fill('-5', '5')); //=> [ '-5', '-4', '-3', '-2', '-1', '0', '1', '2', '3', '4', '5' ] +``` + +**Steps (increments)** + +```js +// numerical ranges with increments +console.log(fill('0', '25', 4)); //=> [ '0', '4', '8', '12', '16', '20', '24' ] +console.log(fill('0', '25', 5)); //=> [ '0', '5', '10', '15', '20', '25' ] +console.log(fill('0', '25', 6)); //=> [ '0', '6', '12', '18', '24' ] + +// alphabetical ranges with increments +console.log(fill('a', 'z', 4)); //=> [ 'a', 'e', 'i', 'm', 'q', 'u', 'y' ] +console.log(fill('a', 'z', 5)); //=> [ 'a', 'f', 'k', 'p', 'u', 'z' ] +console.log(fill('a', 'z', 6)); //=> [ 'a', 'g', 'm', 's', 'y' ] +``` + +## Options + +### options.step + +**Type**: `number` (formatted as a string or number) + +**Default**: `undefined` + +**Description**: The increment to use for the range. Can be used with letters or numbers. + +**Example(s)** + +```js +// numbers +console.log(fill('1', '10', 2)); //=> [ '1', '3', '5', '7', '9' ] +console.log(fill('1', '10', 3)); //=> [ '1', '4', '7', '10' ] +console.log(fill('1', '10', 4)); //=> [ '1', '5', '9' ] + +// letters +console.log(fill('a', 'z', 5)); //=> [ 'a', 'f', 'k', 'p', 'u', 'z' ] +console.log(fill('a', 'z', 7)); //=> [ 'a', 'h', 'o', 'v' ] +console.log(fill('a', 'z', 9)); //=> [ 'a', 'j', 's' ] +``` + +### options.strictRanges + +**Type**: `boolean` + +**Default**: `false` + +**Description**: By default, `null` is returned when an invalid range is passed. Enable this option to throw a `RangeError` on invalid ranges. + +**Example(s)** + +The following are all invalid: + +```js +fill('1.1', '2'); // decimals not supported in ranges +fill('a', '2'); // incompatible range values +fill(1, 10, 'foo'); // invalid "step" argument +``` + +### options.stringify + +**Type**: `boolean` + +**Default**: `undefined` + +**Description**: Cast all returned values to strings. By default, integers are returned as numbers. + +**Example(s)** + +```js +console.log(fill(1, 5)); //=> [ 1, 2, 3, 4, 5 ] +console.log(fill(1, 5, { stringify: true })); //=> [ '1', '2', '3', '4', '5' ] +``` + +### options.toRegex + +**Type**: `boolean` + +**Default**: `undefined` + +**Description**: Create a regex-compatible source string, instead of expanding values to an array. + +**Example(s)** + +```js +// alphabetical range +console.log(fill('a', 'e', { toRegex: true })); //=> '[a-e]' +// alphabetical with step +console.log(fill('a', 'z', 3, { toRegex: true })); //=> 'a|d|g|j|m|p|s|v|y' +// numerical range +console.log(fill('1', '100', { toRegex: true })); //=> '[1-9]|[1-9][0-9]|100' +// numerical range with zero padding +console.log(fill('000001', '100000', { toRegex: true })); +//=> '0{5}[1-9]|0{4}[1-9][0-9]|0{3}[1-9][0-9]{2}|0{2}[1-9][0-9]{3}|0[1-9][0-9]{4}|100000' +``` + +### options.transform + +**Type**: `function` + +**Default**: `undefined` + +**Description**: Customize each value in the returned array (or [string](#optionstoRegex)). _(you can also pass this function as the last argument to `fill()`)_. + +**Example(s)** + +```js +// add zero padding +console.log(fill(1, 5, value => String(value).padStart(4, '0'))); +//=> ['0001', '0002', '0003', '0004', '0005'] +``` + +## About + +
+Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +
+ +
+Running Tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +
+ +
+Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +
+ +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 116 | [jonschlinkert](https://github.com/jonschlinkert) | +| 4 | [paulmillr](https://github.com/paulmillr) | +| 2 | [realityking](https://github.com/realityking) | +| 2 | [bluelovers](https://github.com/bluelovers) | +| 1 | [edorivai](https://github.com/edorivai) | +| 1 | [wtgtybhertgeghgtwtg](https://github.com/wtgtybhertgeghgtwtg) | + +### Author + +**Jon Schlinkert** + +* [GitHub Profile](https://github.com/jonschlinkert) +* [Twitter Profile](https://twitter.com/jonschlinkert) +* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) + +Please consider supporting me on Patreon, or [start your own Patreon page](https://patreon.com/invite/bxpbvm)! + + + + + +### License + +Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on April 08, 2019._ \ No newline at end of file diff --git a/node_modules/fill-range/index.js b/node_modules/fill-range/index.js new file mode 100644 index 0000000..ddb212e --- /dev/null +++ b/node_modules/fill-range/index.js @@ -0,0 +1,248 @@ +/*! + * fill-range + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Licensed under the MIT License. + */ + +'use strict'; + +const util = require('util'); +const toRegexRange = require('to-regex-range'); + +const isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); + +const transform = toNumber => { + return value => toNumber === true ? Number(value) : String(value); +}; + +const isValidValue = value => { + return typeof value === 'number' || (typeof value === 'string' && value !== ''); +}; + +const isNumber = num => Number.isInteger(+num); + +const zeros = input => { + let value = `${input}`; + let index = -1; + if (value[0] === '-') value = value.slice(1); + if (value === '0') return false; + while (value[++index] === '0'); + return index > 0; +}; + +const stringify = (start, end, options) => { + if (typeof start === 'string' || typeof end === 'string') { + return true; + } + return options.stringify === true; +}; + +const pad = (input, maxLength, toNumber) => { + if (maxLength > 0) { + let dash = input[0] === '-' ? '-' : ''; + if (dash) input = input.slice(1); + input = (dash + input.padStart(dash ? maxLength - 1 : maxLength, '0')); + } + if (toNumber === false) { + return String(input); + } + return input; +}; + +const toMaxLen = (input, maxLength) => { + let negative = input[0] === '-' ? '-' : ''; + if (negative) { + input = input.slice(1); + maxLength--; + } + while (input.length < maxLength) input = '0' + input; + return negative ? ('-' + input) : input; +}; + +const toSequence = (parts, options, maxLen) => { + parts.negatives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); + parts.positives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); + + let prefix = options.capture ? '' : '?:'; + let positives = ''; + let negatives = ''; + let result; + + if (parts.positives.length) { + positives = parts.positives.map(v => toMaxLen(String(v), maxLen)).join('|'); + } + + if (parts.negatives.length) { + negatives = `-(${prefix}${parts.negatives.map(v => toMaxLen(String(v), maxLen)).join('|')})`; + } + + if (positives && negatives) { + result = `${positives}|${negatives}`; + } else { + result = positives || negatives; + } + + if (options.wrap) { + return `(${prefix}${result})`; + } + + return result; +}; + +const toRange = (a, b, isNumbers, options) => { + if (isNumbers) { + return toRegexRange(a, b, { wrap: false, ...options }); + } + + let start = String.fromCharCode(a); + if (a === b) return start; + + let stop = String.fromCharCode(b); + return `[${start}-${stop}]`; +}; + +const toRegex = (start, end, options) => { + if (Array.isArray(start)) { + let wrap = options.wrap === true; + let prefix = options.capture ? '' : '?:'; + return wrap ? `(${prefix}${start.join('|')})` : start.join('|'); + } + return toRegexRange(start, end, options); +}; + +const rangeError = (...args) => { + return new RangeError('Invalid range arguments: ' + util.inspect(...args)); +}; + +const invalidRange = (start, end, options) => { + if (options.strictRanges === true) throw rangeError([start, end]); + return []; +}; + +const invalidStep = (step, options) => { + if (options.strictRanges === true) { + throw new TypeError(`Expected step "${step}" to be a number`); + } + return []; +}; + +const fillNumbers = (start, end, step = 1, options = {}) => { + let a = Number(start); + let b = Number(end); + + if (!Number.isInteger(a) || !Number.isInteger(b)) { + if (options.strictRanges === true) throw rangeError([start, end]); + return []; + } + + // fix negative zero + if (a === 0) a = 0; + if (b === 0) b = 0; + + let descending = a > b; + let startString = String(start); + let endString = String(end); + let stepString = String(step); + step = Math.max(Math.abs(step), 1); + + let padded = zeros(startString) || zeros(endString) || zeros(stepString); + let maxLen = padded ? Math.max(startString.length, endString.length, stepString.length) : 0; + let toNumber = padded === false && stringify(start, end, options) === false; + let format = options.transform || transform(toNumber); + + if (options.toRegex && step === 1) { + return toRange(toMaxLen(start, maxLen), toMaxLen(end, maxLen), true, options); + } + + let parts = { negatives: [], positives: [] }; + let push = num => parts[num < 0 ? 'negatives' : 'positives'].push(Math.abs(num)); + let range = []; + let index = 0; + + while (descending ? a >= b : a <= b) { + if (options.toRegex === true && step > 1) { + push(a); + } else { + range.push(pad(format(a, index), maxLen, toNumber)); + } + a = descending ? a - step : a + step; + index++; + } + + if (options.toRegex === true) { + return step > 1 + ? toSequence(parts, options, maxLen) + : toRegex(range, null, { wrap: false, ...options }); + } + + return range; +}; + +const fillLetters = (start, end, step = 1, options = {}) => { + if ((!isNumber(start) && start.length > 1) || (!isNumber(end) && end.length > 1)) { + return invalidRange(start, end, options); + } + + let format = options.transform || (val => String.fromCharCode(val)); + let a = `${start}`.charCodeAt(0); + let b = `${end}`.charCodeAt(0); + + let descending = a > b; + let min = Math.min(a, b); + let max = Math.max(a, b); + + if (options.toRegex && step === 1) { + return toRange(min, max, false, options); + } + + let range = []; + let index = 0; + + while (descending ? a >= b : a <= b) { + range.push(format(a, index)); + a = descending ? a - step : a + step; + index++; + } + + if (options.toRegex === true) { + return toRegex(range, null, { wrap: false, options }); + } + + return range; +}; + +const fill = (start, end, step, options = {}) => { + if (end == null && isValidValue(start)) { + return [start]; + } + + if (!isValidValue(start) || !isValidValue(end)) { + return invalidRange(start, end, options); + } + + if (typeof step === 'function') { + return fill(start, end, 1, { transform: step }); + } + + if (isObject(step)) { + return fill(start, end, 0, step); + } + + let opts = { ...options }; + if (opts.capture === true) opts.wrap = true; + step = step || opts.step || 1; + + if (!isNumber(step)) { + if (step != null && !isObject(step)) return invalidStep(step, opts); + return fill(start, end, 1, step); + } + + if (isNumber(start) && isNumber(end)) { + return fillNumbers(start, end, step, opts); + } + + return fillLetters(start, end, Math.max(Math.abs(step), 1), opts); +}; + +module.exports = fill; diff --git a/node_modules/fill-range/package.json b/node_modules/fill-range/package.json new file mode 100644 index 0000000..582357f --- /dev/null +++ b/node_modules/fill-range/package.json @@ -0,0 +1,74 @@ +{ + "name": "fill-range", + "description": "Fill in a range of numbers or letters, optionally passing an increment or `step` to use, or create a regex-compatible range with `options.toRegex`", + "version": "7.1.1", + "homepage": "https://github.com/jonschlinkert/fill-range", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "contributors": [ + "Edo Rivai (edo.rivai.nl)", + "Jon Schlinkert (http://twitter.com/jonschlinkert)", + "Paul Miller (paulmillr.com)", + "Rouven Weßling (www.rouvenwessling.de)", + "(https://github.com/wtgtybhertgeghgtwtg)" + ], + "repository": "jonschlinkert/fill-range", + "bugs": { + "url": "https://github.com/jonschlinkert/fill-range/issues" + }, + "license": "MIT", + "files": [ + "index.js" + ], + "main": "index.js", + "engines": { + "node": ">=8" + }, + "scripts": { + "lint": "eslint --cache --cache-location node_modules/.cache/.eslintcache --report-unused-disable-directives --ignore-path .gitignore .", + "mocha": "mocha --reporter dot", + "test": "npm run lint && npm run mocha", + "test:ci": "npm run test:cover", + "test:cover": "nyc npm run mocha" + }, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "devDependencies": { + "gulp-format-md": "^2.0.0", + "mocha": "^6.1.1", + "nyc": "^15.1.0" + }, + "keywords": [ + "alpha", + "alphabetical", + "array", + "bash", + "brace", + "expand", + "expansion", + "fill", + "glob", + "match", + "matches", + "matching", + "number", + "numerical", + "range", + "ranges", + "regex", + "sh" + ], + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + } + } +} diff --git a/node_modules/fs-extra/LICENSE b/node_modules/fs-extra/LICENSE new file mode 100644 index 0000000..050c1aa --- /dev/null +++ b/node_modules/fs-extra/LICENSE @@ -0,0 +1,15 @@ +(The MIT License) + +Copyright (c) 2011-2024 JP Richardson + +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. diff --git a/node_modules/fs-extra/README.md b/node_modules/fs-extra/README.md new file mode 100644 index 0000000..9a104e6 --- /dev/null +++ b/node_modules/fs-extra/README.md @@ -0,0 +1,294 @@ +Node.js: fs-extra +================= + +`fs-extra` adds file system methods that aren't included in the native `fs` module and adds promise support to the `fs` methods. It also uses [`graceful-fs`](https://github.com/isaacs/node-graceful-fs) to prevent `EMFILE` errors. It should be a drop in replacement for `fs`. + +[![npm Package](https://img.shields.io/npm/v/fs-extra.svg)](https://www.npmjs.org/package/fs-extra) +[![License](https://img.shields.io/npm/l/fs-extra.svg)](https://github.com/jprichardson/node-fs-extra/blob/master/LICENSE) +[![build status](https://img.shields.io/github/actions/workflow/status/jprichardson/node-fs-extra/ci.yml?branch=master)](https://github.com/jprichardson/node-fs-extra/actions/workflows/ci.yml?query=branch%3Amaster) +[![downloads per month](http://img.shields.io/npm/dm/fs-extra.svg)](https://www.npmjs.org/package/fs-extra) +[![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com) + +Why? +---- + +I got tired of including `mkdirp`, `rimraf`, and `ncp` in most of my projects. + + + + +Installation +------------ + + npm install fs-extra + + + +Usage +----- + +### CommonJS + +`fs-extra` is a drop in replacement for native `fs`. All methods in `fs` are attached to `fs-extra`. All `fs` methods return promises if the callback isn't passed. + +You don't ever need to include the original `fs` module again: + +```js +const fs = require('fs') // this is no longer necessary +``` + +you can now do this: + +```js +const fs = require('fs-extra') +``` + +or if you prefer to make it clear that you're using `fs-extra` and not `fs`, you may want +to name your `fs` variable `fse` like so: + +```js +const fse = require('fs-extra') +``` + +you can also keep both, but it's redundant: + +```js +const fs = require('fs') +const fse = require('fs-extra') +``` + +**NOTE:** The deprecated constants `fs.F_OK`, `fs.R_OK`, `fs.W_OK`, & `fs.X_OK` are not exported on Node.js v24.0.0+; please use their `fs.constants` equivalents. + +### ESM + +There is also an `fs-extra/esm` import, that supports both default and named exports. However, note that `fs` methods are not included in `fs-extra/esm`; you still need to import `fs` and/or `fs/promises` seperately: + +```js +import { readFileSync } from 'fs' +import { readFile } from 'fs/promises' +import { outputFile, outputFileSync } from 'fs-extra/esm' +``` + +Default exports are supported: + +```js +import fs from 'fs' +import fse from 'fs-extra/esm' +// fse.readFileSync is not a function; must use fs.readFileSync +``` + +but you probably want to just use regular `fs-extra` instead of `fs-extra/esm` for default exports: + +```js +import fs from 'fs-extra' +// both fs and fs-extra methods are defined +``` + +Sync vs Async vs Async/Await +------------- +Most methods are async by default. All async methods will return a promise if the callback isn't passed. + +Sync methods on the other hand will throw if an error occurs. + +Also Async/Await will throw an error if one occurs. + +Example: + +```js +const fs = require('fs-extra') + +// Async with promises: +fs.copy('/tmp/myfile', '/tmp/mynewfile') + .then(() => console.log('success!')) + .catch(err => console.error(err)) + +// Async with callbacks: +fs.copy('/tmp/myfile', '/tmp/mynewfile', err => { + if (err) return console.error(err) + console.log('success!') +}) + +// Sync: +try { + fs.copySync('/tmp/myfile', '/tmp/mynewfile') + console.log('success!') +} catch (err) { + console.error(err) +} + +// Async/Await: +async function copyFiles () { + try { + await fs.copy('/tmp/myfile', '/tmp/mynewfile') + console.log('success!') + } catch (err) { + console.error(err) + } +} + +copyFiles() +``` + + +Methods +------- + +### Async + +- [copy](docs/copy.md) +- [emptyDir](docs/emptyDir.md) +- [ensureFile](docs/ensureFile.md) +- [ensureDir](docs/ensureDir.md) +- [ensureLink](docs/ensureLink.md) +- [ensureSymlink](docs/ensureSymlink.md) +- [mkdirp](docs/ensureDir.md) +- [mkdirs](docs/ensureDir.md) +- [move](docs/move.md) +- [outputFile](docs/outputFile.md) +- [outputJson](docs/outputJson.md) +- [pathExists](docs/pathExists.md) +- [readJson](docs/readJson.md) +- [remove](docs/remove.md) +- [writeJson](docs/writeJson.md) + +### Sync + +- [copySync](docs/copy-sync.md) +- [emptyDirSync](docs/emptyDir-sync.md) +- [ensureFileSync](docs/ensureFile-sync.md) +- [ensureDirSync](docs/ensureDir-sync.md) +- [ensureLinkSync](docs/ensureLink-sync.md) +- [ensureSymlinkSync](docs/ensureSymlink-sync.md) +- [mkdirpSync](docs/ensureDir-sync.md) +- [mkdirsSync](docs/ensureDir-sync.md) +- [moveSync](docs/move-sync.md) +- [outputFileSync](docs/outputFile-sync.md) +- [outputJsonSync](docs/outputJson-sync.md) +- [pathExistsSync](docs/pathExists-sync.md) +- [readJsonSync](docs/readJson-sync.md) +- [removeSync](docs/remove-sync.md) +- [writeJsonSync](docs/writeJson-sync.md) + + +**NOTE:** You can still use the native Node.js methods. They are promisified and copied over to `fs-extra`. See [notes on `fs.read()`, `fs.write()`, & `fs.writev()`](docs/fs-read-write-writev.md) + +### What happened to `walk()` and `walkSync()`? + +They were removed from `fs-extra` in v2.0.0. If you need the functionality, `walk` and `walkSync` are available as separate packages, [`klaw`](https://github.com/jprichardson/node-klaw) and [`klaw-sync`](https://github.com/manidlou/node-klaw-sync). + + +Third Party +----------- + +### CLI + +[fse-cli](https://www.npmjs.com/package/@atao60/fse-cli) allows you to run `fs-extra` from a console or from [npm](https://www.npmjs.com) scripts. + +### TypeScript + +If you like TypeScript, you can use `fs-extra` with it: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/fs-extra + + +### File / Directory Watching + +If you want to watch for changes to files or directories, then you should use [chokidar](https://github.com/paulmillr/chokidar). + +### Obtain Filesystem (Devices, Partitions) Information + +[fs-filesystem](https://github.com/arthurintelligence/node-fs-filesystem) allows you to read the state of the filesystem of the host on which it is run. It returns information about both the devices and the partitions (volumes) of the system. + +### Misc. + +- [fs-extra-debug](https://github.com/jdxcode/fs-extra-debug) - Send your fs-extra calls to [debug](https://npmjs.org/package/debug). +- [mfs](https://github.com/cadorn/mfs) - Monitor your fs-extra calls. + + + +Hacking on fs-extra +------------------- + +Wanna hack on `fs-extra`? Great! Your help is needed! [fs-extra is one of the most depended upon Node.js packages](http://nodei.co/npm/fs-extra.png?downloads=true&downloadRank=true&stars=true). This project +uses [JavaScript Standard Style](https://github.com/feross/standard) - if the name or style choices bother you, +you're gonna have to get over it :) If `standard` is good enough for `npm`, it's good enough for `fs-extra`. + +[![js-standard-style](https://cdn.rawgit.com/feross/standard/master/badge.svg)](https://github.com/feross/standard) + +What's needed? +- First, take a look at existing issues. Those are probably going to be where the priority lies. +- More tests for edge cases. Specifically on different platforms. There can never be enough tests. +- Improve test coverage. + +Note: If you make any big changes, **you should definitely file an issue for discussion first.** + +### Running the Test Suite + +fs-extra contains hundreds of tests. + +- `npm run lint`: runs the linter ([standard](http://standardjs.com/)) +- `npm run unit`: runs the unit tests +- `npm run unit-esm`: runs tests for `fs-extra/esm` exports +- `npm test`: runs the linter and all tests + +When running unit tests, set the environment variable `CROSS_DEVICE_PATH` to the absolute path of an empty directory on another device (like a thumb drive) to enable cross-device move tests. + + +### Windows + +If you run the tests on the Windows and receive a lot of symbolic link `EPERM` permission errors, it's +because on Windows you need elevated privilege to create symbolic links. You can add this to your Windows's +account by following the instructions here: http://superuser.com/questions/104845/permission-to-make-symbolic-links-in-windows-7 +However, I didn't have much luck doing this. + +Since I develop on Mac OS X, I use VMWare Fusion for Windows testing. I create a shared folder that I map to a drive on Windows. +I open the `Node.js command prompt` and run as `Administrator`. I then map the network drive running the following command: + + net use z: "\\vmware-host\Shared Folders" + +I can then navigate to my `fs-extra` directory and run the tests. + + +Naming +------ + +I put a lot of thought into the naming of these functions. Inspired by @coolaj86's request. So he deserves much of the credit for raising the issue. See discussion(s) here: + +* https://github.com/jprichardson/node-fs-extra/issues/2 +* https://github.com/flatiron/utile/issues/11 +* https://github.com/ryanmcgrath/wrench-js/issues/29 +* https://github.com/substack/node-mkdirp/issues/17 + +First, I believe that in as many cases as possible, the [Node.js naming schemes](http://nodejs.org/api/fs.html) should be chosen. However, there are problems with the Node.js own naming schemes. + +For example, `fs.readFile()` and `fs.readdir()`: the **F** is capitalized in *File* and the **d** is not capitalized in *dir*. Perhaps a bit pedantic, but they should still be consistent. Also, Node.js has chosen a lot of POSIX naming schemes, which I believe is great. See: `fs.mkdir()`, `fs.rmdir()`, `fs.chown()`, etc. + +We have a dilemma though. How do you consistently name methods that perform the following POSIX commands: `cp`, `cp -r`, `mkdir -p`, and `rm -rf`? + +My perspective: when in doubt, err on the side of simplicity. A directory is just a hierarchical grouping of directories and files. Consider that for a moment. So when you want to copy it or remove it, in most cases you'll want to copy or remove all of its contents. When you want to create a directory, if the directory that it's suppose to be contained in does not exist, then in most cases you'll want to create that too. + +So, if you want to remove a file or a directory regardless of whether it has contents, just call `fs.remove(path)`. If you want to copy a file or a directory whether it has contents, just call `fs.copy(source, destination)`. If you want to create a directory regardless of whether its parent directories exist, just call `fs.mkdirs(path)` or `fs.mkdirp(path)`. + + +Credit +------ + +`fs-extra` wouldn't be possible without using the modules from the following authors: + +- [Isaac Shlueter](https://github.com/isaacs) +- [Charlie McConnel](https://github.com/avianflu) +- [James Halliday](https://github.com/substack) +- [Andrew Kelley](https://github.com/andrewrk) + + + + +License +------- + +Licensed under MIT + +Copyright (c) 2011-2024 [JP Richardson](https://github.com/jprichardson) + +[1]: http://nodejs.org/docs/latest/api/fs.html + + +[jsonfile]: https://github.com/jprichardson/node-jsonfile diff --git a/node_modules/fs-extra/lib/copy/copy-sync.js b/node_modules/fs-extra/lib/copy/copy-sync.js new file mode 100644 index 0000000..40b2979 --- /dev/null +++ b/node_modules/fs-extra/lib/copy/copy-sync.js @@ -0,0 +1,171 @@ +'use strict' + +const fs = require('graceful-fs') +const path = require('path') +const mkdirsSync = require('../mkdirs').mkdirsSync +const utimesMillisSync = require('../util/utimes').utimesMillisSync +const stat = require('../util/stat') + +function copySync (src, dest, opts) { + if (typeof opts === 'function') { + opts = { filter: opts } + } + + opts = opts || {} + opts.clobber = 'clobber' in opts ? !!opts.clobber : true // default to true for now + opts.overwrite = 'overwrite' in opts ? !!opts.overwrite : opts.clobber // overwrite falls back to clobber + + // Warn about using preserveTimestamps on 32-bit node + if (opts.preserveTimestamps && process.arch === 'ia32') { + process.emitWarning( + 'Using the preserveTimestamps option in 32-bit node is not recommended;\n\n' + + '\tsee https://github.com/jprichardson/node-fs-extra/issues/269', + 'Warning', 'fs-extra-WARN0002' + ) + } + + const { srcStat, destStat } = stat.checkPathsSync(src, dest, 'copy', opts) + stat.checkParentPathsSync(src, srcStat, dest, 'copy') + if (opts.filter && !opts.filter(src, dest)) return + const destParent = path.dirname(dest) + if (!fs.existsSync(destParent)) mkdirsSync(destParent) + return getStats(destStat, src, dest, opts) +} + +function getStats (destStat, src, dest, opts) { + const statSync = opts.dereference ? fs.statSync : fs.lstatSync + const srcStat = statSync(src) + + if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts) + else if (srcStat.isFile() || + srcStat.isCharacterDevice() || + srcStat.isBlockDevice()) return onFile(srcStat, destStat, src, dest, opts) + else if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts) + else if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`) + else if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`) + throw new Error(`Unknown file: ${src}`) +} + +function onFile (srcStat, destStat, src, dest, opts) { + if (!destStat) return copyFile(srcStat, src, dest, opts) + return mayCopyFile(srcStat, src, dest, opts) +} + +function mayCopyFile (srcStat, src, dest, opts) { + if (opts.overwrite) { + fs.unlinkSync(dest) + return copyFile(srcStat, src, dest, opts) + } else if (opts.errorOnExist) { + throw new Error(`'${dest}' already exists`) + } +} + +function copyFile (srcStat, src, dest, opts) { + fs.copyFileSync(src, dest) + if (opts.preserveTimestamps) handleTimestamps(srcStat.mode, src, dest) + return setDestMode(dest, srcStat.mode) +} + +function handleTimestamps (srcMode, src, dest) { + // Make sure the file is writable before setting the timestamp + // otherwise open fails with EPERM when invoked with 'r+' + // (through utimes call) + if (fileIsNotWritable(srcMode)) makeFileWritable(dest, srcMode) + return setDestTimestamps(src, dest) +} + +function fileIsNotWritable (srcMode) { + return (srcMode & 0o200) === 0 +} + +function makeFileWritable (dest, srcMode) { + return setDestMode(dest, srcMode | 0o200) +} + +function setDestMode (dest, srcMode) { + return fs.chmodSync(dest, srcMode) +} + +function setDestTimestamps (src, dest) { + // The initial srcStat.atime cannot be trusted + // because it is modified by the read(2) system call + // (See https://nodejs.org/api/fs.html#fs_stat_time_values) + const updatedSrcStat = fs.statSync(src) + return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime) +} + +function onDir (srcStat, destStat, src, dest, opts) { + if (!destStat) return mkDirAndCopy(srcStat.mode, src, dest, opts) + return copyDir(src, dest, opts) +} + +function mkDirAndCopy (srcMode, src, dest, opts) { + fs.mkdirSync(dest) + copyDir(src, dest, opts) + return setDestMode(dest, srcMode) +} + +function copyDir (src, dest, opts) { + const dir = fs.opendirSync(src) + + try { + let dirent + + while ((dirent = dir.readSync()) !== null) { + copyDirItem(dirent.name, src, dest, opts) + } + } finally { + dir.closeSync() + } +} + +function copyDirItem (item, src, dest, opts) { + const srcItem = path.join(src, item) + const destItem = path.join(dest, item) + if (opts.filter && !opts.filter(srcItem, destItem)) return + const { destStat } = stat.checkPathsSync(srcItem, destItem, 'copy', opts) + return getStats(destStat, srcItem, destItem, opts) +} + +function onLink (destStat, src, dest, opts) { + let resolvedSrc = fs.readlinkSync(src) + if (opts.dereference) { + resolvedSrc = path.resolve(process.cwd(), resolvedSrc) + } + + if (!destStat) { + return fs.symlinkSync(resolvedSrc, dest) + } else { + let resolvedDest + try { + resolvedDest = fs.readlinkSync(dest) + } catch (err) { + // dest exists and is a regular file or directory, + // Windows may throw UNKNOWN error. If dest already exists, + // fs throws error anyway, so no need to guard against it here. + if (err.code === 'EINVAL' || err.code === 'UNKNOWN') return fs.symlinkSync(resolvedSrc, dest) + throw err + } + if (opts.dereference) { + resolvedDest = path.resolve(process.cwd(), resolvedDest) + } + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { + throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`) + } + + // prevent copy if src is a subdir of dest since unlinking + // dest in this case would result in removing src contents + // and therefore a broken symlink would be created. + if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) { + throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`) + } + return copyLink(resolvedSrc, dest) + } +} + +function copyLink (resolvedSrc, dest) { + fs.unlinkSync(dest) + return fs.symlinkSync(resolvedSrc, dest) +} + +module.exports = copySync diff --git a/node_modules/fs-extra/lib/copy/copy.js b/node_modules/fs-extra/lib/copy/copy.js new file mode 100644 index 0000000..47fd983 --- /dev/null +++ b/node_modules/fs-extra/lib/copy/copy.js @@ -0,0 +1,182 @@ +'use strict' + +const fs = require('../fs') +const path = require('path') +const { mkdirs } = require('../mkdirs') +const { pathExists } = require('../path-exists') +const { utimesMillis } = require('../util/utimes') +const stat = require('../util/stat') + +async function copy (src, dest, opts = {}) { + if (typeof opts === 'function') { + opts = { filter: opts } + } + + opts.clobber = 'clobber' in opts ? !!opts.clobber : true // default to true for now + opts.overwrite = 'overwrite' in opts ? !!opts.overwrite : opts.clobber // overwrite falls back to clobber + + // Warn about using preserveTimestamps on 32-bit node + if (opts.preserveTimestamps && process.arch === 'ia32') { + process.emitWarning( + 'Using the preserveTimestamps option in 32-bit node is not recommended;\n\n' + + '\tsee https://github.com/jprichardson/node-fs-extra/issues/269', + 'Warning', 'fs-extra-WARN0001' + ) + } + + const { srcStat, destStat } = await stat.checkPaths(src, dest, 'copy', opts) + + await stat.checkParentPaths(src, srcStat, dest, 'copy') + + const include = await runFilter(src, dest, opts) + + if (!include) return + + // check if the parent of dest exists, and create it if it doesn't exist + const destParent = path.dirname(dest) + const dirExists = await pathExists(destParent) + if (!dirExists) { + await mkdirs(destParent) + } + + await getStatsAndPerformCopy(destStat, src, dest, opts) +} + +async function runFilter (src, dest, opts) { + if (!opts.filter) return true + return opts.filter(src, dest) +} + +async function getStatsAndPerformCopy (destStat, src, dest, opts) { + const statFn = opts.dereference ? fs.stat : fs.lstat + const srcStat = await statFn(src) + + if (srcStat.isDirectory()) return onDir(srcStat, destStat, src, dest, opts) + + if ( + srcStat.isFile() || + srcStat.isCharacterDevice() || + srcStat.isBlockDevice() + ) return onFile(srcStat, destStat, src, dest, opts) + + if (srcStat.isSymbolicLink()) return onLink(destStat, src, dest, opts) + if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src}`) + if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src}`) + throw new Error(`Unknown file: ${src}`) +} + +async function onFile (srcStat, destStat, src, dest, opts) { + if (!destStat) return copyFile(srcStat, src, dest, opts) + + if (opts.overwrite) { + await fs.unlink(dest) + return copyFile(srcStat, src, dest, opts) + } + if (opts.errorOnExist) { + throw new Error(`'${dest}' already exists`) + } +} + +async function copyFile (srcStat, src, dest, opts) { + await fs.copyFile(src, dest) + if (opts.preserveTimestamps) { + // Make sure the file is writable before setting the timestamp + // otherwise open fails with EPERM when invoked with 'r+' + // (through utimes call) + if (fileIsNotWritable(srcStat.mode)) { + await makeFileWritable(dest, srcStat.mode) + } + + // Set timestamps and mode correspondingly + + // Note that The initial srcStat.atime cannot be trusted + // because it is modified by the read(2) system call + // (See https://nodejs.org/api/fs.html#fs_stat_time_values) + const updatedSrcStat = await fs.stat(src) + await utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime) + } + + return fs.chmod(dest, srcStat.mode) +} + +function fileIsNotWritable (srcMode) { + return (srcMode & 0o200) === 0 +} + +function makeFileWritable (dest, srcMode) { + return fs.chmod(dest, srcMode | 0o200) +} + +async function onDir (srcStat, destStat, src, dest, opts) { + // the dest directory might not exist, create it + if (!destStat) { + await fs.mkdir(dest) + } + + const promises = [] + + // loop through the files in the current directory to copy everything + for await (const item of await fs.opendir(src)) { + const srcItem = path.join(src, item.name) + const destItem = path.join(dest, item.name) + + promises.push( + runFilter(srcItem, destItem, opts).then(include => { + if (include) { + // only copy the item if it matches the filter function + return stat.checkPaths(srcItem, destItem, 'copy', opts).then(({ destStat }) => { + // If the item is a copyable file, `getStatsAndPerformCopy` will copy it + // If the item is a directory, `getStatsAndPerformCopy` will call `onDir` recursively + return getStatsAndPerformCopy(destStat, srcItem, destItem, opts) + }) + } + }) + ) + } + + await Promise.all(promises) + + if (!destStat) { + await fs.chmod(dest, srcStat.mode) + } +} + +async function onLink (destStat, src, dest, opts) { + let resolvedSrc = await fs.readlink(src) + if (opts.dereference) { + resolvedSrc = path.resolve(process.cwd(), resolvedSrc) + } + if (!destStat) { + return fs.symlink(resolvedSrc, dest) + } + + let resolvedDest = null + try { + resolvedDest = await fs.readlink(dest) + } catch (e) { + // dest exists and is a regular file or directory, + // Windows may throw UNKNOWN error. If dest already exists, + // fs throws error anyway, so no need to guard against it here. + if (e.code === 'EINVAL' || e.code === 'UNKNOWN') return fs.symlink(resolvedSrc, dest) + throw e + } + if (opts.dereference) { + resolvedDest = path.resolve(process.cwd(), resolvedDest) + } + if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) { + throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`) + } + + // do not copy if src is a subdir of dest since unlinking + // dest in this case would result in removing src contents + // and therefore a broken symlink would be created. + if (stat.isSrcSubdir(resolvedDest, resolvedSrc)) { + throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`) + } + + // copy the link + await fs.unlink(dest) + return fs.symlink(resolvedSrc, dest) +} + +module.exports = copy diff --git a/node_modules/fs-extra/lib/copy/index.js b/node_modules/fs-extra/lib/copy/index.js new file mode 100644 index 0000000..2e31d27 --- /dev/null +++ b/node_modules/fs-extra/lib/copy/index.js @@ -0,0 +1,7 @@ +'use strict' + +const u = require('universalify').fromPromise +module.exports = { + copy: u(require('./copy')), + copySync: require('./copy-sync') +} diff --git a/node_modules/fs-extra/lib/empty/index.js b/node_modules/fs-extra/lib/empty/index.js new file mode 100644 index 0000000..b4a2e82 --- /dev/null +++ b/node_modules/fs-extra/lib/empty/index.js @@ -0,0 +1,39 @@ +'use strict' + +const u = require('universalify').fromPromise +const fs = require('../fs') +const path = require('path') +const mkdir = require('../mkdirs') +const remove = require('../remove') + +const emptyDir = u(async function emptyDir (dir) { + let items + try { + items = await fs.readdir(dir) + } catch { + return mkdir.mkdirs(dir) + } + + return Promise.all(items.map(item => remove.remove(path.join(dir, item)))) +}) + +function emptyDirSync (dir) { + let items + try { + items = fs.readdirSync(dir) + } catch { + return mkdir.mkdirsSync(dir) + } + + items.forEach(item => { + item = path.join(dir, item) + remove.removeSync(item) + }) +} + +module.exports = { + emptyDirSync, + emptydirSync: emptyDirSync, + emptyDir, + emptydir: emptyDir +} diff --git a/node_modules/fs-extra/lib/ensure/file.js b/node_modules/fs-extra/lib/ensure/file.js new file mode 100644 index 0000000..a55c2d9 --- /dev/null +++ b/node_modules/fs-extra/lib/ensure/file.js @@ -0,0 +1,66 @@ +'use strict' + +const u = require('universalify').fromPromise +const path = require('path') +const fs = require('../fs') +const mkdir = require('../mkdirs') + +async function createFile (file) { + let stats + try { + stats = await fs.stat(file) + } catch { } + if (stats && stats.isFile()) return + + const dir = path.dirname(file) + + let dirStats = null + try { + dirStats = await fs.stat(dir) + } catch (err) { + // if the directory doesn't exist, make it + if (err.code === 'ENOENT') { + await mkdir.mkdirs(dir) + await fs.writeFile(file, '') + return + } else { + throw err + } + } + + if (dirStats.isDirectory()) { + await fs.writeFile(file, '') + } else { + // parent is not a directory + // This is just to cause an internal ENOTDIR error to be thrown + await fs.readdir(dir) + } +} + +function createFileSync (file) { + let stats + try { + stats = fs.statSync(file) + } catch { } + if (stats && stats.isFile()) return + + const dir = path.dirname(file) + try { + if (!fs.statSync(dir).isDirectory()) { + // parent is not a directory + // This is just to cause an internal ENOTDIR error to be thrown + fs.readdirSync(dir) + } + } catch (err) { + // If the stat call above failed because the directory doesn't exist, create it + if (err && err.code === 'ENOENT') mkdir.mkdirsSync(dir) + else throw err + } + + fs.writeFileSync(file, '') +} + +module.exports = { + createFile: u(createFile), + createFileSync +} diff --git a/node_modules/fs-extra/lib/ensure/index.js b/node_modules/fs-extra/lib/ensure/index.js new file mode 100644 index 0000000..ecbcdd0 --- /dev/null +++ b/node_modules/fs-extra/lib/ensure/index.js @@ -0,0 +1,23 @@ +'use strict' + +const { createFile, createFileSync } = require('./file') +const { createLink, createLinkSync } = require('./link') +const { createSymlink, createSymlinkSync } = require('./symlink') + +module.exports = { + // file + createFile, + createFileSync, + ensureFile: createFile, + ensureFileSync: createFileSync, + // link + createLink, + createLinkSync, + ensureLink: createLink, + ensureLinkSync: createLinkSync, + // symlink + createSymlink, + createSymlinkSync, + ensureSymlink: createSymlink, + ensureSymlinkSync: createSymlinkSync +} diff --git a/node_modules/fs-extra/lib/ensure/link.js b/node_modules/fs-extra/lib/ensure/link.js new file mode 100644 index 0000000..c3d1c69 --- /dev/null +++ b/node_modules/fs-extra/lib/ensure/link.js @@ -0,0 +1,64 @@ +'use strict' + +const u = require('universalify').fromPromise +const path = require('path') +const fs = require('../fs') +const mkdir = require('../mkdirs') +const { pathExists } = require('../path-exists') +const { areIdentical } = require('../util/stat') + +async function createLink (srcpath, dstpath) { + let dstStat + try { + dstStat = await fs.lstat(dstpath) + } catch { + // ignore error + } + + let srcStat + try { + srcStat = await fs.lstat(srcpath) + } catch (err) { + err.message = err.message.replace('lstat', 'ensureLink') + throw err + } + + if (dstStat && areIdentical(srcStat, dstStat)) return + + const dir = path.dirname(dstpath) + + const dirExists = await pathExists(dir) + + if (!dirExists) { + await mkdir.mkdirs(dir) + } + + await fs.link(srcpath, dstpath) +} + +function createLinkSync (srcpath, dstpath) { + let dstStat + try { + dstStat = fs.lstatSync(dstpath) + } catch {} + + try { + const srcStat = fs.lstatSync(srcpath) + if (dstStat && areIdentical(srcStat, dstStat)) return + } catch (err) { + err.message = err.message.replace('lstat', 'ensureLink') + throw err + } + + const dir = path.dirname(dstpath) + const dirExists = fs.existsSync(dir) + if (dirExists) return fs.linkSync(srcpath, dstpath) + mkdir.mkdirsSync(dir) + + return fs.linkSync(srcpath, dstpath) +} + +module.exports = { + createLink: u(createLink), + createLinkSync +} diff --git a/node_modules/fs-extra/lib/ensure/symlink-paths.js b/node_modules/fs-extra/lib/ensure/symlink-paths.js new file mode 100644 index 0000000..85dda47 --- /dev/null +++ b/node_modules/fs-extra/lib/ensure/symlink-paths.js @@ -0,0 +1,101 @@ +'use strict' + +const path = require('path') +const fs = require('../fs') +const { pathExists } = require('../path-exists') + +const u = require('universalify').fromPromise + +/** + * Function that returns two types of paths, one relative to symlink, and one + * relative to the current working directory. Checks if path is absolute or + * relative. If the path is relative, this function checks if the path is + * relative to symlink or relative to current working directory. This is an + * initiative to find a smarter `srcpath` to supply when building symlinks. + * This allows you to determine which path to use out of one of three possible + * types of source paths. The first is an absolute path. This is detected by + * `path.isAbsolute()`. When an absolute path is provided, it is checked to + * see if it exists. If it does it's used, if not an error is returned + * (callback)/ thrown (sync). The other two options for `srcpath` are a + * relative url. By default Node's `fs.symlink` works by creating a symlink + * using `dstpath` and expects the `srcpath` to be relative to the newly + * created symlink. If you provide a `srcpath` that does not exist on the file + * system it results in a broken symlink. To minimize this, the function + * checks to see if the 'relative to symlink' source file exists, and if it + * does it will use it. If it does not, it checks if there's a file that + * exists that is relative to the current working directory, if does its used. + * This preserves the expectations of the original fs.symlink spec and adds + * the ability to pass in `relative to current working direcotry` paths. + */ + +async function symlinkPaths (srcpath, dstpath) { + if (path.isAbsolute(srcpath)) { + try { + await fs.lstat(srcpath) + } catch (err) { + err.message = err.message.replace('lstat', 'ensureSymlink') + throw err + } + + return { + toCwd: srcpath, + toDst: srcpath + } + } + + const dstdir = path.dirname(dstpath) + const relativeToDst = path.join(dstdir, srcpath) + + const exists = await pathExists(relativeToDst) + if (exists) { + return { + toCwd: relativeToDst, + toDst: srcpath + } + } + + try { + await fs.lstat(srcpath) + } catch (err) { + err.message = err.message.replace('lstat', 'ensureSymlink') + throw err + } + + return { + toCwd: srcpath, + toDst: path.relative(dstdir, srcpath) + } +} + +function symlinkPathsSync (srcpath, dstpath) { + if (path.isAbsolute(srcpath)) { + const exists = fs.existsSync(srcpath) + if (!exists) throw new Error('absolute srcpath does not exist') + return { + toCwd: srcpath, + toDst: srcpath + } + } + + const dstdir = path.dirname(dstpath) + const relativeToDst = path.join(dstdir, srcpath) + const exists = fs.existsSync(relativeToDst) + if (exists) { + return { + toCwd: relativeToDst, + toDst: srcpath + } + } + + const srcExists = fs.existsSync(srcpath) + if (!srcExists) throw new Error('relative srcpath does not exist') + return { + toCwd: srcpath, + toDst: path.relative(dstdir, srcpath) + } +} + +module.exports = { + symlinkPaths: u(symlinkPaths), + symlinkPathsSync +} diff --git a/node_modules/fs-extra/lib/ensure/symlink-type.js b/node_modules/fs-extra/lib/ensure/symlink-type.js new file mode 100644 index 0000000..518558e --- /dev/null +++ b/node_modules/fs-extra/lib/ensure/symlink-type.js @@ -0,0 +1,34 @@ +'use strict' + +const fs = require('../fs') +const u = require('universalify').fromPromise + +async function symlinkType (srcpath, type) { + if (type) return type + + let stats + try { + stats = await fs.lstat(srcpath) + } catch { + return 'file' + } + + return (stats && stats.isDirectory()) ? 'dir' : 'file' +} + +function symlinkTypeSync (srcpath, type) { + if (type) return type + + let stats + try { + stats = fs.lstatSync(srcpath) + } catch { + return 'file' + } + return (stats && stats.isDirectory()) ? 'dir' : 'file' +} + +module.exports = { + symlinkType: u(symlinkType), + symlinkTypeSync +} diff --git a/node_modules/fs-extra/lib/ensure/symlink.js b/node_modules/fs-extra/lib/ensure/symlink.js new file mode 100644 index 0000000..a3d5f57 --- /dev/null +++ b/node_modules/fs-extra/lib/ensure/symlink.js @@ -0,0 +1,67 @@ +'use strict' + +const u = require('universalify').fromPromise +const path = require('path') +const fs = require('../fs') + +const { mkdirs, mkdirsSync } = require('../mkdirs') + +const { symlinkPaths, symlinkPathsSync } = require('./symlink-paths') +const { symlinkType, symlinkTypeSync } = require('./symlink-type') + +const { pathExists } = require('../path-exists') + +const { areIdentical } = require('../util/stat') + +async function createSymlink (srcpath, dstpath, type) { + let stats + try { + stats = await fs.lstat(dstpath) + } catch { } + + if (stats && stats.isSymbolicLink()) { + const [srcStat, dstStat] = await Promise.all([ + fs.stat(srcpath), + fs.stat(dstpath) + ]) + + if (areIdentical(srcStat, dstStat)) return + } + + const relative = await symlinkPaths(srcpath, dstpath) + srcpath = relative.toDst + const toType = await symlinkType(relative.toCwd, type) + const dir = path.dirname(dstpath) + + if (!(await pathExists(dir))) { + await mkdirs(dir) + } + + return fs.symlink(srcpath, dstpath, toType) +} + +function createSymlinkSync (srcpath, dstpath, type) { + let stats + try { + stats = fs.lstatSync(dstpath) + } catch { } + if (stats && stats.isSymbolicLink()) { + const srcStat = fs.statSync(srcpath) + const dstStat = fs.statSync(dstpath) + if (areIdentical(srcStat, dstStat)) return + } + + const relative = symlinkPathsSync(srcpath, dstpath) + srcpath = relative.toDst + type = symlinkTypeSync(relative.toCwd, type) + const dir = path.dirname(dstpath) + const exists = fs.existsSync(dir) + if (exists) return fs.symlinkSync(srcpath, dstpath, type) + mkdirsSync(dir) + return fs.symlinkSync(srcpath, dstpath, type) +} + +module.exports = { + createSymlink: u(createSymlink), + createSymlinkSync +} diff --git a/node_modules/fs-extra/lib/esm.mjs b/node_modules/fs-extra/lib/esm.mjs new file mode 100644 index 0000000..27b7a1f --- /dev/null +++ b/node_modules/fs-extra/lib/esm.mjs @@ -0,0 +1,68 @@ +import _copy from './copy/index.js' +import _empty from './empty/index.js' +import _ensure from './ensure/index.js' +import _json from './json/index.js' +import _mkdirs from './mkdirs/index.js' +import _move from './move/index.js' +import _outputFile from './output-file/index.js' +import _pathExists from './path-exists/index.js' +import _remove from './remove/index.js' + +// NOTE: Only exports fs-extra's functions; fs functions must be imported from "node:fs" or "node:fs/promises" + +export const copy = _copy.copy +export const copySync = _copy.copySync +export const emptyDirSync = _empty.emptyDirSync +export const emptydirSync = _empty.emptydirSync +export const emptyDir = _empty.emptyDir +export const emptydir = _empty.emptydir +export const createFile = _ensure.createFile +export const createFileSync = _ensure.createFileSync +export const ensureFile = _ensure.ensureFile +export const ensureFileSync = _ensure.ensureFileSync +export const createLink = _ensure.createLink +export const createLinkSync = _ensure.createLinkSync +export const ensureLink = _ensure.ensureLink +export const ensureLinkSync = _ensure.ensureLinkSync +export const createSymlink = _ensure.createSymlink +export const createSymlinkSync = _ensure.createSymlinkSync +export const ensureSymlink = _ensure.ensureSymlink +export const ensureSymlinkSync = _ensure.ensureSymlinkSync +export const readJson = _json.readJson +export const readJSON = _json.readJSON +export const readJsonSync = _json.readJsonSync +export const readJSONSync = _json.readJSONSync +export const writeJson = _json.writeJson +export const writeJSON = _json.writeJSON +export const writeJsonSync = _json.writeJsonSync +export const writeJSONSync = _json.writeJSONSync +export const outputJson = _json.outputJson +export const outputJSON = _json.outputJSON +export const outputJsonSync = _json.outputJsonSync +export const outputJSONSync = _json.outputJSONSync +export const mkdirs = _mkdirs.mkdirs +export const mkdirsSync = _mkdirs.mkdirsSync +export const mkdirp = _mkdirs.mkdirp +export const mkdirpSync = _mkdirs.mkdirpSync +export const ensureDir = _mkdirs.ensureDir +export const ensureDirSync = _mkdirs.ensureDirSync +export const move = _move.move +export const moveSync = _move.moveSync +export const outputFile = _outputFile.outputFile +export const outputFileSync = _outputFile.outputFileSync +export const pathExists = _pathExists.pathExists +export const pathExistsSync = _pathExists.pathExistsSync +export const remove = _remove.remove +export const removeSync = _remove.removeSync + +export default { + ..._copy, + ..._empty, + ..._ensure, + ..._json, + ..._mkdirs, + ..._move, + ..._outputFile, + ..._pathExists, + ..._remove +} diff --git a/node_modules/fs-extra/lib/fs/index.js b/node_modules/fs-extra/lib/fs/index.js new file mode 100644 index 0000000..2dae818 --- /dev/null +++ b/node_modules/fs-extra/lib/fs/index.js @@ -0,0 +1,146 @@ +'use strict' +// This is adapted from https://github.com/normalize/mz +// Copyright (c) 2014-2016 Jonathan Ong me@jongleberry.com and Contributors +const u = require('universalify').fromCallback +const fs = require('graceful-fs') + +const api = [ + 'access', + 'appendFile', + 'chmod', + 'chown', + 'close', + 'copyFile', + 'cp', + 'fchmod', + 'fchown', + 'fdatasync', + 'fstat', + 'fsync', + 'ftruncate', + 'futimes', + 'glob', + 'lchmod', + 'lchown', + 'lutimes', + 'link', + 'lstat', + 'mkdir', + 'mkdtemp', + 'open', + 'opendir', + 'readdir', + 'readFile', + 'readlink', + 'realpath', + 'rename', + 'rm', + 'rmdir', + 'stat', + 'statfs', + 'symlink', + 'truncate', + 'unlink', + 'utimes', + 'writeFile' +].filter(key => { + // Some commands are not available on some systems. Ex: + // fs.cp was added in Node.js v16.7.0 + // fs.statfs was added in Node v19.6.0, v18.15.0 + // fs.glob was added in Node.js v22.0.0 + // fs.lchown is not available on at least some Linux + return typeof fs[key] === 'function' +}) + +// Export cloned fs: +Object.assign(exports, fs) + +// Universalify async methods: +api.forEach(method => { + exports[method] = u(fs[method]) +}) + +// We differ from mz/fs in that we still ship the old, broken, fs.exists() +// since we are a drop-in replacement for the native module +exports.exists = function (filename, callback) { + if (typeof callback === 'function') { + return fs.exists(filename, callback) + } + return new Promise(resolve => { + return fs.exists(filename, resolve) + }) +} + +// fs.read(), fs.write(), fs.readv(), & fs.writev() need special treatment due to multiple callback args + +exports.read = function (fd, buffer, offset, length, position, callback) { + if (typeof callback === 'function') { + return fs.read(fd, buffer, offset, length, position, callback) + } + return new Promise((resolve, reject) => { + fs.read(fd, buffer, offset, length, position, (err, bytesRead, buffer) => { + if (err) return reject(err) + resolve({ bytesRead, buffer }) + }) + }) +} + +// Function signature can be +// fs.write(fd, buffer[, offset[, length[, position]]], callback) +// OR +// fs.write(fd, string[, position[, encoding]], callback) +// We need to handle both cases, so we use ...args +exports.write = function (fd, buffer, ...args) { + if (typeof args[args.length - 1] === 'function') { + return fs.write(fd, buffer, ...args) + } + + return new Promise((resolve, reject) => { + fs.write(fd, buffer, ...args, (err, bytesWritten, buffer) => { + if (err) return reject(err) + resolve({ bytesWritten, buffer }) + }) + }) +} + +// Function signature is +// s.readv(fd, buffers[, position], callback) +// We need to handle the optional arg, so we use ...args +exports.readv = function (fd, buffers, ...args) { + if (typeof args[args.length - 1] === 'function') { + return fs.readv(fd, buffers, ...args) + } + + return new Promise((resolve, reject) => { + fs.readv(fd, buffers, ...args, (err, bytesRead, buffers) => { + if (err) return reject(err) + resolve({ bytesRead, buffers }) + }) + }) +} + +// Function signature is +// s.writev(fd, buffers[, position], callback) +// We need to handle the optional arg, so we use ...args +exports.writev = function (fd, buffers, ...args) { + if (typeof args[args.length - 1] === 'function') { + return fs.writev(fd, buffers, ...args) + } + + return new Promise((resolve, reject) => { + fs.writev(fd, buffers, ...args, (err, bytesWritten, buffers) => { + if (err) return reject(err) + resolve({ bytesWritten, buffers }) + }) + }) +} + +// fs.realpath.native sometimes not available if fs is monkey-patched +if (typeof fs.realpath.native === 'function') { + exports.realpath.native = u(fs.realpath.native) +} else { + process.emitWarning( + 'fs.realpath.native is not a function. Is fs being monkey-patched?', + 'Warning', 'fs-extra-WARN0003' + ) +} diff --git a/node_modules/fs-extra/lib/index.js b/node_modules/fs-extra/lib/index.js new file mode 100644 index 0000000..da6711a --- /dev/null +++ b/node_modules/fs-extra/lib/index.js @@ -0,0 +1,16 @@ +'use strict' + +module.exports = { + // Export promiseified graceful-fs: + ...require('./fs'), + // Export extra methods: + ...require('./copy'), + ...require('./empty'), + ...require('./ensure'), + ...require('./json'), + ...require('./mkdirs'), + ...require('./move'), + ...require('./output-file'), + ...require('./path-exists'), + ...require('./remove') +} diff --git a/node_modules/fs-extra/lib/json/index.js b/node_modules/fs-extra/lib/json/index.js new file mode 100644 index 0000000..900126a --- /dev/null +++ b/node_modules/fs-extra/lib/json/index.js @@ -0,0 +1,16 @@ +'use strict' + +const u = require('universalify').fromPromise +const jsonFile = require('./jsonfile') + +jsonFile.outputJson = u(require('./output-json')) +jsonFile.outputJsonSync = require('./output-json-sync') +// aliases +jsonFile.outputJSON = jsonFile.outputJson +jsonFile.outputJSONSync = jsonFile.outputJsonSync +jsonFile.writeJSON = jsonFile.writeJson +jsonFile.writeJSONSync = jsonFile.writeJsonSync +jsonFile.readJSON = jsonFile.readJson +jsonFile.readJSONSync = jsonFile.readJsonSync + +module.exports = jsonFile diff --git a/node_modules/fs-extra/lib/json/jsonfile.js b/node_modules/fs-extra/lib/json/jsonfile.js new file mode 100644 index 0000000..f11d34d --- /dev/null +++ b/node_modules/fs-extra/lib/json/jsonfile.js @@ -0,0 +1,11 @@ +'use strict' + +const jsonFile = require('jsonfile') + +module.exports = { + // jsonfile exports + readJson: jsonFile.readFile, + readJsonSync: jsonFile.readFileSync, + writeJson: jsonFile.writeFile, + writeJsonSync: jsonFile.writeFileSync +} diff --git a/node_modules/fs-extra/lib/json/output-json-sync.js b/node_modules/fs-extra/lib/json/output-json-sync.js new file mode 100644 index 0000000..d4e564f --- /dev/null +++ b/node_modules/fs-extra/lib/json/output-json-sync.js @@ -0,0 +1,12 @@ +'use strict' + +const { stringify } = require('jsonfile/utils') +const { outputFileSync } = require('../output-file') + +function outputJsonSync (file, data, options) { + const str = stringify(data, options) + + outputFileSync(file, str, options) +} + +module.exports = outputJsonSync diff --git a/node_modules/fs-extra/lib/json/output-json.js b/node_modules/fs-extra/lib/json/output-json.js new file mode 100644 index 0000000..0afdeb6 --- /dev/null +++ b/node_modules/fs-extra/lib/json/output-json.js @@ -0,0 +1,12 @@ +'use strict' + +const { stringify } = require('jsonfile/utils') +const { outputFile } = require('../output-file') + +async function outputJson (file, data, options = {}) { + const str = stringify(data, options) + + await outputFile(file, str, options) +} + +module.exports = outputJson diff --git a/node_modules/fs-extra/lib/mkdirs/index.js b/node_modules/fs-extra/lib/mkdirs/index.js new file mode 100644 index 0000000..9edecee --- /dev/null +++ b/node_modules/fs-extra/lib/mkdirs/index.js @@ -0,0 +1,14 @@ +'use strict' +const u = require('universalify').fromPromise +const { makeDir: _makeDir, makeDirSync } = require('./make-dir') +const makeDir = u(_makeDir) + +module.exports = { + mkdirs: makeDir, + mkdirsSync: makeDirSync, + // alias + mkdirp: makeDir, + mkdirpSync: makeDirSync, + ensureDir: makeDir, + ensureDirSync: makeDirSync +} diff --git a/node_modules/fs-extra/lib/mkdirs/make-dir.js b/node_modules/fs-extra/lib/mkdirs/make-dir.js new file mode 100644 index 0000000..45ece64 --- /dev/null +++ b/node_modules/fs-extra/lib/mkdirs/make-dir.js @@ -0,0 +1,27 @@ +'use strict' +const fs = require('../fs') +const { checkPath } = require('./utils') + +const getMode = options => { + const defaults = { mode: 0o777 } + if (typeof options === 'number') return options + return ({ ...defaults, ...options }).mode +} + +module.exports.makeDir = async (dir, options) => { + checkPath(dir) + + return fs.mkdir(dir, { + mode: getMode(options), + recursive: true + }) +} + +module.exports.makeDirSync = (dir, options) => { + checkPath(dir) + + return fs.mkdirSync(dir, { + mode: getMode(options), + recursive: true + }) +} diff --git a/node_modules/fs-extra/lib/mkdirs/utils.js b/node_modules/fs-extra/lib/mkdirs/utils.js new file mode 100644 index 0000000..a4059ad --- /dev/null +++ b/node_modules/fs-extra/lib/mkdirs/utils.js @@ -0,0 +1,21 @@ +// Adapted from https://github.com/sindresorhus/make-dir +// Copyright (c) Sindre Sorhus (sindresorhus.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. +'use strict' +const path = require('path') + +// https://github.com/nodejs/node/issues/8987 +// https://github.com/libuv/libuv/pull/1088 +module.exports.checkPath = function checkPath (pth) { + if (process.platform === 'win32') { + const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path.parse(pth).root, '')) + + if (pathHasInvalidWinCharacters) { + const error = new Error(`Path contains invalid characters: ${pth}`) + error.code = 'EINVAL' + throw error + } + } +} diff --git a/node_modules/fs-extra/lib/move/index.js b/node_modules/fs-extra/lib/move/index.js new file mode 100644 index 0000000..5a2f1cc --- /dev/null +++ b/node_modules/fs-extra/lib/move/index.js @@ -0,0 +1,7 @@ +'use strict' + +const u = require('universalify').fromPromise +module.exports = { + move: u(require('./move')), + moveSync: require('./move-sync') +} diff --git a/node_modules/fs-extra/lib/move/move-sync.js b/node_modules/fs-extra/lib/move/move-sync.js new file mode 100644 index 0000000..c456ab3 --- /dev/null +++ b/node_modules/fs-extra/lib/move/move-sync.js @@ -0,0 +1,55 @@ +'use strict' + +const fs = require('graceful-fs') +const path = require('path') +const copySync = require('../copy').copySync +const removeSync = require('../remove').removeSync +const mkdirpSync = require('../mkdirs').mkdirpSync +const stat = require('../util/stat') + +function moveSync (src, dest, opts) { + opts = opts || {} + const overwrite = opts.overwrite || opts.clobber || false + + const { srcStat, isChangingCase = false } = stat.checkPathsSync(src, dest, 'move', opts) + stat.checkParentPathsSync(src, srcStat, dest, 'move') + if (!isParentRoot(dest)) mkdirpSync(path.dirname(dest)) + return doRename(src, dest, overwrite, isChangingCase) +} + +function isParentRoot (dest) { + const parent = path.dirname(dest) + const parsedPath = path.parse(parent) + return parsedPath.root === parent +} + +function doRename (src, dest, overwrite, isChangingCase) { + if (isChangingCase) return rename(src, dest, overwrite) + if (overwrite) { + removeSync(dest) + return rename(src, dest, overwrite) + } + if (fs.existsSync(dest)) throw new Error('dest already exists.') + return rename(src, dest, overwrite) +} + +function rename (src, dest, overwrite) { + try { + fs.renameSync(src, dest) + } catch (err) { + if (err.code !== 'EXDEV') throw err + return moveAcrossDevice(src, dest, overwrite) + } +} + +function moveAcrossDevice (src, dest, overwrite) { + const opts = { + overwrite, + errorOnExist: true, + preserveTimestamps: true + } + copySync(src, dest, opts) + return removeSync(src) +} + +module.exports = moveSync diff --git a/node_modules/fs-extra/lib/move/move.js b/node_modules/fs-extra/lib/move/move.js new file mode 100644 index 0000000..992bd0f --- /dev/null +++ b/node_modules/fs-extra/lib/move/move.js @@ -0,0 +1,59 @@ +'use strict' + +const fs = require('../fs') +const path = require('path') +const { copy } = require('../copy') +const { remove } = require('../remove') +const { mkdirp } = require('../mkdirs') +const { pathExists } = require('../path-exists') +const stat = require('../util/stat') + +async function move (src, dest, opts = {}) { + const overwrite = opts.overwrite || opts.clobber || false + + const { srcStat, isChangingCase = false } = await stat.checkPaths(src, dest, 'move', opts) + + await stat.checkParentPaths(src, srcStat, dest, 'move') + + // If the parent of dest is not root, make sure it exists before proceeding + const destParent = path.dirname(dest) + const parsedParentPath = path.parse(destParent) + if (parsedParentPath.root !== destParent) { + await mkdirp(destParent) + } + + return doRename(src, dest, overwrite, isChangingCase) +} + +async function doRename (src, dest, overwrite, isChangingCase) { + if (!isChangingCase) { + if (overwrite) { + await remove(dest) + } else if (await pathExists(dest)) { + throw new Error('dest already exists.') + } + } + + try { + // Try w/ rename first, and try copy + remove if EXDEV + await fs.rename(src, dest) + } catch (err) { + if (err.code !== 'EXDEV') { + throw err + } + await moveAcrossDevice(src, dest, overwrite) + } +} + +async function moveAcrossDevice (src, dest, overwrite) { + const opts = { + overwrite, + errorOnExist: true, + preserveTimestamps: true + } + + await copy(src, dest, opts) + return remove(src) +} + +module.exports = move diff --git a/node_modules/fs-extra/lib/output-file/index.js b/node_modules/fs-extra/lib/output-file/index.js new file mode 100644 index 0000000..a42d943 --- /dev/null +++ b/node_modules/fs-extra/lib/output-file/index.js @@ -0,0 +1,31 @@ +'use strict' + +const u = require('universalify').fromPromise +const fs = require('../fs') +const path = require('path') +const mkdir = require('../mkdirs') +const pathExists = require('../path-exists').pathExists + +async function outputFile (file, data, encoding = 'utf-8') { + const dir = path.dirname(file) + + if (!(await pathExists(dir))) { + await mkdir.mkdirs(dir) + } + + return fs.writeFile(file, data, encoding) +} + +function outputFileSync (file, ...args) { + const dir = path.dirname(file) + if (!fs.existsSync(dir)) { + mkdir.mkdirsSync(dir) + } + + fs.writeFileSync(file, ...args) +} + +module.exports = { + outputFile: u(outputFile), + outputFileSync +} diff --git a/node_modules/fs-extra/lib/path-exists/index.js b/node_modules/fs-extra/lib/path-exists/index.js new file mode 100644 index 0000000..ddd9bc7 --- /dev/null +++ b/node_modules/fs-extra/lib/path-exists/index.js @@ -0,0 +1,12 @@ +'use strict' +const u = require('universalify').fromPromise +const fs = require('../fs') + +function pathExists (path) { + return fs.access(path).then(() => true).catch(() => false) +} + +module.exports = { + pathExists: u(pathExists), + pathExistsSync: fs.existsSync +} diff --git a/node_modules/fs-extra/lib/remove/index.js b/node_modules/fs-extra/lib/remove/index.js new file mode 100644 index 0000000..da746c7 --- /dev/null +++ b/node_modules/fs-extra/lib/remove/index.js @@ -0,0 +1,17 @@ +'use strict' + +const fs = require('graceful-fs') +const u = require('universalify').fromCallback + +function remove (path, callback) { + fs.rm(path, { recursive: true, force: true }, callback) +} + +function removeSync (path) { + fs.rmSync(path, { recursive: true, force: true }) +} + +module.exports = { + remove: u(remove), + removeSync +} diff --git a/node_modules/fs-extra/lib/util/stat.js b/node_modules/fs-extra/lib/util/stat.js new file mode 100644 index 0000000..5594942 --- /dev/null +++ b/node_modules/fs-extra/lib/util/stat.js @@ -0,0 +1,159 @@ +'use strict' + +const fs = require('../fs') +const path = require('path') +const u = require('universalify').fromPromise + +function getStats (src, dest, opts) { + const statFunc = opts.dereference + ? (file) => fs.stat(file, { bigint: true }) + : (file) => fs.lstat(file, { bigint: true }) + return Promise.all([ + statFunc(src), + statFunc(dest).catch(err => { + if (err.code === 'ENOENT') return null + throw err + }) + ]).then(([srcStat, destStat]) => ({ srcStat, destStat })) +} + +function getStatsSync (src, dest, opts) { + let destStat + const statFunc = opts.dereference + ? (file) => fs.statSync(file, { bigint: true }) + : (file) => fs.lstatSync(file, { bigint: true }) + const srcStat = statFunc(src) + try { + destStat = statFunc(dest) + } catch (err) { + if (err.code === 'ENOENT') return { srcStat, destStat: null } + throw err + } + return { srcStat, destStat } +} + +async function checkPaths (src, dest, funcName, opts) { + const { srcStat, destStat } = await getStats(src, dest, opts) + if (destStat) { + if (areIdentical(srcStat, destStat)) { + const srcBaseName = path.basename(src) + const destBaseName = path.basename(dest) + if (funcName === 'move' && + srcBaseName !== destBaseName && + srcBaseName.toLowerCase() === destBaseName.toLowerCase()) { + return { srcStat, destStat, isChangingCase: true } + } + throw new Error('Source and destination must not be the same.') + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`) + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`) + } + } + + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new Error(errMsg(src, dest, funcName)) + } + + return { srcStat, destStat } +} + +function checkPathsSync (src, dest, funcName, opts) { + const { srcStat, destStat } = getStatsSync(src, dest, opts) + + if (destStat) { + if (areIdentical(srcStat, destStat)) { + const srcBaseName = path.basename(src) + const destBaseName = path.basename(dest) + if (funcName === 'move' && + srcBaseName !== destBaseName && + srcBaseName.toLowerCase() === destBaseName.toLowerCase()) { + return { srcStat, destStat, isChangingCase: true } + } + throw new Error('Source and destination must not be the same.') + } + if (srcStat.isDirectory() && !destStat.isDirectory()) { + throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src}'.`) + } + if (!srcStat.isDirectory() && destStat.isDirectory()) { + throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src}'.`) + } + } + + if (srcStat.isDirectory() && isSrcSubdir(src, dest)) { + throw new Error(errMsg(src, dest, funcName)) + } + return { srcStat, destStat } +} + +// recursively check if dest parent is a subdirectory of src. +// It works for all file types including symlinks since it +// checks the src and dest inodes. It starts from the deepest +// parent and stops once it reaches the src parent or the root path. +async function checkParentPaths (src, srcStat, dest, funcName) { + const srcParent = path.resolve(path.dirname(src)) + const destParent = path.resolve(path.dirname(dest)) + if (destParent === srcParent || destParent === path.parse(destParent).root) return + + let destStat + try { + destStat = await fs.stat(destParent, { bigint: true }) + } catch (err) { + if (err.code === 'ENOENT') return + throw err + } + + if (areIdentical(srcStat, destStat)) { + throw new Error(errMsg(src, dest, funcName)) + } + + return checkParentPaths(src, srcStat, destParent, funcName) +} + +function checkParentPathsSync (src, srcStat, dest, funcName) { + const srcParent = path.resolve(path.dirname(src)) + const destParent = path.resolve(path.dirname(dest)) + if (destParent === srcParent || destParent === path.parse(destParent).root) return + let destStat + try { + destStat = fs.statSync(destParent, { bigint: true }) + } catch (err) { + if (err.code === 'ENOENT') return + throw err + } + if (areIdentical(srcStat, destStat)) { + throw new Error(errMsg(src, dest, funcName)) + } + return checkParentPathsSync(src, srcStat, destParent, funcName) +} + +function areIdentical (srcStat, destStat) { + // stat.dev can be 0n on windows when node version >= 22.x.x + return destStat.ino !== undefined && destStat.dev !== undefined && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev +} + +// return true if dest is a subdir of src, otherwise false. +// It only checks the path strings. +function isSrcSubdir (src, dest) { + const srcArr = path.resolve(src).split(path.sep).filter(i => i) + const destArr = path.resolve(dest).split(path.sep).filter(i => i) + return srcArr.every((cur, i) => destArr[i] === cur) +} + +function errMsg (src, dest, funcName) { + return `Cannot ${funcName} '${src}' to a subdirectory of itself, '${dest}'.` +} + +module.exports = { + // checkPaths + checkPaths: u(checkPaths), + checkPathsSync, + // checkParent + checkParentPaths: u(checkParentPaths), + checkParentPathsSync, + // Misc + isSrcSubdir, + areIdentical +} diff --git a/node_modules/fs-extra/lib/util/utimes.js b/node_modules/fs-extra/lib/util/utimes.js new file mode 100644 index 0000000..87f4588 --- /dev/null +++ b/node_modules/fs-extra/lib/util/utimes.js @@ -0,0 +1,36 @@ +'use strict' + +const fs = require('../fs') +const u = require('universalify').fromPromise + +async function utimesMillis (path, atime, mtime) { + // if (!HAS_MILLIS_RES) return fs.utimes(path, atime, mtime, callback) + const fd = await fs.open(path, 'r+') + + let closeErr = null + + try { + await fs.futimes(fd, atime, mtime) + } finally { + try { + await fs.close(fd) + } catch (e) { + closeErr = e + } + } + + if (closeErr) { + throw closeErr + } +} + +function utimesMillisSync (path, atime, mtime) { + const fd = fs.openSync(path, 'r+') + fs.futimesSync(fd, atime, mtime) + return fs.closeSync(fd) +} + +module.exports = { + utimesMillis: u(utimesMillis), + utimesMillisSync +} diff --git a/node_modules/fs-extra/package.json b/node_modules/fs-extra/package.json new file mode 100644 index 0000000..4f1b2d8 --- /dev/null +++ b/node_modules/fs-extra/package.json @@ -0,0 +1,71 @@ +{ + "name": "fs-extra", + "version": "11.3.1", + "description": "fs-extra contains methods that aren't included in the vanilla Node.js fs package. Such as recursive mkdir, copy, and remove.", + "engines": { + "node": ">=14.14" + }, + "homepage": "https://github.com/jprichardson/node-fs-extra", + "repository": { + "type": "git", + "url": "https://github.com/jprichardson/node-fs-extra" + }, + "keywords": [ + "fs", + "file", + "file system", + "copy", + "directory", + "extra", + "mkdirp", + "mkdir", + "mkdirs", + "recursive", + "json", + "read", + "write", + "extra", + "delete", + "remove", + "touch", + "create", + "text", + "output", + "move", + "promise" + ], + "author": "JP Richardson ", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "devDependencies": { + "klaw": "^2.1.1", + "klaw-sync": "^3.0.2", + "minimist": "^1.1.1", + "mocha": "^10.1.0", + "nyc": "^15.0.0", + "proxyquire": "^2.0.1", + "read-dir-files": "^0.1.1", + "standard": "^17.0.0" + }, + "main": "./lib/index.js", + "exports": { + ".": "./lib/index.js", + "./esm": "./lib/esm.mjs" + }, + "files": [ + "lib/", + "!lib/**/__tests__/" + ], + "scripts": { + "lint": "standard", + "test-find": "find ./lib/**/__tests__ -name *.test.js | xargs mocha", + "test": "npm run lint && npm run unit && npm run unit-esm", + "unit": "nyc node test.js", + "unit-esm": "node test.mjs" + }, + "sideEffects": false +} diff --git a/node_modules/fs.realpath/LICENSE b/node_modules/fs.realpath/LICENSE new file mode 100644 index 0000000..5bd884c --- /dev/null +++ b/node_modules/fs.realpath/LICENSE @@ -0,0 +1,43 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +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. + +---- + +This library bundles a version of the `fs.realpath` and `fs.realpathSync` +methods from Node.js v0.10 under the terms of the Node.js MIT license. + +Node's license follows, also included at the header of `old.js` which contains +the licensed code: + + 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. diff --git a/node_modules/fs.realpath/README.md b/node_modules/fs.realpath/README.md new file mode 100644 index 0000000..a42ceac --- /dev/null +++ b/node_modules/fs.realpath/README.md @@ -0,0 +1,33 @@ +# fs.realpath + +A backwards-compatible fs.realpath for Node v6 and above + +In Node v6, the JavaScript implementation of fs.realpath was replaced +with a faster (but less resilient) native implementation. That raises +new and platform-specific errors and cannot handle long or excessively +symlink-looping paths. + +This module handles those cases by detecting the new errors and +falling back to the JavaScript implementation. On versions of Node +prior to v6, it has no effect. + +## USAGE + +```js +var rp = require('fs.realpath') + +// async version +rp.realpath(someLongAndLoopingPath, function (er, real) { + // the ELOOP was handled, but it was a bit slower +}) + +// sync version +var real = rp.realpathSync(someLongAndLoopingPath) + +// monkeypatch at your own risk! +// This replaces the fs.realpath/fs.realpathSync builtins +rp.monkeypatch() + +// un-do the monkeypatching +rp.unmonkeypatch() +``` diff --git a/node_modules/fs.realpath/index.js b/node_modules/fs.realpath/index.js new file mode 100644 index 0000000..b09c7c7 --- /dev/null +++ b/node_modules/fs.realpath/index.js @@ -0,0 +1,66 @@ +module.exports = realpath +realpath.realpath = realpath +realpath.sync = realpathSync +realpath.realpathSync = realpathSync +realpath.monkeypatch = monkeypatch +realpath.unmonkeypatch = unmonkeypatch + +var fs = require('fs') +var origRealpath = fs.realpath +var origRealpathSync = fs.realpathSync + +var version = process.version +var ok = /^v[0-5]\./.test(version) +var old = require('./old.js') + +function newError (er) { + return er && er.syscall === 'realpath' && ( + er.code === 'ELOOP' || + er.code === 'ENOMEM' || + er.code === 'ENAMETOOLONG' + ) +} + +function realpath (p, cache, cb) { + if (ok) { + return origRealpath(p, cache, cb) + } + + if (typeof cache === 'function') { + cb = cache + cache = null + } + origRealpath(p, cache, function (er, result) { + if (newError(er)) { + old.realpath(p, cache, cb) + } else { + cb(er, result) + } + }) +} + +function realpathSync (p, cache) { + if (ok) { + return origRealpathSync(p, cache) + } + + try { + return origRealpathSync(p, cache) + } catch (er) { + if (newError(er)) { + return old.realpathSync(p, cache) + } else { + throw er + } + } +} + +function monkeypatch () { + fs.realpath = realpath + fs.realpathSync = realpathSync +} + +function unmonkeypatch () { + fs.realpath = origRealpath + fs.realpathSync = origRealpathSync +} diff --git a/node_modules/fs.realpath/old.js b/node_modules/fs.realpath/old.js new file mode 100644 index 0000000..b40305e --- /dev/null +++ b/node_modules/fs.realpath/old.js @@ -0,0 +1,303 @@ +// 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. + +var pathModule = require('path'); +var isWindows = process.platform === 'win32'; +var fs = require('fs'); + +// JavaScript implementation of realpath, ported from node pre-v6 + +var DEBUG = process.env.NODE_DEBUG && /fs/.test(process.env.NODE_DEBUG); + +function rethrow() { + // Only enable in debug mode. A backtrace uses ~1000 bytes of heap space and + // is fairly slow to generate. + var callback; + if (DEBUG) { + var backtrace = new Error; + callback = debugCallback; + } else + callback = missingCallback; + + return callback; + + function debugCallback(err) { + if (err) { + backtrace.message = err.message; + err = backtrace; + missingCallback(err); + } + } + + function missingCallback(err) { + if (err) { + if (process.throwDeprecation) + throw err; // Forgot a callback but don't know where? Use NODE_DEBUG=fs + else if (!process.noDeprecation) { + var msg = 'fs: missing callback ' + (err.stack || err.message); + if (process.traceDeprecation) + console.trace(msg); + else + console.error(msg); + } + } + } +} + +function maybeCallback(cb) { + return typeof cb === 'function' ? cb : rethrow(); +} + +var normalize = pathModule.normalize; + +// Regexp that finds the next partion of a (partial) path +// result is [base_with_slash, base], e.g. ['somedir/', 'somedir'] +if (isWindows) { + var nextPartRe = /(.*?)(?:[\/\\]+|$)/g; +} else { + var nextPartRe = /(.*?)(?:[\/]+|$)/g; +} + +// Regex to find the device root, including trailing slash. E.g. 'c:\\'. +if (isWindows) { + var splitRootRe = /^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/; +} else { + var splitRootRe = /^[\/]*/; +} + +exports.realpathSync = function realpathSync(p, cache) { + // make p is absolute + p = pathModule.resolve(p); + + if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { + return cache[p]; + } + + var original = p, + seenLinks = {}, + knownHard = {}; + + // current character position in p + var pos; + // the partial path so far, including a trailing slash if any + var current; + // the partial path without a trailing slash (except when pointing at a root) + var base; + // the partial path scanned in the previous round, with slash + var previous; + + start(); + + function start() { + // Skip over roots + var m = splitRootRe.exec(p); + pos = m[0].length; + current = m[0]; + base = m[0]; + previous = ''; + + // On windows, check that the root exists. On unix there is no need. + if (isWindows && !knownHard[base]) { + fs.lstatSync(base); + knownHard[base] = true; + } + } + + // walk down the path, swapping out linked pathparts for their real + // values + // NB: p.length changes. + while (pos < p.length) { + // find the next part + nextPartRe.lastIndex = pos; + var result = nextPartRe.exec(p); + previous = current; + current += result[0]; + base = previous + result[1]; + pos = nextPartRe.lastIndex; + + // continue if not a symlink + if (knownHard[base] || (cache && cache[base] === base)) { + continue; + } + + var resolvedLink; + if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { + // some known symbolic link. no need to stat again. + resolvedLink = cache[base]; + } else { + var stat = fs.lstatSync(base); + if (!stat.isSymbolicLink()) { + knownHard[base] = true; + if (cache) cache[base] = base; + continue; + } + + // read the link if it wasn't read before + // dev/ino always return 0 on windows, so skip the check. + var linkTarget = null; + if (!isWindows) { + var id = stat.dev.toString(32) + ':' + stat.ino.toString(32); + if (seenLinks.hasOwnProperty(id)) { + linkTarget = seenLinks[id]; + } + } + if (linkTarget === null) { + fs.statSync(base); + linkTarget = fs.readlinkSync(base); + } + resolvedLink = pathModule.resolve(previous, linkTarget); + // track this, if given a cache. + if (cache) cache[base] = resolvedLink; + if (!isWindows) seenLinks[id] = linkTarget; + } + + // resolve the link, then start over + p = pathModule.resolve(resolvedLink, p.slice(pos)); + start(); + } + + if (cache) cache[original] = p; + + return p; +}; + + +exports.realpath = function realpath(p, cache, cb) { + if (typeof cb !== 'function') { + cb = maybeCallback(cache); + cache = null; + } + + // make p is absolute + p = pathModule.resolve(p); + + if (cache && Object.prototype.hasOwnProperty.call(cache, p)) { + return process.nextTick(cb.bind(null, null, cache[p])); + } + + var original = p, + seenLinks = {}, + knownHard = {}; + + // current character position in p + var pos; + // the partial path so far, including a trailing slash if any + var current; + // the partial path without a trailing slash (except when pointing at a root) + var base; + // the partial path scanned in the previous round, with slash + var previous; + + start(); + + function start() { + // Skip over roots + var m = splitRootRe.exec(p); + pos = m[0].length; + current = m[0]; + base = m[0]; + previous = ''; + + // On windows, check that the root exists. On unix there is no need. + if (isWindows && !knownHard[base]) { + fs.lstat(base, function(err) { + if (err) return cb(err); + knownHard[base] = true; + LOOP(); + }); + } else { + process.nextTick(LOOP); + } + } + + // walk down the path, swapping out linked pathparts for their real + // values + function LOOP() { + // stop if scanned past end of path + if (pos >= p.length) { + if (cache) cache[original] = p; + return cb(null, p); + } + + // find the next part + nextPartRe.lastIndex = pos; + var result = nextPartRe.exec(p); + previous = current; + current += result[0]; + base = previous + result[1]; + pos = nextPartRe.lastIndex; + + // continue if not a symlink + if (knownHard[base] || (cache && cache[base] === base)) { + return process.nextTick(LOOP); + } + + if (cache && Object.prototype.hasOwnProperty.call(cache, base)) { + // known symbolic link. no need to stat again. + return gotResolvedLink(cache[base]); + } + + return fs.lstat(base, gotStat); + } + + function gotStat(err, stat) { + if (err) return cb(err); + + // if not a symlink, skip to the next path part + if (!stat.isSymbolicLink()) { + knownHard[base] = true; + if (cache) cache[base] = base; + return process.nextTick(LOOP); + } + + // stat & read the link if not read before + // call gotTarget as soon as the link target is known + // dev/ino always return 0 on windows, so skip the check. + if (!isWindows) { + var id = stat.dev.toString(32) + ':' + stat.ino.toString(32); + if (seenLinks.hasOwnProperty(id)) { + return gotTarget(null, seenLinks[id], base); + } + } + fs.stat(base, function(err) { + if (err) return cb(err); + + fs.readlink(base, function(err, target) { + if (!isWindows) seenLinks[id] = target; + gotTarget(err, target); + }); + }); + } + + function gotTarget(err, target, base) { + if (err) return cb(err); + + var resolvedLink = pathModule.resolve(previous, target); + if (cache) cache[base] = resolvedLink; + gotResolvedLink(resolvedLink); + } + + function gotResolvedLink(resolvedLink) { + // resolve the link, then start over + p = pathModule.resolve(resolvedLink, p.slice(pos)); + start(); + } +}; diff --git a/node_modules/fs.realpath/package.json b/node_modules/fs.realpath/package.json new file mode 100644 index 0000000..3edc57d --- /dev/null +++ b/node_modules/fs.realpath/package.json @@ -0,0 +1,26 @@ +{ + "name": "fs.realpath", + "version": "1.0.0", + "description": "Use node's fs.realpath, but fall back to the JS implementation if the native one fails", + "main": "index.js", + "dependencies": {}, + "devDependencies": {}, + "scripts": { + "test": "tap test/*.js --cov" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/isaacs/fs.realpath.git" + }, + "keywords": [ + "realpath", + "fs", + "polyfill" + ], + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "license": "ISC", + "files": [ + "old.js", + "index.js" + ] +} diff --git a/node_modules/get-caller-file/LICENSE.md b/node_modules/get-caller-file/LICENSE.md new file mode 100644 index 0000000..bf3e1c0 --- /dev/null +++ b/node_modules/get-caller-file/LICENSE.md @@ -0,0 +1,6 @@ +ISC License (ISC) +Copyright 2018 Stefan Penner + +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. diff --git a/node_modules/get-caller-file/README.md b/node_modules/get-caller-file/README.md new file mode 100644 index 0000000..a7d8c07 --- /dev/null +++ b/node_modules/get-caller-file/README.md @@ -0,0 +1,41 @@ +# get-caller-file + +[![Build Status](https://travis-ci.org/stefanpenner/get-caller-file.svg?branch=master)](https://travis-ci.org/stefanpenner/get-caller-file) +[![Build status](https://ci.appveyor.com/api/projects/status/ol2q94g1932cy14a/branch/master?svg=true)](https://ci.appveyor.com/project/embercli/get-caller-file/branch/master) + +This is a utility, which allows a function to figure out from which file it was invoked. It does so by inspecting v8's stack trace at the time it is invoked. + +Inspired by http://stackoverflow.com/questions/13227489 + +*note: this relies on Node/V8 specific APIs, as such other runtimes may not work* + +## Installation + +```bash +yarn add get-caller-file +``` + +## Usage + +Given: + +```js +// ./foo.js +const getCallerFile = require('get-caller-file'); + +module.exports = function() { + return getCallerFile(); // figures out who called it +}; +``` + +```js +// index.js +const foo = require('./foo'); + +foo() // => /full/path/to/this/file/index.js +``` + + +## Options: + +* `getCallerFile(position = 2)`: where position is stack frame whos fileName we want. diff --git a/node_modules/get-caller-file/index.d.ts b/node_modules/get-caller-file/index.d.ts new file mode 100644 index 0000000..babed69 --- /dev/null +++ b/node_modules/get-caller-file/index.d.ts @@ -0,0 +1,2 @@ +declare const _default: (position?: number) => any; +export = _default; diff --git a/node_modules/get-caller-file/index.js b/node_modules/get-caller-file/index.js new file mode 100644 index 0000000..57304f8 --- /dev/null +++ b/node_modules/get-caller-file/index.js @@ -0,0 +1,22 @@ +"use strict"; +// Call this function in a another function to find out the file from +// which that function was called from. (Inspects the v8 stack trace) +// +// Inspired by http://stackoverflow.com/questions/13227489 +module.exports = function getCallerFile(position) { + if (position === void 0) { position = 2; } + if (position >= Error.stackTraceLimit) { + throw new TypeError('getCallerFile(position) requires position be less then Error.stackTraceLimit but position was: `' + position + '` and Error.stackTraceLimit was: `' + Error.stackTraceLimit + '`'); + } + var oldPrepareStackTrace = Error.prepareStackTrace; + Error.prepareStackTrace = function (_, stack) { return stack; }; + var stack = new Error().stack; + Error.prepareStackTrace = oldPrepareStackTrace; + if (stack !== null && typeof stack === 'object') { + // stack[0] holds this file + // stack[1] holds where this function was called + // stack[2] holds the file we're interested in + return stack[position] ? stack[position].getFileName() : undefined; + } +}; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/node_modules/get-caller-file/index.js.map b/node_modules/get-caller-file/index.js.map new file mode 100644 index 0000000..89c655c --- /dev/null +++ b/node_modules/get-caller-file/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,qEAAqE;AACrE,EAAE;AACF,0DAA0D;AAE1D,iBAAS,SAAS,aAAa,CAAC,QAAY;IAAZ,yBAAA,EAAA,YAAY;IAC1C,IAAI,QAAQ,IAAI,KAAK,CAAC,eAAe,EAAE;QACrC,MAAM,IAAI,SAAS,CAAC,kGAAkG,GAAG,QAAQ,GAAG,oCAAoC,GAAG,KAAK,CAAC,eAAe,GAAG,GAAG,CAAC,CAAC;KACzM;IAED,IAAM,oBAAoB,GAAG,KAAK,CAAC,iBAAiB,CAAC;IACrD,KAAK,CAAC,iBAAiB,GAAG,UAAC,CAAC,EAAE,KAAK,IAAM,OAAA,KAAK,EAAL,CAAK,CAAC;IAC/C,IAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC;IAChC,KAAK,CAAC,iBAAiB,GAAG,oBAAoB,CAAC;IAG/C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC/C,2BAA2B;QAC3B,gDAAgD;QAChD,8CAA8C;QAC9C,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAE,KAAK,CAAC,QAAQ,CAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;KAC7E;AACH,CAAC,CAAC"} \ No newline at end of file diff --git a/node_modules/get-caller-file/package.json b/node_modules/get-caller-file/package.json new file mode 100644 index 0000000..b0dd571 --- /dev/null +++ b/node_modules/get-caller-file/package.json @@ -0,0 +1,42 @@ +{ + "name": "get-caller-file", + "version": "2.0.5", + "description": "", + "main": "index.js", + "directories": { + "test": "tests" + }, + "files": [ + "index.js", + "index.js.map", + "index.d.ts" + ], + "scripts": { + "prepare": "tsc", + "test": "mocha test", + "test:debug": "mocha test" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/stefanpenner/get-caller-file.git" + }, + "author": "Stefan Penner", + "license": "ISC", + "bugs": { + "url": "https://github.com/stefanpenner/get-caller-file/issues" + }, + "homepage": "https://github.com/stefanpenner/get-caller-file#readme", + "devDependencies": { + "@types/chai": "^4.1.7", + "@types/ensure-posix-path": "^1.0.0", + "@types/mocha": "^5.2.6", + "@types/node": "^11.10.5", + "chai": "^4.1.2", + "ensure-posix-path": "^1.0.1", + "mocha": "^5.2.0", + "typescript": "^3.3.3333" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } +} diff --git a/node_modules/get-stdin/index.d.ts b/node_modules/get-stdin/index.d.ts new file mode 100644 index 0000000..c2a0605 --- /dev/null +++ b/node_modules/get-stdin/index.d.ts @@ -0,0 +1,29 @@ +declare const getStdin: { + /** + Get [`stdin`](https://nodejs.org/api/process.html#process_process_stdin) as a `string`. + + @returns A promise that is resolved when the `end` event fires on the `stdin` stream, indicating that there is no more data to be read. In a TTY context, an empty `string` is returned. + + @example + ``` + // example.ts + import getStdin from 'get-stdin'; + + console.log(await getStdin()); + //=> 'unicorns' + + // $ echo unicorns | ts-node example.ts + // unicorns + ``` + */ + (): Promise; + + /** + Get [`stdin`](https://nodejs.org/api/process.html#process_process_stdin) as a `Buffer`. + + @returns A promise that is resolved when the `end` event fires on the `stdin` stream, indicating that there is no more data to be read. In a TTY context, an empty `Buffer` is returned. + */ + buffer(): Promise; +}; + +export default getStdin; diff --git a/node_modules/get-stdin/index.js b/node_modules/get-stdin/index.js new file mode 100644 index 0000000..e8182da --- /dev/null +++ b/node_modules/get-stdin/index.js @@ -0,0 +1,33 @@ +const {stdin} = process; + +export default async function getStdin() { + let result = ''; + + if (stdin.isTTY) { + return result; + } + + stdin.setEncoding('utf8'); + + for await (const chunk of stdin) { + result += chunk; + } + + return result; +} + +getStdin.buffer = async () => { + const result = []; + let length = 0; + + if (stdin.isTTY) { + return Buffer.concat([]); + } + + for await (const chunk of stdin) { + result.push(chunk); + length += chunk.length; + } + + return Buffer.concat(result, length); +}; diff --git a/node_modules/get-stdin/license b/node_modules/get-stdin/license new file mode 100644 index 0000000..fa7ceba --- /dev/null +++ b/node_modules/get-stdin/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.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. diff --git a/node_modules/get-stdin/package.json b/node_modules/get-stdin/package.json new file mode 100644 index 0000000..bd758aa --- /dev/null +++ b/node_modules/get-stdin/package.json @@ -0,0 +1,42 @@ +{ + "name": "get-stdin", + "version": "9.0.0", + "description": "Get stdin as a string or buffer", + "license": "MIT", + "repository": "sindresorhus/get-stdin", + "funding": "https://github.com/sponsors/sindresorhus", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "https://sindresorhus.com" + }, + "type": "module", + "exports": "./index.js", + "engines": { + "node": ">=12" + }, + "scripts": { + "test": "xo && ava test.js test-buffer.js && echo unicorns | node test-real.js && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "std", + "stdin", + "stdio", + "concat", + "buffer", + "stream", + "process", + "read" + ], + "devDependencies": { + "@types/node": "^14.14.41", + "ava": "^3.15.0", + "delay": "^5.0.0", + "tsd": "^0.14.0", + "xo": "^0.38.2" + } +} diff --git a/node_modules/get-stdin/readme.md b/node_modules/get-stdin/readme.md new file mode 100644 index 0000000..ede347a --- /dev/null +++ b/node_modules/get-stdin/readme.md @@ -0,0 +1,56 @@ +# get-stdin + +> Get [stdin](https://nodejs.org/api/process.html#process_process_stdin) as a string or buffer + +## Install + +``` +$ npm install get-stdin +``` + +## Usage + +```js +// example.js +import getStdin from 'get-stdin'; + +console.log(await getStdin()); +//=> 'unicorns' +``` + +``` +$ echo unicorns | node example.js +unicorns +``` + +## API + +Both methods returns a promise that is resolved when the `end` event fires on the `stdin` stream, indicating that there is no more data to be read. + +### getStdin() + +Get `stdin` as a `string`. + +In a TTY context, a promise that resolves to an empty `string` is returned. + +### getStdin.buffer() + +Get `stdin` as a `Buffer`. + +In a TTY context, a promise that resolves to an empty `Buffer` is returned. + +## Related + +- [get-stream](https://github.com/sindresorhus/get-stream) - Get a stream as a string or buffer + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
diff --git a/node_modules/glob-parent/CHANGELOG.md b/node_modules/glob-parent/CHANGELOG.md new file mode 100644 index 0000000..fb9de96 --- /dev/null +++ b/node_modules/glob-parent/CHANGELOG.md @@ -0,0 +1,110 @@ +### [5.1.2](https://github.com/gulpjs/glob-parent/compare/v5.1.1...v5.1.2) (2021-03-06) + + +### Bug Fixes + +* eliminate ReDoS ([#36](https://github.com/gulpjs/glob-parent/issues/36)) ([f923116](https://github.com/gulpjs/glob-parent/commit/f9231168b0041fea3f8f954b3cceb56269fc6366)) + +### [5.1.1](https://github.com/gulpjs/glob-parent/compare/v5.1.0...v5.1.1) (2021-01-27) + + +### Bug Fixes + +* unescape exclamation mark ([#26](https://github.com/gulpjs/glob-parent/issues/26)) ([a98874f](https://github.com/gulpjs/glob-parent/commit/a98874f1a59e407f4fb1beb0db4efa8392da60bb)) + +## [5.1.0](https://github.com/gulpjs/glob-parent/compare/v5.0.0...v5.1.0) (2021-01-27) + + +### Features + +* add `flipBackslashes` option to disable auto conversion of slashes (closes [#24](https://github.com/gulpjs/glob-parent/issues/24)) ([#25](https://github.com/gulpjs/glob-parent/issues/25)) ([eecf91d](https://github.com/gulpjs/glob-parent/commit/eecf91d5e3834ed78aee39c4eaaae654d76b87b3)) + +## [5.0.0](https://github.com/gulpjs/glob-parent/compare/v4.0.0...v5.0.0) (2021-01-27) + + +### ⚠ BREAKING CHANGES + +* Drop support for node <6 & bump dependencies + +### Miscellaneous Chores + +* Drop support for node <6 & bump dependencies ([896c0c0](https://github.com/gulpjs/glob-parent/commit/896c0c00b4e7362f60b96e7fc295ae929245255a)) + +## [4.0.0](https://github.com/gulpjs/glob-parent/compare/v3.1.0...v4.0.0) (2021-01-27) + + +### ⚠ BREAKING CHANGES + +* question marks are valid path characters on Windows so avoid flagging as a glob when alone +* Update is-glob dependency + +### Features + +* hoist regexps and strings for performance gains ([4a80667](https://github.com/gulpjs/glob-parent/commit/4a80667c69355c76a572a5892b0f133c8e1f457e)) +* question marks are valid path characters on Windows so avoid flagging as a glob when alone ([2a551dd](https://github.com/gulpjs/glob-parent/commit/2a551dd0dc3235e78bf3c94843d4107072d17841)) +* Update is-glob dependency ([e41fcd8](https://github.com/gulpjs/glob-parent/commit/e41fcd895d1f7bc617dba45c9d935a7949b9c281)) + +## [3.1.0](https://github.com/gulpjs/glob-parent/compare/v3.0.1...v3.1.0) (2021-01-27) + + +### Features + +* allow basic win32 backslash use ([272afa5](https://github.com/gulpjs/glob-parent/commit/272afa5fd070fc0f796386a5993d4ee4a846988b)) +* handle extglobs (parentheses) containing separators ([7db1bdb](https://github.com/gulpjs/glob-parent/commit/7db1bdb0756e55fd14619e8ce31aa31b17b117fd)) +* new approach to braces/brackets handling ([8269bd8](https://github.com/gulpjs/glob-parent/commit/8269bd89290d99fac9395a354fb56fdcdb80f0be)) +* pre-process braces/brackets sections ([9ef8a87](https://github.com/gulpjs/glob-parent/commit/9ef8a87f66b1a43d0591e7a8e4fc5a18415ee388)) +* preserve escaped brace/bracket at end of string ([8cfb0ba](https://github.com/gulpjs/glob-parent/commit/8cfb0ba84202d51571340dcbaf61b79d16a26c76)) + + +### Bug Fixes + +* trailing escaped square brackets ([99ec9fe](https://github.com/gulpjs/glob-parent/commit/99ec9fecc60ee488ded20a94dd4f18b4f55c4ccf)) + +### [3.0.1](https://github.com/gulpjs/glob-parent/compare/v3.0.0...v3.0.1) (2021-01-27) + + +### Features + +* use path-dirname ponyfill ([cdbea5f](https://github.com/gulpjs/glob-parent/commit/cdbea5f32a58a54e001a75ddd7c0fccd4776aacc)) + + +### Bug Fixes + +* unescape glob-escaped dirnames on output ([598c533](https://github.com/gulpjs/glob-parent/commit/598c533bdf49c1428bc063aa9b8db40c5a86b030)) + +## [3.0.0](https://github.com/gulpjs/glob-parent/compare/v2.0.0...v3.0.0) (2021-01-27) + + +### ⚠ BREAKING CHANGES + +* update is-glob dependency + +### Features + +* update is-glob dependency ([5c5f8ef](https://github.com/gulpjs/glob-parent/commit/5c5f8efcee362a8e7638cf8220666acd8784f6bd)) + +## [2.0.0](https://github.com/gulpjs/glob-parent/compare/v1.3.0...v2.0.0) (2021-01-27) + + +### Features + +* move up to dirname regardless of glob characters ([f97fb83](https://github.com/gulpjs/glob-parent/commit/f97fb83be2e0a9fc8d3b760e789d2ecadd6aa0c2)) + +## [1.3.0](https://github.com/gulpjs/glob-parent/compare/v1.2.0...v1.3.0) (2021-01-27) + +## [1.2.0](https://github.com/gulpjs/glob-parent/compare/v1.1.0...v1.2.0) (2021-01-27) + + +### Reverts + +* feat: make regex test strings smaller ([dc80fa9](https://github.com/gulpjs/glob-parent/commit/dc80fa9658dca20549cfeba44bbd37d5246fcce0)) + +## [1.1.0](https://github.com/gulpjs/glob-parent/compare/v1.0.0...v1.1.0) (2021-01-27) + + +### Features + +* make regex test strings smaller ([cd83220](https://github.com/gulpjs/glob-parent/commit/cd832208638f45169f986d80fcf66e401f35d233)) + +## 1.0.0 (2021-01-27) + diff --git a/node_modules/glob-parent/LICENSE b/node_modules/glob-parent/LICENSE new file mode 100644 index 0000000..63222d7 --- /dev/null +++ b/node_modules/glob-parent/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) 2015, 2019 Elan Shanker + +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. diff --git a/node_modules/glob-parent/README.md b/node_modules/glob-parent/README.md new file mode 100644 index 0000000..36a2793 --- /dev/null +++ b/node_modules/glob-parent/README.md @@ -0,0 +1,137 @@ +

+ + + +

+ +# glob-parent + +[![NPM version][npm-image]][npm-url] [![Downloads][downloads-image]][npm-url] [![Azure Pipelines Build Status][azure-pipelines-image]][azure-pipelines-url] [![Travis Build Status][travis-image]][travis-url] [![AppVeyor Build Status][appveyor-image]][appveyor-url] [![Coveralls Status][coveralls-image]][coveralls-url] [![Gitter chat][gitter-image]][gitter-url] + +Extract the non-magic parent path from a glob string. + +## Usage + +```js +var globParent = require('glob-parent'); + +globParent('path/to/*.js'); // 'path/to' +globParent('/root/path/to/*.js'); // '/root/path/to' +globParent('/*.js'); // '/' +globParent('*.js'); // '.' +globParent('**/*.js'); // '.' +globParent('path/{to,from}'); // 'path' +globParent('path/!(to|from)'); // 'path' +globParent('path/?(to|from)'); // 'path' +globParent('path/+(to|from)'); // 'path' +globParent('path/*(to|from)'); // 'path' +globParent('path/@(to|from)'); // 'path' +globParent('path/**/*'); // 'path' + +// if provided a non-glob path, returns the nearest dir +globParent('path/foo/bar.js'); // 'path/foo' +globParent('path/foo/'); // 'path/foo' +globParent('path/foo'); // 'path' (see issue #3 for details) +``` + +## API + +### `globParent(maybeGlobString, [options])` + +Takes a string and returns the part of the path before the glob begins. Be aware of Escaping rules and Limitations below. + +#### options + +```js +{ + // Disables the automatic conversion of slashes for Windows + flipBackslashes: true +} +``` + +## Escaping + +The following characters have special significance in glob patterns and must be escaped if you want them to be treated as regular path characters: + +- `?` (question mark) unless used as a path segment alone +- `*` (asterisk) +- `|` (pipe) +- `(` (opening parenthesis) +- `)` (closing parenthesis) +- `{` (opening curly brace) +- `}` (closing curly brace) +- `[` (opening bracket) +- `]` (closing bracket) + +**Example** + +```js +globParent('foo/[bar]/') // 'foo' +globParent('foo/\\[bar]/') // 'foo/[bar]' +``` + +## Limitations + +### Braces & Brackets +This library attempts a quick and imperfect method of determining which path +parts have glob magic without fully parsing/lexing the pattern. There are some +advanced use cases that can trip it up, such as nested braces where the outer +pair is escaped and the inner one contains a path separator. If you find +yourself in the unlikely circumstance of being affected by this or need to +ensure higher-fidelity glob handling in your library, it is recommended that you +pre-process your input with [expand-braces] and/or [expand-brackets]. + +### Windows +Backslashes are not valid path separators for globs. If a path with backslashes +is provided anyway, for simple cases, glob-parent will replace the path +separator for you and return the non-glob parent path (now with +forward-slashes, which are still valid as Windows path separators). + +This cannot be used in conjunction with escape characters. + +```js +// BAD +globParent('C:\\Program Files \\(x86\\)\\*.ext') // 'C:/Program Files /(x86/)' + +// GOOD +globParent('C:/Program Files\\(x86\\)/*.ext') // 'C:/Program Files (x86)' +``` + +If you are using escape characters for a pattern without path parts (i.e. +relative to `cwd`), prefix with `./` to avoid confusing glob-parent. + +```js +// BAD +globParent('foo \\[bar]') // 'foo ' +globParent('foo \\[bar]*') // 'foo ' + +// GOOD +globParent('./foo \\[bar]') // 'foo [bar]' +globParent('./foo \\[bar]*') // '.' +``` + +## License + +ISC + +[expand-braces]: https://github.com/jonschlinkert/expand-braces +[expand-brackets]: https://github.com/jonschlinkert/expand-brackets + +[downloads-image]: https://img.shields.io/npm/dm/glob-parent.svg +[npm-url]: https://www.npmjs.com/package/glob-parent +[npm-image]: https://img.shields.io/npm/v/glob-parent.svg + +[azure-pipelines-url]: https://dev.azure.com/gulpjs/gulp/_build/latest?definitionId=2&branchName=master +[azure-pipelines-image]: https://dev.azure.com/gulpjs/gulp/_apis/build/status/glob-parent?branchName=master + +[travis-url]: https://travis-ci.org/gulpjs/glob-parent +[travis-image]: https://img.shields.io/travis/gulpjs/glob-parent.svg?label=travis-ci + +[appveyor-url]: https://ci.appveyor.com/project/gulpjs/glob-parent +[appveyor-image]: https://img.shields.io/appveyor/ci/gulpjs/glob-parent.svg?label=appveyor + +[coveralls-url]: https://coveralls.io/r/gulpjs/glob-parent +[coveralls-image]: https://img.shields.io/coveralls/gulpjs/glob-parent/master.svg + +[gitter-url]: https://gitter.im/gulpjs/gulp +[gitter-image]: https://badges.gitter.im/gulpjs/gulp.svg diff --git a/node_modules/glob-parent/index.js b/node_modules/glob-parent/index.js new file mode 100644 index 0000000..09e257e --- /dev/null +++ b/node_modules/glob-parent/index.js @@ -0,0 +1,42 @@ +'use strict'; + +var isGlob = require('is-glob'); +var pathPosixDirname = require('path').posix.dirname; +var isWin32 = require('os').platform() === 'win32'; + +var slash = '/'; +var backslash = /\\/g; +var enclosure = /[\{\[].*[\}\]]$/; +var globby = /(^|[^\\])([\{\[]|\([^\)]+$)/; +var escaped = /\\([\!\*\?\|\[\]\(\)\{\}])/g; + +/** + * @param {string} str + * @param {Object} opts + * @param {boolean} [opts.flipBackslashes=true] + * @returns {string} + */ +module.exports = function globParent(str, opts) { + var options = Object.assign({ flipBackslashes: true }, opts); + + // flip windows path separators + if (options.flipBackslashes && isWin32 && str.indexOf(slash) < 0) { + str = str.replace(backslash, slash); + } + + // special case for strings ending in enclosure containing path separator + if (enclosure.test(str)) { + str += slash; + } + + // preserves full path in case of trailing path separator + str += 'a'; + + // remove path parts that are globby + do { + str = pathPosixDirname(str); + } while (isGlob(str) || globby.test(str)); + + // remove escape chars and return result + return str.replace(escaped, '$1'); +}; diff --git a/node_modules/glob-parent/package.json b/node_modules/glob-parent/package.json new file mode 100644 index 0000000..125c971 --- /dev/null +++ b/node_modules/glob-parent/package.json @@ -0,0 +1,48 @@ +{ + "name": "glob-parent", + "version": "5.1.2", + "description": "Extract the non-magic parent path from a glob string.", + "author": "Gulp Team (https://gulpjs.com/)", + "contributors": [ + "Elan Shanker (https://github.com/es128)", + "Blaine Bublitz " + ], + "repository": "gulpjs/glob-parent", + "license": "ISC", + "engines": { + "node": ">= 6" + }, + "main": "index.js", + "files": [ + "LICENSE", + "index.js" + ], + "scripts": { + "lint": "eslint .", + "pretest": "npm run lint", + "test": "nyc mocha --async-only", + "azure-pipelines": "nyc mocha --async-only --reporter xunit -O output=test.xunit", + "coveralls": "nyc report --reporter=text-lcov | coveralls" + }, + "dependencies": { + "is-glob": "^4.0.1" + }, + "devDependencies": { + "coveralls": "^3.0.11", + "eslint": "^2.13.1", + "eslint-config-gulp": "^3.0.1", + "expect": "^1.20.2", + "mocha": "^6.0.2", + "nyc": "^13.3.0" + }, + "keywords": [ + "glob", + "parent", + "strip", + "path", + "dirname", + "directory", + "base", + "wildcard" + ] +} diff --git a/node_modules/glob/LICENSE b/node_modules/glob/LICENSE new file mode 100644 index 0000000..39e8fe1 --- /dev/null +++ b/node_modules/glob/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) 2009-2022 Isaac Z. Schlueter and Contributors + +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. diff --git a/node_modules/glob/README.md b/node_modules/glob/README.md new file mode 100644 index 0000000..6293911 --- /dev/null +++ b/node_modules/glob/README.md @@ -0,0 +1,399 @@ +# Glob + +Match files using the patterns the shell uses, like stars and stuff. + +[![Build Status](https://travis-ci.org/isaacs/node-glob.svg?branch=master)](https://travis-ci.org/isaacs/node-glob/) [![Build Status](https://ci.appveyor.com/api/projects/status/kd7f3yftf7unxlsx?svg=true)](https://ci.appveyor.com/project/isaacs/node-glob) [![Coverage Status](https://coveralls.io/repos/isaacs/node-glob/badge.svg?branch=master&service=github)](https://coveralls.io/github/isaacs/node-glob?branch=master) + +This is a glob implementation in JavaScript. It uses the `minimatch` +library to do its matching. + +![a fun cartoon logo made of glob characters](logo/glob.png) + +## Usage + +Install with npm + +``` +npm i glob +``` + +```javascript +var glob = require("glob") + +// options is optional +glob("**/*.js", options, function (er, files) { + // files is an array of filenames. + // If the `nonull` option is set, and nothing + // was found, then files is ["**/*.js"] + // er is an error object or null. +}) +``` + +## Glob Primer + +"Globs" are the patterns you type when you do stuff like `ls *.js` on +the command line, or put `build/*` in a `.gitignore` file. + +Before parsing the path part patterns, braced sections are expanded +into a set. Braced sections start with `{` and end with `}`, with any +number of comma-delimited sections within. Braced sections may contain +slash characters, so `a{/b/c,bcd}` would expand into `a/b/c` and `abcd`. + +The following characters have special magic meaning when used in a +path portion: + +* `*` Matches 0 or more characters in a single path portion +* `?` Matches 1 character +* `[...]` Matches a range of characters, similar to a RegExp range. + If the first character of the range is `!` or `^` then it matches + any character not in the range. +* `!(pattern|pattern|pattern)` Matches anything that does not match + any of the patterns provided. +* `?(pattern|pattern|pattern)` Matches zero or one occurrence of the + patterns provided. +* `+(pattern|pattern|pattern)` Matches one or more occurrences of the + patterns provided. +* `*(a|b|c)` Matches zero or more occurrences of the patterns provided +* `@(pattern|pat*|pat?erN)` Matches exactly one of the patterns + provided +* `**` If a "globstar" is alone in a path portion, then it matches + zero or more directories and subdirectories searching for matches. + It does not crawl symlinked directories. + +### Dots + +If a file or directory path portion has a `.` as the first character, +then it will not match any glob pattern unless that pattern's +corresponding path part also has a `.` as its first character. + +For example, the pattern `a/.*/c` would match the file at `a/.b/c`. +However the pattern `a/*/c` would not, because `*` does not start with +a dot character. + +You can make glob treat dots as normal characters by setting +`dot:true` in the options. + +### Basename Matching + +If you set `matchBase:true` in the options, and the pattern has no +slashes in it, then it will seek for any file anywhere in the tree +with a matching basename. For example, `*.js` would match +`test/simple/basic.js`. + +### Empty Sets + +If no matching files are found, then an empty array is returned. This +differs from the shell, where the pattern itself is returned. For +example: + + $ echo a*s*d*f + a*s*d*f + +To get the bash-style behavior, set the `nonull:true` in the options. + +### See Also: + +* `man sh` +* `man bash` (Search for "Pattern Matching") +* `man 3 fnmatch` +* `man 5 gitignore` +* [minimatch documentation](https://github.com/isaacs/minimatch) + +## glob.hasMagic(pattern, [options]) + +Returns `true` if there are any special characters in the pattern, and +`false` otherwise. + +Note that the options affect the results. If `noext:true` is set in +the options object, then `+(a|b)` will not be considered a magic +pattern. If the pattern has a brace expansion, like `a/{b/c,x/y}` +then that is considered magical, unless `nobrace:true` is set in the +options. + +## glob(pattern, [options], cb) + +* `pattern` `{String}` Pattern to be matched +* `options` `{Object}` +* `cb` `{Function}` + * `err` `{Error | null}` + * `matches` `{Array}` filenames found matching the pattern + +Perform an asynchronous glob search. + +## glob.sync(pattern, [options]) + +* `pattern` `{String}` Pattern to be matched +* `options` `{Object}` +* return: `{Array}` filenames found matching the pattern + +Perform a synchronous glob search. + +## Class: glob.Glob + +Create a Glob object by instantiating the `glob.Glob` class. + +```javascript +var Glob = require("glob").Glob +var mg = new Glob(pattern, options, cb) +``` + +It's an EventEmitter, and starts walking the filesystem to find matches +immediately. + +### new glob.Glob(pattern, [options], [cb]) + +* `pattern` `{String}` pattern to search for +* `options` `{Object}` +* `cb` `{Function}` Called when an error occurs, or matches are found + * `err` `{Error | null}` + * `matches` `{Array}` filenames found matching the pattern + +Note that if the `sync` flag is set in the options, then matches will +be immediately available on the `g.found` member. + +### Properties + +* `minimatch` The minimatch object that the glob uses. +* `options` The options object passed in. +* `aborted` Boolean which is set to true when calling `abort()`. There + is no way at this time to continue a glob search after aborting, but + you can re-use the statCache to avoid having to duplicate syscalls. +* `cache` Convenience object. Each field has the following possible + values: + * `false` - Path does not exist + * `true` - Path exists + * `'FILE'` - Path exists, and is not a directory + * `'DIR'` - Path exists, and is a directory + * `[file, entries, ...]` - Path exists, is a directory, and the + array value is the results of `fs.readdir` +* `statCache` Cache of `fs.stat` results, to prevent statting the same + path multiple times. +* `symlinks` A record of which paths are symbolic links, which is + relevant in resolving `**` patterns. +* `realpathCache` An optional object which is passed to `fs.realpath` + to minimize unnecessary syscalls. It is stored on the instantiated + Glob object, and may be re-used. + +### Events + +* `end` When the matching is finished, this is emitted with all the + matches found. If the `nonull` option is set, and no match was found, + then the `matches` list contains the original pattern. The matches + are sorted, unless the `nosort` flag is set. +* `match` Every time a match is found, this is emitted with the specific + thing that matched. It is not deduplicated or resolved to a realpath. +* `error` Emitted when an unexpected error is encountered, or whenever + any fs error occurs if `options.strict` is set. +* `abort` When `abort()` is called, this event is raised. + +### Methods + +* `pause` Temporarily stop the search +* `resume` Resume the search +* `abort` Stop the search forever + +### Options + +All the options that can be passed to Minimatch can also be passed to +Glob to change pattern matching behavior. Also, some have been added, +or have glob-specific ramifications. + +All options are false by default, unless otherwise noted. + +All options are added to the Glob object, as well. + +If you are running many `glob` operations, you can pass a Glob object +as the `options` argument to a subsequent operation to shortcut some +`stat` and `readdir` calls. At the very least, you may pass in shared +`symlinks`, `statCache`, `realpathCache`, and `cache` options, so that +parallel glob operations will be sped up by sharing information about +the filesystem. + +* `cwd` The current working directory in which to search. Defaults + to `process.cwd()`. This option is always coerced to use + forward-slashes as a path separator, because it is not tested + as a glob pattern, so there is no need to escape anything. +* `root` The place where patterns starting with `/` will be mounted + onto. Defaults to `path.resolve(options.cwd, "/")` (`/` on Unix + systems, and `C:\` or some such on Windows.) This option is + always coerced to use forward-slashes as a path separator, + because it is not tested as a glob pattern, so there is no need + to escape anything. +* `windowsPathsNoEscape` Use `\\` as a path separator _only_, and + _never_ as an escape character. If set, all `\\` characters + are replaced with `/` in the pattern. Note that this makes it + **impossible** to match against paths containing literal glob + pattern characters, but allows matching with patterns constructed + using `path.join()` and `path.resolve()` on Windows platforms, + mimicking the (buggy!) behavior of Glob v7 and before on + Windows. Please use with caution, and be mindful of [the caveat + below about Windows paths](#windows). (For legacy reasons, + this is also set if `allowWindowsEscape` is set to the exact + value `false`.) +* `dot` Include `.dot` files in normal matches and `globstar` matches. + Note that an explicit dot in a portion of the pattern will always + match dot files. +* `nomount` By default, a pattern starting with a forward-slash will be + "mounted" onto the root setting, so that a valid filesystem path is + returned. Set this flag to disable that behavior. +* `mark` Add a `/` character to directory matches. Note that this + requires additional stat calls. +* `nosort` Don't sort the results. +* `stat` Set to true to stat *all* results. This reduces performance + somewhat, and is completely unnecessary, unless `readdir` is presumed + to be an untrustworthy indicator of file existence. +* `silent` When an unusual error is encountered when attempting to + read a directory, a warning will be printed to stderr. Set the + `silent` option to true to suppress these warnings. +* `strict` When an unusual error is encountered when attempting to + read a directory, the process will just continue on in search of + other matches. Set the `strict` option to raise an error in these + cases. +* `cache` See `cache` property above. Pass in a previously generated + cache object to save some fs calls. +* `statCache` A cache of results of filesystem information, to prevent + unnecessary stat calls. While it should not normally be necessary + to set this, you may pass the statCache from one glob() call to the + options object of another, if you know that the filesystem will not + change between calls. (See "Race Conditions" below.) +* `symlinks` A cache of known symbolic links. You may pass in a + previously generated `symlinks` object to save `lstat` calls when + resolving `**` matches. +* `sync` DEPRECATED: use `glob.sync(pattern, opts)` instead. +* `nounique` In some cases, brace-expanded patterns can result in the + same file showing up multiple times in the result set. By default, + this implementation prevents duplicates in the result set. Set this + flag to disable that behavior. +* `nonull` Set to never return an empty set, instead returning a set + containing the pattern itself. This is the default in glob(3). +* `debug` Set to enable debug logging in minimatch and glob. +* `nobrace` Do not expand `{a,b}` and `{1..3}` brace sets. +* `noglobstar` Do not match `**` against multiple filenames. (Ie, + treat it as a normal `*` instead.) +* `noext` Do not match `+(a|b)` "extglob" patterns. +* `nocase` Perform a case-insensitive match. Note: on + case-insensitive filesystems, non-magic patterns will match by + default, since `stat` and `readdir` will not raise errors. +* `matchBase` Perform a basename-only match if the pattern does not + contain any slash characters. That is, `*.js` would be treated as + equivalent to `**/*.js`, matching all js files in all directories. +* `nodir` Do not match directories, only files. (Note: to match + *only* directories, simply put a `/` at the end of the pattern.) +* `ignore` Add a pattern or an array of glob patterns to exclude matches. + Note: `ignore` patterns are *always* in `dot:true` mode, regardless + of any other settings. +* `follow` Follow symlinked directories when expanding `**` patterns. + Note that this can result in a lot of duplicate references in the + presence of cyclic links. +* `realpath` Set to true to call `fs.realpath` on all of the results. + In the case of a symlink that cannot be resolved, the full absolute + path to the matched entry is returned (though it will usually be a + broken symlink) +* `absolute` Set to true to always receive absolute paths for matched + files. Unlike `realpath`, this also affects the values returned in + the `match` event. +* `fs` File-system object with Node's `fs` API. By default, the built-in + `fs` module will be used. Set to a volume provided by a library like + `memfs` to avoid using the "real" file-system. + +## Comparisons to other fnmatch/glob implementations + +While strict compliance with the existing standards is a worthwhile +goal, some discrepancies exist between node-glob and other +implementations, and are intentional. + +The double-star character `**` is supported by default, unless the +`noglobstar` flag is set. This is supported in the manner of bsdglob +and bash 4.3, where `**` only has special significance if it is the only +thing in a path part. That is, `a/**/b` will match `a/x/y/b`, but +`a/**b` will not. + +Note that symlinked directories are not crawled as part of a `**`, +though their contents may match against subsequent portions of the +pattern. This prevents infinite loops and duplicates and the like. + +If an escaped pattern has no matches, and the `nonull` flag is set, +then glob returns the pattern as-provided, rather than +interpreting the character escapes. For example, +`glob.match([], "\\*a\\?")` will return `"\\*a\\?"` rather than +`"*a?"`. This is akin to setting the `nullglob` option in bash, except +that it does not resolve escaped pattern characters. + +If brace expansion is not disabled, then it is performed before any +other interpretation of the glob pattern. Thus, a pattern like +`+(a|{b),c)}`, which would not be valid in bash or zsh, is expanded +**first** into the set of `+(a|b)` and `+(a|c)`, and those patterns are +checked for validity. Since those two are valid, matching proceeds. + +### Comments and Negation + +Previously, this module let you mark a pattern as a "comment" if it +started with a `#` character, or a "negated" pattern if it started +with a `!` character. + +These options were deprecated in version 5, and removed in version 6. + +To specify things that should not match, use the `ignore` option. + +## Windows + +**Please only use forward-slashes in glob expressions.** + +Though windows uses either `/` or `\` as its path separator, only `/` +characters are used by this glob implementation. You must use +forward-slashes **only** in glob expressions. Back-slashes will always +be interpreted as escape characters, not path separators. + +Results from absolute patterns such as `/foo/*` are mounted onto the +root setting using `path.join`. On windows, this will by default result +in `/foo/*` matching `C:\foo\bar.txt`. + +To automatically coerce all `\` characters to `/` in pattern +strings, **thus making it impossible to escape literal glob +characters**, you may set the `windowsPathsNoEscape` option to +`true`. + +## Race Conditions + +Glob searching, by its very nature, is susceptible to race conditions, +since it relies on directory walking and such. + +As a result, it is possible that a file that exists when glob looks for +it may have been deleted or modified by the time it returns the result. + +As part of its internal implementation, this program caches all stat +and readdir calls that it makes, in order to cut down on system +overhead. However, this also makes it even more susceptible to races, +especially if the cache or statCache objects are reused between glob +calls. + +Users are thus advised not to use a glob result as a guarantee of +filesystem state in the face of rapid changes. For the vast majority +of operations, this is never a problem. + +## Glob Logo +Glob's logo was created by [Tanya Brassie](http://tanyabrassie.com/). Logo files can be found [here](https://github.com/isaacs/node-glob/tree/master/logo). + +The logo is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-sa/4.0/). + +## Contributing + +Any change to behavior (including bugfixes) must come with a test. + +Patches that fail tests or reduce performance will be rejected. + +``` +# to run tests +npm test + +# to re-generate test fixtures +npm run test-regen + +# to benchmark against bash/zsh +npm run bench + +# to profile javascript +npm run prof +``` + +![](oh-my-glob.gif) diff --git a/node_modules/glob/common.js b/node_modules/glob/common.js new file mode 100644 index 0000000..61a4452 --- /dev/null +++ b/node_modules/glob/common.js @@ -0,0 +1,244 @@ +exports.setopts = setopts +exports.ownProp = ownProp +exports.makeAbs = makeAbs +exports.finish = finish +exports.mark = mark +exports.isIgnored = isIgnored +exports.childrenIgnored = childrenIgnored + +function ownProp (obj, field) { + return Object.prototype.hasOwnProperty.call(obj, field) +} + +var fs = require("fs") +var path = require("path") +var minimatch = require("minimatch") +var isAbsolute = require("path").isAbsolute +var Minimatch = minimatch.Minimatch + +function alphasort (a, b) { + return a.localeCompare(b, 'en') +} + +function setupIgnores (self, options) { + self.ignore = options.ignore || [] + + if (!Array.isArray(self.ignore)) + self.ignore = [self.ignore] + + if (self.ignore.length) { + self.ignore = self.ignore.map(ignoreMap) + } +} + +// ignore patterns are always in dot:true mode. +function ignoreMap (pattern) { + var gmatcher = null + if (pattern.slice(-3) === '/**') { + var gpattern = pattern.replace(/(\/\*\*)+$/, '') + gmatcher = new Minimatch(gpattern, { dot: true }) + } + + return { + matcher: new Minimatch(pattern, { dot: true }), + gmatcher: gmatcher + } +} + +function setopts (self, pattern, options) { + if (!options) + options = {} + + // base-matching: just use globstar for that. + if (options.matchBase && -1 === pattern.indexOf("/")) { + if (options.noglobstar) { + throw new Error("base matching requires globstar") + } + pattern = "**/" + pattern + } + + self.windowsPathsNoEscape = !!options.windowsPathsNoEscape || + options.allowWindowsEscape === false + if (self.windowsPathsNoEscape) { + pattern = pattern.replace(/\\/g, '/') + } + + self.silent = !!options.silent + self.pattern = pattern + self.strict = options.strict !== false + self.realpath = !!options.realpath + self.realpathCache = options.realpathCache || Object.create(null) + self.follow = !!options.follow + self.dot = !!options.dot + self.mark = !!options.mark + self.nodir = !!options.nodir + if (self.nodir) + self.mark = true + self.sync = !!options.sync + self.nounique = !!options.nounique + self.nonull = !!options.nonull + self.nosort = !!options.nosort + self.nocase = !!options.nocase + self.stat = !!options.stat + self.noprocess = !!options.noprocess + self.absolute = !!options.absolute + self.fs = options.fs || fs + + self.maxLength = options.maxLength || Infinity + self.cache = options.cache || Object.create(null) + self.statCache = options.statCache || Object.create(null) + self.symlinks = options.symlinks || Object.create(null) + + setupIgnores(self, options) + + self.changedCwd = false + var cwd = process.cwd() + if (!ownProp(options, "cwd")) + self.cwd = path.resolve(cwd) + else { + self.cwd = path.resolve(options.cwd) + self.changedCwd = self.cwd !== cwd + } + + self.root = options.root || path.resolve(self.cwd, "/") + self.root = path.resolve(self.root) + + // TODO: is an absolute `cwd` supposed to be resolved against `root`? + // e.g. { cwd: '/test', root: __dirname } === path.join(__dirname, '/test') + self.cwdAbs = isAbsolute(self.cwd) ? self.cwd : makeAbs(self, self.cwd) + self.nomount = !!options.nomount + + if (process.platform === "win32") { + self.root = self.root.replace(/\\/g, "/") + self.cwd = self.cwd.replace(/\\/g, "/") + self.cwdAbs = self.cwdAbs.replace(/\\/g, "/") + } + + // disable comments and negation in Minimatch. + // Note that they are not supported in Glob itself anyway. + options.nonegate = true + options.nocomment = true + + self.minimatch = new Minimatch(pattern, options) + self.options = self.minimatch.options +} + +function finish (self) { + var nou = self.nounique + var all = nou ? [] : Object.create(null) + + for (var i = 0, l = self.matches.length; i < l; i ++) { + var matches = self.matches[i] + if (!matches || Object.keys(matches).length === 0) { + if (self.nonull) { + // do like the shell, and spit out the literal glob + var literal = self.minimatch.globSet[i] + if (nou) + all.push(literal) + else + all[literal] = true + } + } else { + // had matches + var m = Object.keys(matches) + if (nou) + all.push.apply(all, m) + else + m.forEach(function (m) { + all[m] = true + }) + } + } + + if (!nou) + all = Object.keys(all) + + if (!self.nosort) + all = all.sort(alphasort) + + // at *some* point we statted all of these + if (self.mark) { + for (var i = 0; i < all.length; i++) { + all[i] = self._mark(all[i]) + } + if (self.nodir) { + all = all.filter(function (e) { + var notDir = !(/\/$/.test(e)) + var c = self.cache[e] || self.cache[makeAbs(self, e)] + if (notDir && c) + notDir = c !== 'DIR' && !Array.isArray(c) + return notDir + }) + } + } + + if (self.ignore.length) + all = all.filter(function(m) { + return !isIgnored(self, m) + }) + + self.found = all +} + +function mark (self, p) { + var abs = makeAbs(self, p) + var c = self.cache[abs] + var m = p + if (c) { + var isDir = c === 'DIR' || Array.isArray(c) + var slash = p.slice(-1) === '/' + + if (isDir && !slash) + m += '/' + else if (!isDir && slash) + m = m.slice(0, -1) + + if (m !== p) { + var mabs = makeAbs(self, m) + self.statCache[mabs] = self.statCache[abs] + self.cache[mabs] = self.cache[abs] + } + } + + return m +} + +// lotta situps... +function makeAbs (self, f) { + var abs = f + if (f.charAt(0) === '/') { + abs = path.join(self.root, f) + } else if (isAbsolute(f) || f === '') { + abs = f + } else if (self.changedCwd) { + abs = path.resolve(self.cwd, f) + } else { + abs = path.resolve(f) + } + + if (process.platform === 'win32') + abs = abs.replace(/\\/g, '/') + + return abs +} + + +// Return true, if pattern ends with globstar '**', for the accompanying parent directory. +// Ex:- If node_modules/** is the pattern, add 'node_modules' to ignore list along with it's contents +function isIgnored (self, path) { + if (!self.ignore.length) + return false + + return self.ignore.some(function(item) { + return item.matcher.match(path) || !!(item.gmatcher && item.gmatcher.match(path)) + }) +} + +function childrenIgnored (self, path) { + if (!self.ignore.length) + return false + + return self.ignore.some(function(item) { + return !!(item.gmatcher && item.gmatcher.match(path)) + }) +} diff --git a/node_modules/glob/glob.js b/node_modules/glob/glob.js new file mode 100644 index 0000000..2112a95 --- /dev/null +++ b/node_modules/glob/glob.js @@ -0,0 +1,790 @@ +// Approach: +// +// 1. Get the minimatch set +// 2. For each pattern in the set, PROCESS(pattern, false) +// 3. Store matches per-set, then uniq them +// +// PROCESS(pattern, inGlobStar) +// Get the first [n] items from pattern that are all strings +// Join these together. This is PREFIX. +// If there is no more remaining, then stat(PREFIX) and +// add to matches if it succeeds. END. +// +// If inGlobStar and PREFIX is symlink and points to dir +// set ENTRIES = [] +// else readdir(PREFIX) as ENTRIES +// If fail, END +// +// with ENTRIES +// If pattern[n] is GLOBSTAR +// // handle the case where the globstar match is empty +// // by pruning it out, and testing the resulting pattern +// PROCESS(pattern[0..n] + pattern[n+1 .. $], false) +// // handle other cases. +// for ENTRY in ENTRIES (not dotfiles) +// // attach globstar + tail onto the entry +// // Mark that this entry is a globstar match +// PROCESS(pattern[0..n] + ENTRY + pattern[n .. $], true) +// +// else // not globstar +// for ENTRY in ENTRIES (not dotfiles, unless pattern[n] is dot) +// Test ENTRY against pattern[n] +// If fails, continue +// If passes, PROCESS(pattern[0..n] + item + pattern[n+1 .. $]) +// +// Caveat: +// Cache all stats and readdirs results to minimize syscall. Since all +// we ever care about is existence and directory-ness, we can just keep +// `true` for files, and [children,...] for directories, or `false` for +// things that don't exist. + +module.exports = glob + +var rp = require('fs.realpath') +var minimatch = require('minimatch') +var Minimatch = minimatch.Minimatch +var inherits = require('inherits') +var EE = require('events').EventEmitter +var path = require('path') +var assert = require('assert') +var isAbsolute = require('path').isAbsolute +var globSync = require('./sync.js') +var common = require('./common.js') +var setopts = common.setopts +var ownProp = common.ownProp +var inflight = require('inflight') +var util = require('util') +var childrenIgnored = common.childrenIgnored +var isIgnored = common.isIgnored + +var once = require('once') + +function glob (pattern, options, cb) { + if (typeof options === 'function') cb = options, options = {} + if (!options) options = {} + + if (options.sync) { + if (cb) + throw new TypeError('callback provided to sync glob') + return globSync(pattern, options) + } + + return new Glob(pattern, options, cb) +} + +glob.sync = globSync +var GlobSync = glob.GlobSync = globSync.GlobSync + +// old api surface +glob.glob = glob + +function extend (origin, add) { + if (add === null || typeof add !== 'object') { + return origin + } + + var keys = Object.keys(add) + var i = keys.length + while (i--) { + origin[keys[i]] = add[keys[i]] + } + return origin +} + +glob.hasMagic = function (pattern, options_) { + var options = extend({}, options_) + options.noprocess = true + + var g = new Glob(pattern, options) + var set = g.minimatch.set + + if (!pattern) + return false + + if (set.length > 1) + return true + + for (var j = 0; j < set[0].length; j++) { + if (typeof set[0][j] !== 'string') + return true + } + + return false +} + +glob.Glob = Glob +inherits(Glob, EE) +function Glob (pattern, options, cb) { + if (typeof options === 'function') { + cb = options + options = null + } + + if (options && options.sync) { + if (cb) + throw new TypeError('callback provided to sync glob') + return new GlobSync(pattern, options) + } + + if (!(this instanceof Glob)) + return new Glob(pattern, options, cb) + + setopts(this, pattern, options) + this._didRealPath = false + + // process each pattern in the minimatch set + var n = this.minimatch.set.length + + // The matches are stored as {: true,...} so that + // duplicates are automagically pruned. + // Later, we do an Object.keys() on these. + // Keep them as a list so we can fill in when nonull is set. + this.matches = new Array(n) + + if (typeof cb === 'function') { + cb = once(cb) + this.on('error', cb) + this.on('end', function (matches) { + cb(null, matches) + }) + } + + var self = this + this._processing = 0 + + this._emitQueue = [] + this._processQueue = [] + this.paused = false + + if (this.noprocess) + return this + + if (n === 0) + return done() + + var sync = true + for (var i = 0; i < n; i ++) { + this._process(this.minimatch.set[i], i, false, done) + } + sync = false + + function done () { + --self._processing + if (self._processing <= 0) { + if (sync) { + process.nextTick(function () { + self._finish() + }) + } else { + self._finish() + } + } + } +} + +Glob.prototype._finish = function () { + assert(this instanceof Glob) + if (this.aborted) + return + + if (this.realpath && !this._didRealpath) + return this._realpath() + + common.finish(this) + this.emit('end', this.found) +} + +Glob.prototype._realpath = function () { + if (this._didRealpath) + return + + this._didRealpath = true + + var n = this.matches.length + if (n === 0) + return this._finish() + + var self = this + for (var i = 0; i < this.matches.length; i++) + this._realpathSet(i, next) + + function next () { + if (--n === 0) + self._finish() + } +} + +Glob.prototype._realpathSet = function (index, cb) { + var matchset = this.matches[index] + if (!matchset) + return cb() + + var found = Object.keys(matchset) + var self = this + var n = found.length + + if (n === 0) + return cb() + + var set = this.matches[index] = Object.create(null) + found.forEach(function (p, i) { + // If there's a problem with the stat, then it means that + // one or more of the links in the realpath couldn't be + // resolved. just return the abs value in that case. + p = self._makeAbs(p) + rp.realpath(p, self.realpathCache, function (er, real) { + if (!er) + set[real] = true + else if (er.syscall === 'stat') + set[p] = true + else + self.emit('error', er) // srsly wtf right here + + if (--n === 0) { + self.matches[index] = set + cb() + } + }) + }) +} + +Glob.prototype._mark = function (p) { + return common.mark(this, p) +} + +Glob.prototype._makeAbs = function (f) { + return common.makeAbs(this, f) +} + +Glob.prototype.abort = function () { + this.aborted = true + this.emit('abort') +} + +Glob.prototype.pause = function () { + if (!this.paused) { + this.paused = true + this.emit('pause') + } +} + +Glob.prototype.resume = function () { + if (this.paused) { + this.emit('resume') + this.paused = false + if (this._emitQueue.length) { + var eq = this._emitQueue.slice(0) + this._emitQueue.length = 0 + for (var i = 0; i < eq.length; i ++) { + var e = eq[i] + this._emitMatch(e[0], e[1]) + } + } + if (this._processQueue.length) { + var pq = this._processQueue.slice(0) + this._processQueue.length = 0 + for (var i = 0; i < pq.length; i ++) { + var p = pq[i] + this._processing-- + this._process(p[0], p[1], p[2], p[3]) + } + } + } +} + +Glob.prototype._process = function (pattern, index, inGlobStar, cb) { + assert(this instanceof Glob) + assert(typeof cb === 'function') + + if (this.aborted) + return + + this._processing++ + if (this.paused) { + this._processQueue.push([pattern, index, inGlobStar, cb]) + return + } + + //console.error('PROCESS %d', this._processing, pattern) + + // Get the first [n] parts of pattern that are all strings. + var n = 0 + while (typeof pattern[n] === 'string') { + n ++ + } + // now n is the index of the first one that is *not* a string. + + // see if there's anything else + var prefix + switch (n) { + // if not, then this is rather simple + case pattern.length: + this._processSimple(pattern.join('/'), index, cb) + return + + case 0: + // pattern *starts* with some non-trivial item. + // going to readdir(cwd), but not include the prefix in matches. + prefix = null + break + + default: + // pattern has some string bits in the front. + // whatever it starts with, whether that's 'absolute' like /foo/bar, + // or 'relative' like '../baz' + prefix = pattern.slice(0, n).join('/') + break + } + + var remain = pattern.slice(n) + + // get the list of entries. + var read + if (prefix === null) + read = '.' + else if (isAbsolute(prefix) || + isAbsolute(pattern.map(function (p) { + return typeof p === 'string' ? p : '[*]' + }).join('/'))) { + if (!prefix || !isAbsolute(prefix)) + prefix = '/' + prefix + read = prefix + } else + read = prefix + + var abs = this._makeAbs(read) + + //if ignored, skip _processing + if (childrenIgnored(this, read)) + return cb() + + var isGlobStar = remain[0] === minimatch.GLOBSTAR + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb) + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb) +} + +Glob.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar, cb) { + var self = this + this._readdir(abs, inGlobStar, function (er, entries) { + return self._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb) + }) +} + +Glob.prototype._processReaddir2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) { + + // if the abs isn't a dir, then nothing can match! + if (!entries) + return cb() + + // It will only match dot entries if it starts with a dot, or if + // dot is set. Stuff like @(.foo|.bar) isn't allowed. + var pn = remain[0] + var negate = !!this.minimatch.negate + var rawGlob = pn._glob + var dotOk = this.dot || rawGlob.charAt(0) === '.' + + var matchedEntries = [] + for (var i = 0; i < entries.length; i++) { + var e = entries[i] + if (e.charAt(0) !== '.' || dotOk) { + var m + if (negate && !prefix) { + m = !e.match(pn) + } else { + m = e.match(pn) + } + if (m) + matchedEntries.push(e) + } + } + + //console.error('prd2', prefix, entries, remain[0]._glob, matchedEntries) + + var len = matchedEntries.length + // If there are no matched entries, then nothing matches. + if (len === 0) + return cb() + + // if this is the last remaining pattern bit, then no need for + // an additional stat *unless* the user has specified mark or + // stat explicitly. We know they exist, since readdir returned + // them. + + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + if (prefix) { + if (prefix !== '/') + e = prefix + '/' + e + else + e = prefix + e + } + + if (e.charAt(0) === '/' && !this.nomount) { + e = path.join(this.root, e) + } + this._emitMatch(index, e) + } + // This was the last one, and no stats were needed + return cb() + } + + // now test all matched entries as stand-ins for that part + // of the pattern. + remain.shift() + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + var newPattern + if (prefix) { + if (prefix !== '/') + e = prefix + '/' + e + else + e = prefix + e + } + this._process([e].concat(remain), index, inGlobStar, cb) + } + cb() +} + +Glob.prototype._emitMatch = function (index, e) { + if (this.aborted) + return + + if (isIgnored(this, e)) + return + + if (this.paused) { + this._emitQueue.push([index, e]) + return + } + + var abs = isAbsolute(e) ? e : this._makeAbs(e) + + if (this.mark) + e = this._mark(e) + + if (this.absolute) + e = abs + + if (this.matches[index][e]) + return + + if (this.nodir) { + var c = this.cache[abs] + if (c === 'DIR' || Array.isArray(c)) + return + } + + this.matches[index][e] = true + + var st = this.statCache[abs] + if (st) + this.emit('stat', e, st) + + this.emit('match', e) +} + +Glob.prototype._readdirInGlobStar = function (abs, cb) { + if (this.aborted) + return + + // follow all symlinked directories forever + // just proceed as if this is a non-globstar situation + if (this.follow) + return this._readdir(abs, false, cb) + + var lstatkey = 'lstat\0' + abs + var self = this + var lstatcb = inflight(lstatkey, lstatcb_) + + if (lstatcb) + self.fs.lstat(abs, lstatcb) + + function lstatcb_ (er, lstat) { + if (er && er.code === 'ENOENT') + return cb() + + var isSym = lstat && lstat.isSymbolicLink() + self.symlinks[abs] = isSym + + // If it's not a symlink or a dir, then it's definitely a regular file. + // don't bother doing a readdir in that case. + if (!isSym && lstat && !lstat.isDirectory()) { + self.cache[abs] = 'FILE' + cb() + } else + self._readdir(abs, false, cb) + } +} + +Glob.prototype._readdir = function (abs, inGlobStar, cb) { + if (this.aborted) + return + + cb = inflight('readdir\0'+abs+'\0'+inGlobStar, cb) + if (!cb) + return + + //console.error('RD %j %j', +inGlobStar, abs) + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs, cb) + + if (ownProp(this.cache, abs)) { + var c = this.cache[abs] + if (!c || c === 'FILE') + return cb() + + if (Array.isArray(c)) + return cb(null, c) + } + + var self = this + self.fs.readdir(abs, readdirCb(this, abs, cb)) +} + +function readdirCb (self, abs, cb) { + return function (er, entries) { + if (er) + self._readdirError(abs, er, cb) + else + self._readdirEntries(abs, entries, cb) + } +} + +Glob.prototype._readdirEntries = function (abs, entries, cb) { + if (this.aborted) + return + + // if we haven't asked to stat everything, then just + // assume that everything in there exists, so we can avoid + // having to stat it a second time. + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i ++) { + var e = entries[i] + if (abs === '/') + e = abs + e + else + e = abs + '/' + e + this.cache[e] = true + } + } + + this.cache[abs] = entries + return cb(null, entries) +} + +Glob.prototype._readdirError = function (f, er, cb) { + if (this.aborted) + return + + // handle errors, and cache the information + switch (er.code) { + case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205 + case 'ENOTDIR': // totally normal. means it *does* exist. + var abs = this._makeAbs(f) + this.cache[abs] = 'FILE' + if (abs === this.cwdAbs) { + var error = new Error(er.code + ' invalid cwd ' + this.cwd) + error.path = this.cwd + error.code = er.code + this.emit('error', error) + this.abort() + } + break + + case 'ENOENT': // not terribly unusual + case 'ELOOP': + case 'ENAMETOOLONG': + case 'UNKNOWN': + this.cache[this._makeAbs(f)] = false + break + + default: // some unusual error. Treat as failure. + this.cache[this._makeAbs(f)] = false + if (this.strict) { + this.emit('error', er) + // If the error is handled, then we abort + // if not, we threw out of here + this.abort() + } + if (!this.silent) + console.error('glob error', er) + break + } + + return cb() +} + +Glob.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar, cb) { + var self = this + this._readdir(abs, inGlobStar, function (er, entries) { + self._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb) + }) +} + + +Glob.prototype._processGlobStar2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) { + //console.error('pgs2', prefix, remain[0], entries) + + // no entries means not a dir, so it can never have matches + // foo.txt/** doesn't match foo.txt + if (!entries) + return cb() + + // test without the globstar, and with every child both below + // and replacing the globstar. + var remainWithoutGlobStar = remain.slice(1) + var gspref = prefix ? [ prefix ] : [] + var noGlobStar = gspref.concat(remainWithoutGlobStar) + + // the noGlobStar pattern exits the inGlobStar state + this._process(noGlobStar, index, false, cb) + + var isSym = this.symlinks[abs] + var len = entries.length + + // If it's a symlink, and we're in a globstar, then stop + if (isSym && inGlobStar) + return cb() + + for (var i = 0; i < len; i++) { + var e = entries[i] + if (e.charAt(0) === '.' && !this.dot) + continue + + // these two cases enter the inGlobStar state + var instead = gspref.concat(entries[i], remainWithoutGlobStar) + this._process(instead, index, true, cb) + + var below = gspref.concat(entries[i], remain) + this._process(below, index, true, cb) + } + + cb() +} + +Glob.prototype._processSimple = function (prefix, index, cb) { + // XXX review this. Shouldn't it be doing the mounting etc + // before doing stat? kinda weird? + var self = this + this._stat(prefix, function (er, exists) { + self._processSimple2(prefix, index, er, exists, cb) + }) +} +Glob.prototype._processSimple2 = function (prefix, index, er, exists, cb) { + + //console.error('ps2', prefix, exists) + + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + // If it doesn't exist, then just mark the lack of results + if (!exists) + return cb() + + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix) + if (prefix.charAt(0) === '/') { + prefix = path.join(this.root, prefix) + } else { + prefix = path.resolve(this.root, prefix) + if (trail) + prefix += '/' + } + } + + if (process.platform === 'win32') + prefix = prefix.replace(/\\/g, '/') + + // Mark this as a match + this._emitMatch(index, prefix) + cb() +} + +// Returns either 'DIR', 'FILE', or false +Glob.prototype._stat = function (f, cb) { + var abs = this._makeAbs(f) + var needDir = f.slice(-1) === '/' + + if (f.length > this.maxLength) + return cb() + + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs] + + if (Array.isArray(c)) + c = 'DIR' + + // It exists, but maybe not how we need it + if (!needDir || c === 'DIR') + return cb(null, c) + + if (needDir && c === 'FILE') + return cb() + + // otherwise we have to stat, because maybe c=true + // if we know it exists, but not what it is. + } + + var exists + var stat = this.statCache[abs] + if (stat !== undefined) { + if (stat === false) + return cb(null, stat) + else { + var type = stat.isDirectory() ? 'DIR' : 'FILE' + if (needDir && type === 'FILE') + return cb() + else + return cb(null, type, stat) + } + } + + var self = this + var statcb = inflight('stat\0' + abs, lstatcb_) + if (statcb) + self.fs.lstat(abs, statcb) + + function lstatcb_ (er, lstat) { + if (lstat && lstat.isSymbolicLink()) { + // If it's a symlink, then treat it as the target, unless + // the target does not exist, then treat it as a file. + return self.fs.stat(abs, function (er, stat) { + if (er) + self._stat2(f, abs, null, lstat, cb) + else + self._stat2(f, abs, er, stat, cb) + }) + } else { + self._stat2(f, abs, er, lstat, cb) + } + } +} + +Glob.prototype._stat2 = function (f, abs, er, stat, cb) { + if (er && (er.code === 'ENOENT' || er.code === 'ENOTDIR')) { + this.statCache[abs] = false + return cb() + } + + var needDir = f.slice(-1) === '/' + this.statCache[abs] = stat + + if (abs.slice(-1) === '/' && stat && !stat.isDirectory()) + return cb(null, false, stat) + + var c = true + if (stat) + c = stat.isDirectory() ? 'DIR' : 'FILE' + this.cache[abs] = this.cache[abs] || c + + if (needDir && c === 'FILE') + return cb() + + return cb(null, c, stat) +} diff --git a/node_modules/glob/package.json b/node_modules/glob/package.json new file mode 100644 index 0000000..ca0fd91 --- /dev/null +++ b/node_modules/glob/package.json @@ -0,0 +1,55 @@ +{ + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "name": "glob", + "description": "a little globber", + "version": "8.1.0", + "repository": { + "type": "git", + "url": "git://github.com/isaacs/node-glob.git" + }, + "main": "glob.js", + "files": [ + "glob.js", + "sync.js", + "common.js" + ], + "engines": { + "node": ">=12" + }, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "devDependencies": { + "memfs": "^3.2.0", + "mkdirp": "0", + "rimraf": "^2.2.8", + "tap": "^16.0.1", + "tick": "0.0.6" + }, + "tap": { + "before": "test/00-setup.js", + "after": "test/zz-cleanup.js", + "statements": 90, + "branches": 90, + "functions": 90, + "lines": 90, + "jobs": 1 + }, + "scripts": { + "prepublish": "npm run benchclean", + "profclean": "rm -f v8.log profile.txt", + "test": "tap", + "test-regen": "npm run profclean && TEST_REGEN=1 node test/00-setup.js", + "bench": "bash benchmark.sh", + "prof": "bash prof.sh && cat profile.txt", + "benchclean": "node benchclean.js" + }, + "license": "ISC", + "funding": { + "url": "https://github.com/sponsors/isaacs" + } +} diff --git a/node_modules/glob/sync.js b/node_modules/glob/sync.js new file mode 100644 index 0000000..af4600d --- /dev/null +++ b/node_modules/glob/sync.js @@ -0,0 +1,486 @@ +module.exports = globSync +globSync.GlobSync = GlobSync + +var rp = require('fs.realpath') +var minimatch = require('minimatch') +var Minimatch = minimatch.Minimatch +var Glob = require('./glob.js').Glob +var util = require('util') +var path = require('path') +var assert = require('assert') +var isAbsolute = require('path').isAbsolute +var common = require('./common.js') +var setopts = common.setopts +var ownProp = common.ownProp +var childrenIgnored = common.childrenIgnored +var isIgnored = common.isIgnored + +function globSync (pattern, options) { + if (typeof options === 'function' || arguments.length === 3) + throw new TypeError('callback provided to sync glob\n'+ + 'See: https://github.com/isaacs/node-glob/issues/167') + + return new GlobSync(pattern, options).found +} + +function GlobSync (pattern, options) { + if (!pattern) + throw new Error('must provide pattern') + + if (typeof options === 'function' || arguments.length === 3) + throw new TypeError('callback provided to sync glob\n'+ + 'See: https://github.com/isaacs/node-glob/issues/167') + + if (!(this instanceof GlobSync)) + return new GlobSync(pattern, options) + + setopts(this, pattern, options) + + if (this.noprocess) + return this + + var n = this.minimatch.set.length + this.matches = new Array(n) + for (var i = 0; i < n; i ++) { + this._process(this.minimatch.set[i], i, false) + } + this._finish() +} + +GlobSync.prototype._finish = function () { + assert.ok(this instanceof GlobSync) + if (this.realpath) { + var self = this + this.matches.forEach(function (matchset, index) { + var set = self.matches[index] = Object.create(null) + for (var p in matchset) { + try { + p = self._makeAbs(p) + var real = rp.realpathSync(p, self.realpathCache) + set[real] = true + } catch (er) { + if (er.syscall === 'stat') + set[self._makeAbs(p)] = true + else + throw er + } + } + }) + } + common.finish(this) +} + + +GlobSync.prototype._process = function (pattern, index, inGlobStar) { + assert.ok(this instanceof GlobSync) + + // Get the first [n] parts of pattern that are all strings. + var n = 0 + while (typeof pattern[n] === 'string') { + n ++ + } + // now n is the index of the first one that is *not* a string. + + // See if there's anything else + var prefix + switch (n) { + // if not, then this is rather simple + case pattern.length: + this._processSimple(pattern.join('/'), index) + return + + case 0: + // pattern *starts* with some non-trivial item. + // going to readdir(cwd), but not include the prefix in matches. + prefix = null + break + + default: + // pattern has some string bits in the front. + // whatever it starts with, whether that's 'absolute' like /foo/bar, + // or 'relative' like '../baz' + prefix = pattern.slice(0, n).join('/') + break + } + + var remain = pattern.slice(n) + + // get the list of entries. + var read + if (prefix === null) + read = '.' + else if (isAbsolute(prefix) || + isAbsolute(pattern.map(function (p) { + return typeof p === 'string' ? p : '[*]' + }).join('/'))) { + if (!prefix || !isAbsolute(prefix)) + prefix = '/' + prefix + read = prefix + } else + read = prefix + + var abs = this._makeAbs(read) + + //if ignored, skip processing + if (childrenIgnored(this, read)) + return + + var isGlobStar = remain[0] === minimatch.GLOBSTAR + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar) + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar) +} + + +GlobSync.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar) + + // if the abs isn't a dir, then nothing can match! + if (!entries) + return + + // It will only match dot entries if it starts with a dot, or if + // dot is set. Stuff like @(.foo|.bar) isn't allowed. + var pn = remain[0] + var negate = !!this.minimatch.negate + var rawGlob = pn._glob + var dotOk = this.dot || rawGlob.charAt(0) === '.' + + var matchedEntries = [] + for (var i = 0; i < entries.length; i++) { + var e = entries[i] + if (e.charAt(0) !== '.' || dotOk) { + var m + if (negate && !prefix) { + m = !e.match(pn) + } else { + m = e.match(pn) + } + if (m) + matchedEntries.push(e) + } + } + + var len = matchedEntries.length + // If there are no matched entries, then nothing matches. + if (len === 0) + return + + // if this is the last remaining pattern bit, then no need for + // an additional stat *unless* the user has specified mark or + // stat explicitly. We know they exist, since readdir returned + // them. + + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + if (prefix) { + if (prefix.slice(-1) !== '/') + e = prefix + '/' + e + else + e = prefix + e + } + + if (e.charAt(0) === '/' && !this.nomount) { + e = path.join(this.root, e) + } + this._emitMatch(index, e) + } + // This was the last one, and no stats were needed + return + } + + // now test all matched entries as stand-ins for that part + // of the pattern. + remain.shift() + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + var newPattern + if (prefix) + newPattern = [prefix, e] + else + newPattern = [e] + this._process(newPattern.concat(remain), index, inGlobStar) + } +} + + +GlobSync.prototype._emitMatch = function (index, e) { + if (isIgnored(this, e)) + return + + var abs = this._makeAbs(e) + + if (this.mark) + e = this._mark(e) + + if (this.absolute) { + e = abs + } + + if (this.matches[index][e]) + return + + if (this.nodir) { + var c = this.cache[abs] + if (c === 'DIR' || Array.isArray(c)) + return + } + + this.matches[index][e] = true + + if (this.stat) + this._stat(e) +} + + +GlobSync.prototype._readdirInGlobStar = function (abs) { + // follow all symlinked directories forever + // just proceed as if this is a non-globstar situation + if (this.follow) + return this._readdir(abs, false) + + var entries + var lstat + var stat + try { + lstat = this.fs.lstatSync(abs) + } catch (er) { + if (er.code === 'ENOENT') { + // lstat failed, doesn't exist + return null + } + } + + var isSym = lstat && lstat.isSymbolicLink() + this.symlinks[abs] = isSym + + // If it's not a symlink or a dir, then it's definitely a regular file. + // don't bother doing a readdir in that case. + if (!isSym && lstat && !lstat.isDirectory()) + this.cache[abs] = 'FILE' + else + entries = this._readdir(abs, false) + + return entries +} + +GlobSync.prototype._readdir = function (abs, inGlobStar) { + var entries + + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs) + + if (ownProp(this.cache, abs)) { + var c = this.cache[abs] + if (!c || c === 'FILE') + return null + + if (Array.isArray(c)) + return c + } + + try { + return this._readdirEntries(abs, this.fs.readdirSync(abs)) + } catch (er) { + this._readdirError(abs, er) + return null + } +} + +GlobSync.prototype._readdirEntries = function (abs, entries) { + // if we haven't asked to stat everything, then just + // assume that everything in there exists, so we can avoid + // having to stat it a second time. + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i ++) { + var e = entries[i] + if (abs === '/') + e = abs + e + else + e = abs + '/' + e + this.cache[e] = true + } + } + + this.cache[abs] = entries + + // mark and cache dir-ness + return entries +} + +GlobSync.prototype._readdirError = function (f, er) { + // handle errors, and cache the information + switch (er.code) { + case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205 + case 'ENOTDIR': // totally normal. means it *does* exist. + var abs = this._makeAbs(f) + this.cache[abs] = 'FILE' + if (abs === this.cwdAbs) { + var error = new Error(er.code + ' invalid cwd ' + this.cwd) + error.path = this.cwd + error.code = er.code + throw error + } + break + + case 'ENOENT': // not terribly unusual + case 'ELOOP': + case 'ENAMETOOLONG': + case 'UNKNOWN': + this.cache[this._makeAbs(f)] = false + break + + default: // some unusual error. Treat as failure. + this.cache[this._makeAbs(f)] = false + if (this.strict) + throw er + if (!this.silent) + console.error('glob error', er) + break + } +} + +GlobSync.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar) { + + var entries = this._readdir(abs, inGlobStar) + + // no entries means not a dir, so it can never have matches + // foo.txt/** doesn't match foo.txt + if (!entries) + return + + // test without the globstar, and with every child both below + // and replacing the globstar. + var remainWithoutGlobStar = remain.slice(1) + var gspref = prefix ? [ prefix ] : [] + var noGlobStar = gspref.concat(remainWithoutGlobStar) + + // the noGlobStar pattern exits the inGlobStar state + this._process(noGlobStar, index, false) + + var len = entries.length + var isSym = this.symlinks[abs] + + // If it's a symlink, and we're in a globstar, then stop + if (isSym && inGlobStar) + return + + for (var i = 0; i < len; i++) { + var e = entries[i] + if (e.charAt(0) === '.' && !this.dot) + continue + + // these two cases enter the inGlobStar state + var instead = gspref.concat(entries[i], remainWithoutGlobStar) + this._process(instead, index, true) + + var below = gspref.concat(entries[i], remain) + this._process(below, index, true) + } +} + +GlobSync.prototype._processSimple = function (prefix, index) { + // XXX review this. Shouldn't it be doing the mounting etc + // before doing stat? kinda weird? + var exists = this._stat(prefix) + + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + // If it doesn't exist, then just mark the lack of results + if (!exists) + return + + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix) + if (prefix.charAt(0) === '/') { + prefix = path.join(this.root, prefix) + } else { + prefix = path.resolve(this.root, prefix) + if (trail) + prefix += '/' + } + } + + if (process.platform === 'win32') + prefix = prefix.replace(/\\/g, '/') + + // Mark this as a match + this._emitMatch(index, prefix) +} + +// Returns either 'DIR', 'FILE', or false +GlobSync.prototype._stat = function (f) { + var abs = this._makeAbs(f) + var needDir = f.slice(-1) === '/' + + if (f.length > this.maxLength) + return false + + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs] + + if (Array.isArray(c)) + c = 'DIR' + + // It exists, but maybe not how we need it + if (!needDir || c === 'DIR') + return c + + if (needDir && c === 'FILE') + return false + + // otherwise we have to stat, because maybe c=true + // if we know it exists, but not what it is. + } + + var exists + var stat = this.statCache[abs] + if (!stat) { + var lstat + try { + lstat = this.fs.lstatSync(abs) + } catch (er) { + if (er && (er.code === 'ENOENT' || er.code === 'ENOTDIR')) { + this.statCache[abs] = false + return false + } + } + + if (lstat && lstat.isSymbolicLink()) { + try { + stat = this.fs.statSync(abs) + } catch (er) { + stat = lstat + } + } else { + stat = lstat + } + } + + this.statCache[abs] = stat + + var c = true + if (stat) + c = stat.isDirectory() ? 'DIR' : 'FILE' + + this.cache[abs] = this.cache[abs] || c + + if (needDir && c === 'FILE') + return false + + return c +} + +GlobSync.prototype._mark = function (p) { + return common.mark(this, p) +} + +GlobSync.prototype._makeAbs = function (f) { + return common.makeAbs(this, f) +} diff --git a/node_modules/globby/ignore.js b/node_modules/globby/ignore.js new file mode 100644 index 0000000..3d8e1a8 --- /dev/null +++ b/node_modules/globby/ignore.js @@ -0,0 +1,94 @@ +import process from 'node:process'; +import fs from 'node:fs'; +import path from 'node:path'; +import fastGlob from 'fast-glob'; +import gitIgnore from 'ignore'; +import slash from 'slash'; +import {toPath, isNegativePattern} from './utilities.js'; + +const ignoreFilesGlobOptions = { + ignore: [ + '**/node_modules', + '**/flow-typed', + '**/coverage', + '**/.git', + ], + absolute: true, + dot: true, +}; + +export const GITIGNORE_FILES_PATTERN = '**/.gitignore'; + +const applyBaseToPattern = (pattern, base) => isNegativePattern(pattern) + ? '!' + path.posix.join(base, pattern.slice(1)) + : path.posix.join(base, pattern); + +const parseIgnoreFile = (file, cwd) => { + const base = slash(path.relative(cwd, path.dirname(file.filePath))); + + return file.content + .split(/\r?\n/) + .filter(line => line && !line.startsWith('#')) + .map(pattern => applyBaseToPattern(pattern, base)); +}; + +const toRelativePath = (fileOrDirectory, cwd) => { + cwd = slash(cwd); + if (path.isAbsolute(fileOrDirectory)) { + if (slash(fileOrDirectory).startsWith(cwd)) { + return path.relative(cwd, fileOrDirectory); + } + + throw new Error(`Path ${fileOrDirectory} is not in cwd ${cwd}`); + } + + return fileOrDirectory; +}; + +const getIsIgnoredPredicate = (files, cwd) => { + const patterns = files.flatMap(file => parseIgnoreFile(file, cwd)); + const ignores = gitIgnore().add(patterns); + + return fileOrDirectory => { + fileOrDirectory = toPath(fileOrDirectory); + fileOrDirectory = toRelativePath(fileOrDirectory, cwd); + return fileOrDirectory ? ignores.ignores(slash(fileOrDirectory)) : false; + }; +}; + +const normalizeOptions = (options = {}) => ({ + cwd: toPath(options.cwd) || process.cwd(), + suppressErrors: Boolean(options.suppressErrors), + deep: typeof options.deep === 'number' ? options.deep : Number.POSITIVE_INFINITY, +}); + +export const isIgnoredByIgnoreFiles = async (patterns, options) => { + const {cwd, suppressErrors, deep} = normalizeOptions(options); + + const paths = await fastGlob(patterns, {cwd, suppressErrors, deep, ...ignoreFilesGlobOptions}); + + const files = await Promise.all( + paths.map(async filePath => ({ + filePath, + content: await fs.promises.readFile(filePath, 'utf8'), + })), + ); + + return getIsIgnoredPredicate(files, cwd); +}; + +export const isIgnoredByIgnoreFilesSync = (patterns, options) => { + const {cwd, suppressErrors, deep} = normalizeOptions(options); + + const paths = fastGlob.sync(patterns, {cwd, suppressErrors, deep, ...ignoreFilesGlobOptions}); + + const files = paths.map(filePath => ({ + filePath, + content: fs.readFileSync(filePath, 'utf8'), + })); + + return getIsIgnoredPredicate(files, cwd); +}; + +export const isGitIgnored = options => isIgnoredByIgnoreFiles(GITIGNORE_FILES_PATTERN, options); +export const isGitIgnoredSync = options => isIgnoredByIgnoreFilesSync(GITIGNORE_FILES_PATTERN, options); diff --git a/node_modules/globby/index.d.ts b/node_modules/globby/index.d.ts new file mode 100644 index 0000000..7e3c981 --- /dev/null +++ b/node_modules/globby/index.d.ts @@ -0,0 +1,205 @@ +import {Options as FastGlobOptions, Entry} from 'fast-glob'; + +export type GlobEntry = Entry; + +export interface GlobTask { + readonly patterns: string[]; + readonly options: Options; +} + +export type ExpandDirectoriesOption = + | boolean + | readonly string[] + | {files?: readonly string[]; extensions?: readonly string[]}; + +type FastGlobOptionsWithoutCwd = Omit; + +export interface Options extends FastGlobOptionsWithoutCwd { + /** + If set to `true`, `globby` will automatically glob directories for you. If you define an `Array` it will only glob files that matches the patterns inside the `Array`. You can also define an `Object` with `files` and `extensions` like in the example below. + + Note that if you set this option to `false`, you won't get back matched directories unless you set `onlyFiles: false`. + + @default true + + @example + ``` + import {globby} from 'globby'; + + const paths = await globby('images', { + expandDirectories: { + files: ['cat', 'unicorn', '*.jpg'], + extensions: ['png'] + } + }); + + console.log(paths); + //=> ['cat.png', 'unicorn.png', 'cow.jpg', 'rainbow.jpg'] + ``` + */ + readonly expandDirectories?: ExpandDirectoriesOption; + + /** + Respect ignore patterns in `.gitignore` files that apply to the globbed files. + + @default false + */ + readonly gitignore?: boolean; + + /** + Glob patterns to look for ignore files, which are then used to ignore globbed files. + + This is a more generic form of the `gitignore` option, allowing you to find ignore files with a [compatible syntax](http://git-scm.com/docs/gitignore). For instance, this works with Babel's `.babelignore`, Prettier's `.prettierignore`, or ESLint's `.eslintignore` files. + + @default undefined + */ + readonly ignoreFiles?: string | readonly string[]; + + /** + The current working directory in which to search. + + @default process.cwd() + */ + readonly cwd?: URL | string; +} + +export interface GitignoreOptions { + readonly cwd?: URL | string; +} + +export type GlobbyFilterFunction = (path: URL | string) => boolean; + +/** +Find files and directories using glob patterns. + +Note that glob patterns can only contain forward-slashes, not backward-slashes, so if you want to construct a glob pattern from path components, you need to use `path.posix.join()` instead of `path.join()`. + +@param patterns - See the supported [glob patterns](https://github.com/sindresorhus/globby#globbing-patterns). +@param options - See the [`fast-glob` options](https://github.com/mrmlnc/fast-glob#options-3) in addition to the ones in this package. +@returns The matching paths. + +@example +``` +import {globby} from 'globby'; + +const paths = await globby(['*', '!cake']); + +console.log(paths); +//=> ['unicorn', 'rainbow'] +``` +*/ +export function globby( + patterns: string | readonly string[], + options: Options & {objectMode: true} +): Promise; +export function globby( + patterns: string | readonly string[], + options?: Options +): Promise; + +/** +Find files and directories using glob patterns. + +Note that glob patterns can only contain forward-slashes, not backward-slashes, so if you want to construct a glob pattern from path components, you need to use `path.posix.join()` instead of `path.join()`. + +@param patterns - See the supported [glob patterns](https://github.com/sindresorhus/globby#globbing-patterns). +@param options - See the [`fast-glob` options](https://github.com/mrmlnc/fast-glob#options-3) in addition to the ones in this package. +@returns The matching paths. +*/ +export function globbySync( + patterns: string | readonly string[], + options: Options & {objectMode: true} +): GlobEntry[]; +export function globbySync( + patterns: string | readonly string[], + options?: Options +): string[]; + +/** +Find files and directories using glob patterns. + +Note that glob patterns can only contain forward-slashes, not backward-slashes, so if you want to construct a glob pattern from path components, you need to use `path.posix.join()` instead of `path.join()`. + +@param patterns - See the supported [glob patterns](https://github.com/sindresorhus/globby#globbing-patterns). +@param options - See the [`fast-glob` options](https://github.com/mrmlnc/fast-glob#options-3) in addition to the ones in this package. +@returns The stream of matching paths. + +@example +``` +import {globbyStream} from 'globby'; + +for await (const path of globbyStream('*.tmp')) { + console.log(path); +} +``` +*/ +export function globbyStream( + patterns: string | readonly string[], + options?: Options +): NodeJS.ReadableStream; + +/** +Note that you should avoid running the same tasks multiple times as they contain a file system cache. Instead, run this method each time to ensure file system changes are taken into consideration. + +@param patterns - See the supported [glob patterns](https://github.com/sindresorhus/globby#globbing-patterns). +@param options - See the [`fast-glob` options](https://github.com/mrmlnc/fast-glob#options-3) in addition to the ones in this package. +@returns An object in the format `{pattern: string, options: object}`, which can be passed as arguments to [`fast-glob`](https://github.com/mrmlnc/fast-glob). This is useful for other globbing-related packages. +*/ +export function generateGlobTasks( + patterns: string | readonly string[], + options?: Options +): Promise; + +/** +@see generateGlobTasks + +@returns An object in the format `{pattern: string, options: object}`, which can be passed as arguments to [`fast-glob`](https://github.com/mrmlnc/fast-glob). This is useful for other globbing-related packages. +*/ +export function generateGlobTasksSync( + patterns: string | readonly string[], + options?: Options +): GlobTask[]; + +/** +Note that the options affect the results. + +This function is backed by [`fast-glob`](https://github.com/mrmlnc/fast-glob#isdynamicpatternpattern-options). + +@param patterns - See the supported [glob patterns](https://github.com/sindresorhus/globby#globbing-patterns). +@param options - See the [`fast-glob` options](https://github.com/mrmlnc/fast-glob#options-3). +@returns Whether there are any special glob characters in the `patterns`. +*/ +export function isDynamicPattern( + patterns: string | readonly string[], + options?: FastGlobOptionsWithoutCwd & { + /** + The current working directory in which to search. + + @default process.cwd() + */ + readonly cwd?: URL | string; + } +): boolean; + +/** +`.gitignore` files matched by the ignore config are not used for the resulting filter function. + +@returns A filter function indicating whether a given path is ignored via a `.gitignore` file. + +@example +``` +import {isGitIgnored} from 'globby'; + +const isIgnored = await isGitIgnored(); + +console.log(isIgnored('some/file')); +``` +*/ +export function isGitIgnored(options?: GitignoreOptions): Promise; + +/** +@see isGitIgnored + +@returns A filter function indicating whether a given path is ignored via a `.gitignore` file. +*/ +export function isGitIgnoredSync(options?: GitignoreOptions): GlobbyFilterFunction; diff --git a/node_modules/globby/index.js b/node_modules/globby/index.js new file mode 100644 index 0000000..ee570f0 --- /dev/null +++ b/node_modules/globby/index.js @@ -0,0 +1,229 @@ +import fs from 'node:fs'; +import nodePath from 'node:path'; +import merge2 from 'merge2'; +import fastGlob from 'fast-glob'; +import dirGlob from 'dir-glob'; +import { + GITIGNORE_FILES_PATTERN, + isIgnoredByIgnoreFiles, + isIgnoredByIgnoreFilesSync, +} from './ignore.js'; +import {FilterStream, toPath, isNegativePattern} from './utilities.js'; + +const assertPatternsInput = patterns => { + if (patterns.some(pattern => typeof pattern !== 'string')) { + throw new TypeError('Patterns must be a string or an array of strings'); + } +}; + +const toPatternsArray = patterns => { + patterns = [...new Set([patterns].flat())]; + assertPatternsInput(patterns); + return patterns; +}; + +const checkCwdOption = options => { + if (!options.cwd) { + return; + } + + let stat; + try { + stat = fs.statSync(options.cwd); + } catch { + return; + } + + if (!stat.isDirectory()) { + throw new Error('The `cwd` option must be a path to a directory'); + } +}; + +const normalizeOptions = (options = {}) => { + options = { + ...options, + ignore: options.ignore || [], + expandDirectories: options.expandDirectories === undefined + ? true + : options.expandDirectories, + cwd: toPath(options.cwd), + }; + + checkCwdOption(options); + + return options; +}; + +const normalizeArguments = fn => async (patterns, options) => fn(toPatternsArray(patterns), normalizeOptions(options)); +const normalizeArgumentsSync = fn => (patterns, options) => fn(toPatternsArray(patterns), normalizeOptions(options)); + +const getIgnoreFilesPatterns = options => { + const {ignoreFiles, gitignore} = options; + + const patterns = ignoreFiles ? toPatternsArray(ignoreFiles) : []; + if (gitignore) { + patterns.push(GITIGNORE_FILES_PATTERN); + } + + return patterns; +}; + +const getFilter = async options => { + const ignoreFilesPatterns = getIgnoreFilesPatterns(options); + return createFilterFunction( + ignoreFilesPatterns.length > 0 && await isIgnoredByIgnoreFiles(ignoreFilesPatterns, options), + ); +}; + +const getFilterSync = options => { + const ignoreFilesPatterns = getIgnoreFilesPatterns(options); + return createFilterFunction( + ignoreFilesPatterns.length > 0 && isIgnoredByIgnoreFilesSync(ignoreFilesPatterns, options), + ); +}; + +const createFilterFunction = isIgnored => { + const seen = new Set(); + + return fastGlobResult => { + const path = fastGlobResult.path || fastGlobResult; + const pathKey = nodePath.normalize(path); + const seenOrIgnored = seen.has(pathKey) || (isIgnored && isIgnored(path)); + seen.add(pathKey); + return !seenOrIgnored; + }; +}; + +const unionFastGlobResults = (results, filter) => results.flat().filter(fastGlobResult => filter(fastGlobResult)); +const unionFastGlobStreams = (streams, filter) => merge2(streams).pipe(new FilterStream(fastGlobResult => filter(fastGlobResult))); + +const convertNegativePatterns = (patterns, options) => { + const tasks = []; + + while (patterns.length > 0) { + const index = patterns.findIndex(pattern => isNegativePattern(pattern)); + + if (index === -1) { + tasks.push({patterns, options}); + break; + } + + const ignorePattern = patterns[index].slice(1); + + for (const task of tasks) { + task.options.ignore.push(ignorePattern); + } + + if (index !== 0) { + tasks.push({ + patterns: patterns.slice(0, index), + options: { + ...options, + ignore: [ + ...options.ignore, + ignorePattern, + ], + }, + }); + } + + patterns = patterns.slice(index + 1); + } + + return tasks; +}; + +const getDirGlobOptions = (options, cwd) => ({ + ...(cwd ? {cwd} : {}), + ...(Array.isArray(options) ? {files: options} : options), +}); + +const generateTasks = async (patterns, options) => { + const globTasks = convertNegativePatterns(patterns, options); + + const {cwd, expandDirectories} = options; + + if (!expandDirectories) { + return globTasks; + } + + const patternExpandOptions = getDirGlobOptions(expandDirectories, cwd); + const ignoreExpandOptions = cwd ? {cwd} : undefined; + + return Promise.all( + globTasks.map(async task => { + let {patterns, options} = task; + + [ + patterns, + options.ignore, + ] = await Promise.all([ + dirGlob(patterns, patternExpandOptions), + dirGlob(options.ignore, ignoreExpandOptions), + ]); + + return {patterns, options}; + }), + ); +}; + +const generateTasksSync = (patterns, options) => { + const globTasks = convertNegativePatterns(patterns, options); + + const {cwd, expandDirectories} = options; + + if (!expandDirectories) { + return globTasks; + } + + const patternExpandOptions = getDirGlobOptions(expandDirectories, cwd); + const ignoreExpandOptions = cwd ? {cwd} : undefined; + + return globTasks.map(task => { + let {patterns, options} = task; + patterns = dirGlob.sync(patterns, patternExpandOptions); + options.ignore = dirGlob.sync(options.ignore, ignoreExpandOptions); + return {patterns, options}; + }); +}; + +export const globby = normalizeArguments(async (patterns, options) => { + const [ + tasks, + filter, + ] = await Promise.all([ + generateTasks(patterns, options), + getFilter(options), + ]); + const results = await Promise.all(tasks.map(task => fastGlob(task.patterns, task.options))); + + return unionFastGlobResults(results, filter); +}); + +export const globbySync = normalizeArgumentsSync((patterns, options) => { + const tasks = generateTasksSync(patterns, options); + const filter = getFilterSync(options); + const results = tasks.map(task => fastGlob.sync(task.patterns, task.options)); + + return unionFastGlobResults(results, filter); +}); + +export const globbyStream = normalizeArgumentsSync((patterns, options) => { + const tasks = generateTasksSync(patterns, options); + const filter = getFilterSync(options); + const streams = tasks.map(task => fastGlob.stream(task.patterns, task.options)); + + return unionFastGlobStreams(streams, filter); +}); + +export const isDynamicPattern = normalizeArgumentsSync( + (patterns, options) => patterns.some(pattern => fastGlob.isDynamicPattern(pattern, options)), +); + +export const generateGlobTasks = normalizeArguments(generateTasks); +export const generateGlobTasksSync = normalizeArgumentsSync(generateTasksSync); + +export { + isGitIgnored, + isGitIgnoredSync, +} from './ignore.js'; diff --git a/node_modules/globby/license b/node_modules/globby/license new file mode 100644 index 0000000..fa7ceba --- /dev/null +++ b/node_modules/globby/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.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. diff --git a/node_modules/globby/node_modules/slash/index.d.ts b/node_modules/globby/node_modules/slash/index.d.ts new file mode 100644 index 0000000..10438fb --- /dev/null +++ b/node_modules/globby/node_modules/slash/index.d.ts @@ -0,0 +1,23 @@ +/** +Convert Windows backslash paths to slash paths: `foo\\bar` ➔ `foo/bar`. + +[Forward-slash paths can be used in Windows](http://superuser.com/a/176395/6877) as long as they're not extended-length paths and don't contain any non-ascii characters. + +@param path - A Windows backslash path. +@returns A path with forward slashes. + +@example +``` +import path from 'path'; +import slash from 'slash'; + +const string = path.join('foo', 'bar'); +// Unix => foo/bar +// Windows => foo\\bar + +slash(string); +// Unix => foo/bar +// Windows => foo/bar +``` +*/ +export default function slash(path: string): string; diff --git a/node_modules/globby/node_modules/slash/index.js b/node_modules/globby/node_modules/slash/index.js new file mode 100644 index 0000000..b52d8de --- /dev/null +++ b/node_modules/globby/node_modules/slash/index.js @@ -0,0 +1,10 @@ +export default function slash(path) { + const isExtendedLengthPath = /^\\\\\?\\/.test(path); + const hasNonAscii = /[^\u0000-\u0080]+/.test(path); // eslint-disable-line no-control-regex + + if (isExtendedLengthPath || hasNonAscii) { + return path; + } + + return path.replace(/\\/g, '/'); +} diff --git a/node_modules/globby/node_modules/slash/license b/node_modules/globby/node_modules/slash/license new file mode 100644 index 0000000..fa7ceba --- /dev/null +++ b/node_modules/globby/node_modules/slash/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.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. diff --git a/node_modules/globby/node_modules/slash/package.json b/node_modules/globby/node_modules/slash/package.json new file mode 100644 index 0000000..ef78101 --- /dev/null +++ b/node_modules/globby/node_modules/slash/package.json @@ -0,0 +1,38 @@ +{ + "name": "slash", + "version": "4.0.0", + "description": "Convert Windows backslash paths to slash paths", + "license": "MIT", + "repository": "sindresorhus/slash", + "funding": "https://github.com/sponsors/sindresorhus", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "https://sindresorhus.com" + }, + "type": "module", + "exports": "./index.js", + "engines": { + "node": ">=12" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "path", + "seperator", + "slash", + "backslash", + "windows", + "convert" + ], + "devDependencies": { + "ava": "^3.15.0", + "tsd": "^0.14.0", + "xo": "^0.38.2" + } +} diff --git a/node_modules/globby/node_modules/slash/readme.md b/node_modules/globby/node_modules/slash/readme.md new file mode 100644 index 0000000..2a66eef --- /dev/null +++ b/node_modules/globby/node_modules/slash/readme.md @@ -0,0 +1,48 @@ +# slash + +> Convert Windows backslash paths to slash paths: `foo\\bar` ➔ `foo/bar` + +[Forward-slash paths can be used in Windows](http://superuser.com/a/176395/6877) as long as they're not extended-length paths and don't contain any non-ascii characters. + +This was created since the `path` methods in Node.js outputs `\\` paths on Windows. + +## Install + +``` +$ npm install slash +``` + +## Usage + +```js +import path from 'path'; +import slash from 'slash'; + +const string = path.join('foo', 'bar'); +// Unix => foo/bar +// Windows => foo\\bar + +slash(string); +// Unix => foo/bar +// Windows => foo/bar +``` + +## API + +### slash(path) + +Type: `string` + +Accepts a Windows backslash path and returns a path with forward slashes. + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
diff --git a/node_modules/globby/package.json b/node_modules/globby/package.json new file mode 100644 index 0000000..e2bdb72 --- /dev/null +++ b/node_modules/globby/package.json @@ -0,0 +1,96 @@ +{ + "name": "globby", + "version": "13.2.2", + "description": "User-friendly glob matching", + "license": "MIT", + "repository": "sindresorhus/globby", + "funding": "https://github.com/sponsors/sindresorhus", + "author": { + "email": "sindresorhus@gmail.com", + "name": "Sindre Sorhus", + "url": "https://sindresorhus.com" + }, + "type": "module", + "exports": "./index.js", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "scripts": { + "bench": "npm update @globby/main-branch glob-stream fast-glob && node bench.js", + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts", + "ignore.js", + "utilities.js" + ], + "keywords": [ + "all", + "array", + "directories", + "expand", + "files", + "filesystem", + "filter", + "find", + "fnmatch", + "folders", + "fs", + "glob", + "globbing", + "globs", + "gulpfriendly", + "match", + "matcher", + "minimatch", + "multi", + "multiple", + "paths", + "pattern", + "patterns", + "traverse", + "util", + "utility", + "wildcard", + "wildcards", + "promise", + "gitignore", + "git" + ], + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "devDependencies": { + "@globby/main-branch": "sindresorhus/globby#main", + "@types/node": "^20.3.3", + "ava": "^5.3.1", + "benchmark": "2.1.4", + "glob-stream": "^8.0.0", + "rimraf": "^5.0.1", + "tempy": "^3.0.0", + "tsd": "^0.28.1", + "typescript": "^5.1.6", + "xo": "^0.54.2" + }, + "xo": { + "ignores": [ + "fixtures" + ], + "rules": { + "@typescript-eslint/consistent-type-definitions": "off", + "n/prefer-global/url": "off", + "@typescript-eslint/consistent-type-imports": "off" + } + }, + "ava": { + "files": [ + "!tests/utilities.js" + ], + "workerThreads": false + } +} diff --git a/node_modules/globby/readme.md b/node_modules/globby/readme.md new file mode 100644 index 0000000..ff36479 --- /dev/null +++ b/node_modules/globby/readme.md @@ -0,0 +1,183 @@ +# globby + +> User-friendly glob matching + +Based on [`fast-glob`](https://github.com/mrmlnc/fast-glob) but adds a bunch of useful features. + +## Features + +- Promise API +- Multiple patterns +- Negated patterns: `['foo*', '!foobar']` +- Expands directories: `foo` → `foo/**/*` +- Supports `.gitignore` and similar ignore config files +- Supports `URL` as `cwd` + +## Install + +``` +$ npm install globby +``` + +## Usage + +``` +├── unicorn +├── cake +└── rainbow +``` + +```js +import {globby} from 'globby'; + +const paths = await globby(['*', '!cake']); + +console.log(paths); +//=> ['unicorn', 'rainbow'] +``` + +## API + +Note that glob patterns can only contain forward-slashes, not backward-slashes, so if you want to construct a glob pattern from path components, you need to use `path.posix.join()` instead of `path.join()`. + +### globby(patterns, options?) + +Returns a `Promise` of matching paths. + +#### patterns + +Type: `string | string[]` + +See supported `minimatch` [patterns](https://github.com/isaacs/minimatch#usage). + +#### options + +Type: `object` + +See the [`fast-glob` options](https://github.com/mrmlnc/fast-glob#options-3) in addition to the ones below. + +##### expandDirectories + +Type: `boolean | string[] | object`\ +Default: `true` + +If set to `true`, `globby` will automatically glob directories for you. If you define an `Array` it will only glob files that matches the patterns inside the `Array`. You can also define an `object` with `files` and `extensions` like below: + +```js +import {globby} from 'globby'; + +(async () => { + const paths = await globby('images', { + expandDirectories: { + files: ['cat', 'unicorn', '*.jpg'], + extensions: ['png'] + } + }); + + console.log(paths); + //=> ['cat.png', 'unicorn.png', 'cow.jpg', 'rainbow.jpg'] +})(); +``` + +Note that if you set this option to `false`, you won't get back matched directories unless you set `onlyFiles: false`. + +##### gitignore + +Type: `boolean`\ +Default: `false` + +Respect ignore patterns in `.gitignore` files that apply to the globbed files. + +##### ignoreFiles + +Type: `string | string[]`\ +Default: `undefined` + +Glob patterns to look for ignore files, which are then used to ignore globbed files. + +This is a more generic form of the `gitignore` option, allowing you to find ignore files with a [compatible syntax](http://git-scm.com/docs/gitignore). For instance, this works with Babel's `.babelignore`, Prettier's `.prettierignore`, or ESLint's `.eslintignore` files. + +### globbySync(patterns, options?) + +Returns `string[]` of matching paths. + +### globbyStream(patterns, options?) + +Returns a [`stream.Readable`](https://nodejs.org/api/stream.html#stream_readable_streams) of matching paths. + +Since Node.js 10, [readable streams are iterable](https://nodejs.org/api/stream.html#stream_readable_symbol_asynciterator), so you can loop over glob matches in a [`for await...of` loop](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for-await...of) like this: + +```js +import {globbyStream} from 'globby'; + +(async () => { + for await (const path of globbyStream('*.tmp')) { + console.log(path); + } +})(); +``` + +### generateGlobTasks(patterns, options?) + +Returns an `Promise` in the format `{patterns: string[], options: Object}`, which can be passed as arguments to [`fast-glob`](https://github.com/mrmlnc/fast-glob). This is useful for other globbing-related packages. + +Note that you should avoid running the same tasks multiple times as they contain a file system cache. Instead, run this method each time to ensure file system changes are taken into consideration. + +### generateGlobTasksSync(patterns, options?) + +Returns an `object[]` in the format `{patterns: string[], options: Object}`, which can be passed as arguments to [`fast-glob`](https://github.com/mrmlnc/fast-glob). This is useful for other globbing-related packages. + +Takes the same arguments as `generateGlobTasks`. + +### isDynamicPattern(patterns, options?) + +Returns a `boolean` of whether there are any special glob characters in the `patterns`. + +Note that the options affect the results. + +This function is backed by [`fast-glob`](https://github.com/mrmlnc/fast-glob#isdynamicpatternpattern-options). + +### isGitIgnored(options?) + +Returns a `Promise<(path: URL | string) => boolean>` indicating whether a given path is ignored via a `.gitignore` file. + +Takes `cwd?: URL | string` as options. + +```js +import {isGitIgnored} from 'globby'; + +const isIgnored = await isGitIgnored(); + +console.log(isIgnored('some/file')); +``` + +### isGitIgnoredSync(options?) + +Returns a `(path: URL | string) => boolean` indicating whether a given path is ignored via a `.gitignore` file. + +Takes `cwd?: URL | string` as options. + +## Globbing patterns + +Just a quick overview. + +- `*` matches any number of characters, but not `/` +- `?` matches a single character, but not `/` +- `**` matches any number of characters, including `/`, as long as it's the only thing in a path part +- `{}` allows for a comma-separated list of "or" expressions +- `!` at the beginning of a pattern will negate the match + +[Various patterns and expected matches.](https://github.com/sindresorhus/multimatch/blob/main/test/test.js) + +## globby for enterprise + +Available as part of the Tidelift Subscription. + +The maintainers of globby and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-globby?utm_source=npm-globby&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) + +## Related + +- [multimatch](https://github.com/sindresorhus/multimatch) - Match against a list instead of the filesystem +- [matcher](https://github.com/sindresorhus/matcher) - Simple wildcard matching +- [del](https://github.com/sindresorhus/del) - Delete files and directories +- [make-dir](https://github.com/sindresorhus/make-dir) - Make a directory and its parents if needed diff --git a/node_modules/globby/utilities.js b/node_modules/globby/utilities.js new file mode 100644 index 0000000..c09c4dc --- /dev/null +++ b/node_modules/globby/utilities.js @@ -0,0 +1,17 @@ +import {fileURLToPath} from 'node:url'; +import {Transform} from 'node:stream'; + +export const toPath = urlOrPath => urlOrPath instanceof URL ? fileURLToPath(urlOrPath) : urlOrPath; + +export class FilterStream extends Transform { + constructor(filter) { + super({ + objectMode: true, + transform(data, encoding, callback) { + callback(undefined, filter(data) ? data : undefined); + }, + }); + } +} + +export const isNegativePattern = pattern => pattern[0] === '!'; diff --git a/node_modules/graceful-fs/LICENSE b/node_modules/graceful-fs/LICENSE new file mode 100644 index 0000000..e906a25 --- /dev/null +++ b/node_modules/graceful-fs/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) 2011-2022 Isaac Z. Schlueter, Ben Noordhuis, and Contributors + +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. diff --git a/node_modules/graceful-fs/README.md b/node_modules/graceful-fs/README.md new file mode 100644 index 0000000..82d6e4d --- /dev/null +++ b/node_modules/graceful-fs/README.md @@ -0,0 +1,143 @@ +# graceful-fs + +graceful-fs functions as a drop-in replacement for the fs module, +making various improvements. + +The improvements are meant to normalize behavior across different +platforms and environments, and to make filesystem access more +resilient to errors. + +## Improvements over [fs module](https://nodejs.org/api/fs.html) + +* Queues up `open` and `readdir` calls, and retries them once + something closes if there is an EMFILE error from too many file + descriptors. +* fixes `lchmod` for Node versions prior to 0.6.2. +* implements `fs.lutimes` if possible. Otherwise it becomes a noop. +* ignores `EINVAL` and `EPERM` errors in `chown`, `fchown` or + `lchown` if the user isn't root. +* makes `lchmod` and `lchown` become noops, if not available. +* retries reading a file if `read` results in EAGAIN error. + +On Windows, it retries renaming a file for up to one second if `EACCESS` +or `EPERM` error occurs, likely because antivirus software has locked +the directory. + +## USAGE + +```javascript +// use just like fs +var fs = require('graceful-fs') + +// now go and do stuff with it... +fs.readFile('some-file-or-whatever', (err, data) => { + // Do stuff here. +}) +``` + +## Sync methods + +This module cannot intercept or handle `EMFILE` or `ENFILE` errors from sync +methods. If you use sync methods which open file descriptors then you are +responsible for dealing with any errors. + +This is a known limitation, not a bug. + +## Global Patching + +If you want to patch the global fs module (or any other fs-like +module) you can do this: + +```javascript +// Make sure to read the caveat below. +var realFs = require('fs') +var gracefulFs = require('graceful-fs') +gracefulFs.gracefulify(realFs) +``` + +This should only ever be done at the top-level application layer, in +order to delay on EMFILE errors from any fs-using dependencies. You +should **not** do this in a library, because it can cause unexpected +delays in other parts of the program. + +## Changes + +This module is fairly stable at this point, and used by a lot of +things. That being said, because it implements a subtle behavior +change in a core part of the node API, even modest changes can be +extremely breaking, and the versioning is thus biased towards +bumping the major when in doubt. + +The main change between major versions has been switching between +providing a fully-patched `fs` module vs monkey-patching the node core +builtin, and the approach by which a non-monkey-patched `fs` was +created. + +The goal is to trade `EMFILE` errors for slower fs operations. So, if +you try to open a zillion files, rather than crashing, `open` +operations will be queued up and wait for something else to `close`. + +There are advantages to each approach. Monkey-patching the fs means +that no `EMFILE` errors can possibly occur anywhere in your +application, because everything is using the same core `fs` module, +which is patched. However, it can also obviously cause undesirable +side-effects, especially if the module is loaded multiple times. + +Implementing a separate-but-identical patched `fs` module is more +surgical (and doesn't run the risk of patching multiple times), but +also imposes the challenge of keeping in sync with the core module. + +The current approach loads the `fs` module, and then creates a +lookalike object that has all the same methods, except a few that are +patched. It is safe to use in all versions of Node from 0.8 through +7.0. + +### v4 + +* Do not monkey-patch the fs module. This module may now be used as a + drop-in dep, and users can opt into monkey-patching the fs builtin + if their app requires it. + +### v3 + +* Monkey-patch fs, because the eval approach no longer works on recent + node. +* fixed possible type-error throw if rename fails on windows +* verify that we *never* get EMFILE errors +* Ignore ENOSYS from chmod/chown +* clarify that graceful-fs must be used as a drop-in + +### v2.1.0 + +* Use eval rather than monkey-patching fs. +* readdir: Always sort the results +* win32: requeue a file if error has an OK status + +### v2.0 + +* A return to monkey patching +* wrap process.cwd + +### v1.1 + +* wrap readFile +* Wrap fs.writeFile. +* readdir protection +* Don't clobber the fs builtin +* Handle fs.read EAGAIN errors by trying again +* Expose the curOpen counter +* No-op lchown/lchmod if not implemented +* fs.rename patch only for win32 +* Patch fs.rename to handle AV software on Windows +* Close #4 Chown should not fail on einval or eperm if non-root +* Fix isaacs/fstream#1 Only wrap fs one time +* Fix #3 Start at 1024 max files, then back off on EMFILE +* lutimes that doens't blow up on Linux +* A full on-rewrite using a queue instead of just swallowing the EMFILE error +* Wrap Read/Write streams as well + +### 1.0 + +* Update engines for node 0.6 +* Be lstat-graceful on Windows +* first diff --git a/node_modules/graceful-fs/clone.js b/node_modules/graceful-fs/clone.js new file mode 100644 index 0000000..dff3cc8 --- /dev/null +++ b/node_modules/graceful-fs/clone.js @@ -0,0 +1,23 @@ +'use strict' + +module.exports = clone + +var getPrototypeOf = Object.getPrototypeOf || function (obj) { + return obj.__proto__ +} + +function clone (obj) { + if (obj === null || typeof obj !== 'object') + return obj + + if (obj instanceof Object) + var copy = { __proto__: getPrototypeOf(obj) } + else + var copy = Object.create(null) + + Object.getOwnPropertyNames(obj).forEach(function (key) { + Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key)) + }) + + return copy +} diff --git a/node_modules/graceful-fs/graceful-fs.js b/node_modules/graceful-fs/graceful-fs.js new file mode 100644 index 0000000..8d5b89e --- /dev/null +++ b/node_modules/graceful-fs/graceful-fs.js @@ -0,0 +1,448 @@ +var fs = require('fs') +var polyfills = require('./polyfills.js') +var legacy = require('./legacy-streams.js') +var clone = require('./clone.js') + +var util = require('util') + +/* istanbul ignore next - node 0.x polyfill */ +var gracefulQueue +var previousSymbol + +/* istanbul ignore else - node 0.x polyfill */ +if (typeof Symbol === 'function' && typeof Symbol.for === 'function') { + gracefulQueue = Symbol.for('graceful-fs.queue') + // This is used in testing by future versions + previousSymbol = Symbol.for('graceful-fs.previous') +} else { + gracefulQueue = '___graceful-fs.queue' + previousSymbol = '___graceful-fs.previous' +} + +function noop () {} + +function publishQueue(context, queue) { + Object.defineProperty(context, gracefulQueue, { + get: function() { + return queue + } + }) +} + +var debug = noop +if (util.debuglog) + debug = util.debuglog('gfs4') +else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || '')) + debug = function() { + var m = util.format.apply(util, arguments) + m = 'GFS4: ' + m.split(/\n/).join('\nGFS4: ') + console.error(m) + } + +// Once time initialization +if (!fs[gracefulQueue]) { + // This queue can be shared by multiple loaded instances + var queue = global[gracefulQueue] || [] + publishQueue(fs, queue) + + // Patch fs.close/closeSync to shared queue version, because we need + // to retry() whenever a close happens *anywhere* in the program. + // This is essential when multiple graceful-fs instances are + // in play at the same time. + fs.close = (function (fs$close) { + function close (fd, cb) { + return fs$close.call(fs, fd, function (err) { + // This function uses the graceful-fs shared queue + if (!err) { + resetQueue() + } + + if (typeof cb === 'function') + cb.apply(this, arguments) + }) + } + + Object.defineProperty(close, previousSymbol, { + value: fs$close + }) + return close + })(fs.close) + + fs.closeSync = (function (fs$closeSync) { + function closeSync (fd) { + // This function uses the graceful-fs shared queue + fs$closeSync.apply(fs, arguments) + resetQueue() + } + + Object.defineProperty(closeSync, previousSymbol, { + value: fs$closeSync + }) + return closeSync + })(fs.closeSync) + + if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || '')) { + process.on('exit', function() { + debug(fs[gracefulQueue]) + require('assert').equal(fs[gracefulQueue].length, 0) + }) + } +} + +if (!global[gracefulQueue]) { + publishQueue(global, fs[gracefulQueue]); +} + +module.exports = patch(clone(fs)) +if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs.__patched) { + module.exports = patch(fs) + fs.__patched = true; +} + +function patch (fs) { + // Everything that references the open() function needs to be in here + polyfills(fs) + fs.gracefulify = patch + + fs.createReadStream = createReadStream + fs.createWriteStream = createWriteStream + var fs$readFile = fs.readFile + fs.readFile = readFile + function readFile (path, options, cb) { + if (typeof options === 'function') + cb = options, options = null + + return go$readFile(path, options, cb) + + function go$readFile (path, options, cb, startTime) { + return fs$readFile(path, options, function (err) { + if (err && (err.code === 'EMFILE' || err.code === 'ENFILE')) + enqueue([go$readFile, [path, options, cb], err, startTime || Date.now(), Date.now()]) + else { + if (typeof cb === 'function') + cb.apply(this, arguments) + } + }) + } + } + + var fs$writeFile = fs.writeFile + fs.writeFile = writeFile + function writeFile (path, data, options, cb) { + if (typeof options === 'function') + cb = options, options = null + + return go$writeFile(path, data, options, cb) + + function go$writeFile (path, data, options, cb, startTime) { + return fs$writeFile(path, data, options, function (err) { + if (err && (err.code === 'EMFILE' || err.code === 'ENFILE')) + enqueue([go$writeFile, [path, data, options, cb], err, startTime || Date.now(), Date.now()]) + else { + if (typeof cb === 'function') + cb.apply(this, arguments) + } + }) + } + } + + var fs$appendFile = fs.appendFile + if (fs$appendFile) + fs.appendFile = appendFile + function appendFile (path, data, options, cb) { + if (typeof options === 'function') + cb = options, options = null + + return go$appendFile(path, data, options, cb) + + function go$appendFile (path, data, options, cb, startTime) { + return fs$appendFile(path, data, options, function (err) { + if (err && (err.code === 'EMFILE' || err.code === 'ENFILE')) + enqueue([go$appendFile, [path, data, options, cb], err, startTime || Date.now(), Date.now()]) + else { + if (typeof cb === 'function') + cb.apply(this, arguments) + } + }) + } + } + + var fs$copyFile = fs.copyFile + if (fs$copyFile) + fs.copyFile = copyFile + function copyFile (src, dest, flags, cb) { + if (typeof flags === 'function') { + cb = flags + flags = 0 + } + return go$copyFile(src, dest, flags, cb) + + function go$copyFile (src, dest, flags, cb, startTime) { + return fs$copyFile(src, dest, flags, function (err) { + if (err && (err.code === 'EMFILE' || err.code === 'ENFILE')) + enqueue([go$copyFile, [src, dest, flags, cb], err, startTime || Date.now(), Date.now()]) + else { + if (typeof cb === 'function') + cb.apply(this, arguments) + } + }) + } + } + + var fs$readdir = fs.readdir + fs.readdir = readdir + var noReaddirOptionVersions = /^v[0-5]\./ + function readdir (path, options, cb) { + if (typeof options === 'function') + cb = options, options = null + + var go$readdir = noReaddirOptionVersions.test(process.version) + ? function go$readdir (path, options, cb, startTime) { + return fs$readdir(path, fs$readdirCallback( + path, options, cb, startTime + )) + } + : function go$readdir (path, options, cb, startTime) { + return fs$readdir(path, options, fs$readdirCallback( + path, options, cb, startTime + )) + } + + return go$readdir(path, options, cb) + + function fs$readdirCallback (path, options, cb, startTime) { + return function (err, files) { + if (err && (err.code === 'EMFILE' || err.code === 'ENFILE')) + enqueue([ + go$readdir, + [path, options, cb], + err, + startTime || Date.now(), + Date.now() + ]) + else { + if (files && files.sort) + files.sort() + + if (typeof cb === 'function') + cb.call(this, err, files) + } + } + } + } + + if (process.version.substr(0, 4) === 'v0.8') { + var legStreams = legacy(fs) + ReadStream = legStreams.ReadStream + WriteStream = legStreams.WriteStream + } + + var fs$ReadStream = fs.ReadStream + if (fs$ReadStream) { + ReadStream.prototype = Object.create(fs$ReadStream.prototype) + ReadStream.prototype.open = ReadStream$open + } + + var fs$WriteStream = fs.WriteStream + if (fs$WriteStream) { + WriteStream.prototype = Object.create(fs$WriteStream.prototype) + WriteStream.prototype.open = WriteStream$open + } + + Object.defineProperty(fs, 'ReadStream', { + get: function () { + return ReadStream + }, + set: function (val) { + ReadStream = val + }, + enumerable: true, + configurable: true + }) + Object.defineProperty(fs, 'WriteStream', { + get: function () { + return WriteStream + }, + set: function (val) { + WriteStream = val + }, + enumerable: true, + configurable: true + }) + + // legacy names + var FileReadStream = ReadStream + Object.defineProperty(fs, 'FileReadStream', { + get: function () { + return FileReadStream + }, + set: function (val) { + FileReadStream = val + }, + enumerable: true, + configurable: true + }) + var FileWriteStream = WriteStream + Object.defineProperty(fs, 'FileWriteStream', { + get: function () { + return FileWriteStream + }, + set: function (val) { + FileWriteStream = val + }, + enumerable: true, + configurable: true + }) + + function ReadStream (path, options) { + if (this instanceof ReadStream) + return fs$ReadStream.apply(this, arguments), this + else + return ReadStream.apply(Object.create(ReadStream.prototype), arguments) + } + + function ReadStream$open () { + var that = this + open(that.path, that.flags, that.mode, function (err, fd) { + if (err) { + if (that.autoClose) + that.destroy() + + that.emit('error', err) + } else { + that.fd = fd + that.emit('open', fd) + that.read() + } + }) + } + + function WriteStream (path, options) { + if (this instanceof WriteStream) + return fs$WriteStream.apply(this, arguments), this + else + return WriteStream.apply(Object.create(WriteStream.prototype), arguments) + } + + function WriteStream$open () { + var that = this + open(that.path, that.flags, that.mode, function (err, fd) { + if (err) { + that.destroy() + that.emit('error', err) + } else { + that.fd = fd + that.emit('open', fd) + } + }) + } + + function createReadStream (path, options) { + return new fs.ReadStream(path, options) + } + + function createWriteStream (path, options) { + return new fs.WriteStream(path, options) + } + + var fs$open = fs.open + fs.open = open + function open (path, flags, mode, cb) { + if (typeof mode === 'function') + cb = mode, mode = null + + return go$open(path, flags, mode, cb) + + function go$open (path, flags, mode, cb, startTime) { + return fs$open(path, flags, mode, function (err, fd) { + if (err && (err.code === 'EMFILE' || err.code === 'ENFILE')) + enqueue([go$open, [path, flags, mode, cb], err, startTime || Date.now(), Date.now()]) + else { + if (typeof cb === 'function') + cb.apply(this, arguments) + } + }) + } + } + + return fs +} + +function enqueue (elem) { + debug('ENQUEUE', elem[0].name, elem[1]) + fs[gracefulQueue].push(elem) + retry() +} + +// keep track of the timeout between retry() calls +var retryTimer + +// reset the startTime and lastTime to now +// this resets the start of the 60 second overall timeout as well as the +// delay between attempts so that we'll retry these jobs sooner +function resetQueue () { + var now = Date.now() + for (var i = 0; i < fs[gracefulQueue].length; ++i) { + // entries that are only a length of 2 are from an older version, don't + // bother modifying those since they'll be retried anyway. + if (fs[gracefulQueue][i].length > 2) { + fs[gracefulQueue][i][3] = now // startTime + fs[gracefulQueue][i][4] = now // lastTime + } + } + // call retry to make sure we're actively processing the queue + retry() +} + +function retry () { + // clear the timer and remove it to help prevent unintended concurrency + clearTimeout(retryTimer) + retryTimer = undefined + + if (fs[gracefulQueue].length === 0) + return + + var elem = fs[gracefulQueue].shift() + var fn = elem[0] + var args = elem[1] + // these items may be unset if they were added by an older graceful-fs + var err = elem[2] + var startTime = elem[3] + var lastTime = elem[4] + + // if we don't have a startTime we have no way of knowing if we've waited + // long enough, so go ahead and retry this item now + if (startTime === undefined) { + debug('RETRY', fn.name, args) + fn.apply(null, args) + } else if (Date.now() - startTime >= 60000) { + // it's been more than 60 seconds total, bail now + debug('TIMEOUT', fn.name, args) + var cb = args.pop() + if (typeof cb === 'function') + cb.call(null, err) + } else { + // the amount of time between the last attempt and right now + var sinceAttempt = Date.now() - lastTime + // the amount of time between when we first tried, and when we last tried + // rounded up to at least 1 + var sinceStart = Math.max(lastTime - startTime, 1) + // backoff. wait longer than the total time we've been retrying, but only + // up to a maximum of 100ms + var desiredDelay = Math.min(sinceStart * 1.2, 100) + // it's been long enough since the last retry, do it again + if (sinceAttempt >= desiredDelay) { + debug('RETRY', fn.name, args) + fn.apply(null, args.concat([startTime])) + } else { + // if we can't do this job yet, push it to the end of the queue + // and let the next iteration check again + fs[gracefulQueue].push(elem) + } + } + + // schedule our next run if one isn't already scheduled + if (retryTimer === undefined) { + retryTimer = setTimeout(retry, 0) + } +} diff --git a/node_modules/graceful-fs/legacy-streams.js b/node_modules/graceful-fs/legacy-streams.js new file mode 100644 index 0000000..d617b50 --- /dev/null +++ b/node_modules/graceful-fs/legacy-streams.js @@ -0,0 +1,118 @@ +var Stream = require('stream').Stream + +module.exports = legacy + +function legacy (fs) { + return { + ReadStream: ReadStream, + WriteStream: WriteStream + } + + function ReadStream (path, options) { + if (!(this instanceof ReadStream)) return new ReadStream(path, options); + + Stream.call(this); + + var self = this; + + this.path = path; + this.fd = null; + this.readable = true; + this.paused = false; + + this.flags = 'r'; + this.mode = 438; /*=0666*/ + this.bufferSize = 64 * 1024; + + options = options || {}; + + // Mixin options into this + var keys = Object.keys(options); + for (var index = 0, length = keys.length; index < length; index++) { + var key = keys[index]; + this[key] = options[key]; + } + + if (this.encoding) this.setEncoding(this.encoding); + + if (this.start !== undefined) { + if ('number' !== typeof this.start) { + throw TypeError('start must be a Number'); + } + if (this.end === undefined) { + this.end = Infinity; + } else if ('number' !== typeof this.end) { + throw TypeError('end must be a Number'); + } + + if (this.start > this.end) { + throw new Error('start must be <= end'); + } + + this.pos = this.start; + } + + if (this.fd !== null) { + process.nextTick(function() { + self._read(); + }); + return; + } + + fs.open(this.path, this.flags, this.mode, function (err, fd) { + if (err) { + self.emit('error', err); + self.readable = false; + return; + } + + self.fd = fd; + self.emit('open', fd); + self._read(); + }) + } + + function WriteStream (path, options) { + if (!(this instanceof WriteStream)) return new WriteStream(path, options); + + Stream.call(this); + + this.path = path; + this.fd = null; + this.writable = true; + + this.flags = 'w'; + this.encoding = 'binary'; + this.mode = 438; /*=0666*/ + this.bytesWritten = 0; + + options = options || {}; + + // Mixin options into this + var keys = Object.keys(options); + for (var index = 0, length = keys.length; index < length; index++) { + var key = keys[index]; + this[key] = options[key]; + } + + if (this.start !== undefined) { + if ('number' !== typeof this.start) { + throw TypeError('start must be a Number'); + } + if (this.start < 0) { + throw new Error('start must be >= zero'); + } + + this.pos = this.start; + } + + this.busy = false; + this._queue = []; + + if (this.fd === null) { + this._open = fs.open; + this._queue.push([this._open, this.path, this.flags, this.mode, undefined]); + this.flush(); + } + } +} diff --git a/node_modules/graceful-fs/package.json b/node_modules/graceful-fs/package.json new file mode 100644 index 0000000..87babf0 --- /dev/null +++ b/node_modules/graceful-fs/package.json @@ -0,0 +1,53 @@ +{ + "name": "graceful-fs", + "description": "A drop-in replacement for fs, making various improvements.", + "version": "4.2.11", + "repository": { + "type": "git", + "url": "https://github.com/isaacs/node-graceful-fs" + }, + "main": "graceful-fs.js", + "directories": { + "test": "test" + }, + "scripts": { + "preversion": "npm test", + "postversion": "npm publish", + "postpublish": "git push origin --follow-tags", + "test": "nyc --silent node test.js | tap -c -", + "posttest": "nyc report" + }, + "keywords": [ + "fs", + "module", + "reading", + "retry", + "retries", + "queue", + "error", + "errors", + "handling", + "EMFILE", + "EAGAIN", + "EINVAL", + "EPERM", + "EACCESS" + ], + "license": "ISC", + "devDependencies": { + "import-fresh": "^2.0.0", + "mkdirp": "^0.5.0", + "rimraf": "^2.2.8", + "tap": "^16.3.4" + }, + "files": [ + "fs.js", + "graceful-fs.js", + "legacy-streams.js", + "polyfills.js", + "clone.js" + ], + "tap": { + "reporter": "classic" + } +} diff --git a/node_modules/graceful-fs/polyfills.js b/node_modules/graceful-fs/polyfills.js new file mode 100644 index 0000000..453f1a9 --- /dev/null +++ b/node_modules/graceful-fs/polyfills.js @@ -0,0 +1,355 @@ +var constants = require('constants') + +var origCwd = process.cwd +var cwd = null + +var platform = process.env.GRACEFUL_FS_PLATFORM || process.platform + +process.cwd = function() { + if (!cwd) + cwd = origCwd.call(process) + return cwd +} +try { + process.cwd() +} catch (er) {} + +// This check is needed until node.js 12 is required +if (typeof process.chdir === 'function') { + var chdir = process.chdir + process.chdir = function (d) { + cwd = null + chdir.call(process, d) + } + if (Object.setPrototypeOf) Object.setPrototypeOf(process.chdir, chdir) +} + +module.exports = patch + +function patch (fs) { + // (re-)implement some things that are known busted or missing. + + // lchmod, broken prior to 0.6.2 + // back-port the fix here. + if (constants.hasOwnProperty('O_SYMLINK') && + process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) { + patchLchmod(fs) + } + + // lutimes implementation, or no-op + if (!fs.lutimes) { + patchLutimes(fs) + } + + // https://github.com/isaacs/node-graceful-fs/issues/4 + // Chown should not fail on einval or eperm if non-root. + // It should not fail on enosys ever, as this just indicates + // that a fs doesn't support the intended operation. + + fs.chown = chownFix(fs.chown) + fs.fchown = chownFix(fs.fchown) + fs.lchown = chownFix(fs.lchown) + + fs.chmod = chmodFix(fs.chmod) + fs.fchmod = chmodFix(fs.fchmod) + fs.lchmod = chmodFix(fs.lchmod) + + fs.chownSync = chownFixSync(fs.chownSync) + fs.fchownSync = chownFixSync(fs.fchownSync) + fs.lchownSync = chownFixSync(fs.lchownSync) + + fs.chmodSync = chmodFixSync(fs.chmodSync) + fs.fchmodSync = chmodFixSync(fs.fchmodSync) + fs.lchmodSync = chmodFixSync(fs.lchmodSync) + + fs.stat = statFix(fs.stat) + fs.fstat = statFix(fs.fstat) + fs.lstat = statFix(fs.lstat) + + fs.statSync = statFixSync(fs.statSync) + fs.fstatSync = statFixSync(fs.fstatSync) + fs.lstatSync = statFixSync(fs.lstatSync) + + // if lchmod/lchown do not exist, then make them no-ops + if (fs.chmod && !fs.lchmod) { + fs.lchmod = function (path, mode, cb) { + if (cb) process.nextTick(cb) + } + fs.lchmodSync = function () {} + } + if (fs.chown && !fs.lchown) { + fs.lchown = function (path, uid, gid, cb) { + if (cb) process.nextTick(cb) + } + fs.lchownSync = function () {} + } + + // on Windows, A/V software can lock the directory, causing this + // to fail with an EACCES or EPERM if the directory contains newly + // created files. Try again on failure, for up to 60 seconds. + + // Set the timeout this long because some Windows Anti-Virus, such as Parity + // bit9, may lock files for up to a minute, causing npm package install + // failures. Also, take care to yield the scheduler. Windows scheduling gives + // CPU to a busy looping process, which can cause the program causing the lock + // contention to be starved of CPU by node, so the contention doesn't resolve. + if (platform === "win32") { + fs.rename = typeof fs.rename !== 'function' ? fs.rename + : (function (fs$rename) { + function rename (from, to, cb) { + var start = Date.now() + var backoff = 0; + fs$rename(from, to, function CB (er) { + if (er + && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") + && Date.now() - start < 60000) { + setTimeout(function() { + fs.stat(to, function (stater, st) { + if (stater && stater.code === "ENOENT") + fs$rename(from, to, CB); + else + cb(er) + }) + }, backoff) + if (backoff < 100) + backoff += 10; + return; + } + if (cb) cb(er) + }) + } + if (Object.setPrototypeOf) Object.setPrototypeOf(rename, fs$rename) + return rename + })(fs.rename) + } + + // if read() returns EAGAIN, then just try it again. + fs.read = typeof fs.read !== 'function' ? fs.read + : (function (fs$read) { + function read (fd, buffer, offset, length, position, callback_) { + var callback + if (callback_ && typeof callback_ === 'function') { + var eagCounter = 0 + callback = function (er, _, __) { + if (er && er.code === 'EAGAIN' && eagCounter < 10) { + eagCounter ++ + return fs$read.call(fs, fd, buffer, offset, length, position, callback) + } + callback_.apply(this, arguments) + } + } + return fs$read.call(fs, fd, buffer, offset, length, position, callback) + } + + // This ensures `util.promisify` works as it does for native `fs.read`. + if (Object.setPrototypeOf) Object.setPrototypeOf(read, fs$read) + return read + })(fs.read) + + fs.readSync = typeof fs.readSync !== 'function' ? fs.readSync + : (function (fs$readSync) { return function (fd, buffer, offset, length, position) { + var eagCounter = 0 + while (true) { + try { + return fs$readSync.call(fs, fd, buffer, offset, length, position) + } catch (er) { + if (er.code === 'EAGAIN' && eagCounter < 10) { + eagCounter ++ + continue + } + throw er + } + } + }})(fs.readSync) + + function patchLchmod (fs) { + fs.lchmod = function (path, mode, callback) { + fs.open( path + , constants.O_WRONLY | constants.O_SYMLINK + , mode + , function (err, fd) { + if (err) { + if (callback) callback(err) + return + } + // prefer to return the chmod error, if one occurs, + // but still try to close, and report closing errors if they occur. + fs.fchmod(fd, mode, function (err) { + fs.close(fd, function(err2) { + if (callback) callback(err || err2) + }) + }) + }) + } + + fs.lchmodSync = function (path, mode) { + var fd = fs.openSync(path, constants.O_WRONLY | constants.O_SYMLINK, mode) + + // prefer to return the chmod error, if one occurs, + // but still try to close, and report closing errors if they occur. + var threw = true + var ret + try { + ret = fs.fchmodSync(fd, mode) + threw = false + } finally { + if (threw) { + try { + fs.closeSync(fd) + } catch (er) {} + } else { + fs.closeSync(fd) + } + } + return ret + } + } + + function patchLutimes (fs) { + if (constants.hasOwnProperty("O_SYMLINK") && fs.futimes) { + fs.lutimes = function (path, at, mt, cb) { + fs.open(path, constants.O_SYMLINK, function (er, fd) { + if (er) { + if (cb) cb(er) + return + } + fs.futimes(fd, at, mt, function (er) { + fs.close(fd, function (er2) { + if (cb) cb(er || er2) + }) + }) + }) + } + + fs.lutimesSync = function (path, at, mt) { + var fd = fs.openSync(path, constants.O_SYMLINK) + var ret + var threw = true + try { + ret = fs.futimesSync(fd, at, mt) + threw = false + } finally { + if (threw) { + try { + fs.closeSync(fd) + } catch (er) {} + } else { + fs.closeSync(fd) + } + } + return ret + } + + } else if (fs.futimes) { + fs.lutimes = function (_a, _b, _c, cb) { if (cb) process.nextTick(cb) } + fs.lutimesSync = function () {} + } + } + + function chmodFix (orig) { + if (!orig) return orig + return function (target, mode, cb) { + return orig.call(fs, target, mode, function (er) { + if (chownErOk(er)) er = null + if (cb) cb.apply(this, arguments) + }) + } + } + + function chmodFixSync (orig) { + if (!orig) return orig + return function (target, mode) { + try { + return orig.call(fs, target, mode) + } catch (er) { + if (!chownErOk(er)) throw er + } + } + } + + + function chownFix (orig) { + if (!orig) return orig + return function (target, uid, gid, cb) { + return orig.call(fs, target, uid, gid, function (er) { + if (chownErOk(er)) er = null + if (cb) cb.apply(this, arguments) + }) + } + } + + function chownFixSync (orig) { + if (!orig) return orig + return function (target, uid, gid) { + try { + return orig.call(fs, target, uid, gid) + } catch (er) { + if (!chownErOk(er)) throw er + } + } + } + + function statFix (orig) { + if (!orig) return orig + // Older versions of Node erroneously returned signed integers for + // uid + gid. + return function (target, options, cb) { + if (typeof options === 'function') { + cb = options + options = null + } + function callback (er, stats) { + if (stats) { + if (stats.uid < 0) stats.uid += 0x100000000 + if (stats.gid < 0) stats.gid += 0x100000000 + } + if (cb) cb.apply(this, arguments) + } + return options ? orig.call(fs, target, options, callback) + : orig.call(fs, target, callback) + } + } + + function statFixSync (orig) { + if (!orig) return orig + // Older versions of Node erroneously returned signed integers for + // uid + gid. + return function (target, options) { + var stats = options ? orig.call(fs, target, options) + : orig.call(fs, target) + if (stats) { + if (stats.uid < 0) stats.uid += 0x100000000 + if (stats.gid < 0) stats.gid += 0x100000000 + } + return stats; + } + } + + // ENOSYS means that the fs doesn't support the op. Just ignore + // that, because it doesn't matter. + // + // if there's no getuid, or if getuid() is something other + // than 0, and the error is EINVAL or EPERM, then just ignore + // it. + // + // This specific case is a silent failure in cp, install, tar, + // and most other unix tools that manage permissions. + // + // When running as root, or if other types of errors are + // encountered, then it's strict. + function chownErOk (er) { + if (!er) + return true + + if (er.code === "ENOSYS") + return true + + var nonroot = !process.getuid || process.getuid() !== 0 + if (nonroot) { + if (er.code === "EINVAL" || er.code === "EPERM") + return true + } + + return false + } +} diff --git a/node_modules/ignore/LICENSE-MIT b/node_modules/ignore/LICENSE-MIT new file mode 100644 index 0000000..825533e --- /dev/null +++ b/node_modules/ignore/LICENSE-MIT @@ -0,0 +1,21 @@ +Copyright (c) 2013 Kael Zhang , contributors +http://kael.me/ + +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. \ No newline at end of file diff --git a/node_modules/ignore/README.md b/node_modules/ignore/README.md new file mode 100644 index 0000000..50d8882 --- /dev/null +++ b/node_modules/ignore/README.md @@ -0,0 +1,412 @@ + + + + + + + + + + + + + +
LinuxOS XWindowsCoverageDownloads
+ + Build Status + + + Windows Build Status + + + Coverage Status + + + npm module downloads per month +
+ +# ignore + +`ignore` is a manager, filter and parser which implemented in pure JavaScript according to the [.gitignore spec 2.22.1](http://git-scm.com/docs/gitignore). + +`ignore` is used by eslint, gitbook and [many others](https://www.npmjs.com/browse/depended/ignore). + +Pay **ATTENTION** that [`minimatch`](https://www.npmjs.org/package/minimatch) (which used by `fstream-ignore`) does not follow the gitignore spec. + +To filter filenames according to a .gitignore file, I recommend this npm package, `ignore`. + +To parse an `.npmignore` file, you should use `minimatch`, because an `.npmignore` file is parsed by npm using `minimatch` and it does not work in the .gitignore way. + +### Tested on + +`ignore` is fully tested, and has more than **five hundreds** of unit tests. + +- Linux + Node: `0.8` - `7.x` +- Windows + Node: `0.10` - `7.x`, node < `0.10` is not tested due to the lack of support of appveyor. + +Actually, `ignore` does not rely on any versions of node specially. + +Since `4.0.0`, ignore will no longer support `node < 6` by default, to use in node < 6, `require('ignore/legacy')`. For details, see [CHANGELOG](https://github.com/kaelzhang/node-ignore/blob/master/CHANGELOG.md). + +## Table Of Main Contents + +- [Usage](#usage) +- [`Pathname` Conventions](#pathname-conventions) +- See Also: + - [`glob-gitignore`](https://www.npmjs.com/package/glob-gitignore) matches files using patterns and filters them according to gitignore rules. +- [Upgrade Guide](#upgrade-guide) + +## Install + +```sh +npm i ignore +``` + +## Usage + +```js +import ignore from 'ignore' +const ig = ignore().add(['.abc/*', '!.abc/d/']) +``` + +### Filter the given paths + +```js +const paths = [ + '.abc/a.js', // filtered out + '.abc/d/e.js' // included +] + +ig.filter(paths) // ['.abc/d/e.js'] +ig.ignores('.abc/a.js') // true +``` + +### As the filter function + +```js +paths.filter(ig.createFilter()); // ['.abc/d/e.js'] +``` + +### Win32 paths will be handled + +```js +ig.filter(['.abc\\a.js', '.abc\\d\\e.js']) +// if the code above runs on windows, the result will be +// ['.abc\\d\\e.js'] +``` + +## Why another ignore? + +- `ignore` is a standalone module, and is much simpler so that it could easy work with other programs, unlike [isaacs](https://npmjs.org/~isaacs)'s [fstream-ignore](https://npmjs.org/package/fstream-ignore) which must work with the modules of the fstream family. + +- `ignore` only contains utility methods to filter paths according to the specified ignore rules, so + - `ignore` never try to find out ignore rules by traversing directories or fetching from git configurations. + - `ignore` don't cares about sub-modules of git projects. + +- Exactly according to [gitignore man page](http://git-scm.com/docs/gitignore), fixes some known matching issues of fstream-ignore, such as: + - '`/*.js`' should only match '`a.js`', but not '`abc/a.js`'. + - '`**/foo`' should match '`foo`' anywhere. + - Prevent re-including a file if a parent directory of that file is excluded. + - Handle trailing whitespaces: + - `'a '`(one space) should not match `'a '`(two spaces). + - `'a \ '` matches `'a '` + - All test cases are verified with the result of `git check-ignore`. + +# Methods + +## .add(pattern: string | Ignore): this +## .add(patterns: Array): this + +- **pattern** `String | Ignore` An ignore pattern string, or the `Ignore` instance +- **patterns** `Array` Array of ignore patterns. + +Adds a rule or several rules to the current manager. + +Returns `this` + +Notice that a line starting with `'#'`(hash) is treated as a comment. Put a backslash (`'\'`) in front of the first hash for patterns that begin with a hash, if you want to ignore a file with a hash at the beginning of the filename. + +```js +ignore().add('#abc').ignores('#abc') // false +ignore().add('\\#abc').ignores('#abc') // true +``` + +`pattern` could either be a line of ignore pattern or a string of multiple ignore patterns, which means we could just `ignore().add()` the content of a ignore file: + +```js +ignore() +.add(fs.readFileSync(filenameOfGitignore).toString()) +.filter(filenames) +``` + +`pattern` could also be an `ignore` instance, so that we could easily inherit the rules of another `Ignore` instance. + +## .addIgnoreFile(path) + +REMOVED in `3.x` for now. + +To upgrade `ignore@2.x` up to `3.x`, use + +```js +import fs from 'fs' + +if (fs.existsSync(filename)) { + ignore().add(fs.readFileSync(filename).toString()) +} +``` + +instead. + +## .filter(paths: Array<Pathname>): Array<Pathname> + +```ts +type Pathname = string +``` + +Filters the given array of pathnames, and returns the filtered array. + +- **paths** `Array.` The array of `pathname`s to be filtered. + +### `Pathname` Conventions: + +#### 1. `Pathname` should be a `path.relative()`d pathname + +`Pathname` should be a string that have been `path.join()`ed, or the return value of `path.relative()` to the current directory, + +```js +// WRONG, an error will be thrown +ig.ignores('./abc') + +// WRONG, for it will never happen, and an error will be thrown +// If the gitignore rule locates at the root directory, +// `'/abc'` should be changed to `'abc'`. +// ``` +// path.relative('/', '/abc') -> 'abc' +// ``` +ig.ignores('/abc') + +// WRONG, that it is an absolute path on Windows, an error will be thrown +ig.ignores('C:\\abc') + +// Right +ig.ignores('abc') + +// Right +ig.ignores(path.join('./abc')) // path.join('./abc') -> 'abc' +``` + +In other words, each `Pathname` here should be a relative path to the directory of the gitignore rules. + +Suppose the dir structure is: + +``` +/path/to/your/repo + |-- a + | |-- a.js + | + |-- .b + | + |-- .c + |-- .DS_store +``` + +Then the `paths` might be like this: + +```js +[ + 'a/a.js' + '.b', + '.c/.DS_store' +] +``` + +#### 2. filenames and dirnames + +`node-ignore` does NO `fs.stat` during path matching, so for the example below: + +```js +// First, we add a ignore pattern to ignore a directory +ig.add('config/') + +// `ig` does NOT know if 'config', in the real world, +// is a normal file, directory or something. + +ig.ignores('config') +// `ig` treats `config` as a file, so it returns `false` + +ig.ignores('config/') +// returns `true` +``` + +Specially for people who develop some library based on `node-ignore`, it is important to understand that. + +Usually, you could use [`glob`](http://npmjs.org/package/glob) with `option.mark = true` to fetch the structure of the current directory: + +```js +import glob from 'glob' + +glob('**', { + // Adds a / character to directory matches. + mark: true +}, (err, files) => { + if (err) { + return console.error(err) + } + + let filtered = ignore().add(patterns).filter(files) + console.log(filtered) +}) +``` + +## .ignores(pathname: Pathname): boolean + +> new in 3.2.0 + +Returns `Boolean` whether `pathname` should be ignored. + +```js +ig.ignores('.abc/a.js') // true +``` + +## .createFilter() + +Creates a filter function which could filter an array of paths with `Array.prototype.filter`. + +Returns `function(path)` the filter function. + +## .test(pathname: Pathname) since 5.0.0 + +Returns `TestResult` + +```ts +interface TestResult { + ignored: boolean + // true if the `pathname` is finally unignored by some negative pattern + unignored: boolean +} +``` + +- `{ignored: true, unignored: false}`: the `pathname` is ignored +- `{ignored: false, unignored: true}`: the `pathname` is unignored +- `{ignored: false, unignored: false}`: the `pathname` is never matched by any ignore rules. + +## static `ignore.isPathValid(pathname): boolean` since 5.0.0 + +Check whether the `pathname` is an valid `path.relative()`d path according to the [convention](#1-pathname-should-be-a-pathrelatived-pathname). + +This method is **NOT** used to check if an ignore pattern is valid. + +```js +ignore.isPathValid('./foo') // false +``` + +## ignore(options) + +### `options.ignorecase` since 4.0.0 + +Similar as the `core.ignorecase` option of [git-config](https://git-scm.com/docs/git-config), `node-ignore` will be case insensitive if `options.ignorecase` is set to `true` (the default value), otherwise case sensitive. + +```js +const ig = ignore({ + ignorecase: false +}) + +ig.add('*.png') + +ig.ignores('*.PNG') // false +``` + +### `options.ignoreCase?: boolean` since 5.2.0 + +Which is alternative to `options.ignoreCase` + +### `options.allowRelativePaths?: boolean` since 5.2.0 + +This option brings backward compatibility with projects which based on `ignore@4.x`. If `options.allowRelativePaths` is `true`, `ignore` will not check whether the given path to be tested is [`path.relative()`d](#pathname-conventions). + +However, passing a relative path, such as `'./foo'` or `'../foo'`, to test if it is ignored or not is not a good practise, which might lead to unexpected behavior + +```js +ignore({ + allowRelativePaths: true +}).ignores('../foo/bar.js') // And it will not throw +``` + +**** + +# Upgrade Guide + +## Upgrade 4.x -> 5.x + +Since `5.0.0`, if an invalid `Pathname` passed into `ig.ignores()`, an error will be thrown, unless `options.allowRelative = true` is passed to the `Ignore` factory. + +While `ignore < 5.0.0` did not make sure what the return value was, as well as + +```ts +.ignores(pathname: Pathname): boolean + +.filter(pathnames: Array): Array + +.createFilter(): (pathname: Pathname) => boolean + +.test(pathname: Pathname): {ignored: boolean, unignored: boolean} +``` + +See the convention [here](#1-pathname-should-be-a-pathrelatived-pathname) for details. + +If there are invalid pathnames, the conversion and filtration should be done by users. + +```js +import {isPathValid} from 'ignore' // introduced in 5.0.0 + +const paths = [ + // invalid + ////////////////// + '', + false, + '../foo', + '.', + ////////////////// + + // valid + 'foo' +] +.filter(isValidPath) + +ig.filter(paths) +``` + +## Upgrade 3.x -> 4.x + +Since `4.0.0`, `ignore` will no longer support node < 6, to use `ignore` in node < 6: + +```js +var ignore = require('ignore/legacy') +``` + +## Upgrade 2.x -> 3.x + +- All `options` of 2.x are unnecessary and removed, so just remove them. +- `ignore()` instance is no longer an [`EventEmitter`](nodejs.org/api/events.html), and all events are unnecessary and removed. +- `.addIgnoreFile()` is removed, see the [.addIgnoreFile](#addignorefilepath) section for details. + +**** + +# Collaborators + +- [@whitecolor](https://github.com/whitecolor) *Alex* +- [@SamyPesse](https://github.com/SamyPesse) *Samy Pessé* +- [@azproduction](https://github.com/azproduction) *Mikhail Davydov* +- [@TrySound](https://github.com/TrySound) *Bogdan Chadkin* +- [@JanMattner](https://github.com/JanMattner) *Jan Mattner* +- [@ntwb](https://github.com/ntwb) *Stephen Edgar* +- [@kasperisager](https://github.com/kasperisager) *Kasper Isager* +- [@sandersn](https://github.com/sandersn) *Nathan Shively-Sanders* diff --git a/node_modules/ignore/index.d.ts b/node_modules/ignore/index.d.ts new file mode 100644 index 0000000..970631e --- /dev/null +++ b/node_modules/ignore/index.d.ts @@ -0,0 +1,61 @@ +type Pathname = string + +interface TestResult { + ignored: boolean + unignored: boolean +} + +export interface Ignore { + /** + * Adds one or several rules to the current manager. + * @param {string[]} patterns + * @returns IgnoreBase + */ + add(patterns: string | Ignore | readonly (string | Ignore)[]): this + + /** + * Filters the given array of pathnames, and returns the filtered array. + * NOTICE that each path here should be a relative path to the root of your repository. + * @param paths the array of paths to be filtered. + * @returns The filtered array of paths + */ + filter(pathnames: readonly Pathname[]): Pathname[] + + /** + * Creates a filter function which could filter + * an array of paths with Array.prototype.filter. + */ + createFilter(): (pathname: Pathname) => boolean + + /** + * Returns Boolean whether pathname should be ignored. + * @param {string} pathname a path to check + * @returns boolean + */ + ignores(pathname: Pathname): boolean + + /** + * Returns whether pathname should be ignored or unignored + * @param {string} pathname a path to check + * @returns TestResult + */ + test(pathname: Pathname): TestResult +} + +export interface Options { + ignorecase?: boolean + // For compatibility + ignoreCase?: boolean + allowRelativePaths?: boolean +} + +/** + * Creates new ignore manager. + */ +declare function ignore(options?: Options): Ignore + +declare namespace ignore { + export function isPathValid (pathname: string): boolean +} + +export default ignore diff --git a/node_modules/ignore/index.js b/node_modules/ignore/index.js new file mode 100644 index 0000000..9f0dbfe --- /dev/null +++ b/node_modules/ignore/index.js @@ -0,0 +1,636 @@ +// A simple implementation of make-array +function makeArray (subject) { + return Array.isArray(subject) + ? subject + : [subject] +} + +const EMPTY = '' +const SPACE = ' ' +const ESCAPE = '\\' +const REGEX_TEST_BLANK_LINE = /^\s+$/ +const REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/ +const REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/ +const REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/ +const REGEX_SPLITALL_CRLF = /\r?\n/g +// /foo, +// ./foo, +// ../foo, +// . +// .. +const REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/ + +const SLASH = '/' + +// Do not use ternary expression here, since "istanbul ignore next" is buggy +let TMP_KEY_IGNORE = 'node-ignore' +/* istanbul ignore else */ +if (typeof Symbol !== 'undefined') { + TMP_KEY_IGNORE = Symbol.for('node-ignore') +} +const KEY_IGNORE = TMP_KEY_IGNORE + +const define = (object, key, value) => + Object.defineProperty(object, key, {value}) + +const REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g + +const RETURN_FALSE = () => false + +// Sanitize the range of a regular expression +// The cases are complicated, see test cases for details +const sanitizeRange = range => range.replace( + REGEX_REGEXP_RANGE, + (match, from, to) => from.charCodeAt(0) <= to.charCodeAt(0) + ? match + // Invalid range (out of order) which is ok for gitignore rules but + // fatal for JavaScript regular expression, so eliminate it. + : EMPTY +) + +// See fixtures #59 +const cleanRangeBackSlash = slashes => { + const {length} = slashes + return slashes.slice(0, length - length % 2) +} + +// > If the pattern ends with a slash, +// > it is removed for the purpose of the following description, +// > but it would only find a match with a directory. +// > In other words, foo/ will match a directory foo and paths underneath it, +// > but will not match a regular file or a symbolic link foo +// > (this is consistent with the way how pathspec works in general in Git). +// '`foo/`' will not match regular file '`foo`' or symbolic link '`foo`' +// -> ignore-rules will not deal with it, because it costs extra `fs.stat` call +// you could use option `mark: true` with `glob` + +// '`foo/`' should not continue with the '`..`' +const REPLACERS = [ + + [ + // remove BOM + // TODO: + // Other similar zero-width characters? + /^\uFEFF/, + () => EMPTY + ], + + // > Trailing spaces are ignored unless they are quoted with backslash ("\") + [ + // (a\ ) -> (a ) + // (a ) -> (a) + // (a ) -> (a) + // (a \ ) -> (a ) + /((?:\\\\)*?)(\\?\s+)$/, + (_, m1, m2) => m1 + ( + m2.indexOf('\\') === 0 + ? SPACE + : EMPTY + ) + ], + + // replace (\ ) with ' ' + // (\ ) -> ' ' + // (\\ ) -> '\\ ' + // (\\\ ) -> '\\ ' + [ + /(\\+?)\s/g, + (_, m1) => { + const {length} = m1 + return m1.slice(0, length - length % 2) + SPACE + } + ], + + // Escape metacharacters + // which is written down by users but means special for regular expressions. + + // > There are 12 characters with special meanings: + // > - the backslash \, + // > - the caret ^, + // > - the dollar sign $, + // > - the period or dot ., + // > - the vertical bar or pipe symbol |, + // > - the question mark ?, + // > - the asterisk or star *, + // > - the plus sign +, + // > - the opening parenthesis (, + // > - the closing parenthesis ), + // > - and the opening square bracket [, + // > - the opening curly brace {, + // > These special characters are often called "metacharacters". + [ + /[\\$.|*+(){^]/g, + match => `\\${match}` + ], + + [ + // > a question mark (?) matches a single character + /(?!\\)\?/g, + () => '[^/]' + ], + + // leading slash + [ + + // > A leading slash matches the beginning of the pathname. + // > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c". + // A leading slash matches the beginning of the pathname + /^\//, + () => '^' + ], + + // replace special metacharacter slash after the leading slash + [ + /\//g, + () => '\\/' + ], + + [ + // > A leading "**" followed by a slash means match in all directories. + // > For example, "**/foo" matches file or directory "foo" anywhere, + // > the same as pattern "foo". + // > "**/foo/bar" matches file or directory "bar" anywhere that is directly + // > under directory "foo". + // Notice that the '*'s have been replaced as '\\*' + /^\^*\\\*\\\*\\\//, + + // '**/foo' <-> 'foo' + () => '^(?:.*\\/)?' + ], + + // starting + [ + // there will be no leading '/' + // (which has been replaced by section "leading slash") + // If starts with '**', adding a '^' to the regular expression also works + /^(?=[^^])/, + function startingReplacer () { + // If has a slash `/` at the beginning or middle + return !/\/(?!$)/.test(this) + // > Prior to 2.22.1 + // > If the pattern does not contain a slash /, + // > Git treats it as a shell glob pattern + // Actually, if there is only a trailing slash, + // git also treats it as a shell glob pattern + + // After 2.22.1 (compatible but clearer) + // > If there is a separator at the beginning or middle (or both) + // > of the pattern, then the pattern is relative to the directory + // > level of the particular .gitignore file itself. + // > Otherwise the pattern may also match at any level below + // > the .gitignore level. + ? '(?:^|\\/)' + + // > Otherwise, Git treats the pattern as a shell glob suitable for + // > consumption by fnmatch(3) + : '^' + } + ], + + // two globstars + [ + // Use lookahead assertions so that we could match more than one `'/**'` + /\\\/\\\*\\\*(?=\\\/|$)/g, + + // Zero, one or several directories + // should not use '*', or it will be replaced by the next replacer + + // Check if it is not the last `'/**'` + (_, index, str) => index + 6 < str.length + + // case: /**/ + // > A slash followed by two consecutive asterisks then a slash matches + // > zero or more directories. + // > For example, "a/**/b" matches "a/b", "a/x/b", "a/x/y/b" and so on. + // '/**/' + ? '(?:\\/[^\\/]+)*' + + // case: /** + // > A trailing `"/**"` matches everything inside. + + // #21: everything inside but it should not include the current folder + : '\\/.+' + ], + + // normal intermediate wildcards + [ + // Never replace escaped '*' + // ignore rule '\*' will match the path '*' + + // 'abc.*/' -> go + // 'abc.*' -> skip this rule, + // coz trailing single wildcard will be handed by [trailing wildcard] + /(^|[^\\]+)(\\\*)+(?=.+)/g, + + // '*.js' matches '.js' + // '*.js' doesn't match 'abc' + (_, p1, p2) => { + // 1. + // > An asterisk "*" matches anything except a slash. + // 2. + // > Other consecutive asterisks are considered regular asterisks + // > and will match according to the previous rules. + const unescaped = p2.replace(/\\\*/g, '[^\\/]*') + return p1 + unescaped + } + ], + + [ + // unescape, revert step 3 except for back slash + // For example, if a user escape a '\\*', + // after step 3, the result will be '\\\\\\*' + /\\\\\\(?=[$.|*+(){^])/g, + () => ESCAPE + ], + + [ + // '\\\\' -> '\\' + /\\\\/g, + () => ESCAPE + ], + + [ + // > The range notation, e.g. [a-zA-Z], + // > can be used to match one of the characters in a range. + + // `\` is escaped by step 3 + /(\\)?\[([^\]/]*?)(\\*)($|\])/g, + (match, leadEscape, range, endEscape, close) => leadEscape === ESCAPE + // '\\[bar]' -> '\\\\[bar\\]' + ? `\\[${range}${cleanRangeBackSlash(endEscape)}${close}` + : close === ']' + ? endEscape.length % 2 === 0 + // A normal case, and it is a range notation + // '[bar]' + // '[bar\\\\]' + ? `[${sanitizeRange(range)}${endEscape}]` + // Invalid range notaton + // '[bar\\]' -> '[bar\\\\]' + : '[]' + : '[]' + ], + + // ending + [ + // 'js' will not match 'js.' + // 'ab' will not match 'abc' + /(?:[^*])$/, + + // WTF! + // https://git-scm.com/docs/gitignore + // changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1) + // which re-fixes #24, #38 + + // > If there is a separator at the end of the pattern then the pattern + // > will only match directories, otherwise the pattern can match both + // > files and directories. + + // 'js*' will not match 'a.js' + // 'js/' will not match 'a.js' + // 'js' will match 'a.js' and 'a.js/' + match => /\/$/.test(match) + // foo/ will not match 'foo' + ? `${match}$` + // foo matches 'foo' and 'foo/' + : `${match}(?=$|\\/$)` + ], + + // trailing wildcard + [ + /(\^|\\\/)?\\\*$/, + (_, p1) => { + const prefix = p1 + // '\^': + // '/*' does not match EMPTY + // '/*' does not match everything + + // '\\\/': + // 'abc/*' does not match 'abc/' + ? `${p1}[^/]+` + + // 'a*' matches 'a' + // 'a*' matches 'aa' + : '[^/]*' + + return `${prefix}(?=$|\\/$)` + } + ], +] + +// A simple cache, because an ignore rule only has only one certain meaning +const regexCache = Object.create(null) + +// @param {pattern} +const makeRegex = (pattern, ignoreCase) => { + let source = regexCache[pattern] + + if (!source) { + source = REPLACERS.reduce( + (prev, [matcher, replacer]) => + prev.replace(matcher, replacer.bind(pattern)), + pattern + ) + regexCache[pattern] = source + } + + return ignoreCase + ? new RegExp(source, 'i') + : new RegExp(source) +} + +const isString = subject => typeof subject === 'string' + +// > A blank line matches no files, so it can serve as a separator for readability. +const checkPattern = pattern => pattern + && isString(pattern) + && !REGEX_TEST_BLANK_LINE.test(pattern) + && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) + + // > A line starting with # serves as a comment. + && pattern.indexOf('#') !== 0 + +const splitPattern = pattern => pattern.split(REGEX_SPLITALL_CRLF) + +class IgnoreRule { + constructor ( + origin, + pattern, + negative, + regex + ) { + this.origin = origin + this.pattern = pattern + this.negative = negative + this.regex = regex + } +} + +const createRule = (pattern, ignoreCase) => { + const origin = pattern + let negative = false + + // > An optional prefix "!" which negates the pattern; + if (pattern.indexOf('!') === 0) { + negative = true + pattern = pattern.substr(1) + } + + pattern = pattern + // > Put a backslash ("\") in front of the first "!" for patterns that + // > begin with a literal "!", for example, `"\!important!.txt"`. + .replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, '!') + // > Put a backslash ("\") in front of the first hash for patterns that + // > begin with a hash. + .replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, '#') + + const regex = makeRegex(pattern, ignoreCase) + + return new IgnoreRule( + origin, + pattern, + negative, + regex + ) +} + +const throwError = (message, Ctor) => { + throw new Ctor(message) +} + +const checkPath = (path, originalPath, doThrow) => { + if (!isString(path)) { + return doThrow( + `path must be a string, but got \`${originalPath}\``, + TypeError + ) + } + + // We don't know if we should ignore EMPTY, so throw + if (!path) { + return doThrow(`path must not be empty`, TypeError) + } + + // Check if it is a relative path + if (checkPath.isNotRelative(path)) { + const r = '`path.relative()`d' + return doThrow( + `path should be a ${r} string, but got "${originalPath}"`, + RangeError + ) + } + + return true +} + +const isNotRelative = path => REGEX_TEST_INVALID_PATH.test(path) + +checkPath.isNotRelative = isNotRelative +checkPath.convert = p => p + +class Ignore { + constructor ({ + ignorecase = true, + ignoreCase = ignorecase, + allowRelativePaths = false + } = {}) { + define(this, KEY_IGNORE, true) + + this._rules = [] + this._ignoreCase = ignoreCase + this._allowRelativePaths = allowRelativePaths + this._initCache() + } + + _initCache () { + this._ignoreCache = Object.create(null) + this._testCache = Object.create(null) + } + + _addPattern (pattern) { + // #32 + if (pattern && pattern[KEY_IGNORE]) { + this._rules = this._rules.concat(pattern._rules) + this._added = true + return + } + + if (checkPattern(pattern)) { + const rule = createRule(pattern, this._ignoreCase) + this._added = true + this._rules.push(rule) + } + } + + // @param {Array | string | Ignore} pattern + add (pattern) { + this._added = false + + makeArray( + isString(pattern) + ? splitPattern(pattern) + : pattern + ).forEach(this._addPattern, this) + + // Some rules have just added to the ignore, + // making the behavior changed. + if (this._added) { + this._initCache() + } + + return this + } + + // legacy + addPattern (pattern) { + return this.add(pattern) + } + + // | ignored : unignored + // negative | 0:0 | 0:1 | 1:0 | 1:1 + // -------- | ------- | ------- | ------- | -------- + // 0 | TEST | TEST | SKIP | X + // 1 | TESTIF | SKIP | TEST | X + + // - SKIP: always skip + // - TEST: always test + // - TESTIF: only test if checkUnignored + // - X: that never happen + + // @param {boolean} whether should check if the path is unignored, + // setting `checkUnignored` to `false` could reduce additional + // path matching. + + // @returns {TestResult} true if a file is ignored + _testOne (path, checkUnignored) { + let ignored = false + let unignored = false + + this._rules.forEach(rule => { + const {negative} = rule + if ( + unignored === negative && ignored !== unignored + || negative && !ignored && !unignored && !checkUnignored + ) { + return + } + + const matched = rule.regex.test(path) + + if (matched) { + ignored = !negative + unignored = negative + } + }) + + return { + ignored, + unignored + } + } + + // @returns {TestResult} + _test (originalPath, cache, checkUnignored, slices) { + const path = originalPath + // Supports nullable path + && checkPath.convert(originalPath) + + checkPath( + path, + originalPath, + this._allowRelativePaths + ? RETURN_FALSE + : throwError + ) + + return this._t(path, cache, checkUnignored, slices) + } + + _t (path, cache, checkUnignored, slices) { + if (path in cache) { + return cache[path] + } + + if (!slices) { + // path/to/a.js + // ['path', 'to', 'a.js'] + slices = path.split(SLASH) + } + + slices.pop() + + // If the path has no parent directory, just test it + if (!slices.length) { + return cache[path] = this._testOne(path, checkUnignored) + } + + const parent = this._t( + slices.join(SLASH) + SLASH, + cache, + checkUnignored, + slices + ) + + // If the path contains a parent directory, check the parent first + return cache[path] = parent.ignored + // > It is not possible to re-include a file if a parent directory of + // > that file is excluded. + ? parent + : this._testOne(path, checkUnignored) + } + + ignores (path) { + return this._test(path, this._ignoreCache, false).ignored + } + + createFilter () { + return path => !this.ignores(path) + } + + filter (paths) { + return makeArray(paths).filter(this.createFilter()) + } + + // @returns {TestResult} + test (path) { + return this._test(path, this._testCache, true) + } +} + +const factory = options => new Ignore(options) + +const isPathValid = path => + checkPath(path && checkPath.convert(path), path, RETURN_FALSE) + +factory.isPathValid = isPathValid + +// Fixes typescript +factory.default = factory + +module.exports = factory + +// Windows +// -------------------------------------------------------------- +/* istanbul ignore if */ +if ( + // Detect `process` so that it can run in browsers. + typeof process !== 'undefined' + && ( + process.env && process.env.IGNORE_TEST_WIN32 + || process.platform === 'win32' + ) +) { + /* eslint no-control-regex: "off" */ + const makePosix = str => /^\\\\\?\\/.test(str) + || /["<>|\u0000-\u001F]+/u.test(str) + ? str + : str.replace(/\\/g, '/') + + checkPath.convert = makePosix + + // 'C:\\foo' <- 'C:\\foo' has been converted to 'C:/' + // 'd:\\foo' + const REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i + checkPath.isNotRelative = path => + REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path) + || isNotRelative(path) +} diff --git a/node_modules/ignore/legacy.js b/node_modules/ignore/legacy.js new file mode 100644 index 0000000..de3f66c --- /dev/null +++ b/node_modules/ignore/legacy.js @@ -0,0 +1,559 @@ +"use strict"; + +function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } } +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } +function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } +function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } +function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } +function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } +function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } +function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } } +function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } +// A simple implementation of make-array +function makeArray(subject) { + return Array.isArray(subject) ? subject : [subject]; +} +var EMPTY = ''; +var SPACE = ' '; +var ESCAPE = '\\'; +var REGEX_TEST_BLANK_LINE = /^\s+$/; +var REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/; +var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/; +var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/; +var REGEX_SPLITALL_CRLF = /\r?\n/g; +// /foo, +// ./foo, +// ../foo, +// . +// .. +var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/; +var SLASH = '/'; + +// Do not use ternary expression here, since "istanbul ignore next" is buggy +var TMP_KEY_IGNORE = 'node-ignore'; +/* istanbul ignore else */ +if (typeof Symbol !== 'undefined') { + TMP_KEY_IGNORE = Symbol["for"]('node-ignore'); +} +var KEY_IGNORE = TMP_KEY_IGNORE; +var define = function define(object, key, value) { + return Object.defineProperty(object, key, { + value: value + }); +}; +var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g; +var RETURN_FALSE = function RETURN_FALSE() { + return false; +}; + +// Sanitize the range of a regular expression +// The cases are complicated, see test cases for details +var sanitizeRange = function sanitizeRange(range) { + return range.replace(REGEX_REGEXP_RANGE, function (match, from, to) { + return from.charCodeAt(0) <= to.charCodeAt(0) ? match + // Invalid range (out of order) which is ok for gitignore rules but + // fatal for JavaScript regular expression, so eliminate it. + : EMPTY; + }); +}; + +// See fixtures #59 +var cleanRangeBackSlash = function cleanRangeBackSlash(slashes) { + var length = slashes.length; + return slashes.slice(0, length - length % 2); +}; + +// > If the pattern ends with a slash, +// > it is removed for the purpose of the following description, +// > but it would only find a match with a directory. +// > In other words, foo/ will match a directory foo and paths underneath it, +// > but will not match a regular file or a symbolic link foo +// > (this is consistent with the way how pathspec works in general in Git). +// '`foo/`' will not match regular file '`foo`' or symbolic link '`foo`' +// -> ignore-rules will not deal with it, because it costs extra `fs.stat` call +// you could use option `mark: true` with `glob` + +// '`foo/`' should not continue with the '`..`' +var REPLACERS = [[ +// remove BOM +// TODO: +// Other similar zero-width characters? +/^\uFEFF/, function () { + return EMPTY; +}], +// > Trailing spaces are ignored unless they are quoted with backslash ("\") +[ +// (a\ ) -> (a ) +// (a ) -> (a) +// (a ) -> (a) +// (a \ ) -> (a ) +/((?:\\\\)*?)(\\?\s+)$/, function (_, m1, m2) { + return m1 + (m2.indexOf('\\') === 0 ? SPACE : EMPTY); +}], +// replace (\ ) with ' ' +// (\ ) -> ' ' +// (\\ ) -> '\\ ' +// (\\\ ) -> '\\ ' +[/(\\+?)\s/g, function (_, m1) { + var length = m1.length; + return m1.slice(0, length - length % 2) + SPACE; +}], +// Escape metacharacters +// which is written down by users but means special for regular expressions. + +// > There are 12 characters with special meanings: +// > - the backslash \, +// > - the caret ^, +// > - the dollar sign $, +// > - the period or dot ., +// > - the vertical bar or pipe symbol |, +// > - the question mark ?, +// > - the asterisk or star *, +// > - the plus sign +, +// > - the opening parenthesis (, +// > - the closing parenthesis ), +// > - and the opening square bracket [, +// > - the opening curly brace {, +// > These special characters are often called "metacharacters". +[/[\\$.|*+(){^]/g, function (match) { + return "\\".concat(match); +}], [ +// > a question mark (?) matches a single character +/(?!\\)\?/g, function () { + return '[^/]'; +}], +// leading slash +[ +// > A leading slash matches the beginning of the pathname. +// > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c". +// A leading slash matches the beginning of the pathname +/^\//, function () { + return '^'; +}], +// replace special metacharacter slash after the leading slash +[/\//g, function () { + return '\\/'; +}], [ +// > A leading "**" followed by a slash means match in all directories. +// > For example, "**/foo" matches file or directory "foo" anywhere, +// > the same as pattern "foo". +// > "**/foo/bar" matches file or directory "bar" anywhere that is directly +// > under directory "foo". +// Notice that the '*'s have been replaced as '\\*' +/^\^*\\\*\\\*\\\//, +// '**/foo' <-> 'foo' +function () { + return '^(?:.*\\/)?'; +}], +// starting +[ +// there will be no leading '/' +// (which has been replaced by section "leading slash") +// If starts with '**', adding a '^' to the regular expression also works +/^(?=[^^])/, function startingReplacer() { + // If has a slash `/` at the beginning or middle + return !/\/(?!$)/.test(this) + // > Prior to 2.22.1 + // > If the pattern does not contain a slash /, + // > Git treats it as a shell glob pattern + // Actually, if there is only a trailing slash, + // git also treats it as a shell glob pattern + + // After 2.22.1 (compatible but clearer) + // > If there is a separator at the beginning or middle (or both) + // > of the pattern, then the pattern is relative to the directory + // > level of the particular .gitignore file itself. + // > Otherwise the pattern may also match at any level below + // > the .gitignore level. + ? '(?:^|\\/)' + + // > Otherwise, Git treats the pattern as a shell glob suitable for + // > consumption by fnmatch(3) + : '^'; +}], +// two globstars +[ +// Use lookahead assertions so that we could match more than one `'/**'` +/\\\/\\\*\\\*(?=\\\/|$)/g, +// Zero, one or several directories +// should not use '*', or it will be replaced by the next replacer + +// Check if it is not the last `'/**'` +function (_, index, str) { + return index + 6 < str.length + + // case: /**/ + // > A slash followed by two consecutive asterisks then a slash matches + // > zero or more directories. + // > For example, "a/**/b" matches "a/b", "a/x/b", "a/x/y/b" and so on. + // '/**/' + ? '(?:\\/[^\\/]+)*' + + // case: /** + // > A trailing `"/**"` matches everything inside. + + // #21: everything inside but it should not include the current folder + : '\\/.+'; +}], +// normal intermediate wildcards +[ +// Never replace escaped '*' +// ignore rule '\*' will match the path '*' + +// 'abc.*/' -> go +// 'abc.*' -> skip this rule, +// coz trailing single wildcard will be handed by [trailing wildcard] +/(^|[^\\]+)(\\\*)+(?=.+)/g, +// '*.js' matches '.js' +// '*.js' doesn't match 'abc' +function (_, p1, p2) { + // 1. + // > An asterisk "*" matches anything except a slash. + // 2. + // > Other consecutive asterisks are considered regular asterisks + // > and will match according to the previous rules. + var unescaped = p2.replace(/\\\*/g, '[^\\/]*'); + return p1 + unescaped; +}], [ +// unescape, revert step 3 except for back slash +// For example, if a user escape a '\\*', +// after step 3, the result will be '\\\\\\*' +/\\\\\\(?=[$.|*+(){^])/g, function () { + return ESCAPE; +}], [ +// '\\\\' -> '\\' +/\\\\/g, function () { + return ESCAPE; +}], [ +// > The range notation, e.g. [a-zA-Z], +// > can be used to match one of the characters in a range. + +// `\` is escaped by step 3 +/(\\)?\[([^\]/]*?)(\\*)($|\])/g, function (match, leadEscape, range, endEscape, close) { + return leadEscape === ESCAPE + // '\\[bar]' -> '\\\\[bar\\]' + ? "\\[".concat(range).concat(cleanRangeBackSlash(endEscape)).concat(close) : close === ']' ? endEscape.length % 2 === 0 + // A normal case, and it is a range notation + // '[bar]' + // '[bar\\\\]' + ? "[".concat(sanitizeRange(range)).concat(endEscape, "]") // Invalid range notaton + // '[bar\\]' -> '[bar\\\\]' + : '[]' : '[]'; +}], +// ending +[ +// 'js' will not match 'js.' +// 'ab' will not match 'abc' +/(?:[^*])$/, +// WTF! +// https://git-scm.com/docs/gitignore +// changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1) +// which re-fixes #24, #38 + +// > If there is a separator at the end of the pattern then the pattern +// > will only match directories, otherwise the pattern can match both +// > files and directories. + +// 'js*' will not match 'a.js' +// 'js/' will not match 'a.js' +// 'js' will match 'a.js' and 'a.js/' +function (match) { + return /\/$/.test(match) + // foo/ will not match 'foo' + ? "".concat(match, "$") // foo matches 'foo' and 'foo/' + : "".concat(match, "(?=$|\\/$)"); +}], +// trailing wildcard +[/(\^|\\\/)?\\\*$/, function (_, p1) { + var prefix = p1 + // '\^': + // '/*' does not match EMPTY + // '/*' does not match everything + + // '\\\/': + // 'abc/*' does not match 'abc/' + ? "".concat(p1, "[^/]+") // 'a*' matches 'a' + // 'a*' matches 'aa' + : '[^/]*'; + return "".concat(prefix, "(?=$|\\/$)"); +}]]; + +// A simple cache, because an ignore rule only has only one certain meaning +var regexCache = Object.create(null); + +// @param {pattern} +var makeRegex = function makeRegex(pattern, ignoreCase) { + var source = regexCache[pattern]; + if (!source) { + source = REPLACERS.reduce(function (prev, _ref) { + var _ref2 = _slicedToArray(_ref, 2), + matcher = _ref2[0], + replacer = _ref2[1]; + return prev.replace(matcher, replacer.bind(pattern)); + }, pattern); + regexCache[pattern] = source; + } + return ignoreCase ? new RegExp(source, 'i') : new RegExp(source); +}; +var isString = function isString(subject) { + return typeof subject === 'string'; +}; + +// > A blank line matches no files, so it can serve as a separator for readability. +var checkPattern = function checkPattern(pattern) { + return pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern) + + // > A line starting with # serves as a comment. + && pattern.indexOf('#') !== 0; +}; +var splitPattern = function splitPattern(pattern) { + return pattern.split(REGEX_SPLITALL_CRLF); +}; +var IgnoreRule = /*#__PURE__*/_createClass(function IgnoreRule(origin, pattern, negative, regex) { + _classCallCheck(this, IgnoreRule); + this.origin = origin; + this.pattern = pattern; + this.negative = negative; + this.regex = regex; +}); +var createRule = function createRule(pattern, ignoreCase) { + var origin = pattern; + var negative = false; + + // > An optional prefix "!" which negates the pattern; + if (pattern.indexOf('!') === 0) { + negative = true; + pattern = pattern.substr(1); + } + pattern = pattern + // > Put a backslash ("\") in front of the first "!" for patterns that + // > begin with a literal "!", for example, `"\!important!.txt"`. + .replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, '!') + // > Put a backslash ("\") in front of the first hash for patterns that + // > begin with a hash. + .replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, '#'); + var regex = makeRegex(pattern, ignoreCase); + return new IgnoreRule(origin, pattern, negative, regex); +}; +var throwError = function throwError(message, Ctor) { + throw new Ctor(message); +}; +var checkPath = function checkPath(path, originalPath, doThrow) { + if (!isString(path)) { + return doThrow("path must be a string, but got `".concat(originalPath, "`"), TypeError); + } + + // We don't know if we should ignore EMPTY, so throw + if (!path) { + return doThrow("path must not be empty", TypeError); + } + + // Check if it is a relative path + if (checkPath.isNotRelative(path)) { + var r = '`path.relative()`d'; + return doThrow("path should be a ".concat(r, " string, but got \"").concat(originalPath, "\""), RangeError); + } + return true; +}; +var isNotRelative = function isNotRelative(path) { + return REGEX_TEST_INVALID_PATH.test(path); +}; +checkPath.isNotRelative = isNotRelative; +checkPath.convert = function (p) { + return p; +}; +var Ignore = /*#__PURE__*/function () { + function Ignore() { + var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, + _ref3$ignorecase = _ref3.ignorecase, + ignorecase = _ref3$ignorecase === void 0 ? true : _ref3$ignorecase, + _ref3$ignoreCase = _ref3.ignoreCase, + ignoreCase = _ref3$ignoreCase === void 0 ? ignorecase : _ref3$ignoreCase, + _ref3$allowRelativePa = _ref3.allowRelativePaths, + allowRelativePaths = _ref3$allowRelativePa === void 0 ? false : _ref3$allowRelativePa; + _classCallCheck(this, Ignore); + define(this, KEY_IGNORE, true); + this._rules = []; + this._ignoreCase = ignoreCase; + this._allowRelativePaths = allowRelativePaths; + this._initCache(); + } + _createClass(Ignore, [{ + key: "_initCache", + value: function _initCache() { + this._ignoreCache = Object.create(null); + this._testCache = Object.create(null); + } + }, { + key: "_addPattern", + value: function _addPattern(pattern) { + // #32 + if (pattern && pattern[KEY_IGNORE]) { + this._rules = this._rules.concat(pattern._rules); + this._added = true; + return; + } + if (checkPattern(pattern)) { + var rule = createRule(pattern, this._ignoreCase); + this._added = true; + this._rules.push(rule); + } + } + + // @param {Array | string | Ignore} pattern + }, { + key: "add", + value: function add(pattern) { + this._added = false; + makeArray(isString(pattern) ? splitPattern(pattern) : pattern).forEach(this._addPattern, this); + + // Some rules have just added to the ignore, + // making the behavior changed. + if (this._added) { + this._initCache(); + } + return this; + } + + // legacy + }, { + key: "addPattern", + value: function addPattern(pattern) { + return this.add(pattern); + } + + // | ignored : unignored + // negative | 0:0 | 0:1 | 1:0 | 1:1 + // -------- | ------- | ------- | ------- | -------- + // 0 | TEST | TEST | SKIP | X + // 1 | TESTIF | SKIP | TEST | X + + // - SKIP: always skip + // - TEST: always test + // - TESTIF: only test if checkUnignored + // - X: that never happen + + // @param {boolean} whether should check if the path is unignored, + // setting `checkUnignored` to `false` could reduce additional + // path matching. + + // @returns {TestResult} true if a file is ignored + }, { + key: "_testOne", + value: function _testOne(path, checkUnignored) { + var ignored = false; + var unignored = false; + this._rules.forEach(function (rule) { + var negative = rule.negative; + if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) { + return; + } + var matched = rule.regex.test(path); + if (matched) { + ignored = !negative; + unignored = negative; + } + }); + return { + ignored: ignored, + unignored: unignored + }; + } + + // @returns {TestResult} + }, { + key: "_test", + value: function _test(originalPath, cache, checkUnignored, slices) { + var path = originalPath + // Supports nullable path + && checkPath.convert(originalPath); + checkPath(path, originalPath, this._allowRelativePaths ? RETURN_FALSE : throwError); + return this._t(path, cache, checkUnignored, slices); + } + }, { + key: "_t", + value: function _t(path, cache, checkUnignored, slices) { + if (path in cache) { + return cache[path]; + } + if (!slices) { + // path/to/a.js + // ['path', 'to', 'a.js'] + slices = path.split(SLASH); + } + slices.pop(); + + // If the path has no parent directory, just test it + if (!slices.length) { + return cache[path] = this._testOne(path, checkUnignored); + } + var parent = this._t(slices.join(SLASH) + SLASH, cache, checkUnignored, slices); + + // If the path contains a parent directory, check the parent first + return cache[path] = parent.ignored + // > It is not possible to re-include a file if a parent directory of + // > that file is excluded. + ? parent : this._testOne(path, checkUnignored); + } + }, { + key: "ignores", + value: function ignores(path) { + return this._test(path, this._ignoreCache, false).ignored; + } + }, { + key: "createFilter", + value: function createFilter() { + var _this = this; + return function (path) { + return !_this.ignores(path); + }; + } + }, { + key: "filter", + value: function filter(paths) { + return makeArray(paths).filter(this.createFilter()); + } + + // @returns {TestResult} + }, { + key: "test", + value: function test(path) { + return this._test(path, this._testCache, true); + } + }]); + return Ignore; +}(); +var factory = function factory(options) { + return new Ignore(options); +}; +var isPathValid = function isPathValid(path) { + return checkPath(path && checkPath.convert(path), path, RETURN_FALSE); +}; +factory.isPathValid = isPathValid; + +// Fixes typescript +factory["default"] = factory; +module.exports = factory; + +// Windows +// -------------------------------------------------------------- +/* istanbul ignore if */ +if ( +// Detect `process` so that it can run in browsers. +typeof process !== 'undefined' && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === 'win32')) { + /* eslint no-control-regex: "off" */ + var makePosix = function makePosix(str) { + return /^\\\\\?\\/.test(str) || /[\0-\x1F"<>\|]+/.test(str) ? str : str.replace(/\\/g, '/'); + }; + checkPath.convert = makePosix; + + // 'C:\\foo' <- 'C:\\foo' has been converted to 'C:/' + // 'd:\\foo' + var REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i; + checkPath.isNotRelative = function (path) { + return REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path) || isNotRelative(path); + }; +} diff --git a/node_modules/ignore/package.json b/node_modules/ignore/package.json new file mode 100644 index 0000000..b7f684e --- /dev/null +++ b/node_modules/ignore/package.json @@ -0,0 +1,74 @@ +{ + "name": "ignore", + "version": "5.3.2", + "description": "Ignore is a manager and filter for .gitignore rules, the one used by eslint, gitbook and many others.", + "files": [ + "legacy.js", + "index.js", + "index.d.ts", + "LICENSE-MIT" + ], + "scripts": { + "prepublishOnly": "npm run build", + "build": "babel -o legacy.js index.js", + "test:lint": "eslint .", + "test:tsc": "tsc ./test/ts/simple.ts --lib ES6", + "test:ts": "node ./test/ts/simple.js", + "tap": "tap --reporter classic", + "test:git": "npm run tap test/git-check-ignore.js", + "test:ignore": "npm run tap test/ignore.js", + "test:ignore:only": "IGNORE_ONLY_IGNORES=1 npm run tap test/ignore.js", + "test:others": "npm run tap test/others.js", + "test:cases": "npm run tap test/*.js -- --coverage", + "test:no-coverage": "npm run tap test/*.js -- --no-check-coverage", + "test:only": "npm run test:lint && npm run test:tsc && npm run test:ts && npm run test:cases", + "test": "npm run test:only", + "test:win32": "IGNORE_TEST_WIN32=1 npm run test", + "report": "tap --coverage-report=html", + "posttest": "npm run report && codecov" + }, + "repository": { + "type": "git", + "url": "git@github.com:kaelzhang/node-ignore.git" + }, + "keywords": [ + "ignore", + ".gitignore", + "gitignore", + "npmignore", + "rules", + "manager", + "filter", + "regexp", + "regex", + "fnmatch", + "glob", + "asterisks", + "regular-expression" + ], + "author": "kael", + "license": "MIT", + "bugs": { + "url": "https://github.com/kaelzhang/node-ignore/issues" + }, + "devDependencies": { + "@babel/cli": "^7.22.9", + "@babel/core": "^7.22.9", + "@babel/preset-env": "^7.22.9", + "codecov": "^3.8.2", + "debug": "^4.3.4", + "eslint": "^8.46.0", + "eslint-config-ostai": "^3.0.0", + "eslint-plugin-import": "^2.28.0", + "mkdirp": "^3.0.1", + "pre-suf": "^1.1.1", + "rimraf": "^6.0.1", + "spawn-sync": "^2.0.0", + "tap": "^16.3.9", + "tmp": "0.2.3", + "typescript": "^5.1.6" + }, + "engines": { + "node": ">= 4" + } +} diff --git a/node_modules/inflight/LICENSE b/node_modules/inflight/LICENSE new file mode 100644 index 0000000..05eeeb8 --- /dev/null +++ b/node_modules/inflight/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter + +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. diff --git a/node_modules/inflight/README.md b/node_modules/inflight/README.md new file mode 100644 index 0000000..6dc8929 --- /dev/null +++ b/node_modules/inflight/README.md @@ -0,0 +1,37 @@ +# inflight + +Add callbacks to requests in flight to avoid async duplication + +## USAGE + +```javascript +var inflight = require('inflight') + +// some request that does some stuff +function req(key, callback) { + // key is any random string. like a url or filename or whatever. + // + // will return either a falsey value, indicating that the + // request for this key is already in flight, or a new callback + // which when called will call all callbacks passed to inflightk + // with the same key + callback = inflight(key, callback) + + // If we got a falsey value back, then there's already a req going + if (!callback) return + + // this is where you'd fetch the url or whatever + // callback is also once()-ified, so it can safely be assigned + // to multiple events etc. First call wins. + setTimeout(function() { + callback(null, key) + }, 100) +} + +// only assigns a single setTimeout +// when it dings, all cbs get called +req('foo', cb1) +req('foo', cb2) +req('foo', cb3) +req('foo', cb4) +``` diff --git a/node_modules/inflight/inflight.js b/node_modules/inflight/inflight.js new file mode 100644 index 0000000..48202b3 --- /dev/null +++ b/node_modules/inflight/inflight.js @@ -0,0 +1,54 @@ +var wrappy = require('wrappy') +var reqs = Object.create(null) +var once = require('once') + +module.exports = wrappy(inflight) + +function inflight (key, cb) { + if (reqs[key]) { + reqs[key].push(cb) + return null + } else { + reqs[key] = [cb] + return makeres(key) + } +} + +function makeres (key) { + return once(function RES () { + var cbs = reqs[key] + var len = cbs.length + var args = slice(arguments) + + // XXX It's somewhat ambiguous whether a new callback added in this + // pass should be queued for later execution if something in the + // list of callbacks throws, or if it should just be discarded. + // However, it's such an edge case that it hardly matters, and either + // choice is likely as surprising as the other. + // As it happens, we do go ahead and schedule it for later execution. + try { + for (var i = 0; i < len; i++) { + cbs[i].apply(null, args) + } + } finally { + if (cbs.length > len) { + // added more in the interim. + // de-zalgo, just in case, but don't call again. + cbs.splice(0, len) + process.nextTick(function () { + RES.apply(null, args) + }) + } else { + delete reqs[key] + } + } + }) +} + +function slice (args) { + var length = args.length + var array = [] + + for (var i = 0; i < length; i++) array[i] = args[i] + return array +} diff --git a/node_modules/inflight/package.json b/node_modules/inflight/package.json new file mode 100644 index 0000000..6084d35 --- /dev/null +++ b/node_modules/inflight/package.json @@ -0,0 +1,29 @@ +{ + "name": "inflight", + "version": "1.0.6", + "description": "Add callbacks to requests in flight to avoid async duplication", + "main": "inflight.js", + "files": [ + "inflight.js" + ], + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + }, + "devDependencies": { + "tap": "^7.1.2" + }, + "scripts": { + "test": "tap test.js --100" + }, + "repository": { + "type": "git", + "url": "https://github.com/npm/inflight.git" + }, + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "bugs": { + "url": "https://github.com/isaacs/inflight/issues" + }, + "homepage": "https://github.com/isaacs/inflight", + "license": "ISC" +} diff --git a/node_modules/inherits/LICENSE b/node_modules/inherits/LICENSE new file mode 100644 index 0000000..dea3013 --- /dev/null +++ b/node_modules/inherits/LICENSE @@ -0,0 +1,16 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter + +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. + diff --git a/node_modules/inherits/README.md b/node_modules/inherits/README.md new file mode 100644 index 0000000..b1c5665 --- /dev/null +++ b/node_modules/inherits/README.md @@ -0,0 +1,42 @@ +Browser-friendly inheritance fully compatible with standard node.js +[inherits](http://nodejs.org/api/util.html#util_util_inherits_constructor_superconstructor). + +This package exports standard `inherits` from node.js `util` module in +node environment, but also provides alternative browser-friendly +implementation through [browser +field](https://gist.github.com/shtylman/4339901). Alternative +implementation is a literal copy of standard one located in standalone +module to avoid requiring of `util`. It also has a shim for old +browsers with no `Object.create` support. + +While keeping you sure you are using standard `inherits` +implementation in node.js environment, it allows bundlers such as +[browserify](https://github.com/substack/node-browserify) to not +include full `util` package to your client code if all you need is +just `inherits` function. It worth, because browser shim for `util` +package is large and `inherits` is often the single function you need +from it. + +It's recommended to use this package instead of +`require('util').inherits` for any code that has chances to be used +not only in node.js but in browser too. + +## usage + +```js +var inherits = require('inherits'); +// then use exactly as the standard one +``` + +## note on version ~1.0 + +Version ~1.0 had completely different motivation and is not compatible +neither with 2.0 nor with standard node.js `inherits`. + +If you are using version ~1.0 and planning to switch to ~2.0, be +careful: + +* new version uses `super_` instead of `super` for referencing + superclass +* new version overwrites current prototype while old one preserves any + existing fields on it diff --git a/node_modules/inherits/inherits.js b/node_modules/inherits/inherits.js new file mode 100644 index 0000000..f71f2d9 --- /dev/null +++ b/node_modules/inherits/inherits.js @@ -0,0 +1,9 @@ +try { + var util = require('util'); + /* istanbul ignore next */ + if (typeof util.inherits !== 'function') throw ''; + module.exports = util.inherits; +} catch (e) { + /* istanbul ignore next */ + module.exports = require('./inherits_browser.js'); +} diff --git a/node_modules/inherits/inherits_browser.js b/node_modules/inherits/inherits_browser.js new file mode 100644 index 0000000..86bbb3d --- /dev/null +++ b/node_modules/inherits/inherits_browser.js @@ -0,0 +1,27 @@ +if (typeof Object.create === 'function') { + // implementation from standard node.js 'util' module + module.exports = function inherits(ctor, superCtor) { + if (superCtor) { + ctor.super_ = superCtor + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }) + } + }; +} else { + // old school shim for old browsers + module.exports = function inherits(ctor, superCtor) { + if (superCtor) { + ctor.super_ = superCtor + var TempCtor = function () {} + TempCtor.prototype = superCtor.prototype + ctor.prototype = new TempCtor() + ctor.prototype.constructor = ctor + } + } +} diff --git a/node_modules/inherits/package.json b/node_modules/inherits/package.json new file mode 100644 index 0000000..37b4366 --- /dev/null +++ b/node_modules/inherits/package.json @@ -0,0 +1,29 @@ +{ + "name": "inherits", + "description": "Browser-friendly inheritance fully compatible with standard node.js inherits()", + "version": "2.0.4", + "keywords": [ + "inheritance", + "class", + "klass", + "oop", + "object-oriented", + "inherits", + "browser", + "browserify" + ], + "main": "./inherits.js", + "browser": "./inherits_browser.js", + "repository": "git://github.com/isaacs/inherits", + "license": "ISC", + "scripts": { + "test": "tap" + }, + "devDependencies": { + "tap": "^14.2.4" + }, + "files": [ + "inherits.js", + "inherits_browser.js" + ] +} diff --git a/node_modules/is-binary-path/index.d.ts b/node_modules/is-binary-path/index.d.ts new file mode 100644 index 0000000..19dcd43 --- /dev/null +++ b/node_modules/is-binary-path/index.d.ts @@ -0,0 +1,17 @@ +/** +Check if a file path is a binary file. + +@example +``` +import isBinaryPath = require('is-binary-path'); + +isBinaryPath('source/unicorn.png'); +//=> true + +isBinaryPath('source/unicorn.txt'); +//=> false +``` +*/ +declare function isBinaryPath(filePath: string): boolean; + +export = isBinaryPath; diff --git a/node_modules/is-binary-path/index.js b/node_modules/is-binary-path/index.js new file mode 100644 index 0000000..ef7548c --- /dev/null +++ b/node_modules/is-binary-path/index.js @@ -0,0 +1,7 @@ +'use strict'; +const path = require('path'); +const binaryExtensions = require('binary-extensions'); + +const extensions = new Set(binaryExtensions); + +module.exports = filePath => extensions.has(path.extname(filePath).slice(1).toLowerCase()); diff --git a/node_modules/is-binary-path/license b/node_modules/is-binary-path/license new file mode 100644 index 0000000..401b1c7 --- /dev/null +++ b/node_modules/is-binary-path/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) 2019 Sindre Sorhus (https://sindresorhus.com), Paul Miller (https://paulmillr.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. diff --git a/node_modules/is-binary-path/package.json b/node_modules/is-binary-path/package.json new file mode 100644 index 0000000..a8d005a --- /dev/null +++ b/node_modules/is-binary-path/package.json @@ -0,0 +1,40 @@ +{ + "name": "is-binary-path", + "version": "2.1.0", + "description": "Check if a file path is a binary file", + "license": "MIT", + "repository": "sindresorhus/is-binary-path", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "binary", + "extensions", + "extension", + "file", + "path", + "check", + "detect", + "is" + ], + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "devDependencies": { + "ava": "^1.4.1", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/is-binary-path/readme.md b/node_modules/is-binary-path/readme.md new file mode 100644 index 0000000..b4ab025 --- /dev/null +++ b/node_modules/is-binary-path/readme.md @@ -0,0 +1,34 @@ +# is-binary-path [![Build Status](https://travis-ci.org/sindresorhus/is-binary-path.svg?branch=master)](https://travis-ci.org/sindresorhus/is-binary-path) + +> Check if a file path is a binary file + + +## Install + +``` +$ npm install is-binary-path +``` + + +## Usage + +```js +const isBinaryPath = require('is-binary-path'); + +isBinaryPath('source/unicorn.png'); +//=> true + +isBinaryPath('source/unicorn.txt'); +//=> false +``` + + +## Related + +- [binary-extensions](https://github.com/sindresorhus/binary-extensions) - List of binary file extensions +- [is-text-path](https://github.com/sindresorhus/is-text-path) - Check if a filepath is a text file + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com), [Paul Miller](https://paulmillr.com) diff --git a/node_modules/is-extglob/LICENSE b/node_modules/is-extglob/LICENSE new file mode 100644 index 0000000..842218c --- /dev/null +++ b/node_modules/is-extglob/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-2016, Jon Schlinkert + +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. diff --git a/node_modules/is-extglob/README.md b/node_modules/is-extglob/README.md new file mode 100644 index 0000000..0416af5 --- /dev/null +++ b/node_modules/is-extglob/README.md @@ -0,0 +1,107 @@ +# is-extglob [![NPM version](https://img.shields.io/npm/v/is-extglob.svg?style=flat)](https://www.npmjs.com/package/is-extglob) [![NPM downloads](https://img.shields.io/npm/dm/is-extglob.svg?style=flat)](https://npmjs.org/package/is-extglob) [![Build Status](https://img.shields.io/travis/jonschlinkert/is-extglob.svg?style=flat)](https://travis-ci.org/jonschlinkert/is-extglob) + +> Returns true if a string has an extglob. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save is-extglob +``` + +## Usage + +```js +var isExtglob = require('is-extglob'); +``` + +**True** + +```js +isExtglob('?(abc)'); +isExtglob('@(abc)'); +isExtglob('!(abc)'); +isExtglob('*(abc)'); +isExtglob('+(abc)'); +``` + +**False** + +Escaped extglobs: + +```js +isExtglob('\\?(abc)'); +isExtglob('\\@(abc)'); +isExtglob('\\!(abc)'); +isExtglob('\\*(abc)'); +isExtglob('\\+(abc)'); +``` + +Everything else... + +```js +isExtglob('foo.js'); +isExtglob('!foo.js'); +isExtglob('*.js'); +isExtglob('**/abc.js'); +isExtglob('abc/*.js'); +isExtglob('abc/(aaa|bbb).js'); +isExtglob('abc/[a-z].js'); +isExtglob('abc/{a,b}.js'); +isExtglob('abc/?.js'); +isExtglob('abc.js'); +isExtglob('abc/def/ghi.js'); +``` + +## History + +**v2.0** + +Adds support for escaping. Escaped exglobs no longer return true. + +## About + +### Related projects + +* [has-glob](https://www.npmjs.com/package/has-glob): Returns `true` if an array has a glob pattern. | [homepage](https://github.com/jonschlinkert/has-glob "Returns `true` if an array has a glob pattern.") +* [is-glob](https://www.npmjs.com/package/is-glob): Returns `true` if the given string looks like a glob pattern or an extglob pattern… [more](https://github.com/jonschlinkert/is-glob) | [homepage](https://github.com/jonschlinkert/is-glob "Returns `true` if the given string looks like a glob pattern or an extglob pattern. This makes it easy to create code that only uses external modules like node-glob when necessary, resulting in much faster code execution and initialization time, and a bet") +* [micromatch](https://www.npmjs.com/package/micromatch): Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch. | [homepage](https://github.com/jonschlinkert/micromatch "Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch.") + +### Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +### Building docs + +_(This document was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme) (a [verb](https://github.com/verbose/verb) generator), please don't edit the readme directly. Any changes to the readme must be made in [.verb.md](.verb.md).)_ + +To generate the readme and API documentation with [verb](https://github.com/verbose/verb): + +```sh +$ npm install -g verb verb-generate-readme && verb +``` + +### Running tests + +Install dev dependencies: + +```sh +$ npm install -d && npm test +``` + +### Author + +**Jon Schlinkert** + +* [github/jonschlinkert](https://github.com/jonschlinkert) +* [twitter/jonschlinkert](http://twitter.com/jonschlinkert) + +### License + +Copyright © 2016, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT license](https://github.com/jonschlinkert/is-extglob/blob/master/LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.1.31, on October 12, 2016._ \ No newline at end of file diff --git a/node_modules/is-extglob/index.js b/node_modules/is-extglob/index.js new file mode 100644 index 0000000..c1d986f --- /dev/null +++ b/node_modules/is-extglob/index.js @@ -0,0 +1,20 @@ +/*! + * is-extglob + * + * Copyright (c) 2014-2016, Jon Schlinkert. + * Licensed under the MIT License. + */ + +module.exports = function isExtglob(str) { + if (typeof str !== 'string' || str === '') { + return false; + } + + var match; + while ((match = /(\\).|([@?!+*]\(.*\))/g.exec(str))) { + if (match[2]) return true; + str = str.slice(match.index + match[0].length); + } + + return false; +}; diff --git a/node_modules/is-extglob/package.json b/node_modules/is-extglob/package.json new file mode 100644 index 0000000..7a90836 --- /dev/null +++ b/node_modules/is-extglob/package.json @@ -0,0 +1,69 @@ +{ + "name": "is-extglob", + "description": "Returns true if a string has an extglob.", + "version": "2.1.1", + "homepage": "https://github.com/jonschlinkert/is-extglob", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "repository": "jonschlinkert/is-extglob", + "bugs": { + "url": "https://github.com/jonschlinkert/is-extglob/issues" + }, + "license": "MIT", + "files": [ + "index.js" + ], + "main": "index.js", + "engines": { + "node": ">=0.10.0" + }, + "scripts": { + "test": "mocha" + }, + "devDependencies": { + "gulp-format-md": "^0.1.10", + "mocha": "^3.0.2" + }, + "keywords": [ + "bash", + "braces", + "check", + "exec", + "expression", + "extglob", + "glob", + "globbing", + "globstar", + "is", + "match", + "matches", + "pattern", + "regex", + "regular", + "string", + "test" + ], + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "related": { + "list": [ + "has-glob", + "is-glob", + "micromatch" + ] + }, + "reflinks": [ + "verb", + "verb-generate-readme" + ], + "lint": { + "reflinks": true + } + } +} diff --git a/node_modules/is-fullwidth-code-point/index.d.ts b/node_modules/is-fullwidth-code-point/index.d.ts new file mode 100644 index 0000000..729d202 --- /dev/null +++ b/node_modules/is-fullwidth-code-point/index.d.ts @@ -0,0 +1,17 @@ +/** +Check if the character represented by a given [Unicode code point](https://en.wikipedia.org/wiki/Code_point) is [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms). + +@param codePoint - The [code point](https://en.wikipedia.org/wiki/Code_point) of a character. + +@example +``` +import isFullwidthCodePoint from 'is-fullwidth-code-point'; + +isFullwidthCodePoint('谢'.codePointAt(0)); +//=> true + +isFullwidthCodePoint('a'.codePointAt(0)); +//=> false +``` +*/ +export default function isFullwidthCodePoint(codePoint: number): boolean; diff --git a/node_modules/is-fullwidth-code-point/index.js b/node_modules/is-fullwidth-code-point/index.js new file mode 100644 index 0000000..671f97f --- /dev/null +++ b/node_modules/is-fullwidth-code-point/index.js @@ -0,0 +1,50 @@ +/* eslint-disable yoda */ +'use strict'; + +const isFullwidthCodePoint = codePoint => { + if (Number.isNaN(codePoint)) { + return false; + } + + // Code points are derived from: + // http://www.unix.org/Public/UNIDATA/EastAsianWidth.txt + if ( + codePoint >= 0x1100 && ( + codePoint <= 0x115F || // Hangul Jamo + codePoint === 0x2329 || // LEFT-POINTING ANGLE BRACKET + codePoint === 0x232A || // RIGHT-POINTING ANGLE BRACKET + // CJK Radicals Supplement .. Enclosed CJK Letters and Months + (0x2E80 <= codePoint && codePoint <= 0x3247 && codePoint !== 0x303F) || + // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A + (0x3250 <= codePoint && codePoint <= 0x4DBF) || + // CJK Unified Ideographs .. Yi Radicals + (0x4E00 <= codePoint && codePoint <= 0xA4C6) || + // Hangul Jamo Extended-A + (0xA960 <= codePoint && codePoint <= 0xA97C) || + // Hangul Syllables + (0xAC00 <= codePoint && codePoint <= 0xD7A3) || + // CJK Compatibility Ideographs + (0xF900 <= codePoint && codePoint <= 0xFAFF) || + // Vertical Forms + (0xFE10 <= codePoint && codePoint <= 0xFE19) || + // CJK Compatibility Forms .. Small Form Variants + (0xFE30 <= codePoint && codePoint <= 0xFE6B) || + // Halfwidth and Fullwidth Forms + (0xFF01 <= codePoint && codePoint <= 0xFF60) || + (0xFFE0 <= codePoint && codePoint <= 0xFFE6) || + // Kana Supplement + (0x1B000 <= codePoint && codePoint <= 0x1B001) || + // Enclosed Ideographic Supplement + (0x1F200 <= codePoint && codePoint <= 0x1F251) || + // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane + (0x20000 <= codePoint && codePoint <= 0x3FFFD) + ) + ) { + return true; + } + + return false; +}; + +module.exports = isFullwidthCodePoint; +module.exports.default = isFullwidthCodePoint; diff --git a/node_modules/is-fullwidth-code-point/license b/node_modules/is-fullwidth-code-point/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/is-fullwidth-code-point/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.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. diff --git a/node_modules/is-fullwidth-code-point/package.json b/node_modules/is-fullwidth-code-point/package.json new file mode 100644 index 0000000..2137e88 --- /dev/null +++ b/node_modules/is-fullwidth-code-point/package.json @@ -0,0 +1,42 @@ +{ + "name": "is-fullwidth-code-point", + "version": "3.0.0", + "description": "Check if the character represented by a given Unicode code point is fullwidth", + "license": "MIT", + "repository": "sindresorhus/is-fullwidth-code-point", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd-check" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "fullwidth", + "full-width", + "full", + "width", + "unicode", + "character", + "string", + "codepoint", + "code", + "point", + "is", + "detect", + "check" + ], + "devDependencies": { + "ava": "^1.3.1", + "tsd-check": "^0.5.0", + "xo": "^0.24.0" + } +} diff --git a/node_modules/is-fullwidth-code-point/readme.md b/node_modules/is-fullwidth-code-point/readme.md new file mode 100644 index 0000000..4236bba --- /dev/null +++ b/node_modules/is-fullwidth-code-point/readme.md @@ -0,0 +1,39 @@ +# is-fullwidth-code-point [![Build Status](https://travis-ci.org/sindresorhus/is-fullwidth-code-point.svg?branch=master)](https://travis-ci.org/sindresorhus/is-fullwidth-code-point) + +> Check if the character represented by a given [Unicode code point](https://en.wikipedia.org/wiki/Code_point) is [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) + + +## Install + +``` +$ npm install is-fullwidth-code-point +``` + + +## Usage + +```js +const isFullwidthCodePoint = require('is-fullwidth-code-point'); + +isFullwidthCodePoint('谢'.codePointAt(0)); +//=> true + +isFullwidthCodePoint('a'.codePointAt(0)); +//=> false +``` + + +## API + +### isFullwidthCodePoint(codePoint) + +#### codePoint + +Type: `number` + +The [code point](https://en.wikipedia.org/wiki/Code_point) of a character. + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/node_modules/is-glob/LICENSE b/node_modules/is-glob/LICENSE new file mode 100644 index 0000000..3f2eca1 --- /dev/null +++ b/node_modules/is-glob/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-2017, Jon Schlinkert. + +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. diff --git a/node_modules/is-glob/README.md b/node_modules/is-glob/README.md new file mode 100644 index 0000000..740724b --- /dev/null +++ b/node_modules/is-glob/README.md @@ -0,0 +1,206 @@ +# is-glob [![NPM version](https://img.shields.io/npm/v/is-glob.svg?style=flat)](https://www.npmjs.com/package/is-glob) [![NPM monthly downloads](https://img.shields.io/npm/dm/is-glob.svg?style=flat)](https://npmjs.org/package/is-glob) [![NPM total downloads](https://img.shields.io/npm/dt/is-glob.svg?style=flat)](https://npmjs.org/package/is-glob) [![Build Status](https://img.shields.io/github/workflow/status/micromatch/is-glob/dev)](https://github.com/micromatch/is-glob/actions) + +> Returns `true` if the given string looks like a glob pattern or an extglob pattern. This makes it easy to create code that only uses external modules like node-glob when necessary, resulting in much faster code execution and initialization time, and a better user experience. + +Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save is-glob +``` + +You might also be interested in [is-valid-glob](https://github.com/jonschlinkert/is-valid-glob) and [has-glob](https://github.com/jonschlinkert/has-glob). + +## Usage + +```js +var isGlob = require('is-glob'); +``` + +### Default behavior + +**True** + +Patterns that have glob characters or regex patterns will return `true`: + +```js +isGlob('!foo.js'); +isGlob('*.js'); +isGlob('**/abc.js'); +isGlob('abc/*.js'); +isGlob('abc/(aaa|bbb).js'); +isGlob('abc/[a-z].js'); +isGlob('abc/{a,b}.js'); +//=> true +``` + +Extglobs + +```js +isGlob('abc/@(a).js'); +isGlob('abc/!(a).js'); +isGlob('abc/+(a).js'); +isGlob('abc/*(a).js'); +isGlob('abc/?(a).js'); +//=> true +``` + +**False** + +Escaped globs or extglobs return `false`: + +```js +isGlob('abc/\\@(a).js'); +isGlob('abc/\\!(a).js'); +isGlob('abc/\\+(a).js'); +isGlob('abc/\\*(a).js'); +isGlob('abc/\\?(a).js'); +isGlob('\\!foo.js'); +isGlob('\\*.js'); +isGlob('\\*\\*/abc.js'); +isGlob('abc/\\*.js'); +isGlob('abc/\\(aaa|bbb).js'); +isGlob('abc/\\[a-z].js'); +isGlob('abc/\\{a,b}.js'); +//=> false +``` + +Patterns that do not have glob patterns return `false`: + +```js +isGlob('abc.js'); +isGlob('abc/def/ghi.js'); +isGlob('foo.js'); +isGlob('abc/@.js'); +isGlob('abc/+.js'); +isGlob('abc/?.js'); +isGlob(); +isGlob(null); +//=> false +``` + +Arrays are also `false` (If you want to check if an array has a glob pattern, use [has-glob](https://github.com/jonschlinkert/has-glob)): + +```js +isGlob(['**/*.js']); +isGlob(['foo.js']); +//=> false +``` + +### Option strict + +When `options.strict === false` the behavior is less strict in determining if a pattern is a glob. Meaning that +some patterns that would return `false` may return `true`. This is done so that matching libraries like [micromatch](https://github.com/micromatch/micromatch) have a chance at determining if the pattern is a glob or not. + +**True** + +Patterns that have glob characters or regex patterns will return `true`: + +```js +isGlob('!foo.js', {strict: false}); +isGlob('*.js', {strict: false}); +isGlob('**/abc.js', {strict: false}); +isGlob('abc/*.js', {strict: false}); +isGlob('abc/(aaa|bbb).js', {strict: false}); +isGlob('abc/[a-z].js', {strict: false}); +isGlob('abc/{a,b}.js', {strict: false}); +//=> true +``` + +Extglobs + +```js +isGlob('abc/@(a).js', {strict: false}); +isGlob('abc/!(a).js', {strict: false}); +isGlob('abc/+(a).js', {strict: false}); +isGlob('abc/*(a).js', {strict: false}); +isGlob('abc/?(a).js', {strict: false}); +//=> true +``` + +**False** + +Escaped globs or extglobs return `false`: + +```js +isGlob('\\!foo.js', {strict: false}); +isGlob('\\*.js', {strict: false}); +isGlob('\\*\\*/abc.js', {strict: false}); +isGlob('abc/\\*.js', {strict: false}); +isGlob('abc/\\(aaa|bbb).js', {strict: false}); +isGlob('abc/\\[a-z].js', {strict: false}); +isGlob('abc/\\{a,b}.js', {strict: false}); +//=> false +``` + +## About + +
+Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +
+ +
+Running Tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +
+ +
+Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +
+ +### Related projects + +You might also be interested in these projects: + +* [assemble](https://www.npmjs.com/package/assemble): Get the rocks out of your socks! Assemble makes you fast at creating web projects… [more](https://github.com/assemble/assemble) | [homepage](https://github.com/assemble/assemble "Get the rocks out of your socks! Assemble makes you fast at creating web projects. Assemble is used by thousands of projects for rapid prototyping, creating themes, scaffolds, boilerplates, e-books, UI components, API documentation, blogs, building websit") +* [base](https://www.npmjs.com/package/base): Framework for rapidly creating high quality, server-side node.js applications, using plugins like building blocks | [homepage](https://github.com/node-base/base "Framework for rapidly creating high quality, server-side node.js applications, using plugins like building blocks") +* [update](https://www.npmjs.com/package/update): Be scalable! Update is a new, open source developer framework and CLI for automating updates… [more](https://github.com/update/update) | [homepage](https://github.com/update/update "Be scalable! Update is a new, open source developer framework and CLI for automating updates of any kind in code projects.") +* [verb](https://www.npmjs.com/package/verb): Documentation generator for GitHub projects. Verb is extremely powerful, easy to use, and is used… [more](https://github.com/verbose/verb) | [homepage](https://github.com/verbose/verb "Documentation generator for GitHub projects. Verb is extremely powerful, easy to use, and is used on hundreds of projects of all sizes to generate everything from API docs to readmes.") + +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 47 | [jonschlinkert](https://github.com/jonschlinkert) | +| 5 | [doowb](https://github.com/doowb) | +| 1 | [phated](https://github.com/phated) | +| 1 | [danhper](https://github.com/danhper) | +| 1 | [paulmillr](https://github.com/paulmillr) | + +### Author + +**Jon Schlinkert** + +* [GitHub Profile](https://github.com/jonschlinkert) +* [Twitter Profile](https://twitter.com/jonschlinkert) +* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) + +### License + +Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on March 27, 2019._ \ No newline at end of file diff --git a/node_modules/is-glob/index.js b/node_modules/is-glob/index.js new file mode 100644 index 0000000..620f563 --- /dev/null +++ b/node_modules/is-glob/index.js @@ -0,0 +1,150 @@ +/*! + * is-glob + * + * Copyright (c) 2014-2017, Jon Schlinkert. + * Released under the MIT License. + */ + +var isExtglob = require('is-extglob'); +var chars = { '{': '}', '(': ')', '[': ']'}; +var strictCheck = function(str) { + if (str[0] === '!') { + return true; + } + var index = 0; + var pipeIndex = -2; + var closeSquareIndex = -2; + var closeCurlyIndex = -2; + var closeParenIndex = -2; + var backSlashIndex = -2; + while (index < str.length) { + if (str[index] === '*') { + return true; + } + + if (str[index + 1] === '?' && /[\].+)]/.test(str[index])) { + return true; + } + + if (closeSquareIndex !== -1 && str[index] === '[' && str[index + 1] !== ']') { + if (closeSquareIndex < index) { + closeSquareIndex = str.indexOf(']', index); + } + if (closeSquareIndex > index) { + if (backSlashIndex === -1 || backSlashIndex > closeSquareIndex) { + return true; + } + backSlashIndex = str.indexOf('\\', index); + if (backSlashIndex === -1 || backSlashIndex > closeSquareIndex) { + return true; + } + } + } + + if (closeCurlyIndex !== -1 && str[index] === '{' && str[index + 1] !== '}') { + closeCurlyIndex = str.indexOf('}', index); + if (closeCurlyIndex > index) { + backSlashIndex = str.indexOf('\\', index); + if (backSlashIndex === -1 || backSlashIndex > closeCurlyIndex) { + return true; + } + } + } + + if (closeParenIndex !== -1 && str[index] === '(' && str[index + 1] === '?' && /[:!=]/.test(str[index + 2]) && str[index + 3] !== ')') { + closeParenIndex = str.indexOf(')', index); + if (closeParenIndex > index) { + backSlashIndex = str.indexOf('\\', index); + if (backSlashIndex === -1 || backSlashIndex > closeParenIndex) { + return true; + } + } + } + + if (pipeIndex !== -1 && str[index] === '(' && str[index + 1] !== '|') { + if (pipeIndex < index) { + pipeIndex = str.indexOf('|', index); + } + if (pipeIndex !== -1 && str[pipeIndex + 1] !== ')') { + closeParenIndex = str.indexOf(')', pipeIndex); + if (closeParenIndex > pipeIndex) { + backSlashIndex = str.indexOf('\\', pipeIndex); + if (backSlashIndex === -1 || backSlashIndex > closeParenIndex) { + return true; + } + } + } + } + + if (str[index] === '\\') { + var open = str[index + 1]; + index += 2; + var close = chars[open]; + + if (close) { + var n = str.indexOf(close, index); + if (n !== -1) { + index = n + 1; + } + } + + if (str[index] === '!') { + return true; + } + } else { + index++; + } + } + return false; +}; + +var relaxedCheck = function(str) { + if (str[0] === '!') { + return true; + } + var index = 0; + while (index < str.length) { + if (/[*?{}()[\]]/.test(str[index])) { + return true; + } + + if (str[index] === '\\') { + var open = str[index + 1]; + index += 2; + var close = chars[open]; + + if (close) { + var n = str.indexOf(close, index); + if (n !== -1) { + index = n + 1; + } + } + + if (str[index] === '!') { + return true; + } + } else { + index++; + } + } + return false; +}; + +module.exports = function isGlob(str, options) { + if (typeof str !== 'string' || str === '') { + return false; + } + + if (isExtglob(str)) { + return true; + } + + var check = strictCheck; + + // optionally relax check + if (options && options.strict === false) { + check = relaxedCheck; + } + + return check(str); +}; diff --git a/node_modules/is-glob/package.json b/node_modules/is-glob/package.json new file mode 100644 index 0000000..858af03 --- /dev/null +++ b/node_modules/is-glob/package.json @@ -0,0 +1,81 @@ +{ + "name": "is-glob", + "description": "Returns `true` if the given string looks like a glob pattern or an extglob pattern. This makes it easy to create code that only uses external modules like node-glob when necessary, resulting in much faster code execution and initialization time, and a better user experience.", + "version": "4.0.3", + "homepage": "https://github.com/micromatch/is-glob", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "contributors": [ + "Brian Woodward (https://twitter.com/doowb)", + "Daniel Perez (https://tuvistavie.com)", + "Jon Schlinkert (http://twitter.com/jonschlinkert)" + ], + "repository": "micromatch/is-glob", + "bugs": { + "url": "https://github.com/micromatch/is-glob/issues" + }, + "license": "MIT", + "files": [ + "index.js" + ], + "main": "index.js", + "engines": { + "node": ">=0.10.0" + }, + "scripts": { + "test": "mocha && node benchmark.js" + }, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "devDependencies": { + "gulp-format-md": "^0.1.10", + "mocha": "^3.0.2" + }, + "keywords": [ + "bash", + "braces", + "check", + "exec", + "expression", + "extglob", + "glob", + "globbing", + "globstar", + "is", + "match", + "matches", + "pattern", + "regex", + "regular", + "string", + "test" + ], + "verb": { + "layout": "default", + "plugins": [ + "gulp-format-md" + ], + "related": { + "list": [ + "assemble", + "base", + "update", + "verb" + ] + }, + "reflinks": [ + "assemble", + "bach", + "base", + "composer", + "gulp", + "has-glob", + "is-valid-glob", + "micromatch", + "npm", + "scaffold", + "verb", + "vinyl" + ] + } +} diff --git a/node_modules/is-number/LICENSE b/node_modules/is-number/LICENSE new file mode 100644 index 0000000..9af4a67 --- /dev/null +++ b/node_modules/is-number/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-present, Jon Schlinkert. + +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. diff --git a/node_modules/is-number/README.md b/node_modules/is-number/README.md new file mode 100644 index 0000000..eb8149e --- /dev/null +++ b/node_modules/is-number/README.md @@ -0,0 +1,187 @@ +# is-number [![NPM version](https://img.shields.io/npm/v/is-number.svg?style=flat)](https://www.npmjs.com/package/is-number) [![NPM monthly downloads](https://img.shields.io/npm/dm/is-number.svg?style=flat)](https://npmjs.org/package/is-number) [![NPM total downloads](https://img.shields.io/npm/dt/is-number.svg?style=flat)](https://npmjs.org/package/is-number) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/is-number.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/is-number) + +> Returns true if the value is a finite number. + +Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save is-number +``` + +## Why is this needed? + +In JavaScript, it's not always as straightforward as it should be to reliably check if a value is a number. It's common for devs to use `+`, `-`, or `Number()` to cast a string value to a number (for example, when values are returned from user input, regex matches, parsers, etc). But there are many non-intuitive edge cases that yield unexpected results: + +```js +console.log(+[]); //=> 0 +console.log(+''); //=> 0 +console.log(+' '); //=> 0 +console.log(typeof NaN); //=> 'number' +``` + +This library offers a performant way to smooth out edge cases like these. + +## Usage + +```js +const isNumber = require('is-number'); +``` + +See the [tests](./test.js) for more examples. + +### true + +```js +isNumber(5e3); // true +isNumber(0xff); // true +isNumber(-1.1); // true +isNumber(0); // true +isNumber(1); // true +isNumber(1.1); // true +isNumber(10); // true +isNumber(10.10); // true +isNumber(100); // true +isNumber('-1.1'); // true +isNumber('0'); // true +isNumber('012'); // true +isNumber('0xff'); // true +isNumber('1'); // true +isNumber('1.1'); // true +isNumber('10'); // true +isNumber('10.10'); // true +isNumber('100'); // true +isNumber('5e3'); // true +isNumber(parseInt('012')); // true +isNumber(parseFloat('012')); // true +``` + +### False + +Everything else is false, as you would expect: + +```js +isNumber(Infinity); // false +isNumber(NaN); // false +isNumber(null); // false +isNumber(undefined); // false +isNumber(''); // false +isNumber(' '); // false +isNumber('foo'); // false +isNumber([1]); // false +isNumber([]); // false +isNumber(function () {}); // false +isNumber({}); // false +``` + +## Release history + +### 7.0.0 + +* Refactor. Now uses `.isFinite` if it exists. +* Performance is about the same as v6.0 when the value is a string or number. But it's now 3x-4x faster when the value is not a string or number. + +### 6.0.0 + +* Optimizations, thanks to @benaadams. + +### 5.0.0 + +**Breaking changes** + +* removed support for `instanceof Number` and `instanceof String` + +## Benchmarks + +As with all benchmarks, take these with a grain of salt. See the [benchmarks](./benchmark/index.js) for more detail. + +``` +# all +v7.0 x 413,222 ops/sec ±2.02% (86 runs sampled) +v6.0 x 111,061 ops/sec ±1.29% (85 runs sampled) +parseFloat x 317,596 ops/sec ±1.36% (86 runs sampled) +fastest is 'v7.0' + +# string +v7.0 x 3,054,496 ops/sec ±1.05% (89 runs sampled) +v6.0 x 2,957,781 ops/sec ±0.98% (88 runs sampled) +parseFloat x 3,071,060 ops/sec ±1.13% (88 runs sampled) +fastest is 'parseFloat,v7.0' + +# number +v7.0 x 3,146,895 ops/sec ±0.89% (89 runs sampled) +v6.0 x 3,214,038 ops/sec ±1.07% (89 runs sampled) +parseFloat x 3,077,588 ops/sec ±1.07% (87 runs sampled) +fastest is 'v6.0' +``` + +## About + +
+Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +
+ +
+Running Tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +
+ +
+Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +
+ +### Related projects + +You might also be interested in these projects: + +* [is-plain-object](https://www.npmjs.com/package/is-plain-object): Returns true if an object was created by the `Object` constructor. | [homepage](https://github.com/jonschlinkert/is-plain-object "Returns true if an object was created by the `Object` constructor.") +* [is-primitive](https://www.npmjs.com/package/is-primitive): Returns `true` if the value is a primitive. | [homepage](https://github.com/jonschlinkert/is-primitive "Returns `true` if the value is a primitive. ") +* [isobject](https://www.npmjs.com/package/isobject): Returns true if the value is an object and not an array or null. | [homepage](https://github.com/jonschlinkert/isobject "Returns true if the value is an object and not an array or null.") +* [kind-of](https://www.npmjs.com/package/kind-of): Get the native type of a value. | [homepage](https://github.com/jonschlinkert/kind-of "Get the native type of a value.") + +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 49 | [jonschlinkert](https://github.com/jonschlinkert) | +| 5 | [charlike-old](https://github.com/charlike-old) | +| 1 | [benaadams](https://github.com/benaadams) | +| 1 | [realityking](https://github.com/realityking) | + +### Author + +**Jon Schlinkert** + +* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) +* [GitHub Profile](https://github.com/jonschlinkert) +* [Twitter Profile](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2018, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on June 15, 2018._ \ No newline at end of file diff --git a/node_modules/is-number/index.js b/node_modules/is-number/index.js new file mode 100644 index 0000000..27f19b7 --- /dev/null +++ b/node_modules/is-number/index.js @@ -0,0 +1,18 @@ +/*! + * is-number + * + * Copyright (c) 2014-present, Jon Schlinkert. + * Released under the MIT License. + */ + +'use strict'; + +module.exports = function(num) { + if (typeof num === 'number') { + return num - num === 0; + } + if (typeof num === 'string' && num.trim() !== '') { + return Number.isFinite ? Number.isFinite(+num) : isFinite(+num); + } + return false; +}; diff --git a/node_modules/is-number/package.json b/node_modules/is-number/package.json new file mode 100644 index 0000000..3715072 --- /dev/null +++ b/node_modules/is-number/package.json @@ -0,0 +1,82 @@ +{ + "name": "is-number", + "description": "Returns true if a number or string value is a finite number. Useful for regex matches, parsing, user input, etc.", + "version": "7.0.0", + "homepage": "https://github.com/jonschlinkert/is-number", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "contributors": [ + "Jon Schlinkert (http://twitter.com/jonschlinkert)", + "Olsten Larck (https://i.am.charlike.online)", + "Rouven Weßling (www.rouvenwessling.de)" + ], + "repository": "jonschlinkert/is-number", + "bugs": { + "url": "https://github.com/jonschlinkert/is-number/issues" + }, + "license": "MIT", + "files": [ + "index.js" + ], + "main": "index.js", + "engines": { + "node": ">=0.12.0" + }, + "scripts": { + "test": "mocha" + }, + "devDependencies": { + "ansi": "^0.3.1", + "benchmark": "^2.1.4", + "gulp-format-md": "^1.0.0", + "mocha": "^3.5.3" + }, + "keywords": [ + "cast", + "check", + "coerce", + "coercion", + "finite", + "integer", + "is", + "isnan", + "is-nan", + "is-num", + "is-number", + "isnumber", + "isfinite", + "istype", + "kind", + "math", + "nan", + "num", + "number", + "numeric", + "parseFloat", + "parseInt", + "test", + "type", + "typeof", + "value" + ], + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "related": { + "list": [ + "is-plain-object", + "is-primitive", + "isobject", + "kind-of" + ] + }, + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + } + } +} diff --git a/node_modules/jsonfile/LICENSE b/node_modules/jsonfile/LICENSE new file mode 100644 index 0000000..cb7e807 --- /dev/null +++ b/node_modules/jsonfile/LICENSE @@ -0,0 +1,15 @@ +(The MIT License) + +Copyright (c) 2012-2015, JP Richardson + +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. diff --git a/node_modules/jsonfile/README.md b/node_modules/jsonfile/README.md new file mode 100644 index 0000000..215dc09 --- /dev/null +++ b/node_modules/jsonfile/README.md @@ -0,0 +1,230 @@ +Node.js - jsonfile +================ + +Easily read/write JSON files in Node.js. _Note: this module cannot be used in the browser._ + +[![npm Package](https://img.shields.io/npm/v/jsonfile.svg?style=flat-square)](https://www.npmjs.org/package/jsonfile) +[![linux build status](https://img.shields.io/github/actions/workflow/status/jprichardson/node-jsonfile/ci.yml?branch=master)](https://github.com/jprichardson/node-jsonfile/actions?query=branch%3Amaster) +[![windows Build status](https://img.shields.io/appveyor/ci/jprichardson/node-jsonfile/master.svg?label=windows%20build)](https://ci.appveyor.com/project/jprichardson/node-jsonfile/branch/master) + +Standard JavaScript + +Why? +---- + +Writing `JSON.stringify()` and then `fs.writeFile()` and `JSON.parse()` with `fs.readFile()` enclosed in `try/catch` blocks became annoying. + + + +Installation +------------ + + npm install --save jsonfile + + + +API +--- + +* [`readFile(filename, [options], callback)`](#readfilefilename-options-callback) +* [`readFileSync(filename, [options])`](#readfilesyncfilename-options) +* [`writeFile(filename, obj, [options], callback)`](#writefilefilename-obj-options-callback) +* [`writeFileSync(filename, obj, [options])`](#writefilesyncfilename-obj-options) + +---- + +### readFile(filename, [options], callback) + +`options` (`object`, default `undefined`): Pass in any [`fs.readFile`](https://nodejs.org/api/fs.html#fs_fs_readfile_path_options_callback) options or set `reviver` for a [JSON reviver](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse). + - `throws` (`boolean`, default: `true`). If `JSON.parse` throws an error, pass this error to the callback. + If `false`, returns `null` for the object. + + +```js +const jsonfile = require('jsonfile') +const file = '/tmp/data.json' +jsonfile.readFile(file, function (err, obj) { + if (err) console.error(err) + console.dir(obj) +}) +``` + +You can also use this method with promises. The `readFile` method will return a promise if you do not pass a callback function. + +```js +const jsonfile = require('jsonfile') +const file = '/tmp/data.json' +jsonfile.readFile(file) + .then(obj => console.dir(obj)) + .catch(error => console.error(error)) +``` + +---- + +### readFileSync(filename, [options]) + +`options` (`object`, default `undefined`): Pass in any [`fs.readFileSync`](https://nodejs.org/api/fs.html#fs_fs_readfilesync_path_options) options or set `reviver` for a [JSON reviver](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse). +- `throws` (`boolean`, default: `true`). If an error is encountered reading or parsing the file, throw the error. If `false`, returns `null` for the object. + +```js +const jsonfile = require('jsonfile') +const file = '/tmp/data.json' + +console.dir(jsonfile.readFileSync(file)) +``` + +---- + +### writeFile(filename, obj, [options], callback) + +`options`: Pass in any [`fs.writeFile`](https://nodejs.org/api/fs.html#fs_fs_writefile_file_data_options_callback) options or set `replacer` for a [JSON replacer](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify). Can also pass in `spaces`, or override `EOL` string or set `finalEOL` flag as `false` to not save the file with `EOL` at the end. + + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj, function (err) { + if (err) console.error(err) +}) +``` +Or use with promises as follows: + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj) + .then(res => { + console.log('Write complete') + }) + .catch(error => console.error(error)) +``` + + +**formatting with spaces:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj, { spaces: 2 }, function (err) { + if (err) console.error(err) +}) +``` + +**overriding EOL:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj, { spaces: 2, EOL: '\r\n' }, function (err) { + if (err) console.error(err) +}) +``` + + +**disabling the EOL at the end of file:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj, { spaces: 2, finalEOL: false }, function (err) { + if (err) console.log(err) +}) +``` + +**appending to an existing JSON file:** + +You can use `fs.writeFile` option `{ flag: 'a' }` to achieve this. + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/mayAlreadyExistedData.json' +const obj = { name: 'JP' } + +jsonfile.writeFile(file, obj, { flag: 'a' }, function (err) { + if (err) console.error(err) +}) +``` + +---- + +### writeFileSync(filename, obj, [options]) + +`options`: Pass in any [`fs.writeFileSync`](https://nodejs.org/api/fs.html#fs_fs_writefilesync_file_data_options) options or set `replacer` for a [JSON replacer](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify). Can also pass in `spaces`, or override `EOL` string or set `finalEOL` flag as `false` to not save the file with `EOL` at the end. + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFileSync(file, obj) +``` + +**formatting with spaces:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFileSync(file, obj, { spaces: 2 }) +``` + +**overriding EOL:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFileSync(file, obj, { spaces: 2, EOL: '\r\n' }) +``` + +**disabling the EOL at the end of file:** + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/data.json' +const obj = { name: 'JP' } + +jsonfile.writeFileSync(file, obj, { spaces: 2, finalEOL: false }) +``` + +**appending to an existing JSON file:** + +You can use `fs.writeFileSync` option `{ flag: 'a' }` to achieve this. + +```js +const jsonfile = require('jsonfile') + +const file = '/tmp/mayAlreadyExistedData.json' +const obj = { name: 'JP' } + +jsonfile.writeFileSync(file, obj, { flag: 'a' }) +``` + +License +------- + +(MIT License) + +Copyright 2012-2016, JP Richardson diff --git a/node_modules/jsonfile/index.js b/node_modules/jsonfile/index.js new file mode 100644 index 0000000..acd0af2 --- /dev/null +++ b/node_modules/jsonfile/index.js @@ -0,0 +1,88 @@ +let _fs +try { + _fs = require('graceful-fs') +} catch (_) { + _fs = require('fs') +} +const universalify = require('universalify') +const { stringify, stripBom } = require('./utils') + +async function _readFile (file, options = {}) { + if (typeof options === 'string') { + options = { encoding: options } + } + + const fs = options.fs || _fs + + const shouldThrow = 'throws' in options ? options.throws : true + + let data = await universalify.fromCallback(fs.readFile)(file, options) + + data = stripBom(data) + + let obj + try { + obj = JSON.parse(data, options ? options.reviver : null) + } catch (err) { + if (shouldThrow) { + err.message = `${file}: ${err.message}` + throw err + } else { + return null + } + } + + return obj +} + +const readFile = universalify.fromPromise(_readFile) + +function readFileSync (file, options = {}) { + if (typeof options === 'string') { + options = { encoding: options } + } + + const fs = options.fs || _fs + + const shouldThrow = 'throws' in options ? options.throws : true + + try { + let content = fs.readFileSync(file, options) + content = stripBom(content) + return JSON.parse(content, options.reviver) + } catch (err) { + if (shouldThrow) { + err.message = `${file}: ${err.message}` + throw err + } else { + return null + } + } +} + +async function _writeFile (file, obj, options = {}) { + const fs = options.fs || _fs + + const str = stringify(obj, options) + + await universalify.fromCallback(fs.writeFile)(file, str, options) +} + +const writeFile = universalify.fromPromise(_writeFile) + +function writeFileSync (file, obj, options = {}) { + const fs = options.fs || _fs + + const str = stringify(obj, options) + // not sure if fs.writeFileSync returns anything, but just in case + return fs.writeFileSync(file, str, options) +} + +// NOTE: do not change this export format; required for ESM compat +// see https://github.com/jprichardson/node-jsonfile/pull/162 for details +module.exports = { + readFile, + readFileSync, + writeFile, + writeFileSync +} diff --git a/node_modules/jsonfile/package.json b/node_modules/jsonfile/package.json new file mode 100644 index 0000000..0ff96cc --- /dev/null +++ b/node_modules/jsonfile/package.json @@ -0,0 +1,40 @@ +{ + "name": "jsonfile", + "version": "6.2.0", + "description": "Easily read/write JSON files.", + "repository": { + "type": "git", + "url": "git@github.com:jprichardson/node-jsonfile.git" + }, + "keywords": [ + "read", + "write", + "file", + "json", + "fs", + "fs-extra" + ], + "author": "JP Richardson ", + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + }, + "devDependencies": { + "mocha": "^8.2.0", + "rimraf": "^2.4.0", + "standard": "^16.0.1" + }, + "main": "index.js", + "files": [ + "index.js", + "utils.js" + ], + "scripts": { + "lint": "standard", + "test": "npm run lint && npm run unit", + "unit": "mocha" + } +} diff --git a/node_modules/jsonfile/utils.js b/node_modules/jsonfile/utils.js new file mode 100644 index 0000000..b5ff48e --- /dev/null +++ b/node_modules/jsonfile/utils.js @@ -0,0 +1,14 @@ +function stringify (obj, { EOL = '\n', finalEOL = true, replacer = null, spaces } = {}) { + const EOF = finalEOL ? EOL : '' + const str = JSON.stringify(obj, replacer, spaces) + + return str.replace(/\n/g, EOL) + EOF +} + +function stripBom (content) { + // we do this because JSON.parse would convert it to a utf8 string if encoding wasn't specified + if (Buffer.isBuffer(content)) content = content.toString('utf8') + return content.replace(/^\uFEFF/, '') +} + +module.exports = { stringify, stripBom } diff --git a/node_modules/lilconfig/LICENSE b/node_modules/lilconfig/LICENSE new file mode 100644 index 0000000..fd866f4 --- /dev/null +++ b/node_modules/lilconfig/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2022 Anton Kastritskiy + +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. diff --git a/node_modules/lilconfig/package.json b/node_modules/lilconfig/package.json new file mode 100644 index 0000000..b64e55c --- /dev/null +++ b/node_modules/lilconfig/package.json @@ -0,0 +1,42 @@ +{ + "name": "lilconfig", + "version": "3.1.3", + "description": "A zero-dependency alternative to cosmiconfig", + "main": "src/index.js", + "types": "src/index.d.ts", + "scripts": { + "test": "NODE_OPTIONS=--experimental-vm-modules ./node_modules/.bin/jest --coverage", + "lint": "biome ci ./src", + "types": "tsc" + }, + "keywords": [ + "cosmiconfig", + "config", + "configuration", + "search" + ], + "files": [ + "src/index.*" + ], + "repository": { + "type": "git", + "url": "https://github.com/antonk52/lilconfig" + }, + "bugs": "https://github.com/antonk52/lilconfig/issues", + "author": "antonk52", + "license": "MIT", + "devDependencies": { + "@biomejs/biome": "^1.6.0", + "@types/jest": "^29.5.12", + "@types/node": "^14.18.63", + "@types/webpack-env": "^1.18.5", + "cosmiconfig": "^8.3.6", + "jest": "^29.7.0", + "typescript": "^5.3.3", + "uvu": "^0.5.6" + }, + "funding": "https://github.com/sponsors/antonk52", + "engines": { + "node": ">=14" + } +} diff --git a/node_modules/lilconfig/readme.md b/node_modules/lilconfig/readme.md new file mode 100644 index 0000000..99c4262 --- /dev/null +++ b/node_modules/lilconfig/readme.md @@ -0,0 +1,98 @@ +# Lilconfig ⚙️ +[![npm version](https://badge.fury.io/js/lilconfig.svg)](https://badge.fury.io/js/lilconfig) +[![install size](https://packagephobia.now.sh/badge?p=lilconfig)](https://packagephobia.now.sh/result?p=lilconfig) +[![Coverage Status](https://coveralls.io/repos/github/antonk52/lilconfig/badge.svg)](https://coveralls.io/github/antonk52/lilconfig) + +A zero-dependency alternative to [cosmiconfig](https://www.npmjs.com/package/cosmiconfig) with the same API. + +## Installation + +```sh +npm install lilconfig +``` + +## Usage + +```js +import {lilconfig, lilconfigSync} from 'lilconfig'; + +// all keys are optional +const options = { + stopDir: '/Users/you/some/dir', + searchPlaces: ['package.json', 'myapp.conf.js'], + ignoreEmptySearchPlaces: false +} + +lilconfig( + 'myapp', + options // optional +).search() // Promise + +lilconfigSync( + 'myapp', + options // optional +).load(pathToConfig) // LilconfigResult + +/** + * LilconfigResult + * { + * config: any; // your config + * filepath: string; + * } + */ +``` + +## ESM + +ESM configs can be loaded with **async API only**. Specifically `js` files in projects with `"type": "module"` in `package.json` or `mjs` files. + +## Difference to `cosmiconfig` +Lilconfig does not intend to be 100% compatible with `cosmiconfig` but tries to mimic it where possible. The key difference is **no** support for yaml files out of the box(`lilconfig` attempts to parse files with no extension as JSON instead of YAML). You can still add the support for YAML files by providing a loader, see an [example](#yaml-loader) below. + +### Options difference between the two. + +|cosmiconfig option | lilconfig | +|------------------------|-----------| +|cache | ✅ | +|loaders | ✅ | +|ignoreEmptySearchPlaces | ✅ | +|packageProp | ✅ | +|searchPlaces | ✅ | +|stopDir | ✅ | +|transform | ✅ | + +## Loaders examples + +### Yaml loader + +If you need the YAML support you can provide your own loader + +```js +import {lilconfig} from 'lilconfig'; +import yaml from 'yaml'; + +function loadYaml(filepath, content) { + return yaml.parse(content); +} + +const options = { + loaders: { + '.yaml': loadYaml, + '.yml': loadYaml, + // loader for files with no extension + noExt: loadYaml + } +}; + +lilconfig('myapp', options) + .search() + .then(result => { + result // {config, filepath} + }); +``` + +## Version correlation + +- lilconig v1 → cosmiconfig v6 +- lilconig v2 → cosmiconfig v7 +- lilconig v3 → cosmiconfig v8 diff --git a/node_modules/lilconfig/src/index.d.ts b/node_modules/lilconfig/src/index.d.ts new file mode 100644 index 0000000..fa1146b --- /dev/null +++ b/node_modules/lilconfig/src/index.d.ts @@ -0,0 +1,54 @@ +export type LilconfigResult = null | { + filepath: string; + config: any; + isEmpty?: boolean; +}; +interface OptionsBase { + cache?: boolean; + stopDir?: string; + searchPlaces?: string[]; + ignoreEmptySearchPlaces?: boolean; + packageProp?: string | string[]; +} +export type Transform = + | TransformSync + | ((result: LilconfigResult) => Promise); +export type TransformSync = (result: LilconfigResult) => LilconfigResult; +type LoaderResult = any; +export type LoaderSync = (filepath: string, content: string) => LoaderResult; +export type Loader = + | LoaderSync + | ((filepath: string, content: string) => Promise); +export type Loaders = Record; +export type LoadersSync = Record; +export interface Options extends OptionsBase { + loaders?: Loaders; + transform?: Transform; +} +export interface OptionsSync extends OptionsBase { + loaders?: LoadersSync; + transform?: TransformSync; +} +export declare const defaultLoadersSync: LoadersSync; +export declare const defaultLoaders: Loaders; +type ClearCaches = { + clearLoadCache: () => void; + clearSearchCache: () => void; + clearCaches: () => void; +}; +type AsyncSearcher = { + search(searchFrom?: string): Promise; + load(filepath: string): Promise; +} & ClearCaches; +export declare function lilconfig( + name: string, + options?: Partial, +): AsyncSearcher; +type SyncSearcher = { + search(searchFrom?: string): LilconfigResult; + load(filepath: string): LilconfigResult; +} & ClearCaches; +export declare function lilconfigSync( + name: string, + options?: OptionsSync, +): SyncSearcher; diff --git a/node_modules/lilconfig/src/index.js b/node_modules/lilconfig/src/index.js new file mode 100644 index 0000000..af7bf47 --- /dev/null +++ b/node_modules/lilconfig/src/index.js @@ -0,0 +1,460 @@ +// @ts-check +const path = require('path'); +const fs = require('fs'); +const os = require('os'); +const url = require('url'); + +const fsReadFileAsync = fs.promises.readFile; + +/** @type {(name: string, sync: boolean) => string[]} */ +function getDefaultSearchPlaces(name, sync) { + return [ + 'package.json', + `.${name}rc.json`, + `.${name}rc.js`, + `.${name}rc.cjs`, + ...(sync ? [] : [`.${name}rc.mjs`]), + `.config/${name}rc`, + `.config/${name}rc.json`, + `.config/${name}rc.js`, + `.config/${name}rc.cjs`, + ...(sync ? [] : [`.config/${name}rc.mjs`]), + `${name}.config.js`, + `${name}.config.cjs`, + ...(sync ? [] : [`${name}.config.mjs`]), + ]; +} + +/** + * @type {(p: string) => string} + * + * see #17 + * On *nix, if cwd is not under homedir, + * the last path will be '', ('/build' -> '') + * but it should be '/' actually. + * And on Windows, this will never happen. ('C:\build' -> 'C:') + */ +function parentDir(p) { + return path.dirname(p) || path.sep; +} + +/** @type {import('./index').LoaderSync} */ +const jsonLoader = (_, content) => JSON.parse(content); +// Use plain require in webpack context for dynamic import +const requireFunc = + typeof __webpack_require__ === 'function' ? __non_webpack_require__ : require; +/** @type {import('./index').LoadersSync} */ +const defaultLoadersSync = Object.freeze({ + '.js': requireFunc, + '.json': requireFunc, + '.cjs': requireFunc, + noExt: jsonLoader, +}); +module.exports.defaultLoadersSync = defaultLoadersSync; + +/** @type {import('./index').Loader} */ +const dynamicImport = async id => { + try { + const fileUrl = url.pathToFileURL(id).href; + const mod = await import(/* webpackIgnore: true */ fileUrl); + + return mod.default; + } catch (e) { + try { + return requireFunc(id); + } catch (/** @type {any} */ requireE) { + if ( + requireE.code === 'ERR_REQUIRE_ESM' || + (requireE instanceof SyntaxError && + requireE + .toString() + .includes('Cannot use import statement outside a module')) + ) { + throw e; + } + throw requireE; + } + } +}; + +/** @type {import('./index').Loaders} */ +const defaultLoaders = Object.freeze({ + '.js': dynamicImport, + '.mjs': dynamicImport, + '.cjs': dynamicImport, + '.json': jsonLoader, + noExt: jsonLoader, +}); +module.exports.defaultLoaders = defaultLoaders; + +/** + * @param {string} name + * @param {import('./index').Options | import('./index').OptionsSync} options + * @param {boolean} sync + * @returns {Required} + */ +function getOptions(name, options, sync) { + /** @type {Required} */ + const conf = { + stopDir: os.homedir(), + searchPlaces: getDefaultSearchPlaces(name, sync), + ignoreEmptySearchPlaces: true, + cache: true, + transform: x => x, + packageProp: [name], + ...options, + loaders: { + ...(sync ? defaultLoadersSync : defaultLoaders), + ...options.loaders, + }, + }; + conf.searchPlaces.forEach(place => { + const key = path.extname(place) || 'noExt'; + const loader = conf.loaders[key]; + if (!loader) { + throw new Error(`Missing loader for extension "${place}"`); + } + + if (typeof loader !== 'function') { + throw new Error( + `Loader for extension "${place}" is not a function: Received ${typeof loader}.`, + ); + } + }); + + return conf; +} + +/** @type {(props: string | string[], obj: Record) => unknown} */ +function getPackageProp(props, obj) { + if (typeof props === 'string' && props in obj) return obj[props]; + return ( + (Array.isArray(props) ? props : props.split('.')).reduce( + (acc, prop) => (acc === undefined ? acc : acc[prop]), + obj, + ) || null + ); +} + +/** @param {string} filepath */ +function validateFilePath(filepath) { + if (!filepath) throw new Error('load must pass a non-empty string'); +} + +/** @type {(loader: import('./index').Loader, ext: string) => void} */ +function validateLoader(loader, ext) { + if (!loader) throw new Error(`No loader specified for extension "${ext}"`); + if (typeof loader !== 'function') throw new Error('loader is not a function'); +} + +/** @type {(enableCache: boolean) => (c: Map, filepath: string, res: T) => T} */ +const makeEmplace = enableCache => (c, filepath, res) => { + if (enableCache) c.set(filepath, res); + return res; +}; + +/** @type {import('./index').lilconfig} */ +module.exports.lilconfig = function lilconfig(name, options) { + const { + ignoreEmptySearchPlaces, + loaders, + packageProp, + searchPlaces, + stopDir, + transform, + cache, + } = getOptions(name, options ?? {}, false); + const searchCache = new Map(); + const loadCache = new Map(); + const emplace = makeEmplace(cache); + + return { + async search(searchFrom = process.cwd()) { + /** @type {import('./index').LilconfigResult} */ + const result = { + config: null, + filepath: '', + }; + + /** @type {Set} */ + const visited = new Set(); + let dir = searchFrom; + dirLoop: while (true) { + if (cache) { + const r = searchCache.get(dir); + if (r !== undefined) { + for (const p of visited) searchCache.set(p, r); + return r; + } + visited.add(dir); + } + + for (const searchPlace of searchPlaces) { + const filepath = path.join(dir, searchPlace); + try { + await fs.promises.access(filepath); + } catch { + continue; + } + const content = String(await fsReadFileAsync(filepath)); + const loaderKey = path.extname(searchPlace) || 'noExt'; + const loader = loaders[loaderKey]; + + // handle package.json + if (searchPlace === 'package.json') { + const pkg = await loader(filepath, content); + const maybeConfig = getPackageProp(packageProp, pkg); + if (maybeConfig != null) { + result.config = maybeConfig; + result.filepath = filepath; + break dirLoop; + } + + continue; + } + + // handle other type of configs + const isEmpty = content.trim() === ''; + if (isEmpty && ignoreEmptySearchPlaces) continue; + + if (isEmpty) { + result.isEmpty = true; + result.config = undefined; + } else { + validateLoader(loader, loaderKey); + result.config = await loader(filepath, content); + } + result.filepath = filepath; + break dirLoop; + } + if (dir === stopDir || dir === parentDir(dir)) break dirLoop; + dir = parentDir(dir); + } + + const transformed = + // not found + result.filepath === '' && result.config === null + ? transform(null) + : transform(result); + + if (cache) { + for (const p of visited) searchCache.set(p, transformed); + } + + return transformed; + }, + async load(filepath) { + validateFilePath(filepath); + const absPath = path.resolve(process.cwd(), filepath); + if (cache && loadCache.has(absPath)) { + return loadCache.get(absPath); + } + const {base, ext} = path.parse(absPath); + const loaderKey = ext || 'noExt'; + const loader = loaders[loaderKey]; + validateLoader(loader, loaderKey); + const content = String(await fsReadFileAsync(absPath)); + + if (base === 'package.json') { + const pkg = await loader(absPath, content); + return emplace( + loadCache, + absPath, + transform({ + config: getPackageProp(packageProp, pkg), + filepath: absPath, + }), + ); + } + /** @type {import('./index').LilconfigResult} */ + const result = { + config: null, + filepath: absPath, + }; + // handle other type of configs + const isEmpty = content.trim() === ''; + if (isEmpty && ignoreEmptySearchPlaces) + return emplace( + loadCache, + absPath, + transform({ + config: undefined, + filepath: absPath, + isEmpty: true, + }), + ); + + // cosmiconfig returns undefined for empty files + result.config = isEmpty ? undefined : await loader(absPath, content); + + return emplace( + loadCache, + absPath, + transform(isEmpty ? {...result, isEmpty, config: undefined} : result), + ); + }, + clearLoadCache() { + if (cache) loadCache.clear(); + }, + clearSearchCache() { + if (cache) searchCache.clear(); + }, + clearCaches() { + if (cache) { + loadCache.clear(); + searchCache.clear(); + } + }, + }; +}; + +/** @type {import('./index').lilconfigSync} */ +module.exports.lilconfigSync = function lilconfigSync(name, options) { + const { + ignoreEmptySearchPlaces, + loaders, + packageProp, + searchPlaces, + stopDir, + transform, + cache, + } = getOptions(name, options ?? {}, true); + const searchCache = new Map(); + const loadCache = new Map(); + const emplace = makeEmplace(cache); + + return { + search(searchFrom = process.cwd()) { + /** @type {import('./index').LilconfigResult} */ + const result = { + config: null, + filepath: '', + }; + + /** @type {Set} */ + const visited = new Set(); + let dir = searchFrom; + dirLoop: while (true) { + if (cache) { + const r = searchCache.get(dir); + if (r !== undefined) { + for (const p of visited) searchCache.set(p, r); + return r; + } + visited.add(dir); + } + + for (const searchPlace of searchPlaces) { + const filepath = path.join(dir, searchPlace); + try { + fs.accessSync(filepath); + } catch { + continue; + } + const loaderKey = path.extname(searchPlace) || 'noExt'; + const loader = loaders[loaderKey]; + const content = String(fs.readFileSync(filepath)); + + // handle package.json + if (searchPlace === 'package.json') { + const pkg = loader(filepath, content); + const maybeConfig = getPackageProp(packageProp, pkg); + if (maybeConfig != null) { + result.config = maybeConfig; + result.filepath = filepath; + break dirLoop; + } + + continue; + } + + // handle other type of configs + const isEmpty = content.trim() === ''; + if (isEmpty && ignoreEmptySearchPlaces) continue; + + if (isEmpty) { + result.isEmpty = true; + result.config = undefined; + } else { + validateLoader(loader, loaderKey); + result.config = loader(filepath, content); + } + result.filepath = filepath; + break dirLoop; + } + if (dir === stopDir || dir === parentDir(dir)) break dirLoop; + dir = parentDir(dir); + } + + const transformed = + // not found + result.filepath === '' && result.config === null + ? transform(null) + : transform(result); + + if (cache) { + for (const p of visited) searchCache.set(p, transformed); + } + + return transformed; + }, + load(filepath) { + validateFilePath(filepath); + const absPath = path.resolve(process.cwd(), filepath); + if (cache && loadCache.has(absPath)) { + return loadCache.get(absPath); + } + const {base, ext} = path.parse(absPath); + const loaderKey = ext || 'noExt'; + const loader = loaders[loaderKey]; + validateLoader(loader, loaderKey); + + const content = String(fs.readFileSync(absPath)); + + if (base === 'package.json') { + const pkg = loader(absPath, content); + return transform({ + config: getPackageProp(packageProp, pkg), + filepath: absPath, + }); + } + const result = { + config: null, + filepath: absPath, + }; + // handle other type of configs + const isEmpty = content.trim() === ''; + if (isEmpty && ignoreEmptySearchPlaces) + return emplace( + loadCache, + absPath, + transform({ + filepath: absPath, + config: undefined, + isEmpty: true, + }), + ); + + // cosmiconfig returns undefined for empty files + result.config = isEmpty ? undefined : loader(absPath, content); + + return emplace( + loadCache, + absPath, + transform(isEmpty ? {...result, isEmpty, config: undefined} : result), + ); + }, + clearLoadCache() { + if (cache) loadCache.clear(); + }, + clearSearchCache() { + if (cache) searchCache.clear(); + }, + clearCaches() { + if (cache) { + loadCache.clear(); + searchCache.clear(); + } + }, + }; +}; diff --git a/node_modules/merge2/LICENSE b/node_modules/merge2/LICENSE new file mode 100644 index 0000000..31dd9c7 --- /dev/null +++ b/node_modules/merge2/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-2020 Teambition + +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. diff --git a/node_modules/merge2/README.md b/node_modules/merge2/README.md new file mode 100644 index 0000000..27f8eb9 --- /dev/null +++ b/node_modules/merge2/README.md @@ -0,0 +1,144 @@ +# merge2 + +Merge multiple streams into one stream in sequence or parallel. + +[![NPM version][npm-image]][npm-url] +[![Build Status][travis-image]][travis-url] +[![Downloads][downloads-image]][downloads-url] + +## Install + +Install with [npm](https://npmjs.org/package/merge2) + +```sh +npm install merge2 +``` + +## Usage + +```js +const gulp = require('gulp') +const merge2 = require('merge2') +const concat = require('gulp-concat') +const minifyHtml = require('gulp-minify-html') +const ngtemplate = require('gulp-ngtemplate') + +gulp.task('app-js', function () { + return merge2( + gulp.src('static/src/tpl/*.html') + .pipe(minifyHtml({empty: true})) + .pipe(ngtemplate({ + module: 'genTemplates', + standalone: true + }) + ), gulp.src([ + 'static/src/js/app.js', + 'static/src/js/locale_zh-cn.js', + 'static/src/js/router.js', + 'static/src/js/tools.js', + 'static/src/js/services.js', + 'static/src/js/filters.js', + 'static/src/js/directives.js', + 'static/src/js/controllers.js' + ]) + ) + .pipe(concat('app.js')) + .pipe(gulp.dest('static/dist/js/')) +}) +``` + +```js +const stream = merge2([stream1, stream2], stream3, {end: false}) +//... +stream.add(stream4, stream5) +//.. +stream.end() +``` + +```js +// equal to merge2([stream1, stream2], stream3) +const stream = merge2() +stream.add([stream1, stream2]) +stream.add(stream3) +``` + +```js +// merge order: +// 1. merge `stream1`; +// 2. merge `stream2` and `stream3` in parallel after `stream1` merged; +// 3. merge 'stream4' after `stream2` and `stream3` merged; +const stream = merge2(stream1, [stream2, stream3], stream4) + +// merge order: +// 1. merge `stream5` and `stream6` in parallel after `stream4` merged; +// 2. merge 'stream7' after `stream5` and `stream6` merged; +stream.add([stream5, stream6], stream7) +``` + +```js +// nest merge +// equal to merge2(stream1, stream2, stream6, stream3, [stream4, stream5]); +const streamA = merge2(stream1, stream2) +const streamB = merge2(stream3, [stream4, stream5]) +const stream = merge2(streamA, streamB) +streamA.add(stream6) +``` + +## API + +```js +const merge2 = require('merge2') +``` + +### merge2() + +### merge2(options) + +### merge2(stream1, stream2, ..., streamN) + +### merge2(stream1, stream2, ..., streamN, options) + +### merge2(stream1, [stream2, stream3, ...], streamN, options) + +return a duplex stream (mergedStream). streams in array will be merged in parallel. + +### mergedStream.add(stream) + +### mergedStream.add(stream1, [stream2, stream3, ...], ...) + +return the mergedStream. + +### mergedStream.on('queueDrain', function() {}) + +It will emit 'queueDrain' when all streams merged. If you set `end === false` in options, this event give you a notice that should add more streams to merge or end the mergedStream. + +#### stream + +*option* +Type: `Readable` or `Duplex` or `Transform` stream. + +#### options + +*option* +Type: `Object`. + +* **end** - `Boolean` - if `end === false` then mergedStream will not be auto ended, you should end by yourself. **Default:** `undefined` + +* **pipeError** - `Boolean` - if `pipeError === true` then mergedStream will emit `error` event from source streams. **Default:** `undefined` + +* **objectMode** - `Boolean` . **Default:** `true` + +`objectMode` and other options(`highWaterMark`, `defaultEncoding` ...) is same as Node.js `Stream`. + +## License + +MIT © [Teambition](https://www.teambition.com) + +[npm-url]: https://npmjs.org/package/merge2 +[npm-image]: http://img.shields.io/npm/v/merge2.svg + +[travis-url]: https://travis-ci.org/teambition/merge2 +[travis-image]: http://img.shields.io/travis/teambition/merge2.svg + +[downloads-url]: https://npmjs.org/package/merge2 +[downloads-image]: http://img.shields.io/npm/dm/merge2.svg?style=flat-square diff --git a/node_modules/merge2/index.js b/node_modules/merge2/index.js new file mode 100644 index 0000000..78a61ed --- /dev/null +++ b/node_modules/merge2/index.js @@ -0,0 +1,144 @@ +'use strict' +/* + * merge2 + * https://github.com/teambition/merge2 + * + * Copyright (c) 2014-2020 Teambition + * Licensed under the MIT license. + */ +const Stream = require('stream') +const PassThrough = Stream.PassThrough +const slice = Array.prototype.slice + +module.exports = merge2 + +function merge2 () { + const streamsQueue = [] + const args = slice.call(arguments) + let merging = false + let options = args[args.length - 1] + + if (options && !Array.isArray(options) && options.pipe == null) { + args.pop() + } else { + options = {} + } + + const doEnd = options.end !== false + const doPipeError = options.pipeError === true + if (options.objectMode == null) { + options.objectMode = true + } + if (options.highWaterMark == null) { + options.highWaterMark = 64 * 1024 + } + const mergedStream = PassThrough(options) + + function addStream () { + for (let i = 0, len = arguments.length; i < len; i++) { + streamsQueue.push(pauseStreams(arguments[i], options)) + } + mergeStream() + return this + } + + function mergeStream () { + if (merging) { + return + } + merging = true + + let streams = streamsQueue.shift() + if (!streams) { + process.nextTick(endStream) + return + } + if (!Array.isArray(streams)) { + streams = [streams] + } + + let pipesCount = streams.length + 1 + + function next () { + if (--pipesCount > 0) { + return + } + merging = false + mergeStream() + } + + function pipe (stream) { + function onend () { + stream.removeListener('merge2UnpipeEnd', onend) + stream.removeListener('end', onend) + if (doPipeError) { + stream.removeListener('error', onerror) + } + next() + } + function onerror (err) { + mergedStream.emit('error', err) + } + // skip ended stream + if (stream._readableState.endEmitted) { + return next() + } + + stream.on('merge2UnpipeEnd', onend) + stream.on('end', onend) + + if (doPipeError) { + stream.on('error', onerror) + } + + stream.pipe(mergedStream, { end: false }) + // compatible for old stream + stream.resume() + } + + for (let i = 0; i < streams.length; i++) { + pipe(streams[i]) + } + + next() + } + + function endStream () { + merging = false + // emit 'queueDrain' when all streams merged. + mergedStream.emit('queueDrain') + if (doEnd) { + mergedStream.end() + } + } + + mergedStream.setMaxListeners(0) + mergedStream.add = addStream + mergedStream.on('unpipe', function (stream) { + stream.emit('merge2UnpipeEnd') + }) + + if (args.length) { + addStream.apply(null, args) + } + return mergedStream +} + +// check and pause streams for pipe. +function pauseStreams (streams, options) { + if (!Array.isArray(streams)) { + // Backwards-compat with old-style streams + if (!streams._readableState && streams.pipe) { + streams = streams.pipe(PassThrough(options)) + } + if (!streams._readableState || !streams.pause || !streams.pipe) { + throw new Error('Only readable stream can be merged.') + } + streams.pause() + } else { + for (let i = 0, len = streams.length; i < len; i++) { + streams[i] = pauseStreams(streams[i], options) + } + } + return streams +} diff --git a/node_modules/merge2/package.json b/node_modules/merge2/package.json new file mode 100644 index 0000000..7777307 --- /dev/null +++ b/node_modules/merge2/package.json @@ -0,0 +1,43 @@ +{ + "name": "merge2", + "description": "Merge multiple streams into one stream in sequence or parallel.", + "authors": [ + "Yan Qing " + ], + "license": "MIT", + "version": "1.4.1", + "main": "./index.js", + "repository": { + "type": "git", + "url": "git@github.com:teambition/merge2.git" + }, + "homepage": "https://github.com/teambition/merge2", + "keywords": [ + "merge2", + "multiple", + "sequence", + "parallel", + "merge", + "stream", + "merge stream", + "sync" + ], + "engines": { + "node": ">= 8" + }, + "dependencies": {}, + "devDependencies": { + "standard": "^14.3.4", + "through2": "^3.0.1", + "thunks": "^4.9.6", + "tman": "^1.10.0", + "to-through": "^2.0.0" + }, + "scripts": { + "test": "standard && tman" + }, + "files": [ + "README.md", + "index.js" + ] +} diff --git a/node_modules/micromatch/LICENSE b/node_modules/micromatch/LICENSE new file mode 100755 index 0000000..9af4a67 --- /dev/null +++ b/node_modules/micromatch/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-present, Jon Schlinkert. + +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. diff --git a/node_modules/micromatch/README.md b/node_modules/micromatch/README.md new file mode 100644 index 0000000..d72a059 --- /dev/null +++ b/node_modules/micromatch/README.md @@ -0,0 +1,1024 @@ +# micromatch [![NPM version](https://img.shields.io/npm/v/micromatch.svg?style=flat)](https://www.npmjs.com/package/micromatch) [![NPM monthly downloads](https://img.shields.io/npm/dm/micromatch.svg?style=flat)](https://npmjs.org/package/micromatch) [![NPM total downloads](https://img.shields.io/npm/dt/micromatch.svg?style=flat)](https://npmjs.org/package/micromatch) [![Tests](https://github.com/micromatch/micromatch/actions/workflows/test.yml/badge.svg)](https://github.com/micromatch/micromatch/actions/workflows/test.yml) + +> Glob matching for javascript/node.js. A replacement and faster alternative to minimatch and multimatch. + +Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. + +## Table of Contents + +
+Details + + * [Install](#install) +- [Sponsors](#sponsors) + * [Gold Sponsors](#gold-sponsors) + * [Quickstart](#quickstart) + * [Why use micromatch?](#why-use-micromatch) + + [Matching features](#matching-features) + * [Switching to micromatch](#switching-to-micromatch) + + [From minimatch](#from-minimatch) + + [From multimatch](#from-multimatch) + * [API](#api) + * [Options](#options) + * [Options Examples](#options-examples) + + [options.basename](#optionsbasename) + + [options.bash](#optionsbash) + + [options.expandRange](#optionsexpandrange) + + [options.format](#optionsformat) + + [options.ignore](#optionsignore) + + [options.matchBase](#optionsmatchbase) + + [options.noextglob](#optionsnoextglob) + + [options.nonegate](#optionsnonegate) + + [options.noglobstar](#optionsnoglobstar) + + [options.nonull](#optionsnonull) + + [options.nullglob](#optionsnullglob) + + [options.onIgnore](#optionsonignore) + + [options.onMatch](#optionsonmatch) + + [options.onResult](#optionsonresult) + + [options.posixSlashes](#optionsposixslashes) + + [options.unescape](#optionsunescape) + * [Extended globbing](#extended-globbing) + + [Extglobs](#extglobs) + + [Braces](#braces) + + [Regex character classes](#regex-character-classes) + + [Regex groups](#regex-groups) + + [POSIX bracket expressions](#posix-bracket-expressions) + * [Notes](#notes) + + [Bash 4.3 parity](#bash-43-parity) + + [Backslashes](#backslashes) + * [Benchmarks](#benchmarks) + + [Running benchmarks](#running-benchmarks) + + [Latest results](#latest-results) + * [Contributing](#contributing) + * [About](#about) + +
+ +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save micromatch +``` + +
+ +# Sponsors + +[Become a Sponsor](https://github.com/sponsors/jonschlinkert) to add your logo to this README, or any of [my other projects](https://github.com/jonschlinkert?tab=repositories&q=&type=&language=&sort=stargazers) + +
+ +## Quickstart + +```js +const micromatch = require('micromatch'); +// micromatch(list, patterns[, options]); +``` + +The [main export](#micromatch) takes a list of strings and one or more glob patterns: + +```js +console.log(micromatch(['foo', 'bar', 'baz', 'qux'], ['f*', 'b*'])) //=> ['foo', 'bar', 'baz'] +console.log(micromatch(['foo', 'bar', 'baz', 'qux'], ['*', '!b*'])) //=> ['foo', 'qux'] +``` + +Use [.isMatch()](#ismatch) to for boolean matching: + +```js +console.log(micromatch.isMatch('foo', 'f*')) //=> true +console.log(micromatch.isMatch('foo', ['b*', 'f*'])) //=> true +``` + +[Switching](#switching-to-micromatch) from minimatch and multimatch is easy! + +
+ +## Why use micromatch? + +> micromatch is a [replacement](#switching-to-micromatch) for minimatch and multimatch + +* Supports all of the same matching features as [minimatch](https://github.com/isaacs/minimatch) and [multimatch](https://github.com/sindresorhus/multimatch) +* More complete support for the Bash 4.3 specification than minimatch and multimatch. Micromatch passes _all of the spec tests_ from bash, including some that bash still fails. +* **Fast & Performant** - Loads in about 5ms and performs [fast matches](#benchmarks). +* **Glob matching** - Using wildcards (`*` and `?`), globstars (`**`) for nested directories +* **[Advanced globbing](#extended-globbing)** - Supports [extglobs](#extglobs), [braces](#braces-1), and [POSIX brackets](#posix-bracket-expressions), and support for escaping special characters with `\` or quotes. +* **Accurate** - Covers more scenarios [than minimatch](https://github.com/yarnpkg/yarn/pull/3339) +* **Well tested** - More than 5,000 [test assertions](./test) +* **Windows support** - More reliable windows support than minimatch and multimatch. +* **[Safe](https://github.com/micromatch/braces#braces-is-safe)** - Micromatch is not subject to DoS with brace patterns like minimatch and multimatch. + +### Matching features + +* Support for multiple glob patterns (no need for wrappers like multimatch) +* Wildcards (`**`, `*.js`) +* Negation (`'!a/*.js'`, `'*!(b).js'`) +* [extglobs](#extglobs) (`+(x|y)`, `!(a|b)`) +* [POSIX character classes](#posix-bracket-expressions) (`[[:alpha:][:digit:]]`) +* [brace expansion](https://github.com/micromatch/braces) (`foo/{1..5}.md`, `bar/{a,b,c}.js`) +* regex character classes (`foo-[1-5].js`) +* regex logical "or" (`foo/(abc|xyz).js`) + +You can mix and match these features to create whatever patterns you need! + +## Switching to micromatch + +_(There is one notable difference between micromatch and minimatch in regards to how backslashes are handled. See [the notes about backslashes](#backslashes) for more information.)_ + +### From minimatch + +Use [micromatch.isMatch()](#ismatch) instead of `minimatch()`: + +```js +console.log(micromatch.isMatch('foo', 'b*')); //=> false +``` + +Use [micromatch.match()](#match) instead of `minimatch.match()`: + +```js +console.log(micromatch.match(['foo', 'bar'], 'b*')); //=> 'bar' +``` + +### From multimatch + +Same signature: + +```js +console.log(micromatch(['foo', 'bar', 'baz'], ['f*', '*z'])); //=> ['foo', 'baz'] +``` + +## API + +**Params** + +* `list` **{String|Array}**: List of strings to match. +* `patterns` **{String|Array}**: One or more glob patterns to use for matching. +* `options` **{Object}**: See available [options](#options) +* `returns` **{Array}**: Returns an array of matches + +**Example** + +```js +const mm = require('micromatch'); +// mm(list, patterns[, options]); + +console.log(mm(['a.js', 'a.txt'], ['*.js'])); +//=> [ 'a.js' ] +``` + +### [.matcher](index.js#L109) + +Returns a matcher function from the given glob `pattern` and `options`. The returned function takes a string to match as its only argument and returns true if the string is a match. + +**Params** + +* `pattern` **{String}**: Glob pattern +* `options` **{Object}** +* `returns` **{Function}**: Returns a matcher function. + +**Example** + +```js +const mm = require('micromatch'); +// mm.matcher(pattern[, options]); + +const isMatch = mm.matcher('*.!(*a)'); +console.log(isMatch('a.a')); //=> false +console.log(isMatch('a.b')); //=> true +``` + +### [.isMatch](index.js#L128) + +Returns true if **any** of the given glob `patterns` match the specified `string`. + +**Params** + +* `str` **{String}**: The string to test. +* `patterns` **{String|Array}**: One or more glob patterns to use for matching. +* `[options]` **{Object}**: See available [options](#options). +* `returns` **{Boolean}**: Returns true if any patterns match `str` + +**Example** + +```js +const mm = require('micromatch'); +// mm.isMatch(string, patterns[, options]); + +console.log(mm.isMatch('a.a', ['b.*', '*.a'])); //=> true +console.log(mm.isMatch('a.a', 'b.*')); //=> false +``` + +### [.not](index.js#L153) + +Returns a list of strings that _**do not match any**_ of the given `patterns`. + +**Params** + +* `list` **{Array}**: Array of strings to match. +* `patterns` **{String|Array}**: One or more glob pattern to use for matching. +* `options` **{Object}**: See available [options](#options) for changing how matches are performed +* `returns` **{Array}**: Returns an array of strings that **do not match** the given patterns. + +**Example** + +```js +const mm = require('micromatch'); +// mm.not(list, patterns[, options]); + +console.log(mm.not(['a.a', 'b.b', 'c.c'], '*.a')); +//=> ['b.b', 'c.c'] +``` + +### [.contains](index.js#L193) + +Returns true if the given `string` contains the given pattern. Similar to [.isMatch](#isMatch) but the pattern can match any part of the string. + +**Params** + +* `str` **{String}**: The string to match. +* `patterns` **{String|Array}**: Glob pattern to use for matching. +* `options` **{Object}**: See available [options](#options) for changing how matches are performed +* `returns` **{Boolean}**: Returns true if any of the patterns matches any part of `str`. + +**Example** + +```js +var mm = require('micromatch'); +// mm.contains(string, pattern[, options]); + +console.log(mm.contains('aa/bb/cc', '*b')); +//=> true +console.log(mm.contains('aa/bb/cc', '*d')); +//=> false +``` + +### [.matchKeys](index.js#L235) + +Filter the keys of the given object with the given `glob` pattern and `options`. Does not attempt to match nested keys. If you need this feature, use [glob-object](https://github.com/jonschlinkert/glob-object) instead. + +**Params** + +* `object` **{Object}**: The object with keys to filter. +* `patterns` **{String|Array}**: One or more glob patterns to use for matching. +* `options` **{Object}**: See available [options](#options) for changing how matches are performed +* `returns` **{Object}**: Returns an object with only keys that match the given patterns. + +**Example** + +```js +const mm = require('micromatch'); +// mm.matchKeys(object, patterns[, options]); + +const obj = { aa: 'a', ab: 'b', ac: 'c' }; +console.log(mm.matchKeys(obj, '*b')); +//=> { ab: 'b' } +``` + +### [.some](index.js#L264) + +Returns true if some of the strings in the given `list` match any of the given glob `patterns`. + +**Params** + +* `list` **{String|Array}**: The string or array of strings to test. Returns as soon as the first match is found. +* `patterns` **{String|Array}**: One or more glob patterns to use for matching. +* `options` **{Object}**: See available [options](#options) for changing how matches are performed +* `returns` **{Boolean}**: Returns true if any `patterns` matches any of the strings in `list` + +**Example** + +```js +const mm = require('micromatch'); +// mm.some(list, patterns[, options]); + +console.log(mm.some(['foo.js', 'bar.js'], ['*.js', '!foo.js'])); +// true +console.log(mm.some(['foo.js'], ['*.js', '!foo.js'])); +// false +``` + +### [.every](index.js#L300) + +Returns true if every string in the given `list` matches any of the given glob `patterns`. + +**Params** + +* `list` **{String|Array}**: The string or array of strings to test. +* `patterns` **{String|Array}**: One or more glob patterns to use for matching. +* `options` **{Object}**: See available [options](#options) for changing how matches are performed +* `returns` **{Boolean}**: Returns true if all `patterns` matches all of the strings in `list` + +**Example** + +```js +const mm = require('micromatch'); +// mm.every(list, patterns[, options]); + +console.log(mm.every('foo.js', ['foo.js'])); +// true +console.log(mm.every(['foo.js', 'bar.js'], ['*.js'])); +// true +console.log(mm.every(['foo.js', 'bar.js'], ['*.js', '!foo.js'])); +// false +console.log(mm.every(['foo.js'], ['*.js', '!foo.js'])); +// false +``` + +### [.all](index.js#L339) + +Returns true if **all** of the given `patterns` match the specified string. + +**Params** + +* `str` **{String|Array}**: The string to test. +* `patterns` **{String|Array}**: One or more glob patterns to use for matching. +* `options` **{Object}**: See available [options](#options) for changing how matches are performed +* `returns` **{Boolean}**: Returns true if any patterns match `str` + +**Example** + +```js +const mm = require('micromatch'); +// mm.all(string, patterns[, options]); + +console.log(mm.all('foo.js', ['foo.js'])); +// true + +console.log(mm.all('foo.js', ['*.js', '!foo.js'])); +// false + +console.log(mm.all('foo.js', ['*.js', 'foo.js'])); +// true + +console.log(mm.all('foo.js', ['*.js', 'f*', '*o*', '*o.js'])); +// true +``` + +### [.capture](index.js#L366) + +Returns an array of matches captured by `pattern` in `string, or`null` if the pattern did not match. + +**Params** + +* `glob` **{String}**: Glob pattern to use for matching. +* `input` **{String}**: String to match +* `options` **{Object}**: See available [options](#options) for changing how matches are performed +* `returns` **{Array|null}**: Returns an array of captures if the input matches the glob pattern, otherwise `null`. + +**Example** + +```js +const mm = require('micromatch'); +// mm.capture(pattern, string[, options]); + +console.log(mm.capture('test/*.js', 'test/foo.js')); +//=> ['foo'] +console.log(mm.capture('test/*.js', 'foo/bar.css')); +//=> null +``` + +### [.makeRe](index.js#L392) + +Create a regular expression from the given glob `pattern`. + +**Params** + +* `pattern` **{String}**: A glob pattern to convert to regex. +* `options` **{Object}** +* `returns` **{RegExp}**: Returns a regex created from the given pattern. + +**Example** + +```js +const mm = require('micromatch'); +// mm.makeRe(pattern[, options]); + +console.log(mm.makeRe('*.js')); +//=> /^(?:(\.[\\\/])?(?!\.)(?=.)[^\/]*?\.js)$/ +``` + +### [.scan](index.js#L408) + +Scan a glob pattern to separate the pattern into segments. Used by the [split](#split) method. + +**Params** + +* `pattern` **{String}** +* `options` **{Object}** +* `returns` **{Object}**: Returns an object with + +**Example** + +```js +const mm = require('micromatch'); +const state = mm.scan(pattern[, options]); +``` + +### [.parse](index.js#L424) + +Parse a glob pattern to create the source string for a regular expression. + +**Params** + +* `glob` **{String}** +* `options` **{Object}** +* `returns` **{Object}**: Returns an object with useful properties and output to be used as regex source string. + +**Example** + +```js +const mm = require('micromatch'); +const state = mm.parse(pattern[, options]); +``` + +### [.braces](index.js#L451) + +Process the given brace `pattern`. + +**Params** + +* `pattern` **{String}**: String with brace pattern to process. +* `options` **{Object}**: Any [options](#options) to change how expansion is performed. See the [braces](https://github.com/micromatch/braces) library for all available options. +* `returns` **{Array}** + +**Example** + +```js +const { braces } = require('micromatch'); +console.log(braces('foo/{a,b,c}/bar')); +//=> [ 'foo/(a|b|c)/bar' ] + +console.log(braces('foo/{a,b,c}/bar', { expand: true })); +//=> [ 'foo/a/bar', 'foo/b/bar', 'foo/c/bar' ] +``` + +## Options + +| **Option** | **Type** | **Default value** | **Description** | +| --- | --- | --- | --- | +| `basename` | `boolean` | `false` | If set, then patterns without slashes will be matched against the basename of the path if it contains slashes. For example, `a?b` would match the path `/xyz/123/acb`, but not `/xyz/acb/123`. | +| `bash` | `boolean` | `false` | Follow bash matching rules more strictly - disallows backslashes as escape characters, and treats single stars as globstars (`**`). | +| `capture` | `boolean` | `undefined` | Return regex matches in supporting methods. | +| `contains` | `boolean` | `undefined` | Allows glob to match any part of the given string(s). | +| `cwd` | `string` | `process.cwd()` | Current working directory. Used by `picomatch.split()` | +| `debug` | `boolean` | `undefined` | Debug regular expressions when an error is thrown. | +| `dot` | `boolean` | `false` | Match dotfiles. Otherwise dotfiles are ignored unless a `.` is explicitly defined in the pattern. | +| `expandRange` | `function` | `undefined` | Custom function for expanding ranges in brace patterns, such as `{a..z}`. The function receives the range values as two arguments, and it must return a string to be used in the generated regex. It's recommended that returned strings be wrapped in parentheses. This option is overridden by the `expandBrace` option. | +| `failglob` | `boolean` | `false` | Similar to the `failglob` behavior in Bash, throws an error when no matches are found. Based on the bash option of the same name. | +| `fastpaths` | `boolean` | `true` | To speed up processing, full parsing is skipped for a handful common glob patterns. Disable this behavior by setting this option to `false`. | +| `flags` | `boolean` | `undefined` | Regex flags to use in the generated regex. If defined, the `nocase` option will be overridden. | +| [format](#optionsformat) | `function` | `undefined` | Custom function for formatting the returned string. This is useful for removing leading slashes, converting Windows paths to Posix paths, etc. | +| `ignore` | `array\|string` | `undefined` | One or more glob patterns for excluding strings that should not be matched from the result. | +| `keepQuotes` | `boolean` | `false` | Retain quotes in the generated regex, since quotes may also be used as an alternative to backslashes. | +| `literalBrackets` | `boolean` | `undefined` | When `true`, brackets in the glob pattern will be escaped so that only literal brackets will be matched. | +| `lookbehinds` | `boolean` | `true` | Support regex positive and negative lookbehinds. Note that you must be using Node 8.1.10 or higher to enable regex lookbehinds. | +| `matchBase` | `boolean` | `false` | Alias for `basename` | +| `maxLength` | `boolean` | `65536` | Limit the max length of the input string. An error is thrown if the input string is longer than this value. | +| `nobrace` | `boolean` | `false` | Disable brace matching, so that `{a,b}` and `{1..3}` would be treated as literal characters. | +| `nobracket` | `boolean` | `undefined` | Disable matching with regex brackets. | +| `nocase` | `boolean` | `false` | Perform case-insensitive matching. Equivalent to the regex `i` flag. Note that this option is ignored when the `flags` option is defined. | +| `nodupes` | `boolean` | `true` | Deprecated, use `nounique` instead. This option will be removed in a future major release. By default duplicates are removed. Disable uniquification by setting this option to false. | +| `noext` | `boolean` | `false` | Alias for `noextglob` | +| `noextglob` | `boolean` | `false` | Disable support for matching with [extglobs](#extglobs) (like `+(a\|b)`) | +| `noglobstar` | `boolean` | `false` | Disable support for matching nested directories with globstars (`**`) | +| `nonegate` | `boolean` | `false` | Disable support for negating with leading `!` | +| `noquantifiers` | `boolean` | `false` | Disable support for regex quantifiers (like `a{1,2}`) and treat them as brace patterns to be expanded. | +| [onIgnore](#optionsonIgnore) | `function` | `undefined` | Function to be called on ignored items. | +| [onMatch](#optionsonMatch) | `function` | `undefined` | Function to be called on matched items. | +| [onResult](#optionsonResult) | `function` | `undefined` | Function to be called on all items, regardless of whether or not they are matched or ignored. | +| `posix` | `boolean` | `false` | Support [POSIX character classes](#posix-bracket-expressions) ("posix brackets"). | +| `posixSlashes` | `boolean` | `undefined` | Convert all slashes in file paths to forward slashes. This does not convert slashes in the glob pattern itself | +| `prepend` | `string` | `undefined` | String to prepend to the generated regex used for matching. | +| `regex` | `boolean` | `false` | Use regular expression rules for `+` (instead of matching literal `+`), and for stars that follow closing parentheses or brackets (as in `)*` and `]*`). | +| `strictBrackets` | `boolean` | `undefined` | Throw an error if brackets, braces, or parens are imbalanced. | +| `strictSlashes` | `boolean` | `undefined` | When true, picomatch won't match trailing slashes with single stars. | +| `unescape` | `boolean` | `undefined` | Remove preceding backslashes from escaped glob characters before creating the regular expression to perform matches. | +| `unixify` | `boolean` | `undefined` | Alias for `posixSlashes`, for backwards compatitibility. | + +## Options Examples + +### options.basename + +Allow glob patterns without slashes to match a file path based on its basename. Same behavior as [minimatch](https://github.com/isaacs/minimatch) option `matchBase`. + +**Type**: `Boolean` + +**Default**: `false` + +**Example** + +```js +micromatch(['a/b.js', 'a/c.md'], '*.js'); +//=> [] + +micromatch(['a/b.js', 'a/c.md'], '*.js', { basename: true }); +//=> ['a/b.js'] +``` + +### options.bash + +Enabled by default, this option enforces bash-like behavior with stars immediately following a bracket expression. Bash bracket expressions are similar to regex character classes, but unlike regex, a star following a bracket expression **does not repeat the bracketed characters**. Instead, the star is treated the same as any other star. + +**Type**: `Boolean` + +**Default**: `true` + +**Example** + +```js +const files = ['abc', 'ajz']; +console.log(micromatch(files, '[a-c]*')); +//=> ['abc', 'ajz'] + +console.log(micromatch(files, '[a-c]*', { bash: false })); +``` + +### options.expandRange + +**Type**: `function` + +**Default**: `undefined` + +Custom function for expanding ranges in brace patterns. The [fill-range](https://github.com/jonschlinkert/fill-range) library is ideal for this purpose, or you can use custom code to do whatever you need. + +**Example** + +The following example shows how to create a glob that matches a numeric folder name between `01` and `25`, with leading zeros. + +```js +const fill = require('fill-range'); +const regex = micromatch.makeRe('foo/{01..25}/bar', { + expandRange(a, b) { + return `(${fill(a, b, { toRegex: true })})`; + } +}); + +console.log(regex) +//=> /^(?:foo\/((?:0[1-9]|1[0-9]|2[0-5]))\/bar)$/ + +console.log(regex.test('foo/00/bar')) // false +console.log(regex.test('foo/01/bar')) // true +console.log(regex.test('foo/10/bar')) // true +console.log(regex.test('foo/22/bar')) // true +console.log(regex.test('foo/25/bar')) // true +console.log(regex.test('foo/26/bar')) // false +``` + +### options.format + +**Type**: `function` + +**Default**: `undefined` + +Custom function for formatting strings before they're matched. + +**Example** + +```js +// strip leading './' from strings +const format = str => str.replace(/^\.\//, ''); +const isMatch = picomatch('foo/*.js', { format }); +console.log(isMatch('./foo/bar.js')) //=> true +``` + +### options.ignore + +String or array of glob patterns to match files to ignore. + +**Type**: `String|Array` + +**Default**: `undefined` + +```js +const isMatch = micromatch.matcher('*', { ignore: 'f*' }); +console.log(isMatch('foo')) //=> false +console.log(isMatch('bar')) //=> true +console.log(isMatch('baz')) //=> true +``` + +### options.matchBase + +Alias for [options.basename](#options-basename). + +### options.noextglob + +Disable extglob support, so that [extglobs](#extglobs) are regarded as literal characters. + +**Type**: `Boolean` + +**Default**: `undefined` + +**Examples** + +```js +console.log(micromatch(['a/z', 'a/b', 'a/!(z)'], 'a/!(z)')); +//=> ['a/b', 'a/!(z)'] + +console.log(micromatch(['a/z', 'a/b', 'a/!(z)'], 'a/!(z)', { noextglob: true })); +//=> ['a/!(z)'] (matches only as literal characters) +``` + +### options.nonegate + +Disallow negation (`!`) patterns, and treat leading `!` as a literal character to match. + +**Type**: `Boolean` + +**Default**: `undefined` + +### options.noglobstar + +Disable matching with globstars (`**`). + +**Type**: `Boolean` + +**Default**: `undefined` + +```js +micromatch(['a/b', 'a/b/c', 'a/b/c/d'], 'a/**'); +//=> ['a/b', 'a/b/c', 'a/b/c/d'] + +micromatch(['a/b', 'a/b/c', 'a/b/c/d'], 'a/**', {noglobstar: true}); +//=> ['a/b'] +``` + +### options.nonull + +Alias for [options.nullglob](#options-nullglob). + +### options.nullglob + +If `true`, when no matches are found the actual (arrayified) glob pattern is returned instead of an empty array. Same behavior as [minimatch](https://github.com/isaacs/minimatch) option `nonull`. + +**Type**: `Boolean` + +**Default**: `undefined` + +### options.onIgnore + +```js +const onIgnore = ({ glob, regex, input, output }) => { + console.log({ glob, regex, input, output }); + // { glob: '*', regex: /^(?:(?!\.)(?=.)[^\/]*?\/?)$/, input: 'foo', output: 'foo' } +}; + +const isMatch = micromatch.matcher('*', { onIgnore, ignore: 'f*' }); +isMatch('foo'); +isMatch('bar'); +isMatch('baz'); +``` + +### options.onMatch + +```js +const onMatch = ({ glob, regex, input, output }) => { + console.log({ input, output }); + // { input: 'some\\path', output: 'some/path' } + // { input: 'some\\path', output: 'some/path' } + // { input: 'some\\path', output: 'some/path' } +}; + +const isMatch = micromatch.matcher('**', { onMatch, posixSlashes: true }); +isMatch('some\\path'); +isMatch('some\\path'); +isMatch('some\\path'); +``` + +### options.onResult + +```js +const onResult = ({ glob, regex, input, output }) => { + console.log({ glob, regex, input, output }); +}; + +const isMatch = micromatch('*', { onResult, ignore: 'f*' }); +isMatch('foo'); +isMatch('bar'); +isMatch('baz'); +``` + +### options.posixSlashes + +Convert path separators on returned files to posix/unix-style forward slashes. Aliased as `unixify` for backwards compatibility. + +**Type**: `Boolean` + +**Default**: `true` on windows, `false` everywhere else. + +**Example** + +```js +console.log(micromatch.match(['a\\b\\c'], 'a/**')); +//=> ['a/b/c'] + +console.log(micromatch.match(['a\\b\\c'], { posixSlashes: false })); +//=> ['a\\b\\c'] +``` + +### options.unescape + +Remove backslashes from escaped glob characters before creating the regular expression to perform matches. + +**Type**: `Boolean` + +**Default**: `undefined` + +**Example** + +In this example we want to match a literal `*`: + +```js +console.log(micromatch.match(['abc', 'a\\*c'], 'a\\*c')); +//=> ['a\\*c'] + +console.log(micromatch.match(['abc', 'a\\*c'], 'a\\*c', { unescape: true })); +//=> ['a*c'] +``` + +
+
+ +## Extended globbing + +Micromatch supports the following extended globbing features. + +### Extglobs + +Extended globbing, as described by the bash man page: + +| **pattern** | **regex equivalent** | **description** | +| --- | --- | --- | +| `?(pattern)` | `(pattern)?` | Matches zero or one occurrence of the given patterns | +| `*(pattern)` | `(pattern)*` | Matches zero or more occurrences of the given patterns | +| `+(pattern)` | `(pattern)+` | Matches one or more occurrences of the given patterns | +| `@(pattern)` | `(pattern)` * | Matches one of the given patterns | +| `!(pattern)` | N/A (equivalent regex is much more complicated) | Matches anything except one of the given patterns | + +* Note that `@` isn't a regex character. + +### Braces + +Brace patterns can be used to match specific ranges or sets of characters. + +**Example** + +The pattern `{f,b}*/{1..3}/{b,q}*` would match any of following strings: + +``` +foo/1/bar +foo/2/bar +foo/3/bar +baz/1/qux +baz/2/qux +baz/3/qux +``` + +Visit [braces](https://github.com/micromatch/braces) to see the full range of features and options related to brace expansion, or to create brace matching or expansion related issues. + +### Regex character classes + +Given the list: `['a.js', 'b.js', 'c.js', 'd.js', 'E.js']`: + +* `[ac].js`: matches both `a` and `c`, returning `['a.js', 'c.js']` +* `[b-d].js`: matches from `b` to `d`, returning `['b.js', 'c.js', 'd.js']` +* `a/[A-Z].js`: matches and uppercase letter, returning `['a/E.md']` + +Learn about [regex character classes](http://www.regular-expressions.info/charclass.html). + +### Regex groups + +Given `['a.js', 'b.js', 'c.js', 'd.js', 'E.js']`: + +* `(a|c).js`: would match either `a` or `c`, returning `['a.js', 'c.js']` +* `(b|d).js`: would match either `b` or `d`, returning `['b.js', 'd.js']` +* `(b|[A-Z]).js`: would match either `b` or an uppercase letter, returning `['b.js', 'E.js']` + +As with regex, parens can be nested, so patterns like `((a|b)|c)/b` will work. Although brace expansion might be friendlier to use, depending on preference. + +### POSIX bracket expressions + +POSIX brackets are intended to be more user-friendly than regex character classes. This of course is in the eye of the beholder. + +**Example** + +```js +console.log(micromatch.isMatch('a1', '[[:alpha:][:digit:]]')) //=> true +console.log(micromatch.isMatch('a1', '[[:alpha:][:alpha:]]')) //=> false +``` + +*** + +## Notes + +### Bash 4.3 parity + +Whenever possible matching behavior is based on behavior Bash 4.3, which is mostly consistent with minimatch. + +However, it's suprising how many edge cases and rabbit holes there are with glob matching, and since there is no real glob specification, and micromatch is more accurate than both Bash and minimatch, there are cases where best-guesses were made for behavior. In a few cases where Bash had no answers, we used wildmatch (used by git) as a fallback. + +### Backslashes + +There is an important, notable difference between minimatch and micromatch _in regards to how backslashes are handled_ in glob patterns. + +* Micromatch exclusively and explicitly reserves backslashes for escaping characters in a glob pattern, even on windows, which is consistent with bash behavior. _More importantly, unescaping globs can result in unsafe regular expressions_. +* Minimatch converts all backslashes to forward slashes, which means you can't use backslashes to escape any characters in your glob patterns. + +We made this decision for micromatch for a couple of reasons: + +* Consistency with bash conventions. +* Glob patterns are not filepaths. They are a type of [regular language](https://en.wikipedia.org/wiki/Regular_language) that is converted to a JavaScript regular expression. Thus, when forward slashes are defined in a glob pattern, the resulting regular expression will match windows or POSIX path separators just fine. + +**A note about joining paths to globs** + +Note that when you pass something like `path.join('foo', '*')` to micromatch, you are creating a filepath and expecting it to still work as a glob pattern. This causes problems on windows, since the `path.sep` is `\\`. + +In other words, since `\\` is reserved as an escape character in globs, on windows `path.join('foo', '*')` would result in `foo\\*`, which tells micromatch to match `*` as a literal character. This is the same behavior as bash. + +To solve this, you might be inspired to do something like `'foo\\*'.replace(/\\/g, '/')`, but this causes another, potentially much more serious, problem. + +## Benchmarks + +### Running benchmarks + +Install dependencies for running benchmarks: + +```sh +$ cd bench && npm install +``` + +Run the benchmarks: + +```sh +$ npm run bench +``` + +### Latest results + +As of August 23, 2024 (longer bars are better): + +```sh +# .makeRe star + micromatch x 2,232,802 ops/sec ±2.34% (89 runs sampled)) + minimatch x 781,018 ops/sec ±6.74% (92 runs sampled)) + +# .makeRe star; dot=true + micromatch x 1,863,453 ops/sec ±0.74% (93 runs sampled) + minimatch x 723,105 ops/sec ±0.75% (93 runs sampled) + +# .makeRe globstar + micromatch x 1,624,179 ops/sec ±2.22% (91 runs sampled) + minimatch x 1,117,230 ops/sec ±2.78% (86 runs sampled)) + +# .makeRe globstars + micromatch x 1,658,642 ops/sec ±0.86% (92 runs sampled) + minimatch x 741,224 ops/sec ±1.24% (89 runs sampled)) + +# .makeRe with leading star + micromatch x 1,525,014 ops/sec ±1.63% (90 runs sampled) + minimatch x 561,074 ops/sec ±3.07% (89 runs sampled) + +# .makeRe - braces + micromatch x 172,478 ops/sec ±2.37% (78 runs sampled) + minimatch x 96,087 ops/sec ±2.34% (88 runs sampled))) + +# .makeRe braces - range (expanded) + micromatch x 26,973 ops/sec ±0.84% (89 runs sampled) + minimatch x 3,023 ops/sec ±0.99% (90 runs sampled)) + +# .makeRe braces - range (compiled) + micromatch x 152,892 ops/sec ±1.67% (83 runs sampled) + minimatch x 992 ops/sec ±3.50% (89 runs sampled)d)) + +# .makeRe braces - nested ranges (expanded) + micromatch x 15,816 ops/sec ±13.05% (80 runs sampled) + minimatch x 2,953 ops/sec ±1.64% (91 runs sampled) + +# .makeRe braces - nested ranges (compiled) + micromatch x 110,881 ops/sec ±1.85% (82 runs sampled) + minimatch x 1,008 ops/sec ±1.51% (91 runs sampled) + +# .makeRe braces - set (compiled) + micromatch x 134,930 ops/sec ±3.54% (63 runs sampled)) + minimatch x 43,242 ops/sec ±0.60% (93 runs sampled) + +# .makeRe braces - nested sets (compiled) + micromatch x 94,455 ops/sec ±1.74% (69 runs sampled)) + minimatch x 27,720 ops/sec ±1.84% (93 runs sampled)) +``` + +## Contributing + +All contributions are welcome! Please read [the contributing guide](.github/contributing.md) to get started. + +**Bug reports** + +Please create an issue if you encounter a bug or matching behavior that doesn't seem correct. If you find a matching-related issue, please: + +* [research existing issues first](../../issues) (open and closed) +* visit the [GNU Bash documentation](https://www.gnu.org/software/bash/manual/) to see how Bash deals with the pattern +* visit the [minimatch](https://github.com/isaacs/minimatch) documentation to cross-check expected behavior in node.js +* if all else fails, since there is no real specification for globs we will probably need to discuss expected behavior and decide how to resolve it. which means any detail you can provide to help with this discussion would be greatly appreciated. + +**Platform issues** + +It's important to us that micromatch work consistently on all platforms. If you encounter any platform-specific matching or path related issues, please let us know (pull requests are also greatly appreciated). + +## About + +
+Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +Please read the [contributing guide](.github/contributing.md) for advice on opening issues, pull requests, and coding standards. + +
+ +
+Running Tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +
+ +
+Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +
+ +### Related projects + +You might also be interested in these projects: + +* [braces](https://www.npmjs.com/package/braces): Bash-like brace expansion, implemented in JavaScript. Safer than other brace expansion libs, with complete support… [more](https://github.com/micromatch/braces) | [homepage](https://github.com/micromatch/braces "Bash-like brace expansion, implemented in JavaScript. Safer than other brace expansion libs, with complete support for the Bash 4.3 braces specification, without sacrificing speed.") +* [expand-brackets](https://www.npmjs.com/package/expand-brackets): Expand POSIX bracket expressions (character classes) in glob patterns. | [homepage](https://github.com/micromatch/expand-brackets "Expand POSIX bracket expressions (character classes) in glob patterns.") +* [extglob](https://www.npmjs.com/package/extglob): Extended glob support for JavaScript. Adds (almost) the expressive power of regular expressions to glob… [more](https://github.com/micromatch/extglob) | [homepage](https://github.com/micromatch/extglob "Extended glob support for JavaScript. Adds (almost) the expressive power of regular expressions to glob patterns.") +* [fill-range](https://www.npmjs.com/package/fill-range): Fill in a range of numbers or letters, optionally passing an increment or `step` to… [more](https://github.com/jonschlinkert/fill-range) | [homepage](https://github.com/jonschlinkert/fill-range "Fill in a range of numbers or letters, optionally passing an increment or `step` to use, or create a regex-compatible range with `options.toRegex`") +* [nanomatch](https://www.npmjs.com/package/nanomatch): Fast, minimal glob matcher for node.js. Similar to micromatch, minimatch and multimatch, but complete Bash… [more](https://github.com/micromatch/nanomatch) | [homepage](https://github.com/micromatch/nanomatch "Fast, minimal glob matcher for node.js. Similar to micromatch, minimatch and multimatch, but complete Bash 4.3 wildcard support only (no support for exglobs, posix brackets or braces)") + +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 523 | [jonschlinkert](https://github.com/jonschlinkert) | +| 12 | [es128](https://github.com/es128) | +| 9 | [danez](https://github.com/danez) | +| 8 | [doowb](https://github.com/doowb) | +| 6 | [paulmillr](https://github.com/paulmillr) | +| 5 | [mrmlnc](https://github.com/mrmlnc) | +| 3 | [DrPizza](https://github.com/DrPizza) | +| 2 | [Tvrqvoise](https://github.com/Tvrqvoise) | +| 2 | [antonyk](https://github.com/antonyk) | +| 2 | [MartinKolarik](https://github.com/MartinKolarik) | +| 2 | [Glazy](https://github.com/Glazy) | +| 2 | [mceIdo](https://github.com/mceIdo) | +| 2 | [TrySound](https://github.com/TrySound) | +| 1 | [yvele](https://github.com/yvele) | +| 1 | [wtgtybhertgeghgtwtg](https://github.com/wtgtybhertgeghgtwtg) | +| 1 | [simlu](https://github.com/simlu) | +| 1 | [curbengh](https://github.com/curbengh) | +| 1 | [fidian](https://github.com/fidian) | +| 1 | [tomByrer](https://github.com/tomByrer) | +| 1 | [ZoomerTedJackson](https://github.com/ZoomerTedJackson) | +| 1 | [styfle](https://github.com/styfle) | +| 1 | [sebdeckers](https://github.com/sebdeckers) | +| 1 | [muescha](https://github.com/muescha) | +| 1 | [juszczykjakub](https://github.com/juszczykjakub) | +| 1 | [joyceerhl](https://github.com/joyceerhl) | +| 1 | [donatj](https://github.com/donatj) | +| 1 | [frangio](https://github.com/frangio) | +| 1 | [UltCombo](https://github.com/UltCombo) | +| 1 | [DianeLooney](https://github.com/DianeLooney) | +| 1 | [devongovett](https://github.com/devongovett) | +| 1 | [Cslove](https://github.com/Cslove) | +| 1 | [amilajack](https://github.com/amilajack) | + +### Author + +**Jon Schlinkert** + +* [GitHub Profile](https://github.com/jonschlinkert) +* [Twitter Profile](https://twitter.com/jonschlinkert) +* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) + +### License + +Copyright © 2024, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on August 23, 2024._ \ No newline at end of file diff --git a/node_modules/micromatch/index.js b/node_modules/micromatch/index.js new file mode 100644 index 0000000..cb9d9ef --- /dev/null +++ b/node_modules/micromatch/index.js @@ -0,0 +1,474 @@ +'use strict'; + +const util = require('util'); +const braces = require('braces'); +const picomatch = require('picomatch'); +const utils = require('picomatch/lib/utils'); + +const isEmptyString = v => v === '' || v === './'; +const hasBraces = v => { + const index = v.indexOf('{'); + return index > -1 && v.indexOf('}', index) > -1; +}; + +/** + * Returns an array of strings that match one or more glob patterns. + * + * ```js + * const mm = require('micromatch'); + * // mm(list, patterns[, options]); + * + * console.log(mm(['a.js', 'a.txt'], ['*.js'])); + * //=> [ 'a.js' ] + * ``` + * @param {String|Array} `list` List of strings to match. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) + * @return {Array} Returns an array of matches + * @summary false + * @api public + */ + +const micromatch = (list, patterns, options) => { + patterns = [].concat(patterns); + list = [].concat(list); + + let omit = new Set(); + let keep = new Set(); + let items = new Set(); + let negatives = 0; + + let onResult = state => { + items.add(state.output); + if (options && options.onResult) { + options.onResult(state); + } + }; + + for (let i = 0; i < patterns.length; i++) { + let isMatch = picomatch(String(patterns[i]), { ...options, onResult }, true); + let negated = isMatch.state.negated || isMatch.state.negatedExtglob; + if (negated) negatives++; + + for (let item of list) { + let matched = isMatch(item, true); + + let match = negated ? !matched.isMatch : matched.isMatch; + if (!match) continue; + + if (negated) { + omit.add(matched.output); + } else { + omit.delete(matched.output); + keep.add(matched.output); + } + } + } + + let result = negatives === patterns.length ? [...items] : [...keep]; + let matches = result.filter(item => !omit.has(item)); + + if (options && matches.length === 0) { + if (options.failglob === true) { + throw new Error(`No matches found for "${patterns.join(', ')}"`); + } + + if (options.nonull === true || options.nullglob === true) { + return options.unescape ? patterns.map(p => p.replace(/\\/g, '')) : patterns; + } + } + + return matches; +}; + +/** + * Backwards compatibility + */ + +micromatch.match = micromatch; + +/** + * Returns a matcher function from the given glob `pattern` and `options`. + * The returned function takes a string to match as its only argument and returns + * true if the string is a match. + * + * ```js + * const mm = require('micromatch'); + * // mm.matcher(pattern[, options]); + * + * const isMatch = mm.matcher('*.!(*a)'); + * console.log(isMatch('a.a')); //=> false + * console.log(isMatch('a.b')); //=> true + * ``` + * @param {String} `pattern` Glob pattern + * @param {Object} `options` + * @return {Function} Returns a matcher function. + * @api public + */ + +micromatch.matcher = (pattern, options) => picomatch(pattern, options); + +/** + * Returns true if **any** of the given glob `patterns` match the specified `string`. + * + * ```js + * const mm = require('micromatch'); + * // mm.isMatch(string, patterns[, options]); + * + * console.log(mm.isMatch('a.a', ['b.*', '*.a'])); //=> true + * console.log(mm.isMatch('a.a', 'b.*')); //=> false + * ``` + * @param {String} `str` The string to test. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `[options]` See available [options](#options). + * @return {Boolean} Returns true if any patterns match `str` + * @api public + */ + +micromatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); + +/** + * Backwards compatibility + */ + +micromatch.any = micromatch.isMatch; + +/** + * Returns a list of strings that _**do not match any**_ of the given `patterns`. + * + * ```js + * const mm = require('micromatch'); + * // mm.not(list, patterns[, options]); + * + * console.log(mm.not(['a.a', 'b.b', 'c.c'], '*.a')); + * //=> ['b.b', 'c.c'] + * ``` + * @param {Array} `list` Array of strings to match. + * @param {String|Array} `patterns` One or more glob pattern to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Array} Returns an array of strings that **do not match** the given patterns. + * @api public + */ + +micromatch.not = (list, patterns, options = {}) => { + patterns = [].concat(patterns).map(String); + let result = new Set(); + let items = []; + + let onResult = state => { + if (options.onResult) options.onResult(state); + items.push(state.output); + }; + + let matches = new Set(micromatch(list, patterns, { ...options, onResult })); + + for (let item of items) { + if (!matches.has(item)) { + result.add(item); + } + } + return [...result]; +}; + +/** + * Returns true if the given `string` contains the given pattern. Similar + * to [.isMatch](#isMatch) but the pattern can match any part of the string. + * + * ```js + * var mm = require('micromatch'); + * // mm.contains(string, pattern[, options]); + * + * console.log(mm.contains('aa/bb/cc', '*b')); + * //=> true + * console.log(mm.contains('aa/bb/cc', '*d')); + * //=> false + * ``` + * @param {String} `str` The string to match. + * @param {String|Array} `patterns` Glob pattern to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Boolean} Returns true if any of the patterns matches any part of `str`. + * @api public + */ + +micromatch.contains = (str, pattern, options) => { + if (typeof str !== 'string') { + throw new TypeError(`Expected a string: "${util.inspect(str)}"`); + } + + if (Array.isArray(pattern)) { + return pattern.some(p => micromatch.contains(str, p, options)); + } + + if (typeof pattern === 'string') { + if (isEmptyString(str) || isEmptyString(pattern)) { + return false; + } + + if (str.includes(pattern) || (str.startsWith('./') && str.slice(2).includes(pattern))) { + return true; + } + } + + return micromatch.isMatch(str, pattern, { ...options, contains: true }); +}; + +/** + * Filter the keys of the given object with the given `glob` pattern + * and `options`. Does not attempt to match nested keys. If you need this feature, + * use [glob-object][] instead. + * + * ```js + * const mm = require('micromatch'); + * // mm.matchKeys(object, patterns[, options]); + * + * const obj = { aa: 'a', ab: 'b', ac: 'c' }; + * console.log(mm.matchKeys(obj, '*b')); + * //=> { ab: 'b' } + * ``` + * @param {Object} `object` The object with keys to filter. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Object} Returns an object with only keys that match the given patterns. + * @api public + */ + +micromatch.matchKeys = (obj, patterns, options) => { + if (!utils.isObject(obj)) { + throw new TypeError('Expected the first argument to be an object'); + } + let keys = micromatch(Object.keys(obj), patterns, options); + let res = {}; + for (let key of keys) res[key] = obj[key]; + return res; +}; + +/** + * Returns true if some of the strings in the given `list` match any of the given glob `patterns`. + * + * ```js + * const mm = require('micromatch'); + * // mm.some(list, patterns[, options]); + * + * console.log(mm.some(['foo.js', 'bar.js'], ['*.js', '!foo.js'])); + * // true + * console.log(mm.some(['foo.js'], ['*.js', '!foo.js'])); + * // false + * ``` + * @param {String|Array} `list` The string or array of strings to test. Returns as soon as the first match is found. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Boolean} Returns true if any `patterns` matches any of the strings in `list` + * @api public + */ + +micromatch.some = (list, patterns, options) => { + let items = [].concat(list); + + for (let pattern of [].concat(patterns)) { + let isMatch = picomatch(String(pattern), options); + if (items.some(item => isMatch(item))) { + return true; + } + } + return false; +}; + +/** + * Returns true if every string in the given `list` matches + * any of the given glob `patterns`. + * + * ```js + * const mm = require('micromatch'); + * // mm.every(list, patterns[, options]); + * + * console.log(mm.every('foo.js', ['foo.js'])); + * // true + * console.log(mm.every(['foo.js', 'bar.js'], ['*.js'])); + * // true + * console.log(mm.every(['foo.js', 'bar.js'], ['*.js', '!foo.js'])); + * // false + * console.log(mm.every(['foo.js'], ['*.js', '!foo.js'])); + * // false + * ``` + * @param {String|Array} `list` The string or array of strings to test. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Boolean} Returns true if all `patterns` matches all of the strings in `list` + * @api public + */ + +micromatch.every = (list, patterns, options) => { + let items = [].concat(list); + + for (let pattern of [].concat(patterns)) { + let isMatch = picomatch(String(pattern), options); + if (!items.every(item => isMatch(item))) { + return false; + } + } + return true; +}; + +/** + * Returns true if **all** of the given `patterns` match + * the specified string. + * + * ```js + * const mm = require('micromatch'); + * // mm.all(string, patterns[, options]); + * + * console.log(mm.all('foo.js', ['foo.js'])); + * // true + * + * console.log(mm.all('foo.js', ['*.js', '!foo.js'])); + * // false + * + * console.log(mm.all('foo.js', ['*.js', 'foo.js'])); + * // true + * + * console.log(mm.all('foo.js', ['*.js', 'f*', '*o*', '*o.js'])); + * // true + * ``` + * @param {String|Array} `str` The string to test. + * @param {String|Array} `patterns` One or more glob patterns to use for matching. + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Boolean} Returns true if any patterns match `str` + * @api public + */ + +micromatch.all = (str, patterns, options) => { + if (typeof str !== 'string') { + throw new TypeError(`Expected a string: "${util.inspect(str)}"`); + } + + return [].concat(patterns).every(p => picomatch(p, options)(str)); +}; + +/** + * Returns an array of matches captured by `pattern` in `string, or `null` if the pattern did not match. + * + * ```js + * const mm = require('micromatch'); + * // mm.capture(pattern, string[, options]); + * + * console.log(mm.capture('test/*.js', 'test/foo.js')); + * //=> ['foo'] + * console.log(mm.capture('test/*.js', 'foo/bar.css')); + * //=> null + * ``` + * @param {String} `glob` Glob pattern to use for matching. + * @param {String} `input` String to match + * @param {Object} `options` See available [options](#options) for changing how matches are performed + * @return {Array|null} Returns an array of captures if the input matches the glob pattern, otherwise `null`. + * @api public + */ + +micromatch.capture = (glob, input, options) => { + let posix = utils.isWindows(options); + let regex = picomatch.makeRe(String(glob), { ...options, capture: true }); + let match = regex.exec(posix ? utils.toPosixSlashes(input) : input); + + if (match) { + return match.slice(1).map(v => v === void 0 ? '' : v); + } +}; + +/** + * Create a regular expression from the given glob `pattern`. + * + * ```js + * const mm = require('micromatch'); + * // mm.makeRe(pattern[, options]); + * + * console.log(mm.makeRe('*.js')); + * //=> /^(?:(\.[\\\/])?(?!\.)(?=.)[^\/]*?\.js)$/ + * ``` + * @param {String} `pattern` A glob pattern to convert to regex. + * @param {Object} `options` + * @return {RegExp} Returns a regex created from the given pattern. + * @api public + */ + +micromatch.makeRe = (...args) => picomatch.makeRe(...args); + +/** + * Scan a glob pattern to separate the pattern into segments. Used + * by the [split](#split) method. + * + * ```js + * const mm = require('micromatch'); + * const state = mm.scan(pattern[, options]); + * ``` + * @param {String} `pattern` + * @param {Object} `options` + * @return {Object} Returns an object with + * @api public + */ + +micromatch.scan = (...args) => picomatch.scan(...args); + +/** + * Parse a glob pattern to create the source string for a regular + * expression. + * + * ```js + * const mm = require('micromatch'); + * const state = mm.parse(pattern[, options]); + * ``` + * @param {String} `glob` + * @param {Object} `options` + * @return {Object} Returns an object with useful properties and output to be used as regex source string. + * @api public + */ + +micromatch.parse = (patterns, options) => { + let res = []; + for (let pattern of [].concat(patterns || [])) { + for (let str of braces(String(pattern), options)) { + res.push(picomatch.parse(str, options)); + } + } + return res; +}; + +/** + * Process the given brace `pattern`. + * + * ```js + * const { braces } = require('micromatch'); + * console.log(braces('foo/{a,b,c}/bar')); + * //=> [ 'foo/(a|b|c)/bar' ] + * + * console.log(braces('foo/{a,b,c}/bar', { expand: true })); + * //=> [ 'foo/a/bar', 'foo/b/bar', 'foo/c/bar' ] + * ``` + * @param {String} `pattern` String with brace pattern to process. + * @param {Object} `options` Any [options](#options) to change how expansion is performed. See the [braces][] library for all available options. + * @return {Array} + * @api public + */ + +micromatch.braces = (pattern, options) => { + if (typeof pattern !== 'string') throw new TypeError('Expected a string'); + if ((options && options.nobrace === true) || !hasBraces(pattern)) { + return [pattern]; + } + return braces(pattern, options); +}; + +/** + * Expand braces + */ + +micromatch.braceExpand = (pattern, options) => { + if (typeof pattern !== 'string') throw new TypeError('Expected a string'); + return micromatch.braces(pattern, { ...options, expand: true }); +}; + +/** + * Expose micromatch + */ + +// exposed for tests +micromatch.hasBraces = hasBraces; +module.exports = micromatch; diff --git a/node_modules/micromatch/package.json b/node_modules/micromatch/package.json new file mode 100644 index 0000000..d5558bb --- /dev/null +++ b/node_modules/micromatch/package.json @@ -0,0 +1,119 @@ +{ + "name": "micromatch", + "description": "Glob matching for javascript/node.js. A replacement and faster alternative to minimatch and multimatch.", + "version": "4.0.8", + "homepage": "https://github.com/micromatch/micromatch", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "contributors": [ + "(https://github.com/DianeLooney)", + "Amila Welihinda (amilajack.com)", + "Bogdan Chadkin (https://github.com/TrySound)", + "Brian Woodward (https://twitter.com/doowb)", + "Devon Govett (http://badassjs.com)", + "Elan Shanker (https://github.com/es128)", + "Fabrício Matté (https://ultcombo.js.org)", + "Jon Schlinkert (http://twitter.com/jonschlinkert)", + "Martin Kolárik (https://kolarik.sk)", + "Olsten Larck (https://i.am.charlike.online)", + "Paul Miller (paulmillr.com)", + "Tom Byrer (https://github.com/tomByrer)", + "Tyler Akins (http://rumkin.com)", + "Peter Bright (https://github.com/drpizza)", + "Kuba Juszczyk (https://github.com/ku8ar)" + ], + "repository": "micromatch/micromatch", + "bugs": { + "url": "https://github.com/micromatch/micromatch/issues" + }, + "license": "MIT", + "files": [ + "index.js" + ], + "main": "index.js", + "engines": { + "node": ">=8.6" + }, + "scripts": { + "test": "mocha" + }, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "devDependencies": { + "fill-range": "^7.0.1", + "gulp-format-md": "^2.0.0", + "minimatch": "^5.0.1", + "mocha": "^9.2.2", + "time-require": "github:jonschlinkert/time-require" + }, + "keywords": [ + "bash", + "bracket", + "character-class", + "expand", + "expansion", + "expression", + "extglob", + "extglobs", + "file", + "files", + "filter", + "find", + "glob", + "globbing", + "globs", + "globstar", + "lookahead", + "lookaround", + "lookbehind", + "match", + "matcher", + "matches", + "matching", + "micromatch", + "minimatch", + "multimatch", + "negate", + "negation", + "path", + "pattern", + "patterns", + "posix", + "regex", + "regexp", + "regular", + "shell", + "star", + "wildcard" + ], + "verb": { + "toc": "collapsible", + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + }, + "related": { + "list": [ + "braces", + "expand-brackets", + "extglob", + "fill-range", + "nanomatch" + ] + }, + "reflinks": [ + "extglob", + "fill-range", + "glob-object", + "minimatch", + "multimatch" + ] + } +} diff --git a/node_modules/minimatch/LICENSE b/node_modules/minimatch/LICENSE new file mode 100644 index 0000000..1493534 --- /dev/null +++ b/node_modules/minimatch/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) 2011-2023 Isaac Z. Schlueter and Contributors + +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. diff --git a/node_modules/minimatch/README.md b/node_modules/minimatch/README.md new file mode 100644 index 0000000..a5bdefa --- /dev/null +++ b/node_modules/minimatch/README.md @@ -0,0 +1,259 @@ +# minimatch + +A minimal matching utility. + +[![Build Status](https://travis-ci.org/isaacs/minimatch.svg?branch=master)](http://travis-ci.org/isaacs/minimatch) + + +This is the matching library used internally by npm. + +It works by converting glob expressions into JavaScript `RegExp` +objects. + +## Usage + +```javascript +var minimatch = require("minimatch") + +minimatch("bar.foo", "*.foo") // true! +minimatch("bar.foo", "*.bar") // false! +minimatch("bar.foo", "*.+(bar|foo)", { debug: true }) // true, and noisy! +``` + +## Features + +Supports these glob features: + +* Brace Expansion +* Extended glob matching +* "Globstar" `**` matching + +See: + +* `man sh` +* `man bash` +* `man 3 fnmatch` +* `man 5 gitignore` + +## Windows + +**Please only use forward-slashes in glob expressions.** + +Though windows uses either `/` or `\` as its path separator, only `/` +characters are used by this glob implementation. You must use +forward-slashes **only** in glob expressions. Back-slashes in patterns +will always be interpreted as escape characters, not path separators. + +Note that `\` or `/` _will_ be interpreted as path separators in paths on +Windows, and will match against `/` in glob expressions. + +So just always use `/` in patterns. + +## Minimatch Class + +Create a minimatch object by instantiating the `minimatch.Minimatch` class. + +```javascript +var Minimatch = require("minimatch").Minimatch +var mm = new Minimatch(pattern, options) +``` + +### Properties + +* `pattern` The original pattern the minimatch object represents. +* `options` The options supplied to the constructor. +* `set` A 2-dimensional array of regexp or string expressions. + Each row in the + array corresponds to a brace-expanded pattern. Each item in the row + corresponds to a single path-part. For example, the pattern + `{a,b/c}/d` would expand to a set of patterns like: + + [ [ a, d ] + , [ b, c, d ] ] + + If a portion of the pattern doesn't have any "magic" in it + (that is, it's something like `"foo"` rather than `fo*o?`), then it + will be left as a string rather than converted to a regular + expression. + +* `regexp` Created by the `makeRe` method. A single regular expression + expressing the entire pattern. This is useful in cases where you wish + to use the pattern somewhat like `fnmatch(3)` with `FNM_PATH` enabled. +* `negate` True if the pattern is negated. +* `comment` True if the pattern is a comment. +* `empty` True if the pattern is `""`. + +### Methods + +* `makeRe` Generate the `regexp` member if necessary, and return it. + Will return `false` if the pattern is invalid. +* `match(fname)` Return true if the filename matches the pattern, or + false otherwise. +* `matchOne(fileArray, patternArray, partial)` Take a `/`-split + filename, and match it against a single row in the `regExpSet`. This + method is mainly for internal use, but is exposed so that it can be + used by a glob-walker that needs to avoid excessive filesystem calls. + +All other methods are internal, and will be called as necessary. + +### minimatch(path, pattern, options) + +Main export. Tests a path against the pattern using the options. + +```javascript +var isJS = minimatch(file, "*.js", { matchBase: true }) +``` + +### minimatch.filter(pattern, options) + +Returns a function that tests its +supplied argument, suitable for use with `Array.filter`. Example: + +```javascript +var javascripts = fileList.filter(minimatch.filter("*.js", {matchBase: true})) +``` + +### minimatch.match(list, pattern, options) + +Match against the list of +files, in the style of fnmatch or glob. If nothing is matched, and +options.nonull is set, then return a list containing the pattern itself. + +```javascript +var javascripts = minimatch.match(fileList, "*.js", {matchBase: true}) +``` + +### minimatch.makeRe(pattern, options) + +Make a regular expression object from the pattern. + +## Options + +All options are `false` by default. + +### debug + +Dump a ton of stuff to stderr. + +### nobrace + +Do not expand `{a,b}` and `{1..3}` brace sets. + +### noglobstar + +Disable `**` matching against multiple folder names. + +### dot + +Allow patterns to match filenames starting with a period, even if +the pattern does not explicitly have a period in that spot. + +Note that by default, `a/**/b` will **not** match `a/.d/b`, unless `dot` +is set. + +### noext + +Disable "extglob" style patterns like `+(a|b)`. + +### nocase + +Perform a case-insensitive match. + +### nonull + +When a match is not found by `minimatch.match`, return a list containing +the pattern itself if this option is set. When not set, an empty list +is returned if there are no matches. + +### matchBase + +If set, then patterns without slashes will be matched +against the basename of the path if it contains slashes. For example, +`a?b` would match the path `/xyz/123/acb`, but not `/xyz/acb/123`. + +### nocomment + +Suppress the behavior of treating `#` at the start of a pattern as a +comment. + +### nonegate + +Suppress the behavior of treating a leading `!` character as negation. + +### flipNegate + +Returns from negate expressions the same as if they were not negated. +(Ie, true on a hit, false on a miss.) + +### partial + +Compare a partial path to a pattern. As long as the parts of the path that +are present are not contradicted by the pattern, it will be treated as a +match. This is useful in applications where you're walking through a +folder structure, and don't yet have the full path, but want to ensure that +you do not walk down paths that can never be a match. + +For example, + +```js +minimatch('/a/b', '/a/*/c/d', { partial: true }) // true, might be /a/b/c/d +minimatch('/a/b', '/**/d', { partial: true }) // true, might be /a/b/.../d +minimatch('/x/y/z', '/a/**/z', { partial: true }) // false, because x !== a +``` + +### windowsPathsNoEscape + +Use `\\` as a path separator _only_, and _never_ as an escape +character. If set, all `\\` characters are replaced with `/` in +the pattern. Note that this makes it **impossible** to match +against paths containing literal glob pattern characters, but +allows matching with patterns constructed using `path.join()` and +`path.resolve()` on Windows platforms, mimicking the (buggy!) +behavior of earlier versions on Windows. Please use with +caution, and be mindful of [the caveat about Windows +paths](#windows). + +For legacy reasons, this is also set if +`options.allowWindowsEscape` is set to the exact value `false`. + +## Comparisons to other fnmatch/glob implementations + +While strict compliance with the existing standards is a worthwhile +goal, some discrepancies exist between minimatch and other +implementations, and are intentional. + +If the pattern starts with a `!` character, then it is negated. Set the +`nonegate` flag to suppress this behavior, and treat leading `!` +characters normally. This is perhaps relevant if you wish to start the +pattern with a negative extglob pattern like `!(a|B)`. Multiple `!` +characters at the start of a pattern will negate the pattern multiple +times. + +If a pattern starts with `#`, then it is treated as a comment, and +will not match anything. Use `\#` to match a literal `#` at the +start of a line, or set the `nocomment` flag to suppress this behavior. + +The double-star character `**` is supported by default, unless the +`noglobstar` flag is set. This is supported in the manner of bsdglob +and bash 4.1, where `**` only has special significance if it is the only +thing in a path part. That is, `a/**/b` will match `a/x/y/b`, but +`a/**b` will not. + +If an escaped pattern has no matches, and the `nonull` flag is set, +then minimatch.match returns the pattern as-provided, rather than +interpreting the character escapes. For example, +`minimatch.match([], "\\*a\\?")` will return `"\\*a\\?"` rather than +`"*a?"`. This is akin to setting the `nullglob` option in bash, except +that it does not resolve escaped pattern characters. + +If brace expansion is not disabled, then it is performed before any +other interpretation of the glob pattern. Thus, a pattern like +`+(a|{b),c)}`, which would not be valid in bash or zsh, is expanded +**first** into the set of `+(a|b)` and `+(a|c)`, and those patterns are +checked for validity. Since those two are valid, matching proceeds. + +Note that `fnmatch(3)` in libc is an extremely naive string comparison +matcher, which does not do anything special for slashes. This library is +designed to be used in glob searching and file walkers, and so it does do +special things with `/`. Thus, `foo*` will not match `foo/bar` in this +library, even though it would in `fnmatch(3)`. diff --git a/node_modules/minimatch/lib/path.js b/node_modules/minimatch/lib/path.js new file mode 100644 index 0000000..ffe453d --- /dev/null +++ b/node_modules/minimatch/lib/path.js @@ -0,0 +1,4 @@ +const isWindows = typeof process === 'object' && + process && + process.platform === 'win32' +module.exports = isWindows ? { sep: '\\' } : { sep: '/' } diff --git a/node_modules/minimatch/minimatch.js b/node_modules/minimatch/minimatch.js new file mode 100644 index 0000000..6c8bfc3 --- /dev/null +++ b/node_modules/minimatch/minimatch.js @@ -0,0 +1,944 @@ +const minimatch = module.exports = (p, pattern, options = {}) => { + assertValidPattern(pattern) + + // shortcut: comments match nothing. + if (!options.nocomment && pattern.charAt(0) === '#') { + return false + } + + return new Minimatch(pattern, options).match(p) +} + +module.exports = minimatch + +const path = require('./lib/path.js') +minimatch.sep = path.sep + +const GLOBSTAR = Symbol('globstar **') +minimatch.GLOBSTAR = GLOBSTAR +const expand = require('brace-expansion') + +const plTypes = { + '!': { open: '(?:(?!(?:', close: '))[^/]*?)'}, + '?': { open: '(?:', close: ')?' }, + '+': { open: '(?:', close: ')+' }, + '*': { open: '(?:', close: ')*' }, + '@': { open: '(?:', close: ')' } +} + +// any single thing other than / +// don't need to escape / when using new RegExp() +const qmark = '[^/]' + +// * => any number of characters +const star = qmark + '*?' + +// ** when dots are allowed. Anything goes, except .. and . +// not (^ or / followed by one or two dots followed by $ or /), +// followed by anything, any number of times. +const twoStarDot = '(?:(?!(?:\\\/|^)(?:\\.{1,2})($|\\\/)).)*?' + +// not a ^ or / followed by a dot, +// followed by anything, any number of times. +const twoStarNoDot = '(?:(?!(?:\\\/|^)\\.).)*?' + +// "abc" -> { a:true, b:true, c:true } +const charSet = s => s.split('').reduce((set, c) => { + set[c] = true + return set +}, {}) + +// characters that need to be escaped in RegExp. +const reSpecials = charSet('().*{}+?[]^$\\!') + +// characters that indicate we have to add the pattern start +const addPatternStartSet = charSet('[.(') + +// normalizes slashes. +const slashSplit = /\/+/ + +minimatch.filter = (pattern, options = {}) => + (p, i, list) => minimatch(p, pattern, options) + +const ext = (a, b = {}) => { + const t = {} + Object.keys(a).forEach(k => t[k] = a[k]) + Object.keys(b).forEach(k => t[k] = b[k]) + return t +} + +minimatch.defaults = def => { + if (!def || typeof def !== 'object' || !Object.keys(def).length) { + return minimatch + } + + const orig = minimatch + + const m = (p, pattern, options) => orig(p, pattern, ext(def, options)) + m.Minimatch = class Minimatch extends orig.Minimatch { + constructor (pattern, options) { + super(pattern, ext(def, options)) + } + } + m.Minimatch.defaults = options => orig.defaults(ext(def, options)).Minimatch + m.filter = (pattern, options) => orig.filter(pattern, ext(def, options)) + m.defaults = options => orig.defaults(ext(def, options)) + m.makeRe = (pattern, options) => orig.makeRe(pattern, ext(def, options)) + m.braceExpand = (pattern, options) => orig.braceExpand(pattern, ext(def, options)) + m.match = (list, pattern, options) => orig.match(list, pattern, ext(def, options)) + + return m +} + + + + + +// Brace expansion: +// a{b,c}d -> abd acd +// a{b,}c -> abc ac +// a{0..3}d -> a0d a1d a2d a3d +// a{b,c{d,e}f}g -> abg acdfg acefg +// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg +// +// Invalid sets are not expanded. +// a{2..}b -> a{2..}b +// a{b}c -> a{b}c +minimatch.braceExpand = (pattern, options) => braceExpand(pattern, options) + +const braceExpand = (pattern, options = {}) => { + assertValidPattern(pattern) + + // Thanks to Yeting Li for + // improving this regexp to avoid a ReDOS vulnerability. + if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) { + // shortcut. no need to expand. + return [pattern] + } + + return expand(pattern) +} + +const MAX_PATTERN_LENGTH = 1024 * 64 +const assertValidPattern = pattern => { + if (typeof pattern !== 'string') { + throw new TypeError('invalid pattern') + } + + if (pattern.length > MAX_PATTERN_LENGTH) { + throw new TypeError('pattern is too long') + } +} + +// parse a component of the expanded set. +// At this point, no pattern may contain "/" in it +// so we're going to return a 2d array, where each entry is the full +// pattern, split on '/', and then turned into a regular expression. +// A regexp is made at the end which joins each array with an +// escaped /, and another full one which joins each regexp with |. +// +// Following the lead of Bash 4.1, note that "**" only has special meaning +// when it is the *only* thing in a path portion. Otherwise, any series +// of * is equivalent to a single *. Globstar behavior is enabled by +// default, and can be disabled by setting options.noglobstar. +const SUBPARSE = Symbol('subparse') + +minimatch.makeRe = (pattern, options) => + new Minimatch(pattern, options || {}).makeRe() + +minimatch.match = (list, pattern, options = {}) => { + const mm = new Minimatch(pattern, options) + list = list.filter(f => mm.match(f)) + if (mm.options.nonull && !list.length) { + list.push(pattern) + } + return list +} + +// replace stuff like \* with * +const globUnescape = s => s.replace(/\\(.)/g, '$1') +const charUnescape = s => s.replace(/\\([^-\]])/g, '$1') +const regExpEscape = s => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&') +const braExpEscape = s => s.replace(/[[\]\\]/g, '\\$&') + +class Minimatch { + constructor (pattern, options) { + assertValidPattern(pattern) + + if (!options) options = {} + + this.options = options + this.set = [] + this.pattern = pattern + this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || + options.allowWindowsEscape === false + if (this.windowsPathsNoEscape) { + this.pattern = this.pattern.replace(/\\/g, '/') + } + this.regexp = null + this.negate = false + this.comment = false + this.empty = false + this.partial = !!options.partial + + // make the set of regexps etc. + this.make() + } + + debug () {} + + make () { + const pattern = this.pattern + const options = this.options + + // empty patterns and comments match nothing. + if (!options.nocomment && pattern.charAt(0) === '#') { + this.comment = true + return + } + if (!pattern) { + this.empty = true + return + } + + // step 1: figure out negation, etc. + this.parseNegate() + + // step 2: expand braces + let set = this.globSet = this.braceExpand() + + if (options.debug) this.debug = (...args) => console.error(...args) + + this.debug(this.pattern, set) + + // step 3: now we have a set, so turn each one into a series of path-portion + // matching patterns. + // These will be regexps, except in the case of "**", which is + // set to the GLOBSTAR object for globstar behavior, + // and will not contain any / characters + set = this.globParts = set.map(s => s.split(slashSplit)) + + this.debug(this.pattern, set) + + // glob --> regexps + set = set.map((s, si, set) => s.map(this.parse, this)) + + this.debug(this.pattern, set) + + // filter out everything that didn't compile properly. + set = set.filter(s => s.indexOf(false) === -1) + + this.debug(this.pattern, set) + + this.set = set + } + + parseNegate () { + if (this.options.nonegate) return + + const pattern = this.pattern + let negate = false + let negateOffset = 0 + + for (let i = 0; i < pattern.length && pattern.charAt(i) === '!'; i++) { + negate = !negate + negateOffset++ + } + + if (negateOffset) this.pattern = pattern.slice(negateOffset) + this.negate = negate + } + + // set partial to true to test if, for example, + // "/a/b" matches the start of "/*/b/*/d" + // Partial means, if you run out of file before you run + // out of pattern, then that's fine, as long as all + // the parts match. + matchOne (file, pattern, partial) { + var options = this.options + + this.debug('matchOne', + { 'this': this, file: file, pattern: pattern }) + + this.debug('matchOne', file.length, pattern.length) + + for (var fi = 0, + pi = 0, + fl = file.length, + pl = pattern.length + ; (fi < fl) && (pi < pl) + ; fi++, pi++) { + this.debug('matchOne loop') + var p = pattern[pi] + var f = file[fi] + + this.debug(pattern, p, f) + + // should be impossible. + // some invalid regexp stuff in the set. + /* istanbul ignore if */ + if (p === false) return false + + if (p === GLOBSTAR) { + this.debug('GLOBSTAR', [pattern, p, f]) + + // "**" + // a/**/b/**/c would match the following: + // a/b/x/y/z/c + // a/x/y/z/b/c + // a/b/x/b/x/c + // a/b/c + // To do this, take the rest of the pattern after + // the **, and see if it would match the file remainder. + // If so, return success. + // If not, the ** "swallows" a segment, and try again. + // This is recursively awful. + // + // a/**/b/**/c matching a/b/x/y/z/c + // - a matches a + // - doublestar + // - matchOne(b/x/y/z/c, b/**/c) + // - b matches b + // - doublestar + // - matchOne(x/y/z/c, c) -> no + // - matchOne(y/z/c, c) -> no + // - matchOne(z/c, c) -> no + // - matchOne(c, c) yes, hit + var fr = fi + var pr = pi + 1 + if (pr === pl) { + this.debug('** at the end') + // a ** at the end will just swallow the rest. + // We have found a match. + // however, it will not swallow /.x, unless + // options.dot is set. + // . and .. are *never* matched by **, for explosively + // exponential reasons. + for (; fi < fl; fi++) { + if (file[fi] === '.' || file[fi] === '..' || + (!options.dot && file[fi].charAt(0) === '.')) return false + } + return true + } + + // ok, let's see if we can swallow whatever we can. + while (fr < fl) { + var swallowee = file[fr] + + this.debug('\nglobstar while', file, fr, pattern, pr, swallowee) + + // XXX remove this slice. Just pass the start index. + if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) { + this.debug('globstar found match!', fr, fl, swallowee) + // found a match. + return true + } else { + // can't swallow "." or ".." ever. + // can only swallow ".foo" when explicitly asked. + if (swallowee === '.' || swallowee === '..' || + (!options.dot && swallowee.charAt(0) === '.')) { + this.debug('dot detected!', file, fr, pattern, pr) + break + } + + // ** swallows a segment, and continue. + this.debug('globstar swallow a segment, and continue') + fr++ + } + } + + // no match was found. + // However, in partial mode, we can't say this is necessarily over. + // If there's more *pattern* left, then + /* istanbul ignore if */ + if (partial) { + // ran out of file + this.debug('\n>>> no match, partial?', file, fr, pattern, pr) + if (fr === fl) return true + } + return false + } + + // something other than ** + // non-magic patterns just have to match exactly + // patterns with magic have been turned into regexps. + var hit + if (typeof p === 'string') { + hit = f === p + this.debug('string match', p, f, hit) + } else { + hit = f.match(p) + this.debug('pattern match', p, f, hit) + } + + if (!hit) return false + } + + // Note: ending in / means that we'll get a final "" + // at the end of the pattern. This can only match a + // corresponding "" at the end of the file. + // If the file ends in /, then it can only match a + // a pattern that ends in /, unless the pattern just + // doesn't have any more for it. But, a/b/ should *not* + // match "a/b/*", even though "" matches against the + // [^/]*? pattern, except in partial mode, where it might + // simply not be reached yet. + // However, a/b/ should still satisfy a/* + + // now either we fell off the end of the pattern, or we're done. + if (fi === fl && pi === pl) { + // ran out of pattern and filename at the same time. + // an exact hit! + return true + } else if (fi === fl) { + // ran out of file, but still had pattern left. + // this is ok if we're doing the match as part of + // a glob fs traversal. + return partial + } else /* istanbul ignore else */ if (pi === pl) { + // ran out of pattern, still have file left. + // this is only acceptable if we're on the very last + // empty segment of a file with a trailing slash. + // a/* should match a/b/ + return (fi === fl - 1) && (file[fi] === '') + } + + // should be unreachable. + /* istanbul ignore next */ + throw new Error('wtf?') + } + + braceExpand () { + return braceExpand(this.pattern, this.options) + } + + parse (pattern, isSub) { + assertValidPattern(pattern) + + const options = this.options + + // shortcuts + if (pattern === '**') { + if (!options.noglobstar) + return GLOBSTAR + else + pattern = '*' + } + if (pattern === '') return '' + + let re = '' + let hasMagic = false + let escaping = false + // ? => one single character + const patternListStack = [] + const negativeLists = [] + let stateChar + let inClass = false + let reClassStart = -1 + let classStart = -1 + let cs + let pl + let sp + // . and .. never match anything that doesn't start with ., + // even when options.dot is set. However, if the pattern + // starts with ., then traversal patterns can match. + let dotTravAllowed = pattern.charAt(0) === '.' + let dotFileAllowed = options.dot || dotTravAllowed + const patternStart = () => + dotTravAllowed + ? '' + : dotFileAllowed + ? '(?!(?:^|\\/)\\.{1,2}(?:$|\\/))' + : '(?!\\.)' + const subPatternStart = (p) => + p.charAt(0) === '.' + ? '' + : options.dot + ? '(?!(?:^|\\/)\\.{1,2}(?:$|\\/))' + : '(?!\\.)' + + + const clearStateChar = () => { + if (stateChar) { + // we had some state-tracking character + // that wasn't consumed by this pass. + switch (stateChar) { + case '*': + re += star + hasMagic = true + break + case '?': + re += qmark + hasMagic = true + break + default: + re += '\\' + stateChar + break + } + this.debug('clearStateChar %j %j', stateChar, re) + stateChar = false + } + } + + for (let i = 0, c; (i < pattern.length) && (c = pattern.charAt(i)); i++) { + this.debug('%s\t%s %s %j', pattern, i, re, c) + + // skip over any that are escaped. + if (escaping) { + /* istanbul ignore next - completely not allowed, even escaped. */ + if (c === '/') { + return false + } + + if (reSpecials[c]) { + re += '\\' + } + re += c + escaping = false + continue + } + + switch (c) { + /* istanbul ignore next */ + case '/': { + // Should already be path-split by now. + return false + } + + case '\\': + if (inClass && pattern.charAt(i + 1) === '-') { + re += c + continue + } + + clearStateChar() + escaping = true + continue + + // the various stateChar values + // for the "extglob" stuff. + case '?': + case '*': + case '+': + case '@': + case '!': + this.debug('%s\t%s %s %j <-- stateChar', pattern, i, re, c) + + // all of those are literals inside a class, except that + // the glob [!a] means [^a] in regexp + if (inClass) { + this.debug(' in class') + if (c === '!' && i === classStart + 1) c = '^' + re += c + continue + } + + // if we already have a stateChar, then it means + // that there was something like ** or +? in there. + // Handle the stateChar, then proceed with this one. + this.debug('call clearStateChar %j', stateChar) + clearStateChar() + stateChar = c + // if extglob is disabled, then +(asdf|foo) isn't a thing. + // just clear the statechar *now*, rather than even diving into + // the patternList stuff. + if (options.noext) clearStateChar() + continue + + case '(': { + if (inClass) { + re += '(' + continue + } + + if (!stateChar) { + re += '\\(' + continue + } + + const plEntry = { + type: stateChar, + start: i - 1, + reStart: re.length, + open: plTypes[stateChar].open, + close: plTypes[stateChar].close, + } + this.debug(this.pattern, '\t', plEntry) + patternListStack.push(plEntry) + // negation is (?:(?!(?:js)(?:))[^/]*) + re += plEntry.open + // next entry starts with a dot maybe? + if (plEntry.start === 0 && plEntry.type !== '!') { + dotTravAllowed = true + re += subPatternStart(pattern.slice(i + 1)) + } + this.debug('plType %j %j', stateChar, re) + stateChar = false + continue + } + + case ')': { + const plEntry = patternListStack[patternListStack.length - 1] + if (inClass || !plEntry) { + re += '\\)' + continue + } + patternListStack.pop() + + // closing an extglob + clearStateChar() + hasMagic = true + pl = plEntry + // negation is (?:(?!js)[^/]*) + // The others are (?:) + re += pl.close + if (pl.type === '!') { + negativeLists.push(Object.assign(pl, { reEnd: re.length })) + } + continue + } + + case '|': { + const plEntry = patternListStack[patternListStack.length - 1] + if (inClass || !plEntry) { + re += '\\|' + continue + } + + clearStateChar() + re += '|' + // next subpattern can start with a dot? + if (plEntry.start === 0 && plEntry.type !== '!') { + dotTravAllowed = true + re += subPatternStart(pattern.slice(i + 1)) + } + continue + } + + // these are mostly the same in regexp and glob + case '[': + // swallow any state-tracking char before the [ + clearStateChar() + + if (inClass) { + re += '\\' + c + continue + } + + inClass = true + classStart = i + reClassStart = re.length + re += c + continue + + case ']': + // a right bracket shall lose its special + // meaning and represent itself in + // a bracket expression if it occurs + // first in the list. -- POSIX.2 2.8.3.2 + if (i === classStart + 1 || !inClass) { + re += '\\' + c + continue + } + + // split where the last [ was, make sure we don't have + // an invalid re. if so, re-walk the contents of the + // would-be class to re-translate any characters that + // were passed through as-is + // TODO: It would probably be faster to determine this + // without a try/catch and a new RegExp, but it's tricky + // to do safely. For now, this is safe and works. + cs = pattern.substring(classStart + 1, i) + try { + RegExp('[' + braExpEscape(charUnescape(cs)) + ']') + // looks good, finish up the class. + re += c + } catch (er) { + // out of order ranges in JS are errors, but in glob syntax, + // they're just a range that matches nothing. + re = re.substring(0, reClassStart) + '(?:$.)' // match nothing ever + } + hasMagic = true + inClass = false + continue + + default: + // swallow any state char that wasn't consumed + clearStateChar() + + if (reSpecials[c] && !(c === '^' && inClass)) { + re += '\\' + } + + re += c + break + + } // switch + } // for + + // handle the case where we left a class open. + // "[abc" is valid, equivalent to "\[abc" + if (inClass) { + // split where the last [ was, and escape it + // this is a huge pita. We now have to re-walk + // the contents of the would-be class to re-translate + // any characters that were passed through as-is + cs = pattern.slice(classStart + 1) + sp = this.parse(cs, SUBPARSE) + re = re.substring(0, reClassStart) + '\\[' + sp[0] + hasMagic = hasMagic || sp[1] + } + + // handle the case where we had a +( thing at the *end* + // of the pattern. + // each pattern list stack adds 3 chars, and we need to go through + // and escape any | chars that were passed through as-is for the regexp. + // Go through and escape them, taking care not to double-escape any + // | chars that were already escaped. + for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { + let tail + tail = re.slice(pl.reStart + pl.open.length) + this.debug('setting tail', re, pl) + // maybe some even number of \, then maybe 1 \, followed by a | + tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, (_, $1, $2) => { + /* istanbul ignore else - should already be done */ + if (!$2) { + // the | isn't already escaped, so escape it. + $2 = '\\' + } + + // need to escape all those slashes *again*, without escaping the + // one that we need for escaping the | character. As it works out, + // escaping an even number of slashes can be done by simply repeating + // it exactly after itself. That's why this trick works. + // + // I am sorry that you have to see this. + return $1 + $1 + $2 + '|' + }) + + this.debug('tail=%j\n %s', tail, tail, pl, re) + const t = pl.type === '*' ? star + : pl.type === '?' ? qmark + : '\\' + pl.type + + hasMagic = true + re = re.slice(0, pl.reStart) + t + '\\(' + tail + } + + // handle trailing things that only matter at the very end. + clearStateChar() + if (escaping) { + // trailing \\ + re += '\\\\' + } + + // only need to apply the nodot start if the re starts with + // something that could conceivably capture a dot + const addPatternStart = addPatternStartSet[re.charAt(0)] + + // Hack to work around lack of negative lookbehind in JS + // A pattern like: *.!(x).!(y|z) needs to ensure that a name + // like 'a.xyz.yz' doesn't match. So, the first negative + // lookahead, has to look ALL the way ahead, to the end of + // the pattern. + for (let n = negativeLists.length - 1; n > -1; n--) { + const nl = negativeLists[n] + + const nlBefore = re.slice(0, nl.reStart) + const nlFirst = re.slice(nl.reStart, nl.reEnd - 8) + let nlAfter = re.slice(nl.reEnd) + const nlLast = re.slice(nl.reEnd - 8, nl.reEnd) + nlAfter + + // Handle nested stuff like *(*.js|!(*.json)), where open parens + // mean that we should *not* include the ) in the bit that is considered + // "after" the negated section. + const closeParensBefore = nlBefore.split(')').length + const openParensBefore = nlBefore.split('(').length - closeParensBefore + let cleanAfter = nlAfter + for (let i = 0; i < openParensBefore; i++) { + cleanAfter = cleanAfter.replace(/\)[+*?]?/, '') + } + nlAfter = cleanAfter + + const dollar = nlAfter === '' && isSub !== SUBPARSE ? '(?:$|\\/)' : '' + + re = nlBefore + nlFirst + nlAfter + dollar + nlLast + } + + // if the re is not "" at this point, then we need to make sure + // it doesn't match against an empty path part. + // Otherwise a/* will match a/, which it should not. + if (re !== '' && hasMagic) { + re = '(?=.)' + re + } + + if (addPatternStart) { + re = patternStart() + re + } + + // parsing just a piece of a larger pattern. + if (isSub === SUBPARSE) { + return [re, hasMagic] + } + + // if it's nocase, and the lcase/uppercase don't match, it's magic + if (options.nocase && !hasMagic) { + hasMagic = pattern.toUpperCase() !== pattern.toLowerCase() + } + + // skip the regexp for non-magical patterns + // unescape anything in it, though, so that it'll be + // an exact match against a file etc. + if (!hasMagic) { + return globUnescape(pattern) + } + + const flags = options.nocase ? 'i' : '' + try { + return Object.assign(new RegExp('^' + re + '$', flags), { + _glob: pattern, + _src: re, + }) + } catch (er) /* istanbul ignore next - should be impossible */ { + // If it was an invalid regular expression, then it can't match + // anything. This trick looks for a character after the end of + // the string, which is of course impossible, except in multi-line + // mode, but it's not a /m regex. + return new RegExp('$.') + } + } + + makeRe () { + if (this.regexp || this.regexp === false) return this.regexp + + // at this point, this.set is a 2d array of partial + // pattern strings, or "**". + // + // It's better to use .match(). This function shouldn't + // be used, really, but it's pretty convenient sometimes, + // when you just want to work with a regex. + const set = this.set + + if (!set.length) { + this.regexp = false + return this.regexp + } + const options = this.options + + const twoStar = options.noglobstar ? star + : options.dot ? twoStarDot + : twoStarNoDot + const flags = options.nocase ? 'i' : '' + + // coalesce globstars and regexpify non-globstar patterns + // if it's the only item, then we just do one twoStar + // if it's the first, and there are more, prepend (\/|twoStar\/)? to next + // if it's the last, append (\/twoStar|) to previous + // if it's in the middle, append (\/|\/twoStar\/) to previous + // then filter out GLOBSTAR symbols + let re = set.map(pattern => { + pattern = pattern.map(p => + typeof p === 'string' ? regExpEscape(p) + : p === GLOBSTAR ? GLOBSTAR + : p._src + ).reduce((set, p) => { + if (!(set[set.length - 1] === GLOBSTAR && p === GLOBSTAR)) { + set.push(p) + } + return set + }, []) + pattern.forEach((p, i) => { + if (p !== GLOBSTAR || pattern[i-1] === GLOBSTAR) { + return + } + if (i === 0) { + if (pattern.length > 1) { + pattern[i+1] = '(?:\\\/|' + twoStar + '\\\/)?' + pattern[i+1] + } else { + pattern[i] = twoStar + } + } else if (i === pattern.length - 1) { + pattern[i-1] += '(?:\\\/|' + twoStar + ')?' + } else { + pattern[i-1] += '(?:\\\/|\\\/' + twoStar + '\\\/)' + pattern[i+1] + pattern[i+1] = GLOBSTAR + } + }) + return pattern.filter(p => p !== GLOBSTAR).join('/') + }).join('|') + + // must match entire pattern + // ending in a * or ** will make it less strict. + re = '^(?:' + re + ')$' + + // can match anything, as long as it's not this. + if (this.negate) re = '^(?!' + re + ').*$' + + try { + this.regexp = new RegExp(re, flags) + } catch (ex) /* istanbul ignore next - should be impossible */ { + this.regexp = false + } + return this.regexp + } + + match (f, partial = this.partial) { + this.debug('match', f, this.pattern) + // short-circuit in the case of busted things. + // comments, etc. + if (this.comment) return false + if (this.empty) return f === '' + + if (f === '/' && partial) return true + + const options = this.options + + // windows: need to use /, not \ + if (path.sep !== '/') { + f = f.split(path.sep).join('/') + } + + // treat the test path as a set of pathparts. + f = f.split(slashSplit) + this.debug(this.pattern, 'split', f) + + // just ONE of the pattern sets in this.set needs to match + // in order for it to be valid. If negating, then just one + // match means that we have failed. + // Either way, return on the first hit. + + const set = this.set + this.debug(this.pattern, 'set', set) + + // Find the basename of the path by looking for the last non-empty segment + let filename + for (let i = f.length - 1; i >= 0; i--) { + filename = f[i] + if (filename) break + } + + for (let i = 0; i < set.length; i++) { + const pattern = set[i] + let file = f + if (options.matchBase && pattern.length === 1) { + file = [filename] + } + const hit = this.matchOne(file, pattern, partial) + if (hit) { + if (options.flipNegate) return true + return !this.negate + } + } + + // didn't get any hits. this is success if it's a negative + // pattern, failure otherwise. + if (options.flipNegate) return false + return this.negate + } + + static defaults (def) { + return minimatch.defaults(def).Minimatch + } +} + +minimatch.Minimatch = Minimatch diff --git a/node_modules/minimatch/package.json b/node_modules/minimatch/package.json new file mode 100644 index 0000000..c8809db --- /dev/null +++ b/node_modules/minimatch/package.json @@ -0,0 +1,35 @@ +{ + "author": "Isaac Z. Schlueter (http://blog.izs.me)", + "name": "minimatch", + "description": "a glob matcher in javascript", + "publishConfig": { + "tag": "legacy-v5" + }, + "version": "5.1.6", + "repository": { + "type": "git", + "url": "git://github.com/isaacs/minimatch.git" + }, + "main": "minimatch.js", + "scripts": { + "test": "tap", + "snap": "tap", + "preversion": "npm test", + "postversion": "npm publish", + "prepublishOnly": "git push origin --follow-tags" + }, + "engines": { + "node": ">=10" + }, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "devDependencies": { + "tap": "^16.3.2" + }, + "license": "ISC", + "files": [ + "minimatch.js", + "lib" + ] +} diff --git a/node_modules/nanoid/LICENSE b/node_modules/nanoid/LICENSE new file mode 100644 index 0000000..37f56aa --- /dev/null +++ b/node_modules/nanoid/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright 2017 Andrey Sitnik + +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. diff --git a/node_modules/nanoid/README.md b/node_modules/nanoid/README.md new file mode 100644 index 0000000..35abb57 --- /dev/null +++ b/node_modules/nanoid/README.md @@ -0,0 +1,39 @@ +# Nano ID + +Nano ID logo by Anton Lovchikov + +**English** | [Русский](./README.ru.md) | [简体中文](./README.zh-CN.md) | [Bahasa Indonesia](./README.id-ID.md) + +A tiny, secure, URL-friendly, unique string ID generator for JavaScript. + +> “An amazing level of senseless perfectionism, +> which is simply impossible not to respect.” + +* **Small.** 130 bytes (minified and gzipped). No dependencies. + [Size Limit] controls the size. +* **Fast.** It is 2 times faster than UUID. +* **Safe.** It uses hardware random generator. Can be used in clusters. +* **Short IDs.** It uses a larger alphabet than UUID (`A-Za-z0-9_-`). + So ID size was reduced from 36 to 21 symbols. +* **Portable.** Nano ID was ported + to [20 programming languages](#other-programming-languages). + +```js +import { nanoid } from 'nanoid' +model.id = nanoid() //=> "V1StGXR8_Z5jdHi6B-myT" +``` + +Supports modern browsers, IE [with Babel], Node.js and React Native. + +[online tool]: https://gitpod.io/#https://github.com/ai/nanoid/ +[with Babel]: https://developer.epages.com/blog/coding/how-to-transpile-node-modules-with-babel-and-webpack-in-a-monorepo/ +[Size Limit]: https://github.com/ai/size-limit + + + Sponsored by Evil Martians + + +## Docs +Read full docs **[here](https://github.com/ai/nanoid#readme)**. diff --git a/node_modules/nanoid/async/index.browser.cjs b/node_modules/nanoid/async/index.browser.cjs new file mode 100644 index 0000000..80d1871 --- /dev/null +++ b/node_modules/nanoid/async/index.browser.cjs @@ -0,0 +1,69 @@ +let random = async bytes => crypto.getRandomValues(new Uint8Array(bytes)) + +let customAlphabet = (alphabet, defaultSize = 21) => { + // First, a bitmask is necessary to generate the ID. The bitmask makes bytes + // values closer to the alphabet size. The bitmask calculates the closest + // `2^31 - 1` number, which exceeds the alphabet size. + // For example, the bitmask for the alphabet size 30 is 31 (00011111). + // `Math.clz32` is not used, because it is not available in browsers. + let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1 + // Though, the bitmask solution is not perfect since the bytes exceeding + // the alphabet size are refused. Therefore, to reliably generate the ID, + // the random bytes redundancy has to be satisfied. + + // Note: every hardware random generator call is performance expensive, + // because the system call for entropy collection takes a lot of time. + // So, to avoid additional system calls, extra bytes are requested in advance. + + // Next, a step determines how many random bytes to generate. + // The number of random bytes gets decided upon the ID size, mask, + // alphabet size, and magic number 1.6 (using 1.6 peaks at performance + // according to benchmarks). + + // `-~f => Math.ceil(f)` if f is a float + // `-~i => i + 1` if i is an integer + let step = -~((1.6 * mask * defaultSize) / alphabet.length) + + return async (size = defaultSize) => { + let id = '' + while (true) { + let bytes = crypto.getRandomValues(new Uint8Array(step)) + // A compact alternative for `for (var i = 0; i < step; i++)`. + let i = step | 0 + while (i--) { + // Adding `|| ''` refuses a random byte that exceeds the alphabet size. + id += alphabet[bytes[i] & mask] || '' + if (id.length === size) return id + } + } + } +} + +let nanoid = async (size = 21) => { + let id = '' + let bytes = crypto.getRandomValues(new Uint8Array((size |= 0))) + + // A compact alternative for `for (var i = 0; i < step; i++)`. + while (size--) { + // It is incorrect to use bytes exceeding the alphabet size. + // The following mask reduces the random byte in the 0-255 value + // range to the 0-63 value range. Therefore, adding hacks, such + // as empty string fallback or magic numbers, is unneccessary because + // the bitmask trims bytes down to the alphabet size. + let byte = bytes[size] & 63 + if (byte < 36) { + // `0-9a-z` + id += byte.toString(36) + } else if (byte < 62) { + // `A-Z` + id += (byte - 26).toString(36).toUpperCase() + } else if (byte < 63) { + id += '_' + } else { + id += '-' + } + } + return id +} + +module.exports = { nanoid, customAlphabet, random } diff --git a/node_modules/nanoid/async/index.browser.js b/node_modules/nanoid/async/index.browser.js new file mode 100644 index 0000000..fbaa230 --- /dev/null +++ b/node_modules/nanoid/async/index.browser.js @@ -0,0 +1,34 @@ +let random = async bytes => crypto.getRandomValues(new Uint8Array(bytes)) +let customAlphabet = (alphabet, defaultSize = 21) => { + let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1 + let step = -~((1.6 * mask * defaultSize) / alphabet.length) + return async (size = defaultSize) => { + let id = '' + while (true) { + let bytes = crypto.getRandomValues(new Uint8Array(step)) + let i = step | 0 + while (i--) { + id += alphabet[bytes[i] & mask] || '' + if (id.length === size) return id + } + } + } +} +let nanoid = async (size = 21) => { + let id = '' + let bytes = crypto.getRandomValues(new Uint8Array((size |= 0))) + while (size--) { + let byte = bytes[size] & 63 + if (byte < 36) { + id += byte.toString(36) + } else if (byte < 62) { + id += (byte - 26).toString(36).toUpperCase() + } else if (byte < 63) { + id += '_' + } else { + id += '-' + } + } + return id +} +export { nanoid, customAlphabet, random } diff --git a/node_modules/nanoid/async/index.cjs b/node_modules/nanoid/async/index.cjs new file mode 100644 index 0000000..f1b0ad0 --- /dev/null +++ b/node_modules/nanoid/async/index.cjs @@ -0,0 +1,71 @@ +let crypto = require('crypto') + +let { urlAlphabet } = require('../url-alphabet/index.cjs') + +// `crypto.randomFill()` is a little faster than `crypto.randomBytes()`, +// because it is possible to use in combination with `Buffer.allocUnsafe()`. +let random = bytes => + new Promise((resolve, reject) => { + // `Buffer.allocUnsafe()` is faster because it doesn’t flush the memory. + // Memory flushing is unnecessary since the buffer allocation itself resets + // the memory with the new bytes. + crypto.randomFill(Buffer.allocUnsafe(bytes), (err, buf) => { + if (err) { + reject(err) + } else { + resolve(buf) + } + }) + }) + +let customAlphabet = (alphabet, defaultSize = 21) => { + // First, a bitmask is necessary to generate the ID. The bitmask makes bytes + // values closer to the alphabet size. The bitmask calculates the closest + // `2^31 - 1` number, which exceeds the alphabet size. + // For example, the bitmask for the alphabet size 30 is 31 (00011111). + let mask = (2 << (31 - Math.clz32((alphabet.length - 1) | 1))) - 1 + // Though, the bitmask solution is not perfect since the bytes exceeding + // the alphabet size are refused. Therefore, to reliably generate the ID, + // the random bytes redundancy has to be satisfied. + + // Note: every hardware random generator call is performance expensive, + // because the system call for entropy collection takes a lot of time. + // So, to avoid additional system calls, extra bytes are requested in advance. + + // Next, a step determines how many random bytes to generate. + // The number of random bytes gets decided upon the ID size, mask, + // alphabet size, and magic number 1.6 (using 1.6 peaks at performance + // according to benchmarks). + let step = Math.ceil((1.6 * mask * defaultSize) / alphabet.length) + + let tick = (id, size = defaultSize) => + random(step).then(bytes => { + // A compact alternative for `for (var i = 0; i < step; i++)`. + let i = step + while (i--) { + // Adding `|| ''` refuses a random byte that exceeds the alphabet size. + id += alphabet[bytes[i] & mask] || '' + if (id.length >= size) return id + } + return tick(id, size) + }) + + return size => tick('', size) +} + +let nanoid = (size = 21) => + random((size |= 0)).then(bytes => { + let id = '' + // A compact alternative for `for (var i = 0; i < step; i++)`. + while (size--) { + // It is incorrect to use bytes exceeding the alphabet size. + // The following mask reduces the random byte in the 0-255 value + // range to the 0-63 value range. Therefore, adding hacks, such + // as empty string fallback or magic numbers, is unneccessary because + // the bitmask trims bytes down to the alphabet size. + id += urlAlphabet[bytes[size] & 63] + } + return id + }) + +module.exports = { nanoid, customAlphabet, random } diff --git a/node_modules/nanoid/async/index.d.ts b/node_modules/nanoid/async/index.d.ts new file mode 100644 index 0000000..9e91965 --- /dev/null +++ b/node_modules/nanoid/async/index.d.ts @@ -0,0 +1,56 @@ +/** + * Generate secure URL-friendly unique ID. The non-blocking version. + * + * By default, the ID will have 21 symbols to have a collision probability + * similar to UUID v4. + * + * ```js + * import { nanoid } from 'nanoid/async' + * nanoid().then(id => { + * model.id = id + * }) + * ``` + * + * @param size Size of the ID. The default size is 21. + * @returns A promise with a random string. + */ +export function nanoid(size?: number): Promise + +/** + * A low-level function. + * Generate secure unique ID with custom alphabet. The non-blocking version. + * + * Alphabet must contain 256 symbols or less. Otherwise, the generator + * will not be secure. + * + * @param alphabet Alphabet used to generate the ID. + * @param defaultSize Size of the ID. The default size is 21. + * @returns A function that returns a promise with a random string. + * + * ```js + * import { customAlphabet } from 'nanoid/async' + * const nanoid = customAlphabet('0123456789абвгдеё', 5) + * nanoid().then(id => { + * model.id = id //=> "8ё56а" + * }) + * ``` + */ +export function customAlphabet( + alphabet: string, + defaultSize?: number +): (size?: number) => Promise + +/** + * Generate an array of random bytes collected from hardware noise. + * + * ```js + * import { random } from 'nanoid/async' + * random(5).then(bytes => { + * bytes //=> [10, 67, 212, 67, 89] + * }) + * ``` + * + * @param bytes Size of the array. + * @returns A promise with a random bytes array. + */ +export function random(bytes: number): Promise diff --git a/node_modules/nanoid/async/index.js b/node_modules/nanoid/async/index.js new file mode 100644 index 0000000..cec454a --- /dev/null +++ b/node_modules/nanoid/async/index.js @@ -0,0 +1,35 @@ +import crypto from 'crypto' +import { urlAlphabet } from '../url-alphabet/index.js' +let random = bytes => + new Promise((resolve, reject) => { + crypto.randomFill(Buffer.allocUnsafe(bytes), (err, buf) => { + if (err) { + reject(err) + } else { + resolve(buf) + } + }) + }) +let customAlphabet = (alphabet, defaultSize = 21) => { + let mask = (2 << (31 - Math.clz32((alphabet.length - 1) | 1))) - 1 + let step = Math.ceil((1.6 * mask * defaultSize) / alphabet.length) + let tick = (id, size = defaultSize) => + random(step).then(bytes => { + let i = step + while (i--) { + id += alphabet[bytes[i] & mask] || '' + if (id.length >= size) return id + } + return tick(id, size) + }) + return size => tick('', size) +} +let nanoid = (size = 21) => + random((size |= 0)).then(bytes => { + let id = '' + while (size--) { + id += urlAlphabet[bytes[size] & 63] + } + return id + }) +export { nanoid, customAlphabet, random } diff --git a/node_modules/nanoid/async/index.native.js b/node_modules/nanoid/async/index.native.js new file mode 100644 index 0000000..7c1d6f3 --- /dev/null +++ b/node_modules/nanoid/async/index.native.js @@ -0,0 +1,26 @@ +import { getRandomBytesAsync } from 'expo-random' +import { urlAlphabet } from '../url-alphabet/index.js' +let random = getRandomBytesAsync +let customAlphabet = (alphabet, defaultSize = 21) => { + let mask = (2 << (31 - Math.clz32((alphabet.length - 1) | 1))) - 1 + let step = Math.ceil((1.6 * mask * defaultSize) / alphabet.length) + let tick = (id, size = defaultSize) => + random(step).then(bytes => { + let i = step + while (i--) { + id += alphabet[bytes[i] & mask] || '' + if (id.length >= size) return id + } + return tick(id, size) + }) + return size => tick('', size) +} +let nanoid = (size = 21) => + random((size |= 0)).then(bytes => { + let id = '' + while (size--) { + id += urlAlphabet[bytes[size] & 63] + } + return id + }) +export { nanoid, customAlphabet, random } diff --git a/node_modules/nanoid/async/package.json b/node_modules/nanoid/async/package.json new file mode 100644 index 0000000..578cdb4 --- /dev/null +++ b/node_modules/nanoid/async/package.json @@ -0,0 +1,12 @@ +{ + "type": "module", + "main": "index.cjs", + "module": "index.js", + "react-native": { + "./index.js": "./index.native.js" + }, + "browser": { + "./index.js": "./index.browser.js", + "./index.cjs": "./index.browser.cjs" + } +} \ No newline at end of file diff --git a/node_modules/nanoid/bin/nanoid.cjs b/node_modules/nanoid/bin/nanoid.cjs new file mode 100755 index 0000000..c76db0f --- /dev/null +++ b/node_modules/nanoid/bin/nanoid.cjs @@ -0,0 +1,55 @@ +#!/usr/bin/env node + +let { nanoid, customAlphabet } = require('..') + +function print(msg) { + process.stdout.write(msg + '\n') +} + +function error(msg) { + process.stderr.write(msg + '\n') + process.exit(1) +} + +if (process.argv.includes('--help') || process.argv.includes('-h')) { + print(` + Usage + $ nanoid [options] + + Options + -s, --size Generated ID size + -a, --alphabet Alphabet to use + -h, --help Show this help + + Examples + $ nanoid --s 15 + S9sBF77U6sDB8Yg + + $ nanoid --size 10 --alphabet abc + bcabababca`) + process.exit() +} + +let alphabet, size +for (let i = 2; i < process.argv.length; i++) { + let arg = process.argv[i] + if (arg === '--size' || arg === '-s') { + size = Number(process.argv[i + 1]) + i += 1 + if (Number.isNaN(size) || size <= 0) { + error('Size must be positive integer') + } + } else if (arg === '--alphabet' || arg === '-a') { + alphabet = process.argv[i + 1] + i += 1 + } else { + error('Unknown argument ' + arg) + } +} + +if (alphabet) { + let customNanoid = customAlphabet(alphabet, size) + print(customNanoid()) +} else { + print(nanoid(size)) +} diff --git a/node_modules/nanoid/index.browser.cjs b/node_modules/nanoid/index.browser.cjs new file mode 100644 index 0000000..d21a91f --- /dev/null +++ b/node_modules/nanoid/index.browser.cjs @@ -0,0 +1,72 @@ +// This file replaces `index.js` in bundlers like webpack or Rollup, +// according to `browser` config in `package.json`. + +let { urlAlphabet } = require('./url-alphabet/index.cjs') + +let random = bytes => crypto.getRandomValues(new Uint8Array(bytes)) + +let customRandom = (alphabet, defaultSize, getRandom) => { + // First, a bitmask is necessary to generate the ID. The bitmask makes bytes + // values closer to the alphabet size. The bitmask calculates the closest + // `2^31 - 1` number, which exceeds the alphabet size. + // For example, the bitmask for the alphabet size 30 is 31 (00011111). + // `Math.clz32` is not used, because it is not available in browsers. + let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1 + // Though, the bitmask solution is not perfect since the bytes exceeding + // the alphabet size are refused. Therefore, to reliably generate the ID, + // the random bytes redundancy has to be satisfied. + + // Note: every hardware random generator call is performance expensive, + // because the system call for entropy collection takes a lot of time. + // So, to avoid additional system calls, extra bytes are requested in advance. + + // Next, a step determines how many random bytes to generate. + // The number of random bytes gets decided upon the ID size, mask, + // alphabet size, and magic number 1.6 (using 1.6 peaks at performance + // according to benchmarks). + + // `-~f => Math.ceil(f)` if f is a float + // `-~i => i + 1` if i is an integer + let step = -~((1.6 * mask * defaultSize) / alphabet.length) + + return (size = defaultSize) => { + let id = '' + while (true) { + let bytes = getRandom(step) + // A compact alternative for `for (var i = 0; i < step; i++)`. + let j = step | 0 + while (j--) { + // Adding `|| ''` refuses a random byte that exceeds the alphabet size. + id += alphabet[bytes[j] & mask] || '' + if (id.length === size) return id + } + } + } +} + +let customAlphabet = (alphabet, size = 21) => + customRandom(alphabet, size, random) + +let nanoid = (size = 21) => + crypto.getRandomValues(new Uint8Array(size)).reduce((id, byte) => { + // It is incorrect to use bytes exceeding the alphabet size. + // The following mask reduces the random byte in the 0-255 value + // range to the 0-63 value range. Therefore, adding hacks, such + // as empty string fallback or magic numbers, is unneccessary because + // the bitmask trims bytes down to the alphabet size. + byte &= 63 + if (byte < 36) { + // `0-9a-z` + id += byte.toString(36) + } else if (byte < 62) { + // `A-Z` + id += (byte - 26).toString(36).toUpperCase() + } else if (byte > 62) { + id += '-' + } else { + id += '_' + } + return id + }, '') + +module.exports = { nanoid, customAlphabet, customRandom, urlAlphabet, random } diff --git a/node_modules/nanoid/index.browser.js b/node_modules/nanoid/index.browser.js new file mode 100644 index 0000000..7d3b876 --- /dev/null +++ b/node_modules/nanoid/index.browser.js @@ -0,0 +1,34 @@ +import { urlAlphabet } from './url-alphabet/index.js' +let random = bytes => crypto.getRandomValues(new Uint8Array(bytes)) +let customRandom = (alphabet, defaultSize, getRandom) => { + let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1 + let step = -~((1.6 * mask * defaultSize) / alphabet.length) + return (size = defaultSize) => { + let id = '' + while (true) { + let bytes = getRandom(step) + let j = step | 0 + while (j--) { + id += alphabet[bytes[j] & mask] || '' + if (id.length === size) return id + } + } + } +} +let customAlphabet = (alphabet, size = 21) => + customRandom(alphabet, size, random) +let nanoid = (size = 21) => + crypto.getRandomValues(new Uint8Array(size)).reduce((id, byte) => { + byte &= 63 + if (byte < 36) { + id += byte.toString(36) + } else if (byte < 62) { + id += (byte - 26).toString(36).toUpperCase() + } else if (byte > 62) { + id += '-' + } else { + id += '_' + } + return id + }, '') +export { nanoid, customAlphabet, customRandom, urlAlphabet, random } diff --git a/node_modules/nanoid/index.cjs b/node_modules/nanoid/index.cjs new file mode 100644 index 0000000..c20e374 --- /dev/null +++ b/node_modules/nanoid/index.cjs @@ -0,0 +1,85 @@ +let crypto = require('crypto') + +let { urlAlphabet } = require('./url-alphabet/index.cjs') + +// It is best to make fewer, larger requests to the crypto module to +// avoid system call overhead. So, random numbers are generated in a +// pool. The pool is a Buffer that is larger than the initial random +// request size by this multiplier. The pool is enlarged if subsequent +// requests exceed the maximum buffer size. +const POOL_SIZE_MULTIPLIER = 128 +let pool, poolOffset + +let fillPool = bytes => { + if (!pool || pool.length < bytes) { + pool = Buffer.allocUnsafe(bytes * POOL_SIZE_MULTIPLIER) + crypto.randomFillSync(pool) + poolOffset = 0 + } else if (poolOffset + bytes > pool.length) { + crypto.randomFillSync(pool) + poolOffset = 0 + } + poolOffset += bytes +} + +let random = bytes => { + // `|=` convert `bytes` to number to prevent `valueOf` abusing and pool pollution + fillPool((bytes |= 0)) + return pool.subarray(poolOffset - bytes, poolOffset) +} + +let customRandom = (alphabet, defaultSize, getRandom) => { + // First, a bitmask is necessary to generate the ID. The bitmask makes bytes + // values closer to the alphabet size. The bitmask calculates the closest + // `2^31 - 1` number, which exceeds the alphabet size. + // For example, the bitmask for the alphabet size 30 is 31 (00011111). + let mask = (2 << (31 - Math.clz32((alphabet.length - 1) | 1))) - 1 + // Though, the bitmask solution is not perfect since the bytes exceeding + // the alphabet size are refused. Therefore, to reliably generate the ID, + // the random bytes redundancy has to be satisfied. + + // Note: every hardware random generator call is performance expensive, + // because the system call for entropy collection takes a lot of time. + // So, to avoid additional system calls, extra bytes are requested in advance. + + // Next, a step determines how many random bytes to generate. + // The number of random bytes gets decided upon the ID size, mask, + // alphabet size, and magic number 1.6 (using 1.6 peaks at performance + // according to benchmarks). + let step = Math.ceil((1.6 * mask * defaultSize) / alphabet.length) + + return (size = defaultSize) => { + let id = '' + while (true) { + let bytes = getRandom(step) + // A compact alternative for `for (let i = 0; i < step; i++)`. + let i = step + while (i--) { + // Adding `|| ''` refuses a random byte that exceeds the alphabet size. + id += alphabet[bytes[i] & mask] || '' + if (id.length === size) return id + } + } + } +} + +let customAlphabet = (alphabet, size = 21) => + customRandom(alphabet, size, random) + +let nanoid = (size = 21) => { + // `|=` convert `size` to number to prevent `valueOf` abusing and pool pollution + fillPool((size |= 0)) + let id = '' + // We are reading directly from the random pool to avoid creating new array + for (let i = poolOffset - size; i < poolOffset; i++) { + // It is incorrect to use bytes exceeding the alphabet size. + // The following mask reduces the random byte in the 0-255 value + // range to the 0-63 value range. Therefore, adding hacks, such + // as empty string fallback or magic numbers, is unneccessary because + // the bitmask trims bytes down to the alphabet size. + id += urlAlphabet[pool[i] & 63] + } + return id +} + +module.exports = { nanoid, customAlphabet, customRandom, urlAlphabet, random } diff --git a/node_modules/nanoid/index.d.cts b/node_modules/nanoid/index.d.cts new file mode 100644 index 0000000..3e111a3 --- /dev/null +++ b/node_modules/nanoid/index.d.cts @@ -0,0 +1,91 @@ +/** + * Generate secure URL-friendly unique ID. + * + * By default, the ID will have 21 symbols to have a collision probability + * similar to UUID v4. + * + * ```js + * import { nanoid } from 'nanoid' + * model.id = nanoid() //=> "Uakgb_J5m9g-0JDMbcJqL" + * ``` + * + * @param size Size of the ID. The default size is 21. + * @returns A random string. + */ +export function nanoid(size?: number): string + +/** + * Generate secure unique ID with custom alphabet. + * + * Alphabet must contain 256 symbols or less. Otherwise, the generator + * will not be secure. + * + * @param alphabet Alphabet used to generate the ID. + * @param defaultSize Size of the ID. The default size is 21. + * @returns A random string generator. + * + * ```js + * const { customAlphabet } = require('nanoid') + * const nanoid = customAlphabet('0123456789абвгдеё', 5) + * nanoid() //=> "8ё56а" + * ``` + */ +export function customAlphabet( + alphabet: string, + defaultSize?: number +): (size?: number) => string + +/** + * Generate unique ID with custom random generator and alphabet. + * + * Alphabet must contain 256 symbols or less. Otherwise, the generator + * will not be secure. + * + * ```js + * import { customRandom } from 'nanoid/format' + * + * const nanoid = customRandom('abcdef', 5, size => { + * const random = [] + * for (let i = 0; i < size; i++) { + * random.push(randomByte()) + * } + * return random + * }) + * + * nanoid() //=> "fbaef" + * ``` + * + * @param alphabet Alphabet used to generate a random string. + * @param size Size of the random string. + * @param random A random bytes generator. + * @returns A random string generator. + */ +export function customRandom( + alphabet: string, + size: number, + random: (bytes: number) => Uint8Array +): () => string + +/** + * URL safe symbols. + * + * ```js + * import { urlAlphabet } from 'nanoid' + * const nanoid = customAlphabet(urlAlphabet, 10) + * nanoid() //=> "Uakgb_J5m9" + * ``` + */ +export const urlAlphabet: string + +/** + * Generate an array of random bytes collected from hardware noise. + * + * ```js + * import { customRandom, random } from 'nanoid' + * const nanoid = customRandom("abcdef", 5, random) + * ``` + * + * @param bytes Size of the array. + * @returns An array of random bytes. + */ +export function random(bytes: number): Uint8Array diff --git a/node_modules/nanoid/index.d.ts b/node_modules/nanoid/index.d.ts new file mode 100644 index 0000000..3e111a3 --- /dev/null +++ b/node_modules/nanoid/index.d.ts @@ -0,0 +1,91 @@ +/** + * Generate secure URL-friendly unique ID. + * + * By default, the ID will have 21 symbols to have a collision probability + * similar to UUID v4. + * + * ```js + * import { nanoid } from 'nanoid' + * model.id = nanoid() //=> "Uakgb_J5m9g-0JDMbcJqL" + * ``` + * + * @param size Size of the ID. The default size is 21. + * @returns A random string. + */ +export function nanoid(size?: number): string + +/** + * Generate secure unique ID with custom alphabet. + * + * Alphabet must contain 256 symbols or less. Otherwise, the generator + * will not be secure. + * + * @param alphabet Alphabet used to generate the ID. + * @param defaultSize Size of the ID. The default size is 21. + * @returns A random string generator. + * + * ```js + * const { customAlphabet } = require('nanoid') + * const nanoid = customAlphabet('0123456789абвгдеё', 5) + * nanoid() //=> "8ё56а" + * ``` + */ +export function customAlphabet( + alphabet: string, + defaultSize?: number +): (size?: number) => string + +/** + * Generate unique ID with custom random generator and alphabet. + * + * Alphabet must contain 256 symbols or less. Otherwise, the generator + * will not be secure. + * + * ```js + * import { customRandom } from 'nanoid/format' + * + * const nanoid = customRandom('abcdef', 5, size => { + * const random = [] + * for (let i = 0; i < size; i++) { + * random.push(randomByte()) + * } + * return random + * }) + * + * nanoid() //=> "fbaef" + * ``` + * + * @param alphabet Alphabet used to generate a random string. + * @param size Size of the random string. + * @param random A random bytes generator. + * @returns A random string generator. + */ +export function customRandom( + alphabet: string, + size: number, + random: (bytes: number) => Uint8Array +): () => string + +/** + * URL safe symbols. + * + * ```js + * import { urlAlphabet } from 'nanoid' + * const nanoid = customAlphabet(urlAlphabet, 10) + * nanoid() //=> "Uakgb_J5m9" + * ``` + */ +export const urlAlphabet: string + +/** + * Generate an array of random bytes collected from hardware noise. + * + * ```js + * import { customRandom, random } from 'nanoid' + * const nanoid = customRandom("abcdef", 5, random) + * ``` + * + * @param bytes Size of the array. + * @returns An array of random bytes. + */ +export function random(bytes: number): Uint8Array diff --git a/node_modules/nanoid/index.js b/node_modules/nanoid/index.js new file mode 100644 index 0000000..9bc909d --- /dev/null +++ b/node_modules/nanoid/index.js @@ -0,0 +1,45 @@ +import crypto from 'crypto' +import { urlAlphabet } from './url-alphabet/index.js' +const POOL_SIZE_MULTIPLIER = 128 +let pool, poolOffset +let fillPool = bytes => { + if (!pool || pool.length < bytes) { + pool = Buffer.allocUnsafe(bytes * POOL_SIZE_MULTIPLIER) + crypto.randomFillSync(pool) + poolOffset = 0 + } else if (poolOffset + bytes > pool.length) { + crypto.randomFillSync(pool) + poolOffset = 0 + } + poolOffset += bytes +} +let random = bytes => { + fillPool((bytes |= 0)) + return pool.subarray(poolOffset - bytes, poolOffset) +} +let customRandom = (alphabet, defaultSize, getRandom) => { + let mask = (2 << (31 - Math.clz32((alphabet.length - 1) | 1))) - 1 + let step = Math.ceil((1.6 * mask * defaultSize) / alphabet.length) + return (size = defaultSize) => { + let id = '' + while (true) { + let bytes = getRandom(step) + let i = step + while (i--) { + id += alphabet[bytes[i] & mask] || '' + if (id.length === size) return id + } + } + } +} +let customAlphabet = (alphabet, size = 21) => + customRandom(alphabet, size, random) +let nanoid = (size = 21) => { + fillPool((size |= 0)) + let id = '' + for (let i = poolOffset - size; i < poolOffset; i++) { + id += urlAlphabet[pool[i] & 63] + } + return id +} +export { nanoid, customAlphabet, customRandom, urlAlphabet, random } diff --git a/node_modules/nanoid/nanoid.js b/node_modules/nanoid/nanoid.js new file mode 100644 index 0000000..ec242ea --- /dev/null +++ b/node_modules/nanoid/nanoid.js @@ -0,0 +1 @@ +export let nanoid=(t=21)=>crypto.getRandomValues(new Uint8Array(t)).reduce(((t,e)=>t+=(e&=63)<36?e.toString(36):e<62?(e-26).toString(36).toUpperCase():e<63?"_":"-"),""); \ No newline at end of file diff --git a/node_modules/nanoid/non-secure/index.cjs b/node_modules/nanoid/non-secure/index.cjs new file mode 100644 index 0000000..d51fcb6 --- /dev/null +++ b/node_modules/nanoid/non-secure/index.cjs @@ -0,0 +1,34 @@ +// This alphabet uses `A-Za-z0-9_-` symbols. +// The order of characters is optimized for better gzip and brotli compression. +// References to the same file (works both for gzip and brotli): +// `'use`, `andom`, and `rict'` +// References to the brotli default dictionary: +// `-26T`, `1983`, `40px`, `75px`, `bush`, `jack`, `mind`, `very`, and `wolf` +let urlAlphabet = + 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict' + +let customAlphabet = (alphabet, defaultSize = 21) => { + return (size = defaultSize) => { + let id = '' + // A compact alternative for `for (var i = 0; i < step; i++)`. + let i = size | 0 + while (i--) { + // `| 0` is more compact and faster than `Math.floor()`. + id += alphabet[(Math.random() * alphabet.length) | 0] + } + return id + } +} + +let nanoid = (size = 21) => { + let id = '' + // A compact alternative for `for (var i = 0; i < step; i++)`. + let i = size | 0 + while (i--) { + // `| 0` is more compact and faster than `Math.floor()`. + id += urlAlphabet[(Math.random() * 64) | 0] + } + return id +} + +module.exports = { nanoid, customAlphabet } diff --git a/node_modules/nanoid/non-secure/index.d.ts b/node_modules/nanoid/non-secure/index.d.ts new file mode 100644 index 0000000..4965322 --- /dev/null +++ b/node_modules/nanoid/non-secure/index.d.ts @@ -0,0 +1,33 @@ +/** + * Generate URL-friendly unique ID. This method uses the non-secure + * predictable random generator with bigger collision probability. + * + * ```js + * import { nanoid } from 'nanoid/non-secure' + * model.id = nanoid() //=> "Uakgb_J5m9g-0JDMbcJqL" + * ``` + * + * @param size Size of the ID. The default size is 21. + * @returns A random string. + */ +export function nanoid(size?: number): string + +/** + * Generate a unique ID based on a custom alphabet. + * This method uses the non-secure predictable random generator + * with bigger collision probability. + * + * @param alphabet Alphabet used to generate the ID. + * @param defaultSize Size of the ID. The default size is 21. + * @returns A random string generator. + * + * ```js + * import { customAlphabet } from 'nanoid/non-secure' + * const nanoid = customAlphabet('0123456789абвгдеё', 5) + * model.id = //=> "8ё56а" + * ``` + */ +export function customAlphabet( + alphabet: string, + defaultSize?: number +): (size?: number) => string diff --git a/node_modules/nanoid/non-secure/index.js b/node_modules/nanoid/non-secure/index.js new file mode 100644 index 0000000..2ea5827 --- /dev/null +++ b/node_modules/nanoid/non-secure/index.js @@ -0,0 +1,21 @@ +let urlAlphabet = + 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict' +let customAlphabet = (alphabet, defaultSize = 21) => { + return (size = defaultSize) => { + let id = '' + let i = size | 0 + while (i--) { + id += alphabet[(Math.random() * alphabet.length) | 0] + } + return id + } +} +let nanoid = (size = 21) => { + let id = '' + let i = size | 0 + while (i--) { + id += urlAlphabet[(Math.random() * 64) | 0] + } + return id +} +export { nanoid, customAlphabet } diff --git a/node_modules/nanoid/non-secure/package.json b/node_modules/nanoid/non-secure/package.json new file mode 100644 index 0000000..9930d6a --- /dev/null +++ b/node_modules/nanoid/non-secure/package.json @@ -0,0 +1,6 @@ +{ + "type": "module", + "main": "index.cjs", + "module": "index.js", + "react-native": "index.js" +} \ No newline at end of file diff --git a/node_modules/nanoid/package.json b/node_modules/nanoid/package.json new file mode 100644 index 0000000..a3d3f44 --- /dev/null +++ b/node_modules/nanoid/package.json @@ -0,0 +1,89 @@ +{ + "name": "nanoid", + "version": "3.3.11", + "description": "A tiny (116 bytes), secure URL-friendly unique string ID generator", + "keywords": [ + "uuid", + "random", + "id", + "url" + ], + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + }, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "author": "Andrey Sitnik ", + "license": "MIT", + "repository": "ai/nanoid", + "browser": { + "./index.js": "./index.browser.js", + "./async/index.js": "./async/index.browser.js", + "./async/index.cjs": "./async/index.browser.cjs", + "./index.cjs": "./index.browser.cjs" + }, + "react-native": "index.js", + "bin": "./bin/nanoid.cjs", + "sideEffects": false, + "types": "./index.d.ts", + "type": "module", + "main": "index.cjs", + "module": "index.js", + "exports": { + ".": { + "react-native": "./index.browser.js", + "browser": "./index.browser.js", + "require": { + "types": "./index.d.cts", + "default": "./index.cjs" + }, + "import": { + "types": "./index.d.ts", + "default": "./index.js" + }, + "default": "./index.js" + }, + "./package.json": "./package.json", + "./async/package.json": "./async/package.json", + "./async": { + "browser": "./async/index.browser.js", + "require": { + "types": "./index.d.cts", + "default": "./async/index.cjs" + }, + "import": { + "types": "./index.d.ts", + "default": "./async/index.js" + }, + "default": "./async/index.js" + }, + "./non-secure/package.json": "./non-secure/package.json", + "./non-secure": { + "require": { + "types": "./index.d.cts", + "default": "./non-secure/index.cjs" + }, + "import": { + "types": "./index.d.ts", + "default": "./non-secure/index.js" + }, + "default": "./non-secure/index.js" + }, + "./url-alphabet/package.json": "./url-alphabet/package.json", + "./url-alphabet": { + "require": { + "types": "./index.d.cts", + "default": "./url-alphabet/index.cjs" + }, + "import": { + "types": "./index.d.ts", + "default": "./url-alphabet/index.js" + }, + "default": "./url-alphabet/index.js" + } + } +} diff --git a/node_modules/nanoid/url-alphabet/index.cjs b/node_modules/nanoid/url-alphabet/index.cjs new file mode 100644 index 0000000..a332f0b --- /dev/null +++ b/node_modules/nanoid/url-alphabet/index.cjs @@ -0,0 +1,7 @@ +// This alphabet uses `A-Za-z0-9_-` symbols. +// The order of characters is optimized for better gzip and brotli compression. +// Same as in non-secure/index.js +let urlAlphabet = + 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict' + +module.exports = { urlAlphabet } diff --git a/node_modules/nanoid/url-alphabet/index.js b/node_modules/nanoid/url-alphabet/index.js new file mode 100644 index 0000000..c2782e5 --- /dev/null +++ b/node_modules/nanoid/url-alphabet/index.js @@ -0,0 +1,3 @@ +let urlAlphabet = + 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict' +export { urlAlphabet } diff --git a/node_modules/nanoid/url-alphabet/package.json b/node_modules/nanoid/url-alphabet/package.json new file mode 100644 index 0000000..9930d6a --- /dev/null +++ b/node_modules/nanoid/url-alphabet/package.json @@ -0,0 +1,6 @@ +{ + "type": "module", + "main": "index.cjs", + "module": "index.js", + "react-native": "index.js" +} \ No newline at end of file diff --git a/node_modules/normalize-path/LICENSE b/node_modules/normalize-path/LICENSE new file mode 100644 index 0000000..d32ab44 --- /dev/null +++ b/node_modules/normalize-path/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-2018, Jon Schlinkert. + +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. diff --git a/node_modules/normalize-path/README.md b/node_modules/normalize-path/README.md new file mode 100644 index 0000000..726d4d6 --- /dev/null +++ b/node_modules/normalize-path/README.md @@ -0,0 +1,127 @@ +# normalize-path [![NPM version](https://img.shields.io/npm/v/normalize-path.svg?style=flat)](https://www.npmjs.com/package/normalize-path) [![NPM monthly downloads](https://img.shields.io/npm/dm/normalize-path.svg?style=flat)](https://npmjs.org/package/normalize-path) [![NPM total downloads](https://img.shields.io/npm/dt/normalize-path.svg?style=flat)](https://npmjs.org/package/normalize-path) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/normalize-path.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/normalize-path) + +> Normalize slashes in a file path to be posix/unix-like forward slashes. Also condenses repeat slashes to a single slash and removes and trailing slashes, unless disabled. + +Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save normalize-path +``` + +## Usage + +```js +const normalize = require('normalize-path'); + +console.log(normalize('\\foo\\bar\\baz\\')); +//=> '/foo/bar/baz' +``` + +**win32 namespaces** + +```js +console.log(normalize('\\\\?\\UNC\\Server01\\user\\docs\\Letter.txt')); +//=> '//?/UNC/Server01/user/docs/Letter.txt' + +console.log(normalize('\\\\.\\CdRomX')); +//=> '//./CdRomX' +``` + +**Consecutive slashes** + +Condenses multiple consecutive forward slashes (except for leading slashes in win32 namespaces) to a single slash. + +```js +console.log(normalize('.//foo//bar///////baz/')); +//=> './foo/bar/baz' +``` + +### Trailing slashes + +By default trailing slashes are removed. Pass `false` as the last argument to disable this behavior and _**keep** trailing slashes_: + +```js +console.log(normalize('foo\\bar\\baz\\', false)); //=> 'foo/bar/baz/' +console.log(normalize('./foo/bar/baz/', false)); //=> './foo/bar/baz/' +``` + +## Release history + +### v3.0 + +No breaking changes in this release. + +* a check was added to ensure that [win32 namespaces](https://msdn.microsoft.com/library/windows/desktop/aa365247(v=vs.85).aspx#namespaces) are handled properly by win32 `path.parse()` after a path has been normalized by this library. +* a minor optimization was made to simplify how the trailing separator was handled + +## About + +
+Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +
+ +
+Running Tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +
+ +
+Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +
+ +### Related projects + +Other useful path-related libraries: + +* [contains-path](https://www.npmjs.com/package/contains-path): Return true if a file path contains the given path. | [homepage](https://github.com/jonschlinkert/contains-path "Return true if a file path contains the given path.") +* [is-absolute](https://www.npmjs.com/package/is-absolute): Returns true if a file path is absolute. Does not rely on the path module… [more](https://github.com/jonschlinkert/is-absolute) | [homepage](https://github.com/jonschlinkert/is-absolute "Returns true if a file path is absolute. Does not rely on the path module and can be used as a polyfill for node.js native `path.isAbolute`.") +* [is-relative](https://www.npmjs.com/package/is-relative): Returns `true` if the path appears to be relative. | [homepage](https://github.com/jonschlinkert/is-relative "Returns `true` if the path appears to be relative.") +* [parse-filepath](https://www.npmjs.com/package/parse-filepath): Pollyfill for node.js `path.parse`, parses a filepath into an object. | [homepage](https://github.com/jonschlinkert/parse-filepath "Pollyfill for node.js `path.parse`, parses a filepath into an object.") +* [path-ends-with](https://www.npmjs.com/package/path-ends-with): Return `true` if a file path ends with the given string/suffix. | [homepage](https://github.com/jonschlinkert/path-ends-with "Return `true` if a file path ends with the given string/suffix.") +* [unixify](https://www.npmjs.com/package/unixify): Convert Windows file paths to unix paths. | [homepage](https://github.com/jonschlinkert/unixify "Convert Windows file paths to unix paths.") + +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 35 | [jonschlinkert](https://github.com/jonschlinkert) | +| 1 | [phated](https://github.com/phated) | + +### Author + +**Jon Schlinkert** + +* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) +* [GitHub Profile](https://github.com/jonschlinkert) +* [Twitter Profile](https://twitter.com/jonschlinkert) + +### License + +Copyright © 2018, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on April 19, 2018._ \ No newline at end of file diff --git a/node_modules/normalize-path/index.js b/node_modules/normalize-path/index.js new file mode 100644 index 0000000..6fac553 --- /dev/null +++ b/node_modules/normalize-path/index.js @@ -0,0 +1,35 @@ +/*! + * normalize-path + * + * Copyright (c) 2014-2018, Jon Schlinkert. + * Released under the MIT License. + */ + +module.exports = function(path, stripTrailing) { + if (typeof path !== 'string') { + throw new TypeError('expected path to be a string'); + } + + if (path === '\\' || path === '/') return '/'; + + var len = path.length; + if (len <= 1) return path; + + // ensure that win32 namespaces has two leading slashes, so that the path is + // handled properly by the win32 version of path.parse() after being normalized + // https://msdn.microsoft.com/library/windows/desktop/aa365247(v=vs.85).aspx#namespaces + var prefix = ''; + if (len > 4 && path[3] === '\\') { + var ch = path[2]; + if ((ch === '?' || ch === '.') && path.slice(0, 2) === '\\\\') { + path = path.slice(2); + prefix = '//'; + } + } + + var segs = path.split(/[/\\]+/); + if (stripTrailing !== false && segs[segs.length - 1] === '') { + segs.pop(); + } + return prefix + segs.join('/'); +}; diff --git a/node_modules/normalize-path/package.json b/node_modules/normalize-path/package.json new file mode 100644 index 0000000..ad61098 --- /dev/null +++ b/node_modules/normalize-path/package.json @@ -0,0 +1,77 @@ +{ + "name": "normalize-path", + "description": "Normalize slashes in a file path to be posix/unix-like forward slashes. Also condenses repeat slashes to a single slash and removes and trailing slashes, unless disabled.", + "version": "3.0.0", + "homepage": "https://github.com/jonschlinkert/normalize-path", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "contributors": [ + "Blaine Bublitz (https://twitter.com/BlaineBublitz)", + "Jon Schlinkert (http://twitter.com/jonschlinkert)" + ], + "repository": "jonschlinkert/normalize-path", + "bugs": { + "url": "https://github.com/jonschlinkert/normalize-path/issues" + }, + "license": "MIT", + "files": [ + "index.js" + ], + "main": "index.js", + "engines": { + "node": ">=0.10.0" + }, + "scripts": { + "test": "mocha" + }, + "devDependencies": { + "gulp-format-md": "^1.0.0", + "minimist": "^1.2.0", + "mocha": "^3.5.3" + }, + "keywords": [ + "absolute", + "backslash", + "delimiter", + "file", + "file-path", + "filepath", + "fix", + "forward", + "fp", + "fs", + "normalize", + "path", + "relative", + "separator", + "slash", + "slashes", + "trailing", + "unix", + "urix" + ], + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "related": { + "description": "Other useful path-related libraries:", + "list": [ + "contains-path", + "is-absolute", + "is-relative", + "parse-filepath", + "path-ends-with", + "path-ends-with", + "unixify" + ] + }, + "lint": { + "reflinks": true + } + } +} diff --git a/node_modules/once/LICENSE b/node_modules/once/LICENSE new file mode 100644 index 0000000..19129e3 --- /dev/null +++ b/node_modules/once/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +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. diff --git a/node_modules/once/README.md b/node_modules/once/README.md new file mode 100644 index 0000000..1f1ffca --- /dev/null +++ b/node_modules/once/README.md @@ -0,0 +1,79 @@ +# once + +Only call a function once. + +## usage + +```javascript +var once = require('once') + +function load (file, cb) { + cb = once(cb) + loader.load('file') + loader.once('load', cb) + loader.once('error', cb) +} +``` + +Or add to the Function.prototype in a responsible way: + +```javascript +// only has to be done once +require('once').proto() + +function load (file, cb) { + cb = cb.once() + loader.load('file') + loader.once('load', cb) + loader.once('error', cb) +} +``` + +Ironically, the prototype feature makes this module twice as +complicated as necessary. + +To check whether you function has been called, use `fn.called`. Once the +function is called for the first time the return value of the original +function is saved in `fn.value` and subsequent calls will continue to +return this value. + +```javascript +var once = require('once') + +function load (cb) { + cb = once(cb) + var stream = createStream() + stream.once('data', cb) + stream.once('end', function () { + if (!cb.called) cb(new Error('not found')) + }) +} +``` + +## `once.strict(func)` + +Throw an error if the function is called twice. + +Some functions are expected to be called only once. Using `once` for them would +potentially hide logical errors. + +In the example below, the `greet` function has to call the callback only once: + +```javascript +function greet (name, cb) { + // return is missing from the if statement + // when no name is passed, the callback is called twice + if (!name) cb('Hello anonymous') + cb('Hello ' + name) +} + +function log (msg) { + console.log(msg) +} + +// this will print 'Hello anonymous' but the logical error will be missed +greet(null, once(msg)) + +// once.strict will print 'Hello anonymous' and throw an error when the callback will be called the second time +greet(null, once.strict(msg)) +``` diff --git a/node_modules/once/once.js b/node_modules/once/once.js new file mode 100644 index 0000000..2354067 --- /dev/null +++ b/node_modules/once/once.js @@ -0,0 +1,42 @@ +var wrappy = require('wrappy') +module.exports = wrappy(once) +module.exports.strict = wrappy(onceStrict) + +once.proto = once(function () { + Object.defineProperty(Function.prototype, 'once', { + value: function () { + return once(this) + }, + configurable: true + }) + + Object.defineProperty(Function.prototype, 'onceStrict', { + value: function () { + return onceStrict(this) + }, + configurable: true + }) +}) + +function once (fn) { + var f = function () { + if (f.called) return f.value + f.called = true + return f.value = fn.apply(this, arguments) + } + f.called = false + return f +} + +function onceStrict (fn) { + var f = function () { + if (f.called) + throw new Error(f.onceError) + f.called = true + return f.value = fn.apply(this, arguments) + } + var name = fn.name || 'Function wrapped with `once`' + f.onceError = name + " shouldn't be called more than once" + f.called = false + return f +} diff --git a/node_modules/once/package.json b/node_modules/once/package.json new file mode 100644 index 0000000..16815b2 --- /dev/null +++ b/node_modules/once/package.json @@ -0,0 +1,33 @@ +{ + "name": "once", + "version": "1.4.0", + "description": "Run a function exactly one time", + "main": "once.js", + "directories": { + "test": "test" + }, + "dependencies": { + "wrappy": "1" + }, + "devDependencies": { + "tap": "^7.0.1" + }, + "scripts": { + "test": "tap test/*.js" + }, + "files": [ + "once.js" + ], + "repository": { + "type": "git", + "url": "git://github.com/isaacs/once" + }, + "keywords": [ + "once", + "function", + "one", + "single" + ], + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "license": "ISC" +} diff --git a/node_modules/path-type/index.d.ts b/node_modules/path-type/index.d.ts new file mode 100644 index 0000000..910a50a --- /dev/null +++ b/node_modules/path-type/index.d.ts @@ -0,0 +1,51 @@ +export type PathTypeFunction = (path: string) => Promise; + +/** + * Check whether the passed `path` is a file. + * + * @param path - The path to check. + * @returns Whether the `path` is a file. + */ +export const isFile: PathTypeFunction; + +/** + * Check whether the passed `path` is a directory. + * + * @param path - The path to check. + * @returns Whether the `path` is a directory. + */ +export const isDirectory: PathTypeFunction; + +/** + * Check whether the passed `path` is a symlink. + * + * @param path - The path to check. + * @returns Whether the `path` is a symlink. + */ +export const isSymlink: PathTypeFunction; + +export type PathTypeSyncFunction = (path: string) => boolean; + +/** + * Synchronously check whether the passed `path` is a file. + * + * @param path - The path to check. + * @returns Whether the `path` is a file. + */ +export const isFileSync: PathTypeSyncFunction; + +/** + * Synchronously check whether the passed `path` is a directory. + * + * @param path - The path to check. + * @returns Whether the `path` is a directory. + */ +export const isDirectorySync: PathTypeSyncFunction; + +/** + * Synchronously check whether the passed `path` is a symlink. + * + * @param path - The path to check. + * @returns Whether the `path` is a directory. + */ +export const isSymlinkSync: PathTypeSyncFunction; diff --git a/node_modules/path-type/index.js b/node_modules/path-type/index.js new file mode 100644 index 0000000..b8f34b2 --- /dev/null +++ b/node_modules/path-type/index.js @@ -0,0 +1,43 @@ +'use strict'; +const {promisify} = require('util'); +const fs = require('fs'); + +async function isType(fsStatType, statsMethodName, filePath) { + if (typeof filePath !== 'string') { + throw new TypeError(`Expected a string, got ${typeof filePath}`); + } + + try { + const stats = await promisify(fs[fsStatType])(filePath); + return stats[statsMethodName](); + } catch (error) { + if (error.code === 'ENOENT') { + return false; + } + + throw error; + } +} + +function isTypeSync(fsStatType, statsMethodName, filePath) { + if (typeof filePath !== 'string') { + throw new TypeError(`Expected a string, got ${typeof filePath}`); + } + + try { + return fs[fsStatType](filePath)[statsMethodName](); + } catch (error) { + if (error.code === 'ENOENT') { + return false; + } + + throw error; + } +} + +exports.isFile = isType.bind(null, 'stat', 'isFile'); +exports.isDirectory = isType.bind(null, 'stat', 'isDirectory'); +exports.isSymlink = isType.bind(null, 'lstat', 'isSymbolicLink'); +exports.isFileSync = isTypeSync.bind(null, 'statSync', 'isFile'); +exports.isDirectorySync = isTypeSync.bind(null, 'statSync', 'isDirectory'); +exports.isSymlinkSync = isTypeSync.bind(null, 'lstatSync', 'isSymbolicLink'); diff --git a/node_modules/path-type/license b/node_modules/path-type/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/path-type/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.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. diff --git a/node_modules/path-type/package.json b/node_modules/path-type/package.json new file mode 100644 index 0000000..635b711 --- /dev/null +++ b/node_modules/path-type/package.json @@ -0,0 +1,45 @@ +{ + "name": "path-type", + "version": "4.0.0", + "description": "Check if a path is a file, directory, or symlink", + "license": "MIT", + "repository": "sindresorhus/path-type", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && nyc ava && tsd-check" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "path", + "fs", + "type", + "is", + "check", + "directory", + "dir", + "file", + "filepath", + "symlink", + "symbolic", + "link", + "stat", + "stats", + "filesystem" + ], + "devDependencies": { + "ava": "^1.3.1", + "nyc": "^13.3.0", + "tsd-check": "^0.3.0", + "xo": "^0.24.0" + } +} diff --git a/node_modules/path-type/readme.md b/node_modules/path-type/readme.md new file mode 100644 index 0000000..4c972fa --- /dev/null +++ b/node_modules/path-type/readme.md @@ -0,0 +1,72 @@ +# path-type [![Build Status](https://travis-ci.org/sindresorhus/path-type.svg?branch=master)](https://travis-ci.org/sindresorhus/path-type) + +> Check if a path is a file, directory, or symlink + + +## Install + +``` +$ npm install path-type +``` + + +## Usage + +```js +const {isFile} = require('path-type'); + +(async () => { + console.log(await isFile('package.json')); + //=> true +})(); +``` + + +## API + +### isFile(path) + +Check whether the passed `path` is a file. + +Returns a `Promise`. + +#### path + +Type: `string` + +The path to check. + +### isDirectory(path) + +Check whether the passed `path` is a directory. + +Returns a `Promise`. + +### isSymlink(path) + +Check whether the passed `path` is a symlink. + +Returns a `Promise`. + +### isFileSync(path) + +Synchronously check whether the passed `path` is a file. + +Returns a `boolean`. + +### isDirectorySync(path) + +Synchronously check whether the passed `path` is a directory. + +Returns a `boolean`. + +### isSymlinkSync(path) + +Synchronously check whether the passed `path` is a symlink. + +Returns a `boolean`. + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/node_modules/picocolors/LICENSE b/node_modules/picocolors/LICENSE new file mode 100644 index 0000000..46c9b95 --- /dev/null +++ b/node_modules/picocolors/LICENSE @@ -0,0 +1,15 @@ +ISC License + +Copyright (c) 2021-2024 Oleksii Raspopov, Kostiantyn Denysov, Anton Verinov + +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. diff --git a/node_modules/picocolors/README.md b/node_modules/picocolors/README.md new file mode 100644 index 0000000..8e47aa8 --- /dev/null +++ b/node_modules/picocolors/README.md @@ -0,0 +1,21 @@ +# picocolors + +The tiniest and the fastest library for terminal output formatting with ANSI colors. + +```javascript +import pc from "picocolors" + +console.log( + pc.green(`How are ${pc.italic(`you`)} doing?`) +) +``` + +- **No dependencies.** +- **14 times** smaller and **2 times** faster than chalk. +- Used by popular tools like PostCSS, SVGO, Stylelint, and Browserslist. +- Node.js v6+ & browsers support. Support for both CJS and ESM projects. +- TypeScript type declarations included. +- [`NO_COLOR`](https://no-color.org/) friendly. + +## Docs +Read **[full docs](https://github.com/alexeyraspopov/picocolors#readme)** on GitHub. diff --git a/node_modules/picocolors/package.json b/node_modules/picocolors/package.json new file mode 100644 index 0000000..372d4b6 --- /dev/null +++ b/node_modules/picocolors/package.json @@ -0,0 +1,25 @@ +{ + "name": "picocolors", + "version": "1.1.1", + "main": "./picocolors.js", + "types": "./picocolors.d.ts", + "browser": { + "./picocolors.js": "./picocolors.browser.js" + }, + "sideEffects": false, + "description": "The tiniest and the fastest library for terminal output formatting with ANSI colors", + "files": [ + "picocolors.*", + "types.d.ts" + ], + "keywords": [ + "terminal", + "colors", + "formatting", + "cli", + "console" + ], + "author": "Alexey Raspopov", + "repository": "alexeyraspopov/picocolors", + "license": "ISC" +} diff --git a/node_modules/picocolors/picocolors.browser.js b/node_modules/picocolors/picocolors.browser.js new file mode 100644 index 0000000..9dcf637 --- /dev/null +++ b/node_modules/picocolors/picocolors.browser.js @@ -0,0 +1,4 @@ +var x=String; +var create=function() {return {isColorSupported:false,reset:x,bold:x,dim:x,italic:x,underline:x,inverse:x,hidden:x,strikethrough:x,black:x,red:x,green:x,yellow:x,blue:x,magenta:x,cyan:x,white:x,gray:x,bgBlack:x,bgRed:x,bgGreen:x,bgYellow:x,bgBlue:x,bgMagenta:x,bgCyan:x,bgWhite:x,blackBright:x,redBright:x,greenBright:x,yellowBright:x,blueBright:x,magentaBright:x,cyanBright:x,whiteBright:x,bgBlackBright:x,bgRedBright:x,bgGreenBright:x,bgYellowBright:x,bgBlueBright:x,bgMagentaBright:x,bgCyanBright:x,bgWhiteBright:x}}; +module.exports=create(); +module.exports.createColors = create; diff --git a/node_modules/picocolors/picocolors.d.ts b/node_modules/picocolors/picocolors.d.ts new file mode 100644 index 0000000..94e146a --- /dev/null +++ b/node_modules/picocolors/picocolors.d.ts @@ -0,0 +1,5 @@ +import { Colors } from "./types" + +declare const picocolors: Colors & { createColors: (enabled?: boolean) => Colors } + +export = picocolors diff --git a/node_modules/picocolors/picocolors.js b/node_modules/picocolors/picocolors.js new file mode 100644 index 0000000..e32df85 --- /dev/null +++ b/node_modules/picocolors/picocolors.js @@ -0,0 +1,75 @@ +let p = process || {}, argv = p.argv || [], env = p.env || {} +let isColorSupported = + !(!!env.NO_COLOR || argv.includes("--no-color")) && + (!!env.FORCE_COLOR || argv.includes("--color") || p.platform === "win32" || ((p.stdout || {}).isTTY && env.TERM !== "dumb") || !!env.CI) + +let formatter = (open, close, replace = open) => + input => { + let string = "" + input, index = string.indexOf(close, open.length) + return ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close + } + +let replaceClose = (string, close, replace, index) => { + let result = "", cursor = 0 + do { + result += string.substring(cursor, index) + replace + cursor = index + close.length + index = string.indexOf(close, cursor) + } while (~index) + return result + string.substring(cursor) +} + +let createColors = (enabled = isColorSupported) => { + let f = enabled ? formatter : () => String + return { + isColorSupported: enabled, + reset: f("\x1b[0m", "\x1b[0m"), + bold: f("\x1b[1m", "\x1b[22m", "\x1b[22m\x1b[1m"), + dim: f("\x1b[2m", "\x1b[22m", "\x1b[22m\x1b[2m"), + italic: f("\x1b[3m", "\x1b[23m"), + underline: f("\x1b[4m", "\x1b[24m"), + inverse: f("\x1b[7m", "\x1b[27m"), + hidden: f("\x1b[8m", "\x1b[28m"), + strikethrough: f("\x1b[9m", "\x1b[29m"), + + black: f("\x1b[30m", "\x1b[39m"), + red: f("\x1b[31m", "\x1b[39m"), + green: f("\x1b[32m", "\x1b[39m"), + yellow: f("\x1b[33m", "\x1b[39m"), + blue: f("\x1b[34m", "\x1b[39m"), + magenta: f("\x1b[35m", "\x1b[39m"), + cyan: f("\x1b[36m", "\x1b[39m"), + white: f("\x1b[37m", "\x1b[39m"), + gray: f("\x1b[90m", "\x1b[39m"), + + bgBlack: f("\x1b[40m", "\x1b[49m"), + bgRed: f("\x1b[41m", "\x1b[49m"), + bgGreen: f("\x1b[42m", "\x1b[49m"), + bgYellow: f("\x1b[43m", "\x1b[49m"), + bgBlue: f("\x1b[44m", "\x1b[49m"), + bgMagenta: f("\x1b[45m", "\x1b[49m"), + bgCyan: f("\x1b[46m", "\x1b[49m"), + bgWhite: f("\x1b[47m", "\x1b[49m"), + + blackBright: f("\x1b[90m", "\x1b[39m"), + redBright: f("\x1b[91m", "\x1b[39m"), + greenBright: f("\x1b[92m", "\x1b[39m"), + yellowBright: f("\x1b[93m", "\x1b[39m"), + blueBright: f("\x1b[94m", "\x1b[39m"), + magentaBright: f("\x1b[95m", "\x1b[39m"), + cyanBright: f("\x1b[96m", "\x1b[39m"), + whiteBright: f("\x1b[97m", "\x1b[39m"), + + bgBlackBright: f("\x1b[100m", "\x1b[49m"), + bgRedBright: f("\x1b[101m", "\x1b[49m"), + bgGreenBright: f("\x1b[102m", "\x1b[49m"), + bgYellowBright: f("\x1b[103m", "\x1b[49m"), + bgBlueBright: f("\x1b[104m", "\x1b[49m"), + bgMagentaBright: f("\x1b[105m", "\x1b[49m"), + bgCyanBright: f("\x1b[106m", "\x1b[49m"), + bgWhiteBright: f("\x1b[107m", "\x1b[49m"), + } +} + +module.exports = createColors() +module.exports.createColors = createColors diff --git a/node_modules/picocolors/types.d.ts b/node_modules/picocolors/types.d.ts new file mode 100644 index 0000000..cd1aec4 --- /dev/null +++ b/node_modules/picocolors/types.d.ts @@ -0,0 +1,51 @@ +export type Formatter = (input: string | number | null | undefined) => string + +export interface Colors { + isColorSupported: boolean + + reset: Formatter + bold: Formatter + dim: Formatter + italic: Formatter + underline: Formatter + inverse: Formatter + hidden: Formatter + strikethrough: Formatter + + black: Formatter + red: Formatter + green: Formatter + yellow: Formatter + blue: Formatter + magenta: Formatter + cyan: Formatter + white: Formatter + gray: Formatter + + bgBlack: Formatter + bgRed: Formatter + bgGreen: Formatter + bgYellow: Formatter + bgBlue: Formatter + bgMagenta: Formatter + bgCyan: Formatter + bgWhite: Formatter + + blackBright: Formatter + redBright: Formatter + greenBright: Formatter + yellowBright: Formatter + blueBright: Formatter + magentaBright: Formatter + cyanBright: Formatter + whiteBright: Formatter + + bgBlackBright: Formatter + bgRedBright: Formatter + bgGreenBright: Formatter + bgYellowBright: Formatter + bgBlueBright: Formatter + bgMagentaBright: Formatter + bgCyanBright: Formatter + bgWhiteBright: Formatter +} diff --git a/node_modules/picomatch/CHANGELOG.md b/node_modules/picomatch/CHANGELOG.md new file mode 100644 index 0000000..8ccc6c1 --- /dev/null +++ b/node_modules/picomatch/CHANGELOG.md @@ -0,0 +1,136 @@ +# Release history + +**All notable changes to this project will be documented in this file.** + +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +
+ Guiding Principles + +- Changelogs are for humans, not machines. +- There should be an entry for every single version. +- The same types of changes should be grouped. +- Versions and sections should be linkable. +- The latest version comes first. +- The release date of each versions is displayed. +- Mention whether you follow Semantic Versioning. + +
+ +
+ Types of changes + +Changelog entries are classified using the following labels _(from [keep-a-changelog](http://keepachangelog.com/)_): + +- `Added` for new features. +- `Changed` for changes in existing functionality. +- `Deprecated` for soon-to-be removed features. +- `Removed` for now removed features. +- `Fixed` for any bug fixes. +- `Security` in case of vulnerabilities. + +
+ +## 2.3.1 (2022-01-02) + +### Fixed + +* Fixes bug when a pattern containing an expression after the closing parenthesis (`/!(*.d).{ts,tsx}`) was incorrectly converted to regexp ([9f241ef](https://github.com/micromatch/picomatch/commit/9f241ef)). + +### Changed + +* Some documentation improvements ([f81d236](https://github.com/micromatch/picomatch/commit/f81d236), [421e0e7](https://github.com/micromatch/picomatch/commit/421e0e7)). + +## 2.3.0 (2021-05-21) + +### Fixed + +* Fixes bug where file names with two dots were not being matched consistently with negation extglobs containing a star ([56083ef](https://github.com/micromatch/picomatch/commit/56083ef)) + +## 2.2.3 (2021-04-10) + +### Fixed + +* Do not skip pattern seperator for square brackets ([fb08a30](https://github.com/micromatch/picomatch/commit/fb08a30)). +* Set negatedExtGlob also if it does not span the whole pattern ([032e3f5](https://github.com/micromatch/picomatch/commit/032e3f5)). + +## 2.2.2 (2020-03-21) + +### Fixed + +* Correctly handle parts of the pattern after parentheses in the `scan` method ([e15b920](https://github.com/micromatch/picomatch/commit/e15b920)). + +## 2.2.1 (2020-01-04) + +* Fixes [#49](https://github.com/micromatch/picomatch/issues/49), so that braces with no sets or ranges are now propertly treated as literals. + +## 2.2.0 (2020-01-04) + +* Disable fastpaths mode for the parse method ([5b8d33f](https://github.com/micromatch/picomatch/commit/5b8d33f)) +* Add `tokens`, `slashes`, and `parts` to the object returned by `picomatch.scan()`. + +## 2.1.0 (2019-10-31) + +* add benchmarks for scan ([4793b92](https://github.com/micromatch/picomatch/commit/4793b92)) +* Add eslint object-curly-spacing rule ([707c650](https://github.com/micromatch/picomatch/commit/707c650)) +* Add prefer-const eslint rule ([5c7501c](https://github.com/micromatch/picomatch/commit/5c7501c)) +* Add support for nonegate in scan API ([275c9b9](https://github.com/micromatch/picomatch/commit/275c9b9)) +* Change lets to consts. Move root import up. ([4840625](https://github.com/micromatch/picomatch/commit/4840625)) +* closes https://github.com/micromatch/picomatch/issues/21 ([766bcb0](https://github.com/micromatch/picomatch/commit/766bcb0)) +* Fix "Extglobs" table in readme ([eb19da8](https://github.com/micromatch/picomatch/commit/eb19da8)) +* fixes https://github.com/micromatch/picomatch/issues/20 ([9caca07](https://github.com/micromatch/picomatch/commit/9caca07)) +* fixes https://github.com/micromatch/picomatch/issues/26 ([fa58f45](https://github.com/micromatch/picomatch/commit/fa58f45)) +* Lint test ([d433a34](https://github.com/micromatch/picomatch/commit/d433a34)) +* lint unit tests ([0159b55](https://github.com/micromatch/picomatch/commit/0159b55)) +* Make scan work with noext ([6c02e03](https://github.com/micromatch/picomatch/commit/6c02e03)) +* minor linting ([c2a2b87](https://github.com/micromatch/picomatch/commit/c2a2b87)) +* minor parser improvements ([197671d](https://github.com/micromatch/picomatch/commit/197671d)) +* remove eslint since it... ([07876fa](https://github.com/micromatch/picomatch/commit/07876fa)) +* remove funding file ([8ebe96d](https://github.com/micromatch/picomatch/commit/8ebe96d)) +* Remove unused funks ([cbc6d54](https://github.com/micromatch/picomatch/commit/cbc6d54)) +* Run eslint during pretest, fix existing eslint findings ([0682367](https://github.com/micromatch/picomatch/commit/0682367)) +* support `noparen` in scan ([3d37569](https://github.com/micromatch/picomatch/commit/3d37569)) +* update changelog ([7b34e77](https://github.com/micromatch/picomatch/commit/7b34e77)) +* update travis ([777f038](https://github.com/micromatch/picomatch/commit/777f038)) +* Use eslint-disable-next-line instead of eslint-disable ([4e7c1fd](https://github.com/micromatch/picomatch/commit/4e7c1fd)) + +## 2.0.7 (2019-05-14) + +* 2.0.7 ([9eb9a71](https://github.com/micromatch/picomatch/commit/9eb9a71)) +* supports lookbehinds ([1f63f7e](https://github.com/micromatch/picomatch/commit/1f63f7e)) +* update .verb.md file with typo change ([2741279](https://github.com/micromatch/picomatch/commit/2741279)) +* fix: typo in README ([0753e44](https://github.com/micromatch/picomatch/commit/0753e44)) + +## 2.0.4 (2019-04-10) + +### Fixed + +- Readme link [fixed](https://github.com/micromatch/picomatch/pull/13/commits/a96ab3aa2b11b6861c23289964613d85563b05df) by @danez. +- `options.capture` now works as expected when fastpaths are enabled. See https://github.com/micromatch/picomatch/pull/12/commits/26aefd71f1cfaf95c37f1c1fcab68a693b037304. Thanks to @DrPizza. + +## 2.0.0 (2019-04-10) + +### Added + +- Adds support for `options.onIgnore`. See the readme for details +- Adds support for `options.onResult`. See the readme for details + +### Breaking changes + +- The unixify option was renamed to `windows` +- caching and all related options and methods have been removed + +## 1.0.0 (2018-11-05) + +- adds `.onMatch` option +- improvements to `.scan` method +- numerous improvements and optimizations for matching and parsing +- better windows path handling + +## 0.1.0 - 2017-04-13 + +First release. + + +[keep-a-changelog]: https://github.com/olivierlacan/keep-a-changelog diff --git a/node_modules/picomatch/LICENSE b/node_modules/picomatch/LICENSE new file mode 100644 index 0000000..3608dca --- /dev/null +++ b/node_modules/picomatch/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2017-present, Jon Schlinkert. + +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. diff --git a/node_modules/picomatch/README.md b/node_modules/picomatch/README.md new file mode 100644 index 0000000..b0526e2 --- /dev/null +++ b/node_modules/picomatch/README.md @@ -0,0 +1,708 @@ +

Picomatch

+ +

+ +version + + +test status + + +coverage status + + +downloads + +

+ +
+
+ +

+Blazing fast and accurate glob matcher written in JavaScript.
+No dependencies and full support for standard and extended Bash glob features, including braces, extglobs, POSIX brackets, and regular expressions. +

+ +
+
+ +## Why picomatch? + +* **Lightweight** - No dependencies +* **Minimal** - Tiny API surface. Main export is a function that takes a glob pattern and returns a matcher function. +* **Fast** - Loads in about 2ms (that's several times faster than a [single frame of a HD movie](http://www.endmemo.com/sconvert/framespersecondframespermillisecond.php) at 60fps) +* **Performant** - Use the returned matcher function to speed up repeat matching (like when watching files) +* **Accurate matching** - Using wildcards (`*` and `?`), globstars (`**`) for nested directories, [advanced globbing](#advanced-globbing) with extglobs, braces, and POSIX brackets, and support for escaping special characters with `\` or quotes. +* **Well tested** - Thousands of unit tests + +See the [library comparison](#library-comparisons) to other libraries. + +
+
+ +## Table of Contents + +
Click to expand + +- [Install](#install) +- [Usage](#usage) +- [API](#api) + * [picomatch](#picomatch) + * [.test](#test) + * [.matchBase](#matchbase) + * [.isMatch](#ismatch) + * [.parse](#parse) + * [.scan](#scan) + * [.compileRe](#compilere) + * [.makeRe](#makere) + * [.toRegex](#toregex) +- [Options](#options) + * [Picomatch options](#picomatch-options) + * [Scan Options](#scan-options) + * [Options Examples](#options-examples) +- [Globbing features](#globbing-features) + * [Basic globbing](#basic-globbing) + * [Advanced globbing](#advanced-globbing) + * [Braces](#braces) + * [Matching special characters as literals](#matching-special-characters-as-literals) +- [Library Comparisons](#library-comparisons) +- [Benchmarks](#benchmarks) +- [Philosophies](#philosophies) +- [About](#about) + * [Author](#author) + * [License](#license) + +_(TOC generated by [verb](https://github.com/verbose/verb) using [markdown-toc](https://github.com/jonschlinkert/markdown-toc))_ + +
+ +
+
+ +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +npm install --save picomatch +``` + +
+ +## Usage + +The main export is a function that takes a glob pattern and an options object and returns a function for matching strings. + +```js +const pm = require('picomatch'); +const isMatch = pm('*.js'); + +console.log(isMatch('abcd')); //=> false +console.log(isMatch('a.js')); //=> true +console.log(isMatch('a.md')); //=> false +console.log(isMatch('a/b.js')); //=> false +``` + +
+ +## API + +### [picomatch](lib/picomatch.js#L32) + +Creates a matcher function from one or more glob patterns. The returned function takes a string to match as its first argument, and returns true if the string is a match. The returned matcher function also takes a boolean as the second argument that, when true, returns an object with additional information. + +**Params** + +* `globs` **{String|Array}**: One or more glob patterns. +* `options` **{Object=}** +* `returns` **{Function=}**: Returns a matcher function. + +**Example** + +```js +const picomatch = require('picomatch'); +// picomatch(glob[, options]); + +const isMatch = picomatch('*.!(*a)'); +console.log(isMatch('a.a')); //=> false +console.log(isMatch('a.b')); //=> true +``` + +### [.test](lib/picomatch.js#L117) + +Test `input` with the given `regex`. This is used by the main `picomatch()` function to test the input string. + +**Params** + +* `input` **{String}**: String to test. +* `regex` **{RegExp}** +* `returns` **{Object}**: Returns an object with matching info. + +**Example** + +```js +const picomatch = require('picomatch'); +// picomatch.test(input, regex[, options]); + +console.log(picomatch.test('foo/bar', /^(?:([^/]*?)\/([^/]*?))$/)); +// { isMatch: true, match: [ 'foo/', 'foo', 'bar' ], output: 'foo/bar' } +``` + +### [.matchBase](lib/picomatch.js#L161) + +Match the basename of a filepath. + +**Params** + +* `input` **{String}**: String to test. +* `glob` **{RegExp|String}**: Glob pattern or regex created by [.makeRe](#makeRe). +* `returns` **{Boolean}** + +**Example** + +```js +const picomatch = require('picomatch'); +// picomatch.matchBase(input, glob[, options]); +console.log(picomatch.matchBase('foo/bar.js', '*.js'); // true +``` + +### [.isMatch](lib/picomatch.js#L183) + +Returns true if **any** of the given glob `patterns` match the specified `string`. + +**Params** + +* **{String|Array}**: str The string to test. +* **{String|Array}**: patterns One or more glob patterns to use for matching. +* **{Object}**: See available [options](#options). +* `returns` **{Boolean}**: Returns true if any patterns match `str` + +**Example** + +```js +const picomatch = require('picomatch'); +// picomatch.isMatch(string, patterns[, options]); + +console.log(picomatch.isMatch('a.a', ['b.*', '*.a'])); //=> true +console.log(picomatch.isMatch('a.a', 'b.*')); //=> false +``` + +### [.parse](lib/picomatch.js#L199) + +Parse a glob pattern to create the source string for a regular expression. + +**Params** + +* `pattern` **{String}** +* `options` **{Object}** +* `returns` **{Object}**: Returns an object with useful properties and output to be used as a regex source string. + +**Example** + +```js +const picomatch = require('picomatch'); +const result = picomatch.parse(pattern[, options]); +``` + +### [.scan](lib/picomatch.js#L231) + +Scan a glob pattern to separate the pattern into segments. + +**Params** + +* `input` **{String}**: Glob pattern to scan. +* `options` **{Object}** +* `returns` **{Object}**: Returns an object with + +**Example** + +```js +const picomatch = require('picomatch'); +// picomatch.scan(input[, options]); + +const result = picomatch.scan('!./foo/*.js'); +console.log(result); +{ prefix: '!./', + input: '!./foo/*.js', + start: 3, + base: 'foo', + glob: '*.js', + isBrace: false, + isBracket: false, + isGlob: true, + isExtglob: false, + isGlobstar: false, + negated: true } +``` + +### [.compileRe](lib/picomatch.js#L245) + +Compile a regular expression from the `state` object returned by the +[parse()](#parse) method. + +**Params** + +* `state` **{Object}** +* `options` **{Object}** +* `returnOutput` **{Boolean}**: Intended for implementors, this argument allows you to return the raw output from the parser. +* `returnState` **{Boolean}**: Adds the state to a `state` property on the returned regex. Useful for implementors and debugging. +* `returns` **{RegExp}** + +### [.makeRe](lib/picomatch.js#L286) + +Create a regular expression from a parsed glob pattern. + +**Params** + +* `state` **{String}**: The object returned from the `.parse` method. +* `options` **{Object}** +* `returnOutput` **{Boolean}**: Implementors may use this argument to return the compiled output, instead of a regular expression. This is not exposed on the options to prevent end-users from mutating the result. +* `returnState` **{Boolean}**: Implementors may use this argument to return the state from the parsed glob with the returned regular expression. +* `returns` **{RegExp}**: Returns a regex created from the given pattern. + +**Example** + +```js +const picomatch = require('picomatch'); +const state = picomatch.parse('*.js'); +// picomatch.compileRe(state[, options]); + +console.log(picomatch.compileRe(state)); +//=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ +``` + +### [.toRegex](lib/picomatch.js#L321) + +Create a regular expression from the given regex source string. + +**Params** + +* `source` **{String}**: Regular expression source string. +* `options` **{Object}** +* `returns` **{RegExp}** + +**Example** + +```js +const picomatch = require('picomatch'); +// picomatch.toRegex(source[, options]); + +const { output } = picomatch.parse('*.js'); +console.log(picomatch.toRegex(output)); +//=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ +``` + +
+ +## Options + +### Picomatch options + +The following options may be used with the main `picomatch()` function or any of the methods on the picomatch API. + +| **Option** | **Type** | **Default value** | **Description** | +| --- | --- | --- | --- | +| `basename` | `boolean` | `false` | If set, then patterns without slashes will be matched against the basename of the path if it contains slashes. For example, `a?b` would match the path `/xyz/123/acb`, but not `/xyz/acb/123`. | +| `bash` | `boolean` | `false` | Follow bash matching rules more strictly - disallows backslashes as escape characters, and treats single stars as globstars (`**`). | +| `capture` | `boolean` | `undefined` | Return regex matches in supporting methods. | +| `contains` | `boolean` | `undefined` | Allows glob to match any part of the given string(s). | +| `cwd` | `string` | `process.cwd()` | Current working directory. Used by `picomatch.split()` | +| `debug` | `boolean` | `undefined` | Debug regular expressions when an error is thrown. | +| `dot` | `boolean` | `false` | Enable dotfile matching. By default, dotfiles are ignored unless a `.` is explicitly defined in the pattern, or `options.dot` is true | +| `expandRange` | `function` | `undefined` | Custom function for expanding ranges in brace patterns, such as `{a..z}`. The function receives the range values as two arguments, and it must return a string to be used in the generated regex. It's recommended that returned strings be wrapped in parentheses. | +| `failglob` | `boolean` | `false` | Throws an error if no matches are found. Based on the bash option of the same name. | +| `fastpaths` | `boolean` | `true` | To speed up processing, full parsing is skipped for a handful common glob patterns. Disable this behavior by setting this option to `false`. | +| `flags` | `string` | `undefined` | Regex flags to use in the generated regex. If defined, the `nocase` option will be overridden. | +| [format](#optionsformat) | `function` | `undefined` | Custom function for formatting the returned string. This is useful for removing leading slashes, converting Windows paths to Posix paths, etc. | +| `ignore` | `array\|string` | `undefined` | One or more glob patterns for excluding strings that should not be matched from the result. | +| `keepQuotes` | `boolean` | `false` | Retain quotes in the generated regex, since quotes may also be used as an alternative to backslashes. | +| `literalBrackets` | `boolean` | `undefined` | When `true`, brackets in the glob pattern will be escaped so that only literal brackets will be matched. | +| `matchBase` | `boolean` | `false` | Alias for `basename` | +| `maxLength` | `boolean` | `65536` | Limit the max length of the input string. An error is thrown if the input string is longer than this value. | +| `nobrace` | `boolean` | `false` | Disable brace matching, so that `{a,b}` and `{1..3}` would be treated as literal characters. | +| `nobracket` | `boolean` | `undefined` | Disable matching with regex brackets. | +| `nocase` | `boolean` | `false` | Make matching case-insensitive. Equivalent to the regex `i` flag. Note that this option is overridden by the `flags` option. | +| `nodupes` | `boolean` | `true` | Deprecated, use `nounique` instead. This option will be removed in a future major release. By default duplicates are removed. Disable uniquification by setting this option to false. | +| `noext` | `boolean` | `false` | Alias for `noextglob` | +| `noextglob` | `boolean` | `false` | Disable support for matching with extglobs (like `+(a\|b)`) | +| `noglobstar` | `boolean` | `false` | Disable support for matching nested directories with globstars (`**`) | +| `nonegate` | `boolean` | `false` | Disable support for negating with leading `!` | +| `noquantifiers` | `boolean` | `false` | Disable support for regex quantifiers (like `a{1,2}`) and treat them as brace patterns to be expanded. | +| [onIgnore](#optionsonIgnore) | `function` | `undefined` | Function to be called on ignored items. | +| [onMatch](#optionsonMatch) | `function` | `undefined` | Function to be called on matched items. | +| [onResult](#optionsonResult) | `function` | `undefined` | Function to be called on all items, regardless of whether or not they are matched or ignored. | +| `posix` | `boolean` | `false` | Support POSIX character classes ("posix brackets"). | +| `posixSlashes` | `boolean` | `undefined` | Convert all slashes in file paths to forward slashes. This does not convert slashes in the glob pattern itself | +| `prepend` | `boolean` | `undefined` | String to prepend to the generated regex used for matching. | +| `regex` | `boolean` | `false` | Use regular expression rules for `+` (instead of matching literal `+`), and for stars that follow closing parentheses or brackets (as in `)*` and `]*`). | +| `strictBrackets` | `boolean` | `undefined` | Throw an error if brackets, braces, or parens are imbalanced. | +| `strictSlashes` | `boolean` | `undefined` | When true, picomatch won't match trailing slashes with single stars. | +| `unescape` | `boolean` | `undefined` | Remove backslashes preceding escaped characters in the glob pattern. By default, backslashes are retained. | +| `unixify` | `boolean` | `undefined` | Alias for `posixSlashes`, for backwards compatibility. | + +picomatch has automatic detection for regex positive and negative lookbehinds. If the pattern contains a negative lookbehind, you must be using Node.js >= 8.10 or else picomatch will throw an error. + +### Scan Options + +In addition to the main [picomatch options](#picomatch-options), the following options may also be used with the [.scan](#scan) method. + +| **Option** | **Type** | **Default value** | **Description** | +| --- | --- | --- | --- | +| `tokens` | `boolean` | `false` | When `true`, the returned object will include an array of tokens (objects), representing each path "segment" in the scanned glob pattern | +| `parts` | `boolean` | `false` | When `true`, the returned object will include an array of strings representing each path "segment" in the scanned glob pattern. This is automatically enabled when `options.tokens` is true | + +**Example** + +```js +const picomatch = require('picomatch'); +const result = picomatch.scan('!./foo/*.js', { tokens: true }); +console.log(result); +// { +// prefix: '!./', +// input: '!./foo/*.js', +// start: 3, +// base: 'foo', +// glob: '*.js', +// isBrace: false, +// isBracket: false, +// isGlob: true, +// isExtglob: false, +// isGlobstar: false, +// negated: true, +// maxDepth: 2, +// tokens: [ +// { value: '!./', depth: 0, isGlob: false, negated: true, isPrefix: true }, +// { value: 'foo', depth: 1, isGlob: false }, +// { value: '*.js', depth: 1, isGlob: true } +// ], +// slashes: [ 2, 6 ], +// parts: [ 'foo', '*.js' ] +// } +``` + +
+ +### Options Examples + +#### options.expandRange + +**Type**: `function` + +**Default**: `undefined` + +Custom function for expanding ranges in brace patterns. The [fill-range](https://github.com/jonschlinkert/fill-range) library is ideal for this purpose, or you can use custom code to do whatever you need. + +**Example** + +The following example shows how to create a glob that matches a folder + +```js +const fill = require('fill-range'); +const regex = pm.makeRe('foo/{01..25}/bar', { + expandRange(a, b) { + return `(${fill(a, b, { toRegex: true })})`; + } +}); + +console.log(regex); +//=> /^(?:foo\/((?:0[1-9]|1[0-9]|2[0-5]))\/bar)$/ + +console.log(regex.test('foo/00/bar')) // false +console.log(regex.test('foo/01/bar')) // true +console.log(regex.test('foo/10/bar')) // true +console.log(regex.test('foo/22/bar')) // true +console.log(regex.test('foo/25/bar')) // true +console.log(regex.test('foo/26/bar')) // false +``` + +#### options.format + +**Type**: `function` + +**Default**: `undefined` + +Custom function for formatting strings before they're matched. + +**Example** + +```js +// strip leading './' from strings +const format = str => str.replace(/^\.\//, ''); +const isMatch = picomatch('foo/*.js', { format }); +console.log(isMatch('./foo/bar.js')); //=> true +``` + +#### options.onMatch + +```js +const onMatch = ({ glob, regex, input, output }) => { + console.log({ glob, regex, input, output }); +}; + +const isMatch = picomatch('*', { onMatch }); +isMatch('foo'); +isMatch('bar'); +isMatch('baz'); +``` + +#### options.onIgnore + +```js +const onIgnore = ({ glob, regex, input, output }) => { + console.log({ glob, regex, input, output }); +}; + +const isMatch = picomatch('*', { onIgnore, ignore: 'f*' }); +isMatch('foo'); +isMatch('bar'); +isMatch('baz'); +``` + +#### options.onResult + +```js +const onResult = ({ glob, regex, input, output }) => { + console.log({ glob, regex, input, output }); +}; + +const isMatch = picomatch('*', { onResult, ignore: 'f*' }); +isMatch('foo'); +isMatch('bar'); +isMatch('baz'); +``` + +
+
+ +## Globbing features + +* [Basic globbing](#basic-globbing) (Wildcard matching) +* [Advanced globbing](#advanced-globbing) (extglobs, posix brackets, brace matching) + +### Basic globbing + +| **Character** | **Description** | +| --- | --- | +| `*` | Matches any character zero or more times, excluding path separators. Does _not match_ path separators or hidden files or directories ("dotfiles"), unless explicitly enabled by setting the `dot` option to `true`. | +| `**` | Matches any character zero or more times, including path separators. Note that `**` will only match path separators (`/`, and `\\` on Windows) when they are the only characters in a path segment. Thus, `foo**/bar` is equivalent to `foo*/bar`, and `foo/a**b/bar` is equivalent to `foo/a*b/bar`, and _more than two_ consecutive stars in a glob path segment are regarded as _a single star_. Thus, `foo/***/bar` is equivalent to `foo/*/bar`. | +| `?` | Matches any character excluding path separators one time. Does _not match_ path separators or leading dots. | +| `[abc]` | Matches any characters inside the brackets. For example, `[abc]` would match the characters `a`, `b` or `c`, and nothing else. | + +#### Matching behavior vs. Bash + +Picomatch's matching features and expected results in unit tests are based on Bash's unit tests and the Bash 4.3 specification, with the following exceptions: + +* Bash will match `foo/bar/baz` with `*`. Picomatch only matches nested directories with `**`. +* Bash greedily matches with negated extglobs. For example, Bash 4.3 says that `!(foo)*` should match `foo` and `foobar`, since the trailing `*` bracktracks to match the preceding pattern. This is very memory-inefficient, and IMHO, also incorrect. Picomatch would return `false` for both `foo` and `foobar`. + +
+ +### Advanced globbing + +* [extglobs](#extglobs) +* [POSIX brackets](#posix-brackets) +* [Braces](#brace-expansion) + +#### Extglobs + +| **Pattern** | **Description** | +| --- | --- | +| `@(pattern)` | Match _only one_ consecutive occurrence of `pattern` | +| `*(pattern)` | Match _zero or more_ consecutive occurrences of `pattern` | +| `+(pattern)` | Match _one or more_ consecutive occurrences of `pattern` | +| `?(pattern)` | Match _zero or **one**_ consecutive occurrences of `pattern` | +| `!(pattern)` | Match _anything but_ `pattern` | + +**Examples** + +```js +const pm = require('picomatch'); + +// *(pattern) matches ZERO or more of "pattern" +console.log(pm.isMatch('a', 'a*(z)')); // true +console.log(pm.isMatch('az', 'a*(z)')); // true +console.log(pm.isMatch('azzz', 'a*(z)')); // true + +// +(pattern) matches ONE or more of "pattern" +console.log(pm.isMatch('a', 'a*(z)')); // true +console.log(pm.isMatch('az', 'a*(z)')); // true +console.log(pm.isMatch('azzz', 'a*(z)')); // true + +// supports multiple extglobs +console.log(pm.isMatch('foo.bar', '!(foo).!(bar)')); // false + +// supports nested extglobs +console.log(pm.isMatch('foo.bar', '!(!(foo)).!(!(bar))')); // true +``` + +#### POSIX brackets + +POSIX classes are disabled by default. Enable this feature by setting the `posix` option to true. + +**Enable POSIX bracket support** + +```js +console.log(pm.makeRe('[[:word:]]+', { posix: true })); +//=> /^(?:(?=.)[A-Za-z0-9_]+\/?)$/ +``` + +**Supported POSIX classes** + +The following named POSIX bracket expressions are supported: + +* `[:alnum:]` - Alphanumeric characters, equ `[a-zA-Z0-9]` +* `[:alpha:]` - Alphabetical characters, equivalent to `[a-zA-Z]`. +* `[:ascii:]` - ASCII characters, equivalent to `[\\x00-\\x7F]`. +* `[:blank:]` - Space and tab characters, equivalent to `[ \\t]`. +* `[:cntrl:]` - Control characters, equivalent to `[\\x00-\\x1F\\x7F]`. +* `[:digit:]` - Numerical digits, equivalent to `[0-9]`. +* `[:graph:]` - Graph characters, equivalent to `[\\x21-\\x7E]`. +* `[:lower:]` - Lowercase letters, equivalent to `[a-z]`. +* `[:print:]` - Print characters, equivalent to `[\\x20-\\x7E ]`. +* `[:punct:]` - Punctuation and symbols, equivalent to `[\\-!"#$%&\'()\\*+,./:;<=>?@[\\]^_`{|}~]`. +* `[:space:]` - Extended space characters, equivalent to `[ \\t\\r\\n\\v\\f]`. +* `[:upper:]` - Uppercase letters, equivalent to `[A-Z]`. +* `[:word:]` - Word characters (letters, numbers and underscores), equivalent to `[A-Za-z0-9_]`. +* `[:xdigit:]` - Hexadecimal digits, equivalent to `[A-Fa-f0-9]`. + +See the [Bash Reference Manual](https://www.gnu.org/software/bash/manual/html_node/Pattern-Matching.html) for more information. + +### Braces + +Picomatch does not do brace expansion. For [brace expansion](https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html) and advanced matching with braces, use [micromatch](https://github.com/micromatch/micromatch) instead. Picomatch has very basic support for braces. + +### Matching special characters as literals + +If you wish to match the following special characters in a filepath, and you want to use these characters in your glob pattern, they must be escaped with backslashes or quotes: + +**Special Characters** + +Some characters that are used for matching in regular expressions are also regarded as valid file path characters on some platforms. + +To match any of the following characters as literals: `$^*+?()[] + +Examples: + +```js +console.log(pm.makeRe('foo/bar \\(1\\)')); +console.log(pm.makeRe('foo/bar \\(1\\)')); +``` + +
+
+ +## Library Comparisons + +The following table shows which features are supported by [minimatch](https://github.com/isaacs/minimatch), [micromatch](https://github.com/micromatch/micromatch), [picomatch](https://github.com/micromatch/picomatch), [nanomatch](https://github.com/micromatch/nanomatch), [extglob](https://github.com/micromatch/extglob), [braces](https://github.com/micromatch/braces), and [expand-brackets](https://github.com/micromatch/expand-brackets). + +| **Feature** | `minimatch` | `micromatch` | `picomatch` | `nanomatch` | `extglob` | `braces` | `expand-brackets` | +| --- | --- | --- | --- | --- | --- | --- | --- | +| Wildcard matching (`*?+`) | ✔ | ✔ | ✔ | ✔ | - | - | - | +| Advancing globbing | ✔ | ✔ | ✔ | - | - | - | - | +| Brace _matching_ | ✔ | ✔ | ✔ | - | - | ✔ | - | +| Brace _expansion_ | ✔ | ✔ | - | - | - | ✔ | - | +| Extglobs | partial | ✔ | ✔ | - | ✔ | - | - | +| Posix brackets | - | ✔ | ✔ | - | - | - | ✔ | +| Regular expression syntax | - | ✔ | ✔ | ✔ | ✔ | - | ✔ | +| File system operations | - | - | - | - | - | - | - | + +
+
+ +## Benchmarks + +Performance comparison of picomatch and minimatch. + +``` +# .makeRe star + picomatch x 1,993,050 ops/sec ±0.51% (91 runs sampled) + minimatch x 627,206 ops/sec ±1.96% (87 runs sampled)) + +# .makeRe star; dot=true + picomatch x 1,436,640 ops/sec ±0.62% (91 runs sampled) + minimatch x 525,876 ops/sec ±0.60% (88 runs sampled) + +# .makeRe globstar + picomatch x 1,592,742 ops/sec ±0.42% (90 runs sampled) + minimatch x 962,043 ops/sec ±1.76% (91 runs sampled)d) + +# .makeRe globstars + picomatch x 1,615,199 ops/sec ±0.35% (94 runs sampled) + minimatch x 477,179 ops/sec ±1.33% (91 runs sampled) + +# .makeRe with leading star + picomatch x 1,220,856 ops/sec ±0.40% (92 runs sampled) + minimatch x 453,564 ops/sec ±1.43% (94 runs sampled) + +# .makeRe - basic braces + picomatch x 392,067 ops/sec ±0.70% (90 runs sampled) + minimatch x 99,532 ops/sec ±2.03% (87 runs sampled)) +``` + +
+
+ +## Philosophies + +The goal of this library is to be blazing fast, without compromising on accuracy. + +**Accuracy** + +The number one of goal of this library is accuracy. However, it's not unusual for different glob implementations to have different rules for matching behavior, even with simple wildcard matching. It gets increasingly more complicated when combinations of different features are combined, like when extglobs are combined with globstars, braces, slashes, and so on: `!(**/{a,b,*/c})`. + +Thus, given that there is no canonical glob specification to use as a single source of truth when differences of opinion arise regarding behavior, sometimes we have to implement our best judgement and rely on feedback from users to make improvements. + +**Performance** + +Although this library performs well in benchmarks, and in most cases it's faster than other popular libraries we benchmarked against, we will always choose accuracy over performance. It's not helpful to anyone if our library is faster at returning the wrong answer. + +
+
+ +## About + +
+Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +Please read the [contributing guide](.github/contributing.md) for advice on opening issues, pull requests, and coding standards. + +
+ +
+Running Tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +npm install && npm test +``` + +
+ +
+Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +
+ +### Author + +**Jon Schlinkert** + +* [GitHub Profile](https://github.com/jonschlinkert) +* [Twitter Profile](https://twitter.com/jonschlinkert) +* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) + +### License + +Copyright © 2017-present, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). diff --git a/node_modules/picomatch/index.js b/node_modules/picomatch/index.js new file mode 100644 index 0000000..d2f2bc5 --- /dev/null +++ b/node_modules/picomatch/index.js @@ -0,0 +1,3 @@ +'use strict'; + +module.exports = require('./lib/picomatch'); diff --git a/node_modules/picomatch/lib/constants.js b/node_modules/picomatch/lib/constants.js new file mode 100644 index 0000000..a62ef38 --- /dev/null +++ b/node_modules/picomatch/lib/constants.js @@ -0,0 +1,179 @@ +'use strict'; + +const path = require('path'); +const WIN_SLASH = '\\\\/'; +const WIN_NO_SLASH = `[^${WIN_SLASH}]`; + +/** + * Posix glob regex + */ + +const DOT_LITERAL = '\\.'; +const PLUS_LITERAL = '\\+'; +const QMARK_LITERAL = '\\?'; +const SLASH_LITERAL = '\\/'; +const ONE_CHAR = '(?=.)'; +const QMARK = '[^/]'; +const END_ANCHOR = `(?:${SLASH_LITERAL}|$)`; +const START_ANCHOR = `(?:^|${SLASH_LITERAL})`; +const DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`; +const NO_DOT = `(?!${DOT_LITERAL})`; +const NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`; +const NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`; +const NO_DOTS_SLASH = `(?!${DOTS_SLASH})`; +const QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`; +const STAR = `${QMARK}*?`; + +const POSIX_CHARS = { + DOT_LITERAL, + PLUS_LITERAL, + QMARK_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + QMARK, + END_ANCHOR, + DOTS_SLASH, + NO_DOT, + NO_DOTS, + NO_DOT_SLASH, + NO_DOTS_SLASH, + QMARK_NO_DOT, + STAR, + START_ANCHOR +}; + +/** + * Windows glob regex + */ + +const WINDOWS_CHARS = { + ...POSIX_CHARS, + + SLASH_LITERAL: `[${WIN_SLASH}]`, + QMARK: WIN_NO_SLASH, + STAR: `${WIN_NO_SLASH}*?`, + DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`, + NO_DOT: `(?!${DOT_LITERAL})`, + NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, + NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`, + NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, + QMARK_NO_DOT: `[^.${WIN_SLASH}]`, + START_ANCHOR: `(?:^|[${WIN_SLASH}])`, + END_ANCHOR: `(?:[${WIN_SLASH}]|$)` +}; + +/** + * POSIX Bracket Regex + */ + +const POSIX_REGEX_SOURCE = { + 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' +}; + +module.exports = { + MAX_LENGTH: 1024 * 64, + POSIX_REGEX_SOURCE, + + // regular expressions + 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, + + // Replace globs with equivalent patterns to reduce parsing time. + REPLACEMENTS: { + '***': '*', + '**/**': '**', + '**/**/**': '**' + }, + + // Digits + CHAR_0: 48, /* 0 */ + CHAR_9: 57, /* 9 */ + + // Alphabet chars. + CHAR_UPPERCASE_A: 65, /* A */ + CHAR_LOWERCASE_A: 97, /* a */ + CHAR_UPPERCASE_Z: 90, /* Z */ + CHAR_LOWERCASE_Z: 122, /* z */ + + CHAR_LEFT_PARENTHESES: 40, /* ( */ + CHAR_RIGHT_PARENTHESES: 41, /* ) */ + + CHAR_ASTERISK: 42, /* * */ + + // Non-alphabetic chars. + CHAR_AMPERSAND: 38, /* & */ + CHAR_AT: 64, /* @ */ + CHAR_BACKWARD_SLASH: 92, /* \ */ + CHAR_CARRIAGE_RETURN: 13, /* \r */ + 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, /* \f */ + 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, /* \n */ + CHAR_NO_BREAK_SPACE: 160, /* \u00A0 */ + 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, /* \t */ + CHAR_UNDERSCORE: 95, /* _ */ + CHAR_VERTICAL_LINE: 124, /* | */ + CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, /* \uFEFF */ + + SEP: path.sep, + + /** + * Create EXTGLOB_CHARS + */ + + extglobChars(chars) { + return { + '!': { type: 'negate', open: '(?:(?!(?:', close: `))${chars.STAR})` }, + '?': { type: 'qmark', open: '(?:', close: ')?' }, + '+': { type: 'plus', open: '(?:', close: ')+' }, + '*': { type: 'star', open: '(?:', close: ')*' }, + '@': { type: 'at', open: '(?:', close: ')' } + }; + }, + + /** + * Create GLOB_CHARS + */ + + globChars(win32) { + return win32 === true ? WINDOWS_CHARS : POSIX_CHARS; + } +}; diff --git a/node_modules/picomatch/lib/parse.js b/node_modules/picomatch/lib/parse.js new file mode 100644 index 0000000..58269d0 --- /dev/null +++ b/node_modules/picomatch/lib/parse.js @@ -0,0 +1,1091 @@ +'use strict'; + +const constants = require('./constants'); +const utils = require('./utils'); + +/** + * Constants + */ + +const { + MAX_LENGTH, + POSIX_REGEX_SOURCE, + REGEX_NON_SPECIAL_CHARS, + REGEX_SPECIAL_CHARS_BACKREF, + REPLACEMENTS +} = constants; + +/** + * Helpers + */ + +const expandRange = (args, options) => { + if (typeof options.expandRange === 'function') { + return options.expandRange(...args, options); + } + + args.sort(); + const value = `[${args.join('-')}]`; + + try { + /* eslint-disable-next-line no-new */ + new RegExp(value); + } catch (ex) { + return args.map(v => utils.escapeRegex(v)).join('..'); + } + + return value; +}; + +/** + * Create the message for a syntax error + */ + +const syntaxError = (type, char) => { + return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`; +}; + +/** + * Parse the given input string. + * @param {String} input + * @param {Object} options + * @return {Object} + */ + +const parse = (input, options) => { + if (typeof input !== 'string') { + throw new TypeError('Expected a string'); + } + + input = REPLACEMENTS[input] || input; + + const opts = { ...options }; + const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + + let len = input.length; + if (len > max) { + throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); + } + + const bos = { type: 'bos', value: '', output: opts.prepend || '' }; + const tokens = [bos]; + + const capture = opts.capture ? '' : '?:'; + const win32 = utils.isWindows(options); + + // create constants based on platform, for windows or posix + const PLATFORM_CHARS = constants.globChars(win32); + const EXTGLOB_CHARS = constants.extglobChars(PLATFORM_CHARS); + + const { + DOT_LITERAL, + PLUS_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + DOTS_SLASH, + NO_DOT, + NO_DOT_SLASH, + NO_DOTS_SLASH, + QMARK, + QMARK_NO_DOT, + STAR, + START_ANCHOR + } = PLATFORM_CHARS; + + const globstar = opts => { + return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; + }; + + const nodot = opts.dot ? '' : NO_DOT; + const qmarkNoDot = opts.dot ? QMARK : QMARK_NO_DOT; + let star = opts.bash === true ? globstar(opts) : STAR; + + if (opts.capture) { + star = `(${star})`; + } + + // minimatch options support + if (typeof opts.noext === 'boolean') { + opts.noextglob = opts.noext; + } + + const state = { + input, + index: -1, + start: 0, + dot: opts.dot === true, + consumed: '', + output: '', + prefix: '', + backtrack: false, + negated: false, + brackets: 0, + braces: 0, + parens: 0, + quotes: 0, + globstar: false, + tokens + }; + + input = utils.removePrefix(input, state); + len = input.length; + + const extglobs = []; + const braces = []; + const stack = []; + let prev = bos; + let value; + + /** + * Tokenizing helpers + */ + + const eos = () => state.index === len - 1; + const peek = state.peek = (n = 1) => input[state.index + n]; + const advance = state.advance = () => input[++state.index] || ''; + const remaining = () => input.slice(state.index + 1); + const consume = (value = '', num = 0) => { + state.consumed += value; + state.index += num; + }; + + const append = token => { + state.output += token.output != null ? token.output : token.value; + consume(token.value); + }; + + const negate = () => { + let count = 1; + + while (peek() === '!' && (peek(2) !== '(' || peek(3) === '?')) { + advance(); + state.start++; + count++; + } + + if (count % 2 === 0) { + return false; + } + + state.negated = true; + state.start++; + return true; + }; + + const increment = type => { + state[type]++; + stack.push(type); + }; + + const decrement = type => { + state[type]--; + stack.pop(); + }; + + /** + * Push tokens onto the tokens array. This helper speeds up + * tokenizing by 1) helping us avoid backtracking as much as possible, + * and 2) helping us avoid creating extra tokens when consecutive + * characters are plain text. This improves performance and simplifies + * lookbehinds. + */ + + const push = tok => { + if (prev.type === 'globstar') { + const isBrace = state.braces > 0 && (tok.type === 'comma' || tok.type === 'brace'); + const isExtglob = tok.extglob === true || (extglobs.length && (tok.type === 'pipe' || tok.type === 'paren')); + + if (tok.type !== 'slash' && tok.type !== 'paren' && !isBrace && !isExtglob) { + state.output = state.output.slice(0, -prev.output.length); + prev.type = 'star'; + prev.value = '*'; + prev.output = star; + state.output += prev.output; + } + } + + if (extglobs.length && tok.type !== 'paren') { + extglobs[extglobs.length - 1].inner += tok.value; + } + + if (tok.value || tok.output) append(tok); + if (prev && prev.type === 'text' && tok.type === 'text') { + prev.value += tok.value; + prev.output = (prev.output || '') + tok.value; + return; + } + + tok.prev = prev; + tokens.push(tok); + prev = tok; + }; + + const extglobOpen = (type, value) => { + const token = { ...EXTGLOB_CHARS[value], conditions: 1, inner: '' }; + + token.prev = prev; + token.parens = state.parens; + token.output = state.output; + const output = (opts.capture ? '(' : '') + token.open; + + increment('parens'); + push({ type, value, output: state.output ? '' : ONE_CHAR }); + push({ type: 'paren', extglob: true, value: advance(), output }); + extglobs.push(token); + }; + + const extglobClose = token => { + let output = token.close + (opts.capture ? ')' : ''); + let rest; + + if (token.type === 'negate') { + let extglobStar = star; + + if (token.inner && token.inner.length > 1 && token.inner.includes('/')) { + extglobStar = globstar(opts); + } + + if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) { + output = token.close = `)$))${extglobStar}`; + } + + if (token.inner.includes('*') && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) { + // Any non-magical string (`.ts`) or even nested expression (`.{ts,tsx}`) can follow after the closing parenthesis. + // In this case, we need to parse the string and use it in the output of the original pattern. + // Suitable patterns: `/!(*.d).ts`, `/!(*.d).{ts,tsx}`, `**/!(*-dbg).@(js)`. + // + // Disabling the `fastpaths` option due to a problem with parsing strings as `.ts` in the pattern like `**/!(*.d).ts`. + const expression = parse(rest, { ...options, fastpaths: false }).output; + + output = token.close = `)${expression})${extglobStar})`; + } + + if (token.prev.type === 'bos') { + state.negatedExtglob = true; + } + } + + push({ type: 'paren', extglob: true, value, output }); + decrement('parens'); + }; + + /** + * Fast paths + */ + + if (opts.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) { + let backslashes = false; + + let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => { + if (first === '\\') { + backslashes = true; + return m; + } + + if (first === '?') { + if (esc) { + return esc + first + (rest ? QMARK.repeat(rest.length) : ''); + } + if (index === 0) { + return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : ''); + } + return QMARK.repeat(chars.length); + } + + if (first === '.') { + return DOT_LITERAL.repeat(chars.length); + } + + if (first === '*') { + if (esc) { + return esc + first + (rest ? star : ''); + } + return star; + } + return esc ? m : `\\${m}`; + }); + + if (backslashes === true) { + if (opts.unescape === true) { + output = output.replace(/\\/g, ''); + } else { + output = output.replace(/\\+/g, m => { + return m.length % 2 === 0 ? '\\\\' : (m ? '\\' : ''); + }); + } + } + + if (output === input && opts.contains === true) { + state.output = input; + return state; + } + + state.output = utils.wrapOutput(output, state, options); + return state; + } + + /** + * Tokenize input until we reach end-of-string + */ + + while (!eos()) { + value = advance(); + + if (value === '\u0000') { + continue; + } + + /** + * Escaped characters + */ + + if (value === '\\') { + const next = peek(); + + if (next === '/' && opts.bash !== true) { + continue; + } + + if (next === '.' || next === ';') { + continue; + } + + if (!next) { + value += '\\'; + push({ type: 'text', value }); + continue; + } + + // collapse slashes to reduce potential for exploits + const match = /^\\+/.exec(remaining()); + let slashes = 0; + + if (match && match[0].length > 2) { + slashes = match[0].length; + state.index += slashes; + if (slashes % 2 !== 0) { + value += '\\'; + } + } + + if (opts.unescape === true) { + value = advance(); + } else { + value += advance(); + } + + if (state.brackets === 0) { + push({ type: 'text', value }); + continue; + } + } + + /** + * If we're inside a regex character class, continue + * until we reach the closing bracket. + */ + + if (state.brackets > 0 && (value !== ']' || prev.value === '[' || prev.value === '[^')) { + if (opts.posix !== false && value === ':') { + const inner = prev.value.slice(1); + if (inner.includes('[')) { + prev.posix = true; + + if (inner.includes(':')) { + const idx = prev.value.lastIndexOf('['); + const pre = prev.value.slice(0, idx); + const rest = prev.value.slice(idx + 2); + const posix = POSIX_REGEX_SOURCE[rest]; + if (posix) { + prev.value = pre + posix; + state.backtrack = true; + advance(); + + if (!bos.output && tokens.indexOf(prev) === 1) { + bos.output = ONE_CHAR; + } + continue; + } + } + } + } + + if ((value === '[' && peek() !== ':') || (value === '-' && peek() === ']')) { + value = `\\${value}`; + } + + if (value === ']' && (prev.value === '[' || prev.value === '[^')) { + value = `\\${value}`; + } + + if (opts.posix === true && value === '!' && prev.value === '[') { + value = '^'; + } + + prev.value += value; + append({ value }); + continue; + } + + /** + * If we're inside a quoted string, continue + * until we reach the closing double quote. + */ + + if (state.quotes === 1 && value !== '"') { + value = utils.escapeRegex(value); + prev.value += value; + append({ value }); + continue; + } + + /** + * Double quotes + */ + + if (value === '"') { + state.quotes = state.quotes === 1 ? 0 : 1; + if (opts.keepQuotes === true) { + push({ type: 'text', value }); + } + continue; + } + + /** + * Parentheses + */ + + if (value === '(') { + increment('parens'); + push({ type: 'paren', value }); + continue; + } + + if (value === ')') { + if (state.parens === 0 && opts.strictBrackets === true) { + throw new SyntaxError(syntaxError('opening', '(')); + } + + const extglob = extglobs[extglobs.length - 1]; + if (extglob && state.parens === extglob.parens + 1) { + extglobClose(extglobs.pop()); + continue; + } + + push({ type: 'paren', value, output: state.parens ? ')' : '\\)' }); + decrement('parens'); + continue; + } + + /** + * Square brackets + */ + + if (value === '[') { + if (opts.nobracket === true || !remaining().includes(']')) { + if (opts.nobracket !== true && opts.strictBrackets === true) { + throw new SyntaxError(syntaxError('closing', ']')); + } + + value = `\\${value}`; + } else { + increment('brackets'); + } + + push({ type: 'bracket', value }); + continue; + } + + if (value === ']') { + if (opts.nobracket === true || (prev && prev.type === 'bracket' && prev.value.length === 1)) { + push({ type: 'text', value, output: `\\${value}` }); + continue; + } + + if (state.brackets === 0) { + if (opts.strictBrackets === true) { + throw new SyntaxError(syntaxError('opening', '[')); + } + + push({ type: 'text', value, output: `\\${value}` }); + continue; + } + + decrement('brackets'); + + const prevValue = prev.value.slice(1); + if (prev.posix !== true && prevValue[0] === '^' && !prevValue.includes('/')) { + value = `/${value}`; + } + + prev.value += value; + append({ value }); + + // when literal brackets are explicitly disabled + // assume we should match with a regex character class + if (opts.literalBrackets === false || utils.hasRegexChars(prevValue)) { + continue; + } + + const escaped = utils.escapeRegex(prev.value); + state.output = state.output.slice(0, -prev.value.length); + + // when literal brackets are explicitly enabled + // assume we should escape the brackets to match literal characters + if (opts.literalBrackets === true) { + state.output += escaped; + prev.value = escaped; + continue; + } + + // when the user specifies nothing, try to match both + prev.value = `(${capture}${escaped}|${prev.value})`; + state.output += prev.value; + continue; + } + + /** + * Braces + */ + + if (value === '{' && opts.nobrace !== true) { + increment('braces'); + + const open = { + type: 'brace', + value, + output: '(', + outputIndex: state.output.length, + tokensIndex: state.tokens.length + }; + + braces.push(open); + push(open); + continue; + } + + if (value === '}') { + const brace = braces[braces.length - 1]; + + if (opts.nobrace === true || !brace) { + push({ type: 'text', value, output: value }); + continue; + } + + let output = ')'; + + if (brace.dots === true) { + const arr = tokens.slice(); + const range = []; + + for (let i = arr.length - 1; i >= 0; i--) { + tokens.pop(); + if (arr[i].type === 'brace') { + break; + } + if (arr[i].type !== 'dots') { + range.unshift(arr[i].value); + } + } + + output = expandRange(range, opts); + state.backtrack = true; + } + + if (brace.comma !== true && brace.dots !== true) { + const out = state.output.slice(0, brace.outputIndex); + const toks = state.tokens.slice(brace.tokensIndex); + brace.value = brace.output = '\\{'; + value = output = '\\}'; + state.output = out; + for (const t of toks) { + state.output += (t.output || t.value); + } + } + + push({ type: 'brace', value, output }); + decrement('braces'); + braces.pop(); + continue; + } + + /** + * Pipes + */ + + if (value === '|') { + if (extglobs.length > 0) { + extglobs[extglobs.length - 1].conditions++; + } + push({ type: 'text', value }); + continue; + } + + /** + * Commas + */ + + if (value === ',') { + let output = value; + + const brace = braces[braces.length - 1]; + if (brace && stack[stack.length - 1] === 'braces') { + brace.comma = true; + output = '|'; + } + + push({ type: 'comma', value, output }); + continue; + } + + /** + * Slashes + */ + + if (value === '/') { + // if the beginning of the glob is "./", advance the start + // to the current index, and don't add the "./" characters + // to the state. This greatly simplifies lookbehinds when + // checking for BOS characters like "!" and "." (not "./") + if (prev.type === 'dot' && state.index === state.start + 1) { + state.start = state.index + 1; + state.consumed = ''; + state.output = ''; + tokens.pop(); + prev = bos; // reset "prev" to the first token + continue; + } + + push({ type: 'slash', value, output: SLASH_LITERAL }); + continue; + } + + /** + * Dots + */ + + if (value === '.') { + if (state.braces > 0 && prev.type === 'dot') { + if (prev.value === '.') prev.output = DOT_LITERAL; + const brace = braces[braces.length - 1]; + prev.type = 'dots'; + prev.output += value; + prev.value += value; + brace.dots = true; + continue; + } + + if ((state.braces + state.parens) === 0 && prev.type !== 'bos' && prev.type !== 'slash') { + push({ type: 'text', value, output: DOT_LITERAL }); + continue; + } + + push({ type: 'dot', value, output: DOT_LITERAL }); + continue; + } + + /** + * Question marks + */ + + if (value === '?') { + const isGroup = prev && prev.value === '('; + if (!isGroup && opts.noextglob !== true && peek() === '(' && peek(2) !== '?') { + extglobOpen('qmark', value); + continue; + } + + if (prev && prev.type === 'paren') { + const next = peek(); + let output = value; + + if (next === '<' && !utils.supportsLookbehinds()) { + throw new Error('Node.js v10 or higher is required for regex lookbehinds'); + } + + if ((prev.value === '(' && !/[!=<:]/.test(next)) || (next === '<' && !/<([!=]|\w+>)/.test(remaining()))) { + output = `\\${value}`; + } + + push({ type: 'text', value, output }); + continue; + } + + if (opts.dot !== true && (prev.type === 'slash' || prev.type === 'bos')) { + push({ type: 'qmark', value, output: QMARK_NO_DOT }); + continue; + } + + push({ type: 'qmark', value, output: QMARK }); + continue; + } + + /** + * Exclamation + */ + + if (value === '!') { + if (opts.noextglob !== true && peek() === '(') { + if (peek(2) !== '?' || !/[!=<:]/.test(peek(3))) { + extglobOpen('negate', value); + continue; + } + } + + if (opts.nonegate !== true && state.index === 0) { + negate(); + continue; + } + } + + /** + * Plus + */ + + if (value === '+') { + if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') { + extglobOpen('plus', value); + continue; + } + + if ((prev && prev.value === '(') || opts.regex === false) { + push({ type: 'plus', value, output: PLUS_LITERAL }); + continue; + } + + if ((prev && (prev.type === 'bracket' || prev.type === 'paren' || prev.type === 'brace')) || state.parens > 0) { + push({ type: 'plus', value }); + continue; + } + + push({ type: 'plus', value: PLUS_LITERAL }); + continue; + } + + /** + * Plain text + */ + + if (value === '@') { + if (opts.noextglob !== true && peek() === '(' && peek(2) !== '?') { + push({ type: 'at', extglob: true, value, output: '' }); + continue; + } + + push({ type: 'text', value }); + continue; + } + + /** + * Plain text + */ + + if (value !== '*') { + if (value === '$' || value === '^') { + value = `\\${value}`; + } + + const match = REGEX_NON_SPECIAL_CHARS.exec(remaining()); + if (match) { + value += match[0]; + state.index += match[0].length; + } + + push({ type: 'text', value }); + continue; + } + + /** + * Stars + */ + + if (prev && (prev.type === 'globstar' || prev.star === true)) { + prev.type = 'star'; + prev.star = true; + prev.value += value; + prev.output = star; + state.backtrack = true; + state.globstar = true; + consume(value); + continue; + } + + let rest = remaining(); + if (opts.noextglob !== true && /^\([^?]/.test(rest)) { + extglobOpen('star', value); + continue; + } + + if (prev.type === 'star') { + if (opts.noglobstar === true) { + consume(value); + continue; + } + + const prior = prev.prev; + const before = prior.prev; + const isStart = prior.type === 'slash' || prior.type === 'bos'; + const afterStar = before && (before.type === 'star' || before.type === 'globstar'); + + if (opts.bash === true && (!isStart || (rest[0] && rest[0] !== '/'))) { + push({ type: 'star', value, output: '' }); + continue; + } + + const isBrace = state.braces > 0 && (prior.type === 'comma' || prior.type === 'brace'); + const isExtglob = extglobs.length && (prior.type === 'pipe' || prior.type === 'paren'); + if (!isStart && prior.type !== 'paren' && !isBrace && !isExtglob) { + push({ type: 'star', value, output: '' }); + continue; + } + + // strip consecutive `/**/` + while (rest.slice(0, 3) === '/**') { + const after = input[state.index + 4]; + if (after && after !== '/') { + break; + } + rest = rest.slice(3); + consume('/**', 3); + } + + if (prior.type === 'bos' && eos()) { + prev.type = 'globstar'; + prev.value += value; + prev.output = globstar(opts); + state.output = prev.output; + state.globstar = true; + consume(value); + continue; + } + + if (prior.type === 'slash' && prior.prev.type !== 'bos' && !afterStar && eos()) { + state.output = state.output.slice(0, -(prior.output + prev.output).length); + prior.output = `(?:${prior.output}`; + + prev.type = 'globstar'; + prev.output = globstar(opts) + (opts.strictSlashes ? ')' : '|$)'); + prev.value += value; + state.globstar = true; + state.output += prior.output + prev.output; + consume(value); + continue; + } + + if (prior.type === 'slash' && prior.prev.type !== 'bos' && rest[0] === '/') { + const end = rest[1] !== void 0 ? '|$' : ''; + + state.output = state.output.slice(0, -(prior.output + prev.output).length); + prior.output = `(?:${prior.output}`; + + prev.type = 'globstar'; + prev.output = `${globstar(opts)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`; + prev.value += value; + + state.output += prior.output + prev.output; + state.globstar = true; + + consume(value + advance()); + + push({ type: 'slash', value: '/', output: '' }); + continue; + } + + if (prior.type === 'bos' && rest[0] === '/') { + prev.type = 'globstar'; + prev.value += value; + prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts)}${SLASH_LITERAL})`; + state.output = prev.output; + state.globstar = true; + consume(value + advance()); + push({ type: 'slash', value: '/', output: '' }); + continue; + } + + // remove single star from output + state.output = state.output.slice(0, -prev.output.length); + + // reset previous token to globstar + prev.type = 'globstar'; + prev.output = globstar(opts); + prev.value += value; + + // reset output with globstar + state.output += prev.output; + state.globstar = true; + consume(value); + continue; + } + + const token = { type: 'star', value, output: star }; + + if (opts.bash === true) { + token.output = '.*?'; + if (prev.type === 'bos' || prev.type === 'slash') { + token.output = nodot + token.output; + } + push(token); + continue; + } + + if (prev && (prev.type === 'bracket' || prev.type === 'paren') && opts.regex === true) { + token.output = value; + push(token); + continue; + } + + if (state.index === state.start || prev.type === 'slash' || prev.type === 'dot') { + if (prev.type === 'dot') { + state.output += NO_DOT_SLASH; + prev.output += NO_DOT_SLASH; + + } else if (opts.dot === true) { + state.output += NO_DOTS_SLASH; + prev.output += NO_DOTS_SLASH; + + } else { + state.output += nodot; + prev.output += nodot; + } + + if (peek() !== '*') { + state.output += ONE_CHAR; + prev.output += ONE_CHAR; + } + } + + push(token); + } + + while (state.brackets > 0) { + if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ']')); + state.output = utils.escapeLast(state.output, '['); + decrement('brackets'); + } + + while (state.parens > 0) { + if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', ')')); + state.output = utils.escapeLast(state.output, '('); + decrement('parens'); + } + + while (state.braces > 0) { + if (opts.strictBrackets === true) throw new SyntaxError(syntaxError('closing', '}')); + state.output = utils.escapeLast(state.output, '{'); + decrement('braces'); + } + + if (opts.strictSlashes !== true && (prev.type === 'star' || prev.type === 'bracket')) { + push({ type: 'maybe_slash', value: '', output: `${SLASH_LITERAL}?` }); + } + + // rebuild the output if we had to backtrack at any point + if (state.backtrack === true) { + state.output = ''; + + for (const token of state.tokens) { + state.output += token.output != null ? token.output : token.value; + + if (token.suffix) { + state.output += token.suffix; + } + } + } + + return state; +}; + +/** + * Fast paths for creating regular expressions for common glob patterns. + * This can significantly speed up processing and has very little downside + * impact when none of the fast paths match. + */ + +parse.fastpaths = (input, options) => { + const opts = { ...options }; + const max = typeof opts.maxLength === 'number' ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + const len = input.length; + if (len > max) { + throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); + } + + input = REPLACEMENTS[input] || input; + const win32 = utils.isWindows(options); + + // create constants based on platform, for windows or posix + const { + DOT_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + DOTS_SLASH, + NO_DOT, + NO_DOTS, + NO_DOTS_SLASH, + STAR, + START_ANCHOR + } = constants.globChars(win32); + + const nodot = opts.dot ? NO_DOTS : NO_DOT; + const slashDot = opts.dot ? NO_DOTS_SLASH : NO_DOT; + const capture = opts.capture ? '' : '?:'; + const state = { negated: false, prefix: '' }; + let star = opts.bash === true ? '.*?' : STAR; + + if (opts.capture) { + star = `(${star})`; + } + + const globstar = opts => { + if (opts.noglobstar === true) return star; + return `(${capture}(?:(?!${START_ANCHOR}${opts.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; + }; + + const create = str => { + switch (str) { + case '*': + return `${nodot}${ONE_CHAR}${star}`; + + case '.*': + return `${DOT_LITERAL}${ONE_CHAR}${star}`; + + case '*.*': + return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; + + case '*/*': + return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`; + + case '**': + return nodot + globstar(opts); + + case '**/*': + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`; + + case '**/*.*': + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; + + case '**/.*': + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`; + + default: { + const match = /^(.*?)\.(\w+)$/.exec(str); + if (!match) return; + + const source = create(match[1]); + if (!source) return; + + return source + DOT_LITERAL + match[2]; + } + } + }; + + const output = utils.removePrefix(input, state); + let source = create(output); + + if (source && opts.strictSlashes !== true) { + source += `${SLASH_LITERAL}?`; + } + + return source; +}; + +module.exports = parse; diff --git a/node_modules/picomatch/lib/picomatch.js b/node_modules/picomatch/lib/picomatch.js new file mode 100644 index 0000000..782d809 --- /dev/null +++ b/node_modules/picomatch/lib/picomatch.js @@ -0,0 +1,342 @@ +'use strict'; + +const path = require('path'); +const scan = require('./scan'); +const parse = require('./parse'); +const utils = require('./utils'); +const constants = require('./constants'); +const isObject = val => val && typeof val === 'object' && !Array.isArray(val); + +/** + * Creates a matcher function from one or more glob patterns. The + * returned function takes a string to match as its first argument, + * and returns true if the string is a match. The returned matcher + * function also takes a boolean as the second argument that, when true, + * returns an object with additional information. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch(glob[, options]); + * + * const isMatch = picomatch('*.!(*a)'); + * console.log(isMatch('a.a')); //=> false + * console.log(isMatch('a.b')); //=> true + * ``` + * @name picomatch + * @param {String|Array} `globs` One or more glob patterns. + * @param {Object=} `options` + * @return {Function=} Returns a matcher function. + * @api public + */ + +const picomatch = (glob, options, returnState = false) => { + if (Array.isArray(glob)) { + const fns = glob.map(input => picomatch(input, options, returnState)); + const arrayMatcher = str => { + for (const isMatch of fns) { + const state = isMatch(str); + if (state) return state; + } + return false; + }; + return arrayMatcher; + } + + const isState = isObject(glob) && glob.tokens && glob.input; + + if (glob === '' || (typeof glob !== 'string' && !isState)) { + throw new TypeError('Expected pattern to be a non-empty string'); + } + + const opts = options || {}; + const posix = utils.isWindows(options); + const regex = isState + ? picomatch.compileRe(glob, options) + : picomatch.makeRe(glob, options, false, true); + + const state = regex.state; + delete regex.state; + + let isIgnored = () => false; + if (opts.ignore) { + const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null }; + isIgnored = picomatch(opts.ignore, ignoreOpts, returnState); + } + + const matcher = (input, returnObject = false) => { + const { isMatch, match, output } = picomatch.test(input, regex, options, { glob, posix }); + const result = { glob, state, regex, posix, input, output, match, isMatch }; + + if (typeof opts.onResult === 'function') { + opts.onResult(result); + } + + if (isMatch === false) { + result.isMatch = false; + return returnObject ? result : false; + } + + if (isIgnored(input)) { + if (typeof opts.onIgnore === 'function') { + opts.onIgnore(result); + } + result.isMatch = false; + return returnObject ? result : false; + } + + if (typeof opts.onMatch === 'function') { + opts.onMatch(result); + } + return returnObject ? result : true; + }; + + if (returnState) { + matcher.state = state; + } + + return matcher; +}; + +/** + * Test `input` with the given `regex`. This is used by the main + * `picomatch()` function to test the input string. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch.test(input, regex[, options]); + * + * console.log(picomatch.test('foo/bar', /^(?:([^/]*?)\/([^/]*?))$/)); + * // { isMatch: true, match: [ 'foo/', 'foo', 'bar' ], output: 'foo/bar' } + * ``` + * @param {String} `input` String to test. + * @param {RegExp} `regex` + * @return {Object} Returns an object with matching info. + * @api public + */ + +picomatch.test = (input, regex, options, { glob, posix } = {}) => { + if (typeof input !== 'string') { + throw new TypeError('Expected input to be a string'); + } + + if (input === '') { + return { isMatch: false, output: '' }; + } + + const opts = options || {}; + const format = opts.format || (posix ? utils.toPosixSlashes : null); + let match = input === glob; + let output = (match && format) ? format(input) : input; + + if (match === false) { + output = format ? format(input) : input; + match = output === glob; + } + + if (match === false || opts.capture === true) { + if (opts.matchBase === true || opts.basename === true) { + match = picomatch.matchBase(input, regex, options, posix); + } else { + match = regex.exec(output); + } + } + + return { isMatch: Boolean(match), match, output }; +}; + +/** + * Match the basename of a filepath. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch.matchBase(input, glob[, options]); + * console.log(picomatch.matchBase('foo/bar.js', '*.js'); // true + * ``` + * @param {String} `input` String to test. + * @param {RegExp|String} `glob` Glob pattern or regex created by [.makeRe](#makeRe). + * @return {Boolean} + * @api public + */ + +picomatch.matchBase = (input, glob, options, posix = utils.isWindows(options)) => { + const regex = glob instanceof RegExp ? glob : picomatch.makeRe(glob, options); + return regex.test(path.basename(input)); +}; + +/** + * Returns true if **any** of the given glob `patterns` match the specified `string`. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch.isMatch(string, patterns[, options]); + * + * console.log(picomatch.isMatch('a.a', ['b.*', '*.a'])); //=> true + * console.log(picomatch.isMatch('a.a', 'b.*')); //=> false + * ``` + * @param {String|Array} str The string to test. + * @param {String|Array} patterns One or more glob patterns to use for matching. + * @param {Object} [options] See available [options](#options). + * @return {Boolean} Returns true if any patterns match `str` + * @api public + */ + +picomatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); + +/** + * Parse a glob pattern to create the source string for a regular + * expression. + * + * ```js + * const picomatch = require('picomatch'); + * const result = picomatch.parse(pattern[, options]); + * ``` + * @param {String} `pattern` + * @param {Object} `options` + * @return {Object} Returns an object with useful properties and output to be used as a regex source string. + * @api public + */ + +picomatch.parse = (pattern, options) => { + if (Array.isArray(pattern)) return pattern.map(p => picomatch.parse(p, options)); + return parse(pattern, { ...options, fastpaths: false }); +}; + +/** + * Scan a glob pattern to separate the pattern into segments. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch.scan(input[, options]); + * + * const result = picomatch.scan('!./foo/*.js'); + * console.log(result); + * { prefix: '!./', + * input: '!./foo/*.js', + * start: 3, + * base: 'foo', + * glob: '*.js', + * isBrace: false, + * isBracket: false, + * isGlob: true, + * isExtglob: false, + * isGlobstar: false, + * negated: true } + * ``` + * @param {String} `input` Glob pattern to scan. + * @param {Object} `options` + * @return {Object} Returns an object with + * @api public + */ + +picomatch.scan = (input, options) => scan(input, options); + +/** + * Compile a regular expression from the `state` object returned by the + * [parse()](#parse) method. + * + * @param {Object} `state` + * @param {Object} `options` + * @param {Boolean} `returnOutput` Intended for implementors, this argument allows you to return the raw output from the parser. + * @param {Boolean} `returnState` Adds the state to a `state` property on the returned regex. Useful for implementors and debugging. + * @return {RegExp} + * @api public + */ + +picomatch.compileRe = (state, options, returnOutput = false, returnState = false) => { + if (returnOutput === true) { + return state.output; + } + + const opts = options || {}; + const prepend = opts.contains ? '' : '^'; + const append = opts.contains ? '' : '$'; + + let source = `${prepend}(?:${state.output})${append}`; + if (state && state.negated === true) { + source = `^(?!${source}).*$`; + } + + const regex = picomatch.toRegex(source, options); + if (returnState === true) { + regex.state = state; + } + + return regex; +}; + +/** + * Create a regular expression from a parsed glob pattern. + * + * ```js + * const picomatch = require('picomatch'); + * const state = picomatch.parse('*.js'); + * // picomatch.compileRe(state[, options]); + * + * console.log(picomatch.compileRe(state)); + * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ + * ``` + * @param {String} `state` The object returned from the `.parse` method. + * @param {Object} `options` + * @param {Boolean} `returnOutput` Implementors may use this argument to return the compiled output, instead of a regular expression. This is not exposed on the options to prevent end-users from mutating the result. + * @param {Boolean} `returnState` Implementors may use this argument to return the state from the parsed glob with the returned regular expression. + * @return {RegExp} Returns a regex created from the given pattern. + * @api public + */ + +picomatch.makeRe = (input, options = {}, returnOutput = false, returnState = false) => { + if (!input || typeof input !== 'string') { + throw new TypeError('Expected a non-empty string'); + } + + let parsed = { negated: false, fastpaths: true }; + + if (options.fastpaths !== false && (input[0] === '.' || input[0] === '*')) { + parsed.output = parse.fastpaths(input, options); + } + + if (!parsed.output) { + parsed = parse(input, options); + } + + return picomatch.compileRe(parsed, options, returnOutput, returnState); +}; + +/** + * Create a regular expression from the given regex source string. + * + * ```js + * const picomatch = require('picomatch'); + * // picomatch.toRegex(source[, options]); + * + * const { output } = picomatch.parse('*.js'); + * console.log(picomatch.toRegex(output)); + * //=> /^(?:(?!\.)(?=.)[^/]*?\.js)$/ + * ``` + * @param {String} `source` Regular expression source string. + * @param {Object} `options` + * @return {RegExp} + * @api public + */ + +picomatch.toRegex = (source, options) => { + try { + const opts = options || {}; + return new RegExp(source, opts.flags || (opts.nocase ? 'i' : '')); + } catch (err) { + if (options && options.debug === true) throw err; + return /$^/; + } +}; + +/** + * Picomatch constants. + * @return {Object} + */ + +picomatch.constants = constants; + +/** + * Expose "picomatch" + */ + +module.exports = picomatch; diff --git a/node_modules/picomatch/lib/scan.js b/node_modules/picomatch/lib/scan.js new file mode 100644 index 0000000..e59cd7a --- /dev/null +++ b/node_modules/picomatch/lib/scan.js @@ -0,0 +1,391 @@ +'use strict'; + +const utils = require('./utils'); +const { + CHAR_ASTERISK, /* * */ + CHAR_AT, /* @ */ + CHAR_BACKWARD_SLASH, /* \ */ + CHAR_COMMA, /* , */ + CHAR_DOT, /* . */ + CHAR_EXCLAMATION_MARK, /* ! */ + CHAR_FORWARD_SLASH, /* / */ + CHAR_LEFT_CURLY_BRACE, /* { */ + CHAR_LEFT_PARENTHESES, /* ( */ + CHAR_LEFT_SQUARE_BRACKET, /* [ */ + CHAR_PLUS, /* + */ + CHAR_QUESTION_MARK, /* ? */ + CHAR_RIGHT_CURLY_BRACE, /* } */ + CHAR_RIGHT_PARENTHESES, /* ) */ + CHAR_RIGHT_SQUARE_BRACKET /* ] */ +} = require('./constants'); + +const isPathSeparator = code => { + return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH; +}; + +const depth = token => { + if (token.isPrefix !== true) { + token.depth = token.isGlobstar ? Infinity : 1; + } +}; + +/** + * Quickly scans a glob pattern and returns an object with a handful of + * useful properties, like `isGlob`, `path` (the leading non-glob, if it exists), + * `glob` (the actual pattern), `negated` (true if the path starts with `!` but not + * with `!(`) and `negatedExtglob` (true if the path starts with `!(`). + * + * ```js + * const pm = require('picomatch'); + * console.log(pm.scan('foo/bar/*.js')); + * { isGlob: true, input: 'foo/bar/*.js', base: 'foo/bar', glob: '*.js' } + * ``` + * @param {String} `str` + * @param {Object} `options` + * @return {Object} Returns an object with tokens and regex source string. + * @api public + */ + +const scan = (input, options) => { + const opts = options || {}; + + const length = input.length - 1; + const scanToEnd = opts.parts === true || opts.scanToEnd === true; + const slashes = []; + const tokens = []; + const parts = []; + + let str = input; + let index = -1; + let start = 0; + let lastIndex = 0; + let isBrace = false; + let isBracket = false; + let isGlob = false; + let isExtglob = false; + let isGlobstar = false; + let braceEscaped = false; + let backslashes = false; + let negated = false; + let negatedExtglob = false; + let finished = false; + let braces = 0; + let prev; + let code; + let token = { value: '', depth: 0, isGlob: false }; + + const eos = () => index >= length; + const peek = () => str.charCodeAt(index + 1); + const advance = () => { + prev = code; + return str.charCodeAt(++index); + }; + + while (index < length) { + code = advance(); + let next; + + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + code = advance(); + + if (code === CHAR_LEFT_CURLY_BRACE) { + braceEscaped = true; + } + continue; + } + + if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) { + braces++; + + while (eos() !== true && (code = advance())) { + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + advance(); + continue; + } + + if (code === CHAR_LEFT_CURLY_BRACE) { + braces++; + continue; + } + + if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) { + isBrace = token.isBrace = true; + isGlob = token.isGlob = true; + finished = true; + + if (scanToEnd === true) { + continue; + } + + break; + } + + if (braceEscaped !== true && code === CHAR_COMMA) { + isBrace = token.isBrace = true; + isGlob = token.isGlob = true; + finished = true; + + if (scanToEnd === true) { + continue; + } + + break; + } + + if (code === CHAR_RIGHT_CURLY_BRACE) { + braces--; + + if (braces === 0) { + braceEscaped = false; + isBrace = token.isBrace = true; + finished = true; + break; + } + } + } + + if (scanToEnd === true) { + continue; + } + + break; + } + + if (code === CHAR_FORWARD_SLASH) { + slashes.push(index); + tokens.push(token); + token = { value: '', depth: 0, isGlob: false }; + + if (finished === true) continue; + if (prev === CHAR_DOT && index === (start + 1)) { + start += 2; + continue; + } + + lastIndex = index + 1; + continue; + } + + if (opts.noext !== true) { + const isExtglobChar = code === CHAR_PLUS + || code === CHAR_AT + || code === CHAR_ASTERISK + || code === CHAR_QUESTION_MARK + || code === CHAR_EXCLAMATION_MARK; + + if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) { + isGlob = token.isGlob = true; + isExtglob = token.isExtglob = true; + finished = true; + if (code === CHAR_EXCLAMATION_MARK && index === start) { + negatedExtglob = true; + } + + if (scanToEnd === true) { + while (eos() !== true && (code = advance())) { + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + code = advance(); + continue; + } + + if (code === CHAR_RIGHT_PARENTHESES) { + isGlob = token.isGlob = true; + finished = true; + break; + } + } + continue; + } + break; + } + } + + if (code === CHAR_ASTERISK) { + if (prev === CHAR_ASTERISK) isGlobstar = token.isGlobstar = true; + isGlob = token.isGlob = true; + finished = true; + + if (scanToEnd === true) { + continue; + } + break; + } + + if (code === CHAR_QUESTION_MARK) { + isGlob = token.isGlob = true; + finished = true; + + if (scanToEnd === true) { + continue; + } + break; + } + + if (code === CHAR_LEFT_SQUARE_BRACKET) { + while (eos() !== true && (next = advance())) { + if (next === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + advance(); + continue; + } + + if (next === CHAR_RIGHT_SQUARE_BRACKET) { + isBracket = token.isBracket = true; + isGlob = token.isGlob = true; + finished = true; + break; + } + } + + if (scanToEnd === true) { + continue; + } + + break; + } + + if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) { + negated = token.negated = true; + start++; + continue; + } + + if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) { + isGlob = token.isGlob = true; + + if (scanToEnd === true) { + while (eos() !== true && (code = advance())) { + if (code === CHAR_LEFT_PARENTHESES) { + backslashes = token.backslashes = true; + code = advance(); + continue; + } + + if (code === CHAR_RIGHT_PARENTHESES) { + finished = true; + break; + } + } + continue; + } + break; + } + + if (isGlob === true) { + finished = true; + + if (scanToEnd === true) { + continue; + } + + break; + } + } + + if (opts.noext === true) { + isExtglob = false; + isGlob = false; + } + + let base = str; + let prefix = ''; + let glob = ''; + + if (start > 0) { + prefix = str.slice(0, start); + str = str.slice(start); + lastIndex -= start; + } + + if (base && isGlob === true && lastIndex > 0) { + base = str.slice(0, lastIndex); + glob = str.slice(lastIndex); + } else if (isGlob === true) { + base = ''; + glob = str; + } else { + base = str; + } + + if (base && base !== '' && base !== '/' && base !== str) { + if (isPathSeparator(base.charCodeAt(base.length - 1))) { + base = base.slice(0, -1); + } + } + + if (opts.unescape === true) { + if (glob) glob = utils.removeBackslashes(glob); + + if (base && backslashes === true) { + base = utils.removeBackslashes(base); + } + } + + const state = { + prefix, + input, + start, + base, + glob, + isBrace, + isBracket, + isGlob, + isExtglob, + isGlobstar, + negated, + negatedExtglob + }; + + if (opts.tokens === true) { + state.maxDepth = 0; + if (!isPathSeparator(code)) { + tokens.push(token); + } + state.tokens = tokens; + } + + if (opts.parts === true || opts.tokens === true) { + let prevIndex; + + for (let idx = 0; idx < slashes.length; idx++) { + const n = prevIndex ? prevIndex + 1 : start; + const i = slashes[idx]; + const value = input.slice(n, i); + if (opts.tokens) { + if (idx === 0 && start !== 0) { + tokens[idx].isPrefix = true; + tokens[idx].value = prefix; + } else { + tokens[idx].value = value; + } + depth(tokens[idx]); + state.maxDepth += tokens[idx].depth; + } + if (idx !== 0 || value !== '') { + parts.push(value); + } + prevIndex = i; + } + + if (prevIndex && prevIndex + 1 < input.length) { + const value = input.slice(prevIndex + 1); + parts.push(value); + + if (opts.tokens) { + tokens[tokens.length - 1].value = value; + depth(tokens[tokens.length - 1]); + state.maxDepth += tokens[tokens.length - 1].depth; + } + } + + state.slashes = slashes; + state.parts = parts; + } + + return state; +}; + +module.exports = scan; diff --git a/node_modules/picomatch/lib/utils.js b/node_modules/picomatch/lib/utils.js new file mode 100644 index 0000000..c3ca766 --- /dev/null +++ b/node_modules/picomatch/lib/utils.js @@ -0,0 +1,64 @@ +'use strict'; + +const path = require('path'); +const win32 = process.platform === 'win32'; +const { + REGEX_BACKSLASH, + REGEX_REMOVE_BACKSLASH, + REGEX_SPECIAL_CHARS, + REGEX_SPECIAL_CHARS_GLOBAL +} = require('./constants'); + +exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val); +exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str); +exports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str); +exports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\$1'); +exports.toPosixSlashes = str => str.replace(REGEX_BACKSLASH, '/'); + +exports.removeBackslashes = str => { + return str.replace(REGEX_REMOVE_BACKSLASH, match => { + return match === '\\' ? '' : match; + }); +}; + +exports.supportsLookbehinds = () => { + const segs = process.version.slice(1).split('.').map(Number); + if (segs.length === 3 && segs[0] >= 9 || (segs[0] === 8 && segs[1] >= 10)) { + return true; + } + return false; +}; + +exports.isWindows = options => { + if (options && typeof options.windows === 'boolean') { + return options.windows; + } + return win32 === true || path.sep === '\\'; +}; + +exports.escapeLast = (input, char, lastIdx) => { + const idx = input.lastIndexOf(char, lastIdx); + if (idx === -1) return input; + if (input[idx - 1] === '\\') return exports.escapeLast(input, char, idx - 1); + return `${input.slice(0, idx)}\\${input.slice(idx)}`; +}; + +exports.removePrefix = (input, state = {}) => { + let output = input; + if (output.startsWith('./')) { + output = output.slice(2); + state.prefix = './'; + } + return output; +}; + +exports.wrapOutput = (input, state = {}, options = {}) => { + const prepend = options.contains ? '' : '^'; + const append = options.contains ? '' : '$'; + + let output = `${prepend}(?:${input})${append}`; + if (state.negated === true) { + output = `(?:^(?!${output}).*$)`; + } + return output; +}; diff --git a/node_modules/picomatch/package.json b/node_modules/picomatch/package.json new file mode 100644 index 0000000..3db22d4 --- /dev/null +++ b/node_modules/picomatch/package.json @@ -0,0 +1,81 @@ +{ + "name": "picomatch", + "description": "Blazing fast and accurate glob matcher written in JavaScript, with no dependencies and full support for standard and extended Bash glob features, including braces, extglobs, POSIX brackets, and regular expressions.", + "version": "2.3.1", + "homepage": "https://github.com/micromatch/picomatch", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "funding": "https://github.com/sponsors/jonschlinkert", + "repository": "micromatch/picomatch", + "bugs": { + "url": "https://github.com/micromatch/picomatch/issues" + }, + "license": "MIT", + "files": [ + "index.js", + "lib" + ], + "main": "index.js", + "engines": { + "node": ">=8.6" + }, + "scripts": { + "lint": "eslint --cache --cache-location node_modules/.cache/.eslintcache --report-unused-disable-directives --ignore-path .gitignore .", + "mocha": "mocha --reporter dot", + "test": "npm run lint && npm run mocha", + "test:ci": "npm run test:cover", + "test:cover": "nyc npm run mocha" + }, + "devDependencies": { + "eslint": "^6.8.0", + "fill-range": "^7.0.1", + "gulp-format-md": "^2.0.0", + "mocha": "^6.2.2", + "nyc": "^15.0.0", + "time-require": "github:jonschlinkert/time-require" + }, + "keywords": [ + "glob", + "match", + "picomatch" + ], + "nyc": { + "reporter": [ + "html", + "lcov", + "text-summary" + ] + }, + "verb": { + "toc": { + "render": true, + "method": "preWrite", + "maxdepth": 3 + }, + "layout": "empty", + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + }, + "related": { + "list": [ + "braces", + "micromatch" + ] + }, + "reflinks": [ + "braces", + "expand-brackets", + "extglob", + "fill-range", + "micromatch", + "minimatch", + "nanomatch", + "picomatch" + ] + } +} diff --git a/node_modules/pify/index.js b/node_modules/pify/index.js new file mode 100644 index 0000000..7c720eb --- /dev/null +++ b/node_modules/pify/index.js @@ -0,0 +1,68 @@ +'use strict'; + +var processFn = function (fn, P, opts) { + return function () { + var that = this; + var args = new Array(arguments.length); + + for (var i = 0; i < arguments.length; i++) { + args[i] = arguments[i]; + } + + return new P(function (resolve, reject) { + args.push(function (err, result) { + if (err) { + reject(err); + } else if (opts.multiArgs) { + var results = new Array(arguments.length - 1); + + for (var i = 1; i < arguments.length; i++) { + results[i - 1] = arguments[i]; + } + + resolve(results); + } else { + resolve(result); + } + }); + + fn.apply(that, args); + }); + }; +}; + +var pify = module.exports = function (obj, P, opts) { + if (typeof P !== 'function') { + opts = P; + P = Promise; + } + + opts = opts || {}; + opts.exclude = opts.exclude || [/.+Sync$/]; + + var filter = function (key) { + var match = function (pattern) { + return typeof pattern === 'string' ? key === pattern : pattern.test(key); + }; + + return opts.include ? opts.include.some(match) : !opts.exclude.some(match); + }; + + var ret = typeof obj === 'function' ? function () { + if (opts.excludeMain) { + return obj.apply(this, arguments); + } + + return processFn(obj, P, opts).apply(this, arguments); + } : {}; + + return Object.keys(obj).reduce(function (ret, key) { + var x = obj[key]; + + ret[key] = typeof x === 'function' && filter(key) ? processFn(x, P, opts) : x; + + return ret; + }, ret); +}; + +pify.all = pify; diff --git a/node_modules/pify/license b/node_modules/pify/license new file mode 100644 index 0000000..654d0bf --- /dev/null +++ b/node_modules/pify/license @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Sindre Sorhus (sindresorhus.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. diff --git a/node_modules/pify/package.json b/node_modules/pify/package.json new file mode 100644 index 0000000..311d198 --- /dev/null +++ b/node_modules/pify/package.json @@ -0,0 +1,48 @@ +{ + "name": "pify", + "version": "2.3.0", + "description": "Promisify a callback-style function", + "license": "MIT", + "repository": "sindresorhus/pify", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=0.10.0" + }, + "scripts": { + "test": "xo && ava && npm run optimization-test", + "optimization-test": "node --allow-natives-syntax optimization-test.js" + }, + "files": [ + "index.js" + ], + "keywords": [ + "promise", + "promises", + "promisify", + "denodify", + "denodeify", + "callback", + "cb", + "node", + "then", + "thenify", + "convert", + "transform", + "wrap", + "wrapper", + "bind", + "to", + "async", + "es2015" + ], + "devDependencies": { + "ava": "*", + "pinkie-promise": "^1.0.0", + "v8-natives": "0.0.2", + "xo": "*" + } +} diff --git a/node_modules/pify/readme.md b/node_modules/pify/readme.md new file mode 100644 index 0000000..c79ca8b --- /dev/null +++ b/node_modules/pify/readme.md @@ -0,0 +1,119 @@ +# pify [![Build Status](https://travis-ci.org/sindresorhus/pify.svg?branch=master)](https://travis-ci.org/sindresorhus/pify) + +> Promisify a callback-style function + + +## Install + +``` +$ npm install --save pify +``` + + +## Usage + +```js +const fs = require('fs'); +const pify = require('pify'); + +// promisify a single function + +pify(fs.readFile)('package.json', 'utf8').then(data => { + console.log(JSON.parse(data).name); + //=> 'pify' +}); + +// or promisify all methods in a module + +pify(fs).readFile('package.json', 'utf8').then(data => { + console.log(JSON.parse(data).name); + //=> 'pify' +}); +``` + + +## API + +### pify(input, [promiseModule], [options]) + +Returns a promise wrapped version of the supplied function or module. + +#### input + +Type: `function`, `object` + +Callback-style function or module whose methods you want to promisify. + +#### promiseModule + +Type: `function` + +Custom promise module to use instead of the native one. + +Check out [`pinkie-promise`](https://github.com/floatdrop/pinkie-promise) if you need a tiny promise polyfill. + +#### options + +##### multiArgs + +Type: `boolean` +Default: `false` + +By default, the promisified function will only return the second argument from the callback, which works fine for most APIs. This option can be useful for modules like `request` that return multiple arguments. Turning this on will make it return an array of all arguments from the callback, excluding the error argument, instead of just the second argument. + +```js +const request = require('request'); +const pify = require('pify'); + +pify(request, {multiArgs: true})('https://sindresorhus.com').then(result => { + const [httpResponse, body] = result; +}); +``` + +##### include + +Type: `array` of (`string`|`regex`) + +Methods in a module to promisify. Remaining methods will be left untouched. + +##### exclude + +Type: `array` of (`string`|`regex`) +Default: `[/.+Sync$/]` + +Methods in a module **not** to promisify. Methods with names ending with `'Sync'` are excluded by default. + +##### excludeMain + +Type: `boolean` +Default: `false` + +By default, if given module is a function itself, this function will be promisified. Turn this option on if you want to promisify only methods of the module. + +```js +const pify = require('pify'); + +function fn() { + return true; +} + +fn.method = (data, callback) => { + setImmediate(() => { + callback(data, null); + }); +}; + +// promisify methods but not fn() +const promiseFn = pify(fn, {excludeMain: true}); + +if (promiseFn()) { + promiseFn.method('hi').then(data => { + console.log(data); + }); +} +``` + + +## License + +MIT © [Sindre Sorhus](http://sindresorhus.com) diff --git a/node_modules/postcss-cli/LICENSE b/node_modules/postcss-cli/LICENSE new file mode 100644 index 0000000..e4d2d4a --- /dev/null +++ b/node_modules/postcss-cli/LICENSE @@ -0,0 +1,21 @@ +License (MIT) + +Copyright (c) 2016 Michael Ciniawsky + +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. diff --git a/node_modules/postcss-cli/README.md b/node_modules/postcss-cli/README.md new file mode 100644 index 0000000..9dc9a2d --- /dev/null +++ b/node_modules/postcss-cli/README.md @@ -0,0 +1,149 @@ +[![npm][npm]][npm-url] +[![node][node]][node-url] +[![tests][tests]][tests-url] +[![cover][cover]][cover-url] +[![chat][chat]][chat-url] + +
+ + + + +

PostCSS CLI

+
+ +

Install

+ +```bash +npm i -D postcss postcss-cli +``` + +

Usage

+ +``` +Usage: + postcss [input.css] [OPTIONS] [-o|--output output.css] [--watch|-w] + postcss ... [OPTIONS] --dir [--watch|-w] + postcss [OPTIONS] --dir [--watch|-w] + postcss [OPTIONS] --dir [--watch|-w] + postcss ... [OPTIONS] --replace + +Basic options: + -o, --output Output file [string] + -d, --dir Output directory [string] + -r, --replace Replace (overwrite) the input file [boolean] + -m, --map Create an external sourcemap + --no-map Disable the default inline sourcemaps + -w, --watch Watch files for changes and recompile as needed [boolean] + --verbose Be verbose [boolean] + --env A shortcut for setting NODE_ENV [string] + +Options for use without a config file: + -u, --use List of postcss plugins to use [array] + --parser Custom postcss parser [string] + --stringifier Custom postcss stringifier [string] + --syntax Custom postcss syntax [string] + +Options for use with --dir: + --ext Override the output file extension; for use with --dir [string] + --base Mirror the directory structure relative to this path in the output + directory, for use with --dir [string] + +Advanced options: + --include-dotfiles Enable glob to match files/dirs that begin with "." + [boolean] + --poll Use polling for file watching. Can optionally pass polling + interval; default 100 ms + --config Set a custom directory to look for a config file [string] + +Options: + --version Show version number [boolean] + -h, --help Show help [boolean] + +Examples: + postcss input.css -o output.css Basic usage + postcss src/**/*.css --base src --dir build Glob Pattern & output + cat input.css | postcss -u autoprefixer > output.css Piping input & output + +If no input files are passed, it reads from stdin. If neither -o, --dir, or +--replace is passed, it writes to stdout. + +If there are multiple input files, the --dir or --replace option must be passed. + +Input files may contain globs (e.g. src/**/*.css). If you pass an input +directory, it will process all files in the directory and any subdirectories, +respecting the glob pattern. +``` + +> ℹ️ More details on custom parsers, stringifiers and syntaxes, can be found [here](https://github.com/postcss/postcss#syntaxes). + +### [Config](https://github.com/michael-ciniawsky/postcss-load-config) + +If you need to pass options to your plugins, or have a long plugin chain, you'll want to use a configuration file. + +**postcss.config.js** + +```js +module.exports = { + parser: 'sugarss', + plugins: [ + require('postcss-import')({ ...options }), + require('postcss-url')({ url: 'copy', useHash: true }), + ], +} +``` + +Note that you **can not** set the `from` or `to` options for postcss in the config file. They are set automatically based on the CLI arguments. + +### Context + +For more advanced usage, it's recommended to use a function in `postcss.config.js`; this gives you access to the CLI context to dynamically apply options and plugins **per file** + +| Name | Type | Default | Description | +| :-------: | :--------: | :--------------------------------: | :------------------- | +| `env` | `{String}` | `'development'` | process.env.NODE_ENV | +| `file` | `{Object}` | `dirname, basename, extname` | File | +| `options` | `{Object}` | `map, parser, syntax, stringifier` | PostCSS Options | + +**postcss.config.js** + +```js +module.exports = (ctx) => ({ + map: ctx.options.map, + parser: ctx.file.extname === '.sss' ? 'sugarss' : false, + plugins: { + 'postcss-import': { root: ctx.file.dirname }, + cssnano: ctx.env === 'production' ? {} : false, + }, +}) +``` + +> ⚠️ If you want to set options via CLI, it's mandatory to reference `ctx.options` in `postcss.config.js` + +```bash +postcss input.sss -p sugarss -o output.css -m +``` + +**postcss.config.js** + +```js +module.exports = (ctx) => ({ + map: ctx.options.map, + parser: ctx.options.parser, + plugins: { + 'postcss-import': { root: ctx.file.dirname }, + cssnano: ctx.env === 'production' ? {} : false, + }, +}) +``` + +[npm]: https://img.shields.io/npm/v/postcss-cli.svg +[npm-url]: https://npmjs.com/package/postcss-cli +[node]: https://img.shields.io/node/v/postcss-cli.svg +[node-url]: https://nodejs.org/ +[tests]: https://img.shields.io/github/workflow/status/postcss/postcss-cli/Node.js%20CI/master +[tests-url]: https://github.com/postcss/postcss-cli/actions?query=branch%3Amaster +[cover]: https://img.shields.io/coveralls/postcss/postcss-cli/master.svg +[cover-url]: https://coveralls.io/github/postcss/postcss-cli +[chat]: https://img.shields.io/gitter/room/postcss/postcss.svg +[chat-url]: https://gitter.im/postcss/postcss diff --git a/node_modules/postcss-cli/index.js b/node_modules/postcss-cli/index.js new file mode 100755 index 0000000..da052ce --- /dev/null +++ b/node_modules/postcss-cli/index.js @@ -0,0 +1,354 @@ +#!/usr/bin/env node + +import fs from 'fs-extra' +import path from 'path' + +import prettyHrtime from 'pretty-hrtime' +import stdin from 'get-stdin' +import read from 'read-cache' +import pc from 'picocolors' +import { globby } from 'globby' +import slash from 'slash' +import chokidar from 'chokidar' + +import postcss from 'postcss' +import postcssrc from 'postcss-load-config' +import postcssReporter from 'postcss-reporter/lib/formatter.js' + +import argv from './lib/args.js' +import createDependencyGraph from './lib/DependencyGraph.js' +import getMapfile from './lib/getMapfile.js' + +const reporter = postcssReporter() +const depGraph = createDependencyGraph() + +let input = argv._ +const { dir, output } = argv + +if (argv.map) argv.map = { inline: false } + +let cliConfig + +async function buildCliConfig() { + cliConfig = { + options: { + map: argv.map !== undefined ? argv.map : { inline: true }, + parser: argv.parser ? await import(argv.parser) : undefined, + syntax: argv.syntax ? await import(argv.syntax) : undefined, + stringifier: argv.stringifier + ? await import(argv.stringifier) + : undefined, + }, + plugins: argv.use + ? await Promise.all( + argv.use.map(async (plugin) => { + try { + return (await import(plugin)).default() + } catch (e) { + const msg = e.message || `Cannot find module '${plugin}'` + let prefix = msg.includes(plugin) ? '' : ` (${plugin})` + if (e.name && e.name !== 'Error') prefix += `: ${e.name}` + return error(`Plugin Error${prefix}: ${msg}'`) + } + }) + ) + : [], + } +} + +let configFile + +if (argv.env) process.env.NODE_ENV = argv.env +if (argv.config) argv.config = path.resolve(argv.config) + +let { isTTY } = process.stdin + +if (process.env.FORCE_IS_TTY === 'true') { + isTTY = true +} + +if (argv.watch && isTTY) { + process.stdin.on('end', () => process.exit(0)) + process.stdin.resume() +} + +/* istanbul ignore next */ +if (parseInt(postcss().version) < 8) { + error('Please install PostCSS 8 or above') +} + +buildCliConfig() + .then(() => { + if (argv.watch && !(argv.output || argv.replace || argv.dir)) { + error('Cannot write to stdout in watch mode') + // Need to explicitly exit here, since error() doesn't exit in watch mode + process.exit(1) + } + + if (input && input.length) { + return globby( + input.map((i) => slash(String(i))), + { dot: argv.includeDotfiles } + ) + } + + if (argv.replace || argv.dir) { + error( + 'Input Error: Cannot use --dir or --replace when reading from stdin' + ) + } + + if (argv.watch) { + error('Input Error: Cannot run in watch mode when reading from stdin') + } + + return ['stdin'] + }) + .then((i) => { + if (!i || !i.length) { + error('Input Error: You must pass a valid list of files to parse') + } + + if (i.length > 1 && !argv.dir && !argv.replace) { + error( + 'Input Error: Must use --dir or --replace with multiple input files' + ) + } + + if (i[0] !== 'stdin') i = i.map((i) => path.resolve(i)) + + input = i + + return files(input) + }) + .then((results) => { + if (argv.watch) { + const printMessage = () => + printVerbose(pc.dim('\nWaiting for file changes...')) + const watcher = chokidar.watch(input.concat(dependencies(results)), { + usePolling: argv.poll, + interval: argv.poll && typeof argv.poll === 'number' ? argv.poll : 100, + awaitWriteFinish: { + stabilityThreshold: 50, + pollInterval: 10, + }, + }) + + if (configFile) watcher.add(configFile) + + watcher.on('ready', printMessage).on('change', (file) => { + let recompile = [] + + if (input.includes(file)) recompile.push(file) + + const dependants = depGraph + .dependantsOf(file) + .concat(getAncestorDirs(file).flatMap(depGraph.dependantsOf)) + + recompile = recompile.concat( + dependants.filter((file) => input.includes(file)) + ) + + if (!recompile.length) recompile = input + + return files([...new Set(recompile)]) + .then((results) => watcher.add(dependencies(results))) + .then(printMessage) + .catch(error) + }) + } + }) + .catch((err) => { + error(err) + + process.exit(1) + }) + +function rc(ctx, path) { + if (argv.use) return Promise.resolve(cliConfig) + + return postcssrc(ctx, path) + .then((rc) => { + if (rc.options.from || rc.options.to) { + error( + 'Config Error: Can not set from or to options in config file, use CLI arguments instead' + ) + } + configFile = rc.file + return rc + }) + .catch((err) => { + if (!err.message.includes('No PostCSS Config found')) throw err + }) +} + +function files(files) { + if (typeof files === 'string') files = [files] + + return Promise.all( + files.map((file) => { + if (file === 'stdin') { + return stdin().then((content) => { + if (!content) return error('Input Error: Did not receive any STDIN') + return css(content, 'stdin') + }) + } + + return read(file).then((content) => css(content, file)) + }) + ) +} + +function css(css, file) { + const ctx = { options: cliConfig.options } + + if (file !== 'stdin') { + ctx.file = { + dirname: path.dirname(file), + basename: path.basename(file), + extname: path.extname(file), + } + + if (!argv.config) argv.config = path.dirname(file) + } + + const relativePath = + file !== 'stdin' ? path.relative(path.resolve(), file) : file + + if (!argv.config) argv.config = process.cwd() + + const time = process.hrtime() + + printVerbose(pc.cyan(`Processing ${pc.bold(relativePath)}...`)) + + return rc(ctx, argv.config) + .then((config) => { + config = config || cliConfig + const options = { ...config.options } + + if (file === 'stdin' && output) file = output + + // TODO: Unit test this + options.from = file === 'stdin' ? path.join(process.cwd(), 'stdin') : file + + if (output || dir || argv.replace) { + const base = argv.base + ? file.replace(path.resolve(argv.base), '') + : path.basename(file) + options.to = output || (argv.replace ? file : path.join(dir, base)) + + if (argv.ext) { + options.to = options.to.replace(path.extname(options.to), argv.ext) + } + + options.to = path.resolve(options.to) + } + + if (!options.to && config.options.map && !config.options.map.inline) { + error( + 'Output Error: Cannot output external sourcemaps when writing to STDOUT' + ) + } + + return postcss(config.plugins) + .process(css, options) + .then((result) => { + const tasks = [] + + if (options.to) { + tasks.push(outputFile(options.to, result.css)) + + if (result.map) { + const mapfile = getMapfile(options) + tasks.push(outputFile(mapfile, result.map.toString())) + } + } else process.stdout.write(result.css, 'utf8') + + return Promise.all(tasks).then(() => { + const prettyTime = prettyHrtime(process.hrtime(time)) + printVerbose( + pc.green( + `Finished ${pc.bold(relativePath)} in ${pc.bold(prettyTime)}` + ) + ) + + const messages = result.warnings() + if (messages.length) { + console.warn(reporter({ ...result, messages })) + } + + return result + }) + }) + }) + .catch((err) => { + throw err + }) + + async function outputFile(file, string) { + const fileExists = await fs.pathExists(file) + const currentValue = fileExists ? await fs.readFile(file, 'utf8') : null + if (currentValue === string) return + return fs.outputFile(file, string) + } +} + +function dependencies(results) { + if (!Array.isArray(results)) results = [results] + + const messages = [] + + results.forEach((result) => { + if (result.messages <= 0) return + + result.messages + .filter((msg) => + msg.type === 'dependency' || msg.type === 'dir-dependency' ? msg : '' + ) + .map(depGraph.add) + .forEach((dependency) => { + if (dependency.type === 'dir-dependency') { + messages.push( + dependency.glob + ? path.join(dependency.dir, dependency.glob) + : dependency.dir + ) + } else { + messages.push(dependency.file) + } + }) + }) + + return messages +} + +function printVerbose(message) { + if (argv.verbose) console.warn(message) +} + +function error(err) { + // Seperate error from logging output + if (argv.verbose) console.error() + + if (typeof err === 'string') { + console.error(pc.red(err)) + } else if (err.name === 'CssSyntaxError') { + console.error(err.toString()) + } else { + console.error(err) + } + // Watch mode shouldn't exit on error + if (argv.watch) return + process.exit(1) +} + +// Input: '/imports/components/button.css' +// Output: ['/imports/components', '/imports', '/'] +function getAncestorDirs(fileOrDir) { + const { root } = path.parse(fileOrDir) + if (fileOrDir === root) { + return [] + } + const parentDir = path.dirname(fileOrDir) + return [parentDir, ...getAncestorDirs(parentDir)] +} diff --git a/node_modules/postcss-cli/lib/DependencyGraph.js b/node_modules/postcss-cli/lib/DependencyGraph.js new file mode 100644 index 0000000..efb7ac3 --- /dev/null +++ b/node_modules/postcss-cli/lib/DependencyGraph.js @@ -0,0 +1,30 @@ +import path from 'path' +import { DepGraph } from 'dependency-graph' + +export default function createDependencyGraph() { + const graph = new DepGraph() + return { + add(message) { + message.parent = path.resolve(message.parent) + graph.addNode(message.parent) + + if (message.type === 'dir-dependency') { + message.dir = path.resolve(message.dir) + graph.addNode(message.dir) + graph.addDependency(message.parent, message.dir) + } else { + message.file = path.resolve(message.file) + graph.addNode(message.file) + graph.addDependency(message.parent, message.file) + } + + return message + }, + dependantsOf(node) { + node = path.resolve(node) + + if (graph.hasNode(node)) return graph.dependantsOf(node) + return [] + }, + } +} diff --git a/node_modules/postcss-cli/lib/args.js b/node_modules/postcss-cli/lib/args.js new file mode 100644 index 0000000..35f0e83 --- /dev/null +++ b/node_modules/postcss-cli/lib/args.js @@ -0,0 +1,115 @@ +import yargs from 'yargs' + +const { argv } = yargs(process.argv.slice(2)) + .usage( + `Usage: + $0 [input.css] [OPTIONS] [-o|--output output.css] [--watch|-w] + $0 ... [OPTIONS] --dir [--watch|-w] + $0 [OPTIONS] --dir [--watch|-w] + $0 [OPTIONS] --dir [--watch|-w] + $0 ... [OPTIONS] --replace` + ) + .group( + ['o', 'd', 'r', 'map', 'no-map', 'watch', 'verbose', 'env'], + 'Basic options:' + ) + .option('o', { + alias: 'output', + desc: 'Output file', + type: 'string', + conflicts: ['dir', 'replace'], + }) + .option('d', { + alias: 'dir', + desc: 'Output directory', + type: 'string', + conflicts: ['output', 'replace'], + }) + .option('r', { + alias: 'replace', + desc: 'Replace (overwrite) the input file', + type: 'boolean', + conflicts: ['output', 'dir'], + }) + .alias('m', 'map') + .describe('map', 'Create an external sourcemap') + .describe('no-map', 'Disable the default inline sourcemaps') + .option('w', { + alias: 'watch', + desc: 'Watch files for changes and recompile as needed', + type: 'boolean', + conflicts: 'replace', + }) + .option('verbose', { + desc: 'Be verbose', + type: 'boolean', + }) + .option('env', { + desc: 'A shortcut for setting NODE_ENV', + type: 'string', + }) + .group( + ['u', 'parser', 'stringifier', 'syntax'], + 'Options for use without a config file:' + ) + .option('u', { + alias: 'use', + desc: 'List of postcss plugins to use', + type: 'array', + }) + .option('parser', { + desc: 'Custom postcss parser', + type: 'string', + }) + .option('stringifier', { + desc: 'Custom postcss stringifier', + type: 'string', + }) + .option('syntax', { + desc: 'Custom postcss syntax', + type: 'string', + }) + .group(['ext', 'base'], 'Options for use with --dir:') + .option('ext', { + desc: 'Override the output file extension; for use with --dir', + type: 'string', + implies: 'dir', + }) + .option('base', { + desc: 'Mirror the directory structure relative to this path in the output directory, for use with --dir', + type: 'string', + implies: 'dir', + }) + .group(['include-dotfiles', 'poll', 'config'], 'Advanced options:') + .option('include-dotfiles', { + desc: 'Enable glob to match files/dirs that begin with "."', + type: 'boolean', + }) + .option('poll', { + desc: 'Use polling for file watching. Can optionally pass polling interval; default 100 ms', + implies: 'watch', + }) + .option('config', { + desc: 'Set a custom directory to look for a config file', + type: 'string', + }) + .alias('h', 'help') + .example('$0 input.css -o output.css', 'Basic usage') + .example('$0 src/**/*.css --base src --dir build', 'Glob Pattern & output') + .example( + 'cat input.css | $0 -u autoprefixer > output.css', + 'Piping input & output' + ) + .epilog( + `If no input files are passed, it reads from stdin. If neither -o, --dir, or --replace is passed, it writes to stdout. + +If there are multiple input files, the --dir or --replace option must be passed. + +Input files may contain globs (e.g. src/**/*.css). If you pass an input directory, it will process all files in the directory and any subdirectories, respecting the glob pattern. + +For more details, please see https://github.com/postcss/postcss-cli` + ) + +if (argv.ext && argv.ext.indexOf('.') !== 0) argv.ext = `.${argv.ext}` + +export default argv diff --git a/node_modules/postcss-cli/lib/getMapfile.js b/node_modules/postcss-cli/lib/getMapfile.js new file mode 100644 index 0000000..e4d0c93 --- /dev/null +++ b/node_modules/postcss-cli/lib/getMapfile.js @@ -0,0 +1,7 @@ +import path from 'path' +export default function getMapfile(options) { + if (options.map && typeof options.map.annotation === 'string') { + return `${path.dirname(options.to)}/${options.map.annotation}` + } + return `${options.to}.map` +} diff --git a/node_modules/postcss-cli/package.json b/node_modules/postcss-cli/package.json new file mode 100644 index 0000000..1fc3037 --- /dev/null +++ b/node_modules/postcss-cli/package.json @@ -0,0 +1,78 @@ +{ + "name": "postcss-cli", + "version": "10.1.0", + "description": "CLI for PostCSS", + "type": "module", + "engines": { + "node": ">=14" + }, + "bin": { + "postcss": "./index.js" + }, + "scripts": { + "ci": "eslint . && c8 ava -v && npm run prettier -- --list-different", + "clean": "node test/helpers/clean.js", + "prettier": "prettier --single-quote --no-semi \"**/*.{js,md}\"", + "format": "npm run prettier -- --write && eslint . --fix", + "pretest": "npm run clean && npm run format", + "test": "c8 ava -v" + }, + "dependencies": { + "chokidar": "^3.3.0", + "dependency-graph": "^0.11.0", + "fs-extra": "^11.0.0", + "get-stdin": "^9.0.0", + "globby": "^13.0.0", + "picocolors": "^1.0.0", + "postcss-load-config": "^4.0.0", + "postcss-reporter": "^7.0.0", + "pretty-hrtime": "^1.0.3", + "read-cache": "^1.0.0", + "slash": "^5.0.0", + "yargs": "^17.0.0" + }, + "devDependencies": { + "ava": "^3.1.0", + "c8": "^7.9.0", + "coveralls": "^3.0.0", + "eslint": "^8.2.0", + "eslint-config-problems": "7.0.1", + "postcss": "^8.0.4", + "postcss-import": "^15.0.0", + "prettier": "~2.8.0", + "sugarss": "^4.0.0", + "uuid": "^9.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + }, + "files": [ + "index.js", + "lib", + "!**/*.test.js" + ], + "keywords": [ + "cli", + "postcss", + "postcss-runner" + ], + "contributors": [ + { + "name": "Michael Ciniawky", + "email": "michael.ciniawsky@gmail.com" + }, + { + "name": "Ryan Zimmermann", + "email": "opensrc@ryanzim.com" + } + ], + "repository": { + "type": "git", + "url": "https://github.com/postcss/postcss-cli.git" + }, + "bugs": { + "url": "https://github.com/postcss/postcss-cli/issues" + }, + "homepage": "https://github.com/postcss/postcss-cli#readme", + "license": "MIT" +} diff --git a/node_modules/postcss-load-config/LICENSE b/node_modules/postcss-load-config/LICENSE new file mode 100644 index 0000000..458e8a3 --- /dev/null +++ b/node_modules/postcss-load-config/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright Michael Ciniawsky + +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. diff --git a/node_modules/postcss-load-config/README.md b/node_modules/postcss-load-config/README.md new file mode 100644 index 0000000..9de4de2 --- /dev/null +++ b/node_modules/postcss-load-config/README.md @@ -0,0 +1,466 @@ + + +
+ + + + + +

Load Config

+
+ +

Install

+ +```bash +npm i -D postcss-load-config +``` + +

Usage

+ +```bash +npm i -S|-D postcss-plugin +``` + +Install all required PostCSS plugins and save them to your **package.json** `dependencies`/`devDependencies` + +Then create a PostCSS config file by choosing one of the following formats + +### `package.json` + +Create a **`postcss`** section in your project's **`package.json`** + +``` +Project (Root) + |– client + |– public + | + |- package.json +``` + +```json +{ + "postcss": { + "parser": "sugarss", + "map": false, + "plugins": { + "postcss-plugin": {} + } + } +} +``` + +### `.postcssrc` + +Create a **`.postcssrc`** file in JSON or YAML format + +> ℹ️ It's recommended to use an extension (e.g **`.postcssrc.json`** or **`.postcssrc.yml`**) instead of `.postcssrc` + +``` +Project (Root) + |– client + |– public + | + |- (.postcssrc|.postcssrc.json|.postcssrc.yml) + |- package.json +``` + +**`.postcssrc.json`** +```json +{ + "parser": "sugarss", + "map": false, + "plugins": { + "postcss-plugin": {} + } +} +``` + +**`.postcssrc.yml`** +```yaml +parser: sugarss +map: false +plugins: + postcss-plugin: {} +``` + +### `.postcssrc.js` or `postcss.config.js` + +You may need some logic within your config. +In this case create JS file named: +- `.postcssrc.js` +- `.postcssrc.mjs` +- `.postcssrc.cjs` +- `.postcssrc.ts` +- `.postcssrc.cts` +- `postcss.config.js` +- `postcss.config.mjs` +- `postcss.config.cjs` +- `postcss.config.ts` +- `postcss.config.cts` + +``` +Project (Root) + |– client + |– public + |- (.postcssrc|postcss.config).(js|mjs|cjs|ts|cts) + |- package.json +``` + +You can export the config as an `{Object}` + +**.postcssrc.js** +```js +module.exports = { + parser: 'sugarss', + map: false, + plugins: { + 'postcss-plugin': {} + } +} +``` + +Or export a `{Function}` that returns the config (more about the `ctx` param below) + +**.postcssrc.js** +```js +module.exports = (ctx) => ({ + parser: ctx.parser ? 'sugarss' : false, + map: ctx.env === 'development' ? ctx.map : false, + plugins: { + 'postcss-plugin': ctx.options.plugin + } +}) +``` + +Plugins can be loaded either using an `{Object}` or an `{Array}` + +#### `{Object}` + +**.postcssrc.js** +```js +module.exports = ({ env }) => ({ + ...options, + plugins: { + 'postcss-plugin': env === 'production' ? {} : false + } +}) +``` + +> ℹ️ When using an `{Object}`, the key can be a Node.js module name, a path to a JavaScript file that is relative to the directory of the PostCSS config file, or an absolute path to a JavaScript file. + +#### `{Array}` + +**.postcssrc.js** +```js +module.exports = ({ env }) => ({ + ...options, + plugins: [ + env === 'production' ? require('postcss-plugin')() : false + ] +}) +``` +> :warning: When using an `{Array}`, make sure to `require()` each plugin + +

Options

+ +|Name|Type|Default|Description| +|:--:|:--:|:-----:|:----------| +|[**`to`**](#to)|`{String}`|`undefined`|Destination File Path| +|[**`map`**](#map)|`{String\|Object}`|`false`|Enable/Disable Source Maps| +|[**`from`**](#from)|`{String}`|`undefined`|Source File Path| +|[**`parser`**](#parser)|`{String\|Function}`|`false`|Custom PostCSS Parser| +|[**`syntax`**](#syntax)|`{String\|Function}`|`false`|Custom PostCSS Syntax| +|[**`stringifier`**](#stringifier)|`{String\|Function}`|`false`|Custom PostCSS Stringifier| + +### `parser` + +**.postcssrc.js** +```js +module.exports = { + parser: 'sugarss' +} +``` + +### `syntax` + +**.postcssrc.js** +```js +module.exports = { + syntax: 'postcss-scss' +} +``` + +### `stringifier` + +**.postcssrc.js** +```js +module.exports = { + stringifier: 'midas' +} +``` + +### [**`map`**](https://github.com/postcss/postcss/blob/master/docs/source-maps.md) + +**.postcssrc.js** +```js +module.exports = { + map: 'inline' +} +``` + +> :warning: In most cases `options.from` && `options.to` are set by the third-party which integrates this package (CLI, gulp, webpack). It's unlikely one needs to set/use `options.from` && `options.to` within a config file. Unless you're a third-party plugin author using this module and its Node API directly **dont't set `options.from` && `options.to` yourself** + +### `to` + +```js +module.exports = { + to: 'path/to/dest.css' +} +``` + +### `from` + +```js +module.exports = { + from: 'path/to/src.css' +} +``` + +

Plugins

+ +### `{} || null` + +The plugin will be loaded with defaults + +```js +'postcss-plugin': {} || null +``` + +**.postcssrc.js** +```js +module.exports = { + plugins: { + 'postcss-plugin': {} || null + } +} +``` + +> :warning: `{}` must be an **empty** `{Object}` literal + +### `{Object}` + +The plugin will be loaded with given options + +```js +'postcss-plugin': { option: '', option: '' } +``` + +**.postcssrc.js** +```js +module.exports = { + plugins: { + 'postcss-plugin': { option: '', option: '' } + } +} +``` + +### `false` + +The plugin will not be loaded + +```js +'postcss-plugin': false +``` + +**.postcssrc.js** +```js +module.exports = { + plugins: { + 'postcss-plugin': false + } +} +``` + +### `Ordering` + +Plugin **execution order** is determined by declaration in the plugins section (**top-down**) + +```js +{ + plugins: { + 'postcss-plugin': {}, // [0] + 'postcss-plugin': {}, // [1] + 'postcss-plugin': {} // [2] + } +} +``` + +

Context

+ +When using a `{Function}` (`postcss.config.js` or `.postcssrc.js`), it's possible to pass context to `postcss-load-config`, which will be evaluated while loading your config. By default `ctx.env (process.env.NODE_ENV)` and `ctx.cwd (process.cwd())` are available on the `ctx` `{Object}` + +> ℹ️ Most third-party integrations add additional properties to the `ctx` (e.g `postcss-loader`). Check the specific module's README for more information about what is available on the respective `ctx` + +

Examples

+ +**postcss.config.js** + +```js +module.exports = (ctx) => ({ + parser: ctx.parser ? 'sugarss' : false, + map: ctx.env === 'development' ? ctx.map : false, + plugins: { + 'postcss-import': {}, + 'postcss-nested': {}, + cssnano: ctx.env === 'production' ? {} : false + } +}) +``` + +
+ +
+ +```json +"scripts": { + "build": "NODE_ENV=production node postcss", + "start": "NODE_ENV=development node postcss" +} +``` + +```js +const { readFileSync } = require('fs') + +const postcss = require('postcss') +const postcssrc = require('postcss-load-config') + +const css = readFileSync('index.sss', 'utf8') + +const ctx = { parser: true, map: 'inline' } + +postcssrc(ctx).then(({ plugins, options }) => { + postcss(plugins) + .process(css, options) + .then((result) => console.log(result.css)) +}) +``` + +
+ +
+ +```json +"scripts": { + "build": "NODE_ENV=production gulp", + "start": "NODE_ENV=development gulp" +} +``` + +```js +const { task, src, dest, series, watch } = require('gulp') + +const postcss = require('gulp-postcssrc') + +const css = () => { + src('src/*.css') + .pipe(postcss()) + .pipe(dest('dest')) +}) + +task('watch', () => { + watch(['src/*.css', 'postcss.config.js'], css) +}) + +task('default', series(css, 'watch')) +``` + +
+ +
+ +```json +"scripts": { + "build": "NODE_ENV=production webpack", + "start": "NODE_ENV=development webpack-dev-server" +} +``` + +**webpack.config.js** +```js +module.exports = (env) => ({ + module: { + rules: [ + { + test: /\.css$/, + use: [ + 'style-loader', + 'css-loader', + 'postcss-loader' + ] + } + ] + } +}) +``` + +

Maintainers

+ + + + + + + + +
+ +
+ Michael Ciniawsky +
+ +
+ Mateusz Derks +
+ +

Contributors

+ + + + + + + + + + +
+ +
+ Ryan Dunckel +
+ +
+ Patrick Gilday +
+ +
+ Dalton Santos +
+ +
+ François Wouts +
= 14" + }, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + }, + "postcss": { + "optional": true + } + }, + "keywords": [ + "postcss", + "postcssrc", + "postcss.config.js" + ], + "author": "Michael Ciniawky ", + "contributors": [ + "Ryan Dunckel", + "Mateusz Derks", + "Dalton Santos", + "Patrick Gilday", + "François Wouts" + ], + "repository": "postcss/postcss-load-config", + "license": "MIT" +} diff --git a/node_modules/postcss-load-config/src/index.d.ts b/node_modules/postcss-load-config/src/index.d.ts new file mode 100644 index 0000000..4979220 --- /dev/null +++ b/node_modules/postcss-load-config/src/index.d.ts @@ -0,0 +1,65 @@ +// based on @types/postcss-load-config@2.0.1 +// Type definitions for postcss-load-config 2.1 +import Processor from 'postcss/lib/processor'; +import { Plugin, ProcessOptions, Transformer } from 'postcss'; +import { Options as ConfigOptions } from "lilconfig"; + +declare function postcssrc( + ctx?: postcssrc.ConfigContext, + path?: string, + options?: ConfigOptions +): Promise; + +declare namespace postcssrc { + // In the ConfigContext, these three options can be instances of the + // appropriate class, or strings. If they are strings, postcss-load-config will + // require() them and pass the instances along. + export interface ProcessOptionsPreload { + parser?: string | ProcessOptions['parser']; + stringifier?: string | ProcessOptions['stringifier']; + syntax?: string | ProcessOptions['syntax']; + } + + // The remaining ProcessOptions, sans the three above. + export type RemainingProcessOptions = Pick< + ProcessOptions, + Exclude + >; + + // Additional context options that postcss-load-config understands. + export interface Context { + cwd?: string; + env?: string; + } + + // The full shape of the ConfigContext. + export type ConfigContext = Context & + ProcessOptionsPreload & + RemainingProcessOptions; + + // Result of postcssrc is a Promise containing the filename plus the options + // and plugins that are ready to pass on to postcss. + export type ResultPlugin = Plugin | Transformer | Processor; + + export interface Result { + file: string; + options: ProcessOptions; + plugins: ResultPlugin[]; + } + + export type ConfigPlugin = Transformer | Plugin | Processor; + + export interface Config { + parser?: string | ProcessOptions['parser'] | false; + stringifier?: string | ProcessOptions['stringifier'] | false; + syntax?: string | ProcessOptions['syntax'] | false; + map?: string | false; + from?: string; + to?: string; + plugins?: Array | Record; + } + + export type ConfigFn = (ctx: ConfigContext) => Config | Promise; +} + +export = postcssrc; diff --git a/node_modules/postcss-load-config/src/index.js b/node_modules/postcss-load-config/src/index.js new file mode 100644 index 0000000..ce86aaa --- /dev/null +++ b/node_modules/postcss-load-config/src/index.js @@ -0,0 +1,185 @@ +'use strict' + +const resolve = require('path').resolve +const url = require('url') + +const config = require('lilconfig') +const yaml = require('yaml') + +const loadOptions = require('./options.js') +const loadPlugins = require('./plugins.js') + +/* istanbul ignore next */ +const interopRequireDefault = (obj) => obj && obj.__esModule ? obj : { default: obj } + +/** + * Process the result from cosmiconfig + * + * @param {Object} ctx Config Context + * @param {Object} result Cosmiconfig result + * + * @return {Object} PostCSS Config + */ +const processResult = (ctx, result) => { + const file = result.filepath || '' + let config = interopRequireDefault(result.config).default || {} + + if (typeof config === 'function') { + config = config(ctx) + } else { + config = Object.assign({}, config, ctx) + } + + if (!config.plugins) { + config.plugins = [] + } + + return { + plugins: loadPlugins(config, file), + options: loadOptions(config, file), + file + } +} + +/** + * Builds the Config Context + * + * @param {Object} ctx Config Context + * + * @return {Object} Config Context + */ +const createContext = (ctx) => { + /** + * @type {Object} + * + * @prop {String} cwd=process.cwd() Config search start location + * @prop {String} env=process.env.NODE_ENV Config Enviroment, will be set to `development` by `postcss-load-config` if `process.env.NODE_ENV` is `undefined` + */ + ctx = Object.assign({ + cwd: process.cwd(), + env: process.env.NODE_ENV + }, ctx) + + if (!ctx.env) { + process.env.NODE_ENV = 'development' + } + + return ctx +} + +const importDefault = async filepath => { + const module = await import(url.pathToFileURL(filepath).href) + return module.default +} + +const addTypeScriptLoader = (options = {}, loader) => { + const moduleName = 'postcss' + + return { + ...options, + searchPlaces: [ + ...(options.searchPlaces || []), + 'package.json', + `.${moduleName}rc`, + `.${moduleName}rc.json`, + `.${moduleName}rc.yaml`, + `.${moduleName}rc.yml`, + `.${moduleName}rc.ts`, + `.${moduleName}rc.cts`, + `.${moduleName}rc.js`, + `.${moduleName}rc.cjs`, + `.${moduleName}rc.mjs`, + `${moduleName}.config.ts`, + `${moduleName}.config.cts`, + `${moduleName}.config.js`, + `${moduleName}.config.cjs`, + `${moduleName}.config.mjs` + ], + loaders: { + ...options.loaders, + '.yaml': (filepath, content) => yaml.parse(content), + '.yml': (filepath, content) => yaml.parse(content), + '.js': importDefault, + '.cjs': importDefault, + '.mjs': importDefault, + '.ts': loader, + '.cts': loader + } + } +} + +const withTypeScriptLoader = (rcFunc) => { + return (ctx, path, options) => { + return rcFunc(ctx, path, addTypeScriptLoader(options, (configFile) => { + let registerer = { enabled () {} } + + try { + // Register TypeScript compiler instance + registerer = require('ts-node').register({ + // transpile to cjs even if compilerOptions.module in tsconfig is not Node16/NodeNext. + moduleTypes: { '**/*.cts': 'cjs' } + }) + + return require(configFile) + } catch (err) { + if (err.code === 'MODULE_NOT_FOUND') { + throw new Error( + `'ts-node' is required for the TypeScript configuration files. Make sure it is installed\nError: ${err.message}` + ) + } + + throw err + } finally { + registerer.enabled(false) + } + })) + } +} + +/** + * Load Config + * + * @method rc + * + * @param {Object} ctx Config Context + * @param {String} path Config Path + * @param {Object} options Config Options + * + * @return {Promise} config PostCSS Config + */ +const rc = withTypeScriptLoader((ctx, path, options) => { + /** + * @type {Object} The full Config Context + */ + ctx = createContext(ctx) + + /** + * @type {String} `process.cwd()` + */ + path = path ? resolve(path) : process.cwd() + + return config.lilconfig('postcss', options) + .search(path) + .then((result) => { + if (!result) { + throw new Error(`No PostCSS Config found in: ${path}`) + } + + return processResult(ctx, result) + }) +}) + +/** + * Autoload Config for PostCSS + * + * @author Michael Ciniawsky @michael-ciniawsky + * @license MIT + * + * @module postcss-load-config + * @version 2.1.0 + * + * @requires comsiconfig + * @requires ./options + * @requires ./plugins + */ +module.exports = rc diff --git a/node_modules/postcss-load-config/src/options.js b/node_modules/postcss-load-config/src/options.js new file mode 100644 index 0000000..d3ef2d6 --- /dev/null +++ b/node_modules/postcss-load-config/src/options.js @@ -0,0 +1,47 @@ +'use strict' + +const req = require('./req.js') + +/** + * Load Options + * + * @private + * @method options + * + * @param {Object} config PostCSS Config + * + * @return {Object} options PostCSS Options + */ +const options = (config, file) => { + if (config.parser && typeof config.parser === 'string') { + try { + config.parser = req(config.parser, file) + } catch (err) { + throw new Error(`Loading PostCSS Parser failed: ${err.message}\n\n(@${file})`) + } + } + + if (config.syntax && typeof config.syntax === 'string') { + try { + config.syntax = req(config.syntax, file) + } catch (err) { + throw new Error(`Loading PostCSS Syntax failed: ${err.message}\n\n(@${file})`) + } + } + + if (config.stringifier && typeof config.stringifier === 'string') { + try { + config.stringifier = req(config.stringifier, file) + } catch (err) { + throw new Error(`Loading PostCSS Stringifier failed: ${err.message}\n\n(@${file})`) + } + } + + if (config.plugins) { + delete config.plugins + } + + return config +} + +module.exports = options diff --git a/node_modules/postcss-load-config/src/plugins.js b/node_modules/postcss-load-config/src/plugins.js new file mode 100644 index 0000000..6cb994b --- /dev/null +++ b/node_modules/postcss-load-config/src/plugins.js @@ -0,0 +1,85 @@ +'use strict' + +const req = require('./req.js') + +/** + * Plugin Loader + * + * @private + * @method load + * + * @param {String} plugin PostCSS Plugin Name + * @param {Object} options PostCSS Plugin Options + * + * @return {Function} PostCSS Plugin + */ +const load = (plugin, options, file) => { + try { + if ( + options === null || + options === undefined || + Object.keys(options).length === 0 + ) { + return req(plugin, file) + } else { + return req(plugin, file)(options) + } + } catch (err) { + throw new Error(`Loading PostCSS Plugin failed: ${err.message}\n\n(@${file})`) + } +} + +/** + * Load Plugins + * + * @private + * @method plugins + * + * @param {Object} config PostCSS Config Plugins + * + * @return {Array} plugins PostCSS Plugins + */ +const plugins = (config, file) => { + let plugins = [] + + if (Array.isArray(config.plugins)) { + plugins = config.plugins.filter(Boolean) + } else { + plugins = Object.keys(config.plugins) + .filter((plugin) => { + return config.plugins[plugin] !== false ? plugin : '' + }) + .map((plugin) => { + return load(plugin, config.plugins[plugin], file) + }) + } + + if (plugins.length && plugins.length > 0) { + plugins.forEach((plugin, i) => { + if (plugin.default) { + plugin = plugin.default + } + + if (plugin.postcss === true) { + plugin = plugin() + } else if (plugin.postcss) { + plugin = plugin.postcss + } + + if ( + // eslint-disable-next-line + !( + (typeof plugin === 'object' && Array.isArray(plugin.plugins)) || + (typeof plugin === 'object' && plugin.postcssPlugin) || + (typeof plugin === 'function') + ) + ) { + throw new TypeError(`Invalid PostCSS Plugin found at: plugins[${i}]\n\n(@${file})`) + } + }) + } + + return plugins +} + +module.exports = plugins diff --git a/node_modules/postcss-load-config/src/req.js b/node_modules/postcss-load-config/src/req.js new file mode 100644 index 0000000..42020c9 --- /dev/null +++ b/node_modules/postcss-load-config/src/req.js @@ -0,0 +1,10 @@ +// eslint-disable-next-line n/no-deprecated-api +const { createRequire, createRequireFromPath } = require('module') + +function req (name, rootFile) { + const create = createRequire || createRequireFromPath + const require = create(rootFile) + return require(name) +} + +module.exports = req diff --git a/node_modules/postcss-reporter/LICENSE b/node_modules/postcss-reporter/LICENSE new file mode 100644 index 0000000..6d347c0 --- /dev/null +++ b/node_modules/postcss-reporter/LICENSE @@ -0,0 +1,22 @@ +The MIT License (MIT) + +Copyright (c) 2015 David Clark + +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. + diff --git a/node_modules/postcss-reporter/README.md b/node_modules/postcss-reporter/README.md new file mode 100644 index 0000000..5222656 --- /dev/null +++ b/node_modules/postcss-reporter/README.md @@ -0,0 +1,12 @@ +# postcss-reporter + +A PostCSS plugin to `console.log()` the messages (warnings, etc.) registered by other PostCSS plugins. + +--- + +**SEEKING A NEW MAINTAINER!** Interested in contributing to the ecosystem of PostCSS and Stylelint? Please open an issue if you'd like to take over maintenance of this package. + +--- + +## Docs +Read full docs **[here](https://github.com/postcss/postcss-reporter#readme)**. diff --git a/node_modules/postcss-reporter/index.js b/node_modules/postcss-reporter/index.js new file mode 100644 index 0000000..01116aa --- /dev/null +++ b/node_modules/postcss-reporter/index.js @@ -0,0 +1,4 @@ +var reporter = require('./lib/reporter'); + +module.exports = reporter; +module.exports.postcss = true; diff --git a/node_modules/postcss-reporter/lib/formatter.js b/node_modules/postcss-reporter/lib/formatter.js new file mode 100644 index 0000000..300efad --- /dev/null +++ b/node_modules/postcss-reporter/lib/formatter.js @@ -0,0 +1,93 @@ +var pico = require('picocolors'); +var path = require('path'); +var firstBy = require('thenby'); +var util = require('./util'); + +function createSortFunction(positionless, sortByPosition) { + var positionValue = 0 + + if (positionless === 'any') { positionValue = 1; } + if (positionless === 'first') { positionValue = 2; } + if (positionless === 'last') { positionValue = 0; } + + var sortFunction = firstBy((m) => { + if (!m.line) return 1; + return positionValue; + }) + + if (sortByPosition) { + sortFunction = sortFunction.thenBy('line').thenBy('column'); + } + + return sortFunction; +} + +module.exports = function (opts) { + var options = opts || {}; + var sortByPosition = + typeof options.sortByPosition !== 'undefined' + ? options.sortByPosition + : true; + var positionless = options.positionless || 'first'; + + var sortFunction = createSortFunction(positionless, sortByPosition); + + return function (input) { + var messages = input.messages.filter(function (message) { + return typeof message.text === 'string'; + }); + var source = input.source; + + if (!messages.length) return ''; + + var orderedMessages = messages.sort(sortFunction); + + var output = '\n'; + + if (source) { + output += pico.bold(pico.underline(logFrom(source))) + '\n'; + } + + orderedMessages.forEach(function (w) { + output += messageToString(w) + '\n'; + }); + + return output; + + function messageToString(message) { + var location = util.getLocation(message); + var str = ''; + + if (location.line) { + str += pico.bold(location.line); + } + + if (location.column) { + str += pico.bold(':' + location.column); + } + + if (location.line || location.column) { + str += '\t'; + } + + if (!options.noIcon) { + if (message.type === 'warning') { + str += pico.yellow(util.warningSymbol + ' '); + } else if (message.type === 'error') { + str += pico.red(util.errorSymbol + ' '); + } + } + + str += message.text; + if (!options.noPlugin) { + str += pico.yellow(' [' + message.plugin + ']'); + } + return str; + } + + function logFrom(fromValue) { + if (fromValue.charAt(0) === '<') return fromValue; + return path.relative(process.cwd(), fromValue).split(path.sep).join('/'); + } + }; +}; diff --git a/node_modules/postcss-reporter/lib/reporter.js b/node_modules/postcss-reporter/lib/reporter.js new file mode 100644 index 0000000..ae709c7 --- /dev/null +++ b/node_modules/postcss-reporter/lib/reporter.js @@ -0,0 +1,111 @@ +var defaultFormatter = require('./formatter'); +var pico = require('picocolors'); +var util = require('./util'); + +module.exports = function (opts = {}) { + var formatter = + opts.formatter || + defaultFormatter({ + noIcon: opts.noIcon, + noPlugin: opts.noPlugin, + }); + + var pluginFilter; + if (!opts.plugins) { + // Every plugin + pluginFilter = function () { + return true; + }; + } else if ( + opts.plugins.every(function (plugin) { + return plugin[0] === '!'; + }) + ) { + // Deny list + pluginFilter = function (message) { + return opts.plugins.indexOf('!' + message.plugin) === -1; + }; + } else { + // Allow list + pluginFilter = function (message) { + return opts.plugins.indexOf(message.plugin) !== -1; + }; + } + + var messageFilter = opts.filter || ((message) => message.type === 'warning' || message.type === 'error'); + + return { + postcssPlugin: 'postcss-reporter', + OnceExit(css, { result }) { + var messagesToLog = result.messages + .filter(pluginFilter) + .filter(messageFilter); + + var resultSource = !result.root.source + ? '' + : result.root.source.input.file || result.root.source.input.id; + + let errorCount = 0; + let warningCount = 0; + + var sourceGroupedMessages = messagesToLog.reduce((grouped, message) => { + const key = util.getLocation(message).file || resultSource; + + if (!grouped.hasOwnProperty(key)) { + grouped[key] = []; + } + + if (message.type === 'error') { + errorCount++; + } else if (message.type === 'warning') { + warningCount++; + } + + grouped[key].push(message); + + return grouped; + }, {}); + + var report = ''; + for (const source in sourceGroupedMessages) { + if (sourceGroupedMessages.hasOwnProperty(source)) { + report += formatter({ + messages: sourceGroupedMessages[source], + source: source, + }); + } + } + + if (opts.clearReportedMessages) { + result.messages = result.messages.filter(message => !messagesToLog.includes(message)); + } + + if (opts.clearAllMessages) { + var messagesToClear = result.messages.filter(pluginFilter); + result.messages = result.messages.filter(message => !messagesToClear.includes(message)); + } + + if (!report) return; + + const summaryColor = errorCount > 0 ? 'red' : 'yellow'; + const summarySymbol = errorCount > 0 ? util.errorSymbol : util.warningSymbol; + const summary = `${summarySymbol} ${messagesToLog.length} ${util.plur('problem', messagesToLog.length)} (${errorCount} ${util.plur('error')}, ${warningCount} ${util.plur('warning')})` + + report += `\n ${pico[summaryColor](pico.bold(summary))}\n`; + + console.log(report); + + if (shouldThrowError()) { + throw new Error( + pico.red( + pico.bold('\n** postcss-reporter: warnings or errors were found **') + ) + ); + } + + function shouldThrowError() { + return opts.throwError || errorCount > 0; + } + }, + }; +}; diff --git a/node_modules/postcss-reporter/lib/util.js b/node_modules/postcss-reporter/lib/util.js new file mode 100644 index 0000000..5433491 --- /dev/null +++ b/node_modules/postcss-reporter/lib/util.js @@ -0,0 +1,31 @@ +var supportsLargeCharset = + process.platform !== 'win32' || + process.env.CI || + process.env.TERM === 'xterm-256color'; + +exports.getLocation = function (message) { + var messageNode = message.node; + + var location = { + line: message.line, + column: message.column, + }; + + var messageInput = messageNode && messageNode.source && messageNode.source.input; + + if (!messageInput) return location; + + var originLocation = + messageInput.origin && messageInput.origin(message.line, message.column); + if (originLocation) return originLocation; + + location.file = messageInput.file || messageInput.id; + return location; +}; + +exports.plur = function plur(word, count) { + return (count === 1 ? word : `${word}s`); +} + +exports.warningSymbol = supportsLargeCharset ? '⚠' : '!!'; +exports.errorSymbol = supportsLargeCharset ? '✖' : 'xx'; diff --git a/node_modules/postcss-reporter/package.json b/node_modules/postcss-reporter/package.json new file mode 100644 index 0000000..1d4c48f --- /dev/null +++ b/node_modules/postcss-reporter/package.json @@ -0,0 +1,37 @@ +{ + "name": "postcss-reporter", + "version": "7.1.0", + "description": "Log PostCSS messages in the console", + "main": "index.js", + "files": [ + "index.js", + "lib" + ], + "engines": { + "node": ">=10" + }, + "repository": "postcss/postcss-reporter", + "author": { + "name": "David Clark", + "email": "david.dave.clark@gmail.com", + "url": "https://davidtheclark.com" + }, + "license": "MIT", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peerDependencies": { + "postcss": "^8.1.0" + }, + "dependencies": { + "picocolors": "^1.0.0", + "thenby": "^1.3.4" + } +} diff --git a/node_modules/postcss-selector-parser/API.md b/node_modules/postcss-selector-parser/API.md new file mode 100644 index 0000000..c8e55ee --- /dev/null +++ b/node_modules/postcss-selector-parser/API.md @@ -0,0 +1,872 @@ +# API Documentation + +*Please use only this documented API when working with the parser. Methods +not documented here are subject to change at any point.* + +## `parser` function + +This is the module's main entry point. + +```js +const parser = require('postcss-selector-parser'); +``` + +### `parser([transform], [options])` + +Creates a new `processor` instance + +```js +const processor = parser(); +``` + +Or, with optional transform function + +```js +const transform = selectors => { + selectors.walkUniversals(selector => { + selector.remove(); + }); +}; + +const processor = parser(transform) + +// Example +const result = processor.processSync('*.class'); +// => .class +``` + +[See processor documentation](#processor) + +Arguments: + +* `transform (function)`: Provide a function to work with the parsed AST. +* `options (object)`: Provide default options for all calls on the returned `Processor`. + +### `parser.attribute([props])` + +Creates a new attribute selector. + +```js +parser.attribute({attribute: 'href'}); +// => [href] +``` + +Arguments: + +* `props (object)`: The new node's properties. + +### `parser.className([props])` + +Creates a new class selector. + +```js +parser.className({value: 'button'}); +// => .button +``` + +Arguments: + +* `props (object)`: The new node's properties. + +### `parser.combinator([props])` + +Creates a new selector combinator. + +```js +parser.combinator({value: '+'}); +// => + +``` + +Arguments: + +* `props (object)`: The new node's properties. + +Notes: +* **Descendant Combinators** The value of descendant combinators created by the + parser always just a single space (`" "`). For descendant selectors with no + comments, additional space is now stored in `node.spaces.before`. Depending + on the location of comments, additional spaces may be stored in + `node.raws.spaces.before`, `node.raws.spaces.after`, or `node.raws.value`. +* **Named Combinators** Although, nonstandard and unlikely to ever become a standard, + named combinators like `/deep/` and `/for/` are parsed as combinators. The + `node.value` is name after being unescaped and normalized as lowercase. The + original value for the combinator name is stored in `node.raws.value`. + + +### `parser.comment([props])` + +Creates a new comment. + +```js +parser.comment({value: '/* Affirmative, Dave. I read you. */'}); +// => /* Affirmative, Dave. I read you. */ +``` + +Arguments: + +* `props (object)`: The new node's properties. + +### `parser.id([props])` + +Creates a new id selector. + +```js +parser.id({value: 'search'}); +// => #search +``` + +Arguments: + +* `props (object)`: The new node's properties. + +### `parser.nesting([props])` + +Creates a new nesting selector. + +```js +parser.nesting(); +// => & +``` + +Arguments: + +* `props (object)`: The new node's properties. + +### `parser.pseudo([props])` + +Creates a new pseudo selector. + +```js +parser.pseudo({value: '::before'}); +// => ::before +``` + +Arguments: + +* `props (object)`: The new node's properties. + +### `parser.root([props])` + +Creates a new root node. + +```js +parser.root(); +// => (empty) +``` + +Arguments: + +* `props (object)`: The new node's properties. + +### `parser.selector([props])` + +Creates a new selector node. + +```js +parser.selector(); +// => (empty) +``` + +Arguments: + +* `props (object)`: The new node's properties. + +### `parser.string([props])` + +Creates a new string node. + +```js +parser.string(); +// => (empty) +``` + +Arguments: + +* `props (object)`: The new node's properties. + +### `parser.tag([props])` + +Creates a new tag selector. + +```js +parser.tag({value: 'button'}); +// => button +``` + +Arguments: + +* `props (object)`: The new node's properties. + +### `parser.universal([props])` + +Creates a new universal selector. + +```js +parser.universal(); +// => * +``` + +Arguments: + +* `props (object)`: The new node's properties. + +## Node types + +### `node.type` + +A string representation of the selector type. It can be one of the following; +`attribute`, `class`, `combinator`, `comment`, `id`, `nesting`, `pseudo`, +`root`, `selector`, `string`, `tag`, or `universal`. Note that for convenience, +these constants are exposed on the main `parser` as uppercased keys. So for +example you can get `id` by querying `parser.ID`. + +```js +parser.attribute({attribute: 'href'}).type; +// => 'attribute' +``` + +### `node.parent` + +Returns the parent node. + +```js +root.nodes[0].parent === root; +``` + +### `node.toString()`, `String(node)`, or `'' + node` + +Returns a string representation of the node. + +```js +const id = parser.id({value: 'search'}); +console.log(String(id)); +// => #search +``` + +### `node.next()` & `node.prev()` + +Returns the next/previous child of the parent node. + +```js +const next = id.next(); +if (next && next.type !== 'combinator') { + throw new Error('Qualified IDs are not allowed!'); +} +``` + +### `node.replaceWith(node)` + +Replace a node with another. + +```js +const attr = selectors.first.first; +const className = parser.className({value: 'test'}); +attr.replaceWith(className); +``` + +Arguments: + +* `node`: The node to substitute the original with. + +### `node.remove()` + +Removes the node from its parent node. + +```js +if (node.type === 'id') { + node.remove(); +} +``` + +### `node.clone([opts])` + +Returns a copy of a node, detached from any parent containers that the +original might have had. + +```js +const cloned = node.clone(); +``` + +### `node.isAtPosition(line, column)` + +Return a `boolean` indicating whether this node includes the character at the +position of the given line and column. Returns `undefined` if the nodes lack +sufficient source metadata to determine the position. + +Arguments: + +* `line`: 1-index based line number relative to the start of the selector. +* `column`: 1-index based column number relative to the start of the selector. + +### `node.spaces` + +Extra whitespaces around the node will be moved into `node.spaces.before` and +`node.spaces.after`. So for example, these spaces will be moved as they have +no semantic meaning: + +```css + h1 , h2 {} +``` + +For descendent selectors, the value is always a single space. + +```css +h1 h2 {} +``` + +Additional whitespace is found in either the `node.spaces.before` and `node.spaces.after` depending on the presence of comments or other whitespace characters. If the actual whitespace does not start or end with a single space, the node's raw value is set to the actual space(s) found in the source. + +### `node.source` + +An object describing the node's start/end, line/column source position. + +Within the following CSS, the `.bar` class node ... + +```css +.foo, + .bar {} +``` + +... will contain the following `source` object. + +```js +source: { + start: { + line: 2, + column: 3 + }, + end: { + line: 2, + column: 6 + } +} +``` + +### `node.sourceIndex` + +The zero-based index of the node within the original source string. + +Within the following CSS, the `.baz` class node will have a `sourceIndex` of `12`. + +```css +.foo, .bar, .baz {} +``` + +## Container types + +The `root`, `selector`, and `pseudo` nodes have some helper methods for working +with their children. + +### `container.nodes` + +An array of the container's children. + +```js +// Input: h1 h2 +selectors.at(0).nodes.length // => 3 +selectors.at(0).nodes[0].value // => 'h1' +selectors.at(0).nodes[1].value // => ' ' +``` + +### `container.first` & `container.last` + +The first/last child of the container. + +```js +selector.first === selector.nodes[0]; +selector.last === selector.nodes[selector.nodes.length - 1]; +``` + +### `container.at(index)` + +Returns the node at position `index`. + +```js +selector.at(0) === selector.first; +selector.at(0) === selector.nodes[0]; +``` + +Arguments: + +* `index`: The index of the node to return. + +### `container.atPosition(line, column)` + +Returns the node at the source position `line` and `column`. + +```js +// Input: :not(.foo),\n#foo > :matches(ol, ul) +selector.atPosition(1, 1); // => :not(.foo) +selector.atPosition(2, 1); // => \n#foo +``` + +Arguments: + +* `line`: The line number of the node to return. +* `column`: The column number of the node to return. + +### `container.index(node)` + +Return the index of the node within its container. + +```js +selector.index(selector.nodes[2]) // => 2 +``` + +Arguments: + +* `node`: A node within the current container. + +### `container.length` + +Proxy to the length of the container's nodes. + +```js +container.length === container.nodes.length +``` + +### `container` Array iterators + +The container class provides proxies to certain Array methods; these are: + +* `container.map === container.nodes.map` +* `container.reduce === container.nodes.reduce` +* `container.every === container.nodes.every` +* `container.some === container.nodes.some` +* `container.filter === container.nodes.filter` +* `container.sort === container.nodes.sort` + +Note that these methods only work on a container's immediate children; recursive +iteration is provided by `container.walk`. + +### `container.each(callback)` + +Iterate the container's immediate children, calling `callback` for each child. +You may return `false` within the callback to break the iteration. + +```js +let className; +selectors.each((selector, index) => { + if (selector.type === 'class') { + className = selector.value; + return false; + } +}); +``` + +Note that unlike `Array#forEach()`, this iterator is safe to use whilst adding +or removing nodes from the container. + +Arguments: + +* `callback (function)`: A function to call for each node, which receives `node` + and `index` arguments. + +### `container.walk(callback)` + +Like `container#each`, but will also iterate child nodes as long as they are +`container` types. + +```js +selectors.walk((selector, index) => { + // all nodes +}); +``` + +Arguments: + +* `callback (function)`: A function to call for each node, which receives `node` + and `index` arguments. + +This iterator is safe to use whilst mutating `container.nodes`, +like `container#each`. + +### `container.walk` proxies + +The container class provides proxy methods for iterating over types of nodes, +so that it is easier to write modules that target specific selectors. Those +methods are: + +* `container.walkAttributes` +* `container.walkClasses` +* `container.walkCombinators` +* `container.walkComments` +* `container.walkIds` +* `container.walkNesting` +* `container.walkPseudos` +* `container.walkTags` +* `container.walkUniversals` + +### `container.split(callback)` + +This method allows you to split a group of nodes by returning `true` from +a callback. It returns an array of arrays, where each inner array corresponds +to the groups that you created via the callback. + +```js +// (input) => h1 h2>>h3 +const list = selectors.first.split(selector => { + return selector.type === 'combinator'; +}); + +// (node values) => [['h1', ' '], ['h2', '>>'], ['h3']] +``` + +Arguments: + +* `callback (function)`: A function to call for each node, which receives `node` + as an argument. + +### `container.prepend(node)` & `container.append(node)` + +Add a node to the start/end of the container. Note that doing so will set +the parent property of the node to this container. + +```js +const id = parser.id({value: 'search'}); +selector.append(id); +``` + +Arguments: + +* `node`: The node to add. + +### `container.insertBefore(old, new)` & `container.insertAfter(old, new)` + +Add a node before or after an existing node in a container: + +```js +selectors.walk(selector => { + if (selector.type !== 'class') { + const className = parser.className({value: 'theme-name'}); + selector.parent.insertAfter(selector, className); + } +}); +``` + +Arguments: + +* `old`: The existing node in the container. +* `new`: The new node to add before/after the existing node. + +### `container.removeChild(node)` + +Remove the node from the container. Note that you can also use +`node.remove()` if you would like to remove just a single node. + +```js +selector.length // => 2 +selector.remove(id) +selector.length // => 1; +id.parent // undefined +``` + +Arguments: + +* `node`: The node to remove. + +### `container.removeAll()` or `container.empty()` + +Remove all children from the container. + +```js +selector.removeAll(); +selector.length // => 0 +``` + +## Root nodes + +A root node represents a comma separated list of selectors. Indeed, all +a root's `toString()` method does is join its selector children with a ','. +Other than this, it has no special functionality and acts like a container. + +### `root.trailingComma` + +This will be set to `true` if the input has a trailing comma, in order to +support parsing of legacy CSS hacks. + +## Selector nodes + +A selector node represents a single complex selector. For example, this +selector string `h1 h2 h3, [href] > p`, is represented as two selector nodes. +It has no special functionality of its own. + +## Pseudo nodes + +A pseudo selector extends a container node; if it has any parameters of its +own (such as `h1:not(h2, h3)`), they will be its children. Note that the pseudo +`value` will always contain the colons preceding the pseudo identifier. This +is so that both `:before` and `::before` are properly represented in the AST. + +## Attribute nodes + +### `attribute.quoted` + +Returns `true` if the attribute's value is wrapped in quotation marks, false if it is not. +Remains `undefined` if there is no attribute value. + +```css +[href=foo] /* false */ +[href='foo'] /* true */ +[href="foo"] /* true */ +[href] /* undefined */ +``` + +### `attribute.qualifiedAttribute` + +Returns the attribute name qualified with the namespace if one is given. + +### `attribute.offsetOf(part)` + + Returns the offset of the attribute part specified relative to the + start of the node of the output string. This is useful in raising + error messages about a specific part of the attribute, especially + in combination with `attribute.sourceIndex`. + + Returns `-1` if the name is invalid or the value doesn't exist in this + attribute. + + The legal values for `part` are: + + * `"ns"` - alias for "namespace" + * `"namespace"` - the namespace if it exists. + * `"attribute"` - the attribute name + * `"attributeNS"` - the start of the attribute or its namespace + * `"operator"` - the match operator of the attribute + * `"value"` - The value (string or identifier) + * `"insensitive"` - the case insensitivity flag + +### `attribute.raws.unquoted` + +Returns the unquoted content of the attribute's value. +Remains `undefined` if there is no attribute value. + +```css +[href=foo] /* foo */ +[href='foo'] /* foo */ +[href="foo"] /* foo */ +[href] /* undefined */ +``` + +### `attribute.spaces` + +Like `node.spaces` with the `before` and `after` values containing the spaces +around the element, the parts of the attribute can also have spaces before +and after them. The for each of `attribute`, `operator`, `value` and +`insensitive` there is corresponding property of the same nam in +`node.spaces` that has an optional `before` or `after` string containing only +whitespace. + +Note that corresponding values in `attributes.raws.spaces` contain values +including any comments. If set, these values will override the +`attribute.spaces` value. Take care to remove them if changing +`attribute.spaces`. + +### `attribute.raws` + +The raws object stores comments and other information necessary to re-render +the node exactly as it was in the source. + +If a comment is embedded within the identifiers for the `namespace`, `attribute` +or `value` then a property is placed in the raws for that value containing the full source of the propery including comments. + +If a comment is embedded within the space between parts of the attribute +then the raw for that space is set accordingly. + +Setting an attribute's property `raws` value to be deleted. + +For now, changing the spaces required also updating or removing any of the +raws values that override them. + +Example: `[ /*before*/ href /* after-attr */ = /* after-operator */ te/*inside-value*/st/* wow */ /*omg*/i/*bbq*/ /*whodoesthis*/]` would parse as: + +```js +{ + attribute: "href", + operator: "=", + value: "test", + spaces: { + before: '', + after: '', + attribute: { before: ' ', after: ' ' }, + operator: { after: ' ' }, + value: { after: ' ' }, + insensitive: { after: ' ' } + }, + raws: { + spaces: { + attribute: { before: ' /*before*/ ', after: ' /* after-attr */ ' }, + operator: { after: ' /* after-operator */ ' }, + value: { after: '/* wow */ /*omg*/' }, + insensitive: { after: '/*bbq*/ /*whodoesthis*/' } + }, + unquoted: 'test', + value: 'te/*inside-value*/st' + } +} +``` + +## `Processor` + +### `ProcessorOptions` + +* `lossless` - When `true`, whitespace is preserved. Defaults to `true`. +* `updateSelector` - When `true`, if any processor methods are passed a postcss + `Rule` node instead of a string, then that Rule's selector is updated + with the results of the processing. Defaults to `true`. + +### `process|processSync(selectors, [options])` + +Processes the `selectors`, returning a string from the result of processing. + +Note: when the `updateSelector` option is set, the rule's selector +will be updated with the resulting string. + +**Example:** + +```js +const parser = require("postcss-selector-parser"); +const processor = parser(); + +let result = processor.processSync(' .class'); +console.log(result); +// => .class + +// Asynchronous operation +let promise = processor.process(' .class').then(result => { + console.log(result) + // => .class +}); + +// To have the parser normalize whitespace values, utilize the options +result = processor.processSync(' .class ', {lossless: false}); +console.log(result); +// => .class + +// For better syntax errors, pass a PostCSS Rule node. +const postcss = require('postcss'); +rule = postcss.rule({selector: ' #foo > a, .class '}); +processor.process(rule, {lossless: false, updateSelector: true}).then(result => { + console.log(result); + // => #foo>a,.class + console.log("rule:", rule.selector); + // => rule: #foo>a,.class +}) +``` + +Arguments: + +* `selectors (string|postcss.Rule)`: Either a selector string or a PostCSS Rule + node. +* `[options] (object)`: Process options + + +### `ast|astSync(selectors, [options])` + +Like `process()` and `processSync()` but after +processing the `selectors` these methods return the `Root` node of the result +instead of a string. + +Note: when the `updateSelector` option is set, the rule's selector +will be updated with the resulting string. + +### `transform|transformSync(selectors, [options])` + +Like `process()` and `processSync()` but after +processing the `selectors` these methods return the value returned by the +processor callback. + +Note: when the `updateSelector` option is set, the rule's selector +will be updated with the resulting string. + +### Error Handling Within Selector Processors + +The root node passed to the selector processor callback +has a method `error(message, options)` that returns an +error object. This method should always be used to raise +errors relating to the syntax of selectors. The options +to this method are passed to postcss's error constructor +([documentation](http://postcss.org/api/#container-error)). + +#### Async Error Example + +```js +let processor = (root) => { + return new Promise((resolve, reject) => { + root.walkClasses((classNode) => { + if (/^(.*)[-_]/.test(classNode.value)) { + let msg = "classes may not have underscores or dashes in them"; + reject(root.error(msg, { + index: classNode.sourceIndex + RegExp.$1.length + 1, + word: classNode.value + })); + } + }); + resolve(); + }); +}; + +const postcss = require("postcss"); +const parser = require("postcss-selector-parser"); +const selectorProcessor = parser(processor); +const plugin = postcss.plugin('classValidator', (options) => { + return (root) => { + let promises = []; + root.walkRules(rule => { + promises.push(selectorProcessor.process(rule)); + }); + return Promise.all(promises); + }; +}); +postcss(plugin()).process(` +.foo-bar { + color: red; +} +`.trim(), {from: 'test.css'}).catch((e) => console.error(e.toString())); + +// CssSyntaxError: classValidator: ./test.css:1:5: classes may not have underscores or dashes in them +// +// > 1 | .foo-bar { +// | ^ +// 2 | color: red; +// 3 | } +``` + +#### Synchronous Error Example + +```js +let processor = (root) => { + root.walkClasses((classNode) => { + if (/.*[-_]/.test(classNode.value)) { + let msg = "classes may not have underscores or dashes in them"; + throw root.error(msg, { + index: classNode.sourceIndex, + word: classNode.value + }); + } + }); +}; + +const postcss = require("postcss"); +const parser = require("postcss-selector-parser"); +const selectorProcessor = parser(processor); +const plugin = postcss.plugin('classValidator', (options) => { + return (root) => { + root.walkRules(rule => { + selectorProcessor.processSync(rule); + }); + }; +}); +postcss(plugin()).process(` +.foo-bar { + color: red; +} +`.trim(), {from: 'test.css'}).catch((e) => console.error(e.toString())); + +// CssSyntaxError: classValidator: ./test.css:1:5: classes may not have underscores or dashes in them +// +// > 1 | .foo-bar { +// | ^ +// 2 | color: red; +// 3 | } +``` diff --git a/node_modules/postcss-selector-parser/CHANGELOG.md b/node_modules/postcss-selector-parser/CHANGELOG.md new file mode 100644 index 0000000..14ffadc --- /dev/null +++ b/node_modules/postcss-selector-parser/CHANGELOG.md @@ -0,0 +1,549 @@ +# 6.1.2 + +- Fixed: erroneous trailing combinators in pseudos + +# 6.1.1 + +- Fixed: improve typings of constructor helpers (#292) + +# 6.1.0 + +- Feature: add `sourceIndex` to `Selector` nodes (#290) + +# 6.0.16 + +- Fixed: add missing `index` argument to `each`/`walk` callback types (#289) + +# 6.0.15 + +- Fixed: Node#prev and Node#next type for the first/last node + +# 6.0.14 + +- Fixed: type definitions + +# 6.0.13 + +- Fixed: throw on unexpected pipe symbols + +# 6.0.12 + +- Fixed: `clone` arguments should be optional + +# 6.0.11 + +- Fixed: parse attribute case insensitivity flag + +# 6.0.10 + +- Fixed: `isPseudoElement()` supports `:first-letter` and `:first-line` + +# 6.0.9 + +- Fixed: `Combinator.raws` property type + +# 6.0.8 + +- Fixed: reduced size + +# 6.0.7 + +- Fixed: parse animation percents + +# 6.0.6 + +- Fixed: parse quoted attributes containing a newline correctly + +# 6.0.5 + +- Perf: rework unesc for a 63+% performance boost + +# 6.0.4 + +- Fixed: ts errors + +# 6.0.3 + +- Fixed: replace node built-in "util" module with "util-deprecate" +- Fixed: handle uppercase pseudo elements +- Fixed: do not create invalid combinator before comment + +# 6.0.2 + +- Fixed an issue with parsing and stringifying an empty attribute value + +# 6.0.1 + +- Fixed an issue with unicode surrogate pair parsing + +# 6.0.0 + +- Updated: `cssesc` to 3.0.0 (major) +- Fixed: Issues with escaped `id` and `class` selectors + +# 5.0.0 + +- Allow escaped dot within class name. +- Update PostCSS to 7.0.7 (patch) + +# 5.0.0-rc.4 + +- Fixed an issue where comments immediately after an insensitive (in attribute) + were not parsed correctly. +- Updated `cssesc` to 2.0.0 (major). +- Removed outdated integration tests. +- Added tests for custom selectors, tags with attributes, the universal + selector with pseudos, and tokens after combinators. + +# 5.0.0-rc.1 + +To ease adoption of the v5.0 release, we have relaxed the node version +check performed by npm at installation time to allow for node 4, which +remains officially unsupported, but likely to continue working for the +time being. + +# 5.0.0-rc.0 + +This release has **BREAKING CHANGES** that were required to fix regressions +in 4.0.0 and to make the Combinator Node API consistent for all combinator +types. Please read carefully. + +## Summary of Changes + +* The way a descendent combinator that isn't a single space character (E.g. `.a .b`) is stored in the AST has changed. +* Named Combinators (E.g. `.a /for/ .b`) are now properly parsed as a combinator. +* It is now possible to look up a node based on the source location of a character in that node and to query nodes if they contain some character. +* Several bug fixes that caused the parser to hang and run out of memory when a `/` was encountered have been fixed. +* The minimum supported version of Node is now `v6.0.0`. + +### Changes to the Descendent Combinator + +In prior releases, the value of a descendant combinator with multiple spaces included all the spaces. + +* `.a .b`: Extra spaces are now stored as space before. + - Old & Busted: + - `combinator.value === " "` + - New hotness: + - `combinator.value === " " && combinator.spaces.before === " "` +* `.a /*comment*/.b`: A comment at the end of the combinator causes extra space to become after space. + - Old & Busted: + - `combinator.value === " "` + - `combinator.raws.value === " /*comment/"` + - New hotness: + - `combinator.value === " "` + - `combinator.spaces.after === " "` + - `combinator.raws.spaces.after === " /*comment*/"` +* `.a.b`: whitespace that doesn't start or end with a single space character is stored as a raw value. + - Old & Busted: + - `combinator.value === "\n"` + - `combinator.raws.value === undefined` + - New hotness: + - `combinator.value === " "` + - `combinator.raws.value === "\n"` + +### Support for "Named Combinators" + +Although, nonstandard and unlikely to ever become a standard, combinators like `/deep/` and `/for/` are now properly supported. + +Because they've been taken off the standardization track, there is no spec-official name for combinators of the form `//`. However, I talked to [Tab Atkins](https://twitter.com/tabatkins) and we agreed to call them "named combinators" so now they are called that. + +Before this release such named combinators were parsed without intention and generated three nodes of type `"tag"` where the first and last nodes had a value of `"/"`. + +* `.a /for/ .b` is parsed as a combinator. + - Old & Busted: + - `root.nodes[0].nodes[1].type === "tag"` + - `root.nodes[0].nodes[1].value === "/"` + - New hotness: + - `root.nodes[0].nodes[1].type === "combinator"` + - `root.nodes[0].nodes[1].value === "/for/"` +* `.a /F\6fR/ .b` escapes are handled and uppercase is normalized. + - Old & Busted: + - `root.nodes[0].nodes[2].type === "tag"` + - `root.nodes[0].nodes[2].value === "F\\6fR"` + - New hotness: + - `root.nodes[0].nodes[1].type === "combinator"` + - `root.nodes[0].nodes[1].value === "/for/"` + - `root.nodes[0].nodes[1].raws.value === "/F\\6fR/"` + +### Source position checks and lookups + +A new API was added to look up a node based on the source location. + +```js +const selectorParser = require("postcss-selector-parser"); +// You can find the most specific node for any given character +let combinator = selectorParser.astSync(".a > .b").atPosition(1,4); +combinator.toString() === " > "; +// You can check if a node includes a specific character +// Whitespace surrounding the node that is owned by that node +// is included in the check. +[2,3,4,5,6].map(column => combinator.isAtPosition(1, column)); +// => [false, true, true, true, false] +``` + +# 4.0.0 + +This release has **BREAKING CHANGES** that were required to fix bugs regarding values with escape sequences. Please read carefully. + +* **Identifiers with escapes** - CSS escape sequences are now hidden from the public API by default. + The normal value of a node like a class name or ID, or an aspect of a node such as attribute + selector's value, is unescaped. Escapes representing Non-ascii characters are unescaped into + unicode characters. For example: `bu\tton, .\31 00, #i\2764\FE0Fu, [attr="value is \"quoted\""]` + will parse respectively to the values `button`, `100`, `i❤️u`, `value is "quoted"`. + The original escape sequences for these values can be found in the corresponding property name + in `node.raws`. Where possible, deprecation warnings were added, but the nature + of escape handling makes it impossible to detect what is escaped or not. Our expectation is + that most users are neither expecting nor handling escape sequences in their use of this library, + and so for them, this is a bug fix. Users who are taking care to handle escapes correctly can + now update their code to remove the escape handling and let us do it for them. + +* **Mutating values with escapes** - When you make an update to a node property that has escape handling + The value is assumed to be unescaped, and any special characters are escaped automatically and + the corresponding `raws` value is immediately updated. This can result in changes to the original + escape format. Where the exact value of the escape sequence is important there are methods that + allow both values to be set in conjunction. There are a number of new convenience methods for + manipulating values that involve escapes, especially for attributes values where the quote mark + is involved. See https://github.com/postcss/postcss-selector-parser/pull/133 for an extensive + write-up on these changes. + + +**Upgrade/API Example** + +In `3.x` there was no unescape handling and internal consistency of several properties was the caller's job to maintain. It was very easy for the developer +to create a CSS file that did not parse correctly when some types of values +were in use. + +```js +const selectorParser = require("postcss-selector-parser"); +let attr = selectorParser.attribute({attribute: "id", operator: "=", value: "a-value"}); +attr.value; // => "a-value" +attr.toString(); // => [id=a-value] +// Add quotes to an attribute's value. +// All these values have to be set by the caller to be consistent: +// no internal consistency is maintained. +attr.raws.unquoted = attr.value +attr.value = "'" + attr.value + "'"; +attr.value; // => "'a-value'" +attr.quoted = true; +attr.toString(); // => "[id='a-value']" +``` + +In `4.0` there is a convenient API for setting and mutating values +that may need escaping. Especially for attributes. + +```js +const selectorParser = require("postcss-selector-parser"); + +// The constructor requires you specify the exact escape sequence +let className = selectorParser.className({value: "illegal class name", raws: {value: "illegal\\ class\\ name"}}); +className.toString(); // => '.illegal\\ class\\ name' + +// So it's better to set the value as a property +className = selectorParser.className(); +// Most properties that deal with identifiers work like this +className.value = "escape for me"; +className.value; // => 'escape for me' +className.toString(); // => '.escape\\ for\\ me' + +// emoji and all non-ascii are escaped to ensure it works in every css file. +className.value = "😱🦄😍"; +className.value; // => '😱🦄😍' +className.toString(); // => '.\\1F631\\1F984\\1F60D' + +// you can control the escape sequence if you want, or do bad bad things +className.setPropertyAndEscape('value', 'xxxx', 'yyyy'); +className.value; // => "xxxx" +className.toString(); // => ".yyyy" + +// Pass a value directly through to the css output without escaping it. +className.setPropertyWithoutEscape('value', '$REPLACE_ME$'); +className.value; // => "$REPLACE_ME$" +className.toString(); // => ".$REPLACE_ME$" + +// The biggest changes are to the Attribute class +// passing quoteMark explicitly is required to avoid a deprecation warning. +let attr = selectorParser.attribute({attribute: "id", operator: "=", value: "a-value", quoteMark: null}); +attr.toString(); // => "[id=a-value]" +// Get the value with quotes on it and any necessary escapes. +// This is the same as reading attr.value in 3.x. +attr.getQuotedValue(); // => "a-value"; +attr.quoteMark; // => null + +// Add quotes to an attribute's value. +attr.quoteMark = "'"; // This is all that's required. +attr.toString(); // => "[id='a-value']" +attr.quoted; // => true +// The value is still the same, only the quotes have changed. +attr.value; // => a-value +attr.getQuotedValue(); // => "'a-value'"; + +// deprecated assignment, no warning because there's no escapes +attr.value = "new-value"; +// no quote mark is needed so it is removed +attr.getQuotedValue(); // => "new-value"; + +// deprecated assignment, +attr.value = "\"a 'single quoted' value\""; +// > (node:27859) DeprecationWarning: Assigning an attribute a value containing characters that might need to be escaped is deprecated. Call attribute.setValue() instead. +attr.getQuotedValue(); // => '"a \'single quoted\' value"'; +// quote mark inferred from first and last characters. +attr.quoteMark; // => '"' + +// setValue takes options to make manipulating the value simple. +attr.setValue('foo', {smart: true}); +// foo doesn't require any escapes or quotes. +attr.toString(); // => '[id=foo]' +attr.quoteMark; // => null + +// An explicit quote mark can be specified +attr.setValue('foo', {quoteMark: '"'}); +attr.toString(); // => '[id="foo"]' + +// preserves quote mark by default +attr.setValue('bar'); +attr.toString(); // => '[id="bar"]' +attr.quoteMark = null; +attr.toString(); // => '[id=bar]' + +// with no arguments, it preserves quote mark even when it's not a great idea +attr.setValue('a value \n that should be quoted'); +attr.toString(); // => '[id=a\\ value\\ \\A\\ that\\ should\\ be\\ quoted]' + +// smart preservation with a specified default +attr.setValue('a value \n that should be quoted', {smart: true, preferCurrentQuoteMark: true, quoteMark: "'"}); +// => "[id='a value \\A that should be quoted']" +attr.quoteMark = '"'; +// => '[id="a value \\A that should be quoted"]' + +// this keeps double quotes because it wants to quote the value and the existing value has double quotes. +attr.setValue('this should be quoted', {smart: true, preferCurrentQuoteMark: true, quoteMark: "'"}); +// => '[id="this should be quoted"]' + +// picks single quotes because the value has double quotes +attr.setValue('a "double quoted" value', {smart: true, preferCurrentQuoteMark: true, quoteMark: "'"}); +// => "[id='a "double quoted" value']" + +// setPropertyAndEscape lets you do anything you want. Even things that are a bad idea and illegal. +attr.setPropertyAndEscape('value', 'xxxx', 'the password is 42'); +attr.value; // => "xxxx" +attr.toString(); // => "[id=the password is 42]" + +// Pass a value directly through to the css output without escaping it. +attr.setPropertyWithoutEscape('value', '$REPLACEMENT$'); +attr.value; // => "$REPLACEMENT$" +attr.toString(); // => "[id=$REPLACEMENT$]" +``` + +# 3.1.2 + +* Fix: Removed dot-prop dependency since it's no longer written in es5. + +# 3.1.1 + +* Fix: typescript definitions weren't in the published package. + +# 3.1.0 + +* Fixed numerous bugs in attribute nodes relating to the handling of comments + and whitespace. There's significant changes to `attrNode.spaces` and `attrNode.raws` since the `3.0.0` release. +* Added `Attribute#offsetOf(part)` to get the offset location of + attribute parts like `"operator"` and `"value"`. This is most + often added to `Attribute#sourceIndex` for error reporting. + +# 3.0.0 + +## Breaking changes + +* Some tweaks to the tokenizer/attribute selector parsing mean that whitespace + locations might be slightly different to the 2.x code. +* Better attribute selector parsing with more validation; postcss-selector-parser + no longer uses regular expressions to parse attribute selectors. +* Added an async API (thanks to @jacobp100); the default `process` API is now + async, and the sync API is now accessed through `processSync` instead. +* `process()` and `processSync()` now return a string instead of the Processor + instance. +* Tweaks handling of Less interpolation (thanks to @jwilsson). +* Removes support for Node 0.12. + +## Other changes + +* `ast()` and `astSync()` methods have been added to the `Processor`. These + return the `Root` node of the selectors after processing them. +* `transform()` and `transformSync()` methods have been added to the + `Processor`. These return the value returned by the processor callback + after processing the selectors. +* Set the parent when inserting a node (thanks to @chriseppstein). +* Correctly adjust indices when using insertBefore/insertAfter (thanks to @tivac). +* Fixes handling of namespaces with qualified tag selectors. +* `process`, `ast` and `transform` (and their sync variants) now accept a + `postcss` rule node. When provided, better errors are generated and selector + processing is automatically set back to the rule selector (unless the `updateSelector` option is set to `false`.) +* Now more memory efficient when tokenizing selectors. + +### Upgrade hints + +The pattern of: + +`rule.selector = processor.process(rule.selector).result.toString();` + +is now: + +`processor.processSync(rule)` + +# 2.2.3 + +* Resolves an issue where the parser would not reduce multiple spaces between an + ampersand and another simple selector in lossy mode (thanks to @adam-26). + +# 2.2.2 + +* No longer hangs on an unescaped semicolon; instead the parser will throw + an exception for these cases. + +# 2.2.1 + +* Allows a consumer to specify whitespace tokens when creating a new Node + (thanks to @Semigradsky). + +# 2.2.0 + +* Added a new option to normalize whitespace when parsing the selector string + (thanks to @adam-26). + +# 2.1.1 + +* Better unquoted value handling within attribute selectors + (thanks to @evilebottnawi). + +# 2.1.0 + +* Added: Use string constants for all node types & expose them on the main + parser instance (thanks to @Aweary). + +# 2.0.0 + +This release contains the following breaking changes: + +* Renamed all `eachInside` iterators to `walk`. For example, `eachTag` is now + `walkTags`, and `eachInside` is now `walk`. +* Renamed `Node#removeSelf()` to `Node#remove()`. +* Renamed `Container#remove()` to `Container#removeChild()`. +* Renamed `Node#raw` to `Node#raws` (thanks to @davidtheclark). +* Now parses `&` as the *nesting* selector, rather than a *tag* selector. +* Fixes misinterpretation of Sass interpolation (e.g. `#{foo}`) as an + id selector (thanks to @davidtheclark). + +and; + +* Fixes parsing of attribute selectors with equals signs in them + (e.g. `[data-attr="foo=bar"]`) (thanks to @montmanu). +* Adds `quoted` and `raw.unquoted` properties to attribute nodes + (thanks to @davidtheclark). + +# 1.3.3 + +* Fixes an infinite loop on `)` and `]` tokens when they had no opening pairs. + Now postcss-selector-parser will throw when it encounters these lone tokens. + +# 1.3.2 + +* Now uses plain integers rather than `str.charCodeAt(0)` for compiled builds. + +# 1.3.1 + +* Update flatten to v1.x (thanks to @shinnn). + +# 1.3.0 + +* Adds a new node type, `String`, to fix a crash on selectors such as + `foo:bar("test")`. + +# 1.2.1 + +* Fixes a crash when the parser encountered a trailing combinator. + +# 1.2.0 + +* A more descriptive error is thrown when the parser expects to find a + pseudo-class/pseudo-element (thanks to @ashelley). +* Adds support for line/column locations for selector nodes, as well as a + `Node#sourceIndex` method (thanks to @davidtheclark). + +# 1.1.4 + +* Fixes a crash when a selector started with a `>` combinator. The module will + now no longer throw if a selector has a leading/trailing combinator node. + +# 1.1.3 + +* Fixes a crash on `@` tokens. + +# 1.1.2 + +* Fixes an infinite loop caused by using parentheses in a non-pseudo element + context. + +# 1.1.1 + +* Fixes a crash when a backslash ended a selector string. + +# 1.1.0 + +* Adds support for replacing multiple nodes at once with `replaceWith` + (thanks to @jonathantneal). +* Parser no longer throws on sequential IDs and trailing commas, to support + parsing of selector hacks. + +# 1.0.1 + +* Fixes using `insertAfter` and `insertBefore` during iteration. + +# 1.0.0 + +* Adds `clone` and `replaceWith` methods to nodes. +* Adds `insertBefore` and `insertAfter` to containers. +* Stabilises API. + +# 0.0.5 + +* Fixes crash on extra whitespace inside a pseudo selector's parentheses. +* Adds sort function to the container class. +* Enables the parser to pass its input through without transforming. +* Iteration-safe `each` and `eachInside`. + +# 0.0.4 + +* Tidy up redundant duplication. +* Fixes a bug where the parser would loop infinitely on universal selectors + inside pseudo selectors. +* Adds `length` getter and `eachInside`, `map`, `reduce` to the container class. +* When a selector has been removed from the tree, the root node will no longer + cast it to a string. +* Adds node type iterators to the container class (e.g. `eachComment`). +* Adds filter function to the container class. +* Adds split function to the container class. +* Create new node types by doing `parser.id(opts)` etc. +* Adds support for pseudo classes anywhere in the selector. + +# 0.0.3 + +* Adds `next` and `prev` to the node class. +* Adds `first` and `last` getters to the container class. +* Adds `every` and `some` iterators to the container class. +* Add `empty` alias for `removeAll`. +* Combinators are now types of node. +* Fixes the at method so that it is not an alias for `index`. +* Tidy up creation of new nodes in the parser. +* Refactors how namespaces are handled for consistency & less redundant code. +* Refactors AST to use `nodes` exclusively, and eliminates excessive nesting. +* Fixes nested pseudo parsing. +* Fixes whitespace parsing. + +# 0.0.2 + +* Adds support for namespace selectors. +* Adds support for selectors joined by escaped spaces - such as `.\31\ 0`. + +# 0.0.1 + +* Initial release. diff --git a/node_modules/postcss-selector-parser/LICENSE-MIT b/node_modules/postcss-selector-parser/LICENSE-MIT new file mode 100644 index 0000000..fd0e863 --- /dev/null +++ b/node_modules/postcss-selector-parser/LICENSE-MIT @@ -0,0 +1,22 @@ +Copyright (c) Ben Briggs (http://beneb.info) + +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. diff --git a/node_modules/postcss-selector-parser/README.md b/node_modules/postcss-selector-parser/README.md new file mode 100644 index 0000000..28e44f2 --- /dev/null +++ b/node_modules/postcss-selector-parser/README.md @@ -0,0 +1,49 @@ +# postcss-selector-parser [![test](https://github.com/postcss/postcss-selector-parser/actions/workflows/test.yml/badge.svg)](https://github.com/postcss/postcss-selector-parser/actions/workflows/test.yml) + +> Selector parser with built in methods for working with selector strings. + +## Install + +With [npm](https://npmjs.com/package/postcss-selector-parser) do: + +``` +npm install postcss-selector-parser +``` + +## Quick Start + +```js +const parser = require('postcss-selector-parser'); +const transform = selectors => { + selectors.walk(selector => { + // do something with the selector + console.log(String(selector)) + }); +}; + +const transformed = parser(transform).processSync('h1, h2, h3'); +``` + +To normalize selector whitespace: + +```js +const parser = require('postcss-selector-parser'); +const normalized = parser().processSync('h1, h2, h3', {lossless: false}); +// -> h1,h2,h3 +``` + +Async support is provided through `parser.process` and will resolve a Promise +with the resulting selector string. + +## API + +Please see [API.md](API.md). + +## Credits + +* Huge thanks to Andrey Sitnik (@ai) for work on PostCSS which helped + accelerate this module's development. + +## License + +MIT diff --git a/node_modules/postcss-selector-parser/dist/index.js b/node_modules/postcss-selector-parser/dist/index.js new file mode 100644 index 0000000..995741a --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/index.js @@ -0,0 +1,17 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _processor = _interopRequireDefault(require("./processor")); +var selectors = _interopRequireWildcard(require("./selectors")); +function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } +function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +var parser = function parser(processor) { + return new _processor["default"](processor); +}; +Object.assign(parser, selectors); +delete parser.__esModule; +var _default = parser; +exports["default"] = _default; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/parser.js b/node_modules/postcss-selector-parser/dist/parser.js new file mode 100644 index 0000000..ada6158 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/parser.js @@ -0,0 +1,1015 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _root = _interopRequireDefault(require("./selectors/root")); +var _selector = _interopRequireDefault(require("./selectors/selector")); +var _className = _interopRequireDefault(require("./selectors/className")); +var _comment = _interopRequireDefault(require("./selectors/comment")); +var _id = _interopRequireDefault(require("./selectors/id")); +var _tag = _interopRequireDefault(require("./selectors/tag")); +var _string = _interopRequireDefault(require("./selectors/string")); +var _pseudo = _interopRequireDefault(require("./selectors/pseudo")); +var _attribute = _interopRequireWildcard(require("./selectors/attribute")); +var _universal = _interopRequireDefault(require("./selectors/universal")); +var _combinator = _interopRequireDefault(require("./selectors/combinator")); +var _nesting = _interopRequireDefault(require("./selectors/nesting")); +var _sortAscending = _interopRequireDefault(require("./sortAscending")); +var _tokenize = _interopRequireWildcard(require("./tokenize")); +var tokens = _interopRequireWildcard(require("./tokenTypes")); +var types = _interopRequireWildcard(require("./selectors/types")); +var _util = require("./util"); +var _WHITESPACE_TOKENS, _Object$assign; +function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } +function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } +var WHITESPACE_TOKENS = (_WHITESPACE_TOKENS = {}, _WHITESPACE_TOKENS[tokens.space] = true, _WHITESPACE_TOKENS[tokens.cr] = true, _WHITESPACE_TOKENS[tokens.feed] = true, _WHITESPACE_TOKENS[tokens.newline] = true, _WHITESPACE_TOKENS[tokens.tab] = true, _WHITESPACE_TOKENS); +var WHITESPACE_EQUIV_TOKENS = Object.assign({}, WHITESPACE_TOKENS, (_Object$assign = {}, _Object$assign[tokens.comment] = true, _Object$assign)); +function tokenStart(token) { + return { + line: token[_tokenize.FIELDS.START_LINE], + column: token[_tokenize.FIELDS.START_COL] + }; +} +function tokenEnd(token) { + return { + line: token[_tokenize.FIELDS.END_LINE], + column: token[_tokenize.FIELDS.END_COL] + }; +} +function getSource(startLine, startColumn, endLine, endColumn) { + return { + start: { + line: startLine, + column: startColumn + }, + end: { + line: endLine, + column: endColumn + } + }; +} +function getTokenSource(token) { + return getSource(token[_tokenize.FIELDS.START_LINE], token[_tokenize.FIELDS.START_COL], token[_tokenize.FIELDS.END_LINE], token[_tokenize.FIELDS.END_COL]); +} +function getTokenSourceSpan(startToken, endToken) { + if (!startToken) { + return undefined; + } + return getSource(startToken[_tokenize.FIELDS.START_LINE], startToken[_tokenize.FIELDS.START_COL], endToken[_tokenize.FIELDS.END_LINE], endToken[_tokenize.FIELDS.END_COL]); +} +function unescapeProp(node, prop) { + var value = node[prop]; + if (typeof value !== "string") { + return; + } + if (value.indexOf("\\") !== -1) { + (0, _util.ensureObject)(node, 'raws'); + node[prop] = (0, _util.unesc)(value); + if (node.raws[prop] === undefined) { + node.raws[prop] = value; + } + } + return node; +} +function indexesOf(array, item) { + var i = -1; + var indexes = []; + while ((i = array.indexOf(item, i + 1)) !== -1) { + indexes.push(i); + } + return indexes; +} +function uniqs() { + var list = Array.prototype.concat.apply([], arguments); + return list.filter(function (item, i) { + return i === list.indexOf(item); + }); +} +var Parser = /*#__PURE__*/function () { + function Parser(rule, options) { + if (options === void 0) { + options = {}; + } + this.rule = rule; + this.options = Object.assign({ + lossy: false, + safe: false + }, options); + this.position = 0; + this.css = typeof this.rule === 'string' ? this.rule : this.rule.selector; + this.tokens = (0, _tokenize["default"])({ + css: this.css, + error: this._errorGenerator(), + safe: this.options.safe + }); + var rootSource = getTokenSourceSpan(this.tokens[0], this.tokens[this.tokens.length - 1]); + this.root = new _root["default"]({ + source: rootSource + }); + this.root.errorGenerator = this._errorGenerator(); + var selector = new _selector["default"]({ + source: { + start: { + line: 1, + column: 1 + } + }, + sourceIndex: 0 + }); + this.root.append(selector); + this.current = selector; + this.loop(); + } + var _proto = Parser.prototype; + _proto._errorGenerator = function _errorGenerator() { + var _this = this; + return function (message, errorOptions) { + if (typeof _this.rule === 'string') { + return new Error(message); + } + return _this.rule.error(message, errorOptions); + }; + }; + _proto.attribute = function attribute() { + var attr = []; + var startingToken = this.currToken; + this.position++; + while (this.position < this.tokens.length && this.currToken[_tokenize.FIELDS.TYPE] !== tokens.closeSquare) { + attr.push(this.currToken); + this.position++; + } + if (this.currToken[_tokenize.FIELDS.TYPE] !== tokens.closeSquare) { + return this.expected('closing square bracket', this.currToken[_tokenize.FIELDS.START_POS]); + } + var len = attr.length; + var node = { + source: getSource(startingToken[1], startingToken[2], this.currToken[3], this.currToken[4]), + sourceIndex: startingToken[_tokenize.FIELDS.START_POS] + }; + if (len === 1 && !~[tokens.word].indexOf(attr[0][_tokenize.FIELDS.TYPE])) { + return this.expected('attribute', attr[0][_tokenize.FIELDS.START_POS]); + } + var pos = 0; + var spaceBefore = ''; + var commentBefore = ''; + var lastAdded = null; + var spaceAfterMeaningfulToken = false; + while (pos < len) { + var token = attr[pos]; + var content = this.content(token); + var next = attr[pos + 1]; + switch (token[_tokenize.FIELDS.TYPE]) { + case tokens.space: + // if ( + // len === 1 || + // pos === 0 && this.content(next) === '|' + // ) { + // return this.expected('attribute', token[TOKEN.START_POS], content); + // } + spaceAfterMeaningfulToken = true; + if (this.options.lossy) { + break; + } + if (lastAdded) { + (0, _util.ensureObject)(node, 'spaces', lastAdded); + var prevContent = node.spaces[lastAdded].after || ''; + node.spaces[lastAdded].after = prevContent + content; + var existingComment = (0, _util.getProp)(node, 'raws', 'spaces', lastAdded, 'after') || null; + if (existingComment) { + node.raws.spaces[lastAdded].after = existingComment + content; + } + } else { + spaceBefore = spaceBefore + content; + commentBefore = commentBefore + content; + } + break; + case tokens.asterisk: + if (next[_tokenize.FIELDS.TYPE] === tokens.equals) { + node.operator = content; + lastAdded = 'operator'; + } else if ((!node.namespace || lastAdded === "namespace" && !spaceAfterMeaningfulToken) && next) { + if (spaceBefore) { + (0, _util.ensureObject)(node, 'spaces', 'attribute'); + node.spaces.attribute.before = spaceBefore; + spaceBefore = ''; + } + if (commentBefore) { + (0, _util.ensureObject)(node, 'raws', 'spaces', 'attribute'); + node.raws.spaces.attribute.before = spaceBefore; + commentBefore = ''; + } + node.namespace = (node.namespace || "") + content; + var rawValue = (0, _util.getProp)(node, 'raws', 'namespace') || null; + if (rawValue) { + node.raws.namespace += content; + } + lastAdded = 'namespace'; + } + spaceAfterMeaningfulToken = false; + break; + case tokens.dollar: + if (lastAdded === "value") { + var oldRawValue = (0, _util.getProp)(node, 'raws', 'value'); + node.value += "$"; + if (oldRawValue) { + node.raws.value = oldRawValue + "$"; + } + break; + } + // Falls through + case tokens.caret: + if (next[_tokenize.FIELDS.TYPE] === tokens.equals) { + node.operator = content; + lastAdded = 'operator'; + } + spaceAfterMeaningfulToken = false; + break; + case tokens.combinator: + if (content === '~' && next[_tokenize.FIELDS.TYPE] === tokens.equals) { + node.operator = content; + lastAdded = 'operator'; + } + if (content !== '|') { + spaceAfterMeaningfulToken = false; + break; + } + if (next[_tokenize.FIELDS.TYPE] === tokens.equals) { + node.operator = content; + lastAdded = 'operator'; + } else if (!node.namespace && !node.attribute) { + node.namespace = true; + } + spaceAfterMeaningfulToken = false; + break; + case tokens.word: + if (next && this.content(next) === '|' && attr[pos + 2] && attr[pos + 2][_tokenize.FIELDS.TYPE] !== tokens.equals && + // this look-ahead probably fails with comment nodes involved. + !node.operator && !node.namespace) { + node.namespace = content; + lastAdded = 'namespace'; + } else if (!node.attribute || lastAdded === "attribute" && !spaceAfterMeaningfulToken) { + if (spaceBefore) { + (0, _util.ensureObject)(node, 'spaces', 'attribute'); + node.spaces.attribute.before = spaceBefore; + spaceBefore = ''; + } + if (commentBefore) { + (0, _util.ensureObject)(node, 'raws', 'spaces', 'attribute'); + node.raws.spaces.attribute.before = commentBefore; + commentBefore = ''; + } + node.attribute = (node.attribute || "") + content; + var _rawValue = (0, _util.getProp)(node, 'raws', 'attribute') || null; + if (_rawValue) { + node.raws.attribute += content; + } + lastAdded = 'attribute'; + } else if (!node.value && node.value !== "" || lastAdded === "value" && !(spaceAfterMeaningfulToken || node.quoteMark)) { + var _unescaped = (0, _util.unesc)(content); + var _oldRawValue = (0, _util.getProp)(node, 'raws', 'value') || ''; + var oldValue = node.value || ''; + node.value = oldValue + _unescaped; + node.quoteMark = null; + if (_unescaped !== content || _oldRawValue) { + (0, _util.ensureObject)(node, 'raws'); + node.raws.value = (_oldRawValue || oldValue) + content; + } + lastAdded = 'value'; + } else { + var insensitive = content === 'i' || content === "I"; + if ((node.value || node.value === '') && (node.quoteMark || spaceAfterMeaningfulToken)) { + node.insensitive = insensitive; + if (!insensitive || content === "I") { + (0, _util.ensureObject)(node, 'raws'); + node.raws.insensitiveFlag = content; + } + lastAdded = 'insensitive'; + if (spaceBefore) { + (0, _util.ensureObject)(node, 'spaces', 'insensitive'); + node.spaces.insensitive.before = spaceBefore; + spaceBefore = ''; + } + if (commentBefore) { + (0, _util.ensureObject)(node, 'raws', 'spaces', 'insensitive'); + node.raws.spaces.insensitive.before = commentBefore; + commentBefore = ''; + } + } else if (node.value || node.value === '') { + lastAdded = 'value'; + node.value += content; + if (node.raws.value) { + node.raws.value += content; + } + } + } + spaceAfterMeaningfulToken = false; + break; + case tokens.str: + if (!node.attribute || !node.operator) { + return this.error("Expected an attribute followed by an operator preceding the string.", { + index: token[_tokenize.FIELDS.START_POS] + }); + } + var _unescapeValue = (0, _attribute.unescapeValue)(content), + unescaped = _unescapeValue.unescaped, + quoteMark = _unescapeValue.quoteMark; + node.value = unescaped; + node.quoteMark = quoteMark; + lastAdded = 'value'; + (0, _util.ensureObject)(node, 'raws'); + node.raws.value = content; + spaceAfterMeaningfulToken = false; + break; + case tokens.equals: + if (!node.attribute) { + return this.expected('attribute', token[_tokenize.FIELDS.START_POS], content); + } + if (node.value) { + return this.error('Unexpected "=" found; an operator was already defined.', { + index: token[_tokenize.FIELDS.START_POS] + }); + } + node.operator = node.operator ? node.operator + content : content; + lastAdded = 'operator'; + spaceAfterMeaningfulToken = false; + break; + case tokens.comment: + if (lastAdded) { + if (spaceAfterMeaningfulToken || next && next[_tokenize.FIELDS.TYPE] === tokens.space || lastAdded === 'insensitive') { + var lastComment = (0, _util.getProp)(node, 'spaces', lastAdded, 'after') || ''; + var rawLastComment = (0, _util.getProp)(node, 'raws', 'spaces', lastAdded, 'after') || lastComment; + (0, _util.ensureObject)(node, 'raws', 'spaces', lastAdded); + node.raws.spaces[lastAdded].after = rawLastComment + content; + } else { + var lastValue = node[lastAdded] || ''; + var rawLastValue = (0, _util.getProp)(node, 'raws', lastAdded) || lastValue; + (0, _util.ensureObject)(node, 'raws'); + node.raws[lastAdded] = rawLastValue + content; + } + } else { + commentBefore = commentBefore + content; + } + break; + default: + return this.error("Unexpected \"" + content + "\" found.", { + index: token[_tokenize.FIELDS.START_POS] + }); + } + pos++; + } + unescapeProp(node, "attribute"); + unescapeProp(node, "namespace"); + this.newNode(new _attribute["default"](node)); + this.position++; + } + + /** + * return a node containing meaningless garbage up to (but not including) the specified token position. + * if the token position is negative, all remaining tokens are consumed. + * + * This returns an array containing a single string node if all whitespace, + * otherwise an array of comment nodes with space before and after. + * + * These tokens are not added to the current selector, the caller can add them or use them to amend + * a previous node's space metadata. + * + * In lossy mode, this returns only comments. + */; + _proto.parseWhitespaceEquivalentTokens = function parseWhitespaceEquivalentTokens(stopPosition) { + if (stopPosition < 0) { + stopPosition = this.tokens.length; + } + var startPosition = this.position; + var nodes = []; + var space = ""; + var lastComment = undefined; + do { + if (WHITESPACE_TOKENS[this.currToken[_tokenize.FIELDS.TYPE]]) { + if (!this.options.lossy) { + space += this.content(); + } + } else if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.comment) { + var spaces = {}; + if (space) { + spaces.before = space; + space = ""; + } + lastComment = new _comment["default"]({ + value: this.content(), + source: getTokenSource(this.currToken), + sourceIndex: this.currToken[_tokenize.FIELDS.START_POS], + spaces: spaces + }); + nodes.push(lastComment); + } + } while (++this.position < stopPosition); + if (space) { + if (lastComment) { + lastComment.spaces.after = space; + } else if (!this.options.lossy) { + var firstToken = this.tokens[startPosition]; + var lastToken = this.tokens[this.position - 1]; + nodes.push(new _string["default"]({ + value: '', + source: getSource(firstToken[_tokenize.FIELDS.START_LINE], firstToken[_tokenize.FIELDS.START_COL], lastToken[_tokenize.FIELDS.END_LINE], lastToken[_tokenize.FIELDS.END_COL]), + sourceIndex: firstToken[_tokenize.FIELDS.START_POS], + spaces: { + before: space, + after: '' + } + })); + } + } + return nodes; + } + + /** + * + * @param {*} nodes + */; + _proto.convertWhitespaceNodesToSpace = function convertWhitespaceNodesToSpace(nodes, requiredSpace) { + var _this2 = this; + if (requiredSpace === void 0) { + requiredSpace = false; + } + var space = ""; + var rawSpace = ""; + nodes.forEach(function (n) { + var spaceBefore = _this2.lossySpace(n.spaces.before, requiredSpace); + var rawSpaceBefore = _this2.lossySpace(n.rawSpaceBefore, requiredSpace); + space += spaceBefore + _this2.lossySpace(n.spaces.after, requiredSpace && spaceBefore.length === 0); + rawSpace += spaceBefore + n.value + _this2.lossySpace(n.rawSpaceAfter, requiredSpace && rawSpaceBefore.length === 0); + }); + if (rawSpace === space) { + rawSpace = undefined; + } + var result = { + space: space, + rawSpace: rawSpace + }; + return result; + }; + _proto.isNamedCombinator = function isNamedCombinator(position) { + if (position === void 0) { + position = this.position; + } + return this.tokens[position + 0] && this.tokens[position + 0][_tokenize.FIELDS.TYPE] === tokens.slash && this.tokens[position + 1] && this.tokens[position + 1][_tokenize.FIELDS.TYPE] === tokens.word && this.tokens[position + 2] && this.tokens[position + 2][_tokenize.FIELDS.TYPE] === tokens.slash; + }; + _proto.namedCombinator = function namedCombinator() { + if (this.isNamedCombinator()) { + var nameRaw = this.content(this.tokens[this.position + 1]); + var name = (0, _util.unesc)(nameRaw).toLowerCase(); + var raws = {}; + if (name !== nameRaw) { + raws.value = "/" + nameRaw + "/"; + } + var node = new _combinator["default"]({ + value: "/" + name + "/", + source: getSource(this.currToken[_tokenize.FIELDS.START_LINE], this.currToken[_tokenize.FIELDS.START_COL], this.tokens[this.position + 2][_tokenize.FIELDS.END_LINE], this.tokens[this.position + 2][_tokenize.FIELDS.END_COL]), + sourceIndex: this.currToken[_tokenize.FIELDS.START_POS], + raws: raws + }); + this.position = this.position + 3; + return node; + } else { + this.unexpected(); + } + }; + _proto.combinator = function combinator() { + var _this3 = this; + if (this.content() === '|') { + return this.namespace(); + } + // We need to decide between a space that's a descendant combinator and meaningless whitespace at the end of a selector. + var nextSigTokenPos = this.locateNextMeaningfulToken(this.position); + if (nextSigTokenPos < 0 || this.tokens[nextSigTokenPos][_tokenize.FIELDS.TYPE] === tokens.comma || this.tokens[nextSigTokenPos][_tokenize.FIELDS.TYPE] === tokens.closeParenthesis) { + var nodes = this.parseWhitespaceEquivalentTokens(nextSigTokenPos); + if (nodes.length > 0) { + var last = this.current.last; + if (last) { + var _this$convertWhitespa = this.convertWhitespaceNodesToSpace(nodes), + space = _this$convertWhitespa.space, + rawSpace = _this$convertWhitespa.rawSpace; + if (rawSpace !== undefined) { + last.rawSpaceAfter += rawSpace; + } + last.spaces.after += space; + } else { + nodes.forEach(function (n) { + return _this3.newNode(n); + }); + } + } + return; + } + var firstToken = this.currToken; + var spaceOrDescendantSelectorNodes = undefined; + if (nextSigTokenPos > this.position) { + spaceOrDescendantSelectorNodes = this.parseWhitespaceEquivalentTokens(nextSigTokenPos); + } + var node; + if (this.isNamedCombinator()) { + node = this.namedCombinator(); + } else if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.combinator) { + node = new _combinator["default"]({ + value: this.content(), + source: getTokenSource(this.currToken), + sourceIndex: this.currToken[_tokenize.FIELDS.START_POS] + }); + this.position++; + } else if (WHITESPACE_TOKENS[this.currToken[_tokenize.FIELDS.TYPE]]) { + // pass + } else if (!spaceOrDescendantSelectorNodes) { + this.unexpected(); + } + if (node) { + if (spaceOrDescendantSelectorNodes) { + var _this$convertWhitespa2 = this.convertWhitespaceNodesToSpace(spaceOrDescendantSelectorNodes), + _space = _this$convertWhitespa2.space, + _rawSpace = _this$convertWhitespa2.rawSpace; + node.spaces.before = _space; + node.rawSpaceBefore = _rawSpace; + } + } else { + // descendant combinator + var _this$convertWhitespa3 = this.convertWhitespaceNodesToSpace(spaceOrDescendantSelectorNodes, true), + _space2 = _this$convertWhitespa3.space, + _rawSpace2 = _this$convertWhitespa3.rawSpace; + if (!_rawSpace2) { + _rawSpace2 = _space2; + } + var spaces = {}; + var raws = { + spaces: {} + }; + if (_space2.endsWith(' ') && _rawSpace2.endsWith(' ')) { + spaces.before = _space2.slice(0, _space2.length - 1); + raws.spaces.before = _rawSpace2.slice(0, _rawSpace2.length - 1); + } else if (_space2.startsWith(' ') && _rawSpace2.startsWith(' ')) { + spaces.after = _space2.slice(1); + raws.spaces.after = _rawSpace2.slice(1); + } else { + raws.value = _rawSpace2; + } + node = new _combinator["default"]({ + value: ' ', + source: getTokenSourceSpan(firstToken, this.tokens[this.position - 1]), + sourceIndex: firstToken[_tokenize.FIELDS.START_POS], + spaces: spaces, + raws: raws + }); + } + if (this.currToken && this.currToken[_tokenize.FIELDS.TYPE] === tokens.space) { + node.spaces.after = this.optionalSpace(this.content()); + this.position++; + } + return this.newNode(node); + }; + _proto.comma = function comma() { + if (this.position === this.tokens.length - 1) { + this.root.trailingComma = true; + this.position++; + return; + } + this.current._inferEndPosition(); + var selector = new _selector["default"]({ + source: { + start: tokenStart(this.tokens[this.position + 1]) + }, + sourceIndex: this.tokens[this.position + 1][_tokenize.FIELDS.START_POS] + }); + this.current.parent.append(selector); + this.current = selector; + this.position++; + }; + _proto.comment = function comment() { + var current = this.currToken; + this.newNode(new _comment["default"]({ + value: this.content(), + source: getTokenSource(current), + sourceIndex: current[_tokenize.FIELDS.START_POS] + })); + this.position++; + }; + _proto.error = function error(message, opts) { + throw this.root.error(message, opts); + }; + _proto.missingBackslash = function missingBackslash() { + return this.error('Expected a backslash preceding the semicolon.', { + index: this.currToken[_tokenize.FIELDS.START_POS] + }); + }; + _proto.missingParenthesis = function missingParenthesis() { + return this.expected('opening parenthesis', this.currToken[_tokenize.FIELDS.START_POS]); + }; + _proto.missingSquareBracket = function missingSquareBracket() { + return this.expected('opening square bracket', this.currToken[_tokenize.FIELDS.START_POS]); + }; + _proto.unexpected = function unexpected() { + return this.error("Unexpected '" + this.content() + "'. Escaping special characters with \\ may help.", this.currToken[_tokenize.FIELDS.START_POS]); + }; + _proto.unexpectedPipe = function unexpectedPipe() { + return this.error("Unexpected '|'.", this.currToken[_tokenize.FIELDS.START_POS]); + }; + _proto.namespace = function namespace() { + var before = this.prevToken && this.content(this.prevToken) || true; + if (this.nextToken[_tokenize.FIELDS.TYPE] === tokens.word) { + this.position++; + return this.word(before); + } else if (this.nextToken[_tokenize.FIELDS.TYPE] === tokens.asterisk) { + this.position++; + return this.universal(before); + } + this.unexpectedPipe(); + }; + _proto.nesting = function nesting() { + if (this.nextToken) { + var nextContent = this.content(this.nextToken); + if (nextContent === "|") { + this.position++; + return; + } + } + var current = this.currToken; + this.newNode(new _nesting["default"]({ + value: this.content(), + source: getTokenSource(current), + sourceIndex: current[_tokenize.FIELDS.START_POS] + })); + this.position++; + }; + _proto.parentheses = function parentheses() { + var last = this.current.last; + var unbalanced = 1; + this.position++; + if (last && last.type === types.PSEUDO) { + var selector = new _selector["default"]({ + source: { + start: tokenStart(this.tokens[this.position]) + }, + sourceIndex: this.tokens[this.position][_tokenize.FIELDS.START_POS] + }); + var cache = this.current; + last.append(selector); + this.current = selector; + while (this.position < this.tokens.length && unbalanced) { + if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.openParenthesis) { + unbalanced++; + } + if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.closeParenthesis) { + unbalanced--; + } + if (unbalanced) { + this.parse(); + } else { + this.current.source.end = tokenEnd(this.currToken); + this.current.parent.source.end = tokenEnd(this.currToken); + this.position++; + } + } + this.current = cache; + } else { + // I think this case should be an error. It's used to implement a basic parse of media queries + // but I don't think it's a good idea. + var parenStart = this.currToken; + var parenValue = "("; + var parenEnd; + while (this.position < this.tokens.length && unbalanced) { + if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.openParenthesis) { + unbalanced++; + } + if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.closeParenthesis) { + unbalanced--; + } + parenEnd = this.currToken; + parenValue += this.parseParenthesisToken(this.currToken); + this.position++; + } + if (last) { + last.appendToPropertyAndEscape("value", parenValue, parenValue); + } else { + this.newNode(new _string["default"]({ + value: parenValue, + source: getSource(parenStart[_tokenize.FIELDS.START_LINE], parenStart[_tokenize.FIELDS.START_COL], parenEnd[_tokenize.FIELDS.END_LINE], parenEnd[_tokenize.FIELDS.END_COL]), + sourceIndex: parenStart[_tokenize.FIELDS.START_POS] + })); + } + } + if (unbalanced) { + return this.expected('closing parenthesis', this.currToken[_tokenize.FIELDS.START_POS]); + } + }; + _proto.pseudo = function pseudo() { + var _this4 = this; + var pseudoStr = ''; + var startingToken = this.currToken; + while (this.currToken && this.currToken[_tokenize.FIELDS.TYPE] === tokens.colon) { + pseudoStr += this.content(); + this.position++; + } + if (!this.currToken) { + return this.expected(['pseudo-class', 'pseudo-element'], this.position - 1); + } + if (this.currToken[_tokenize.FIELDS.TYPE] === tokens.word) { + this.splitWord(false, function (first, length) { + pseudoStr += first; + _this4.newNode(new _pseudo["default"]({ + value: pseudoStr, + source: getTokenSourceSpan(startingToken, _this4.currToken), + sourceIndex: startingToken[_tokenize.FIELDS.START_POS] + })); + if (length > 1 && _this4.nextToken && _this4.nextToken[_tokenize.FIELDS.TYPE] === tokens.openParenthesis) { + _this4.error('Misplaced parenthesis.', { + index: _this4.nextToken[_tokenize.FIELDS.START_POS] + }); + } + }); + } else { + return this.expected(['pseudo-class', 'pseudo-element'], this.currToken[_tokenize.FIELDS.START_POS]); + } + }; + _proto.space = function space() { + var content = this.content(); + // Handle space before and after the selector + if (this.position === 0 || this.prevToken[_tokenize.FIELDS.TYPE] === tokens.comma || this.prevToken[_tokenize.FIELDS.TYPE] === tokens.openParenthesis || this.current.nodes.every(function (node) { + return node.type === 'comment'; + })) { + this.spaces = this.optionalSpace(content); + this.position++; + } else if (this.position === this.tokens.length - 1 || this.nextToken[_tokenize.FIELDS.TYPE] === tokens.comma || this.nextToken[_tokenize.FIELDS.TYPE] === tokens.closeParenthesis) { + this.current.last.spaces.after = this.optionalSpace(content); + this.position++; + } else { + this.combinator(); + } + }; + _proto.string = function string() { + var current = this.currToken; + this.newNode(new _string["default"]({ + value: this.content(), + source: getTokenSource(current), + sourceIndex: current[_tokenize.FIELDS.START_POS] + })); + this.position++; + }; + _proto.universal = function universal(namespace) { + var nextToken = this.nextToken; + if (nextToken && this.content(nextToken) === '|') { + this.position++; + return this.namespace(); + } + var current = this.currToken; + this.newNode(new _universal["default"]({ + value: this.content(), + source: getTokenSource(current), + sourceIndex: current[_tokenize.FIELDS.START_POS] + }), namespace); + this.position++; + }; + _proto.splitWord = function splitWord(namespace, firstCallback) { + var _this5 = this; + var nextToken = this.nextToken; + var word = this.content(); + while (nextToken && ~[tokens.dollar, tokens.caret, tokens.equals, tokens.word].indexOf(nextToken[_tokenize.FIELDS.TYPE])) { + this.position++; + var current = this.content(); + word += current; + if (current.lastIndexOf('\\') === current.length - 1) { + var next = this.nextToken; + if (next && next[_tokenize.FIELDS.TYPE] === tokens.space) { + word += this.requiredSpace(this.content(next)); + this.position++; + } + } + nextToken = this.nextToken; + } + var hasClass = indexesOf(word, '.').filter(function (i) { + // Allow escaped dot within class name + var escapedDot = word[i - 1] === '\\'; + // Allow decimal numbers percent in @keyframes + var isKeyframesPercent = /^\d+\.\d+%$/.test(word); + return !escapedDot && !isKeyframesPercent; + }); + var hasId = indexesOf(word, '#').filter(function (i) { + return word[i - 1] !== '\\'; + }); + // Eliminate Sass interpolations from the list of id indexes + var interpolations = indexesOf(word, '#{'); + if (interpolations.length) { + hasId = hasId.filter(function (hashIndex) { + return !~interpolations.indexOf(hashIndex); + }); + } + var indices = (0, _sortAscending["default"])(uniqs([0].concat(hasClass, hasId))); + indices.forEach(function (ind, i) { + var index = indices[i + 1] || word.length; + var value = word.slice(ind, index); + if (i === 0 && firstCallback) { + return firstCallback.call(_this5, value, indices.length); + } + var node; + var current = _this5.currToken; + var sourceIndex = current[_tokenize.FIELDS.START_POS] + indices[i]; + var source = getSource(current[1], current[2] + ind, current[3], current[2] + (index - 1)); + if (~hasClass.indexOf(ind)) { + var classNameOpts = { + value: value.slice(1), + source: source, + sourceIndex: sourceIndex + }; + node = new _className["default"](unescapeProp(classNameOpts, "value")); + } else if (~hasId.indexOf(ind)) { + var idOpts = { + value: value.slice(1), + source: source, + sourceIndex: sourceIndex + }; + node = new _id["default"](unescapeProp(idOpts, "value")); + } else { + var tagOpts = { + value: value, + source: source, + sourceIndex: sourceIndex + }; + unescapeProp(tagOpts, "value"); + node = new _tag["default"](tagOpts); + } + _this5.newNode(node, namespace); + // Ensure that the namespace is used only once + namespace = null; + }); + this.position++; + }; + _proto.word = function word(namespace) { + var nextToken = this.nextToken; + if (nextToken && this.content(nextToken) === '|') { + this.position++; + return this.namespace(); + } + return this.splitWord(namespace); + }; + _proto.loop = function loop() { + while (this.position < this.tokens.length) { + this.parse(true); + } + this.current._inferEndPosition(); + return this.root; + }; + _proto.parse = function parse(throwOnParenthesis) { + switch (this.currToken[_tokenize.FIELDS.TYPE]) { + case tokens.space: + this.space(); + break; + case tokens.comment: + this.comment(); + break; + case tokens.openParenthesis: + this.parentheses(); + break; + case tokens.closeParenthesis: + if (throwOnParenthesis) { + this.missingParenthesis(); + } + break; + case tokens.openSquare: + this.attribute(); + break; + case tokens.dollar: + case tokens.caret: + case tokens.equals: + case tokens.word: + this.word(); + break; + case tokens.colon: + this.pseudo(); + break; + case tokens.comma: + this.comma(); + break; + case tokens.asterisk: + this.universal(); + break; + case tokens.ampersand: + this.nesting(); + break; + case tokens.slash: + case tokens.combinator: + this.combinator(); + break; + case tokens.str: + this.string(); + break; + // These cases throw; no break needed. + case tokens.closeSquare: + this.missingSquareBracket(); + case tokens.semicolon: + this.missingBackslash(); + default: + this.unexpected(); + } + } + + /** + * Helpers + */; + _proto.expected = function expected(description, index, found) { + if (Array.isArray(description)) { + var last = description.pop(); + description = description.join(', ') + " or " + last; + } + var an = /^[aeiou]/.test(description[0]) ? 'an' : 'a'; + if (!found) { + return this.error("Expected " + an + " " + description + ".", { + index: index + }); + } + return this.error("Expected " + an + " " + description + ", found \"" + found + "\" instead.", { + index: index + }); + }; + _proto.requiredSpace = function requiredSpace(space) { + return this.options.lossy ? ' ' : space; + }; + _proto.optionalSpace = function optionalSpace(space) { + return this.options.lossy ? '' : space; + }; + _proto.lossySpace = function lossySpace(space, required) { + if (this.options.lossy) { + return required ? ' ' : ''; + } else { + return space; + } + }; + _proto.parseParenthesisToken = function parseParenthesisToken(token) { + var content = this.content(token); + if (token[_tokenize.FIELDS.TYPE] === tokens.space) { + return this.requiredSpace(content); + } else { + return content; + } + }; + _proto.newNode = function newNode(node, namespace) { + if (namespace) { + if (/^ +$/.test(namespace)) { + if (!this.options.lossy) { + this.spaces = (this.spaces || '') + namespace; + } + namespace = true; + } + node.namespace = namespace; + unescapeProp(node, "namespace"); + } + if (this.spaces) { + node.spaces.before = this.spaces; + this.spaces = ''; + } + return this.current.append(node); + }; + _proto.content = function content(token) { + if (token === void 0) { + token = this.currToken; + } + return this.css.slice(token[_tokenize.FIELDS.START_POS], token[_tokenize.FIELDS.END_POS]); + }; + /** + * returns the index of the next non-whitespace, non-comment token. + * returns -1 if no meaningful token is found. + */ + _proto.locateNextMeaningfulToken = function locateNextMeaningfulToken(startPosition) { + if (startPosition === void 0) { + startPosition = this.position + 1; + } + var searchPosition = startPosition; + while (searchPosition < this.tokens.length) { + if (WHITESPACE_EQUIV_TOKENS[this.tokens[searchPosition][_tokenize.FIELDS.TYPE]]) { + searchPosition++; + continue; + } else { + return searchPosition; + } + } + return -1; + }; + _createClass(Parser, [{ + key: "currToken", + get: function get() { + return this.tokens[this.position]; + } + }, { + key: "nextToken", + get: function get() { + return this.tokens[this.position + 1]; + } + }, { + key: "prevToken", + get: function get() { + return this.tokens[this.position - 1]; + } + }]); + return Parser; +}(); +exports["default"] = Parser; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/processor.js b/node_modules/postcss-selector-parser/dist/processor.js new file mode 100644 index 0000000..dbfa091 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/processor.js @@ -0,0 +1,170 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _parser = _interopRequireDefault(require("./parser")); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +var Processor = /*#__PURE__*/function () { + function Processor(func, options) { + this.func = func || function noop() {}; + this.funcRes = null; + this.options = options; + } + var _proto = Processor.prototype; + _proto._shouldUpdateSelector = function _shouldUpdateSelector(rule, options) { + if (options === void 0) { + options = {}; + } + var merged = Object.assign({}, this.options, options); + if (merged.updateSelector === false) { + return false; + } else { + return typeof rule !== "string"; + } + }; + _proto._isLossy = function _isLossy(options) { + if (options === void 0) { + options = {}; + } + var merged = Object.assign({}, this.options, options); + if (merged.lossless === false) { + return true; + } else { + return false; + } + }; + _proto._root = function _root(rule, options) { + if (options === void 0) { + options = {}; + } + var parser = new _parser["default"](rule, this._parseOptions(options)); + return parser.root; + }; + _proto._parseOptions = function _parseOptions(options) { + return { + lossy: this._isLossy(options) + }; + }; + _proto._run = function _run(rule, options) { + var _this = this; + if (options === void 0) { + options = {}; + } + return new Promise(function (resolve, reject) { + try { + var root = _this._root(rule, options); + Promise.resolve(_this.func(root)).then(function (transform) { + var string = undefined; + if (_this._shouldUpdateSelector(rule, options)) { + string = root.toString(); + rule.selector = string; + } + return { + transform: transform, + root: root, + string: string + }; + }).then(resolve, reject); + } catch (e) { + reject(e); + return; + } + }); + }; + _proto._runSync = function _runSync(rule, options) { + if (options === void 0) { + options = {}; + } + var root = this._root(rule, options); + var transform = this.func(root); + if (transform && typeof transform.then === "function") { + throw new Error("Selector processor returned a promise to a synchronous call."); + } + var string = undefined; + if (options.updateSelector && typeof rule !== "string") { + string = root.toString(); + rule.selector = string; + } + return { + transform: transform, + root: root, + string: string + }; + } + + /** + * Process rule into a selector AST. + * + * @param rule {postcss.Rule | string} The css selector to be processed + * @param options The options for processing + * @returns {Promise} The AST of the selector after processing it. + */; + _proto.ast = function ast(rule, options) { + return this._run(rule, options).then(function (result) { + return result.root; + }); + } + + /** + * Process rule into a selector AST synchronously. + * + * @param rule {postcss.Rule | string} The css selector to be processed + * @param options The options for processing + * @returns {parser.Root} The AST of the selector after processing it. + */; + _proto.astSync = function astSync(rule, options) { + return this._runSync(rule, options).root; + } + + /** + * Process a selector into a transformed value asynchronously + * + * @param rule {postcss.Rule | string} The css selector to be processed + * @param options The options for processing + * @returns {Promise} The value returned by the processor. + */; + _proto.transform = function transform(rule, options) { + return this._run(rule, options).then(function (result) { + return result.transform; + }); + } + + /** + * Process a selector into a transformed value synchronously. + * + * @param rule {postcss.Rule | string} The css selector to be processed + * @param options The options for processing + * @returns {any} The value returned by the processor. + */; + _proto.transformSync = function transformSync(rule, options) { + return this._runSync(rule, options).transform; + } + + /** + * Process a selector into a new selector string asynchronously. + * + * @param rule {postcss.Rule | string} The css selector to be processed + * @param options The options for processing + * @returns {string} the selector after processing. + */; + _proto.process = function process(rule, options) { + return this._run(rule, options).then(function (result) { + return result.string || result.root.toString(); + }); + } + + /** + * Process a selector into a new selector string synchronously. + * + * @param rule {postcss.Rule | string} The css selector to be processed + * @param options The options for processing + * @returns {string} the selector after processing. + */; + _proto.processSync = function processSync(rule, options) { + var result = this._runSync(rule, options); + return result.string || result.root.toString(); + }; + return Processor; +}(); +exports["default"] = Processor; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/attribute.js b/node_modules/postcss-selector-parser/dist/selectors/attribute.js new file mode 100644 index 0000000..0351a22 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/attribute.js @@ -0,0 +1,448 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +exports.unescapeValue = unescapeValue; +var _cssesc = _interopRequireDefault(require("cssesc")); +var _unesc = _interopRequireDefault(require("../util/unesc")); +var _namespace = _interopRequireDefault(require("./namespace")); +var _types = require("./types"); +var _CSSESC_QUOTE_OPTIONS; +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var deprecate = require("util-deprecate"); +var WRAPPED_IN_QUOTES = /^('|")([^]*)\1$/; +var warnOfDeprecatedValueAssignment = deprecate(function () {}, "Assigning an attribute a value containing characters that might need to be escaped is deprecated. " + "Call attribute.setValue() instead."); +var warnOfDeprecatedQuotedAssignment = deprecate(function () {}, "Assigning attr.quoted is deprecated and has no effect. Assign to attr.quoteMark instead."); +var warnOfDeprecatedConstructor = deprecate(function () {}, "Constructing an Attribute selector with a value without specifying quoteMark is deprecated. Note: The value should be unescaped now."); +function unescapeValue(value) { + var deprecatedUsage = false; + var quoteMark = null; + var unescaped = value; + var m = unescaped.match(WRAPPED_IN_QUOTES); + if (m) { + quoteMark = m[1]; + unescaped = m[2]; + } + unescaped = (0, _unesc["default"])(unescaped); + if (unescaped !== value) { + deprecatedUsage = true; + } + return { + deprecatedUsage: deprecatedUsage, + unescaped: unescaped, + quoteMark: quoteMark + }; +} +function handleDeprecatedContructorOpts(opts) { + if (opts.quoteMark !== undefined) { + return opts; + } + if (opts.value === undefined) { + return opts; + } + warnOfDeprecatedConstructor(); + var _unescapeValue = unescapeValue(opts.value), + quoteMark = _unescapeValue.quoteMark, + unescaped = _unescapeValue.unescaped; + if (!opts.raws) { + opts.raws = {}; + } + if (opts.raws.value === undefined) { + opts.raws.value = opts.value; + } + opts.value = unescaped; + opts.quoteMark = quoteMark; + return opts; +} +var Attribute = /*#__PURE__*/function (_Namespace) { + _inheritsLoose(Attribute, _Namespace); + function Attribute(opts) { + var _this; + if (opts === void 0) { + opts = {}; + } + _this = _Namespace.call(this, handleDeprecatedContructorOpts(opts)) || this; + _this.type = _types.ATTRIBUTE; + _this.raws = _this.raws || {}; + Object.defineProperty(_this.raws, 'unquoted', { + get: deprecate(function () { + return _this.value; + }, "attr.raws.unquoted is deprecated. Call attr.value instead."), + set: deprecate(function () { + return _this.value; + }, "Setting attr.raws.unquoted is deprecated and has no effect. attr.value is unescaped by default now.") + }); + _this._constructed = true; + return _this; + } + + /** + * Returns the Attribute's value quoted such that it would be legal to use + * in the value of a css file. The original value's quotation setting + * used for stringification is left unchanged. See `setValue(value, options)` + * if you want to control the quote settings of a new value for the attribute. + * + * You can also change the quotation used for the current value by setting quoteMark. + * + * Options: + * * quoteMark {'"' | "'" | null} - Use this value to quote the value. If this + * option is not set, the original value for quoteMark will be used. If + * indeterminate, a double quote is used. The legal values are: + * * `null` - the value will be unquoted and characters will be escaped as necessary. + * * `'` - the value will be quoted with a single quote and single quotes are escaped. + * * `"` - the value will be quoted with a double quote and double quotes are escaped. + * * preferCurrentQuoteMark {boolean} - if true, prefer the source quote mark + * over the quoteMark option value. + * * smart {boolean} - if true, will select a quote mark based on the value + * and the other options specified here. See the `smartQuoteMark()` + * method. + **/ + var _proto = Attribute.prototype; + _proto.getQuotedValue = function getQuotedValue(options) { + if (options === void 0) { + options = {}; + } + var quoteMark = this._determineQuoteMark(options); + var cssescopts = CSSESC_QUOTE_OPTIONS[quoteMark]; + var escaped = (0, _cssesc["default"])(this._value, cssescopts); + return escaped; + }; + _proto._determineQuoteMark = function _determineQuoteMark(options) { + return options.smart ? this.smartQuoteMark(options) : this.preferredQuoteMark(options); + } + + /** + * Set the unescaped value with the specified quotation options. The value + * provided must not include any wrapping quote marks -- those quotes will + * be interpreted as part of the value and escaped accordingly. + */; + _proto.setValue = function setValue(value, options) { + if (options === void 0) { + options = {}; + } + this._value = value; + this._quoteMark = this._determineQuoteMark(options); + this._syncRawValue(); + } + + /** + * Intelligently select a quoteMark value based on the value's contents. If + * the value is a legal CSS ident, it will not be quoted. Otherwise a quote + * mark will be picked that minimizes the number of escapes. + * + * If there's no clear winner, the quote mark from these options is used, + * then the source quote mark (this is inverted if `preferCurrentQuoteMark` is + * true). If the quoteMark is unspecified, a double quote is used. + * + * @param options This takes the quoteMark and preferCurrentQuoteMark options + * from the quoteValue method. + */; + _proto.smartQuoteMark = function smartQuoteMark(options) { + var v = this.value; + var numSingleQuotes = v.replace(/[^']/g, '').length; + var numDoubleQuotes = v.replace(/[^"]/g, '').length; + if (numSingleQuotes + numDoubleQuotes === 0) { + var escaped = (0, _cssesc["default"])(v, { + isIdentifier: true + }); + if (escaped === v) { + return Attribute.NO_QUOTE; + } else { + var pref = this.preferredQuoteMark(options); + if (pref === Attribute.NO_QUOTE) { + // pick a quote mark that isn't none and see if it's smaller + var quote = this.quoteMark || options.quoteMark || Attribute.DOUBLE_QUOTE; + var opts = CSSESC_QUOTE_OPTIONS[quote]; + var quoteValue = (0, _cssesc["default"])(v, opts); + if (quoteValue.length < escaped.length) { + return quote; + } + } + return pref; + } + } else if (numDoubleQuotes === numSingleQuotes) { + return this.preferredQuoteMark(options); + } else if (numDoubleQuotes < numSingleQuotes) { + return Attribute.DOUBLE_QUOTE; + } else { + return Attribute.SINGLE_QUOTE; + } + } + + /** + * Selects the preferred quote mark based on the options and the current quote mark value. + * If you want the quote mark to depend on the attribute value, call `smartQuoteMark(opts)` + * instead. + */; + _proto.preferredQuoteMark = function preferredQuoteMark(options) { + var quoteMark = options.preferCurrentQuoteMark ? this.quoteMark : options.quoteMark; + if (quoteMark === undefined) { + quoteMark = options.preferCurrentQuoteMark ? options.quoteMark : this.quoteMark; + } + if (quoteMark === undefined) { + quoteMark = Attribute.DOUBLE_QUOTE; + } + return quoteMark; + }; + _proto._syncRawValue = function _syncRawValue() { + var rawValue = (0, _cssesc["default"])(this._value, CSSESC_QUOTE_OPTIONS[this.quoteMark]); + if (rawValue === this._value) { + if (this.raws) { + delete this.raws.value; + } + } else { + this.raws.value = rawValue; + } + }; + _proto._handleEscapes = function _handleEscapes(prop, value) { + if (this._constructed) { + var escaped = (0, _cssesc["default"])(value, { + isIdentifier: true + }); + if (escaped !== value) { + this.raws[prop] = escaped; + } else { + delete this.raws[prop]; + } + } + }; + _proto._spacesFor = function _spacesFor(name) { + var attrSpaces = { + before: '', + after: '' + }; + var spaces = this.spaces[name] || {}; + var rawSpaces = this.raws.spaces && this.raws.spaces[name] || {}; + return Object.assign(attrSpaces, spaces, rawSpaces); + }; + _proto._stringFor = function _stringFor(name, spaceName, concat) { + if (spaceName === void 0) { + spaceName = name; + } + if (concat === void 0) { + concat = defaultAttrConcat; + } + var attrSpaces = this._spacesFor(spaceName); + return concat(this.stringifyProperty(name), attrSpaces); + } + + /** + * returns the offset of the attribute part specified relative to the + * start of the node of the output string. + * + * * "ns" - alias for "namespace" + * * "namespace" - the namespace if it exists. + * * "attribute" - the attribute name + * * "attributeNS" - the start of the attribute or its namespace + * * "operator" - the match operator of the attribute + * * "value" - The value (string or identifier) + * * "insensitive" - the case insensitivity flag; + * @param part One of the possible values inside an attribute. + * @returns -1 if the name is invalid or the value doesn't exist in this attribute. + */; + _proto.offsetOf = function offsetOf(name) { + var count = 1; + var attributeSpaces = this._spacesFor("attribute"); + count += attributeSpaces.before.length; + if (name === "namespace" || name === "ns") { + return this.namespace ? count : -1; + } + if (name === "attributeNS") { + return count; + } + count += this.namespaceString.length; + if (this.namespace) { + count += 1; + } + if (name === "attribute") { + return count; + } + count += this.stringifyProperty("attribute").length; + count += attributeSpaces.after.length; + var operatorSpaces = this._spacesFor("operator"); + count += operatorSpaces.before.length; + var operator = this.stringifyProperty("operator"); + if (name === "operator") { + return operator ? count : -1; + } + count += operator.length; + count += operatorSpaces.after.length; + var valueSpaces = this._spacesFor("value"); + count += valueSpaces.before.length; + var value = this.stringifyProperty("value"); + if (name === "value") { + return value ? count : -1; + } + count += value.length; + count += valueSpaces.after.length; + var insensitiveSpaces = this._spacesFor("insensitive"); + count += insensitiveSpaces.before.length; + if (name === "insensitive") { + return this.insensitive ? count : -1; + } + return -1; + }; + _proto.toString = function toString() { + var _this2 = this; + var selector = [this.rawSpaceBefore, '[']; + selector.push(this._stringFor('qualifiedAttribute', 'attribute')); + if (this.operator && (this.value || this.value === '')) { + selector.push(this._stringFor('operator')); + selector.push(this._stringFor('value')); + selector.push(this._stringFor('insensitiveFlag', 'insensitive', function (attrValue, attrSpaces) { + if (attrValue.length > 0 && !_this2.quoted && attrSpaces.before.length === 0 && !(_this2.spaces.value && _this2.spaces.value.after)) { + attrSpaces.before = " "; + } + return defaultAttrConcat(attrValue, attrSpaces); + })); + } + selector.push(']'); + selector.push(this.rawSpaceAfter); + return selector.join(''); + }; + _createClass(Attribute, [{ + key: "quoted", + get: function get() { + var qm = this.quoteMark; + return qm === "'" || qm === '"'; + }, + set: function set(value) { + warnOfDeprecatedQuotedAssignment(); + } + + /** + * returns a single (`'`) or double (`"`) quote character if the value is quoted. + * returns `null` if the value is not quoted. + * returns `undefined` if the quotation state is unknown (this can happen when + * the attribute is constructed without specifying a quote mark.) + */ + }, { + key: "quoteMark", + get: function get() { + return this._quoteMark; + } + + /** + * Set the quote mark to be used by this attribute's value. + * If the quote mark changes, the raw (escaped) value at `attr.raws.value` of the attribute + * value is updated accordingly. + * + * @param {"'" | '"' | null} quoteMark The quote mark or `null` if the value should be unquoted. + */, + set: function set(quoteMark) { + if (!this._constructed) { + this._quoteMark = quoteMark; + return; + } + if (this._quoteMark !== quoteMark) { + this._quoteMark = quoteMark; + this._syncRawValue(); + } + } + }, { + key: "qualifiedAttribute", + get: function get() { + return this.qualifiedName(this.raws.attribute || this.attribute); + } + }, { + key: "insensitiveFlag", + get: function get() { + return this.insensitive ? 'i' : ''; + } + }, { + key: "value", + get: function get() { + return this._value; + }, + set: + /** + * Before 3.0, the value had to be set to an escaped value including any wrapped + * quote marks. In 3.0, the semantics of `Attribute.value` changed so that the value + * is unescaped during parsing and any quote marks are removed. + * + * Because the ambiguity of this semantic change, if you set `attr.value = newValue`, + * a deprecation warning is raised when the new value contains any characters that would + * require escaping (including if it contains wrapped quotes). + * + * Instead, you should call `attr.setValue(newValue, opts)` and pass options that describe + * how the new value is quoted. + */ + function set(v) { + if (this._constructed) { + var _unescapeValue2 = unescapeValue(v), + deprecatedUsage = _unescapeValue2.deprecatedUsage, + unescaped = _unescapeValue2.unescaped, + quoteMark = _unescapeValue2.quoteMark; + if (deprecatedUsage) { + warnOfDeprecatedValueAssignment(); + } + if (unescaped === this._value && quoteMark === this._quoteMark) { + return; + } + this._value = unescaped; + this._quoteMark = quoteMark; + this._syncRawValue(); + } else { + this._value = v; + } + } + }, { + key: "insensitive", + get: function get() { + return this._insensitive; + } + + /** + * Set the case insensitive flag. + * If the case insensitive flag changes, the raw (escaped) value at `attr.raws.insensitiveFlag` + * of the attribute is updated accordingly. + * + * @param {true | false} insensitive true if the attribute should match case-insensitively. + */, + set: function set(insensitive) { + if (!insensitive) { + this._insensitive = false; + + // "i" and "I" can be used in "this.raws.insensitiveFlag" to store the original notation. + // When setting `attr.insensitive = false` both should be erased to ensure correct serialization. + if (this.raws && (this.raws.insensitiveFlag === 'I' || this.raws.insensitiveFlag === 'i')) { + this.raws.insensitiveFlag = undefined; + } + } + this._insensitive = insensitive; + } + }, { + key: "attribute", + get: function get() { + return this._attribute; + }, + set: function set(name) { + this._handleEscapes("attribute", name); + this._attribute = name; + } + }]); + return Attribute; +}(_namespace["default"]); +exports["default"] = Attribute; +Attribute.NO_QUOTE = null; +Attribute.SINGLE_QUOTE = "'"; +Attribute.DOUBLE_QUOTE = '"'; +var CSSESC_QUOTE_OPTIONS = (_CSSESC_QUOTE_OPTIONS = { + "'": { + quotes: 'single', + wrap: true + }, + '"': { + quotes: 'double', + wrap: true + } +}, _CSSESC_QUOTE_OPTIONS[null] = { + isIdentifier: true +}, _CSSESC_QUOTE_OPTIONS); +function defaultAttrConcat(attrValue, attrSpaces) { + return "" + attrSpaces.before + attrValue + attrSpaces.after; +} \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/className.js b/node_modules/postcss-selector-parser/dist/selectors/className.js new file mode 100644 index 0000000..af32597 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/className.js @@ -0,0 +1,50 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _cssesc = _interopRequireDefault(require("cssesc")); +var _util = require("../util"); +var _node = _interopRequireDefault(require("./node")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var ClassName = /*#__PURE__*/function (_Node) { + _inheritsLoose(ClassName, _Node); + function ClassName(opts) { + var _this; + _this = _Node.call(this, opts) || this; + _this.type = _types.CLASS; + _this._constructed = true; + return _this; + } + var _proto = ClassName.prototype; + _proto.valueToString = function valueToString() { + return '.' + _Node.prototype.valueToString.call(this); + }; + _createClass(ClassName, [{ + key: "value", + get: function get() { + return this._value; + }, + set: function set(v) { + if (this._constructed) { + var escaped = (0, _cssesc["default"])(v, { + isIdentifier: true + }); + if (escaped !== v) { + (0, _util.ensureObject)(this, "raws"); + this.raws.value = escaped; + } else if (this.raws) { + delete this.raws.value; + } + } + this._value = v; + } + }]); + return ClassName; +}(_node["default"]); +exports["default"] = ClassName; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/combinator.js b/node_modules/postcss-selector-parser/dist/selectors/combinator.js new file mode 100644 index 0000000..c6449f4 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/combinator.js @@ -0,0 +1,21 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _node = _interopRequireDefault(require("./node")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var Combinator = /*#__PURE__*/function (_Node) { + _inheritsLoose(Combinator, _Node); + function Combinator(opts) { + var _this; + _this = _Node.call(this, opts) || this; + _this.type = _types.COMBINATOR; + return _this; + } + return Combinator; +}(_node["default"]); +exports["default"] = Combinator; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/comment.js b/node_modules/postcss-selector-parser/dist/selectors/comment.js new file mode 100644 index 0000000..1709d5b --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/comment.js @@ -0,0 +1,21 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _node = _interopRequireDefault(require("./node")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var Comment = /*#__PURE__*/function (_Node) { + _inheritsLoose(Comment, _Node); + function Comment(opts) { + var _this; + _this = _Node.call(this, opts) || this; + _this.type = _types.COMMENT; + return _this; + } + return Comment; +}(_node["default"]); +exports["default"] = Comment; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/constructors.js b/node_modules/postcss-selector-parser/dist/selectors/constructors.js new file mode 100644 index 0000000..6882593 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/constructors.js @@ -0,0 +1,65 @@ +"use strict"; + +exports.__esModule = true; +exports.universal = exports.tag = exports.string = exports.selector = exports.root = exports.pseudo = exports.nesting = exports.id = exports.comment = exports.combinator = exports.className = exports.attribute = void 0; +var _attribute = _interopRequireDefault(require("./attribute")); +var _className = _interopRequireDefault(require("./className")); +var _combinator = _interopRequireDefault(require("./combinator")); +var _comment = _interopRequireDefault(require("./comment")); +var _id = _interopRequireDefault(require("./id")); +var _nesting = _interopRequireDefault(require("./nesting")); +var _pseudo = _interopRequireDefault(require("./pseudo")); +var _root = _interopRequireDefault(require("./root")); +var _selector = _interopRequireDefault(require("./selector")); +var _string = _interopRequireDefault(require("./string")); +var _tag = _interopRequireDefault(require("./tag")); +var _universal = _interopRequireDefault(require("./universal")); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +var attribute = function attribute(opts) { + return new _attribute["default"](opts); +}; +exports.attribute = attribute; +var className = function className(opts) { + return new _className["default"](opts); +}; +exports.className = className; +var combinator = function combinator(opts) { + return new _combinator["default"](opts); +}; +exports.combinator = combinator; +var comment = function comment(opts) { + return new _comment["default"](opts); +}; +exports.comment = comment; +var id = function id(opts) { + return new _id["default"](opts); +}; +exports.id = id; +var nesting = function nesting(opts) { + return new _nesting["default"](opts); +}; +exports.nesting = nesting; +var pseudo = function pseudo(opts) { + return new _pseudo["default"](opts); +}; +exports.pseudo = pseudo; +var root = function root(opts) { + return new _root["default"](opts); +}; +exports.root = root; +var selector = function selector(opts) { + return new _selector["default"](opts); +}; +exports.selector = selector; +var string = function string(opts) { + return new _string["default"](opts); +}; +exports.string = string; +var tag = function tag(opts) { + return new _tag["default"](opts); +}; +exports.tag = tag; +var universal = function universal(opts) { + return new _universal["default"](opts); +}; +exports.universal = universal; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/container.js b/node_modules/postcss-selector-parser/dist/selectors/container.js new file mode 100644 index 0000000..8600c54 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/container.js @@ -0,0 +1,308 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _node = _interopRequireDefault(require("./node")); +var types = _interopRequireWildcard(require("./types")); +function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } +function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } +function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } +function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var Container = /*#__PURE__*/function (_Node) { + _inheritsLoose(Container, _Node); + function Container(opts) { + var _this; + _this = _Node.call(this, opts) || this; + if (!_this.nodes) { + _this.nodes = []; + } + return _this; + } + var _proto = Container.prototype; + _proto.append = function append(selector) { + selector.parent = this; + this.nodes.push(selector); + return this; + }; + _proto.prepend = function prepend(selector) { + selector.parent = this; + this.nodes.unshift(selector); + return this; + }; + _proto.at = function at(index) { + return this.nodes[index]; + }; + _proto.index = function index(child) { + if (typeof child === 'number') { + return child; + } + return this.nodes.indexOf(child); + }; + _proto.removeChild = function removeChild(child) { + child = this.index(child); + this.at(child).parent = undefined; + this.nodes.splice(child, 1); + var index; + for (var id in this.indexes) { + index = this.indexes[id]; + if (index >= child) { + this.indexes[id] = index - 1; + } + } + return this; + }; + _proto.removeAll = function removeAll() { + for (var _iterator = _createForOfIteratorHelperLoose(this.nodes), _step; !(_step = _iterator()).done;) { + var node = _step.value; + node.parent = undefined; + } + this.nodes = []; + return this; + }; + _proto.empty = function empty() { + return this.removeAll(); + }; + _proto.insertAfter = function insertAfter(oldNode, newNode) { + newNode.parent = this; + var oldIndex = this.index(oldNode); + this.nodes.splice(oldIndex + 1, 0, newNode); + newNode.parent = this; + var index; + for (var id in this.indexes) { + index = this.indexes[id]; + if (oldIndex <= index) { + this.indexes[id] = index + 1; + } + } + return this; + }; + _proto.insertBefore = function insertBefore(oldNode, newNode) { + newNode.parent = this; + var oldIndex = this.index(oldNode); + this.nodes.splice(oldIndex, 0, newNode); + newNode.parent = this; + var index; + for (var id in this.indexes) { + index = this.indexes[id]; + if (index <= oldIndex) { + this.indexes[id] = index + 1; + } + } + return this; + }; + _proto._findChildAtPosition = function _findChildAtPosition(line, col) { + var found = undefined; + this.each(function (node) { + if (node.atPosition) { + var foundChild = node.atPosition(line, col); + if (foundChild) { + found = foundChild; + return false; + } + } else if (node.isAtPosition(line, col)) { + found = node; + return false; + } + }); + return found; + } + + /** + * Return the most specific node at the line and column number given. + * The source location is based on the original parsed location, locations aren't + * updated as selector nodes are mutated. + * + * Note that this location is relative to the location of the first character + * of the selector, and not the location of the selector in the overall document + * when used in conjunction with postcss. + * + * If not found, returns undefined. + * @param {number} line The line number of the node to find. (1-based index) + * @param {number} col The column number of the node to find. (1-based index) + */; + _proto.atPosition = function atPosition(line, col) { + if (this.isAtPosition(line, col)) { + return this._findChildAtPosition(line, col) || this; + } else { + return undefined; + } + }; + _proto._inferEndPosition = function _inferEndPosition() { + if (this.last && this.last.source && this.last.source.end) { + this.source = this.source || {}; + this.source.end = this.source.end || {}; + Object.assign(this.source.end, this.last.source.end); + } + }; + _proto.each = function each(callback) { + if (!this.lastEach) { + this.lastEach = 0; + } + if (!this.indexes) { + this.indexes = {}; + } + this.lastEach++; + var id = this.lastEach; + this.indexes[id] = 0; + if (!this.length) { + return undefined; + } + var index, result; + while (this.indexes[id] < this.length) { + index = this.indexes[id]; + result = callback(this.at(index), index); + if (result === false) { + break; + } + this.indexes[id] += 1; + } + delete this.indexes[id]; + if (result === false) { + return false; + } + }; + _proto.walk = function walk(callback) { + return this.each(function (node, i) { + var result = callback(node, i); + if (result !== false && node.length) { + result = node.walk(callback); + } + if (result === false) { + return false; + } + }); + }; + _proto.walkAttributes = function walkAttributes(callback) { + var _this2 = this; + return this.walk(function (selector) { + if (selector.type === types.ATTRIBUTE) { + return callback.call(_this2, selector); + } + }); + }; + _proto.walkClasses = function walkClasses(callback) { + var _this3 = this; + return this.walk(function (selector) { + if (selector.type === types.CLASS) { + return callback.call(_this3, selector); + } + }); + }; + _proto.walkCombinators = function walkCombinators(callback) { + var _this4 = this; + return this.walk(function (selector) { + if (selector.type === types.COMBINATOR) { + return callback.call(_this4, selector); + } + }); + }; + _proto.walkComments = function walkComments(callback) { + var _this5 = this; + return this.walk(function (selector) { + if (selector.type === types.COMMENT) { + return callback.call(_this5, selector); + } + }); + }; + _proto.walkIds = function walkIds(callback) { + var _this6 = this; + return this.walk(function (selector) { + if (selector.type === types.ID) { + return callback.call(_this6, selector); + } + }); + }; + _proto.walkNesting = function walkNesting(callback) { + var _this7 = this; + return this.walk(function (selector) { + if (selector.type === types.NESTING) { + return callback.call(_this7, selector); + } + }); + }; + _proto.walkPseudos = function walkPseudos(callback) { + var _this8 = this; + return this.walk(function (selector) { + if (selector.type === types.PSEUDO) { + return callback.call(_this8, selector); + } + }); + }; + _proto.walkTags = function walkTags(callback) { + var _this9 = this; + return this.walk(function (selector) { + if (selector.type === types.TAG) { + return callback.call(_this9, selector); + } + }); + }; + _proto.walkUniversals = function walkUniversals(callback) { + var _this10 = this; + return this.walk(function (selector) { + if (selector.type === types.UNIVERSAL) { + return callback.call(_this10, selector); + } + }); + }; + _proto.split = function split(callback) { + var _this11 = this; + var current = []; + return this.reduce(function (memo, node, index) { + var split = callback.call(_this11, node); + current.push(node); + if (split) { + memo.push(current); + current = []; + } else if (index === _this11.length - 1) { + memo.push(current); + } + return memo; + }, []); + }; + _proto.map = function map(callback) { + return this.nodes.map(callback); + }; + _proto.reduce = function reduce(callback, memo) { + return this.nodes.reduce(callback, memo); + }; + _proto.every = function every(callback) { + return this.nodes.every(callback); + }; + _proto.some = function some(callback) { + return this.nodes.some(callback); + }; + _proto.filter = function filter(callback) { + return this.nodes.filter(callback); + }; + _proto.sort = function sort(callback) { + return this.nodes.sort(callback); + }; + _proto.toString = function toString() { + return this.map(String).join(''); + }; + _createClass(Container, [{ + key: "first", + get: function get() { + return this.at(0); + } + }, { + key: "last", + get: function get() { + return this.at(this.length - 1); + } + }, { + key: "length", + get: function get() { + return this.nodes.length; + } + }]); + return Container; +}(_node["default"]); +exports["default"] = Container; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/guards.js b/node_modules/postcss-selector-parser/dist/selectors/guards.js new file mode 100644 index 0000000..f06161e --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/guards.js @@ -0,0 +1,58 @@ +"use strict"; + +exports.__esModule = true; +exports.isComment = exports.isCombinator = exports.isClassName = exports.isAttribute = void 0; +exports.isContainer = isContainer; +exports.isIdentifier = void 0; +exports.isNamespace = isNamespace; +exports.isNesting = void 0; +exports.isNode = isNode; +exports.isPseudo = void 0; +exports.isPseudoClass = isPseudoClass; +exports.isPseudoElement = isPseudoElement; +exports.isUniversal = exports.isTag = exports.isString = exports.isSelector = exports.isRoot = void 0; +var _types = require("./types"); +var _IS_TYPE; +var IS_TYPE = (_IS_TYPE = {}, _IS_TYPE[_types.ATTRIBUTE] = true, _IS_TYPE[_types.CLASS] = true, _IS_TYPE[_types.COMBINATOR] = true, _IS_TYPE[_types.COMMENT] = true, _IS_TYPE[_types.ID] = true, _IS_TYPE[_types.NESTING] = true, _IS_TYPE[_types.PSEUDO] = true, _IS_TYPE[_types.ROOT] = true, _IS_TYPE[_types.SELECTOR] = true, _IS_TYPE[_types.STRING] = true, _IS_TYPE[_types.TAG] = true, _IS_TYPE[_types.UNIVERSAL] = true, _IS_TYPE); +function isNode(node) { + return typeof node === "object" && IS_TYPE[node.type]; +} +function isNodeType(type, node) { + return isNode(node) && node.type === type; +} +var isAttribute = isNodeType.bind(null, _types.ATTRIBUTE); +exports.isAttribute = isAttribute; +var isClassName = isNodeType.bind(null, _types.CLASS); +exports.isClassName = isClassName; +var isCombinator = isNodeType.bind(null, _types.COMBINATOR); +exports.isCombinator = isCombinator; +var isComment = isNodeType.bind(null, _types.COMMENT); +exports.isComment = isComment; +var isIdentifier = isNodeType.bind(null, _types.ID); +exports.isIdentifier = isIdentifier; +var isNesting = isNodeType.bind(null, _types.NESTING); +exports.isNesting = isNesting; +var isPseudo = isNodeType.bind(null, _types.PSEUDO); +exports.isPseudo = isPseudo; +var isRoot = isNodeType.bind(null, _types.ROOT); +exports.isRoot = isRoot; +var isSelector = isNodeType.bind(null, _types.SELECTOR); +exports.isSelector = isSelector; +var isString = isNodeType.bind(null, _types.STRING); +exports.isString = isString; +var isTag = isNodeType.bind(null, _types.TAG); +exports.isTag = isTag; +var isUniversal = isNodeType.bind(null, _types.UNIVERSAL); +exports.isUniversal = isUniversal; +function isPseudoElement(node) { + return isPseudo(node) && node.value && (node.value.startsWith("::") || node.value.toLowerCase() === ":before" || node.value.toLowerCase() === ":after" || node.value.toLowerCase() === ":first-letter" || node.value.toLowerCase() === ":first-line"); +} +function isPseudoClass(node) { + return isPseudo(node) && !isPseudoElement(node); +} +function isContainer(node) { + return !!(isNode(node) && node.walk); +} +function isNamespace(node) { + return isAttribute(node) || isTag(node); +} \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/id.js b/node_modules/postcss-selector-parser/dist/selectors/id.js new file mode 100644 index 0000000..8baef72 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/id.js @@ -0,0 +1,25 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _node = _interopRequireDefault(require("./node")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var ID = /*#__PURE__*/function (_Node) { + _inheritsLoose(ID, _Node); + function ID(opts) { + var _this; + _this = _Node.call(this, opts) || this; + _this.type = _types.ID; + return _this; + } + var _proto = ID.prototype; + _proto.valueToString = function valueToString() { + return '#' + _Node.prototype.valueToString.call(this); + }; + return ID; +}(_node["default"]); +exports["default"] = ID; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/index.js b/node_modules/postcss-selector-parser/dist/selectors/index.js new file mode 100644 index 0000000..f1f6b7f --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/index.js @@ -0,0 +1,21 @@ +"use strict"; + +exports.__esModule = true; +var _types = require("./types"); +Object.keys(_types).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _types[key]) return; + exports[key] = _types[key]; +}); +var _constructors = require("./constructors"); +Object.keys(_constructors).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _constructors[key]) return; + exports[key] = _constructors[key]; +}); +var _guards = require("./guards"); +Object.keys(_guards).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _guards[key]) return; + exports[key] = _guards[key]; +}); \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/namespace.js b/node_modules/postcss-selector-parser/dist/selectors/namespace.js new file mode 100644 index 0000000..cc97647 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/namespace.js @@ -0,0 +1,80 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _cssesc = _interopRequireDefault(require("cssesc")); +var _util = require("../util"); +var _node = _interopRequireDefault(require("./node")); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var Namespace = /*#__PURE__*/function (_Node) { + _inheritsLoose(Namespace, _Node); + function Namespace() { + return _Node.apply(this, arguments) || this; + } + var _proto = Namespace.prototype; + _proto.qualifiedName = function qualifiedName(value) { + if (this.namespace) { + return this.namespaceString + "|" + value; + } else { + return value; + } + }; + _proto.valueToString = function valueToString() { + return this.qualifiedName(_Node.prototype.valueToString.call(this)); + }; + _createClass(Namespace, [{ + key: "namespace", + get: function get() { + return this._namespace; + }, + set: function set(namespace) { + if (namespace === true || namespace === "*" || namespace === "&") { + this._namespace = namespace; + if (this.raws) { + delete this.raws.namespace; + } + return; + } + var escaped = (0, _cssesc["default"])(namespace, { + isIdentifier: true + }); + this._namespace = namespace; + if (escaped !== namespace) { + (0, _util.ensureObject)(this, "raws"); + this.raws.namespace = escaped; + } else if (this.raws) { + delete this.raws.namespace; + } + } + }, { + key: "ns", + get: function get() { + return this._namespace; + }, + set: function set(namespace) { + this.namespace = namespace; + } + }, { + key: "namespaceString", + get: function get() { + if (this.namespace) { + var ns = this.stringifyProperty("namespace"); + if (ns === true) { + return ''; + } else { + return ns; + } + } else { + return ''; + } + } + }]); + return Namespace; +}(_node["default"]); +exports["default"] = Namespace; +; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/nesting.js b/node_modules/postcss-selector-parser/dist/selectors/nesting.js new file mode 100644 index 0000000..2189928 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/nesting.js @@ -0,0 +1,22 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _node = _interopRequireDefault(require("./node")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var Nesting = /*#__PURE__*/function (_Node) { + _inheritsLoose(Nesting, _Node); + function Nesting(opts) { + var _this; + _this = _Node.call(this, opts) || this; + _this.type = _types.NESTING; + _this.value = '&'; + return _this; + } + return Nesting; +}(_node["default"]); +exports["default"] = Nesting; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/node.js b/node_modules/postcss-selector-parser/dist/selectors/node.js new file mode 100644 index 0000000..9a82951 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/node.js @@ -0,0 +1,192 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _util = require("../util"); +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } +var cloneNode = function cloneNode(obj, parent) { + if (typeof obj !== 'object' || obj === null) { + return obj; + } + var cloned = new obj.constructor(); + for (var i in obj) { + if (!obj.hasOwnProperty(i)) { + continue; + } + var value = obj[i]; + var type = typeof value; + if (i === 'parent' && type === 'object') { + if (parent) { + cloned[i] = parent; + } + } else if (value instanceof Array) { + cloned[i] = value.map(function (j) { + return cloneNode(j, cloned); + }); + } else { + cloned[i] = cloneNode(value, cloned); + } + } + return cloned; +}; +var Node = /*#__PURE__*/function () { + function Node(opts) { + if (opts === void 0) { + opts = {}; + } + Object.assign(this, opts); + this.spaces = this.spaces || {}; + this.spaces.before = this.spaces.before || ''; + this.spaces.after = this.spaces.after || ''; + } + var _proto = Node.prototype; + _proto.remove = function remove() { + if (this.parent) { + this.parent.removeChild(this); + } + this.parent = undefined; + return this; + }; + _proto.replaceWith = function replaceWith() { + if (this.parent) { + for (var index in arguments) { + this.parent.insertBefore(this, arguments[index]); + } + this.remove(); + } + return this; + }; + _proto.next = function next() { + return this.parent.at(this.parent.index(this) + 1); + }; + _proto.prev = function prev() { + return this.parent.at(this.parent.index(this) - 1); + }; + _proto.clone = function clone(overrides) { + if (overrides === void 0) { + overrides = {}; + } + var cloned = cloneNode(this); + for (var name in overrides) { + cloned[name] = overrides[name]; + } + return cloned; + } + + /** + * Some non-standard syntax doesn't follow normal escaping rules for css. + * This allows non standard syntax to be appended to an existing property + * by specifying the escaped value. By specifying the escaped value, + * illegal characters are allowed to be directly inserted into css output. + * @param {string} name the property to set + * @param {any} value the unescaped value of the property + * @param {string} valueEscaped optional. the escaped value of the property. + */; + _proto.appendToPropertyAndEscape = function appendToPropertyAndEscape(name, value, valueEscaped) { + if (!this.raws) { + this.raws = {}; + } + var originalValue = this[name]; + var originalEscaped = this.raws[name]; + this[name] = originalValue + value; // this may trigger a setter that updates raws, so it has to be set first. + if (originalEscaped || valueEscaped !== value) { + this.raws[name] = (originalEscaped || originalValue) + valueEscaped; + } else { + delete this.raws[name]; // delete any escaped value that was created by the setter. + } + } + + /** + * Some non-standard syntax doesn't follow normal escaping rules for css. + * This allows the escaped value to be specified directly, allowing illegal + * characters to be directly inserted into css output. + * @param {string} name the property to set + * @param {any} value the unescaped value of the property + * @param {string} valueEscaped the escaped value of the property. + */; + _proto.setPropertyAndEscape = function setPropertyAndEscape(name, value, valueEscaped) { + if (!this.raws) { + this.raws = {}; + } + this[name] = value; // this may trigger a setter that updates raws, so it has to be set first. + this.raws[name] = valueEscaped; + } + + /** + * When you want a value to passed through to CSS directly. This method + * deletes the corresponding raw value causing the stringifier to fallback + * to the unescaped value. + * @param {string} name the property to set. + * @param {any} value The value that is both escaped and unescaped. + */; + _proto.setPropertyWithoutEscape = function setPropertyWithoutEscape(name, value) { + this[name] = value; // this may trigger a setter that updates raws, so it has to be set first. + if (this.raws) { + delete this.raws[name]; + } + } + + /** + * + * @param {number} line The number (starting with 1) + * @param {number} column The column number (starting with 1) + */; + _proto.isAtPosition = function isAtPosition(line, column) { + if (this.source && this.source.start && this.source.end) { + if (this.source.start.line > line) { + return false; + } + if (this.source.end.line < line) { + return false; + } + if (this.source.start.line === line && this.source.start.column > column) { + return false; + } + if (this.source.end.line === line && this.source.end.column < column) { + return false; + } + return true; + } + return undefined; + }; + _proto.stringifyProperty = function stringifyProperty(name) { + return this.raws && this.raws[name] || this[name]; + }; + _proto.valueToString = function valueToString() { + return String(this.stringifyProperty("value")); + }; + _proto.toString = function toString() { + return [this.rawSpaceBefore, this.valueToString(), this.rawSpaceAfter].join(''); + }; + _createClass(Node, [{ + key: "rawSpaceBefore", + get: function get() { + var rawSpace = this.raws && this.raws.spaces && this.raws.spaces.before; + if (rawSpace === undefined) { + rawSpace = this.spaces && this.spaces.before; + } + return rawSpace || ""; + }, + set: function set(raw) { + (0, _util.ensureObject)(this, "raws", "spaces"); + this.raws.spaces.before = raw; + } + }, { + key: "rawSpaceAfter", + get: function get() { + var rawSpace = this.raws && this.raws.spaces && this.raws.spaces.after; + if (rawSpace === undefined) { + rawSpace = this.spaces.after; + } + return rawSpace || ""; + }, + set: function set(raw) { + (0, _util.ensureObject)(this, "raws", "spaces"); + this.raws.spaces.after = raw; + } + }]); + return Node; +}(); +exports["default"] = Node; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/pseudo.js b/node_modules/postcss-selector-parser/dist/selectors/pseudo.js new file mode 100644 index 0000000..4371e59 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/pseudo.js @@ -0,0 +1,26 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _container = _interopRequireDefault(require("./container")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var Pseudo = /*#__PURE__*/function (_Container) { + _inheritsLoose(Pseudo, _Container); + function Pseudo(opts) { + var _this; + _this = _Container.call(this, opts) || this; + _this.type = _types.PSEUDO; + return _this; + } + var _proto = Pseudo.prototype; + _proto.toString = function toString() { + var params = this.length ? '(' + this.map(String).join(',') + ')' : ''; + return [this.rawSpaceBefore, this.stringifyProperty("value"), params, this.rawSpaceAfter].join(''); + }; + return Pseudo; +}(_container["default"]); +exports["default"] = Pseudo; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/root.js b/node_modules/postcss-selector-parser/dist/selectors/root.js new file mode 100644 index 0000000..8c599d1 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/root.js @@ -0,0 +1,44 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _container = _interopRequireDefault(require("./container")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var Root = /*#__PURE__*/function (_Container) { + _inheritsLoose(Root, _Container); + function Root(opts) { + var _this; + _this = _Container.call(this, opts) || this; + _this.type = _types.ROOT; + return _this; + } + var _proto = Root.prototype; + _proto.toString = function toString() { + var str = this.reduce(function (memo, selector) { + memo.push(String(selector)); + return memo; + }, []).join(','); + return this.trailingComma ? str + ',' : str; + }; + _proto.error = function error(message, options) { + if (this._error) { + return this._error(message, options); + } else { + return new Error(message); + } + }; + _createClass(Root, [{ + key: "errorGenerator", + set: function set(handler) { + this._error = handler; + } + }]); + return Root; +}(_container["default"]); +exports["default"] = Root; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/selector.js b/node_modules/postcss-selector-parser/dist/selectors/selector.js new file mode 100644 index 0000000..8cc4bc1 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/selector.js @@ -0,0 +1,21 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _container = _interopRequireDefault(require("./container")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var Selector = /*#__PURE__*/function (_Container) { + _inheritsLoose(Selector, _Container); + function Selector(opts) { + var _this; + _this = _Container.call(this, opts) || this; + _this.type = _types.SELECTOR; + return _this; + } + return Selector; +}(_container["default"]); +exports["default"] = Selector; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/string.js b/node_modules/postcss-selector-parser/dist/selectors/string.js new file mode 100644 index 0000000..4749791 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/string.js @@ -0,0 +1,21 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _node = _interopRequireDefault(require("./node")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var String = /*#__PURE__*/function (_Node) { + _inheritsLoose(String, _Node); + function String(opts) { + var _this; + _this = _Node.call(this, opts) || this; + _this.type = _types.STRING; + return _this; + } + return String; +}(_node["default"]); +exports["default"] = String; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/tag.js b/node_modules/postcss-selector-parser/dist/selectors/tag.js new file mode 100644 index 0000000..224e74d --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/tag.js @@ -0,0 +1,21 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _namespace = _interopRequireDefault(require("./namespace")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var Tag = /*#__PURE__*/function (_Namespace) { + _inheritsLoose(Tag, _Namespace); + function Tag(opts) { + var _this; + _this = _Namespace.call(this, opts) || this; + _this.type = _types.TAG; + return _this; + } + return Tag; +}(_namespace["default"]); +exports["default"] = Tag; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/types.js b/node_modules/postcss-selector-parser/dist/selectors/types.js new file mode 100644 index 0000000..824cc0c --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/types.js @@ -0,0 +1,28 @@ +"use strict"; + +exports.__esModule = true; +exports.UNIVERSAL = exports.TAG = exports.STRING = exports.SELECTOR = exports.ROOT = exports.PSEUDO = exports.NESTING = exports.ID = exports.COMMENT = exports.COMBINATOR = exports.CLASS = exports.ATTRIBUTE = void 0; +var TAG = 'tag'; +exports.TAG = TAG; +var STRING = 'string'; +exports.STRING = STRING; +var SELECTOR = 'selector'; +exports.SELECTOR = SELECTOR; +var ROOT = 'root'; +exports.ROOT = ROOT; +var PSEUDO = 'pseudo'; +exports.PSEUDO = PSEUDO; +var NESTING = 'nesting'; +exports.NESTING = NESTING; +var ID = 'id'; +exports.ID = ID; +var COMMENT = 'comment'; +exports.COMMENT = COMMENT; +var COMBINATOR = 'combinator'; +exports.COMBINATOR = COMBINATOR; +var CLASS = 'class'; +exports.CLASS = CLASS; +var ATTRIBUTE = 'attribute'; +exports.ATTRIBUTE = ATTRIBUTE; +var UNIVERSAL = 'universal'; +exports.UNIVERSAL = UNIVERSAL; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/selectors/universal.js b/node_modules/postcss-selector-parser/dist/selectors/universal.js new file mode 100644 index 0000000..5b58743 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/selectors/universal.js @@ -0,0 +1,22 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = void 0; +var _namespace = _interopRequireDefault(require("./namespace")); +var _types = require("./types"); +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } +function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); } +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } +var Universal = /*#__PURE__*/function (_Namespace) { + _inheritsLoose(Universal, _Namespace); + function Universal(opts) { + var _this; + _this = _Namespace.call(this, opts) || this; + _this.type = _types.UNIVERSAL; + _this.value = '*'; + return _this; + } + return Universal; +}(_namespace["default"]); +exports["default"] = Universal; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/sortAscending.js b/node_modules/postcss-selector-parser/dist/sortAscending.js new file mode 100644 index 0000000..5666d5d --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/sortAscending.js @@ -0,0 +1,11 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = sortAscending; +function sortAscending(list) { + return list.sort(function (a, b) { + return a - b; + }); +} +; +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/tokenTypes.js b/node_modules/postcss-selector-parser/dist/tokenTypes.js new file mode 100644 index 0000000..59d8e6c --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/tokenTypes.js @@ -0,0 +1,70 @@ +"use strict"; + +exports.__esModule = true; +exports.word = exports.tilde = exports.tab = exports.str = exports.space = exports.slash = exports.singleQuote = exports.semicolon = exports.plus = exports.pipe = exports.openSquare = exports.openParenthesis = exports.newline = exports.greaterThan = exports.feed = exports.equals = exports.doubleQuote = exports.dollar = exports.cr = exports.comment = exports.comma = exports.combinator = exports.colon = exports.closeSquare = exports.closeParenthesis = exports.caret = exports.bang = exports.backslash = exports.at = exports.asterisk = exports.ampersand = void 0; +var ampersand = 38; // `&`.charCodeAt(0); +exports.ampersand = ampersand; +var asterisk = 42; // `*`.charCodeAt(0); +exports.asterisk = asterisk; +var at = 64; // `@`.charCodeAt(0); +exports.at = at; +var comma = 44; // `,`.charCodeAt(0); +exports.comma = comma; +var colon = 58; // `:`.charCodeAt(0); +exports.colon = colon; +var semicolon = 59; // `;`.charCodeAt(0); +exports.semicolon = semicolon; +var openParenthesis = 40; // `(`.charCodeAt(0); +exports.openParenthesis = openParenthesis; +var closeParenthesis = 41; // `)`.charCodeAt(0); +exports.closeParenthesis = closeParenthesis; +var openSquare = 91; // `[`.charCodeAt(0); +exports.openSquare = openSquare; +var closeSquare = 93; // `]`.charCodeAt(0); +exports.closeSquare = closeSquare; +var dollar = 36; // `$`.charCodeAt(0); +exports.dollar = dollar; +var tilde = 126; // `~`.charCodeAt(0); +exports.tilde = tilde; +var caret = 94; // `^`.charCodeAt(0); +exports.caret = caret; +var plus = 43; // `+`.charCodeAt(0); +exports.plus = plus; +var equals = 61; // `=`.charCodeAt(0); +exports.equals = equals; +var pipe = 124; // `|`.charCodeAt(0); +exports.pipe = pipe; +var greaterThan = 62; // `>`.charCodeAt(0); +exports.greaterThan = greaterThan; +var space = 32; // ` `.charCodeAt(0); +exports.space = space; +var singleQuote = 39; // `'`.charCodeAt(0); +exports.singleQuote = singleQuote; +var doubleQuote = 34; // `"`.charCodeAt(0); +exports.doubleQuote = doubleQuote; +var slash = 47; // `/`.charCodeAt(0); +exports.slash = slash; +var bang = 33; // `!`.charCodeAt(0); +exports.bang = bang; +var backslash = 92; // '\\'.charCodeAt(0); +exports.backslash = backslash; +var cr = 13; // '\r'.charCodeAt(0); +exports.cr = cr; +var feed = 12; // '\f'.charCodeAt(0); +exports.feed = feed; +var newline = 10; // '\n'.charCodeAt(0); +exports.newline = newline; +var tab = 9; // '\t'.charCodeAt(0); + +// Expose aliases primarily for readability. +exports.tab = tab; +var str = singleQuote; + +// No good single character representation! +exports.str = str; +var comment = -1; +exports.comment = comment; +var word = -2; +exports.word = word; +var combinator = -3; +exports.combinator = combinator; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/tokenize.js b/node_modules/postcss-selector-parser/dist/tokenize.js new file mode 100644 index 0000000..bf61d26 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/tokenize.js @@ -0,0 +1,239 @@ +"use strict"; + +exports.__esModule = true; +exports.FIELDS = void 0; +exports["default"] = tokenize; +var t = _interopRequireWildcard(require("./tokenTypes")); +var _unescapable, _wordDelimiters; +function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } +function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } +var unescapable = (_unescapable = {}, _unescapable[t.tab] = true, _unescapable[t.newline] = true, _unescapable[t.cr] = true, _unescapable[t.feed] = true, _unescapable); +var wordDelimiters = (_wordDelimiters = {}, _wordDelimiters[t.space] = true, _wordDelimiters[t.tab] = true, _wordDelimiters[t.newline] = true, _wordDelimiters[t.cr] = true, _wordDelimiters[t.feed] = true, _wordDelimiters[t.ampersand] = true, _wordDelimiters[t.asterisk] = true, _wordDelimiters[t.bang] = true, _wordDelimiters[t.comma] = true, _wordDelimiters[t.colon] = true, _wordDelimiters[t.semicolon] = true, _wordDelimiters[t.openParenthesis] = true, _wordDelimiters[t.closeParenthesis] = true, _wordDelimiters[t.openSquare] = true, _wordDelimiters[t.closeSquare] = true, _wordDelimiters[t.singleQuote] = true, _wordDelimiters[t.doubleQuote] = true, _wordDelimiters[t.plus] = true, _wordDelimiters[t.pipe] = true, _wordDelimiters[t.tilde] = true, _wordDelimiters[t.greaterThan] = true, _wordDelimiters[t.equals] = true, _wordDelimiters[t.dollar] = true, _wordDelimiters[t.caret] = true, _wordDelimiters[t.slash] = true, _wordDelimiters); +var hex = {}; +var hexChars = "0123456789abcdefABCDEF"; +for (var i = 0; i < hexChars.length; i++) { + hex[hexChars.charCodeAt(i)] = true; +} + +/** + * Returns the last index of the bar css word + * @param {string} css The string in which the word begins + * @param {number} start The index into the string where word's first letter occurs + */ +function consumeWord(css, start) { + var next = start; + var code; + do { + code = css.charCodeAt(next); + if (wordDelimiters[code]) { + return next - 1; + } else if (code === t.backslash) { + next = consumeEscape(css, next) + 1; + } else { + // All other characters are part of the word + next++; + } + } while (next < css.length); + return next - 1; +} + +/** + * Returns the last index of the escape sequence + * @param {string} css The string in which the sequence begins + * @param {number} start The index into the string where escape character (`\`) occurs. + */ +function consumeEscape(css, start) { + var next = start; + var code = css.charCodeAt(next + 1); + if (unescapable[code]) { + // just consume the escape char + } else if (hex[code]) { + var hexDigits = 0; + // consume up to 6 hex chars + do { + next++; + hexDigits++; + code = css.charCodeAt(next + 1); + } while (hex[code] && hexDigits < 6); + // if fewer than 6 hex chars, a trailing space ends the escape + if (hexDigits < 6 && code === t.space) { + next++; + } + } else { + // the next char is part of the current word + next++; + } + return next; +} +var FIELDS = { + TYPE: 0, + START_LINE: 1, + START_COL: 2, + END_LINE: 3, + END_COL: 4, + START_POS: 5, + END_POS: 6 +}; +exports.FIELDS = FIELDS; +function tokenize(input) { + var tokens = []; + var css = input.css.valueOf(); + var _css = css, + length = _css.length; + var offset = -1; + var line = 1; + var start = 0; + var end = 0; + var code, content, endColumn, endLine, escaped, escapePos, last, lines, next, nextLine, nextOffset, quote, tokenType; + function unclosed(what, fix) { + if (input.safe) { + // fyi: this is never set to true. + css += fix; + next = css.length - 1; + } else { + throw input.error('Unclosed ' + what, line, start - offset, start); + } + } + while (start < length) { + code = css.charCodeAt(start); + if (code === t.newline) { + offset = start; + line += 1; + } + switch (code) { + case t.space: + case t.tab: + case t.newline: + case t.cr: + case t.feed: + next = start; + do { + next += 1; + code = css.charCodeAt(next); + if (code === t.newline) { + offset = next; + line += 1; + } + } while (code === t.space || code === t.newline || code === t.tab || code === t.cr || code === t.feed); + tokenType = t.space; + endLine = line; + endColumn = next - offset - 1; + end = next; + break; + case t.plus: + case t.greaterThan: + case t.tilde: + case t.pipe: + next = start; + do { + next += 1; + code = css.charCodeAt(next); + } while (code === t.plus || code === t.greaterThan || code === t.tilde || code === t.pipe); + tokenType = t.combinator; + endLine = line; + endColumn = start - offset; + end = next; + break; + + // Consume these characters as single tokens. + case t.asterisk: + case t.ampersand: + case t.bang: + case t.comma: + case t.equals: + case t.dollar: + case t.caret: + case t.openSquare: + case t.closeSquare: + case t.colon: + case t.semicolon: + case t.openParenthesis: + case t.closeParenthesis: + next = start; + tokenType = code; + endLine = line; + endColumn = start - offset; + end = next + 1; + break; + case t.singleQuote: + case t.doubleQuote: + quote = code === t.singleQuote ? "'" : '"'; + next = start; + do { + escaped = false; + next = css.indexOf(quote, next + 1); + if (next === -1) { + unclosed('quote', quote); + } + escapePos = next; + while (css.charCodeAt(escapePos - 1) === t.backslash) { + escapePos -= 1; + escaped = !escaped; + } + } while (escaped); + tokenType = t.str; + endLine = line; + endColumn = start - offset; + end = next + 1; + break; + default: + if (code === t.slash && css.charCodeAt(start + 1) === t.asterisk) { + next = css.indexOf('*/', start + 2) + 1; + if (next === 0) { + unclosed('comment', '*/'); + } + content = css.slice(start, next + 1); + lines = content.split('\n'); + last = lines.length - 1; + if (last > 0) { + nextLine = line + last; + nextOffset = next - lines[last].length; + } else { + nextLine = line; + nextOffset = offset; + } + tokenType = t.comment; + line = nextLine; + endLine = nextLine; + endColumn = next - nextOffset; + } else if (code === t.slash) { + next = start; + tokenType = code; + endLine = line; + endColumn = start - offset; + end = next + 1; + } else { + next = consumeWord(css, start); + tokenType = t.word; + endLine = line; + endColumn = next - offset; + } + end = next + 1; + break; + } + + // Ensure that the token structure remains consistent + tokens.push([tokenType, + // [0] Token type + line, + // [1] Starting line + start - offset, + // [2] Starting column + endLine, + // [3] Ending line + endColumn, + // [4] Ending column + start, + // [5] Start position / Source index + end // [6] End position + ]); + + // Reset offset for the next token + if (nextOffset) { + offset = nextOffset; + nextOffset = null; + } + start = end; + } + return tokens; +} \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/util/ensureObject.js b/node_modules/postcss-selector-parser/dist/util/ensureObject.js new file mode 100644 index 0000000..494941a --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/util/ensureObject.js @@ -0,0 +1,17 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = ensureObject; +function ensureObject(obj) { + for (var _len = arguments.length, props = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + props[_key - 1] = arguments[_key]; + } + while (props.length > 0) { + var prop = props.shift(); + if (!obj[prop]) { + obj[prop] = {}; + } + obj = obj[prop]; + } +} +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/util/getProp.js b/node_modules/postcss-selector-parser/dist/util/getProp.js new file mode 100644 index 0000000..a2b7a07 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/util/getProp.js @@ -0,0 +1,18 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = getProp; +function getProp(obj) { + for (var _len = arguments.length, props = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + props[_key - 1] = arguments[_key]; + } + while (props.length > 0) { + var prop = props.shift(); + if (!obj[prop]) { + return undefined; + } + obj = obj[prop]; + } + return obj; +} +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/util/index.js b/node_modules/postcss-selector-parser/dist/util/index.js new file mode 100644 index 0000000..f96ec11 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/util/index.js @@ -0,0 +1,13 @@ +"use strict"; + +exports.__esModule = true; +exports.unesc = exports.stripComments = exports.getProp = exports.ensureObject = void 0; +var _unesc = _interopRequireDefault(require("./unesc")); +exports.unesc = _unesc["default"]; +var _getProp = _interopRequireDefault(require("./getProp")); +exports.getProp = _getProp["default"]; +var _ensureObject = _interopRequireDefault(require("./ensureObject")); +exports.ensureObject = _ensureObject["default"]; +var _stripComments = _interopRequireDefault(require("./stripComments")); +exports.stripComments = _stripComments["default"]; +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/util/stripComments.js b/node_modules/postcss-selector-parser/dist/util/stripComments.js new file mode 100644 index 0000000..0baa0e0 --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/util/stripComments.js @@ -0,0 +1,21 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = stripComments; +function stripComments(str) { + var s = ""; + var commentStart = str.indexOf("/*"); + var lastEnd = 0; + while (commentStart >= 0) { + s = s + str.slice(lastEnd, commentStart); + var commentEnd = str.indexOf("*/", commentStart + 2); + if (commentEnd < 0) { + return s; + } + lastEnd = commentEnd + 2; + commentStart = str.indexOf("/*", lastEnd); + } + s = s + str.slice(lastEnd); + return s; +} +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/dist/util/unesc.js b/node_modules/postcss-selector-parser/dist/util/unesc.js new file mode 100644 index 0000000..87396be --- /dev/null +++ b/node_modules/postcss-selector-parser/dist/util/unesc.js @@ -0,0 +1,76 @@ +"use strict"; + +exports.__esModule = true; +exports["default"] = unesc; +// Many thanks for this post which made this migration much easier. +// https://mathiasbynens.be/notes/css-escapes + +/** + * + * @param {string} str + * @returns {[string, number]|undefined} + */ +function gobbleHex(str) { + var lower = str.toLowerCase(); + var hex = ''; + var spaceTerminated = false; + for (var i = 0; i < 6 && lower[i] !== undefined; i++) { + var code = lower.charCodeAt(i); + // check to see if we are dealing with a valid hex char [a-f|0-9] + var valid = code >= 97 && code <= 102 || code >= 48 && code <= 57; + // https://drafts.csswg.org/css-syntax/#consume-escaped-code-point + spaceTerminated = code === 32; + if (!valid) { + break; + } + hex += lower[i]; + } + if (hex.length === 0) { + return undefined; + } + var codePoint = parseInt(hex, 16); + var isSurrogate = codePoint >= 0xD800 && codePoint <= 0xDFFF; + // Add special case for + // "If this number is zero, or is for a surrogate, or is greater than the maximum allowed code point" + // https://drafts.csswg.org/css-syntax/#maximum-allowed-code-point + if (isSurrogate || codePoint === 0x0000 || codePoint > 0x10FFFF) { + return ["\uFFFD", hex.length + (spaceTerminated ? 1 : 0)]; + } + return [String.fromCodePoint(codePoint), hex.length + (spaceTerminated ? 1 : 0)]; +} +var CONTAINS_ESCAPE = /\\/; +function unesc(str) { + var needToProcess = CONTAINS_ESCAPE.test(str); + if (!needToProcess) { + return str; + } + var ret = ""; + for (var i = 0; i < str.length; i++) { + if (str[i] === "\\") { + var gobbled = gobbleHex(str.slice(i + 1, i + 7)); + if (gobbled !== undefined) { + ret += gobbled[0]; + i += gobbled[1]; + continue; + } + + // Retain a pair of \\ if double escaped `\\\\` + // https://github.com/postcss/postcss-selector-parser/commit/268c9a7656fb53f543dc620aa5b73a30ec3ff20e + if (str[i + 1] === "\\") { + ret += "\\"; + i++; + continue; + } + + // if \\ is at the end of the string retain it + // https://github.com/postcss/postcss-selector-parser/commit/01a6b346e3612ce1ab20219acc26abdc259ccefb + if (str.length === i + 1) { + ret += str[i]; + } + continue; + } + ret += str[i]; + } + return ret; +} +module.exports = exports.default; \ No newline at end of file diff --git a/node_modules/postcss-selector-parser/package.json b/node_modules/postcss-selector-parser/package.json new file mode 100644 index 0000000..0b074d0 --- /dev/null +++ b/node_modules/postcss-selector-parser/package.json @@ -0,0 +1,80 @@ +{ + "name": "postcss-selector-parser", + "version": "6.1.2", + "devDependencies": { + "@babel/cli": "^7.11.6", + "@babel/core": "^7.11.6", + "@babel/eslint-parser": "^7.11.5", + "@babel/eslint-plugin": "^7.11.5", + "@babel/plugin-proposal-class-properties": "^7.10.4", + "@babel/preset-env": "^7.11.5", + "@babel/register": "^7.11.5", + "ava": "^5.1.0", + "babel-plugin-add-module-exports": "^1.0.4", + "coveralls": "^3.1.0", + "del-cli": "^5.0.0", + "eslint": "^8.28.0", + "eslint-plugin-import": "^2.26.0", + "glob": "^8.0.3", + "minimist": "^1.2.5", + "nyc": "^15.1.0", + "postcss": "^8.4.31", + "semver": "^7.3.2", + "typescript": "^4.0.3" + }, + "main": "dist/index.js", + "types": "postcss-selector-parser.d.ts", + "files": [ + "API.md", + "CHANGELOG.md", + "LICENSE-MIT", + "dist", + "postcss-selector-parser.d.ts", + "!**/__tests__" + ], + "scripts": { + "typecheck": "tsc --noEmit --strict postcss-selector-parser.d.ts postcss-selector-parser.test.ts", + "pretest": "eslint src && npm run typecheck", + "prepare": "del-cli dist && BABEL_ENV=publish babel src --out-dir dist --ignore /__tests__/", + "lintfix": "eslint --fix src", + "report": "nyc report --reporter=html", + "test": "nyc ava src/__tests__/*.mjs", + "testone": "ava" + }, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "license": "MIT", + "engines": { + "node": ">=4" + }, + "homepage": "https://github.com/postcss/postcss-selector-parser", + "contributors": [ + { + "name": "Ben Briggs", + "email": "beneb.info@gmail.com", + "url": "http://beneb.info" + }, + { + "name": "Chris Eppstein", + "email": "chris@eppsteins.net", + "url": "http://twitter.com/chriseppstein" + } + ], + "repository": "postcss/postcss-selector-parser", + "ava": { + "require": [ + "@babel/register" + ], + "concurrency": 5, + "timeout": "25s", + "nodeArguments": [] + }, + "nyc": { + "exclude": [ + "node_modules", + "**/__tests__" + ] + } +} diff --git a/node_modules/postcss-selector-parser/postcss-selector-parser.d.ts b/node_modules/postcss-selector-parser/postcss-selector-parser.d.ts new file mode 100644 index 0000000..af609e6 --- /dev/null +++ b/node_modules/postcss-selector-parser/postcss-selector-parser.d.ts @@ -0,0 +1,555 @@ +// Type definitions for postcss-selector-parser 2.2.3 +// Definitions by: Chris Eppstein + +/*~ Note that ES6 modules cannot directly export callable functions. + *~ This file should be imported using the CommonJS-style: + *~ import x = require('someLibrary'); + *~ + *~ Refer to the documentation to understand common + *~ workarounds for this limitation of ES6 modules. + */ + +/*~ This declaration specifies that the function + *~ is the exported object from the file + */ +export = parser; + +// A type that's T but not U. +type Diff = T extends U ? never : T; + +// TODO: Conditional types in TS 1.8 will really clean this up. +declare function parser(): parser.Processor; +declare function parser(processor: parser.AsyncProcessor): parser.Processor; +declare function parser(processor: parser.AsyncProcessor): parser.Processor; +declare function parser(processor: parser.SyncProcessor): parser.Processor; +declare function parser(processor: parser.SyncProcessor): parser.Processor; +declare function parser(processor?: parser.SyncProcessor | parser.AsyncProcessor): parser.Processor; + +/*~ If you want to expose types from your module as well, you can + *~ place them in this block. Often you will want to describe the + *~ shape of the return type of the function; that type should + *~ be declared in here, as this example shows. + */ +declare namespace parser { + /* copied from postcss -- so we don't need to add a dependency */ + type ErrorOptions = { + plugin?: string; + word?: string; + index?: number + }; + /* the bits we use of postcss.Rule, copied from postcss -- so we don't need to add a dependency */ + type PostCSSRuleNode = { + selector: string + /** + * @returns postcss.CssSyntaxError but it's a complex object, caller + * should cast to it if they have a dependency on postcss. + */ + error(message: string, options?: ErrorOptions): Error; + }; + /** Accepts a string */ + type Selectors = string | PostCSSRuleNode + type ProcessorFn = (root: parser.Root) => ReturnType; + type SyncProcessor = ProcessorFn; + type AsyncProcessor = ProcessorFn>; + + const TAG: "tag"; + const STRING: "string"; + const SELECTOR: "selector"; + const ROOT: "root"; + const PSEUDO: "pseudo"; + const NESTING: "nesting"; + const ID: "id"; + const COMMENT: "comment"; + const COMBINATOR: "combinator"; + const CLASS: "class"; + const ATTRIBUTE: "attribute"; + const UNIVERSAL: "universal"; + + interface NodeTypes { + tag: Tag, + string: String, + selector: Selector, + root: Root, + pseudo: Pseudo, + nesting: Nesting, + id: Identifier, + comment: Comment, + combinator: Combinator, + class: ClassName, + attribute: Attribute, + universal: Universal + } + + type Node = NodeTypes[keyof NodeTypes]; + + function isNode(node: any): node is Node; + + interface Options { + /** + * Preserve whitespace when true. Default: false; + */ + lossless: boolean; + /** + * When true and a postcss.Rule is passed, set the result of + * processing back onto the rule when done. Default: false. + */ + updateSelector: boolean; + } + class Processor< + TransformType = never, + SyncSelectorsType extends Selectors | never = Selectors + > { + res: Root; + readonly result: String; + ast(selectors: Selectors, options?: Partial): Promise; + astSync(selectors: SyncSelectorsType, options?: Partial): Root; + transform(selectors: Selectors, options?: Partial): Promise; + transformSync(selectors: SyncSelectorsType, options?: Partial): TransformType; + process(selectors: Selectors, options?: Partial): Promise; + processSync(selectors: SyncSelectorsType, options?: Partial): string; + } + interface ParserOptions { + css: string; + error: (message: string, options: ErrorOptions) => Error; + options: Options; + } + class Parser { + input: ParserOptions; + lossy: boolean; + position: number; + root: Root; + selectors: string; + current: Selector; + constructor(input: ParserOptions); + /** + * Raises an error, if the processor is invoked on + * a postcss Rule node, a better error message is raised. + */ + error(message: string, options?: ErrorOptions): void; + } + interface NodeSource { + start?: { + line: number, + column: number + }, + end?: { + line: number, + column: number + } + } + interface SpaceAround { + before: string; + after: string; + } + interface Spaces extends SpaceAround { + [spaceType: string]: string | Partial | undefined; + } + interface NodeOptions { + value: Value; + spaces?: Partial; + source?: NodeSource; + sourceIndex?: number; + } + interface Base< + Value extends string | undefined = string, + ParentType extends Container | undefined = Container | undefined + > { + type: keyof NodeTypes; + parent: ParentType; + value: Value; + spaces: Spaces; + source?: NodeSource; + sourceIndex: number; + rawSpaceBefore: string; + rawSpaceAfter: string; + remove(): Node; + replaceWith(...nodes: Node[]): Node; + next(): Node | undefined; + prev(): Node | undefined; + clone(opts?: {[override: string]:any}): this; + /** + * Return whether this node includes the character at the position of the given line and column. + * Returns undefined if the nodes lack sufficient source metadata to determine the position. + * @param line 1-index based line number relative to the start of the selector. + * @param column 1-index based column number relative to the start of the selector. + */ + isAtPosition(line: number, column: number): boolean | undefined; + /** + * Some non-standard syntax doesn't follow normal escaping rules for css, + * this allows the escaped value to be specified directly, allowing illegal characters to be + * directly inserted into css output. + * @param name the property to set + * @param value the unescaped value of the property + * @param valueEscaped optional. the escaped value of the property. + */ + setPropertyAndEscape(name: string, value: any, valueEscaped: string): void; + /** + * When you want a value to passed through to CSS directly. This method + * deletes the corresponding raw value causing the stringifier to fallback + * to the unescaped value. + * @param name the property to set. + * @param value The value that is both escaped and unescaped. + */ + setPropertyWithoutEscape(name: string, value: any): void; + /** + * Some non-standard syntax doesn't follow normal escaping rules for css. + * This allows non standard syntax to be appended to an existing property + * by specifying the escaped value. By specifying the escaped value, + * illegal characters are allowed to be directly inserted into css output. + * @param {string} name the property to set + * @param {any} value the unescaped value of the property + * @param {string} valueEscaped optional. the escaped value of the property. + */ + appendToPropertyAndEscape(name: string, value: any, valueEscaped: string): void; + toString(): string; + } + interface ContainerOptions extends NodeOptions { + nodes?: Array; + } + interface Container< + Value extends string | undefined = string, + Child extends Node = Node + > extends Base { + nodes: Array; + append(selector: Child): this; + prepend(selector: Child): this; + at(index: number): Child; + /** + * Return the most specific node at the line and column number given. + * The source location is based on the original parsed location, locations aren't + * updated as selector nodes are mutated. + * + * Note that this location is relative to the location of the first character + * of the selector, and not the location of the selector in the overall document + * when used in conjunction with postcss. + * + * If not found, returns undefined. + * @param line The line number of the node to find. (1-based index) + * @param col The column number of the node to find. (1-based index) + */ + atPosition(line: number, column: number): Child; + index(child: Child): number; + readonly first: Child; + readonly last: Child; + readonly length: number; + removeChild(child: Child): this; + removeAll(): this; + empty(): this; + insertAfter(oldNode: Child, newNode: Child): this; + insertBefore(oldNode: Child, newNode: Child): this; + each(callback: (node: Child, index: number) => boolean | void): boolean | undefined; + walk( + callback: (node: Node, index: number) => boolean | void + ): boolean | undefined; + walkAttributes( + callback: (node: Attribute) => boolean | void + ): boolean | undefined; + walkClasses( + callback: (node: ClassName) => boolean | void + ): boolean | undefined; + walkCombinators( + callback: (node: Combinator) => boolean | void + ): boolean | undefined; + walkComments( + callback: (node: Comment) => boolean | void + ): boolean | undefined; + walkIds( + callback: (node: Identifier) => boolean | void + ): boolean | undefined; + walkNesting( + callback: (node: Nesting) => boolean | void + ): boolean | undefined; + walkPseudos( + callback: (node: Pseudo) => boolean | void + ): boolean | undefined; + walkTags(callback: (node: Tag) => boolean | void): boolean | undefined; + split(callback: (node: Child) => boolean): [Child[], Child[]]; + map(callback: (node: Child) => T): T[]; + reduce( + callback: ( + previousValue: Child, + currentValue: Child, + currentIndex: number, + array: readonly Child[] + ) => Child + ): Child; + reduce( + callback: ( + previousValue: Child, + currentValue: Child, + currentIndex: number, + array: readonly Child[] + ) => Child, + initialValue: Child + ): Child; + reduce( + callback: ( + previousValue: T, + currentValue: Child, + currentIndex: number, + array: readonly Child[] + ) => T, + initialValue: T + ): T; + every(callback: (node: Child) => boolean): boolean; + some(callback: (node: Child) => boolean): boolean; + filter(callback: (node: Child) => boolean): Child[]; + sort(callback: (nodeA: Child, nodeB: Child) => number): Child[]; + toString(): string; + } + function isContainer(node: any): node is Root | Selector | Pseudo; + + interface NamespaceOptions extends NodeOptions { + namespace?: string | true; + } + interface Namespace extends Base { + /** alias for namespace */ + ns: string | true; + /** + * namespace prefix. + */ + namespace: string | true; + /** + * If a namespace exists, prefix the value provided with it, separated by |. + */ + qualifiedName(value: string): string; + /** + * A string representing the namespace suitable for output. + */ + readonly namespaceString: string; + } + function isNamespace(node: any): node is Attribute | Tag; + + interface Root extends Container { + type: "root"; + /** + * Raises an error, if the processor is invoked on + * a postcss Rule node, a better error message is raised. + */ + error(message: string, options?: ErrorOptions): Error; + nodeAt(line: number, column: number): Node + } + function root(opts: ContainerOptions): Root; + function isRoot(node: any): node is Root; + + interface _Selector extends Container> { + type: "selector"; + } + type Selector = _Selector; + function selector(opts: ContainerOptions): Selector; + function isSelector(node: any): node is Selector; + + interface CombinatorRaws { + value?: string; + spaces?: { + before?: string; + after?: string; + }; + } + interface Combinator extends Base { + type: "combinator"; + raws?: CombinatorRaws; + } + function combinator(opts: NodeOptions): Combinator; + function isCombinator(node: any): node is Combinator; + + interface ClassName extends Base { + type: "class"; + } + function className(opts: NamespaceOptions): ClassName; + function isClassName(node: any): node is ClassName; + + type AttributeOperator = "=" | "~=" | "|=" | "^=" | "$=" | "*="; + type QuoteMark = '"' | "'" | null; + interface PreferredQuoteMarkOptions { + quoteMark?: QuoteMark; + preferCurrentQuoteMark?: boolean; + } + interface SmartQuoteMarkOptions extends PreferredQuoteMarkOptions { + smart?: boolean; + } + interface AttributeOptions extends NamespaceOptions { + attribute: string; + operator?: AttributeOperator; + insensitive?: boolean; + quoteMark?: QuoteMark; + /** @deprecated Use quoteMark instead. */ + quoted?: boolean; + spaces?: { + before?: string; + after?: string; + attribute?: Partial; + operator?: Partial; + value?: Partial; + insensitive?: Partial; + } + raws: { + unquoted?: string; + attribute?: string; + operator?: string; + value?: string; + insensitive?: string; + spaces?: { + attribute?: Partial; + operator?: Partial; + value?: Partial; + insensitive?: Partial; + } + }; + } + interface Attribute extends Namespace { + type: "attribute"; + attribute: string; + operator?: AttributeOperator; + insensitive?: boolean; + quoteMark: QuoteMark; + quoted?: boolean; + spaces: { + before: string; + after: string; + attribute?: Partial; + operator?: Partial; + value?: Partial; + insensitive?: Partial; + } + raws: { + /** @deprecated The attribute value is unquoted, use that instead.. */ + unquoted?: string; + attribute?: string; + operator?: string; + /** The value of the attribute with quotes and escapes. */ + value?: string; + insensitive?: string; + spaces?: { + attribute?: Partial; + operator?: Partial; + value?: Partial; + insensitive?: Partial; + } + }; + /** + * The attribute name after having been qualified with a namespace. + */ + readonly qualifiedAttribute: string; + + /** + * The case insensitivity flag or an empty string depending on whether this + * attribute is case insensitive. + */ + readonly insensitiveFlag : 'i' | ''; + + /** + * Returns the attribute's value quoted such that it would be legal to use + * in the value of a css file. The original value's quotation setting + * used for stringification is left unchanged. See `setValue(value, options)` + * if you want to control the quote settings of a new value for the attribute or + * `set quoteMark(mark)` if you want to change the quote settings of the current + * value. + * + * You can also change the quotation used for the current value by setting quoteMark. + **/ + getQuotedValue(options?: SmartQuoteMarkOptions): string; + + /** + * Set the unescaped value with the specified quotation options. The value + * provided must not include any wrapping quote marks -- those quotes will + * be interpreted as part of the value and escaped accordingly. + * @param value + */ + setValue(value: string, options?: SmartQuoteMarkOptions): void; + + /** + * Intelligently select a quoteMark value based on the value's contents. If + * the value is a legal CSS ident, it will not be quoted. Otherwise a quote + * mark will be picked that minimizes the number of escapes. + * + * If there's no clear winner, the quote mark from these options is used, + * then the source quote mark (this is inverted if `preferCurrentQuoteMark` is + * true). If the quoteMark is unspecified, a double quote is used. + **/ + smartQuoteMark(options: PreferredQuoteMarkOptions): QuoteMark; + + /** + * Selects the preferred quote mark based on the options and the current quote mark value. + * If you want the quote mark to depend on the attribute value, call `smartQuoteMark(opts)` + * instead. + */ + preferredQuoteMark(options: PreferredQuoteMarkOptions): QuoteMark + + /** + * returns the offset of the attribute part specified relative to the + * start of the node of the output string. + * + * * "ns" - alias for "namespace" + * * "namespace" - the namespace if it exists. + * * "attribute" - the attribute name + * * "attributeNS" - the start of the attribute or its namespace + * * "operator" - the match operator of the attribute + * * "value" - The value (string or identifier) + * * "insensitive" - the case insensitivity flag; + * @param part One of the possible values inside an attribute. + * @returns -1 if the name is invalid or the value doesn't exist in this attribute. + */ + offsetOf(part: "ns" | "namespace" | "attribute" | "attributeNS" | "operator" | "value" | "insensitive"): number; + } + function attribute(opts: AttributeOptions): Attribute; + function isAttribute(node: any): node is Attribute; + + interface Pseudo extends Container { + type: "pseudo"; + } + function pseudo(opts: ContainerOptions): Pseudo; + /** + * Checks whether the node is the Pseudo subtype of node. + */ + function isPseudo(node: any): node is Pseudo; + + /** + * Checks whether the node is, specifically, a pseudo element instead of + * pseudo class. + */ + function isPseudoElement(node: any): node is Pseudo; + + /** + * Checks whether the node is, specifically, a pseudo class instead of + * pseudo element. + */ + function isPseudoClass(node: any): node is Pseudo; + + + interface Tag extends Namespace { + type: "tag"; + } + function tag(opts: NamespaceOptions): Tag; + function isTag(node: any): node is Tag; + + interface Comment extends Base { + type: "comment"; + } + function comment(opts: NodeOptions): Comment; + function isComment(node: any): node is Comment; + + interface Identifier extends Base { + type: "id"; + } + function id(opts: any): Identifier; + function isIdentifier(node: any): node is Identifier; + + interface Nesting extends Base { + type: "nesting"; + } + function nesting(opts?: any): Nesting; + function isNesting(node: any): node is Nesting; + + interface String extends Base { + type: "string"; + } + function string(opts: NodeOptions): String; + function isString(node: any): node is String; + + interface Universal extends Base { + type: "universal"; + } + function universal(opts?: NamespaceOptions): Universal; + function isUniversal(node: any): node is Universal; +} diff --git a/node_modules/postcss/LICENSE b/node_modules/postcss/LICENSE new file mode 100644 index 0000000..da057b4 --- /dev/null +++ b/node_modules/postcss/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright 2013 Andrey Sitnik + +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. diff --git a/node_modules/postcss/README.md b/node_modules/postcss/README.md new file mode 100644 index 0000000..05fed07 --- /dev/null +++ b/node_modules/postcss/README.md @@ -0,0 +1,29 @@ +# PostCSS + +Philosopher’s stone, logo of PostCSS + +PostCSS is a tool for transforming styles with JS plugins. +These plugins can lint your CSS, support variables and mixins, +transpile future CSS syntax, inline images, and more. + +PostCSS is used by industry leaders including Wikipedia, Twitter, Alibaba, +and JetBrains. The [Autoprefixer] and [Stylelint] PostCSS plugins are some of the most popular CSS tools. + +--- + +  Built by + Evil Martians, go-to agency for developer tools. + +--- + +[Abstract Syntax Tree]: https://en.wikipedia.org/wiki/Abstract_syntax_tree +[Evil Martians]: https://evilmartians.com/?utm_source=postcss +[Autoprefixer]: https://github.com/postcss/autoprefixer +[Stylelint]: https://stylelint.io/ +[plugins]: https://github.com/postcss/postcss#plugins + + +## Docs +Read full docs **[here](https://postcss.org/)**. diff --git a/node_modules/postcss/lib/at-rule.d.ts b/node_modules/postcss/lib/at-rule.d.ts new file mode 100644 index 0000000..89fb505 --- /dev/null +++ b/node_modules/postcss/lib/at-rule.d.ts @@ -0,0 +1,140 @@ +import Container, { + ContainerProps, + ContainerWithChildren +} from './container.js' + +declare namespace AtRule { + export interface AtRuleRaws extends Record { + /** + * The space symbols after the last child of the node to the end of the node. + */ + after?: string + + /** + * The space between the at-rule name and its parameters. + */ + afterName?: string + + /** + * The space symbols before the node. It also stores `*` + * and `_` symbols before the declaration (IE hack). + */ + before?: string + + /** + * The symbols between the last parameter and `{` for rules. + */ + between?: string + + /** + * The rule’s selector with comments. + */ + params?: { + raw: string + value: string + } + + /** + * Contains `true` if the last child has an (optional) semicolon. + */ + semicolon?: boolean + } + + export interface AtRuleProps extends ContainerProps { + /** Name of the at-rule. */ + name: string + /** Parameters following the name of the at-rule. */ + params?: number | string + /** Information used to generate byte-to-byte equal node string as it was in the origin input. */ + raws?: AtRuleRaws + } + + // eslint-disable-next-line @typescript-eslint/no-use-before-define + export { AtRule_ as default } +} + +/** + * Represents an at-rule. + * + * ```js + * Once (root, { AtRule }) { + * let media = new AtRule({ name: 'media', params: 'print' }) + * media.append(…) + * root.append(media) + * } + * ``` + * + * If it’s followed in the CSS by a `{}` block, this node will have + * a nodes property representing its children. + * + * ```js + * const root = postcss.parse('@charset "UTF-8"; @media print {}') + * + * const charset = root.first + * charset.type //=> 'atrule' + * charset.nodes //=> undefined + * + * const media = root.last + * media.nodes //=> [] + * ``` + */ +declare class AtRule_ extends Container { + /** + * An array containing the layer’s children. + * + * ```js + * const root = postcss.parse('@layer example { a { color: black } }') + * const layer = root.first + * layer.nodes.length //=> 1 + * layer.nodes[0].selector //=> 'a' + * ``` + * + * Can be `undefinded` if the at-rule has no body. + * + * ```js + * const root = postcss.parse('@layer a, b, c;') + * const layer = root.first + * layer.nodes //=> undefined + * ``` + */ + nodes: Container['nodes'] | undefined + parent: ContainerWithChildren | undefined + + raws: AtRule.AtRuleRaws + type: 'atrule' + /** + * The at-rule’s name immediately follows the `@`. + * + * ```js + * const root = postcss.parse('@media print {}') + * const media = root.first + * media.name //=> 'media' + * ``` + */ + get name(): string + set name(value: string) + + /** + * The at-rule’s parameters, the values that follow the at-rule’s name + * but precede any `{}` block. + * + * ```js + * const root = postcss.parse('@media print, screen {}') + * const media = root.first + * media.params //=> 'print, screen' + * ``` + */ + get params(): string + + set params(value: string) + + constructor(defaults?: AtRule.AtRuleProps) + assign(overrides: AtRule.AtRuleProps | object): this + clone(overrides?: Partial): this + cloneAfter(overrides?: Partial): this + cloneBefore(overrides?: Partial): this +} + +declare class AtRule extends AtRule_ {} + +export = AtRule diff --git a/node_modules/postcss/lib/at-rule.js b/node_modules/postcss/lib/at-rule.js new file mode 100644 index 0000000..9486447 --- /dev/null +++ b/node_modules/postcss/lib/at-rule.js @@ -0,0 +1,25 @@ +'use strict' + +let Container = require('./container') + +class AtRule extends Container { + constructor(defaults) { + super(defaults) + this.type = 'atrule' + } + + append(...children) { + if (!this.proxyOf.nodes) this.nodes = [] + return super.append(...children) + } + + prepend(...children) { + if (!this.proxyOf.nodes) this.nodes = [] + return super.prepend(...children) + } +} + +module.exports = AtRule +AtRule.default = AtRule + +Container.registerAtRule(AtRule) diff --git a/node_modules/postcss/lib/comment.d.ts b/node_modules/postcss/lib/comment.d.ts new file mode 100644 index 0000000..6f1f66f --- /dev/null +++ b/node_modules/postcss/lib/comment.d.ts @@ -0,0 +1,68 @@ +import Container from './container.js' +import Node, { NodeProps } from './node.js' + +declare namespace Comment { + export interface CommentRaws extends Record { + /** + * The space symbols before the node. + */ + before?: string + + /** + * The space symbols between `/*` and the comment’s text. + */ + left?: string + + /** + * The space symbols between the comment’s text. + */ + right?: string + } + + export interface CommentProps extends NodeProps { + /** Information used to generate byte-to-byte equal node string as it was in the origin input. */ + raws?: CommentRaws + /** Content of the comment. */ + text: string + } + + // eslint-disable-next-line @typescript-eslint/no-use-before-define + export { Comment_ as default } +} + +/** + * It represents a class that handles + * [CSS comments](https://developer.mozilla.org/en-US/docs/Web/CSS/Comments) + * + * ```js + * Once (root, { Comment }) { + * const note = new Comment({ text: 'Note: …' }) + * root.append(note) + * } + * ``` + * + * Remember that CSS comments inside selectors, at-rule parameters, + * or declaration values will be stored in the `raws` properties + * explained above. + */ +declare class Comment_ extends Node { + parent: Container | undefined + raws: Comment.CommentRaws + type: 'comment' + /** + * The comment's text. + */ + get text(): string + + set text(value: string) + + constructor(defaults?: Comment.CommentProps) + assign(overrides: Comment.CommentProps | object): this + clone(overrides?: Partial): this + cloneAfter(overrides?: Partial): this + cloneBefore(overrides?: Partial): this +} + +declare class Comment extends Comment_ {} + +export = Comment diff --git a/node_modules/postcss/lib/comment.js b/node_modules/postcss/lib/comment.js new file mode 100644 index 0000000..c566506 --- /dev/null +++ b/node_modules/postcss/lib/comment.js @@ -0,0 +1,13 @@ +'use strict' + +let Node = require('./node') + +class Comment extends Node { + constructor(defaults) { + super(defaults) + this.type = 'comment' + } +} + +module.exports = Comment +Comment.default = Comment diff --git a/node_modules/postcss/lib/container.d.ts b/node_modules/postcss/lib/container.d.ts new file mode 100644 index 0000000..c2b310b --- /dev/null +++ b/node_modules/postcss/lib/container.d.ts @@ -0,0 +1,483 @@ +import AtRule from './at-rule.js' +import Comment from './comment.js' +import Declaration from './declaration.js' +import Node, { ChildNode, ChildProps, NodeProps } from './node.js' +import { Root } from './postcss.js' +import Rule from './rule.js' + +declare namespace Container { + export type ContainerWithChildren = { + nodes: Child[] + } & ( + | AtRule + | Root + | Rule + ) + + export interface ValueOptions { + /** + * String that’s used to narrow down values and speed up the regexp search. + */ + fast?: string + + /** + * An array of property names. + */ + props?: readonly string[] + } + + export interface ContainerProps extends NodeProps { + nodes?: readonly (ChildProps | Node)[] + } + + /** + * All types that can be passed into container methods to create or add a new + * child node. + */ + export type NewChild = + | ChildProps + | Node + | readonly ChildProps[] + | readonly Node[] + | readonly string[] + | string + | undefined + + // eslint-disable-next-line @typescript-eslint/no-use-before-define + export { Container_ as default } +} + +/** + * The `Root`, `AtRule`, and `Rule` container nodes + * inherit some common methods to help work with their children. + * + * Note that all containers can store any content. If you write a rule inside + * a rule, PostCSS will parse it. + */ +declare abstract class Container_ extends Node { + /** + * An array containing the container’s children. + * + * ```js + * const root = postcss.parse('a { color: black }') + * root.nodes.length //=> 1 + * root.nodes[0].selector //=> 'a' + * root.nodes[0].nodes[0].prop //=> 'color' + * ``` + */ + nodes: Child[] | undefined + + /** + * The container’s first child. + * + * ```js + * rule.first === rules.nodes[0] + * ``` + */ + get first(): Child | undefined + + /** + * The container’s last child. + * + * ```js + * rule.last === rule.nodes[rule.nodes.length - 1] + * ``` + */ + get last(): Child | undefined + /** + * Inserts new nodes to the end of the container. + * + * ```js + * const decl1 = new Declaration({ prop: 'color', value: 'black' }) + * const decl2 = new Declaration({ prop: 'background-color', value: 'white' }) + * rule.append(decl1, decl2) + * + * root.append({ name: 'charset', params: '"UTF-8"' }) // at-rule + * root.append({ selector: 'a' }) // rule + * rule.append({ prop: 'color', value: 'black' }) // declaration + * rule.append({ text: 'Comment' }) // comment + * + * root.append('a {}') + * root.first.append('color: black; z-index: 1') + * ``` + * + * @param nodes New nodes. + * @return This node for methods chain. + */ + append(...nodes: Container.NewChild[]): this + assign(overrides: Container.ContainerProps | object): this + clone(overrides?: Partial): this + + cloneAfter(overrides?: Partial): this + + cloneBefore(overrides?: Partial): this + /** + * Iterates through the container’s immediate children, + * calling `callback` for each child. + * + * Returning `false` in the callback will break iteration. + * + * This method only iterates through the container’s immediate children. + * If you need to recursively iterate through all the container’s descendant + * nodes, use `Container#walk`. + * + * Unlike the for `{}`-cycle or `Array#forEach` this iterator is safe + * if you are mutating the array of child nodes during iteration. + * PostCSS will adjust the current index to match the mutations. + * + * ```js + * const root = postcss.parse('a { color: black; z-index: 1 }') + * const rule = root.first + * + * for (const decl of rule.nodes) { + * decl.cloneBefore({ prop: '-webkit-' + decl.prop }) + * // Cycle will be infinite, because cloneBefore moves the current node + * // to the next index + * } + * + * rule.each(decl => { + * decl.cloneBefore({ prop: '-webkit-' + decl.prop }) + * // Will be executed only for color and z-index + * }) + * ``` + * + * @param callback Iterator receives each node and index. + * @return Returns `false` if iteration was broke. + */ + each( + callback: (node: Child, index: number) => false | void + ): false | undefined + + /** + * Returns `true` if callback returns `true` + * for all of the container’s children. + * + * ```js + * const noPrefixes = rule.every(i => i.prop[0] !== '-') + * ``` + * + * @param condition Iterator returns true or false. + * @return Is every child pass condition. + */ + every( + condition: (node: Child, index: number, nodes: Child[]) => boolean + ): boolean + /** + * Returns a `child`’s index within the `Container#nodes` array. + * + * ```js + * rule.index( rule.nodes[2] ) //=> 2 + * ``` + * + * @param child Child of the current container. + * @return Child index. + */ + index(child: Child | number): number + + /** + * Insert new node after old node within the container. + * + * @param oldNode Child or child’s index. + * @param newNode New node. + * @return This node for methods chain. + */ + insertAfter(oldNode: Child | number, newNode: Container.NewChild): this + + /** + * Traverses the container’s descendant nodes, calling callback + * for each comment node. + * + * Like `Container#each`, this method is safe + * to use if you are mutating arrays during iteration. + * + * ```js + * root.walkComments(comment => { + * comment.remove() + * }) + * ``` + * + * @param callback Iterator receives each node and index. + * @return Returns `false` if iteration was broke. + */ + + /** + * Insert new node before old node within the container. + * + * ```js + * rule.insertBefore(decl, decl.clone({ prop: '-webkit-' + decl.prop })) + * ``` + * + * @param oldNode Child or child’s index. + * @param newNode New node. + * @return This node for methods chain. + */ + insertBefore(oldNode: Child | number, newNode: Container.NewChild): this + /** + * Inserts new nodes to the start of the container. + * + * ```js + * const decl1 = new Declaration({ prop: 'color', value: 'black' }) + * const decl2 = new Declaration({ prop: 'background-color', value: 'white' }) + * rule.prepend(decl1, decl2) + * + * root.append({ name: 'charset', params: '"UTF-8"' }) // at-rule + * root.append({ selector: 'a' }) // rule + * rule.append({ prop: 'color', value: 'black' }) // declaration + * rule.append({ text: 'Comment' }) // comment + * + * root.append('a {}') + * root.first.append('color: black; z-index: 1') + * ``` + * + * @param nodes New nodes. + * @return This node for methods chain. + */ + prepend(...nodes: Container.NewChild[]): this + + /** + * Add child to the end of the node. + * + * ```js + * rule.push(new Declaration({ prop: 'color', value: 'black' })) + * ``` + * + * @param child New node. + * @return This node for methods chain. + */ + push(child: Child): this + + /** + * Removes all children from the container + * and cleans their parent properties. + * + * ```js + * rule.removeAll() + * rule.nodes.length //=> 0 + * ``` + * + * @return This node for methods chain. + */ + removeAll(): this + + /** + * Removes node from the container and cleans the parent properties + * from the node and its children. + * + * ```js + * rule.nodes.length //=> 5 + * rule.removeChild(decl) + * rule.nodes.length //=> 4 + * decl.parent //=> undefined + * ``` + * + * @param child Child or child’s index. + * @return This node for methods chain. + */ + removeChild(child: Child | number): this + + replaceValues( + pattern: RegExp | string, + replaced: { (substring: string, ...args: any[]): string } | string + ): this + /** + * Passes all declaration values within the container that match pattern + * through callback, replacing those values with the returned result + * of callback. + * + * This method is useful if you are using a custom unit or function + * and need to iterate through all values. + * + * ```js + * root.replaceValues(/\d+rem/, { fast: 'rem' }, string => { + * return 15 * parseInt(string) + 'px' + * }) + * ``` + * + * @param pattern Replace pattern. + * @param {object} options Options to speed up the search. + * @param replaced String to replace pattern or callback + * that returns a new value. The callback + * will receive the same arguments + * as those passed to a function parameter + * of `String#replace`. + * @return This node for methods chain. + */ + replaceValues( + pattern: RegExp | string, + options: Container.ValueOptions, + replaced: { (substring: string, ...args: any[]): string } | string + ): this + + /** + * Returns `true` if callback returns `true` for (at least) one + * of the container’s children. + * + * ```js + * const hasPrefix = rule.some(i => i.prop[0] === '-') + * ``` + * + * @param condition Iterator returns true or false. + * @return Is some child pass condition. + */ + some( + condition: (node: Child, index: number, nodes: Child[]) => boolean + ): boolean + + /** + * Traverses the container’s descendant nodes, calling callback + * for each node. + * + * Like container.each(), this method is safe to use + * if you are mutating arrays during iteration. + * + * If you only need to iterate through the container’s immediate children, + * use `Container#each`. + * + * ```js + * root.walk(node => { + * // Traverses all descendant nodes. + * }) + * ``` + * + * @param callback Iterator receives each node and index. + * @return Returns `false` if iteration was broke. + */ + walk( + callback: (node: ChildNode, index: number) => false | void + ): false | undefined + + /** + * Traverses the container’s descendant nodes, calling callback + * for each at-rule node. + * + * If you pass a filter, iteration will only happen over at-rules + * that have matching names. + * + * Like `Container#each`, this method is safe + * to use if you are mutating arrays during iteration. + * + * ```js + * root.walkAtRules(rule => { + * if (isOld(rule.name)) rule.remove() + * }) + * + * let first = false + * root.walkAtRules('charset', rule => { + * if (!first) { + * first = true + * } else { + * rule.remove() + * } + * }) + * ``` + * + * @param name String or regular expression to filter at-rules by name. + * @param callback Iterator receives each node and index. + * @return Returns `false` if iteration was broke. + */ + walkAtRules( + nameFilter: RegExp | string, + callback: (atRule: AtRule, index: number) => false | void + ): false | undefined + walkAtRules( + callback: (atRule: AtRule, index: number) => false | void + ): false | undefined + + walkComments( + callback: (comment: Comment, indexed: number) => false | void + ): false | undefined + walkComments( + callback: (comment: Comment, indexed: number) => false | void + ): false | undefined + + /** + * Traverses the container’s descendant nodes, calling callback + * for each declaration node. + * + * If you pass a filter, iteration will only happen over declarations + * with matching properties. + * + * ```js + * root.walkDecls(decl => { + * checkPropertySupport(decl.prop) + * }) + * + * root.walkDecls('border-radius', decl => { + * decl.remove() + * }) + * + * root.walkDecls(/^background/, decl => { + * decl.value = takeFirstColorFromGradient(decl.value) + * }) + * ``` + * + * Like `Container#each`, this method is safe + * to use if you are mutating arrays during iteration. + * + * @param prop String or regular expression to filter declarations + * by property name. + * @param callback Iterator receives each node and index. + * @return Returns `false` if iteration was broke. + */ + walkDecls( + propFilter: RegExp | string, + callback: (decl: Declaration, index: number) => false | void + ): false | undefined + walkDecls( + callback: (decl: Declaration, index: number) => false | void + ): false | undefined + /** + * Traverses the container’s descendant nodes, calling callback + * for each rule node. + * + * If you pass a filter, iteration will only happen over rules + * with matching selectors. + * + * Like `Container#each`, this method is safe + * to use if you are mutating arrays during iteration. + * + * ```js + * const selectors = [] + * root.walkRules(rule => { + * selectors.push(rule.selector) + * }) + * console.log(`Your CSS uses ${ selectors.length } selectors`) + * ``` + * + * @param selector String or regular expression to filter rules by selector. + * @param callback Iterator receives each node and index. + * @return Returns `false` if iteration was broke. + */ + walkRules( + selectorFilter: RegExp | string, + callback: (rule: Rule, index: number) => false | void + ): false | undefined + walkRules( + callback: (rule: Rule, index: number) => false | void + ): false | undefined + /** + * An internal method that converts a {@link NewChild} into a list of actual + * child nodes that can then be added to this container. + * + * This ensures that the nodes' parent is set to this container, that they use + * the correct prototype chain, and that they're marked as dirty. + * + * @param mnodes The new node or nodes to add. + * @param sample A node from whose raws the new node's `before` raw should be + * taken. + * @param type This should be set to `'prepend'` if the new nodes will be + * inserted at the beginning of the container. + * @hidden + */ + protected normalize( + nodes: Container.NewChild, + sample: Node | undefined, + type?: 'prepend' | false + ): Child[] +} + +declare class Container< + Child extends Node = ChildNode +> extends Container_ {} + +export = Container diff --git a/node_modules/postcss/lib/container.js b/node_modules/postcss/lib/container.js new file mode 100644 index 0000000..edb07cc --- /dev/null +++ b/node_modules/postcss/lib/container.js @@ -0,0 +1,447 @@ +'use strict' + +let Comment = require('./comment') +let Declaration = require('./declaration') +let Node = require('./node') +let { isClean, my } = require('./symbols') + +let AtRule, parse, Root, Rule + +function cleanSource(nodes) { + return nodes.map(i => { + if (i.nodes) i.nodes = cleanSource(i.nodes) + delete i.source + return i + }) +} + +function markTreeDirty(node) { + node[isClean] = false + if (node.proxyOf.nodes) { + for (let i of node.proxyOf.nodes) { + markTreeDirty(i) + } + } +} + +class Container extends Node { + get first() { + if (!this.proxyOf.nodes) return undefined + return this.proxyOf.nodes[0] + } + + get last() { + if (!this.proxyOf.nodes) return undefined + return this.proxyOf.nodes[this.proxyOf.nodes.length - 1] + } + + append(...children) { + for (let child of children) { + let nodes = this.normalize(child, this.last) + for (let node of nodes) this.proxyOf.nodes.push(node) + } + + this.markDirty() + + return this + } + + cleanRaws(keepBetween) { + super.cleanRaws(keepBetween) + if (this.nodes) { + for (let node of this.nodes) node.cleanRaws(keepBetween) + } + } + + each(callback) { + if (!this.proxyOf.nodes) return undefined + let iterator = this.getIterator() + + let index, result + while (this.indexes[iterator] < this.proxyOf.nodes.length) { + index = this.indexes[iterator] + result = callback(this.proxyOf.nodes[index], index) + if (result === false) break + + this.indexes[iterator] += 1 + } + + delete this.indexes[iterator] + return result + } + + every(condition) { + return this.nodes.every(condition) + } + + getIterator() { + if (!this.lastEach) this.lastEach = 0 + if (!this.indexes) this.indexes = {} + + this.lastEach += 1 + let iterator = this.lastEach + this.indexes[iterator] = 0 + + return iterator + } + + getProxyProcessor() { + return { + get(node, prop) { + if (prop === 'proxyOf') { + return node + } else if (!node[prop]) { + return node[prop] + } else if ( + prop === 'each' || + (typeof prop === 'string' && prop.startsWith('walk')) + ) { + return (...args) => { + return node[prop]( + ...args.map(i => { + if (typeof i === 'function') { + return (child, index) => i(child.toProxy(), index) + } else { + return i + } + }) + ) + } + } else if (prop === 'every' || prop === 'some') { + return cb => { + return node[prop]((child, ...other) => + cb(child.toProxy(), ...other) + ) + } + } else if (prop === 'root') { + return () => node.root().toProxy() + } else if (prop === 'nodes') { + return node.nodes.map(i => i.toProxy()) + } else if (prop === 'first' || prop === 'last') { + return node[prop].toProxy() + } else { + return node[prop] + } + }, + + set(node, prop, value) { + if (node[prop] === value) return true + node[prop] = value + if (prop === 'name' || prop === 'params' || prop === 'selector') { + node.markDirty() + } + return true + } + } + } + + index(child) { + if (typeof child === 'number') return child + if (child.proxyOf) child = child.proxyOf + return this.proxyOf.nodes.indexOf(child) + } + + insertAfter(exist, add) { + let existIndex = this.index(exist) + let nodes = this.normalize(add, this.proxyOf.nodes[existIndex]).reverse() + existIndex = this.index(exist) + for (let node of nodes) this.proxyOf.nodes.splice(existIndex + 1, 0, node) + + let index + for (let id in this.indexes) { + index = this.indexes[id] + if (existIndex < index) { + this.indexes[id] = index + nodes.length + } + } + + this.markDirty() + + return this + } + + insertBefore(exist, add) { + let existIndex = this.index(exist) + let type = existIndex === 0 ? 'prepend' : false + let nodes = this.normalize( + add, + this.proxyOf.nodes[existIndex], + type + ).reverse() + existIndex = this.index(exist) + for (let node of nodes) this.proxyOf.nodes.splice(existIndex, 0, node) + + let index + for (let id in this.indexes) { + index = this.indexes[id] + if (existIndex <= index) { + this.indexes[id] = index + nodes.length + } + } + + this.markDirty() + + return this + } + + normalize(nodes, sample) { + if (typeof nodes === 'string') { + nodes = cleanSource(parse(nodes).nodes) + } else if (typeof nodes === 'undefined') { + nodes = [] + } else if (Array.isArray(nodes)) { + nodes = nodes.slice(0) + for (let i of nodes) { + if (i.parent) i.parent.removeChild(i, 'ignore') + } + } else if (nodes.type === 'root' && this.type !== 'document') { + nodes = nodes.nodes.slice(0) + for (let i of nodes) { + if (i.parent) i.parent.removeChild(i, 'ignore') + } + } else if (nodes.type) { + nodes = [nodes] + } else if (nodes.prop) { + if (typeof nodes.value === 'undefined') { + throw new Error('Value field is missed in node creation') + } else if (typeof nodes.value !== 'string') { + nodes.value = String(nodes.value) + } + nodes = [new Declaration(nodes)] + } else if (nodes.selector || nodes.selectors) { + nodes = [new Rule(nodes)] + } else if (nodes.name) { + nodes = [new AtRule(nodes)] + } else if (nodes.text) { + nodes = [new Comment(nodes)] + } else { + throw new Error('Unknown node type in node creation') + } + + let processed = nodes.map(i => { + /* c8 ignore next */ + if (!i[my]) Container.rebuild(i) + i = i.proxyOf + if (i.parent) i.parent.removeChild(i) + if (i[isClean]) markTreeDirty(i) + + if (!i.raws) i.raws = {} + if (typeof i.raws.before === 'undefined') { + if (sample && typeof sample.raws.before !== 'undefined') { + i.raws.before = sample.raws.before.replace(/\S/g, '') + } + } + i.parent = this.proxyOf + return i + }) + + return processed + } + + prepend(...children) { + children = children.reverse() + for (let child of children) { + let nodes = this.normalize(child, this.first, 'prepend').reverse() + for (let node of nodes) this.proxyOf.nodes.unshift(node) + for (let id in this.indexes) { + this.indexes[id] = this.indexes[id] + nodes.length + } + } + + this.markDirty() + + return this + } + + push(child) { + child.parent = this + this.proxyOf.nodes.push(child) + return this + } + + removeAll() { + for (let node of this.proxyOf.nodes) node.parent = undefined + this.proxyOf.nodes = [] + + this.markDirty() + + return this + } + + removeChild(child) { + child = this.index(child) + this.proxyOf.nodes[child].parent = undefined + this.proxyOf.nodes.splice(child, 1) + + let index + for (let id in this.indexes) { + index = this.indexes[id] + if (index >= child) { + this.indexes[id] = index - 1 + } + } + + this.markDirty() + + return this + } + + replaceValues(pattern, opts, callback) { + if (!callback) { + callback = opts + opts = {} + } + + this.walkDecls(decl => { + if (opts.props && !opts.props.includes(decl.prop)) return + if (opts.fast && !decl.value.includes(opts.fast)) return + + decl.value = decl.value.replace(pattern, callback) + }) + + this.markDirty() + + return this + } + + some(condition) { + return this.nodes.some(condition) + } + + walk(callback) { + return this.each((child, i) => { + let result + try { + result = callback(child, i) + } catch (e) { + throw child.addToError(e) + } + if (result !== false && child.walk) { + result = child.walk(callback) + } + + return result + }) + } + + walkAtRules(name, callback) { + if (!callback) { + callback = name + return this.walk((child, i) => { + if (child.type === 'atrule') { + return callback(child, i) + } + }) + } + if (name instanceof RegExp) { + return this.walk((child, i) => { + if (child.type === 'atrule' && name.test(child.name)) { + return callback(child, i) + } + }) + } + return this.walk((child, i) => { + if (child.type === 'atrule' && child.name === name) { + return callback(child, i) + } + }) + } + + walkComments(callback) { + return this.walk((child, i) => { + if (child.type === 'comment') { + return callback(child, i) + } + }) + } + + walkDecls(prop, callback) { + if (!callback) { + callback = prop + return this.walk((child, i) => { + if (child.type === 'decl') { + return callback(child, i) + } + }) + } + if (prop instanceof RegExp) { + return this.walk((child, i) => { + if (child.type === 'decl' && prop.test(child.prop)) { + return callback(child, i) + } + }) + } + return this.walk((child, i) => { + if (child.type === 'decl' && child.prop === prop) { + return callback(child, i) + } + }) + } + + walkRules(selector, callback) { + if (!callback) { + callback = selector + + return this.walk((child, i) => { + if (child.type === 'rule') { + return callback(child, i) + } + }) + } + if (selector instanceof RegExp) { + return this.walk((child, i) => { + if (child.type === 'rule' && selector.test(child.selector)) { + return callback(child, i) + } + }) + } + return this.walk((child, i) => { + if (child.type === 'rule' && child.selector === selector) { + return callback(child, i) + } + }) + } +} + +Container.registerParse = dependant => { + parse = dependant +} + +Container.registerRule = dependant => { + Rule = dependant +} + +Container.registerAtRule = dependant => { + AtRule = dependant +} + +Container.registerRoot = dependant => { + Root = dependant +} + +module.exports = Container +Container.default = Container + +/* c8 ignore start */ +Container.rebuild = node => { + if (node.type === 'atrule') { + Object.setPrototypeOf(node, AtRule.prototype) + } else if (node.type === 'rule') { + Object.setPrototypeOf(node, Rule.prototype) + } else if (node.type === 'decl') { + Object.setPrototypeOf(node, Declaration.prototype) + } else if (node.type === 'comment') { + Object.setPrototypeOf(node, Comment.prototype) + } else if (node.type === 'root') { + Object.setPrototypeOf(node, Root.prototype) + } + + node[my] = true + + if (node.nodes) { + node.nodes.forEach(child => { + Container.rebuild(child) + }) + } +} +/* c8 ignore stop */ diff --git a/node_modules/postcss/lib/css-syntax-error.d.ts b/node_modules/postcss/lib/css-syntax-error.d.ts new file mode 100644 index 0000000..e540d84 --- /dev/null +++ b/node_modules/postcss/lib/css-syntax-error.d.ts @@ -0,0 +1,248 @@ +import { FilePosition } from './input.js' + +declare namespace CssSyntaxError { + /** + * A position that is part of a range. + */ + export interface RangePosition { + /** + * The column number in the input. + */ + column: number + + /** + * The line number in the input. + */ + line: number + } + + // eslint-disable-next-line @typescript-eslint/no-use-before-define + export { CssSyntaxError_ as default } +} + +/** + * The CSS parser throws this error for broken CSS. + * + * Custom parsers can throw this error for broken custom syntax using + * the `Node#error` method. + * + * PostCSS will use the input source map to detect the original error location. + * If you wrote a Sass file, compiled it to CSS and then parsed it with PostCSS, + * PostCSS will show the original position in the Sass file. + * + * If you need the position in the PostCSS input + * (e.g., to debug the previous compiler), use `error.input.file`. + * + * ```js + * // Raising error from plugin + * throw node.error('Unknown variable', { plugin: 'postcss-vars' }) + * ``` + * + * ```js + * // Catching and checking syntax error + * try { + * postcss.parse('a{') + * } catch (error) { + * if (error.name === 'CssSyntaxError') { + * error //=> CssSyntaxError + * } + * } + * ``` + */ +declare class CssSyntaxError_ extends Error { + /** + * Source column of the error. + * + * ```js + * error.column //=> 1 + * error.input.column //=> 4 + * ``` + * + * PostCSS will use the input source map to detect the original location. + * If you need the position in the PostCSS input, use `error.input.column`. + */ + column?: number + + /** + * Source column of the error's end, exclusive. Provided if the error pertains + * to a range. + * + * ```js + * error.endColumn //=> 1 + * error.input.endColumn //=> 4 + * ``` + * + * PostCSS will use the input source map to detect the original location. + * If you need the position in the PostCSS input, use `error.input.endColumn`. + */ + endColumn?: number + + /** + * Source line of the error's end, exclusive. Provided if the error pertains + * to a range. + * + * ```js + * error.endLine //=> 3 + * error.input.endLine //=> 4 + * ``` + * + * PostCSS will use the input source map to detect the original location. + * If you need the position in the PostCSS input, use `error.input.endLine`. + */ + endLine?: number + + /** + * Absolute path to the broken file. + * + * ```js + * error.file //=> 'a.sass' + * error.input.file //=> 'a.css' + * ``` + * + * PostCSS will use the input source map to detect the original location. + * If you need the position in the PostCSS input, use `error.input.file`. + */ + file?: string + + /** + * Input object with PostCSS internal information + * about input file. If input has source map + * from previous tool, PostCSS will use origin + * (for example, Sass) source. You can use this + * object to get PostCSS input source. + * + * ```js + * error.input.file //=> 'a.css' + * error.file //=> 'a.sass' + * ``` + */ + input?: FilePosition + + /** + * Source line of the error. + * + * ```js + * error.line //=> 2 + * error.input.line //=> 4 + * ``` + * + * PostCSS will use the input source map to detect the original location. + * If you need the position in the PostCSS input, use `error.input.line`. + */ + line?: number + + /** + * Full error text in the GNU error format + * with plugin, file, line and column. + * + * ```js + * error.message //=> 'a.css:1:1: Unclosed block' + * ``` + */ + message: string + + /** + * Always equal to `'CssSyntaxError'`. You should always check error type + * by `error.name === 'CssSyntaxError'` + * instead of `error instanceof CssSyntaxError`, + * because npm could have several PostCSS versions. + * + * ```js + * if (error.name === 'CssSyntaxError') { + * error //=> CssSyntaxError + * } + * ``` + */ + name: 'CssSyntaxError' + + /** + * Plugin name, if error came from plugin. + * + * ```js + * error.plugin //=> 'postcss-vars' + * ``` + */ + plugin?: string + + /** + * Error message. + * + * ```js + * error.message //=> 'Unclosed block' + * ``` + */ + reason: string + + /** + * Source code of the broken file. + * + * ```js + * error.source //=> 'a { b {} }' + * error.input.source //=> 'a b { }' + * ``` + */ + source?: string + + stack: string + + /** + * Instantiates a CSS syntax error. Can be instantiated for a single position + * or for a range. + * @param message Error message. + * @param lineOrStartPos If for a single position, the line number, or if for + * a range, the inclusive start position of the error. + * @param columnOrEndPos If for a single position, the column number, or if for + * a range, the exclusive end position of the error. + * @param source Source code of the broken file. + * @param file Absolute path to the broken file. + * @param plugin PostCSS plugin name, if error came from plugin. + */ + constructor( + message: string, + lineOrStartPos?: CssSyntaxError.RangePosition | number, + columnOrEndPos?: CssSyntaxError.RangePosition | number, + source?: string, + file?: string, + plugin?: string + ) + + /** + * Returns a few lines of CSS source that caused the error. + * + * If the CSS has an input source map without `sourceContent`, + * this method will return an empty string. + * + * ```js + * error.showSourceCode() //=> " 4 | } + * // 5 | a { + * // > 6 | bad + * // | ^ + * // 7 | } + * // 8 | b {" + * ``` + * + * @param color Whether arrow will be colored red by terminal + * color codes. By default, PostCSS will detect + * color support by `process.stdout.isTTY` + * and `process.env.NODE_DISABLE_COLORS`. + * @return Few lines of CSS source that caused the error. + */ + showSourceCode(color?: boolean): string + + /** + * Returns error position, message and source code of the broken part. + * + * ```js + * error.toString() //=> "CssSyntaxError: app.css:1:1: Unclosed block + * // > 1 | a { + * // | ^" + * ``` + * + * @return Error position, message and source code. + */ + toString(): string +} + +declare class CssSyntaxError extends CssSyntaxError_ {} + +export = CssSyntaxError diff --git a/node_modules/postcss/lib/css-syntax-error.js b/node_modules/postcss/lib/css-syntax-error.js new file mode 100644 index 0000000..275a4f6 --- /dev/null +++ b/node_modules/postcss/lib/css-syntax-error.js @@ -0,0 +1,133 @@ +'use strict' + +let pico = require('picocolors') + +let terminalHighlight = require('./terminal-highlight') + +class CssSyntaxError extends Error { + constructor(message, line, column, source, file, plugin) { + super(message) + this.name = 'CssSyntaxError' + this.reason = message + + if (file) { + this.file = file + } + if (source) { + this.source = source + } + if (plugin) { + this.plugin = plugin + } + if (typeof line !== 'undefined' && typeof column !== 'undefined') { + if (typeof line === 'number') { + this.line = line + this.column = column + } else { + this.line = line.line + this.column = line.column + this.endLine = column.line + this.endColumn = column.column + } + } + + this.setMessage() + + if (Error.captureStackTrace) { + Error.captureStackTrace(this, CssSyntaxError) + } + } + + setMessage() { + this.message = this.plugin ? this.plugin + ': ' : '' + this.message += this.file ? this.file : '' + if (typeof this.line !== 'undefined') { + this.message += ':' + this.line + ':' + this.column + } + this.message += ': ' + this.reason + } + + showSourceCode(color) { + if (!this.source) return '' + + let css = this.source + if (color == null) color = pico.isColorSupported + + let aside = text => text + let mark = text => text + let highlight = text => text + if (color) { + let { bold, gray, red } = pico.createColors(true) + mark = text => bold(red(text)) + aside = text => gray(text) + if (terminalHighlight) { + highlight = text => terminalHighlight(text) + } + } + + let lines = css.split(/\r?\n/) + let start = Math.max(this.line - 3, 0) + let end = Math.min(this.line + 2, lines.length) + let maxWidth = String(end).length + + return lines + .slice(start, end) + .map((line, index) => { + let number = start + 1 + index + let gutter = ' ' + (' ' + number).slice(-maxWidth) + ' | ' + if (number === this.line) { + if (line.length > 160) { + let padding = 20 + let subLineStart = Math.max(0, this.column - padding) + let subLineEnd = Math.max( + this.column + padding, + this.endColumn + padding + ) + let subLine = line.slice(subLineStart, subLineEnd) + + let spacing = + aside(gutter.replace(/\d/g, ' ')) + + line + .slice(0, Math.min(this.column - 1, padding - 1)) + .replace(/[^\t]/g, ' ') + + return ( + mark('>') + + aside(gutter) + + highlight(subLine) + + '\n ' + + spacing + + mark('^') + ) + } + + let spacing = + aside(gutter.replace(/\d/g, ' ')) + + line.slice(0, this.column - 1).replace(/[^\t]/g, ' ') + + return ( + mark('>') + + aside(gutter) + + highlight(line) + + '\n ' + + spacing + + mark('^') + ) + } + + return ' ' + aside(gutter) + highlight(line) + }) + .join('\n') + } + + toString() { + let code = this.showSourceCode() + if (code) { + code = '\n\n' + code + '\n' + } + return this.name + ': ' + this.message + code + } +} + +module.exports = CssSyntaxError +CssSyntaxError.default = CssSyntaxError diff --git a/node_modules/postcss/lib/declaration.d.ts b/node_modules/postcss/lib/declaration.d.ts new file mode 100644 index 0000000..d489b42 --- /dev/null +++ b/node_modules/postcss/lib/declaration.d.ts @@ -0,0 +1,151 @@ +import { ContainerWithChildren } from './container.js' +import Node from './node.js' + +declare namespace Declaration { + export interface DeclarationRaws extends Record { + /** + * The space symbols before the node. It also stores `*` + * and `_` symbols before the declaration (IE hack). + */ + before?: string + + /** + * The symbols between the property and value for declarations. + */ + between?: string + + /** + * The content of the important statement, if it is not just `!important`. + */ + important?: string + + /** + * Declaration value with comments. + */ + value?: { + raw: string + value: string + } + } + + export interface DeclarationProps { + /** Whether the declaration has an `!important` annotation. */ + important?: boolean + /** Name of the declaration. */ + prop: string + /** Information used to generate byte-to-byte equal node string as it was in the origin input. */ + raws?: DeclarationRaws + /** Value of the declaration. */ + value: string + } + + // eslint-disable-next-line @typescript-eslint/no-use-before-define + export { Declaration_ as default } +} + +/** + * It represents a class that handles + * [CSS declarations](https://developer.mozilla.org/en-US/docs/Web/CSS/Syntax#css_declarations) + * + * ```js + * Once (root, { Declaration }) { + * const color = new Declaration({ prop: 'color', value: 'black' }) + * root.append(color) + * } + * ``` + * + * ```js + * const root = postcss.parse('a { color: black }') + * const decl = root.first?.first + * + * decl.type //=> 'decl' + * decl.toString() //=> ' color: black' + * ``` + */ +declare class Declaration_ extends Node { + parent: ContainerWithChildren | undefined + raws: Declaration.DeclarationRaws + + type: 'decl' + + /** + * It represents a specificity of the declaration. + * + * If true, the CSS declaration will have an + * [important](https://developer.mozilla.org/en-US/docs/Web/CSS/important) + * specifier. + * + * ```js + * const root = postcss.parse('a { color: black !important; color: red }') + * + * root.first.first.important //=> true + * root.first.last.important //=> undefined + * ``` + */ + get important(): boolean + set important(value: boolean) + + /** + * The property name for a CSS declaration. + * + * ```js + * const root = postcss.parse('a { color: black }') + * const decl = root.first.first + * + * decl.prop //=> 'color' + * ``` + */ + get prop(): string + + set prop(value: string) + + /** + * The property value for a CSS declaration. + * + * Any CSS comments inside the value string will be filtered out. + * CSS comments present in the source value will be available in + * the `raws` property. + * + * Assigning new `value` would ignore the comments in `raws` + * property while compiling node to string. + * + * ```js + * const root = postcss.parse('a { color: black }') + * const decl = root.first.first + * + * decl.value //=> 'black' + * ``` + */ + get value(): string + set value(value: string) + + /** + * It represents a getter that returns `true` if a declaration starts with + * `--` or `$`, which are used to declare variables in CSS and SASS/SCSS. + * + * ```js + * const root = postcss.parse(':root { --one: 1 }') + * const one = root.first.first + * + * one.variable //=> true + * ``` + * + * ```js + * const root = postcss.parse('$one: 1') + * const one = root.first + * + * one.variable //=> true + * ``` + */ + get variable(): boolean + constructor(defaults?: Declaration.DeclarationProps) + + assign(overrides: Declaration.DeclarationProps | object): this + clone(overrides?: Partial): this + cloneAfter(overrides?: Partial): this + cloneBefore(overrides?: Partial): this +} + +declare class Declaration extends Declaration_ {} + +export = Declaration diff --git a/node_modules/postcss/lib/declaration.js b/node_modules/postcss/lib/declaration.js new file mode 100644 index 0000000..65a03aa --- /dev/null +++ b/node_modules/postcss/lib/declaration.js @@ -0,0 +1,24 @@ +'use strict' + +let Node = require('./node') + +class Declaration extends Node { + get variable() { + return this.prop.startsWith('--') || this.prop[0] === '$' + } + + constructor(defaults) { + if ( + defaults && + typeof defaults.value !== 'undefined' && + typeof defaults.value !== 'string' + ) { + defaults = { ...defaults, value: String(defaults.value) } + } + super(defaults) + this.type = 'decl' + } +} + +module.exports = Declaration +Declaration.default = Declaration diff --git a/node_modules/postcss/lib/document.d.ts b/node_modules/postcss/lib/document.d.ts new file mode 100644 index 0000000..f9e8063 --- /dev/null +++ b/node_modules/postcss/lib/document.d.ts @@ -0,0 +1,69 @@ +import Container, { ContainerProps } from './container.js' +import { ProcessOptions } from './postcss.js' +import Result from './result.js' +import Root from './root.js' + +declare namespace Document { + export interface DocumentProps extends ContainerProps { + nodes?: readonly Root[] + + /** + * Information to generate byte-to-byte equal node string as it was + * in the origin input. + * + * Every parser saves its own properties. + */ + raws?: Record + } + + // eslint-disable-next-line @typescript-eslint/no-use-before-define + export { Document_ as default } +} + +/** + * Represents a file and contains all its parsed nodes. + * + * **Experimental:** some aspects of this node could change within minor + * or patch version releases. + * + * ```js + * const document = htmlParser( + * '' + * ) + * document.type //=> 'document' + * document.nodes.length //=> 2 + * ``` + */ +declare class Document_ extends Container { + nodes: Root[] + parent: undefined + type: 'document' + + constructor(defaults?: Document.DocumentProps) + + assign(overrides: Document.DocumentProps | object): this + clone(overrides?: Partial): this + cloneAfter(overrides?: Partial): this + cloneBefore(overrides?: Partial): this + + /** + * Returns a `Result` instance representing the document’s CSS roots. + * + * ```js + * const root1 = postcss.parse(css1, { from: 'a.css' }) + * const root2 = postcss.parse(css2, { from: 'b.css' }) + * const document = postcss.document() + * document.append(root1) + * document.append(root2) + * const result = document.toResult({ to: 'all.css', map: true }) + * ``` + * + * @param opts Options. + * @return Result with current document’s CSS. + */ + toResult(options?: ProcessOptions): Result +} + +declare class Document extends Document_ {} + +export = Document diff --git a/node_modules/postcss/lib/document.js b/node_modules/postcss/lib/document.js new file mode 100644 index 0000000..4468991 --- /dev/null +++ b/node_modules/postcss/lib/document.js @@ -0,0 +1,33 @@ +'use strict' + +let Container = require('./container') + +let LazyResult, Processor + +class Document extends Container { + constructor(defaults) { + // type needs to be passed to super, otherwise child roots won't be normalized correctly + super({ type: 'document', ...defaults }) + + if (!this.nodes) { + this.nodes = [] + } + } + + toResult(opts = {}) { + let lazy = new LazyResult(new Processor(), this, opts) + + return lazy.stringify() + } +} + +Document.registerLazyResult = dependant => { + LazyResult = dependant +} + +Document.registerProcessor = dependant => { + Processor = dependant +} + +module.exports = Document +Document.default = Document diff --git a/node_modules/postcss/lib/fromJSON.d.ts b/node_modules/postcss/lib/fromJSON.d.ts new file mode 100644 index 0000000..e1deedb --- /dev/null +++ b/node_modules/postcss/lib/fromJSON.d.ts @@ -0,0 +1,9 @@ +import { JSONHydrator } from './postcss.js' + +interface FromJSON extends JSONHydrator { + default: FromJSON +} + +declare const fromJSON: FromJSON + +export = fromJSON diff --git a/node_modules/postcss/lib/fromJSON.js b/node_modules/postcss/lib/fromJSON.js new file mode 100644 index 0000000..c9ac1a8 --- /dev/null +++ b/node_modules/postcss/lib/fromJSON.js @@ -0,0 +1,54 @@ +'use strict' + +let AtRule = require('./at-rule') +let Comment = require('./comment') +let Declaration = require('./declaration') +let Input = require('./input') +let PreviousMap = require('./previous-map') +let Root = require('./root') +let Rule = require('./rule') + +function fromJSON(json, inputs) { + if (Array.isArray(json)) return json.map(n => fromJSON(n)) + + let { inputs: ownInputs, ...defaults } = json + if (ownInputs) { + inputs = [] + for (let input of ownInputs) { + let inputHydrated = { ...input, __proto__: Input.prototype } + if (inputHydrated.map) { + inputHydrated.map = { + ...inputHydrated.map, + __proto__: PreviousMap.prototype + } + } + inputs.push(inputHydrated) + } + } + if (defaults.nodes) { + defaults.nodes = json.nodes.map(n => fromJSON(n, inputs)) + } + if (defaults.source) { + let { inputId, ...source } = defaults.source + defaults.source = source + if (inputId != null) { + defaults.source.input = inputs[inputId] + } + } + if (defaults.type === 'root') { + return new Root(defaults) + } else if (defaults.type === 'decl') { + return new Declaration(defaults) + } else if (defaults.type === 'rule') { + return new Rule(defaults) + } else if (defaults.type === 'comment') { + return new Comment(defaults) + } else if (defaults.type === 'atrule') { + return new AtRule(defaults) + } else { + throw new Error('Unknown node type: ' + json.type) + } +} + +module.exports = fromJSON +fromJSON.default = fromJSON diff --git a/node_modules/postcss/lib/input.d.ts b/node_modules/postcss/lib/input.d.ts new file mode 100644 index 0000000..3207da3 --- /dev/null +++ b/node_modules/postcss/lib/input.d.ts @@ -0,0 +1,227 @@ +import { CssSyntaxError, ProcessOptions } from './postcss.js' +import PreviousMap from './previous-map.js' + +declare namespace Input { + export interface FilePosition { + /** + * Column of inclusive start position in source file. + */ + column: number + + /** + * Column of exclusive end position in source file. + */ + endColumn?: number + + /** + * Line of exclusive end position in source file. + */ + endLine?: number + + /** + * Offset of exclusive end position in source file. + */ + endOffset?: number + + /** + * Absolute path to the source file. + */ + file?: string + + /** + * Line of inclusive start position in source file. + */ + line: number + + /** + * Offset of inclusive start position in source file. + */ + offset: number + + /** + * Source code. + */ + source?: string + + /** + * URL for the source file. + */ + url: string + } + + // eslint-disable-next-line @typescript-eslint/no-use-before-define + export { Input_ as default } +} + +/** + * Represents the source CSS. + * + * ```js + * const root = postcss.parse(css, { from: file }) + * const input = root.source.input + * ``` + */ +declare class Input_ { + /** + * Input CSS source. + * + * ```js + * const input = postcss.parse('a{}', { from: file }).input + * input.css //=> "a{}" + * ``` + */ + css: string + + /** + * Input source with support for non-CSS documents. + * + * ```js + * const input = postcss.parse('a{}', { from: file, document: '' }).input + * input.document //=> "" + * input.css //=> "a{}" + * ``` + */ + document: string + + /** + * The absolute path to the CSS source file defined + * with the `from` option. + * + * ```js + * const root = postcss.parse(css, { from: 'a.css' }) + * root.source.input.file //=> '/home/ai/a.css' + * ``` + */ + file?: string + + /** + * The flag to indicate whether or not the source code has Unicode BOM. + */ + hasBOM: boolean + + /** + * The unique ID of the CSS source. It will be created if `from` option + * is not provided (because PostCSS does not know the file path). + * + * ```js + * const root = postcss.parse(css) + * root.source.input.file //=> undefined + * root.source.input.id //=> "" + * ``` + */ + id?: string + + /** + * The input source map passed from a compilation step before PostCSS + * (for example, from Sass compiler). + * + * ```js + * root.source.input.map.consumer().sources //=> ['a.sass'] + * ``` + */ + map: PreviousMap + + /** + * The CSS source identifier. Contains `Input#file` if the user + * set the `from` option, or `Input#id` if they did not. + * + * ```js + * const root = postcss.parse(css, { from: 'a.css' }) + * root.source.input.from //=> "/home/ai/a.css" + * + * const root = postcss.parse(css) + * root.source.input.from //=> "" + * ``` + */ + get from(): string + + /** + * @param css Input CSS source. + * @param opts Process options. + */ + constructor(css: string, opts?: ProcessOptions) + + /** + * Returns `CssSyntaxError` with information about the error and its position. + */ + error( + message: string, + start: + | { + column: number + line: number + } + | { + offset: number + }, + end: + | { + column: number + line: number + } + | { + offset: number + }, + opts?: { plugin?: CssSyntaxError['plugin'] } + ): CssSyntaxError + error( + message: string, + line: number, + column: number, + opts?: { plugin?: CssSyntaxError['plugin'] } + ): CssSyntaxError + error( + message: string, + offset: number, + opts?: { plugin?: CssSyntaxError['plugin'] } + ): CssSyntaxError + + /** + * Converts source line and column to offset. + * + * @param line Source line. + * @param column Source column. + * @return Source offset. + */ + fromLineAndColumn(line: number, column: number): number + + /** + * Converts source offset to line and column. + * + * @param offset Source offset. + */ + fromOffset(offset: number): { col: number; line: number } | null + + /** + * Reads the input source map and returns a symbol position + * in the input source (e.g., in a Sass file that was compiled + * to CSS before being passed to PostCSS). Optionally takes an + * end position, exclusive. + * + * ```js + * root.source.input.origin(1, 1) //=> { file: 'a.css', line: 3, column: 1 } + * root.source.input.origin(1, 1, 1, 4) + * //=> { file: 'a.css', line: 3, column: 1, endLine: 3, endColumn: 4 } + * ``` + * + * @param line Line for inclusive start position in input CSS. + * @param column Column for inclusive start position in input CSS. + * @param endLine Line for exclusive end position in input CSS. + * @param endColumn Column for exclusive end position in input CSS. + * + * @return Position in input source. + */ + origin( + line: number, + column: number, + endLine?: number, + endColumn?: number + ): false | Input.FilePosition + + /** Converts this to a JSON-friendly object representation. */ + toJSON(): object +} + +declare class Input extends Input_ {} + +export = Input diff --git a/node_modules/postcss/lib/input.js b/node_modules/postcss/lib/input.js new file mode 100644 index 0000000..bb0ccf5 --- /dev/null +++ b/node_modules/postcss/lib/input.js @@ -0,0 +1,265 @@ +'use strict' + +let { nanoid } = require('nanoid/non-secure') +let { isAbsolute, resolve } = require('path') +let { SourceMapConsumer, SourceMapGenerator } = require('source-map-js') +let { fileURLToPath, pathToFileURL } = require('url') + +let CssSyntaxError = require('./css-syntax-error') +let PreviousMap = require('./previous-map') +let terminalHighlight = require('./terminal-highlight') + +let lineToIndexCache = Symbol('lineToIndexCache') + +let sourceMapAvailable = Boolean(SourceMapConsumer && SourceMapGenerator) +let pathAvailable = Boolean(resolve && isAbsolute) + +function getLineToIndex(input) { + if (input[lineToIndexCache]) return input[lineToIndexCache] + let lines = input.css.split('\n') + let lineToIndex = new Array(lines.length) + let prevIndex = 0 + + for (let i = 0, l = lines.length; i < l; i++) { + lineToIndex[i] = prevIndex + prevIndex += lines[i].length + 1 + } + + input[lineToIndexCache] = lineToIndex + return lineToIndex +} + +class Input { + get from() { + return this.file || this.id + } + + constructor(css, opts = {}) { + if ( + css === null || + typeof css === 'undefined' || + (typeof css === 'object' && !css.toString) + ) { + throw new Error(`PostCSS received ${css} instead of CSS string`) + } + + this.css = css.toString() + + if (this.css[0] === '\uFEFF' || this.css[0] === '\uFFFE') { + this.hasBOM = true + this.css = this.css.slice(1) + } else { + this.hasBOM = false + } + + this.document = this.css + if (opts.document) this.document = opts.document.toString() + + if (opts.from) { + if ( + !pathAvailable || + /^\w+:\/\//.test(opts.from) || + isAbsolute(opts.from) + ) { + this.file = opts.from + } else { + this.file = resolve(opts.from) + } + } + + if (pathAvailable && sourceMapAvailable) { + let map = new PreviousMap(this.css, opts) + if (map.text) { + this.map = map + let file = map.consumer().file + if (!this.file && file) this.file = this.mapResolve(file) + } + } + + if (!this.file) { + this.id = '' + } + if (this.map) this.map.file = this.from + } + + error(message, line, column, opts = {}) { + let endColumn, endLine, endOffset, offset, result + + if (line && typeof line === 'object') { + let start = line + let end = column + if (typeof start.offset === 'number') { + offset = start.offset + let pos = this.fromOffset(offset) + line = pos.line + column = pos.col + } else { + line = start.line + column = start.column + offset = this.fromLineAndColumn(line, column) + } + if (typeof end.offset === 'number') { + endOffset = end.offset + let pos = this.fromOffset(endOffset) + endLine = pos.line + endColumn = pos.col + } else { + endLine = end.line + endColumn = end.column + endOffset = this.fromLineAndColumn(end.line, end.column) + } + } else if (!column) { + offset = line + let pos = this.fromOffset(offset) + line = pos.line + column = pos.col + } else { + offset = this.fromLineAndColumn(line, column) + } + + let origin = this.origin(line, column, endLine, endColumn) + if (origin) { + result = new CssSyntaxError( + message, + origin.endLine === undefined + ? origin.line + : { column: origin.column, line: origin.line }, + origin.endLine === undefined + ? origin.column + : { column: origin.endColumn, line: origin.endLine }, + origin.source, + origin.file, + opts.plugin + ) + } else { + result = new CssSyntaxError( + message, + endLine === undefined ? line : { column, line }, + endLine === undefined ? column : { column: endColumn, line: endLine }, + this.css, + this.file, + opts.plugin + ) + } + + result.input = { column, endColumn, endLine, endOffset, line, offset, source: this.css } + if (this.file) { + if (pathToFileURL) { + result.input.url = pathToFileURL(this.file).toString() + } + result.input.file = this.file + } + + return result + } + + fromLineAndColumn(line, column) { + let lineToIndex = getLineToIndex(this) + let index = lineToIndex[line - 1] + return index + column - 1 + } + + fromOffset(offset) { + let lineToIndex = getLineToIndex(this) + let lastLine = lineToIndex[lineToIndex.length - 1] + + let min = 0 + if (offset >= lastLine) { + min = lineToIndex.length - 1 + } else { + let max = lineToIndex.length - 2 + let mid + while (min < max) { + mid = min + ((max - min) >> 1) + if (offset < lineToIndex[mid]) { + max = mid - 1 + } else if (offset >= lineToIndex[mid + 1]) { + min = mid + 1 + } else { + min = mid + break + } + } + } + return { + col: offset - lineToIndex[min] + 1, + line: min + 1 + } + } + + mapResolve(file) { + if (/^\w+:\/\//.test(file)) { + return file + } + return resolve(this.map.consumer().sourceRoot || this.map.root || '.', file) + } + + origin(line, column, endLine, endColumn) { + if (!this.map) return false + let consumer = this.map.consumer() + + let from = consumer.originalPositionFor({ column, line }) + if (!from.source) return false + + let to + if (typeof endLine === 'number') { + to = consumer.originalPositionFor({ column: endColumn, line: endLine }) + } + + let fromUrl + + if (isAbsolute(from.source)) { + fromUrl = pathToFileURL(from.source) + } else { + fromUrl = new URL( + from.source, + this.map.consumer().sourceRoot || pathToFileURL(this.map.mapFile) + ) + } + + let result = { + column: from.column, + endColumn: to && to.column, + endLine: to && to.line, + line: from.line, + url: fromUrl.toString() + } + + if (fromUrl.protocol === 'file:') { + if (fileURLToPath) { + result.file = fileURLToPath(fromUrl) + } else { + /* c8 ignore next 2 */ + throw new Error(`file: protocol is not available in this PostCSS build`) + } + } + + let source = consumer.sourceContentFor(from.source) + if (source) result.source = source + + return result + } + + toJSON() { + let json = {} + for (let name of ['hasBOM', 'css', 'file', 'id']) { + if (this[name] != null) { + json[name] = this[name] + } + } + if (this.map) { + json.map = { ...this.map } + if (json.map.consumerCache) { + json.map.consumerCache = undefined + } + } + return json + } +} + +module.exports = Input +Input.default = Input + +if (terminalHighlight && terminalHighlight.registerInput) { + terminalHighlight.registerInput(Input) +} diff --git a/node_modules/postcss/lib/lazy-result.d.ts b/node_modules/postcss/lib/lazy-result.d.ts new file mode 100644 index 0000000..2eb7279 --- /dev/null +++ b/node_modules/postcss/lib/lazy-result.d.ts @@ -0,0 +1,190 @@ +import Document from './document.js' +import { SourceMap } from './postcss.js' +import Processor from './processor.js' +import Result, { Message, ResultOptions } from './result.js' +import Root from './root.js' +import Warning from './warning.js' + +declare namespace LazyResult { + // eslint-disable-next-line @typescript-eslint/no-use-before-define + export { LazyResult_ as default } +} + +/** + * A Promise proxy for the result of PostCSS transformations. + * + * A `LazyResult` instance is returned by `Processor#process`. + * + * ```js + * const lazy = postcss([autoprefixer]).process(css) + * ``` + */ +declare class LazyResult_ + implements PromiseLike> +{ + /** + * Processes input CSS through synchronous and asynchronous plugins + * and calls onRejected for each error thrown in any plugin. + * + * It implements standard Promise API. + * + * ```js + * postcss([autoprefixer]).process(css).then(result => { + * console.log(result.css) + * }).catch(error => { + * console.error(error) + * }) + * ``` + */ + catch: Promise>['catch'] + + /** + * Processes input CSS through synchronous and asynchronous plugins + * and calls onFinally on any error or when all plugins will finish work. + * + * It implements standard Promise API. + * + * ```js + * postcss([autoprefixer]).process(css).finally(() => { + * console.log('processing ended') + * }) + * ``` + */ + finally: Promise>['finally'] + + /** + * Processes input CSS through synchronous and asynchronous plugins + * and calls `onFulfilled` with a Result instance. If a plugin throws + * an error, the `onRejected` callback will be executed. + * + * It implements standard Promise API. + * + * ```js + * postcss([autoprefixer]).process(css, { from: cssPath }).then(result => { + * console.log(result.css) + * }) + * ``` + */ + then: Promise>['then'] + + /** + * An alias for the `css` property. Use it with syntaxes + * that generate non-CSS output. + * + * This property will only work with synchronous plugins. + * If the processor contains any asynchronous plugins + * it will throw an error. + * + * PostCSS runners should always use `LazyResult#then`. + */ + get content(): string + + /** + * Processes input CSS through synchronous plugins, converts `Root` + * to a CSS string and returns `Result#css`. + * + * This property will only work with synchronous plugins. + * If the processor contains any asynchronous plugins + * it will throw an error. + * + * PostCSS runners should always use `LazyResult#then`. + */ + get css(): string + + /** + * Processes input CSS through synchronous plugins + * and returns `Result#map`. + * + * This property will only work with synchronous plugins. + * If the processor contains any asynchronous plugins + * it will throw an error. + * + * PostCSS runners should always use `LazyResult#then`. + */ + get map(): SourceMap + + /** + * Processes input CSS through synchronous plugins + * and returns `Result#messages`. + * + * This property will only work with synchronous plugins. If the processor + * contains any asynchronous plugins it will throw an error. + * + * PostCSS runners should always use `LazyResult#then`. + */ + get messages(): Message[] + + /** + * Options from the `Processor#process` call. + */ + get opts(): ResultOptions + + /** + * Returns a `Processor` instance, which will be used + * for CSS transformations. + */ + get processor(): Processor + + /** + * Processes input CSS through synchronous plugins + * and returns `Result#root`. + * + * This property will only work with synchronous plugins. If the processor + * contains any asynchronous plugins it will throw an error. + * + * PostCSS runners should always use `LazyResult#then`. + */ + get root(): RootNode + + /** + * Returns the default string description of an object. + * Required to implement the Promise interface. + */ + get [Symbol.toStringTag](): string + + /** + * @param processor Processor used for this transformation. + * @param css CSS to parse and transform. + * @param opts Options from the `Processor#process` or `Root#toResult`. + */ + constructor(processor: Processor, css: string, opts: ResultOptions) + + /** + * Run plugin in async way and return `Result`. + * + * @return Result with output content. + */ + async(): Promise> + + /** + * Run plugin in sync way and return `Result`. + * + * @return Result with output content. + */ + sync(): Result + + /** + * Alias for the `LazyResult#css` property. + * + * ```js + * lazy + '' === lazy.css + * ``` + * + * @return Output CSS. + */ + toString(): string + + /** + * Processes input CSS through synchronous plugins + * and calls `Result#warnings`. + * + * @return Warnings from plugins. + */ + warnings(): Warning[] +} + +declare class LazyResult< + RootNode = Document | Root +> extends LazyResult_ {} + +export = LazyResult diff --git a/node_modules/postcss/lib/lazy-result.js b/node_modules/postcss/lib/lazy-result.js new file mode 100644 index 0000000..1ea52b8 --- /dev/null +++ b/node_modules/postcss/lib/lazy-result.js @@ -0,0 +1,550 @@ +'use strict' + +let Container = require('./container') +let Document = require('./document') +let MapGenerator = require('./map-generator') +let parse = require('./parse') +let Result = require('./result') +let Root = require('./root') +let stringify = require('./stringify') +let { isClean, my } = require('./symbols') +let warnOnce = require('./warn-once') + +const TYPE_TO_CLASS_NAME = { + atrule: 'AtRule', + comment: 'Comment', + decl: 'Declaration', + document: 'Document', + root: 'Root', + rule: 'Rule' +} + +const PLUGIN_PROPS = { + AtRule: true, + AtRuleExit: true, + Comment: true, + CommentExit: true, + Declaration: true, + DeclarationExit: true, + Document: true, + DocumentExit: true, + Once: true, + OnceExit: true, + postcssPlugin: true, + prepare: true, + Root: true, + RootExit: true, + Rule: true, + RuleExit: true +} + +const NOT_VISITORS = { + Once: true, + postcssPlugin: true, + prepare: true +} + +const CHILDREN = 0 + +function isPromise(obj) { + return typeof obj === 'object' && typeof obj.then === 'function' +} + +function getEvents(node) { + let key = false + let type = TYPE_TO_CLASS_NAME[node.type] + if (node.type === 'decl') { + key = node.prop.toLowerCase() + } else if (node.type === 'atrule') { + key = node.name.toLowerCase() + } + + if (key && node.append) { + return [ + type, + type + '-' + key, + CHILDREN, + type + 'Exit', + type + 'Exit-' + key + ] + } else if (key) { + return [type, type + '-' + key, type + 'Exit', type + 'Exit-' + key] + } else if (node.append) { + return [type, CHILDREN, type + 'Exit'] + } else { + return [type, type + 'Exit'] + } +} + +function toStack(node) { + let events + if (node.type === 'document') { + events = ['Document', CHILDREN, 'DocumentExit'] + } else if (node.type === 'root') { + events = ['Root', CHILDREN, 'RootExit'] + } else { + events = getEvents(node) + } + + return { + eventIndex: 0, + events, + iterator: 0, + node, + visitorIndex: 0, + visitors: [] + } +} + +function cleanMarks(node) { + node[isClean] = false + if (node.nodes) node.nodes.forEach(i => cleanMarks(i)) + return node +} + +let postcss = {} + +class LazyResult { + get content() { + return this.stringify().content + } + + get css() { + return this.stringify().css + } + + get map() { + return this.stringify().map + } + + get messages() { + return this.sync().messages + } + + get opts() { + return this.result.opts + } + + get processor() { + return this.result.processor + } + + get root() { + return this.sync().root + } + + get [Symbol.toStringTag]() { + return 'LazyResult' + } + + constructor(processor, css, opts) { + this.stringified = false + this.processed = false + + let root + if ( + typeof css === 'object' && + css !== null && + (css.type === 'root' || css.type === 'document') + ) { + root = cleanMarks(css) + } else if (css instanceof LazyResult || css instanceof Result) { + root = cleanMarks(css.root) + if (css.map) { + if (typeof opts.map === 'undefined') opts.map = {} + if (!opts.map.inline) opts.map.inline = false + opts.map.prev = css.map + } + } else { + let parser = parse + if (opts.syntax) parser = opts.syntax.parse + if (opts.parser) parser = opts.parser + if (parser.parse) parser = parser.parse + + try { + root = parser(css, opts) + } catch (error) { + this.processed = true + this.error = error + } + + if (root && !root[my]) { + /* c8 ignore next 2 */ + Container.rebuild(root) + } + } + + this.result = new Result(processor, root, opts) + this.helpers = { ...postcss, postcss, result: this.result } + this.plugins = this.processor.plugins.map(plugin => { + if (typeof plugin === 'object' && plugin.prepare) { + return { ...plugin, ...plugin.prepare(this.result) } + } else { + return plugin + } + }) + } + + async() { + if (this.error) return Promise.reject(this.error) + if (this.processed) return Promise.resolve(this.result) + if (!this.processing) { + this.processing = this.runAsync() + } + return this.processing + } + + catch(onRejected) { + return this.async().catch(onRejected) + } + + finally(onFinally) { + return this.async().then(onFinally, onFinally) + } + + getAsyncError() { + throw new Error('Use process(css).then(cb) to work with async plugins') + } + + handleError(error, node) { + let plugin = this.result.lastPlugin + try { + if (node) node.addToError(error) + this.error = error + if (error.name === 'CssSyntaxError' && !error.plugin) { + error.plugin = plugin.postcssPlugin + error.setMessage() + } else if (plugin.postcssVersion) { + if (process.env.NODE_ENV !== 'production') { + let pluginName = plugin.postcssPlugin + let pluginVer = plugin.postcssVersion + let runtimeVer = this.result.processor.version + let a = pluginVer.split('.') + let b = runtimeVer.split('.') + + if (a[0] !== b[0] || parseInt(a[1]) > parseInt(b[1])) { + // eslint-disable-next-line no-console + console.error( + 'Unknown error from PostCSS plugin. Your current PostCSS ' + + 'version is ' + + runtimeVer + + ', but ' + + pluginName + + ' uses ' + + pluginVer + + '. Perhaps this is the source of the error below.' + ) + } + } + } + } catch (err) { + /* c8 ignore next 3 */ + // eslint-disable-next-line no-console + if (console && console.error) console.error(err) + } + return error + } + + prepareVisitors() { + this.listeners = {} + let add = (plugin, type, cb) => { + if (!this.listeners[type]) this.listeners[type] = [] + this.listeners[type].push([plugin, cb]) + } + for (let plugin of this.plugins) { + if (typeof plugin === 'object') { + for (let event in plugin) { + if (!PLUGIN_PROPS[event] && /^[A-Z]/.test(event)) { + throw new Error( + `Unknown event ${event} in ${plugin.postcssPlugin}. ` + + `Try to update PostCSS (${this.processor.version} now).` + ) + } + if (!NOT_VISITORS[event]) { + if (typeof plugin[event] === 'object') { + for (let filter in plugin[event]) { + if (filter === '*') { + add(plugin, event, plugin[event][filter]) + } else { + add( + plugin, + event + '-' + filter.toLowerCase(), + plugin[event][filter] + ) + } + } + } else if (typeof plugin[event] === 'function') { + add(plugin, event, plugin[event]) + } + } + } + } + } + this.hasListener = Object.keys(this.listeners).length > 0 + } + + async runAsync() { + this.plugin = 0 + for (let i = 0; i < this.plugins.length; i++) { + let plugin = this.plugins[i] + let promise = this.runOnRoot(plugin) + if (isPromise(promise)) { + try { + await promise + } catch (error) { + throw this.handleError(error) + } + } + } + + this.prepareVisitors() + if (this.hasListener) { + let root = this.result.root + while (!root[isClean]) { + root[isClean] = true + let stack = [toStack(root)] + while (stack.length > 0) { + let promise = this.visitTick(stack) + if (isPromise(promise)) { + try { + await promise + } catch (e) { + let node = stack[stack.length - 1].node + throw this.handleError(e, node) + } + } + } + } + + if (this.listeners.OnceExit) { + for (let [plugin, visitor] of this.listeners.OnceExit) { + this.result.lastPlugin = plugin + try { + if (root.type === 'document') { + let roots = root.nodes.map(subRoot => + visitor(subRoot, this.helpers) + ) + + await Promise.all(roots) + } else { + await visitor(root, this.helpers) + } + } catch (e) { + throw this.handleError(e) + } + } + } + } + + this.processed = true + return this.stringify() + } + + runOnRoot(plugin) { + this.result.lastPlugin = plugin + try { + if (typeof plugin === 'object' && plugin.Once) { + if (this.result.root.type === 'document') { + let roots = this.result.root.nodes.map(root => + plugin.Once(root, this.helpers) + ) + + if (isPromise(roots[0])) { + return Promise.all(roots) + } + + return roots + } + + return plugin.Once(this.result.root, this.helpers) + } else if (typeof plugin === 'function') { + return plugin(this.result.root, this.result) + } + } catch (error) { + throw this.handleError(error) + } + } + + stringify() { + if (this.error) throw this.error + if (this.stringified) return this.result + this.stringified = true + + this.sync() + + let opts = this.result.opts + let str = stringify + if (opts.syntax) str = opts.syntax.stringify + if (opts.stringifier) str = opts.stringifier + if (str.stringify) str = str.stringify + + let map = new MapGenerator(str, this.result.root, this.result.opts) + let data = map.generate() + this.result.css = data[0] + this.result.map = data[1] + + return this.result + } + + sync() { + if (this.error) throw this.error + if (this.processed) return this.result + this.processed = true + + if (this.processing) { + throw this.getAsyncError() + } + + for (let plugin of this.plugins) { + let promise = this.runOnRoot(plugin) + if (isPromise(promise)) { + throw this.getAsyncError() + } + } + + this.prepareVisitors() + if (this.hasListener) { + let root = this.result.root + while (!root[isClean]) { + root[isClean] = true + this.walkSync(root) + } + if (this.listeners.OnceExit) { + if (root.type === 'document') { + for (let subRoot of root.nodes) { + this.visitSync(this.listeners.OnceExit, subRoot) + } + } else { + this.visitSync(this.listeners.OnceExit, root) + } + } + } + + return this.result + } + + then(onFulfilled, onRejected) { + if (process.env.NODE_ENV !== 'production') { + if (!('from' in this.opts)) { + warnOnce( + 'Without `from` option PostCSS could generate wrong source map ' + + 'and will not find Browserslist config. Set it to CSS file path ' + + 'or to `undefined` to prevent this warning.' + ) + } + } + return this.async().then(onFulfilled, onRejected) + } + + toString() { + return this.css + } + + visitSync(visitors, node) { + for (let [plugin, visitor] of visitors) { + this.result.lastPlugin = plugin + let promise + try { + promise = visitor(node, this.helpers) + } catch (e) { + throw this.handleError(e, node.proxyOf) + } + if (node.type !== 'root' && node.type !== 'document' && !node.parent) { + return true + } + if (isPromise(promise)) { + throw this.getAsyncError() + } + } + } + + visitTick(stack) { + let visit = stack[stack.length - 1] + let { node, visitors } = visit + + if (node.type !== 'root' && node.type !== 'document' && !node.parent) { + stack.pop() + return + } + + if (visitors.length > 0 && visit.visitorIndex < visitors.length) { + let [plugin, visitor] = visitors[visit.visitorIndex] + visit.visitorIndex += 1 + if (visit.visitorIndex === visitors.length) { + visit.visitors = [] + visit.visitorIndex = 0 + } + this.result.lastPlugin = plugin + try { + return visitor(node.toProxy(), this.helpers) + } catch (e) { + throw this.handleError(e, node) + } + } + + if (visit.iterator !== 0) { + let iterator = visit.iterator + let child + while ((child = node.nodes[node.indexes[iterator]])) { + node.indexes[iterator] += 1 + if (!child[isClean]) { + child[isClean] = true + stack.push(toStack(child)) + return + } + } + visit.iterator = 0 + delete node.indexes[iterator] + } + + let events = visit.events + while (visit.eventIndex < events.length) { + let event = events[visit.eventIndex] + visit.eventIndex += 1 + if (event === CHILDREN) { + if (node.nodes && node.nodes.length) { + node[isClean] = true + visit.iterator = node.getIterator() + } + return + } else if (this.listeners[event]) { + visit.visitors = this.listeners[event] + return + } + } + stack.pop() + } + + walkSync(node) { + node[isClean] = true + let events = getEvents(node) + for (let event of events) { + if (event === CHILDREN) { + if (node.nodes) { + node.each(child => { + if (!child[isClean]) this.walkSync(child) + }) + } + } else { + let visitors = this.listeners[event] + if (visitors) { + if (this.visitSync(visitors, node.toProxy())) return + } + } + } + } + + warnings() { + return this.sync().warnings() + } +} + +LazyResult.registerPostcss = dependant => { + postcss = dependant +} + +module.exports = LazyResult +LazyResult.default = LazyResult + +Root.registerLazyResult(LazyResult) +Document.registerLazyResult(LazyResult) diff --git a/node_modules/postcss/lib/list.d.ts b/node_modules/postcss/lib/list.d.ts new file mode 100644 index 0000000..e262ad3 --- /dev/null +++ b/node_modules/postcss/lib/list.d.ts @@ -0,0 +1,60 @@ +declare namespace list { + type List = { + /** + * Safely splits comma-separated values (such as those for `transition-*` + * and `background` properties). + * + * ```js + * Once (root, { list }) { + * list.comma('black, linear-gradient(white, black)') + * //=> ['black', 'linear-gradient(white, black)'] + * } + * ``` + * + * @param str Comma-separated values. + * @return Split values. + */ + comma(str: string): string[] + + default: List + + /** + * Safely splits space-separated values (such as those for `background`, + * `border-radius`, and other shorthand properties). + * + * ```js + * Once (root, { list }) { + * list.space('1px calc(10% + 1px)') //=> ['1px', 'calc(10% + 1px)'] + * } + * ``` + * + * @param str Space-separated values. + * @return Split values. + */ + space(str: string): string[] + + /** + * Safely splits values. + * + * ```js + * Once (root, { list }) { + * list.split('1px calc(10% + 1px)', [' ', '\n', '\t']) //=> ['1px', 'calc(10% + 1px)'] + * } + * ``` + * + * @param string separated values. + * @param separators array of separators. + * @param last boolean indicator. + * @return Split values. + */ + split( + string: string, + separators: readonly string[], + last: boolean + ): string[] + } +} + +declare const list: list.List + +export = list diff --git a/node_modules/postcss/lib/list.js b/node_modules/postcss/lib/list.js new file mode 100644 index 0000000..1b31f98 --- /dev/null +++ b/node_modules/postcss/lib/list.js @@ -0,0 +1,58 @@ +'use strict' + +let list = { + comma(string) { + return list.split(string, [','], true) + }, + + space(string) { + let spaces = [' ', '\n', '\t'] + return list.split(string, spaces) + }, + + split(string, separators, last) { + let array = [] + let current = '' + let split = false + + let func = 0 + let inQuote = false + let prevQuote = '' + let escape = false + + for (let letter of string) { + if (escape) { + escape = false + } else if (letter === '\\') { + escape = true + } else if (inQuote) { + if (letter === prevQuote) { + inQuote = false + } + } else if (letter === '"' || letter === "'") { + inQuote = true + prevQuote = letter + } else if (letter === '(') { + func += 1 + } else if (letter === ')') { + if (func > 0) func -= 1 + } else if (func === 0) { + if (separators.includes(letter)) split = true + } + + if (split) { + if (current !== '') array.push(current.trim()) + current = '' + split = false + } else { + current += letter + } + } + + if (last || current !== '') array.push(current.trim()) + return array + } +} + +module.exports = list +list.default = list diff --git a/node_modules/postcss/lib/map-generator.js b/node_modules/postcss/lib/map-generator.js new file mode 100644 index 0000000..89069d3 --- /dev/null +++ b/node_modules/postcss/lib/map-generator.js @@ -0,0 +1,368 @@ +'use strict' + +let { dirname, relative, resolve, sep } = require('path') +let { SourceMapConsumer, SourceMapGenerator } = require('source-map-js') +let { pathToFileURL } = require('url') + +let Input = require('./input') + +let sourceMapAvailable = Boolean(SourceMapConsumer && SourceMapGenerator) +let pathAvailable = Boolean(dirname && resolve && relative && sep) + +class MapGenerator { + constructor(stringify, root, opts, cssString) { + this.stringify = stringify + this.mapOpts = opts.map || {} + this.root = root + this.opts = opts + this.css = cssString + this.originalCSS = cssString + this.usesFileUrls = !this.mapOpts.from && this.mapOpts.absolute + + this.memoizedFileURLs = new Map() + this.memoizedPaths = new Map() + this.memoizedURLs = new Map() + } + + addAnnotation() { + let content + + if (this.isInline()) { + content = + 'data:application/json;base64,' + this.toBase64(this.map.toString()) + } else if (typeof this.mapOpts.annotation === 'string') { + content = this.mapOpts.annotation + } else if (typeof this.mapOpts.annotation === 'function') { + content = this.mapOpts.annotation(this.opts.to, this.root) + } else { + content = this.outputFile() + '.map' + } + let eol = '\n' + if (this.css.includes('\r\n')) eol = '\r\n' + + this.css += eol + '/*# sourceMappingURL=' + content + ' */' + } + + applyPrevMaps() { + for (let prev of this.previous()) { + let from = this.toUrl(this.path(prev.file)) + let root = prev.root || dirname(prev.file) + let map + + if (this.mapOpts.sourcesContent === false) { + map = new SourceMapConsumer(prev.text) + if (map.sourcesContent) { + map.sourcesContent = null + } + } else { + map = prev.consumer() + } + + this.map.applySourceMap(map, from, this.toUrl(this.path(root))) + } + } + + clearAnnotation() { + if (this.mapOpts.annotation === false) return + + if (this.root) { + let node + for (let i = this.root.nodes.length - 1; i >= 0; i--) { + node = this.root.nodes[i] + if (node.type !== 'comment') continue + if (node.text.startsWith('# sourceMappingURL=')) { + this.root.removeChild(i) + } + } + } else if (this.css) { + this.css = this.css.replace(/\n*\/\*#[\S\s]*?\*\/$/gm, '') + } + } + + generate() { + this.clearAnnotation() + if (pathAvailable && sourceMapAvailable && this.isMap()) { + return this.generateMap() + } else { + let result = '' + this.stringify(this.root, i => { + result += i + }) + return [result] + } + } + + generateMap() { + if (this.root) { + this.generateString() + } else if (this.previous().length === 1) { + let prev = this.previous()[0].consumer() + prev.file = this.outputFile() + this.map = SourceMapGenerator.fromSourceMap(prev, { + ignoreInvalidMapping: true + }) + } else { + this.map = new SourceMapGenerator({ + file: this.outputFile(), + ignoreInvalidMapping: true + }) + this.map.addMapping({ + generated: { column: 0, line: 1 }, + original: { column: 0, line: 1 }, + source: this.opts.from + ? this.toUrl(this.path(this.opts.from)) + : '' + }) + } + + if (this.isSourcesContent()) this.setSourcesContent() + if (this.root && this.previous().length > 0) this.applyPrevMaps() + if (this.isAnnotation()) this.addAnnotation() + + if (this.isInline()) { + return [this.css] + } else { + return [this.css, this.map] + } + } + + generateString() { + this.css = '' + this.map = new SourceMapGenerator({ + file: this.outputFile(), + ignoreInvalidMapping: true + }) + + let line = 1 + let column = 1 + + let noSource = '' + let mapping = { + generated: { column: 0, line: 0 }, + original: { column: 0, line: 0 }, + source: '' + } + + let last, lines + this.stringify(this.root, (str, node, type) => { + this.css += str + + if (node && type !== 'end') { + mapping.generated.line = line + mapping.generated.column = column - 1 + if (node.source && node.source.start) { + mapping.source = this.sourcePath(node) + mapping.original.line = node.source.start.line + mapping.original.column = node.source.start.column - 1 + this.map.addMapping(mapping) + } else { + mapping.source = noSource + mapping.original.line = 1 + mapping.original.column = 0 + this.map.addMapping(mapping) + } + } + + lines = str.match(/\n/g) + if (lines) { + line += lines.length + last = str.lastIndexOf('\n') + column = str.length - last + } else { + column += str.length + } + + if (node && type !== 'start') { + let p = node.parent || { raws: {} } + let childless = + node.type === 'decl' || (node.type === 'atrule' && !node.nodes) + if (!childless || node !== p.last || p.raws.semicolon) { + if (node.source && node.source.end) { + mapping.source = this.sourcePath(node) + mapping.original.line = node.source.end.line + mapping.original.column = node.source.end.column - 1 + mapping.generated.line = line + mapping.generated.column = column - 2 + this.map.addMapping(mapping) + } else { + mapping.source = noSource + mapping.original.line = 1 + mapping.original.column = 0 + mapping.generated.line = line + mapping.generated.column = column - 1 + this.map.addMapping(mapping) + } + } + } + }) + } + + isAnnotation() { + if (this.isInline()) { + return true + } + if (typeof this.mapOpts.annotation !== 'undefined') { + return this.mapOpts.annotation + } + if (this.previous().length) { + return this.previous().some(i => i.annotation) + } + return true + } + + isInline() { + if (typeof this.mapOpts.inline !== 'undefined') { + return this.mapOpts.inline + } + + let annotation = this.mapOpts.annotation + if (typeof annotation !== 'undefined' && annotation !== true) { + return false + } + + if (this.previous().length) { + return this.previous().some(i => i.inline) + } + return true + } + + isMap() { + if (typeof this.opts.map !== 'undefined') { + return !!this.opts.map + } + return this.previous().length > 0 + } + + isSourcesContent() { + if (typeof this.mapOpts.sourcesContent !== 'undefined') { + return this.mapOpts.sourcesContent + } + if (this.previous().length) { + return this.previous().some(i => i.withContent()) + } + return true + } + + outputFile() { + if (this.opts.to) { + return this.path(this.opts.to) + } else if (this.opts.from) { + return this.path(this.opts.from) + } else { + return 'to.css' + } + } + + path(file) { + if (this.mapOpts.absolute) return file + if (file.charCodeAt(0) === 60 /* `<` */) return file + if (/^\w+:\/\//.test(file)) return file + let cached = this.memoizedPaths.get(file) + if (cached) return cached + + let from = this.opts.to ? dirname(this.opts.to) : '.' + + if (typeof this.mapOpts.annotation === 'string') { + from = dirname(resolve(from, this.mapOpts.annotation)) + } + + let path = relative(from, file) + this.memoizedPaths.set(file, path) + + return path + } + + previous() { + if (!this.previousMaps) { + this.previousMaps = [] + if (this.root) { + this.root.walk(node => { + if (node.source && node.source.input.map) { + let map = node.source.input.map + if (!this.previousMaps.includes(map)) { + this.previousMaps.push(map) + } + } + }) + } else { + let input = new Input(this.originalCSS, this.opts) + if (input.map) this.previousMaps.push(input.map) + } + } + + return this.previousMaps + } + + setSourcesContent() { + let already = {} + if (this.root) { + this.root.walk(node => { + if (node.source) { + let from = node.source.input.from + if (from && !already[from]) { + already[from] = true + let fromUrl = this.usesFileUrls + ? this.toFileUrl(from) + : this.toUrl(this.path(from)) + this.map.setSourceContent(fromUrl, node.source.input.css) + } + } + }) + } else if (this.css) { + let from = this.opts.from + ? this.toUrl(this.path(this.opts.from)) + : '' + this.map.setSourceContent(from, this.css) + } + } + + sourcePath(node) { + if (this.mapOpts.from) { + return this.toUrl(this.mapOpts.from) + } else if (this.usesFileUrls) { + return this.toFileUrl(node.source.input.from) + } else { + return this.toUrl(this.path(node.source.input.from)) + } + } + + toBase64(str) { + if (Buffer) { + return Buffer.from(str).toString('base64') + } else { + return window.btoa(unescape(encodeURIComponent(str))) + } + } + + toFileUrl(path) { + let cached = this.memoizedFileURLs.get(path) + if (cached) return cached + + if (pathToFileURL) { + let fileURL = pathToFileURL(path).toString() + this.memoizedFileURLs.set(path, fileURL) + + return fileURL + } else { + throw new Error( + '`map.absolute` option is not available in this PostCSS build' + ) + } + } + + toUrl(path) { + let cached = this.memoizedURLs.get(path) + if (cached) return cached + + if (sep === '\\') { + path = path.replace(/\\/g, '/') + } + + let url = encodeURI(path).replace(/[#?]/g, encodeURIComponent) + this.memoizedURLs.set(path, url) + + return url + } +} + +module.exports = MapGenerator diff --git a/node_modules/postcss/lib/no-work-result.d.ts b/node_modules/postcss/lib/no-work-result.d.ts new file mode 100644 index 0000000..094f30a --- /dev/null +++ b/node_modules/postcss/lib/no-work-result.d.ts @@ -0,0 +1,46 @@ +import LazyResult from './lazy-result.js' +import { SourceMap } from './postcss.js' +import Processor from './processor.js' +import Result, { Message, ResultOptions } from './result.js' +import Root from './root.js' +import Warning from './warning.js' + +declare namespace NoWorkResult { + // eslint-disable-next-line @typescript-eslint/no-use-before-define + export { NoWorkResult_ as default } +} + +/** + * A Promise proxy for the result of PostCSS transformations. + * This lazy result instance doesn't parse css unless `NoWorkResult#root` or `Result#root` + * are accessed. See the example below for details. + * A `NoWork` instance is returned by `Processor#process` ONLY when no plugins defined. + * + * ```js + * const noWorkResult = postcss().process(css) // No plugins are defined. + * // CSS is not parsed + * let root = noWorkResult.root // now css is parsed because we accessed the root + * ``` + */ +declare class NoWorkResult_ implements LazyResult { + catch: Promise>['catch'] + finally: Promise>['finally'] + then: Promise>['then'] + get content(): string + get css(): string + get map(): SourceMap + get messages(): Message[] + get opts(): ResultOptions + get processor(): Processor + get root(): Root + get [Symbol.toStringTag](): string + constructor(processor: Processor, css: string, opts: ResultOptions) + async(): Promise> + sync(): Result + toString(): string + warnings(): Warning[] +} + +declare class NoWorkResult extends NoWorkResult_ {} + +export = NoWorkResult diff --git a/node_modules/postcss/lib/no-work-result.js b/node_modules/postcss/lib/no-work-result.js new file mode 100644 index 0000000..dd46182 --- /dev/null +++ b/node_modules/postcss/lib/no-work-result.js @@ -0,0 +1,138 @@ +'use strict' + +let MapGenerator = require('./map-generator') +let parse = require('./parse') +const Result = require('./result') +let stringify = require('./stringify') +let warnOnce = require('./warn-once') + +class NoWorkResult { + get content() { + return this.result.css + } + + get css() { + return this.result.css + } + + get map() { + return this.result.map + } + + get messages() { + return [] + } + + get opts() { + return this.result.opts + } + + get processor() { + return this.result.processor + } + + get root() { + if (this._root) { + return this._root + } + + let root + let parser = parse + + try { + root = parser(this._css, this._opts) + } catch (error) { + this.error = error + } + + if (this.error) { + throw this.error + } else { + this._root = root + return root + } + } + + get [Symbol.toStringTag]() { + return 'NoWorkResult' + } + + constructor(processor, css, opts) { + css = css.toString() + this.stringified = false + + this._processor = processor + this._css = css + this._opts = opts + this._map = undefined + let root + + let str = stringify + this.result = new Result(this._processor, root, this._opts) + this.result.css = css + + let self = this + Object.defineProperty(this.result, 'root', { + get() { + return self.root + } + }) + + let map = new MapGenerator(str, root, this._opts, css) + if (map.isMap()) { + let [generatedCSS, generatedMap] = map.generate() + if (generatedCSS) { + this.result.css = generatedCSS + } + if (generatedMap) { + this.result.map = generatedMap + } + } else { + map.clearAnnotation() + this.result.css = map.css + } + } + + async() { + if (this.error) return Promise.reject(this.error) + return Promise.resolve(this.result) + } + + catch(onRejected) { + return this.async().catch(onRejected) + } + + finally(onFinally) { + return this.async().then(onFinally, onFinally) + } + + sync() { + if (this.error) throw this.error + return this.result + } + + then(onFulfilled, onRejected) { + if (process.env.NODE_ENV !== 'production') { + if (!('from' in this._opts)) { + warnOnce( + 'Without `from` option PostCSS could generate wrong source map ' + + 'and will not find Browserslist config. Set it to CSS file path ' + + 'or to `undefined` to prevent this warning.' + ) + } + } + + return this.async().then(onFulfilled, onRejected) + } + + toString() { + return this._css + } + + warnings() { + return [] + } +} + +module.exports = NoWorkResult +NoWorkResult.default = NoWorkResult diff --git a/node_modules/postcss/lib/node.d.ts b/node_modules/postcss/lib/node.d.ts new file mode 100644 index 0000000..a09fe4d --- /dev/null +++ b/node_modules/postcss/lib/node.d.ts @@ -0,0 +1,556 @@ +import AtRule = require('./at-rule.js') +import { AtRuleProps } from './at-rule.js' +import Comment, { CommentProps } from './comment.js' +import Container, { NewChild } from './container.js' +import CssSyntaxError from './css-syntax-error.js' +import Declaration, { DeclarationProps } from './declaration.js' +import Document from './document.js' +import Input from './input.js' +import { Stringifier, Syntax } from './postcss.js' +import Result from './result.js' +import Root from './root.js' +import Rule, { RuleProps } from './rule.js' +import Warning, { WarningOptions } from './warning.js' + +declare namespace Node { + export type ChildNode = AtRule.default | Comment | Declaration | Rule + + export type AnyNode = + | AtRule.default + | Comment + | Declaration + | Document + | Root + | Rule + + export type ChildProps = + | AtRuleProps + | CommentProps + | DeclarationProps + | RuleProps + + export interface Position { + /** + * Source line in file. In contrast to `offset` it starts from 1. + */ + column: number + + /** + * Source column in file. + */ + line: number + + /** + * Source offset in file. It starts from 0. + */ + offset: number + } + + export interface Range { + /** + * End position, exclusive. + */ + end: Position + + /** + * Start position, inclusive. + */ + start: Position + } + + /** + * Source represents an interface for the {@link Node.source} property. + */ + export interface Source { + /** + * The inclusive ending position for the source + * code of a node. + * + * However, `end.offset` of a non `Root` node is the exclusive position. + * See https://github.com/postcss/postcss/pull/1879 for details. + * + * ```js + * const root = postcss.parse('a { color: black }') + * const a = root.first + * const color = a.first + * + * // The offset of `Root` node is the inclusive position + * css.source.end // { line: 1, column: 19, offset: 18 } + * + * // The offset of non `Root` node is the exclusive position + * a.source.end // { line: 1, column: 18, offset: 18 } + * color.source.end // { line: 1, column: 16, offset: 16 } + * ``` + */ + end?: Position + + /** + * The source file from where a node has originated. + */ + input: Input + + /** + * The inclusive starting position for the source + * code of a node. + */ + start?: Position + } + + /** + * Interface represents an interface for an object received + * as parameter by Node class constructor. + */ + export interface NodeProps { + source?: Source + } + + export interface NodeErrorOptions { + /** + * An ending index inside a node's string that should be highlighted as + * source of error. + */ + endIndex?: number + /** + * An index inside a node's string that should be highlighted as source + * of error. + */ + index?: number + /** + * Plugin name that created this error. PostCSS will set it automatically. + */ + plugin?: string + /** + * A word inside a node's string, that should be highlighted as source + * of error. + */ + word?: string + } + + // eslint-disable-next-line @typescript-eslint/no-shadow + class Node extends Node_ {} + export { Node as default } +} + +/** + * It represents an abstract class that handles common + * methods for other CSS abstract syntax tree nodes. + * + * Any node that represents CSS selector or value should + * not extend the `Node` class. + */ +declare abstract class Node_ { + /** + * It represents parent of the current node. + * + * ```js + * root.nodes[0].parent === root //=> true + * ``` + */ + parent: Container | Document | undefined + + /** + * It represents unnecessary whitespace and characters present + * in the css source code. + * + * Information to generate byte-to-byte equal node string as it was + * in the origin input. + * + * The properties of the raws object are decided by parser, + * the default parser uses the following properties: + * + * * `before`: the space symbols before the node. It also stores `*` + * and `_` symbols before the declaration (IE hack). + * * `after`: the space symbols after the last child of the node + * to the end of the node. + * * `between`: the symbols between the property and value + * for declarations, selector and `{` for rules, or last parameter + * and `{` for at-rules. + * * `semicolon`: contains true if the last child has + * an (optional) semicolon. + * * `afterName`: the space between the at-rule name and its parameters. + * * `left`: the space symbols between `/*` and the comment’s text. + * * `right`: the space symbols between the comment’s text + * and */. + * - `important`: the content of the important statement, + * if it is not just `!important`. + * + * PostCSS filters out the comments inside selectors, declaration values + * and at-rule parameters but it stores the origin content in raws. + * + * ```js + * const root = postcss.parse('a {\n color:black\n}') + * root.first.first.raws //=> { before: '\n ', between: ':' } + * ``` + */ + raws: any + + /** + * It represents information related to origin of a node and is required + * for generating source maps. + * + * The nodes that are created manually using the public APIs + * provided by PostCSS will have `source` undefined and + * will be absent in the source map. + * + * For this reason, the plugin developer should consider + * duplicating nodes as the duplicate node will have the + * same source as the original node by default or assign + * source to a node created manually. + * + * ```js + * decl.source.input.from //=> '/home/ai/source.css' + * decl.source.start //=> { line: 10, column: 2 } + * decl.source.end //=> { line: 10, column: 12 } + * ``` + * + * ```js + * // Incorrect method, source not specified! + * const prefixed = postcss.decl({ + * prop: '-moz-' + decl.prop, + * value: decl.value + * }) + * + * // Correct method, source is inherited when duplicating. + * const prefixed = decl.clone({ + * prop: '-moz-' + decl.prop + * }) + * ``` + * + * ```js + * if (atrule.name === 'add-link') { + * const rule = postcss.rule({ + * selector: 'a', + * source: atrule.source + * }) + * + * atrule.parent.insertBefore(atrule, rule) + * } + * ``` + */ + source?: Node.Source + + /** + * It represents type of a node in + * an abstract syntax tree. + * + * A type of node helps in identification of a node + * and perform operation based on it's type. + * + * ```js + * const declaration = new Declaration({ + * prop: 'color', + * value: 'black' + * }) + * + * declaration.type //=> 'decl' + * ``` + */ + type: string + + constructor(defaults?: object) + + /** + * Insert new node after current node to current node’s parent. + * + * Just alias for `node.parent.insertAfter(node, add)`. + * + * ```js + * decl.after('color: black') + * ``` + * + * @param newNode New node. + * @return This node for methods chain. + */ + after( + newNode: Node | Node.ChildProps | readonly Node[] | string | undefined + ): this + + /** + * It assigns properties to an existing node instance. + * + * ```js + * decl.assign({ prop: 'word-wrap', value: 'break-word' }) + * ``` + * + * @param overrides New properties to override the node. + * + * @return `this` for method chaining. + */ + assign(overrides: object): this + + /** + * Insert new node before current node to current node’s parent. + * + * Just alias for `node.parent.insertBefore(node, add)`. + * + * ```js + * decl.before('content: ""') + * ``` + * + * @param newNode New node. + * @return This node for methods chain. + */ + before( + newNode: Node | Node.ChildProps | readonly Node[] | string | undefined + ): this + + /** + * Clear the code style properties for the node and its children. + * + * ```js + * node.raws.before //=> ' ' + * node.cleanRaws() + * node.raws.before //=> undefined + * ``` + * + * @param keepBetween Keep the `raws.between` symbols. + */ + cleanRaws(keepBetween?: boolean): void + + /** + * It creates clone of an existing node, which includes all the properties + * and their values, that includes `raws` but not `type`. + * + * ```js + * decl.raws.before //=> "\n " + * const cloned = decl.clone({ prop: '-moz-' + decl.prop }) + * cloned.raws.before //=> "\n " + * cloned.toString() //=> -moz-transform: scale(0) + * ``` + * + * @param overrides New properties to override in the clone. + * + * @return Duplicate of the node instance. + */ + clone(overrides?: object): this + + /** + * Shortcut to clone the node and insert the resulting cloned node + * after the current node. + * + * @param overrides New properties to override in the clone. + * @return New node. + */ + cloneAfter(overrides?: object): this + + /** + * Shortcut to clone the node and insert the resulting cloned node + * before the current node. + * + * ```js + * decl.cloneBefore({ prop: '-moz-' + decl.prop }) + * ``` + * + * @param overrides Mew properties to override in the clone. + * + * @return New node + */ + cloneBefore(overrides?: object): this + + /** + * It creates an instance of the class `CssSyntaxError` and parameters passed + * to this method are assigned to the error instance. + * + * The error instance will have description for the + * error, original position of the node in the + * source, showing line and column number. + * + * If any previous map is present, it would be used + * to get original position of the source. + * + * The Previous Map here is referred to the source map + * generated by previous compilation, example: Less, + * Stylus and Sass. + * + * This method returns the error instance instead of + * throwing it. + * + * ```js + * if (!variables[name]) { + * throw decl.error(`Unknown variable ${name}`, { word: name }) + * // CssSyntaxError: postcss-vars:a.sass:4:3: Unknown variable $black + * // color: $black + * // a + * // ^ + * // background: white + * } + * ``` + * + * @param message Description for the error instance. + * @param options Options for the error instance. + * + * @return Error instance is returned. + */ + error(message: string, options?: Node.NodeErrorOptions): CssSyntaxError + + /** + * Returns the next child of the node’s parent. + * Returns `undefined` if the current node is the last child. + * + * ```js + * if (comment.text === 'delete next') { + * const next = comment.next() + * if (next) { + * next.remove() + * } + * } + * ``` + * + * @return Next node. + */ + next(): Node.ChildNode | undefined + + /** + * Get the position for a word or an index inside the node. + * + * @param opts Options. + * @return Position. + */ + positionBy(opts?: Pick): Node.Position + + /** + * Convert string index to line/column. + * + * @param index The symbol number in the node’s string. + * @return Symbol position in file. + */ + positionInside(index: number): Node.Position + + /** + * Returns the previous child of the node’s parent. + * Returns `undefined` if the current node is the first child. + * + * ```js + * const annotation = decl.prev() + * if (annotation.type === 'comment') { + * readAnnotation(annotation.text) + * } + * ``` + * + * @return Previous node. + */ + prev(): Node.ChildNode | undefined + + /** + * Get the range for a word or start and end index inside the node. + * The start index is inclusive; the end index is exclusive. + * + * @param opts Options. + * @return Range. + */ + rangeBy( + opts?: Pick + ): Node.Range + + /** + * Returns a `raws` value. If the node is missing + * the code style property (because the node was manually built or cloned), + * PostCSS will try to autodetect the code style property by looking + * at other nodes in the tree. + * + * ```js + * const root = postcss.parse('a { background: white }') + * root.nodes[0].append({ prop: 'color', value: 'black' }) + * root.nodes[0].nodes[1].raws.before //=> undefined + * root.nodes[0].nodes[1].raw('before') //=> ' ' + * ``` + * + * @param prop Name of code style property. + * @param defaultType Name of default value, it can be missed + * if the value is the same as prop. + * @return {string} Code style value. + */ + raw(prop: string, defaultType?: string): string + + /** + * It removes the node from its parent and deletes its parent property. + * + * ```js + * if (decl.prop.match(/^-webkit-/)) { + * decl.remove() + * } + * ``` + * + * @return `this` for method chaining. + */ + remove(): this + + /** + * Inserts node(s) before the current node and removes the current node. + * + * ```js + * AtRule: { + * mixin: atrule => { + * atrule.replaceWith(mixinRules[atrule.params]) + * } + * } + * ``` + * + * @param nodes Mode(s) to replace current one. + * @return Current node to methods chain. + */ + replaceWith(...nodes: NewChild[]): this + + /** + * Finds the Root instance of the node’s tree. + * + * ```js + * root.nodes[0].nodes[0].root() === root + * ``` + * + * @return Root parent. + */ + root(): Root + + /** + * Fix circular links on `JSON.stringify()`. + * + * @return Cleaned object. + */ + toJSON(): object + + /** + * It compiles the node to browser readable cascading style sheets string + * depending on it's type. + * + * ```js + * new Rule({ selector: 'a' }).toString() //=> "a {}" + * ``` + * + * @param stringifier A syntax to use in string generation. + * @return CSS string of this node. + */ + toString(stringifier?: Stringifier | Syntax): string + + /** + * It is a wrapper for {@link Result#warn}, providing convenient + * way of generating warnings. + * + * ```js + * Declaration: { + * bad: (decl, { result }) => { + * decl.warn(result, 'Deprecated property: bad') + * } + * } + * ``` + * + * @param result The `Result` instance that will receive the warning. + * @param message Description for the warning. + * @param options Options for the warning. + * + * @return `Warning` instance is returned + */ + warn(result: Result, message: string, options?: WarningOptions): Warning + + /** + * If this node isn't already dirty, marks it and its ancestors as such. This + * indicates to the LazyResult processor that the {@link Root} has been + * modified by the current plugin and may need to be processed again by other + * plugins. + */ + protected markDirty(): void +} + +declare class Node extends Node_ {} + +export = Node diff --git a/node_modules/postcss/lib/node.js b/node_modules/postcss/lib/node.js new file mode 100644 index 0000000..b403b71 --- /dev/null +++ b/node_modules/postcss/lib/node.js @@ -0,0 +1,449 @@ +'use strict' + +let CssSyntaxError = require('./css-syntax-error') +let Stringifier = require('./stringifier') +let stringify = require('./stringify') +let { isClean, my } = require('./symbols') + +function cloneNode(obj, parent) { + let cloned = new obj.constructor() + + for (let i in obj) { + if (!Object.prototype.hasOwnProperty.call(obj, i)) { + /* c8 ignore next 2 */ + continue + } + if (i === 'proxyCache') continue + let value = obj[i] + let type = typeof value + + if (i === 'parent' && type === 'object') { + if (parent) cloned[i] = parent + } else if (i === 'source') { + cloned[i] = value + } else if (Array.isArray(value)) { + cloned[i] = value.map(j => cloneNode(j, cloned)) + } else { + if (type === 'object' && value !== null) value = cloneNode(value) + cloned[i] = value + } + } + + return cloned +} + +function sourceOffset(inputCSS, position) { + // Not all custom syntaxes support `offset` in `source.start` and `source.end` + if (position && typeof position.offset !== 'undefined') { + return position.offset + } + + let column = 1 + let line = 1 + let offset = 0 + + for (let i = 0; i < inputCSS.length; i++) { + if (line === position.line && column === position.column) { + offset = i + break + } + + if (inputCSS[i] === '\n') { + column = 1 + line += 1 + } else { + column += 1 + } + } + + return offset +} + +class Node { + get proxyOf() { + return this + } + + constructor(defaults = {}) { + this.raws = {} + this[isClean] = false + this[my] = true + + for (let name in defaults) { + if (name === 'nodes') { + this.nodes = [] + for (let node of defaults[name]) { + if (typeof node.clone === 'function') { + this.append(node.clone()) + } else { + this.append(node) + } + } + } else { + this[name] = defaults[name] + } + } + } + + addToError(error) { + error.postcssNode = this + if (error.stack && this.source && /\n\s{4}at /.test(error.stack)) { + let s = this.source + error.stack = error.stack.replace( + /\n\s{4}at /, + `$&${s.input.from}:${s.start.line}:${s.start.column}$&` + ) + } + return error + } + + after(add) { + this.parent.insertAfter(this, add) + return this + } + + assign(overrides = {}) { + for (let name in overrides) { + this[name] = overrides[name] + } + return this + } + + before(add) { + this.parent.insertBefore(this, add) + return this + } + + cleanRaws(keepBetween) { + delete this.raws.before + delete this.raws.after + if (!keepBetween) delete this.raws.between + } + + clone(overrides = {}) { + let cloned = cloneNode(this) + for (let name in overrides) { + cloned[name] = overrides[name] + } + return cloned + } + + cloneAfter(overrides = {}) { + let cloned = this.clone(overrides) + this.parent.insertAfter(this, cloned) + return cloned + } + + cloneBefore(overrides = {}) { + let cloned = this.clone(overrides) + this.parent.insertBefore(this, cloned) + return cloned + } + + error(message, opts = {}) { + if (this.source) { + let { end, start } = this.rangeBy(opts) + return this.source.input.error( + message, + { column: start.column, line: start.line }, + { column: end.column, line: end.line }, + opts + ) + } + return new CssSyntaxError(message) + } + + getProxyProcessor() { + return { + get(node, prop) { + if (prop === 'proxyOf') { + return node + } else if (prop === 'root') { + return () => node.root().toProxy() + } else { + return node[prop] + } + }, + + set(node, prop, value) { + if (node[prop] === value) return true + node[prop] = value + if ( + prop === 'prop' || + prop === 'value' || + prop === 'name' || + prop === 'params' || + prop === 'important' || + /* c8 ignore next */ + prop === 'text' + ) { + node.markDirty() + } + return true + } + } + } + + /* c8 ignore next 3 */ + markClean() { + this[isClean] = true + } + + markDirty() { + if (this[isClean]) { + this[isClean] = false + let next = this + while ((next = next.parent)) { + next[isClean] = false + } + } + } + + next() { + if (!this.parent) return undefined + let index = this.parent.index(this) + return this.parent.nodes[index + 1] + } + + positionBy(opts = {}) { + let pos = this.source.start + if (opts.index) { + pos = this.positionInside(opts.index) + } else if (opts.word) { + let inputString = + 'document' in this.source.input + ? this.source.input.document + : this.source.input.css + let stringRepresentation = inputString.slice( + sourceOffset(inputString, this.source.start), + sourceOffset(inputString, this.source.end) + ) + let index = stringRepresentation.indexOf(opts.word) + if (index !== -1) pos = this.positionInside(index) + } + return pos + } + + positionInside(index) { + let column = this.source.start.column + let line = this.source.start.line + let inputString = + 'document' in this.source.input + ? this.source.input.document + : this.source.input.css + let offset = sourceOffset(inputString, this.source.start) + let end = offset + index + + for (let i = offset; i < end; i++) { + if (inputString[i] === '\n') { + column = 1 + line += 1 + } else { + column += 1 + } + } + + return { column, line, offset: end } + } + + prev() { + if (!this.parent) return undefined + let index = this.parent.index(this) + return this.parent.nodes[index - 1] + } + + rangeBy(opts = {}) { + let inputString = + 'document' in this.source.input + ? this.source.input.document + : this.source.input.css + let start = { + column: this.source.start.column, + line: this.source.start.line, + offset: sourceOffset(inputString, this.source.start) + } + let end = this.source.end + ? { + column: this.source.end.column + 1, + line: this.source.end.line, + offset: + typeof this.source.end.offset === 'number' + ? // `source.end.offset` is exclusive, so we don't need to add 1 + this.source.end.offset + : // Since line/column in this.source.end is inclusive, + // the `sourceOffset(... , this.source.end)` returns an inclusive offset. + // So, we add 1 to convert it to exclusive. + sourceOffset(inputString, this.source.end) + 1 + } + : { + column: start.column + 1, + line: start.line, + offset: start.offset + 1 + } + + if (opts.word) { + let stringRepresentation = inputString.slice( + sourceOffset(inputString, this.source.start), + sourceOffset(inputString, this.source.end) + ) + let index = stringRepresentation.indexOf(opts.word) + if (index !== -1) { + start = this.positionInside(index) + end = this.positionInside(index + opts.word.length) + } + } else { + if (opts.start) { + start = { + column: opts.start.column, + line: opts.start.line, + offset: sourceOffset(inputString, opts.start) + } + } else if (opts.index) { + start = this.positionInside(opts.index) + } + + if (opts.end) { + end = { + column: opts.end.column, + line: opts.end.line, + offset: sourceOffset(inputString, opts.end) + } + } else if (typeof opts.endIndex === 'number') { + end = this.positionInside(opts.endIndex) + } else if (opts.index) { + end = this.positionInside(opts.index + 1) + } + } + + if ( + end.line < start.line || + (end.line === start.line && end.column <= start.column) + ) { + end = { + column: start.column + 1, + line: start.line, + offset: start.offset + 1 + } + } + + return { end, start } + } + + raw(prop, defaultType) { + let str = new Stringifier() + return str.raw(this, prop, defaultType) + } + + remove() { + if (this.parent) { + this.parent.removeChild(this) + } + this.parent = undefined + return this + } + + replaceWith(...nodes) { + if (this.parent) { + let bookmark = this + let foundSelf = false + for (let node of nodes) { + if (node === this) { + foundSelf = true + } else if (foundSelf) { + this.parent.insertAfter(bookmark, node) + bookmark = node + } else { + this.parent.insertBefore(bookmark, node) + } + } + + if (!foundSelf) { + this.remove() + } + } + + return this + } + + root() { + let result = this + while (result.parent && result.parent.type !== 'document') { + result = result.parent + } + return result + } + + toJSON(_, inputs) { + let fixed = {} + let emitInputs = inputs == null + inputs = inputs || new Map() + let inputsNextIndex = 0 + + for (let name in this) { + if (!Object.prototype.hasOwnProperty.call(this, name)) { + /* c8 ignore next 2 */ + continue + } + if (name === 'parent' || name === 'proxyCache') continue + let value = this[name] + + if (Array.isArray(value)) { + fixed[name] = value.map(i => { + if (typeof i === 'object' && i.toJSON) { + return i.toJSON(null, inputs) + } else { + return i + } + }) + } else if (typeof value === 'object' && value.toJSON) { + fixed[name] = value.toJSON(null, inputs) + } else if (name === 'source') { + if (value == null) continue + let inputId = inputs.get(value.input) + if (inputId == null) { + inputId = inputsNextIndex + inputs.set(value.input, inputsNextIndex) + inputsNextIndex++ + } + fixed[name] = { + end: value.end, + inputId, + start: value.start + } + } else { + fixed[name] = value + } + } + + if (emitInputs) { + fixed.inputs = [...inputs.keys()].map(input => input.toJSON()) + } + + return fixed + } + + toProxy() { + if (!this.proxyCache) { + this.proxyCache = new Proxy(this, this.getProxyProcessor()) + } + return this.proxyCache + } + + toString(stringifier = stringify) { + if (stringifier.stringify) stringifier = stringifier.stringify + let result = '' + stringifier(this, i => { + result += i + }) + return result + } + + warn(result, text, opts = {}) { + let data = { node: this } + for (let i in opts) data[i] = opts[i] + return result.warn(text, data) + } +} + +module.exports = Node +Node.default = Node diff --git a/node_modules/postcss/lib/parse.d.ts b/node_modules/postcss/lib/parse.d.ts new file mode 100644 index 0000000..4c943a4 --- /dev/null +++ b/node_modules/postcss/lib/parse.d.ts @@ -0,0 +1,9 @@ +import { Parser } from './postcss.js' + +interface Parse extends Parser { + default: Parse +} + +declare const parse: Parse + +export = parse diff --git a/node_modules/postcss/lib/parse.js b/node_modules/postcss/lib/parse.js new file mode 100644 index 0000000..00a1037 --- /dev/null +++ b/node_modules/postcss/lib/parse.js @@ -0,0 +1,42 @@ +'use strict' + +let Container = require('./container') +let Input = require('./input') +let Parser = require('./parser') + +function parse(css, opts) { + let input = new Input(css, opts) + let parser = new Parser(input) + try { + parser.parse() + } catch (e) { + if (process.env.NODE_ENV !== 'production') { + if (e.name === 'CssSyntaxError' && opts && opts.from) { + if (/\.scss$/i.test(opts.from)) { + e.message += + '\nYou tried to parse SCSS with ' + + 'the standard CSS parser; ' + + 'try again with the postcss-scss parser' + } else if (/\.sass/i.test(opts.from)) { + e.message += + '\nYou tried to parse Sass with ' + + 'the standard CSS parser; ' + + 'try again with the postcss-sass parser' + } else if (/\.less$/i.test(opts.from)) { + e.message += + '\nYou tried to parse Less with ' + + 'the standard CSS parser; ' + + 'try again with the postcss-less parser' + } + } + } + throw e + } + + return parser.root +} + +module.exports = parse +parse.default = parse + +Container.registerParse(parse) diff --git a/node_modules/postcss/lib/parser.js b/node_modules/postcss/lib/parser.js new file mode 100644 index 0000000..64fb5d8 --- /dev/null +++ b/node_modules/postcss/lib/parser.js @@ -0,0 +1,611 @@ +'use strict' + +let AtRule = require('./at-rule') +let Comment = require('./comment') +let Declaration = require('./declaration') +let Root = require('./root') +let Rule = require('./rule') +let tokenizer = require('./tokenize') + +const SAFE_COMMENT_NEIGHBOR = { + empty: true, + space: true +} + +function findLastWithPosition(tokens) { + for (let i = tokens.length - 1; i >= 0; i--) { + let token = tokens[i] + let pos = token[3] || token[2] + if (pos) return pos + } +} + +class Parser { + constructor(input) { + this.input = input + + this.root = new Root() + this.current = this.root + this.spaces = '' + this.semicolon = false + + this.createTokenizer() + this.root.source = { input, start: { column: 1, line: 1, offset: 0 } } + } + + atrule(token) { + let node = new AtRule() + node.name = token[1].slice(1) + if (node.name === '') { + this.unnamedAtrule(node, token) + } + this.init(node, token[2]) + + let type + let prev + let shift + let last = false + let open = false + let params = [] + let brackets = [] + + while (!this.tokenizer.endOfFile()) { + token = this.tokenizer.nextToken() + type = token[0] + + if (type === '(' || type === '[') { + brackets.push(type === '(' ? ')' : ']') + } else if (type === '{' && brackets.length > 0) { + brackets.push('}') + } else if (type === brackets[brackets.length - 1]) { + brackets.pop() + } + + if (brackets.length === 0) { + if (type === ';') { + node.source.end = this.getPosition(token[2]) + node.source.end.offset++ + this.semicolon = true + break + } else if (type === '{') { + open = true + break + } else if (type === '}') { + if (params.length > 0) { + shift = params.length - 1 + prev = params[shift] + while (prev && prev[0] === 'space') { + prev = params[--shift] + } + if (prev) { + node.source.end = this.getPosition(prev[3] || prev[2]) + node.source.end.offset++ + } + } + this.end(token) + break + } else { + params.push(token) + } + } else { + params.push(token) + } + + if (this.tokenizer.endOfFile()) { + last = true + break + } + } + + node.raws.between = this.spacesAndCommentsFromEnd(params) + if (params.length) { + node.raws.afterName = this.spacesAndCommentsFromStart(params) + this.raw(node, 'params', params) + if (last) { + token = params[params.length - 1] + node.source.end = this.getPosition(token[3] || token[2]) + node.source.end.offset++ + this.spaces = node.raws.between + node.raws.between = '' + } + } else { + node.raws.afterName = '' + node.params = '' + } + + if (open) { + node.nodes = [] + this.current = node + } + } + + checkMissedSemicolon(tokens) { + let colon = this.colon(tokens) + if (colon === false) return + + let founded = 0 + let token + for (let j = colon - 1; j >= 0; j--) { + token = tokens[j] + if (token[0] !== 'space') { + founded += 1 + if (founded === 2) break + } + } + // If the token is a word, e.g. `!important`, `red` or any other valid property's value. + // Then we need to return the colon after that word token. [3] is the "end" colon of that word. + // And because we need it after that one we do +1 to get the next one. + throw this.input.error( + 'Missed semicolon', + token[0] === 'word' ? token[3] + 1 : token[2] + ) + } + + colon(tokens) { + let brackets = 0 + let prev, token, type + for (let [i, element] of tokens.entries()) { + token = element + type = token[0] + + if (type === '(') { + brackets += 1 + } + if (type === ')') { + brackets -= 1 + } + if (brackets === 0 && type === ':') { + if (!prev) { + this.doubleColon(token) + } else if (prev[0] === 'word' && prev[1] === 'progid') { + continue + } else { + return i + } + } + + prev = token + } + return false + } + + comment(token) { + let node = new Comment() + this.init(node, token[2]) + node.source.end = this.getPosition(token[3] || token[2]) + node.source.end.offset++ + + let text = token[1].slice(2, -2) + if (/^\s*$/.test(text)) { + node.text = '' + node.raws.left = text + node.raws.right = '' + } else { + let match = text.match(/^(\s*)([^]*\S)(\s*)$/) + node.text = match[2] + node.raws.left = match[1] + node.raws.right = match[3] + } + } + + createTokenizer() { + this.tokenizer = tokenizer(this.input) + } + + decl(tokens, customProperty) { + let node = new Declaration() + this.init(node, tokens[0][2]) + + let last = tokens[tokens.length - 1] + if (last[0] === ';') { + this.semicolon = true + tokens.pop() + } + + node.source.end = this.getPosition( + last[3] || last[2] || findLastWithPosition(tokens) + ) + node.source.end.offset++ + + while (tokens[0][0] !== 'word') { + if (tokens.length === 1) this.unknownWord(tokens) + node.raws.before += tokens.shift()[1] + } + node.source.start = this.getPosition(tokens[0][2]) + + node.prop = '' + while (tokens.length) { + let type = tokens[0][0] + if (type === ':' || type === 'space' || type === 'comment') { + break + } + node.prop += tokens.shift()[1] + } + + node.raws.between = '' + + let token + while (tokens.length) { + token = tokens.shift() + + if (token[0] === ':') { + node.raws.between += token[1] + break + } else { + if (token[0] === 'word' && /\w/.test(token[1])) { + this.unknownWord([token]) + } + node.raws.between += token[1] + } + } + + if (node.prop[0] === '_' || node.prop[0] === '*') { + node.raws.before += node.prop[0] + node.prop = node.prop.slice(1) + } + + let firstSpaces = [] + let next + while (tokens.length) { + next = tokens[0][0] + if (next !== 'space' && next !== 'comment') break + firstSpaces.push(tokens.shift()) + } + + this.precheckMissedSemicolon(tokens) + + for (let i = tokens.length - 1; i >= 0; i--) { + token = tokens[i] + if (token[1].toLowerCase() === '!important') { + node.important = true + let string = this.stringFrom(tokens, i) + string = this.spacesFromEnd(tokens) + string + if (string !== ' !important') node.raws.important = string + break + } else if (token[1].toLowerCase() === 'important') { + let cache = tokens.slice(0) + let str = '' + for (let j = i; j > 0; j--) { + let type = cache[j][0] + if (str.trim().startsWith('!') && type !== 'space') { + break + } + str = cache.pop()[1] + str + } + if (str.trim().startsWith('!')) { + node.important = true + node.raws.important = str + tokens = cache + } + } + + if (token[0] !== 'space' && token[0] !== 'comment') { + break + } + } + + let hasWord = tokens.some(i => i[0] !== 'space' && i[0] !== 'comment') + + if (hasWord) { + node.raws.between += firstSpaces.map(i => i[1]).join('') + firstSpaces = [] + } + this.raw(node, 'value', firstSpaces.concat(tokens), customProperty) + + if (node.value.includes(':') && !customProperty) { + this.checkMissedSemicolon(tokens) + } + } + + doubleColon(token) { + throw this.input.error( + 'Double colon', + { offset: token[2] }, + { offset: token[2] + token[1].length } + ) + } + + emptyRule(token) { + let node = new Rule() + this.init(node, token[2]) + node.selector = '' + node.raws.between = '' + this.current = node + } + + end(token) { + if (this.current.nodes && this.current.nodes.length) { + this.current.raws.semicolon = this.semicolon + } + this.semicolon = false + + this.current.raws.after = (this.current.raws.after || '') + this.spaces + this.spaces = '' + + if (this.current.parent) { + this.current.source.end = this.getPosition(token[2]) + this.current.source.end.offset++ + this.current = this.current.parent + } else { + this.unexpectedClose(token) + } + } + + endFile() { + if (this.current.parent) this.unclosedBlock() + if (this.current.nodes && this.current.nodes.length) { + this.current.raws.semicolon = this.semicolon + } + this.current.raws.after = (this.current.raws.after || '') + this.spaces + this.root.source.end = this.getPosition(this.tokenizer.position()) + } + + freeSemicolon(token) { + this.spaces += token[1] + if (this.current.nodes) { + let prev = this.current.nodes[this.current.nodes.length - 1] + if (prev && prev.type === 'rule' && !prev.raws.ownSemicolon) { + prev.raws.ownSemicolon = this.spaces + this.spaces = '' + prev.source.end = this.getPosition(token[2]) + prev.source.end.offset += prev.raws.ownSemicolon.length + } + } + } + + // Helpers + + getPosition(offset) { + let pos = this.input.fromOffset(offset) + return { + column: pos.col, + line: pos.line, + offset + } + } + + init(node, offset) { + this.current.push(node) + node.source = { + input: this.input, + start: this.getPosition(offset) + } + node.raws.before = this.spaces + this.spaces = '' + if (node.type !== 'comment') this.semicolon = false + } + + other(start) { + let end = false + let type = null + let colon = false + let bracket = null + let brackets = [] + let customProperty = start[1].startsWith('--') + + let tokens = [] + let token = start + while (token) { + type = token[0] + tokens.push(token) + + if (type === '(' || type === '[') { + if (!bracket) bracket = token + brackets.push(type === '(' ? ')' : ']') + } else if (customProperty && colon && type === '{') { + if (!bracket) bracket = token + brackets.push('}') + } else if (brackets.length === 0) { + if (type === ';') { + if (colon) { + this.decl(tokens, customProperty) + return + } else { + break + } + } else if (type === '{') { + this.rule(tokens) + return + } else if (type === '}') { + this.tokenizer.back(tokens.pop()) + end = true + break + } else if (type === ':') { + colon = true + } + } else if (type === brackets[brackets.length - 1]) { + brackets.pop() + if (brackets.length === 0) bracket = null + } + + token = this.tokenizer.nextToken() + } + + if (this.tokenizer.endOfFile()) end = true + if (brackets.length > 0) this.unclosedBracket(bracket) + + if (end && colon) { + if (!customProperty) { + while (tokens.length) { + token = tokens[tokens.length - 1][0] + if (token !== 'space' && token !== 'comment') break + this.tokenizer.back(tokens.pop()) + } + } + this.decl(tokens, customProperty) + } else { + this.unknownWord(tokens) + } + } + + parse() { + let token + while (!this.tokenizer.endOfFile()) { + token = this.tokenizer.nextToken() + + switch (token[0]) { + case 'space': + this.spaces += token[1] + break + + case ';': + this.freeSemicolon(token) + break + + case '}': + this.end(token) + break + + case 'comment': + this.comment(token) + break + + case 'at-word': + this.atrule(token) + break + + case '{': + this.emptyRule(token) + break + + default: + this.other(token) + break + } + } + this.endFile() + } + + precheckMissedSemicolon(/* tokens */) { + // Hook for Safe Parser + } + + raw(node, prop, tokens, customProperty) { + let token, type + let length = tokens.length + let value = '' + let clean = true + let next, prev + + for (let i = 0; i < length; i += 1) { + token = tokens[i] + type = token[0] + if (type === 'space' && i === length - 1 && !customProperty) { + clean = false + } else if (type === 'comment') { + prev = tokens[i - 1] ? tokens[i - 1][0] : 'empty' + next = tokens[i + 1] ? tokens[i + 1][0] : 'empty' + if (!SAFE_COMMENT_NEIGHBOR[prev] && !SAFE_COMMENT_NEIGHBOR[next]) { + if (value.slice(-1) === ',') { + clean = false + } else { + value += token[1] + } + } else { + clean = false + } + } else { + value += token[1] + } + } + if (!clean) { + let raw = tokens.reduce((all, i) => all + i[1], '') + node.raws[prop] = { raw, value } + } + node[prop] = value + } + + rule(tokens) { + tokens.pop() + + let node = new Rule() + this.init(node, tokens[0][2]) + + node.raws.between = this.spacesAndCommentsFromEnd(tokens) + this.raw(node, 'selector', tokens) + this.current = node + } + + spacesAndCommentsFromEnd(tokens) { + let lastTokenType + let spaces = '' + while (tokens.length) { + lastTokenType = tokens[tokens.length - 1][0] + if (lastTokenType !== 'space' && lastTokenType !== 'comment') break + spaces = tokens.pop()[1] + spaces + } + return spaces + } + + // Errors + + spacesAndCommentsFromStart(tokens) { + let next + let spaces = '' + while (tokens.length) { + next = tokens[0][0] + if (next !== 'space' && next !== 'comment') break + spaces += tokens.shift()[1] + } + return spaces + } + + spacesFromEnd(tokens) { + let lastTokenType + let spaces = '' + while (tokens.length) { + lastTokenType = tokens[tokens.length - 1][0] + if (lastTokenType !== 'space') break + spaces = tokens.pop()[1] + spaces + } + return spaces + } + + stringFrom(tokens, from) { + let result = '' + for (let i = from; i < tokens.length; i++) { + result += tokens[i][1] + } + tokens.splice(from, tokens.length - from) + return result + } + + unclosedBlock() { + let pos = this.current.source.start + throw this.input.error('Unclosed block', pos.line, pos.column) + } + + unclosedBracket(bracket) { + throw this.input.error( + 'Unclosed bracket', + { offset: bracket[2] }, + { offset: bracket[2] + 1 } + ) + } + + unexpectedClose(token) { + throw this.input.error( + 'Unexpected }', + { offset: token[2] }, + { offset: token[2] + 1 } + ) + } + + unknownWord(tokens) { + throw this.input.error( + 'Unknown word ' + tokens[0][1], + { offset: tokens[0][2] }, + { offset: tokens[0][2] + tokens[0][1].length } + ) + } + + unnamedAtrule(node, token) { + throw this.input.error( + 'At-rule without name', + { offset: token[2] }, + { offset: token[2] + token[1].length } + ) + } +} + +module.exports = Parser diff --git a/node_modules/postcss/lib/postcss.d.mts b/node_modules/postcss/lib/postcss.d.mts new file mode 100644 index 0000000..d343f3c --- /dev/null +++ b/node_modules/postcss/lib/postcss.d.mts @@ -0,0 +1,69 @@ +export { + // Type-only exports + AcceptedPlugin, + + AnyNode, + atRule, + AtRule, + AtRuleProps, + Builder, + ChildNode, + ChildProps, + comment, + Comment, + CommentProps, + Container, + ContainerProps, + CssSyntaxError, + decl, + Declaration, + DeclarationProps, + // postcss function / namespace + default, + document, + Document, + DocumentProps, + FilePosition, + fromJSON, + Helpers, + Input, + + JSONHydrator, + // This is a class, but it’s not re-exported. That’s why it’s exported as type-only here. + type LazyResult, + list, + Message, + Node, + NodeErrorOptions, + NodeProps, + OldPlugin, + parse, + Parser, + // @ts-expect-error This value exists, but it’s untyped. + plugin, + Plugin, + PluginCreator, + Position, + Postcss, + ProcessOptions, + Processor, + Result, + root, + Root, + RootProps, + rule, + Rule, + RuleProps, + Source, + SourceMap, + SourceMapOptions, + Stringifier, + // Value exports from postcss.mjs + stringify, + Syntax, + TransformCallback, + Transformer, + Warning, + + WarningOptions +} from './postcss.js' diff --git a/node_modules/postcss/lib/postcss.d.ts b/node_modules/postcss/lib/postcss.d.ts new file mode 100644 index 0000000..c5e3605 --- /dev/null +++ b/node_modules/postcss/lib/postcss.d.ts @@ -0,0 +1,458 @@ +import { RawSourceMap, SourceMapGenerator } from 'source-map-js' + +import AtRule, { AtRuleProps } from './at-rule.js' +import Comment, { CommentProps } from './comment.js' +import Container, { ContainerProps, NewChild } from './container.js' +import CssSyntaxError from './css-syntax-error.js' +import Declaration, { DeclarationProps } from './declaration.js' +import Document, { DocumentProps } from './document.js' +import Input, { FilePosition } from './input.js' +import LazyResult from './lazy-result.js' +import list from './list.js' +import Node, { + AnyNode, + ChildNode, + ChildProps, + NodeErrorOptions, + NodeProps, + Position, + Source +} from './node.js' +import Processor from './processor.js' +import Result, { Message } from './result.js' +import Root, { RootProps } from './root.js' +import Rule, { RuleProps } from './rule.js' +import Warning, { WarningOptions } from './warning.js' + +type DocumentProcessor = ( + document: Document, + helper: postcss.Helpers +) => Promise | void +type RootProcessor = ( + root: Root, + helper: postcss.Helpers +) => Promise | void +type DeclarationProcessor = ( + decl: Declaration, + helper: postcss.Helpers +) => Promise | void +type RuleProcessor = ( + rule: Rule, + helper: postcss.Helpers +) => Promise | void +type AtRuleProcessor = ( + atRule: AtRule, + helper: postcss.Helpers +) => Promise | void +type CommentProcessor = ( + comment: Comment, + helper: postcss.Helpers +) => Promise | void + +interface Processors { + /** + * Will be called on all`AtRule` nodes. + * + * Will be called again on node or children changes. + */ + AtRule?: { [name: string]: AtRuleProcessor } | AtRuleProcessor + + /** + * Will be called on all `AtRule` nodes, when all children will be processed. + * + * Will be called again on node or children changes. + */ + AtRuleExit?: { [name: string]: AtRuleProcessor } | AtRuleProcessor + + /** + * Will be called on all `Comment` nodes. + * + * Will be called again on node or children changes. + */ + Comment?: CommentProcessor + + /** + * Will be called on all `Comment` nodes after listeners + * for `Comment` event. + * + * Will be called again on node or children changes. + */ + CommentExit?: CommentProcessor + + /** + * Will be called on all `Declaration` nodes after listeners + * for `Declaration` event. + * + * Will be called again on node or children changes. + */ + Declaration?: { [prop: string]: DeclarationProcessor } | DeclarationProcessor + + /** + * Will be called on all `Declaration` nodes. + * + * Will be called again on node or children changes. + */ + DeclarationExit?: + | { [prop: string]: DeclarationProcessor } + | DeclarationProcessor + + /** + * Will be called on `Document` node. + * + * Will be called again on children changes. + */ + Document?: DocumentProcessor + + /** + * Will be called on `Document` node, when all children will be processed. + * + * Will be called again on children changes. + */ + DocumentExit?: DocumentProcessor + + /** + * Will be called on `Root` node once. + */ + Once?: RootProcessor + + /** + * Will be called on `Root` node once, when all children will be processed. + */ + OnceExit?: RootProcessor + + /** + * Will be called on `Root` node. + * + * Will be called again on children changes. + */ + Root?: RootProcessor + + /** + * Will be called on `Root` node, when all children will be processed. + * + * Will be called again on children changes. + */ + RootExit?: RootProcessor + + /** + * Will be called on all `Rule` nodes. + * + * Will be called again on node or children changes. + */ + Rule?: RuleProcessor + + /** + * Will be called on all `Rule` nodes, when all children will be processed. + * + * Will be called again on node or children changes. + */ + RuleExit?: RuleProcessor +} + +declare namespace postcss { + export { + AnyNode, + AtRule, + AtRuleProps, + ChildNode, + ChildProps, + Comment, + CommentProps, + Container, + ContainerProps, + CssSyntaxError, + Declaration, + DeclarationProps, + Document, + DocumentProps, + FilePosition, + Input, + LazyResult, + list, + Message, + NewChild, + Node, + NodeErrorOptions, + NodeProps, + Position, + Processor, + Result, + Root, + RootProps, + Rule, + RuleProps, + Source, + Warning, + WarningOptions + } + + export type SourceMap = { + toJSON(): RawSourceMap + } & SourceMapGenerator + + export type Helpers = { postcss: Postcss; result: Result } & Postcss + + export interface Plugin extends Processors { + postcssPlugin: string + prepare?: (result: Result) => Processors + } + + export interface PluginCreator { + (opts?: PluginOptions): Plugin | Processor + postcss: true + } + + export interface Transformer extends TransformCallback { + postcssPlugin: string + postcssVersion: string + } + + export interface TransformCallback { + (root: Root, result: Result): Promise | void + } + + export interface OldPlugin extends Transformer { + (opts?: T): Transformer + postcss: Transformer + } + + export type AcceptedPlugin = + | { + postcss: Processor | TransformCallback + } + | OldPlugin + | Plugin + | PluginCreator + | Processor + | TransformCallback + + export interface Parser { + ( + css: { toString(): string } | string, + opts?: Pick + ): RootNode + } + + export interface Builder { + (part: string, node?: AnyNode, type?: 'end' | 'start'): void + } + + export interface Stringifier { + (node: AnyNode, builder: Builder): void + } + + export interface JSONHydrator { + (data: object): Node + (data: object[]): Node[] + } + + export interface Syntax { + /** + * Function to generate AST by string. + */ + parse?: Parser + + /** + * Class to generate string by AST. + */ + stringify?: Stringifier + } + + export interface SourceMapOptions { + /** + * Use absolute path in generated source map. + */ + absolute?: boolean + + /** + * Indicates that PostCSS should add annotation comments to the CSS. + * By default, PostCSS will always add a comment with a path + * to the source map. PostCSS will not add annotations to CSS files + * that do not contain any comments. + * + * By default, PostCSS presumes that you want to save the source map as + * `opts.to + '.map'` and will use this path in the annotation comment. + * A different path can be set by providing a string value for annotation. + * + * If you have set `inline: true`, annotation cannot be disabled. + */ + annotation?: ((file: string, root: Root) => string) | boolean | string + + /** + * Override `from` in map’s sources. + */ + from?: string + + /** + * Indicates that the source map should be embedded in the output CSS + * as a Base64-encoded comment. By default, it is `true`. + * But if all previous maps are external, not inline, PostCSS will not embed + * the map even if you do not set this option. + * + * If you have an inline source map, the result.map property will be empty, + * as the source map will be contained within the text of `result.css`. + */ + inline?: boolean + + /** + * Source map content from a previous processing step (e.g., Sass). + * + * PostCSS will try to read the previous source map + * automatically (based on comments within the source CSS), but you can use + * this option to identify it manually. + * + * If desired, you can omit the previous map with prev: `false`. + */ + prev?: ((file: string) => string) | boolean | object | string + + /** + * Indicates that PostCSS should set the origin content (e.g., Sass source) + * of the source map. By default, it is true. But if all previous maps do not + * contain sources content, PostCSS will also leave it out even if you + * do not set this option. + */ + sourcesContent?: boolean + } + + export interface ProcessOptions { + /** + * Input file if it is not simple CSS file, but HTML with "||v==="script"&&this.input.substring(this.index,this.index+9)!=="<\/script>"},E}(),b=function(){function E(v,_){_===void 0&&(_={}),this.options=_,this.token=null,this.startLine=1,this.startColumn=0,this.tokens=[],this.tokenizer=new o(this,v,_.mode),this._currentAttribute=void 0}return E.prototype.tokenize=function(v){return this.tokens=[],this.tokenizer.tokenize(v),this.tokens},E.prototype.tokenizePart=function(v){return this.tokens=[],this.tokenizer.tokenizePart(v),this.tokens},E.prototype.tokenizeEOF=function(){return this.tokens=[],this.tokenizer.tokenizeEOF(),this.tokens[0]},E.prototype.reset=function(){this.token=null,this.startLine=1,this.startColumn=0},E.prototype.current=function(){var v=this.token;if(v===null)throw new Error("token was unexpectedly null");if(arguments.length===0)return v;for(var _=0;_1&&arguments[1]!==void 0?arguments[1]:{entityEncoding:"transformed"};return c?new m.default(l).print(c):""}}}),he=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/syntax-error.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),t.generateSyntaxError=m;function m(h,d){let{module:c,loc:l}=d,{line:e,column:r}=l.start,u=d.asString(),p=u?` + +| +| ${u.split(` +`).join(` +| `)} +| + +`:"",n=new Error(`${h}: ${p}(error occurred in '${c}' @ line ${e} : column ${r})`);return n.name="SyntaxError",n.location=d,n.code=u,n}}}),Ft=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v1/visitor-keys.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var m=X(),h={Program:(0,m.tuple)("body"),Template:(0,m.tuple)("body"),Block:(0,m.tuple)("body"),MustacheStatement:(0,m.tuple)("path","params","hash"),BlockStatement:(0,m.tuple)("path","params","hash","program","inverse"),ElementModifierStatement:(0,m.tuple)("path","params","hash"),PartialStatement:(0,m.tuple)("name","params","hash"),CommentStatement:(0,m.tuple)(),MustacheCommentStatement:(0,m.tuple)(),ElementNode:(0,m.tuple)("attributes","modifiers","children","comments"),AttrNode:(0,m.tuple)("value"),TextNode:(0,m.tuple)(),ConcatStatement:(0,m.tuple)("parts"),SubExpression:(0,m.tuple)("path","params","hash"),PathExpression:(0,m.tuple)(),PathHead:(0,m.tuple)(),StringLiteral:(0,m.tuple)(),BooleanLiteral:(0,m.tuple)(),NumberLiteral:(0,m.tuple)(),NullLiteral:(0,m.tuple)(),UndefinedLiteral:(0,m.tuple)(),Hash:(0,m.tuple)("pairs"),HashPair:(0,m.tuple)("value"),NamedBlock:(0,m.tuple)("attributes","modifiers","children","comments"),SimpleElement:(0,m.tuple)("attributes","modifiers","children","comments"),Component:(0,m.tuple)("head","attributes","modifiers","children","comments")},d=h;t.default=d}}),Ye=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/traversal/errors.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),t.cannotRemoveNode=d,t.cannotReplaceNode=c,t.cannotReplaceOrRemoveInKeyHandlerYet=l,t.default=void 0;var m=function(){e.prototype=Object.create(Error.prototype),e.prototype.constructor=e;function e(r,u,p,n){let s=Error.call(this,r);this.key=n,this.message=r,this.node=u,this.parent=p,this.stack=s.stack}return e}(),h=m;t.default=h;function d(e,r,u){return new m("Cannot remove a node unless it is part of an array",e,r,u)}function c(e,r,u){return new m("Cannot replace a node with multiple nodes unless it is part of an array",e,r,u)}function l(e,r){return new m("Replacing and removing in key handlers is not yet supported.",e,null,r)}}}),Qe=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/traversal/path.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var m=class{constructor(d){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;this.node=d,this.parent=c,this.parentKey=l}get parentNode(){return this.parent?this.parent.node:null}parents(){return{[Symbol.iterator]:()=>new h(this)}}};t.default=m;var h=class{constructor(d){this.path=d}next(){return this.path.parent?(this.path=this.path.parent,{done:!1,value:this.path}):{done:!0,value:null}}}}}),Ne=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/traversal/traverse.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),t.default=E;var m=X(),h=l(Ft()),d=Ye(),c=l(Qe());function l(v){return v&&v.__esModule?v:{default:v}}function e(v){return typeof v=="function"?v:v.enter}function r(v){if(typeof v!="function")return v.exit}function u(v,_){let y=typeof v!="function"?v.keys:void 0;if(y===void 0)return;let g=y[_];return g!==void 0?g:y.All}function p(v,_){if((_==="Template"||_==="Block")&&v.Program)return v.Program;let y=v[_];return y!==void 0?y:v.All}function n(v,_){let{node:y,parent:g,parentKey:L}=_,j=p(v,y.type),x,w;j!==void 0&&(x=e(j),w=r(j));let H;if(x!==void 0&&(H=x(y,_)),H!=null)if(JSON.stringify(y)===JSON.stringify(H))H=void 0;else{if(Array.isArray(H))return o(v,H,g,L),H;{let f=new c.default(H,g,L);return n(v,f)||H}}if(H===void 0){let f=h.default[y.type];for(let C=0;C@\[-\^`\{-~]/;function d(s){let a=c(s);a&&(s.blockParams=a)}function c(s){let a=s.attributes.length,i=[];for(let b=0;b0&&i[i.length-1].charAt(0)==="|")throw(0,m.generateSyntaxError)("Block parameters must be preceded by the `as` keyword, detected block parameters without `as`",s.loc);if(o!==-1&&a>o&&i[o+1].charAt(0)==="|"){let b=i.slice(o).join(" ");if(b.charAt(b.length-1)!=="|"||b.match(/\|/g).length!==2)throw(0,m.generateSyntaxError)("Invalid block parameters syntax, '"+b+"'",s.loc);let P=[];for(let E=o+1;E1&&arguments[1]!==void 0?arguments[1]:new h.EntityParser(h.HTML5NamedCharRefs),e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"precompile";this.elementStack=[],this.currentAttribute=null,this.currentNode=null,this.source=c,this.lines=c.source.split(/(?:\r\n?|\n)/g),this.tokenizer=new h.EventedTokenizer(this,l,e)}offset(){let{line:c,column:l}=this.tokenizer;return this.source.offsetFor(c,l)}pos(c){let{line:l,column:e}=c;return this.source.offsetFor(l,e)}finish(c){return(0,m.assign)({},c,{loc:c.loc.until(this.offset())})}get currentAttr(){return this.currentAttribute}get currentTag(){return this.currentNode}get currentStartTag(){return this.currentNode}get currentEndTag(){return this.currentNode}get currentComment(){return this.currentNode}get currentData(){return this.currentNode}acceptTemplate(c){return this[c.type](c)}acceptNode(c){return this[c.type](c)}currentElement(){return this.elementStack[this.elementStack.length-1]}sourceForNode(c,l){let e=c.loc.start.line-1,r=e-1,u=c.loc.start.column,p=[],n,s,a;for(l?(s=l.loc.end.line-1,a=l.loc.end.column):(s=c.loc.end.line-1,a=c.loc.end.column);ri.acceptNode(_)):[],E=P.length>0?P[P.length-1].loc:b.loc,v=o.hash?i.Hash(o.hash):{type:"Hash",pairs:[],loc:i.source.spanFor(E).collapse("end")};return{path:b,params:P,hash:v}}function a(i,o){let{path:b,params:P,hash:E,loc:v}=o;if((0,c.isHBSLiteral)(b)){let y=`{{${(0,c.printLiteral)(b)}}}`,g=`<${i.name} ... ${y} ...`;throw(0,d.generateSyntaxError)(`In ${g}, ${y} is not a valid modifier`,o.loc)}let _=e.default.elementModifier({path:b,params:P,hash:E,loc:v});i.modifiers.push(_)}}}),Fe=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser/tokenizer-event-handlers.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),t.preprocess=_,t.TokenizerEventHandlers=void 0;var m=X(),h=Lt(),d=Ke(),c=b(We()),l=Te(),e=De(),r=ue(),u=he(),p=b(Ne()),n=b(Je()),s=ye(),a=b(Le()),i=b(ke()),o=Rt();function b(y){return y&&y.__esModule?y:{default:y}}var P=class extends o.HandlebarsNodeVisitors{constructor(){super(...arguments),this.tagOpenLine=0,this.tagOpenColumn=0}reset(){this.currentNode=null}beginComment(){this.currentNode=a.default.comment("",this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn))}appendToCommentData(y){this.currentComment.value+=y}finishComment(){(0,s.appendChild)(this.currentElement(),this.finish(this.currentComment))}beginData(){this.currentNode=a.default.text({chars:"",loc:this.offset().collapsed()})}appendToData(y){this.currentData.chars+=y}finishData(){this.currentData.loc=this.currentData.loc.withEnd(this.offset()),(0,s.appendChild)(this.currentElement(),this.currentData)}tagOpen(){this.tagOpenLine=this.tokenizer.line,this.tagOpenColumn=this.tokenizer.column}beginStartTag(){this.currentNode={type:"StartTag",name:"",attributes:[],modifiers:[],comments:[],selfClosing:!1,loc:this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn)}}beginEndTag(){this.currentNode={type:"EndTag",name:"",attributes:[],modifiers:[],comments:[],selfClosing:!1,loc:this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn)}}finishTag(){let y=this.finish(this.currentTag);if(y.type==="StartTag"){if(this.finishStartTag(),y.name===":")throw(0,u.generateSyntaxError)("Invalid named block named detected, you may have created a named block without a name, or you may have began your name with a number. Named blocks must have names that are at least one character long, and begin with a lower case letter",this.source.spanFor({start:this.currentTag.loc.toJSON(),end:this.offset().toJSON()}));(l.voidMap[y.name]||y.selfClosing)&&this.finishEndTag(!0)}else y.type==="EndTag"&&this.finishEndTag(!1)}finishStartTag(){let{name:y,attributes:g,modifiers:L,comments:j,selfClosing:x,loc:w}=this.finish(this.currentStartTag),H=a.default.element({tag:y,selfClosing:x,attrs:g,modifiers:L,comments:j,children:[],blockParams:[],loc:w});this.elementStack.push(H)}finishEndTag(y){let g=this.finish(this.currentTag),L=this.elementStack.pop(),j=this.currentElement();this.validateEndTag(g,L,y),L.loc=L.loc.withEnd(this.offset()),(0,s.parseElementBlockParams)(L),(0,s.appendChild)(j,L)}markTagAsSelfClosing(){this.currentTag.selfClosing=!0}appendToTagName(y){this.currentTag.name+=y}beginAttribute(){let y=this.offset();this.currentAttribute={name:"",parts:[],currentPart:null,isQuoted:!1,isDynamic:!1,start:y,valueSpan:y.collapsed()}}appendToAttributeName(y){this.currentAttr.name+=y}beginAttributeValue(y){this.currentAttr.isQuoted=y,this.startTextPart(),this.currentAttr.valueSpan=this.offset().collapsed()}appendToAttributeValue(y){let g=this.currentAttr.parts,L=g[g.length-1],j=this.currentAttr.currentPart;if(j)j.chars+=y,j.loc=j.loc.withEnd(this.offset());else{let x=this.offset();y===` +`?x=L?L.loc.getEnd():this.currentAttr.valueSpan.getStart():x=x.move(-1),this.currentAttr.currentPart=a.default.text({chars:y,loc:x.collapsed()})}}finishAttributeValue(){this.finalizeTextPart();let y=this.currentTag,g=this.offset();if(y.type==="EndTag")throw(0,u.generateSyntaxError)("Invalid end tag: closing tag must not have attributes",this.source.spanFor({start:y.loc.toJSON(),end:g.toJSON()}));let{name:L,parts:j,start:x,isQuoted:w,isDynamic:H,valueSpan:f}=this.currentAttr,C=this.assembleAttributeValue(j,w,H,x.until(g));C.loc=f.withEnd(g);let S=a.default.attr({name:L,value:C,loc:x.until(g)});this.currentStartTag.attributes.push(S)}reportSyntaxError(y){throw(0,u.generateSyntaxError)(y,this.offset().collapsed())}assembleConcatenatedValue(y){for(let j=0;j elements do not need end tags. You should remove it`:g.tag===void 0?j=`Closing tag without an open tag`:g.tag!==y.name&&(j=`Closing tag did not match last open tag <${g.tag}> (on line ${g.loc.startPosition.line})`),j)throw(0,u.generateSyntaxError)(j,y.loc)}assembleAttributeValue(y,g,L,j){if(L){if(g)return this.assembleConcatenatedValue(y);if(y.length===1||y.length===2&&y[1].type==="TextNode"&&y[1].chars==="/")return y[0];throw(0,u.generateSyntaxError)("An unquoted attribute value must be a string or a mustache, preceded by whitespace or a '=' character, and followed by whitespace, a '>' character, or '/>'",j)}else return y.length>0?y[0]:a.default.text({chars:"",loc:j})}};t.TokenizerEventHandlers=P;var E={parse:_,builders:i.default,print:c.default,traverse:p.default,Walker:n.default},v=class extends d.EntityParser{constructor(){super({})}parse(){}};function _(y){let g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var L,j,x;let w=g.mode||"precompile",H,f;typeof y=="string"?(H=new e.Source(y,(L=g.meta)===null||L===void 0?void 0:L.moduleName),w==="codemod"?f=(0,h.parseWithoutProcessing)(y,g.parseOptions):f=(0,h.parse)(y,g.parseOptions)):y instanceof e.Source?(H=y,w==="codemod"?f=(0,h.parseWithoutProcessing)(y.source,g.parseOptions):f=(0,h.parse)(y.source,g.parseOptions)):(H=new e.Source("",(j=g.meta)===null||j===void 0?void 0:j.moduleName),f=y);let C;w==="codemod"&&(C=new v);let S=r.SourceSpan.forCharPositions(H,0,H.source.length);f.loc={source:"(program)",start:S.startPosition,end:S.endPosition};let R=new P(H,C,w).acceptTemplate(f);if(g.strictMode&&(R.blockParams=(x=g.locals)!==null&&x!==void 0?x:[]),g&&g.plugins&&g.plugins.ast)for(let M=0,V=g.plugins.ast.length;Mthis.allocate(u));return new l(this,e,r)}};t.SymbolTable=d;var c=class extends d{constructor(e,r){super(),this.templateLocals=e,this.customizeComponentName=r,this.symbols=[],this.upvars=[],this.size=1,this.named=(0,m.dict)(),this.blocks=(0,m.dict)(),this.usedTemplateLocals=[],this._hasEval=!1}getUsedTemplateLocals(){return this.usedTemplateLocals}setHasEval(){this._hasEval=!0}get hasEval(){return this._hasEval}has(e){return this.templateLocals.indexOf(e)!==-1}get(e){let r=this.usedTemplateLocals.indexOf(e);return r!==-1?[r,!0]:(r=this.usedTemplateLocals.length,this.usedTemplateLocals.push(e),[r,!0])}getLocalsMap(){return(0,m.dict)()}getEvalInfo(){let e=this.getLocalsMap();return Object.keys(e).map(r=>e[r])}allocateFree(e,r){r.resolution()===39&&r.isAngleBracket&&(0,h.isUpperCase)(e)&&(e=this.customizeComponentName(e));let u=this.upvars.indexOf(e);return u!==-1||(u=this.upvars.length,this.upvars.push(e)),u}allocateNamed(e){let r=this.named[e];return r||(r=this.named[e]=this.allocate(e)),r}allocateBlock(e){e==="inverse"&&(e="else");let r=this.blocks[e];return r||(r=this.blocks[e]=this.allocate(`&${e}`)),r}allocate(e){return this.symbols.push(e),this.size++}};t.ProgramSymbolTable=c;var l=class extends d{constructor(e,r,u){super(),this.parent=e,this.symbols=r,this.slots=u}get locals(){return this.symbols}has(e){return this.symbols.indexOf(e)!==-1||this.parent.has(e)}get(e){let r=this.symbols.indexOf(e);return r===-1?this.parent.get(e):[this.slots[r],!1]}getLocalsMap(){let e=this.parent.getLocalsMap();return this.symbols.forEach(r=>e[r]=this.get(r)[0]),e}getEvalInfo(){let e=this.getLocalsMap();return Object.keys(e).map(r=>e[r])}setHasEval(){this.parent.setHasEval()}allocateFree(e,r){return this.parent.allocateFree(e,r)}allocateNamed(e){return this.parent.allocateNamed(e)}allocateBlock(e){return this.parent.allocateBlock(e)}allocate(e){return this.parent.allocate(e)}};t.BlockSymbolTable=l}}),qt=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/builders.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),t.BuildElement=t.Builder=void 0;var m=X(),h=le(),d=ce(),c=e(ve());function l(){if(typeof WeakMap!="function")return null;var n=new WeakMap;return l=function(){return n},n}function e(n){if(n&&n.__esModule)return n;if(n===null||typeof n!="object"&&typeof n!="function")return{default:n};var s=l();if(s&&s.has(n))return s.get(n);var a={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in n)if(Object.prototype.hasOwnProperty.call(n,o)){var b=i?Object.getOwnPropertyDescriptor(n,o):null;b&&(b.get||b.set)?Object.defineProperty(a,o,b):a[o]=n[o]}return a.default=n,s&&s.set(n,a),a}var r=function(n,s){var a={};for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&s.indexOf(i)<0&&(a[i]=n[i]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,i=Object.getOwnPropertySymbols(n);o0||i.hash.pairs.length>0}}}),jt=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/normalize.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),t.normalize=P,t.BlockContext=void 0;var m=X(),h=b(Te()),d=Fe(),c=le(),l=ce(),e=Xe(),r=he(),u=ye(),p=b(Le()),n=o(ve()),s=qt(),a=xt();function i(){if(typeof WeakMap!="function")return null;var f=new WeakMap;return i=function(){return f},f}function o(f){if(f&&f.__esModule)return f;if(f===null||typeof f!="object"&&typeof f!="function")return{default:f};var C=i();if(C&&C.has(f))return C.get(f);var S={},R=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var M in f)if(Object.prototype.hasOwnProperty.call(f,M)){var V=R?Object.getOwnPropertyDescriptor(f,M):null;V&&(V.get||V.set)?Object.defineProperty(S,M,V):S[M]=f[M]}return S.default=f,C&&C.set(f,S),S}function b(f){return f&&f.__esModule?f:{default:f}}function P(f){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var S;let R=(0,d.preprocess)(f,C),M=(0,m.assign)({strictMode:!1,locals:[]},C),V=e.SymbolTable.top(M.locals,(S=C.customizeComponentName)!==null&&S!==void 0?S:W=>W),G=new E(f,M,V),K=new _(G),U=new L(G.loc(R.loc),R.body.map(W=>K.normalize(W)),G).assertTemplate(V),Z=V.getUsedTemplateLocals();return[U,Z]}var E=class{constructor(f,C,S){this.source=f,this.options=C,this.table=S,this.builder=new s.Builder}get strict(){return this.options.strictMode||!1}loc(f){return this.source.spanFor(f)}resolutionFor(f,C){if(this.strict)return{resolution:n.STRICT_RESOLUTION};if(this.isFreeVar(f)){let S=C(f);return S===null?{resolution:"error",path:w(f),head:H(f)}:{resolution:S}}else return{resolution:n.STRICT_RESOLUTION}}isFreeVar(f){return f.type==="PathExpression"?f.head.type!=="VarHead"?!1:!this.table.has(f.head.name):f.path.type==="PathExpression"?this.isFreeVar(f.path):!1}hasBinding(f){return this.table.has(f)}child(f){return new E(this.source,this.options,this.table.child(f))}customizeComponentName(f){return this.options.customizeComponentName?this.options.customizeComponentName(f):f}};t.BlockContext=E;var v=class{constructor(f){this.block=f}normalize(f,C){switch(f.type){case"NullLiteral":case"BooleanLiteral":case"NumberLiteral":case"StringLiteral":case"UndefinedLiteral":return this.block.builder.literal(f.value,this.block.loc(f.loc));case"PathExpression":return this.path(f,C);case"SubExpression":{let S=this.block.resolutionFor(f,a.SexpSyntaxContext);if(S.resolution==="error")throw(0,r.generateSyntaxError)(`You attempted to invoke a path (\`${S.path}\`) but ${S.head} was not in scope`,f.loc);return this.block.builder.sexp(this.callParts(f,S.resolution),this.block.loc(f.loc))}}}path(f,C){let S=this.block.loc(f.head.loc),R=[],M=S;for(let V of f.tail)M=M.sliceStartChars({chars:V.length,skipStart:1}),R.push(new c.SourceSlice({loc:M,chars:V}));return this.block.builder.path(this.ref(f.head,C),R,this.block.loc(f.loc))}callParts(f,C){let{path:S,params:R,hash:M}=f,V=this.normalize(S,C),G=R.map(N=>this.normalize(N,n.ARGUMENT_RESOLUTION)),K=l.SpanList.range(G,V.loc.collapse("end")),U=this.block.loc(M.loc),Z=l.SpanList.range([K,U]),W=this.block.builder.positional(R.map(N=>this.normalize(N,n.ARGUMENT_RESOLUTION)),K),T=this.block.builder.named(M.pairs.map(N=>this.namedArgument(N)),this.block.loc(M.loc));return{callee:V,args:this.block.builder.args(W,T,Z)}}namedArgument(f){let S=this.block.loc(f.loc).sliceStartChars({chars:f.key.length});return this.block.builder.namedArgument(new c.SourceSlice({chars:f.key,loc:S}),this.normalize(f.value,n.ARGUMENT_RESOLUTION))}ref(f,C){let{block:S}=this,{builder:R,table:M}=S,V=S.loc(f.loc);switch(f.type){case"ThisHead":return R.self(V);case"AtHead":{let G=M.allocateNamed(f.name);return R.at(f.name,G,V)}case"VarHead":if(S.hasBinding(f.name)){let[G,K]=M.get(f.name);return S.builder.localVar(f.name,G,K,V)}else{let G=S.strict?n.STRICT_RESOLUTION:C,K=S.table.allocateFree(f.name,G);return S.builder.freeVar({name:f.name,context:G,symbol:K,loc:V})}}}},_=class{constructor(f){this.block=f}normalize(f){switch(f.type){case"PartialStatement":throw new Error("Handlebars partial syntax ({{> ...}}) is not allowed in Glimmer");case"BlockStatement":return this.BlockStatement(f);case"ElementNode":return new y(this.block).ElementNode(f);case"MustacheStatement":return this.MustacheStatement(f);case"MustacheCommentStatement":return this.MustacheCommentStatement(f);case"CommentStatement":{let C=this.block.loc(f.loc);return new n.HtmlComment({loc:C,text:C.slice({skipStart:4,skipEnd:3}).toSlice(f.value)})}case"TextNode":return new n.HtmlText({loc:this.block.loc(f.loc),chars:f.chars})}}MustacheCommentStatement(f){let C=this.block.loc(f.loc),S;return C.asString().slice(0,5)==="{{!--"?S=C.slice({skipStart:5,skipEnd:4}):S=C.slice({skipStart:3,skipEnd:2}),new n.GlimmerComment({loc:C,text:S.toSlice(f.value)})}MustacheStatement(f){let{escaped:C}=f,S=this.block.loc(f.loc),R=this.expr.callParts({path:f.path,params:f.params,hash:f.hash},(0,a.AppendSyntaxContext)(f)),M=R.args.isEmpty()?R.callee:this.block.builder.sexp(R,S);return this.block.builder.append({table:this.block.table,trusting:!C,value:M},S)}BlockStatement(f){let{program:C,inverse:S}=f,R=this.block.loc(f.loc),M=this.block.resolutionFor(f,a.BlockSyntaxContext);if(M.resolution==="error")throw(0,r.generateSyntaxError)(`You attempted to invoke a path (\`{{#${M.path}}}\`) but ${M.head} was not in scope`,R);let V=this.expr.callParts(f,M.resolution);return this.block.builder.blockStatement((0,m.assign)({symbols:this.block.table,program:this.Block(C),inverse:S?this.Block(S):null},V),R)}Block(f){let{body:C,loc:S,blockParams:R}=f,M=this.block.child(R),V=new _(M);return new j(this.block.loc(S),C.map(G=>V.normalize(G)),this.block).assertBlock(M.table)}get expr(){return new v(this.block)}},y=class{constructor(f){this.ctx=f}ElementNode(f){let{tag:C,selfClosing:S,comments:R}=f,M=this.ctx.loc(f.loc),[V,...G]=C.split("."),K=this.classifyTag(V,G,f.loc),U=f.attributes.filter(A=>A.name[0]!=="@").map(A=>this.attr(A)),Z=f.attributes.filter(A=>A.name[0]==="@").map(A=>this.arg(A)),W=f.modifiers.map(A=>this.modifier(A)),T=this.ctx.child(f.blockParams),N=new _(T),k=f.children.map(A=>N.normalize(A)),B=this.ctx.builder.element({selfClosing:S,attrs:U,componentArgs:Z,modifiers:W,comments:R.map(A=>new _(this.ctx).MustacheCommentStatement(A))}),O=new x(B,M,k,this.ctx),z=this.ctx.loc(f.loc).sliceStartChars({chars:C.length,skipStart:1});if(K==="ElementHead")return C[0]===":"?O.assertNamedBlock(z.slice({skipStart:1}).toSlice(C.slice(1)),T.table):O.assertElement(z.toSlice(C),f.blockParams.length>0);if(f.selfClosing)return B.selfClosingComponent(K,M);{let A=O.assertComponent(C,T.table,f.blockParams.length>0);return B.componentWithNamedBlocks(K,A,M)}}modifier(f){let C=this.ctx.resolutionFor(f,a.ModifierSyntaxContext);if(C.resolution==="error")throw(0,r.generateSyntaxError)(`You attempted to invoke a path (\`{{#${C.path}}}\`) as a modifier, but ${C.head} was not in scope. Try adding \`this\` to the beginning of the path`,f.loc);let S=this.expr.callParts(f,C.resolution);return this.ctx.builder.modifier(S,this.ctx.loc(f.loc))}mustacheAttr(f){let C=this.ctx.builder.sexp(this.expr.callParts(f,(0,a.AttrValueSyntaxContext)(f)),this.ctx.loc(f.loc));return C.args.isEmpty()?C.callee:C}attrPart(f){switch(f.type){case"MustacheStatement":return{expr:this.mustacheAttr(f),trusting:!f.escaped};case"TextNode":return{expr:this.ctx.builder.literal(f.chars,this.ctx.loc(f.loc)),trusting:!0}}}attrValue(f){switch(f.type){case"ConcatStatement":{let C=f.parts.map(S=>this.attrPart(S).expr);return{expr:this.ctx.builder.interpolate(C,this.ctx.loc(f.loc)),trusting:!1}}default:return this.attrPart(f)}}attr(f){if(f.name==="...attributes")return this.ctx.builder.splatAttr(this.ctx.table.allocateBlock("attrs"),this.ctx.loc(f.loc));let C=this.ctx.loc(f.loc),S=C.sliceStartChars({chars:f.name.length}).toSlice(f.name),R=this.attrValue(f.value);return this.ctx.builder.attr({name:S,value:R.expr,trusting:R.trusting},C)}maybeDeprecatedCall(f,C){if(this.ctx.strict||C.type!=="MustacheStatement")return null;let{path:S}=C;if(S.type!=="PathExpression"||S.head.type!=="VarHead")return null;let{name:R}=S.head;if(R==="has-block"||R==="has-block-params"||this.ctx.hasBinding(R)||S.tail.length!==0||C.params.length!==0||C.hash.pairs.length!==0)return null;let M=n.LooseModeResolution.attr(),V=this.ctx.builder.freeVar({name:R,context:M,symbol:this.ctx.table.allocateFree(R,M),loc:S.loc});return{expr:this.ctx.builder.deprecatedCall(f,V,C.loc),trusting:!1}}arg(f){let C=this.ctx.loc(f.loc),S=C.sliceStartChars({chars:f.name.length}).toSlice(f.name),R=this.maybeDeprecatedCall(S,f.value)||this.attrValue(f.value);return this.ctx.builder.arg({name:S,value:R.expr,trusting:R.trusting},C)}classifyTag(f,C,S){let R=(0,u.isUpperCase)(f),M=f[0]==="@"||f==="this"||this.ctx.hasBinding(f);if(this.ctx.strict&&!M){if(R)throw(0,r.generateSyntaxError)(`Attempted to invoke a component that was not in scope in a strict mode template, \`<${f}>\`. If you wanted to create an element with that name, convert it to lowercase - \`<${f.toLowerCase()}>\``,S);return"ElementHead"}let V=M||R,G=S.sliceStartChars({skipStart:1,chars:f.length}),K=C.reduce((W,T)=>W+1+T.length,0),U=G.getEnd().move(K),Z=G.withEnd(U);if(V){let W=p.default.path({head:p.default.head(f,G),tail:C,loc:Z}),T=this.ctx.resolutionFor(W,a.ComponentSyntaxContext);if(T.resolution==="error")throw(0,r.generateSyntaxError)(`You attempted to invoke a path (\`<${T.path}>\`) but ${T.head} was not in scope`,S);return new v(this.ctx).normalize(W,T.resolution)}if(C.length>0)throw(0,r.generateSyntaxError)(`You used ${f}.${C.join(".")} as a tag name, but ${f} is not in scope`,S);return"ElementHead"}get expr(){return new v(this.ctx)}},g=class{constructor(f,C,S){this.loc=f,this.children=C,this.block=S,this.namedBlocks=C.filter(R=>R instanceof n.NamedBlock),this.hasSemanticContent=Boolean(C.filter(R=>{if(R instanceof n.NamedBlock)return!1;switch(R.type){case"GlimmerComment":case"HtmlComment":return!1;case"HtmlText":return!/^\s*$/.exec(R.chars);default:return!0}}).length),this.nonBlockChildren=C.filter(R=>!(R instanceof n.NamedBlock))}},L=class extends g{assertTemplate(f){if((0,m.isPresent)(this.namedBlocks))throw(0,r.generateSyntaxError)("Unexpected named block at the top-level of a template",this.loc);return this.block.builder.template(f,this.nonBlockChildren,this.block.loc(this.loc))}},j=class extends g{assertBlock(f){if((0,m.isPresent)(this.namedBlocks))throw(0,r.generateSyntaxError)("Unexpected named block nested in a normal block",this.loc);return this.block.builder.block(f,this.nonBlockChildren,this.loc)}},x=class extends g{constructor(f,C,S,R){super(C,S,R),this.el=f}assertNamedBlock(f,C){if(this.el.base.selfClosing)throw(0,r.generateSyntaxError)(`<:${f.chars}/> is not a valid named block: named blocks cannot be self-closing`,this.loc);if((0,m.isPresent)(this.namedBlocks))throw(0,r.generateSyntaxError)(`Unexpected named block inside <:${f.chars}> named block: named blocks cannot contain nested named blocks`,this.loc);if(!(0,u.isLowerCase)(f.chars))throw(0,r.generateSyntaxError)(`<:${f.chars}> is not a valid named block, and named blocks must begin with a lowercase letter`,this.loc);if(this.el.base.attrs.length>0||this.el.base.componentArgs.length>0||this.el.base.modifiers.length>0)throw(0,r.generateSyntaxError)(`named block <:${f.chars}> cannot have attributes, arguments, or modifiers`,this.loc);let S=l.SpanList.range(this.nonBlockChildren,this.loc);return this.block.builder.namedBlock(f,this.block.builder.block(C,this.nonBlockChildren,S),this.loc)}assertElement(f,C){if(C)throw(0,r.generateSyntaxError)(`Unexpected block params in <${f}>: simple elements cannot have block params`,this.loc);if((0,m.isPresent)(this.namedBlocks)){let S=this.namedBlocks.map(R=>R.name);if(S.length===1)throw(0,r.generateSyntaxError)(`Unexpected named block <:foo> inside <${f.chars}> HTML element`,this.loc);{let R=S.map(M=>`<:${M.chars}>`).join(", ");throw(0,r.generateSyntaxError)(`Unexpected named blocks inside <${f.chars}> HTML element (${R})`,this.loc)}}return this.el.simple(f,this.nonBlockChildren,this.loc)}assertComponent(f,C,S){if((0,m.isPresent)(this.namedBlocks)&&this.hasSemanticContent)throw(0,r.generateSyntaxError)(`Unexpected content inside <${f}> component invocation: when using named blocks, the tag cannot contain other content`,this.loc);if((0,m.isPresent)(this.namedBlocks)){if(S)throw(0,r.generateSyntaxError)(`Unexpected block params list on <${f}> component invocation: when passing named blocks, the invocation tag cannot take block params`,this.loc);let R=new Set;for(let M of this.namedBlocks){let V=M.name.chars;if(R.has(V))throw(0,r.generateSyntaxError)(`Component had two named blocks with the same name, \`<:${V}>\`. Only one block with a given name may be passed`,this.loc);if(V==="inverse"&&R.has("else")||V==="else"&&R.has("inverse"))throw(0,r.generateSyntaxError)("Component has both <:else> and <:inverse> block. <:inverse> is an alias for <:else>",this.loc);R.add(V)}return this.namedBlocks}else return[this.block.builder.namedBlock(c.SourceSlice.synthetic("default"),this.block.builder.block(C,this.nonBlockChildren,this.loc),this.loc)]}};function w(f){return f.type!=="PathExpression"&&f.path.type==="PathExpression"?w(f.path):new h.default({entityEncoding:"raw"}).print(f)}function H(f){if(f.type==="PathExpression")switch(f.head.type){case"AtHead":case"VarHead":return f.head.name;case"ThisHead":return"this"}else return f.path.type==="PathExpression"?H(f.path):new h.default({entityEncoding:"raw"}).print(f)}}}),Ze=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/keywords.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),t.isKeyword=m,t.KEYWORDS_TYPES=void 0;function m(d){return d in h}var h={component:["Call","Append","Block"],debugger:["Append"],"each-in":["Block"],each:["Block"],"has-block-params":["Call","Append"],"has-block":["Call","Append"],helper:["Call","Append"],if:["Call","Append","Block"],"in-element":["Block"],let:["Block"],"link-to":["Append","Block"],log:["Call","Append"],modifier:["Call"],mount:["Append"],mut:["Call","Append"],outlet:["Append"],"query-params":["Call"],readonly:["Call","Append"],unbound:["Call","Append"],unless:["Call","Append","Block"],with:["Block"],yield:["Append"]};t.KEYWORDS_TYPES=h}}),Mt=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/get-template-locals.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),t.getTemplateLocals=r;var m=Ze(),h=Fe(),d=c(Ne());function c(u){return u&&u.__esModule?u:{default:u}}function l(u,p,n){if(u.type==="PathExpression"){if(u.head.type==="AtHead"||u.head.type==="ThisHead")return;let s=u.head.name;if(p.indexOf(s)===-1)return s}else if(u.type==="ElementNode"){let{tag:s}=u,a=s.charAt(0);return a===":"||a==="@"||!n.includeHtmlElements&&s.indexOf(".")===-1&&s.toLowerCase()===s||s.substr(0,5)==="this."||p.indexOf(s)!==-1?void 0:s}}function e(u,p,n,s){let a=l(p,n,s);(Array.isArray(a)?a:[a]).forEach(i=>{i!==void 0&&i[0]!=="@"&&u.add(i.split(".")[0])})}function r(u){let p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{includeHtmlElements:!1,includeKeywords:!1},n=(0,h.preprocess)(u),s=new Set,a=[];(0,d.default)(n,{Block:{enter(o){let{blockParams:b}=o;b.forEach(P=>{a.push(P)})},exit(o){let{blockParams:b}=o;b.forEach(()=>{a.pop()})}},ElementNode:{enter(o){o.blockParams.forEach(b=>{a.push(b)}),e(s,o,a,p)},exit(o){let{blockParams:b}=o;b.forEach(()=>{a.pop()})}},PathExpression(o){e(s,o,a,p)}});let i=[];return s.forEach(o=>i.push(o)),p!=null&&p.includeKeywords||(i=i.filter(o=>!(0,m.isKeyword)(o))),i}}}),Ht=F({"node_modules/@glimmer/syntax/dist/commonjs/es2017/index.js"(t){"use strict";I(),Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Source",{enumerable:!0,get:function(){return m.Source}}),Object.defineProperty(t,"builders",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"normalize",{enumerable:!0,get:function(){return l.normalize}}),Object.defineProperty(t,"SymbolTable",{enumerable:!0,get:function(){return e.SymbolTable}}),Object.defineProperty(t,"BlockSymbolTable",{enumerable:!0,get:function(){return e.BlockSymbolTable}}),Object.defineProperty(t,"ProgramSymbolTable",{enumerable:!0,get:function(){return e.ProgramSymbolTable}}),Object.defineProperty(t,"generateSyntaxError",{enumerable:!0,get:function(){return r.generateSyntaxError}}),Object.defineProperty(t,"preprocess",{enumerable:!0,get:function(){return u.preprocess}}),Object.defineProperty(t,"print",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"sortByLoc",{enumerable:!0,get:function(){return n.sortByLoc}}),Object.defineProperty(t,"Walker",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"Path",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"traverse",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"cannotRemoveNode",{enumerable:!0,get:function(){return i.cannotRemoveNode}}),Object.defineProperty(t,"cannotReplaceNode",{enumerable:!0,get:function(){return i.cannotReplaceNode}}),Object.defineProperty(t,"WalkerPath",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"isKeyword",{enumerable:!0,get:function(){return b.isKeyword}}),Object.defineProperty(t,"KEYWORDS_TYPES",{enumerable:!0,get:function(){return b.KEYWORDS_TYPES}}),Object.defineProperty(t,"getTemplateLocals",{enumerable:!0,get:function(){return P.getTemplateLocals}}),Object.defineProperty(t,"SourceSlice",{enumerable:!0,get:function(){return E.SourceSlice}}),Object.defineProperty(t,"SourceSpan",{enumerable:!0,get:function(){return v.SourceSpan}}),Object.defineProperty(t,"SpanList",{enumerable:!0,get:function(){return _.SpanList}}),Object.defineProperty(t,"maybeLoc",{enumerable:!0,get:function(){return _.maybeLoc}}),Object.defineProperty(t,"loc",{enumerable:!0,get:function(){return _.loc}}),Object.defineProperty(t,"hasSpan",{enumerable:!0,get:function(){return _.hasSpan}}),Object.defineProperty(t,"node",{enumerable:!0,get:function(){return y.node}}),t.ASTv2=t.AST=t.ASTv1=void 0;var m=De(),h=j(ke()),d=L(_t());t.ASTv1=d,t.AST=d;var c=L(ve());t.ASTv2=c;var l=jt(),e=Xe(),r=he(),u=Fe(),p=j(We()),n=Ue(),s=j(Je()),a=j(Ne()),i=Ye(),o=j(Qe()),b=Ze(),P=Mt(),E=le(),v=ue(),_=ce(),y=ne();function g(){if(typeof WeakMap!="function")return null;var x=new WeakMap;return g=function(){return x},x}function L(x){if(x&&x.__esModule)return x;if(x===null||typeof x!="object"&&typeof x!="function")return{default:x};var w=g();if(w&&w.has(x))return w.get(x);var H={},f=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in x)if(Object.prototype.hasOwnProperty.call(x,C)){var S=f?Object.getOwnPropertyDescriptor(x,C):null;S&&(S.get||S.set)?Object.defineProperty(H,C,S):H[C]=x[C]}return H.default=x,w&&w.set(x,H),H}function j(x){return x&&x.__esModule?x:{default:x}}}}),Vt=F({"src/language-handlebars/parser-glimmer.js"(t,m){I();var{LinesAndColumns:h}=it(),d=st(),{locStart:c,locEnd:l}=at();function e(){return{name:"addBackslash",visitor:{All(n){var s;let a=(s=n.children)!==null&&s!==void 0?s:n.body;if(a)for(let i=0;i{let{line:o,column:b}=i;return s.indexForLocation({line:o-1,column:b})};return()=>({name:"addOffset",visitor:{All(i){let{start:o,end:b}=i.loc;o.offset=a(o),b.offset=a(b)}}})}function u(n){let{preprocess:s}=Ht(),a;try{a=s(n,{mode:"codemod",plugins:{ast:[e,r(n)]}})}catch(i){let o=p(i);throw o?d(i.message,o):i}return a}function p(n){let{location:s,hash:a}=n;if(s){let{start:i,end:o}=s;return typeof o.line!="number"?{start:i}:s}if(a){let{loc:{last_line:i,last_column:o}}=a;return{start:{line:i,column:o+1}}}}m.exports={parsers:{glimmer:{parse:u,astFormat:"glimmer",locStart:c,locEnd:l}}}}}),Kt=Vt();export{Kt as default}; diff --git a/node_modules/prettier/esm/parser-graphql.mjs b/node_modules/prettier/esm/parser-graphql.mjs new file mode 100644 index 0000000..2a2afa9 --- /dev/null +++ b/node_modules/prettier/esm/parser-graphql.mjs @@ -0,0 +1,15 @@ +var X=Object.getOwnPropertyNames,re=(l,T)=>function(){return l&&(T=(0,l[X(l)[0]])(l=0)),T},K=(l,T)=>function(){return T||(0,l[X(l)[0]])((T={exports:{}}).exports,T),T.exports},L=re({""(){}}),ie=K({"src/common/parser-create-error.js"(l,T){"use strict";L();function a(p,r){let _=new SyntaxError(p+" ("+r.start.line+":"+r.start.column+")");return _.loc=r,_}T.exports=a}}),ae=K({"src/utils/try-combinations.js"(l,T){"use strict";L();function a(){let p;for(var r=arguments.length,_=new Array(r),E=0;E120){for(var t=Math.floor(i/80),s=i%80,y=[],f=0;f"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function e(f){return Function.toString.call(f).indexOf("[native code]")!==-1}function n(f,m){return n=Object.setPrototypeOf||function(d,c){return d.__proto__=c,d},n(f,m)}function t(f){return t=Object.setPrototypeOf?Object.getPrototypeOf:function(o){return o.__proto__||Object.getPrototypeOf(o)},t(f)}var s=function(f){O(o,f);var m=S(o);function o(d,c,v,A,x,b,P){var U,q,V,G,C;k(this,o),C=m.call(this,d);var R=Array.isArray(c)?c.length!==0?c:void 0:c?[c]:void 0,Y=v;if(!Y&&R){var J;Y=(J=R[0].loc)===null||J===void 0?void 0:J.source}var F=A;!F&&R&&(F=R.reduce(function(w,M){return M.loc&&w.push(M.loc.start),w},[])),F&&F.length===0&&(F=void 0);var B;A&&v?B=A.map(function(w){return(0,r.getLocation)(v,w)}):R&&(B=R.reduce(function(w,M){return M.loc&&w.push((0,r.getLocation)(M.loc.source,M.loc.start)),w},[]));var j=P;if(j==null&&b!=null){var Q=b.extensions;(0,a.default)(Q)&&(j=Q)}return Object.defineProperties(h(C),{name:{value:"GraphQLError"},message:{value:d,enumerable:!0,writable:!0},locations:{value:(U=B)!==null&&U!==void 0?U:void 0,enumerable:B!=null},path:{value:x!=null?x:void 0,enumerable:x!=null},nodes:{value:R!=null?R:void 0},source:{value:(q=Y)!==null&&q!==void 0?q:void 0},positions:{value:(V=F)!==null&&V!==void 0?V:void 0},originalError:{value:b},extensions:{value:(G=j)!==null&&G!==void 0?G:void 0,enumerable:j!=null}}),b!=null&&b.stack?(Object.defineProperty(h(C),"stack",{value:b.stack,writable:!0,configurable:!0}),I(C)):(Error.captureStackTrace?Error.captureStackTrace(h(C),o):Object.defineProperty(h(C),"stack",{value:Error().stack,writable:!0,configurable:!0}),C)}return D(o,[{key:"toString",value:function(){return y(this)}},{key:p.SYMBOL_TO_STRING_TAG,get:function(){return"Object"}}]),o}(N(Error));l.GraphQLError=s;function y(f){var m=f.message;if(f.nodes)for(var o=0,d=f.nodes;o",EOF:"",BANG:"!",DOLLAR:"$",AMP:"&",PAREN_L:"(",PAREN_R:")",SPREAD:"...",COLON:":",EQUALS:"=",AT:"@",BRACKET_L:"[",BRACKET_R:"]",BRACE_L:"{",PIPE:"|",BRACE_R:"}",NAME:"Name",INT:"Int",FLOAT:"Float",STRING:"String",BLOCK_STRING:"BlockString",COMMENT:"Comment"});l.TokenKind=T}}),ne=K({"node_modules/graphql/jsutils/inspect.js"(l){"use strict";L(),Object.defineProperty(l,"__esModule",{value:!0}),l.default=E;var T=a(Z());function a(h){return h&&h.__esModule?h:{default:h}}function p(h){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?p=function(i){return typeof i}:p=function(i){return i&&typeof Symbol=="function"&&i.constructor===Symbol&&i!==Symbol.prototype?"symbol":typeof i},p(h)}var r=10,_=2;function E(h){return k(h,[])}function k(h,N){switch(p(h)){case"string":return JSON.stringify(h);case"function":return h.name?"[function ".concat(h.name,"]"):"[function]";case"object":return h===null?"null":g(h,N);default:return String(h)}}function g(h,N){if(N.indexOf(h)!==-1)return"[Circular]";var i=[].concat(N,[h]),u=S(h);if(u!==void 0){var e=u.call(h);if(e!==h)return typeof e=="string"?e:k(e,i)}else if(Array.isArray(h))return O(h,i);return D(h,i)}function D(h,N){var i=Object.keys(h);if(i.length===0)return"{}";if(N.length>_)return"["+I(h)+"]";var u=i.map(function(e){var n=k(h[e],N);return e+": "+n});return"{ "+u.join(", ")+" }"}function O(h,N){if(h.length===0)return"[]";if(N.length>_)return"[Array]";for(var i=Math.min(r,h.length),u=h.length-i,e=[],n=0;n1&&e.push("... ".concat(u," more items")),"["+e.join(", ")+"]"}function S(h){var N=h[String(T.default)];if(typeof N=="function")return N;if(typeof h.inspect=="function")return h.inspect}function I(h){var N=Object.prototype.toString.call(h).replace(/^\[object /,"").replace(/]$/,"");if(N==="Object"&&typeof h.constructor=="function"){var i=h.constructor.name;if(typeof i=="string"&&i!=="")return i}return N}}}),de=K({"node_modules/graphql/jsutils/devAssert.js"(l){"use strict";L(),Object.defineProperty(l,"__esModule",{value:!0}),l.default=T;function T(a,p){var r=Boolean(a);if(!r)throw new Error(p)}}}),he=K({"node_modules/graphql/jsutils/instanceOf.js"(l){"use strict";L(),Object.defineProperty(l,"__esModule",{value:!0}),l.default=void 0;var T=a(ne());function a(r){return r&&r.__esModule?r:{default:r}}var p=function(_,E){return _ instanceof E};l.default=p}}),ve=K({"node_modules/graphql/language/source.js"(l){"use strict";L(),Object.defineProperty(l,"__esModule",{value:!0}),l.isSource=D,l.Source=void 0;var T=H(),a=_(ne()),p=_(de()),r=_(he());function _(O){return O&&O.__esModule?O:{default:O}}function E(O,S){for(var I=0;I1&&arguments[1]!==void 0?arguments[1]:"GraphQL request",h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{line:1,column:1};typeof S=="string"||(0,p.default)(0,"Body must be a string. Received: ".concat((0,a.default)(S),".")),this.body=S,this.name=I,this.locationOffset=h,this.locationOffset.line>0||(0,p.default)(0,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||(0,p.default)(0,"column in locationOffset is 1-indexed and must be positive.")}return k(O,[{key:T.SYMBOL_TO_STRING_TAG,get:function(){return"Source"}}]),O}();l.Source=g;function D(O){return(0,r.default)(O,g)}}}),Te=K({"node_modules/graphql/language/directiveLocation.js"(l){"use strict";L(),Object.defineProperty(l,"__esModule",{value:!0}),l.DirectiveLocation=void 0;var T=Object.freeze({QUERY:"QUERY",MUTATION:"MUTATION",SUBSCRIPTION:"SUBSCRIPTION",FIELD:"FIELD",FRAGMENT_DEFINITION:"FRAGMENT_DEFINITION",FRAGMENT_SPREAD:"FRAGMENT_SPREAD",INLINE_FRAGMENT:"INLINE_FRAGMENT",VARIABLE_DEFINITION:"VARIABLE_DEFINITION",SCHEMA:"SCHEMA",SCALAR:"SCALAR",OBJECT:"OBJECT",FIELD_DEFINITION:"FIELD_DEFINITION",ARGUMENT_DEFINITION:"ARGUMENT_DEFINITION",INTERFACE:"INTERFACE",UNION:"UNION",ENUM:"ENUM",ENUM_VALUE:"ENUM_VALUE",INPUT_OBJECT:"INPUT_OBJECT",INPUT_FIELD_DEFINITION:"INPUT_FIELD_DEFINITION"});l.DirectiveLocation=T}}),_e=K({"node_modules/graphql/language/blockString.js"(l){"use strict";L(),Object.defineProperty(l,"__esModule",{value:!0}),l.dedentBlockStringValue=T,l.getBlockStringIndentation=p,l.printBlockString=r;function T(_){var E=_.split(/\r\n|[\n\r]/g),k=p(_);if(k!==0)for(var g=1;gD&&a(E[O-1]);)--O;return E.slice(D,O).join(` +`)}function a(_){for(var E=0;E<_.length;++E)if(_[E]!==" "&&_[E]!==" ")return!1;return!0}function p(_){for(var E,k=!0,g=!0,D=0,O=null,S=0;S<_.length;++S)switch(_.charCodeAt(S)){case 13:_.charCodeAt(S+1)===10&&++S;case 10:k=!1,g=!0,D=0;break;case 9:case 32:++D;break;default:g&&!k&&(O===null||D1&&arguments[1]!==void 0?arguments[1]:"",k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,g=_.indexOf(` +`)===-1,D=_[0]===" "||_[0]===" ",O=_[_.length-1]==='"',S=_[_.length-1]==="\\",I=!g||O||S||k,h="";return I&&!(g&&D)&&(h+=` +`+E),h+=E?_.replace(/\n/g,` +`+E):_,I&&(h+=` +`),'"""'+h.replace(/"""/g,'\\"""')+'"""'}}}),Ee=K({"node_modules/graphql/language/lexer.js"(l){"use strict";L(),Object.defineProperty(l,"__esModule",{value:!0}),l.isPunctuatorTokenKind=E,l.Lexer=void 0;var T=W(),a=ee(),p=te(),r=_e(),_=function(){function t(y){var f=new a.Token(p.TokenKind.SOF,0,0,0,0,null);this.source=y,this.lastToken=f,this.token=f,this.line=1,this.lineStart=0}var s=t.prototype;return s.advance=function(){this.lastToken=this.token;var f=this.token=this.lookahead();return f},s.lookahead=function(){var f=this.token;if(f.kind!==p.TokenKind.EOF)do{var m;f=(m=f.next)!==null&&m!==void 0?m:f.next=g(this,f)}while(f.kind===p.TokenKind.COMMENT);return f},t}();l.Lexer=_;function E(t){return t===p.TokenKind.BANG||t===p.TokenKind.DOLLAR||t===p.TokenKind.AMP||t===p.TokenKind.PAREN_L||t===p.TokenKind.PAREN_R||t===p.TokenKind.SPREAD||t===p.TokenKind.COLON||t===p.TokenKind.EQUALS||t===p.TokenKind.AT||t===p.TokenKind.BRACKET_L||t===p.TokenKind.BRACKET_R||t===p.TokenKind.BRACE_L||t===p.TokenKind.PIPE||t===p.TokenKind.BRACE_R}function k(t){return isNaN(t)?p.TokenKind.EOF:t<127?JSON.stringify(String.fromCharCode(t)):'"\\u'.concat(("00"+t.toString(16).toUpperCase()).slice(-4),'"')}function g(t,s){for(var y=t.source,f=y.body,m=f.length,o=s.end;o31||d===9));return new a.Token(p.TokenKind.COMMENT,s,c,y,f,m,o.slice(s+1,c))}function S(t,s,y,f,m,o){var d=t.body,c=y,v=s,A=!1;if(c===45&&(c=d.charCodeAt(++v)),c===48){if(c=d.charCodeAt(++v),c>=48&&c<=57)throw(0,T.syntaxError)(t,v,"Invalid number, unexpected digit after 0: ".concat(k(c),"."))}else v=I(t,v,c),c=d.charCodeAt(v);if(c===46&&(A=!0,c=d.charCodeAt(++v),v=I(t,v,c),c=d.charCodeAt(v)),(c===69||c===101)&&(A=!0,c=d.charCodeAt(++v),(c===43||c===45)&&(c=d.charCodeAt(++v)),v=I(t,v,c),c=d.charCodeAt(v)),c===46||n(c))throw(0,T.syntaxError)(t,v,"Invalid number, expected digit but got: ".concat(k(c),"."));return new a.Token(A?p.TokenKind.FLOAT:p.TokenKind.INT,s,v,f,m,o,d.slice(s,v))}function I(t,s,y){var f=t.body,m=s,o=y;if(o>=48&&o<=57){do o=f.charCodeAt(++m);while(o>=48&&o<=57);return m}throw(0,T.syntaxError)(t,m,"Invalid number, expected digit but got: ".concat(k(o),"."))}function h(t,s,y,f,m){for(var o=t.body,d=s+1,c=d,v=0,A="";d=48&&t<=57?t-48:t>=65&&t<=70?t-55:t>=97&&t<=102?t-87:-1}function e(t,s,y,f,m){for(var o=t.body,d=o.length,c=s+1,v=0;c!==d&&!isNaN(v=o.charCodeAt(c))&&(v===95||v>=48&&v<=57||v>=65&&v<=90||v>=97&&v<=122);)++c;return new a.Token(p.TokenKind.NAME,s,c,y,f,m,o.slice(s,c))}function n(t){return t===95||t>=65&&t<=90||t>=97&&t<=122}}}),me=K({"node_modules/graphql/language/parser.js"(l){"use strict";L(),Object.defineProperty(l,"__esModule",{value:!0}),l.parse=g,l.parseValue=D,l.parseType=O,l.Parser=void 0;var T=W(),a=le(),p=ee(),r=te(),_=ve(),E=Te(),k=Ee();function g(N,i){var u=new S(N,i);return u.parseDocument()}function D(N,i){var u=new S(N,i);u.expectToken(r.TokenKind.SOF);var e=u.parseValueLiteral(!1);return u.expectToken(r.TokenKind.EOF),e}function O(N,i){var u=new S(N,i);u.expectToken(r.TokenKind.SOF);var e=u.parseTypeReference();return u.expectToken(r.TokenKind.EOF),e}var S=function(){function N(u,e){var n=(0,_.isSource)(u)?u:new _.Source(u);this._lexer=new k.Lexer(n),this._options=e}var i=N.prototype;return i.parseName=function(){var e=this.expectToken(r.TokenKind.NAME);return{kind:a.Kind.NAME,value:e.value,loc:this.loc(e)}},i.parseDocument=function(){var e=this._lexer.token;return{kind:a.Kind.DOCUMENT,definitions:this.many(r.TokenKind.SOF,this.parseDefinition,r.TokenKind.EOF),loc:this.loc(e)}},i.parseDefinition=function(){if(this.peek(r.TokenKind.NAME))switch(this._lexer.token.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"schema":case"scalar":case"type":case"interface":case"union":case"enum":case"input":case"directive":return this.parseTypeSystemDefinition();case"extend":return this.parseTypeSystemExtension()}else{if(this.peek(r.TokenKind.BRACE_L))return this.parseOperationDefinition();if(this.peekDescription())return this.parseTypeSystemDefinition()}throw this.unexpected()},i.parseOperationDefinition=function(){var e=this._lexer.token;if(this.peek(r.TokenKind.BRACE_L))return{kind:a.Kind.OPERATION_DEFINITION,operation:"query",name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet(),loc:this.loc(e)};var n=this.parseOperationType(),t;return this.peek(r.TokenKind.NAME)&&(t=this.parseName()),{kind:a.Kind.OPERATION_DEFINITION,operation:n,name:t,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(e)}},i.parseOperationType=function(){var e=this.expectToken(r.TokenKind.NAME);switch(e.value){case"query":return"query";case"mutation":return"mutation";case"subscription":return"subscription"}throw this.unexpected(e)},i.parseVariableDefinitions=function(){return this.optionalMany(r.TokenKind.PAREN_L,this.parseVariableDefinition,r.TokenKind.PAREN_R)},i.parseVariableDefinition=function(){var e=this._lexer.token;return{kind:a.Kind.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(r.TokenKind.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(r.TokenKind.EQUALS)?this.parseValueLiteral(!0):void 0,directives:this.parseDirectives(!0),loc:this.loc(e)}},i.parseVariable=function(){var e=this._lexer.token;return this.expectToken(r.TokenKind.DOLLAR),{kind:a.Kind.VARIABLE,name:this.parseName(),loc:this.loc(e)}},i.parseSelectionSet=function(){var e=this._lexer.token;return{kind:a.Kind.SELECTION_SET,selections:this.many(r.TokenKind.BRACE_L,this.parseSelection,r.TokenKind.BRACE_R),loc:this.loc(e)}},i.parseSelection=function(){return this.peek(r.TokenKind.SPREAD)?this.parseFragment():this.parseField()},i.parseField=function(){var e=this._lexer.token,n=this.parseName(),t,s;return this.expectOptionalToken(r.TokenKind.COLON)?(t=n,s=this.parseName()):s=n,{kind:a.Kind.FIELD,alias:t,name:s,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(r.TokenKind.BRACE_L)?this.parseSelectionSet():void 0,loc:this.loc(e)}},i.parseArguments=function(e){var n=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(r.TokenKind.PAREN_L,n,r.TokenKind.PAREN_R)},i.parseArgument=function(){var e=this._lexer.token,n=this.parseName();return this.expectToken(r.TokenKind.COLON),{kind:a.Kind.ARGUMENT,name:n,value:this.parseValueLiteral(!1),loc:this.loc(e)}},i.parseConstArgument=function(){var e=this._lexer.token;return{kind:a.Kind.ARGUMENT,name:this.parseName(),value:(this.expectToken(r.TokenKind.COLON),this.parseValueLiteral(!0)),loc:this.loc(e)}},i.parseFragment=function(){var e=this._lexer.token;this.expectToken(r.TokenKind.SPREAD);var n=this.expectOptionalKeyword("on");return!n&&this.peek(r.TokenKind.NAME)?{kind:a.Kind.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1),loc:this.loc(e)}:{kind:a.Kind.INLINE_FRAGMENT,typeCondition:n?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(e)}},i.parseFragmentDefinition=function(){var e,n=this._lexer.token;return this.expectKeyword("fragment"),((e=this._options)===null||e===void 0?void 0:e.experimentalFragmentVariables)===!0?{kind:a.Kind.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(n)}:{kind:a.Kind.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(n)}},i.parseFragmentName=function(){if(this._lexer.token.value==="on")throw this.unexpected();return this.parseName()},i.parseValueLiteral=function(e){var n=this._lexer.token;switch(n.kind){case r.TokenKind.BRACKET_L:return this.parseList(e);case r.TokenKind.BRACE_L:return this.parseObject(e);case r.TokenKind.INT:return this._lexer.advance(),{kind:a.Kind.INT,value:n.value,loc:this.loc(n)};case r.TokenKind.FLOAT:return this._lexer.advance(),{kind:a.Kind.FLOAT,value:n.value,loc:this.loc(n)};case r.TokenKind.STRING:case r.TokenKind.BLOCK_STRING:return this.parseStringLiteral();case r.TokenKind.NAME:switch(this._lexer.advance(),n.value){case"true":return{kind:a.Kind.BOOLEAN,value:!0,loc:this.loc(n)};case"false":return{kind:a.Kind.BOOLEAN,value:!1,loc:this.loc(n)};case"null":return{kind:a.Kind.NULL,loc:this.loc(n)};default:return{kind:a.Kind.ENUM,value:n.value,loc:this.loc(n)}}case r.TokenKind.DOLLAR:if(!e)return this.parseVariable();break}throw this.unexpected()},i.parseStringLiteral=function(){var e=this._lexer.token;return this._lexer.advance(),{kind:a.Kind.STRING,value:e.value,block:e.kind===r.TokenKind.BLOCK_STRING,loc:this.loc(e)}},i.parseList=function(e){var n=this,t=this._lexer.token,s=function(){return n.parseValueLiteral(e)};return{kind:a.Kind.LIST,values:this.any(r.TokenKind.BRACKET_L,s,r.TokenKind.BRACKET_R),loc:this.loc(t)}},i.parseObject=function(e){var n=this,t=this._lexer.token,s=function(){return n.parseObjectField(e)};return{kind:a.Kind.OBJECT,fields:this.any(r.TokenKind.BRACE_L,s,r.TokenKind.BRACE_R),loc:this.loc(t)}},i.parseObjectField=function(e){var n=this._lexer.token,t=this.parseName();return this.expectToken(r.TokenKind.COLON),{kind:a.Kind.OBJECT_FIELD,name:t,value:this.parseValueLiteral(e),loc:this.loc(n)}},i.parseDirectives=function(e){for(var n=[];this.peek(r.TokenKind.AT);)n.push(this.parseDirective(e));return n},i.parseDirective=function(e){var n=this._lexer.token;return this.expectToken(r.TokenKind.AT),{kind:a.Kind.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e),loc:this.loc(n)}},i.parseTypeReference=function(){var e=this._lexer.token,n;return this.expectOptionalToken(r.TokenKind.BRACKET_L)?(n=this.parseTypeReference(),this.expectToken(r.TokenKind.BRACKET_R),n={kind:a.Kind.LIST_TYPE,type:n,loc:this.loc(e)}):n=this.parseNamedType(),this.expectOptionalToken(r.TokenKind.BANG)?{kind:a.Kind.NON_NULL_TYPE,type:n,loc:this.loc(e)}:n},i.parseNamedType=function(){var e=this._lexer.token;return{kind:a.Kind.NAMED_TYPE,name:this.parseName(),loc:this.loc(e)}},i.parseTypeSystemDefinition=function(){var e=this.peekDescription()?this._lexer.lookahead():this._lexer.token;if(e.kind===r.TokenKind.NAME)switch(e.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}throw this.unexpected(e)},i.peekDescription=function(){return this.peek(r.TokenKind.STRING)||this.peek(r.TokenKind.BLOCK_STRING)},i.parseDescription=function(){if(this.peekDescription())return this.parseStringLiteral()},i.parseSchemaDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("schema");var t=this.parseDirectives(!0),s=this.many(r.TokenKind.BRACE_L,this.parseOperationTypeDefinition,r.TokenKind.BRACE_R);return{kind:a.Kind.SCHEMA_DEFINITION,description:n,directives:t,operationTypes:s,loc:this.loc(e)}},i.parseOperationTypeDefinition=function(){var e=this._lexer.token,n=this.parseOperationType();this.expectToken(r.TokenKind.COLON);var t=this.parseNamedType();return{kind:a.Kind.OPERATION_TYPE_DEFINITION,operation:n,type:t,loc:this.loc(e)}},i.parseScalarTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("scalar");var t=this.parseName(),s=this.parseDirectives(!0);return{kind:a.Kind.SCALAR_TYPE_DEFINITION,description:n,name:t,directives:s,loc:this.loc(e)}},i.parseObjectTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("type");var t=this.parseName(),s=this.parseImplementsInterfaces(),y=this.parseDirectives(!0),f=this.parseFieldsDefinition();return{kind:a.Kind.OBJECT_TYPE_DEFINITION,description:n,name:t,interfaces:s,directives:y,fields:f,loc:this.loc(e)}},i.parseImplementsInterfaces=function(){var e;if(!this.expectOptionalKeyword("implements"))return[];if(((e=this._options)===null||e===void 0?void 0:e.allowLegacySDLImplementsInterfaces)===!0){var n=[];this.expectOptionalToken(r.TokenKind.AMP);do n.push(this.parseNamedType());while(this.expectOptionalToken(r.TokenKind.AMP)||this.peek(r.TokenKind.NAME));return n}return this.delimitedMany(r.TokenKind.AMP,this.parseNamedType)},i.parseFieldsDefinition=function(){var e;return((e=this._options)===null||e===void 0?void 0:e.allowLegacySDLEmptyFields)===!0&&this.peek(r.TokenKind.BRACE_L)&&this._lexer.lookahead().kind===r.TokenKind.BRACE_R?(this._lexer.advance(),this._lexer.advance(),[]):this.optionalMany(r.TokenKind.BRACE_L,this.parseFieldDefinition,r.TokenKind.BRACE_R)},i.parseFieldDefinition=function(){var e=this._lexer.token,n=this.parseDescription(),t=this.parseName(),s=this.parseArgumentDefs();this.expectToken(r.TokenKind.COLON);var y=this.parseTypeReference(),f=this.parseDirectives(!0);return{kind:a.Kind.FIELD_DEFINITION,description:n,name:t,arguments:s,type:y,directives:f,loc:this.loc(e)}},i.parseArgumentDefs=function(){return this.optionalMany(r.TokenKind.PAREN_L,this.parseInputValueDef,r.TokenKind.PAREN_R)},i.parseInputValueDef=function(){var e=this._lexer.token,n=this.parseDescription(),t=this.parseName();this.expectToken(r.TokenKind.COLON);var s=this.parseTypeReference(),y;this.expectOptionalToken(r.TokenKind.EQUALS)&&(y=this.parseValueLiteral(!0));var f=this.parseDirectives(!0);return{kind:a.Kind.INPUT_VALUE_DEFINITION,description:n,name:t,type:s,defaultValue:y,directives:f,loc:this.loc(e)}},i.parseInterfaceTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("interface");var t=this.parseName(),s=this.parseImplementsInterfaces(),y=this.parseDirectives(!0),f=this.parseFieldsDefinition();return{kind:a.Kind.INTERFACE_TYPE_DEFINITION,description:n,name:t,interfaces:s,directives:y,fields:f,loc:this.loc(e)}},i.parseUnionTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("union");var t=this.parseName(),s=this.parseDirectives(!0),y=this.parseUnionMemberTypes();return{kind:a.Kind.UNION_TYPE_DEFINITION,description:n,name:t,directives:s,types:y,loc:this.loc(e)}},i.parseUnionMemberTypes=function(){return this.expectOptionalToken(r.TokenKind.EQUALS)?this.delimitedMany(r.TokenKind.PIPE,this.parseNamedType):[]},i.parseEnumTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("enum");var t=this.parseName(),s=this.parseDirectives(!0),y=this.parseEnumValuesDefinition();return{kind:a.Kind.ENUM_TYPE_DEFINITION,description:n,name:t,directives:s,values:y,loc:this.loc(e)}},i.parseEnumValuesDefinition=function(){return this.optionalMany(r.TokenKind.BRACE_L,this.parseEnumValueDefinition,r.TokenKind.BRACE_R)},i.parseEnumValueDefinition=function(){var e=this._lexer.token,n=this.parseDescription(),t=this.parseName(),s=this.parseDirectives(!0);return{kind:a.Kind.ENUM_VALUE_DEFINITION,description:n,name:t,directives:s,loc:this.loc(e)}},i.parseInputObjectTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("input");var t=this.parseName(),s=this.parseDirectives(!0),y=this.parseInputFieldsDefinition();return{kind:a.Kind.INPUT_OBJECT_TYPE_DEFINITION,description:n,name:t,directives:s,fields:y,loc:this.loc(e)}},i.parseInputFieldsDefinition=function(){return this.optionalMany(r.TokenKind.BRACE_L,this.parseInputValueDef,r.TokenKind.BRACE_R)},i.parseTypeSystemExtension=function(){var e=this._lexer.lookahead();if(e.kind===r.TokenKind.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)},i.parseSchemaExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");var n=this.parseDirectives(!0),t=this.optionalMany(r.TokenKind.BRACE_L,this.parseOperationTypeDefinition,r.TokenKind.BRACE_R);if(n.length===0&&t.length===0)throw this.unexpected();return{kind:a.Kind.SCHEMA_EXTENSION,directives:n,operationTypes:t,loc:this.loc(e)}},i.parseScalarTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");var n=this.parseName(),t=this.parseDirectives(!0);if(t.length===0)throw this.unexpected();return{kind:a.Kind.SCALAR_TYPE_EXTENSION,name:n,directives:t,loc:this.loc(e)}},i.parseObjectTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");var n=this.parseName(),t=this.parseImplementsInterfaces(),s=this.parseDirectives(!0),y=this.parseFieldsDefinition();if(t.length===0&&s.length===0&&y.length===0)throw this.unexpected();return{kind:a.Kind.OBJECT_TYPE_EXTENSION,name:n,interfaces:t,directives:s,fields:y,loc:this.loc(e)}},i.parseInterfaceTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");var n=this.parseName(),t=this.parseImplementsInterfaces(),s=this.parseDirectives(!0),y=this.parseFieldsDefinition();if(t.length===0&&s.length===0&&y.length===0)throw this.unexpected();return{kind:a.Kind.INTERFACE_TYPE_EXTENSION,name:n,interfaces:t,directives:s,fields:y,loc:this.loc(e)}},i.parseUnionTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");var n=this.parseName(),t=this.parseDirectives(!0),s=this.parseUnionMemberTypes();if(t.length===0&&s.length===0)throw this.unexpected();return{kind:a.Kind.UNION_TYPE_EXTENSION,name:n,directives:t,types:s,loc:this.loc(e)}},i.parseEnumTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");var n=this.parseName(),t=this.parseDirectives(!0),s=this.parseEnumValuesDefinition();if(t.length===0&&s.length===0)throw this.unexpected();return{kind:a.Kind.ENUM_TYPE_EXTENSION,name:n,directives:t,values:s,loc:this.loc(e)}},i.parseInputObjectTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");var n=this.parseName(),t=this.parseDirectives(!0),s=this.parseInputFieldsDefinition();if(t.length===0&&s.length===0)throw this.unexpected();return{kind:a.Kind.INPUT_OBJECT_TYPE_EXTENSION,name:n,directives:t,fields:s,loc:this.loc(e)}},i.parseDirectiveDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("directive"),this.expectToken(r.TokenKind.AT);var t=this.parseName(),s=this.parseArgumentDefs(),y=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");var f=this.parseDirectiveLocations();return{kind:a.Kind.DIRECTIVE_DEFINITION,description:n,name:t,arguments:s,repeatable:y,locations:f,loc:this.loc(e)}},i.parseDirectiveLocations=function(){return this.delimitedMany(r.TokenKind.PIPE,this.parseDirectiveLocation)},i.parseDirectiveLocation=function(){var e=this._lexer.token,n=this.parseName();if(E.DirectiveLocation[n.value]!==void 0)return n;throw this.unexpected(e)},i.loc=function(e){var n;if(((n=this._options)===null||n===void 0?void 0:n.noLocation)!==!0)return new p.Location(e,this._lexer.lastToken,this._lexer.source)},i.peek=function(e){return this._lexer.token.kind===e},i.expectToken=function(e){var n=this._lexer.token;if(n.kind===e)return this._lexer.advance(),n;throw(0,T.syntaxError)(this._lexer.source,n.start,"Expected ".concat(h(e),", found ").concat(I(n),"."))},i.expectOptionalToken=function(e){var n=this._lexer.token;if(n.kind===e)return this._lexer.advance(),n},i.expectKeyword=function(e){var n=this._lexer.token;if(n.kind===r.TokenKind.NAME&&n.value===e)this._lexer.advance();else throw(0,T.syntaxError)(this._lexer.source,n.start,'Expected "'.concat(e,'", found ').concat(I(n),"."))},i.expectOptionalKeyword=function(e){var n=this._lexer.token;return n.kind===r.TokenKind.NAME&&n.value===e?(this._lexer.advance(),!0):!1},i.unexpected=function(e){var n=e!=null?e:this._lexer.token;return(0,T.syntaxError)(this._lexer.source,n.start,"Unexpected ".concat(I(n),"."))},i.any=function(e,n,t){this.expectToken(e);for(var s=[];!this.expectOptionalToken(t);)s.push(n.call(this));return s},i.optionalMany=function(e,n,t){if(this.expectOptionalToken(e)){var s=[];do s.push(n.call(this));while(!this.expectOptionalToken(t));return s}return[]},i.many=function(e,n,t){this.expectToken(e);var s=[];do s.push(n.call(this));while(!this.expectOptionalToken(t));return s},i.delimitedMany=function(e,n){this.expectOptionalToken(e);var t=[];do t.push(n.call(this));while(this.expectOptionalToken(e));return t},N}();l.Parser=S;function I(N){var i=N.value;return h(N.kind)+(i!=null?' "'.concat(i,'"'):"")}function h(N){return(0,k.isPunctuatorTokenKind)(N)?'"'.concat(N,'"'):N}}}),ye=K({"src/language-graphql/parser-graphql.js"(l,T){L();var a=ie(),p=ae(),{hasPragma:r}=oe(),{locStart:_,locEnd:E}=se();function k(I){let h=[],{startToken:N}=I.loc,{next:i}=N;for(;i.kind!=="";)i.kind==="Comment"&&(Object.assign(i,{column:i.column-1}),h.push(i)),i=i.next;return h}function g(I){if(I&&typeof I=="object"){delete I.startToken,delete I.endToken,delete I.prev,delete I.next;for(let h in I)g(I[h])}return I}var D={allowLegacySDLImplementsInterfaces:!1,experimentalFragmentVariables:!0};function O(I){let{GraphQLError:h}=$();if(I instanceof h){let{message:N,locations:[i]}=I;return a(N,{start:i})}return I}function S(I){let{parse:h}=me(),{result:N,error:i}=p(()=>h(I,Object.assign({},D)),()=>h(I,Object.assign(Object.assign({},D),{},{allowLegacySDLImplementsInterfaces:!0})));if(!N)throw O(i);return N.comments=k(N),g(N),N}T.exports={parsers:{graphql:{parse:S,astFormat:"graphql",hasPragma:r,locStart:_,locEnd:E}}}}}),ke=ye();export{ke as default}; diff --git a/node_modules/prettier/esm/parser-html.mjs b/node_modules/prettier/esm/parser-html.mjs new file mode 100644 index 0000000..9228daf --- /dev/null +++ b/node_modules/prettier/esm/parser-html.mjs @@ -0,0 +1,36 @@ +var y=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var ue=y((Gl,Wr)=>{var qe=function(e){return e&&e.Math==Math&&e};Wr.exports=qe(typeof globalThis=="object"&&globalThis)||qe(typeof window=="object"&&window)||qe(typeof self=="object"&&self)||qe(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var ae=y((Vl,Yr)=>{Yr.exports=function(e){try{return!!e()}catch{return!0}}});var De=y((Xl,Qr)=>{var vs=ae();Qr.exports=!vs(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var Ie=y((Hl,Kr)=>{var _s=ae();Kr.exports=!_s(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")})});var ce=y((zl,Jr)=>{var Ss=Ie(),Re=Function.prototype.call;Jr.exports=Ss?Re.bind(Re):function(){return Re.apply(Re,arguments)}});var uu=y(ru=>{"use strict";var Zr={}.propertyIsEnumerable,eu=Object.getOwnPropertyDescriptor,ys=eu&&!Zr.call({1:2},1);ru.f=ys?function(r){var u=eu(this,r);return!!u&&u.enumerable}:Zr});var xe=y((Yl,tu)=>{tu.exports=function(e,r){return{enumerable:!(e&1),configurable:!(e&2),writable:!(e&4),value:r}}});var te=y((Ql,iu)=>{var nu=Ie(),su=Function.prototype,rr=su.call,Ts=nu&&su.bind.bind(rr,rr);iu.exports=nu?Ts:function(e){return function(){return rr.apply(e,arguments)}}});var Ae=y((Kl,ou)=>{var au=te(),Bs=au({}.toString),bs=au("".slice);ou.exports=function(e){return bs(Bs(e),8,-1)}});var lu=y((Jl,Du)=>{var ws=te(),Ns=ae(),Os=Ae(),ur=Object,qs=ws("".split);Du.exports=Ns(function(){return!ur("z").propertyIsEnumerable(0)})?function(e){return Os(e)=="String"?qs(e,""):ur(e)}:ur});var Pe=y((Zl,cu)=>{cu.exports=function(e){return e==null}});var tr=y((ec,hu)=>{var Is=Pe(),Rs=TypeError;hu.exports=function(e){if(Is(e))throw Rs("Can't call method on "+e);return e}});var ke=y((rc,pu)=>{var xs=lu(),Ps=tr();pu.exports=function(e){return xs(Ps(e))}});var sr=y((uc,fu)=>{var nr=typeof document=="object"&&document.all,ks=typeof nr>"u"&&nr!==void 0;fu.exports={all:nr,IS_HTMLDDA:ks}});var ee=y((tc,Eu)=>{var du=sr(),Ls=du.all;Eu.exports=du.IS_HTMLDDA?function(e){return typeof e=="function"||e===Ls}:function(e){return typeof e=="function"}});var he=y((nc,gu)=>{var Cu=ee(),mu=sr(),$s=mu.all;gu.exports=mu.IS_HTMLDDA?function(e){return typeof e=="object"?e!==null:Cu(e)||e===$s}:function(e){return typeof e=="object"?e!==null:Cu(e)}});var ve=y((sc,Fu)=>{var ir=ue(),Ms=ee(),js=function(e){return Ms(e)?e:void 0};Fu.exports=function(e,r){return arguments.length<2?js(ir[e]):ir[e]&&ir[e][r]}});var ar=y((ic,Au)=>{var Us=te();Au.exports=Us({}.isPrototypeOf)});var _u=y((ac,vu)=>{var Gs=ve();vu.exports=Gs("navigator","userAgent")||""});var Nu=y((oc,wu)=>{var bu=ue(),or=_u(),Su=bu.process,yu=bu.Deno,Tu=Su&&Su.versions||yu&&yu.version,Bu=Tu&&Tu.v8,ne,Le;Bu&&(ne=Bu.split("."),Le=ne[0]>0&&ne[0]<4?1:+(ne[0]+ne[1]));!Le&&or&&(ne=or.match(/Edge\/(\d+)/),(!ne||ne[1]>=74)&&(ne=or.match(/Chrome\/(\d+)/),ne&&(Le=+ne[1])));wu.exports=Le});var Dr=y((Dc,qu)=>{var Ou=Nu(),Vs=ae();qu.exports=!!Object.getOwnPropertySymbols&&!Vs(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&Ou&&Ou<41})});var lr=y((lc,Iu)=>{var Xs=Dr();Iu.exports=Xs&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var cr=y((cc,Ru)=>{var Hs=ve(),zs=ee(),Ws=ar(),Ys=lr(),Qs=Object;Ru.exports=Ys?function(e){return typeof e=="symbol"}:function(e){var r=Hs("Symbol");return zs(r)&&Ws(r.prototype,Qs(e))}});var $e=y((hc,xu)=>{var Ks=String;xu.exports=function(e){try{return Ks(e)}catch{return"Object"}}});var _e=y((pc,Pu)=>{var Js=ee(),Zs=$e(),ei=TypeError;Pu.exports=function(e){if(Js(e))return e;throw ei(Zs(e)+" is not a function")}});var Me=y((fc,ku)=>{var ri=_e(),ui=Pe();ku.exports=function(e,r){var u=e[r];return ui(u)?void 0:ri(u)}});var $u=y((dc,Lu)=>{var hr=ce(),pr=ee(),fr=he(),ti=TypeError;Lu.exports=function(e,r){var u,n;if(r==="string"&&pr(u=e.toString)&&!fr(n=hr(u,e))||pr(u=e.valueOf)&&!fr(n=hr(u,e))||r!=="string"&&pr(u=e.toString)&&!fr(n=hr(u,e)))return n;throw ti("Can't convert object to primitive value")}});var ju=y((Ec,Mu)=>{Mu.exports=!1});var je=y((Cc,Gu)=>{var Uu=ue(),ni=Object.defineProperty;Gu.exports=function(e,r){try{ni(Uu,e,{value:r,configurable:!0,writable:!0})}catch{Uu[e]=r}return r}});var Ue=y((mc,Xu)=>{var si=ue(),ii=je(),Vu="__core-js_shared__",ai=si[Vu]||ii(Vu,{});Xu.exports=ai});var dr=y((gc,zu)=>{var oi=ju(),Hu=Ue();(zu.exports=function(e,r){return Hu[e]||(Hu[e]=r!==void 0?r:{})})("versions",[]).push({version:"3.26.1",mode:oi?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var Er=y((Fc,Wu)=>{var Di=tr(),li=Object;Wu.exports=function(e){return li(Di(e))}});var le=y((Ac,Yu)=>{var ci=te(),hi=Er(),pi=ci({}.hasOwnProperty);Yu.exports=Object.hasOwn||function(r,u){return pi(hi(r),u)}});var Cr=y((vc,Qu)=>{var fi=te(),di=0,Ei=Math.random(),Ci=fi(1 .toString);Qu.exports=function(e){return"Symbol("+(e===void 0?"":e)+")_"+Ci(++di+Ei,36)}});var fe=y((_c,rt)=>{var mi=ue(),gi=dr(),Ku=le(),Fi=Cr(),Ju=Dr(),et=lr(),Ce=gi("wks"),pe=mi.Symbol,Zu=pe&&pe.for,Ai=et?pe:pe&&pe.withoutSetter||Fi;rt.exports=function(e){if(!Ku(Ce,e)||!(Ju||typeof Ce[e]=="string")){var r="Symbol."+e;Ju&&Ku(pe,e)?Ce[e]=pe[e]:et&&Zu?Ce[e]=Zu(r):Ce[e]=Ai(r)}return Ce[e]}});var st=y((Sc,nt)=>{var vi=ce(),ut=he(),tt=cr(),_i=Me(),Si=$u(),yi=fe(),Ti=TypeError,Bi=yi("toPrimitive");nt.exports=function(e,r){if(!ut(e)||tt(e))return e;var u=_i(e,Bi),n;if(u){if(r===void 0&&(r="default"),n=vi(u,e,r),!ut(n)||tt(n))return n;throw Ti("Can't convert object to primitive value")}return r===void 0&&(r="number"),Si(e,r)}});var Ge=y((yc,it)=>{var bi=st(),wi=cr();it.exports=function(e){var r=bi(e,"string");return wi(r)?r:r+""}});var Dt=y((Tc,ot)=>{var Ni=ue(),at=he(),mr=Ni.document,Oi=at(mr)&&at(mr.createElement);ot.exports=function(e){return Oi?mr.createElement(e):{}}});var gr=y((Bc,lt)=>{var qi=De(),Ii=ae(),Ri=Dt();lt.exports=!qi&&!Ii(function(){return Object.defineProperty(Ri("div"),"a",{get:function(){return 7}}).a!=7})});var Fr=y(ht=>{var xi=De(),Pi=ce(),ki=uu(),Li=xe(),$i=ke(),Mi=Ge(),ji=le(),Ui=gr(),ct=Object.getOwnPropertyDescriptor;ht.f=xi?ct:function(r,u){if(r=$i(r),u=Mi(u),Ui)try{return ct(r,u)}catch{}if(ji(r,u))return Li(!Pi(ki.f,r,u),r[u])}});var ft=y((wc,pt)=>{var Gi=De(),Vi=ae();pt.exports=Gi&&Vi(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var me=y((Nc,dt)=>{var Xi=he(),Hi=String,zi=TypeError;dt.exports=function(e){if(Xi(e))return e;throw zi(Hi(e)+" is not an object")}});var Se=y(Ct=>{var Wi=De(),Yi=gr(),Qi=ft(),Ve=me(),Et=Ge(),Ki=TypeError,Ar=Object.defineProperty,Ji=Object.getOwnPropertyDescriptor,vr="enumerable",_r="configurable",Sr="writable";Ct.f=Wi?Qi?function(r,u,n){if(Ve(r),u=Et(u),Ve(n),typeof r=="function"&&u==="prototype"&&"value"in n&&Sr in n&&!n[Sr]){var D=Ji(r,u);D&&D[Sr]&&(r[u]=n.value,n={configurable:_r in n?n[_r]:D[_r],enumerable:vr in n?n[vr]:D[vr],writable:!1})}return Ar(r,u,n)}:Ar:function(r,u,n){if(Ve(r),u=Et(u),Ve(n),Yi)try{return Ar(r,u,n)}catch{}if("get"in n||"set"in n)throw Ki("Accessors not supported");return"value"in n&&(r[u]=n.value),r}});var yr=y((qc,mt)=>{var Zi=De(),ea=Se(),ra=xe();mt.exports=Zi?function(e,r,u){return ea.f(e,r,ra(1,u))}:function(e,r,u){return e[r]=u,e}});var At=y((Ic,Ft)=>{var Tr=De(),ua=le(),gt=Function.prototype,ta=Tr&&Object.getOwnPropertyDescriptor,Br=ua(gt,"name"),na=Br&&function(){}.name==="something",sa=Br&&(!Tr||Tr&&ta(gt,"name").configurable);Ft.exports={EXISTS:Br,PROPER:na,CONFIGURABLE:sa}});var wr=y((Rc,vt)=>{var ia=te(),aa=ee(),br=Ue(),oa=ia(Function.toString);aa(br.inspectSource)||(br.inspectSource=function(e){return oa(e)});vt.exports=br.inspectSource});var yt=y((xc,St)=>{var Da=ue(),la=ee(),_t=Da.WeakMap;St.exports=la(_t)&&/native code/.test(String(_t))});var bt=y((Pc,Bt)=>{var ca=dr(),ha=Cr(),Tt=ca("keys");Bt.exports=function(e){return Tt[e]||(Tt[e]=ha(e))}});var Nr=y((kc,wt)=>{wt.exports={}});var It=y((Lc,qt)=>{var pa=yt(),Ot=ue(),fa=he(),da=yr(),Or=le(),qr=Ue(),Ea=bt(),Ca=Nr(),Nt="Object already initialized",Ir=Ot.TypeError,ma=Ot.WeakMap,Xe,ye,He,ga=function(e){return He(e)?ye(e):Xe(e,{})},Fa=function(e){return function(r){var u;if(!fa(r)||(u=ye(r)).type!==e)throw Ir("Incompatible receiver, "+e+" required");return u}};pa||qr.state?(se=qr.state||(qr.state=new ma),se.get=se.get,se.has=se.has,se.set=se.set,Xe=function(e,r){if(se.has(e))throw Ir(Nt);return r.facade=e,se.set(e,r),r},ye=function(e){return se.get(e)||{}},He=function(e){return se.has(e)}):(de=Ea("state"),Ca[de]=!0,Xe=function(e,r){if(Or(e,de))throw Ir(Nt);return r.facade=e,da(e,de,r),r},ye=function(e){return Or(e,de)?e[de]:{}},He=function(e){return Or(e,de)});var se,de;qt.exports={set:Xe,get:ye,has:He,enforce:ga,getterFor:Fa}});var Pt=y(($c,xt)=>{var Aa=ae(),va=ee(),ze=le(),Rr=De(),_a=At().CONFIGURABLE,Sa=wr(),Rt=It(),ya=Rt.enforce,Ta=Rt.get,We=Object.defineProperty,Ba=Rr&&!Aa(function(){return We(function(){},"length",{value:8}).length!==8}),ba=String(String).split("String"),wa=xt.exports=function(e,r,u){String(r).slice(0,7)==="Symbol("&&(r="["+String(r).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),u&&u.getter&&(r="get "+r),u&&u.setter&&(r="set "+r),(!ze(e,"name")||_a&&e.name!==r)&&(Rr?We(e,"name",{value:r,configurable:!0}):e.name=r),Ba&&u&&ze(u,"arity")&&e.length!==u.arity&&We(e,"length",{value:u.arity});try{u&&ze(u,"constructor")&&u.constructor?Rr&&We(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch{}var n=ya(e);return ze(n,"source")||(n.source=ba.join(typeof r=="string"?r:"")),e};Function.prototype.toString=wa(function(){return va(this)&&Ta(this).source||Sa(this)},"toString")});var Lt=y((Mc,kt)=>{var Na=ee(),Oa=Se(),qa=Pt(),Ia=je();kt.exports=function(e,r,u,n){n||(n={});var D=n.enumerable,s=n.name!==void 0?n.name:r;if(Na(u)&&qa(u,s,n),n.global)D?e[r]=u:Ia(r,u);else{try{n.unsafe?e[r]&&(D=!0):delete e[r]}catch{}D?e[r]=u:Oa.f(e,r,{value:u,enumerable:!1,configurable:!n.nonConfigurable,writable:!n.nonWritable})}return e}});var Mt=y((jc,$t)=>{var Ra=Math.ceil,xa=Math.floor;$t.exports=Math.trunc||function(r){var u=+r;return(u>0?xa:Ra)(u)}});var xr=y((Uc,jt)=>{var Pa=Mt();jt.exports=function(e){var r=+e;return r!==r||r===0?0:Pa(r)}});var Gt=y((Gc,Ut)=>{var ka=xr(),La=Math.max,$a=Math.min;Ut.exports=function(e,r){var u=ka(e);return u<0?La(u+r,0):$a(u,r)}});var Xt=y((Vc,Vt)=>{var Ma=xr(),ja=Math.min;Vt.exports=function(e){return e>0?ja(Ma(e),9007199254740991):0}});var Te=y((Xc,Ht)=>{var Ua=Xt();Ht.exports=function(e){return Ua(e.length)}});var Yt=y((Hc,Wt)=>{var Ga=ke(),Va=Gt(),Xa=Te(),zt=function(e){return function(r,u,n){var D=Ga(r),s=Xa(D),a=Va(n,s),f;if(e&&u!=u){for(;s>a;)if(f=D[a++],f!=f)return!0}else for(;s>a;a++)if((e||a in D)&&D[a]===u)return e||a||0;return!e&&-1}};Wt.exports={includes:zt(!0),indexOf:zt(!1)}});var Jt=y((zc,Kt)=>{var Ha=te(),Pr=le(),za=ke(),Wa=Yt().indexOf,Ya=Nr(),Qt=Ha([].push);Kt.exports=function(e,r){var u=za(e),n=0,D=[],s;for(s in u)!Pr(Ya,s)&&Pr(u,s)&&Qt(D,s);for(;r.length>n;)Pr(u,s=r[n++])&&(~Wa(D,s)||Qt(D,s));return D}});var en=y((Wc,Zt)=>{Zt.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var un=y(rn=>{var Qa=Jt(),Ka=en(),Ja=Ka.concat("length","prototype");rn.f=Object.getOwnPropertyNames||function(r){return Qa(r,Ja)}});var nn=y(tn=>{tn.f=Object.getOwnPropertySymbols});var an=y((Kc,sn)=>{var Za=ve(),eo=te(),ro=un(),uo=nn(),to=me(),no=eo([].concat);sn.exports=Za("Reflect","ownKeys")||function(r){var u=ro.f(to(r)),n=uo.f;return n?no(u,n(r)):u}});var ln=y((Jc,Dn)=>{var on=le(),so=an(),io=Fr(),ao=Se();Dn.exports=function(e,r,u){for(var n=so(r),D=ao.f,s=io.f,a=0;a{var oo=ae(),Do=ee(),lo=/#|\.prototype\./,Be=function(e,r){var u=ho[co(e)];return u==fo?!0:u==po?!1:Do(r)?oo(r):!!r},co=Be.normalize=function(e){return String(e).replace(lo,".").toLowerCase()},ho=Be.data={},po=Be.NATIVE="N",fo=Be.POLYFILL="P";cn.exports=Be});var Ye=y((e2,pn)=>{var kr=ue(),Eo=Fr().f,Co=yr(),mo=Lt(),go=je(),Fo=ln(),Ao=hn();pn.exports=function(e,r){var u=e.target,n=e.global,D=e.stat,s,a,f,c,v,i;if(n?a=kr:D?a=kr[u]||go(u,{}):a=(kr[u]||{}).prototype,a)for(f in r){if(v=r[f],e.dontCallGetSet?(i=Eo(a,f),c=i&&i.value):c=a[f],s=Ao(n?f:u+(D?".":"#")+f,e.forced),!s&&c!==void 0){if(typeof v==typeof c)continue;Fo(v,c)}(e.sham||c&&c.sham)&&Co(v,"sham",!0),mo(a,f,v,e)}}});var fn=y(()=>{var vo=Ye(),Lr=ue();vo({global:!0,forced:Lr.globalThis!==Lr},{globalThis:Lr})});var $r=y((t2,dn)=>{var _o=Ae();dn.exports=Array.isArray||function(r){return _o(r)=="Array"}});var Cn=y((n2,En)=>{var So=TypeError,yo=9007199254740991;En.exports=function(e){if(e>yo)throw So("Maximum allowed index exceeded");return e}});var gn=y((s2,mn)=>{var To=Ae(),Bo=te();mn.exports=function(e){if(To(e)==="Function")return Bo(e)}});var Mr=y((i2,An)=>{var Fn=gn(),bo=_e(),wo=Ie(),No=Fn(Fn.bind);An.exports=function(e,r){return bo(e),r===void 0?e:wo?No(e,r):function(){return e.apply(r,arguments)}}});var Sn=y((a2,_n)=>{"use strict";var Oo=$r(),qo=Te(),Io=Cn(),Ro=Mr(),vn=function(e,r,u,n,D,s,a,f){for(var c=D,v=0,i=a?Ro(a,f):!1,l,p;v0&&Oo(l)?(p=qo(l),c=vn(e,r,l,p,c,s-1)-1):(Io(c+1),e[c]=l),c++),v++;return c};_n.exports=vn});var Bn=y((o2,Tn)=>{var xo=fe(),Po=xo("toStringTag"),yn={};yn[Po]="z";Tn.exports=String(yn)==="[object z]"});var jr=y((D2,bn)=>{var ko=Bn(),Lo=ee(),Qe=Ae(),$o=fe(),Mo=$o("toStringTag"),jo=Object,Uo=Qe(function(){return arguments}())=="Arguments",Go=function(e,r){try{return e[r]}catch{}};bn.exports=ko?Qe:function(e){var r,u,n;return e===void 0?"Undefined":e===null?"Null":typeof(u=Go(r=jo(e),Mo))=="string"?u:Uo?Qe(r):(n=Qe(r))=="Object"&&Lo(r.callee)?"Arguments":n}});var Rn=y((l2,In)=>{var Vo=te(),Xo=ae(),wn=ee(),Ho=jr(),zo=ve(),Wo=wr(),Nn=function(){},Yo=[],On=zo("Reflect","construct"),Ur=/^\s*(?:class|function)\b/,Qo=Vo(Ur.exec),Ko=!Ur.exec(Nn),be=function(r){if(!wn(r))return!1;try{return On(Nn,Yo,r),!0}catch{return!1}},qn=function(r){if(!wn(r))return!1;switch(Ho(r)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Ko||!!Qo(Ur,Wo(r))}catch{return!0}};qn.sham=!0;In.exports=!On||Xo(function(){var e;return be(be.call)||!be(Object)||!be(function(){e=!0})||e})?qn:be});var Ln=y((c2,kn)=>{var xn=$r(),Jo=Rn(),Zo=he(),eD=fe(),rD=eD("species"),Pn=Array;kn.exports=function(e){var r;return xn(e)&&(r=e.constructor,Jo(r)&&(r===Pn||xn(r.prototype))?r=void 0:Zo(r)&&(r=r[rD],r===null&&(r=void 0))),r===void 0?Pn:r}});var Mn=y((h2,$n)=>{var uD=Ln();$n.exports=function(e,r){return new(uD(e))(r===0?0:r)}});var Gr=y((p2,jn)=>{jn.exports={}});var Gn=y((f2,Un)=>{var DD=fe(),lD=Gr(),cD=DD("iterator"),hD=Array.prototype;Un.exports=function(e){return e!==void 0&&(lD.Array===e||hD[cD]===e)}});var Vr=y((d2,Xn)=>{var pD=jr(),Vn=Me(),fD=Pe(),dD=Gr(),ED=fe(),CD=ED("iterator");Xn.exports=function(e){if(!fD(e))return Vn(e,CD)||Vn(e,"@@iterator")||dD[pD(e)]}});var zn=y((E2,Hn)=>{var mD=ce(),gD=_e(),FD=me(),AD=$e(),vD=Vr(),_D=TypeError;Hn.exports=function(e,r){var u=arguments.length<2?vD(e):r;if(gD(u))return FD(mD(u,e));throw _D(AD(e)+" is not iterable")}});var Qn=y((C2,Yn)=>{var SD=ce(),Wn=me(),yD=Me();Yn.exports=function(e,r,u){var n,D;Wn(e);try{if(n=yD(e,"return"),!n){if(r==="throw")throw u;return u}n=SD(n,e)}catch(s){D=!0,n=s}if(r==="throw")throw u;if(D)throw n;return Wn(n),u}});var rs=y((m2,es)=>{var TD=Mr(),BD=ce(),bD=me(),wD=$e(),ND=Gn(),OD=Te(),Kn=ar(),qD=zn(),ID=Vr(),Jn=Qn(),RD=TypeError,Ke=function(e,r){this.stopped=e,this.result=r},Zn=Ke.prototype;es.exports=function(e,r,u){var n=u&&u.that,D=!!(u&&u.AS_ENTRIES),s=!!(u&&u.IS_RECORD),a=!!(u&&u.IS_ITERATOR),f=!!(u&&u.INTERRUPTED),c=TD(r,n),v,i,l,p,m,C,g,B=function(F){return v&&Jn(v,"normal",F),new Ke(!0,F)},O=function(F){return D?(bD(F),f?c(F[0],F[1],B):c(F[0],F[1])):f?c(F,B):c(F)};if(s)v=e.iterator;else if(a)v=e;else{if(i=ID(e),!i)throw RD(wD(e)+" is not iterable");if(ND(i)){for(l=0,p=OD(e);p>l;l++)if(m=O(e[l]),m&&Kn(Zn,m))return m;return new Ke(!1)}v=qD(e,i)}for(C=s?e.next:v.next;!(g=BD(C,v)).done;){try{m=O(g.value)}catch(F){Jn(v,"throw",F)}if(typeof m=="object"&&m&&Kn(Zn,m))return m}return new Ke(!1)}});var ts=y((g2,us)=>{"use strict";var xD=Ge(),PD=Se(),kD=xe();us.exports=function(e,r,u){var n=xD(r);n in e?PD.f(e,n,kD(0,u)):e[n]=u}});fn();var tD=Ye(),nD=Sn(),sD=_e(),iD=Er(),aD=Te(),oD=Mn();tD({target:"Array",proto:!0},{flatMap:function(r){var u=iD(this),n=aD(u),D;return sD(r),D=oD(u,0),D.length=nD(D,u,u,n,0,1,r,arguments.length>1?arguments[1]:void 0),D}});var LD=Ye(),$D=rs(),MD=ts();LD({target:"Object",stat:!0},{fromEntries:function(r){var u={};return $D(r,function(n,D){MD(u,n,D)},{AS_ENTRIES:!0}),u}});var jD=["cliName","cliCategory","cliDescription"];function UD(e,r){if(e==null)return{};var u=GD(e,r),n,D;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(D=0;D=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function GD(e,r){if(e==null)return{};var u={},n=Object.keys(e),D,s;for(s=0;s=0)&&(u[D]=e[D]);return u}var VD=Object.create,Je=Object.defineProperty,XD=Object.getOwnPropertyDescriptor,Xr=Object.getOwnPropertyNames,HD=Object.getPrototypeOf,zD=Object.prototype.hasOwnProperty,ge=(e,r)=>function(){return e&&(r=(0,e[Xr(e)[0]])(e=0)),r},I=(e,r)=>function(){return r||(0,e[Xr(e)[0]])((r={exports:{}}).exports,r),r.exports},is=(e,r)=>{for(var u in r)Je(e,u,{get:r[u],enumerable:!0})},as=(e,r,u,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let D of Xr(r))!zD.call(e,D)&&D!==u&&Je(e,D,{get:()=>r[D],enumerable:!(n=XD(r,D))||n.enumerable});return e},WD=(e,r,u)=>(u=e!=null?VD(HD(e)):{},as(r||!e||!e.__esModule?Je(u,"default",{value:e,enumerable:!0}):u,e)),os=e=>as(Je({},"__esModule",{value:!0}),e),we,N=ge({""(){we={env:{},argv:[]}}}),Ds=I({"node_modules/angular-html-parser/lib/compiler/src/chars.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0}),e.$EOF=0,e.$BSPACE=8,e.$TAB=9,e.$LF=10,e.$VTAB=11,e.$FF=12,e.$CR=13,e.$SPACE=32,e.$BANG=33,e.$DQ=34,e.$HASH=35,e.$$=36,e.$PERCENT=37,e.$AMPERSAND=38,e.$SQ=39,e.$LPAREN=40,e.$RPAREN=41,e.$STAR=42,e.$PLUS=43,e.$COMMA=44,e.$MINUS=45,e.$PERIOD=46,e.$SLASH=47,e.$COLON=58,e.$SEMICOLON=59,e.$LT=60,e.$EQ=61,e.$GT=62,e.$QUESTION=63,e.$0=48,e.$7=55,e.$9=57,e.$A=65,e.$E=69,e.$F=70,e.$X=88,e.$Z=90,e.$LBRACKET=91,e.$BACKSLASH=92,e.$RBRACKET=93,e.$CARET=94,e.$_=95,e.$a=97,e.$b=98,e.$e=101,e.$f=102,e.$n=110,e.$r=114,e.$t=116,e.$u=117,e.$v=118,e.$x=120,e.$z=122,e.$LBRACE=123,e.$BAR=124,e.$RBRACE=125,e.$NBSP=160,e.$PIPE=124,e.$TILDA=126,e.$AT=64,e.$BT=96;function r(f){return f>=e.$TAB&&f<=e.$SPACE||f==e.$NBSP}e.isWhitespace=r;function u(f){return e.$0<=f&&f<=e.$9}e.isDigit=u;function n(f){return f>=e.$a&&f<=e.$z||f>=e.$A&&f<=e.$Z}e.isAsciiLetter=n;function D(f){return f>=e.$a&&f<=e.$f||f>=e.$A&&f<=e.$F||u(f)}e.isAsciiHexDigit=D;function s(f){return f===e.$LF||f===e.$CR}e.isNewLine=s;function a(f){return e.$0<=f&&f<=e.$7}e.isOctalDigit=a}}),YD=I({"node_modules/angular-html-parser/lib/compiler/src/aot/static_symbol.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=class{constructor(n,D,s){this.filePath=n,this.name=D,this.members=s}assertNoMembers(){if(this.members.length)throw new Error(`Illegal state: symbol without members expected, but got ${JSON.stringify(this)}.`)}};e.StaticSymbol=r;var u=class{constructor(){this.cache=new Map}get(n,D,s){s=s||[];let a=s.length?`.${s.join(".")}`:"",f=`"${n}".${D}${a}`,c=this.cache.get(f);return c||(c=new r(n,D,s),this.cache.set(f,c)),c}};e.StaticSymbolCache=u}}),QD=I({"node_modules/angular-html-parser/lib/compiler/src/util.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=/-+([a-z0-9])/g;function u(o){return o.replace(r,function(){for(var d=arguments.length,h=new Array(d),A=0;Aa(h,this,d))}visitStringMap(o,d){let h={};return Object.keys(o).forEach(A=>{h[A]=a(o[A],this,d)}),h}visitPrimitive(o,d){return o}visitOther(o,d){return o}};e.ValueTransformer=v,e.SyncAsync={assertSync:o=>{if(R(o))throw new Error("Illegal state: value cannot be a promise");return o},then:(o,d)=>R(o)?o.then(d):d(o),all:o=>o.some(R)?Promise.all(o):o};function i(o){throw new Error(`Internal Error: ${o}`)}e.error=i;function l(o,d){let h=Error(o);return h[p]=!0,d&&(h[m]=d),h}e.syntaxError=l;var p="ngSyntaxError",m="ngParseErrors";function C(o){return o[p]}e.isSyntaxError=C;function g(o){return o[m]||[]}e.getParseErrors=g;function B(o){return o.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")}e.escapeRegExp=B;var O=Object.getPrototypeOf({});function F(o){return typeof o=="object"&&o!==null&&Object.getPrototypeOf(o)===O}function w(o){let d="";for(let h=0;h=55296&&A<=56319&&o.length>h+1){let q=o.charCodeAt(h+1);q>=56320&&q<=57343&&(h++,A=(A-55296<<10)+q-56320+65536)}A<=127?d+=String.fromCharCode(A):A<=2047?d+=String.fromCharCode(A>>6&31|192,A&63|128):A<=65535?d+=String.fromCharCode(A>>12|224,A>>6&63|128,A&63|128):A<=2097151&&(d+=String.fromCharCode(A>>18&7|240,A>>12&63|128,A>>6&63|128,A&63|128))}return d}e.utf8Encode=w;function b(o){if(typeof o=="string")return o;if(o instanceof Array)return"["+o.map(b).join(", ")+"]";if(o==null)return""+o;if(o.overriddenName)return`${o.overriddenName}`;if(o.name)return`${o.name}`;if(!o.toString)return"object";let d=o.toString();if(d==null)return""+d;let h=d.indexOf(` +`);return h===-1?d:d.substring(0,h)}e.stringify=b;function M(o){return typeof o=="function"&&o.hasOwnProperty("__forward_ref__")?o():o}e.resolveForwardRef=M;function R(o){return!!o&&typeof o.then=="function"}e.isPromise=R;var U=class{constructor(o){this.full=o;let d=o.split(".");this.major=d[0],this.minor=d[1],this.patch=d.slice(2).join(".")}};e.Version=U;var k=typeof window<"u"&&window,j=typeof self<"u"&&typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&self,L=typeof globalThis<"u"&&globalThis,t=L||k||j;e.global=t}}),KD=I({"node_modules/angular-html-parser/lib/compiler/src/compile_metadata.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=YD(),u=QD(),n=/^(?:(?:\[([^\]]+)\])|(?:\(([^\)]+)\)))|(\@[-\w]+)$/;function D(h){return h.replace(/\W/g,"_")}e.sanitizeIdentifier=D;var s=0;function a(h){if(!h||!h.reference)return null;let A=h.reference;if(A instanceof r.StaticSymbol)return A.name;if(A.__anonymousType)return A.__anonymousType;let q=u.stringify(A);return q.indexOf("(")>=0?(q=`anonymous_${s++}`,A.__anonymousType=q):q=D(q),q}e.identifierName=a;function f(h){let A=h.reference;return A instanceof r.StaticSymbol?A.filePath:`./${u.stringify(A)}`}e.identifierModuleUrl=f;function c(h,A){return`View_${a({reference:h})}_${A}`}e.viewClassName=c;function v(h){return`RenderType_${a({reference:h})}`}e.rendererTypeName=v;function i(h){return`HostView_${a({reference:h})}`}e.hostViewClassName=i;function l(h){return`${a({reference:h})}NgFactory`}e.componentFactoryName=l;var p;(function(h){h[h.Pipe=0]="Pipe",h[h.Directive=1]="Directive",h[h.NgModule=2]="NgModule",h[h.Injectable=3]="Injectable"})(p=e.CompileSummaryKind||(e.CompileSummaryKind={}));function m(h){return h.value!=null?D(h.value):a(h.identifier)}e.tokenName=m;function C(h){return h.identifier!=null?h.identifier.reference:h.value}e.tokenReference=C;var g=class{constructor(){let{moduleUrl:h,styles:A,styleUrls:q}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.moduleUrl=h||null,this.styles=R(A),this.styleUrls=R(q)}};e.CompileStylesheetMetadata=g;var B=class{constructor(h){let{encapsulation:A,template:q,templateUrl:P,htmlAst:G,styles:X,styleUrls:Q,externalStylesheets:H,animations:W,ngContentSelectors:K,interpolation:J,isInline:S,preserveWhitespaces:E}=h;if(this.encapsulation=A,this.template=q,this.templateUrl=P,this.htmlAst=G,this.styles=R(X),this.styleUrls=R(Q),this.externalStylesheets=R(H),this.animations=W?k(W):[],this.ngContentSelectors=K||[],J&&J.length!=2)throw new Error("'interpolation' should have a start and an end symbol.");this.interpolation=J,this.isInline=S,this.preserveWhitespaces=E}toSummary(){return{ngContentSelectors:this.ngContentSelectors,encapsulation:this.encapsulation,styles:this.styles,animations:this.animations}}};e.CompileTemplateMetadata=B;var O=class{static create(h){let{isHost:A,type:q,isComponent:P,selector:G,exportAs:X,changeDetection:Q,inputs:H,outputs:W,host:K,providers:J,viewProviders:S,queries:E,guards:_,viewQueries:T,entryComponents:x,template:$,componentViewType:V,rendererType:z,componentFactory:Y}=h,ie={},Ee={},er={};K!=null&&Object.keys(K).forEach(Z=>{let re=K[Z],oe=Z.match(n);oe===null?er[Z]=re:oe[1]!=null?Ee[oe[1]]=re:oe[2]!=null&&(ie[oe[2]]=re)});let Fe={};H!=null&&H.forEach(Z=>{let re=u.splitAtColon(Z,[Z,Z]);Fe[re[0]]=re[1]});let Oe={};return W!=null&&W.forEach(Z=>{let re=u.splitAtColon(Z,[Z,Z]);Oe[re[0]]=re[1]}),new O({isHost:A,type:q,isComponent:!!P,selector:G,exportAs:X,changeDetection:Q,inputs:Fe,outputs:Oe,hostListeners:ie,hostProperties:Ee,hostAttributes:er,providers:J,viewProviders:S,queries:E,guards:_,viewQueries:T,entryComponents:x,template:$,componentViewType:V,rendererType:z,componentFactory:Y})}constructor(h){let{isHost:A,type:q,isComponent:P,selector:G,exportAs:X,changeDetection:Q,inputs:H,outputs:W,hostListeners:K,hostProperties:J,hostAttributes:S,providers:E,viewProviders:_,queries:T,guards:x,viewQueries:$,entryComponents:V,template:z,componentViewType:Y,rendererType:ie,componentFactory:Ee}=h;this.isHost=!!A,this.type=q,this.isComponent=P,this.selector=G,this.exportAs=X,this.changeDetection=Q,this.inputs=H,this.outputs=W,this.hostListeners=K,this.hostProperties=J,this.hostAttributes=S,this.providers=R(E),this.viewProviders=R(_),this.queries=R(T),this.guards=x,this.viewQueries=R($),this.entryComponents=R(V),this.template=z,this.componentViewType=Y,this.rendererType=ie,this.componentFactory=Ee}toSummary(){return{summaryKind:p.Directive,type:this.type,isComponent:this.isComponent,selector:this.selector,exportAs:this.exportAs,inputs:this.inputs,outputs:this.outputs,hostListeners:this.hostListeners,hostProperties:this.hostProperties,hostAttributes:this.hostAttributes,providers:this.providers,viewProviders:this.viewProviders,queries:this.queries,guards:this.guards,viewQueries:this.viewQueries,entryComponents:this.entryComponents,changeDetection:this.changeDetection,template:this.template&&this.template.toSummary(),componentViewType:this.componentViewType,rendererType:this.rendererType,componentFactory:this.componentFactory}}};e.CompileDirectiveMetadata=O;var F=class{constructor(h){let{type:A,name:q,pure:P}=h;this.type=A,this.name=q,this.pure=!!P}toSummary(){return{summaryKind:p.Pipe,type:this.type,name:this.name,pure:this.pure}}};e.CompilePipeMetadata=F;var w=class{};e.CompileShallowModuleMetadata=w;var b=class{constructor(h){let{type:A,providers:q,declaredDirectives:P,exportedDirectives:G,declaredPipes:X,exportedPipes:Q,entryComponents:H,bootstrapComponents:W,importedModules:K,exportedModules:J,schemas:S,transitiveModule:E,id:_}=h;this.type=A||null,this.declaredDirectives=R(P),this.exportedDirectives=R(G),this.declaredPipes=R(X),this.exportedPipes=R(Q),this.providers=R(q),this.entryComponents=R(H),this.bootstrapComponents=R(W),this.importedModules=R(K),this.exportedModules=R(J),this.schemas=R(S),this.id=_||null,this.transitiveModule=E||null}toSummary(){let h=this.transitiveModule;return{summaryKind:p.NgModule,type:this.type,entryComponents:h.entryComponents,providers:h.providers,modules:h.modules,exportedDirectives:h.exportedDirectives,exportedPipes:h.exportedPipes}}};e.CompileNgModuleMetadata=b;var M=class{constructor(){this.directivesSet=new Set,this.directives=[],this.exportedDirectivesSet=new Set,this.exportedDirectives=[],this.pipesSet=new Set,this.pipes=[],this.exportedPipesSet=new Set,this.exportedPipes=[],this.modulesSet=new Set,this.modules=[],this.entryComponentsSet=new Set,this.entryComponents=[],this.providers=[]}addProvider(h,A){this.providers.push({provider:h,module:A})}addDirective(h){this.directivesSet.has(h.reference)||(this.directivesSet.add(h.reference),this.directives.push(h))}addExportedDirective(h){this.exportedDirectivesSet.has(h.reference)||(this.exportedDirectivesSet.add(h.reference),this.exportedDirectives.push(h))}addPipe(h){this.pipesSet.has(h.reference)||(this.pipesSet.add(h.reference),this.pipes.push(h))}addExportedPipe(h){this.exportedPipesSet.has(h.reference)||(this.exportedPipesSet.add(h.reference),this.exportedPipes.push(h))}addModule(h){this.modulesSet.has(h.reference)||(this.modulesSet.add(h.reference),this.modules.push(h))}addEntryComponent(h){this.entryComponentsSet.has(h.componentType)||(this.entryComponentsSet.add(h.componentType),this.entryComponents.push(h))}};e.TransitiveCompileNgModuleMetadata=M;function R(h){return h||[]}var U=class{constructor(h,A){let{useClass:q,useValue:P,useExisting:G,useFactory:X,deps:Q,multi:H}=A;this.token=h,this.useClass=q||null,this.useValue=P,this.useExisting=G,this.useFactory=X||null,this.dependencies=Q||null,this.multi=!!H}};e.ProviderMeta=U;function k(h){return h.reduce((A,q)=>{let P=Array.isArray(q)?k(q):q;return A.concat(P)},[])}e.flatten=k;function j(h){return h.replace(/(\w+:\/\/[\w:-]+)?(\/+)?/,"ng:///")}function L(h,A,q){let P;return q.isInline?A.type.reference instanceof r.StaticSymbol?P=`${A.type.reference.filePath}.${A.type.reference.name}.html`:P=`${a(h)}/${a(A.type)}.html`:P=q.templateUrl,A.type.reference instanceof r.StaticSymbol?P:j(P)}e.templateSourceUrl=L;function t(h,A){let q=h.moduleUrl.split(/\/\\/g),P=q[q.length-1];return j(`css/${A}${P}.ngstyle.js`)}e.sharedStylesheetJitUrl=t;function o(h){return j(`${a(h.type)}/module.ngfactory.js`)}e.ngModuleJitUrl=o;function d(h,A){return j(`${a(h)}/${a(A.type)}.ngfactory.js`)}e.templateJitUrl=d}}),Ne=I({"node_modules/angular-html-parser/lib/compiler/src/parse_util.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ds(),u=KD(),n=class{constructor(i,l,p,m){this.file=i,this.offset=l,this.line=p,this.col=m}toString(){return this.offset!=null?`${this.file.url}@${this.line}:${this.col}`:this.file.url}moveBy(i){let l=this.file.content,p=l.length,m=this.offset,C=this.line,g=this.col;for(;m>0&&i<0;)if(m--,i++,l.charCodeAt(m)==r.$LF){C--;let O=l.substr(0,m-1).lastIndexOf(String.fromCharCode(r.$LF));g=O>0?m-O:m}else g--;for(;m0;){let B=l.charCodeAt(m);m++,i--,B==r.$LF?(C++,g=0):g++}return new n(this.file,m,C,g)}getContext(i,l){let p=this.file.content,m=this.offset;if(m!=null){m>p.length-1&&(m=p.length-1);let C=m,g=0,B=0;for(;g0&&(m--,g++,!(p[m]==` +`&&++B==l)););for(g=0,B=0;g2&&arguments[2]!==void 0?arguments[2]:null;this.start=i,this.end=l,this.details=p}toString(){return this.start.file.content.substring(this.start.offset,this.end.offset)}};e.ParseSourceSpan=s,e.EMPTY_PARSE_LOCATION=new n(new D("",""),0,0,0),e.EMPTY_SOURCE_SPAN=new s(e.EMPTY_PARSE_LOCATION,e.EMPTY_PARSE_LOCATION);var a;(function(i){i[i.WARNING=0]="WARNING",i[i.ERROR=1]="ERROR"})(a=e.ParseErrorLevel||(e.ParseErrorLevel={}));var f=class{constructor(i,l){let p=arguments.length>2&&arguments[2]!==void 0?arguments[2]:a.ERROR;this.span=i,this.msg=l,this.level=p}contextualMessage(){let i=this.span.start.getContext(100,3);return i?`${this.msg} ("${i.before}[${a[this.level]} ->]${i.after}")`:this.msg}toString(){let i=this.span.details?`, ${this.span.details}`:"";return`${this.contextualMessage()}: ${this.span.start}${i}`}};e.ParseError=f;function c(i,l){let p=u.identifierModuleUrl(l),m=p!=null?`in ${i} ${u.identifierName(l)} in ${p}`:`in ${i} ${u.identifierName(l)}`,C=new D("",m);return new s(new n(C,-1,-1,-1),new n(C,-1,-1,-1))}e.typeSourceSpan=c;function v(i,l,p){let m=`in ${i} ${l} in ${p}`,C=new D("",m);return new s(new n(C,-1,-1,-1),new n(C,-1,-1,-1))}e.r3JitTypeSourceSpan=v}}),JD=I({"src/utils/front-matter/parse.js"(e,r){"use strict";N();var u=new RegExp("^(?-{3}|\\+{3})(?[^\\n]*)\\n(?:|(?.*?)\\n)(?\\k|\\.{3})[^\\S\\n]*(?:\\n|$)","s");function n(D){let s=D.match(u);if(!s)return{content:D};let{startDelimiter:a,language:f,value:c="",endDelimiter:v}=s.groups,i=f.trim()||"yaml";if(a==="+++"&&(i="toml"),i!=="yaml"&&a!==v)return{content:D};let[l]=s;return{frontMatter:{type:"front-matter",lang:i,value:c,startDelimiter:a,endDelimiter:v,raw:l.replace(/\n$/,"")},content:l.replace(/[^\n]/g," ")+D.slice(l.length)}}r.exports=n}}),ls=I({"src/utils/get-last.js"(e,r){"use strict";N();var u=n=>n[n.length-1];r.exports=u}}),ZD=I({"src/common/parser-create-error.js"(e,r){"use strict";N();function u(n,D){let s=new SyntaxError(n+" ("+D.start.line+":"+D.start.column+")");return s.loc=D,s}r.exports=u}}),cs={};is(cs,{default:()=>el});function el(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var rl=ge({"node_modules/escape-string-regexp/index.js"(){N()}}),hs=I({"node_modules/semver/internal/debug.js"(e,r){N();var u=typeof we=="object"&&we.env&&we.env.NODE_DEBUG&&/\bsemver\b/i.test(we.env.NODE_DEBUG)?function(){for(var n=arguments.length,D=new Array(n),s=0;s{};r.exports=u}}),ps=I({"node_modules/semver/internal/constants.js"(e,r){N();var u="2.0.0",n=256,D=Number.MAX_SAFE_INTEGER||9007199254740991,s=16;r.exports={SEMVER_SPEC_VERSION:u,MAX_LENGTH:n,MAX_SAFE_INTEGER:D,MAX_SAFE_COMPONENT_LENGTH:s}}}),ul=I({"node_modules/semver/internal/re.js"(e,r){N();var{MAX_SAFE_COMPONENT_LENGTH:u}=ps(),n=hs();e=r.exports={};var D=e.re=[],s=e.src=[],a=e.t={},f=0,c=(v,i,l)=>{let p=f++;n(v,p,i),a[v]=p,s[p]=i,D[p]=new RegExp(i,l?"g":void 0)};c("NUMERICIDENTIFIER","0|[1-9]\\d*"),c("NUMERICIDENTIFIERLOOSE","[0-9]+"),c("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),c("MAINVERSION",`(${s[a.NUMERICIDENTIFIER]})\\.(${s[a.NUMERICIDENTIFIER]})\\.(${s[a.NUMERICIDENTIFIER]})`),c("MAINVERSIONLOOSE",`(${s[a.NUMERICIDENTIFIERLOOSE]})\\.(${s[a.NUMERICIDENTIFIERLOOSE]})\\.(${s[a.NUMERICIDENTIFIERLOOSE]})`),c("PRERELEASEIDENTIFIER",`(?:${s[a.NUMERICIDENTIFIER]}|${s[a.NONNUMERICIDENTIFIER]})`),c("PRERELEASEIDENTIFIERLOOSE",`(?:${s[a.NUMERICIDENTIFIERLOOSE]}|${s[a.NONNUMERICIDENTIFIER]})`),c("PRERELEASE",`(?:-(${s[a.PRERELEASEIDENTIFIER]}(?:\\.${s[a.PRERELEASEIDENTIFIER]})*))`),c("PRERELEASELOOSE",`(?:-?(${s[a.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${s[a.PRERELEASEIDENTIFIERLOOSE]})*))`),c("BUILDIDENTIFIER","[0-9A-Za-z-]+"),c("BUILD",`(?:\\+(${s[a.BUILDIDENTIFIER]}(?:\\.${s[a.BUILDIDENTIFIER]})*))`),c("FULLPLAIN",`v?${s[a.MAINVERSION]}${s[a.PRERELEASE]}?${s[a.BUILD]}?`),c("FULL",`^${s[a.FULLPLAIN]}$`),c("LOOSEPLAIN",`[v=\\s]*${s[a.MAINVERSIONLOOSE]}${s[a.PRERELEASELOOSE]}?${s[a.BUILD]}?`),c("LOOSE",`^${s[a.LOOSEPLAIN]}$`),c("GTLT","((?:<|>)?=?)"),c("XRANGEIDENTIFIERLOOSE",`${s[a.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),c("XRANGEIDENTIFIER",`${s[a.NUMERICIDENTIFIER]}|x|X|\\*`),c("XRANGEPLAIN",`[v=\\s]*(${s[a.XRANGEIDENTIFIER]})(?:\\.(${s[a.XRANGEIDENTIFIER]})(?:\\.(${s[a.XRANGEIDENTIFIER]})(?:${s[a.PRERELEASE]})?${s[a.BUILD]}?)?)?`),c("XRANGEPLAINLOOSE",`[v=\\s]*(${s[a.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[a.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[a.XRANGEIDENTIFIERLOOSE]})(?:${s[a.PRERELEASELOOSE]})?${s[a.BUILD]}?)?)?`),c("XRANGE",`^${s[a.GTLT]}\\s*${s[a.XRANGEPLAIN]}$`),c("XRANGELOOSE",`^${s[a.GTLT]}\\s*${s[a.XRANGEPLAINLOOSE]}$`),c("COERCE",`(^|[^\\d])(\\d{1,${u}})(?:\\.(\\d{1,${u}}))?(?:\\.(\\d{1,${u}}))?(?:$|[^\\d])`),c("COERCERTL",s[a.COERCE],!0),c("LONETILDE","(?:~>?)"),c("TILDETRIM",`(\\s*)${s[a.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",c("TILDE",`^${s[a.LONETILDE]}${s[a.XRANGEPLAIN]}$`),c("TILDELOOSE",`^${s[a.LONETILDE]}${s[a.XRANGEPLAINLOOSE]}$`),c("LONECARET","(?:\\^)"),c("CARETTRIM",`(\\s*)${s[a.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",c("CARET",`^${s[a.LONECARET]}${s[a.XRANGEPLAIN]}$`),c("CARETLOOSE",`^${s[a.LONECARET]}${s[a.XRANGEPLAINLOOSE]}$`),c("COMPARATORLOOSE",`^${s[a.GTLT]}\\s*(${s[a.LOOSEPLAIN]})$|^$`),c("COMPARATOR",`^${s[a.GTLT]}\\s*(${s[a.FULLPLAIN]})$|^$`),c("COMPARATORTRIM",`(\\s*)${s[a.GTLT]}\\s*(${s[a.LOOSEPLAIN]}|${s[a.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",c("HYPHENRANGE",`^\\s*(${s[a.XRANGEPLAIN]})\\s+-\\s+(${s[a.XRANGEPLAIN]})\\s*$`),c("HYPHENRANGELOOSE",`^\\s*(${s[a.XRANGEPLAINLOOSE]})\\s+-\\s+(${s[a.XRANGEPLAINLOOSE]})\\s*$`),c("STAR","(<|>)?=?\\s*\\*"),c("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),c("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}}),tl=I({"node_modules/semver/internal/parse-options.js"(e,r){N();var u=["includePrerelease","loose","rtl"],n=D=>D?typeof D!="object"?{loose:!0}:u.filter(s=>D[s]).reduce((s,a)=>(s[a]=!0,s),{}):{};r.exports=n}}),nl=I({"node_modules/semver/internal/identifiers.js"(e,r){N();var u=/^[0-9]+$/,n=(s,a)=>{let f=u.test(s),c=u.test(a);return f&&c&&(s=+s,a=+a),s===a?0:f&&!c?-1:c&&!f?1:sn(a,s);r.exports={compareIdentifiers:n,rcompareIdentifiers:D}}}),sl=I({"node_modules/semver/classes/semver.js"(e,r){N();var u=hs(),{MAX_LENGTH:n,MAX_SAFE_INTEGER:D}=ps(),{re:s,t:a}=ul(),f=tl(),{compareIdentifiers:c}=nl(),v=class{constructor(i,l){if(l=f(l),i instanceof v){if(i.loose===!!l.loose&&i.includePrerelease===!!l.includePrerelease)return i;i=i.version}else if(typeof i!="string")throw new TypeError(`Invalid Version: ${i}`);if(i.length>n)throw new TypeError(`version is longer than ${n} characters`);u("SemVer",i,l),this.options=l,this.loose=!!l.loose,this.includePrerelease=!!l.includePrerelease;let p=i.trim().match(l.loose?s[a.LOOSE]:s[a.FULL]);if(!p)throw new TypeError(`Invalid Version: ${i}`);if(this.raw=i,this.major=+p[1],this.minor=+p[2],this.patch=+p[3],this.major>D||this.major<0)throw new TypeError("Invalid major version");if(this.minor>D||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>D||this.patch<0)throw new TypeError("Invalid patch version");p[4]?this.prerelease=p[4].split(".").map(m=>{if(/^[0-9]+$/.test(m)){let C=+m;if(C>=0&&C=0;)typeof this.prerelease[p]=="number"&&(this.prerelease[p]++,p=-2);p===-1&&this.prerelease.push(0)}l&&(c(this.prerelease[0],l)===0?isNaN(this.prerelease[1])&&(this.prerelease=[l,0]):this.prerelease=[l,0]);break;default:throw new Error(`invalid increment argument: ${i}`)}return this.format(),this.raw=this.version,this}};r.exports=v}}),Hr=I({"node_modules/semver/functions/compare.js"(e,r){N();var u=sl(),n=(D,s,a)=>new u(D,a).compare(new u(s,a));r.exports=n}}),il=I({"node_modules/semver/functions/lt.js"(e,r){N();var u=Hr(),n=(D,s,a)=>u(D,s,a)<0;r.exports=n}}),al=I({"node_modules/semver/functions/gte.js"(e,r){N();var u=Hr(),n=(D,s,a)=>u(D,s,a)>=0;r.exports=n}}),ol=I({"src/utils/arrayify.js"(e,r){"use strict";N(),r.exports=(u,n)=>Object.entries(u).map(D=>{let[s,a]=D;return Object.assign({[n]:s},a)})}}),Dl=I({"package.json"(e,r){r.exports={version:"2.8.8"}}}),ll=I({"node_modules/outdent/lib/index.js"(e,r){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0}),e.outdent=void 0;function u(){for(var F=[],w=0;wtypeof l=="string"||typeof l=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",since:"1.16.0",description:"JavaScript"},{value:"babel-flow",since:"1.16.0",description:"Flow"},{value:"babel-ts",since:"2.0.0",description:"TypeScript"},{value:"typescript",since:"1.4.0",description:"TypeScript"},{value:"acorn",since:"2.6.0",description:"JavaScript"},{value:"espree",since:"2.2.0",description:"JavaScript"},{value:"meriyah",since:"2.2.0",description:"JavaScript"},{value:"css",since:"1.7.1",description:"CSS"},{value:"less",since:"1.7.1",description:"Less"},{value:"scss",since:"1.7.1",description:"SCSS"},{value:"json",since:"1.5.0",description:"JSON"},{value:"json5",since:"1.13.0",description:"JSON5"},{value:"json-stringify",since:"1.13.0",description:"JSON.stringify"},{value:"graphql",since:"1.5.0",description:"GraphQL"},{value:"markdown",since:"1.8.0",description:"Markdown"},{value:"mdx",since:"1.15.0",description:"MDX"},{value:"vue",since:"1.10.0",description:"Vue"},{value:"yaml",since:"1.14.0",description:"YAML"},{value:"glimmer",since:"2.3.0",description:"Ember / Handlebars"},{value:"html",since:"1.15.0",description:"HTML"},{value:"angular",since:"1.15.0",description:"Angular"},{value:"lwc",since:"1.17.0",description:"Lightning Web Components"}]},plugins:{since:"1.10.0",type:"path",array:!0,default:[{value:[]}],category:c,description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:l=>typeof l=="string"||typeof l=="object",cliName:"plugin",cliCategory:n},pluginSearchDirs:{since:"1.13.0",type:"path",array:!0,default:[{value:[]}],category:c,description:u` + Custom directory that contains prettier plugins in node_modules subdirectory. + Overrides default behavior when plugins are searched relatively to the location of Prettier. + Multiple values are accepted. + `,exception:l=>typeof l=="string"||typeof l=="object",cliName:"plugin-search-dir",cliCategory:n},printWidth:{since:"0.0.0",category:c,type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},rangeEnd:{since:"1.4.0",category:v,type:"int",default:Number.POSITIVE_INFINITY,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:u` + Format code ending at a given character offset (exclusive). + The range will extend forwards to the end of the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:D},rangeStart:{since:"1.4.0",category:v,type:"int",default:0,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:u` + Format code starting at a given character offset. + The range will extend backwards to the start of the first line containing the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:D},requirePragma:{since:"1.7.0",category:v,type:"boolean",default:!1,description:u` + Require either '@prettier' or '@format' to be present in the file's first docblock comment + in order for it to be formatted. + `,cliCategory:a},tabWidth:{type:"int",category:c,default:2,description:"Number of spaces per indentation level.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},useTabs:{since:"1.0.0",category:c,type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{since:"2.1.0",category:c,type:"choice",default:[{since:"2.1.0",value:"auto"}],description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};r.exports={CATEGORY_CONFIG:n,CATEGORY_EDITOR:D,CATEGORY_FORMAT:s,CATEGORY_OTHER:a,CATEGORY_OUTPUT:f,CATEGORY_GLOBAL:c,CATEGORY_SPECIAL:v,options:i}}}),hl=I({"src/main/support.js"(e,r){"use strict";N();var u={compare:Hr(),lt:il(),gte:al()},n=ol(),D=Dl().version,s=cl().options;function a(){let{plugins:c=[],showUnreleased:v=!1,showDeprecated:i=!1,showInternal:l=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},p=D.split("-",1)[0],m=c.flatMap(F=>F.languages||[]).filter(g),C=n(Object.assign({},...c.map(F=>{let{options:w}=F;return w}),s),"name").filter(F=>g(F)&&B(F)).sort((F,w)=>F.name===w.name?0:F.name{F=Object.assign({},F),Array.isArray(F.default)&&(F.default=F.default.length===1?F.default[0].value:F.default.filter(g).sort((b,M)=>u.compare(M.since,b.since))[0].value),Array.isArray(F.choices)&&(F.choices=F.choices.filter(b=>g(b)&&B(b)),F.name==="parser"&&f(F,m,c));let w=Object.fromEntries(c.filter(b=>b.defaultOptions&&b.defaultOptions[F.name]!==void 0).map(b=>[b.name,b.defaultOptions[F.name]]));return Object.assign(Object.assign({},F),{},{pluginDefaults:w})});return{languages:m,options:C};function g(F){return v||!("since"in F)||F.since&&u.gte(p,F.since)}function B(F){return i||!("deprecated"in F)||F.deprecated&&u.lt(p,F.deprecated)}function O(F){if(l)return F;let{cliName:w,cliCategory:b,cliDescription:M}=F;return UD(F,jD)}}function f(c,v,i){let l=new Set(c.choices.map(p=>p.value));for(let p of v)if(p.parsers){for(let m of p.parsers)if(!l.has(m)){l.add(m);let C=i.find(B=>B.parsers&&B.parsers[m]),g=p.name;C&&C.name&&(g+=` (plugin: ${C.name})`),c.choices.push({value:m,description:g})}}}r.exports={getSupportInfo:a}}}),pl=I({"src/utils/is-non-empty-array.js"(e,r){"use strict";N();function u(n){return Array.isArray(n)&&n.length>0}r.exports=u}});function fl(){let{onlyFirst:e=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=["[\\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(r,e?void 0:"g")}var dl=ge({"node_modules/strip-ansi/node_modules/ansi-regex/index.js"(){N()}});function El(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(fl(),"")}var Cl=ge({"node_modules/strip-ansi/index.js"(){N(),dl()}});function ml(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var gl=ge({"node_modules/is-fullwidth-code-point/index.js"(){N()}}),Fl=I({"node_modules/emoji-regex/index.js"(e,r){"use strict";N(),r.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\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])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\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\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\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-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*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\u26A7\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-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\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[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}}}),fs={};is(fs,{default:()=>Al});function Al(e){if(typeof e!="string"||e.length===0||(e=El(e),e.length===0))return 0;e=e.replace((0,ds.default)()," ");let r=0;for(let u=0;u=127&&n<=159||n>=768&&n<=879||(n>65535&&u++,r+=ml(n)?2:1)}return r}var ds,vl=ge({"node_modules/string-width/index.js"(){N(),Cl(),gl(),ds=WD(Fl())}}),_l=I({"src/utils/get-string-width.js"(e,r){"use strict";N();var u=(vl(),os(fs)).default,n=/[^\x20-\x7F]/;function D(s){return s?n.test(s)?u(s):s.length:0}r.exports=D}}),zr=I({"src/utils/text/skip.js"(e,r){"use strict";N();function u(f){return(c,v,i)=>{let l=i&&i.backwards;if(v===!1)return!1;let{length:p}=c,m=v;for(;m>=0&&mS[S.length-2];function B(S){return(E,_,T)=>{let x=T&&T.backwards;if(_===!1)return!1;let{length:$}=E,V=_;for(;V>=0&&V<$;){let z=E.charAt(V);if(S instanceof RegExp){if(!S.test(z))return V}else if(!S.includes(z))return V;x?V--:V++}return V===-1||V===$?V:!1}}function O(S,E){let _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},T=c(S,_.backwards?E-1:E,_),x=m(S,T,_);return T!==x}function F(S,E,_){for(let T=E;T<_;++T)if(S.charAt(T)===` +`)return!0;return!1}function w(S,E,_){let T=_(E)-1;T=c(S,T,{backwards:!0}),T=m(S,T,{backwards:!0}),T=c(S,T,{backwards:!0});let x=m(S,T,{backwards:!0});return T!==x}function b(S,E){let _=null,T=E;for(;T!==_;)_=T,T=v(S,T),T=l(S,T),T=c(S,T);return T=p(S,T),T=m(S,T),T!==!1&&O(S,T)}function M(S,E,_){return b(S,_(E))}function R(S,E,_){return C(S,_(E))}function U(S,E,_){return S.charAt(R(S,E,_))}function k(S,E){let _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return c(S,_.backwards?E-1:E,_)!==E}function j(S,E){let _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,T=0;for(let x=_;xY?$:x}return V}function o(S,E){let _=S.slice(1,-1),T=E.parser==="json"||E.parser==="json5"&&E.quoteProps==="preserve"&&!E.singleQuote?'"':E.__isInHtmlAttribute?"'":t(_,E.singleQuote?"'":'"').quote;return d(_,T,!(E.parser==="css"||E.parser==="less"||E.parser==="scss"||E.__embeddedInHtml))}function d(S,E,_){let T=E==='"'?"'":'"',x=/\\(.)|(["'])/gs,$=S.replace(x,(V,z,Y)=>z===T?z:Y===E?"\\"+Y:Y||(_&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(z)?z:"\\"+z));return E+$+E}function h(S){return S.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(\d)/,"$1$2$3").replace(/^([+-]?[\d.]+)e[+-]?0+$/,"$1").replace(/^([+-])?\./,"$10.").replace(/(\.\d+?)0+(?=e|$)/,"$1").replace(/\.(?=e|$)/,"")}function A(S,E){let _=S.match(new RegExp(`(${u(E)})+`,"g"));return _===null?0:_.reduce((T,x)=>Math.max(T,x.length/E.length),0)}function q(S,E){let _=S.match(new RegExp(`(${u(E)})+`,"g"));if(_===null)return 0;let T=new Map,x=0;for(let $ of _){let V=$.length/E.length;T.set(V,!0),V>x&&(x=V)}for(let $=1;${let{name:$}=x;return $.toLowerCase()===S})||_.find(x=>{let{aliases:$}=x;return Array.isArray($)&&$.includes(S)})||_.find(x=>{let{extensions:$}=x;return Array.isArray($)&&$.includes(`.${S}`)});return T&&T.parsers[0]}function W(S){return S&&S.type==="front-matter"}function K(S){let E=new WeakMap;return function(_){return E.has(_)||E.set(_,Symbol(S)),E.get(_)}}function J(S){let E=S.type||S.kind||"(unknown type)",_=String(S.name||S.id&&(typeof S.id=="object"?S.id.name:S.id)||S.key&&(typeof S.key=="object"?S.key.name:S.key)||S.value&&(typeof S.value=="object"?"":String(S.value))||S.operator||"");return _.length>20&&(_=_.slice(0,19)+"\u2026"),E+(_?" "+_:"")}r.exports={inferParserByLanguage:H,getStringWidth:a,getMaxContinuousCount:A,getMinNotPresentContinuousCount:q,getPenultimate:g,getLast:n,getNextNonSpaceNonCommentCharacterIndexWithStartIndex:C,getNextNonSpaceNonCommentCharacterIndex:R,getNextNonSpaceNonCommentCharacter:U,skip:B,skipWhitespace:f,skipSpaces:c,skipToLineEnd:v,skipEverythingButNewLine:i,skipInlineComment:l,skipTrailingComment:p,skipNewline:m,isNextLineEmptyAfterIndex:b,isNextLineEmpty:M,isPreviousLineEmpty:w,hasNewline:O,hasNewlineInRange:F,hasSpaces:k,getAlignmentSize:j,getIndentSize:L,getPreferredQuote:t,printString:o,printNumber:h,makeString:d,addLeadingComment:G,addDanglingComment:X,addTrailingComment:Q,isFrontMatterNode:W,isNonEmptyArray:s,createGroupIdMapper:K}}}),Tl=I({"vendors/html-tag-names.json"(e,r){r.exports={htmlTagNames:["a","abbr","acronym","address","applet","area","article","aside","audio","b","base","basefont","bdi","bdo","bgsound","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","command","content","data","datalist","dd","del","details","dfn","dialog","dir","div","dl","dt","element","em","embed","fieldset","figcaption","figure","font","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","image","img","input","ins","isindex","kbd","keygen","label","legend","li","link","listing","main","map","mark","marquee","math","menu","menuitem","meta","meter","multicol","nav","nextid","nobr","noembed","noframes","noscript","object","ol","optgroup","option","output","p","param","picture","plaintext","pre","progress","q","rb","rbc","rp","rt","rtc","ruby","s","samp","script","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","tt","u","ul","var","video","wbr","xmp"]}}}),gs=I({"src/language-html/utils/array-to-map.js"(e,r){"use strict";N();function u(n){let D=Object.create(null);for(let s of n)D[s]=!0;return D}r.exports=u}}),Bl=I({"src/language-html/utils/html-tag-names.js"(e,r){"use strict";N();var{htmlTagNames:u}=Tl(),n=gs(),D=n(u);r.exports=D}}),bl=I({"vendors/html-element-attributes.json"(e,r){r.exports={htmlElementAttributes:{"*":["accesskey","autocapitalize","autofocus","class","contenteditable","dir","draggable","enterkeyhint","hidden","id","inputmode","is","itemid","itemprop","itemref","itemscope","itemtype","lang","nonce","slot","spellcheck","style","tabindex","title","translate"],a:["charset","coords","download","href","hreflang","name","ping","referrerpolicy","rel","rev","shape","target","type"],applet:["align","alt","archive","code","codebase","height","hspace","name","object","vspace","width"],area:["alt","coords","download","href","hreflang","nohref","ping","referrerpolicy","rel","shape","target","type"],audio:["autoplay","controls","crossorigin","loop","muted","preload","src"],base:["href","target"],basefont:["color","face","size"],blockquote:["cite"],body:["alink","background","bgcolor","link","text","vlink"],br:["clear"],button:["disabled","form","formaction","formenctype","formmethod","formnovalidate","formtarget","name","type","value"],canvas:["height","width"],caption:["align"],col:["align","char","charoff","span","valign","width"],colgroup:["align","char","charoff","span","valign","width"],data:["value"],del:["cite","datetime"],details:["open"],dialog:["open"],dir:["compact"],div:["align"],dl:["compact"],embed:["height","src","type","width"],fieldset:["disabled","form","name"],font:["color","face","size"],form:["accept","accept-charset","action","autocomplete","enctype","method","name","novalidate","target"],frame:["frameborder","longdesc","marginheight","marginwidth","name","noresize","scrolling","src"],frameset:["cols","rows"],h1:["align"],h2:["align"],h3:["align"],h4:["align"],h5:["align"],h6:["align"],head:["profile"],hr:["align","noshade","size","width"],html:["manifest","version"],iframe:["align","allow","allowfullscreen","allowpaymentrequest","allowusermedia","frameborder","height","loading","longdesc","marginheight","marginwidth","name","referrerpolicy","sandbox","scrolling","src","srcdoc","width"],img:["align","alt","border","crossorigin","decoding","height","hspace","ismap","loading","longdesc","name","referrerpolicy","sizes","src","srcset","usemap","vspace","width"],input:["accept","align","alt","autocomplete","checked","dirname","disabled","form","formaction","formenctype","formmethod","formnovalidate","formtarget","height","ismap","list","max","maxlength","min","minlength","multiple","name","pattern","placeholder","readonly","required","size","src","step","type","usemap","value","width"],ins:["cite","datetime"],isindex:["prompt"],label:["for","form"],legend:["align"],li:["type","value"],link:["as","charset","color","crossorigin","disabled","href","hreflang","imagesizes","imagesrcset","integrity","media","referrerpolicy","rel","rev","sizes","target","type"],map:["name"],menu:["compact"],meta:["charset","content","http-equiv","media","name","scheme"],meter:["high","low","max","min","optimum","value"],object:["align","archive","border","classid","codebase","codetype","data","declare","form","height","hspace","name","standby","type","typemustmatch","usemap","vspace","width"],ol:["compact","reversed","start","type"],optgroup:["disabled","label"],option:["disabled","label","selected","value"],output:["for","form","name"],p:["align"],param:["name","type","value","valuetype"],pre:["width"],progress:["max","value"],q:["cite"],script:["async","charset","crossorigin","defer","integrity","language","nomodule","referrerpolicy","src","type"],select:["autocomplete","disabled","form","multiple","name","required","size"],slot:["name"],source:["height","media","sizes","src","srcset","type","width"],style:["media","type"],table:["align","bgcolor","border","cellpadding","cellspacing","frame","rules","summary","width"],tbody:["align","char","charoff","valign"],td:["abbr","align","axis","bgcolor","char","charoff","colspan","headers","height","nowrap","rowspan","scope","valign","width"],textarea:["autocomplete","cols","dirname","disabled","form","maxlength","minlength","name","placeholder","readonly","required","rows","wrap"],tfoot:["align","char","charoff","valign"],th:["abbr","align","axis","bgcolor","char","charoff","colspan","headers","height","nowrap","rowspan","scope","valign","width"],thead:["align","char","charoff","valign"],time:["datetime"],tr:["align","bgcolor","char","charoff","valign"],track:["default","kind","label","src","srclang"],ul:["compact","type"],video:["autoplay","controls","crossorigin","height","loop","muted","playsinline","poster","preload","src","width"]}}}}),wl=I({"src/language-html/utils/map-object.js"(e,r){"use strict";N();function u(n,D){let s=Object.create(null);for(let[a,f]of Object.entries(n))s[a]=D(f,a);return s}r.exports=u}}),Nl=I({"src/language-html/utils/html-elements-attributes.js"(e,r){"use strict";N();var{htmlElementAttributes:u}=bl(),n=wl(),D=gs(),s=n(u,D);r.exports=s}}),Ol=I({"src/language-html/utils/is-unknown-namespace.js"(e,r){"use strict";N();function u(n){return n.type==="element"&&!n.hasExplicitNamespace&&!["html","svg"].includes(n.namespace)}r.exports=u}}),ql=I({"src/language-html/pragma.js"(e,r){"use strict";N();function u(D){return/^\s*/.test(D)}function n(D){return` + +`+D.replace(/^\s*\n/,"")}r.exports={hasPragma:u,insertPragma:n}}}),Il=I({"src/language-html/ast.js"(e,r){"use strict";N();var u={attrs:!0,children:!0},n=new Set(["parent"]),D=class{constructor(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};for(let f of new Set([...n,...Object.keys(a)]))this.setProperty(f,a[f])}setProperty(a,f){if(this[a]!==f){if(a in u&&(f=f.map(c=>this.createChild(c))),!n.has(a)){this[a]=f;return}Object.defineProperty(this,a,{value:f,enumerable:!1,configurable:!0})}}map(a){let f;for(let c in u){let v=this[c];if(v){let i=s(v,l=>l.map(a));f!==v&&(f||(f=new D({parent:this.parent})),f.setProperty(c,i))}}if(f)for(let c in this)c in u||(f[c]=this[c]);return a(f||this)}walk(a){for(let f in u){let c=this[f];if(c)for(let v=0;v[a.fullName,a.value]))}};function s(a,f){let c=a.map(f);return c.some((v,i)=>v!==a[i])?c:a}r.exports={Node:D}}}),Rl=I({"src/language-html/conditional-comment.js"(e,r){"use strict";N();var{ParseSourceSpan:u}=Ne(),n=[{regex:/^(\[if([^\]]*)]>)(.*?){try{return[!0,v(m,g).children]}catch{return[!1,[{type:"text",value:m,sourceSpan:new u(g,B)}]]}})();return{type:"ieConditionalComment",complete:O,children:F,condition:p.trim().replace(/\s+/g," "),sourceSpan:c.sourceSpan,startSourceSpan:new u(c.sourceSpan.start,g),endSourceSpan:new u(B,c.sourceSpan.end)}}function a(c,v,i){let[,l]=i;return{type:"ieConditionalStartComment",condition:l.trim().replace(/\s+/g," "),sourceSpan:c.sourceSpan}}function f(c){return{type:"ieConditionalEndComment",sourceSpan:c.sourceSpan}}r.exports={parseIeConditionalComment:D}}}),xl=I({"src/language-html/loc.js"(e,r){"use strict";N();function u(D){return D.sourceSpan.start.offset}function n(D){return D.sourceSpan.end.offset}r.exports={locStart:u,locEnd:n}}}),Ze=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/tags.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r;(function(c){c[c.RAW_TEXT=0]="RAW_TEXT",c[c.ESCAPABLE_RAW_TEXT=1]="ESCAPABLE_RAW_TEXT",c[c.PARSABLE_DATA=2]="PARSABLE_DATA"})(r=e.TagContentType||(e.TagContentType={}));function u(c){if(c[0]!=":")return[null,c];let v=c.indexOf(":",1);if(v==-1)throw new Error(`Unsupported format "${c}" expecting ":namespace:name"`);return[c.slice(1,v),c.slice(v+1)]}e.splitNsName=u;function n(c){return u(c)[1]==="ng-container"}e.isNgContainer=n;function D(c){return u(c)[1]==="ng-content"}e.isNgContent=D;function s(c){return u(c)[1]==="ng-template"}e.isNgTemplate=s;function a(c){return c===null?null:u(c)[0]}e.getNsPrefix=a;function f(c,v){return c?`:${c}:${v}`:v}e.mergeNsAndName=f,e.NAMED_ENTITIES={Aacute:"\xC1",aacute:"\xE1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223E",acd:"\u223F",acE:"\u223E\u0333",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",Acy:"\u0410",acy:"\u0430",AElig:"\xC6",aelig:"\xE6",af:"\u2061",Afr:"\u{1D504}",afr:"\u{1D51E}",Agrave:"\xC0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03B1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2A3F",AMP:"&",amp:"&",And:"\u2A53",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",Aogon:"\u0104",aogon:"\u0105",Aopf:"\u{1D538}",aopf:"\u{1D552}",ap:"\u2248",apacir:"\u2A6F",apE:"\u2A70",ape:"\u224A",apid:"\u224B",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224A",Aring:"\xC5",aring:"\xE5",Ascr:"\u{1D49C}",ascr:"\u{1D4B6}",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224D",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",Backslash:"\u2216",Barv:"\u2AE7",barvee:"\u22BD",Barwed:"\u2306",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",Because:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",Bernoullis:"\u212C",Beta:"\u0392",beta:"\u03B2",beth:"\u2136",between:"\u226C",Bfr:"\u{1D505}",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bNot:"\u2AED",bnot:"\u2310",Bopf:"\u{1D539}",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxbox:"\u29C9",boxDL:"\u2557",boxDl:"\u2556",boxdL:"\u2555",boxdl:"\u2510",boxDR:"\u2554",boxDr:"\u2553",boxdR:"\u2552",boxdr:"\u250C",boxH:"\u2550",boxh:"\u2500",boxHD:"\u2566",boxHd:"\u2564",boxhD:"\u2565",boxhd:"\u252C",boxHU:"\u2569",boxHu:"\u2567",boxhU:"\u2568",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxUL:"\u255D",boxUl:"\u255C",boxuL:"\u255B",boxul:"\u2518",boxUR:"\u255A",boxUr:"\u2559",boxuR:"\u2558",boxur:"\u2514",boxV:"\u2551",boxv:"\u2502",boxVH:"\u256C",boxVh:"\u256B",boxvH:"\u256A",boxvh:"\u253C",boxVL:"\u2563",boxVl:"\u2562",boxvL:"\u2561",boxvl:"\u2524",boxVR:"\u2560",boxVr:"\u255F",boxvR:"\u255E",boxvr:"\u251C",bprime:"\u2035",Breve:"\u02D8",breve:"\u02D8",brvbar:"\xA6",Bscr:"\u212C",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",Bumpeq:"\u224E",bumpeq:"\u224F",Cacute:"\u0106",cacute:"\u0107",Cap:"\u22D2",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",CapitalDifferentialD:"\u2145",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",Cayleys:"\u212D",ccaps:"\u2A4D",Ccaron:"\u010C",ccaron:"\u010D",Ccedil:"\xC7",ccedil:"\xE7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2A4C",ccupssm:"\u2A50",Cdot:"\u010A",cdot:"\u010B",cedil:"\xB8",Cedilla:"\xB8",cemptyv:"\u29B2",cent:"\xA2",CenterDot:"\xB7",centerdot:"\xB7",Cfr:"\u212D",cfr:"\u{1D520}",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03A7",chi:"\u03C7",cir:"\u25CB",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",CircleDot:"\u2299",circledR:"\xAE",circledS:"\u24C8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cirE:"\u29C3",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",Colon:"\u2237",colon:":",Colone:"\u2A74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",Congruent:"\u2261",Conint:"\u222F",conint:"\u222E",ContourIntegral:"\u222E",Copf:"\u2102",copf:"\u{1D554}",coprod:"\u2210",Coproduct:"\u2210",COPY:"\xA9",copy:"\xA9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21B5",Cross:"\u2A2F",cross:"\u2717",Cscr:"\u{1D49E}",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",Cup:"\u22D3",cup:"\u222A",cupbrcap:"\u2A48",CupCap:"\u224D",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",Dagger:"\u2021",dagger:"\u2020",daleth:"\u2138",Darr:"\u21A1",dArr:"\u21D3",darr:"\u2193",dash:"\u2010",Dashv:"\u2AE4",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",Dcaron:"\u010E",dcaron:"\u010F",Dcy:"\u0414",dcy:"\u0434",DD:"\u2145",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",DDotrahd:"\u2911",ddotseq:"\u2A77",deg:"\xB0",Del:"\u2207",Delta:"\u0394",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",Dfr:"\u{1D507}",dfr:"\u{1D521}",dHar:"\u2965",dharl:"\u21C3",dharr:"\u21C2",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",diam:"\u22C4",Diamond:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",DifferentialD:"\u2146",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",Dopf:"\u{1D53B}",dopf:"\u{1D555}",Dot:"\xA8",dot:"\u02D9",DotDot:"\u20DC",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",Downarrow:"\u21D3",downarrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",Dscr:"\u{1D49F}",dscr:"\u{1D4B9}",DScy:"\u0405",dscy:"\u0455",dsol:"\u29F6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",DZcy:"\u040F",dzcy:"\u045F",dzigrarr:"\u27FF",Eacute:"\xC9",eacute:"\xE9",easter:"\u2A6E",Ecaron:"\u011A",ecaron:"\u011B",ecir:"\u2256",Ecirc:"\xCA",ecirc:"\xEA",ecolon:"\u2255",Ecy:"\u042D",ecy:"\u044D",eDDot:"\u2A77",Edot:"\u0116",eDot:"\u2251",edot:"\u0117",ee:"\u2147",efDot:"\u2252",Efr:"\u{1D508}",efr:"\u{1D522}",eg:"\u2A9A",Egrave:"\xC8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",Element:"\u2208",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25FB",emptyv:"\u2205",EmptyVerySmallSquare:"\u25AB",emsp:"\u2003",emsp13:"\u2004",emsp14:"\u2005",ENG:"\u014A",eng:"\u014B",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\u{1D53C}",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",Equal:"\u2A75",equals:"=",EqualTilde:"\u2242",equest:"\u225F",Equilibrium:"\u21CC",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erarr:"\u2971",erDot:"\u2253",Escr:"\u2130",escr:"\u212F",esdot:"\u2250",Esim:"\u2A73",esim:"\u2242",Eta:"\u0397",eta:"\u03B7",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",ExponentialE:"\u2147",exponentiale:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",Ffr:"\u{1D509}",ffr:"\u{1D523}",filig:"\uFB01",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",Fopf:"\u{1D53D}",fopf:"\u{1D557}",ForAll:"\u2200",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",Fouriertrf:"\u2131",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",Fscr:"\u2131",fscr:"\u{1D4BB}",gacute:"\u01F5",Gamma:"\u0393",gamma:"\u03B3",Gammad:"\u03DC",gammad:"\u03DD",gap:"\u2A86",Gbreve:"\u011E",gbreve:"\u011F",Gcedil:"\u0122",Gcirc:"\u011C",gcirc:"\u011D",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",gE:"\u2267",ge:"\u2265",gEl:"\u2A8C",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",Gfr:"\u{1D50A}",gfr:"\u{1D524}",Gg:"\u22D9",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gl:"\u2277",gla:"\u2AA5",glE:"\u2A92",glj:"\u2AA4",gnap:"\u2A8A",gnapprox:"\u2A8A",gnE:"\u2269",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",Gopf:"\u{1D53E}",gopf:"\u{1D558}",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",GT:">",Gt:"\u226B",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",Hacek:"\u02C7",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",HARDcy:"\u042A",hardcy:"\u044A",hArr:"\u21D4",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",Hat:"^",hbar:"\u210F",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",Hfr:"\u210C",hfr:"\u{1D525}",HilbertSpace:"\u210B",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",Hopf:"\u210D",hopf:"\u{1D559}",horbar:"\u2015",HorizontalLine:"\u2500",Hscr:"\u210B",hscr:"\u{1D4BD}",hslash:"\u210F",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224E",HumpEqual:"\u224F",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xCD",iacute:"\xED",ic:"\u2063",Icirc:"\xCE",icirc:"\xEE",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",Ifr:"\u2111",ifr:"\u{1D526}",Igrave:"\xCC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Im:"\u2111",Imacr:"\u012A",imacr:"\u012B",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",Implies:"\u21D2",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",Int:"\u222C",int:"\u222B",intcal:"\u22BA",integers:"\u2124",Integral:"\u222B",intercal:"\u22BA",Intersection:"\u22C2",intlarhk:"\u2A17",intprod:"\u2A3C",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012E",iogon:"\u012F",Iopf:"\u{1D540}",iopf:"\u{1D55A}",Iota:"\u0399",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",Iscr:"\u2110",iscr:"\u{1D4BE}",isin:"\u2208",isindot:"\u22F5",isinE:"\u22F9",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xCF",iuml:"\xEF",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\u{1D50D}",jfr:"\u{1D527}",jmath:"\u0237",Jopf:"\u{1D541}",jopf:"\u{1D55B}",Jscr:"\u{1D4A5}",jscr:"\u{1D4BF}",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041A",kcy:"\u043A",Kfr:"\u{1D50E}",kfr:"\u{1D528}",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040C",kjcy:"\u045C",Kopf:"\u{1D542}",kopf:"\u{1D55C}",Kscr:"\u{1D4A6}",kscr:"\u{1D4C0}",lAarr:"\u21DA",Lacute:"\u0139",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",Lambda:"\u039B",lambda:"\u03BB",Lang:"\u27EA",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",Laplacetrf:"\u2112",laquo:"\xAB",Larr:"\u219E",lArr:"\u21D0",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",lAtail:"\u291B",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lBarr:"\u290E",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",Lcaron:"\u013D",lcaron:"\u013E",Lcedil:"\u013B",lcedil:"\u013C",lceil:"\u2308",lcub:"{",Lcy:"\u041B",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",lE:"\u2266",le:"\u2264",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",Leftarrow:"\u21D0",leftarrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",leftarrowtail:"\u21A2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",LeftRightArrow:"\u2194",Leftrightarrow:"\u21D4",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",leftthreetimes:"\u22CB",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",lEg:"\u2A8B",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2AA1",lesssim:"\u2272",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",lfisht:"\u297C",lfloor:"\u230A",Lfr:"\u{1D50F}",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lHar:"\u2962",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",Ll:"\u22D8",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",Lleftarrow:"\u21DA",llhard:"\u296B",lltri:"\u25FA",Lmidot:"\u013F",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnap:"\u2A89",lnapprox:"\u2A89",lnE:"\u2268",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",LongLeftArrow:"\u27F5",Longleftarrow:"\u27F8",longleftarrow:"\u27F5",LongLeftRightArrow:"\u27F7",Longleftrightarrow:"\u27FA",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",LongRightArrow:"\u27F6",Longrightarrow:"\u27F9",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",Lopf:"\u{1D543}",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",Lscr:"\u2112",lscr:"\u{1D4C1}",Lsh:"\u21B0",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",Lstrok:"\u0141",lstrok:"\u0142",LT:"<",Lt:"\u226A",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",ltrPar:"\u2996",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",Mcy:"\u041C",mcy:"\u043C",mdash:"\u2014",mDDot:"\u223A",measuredangle:"\u2221",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",MinusPlus:"\u2213",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",Mopf:"\u{1D544}",mopf:"\u{1D55E}",mp:"\u2213",Mscr:"\u2133",mscr:"\u{1D4C2}",mstpos:"\u223E",Mu:"\u039C",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",Ncy:"\u041D",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",nearhk:"\u2924",neArr:"\u21D7",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,nexist:"\u2204",nexists:"\u2204",Nfr:"\u{1D511}",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",nGg:"\u22D9\u0338",ngsim:"\u2275",nGt:"\u226B\u20D2",ngt:"\u226F",ngtr:"\u226F",nGtv:"\u226B\u0338",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",NJcy:"\u040A",njcy:"\u045A",nlArr:"\u21CD",nlarr:"\u219A",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nLeftarrow:"\u21CD",nleftarrow:"\u219A",nLeftrightarrow:"\u21CE",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nLl:"\u22D8\u0338",nlsim:"\u2274",nLt:"\u226A\u20D2",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nLtv:"\u226A\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",nopf:"\u{1D55F}",Not:"\u2AEC",not:"\xAC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",notin:"\u2209",notindot:"\u22F5\u0338",notinE:"\u22F9\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nRightarrow:"\u21CF",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",Nscr:"\u{1D4A9}",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",Ntilde:"\xD1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",Nu:"\u039D",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224D\u20D2",nVDash:"\u22AF",nVdash:"\u22AE",nvDash:"\u22AD",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvHarr:"\u2904",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwarhk:"\u2923",nwArr:"\u21D6",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xD3",oacute:"\xF3",oast:"\u229B",ocir:"\u229A",Ocirc:"\xD4",ocirc:"\xF4",Ocy:"\u041E",ocy:"\u043E",odash:"\u229D",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29BF",Ofr:"\u{1D512}",ofr:"\u{1D52C}",ogon:"\u02DB",Ograve:"\xD2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",Omacr:"\u014C",omacr:"\u014D",Omega:"\u03A9",omega:"\u03C9",Omicron:"\u039F",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",Oopf:"\u{1D546}",oopf:"\u{1D560}",opar:"\u29B7",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",operp:"\u29B9",oplus:"\u2295",Or:"\u2A54",or:"\u2228",orarr:"\u21BB",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oS:"\u24C8",Oscr:"\u{1D4AA}",oscr:"\u2134",Oslash:"\xD8",oslash:"\xF8",osol:"\u2298",Otilde:"\xD5",otilde:"\xF5",Otimes:"\u2A37",otimes:"\u2297",otimesas:"\u2A36",Ouml:"\xD6",ouml:"\xF6",ovbar:"\u233D",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",par:"\u2225",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",PartialD:"\u2202",Pcy:"\u041F",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",Pfr:"\u{1D513}",pfr:"\u{1D52D}",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",Pi:"\u03A0",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",PlusMinus:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",Poincareplane:"\u210C",pointint:"\u2A15",Popf:"\u2119",popf:"\u{1D561}",pound:"\xA3",Pr:"\u2ABB",pr:"\u227A",prap:"\u2AB7",prcue:"\u227C",prE:"\u2AB3",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",Prime:"\u2033",prime:"\u2032",primes:"\u2119",prnap:"\u2AB9",prnE:"\u2AB5",prnsim:"\u22E8",prod:"\u220F",Product:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",Proportion:"\u2237",Proportional:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",Pscr:"\u{1D4AB}",pscr:"\u{1D4C5}",Psi:"\u03A8",psi:"\u03C8",puncsp:"\u2008",Qfr:"\u{1D514}",qfr:"\u{1D52E}",qint:"\u2A0C",Qopf:"\u211A",qopf:"\u{1D562}",qprime:"\u2057",Qscr:"\u{1D4AC}",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",QUOT:'"',quot:'"',rAarr:"\u21DB",race:"\u223D\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",Rang:"\u27EB",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",Rarr:"\u21A0",rArr:"\u21D2",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21A3",rarrw:"\u219D",rAtail:"\u291C",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",RBarr:"\u2910",rBarr:"\u290F",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",Re:"\u211C",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",REG:"\xAE",reg:"\xAE",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",rfisht:"\u297D",rfloor:"\u230B",Rfr:"\u211C",rfr:"\u{1D52F}",rHar:"\u2964",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",Rightarrow:"\u21D2",rightarrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",rightarrowtail:"\u21A3",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",rightthreetimes:"\u22CC",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",Ropf:"\u211D",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",Rrightarrow:"\u21DB",rsaquo:"\u203A",Rscr:"\u211B",rscr:"\u{1D4C7}",Rsh:"\u21B1",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",RuleDelayed:"\u29F4",ruluhar:"\u2968",rx:"\u211E",Sacute:"\u015A",sacute:"\u015B",sbquo:"\u201A",Sc:"\u2ABC",sc:"\u227B",scap:"\u2AB8",Scaron:"\u0160",scaron:"\u0161",sccue:"\u227D",scE:"\u2AB4",sce:"\u2AB0",Scedil:"\u015E",scedil:"\u015F",Scirc:"\u015C",scirc:"\u015D",scnap:"\u2ABA",scnE:"\u2AB6",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",Scy:"\u0421",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",searhk:"\u2925",seArr:"\u21D8",searr:"\u2198",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\u{1D516}",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xAD",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",SOFTcy:"\u042C",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",Sopf:"\u{1D54A}",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",Sqrt:"\u221A",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",Square:"\u25A1",square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",Sscr:"\u{1D4AE}",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",Star:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",Sub:"\u22D0",sub:"\u2282",subdot:"\u2ABD",subE:"\u2AC5",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",Subset:"\u22D0",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",SubsetEqual:"\u2286",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",SuchThat:"\u220B",Sum:"\u2211",sum:"\u2211",sung:"\u266A",Sup:"\u22D1",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supdot:"\u2ABE",supdsub:"\u2AD8",supE:"\u2AC6",supe:"\u2287",supedot:"\u2AC4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",Supset:"\u22D1",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swarhk:"\u2926",swArr:"\u21D9",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",Tab:" ",target:"\u2316",Tau:"\u03A4",tau:"\u03C4",tbrk:"\u23B4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",Tfr:"\u{1D517}",tfr:"\u{1D531}",there4:"\u2234",Therefore:"\u2234",therefore:"\u2234",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",ThickSpace:"\u205F\u200A",thinsp:"\u2009",ThinSpace:"\u2009",thkap:"\u2248",thksim:"\u223C",THORN:"\xDE",thorn:"\xFE",Tilde:"\u223C",tilde:"\u02DC",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",Topf:"\u{1D54B}",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",TRADE:"\u2122",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",TripleDot:"\u20DB",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",Tscr:"\u{1D4AF}",tscr:"\u{1D4C9}",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040B",tshcy:"\u045B",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Uacute:"\xDA",uacute:"\xFA",Uarr:"\u219F",uArr:"\u21D1",uarr:"\u2191",Uarrocir:"\u2949",Ubrcy:"\u040E",ubrcy:"\u045E",Ubreve:"\u016C",ubreve:"\u016D",Ucirc:"\xDB",ucirc:"\xFB",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21C5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",Ufr:"\u{1D518}",ufr:"\u{1D532}",Ugrave:"\xD9",ugrave:"\xF9",uHar:"\u2963",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",Umacr:"\u016A",umacr:"\u016B",uml:"\xA8",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",uogon:"\u0173",Uopf:"\u{1D54C}",uopf:"\u{1D566}",UpArrow:"\u2191",Uparrow:"\u21D1",uparrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",Updownarrow:"\u21D5",updownarrow:"\u2195",UpEquilibrium:"\u296E",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",upsi:"\u03C5",upsih:"\u03D2",Upsilon:"\u03A5",upsilon:"\u03C5",UpTee:"\u22A5",UpTeeArrow:"\u21A5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",Uring:"\u016E",uring:"\u016F",urtri:"\u25F9",Uscr:"\u{1D4B0}",uscr:"\u{1D4CA}",utdot:"\u22F0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",Uuml:"\xDC",uuml:"\xFC",uwangle:"\u29A7",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",vArr:"\u21D5",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",Vbar:"\u2AEB",vBar:"\u2AE8",vBarv:"\u2AE9",Vcy:"\u0412",vcy:"\u0432",VDash:"\u22AB",Vdash:"\u22A9",vDash:"\u22A8",vdash:"\u22A2",Vdashl:"\u2AE6",Vee:"\u22C1",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",Verbar:"\u2016",verbar:"|",Vert:"\u2016",vert:"|",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",Vopf:"\u{1D54D}",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",Vscr:"\u{1D4B1}",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",Vvdash:"\u22AA",vzigzag:"\u299A",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2A5F",Wedge:"\u22C0",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\u{1D51A}",wfr:"\u{1D534}",Wopf:"\u{1D54E}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\u{1D4B2}",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",Xfr:"\u{1D51B}",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",Xi:"\u039E",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",Xopf:"\u{1D54F}",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",Xscr:"\u{1D4B3}",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",Yacute:"\xDD",yacute:"\xFD",YAcy:"\u042F",yacy:"\u044F",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042B",ycy:"\u044B",yen:"\xA5",Yfr:"\u{1D51C}",yfr:"\u{1D536}",YIcy:"\u0407",yicy:"\u0457",Yopf:"\u{1D550}",yopf:"\u{1D56A}",Yscr:"\u{1D4B4}",yscr:"\u{1D4CE}",YUcy:"\u042E",yucy:"\u044E",Yuml:"\u0178",yuml:"\xFF",Zacute:"\u0179",zacute:"\u017A",Zcaron:"\u017D",zcaron:"\u017E",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017B",zdot:"\u017C",zeetrf:"\u2128",ZeroWidthSpace:"\u200B",Zeta:"\u0396",zeta:"\u03B6",Zfr:"\u2128",zfr:"\u{1D537}",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21DD",Zopf:"\u2124",zopf:"\u{1D56B}",Zscr:"\u{1D4B5}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"},e.NGSP_UNICODE="\uE500",e.NAMED_ENTITIES.ngsp=e.NGSP_UNICODE}}),Fs=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/html_tags.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ze(),u=class{constructor(){let{closedByChildren:a,implicitNamespacePrefix:f,contentType:c=r.TagContentType.PARSABLE_DATA,closedByParent:v=!1,isVoid:i=!1,ignoreFirstLf:l=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.closedByChildren={},this.closedByParent=!1,this.canSelfClose=!1,a&&a.length>0&&a.forEach(p=>this.closedByChildren[p]=!0),this.isVoid=i,this.closedByParent=v||i,this.implicitNamespacePrefix=f||null,this.contentType=c,this.ignoreFirstLf=l}isClosedByChild(a){return this.isVoid||a.toLowerCase()in this.closedByChildren}};e.HtmlTagDefinition=u;var n,D;function s(a){return D||(n=new u,D={base:new u({isVoid:!0}),meta:new u({isVoid:!0}),area:new u({isVoid:!0}),embed:new u({isVoid:!0}),link:new u({isVoid:!0}),img:new u({isVoid:!0}),input:new u({isVoid:!0}),param:new u({isVoid:!0}),hr:new u({isVoid:!0}),br:new u({isVoid:!0}),source:new u({isVoid:!0}),track:new u({isVoid:!0}),wbr:new u({isVoid:!0}),p:new u({closedByChildren:["address","article","aside","blockquote","div","dl","fieldset","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","main","nav","ol","p","pre","section","table","ul"],closedByParent:!0}),thead:new u({closedByChildren:["tbody","tfoot"]}),tbody:new u({closedByChildren:["tbody","tfoot"],closedByParent:!0}),tfoot:new u({closedByChildren:["tbody"],closedByParent:!0}),tr:new u({closedByChildren:["tr"],closedByParent:!0}),td:new u({closedByChildren:["td","th"],closedByParent:!0}),th:new u({closedByChildren:["td","th"],closedByParent:!0}),col:new u({isVoid:!0}),svg:new u({implicitNamespacePrefix:"svg"}),math:new u({implicitNamespacePrefix:"math"}),li:new u({closedByChildren:["li"],closedByParent:!0}),dt:new u({closedByChildren:["dt","dd"]}),dd:new u({closedByChildren:["dt","dd"],closedByParent:!0}),rb:new u({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),rt:new u({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),rtc:new u({closedByChildren:["rb","rtc","rp"],closedByParent:!0}),rp:new u({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),optgroup:new u({closedByChildren:["optgroup"],closedByParent:!0}),option:new u({closedByChildren:["option","optgroup"],closedByParent:!0}),pre:new u({ignoreFirstLf:!0}),listing:new u({ignoreFirstLf:!0}),style:new u({contentType:r.TagContentType.RAW_TEXT}),script:new u({contentType:r.TagContentType.RAW_TEXT}),title:new u({contentType:r.TagContentType.ESCAPABLE_RAW_TEXT}),textarea:new u({contentType:r.TagContentType.ESCAPABLE_RAW_TEXT,ignoreFirstLf:!0})}),D[a]||n}e.getHtmlTagDefinition=s}}),Pl=I({"node_modules/angular-html-parser/lib/compiler/src/ast_path.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=class{constructor(u){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1;this.path=u,this.position=n}get empty(){return!this.path||!this.path.length}get head(){return this.path[0]}get tail(){return this.path[this.path.length-1]}parentOf(u){return u&&this.path[this.path.indexOf(u)-1]}childOf(u){return this.path[this.path.indexOf(u)+1]}first(u){for(let n=this.path.length-1;n>=0;n--){let D=this.path[n];if(D instanceof u)return D}}push(u){this.path.push(u)}pop(){return this.path.pop()}};e.AstPath=r}}),As=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/ast.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=Pl(),u=class{constructor(C,g,B){this.value=C,this.sourceSpan=g,this.i18n=B,this.type="text"}visit(C,g){return C.visitText(this,g)}};e.Text=u;var n=class{constructor(C,g){this.value=C,this.sourceSpan=g,this.type="cdata"}visit(C,g){return C.visitCdata(this,g)}};e.CDATA=n;var D=class{constructor(C,g,B,O,F,w){this.switchValue=C,this.type=g,this.cases=B,this.sourceSpan=O,this.switchValueSourceSpan=F,this.i18n=w}visit(C,g){return C.visitExpansion(this,g)}};e.Expansion=D;var s=class{constructor(C,g,B,O,F){this.value=C,this.expression=g,this.sourceSpan=B,this.valueSourceSpan=O,this.expSourceSpan=F}visit(C,g){return C.visitExpansionCase(this,g)}};e.ExpansionCase=s;var a=class{constructor(C,g,B){let O=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,F=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,w=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null;this.name=C,this.value=g,this.sourceSpan=B,this.valueSpan=O,this.nameSpan=F,this.i18n=w,this.type="attribute"}visit(C,g){return C.visitAttribute(this,g)}};e.Attribute=a;var f=class{constructor(C,g,B,O){let F=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,w=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,b=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,M=arguments.length>7&&arguments[7]!==void 0?arguments[7]:null;this.name=C,this.attrs=g,this.children=B,this.sourceSpan=O,this.startSourceSpan=F,this.endSourceSpan=w,this.nameSpan=b,this.i18n=M,this.type="element"}visit(C,g){return C.visitElement(this,g)}};e.Element=f;var c=class{constructor(C,g){this.value=C,this.sourceSpan=g,this.type="comment"}visit(C,g){return C.visitComment(this,g)}};e.Comment=c;var v=class{constructor(C,g){this.value=C,this.sourceSpan=g,this.type="docType"}visit(C,g){return C.visitDocType(this,g)}};e.DocType=v;function i(C,g){let B=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,O=[],F=C.visit?w=>C.visit(w,B)||w.visit(C,B):w=>w.visit(C,B);return g.forEach(w=>{let b=F(w);b&&O.push(b)}),O}e.visitAll=i;var l=class{constructor(){}visitElement(C,g){this.visitChildren(g,B=>{B(C.attrs),B(C.children)})}visitAttribute(C,g){}visitText(C,g){}visitCdata(C,g){}visitComment(C,g){}visitDocType(C,g){}visitExpansion(C,g){return this.visitChildren(g,B=>{B(C.cases)})}visitExpansionCase(C,g){}visitChildren(C,g){let B=[],O=this;function F(w){w&&B.push(i(O,w,C))}return g(F),Array.prototype.concat.apply([],B)}};e.RecursiveVisitor=l;function p(C){let g=C.sourceSpan.start.offset,B=C.sourceSpan.end.offset;return C instanceof f&&(C.endSourceSpan?B=C.endSourceSpan.end.offset:C.children&&C.children.length&&(B=p(C.children[C.children.length-1]).end)),{start:g,end:B}}function m(C,g){let B=[],O=new class extends l{visit(F,w){let b=p(F);if(b.start<=g&&g]/,/^[{}]$/,/&(#|[a-z])/i,/^\/\//];function n(D,s){if(s!=null&&!(Array.isArray(s)&&s.length==2))throw new Error(`Expected '${D}' to be an array, [start, end].`);if(s!=null){let a=s[0],f=s[1];u.forEach(c=>{if(c.test(a)||c.test(f))throw new Error(`['${a}', '${f}'] contains unusable interpolation symbol.`)})}}e.assertInterpolationSymbols=n}}),Ll=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/interpolation_config.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=kl(),u=class{constructor(n,D){this.start=n,this.end=D}static fromArray(n){return n?(r.assertInterpolationSymbols("interpolation",n),new u(n[0],n[1])):e.DEFAULT_INTERPOLATION_CONFIG}};e.InterpolationConfig=u,e.DEFAULT_INTERPOLATION_CONFIG=new u("{{","}}")}}),$l=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/lexer.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ds(),u=Ne(),n=Ll(),D=Ze(),s;(function(t){t[t.TAG_OPEN_START=0]="TAG_OPEN_START",t[t.TAG_OPEN_END=1]="TAG_OPEN_END",t[t.TAG_OPEN_END_VOID=2]="TAG_OPEN_END_VOID",t[t.TAG_CLOSE=3]="TAG_CLOSE",t[t.TEXT=4]="TEXT",t[t.ESCAPABLE_RAW_TEXT=5]="ESCAPABLE_RAW_TEXT",t[t.RAW_TEXT=6]="RAW_TEXT",t[t.COMMENT_START=7]="COMMENT_START",t[t.COMMENT_END=8]="COMMENT_END",t[t.CDATA_START=9]="CDATA_START",t[t.CDATA_END=10]="CDATA_END",t[t.ATTR_NAME=11]="ATTR_NAME",t[t.ATTR_QUOTE=12]="ATTR_QUOTE",t[t.ATTR_VALUE=13]="ATTR_VALUE",t[t.DOC_TYPE_START=14]="DOC_TYPE_START",t[t.DOC_TYPE_END=15]="DOC_TYPE_END",t[t.EXPANSION_FORM_START=16]="EXPANSION_FORM_START",t[t.EXPANSION_CASE_VALUE=17]="EXPANSION_CASE_VALUE",t[t.EXPANSION_CASE_EXP_START=18]="EXPANSION_CASE_EXP_START",t[t.EXPANSION_CASE_EXP_END=19]="EXPANSION_CASE_EXP_END",t[t.EXPANSION_FORM_END=20]="EXPANSION_FORM_END",t[t.EOF=21]="EOF"})(s=e.TokenType||(e.TokenType={}));var a=class{constructor(t,o,d){this.type=t,this.parts=o,this.sourceSpan=d}};e.Token=a;var f=class extends u.ParseError{constructor(t,o,d){super(d,t),this.tokenType=o}};e.TokenError=f;var c=class{constructor(t,o){this.tokens=t,this.errors=o}};e.TokenizeResult=c;function v(t,o,d){let h=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return new C(new u.ParseSourceFile(t,o),d,h).tokenize()}e.tokenize=v;var i=/\r\n?/g;function l(t){return`Unexpected character "${t===r.$EOF?"EOF":String.fromCharCode(t)}"`}function p(t){return`Unknown entity "${t}" - use the "&#;" or "&#x;" syntax`}var m=class{constructor(t){this.error=t}},C=class{constructor(t,o,d){this._getTagContentType=o,this._currentTokenStart=null,this._currentTokenType=null,this._expansionCaseStack=[],this._inInterpolation=!1,this._fullNameStack=[],this.tokens=[],this.errors=[],this._tokenizeIcu=d.tokenizeExpansionForms||!1,this._interpolationConfig=d.interpolationConfig||n.DEFAULT_INTERPOLATION_CONFIG,this._leadingTriviaCodePoints=d.leadingTriviaChars&&d.leadingTriviaChars.map(A=>A.codePointAt(0)||0),this._canSelfClose=d.canSelfClose||!1,this._allowHtmComponentClosingTags=d.allowHtmComponentClosingTags||!1;let h=d.range||{endPos:t.content.length,startPos:0,startLine:0,startCol:0};this._cursor=d.escapedString?new j(t,h):new k(t,h);try{this._cursor.init()}catch(A){this.handleError(A)}}_processCarriageReturns(t){return t.replace(i,` +`)}tokenize(){for(;this._cursor.peek()!==r.$EOF;){let t=this._cursor.clone();try{if(this._attemptCharCode(r.$LT))if(this._attemptCharCode(r.$BANG))this._attemptStr("[CDATA[")?this._consumeCdata(t):this._attemptStr("--")?this._consumeComment(t):this._attemptStrCaseInsensitive("doctype")?this._consumeDocType(t):this._consumeBogusComment(t);else if(this._attemptCharCode(r.$SLASH))this._consumeTagClose(t);else{let o=this._cursor.clone();this._attemptCharCode(r.$QUESTION)?(this._cursor=o,this._consumeBogusComment(t)):this._consumeTagOpen(t)}else this._tokenizeIcu&&this._tokenizeExpansionForm()||this._consumeText()}catch(o){this.handleError(o)}}return this._beginToken(s.EOF),this._endToken([]),new c(U(this.tokens),this.errors)}_tokenizeExpansionForm(){if(this.isExpansionFormStart())return this._consumeExpansionFormStart(),!0;if(b(this._cursor.peek())&&this._isInExpansionForm())return this._consumeExpansionCaseStart(),!0;if(this._cursor.peek()===r.$RBRACE){if(this._isInExpansionCase())return this._consumeExpansionCaseEnd(),!0;if(this._isInExpansionForm())return this._consumeExpansionFormEnd(),!0}return!1}_beginToken(t){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._cursor.clone();this._currentTokenStart=o,this._currentTokenType=t}_endToken(t){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._cursor.clone();if(this._currentTokenStart===null)throw new f("Programming error - attempted to end a token when there was no start to the token",this._currentTokenType,this._cursor.getSpan(o));if(this._currentTokenType===null)throw new f("Programming error - attempted to end a token which has no token type",null,this._cursor.getSpan(this._currentTokenStart));let d=new a(this._currentTokenType,t,this._cursor.getSpan(this._currentTokenStart,this._leadingTriviaCodePoints));return this.tokens.push(d),this._currentTokenStart=null,this._currentTokenType=null,d}_createError(t,o){this._isInExpansionForm()&&(t+=` (Do you have an unescaped "{" in your template? Use "{{ '{' }}") to escape it.)`);let d=new f(t,this._currentTokenType,o);return this._currentTokenStart=null,this._currentTokenType=null,new m(d)}handleError(t){if(t instanceof L&&(t=this._createError(t.msg,this._cursor.getSpan(t.cursor))),t instanceof m)this.errors.push(t.error);else throw t}_attemptCharCode(t){return this._cursor.peek()===t?(this._cursor.advance(),!0):!1}_attemptCharCodeCaseInsensitive(t){return M(this._cursor.peek(),t)?(this._cursor.advance(),!0):!1}_requireCharCode(t){let o=this._cursor.clone();if(!this._attemptCharCode(t))throw this._createError(l(this._cursor.peek()),this._cursor.getSpan(o))}_attemptStr(t){let o=t.length;if(this._cursor.charsLeft()this._attemptStr("-->")),this._beginToken(s.COMMENT_END),this._requireStr("-->"),this._endToken([])}_consumeBogusComment(t){this._beginToken(s.COMMENT_START,t),this._endToken([]),this._consumeRawText(!1,()=>this._cursor.peek()===r.$GT),this._beginToken(s.COMMENT_END),this._cursor.advance(),this._endToken([])}_consumeCdata(t){this._beginToken(s.CDATA_START,t),this._endToken([]),this._consumeRawText(!1,()=>this._attemptStr("]]>")),this._beginToken(s.CDATA_END),this._requireStr("]]>"),this._endToken([])}_consumeDocType(t){this._beginToken(s.DOC_TYPE_START,t),this._endToken([]),this._consumeRawText(!1,()=>this._cursor.peek()===r.$GT),this._beginToken(s.DOC_TYPE_END),this._cursor.advance(),this._endToken([])}_consumePrefixAndName(){let t=this._cursor.clone(),o="";for(;this._cursor.peek()!==r.$COLON&&!O(this._cursor.peek());)this._cursor.advance();let d;this._cursor.peek()===r.$COLON?(o=this._cursor.getChars(t),this._cursor.advance(),d=this._cursor.clone()):d=t,this._requireCharCodeUntilFn(B,o===""?0:1);let h=this._cursor.getChars(d);return[o,h]}_consumeTagOpen(t){let o,d,h,A=this.tokens.length,q=this._cursor.clone(),P=[];try{if(!r.isAsciiLetter(this._cursor.peek()))throw this._createError(l(this._cursor.peek()),this._cursor.getSpan(t));for(h=this._consumeTagOpenStart(t),d=h.parts[0],o=h.parts[1],this._attemptCharCodeUntilFn(g);this._cursor.peek()!==r.$SLASH&&this._cursor.peek()!==r.$GT;){let[X,Q]=this._consumeAttributeName();if(this._attemptCharCodeUntilFn(g),this._attemptCharCode(r.$EQ)){this._attemptCharCodeUntilFn(g);let H=this._consumeAttributeValue();P.push({prefix:X,name:Q,value:H})}else P.push({prefix:X,name:Q});this._attemptCharCodeUntilFn(g)}this._consumeTagOpenEnd()}catch(X){if(X instanceof m){this._cursor=q,h&&(this.tokens.length=A),this._beginToken(s.TEXT,t),this._endToken(["<"]);return}throw X}if(this._canSelfClose&&this.tokens[this.tokens.length-1].type===s.TAG_OPEN_END_VOID)return;let G=this._getTagContentType(o,d,this._fullNameStack.length>0,P);this._handleFullNameStackForTagOpen(d,o),G===D.TagContentType.RAW_TEXT?this._consumeRawTextWithTagClose(d,o,!1):G===D.TagContentType.ESCAPABLE_RAW_TEXT&&this._consumeRawTextWithTagClose(d,o,!0)}_consumeRawTextWithTagClose(t,o,d){let h=this._consumeRawText(d,()=>!this._attemptCharCode(r.$LT)||!this._attemptCharCode(r.$SLASH)||(this._attemptCharCodeUntilFn(g),!this._attemptStrCaseInsensitive(t?`${t}:${o}`:o))?!1:(this._attemptCharCodeUntilFn(g),this._attemptCharCode(r.$GT)));this._beginToken(s.TAG_CLOSE),this._requireCharCodeUntilFn(A=>A===r.$GT,3),this._cursor.advance(),this._endToken([t,o]),this._handleFullNameStackForTagClose(t,o)}_consumeTagOpenStart(t){this._beginToken(s.TAG_OPEN_START,t);let o=this._consumePrefixAndName();return this._endToken(o)}_consumeAttributeName(){let t=this._cursor.peek();if(t===r.$SQ||t===r.$DQ)throw this._createError(l(t),this._cursor.getSpan());this._beginToken(s.ATTR_NAME);let o=this._consumePrefixAndName();return this._endToken(o),o}_consumeAttributeValue(){let t;if(this._cursor.peek()===r.$SQ||this._cursor.peek()===r.$DQ){this._beginToken(s.ATTR_QUOTE);let o=this._cursor.peek();this._cursor.advance(),this._endToken([String.fromCodePoint(o)]),this._beginToken(s.ATTR_VALUE);let d=[];for(;this._cursor.peek()!==o;)d.push(this._readChar(!0));t=this._processCarriageReturns(d.join("")),this._endToken([t]),this._beginToken(s.ATTR_QUOTE),this._cursor.advance(),this._endToken([String.fromCodePoint(o)])}else{this._beginToken(s.ATTR_VALUE);let o=this._cursor.clone();this._requireCharCodeUntilFn(B,1),t=this._processCarriageReturns(this._cursor.getChars(o)),this._endToken([t])}return t}_consumeTagOpenEnd(){let t=this._attemptCharCode(r.$SLASH)?s.TAG_OPEN_END_VOID:s.TAG_OPEN_END;this._beginToken(t),this._requireCharCode(r.$GT),this._endToken([])}_consumeTagClose(t){if(this._beginToken(s.TAG_CLOSE,t),this._attemptCharCodeUntilFn(g),this._allowHtmComponentClosingTags&&this._attemptCharCode(r.$SLASH))this._attemptCharCodeUntilFn(g),this._requireCharCode(r.$GT),this._endToken([]);else{let[o,d]=this._consumePrefixAndName();this._attemptCharCodeUntilFn(g),this._requireCharCode(r.$GT),this._endToken([o,d]),this._handleFullNameStackForTagClose(o,d)}}_consumeExpansionFormStart(){this._beginToken(s.EXPANSION_FORM_START),this._requireCharCode(r.$LBRACE),this._endToken([]),this._expansionCaseStack.push(s.EXPANSION_FORM_START),this._beginToken(s.RAW_TEXT);let t=this._readUntil(r.$COMMA);this._endToken([t]),this._requireCharCode(r.$COMMA),this._attemptCharCodeUntilFn(g),this._beginToken(s.RAW_TEXT);let o=this._readUntil(r.$COMMA);this._endToken([o]),this._requireCharCode(r.$COMMA),this._attemptCharCodeUntilFn(g)}_consumeExpansionCaseStart(){this._beginToken(s.EXPANSION_CASE_VALUE);let t=this._readUntil(r.$LBRACE).trim();this._endToken([t]),this._attemptCharCodeUntilFn(g),this._beginToken(s.EXPANSION_CASE_EXP_START),this._requireCharCode(r.$LBRACE),this._endToken([]),this._attemptCharCodeUntilFn(g),this._expansionCaseStack.push(s.EXPANSION_CASE_EXP_START)}_consumeExpansionCaseEnd(){this._beginToken(s.EXPANSION_CASE_EXP_END),this._requireCharCode(r.$RBRACE),this._endToken([]),this._attemptCharCodeUntilFn(g),this._expansionCaseStack.pop()}_consumeExpansionFormEnd(){this._beginToken(s.EXPANSION_FORM_END),this._requireCharCode(r.$RBRACE),this._endToken([]),this._expansionCaseStack.pop()}_consumeText(){let t=this._cursor.clone();this._beginToken(s.TEXT,t);let o=[];do this._interpolationConfig&&this._attemptStr(this._interpolationConfig.start)?(o.push(this._interpolationConfig.start),this._inInterpolation=!0):this._interpolationConfig&&this._inInterpolation&&this._attemptStr(this._interpolationConfig.end)?(o.push(this._interpolationConfig.end),this._inInterpolation=!1):o.push(this._readChar(!0));while(!this._isTextEnd());this._endToken([this._processCarriageReturns(o.join(""))])}_isTextEnd(){return!!(this._cursor.peek()===r.$LT||this._cursor.peek()===r.$EOF||this._tokenizeIcu&&!this._inInterpolation&&(this.isExpansionFormStart()||this._cursor.peek()===r.$RBRACE&&this._isInExpansionCase()))}_readUntil(t){let o=this._cursor.clone();return this._attemptUntilChar(t),this._cursor.getChars(o)}_isInExpansionCase(){return this._expansionCaseStack.length>0&&this._expansionCaseStack[this._expansionCaseStack.length-1]===s.EXPANSION_CASE_EXP_START}_isInExpansionForm(){return this._expansionCaseStack.length>0&&this._expansionCaseStack[this._expansionCaseStack.length-1]===s.EXPANSION_FORM_START}isExpansionFormStart(){if(this._cursor.peek()!==r.$LBRACE)return!1;if(this._interpolationConfig){let t=this._cursor.clone(),o=this._attemptStr(this._interpolationConfig.start);return this._cursor=t,!o}return!0}_handleFullNameStackForTagOpen(t,o){let d=D.mergeNsAndName(t,o);(this._fullNameStack.length===0||this._fullNameStack[this._fullNameStack.length-1]===d)&&this._fullNameStack.push(d)}_handleFullNameStackForTagClose(t,o){let d=D.mergeNsAndName(t,o);this._fullNameStack.length!==0&&this._fullNameStack[this._fullNameStack.length-1]===d&&this._fullNameStack.pop()}};function g(t){return!r.isWhitespace(t)||t===r.$EOF}function B(t){return r.isWhitespace(t)||t===r.$GT||t===r.$SLASH||t===r.$SQ||t===r.$DQ||t===r.$EQ}function O(t){return(tr.$9)}function F(t){return t==r.$SEMICOLON||t==r.$EOF||!r.isAsciiHexDigit(t)}function w(t){return t==r.$SEMICOLON||t==r.$EOF||!r.isAsciiLetter(t)}function b(t){return t===r.$EQ||r.isAsciiLetter(t)||r.isDigit(t)}function M(t,o){return R(t)==R(o)}function R(t){return t>=r.$a&&t<=r.$z?t-r.$a+r.$A:t}function U(t){let o=[],d;for(let h=0;h0&&o.indexOf(t.peek())!==-1;)t.advance();return new u.ParseSourceSpan(new u.ParseLocation(t.file,t.state.offset,t.state.line,t.state.column),new u.ParseLocation(this.file,this.state.offset,this.state.line,this.state.column))}getChars(t){return this.input.substring(t.state.offset,this.state.offset)}charAt(t){return this.input.charCodeAt(t)}advanceState(t){if(t.offset>=this.end)throw this.state=t,new L('Unexpected character "EOF"',this);let o=this.charAt(t.offset);o===r.$LF?(t.line++,t.column=0):r.isNewLine(o)||t.column++,t.offset++,this.updatePeek(t)}updatePeek(t){t.peek=t.offset>=this.end?r.$EOF:this.charAt(t.offset)}},j=class extends k{constructor(t,o){t instanceof j?(super(t),this.internalState=Object.assign({},t.internalState)):(super(t,o),this.internalState=this.state)}advance(){this.state=this.internalState,super.advance(),this.processEscapeSequence()}init(){super.init(),this.processEscapeSequence()}clone(){return new j(this)}getChars(t){let o=t.clone(),d="";for(;o.internalState.offsetthis.internalState.peek;if(t()===r.$BACKSLASH)if(this.internalState=Object.assign({},this.state),this.advanceState(this.internalState),t()===r.$n)this.state.peek=r.$LF;else if(t()===r.$r)this.state.peek=r.$CR;else if(t()===r.$v)this.state.peek=r.$VTAB;else if(t()===r.$t)this.state.peek=r.$TAB;else if(t()===r.$b)this.state.peek=r.$BSPACE;else if(t()===r.$f)this.state.peek=r.$FF;else if(t()===r.$u)if(this.advanceState(this.internalState),t()===r.$LBRACE){this.advanceState(this.internalState);let o=this.clone(),d=0;for(;t()!==r.$RBRACE;)this.advanceState(this.internalState),d++;this.state.peek=this.decodeHexDigits(o,d)}else{let o=this.clone();this.advanceState(this.internalState),this.advanceState(this.internalState),this.advanceState(this.internalState),this.state.peek=this.decodeHexDigits(o,4)}else if(t()===r.$x){this.advanceState(this.internalState);let o=this.clone();this.advanceState(this.internalState),this.state.peek=this.decodeHexDigits(o,2)}else if(r.isOctalDigit(t())){let o="",d=0,h=this.clone();for(;r.isOctalDigit(t())&&d<3;)h=this.clone(),o+=String.fromCodePoint(t()),this.advanceState(this.internalState),d++;this.state.peek=parseInt(o,8),this.internalState=h.internalState}else r.isNewLine(this.internalState.peek)?(this.advanceState(this.internalState),this.state=this.internalState):this.state.peek=this.internalState.peek}decodeHexDigits(t,o){let d=this.input.substr(t.internalState.offset,o),h=parseInt(d,16);if(isNaN(h))throw t.state=t.internalState,new L("Invalid hexadecimal escape sequence",t);return h}},L=class{constructor(t,o){this.msg=t,this.cursor=o}};e.CursorError=L}}),ns=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/parser.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ne(),u=As(),n=$l(),D=Ze(),s=class extends r.ParseError{constructor(i,l,p){super(l,p),this.elementName=i}static create(i,l,p){return new s(i,l,p)}};e.TreeError=s;var a=class{constructor(i,l){this.rootNodes=i,this.errors=l}};e.ParseTreeResult=a;var f=class{constructor(i){this.getTagDefinition=i}parse(i,l,p){let m=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,C=arguments.length>4?arguments[4]:void 0,g=k=>function(j){for(var L=arguments.length,t=new Array(L>1?L-1:0),o=1;oB(k).contentType,F=m?C:g(C),w=C?(k,j,L,t)=>{let o=F(k,j,L,t);return o!==void 0?o:O(k)}:O,b=n.tokenize(i,l,w,p),M=p&&p.canSelfClose||!1,R=p&&p.allowHtmComponentClosingTags||!1,U=new c(b.tokens,B,M,R,m).build();return new a(U.rootNodes,b.errors.concat(U.errors))}};e.Parser=f;var c=class{constructor(i,l,p,m,C){this.tokens=i,this.getTagDefinition=l,this.canSelfClose=p,this.allowHtmComponentClosingTags=m,this.isTagNameCaseSensitive=C,this._index=-1,this._rootNodes=[],this._errors=[],this._elementStack=[],this._advance()}build(){for(;this._peek.type!==n.TokenType.EOF;)this._peek.type===n.TokenType.TAG_OPEN_START?this._consumeStartTag(this._advance()):this._peek.type===n.TokenType.TAG_CLOSE?(this._closeVoidElement(),this._consumeEndTag(this._advance())):this._peek.type===n.TokenType.CDATA_START?(this._closeVoidElement(),this._consumeCdata(this._advance())):this._peek.type===n.TokenType.COMMENT_START?(this._closeVoidElement(),this._consumeComment(this._advance())):this._peek.type===n.TokenType.TEXT||this._peek.type===n.TokenType.RAW_TEXT||this._peek.type===n.TokenType.ESCAPABLE_RAW_TEXT?(this._closeVoidElement(),this._consumeText(this._advance())):this._peek.type===n.TokenType.EXPANSION_FORM_START?this._consumeExpansion(this._advance()):this._peek.type===n.TokenType.DOC_TYPE_START?this._consumeDocType(this._advance()):this._advance();return new a(this._rootNodes,this._errors)}_advance(){let i=this._peek;return this._index0)return this._errors=this._errors.concat(C.errors),null;let g=new r.ParseSourceSpan(i.sourceSpan.start,m.sourceSpan.end),B=new r.ParseSourceSpan(l.sourceSpan.start,m.sourceSpan.end);return new u.ExpansionCase(i.parts[0],C.rootNodes,g,i.sourceSpan,B)}_collectExpansionExpTokens(i){let l=[],p=[n.TokenType.EXPANSION_CASE_EXP_START];for(;;){if((this._peek.type===n.TokenType.EXPANSION_FORM_START||this._peek.type===n.TokenType.EXPANSION_CASE_EXP_START)&&p.push(this._peek.type),this._peek.type===n.TokenType.EXPANSION_CASE_EXP_END)if(v(p,n.TokenType.EXPANSION_CASE_EXP_START)){if(p.pop(),p.length==0)return l}else return this._errors.push(s.create(null,i.sourceSpan,"Invalid ICU message. Missing '}'.")),null;if(this._peek.type===n.TokenType.EXPANSION_FORM_END)if(v(p,n.TokenType.EXPANSION_FORM_START))p.pop();else return this._errors.push(s.create(null,i.sourceSpan,"Invalid ICU message. Missing '}'.")),null;if(this._peek.type===n.TokenType.EOF)return this._errors.push(s.create(null,i.sourceSpan,"Invalid ICU message. Missing '}'.")),null;l.push(this._advance())}}_getText(i){let l=i.parts[0];if(l.length>0&&l[0]==` +`){let p=this._getParentElement();p!=null&&p.children.length==0&&this.getTagDefinition(p.name).ignoreFirstLf&&(l=l.substring(1))}return l}_consumeText(i){let l=this._getText(i);l.length>0&&this._addToParent(new u.Text(l,i.sourceSpan))}_closeVoidElement(){let i=this._getParentElement();i&&this.getTagDefinition(i.name).isVoid&&this._elementStack.pop()}_consumeStartTag(i){let l=i.parts[0],p=i.parts[1],m=[];for(;this._peek.type===n.TokenType.ATTR_NAME;)m.push(this._consumeAttr(this._advance()));let C=this._getElementFullName(l,p,this._getParentElement()),g=!1;if(this._peek.type===n.TokenType.TAG_OPEN_END_VOID){this._advance(),g=!0;let b=this.getTagDefinition(C);this.canSelfClose||b.canSelfClose||D.getNsPrefix(C)!==null||b.isVoid||this._errors.push(s.create(C,i.sourceSpan,`Only void and foreign elements can be self closed "${i.parts[1]}"`))}else this._peek.type===n.TokenType.TAG_OPEN_END&&(this._advance(),g=!1);let B=this._peek.sourceSpan.start,O=new r.ParseSourceSpan(i.sourceSpan.start,B),F=new r.ParseSourceSpan(i.sourceSpan.start.moveBy(1),i.sourceSpan.end),w=new u.Element(C,m,[],O,O,void 0,F);this._pushElement(w),g&&(this._popElement(C),w.endSourceSpan=O)}_pushElement(i){let l=this._getParentElement();l&&this.getTagDefinition(l.name).isClosedByChild(i.name)&&this._elementStack.pop(),this._addToParent(i),this._elementStack.push(i)}_consumeEndTag(i){let l=this.allowHtmComponentClosingTags&&i.parts.length===0?null:this._getElementFullName(i.parts[0],i.parts[1],this._getParentElement());if(this._getParentElement()&&(this._getParentElement().endSourceSpan=i.sourceSpan),l&&this.getTagDefinition(l).isVoid)this._errors.push(s.create(l,i.sourceSpan,`Void elements do not have end tags "${i.parts[1]}"`));else if(!this._popElement(l)){let p=`Unexpected closing tag "${l}". It may happen when the tag has already been closed by another tag. For more info see https://www.w3.org/TR/html5/syntax.html#closing-elements-that-have-implied-end-tags`;this._errors.push(s.create(l,i.sourceSpan,p))}}_popElement(i){for(let l=this._elementStack.length-1;l>=0;l--){let p=this._elementStack[l];if(!i||(D.getNsPrefix(p.name)?p.name==i:p.name.toLowerCase()==i.toLowerCase()))return this._elementStack.splice(l,this._elementStack.length-l),!0;if(!this.getTagDefinition(p.name).closedByParent)return!1}return!1}_consumeAttr(i){let l=D.mergeNsAndName(i.parts[0],i.parts[1]),p=i.sourceSpan.end,m="",C,g;if(this._peek.type===n.TokenType.ATTR_QUOTE&&(g=this._advance().sourceSpan.start),this._peek.type===n.TokenType.ATTR_VALUE){let B=this._advance();m=B.parts[0],p=B.sourceSpan.end,C=B.sourceSpan}return this._peek.type===n.TokenType.ATTR_QUOTE&&(p=this._advance().sourceSpan.end,C=new r.ParseSourceSpan(g,p)),new u.Attribute(l,m,new r.ParseSourceSpan(i.sourceSpan.start,p),C,i.sourceSpan)}_getParentElement(){return this._elementStack.length>0?this._elementStack[this._elementStack.length-1]:null}_getParentElementSkippingContainers(){let i=null;for(let l=this._elementStack.length-1;l>=0;l--){if(!D.isNgContainer(this._elementStack[l].name))return{parent:this._elementStack[l],container:i};i=this._elementStack[l]}return{parent:null,container:i}}_addToParent(i){let l=this._getParentElement();l!=null?l.children.push(i):this._rootNodes.push(i)}_insertBeforeContainer(i,l,p){if(!l)this._addToParent(p),this._elementStack.push(p);else{if(i){let m=i.children.indexOf(l);i.children[m]=p}else this._rootNodes.push(p);p.children.push(l),this._elementStack.splice(this._elementStack.indexOf(l),0,p)}}_getElementFullName(i,l,p){return i===""&&(i=this.getTagDefinition(l).implicitNamespacePrefix||"",i===""&&p!=null&&(i=D.getNsPrefix(p.name))),D.mergeNsAndName(i,l)}};function v(i,l){return i.length>0&&i[i.length-1]===l}}}),Ml=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/html_parser.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=Fs(),u=ns(),n=ns();e.ParseTreeResult=n.ParseTreeResult,e.TreeError=n.TreeError;var D=class extends u.Parser{constructor(){super(r.getHtmlTagDefinition)}parse(s,a,f){let c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,v=arguments.length>4?arguments[4]:void 0;return super.parse(s,a,f,c,v)}};e.HtmlParser=D}}),ss=I({"node_modules/angular-html-parser/lib/angular-html-parser/src/index.js"(e){"use strict";N(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ml(),u=Ze();e.TagContentType=u.TagContentType;var n=null,D=()=>(n||(n=new r.HtmlParser),n);function s(a){let f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{canSelfClose:c=!1,allowHtmComponentClosingTags:v=!1,isTagNameCaseSensitive:i=!1,getTagContentType:l}=f;return D().parse(a,"angular-html-parser",{tokenizeExpansionForms:!1,interpolationConfig:void 0,canSelfClose:c,allowHtmComponentClosingTags:v},i,l)}e.parse=s}}),jl=I({"src/language-html/parser-html.js"(e,r){N();var{ParseSourceSpan:u,ParseLocation:n,ParseSourceFile:D}=Ne(),s=JD(),a=ls(),f=ZD(),{inferParserByLanguage:c}=yl(),v=Bl(),i=Nl(),l=Ol(),{hasPragma:p}=ql(),{Node:m}=Il(),{parseIeConditionalComment:C}=Rl(),{locStart:g,locEnd:B}=xl();function O(b,M,R){let{canSelfClose:U,normalizeTagName:k,normalizeAttributeName:j,allowHtmComponentClosingTags:L,isTagNameCaseSensitive:t,getTagContentType:o}=M,d=ss(),{RecursiveVisitor:h,visitAll:A}=As(),{ParseSourceSpan:q}=Ne(),{getHtmlTagDefinition:P}=Fs(),{rootNodes:G,errors:X}=d.parse(b,{canSelfClose:U,allowHtmComponentClosingTags:L,isTagNameCaseSensitive:t,getTagContentType:o});if(R.parser==="vue")if(G.some(_=>_.type==="docType"&&_.value==="html"||_.type==="element"&&_.name.toLowerCase()==="html")){U=!0,k=!0,j=!0,L=!0,t=!1;let _=d.parse(b,{canSelfClose:U,allowHtmComponentClosingTags:L,isTagNameCaseSensitive:t});G=_.rootNodes,X=_.errors}else{let _=T=>{if(!T||T.type!=="element"||T.name!=="template")return!1;let x=T.attrs.find(V=>V.name==="lang"),$=x&&x.value;return!$||c($,R)==="html"};if(G.some(_)){let T,x=()=>d.parse(b,{canSelfClose:U,allowHtmComponentClosingTags:L,isTagNameCaseSensitive:t}),$=()=>T||(T=x()),V=z=>$().rootNodes.find(Y=>{let{startSourceSpan:ie}=Y;return ie&&ie.start.offset===z.startSourceSpan.start.offset});for(let z=0;z0){let{msg:E,span:{start:_,end:T}}=X[0];throw f(E,{start:{line:_.line+1,column:_.col+1},end:{line:T.line+1,column:T.col+1}})}let Q=E=>{let _=E.name.startsWith(":")?E.name.slice(1).split(":")[0]:null,T=E.nameSpan.toString(),x=_!==null&&T.startsWith(`${_}:`),$=x?T.slice(_.length+1):T;E.name=$,E.namespace=_,E.hasExplicitNamespace=x},H=E=>{switch(E.type){case"element":Q(E);for(let _ of E.attrs)Q(_),_.valueSpan?(_.value=_.valueSpan.toString(),/["']/.test(_.value[0])&&(_.value=_.value.slice(1,-1))):_.value=null;break;case"comment":E.value=E.sourceSpan.toString().slice(4,-3);break;case"text":E.value=E.sourceSpan.toString();break}},W=(E,_)=>{let T=E.toLowerCase();return _(T)?T:E},K=E=>{if(E.type==="element"&&(k&&(!E.namespace||E.namespace===E.tagDefinition.implicitNamespacePrefix||l(E))&&(E.name=W(E.name,_=>_ in v)),j)){let _=i[E.name]||Object.create(null);for(let T of E.attrs)T.namespace||(T.name=W(T.name,x=>E.name in i&&(x in i["*"]||x in _)))}},J=E=>{E.sourceSpan&&E.endSourceSpan&&(E.sourceSpan=new q(E.sourceSpan.start,E.endSourceSpan.end))},S=E=>{if(E.type==="element"){let _=P(t?E.name:E.name.toLowerCase());!E.namespace||E.namespace===_.implicitNamespacePrefix||l(E)?E.tagDefinition=_:E.tagDefinition=P("")}};return A(new class extends h{visit(E){H(E),S(E),K(E),J(E)}},G),G}function F(b,M,R){let U=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,{frontMatter:k,content:j}=U?s(b):{frontMatter:null,content:b},L=new D(b,M.filepath),t=new n(L,0,0,0),o=t.moveBy(b.length),d={type:"root",sourceSpan:new u(t,o),children:O(j,R,M)};if(k){let q=new n(L,0,0,0),P=q.moveBy(k.raw.length);k.sourceSpan=new u(q,P),d.children.unshift(k)}let h=new m(d),A=(q,P)=>{let{offset:G}=P,X=b.slice(0,G).replace(/[^\n\r]/g," "),H=F(X+q,M,R,!1);H.sourceSpan=new u(P,a(H.children).sourceSpan.end);let W=H.children[0];return W.length===G?H.children.shift():(W.sourceSpan=new u(W.sourceSpan.start.moveBy(G),W.sourceSpan.end),W.value=W.value.slice(G)),H};return h.walk(q=>{if(q.type==="comment"){let P=C(q,A);P&&q.parent.replaceChild(q,P)}}),h}function w(){let{name:b,canSelfClose:M=!1,normalizeTagName:R=!1,normalizeAttributeName:U=!1,allowHtmComponentClosingTags:k=!1,isTagNameCaseSensitive:j=!1,getTagContentType:L}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return{parse:(t,o,d)=>F(t,Object.assign({parser:b},d),{canSelfClose:M,normalizeTagName:R,normalizeAttributeName:U,allowHtmComponentClosingTags:k,isTagNameCaseSensitive:j,getTagContentType:L}),hasPragma:p,astFormat:"html",locStart:g,locEnd:B}}r.exports={parsers:{html:w({name:"html",canSelfClose:!0,normalizeTagName:!0,normalizeAttributeName:!0,allowHtmComponentClosingTags:!0}),angular:w({name:"angular",canSelfClose:!0}),vue:w({name:"vue",canSelfClose:!0,isTagNameCaseSensitive:!0,getTagContentType:(b,M,R,U)=>{if(b.toLowerCase()!=="html"&&!R&&(b!=="template"||U.some(k=>{let{name:j,value:L}=k;return j==="lang"&&L!=="html"&&L!==""&&L!==void 0})))return ss().TagContentType.RAW_TEXT}}),lwc:w({name:"lwc"})}}}}),_2=jl();export{_2 as default}; diff --git a/node_modules/prettier/esm/parser-markdown.mjs b/node_modules/prettier/esm/parser-markdown.mjs new file mode 100644 index 0000000..a5da15c --- /dev/null +++ b/node_modules/prettier/esm/parser-markdown.mjs @@ -0,0 +1,76 @@ +var V=(e,u)=>()=>(u||e((u={exports:{}}).exports,u),u.exports);var Fe=V((R2,yu)=>{var tr=function(e){return e&&e.Math==Math&&e};yu.exports=tr(typeof globalThis=="object"&&globalThis)||tr(typeof window=="object"&&window)||tr(typeof self=="object"&&self)||tr(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var Ae=V((j2,wu)=>{wu.exports=function(e){try{return!!e()}catch{return!0}}});var Be=V((P2,Bu)=>{var na=Ae();Bu.exports=!na(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var nr=V((M2,ku)=>{var ia=Ae();ku.exports=!ia(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")})});var Oe=V((z2,qu)=>{var aa=nr(),ir=Function.prototype.call;qu.exports=aa?ir.bind(ir):function(){return ir.apply(ir,arguments)}});var Su=V(Iu=>{"use strict";var _u={}.propertyIsEnumerable,Ou=Object.getOwnPropertyDescriptor,oa=Ou&&!_u.call({1:2},1);Iu.f=oa?function(u){var r=Ou(this,u);return!!r&&r.enumerable}:_u});var ar=V((U2,Tu)=>{Tu.exports=function(e,u){return{enumerable:!(e&1),configurable:!(e&2),writable:!(e&4),value:u}}});var ve=V((G2,Ru)=>{var Nu=nr(),Lu=Function.prototype,wr=Lu.call,sa=Nu&&Lu.bind.bind(wr,wr);Ru.exports=Nu?sa:function(e){return function(){return wr.apply(e,arguments)}}});var Ve=V((V2,Pu)=>{var ju=ve(),ca=ju({}.toString),la=ju("".slice);Pu.exports=function(e){return la(ca(e),8,-1)}});var zu=V((H2,Mu)=>{var Da=ve(),fa=Ae(),pa=Ve(),Br=Object,da=Da("".split);Mu.exports=fa(function(){return!Br("z").propertyIsEnumerable(0)})?function(e){return pa(e)=="String"?da(e,""):Br(e)}:Br});var or=V((X2,$u)=>{$u.exports=function(e){return e==null}});var kr=V((W2,Uu)=>{var ha=or(),va=TypeError;Uu.exports=function(e){if(ha(e))throw va("Can't call method on "+e);return e}});var sr=V((K2,Gu)=>{var ma=zu(),Ea=kr();Gu.exports=function(e){return ma(Ea(e))}});var _r=V((Y2,Vu)=>{var qr=typeof document=="object"&&document.all,Ca=typeof qr>"u"&&qr!==void 0;Vu.exports={all:qr,IS_HTMLDDA:Ca}});var de=V((J2,Xu)=>{var Hu=_r(),ga=Hu.all;Xu.exports=Hu.IS_HTMLDDA?function(e){return typeof e=="function"||e===ga}:function(e){return typeof e=="function"}});var Ie=V((Z2,Yu)=>{var Wu=de(),Ku=_r(),Fa=Ku.all;Yu.exports=Ku.IS_HTMLDDA?function(e){return typeof e=="object"?e!==null:Wu(e)||e===Fa}:function(e){return typeof e=="object"?e!==null:Wu(e)}});var He=V((Q2,Ju)=>{var Or=Fe(),Aa=de(),xa=function(e){return Aa(e)?e:void 0};Ju.exports=function(e,u){return arguments.length<2?xa(Or[e]):Or[e]&&Or[e][u]}});var Ir=V((ef,Zu)=>{var ba=ve();Zu.exports=ba({}.isPrototypeOf)});var et=V((rf,Qu)=>{var ya=He();Qu.exports=ya("navigator","userAgent")||""});var ot=V((uf,at)=>{var it=Fe(),Sr=et(),rt=it.process,ut=it.Deno,tt=rt&&rt.versions||ut&&ut.version,nt=tt&&tt.v8,me,cr;nt&&(me=nt.split("."),cr=me[0]>0&&me[0]<4?1:+(me[0]+me[1]));!cr&&Sr&&(me=Sr.match(/Edge\/(\d+)/),(!me||me[1]>=74)&&(me=Sr.match(/Chrome\/(\d+)/),me&&(cr=+me[1])));at.exports=cr});var Tr=V((tf,ct)=>{var st=ot(),wa=Ae();ct.exports=!!Object.getOwnPropertySymbols&&!wa(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&st&&st<41})});var Nr=V((nf,lt)=>{var Ba=Tr();lt.exports=Ba&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Lr=V((af,Dt)=>{var ka=He(),qa=de(),_a=Ir(),Oa=Nr(),Ia=Object;Dt.exports=Oa?function(e){return typeof e=="symbol"}:function(e){var u=ka("Symbol");return qa(u)&&_a(u.prototype,Ia(e))}});var lr=V((of,ft)=>{var Sa=String;ft.exports=function(e){try{return Sa(e)}catch{return"Object"}}});var Xe=V((sf,pt)=>{var Ta=de(),Na=lr(),La=TypeError;pt.exports=function(e){if(Ta(e))return e;throw La(Na(e)+" is not a function")}});var Dr=V((cf,dt)=>{var Ra=Xe(),ja=or();dt.exports=function(e,u){var r=e[u];return ja(r)?void 0:Ra(r)}});var vt=V((lf,ht)=>{var Rr=Oe(),jr=de(),Pr=Ie(),Pa=TypeError;ht.exports=function(e,u){var r,t;if(u==="string"&&jr(r=e.toString)&&!Pr(t=Rr(r,e))||jr(r=e.valueOf)&&!Pr(t=Rr(r,e))||u!=="string"&&jr(r=e.toString)&&!Pr(t=Rr(r,e)))return t;throw Pa("Can't convert object to primitive value")}});var Et=V((Df,mt)=>{mt.exports=!1});var fr=V((ff,gt)=>{var Ct=Fe(),Ma=Object.defineProperty;gt.exports=function(e,u){try{Ma(Ct,e,{value:u,configurable:!0,writable:!0})}catch{Ct[e]=u}return u}});var pr=V((pf,At)=>{var za=Fe(),$a=fr(),Ft="__core-js_shared__",Ua=za[Ft]||$a(Ft,{});At.exports=Ua});var Mr=V((df,bt)=>{var Ga=Et(),xt=pr();(bt.exports=function(e,u){return xt[e]||(xt[e]=u!==void 0?u:{})})("versions",[]).push({version:"3.26.1",mode:Ga?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var zr=V((hf,yt)=>{var Va=kr(),Ha=Object;yt.exports=function(e){return Ha(Va(e))}});var ke=V((vf,wt)=>{var Xa=ve(),Wa=zr(),Ka=Xa({}.hasOwnProperty);wt.exports=Object.hasOwn||function(u,r){return Ka(Wa(u),r)}});var $r=V((mf,Bt)=>{var Ya=ve(),Ja=0,Za=Math.random(),Qa=Ya(1 .toString);Bt.exports=function(e){return"Symbol("+(e===void 0?"":e)+")_"+Qa(++Ja+Za,36)}});var Te=V((Ef,It)=>{var eo=Fe(),ro=Mr(),kt=ke(),uo=$r(),qt=Tr(),Ot=Nr(),Le=ro("wks"),Se=eo.Symbol,_t=Se&&Se.for,to=Ot?Se:Se&&Se.withoutSetter||uo;It.exports=function(e){if(!kt(Le,e)||!(qt||typeof Le[e]=="string")){var u="Symbol."+e;qt&&kt(Se,e)?Le[e]=Se[e]:Ot&&_t?Le[e]=_t(u):Le[e]=to(u)}return Le[e]}});var Lt=V((Cf,Nt)=>{var no=Oe(),St=Ie(),Tt=Lr(),io=Dr(),ao=vt(),oo=Te(),so=TypeError,co=oo("toPrimitive");Nt.exports=function(e,u){if(!St(e)||Tt(e))return e;var r=io(e,co),t;if(r){if(u===void 0&&(u="default"),t=no(r,e,u),!St(t)||Tt(t))return t;throw so("Can't convert object to primitive value")}return u===void 0&&(u="number"),ao(e,u)}});var dr=V((gf,Rt)=>{var lo=Lt(),Do=Lr();Rt.exports=function(e){var u=lo(e,"string");return Do(u)?u:u+""}});var Mt=V((Ff,Pt)=>{var fo=Fe(),jt=Ie(),Ur=fo.document,po=jt(Ur)&&jt(Ur.createElement);Pt.exports=function(e){return po?Ur.createElement(e):{}}});var Gr=V((Af,zt)=>{var ho=Be(),vo=Ae(),mo=Mt();zt.exports=!ho&&!vo(function(){return Object.defineProperty(mo("div"),"a",{get:function(){return 7}}).a!=7})});var Vr=V(Ut=>{var Eo=Be(),Co=Oe(),go=Su(),Fo=ar(),Ao=sr(),xo=dr(),bo=ke(),yo=Gr(),$t=Object.getOwnPropertyDescriptor;Ut.f=Eo?$t:function(u,r){if(u=Ao(u),r=xo(r),yo)try{return $t(u,r)}catch{}if(bo(u,r))return Fo(!Co(go.f,u,r),u[r])}});var Vt=V((bf,Gt)=>{var wo=Be(),Bo=Ae();Gt.exports=wo&&Bo(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Re=V((yf,Ht)=>{var ko=Ie(),qo=String,_o=TypeError;Ht.exports=function(e){if(ko(e))return e;throw _o(qo(e)+" is not an object")}});var We=V(Wt=>{var Oo=Be(),Io=Gr(),So=Vt(),hr=Re(),Xt=dr(),To=TypeError,Hr=Object.defineProperty,No=Object.getOwnPropertyDescriptor,Xr="enumerable",Wr="configurable",Kr="writable";Wt.f=Oo?So?function(u,r,t){if(hr(u),r=Xt(r),hr(t),typeof u=="function"&&r==="prototype"&&"value"in t&&Kr in t&&!t[Kr]){var a=No(u,r);a&&a[Kr]&&(u[r]=t.value,t={configurable:Wr in t?t[Wr]:a[Wr],enumerable:Xr in t?t[Xr]:a[Xr],writable:!1})}return Hr(u,r,t)}:Hr:function(u,r,t){if(hr(u),r=Xt(r),hr(t),Io)try{return Hr(u,r,t)}catch{}if("get"in t||"set"in t)throw To("Accessors not supported");return"value"in t&&(u[r]=t.value),u}});var Yr=V((Bf,Kt)=>{var Lo=Be(),Ro=We(),jo=ar();Kt.exports=Lo?function(e,u,r){return Ro.f(e,u,jo(1,r))}:function(e,u,r){return e[u]=r,e}});var Zt=V((kf,Jt)=>{var Jr=Be(),Po=ke(),Yt=Function.prototype,Mo=Jr&&Object.getOwnPropertyDescriptor,Zr=Po(Yt,"name"),zo=Zr&&function(){}.name==="something",$o=Zr&&(!Jr||Jr&&Mo(Yt,"name").configurable);Jt.exports={EXISTS:Zr,PROPER:zo,CONFIGURABLE:$o}});var eu=V((qf,Qt)=>{var Uo=ve(),Go=de(),Qr=pr(),Vo=Uo(Function.toString);Go(Qr.inspectSource)||(Qr.inspectSource=function(e){return Vo(e)});Qt.exports=Qr.inspectSource});var un=V((_f,rn)=>{var Ho=Fe(),Xo=de(),en=Ho.WeakMap;rn.exports=Xo(en)&&/native code/.test(String(en))});var an=V((Of,nn)=>{var Wo=Mr(),Ko=$r(),tn=Wo("keys");nn.exports=function(e){return tn[e]||(tn[e]=Ko(e))}});var ru=V((If,on)=>{on.exports={}});var Dn=V((Sf,ln)=>{var Yo=un(),cn=Fe(),Jo=Ie(),Zo=Yr(),uu=ke(),tu=pr(),Qo=an(),es=ru(),sn="Object already initialized",nu=cn.TypeError,rs=cn.WeakMap,vr,Ke,mr,us=function(e){return mr(e)?Ke(e):vr(e,{})},ts=function(e){return function(u){var r;if(!Jo(u)||(r=Ke(u)).type!==e)throw nu("Incompatible receiver, "+e+" required");return r}};Yo||tu.state?(Ee=tu.state||(tu.state=new rs),Ee.get=Ee.get,Ee.has=Ee.has,Ee.set=Ee.set,vr=function(e,u){if(Ee.has(e))throw nu(sn);return u.facade=e,Ee.set(e,u),u},Ke=function(e){return Ee.get(e)||{}},mr=function(e){return Ee.has(e)}):(Ne=Qo("state"),es[Ne]=!0,vr=function(e,u){if(uu(e,Ne))throw nu(sn);return u.facade=e,Zo(e,Ne,u),u},Ke=function(e){return uu(e,Ne)?e[Ne]:{}},mr=function(e){return uu(e,Ne)});var Ee,Ne;ln.exports={set:vr,get:Ke,has:mr,enforce:us,getterFor:ts}});var dn=V((Tf,pn)=>{var ns=Ae(),is=de(),Er=ke(),iu=Be(),as=Zt().CONFIGURABLE,os=eu(),fn=Dn(),ss=fn.enforce,cs=fn.get,Cr=Object.defineProperty,ls=iu&&!ns(function(){return Cr(function(){},"length",{value:8}).length!==8}),Ds=String(String).split("String"),fs=pn.exports=function(e,u,r){String(u).slice(0,7)==="Symbol("&&(u="["+String(u).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),r&&r.getter&&(u="get "+u),r&&r.setter&&(u="set "+u),(!Er(e,"name")||as&&e.name!==u)&&(iu?Cr(e,"name",{value:u,configurable:!0}):e.name=u),ls&&r&&Er(r,"arity")&&e.length!==r.arity&&Cr(e,"length",{value:r.arity});try{r&&Er(r,"constructor")&&r.constructor?iu&&Cr(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch{}var t=ss(e);return Er(t,"source")||(t.source=Ds.join(typeof u=="string"?u:"")),e};Function.prototype.toString=fs(function(){return is(this)&&cs(this).source||os(this)},"toString")});var vn=V((Nf,hn)=>{var ps=de(),ds=We(),hs=dn(),vs=fr();hn.exports=function(e,u,r,t){t||(t={});var a=t.enumerable,n=t.name!==void 0?t.name:u;if(ps(r)&&hs(r,n,t),t.global)a?e[u]=r:vs(u,r);else{try{t.unsafe?e[u]&&(a=!0):delete e[u]}catch{}a?e[u]=r:ds.f(e,u,{value:r,enumerable:!1,configurable:!t.nonConfigurable,writable:!t.nonWritable})}return e}});var En=V((Lf,mn)=>{var ms=Math.ceil,Es=Math.floor;mn.exports=Math.trunc||function(u){var r=+u;return(r>0?Es:ms)(r)}});var au=V((Rf,Cn)=>{var Cs=En();Cn.exports=function(e){var u=+e;return u!==u||u===0?0:Cs(u)}});var Fn=V((jf,gn)=>{var gs=au(),Fs=Math.max,As=Math.min;gn.exports=function(e,u){var r=gs(e);return r<0?Fs(r+u,0):As(r,u)}});var xn=V((Pf,An)=>{var xs=au(),bs=Math.min;An.exports=function(e){return e>0?bs(xs(e),9007199254740991):0}});var Ye=V((Mf,bn)=>{var ys=xn();bn.exports=function(e){return ys(e.length)}});var Bn=V((zf,wn)=>{var ws=sr(),Bs=Fn(),ks=Ye(),yn=function(e){return function(u,r,t){var a=ws(u),n=ks(a),s=Bs(t,n),c;if(e&&r!=r){for(;n>s;)if(c=a[s++],c!=c)return!0}else for(;n>s;s++)if((e||s in a)&&a[s]===r)return e||s||0;return!e&&-1}};wn.exports={includes:yn(!0),indexOf:yn(!1)}});var _n=V(($f,qn)=>{var qs=ve(),ou=ke(),_s=sr(),Os=Bn().indexOf,Is=ru(),kn=qs([].push);qn.exports=function(e,u){var r=_s(e),t=0,a=[],n;for(n in r)!ou(Is,n)&&ou(r,n)&&kn(a,n);for(;u.length>t;)ou(r,n=u[t++])&&(~Os(a,n)||kn(a,n));return a}});var In=V((Uf,On)=>{On.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var Tn=V(Sn=>{var Ss=_n(),Ts=In(),Ns=Ts.concat("length","prototype");Sn.f=Object.getOwnPropertyNames||function(u){return Ss(u,Ns)}});var Ln=V(Nn=>{Nn.f=Object.getOwnPropertySymbols});var jn=V((Hf,Rn)=>{var Ls=He(),Rs=ve(),js=Tn(),Ps=Ln(),Ms=Re(),zs=Rs([].concat);Rn.exports=Ls("Reflect","ownKeys")||function(u){var r=js.f(Ms(u)),t=Ps.f;return t?zs(r,t(u)):r}});var zn=V((Xf,Mn)=>{var Pn=ke(),$s=jn(),Us=Vr(),Gs=We();Mn.exports=function(e,u,r){for(var t=$s(u),a=Gs.f,n=Us.f,s=0;s{var Vs=Ae(),Hs=de(),Xs=/#|\.prototype\./,Je=function(e,u){var r=Ks[Ws(e)];return r==Js?!0:r==Ys?!1:Hs(u)?Vs(u):!!u},Ws=Je.normalize=function(e){return String(e).replace(Xs,".").toLowerCase()},Ks=Je.data={},Ys=Je.NATIVE="N",Js=Je.POLYFILL="P";$n.exports=Je});var cu=V((Kf,Gn)=>{var su=Fe(),Zs=Vr().f,Qs=Yr(),ec=vn(),rc=fr(),uc=zn(),tc=Un();Gn.exports=function(e,u){var r=e.target,t=e.global,a=e.stat,n,s,c,i,D,o;if(t?s=su:a?s=su[r]||rc(r,{}):s=(su[r]||{}).prototype,s)for(c in u){if(D=u[c],e.dontCallGetSet?(o=Zs(s,c),i=o&&o.value):i=s[c],n=tc(t?c:r+(a?".":"#")+c,e.forced),!n&&i!==void 0){if(typeof D==typeof i)continue;uc(D,i)}(e.sham||i&&i.sham)&&Qs(D,"sham",!0),ec(s,c,D,e)}}});var lu=V((Yf,Vn)=>{var nc=Ve();Vn.exports=Array.isArray||function(u){return nc(u)=="Array"}});var Xn=V((Jf,Hn)=>{var ic=TypeError,ac=9007199254740991;Hn.exports=function(e){if(e>ac)throw ic("Maximum allowed index exceeded");return e}});var Kn=V((Zf,Wn)=>{var oc=Ve(),sc=ve();Wn.exports=function(e){if(oc(e)==="Function")return sc(e)}});var Du=V((Qf,Jn)=>{var Yn=Kn(),cc=Xe(),lc=nr(),Dc=Yn(Yn.bind);Jn.exports=function(e,u){return cc(e),u===void 0?e:lc?Dc(e,u):function(){return e.apply(u,arguments)}}});var ei=V((ep,Qn)=>{"use strict";var fc=lu(),pc=Ye(),dc=Xn(),hc=Du(),Zn=function(e,u,r,t,a,n,s,c){for(var i=a,D=0,o=s?hc(s,c):!1,l,d;D0&&fc(l)?(d=pc(l),i=Zn(e,u,l,d,i,n-1)-1):(dc(i+1),e[i]=l),i++),D++;return i};Qn.exports=Zn});var ti=V((rp,ui)=>{var vc=Te(),mc=vc("toStringTag"),ri={};ri[mc]="z";ui.exports=String(ri)==="[object z]"});var fu=V((up,ni)=>{var Ec=ti(),Cc=de(),gr=Ve(),gc=Te(),Fc=gc("toStringTag"),Ac=Object,xc=gr(function(){return arguments}())=="Arguments",bc=function(e,u){try{return e[u]}catch{}};ni.exports=Ec?gr:function(e){var u,r,t;return e===void 0?"Undefined":e===null?"Null":typeof(r=bc(u=Ac(e),Fc))=="string"?r:xc?gr(u):(t=gr(u))=="Object"&&Cc(u.callee)?"Arguments":t}});var li=V((tp,ci)=>{var yc=ve(),wc=Ae(),ii=de(),Bc=fu(),kc=He(),qc=eu(),ai=function(){},_c=[],oi=kc("Reflect","construct"),pu=/^\s*(?:class|function)\b/,Oc=yc(pu.exec),Ic=!pu.exec(ai),Ze=function(u){if(!ii(u))return!1;try{return oi(ai,_c,u),!0}catch{return!1}},si=function(u){if(!ii(u))return!1;switch(Bc(u)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Ic||!!Oc(pu,qc(u))}catch{return!0}};si.sham=!0;ci.exports=!oi||wc(function(){var e;return Ze(Ze.call)||!Ze(Object)||!Ze(function(){e=!0})||e})?si:Ze});var di=V((np,pi)=>{var Di=lu(),Sc=li(),Tc=Ie(),Nc=Te(),Lc=Nc("species"),fi=Array;pi.exports=function(e){var u;return Di(e)&&(u=e.constructor,Sc(u)&&(u===fi||Di(u.prototype))?u=void 0:Tc(u)&&(u=u[Lc],u===null&&(u=void 0))),u===void 0?fi:u}});var vi=V((ip,hi)=>{var Rc=di();hi.exports=function(e,u){return new(Rc(e))(u===0?0:u)}});var du=V((ap,mi)=>{mi.exports={}});var Ci=V((op,Ei)=>{var Gc=Te(),Vc=du(),Hc=Gc("iterator"),Xc=Array.prototype;Ei.exports=function(e){return e!==void 0&&(Vc.Array===e||Xc[Hc]===e)}});var hu=V((sp,Fi)=>{var Wc=fu(),gi=Dr(),Kc=or(),Yc=du(),Jc=Te(),Zc=Jc("iterator");Fi.exports=function(e){if(!Kc(e))return gi(e,Zc)||gi(e,"@@iterator")||Yc[Wc(e)]}});var xi=V((cp,Ai)=>{var Qc=Oe(),el=Xe(),rl=Re(),ul=lr(),tl=hu(),nl=TypeError;Ai.exports=function(e,u){var r=arguments.length<2?tl(e):u;if(el(r))return rl(Qc(r,e));throw nl(ul(e)+" is not iterable")}});var wi=V((lp,yi)=>{var il=Oe(),bi=Re(),al=Dr();yi.exports=function(e,u,r){var t,a;bi(e);try{if(t=al(e,"return"),!t){if(u==="throw")throw r;return r}t=il(t,e)}catch(n){a=!0,t=n}if(u==="throw")throw r;if(a)throw t;return bi(t),r}});var Oi=V((Dp,_i)=>{var ol=Du(),sl=Oe(),cl=Re(),ll=lr(),Dl=Ci(),fl=Ye(),Bi=Ir(),pl=xi(),dl=hu(),ki=wi(),hl=TypeError,Fr=function(e,u){this.stopped=e,this.result=u},qi=Fr.prototype;_i.exports=function(e,u,r){var t=r&&r.that,a=!!(r&&r.AS_ENTRIES),n=!!(r&&r.IS_RECORD),s=!!(r&&r.IS_ITERATOR),c=!!(r&&r.INTERRUPTED),i=ol(u,t),D,o,l,d,p,g,F,E=function(f){return D&&ki(D,"normal",f),new Fr(!0,f)},b=function(f){return a?(cl(f),c?i(f[0],f[1],E):i(f[0],f[1])):c?i(f,E):i(f)};if(n)D=e.iterator;else if(s)D=e;else{if(o=dl(e),!o)throw hl(ll(e)+" is not iterable");if(Dl(o)){for(l=0,d=fl(e);d>l;l++)if(p=b(e[l]),p&&Bi(qi,p))return p;return new Fr(!1)}D=pl(e,o)}for(g=n?e.next:D.next;!(F=sl(g,D)).done;){try{p=b(F.value)}catch(f){ki(D,"throw",f)}if(typeof p=="object"&&p&&Bi(qi,p))return p}return new Fr(!1)}});var Si=V((fp,Ii)=>{"use strict";var vl=dr(),ml=We(),El=ar();Ii.exports=function(e,u,r){var t=vl(u);t in e?ml.f(e,t,El(0,r)):e[t]=r}});var jc=cu(),Pc=ei(),Mc=Xe(),zc=zr(),$c=Ye(),Uc=vi();jc({target:"Array",proto:!0},{flatMap:function(u){var r=zc(this),t=$c(r),a;return Mc(u),a=Uc(r,0),a.length=Pc(a,r,r,t,0,1,u,arguments.length>1?arguments[1]:void 0),a}});var Cl=cu(),gl=Oi(),Fl=Si();Cl({target:"Object",stat:!0},{fromEntries:function(u){var r={};return gl(u,function(t,a){Fl(r,t,a)},{AS_ENTRIES:!0}),r}});var Al=["cliName","cliCategory","cliDescription"];function xl(e,u){if(e==null)return{};var r=bl(e,u),t,a;if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0)&&Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}function bl(e,u){if(e==null)return{};var r={},t=Object.keys(e),a,n;for(n=0;n=0)&&(r[a]=e[a]);return r}var yl=Object.create,Ar=Object.defineProperty,wl=Object.getOwnPropertyDescriptor,vu=Object.getOwnPropertyNames,Bl=Object.getPrototypeOf,kl=Object.prototype.hasOwnProperty,je=(e,u)=>function(){return e&&(u=(0,e[vu(e)[0]])(e=0)),u},I=(e,u)=>function(){return u||(0,e[vu(e)[0]])((u={exports:{}}).exports,u),u.exports},Ti=(e,u)=>{for(var r in u)Ar(e,r,{get:u[r],enumerable:!0})},Ni=(e,u,r,t)=>{if(u&&typeof u=="object"||typeof u=="function")for(let a of vu(u))!kl.call(e,a)&&a!==r&&Ar(e,a,{get:()=>u[a],enumerable:!(t=wl(u,a))||t.enumerable});return e},ql=(e,u,r)=>(r=e!=null?yl(Bl(e)):{},Ni(u||!e||!e.__esModule?Ar(r,"default",{value:e,enumerable:!0}):r,e)),Li=e=>Ni(Ar({},"__esModule",{value:!0}),e),Qe,S=je({""(){Qe={env:{},argv:[]}}}),Pe=I({"node_modules/xtend/immutable.js"(e,u){S(),u.exports=t;var r=Object.prototype.hasOwnProperty;function t(){for(var a={},n=0;n-1&&DD)return{line:o+1,column:D-(n[o-1]||0)+1,offset:D}}return{}}function i(D){var o=D&&D.line,l=D&&D.column,d;return!isNaN(o)&&!isNaN(l)&&o-1 in n&&(d=(n[o-2]||0)+l-1||0),d>-1&&d",Iacute:"\xCD",Icirc:"\xCE",Igrave:"\xCC",Iuml:"\xCF",LT:"<",Ntilde:"\xD1",Oacute:"\xD3",Ocirc:"\xD4",Ograve:"\xD2",Oslash:"\xD8",Otilde:"\xD5",Ouml:"\xD6",QUOT:'"',REG:"\xAE",THORN:"\xDE",Uacute:"\xDA",Ucirc:"\xDB",Ugrave:"\xD9",Uuml:"\xDC",Yacute:"\xDD",aacute:"\xE1",acirc:"\xE2",acute:"\xB4",aelig:"\xE6",agrave:"\xE0",amp:"&",aring:"\xE5",atilde:"\xE3",auml:"\xE4",brvbar:"\xA6",ccedil:"\xE7",cedil:"\xB8",cent:"\xA2",copy:"\xA9",curren:"\xA4",deg:"\xB0",divide:"\xF7",eacute:"\xE9",ecirc:"\xEA",egrave:"\xE8",eth:"\xF0",euml:"\xEB",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE",gt:">",iacute:"\xED",icirc:"\xEE",iexcl:"\xA1",igrave:"\xEC",iquest:"\xBF",iuml:"\xEF",laquo:"\xAB",lt:"<",macr:"\xAF",micro:"\xB5",middot:"\xB7",nbsp:"\xA0",not:"\xAC",ntilde:"\xF1",oacute:"\xF3",ocirc:"\xF4",ograve:"\xF2",ordf:"\xAA",ordm:"\xBA",oslash:"\xF8",otilde:"\xF5",ouml:"\xF6",para:"\xB6",plusmn:"\xB1",pound:"\xA3",quot:'"',raquo:"\xBB",reg:"\xAE",sect:"\xA7",shy:"\xAD",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",szlig:"\xDF",thorn:"\xFE",times:"\xD7",uacute:"\xFA",ucirc:"\xFB",ugrave:"\xF9",uml:"\xA8",uuml:"\xFC",yacute:"\xFD",yen:"\xA5",yuml:"\xFF"}}}),Ll=I({"node_modules/character-reference-invalid/index.json"(e,u){u.exports={0:"\uFFFD",128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"}}}),Me=I({"node_modules/is-decimal/index.js"(e,u){"use strict";S(),u.exports=r;function r(t){var a=typeof t=="string"?t.charCodeAt(0):t;return a>=48&&a<=57}}}),Rl=I({"node_modules/is-hexadecimal/index.js"(e,u){"use strict";S(),u.exports=r;function r(t){var a=typeof t=="string"?t.charCodeAt(0):t;return a>=97&&a<=102||a>=65&&a<=70||a>=48&&a<=57}}}),er=I({"node_modules/is-alphabetical/index.js"(e,u){"use strict";S(),u.exports=r;function r(t){var a=typeof t=="string"?t.charCodeAt(0):t;return a>=97&&a<=122||a>=65&&a<=90}}}),jl=I({"node_modules/is-alphanumerical/index.js"(e,u){"use strict";S();var r=er(),t=Me();u.exports=a;function a(n){return r(n)||t(n)}}}),Pl=I({"node_modules/character-entities/index.json"(e,u){u.exports={AEli:"\xC6",AElig:"\xC6",AM:"&",AMP:"&",Aacut:"\xC1",Aacute:"\xC1",Abreve:"\u0102",Acir:"\xC2",Acirc:"\xC2",Acy:"\u0410",Afr:"\u{1D504}",Agrav:"\xC0",Agrave:"\xC0",Alpha:"\u0391",Amacr:"\u0100",And:"\u2A53",Aogon:"\u0104",Aopf:"\u{1D538}",ApplyFunction:"\u2061",Arin:"\xC5",Aring:"\xC5",Ascr:"\u{1D49C}",Assign:"\u2254",Atild:"\xC3",Atilde:"\xC3",Aum:"\xC4",Auml:"\xC4",Backslash:"\u2216",Barv:"\u2AE7",Barwed:"\u2306",Bcy:"\u0411",Because:"\u2235",Bernoullis:"\u212C",Beta:"\u0392",Bfr:"\u{1D505}",Bopf:"\u{1D539}",Breve:"\u02D8",Bscr:"\u212C",Bumpeq:"\u224E",CHcy:"\u0427",COP:"\xA9",COPY:"\xA9",Cacute:"\u0106",Cap:"\u22D2",CapitalDifferentialD:"\u2145",Cayleys:"\u212D",Ccaron:"\u010C",Ccedi:"\xC7",Ccedil:"\xC7",Ccirc:"\u0108",Cconint:"\u2230",Cdot:"\u010A",Cedilla:"\xB8",CenterDot:"\xB7",Cfr:"\u212D",Chi:"\u03A7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",Colon:"\u2237",Colone:"\u2A74",Congruent:"\u2261",Conint:"\u222F",ContourIntegral:"\u222E",Copf:"\u2102",Coproduct:"\u2210",CounterClockwiseContourIntegral:"\u2233",Cross:"\u2A2F",Cscr:"\u{1D49E}",Cup:"\u22D3",CupCap:"\u224D",DD:"\u2145",DDotrahd:"\u2911",DJcy:"\u0402",DScy:"\u0405",DZcy:"\u040F",Dagger:"\u2021",Darr:"\u21A1",Dashv:"\u2AE4",Dcaron:"\u010E",Dcy:"\u0414",Del:"\u2207",Delta:"\u0394",Dfr:"\u{1D507}",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",Diamond:"\u22C4",DifferentialD:"\u2146",Dopf:"\u{1D53B}",Dot:"\xA8",DotDot:"\u20DC",DotEqual:"\u2250",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",Downarrow:"\u21D3",Dscr:"\u{1D49F}",Dstrok:"\u0110",ENG:"\u014A",ET:"\xD0",ETH:"\xD0",Eacut:"\xC9",Eacute:"\xC9",Ecaron:"\u011A",Ecir:"\xCA",Ecirc:"\xCA",Ecy:"\u042D",Edot:"\u0116",Efr:"\u{1D508}",Egrav:"\xC8",Egrave:"\xC8",Element:"\u2208",Emacr:"\u0112",EmptySmallSquare:"\u25FB",EmptyVerySmallSquare:"\u25AB",Eogon:"\u0118",Eopf:"\u{1D53C}",Epsilon:"\u0395",Equal:"\u2A75",EqualTilde:"\u2242",Equilibrium:"\u21CC",Escr:"\u2130",Esim:"\u2A73",Eta:"\u0397",Eum:"\xCB",Euml:"\xCB",Exists:"\u2203",ExponentialE:"\u2147",Fcy:"\u0424",Ffr:"\u{1D509}",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",Fopf:"\u{1D53D}",ForAll:"\u2200",Fouriertrf:"\u2131",Fscr:"\u2131",GJcy:"\u0403",G:">",GT:">",Gamma:"\u0393",Gammad:"\u03DC",Gbreve:"\u011E",Gcedil:"\u0122",Gcirc:"\u011C",Gcy:"\u0413",Gdot:"\u0120",Gfr:"\u{1D50A}",Gg:"\u22D9",Gopf:"\u{1D53E}",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",Gt:"\u226B",HARDcy:"\u042A",Hacek:"\u02C7",Hat:"^",Hcirc:"\u0124",Hfr:"\u210C",HilbertSpace:"\u210B",Hopf:"\u210D",HorizontalLine:"\u2500",Hscr:"\u210B",Hstrok:"\u0126",HumpDownHump:"\u224E",HumpEqual:"\u224F",IEcy:"\u0415",IJlig:"\u0132",IOcy:"\u0401",Iacut:"\xCD",Iacute:"\xCD",Icir:"\xCE",Icirc:"\xCE",Icy:"\u0418",Idot:"\u0130",Ifr:"\u2111",Igrav:"\xCC",Igrave:"\xCC",Im:"\u2111",Imacr:"\u012A",ImaginaryI:"\u2148",Implies:"\u21D2",Int:"\u222C",Integral:"\u222B",Intersection:"\u22C2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Iogon:"\u012E",Iopf:"\u{1D540}",Iota:"\u0399",Iscr:"\u2110",Itilde:"\u0128",Iukcy:"\u0406",Ium:"\xCF",Iuml:"\xCF",Jcirc:"\u0134",Jcy:"\u0419",Jfr:"\u{1D50D}",Jopf:"\u{1D541}",Jscr:"\u{1D4A5}",Jsercy:"\u0408",Jukcy:"\u0404",KHcy:"\u0425",KJcy:"\u040C",Kappa:"\u039A",Kcedil:"\u0136",Kcy:"\u041A",Kfr:"\u{1D50E}",Kopf:"\u{1D542}",Kscr:"\u{1D4A6}",LJcy:"\u0409",L:"<",LT:"<",Lacute:"\u0139",Lambda:"\u039B",Lang:"\u27EA",Laplacetrf:"\u2112",Larr:"\u219E",Lcaron:"\u013D",Lcedil:"\u013B",Lcy:"\u041B",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",LeftRightArrow:"\u2194",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",Leftarrow:"\u21D0",Leftrightarrow:"\u21D4",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",LessLess:"\u2AA1",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",Lfr:"\u{1D50F}",Ll:"\u22D8",Lleftarrow:"\u21DA",Lmidot:"\u013F",LongLeftArrow:"\u27F5",LongLeftRightArrow:"\u27F7",LongRightArrow:"\u27F6",Longleftarrow:"\u27F8",Longleftrightarrow:"\u27FA",Longrightarrow:"\u27F9",Lopf:"\u{1D543}",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",Lscr:"\u2112",Lsh:"\u21B0",Lstrok:"\u0141",Lt:"\u226A",Map:"\u2905",Mcy:"\u041C",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",MinusPlus:"\u2213",Mopf:"\u{1D544}",Mscr:"\u2133",Mu:"\u039C",NJcy:"\u040A",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041D",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,Nfr:"\u{1D511}",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",Not:"\u2AEC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",Nscr:"\u{1D4A9}",Ntild:"\xD1",Ntilde:"\xD1",Nu:"\u039D",OElig:"\u0152",Oacut:"\xD3",Oacute:"\xD3",Ocir:"\xD4",Ocirc:"\xD4",Ocy:"\u041E",Odblac:"\u0150",Ofr:"\u{1D512}",Ograv:"\xD2",Ograve:"\xD2",Omacr:"\u014C",Omega:"\u03A9",Omicron:"\u039F",Oopf:"\u{1D546}",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",Or:"\u2A54",Oscr:"\u{1D4AA}",Oslas:"\xD8",Oslash:"\xD8",Otild:"\xD5",Otilde:"\xD5",Otimes:"\u2A37",Oum:"\xD6",Ouml:"\xD6",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",PartialD:"\u2202",Pcy:"\u041F",Pfr:"\u{1D513}",Phi:"\u03A6",Pi:"\u03A0",PlusMinus:"\xB1",Poincareplane:"\u210C",Popf:"\u2119",Pr:"\u2ABB",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",Prime:"\u2033",Product:"\u220F",Proportion:"\u2237",Proportional:"\u221D",Pscr:"\u{1D4AB}",Psi:"\u03A8",QUO:'"',QUOT:'"',Qfr:"\u{1D514}",Qopf:"\u211A",Qscr:"\u{1D4AC}",RBarr:"\u2910",RE:"\xAE",REG:"\xAE",Racute:"\u0154",Rang:"\u27EB",Rarr:"\u21A0",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",Re:"\u211C",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",Rfr:"\u211C",Rho:"\u03A1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",Rightarrow:"\u21D2",Ropf:"\u211D",RoundImplies:"\u2970",Rrightarrow:"\u21DB",Rscr:"\u211B",Rsh:"\u21B1",RuleDelayed:"\u29F4",SHCHcy:"\u0429",SHcy:"\u0428",SOFTcy:"\u042C",Sacute:"\u015A",Sc:"\u2ABC",Scaron:"\u0160",Scedil:"\u015E",Scirc:"\u015C",Scy:"\u0421",Sfr:"\u{1D516}",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",Sigma:"\u03A3",SmallCircle:"\u2218",Sopf:"\u{1D54A}",Sqrt:"\u221A",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Sscr:"\u{1D4AE}",Star:"\u22C6",Sub:"\u22D0",Subset:"\u22D0",SubsetEqual:"\u2286",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",SuchThat:"\u220B",Sum:"\u2211",Sup:"\u22D1",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22D1",THOR:"\xDE",THORN:"\xDE",TRADE:"\u2122",TSHcy:"\u040B",TScy:"\u0426",Tab:" ",Tau:"\u03A4",Tcaron:"\u0164",Tcedil:"\u0162",Tcy:"\u0422",Tfr:"\u{1D517}",Therefore:"\u2234",Theta:"\u0398",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",Topf:"\u{1D54B}",TripleDot:"\u20DB",Tscr:"\u{1D4AF}",Tstrok:"\u0166",Uacut:"\xDA",Uacute:"\xDA",Uarr:"\u219F",Uarrocir:"\u2949",Ubrcy:"\u040E",Ubreve:"\u016C",Ucir:"\xDB",Ucirc:"\xDB",Ucy:"\u0423",Udblac:"\u0170",Ufr:"\u{1D518}",Ugrav:"\xD9",Ugrave:"\xD9",Umacr:"\u016A",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",Uopf:"\u{1D54C}",UpArrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",UpEquilibrium:"\u296E",UpTee:"\u22A5",UpTeeArrow:"\u21A5",Uparrow:"\u21D1",Updownarrow:"\u21D5",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",Upsilon:"\u03A5",Uring:"\u016E",Uscr:"\u{1D4B0}",Utilde:"\u0168",Uum:"\xDC",Uuml:"\xDC",VDash:"\u22AB",Vbar:"\u2AEB",Vcy:"\u0412",Vdash:"\u22A9",Vdashl:"\u2AE6",Vee:"\u22C1",Verbar:"\u2016",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",Vopf:"\u{1D54D}",Vscr:"\u{1D4B1}",Vvdash:"\u22AA",Wcirc:"\u0174",Wedge:"\u22C0",Wfr:"\u{1D51A}",Wopf:"\u{1D54E}",Wscr:"\u{1D4B2}",Xfr:"\u{1D51B}",Xi:"\u039E",Xopf:"\u{1D54F}",Xscr:"\u{1D4B3}",YAcy:"\u042F",YIcy:"\u0407",YUcy:"\u042E",Yacut:"\xDD",Yacute:"\xDD",Ycirc:"\u0176",Ycy:"\u042B",Yfr:"\u{1D51C}",Yopf:"\u{1D550}",Yscr:"\u{1D4B4}",Yuml:"\u0178",ZHcy:"\u0416",Zacute:"\u0179",Zcaron:"\u017D",Zcy:"\u0417",Zdot:"\u017B",ZeroWidthSpace:"\u200B",Zeta:"\u0396",Zfr:"\u2128",Zopf:"\u2124",Zscr:"\u{1D4B5}",aacut:"\xE1",aacute:"\xE1",abreve:"\u0103",ac:"\u223E",acE:"\u223E\u0333",acd:"\u223F",acir:"\xE2",acirc:"\xE2",acut:"\xB4",acute:"\xB4",acy:"\u0430",aeli:"\xE6",aelig:"\xE6",af:"\u2061",afr:"\u{1D51E}",agrav:"\xE0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",alpha:"\u03B1",amacr:"\u0101",amalg:"\u2A3F",am:"&",amp:"&",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",aogon:"\u0105",aopf:"\u{1D552}",ap:"\u2248",apE:"\u2A70",apacir:"\u2A6F",ape:"\u224A",apid:"\u224B",apos:"'",approx:"\u2248",approxeq:"\u224A",arin:"\xE5",aring:"\xE5",ascr:"\u{1D4B6}",ast:"*",asymp:"\u2248",asympeq:"\u224D",atild:"\xE3",atilde:"\xE3",aum:"\xE4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",bNot:"\u2AED",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",barvee:"\u22BD",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",beta:"\u03B2",beth:"\u2136",between:"\u226C",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bnot:"\u2310",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxDL:"\u2557",boxDR:"\u2554",boxDl:"\u2556",boxDr:"\u2553",boxH:"\u2550",boxHD:"\u2566",boxHU:"\u2569",boxHd:"\u2564",boxHu:"\u2567",boxUL:"\u255D",boxUR:"\u255A",boxUl:"\u255C",boxUr:"\u2559",boxV:"\u2551",boxVH:"\u256C",boxVL:"\u2563",boxVR:"\u2560",boxVh:"\u256B",boxVl:"\u2562",boxVr:"\u255F",boxbox:"\u29C9",boxdL:"\u2555",boxdR:"\u2552",boxdl:"\u2510",boxdr:"\u250C",boxh:"\u2500",boxhD:"\u2565",boxhU:"\u2568",boxhd:"\u252C",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxuL:"\u255B",boxuR:"\u2558",boxul:"\u2518",boxur:"\u2514",boxv:"\u2502",boxvH:"\u256A",boxvL:"\u2561",boxvR:"\u255E",boxvh:"\u253C",boxvl:"\u2524",boxvr:"\u251C",bprime:"\u2035",breve:"\u02D8",brvba:"\xA6",brvbar:"\xA6",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",bumpeq:"\u224F",cacute:"\u0107",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",ccaps:"\u2A4D",ccaron:"\u010D",ccedi:"\xE7",ccedil:"\xE7",ccirc:"\u0109",ccups:"\u2A4C",ccupssm:"\u2A50",cdot:"\u010B",cedi:"\xB8",cedil:"\xB8",cemptyv:"\u29B2",cen:"\xA2",cent:"\xA2",centerdot:"\xB7",cfr:"\u{1D520}",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",chi:"\u03C7",cir:"\u25CB",cirE:"\u29C3",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledR:"\xAE",circledS:"\u24C8",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",clubs:"\u2663",clubsuit:"\u2663",colon:":",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",conint:"\u222E",copf:"\u{1D554}",coprod:"\u2210",cop:"\xA9",copy:"\xA9",copysr:"\u2117",crarr:"\u21B5",cross:"\u2717",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cup:"\u222A",cupbrcap:"\u2A48",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curre:"\xA4",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dArr:"\u21D3",dHar:"\u2965",dagger:"\u2020",daleth:"\u2138",darr:"\u2193",dash:"\u2010",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",dcaron:"\u010F",dcy:"\u0434",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",ddotseq:"\u2A77",de:"\xB0",deg:"\xB0",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",dfr:"\u{1D521}",dharl:"\u21C3",dharr:"\u21C2",diam:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divid:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",dopf:"\u{1D555}",dot:"\u02D9",doteq:"\u2250",doteqdot:"\u2251",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",downarrow:"\u2193",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",dscr:"\u{1D4B9}",dscy:"\u0455",dsol:"\u29F6",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",dzcy:"\u045F",dzigrarr:"\u27FF",eDDot:"\u2A77",eDot:"\u2251",eacut:"\xE9",eacute:"\xE9",easter:"\u2A6E",ecaron:"\u011B",ecir:"\xEA",ecirc:"\xEA",ecolon:"\u2255",ecy:"\u044D",edot:"\u0117",ee:"\u2147",efDot:"\u2252",efr:"\u{1D522}",eg:"\u2A9A",egrav:"\xE8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",eng:"\u014B",ensp:"\u2002",eogon:"\u0119",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",equals:"=",equest:"\u225F",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erDot:"\u2253",erarr:"\u2971",escr:"\u212F",esdot:"\u2250",esim:"\u2242",eta:"\u03B7",et:"\xF0",eth:"\xF0",eum:"\xEB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",expectation:"\u2130",exponentiale:"\u2147",fallingdotseq:"\u2252",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",ffr:"\u{1D523}",filig:"\uFB01",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",fopf:"\u{1D557}",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",fpartint:"\u2A0D",frac1:"\xBC",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac3:"\xBE",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",gE:"\u2267",gEl:"\u2A8C",gacute:"\u01F5",gamma:"\u03B3",gammad:"\u03DD",gap:"\u2A86",gbreve:"\u011F",gcirc:"\u011D",gcy:"\u0433",gdot:"\u0121",ge:"\u2265",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",gfr:"\u{1D524}",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",gjcy:"\u0453",gl:"\u2277",glE:"\u2A92",gla:"\u2AA5",glj:"\u2AA4",gnE:"\u2269",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",gopf:"\u{1D558}",grave:"`",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",g:">",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",hArr:"\u21D4",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",hardcy:"\u044A",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",hbar:"\u210F",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",horbar:"\u2015",hscr:"\u{1D4BD}",hslash:"\u210F",hstrok:"\u0127",hybull:"\u2043",hyphen:"\u2010",iacut:"\xED",iacute:"\xED",ic:"\u2063",icir:"\xEE",icirc:"\xEE",icy:"\u0438",iecy:"\u0435",iexc:"\xA1",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",igrav:"\xEC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",ijlig:"\u0133",imacr:"\u012B",image:"\u2111",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",int:"\u222B",intcal:"\u22BA",integers:"\u2124",intercal:"\u22BA",intlarhk:"\u2A17",intprod:"\u2A3C",iocy:"\u0451",iogon:"\u012F",iopf:"\u{1D55A}",iota:"\u03B9",iprod:"\u2A3C",iques:"\xBF",iquest:"\xBF",iscr:"\u{1D4BE}",isin:"\u2208",isinE:"\u22F9",isindot:"\u22F5",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",itilde:"\u0129",iukcy:"\u0456",ium:"\xEF",iuml:"\xEF",jcirc:"\u0135",jcy:"\u0439",jfr:"\u{1D527}",jmath:"\u0237",jopf:"\u{1D55B}",jscr:"\u{1D4BF}",jsercy:"\u0458",jukcy:"\u0454",kappa:"\u03BA",kappav:"\u03F0",kcedil:"\u0137",kcy:"\u043A",kfr:"\u{1D528}",kgreen:"\u0138",khcy:"\u0445",kjcy:"\u045C",kopf:"\u{1D55C}",kscr:"\u{1D4C0}",lAarr:"\u21DA",lArr:"\u21D0",lAtail:"\u291B",lBarr:"\u290E",lE:"\u2266",lEg:"\u2A8B",lHar:"\u2962",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",lambda:"\u03BB",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",laqu:"\xAB",laquo:"\xAB",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",lcaron:"\u013E",lcedil:"\u013C",lceil:"\u2308",lcub:"{",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",leftarrow:"\u2190",leftarrowtail:"\u21A2",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",leftthreetimes:"\u22CB",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",lessgtr:"\u2276",lesssim:"\u2272",lfisht:"\u297C",lfloor:"\u230A",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",ljcy:"\u0459",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",llhard:"\u296B",lltri:"\u25FA",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnE:"\u2268",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",lstrok:"\u0142",l:"<",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltrPar:"\u2996",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",mDDot:"\u223A",mac:"\xAF",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",mcy:"\u043C",mdash:"\u2014",measuredangle:"\u2221",mfr:"\u{1D52A}",mho:"\u2127",micr:"\xB5",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middo:"\xB7",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",mstpos:"\u223E",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nGg:"\u22D9\u0338",nGt:"\u226B\u20D2",nGtv:"\u226B\u0338",nLeftarrow:"\u21CD",nLeftrightarrow:"\u21CE",nLl:"\u22D8\u0338",nLt:"\u226A\u20D2",nLtv:"\u226A\u0338",nRightarrow:"\u21CF",nVDash:"\u22AF",nVdash:"\u22AE",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbs:"\xA0",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",neArr:"\u21D7",nearhk:"\u2924",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",ngsim:"\u2275",ngt:"\u226F",ngtr:"\u226F",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",njcy:"\u045A",nlArr:"\u21CD",nlE:"\u2266\u0338",nlarr:"\u219A",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nlsim:"\u2274",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nmid:"\u2224",nopf:"\u{1D55F}",no:"\xAC",not:"\xAC",notin:"\u2209",notinE:"\u22F9\u0338",notindot:"\u22F5\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",ntild:"\xF1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvDash:"\u22AD",nvHarr:"\u2904",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwArr:"\u21D6",nwarhk:"\u2923",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",oS:"\u24C8",oacut:"\xF3",oacute:"\xF3",oast:"\u229B",ocir:"\xF4",ocirc:"\xF4",ocy:"\u043E",odash:"\u229D",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",oelig:"\u0153",ofcir:"\u29BF",ofr:"\u{1D52C}",ogon:"\u02DB",ograv:"\xF2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",omacr:"\u014D",omega:"\u03C9",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",oopf:"\u{1D560}",opar:"\u29B7",operp:"\u29B9",oplus:"\u2295",or:"\u2228",orarr:"\u21BB",ord:"\xBA",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oscr:"\u2134",oslas:"\xF8",oslash:"\xF8",osol:"\u2298",otild:"\xF5",otilde:"\xF5",otimes:"\u2297",otimesas:"\u2A36",oum:"\xF6",ouml:"\xF6",ovbar:"\u233D",par:"\xB6",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",pfr:"\u{1D52D}",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",plusm:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",pointint:"\u2A15",popf:"\u{1D561}",poun:"\xA3",pound:"\xA3",pr:"\u227A",prE:"\u2AB3",prap:"\u2AB7",prcue:"\u227C",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",prime:"\u2032",primes:"\u2119",prnE:"\u2AB5",prnap:"\u2AB9",prnsim:"\u22E8",prod:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",pscr:"\u{1D4C5}",psi:"\u03C8",puncsp:"\u2008",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",qprime:"\u2057",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quo:'"',quot:'"',rAarr:"\u21DB",rArr:"\u21D2",rAtail:"\u291C",rBarr:"\u290F",rHar:"\u2964",race:"\u223D\u0331",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raqu:"\xBB",raquo:"\xBB",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",re:"\xAE",reg:"\xAE",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",rho:"\u03C1",rhov:"\u03F1",rightarrow:"\u2192",rightarrowtail:"\u21A3",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",rightthreetimes:"\u22CC",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",rsaquo:"\u203A",rscr:"\u{1D4C7}",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",ruluhar:"\u2968",rx:"\u211E",sacute:"\u015B",sbquo:"\u201A",sc:"\u227B",scE:"\u2AB4",scap:"\u2AB8",scaron:"\u0161",sccue:"\u227D",sce:"\u2AB0",scedil:"\u015F",scirc:"\u015D",scnE:"\u2AB6",scnap:"\u2ABA",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",seArr:"\u21D8",searhk:"\u2925",searr:"\u2198",searrow:"\u2198",sec:"\xA7",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",shchcy:"\u0449",shcy:"\u0448",shortmid:"\u2223",shortparallel:"\u2225",sh:"\xAD",shy:"\xAD",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",square:"\u25A1",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",subE:"\u2AC5",subdot:"\u2ABD",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",sum:"\u2211",sung:"\u266A",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supE:"\u2AC6",supdot:"\u2ABE",supdsub:"\u2AD8",supe:"\u2287",supedot:"\u2AC4",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swArr:"\u21D9",swarhk:"\u2926",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szli:"\xDF",szlig:"\xDF",target:"\u2316",tau:"\u03C4",tbrk:"\u23B4",tcaron:"\u0165",tcedil:"\u0163",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",thor:"\xFE",thorn:"\xFE",tilde:"\u02DC",time:"\xD7",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",tscr:"\u{1D4C9}",tscy:"\u0446",tshcy:"\u045B",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",uArr:"\u21D1",uHar:"\u2963",uacut:"\xFA",uacute:"\xFA",uarr:"\u2191",ubrcy:"\u045E",ubreve:"\u016D",ucir:"\xFB",ucirc:"\xFB",ucy:"\u0443",udarr:"\u21C5",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",ufr:"\u{1D532}",ugrav:"\xF9",ugrave:"\xF9",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",umacr:"\u016B",um:"\xA8",uml:"\xA8",uogon:"\u0173",uopf:"\u{1D566}",uparrow:"\u2191",updownarrow:"\u2195",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",upsi:"\u03C5",upsih:"\u03D2",upsilon:"\u03C5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",uring:"\u016F",urtri:"\u25F9",uscr:"\u{1D4CA}",utdot:"\u22F0",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",uum:"\xFC",uuml:"\xFC",uwangle:"\u29A7",vArr:"\u21D5",vBar:"\u2AE8",vBarv:"\u2AE9",vDash:"\u22A8",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vcy:"\u0432",vdash:"\u22A2",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",vert:"|",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",vzigzag:"\u299A",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",wfr:"\u{1D534}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",yacut:"\xFD",yacute:"\xFD",yacy:"\u044F",ycirc:"\u0177",ycy:"\u044B",ye:"\xA5",yen:"\xA5",yfr:"\u{1D536}",yicy:"\u0457",yopf:"\u{1D56A}",yscr:"\u{1D4CE}",yucy:"\u044E",yum:"\xFF",yuml:"\xFF",zacute:"\u017A",zcaron:"\u017E",zcy:"\u0437",zdot:"\u017C",zeetrf:"\u2128",zeta:"\u03B6",zfr:"\u{1D537}",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}}}),Ml=I({"node_modules/parse-entities/decode-entity.js"(e,u){"use strict";S();var r=Pl();u.exports=a;var t={}.hasOwnProperty;function a(n){return t.call(r,n)?r[n]:!1}}}),xr=I({"node_modules/parse-entities/index.js"(e,u){"use strict";S();var r=Nl(),t=Ll(),a=Me(),n=Rl(),s=jl(),c=Ml();u.exports=J;var i={}.hasOwnProperty,D=String.fromCharCode,o=Function.prototype,l={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},d=9,p=10,g=12,F=32,E=38,b=59,f=60,x=61,v=35,h=88,m=120,C=65533,w="named",q="hexadecimal",L="decimal",B={};B[q]=16,B[L]=10;var O={};O[w]=s,O[L]=a,O[q]=n;var T=1,P=2,A=3,j=4,H=5,U=6,X=7,R={};R[T]="Named character references must be terminated by a semicolon",R[P]="Numeric character references must be terminated by a semicolon",R[A]="Named character references cannot be empty",R[j]="Numeric character references cannot be empty",R[H]="Named character references must be known",R[U]="Numeric character references cannot be disallowed",R[X]="Numeric character references cannot be outside the permissible Unicode range";function J(k,y){var _={},N,G;y||(y={});for(G in l)N=y[G],_[G]=N==null?l[G]:N;return(_.position.indent||_.position.start)&&(_.indent=_.position.indent||[],_.position=_.position.start),z(k,_)}function z(k,y){var _=y.additional,N=y.nonTerminated,G=y.text,W=y.reference,K=y.warning,ee=y.textContext,Y=y.referenceContext,ue=y.warningContext,le=y.position,ce=y.indent||[],te=k.length,Z=0,Q=-1,De=le.column||1,ye=le.line||1,fe="",he=[],ae,pe,ne,re,we,oe,ie,Ce,rr,br,qe,$e,_e,xe,Fu,Ue,ur,ge,se;for(typeof _=="string"&&(_=_.charCodeAt(0)),Ue=Ge(),Ce=K?ta:o,Z--,te++;++Z65535&&(oe-=65536,br+=D(oe>>>10|55296),oe=56320|oe&1023),oe=br+D(oe))):xe!==w&&Ce(j,ge)),oe?(Au(),Ue=Ge(),Z=se-1,De+=se-_e+1,he.push(oe),ur=Ge(),ur.offset++,W&&W.call(Y,oe,{start:Ue,end:ur},k.slice(_e-1,se)),Ue=ur):(re=k.slice(_e-1,se),fe+=re,De+=re.length,Z=se-1)}else we===10&&(ye++,Q++,De=0),we===we?(fe+=D(we),De++):Au();return he.join("");function Ge(){return{line:ye,column:De,offset:Z+(le.offset||0)}}function ta(xu,bu){var yr=Ge();yr.column+=bu,yr.offset+=bu,K.call(ue,R[xu],yr,xu)}function Au(){fe&&(he.push(fe),G&&G.call(ee,fe,{start:Ue,end:Ge()}),fe="")}}function M(k){return k>=55296&&k<=57343||k>1114111}function $(k){return k>=1&&k<=8||k===11||k>=13&&k<=31||k>=127&&k<=159||k>=64976&&k<=65007||(k&65535)===65535||(k&65535)===65534}}}),zl=I({"node_modules/remark-parse/lib/decode.js"(e,u){"use strict";S();var r=Pe(),t=xr();u.exports=a;function a(n){return c.raw=i,c;function s(o){for(var l=n.offset,d=o.line,p=[];++d&&d in l;)p.push((l[d]||0)+1);return{start:o,indent:p}}function c(o,l,d){t(o,{position:s(l),warning:D,text:d,reference:d,textContext:n,referenceContext:n})}function i(o,l,d){return t(o,r(d,{position:s(l),warning:D}))}function D(o,l,d){d!==3&&n.file.message(o,l)}}}}),$l=I({"node_modules/remark-parse/lib/tokenizer.js"(e,u){"use strict";S(),u.exports=r;function r(s){return c;function c(i,D){var o=this,l=o.offset,d=[],p=o[s+"Methods"],g=o[s+"Tokenizers"],F=D.line,E=D.column,b,f,x,v,h,m;if(!i)return d;for(P.now=q,P.file=o.file,C("");i;){for(b=-1,f=p.length,h=!1;++b"],t=r.concat(["~","|"]),a=t.concat([` +`,'"',"$","%","&","'",",","/",":",";","<","=","?","@","^"]);n.default=r,n.gfm=t,n.commonmark=a;function n(s){var c=s||{};return c.commonmark?a:c.gfm?t:r}}}),Gl=I({"node_modules/remark-parse/lib/block-elements.js"(e,u){"use strict";S(),u.exports=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","legend","li","link","main","menu","menuitem","meta","nav","noframes","ol","optgroup","option","p","param","pre","section","source","title","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]}}),Ri=I({"node_modules/remark-parse/lib/defaults.js"(e,u){"use strict";S(),u.exports={position:!0,gfm:!0,commonmark:!1,pedantic:!1,blocks:Gl()}}}),Vl=I({"node_modules/remark-parse/lib/set-options.js"(e,u){"use strict";S();var r=Pe(),t=Ul(),a=Ri();u.exports=n;function n(s){var c=this,i=c.options,D,o;if(s==null)s={};else if(typeof s=="object")s=r(s);else throw new Error("Invalid value `"+s+"` for setting `options`");for(D in a){if(o=s[D],o==null&&(o=i[D]),D!=="blocks"&&typeof o!="boolean"||D==="blocks"&&typeof o!="object")throw new Error("Invalid value `"+o+"` for setting `options."+D+"`");s[D]=o}return c.options=s,c.escape=t(s),c}}}),Hl=I({"node_modules/unist-util-is/convert.js"(e,u){"use strict";S(),u.exports=r;function r(c){if(c==null)return s;if(typeof c=="string")return n(c);if(typeof c=="object")return"length"in c?a(c):t(c);if(typeof c=="function")return c;throw new Error("Expected function, string, or object as test")}function t(c){return i;function i(D){var o;for(o in c)if(D[o]!==c[o])return!1;return!0}}function a(c){for(var i=[],D=-1;++D":""))+")"),h;function h(){var m=f.concat(E),C=[],w,q;if((!o||g(E,b,f[f.length-1]||null))&&(C=i(l(E,f)),C[0]===s))return C;if(E.children&&C[0]!==n)for(q=(d?E.children.length:-1)+p;q>-1&&q"u")t=n,r="";else if(r.length>=c)return r.substr(0,c);for(;c>r.length&&s>1;)s&1&&(r+=n),s>>=1,n+=n;return r+=n,r=r.substr(0,c),r}}}),ji=I({"node_modules/trim-trailing-lines/index.js"(e,u){"use strict";S(),u.exports=r;function r(t){return String(t).replace(/\n+$/,"")}}}),Ql=I({"node_modules/remark-parse/lib/tokenize/code-indented.js"(e,u){"use strict";S();var r=mu(),t=ji();u.exports=D;var a=` +`,n=" ",s=" ",c=4,i=r(s,c);function D(o,l,d){for(var p=-1,g=l.length,F="",E="",b="",f="",x,v,h;++p=i)){for(w="";Es)&&!(!v||!d&&D.charAt(g+1)===n)){for(p=D.length+1,x="";++g=i&&(!E||E===t)?(F+=x,d?!0:o(F)({type:"thematicBreak"})):void 0}}}),Pi=I({"node_modules/remark-parse/lib/util/get-indentation.js"(e,u){"use strict";S(),u.exports=s;var r=" ",t=" ",a=1,n=4;function s(c){for(var i=0,D=0,o=c.charAt(i),l={},d,p=0;o===r||o===t;){for(d=o===r?n:a,D+=d,d>1&&(D=Math.floor(D/d)*d);p0&&E.indent=Q.indent&&(ne=!0),y=T.charAt(R),K=null,!ne){if(y===i||y===o||y===l)K=y,R++,M++;else{for($="";R=Q.indent||M>f),W=!1,R=G;if(Y=T.slice(G,N),ee=G===R?Y:T.slice(R,N),(K===i||K===D||K===l)&&U.thematicBreak.call(A,O,Y,!0))break;if(ue=le,le=!W&&!r(ee).length,ne&&Q)Q.value=Q.value.concat(Z,Y),te=te.concat(Z,Y),Z=[];else if(W)Z.length!==0&&(fe=!0,Q.value.push(""),Q.trail=Z.concat()),Q={value:[Y],indent:M,trail:[]},ce.push(Q),te=te.concat(Z,Y),Z=[];else if(le){if(ue&&!j)break;Z.push(Y)}else{if(ue||c(X,U,A,[O,Y,!0]))break;Q.value=Q.value.concat(Z,Y),te=te.concat(Z,Y),Z=[]}R=N+1}for(he=O(te.join(g)).reset({type:"list",ordered:k,start:z,spread:fe,children:[]}),De=A.enterList(),ye=A.enterBlock(),R=-1,J=ce.length;++R=c){b--;break}f+=h}for(x="",v="";++b`\\u0000-\\u0020]+",t="'[^']*'",a='"[^"]*"',n="(?:"+r+"|"+t+"|"+a+")",s="(?:\\s+"+u+"(?:\\s*=\\s*"+n+")?)",c="<[A-Za-z][A-Za-z0-9\\-]*"+s+"*\\s*\\/?>",i="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",D="|",o="<[?].*?[?]>",l="]*>",d="";e.openCloseTag=new RegExp("^(?:"+c+"|"+i+")"),e.tag=new RegExp("^(?:"+c+"|"+i+"|"+D+"|"+o+"|"+l+"|"+d+")")}}),oD=I({"node_modules/remark-parse/lib/tokenize/html-block.js"(e,u){"use strict";S();var r=Mi().openCloseTag;u.exports=x;var t=" ",a=" ",n=` +`,s="<",c=/^<(script|pre|style)(?=(\s|>|$))/i,i=/<\/(script|pre|style)>/i,D=/^/,l=/^<\?/,d=/\?>/,p=/^/,F=/^/,b=/^$/,f=new RegExp(r.source+"\\s*$");function x(v,h,m){for(var C=this,w=C.options.blocks.join("|"),q=new RegExp("^|$))","i"),L=h.length,B=0,O,T,P,A,j,H,U,X=[[c,i,!0],[D,o,!0],[l,d,!0],[p,g,!0],[F,E,!0],[q,b,!0],[f,b,!1]];BM){if(X1&&(O?(C+=B.slice(0,-1),B=B.charAt(B.length-1)):(C+=B,B="")),H=E.now(),E(C)({type:"tableCell",children:x.tokenizeInline(A,H)},w)),E(B+O),B="",A=""):(B&&(A+=B,B=""),A+=O,O===i&&v!==q-2&&(A+=R.charAt(v+1),v++)),j=!1,v++}U||E(a+h)}return z}}}}}),DD=I({"node_modules/remark-parse/lib/tokenize/paragraph.js"(e,u){"use strict";S();var r=ze(),t=ji(),a=Eu();u.exports=D;var n=" ",s=` +`,c=" ",i=4;function D(o,l,d){for(var p=this,g=p.options,F=g.commonmark,E=p.blockTokenizers,b=p.interruptParagraph,f=l.indexOf(s),x=l.length,v,h,m,C,w;f=i&&m!==s){f=l.indexOf(s,f+1);continue}}if(h=l.slice(f+1),a(b,E,p,[o,h,!0]))break;if(v=f,f=l.indexOf(s,f+1),f!==-1&&r(l.slice(v,f))===""){f=v;break}}return h=l.slice(0,f),d?!0:(w=o.now(),h=t(h),o(h)({type:"paragraph",children:p.tokenizeInline(h,w)}))}}}),fD=I({"node_modules/remark-parse/lib/locate/escape.js"(e,u){"use strict";S(),u.exports=r;function r(t,a){return t.indexOf("\\",a)}}}),pD=I({"node_modules/remark-parse/lib/tokenize/escape.js"(e,u){"use strict";S();var r=fD();u.exports=n,n.locator=r;var t=` +`,a="\\";function n(s,c,i){var D=this,o,l;if(c.charAt(0)===a&&(o=c.charAt(1),D.escape.indexOf(o)!==-1))return i?!0:(o===t?l={type:"break"}:l={type:"text",value:o},s(a+o)(l))}}}),$i=I({"node_modules/remark-parse/lib/locate/tag.js"(e,u){"use strict";S(),u.exports=r;function r(t,a){return t.indexOf("<",a)}}}),dD=I({"node_modules/remark-parse/lib/tokenize/auto-link.js"(e,u){"use strict";S();var r=be(),t=xr(),a=$i();u.exports=l,l.locator=a,l.notInLink=!0;var n="<",s=">",c="@",i="/",D="mailto:",o=D.length;function l(d,p,g){var F=this,E="",b=p.length,f=0,x="",v=!1,h="",m,C,w,q,L;if(p.charAt(0)===n){for(f++,E=n;fk;)R=J+z.lastIndexOf(m),z=q.slice(J,R),y--;if(q.charCodeAt(R-1)===E&&(R--,n(q.charCodeAt(R-1)))){for($=R-2;n(q.charCodeAt($));)$--;q.charCodeAt($)===D&&(R=$)}return _=q.slice(0,R),G=t(_,{nonTerminated:!1}),j&&(G="http://"+G),W=B.enterLink(),B.inlineTokenizers={text:T.text},N=B.tokenizeInline(_,w.now()),B.inlineTokenizers=T,W(),w(_)({type:"link",title:null,url:G,children:N})}}}}}),ED=I({"node_modules/remark-parse/lib/locate/email.js"(e,u){"use strict";S();var r=Me(),t=er(),a=43,n=45,s=46,c=95;u.exports=i;function i(o,l){var d=this,p,g;if(!this.options.gfm||(p=o.indexOf("@",l),p===-1))return-1;if(g=p,g===l||!D(o.charCodeAt(g-1)))return i.call(d,o,p+1);for(;g>l&&D(o.charCodeAt(g-1));)g--;return g}function D(o){return r(o)||t(o)||o===a||o===n||o===s||o===c}}}),CD=I({"node_modules/remark-parse/lib/tokenize/email.js"(e,u){"use strict";S();var r=xr(),t=Me(),a=er(),n=ED();u.exports=l,l.locator=n,l.notInLink=!0;var s=43,c=45,i=46,D=64,o=95;function l(d,p,g){var F=this,E=F.options.gfm,b=F.inlineTokenizers,f=0,x=p.length,v=-1,h,m,C,w;if(E){for(h=p.charCodeAt(f);t(h)||a(h)||h===s||h===c||h===i||h===o;)h=p.charCodeAt(++f);if(f!==0&&h===D){for(f++;f/i;function l(d,p,g){var F=this,E=p.length,b,f;if(!(p.charAt(0)!==n||E<3)&&(b=p.charAt(1),!(!r(b)&&b!==s&&b!==c&&b!==i)&&(f=p.match(a),!!f)))return g?!0:(f=f[0],!F.inLink&&D.test(f)?F.inLink=!0:F.inLink&&o.test(f)&&(F.inLink=!1),d(f)({type:"html",value:f}))}}}),Ui=I({"node_modules/remark-parse/lib/locate/link.js"(e,u){"use strict";S(),u.exports=r;function r(t,a){var n=t.indexOf("[",a),s=t.indexOf("![",a);return s===-1||n=T&&(T=0):T=O}else if(C===p)m++,j+=f.charAt(m);else if((!T||L)&&C===d)M++;else if((!T||L)&&C===g)if(M)M--;else{if(f.charAt(m+1)!==i)return;j+=i,B=!0,m++;break}$+=j,j="",m++}if(B){for(X=$,h+=$+j,m++;m2&&(F===a||F===t)&&(E===a||E===t)){for(l++,o--;la&&t.charAt(n-1)===" ";)n--;return n}}}),SD=I({"node_modules/remark-parse/lib/tokenize/break.js"(e,u){"use strict";S();var r=ID();u.exports=s,s.locator=r;var t=" ",a=` +`,n=2;function s(c,i,D){for(var o=i.length,l=-1,d="",p;++l"u"||r.call(l,g)},i=function(l,d){a&&d.name==="__proto__"?a(l,d.name,{enumerable:!0,configurable:!0,value:d.newValue,writable:!0}):l[d.name]=d.newValue},D=function(l,d){if(d==="__proto__")if(r.call(l,d)){if(n)return n(l,d).value}else return;return l[d]};u.exports=function o(){var l,d,p,g,F,E,b=arguments[0],f=1,x=arguments.length,v=!1;for(typeof b=="boolean"&&(v=b,b=arguments[1]||{},f=2),(b==null||typeof b!="object"&&typeof b!="function")&&(b={});f{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let t=Object.getPrototypeOf(r);return t===null||t===Object.prototype}}}),MD=I({"node_modules/trough/wrap.js"(e,u){"use strict";S();var r=[].slice;u.exports=t;function t(a,n){var s;return c;function c(){var o=r.call(arguments,0),l=a.length>o.length,d;l&&o.push(i);try{d=a.apply(null,o)}catch(p){if(l&&s)throw p;return i(p)}l||(d&&typeof d.then=="function"?d.then(D,i):d instanceof Error?i(d):D(d))}function i(){s||(s=!0,n.apply(null,arguments))}function D(o){i(null,o)}}}}),zD=I({"node_modules/trough/index.js"(e,u){"use strict";S();var r=MD();u.exports=a,a.wrap=r;var t=[].slice;function a(){var n=[],s={};return s.run=c,s.use=i,s;function c(){var D=-1,o=t.call(arguments,0,-1),l=arguments[arguments.length-1];if(typeof l!="function")throw new Error("Expected function as last argument, not "+l);d.apply(null,[null].concat(o));function d(p){var g=n[++D],F=t.call(arguments,0),E=F.slice(1),b=o.length,f=-1;if(p){l(p);return}for(;++fi.length){for(;d--;)if(i.charCodeAt(d)===47){if(g){o=d+1;break}}else l<0&&(g=!0,l=d+1);return l<0?"":i.slice(o,l)}if(D===i)return"";for(p=-1,F=D.length-1;d--;)if(i.charCodeAt(d)===47){if(g){o=d+1;break}}else p<0&&(g=!0,p=d+1),F>-1&&(i.charCodeAt(d)===D.charCodeAt(F--)?F<0&&(l=d):(F=-1,l=p));return o===l?l=p:l<0&&(l=i.length),i.slice(o,l)}function r(i){var D,o,l;if(c(i),!i.length)return".";for(D=-1,l=i.length;--l;)if(i.charCodeAt(l)===47){if(o){D=l;break}}else o||(o=!0);return D<0?i.charCodeAt(0)===47?"/":".":D===1&&i.charCodeAt(0)===47?"//":i.slice(0,D)}function t(i){var D=-1,o=0,l=-1,d=0,p,g,F;for(c(i),F=i.length;F--;){if(g=i.charCodeAt(F),g===47){if(p){o=F+1;break}continue}l<0&&(p=!0,l=F+1),g===46?D<0?D=F:d!==1&&(d=1):D>-1&&(d=-1)}return D<0||l<0||d===0||d===1&&D===l-1&&D===o+1?"":i.slice(D,l)}function a(){for(var i=-1,D;++i2){if(E=o.lastIndexOf("/"),E!==o.length-1){E<0?(o="",l=0):(o=o.slice(0,E),l=o.length-1-o.lastIndexOf("/")),d=g,p=0;continue}}else if(o.length){o="",l=0,d=g,p=0;continue}}D&&(o=o.length?o+"/..":"..",l=2)}else o.length?o+="/"+i.slice(d+1,g):o=i.slice(d+1,g),l=g-d-1;d=g,p=0}else F===46&&p>-1?p++:p=-1}return o}function c(i){if(typeof i!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(i))}}}),VD=I({"node_modules/vfile/lib/minproc.browser.js"(e){"use strict";S(),e.cwd=u;function u(){return"/"}}}),HD=I({"node_modules/vfile/lib/core.js"(e,u){"use strict";S();var r=GD(),t=VD(),a=Gi();u.exports=c;var n={}.hasOwnProperty,s=["history","path","basename","stem","extname","dirname"];c.prototype.toString=f,Object.defineProperty(c.prototype,"path",{get:i,set:D}),Object.defineProperty(c.prototype,"dirname",{get:o,set:l}),Object.defineProperty(c.prototype,"basename",{get:d,set:p}),Object.defineProperty(c.prototype,"extname",{get:g,set:F}),Object.defineProperty(c.prototype,"stem",{get:E,set:b});function c(m){var C,w;if(!m)m={};else if(typeof m=="string"||a(m))m={contents:m};else if("message"in m&&"messages"in m)return m;if(!(this instanceof c))return new c(m);for(this.data={},this.messages=[],this.history=[],this.cwd=t.cwd(),w=-1;++w-1)throw new Error("`extname` cannot contain multiple dots")}this.path=r.join(this.dirname,this.stem+(m||""))}function E(){return typeof this.path=="string"?r.basename(this.path,this.extname):void 0}function b(m){v(m,"stem"),x(m,"stem"),this.path=r.join(this.dirname||"",m+(this.extname||""))}function f(m){return(this.contents||"").toString(m)}function x(m,C){if(m&&m.indexOf(r.sep)>-1)throw new Error("`"+C+"` cannot be a path: did not expect `"+r.sep+"`")}function v(m,C){if(!m)throw new Error("`"+C+"` cannot be empty")}function h(m,C){if(!m)throw new Error("Setting `"+C+"` requires `path` to be set too")}}}),XD=I({"node_modules/vfile/lib/index.js"(e,u){"use strict";S();var r=UD(),t=HD();u.exports=t,t.prototype.message=a,t.prototype.info=s,t.prototype.fail=n;function a(c,i,D){var o=new r(c,i,D);return this.path&&(o.name=this.path+":"+o.name,o.file=this.path),o.fatal=!1,this.messages.push(o),o}function n(){var c=this.message.apply(this,arguments);throw c.fatal=!0,c}function s(){var c=this.message.apply(this,arguments);return c.fatal=null,c}}}),WD=I({"node_modules/vfile/index.js"(e,u){"use strict";S(),u.exports=XD()}}),KD=I({"node_modules/unified/index.js"(e,u){"use strict";S();var r=RD(),t=Gi(),a=jD(),n=PD(),s=zD(),c=WD();u.exports=g().freeze();var i=[].slice,D={}.hasOwnProperty,o=s().use(l).use(d).use(p);function l(m,C){C.tree=m.parse(C.file)}function d(m,C,w){m.run(C.tree,C.file,q);function q(L,B,O){L?w(L):(C.tree=B,C.file=O,w())}}function p(m,C){var w=m.stringify(C.tree,C.file);w==null||(typeof w=="string"||t(w)?C.file.contents=w:C.file.result=w)}function g(){var m=[],C=s(),w={},q=-1,L;return B.data=T,B.freeze=O,B.attachers=m,B.use=P,B.parse=j,B.stringify=X,B.run=H,B.runSync=U,B.process=R,B.processSync=J,B;function B(){for(var z=g(),M=-1;++Mc)&&(!w||T===n)){A=L-1,L++,w&&L++,j=L;break}}else O===i&&(L++,T=h.charCodeAt(L+1));L++}if(j!==void 0)return m?!0:(H=h.slice(P,A+1),v(h.slice(0,j))({type:"inlineMath",value:H,data:{hName:"span",hProperties:{className:D.concat(w&&F.inlineMathDouble?[o]:[])},hChildren:[{type:"text",value:H}]}}))}}}}function p(g){let F=g.prototype;F.visitors.inlineMath=E;function E(b){let f="$";return(b.data&&b.data.hProperties&&b.data.hProperties.className||[]).includes(o)&&(f="$$"),f+b.value+f}}}}),JD=I({"node_modules/remark-math/block.js"(e,u){S();var r=Vi();u.exports=o;var t=10,a=32,n=36,s=` +`,c="$",i=2,D=["math","math-display"];function o(){let p=this.Parser,g=this.Compiler;r.isRemarkParser(p)&&l(p),r.isRemarkCompiler(g)&&d(g)}function l(p){let g=p.prototype,F=g.blockMethods,E=g.interruptParagraph,b=g.interruptList,f=g.interruptBlockquote;g.blockTokenizers.math=x,F.splice(F.indexOf("fencedCode")+1,0,"math"),E.splice(E.indexOf("fencedCode")+1,0,["math"]),b.splice(b.indexOf("fencedCode")+1,0,["math"]),f.splice(f.indexOf("fencedCode")+1,0,["math"]);function x(v,h,m){var C=h.length,w=0;let q,L,B,O,T,P,A,j,H,U,X;for(;wU&&h.charCodeAt(O-1)===a;)O--;for(;O>U&&h.charCodeAt(O-1)===n;)H++,O--;for(P<=H&&h.indexOf(c,U)===O&&(j=!0,X=O);U<=X&&U-wU&&h.charCodeAt(X-1)===a;)X--;if((!j||U!==X)&&L.push(h.slice(U,X)),j)break;w=B+1,B=h.indexOf(s,w+1),B=B===-1?C:B}return L=L.join(` +`),v(h.slice(0,B))({type:"math",value:L,data:{hName:"div",hProperties:{className:D.concat()},hChildren:[{type:"text",value:L}]}})}}}}function d(p){let g=p.prototype;g.visitors.math=F;function F(E){return`$$ +`+E.value+` +$$`}}}}),ZD=I({"node_modules/remark-math/index.js"(e,u){S();var r=YD(),t=JD();u.exports=a;function a(n){var s=n||{};t.call(this,s),r.call(this,s)}}}),QD=I({"node_modules/remark-footnotes/index.js"(e,u){"use strict";S(),u.exports=g;var r=9,t=10,a=32,n=33,s=58,c=91,i=92,D=93,o=94,l=96,d=4,p=1024;function g(h){var m=this.Parser,C=this.Compiler;F(m)&&b(m,h),E(C)&&f(C)}function F(h){return Boolean(h&&h.prototype&&h.prototype.blockTokenizers)}function E(h){return Boolean(h&&h.prototype&&h.prototype.visitors)}function b(h,m){for(var C=m||{},w=h.prototype,q=w.blockTokenizers,L=w.inlineTokenizers,B=w.blockMethods,O=w.inlineMethods,T=q.definition,P=L.reference,A=[],j=-1,H=B.length,U;++jd&&(ae=void 0,pe=Y);else{if(ae0&&(re=ne[ee-1],re.contentStart===re.contentEnd);)ee--;for(De=y(_.slice(0,re.contentEnd));++Y-{3}|\\+{3})(?[^\\n]*)\\n(?:|(?.*?)\\n)(?\\k|\\.{3})[^\\S\\n]*(?:\\n|$)","s");function t(a){let n=a.match(r);if(!n)return{content:a};let{startDelimiter:s,language:c,value:i="",endDelimiter:D}=n.groups,o=c.trim()||"yaml";if(s==="+++"&&(o="toml"),o!=="yaml"&&s!==D)return{content:a};let[l]=n;return{frontMatter:{type:"front-matter",lang:o,value:i,startDelimiter:s,endDelimiter:D,raw:l.replace(/\n$/,"")},content:l.replace(/[^\n]/g," ")+a.slice(l.length)}}u.exports=t}}),e2=I({"src/language-markdown/pragma.js"(e,u){"use strict";S();var r=Hi(),t=["format","prettier"];function a(n){let s=`@(${t.join("|")})`,c=new RegExp([``,`{\\s*\\/\\*\\s*${s}\\s*\\*\\/\\s*}`,``].join("|"),"m"),i=n.match(c);return(i==null?void 0:i.index)===0}u.exports={startWithPragma:a,hasPragma:n=>a(r(n).content.trimStart()),insertPragma:n=>{let s=r(n),c=``;return s.frontMatter?`${s.frontMatter.raw} + +${c} + +${s.content}`:`${c} + +${s.content}`}}}}),Xi=I({"src/language-markdown/loc.js"(e,u){"use strict";S();function r(a){return a.position.start.offset}function t(a){return a.position.end.offset}u.exports={locStart:r,locEnd:t}}}),Wi=I({"src/language-markdown/mdx.js"(e,u){"use strict";S();var r=/^import\s/,t=/^export\s/,a="[a-z][a-z0-9]*(\\.[a-z][a-z0-9]*)*|",n=/|/,s=/^{\s*\/\*(.*)\*\/\s*}/,c=` + +`,i=p=>r.test(p),D=p=>t.test(p),o=(p,g)=>{let F=g.indexOf(c),E=g.slice(0,F);if(D(E)||i(E))return p(E)({type:D(E)?"export":"import",value:E})},l=(p,g)=>{let F=s.exec(g);if(F)return p(F[0])({type:"esComment",value:F[1].trim()})};o.locator=p=>D(p)||i(p)?-1:1,l.locator=(p,g)=>p.indexOf("{",g);function d(){let{Parser:p}=this,{blockTokenizers:g,blockMethods:F,inlineTokenizers:E,inlineMethods:b}=p.prototype;g.esSyntax=o,E.esComment=l,F.splice(F.indexOf("paragraph"),0,"esSyntax"),b.splice(b.indexOf("text"),0,"esComment")}u.exports={esSyntax:d,BLOCKS_REGEX:a,COMMENT_REGEX:n}}}),Ki={};Ti(Ki,{default:()=>r2});function r2(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var u2=je({"node_modules/escape-string-regexp/index.js"(){S()}}),t2=I({"src/utils/get-last.js"(e,u){"use strict";S();var r=t=>t[t.length-1];u.exports=r}}),Yi=I({"node_modules/semver/internal/debug.js"(e,u){S();var r=typeof Qe=="object"&&Qe.env&&Qe.env.NODE_DEBUG&&/\bsemver\b/i.test(Qe.env.NODE_DEBUG)?function(){for(var t=arguments.length,a=new Array(t),n=0;n{};u.exports=r}}),Ji=I({"node_modules/semver/internal/constants.js"(e,u){S();var r="2.0.0",t=256,a=Number.MAX_SAFE_INTEGER||9007199254740991,n=16;u.exports={SEMVER_SPEC_VERSION:r,MAX_LENGTH:t,MAX_SAFE_INTEGER:a,MAX_SAFE_COMPONENT_LENGTH:n}}}),n2=I({"node_modules/semver/internal/re.js"(e,u){S();var{MAX_SAFE_COMPONENT_LENGTH:r}=Ji(),t=Yi();e=u.exports={};var a=e.re=[],n=e.src=[],s=e.t={},c=0,i=(D,o,l)=>{let d=c++;t(D,d,o),s[D]=d,n[d]=o,a[d]=new RegExp(o,l?"g":void 0)};i("NUMERICIDENTIFIER","0|[1-9]\\d*"),i("NUMERICIDENTIFIERLOOSE","[0-9]+"),i("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),i("MAINVERSION",`(${n[s.NUMERICIDENTIFIER]})\\.(${n[s.NUMERICIDENTIFIER]})\\.(${n[s.NUMERICIDENTIFIER]})`),i("MAINVERSIONLOOSE",`(${n[s.NUMERICIDENTIFIERLOOSE]})\\.(${n[s.NUMERICIDENTIFIERLOOSE]})\\.(${n[s.NUMERICIDENTIFIERLOOSE]})`),i("PRERELEASEIDENTIFIER",`(?:${n[s.NUMERICIDENTIFIER]}|${n[s.NONNUMERICIDENTIFIER]})`),i("PRERELEASEIDENTIFIERLOOSE",`(?:${n[s.NUMERICIDENTIFIERLOOSE]}|${n[s.NONNUMERICIDENTIFIER]})`),i("PRERELEASE",`(?:-(${n[s.PRERELEASEIDENTIFIER]}(?:\\.${n[s.PRERELEASEIDENTIFIER]})*))`),i("PRERELEASELOOSE",`(?:-?(${n[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${n[s.PRERELEASEIDENTIFIERLOOSE]})*))`),i("BUILDIDENTIFIER","[0-9A-Za-z-]+"),i("BUILD",`(?:\\+(${n[s.BUILDIDENTIFIER]}(?:\\.${n[s.BUILDIDENTIFIER]})*))`),i("FULLPLAIN",`v?${n[s.MAINVERSION]}${n[s.PRERELEASE]}?${n[s.BUILD]}?`),i("FULL",`^${n[s.FULLPLAIN]}$`),i("LOOSEPLAIN",`[v=\\s]*${n[s.MAINVERSIONLOOSE]}${n[s.PRERELEASELOOSE]}?${n[s.BUILD]}?`),i("LOOSE",`^${n[s.LOOSEPLAIN]}$`),i("GTLT","((?:<|>)?=?)"),i("XRANGEIDENTIFIERLOOSE",`${n[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),i("XRANGEIDENTIFIER",`${n[s.NUMERICIDENTIFIER]}|x|X|\\*`),i("XRANGEPLAIN",`[v=\\s]*(${n[s.XRANGEIDENTIFIER]})(?:\\.(${n[s.XRANGEIDENTIFIER]})(?:\\.(${n[s.XRANGEIDENTIFIER]})(?:${n[s.PRERELEASE]})?${n[s.BUILD]}?)?)?`),i("XRANGEPLAINLOOSE",`[v=\\s]*(${n[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[s.XRANGEIDENTIFIERLOOSE]})(?:${n[s.PRERELEASELOOSE]})?${n[s.BUILD]}?)?)?`),i("XRANGE",`^${n[s.GTLT]}\\s*${n[s.XRANGEPLAIN]}$`),i("XRANGELOOSE",`^${n[s.GTLT]}\\s*${n[s.XRANGEPLAINLOOSE]}$`),i("COERCE",`(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?(?:$|[^\\d])`),i("COERCERTL",n[s.COERCE],!0),i("LONETILDE","(?:~>?)"),i("TILDETRIM",`(\\s*)${n[s.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",i("TILDE",`^${n[s.LONETILDE]}${n[s.XRANGEPLAIN]}$`),i("TILDELOOSE",`^${n[s.LONETILDE]}${n[s.XRANGEPLAINLOOSE]}$`),i("LONECARET","(?:\\^)"),i("CARETTRIM",`(\\s*)${n[s.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",i("CARET",`^${n[s.LONECARET]}${n[s.XRANGEPLAIN]}$`),i("CARETLOOSE",`^${n[s.LONECARET]}${n[s.XRANGEPLAINLOOSE]}$`),i("COMPARATORLOOSE",`^${n[s.GTLT]}\\s*(${n[s.LOOSEPLAIN]})$|^$`),i("COMPARATOR",`^${n[s.GTLT]}\\s*(${n[s.FULLPLAIN]})$|^$`),i("COMPARATORTRIM",`(\\s*)${n[s.GTLT]}\\s*(${n[s.LOOSEPLAIN]}|${n[s.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",i("HYPHENRANGE",`^\\s*(${n[s.XRANGEPLAIN]})\\s+-\\s+(${n[s.XRANGEPLAIN]})\\s*$`),i("HYPHENRANGELOOSE",`^\\s*(${n[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${n[s.XRANGEPLAINLOOSE]})\\s*$`),i("STAR","(<|>)?=?\\s*\\*"),i("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),i("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}}),i2=I({"node_modules/semver/internal/parse-options.js"(e,u){S();var r=["includePrerelease","loose","rtl"],t=a=>a?typeof a!="object"?{loose:!0}:r.filter(n=>a[n]).reduce((n,s)=>(n[s]=!0,n),{}):{};u.exports=t}}),a2=I({"node_modules/semver/internal/identifiers.js"(e,u){S();var r=/^[0-9]+$/,t=(n,s)=>{let c=r.test(n),i=r.test(s);return c&&i&&(n=+n,s=+s),n===s?0:c&&!i?-1:i&&!c?1:nt(s,n);u.exports={compareIdentifiers:t,rcompareIdentifiers:a}}}),o2=I({"node_modules/semver/classes/semver.js"(e,u){S();var r=Yi(),{MAX_LENGTH:t,MAX_SAFE_INTEGER:a}=Ji(),{re:n,t:s}=n2(),c=i2(),{compareIdentifiers:i}=a2(),D=class{constructor(o,l){if(l=c(l),o instanceof D){if(o.loose===!!l.loose&&o.includePrerelease===!!l.includePrerelease)return o;o=o.version}else if(typeof o!="string")throw new TypeError(`Invalid Version: ${o}`);if(o.length>t)throw new TypeError(`version is longer than ${t} characters`);r("SemVer",o,l),this.options=l,this.loose=!!l.loose,this.includePrerelease=!!l.includePrerelease;let d=o.trim().match(l.loose?n[s.LOOSE]:n[s.FULL]);if(!d)throw new TypeError(`Invalid Version: ${o}`);if(this.raw=o,this.major=+d[1],this.minor=+d[2],this.patch=+d[3],this.major>a||this.major<0)throw new TypeError("Invalid major version");if(this.minor>a||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>a||this.patch<0)throw new TypeError("Invalid patch version");d[4]?this.prerelease=d[4].split(".").map(p=>{if(/^[0-9]+$/.test(p)){let g=+p;if(g>=0&&g=0;)typeof this.prerelease[d]=="number"&&(this.prerelease[d]++,d=-2);d===-1&&this.prerelease.push(0)}l&&(i(this.prerelease[0],l)===0?isNaN(this.prerelease[1])&&(this.prerelease=[l,0]):this.prerelease=[l,0]);break;default:throw new Error(`invalid increment argument: ${o}`)}return this.format(),this.raw=this.version,this}};u.exports=D}}),Cu=I({"node_modules/semver/functions/compare.js"(e,u){S();var r=o2(),t=(a,n,s)=>new r(a,s).compare(new r(n,s));u.exports=t}}),s2=I({"node_modules/semver/functions/lt.js"(e,u){S();var r=Cu(),t=(a,n,s)=>r(a,n,s)<0;u.exports=t}}),c2=I({"node_modules/semver/functions/gte.js"(e,u){S();var r=Cu(),t=(a,n,s)=>r(a,n,s)>=0;u.exports=t}}),l2=I({"src/utils/arrayify.js"(e,u){"use strict";S(),u.exports=(r,t)=>Object.entries(r).map(a=>{let[n,s]=a;return Object.assign({[t]:n},s)})}}),D2=I({"package.json"(e,u){u.exports={version:"2.8.8"}}}),f2=I({"node_modules/outdent/lib/index.js"(e,u){"use strict";S(),Object.defineProperty(e,"__esModule",{value:!0}),e.outdent=void 0;function r(){for(var f=[],x=0;xtypeof l=="string"||typeof l=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",since:"1.16.0",description:"JavaScript"},{value:"babel-flow",since:"1.16.0",description:"Flow"},{value:"babel-ts",since:"2.0.0",description:"TypeScript"},{value:"typescript",since:"1.4.0",description:"TypeScript"},{value:"acorn",since:"2.6.0",description:"JavaScript"},{value:"espree",since:"2.2.0",description:"JavaScript"},{value:"meriyah",since:"2.2.0",description:"JavaScript"},{value:"css",since:"1.7.1",description:"CSS"},{value:"less",since:"1.7.1",description:"Less"},{value:"scss",since:"1.7.1",description:"SCSS"},{value:"json",since:"1.5.0",description:"JSON"},{value:"json5",since:"1.13.0",description:"JSON5"},{value:"json-stringify",since:"1.13.0",description:"JSON.stringify"},{value:"graphql",since:"1.5.0",description:"GraphQL"},{value:"markdown",since:"1.8.0",description:"Markdown"},{value:"mdx",since:"1.15.0",description:"MDX"},{value:"vue",since:"1.10.0",description:"Vue"},{value:"yaml",since:"1.14.0",description:"YAML"},{value:"glimmer",since:"2.3.0",description:"Ember / Handlebars"},{value:"html",since:"1.15.0",description:"HTML"},{value:"angular",since:"1.15.0",description:"Angular"},{value:"lwc",since:"1.17.0",description:"Lightning Web Components"}]},plugins:{since:"1.10.0",type:"path",array:!0,default:[{value:[]}],category:i,description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:l=>typeof l=="string"||typeof l=="object",cliName:"plugin",cliCategory:t},pluginSearchDirs:{since:"1.13.0",type:"path",array:!0,default:[{value:[]}],category:i,description:r` + Custom directory that contains prettier plugins in node_modules subdirectory. + Overrides default behavior when plugins are searched relatively to the location of Prettier. + Multiple values are accepted. + `,exception:l=>typeof l=="string"||typeof l=="object",cliName:"plugin-search-dir",cliCategory:t},printWidth:{since:"0.0.0",category:i,type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},rangeEnd:{since:"1.4.0",category:D,type:"int",default:Number.POSITIVE_INFINITY,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:r` + Format code ending at a given character offset (exclusive). + The range will extend forwards to the end of the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:a},rangeStart:{since:"1.4.0",category:D,type:"int",default:0,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:r` + Format code starting at a given character offset. + The range will extend backwards to the start of the first line containing the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:a},requirePragma:{since:"1.7.0",category:D,type:"boolean",default:!1,description:r` + Require either '@prettier' or '@format' to be present in the file's first docblock comment + in order for it to be formatted. + `,cliCategory:s},tabWidth:{type:"int",category:i,default:2,description:"Number of spaces per indentation level.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},useTabs:{since:"1.0.0",category:i,type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{since:"2.1.0",category:i,type:"choice",default:[{since:"2.1.0",value:"auto"}],description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};u.exports={CATEGORY_CONFIG:t,CATEGORY_EDITOR:a,CATEGORY_FORMAT:n,CATEGORY_OTHER:s,CATEGORY_OUTPUT:c,CATEGORY_GLOBAL:i,CATEGORY_SPECIAL:D,options:o}}}),d2=I({"src/main/support.js"(e,u){"use strict";S();var r={compare:Cu(),lt:s2(),gte:c2()},t=l2(),a=D2().version,n=p2().options;function s(){let{plugins:i=[],showUnreleased:D=!1,showDeprecated:o=!1,showInternal:l=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},d=a.split("-",1)[0],p=i.flatMap(f=>f.languages||[]).filter(F),g=t(Object.assign({},...i.map(f=>{let{options:x}=f;return x}),n),"name").filter(f=>F(f)&&E(f)).sort((f,x)=>f.name===x.name?0:f.name{f=Object.assign({},f),Array.isArray(f.default)&&(f.default=f.default.length===1?f.default[0].value:f.default.filter(F).sort((v,h)=>r.compare(h.since,v.since))[0].value),Array.isArray(f.choices)&&(f.choices=f.choices.filter(v=>F(v)&&E(v)),f.name==="parser"&&c(f,p,i));let x=Object.fromEntries(i.filter(v=>v.defaultOptions&&v.defaultOptions[f.name]!==void 0).map(v=>[v.name,v.defaultOptions[f.name]]));return Object.assign(Object.assign({},f),{},{pluginDefaults:x})});return{languages:p,options:g};function F(f){return D||!("since"in f)||f.since&&r.gte(d,f.since)}function E(f){return o||!("deprecated"in f)||f.deprecated&&r.lt(d,f.deprecated)}function b(f){if(l)return f;let{cliName:x,cliCategory:v,cliDescription:h}=f;return xl(f,Al)}}function c(i,D,o){let l=new Set(i.choices.map(d=>d.value));for(let d of D)if(d.parsers){for(let p of d.parsers)if(!l.has(p)){l.add(p);let g=o.find(E=>E.parsers&&E.parsers[p]),F=d.name;g&&g.name&&(F+=` (plugin: ${g.name})`),i.choices.push({value:p,description:F})}}}u.exports={getSupportInfo:s}}}),h2=I({"src/utils/is-non-empty-array.js"(e,u){"use strict";S();function r(t){return Array.isArray(t)&&t.length>0}u.exports=r}});function v2(){let{onlyFirst:e=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},u=["[\\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(u,e?void 0:"g")}var m2=je({"node_modules/strip-ansi/node_modules/ansi-regex/index.js"(){S()}});function E2(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(v2(),"")}var C2=je({"node_modules/strip-ansi/index.js"(){S(),m2()}});function g2(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var F2=je({"node_modules/is-fullwidth-code-point/index.js"(){S()}}),A2=I({"node_modules/emoji-regex/index.js"(e,u){"use strict";S(),u.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\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])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\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\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\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-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*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\u26A7\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-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\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[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}}}),Zi={};Ti(Zi,{default:()=>x2});function x2(e){if(typeof e!="string"||e.length===0||(e=E2(e),e.length===0))return 0;e=e.replace((0,Qi.default)()," ");let u=0;for(let r=0;r=127&&t<=159||t>=768&&t<=879||(t>65535&&r++,u+=g2(t)?2:1)}return u}var Qi,b2=je({"node_modules/string-width/index.js"(){S(),C2(),F2(),Qi=ql(A2())}}),y2=I({"src/utils/get-string-width.js"(e,u){"use strict";S();var r=(b2(),Li(Zi)).default,t=/[^\x20-\x7F]/;function a(n){return n?t.test(n)?r(n):n.length:0}u.exports=a}}),gu=I({"src/utils/text/skip.js"(e,u){"use strict";S();function r(c){return(i,D,o)=>{let l=o&&o.backwards;if(D===!1)return!1;let{length:d}=i,p=D;for(;p>=0&&pk[k.length-2];function E(k){return(y,_,N)=>{let G=N&&N.backwards;if(_===!1)return!1;let{length:W}=y,K=_;for(;K>=0&&K2&&arguments[2]!==void 0?arguments[2]:{},N=i(k,_.backwards?y-1:y,_),G=p(k,N,_);return N!==G}function f(k,y,_){for(let N=y;N<_;++N)if(k.charAt(N)===` +`)return!0;return!1}function x(k,y,_){let N=_(y)-1;N=i(k,N,{backwards:!0}),N=p(k,N,{backwards:!0}),N=i(k,N,{backwards:!0});let G=p(k,N,{backwards:!0});return N!==G}function v(k,y){let _=null,N=y;for(;N!==_;)_=N,N=D(k,N),N=l(k,N),N=i(k,N);return N=d(k,N),N=p(k,N),N!==!1&&b(k,N)}function h(k,y,_){return v(k,_(y))}function m(k,y,_){return g(k,_(y))}function C(k,y,_){return k.charAt(m(k,y,_))}function w(k,y){let _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return i(k,_.backwards?y-1:y,_)!==y}function q(k,y){let _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,N=0;for(let G=_;GY?W:G}return K}function O(k,y){let _=k.slice(1,-1),N=y.parser==="json"||y.parser==="json5"&&y.quoteProps==="preserve"&&!y.singleQuote?'"':y.__isInHtmlAttribute?"'":B(_,y.singleQuote?"'":'"').quote;return T(_,N,!(y.parser==="css"||y.parser==="less"||y.parser==="scss"||y.__embeddedInHtml))}function T(k,y,_){let N=y==='"'?"'":'"',G=/\\(.)|(["'])/gs,W=k.replace(G,(K,ee,Y)=>ee===N?ee:Y===y?"\\"+Y:Y||(_&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(ee)?ee:"\\"+ee));return y+W+y}function P(k){return k.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(\d)/,"$1$2$3").replace(/^([+-]?[\d.]+)e[+-]?0+$/,"$1").replace(/^([+-])?\./,"$10.").replace(/(\.\d+?)0+(?=e|$)/,"$1").replace(/\.(?=e|$)/,"")}function A(k,y){let _=k.match(new RegExp(`(${r(y)})+`,"g"));return _===null?0:_.reduce((N,G)=>Math.max(N,G.length/y.length),0)}function j(k,y){let _=k.match(new RegExp(`(${r(y)})+`,"g"));if(_===null)return 0;let N=new Map,G=0;for(let W of _){let K=W.length/y.length;N.set(K,!0),K>G&&(G=K)}for(let W=1;W{let{name:W}=G;return W.toLowerCase()===k})||_.find(G=>{let{aliases:W}=G;return Array.isArray(W)&&W.includes(k)})||_.find(G=>{let{extensions:W}=G;return Array.isArray(W)&&W.includes(`.${k}`)});return N&&N.parsers[0]}function z(k){return k&&k.type==="front-matter"}function M(k){let y=new WeakMap;return function(_){return y.has(_)||y.set(_,Symbol(k)),y.get(_)}}function $(k){let y=k.type||k.kind||"(unknown type)",_=String(k.name||k.id&&(typeof k.id=="object"?k.id.name:k.id)||k.key&&(typeof k.key=="object"?k.key.name:k.key)||k.value&&(typeof k.value=="object"?"":String(k.value))||k.operator||"");return _.length>20&&(_=_.slice(0,19)+"\u2026"),y+(_?" "+_:"")}u.exports={inferParserByLanguage:J,getStringWidth:s,getMaxContinuousCount:A,getMinNotPresentContinuousCount:j,getPenultimate:F,getLast:t,getNextNonSpaceNonCommentCharacterIndexWithStartIndex:g,getNextNonSpaceNonCommentCharacterIndex:m,getNextNonSpaceNonCommentCharacter:C,skip:E,skipWhitespace:c,skipSpaces:i,skipToLineEnd:D,skipEverythingButNewLine:o,skipInlineComment:l,skipTrailingComment:d,skipNewline:p,isNextLineEmptyAfterIndex:v,isNextLineEmpty:h,isPreviousLineEmpty:x,hasNewline:b,hasNewlineInRange:f,hasSpaces:w,getAlignmentSize:q,getIndentSize:L,getPreferredQuote:B,printString:O,printNumber:P,makeString:T,addLeadingComment:U,addDanglingComment:X,addTrailingComment:R,isFrontMatterNode:z,isNonEmptyArray:n,createGroupIdMapper:M}}}),k2=I({"src/language-markdown/constants.evaluate.js"(e,u){u.exports={cjkPattern:"(?:[\\u02ea-\\u02eb\\u1100-\\u11ff\\u2e80-\\u2e99\\u2e9b-\\u2ef3\\u2f00-\\u2fd5\\u2ff0-\\u303f\\u3041-\\u3096\\u3099-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312f\\u3131-\\u318e\\u3190-\\u3191\\u3196-\\u31ba\\u31c0-\\u31e3\\u31f0-\\u321e\\u322a-\\u3247\\u3260-\\u327e\\u328a-\\u32b0\\u32c0-\\u32cb\\u32d0-\\u3370\\u337b-\\u337f\\u33e0-\\u33fe\\u3400-\\u4db5\\u4e00-\\u9fef\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufe10-\\ufe1f\\ufe30-\\ufe6f\\uff00-\\uffef]|[\\ud840-\\ud868\\ud86a-\\ud86c\\ud86f-\\ud872\\ud874-\\ud879][\\udc00-\\udfff]|\\ud82c[\\udc00-\\udd1e\\udd50-\\udd52\\udd64-\\udd67]|\\ud83c[\\ude00\\ude50-\\ude51]|\\ud869[\\udc00-\\uded6\\udf00-\\udfff]|\\ud86d[\\udc00-\\udf34\\udf40-\\udfff]|\\ud86e[\\udc00-\\udc1d\\udc20-\\udfff]|\\ud873[\\udc00-\\udea1\\udeb0-\\udfff]|\\ud87a[\\udc00-\\udfe0]|\\ud87e[\\udc00-\\ude1d])(?:[\\ufe00-\\ufe0f]|\\udb40[\\udd00-\\uddef])?",kPattern:"[\\u1100-\\u11ff\\u3001-\\u3003\\u3008-\\u3011\\u3013-\\u301f\\u302e-\\u3030\\u3037\\u30fb\\u3131-\\u318e\\u3200-\\u321e\\u3260-\\u327e\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\ufe45-\\ufe46\\uff61-\\uff65\\uffa0-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc]",punctuationPattern:"[\\u0021-\\u002f\\u003a-\\u0040\\u005b-\\u0060\\u007b-\\u007e\\u00a1\\u00a7\\u00ab\\u00b6-\\u00b7\\u00bb\\u00bf\\u037e\\u0387\\u055a-\\u055f\\u0589-\\u058a\\u05be\\u05c0\\u05c3\\u05c6\\u05f3-\\u05f4\\u0609-\\u060a\\u060c-\\u060d\\u061b\\u061e-\\u061f\\u066a-\\u066d\\u06d4\\u0700-\\u070d\\u07f7-\\u07f9\\u0830-\\u083e\\u085e\\u0964-\\u0965\\u0970\\u09fd\\u0a76\\u0af0\\u0c77\\u0c84\\u0df4\\u0e4f\\u0e5a-\\u0e5b\\u0f04-\\u0f12\\u0f14\\u0f3a-\\u0f3d\\u0f85\\u0fd0-\\u0fd4\\u0fd9-\\u0fda\\u104a-\\u104f\\u10fb\\u1360-\\u1368\\u1400\\u166e\\u169b-\\u169c\\u16eb-\\u16ed\\u1735-\\u1736\\u17d4-\\u17d6\\u17d8-\\u17da\\u1800-\\u180a\\u1944-\\u1945\\u1a1e-\\u1a1f\\u1aa0-\\u1aa6\\u1aa8-\\u1aad\\u1b5a-\\u1b60\\u1bfc-\\u1bff\\u1c3b-\\u1c3f\\u1c7e-\\u1c7f\\u1cc0-\\u1cc7\\u1cd3\\u2010-\\u2027\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205e\\u207d-\\u207e\\u208d-\\u208e\\u2308-\\u230b\\u2329-\\u232a\\u2768-\\u2775\\u27c5-\\u27c6\\u27e6-\\u27ef\\u2983-\\u2998\\u29d8-\\u29db\\u29fc-\\u29fd\\u2cf9-\\u2cfc\\u2cfe-\\u2cff\\u2d70\\u2e00-\\u2e2e\\u2e30-\\u2e4f\\u3001-\\u3003\\u3008-\\u3011\\u3014-\\u301f\\u3030\\u303d\\u30a0\\u30fb\\ua4fe-\\ua4ff\\ua60d-\\ua60f\\ua673\\ua67e\\ua6f2-\\ua6f7\\ua874-\\ua877\\ua8ce-\\ua8cf\\ua8f8-\\ua8fa\\ua8fc\\ua92e-\\ua92f\\ua95f\\ua9c1-\\ua9cd\\ua9de-\\ua9df\\uaa5c-\\uaa5f\\uaade-\\uaadf\\uaaf0-\\uaaf1\\uabeb\\ufd3e-\\ufd3f\\ufe10-\\ufe19\\ufe30-\\ufe52\\ufe54-\\ufe61\\ufe63\\ufe68\\ufe6a-\\ufe6b\\uff01-\\uff03\\uff05-\\uff0a\\uff0c-\\uff0f\\uff1a-\\uff1b\\uff1f-\\uff20\\uff3b-\\uff3d\\uff3f\\uff5b\\uff5d\\uff5f-\\uff65]|\\ud800[\\udd00-\\udd02\\udf9f\\udfd0]|\\ud801[\\udd6f]|\\ud802[\\udc57\\udd1f\\udd3f\\ude50-\\ude58\\ude7f\\udef0-\\udef6\\udf39-\\udf3f\\udf99-\\udf9c]|\\ud803[\\udf55-\\udf59]|\\ud804[\\udc47-\\udc4d\\udcbb-\\udcbc\\udcbe-\\udcc1\\udd40-\\udd43\\udd74-\\udd75\\uddc5-\\uddc8\\uddcd\\udddb\\udddd-\\udddf\\ude38-\\ude3d\\udea9]|\\ud805[\\udc4b-\\udc4f\\udc5b\\udc5d\\udcc6\\uddc1-\\uddd7\\ude41-\\ude43\\ude60-\\ude6c\\udf3c-\\udf3e]|\\ud806[\\udc3b\\udde2\\ude3f-\\ude46\\ude9a-\\ude9c\\ude9e-\\udea2]|\\ud807[\\udc41-\\udc45\\udc70-\\udc71\\udef7-\\udef8\\udfff]|\\ud809[\\udc70-\\udc74]|\\ud81a[\\ude6e-\\ude6f\\udef5\\udf37-\\udf3b\\udf44]|\\ud81b[\\ude97-\\ude9a\\udfe2]|\\ud82f[\\udc9f]|\\ud836[\\ude87-\\ude8b]|\\ud83a[\\udd5e-\\udd5f]"}}}),q2=I({"src/language-markdown/utils.js"(e,u){"use strict";S();var{getLast:r}=B2(),{locStart:t,locEnd:a}=Xi(),{cjkPattern:n,kPattern:s,punctuationPattern:c}=k2(),i=["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"],D=[...i,"tableCell","paragraph","heading"],o=new RegExp(s),l=new RegExp(c);function d(f,x){let v="non-cjk",h="cj-letter",m="k-letter",C="cjk-punctuation",w=[],q=(x.proseWrap==="preserve"?f:f.replace(new RegExp(`(${n}) +(${n})`,"g"),"$1$2")).split(/([\t\n ]+)/);for(let[B,O]of q.entries()){if(B%2===1){w.push({type:"whitespace",value:/\n/.test(O)?` +`:" "});continue}if((B===0||B===q.length-1)&&O==="")continue;let T=O.split(new RegExp(`(${n})`));for(let[P,A]of T.entries())if(!((P===0||P===T.length-1)&&A==="")){if(P%2===0){A!==""&&L({type:"word",value:A,kind:v,hasLeadingPunctuation:l.test(A[0]),hasTrailingPunctuation:l.test(r(A))});continue}L(l.test(A)?{type:"word",value:A,kind:C,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0}:{type:"word",value:A,kind:o.test(A)?m:h,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return w;function L(B){let O=r(w);O&&O.type==="word"&&(O.kind===v&&B.kind===h&&!O.hasTrailingPunctuation||O.kind===h&&B.kind===v&&!B.hasLeadingPunctuation?w.push({type:"whitespace",value:" "}):!T(v,C)&&![O.value,B.value].some(P=>/\u3000/.test(P))&&w.push({type:"whitespace",value:""})),w.push(B);function T(P,A){return O.kind===P&&B.kind===A||O.kind===A&&B.kind===P}}}function p(f,x){let[,v,h,m]=x.slice(f.position.start.offset,f.position.end.offset).match(/^\s*(\d+)(\.|\))(\s*)/);return{numberText:v,marker:h,leadingSpaces:m}}function g(f,x){if(!f.ordered||f.children.length<2)return!1;let v=Number(p(f.children[0],x.originalText).numberText),h=Number(p(f.children[1],x.originalText).numberText);if(v===0&&f.children.length>2){let m=Number(p(f.children[2],x.originalText).numberText);return h===1&&m===1}return h===1}function F(f,x){let{value:v}=f;return f.position.end.offset===x.length&&v.endsWith(` +`)&&x.endsWith(` +`)?v.slice(0,-1):v}function E(f,x){return function v(h,m,C){let w=Object.assign({},x(h,m,C));return w.children&&(w.children=w.children.map((q,L)=>v(q,L,[w,...C]))),w}(f,null,[])}function b(f){if((f==null?void 0:f.type)!=="link"||f.children.length!==1)return!1;let[x]=f.children;return t(f)===t(x)&&a(f)===a(x)}u.exports={mapAst:E,splitText:d,punctuationPattern:c,getFencedCodeBlockValue:F,getOrderedListItemInfo:p,hasGitDiffFriendlyOrderedList:g,INLINE_NODE_TYPES:i,INLINE_NODE_WRAPPER_TYPES:D,isAutolink:b}}}),_2=I({"src/language-markdown/unified-plugins/html-to-jsx.js"(e,u){"use strict";S();var r=Wi(),{mapAst:t,INLINE_NODE_WRAPPER_TYPES:a}=q2();function n(){return s=>t(s,(c,i,D)=>{let[o]=D;return c.type!=="html"||r.COMMENT_REGEX.test(c.value)||a.includes(o.type)?c:Object.assign(Object.assign({},c),{},{type:"jsx"})})}u.exports=n}}),O2=I({"src/language-markdown/unified-plugins/front-matter.js"(e,u){"use strict";S();var r=Hi();function t(){let a=this.Parser.prototype;a.blockMethods=["frontMatter",...a.blockMethods],a.blockTokenizers.frontMatter=n;function n(s,c){let i=r(c);if(i.frontMatter)return s(i.frontMatter.raw)(i.frontMatter)}n.onlyAtStart=!0}u.exports=t}}),I2=I({"src/language-markdown/unified-plugins/liquid.js"(e,u){"use strict";S();function r(){let t=this.Parser.prototype,a=t.inlineMethods;a.splice(a.indexOf("text"),0,"liquid"),t.inlineTokenizers.liquid=n;function n(s,c){let i=c.match(/^({%.*?%}|{{.*?}})/s);if(i)return s(i[0])({type:"liquidNode",value:i[0]})}n.locator=function(s,c){return s.indexOf("{",c)}}u.exports=r}}),S2=I({"src/language-markdown/unified-plugins/wiki-link.js"(e,u){"use strict";S();function r(){let t="wikiLink",a=/^\[\[(?.+?)]]/s,n=this.Parser.prototype,s=n.inlineMethods;s.splice(s.indexOf("link"),0,t),n.inlineTokenizers.wikiLink=c;function c(i,D){let o=a.exec(D);if(o){let l=o.groups.linkContents.trim();return i(o[0])({type:t,value:l})}}c.locator=function(i,D){return i.indexOf("[",D)}}u.exports=r}}),T2=I({"src/language-markdown/unified-plugins/loose-items.js"(e,u){"use strict";S();function r(){let t=this.Parser.prototype,a=t.blockTokenizers.list;function n(s,c,i){return c.type==="listItem"&&(c.loose=c.spread||s.charAt(s.length-1)===` +`,c.loose&&(i.loose=!0)),c}t.blockTokenizers.list=function(c,i,D){function o(l){let d=c(l);function p(g,F){return d(n(l,g,F),F)}return p.reset=function(g,F){return d.reset(n(l,g,F),F)},p}return o.now=c.now,a.call(this,o,i,D)}}u.exports=r}}),N2=I({"src/language-markdown/parser-markdown.js"(e,u){S();var r=LD(),t=KD(),a=ZD(),n=QD(),s=e2(),{locStart:c,locEnd:i}=Xi(),D=Wi(),o=_2(),l=O2(),d=I2(),p=S2(),g=T2();function F(v){let{isMDX:h}=v;return m=>{let C=t().use(r,Object.assign({commonmark:!0},h&&{blocks:[D.BLOCKS_REGEX]})).use(n).use(l).use(a).use(h?D.esSyntax:E).use(d).use(h?o:E).use(p).use(g);return C.runSync(C.parse(m))}}function E(v){return v}var b={astFormat:"mdast",hasPragma:s.hasPragma,locStart:c,locEnd:i},f=Object.assign(Object.assign({},b),{},{parse:F({isMDX:!1})}),x=Object.assign(Object.assign({},b),{},{parse:F({isMDX:!0})});u.exports={parsers:{remark:f,markdown:f,mdx:x}}}}),hp=N2();export{hp as default}; diff --git a/node_modules/prettier/esm/parser-meriyah.mjs b/node_modules/prettier/esm/parser-meriyah.mjs new file mode 100644 index 0000000..0c21157 --- /dev/null +++ b/node_modules/prettier/esm/parser-meriyah.mjs @@ -0,0 +1,19 @@ +var S=(a,g)=>()=>(g||a((g={exports:{}}).exports,g),g.exports);var r2=S((I3,Fu)=>{var A1=function(a){return a&&a.Math==Math&&a};Fu.exports=A1(typeof globalThis=="object"&&globalThis)||A1(typeof window=="object"&&window)||A1(typeof self=="object"&&self)||A1(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var w2=S((R3,Lu)=>{Lu.exports=function(a){try{return!!a()}catch{return!0}}});var S2=S((V3,Ou)=>{var Gt=w2();Ou.exports=!Gt(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var ue=S((N3,Tu)=>{var xt=w2();Tu.exports=!xt(function(){var a=function(){}.bind();return typeof a!="function"||a.hasOwnProperty("prototype")})});var E1=S((j3,Iu)=>{var pt=ue(),P1=Function.prototype.call;Iu.exports=pt?P1.bind(P1):function(){return P1.apply(P1,arguments)}});var ju=S(Nu=>{"use strict";var Ru={}.propertyIsEnumerable,Vu=Object.getOwnPropertyDescriptor,eo=Vu&&!Ru.call({1:2},1);Nu.f=eo?function(g){var k=Vu(this,g);return!!k&&k.enumerable}:Ru});var ie=S((M3,_u)=>{_u.exports=function(a,g){return{enumerable:!(a&1),configurable:!(a&2),writable:!(a&4),value:g}}});var F2=S((U3,Ju)=>{var Mu=ue(),Uu=Function.prototype,ne=Uu.call,uo=Mu&&Uu.bind.bind(ne,ne);Ju.exports=Mu?uo:function(a){return function(){return ne.apply(a,arguments)}}});var Xu=S((J3,Hu)=>{var $u=F2(),io=$u({}.toString),no=$u("".slice);Hu.exports=function(a){return no(io(a),8,-1)}});var Wu=S(($3,zu)=>{var to=F2(),oo=w2(),lo=Xu(),te=Object,fo=to("".split);zu.exports=oo(function(){return!te("z").propertyIsEnumerable(0)})?function(a){return lo(a)=="String"?fo(a,""):te(a)}:te});var oe=S((H3,Ku)=>{Ku.exports=function(a){return a==null}});var le=S((X3,Yu)=>{var co=oe(),so=TypeError;Yu.exports=function(a){if(co(a))throw so("Can't call method on "+a);return a}});var C1=S((z3,Zu)=>{var ao=Wu(),go=le();Zu.exports=function(a){return ao(go(a))}});var ce=S((W3,Qu)=>{var fe=typeof document=="object"&&document.all,ho=typeof fe>"u"&&fe!==void 0;Qu.exports={all:fe,IS_HTMLDDA:ho}});var P2=S((K3,xu)=>{var Gu=ce(),mo=Gu.all;xu.exports=Gu.IS_HTMLDDA?function(a){return typeof a=="function"||a===mo}:function(a){return typeof a=="function"}});var Z2=S((Y3,ui)=>{var pu=P2(),ei=ce(),bo=ei.all;ui.exports=ei.IS_HTMLDDA?function(a){return typeof a=="object"?a!==null:pu(a)||a===bo}:function(a){return typeof a=="object"?a!==null:pu(a)}});var D1=S((Z3,ii)=>{var se=r2(),ko=P2(),ro=function(a){return ko(a)?a:void 0};ii.exports=function(a,g){return arguments.length<2?ro(se[a]):se[a]&&se[a][g]}});var ti=S((Q3,ni)=>{var vo=F2();ni.exports=vo({}.isPrototypeOf)});var li=S((G3,oi)=>{var yo=D1();oi.exports=yo("navigator","userAgent")||""});var hi=S((x3,gi)=>{var di=r2(),ae=li(),fi=di.process,ci=di.Deno,si=fi&&fi.versions||ci&&ci.version,ai=si&&si.v8,E2,w1;ai&&(E2=ai.split("."),w1=E2[0]>0&&E2[0]<4?1:+(E2[0]+E2[1]));!w1&&ae&&(E2=ae.match(/Edge\/(\d+)/),(!E2||E2[1]>=74)&&(E2=ae.match(/Chrome\/(\d+)/),E2&&(w1=+E2[1])));gi.exports=w1});var de=S((p3,bi)=>{var mi=hi(),Ao=w2();bi.exports=!!Object.getOwnPropertySymbols&&!Ao(function(){var a=Symbol();return!String(a)||!(Object(a)instanceof Symbol)||!Symbol.sham&&mi&&mi<41})});var ge=S((e6,ki)=>{var Po=de();ki.exports=Po&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var he=S((u6,ri)=>{var Eo=D1(),Co=P2(),Do=ti(),wo=ge(),qo=Object;ri.exports=wo?function(a){return typeof a=="symbol"}:function(a){var g=Eo("Symbol");return Co(g)&&Do(g.prototype,qo(a))}});var yi=S((i6,vi)=>{var Bo=String;vi.exports=function(a){try{return Bo(a)}catch{return"Object"}}});var Pi=S((n6,Ai)=>{var So=P2(),Fo=yi(),Lo=TypeError;Ai.exports=function(a){if(So(a))return a;throw Lo(Fo(a)+" is not a function")}});var Ci=S((t6,Ei)=>{var Oo=Pi(),To=oe();Ei.exports=function(a,g){var k=a[g];return To(k)?void 0:Oo(k)}});var wi=S((o6,Di)=>{var me=E1(),be=P2(),ke=Z2(),Io=TypeError;Di.exports=function(a,g){var k,f;if(g==="string"&&be(k=a.toString)&&!ke(f=me(k,a))||be(k=a.valueOf)&&!ke(f=me(k,a))||g!=="string"&&be(k=a.toString)&&!ke(f=me(k,a)))return f;throw Io("Can't convert object to primitive value")}});var Bi=S((l6,qi)=>{qi.exports=!1});var q1=S((f6,Fi)=>{var Si=r2(),Ro=Object.defineProperty;Fi.exports=function(a,g){try{Ro(Si,a,{value:g,configurable:!0,writable:!0})}catch{Si[a]=g}return g}});var B1=S((c6,Oi)=>{var Vo=r2(),No=q1(),Li="__core-js_shared__",jo=Vo[Li]||No(Li,{});Oi.exports=jo});var re=S((s6,Ii)=>{var _o=Bi(),Ti=B1();(Ii.exports=function(a,g){return Ti[a]||(Ti[a]=g!==void 0?g:{})})("versions",[]).push({version:"3.26.1",mode:_o?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var Vi=S((a6,Ri)=>{var Mo=le(),Uo=Object;Ri.exports=function(a){return Uo(Mo(a))}});var R2=S((d6,Ni)=>{var Jo=F2(),$o=Vi(),Ho=Jo({}.hasOwnProperty);Ni.exports=Object.hasOwn||function(g,k){return Ho($o(g),k)}});var ve=S((g6,ji)=>{var Xo=F2(),zo=0,Wo=Math.random(),Ko=Xo(1 .toString);ji.exports=function(a){return"Symbol("+(a===void 0?"":a)+")_"+Ko(++zo+Wo,36)}});var Hi=S((h6,$i)=>{var Yo=r2(),Zo=re(),_i=R2(),Qo=ve(),Mi=de(),Ji=ge(),Q2=Zo("wks"),$2=Yo.Symbol,Ui=$2&&$2.for,Go=Ji?$2:$2&&$2.withoutSetter||Qo;$i.exports=function(a){if(!_i(Q2,a)||!(Mi||typeof Q2[a]=="string")){var g="Symbol."+a;Mi&&_i($2,a)?Q2[a]=$2[a]:Ji&&Ui?Q2[a]=Ui(g):Q2[a]=Go(g)}return Q2[a]}});var Ki=S((m6,Wi)=>{var xo=E1(),Xi=Z2(),zi=he(),po=Ci(),el=wi(),ul=Hi(),il=TypeError,nl=ul("toPrimitive");Wi.exports=function(a,g){if(!Xi(a)||zi(a))return a;var k=po(a,nl),f;if(k){if(g===void 0&&(g="default"),f=xo(k,a,g),!Xi(f)||zi(f))return f;throw il("Can't convert object to primitive value")}return g===void 0&&(g="number"),el(a,g)}});var ye=S((b6,Yi)=>{var tl=Ki(),ol=he();Yi.exports=function(a){var g=tl(a,"string");return ol(g)?g:g+""}});var Gi=S((k6,Qi)=>{var ll=r2(),Zi=Z2(),Ae=ll.document,fl=Zi(Ae)&&Zi(Ae.createElement);Qi.exports=function(a){return fl?Ae.createElement(a):{}}});var Pe=S((r6,xi)=>{var cl=S2(),sl=w2(),al=Gi();xi.exports=!cl&&!sl(function(){return Object.defineProperty(al("div"),"a",{get:function(){return 7}}).a!=7})});var Ee=S(en=>{var dl=S2(),gl=E1(),hl=ju(),ml=ie(),bl=C1(),kl=ye(),rl=R2(),vl=Pe(),pi=Object.getOwnPropertyDescriptor;en.f=dl?pi:function(g,k){if(g=bl(g),k=kl(k),vl)try{return pi(g,k)}catch{}if(rl(g,k))return ml(!gl(hl.f,g,k),g[k])}});var nn=S((y6,un)=>{var yl=S2(),Al=w2();un.exports=yl&&Al(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var S1=S((A6,tn)=>{var Pl=Z2(),El=String,Cl=TypeError;tn.exports=function(a){if(Pl(a))return a;throw Cl(El(a)+" is not an object")}});var u1=S(ln=>{var Dl=S2(),wl=Pe(),ql=nn(),F1=S1(),on=ye(),Bl=TypeError,Ce=Object.defineProperty,Sl=Object.getOwnPropertyDescriptor,De="enumerable",we="configurable",qe="writable";ln.f=Dl?ql?function(g,k,f){if(F1(g),k=on(k),F1(f),typeof g=="function"&&k==="prototype"&&"value"in f&&qe in f&&!f[qe]){var E=Sl(g,k);E&&E[qe]&&(g[k]=f.value,f={configurable:we in f?f[we]:E[we],enumerable:De in f?f[De]:E[De],writable:!1})}return Ce(g,k,f)}:Ce:function(g,k,f){if(F1(g),k=on(k),F1(f),wl)try{return Ce(g,k,f)}catch{}if("get"in f||"set"in f)throw Bl("Accessors not supported");return"value"in f&&(g[k]=f.value),g}});var Be=S((E6,fn)=>{var Fl=S2(),Ll=u1(),Ol=ie();fn.exports=Fl?function(a,g,k){return Ll.f(a,g,Ol(1,k))}:function(a,g,k){return a[g]=k,a}});var an=S((C6,sn)=>{var Se=S2(),Tl=R2(),cn=Function.prototype,Il=Se&&Object.getOwnPropertyDescriptor,Fe=Tl(cn,"name"),Rl=Fe&&function(){}.name==="something",Vl=Fe&&(!Se||Se&&Il(cn,"name").configurable);sn.exports={EXISTS:Fe,PROPER:Rl,CONFIGURABLE:Vl}});var gn=S((D6,dn)=>{var Nl=F2(),jl=P2(),Le=B1(),_l=Nl(Function.toString);jl(Le.inspectSource)||(Le.inspectSource=function(a){return _l(a)});dn.exports=Le.inspectSource});var bn=S((w6,mn)=>{var Ml=r2(),Ul=P2(),hn=Ml.WeakMap;mn.exports=Ul(hn)&&/native code/.test(String(hn))});var vn=S((q6,rn)=>{var Jl=re(),$l=ve(),kn=Jl("keys");rn.exports=function(a){return kn[a]||(kn[a]=$l(a))}});var Oe=S((B6,yn)=>{yn.exports={}});var Cn=S((S6,En)=>{var Hl=bn(),Pn=r2(),Xl=Z2(),zl=Be(),Te=R2(),Ie=B1(),Wl=vn(),Kl=Oe(),An="Object already initialized",Re=Pn.TypeError,Yl=Pn.WeakMap,L1,i1,O1,Zl=function(a){return O1(a)?i1(a):L1(a,{})},Ql=function(a){return function(g){var k;if(!Xl(g)||(k=i1(g)).type!==a)throw Re("Incompatible receiver, "+a+" required");return k}};Hl||Ie.state?(C2=Ie.state||(Ie.state=new Yl),C2.get=C2.get,C2.has=C2.has,C2.set=C2.set,L1=function(a,g){if(C2.has(a))throw Re(An);return g.facade=a,C2.set(a,g),g},i1=function(a){return C2.get(a)||{}},O1=function(a){return C2.has(a)}):(H2=Wl("state"),Kl[H2]=!0,L1=function(a,g){if(Te(a,H2))throw Re(An);return g.facade=a,zl(a,H2,g),g},i1=function(a){return Te(a,H2)?a[H2]:{}},O1=function(a){return Te(a,H2)});var C2,H2;En.exports={set:L1,get:i1,has:O1,enforce:Zl,getterFor:Ql}});var Ne=S((F6,wn)=>{var Gl=w2(),xl=P2(),T1=R2(),Ve=S2(),pl=an().CONFIGURABLE,e4=gn(),Dn=Cn(),u4=Dn.enforce,i4=Dn.get,I1=Object.defineProperty,n4=Ve&&!Gl(function(){return I1(function(){},"length",{value:8}).length!==8}),t4=String(String).split("String"),o4=wn.exports=function(a,g,k){String(g).slice(0,7)==="Symbol("&&(g="["+String(g).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),k&&k.getter&&(g="get "+g),k&&k.setter&&(g="set "+g),(!T1(a,"name")||pl&&a.name!==g)&&(Ve?I1(a,"name",{value:g,configurable:!0}):a.name=g),n4&&k&&T1(k,"arity")&&a.length!==k.arity&&I1(a,"length",{value:k.arity});try{k&&T1(k,"constructor")&&k.constructor?Ve&&I1(a,"prototype",{writable:!1}):a.prototype&&(a.prototype=void 0)}catch{}var f=u4(a);return T1(f,"source")||(f.source=t4.join(typeof g=="string"?g:"")),a};Function.prototype.toString=o4(function(){return xl(this)&&i4(this).source||e4(this)},"toString")});var Bn=S((L6,qn)=>{var l4=P2(),f4=u1(),c4=Ne(),s4=q1();qn.exports=function(a,g,k,f){f||(f={});var E=f.enumerable,L=f.name!==void 0?f.name:g;if(l4(k)&&c4(k,L,f),f.global)E?a[g]=k:s4(g,k);else{try{f.unsafe?a[g]&&(E=!0):delete a[g]}catch{}E?a[g]=k:f4.f(a,g,{value:k,enumerable:!1,configurable:!f.nonConfigurable,writable:!f.nonWritable})}return a}});var Fn=S((O6,Sn)=>{var a4=Math.ceil,d4=Math.floor;Sn.exports=Math.trunc||function(g){var k=+g;return(k>0?d4:a4)(k)}});var je=S((T6,Ln)=>{var g4=Fn();Ln.exports=function(a){var g=+a;return g!==g||g===0?0:g4(g)}});var Tn=S((I6,On)=>{var h4=je(),m4=Math.max,b4=Math.min;On.exports=function(a,g){var k=h4(a);return k<0?m4(k+g,0):b4(k,g)}});var Rn=S((R6,In)=>{var k4=je(),r4=Math.min;In.exports=function(a){return a>0?r4(k4(a),9007199254740991):0}});var Nn=S((V6,Vn)=>{var v4=Rn();Vn.exports=function(a){return v4(a.length)}});var Mn=S((N6,_n)=>{var y4=C1(),A4=Tn(),P4=Nn(),jn=function(a){return function(g,k,f){var E=y4(g),L=P4(E),B=A4(f,L),R;if(a&&k!=k){for(;L>B;)if(R=E[B++],R!=R)return!0}else for(;L>B;B++)if((a||B in E)&&E[B]===k)return a||B||0;return!a&&-1}};_n.exports={includes:jn(!0),indexOf:jn(!1)}});var $n=S((j6,Jn)=>{var E4=F2(),_e=R2(),C4=C1(),D4=Mn().indexOf,w4=Oe(),Un=E4([].push);Jn.exports=function(a,g){var k=C4(a),f=0,E=[],L;for(L in k)!_e(w4,L)&&_e(k,L)&&Un(E,L);for(;g.length>f;)_e(k,L=g[f++])&&(~D4(E,L)||Un(E,L));return E}});var Xn=S((_6,Hn)=>{Hn.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var Wn=S(zn=>{var q4=$n(),B4=Xn(),S4=B4.concat("length","prototype");zn.f=Object.getOwnPropertyNames||function(g){return q4(g,S4)}});var Yn=S(Kn=>{Kn.f=Object.getOwnPropertySymbols});var Qn=S((J6,Zn)=>{var F4=D1(),L4=F2(),O4=Wn(),T4=Yn(),I4=S1(),R4=L4([].concat);Zn.exports=F4("Reflect","ownKeys")||function(g){var k=O4.f(I4(g)),f=T4.f;return f?R4(k,f(g)):k}});var pn=S(($6,xn)=>{var Gn=R2(),V4=Qn(),N4=Ee(),j4=u1();xn.exports=function(a,g,k){for(var f=V4(g),E=j4.f,L=N4.f,B=0;B{var _4=w2(),M4=P2(),U4=/#|\.prototype\./,n1=function(a,g){var k=$4[J4(a)];return k==X4?!0:k==H4?!1:M4(g)?_4(g):!!g},J4=n1.normalize=function(a){return String(a).replace(U4,".").toLowerCase()},$4=n1.data={},H4=n1.NATIVE="N",X4=n1.POLYFILL="P";e0.exports=n1});var n0=S((X6,i0)=>{var Me=r2(),z4=Ee().f,W4=Be(),K4=Bn(),Y4=q1(),Z4=pn(),Q4=u0();i0.exports=function(a,g){var k=a.target,f=a.global,E=a.stat,L,B,R,r,z,H;if(f?B=Me:E?B=Me[k]||Y4(k,{}):B=(Me[k]||{}).prototype,B)for(R in g){if(z=g[R],a.dontCallGetSet?(H=z4(B,R),r=H&&H.value):r=B[R],L=Q4(f?R:k+(E?".":"#")+R,a.forced),!L&&r!==void 0){if(typeof z==typeof r)continue;Z4(z,r)}(a.sham||r&&r.sham)&&W4(z,"sham",!0),K4(B,R,z,a)}}});var t0=S(()=>{var G4=n0(),Ue=r2();G4({global:!0,forced:Ue.globalThis!==Ue},{globalThis:Ue})});var f0=S((K6,l0)=>{var o0=Ne(),x4=u1();l0.exports=function(a,g,k){return k.get&&o0(k.get,g,{getter:!0}),k.set&&o0(k.set,g,{setter:!0}),x4.f(a,g,k)}});var s0=S((Y6,c0)=>{"use strict";var p4=S1();c0.exports=function(){var a=p4(this),g="";return a.hasIndices&&(g+="d"),a.global&&(g+="g"),a.ignoreCase&&(g+="i"),a.multiline&&(g+="m"),a.dotAll&&(g+="s"),a.unicode&&(g+="u"),a.unicodeSets&&(g+="v"),a.sticky&&(g+="y"),g}});t0();var e3=r2(),u3=S2(),i3=f0(),n3=s0(),t3=w2(),a0=e3.RegExp,d0=a0.prototype,o3=u3&&t3(function(){var a=!0;try{a0(".","d")}catch{a=!1}var g={},k="",f=a?"dgimsy":"gimsy",E=function(r,z){Object.defineProperty(g,r,{get:function(){return k+=z,!0}})},L={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};a&&(L.hasIndices="d");for(var B in L)E(B,L[B]);var R=Object.getOwnPropertyDescriptor(d0,"flags").get.call(g);return R!==f||k!==f});o3&&i3(d0,"flags",{configurable:!0,get:n3});var Xe=Object.defineProperty,l3=Object.getOwnPropertyDescriptor,ze=Object.getOwnPropertyNames,f3=Object.prototype.hasOwnProperty,g0=(a,g)=>function(){return a&&(g=(0,a[ze(a)[0]])(a=0)),g},t2=(a,g)=>function(){return g||(0,a[ze(a)[0]])((g={exports:{}}).exports,g),g.exports},c3=(a,g)=>{for(var k in g)Xe(a,k,{get:g[k],enumerable:!0})},s3=(a,g,k,f)=>{if(g&&typeof g=="object"||typeof g=="function")for(let E of ze(g))!f3.call(a,E)&&E!==k&&Xe(a,E,{get:()=>g[E],enumerable:!(f=l3(g,E))||f.enumerable});return a},a3=a=>s3(Xe({},"__esModule",{value:!0}),a),n2=g0({""(){}}),h0=t2({"src/common/parser-create-error.js"(a,g){"use strict";n2();function k(f,E){let L=new SyntaxError(f+" ("+E.start.line+":"+E.start.column+")");return L.loc=E,L}g.exports=k}}),d3=t2({"src/utils/try-combinations.js"(a,g){"use strict";n2();function k(){let f;for(var E=arguments.length,L=new Array(E),B=0;BHe,arch:()=>g3,cpus:()=>P0,default:()=>q0,endianness:()=>b0,freemem:()=>y0,getNetworkInterfaces:()=>w0,hostname:()=>k0,loadavg:()=>r0,networkInterfaces:()=>D0,platform:()=>h3,release:()=>C0,tmpDir:()=>Je,tmpdir:()=>$e,totalmem:()=>A0,type:()=>E0,uptime:()=>v0});function b0(){if(typeof R1>"u"){var a=new ArrayBuffer(2),g=new Uint8Array(a),k=new Uint16Array(a);if(g[0]=1,g[1]=2,k[0]===258)R1="BE";else if(k[0]===513)R1="LE";else throw new Error("unable to figure out endianess")}return R1}function k0(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function r0(){return[]}function v0(){return 0}function y0(){return Number.MAX_VALUE}function A0(){return Number.MAX_VALUE}function P0(){return[]}function E0(){return"Browser"}function C0(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function D0(){}function w0(){}function g3(){return"javascript"}function h3(){return"browser"}function Je(){return"/tmp"}var R1,$e,He,q0,m3=g0({"node-modules-polyfills:os"(){n2(),$e=Je,He=` +`,q0={EOL:He,tmpdir:$e,tmpDir:Je,networkInterfaces:D0,getNetworkInterfaces:w0,release:C0,type:E0,cpus:P0,totalmem:A0,freemem:y0,uptime:v0,loadavg:r0,hostname:k0,endianness:b0}}}),b3=t2({"node-modules-polyfills-commonjs:os"(a,g){n2();var k=(m3(),a3(m0));if(k&&k.default){g.exports=k.default;for(let f in k)g.exports[f]=k[f]}else k&&(g.exports=k)}}),k3=t2({"node_modules/detect-newline/index.js"(a,g){"use strict";n2();var k=f=>{if(typeof f!="string")throw new TypeError("Expected a string");let E=f.match(/(?:\r?\n)/g)||[];if(E.length===0)return;let L=E.filter(R=>R===`\r +`).length,B=E.length-L;return L>B?`\r +`:` +`};g.exports=k,g.exports.graceful=f=>typeof f=="string"&&k(f)||` +`}}),r3=t2({"node_modules/jest-docblock/build/index.js"(a){"use strict";n2(),Object.defineProperty(a,"__esModule",{value:!0}),a.extract=O,a.parse=a2,a.parseWithComments=C,a.print=$,a.strip=M;function g(){let J=b3();return g=function(){return J},J}function k(){let J=f(k3());return k=function(){return J},J}function f(J){return J&&J.__esModule?J:{default:J}}var E=/\*\/$/,L=/^\/\*\*?/,B=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,R=/(^|\s+)\/\/([^\r\n]*)/g,r=/^(\r?\n)+/,z=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,H=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,W=/(\r?\n|^) *\* ?/g,Y=[];function O(J){let u2=J.match(B);return u2?u2[0].trimLeft():""}function M(J){let u2=J.match(B);return u2&&u2[0]?J.substring(u2[0].length):J}function a2(J){return C(J).pragmas}function C(J){let u2=(0,k().default)(J)||g().EOL;J=J.replace(L,"").replace(E,"").replace(W,"$1");let h2="";for(;h2!==J;)h2=J,J=J.replace(z,`${u2}$1 $2${u2}`);J=J.replace(r,"").trimRight();let l2=Object.create(null),V2=J.replace(H,"").replace(r,"").trimRight(),f2;for(;f2=H.exec(J);){let N2=f2[2].replace(R,"");typeof l2[f2[1]]=="string"||Array.isArray(l2[f2[1]])?l2[f2[1]]=Y.concat(l2[f2[1]],N2):l2[f2[1]]=N2}return{comments:V2,pragmas:l2}}function $(J){let{comments:u2="",pragmas:h2={}}=J,l2=(0,k().default)(u2)||g().EOL,V2="/**",f2=" *",N2=" */",q2=Object.keys(h2),V1=q2.map(d2=>e2(d2,h2[d2])).reduce((d2,t1)=>d2.concat(t1),[]).map(d2=>`${f2} ${d2}${l2}`).join("");if(!u2){if(q2.length===0)return"";if(q2.length===1&&!Array.isArray(h2[q2[0]])){let d2=h2[q2[0]];return`${V2} ${e2(q2[0],d2)[0]}${N2}`}}let N1=u2.split(l2).map(d2=>`${f2} ${d2}`).join(l2)+l2;return V2+l2+(u2?N1:"")+(u2&&q2.length?f2+l2:"")+V1+N2}function e2(J,u2){return Y.concat(u2).map(h2=>`@${J} ${h2}`.trim())}}}),v3=t2({"src/common/end-of-line.js"(a,g){"use strict";n2();function k(B){let R=B.indexOf("\r");return R>=0?B.charAt(R+1)===` +`?"crlf":"cr":"lf"}function f(B){switch(B){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function E(B,R){let r;switch(R){case` +`:r=/\n/g;break;case"\r":r=/\r/g;break;case`\r +`:r=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(R)}.`)}let z=B.match(r);return z?z.length:0}function L(B){return B.replace(/\r\n?/g,` +`)}g.exports={guessEndOfLine:k,convertEndOfLineToChars:f,countEndOfLineChars:E,normalizeEndOfLine:L}}}),y3=t2({"src/language-js/utils/get-shebang.js"(a,g){"use strict";n2();function k(f){if(!f.startsWith("#!"))return"";let E=f.indexOf(` +`);return E===-1?f:f.slice(0,E)}g.exports=k}}),A3=t2({"src/language-js/pragma.js"(a,g){"use strict";n2();var{parseWithComments:k,strip:f,extract:E,print:L}=r3(),{normalizeEndOfLine:B}=v3(),R=y3();function r(W){let Y=R(W);Y&&(W=W.slice(Y.length+1));let O=E(W),{pragmas:M,comments:a2}=k(O);return{shebang:Y,text:W,pragmas:M,comments:a2}}function z(W){let Y=Object.keys(r(W).pragmas);return Y.includes("prettier")||Y.includes("format")}function H(W){let{shebang:Y,text:O,pragmas:M,comments:a2}=r(W),C=f(O),$=L({pragmas:Object.assign({format:""},M),comments:a2.trimStart()});return(Y?`${Y} +`:"")+B($)+(C.startsWith(` +`)?` +`:` + +`)+C}g.exports={hasPragma:z,insertPragma:H}}}),P3=t2({"src/utils/is-non-empty-array.js"(a,g){"use strict";n2();function k(f){return Array.isArray(f)&&f.length>0}g.exports=k}}),B0=t2({"src/language-js/loc.js"(a,g){"use strict";n2();var k=P3();function f(r){var z,H;let W=r.range?r.range[0]:r.start,Y=(z=(H=r.declaration)===null||H===void 0?void 0:H.decorators)!==null&&z!==void 0?z:r.decorators;return k(Y)?Math.min(f(Y[0]),W):W}function E(r){return r.range?r.range[1]:r.end}function L(r,z){let H=f(r);return Number.isInteger(H)&&H===f(z)}function B(r,z){let H=E(r);return Number.isInteger(H)&&H===E(z)}function R(r,z){return L(r,z)&&B(r,z)}g.exports={locStart:f,locEnd:E,hasSameLocStart:L,hasSameLoc:R}}}),E3=t2({"src/language-js/parse/utils/create-parser.js"(a,g){"use strict";n2();var{hasPragma:k}=A3(),{locStart:f,locEnd:E}=B0();function L(B){return B=typeof B=="function"?{parse:B}:B,Object.assign({astFormat:"estree",hasPragma:k,locStart:f,locEnd:E},B)}g.exports=L}}),C3=t2({"src/language-js/utils/is-ts-keyword-type.js"(a,g){"use strict";n2();function k(f){let{type:E}=f;return E.startsWith("TS")&&E.endsWith("Keyword")}g.exports=k}}),D3=t2({"src/language-js/utils/is-block-comment.js"(a,g){"use strict";n2();var k=new Set(["Block","CommentBlock","MultiLine"]),f=E=>k.has(E==null?void 0:E.type);g.exports=f}}),w3=t2({"src/language-js/utils/is-type-cast-comment.js"(a,g){"use strict";n2();var k=D3();function f(E){return k(E)&&E.value[0]==="*"&&/@(?:type|satisfies)\b/.test(E.value)}g.exports=f}}),q3=t2({"src/utils/get-last.js"(a,g){"use strict";n2();var k=f=>f[f.length-1];g.exports=k}}),B3=t2({"src/language-js/parse/postprocess/visit-node.js"(a,g){"use strict";n2();function k(f,E){if(Array.isArray(f)){for(let L=0;L{$.leadingComments&&$.leadingComments.some(L)&&C.add(k($))}),O=R(O,$=>{if($.type==="ParenthesizedExpression"){let{expression:e2}=$;if(e2.type==="TypeCastExpression")return e2.range=$.range,e2;let J=k($);if(!C.has(J))return e2.extra=Object.assign(Object.assign({},e2.extra),{},{parenthesized:!0}),e2}})}return O=R(O,C=>{switch(C.type){case"ChainExpression":return H(C.expression);case"LogicalExpression":{if(W(C))return Y(C);break}case"VariableDeclaration":{let $=B(C.declarations);$&&$.init&&a2(C,$);break}case"TSParenthesizedType":return E(C.typeAnnotation)||C.typeAnnotation.type==="TSThisType"||(C.typeAnnotation.range=[k(C),f(C)]),C.typeAnnotation;case"TSTypeParameter":if(typeof C.name=="string"){let $=k(C);C.name={type:"Identifier",name:C.name,range:[$,$+C.name.length]}}break;case"ObjectExpression":if(M.parser==="typescript"){let $=C.properties.find(e2=>e2.type==="Property"&&e2.value.type==="TSEmptyBodyFunctionExpression");$&&r($.value,"Unexpected token.")}break;case"SequenceExpression":{let $=B(C.expressions);C.range=[k(C),Math.min(f($),f(C))];break}case"TopicReference":M.__isUsingHackPipeline=!0;break;case"ExportAllDeclaration":{let{exported:$}=C;if(M.parser==="meriyah"&&$&&$.type==="Identifier"){let e2=M.originalText.slice(k($),f($));(e2.startsWith('"')||e2.startsWith("'"))&&(C.exported=Object.assign(Object.assign({},C.exported),{},{type:"Literal",value:C.exported.name,raw:e2}))}break}case"PropertyDefinition":if(M.parser==="meriyah"&&C.static&&!C.computed&&!C.key){let $="static",e2=k(C);Object.assign(C,{static:!1,key:{type:"Identifier",name:$,range:[e2,e2+$.length]}})}break}}),O;function a2(C,$){M.originalText[f($)]!==";"&&(C.range=[k(C),f($)])}}function H(O){switch(O.type){case"CallExpression":O.type="OptionalCallExpression",O.callee=H(O.callee);break;case"MemberExpression":O.type="OptionalMemberExpression",O.object=H(O.object);break;case"TSNonNullExpression":O.expression=H(O.expression);break}return O}function W(O){return O.type==="LogicalExpression"&&O.right.type==="LogicalExpression"&&O.operator===O.right.operator}function Y(O){return W(O)?Y({type:"LogicalExpression",operator:O.operator,left:Y({type:"LogicalExpression",operator:O.operator,left:O.left,right:O.right.left,range:[k(O.left),f(O.right.left)]}),right:O.right.right,range:[k(O),f(O)]}):O}g.exports=z}}),L3=t2({"node_modules/meriyah/dist/meriyah.cjs"(a){"use strict";n2(),Object.defineProperty(a,"__esModule",{value:!0});var g={[0]:"Unexpected token",[28]:"Unexpected token: '%0'",[1]:"Octal escape sequences are not allowed in strict mode",[2]:"Octal escape sequences are not allowed in template strings",[3]:"Unexpected token `#`",[4]:"Illegal Unicode escape sequence",[5]:"Invalid code point %0",[6]:"Invalid hexadecimal escape sequence",[8]:"Octal literals are not allowed in strict mode",[7]:"Decimal integer literals with a leading zero are forbidden in strict mode",[9]:"Expected number in radix %0",[145]:"Invalid left-hand side assignment to a destructible right-hand side",[10]:"Non-number found after exponent indicator",[11]:"Invalid BigIntLiteral",[12]:"No identifiers allowed directly after numeric literal",[13]:"Escapes \\8 or \\9 are not syntactically valid escapes",[14]:"Unterminated string literal",[15]:"Unterminated template literal",[16]:"Multiline comment was not closed properly",[17]:"The identifier contained dynamic unicode escape that was not closed",[18]:"Illegal character '%0'",[19]:"Missing hexadecimal digits",[20]:"Invalid implicit octal",[21]:"Invalid line break in string literal",[22]:"Only unicode escapes are legal in identifier names",[23]:"Expected '%0'",[24]:"Invalid left-hand side in assignment",[25]:"Invalid left-hand side in async arrow",[26]:'Calls to super must be in the "constructor" method of a class expression or class declaration that has a superclass',[27]:"Member access on super must be in a method",[29]:"Await expression not allowed in formal parameter",[30]:"Yield expression not allowed in formal parameter",[92]:"Unexpected token: 'escaped keyword'",[31]:"Unary expressions as the left operand of an exponentiation expression must be disambiguated with parentheses",[119]:"Async functions can only be declared at the top level or inside a block",[32]:"Unterminated regular expression",[33]:"Unexpected regular expression flag",[34]:"Duplicate regular expression flag '%0'",[35]:"%0 functions must have exactly %1 argument%2",[36]:"Setter function argument must not be a rest parameter",[37]:"%0 declaration must have a name in this context",[38]:"Function name may not contain any reserved words or be eval or arguments in strict mode",[39]:"The rest operator is missing an argument",[40]:"A getter cannot be a generator",[41]:"A computed property name must be followed by a colon or paren",[130]:"Object literal keys that are strings or numbers must be a method or have a colon",[43]:"Found `* async x(){}` but this should be `async * x(){}`",[42]:"Getters and setters can not be generators",[44]:"'%0' can not be generator method",[45]:"No line break is allowed after '=>'",[46]:"The left-hand side of the arrow can only be destructed through assignment",[47]:"The binding declaration is not destructible",[48]:"Async arrow can not be followed by new expression",[49]:"Classes may not have a static property named 'prototype'",[50]:"Class constructor may not be a %0",[51]:"Duplicate constructor method in class",[52]:"Invalid increment/decrement operand",[53]:"Invalid use of `new` keyword on an increment/decrement expression",[54]:"`=>` is an invalid assignment target",[55]:"Rest element may not have a trailing comma",[56]:"Missing initializer in %0 declaration",[57]:"'for-%0' loop head declarations can not have an initializer",[58]:"Invalid left-hand side in for-%0 loop: Must have a single binding",[59]:"Invalid shorthand property initializer",[60]:"Property name __proto__ appears more than once in object literal",[61]:"Let is disallowed as a lexically bound name",[62]:"Invalid use of '%0' inside new expression",[63]:"Illegal 'use strict' directive in function with non-simple parameter list",[64]:'Identifier "let" disallowed as left-hand side expression in strict mode',[65]:"Illegal continue statement",[66]:"Illegal break statement",[67]:"Cannot have `let[...]` as a var name in strict mode",[68]:"Invalid destructuring assignment target",[69]:"Rest parameter may not have a default initializer",[70]:"The rest argument must the be last parameter",[71]:"Invalid rest argument",[73]:"In strict mode code, functions can only be declared at top level or inside a block",[74]:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement",[75]:"Without web compatibility enabled functions can not be declared at top level, inside a block, or as the body of an if statement",[76]:"Class declaration can't appear in single-statement context",[77]:"Invalid left-hand side in for-%0",[78]:"Invalid assignment in for-%0",[79]:"for await (... of ...) is only valid in async functions and async generators",[80]:"The first token after the template expression should be a continuation of the template",[82]:"`let` declaration not allowed here and `let` cannot be a regular var name in strict mode",[81]:"`let \n [` is a restricted production at the start of a statement",[83]:"Catch clause requires exactly one parameter, not more (and no trailing comma)",[84]:"Catch clause parameter does not support default values",[85]:"Missing catch or finally after try",[86]:"More than one default clause in switch statement",[87]:"Illegal newline after throw",[88]:"Strict mode code may not include a with statement",[89]:"Illegal return statement",[90]:"The left hand side of the for-header binding declaration is not destructible",[91]:"new.target only allowed within functions",[93]:"'#' not followed by identifier",[99]:"Invalid keyword",[98]:"Can not use 'let' as a class name",[97]:"'A lexical declaration can't define a 'let' binding",[96]:"Can not use `let` as variable name in strict mode",[94]:"'%0' may not be used as an identifier in this context",[95]:"Await is only valid in async functions",[100]:"The %0 keyword can only be used with the module goal",[101]:"Unicode codepoint must not be greater than 0x10FFFF",[102]:"%0 source must be string",[103]:"Only a identifier can be used to indicate alias",[104]:"Only '*' or '{...}' can be imported after default",[105]:"Trailing decorator may be followed by method",[106]:"Decorators can't be used with a constructor",[108]:"HTML comments are only allowed with web compatibility (Annex B)",[109]:"The identifier 'let' must not be in expression position in strict mode",[110]:"Cannot assign to `eval` and `arguments` in strict mode",[111]:"The left-hand side of a for-of loop may not start with 'let'",[112]:"Block body arrows can not be immediately invoked without a group",[113]:"Block body arrows can not be immediately accessed without a group",[114]:"Unexpected strict mode reserved word",[115]:"Unexpected eval or arguments in strict mode",[116]:"Decorators must not be followed by a semicolon",[117]:"Calling delete on expression not allowed in strict mode",[118]:"Pattern can not have a tail",[120]:"Can not have a `yield` expression on the left side of a ternary",[121]:"An arrow function can not have a postfix update operator",[122]:"Invalid object literal key character after generator star",[123]:"Private fields can not be deleted",[125]:"Classes may not have a field called constructor",[124]:"Classes may not have a private element named constructor",[126]:"A class field initializer may not contain arguments",[127]:"Generators can only be declared at the top level or inside a block",[128]:"Async methods are a restricted production and cannot have a newline following it",[129]:"Unexpected character after object literal property name",[131]:"Invalid key token",[132]:"Label '%0' has already been declared",[133]:"continue statement must be nested within an iteration statement",[134]:"Undefined label '%0'",[135]:"Trailing comma is disallowed inside import(...) arguments",[136]:"import() requires exactly one argument",[137]:"Cannot use new with import(...)",[138]:"... is not allowed in import()",[139]:"Expected '=>'",[140]:"Duplicate binding '%0'",[141]:"Cannot export a duplicate name '%0'",[144]:"Duplicate %0 for-binding",[142]:"Exported binding '%0' needs to refer to a top-level declared variable",[143]:"Unexpected private field",[147]:"Numeric separators are not allowed at the end of numeric literals",[146]:"Only one underscore is allowed as numeric separator",[148]:"JSX value should be either an expression or a quoted JSX text",[149]:"Expected corresponding JSX closing tag for %0",[150]:"Adjacent JSX elements must be wrapped in an enclosing tag",[151]:"JSX attributes must only be assigned a non-empty 'expression'",[152]:"'%0' has already been declared",[153]:"'%0' shadowed a catch clause binding",[154]:"Dot property must be an identifier",[155]:"Encountered invalid input after spread/rest argument",[156]:"Catch without try",[157]:"Finally without try",[158]:"Expected corresponding closing tag for JSX fragment",[159]:"Coalescing and logical operators used together in the same expression must be disambiguated with parentheses",[160]:"Invalid tagged template on optional chain",[161]:"Invalid optional chain from super property",[162]:"Invalid optional chain from new expression",[163]:'Cannot use "import.meta" outside a module',[164]:"Leading decorators must be attached to a class declaration"},k=class extends SyntaxError{constructor(e,u,i,n){for(var t=arguments.length,o=new Array(t>4?t-4:0),l=4;lo[m]);super(`${c}`),this.index=e,this.line=u,this.column=i,this.description=c,this.loc={line:u,column:i}}};function f(e,u){for(var i=arguments.length,n=new Array(i>2?i-2:0),t=2;t4?t-4:0),l=4;l{let i=new Uint32Array(104448),n=0,t=0;for(;n<3540;){let o=e[n++];if(o<0)t-=o;else{let l=e[n++];o&2&&(l=u[l]),o&1?i.fill(l,t,t+=e[n++]):i[t++]=l}}return i})([-1,2,24,2,25,2,5,-1,0,77595648,3,44,2,3,0,14,2,57,2,58,3,0,3,0,3168796671,0,4294956992,2,1,2,0,2,59,3,0,4,0,4294966523,3,0,4,2,16,2,60,2,0,0,4294836735,0,3221225471,0,4294901942,2,61,0,134152192,3,0,2,0,4294951935,3,0,2,0,2683305983,0,2684354047,2,17,2,0,0,4294961151,3,0,2,2,19,2,0,0,608174079,2,0,2,131,2,6,2,56,-1,2,37,0,4294443263,2,1,3,0,3,0,4294901711,2,39,0,4089839103,0,2961209759,0,1342439375,0,4294543342,0,3547201023,0,1577204103,0,4194240,0,4294688750,2,2,0,80831,0,4261478351,0,4294549486,2,2,0,2967484831,0,196559,0,3594373100,0,3288319768,0,8469959,2,194,2,3,0,3825204735,0,123747807,0,65487,0,4294828015,0,4092591615,0,1080049119,0,458703,2,3,2,0,0,2163244511,0,4227923919,0,4236247022,2,66,0,4284449919,0,851904,2,4,2,11,0,67076095,-1,2,67,0,1073741743,0,4093591391,-1,0,50331649,0,3265266687,2,32,0,4294844415,0,4278190047,2,18,2,129,-1,3,0,2,2,21,2,0,2,9,2,0,2,14,2,15,3,0,10,2,69,2,0,2,70,2,71,2,72,2,0,2,73,2,0,2,10,0,261632,2,23,3,0,2,2,12,2,4,3,0,18,2,74,2,5,3,0,2,2,75,0,2088959,2,27,2,8,0,909311,3,0,2,0,814743551,2,41,0,67057664,3,0,2,2,40,2,0,2,28,2,0,2,29,2,7,0,268374015,2,26,2,49,2,0,2,76,0,134153215,-1,2,6,2,0,2,7,0,2684354559,0,67044351,0,3221160064,0,1,-1,3,0,2,2,42,0,1046528,3,0,3,2,8,2,0,2,51,0,4294960127,2,9,2,38,2,10,0,4294377472,2,11,3,0,7,0,4227858431,3,0,8,2,12,2,0,2,78,2,9,2,0,2,79,2,80,2,81,-1,2,124,0,1048577,2,82,2,13,-1,2,13,0,131042,2,83,2,84,2,85,2,0,2,33,-83,2,0,2,53,2,7,3,0,4,0,1046559,2,0,2,14,2,0,0,2147516671,2,20,3,86,2,2,0,-16,2,87,0,524222462,2,4,2,0,0,4269801471,2,4,2,0,2,15,2,77,2,16,3,0,2,2,47,2,0,-1,2,17,-16,3,0,206,-2,3,0,655,2,18,3,0,36,2,68,-1,2,17,2,9,3,0,8,2,89,2,121,2,0,0,3220242431,3,0,3,2,19,2,90,2,91,3,0,2,2,92,2,0,2,93,2,94,2,0,0,4351,2,0,2,8,3,0,2,0,67043391,0,3909091327,2,0,2,22,2,8,2,18,3,0,2,0,67076097,2,7,2,0,2,20,0,67059711,0,4236247039,3,0,2,0,939524103,0,8191999,2,97,2,98,2,15,2,21,3,0,3,0,67057663,3,0,349,2,99,2,100,2,6,-264,3,0,11,2,22,3,0,2,2,31,-1,0,3774349439,2,101,2,102,3,0,2,2,19,2,103,3,0,10,2,9,2,17,2,0,2,45,2,0,2,30,2,104,2,23,0,1638399,2,172,2,105,3,0,3,2,18,2,24,2,25,2,5,2,26,2,0,2,7,2,106,-1,2,107,2,108,2,109,-1,3,0,3,2,11,-2,2,0,2,27,-3,2,150,-4,2,18,2,0,2,35,0,1,2,0,2,62,2,28,2,11,2,9,2,0,2,110,-1,3,0,4,2,9,2,21,2,111,2,6,2,0,2,112,2,0,2,48,-4,3,0,9,2,20,2,29,2,30,-4,2,113,2,114,2,29,2,20,2,7,-2,2,115,2,29,2,31,-2,2,0,2,116,-2,0,4277137519,0,2269118463,-1,3,18,2,-1,2,32,2,36,2,0,3,29,2,2,34,2,19,-3,3,0,2,2,33,-1,2,0,2,34,2,0,2,34,2,0,2,46,-10,2,0,0,203775,-2,2,18,2,43,2,35,-2,2,17,2,117,2,20,3,0,2,2,36,0,2147549120,2,0,2,11,2,17,2,135,2,0,2,37,2,52,0,5242879,3,0,2,0,402644511,-1,2,120,0,1090519039,-2,2,122,2,38,2,0,0,67045375,2,39,0,4226678271,0,3766565279,0,2039759,-4,3,0,2,0,3288270847,0,3,3,0,2,0,67043519,-5,2,0,0,4282384383,0,1056964609,-1,3,0,2,0,67043345,-1,2,0,2,40,2,41,-1,2,10,2,42,-6,2,0,2,11,-3,3,0,2,0,2147484671,2,125,0,4190109695,2,50,-2,2,126,0,4244635647,0,27,2,0,2,7,2,43,2,0,2,63,-1,2,0,2,40,-8,2,54,2,44,0,67043329,2,127,2,45,0,8388351,-2,2,128,0,3028287487,2,46,2,130,0,33259519,2,41,-9,2,20,-5,2,64,-2,3,0,28,2,31,-3,3,0,3,2,47,3,0,6,2,48,-85,3,0,33,2,47,-126,3,0,18,2,36,-269,3,0,17,2,40,2,7,2,41,-2,2,17,2,49,2,0,2,20,2,50,2,132,2,23,-21,3,0,2,-4,3,0,2,0,4294936575,2,0,0,4294934783,-2,0,196635,3,0,191,2,51,3,0,38,2,29,-1,2,33,-279,3,0,8,2,7,-1,2,133,2,52,3,0,11,2,6,-72,3,0,3,2,134,0,1677656575,-166,0,4161266656,0,4071,0,15360,-4,0,28,-13,3,0,2,2,37,2,0,2,136,2,137,2,55,2,0,2,138,2,139,2,140,3,0,10,2,141,2,142,2,15,3,37,2,3,53,2,3,54,2,0,4294954999,2,0,-16,2,0,2,88,2,0,0,2105343,0,4160749584,0,65534,-42,0,4194303871,0,2011,-6,2,0,0,1073684479,0,17407,-11,2,0,2,31,-40,3,0,6,0,8323103,-1,3,0,2,2,42,-37,2,55,2,144,2,145,2,146,2,147,2,148,-105,2,24,-32,3,0,1334,2,9,-1,3,0,129,2,27,3,0,6,2,9,3,0,180,2,149,3,0,233,0,1,-96,3,0,16,2,9,-47,3,0,154,2,56,-22381,3,0,7,2,23,-6130,3,5,2,-1,0,69207040,3,44,2,3,0,14,2,57,2,58,-3,0,3168731136,0,4294956864,2,1,2,0,2,59,3,0,4,0,4294966275,3,0,4,2,16,2,60,2,0,2,33,-1,2,17,2,61,-1,2,0,2,56,0,4294885376,3,0,2,0,3145727,0,2617294944,0,4294770688,2,23,2,62,3,0,2,0,131135,2,95,0,70256639,0,71303167,0,272,2,40,2,56,-1,2,37,2,30,-1,2,96,2,63,0,4278255616,0,4294836227,0,4294549473,0,600178175,0,2952806400,0,268632067,0,4294543328,0,57540095,0,1577058304,0,1835008,0,4294688736,2,65,2,64,0,33554435,2,123,2,65,2,151,0,131075,0,3594373096,0,67094296,2,64,-1,0,4294828e3,0,603979263,2,160,0,3,0,4294828001,0,602930687,2,183,0,393219,0,4294828016,0,671088639,0,2154840064,0,4227858435,0,4236247008,2,66,2,36,-1,2,4,0,917503,2,36,-1,2,67,0,537788335,0,4026531935,-1,0,1,-1,2,32,2,68,0,7936,-3,2,0,0,2147485695,0,1010761728,0,4292984930,0,16387,2,0,2,14,2,15,3,0,10,2,69,2,0,2,70,2,71,2,72,2,0,2,73,2,0,2,11,-1,2,23,3,0,2,2,12,2,4,3,0,18,2,74,2,5,3,0,2,2,75,0,253951,3,19,2,0,122879,2,0,2,8,0,276824064,-2,3,0,2,2,40,2,0,0,4294903295,2,0,2,29,2,7,-1,2,17,2,49,2,0,2,76,2,41,-1,2,20,2,0,2,27,-2,0,128,-2,2,77,2,8,0,4064,-1,2,119,0,4227907585,2,0,2,118,2,0,2,48,2,173,2,9,2,38,2,10,-1,0,74440192,3,0,6,-2,3,0,8,2,12,2,0,2,78,2,9,2,0,2,79,2,80,2,81,-3,2,82,2,13,-3,2,83,2,84,2,85,2,0,2,33,-83,2,0,2,53,2,7,3,0,4,0,817183,2,0,2,14,2,0,0,33023,2,20,3,86,2,-17,2,87,0,524157950,2,4,2,0,2,88,2,4,2,0,2,15,2,77,2,16,3,0,2,2,47,2,0,-1,2,17,-16,3,0,206,-2,3,0,655,2,18,3,0,36,2,68,-1,2,17,2,9,3,0,8,2,89,0,3072,2,0,0,2147516415,2,9,3,0,2,2,23,2,90,2,91,3,0,2,2,92,2,0,2,93,2,94,0,4294965179,0,7,2,0,2,8,2,91,2,8,-1,0,1761345536,2,95,0,4294901823,2,36,2,18,2,96,2,34,2,166,0,2080440287,2,0,2,33,2,143,0,3296722943,2,0,0,1046675455,0,939524101,0,1837055,2,97,2,98,2,15,2,21,3,0,3,0,7,3,0,349,2,99,2,100,2,6,-264,3,0,11,2,22,3,0,2,2,31,-1,0,2700607615,2,101,2,102,3,0,2,2,19,2,103,3,0,10,2,9,2,17,2,0,2,45,2,0,2,30,2,104,-3,2,105,3,0,3,2,18,-1,3,5,2,2,26,2,0,2,7,2,106,-1,2,107,2,108,2,109,-1,3,0,3,2,11,-2,2,0,2,27,-8,2,18,2,0,2,35,-1,2,0,2,62,2,28,2,29,2,9,2,0,2,110,-1,3,0,4,2,9,2,17,2,111,2,6,2,0,2,112,2,0,2,48,-4,3,0,9,2,20,2,29,2,30,-4,2,113,2,114,2,29,2,20,2,7,-2,2,115,2,29,2,31,-2,2,0,2,116,-2,0,4277075969,2,29,-1,3,18,2,-1,2,32,2,117,2,0,3,29,2,2,34,2,19,-3,3,0,2,2,33,-1,2,0,2,34,2,0,2,34,2,0,2,48,-10,2,0,0,197631,-2,2,18,2,43,2,118,-2,2,17,2,117,2,20,2,119,2,51,-2,2,119,2,23,2,17,2,33,2,119,2,36,0,4294901904,0,4718591,2,119,2,34,0,335544350,-1,2,120,2,121,-2,2,122,2,38,2,7,-1,2,123,2,65,0,3758161920,0,3,-4,2,0,2,27,0,2147485568,0,3,2,0,2,23,0,176,-5,2,0,2,47,2,186,-1,2,0,2,23,2,197,-1,2,0,0,16779263,-2,2,11,-7,2,0,2,121,-3,3,0,2,2,124,2,125,0,2147549183,0,2,-2,2,126,2,35,0,10,0,4294965249,0,67633151,0,4026597376,2,0,0,536871935,-1,2,0,2,40,-8,2,54,2,47,0,1,2,127,2,23,-3,2,128,2,35,2,129,2,130,0,16778239,-10,2,34,-5,2,64,-2,3,0,28,2,31,-3,3,0,3,2,47,3,0,6,2,48,-85,3,0,33,2,47,-126,3,0,18,2,36,-269,3,0,17,2,40,2,7,-3,2,17,2,131,2,0,2,23,2,48,2,132,2,23,-21,3,0,2,-4,3,0,2,0,67583,-1,2,103,-2,0,11,3,0,191,2,51,3,0,38,2,29,-1,2,33,-279,3,0,8,2,7,-1,2,133,2,52,3,0,11,2,6,-72,3,0,3,2,134,2,135,-187,3,0,2,2,37,2,0,2,136,2,137,2,55,2,0,2,138,2,139,2,140,3,0,10,2,141,2,142,2,15,3,37,2,3,53,2,3,54,2,2,143,-73,2,0,0,1065361407,0,16384,-11,2,0,2,121,-40,3,0,6,2,117,-1,3,0,2,0,2063,-37,2,55,2,144,2,145,2,146,2,147,2,148,-138,3,0,1334,2,9,-1,3,0,129,2,27,3,0,6,2,9,3,0,180,2,149,3,0,233,0,1,-96,3,0,16,2,9,-47,3,0,154,2,56,-28517,2,0,0,1,-1,2,124,2,0,0,8193,-21,2,193,0,10255,0,4,-11,2,64,2,171,-1,0,71680,-1,2,161,0,4292900864,0,805306431,-5,2,150,-1,2,157,-1,0,6144,-2,2,127,-1,2,154,-1,0,2147532800,2,151,2,165,2,0,2,164,0,524032,0,4,-4,2,190,0,205128192,0,1333757536,0,2147483696,0,423953,0,747766272,0,2717763192,0,4286578751,0,278545,2,152,0,4294886464,0,33292336,0,417809,2,152,0,1327482464,0,4278190128,0,700594195,0,1006647527,0,4286497336,0,4160749631,2,153,0,469762560,0,4171219488,0,8323120,2,153,0,202375680,0,3214918176,0,4294508592,2,153,-1,0,983584,0,48,0,58720273,0,3489923072,0,10517376,0,4293066815,0,1,0,2013265920,2,177,2,0,0,2089,0,3221225552,0,201375904,2,0,-2,0,256,0,122880,0,16777216,2,150,0,4160757760,2,0,-6,2,167,-11,0,3263218176,-1,0,49664,0,2160197632,0,8388802,-1,0,12713984,-1,2,154,2,159,2,178,-2,2,162,-20,0,3758096385,-2,2,155,0,4292878336,2,90,2,169,0,4294057984,-2,2,163,2,156,2,175,-2,2,155,-1,2,182,-1,2,170,2,124,0,4026593280,0,14,0,4292919296,-1,2,158,0,939588608,-1,0,805306368,-1,2,124,0,1610612736,2,156,2,157,2,4,2,0,-2,2,158,2,159,-3,0,267386880,-1,2,160,0,7168,-1,0,65024,2,154,2,161,2,179,-7,2,168,-8,2,162,-1,0,1426112704,2,163,-1,2,164,0,271581216,0,2149777408,2,23,2,161,2,124,0,851967,2,180,-1,2,23,2,181,-4,2,158,-20,2,195,2,165,-56,0,3145728,2,185,-4,2,166,2,124,-4,0,32505856,-1,2,167,-1,0,2147385088,2,90,1,2155905152,2,-3,2,103,2,0,2,168,-2,2,169,-6,2,170,0,4026597375,0,1,-1,0,1,-1,2,171,-3,2,117,2,64,-2,2,166,-2,2,176,2,124,-878,2,159,-36,2,172,-1,2,201,-10,2,188,-5,2,174,-6,0,4294965251,2,27,-1,2,173,-1,2,174,-2,0,4227874752,-3,0,2146435072,2,159,-2,0,1006649344,2,124,-1,2,90,0,201375744,-3,0,134217720,2,90,0,4286677377,0,32896,-1,2,158,-3,2,175,-349,2,176,0,1920,2,177,3,0,264,-11,2,157,-2,2,178,2,0,0,520617856,0,2692743168,0,36,-3,0,524284,-11,2,23,-1,2,187,-1,2,184,0,3221291007,2,178,-1,2,202,0,2158720,-3,2,159,0,1,-4,2,124,0,3808625411,0,3489628288,2,200,0,1207959680,0,3221274624,2,0,-3,2,179,0,120,0,7340032,-2,2,180,2,4,2,23,2,163,3,0,4,2,159,-1,2,181,2,177,-1,0,8176,2,182,2,179,2,183,-1,0,4290773232,2,0,-4,2,163,2,189,0,15728640,2,177,-1,2,161,-1,0,4294934512,3,0,4,-9,2,90,2,170,2,184,3,0,4,0,704,0,1849688064,2,185,-1,2,124,0,4294901887,2,0,0,130547712,0,1879048192,2,199,3,0,2,-1,2,186,2,187,-1,0,17829776,0,2025848832,0,4261477888,-2,2,0,-1,0,4286580608,-1,0,29360128,2,192,0,16252928,0,3791388672,2,38,3,0,2,-2,2,196,2,0,-1,2,103,-1,0,66584576,-1,2,191,3,0,9,2,124,-1,0,4294755328,3,0,2,-1,2,161,2,178,3,0,2,2,23,2,188,2,90,-2,0,245760,0,2147418112,-1,2,150,2,203,0,4227923456,-1,2,164,2,161,2,90,-3,0,4292870145,0,262144,2,124,3,0,2,0,1073758848,2,189,-1,0,4227921920,2,190,0,68289024,0,528402016,0,4292927536,3,0,4,-2,0,268435456,2,91,-2,2,191,3,0,5,-1,2,192,2,163,2,0,-2,0,4227923936,2,62,-1,2,155,2,95,2,0,2,154,2,158,3,0,6,-1,2,177,3,0,3,-2,0,2146959360,0,9440640,0,104857600,0,4227923840,3,0,2,0,768,2,193,2,77,-2,2,161,-2,2,119,-1,2,155,3,0,8,0,512,0,8388608,2,194,2,172,2,187,0,4286578944,3,0,2,0,1152,0,1266679808,2,191,0,576,0,4261707776,2,95,3,0,9,2,155,3,0,5,2,16,-1,0,2147221504,-28,2,178,3,0,3,-3,0,4292902912,-6,2,96,3,0,85,-33,0,4294934528,3,0,126,-18,2,195,3,0,269,-17,2,155,2,124,2,198,3,0,2,2,23,0,4290822144,-2,0,67174336,0,520093700,2,17,3,0,21,-2,2,179,3,0,3,-2,0,30720,-1,0,32512,3,0,2,0,4294770656,-191,2,174,-38,2,170,2,0,2,196,3,0,279,-8,2,124,2,0,0,4294508543,0,65295,-11,2,177,3,0,72,-3,0,3758159872,0,201391616,3,0,155,-7,2,170,-1,0,384,-1,0,133693440,-3,2,196,-2,2,26,3,0,4,2,169,-2,2,90,2,155,3,0,4,-2,2,164,-1,2,150,0,335552923,2,197,-1,0,538974272,0,2214592512,0,132e3,-10,0,192,-8,0,12288,-21,0,134213632,0,4294901761,3,0,42,0,100663424,0,4294965284,3,0,6,-1,0,3221282816,2,198,3,0,11,-1,2,199,3,0,40,-6,0,4286578784,2,0,-2,0,1006694400,3,0,24,2,35,-1,2,94,3,0,2,0,1,2,163,3,0,6,2,197,0,4110942569,0,1432950139,0,2701658217,0,4026532864,0,4026532881,2,0,2,45,3,0,8,-1,2,158,-2,2,169,0,98304,0,65537,2,170,-5,0,4294950912,2,0,2,118,0,65528,2,177,0,4294770176,2,26,3,0,4,-30,2,174,0,3758153728,-3,2,169,-2,2,155,2,188,2,158,-1,2,191,-1,2,161,0,4294754304,3,0,2,-3,0,33554432,-2,2,200,-3,2,169,0,4175478784,2,201,0,4286643712,0,4286644216,2,0,-4,2,202,-1,2,165,0,4227923967,3,0,32,-1334,2,163,2,0,-129,2,94,-6,2,163,-180,2,203,-233,2,4,3,0,96,-16,2,163,3,0,47,-154,2,165,3,0,22381,-7,2,17,3,0,6128],[4294967295,4294967291,4092460543,4294828031,4294967294,134217726,268435455,2147483647,1048575,1073741823,3892314111,134217727,1061158911,536805376,4294910143,4160749567,4294901759,4294901760,536870911,262143,8388607,4294902783,4294918143,65535,67043328,2281701374,4294967232,2097151,4294903807,4194303,255,67108863,4294967039,511,524287,131071,127,4292870143,4294902271,4294549487,33554431,1023,67047423,4294901888,4286578687,4294770687,67043583,32767,15,2047999,67043343,16777215,4294902e3,4294934527,4294966783,4294967279,2047,262083,20511,4290772991,41943039,493567,4294959104,603979775,65536,602799615,805044223,4294965206,8191,1031749119,4294917631,2134769663,4286578493,4282253311,4294942719,33540095,4294905855,4294967264,2868854591,1608515583,265232348,534519807,2147614720,1060109444,4093640016,17376,2139062143,224,4169138175,4294909951,4286578688,4294967292,4294965759,2044,4292870144,4294966272,4294967280,8289918,4294934399,4294901775,4294965375,1602223615,4294967259,4294443008,268369920,4292804608,486341884,4294963199,3087007615,1073692671,4128527,4279238655,4294902015,4294966591,2445279231,3670015,3238002687,31,63,4294967288,4294705151,4095,3221208447,4294549472,2147483648,4285526655,4294966527,4294705152,4294966143,64,4294966719,16383,3774873592,458752,536807423,67043839,3758096383,3959414372,3755993023,2080374783,4294835295,4294967103,4160749565,4087,184024726,2862017156,1593309078,268434431,268434414,4294901763,536870912,2952790016,202506752,139264,402653184,4261412864,4227922944,49152,61440,3758096384,117440512,65280,3233808384,3221225472,2097152,4294965248,32768,57152,67108864,4293918720,4290772992,25165824,57344,4227915776,4278190080,4227907584,65520,4026531840,4227858432,4160749568,3758129152,4294836224,63488,1073741824,4294967040,4194304,251658240,196608,4294963200,64512,417808,4227923712,12582912,50331648,65472,4294967168,4294966784,16,4294917120,2080374784,4096,65408,524288,65532]);function r(e){return e.column++,e.currentChar=e.source.charCodeAt(++e.index)}function z(e,u){if((u&64512)!==55296)return 0;let i=e.source.charCodeAt(e.index+1);return(i&64512)!==56320?0:(u=e.currentChar=65536+((u&1023)<<10)+(i&1023),R[(u>>>5)+0]>>>u&31&1||f(e,18,O(u)),e.index++,e.column++,1)}function H(e,u){e.currentChar=e.source.charCodeAt(++e.index),e.flags|=1,u&4||(e.column=0,e.line++)}function W(e){e.flags|=1,e.currentChar=e.source.charCodeAt(++e.index),e.column=0,e.line++}function Y(e){return e===160||e===65279||e===133||e===5760||e>=8192&&e<=8203||e===8239||e===8287||e===12288||e===8201||e===65519}function O(e){return e<=65535?String.fromCharCode(e):String.fromCharCode(e>>>10)+String.fromCharCode(e&1023)}function M(e){return e<65?e-48:e-65+10&15}function a2(e){switch(e){case 134283266:return"NumericLiteral";case 134283267:return"StringLiteral";case 86021:case 86022:return"BooleanLiteral";case 86023:return"NullLiteral";case 65540:return"RegularExpression";case 67174408:case 67174409:case 132:return"TemplateLiteral";default:return(e&143360)===143360?"Identifier":(e&4096)===4096?"Keyword":"Punctuator"}}var C=[0,0,0,0,0,0,0,0,0,0,1032,0,0,2056,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8192,0,3,0,0,8192,0,0,0,256,0,33024,0,0,242,242,114,114,114,114,114,114,594,594,0,0,16384,0,0,0,0,67,67,67,67,67,67,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,1,0,0,4099,0,71,71,71,71,71,71,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,16384,0,0,0,0],$=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0],e2=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0];function J(e){return e<=127?$[e]:R[(e>>>5)+34816]>>>e&31&1}function u2(e){return e<=127?e2[e]:R[(e>>>5)+0]>>>e&31&1||e===8204||e===8205}var h2=["SingleLine","MultiLine","HTMLOpen","HTMLClose","HashbangComment"];function l2(e){let u=e.source;e.currentChar===35&&u.charCodeAt(e.index+1)===33&&(r(e),r(e),f2(e,u,0,4,e.tokenPos,e.linePos,e.colPos))}function V2(e,u,i,n,t,o,l,c){return n&2048&&f(e,0),f2(e,u,i,t,o,l,c)}function f2(e,u,i,n,t,o,l){let{index:c}=e;for(e.tokenPos=e.index,e.linePos=e.line,e.colPos=e.column;e.index=e.source.length)return f(e,32)}let t=e.index-1,o=0,l=e.currentChar,{index:c}=e;for(;u2(l);){switch(l){case 103:o&2&&f(e,34,"g"),o|=2;break;case 105:o&1&&f(e,34,"i"),o|=1;break;case 109:o&4&&f(e,34,"m"),o|=4;break;case 117:o&16&&f(e,34,"g"),o|=16;break;case 121:o&8&&f(e,34,"y"),o|=8;break;case 115:o&32&&f(e,34,"s"),o|=32;break;default:f(e,33)}l=r(e)}let s=e.source.slice(c,e.index),m=e.source.slice(i,t);return e.tokenRegExp={pattern:m,flags:s},u&512&&(e.tokenRaw=e.source.slice(e.tokenPos,e.index)),e.tokenValue=V1(e,m,s),65540}function V1(e,u,i){try{return new RegExp(u,i)}catch{f(e,32)}}function N1(e,u,i){let{index:n}=e,t="",o=r(e),l=e.index;for(;!(C[o]&8);){if(o===i)return t+=e.source.slice(l,e.index),r(e),u&512&&(e.tokenRaw=e.source.slice(n,e.index)),e.tokenValue=t,134283267;if((o&8)===8&&o===92){if(t+=e.source.slice(l,e.index),o=r(e),o<127||o===8232||o===8233){let c=d2(e,u,o);c>=0?t+=O(c):t1(e,c,0)}else t+=O(o);l=e.index+1}e.index>=e.end&&f(e,14),o=r(e)}f(e,14)}function d2(e,u,i){switch(i){case 98:return 8;case 102:return 12;case 114:return 13;case 110:return 10;case 116:return 9;case 118:return 11;case 13:if(e.index1114111)return-5;return e.currentChar<1||e.currentChar!==125?-4:t}else{if(!(C[n]&64))return-4;let t=e.source.charCodeAt(e.index+1);if(!(C[t]&64))return-4;let o=e.source.charCodeAt(e.index+2);if(!(C[o]&64))return-4;let l=e.source.charCodeAt(e.index+3);return C[l]&64?(e.index+=3,e.column+=3,e.currentChar=e.source.charCodeAt(e.index),M(n)<<12|M(t)<<8|M(o)<<4|M(l)):-4}}case 56:case 57:if(!(u&256))return-3;default:return i}}function t1(e,u,i){switch(u){case-1:return;case-2:f(e,i?2:1);case-3:f(e,13);case-4:f(e,6);case-5:f(e,101)}}function We(e,u){let{index:i}=e,n=67174409,t="",o=r(e);for(;o!==96;){if(o===36&&e.source.charCodeAt(e.index+1)===123){r(e),n=67174408;break}else if((o&8)===8&&o===92)if(o=r(e),o>126)t+=O(o);else{let l=d2(e,u|1024,o);if(l>=0)t+=O(l);else if(l!==-1&&u&65536){t=void 0,o=S0(e,o),o<0&&(n=67174408);break}else t1(e,l,1)}else e.index=e.end&&f(e,15),o=r(e)}return r(e),e.tokenValue=t,e.tokenRaw=e.source.slice(i+1,e.index-(n===67174409?1:2)),n}function S0(e,u){for(;u!==96;){switch(u){case 36:{let i=e.index+1;if(i=e.end&&f(e,15),u=r(e)}return u}function F0(e,u){return e.index>=e.end&&f(e,0),e.index--,e.column--,We(e,u)}function Ke(e,u,i){let n=e.currentChar,t=0,o=9,l=i&64?0:1,c=0,s=0;if(i&64)t="."+o1(e,n),n=e.currentChar,n===110&&f(e,11);else{if(n===48)if(n=r(e),(n|32)===120){for(i=136,n=r(e);C[n]&4160;){if(n===95){s||f(e,146),s=0,n=r(e);continue}s=1,t=t*16+M(n),c++,n=r(e)}(c<1||!s)&&f(e,c<1?19:147)}else if((n|32)===111){for(i=132,n=r(e);C[n]&4128;){if(n===95){s||f(e,146),s=0,n=r(e);continue}s=1,t=t*8+(n-48),c++,n=r(e)}(c<1||!s)&&f(e,c<1?0:147)}else if((n|32)===98){for(i=130,n=r(e);C[n]&4224;){if(n===95){s||f(e,146),s=0,n=r(e);continue}s=1,t=t*2+(n-48),c++,n=r(e)}(c<1||!s)&&f(e,c<1?0:147)}else if(C[n]&32)for(u&1024&&f(e,1),i=1;C[n]&16;){if(C[n]&512){i=32,l=0;break}t=t*8+(n-48),n=r(e)}else C[n]&512?(u&1024&&f(e,1),e.flags|=64,i=32):n===95&&f(e,0);if(i&48){if(l){for(;o>=0&&C[n]&4112;){if(n===95){n=r(e),(n===95||i&32)&&B(e.index,e.line,e.index+1,146),s=1;continue}s=0,t=10*t+(n-48),n=r(e),--o}if(s&&B(e.index,e.line,e.index+1,147),o>=0&&!J(n)&&n!==46)return e.tokenValue=t,u&512&&(e.tokenRaw=e.source.slice(e.tokenPos,e.index)),134283266}t+=o1(e,n),n=e.currentChar,n===46&&(r(e)===95&&f(e,0),i=64,t+="."+o1(e,e.currentChar),n=e.currentChar)}}let m=e.index,b=0;if(n===110&&i&128)b=1,n=r(e);else if((n|32)===101){n=r(e),C[n]&256&&(n=r(e));let{index:h}=e;(C[n]&16)<1&&f(e,10),t+=e.source.substring(m,h)+o1(e,n),n=e.currentChar}return(e.index","(","{",".","...","}",")",";",",","[","]",":","?","'",'"',"","++","--","=","<<=",">>=",">>>=","**=","+=","-=","*=","/=","%=","^=","|=","&=","||=","&&=","??=","typeof","delete","void","!","~","+","-","in","instanceof","*","%","/","**","&&","||","===","!==","==","!=","<=",">=","<",">","<<",">>",">>>","&","|","^","var","let","const","break","case","catch","class","continue","debugger","default","do","else","export","extends","finally","for","function","if","import","new","return","super","switch","this","throw","try","while","with","implements","interface","package","private","protected","public","static","yield","as","async","await","constructor","get","set","from","of","enum","eval","arguments","escaped keyword","escaped future reserved keyword","reserved if strict","#","BigIntLiteral","??","?.","WhiteSpace","Illegal","LineTerminator","PrivateField","Template","@","target","meta","LineFeed","Escaped","JSXText"],Ye=Object.create(null,{this:{value:86113},function:{value:86106},if:{value:20571},return:{value:20574},var:{value:86090},else:{value:20565},for:{value:20569},new:{value:86109},in:{value:8738868},typeof:{value:16863277},while:{value:20580},case:{value:20558},break:{value:20557},try:{value:20579},catch:{value:20559},delete:{value:16863278},throw:{value:86114},switch:{value:86112},continue:{value:20561},default:{value:20563},instanceof:{value:8476725},do:{value:20564},void:{value:16863279},finally:{value:20568},async:{value:209007},await:{value:209008},class:{value:86096},const:{value:86092},constructor:{value:12401},debugger:{value:20562},export:{value:20566},extends:{value:20567},false:{value:86021},from:{value:12404},get:{value:12402},implements:{value:36966},import:{value:86108},interface:{value:36967},let:{value:241739},null:{value:86023},of:{value:274549},package:{value:36968},private:{value:36969},protected:{value:36970},public:{value:36971},set:{value:12403},static:{value:36972},super:{value:86111},true:{value:86022},with:{value:20581},yield:{value:241773},enum:{value:86134},eval:{value:537079927},as:{value:77934},arguments:{value:537079928},target:{value:143494},meta:{value:143495}});function Ze(e,u,i){for(;e2[r(e)];);return e.tokenValue=e.source.slice(e.tokenPos,e.index),e.currentChar!==92&&e.currentChar<126?Ye[e.tokenValue]||208897:j1(e,u,0,i)}function L0(e,u){let i=Qe(e);return u2(i)||f(e,4),e.tokenValue=O(i),j1(e,u,1,C[i]&4)}function j1(e,u,i,n){let t=e.index;for(;e.index=2&&o<=11){let l=Ye[e.tokenValue];return l===void 0?208897:i?u&1024?l===209008&&!(u&4196352)?l:l===36972||(l&36864)===36864?122:121:u&1073741824&&!(u&8192)&&(l&20480)===20480?l:l===241773?u&1073741824?143483:u&2097152?121:l:l===209007&&u&1073741824?143483:(l&36864)===36864||l===209008&&!(u&4194304)?l:121:l}return 208897}function O0(e){return J(r(e))||f(e,93),131}function Qe(e){return e.source.charCodeAt(e.index+1)!==117&&f(e,4),e.currentChar=e.source.charCodeAt(e.index+=2),T0(e)}function T0(e){let u=0,i=e.currentChar;if(i===123){let l=e.index-2;for(;C[r(e)]&64;)u=u<<4|M(e.currentChar),u>1114111&&B(l,e.line,e.index+1,101);return e.currentChar!==125&&B(l,e.line,e.index-1,6),r(e),u}C[i]&64||f(e,6);let n=e.source.charCodeAt(e.index+1);C[n]&64||f(e,6);let t=e.source.charCodeAt(e.index+2);C[t]&64||f(e,6);let o=e.source.charCodeAt(e.index+3);return C[o]&64||f(e,6),u=M(i)<<12|M(n)<<8|M(t)<<4|M(o),e.currentChar=e.source.charCodeAt(e.index+=4),u}var Ge=[129,129,129,129,129,129,129,129,129,128,136,128,128,130,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,128,16842800,134283267,131,208897,8457015,8455751,134283267,67174411,16,8457014,25233970,18,25233971,67108877,8457016,134283266,134283266,134283266,134283266,134283266,134283266,134283266,134283266,134283266,134283266,21,1074790417,8456258,1077936157,8456259,22,133,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,69271571,137,20,8455497,208897,132,4096,4096,4096,4096,4096,4096,4096,208897,4096,208897,208897,4096,208897,4096,208897,4096,208897,4096,4096,4096,208897,4096,4096,208897,4096,4096,2162700,8455240,1074790415,16842801,129];function P(e,u){if(e.flags=(e.flags|1)^1,e.startPos=e.index,e.startColumn=e.column,e.startLine=e.line,e.token=xe(e,u,0),e.onToken&&e.token!==1048576){let i={start:{line:e.linePos,column:e.colPos},end:{line:e.line,column:e.column}};e.onToken(a2(e.token),e.tokenPos,e.index,i)}}function xe(e,u,i){let n=e.index===0,t=e.source,o=e.index,l=e.line,c=e.column;for(;e.index=e.end)return 8457014;let d=e.currentChar;return d===61?(r(e),4194340):d!==42?8457014:r(e)!==61?8457273:(r(e),4194337)}case 8455497:return r(e)!==61?8455497:(r(e),4194343);case 25233970:{r(e);let d=e.currentChar;return d===43?(r(e),33619995):d===61?(r(e),4194338):25233970}case 25233971:{r(e);let d=e.currentChar;if(d===45){if(r(e),(i&1||n)&&e.currentChar===62){u&256||f(e,108),r(e),i=V2(e,t,i,u,3,o,l,c),o=e.tokenPos,l=e.linePos,c=e.colPos;continue}return 33619996}return d===61?(r(e),4194339):25233971}case 8457016:{if(r(e),e.index=48&&h<=57)return Ke(e,u,80);if(h===46){let d=e.index+1;if(d=48&&d<=57)))return r(e),67108991}return 22}}}else{if((s^8232)<=1){i=i&-5|1,W(e);continue}if((s&64512)===55296||R[(s>>>5)+34816]>>>s&31&1)return(s&64512)===56320&&(s=(s&1023)<<10|s&1023|65536,R[(s>>>5)+0]>>>s&31&1||f(e,18,O(s)),e.index++,e.currentChar=s),e.column++,e.tokenValue="",j1(e,u,0,0);if(Y(s)){r(e);continue}f(e,18,O(s))}}return 1048576}var I0={AElig:"\xC6",AMP:"&",Aacute:"\xC1",Abreve:"\u0102",Acirc:"\xC2",Acy:"\u0410",Afr:"\u{1D504}",Agrave:"\xC0",Alpha:"\u0391",Amacr:"\u0100",And:"\u2A53",Aogon:"\u0104",Aopf:"\u{1D538}",ApplyFunction:"\u2061",Aring:"\xC5",Ascr:"\u{1D49C}",Assign:"\u2254",Atilde:"\xC3",Auml:"\xC4",Backslash:"\u2216",Barv:"\u2AE7",Barwed:"\u2306",Bcy:"\u0411",Because:"\u2235",Bernoullis:"\u212C",Beta:"\u0392",Bfr:"\u{1D505}",Bopf:"\u{1D539}",Breve:"\u02D8",Bscr:"\u212C",Bumpeq:"\u224E",CHcy:"\u0427",COPY:"\xA9",Cacute:"\u0106",Cap:"\u22D2",CapitalDifferentialD:"\u2145",Cayleys:"\u212D",Ccaron:"\u010C",Ccedil:"\xC7",Ccirc:"\u0108",Cconint:"\u2230",Cdot:"\u010A",Cedilla:"\xB8",CenterDot:"\xB7",Cfr:"\u212D",Chi:"\u03A7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",Colon:"\u2237",Colone:"\u2A74",Congruent:"\u2261",Conint:"\u222F",ContourIntegral:"\u222E",Copf:"\u2102",Coproduct:"\u2210",CounterClockwiseContourIntegral:"\u2233",Cross:"\u2A2F",Cscr:"\u{1D49E}",Cup:"\u22D3",CupCap:"\u224D",DD:"\u2145",DDotrahd:"\u2911",DJcy:"\u0402",DScy:"\u0405",DZcy:"\u040F",Dagger:"\u2021",Darr:"\u21A1",Dashv:"\u2AE4",Dcaron:"\u010E",Dcy:"\u0414",Del:"\u2207",Delta:"\u0394",Dfr:"\u{1D507}",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",Diamond:"\u22C4",DifferentialD:"\u2146",Dopf:"\u{1D53B}",Dot:"\xA8",DotDot:"\u20DC",DotEqual:"\u2250",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",Downarrow:"\u21D3",Dscr:"\u{1D49F}",Dstrok:"\u0110",ENG:"\u014A",ETH:"\xD0",Eacute:"\xC9",Ecaron:"\u011A",Ecirc:"\xCA",Ecy:"\u042D",Edot:"\u0116",Efr:"\u{1D508}",Egrave:"\xC8",Element:"\u2208",Emacr:"\u0112",EmptySmallSquare:"\u25FB",EmptyVerySmallSquare:"\u25AB",Eogon:"\u0118",Eopf:"\u{1D53C}",Epsilon:"\u0395",Equal:"\u2A75",EqualTilde:"\u2242",Equilibrium:"\u21CC",Escr:"\u2130",Esim:"\u2A73",Eta:"\u0397",Euml:"\xCB",Exists:"\u2203",ExponentialE:"\u2147",Fcy:"\u0424",Ffr:"\u{1D509}",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",Fopf:"\u{1D53D}",ForAll:"\u2200",Fouriertrf:"\u2131",Fscr:"\u2131",GJcy:"\u0403",GT:">",Gamma:"\u0393",Gammad:"\u03DC",Gbreve:"\u011E",Gcedil:"\u0122",Gcirc:"\u011C",Gcy:"\u0413",Gdot:"\u0120",Gfr:"\u{1D50A}",Gg:"\u22D9",Gopf:"\u{1D53E}",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",Gt:"\u226B",HARDcy:"\u042A",Hacek:"\u02C7",Hat:"^",Hcirc:"\u0124",Hfr:"\u210C",HilbertSpace:"\u210B",Hopf:"\u210D",HorizontalLine:"\u2500",Hscr:"\u210B",Hstrok:"\u0126",HumpDownHump:"\u224E",HumpEqual:"\u224F",IEcy:"\u0415",IJlig:"\u0132",IOcy:"\u0401",Iacute:"\xCD",Icirc:"\xCE",Icy:"\u0418",Idot:"\u0130",Ifr:"\u2111",Igrave:"\xCC",Im:"\u2111",Imacr:"\u012A",ImaginaryI:"\u2148",Implies:"\u21D2",Int:"\u222C",Integral:"\u222B",Intersection:"\u22C2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Iogon:"\u012E",Iopf:"\u{1D540}",Iota:"\u0399",Iscr:"\u2110",Itilde:"\u0128",Iukcy:"\u0406",Iuml:"\xCF",Jcirc:"\u0134",Jcy:"\u0419",Jfr:"\u{1D50D}",Jopf:"\u{1D541}",Jscr:"\u{1D4A5}",Jsercy:"\u0408",Jukcy:"\u0404",KHcy:"\u0425",KJcy:"\u040C",Kappa:"\u039A",Kcedil:"\u0136",Kcy:"\u041A",Kfr:"\u{1D50E}",Kopf:"\u{1D542}",Kscr:"\u{1D4A6}",LJcy:"\u0409",LT:"<",Lacute:"\u0139",Lambda:"\u039B",Lang:"\u27EA",Laplacetrf:"\u2112",Larr:"\u219E",Lcaron:"\u013D",Lcedil:"\u013B",Lcy:"\u041B",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",LeftRightArrow:"\u2194",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",Leftarrow:"\u21D0",Leftrightarrow:"\u21D4",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",LessLess:"\u2AA1",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",Lfr:"\u{1D50F}",Ll:"\u22D8",Lleftarrow:"\u21DA",Lmidot:"\u013F",LongLeftArrow:"\u27F5",LongLeftRightArrow:"\u27F7",LongRightArrow:"\u27F6",Longleftarrow:"\u27F8",Longleftrightarrow:"\u27FA",Longrightarrow:"\u27F9",Lopf:"\u{1D543}",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",Lscr:"\u2112",Lsh:"\u21B0",Lstrok:"\u0141",Lt:"\u226A",Map:"\u2905",Mcy:"\u041C",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",MinusPlus:"\u2213",Mopf:"\u{1D544}",Mscr:"\u2133",Mu:"\u039C",NJcy:"\u040A",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041D",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,Nfr:"\u{1D511}",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",Not:"\u2AEC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",Nscr:"\u{1D4A9}",Ntilde:"\xD1",Nu:"\u039D",OElig:"\u0152",Oacute:"\xD3",Ocirc:"\xD4",Ocy:"\u041E",Odblac:"\u0150",Ofr:"\u{1D512}",Ograve:"\xD2",Omacr:"\u014C",Omega:"\u03A9",Omicron:"\u039F",Oopf:"\u{1D546}",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",Or:"\u2A54",Oscr:"\u{1D4AA}",Oslash:"\xD8",Otilde:"\xD5",Otimes:"\u2A37",Ouml:"\xD6",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",PartialD:"\u2202",Pcy:"\u041F",Pfr:"\u{1D513}",Phi:"\u03A6",Pi:"\u03A0",PlusMinus:"\xB1",Poincareplane:"\u210C",Popf:"\u2119",Pr:"\u2ABB",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",Prime:"\u2033",Product:"\u220F",Proportion:"\u2237",Proportional:"\u221D",Pscr:"\u{1D4AB}",Psi:"\u03A8",QUOT:'"',Qfr:"\u{1D514}",Qopf:"\u211A",Qscr:"\u{1D4AC}",RBarr:"\u2910",REG:"\xAE",Racute:"\u0154",Rang:"\u27EB",Rarr:"\u21A0",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",Re:"\u211C",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",Rfr:"\u211C",Rho:"\u03A1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",Rightarrow:"\u21D2",Ropf:"\u211D",RoundImplies:"\u2970",Rrightarrow:"\u21DB",Rscr:"\u211B",Rsh:"\u21B1",RuleDelayed:"\u29F4",SHCHcy:"\u0429",SHcy:"\u0428",SOFTcy:"\u042C",Sacute:"\u015A",Sc:"\u2ABC",Scaron:"\u0160",Scedil:"\u015E",Scirc:"\u015C",Scy:"\u0421",Sfr:"\u{1D516}",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",Sigma:"\u03A3",SmallCircle:"\u2218",Sopf:"\u{1D54A}",Sqrt:"\u221A",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Sscr:"\u{1D4AE}",Star:"\u22C6",Sub:"\u22D0",Subset:"\u22D0",SubsetEqual:"\u2286",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",SuchThat:"\u220B",Sum:"\u2211",Sup:"\u22D1",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22D1",THORN:"\xDE",TRADE:"\u2122",TSHcy:"\u040B",TScy:"\u0426",Tab:" ",Tau:"\u03A4",Tcaron:"\u0164",Tcedil:"\u0162",Tcy:"\u0422",Tfr:"\u{1D517}",Therefore:"\u2234",Theta:"\u0398",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",Topf:"\u{1D54B}",TripleDot:"\u20DB",Tscr:"\u{1D4AF}",Tstrok:"\u0166",Uacute:"\xDA",Uarr:"\u219F",Uarrocir:"\u2949",Ubrcy:"\u040E",Ubreve:"\u016C",Ucirc:"\xDB",Ucy:"\u0423",Udblac:"\u0170",Ufr:"\u{1D518}",Ugrave:"\xD9",Umacr:"\u016A",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",Uopf:"\u{1D54C}",UpArrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",UpEquilibrium:"\u296E",UpTee:"\u22A5",UpTeeArrow:"\u21A5",Uparrow:"\u21D1",Updownarrow:"\u21D5",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",Upsilon:"\u03A5",Uring:"\u016E",Uscr:"\u{1D4B0}",Utilde:"\u0168",Uuml:"\xDC",VDash:"\u22AB",Vbar:"\u2AEB",Vcy:"\u0412",Vdash:"\u22A9",Vdashl:"\u2AE6",Vee:"\u22C1",Verbar:"\u2016",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",Vopf:"\u{1D54D}",Vscr:"\u{1D4B1}",Vvdash:"\u22AA",Wcirc:"\u0174",Wedge:"\u22C0",Wfr:"\u{1D51A}",Wopf:"\u{1D54E}",Wscr:"\u{1D4B2}",Xfr:"\u{1D51B}",Xi:"\u039E",Xopf:"\u{1D54F}",Xscr:"\u{1D4B3}",YAcy:"\u042F",YIcy:"\u0407",YUcy:"\u042E",Yacute:"\xDD",Ycirc:"\u0176",Ycy:"\u042B",Yfr:"\u{1D51C}",Yopf:"\u{1D550}",Yscr:"\u{1D4B4}",Yuml:"\u0178",ZHcy:"\u0416",Zacute:"\u0179",Zcaron:"\u017D",Zcy:"\u0417",Zdot:"\u017B",ZeroWidthSpace:"\u200B",Zeta:"\u0396",Zfr:"\u2128",Zopf:"\u2124",Zscr:"\u{1D4B5}",aacute:"\xE1",abreve:"\u0103",ac:"\u223E",acE:"\u223E\u0333",acd:"\u223F",acirc:"\xE2",acute:"\xB4",acy:"\u0430",aelig:"\xE6",af:"\u2061",afr:"\u{1D51E}",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",alpha:"\u03B1",amacr:"\u0101",amalg:"\u2A3F",amp:"&",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",aogon:"\u0105",aopf:"\u{1D552}",ap:"\u2248",apE:"\u2A70",apacir:"\u2A6F",ape:"\u224A",apid:"\u224B",apos:"'",approx:"\u2248",approxeq:"\u224A",aring:"\xE5",ascr:"\u{1D4B6}",ast:"*",asymp:"\u2248",asympeq:"\u224D",atilde:"\xE3",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",bNot:"\u2AED",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",barvee:"\u22BD",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",beta:"\u03B2",beth:"\u2136",between:"\u226C",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bnot:"\u2310",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxDL:"\u2557",boxDR:"\u2554",boxDl:"\u2556",boxDr:"\u2553",boxH:"\u2550",boxHD:"\u2566",boxHU:"\u2569",boxHd:"\u2564",boxHu:"\u2567",boxUL:"\u255D",boxUR:"\u255A",boxUl:"\u255C",boxUr:"\u2559",boxV:"\u2551",boxVH:"\u256C",boxVL:"\u2563",boxVR:"\u2560",boxVh:"\u256B",boxVl:"\u2562",boxVr:"\u255F",boxbox:"\u29C9",boxdL:"\u2555",boxdR:"\u2552",boxdl:"\u2510",boxdr:"\u250C",boxh:"\u2500",boxhD:"\u2565",boxhU:"\u2568",boxhd:"\u252C",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxuL:"\u255B",boxuR:"\u2558",boxul:"\u2518",boxur:"\u2514",boxv:"\u2502",boxvH:"\u256A",boxvL:"\u2561",boxvR:"\u255E",boxvh:"\u253C",boxvl:"\u2524",boxvr:"\u251C",bprime:"\u2035",breve:"\u02D8",brvbar:"\xA6",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",bumpeq:"\u224F",cacute:"\u0107",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",ccaps:"\u2A4D",ccaron:"\u010D",ccedil:"\xE7",ccirc:"\u0109",ccups:"\u2A4C",ccupssm:"\u2A50",cdot:"\u010B",cedil:"\xB8",cemptyv:"\u29B2",cent:"\xA2",centerdot:"\xB7",cfr:"\u{1D520}",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",chi:"\u03C7",cir:"\u25CB",cirE:"\u29C3",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledR:"\xAE",circledS:"\u24C8",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",clubs:"\u2663",clubsuit:"\u2663",colon:":",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",conint:"\u222E",copf:"\u{1D554}",coprod:"\u2210",copy:"\xA9",copysr:"\u2117",crarr:"\u21B5",cross:"\u2717",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cup:"\u222A",cupbrcap:"\u2A48",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dArr:"\u21D3",dHar:"\u2965",dagger:"\u2020",daleth:"\u2138",darr:"\u2193",dash:"\u2010",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",dcaron:"\u010F",dcy:"\u0434",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",ddotseq:"\u2A77",deg:"\xB0",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",dfr:"\u{1D521}",dharl:"\u21C3",dharr:"\u21C2",diam:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",dopf:"\u{1D555}",dot:"\u02D9",doteq:"\u2250",doteqdot:"\u2251",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",downarrow:"\u2193",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",dscr:"\u{1D4B9}",dscy:"\u0455",dsol:"\u29F6",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",dzcy:"\u045F",dzigrarr:"\u27FF",eDDot:"\u2A77",eDot:"\u2251",eacute:"\xE9",easter:"\u2A6E",ecaron:"\u011B",ecir:"\u2256",ecirc:"\xEA",ecolon:"\u2255",ecy:"\u044D",edot:"\u0117",ee:"\u2147",efDot:"\u2252",efr:"\u{1D522}",eg:"\u2A9A",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",eng:"\u014B",ensp:"\u2002",eogon:"\u0119",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",equals:"=",equest:"\u225F",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erDot:"\u2253",erarr:"\u2971",escr:"\u212F",esdot:"\u2250",esim:"\u2242",eta:"\u03B7",eth:"\xF0",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",expectation:"\u2130",exponentiale:"\u2147",fallingdotseq:"\u2252",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",ffr:"\u{1D523}",filig:"\uFB01",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",fopf:"\u{1D557}",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",gE:"\u2267",gEl:"\u2A8C",gacute:"\u01F5",gamma:"\u03B3",gammad:"\u03DD",gap:"\u2A86",gbreve:"\u011F",gcirc:"\u011D",gcy:"\u0433",gdot:"\u0121",ge:"\u2265",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",gfr:"\u{1D524}",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",gjcy:"\u0453",gl:"\u2277",glE:"\u2A92",gla:"\u2AA5",glj:"\u2AA4",gnE:"\u2269",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",gopf:"\u{1D558}",grave:"`",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",hArr:"\u21D4",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",hardcy:"\u044A",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",hbar:"\u210F",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",horbar:"\u2015",hscr:"\u{1D4BD}",hslash:"\u210F",hstrok:"\u0127",hybull:"\u2043",hyphen:"\u2010",iacute:"\xED",ic:"\u2063",icirc:"\xEE",icy:"\u0438",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",ijlig:"\u0133",imacr:"\u012B",image:"\u2111",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",int:"\u222B",intcal:"\u22BA",integers:"\u2124",intercal:"\u22BA",intlarhk:"\u2A17",intprod:"\u2A3C",iocy:"\u0451",iogon:"\u012F",iopf:"\u{1D55A}",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",iscr:"\u{1D4BE}",isin:"\u2208",isinE:"\u22F9",isindot:"\u22F5",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",itilde:"\u0129",iukcy:"\u0456",iuml:"\xEF",jcirc:"\u0135",jcy:"\u0439",jfr:"\u{1D527}",jmath:"\u0237",jopf:"\u{1D55B}",jscr:"\u{1D4BF}",jsercy:"\u0458",jukcy:"\u0454",kappa:"\u03BA",kappav:"\u03F0",kcedil:"\u0137",kcy:"\u043A",kfr:"\u{1D528}",kgreen:"\u0138",khcy:"\u0445",kjcy:"\u045C",kopf:"\u{1D55C}",kscr:"\u{1D4C0}",lAarr:"\u21DA",lArr:"\u21D0",lAtail:"\u291B",lBarr:"\u290E",lE:"\u2266",lEg:"\u2A8B",lHar:"\u2962",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",lambda:"\u03BB",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",laquo:"\xAB",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",lcaron:"\u013E",lcedil:"\u013C",lceil:"\u2308",lcub:"{",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",leftarrow:"\u2190",leftarrowtail:"\u21A2",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",leftthreetimes:"\u22CB",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",lessgtr:"\u2276",lesssim:"\u2272",lfisht:"\u297C",lfloor:"\u230A",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",ljcy:"\u0459",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",llhard:"\u296B",lltri:"\u25FA",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnE:"\u2268",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",lstrok:"\u0142",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltrPar:"\u2996",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",mDDot:"\u223A",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",mcy:"\u043C",mdash:"\u2014",measuredangle:"\u2221",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",mstpos:"\u223E",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nGg:"\u22D9\u0338",nGt:"\u226B\u20D2",nGtv:"\u226B\u0338",nLeftarrow:"\u21CD",nLeftrightarrow:"\u21CE",nLl:"\u22D8\u0338",nLt:"\u226A\u20D2",nLtv:"\u226A\u0338",nRightarrow:"\u21CF",nVDash:"\u22AF",nVdash:"\u22AE",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",neArr:"\u21D7",nearhk:"\u2924",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",ngsim:"\u2275",ngt:"\u226F",ngtr:"\u226F",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",njcy:"\u045A",nlArr:"\u21CD",nlE:"\u2266\u0338",nlarr:"\u219A",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nlsim:"\u2274",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nmid:"\u2224",nopf:"\u{1D55F}",not:"\xAC",notin:"\u2209",notinE:"\u22F9\u0338",notindot:"\u22F5\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvDash:"\u22AD",nvHarr:"\u2904",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwArr:"\u21D6",nwarhk:"\u2923",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",oS:"\u24C8",oacute:"\xF3",oast:"\u229B",ocir:"\u229A",ocirc:"\xF4",ocy:"\u043E",odash:"\u229D",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",oelig:"\u0153",ofcir:"\u29BF",ofr:"\u{1D52C}",ogon:"\u02DB",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",omacr:"\u014D",omega:"\u03C9",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",oopf:"\u{1D560}",opar:"\u29B7",operp:"\u29B9",oplus:"\u2295",or:"\u2228",orarr:"\u21BB",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oscr:"\u2134",oslash:"\xF8",osol:"\u2298",otilde:"\xF5",otimes:"\u2297",otimesas:"\u2A36",ouml:"\xF6",ovbar:"\u233D",par:"\u2225",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",pfr:"\u{1D52D}",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",pointint:"\u2A15",popf:"\u{1D561}",pound:"\xA3",pr:"\u227A",prE:"\u2AB3",prap:"\u2AB7",prcue:"\u227C",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",prime:"\u2032",primes:"\u2119",prnE:"\u2AB5",prnap:"\u2AB9",prnsim:"\u22E8",prod:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",pscr:"\u{1D4C5}",psi:"\u03C8",puncsp:"\u2008",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",qprime:"\u2057",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quot:'"',rAarr:"\u21DB",rArr:"\u21D2",rAtail:"\u291C",rBarr:"\u290F",rHar:"\u2964",race:"\u223D\u0331",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",reg:"\xAE",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",rho:"\u03C1",rhov:"\u03F1",rightarrow:"\u2192",rightarrowtail:"\u21A3",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",rightthreetimes:"\u22CC",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",rsaquo:"\u203A",rscr:"\u{1D4C7}",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",ruluhar:"\u2968",rx:"\u211E",sacute:"\u015B",sbquo:"\u201A",sc:"\u227B",scE:"\u2AB4",scap:"\u2AB8",scaron:"\u0161",sccue:"\u227D",sce:"\u2AB0",scedil:"\u015F",scirc:"\u015D",scnE:"\u2AB6",scnap:"\u2ABA",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",seArr:"\u21D8",searhk:"\u2925",searr:"\u2198",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",shchcy:"\u0449",shcy:"\u0448",shortmid:"\u2223",shortparallel:"\u2225",shy:"\xAD",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",square:"\u25A1",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",subE:"\u2AC5",subdot:"\u2ABD",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",sum:"\u2211",sung:"\u266A",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",sup:"\u2283",supE:"\u2AC6",supdot:"\u2ABE",supdsub:"\u2AD8",supe:"\u2287",supedot:"\u2AC4",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swArr:"\u21D9",swarhk:"\u2926",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",target:"\u2316",tau:"\u03C4",tbrk:"\u23B4",tcaron:"\u0165",tcedil:"\u0163",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",thorn:"\xFE",tilde:"\u02DC",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",tscr:"\u{1D4C9}",tscy:"\u0446",tshcy:"\u045B",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",uArr:"\u21D1",uHar:"\u2963",uacute:"\xFA",uarr:"\u2191",ubrcy:"\u045E",ubreve:"\u016D",ucirc:"\xFB",ucy:"\u0443",udarr:"\u21C5",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",ufr:"\u{1D532}",ugrave:"\xF9",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",umacr:"\u016B",uml:"\xA8",uogon:"\u0173",uopf:"\u{1D566}",uparrow:"\u2191",updownarrow:"\u2195",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",upsi:"\u03C5",upsih:"\u03D2",upsilon:"\u03C5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",uring:"\u016F",urtri:"\u25F9",uscr:"\u{1D4CA}",utdot:"\u22F0",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",uuml:"\xFC",uwangle:"\u29A7",vArr:"\u21D5",vBar:"\u2AE8",vBarv:"\u2AE9",vDash:"\u22A8",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vcy:"\u0432",vdash:"\u22A2",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",vert:"|",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",vzigzag:"\u299A",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",wfr:"\u{1D534}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",yacute:"\xFD",yacy:"\u044F",ycirc:"\u0177",ycy:"\u044B",yen:"\xA5",yfr:"\u{1D536}",yicy:"\u0457",yopf:"\u{1D56A}",yscr:"\u{1D4CE}",yucy:"\u044E",yuml:"\xFF",zacute:"\u017A",zcaron:"\u017E",zcy:"\u0437",zdot:"\u017C",zeetrf:"\u2128",zeta:"\u03B6",zfr:"\u{1D537}",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"},pe={0:65533,128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376};function R0(e){return e.replace(/&(?:[a-zA-Z]+|#[xX][\da-fA-F]+|#\d+);/g,u=>{if(u.charAt(1)==="#"){let i=u.charAt(2),n=i==="X"||i==="x"?parseInt(u.slice(3),16):parseInt(u.slice(2),10);return V0(n)}return I0[u.slice(1,-1)]||u})}function V0(e){return e>=55296&&e<=57343||e>1114111?"\uFFFD":(e in pe&&(e=pe[e]),String.fromCodePoint(e))}function N0(e,u){return e.startPos=e.tokenPos=e.index,e.startColumn=e.colPos=e.column,e.startLine=e.linePos=e.line,e.token=C[e.currentChar]&8192?j0(e,u):xe(e,u,0),e.token}function j0(e,u){let i=e.currentChar,n=r(e),t=e.index;for(;n!==i;)e.index>=e.end&&f(e,14),n=r(e);return n!==i&&f(e,14),e.tokenValue=e.source.slice(t,e.index),r(e),u&512&&(e.tokenRaw=e.source.slice(e.tokenPos,e.index)),134283267}function j2(e,u){if(e.startPos=e.tokenPos=e.index,e.startColumn=e.colPos=e.column,e.startLine=e.linePos=e.line,e.index>=e.end)return e.token=1048576;switch(Ge[e.source.charCodeAt(e.index)]){case 8456258:{r(e),e.currentChar===47?(r(e),e.token=25):e.token=8456258;break}case 2162700:{r(e),e.token=2162700;break}default:{let n=0;for(;e.index2?o-2:0),c=2;c1&&t&32&&e.token&262144&&f(e,58,G[e.token&255]),l}function cu(e,u,i,n,t){let{token:o,tokenPos:l,linePos:c,colPos:s}=e,m=null,b=Du(e,u,i,n,t,l,c,s);return e.token===1077936157?(P(e,u|32768),m=Q(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos),(t&32||(o&2097152)<1)&&(e.token===274549||e.token===8738868&&(o&2097152||(n&4)<1||u&1024))&&L(l,e.line,e.index-3,57,e.token===274549?"of":"in")):(n&16||(o&2097152)>0)&&(e.token&262144)!==262144&&f(e,56,n&16?"const":"destructuring"),v(e,u,l,c,s,{type:"VariableDeclarator",id:b,init:m})}function ct(e,u,i,n,t,o,l){P(e,u);let c=(u&4194304)>0&&U(e,u,209008);q(e,u|32768,67174411),i&&(i=i2(i,1));let s=null,m=null,b=0,h=null,d=e.token===86090||e.token===241739||e.token===86092,y,{token:w,tokenPos:D,linePos:F,colPos:T}=e;if(d?w===241739?(h=X(e,u,0),e.token&2240512?(e.token===8738868?u&1024&&f(e,64):h=v(e,u,D,F,T,{type:"VariableDeclaration",kind:"let",declarations:z2(e,u|134217728,i,8,32)}),e.assignable=1):u&1024?f(e,64):(d=!1,e.assignable=1,h=K(e,u,h,0,0,D,F,T),e.token===274549&&f(e,111))):(P(e,u),h=v(e,u,D,F,T,w===86090?{type:"VariableDeclaration",kind:"var",declarations:z2(e,u|134217728,i,4,32)}:{type:"VariableDeclaration",kind:"const",declarations:z2(e,u|134217728,i,16,32)}),e.assignable=1):w===1074790417?c&&f(e,79):(w&2097152)===2097152?(h=w===2162700?k2(e,u,void 0,1,0,0,2,32,D,F,T):b2(e,u,void 0,1,0,0,2,32,D,F,T),b=e.destructible,u&256&&b&64&&f(e,60),e.assignable=b&16?2:1,h=K(e,u|134217728,h,0,0,e.tokenPos,e.linePos,e.colPos)):h=m2(e,u|134217728,1,0,1,D,F,T),(e.token&262144)===262144){if(e.token===274549){e.assignable&2&&f(e,77,c?"await":"of"),v2(e,h),P(e,u|32768),y=Q(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos),q(e,u|32768,16);let I=p2(e,u,i,n);return v(e,u,t,o,l,{type:"ForOfStatement",left:h,right:y,body:I,await:c})}e.assignable&2&&f(e,77,"in"),v2(e,h),P(e,u|32768),c&&f(e,79),y=o2(e,u,0,1,e.tokenPos,e.linePos,e.colPos),q(e,u|32768,16);let p=p2(e,u,i,n);return v(e,u,t,o,l,{type:"ForInStatement",body:p,left:h,right:y})}c&&f(e,79),d||(b&8&&e.token!==1077936157&&f(e,77,"loop"),h=x(e,u|134217728,0,0,D,F,T,h)),e.token===18&&(h=O2(e,u,0,e.tokenPos,e.linePos,e.colPos,h)),q(e,u|32768,1074790417),e.token!==1074790417&&(s=o2(e,u,0,1,e.tokenPos,e.linePos,e.colPos)),q(e,u|32768,1074790417),e.token!==16&&(m=o2(e,u,0,1,e.tokenPos,e.linePos,e.colPos)),q(e,u|32768,16);let N=p2(e,u,i,n);return v(e,u,t,o,l,{type:"ForStatement",init:h,test:s,update:m,body:N})}function su(e,u,i){return J1(u,e.token)||f(e,114),(e.token&537079808)===537079808&&f(e,115),i&&L2(e,u,i,e.tokenValue,8,0),X(e,u,0)}function st(e,u,i){let n=e.tokenPos,t=e.linePos,o=e.colPos;P(e,u);let l=null,{tokenPos:c,linePos:s,colPos:m}=e,b=[];if(e.token===134283267)l=c2(e,u);else{if(e.token&143360){let h=su(e,u,i);if(b=[v(e,u,c,s,m,{type:"ImportDefaultSpecifier",local:h})],U(e,u,18))switch(e.token){case 8457014:b.push(au(e,u,i));break;case 2162700:du(e,u,i,b);break;default:f(e,104)}}else switch(e.token){case 8457014:b=[au(e,u,i)];break;case 2162700:du(e,u,i,b);break;case 67174411:return hu(e,u,n,t,o);case 67108877:return gu(e,u,n,t,o);default:f(e,28,G[e.token&255])}l=at(e,u)}return s2(e,u|32768),v(e,u,n,t,o,{type:"ImportDeclaration",specifiers:b,source:l})}function au(e,u,i){let{tokenPos:n,linePos:t,colPos:o}=e;return P(e,u),q(e,u,77934),(e.token&134217728)===134217728&&L(n,e.line,e.index,28,G[e.token&255]),v(e,u,n,t,o,{type:"ImportNamespaceSpecifier",local:su(e,u,i)})}function at(e,u){return U(e,u,12404),e.token!==134283267&&f(e,102,"Import"),c2(e,u)}function du(e,u,i,n){for(P(e,u);e.token&143360;){let{token:t,tokenValue:o,tokenPos:l,linePos:c,colPos:s}=e,m=X(e,u,0),b;U(e,u,77934)?((e.token&134217728)===134217728||e.token===18?f(e,103):l1(e,u,16,e.token,0),o=e.tokenValue,b=X(e,u,0)):(l1(e,u,16,t,0),b=m),i&&L2(e,u,i,o,8,0),n.push(v(e,u,l,c,s,{type:"ImportSpecifier",local:b,imported:m})),e.token!==1074790415&&q(e,u,18)}return q(e,u,1074790415),n}function gu(e,u,i,n,t){let o=bu(e,u,v(e,u,i,n,t,{type:"Identifier",name:"import"}),i,n,t);return o=K(e,u,o,0,0,i,n,t),o=x(e,u,0,0,i,n,t,o),X2(e,u,o,i,n,t)}function hu(e,u,i,n,t){let o=ku(e,u,0,i,n,t);return o=K(e,u,o,0,0,i,n,t),X2(e,u,o,i,n,t)}function dt(e,u,i){let n=e.tokenPos,t=e.linePos,o=e.colPos;P(e,u|32768);let l=[],c=null,s=null,m;if(U(e,u|32768,20563)){switch(e.token){case 86106:{c=I2(e,u,i,4,1,1,0,e.tokenPos,e.linePos,e.colPos);break}case 133:case 86096:c=x1(e,u,i,1,e.tokenPos,e.linePos,e.colPos);break;case 209007:let{tokenPos:b,linePos:h,colPos:d}=e;c=X(e,u,0);let{flags:y}=e;(y&1)<1&&(e.token===86106?c=I2(e,u,i,4,1,1,1,b,h,d):e.token===67174411?(c=G1(e,u,c,1,1,0,y,b,h,d),c=K(e,u,c,0,0,b,h,d),c=x(e,u,0,0,b,h,d,c)):e.token&143360&&(i&&(i=c1(e,u,e.tokenValue)),c=X(e,u,0),c=e1(e,u,i,[c],1,b,h,d)));break;default:c=Q(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos),s2(e,u|32768)}return i&&M2(e,"default"),v(e,u,n,t,o,{type:"ExportDefaultDeclaration",declaration:c})}switch(e.token){case 8457014:{P(e,u);let y=null;return U(e,u,77934)&&(i&&M2(e,e.tokenValue),y=X(e,u,0)),q(e,u,12404),e.token!==134283267&&f(e,102,"Export"),s=c2(e,u),s2(e,u|32768),v(e,u,n,t,o,{type:"ExportAllDeclaration",source:s,exported:y})}case 2162700:{P(e,u);let y=[],w=[];for(;e.token&143360;){let{tokenPos:D,tokenValue:F,linePos:T,colPos:N}=e,p=X(e,u,0),I;e.token===77934?(P(e,u),(e.token&134217728)===134217728&&f(e,103),i&&(y.push(e.tokenValue),w.push(F)),I=X(e,u,0)):(i&&(y.push(e.tokenValue),w.push(e.tokenValue)),I=p),l.push(v(e,u,D,T,N,{type:"ExportSpecifier",local:p,exported:I})),e.token!==1074790415&&q(e,u,18)}if(q(e,u,1074790415),U(e,u,12404))e.token!==134283267&&f(e,102,"Export"),s=c2(e,u);else if(i){let D=0,F=y.length;for(;D0)&8738868,b,h;for(e.assignable=2;e.token&8454144&&(b=e.token,h=b&3840,(b&524288&&c&268435456||c&524288&&b&268435456)&&f(e,159),!(h+((b===8457273)<<8)-((m===b)<<12)<=l));)P(e,u|32768),s=v(e,u,n,t,o,{type:b&524288||b&268435456?"LogicalExpression":"BinaryExpression",left:s,right:T2(e,u,i,e.tokenPos,e.linePos,e.colPos,h,b,m2(e,u,0,i,1,e.tokenPos,e.linePos,e.colPos)),operator:G[b&255]});return e.token===1077936157&&f(e,24),s}function gt(e,u,i,n,t,o,l){i||f(e,0);let c=e.token;P(e,u|32768);let s=m2(e,u,0,l,1,e.tokenPos,e.linePos,e.colPos);return e.token===8457273&&f(e,31),u&1024&&c===16863278&&(s.type==="Identifier"?f(e,117):_0(s)&&f(e,123)),e.assignable=2,v(e,u,n,t,o,{type:"UnaryExpression",operator:G[c&255],argument:s,prefix:!0})}function ht(e,u,i,n,t,o,l,c,s,m){let{token:b}=e,h=X(e,u,o),{flags:d}=e;if((d&1)<1){if(e.token===86106)return vu(e,u,1,i,c,s,m);if((e.token&143360)===143360)return n||f(e,0),Pu(e,u,t,c,s,m)}return!l&&e.token===67174411?G1(e,u,h,t,1,0,d,c,s,m):e.token===10?($1(e,u,b,1),l&&f(e,48),h1(e,u,e.tokenValue,h,l,t,0,c,s,m)):h}function mt(e,u,i,n,t,o,l){if(i&&(e.destructible|=256),u&2097152){P(e,u|32768),u&8388608&&f(e,30),n||f(e,24),e.token===22&&f(e,120);let c=null,s=!1;return(e.flags&1)<1&&(s=U(e,u|32768,8457014),(e.token&77824||s)&&(c=Q(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos))),e.assignable=2,v(e,u,t,o,l,{type:"YieldExpression",argument:c,delegate:s})}return u&1024&&f(e,94,"yield"),Q1(e,u,t,o,l)}function bt(e,u,i,n,t,o,l){if(n&&(e.destructible|=128),u&4194304||u&2048&&u&8192){i&&f(e,0),u&8388608&&L(e.index,e.line,e.index,29),P(e,u|32768);let c=m2(e,u,0,0,1,e.tokenPos,e.linePos,e.colPos);return e.token===8457273&&f(e,31),e.assignable=2,v(e,u,t,o,l,{type:"AwaitExpression",argument:c})}return u&2048&&f(e,95),Q1(e,u,t,o,l)}function d1(e,u,i,n,t,o){let{tokenPos:l,linePos:c,colPos:s}=e;q(e,u|32768,2162700);let m=[],b=u;if(e.token!==1074790415){for(;e.token===134283267;){let{index:h,tokenPos:d,tokenValue:y,token:w}=e,D=c2(e,u);eu(e,h,d,y)&&(u|=1024,e.flags&128&&L(e.index,e.line,e.tokenPos,63),e.flags&64&&L(e.index,e.line,e.tokenPos,8)),m.push(z1(e,u,D,w,d,e.linePos,e.colPos))}u&1024&&(t&&((t&537079808)===537079808&&f(e,115),(t&36864)===36864&&f(e,38)),e.flags&512&&f(e,115),e.flags&256&&f(e,114)),u&64&&i&&o!==void 0&&(b&1024)<1&&(u&8192)<1&&E(o)}for(e.flags=(e.flags|512|256|64)^832,e.destructible=(e.destructible|256)^256;e.token!==1074790415;)m.push(G2(e,u,i,4,{}));return q(e,n&24?u|32768:u,1074790415),e.flags&=-193,e.token===1077936157&&f(e,24),v(e,u,l,c,s,{type:"BlockStatement",body:m})}function kt(e,u,i,n,t){switch(P(e,u),e.token){case 67108991:f(e,161);case 67174411:{(u&524288)<1&&f(e,26),u&16384&&f(e,27),e.assignable=2;break}case 69271571:case 67108877:{(u&262144)<1&&f(e,27),u&16384&&f(e,27),e.assignable=1;break}default:f(e,28,"super")}return v(e,u,i,n,t,{type:"Super"})}function m2(e,u,i,n,t,o,l,c){let s=g2(e,u,2,0,i,0,n,t,o,l,c);return K(e,u,s,n,0,o,l,c)}function rt(e,u,i,n,t,o){e.assignable&2&&f(e,52);let{token:l}=e;return P(e,u),e.assignable=2,v(e,u,n,t,o,{type:"UpdateExpression",argument:i,operator:G[l&255],prefix:!1})}function K(e,u,i,n,t,o,l,c){if((e.token&33619968)===33619968&&(e.flags&1)<1)i=rt(e,u,i,o,l,c);else if((e.token&67108864)===67108864){switch(u=(u|134217728)^134217728,e.token){case 67108877:{P(e,(u|1073741824|8192)^8192),e.assignable=1;let s=mu(e,u);i=v(e,u,o,l,c,{type:"MemberExpression",object:i,computed:!1,property:s});break}case 69271571:{let s=!1;(e.flags&2048)===2048&&(s=!0,e.flags=(e.flags|2048)^2048),P(e,u|32768);let{tokenPos:m,linePos:b,colPos:h}=e,d=o2(e,u,n,1,m,b,h);q(e,u,20),e.assignable=1,i=v(e,u,o,l,c,{type:"MemberExpression",object:i,computed:!0,property:d}),s&&(e.flags|=2048);break}case 67174411:{if((e.flags&1024)===1024)return e.flags=(e.flags|1024)^1024,i;let s=!1;(e.flags&2048)===2048&&(s=!0,e.flags=(e.flags|2048)^2048);let m=Z1(e,u,n);e.assignable=2,i=v(e,u,o,l,c,{type:"CallExpression",callee:i,arguments:m}),s&&(e.flags|=2048);break}case 67108991:{P(e,(u|1073741824|8192)^8192),e.flags|=2048,e.assignable=2,i=vt(e,u,i,o,l,c);break}default:(e.flags&2048)===2048&&f(e,160),e.assignable=2,i=v(e,u,o,l,c,{type:"TaggedTemplateExpression",tag:i,quasi:e.token===67174408?Y1(e,u|65536):K1(e,u,e.tokenPos,e.linePos,e.colPos)})}i=K(e,u,i,0,1,o,l,c)}return t===0&&(e.flags&2048)===2048&&(e.flags=(e.flags|2048)^2048,i=v(e,u,o,l,c,{type:"ChainExpression",expression:i})),i}function vt(e,u,i,n,t,o){let l=!1,c;if((e.token===69271571||e.token===67174411)&&(e.flags&2048)===2048&&(l=!0,e.flags=(e.flags|2048)^2048),e.token===69271571){P(e,u|32768);let{tokenPos:s,linePos:m,colPos:b}=e,h=o2(e,u,0,1,s,m,b);q(e,u,20),e.assignable=2,c=v(e,u,n,t,o,{type:"MemberExpression",object:i,computed:!0,optional:!0,property:h})}else if(e.token===67174411){let s=Z1(e,u,0);e.assignable=2,c=v(e,u,n,t,o,{type:"CallExpression",callee:i,arguments:s,optional:!0})}else{(e.token&143360)<1&&f(e,154);let s=X(e,u,0);e.assignable=2,c=v(e,u,n,t,o,{type:"MemberExpression",object:i,computed:!1,optional:!0,property:s})}return l&&(e.flags|=2048),c}function mu(e,u){return(e.token&143360)<1&&e.token!==131&&f(e,154),u&1&&e.token===131?r1(e,u,e.tokenPos,e.linePos,e.colPos):X(e,u,0)}function yt(e,u,i,n,t,o,l){i&&f(e,53),n||f(e,0);let{token:c}=e;P(e,u|32768);let s=m2(e,u,0,0,1,e.tokenPos,e.linePos,e.colPos);return e.assignable&2&&f(e,52),e.assignable=2,v(e,u,t,o,l,{type:"UpdateExpression",argument:s,operator:G[c&255],prefix:!0})}function g2(e,u,i,n,t,o,l,c,s,m,b){if((e.token&143360)===143360){switch(e.token){case 209008:return bt(e,u,n,l,s,m,b);case 241773:return mt(e,u,l,t,s,m,b);case 209007:return ht(e,u,l,c,t,o,n,s,m,b)}let{token:h,tokenValue:d}=e,y=X(e,u|65536,o);return e.token===10?(c||f(e,0),$1(e,u,h,1),h1(e,u,d,y,n,t,0,s,m,b)):(u&16384&&h===537079928&&f(e,126),h===241739&&(u&1024&&f(e,109),i&24&&f(e,97)),e.assignable=u&1024&&(h&537079808)===537079808?2:1,y)}if((e.token&134217728)===134217728)return c2(e,u);switch(e.token){case 33619995:case 33619996:return yt(e,u,n,c,s,m,b);case 16863278:case 16842800:case 16842801:case 25233970:case 25233971:case 16863277:case 16863279:return gt(e,u,c,s,m,b,l);case 86106:return vu(e,u,0,l,s,m,b);case 2162700:return wt(e,u,t?0:1,l,s,m,b);case 69271571:return Dt(e,u,t?0:1,l,s,m,b);case 67174411:return Bt(e,u,t,1,0,s,m,b);case 86021:case 86022:case 86023:return Et(e,u,s,m,b);case 86113:return Ct(e,u);case 65540:return Lt(e,u,s,m,b);case 133:case 86096:return Ot(e,u,l,s,m,b);case 86111:return kt(e,u,s,m,b);case 67174409:return K1(e,u,s,m,b);case 67174408:return Y1(e,u);case 86109:return St(e,u,l,s,m,b);case 134283389:return ru(e,u,s,m,b);case 131:return r1(e,u,s,m,b);case 86108:return At(e,u,n,l,s,m,b);case 8456258:if(u&16)return ee(e,u,1,s,m,b);default:if(J1(u,e.token))return Q1(e,u,s,m,b);f(e,28,G[e.token&255])}}function At(e,u,i,n,t,o,l){let c=X(e,u,0);return e.token===67108877?bu(e,u,c,t,o,l):(i&&f(e,137),c=ku(e,u,n,t,o,l),e.assignable=2,K(e,u,c,n,0,t,o,l))}function bu(e,u,i,n,t,o){return u&2048||f(e,163),P(e,u),e.token!==143495&&e.tokenValue!=="meta"&&f(e,28,G[e.token&255]),e.assignable=2,v(e,u,n,t,o,{type:"MetaProperty",meta:i,property:X(e,u,0)})}function ku(e,u,i,n,t,o){q(e,u|32768,67174411),e.token===14&&f(e,138);let l=Q(e,u,1,0,i,e.tokenPos,e.linePos,e.colPos);return q(e,u,16),v(e,u,n,t,o,{type:"ImportExpression",source:l})}function ru(e,u,i,n,t){let{tokenRaw:o,tokenValue:l}=e;return P(e,u),e.assignable=2,v(e,u,i,n,t,u&512?{type:"Literal",value:l,bigint:o.slice(0,-1),raw:o}:{type:"Literal",value:l,bigint:o.slice(0,-1)})}function K1(e,u,i,n,t){e.assignable=2;let{tokenValue:o,tokenRaw:l,tokenPos:c,linePos:s,colPos:m}=e;q(e,u,67174409);let b=[g1(e,u,o,l,c,s,m,!0)];return v(e,u,i,n,t,{type:"TemplateLiteral",expressions:[],quasis:b})}function Y1(e,u){u=(u|134217728)^134217728;let{tokenValue:i,tokenRaw:n,tokenPos:t,linePos:o,colPos:l}=e;q(e,u|32768,67174408);let c=[g1(e,u,i,n,t,o,l,!1)],s=[o2(e,u,0,1,e.tokenPos,e.linePos,e.colPos)];for(e.token!==1074790415&&f(e,80);(e.token=F0(e,u))!==67174409;){let{tokenValue:m,tokenRaw:b,tokenPos:h,linePos:d,colPos:y}=e;q(e,u|32768,67174408),c.push(g1(e,u,m,b,h,d,y,!1)),s.push(o2(e,u,0,1,e.tokenPos,e.linePos,e.colPos)),e.token!==1074790415&&f(e,80)}{let{tokenValue:m,tokenRaw:b,tokenPos:h,linePos:d,colPos:y}=e;q(e,u,67174409),c.push(g1(e,u,m,b,h,d,y,!0))}return v(e,u,t,o,l,{type:"TemplateLiteral",expressions:s,quasis:c})}function g1(e,u,i,n,t,o,l,c){let s=v(e,u,t,o,l,{type:"TemplateElement",value:{cooked:i,raw:n},tail:c}),m=c?1:2;return u&2&&(s.start+=1,s.range[0]+=1,s.end-=m,s.range[1]-=m),u&4&&(s.loc.start.column+=1,s.loc.end.column-=m),s}function Pt(e,u,i,n,t){u=(u|134217728)^134217728,q(e,u|32768,14);let o=Q(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos);return e.assignable=1,v(e,u,i,n,t,{type:"SpreadElement",argument:o})}function Z1(e,u,i){P(e,u|32768);let n=[];if(e.token===16)return P(e,u),n;for(;e.token!==16&&(e.token===14?n.push(Pt(e,u,e.tokenPos,e.linePos,e.colPos)):n.push(Q(e,u,1,0,i,e.tokenPos,e.linePos,e.colPos)),!(e.token!==18||(P(e,u|32768),e.token===16))););return q(e,u,16),n}function X(e,u,i){let{tokenValue:n,tokenPos:t,linePos:o,colPos:l}=e;return P(e,u),v(e,u,t,o,l,u&268435456?{type:"Identifier",name:n,pattern:i===1}:{type:"Identifier",name:n})}function c2(e,u){let{tokenValue:i,tokenRaw:n,tokenPos:t,linePos:o,colPos:l}=e;return e.token===134283389?ru(e,u,t,o,l):(P(e,u),e.assignable=2,v(e,u,t,o,l,u&512?{type:"Literal",value:i,raw:n}:{type:"Literal",value:i}))}function Et(e,u,i,n,t){let o=G[e.token&255],l=e.token===86023?null:o==="true";return P(e,u),e.assignable=2,v(e,u,i,n,t,u&512?{type:"Literal",value:l,raw:o}:{type:"Literal",value:l})}function Ct(e,u){let{tokenPos:i,linePos:n,colPos:t}=e;return P(e,u),e.assignable=2,v(e,u,i,n,t,{type:"ThisExpression"})}function I2(e,u,i,n,t,o,l,c,s,m){P(e,u|32768);let b=t?M1(e,u,8457014):0,h=null,d,y=i?_2():void 0;if(e.token===67174411)(o&1)<1&&f(e,37,"Function");else{let F=n&4&&((u&8192)<1||(u&2048)<1)?4:64;uu(e,u|(u&3072)<<11,e.token),i&&(F&4?tu(e,u,i,e.tokenValue,F):L2(e,u,i,e.tokenValue,F,n),y=i2(y,256),o&&o&2&&M2(e,e.tokenValue)),d=e.token,e.token&143360?h=X(e,u,0):f(e,28,G[e.token&255])}u=(u|32243712)^32243712|67108864|l*2+b<<21|(b?0:1073741824),i&&(y=i2(y,512));let w=Au(e,u|8388608,y,0,1),D=d1(e,(u|8192|4096|131072)^143360,i?i2(y,128):y,8,d,i?y.scopeError:void 0);return v(e,u,c,s,m,{type:"FunctionDeclaration",id:h,params:w,body:D,async:l===1,generator:b===1})}function vu(e,u,i,n,t,o,l){P(e,u|32768);let c=M1(e,u,8457014),s=i*2+c<<21,m=null,b,h=u&64?_2():void 0;(e.token&176128)>0&&(uu(e,(u|32243712)^32243712|s,e.token),h&&(h=i2(h,256)),b=e.token,m=X(e,u,0)),u=(u|32243712)^32243712|67108864|s|(c?0:1073741824),h&&(h=i2(h,512));let d=Au(e,u|8388608,h,n,1),y=d1(e,u&-134377473,h&&i2(h,128),0,b,void 0);return e.assignable=2,v(e,u,t,o,l,{type:"FunctionExpression",id:m,params:d,body:y,async:i===1,generator:c===1})}function Dt(e,u,i,n,t,o,l){let c=b2(e,u,void 0,i,n,0,2,0,t,o,l);return u&256&&e.destructible&64&&f(e,60),e.destructible&8&&f(e,59),c}function b2(e,u,i,n,t,o,l,c,s,m,b){P(e,u|32768);let h=[],d=0;for(u=(u|134217728)^134217728;e.token!==20;)if(U(e,u|32768,18))h.push(null);else{let w,{token:D,tokenPos:F,linePos:T,colPos:N,tokenValue:p}=e;if(D&143360)if(w=g2(e,u,l,0,1,0,t,1,F,T,N),e.token===1077936157){e.assignable&2&&f(e,24),P(e,u|32768),i&&B2(e,u,i,p,l,c);let I=Q(e,u,1,1,t,e.tokenPos,e.linePos,e.colPos);w=v(e,u,F,T,N,o?{type:"AssignmentPattern",left:w,right:I}:{type:"AssignmentExpression",operator:"=",left:w,right:I}),d|=e.destructible&256?256:0|e.destructible&128?128:0}else e.token===18||e.token===20?(e.assignable&2?d|=16:i&&B2(e,u,i,p,l,c),d|=e.destructible&256?256:0|e.destructible&128?128:0):(d|=l&1?32:(l&2)<1?16:0,w=K(e,u,w,t,0,F,T,N),e.token!==18&&e.token!==20?(e.token!==1077936157&&(d|=16),w=x(e,u,t,o,F,T,N,w)):e.token!==1077936157&&(d|=e.assignable&2?16:32));else D&2097152?(w=e.token===2162700?k2(e,u,i,0,t,o,l,c,F,T,N):b2(e,u,i,0,t,o,l,c,F,T,N),d|=e.destructible,e.assignable=e.destructible&16?2:1,e.token===18||e.token===20?e.assignable&2&&(d|=16):e.destructible&8?f(e,68):(w=K(e,u,w,t,0,F,T,N),d=e.assignable&2?16:0,e.token!==18&&e.token!==20?w=x(e,u,t,o,F,T,N,w):e.token!==1077936157&&(d|=e.assignable&2?16:32))):D===14?(w=W2(e,u,i,20,l,c,0,t,o,F,T,N),d|=e.destructible,e.token!==18&&e.token!==20&&f(e,28,G[e.token&255])):(w=m2(e,u,1,0,1,F,T,N),e.token!==18&&e.token!==20?(w=x(e,u,t,o,F,T,N,w),(l&3)<1&&D===67174411&&(d|=16)):e.assignable&2?d|=16:D===67174411&&(d|=e.assignable&1&&l&3?32:16));if(h.push(w),U(e,u|32768,18)){if(e.token===20)break}else break}q(e,u,20);let y=v(e,u,s,m,b,{type:o?"ArrayPattern":"ArrayExpression",elements:h});return!n&&e.token&4194304?yu(e,u,d,t,o,s,m,b,y):(e.destructible=d,y)}function yu(e,u,i,n,t,o,l,c,s){e.token!==1077936157&&f(e,24),P(e,u|32768),i&16&&f(e,24),t||v2(e,s);let{tokenPos:m,linePos:b,colPos:h}=e,d=Q(e,u,1,1,n,m,b,h);return e.destructible=(i|64|8)^72|(e.destructible&128?128:0)|(e.destructible&256?256:0),v(e,u,o,l,c,t?{type:"AssignmentPattern",left:s,right:d}:{type:"AssignmentExpression",left:s,operator:"=",right:d})}function W2(e,u,i,n,t,o,l,c,s,m,b,h){P(e,u|32768);let d=null,y=0,{token:w,tokenValue:D,tokenPos:F,linePos:T,colPos:N}=e;if(w&143360)e.assignable=1,d=g2(e,u,t,0,1,0,c,1,F,T,N),w=e.token,d=K(e,u,d,c,0,F,T,N),e.token!==18&&e.token!==n&&(e.assignable&2&&e.token===1077936157&&f(e,68),y|=16,d=x(e,u,c,s,F,T,N,d)),e.assignable&2?y|=16:w===n||w===18?i&&B2(e,u,i,D,t,o):y|=32,y|=e.destructible&128?128:0;else if(w===n)f(e,39);else if(w&2097152)d=e.token===2162700?k2(e,u,i,1,c,s,t,o,F,T,N):b2(e,u,i,1,c,s,t,o,F,T,N),w=e.token,w!==1077936157&&w!==n&&w!==18?(e.destructible&8&&f(e,68),d=K(e,u,d,c,0,F,T,N),y|=e.assignable&2?16:0,(e.token&4194304)===4194304?(e.token!==1077936157&&(y|=16),d=x(e,u,c,s,F,T,N,d)):((e.token&8454144)===8454144&&(d=T2(e,u,1,F,T,N,4,w,d)),U(e,u|32768,22)&&(d=U2(e,u,d,F,T,N)),y|=e.assignable&2?16:32)):y|=n===1074790415&&w!==1077936157?16:e.destructible;else{y|=32,d=m2(e,u,1,c,1,e.tokenPos,e.linePos,e.colPos);let{token:p,tokenPos:I,linePos:Z,colPos:A}=e;return p===1077936157&&p!==n&&p!==18?(e.assignable&2&&f(e,24),d=x(e,u,c,s,I,Z,A,d),y|=16):(p===18?y|=16:p!==n&&(d=x(e,u,c,s,I,Z,A,d)),y|=e.assignable&1?32:16),e.destructible=y,e.token!==n&&e.token!==18&&f(e,155),v(e,u,m,b,h,{type:s?"RestElement":"SpreadElement",argument:d})}if(e.token!==n)if(t&1&&(y|=l?16:32),U(e,u|32768,1077936157)){y&16&&f(e,24),v2(e,d);let p=Q(e,u,1,1,c,e.tokenPos,e.linePos,e.colPos);d=v(e,u,F,T,N,s?{type:"AssignmentPattern",left:d,right:p}:{type:"AssignmentExpression",left:d,operator:"=",right:p}),y=16}else y|=16;return e.destructible=y,v(e,u,m,b,h,{type:s?"RestElement":"SpreadElement",argument:d})}function y2(e,u,i,n,t,o,l){let c=(i&64)<1?31981568:14680064;u=(u|c)^c|(i&88)<<18|100925440;let s=u&64?i2(_2(),512):void 0,m=qt(e,u|8388608,s,i,1,n);s&&(s=i2(s,128));let b=d1(e,u&-134230017,s,0,void 0,void 0);return v(e,u,t,o,l,{type:"FunctionExpression",params:m,body:b,async:(i&16)>0,generator:(i&8)>0,id:null})}function wt(e,u,i,n,t,o,l){let c=k2(e,u,void 0,i,n,0,2,0,t,o,l);return u&256&&e.destructible&64&&f(e,60),e.destructible&8&&f(e,59),c}function k2(e,u,i,n,t,o,l,c,s,m,b){P(e,u);let h=[],d=0,y=0;for(u=(u|134217728)^134217728;e.token!==1074790415;){let{token:D,tokenValue:F,linePos:T,colPos:N,tokenPos:p}=e;if(D===14)h.push(W2(e,u,i,1074790415,l,c,0,t,o,p,T,N));else{let I=0,Z=null,A,A2=e.token;if(e.token&143360||e.token===121)if(Z=X(e,u,0),e.token===18||e.token===1074790415||e.token===1077936157)if(I|=4,u&1024&&(D&537079808)===537079808?d|=16:l1(e,u,l,D,0),i&&B2(e,u,i,F,l,c),U(e,u|32768,1077936157)){d|=8;let V=Q(e,u,1,1,t,e.tokenPos,e.linePos,e.colPos);d|=e.destructible&256?256:0|e.destructible&128?128:0,A=v(e,u,p,T,N,{type:"AssignmentPattern",left:u&-2147483648?Object.assign({},Z):Z,right:V})}else d|=(D===209008?128:0)|(D===121?16:0),A=u&-2147483648?Object.assign({},Z):Z;else if(U(e,u|32768,21)){let{tokenPos:V,linePos:_,colPos:j}=e;if(F==="__proto__"&&y++,e.token&143360){let J2=e.token,Y2=e.tokenValue;d|=A2===121?16:0,A=g2(e,u,l,0,1,0,t,1,V,_,j);let{token:D2}=e;A=K(e,u,A,t,0,V,_,j),e.token===18||e.token===1074790415?D2===1077936157||D2===1074790415||D2===18?(d|=e.destructible&128?128:0,e.assignable&2?d|=16:i&&(J2&143360)===143360&&B2(e,u,i,Y2,l,c)):d|=e.assignable&1?32:16:(e.token&4194304)===4194304?(e.assignable&2?d|=16:D2!==1077936157?d|=32:i&&B2(e,u,i,Y2,l,c),A=x(e,u,t,o,V,_,j,A)):(d|=16,(e.token&8454144)===8454144&&(A=T2(e,u,1,V,_,j,4,D2,A)),U(e,u|32768,22)&&(A=U2(e,u,A,V,_,j)))}else(e.token&2097152)===2097152?(A=e.token===69271571?b2(e,u,i,0,t,o,l,c,V,_,j):k2(e,u,i,0,t,o,l,c,V,_,j),d=e.destructible,e.assignable=d&16?2:1,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):e.destructible&8?f(e,68):(A=K(e,u,A,t,0,V,_,j),d=e.assignable&2?16:0,(e.token&4194304)===4194304?A=a1(e,u,t,o,V,_,j,A):((e.token&8454144)===8454144&&(A=T2(e,u,1,V,_,j,4,D,A)),U(e,u|32768,22)&&(A=U2(e,u,A,V,_,j)),d|=e.assignable&2?16:32))):(A=m2(e,u,1,t,1,V,_,j),d|=e.assignable&1?32:16,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):(A=K(e,u,A,t,0,V,_,j),d=e.assignable&2?16:0,e.token!==18&&D!==1074790415&&(e.token!==1077936157&&(d|=16),A=x(e,u,t,o,V,_,j,A))))}else e.token===69271571?(d|=16,D===209007&&(I|=16),I|=(D===12402?256:D===12403?512:1)|2,Z=K2(e,u,t),d|=e.assignable,A=y2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):e.token&143360?(d|=16,D===121&&f(e,92),D===209007&&(e.flags&1&&f(e,128),I|=16),Z=X(e,u,0),I|=D===12402?256:D===12403?512:1,A=y2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):e.token===67174411?(d|=16,I|=1,A=y2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):e.token===8457014?(d|=16,D===12402||D===12403?f(e,40):D===143483&&f(e,92),P(e,u),I|=9|(D===209007?16:0),e.token&143360?Z=X(e,u,0):(e.token&134217728)===134217728?Z=c2(e,u):e.token===69271571?(I|=2,Z=K2(e,u,t),d|=e.assignable):f(e,28,G[e.token&255]),A=y2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):(e.token&134217728)===134217728?(D===209007&&(I|=16),I|=D===12402?256:D===12403?512:1,d|=16,Z=c2(e,u),A=y2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):f(e,129);else if((e.token&134217728)===134217728)if(Z=c2(e,u),e.token===21){q(e,u|32768,21);let{tokenPos:V,linePos:_,colPos:j}=e;if(F==="__proto__"&&y++,e.token&143360){A=g2(e,u,l,0,1,0,t,1,V,_,j);let{token:J2,tokenValue:Y2}=e;A=K(e,u,A,t,0,V,_,j),e.token===18||e.token===1074790415?J2===1077936157||J2===1074790415||J2===18?e.assignable&2?d|=16:i&&B2(e,u,i,Y2,l,c):d|=e.assignable&1?32:16:e.token===1077936157?(e.assignable&2&&(d|=16),A=x(e,u,t,o,V,_,j,A)):(d|=16,A=x(e,u,t,o,V,_,j,A))}else(e.token&2097152)===2097152?(A=e.token===69271571?b2(e,u,i,0,t,o,l,c,V,_,j):k2(e,u,i,0,t,o,l,c,V,_,j),d=e.destructible,e.assignable=d&16?2:1,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):(e.destructible&8)!==8&&(A=K(e,u,A,t,0,V,_,j),d=e.assignable&2?16:0,(e.token&4194304)===4194304?A=a1(e,u,t,o,V,_,j,A):((e.token&8454144)===8454144&&(A=T2(e,u,1,V,_,j,4,D,A)),U(e,u|32768,22)&&(A=U2(e,u,A,V,_,j)),d|=e.assignable&2?16:32))):(A=m2(e,u,1,0,1,V,_,j),d|=e.assignable&1?32:16,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):(A=K(e,u,A,t,0,V,_,j),d=e.assignable&1?0:16,e.token!==18&&e.token!==1074790415&&(e.token!==1077936157&&(d|=16),A=x(e,u,t,o,V,_,j,A))))}else e.token===67174411?(I|=1,A=y2(e,u,I,t,e.tokenPos,e.linePos,e.colPos),d=e.assignable|16):f(e,130);else if(e.token===69271571)if(Z=K2(e,u,t),d|=e.destructible&256?256:0,I|=2,e.token===21){P(e,u|32768);let{tokenPos:V,linePos:_,colPos:j,tokenValue:J2,token:Y2}=e;if(e.token&143360){A=g2(e,u,l,0,1,0,t,1,V,_,j);let{token:D2}=e;A=K(e,u,A,t,0,V,_,j),(e.token&4194304)===4194304?(d|=e.assignable&2?16:D2===1077936157?0:32,A=a1(e,u,t,o,V,_,j,A)):e.token===18||e.token===1074790415?D2===1077936157||D2===1074790415||D2===18?e.assignable&2?d|=16:i&&(Y2&143360)===143360&&B2(e,u,i,J2,l,c):d|=e.assignable&1?32:16:(d|=16,A=x(e,u,t,o,V,_,j,A))}else(e.token&2097152)===2097152?(A=e.token===69271571?b2(e,u,i,0,t,o,l,c,V,_,j):k2(e,u,i,0,t,o,l,c,V,_,j),d=e.destructible,e.assignable=d&16?2:1,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):d&8?f(e,59):(A=K(e,u,A,t,0,V,_,j),d=e.assignable&2?d|16:0,(e.token&4194304)===4194304?(e.token!==1077936157&&(d|=16),A=a1(e,u,t,o,V,_,j,A)):((e.token&8454144)===8454144&&(A=T2(e,u,1,V,_,j,4,D,A)),U(e,u|32768,22)&&(A=U2(e,u,A,V,_,j)),d|=e.assignable&2?16:32))):(A=m2(e,u,1,0,1,V,_,j),d|=e.assignable&1?32:16,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):(A=K(e,u,A,t,0,V,_,j),d=e.assignable&1?0:16,e.token!==18&&e.token!==1074790415&&(e.token!==1077936157&&(d|=16),A=x(e,u,t,o,V,_,j,A))))}else e.token===67174411?(I|=1,A=y2(e,u,I,t,e.tokenPos,T,N),d=16):f(e,41);else if(D===8457014)if(q(e,u|32768,8457014),I|=8,e.token&143360){let{token:V,line:_,index:j}=e;Z=X(e,u,0),I|=1,e.token===67174411?(d|=16,A=y2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):L(j,_,j,V===209007?43:V===12402||e.token===12403?42:44,G[V&255])}else(e.token&134217728)===134217728?(d|=16,Z=c2(e,u),I|=1,A=y2(e,u,I,t,p,T,N)):e.token===69271571?(d|=16,I|=3,Z=K2(e,u,t),A=y2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):f(e,122);else f(e,28,G[D&255]);d|=e.destructible&128?128:0,e.destructible=d,h.push(v(e,u,p,T,N,{type:"Property",key:Z,value:A,kind:I&768?I&512?"set":"get":"init",computed:(I&2)>0,method:(I&1)>0,shorthand:(I&4)>0}))}if(d|=e.destructible,e.token!==18)break;P(e,u)}q(e,u,1074790415),y>1&&(d|=64);let w=v(e,u,s,m,b,{type:o?"ObjectPattern":"ObjectExpression",properties:h});return!n&&e.token&4194304?yu(e,u,d,t,o,s,m,b,w):(e.destructible=d,w)}function qt(e,u,i,n,t,o){q(e,u,67174411);let l=[];if(e.flags=(e.flags|128)^128,e.token===16)return n&512&&f(e,35,"Setter","one",""),P(e,u),l;n&256&&f(e,35,"Getter","no","s"),n&512&&e.token===14&&f(e,36),u=(u|134217728)^134217728;let c=0,s=0;for(;e.token!==18;){let m=null,{tokenPos:b,linePos:h,colPos:d}=e;if(e.token&143360?((u&1024)<1&&((e.token&36864)===36864&&(e.flags|=256),(e.token&537079808)===537079808&&(e.flags|=512)),m=p1(e,u,i,n|1,0,b,h,d)):(e.token===2162700?m=k2(e,u,i,1,o,1,t,0,b,h,d):e.token===69271571?m=b2(e,u,i,1,o,1,t,0,b,h,d):e.token===14&&(m=W2(e,u,i,16,t,0,0,o,1,b,h,d)),s=1,e.destructible&48&&f(e,47)),e.token===1077936157){P(e,u|32768),s=1;let y=Q(e,u,1,1,0,e.tokenPos,e.linePos,e.colPos);m=v(e,u,b,h,d,{type:"AssignmentPattern",left:m,right:y})}if(c++,l.push(m),!U(e,u,18)||e.token===16)break}return n&512&&c!==1&&f(e,35,"Setter","one",""),i&&i.scopeError!==void 0&&E(i.scopeError),s&&(e.flags|=128),q(e,u,16),l}function K2(e,u,i){P(e,u|32768);let n=Q(e,(u|134217728)^134217728,1,0,i,e.tokenPos,e.linePos,e.colPos);return q(e,u,20),n}function Bt(e,u,i,n,t,o,l,c){e.flags=(e.flags|128)^128;let{tokenPos:s,linePos:m,colPos:b}=e;P(e,u|32768|1073741824);let h=u&64?i2(_2(),1024):void 0;if(u=(u|134217728)^134217728,U(e,u,16))return m1(e,u,h,[],i,0,o,l,c);let d=0;e.destructible&=-385;let y,w=[],D=0,F=0,{tokenPos:T,linePos:N,colPos:p}=e;for(e.assignable=1;e.token!==16;){let{token:I,tokenPos:Z,linePos:A,colPos:A2}=e;if(I&143360)h&&L2(e,u,h,e.tokenValue,1,0),y=g2(e,u,n,0,1,0,1,1,Z,A,A2),e.token===16||e.token===18?e.assignable&2?(d|=16,F=1):((I&537079808)===537079808||(I&36864)===36864)&&(F=1):(e.token===1077936157?F=1:d|=16,y=K(e,u,y,1,0,Z,A,A2),e.token!==16&&e.token!==18&&(y=x(e,u,1,0,Z,A,A2,y)));else if((I&2097152)===2097152)y=I===2162700?k2(e,u|1073741824,h,0,1,0,n,t,Z,A,A2):b2(e,u|1073741824,h,0,1,0,n,t,Z,A,A2),d|=e.destructible,F=1,e.assignable=2,e.token!==16&&e.token!==18&&(d&8&&f(e,118),y=K(e,u,y,0,0,Z,A,A2),d|=16,e.token!==16&&e.token!==18&&(y=x(e,u,0,0,Z,A,A2,y)));else if(I===14){y=W2(e,u,h,16,n,t,0,1,0,Z,A,A2),e.destructible&16&&f(e,71),F=1,D&&(e.token===16||e.token===18)&&w.push(y),d|=8;break}else{if(d|=16,y=Q(e,u,1,0,1,Z,A,A2),D&&(e.token===16||e.token===18)&&w.push(y),e.token===18&&(D||(D=1,w=[y])),D){for(;U(e,u|32768,18);)w.push(Q(e,u,1,0,1,e.tokenPos,e.linePos,e.colPos));e.assignable=2,y=v(e,u,T,N,p,{type:"SequenceExpression",expressions:w})}return q(e,u,16),e.destructible=d,y}if(D&&(e.token===16||e.token===18)&&w.push(y),!U(e,u|32768,18))break;if(D||(D=1,w=[y]),e.token===16){d|=8;break}}return D&&(e.assignable=2,y=v(e,u,T,N,p,{type:"SequenceExpression",expressions:w})),q(e,u,16),d&16&&d&8&&f(e,145),d|=e.destructible&256?256:0|e.destructible&128?128:0,e.token===10?(d&48&&f(e,46),u&4196352&&d&128&&f(e,29),u&2098176&&d&256&&f(e,30),F&&(e.flags|=128),m1(e,u,h,D?w:[y],i,0,o,l,c)):(d&8&&f(e,139),e.destructible=(e.destructible|256)^256|d,u&128?v(e,u,s,m,b,{type:"ParenthesizedExpression",expression:y}):y)}function Q1(e,u,i,n,t){let{tokenValue:o}=e,l=X(e,u,0);if(e.assignable=1,e.token===10){let c;return u&64&&(c=c1(e,u,o)),e.flags=(e.flags|128)^128,e1(e,u,c,[l],0,i,n,t)}return l}function h1(e,u,i,n,t,o,l,c,s,m){o||f(e,54),t&&f(e,48),e.flags&=-129;let b=u&64?c1(e,u,i):void 0;return e1(e,u,b,[n],l,c,s,m)}function m1(e,u,i,n,t,o,l,c,s){t||f(e,54);for(let m=0;m0&&e.tokenValue==="constructor"&&f(e,106),e.token===1074790415&&f(e,105),U(e,u,1074790417)){d>0&&f(e,116);continue}b.push(Cu(e,u,n,i,t,h,0,l,e.tokenPos,e.linePos,e.colPos))}return q(e,o&8?u|32768:u,1074790415),v(e,u,c,s,m,{type:"ClassBody",body:b})}function Cu(e,u,i,n,t,o,l,c,s,m,b){let h=l?32:0,d=null,{token:y,tokenPos:w,linePos:D,colPos:F}=e;if(y&176128)switch(d=X(e,u,0),y){case 36972:if(!l&&e.token!==67174411)return Cu(e,u,i,n,t,o,1,c,s,m,b);break;case 209007:if(e.token!==67174411&&(e.flags&1)<1){if(u&1&&(e.token&1073741824)===1073741824)return v1(e,u,d,h,o,w,D,F);h|=16|(M1(e,u,8457014)?8:0)}break;case 12402:if(e.token!==67174411){if(u&1&&(e.token&1073741824)===1073741824)return v1(e,u,d,h,o,w,D,F);h|=256}break;case 12403:if(e.token!==67174411){if(u&1&&(e.token&1073741824)===1073741824)return v1(e,u,d,h,o,w,D,F);h|=512}break}else y===69271571?(h|=2,d=K2(e,n,c)):(y&134217728)===134217728?d=c2(e,u):y===8457014?(h|=8,P(e,u)):u&1&&e.token===131?(h|=4096,d=r1(e,u|16384,w,D,F)):u&1&&(e.token&1073741824)===1073741824?h|=128:y===122?(d=X(e,u,0),e.token!==67174411&&f(e,28,G[e.token&255])):f(e,28,G[e.token&255]);if(h&792&&(e.token&143360?d=X(e,u,0):(e.token&134217728)===134217728?d=c2(e,u):e.token===69271571?(h|=2,d=K2(e,u,0)):e.token===122?d=X(e,u,0):u&1&&e.token===131?(h|=4096,d=r1(e,u,w,D,F)):f(e,131)),(h&2)<1&&(e.tokenValue==="constructor"?((e.token&1073741824)===1073741824?f(e,125):(h&32)<1&&e.token===67174411&&(h&920?f(e,50,"accessor"):(u&524288)<1&&(e.flags&32?f(e,51):e.flags|=32)),h|=64):(h&4096)<1&&h&824&&e.tokenValue==="prototype"&&f(e,49)),u&1&&e.token!==67174411)return v1(e,u,d,h,o,w,D,F);let T=y2(e,u,h,c,e.tokenPos,e.linePos,e.colPos);return v(e,u,s,m,b,u&1?{type:"MethodDefinition",kind:(h&32)<1&&h&64?"constructor":h&256?"get":h&512?"set":"method",static:(h&32)>0,computed:(h&2)>0,key:d,decorators:o,value:T}:{type:"MethodDefinition",kind:(h&32)<1&&h&64?"constructor":h&256?"get":h&512?"set":"method",static:(h&32)>0,computed:(h&2)>0,key:d,value:T})}function r1(e,u,i,n,t){P(e,u);let{tokenValue:o}=e;return o==="constructor"&&f(e,124),P(e,u),v(e,u,i,n,t,{type:"PrivateIdentifier",name:o})}function v1(e,u,i,n,t,o,l,c){let s=null;if(n&8&&f(e,0),e.token===1077936157){P(e,u|32768);let{tokenPos:m,linePos:b,colPos:h}=e;e.token===537079928&&f(e,115),s=g2(e,u|16384,2,0,1,0,0,1,m,b,h),(e.token&1073741824)!==1073741824&&(s=K(e,u|16384,s,0,0,m,b,h),s=x(e,u|16384,0,0,m,b,h,s),e.token===18&&(s=O2(e,u,0,o,l,c,s)))}return v(e,u,o,l,c,{type:"PropertyDefinition",key:i,value:s,static:(n&32)>0,computed:(n&2)>0,decorators:t})}function Du(e,u,i,n,t,o,l,c){if(e.token&143360)return p1(e,u,i,n,t,o,l,c);(e.token&2097152)!==2097152&&f(e,28,G[e.token&255]);let s=e.token===69271571?b2(e,u,i,1,0,1,n,t,o,l,c):k2(e,u,i,1,0,1,n,t,o,l,c);return e.destructible&16&&f(e,47),e.destructible&32&&f(e,47),s}function p1(e,u,i,n,t,o,l,c){let{tokenValue:s,token:m}=e;return u&1024&&((m&537079808)===537079808?f(e,115):(m&36864)===36864&&f(e,114)),(m&20480)===20480&&f(e,99),u&2099200&&m===241773&&f(e,30),m===241739&&n&24&&f(e,97),u&4196352&&m===209008&&f(e,95),P(e,u),i&&B2(e,u,i,s,n,t),v(e,u,o,l,c,{type:"Identifier",name:s})}function ee(e,u,i,n,t,o){if(P(e,u),e.token===8456259)return v(e,u,n,t,o,{type:"JSXFragment",openingFragment:It(e,u,n,t,o),children:wu(e,u),closingFragment:Vt(e,u,i,e.tokenPos,e.linePos,e.colPos)});let l=null,c=[],s=_t(e,u,i,n,t,o);if(!s.selfClosing){c=wu(e,u),l=Rt(e,u,i,e.tokenPos,e.linePos,e.colPos);let m=f1(l.name);f1(s.name)!==m&&f(e,149,m)}return v(e,u,n,t,o,{type:"JSXElement",children:c,openingElement:s,closingElement:l})}function It(e,u,i,n,t){return j2(e,u),v(e,u,i,n,t,{type:"JSXOpeningFragment"})}function Rt(e,u,i,n,t,o){q(e,u,25);let l=qu(e,u,e.tokenPos,e.linePos,e.colPos);return i?q(e,u,8456259):e.token=j2(e,u),v(e,u,n,t,o,{type:"JSXClosingElement",name:l})}function Vt(e,u,i,n,t,o){return q(e,u,25),q(e,u,8456259),v(e,u,n,t,o,{type:"JSXClosingFragment"})}function wu(e,u){let i=[];for(;e.token!==25;)e.index=e.tokenPos=e.startPos,e.column=e.colPos=e.startColumn,e.line=e.linePos=e.startLine,j2(e,u),i.push(Nt(e,u,e.tokenPos,e.linePos,e.colPos));return i}function Nt(e,u,i,n,t){if(e.token===138)return jt(e,u,i,n,t);if(e.token===2162700)return Su(e,u,0,0,i,n,t);if(e.token===8456258)return ee(e,u,0,i,n,t);f(e,0)}function jt(e,u,i,n,t){j2(e,u);let o={type:"JSXText",value:e.tokenValue};return u&512&&(o.raw=e.tokenRaw),v(e,u,i,n,t,o)}function _t(e,u,i,n,t,o){(e.token&143360)!==143360&&(e.token&4096)!==4096&&f(e,0);let l=qu(e,u,e.tokenPos,e.linePos,e.colPos),c=Ut(e,u),s=e.token===8457016;return e.token===8456259?j2(e,u):(q(e,u,8457016),i?q(e,u,8456259):j2(e,u)),v(e,u,n,t,o,{type:"JSXOpeningElement",name:l,attributes:c,selfClosing:s})}function qu(e,u,i,n,t){_1(e);let o=y1(e,u,i,n,t);if(e.token===21)return Bu(e,u,o,i,n,t);for(;U(e,u,67108877);)_1(e),o=Mt(e,u,o,i,n,t);return o}function Mt(e,u,i,n,t,o){let l=y1(e,u,e.tokenPos,e.linePos,e.colPos);return v(e,u,n,t,o,{type:"JSXMemberExpression",object:i,property:l})}function Ut(e,u){let i=[];for(;e.token!==8457016&&e.token!==8456259&&e.token!==1048576;)i.push($t(e,u,e.tokenPos,e.linePos,e.colPos));return i}function Jt(e,u,i,n,t){P(e,u),q(e,u,14);let o=Q(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos);return q(e,u,1074790415),v(e,u,i,n,t,{type:"JSXSpreadAttribute",argument:o})}function $t(e,u,i,n,t){if(e.token===2162700)return Jt(e,u,i,n,t);_1(e);let o=null,l=y1(e,u,i,n,t);if(e.token===21&&(l=Bu(e,u,l,i,n,t)),e.token===1077936157){let c=N0(e,u),{tokenPos:s,linePos:m,colPos:b}=e;switch(c){case 134283267:o=c2(e,u);break;case 8456258:o=ee(e,u,1,s,m,b);break;case 2162700:o=Su(e,u,1,1,s,m,b);break;default:f(e,148)}}return v(e,u,i,n,t,{type:"JSXAttribute",value:o,name:l})}function Bu(e,u,i,n,t,o){q(e,u,21);let l=y1(e,u,e.tokenPos,e.linePos,e.colPos);return v(e,u,n,t,o,{type:"JSXNamespacedName",namespace:i,name:l})}function Su(e,u,i,n,t,o,l){P(e,u|32768);let{tokenPos:c,linePos:s,colPos:m}=e;if(e.token===14)return Ht(e,u,c,s,m);let b=null;return e.token===1074790415?(n&&f(e,151),b=Xt(e,u,e.startPos,e.startLine,e.startColumn)):b=Q(e,u,1,0,0,c,s,m),i?q(e,u,1074790415):j2(e,u),v(e,u,t,o,l,{type:"JSXExpressionContainer",expression:b})}function Ht(e,u,i,n,t){q(e,u,14);let o=Q(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos);return q(e,u,1074790415),v(e,u,i,n,t,{type:"JSXSpreadChild",expression:o})}function Xt(e,u,i,n,t){return e.startPos=e.tokenPos,e.startLine=e.linePos,e.startColumn=e.colPos,v(e,u,i,n,t,{type:"JSXEmptyExpression"})}function y1(e,u,i,n,t){let{tokenValue:o}=e;return P(e,u),v(e,u,i,n,t,{type:"JSXIdentifier",name:o})}var zt=Object.freeze({__proto__:null}),Wt="4.2.1",Kt=Wt;function Yt(e,u){return H1(e,u,0)}function Zt(e,u){return H1(e,u,3072)}function Qt(e,u){return H1(e,u,0)}a.ESTree=zt,a.parse=Qt,a.parseModule=Zt,a.parseScript=Yt,a.version=Kt}}),O3=t2({"src/language-js/parse/meriyah.js"(a,g){n2();var k=h0(),f=d3(),E=E3(),L=F3(),B={module:!0,next:!0,ranges:!0,webcompat:!0,loc:!0,raw:!0,directives:!0,globalReturn:!0,impliedStrict:!1,preserveParens:!1,lexical:!1,identifierPattern:!1,jsx:!0,specDeviation:!0,uniqueKeyInPattern:!1};function R(H,W){let{parse:Y}=L3(),O=[],M=[],a2=Y(H,Object.assign(Object.assign({},B),{},{module:W,onComment:O,onToken:M}));return a2.comments=O,a2.tokens=M,a2}function r(H){let{message:W,line:Y,column:O}=H,M=(W.match(/^\[(?\d+):(?\d+)]: (?.*)$/)||{}).groups;return M&&(W=M.message,typeof Y!="number"&&(Y=Number(M.line),O=Number(M.column))),typeof Y!="number"?H:k(W,{start:{line:Y,column:O}})}function z(H,W){let Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{result:O,error:M}=f(()=>R(H,!0),()=>R(H,!1));if(!O)throw r(M);return Y.originalText=H,L(O,Y)}g.exports={parsers:{meriyah:E(z)}}}}),G6=O3();export{G6 as default}; diff --git a/node_modules/prettier/esm/parser-postcss.mjs b/node_modules/prettier/esm/parser-postcss.mjs new file mode 100644 index 0000000..1f881c8 --- /dev/null +++ b/node_modules/prettier/esm/parser-postcss.mjs @@ -0,0 +1,76 @@ +var K=(r,n)=>()=>(n||r((n={exports:{}}).exports,n),n.exports);var pe=K((Lf,Dt)=>{var Ye=function(r){return r&&r.Math==Math&&r};Dt.exports=Ye(typeof globalThis=="object"&&globalThis)||Ye(typeof window=="object"&&window)||Ye(typeof self=="object"&&self)||Ye(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var be=K((zf,Lt)=>{Lt.exports=function(r){try{return!!r()}catch{return!0}}});var Oe=K((Bf,zt)=>{var ia=be();zt.exports=!ia(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var xr=K((Ff,Bt)=>{var sa=be();Bt.exports=!sa(function(){var r=function(){}.bind();return typeof r!="function"||r.hasOwnProperty("prototype")})});var Ze=K((Uf,Ft)=>{var oa=xr(),Xe=Function.prototype.call;Ft.exports=oa?Xe.bind(Xe):function(){return Xe.apply(Xe,arguments)}});var Vt=K(Wt=>{"use strict";var Ut={}.propertyIsEnumerable,$t=Object.getOwnPropertyDescriptor,aa=$t&&!Ut.call({1:2},1);Wt.f=aa?function(n){var s=$t(this,n);return!!s&&s.enumerable}:Ut});var Sr=K((Wf,Gt)=>{Gt.exports=function(r,n){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:n}}});var xe=K((Vf,Kt)=>{var Ht=xr(),Jt=Function.prototype,kr=Jt.call,ua=Ht&&Jt.bind.bind(kr,kr);Kt.exports=Ht?ua:function(r){return function(){return kr.apply(r,arguments)}}});var Xt=K((Gf,Yt)=>{var Qt=xe(),ca=Qt({}.toString),la=Qt("".slice);Yt.exports=function(r){return la(ca(r),8,-1)}});var en=K((Hf,Zt)=>{var fa=xe(),pa=be(),ha=Xt(),Or=Object,da=fa("".split);Zt.exports=pa(function(){return!Or("z").propertyIsEnumerable(0)})?function(r){return ha(r)=="String"?da(r,""):Or(r)}:Or});var Tr=K((Jf,rn)=>{rn.exports=function(r){return r==null}});var Er=K((Kf,tn)=>{var va=Tr(),ma=TypeError;tn.exports=function(r){if(va(r))throw ma("Can't call method on "+r);return r}});var er=K((Qf,nn)=>{var ga=en(),ya=Er();nn.exports=function(r){return ga(ya(r))}});var Ar=K((Yf,sn)=>{var qr=typeof document=="object"&&document.all,wa=typeof qr>"u"&&qr!==void 0;sn.exports={all:qr,IS_HTMLDDA:wa}});var he=K((Xf,an)=>{var on=Ar(),_a=on.all;an.exports=on.IS_HTMLDDA?function(r){return typeof r=="function"||r===_a}:function(r){return typeof r=="function"}});var Ne=K((Zf,ln)=>{var un=he(),cn=Ar(),ba=cn.all;ln.exports=cn.IS_HTMLDDA?function(r){return typeof r=="object"?r!==null:un(r)||r===ba}:function(r){return typeof r=="object"?r!==null:un(r)}});var rr=K((ep,fn)=>{var Pr=pe(),xa=he(),Sa=function(r){return xa(r)?r:void 0};fn.exports=function(r,n){return arguments.length<2?Sa(Pr[r]):Pr[r]&&Pr[r][n]}});var hn=K((rp,pn)=>{var ka=xe();pn.exports=ka({}.isPrototypeOf)});var vn=K((tp,dn)=>{var Oa=rr();dn.exports=Oa("navigator","userAgent")||""});var xn=K((np,bn)=>{var _n=pe(),Ir=vn(),mn=_n.process,gn=_n.Deno,yn=mn&&mn.versions||gn&&gn.version,wn=yn&&yn.v8,de,tr;wn&&(de=wn.split("."),tr=de[0]>0&&de[0]<4?1:+(de[0]+de[1]));!tr&&Ir&&(de=Ir.match(/Edge\/(\d+)/),(!de||de[1]>=74)&&(de=Ir.match(/Chrome\/(\d+)/),de&&(tr=+de[1])));bn.exports=tr});var Rr=K((ip,kn)=>{var Sn=xn(),Ta=be();kn.exports=!!Object.getOwnPropertySymbols&&!Ta(function(){var r=Symbol();return!String(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&Sn&&Sn<41})});var Cr=K((sp,On)=>{var Ea=Rr();On.exports=Ea&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Nr=K((op,Tn)=>{var qa=rr(),Aa=he(),Pa=hn(),Ia=Cr(),Ra=Object;Tn.exports=Ia?function(r){return typeof r=="symbol"}:function(r){var n=qa("Symbol");return Aa(n)&&Pa(n.prototype,Ra(r))}});var qn=K((ap,En)=>{var Ca=String;En.exports=function(r){try{return Ca(r)}catch{return"Object"}}});var Pn=K((up,An)=>{var Na=he(),ja=qn(),Ma=TypeError;An.exports=function(r){if(Na(r))return r;throw Ma(ja(r)+" is not a function")}});var Rn=K((cp,In)=>{var Da=Pn(),La=Tr();In.exports=function(r,n){var s=r[n];return La(s)?void 0:Da(s)}});var Nn=K((lp,Cn)=>{var jr=Ze(),Mr=he(),Dr=Ne(),za=TypeError;Cn.exports=function(r,n){var s,c;if(n==="string"&&Mr(s=r.toString)&&!Dr(c=jr(s,r))||Mr(s=r.valueOf)&&!Dr(c=jr(s,r))||n!=="string"&&Mr(s=r.toString)&&!Dr(c=jr(s,r)))return c;throw za("Can't convert object to primitive value")}});var Mn=K((fp,jn)=>{jn.exports=!1});var nr=K((pp,Ln)=>{var Dn=pe(),Ba=Object.defineProperty;Ln.exports=function(r,n){try{Ba(Dn,r,{value:n,configurable:!0,writable:!0})}catch{Dn[r]=n}return n}});var ir=K((hp,Bn)=>{var Fa=pe(),Ua=nr(),zn="__core-js_shared__",$a=Fa[zn]||Ua(zn,{});Bn.exports=$a});var Lr=K((dp,Un)=>{var Wa=Mn(),Fn=ir();(Un.exports=function(r,n){return Fn[r]||(Fn[r]=n!==void 0?n:{})})("versions",[]).push({version:"3.26.1",mode:Wa?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var Wn=K((vp,$n)=>{var Va=Er(),Ga=Object;$n.exports=function(r){return Ga(Va(r))}});var Te=K((mp,Vn)=>{var Ha=xe(),Ja=Wn(),Ka=Ha({}.hasOwnProperty);Vn.exports=Object.hasOwn||function(n,s){return Ka(Ja(n),s)}});var zr=K((gp,Gn)=>{var Qa=xe(),Ya=0,Xa=Math.random(),Za=Qa(1 .toString);Gn.exports=function(r){return"Symbol("+(r===void 0?"":r)+")_"+Za(++Ya+Xa,36)}});var Xn=K((yp,Yn)=>{var eu=pe(),ru=Lr(),Hn=Te(),tu=zr(),Jn=Rr(),Qn=Cr(),je=ru("wks"),Ee=eu.Symbol,Kn=Ee&&Ee.for,nu=Qn?Ee:Ee&&Ee.withoutSetter||tu;Yn.exports=function(r){if(!Hn(je,r)||!(Jn||typeof je[r]=="string")){var n="Symbol."+r;Jn&&Hn(Ee,r)?je[r]=Ee[r]:Qn&&Kn?je[r]=Kn(n):je[r]=nu(n)}return je[r]}});var ti=K((wp,ri)=>{var iu=Ze(),Zn=Ne(),ei=Nr(),su=Rn(),ou=Nn(),au=Xn(),uu=TypeError,cu=au("toPrimitive");ri.exports=function(r,n){if(!Zn(r)||ei(r))return r;var s=su(r,cu),c;if(s){if(n===void 0&&(n="default"),c=iu(s,r,n),!Zn(c)||ei(c))return c;throw uu("Can't convert object to primitive value")}return n===void 0&&(n="number"),ou(r,n)}});var Br=K((_p,ni)=>{var lu=ti(),fu=Nr();ni.exports=function(r){var n=lu(r,"string");return fu(n)?n:n+""}});var oi=K((bp,si)=>{var pu=pe(),ii=Ne(),Fr=pu.document,hu=ii(Fr)&&ii(Fr.createElement);si.exports=function(r){return hu?Fr.createElement(r):{}}});var Ur=K((xp,ai)=>{var du=Oe(),vu=be(),mu=oi();ai.exports=!du&&!vu(function(){return Object.defineProperty(mu("div"),"a",{get:function(){return 7}}).a!=7})});var $r=K(ci=>{var gu=Oe(),yu=Ze(),wu=Vt(),_u=Sr(),bu=er(),xu=Br(),Su=Te(),ku=Ur(),ui=Object.getOwnPropertyDescriptor;ci.f=gu?ui:function(n,s){if(n=bu(n),s=xu(s),ku)try{return ui(n,s)}catch{}if(Su(n,s))return _u(!yu(wu.f,n,s),n[s])}});var fi=K((kp,li)=>{var Ou=Oe(),Tu=be();li.exports=Ou&&Tu(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Wr=K((Op,pi)=>{var Eu=Ne(),qu=String,Au=TypeError;pi.exports=function(r){if(Eu(r))return r;throw Au(qu(r)+" is not an object")}});var or=K(di=>{var Pu=Oe(),Iu=Ur(),Ru=fi(),sr=Wr(),hi=Br(),Cu=TypeError,Vr=Object.defineProperty,Nu=Object.getOwnPropertyDescriptor,Gr="enumerable",Hr="configurable",Jr="writable";di.f=Pu?Ru?function(n,s,c){if(sr(n),s=hi(s),sr(c),typeof n=="function"&&s==="prototype"&&"value"in c&&Jr in c&&!c[Jr]){var o=Nu(n,s);o&&o[Jr]&&(n[s]=c.value,c={configurable:Hr in c?c[Hr]:o[Hr],enumerable:Gr in c?c[Gr]:o[Gr],writable:!1})}return Vr(n,s,c)}:Vr:function(n,s,c){if(sr(n),s=hi(s),sr(c),Iu)try{return Vr(n,s,c)}catch{}if("get"in c||"set"in c)throw Cu("Accessors not supported");return"value"in c&&(n[s]=c.value),n}});var Kr=K((Ep,vi)=>{var ju=Oe(),Mu=or(),Du=Sr();vi.exports=ju?function(r,n,s){return Mu.f(r,n,Du(1,s))}:function(r,n,s){return r[n]=s,r}});var yi=K((qp,gi)=>{var Qr=Oe(),Lu=Te(),mi=Function.prototype,zu=Qr&&Object.getOwnPropertyDescriptor,Yr=Lu(mi,"name"),Bu=Yr&&function(){}.name==="something",Fu=Yr&&(!Qr||Qr&&zu(mi,"name").configurable);gi.exports={EXISTS:Yr,PROPER:Bu,CONFIGURABLE:Fu}});var _i=K((Ap,wi)=>{var Uu=xe(),$u=he(),Xr=ir(),Wu=Uu(Function.toString);$u(Xr.inspectSource)||(Xr.inspectSource=function(r){return Wu(r)});wi.exports=Xr.inspectSource});var Si=K((Pp,xi)=>{var Vu=pe(),Gu=he(),bi=Vu.WeakMap;xi.exports=Gu(bi)&&/native code/.test(String(bi))});var Ti=K((Ip,Oi)=>{var Hu=Lr(),Ju=zr(),ki=Hu("keys");Oi.exports=function(r){return ki[r]||(ki[r]=Ju(r))}});var Zr=K((Rp,Ei)=>{Ei.exports={}});var Ii=K((Cp,Pi)=>{var Ku=Si(),Ai=pe(),Qu=Ne(),Yu=Kr(),et=Te(),rt=ir(),Xu=Ti(),Zu=Zr(),qi="Object already initialized",tt=Ai.TypeError,ec=Ai.WeakMap,ar,ze,ur,rc=function(r){return ur(r)?ze(r):ar(r,{})},tc=function(r){return function(n){var s;if(!Qu(n)||(s=ze(n)).type!==r)throw tt("Incompatible receiver, "+r+" required");return s}};Ku||rt.state?(ve=rt.state||(rt.state=new ec),ve.get=ve.get,ve.has=ve.has,ve.set=ve.set,ar=function(r,n){if(ve.has(r))throw tt(qi);return n.facade=r,ve.set(r,n),n},ze=function(r){return ve.get(r)||{}},ur=function(r){return ve.has(r)}):(qe=Xu("state"),Zu[qe]=!0,ar=function(r,n){if(et(r,qe))throw tt(qi);return n.facade=r,Yu(r,qe,n),n},ze=function(r){return et(r,qe)?r[qe]:{}},ur=function(r){return et(r,qe)});var ve,qe;Pi.exports={set:ar,get:ze,has:ur,enforce:rc,getterFor:tc}});var Ni=K((Np,Ci)=>{var nc=be(),ic=he(),cr=Te(),nt=Oe(),sc=yi().CONFIGURABLE,oc=_i(),Ri=Ii(),ac=Ri.enforce,uc=Ri.get,lr=Object.defineProperty,cc=nt&&!nc(function(){return lr(function(){},"length",{value:8}).length!==8}),lc=String(String).split("String"),fc=Ci.exports=function(r,n,s){String(n).slice(0,7)==="Symbol("&&(n="["+String(n).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),s&&s.getter&&(n="get "+n),s&&s.setter&&(n="set "+n),(!cr(r,"name")||sc&&r.name!==n)&&(nt?lr(r,"name",{value:n,configurable:!0}):r.name=n),cc&&s&&cr(s,"arity")&&r.length!==s.arity&&lr(r,"length",{value:s.arity});try{s&&cr(s,"constructor")&&s.constructor?nt&&lr(r,"prototype",{writable:!1}):r.prototype&&(r.prototype=void 0)}catch{}var c=ac(r);return cr(c,"source")||(c.source=lc.join(typeof n=="string"?n:"")),r};Function.prototype.toString=fc(function(){return ic(this)&&uc(this).source||oc(this)},"toString")});var Mi=K((jp,ji)=>{var pc=he(),hc=or(),dc=Ni(),vc=nr();ji.exports=function(r,n,s,c){c||(c={});var o=c.enumerable,p=c.name!==void 0?c.name:n;if(pc(s)&&dc(s,p,c),c.global)o?r[n]=s:vc(n,s);else{try{c.unsafe?r[n]&&(o=!0):delete r[n]}catch{}o?r[n]=s:hc.f(r,n,{value:s,enumerable:!1,configurable:!c.nonConfigurable,writable:!c.nonWritable})}return r}});var Li=K((Mp,Di)=>{var mc=Math.ceil,gc=Math.floor;Di.exports=Math.trunc||function(n){var s=+n;return(s>0?gc:mc)(s)}});var it=K((Dp,zi)=>{var yc=Li();zi.exports=function(r){var n=+r;return n!==n||n===0?0:yc(n)}});var Fi=K((Lp,Bi)=>{var wc=it(),_c=Math.max,bc=Math.min;Bi.exports=function(r,n){var s=wc(r);return s<0?_c(s+n,0):bc(s,n)}});var $i=K((zp,Ui)=>{var xc=it(),Sc=Math.min;Ui.exports=function(r){return r>0?Sc(xc(r),9007199254740991):0}});var Vi=K((Bp,Wi)=>{var kc=$i();Wi.exports=function(r){return kc(r.length)}});var Ji=K((Fp,Hi)=>{var Oc=er(),Tc=Fi(),Ec=Vi(),Gi=function(r){return function(n,s,c){var o=Oc(n),p=Ec(o),f=Tc(c,p),h;if(r&&s!=s){for(;p>f;)if(h=o[f++],h!=h)return!0}else for(;p>f;f++)if((r||f in o)&&o[f]===s)return r||f||0;return!r&&-1}};Hi.exports={includes:Gi(!0),indexOf:Gi(!1)}});var Yi=K((Up,Qi)=>{var qc=xe(),st=Te(),Ac=er(),Pc=Ji().indexOf,Ic=Zr(),Ki=qc([].push);Qi.exports=function(r,n){var s=Ac(r),c=0,o=[],p;for(p in s)!st(Ic,p)&&st(s,p)&&Ki(o,p);for(;n.length>c;)st(s,p=n[c++])&&(~Pc(o,p)||Ki(o,p));return o}});var Zi=K(($p,Xi)=>{Xi.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var rs=K(es=>{var Rc=Yi(),Cc=Zi(),Nc=Cc.concat("length","prototype");es.f=Object.getOwnPropertyNames||function(n){return Rc(n,Nc)}});var ns=K(ts=>{ts.f=Object.getOwnPropertySymbols});var ss=K((Gp,is)=>{var jc=rr(),Mc=xe(),Dc=rs(),Lc=ns(),zc=Wr(),Bc=Mc([].concat);is.exports=jc("Reflect","ownKeys")||function(n){var s=Dc.f(zc(n)),c=Lc.f;return c?Bc(s,c(n)):s}});var us=K((Hp,as)=>{var os=Te(),Fc=ss(),Uc=$r(),$c=or();as.exports=function(r,n,s){for(var c=Fc(n),o=$c.f,p=Uc.f,f=0;f{var Wc=be(),Vc=he(),Gc=/#|\.prototype\./,Be=function(r,n){var s=Jc[Hc(r)];return s==Qc?!0:s==Kc?!1:Vc(n)?Wc(n):!!n},Hc=Be.normalize=function(r){return String(r).replace(Gc,".").toLowerCase()},Jc=Be.data={},Kc=Be.NATIVE="N",Qc=Be.POLYFILL="P";cs.exports=Be});var ps=K((Kp,fs)=>{var ot=pe(),Yc=$r().f,Xc=Kr(),Zc=Mi(),el=nr(),rl=us(),tl=ls();fs.exports=function(r,n){var s=r.target,c=r.global,o=r.stat,p,f,h,g,l,t;if(c?f=ot:o?f=ot[s]||el(s,{}):f=(ot[s]||{}).prototype,f)for(h in n){if(l=n[h],r.dontCallGetSet?(t=Yc(f,h),g=t&&t.value):g=f[h],p=tl(c?h:s+(o?".":"#")+h,r.forced),!p&&g!==void 0){if(typeof l==typeof g)continue;rl(l,g)}(r.sham||g&&g.sham)&&Xc(l,"sham",!0),Zc(f,h,l,r)}}});var hs=K(()=>{var nl=ps(),at=pe();nl({global:!0,forced:at.globalThis!==at},{globalThis:at})});hs();var yt=Object.defineProperty,il=Object.getOwnPropertyDescriptor,wt=Object.getOwnPropertyNames,sl=Object.prototype.hasOwnProperty,Me=(r,n)=>function(){return r&&(n=(0,r[wt(r)[0]])(r=0)),n},R=(r,n)=>function(){return n||(0,r[wt(r)[0]])((n={exports:{}}).exports,n),n.exports},_t=(r,n)=>{for(var s in n)yt(r,s,{get:n[s],enumerable:!0})},ol=(r,n,s,c)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of wt(n))!sl.call(r,o)&&o!==s&&yt(r,o,{get:()=>n[o],enumerable:!(c=il(n,o))||c.enumerable});return r},bt=r=>ol(yt({},"__esModule",{value:!0}),r),I=Me({""(){}}),al=R({"src/common/parser-create-error.js"(r,n){"use strict";I();function s(c,o){let p=new SyntaxError(c+" ("+o.start.line+":"+o.start.column+")");return p.loc=o,p}n.exports=s}}),Cs=R({"src/utils/get-last.js"(r,n){"use strict";I();var s=c=>c[c.length-1];n.exports=s}}),Ns=R({"src/utils/front-matter/parse.js"(r,n){"use strict";I();var s=new RegExp("^(?-{3}|\\+{3})(?[^\\n]*)\\n(?:|(?.*?)\\n)(?\\k|\\.{3})[^\\S\\n]*(?:\\n|$)","s");function c(o){let p=o.match(s);if(!p)return{content:o};let{startDelimiter:f,language:h,value:g="",endDelimiter:l}=p.groups,t=h.trim()||"yaml";if(f==="+++"&&(t="toml"),t!=="yaml"&&f!==l)return{content:o};let[e]=p;return{frontMatter:{type:"front-matter",lang:t,value:g,startDelimiter:f,endDelimiter:l,raw:e.replace(/\n$/,"")},content:e.replace(/[^\n]/g," ")+o.slice(e.length)}}n.exports=c}}),js={};_t(js,{EOL:()=>dt,arch:()=>ul,cpus:()=>Us,default:()=>Hs,endianness:()=>Ms,freemem:()=>Bs,getNetworkInterfaces:()=>Gs,hostname:()=>Ds,loadavg:()=>Ls,networkInterfaces:()=>Vs,platform:()=>cl,release:()=>Ws,tmpDir:()=>pt,tmpdir:()=>ht,totalmem:()=>Fs,type:()=>$s,uptime:()=>zs});function Ms(){if(typeof fr>"u"){var r=new ArrayBuffer(2),n=new Uint8Array(r),s=new Uint16Array(r);if(n[0]=1,n[1]=2,s[0]===258)fr="BE";else if(s[0]===513)fr="LE";else throw new Error("unable to figure out endianess")}return fr}function Ds(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function Ls(){return[]}function zs(){return 0}function Bs(){return Number.MAX_VALUE}function Fs(){return Number.MAX_VALUE}function Us(){return[]}function $s(){return"Browser"}function Ws(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function Vs(){}function Gs(){}function ul(){return"javascript"}function cl(){return"browser"}function pt(){return"/tmp"}var fr,ht,dt,Hs,ll=Me({"node-modules-polyfills:os"(){I(),ht=pt,dt=` +`,Hs={EOL:dt,tmpdir:ht,tmpDir:pt,networkInterfaces:Vs,getNetworkInterfaces:Gs,release:Ws,type:$s,cpus:Us,totalmem:Fs,freemem:Bs,uptime:zs,loadavg:Ls,hostname:Ds,endianness:Ms}}}),fl=R({"node-modules-polyfills-commonjs:os"(r,n){I();var s=(ll(),bt(js));if(s&&s.default){n.exports=s.default;for(let c in s)n.exports[c]=s[c]}else s&&(n.exports=s)}}),pl=R({"node_modules/detect-newline/index.js"(r,n){"use strict";I();var s=c=>{if(typeof c!="string")throw new TypeError("Expected a string");let o=c.match(/(?:\r?\n)/g)||[];if(o.length===0)return;let p=o.filter(h=>h===`\r +`).length,f=o.length-p;return p>f?`\r +`:` +`};n.exports=s,n.exports.graceful=c=>typeof c=="string"&&s(c)||` +`}}),hl=R({"node_modules/jest-docblock/build/index.js"(r){"use strict";I(),Object.defineProperty(r,"__esModule",{value:!0}),r.extract=i,r.parse=m,r.parseWithComments=v,r.print=y,r.strip=u;function n(){let d=fl();return n=function(){return d},d}function s(){let d=c(pl());return s=function(){return d},d}function c(d){return d&&d.__esModule?d:{default:d}}var o=/\*\/$/,p=/^\/\*\*?/,f=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,h=/(^|\s+)\/\/([^\r\n]*)/g,g=/^(\r?\n)+/,l=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,t=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,e=/(\r?\n|^) *\* ?/g,a=[];function i(d){let _=d.match(f);return _?_[0].trimLeft():""}function u(d){let _=d.match(f);return _&&_[0]?d.substring(_[0].length):d}function m(d){return v(d).pragmas}function v(d){let _=(0,s().default)(d)||n().EOL;d=d.replace(p,"").replace(o,"").replace(e,"$1");let O="";for(;O!==d;)O=d,d=d.replace(l,`${_}$1 $2${_}`);d=d.replace(g,"").trimRight();let k=Object.create(null),D=d.replace(t,"").replace(g,"").trimRight(),P;for(;P=t.exec(d);){let $=P[2].replace(h,"");typeof k[P[1]]=="string"||Array.isArray(k[P[1]])?k[P[1]]=a.concat(k[P[1]],$):k[P[1]]=$}return{comments:D,pragmas:k}}function y(d){let{comments:_="",pragmas:O={}}=d,k=(0,s().default)(_)||n().EOL,D="/**",P=" *",$=" */",G=Object.keys(O),Z=G.map(H=>w(H,O[H])).reduce((H,U)=>H.concat(U),[]).map(H=>`${P} ${H}${k}`).join("");if(!_){if(G.length===0)return"";if(G.length===1&&!Array.isArray(O[G[0]])){let H=O[G[0]];return`${D} ${w(G[0],H)[0]}${$}`}}let B=_.split(k).map(H=>`${P} ${H}`).join(k)+k;return D+k+(_?B:"")+(_&&G.length?P+k:"")+Z+$}function w(d,_){return a.concat(_).map(O=>`@${d} ${O}`.trim())}}}),dl=R({"src/common/end-of-line.js"(r,n){"use strict";I();function s(f){let h=f.indexOf("\r");return h>=0?f.charAt(h+1)===` +`?"crlf":"cr":"lf"}function c(f){switch(f){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function o(f,h){let g;switch(h){case` +`:g=/\n/g;break;case"\r":g=/\r/g;break;case`\r +`:g=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(h)}.`)}let l=f.match(g);return l?l.length:0}function p(f){return f.replace(/\r\n?/g,` +`)}n.exports={guessEndOfLine:s,convertEndOfLineToChars:c,countEndOfLineChars:o,normalizeEndOfLine:p}}}),vl=R({"src/language-js/utils/get-shebang.js"(r,n){"use strict";I();function s(c){if(!c.startsWith("#!"))return"";let o=c.indexOf(` +`);return o===-1?c:c.slice(0,o)}n.exports=s}}),ml=R({"src/language-js/pragma.js"(r,n){"use strict";I();var{parseWithComments:s,strip:c,extract:o,print:p}=hl(),{normalizeEndOfLine:f}=dl(),h=vl();function g(e){let a=h(e);a&&(e=e.slice(a.length+1));let i=o(e),{pragmas:u,comments:m}=s(i);return{shebang:a,text:e,pragmas:u,comments:m}}function l(e){let a=Object.keys(g(e).pragmas);return a.includes("prettier")||a.includes("format")}function t(e){let{shebang:a,text:i,pragmas:u,comments:m}=g(e),v=c(i),y=p({pragmas:Object.assign({format:""},u),comments:m.trimStart()});return(a?`${a} +`:"")+f(y)+(v.startsWith(` +`)?` +`:` + +`)+v}n.exports={hasPragma:l,insertPragma:t}}}),gl=R({"src/language-css/pragma.js"(r,n){"use strict";I();var s=ml(),c=Ns();function o(f){return s.hasPragma(c(f).content)}function p(f){let{frontMatter:h,content:g}=c(f);return(h?h.raw+` + +`:"")+s.insertPragma(g)}n.exports={hasPragma:o,insertPragma:p}}}),yl=R({"src/utils/text/skip.js"(r,n){"use strict";I();function s(h){return(g,l,t)=>{let e=t&&t.backwards;if(l===!1)return!1;let{length:a}=g,i=l;for(;i>=0&&i0}n.exports=s}}),bl=R({"src/language-css/utils/has-scss-interpolation.js"(r,n){"use strict";I();var s=_l();function c(o){if(s(o)){for(let p=o.length-1;p>0;p--)if(o[p].type==="word"&&o[p].value==="{"&&o[p-1].type==="word"&&o[p-1].value.endsWith("#"))return!0}return!1}n.exports=c}}),xl=R({"src/language-css/utils/has-string-or-function.js"(r,n){"use strict";I();function s(c){return c.some(o=>o.type==="string"||o.type==="func")}n.exports=s}}),Sl=R({"src/language-css/utils/is-less-parser.js"(r,n){"use strict";I();function s(c){return c.parser==="css"||c.parser==="less"}n.exports=s}}),kl=R({"src/language-css/utils/is-scss.js"(r,n){"use strict";I();function s(c,o){return c==="less"||c==="scss"?c==="scss":/(?:\w\s*:\s*[^:}]+|#){|@import[^\n]+(?:url|,)/.test(o)}n.exports=s}}),Ol=R({"src/language-css/utils/is-scss-nested-property-node.js"(r,n){"use strict";I();function s(c){return c.selector?c.selector.replace(/\/\*.*?\*\//,"").replace(/\/\/.*\n/,"").trim().endsWith(":"):!1}n.exports=s}}),Tl=R({"src/language-css/utils/is-scss-variable.js"(r,n){"use strict";I();function s(c){return Boolean((c==null?void 0:c.type)==="word"&&c.value.startsWith("$"))}n.exports=s}}),El=R({"src/language-css/utils/stringify-node.js"(r,n){"use strict";I();function s(c){var o,p,f;if(c.groups){var h,g,l;let y=((h=c.open)===null||h===void 0?void 0:h.value)||"",w=c.groups.map(_=>s(_)).join(((g=c.groups[0])===null||g===void 0?void 0:g.type)==="comma_group"?",":""),d=((l=c.close)===null||l===void 0?void 0:l.value)||"";return y+w+d}let t=((o=c.raws)===null||o===void 0?void 0:o.before)||"",e=((p=c.raws)===null||p===void 0?void 0:p.quote)||"",a=c.type==="atword"?"@":"",i=c.value||"",u=c.unit||"",m=c.group?s(c.group):"",v=((f=c.raws)===null||f===void 0?void 0:f.after)||"";return t+e+a+i+e+u+m+v}n.exports=s}}),ql=R({"src/language-css/utils/is-module-rule-name.js"(r,n){"use strict";I();var s=new Set(["import","use","forward"]);function c(o){return s.has(o)}n.exports=c}}),we=R({"node_modules/postcss-values-parser/lib/node.js"(r,n){"use strict";I();var s=function(c,o){let p=new c.constructor;for(let f in c){if(!c.hasOwnProperty(f))continue;let h=c[f],g=typeof h;f==="parent"&&g==="object"?o&&(p[f]=o):f==="source"?p[f]=h:h instanceof Array?p[f]=h.map(l=>s(l,p)):f!=="before"&&f!=="after"&&f!=="between"&&f!=="semicolon"&&(g==="object"&&h!==null&&(h=s(h)),p[f]=h)}return p};n.exports=class{constructor(o){o=o||{},this.raws={before:"",after:""};for(let p in o)this[p]=o[p]}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}toString(){return[this.raws.before,String(this.value),this.raws.after].join("")}clone(o){o=o||{};let p=s(this);for(let f in o)p[f]=o[f];return p}cloneBefore(o){o=o||{};let p=this.clone(o);return this.parent.insertBefore(this,p),p}cloneAfter(o){o=o||{};let p=this.clone(o);return this.parent.insertAfter(this,p),p}replaceWith(){let o=Array.prototype.slice.call(arguments);if(this.parent){for(let p of o)this.parent.insertBefore(this,p);this.remove()}return this}moveTo(o){return this.cleanRaws(this.root()===o.root()),this.remove(),o.append(this),this}moveBefore(o){return this.cleanRaws(this.root()===o.root()),this.remove(),o.parent.insertBefore(o,this),this}moveAfter(o){return this.cleanRaws(this.root()===o.root()),this.remove(),o.parent.insertAfter(o,this),this}next(){let o=this.parent.index(this);return this.parent.nodes[o+1]}prev(){let o=this.parent.index(this);return this.parent.nodes[o-1]}toJSON(){let o={};for(let p in this){if(!this.hasOwnProperty(p)||p==="parent")continue;let f=this[p];f instanceof Array?o[p]=f.map(h=>typeof h=="object"&&h.toJSON?h.toJSON():h):typeof f=="object"&&f.toJSON?o[p]=f.toJSON():o[p]=f}return o}root(){let o=this;for(;o.parent;)o=o.parent;return o}cleanRaws(o){delete this.raws.before,delete this.raws.after,o||delete this.raws.between}positionInside(o){let p=this.toString(),f=this.source.start.column,h=this.source.start.line;for(let g=0;g{let h=o(p,f);return h!==!1&&p.walk&&(h=p.walk(o)),h})}walkType(o,p){if(!o||!p)throw new Error("Parameters {type} and {callback} are required.");let f=typeof o=="function";return this.walk((h,g)=>{if(f&&h instanceof o||!f&&h.type===o)return p.call(this,h,g)})}append(o){return o.parent=this,this.nodes.push(o),this}prepend(o){return o.parent=this,this.nodes.unshift(o),this}cleanRaws(o){if(super.cleanRaws(o),this.nodes)for(let p of this.nodes)p.cleanRaws(o)}insertAfter(o,p){let f=this.index(o),h;this.nodes.splice(f+1,0,p);for(let g in this.indexes)h=this.indexes[g],f<=h&&(this.indexes[g]=h+this.nodes.length);return this}insertBefore(o,p){let f=this.index(o),h;this.nodes.splice(f,0,p);for(let g in this.indexes)h=this.indexes[g],f<=h&&(this.indexes[g]=h+this.nodes.length);return this}removeChild(o){o=this.index(o),this.nodes[o].parent=void 0,this.nodes.splice(o,1);let p;for(let f in this.indexes)p=this.indexes[f],p>=o&&(this.indexes[f]=p-1);return this}removeAll(){for(let o of this.nodes)o.parent=void 0;return this.nodes=[],this}every(o){return this.nodes.every(o)}some(o){return this.nodes.some(o)}index(o){return typeof o=="number"?o:this.nodes.indexOf(o)}get first(){if(this.nodes)return this.nodes[0]}get last(){if(this.nodes)return this.nodes[this.nodes.length-1]}toString(){let o=this.nodes.map(String).join("");return this.value&&(o=this.value+o),this.raws.before&&(o=this.raws.before+o),this.raws.after&&(o+=this.raws.after),o}};c.registerWalker=o=>{let p="walk"+o.name;p.lastIndexOf("s")!==p.length-1&&(p+="s"),!c.prototype[p]&&(c.prototype[p]=function(f){return this.walkType(o,f)})},n.exports=c}}),Al=R({"node_modules/postcss-values-parser/lib/root.js"(r,n){"use strict";I();var s=ae();n.exports=class extends s{constructor(o){super(o),this.type="root"}}}}),Js=R({"node_modules/postcss-values-parser/lib/value.js"(r,n){"use strict";I();var s=ae();n.exports=class extends s{constructor(o){super(o),this.type="value",this.unbalanced=0}}}}),Ks=R({"node_modules/postcss-values-parser/lib/atword.js"(r,n){"use strict";I();var s=ae(),c=class extends s{constructor(o){super(o),this.type="atword"}toString(){let o=this.quoted?this.raws.quote:"";return[this.raws.before,"@",String.prototype.toString.call(this.value),this.raws.after].join("")}};s.registerWalker(c),n.exports=c}}),Qs=R({"node_modules/postcss-values-parser/lib/colon.js"(r,n){"use strict";I();var s=ae(),c=we(),o=class extends c{constructor(p){super(p),this.type="colon"}};s.registerWalker(o),n.exports=o}}),Ys=R({"node_modules/postcss-values-parser/lib/comma.js"(r,n){"use strict";I();var s=ae(),c=we(),o=class extends c{constructor(p){super(p),this.type="comma"}};s.registerWalker(o),n.exports=o}}),Xs=R({"node_modules/postcss-values-parser/lib/comment.js"(r,n){"use strict";I();var s=ae(),c=we(),o=class extends c{constructor(p){super(p),this.type="comment",this.inline=Object(p).inline||!1}toString(){return[this.raws.before,this.inline?"//":"/*",String(this.value),this.inline?"":"*/",this.raws.after].join("")}};s.registerWalker(o),n.exports=o}}),Zs=R({"node_modules/postcss-values-parser/lib/function.js"(r,n){"use strict";I();var s=ae(),c=class extends s{constructor(o){super(o),this.type="func",this.unbalanced=-1}};s.registerWalker(c),n.exports=c}}),eo=R({"node_modules/postcss-values-parser/lib/number.js"(r,n){"use strict";I();var s=ae(),c=we(),o=class extends c{constructor(p){super(p),this.type="number",this.unit=Object(p).unit||""}toString(){return[this.raws.before,String(this.value),this.unit,this.raws.after].join("")}};s.registerWalker(o),n.exports=o}}),ro=R({"node_modules/postcss-values-parser/lib/operator.js"(r,n){"use strict";I();var s=ae(),c=we(),o=class extends c{constructor(p){super(p),this.type="operator"}};s.registerWalker(o),n.exports=o}}),to=R({"node_modules/postcss-values-parser/lib/paren.js"(r,n){"use strict";I();var s=ae(),c=we(),o=class extends c{constructor(p){super(p),this.type="paren",this.parenType=""}};s.registerWalker(o),n.exports=o}}),no=R({"node_modules/postcss-values-parser/lib/string.js"(r,n){"use strict";I();var s=ae(),c=we(),o=class extends c{constructor(p){super(p),this.type="string"}toString(){let p=this.quoted?this.raws.quote:"";return[this.raws.before,p,this.value+"",p,this.raws.after].join("")}};s.registerWalker(o),n.exports=o}}),io=R({"node_modules/postcss-values-parser/lib/word.js"(r,n){"use strict";I();var s=ae(),c=we(),o=class extends c{constructor(p){super(p),this.type="word"}};s.registerWalker(o),n.exports=o}}),so=R({"node_modules/postcss-values-parser/lib/unicode-range.js"(r,n){"use strict";I();var s=ae(),c=we(),o=class extends c{constructor(p){super(p),this.type="unicode-range"}};s.registerWalker(o),n.exports=o}});function oo(){throw new Error("setTimeout has not been defined")}function ao(){throw new Error("clearTimeout has not been defined")}function uo(r){if(Se===setTimeout)return setTimeout(r,0);if((Se===oo||!Se)&&setTimeout)return Se=setTimeout,setTimeout(r,0);try{return Se(r,0)}catch{try{return Se.call(null,r,0)}catch{return Se.call(this,r,0)}}}function Pl(r){if(ke===clearTimeout)return clearTimeout(r);if((ke===ao||!ke)&&clearTimeout)return ke=clearTimeout,clearTimeout(r);try{return ke(r)}catch{try{return ke.call(null,r)}catch{return ke.call(this,r)}}}function Il(){!Re||!Ie||(Re=!1,Ie.length?me=Ie.concat(me):Ue=-1,me.length&&co())}function co(){if(!Re){var r=uo(Il);Re=!0;for(var n=me.length;n;){for(Ie=me,me=[];++Ue1)for(var s=1;sEt,debuglog:()=>vo,default:()=>ko,deprecate:()=>St,format:()=>vr,inherits:()=>xt,inspect:()=>ye,isArray:()=>kt,isBoolean:()=>mr,isBuffer:()=>wo,isDate:()=>hr,isError:()=>Ve,isFunction:()=>Ge,isNull:()=>He,isNullOrUndefined:()=>mo,isNumber:()=>Ot,isObject:()=>Ce,isPrimitive:()=>yo,isRegExp:()=>We,isString:()=>Je,isSymbol:()=>go,isUndefined:()=>ge,log:()=>_o});function vr(r){if(!Je(r)){for(var n=[],s=0;s=o)return h;switch(h){case"%s":return String(c[s++]);case"%d":return Number(c[s++]);case"%j":try{return JSON.stringify(c[s++])}catch{return"[Circular]"}default:return h}}),f=c[s];s=3&&(s.depth=arguments[2]),arguments.length>=4&&(s.colors=arguments[3]),mr(n)?s.showHidden=n:n&&Et(s,n),ge(s.showHidden)&&(s.showHidden=!1),ge(s.depth)&&(s.depth=2),ge(s.colors)&&(s.colors=!1),ge(s.customInspect)&&(s.customInspect=!0),s.colors&&(s.stylize=Fl),pr(s,r,s.depth)}function Fl(r,n){var s=ye.styles[n];return s?"\x1B["+ye.colors[s][0]+"m"+r+"\x1B["+ye.colors[s][1]+"m":r}function Ul(r,n){return r}function $l(r){var n={};return r.forEach(function(s,c){n[s]=!0}),n}function pr(r,n,s){if(r.customInspect&&n&&Ge(n.inspect)&&n.inspect!==ye&&!(n.constructor&&n.constructor.prototype===n)){var c=n.inspect(s,r);return Je(c)||(c=pr(r,c,s)),c}var o=Wl(r,n);if(o)return o;var p=Object.keys(n),f=$l(p);if(r.showHidden&&(p=Object.getOwnPropertyNames(n)),Ve(n)&&(p.indexOf("message")>=0||p.indexOf("description")>=0))return ct(n);if(p.length===0){if(Ge(n)){var h=n.name?": "+n.name:"";return r.stylize("[Function"+h+"]","special")}if(We(n))return r.stylize(RegExp.prototype.toString.call(n),"regexp");if(hr(n))return r.stylize(Date.prototype.toString.call(n),"date");if(Ve(n))return ct(n)}var g="",l=!1,t=["{","}"];if(kt(n)&&(l=!0,t=["[","]"]),Ge(n)){var e=n.name?": "+n.name:"";g=" [Function"+e+"]"}if(We(n)&&(g=" "+RegExp.prototype.toString.call(n)),hr(n)&&(g=" "+Date.prototype.toUTCString.call(n)),Ve(n)&&(g=" "+ct(n)),p.length===0&&(!l||n.length==0))return t[0]+g+t[1];if(s<0)return We(n)?r.stylize(RegExp.prototype.toString.call(n),"regexp"):r.stylize("[Object]","special");r.seen.push(n);var a;return l?a=Vl(r,n,s,f,p):a=p.map(function(i){return vt(r,n,s,f,i,l)}),r.seen.pop(),Gl(a,g,t)}function Wl(r,n){if(ge(n))return r.stylize("undefined","undefined");if(Je(n)){var s="'"+JSON.stringify(n).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return r.stylize(s,"string")}if(Ot(n))return r.stylize(""+n,"number");if(mr(n))return r.stylize(""+n,"boolean");if(He(n))return r.stylize("null","null")}function ct(r){return"["+Error.prototype.toString.call(r)+"]"}function Vl(r,n,s,c,o){for(var p=[],f=0,h=n.length;f-1&&(p?h=h.split(` +`).map(function(l){return" "+l}).join(` +`).substr(2):h=` +`+h.split(` +`).map(function(l){return" "+l}).join(` +`))):h=r.stylize("[Circular]","special")),ge(f)){if(p&&o.match(/^\d+$/))return h;f=JSON.stringify(""+o),f.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(f=f.substr(1,f.length-2),f=r.stylize(f,"name")):(f=f.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),f=r.stylize(f,"string"))}return f+": "+h}function Gl(r,n,s){var c=0,o=r.reduce(function(p,f){return c++,f.indexOf(` +`)>=0&&c++,p+f.replace(/\u001b\[\d\d?m/g,"").length+1},0);return o>60?s[0]+(n===""?"":n+` + `)+" "+r.join(`, + `)+" "+s[1]:s[0]+n+" "+r.join(", ")+" "+s[1]}function kt(r){return Array.isArray(r)}function mr(r){return typeof r=="boolean"}function He(r){return r===null}function mo(r){return r==null}function Ot(r){return typeof r=="number"}function Je(r){return typeof r=="string"}function go(r){return typeof r=="symbol"}function ge(r){return r===void 0}function We(r){return Ce(r)&&Tt(r)==="[object RegExp]"}function Ce(r){return typeof r=="object"&&r!==null}function hr(r){return Ce(r)&&Tt(r)==="[object Date]"}function Ve(r){return Ce(r)&&(Tt(r)==="[object Error]"||r instanceof Error)}function Ge(r){return typeof r=="function"}function yo(r){return r===null||typeof r=="boolean"||typeof r=="number"||typeof r=="string"||typeof r=="symbol"||typeof r>"u"}function wo(r){return Buffer.isBuffer(r)}function Tt(r){return Object.prototype.toString.call(r)}function lt(r){return r<10?"0"+r.toString(10):r.toString(10)}function Hl(){var r=new Date,n=[lt(r.getHours()),lt(r.getMinutes()),lt(r.getSeconds())].join(":");return[r.getDate(),So[r.getMonth()],n].join(" ")}function _o(){console.log("%s - %s",Hl(),vr.apply(null,arguments))}function Et(r,n){if(!n||!Ce(n))return r;for(var s=Object.keys(n),c=s.length;c--;)r[s[c]]=n[s[c]];return r}function bo(r,n){return Object.prototype.hasOwnProperty.call(r,n)}var xo,Fe,ft,So,ko,Jl=Me({"node-modules-polyfills:util"(){I(),zl(),Bl(),xo=/%[sdj%]/g,Fe={},ye.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},ye.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},So=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],ko={inherits:xt,_extend:Et,log:_o,isBuffer:wo,isPrimitive:yo,isFunction:Ge,isError:Ve,isDate:hr,isObject:Ce,isRegExp:We,isUndefined:ge,isSymbol:go,isString:Je,isNumber:Ot,isNullOrUndefined:mo,isNull:He,isBoolean:mr,isArray:kt,inspect:ye,deprecate:St,format:vr,debuglog:vo}}}),Kl=R({"node-modules-polyfills-commonjs:util"(r,n){I();var s=(Jl(),bt(ho));if(s&&s.default){n.exports=s.default;for(let c in s)n.exports[c]=s[c]}else s&&(n.exports=s)}}),Ql=R({"node_modules/postcss-values-parser/lib/errors/TokenizeError.js"(r,n){"use strict";I();var s=class extends Error{constructor(c){super(c),this.name=this.constructor.name,this.message=c||"An error ocurred while tokzenizing.",typeof Error.captureStackTrace=="function"?Error.captureStackTrace(this,this.constructor):this.stack=new Error(c).stack}};n.exports=s}}),Yl=R({"node_modules/postcss-values-parser/lib/tokenize.js"(r,n){"use strict";I();var s="{".charCodeAt(0),c="}".charCodeAt(0),o="(".charCodeAt(0),p=")".charCodeAt(0),f="'".charCodeAt(0),h='"'.charCodeAt(0),g="\\".charCodeAt(0),l="/".charCodeAt(0),t=".".charCodeAt(0),e=",".charCodeAt(0),a=":".charCodeAt(0),i="*".charCodeAt(0),u="-".charCodeAt(0),m="+".charCodeAt(0),v="#".charCodeAt(0),y=` +`.charCodeAt(0),w=" ".charCodeAt(0),d="\f".charCodeAt(0),_=" ".charCodeAt(0),O="\r".charCodeAt(0),k="@".charCodeAt(0),D="e".charCodeAt(0),P="E".charCodeAt(0),$="0".charCodeAt(0),G="9".charCodeAt(0),Z="u".charCodeAt(0),B="U".charCodeAt(0),H=/[ \n\t\r\{\(\)'"\\;,/]/g,U=/[ \n\t\r\(\)\{\}\*:;@!&'"\+\|~>,\[\]\\]|\/(?=\*)/g,T=/[ \n\t\r\(\)\{\}\*:;@!&'"\-\+\|~>,\[\]\\]|\//g,L=/^[a-z0-9]/i,j=/^[a-f0-9?\-]/i,N=Kl(),b=Ql();n.exports=function(J,W){W=W||{};let X=[],C=J.valueOf(),Q=C.length,M=-1,E=1,x=0,S=0,z=null,A,q,V,F,ee,te,ue,le,re,ne,oe,ie;function ce(Qe){let _e=N.format("Unclosed %s at line: %d, column: %d, token: %d",Qe,E,x-M,x);throw new b(_e)}function fe(){let Qe=N.format("Syntax error at line: %d, column: %d, token: %d",E,x-M,x);throw new b(Qe)}for(;x0&&X[X.length-1][0]==="word"&&X[X.length-1][1]==="url",X.push(["(","(",E,x-M,E,q-M,x]);break;case p:S--,z=z&&S>0,X.push([")",")",E,x-M,E,q-M,x]);break;case f:case h:V=A===f?"'":'"',q=x;do for(ne=!1,q=C.indexOf(V,q+1),q===-1&&ce("quote",V),oe=q;C.charCodeAt(oe-1)===g;)oe-=1,ne=!ne;while(ne);X.push(["string",C.slice(x,q+1),E,x-M,E,q-M,x]),x=q;break;case k:H.lastIndex=x+1,H.test(C),H.lastIndex===0?q=C.length-1:q=H.lastIndex-2,X.push(["atword",C.slice(x,q+1),E,x-M,E,q-M,x]),x=q;break;case g:q=x,A=C.charCodeAt(q+1),ue&&A!==l&&A!==w&&A!==y&&A!==_&&A!==O&&A!==d&&(q+=1),X.push(["word",C.slice(x,q+1),E,x-M,E,q-M,x]),x=q;break;case m:case u:case i:q=x+1,ie=C.slice(x+1,q+1);let Qe=C.slice(x-1,x);if(A===u&&ie.charCodeAt(0)===u){q++,X.push(["word",C.slice(x,q),E,x-M,E,q-M,x]),x=q-1;break}X.push(["operator",C.slice(x,q),E,x-M,E,q-M,x]),x=q-1;break;default:if(A===l&&(C.charCodeAt(x+1)===i||W.loose&&!z&&C.charCodeAt(x+1)===l)){if(C.charCodeAt(x+1)===i)q=C.indexOf("*/",x+2)+1,q===0&&ce("comment","*/");else{let Le=C.indexOf(` +`,x+2);q=Le!==-1?Le-1:Q}te=C.slice(x,q+1),F=te.split(` +`),ee=F.length-1,ee>0?(le=E+ee,re=q-F[ee].length):(le=E,re=M),X.push(["comment",te,E,x-M,le,q-re,x]),M=re,E=le,x=q}else if(A===v&&!L.test(C.slice(x+1,x+2)))q=x+1,X.push(["#",C.slice(x,q),E,x-M,E,q-M,x]),x=q-1;else if((A===Z||A===B)&&C.charCodeAt(x+1)===m){q=x+2;do q+=1,A=C.charCodeAt(q);while(q=$&&A<=G&&(_e=T),_e.lastIndex=x+1,_e.test(C),_e.lastIndex===0?q=C.length-1:q=_e.lastIndex-2,_e===T||A===t){let Le=C.charCodeAt(q),jt=C.charCodeAt(q+1),Mt=C.charCodeAt(q+2);(Le===D||Le===P)&&(jt===u||jt===m)&&Mt>=$&&Mt<=G&&(T.lastIndex=q+2,T.test(C),T.lastIndex===0?q=C.length-1:q=T.lastIndex-2)}X.push(["word",C.slice(x,q+1),E,x-M,E,q-M,x]),x=q}break}x++}return X}}}),Oo=R({"node_modules/flatten/index.js"(r,n){I(),n.exports=function(c,o){if(o=typeof o=="number"?o:1/0,!o)return Array.isArray(c)?c.map(function(f){return f}):c;return p(c,1);function p(f,h){return f.reduce(function(g,l){return Array.isArray(l)&&hk-D)}n.exports=class{constructor(k,D){let P={loose:!1};this.cache=[],this.input=k,this.options=Object.assign({},P,D),this.position=0,this.unbalanced=0,this.root=new s;let $=new c;this.root.append($),this.current=$,this.tokens=m(k,this.options)}parse(){return this.loop()}colon(){let k=this.currToken;this.newNode(new p({value:k[1],source:{start:{line:k[2],column:k[3]},end:{line:k[4],column:k[5]}},sourceIndex:k[6]})),this.position++}comma(){let k=this.currToken;this.newNode(new f({value:k[1],source:{start:{line:k[2],column:k[3]},end:{line:k[4],column:k[5]}},sourceIndex:k[6]})),this.position++}comment(){let k=!1,D=this.currToken[1].replace(/\/\*|\*\//g,""),P;this.options.loose&&D.startsWith("//")&&(D=D.substring(2),k=!0),P=new h({value:D,inline:k,source:{start:{line:this.currToken[2],column:this.currToken[3]},end:{line:this.currToken[4],column:this.currToken[5]}},sourceIndex:this.currToken[6]}),this.newNode(P),this.position++}error(k,D){throw new d(k+` at line: ${D[2]}, column ${D[3]}`)}loop(){for(;this.position0&&(this.current.type==="func"&&this.current.value==="calc"?this.prevToken[0]!=="space"&&this.prevToken[0]!=="("?this.error("Syntax Error",this.currToken):this.nextToken[0]!=="space"&&this.nextToken[0]!=="word"?this.error("Syntax Error",this.currToken):this.nextToken[0]==="word"&&this.current.last.type!=="operator"&&this.current.last.value!=="("&&this.error("Syntax Error",this.currToken):(this.nextToken[0]==="space"||this.nextToken[0]==="operator"||this.prevToken[0]==="operator")&&this.error("Syntax Error",this.currToken)),this.options.loose){if((!this.current.nodes.length||this.current.last&&this.current.last.type==="operator")&&this.nextToken[0]==="word")return this.word()}else if(this.nextToken[0]==="word")return this.word()}return D=new t({value:this.currToken[1],source:{start:{line:this.currToken[2],column:this.currToken[3]},end:{line:this.currToken[2],column:this.currToken[3]}},sourceIndex:this.currToken[4]}),this.position++,this.newNode(D)}parseTokens(){switch(this.currToken[0]){case"space":this.space();break;case"colon":this.colon();break;case"comma":this.comma();break;case"comment":this.comment();break;case"(":this.parenOpen();break;case")":this.parenClose();break;case"atword":case"word":this.word();break;case"operator":this.operator();break;case"string":this.string();break;case"unicoderange":this.unicodeRange();break;default:this.word();break}}parenOpen(){let k=1,D=this.position+1,P=this.currToken,$;for(;D=this.tokens.length-1&&!this.current.unbalanced)&&(this.current.unbalanced--,this.current.unbalanced<0&&this.error("Expected opening parenthesis",k),!this.current.unbalanced&&this.cache.length&&(this.current=this.cache.pop()))}space(){let k=this.currToken;this.position===this.tokens.length-1||this.nextToken[0]===","||this.nextToken[0]===")"?(this.current.last.raws.after+=k[1],this.position++):(this.spaces=k[1],this.position++)}unicodeRange(){let k=this.currToken;this.newNode(new u({value:k[1],source:{start:{line:k[2],column:k[3]},end:{line:k[4],column:k[5]}},sourceIndex:k[6]})),this.position++}splitWord(){let k=this.nextToken,D=this.currToken[1],P=/^[\+\-]?((\d+(\.\d*)?)|(\.\d+))([eE][\+\-]?\d+)?/,$=/^(?!\#([a-z0-9]+))[\#\{\}]/gi,G,Z;if(!$.test(D))for(;k&&k[0]==="word";){this.position++;let B=this.currToken[1];D+=B,k=this.nextToken}G=y(D,"@"),Z=_(w(v([[0],G]))),Z.forEach((B,H)=>{let U=Z[H+1]||D.length,T=D.slice(B,U),L;if(~G.indexOf(B))L=new o({value:T.slice(1),source:{start:{line:this.currToken[2],column:this.currToken[3]+B},end:{line:this.currToken[4],column:this.currToken[3]+(U-1)}},sourceIndex:this.currToken[6]+Z[H]});else if(P.test(this.currToken[1])){let j=T.replace(P,"");L=new l({value:T.replace(j,""),source:{start:{line:this.currToken[2],column:this.currToken[3]+B},end:{line:this.currToken[4],column:this.currToken[3]+(U-1)}},sourceIndex:this.currToken[6]+Z[H],unit:j})}else L=new(k&&k[0]==="("?g:i)({value:T,source:{start:{line:this.currToken[2],column:this.currToken[3]+B},end:{line:this.currToken[4],column:this.currToken[3]+(U-1)}},sourceIndex:this.currToken[6]+Z[H]}),L.type==="word"?(L.isHex=/^#(.+)/.test(T),L.isColor=/^#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i.test(T)):this.cache.push(this.current);this.newNode(L)}),this.position++}string(){let k=this.currToken,D=this.currToken[1],P=/^(\"|\')/,$=P.test(D),G="",Z;$&&(G=D.match(P)[0],D=D.slice(1,D.length-1)),Z=new a({value:D,source:{start:{line:k[2],column:k[3]},end:{line:k[4],column:k[5]}},sourceIndex:k[6],quoted:$}),Z.raws.quote=G,this.newNode(Z),this.position++}word(){return this.splitWord()}newNode(k){return this.spaces&&(k.raws.before+=this.spaces,this.spaces=""),this.current.append(k)}get currToken(){return this.tokens[this.position]}get nextToken(){return this.tokens[this.position+1]}get prevToken(){return this.tokens[this.position-1]}}}}),ef=R({"node_modules/postcss-values-parser/lib/index.js"(r,n){"use strict";I();var s=Zl(),c=Ks(),o=Qs(),p=Ys(),f=Xs(),h=Zs(),g=eo(),l=ro(),t=to(),e=no(),a=so(),i=Js(),u=io(),m=function(v,y){return new s(v,y)};m.atword=function(v){return new c(v)},m.colon=function(v){return new o(Object.assign({value:":"},v))},m.comma=function(v){return new p(Object.assign({value:","},v))},m.comment=function(v){return new f(v)},m.func=function(v){return new h(v)},m.number=function(v){return new g(v)},m.operator=function(v){return new l(v)},m.paren=function(v){return new t(Object.assign({value:"("},v))},m.string=function(v){return new e(Object.assign({quote:"'"},v))},m.value=function(v){return new i(v)},m.word=function(v){return new u(v)},m.unicodeRange=function(v){return new a(v)},n.exports=m}}),De=R({"node_modules/postcss-selector-parser/dist/selectors/node.js"(r,n){"use strict";I(),r.__esModule=!0;var s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(f){return typeof f}:function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f};function c(f,h){if(!(f instanceof h))throw new TypeError("Cannot call a class as a function")}var o=function f(h,g){if((typeof h>"u"?"undefined":s(h))!=="object")return h;var l=new h.constructor;for(var t in h)if(h.hasOwnProperty(t)){var e=h[t],a=typeof e>"u"?"undefined":s(e);t==="parent"&&a==="object"?g&&(l[t]=g):e instanceof Array?l[t]=e.map(function(i){return f(i,l)}):l[t]=f(e,l)}return l},p=function(){function f(){var h=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};c(this,f);for(var g in h)this[g]=h[g];var l=h.spaces;l=l===void 0?{}:l;var t=l.before,e=t===void 0?"":t,a=l.after,i=a===void 0?"":a;this.spaces={before:e,after:i}}return f.prototype.remove=function(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this},f.prototype.replaceWith=function(){if(this.parent){for(var g in arguments)this.parent.insertBefore(this,arguments[g]);this.remove()}return this},f.prototype.next=function(){return this.parent.at(this.parent.index(this)+1)},f.prototype.prev=function(){return this.parent.at(this.parent.index(this)-1)},f.prototype.clone=function(){var g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},l=o(this);for(var t in g)l[t]=g[t];return l},f.prototype.toString=function(){return[this.spaces.before,String(this.value),this.spaces.after].join("")},f}();r.default=p,n.exports=r.default}}),se=R({"node_modules/postcss-selector-parser/dist/selectors/types.js"(r){"use strict";I(),r.__esModule=!0;var n=r.TAG="tag",s=r.STRING="string",c=r.SELECTOR="selector",o=r.ROOT="root",p=r.PSEUDO="pseudo",f=r.NESTING="nesting",h=r.ID="id",g=r.COMMENT="comment",l=r.COMBINATOR="combinator",t=r.CLASS="class",e=r.ATTRIBUTE="attribute",a=r.UNIVERSAL="universal"}}),qt=R({"node_modules/postcss-selector-parser/dist/selectors/container.js"(r,n){"use strict";I(),r.__esModule=!0;var s=function(){function i(u,m){for(var v=0;v=v&&(this.indexes[w]=y-1);return this},u.prototype.removeAll=function(){for(var w=this.nodes,v=Array.isArray(w),y=0,w=v?w:w[Symbol.iterator]();;){var d;if(v){if(y>=w.length)break;d=w[y++]}else{if(y=w.next(),y.done)break;d=y.value}var _=d;_.parent=void 0}return this.nodes=[],this},u.prototype.empty=function(){return this.removeAll()},u.prototype.insertAfter=function(v,y){var w=this.index(v);this.nodes.splice(w+1,0,y);var d=void 0;for(var _ in this.indexes)d=this.indexes[_],w<=d&&(this.indexes[_]=d+this.nodes.length);return this},u.prototype.insertBefore=function(v,y){var w=this.index(v);this.nodes.splice(w,0,y);var d=void 0;for(var _ in this.indexes)d=this.indexes[_],w<=d&&(this.indexes[_]=d+this.nodes.length);return this},u.prototype.each=function(v){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach++;var y=this.lastEach;if(this.indexes[y]=0,!!this.length){for(var w=void 0,d=void 0;this.indexes[y],\[\]\\]|\/(?=\*)/g;function Z(B){for(var H=[],U=B.css.valueOf(),T=void 0,L=void 0,j=void 0,N=void 0,b=void 0,Y=void 0,J=void 0,W=void 0,X=void 0,C=void 0,Q=void 0,M=U.length,E=-1,x=1,S=0,z=function(q,V){if(B.safe)U+=V,L=U.length-1;else throw B.error("Unclosed "+q,x,S-E,S)};S0?(W=x+b,X=L-N[b].length):(W=x,X=E),H.push(["comment",Y,x,S-E,W,L-X,S]),E=X,x=W,S=L):(G.lastIndex=S+1,G.test(U),G.lastIndex===0?L=U.length-1:L=G.lastIndex-2,H.push(["word",U.slice(S,L+1),x,S-E,x,L-E,S]),S=L);break}S++}return H}n.exports=r.default}}),nf=R({"node_modules/postcss-selector-parser/dist/parser.js"(r,n){"use strict";I(),r.__esModule=!0;var s=function(){function E(x,S){for(var z=0;z1?(V[0]===""&&(V[0]=!0),F.attribute=this.parseValue(V[2]),F.namespace=this.parseNamespace(V[0])):F.attribute=this.parseValue(q[0]),z=new G.default(F),q[2]){var ee=q[2].split(/(\s+i\s*?)$/),te=ee[0].trim();z.value=this.lossy?te:ee[0],ee[1]&&(z.insensitive=!0,this.lossy||(z.raws.insensitive=ee[1])),z.quoted=te[0]==="'"||te[0]==='"',z.raws.unquoted=z.quoted?te.slice(1,-1):te}this.newNode(z),this.position++},E.prototype.combinator=function(){if(this.currToken[1]==="|")return this.namespace();for(var S=new U.default({value:"",source:{start:{line:this.currToken[2],column:this.currToken[3]},end:{line:this.currToken[2],column:this.currToken[3]}},sourceIndex:this.currToken[4]});this.position1&&S.nextToken&&S.nextToken[0]==="("&&S.error("Misplaced parenthesis.")})}else this.error('Unexpected "'+this.currToken[0]+'" found.')},E.prototype.space=function(){var S=this.currToken;this.position===0||this.prevToken[0]===","||this.prevToken[0]==="("?(this.spaces=this.parseSpace(S[1]),this.position++):this.position===this.tokens.length-1||this.nextToken[0]===","||this.nextToken[0]===")"?(this.current.last.spaces.after=this.parseSpace(S[1]),this.position++):this.combinator()},E.prototype.string=function(){var S=this.currToken;this.newNode(new k.default({value:this.currToken[1],source:{start:{line:S[2],column:S[3]},end:{line:S[4],column:S[5]}},sourceIndex:S[6]})),this.position++},E.prototype.universal=function(S){var z=this.nextToken;if(z&&z[1]==="|")return this.position++,this.namespace();this.newNode(new B.default({value:this.currToken[1],source:{start:{line:this.currToken[2],column:this.currToken[3]},end:{line:this.currToken[2],column:this.currToken[3]}},sourceIndex:this.currToken[4]}),S),this.position++},E.prototype.splitWord=function(S,z){for(var A=this,q=this.nextToken,V=this.currToken[1];q&&q[0]==="word";){this.position++;var F=this.currToken[1];if(V+=F,F.lastIndexOf("\\")===F.length-1){var ee=this.nextToken;ee&&ee[0]==="space"&&(V+=this.parseSpace(ee[1]," "),this.position++)}q=this.nextToken}var te=(0,f.default)(V,"."),ue=(0,f.default)(V,"#"),le=(0,f.default)(V,"#{");le.length&&(ue=ue.filter(function(ne){return!~le.indexOf(ne)}));var re=(0,N.default)((0,g.default)((0,o.default)([[0],te,ue])));re.forEach(function(ne,oe){var ie=re[oe+1]||V.length,ce=V.slice(ne,ie);if(oe===0&&z)return z.call(A,ce,re.length);var fe=void 0;~te.indexOf(ne)?fe=new u.default({value:ce.slice(1),source:{start:{line:A.currToken[2],column:A.currToken[3]+ne},end:{line:A.currToken[4],column:A.currToken[3]+(ie-1)}},sourceIndex:A.currToken[6]+re[oe]}):~ue.indexOf(ne)?fe=new w.default({value:ce.slice(1),source:{start:{line:A.currToken[2],column:A.currToken[3]+ne},end:{line:A.currToken[4],column:A.currToken[3]+(ie-1)}},sourceIndex:A.currToken[6]+re[oe]}):fe=new _.default({value:ce,source:{start:{line:A.currToken[2],column:A.currToken[3]+ne},end:{line:A.currToken[4],column:A.currToken[3]+(ie-1)}},sourceIndex:A.currToken[6]+re[oe]}),A.newNode(fe,S)}),this.position++},E.prototype.word=function(S){var z=this.nextToken;return z&&z[1]==="|"?(this.position++,this.namespace()):this.splitWord(S)},E.prototype.loop=function(){for(;this.position1&&arguments[1]!==void 0?arguments[1]:{},a=new o.default({css:t,error:function(u){throw new Error(u)},options:e});return this.res=a,this.func(a),this},s(g,[{key:"result",get:function(){return String(this.res)}}]),g}();r.default=h,n.exports=r.default}}),of=R({"node_modules/postcss-selector-parser/dist/index.js"(r,n){"use strict";I(),r.__esModule=!0;var s=sf(),c=T(s),o=Mo(),p=T(o),f=Po(),h=T(f),g=Lo(),l=T(g),t=Io(),e=T(t),a=Ro(),i=T(a),u=zo(),m=T(u),v=jo(),y=T(v),w=qo(),d=T(w),_=Ao(),O=T(_),k=No(),D=T(k),P=Co(),$=T(P),G=Do(),Z=T(G),B=se(),H=U(B);function U(j){if(j&&j.__esModule)return j;var N={};if(j!=null)for(var b in j)Object.prototype.hasOwnProperty.call(j,b)&&(N[b]=j[b]);return N.default=j,N}function T(j){return j&&j.__esModule?j:{default:j}}var L=function(N){return new c.default(N)};L.attribute=function(j){return new p.default(j)},L.className=function(j){return new h.default(j)},L.combinator=function(j){return new l.default(j)},L.comment=function(j){return new e.default(j)},L.id=function(j){return new i.default(j)},L.nesting=function(j){return new m.default(j)},L.pseudo=function(j){return new y.default(j)},L.root=function(j){return new d.default(j)},L.selector=function(j){return new O.default(j)},L.string=function(j){return new D.default(j)},L.tag=function(j){return new $.default(j)},L.universal=function(j){return new Z.default(j)},Object.keys(H).forEach(function(j){j!=="__esModule"&&(L[j]=H[j])}),r.default=L,n.exports=r.default}}),Bo=R({"node_modules/postcss-media-query-parser/dist/nodes/Node.js"(r){"use strict";I(),Object.defineProperty(r,"__esModule",{value:!0});function n(s){this.after=s.after,this.before=s.before,this.type=s.type,this.value=s.value,this.sourceIndex=s.sourceIndex}r.default=n}}),Fo=R({"node_modules/postcss-media-query-parser/dist/nodes/Container.js"(r){"use strict";I(),Object.defineProperty(r,"__esModule",{value:!0});var n=Bo(),s=c(n);function c(p){return p&&p.__esModule?p:{default:p}}function o(p){var f=this;this.constructor(p),this.nodes=p.nodes,this.after===void 0&&(this.after=this.nodes.length>0?this.nodes[this.nodes.length-1].after:""),this.before===void 0&&(this.before=this.nodes.length>0?this.nodes[0].before:""),this.sourceIndex===void 0&&(this.sourceIndex=this.before.length),this.nodes.forEach(function(h){h.parent=f})}o.prototype=Object.create(s.default.prototype),o.constructor=s.default,o.prototype.walk=function(f,h){for(var g=typeof f=="string"||f instanceof RegExp,l=g?h:f,t=typeof f=="string"?new RegExp(f):f,e=0;e0&&(e[w-1].after=u.before),u.type===void 0){if(w>0){if(e[w-1].type==="media-feature-expression"){u.type="keyword";continue}if(e[w-1].value==="not"||e[w-1].value==="only"){u.type="media-type";continue}if(e[w-1].value==="and"){u.type="media-feature-expression";continue}e[w-1].type==="media-type"&&(e[w+1]?u.type=e[w+1].type==="media-feature-expression"?"keyword":"media-feature-expression":u.type="media-feature-expression")}if(w===0){if(!e[w+1]){u.type="media-type";continue}if(e[w+1]&&(e[w+1].type==="media-feature-expression"||e[w+1].type==="keyword")){u.type="media-type";continue}if(e[w+2]){if(e[w+2].type==="media-feature-expression"){u.type="media-type",e[w+1].type="keyword";continue}if(e[w+2].type==="keyword"){u.type="keyword",e[w+1].type="media-type";continue}}if(e[w+3]&&e[w+3].type==="media-feature-expression"){u.type="keyword",e[w+1].type="media-type",e[w+2].type="keyword";continue}}}return e}function g(l){var t=[],e=0,a=0,i=/^(\s*)url\s*\(/.exec(l);if(i!==null){for(var u=i[0].length,m=1;m>0;){var v=l[u];v==="("&&m++,v===")"&&m--,u++}t.unshift(new s.default({type:"url",value:l.substring(0,u).trim(),sourceIndex:i[1].length,before:i[1],after:/^(\s*)/.exec(l.substring(u))[1]})),e=u}for(var y=e;yHo,default:()=>Ko,delimiter:()=>gt,dirname:()=>Go,extname:()=>Jo,isAbsolute:()=>Pt,join:()=>Wo,normalize:()=>At,relative:()=>Vo,resolve:()=>dr,sep:()=>mt});function $o(r,n){for(var s=0,c=r.length-1;c>=0;c--){var o=r[c];o==="."?r.splice(c,1):o===".."?(r.splice(c,1),s++):s&&(r.splice(c,1),s--)}if(n)for(;s--;s)r.unshift("..");return r}function dr(){for(var r="",n=!1,s=arguments.length-1;s>=-1&&!n;s--){var c=s>=0?arguments[s]:"/";if(typeof c!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!c)continue;r=c+"/"+r,n=c.charAt(0)==="/"}return r=$o(It(r.split("/"),function(o){return!!o}),!n).join("/"),(n?"/":"")+r||"."}function At(r){var n=Pt(r),s=Qo(r,-1)==="/";return r=$o(It(r.split("/"),function(c){return!!c}),!n).join("/"),!r&&!n&&(r="."),r&&s&&(r+="/"),(n?"/":"")+r}function Pt(r){return r.charAt(0)==="/"}function Wo(){var r=Array.prototype.slice.call(arguments,0);return At(It(r,function(n,s){if(typeof n!="string")throw new TypeError("Arguments to path.join must be strings");return n}).join("/"))}function Vo(r,n){r=dr(r).substr(1),n=dr(n).substr(1);function s(l){for(var t=0;t=0&&l[e]==="";e--);return t>e?[]:l.slice(t,e-t+1)}for(var c=s(r.split("/")),o=s(n.split("/")),p=Math.min(c.length,o.length),f=p,h=0;h"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function t(m){return Function.toString.call(m).indexOf("[native code]")!==-1}function e(m,v){return e=Object.setPrototypeOf||function(w,d){return w.__proto__=d,w},e(m,v)}function a(m){return a=Object.setPrototypeOf?Object.getPrototypeOf:function(y){return y.__proto__||Object.getPrototypeOf(y)},a(m)}var i=function(m){f(v,m);function v(w,d,_,O,k,D){var P;return P=m.call(this,w)||this,P.name="CssSyntaxError",P.reason=w,k&&(P.file=k),O&&(P.source=O),D&&(P.plugin=D),typeof d<"u"&&typeof _<"u"&&(P.line=d,P.column=_),P.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(p(P),v),P}var y=v.prototype;return y.setMessage=function(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason},y.showSourceCode=function(d){var _=this;if(!this.source)return"";var O=this.source;c.default&&(typeof d>"u"&&(d=s.default.isColorSupported),d&&(O=(0,c.default)(O)));var k=O.split(/\r?\n/),D=Math.max(this.line-3,0),P=Math.min(this.line+2,k.length),$=String(P).length;function G(B){return d&&s.default.red?s.default.red(s.default.bold(B)):B}function Z(B){return d&&s.default.gray?s.default.gray(B):B}return k.slice(D,P).map(function(B,H){var U=D+1+H,T=" "+(" "+U).slice(-$)+" | ";if(U===_.line){var L=Z(T.replace(/\d/g," "))+B.slice(0,_.column-1).replace(/[^\t]/g," ");return G(">")+Z(T)+B+` + `+L+G("^")}return" "+Z(T)+B}).join(` +`)},y.toString=function(){var d=this.showSourceCode();return d&&(d=` + +`+d+` +`),this.name+": "+this.message+d},v}(h(Error)),u=i;r.default=u,n.exports=r.default}}),hf=R({"node_modules/postcss/lib/previous-map.js"(r,n){I(),n.exports=class{}}}),yr=R({"node_modules/postcss/lib/input.js"(r,n){"use strict";I(),r.__esModule=!0,r.default=void 0;var s=p(lf()),c=p(Yo()),o=p(hf());function p(e){return e&&e.__esModule?e:{default:e}}function f(e,a){for(var i=0;i"u"||typeof i=="object"&&!i.toString)throw new Error("PostCSS received "+i+" instead of CSS string");this.css=i.toString(),this.css[0]==="\uFEFF"||this.css[0]==="\uFFFE"?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,u.from&&(/^\w+:\/\//.test(u.from)||s.default.isAbsolute(u.from)?this.file=u.from:this.file=s.default.resolve(u.from));var m=new o.default(this.css,u);if(m.text){this.map=m;var v=m.consumer().file;!this.file&&v&&(this.file=this.mapResolve(v))}this.file||(g+=1,this.id=""),this.map&&(this.map.file=this.from)}var a=e.prototype;return a.error=function(u,m,v,y){y===void 0&&(y={});var w,d=this.origin(m,v);return d?w=new c.default(u,d.line,d.column,d.source,d.file,y.plugin):w=new c.default(u,m,v,this.css,this.file,y.plugin),w.input={line:m,column:v,source:this.css},this.file&&(w.input.file=this.file),w},a.origin=function(u,m){if(!this.map)return!1;var v=this.map.consumer(),y=v.originalPositionFor({line:u,column:m});if(!y.source)return!1;var w={file:this.mapResolve(y.source),line:y.line,column:y.column},d=v.sourceContentFor(y.source);return d&&(w.source=d),w},a.mapResolve=function(u){return/^\w+:\/\//.test(u)?u:s.default.resolve(this.map.consumer().sourceRoot||".",u)},h(e,[{key:"from",get:function(){return this.file||this.id}}]),e}(),t=l;r.default=t,n.exports=r.default}}),wr=R({"node_modules/postcss/lib/stringifier.js"(r,n){"use strict";I(),r.__esModule=!0,r.default=void 0;var s={colon:": ",indent:" ",beforeDecl:` +`,beforeRule:` +`,beforeOpen:" ",beforeClose:` +`,beforeComment:` +`,after:` +`,emptyBody:"",commentLeft:" ",commentRight:" ",semicolon:!1};function c(f){return f[0].toUpperCase()+f.slice(1)}var o=function(){function f(g){this.builder=g}var h=f.prototype;return h.stringify=function(l,t){this[l.type](l,t)},h.root=function(l){this.body(l),l.raws.after&&this.builder(l.raws.after)},h.comment=function(l){var t=this.raw(l,"left","commentLeft"),e=this.raw(l,"right","commentRight");this.builder("/*"+t+l.text+e+"*/",l)},h.decl=function(l,t){var e=this.raw(l,"between","colon"),a=l.prop+e+this.rawValue(l,"value");l.important&&(a+=l.raws.important||" !important"),t&&(a+=";"),this.builder(a,l)},h.rule=function(l){this.block(l,this.rawValue(l,"selector")),l.raws.ownSemicolon&&this.builder(l.raws.ownSemicolon,l,"end")},h.atrule=function(l,t){var e="@"+l.name,a=l.params?this.rawValue(l,"params"):"";if(typeof l.raws.afterName<"u"?e+=l.raws.afterName:a&&(e+=" "),l.nodes)this.block(l,e+a);else{var i=(l.raws.between||"")+(t?";":"");this.builder(e+a+i,l)}},h.body=function(l){for(var t=l.nodes.length-1;t>0&&l.nodes[t].type==="comment";)t-=1;for(var e=this.raw(l,"semicolon"),a=0;a"u"&&(a=s[e]),u.rawCache[e]=a,a},h.rawSemicolon=function(l){var t;return l.walk(function(e){if(e.nodes&&e.nodes.length&&e.last.type==="decl"&&(t=e.raws.semicolon,typeof t<"u"))return!1}),t},h.rawEmptyBody=function(l){var t;return l.walk(function(e){if(e.nodes&&e.nodes.length===0&&(t=e.raws.after,typeof t<"u"))return!1}),t},h.rawIndent=function(l){if(l.raws.indent)return l.raws.indent;var t;return l.walk(function(e){var a=e.parent;if(a&&a!==l&&a.parent&&a.parent===l&&typeof e.raws.before<"u"){var i=e.raws.before.split(` +`);return t=i[i.length-1],t=t.replace(/[^\s]/g,""),!1}}),t},h.rawBeforeComment=function(l,t){var e;return l.walkComments(function(a){if(typeof a.raws.before<"u")return e=a.raws.before,e.indexOf(` +`)!==-1&&(e=e.replace(/[^\n]+$/,"")),!1}),typeof e>"u"?e=this.raw(t,null,"beforeDecl"):e&&(e=e.replace(/[^\s]/g,"")),e},h.rawBeforeDecl=function(l,t){var e;return l.walkDecls(function(a){if(typeof a.raws.before<"u")return e=a.raws.before,e.indexOf(` +`)!==-1&&(e=e.replace(/[^\n]+$/,"")),!1}),typeof e>"u"?e=this.raw(t,null,"beforeRule"):e&&(e=e.replace(/[^\s]/g,"")),e},h.rawBeforeRule=function(l){var t;return l.walk(function(e){if(e.nodes&&(e.parent!==l||l.first!==e)&&typeof e.raws.before<"u")return t=e.raws.before,t.indexOf(` +`)!==-1&&(t=t.replace(/[^\n]+$/,"")),!1}),t&&(t=t.replace(/[^\s]/g,"")),t},h.rawBeforeClose=function(l){var t;return l.walk(function(e){if(e.nodes&&e.nodes.length>0&&typeof e.raws.after<"u")return t=e.raws.after,t.indexOf(` +`)!==-1&&(t=t.replace(/[^\n]+$/,"")),!1}),t&&(t=t.replace(/[^\s]/g,"")),t},h.rawBeforeOpen=function(l){var t;return l.walk(function(e){if(e.type!=="decl"&&(t=e.raws.between,typeof t<"u"))return!1}),t},h.rawColon=function(l){var t;return l.walkDecls(function(e){if(typeof e.raws.between<"u")return t=e.raws.between.replace(/[^\s:]/g,""),!1}),t},h.beforeAfter=function(l,t){var e;l.type==="decl"?e=this.raw(l,null,"beforeDecl"):l.type==="comment"?e=this.raw(l,null,"beforeComment"):t==="before"?e=this.raw(l,null,"beforeRule"):e=this.raw(l,null,"beforeClose");for(var a=l.parent,i=0;a&&a.type!=="root";)i+=1,a=a.parent;if(e.indexOf(` +`)!==-1){var u=this.raw(l,null,"indent");if(u.length)for(var m=0;m=x}function ue(re){if(V.length)return V.pop();if(!(A>=x)){var ne=re?re.ignoreUnclosed:!1;switch(U=B.charCodeAt(A),(U===f||U===g||U===t&&B.charCodeAt(A+1)!==f)&&(S=A,z+=1),U){case f:case h:case l:case t:case g:T=A;do T+=1,U=B.charCodeAt(T),U===f&&(S=T,z+=1);while(U===h||U===f||U===l||U===t||U===g);E=["space",B.slice(A,T)],A=T-1;break;case e:case a:case m:case v:case d:case y:case u:var oe=String.fromCharCode(U);E=[oe,oe,z,A-S];break;case i:if(Q=q.length?q.pop()[1]:"",M=B.charCodeAt(A+1),Q==="url"&&M!==s&&M!==c&&M!==h&&M!==f&&M!==l&&M!==g&&M!==t){T=A;do{if(X=!1,T=B.indexOf(")",T+1),T===-1)if(H||ne){T=A;break}else ee("bracket");for(C=T;B.charCodeAt(C-1)===o;)C-=1,X=!X}while(X);E=["brackets",B.slice(A,T+1),z,A-S,z,T-S],A=T}else T=B.indexOf(")",A+1),b=B.slice(A,T+1),T===-1||D.test(b)?E=["(","(",z,A-S]:(E=["brackets",b,z,A-S,z,T-S],A=T);break;case s:case c:L=U===s?"'":'"',T=A;do{if(X=!1,T=B.indexOf(L,T+1),T===-1)if(H||ne){T=A+1;break}else ee("string");for(C=T;B.charCodeAt(C-1)===o;)C-=1,X=!X}while(X);b=B.slice(A,T+1),j=b.split(` +`),N=j.length-1,N>0?(J=z+N,W=T-j[N].length):(J=z,W=S),E=["string",B.slice(A,T+1),z,A-S,J,T-W],S=W,z=J,A=T;break;case _:O.lastIndex=A+1,O.test(B),O.lastIndex===0?T=B.length-1:T=O.lastIndex-2,E=["at-word",B.slice(A,T+1),z,A-S,z,T-S],A=T;break;case o:for(T=A,Y=!0;B.charCodeAt(T+1)===o;)T+=1,Y=!Y;if(U=B.charCodeAt(T+1),Y&&U!==p&&U!==h&&U!==f&&U!==l&&U!==t&&U!==g&&(T+=1,P.test(B.charAt(T)))){for(;P.test(B.charAt(T+1));)T+=1;B.charCodeAt(T+1)===h&&(T+=1)}E=["word",B.slice(A,T+1),z,A-S,z,T-S],A=T;break;default:U===p&&B.charCodeAt(A+1)===w?(T=B.indexOf("*/",A+2)+1,T===0&&(H||ne?T=B.length:ee("comment")),b=B.slice(A,T+1),j=b.split(` +`),N=j.length-1,N>0?(J=z+N,W=T-j[N].length):(J=z,W=S),E=["comment",b,z,A-S,J,T-W],S=W,z=J,A=T):(k.lastIndex=A+1,k.test(B),k.lastIndex===0?T=B.length-1:T=k.lastIndex-2,E=["word",B.slice(A,T+1),z,A-S,z,T-S],q.push(E),A=T);break}return A++,E}}function le(re){V.push(re)}return{back:le,nextToken:ue,endOfFile:te,position:F}}n.exports=r.default}}),ea=R({"node_modules/postcss/lib/parse.js"(r,n){"use strict";I(),r.__esModule=!0,r.default=void 0;var s=o(Nt()),c=o(yr());function o(h){return h&&h.__esModule?h:{default:h}}function p(h,g){var l=new c.default(h,g),t=new s.default(l);try{t.parse()}catch(e){throw e}return t.root}var f=p;r.default=f,n.exports=r.default}}),df=R({"node_modules/postcss/lib/list.js"(r,n){"use strict";I(),r.__esModule=!0,r.default=void 0;var s={split:function(p,f,h){for(var g=[],l="",t=!1,e=0,a=!1,i=!1,u=0;u0&&(e-=1):e===0&&f.indexOf(m)!==-1&&(t=!0),t?(l!==""&&g.push(l.trim()),l="",t=!1):l+=m}return(h||l!=="")&&g.push(l.trim()),g},space:function(p){var f=[" ",` +`," "];return s.split(p,f)},comma:function(p){return s.split(p,[","],!0)}},c=s;r.default=c,n.exports=r.default}}),ra=R({"node_modules/postcss/lib/rule.js"(r,n){"use strict";I(),r.__esModule=!0,r.default=void 0;var s=o(br()),c=o(df());function o(t){return t&&t.__esModule?t:{default:t}}function p(t,e){for(var a=0;a"u"||m[Symbol.iterator]==null){if(Array.isArray(m)||(y=h(m))||v&&m&&typeof m.length=="number"){y&&(m=y);var w=0;return function(){return w>=m.length?{done:!0}:{done:!1,value:m[w++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}return y=m[Symbol.iterator](),y.next.bind(y)}function h(m,v){if(m){if(typeof m=="string")return g(m,v);var y=Object.prototype.toString.call(m).slice(8,-1);if(y==="Object"&&m.constructor&&(y=m.constructor.name),y==="Map"||y==="Set")return Array.from(m);if(y==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(y))return g(m,v)}}function g(m,v){(v==null||v>m.length)&&(v=m.length);for(var y=0,w=new Array(v);y=d&&(this.indexes[O]=_-1);return this},y.removeAll=function(){for(var d=f(this.nodes),_;!(_=d()).done;){var O=_.value;O.parent=void 0}return this.nodes=[],this},y.replaceValues=function(d,_,O){return O||(O=_,_={}),this.walkDecls(function(k){_.props&&_.props.indexOf(k.prop)===-1||_.fast&&k.value.indexOf(_.fast)===-1||(k.value=k.value.replace(d,O))}),this},y.every=function(d){return this.nodes.every(d)},y.some=function(d){return this.nodes.some(d)},y.index=function(d){return typeof d=="number"?d:this.nodes.indexOf(d)},y.normalize=function(d,_){var O=this;if(typeof d=="string"){var k=ea();d=a(k(d).nodes)}else if(Array.isArray(d)){d=d.slice(0);for(var D=f(d),P;!(P=D()).done;){var $=P.value;$.parent&&$.parent.removeChild($,"ignore")}}else if(d.type==="root"){d=d.nodes.slice(0);for(var G=f(d),Z;!(Z=G()).done;){var B=Z.value;B.parent&&B.parent.removeChild(B,"ignore")}}else if(d.type)d=[d];else if(d.prop){if(typeof d.value>"u")throw new Error("Value field is missed in node creation");typeof d.value!="string"&&(d.value=String(d.value)),d=[new s.default(d)]}else if(d.selector){var H=ra();d=[new H(d)]}else if(d.name){var U=ta();d=[new U(d)]}else if(d.text)d=[new c.default(d)];else throw new Error("Unknown node type in node creation");var T=d.map(function(L){return L.parent&&L.parent.removeChild(L),typeof L.raws.before>"u"&&_&&typeof _.raws.before<"u"&&(L.raws.before=_.raws.before.replace(/[^\s]/g,"")),L.parent=O,L});return T},t(v,[{key:"first",get:function(){if(this.nodes)return this.nodes[0]}},{key:"last",get:function(){if(this.nodes)return this.nodes[this.nodes.length-1]}}]),v}(o.default),u=i;r.default=u,n.exports=r.default}}),ta=R({"node_modules/postcss/lib/at-rule.js"(r,n){"use strict";I(),r.__esModule=!0,r.default=void 0;var s=c(br());function c(h){return h&&h.__esModule?h:{default:h}}function o(h,g){h.prototype=Object.create(g.prototype),h.prototype.constructor=h,h.__proto__=g}var p=function(h){o(g,h);function g(t){var e;return e=h.call(this,t)||this,e.type="atrule",e}var l=g.prototype;return l.append=function(){var e;this.nodes||(this.nodes=[]);for(var a=arguments.length,i=new Array(a),u=0;u"u"||v[Symbol.iterator]==null){if(Array.isArray(v)||(w=l(v))||y&&v&&typeof v.length=="number"){w&&(v=w);var d=0;return function(){return d>=v.length?{done:!0}:{done:!1,value:v[d++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}return w=v[Symbol.iterator](),w.next.bind(w)}function l(v,y){if(v){if(typeof v=="string")return t(v,y);var w=Object.prototype.toString.call(v).slice(8,-1);if(w==="Object"&&v.constructor&&(w=v.constructor.name),w==="Map"||w==="Set")return Array.from(v);if(w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w))return t(v,y)}}function t(v,y){(y==null||y>v.length)&&(y=v.length);for(var w=0,d=new Array(y);w"u"&&(_.map={}),_.map.inline||(_.map.inline=!1),_.map.prev=d.map);else{var k=f.default;_.syntax&&(k=_.syntax.parse),_.parser&&(k=_.parser),k.parse&&(k=k.parse);try{O=k(d,_)}catch(D){this.error=D}}this.result=new p.default(w,O,_)}var y=v.prototype;return y.warnings=function(){return this.sync().warnings()},y.toString=function(){return this.css},y.then=function(d,_){return this.async().then(d,_)},y.catch=function(d){return this.async().catch(d)},y.finally=function(d){return this.async().then(d,d)},y.handleError=function(d,_){try{if(this.error=d,d.name==="CssSyntaxError"&&!d.plugin)d.plugin=_.postcssPlugin,d.setMessage();else if(_.postcssVersion&&!1)var O,k,D,P,$}catch(G){console&&console.error&&console.error(G)}},y.asyncTick=function(d,_){var O=this;if(this.plugin>=this.processor.plugins.length)return this.processed=!0,d();try{var k=this.processor.plugins[this.plugin],D=this.run(k);this.plugin+=1,i(D)?D.then(function(){O.asyncTick(d,_)}).catch(function(P){O.handleError(P,k),O.processed=!0,_(P)}):this.asyncTick(d,_)}catch(P){this.processed=!0,_(P)}},y.async=function(){var d=this;return this.processed?new Promise(function(_,O){d.error?O(d.error):_(d.stringify())}):this.processing?this.processing:(this.processing=new Promise(function(_,O){if(d.error)return O(d.error);d.plugin=0,d.asyncTick(_,O)}).then(function(){return d.processed=!0,d.stringify()}),this.processing)},y.sync=function(){if(this.processed)return this.result;if(this.processed=!0,this.processing)throw new Error("Use process(css).then(cb) to work with async plugins");if(this.error)throw this.error;for(var d=g(this.result.processor.plugins),_;!(_=d()).done;){var O=_.value,k=this.run(O);if(i(k))throw new Error("Use process(css).then(cb) to work with async plugins")}return this.result},y.run=function(d){this.result.lastPlugin=d;try{return d(this.result.root,this.result)}catch(_){throw this.handleError(_,d),_}},y.stringify=function(){if(this.stringified)return this.result;this.stringified=!0,this.sync();var d=this.result.opts,_=c.default;d.syntax&&(_=d.syntax.stringify),d.stringifier&&(_=d.stringifier),_.stringify&&(_=_.stringify);var O=new s.default(_,this.result.root,this.result.opts),k=O.generate();return this.result.css=k[0],this.result.map=k[1],this.result},a(v,[{key:"processor",get:function(){return this.result.processor}},{key:"opts",get:function(){return this.result.opts}},{key:"css",get:function(){return this.stringify().css}},{key:"content",get:function(){return this.stringify().content}},{key:"map",get:function(){return this.stringify().map}},{key:"root",get:function(){return this.sync().root}},{key:"messages",get:function(){return this.sync().messages}}]),v}(),m=u;r.default=m,n.exports=r.default}}),wf=R({"node_modules/postcss/lib/processor.js"(r,n){"use strict";I(),r.__esModule=!0,r.default=void 0;var s=c(na());function c(l){return l&&l.__esModule?l:{default:l}}function o(l,t){var e;if(typeof Symbol>"u"||l[Symbol.iterator]==null){if(Array.isArray(l)||(e=p(l))||t&&l&&typeof l.length=="number"){e&&(l=e);var a=0;return function(){return a>=l.length?{done:!0}:{done:!1,value:l[a++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}return e=l[Symbol.iterator](),e.next.bind(e)}function p(l,t){if(l){if(typeof l=="string")return f(l,t);var e=Object.prototype.toString.call(l).slice(8,-1);if(e==="Object"&&l.constructor&&(e=l.constructor.name),e==="Map"||e==="Set")return Array.from(l);if(e==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return f(l,t)}}function f(l,t){(t==null||t>l.length)&&(t=l.length);for(var e=0,a=new Array(t);e"u"||t[Symbol.iterator]==null){if(Array.isArray(t)||(a=p(t))||e&&t&&typeof t.length=="number"){a&&(t=a);var i=0;return function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}return a=t[Symbol.iterator](),a.next.bind(a)}function p(t,e){if(t){if(typeof t=="string")return f(t,e);var a=Object.prototype.toString.call(t).slice(8,-1);if(a==="Object"&&t.constructor&&(a=t.constructor.name),a==="Map"||a==="Set")return Array.from(t);if(a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return f(t,e)}}function f(t,e){(e==null||e>t.length)&&(e=t.length);for(var a=0,i=new Array(e);a1&&(this.nodes[1].raws.before=this.nodes[v].raws.before),t.prototype.removeChild.call(this,u)},a.normalize=function(u,m,v){var y=t.prototype.normalize.call(this,u);if(m){if(v==="prepend")this.nodes.length>1?m.raws.before=this.nodes[1].raws.before:delete m.raws.before;else if(this.first!==m)for(var w=o(y),d;!(d=w()).done;){var _=d.value;_.raws.before=m.raws.before}}return y},a.toResult=function(u){u===void 0&&(u={});var m=na(),v=wf(),y=new m(new v,this,u);return y.stringify()},e}(s.default),l=g;r.default=l,n.exports=r.default}}),Nt=R({"node_modules/postcss/lib/parser.js"(r,n){"use strict";I(),r.__esModule=!0,r.default=void 0;var s=g(Zo()),c=g(Ct()),o=g(_r()),p=g(ta()),f=g(_f()),h=g(ra());function g(t){return t&&t.__esModule?t:{default:t}}var l=function(){function t(a){this.input=a,this.root=new f.default,this.current=this.root,this.spaces="",this.semicolon=!1,this.createTokenizer(),this.root.source={input:a,start:{line:1,column:1}}}var e=t.prototype;return e.createTokenizer=function(){this.tokenizer=(0,c.default)(this.input)},e.parse=function(){for(var i;!this.tokenizer.endOfFile();)switch(i=this.tokenizer.nextToken(),i[0]){case"space":this.spaces+=i[1];break;case";":this.freeSemicolon(i);break;case"}":this.end(i);break;case"comment":this.comment(i);break;case"at-word":this.atrule(i);break;case"{":this.emptyRule(i);break;default:this.other(i);break}this.endFile()},e.comment=function(i){var u=new o.default;this.init(u,i[2],i[3]),u.source.end={line:i[4],column:i[5]};var m=i[1].slice(2,-2);if(/^\s*$/.test(m))u.text="",u.raws.left=m,u.raws.right="";else{var v=m.match(/^(\s*)([^]*[^\s])(\s*)$/);u.text=v[2],u.raws.left=v[1],u.raws.right=v[3]}},e.emptyRule=function(i){var u=new h.default;this.init(u,i[2],i[3]),u.selector="",u.raws.between="",this.current=u},e.other=function(i){for(var u=!1,m=null,v=!1,y=null,w=[],d=[],_=i;_;){if(m=_[0],d.push(_),m==="("||m==="[")y||(y=_),w.push(m==="("?")":"]");else if(w.length===0)if(m===";")if(v){this.decl(d);return}else break;else if(m==="{"){this.rule(d);return}else if(m==="}"){this.tokenizer.back(d.pop()),u=!0;break}else m===":"&&(v=!0);else m===w[w.length-1]&&(w.pop(),w.length===0&&(y=null));_=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(u=!0),w.length>0&&this.unclosedBracket(y),u&&v){for(;d.length&&(_=d[d.length-1][0],!(_!=="space"&&_!=="comment"));)this.tokenizer.back(d.pop());this.decl(d)}else this.unknownWord(d)},e.rule=function(i){i.pop();var u=new h.default;this.init(u,i[0][2],i[0][3]),u.raws.between=this.spacesAndCommentsFromEnd(i),this.raw(u,"selector",i),this.current=u},e.decl=function(i){var u=new s.default;this.init(u);var m=i[i.length-1];for(m[0]===";"&&(this.semicolon=!0,i.pop()),m[4]?u.source.end={line:m[4],column:m[5]}:u.source.end={line:m[2],column:m[3]};i[0][0]!=="word";)i.length===1&&this.unknownWord(i),u.raws.before+=i.shift()[1];for(u.source.start={line:i[0][2],column:i[0][3]},u.prop="";i.length;){var v=i[0][0];if(v===":"||v==="space"||v==="comment")break;u.prop+=i.shift()[1]}u.raws.between="";for(var y;i.length;)if(y=i.shift(),y[0]===":"){u.raws.between+=y[1];break}else y[0]==="word"&&/\w/.test(y[1])&&this.unknownWord([y]),u.raws.between+=y[1];(u.prop[0]==="_"||u.prop[0]==="*")&&(u.raws.before+=u.prop[0],u.prop=u.prop.slice(1)),u.raws.between+=this.spacesAndCommentsFromStart(i),this.precheckMissedSemicolon(i);for(var w=i.length-1;w>0;w--){if(y=i[w],y[1].toLowerCase()==="!important"){u.important=!0;var d=this.stringFrom(i,w);d=this.spacesFromEnd(i)+d,d!==" !important"&&(u.raws.important=d);break}else if(y[1].toLowerCase()==="important"){for(var _=i.slice(0),O="",k=w;k>0;k--){var D=_[k][0];if(O.trim().indexOf("!")===0&&D!=="space")break;O=_.pop()[1]+O}O.trim().indexOf("!")===0&&(u.important=!0,u.raws.important=O,i=_)}if(y[0]!=="space"&&y[0]!=="comment")break}this.raw(u,"value",i),u.value.indexOf(":")!==-1&&this.checkMissedSemicolon(i)},e.atrule=function(i){var u=new p.default;u.name=i[1].slice(1),u.name===""&&this.unnamedAtrule(u,i),this.init(u,i[2],i[3]);for(var m,v,y=!1,w=!1,d=[];!this.tokenizer.endOfFile();){if(i=this.tokenizer.nextToken(),i[0]===";"){u.source.end={line:i[2],column:i[3]},this.semicolon=!0;break}else if(i[0]==="{"){w=!0;break}else if(i[0]==="}"){if(d.length>0){for(v=d.length-1,m=d[v];m&&m[0]==="space";)m=d[--v];m&&(u.source.end={line:m[4],column:m[5]})}this.end(i);break}else d.push(i);if(this.tokenizer.endOfFile()){y=!0;break}}u.raws.between=this.spacesAndCommentsFromEnd(d),d.length?(u.raws.afterName=this.spacesAndCommentsFromStart(d),this.raw(u,"params",d),y&&(i=d[d.length-1],u.source.end={line:i[4],column:i[5]},this.spaces=u.raws.between,u.raws.between="")):(u.raws.afterName="",u.params=""),w&&(u.nodes=[],this.current=u)},e.end=function(i){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end={line:i[2],column:i[3]},this.current=this.current.parent):this.unexpectedClose(i)},e.endFile=function(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces},e.freeSemicolon=function(i){if(this.spaces+=i[1],this.current.nodes){var u=this.current.nodes[this.current.nodes.length-1];u&&u.type==="rule"&&!u.raws.ownSemicolon&&(u.raws.ownSemicolon=this.spaces,this.spaces="")}},e.init=function(i,u,m){this.current.push(i),i.source={start:{line:u,column:m},input:this.input},i.raws.before=this.spaces,this.spaces="",i.type!=="comment"&&(this.semicolon=!1)},e.raw=function(i,u,m){for(var v,y,w=m.length,d="",_=!0,O,k,D=/^([.|#])?([\w])+/i,P=0;P=0&&(v=i[y],!(v[0]!=="space"&&(m+=1,m===2)));y--);throw this.input.error("Missed semicolon",v[2],v[3])}},t}();r.default=l,n.exports=r.default}}),bf=R({"node_modules/postcss-less/lib/nodes/inline-comment.js"(r,n){I();var s=Ct(),c=yr();n.exports={isInlineComment(o){if(o[0]==="word"&&o[1].slice(0,2)==="//"){let p=o,f=[],h;for(;o;){if(/\r?\n/.test(o[1])){if(/['"].*\r?\n/.test(o[1])){f.push(o[1].substring(0,o[1].indexOf(` +`)));let l=o[1].substring(o[1].indexOf(` +`));l+=this.input.css.valueOf().substring(this.tokenizer.position()),this.input=new c(l),this.tokenizer=s(this.input)}else this.tokenizer.back(o);break}f.push(o[1]),h=o,o=this.tokenizer.nextToken({ignoreUnclosed:!0})}let g=["comment",f.join(""),p[2],p[3],h[2],h[3]];return this.inlineComment(g),!0}else if(o[1]==="/"){let p=this.tokenizer.nextToken({ignoreUnclosed:!0});if(p[0]==="comment"&&/^\/\*/.test(p[1]))return p[0]="word",p[1]=p[1].slice(1),o[1]="//",this.tokenizer.back(p),n.exports.isInlineComment.bind(this)(o)}return!1}}}}),xf=R({"node_modules/postcss-less/lib/nodes/interpolation.js"(r,n){I(),n.exports={interpolation(s){let c=s,o=[s],p=["word","{","}"];if(s=this.tokenizer.nextToken(),c[1].length>1||s[0]!=="{")return this.tokenizer.back(s),!1;for(;s&&p.includes(s[0]);)o.push(s),s=this.tokenizer.nextToken();let f=o.map(e=>e[1]);[c]=o;let h=o.pop(),g=[c[2],c[3]],l=[h[4]||h[2],h[5]||h[3]],t=["word",f.join("")].concat(g,l);return this.tokenizer.back(s),this.tokenizer.back(t),!0}}}}),Sf=R({"node_modules/postcss-less/lib/nodes/mixin.js"(r,n){I();var s=/^#[0-9a-fA-F]{6}$|^#[0-9a-fA-F]{3}$/,c=/\.[0-9]/,o=p=>{let[,f]=p,[h]=f;return(h==="."||h==="#")&&s.test(f)===!1&&c.test(f)===!1};n.exports={isMixinToken:o}}}),kf=R({"node_modules/postcss-less/lib/nodes/import.js"(r,n){I();var s=Ct(),c=/^url\((.+)\)/;n.exports=o=>{let{name:p,params:f=""}=o;if(p==="import"&&f.length){o.import=!0;let h=s({css:f});for(o.filename=f.replace(c,"$1");!h.endOfFile();){let[g,l]=h.nextToken();if(g==="word"&&l==="url")return;if(g==="brackets"){o.options=l,o.filename=f.replace(l,"").trim();break}}}}}}),Of=R({"node_modules/postcss-less/lib/nodes/variable.js"(r,n){I();var s=/:$/,c=/^:(\s+)?/;n.exports=o=>{let{name:p,params:f=""}=o;if(o.name.slice(-1)===":"){if(s.test(p)){let[h]=p.match(s);o.name=p.replace(h,""),o.raws.afterName=h+(o.raws.afterName||""),o.variable=!0,o.value=o.params}if(c.test(f)){let[h]=f.match(c);o.value=f.replace(h,""),o.raws.afterName=(o.raws.afterName||"")+h,o.variable=!0}}}}}),Tf=R({"node_modules/postcss-less/lib/LessParser.js"(r,n){I();var s=_r(),c=Nt(),{isInlineComment:o}=bf(),{interpolation:p}=xf(),{isMixinToken:f}=Sf(),h=kf(),g=Of(),l=/(!\s*important)$/i;n.exports=class extends c{constructor(){super(...arguments),this.lastNode=null}atrule(e){p.bind(this)(e)||(super.atrule(e),h(this.lastNode),g(this.lastNode))}decl(){super.decl(...arguments),/extend\(.+\)/i.test(this.lastNode.value)&&(this.lastNode.extend=!0)}each(e){e[0][1]=` ${e[0][1]}`;let a=e.findIndex(y=>y[0]==="("),i=e.reverse().find(y=>y[0]===")"),u=e.reverse().indexOf(i),v=e.splice(a,u).map(y=>y[1]).join("");for(let y of e.reverse())this.tokenizer.back(y);this.atrule(this.tokenizer.nextToken()),this.lastNode.function=!0,this.lastNode.params=v}init(e,a,i){super.init(e,a,i),this.lastNode=e}inlineComment(e){let a=new s,i=e[1].slice(2);if(this.init(a,e[2],e[3]),a.source.end={line:e[4],column:e[5]},a.inline=!0,a.raws.begin="//",/^\s*$/.test(i))a.text="",a.raws.left=i,a.raws.right="";else{let u=i.match(/^(\s*)([^]*[^\s])(\s*)$/);[,a.raws.left,a.text,a.raws.right]=u}}mixin(e){let[a]=e,i=a[1].slice(0,1),u=e.findIndex(d=>d[0]==="brackets"),m=e.findIndex(d=>d[0]==="("),v="";if((u<0||u>3)&&m>0){let d=e.reduce((H,U,T)=>U[0]===")"?T:H),O=e.slice(m,d+m).map(H=>H[1]).join(""),[k]=e.slice(m),D=[k[2],k[3]],[P]=e.slice(d,d+1),$=[P[2],P[3]],G=["brackets",O].concat(D,$),Z=e.slice(0,m),B=e.slice(d+1);e=Z,e.push(G),e=e.concat(B)}let y=[];for(let d of e)if((d[1]==="!"||y.length)&&y.push(d),d[1]==="important")break;if(y.length){let[d]=y,_=e.indexOf(d),O=y[y.length-1],k=[d[2],d[3]],D=[O[4],O[5]],$=["word",y.map(G=>G[1]).join("")].concat(k,D);e.splice(_,y.length,$)}let w=e.findIndex(d=>l.test(d[1]));w>0&&([,v]=e[w],e.splice(w,1));for(let d of e.reverse())this.tokenizer.back(d);this.atrule(this.tokenizer.nextToken()),this.lastNode.mixin=!0,this.lastNode.raws.identifier=i,v&&(this.lastNode.important=!0,this.lastNode.raws.important=v)}other(e){o.bind(this)(e)||super.other(e)}rule(e){let a=e[e.length-1],i=e[e.length-2];if(i[0]==="at-word"&&a[0]==="{"&&(this.tokenizer.back(a),p.bind(this)(i))){let m=this.tokenizer.nextToken();e=e.slice(0,e.length-2).concat([m]);for(let v of e.reverse())this.tokenizer.back(v);return}super.rule(e),/:extend\(.+\)/i.test(this.lastNode.selector)&&(this.lastNode.extend=!0)}unknownWord(e){let[a]=e;if(e[0][1]==="each"&&e[1][0]==="("){this.each(e);return}if(f(a)){this.mixin(e);return}super.unknownWord(e)}}}}),Ef=R({"node_modules/postcss-less/lib/LessStringifier.js"(r,n){I();var s=wr();n.exports=class extends s{atrule(o,p){if(!o.mixin&&!o.variable&&!o.function){super.atrule(o,p);return}let h=`${o.function?"":o.raws.identifier||"@"}${o.name}`,g=o.params?this.rawValue(o,"params"):"",l=o.raws.important||"";if(o.variable&&(g=o.value),typeof o.raws.afterName<"u"?h+=o.raws.afterName:g&&(h+=" "),o.nodes)this.block(o,h+g+l);else{let t=(o.raws.between||"")+l+(p?";":"");this.builder(h+g+t,o)}}comment(o){if(o.inline){let p=this.raw(o,"left","commentLeft"),f=this.raw(o,"right","commentRight");this.builder(`//${p}${o.text}${f}`,o)}else super.comment(o)}}}}),qf=R({"node_modules/postcss-less/lib/index.js"(r,n){I();var s=yr(),c=Tf(),o=Ef();n.exports={parse(p,f){let h=new s(p,f),g=new c(h);return g.parse(),g.root},stringify(p,f){new o(f).stringify(p)},nodeToString(p){let f="";return n.exports.stringify(p,h=>{f+=h}),f}}}}),Af=R({"node_modules/postcss-scss/lib/scss-stringifier.js"(r,n){"use strict";I();function s(p,f){p.prototype=Object.create(f.prototype),p.prototype.constructor=p,p.__proto__=f}var c=wr(),o=function(p){s(f,p);function f(){return p.apply(this,arguments)||this}var h=f.prototype;return h.comment=function(l){var t=this.raw(l,"left","commentLeft"),e=this.raw(l,"right","commentRight");if(l.raws.inline){var a=l.raws.text||l.text;this.builder("//"+t+a+e,l)}else this.builder("/*"+t+l.text+e+"*/",l)},h.decl=function(l,t){if(!l.isNested)p.prototype.decl.call(this,l,t);else{var e=this.raw(l,"between","colon"),a=l.prop+e+this.rawValue(l,"value");l.important&&(a+=l.raws.important||" !important"),this.builder(a+"{",l,"start");var i;l.nodes&&l.nodes.length?(this.body(l),i=this.raw(l,"after")):i=this.raw(l,"after","emptyBody"),i&&this.builder(i),this.builder("}",l,"end")}},h.rawValue=function(l,t){var e=l[t],a=l.raws[t];return a&&a.value===e?a.scss?a.scss:a.raw:e},f}(c);n.exports=o}}),Pf=R({"node_modules/postcss-scss/lib/scss-stringify.js"(r,n){"use strict";I();var s=Af();n.exports=function(o,p){var f=new s(p);f.stringify(o)}}}),If=R({"node_modules/postcss-scss/lib/nested-declaration.js"(r,n){"use strict";I();function s(p,f){p.prototype=Object.create(f.prototype),p.prototype.constructor=p,p.__proto__=f}var c=br(),o=function(p){s(f,p);function f(h){var g;return g=p.call(this,h)||this,g.type="decl",g.isNested=!0,g.nodes||(g.nodes=[]),g}return f}(c);n.exports=o}}),Rf=R({"node_modules/postcss-scss/lib/scss-tokenize.js"(r,n){"use strict";I();var s="'".charCodeAt(0),c='"'.charCodeAt(0),o="\\".charCodeAt(0),p="/".charCodeAt(0),f=` +`.charCodeAt(0),h=" ".charCodeAt(0),g="\f".charCodeAt(0),l=" ".charCodeAt(0),t="\r".charCodeAt(0),e="[".charCodeAt(0),a="]".charCodeAt(0),i="(".charCodeAt(0),u=")".charCodeAt(0),m="{".charCodeAt(0),v="}".charCodeAt(0),y=";".charCodeAt(0),w="*".charCodeAt(0),d=":".charCodeAt(0),_="@".charCodeAt(0),O=",".charCodeAt(0),k="#".charCodeAt(0),D=/[ \n\t\r\f{}()'"\\;/[\]#]/g,P=/[ \n\t\r\f(){}:;@!'"\\\][#]|\/(?=\*)/g,$=/.[\\/("'\n]/,G=/[a-f0-9]/i,Z=/[\r\f\n]/g;n.exports=function(H,U){U===void 0&&(U={});var T=H.css.valueOf(),L=U.ignoreErrors,j,N,b,Y,J,W,X,C,Q,M,E,x,S,z,A=T.length,q=-1,V=1,F=0,ee=[],te=[];function ue(ie){throw H.error("Unclosed "+ie,V,F-q)}function le(){return te.length===0&&F>=A}function re(){for(var ie=1,ce=!1,fe=!1;ie>0;)N+=1,T.length<=N&&ue("interpolation"),j=T.charCodeAt(N),x=T.charCodeAt(N+1),ce?!fe&&j===ce?(ce=!1,fe=!1):j===o?fe=!M:fe&&(fe=!1):j===s||j===c?ce=j:j===v?ie-=1:j===k&&x===m&&(ie+=1)}function ne(){if(te.length)return te.pop();if(!(F>=A)){switch(j=T.charCodeAt(F),(j===f||j===g||j===t&&T.charCodeAt(F+1)!==f)&&(q=F,V+=1),j){case f:case h:case l:case t:case g:N=F;do N+=1,j=T.charCodeAt(N),j===f&&(q=N,V+=1);while(j===h||j===f||j===l||j===t||j===g);S=["space",T.slice(F,N)],F=N-1;break;case e:S=["[","[",V,F-q];break;case a:S=["]","]",V,F-q];break;case m:S=["{","{",V,F-q];break;case v:S=["}","}",V,F-q];break;case O:S=["word",",",V,F-q,V,F-q+1];break;case d:S=[":",":",V,F-q];break;case y:S=[";",";",V,F-q];break;case i:if(E=ee.length?ee.pop()[1]:"",x=T.charCodeAt(F+1),E==="url"&&x!==s&&x!==c){for(z=1,M=!1,N=F+1;N<=T.length-1;){if(x=T.charCodeAt(N),x===o)M=!M;else if(x===i)z+=1;else if(x===u&&(z-=1,z===0))break;N+=1}W=T.slice(F,N+1),Y=W.split(` +`),J=Y.length-1,J>0?(C=V+J,Q=N-Y[J].length):(C=V,Q=q),S=["brackets",W,V,F-q,C,N-Q],q=Q,V=C,F=N}else N=T.indexOf(")",F+1),W=T.slice(F,N+1),N===-1||$.test(W)?S=["(","(",V,F-q]:(S=["brackets",W,V,F-q,V,N-q],F=N);break;case u:S=[")",")",V,F-q];break;case s:case c:for(b=j,N=F,M=!1;N0?(C=V+J,Q=N-Y[J].length):(C=V,Q=q),S=["string",T.slice(F,N+1),V,F-q,C,N-Q],q=Q,V=C,F=N;break;case _:D.lastIndex=F+1,D.test(T),D.lastIndex===0?N=T.length-1:N=D.lastIndex-2,S=["at-word",T.slice(F,N+1),V,F-q,V,N-q],F=N;break;case o:for(N=F,X=!0;T.charCodeAt(N+1)===o;)N+=1,X=!X;if(j=T.charCodeAt(N+1),X&&j!==p&&j!==h&&j!==f&&j!==l&&j!==t&&j!==g&&(N+=1,G.test(T.charAt(N)))){for(;G.test(T.charAt(N+1));)N+=1;T.charCodeAt(N+1)===h&&(N+=1)}S=["word",T.slice(F,N+1),V,F-q,V,N-q],F=N;break;default:x=T.charCodeAt(F+1),j===k&&x===m?(N=F,re(),W=T.slice(F,N+1),Y=W.split(` +`),J=Y.length-1,J>0?(C=V+J,Q=N-Y[J].length):(C=V,Q=q),S=["word",W,V,F-q,C,N-Q],q=Q,V=C,F=N):j===p&&x===w?(N=T.indexOf("*/",F+2)+1,N===0&&(L?N=T.length:ue("comment")),W=T.slice(F,N+1),Y=W.split(` +`),J=Y.length-1,J>0?(C=V+J,Q=N-Y[J].length):(C=V,Q=q),S=["comment",W,V,F-q,C,N-Q],q=Q,V=C,F=N):j===p&&x===p?(Z.lastIndex=F+1,Z.test(T),Z.lastIndex===0?N=T.length-1:N=Z.lastIndex-2,W=T.slice(F,N+1),S=["comment",W,V,F-q,V,N-q,"inline"],F=N):(P.lastIndex=F+1,P.test(T),P.lastIndex===0?N=T.length-1:N=P.lastIndex-2,S=["word",T.slice(F,N+1),V,F-q,V,N-q],ee.push(S),F=N);break}return F++,S}}function oe(ie){te.push(ie)}return{back:oe,nextToken:ne,endOfFile:le}}}}),Cf=R({"node_modules/postcss-scss/lib/scss-parser.js"(r,n){"use strict";I();function s(g,l){g.prototype=Object.create(l.prototype),g.prototype.constructor=g,g.__proto__=l}var c=_r(),o=Nt(),p=If(),f=Rf(),h=function(g){s(l,g);function l(){return g.apply(this,arguments)||this}var t=l.prototype;return t.createTokenizer=function(){this.tokenizer=f(this.input)},t.rule=function(a){for(var i=!1,u=0,m="",w=a,v=Array.isArray(w),y=0,w=v?w:w[Symbol.iterator]();;){var d;if(v){if(y>=w.length)break;d=w[y++]}else{if(y=w.next(),y.done)break;d=y.value}var _=d;if(i)_[0]!=="comment"&&_[0]!=="{"&&(m+=_[1]);else{if(_[0]==="space"&&_[1].indexOf(` +`)!==-1)break;_[0]==="("?u+=1:_[0]===")"?u-=1:u===0&&_[0]===":"&&(i=!0)}}if(!i||m.trim()===""||/^[a-zA-Z-:#]/.test(m))g.prototype.rule.call(this,a);else{a.pop();var O=new p;this.init(O);var k=a[a.length-1];for(k[4]?O.source.end={line:k[4],column:k[5]}:O.source.end={line:k[2],column:k[3]};a[0][0]!=="word";)O.raws.before+=a.shift()[1];for(O.source.start={line:a[0][2],column:a[0][3]},O.prop="";a.length;){var D=a[0][0];if(D===":"||D==="space"||D==="comment")break;O.prop+=a.shift()[1]}O.raws.between="";for(var P;a.length;)if(P=a.shift(),P[0]===":"){O.raws.between+=P[1];break}else O.raws.between+=P[1];(O.prop[0]==="_"||O.prop[0]==="*")&&(O.raws.before+=O.prop[0],O.prop=O.prop.slice(1)),O.raws.between+=this.spacesAndCommentsFromStart(a),this.precheckMissedSemicolon(a);for(var $=a.length-1;$>0;$--){if(P=a[$],P[1]==="!important"){O.important=!0;var G=this.stringFrom(a,$);G=this.spacesFromEnd(a)+G,G!==" !important"&&(O.raws.important=G);break}else if(P[1]==="important"){for(var Z=a.slice(0),B="",H=$;H>0;H--){var U=Z[H][0];if(B.trim().indexOf("!")===0&&U!=="space")break;B=Z.pop()[1]+B}B.trim().indexOf("!")===0&&(O.important=!0,O.raws.important=B,a=Z)}if(P[0]!=="space"&&P[0]!=="comment")break}this.raw(O,"value",a),O.value.indexOf(":")!==-1&&this.checkMissedSemicolon(a),this.current=O}},t.comment=function(a){if(a[6]==="inline"){var i=new c;this.init(i,a[2],a[3]),i.raws.inline=!0,i.source.end={line:a[4],column:a[5]};var u=a[1].slice(2);if(/^\s*$/.test(u))i.text="",i.raws.left=u,i.raws.right="";else{var m=u.match(/^(\s*)([^]*[^\s])(\s*)$/),v=m[2].replace(/(\*\/|\/\*)/g,"*//*");i.text=v,i.raws.left=m[1],i.raws.right=m[3],i.raws.text=m[2]}}else g.prototype.comment.call(this,a)},t.raw=function(a,i,u){if(g.prototype.raw.call(this,a,i,u),a.raws[i]){var m=a.raws[i].raw;a.raws[i].raw=u.reduce(function(v,y){if(y[0]==="comment"&&y[6]==="inline"){var w=y[1].slice(2).replace(/(\*\/|\/\*)/g,"*//*");return v+"/*"+w+"*/"}else return v+y[1]},""),m!==a.raws[i].raw&&(a.raws[i].scss=m)}},l}(o);n.exports=h}}),Nf=R({"node_modules/postcss-scss/lib/scss-parse.js"(r,n){"use strict";I();var s=yr(),c=Cf();n.exports=function(p,f){var h=new s(p,f),g=new c(h);return g.parse(),g.root}}}),jf=R({"node_modules/postcss-scss/lib/scss-syntax.js"(r,n){"use strict";I();var s=Pf(),c=Nf();n.exports={parse:c,stringify:s}}}),Mf=R({"src/language-css/parser-postcss.js"(r,n){I();var s=al(),c=Cs(),o=Ns(),{hasPragma:p}=gl(),{locStart:f,locEnd:h}=ds(),{calculateLoc:g,replaceQuotesInInlineComments:l}=ds(),t=bl(),e=xl(),a=Sl(),i=kl(),u=Ol(),m=Tl(),v=El(),y=ql(),w=b=>{for(;b.parent;)b=b.parent;return b};function d(b,Y){let{nodes:J}=b,W={open:null,close:null,groups:[],type:"paren_group"},X=[W],C=W,Q={groups:[],type:"comma_group"},M=[Q];for(let E=0;E0&&W.groups.push(Q),W.close=x,M.length===1)throw new Error("Unbalanced parenthesis");M.pop(),Q=c(M),Q.groups.push(W),X.pop(),W=c(X)}else x.type==="comma"?(W.groups.push(Q),Q={groups:[],type:"comma_group"},M[M.length-1]=Q):Q.groups.push(x)}return Q.groups.length>0&&W.groups.push(Q),C}function _(b){return b.type==="paren_group"&&!b.open&&!b.close&&b.groups.length===1||b.type==="comma_group"&&b.groups.length===1?_(b.groups[0]):b.type==="paren_group"||b.type==="comma_group"?Object.assign(Object.assign({},b),{},{groups:b.groups.map(_)}):b}function O(b,Y,J){if(b&&typeof b=="object"){delete b.parent;for(let W in b)O(b[W],Y,J),W==="type"&&typeof b[W]=="string"&&!b[W].startsWith(Y)&&(!J||!J.test(b[W]))&&(b[W]=Y+b[W])}return b}function k(b){if(b&&typeof b=="object"){delete b.parent;for(let Y in b)k(b[Y]);!Array.isArray(b)&&b.value&&!b.type&&(b.type="unknown")}return b}function D(b,Y){if(b&&typeof b=="object"){for(let J in b)J!=="parent"&&(D(b[J],Y),J==="nodes"&&(b.group=_(d(b,Y)),delete b[J]));delete b.parent}return b}function P(b,Y){let J=ef(),W=null;try{W=J(b,{loose:!0}).parse()}catch{return{type:"value-unknown",value:b}}W.text=b;let X=D(W,Y);return O(X,"value-",/^selector-/)}function $(b){if(/\/\/|\/\*/.test(b))return{type:"selector-unknown",value:b.trim()};let Y=of(),J=null;try{Y(W=>{J=W}).process(b)}catch{return{type:"selector-unknown",value:b}}return O(J,"selector-")}function G(b){let Y=uf().default,J=null;try{J=Y(b)}catch{return{type:"selector-unknown",value:b}}return O(k(J),"media-")}var Z=/(\s*)(!default).*$/,B=/(\s*)(!global).*$/;function H(b,Y){if(b&&typeof b=="object"){delete b.parent;for(let E in b)H(b[E],Y);if(!b.type)return b;b.raws||(b.raws={});let C="";if(typeof b.selector=="string"){var J;C=b.raws.selector?(J=b.raws.selector.scss)!==null&&J!==void 0?J:b.raws.selector.raw:b.selector,b.raws.between&&b.raws.between.trim().length>0&&(C+=b.raws.between),b.raws.selector=C}let Q="";if(typeof b.value=="string"){var W;Q=b.raws.value?(W=b.raws.value.scss)!==null&&W!==void 0?W:b.raws.value.raw:b.value,Q=Q.trim(),b.raws.value=Q}let M="";if(typeof b.params=="string"){var X;M=b.raws.params?(X=b.raws.params.scss)!==null&&X!==void 0?X:b.raws.params.raw:b.params,b.raws.afterName&&b.raws.afterName.trim().length>0&&(M=b.raws.afterName+M),b.raws.between&&b.raws.between.trim().length>0&&(M=M+b.raws.between),M=M.trim(),b.raws.params=M}if(C.trim().length>0)return C.startsWith("@")&&C.endsWith(":")?b:b.mixin?(b.selector=P(C,Y),b):(u(b)&&(b.isSCSSNesterProperty=!0),b.selector=$(C),b);if(Q.length>0){let E=Q.match(Z);E&&(Q=Q.slice(0,E.index),b.scssDefault=!0,E[0].trim()!=="!default"&&(b.raws.scssDefault=E[0]));let x=Q.match(B);if(x&&(Q=Q.slice(0,x.index),b.scssGlobal=!0,x[0].trim()!=="!global"&&(b.raws.scssGlobal=x[0])),Q.startsWith("progid:"))return{type:"value-unknown",value:Q};b.value=P(Q,Y)}if(a(Y)&&b.type==="css-decl"&&Q.startsWith("extend(")&&(b.extend||(b.extend=b.raws.between===":"),b.extend&&!b.selector&&(delete b.value,b.selector=$(Q.slice(7,-1)))),b.type==="css-atrule"){if(a(Y)){if(b.mixin){let E=b.raws.identifier+b.name+b.raws.afterName+b.raws.params;return b.selector=$(E),delete b.params,b}if(b.function)return b}if(Y.parser==="css"&&b.name==="custom-selector"){let E=b.params.match(/:--\S+\s+/)[0].trim();return b.customSelector=E,b.selector=$(b.params.slice(E.length).trim()),delete b.params,b}if(a(Y)){if(b.name.includes(":")&&!b.params){b.variable=!0;let E=b.name.split(":");b.name=E[0],b.value=P(E.slice(1).join(":"),Y)}if(!["page","nest","keyframes"].includes(b.name)&&b.params&&b.params[0]===":"){b.variable=!0;let E=b.params.slice(1);E&&(b.value=P(E,Y)),b.raws.afterName+=":"}if(b.variable)return delete b.params,b.value||delete b.value,b}}if(b.type==="css-atrule"&&M.length>0){let{name:E}=b,x=b.name.toLowerCase();return E==="warn"||E==="error"?(b.params={type:"media-unknown",value:M},b):E==="extend"||E==="nest"?(b.selector=$(M),delete b.params,b):E==="at-root"?(/^\(\s*(?:without|with)\s*:.+\)$/s.test(M)?b.params=P(M,Y):(b.selector=$(M),delete b.params),b):y(x)?(b.import=!0,delete b.filename,b.params=P(M,Y),b):["namespace","supports","if","else","for","each","while","debug","mixin","include","function","return","define-mixin","add-mixin"].includes(E)?(M=M.replace(/(\$\S+?)(\s+)?\.{3}/,"$1...$2"),M=M.replace(/^(?!if)(\S+)(\s+)\(/,"$1($2"),b.value=P(M,Y),delete b.params,b):["media","custom-media"].includes(x)?M.includes("#{")?{type:"media-unknown",value:M}:(b.params=G(M),b):(b.params=M,b)}}return b}function U(b,Y,J){let W=o(Y),{frontMatter:X}=W;Y=W.content;let C;try{C=b(Y)}catch(Q){let{name:M,reason:E,line:x,column:S}=Q;throw typeof x!="number"?Q:s(`${M}: ${E}`,{start:{line:x,column:S}})}return C=H(O(C,"css-"),J),g(C,Y),X&&(X.source={startOffset:0,endOffset:X.raw.length},C.nodes.unshift(X)),C}function T(b,Y){let J=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},X=i(J.parser,b)?[j,L]:[L,j],C;for(let Q of X)try{return Q(b,Y,J)}catch(M){C=C||M}if(C)throw C}function L(b,Y){let J=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},W=qf();return U(X=>W.parse(l(X)),b,J)}function j(b,Y){let J=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{parse:W}=jf();return U(W,b,J)}var N={astFormat:"postcss",hasPragma:p,locStart:f,locEnd:h};n.exports={parsers:{css:Object.assign(Object.assign({},N),{},{parse:T}),less:Object.assign(Object.assign({},N),{},{parse:L}),scss:Object.assign(Object.assign({},N),{},{parse:j})}}}}),sh=Mf();export{sh as default}; diff --git a/node_modules/prettier/esm/parser-typescript.mjs b/node_modules/prettier/esm/parser-typescript.mjs new file mode 100644 index 0000000..df99b30 --- /dev/null +++ b/node_modules/prettier/esm/parser-typescript.mjs @@ -0,0 +1,49 @@ +var ht=(a,_)=>()=>(_||a((_={exports:{}}).exports,_),_.exports);var Mi=ht((tH,J7)=>{var Yh=function(a){return a&&a.Math==Math&&a};J7.exports=Yh(typeof globalThis=="object"&&globalThis)||Yh(typeof window=="object"&&window)||Yh(typeof self=="object"&&self)||Yh(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var Ha=ht((rH,F7)=>{F7.exports=function(a){try{return!!a()}catch{return!0}}});var As=ht((nH,B7)=>{var YB=Ha();B7.exports=!YB(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var p6=ht((iH,q7)=>{var QB=Ha();q7.exports=!QB(function(){var a=function(){}.bind();return typeof a!="function"||a.hasOwnProperty("prototype")})});var Zh=ht((aH,U7)=>{var ZB=p6(),Qh=Function.prototype.call;U7.exports=ZB?Qh.bind(Qh):function(){return Qh.apply(Qh,arguments)}});var H7=ht(V7=>{"use strict";var z7={}.propertyIsEnumerable,W7=Object.getOwnPropertyDescriptor,eq=W7&&!z7.call({1:2},1);V7.f=eq?function(_){var v=W7(this,_);return!!v&&v.enumerable}:z7});var f6=ht((oH,G7)=>{G7.exports=function(a,_){return{enumerable:!(a&1),configurable:!(a&2),writable:!(a&4),value:_}}});var Ps=ht((_H,X7)=>{var $7=p6(),K7=Function.prototype,d6=K7.call,tq=$7&&K7.bind.bind(d6,d6);X7.exports=$7?tq:function(a){return function(){return d6.apply(a,arguments)}}});var Z7=ht((cH,Q7)=>{var Y7=Ps(),rq=Y7({}.toString),nq=Y7("".slice);Q7.exports=function(a){return nq(rq(a),8,-1)}});var tw=ht((lH,ew)=>{var iq=Ps(),aq=Ha(),sq=Z7(),m6=Object,oq=iq("".split);ew.exports=aq(function(){return!m6("z").propertyIsEnumerable(0)})?function(a){return sq(a)=="String"?oq(a,""):m6(a)}:m6});var h6=ht((uH,rw)=>{rw.exports=function(a){return a==null}});var g6=ht((pH,nw)=>{var _q=h6(),cq=TypeError;nw.exports=function(a){if(_q(a))throw cq("Can't call method on "+a);return a}});var e1=ht((fH,iw)=>{var lq=tw(),uq=g6();iw.exports=function(a){return lq(uq(a))}});var v6=ht((dH,aw)=>{var y6=typeof document=="object"&&document.all,pq=typeof y6>"u"&&y6!==void 0;aw.exports={all:y6,IS_HTMLDDA:pq}});var aa=ht((mH,ow)=>{var sw=v6(),fq=sw.all;ow.exports=sw.IS_HTMLDDA?function(a){return typeof a=="function"||a===fq}:function(a){return typeof a=="function"}});var Jc=ht((hH,lw)=>{var _w=aa(),cw=v6(),dq=cw.all;lw.exports=cw.IS_HTMLDDA?function(a){return typeof a=="object"?a!==null:_w(a)||a===dq}:function(a){return typeof a=="object"?a!==null:_w(a)}});var t1=ht((gH,uw)=>{var b6=Mi(),mq=aa(),hq=function(a){return mq(a)?a:void 0};uw.exports=function(a,_){return arguments.length<2?hq(b6[a]):b6[a]&&b6[a][_]}});var fw=ht((yH,pw)=>{var gq=Ps();pw.exports=gq({}.isPrototypeOf)});var mw=ht((vH,dw)=>{var yq=t1();dw.exports=yq("navigator","userAgent")||""});var Sw=ht((bH,Tw)=>{var bw=Mi(),T6=mw(),hw=bw.process,gw=bw.Deno,yw=hw&&hw.versions||gw&&gw.version,vw=yw&&yw.v8,sa,r1;vw&&(sa=vw.split("."),r1=sa[0]>0&&sa[0]<4?1:+(sa[0]+sa[1]));!r1&&T6&&(sa=T6.match(/Edge\/(\d+)/),(!sa||sa[1]>=74)&&(sa=T6.match(/Chrome\/(\d+)/),sa&&(r1=+sa[1])));Tw.exports=r1});var S6=ht((TH,Ew)=>{var xw=Sw(),vq=Ha();Ew.exports=!!Object.getOwnPropertySymbols&&!vq(function(){var a=Symbol();return!String(a)||!(Object(a)instanceof Symbol)||!Symbol.sham&&xw&&xw<41})});var x6=ht((SH,ww)=>{var bq=S6();ww.exports=bq&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var E6=ht((xH,Cw)=>{var Tq=t1(),Sq=aa(),xq=fw(),Eq=x6(),wq=Object;Cw.exports=Eq?function(a){return typeof a=="symbol"}:function(a){var _=Tq("Symbol");return Sq(_)&&xq(_.prototype,wq(a))}});var Pw=ht((EH,Aw)=>{var Cq=String;Aw.exports=function(a){try{return Cq(a)}catch{return"Object"}}});var kw=ht((wH,Dw)=>{var Aq=aa(),Pq=Pw(),Dq=TypeError;Dw.exports=function(a){if(Aq(a))return a;throw Dq(Pq(a)+" is not a function")}});var Nw=ht((CH,Iw)=>{var kq=kw(),Iq=h6();Iw.exports=function(a,_){var v=a[_];return Iq(v)?void 0:kq(v)}});var Mw=ht((AH,Ow)=>{var w6=Zh(),C6=aa(),A6=Jc(),Nq=TypeError;Ow.exports=function(a,_){var v,h;if(_==="string"&&C6(v=a.toString)&&!A6(h=w6(v,a))||C6(v=a.valueOf)&&!A6(h=w6(v,a))||_!=="string"&&C6(v=a.toString)&&!A6(h=w6(v,a)))return h;throw Nq("Can't convert object to primitive value")}});var Rw=ht((PH,Lw)=>{Lw.exports=!1});var n1=ht((DH,Jw)=>{var jw=Mi(),Oq=Object.defineProperty;Jw.exports=function(a,_){try{Oq(jw,a,{value:_,configurable:!0,writable:!0})}catch{jw[a]=_}return _}});var i1=ht((kH,Bw)=>{var Mq=Mi(),Lq=n1(),Fw="__core-js_shared__",Rq=Mq[Fw]||Lq(Fw,{});Bw.exports=Rq});var P6=ht((IH,Uw)=>{var jq=Rw(),qw=i1();(Uw.exports=function(a,_){return qw[a]||(qw[a]=_!==void 0?_:{})})("versions",[]).push({version:"3.26.1",mode:jq?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var Ww=ht((NH,zw)=>{var Jq=g6(),Fq=Object;zw.exports=function(a){return Fq(Jq(a))}});var oo=ht((OH,Vw)=>{var Bq=Ps(),qq=Ww(),Uq=Bq({}.hasOwnProperty);Vw.exports=Object.hasOwn||function(_,v){return Uq(qq(_),v)}});var D6=ht((MH,Hw)=>{var zq=Ps(),Wq=0,Vq=Math.random(),Hq=zq(1 .toString);Hw.exports=function(a){return"Symbol("+(a===void 0?"":a)+")_"+Hq(++Wq+Vq,36)}});var Qw=ht((LH,Yw)=>{var Gq=Mi(),$q=P6(),Gw=oo(),Kq=D6(),$w=S6(),Xw=x6(),Fc=$q("wks"),p_=Gq.Symbol,Kw=p_&&p_.for,Xq=Xw?p_:p_&&p_.withoutSetter||Kq;Yw.exports=function(a){if(!Gw(Fc,a)||!($w||typeof Fc[a]=="string")){var _="Symbol."+a;$w&&Gw(p_,a)?Fc[a]=p_[a]:Xw&&Kw?Fc[a]=Kw(_):Fc[a]=Xq(_)}return Fc[a]}});var rC=ht((RH,tC)=>{var Yq=Zh(),Zw=Jc(),eC=E6(),Qq=Nw(),Zq=Mw(),eU=Qw(),tU=TypeError,rU=eU("toPrimitive");tC.exports=function(a,_){if(!Zw(a)||eC(a))return a;var v=Qq(a,rU),h;if(v){if(_===void 0&&(_="default"),h=Yq(v,a,_),!Zw(h)||eC(h))return h;throw tU("Can't convert object to primitive value")}return _===void 0&&(_="number"),Zq(a,_)}});var k6=ht((jH,nC)=>{var nU=rC(),iU=E6();nC.exports=function(a){var _=nU(a,"string");return iU(_)?_:_+""}});var sC=ht((JH,aC)=>{var aU=Mi(),iC=Jc(),I6=aU.document,sU=iC(I6)&&iC(I6.createElement);aC.exports=function(a){return sU?I6.createElement(a):{}}});var N6=ht((FH,oC)=>{var oU=As(),_U=Ha(),cU=sC();oC.exports=!oU&&!_U(function(){return Object.defineProperty(cU("div"),"a",{get:function(){return 7}}).a!=7})});var O6=ht(cC=>{var lU=As(),uU=Zh(),pU=H7(),fU=f6(),dU=e1(),mU=k6(),hU=oo(),gU=N6(),_C=Object.getOwnPropertyDescriptor;cC.f=lU?_C:function(_,v){if(_=dU(_),v=mU(v),gU)try{return _C(_,v)}catch{}if(hU(_,v))return fU(!uU(pU.f,_,v),_[v])}});var uC=ht((qH,lC)=>{var yU=As(),vU=Ha();lC.exports=yU&&vU(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var a1=ht((UH,pC)=>{var bU=Jc(),TU=String,SU=TypeError;pC.exports=function(a){if(bU(a))return a;throw SU(TU(a)+" is not an object")}});var dp=ht(dC=>{var xU=As(),EU=N6(),wU=uC(),s1=a1(),fC=k6(),CU=TypeError,M6=Object.defineProperty,AU=Object.getOwnPropertyDescriptor,L6="enumerable",R6="configurable",j6="writable";dC.f=xU?wU?function(_,v,h){if(s1(_),v=fC(v),s1(h),typeof _=="function"&&v==="prototype"&&"value"in h&&j6 in h&&!h[j6]){var D=AU(_,v);D&&D[j6]&&(_[v]=h.value,h={configurable:R6 in h?h[R6]:D[R6],enumerable:L6 in h?h[L6]:D[L6],writable:!1})}return M6(_,v,h)}:M6:function(_,v,h){if(s1(_),v=fC(v),s1(h),EU)try{return M6(_,v,h)}catch{}if("get"in h||"set"in h)throw CU("Accessors not supported");return"value"in h&&(_[v]=h.value),_}});var J6=ht((WH,mC)=>{var PU=As(),DU=dp(),kU=f6();mC.exports=PU?function(a,_,v){return DU.f(a,_,kU(1,v))}:function(a,_,v){return a[_]=v,a}});var yC=ht((VH,gC)=>{var F6=As(),IU=oo(),hC=Function.prototype,NU=F6&&Object.getOwnPropertyDescriptor,B6=IU(hC,"name"),OU=B6&&function(){}.name==="something",MU=B6&&(!F6||F6&&NU(hC,"name").configurable);gC.exports={EXISTS:B6,PROPER:OU,CONFIGURABLE:MU}});var bC=ht((HH,vC)=>{var LU=Ps(),RU=aa(),q6=i1(),jU=LU(Function.toString);RU(q6.inspectSource)||(q6.inspectSource=function(a){return jU(a)});vC.exports=q6.inspectSource});var xC=ht((GH,SC)=>{var JU=Mi(),FU=aa(),TC=JU.WeakMap;SC.exports=FU(TC)&&/native code/.test(String(TC))});var CC=ht(($H,wC)=>{var BU=P6(),qU=D6(),EC=BU("keys");wC.exports=function(a){return EC[a]||(EC[a]=qU(a))}});var U6=ht((KH,AC)=>{AC.exports={}});var IC=ht((XH,kC)=>{var UU=xC(),DC=Mi(),zU=Jc(),WU=J6(),z6=oo(),W6=i1(),VU=CC(),HU=U6(),PC="Object already initialized",V6=DC.TypeError,GU=DC.WeakMap,o1,mp,_1,$U=function(a){return _1(a)?mp(a):o1(a,{})},KU=function(a){return function(_){var v;if(!zU(_)||(v=mp(_)).type!==a)throw V6("Incompatible receiver, "+a+" required");return v}};UU||W6.state?(oa=W6.state||(W6.state=new GU),oa.get=oa.get,oa.has=oa.has,oa.set=oa.set,o1=function(a,_){if(oa.has(a))throw V6(PC);return _.facade=a,oa.set(a,_),_},mp=function(a){return oa.get(a)||{}},_1=function(a){return oa.has(a)}):(f_=VU("state"),HU[f_]=!0,o1=function(a,_){if(z6(a,f_))throw V6(PC);return _.facade=a,WU(a,f_,_),_},mp=function(a){return z6(a,f_)?a[f_]:{}},_1=function(a){return z6(a,f_)});var oa,f_;kC.exports={set:o1,get:mp,has:_1,enforce:$U,getterFor:KU}});var G6=ht((YH,OC)=>{var XU=Ha(),YU=aa(),c1=oo(),H6=As(),QU=yC().CONFIGURABLE,ZU=bC(),NC=IC(),ez=NC.enforce,tz=NC.get,l1=Object.defineProperty,rz=H6&&!XU(function(){return l1(function(){},"length",{value:8}).length!==8}),nz=String(String).split("String"),iz=OC.exports=function(a,_,v){String(_).slice(0,7)==="Symbol("&&(_="["+String(_).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),v&&v.getter&&(_="get "+_),v&&v.setter&&(_="set "+_),(!c1(a,"name")||QU&&a.name!==_)&&(H6?l1(a,"name",{value:_,configurable:!0}):a.name=_),rz&&v&&c1(v,"arity")&&a.length!==v.arity&&l1(a,"length",{value:v.arity});try{v&&c1(v,"constructor")&&v.constructor?H6&&l1(a,"prototype",{writable:!1}):a.prototype&&(a.prototype=void 0)}catch{}var h=ez(a);return c1(h,"source")||(h.source=nz.join(typeof _=="string"?_:"")),a};Function.prototype.toString=iz(function(){return YU(this)&&tz(this).source||ZU(this)},"toString")});var LC=ht((QH,MC)=>{var az=aa(),sz=dp(),oz=G6(),_z=n1();MC.exports=function(a,_,v,h){h||(h={});var D=h.enumerable,P=h.name!==void 0?h.name:_;if(az(v)&&oz(v,P,h),h.global)D?a[_]=v:_z(_,v);else{try{h.unsafe?a[_]&&(D=!0):delete a[_]}catch{}D?a[_]=v:sz.f(a,_,{value:v,enumerable:!1,configurable:!h.nonConfigurable,writable:!h.nonWritable})}return a}});var jC=ht((ZH,RC)=>{var cz=Math.ceil,lz=Math.floor;RC.exports=Math.trunc||function(_){var v=+_;return(v>0?lz:cz)(v)}});var $6=ht((eG,JC)=>{var uz=jC();JC.exports=function(a){var _=+a;return _!==_||_===0?0:uz(_)}});var BC=ht((tG,FC)=>{var pz=$6(),fz=Math.max,dz=Math.min;FC.exports=function(a,_){var v=pz(a);return v<0?fz(v+_,0):dz(v,_)}});var UC=ht((rG,qC)=>{var mz=$6(),hz=Math.min;qC.exports=function(a){return a>0?hz(mz(a),9007199254740991):0}});var WC=ht((nG,zC)=>{var gz=UC();zC.exports=function(a){return gz(a.length)}});var GC=ht((iG,HC)=>{var yz=e1(),vz=BC(),bz=WC(),VC=function(a){return function(_,v,h){var D=yz(_),P=bz(D),y=vz(h,P),m;if(a&&v!=v){for(;P>y;)if(m=D[y++],m!=m)return!0}else for(;P>y;y++)if((a||y in D)&&D[y]===v)return a||y||0;return!a&&-1}};HC.exports={includes:VC(!0),indexOf:VC(!1)}});var XC=ht((aG,KC)=>{var Tz=Ps(),K6=oo(),Sz=e1(),xz=GC().indexOf,Ez=U6(),$C=Tz([].push);KC.exports=function(a,_){var v=Sz(a),h=0,D=[],P;for(P in v)!K6(Ez,P)&&K6(v,P)&&$C(D,P);for(;_.length>h;)K6(v,P=_[h++])&&(~xz(D,P)||$C(D,P));return D}});var QC=ht((sG,YC)=>{YC.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var e9=ht(ZC=>{var wz=XC(),Cz=QC(),Az=Cz.concat("length","prototype");ZC.f=Object.getOwnPropertyNames||function(_){return wz(_,Az)}});var r9=ht(t9=>{t9.f=Object.getOwnPropertySymbols});var i9=ht((cG,n9)=>{var Pz=t1(),Dz=Ps(),kz=e9(),Iz=r9(),Nz=a1(),Oz=Dz([].concat);n9.exports=Pz("Reflect","ownKeys")||function(_){var v=kz.f(Nz(_)),h=Iz.f;return h?Oz(v,h(_)):v}});var o9=ht((lG,s9)=>{var a9=oo(),Mz=i9(),Lz=O6(),Rz=dp();s9.exports=function(a,_,v){for(var h=Mz(_),D=Rz.f,P=Lz.f,y=0;y{var jz=Ha(),Jz=aa(),Fz=/#|\.prototype\./,hp=function(a,_){var v=qz[Bz(a)];return v==zz?!0:v==Uz?!1:Jz(_)?jz(_):!!_},Bz=hp.normalize=function(a){return String(a).replace(Fz,".").toLowerCase()},qz=hp.data={},Uz=hp.NATIVE="N",zz=hp.POLYFILL="P";_9.exports=hp});var u9=ht((pG,l9)=>{var X6=Mi(),Wz=O6().f,Vz=J6(),Hz=LC(),Gz=n1(),$z=o9(),Kz=c9();l9.exports=function(a,_){var v=a.target,h=a.global,D=a.stat,P,y,m,C,d,E;if(h?y=X6:D?y=X6[v]||Gz(v,{}):y=(X6[v]||{}).prototype,y)for(m in _){if(d=_[m],a.dontCallGetSet?(E=Wz(y,m),C=E&&E.value):C=y[m],P=Kz(h?m:v+(D?".":"#")+m,a.forced),!P&&C!==void 0){if(typeof d==typeof C)continue;$z(d,C)}(a.sham||C&&C.sham)&&Vz(d,"sham",!0),Hz(y,m,d,a)}}});var p9=ht(()=>{var Xz=u9(),Y6=Mi();Xz({global:!0,forced:Y6.globalThis!==Y6},{globalThis:Y6})});var m9=ht((mG,d9)=>{var f9=G6(),Yz=dp();d9.exports=function(a,_,v){return v.get&&f9(v.get,_,{getter:!0}),v.set&&f9(v.set,_,{setter:!0}),Yz.f(a,_,v)}});var g9=ht((hG,h9)=>{"use strict";var Qz=a1();h9.exports=function(){var a=Qz(this),_="";return a.hasIndices&&(_+="d"),a.global&&(_+="g"),a.ignoreCase&&(_+="i"),a.multiline&&(_+="m"),a.dotAll&&(_+="s"),a.unicode&&(_+="u"),a.unicodeSets&&(_+="v"),a.sticky&&(_+="y"),_}});p9();var Zz=Mi(),eW=As(),tW=m9(),rW=g9(),nW=Ha(),y9=Zz.RegExp,v9=y9.prototype,iW=eW&&nW(function(){var a=!0;try{y9(".","d")}catch{a=!1}var _={},v="",h=a?"dgimsy":"gimsy",D=function(C,d){Object.defineProperty(_,C,{get:function(){return v+=d,!0}})},P={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};a&&(P.hasIndices="d");for(var y in P)D(y,P[y]);var m=Object.getOwnPropertyDescriptor(v9,"flags").get.call(_);return m!==h||v!==h});iW&&tW(v9,"flags",{configurable:!0,get:rW});var iT=Object.defineProperty,aW=Object.getOwnPropertyDescriptor,aT=Object.getOwnPropertyNames,sW=Object.prototype.hasOwnProperty,yp=(a,_)=>function(){return a&&(_=(0,a[aT(a)[0]])(a=0)),_},Ne=(a,_)=>function(){return _||(0,a[aT(a)[0]])((_={exports:{}}).exports,_),_.exports},m1=(a,_)=>{for(var v in _)iT(a,v,{get:_[v],enumerable:!0})},oW=(a,_,v,h)=>{if(_&&typeof _=="object"||typeof _=="function")for(let D of aT(_))!sW.call(a,D)&&D!==v&&iT(a,D,{get:()=>_[D],enumerable:!(h=aW(_,D))||h.enumerable});return a},Li=a=>oW(iT({},"__esModule",{value:!0}),a),cn,ke=yp({""(){cn={env:{},argv:[]}}}),S9=Ne({"src/common/parser-create-error.js"(a,_){"use strict";ke();function v(h,D){let P=new SyntaxError(h+" ("+D.start.line+":"+D.start.column+")");return P.loc=D,P}_.exports=v}}),_W=Ne({"src/utils/try-combinations.js"(a,_){"use strict";ke();function v(){let h;for(var D=arguments.length,P=new Array(D),y=0;yeT,arch:()=>cW,cpus:()=>k9,default:()=>L9,endianness:()=>E9,freemem:()=>P9,getNetworkInterfaces:()=>M9,hostname:()=>w9,loadavg:()=>C9,networkInterfaces:()=>O9,platform:()=>lW,release:()=>N9,tmpDir:()=>Q6,tmpdir:()=>Z6,totalmem:()=>D9,type:()=>I9,uptime:()=>A9});function E9(){if(typeof u1>"u"){var a=new ArrayBuffer(2),_=new Uint8Array(a),v=new Uint16Array(a);if(_[0]=1,_[1]=2,v[0]===258)u1="BE";else if(v[0]===513)u1="LE";else throw new Error("unable to figure out endianess")}return u1}function w9(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function C9(){return[]}function A9(){return 0}function P9(){return Number.MAX_VALUE}function D9(){return Number.MAX_VALUE}function k9(){return[]}function I9(){return"Browser"}function N9(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function O9(){}function M9(){}function cW(){return"javascript"}function lW(){return"browser"}function Q6(){return"/tmp"}var u1,Z6,eT,L9,uW=yp({"node-modules-polyfills:os"(){ke(),Z6=Q6,eT=` +`,L9={EOL:eT,tmpdir:Z6,tmpDir:Q6,networkInterfaces:O9,getNetworkInterfaces:M9,release:N9,type:I9,cpus:k9,totalmem:D9,freemem:P9,uptime:A9,loadavg:C9,hostname:w9,endianness:E9}}}),pW=Ne({"node-modules-polyfills-commonjs:os"(a,_){ke();var v=(uW(),Li(x9));if(v&&v.default){_.exports=v.default;for(let h in v)_.exports[h]=v[h]}else v&&(_.exports=v)}}),fW=Ne({"node_modules/detect-newline/index.js"(a,_){"use strict";ke();var v=h=>{if(typeof h!="string")throw new TypeError("Expected a string");let D=h.match(/(?:\r?\n)/g)||[];if(D.length===0)return;let P=D.filter(m=>m===`\r +`).length,y=D.length-P;return P>y?`\r +`:` +`};_.exports=v,_.exports.graceful=h=>typeof h=="string"&&v(h)||` +`}}),dW=Ne({"node_modules/jest-docblock/build/index.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.extract=M,a.parse=W,a.parseWithComments=K,a.print=ce,a.strip=q;function _(){let me=pW();return _=function(){return me},me}function v(){let me=h(fW());return v=function(){return me},me}function h(me){return me&&me.__esModule?me:{default:me}}var D=/\*\/$/,P=/^\/\*\*?/,y=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,m=/(^|\s+)\/\/([^\r\n]*)/g,C=/^(\r?\n)+/,d=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,E=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,I=/(\r?\n|^) *\* ?/g,c=[];function M(me){let Pe=me.match(y);return Pe?Pe[0].trimLeft():""}function q(me){let Pe=me.match(y);return Pe&&Pe[0]?me.substring(Pe[0].length):me}function W(me){return K(me).pragmas}function K(me){let Pe=(0,v().default)(me)||_().EOL;me=me.replace(P,"").replace(D,"").replace(I,"$1");let te="";for(;te!==me;)te=me,me=me.replace(d,`${Pe}$1 $2${Pe}`);me=me.replace(C,"").trimRight();let he=Object.create(null),De=me.replace(E,"").replace(C,"").trimRight(),R;for(;R=E.exec(me);){let pe=R[2].replace(m,"");typeof he[R[1]]=="string"||Array.isArray(he[R[1]])?he[R[1]]=c.concat(he[R[1]],pe):he[R[1]]=pe}return{comments:De,pragmas:he}}function ce(me){let{comments:Pe="",pragmas:te={}}=me,he=(0,v().default)(Pe)||_().EOL,De="/**",R=" *",pe=" */",Ie=Object.keys(te),Je=Ie.map(ee=>Ce(ee,te[ee])).reduce((ee,je)=>ee.concat(je),[]).map(ee=>`${R} ${ee}${he}`).join("");if(!Pe){if(Ie.length===0)return"";if(Ie.length===1&&!Array.isArray(te[Ie[0]])){let ee=te[Ie[0]];return`${De} ${Ce(Ie[0],ee)[0]}${pe}`}}let Xe=Pe.split(he).map(ee=>`${R} ${ee}`).join(he)+he;return De+he+(Pe?Xe:"")+(Pe&&Ie.length?R+he:"")+Je+pe}function Ce(me,Pe){return c.concat(Pe).map(te=>`@${me} ${te}`.trim())}}}),mW=Ne({"src/common/end-of-line.js"(a,_){"use strict";ke();function v(y){let m=y.indexOf("\r");return m>=0?y.charAt(m+1)===` +`?"crlf":"cr":"lf"}function h(y){switch(y){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function D(y,m){let C;switch(m){case` +`:C=/\n/g;break;case"\r":C=/\r/g;break;case`\r +`:C=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(m)}.`)}let d=y.match(C);return d?d.length:0}function P(y){return y.replace(/\r\n?/g,` +`)}_.exports={guessEndOfLine:v,convertEndOfLineToChars:h,countEndOfLineChars:D,normalizeEndOfLine:P}}}),hW=Ne({"src/language-js/utils/get-shebang.js"(a,_){"use strict";ke();function v(h){if(!h.startsWith("#!"))return"";let D=h.indexOf(` +`);return D===-1?h:h.slice(0,D)}_.exports=v}}),gW=Ne({"src/language-js/pragma.js"(a,_){"use strict";ke();var{parseWithComments:v,strip:h,extract:D,print:P}=dW(),{normalizeEndOfLine:y}=mW(),m=hW();function C(I){let c=m(I);c&&(I=I.slice(c.length+1));let M=D(I),{pragmas:q,comments:W}=v(M);return{shebang:c,text:I,pragmas:q,comments:W}}function d(I){let c=Object.keys(C(I).pragmas);return c.includes("prettier")||c.includes("format")}function E(I){let{shebang:c,text:M,pragmas:q,comments:W}=C(I),K=h(M),ce=P({pragmas:Object.assign({format:""},q),comments:W.trimStart()});return(c?`${c} +`:"")+y(ce)+(K.startsWith(` +`)?` +`:` + +`)+K}_.exports={hasPragma:d,insertPragma:E}}}),R9=Ne({"src/utils/is-non-empty-array.js"(a,_){"use strict";ke();function v(h){return Array.isArray(h)&&h.length>0}_.exports=v}}),j9=Ne({"src/language-js/loc.js"(a,_){"use strict";ke();var v=R9();function h(C){var d,E;let I=C.range?C.range[0]:C.start,c=(d=(E=C.declaration)===null||E===void 0?void 0:E.decorators)!==null&&d!==void 0?d:C.decorators;return v(c)?Math.min(h(c[0]),I):I}function D(C){return C.range?C.range[1]:C.end}function P(C,d){let E=h(C);return Number.isInteger(E)&&E===h(d)}function y(C,d){let E=D(C);return Number.isInteger(E)&&E===D(d)}function m(C,d){return P(C,d)&&y(C,d)}_.exports={locStart:h,locEnd:D,hasSameLocStart:P,hasSameLoc:m}}}),yW=Ne({"src/language-js/parse/utils/create-parser.js"(a,_){"use strict";ke();var{hasPragma:v}=gW(),{locStart:h,locEnd:D}=j9();function P(y){return y=typeof y=="function"?{parse:y}:y,Object.assign({astFormat:"estree",hasPragma:v,locStart:h,locEnd:D},y)}_.exports=P}}),vW=Ne({"src/language-js/parse/utils/replace-hashbang.js"(a,_){"use strict";ke();function v(h){return h.charAt(0)==="#"&&h.charAt(1)==="!"?"//"+h.slice(2):h}_.exports=v}}),bW=Ne({"src/language-js/utils/is-ts-keyword-type.js"(a,_){"use strict";ke();function v(h){let{type:D}=h;return D.startsWith("TS")&&D.endsWith("Keyword")}_.exports=v}}),TW=Ne({"src/language-js/utils/is-block-comment.js"(a,_){"use strict";ke();var v=new Set(["Block","CommentBlock","MultiLine"]),h=D=>v.has(D==null?void 0:D.type);_.exports=h}}),SW=Ne({"src/language-js/utils/is-type-cast-comment.js"(a,_){"use strict";ke();var v=TW();function h(D){return v(D)&&D.value[0]==="*"&&/@(?:type|satisfies)\b/.test(D.value)}_.exports=h}}),xW=Ne({"src/utils/get-last.js"(a,_){"use strict";ke();var v=h=>h[h.length-1];_.exports=v}}),J9=Ne({"src/language-js/parse/postprocess/visit-node.js"(a,_){"use strict";ke();function v(h,D){if(Array.isArray(h)){for(let P=0;P{ce.leadingComments&&ce.leadingComments.some(P)&&K.add(v(ce))}),M=m(M,ce=>{if(ce.type==="ParenthesizedExpression"){let{expression:Ce}=ce;if(Ce.type==="TypeCastExpression")return Ce.range=ce.range,Ce;let me=v(ce);if(!K.has(me))return Ce.extra=Object.assign(Object.assign({},Ce.extra),{},{parenthesized:!0}),Ce}})}return M=m(M,K=>{switch(K.type){case"ChainExpression":return E(K.expression);case"LogicalExpression":{if(I(K))return c(K);break}case"VariableDeclaration":{let ce=y(K.declarations);ce&&ce.init&&W(K,ce);break}case"TSParenthesizedType":return D(K.typeAnnotation)||K.typeAnnotation.type==="TSThisType"||(K.typeAnnotation.range=[v(K),h(K)]),K.typeAnnotation;case"TSTypeParameter":if(typeof K.name=="string"){let ce=v(K);K.name={type:"Identifier",name:K.name,range:[ce,ce+K.name.length]}}break;case"ObjectExpression":if(q.parser==="typescript"){let ce=K.properties.find(Ce=>Ce.type==="Property"&&Ce.value.type==="TSEmptyBodyFunctionExpression");ce&&C(ce.value,"Unexpected token.")}break;case"SequenceExpression":{let ce=y(K.expressions);K.range=[v(K),Math.min(h(ce),h(K))];break}case"TopicReference":q.__isUsingHackPipeline=!0;break;case"ExportAllDeclaration":{let{exported:ce}=K;if(q.parser==="meriyah"&&ce&&ce.type==="Identifier"){let Ce=q.originalText.slice(v(ce),h(ce));(Ce.startsWith('"')||Ce.startsWith("'"))&&(K.exported=Object.assign(Object.assign({},K.exported),{},{type:"Literal",value:K.exported.name,raw:Ce}))}break}case"PropertyDefinition":if(q.parser==="meriyah"&&K.static&&!K.computed&&!K.key){let ce="static",Ce=v(K);Object.assign(K,{static:!1,key:{type:"Identifier",name:ce,range:[Ce,Ce+ce.length]}})}break}}),M;function W(K,ce){q.originalText[h(ce)]!==";"&&(K.range=[v(K),h(ce)])}}function E(M){switch(M.type){case"CallExpression":M.type="OptionalCallExpression",M.callee=E(M.callee);break;case"MemberExpression":M.type="OptionalMemberExpression",M.object=E(M.object);break;case"TSNonNullExpression":M.expression=E(M.expression);break}return M}function I(M){return M.type==="LogicalExpression"&&M.right.type==="LogicalExpression"&&M.operator===M.right.operator}function c(M){return I(M)?c({type:"LogicalExpression",operator:M.operator,left:c({type:"LogicalExpression",operator:M.operator,left:M.left,right:M.right.left,range:[v(M.left),h(M.right.left)]}),right:M.right.right,range:[v(M),h(M)]}):M}_.exports=d}}),vr=Ne({"node_modules/typescript/lib/typescript.js"(a,_){ke();var v=Object.defineProperty,h=Object.getOwnPropertyNames,D=(e,t)=>function(){return e&&(t=(0,e[h(e)[0]])(e=0)),t},P=(e,t)=>function(){return t||(0,e[h(e)[0]])((t={exports:{}}).exports,t),t.exports},y=(e,t)=>{for(var r in t)v(e,r,{get:t[r],enumerable:!0})},m,C,d,E=D({"src/compiler/corePublic.ts"(){"use strict";m="5.0",C="5.0.2",d=(e=>(e[e.LessThan=-1]="LessThan",e[e.EqualTo=0]="EqualTo",e[e.GreaterThan=1]="GreaterThan",e))(d||{})}});function I(e){return e?e.length:0}function c(e,t){if(e)for(let r=0;r=0;r--){let s=t(e[r],r);if(s)return s}}function q(e,t){if(e!==void 0)for(let r=0;r=0;s--){let f=e[s];if(t(f,s))return f}}function he(e,t,r){if(e===void 0)return-1;for(let s=r!=null?r:0;s=0;s--)if(t(e[s],s))return s;return-1}function R(e,t){for(let r=0;r2&&arguments[2]!==void 0?arguments[2]:fa;if(e){for(let s of e)if(r(s,t))return!0}return!1}function Ie(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:fa;return e.length===t.length&&e.every((s,f)=>r(s,t[f]))}function Je(e,t,r){for(let s=r||0;s{let x=t(f,s);if(x!==void 0){let[w,A]=x;w!==void 0&&A!==void 0&&r.set(w,A)}}),r}function la(e,t,r){if(e.has(t))return e.get(t);let s=r();return e.set(t,s),s}function ua(e,t){return e.has(t)?!1:(e.add(t),!0)}function*Ka(e){yield e}function co(e,t,r){let s;if(e){s=[];let f=e.length,x,w,A=0,g=0;for(;A{let[x,w]=t(f,s);r.set(x,w)}),r}function Ke(e,t){if(e)if(t){for(let r of e)if(t(r))return!0}else return e.length>0;return!1}function Et(e,t,r){let s;for(let f=0;fe[w])}function Uc(e,t){let r=[];for(let s of e)qn(r,s,t);return r}function ji(e,t,r){return e.length===0?[]:e.length===1?e.slice():r?m_(e,t,r):Uc(e,t)}function lo(e,t){if(e.length===0)return Bt;let r=e[0],s=[r];for(let f=1;f0&&(f&=-2),f&2&&s(x,g)>0&&(f&=-3),x=g}return f}function Hc(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:fa;if(!e||!t)return e===t;if(e.length!==t.length)return!1;for(let s=0;s0&&Y.assertGreaterThanOrEqual(r(t[x],t[x-1]),0);t:for(let w=f;fw&&Y.assertGreaterThanOrEqual(r(e[f],e[f-1]),0),r(t[x],e[f])){case-1:s.push(t[x]);continue e;case 0:continue e;case 1:continue t}}return s}function tr(e,t){return t===void 0?e:e===void 0?[t]:(e.push(t),e)}function $c(e,t){return e===void 0?t:t===void 0?e:ir(e)?ir(t)?Ft(e,t):tr(e,t):ir(t)?tr(t,e):[e,t]}function po(e,t){return t<0?e.length+t:t}function jr(e,t,r,s){if(t===void 0||t.length===0)return e;if(e===void 0)return t.slice(r,s);r=r===void 0?0:po(t,r),s=s===void 0?t.length:po(t,s);for(let f=r;fr(e[s],e[f])||Vr(s,f))}function Is(e,t){return e.length===0?e:e.slice().sort(t)}function*y_(e){for(let t=e.length-1;t>=0;t--)yield e[t]}function Ns(e,t){let r=Wr(e);return ks(e,r,t),r.map(s=>e[s])}function Kc(e,t,r,s){for(;r>1),g=r(e[A],A);switch(s(g,t)){case-1:x=A+1;break;case 0:return A;case 1:w=A-1;break}}return~x}function Qa(e,t,r,s,f){if(e&&e.length>0){let x=e.length;if(x>0){let w=s===void 0||s<0?0:s,A=f===void 0||w+f>x-1?x-1:w+f,g;for(arguments.length<=2?(g=e[w],w++):g=r;w<=A;)g=t(g,e[w],w),w++;return g}}return r}function Jr(e,t){return ni.call(e,t)}function Qc(e,t){return ni.call(e,t)?e[t]:void 0}function ho(e){let t=[];for(let r in e)ni.call(e,r)&&t.push(r);return t}function T_(e){let t=[];do{let r=Object.getOwnPropertyNames(e);for(let s of r)qn(t,s)}while(e=Object.getPrototypeOf(e));return t}function go(e){let t=[];for(let r in e)ni.call(e,r)&&t.push(e[r]);return t}function yo(e,t){let r=new Array(e);for(let s=0;s1?t-1:0),s=1;s2&&arguments[2]!==void 0?arguments[2]:fa;if(e===t)return!0;if(!e||!t)return!1;for(let s in e)if(ni.call(e,s)&&(!ni.call(t,s)||!r(e[s],t[s])))return!1;for(let s in t)if(ni.call(t,s)&&!ni.call(e,s))return!1;return!0}function Zc(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:rr,s=new Map;for(let f of e){let x=t(f);x!==void 0&&s.set(x,r(f))}return s}function Os(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:rr,s=[];for(let f of e)s[t(f)]=r(f);return s}function bo(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:rr,s=Be();for(let f of e)s.add(t(f),r(f));return s}function el(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:rr;return Za(bo(e,t).values(),r)}function x_(e,t){var r;let s={};if(e)for(let f of e){let x=`${t(f)}`;((r=s[x])!=null?r:s[x]=[]).push(f)}return s}function E_(e){let t={};for(let r in e)ni.call(e,r)&&(t[r]=e[r]);return t}function S(e,t){let r={};for(let s in t)ni.call(t,s)&&(r[s]=t[s]);for(let s in e)ni.call(e,s)&&(r[s]=e[s]);return r}function H(e,t){for(let r in t)ni.call(t,r)&&(e[r]=t[r])}function le(e,t){return t?t.bind(e):void 0}function Be(){let e=new Map;return e.add=rt,e.remove=ut,e}function rt(e,t){let r=this.get(e);return r?r.push(t):this.set(e,r=[t]),r}function ut(e,t){let r=this.get(e);r&&(bT(r,t),r.length||this.delete(e))}function Ht(){return Be()}function Fr(e){let t=(e==null?void 0:e.slice())||[],r=0;function s(){return r===t.length}function f(){t.push(...arguments)}function x(){if(s())throw new Error("Queue is empty");let w=t[r];if(t[r]=void 0,r++,r>100&&r>t.length>>1){let A=t.length-r;t.copyWithin(0,r),t.length=A,r=0}return w}return{enqueue:f,dequeue:x,isEmpty:s}}function Cr(e,t){let r=new Map,s=0;function*f(){for(let w of r.values())ir(w)?yield*w:yield w}let x={has(w){let A=e(w);if(!r.has(A))return!1;let g=r.get(A);if(!ir(g))return t(g,w);for(let B of g)if(t(B,w))return!0;return!1},add(w){let A=e(w);if(r.has(A)){let g=r.get(A);if(ir(g))pe(g,w,t)||(g.push(w),s++);else{let B=g;t(B,w)||(r.set(A,[B,w]),s++)}}else r.set(A,w),s++;return this},delete(w){let A=e(w);if(!r.has(A))return!1;let g=r.get(A);if(ir(g)){for(let B=0;Bf(),[Symbol.toStringTag]:r[Symbol.toStringTag]};return x}function ir(e){return Array.isArray(e)}function en(e){return ir(e)?e:[e]}function Ji(e){return typeof e=="string"}function gi(e){return typeof e=="number"}function ln(e,t){return e!==void 0&&t(e)?e:void 0}function ti(e,t){return e!==void 0&&t(e)?e:Y.fail(`Invalid cast. The supplied value ${e} did not pass the test '${Y.getFunctionName(t)}'.`)}function yn(e){}function w_(){return!1}function vp(){return!0}function C1(){}function rr(e){return e}function bp(e){return e.toLowerCase()}function Tp(e){return G1.test(e)?e.replace(G1,bp):e}function A1(){throw new Error("Not implemented")}function tl(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function An(e){let t=new Map;return r=>{let s=`${typeof r}:${r}`,f=t.get(s);return f===void 0&&!t.has(s)&&(f=e(r),t.set(s,f)),f}}function P1(e){let t=new WeakMap;return r=>{let s=t.get(r);return s===void 0&&!t.has(r)&&(s=e(r),t.set(r,s)),s}}function D1(e,t){return function(){for(var r=arguments.length,s=new Array(r),f=0;fQa(x,(A,g)=>g(A),w)}else return s?x=>s(r(t(e(x)))):r?x=>r(t(e(x))):t?x=>t(e(x)):e?x=>e(x):x=>x}function fa(e,t){return e===t}function Ms(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function To(e,t){return fa(e,t)}function Sp(e,t){return e===t?0:e===void 0?-1:t===void 0?1:et(r,s)===-1?r:s)}function C_(e,t){return e===t?0:e===void 0?-1:t===void 0?1:(e=e.toUpperCase(),t=t.toUpperCase(),et?1:0)}function O1(e,t){return e===t?0:e===void 0?-1:t===void 0?1:(e=e.toLowerCase(),t=t.toLowerCase(),et?1:0)}function ri(e,t){return Sp(e,t)}function rl(e){return e?C_:ri}function M1(){return Ap}function xp(e){Ap!==e&&(Ap=e,K1=void 0)}function L1(e,t){return(K1||(K1=AT(Ap)))(e,t)}function R1(e,t,r,s){return e===t?0:e===void 0?-1:t===void 0?1:s(e[r],t[r])}function j1(e,t){return Vr(e?1:0,t?1:0)}function Ep(e,t,r){let s=Math.max(2,Math.floor(e.length*.34)),f=Math.floor(e.length*.4)+1,x;for(let w of t){let A=r(w);if(A!==void 0&&Math.abs(A.length-e.length)<=s){if(A===e||A.length<3&&A.toLowerCase()!==e.toLowerCase())continue;let g=J1(e,A,f-.1);if(g===void 0)continue;Y.assert(gr?A-r:1),N=Math.floor(t.length>r+A?r+A:t.length);f[0]=A;let X=A;for(let $=1;$r)return;let F=s;s=f,f=F}let w=s[t.length];return w>r?void 0:w}function es(e,t){let r=e.length-t.length;return r>=0&&e.indexOf(t,r)===r}function F1(e,t){return es(e,t)?e.slice(0,e.length-t.length):e}function B1(e,t){return es(e,t)?e.slice(0,e.length-t.length):void 0}function Fi(e,t){return e.indexOf(t)!==-1}function q1(e){let t=e.length;for(let r=t-1;r>0;r--){let s=e.charCodeAt(r);if(s>=48&&s<=57)do--r,s=e.charCodeAt(r);while(r>0&&s>=48&&s<=57);else if(r>4&&(s===110||s===78)){if(--r,s=e.charCodeAt(r),s!==105&&s!==73||(--r,s=e.charCodeAt(r),s!==109&&s!==77))break;--r,s=e.charCodeAt(r)}else break;if(s!==45&&s!==46)break;t=r}return t===e.length?e:e.slice(0,t)}function J(e,t){for(let r=0;rr===t)}function h5(e,t){for(let r=0;rf&&(f=w.prefix.length,s=x)}return s}function Pn(e,t){return e.lastIndexOf(t,0)===0}function v5(e,t){return Pn(e,t)?e.substr(t.length):e}function ST(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:rr;return Pn(r(e),r(t))?e.substring(t.length):void 0}function z1(e,t){let{prefix:r,suffix:s}=e;return t.length>=r.length+s.length&&Pn(t,r)&&es(t,s)}function b5(e,t){return r=>e(r)&&t(r)}function W1(){for(var e=arguments.length,t=new Array(e),r=0;r2&&arguments[2]!==void 0?arguments[2]:" ";return t<=e.length?e:r.repeat(t-e.length)+e}function C5(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:" ";return t<=e.length?e:e+r.repeat(t-e.length)}function A5(e,t){if(e){let r=e.length,s=0;for(;s=0&&os(e.charCodeAt(t));)t--;return e.slice(0,t+1)}function k5(){return typeof cn<"u"&&cn.nextTick&&!cn.browser&&typeof _=="object"}var Bt,V1,ET,H1,wT,ni,CT,G1,$1,AT,K1,Ap,Pp,X1,nl,I5=D({"src/compiler/core.ts"(){"use strict";nn(),Bt=[],V1=new Map,ET=new Set,H1=(e=>(e[e.None=0]="None",e[e.CaseSensitive=1]="CaseSensitive",e[e.CaseInsensitive=2]="CaseInsensitive",e[e.Both=3]="Both",e))(H1||{}),wT=Array.prototype.at?(e,t)=>e==null?void 0:e.at(t):(e,t)=>{if(e&&(t=po(e,t),t(e[e.None=0]="None",e[e.Normal=1]="Normal",e[e.Aggressive=2]="Aggressive",e[e.VeryAggressive=3]="VeryAggressive",e))($1||{}),AT=(()=>{let e,t,r=A();return g;function s(B,N,X){if(B===N)return 0;if(B===void 0)return-1;if(N===void 0)return 1;let F=X(B,N);return F<0?-1:F>0?1:0}function f(B){let N=new Intl.Collator(B,{usage:"sort",sensitivity:"variant"}).compare;return(X,F)=>s(X,F,N)}function x(B){if(B!==void 0)return w();return(X,F)=>s(X,F,N);function N(X,F){return X.localeCompare(F)}}function w(){return(X,F)=>s(X,F,B);function B(X,F){return N(X.toUpperCase(),F.toUpperCase())||N(X,F)}function N(X,F){return XF?1:0}}function A(){return typeof Intl=="object"&&typeof Intl.Collator=="function"?f:typeof String.prototype.localeCompare=="function"&&typeof String.prototype.toLocaleUpperCase=="function"&&"a".localeCompare("B")<0?x:w}function g(B){return B===void 0?e||(e=r(B)):B==="en-US"?t||(t=r(B)):r(B)}})(),Pp=String.prototype.trim?e=>e.trim():e=>X1(nl(e)),X1=String.prototype.trimEnd?e=>e.trimEnd():D5,nl=String.prototype.trimStart?e=>e.trimStart():e=>e.replace(/^\s+/g,"")}}),Y1,Y,PT=D({"src/compiler/debug.ts"(){"use strict";nn(),nn(),Y1=(e=>(e[e.Off=0]="Off",e[e.Error=1]="Error",e[e.Warning=2]="Warning",e[e.Info=3]="Info",e[e.Verbose=4]="Verbose",e))(Y1||{}),(e=>{let t=0;e.currentLogLevel=2,e.isDebugging=!1;function r(ue){return e.currentLogLevel<=ue}e.shouldLog=r;function s(ue,He){e.loggingHost&&r(ue)&&e.loggingHost.log(ue,He)}function f(ue){s(3,ue)}e.log=f,(ue=>{function He(zt){s(1,zt)}ue.error=He;function _t(zt){s(2,zt)}ue.warn=_t;function ft(zt){s(3,zt)}ue.log=ft;function Kt(zt){s(4,zt)}ue.trace=Kt})(f=e.log||(e.log={}));let x={};function w(){return t}e.getAssertionLevel=w;function A(ue){let He=t;if(t=ue,ue>He)for(let _t of ho(x)){let ft=x[_t];ft!==void 0&&e[_t]!==ft.assertion&&ue>=ft.level&&(e[_t]=ft,x[_t]=void 0)}}e.setAssertionLevel=A;function g(ue){return t>=ue}e.shouldAssert=g;function B(ue,He){return g(ue)?!0:(x[He]={level:ue,assertion:e[He]},e[He]=yn,!1)}function N(ue,He){debugger;let _t=new Error(ue?`Debug Failure. ${ue}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(_t,He||N),_t}e.fail=N;function X(ue,He,_t){return N(`${He||"Unexpected node."}\r +Node ${mr(ue.kind)} was unexpected.`,_t||X)}e.failBadSyntaxKind=X;function F(ue,He,_t,ft){ue||(He=He?`False expression: ${He}`:"False expression.",_t&&(He+=`\r +Verbose Debug Information: `+(typeof _t=="string"?_t:_t())),N(He,ft||F))}e.assert=F;function $(ue,He,_t,ft,Kt){if(ue!==He){let zt=_t?ft?`${_t} ${ft}`:_t:"";N(`Expected ${ue} === ${He}. ${zt}`,Kt||$)}}e.assertEqual=$;function ae(ue,He,_t,ft){ue>=He&&N(`Expected ${ue} < ${He}. ${_t||""}`,ft||ae)}e.assertLessThan=ae;function Te(ue,He,_t){ue>He&&N(`Expected ${ue} <= ${He}`,_t||Te)}e.assertLessThanOrEqual=Te;function Se(ue,He,_t){ue= ${He}`,_t||Se)}e.assertGreaterThanOrEqual=Se;function Ye(ue,He,_t){ue==null&&N(He,_t||Ye)}e.assertIsDefined=Ye;function Oe(ue,He,_t){return Ye(ue,He,_t||Oe),ue}e.checkDefined=Oe;function oe(ue,He,_t){for(let ft of ue)Ye(ft,He,_t||oe)}e.assertEachIsDefined=oe;function Ve(ue,He,_t){return oe(ue,He,_t||Ve),ue}e.checkEachDefined=Ve;function pt(ue){let He=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Illegal value:",_t=arguments.length>2?arguments[2]:void 0,ft=typeof ue=="object"&&Jr(ue,"kind")&&Jr(ue,"pos")?"SyntaxKind: "+mr(ue.kind):JSON.stringify(ue);return N(`${He} ${ft}`,_t||pt)}e.assertNever=pt;function Gt(ue,He,_t,ft){B(1,"assertEachNode")&&F(He===void 0||me(ue,He),_t||"Unexpected node.",()=>`Node array did not pass test '${pn(He)}'.`,ft||Gt)}e.assertEachNode=Gt;function Nt(ue,He,_t,ft){B(1,"assertNode")&&F(ue!==void 0&&(He===void 0||He(ue)),_t||"Unexpected node.",()=>`Node ${mr(ue==null?void 0:ue.kind)} did not pass test '${pn(He)}'.`,ft||Nt)}e.assertNode=Nt;function Xt(ue,He,_t,ft){B(1,"assertNotNode")&&F(ue===void 0||He===void 0||!He(ue),_t||"Unexpected node.",()=>`Node ${mr(ue.kind)} should not have passed test '${pn(He)}'.`,ft||Xt)}e.assertNotNode=Xt;function er(ue,He,_t,ft){B(1,"assertOptionalNode")&&F(He===void 0||ue===void 0||He(ue),_t||"Unexpected node.",()=>`Node ${mr(ue==null?void 0:ue.kind)} did not pass test '${pn(He)}'.`,ft||er)}e.assertOptionalNode=er;function Tn(ue,He,_t,ft){B(1,"assertOptionalToken")&&F(He===void 0||ue===void 0||ue.kind===He,_t||"Unexpected node.",()=>`Node ${mr(ue==null?void 0:ue.kind)} was not a '${mr(He)}' token.`,ft||Tn)}e.assertOptionalToken=Tn;function Hr(ue,He,_t){B(1,"assertMissingNode")&&F(ue===void 0,He||"Unexpected node.",()=>`Node ${mr(ue.kind)} was unexpected'.`,_t||Hr)}e.assertMissingNode=Hr;function Gi(ue){}e.type=Gi;function pn(ue){if(typeof ue!="function")return"";if(Jr(ue,"name"))return ue.name;{let He=Function.prototype.toString.call(ue),_t=/^function\s+([\w\$]+)\s*\(/.exec(He);return _t?_t[1]:""}}e.getFunctionName=pn;function fn(ue){return`{ name: ${dl(ue.escapedName)}; flags: ${Sn(ue.flags)}; declarations: ${Ze(ue.declarations,He=>mr(He.kind))} }`}e.formatSymbol=fn;function Ut(){let ue=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,He=arguments.length>1?arguments[1]:void 0,_t=arguments.length>2?arguments[2]:void 0,ft=an(He);if(ue===0)return ft.length>0&&ft[0][0]===0?ft[0][1]:"0";if(_t){let Kt=[],zt=ue;for(let[xe,Le]of ft){if(xe>ue)break;xe!==0&&xe&ue&&(Kt.push(Le),zt&=~xe)}if(zt===0)return Kt.join("|")}else for(let[Kt,zt]of ft)if(Kt===ue)return zt;return ue.toString()}e.formatEnum=Ut;let kn=new Map;function an(ue){let He=kn.get(ue);if(He)return He;let _t=[];for(let Kt in ue){let zt=ue[Kt];typeof zt=="number"&&_t.push([zt,Kt])}let ft=Ns(_t,(Kt,zt)=>Vr(Kt[0],zt[0]));return kn.set(ue,ft),ft}function mr(ue){return Ut(ue,Np,!1)}e.formatSyntaxKind=mr;function $i(ue){return Ut(ue,zp,!1)}e.formatSnippetKind=$i;function dn(ue){return Ut(ue,Op,!0)}e.formatNodeFlags=dn;function Ur(ue){return Ut(ue,Mp,!0)}e.formatModifierFlags=Ur;function Gr(ue){return Ut(ue,Up,!0)}e.formatTransformFlags=Gr;function _r(ue){return Ut(ue,Wp,!0)}e.formatEmitFlags=_r;function Sn(ue){return Ut(ue,jp,!0)}e.formatSymbolFlags=Sn;function In(ue){return Ut(ue,Jp,!0)}e.formatTypeFlags=In;function pr(ue){return Ut(ue,Bp,!0)}e.formatSignatureFlags=pr;function Zt(ue){return Ut(ue,Fp,!0)}e.formatObjectFlags=Zt;function Or(ue){return Ut(ue,il,!0)}e.formatFlowFlags=Or;function Nn(ue){return Ut(ue,Lp,!0)}e.formatRelationComparisonResult=Nn;function ar(ue){return Ut(ue,CheckMode,!0)}e.formatCheckMode=ar;function oi(ue){return Ut(ue,SignatureCheckMode,!0)}e.formatSignatureCheckMode=oi;function cr(ue){return Ut(ue,TypeFacts,!0)}e.formatTypeFacts=cr;let $r=!1,hr;function On(ue){"__debugFlowFlags"in ue||Object.defineProperties(ue,{__tsDebuggerDisplay:{value(){let He=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",_t=this.flags&~(2048-1);return`${He}${_t?` (${Or(_t)})`:""}`}},__debugFlowFlags:{get(){return Ut(this.flags,il,!0)}},__debugToString:{value(){return St(this)}}})}function nr(ue){$r&&(typeof Object.setPrototypeOf=="function"?(hr||(hr=Object.create(Object.prototype),On(hr)),Object.setPrototypeOf(ue,hr)):On(ue))}e.attachFlowNodeDebugInfo=nr;let br;function Kr(ue){"__tsDebuggerDisplay"in ue||Object.defineProperties(ue,{__tsDebuggerDisplay:{value(He){return He=String(He).replace(/(?:,[\s\w\d_]+:[^,]+)+\]$/,"]"),`NodeArray ${He}`}}})}function wa(ue){$r&&(typeof Object.setPrototypeOf=="function"?(br||(br=Object.create(Array.prototype),Kr(br)),Object.setPrototypeOf(ue,br)):Kr(ue))}e.attachNodeArrayDebugInfo=wa;function $n(){if($r)return;let ue=new WeakMap,He=new WeakMap;Object.defineProperties(lr.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let ft=this.flags&33554432?"TransientSymbol":"Symbol",Kt=this.flags&-33554433;return`${ft} '${rf(this)}'${Kt?` (${Sn(Kt)})`:""}`}},__debugFlags:{get(){return Sn(this.flags)}}}),Object.defineProperties(lr.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let ft=this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&67359327?`IntrinsicType ${this.intrinsicName}`:this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",Kt=this.flags&524288?this.objectFlags&-1344:0;return`${ft}${this.symbol?` '${rf(this.symbol)}'`:""}${Kt?` (${Zt(Kt)})`:""}`}},__debugFlags:{get(){return In(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?Zt(this.objectFlags):""}},__debugTypeToString:{value(){let ft=ue.get(this);return ft===void 0&&(ft=this.checker.typeToString(this),ue.set(this,ft)),ft}}}),Object.defineProperties(lr.getSignatureConstructor().prototype,{__debugFlags:{get(){return pr(this.flags)}},__debugSignatureToString:{value(){var ft;return(ft=this.checker)==null?void 0:ft.signatureToString(this)}}});let _t=[lr.getNodeConstructor(),lr.getIdentifierConstructor(),lr.getTokenConstructor(),lr.getSourceFileConstructor()];for(let ft of _t)Jr(ft.prototype,"__debugKind")||Object.defineProperties(ft.prototype,{__tsDebuggerDisplay:{value(){return`${cs(this)?"GeneratedIdentifier":yt(this)?`Identifier '${qr(this)}'`:vn(this)?`PrivateIdentifier '${qr(this)}'`:Gn(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:zs(this)?`NumericLiteral ${this.text}`:U2(this)?`BigIntLiteral ${this.text}n`:Fo(this)?"TypeParameterDeclaration":Vs(this)?"ParameterDeclaration":nc(this)?"ConstructorDeclaration":Gl(this)?"GetAccessorDeclaration":ic(this)?"SetAccessorDeclaration":V2(this)?"CallSignatureDeclaration":R8(this)?"ConstructSignatureDeclaration":H2(this)?"IndexSignatureDeclaration":j8(this)?"TypePredicateNode":ac(this)?"TypeReferenceNode":$l(this)?"FunctionTypeNode":G2(this)?"ConstructorTypeNode":J8(this)?"TypeQueryNode":id(this)?"TypeLiteralNode":F8(this)?"ArrayTypeNode":B8(this)?"TupleTypeNode":q8(this)?"OptionalTypeNode":U8(this)?"RestTypeNode":z8(this)?"UnionTypeNode":W8(this)?"IntersectionTypeNode":V8(this)?"ConditionalTypeNode":H8(this)?"InferTypeNode":K2(this)?"ParenthesizedTypeNode":X2(this)?"ThisTypeNode":G8(this)?"TypeOperatorNode":$8(this)?"IndexedAccessTypeNode":K8(this)?"MappedTypeNode":Y2(this)?"LiteralTypeNode":$2(this)?"NamedTupleMember":Kl(this)?"ImportTypeNode":mr(this.kind)}${this.flags?` (${dn(this.flags)})`:""}`}},__debugKind:{get(){return mr(this.kind)}},__debugNodeFlags:{get(){return dn(this.flags)}},__debugModifierFlags:{get(){return Ur(Y4(this))}},__debugTransformFlags:{get(){return Gr(this.transformFlags)}},__debugIsParseTreeNode:{get(){return pl(this)}},__debugEmitFlags:{get(){return _r(xi(this))}},__debugGetText:{value(Kt){if(fs(this))return"";let zt=He.get(this);if(zt===void 0){let xe=fl(this),Le=xe&&Si(xe);zt=Le?No(Le,xe,Kt):"",He.set(this,zt)}return zt}}});$r=!0}e.enableDebugInfo=$n;function Ki(ue){let He=ue&7,_t=He===0?"in out":He===3?"[bivariant]":He===2?"in":He===1?"out":He===4?"[independent]":"";return ue&8?_t+=" (unmeasurable)":ue&16&&(_t+=" (unreliable)"),_t}e.formatVariance=Ki;class Mn{__debugToString(){var He;switch(this.kind){case 3:return((He=this.debugInfo)==null?void 0:He.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return ce(this.sources,this.targets||Ze(this.sources,()=>"any"),(_t,ft)=>`${_t.__debugTypeToString()} -> ${typeof ft=="string"?ft:ft.__debugTypeToString()}`).join(", ");case 2:return ce(this.sources,this.targets,(_t,ft)=>`${_t.__debugTypeToString()} -> ${ft().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` +`).join(` + `)} +m2: ${this.mapper2.__debugToString().split(` +`).join(` + `)}`;default:return pt(this)}}}e.DebugTypeMapper=Mn;function _i(ue){return e.isDebugging?Object.setPrototypeOf(ue,Mn.prototype):ue}e.attachDebugPrototypeIfDebug=_i;function Ca(ue){return console.log(St(ue))}e.printControlFlowGraph=Ca;function St(ue){let He=-1;function _t(U){return U.id||(U.id=He,He--),U.id}let ft;(U=>{U.lr="\u2500",U.ud="\u2502",U.dr="\u256D",U.dl="\u256E",U.ul="\u256F",U.ur="\u2570",U.udr="\u251C",U.udl="\u2524",U.dlr="\u252C",U.ulr="\u2534",U.udlr="\u256B"})(ft||(ft={}));let Kt;(U=>{U[U.None=0]="None",U[U.Up=1]="Up",U[U.Down=2]="Down",U[U.Left=4]="Left",U[U.Right=8]="Right",U[U.UpDown=3]="UpDown",U[U.LeftRight=12]="LeftRight",U[U.UpLeft=5]="UpLeft",U[U.UpRight=9]="UpRight",U[U.DownLeft=6]="DownLeft",U[U.DownRight=10]="DownRight",U[U.UpDownLeft=7]="UpDownLeft",U[U.UpDownRight=11]="UpDownRight",U[U.UpLeftRight=13]="UpLeftRight",U[U.DownLeftRight=14]="DownLeftRight",U[U.UpDownLeftRight=15]="UpDownLeftRight",U[U.NoChildren=16]="NoChildren"})(Kt||(Kt={}));let zt=2032,xe=882,Le=Object.create(null),Re=[],ot=[],Ct=Aa(ue,new Set);for(let U of Re)U.text=xn(U.flowNode,U.circular),$s(U);let Mt=li(Ct),It=Yi(Mt);return Qi(Ct,0),Dt();function Mr(U){return!!(U.flags&128)}function gr(U){return!!(U.flags&12)&&!!U.antecedents}function Ln(U){return!!(U.flags&zt)}function ys(U){return!!(U.flags&xe)}function ci(U){let L=[];for(let fe of U.edges)fe.source===U&&L.push(fe.target);return L}function Xi(U){let L=[];for(let fe of U.edges)fe.target===U&&L.push(fe.source);return L}function Aa(U,L){let fe=_t(U),T=Le[fe];if(T&&L.has(U))return T.circular=!0,T={id:-1,flowNode:U,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Re.push(T),T;if(L.add(U),!T)if(Le[fe]=T={id:fe,flowNode:U,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Re.push(T),gr(U))for(let it of U.antecedents)vs(T,it,L);else Ln(U)&&vs(T,U.antecedent,L);return L.delete(U),T}function vs(U,L,fe){let T=Aa(L,fe),it={source:U,target:T};ot.push(it),U.edges.push(it),T.edges.push(it)}function $s(U){if(U.level!==-1)return U.level;let L=0;for(let fe of Xi(U))L=Math.max(L,$s(fe)+1);return U.level=L}function li(U){let L=0;for(let fe of ci(U))L=Math.max(L,li(fe));return L+1}function Yi(U){let L=Z(Array(U),0);for(let fe of Re)L[fe.level]=Math.max(L[fe.level],fe.text.length);return L}function Qi(U,L){if(U.lane===-1){U.lane=L,U.endLane=L;let fe=ci(U);for(let T=0;T0&&L++;let it=fe[T];Qi(it,L),it.endLane>U.endLane&&(L=it.endLane)}U.endLane=L}}function bs(U){if(U&2)return"Start";if(U&4)return"Branch";if(U&8)return"Loop";if(U&16)return"Assignment";if(U&32)return"True";if(U&64)return"False";if(U&128)return"SwitchClause";if(U&256)return"ArrayMutation";if(U&512)return"Call";if(U&1024)return"ReduceLabel";if(U&1)return"Unreachable";throw new Error}function Ai(U){let L=Si(U);return No(L,U,!1)}function xn(U,L){let fe=bs(U.flags);if(L&&(fe=`${fe}#${_t(U)}`),ys(U))U.node&&(fe+=` (${Ai(U.node)})`);else if(Mr(U)){let T=[];for(let it=U.clauseStart;itMath.max(_e,Ge.lane),0)+1,fe=Z(Array(L),""),T=It.map(()=>Array(L)),it=It.map(()=>Z(Array(L),0));for(let _e of Re){T[_e.level][_e.lane]=_e;let Ge=ci(_e);for(let jt=0;jt0&&($t|=1),jt0&&($t|=1),jt0?it[_e-1][Ge]:0,jt=Ge>0?it[_e][Ge-1]:0,Yt=it[_e][Ge];Yt||(bt&8&&(Yt|=12),jt&2&&(Yt|=3),it[_e][Ge]=Yt)}for(let _e=0;_e0?U.repeat(L):"";let fe="";for(;fe.length{},O5=()=>{},M5=()=>{},ts=Date.now,L5=()=>{},Dp=new Proxy(()=>{},{get:()=>Dp});function DT(e){var t;if(Q1){let r=(t=Z1.get(e))!=null?t:0;Z1.set(e,r+1),Ip.set(e,ts()),kp==null||kp.mark(e),typeof onProfilerEvent=="function"&&onProfilerEvent(e)}}function R5(e,t,r){var s,f;if(Q1){let x=(s=r!==void 0?Ip.get(r):void 0)!=null?s:ts(),w=(f=t!==void 0?Ip.get(t):void 0)!=null?f:kT,A=eg.get(e)||0;eg.set(e,A+(x-w)),kp==null||kp.measure(e,t,r)}}var kp,j5,Q1,kT,Ip,Z1,eg,ZV=D({"src/compiler/performance.ts"(){"use strict";nn(),j5={enter:yn,exit:yn},Q1=!1,kT=ts(),Ip=new Map,Z1=new Map,eg=new Map}}),IT=()=>{},J5=()=>{},rs;function F5(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=qp[e.category];return t?r.toLowerCase():r}var Np,Op,Mp,tg,Lp,rg,ng,il,ig,Rp,ag,sg,og,_g,cg,lg,ug,pg,fg,dg,mg,hg,gg,yg,vg,jp,bg,Tg,Sg,xg,Jp,Fp,Eg,wg,Cg,Ag,Pg,Bp,Dg,kg,Ig,Ng,Og,Mg,qp,Lg,Rg,jg,Jg,Fg,Bg,qg,Ug,zg,Wg,Vg,Hg,Gg,$g,Kg,Up,zp,Wp,Xg,Yg,Qg,Zg,ey,ty,ry,ny,Vp,NT=D({"src/compiler/types.ts"(){"use strict";Np=(e=>(e[e.Unknown=0]="Unknown",e[e.EndOfFileToken=1]="EndOfFileToken",e[e.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",e[e.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",e[e.NewLineTrivia=4]="NewLineTrivia",e[e.WhitespaceTrivia=5]="WhitespaceTrivia",e[e.ShebangTrivia=6]="ShebangTrivia",e[e.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",e[e.NumericLiteral=8]="NumericLiteral",e[e.BigIntLiteral=9]="BigIntLiteral",e[e.StringLiteral=10]="StringLiteral",e[e.JsxText=11]="JsxText",e[e.JsxTextAllWhiteSpaces=12]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=13]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=14]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=15]="TemplateHead",e[e.TemplateMiddle=16]="TemplateMiddle",e[e.TemplateTail=17]="TemplateTail",e[e.OpenBraceToken=18]="OpenBraceToken",e[e.CloseBraceToken=19]="CloseBraceToken",e[e.OpenParenToken=20]="OpenParenToken",e[e.CloseParenToken=21]="CloseParenToken",e[e.OpenBracketToken=22]="OpenBracketToken",e[e.CloseBracketToken=23]="CloseBracketToken",e[e.DotToken=24]="DotToken",e[e.DotDotDotToken=25]="DotDotDotToken",e[e.SemicolonToken=26]="SemicolonToken",e[e.CommaToken=27]="CommaToken",e[e.QuestionDotToken=28]="QuestionDotToken",e[e.LessThanToken=29]="LessThanToken",e[e.LessThanSlashToken=30]="LessThanSlashToken",e[e.GreaterThanToken=31]="GreaterThanToken",e[e.LessThanEqualsToken=32]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=33]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=34]="EqualsEqualsToken",e[e.ExclamationEqualsToken=35]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=36]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=37]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=38]="EqualsGreaterThanToken",e[e.PlusToken=39]="PlusToken",e[e.MinusToken=40]="MinusToken",e[e.AsteriskToken=41]="AsteriskToken",e[e.AsteriskAsteriskToken=42]="AsteriskAsteriskToken",e[e.SlashToken=43]="SlashToken",e[e.PercentToken=44]="PercentToken",e[e.PlusPlusToken=45]="PlusPlusToken",e[e.MinusMinusToken=46]="MinusMinusToken",e[e.LessThanLessThanToken=47]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=48]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=49]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=50]="AmpersandToken",e[e.BarToken=51]="BarToken",e[e.CaretToken=52]="CaretToken",e[e.ExclamationToken=53]="ExclamationToken",e[e.TildeToken=54]="TildeToken",e[e.AmpersandAmpersandToken=55]="AmpersandAmpersandToken",e[e.BarBarToken=56]="BarBarToken",e[e.QuestionToken=57]="QuestionToken",e[e.ColonToken=58]="ColonToken",e[e.AtToken=59]="AtToken",e[e.QuestionQuestionToken=60]="QuestionQuestionToken",e[e.BacktickToken=61]="BacktickToken",e[e.HashToken=62]="HashToken",e[e.EqualsToken=63]="EqualsToken",e[e.PlusEqualsToken=64]="PlusEqualsToken",e[e.MinusEqualsToken=65]="MinusEqualsToken",e[e.AsteriskEqualsToken=66]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=67]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=68]="SlashEqualsToken",e[e.PercentEqualsToken=69]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=70]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=71]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=73]="AmpersandEqualsToken",e[e.BarEqualsToken=74]="BarEqualsToken",e[e.BarBarEqualsToken=75]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=76]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=77]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=78]="CaretEqualsToken",e[e.Identifier=79]="Identifier",e[e.PrivateIdentifier=80]="PrivateIdentifier",e[e.BreakKeyword=81]="BreakKeyword",e[e.CaseKeyword=82]="CaseKeyword",e[e.CatchKeyword=83]="CatchKeyword",e[e.ClassKeyword=84]="ClassKeyword",e[e.ConstKeyword=85]="ConstKeyword",e[e.ContinueKeyword=86]="ContinueKeyword",e[e.DebuggerKeyword=87]="DebuggerKeyword",e[e.DefaultKeyword=88]="DefaultKeyword",e[e.DeleteKeyword=89]="DeleteKeyword",e[e.DoKeyword=90]="DoKeyword",e[e.ElseKeyword=91]="ElseKeyword",e[e.EnumKeyword=92]="EnumKeyword",e[e.ExportKeyword=93]="ExportKeyword",e[e.ExtendsKeyword=94]="ExtendsKeyword",e[e.FalseKeyword=95]="FalseKeyword",e[e.FinallyKeyword=96]="FinallyKeyword",e[e.ForKeyword=97]="ForKeyword",e[e.FunctionKeyword=98]="FunctionKeyword",e[e.IfKeyword=99]="IfKeyword",e[e.ImportKeyword=100]="ImportKeyword",e[e.InKeyword=101]="InKeyword",e[e.InstanceOfKeyword=102]="InstanceOfKeyword",e[e.NewKeyword=103]="NewKeyword",e[e.NullKeyword=104]="NullKeyword",e[e.ReturnKeyword=105]="ReturnKeyword",e[e.SuperKeyword=106]="SuperKeyword",e[e.SwitchKeyword=107]="SwitchKeyword",e[e.ThisKeyword=108]="ThisKeyword",e[e.ThrowKeyword=109]="ThrowKeyword",e[e.TrueKeyword=110]="TrueKeyword",e[e.TryKeyword=111]="TryKeyword",e[e.TypeOfKeyword=112]="TypeOfKeyword",e[e.VarKeyword=113]="VarKeyword",e[e.VoidKeyword=114]="VoidKeyword",e[e.WhileKeyword=115]="WhileKeyword",e[e.WithKeyword=116]="WithKeyword",e[e.ImplementsKeyword=117]="ImplementsKeyword",e[e.InterfaceKeyword=118]="InterfaceKeyword",e[e.LetKeyword=119]="LetKeyword",e[e.PackageKeyword=120]="PackageKeyword",e[e.PrivateKeyword=121]="PrivateKeyword",e[e.ProtectedKeyword=122]="ProtectedKeyword",e[e.PublicKeyword=123]="PublicKeyword",e[e.StaticKeyword=124]="StaticKeyword",e[e.YieldKeyword=125]="YieldKeyword",e[e.AbstractKeyword=126]="AbstractKeyword",e[e.AccessorKeyword=127]="AccessorKeyword",e[e.AsKeyword=128]="AsKeyword",e[e.AssertsKeyword=129]="AssertsKeyword",e[e.AssertKeyword=130]="AssertKeyword",e[e.AnyKeyword=131]="AnyKeyword",e[e.AsyncKeyword=132]="AsyncKeyword",e[e.AwaitKeyword=133]="AwaitKeyword",e[e.BooleanKeyword=134]="BooleanKeyword",e[e.ConstructorKeyword=135]="ConstructorKeyword",e[e.DeclareKeyword=136]="DeclareKeyword",e[e.GetKeyword=137]="GetKeyword",e[e.InferKeyword=138]="InferKeyword",e[e.IntrinsicKeyword=139]="IntrinsicKeyword",e[e.IsKeyword=140]="IsKeyword",e[e.KeyOfKeyword=141]="KeyOfKeyword",e[e.ModuleKeyword=142]="ModuleKeyword",e[e.NamespaceKeyword=143]="NamespaceKeyword",e[e.NeverKeyword=144]="NeverKeyword",e[e.OutKeyword=145]="OutKeyword",e[e.ReadonlyKeyword=146]="ReadonlyKeyword",e[e.RequireKeyword=147]="RequireKeyword",e[e.NumberKeyword=148]="NumberKeyword",e[e.ObjectKeyword=149]="ObjectKeyword",e[e.SatisfiesKeyword=150]="SatisfiesKeyword",e[e.SetKeyword=151]="SetKeyword",e[e.StringKeyword=152]="StringKeyword",e[e.SymbolKeyword=153]="SymbolKeyword",e[e.TypeKeyword=154]="TypeKeyword",e[e.UndefinedKeyword=155]="UndefinedKeyword",e[e.UniqueKeyword=156]="UniqueKeyword",e[e.UnknownKeyword=157]="UnknownKeyword",e[e.FromKeyword=158]="FromKeyword",e[e.GlobalKeyword=159]="GlobalKeyword",e[e.BigIntKeyword=160]="BigIntKeyword",e[e.OverrideKeyword=161]="OverrideKeyword",e[e.OfKeyword=162]="OfKeyword",e[e.QualifiedName=163]="QualifiedName",e[e.ComputedPropertyName=164]="ComputedPropertyName",e[e.TypeParameter=165]="TypeParameter",e[e.Parameter=166]="Parameter",e[e.Decorator=167]="Decorator",e[e.PropertySignature=168]="PropertySignature",e[e.PropertyDeclaration=169]="PropertyDeclaration",e[e.MethodSignature=170]="MethodSignature",e[e.MethodDeclaration=171]="MethodDeclaration",e[e.ClassStaticBlockDeclaration=172]="ClassStaticBlockDeclaration",e[e.Constructor=173]="Constructor",e[e.GetAccessor=174]="GetAccessor",e[e.SetAccessor=175]="SetAccessor",e[e.CallSignature=176]="CallSignature",e[e.ConstructSignature=177]="ConstructSignature",e[e.IndexSignature=178]="IndexSignature",e[e.TypePredicate=179]="TypePredicate",e[e.TypeReference=180]="TypeReference",e[e.FunctionType=181]="FunctionType",e[e.ConstructorType=182]="ConstructorType",e[e.TypeQuery=183]="TypeQuery",e[e.TypeLiteral=184]="TypeLiteral",e[e.ArrayType=185]="ArrayType",e[e.TupleType=186]="TupleType",e[e.OptionalType=187]="OptionalType",e[e.RestType=188]="RestType",e[e.UnionType=189]="UnionType",e[e.IntersectionType=190]="IntersectionType",e[e.ConditionalType=191]="ConditionalType",e[e.InferType=192]="InferType",e[e.ParenthesizedType=193]="ParenthesizedType",e[e.ThisType=194]="ThisType",e[e.TypeOperator=195]="TypeOperator",e[e.IndexedAccessType=196]="IndexedAccessType",e[e.MappedType=197]="MappedType",e[e.LiteralType=198]="LiteralType",e[e.NamedTupleMember=199]="NamedTupleMember",e[e.TemplateLiteralType=200]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=201]="TemplateLiteralTypeSpan",e[e.ImportType=202]="ImportType",e[e.ObjectBindingPattern=203]="ObjectBindingPattern",e[e.ArrayBindingPattern=204]="ArrayBindingPattern",e[e.BindingElement=205]="BindingElement",e[e.ArrayLiteralExpression=206]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=207]="ObjectLiteralExpression",e[e.PropertyAccessExpression=208]="PropertyAccessExpression",e[e.ElementAccessExpression=209]="ElementAccessExpression",e[e.CallExpression=210]="CallExpression",e[e.NewExpression=211]="NewExpression",e[e.TaggedTemplateExpression=212]="TaggedTemplateExpression",e[e.TypeAssertionExpression=213]="TypeAssertionExpression",e[e.ParenthesizedExpression=214]="ParenthesizedExpression",e[e.FunctionExpression=215]="FunctionExpression",e[e.ArrowFunction=216]="ArrowFunction",e[e.DeleteExpression=217]="DeleteExpression",e[e.TypeOfExpression=218]="TypeOfExpression",e[e.VoidExpression=219]="VoidExpression",e[e.AwaitExpression=220]="AwaitExpression",e[e.PrefixUnaryExpression=221]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=222]="PostfixUnaryExpression",e[e.BinaryExpression=223]="BinaryExpression",e[e.ConditionalExpression=224]="ConditionalExpression",e[e.TemplateExpression=225]="TemplateExpression",e[e.YieldExpression=226]="YieldExpression",e[e.SpreadElement=227]="SpreadElement",e[e.ClassExpression=228]="ClassExpression",e[e.OmittedExpression=229]="OmittedExpression",e[e.ExpressionWithTypeArguments=230]="ExpressionWithTypeArguments",e[e.AsExpression=231]="AsExpression",e[e.NonNullExpression=232]="NonNullExpression",e[e.MetaProperty=233]="MetaProperty",e[e.SyntheticExpression=234]="SyntheticExpression",e[e.SatisfiesExpression=235]="SatisfiesExpression",e[e.TemplateSpan=236]="TemplateSpan",e[e.SemicolonClassElement=237]="SemicolonClassElement",e[e.Block=238]="Block",e[e.EmptyStatement=239]="EmptyStatement",e[e.VariableStatement=240]="VariableStatement",e[e.ExpressionStatement=241]="ExpressionStatement",e[e.IfStatement=242]="IfStatement",e[e.DoStatement=243]="DoStatement",e[e.WhileStatement=244]="WhileStatement",e[e.ForStatement=245]="ForStatement",e[e.ForInStatement=246]="ForInStatement",e[e.ForOfStatement=247]="ForOfStatement",e[e.ContinueStatement=248]="ContinueStatement",e[e.BreakStatement=249]="BreakStatement",e[e.ReturnStatement=250]="ReturnStatement",e[e.WithStatement=251]="WithStatement",e[e.SwitchStatement=252]="SwitchStatement",e[e.LabeledStatement=253]="LabeledStatement",e[e.ThrowStatement=254]="ThrowStatement",e[e.TryStatement=255]="TryStatement",e[e.DebuggerStatement=256]="DebuggerStatement",e[e.VariableDeclaration=257]="VariableDeclaration",e[e.VariableDeclarationList=258]="VariableDeclarationList",e[e.FunctionDeclaration=259]="FunctionDeclaration",e[e.ClassDeclaration=260]="ClassDeclaration",e[e.InterfaceDeclaration=261]="InterfaceDeclaration",e[e.TypeAliasDeclaration=262]="TypeAliasDeclaration",e[e.EnumDeclaration=263]="EnumDeclaration",e[e.ModuleDeclaration=264]="ModuleDeclaration",e[e.ModuleBlock=265]="ModuleBlock",e[e.CaseBlock=266]="CaseBlock",e[e.NamespaceExportDeclaration=267]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=268]="ImportEqualsDeclaration",e[e.ImportDeclaration=269]="ImportDeclaration",e[e.ImportClause=270]="ImportClause",e[e.NamespaceImport=271]="NamespaceImport",e[e.NamedImports=272]="NamedImports",e[e.ImportSpecifier=273]="ImportSpecifier",e[e.ExportAssignment=274]="ExportAssignment",e[e.ExportDeclaration=275]="ExportDeclaration",e[e.NamedExports=276]="NamedExports",e[e.NamespaceExport=277]="NamespaceExport",e[e.ExportSpecifier=278]="ExportSpecifier",e[e.MissingDeclaration=279]="MissingDeclaration",e[e.ExternalModuleReference=280]="ExternalModuleReference",e[e.JsxElement=281]="JsxElement",e[e.JsxSelfClosingElement=282]="JsxSelfClosingElement",e[e.JsxOpeningElement=283]="JsxOpeningElement",e[e.JsxClosingElement=284]="JsxClosingElement",e[e.JsxFragment=285]="JsxFragment",e[e.JsxOpeningFragment=286]="JsxOpeningFragment",e[e.JsxClosingFragment=287]="JsxClosingFragment",e[e.JsxAttribute=288]="JsxAttribute",e[e.JsxAttributes=289]="JsxAttributes",e[e.JsxSpreadAttribute=290]="JsxSpreadAttribute",e[e.JsxExpression=291]="JsxExpression",e[e.CaseClause=292]="CaseClause",e[e.DefaultClause=293]="DefaultClause",e[e.HeritageClause=294]="HeritageClause",e[e.CatchClause=295]="CatchClause",e[e.AssertClause=296]="AssertClause",e[e.AssertEntry=297]="AssertEntry",e[e.ImportTypeAssertionContainer=298]="ImportTypeAssertionContainer",e[e.PropertyAssignment=299]="PropertyAssignment",e[e.ShorthandPropertyAssignment=300]="ShorthandPropertyAssignment",e[e.SpreadAssignment=301]="SpreadAssignment",e[e.EnumMember=302]="EnumMember",e[e.UnparsedPrologue=303]="UnparsedPrologue",e[e.UnparsedPrepend=304]="UnparsedPrepend",e[e.UnparsedText=305]="UnparsedText",e[e.UnparsedInternalText=306]="UnparsedInternalText",e[e.UnparsedSyntheticReference=307]="UnparsedSyntheticReference",e[e.SourceFile=308]="SourceFile",e[e.Bundle=309]="Bundle",e[e.UnparsedSource=310]="UnparsedSource",e[e.InputFiles=311]="InputFiles",e[e.JSDocTypeExpression=312]="JSDocTypeExpression",e[e.JSDocNameReference=313]="JSDocNameReference",e[e.JSDocMemberName=314]="JSDocMemberName",e[e.JSDocAllType=315]="JSDocAllType",e[e.JSDocUnknownType=316]="JSDocUnknownType",e[e.JSDocNullableType=317]="JSDocNullableType",e[e.JSDocNonNullableType=318]="JSDocNonNullableType",e[e.JSDocOptionalType=319]="JSDocOptionalType",e[e.JSDocFunctionType=320]="JSDocFunctionType",e[e.JSDocVariadicType=321]="JSDocVariadicType",e[e.JSDocNamepathType=322]="JSDocNamepathType",e[e.JSDoc=323]="JSDoc",e[e.JSDocComment=323]="JSDocComment",e[e.JSDocText=324]="JSDocText",e[e.JSDocTypeLiteral=325]="JSDocTypeLiteral",e[e.JSDocSignature=326]="JSDocSignature",e[e.JSDocLink=327]="JSDocLink",e[e.JSDocLinkCode=328]="JSDocLinkCode",e[e.JSDocLinkPlain=329]="JSDocLinkPlain",e[e.JSDocTag=330]="JSDocTag",e[e.JSDocAugmentsTag=331]="JSDocAugmentsTag",e[e.JSDocImplementsTag=332]="JSDocImplementsTag",e[e.JSDocAuthorTag=333]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=334]="JSDocDeprecatedTag",e[e.JSDocClassTag=335]="JSDocClassTag",e[e.JSDocPublicTag=336]="JSDocPublicTag",e[e.JSDocPrivateTag=337]="JSDocPrivateTag",e[e.JSDocProtectedTag=338]="JSDocProtectedTag",e[e.JSDocReadonlyTag=339]="JSDocReadonlyTag",e[e.JSDocOverrideTag=340]="JSDocOverrideTag",e[e.JSDocCallbackTag=341]="JSDocCallbackTag",e[e.JSDocOverloadTag=342]="JSDocOverloadTag",e[e.JSDocEnumTag=343]="JSDocEnumTag",e[e.JSDocParameterTag=344]="JSDocParameterTag",e[e.JSDocReturnTag=345]="JSDocReturnTag",e[e.JSDocThisTag=346]="JSDocThisTag",e[e.JSDocTypeTag=347]="JSDocTypeTag",e[e.JSDocTemplateTag=348]="JSDocTemplateTag",e[e.JSDocTypedefTag=349]="JSDocTypedefTag",e[e.JSDocSeeTag=350]="JSDocSeeTag",e[e.JSDocPropertyTag=351]="JSDocPropertyTag",e[e.JSDocThrowsTag=352]="JSDocThrowsTag",e[e.JSDocSatisfiesTag=353]="JSDocSatisfiesTag",e[e.SyntaxList=354]="SyntaxList",e[e.NotEmittedStatement=355]="NotEmittedStatement",e[e.PartiallyEmittedExpression=356]="PartiallyEmittedExpression",e[e.CommaListExpression=357]="CommaListExpression",e[e.MergeDeclarationMarker=358]="MergeDeclarationMarker",e[e.EndOfDeclarationMarker=359]="EndOfDeclarationMarker",e[e.SyntheticReferenceExpression=360]="SyntheticReferenceExpression",e[e.Count=361]="Count",e[e.FirstAssignment=63]="FirstAssignment",e[e.LastAssignment=78]="LastAssignment",e[e.FirstCompoundAssignment=64]="FirstCompoundAssignment",e[e.LastCompoundAssignment=78]="LastCompoundAssignment",e[e.FirstReservedWord=81]="FirstReservedWord",e[e.LastReservedWord=116]="LastReservedWord",e[e.FirstKeyword=81]="FirstKeyword",e[e.LastKeyword=162]="LastKeyword",e[e.FirstFutureReservedWord=117]="FirstFutureReservedWord",e[e.LastFutureReservedWord=125]="LastFutureReservedWord",e[e.FirstTypeNode=179]="FirstTypeNode",e[e.LastTypeNode=202]="LastTypeNode",e[e.FirstPunctuation=18]="FirstPunctuation",e[e.LastPunctuation=78]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=162]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=8]="FirstLiteralToken",e[e.LastLiteralToken=14]="LastLiteralToken",e[e.FirstTemplateToken=14]="FirstTemplateToken",e[e.LastTemplateToken=17]="LastTemplateToken",e[e.FirstBinaryOperator=29]="FirstBinaryOperator",e[e.LastBinaryOperator=78]="LastBinaryOperator",e[e.FirstStatement=240]="FirstStatement",e[e.LastStatement=256]="LastStatement",e[e.FirstNode=163]="FirstNode",e[e.FirstJSDocNode=312]="FirstJSDocNode",e[e.LastJSDocNode=353]="LastJSDocNode",e[e.FirstJSDocTagNode=330]="FirstJSDocTagNode",e[e.LastJSDocTagNode=353]="LastJSDocTagNode",e[e.FirstContextualKeyword=126]="FirstContextualKeyword",e[e.LastContextualKeyword=162]="LastContextualKeyword",e))(Np||{}),Op=(e=>(e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.NestedNamespace=4]="NestedNamespace",e[e.Synthesized=8]="Synthesized",e[e.Namespace=16]="Namespace",e[e.OptionalChain=32]="OptionalChain",e[e.ExportContext=64]="ExportContext",e[e.ContainsThis=128]="ContainsThis",e[e.HasImplicitReturn=256]="HasImplicitReturn",e[e.HasExplicitReturn=512]="HasExplicitReturn",e[e.GlobalAugmentation=1024]="GlobalAugmentation",e[e.HasAsyncFunctions=2048]="HasAsyncFunctions",e[e.DisallowInContext=4096]="DisallowInContext",e[e.YieldContext=8192]="YieldContext",e[e.DecoratorContext=16384]="DecoratorContext",e[e.AwaitContext=32768]="AwaitContext",e[e.DisallowConditionalTypesContext=65536]="DisallowConditionalTypesContext",e[e.ThisNodeHasError=131072]="ThisNodeHasError",e[e.JavaScriptFile=262144]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=524288]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=1048576]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=2097152]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=4194304]="PossiblyContainsImportMeta",e[e.JSDoc=8388608]="JSDoc",e[e.Ambient=16777216]="Ambient",e[e.InWithStatement=33554432]="InWithStatement",e[e.JsonFile=67108864]="JsonFile",e[e.TypeCached=134217728]="TypeCached",e[e.Deprecated=268435456]="Deprecated",e[e.BlockScoped=3]="BlockScoped",e[e.ReachabilityCheckFlags=768]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=2816]="ReachabilityAndEmitFlags",e[e.ContextFlags=50720768]="ContextFlags",e[e.TypeExcludesFlags=40960]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=6291456]="PermanentlySetIncrementalFlags",e[e.IdentifierHasExtendedUnicodeEscape=128]="IdentifierHasExtendedUnicodeEscape",e[e.IdentifierIsInJSDocNamespace=2048]="IdentifierIsInJSDocNamespace",e))(Op||{}),Mp=(e=>(e[e.None=0]="None",e[e.Export=1]="Export",e[e.Ambient=2]="Ambient",e[e.Public=4]="Public",e[e.Private=8]="Private",e[e.Protected=16]="Protected",e[e.Static=32]="Static",e[e.Readonly=64]="Readonly",e[e.Accessor=128]="Accessor",e[e.Abstract=256]="Abstract",e[e.Async=512]="Async",e[e.Default=1024]="Default",e[e.Const=2048]="Const",e[e.HasComputedJSDocModifiers=4096]="HasComputedJSDocModifiers",e[e.Deprecated=8192]="Deprecated",e[e.Override=16384]="Override",e[e.In=32768]="In",e[e.Out=65536]="Out",e[e.Decorator=131072]="Decorator",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=28]="AccessibilityModifier",e[e.ParameterPropertyModifier=16476]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=24]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=117086]="TypeScriptModifier",e[e.ExportDefault=1025]="ExportDefault",e[e.All=258047]="All",e[e.Modifier=126975]="Modifier",e))(Mp||{}),tg=(e=>(e[e.None=0]="None",e[e.IntrinsicNamedElement=1]="IntrinsicNamedElement",e[e.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",e[e.IntrinsicElement=3]="IntrinsicElement",e))(tg||{}),Lp=(e=>(e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.Reported=4]="Reported",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e))(Lp||{}),rg=(e=>(e[e.None=0]="None",e[e.Auto=1]="Auto",e[e.Loop=2]="Loop",e[e.Unique=3]="Unique",e[e.Node=4]="Node",e[e.KindMask=7]="KindMask",e[e.ReservedInNestedScopes=8]="ReservedInNestedScopes",e[e.Optimistic=16]="Optimistic",e[e.FileLevel=32]="FileLevel",e[e.AllowNameSubstitution=64]="AllowNameSubstitution",e))(rg||{}),ng=(e=>(e[e.None=0]="None",e[e.PrecedingLineBreak=1]="PrecedingLineBreak",e[e.PrecedingJSDocComment=2]="PrecedingJSDocComment",e[e.Unterminated=4]="Unterminated",e[e.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",e[e.Scientific=16]="Scientific",e[e.Octal=32]="Octal",e[e.HexSpecifier=64]="HexSpecifier",e[e.BinarySpecifier=128]="BinarySpecifier",e[e.OctalSpecifier=256]="OctalSpecifier",e[e.ContainsSeparator=512]="ContainsSeparator",e[e.UnicodeEscape=1024]="UnicodeEscape",e[e.ContainsInvalidEscape=2048]="ContainsInvalidEscape",e[e.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",e[e.NumericLiteralFlags=1008]="NumericLiteralFlags",e[e.TemplateLiteralLikeFlags=2048]="TemplateLiteralLikeFlags",e))(ng||{}),il=(e=>(e[e.Unreachable=1]="Unreachable",e[e.Start=2]="Start",e[e.BranchLabel=4]="BranchLabel",e[e.LoopLabel=8]="LoopLabel",e[e.Assignment=16]="Assignment",e[e.TrueCondition=32]="TrueCondition",e[e.FalseCondition=64]="FalseCondition",e[e.SwitchClause=128]="SwitchClause",e[e.ArrayMutation=256]="ArrayMutation",e[e.Call=512]="Call",e[e.ReduceLabel=1024]="ReduceLabel",e[e.Referenced=2048]="Referenced",e[e.Shared=4096]="Shared",e[e.Label=12]="Label",e[e.Condition=96]="Condition",e))(il||{}),ig=(e=>(e[e.ExpectError=0]="ExpectError",e[e.Ignore=1]="Ignore",e))(ig||{}),Rp=class{},ag=(e=>(e[e.RootFile=0]="RootFile",e[e.SourceFromProjectReference=1]="SourceFromProjectReference",e[e.OutputFromProjectReference=2]="OutputFromProjectReference",e[e.Import=3]="Import",e[e.ReferenceFile=4]="ReferenceFile",e[e.TypeReferenceDirective=5]="TypeReferenceDirective",e[e.LibFile=6]="LibFile",e[e.LibReferenceDirective=7]="LibReferenceDirective",e[e.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",e))(ag||{}),sg=(e=>(e[e.FilePreprocessingReferencedDiagnostic=0]="FilePreprocessingReferencedDiagnostic",e[e.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",e[e.ResolutionDiagnostics=2]="ResolutionDiagnostics",e))(sg||{}),og=(e=>(e[e.Js=0]="Js",e[e.Dts=1]="Dts",e))(og||{}),_g=(e=>(e[e.Not=0]="Not",e[e.SafeModules=1]="SafeModules",e[e.Completely=2]="Completely",e))(_g||{}),cg=(e=>(e[e.Success=0]="Success",e[e.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",e[e.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",e[e.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",e[e.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",e))(cg||{}),lg=(e=>(e[e.Ok=0]="Ok",e[e.NeedsOverride=1]="NeedsOverride",e[e.HasInvalidOverride=2]="HasInvalidOverride",e))(lg||{}),ug=(e=>(e[e.None=0]="None",e[e.Literal=1]="Literal",e[e.Subtype=2]="Subtype",e))(ug||{}),pg=(e=>(e[e.None=0]="None",e[e.Signature=1]="Signature",e[e.NoConstraints=2]="NoConstraints",e[e.Completions=4]="Completions",e[e.SkipBindingPatterns=8]="SkipBindingPatterns",e))(pg||{}),fg=(e=>(e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.OmitThisParameter=33554432]="OmitThisParameter",e[e.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",e[e.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",e[e.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",e[e.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",e[e.AllowEmptyTuple=524288]="AllowEmptyTuple",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",e[e.WriteComputedProps=1073741824]="WriteComputedProps",e[e.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",e[e.DoNotIncludeSymbolChain=134217728]="DoNotIncludeSymbolChain",e[e.IgnoreErrors=70221824]="IgnoreErrors",e[e.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.InInitialEntityName=16777216]="InInitialEntityName",e))(fg||{}),dg=(e=>(e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.OmitThisParameter=33554432]="OmitThisParameter",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AddUndefined=131072]="AddUndefined",e[e.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",e[e.InArrayType=524288]="InArrayType",e[e.InElementType=2097152]="InElementType",e[e.InFirstTypeArgument=4194304]="InFirstTypeArgument",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.NodeBuilderFlagsMask=848330091]="NodeBuilderFlagsMask",e))(dg||{}),mg=(e=>(e[e.None=0]="None",e[e.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",e[e.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",e[e.AllowAnyNodeKind=4]="AllowAnyNodeKind",e[e.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",e[e.WriteComputedProps=16]="WriteComputedProps",e[e.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",e))(mg||{}),hg=(e=>(e[e.Accessible=0]="Accessible",e[e.NotAccessible=1]="NotAccessible",e[e.CannotBeNamed=2]="CannotBeNamed",e))(hg||{}),gg=(e=>(e[e.UnionOrIntersection=0]="UnionOrIntersection",e[e.Spread=1]="Spread",e))(gg||{}),yg=(e=>(e[e.This=0]="This",e[e.Identifier=1]="Identifier",e[e.AssertsThis=2]="AssertsThis",e[e.AssertsIdentifier=3]="AssertsIdentifier",e))(yg||{}),vg=(e=>(e[e.Unknown=0]="Unknown",e[e.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",e[e.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",e[e.NumberLikeType=3]="NumberLikeType",e[e.BigIntLikeType=4]="BigIntLikeType",e[e.StringLikeType=5]="StringLikeType",e[e.BooleanType=6]="BooleanType",e[e.ArrayLikeType=7]="ArrayLikeType",e[e.ESSymbolType=8]="ESSymbolType",e[e.Promise=9]="Promise",e[e.TypeWithCallSignature=10]="TypeWithCallSignature",e[e.ObjectType=11]="ObjectType",e))(vg||{}),jp=(e=>(e[e.None=0]="None",e[e.FunctionScopedVariable=1]="FunctionScopedVariable",e[e.BlockScopedVariable=2]="BlockScopedVariable",e[e.Property=4]="Property",e[e.EnumMember=8]="EnumMember",e[e.Function=16]="Function",e[e.Class=32]="Class",e[e.Interface=64]="Interface",e[e.ConstEnum=128]="ConstEnum",e[e.RegularEnum=256]="RegularEnum",e[e.ValueModule=512]="ValueModule",e[e.NamespaceModule=1024]="NamespaceModule",e[e.TypeLiteral=2048]="TypeLiteral",e[e.ObjectLiteral=4096]="ObjectLiteral",e[e.Method=8192]="Method",e[e.Constructor=16384]="Constructor",e[e.GetAccessor=32768]="GetAccessor",e[e.SetAccessor=65536]="SetAccessor",e[e.Signature=131072]="Signature",e[e.TypeParameter=262144]="TypeParameter",e[e.TypeAlias=524288]="TypeAlias",e[e.ExportValue=1048576]="ExportValue",e[e.Alias=2097152]="Alias",e[e.Prototype=4194304]="Prototype",e[e.ExportStar=8388608]="ExportStar",e[e.Optional=16777216]="Optional",e[e.Transient=33554432]="Transient",e[e.Assignment=67108864]="Assignment",e[e.ModuleExports=134217728]="ModuleExports",e[e.All=67108863]="All",e[e.Enum=384]="Enum",e[e.Variable=3]="Variable",e[e.Value=111551]="Value",e[e.Type=788968]="Type",e[e.Namespace=1920]="Namespace",e[e.Module=1536]="Module",e[e.Accessor=98304]="Accessor",e[e.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",e[e.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",e[e.ParameterExcludes=111551]="ParameterExcludes",e[e.PropertyExcludes=0]="PropertyExcludes",e[e.EnumMemberExcludes=900095]="EnumMemberExcludes",e[e.FunctionExcludes=110991]="FunctionExcludes",e[e.ClassExcludes=899503]="ClassExcludes",e[e.InterfaceExcludes=788872]="InterfaceExcludes",e[e.RegularEnumExcludes=899327]="RegularEnumExcludes",e[e.ConstEnumExcludes=899967]="ConstEnumExcludes",e[e.ValueModuleExcludes=110735]="ValueModuleExcludes",e[e.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",e[e.MethodExcludes=103359]="MethodExcludes",e[e.GetAccessorExcludes=46015]="GetAccessorExcludes",e[e.SetAccessorExcludes=78783]="SetAccessorExcludes",e[e.AccessorExcludes=13247]="AccessorExcludes",e[e.TypeParameterExcludes=526824]="TypeParameterExcludes",e[e.TypeAliasExcludes=788968]="TypeAliasExcludes",e[e.AliasExcludes=2097152]="AliasExcludes",e[e.ModuleMember=2623475]="ModuleMember",e[e.ExportHasLocal=944]="ExportHasLocal",e[e.BlockScoped=418]="BlockScoped",e[e.PropertyOrAccessor=98308]="PropertyOrAccessor",e[e.ClassMember=106500]="ClassMember",e[e.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",e[e.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",e[e.Classifiable=2885600]="Classifiable",e[e.LateBindingContainer=6256]="LateBindingContainer",e))(jp||{}),bg=(e=>(e[e.Numeric=0]="Numeric",e[e.Literal=1]="Literal",e))(bg||{}),Tg=(e=>(e[e.None=0]="None",e[e.Instantiated=1]="Instantiated",e[e.SyntheticProperty=2]="SyntheticProperty",e[e.SyntheticMethod=4]="SyntheticMethod",e[e.Readonly=8]="Readonly",e[e.ReadPartial=16]="ReadPartial",e[e.WritePartial=32]="WritePartial",e[e.HasNonUniformType=64]="HasNonUniformType",e[e.HasLiteralType=128]="HasLiteralType",e[e.ContainsPublic=256]="ContainsPublic",e[e.ContainsProtected=512]="ContainsProtected",e[e.ContainsPrivate=1024]="ContainsPrivate",e[e.ContainsStatic=2048]="ContainsStatic",e[e.Late=4096]="Late",e[e.ReverseMapped=8192]="ReverseMapped",e[e.OptionalParameter=16384]="OptionalParameter",e[e.RestParameter=32768]="RestParameter",e[e.DeferredType=65536]="DeferredType",e[e.HasNeverType=131072]="HasNeverType",e[e.Mapped=262144]="Mapped",e[e.StripOptional=524288]="StripOptional",e[e.Unresolved=1048576]="Unresolved",e[e.Synthetic=6]="Synthetic",e[e.Discriminant=192]="Discriminant",e[e.Partial=48]="Partial",e))(Tg||{}),Sg=(e=>(e.Call="__call",e.Constructor="__constructor",e.New="__new",e.Index="__index",e.ExportStar="__export",e.Global="__global",e.Missing="__missing",e.Type="__type",e.Object="__object",e.JSXAttributes="__jsxAttributes",e.Class="__class",e.Function="__function",e.Computed="__computed",e.Resolving="__resolving__",e.ExportEquals="export=",e.Default="default",e.This="this",e))(Sg||{}),xg=(e=>(e[e.None=0]="None",e[e.TypeChecked=1]="TypeChecked",e[e.LexicalThis=2]="LexicalThis",e[e.CaptureThis=4]="CaptureThis",e[e.CaptureNewTarget=8]="CaptureNewTarget",e[e.SuperInstance=16]="SuperInstance",e[e.SuperStatic=32]="SuperStatic",e[e.ContextChecked=64]="ContextChecked",e[e.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",e[e.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",e[e.CaptureArguments=512]="CaptureArguments",e[e.EnumValuesComputed=1024]="EnumValuesComputed",e[e.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",e[e.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",e[e.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",e[e.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",e[e.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",e[e.ClassWithBodyScopedClassBinding=65536]="ClassWithBodyScopedClassBinding",e[e.BodyScopedClassBinding=131072]="BodyScopedClassBinding",e[e.NeedsLoopOutParameter=262144]="NeedsLoopOutParameter",e[e.AssignmentsMarked=524288]="AssignmentsMarked",e[e.ClassWithConstructorReference=1048576]="ClassWithConstructorReference",e[e.ConstructorReferenceInClass=2097152]="ConstructorReferenceInClass",e[e.ContainsClassWithPrivateIdentifiers=4194304]="ContainsClassWithPrivateIdentifiers",e[e.ContainsSuperPropertyInStaticInitializer=8388608]="ContainsSuperPropertyInStaticInitializer",e[e.InCheckIdentifier=16777216]="InCheckIdentifier",e))(xg||{}),Jp=(e=>(e[e.Any=1]="Any",e[e.Unknown=2]="Unknown",e[e.String=4]="String",e[e.Number=8]="Number",e[e.Boolean=16]="Boolean",e[e.Enum=32]="Enum",e[e.BigInt=64]="BigInt",e[e.StringLiteral=128]="StringLiteral",e[e.NumberLiteral=256]="NumberLiteral",e[e.BooleanLiteral=512]="BooleanLiteral",e[e.EnumLiteral=1024]="EnumLiteral",e[e.BigIntLiteral=2048]="BigIntLiteral",e[e.ESSymbol=4096]="ESSymbol",e[e.UniqueESSymbol=8192]="UniqueESSymbol",e[e.Void=16384]="Void",e[e.Undefined=32768]="Undefined",e[e.Null=65536]="Null",e[e.Never=131072]="Never",e[e.TypeParameter=262144]="TypeParameter",e[e.Object=524288]="Object",e[e.Union=1048576]="Union",e[e.Intersection=2097152]="Intersection",e[e.Index=4194304]="Index",e[e.IndexedAccess=8388608]="IndexedAccess",e[e.Conditional=16777216]="Conditional",e[e.Substitution=33554432]="Substitution",e[e.NonPrimitive=67108864]="NonPrimitive",e[e.TemplateLiteral=134217728]="TemplateLiteral",e[e.StringMapping=268435456]="StringMapping",e[e.AnyOrUnknown=3]="AnyOrUnknown",e[e.Nullable=98304]="Nullable",e[e.Literal=2944]="Literal",e[e.Unit=109472]="Unit",e[e.Freshable=2976]="Freshable",e[e.StringOrNumberLiteral=384]="StringOrNumberLiteral",e[e.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",e[e.DefinitelyFalsy=117632]="DefinitelyFalsy",e[e.PossiblyFalsy=117724]="PossiblyFalsy",e[e.Intrinsic=67359327]="Intrinsic",e[e.Primitive=134348796]="Primitive",e[e.StringLike=402653316]="StringLike",e[e.NumberLike=296]="NumberLike",e[e.BigIntLike=2112]="BigIntLike",e[e.BooleanLike=528]="BooleanLike",e[e.EnumLike=1056]="EnumLike",e[e.ESSymbolLike=12288]="ESSymbolLike",e[e.VoidLike=49152]="VoidLike",e[e.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",e[e.DisjointDomains=469892092]="DisjointDomains",e[e.UnionOrIntersection=3145728]="UnionOrIntersection",e[e.StructuredType=3670016]="StructuredType",e[e.TypeVariable=8650752]="TypeVariable",e[e.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",e[e.InstantiablePrimitive=406847488]="InstantiablePrimitive",e[e.Instantiable=465829888]="Instantiable",e[e.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",e[e.ObjectFlagsType=3899393]="ObjectFlagsType",e[e.Simplifiable=25165824]="Simplifiable",e[e.Singleton=67358815]="Singleton",e[e.Narrowable=536624127]="Narrowable",e[e.IncludesMask=205258751]="IncludesMask",e[e.IncludesMissingType=262144]="IncludesMissingType",e[e.IncludesNonWideningType=4194304]="IncludesNonWideningType",e[e.IncludesWildcard=8388608]="IncludesWildcard",e[e.IncludesEmptyObject=16777216]="IncludesEmptyObject",e[e.IncludesInstantiable=33554432]="IncludesInstantiable",e[e.NotPrimitiveUnion=36323363]="NotPrimitiveUnion",e))(Jp||{}),Fp=(e=>(e[e.None=0]="None",e[e.Class=1]="Class",e[e.Interface=2]="Interface",e[e.Reference=4]="Reference",e[e.Tuple=8]="Tuple",e[e.Anonymous=16]="Anonymous",e[e.Mapped=32]="Mapped",e[e.Instantiated=64]="Instantiated",e[e.ObjectLiteral=128]="ObjectLiteral",e[e.EvolvingArray=256]="EvolvingArray",e[e.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",e[e.ReverseMapped=1024]="ReverseMapped",e[e.JsxAttributes=2048]="JsxAttributes",e[e.JSLiteral=4096]="JSLiteral",e[e.FreshLiteral=8192]="FreshLiteral",e[e.ArrayLiteral=16384]="ArrayLiteral",e[e.PrimitiveUnion=32768]="PrimitiveUnion",e[e.ContainsWideningType=65536]="ContainsWideningType",e[e.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",e[e.NonInferrableType=262144]="NonInferrableType",e[e.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",e[e.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",e[e.ClassOrInterface=3]="ClassOrInterface",e[e.RequiresWidening=196608]="RequiresWidening",e[e.PropagatingFlags=458752]="PropagatingFlags",e[e.ObjectTypeKindMask=1343]="ObjectTypeKindMask",e[e.ContainsSpread=2097152]="ContainsSpread",e[e.ObjectRestType=4194304]="ObjectRestType",e[e.InstantiationExpressionType=8388608]="InstantiationExpressionType",e[e.IsClassInstanceClone=16777216]="IsClassInstanceClone",e[e.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",e[e.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",e[e.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",e[e.IsGenericObjectType=4194304]="IsGenericObjectType",e[e.IsGenericIndexType=8388608]="IsGenericIndexType",e[e.IsGenericType=12582912]="IsGenericType",e[e.ContainsIntersections=16777216]="ContainsIntersections",e[e.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",e[e.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",e[e.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",e[e.IsNeverIntersection=33554432]="IsNeverIntersection",e))(Fp||{}),Eg=(e=>(e[e.Invariant=0]="Invariant",e[e.Covariant=1]="Covariant",e[e.Contravariant=2]="Contravariant",e[e.Bivariant=3]="Bivariant",e[e.Independent=4]="Independent",e[e.VarianceMask=7]="VarianceMask",e[e.Unmeasurable=8]="Unmeasurable",e[e.Unreliable=16]="Unreliable",e[e.AllowsStructuralFallback=24]="AllowsStructuralFallback",e))(Eg||{}),wg=(e=>(e[e.Required=1]="Required",e[e.Optional=2]="Optional",e[e.Rest=4]="Rest",e[e.Variadic=8]="Variadic",e[e.Fixed=3]="Fixed",e[e.Variable=12]="Variable",e[e.NonRequired=14]="NonRequired",e[e.NonRest=11]="NonRest",e))(wg||{}),Cg=(e=>(e[e.None=0]="None",e[e.IncludeUndefined=1]="IncludeUndefined",e[e.NoIndexSignatures=2]="NoIndexSignatures",e[e.Writing=4]="Writing",e[e.CacheSymbol=8]="CacheSymbol",e[e.NoTupleBoundsCheck=16]="NoTupleBoundsCheck",e[e.ExpressionPosition=32]="ExpressionPosition",e[e.ReportDeprecated=64]="ReportDeprecated",e[e.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",e[e.Contextual=256]="Contextual",e[e.Persistent=1]="Persistent",e))(Cg||{}),Ag=(e=>(e[e.Component=0]="Component",e[e.Function=1]="Function",e[e.Mixed=2]="Mixed",e))(Ag||{}),Pg=(e=>(e[e.Call=0]="Call",e[e.Construct=1]="Construct",e))(Pg||{}),Bp=(e=>(e[e.None=0]="None",e[e.HasRestParameter=1]="HasRestParameter",e[e.HasLiteralTypes=2]="HasLiteralTypes",e[e.Abstract=4]="Abstract",e[e.IsInnerCallChain=8]="IsInnerCallChain",e[e.IsOuterCallChain=16]="IsOuterCallChain",e[e.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",e[e.PropagatingFlags=39]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags",e))(Bp||{}),Dg=(e=>(e[e.String=0]="String",e[e.Number=1]="Number",e))(Dg||{}),kg=(e=>(e[e.Simple=0]="Simple",e[e.Array=1]="Array",e[e.Deferred=2]="Deferred",e[e.Function=3]="Function",e[e.Composite=4]="Composite",e[e.Merged=5]="Merged",e))(kg||{}),Ig=(e=>(e[e.None=0]="None",e[e.NakedTypeVariable=1]="NakedTypeVariable",e[e.SpeculativeTuple=2]="SpeculativeTuple",e[e.SubstituteSource=4]="SubstituteSource",e[e.HomomorphicMappedType=8]="HomomorphicMappedType",e[e.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",e[e.MappedTypeConstraint=32]="MappedTypeConstraint",e[e.ContravariantConditional=64]="ContravariantConditional",e[e.ReturnType=128]="ReturnType",e[e.LiteralKeyof=256]="LiteralKeyof",e[e.NoConstraints=512]="NoConstraints",e[e.AlwaysStrict=1024]="AlwaysStrict",e[e.MaxValue=2048]="MaxValue",e[e.PriorityImpliesCombination=416]="PriorityImpliesCombination",e[e.Circularity=-1]="Circularity",e))(Ig||{}),Ng=(e=>(e[e.None=0]="None",e[e.NoDefault=1]="NoDefault",e[e.AnyDefault=2]="AnyDefault",e[e.SkippedGenericFunction=4]="SkippedGenericFunction",e))(Ng||{}),Og=(e=>(e[e.False=0]="False",e[e.Unknown=1]="Unknown",e[e.Maybe=3]="Maybe",e[e.True=-1]="True",e))(Og||{}),Mg=(e=>(e[e.None=0]="None",e[e.ExportsProperty=1]="ExportsProperty",e[e.ModuleExports=2]="ModuleExports",e[e.PrototypeProperty=3]="PrototypeProperty",e[e.ThisProperty=4]="ThisProperty",e[e.Property=5]="Property",e[e.Prototype=6]="Prototype",e[e.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",e[e.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",e[e.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",e))(Mg||{}),qp=(e=>(e[e.Warning=0]="Warning",e[e.Error=1]="Error",e[e.Suggestion=2]="Suggestion",e[e.Message=3]="Message",e))(qp||{}),Lg=(e=>(e[e.Classic=1]="Classic",e[e.NodeJs=2]="NodeJs",e[e.Node10=2]="Node10",e[e.Node16=3]="Node16",e[e.NodeNext=99]="NodeNext",e[e.Bundler=100]="Bundler",e))(Lg||{}),Rg=(e=>(e[e.Legacy=1]="Legacy",e[e.Auto=2]="Auto",e[e.Force=3]="Force",e))(Rg||{}),jg=(e=>(e[e.FixedPollingInterval=0]="FixedPollingInterval",e[e.PriorityPollingInterval=1]="PriorityPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.FixedChunkSizePolling=3]="FixedChunkSizePolling",e[e.UseFsEvents=4]="UseFsEvents",e[e.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",e))(jg||{}),Jg=(e=>(e[e.UseFsEvents=0]="UseFsEvents",e[e.FixedPollingInterval=1]="FixedPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.FixedChunkSizePolling=3]="FixedChunkSizePolling",e))(Jg||{}),Fg=(e=>(e[e.FixedInterval=0]="FixedInterval",e[e.PriorityInterval=1]="PriorityInterval",e[e.DynamicPriority=2]="DynamicPriority",e[e.FixedChunkSize=3]="FixedChunkSize",e))(Fg||{}),Bg=(e=>(e[e.None=0]="None",e[e.CommonJS=1]="CommonJS",e[e.AMD=2]="AMD",e[e.UMD=3]="UMD",e[e.System=4]="System",e[e.ES2015=5]="ES2015",e[e.ES2020=6]="ES2020",e[e.ES2022=7]="ES2022",e[e.ESNext=99]="ESNext",e[e.Node16=100]="Node16",e[e.NodeNext=199]="NodeNext",e))(Bg||{}),qg=(e=>(e[e.None=0]="None",e[e.Preserve=1]="Preserve",e[e.React=2]="React",e[e.ReactNative=3]="ReactNative",e[e.ReactJSX=4]="ReactJSX",e[e.ReactJSXDev=5]="ReactJSXDev",e))(qg||{}),Ug=(e=>(e[e.Remove=0]="Remove",e[e.Preserve=1]="Preserve",e[e.Error=2]="Error",e))(Ug||{}),zg=(e=>(e[e.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",e[e.LineFeed=1]="LineFeed",e))(zg||{}),Wg=(e=>(e[e.Unknown=0]="Unknown",e[e.JS=1]="JS",e[e.JSX=2]="JSX",e[e.TS=3]="TS",e[e.TSX=4]="TSX",e[e.External=5]="External",e[e.JSON=6]="JSON",e[e.Deferred=7]="Deferred",e))(Wg||{}),Vg=(e=>(e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ES2021=8]="ES2021",e[e.ES2022=9]="ES2022",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(Vg||{}),Hg=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(Hg||{}),Gg=(e=>(e[e.None=0]="None",e[e.Recursive=1]="Recursive",e))(Gg||{}),$g=(e=>(e[e.nullCharacter=0]="nullCharacter",e[e.maxAsciiCharacter=127]="maxAsciiCharacter",e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.lineSeparator=8232]="lineSeparator",e[e.paragraphSeparator=8233]="paragraphSeparator",e[e.nextLine=133]="nextLine",e[e.space=32]="space",e[e.nonBreakingSpace=160]="nonBreakingSpace",e[e.enQuad=8192]="enQuad",e[e.emQuad=8193]="emQuad",e[e.enSpace=8194]="enSpace",e[e.emSpace=8195]="emSpace",e[e.threePerEmSpace=8196]="threePerEmSpace",e[e.fourPerEmSpace=8197]="fourPerEmSpace",e[e.sixPerEmSpace=8198]="sixPerEmSpace",e[e.figureSpace=8199]="figureSpace",e[e.punctuationSpace=8200]="punctuationSpace",e[e.thinSpace=8201]="thinSpace",e[e.hairSpace=8202]="hairSpace",e[e.zeroWidthSpace=8203]="zeroWidthSpace",e[e.narrowNoBreakSpace=8239]="narrowNoBreakSpace",e[e.ideographicSpace=12288]="ideographicSpace",e[e.mathematicalSpace=8287]="mathematicalSpace",e[e.ogham=5760]="ogham",e[e._=95]="_",e[e.$=36]="$",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.ampersand=38]="ampersand",e[e.asterisk=42]="asterisk",e[e.at=64]="at",e[e.backslash=92]="backslash",e[e.backtick=96]="backtick",e[e.bar=124]="bar",e[e.caret=94]="caret",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.closeParen=41]="closeParen",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.equals=61]="equals",e[e.exclamation=33]="exclamation",e[e.greaterThan=62]="greaterThan",e[e.hash=35]="hash",e[e.lessThan=60]="lessThan",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.openParen=40]="openParen",e[e.percent=37]="percent",e[e.plus=43]="plus",e[e.question=63]="question",e[e.semicolon=59]="semicolon",e[e.singleQuote=39]="singleQuote",e[e.slash=47]="slash",e[e.tilde=126]="tilde",e[e.backspace=8]="backspace",e[e.formFeed=12]="formFeed",e[e.byteOrderMark=65279]="byteOrderMark",e[e.tab=9]="tab",e[e.verticalTab=11]="verticalTab",e))($g||{}),Kg=(e=>(e.Ts=".ts",e.Tsx=".tsx",e.Dts=".d.ts",e.Js=".js",e.Jsx=".jsx",e.Json=".json",e.TsBuildInfo=".tsbuildinfo",e.Mjs=".mjs",e.Mts=".mts",e.Dmts=".d.mts",e.Cjs=".cjs",e.Cts=".cts",e.Dcts=".d.cts",e))(Kg||{}),Up=(e=>(e[e.None=0]="None",e[e.ContainsTypeScript=1]="ContainsTypeScript",e[e.ContainsJsx=2]="ContainsJsx",e[e.ContainsESNext=4]="ContainsESNext",e[e.ContainsES2022=8]="ContainsES2022",e[e.ContainsES2021=16]="ContainsES2021",e[e.ContainsES2020=32]="ContainsES2020",e[e.ContainsES2019=64]="ContainsES2019",e[e.ContainsES2018=128]="ContainsES2018",e[e.ContainsES2017=256]="ContainsES2017",e[e.ContainsES2016=512]="ContainsES2016",e[e.ContainsES2015=1024]="ContainsES2015",e[e.ContainsGenerator=2048]="ContainsGenerator",e[e.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",e[e.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",e[e.ContainsLexicalThis=16384]="ContainsLexicalThis",e[e.ContainsRestOrSpread=32768]="ContainsRestOrSpread",e[e.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",e[e.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",e[e.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",e[e.ContainsBindingPattern=524288]="ContainsBindingPattern",e[e.ContainsYield=1048576]="ContainsYield",e[e.ContainsAwait=2097152]="ContainsAwait",e[e.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",e[e.ContainsDynamicImport=8388608]="ContainsDynamicImport",e[e.ContainsClassFields=16777216]="ContainsClassFields",e[e.ContainsDecorators=33554432]="ContainsDecorators",e[e.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",e[e.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",e[e.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",e[e.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",e[e.HasComputedFlags=-2147483648]="HasComputedFlags",e[e.AssertTypeScript=1]="AssertTypeScript",e[e.AssertJsx=2]="AssertJsx",e[e.AssertESNext=4]="AssertESNext",e[e.AssertES2022=8]="AssertES2022",e[e.AssertES2021=16]="AssertES2021",e[e.AssertES2020=32]="AssertES2020",e[e.AssertES2019=64]="AssertES2019",e[e.AssertES2018=128]="AssertES2018",e[e.AssertES2017=256]="AssertES2017",e[e.AssertES2016=512]="AssertES2016",e[e.AssertES2015=1024]="AssertES2015",e[e.AssertGenerator=2048]="AssertGenerator",e[e.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",e[e.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",e[e.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",e[e.NodeExcludes=-2147483648]="NodeExcludes",e[e.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",e[e.FunctionExcludes=-1937940480]="FunctionExcludes",e[e.ConstructorExcludes=-1937948672]="ConstructorExcludes",e[e.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",e[e.PropertyExcludes=-2013249536]="PropertyExcludes",e[e.ClassExcludes=-2147344384]="ClassExcludes",e[e.ModuleExcludes=-1941676032]="ModuleExcludes",e[e.TypeExcludes=-2]="TypeExcludes",e[e.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",e[e.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",e[e.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",e[e.ParameterExcludes=-2147483648]="ParameterExcludes",e[e.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",e[e.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",e[e.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",e[e.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",e))(Up||{}),zp=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(zp||{}),Wp=(e=>(e[e.None=0]="None",e[e.SingleLine=1]="SingleLine",e[e.MultiLine=2]="MultiLine",e[e.AdviseOnEmitNode=4]="AdviseOnEmitNode",e[e.NoSubstitution=8]="NoSubstitution",e[e.CapturesThis=16]="CapturesThis",e[e.NoLeadingSourceMap=32]="NoLeadingSourceMap",e[e.NoTrailingSourceMap=64]="NoTrailingSourceMap",e[e.NoSourceMap=96]="NoSourceMap",e[e.NoNestedSourceMaps=128]="NoNestedSourceMaps",e[e.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",e[e.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",e[e.NoTokenSourceMaps=768]="NoTokenSourceMaps",e[e.NoLeadingComments=1024]="NoLeadingComments",e[e.NoTrailingComments=2048]="NoTrailingComments",e[e.NoComments=3072]="NoComments",e[e.NoNestedComments=4096]="NoNestedComments",e[e.HelperName=8192]="HelperName",e[e.ExportName=16384]="ExportName",e[e.LocalName=32768]="LocalName",e[e.InternalName=65536]="InternalName",e[e.Indented=131072]="Indented",e[e.NoIndentation=262144]="NoIndentation",e[e.AsyncFunctionBody=524288]="AsyncFunctionBody",e[e.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",e[e.CustomPrologue=2097152]="CustomPrologue",e[e.NoHoisting=4194304]="NoHoisting",e[e.HasEndOfDeclarationMarker=8388608]="HasEndOfDeclarationMarker",e[e.Iterator=16777216]="Iterator",e[e.NoAsciiEscaping=33554432]="NoAsciiEscaping",e))(Wp||{}),Xg=(e=>(e[e.None=0]="None",e[e.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",e[e.NeverApplyImportHelper=2]="NeverApplyImportHelper",e[e.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",e[e.Immutable=8]="Immutable",e[e.IndirectCall=16]="IndirectCall",e[e.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",e))(Xg||{}),Yg=(e=>(e[e.Extends=1]="Extends",e[e.Assign=2]="Assign",e[e.Rest=4]="Rest",e[e.Decorate=8]="Decorate",e[e.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",e[e.Metadata=16]="Metadata",e[e.Param=32]="Param",e[e.Awaiter=64]="Awaiter",e[e.Generator=128]="Generator",e[e.Values=256]="Values",e[e.Read=512]="Read",e[e.SpreadArray=1024]="SpreadArray",e[e.Await=2048]="Await",e[e.AsyncGenerator=4096]="AsyncGenerator",e[e.AsyncDelegator=8192]="AsyncDelegator",e[e.AsyncValues=16384]="AsyncValues",e[e.ExportStar=32768]="ExportStar",e[e.ImportStar=65536]="ImportStar",e[e.ImportDefault=131072]="ImportDefault",e[e.MakeTemplateObject=262144]="MakeTemplateObject",e[e.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",e[e.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",e[e.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",e[e.CreateBinding=4194304]="CreateBinding",e[e.SetFunctionName=8388608]="SetFunctionName",e[e.PropKey=16777216]="PropKey",e[e.FirstEmitHelper=1]="FirstEmitHelper",e[e.LastEmitHelper=16777216]="LastEmitHelper",e[e.ForOfIncludes=256]="ForOfIncludes",e[e.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",e[e.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",e[e.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",e[e.SpreadIncludes=1536]="SpreadIncludes",e))(Yg||{}),Qg=(e=>(e[e.SourceFile=0]="SourceFile",e[e.Expression=1]="Expression",e[e.IdentifierName=2]="IdentifierName",e[e.MappedTypeParameter=3]="MappedTypeParameter",e[e.Unspecified=4]="Unspecified",e[e.EmbeddedStatement=5]="EmbeddedStatement",e[e.JsxAttributeValue=6]="JsxAttributeValue",e))(Qg||{}),Zg=(e=>(e[e.Parentheses=1]="Parentheses",e[e.TypeAssertions=2]="TypeAssertions",e[e.NonNullAssertions=4]="NonNullAssertions",e[e.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",e[e.Assertions=6]="Assertions",e[e.All=15]="All",e[e.ExcludeJSDocTypeAssertion=16]="ExcludeJSDocTypeAssertion",e))(Zg||{}),ey=(e=>(e[e.None=0]="None",e[e.InParameters=1]="InParameters",e[e.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",e))(ey||{}),ty=(e=>(e.Prologue="prologue",e.EmitHelpers="emitHelpers",e.NoDefaultLib="no-default-lib",e.Reference="reference",e.Type="type",e.TypeResolutionModeRequire="type-require",e.TypeResolutionModeImport="type-import",e.Lib="lib",e.Prepend="prepend",e.Text="text",e.Internal="internal",e))(ty||{}),ry=(e=>(e[e.None=0]="None",e[e.SingleLine=0]="SingleLine",e[e.MultiLine=1]="MultiLine",e[e.PreserveLines=2]="PreserveLines",e[e.LinesMask=3]="LinesMask",e[e.NotDelimited=0]="NotDelimited",e[e.BarDelimited=4]="BarDelimited",e[e.AmpersandDelimited=8]="AmpersandDelimited",e[e.CommaDelimited=16]="CommaDelimited",e[e.AsteriskDelimited=32]="AsteriskDelimited",e[e.DelimitersMask=60]="DelimitersMask",e[e.AllowTrailingComma=64]="AllowTrailingComma",e[e.Indented=128]="Indented",e[e.SpaceBetweenBraces=256]="SpaceBetweenBraces",e[e.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",e[e.Braces=1024]="Braces",e[e.Parenthesis=2048]="Parenthesis",e[e.AngleBrackets=4096]="AngleBrackets",e[e.SquareBrackets=8192]="SquareBrackets",e[e.BracketsMask=15360]="BracketsMask",e[e.OptionalIfUndefined=16384]="OptionalIfUndefined",e[e.OptionalIfEmpty=32768]="OptionalIfEmpty",e[e.Optional=49152]="Optional",e[e.PreferNewLine=65536]="PreferNewLine",e[e.NoTrailingNewLine=131072]="NoTrailingNewLine",e[e.NoInterveningComments=262144]="NoInterveningComments",e[e.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",e[e.SingleElement=1048576]="SingleElement",e[e.SpaceAfterList=2097152]="SpaceAfterList",e[e.Modifiers=2359808]="Modifiers",e[e.HeritageClauses=512]="HeritageClauses",e[e.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",e[e.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",e[e.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",e[e.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",e[e.UnionTypeConstituents=516]="UnionTypeConstituents",e[e.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",e[e.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",e[e.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",e[e.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",e[e.ImportClauseEntries=526226]="ImportClauseEntries",e[e.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",e[e.CommaListElements=528]="CommaListElements",e[e.CallExpressionArguments=2576]="CallExpressionArguments",e[e.NewExpressionArguments=18960]="NewExpressionArguments",e[e.TemplateExpressionSpans=262144]="TemplateExpressionSpans",e[e.SingleLineBlockStatements=768]="SingleLineBlockStatements",e[e.MultiLineBlockStatements=129]="MultiLineBlockStatements",e[e.VariableDeclarationList=528]="VariableDeclarationList",e[e.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",e[e.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",e[e.ClassHeritageClauses=0]="ClassHeritageClauses",e[e.ClassMembers=129]="ClassMembers",e[e.InterfaceMembers=129]="InterfaceMembers",e[e.EnumMembers=145]="EnumMembers",e[e.CaseBlockClauses=129]="CaseBlockClauses",e[e.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",e[e.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",e[e.JsxElementAttributes=262656]="JsxElementAttributes",e[e.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",e[e.HeritageClauseTypes=528]="HeritageClauseTypes",e[e.SourceFileStatements=131073]="SourceFileStatements",e[e.Decorators=2146305]="Decorators",e[e.TypeArguments=53776]="TypeArguments",e[e.TypeParameters=53776]="TypeParameters",e[e.Parameters=2576]="Parameters",e[e.IndexSignatureParameters=8848]="IndexSignatureParameters",e[e.JSDocComment=33]="JSDocComment",e))(ry||{}),ny=(e=>(e[e.None=0]="None",e[e.TripleSlashXML=1]="TripleSlashXML",e[e.SingleLine=2]="SingleLine",e[e.MultiLine=4]="MultiLine",e[e.All=7]="All",e[e.Default=7]="Default",e))(ny||{}),Vp={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}}}}),B5=()=>{},iy;function ay(e){return e===47||e===92}function q5(e){return al(e)<0}function A_(e){return al(e)>0}function U5(e){let t=al(e);return t>0&&t===e.length}function sy(e){return al(e)!==0}function So(e){return/^\.\.?($|[\\/])/.test(e)}function z5(e){return!sy(e)&&!So(e)}function OT(e){return Fi(sl(e),".")}function ns(e,t){return e.length>t.length&&es(e,t)}function da(e,t){for(let r of t)if(ns(e,r))return!0;return!1}function Hp(e){return e.length>0&&ay(e.charCodeAt(e.length-1))}function MT(e){return e>=97&&e<=122||e>=65&&e<=90}function W5(e,t){let r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){let s=e.charCodeAt(t+2);if(s===97||s===65)return t+3}return-1}function al(e){if(!e)return 0;let t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;let s=e.indexOf(t===47?zn:py,2);return s<0?e.length:s+1}if(MT(t)&&e.charCodeAt(1)===58){let s=e.charCodeAt(2);if(s===47||s===92)return 3;if(e.length===2)return 2}let r=e.indexOf(fy);if(r!==-1){let s=r+fy.length,f=e.indexOf(zn,s);if(f!==-1){let x=e.slice(0,r),w=e.slice(s,f);if(x==="file"&&(w===""||w==="localhost")&&MT(e.charCodeAt(f+1))){let A=W5(e,f+2);if(A!==-1){if(e.charCodeAt(A)===47)return~(A+1);if(A===e.length)return~A}}return~(f+1)}return~e.length}return 0}function Bi(e){let t=al(e);return t<0?~t:t}function ma(e){e=Eo(e);let t=Bi(e);return t===e.length?e:(e=P_(e),e.slice(0,Math.max(t,e.lastIndexOf(zn))))}function sl(e,t,r){if(e=Eo(e),Bi(e)===e.length)return"";e=P_(e);let f=e.slice(Math.max(Bi(e),e.lastIndexOf(zn)+1)),x=t!==void 0&&r!==void 0?Gp(f,t,r):void 0;return x?f.slice(0,f.length-x.length):f}function LT(e,t,r){if(Pn(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){let s=e.slice(e.length-t.length);if(r(s,t))return s}}function V5(e,t,r){if(typeof t=="string")return LT(e,t,r)||"";for(let s of t){let f=LT(e,s,r);if(f)return f}return""}function Gp(e,t,r){if(t)return V5(P_(e),t,r?Ms:To);let s=sl(e),f=s.lastIndexOf(".");return f>=0?s.substring(f):""}function H5(e,t){let r=e.substring(0,t),s=e.substring(t).split(zn);return s.length&&!Cn(s)&&s.pop(),[r,...s]}function qi(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return e=tn(t,e),H5(e,Bi(e))}function xo(e){return e.length===0?"":(e[0]&&wo(e[0]))+e.slice(1).join(zn)}function Eo(e){return e.indexOf("\\")!==-1?e.replace(BT,zn):e}function is(e){if(!Ke(e))return[];let t=[e[0]];for(let r=1;r1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(s)}}return t}function tn(e){e&&(e=Eo(e));for(var t=arguments.length,r=new Array(t>1?t-1:0),s=1;s1?t-1:0),s=1;s0==Bi(t)>0,"Paths must either both be absolute or both be relative");let x=ly(e,t,(typeof r=="boolean"?r:!1)?Ms:To,typeof r=="function"?r:rr);return xo(x)}function Z5(e,t,r){return A_(e)?uy(t,e,t,r,!1):e}function eA(e,t,r){return _y(JT(ma(e),t,r))}function uy(e,t,r,s,f){let x=ly(oy(r,e),oy(r,t),To,s),w=x[0];if(f&&A_(w)){let A=w.charAt(0)===zn?"file://":"file:///";x[0]=A+w}return xo(x)}function FT(e,t){for(;;){let r=t(e);if(r!==void 0)return r;let s=ma(e);if(s===e)return;e=s}}function tA(e){return es(e,"/node_modules")}var zn,py,fy,BT,ol,rA=D({"src/compiler/path.ts"(){"use strict";nn(),zn="/",py="\\",fy="://",BT=/\\/g,ol=/(?:\/\/)|(?:^|\/)\.\.?(?:$|\/)/}});function i(e,t,r,s,f,x,w){return{code:e,category:t,key:r,message:s,reportsUnnecessary:f,elidedInCompatabilityPyramid:x,reportsDeprecated:w}}var ve,nA=D({"src/compiler/diagnosticInformationMap.generated.ts"(){"use strict";NT(),ve={Unterminated_string_literal:i(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:i(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:i(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:i(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:i(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:i(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:i(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:i(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:i(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:i(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:i(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:i(1015,1,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:i(1016,1,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:i(1017,1,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:i(1018,1,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:i(1019,1,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:i(1020,1,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:i(1021,1,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:i(1022,1,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:i(1024,1,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:i(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:i(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:i(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:i(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:i(1031,1,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:i(1034,1,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:i(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:i(1036,1,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:i(1038,1,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:i(1039,1,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:i(1040,1,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:i(1042,1,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:i(1044,1,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:i(1046,1,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:i(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:i(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:i(1049,1,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:i(1051,1,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:i(1052,1,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:i(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:i(1054,1,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:i(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Prom_1055","Type '{0}' is not a valid async function return type in ES5/ES3 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:i(1056,1,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:i(1058,1,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:i(1059,1,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:i(1060,1,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:i(1061,1,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:i(1062,1,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:i(1063,1,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:i(1064,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise type. Did you mean to write 'Promise<{0}>'?"),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:i(1066,1,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:i(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:i(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:i(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:i(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:i(1079,1,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:i(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:i(1085,1,"Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0_1085","Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '{0}'."),_0_modifier_cannot_appear_on_a_constructor_declaration:i(1089,1,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:i(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:i(1091,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:i(1092,1,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:i(1093,1,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:i(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:i(1095,1,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:i(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:i(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:i(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:i(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:i(1100,1,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:i(1101,1,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:i(1102,1,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:i(1103,1,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:i(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:i(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:i(1106,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:i(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:i(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:i(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:i(1110,1,"Type_expected_1110","Type expected."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:i(1113,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:i(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:i(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:i(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:i(1117,1,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:i(1118,1,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:i(1119,1,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:i(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_in_strict_mode:i(1121,1,"Octal_literals_are_not_allowed_in_strict_mode_1121","Octal literals are not allowed in strict mode."),Variable_declaration_list_cannot_be_empty:i(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:i(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:i(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:i(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:i(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:i(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:i(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:i(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:i(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:i(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:i(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:i(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:i(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:i(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:i(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:i(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:i(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:i(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:i(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:i(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:i(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:i(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:i(1147,1,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:i(1148,1,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:i(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),const_declarations_must_be_initialized:i(1155,1,"const_declarations_must_be_initialized_1155","'const' declarations must be initialized."),const_declarations_can_only_be_declared_inside_a_block:i(1156,1,"const_declarations_can_only_be_declared_inside_a_block_1156","'const' declarations can only be declared inside a block."),let_declarations_can_only_be_declared_inside_a_block:i(1157,1,"let_declarations_can_only_be_declared_inside_a_block_1157","'let' declarations can only be declared inside a block."),Unterminated_template_literal:i(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:i(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:i(1162,1,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:i(1163,1,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:i(1164,1,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:i(1165,1,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:i(1166,1,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:i(1168,1,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:i(1169,1,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:i(1170,1,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:i(1171,1,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:i(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:i(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:i(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:i(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:i(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:i(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:i(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:i(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:i(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:i(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:i(1182,1,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:i(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:i(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:i(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:i(1186,1,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:i(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:i(1188,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:i(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:i(1190,1,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:i(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:i(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:i(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:i(1194,1,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:i(1195,1,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:i(1196,1,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:i(1197,1,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:i(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:i(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:i(1200,1,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:i(1202,1,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202",`Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:i(1203,1,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_0_is_enabled_requires_using_export_type:i(1205,1,"Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205","Re-exporting a type when '{0}' is enabled requires using 'export type'."),Decorators_are_not_valid_here:i(1206,1,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:i(1207,1,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:i(1209,1,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:i(1210,1,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:i(1211,1,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:i(1212,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:i(1213,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:i(1214,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:i(1215,1,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:i(1216,1,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:i(1218,1,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Generators_are_not_allowed_in_an_ambient_context:i(1221,1,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:i(1222,1,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:i(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:i(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:i(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:i(1226,1,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:i(1227,1,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:i(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:i(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:i(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:i(1231,1,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:i(1232,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:i(1233,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:i(1234,1,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:i(1235,1,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:i(1236,1,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:i(1237,1,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:i(1238,1,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:i(1239,1,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:i(1240,1,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:i(1241,1,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:i(1242,1,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:i(1243,1,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:i(1244,1,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:i(1245,1,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:i(1246,1,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:i(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:i(1248,1,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:i(1249,1,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5:i(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:i(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_d_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:i(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Modules are automatically in strict mode."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:i(1254,1,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:i(1255,1,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:i(1257,1,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:i(1258,1,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:i(1259,1,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:i(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:i(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:i(1262,1,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:i(1263,1,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:i(1264,1,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:i(1265,1,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:i(1266,1,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:i(1267,1,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:i(1268,1,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled:i(1269,1,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269","Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),Decorator_function_return_type_0_is_not_assignable_to_type_1:i(1270,1,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:i(1271,1,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:i(1272,1,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:i(1273,1,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:i(1274,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:i(1275,1,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:i(1276,1,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class:i(1277,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277","'{0}' modifier can only appear on a type parameter of a function, method or class"),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:i(1278,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278","The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:i(1279,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279","The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement:i(1280,1,"Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280","Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead:i(1281,1,"Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281","Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:i(1282,1,"An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282","An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:i(1283,1,"An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283","An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:i(1284,1,"An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284","An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:i(1285,1,"An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285","An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:i(1286,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled_1286","ESM syntax is not allowed in a CommonJS module when 'verbatimModuleSyntax' is enabled."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:i(1287,1,"A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287","A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:i(1288,1,"An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288","An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),with_statements_are_not_allowed_in_an_async_function_block:i(1300,1,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:i(1308,1,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:i(1309,1,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:i(1312,1,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:i(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:i(1314,1,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:i(1315,1,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:i(1316,1,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:i(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:i(1318,1,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:i(1319,1,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:i(1320,1,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:i(1321,1,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:i(1322,1,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext:i(1323,1,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nodenext:i(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nod_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', or 'nodenext'."),Argument_of_dynamic_import_cannot_be_spread_element:i(1325,1,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:i(1326,1,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:i(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:i(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:i(1329,1,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:i(1330,1,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:i(1331,1,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:i(1332,1,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:i(1333,1,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:i(1334,1,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:i(1335,1,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:i(1337,1,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:i(1338,1,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:i(1339,1,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:i(1340,1,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:i(1341,1,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext:i(1343,1,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', or 'nodenext'."),A_label_is_not_allowed_here:i(1344,1,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:i(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:i(1346,1,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:i(1347,1,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:i(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:i(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:i(1350,3,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:i(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:i(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:i(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:i(1354,1,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:i(1355,1,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:i(1356,1,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:i(1357,1,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:i(1358,1,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:i(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:i(1360,1,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:i(1361,1,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:i(1362,1,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:i(1363,1,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:i(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:i(1365,3,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:i(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:i(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:i(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:i(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error:i(1371,1,"This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set__1371","This import is never used as a value and must use 'import type' because 'importsNotUsedAsValues' is set to 'error'."),Convert_to_type_only_import:i(1373,3,"Convert_to_type_only_import_1373","Convert to type-only import"),Convert_all_imports_not_used_as_a_value_to_type_only_imports:i(1374,3,"Convert_all_imports_not_used_as_a_value_to_type_only_imports_1374","Convert all imports not used as a value to type-only imports"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:i(1375,1,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:i(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:i(1377,3,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_or_nodenext_and_the_target_option_is_set_to_es2017_or_higher:i(1378,1,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', or 'nodenext', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:i(1379,1,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:i(1380,1,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:i(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:i(1382,1,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:i(1385,1,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:i(1386,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:i(1387,1,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:i(1388,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:i(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:i(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:i(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:i(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:i(1394,3,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:i(1395,3,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:i(1396,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:i(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:i(1398,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:i(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:i(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:i(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:i(1402,3,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:i(1403,3,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:i(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:i(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:i(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:i(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:i(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:i(1409,3,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:i(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:i(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:i(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:i(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:i(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:i(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:i(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:i(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:i(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:i(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:i(1420,3,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:i(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:i(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:i(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:i(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:i(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:i(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:i(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:i(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:i(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:i(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:i(1431,1,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_or_nodenext_and_the_target_option_is_set_to_es2017_or_higher:i(1432,1,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', or 'nodenext', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:i(1433,1,"Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433","Neither decorators nor modifiers may be applied to 'this' parameters."),Unexpected_keyword_or_identifier:i(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:i(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:i(1436,1,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:i(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:i(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:i(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:i(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:i(1441,1,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:i(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:i(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedModules_are_both_enabled:i(1444,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedMod_1444","'{0}' is a type and must be imported using a type-only import when 'preserveValueImports' and 'isolatedModules' are both enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedModules_are_both_enabled:i(1446,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_preserveVa_1446","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'preserveValueImports' and 'isolatedModules' are both enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:i(1448,1,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:i(1449,3,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_assertion_as_arguments:i(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_assertion_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional assertion as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:i(1451,1,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_assertions_are_only_supported_when_moduleResolution_is_node16_or_nodenext:i(1452,1,"resolution_mode_assertions_are_only_supported_when_moduleResolution_is_node16_or_nodenext_1452","'resolution-mode' assertions are only supported when `moduleResolution` is `node16` or `nodenext`."),resolution_mode_should_be_either_require_or_import:i(1453,1,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:i(1454,1,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:i(1455,1,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:i(1456,1,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:i(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:i(1458,3,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",`File is ECMAScript module because '{0}' has field "type" with value "module"`),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:i(1459,3,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",`File is CommonJS module because '{0}' has field "type" whose value is not "module"`),File_is_CommonJS_module_because_0_does_not_have_field_type:i(1460,3,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460",`File is CommonJS module because '{0}' does not have field "type"`),File_is_CommonJS_module_because_package_json_was_not_found:i(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:i(1470,1,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:i(1471,1,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:i(1472,1,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:i(1473,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:i(1474,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:i(1475,3,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:i(1476,3,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:i(1477,1,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:i(1478,1,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:i(1479,1,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479",`The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:i(1480,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:i(1481,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481",`To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:i(1482,3,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:i(1483,3,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:i(1484,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484","'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:i(1485,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),Decorator_used_before_export_here:i(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),The_types_of_0_are_incompatible_between_these_types:i(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:i(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:i(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:i(2203,1,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:i(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:i(2205,1,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:i(2206,1,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:i(2207,1,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:i(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:i(2209,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:i(2210,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:i(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:i(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:i(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:i(2301,1,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:i(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:i(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:i(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:i(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:i(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:i(2307,1,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:i(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:i(2309,1,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:i(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:i(2311,1,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:i(2312,1,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:i(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:i(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:i(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:i(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:i(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:i(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:i(2319,1,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:i(2320,1,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:i(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:i(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:i(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:i(2324,1,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:i(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:i(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:i(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:i(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:i(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:i(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:i(2331,1,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:i(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_constructor_arguments:i(2333,1,"this_cannot_be_referenced_in_constructor_arguments_2333","'this' cannot be referenced in constructor arguments."),this_cannot_be_referenced_in_a_static_property_initializer:i(2334,1,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:i(2335,1,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:i(2336,1,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:i(2337,1,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:i(2338,1,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:i(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:i(2340,1,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:i(2341,1,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:i(2343,1,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:i(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:i(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Call_target_does_not_contain_any_signatures:i(2346,1,"Call_target_does_not_contain_any_signatures_2346","Call target does not contain any signatures."),Untyped_function_calls_may_not_accept_type_arguments:i(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:i(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:i(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:i(2350,1,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:i(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:i(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:i(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:i(2354,1,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value:i(2355,1,"A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'void' nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:i(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:i(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:i(2358,1,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type:i(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_F_2359","The right-hand side of an 'instanceof' expression must be of type 'any' or of a type assignable to the 'Function' interface type."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:i(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:i(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:i(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:i(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:i(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:i(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:i(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:i(2369,1,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:i(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:i(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:i(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:i(2373,1,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:i(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:i(2375,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:i(2376,1,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:i(2377,1,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:i(2378,1,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:i(2379,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),The_return_type_of_a_get_accessor_must_be_assignable_to_its_set_accessor_type:i(2380,1,"The_return_type_of_a_get_accessor_must_be_assignable_to_its_set_accessor_type_2380","The return type of a 'get' accessor must be assignable to its 'set' accessor type"),Overload_signatures_must_all_be_exported_or_non_exported:i(2383,1,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:i(2384,1,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:i(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:i(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:i(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:i(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:i(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:i(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:i(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:i(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:i(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:i(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:i(2395,1,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:i(2396,1,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:i(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:i(2398,1,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:i(2399,1,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:i(2400,1,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:i(2401,1,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:i(2402,1,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:i(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:i(2404,1,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:i(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:i(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:i(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:i(2408,1,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:i(2409,1,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:i(2410,1,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:i(2412,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:i(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:i(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:i(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:i(2415,1,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:i(2416,1,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:i(2417,1,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:i(2418,1,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:i(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:i(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:i(2422,1,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:i(2423,1,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:i(2425,1,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:i(2426,1,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:i(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:i(2428,1,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:i(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:i(2431,1,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:i(2432,1,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:i(2433,1,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:i(2434,1,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:i(2435,1,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:i(2436,1,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:i(2437,1,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:i(2438,1,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:i(2439,1,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:i(2440,1,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:i(2441,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:i(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:i(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:i(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:i(2445,1,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:i(2446,1,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:i(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:i(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:i(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:i(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:i(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:i(2452,1,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:i(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:i(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:i(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:i(2458,1,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:i(2459,1,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:i(2460,1,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:i(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:i(2462,1,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:i(2463,1,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:i(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:i(2465,1,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:i(2466,1,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:i(2467,1,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:i(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:i(2469,1,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:i(2472,1,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:i(2473,1,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_must_be_constant_expressions:i(2474,1,"const_enum_member_initializers_must_be_constant_expressions_2474","const enum member initializers must be constant expressions."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:i(2475,1,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:i(2476,1,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:i(2477,1,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:i(2478,1,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:i(2480,1,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:i(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:i(2483,1,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:i(2484,1,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:i(2487,1,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:i(2488,1,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:i(2489,1,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:i(2490,1,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:i(2491,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:i(2492,1,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:i(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:i(2494,1,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:i(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression:i(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_stand_2496","The 'arguments' object cannot be referenced in an arrow function in ES3 and ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:i(2497,1,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:i(2498,1,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:i(2499,1,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:i(2500,1,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:i(2501,1,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:i(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:i(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:i(2504,1,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:i(2505,1,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:i(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:i(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:i(2508,1,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:i(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:i(2510,1,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:i(2511,1,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:i(2512,1,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:i(2513,1,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:i(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:i(2515,1,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member '{1}' from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:i(2516,1,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:i(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:i(2518,1,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:i(2519,1,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:i(2520,1,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method:i(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_usi_2522","The 'arguments' object cannot be referenced in an async function or method in ES3 and ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:i(2523,1,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:i(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value:i(2525,1,"Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value_2525","Initializer provides no value for this binding element and the binding element has no default value."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:i(2526,1,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:i(2527,1,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:i(2528,1,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:i(2529,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:i(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:i(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:i(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:i(2533,1,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:i(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Type_0_cannot_be_used_to_index_type_1:i(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:i(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:i(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:i(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:i(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:i(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:i(2543,1,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:i(2544,1,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:i(2545,1,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:i(2547,1,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:i(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:i(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:i(2550,1,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:i(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:i(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:i(2553,1,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:i(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:i(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:i(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:i(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:i(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:i(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:i(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:i(2562,1,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:i(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:i(2564,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:i(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:i(2566,1,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:i(2567,1,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:i(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:i(2570,1,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:i(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:i(2574,1,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:i(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:i(2576,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:i(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:i(2578,1,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:i(2580,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:i(2581,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:i(2582,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:i(2583,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:i(2584,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:i(2585,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:i(2588,1,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:i(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:i(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:i(2591,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:i(2592,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:i(2593,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:i(2594,1,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:i(2595,1,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:i(2596,1,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:i(2597,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:i(2598,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:i(2602,1,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:i(2603,1,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:i(2604,1,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:i(2606,1,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:i(2607,1,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:i(2608,1,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:i(2609,1,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:i(2610,1,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:i(2611,1,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:i(2612,1,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:i(2613,1,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:i(2614,1,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:i(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:i(2616,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:i(2617,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:i(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:i(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:i(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:i(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:i(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:i(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:i(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:i(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:i(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:i(2628,1,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:i(2629,1,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:i(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:i(2631,1,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:i(2632,1,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:i(2633,1,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:i(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:i(2635,1,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:i(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:i(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:i(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:i(2649,1,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:i(2651,1,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:i(2652,1,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:i(2653,1,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),JSX_expressions_must_have_one_parent_element:i(2657,1,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:i(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:i(2659,1,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:i(2660,1,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:i(2661,1,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:i(2662,1,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:i(2663,1,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:i(2664,1,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:i(2665,1,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:i(2666,1,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:i(2667,1,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:i(2668,1,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:i(2669,1,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:i(2670,1,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:i(2671,1,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:i(2672,1,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:i(2673,1,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:i(2674,1,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:i(2675,1,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:i(2676,1,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:i(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:i(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:i(2679,1,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:i(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:i(2681,1,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:i(2683,1,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:i(2684,1,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:i(2685,1,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:i(2686,1,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:i(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:i(2688,1,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:i(2689,1,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:i(2690,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:i(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:i(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:i(2694,1,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:i(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:i(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:i(2697,1,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:i(2698,1,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:i(2699,1,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:i(2700,1,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:i(2701,1,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:i(2702,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:i(2703,1,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:i(2704,1,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:i(2705,1,"An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_de_2705","An async function or method in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:i(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:i(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:i(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:i(2709,1,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:i(2710,1,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:i(2711,1,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:i(2712,1,"A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declarat_2712","A dynamic import call in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:i(2713,1,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713",`Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:i(2714,1,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:i(2715,1,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:i(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:i(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:i(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:i(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:i(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:i(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:i(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:i(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:i(2724,1,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:i(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:i(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:i(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:i(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:i(2729,1,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:i(2730,1,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:i(2731,1,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:i(2732,1,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:i(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:i(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:i(2735,1,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:i(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:i(2737,1,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:i(2738,3,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:i(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:i(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:i(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:i(2742,1,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:i(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:i(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:i(2745,1,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:i(2746,1,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:i(2747,1,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_0_is_enabled:i(2748,1,"Cannot_access_ambient_const_enums_when_0_is_enabled_2748","Cannot access ambient const enums when '{0}' is enabled."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:i(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:i(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:i(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:i(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:i(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:i(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:i(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:i(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:i(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:i(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:i(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:i(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:i(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:i(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:i(2763,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:i(2764,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:i(2765,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:i(2766,1,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:i(2767,1,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:i(2768,1,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:i(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:i(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:i(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:i(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:i(2773,1,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:i(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:i(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:i(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:i(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:i(2778,1,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:i(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:i(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:i(2781,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:i(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:i(2783,1,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:i(2784,1,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:i(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:i(2786,1,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:i(2787,1,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:i(2788,1,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:i(2789,1,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:i(2790,1,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:i(2791,1,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:i(2792,1,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:i(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:i(2794,1,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:i(2795,1,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:i(2796,1,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:i(2797,1,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:i(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:i(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:i(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:i(2801,1,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:i(2802,1,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:i(2803,1,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:i(2804,1,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:i(2806,1,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:i(2807,1,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:i(2808,1,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:i(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:i(2810,1,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:i(2811,1,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:i(2812,1,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:i(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:i(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers:i(2815,1,"arguments_cannot_be_referenced_in_property_initializers_2815","'arguments' cannot be referenced in property initializers."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:i(2816,1,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:i(2817,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:i(2818,1,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:i(2819,1,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:i(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_or_nodenext:i(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_or_nodenext_2821","Import assertions are only supported when the '--module' option is set to 'esnext' or 'nodenext'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:i(2822,1,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Cannot_find_namespace_0_Did_you_mean_1:i(2833,1,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:i(2834,1,"Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in EcmaScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:i(2835,1,"Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in EcmaScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_transpile_to_commonjs_require_calls:i(2836,1,"Import_assertions_are_not_allowed_on_statements_that_transpile_to_commonjs_require_calls_2836","Import assertions are not allowed on statements that transpile to commonjs 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:i(2837,1,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:i(2838,1,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:i(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_an_interface_can_only_extend_named_types_and_classes:i(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_an_interface_can_only_extend_named_types_and_clas_2840","An interface cannot extend a primitive type like '{0}'; an interface can only extend named types and classes"),The_type_of_this_expression_cannot_be_named_without_a_resolution_mode_assertion_which_is_an_unstable_feature_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:i(2841,1,"The_type_of_this_expression_cannot_be_named_without_a_resolution_mode_assertion_which_is_an_unstable_2841","The type of this expression cannot be named without a 'resolution-mode' assertion, which is an unstable feature. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:i(2842,1,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:i(2843,1,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:i(2844,1,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:i(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead:i(2846,1,"A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846","A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),Import_declaration_0_is_using_private_name_1:i(4e3,1,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:i(4002,1,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:i(4004,1,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:i(4006,1,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:i(4008,1,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:i(4010,1,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:i(4012,1,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:i(4014,1,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:i(4016,1,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:i(4019,1,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:i(4020,1,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:i(4021,1,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:i(4022,1,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4023,1,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:i(4024,1,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:i(4025,1,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4026,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:i(4027,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:i(4028,1,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4029,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:i(4030,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:i(4031,1,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4032,1,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:i(4033,1,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4034,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:i(4035,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4036,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:i(4037,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4038,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4039,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:i(4040,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4041,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4042,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:i(4043,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:i(4044,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:i(4045,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:i(4046,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:i(4047,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:i(4048,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:i(4049,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:i(4050,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:i(4051,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:i(4052,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:i(4053,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:i(4054,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:i(4055,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:i(4056,1,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:i(4057,1,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:i(4058,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:i(4059,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:i(4060,1,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4061,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4062,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:i(4063,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4064,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:i(4065,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4066,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:i(4067,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4068,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4069,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:i(4070,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4071,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4072,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:i(4073,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4074,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:i(4075,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4076,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:i(4077,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:i(4078,1,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:i(4081,1,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:i(4082,1,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:i(4083,1,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:i(4084,1,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1:i(4085,1,"Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085","Extends clause for inferred type '{0}' has or is using private name '{1}'."),Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict:i(4090,1,"Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_librar_4090","Conflicting definitions for '{0}' found at '{1}' and '{2}'. Consider installing a specific version of this library to resolve the conflict."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4091,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:i(4092,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_class_expression_may_not_be_private_or_protected:i(4094,1,"Property_0_of_exported_class_expression_may_not_be_private_or_protected_4094","Property '{0}' of exported class expression may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4095,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:i(4096,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:i(4097,1,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4098,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:i(4099,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:i(4100,1,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4101,1,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:i(4102,1,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:i(4103,1,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:i(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:i(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:i(4106,1,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:i(4107,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4108,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:i(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:i(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:i(4111,1,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:i(4112,1,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:i(4113,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:i(4114,1,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:i(4115,1,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:i(4116,1,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:i(4117,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:i(4118,1,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:i(4119,1,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:i(4120,1,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:i(4121,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:i(4122,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:i(4123,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:i(4124,1,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),resolution_mode_assertions_are_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:i(4125,1,"resolution_mode_assertions_are_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_wi_4125","'resolution-mode' assertions are unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),The_current_host_does_not_support_the_0_option:i(5001,1,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:i(5009,1,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:i(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:i(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:i(5014,1,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:i(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:i(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:i(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:i(5033,1,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:i(5042,1,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:i(5047,1,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_cannot_be_specified_when_option_target_is_ES3:i(5048,1,"Option_0_cannot_be_specified_when_option_target_is_ES3_5048","Option '{0}' cannot be specified when option 'target' is 'ES3'."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:i(5051,1,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:i(5052,1,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:i(5053,1,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:i(5054,1,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:i(5055,1,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:i(5056,1,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:i(5057,1,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:i(5058,1,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:i(5059,1,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:i(5061,1,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:i(5062,1,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:i(5063,1,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:i(5064,1,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:i(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:i(5066,1,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:i(5067,1,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:i(5068,1,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:i(5069,1,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic:i(5070,1,"Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070","Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext:i(5071,1,"Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_5071","Option '--resolveJsonModule' can only be specified when module code generation is 'commonjs', 'amd', 'es2015' or 'esNext'."),Unknown_build_option_0:i(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:i(5073,1,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:i(5074,1,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:i(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:i(5076,1,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:i(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:i(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:i(5079,1,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:i(5080,1,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:i(5081,1,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:i(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:i(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),Tuple_members_must_all_have_names_or_all_not_have_names:i(5084,1,"Tuple_members_must_all_have_names_or_all_not_have_names_5084","Tuple members must all have names or all not have names."),A_tuple_member_cannot_be_both_optional_and_rest:i(5085,1,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:i(5086,1,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:i(5087,1,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:i(5088,1,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:i(5089,1,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:i(5090,1,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled:i(5091,1,"Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),The_root_value_of_a_0_file_must_be_an_object:i(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:i(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:i(5094,1,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_0_can_only_be_used_when_module_is_set_to_es2015_or_later:i(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:i(5096,1,"Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096","Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled:i(5097,1,"An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097","An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler:i(5098,1,"Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098","Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error:i(5101,1,"Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101",`Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),Option_0_has_been_removed_Please_remove_it_from_your_configuration:i(5102,1,"Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102","Option '{0}' has been removed. Please remove it from your configuration."),Invalid_value_for_ignoreDeprecations:i(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:i(5104,1,"Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104","Option '{0}' is redundant and cannot be specified with option '{1}'."),Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System:i(5105,1,"Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105","Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),Use_0_instead:i(5106,3,"Use_0_instead_5106","Use '{0}' instead."),Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error:i(5107,1,"Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107",`Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '"ignoreDeprecations": "{3}"' to silence this error.`),Option_0_1_has_been_removed_Please_remove_it_from_your_configuration:i(5108,1,"Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108","Option '{0}={1}' has been removed. Please remove it from your configuration."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:i(6e3,3,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:i(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:i(6002,3,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:i(6004,3,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:i(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:i(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:i(6007,3,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:i(6008,3,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:i(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:i(6010,3,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:i(6011,3,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:i(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:i(6013,3,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:i(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:i(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:i(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:i(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:i(6019,3,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:i(6020,3,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:i(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:i(6024,3,"options_6024","options"),file:i(6025,3,"file_6025","file"),Examples_Colon_0:i(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:i(6027,3,"Options_Colon_6027","Options:"),Version_0:i(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:i(6030,3,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:i(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:i(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:i(6034,3,"KIND_6034","KIND"),FILE:i(6035,3,"FILE_6035","FILE"),VERSION:i(6036,3,"VERSION_6036","VERSION"),LOCATION:i(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:i(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:i(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:i(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:i(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:i(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:i(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:i(6045,1,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:i(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:i(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:i(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:i(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:i(6052,3,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:i(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:i(6054,1,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:i(6055,3,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:i(6056,3,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:i(6058,3,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:i(6059,1,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:i(6060,3,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:i(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:i(6064,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:i(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:i(6066,3,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:i(6070,3,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:i(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:i(6072,3,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:i(6073,3,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:i(6074,3,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:i(6075,3,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:i(6076,3,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:i(6077,3,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:i(6078,3,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:i(6079,3,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:i(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),File_0_has_an_unsupported_extension_so_skipping_it:i(6081,3,"File_0_has_an_unsupported_extension_so_skipping_it_6081","File '{0}' has an unsupported extension, so skipping it."),Only_amd_and_system_modules_are_supported_alongside_0:i(6082,1,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:i(6083,3,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:i(6084,3,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:i(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:i(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:i(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:i(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:i(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:i(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:i(6091,3,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:i(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:i(6093,3,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:i(6094,3,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1:i(6095,3,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095","Loading module as file / folder, candidate module location '{0}', target file types: {1}."),File_0_does_not_exist:i(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:i(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_types_Colon_1:i(6098,3,"Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098","Loading module '{0}' from 'node_modules' folder, target file types: {1}."),Found_package_json_at_0:i(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:i(6100,3,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:i(6101,3,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:i(6102,3,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:i(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:i(6105,3,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:i(6106,3,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:i(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:i(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:i(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:i(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:i(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:i(6112,3,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:i(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:i(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:i(6115,3,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:i(6116,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:i(6119,3,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:i(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:i(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:i(6122,3,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:i(6123,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:i(6124,3,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:i(6125,3,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:i(6126,3,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:i(6127,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:i(6128,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:i(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:i(6131,1,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:i(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:i(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:i(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:i(6135,3,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:i(6136,3,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:i(6137,1,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:i(6138,1,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:i(6139,3,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:i(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:i(6141,3,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:i(6142,1,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:i(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified:i(6145,3,"Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified_6145","Module '{0}' was resolved as ambient module declared in '{1}' since this file was not modified."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:i(6146,3,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:i(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:i(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:i(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:i(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:i(6151,3,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:i(6152,3,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:i(6153,3,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:i(6154,3,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:i(6155,3,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:i(6156,3,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:i(6157,3,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:i(6158,3,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:i(6159,3,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:i(6160,3,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:i(6161,3,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:i(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:i(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Do_not_truncate_error_messages:i(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:i(6166,3,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:i(6167,3,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:i(6168,3,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:i(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:i(6170,3,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:i(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3:i(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'."),Enable_all_strict_type_checking_options:i(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:i(6182,3,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:i(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:i(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:i(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:i(6187,3,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:i(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:i(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:i(6191,3,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:i(6192,1,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:i(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:i(6194,3,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:i(6195,3,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:i(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:i(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:i(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:i(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:i(6200,1,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:i(6201,3,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:i(6202,1,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:i(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:i(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:i(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:i(6206,3,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:i(6207,3,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:i(6208,3,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:i(6209,3,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:i(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:i(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:i(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:i(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:i(6214,3,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:i(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:i(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:i(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:i(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:i(6219,3,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:i(6220,3,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:i(6221,3,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:i(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:i(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:i(6224,3,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:i(6225,3,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:i(6226,3,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:i(6227,3,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:i(6229,1,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:i(6230,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:i(6231,1,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:i(6232,1,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:i(6233,1,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:i(6234,1,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:i(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:i(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:i(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:i(6238,1,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:i(6239,3,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:i(6240,3,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:i(6241,3,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:i(6242,3,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:i(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:i(6244,3,"Modules_6244","Modules"),File_Management:i(6245,3,"File_Management_6245","File Management"),Emit:i(6246,3,"Emit_6246","Emit"),JavaScript_Support:i(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:i(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:i(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:i(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:i(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:i(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:i(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:i(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:i(6255,3,"Projects_6255","Projects"),Output_Formatting:i(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:i(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:i(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_1:i(6259,3,"Found_1_error_in_1_6259","Found 1 error in {1}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:i(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:i(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),File_name_0_has_a_1_extension_looking_up_2_instead:i(6262,3,"File_name_0_has_a_1_extension_looking_up_2_instead_6262","File name '{0}' has a '{1}' extension - looking up '{2}' instead."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:i(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present:i(6264,3,"Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264","Enable importing files with any extension, provided a declaration file is present."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:i(6270,3,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:i(6271,3,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:i(6272,3,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:i(6273,3,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:i(6274,3,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:i(6275,3,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:i(6276,3,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update:i(6277,3,"Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277","Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings:i(6278,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278",`There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),Enable_project_compilation:i(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:i(6304,1,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:i(6305,1,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:i(6306,1,"Referenced_project_0_must_have_setting_composite_Colon_true_6306",`Referenced project '{0}' must have setting "composite": true.`),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:i(6307,1,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Cannot_prepend_project_0_because_it_does_not_have_outFile_set:i(6308,1,"Cannot_prepend_project_0_because_it_does_not_have_outFile_set_6308","Cannot prepend project '{0}' because it does not have 'outFile' set"),Output_file_0_from_project_1_does_not_exist:i(6309,1,"Output_file_0_from_project_1_does_not_exist_6309","Output file '{0}' from project '{1}' does not exist"),Referenced_project_0_may_not_disable_emit:i(6310,1,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:i(6350,3,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:i(6351,3,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:i(6352,3,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:i(6353,3,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:i(6354,3,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:i(6355,3,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:i(6356,3,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:i(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:i(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:i(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:i(6361,3,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:i(6362,3,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:i(6363,3,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:i(6364,3,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:i(6365,3,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:i(6367,3,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:i(6369,1,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:i(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:i(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed:i(6372,3,"Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed_6372","Project '{0}' is out of date because output of its dependency '{1}' has changed"),Updating_output_of_project_0:i(6373,3,"Updating_output_of_project_0_6373","Updating output of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:i(6374,3,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),A_non_dry_build_would_update_output_of_project_0:i(6375,3,"A_non_dry_build_would_update_output_of_project_0_6375","A non-dry build would update output of project '{0}'"),Cannot_update_output_of_project_0_because_there_was_error_reading_file_1:i(6376,3,"Cannot_update_output_of_project_0_because_there_was_error_reading_file_1_6376","Cannot update output of project '{0}' because there was error reading file '{1}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:i(6377,1,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:i(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:i(6380,3,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:i(6381,3,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:i(6382,3,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:i(6383,3,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:i(6384,3,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:i(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:i(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:i(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:i(6388,3,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:i(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:i(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:i(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:i(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:i(6393,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:i(6394,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:i(6395,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:i(6396,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:i(6397,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:i(6398,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:i(6399,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:i(6400,3,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:i(6401,3,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:i(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:i(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:i(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:i(6405,3,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions:i(6406,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406","Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set:i(6407,3,"Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407","Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),Use_the_package_json_exports_field_when_resolving_package_imports:i(6408,3,"Use_the_package_json_exports_field_when_resolving_package_imports_6408","Use the package.json 'exports' field when resolving package imports."),Use_the_package_json_imports_field_when_resolving_imports:i(6409,3,"Use_the_package_json_imports_field_when_resolving_imports_6409","Use the package.json 'imports' field when resolving imports."),Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports:i(6410,3,"Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410","Conditions to set in addition to the resolver-specific defaults when resolving imports."),true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false:i(6411,3,"true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411","`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more:i(6412,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412","Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),Entering_conditional_exports:i(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:i(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:i(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:i(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:i(6500,3,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:i(6501,3,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:i(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:i(6503,3,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:i(6504,1,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:i(6505,3,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:i(6506,3,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these_files:i(6600,3,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:i(6601,3,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:i(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:i(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:i(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:i(6605,3,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:i(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:i(6607,3,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:i(6608,3,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:i(6609,3,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:i(6611,3,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:i(6612,3,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:i(6613,3,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:i(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:i(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:i(6616,3,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:i(6617,3,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:i(6618,3,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:i(6619,3,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:i(6620,3,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:i(6621,3,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:i(6622,3,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:i(6623,3,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:i(6624,3,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:i(6625,3,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:i(6626,3,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:i(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:i(6628,3,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:i(6629,3,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_legacy_experimental_decorators:i(6630,3,"Enable_experimental_support_for_legacy_experimental_decorators_6630","Enable experimental support for legacy experimental decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:i(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:i(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:i(6633,3,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:i(6634,3,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:i(6635,3,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:i(6636,3,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:i(6637,3,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:i(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:i(6639,3,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:i(6641,3,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:i(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:i(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:i(6644,3,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:i(6645,3,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:i(6646,3,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:i(6647,3,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:i(6648,3,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:i(6649,3,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:i(6650,3,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:i(6651,3,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:i(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:i(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:i(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:i(6655,3,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:i(6656,3,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:i(6657,3,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:i(6658,3,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:i(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:i(6660,3,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:i(6661,3,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:i(6662,3,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:i(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:i(6664,3,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:i(6665,3,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:i(6666,3,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:i(6667,3,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:i(6668,3,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:i(6669,3,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:i(6670,3,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:i(6671,3,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:i(6672,3,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:i(6673,3,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:i(6674,3,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:i(6675,3,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:i(6676,3,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:i(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:i(6678,3,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:i(6679,3,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:i(6680,3,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:i(6681,3,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:i(6682,3,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:i(6683,3,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:i(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:i(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:i(6686,3,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:i(6687,3,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:i(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:i(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:i(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:i(6691,3,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:i(6692,3,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:i(6693,3,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:i(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:i(6695,3,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:i(6697,3,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:i(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:i(6699,3,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:i(6700,3,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:i(6701,3,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:i(6702,3,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:i(6703,3,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:i(6704,3,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:i(6705,3,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:i(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:i(6707,3,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:i(6709,3,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:i(6710,3,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:i(6711,3,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:i(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:i(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:i(6714,3,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:i(6715,3,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:i(6717,3,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:i(6718,3,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Default_catch_clause_variables_as_unknown_instead_of_any:i(6803,3,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting:i(6804,3,"Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804","Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),one_of_Colon:i(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:i(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:i(6902,3,"type_Colon_6902","type:"),default_Colon:i(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:i(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:i(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:i(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:i(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:i(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:i(6909,3,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:i(69010,3,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:i(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:i(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:i(6913,3,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:i(6914,3,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:i(6915,3,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:i(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:i(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:i(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:i(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:i(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:i(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:i(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:i(6923,3,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:i(6924,3,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:i(6925,3,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:i(6926,3,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:i(6927,3,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:i(6928,3,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:i(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:i(6930,3,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:i(6931,1,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:i(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:i(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:i(7008,1,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:i(7009,1,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:i(7010,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:i(7011,1,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation:i(7012,1,"This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012","This overload implicitly returns the type '{0}' because it lacks a return type annotation."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:i(7013,1,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:i(7014,1,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:i(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:i(7016,1,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:i(7017,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:i(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:i(7019,1,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:i(7020,1,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:i(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:i(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:i(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:i(7025,1,"Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_retu_7025","Generator implicitly has yield type '{0}' because it does not yield any values. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:i(7026,1,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:i(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:i(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:i(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:i(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:i(7031,1,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:i(7032,1,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:i(7033,1,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:i(7034,1,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:i(7035,1,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:i(7036,1,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:i(7037,3,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:i(7038,3,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:i(7039,1,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:i(7040,1,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:i(7041,1,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:i(7042,1,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:i(7043,2,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:i(7044,2,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:i(7045,2,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:i(7046,2,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:i(7047,2,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:i(7048,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:i(7049,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:i(7050,2,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:i(7051,1,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:i(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:i(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:i(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:i(7055,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:i(7056,1,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:i(7057,1,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:i(7058,1,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:i(7059,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:i(7060,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:i(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:i(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:i(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:i(8002,1,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:i(8003,1,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:i(8004,1,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:i(8005,1,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:i(8006,1,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:i(8008,1,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:i(8009,1,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:i(8010,1,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:i(8011,1,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:i(8012,1,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:i(8013,1,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:i(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:i(8017,1,"Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0_8017","Octal literal types must use ES2015 syntax. Use the syntax '{0}'."),Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0:i(8018,1,"Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0_8018","Octal literals are not allowed in enums members initializer. Use the syntax '{0}'."),Report_errors_in_js_files:i(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:i(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:i(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:i(8022,1,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:i(8023,1,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:i(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:i(8025,1,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:i(8026,1,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:i(8027,1,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:i(8028,1,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:i(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:i(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:i(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:i(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:i(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:i(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:i(8035,1,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:i(8036,1,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:i(8037,1,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export:i(8038,1,"Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038","Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:i(9005,1,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:i(9006,1,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:i(17e3,1,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:i(17001,1,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:i(17002,1,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:i(17004,1,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:i(17005,1,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:i(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:i(17007,1,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:i(17008,1,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:i(17009,1,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:i(17010,1,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:i(17011,1,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:i(17012,1,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:i(17013,1,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:i(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:i(17015,1,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:i(17016,1,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:i(17017,1,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:i(17018,1,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:i(17019,1,"_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019","'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:i(17020,1,"_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020","'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),Circularity_detected_while_resolving_configuration_Colon_0:i(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:i(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:i(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:i(80001,2,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:i(80002,2,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:i(80003,2,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:i(80004,2,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:i(80005,2,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:i(80006,2,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:i(80007,2,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:i(80008,2,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),Add_missing_super_call:i(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:i(90002,3,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:i(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:i(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:i(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:i(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:i(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:i(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:i(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:i(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:i(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:i(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:i(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:i(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:i(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:i(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:i(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:i(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:i(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:i(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:i(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:i(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:i(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:i(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:i(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:i(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:i(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:i(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:i(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:i(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:i(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:i(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:i(90037,3,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:i(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:i(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:i(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:i(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:i(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:i(90055,3,"Remove_type_from_import_declaration_from_0_90055",`Remove 'type' from import declaration from "{0}"`),Remove_type_from_import_of_0_from_1:i(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:i(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:i(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:i(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:i(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Convert_function_to_an_ES2015_class:i(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:i(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:i(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:i(95005,3,"Extract_function_95005","Extract function"),Extract_constant:i(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:i(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:i(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:i(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:i(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:i(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:i(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:i(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:i(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:i(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:i(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:i(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:i(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:i(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:i(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:i(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:i(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:i(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:i(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:i(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:i(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:i(95028,3,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:i(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:i(95030,3,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:i(95031,3,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:i(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:i(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:i(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:i(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:i(95036,3,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:i(95037,3,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:i(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:i(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:i(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:i(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:i(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:i(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:i(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:i(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:i(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:i(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:i(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:i(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:i(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:i(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:i(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:i(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:i(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:i(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:i(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:i(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:i(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:i(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:i(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:i(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:i(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:i(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:i(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:i(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:i(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:i(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:i(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:i(95069,3,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:i(95070,3,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:i(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:i(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:i(95073,3,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:i(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:i(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:i(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:i(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:i(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:i(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:i(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:i(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:i(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:i(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:i(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:i(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:i(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:i(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:i(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:i(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:i(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:i(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:i(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:i(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:i(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:i(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:i(95097,3,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:i(95098,3,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:i(95099,3,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:i(95100,3,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:i(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:i(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:i(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:i(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:i(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:i(95108,3,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:i(95109,3,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:i(95110,3,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:i(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:i(95112,3,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:i(95113,3,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:i(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:i(95115,3,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:i(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:i(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:i(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:i(95119,3,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:i(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:i(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:i(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:i(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:i(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:i(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:i(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:i(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:i(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:i(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:i(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:i(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:i(95132,3,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:i(95133,3,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:i(95134,3,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:i(95135,3,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:i(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:i(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:i(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:i(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:i(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:i(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:i(95142,3,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:i(95143,3,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:i(95144,3,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:i(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:i(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:i(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:i(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:i(95149,3,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:i(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:i(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:i(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:i(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenation:i(95154,3,"Can_only_convert_string_concatenation_95154","Can only convert string concatenation"),Selection_is_not_a_valid_statement_or_statements:i(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:i(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:i(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:i(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:i(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:i(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:i(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:i(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:i(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:i(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:i(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:i(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:i(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:i(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:i(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:i(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:i(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:i(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:i(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:i(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:i(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:i(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:i(18006,1,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:i(18007,1,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:i(18009,1,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:i(18010,1,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:i(18011,1,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:i(18012,1,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:i(18013,1,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:i(18014,1,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:i(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:i(18016,1,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:i(18017,1,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:i(18018,1,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:i(18019,1,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:i(18024,1,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:i(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:i(18027,1,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:i(18028,1,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:i(18029,1,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:i(18030,1,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:i(18031,1,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:i(18032,1,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values:i(18033,1,"Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033","Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:i(18034,3,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:i(18035,1,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:i(18036,1,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),Await_expression_cannot_be_used_inside_a_class_static_block:i(18037,1,"Await_expression_cannot_be_used_inside_a_class_static_block_18037","Await expression cannot be used inside a class static block."),For_await_loops_cannot_be_used_inside_a_class_static_block:i(18038,1,"For_await_loops_cannot_be_used_inside_a_class_static_block_18038","'For await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:i(18039,1,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:i(18041,1,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:i(18042,1,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:i(18043,1,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:i(18044,3,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:i(18045,1,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:i(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:i(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:i(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:i(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:i(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),Compiler_option_0_cannot_be_given_an_empty_string:i(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string.")}}});function fr(e){return e>=79}function qT(e){return e===31||fr(e)}function D_(e,t){if(e=2?D_(e,ZT):t===1?D_(e,YT):D_(e,KT)}function iA(e,t){return t>=2?D_(e,e3):t===1?D_(e,QT):D_(e,XT)}function aA(e){let t=[];return e.forEach((r,s)=>{t[r]=s}),t}function Br(e){return n3[e]}function _l(e){return Ty.get(e)}function Kp(e){let t=[],r=0,s=0;for(;r127&&un(f)&&(t.push(s),s=r);break}}return t.push(s),t}function sA(e,t,r,s){return e.getPositionOfLineAndCharacter?e.getPositionOfLineAndCharacter(t,r,s):dy(ss(e),t,r,e.text,s)}function dy(e,t,r,s,f){(t<0||t>=e.length)&&(f?t=t<0?0:t>=e.length?e.length-1:t:Y.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${s!==void 0?Ie(e,Kp(s)):"unknown"}`));let x=e[t]+r;return f?x>e[t+1]?e[t+1]:typeof s=="string"&&x>s.length?s.length:x:(t=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function un(e){return e===10||e===13||e===8232||e===8233}function O_(e){return e>=48&&e<=57}function Xp(e){return O_(e)||e>=65&&e<=70||e>=97&&e<=102}function oA(e){return e<=1114111}function hy(e){return e>=48&&e<=55}function _A(e,t){let r=e.charCodeAt(t);switch(r){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return t===0;default:return r>127}}function Ar(e,t,r,s,f){if(hs(t))return t;let x=!1;for(;;){let w=e.charCodeAt(t);switch(w){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,r)return t;x=!!f;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(s)break;if(e.charCodeAt(t+1)===47){for(t+=2;t127&&os(w)){t++;continue}break}return t}}function Co(e,t){if(Y.assert(t>=0),t===0||un(e.charCodeAt(t-1))){let r=e.charCodeAt(t);if(t+ll=0&&r127&&os(ae)){X&&un(ae)&&(N=!0),r++;continue}break e}}return X&&($=f(A,g,B,N,x,$)),$}function cA(e,t,r,s){return Yp(!1,e,t,!1,r,s)}function lA(e,t,r,s){return Yp(!1,e,t,!0,r,s)}function zT(e,t,r,s,f){return Yp(!0,e,t,!1,r,s,f)}function WT(e,t,r,s,f){return Yp(!0,e,t,!0,r,s,f)}function VT(e,t,r,s,f){let x=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[];return x.push({kind:r,pos:e,end:t,hasTrailingNewLine:s}),x}function Ao(e,t){return zT(e,t,VT,void 0,void 0)}function HT(e,t){return WT(e,t,VT,void 0,void 0)}function GT(e){let t=Qp.exec(e);if(t)return t[0]}function Wn(e,t){return e>=65&&e<=90||e>=97&&e<=122||e===36||e===95||e>127&&UT(e,t)}function Rs(e,t,r){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===36||e===95||(r===1?e===45||e===58:!1)||e>127&&iA(e,t)}function vy(e,t,r){let s=ii(e,0);if(!Wn(s,t))return!1;for(let f=yi(s);f2&&arguments[2]!==void 0?arguments[2]:0,s=arguments.length>3?arguments[3]:void 0,f=arguments.length>4?arguments[4]:void 0,x=arguments.length>5?arguments[5]:void 0,w=arguments.length>6?arguments[6]:void 0;var A=s,g,B,N,X,F,$,ae,Te,Se=0;ue(A,x,w);var Ye={getStartPos:()=>N,getTextPos:()=>g,getToken:()=>F,getTokenPos:()=>X,getTokenText:()=>A.substring(X,g),getTokenValue:()=>$,hasUnicodeEscape:()=>(ae&1024)!==0,hasExtendedUnicodeEscape:()=>(ae&8)!==0,hasPrecedingLineBreak:()=>(ae&1)!==0,hasPrecedingJSDocComment:()=>(ae&2)!==0,isIdentifier:()=>F===79||F>116,isReservedWord:()=>F>=81&&F<=116,isUnterminated:()=>(ae&4)!==0,getCommentDirectives:()=>Te,getNumericLiteralFlags:()=>ae&1008,getTokenFlags:()=>ae,reScanGreaterToken:Sn,reScanAsteriskEqualsToken:In,reScanSlashToken:pr,reScanTemplateToken:Nn,reScanTemplateHeadOrNoSubstitutionTemplate:ar,scanJsxIdentifier:nr,scanJsxAttributeValue:br,reScanJsxAttributeValue:Kr,reScanJsxToken:oi,reScanLessThanToken:cr,reScanHashToken:$r,reScanQuestionToken:hr,reScanInvalidIdentifier:Gr,scanJsxToken:On,scanJsDocToken:wa,scan:Ur,getText:Ca,clearCommentDirectives:St,setText:ue,setScriptTarget:_t,setLanguageVariant:ft,setOnError:He,setTextPos:Kt,setInJSDocType:zt,tryScan:_i,lookAhead:Mn,scanRange:Ki};return Y.isDebugging&&Object.defineProperty(Ye,"__debugShowCurrentPositionInText",{get:()=>{let xe=Ye.getText();return xe.slice(0,Ye.getStartPos())+"\u2551"+xe.slice(Ye.getStartPos())}}),Ye;function Oe(xe){let Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:g,Re=arguments.length>2?arguments[2]:void 0;if(f){let ot=g;g=Le,f(xe,Re||0),g=ot}}function oe(){let xe=g,Le=!1,Re=!1,ot="";for(;;){let Ct=A.charCodeAt(g);if(Ct===95){ae|=512,Le?(Le=!1,Re=!0,ot+=A.substring(xe,g)):Oe(Re?ve.Multiple_consecutive_numeric_separators_are_not_permitted:ve.Numeric_separators_are_not_allowed_here,g,1),g++,xe=g;continue}if(O_(Ct)){Le=!0,Re=!1,g++;continue}break}return A.charCodeAt(g-1)===95&&Oe(ve.Numeric_separators_are_not_allowed_here,g-1,1),ot+A.substring(xe,g)}function Ve(){let xe=g,Le=oe(),Re,ot;A.charCodeAt(g)===46&&(g++,Re=oe());let Ct=g;if(A.charCodeAt(g)===69||A.charCodeAt(g)===101){g++,ae|=16,(A.charCodeAt(g)===43||A.charCodeAt(g)===45)&&g++;let It=g,Mr=oe();Mr?(ot=A.substring(Ct,It)+Mr,Ct=g):Oe(ve.Digit_expected)}let Mt;if(ae&512?(Mt=Le,Re&&(Mt+="."+Re),ot&&(Mt+=ot)):Mt=A.substring(xe,Ct),Re!==void 0||ae&16)return pt(xe,Re===void 0&&!!(ae&16)),{type:8,value:""+ +Mt};{$=Mt;let It=dn();return pt(xe),{type:It,value:$}}}function pt(xe,Le){if(!Wn(ii(A,g),e))return;let Re=g,{length:ot}=an();ot===1&&A[Re]==="n"?Oe(Le?ve.A_bigint_literal_cannot_use_exponential_notation:ve.A_bigint_literal_must_be_an_integer,xe,Re-xe+1):(Oe(ve.An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal,Re,ot),g=Re)}function Gt(){let xe=g;for(;hy(A.charCodeAt(g));)g++;return+A.substring(xe,g)}function Nt(xe,Le){let Re=er(xe,!1,Le);return Re?parseInt(Re,16):-1}function Xt(xe,Le){return er(xe,!0,Le)}function er(xe,Le,Re){let ot=[],Ct=!1,Mt=!1;for(;ot.length=65&&It<=70)It+=97-65;else if(!(It>=48&&It<=57||It>=97&&It<=102))break;ot.push(It),g++,Mt=!1}return ot.length0&&arguments[0]!==void 0?arguments[0]:!1,Le=A.charCodeAt(g);g++;let Re="",ot=g;for(;;){if(g>=B){Re+=A.substring(ot,g),ae|=4,Oe(ve.Unterminated_string_literal);break}let Ct=A.charCodeAt(g);if(Ct===Le){Re+=A.substring(ot,g),g++;break}if(Ct===92&&!xe){Re+=A.substring(ot,g),Re+=Gi(),ot=g;continue}if(un(Ct)&&!xe){Re+=A.substring(ot,g),ae|=4,Oe(ve.Unterminated_string_literal);break}g++}return Re}function Hr(xe){let Le=A.charCodeAt(g)===96;g++;let Re=g,ot="",Ct;for(;;){if(g>=B){ot+=A.substring(Re,g),ae|=4,Oe(ve.Unterminated_template_literal),Ct=Le?14:17;break}let Mt=A.charCodeAt(g);if(Mt===96){ot+=A.substring(Re,g),g++,Ct=Le?14:17;break}if(Mt===36&&g+1=B)return Oe(ve.Unexpected_end_of_text),"";let Re=A.charCodeAt(g);switch(g++,Re){case 48:return xe&&g=0?String.fromCharCode(Le):(Oe(ve.Hexadecimal_digit_expected),"")}function fn(){let xe=Xt(1,!1),Le=xe?parseInt(xe,16):-1,Re=!1;return Le<0?(Oe(ve.Hexadecimal_digit_expected),Re=!0):Le>1114111&&(Oe(ve.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive),Re=!0),g>=B?(Oe(ve.Unexpected_end_of_text),Re=!0):A.charCodeAt(g)===125?g++:(Oe(ve.Unterminated_Unicode_escape_sequence),Re=!0),Re?"":by(Le)}function Ut(){if(g+5=0&&Rs(Re,e)){g+=3,ae|=8,xe+=fn(),Le=g;continue}if(Re=Ut(),!(Re>=0&&Rs(Re,e)))break;ae|=1024,xe+=A.substring(Le,g),xe+=by(Re),g+=6,Le=g}else break}return xe+=A.substring(Le,g),xe}function mr(){let xe=$.length;if(xe>=2&&xe<=12){let Le=$.charCodeAt(0);if(Le>=97&&Le<=122){let Re=$T.get($);if(Re!==void 0)return F=Re}}return F=79}function $i(xe){let Le="",Re=!1,ot=!1;for(;;){let Ct=A.charCodeAt(g);if(Ct===95){ae|=512,Re?(Re=!1,ot=!0):Oe(ot?ve.Multiple_consecutive_numeric_separators_are_not_permitted:ve.Numeric_separators_are_not_allowed_here,g,1),g++;continue}if(Re=!0,!O_(Ct)||Ct-48>=xe)break;Le+=A[g],g++,ot=!1}return A.charCodeAt(g-1)===95&&Oe(ve.Numeric_separators_are_not_allowed_here,g-1,1),Le}function dn(){return A.charCodeAt(g)===110?($+="n",ae&384&&($=Hf($)+"n"),g++,9):($=""+(ae&128?parseInt($.slice(2),2):ae&256?parseInt($.slice(2),8):+$),8)}function Ur(){N=g,ae=0;let xe=!1;for(;;){if(X=g,g>=B)return F=1;let Le=ii(A,g);if(Le===35&&g===0&&gy(A,g)){if(g=yy(A,g),t)continue;return F=6}switch(Le){case 10:case 13:if(ae|=1,t){g++;continue}else return Le===13&&g+1=0&&Wn(Re,e))return g+=3,ae|=8,$=fn()+an(),F=mr();let ot=Ut();return ot>=0&&Wn(ot,e)?(g+=6,ae|=1024,$=String.fromCharCode(ot)+an(),F=mr()):(Oe(ve.Invalid_character),g++,F=0);case 35:if(g!==0&&A[g+1]==="!")return Oe(ve.can_only_be_used_at_the_start_of_a_file),g++,F=0;let Ct=ii(A,g+1);if(Ct===92){g++;let Mr=kn();if(Mr>=0&&Wn(Mr,e))return g+=3,ae|=8,$="#"+fn()+an(),F=80;let gr=Ut();if(gr>=0&&Wn(gr,e))return g+=6,ae|=1024,$="#"+String.fromCharCode(gr)+an(),F=80;g--}return Wn(Ct,e)?(g++,_r(Ct,e)):($="#",Oe(ve.Invalid_character,g++,yi(Le))),F=80;default:let Mt=_r(Le,e);if(Mt)return F=Mt;if(N_(Le)){g+=yi(Le);continue}else if(un(Le)){ae|=1,g+=yi(Le);continue}let It=yi(Le);return Oe(ve.Invalid_character,g,It),g+=It,F=0}}}function Gr(){Y.assert(F===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),g=X=N,ae=0;let xe=ii(A,g),Le=_r(xe,99);return Le?F=Le:(g+=yi(xe),F)}function _r(xe,Le){let Re=xe;if(Wn(Re,Le)){for(g+=yi(Re);g0&&arguments[0]!==void 0?arguments[0]:!0;return g=X=N,F=On(xe)}function cr(){return F===47?(g=X+1,F=29):F}function $r(){return F===80?(g=X+1,F=62):F}function hr(){return Y.assert(F===60,"'reScanQuestionToken' should only be called on a '??'"),g=X+1,F=57}function On(){let xe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;if(N=X=g,g>=B)return F=1;let Le=A.charCodeAt(g);if(Le===60)return A.charCodeAt(g+1)===47?(g+=2,F=30):(g++,F=29);if(Le===123)return g++,F=18;let Re=0;for(;g0)break;os(Le)||(Re=g)}g++}return $=A.substring(N,g),Re===-1?12:11}function nr(){if(fr(F)){let xe=!1;for(;g=B)return F=1;let xe=ii(A,g);switch(g+=yi(xe),xe){case 9:case 11:case 12:case 32:for(;g=0&&Wn(Le,e))return g+=3,ae|=8,$=fn()+an(),F=mr();let Re=Ut();return Re>=0&&Wn(Re,e)?(g+=6,ae|=1024,$=String.fromCharCode(Re)+an(),F=mr()):(g++,F=0)}if(Wn(xe,e)){let Le=xe;for(;g=0),g=xe,N=xe,X=xe,F=0,$=void 0,ae=0}function zt(xe){Se+=xe?1:-1}}function yi(e){return e>=65536?2:1}function uA(e){if(Y.assert(0<=e&&e<=1114111),e<=65535)return String.fromCharCode(e);let t=Math.floor((e-65536)/1024)+55296,r=(e-65536)%1024+56320;return String.fromCharCode(t,r)}function by(e){return i3(e)}var cl,$T,Ty,KT,XT,YT,QT,ZT,e3,t3,r3,n3,ll,Qp,ii,i3,pA=D({"src/compiler/scanner.ts"(){"use strict";nn(),cl={abstract:126,accessor:127,any:131,as:128,asserts:129,assert:130,bigint:160,boolean:134,break:81,case:82,catch:83,class:84,continue:86,const:85,constructor:135,debugger:87,declare:136,default:88,delete:89,do:90,else:91,enum:92,export:93,extends:94,false:95,finally:96,for:97,from:158,function:98,get:137,if:99,implements:117,import:100,in:101,infer:138,instanceof:102,interface:118,intrinsic:139,is:140,keyof:141,let:119,module:142,namespace:143,never:144,new:103,null:104,number:148,object:149,package:120,private:121,protected:122,public:123,override:161,out:145,readonly:146,require:147,global:159,return:105,satisfies:150,set:151,static:124,string:152,super:106,switch:107,symbol:153,this:108,throw:109,true:110,try:111,type:154,typeof:112,undefined:155,unique:156,unknown:157,var:113,void:114,while:115,with:116,yield:125,async:132,await:133,of:162},$T=new Map(Object.entries(cl)),Ty=new Map(Object.entries(Object.assign(Object.assign({},cl),{},{"{":18,"}":19,"(":20,")":21,"[":22,"]":23,".":24,"...":25,";":26,",":27,"<":29,">":31,"<=":32,">=":33,"==":34,"!=":35,"===":36,"!==":37,"=>":38,"+":39,"-":40,"**":42,"*":41,"/":43,"%":44,"++":45,"--":46,"<<":47,">":48,">>>":49,"&":50,"|":51,"^":52,"!":53,"~":54,"&&":55,"||":56,"?":57,"??":60,"?.":28,":":58,"=":63,"+=":64,"-=":65,"*=":66,"**=":67,"/=":68,"%=":69,"<<=":70,">>=":71,">>>=":72,"&=":73,"|=":74,"^=":78,"||=":75,"&&=":76,"??=":77,"@":59,"#":62,"`":61}))),KT=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1569,1594,1600,1610,1649,1747,1749,1749,1765,1766,1786,1788,1808,1808,1810,1836,1920,1957,2309,2361,2365,2365,2384,2384,2392,2401,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2784,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2877,2877,2908,2909,2911,2913,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3294,3294,3296,3297,3333,3340,3342,3344,3346,3368,3370,3385,3424,3425,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3946,3976,3979,4096,4129,4131,4135,4137,4138,4176,4181,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6067,6176,6263,6272,6312,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8319,8319,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12329,12337,12341,12344,12346,12353,12436,12445,12446,12449,12538,12540,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65138,65140,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],XT=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,768,846,864,866,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1155,1158,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1425,1441,1443,1465,1467,1469,1471,1471,1473,1474,1476,1476,1488,1514,1520,1522,1569,1594,1600,1621,1632,1641,1648,1747,1749,1756,1759,1768,1770,1773,1776,1788,1808,1836,1840,1866,1920,1968,2305,2307,2309,2361,2364,2381,2384,2388,2392,2403,2406,2415,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2524,2525,2527,2531,2534,2545,2562,2562,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2649,2652,2654,2654,2662,2676,2689,2691,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2784,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2876,2883,2887,2888,2891,2893,2902,2903,2908,2909,2911,2913,2918,2927,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3006,3010,3014,3016,3018,3021,3031,3031,3047,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3134,3140,3142,3144,3146,3149,3157,3158,3168,3169,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3262,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3297,3302,3311,3330,3331,3333,3340,3342,3344,3346,3368,3370,3385,3390,3395,3398,3400,3402,3405,3415,3415,3424,3425,3430,3439,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3805,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3946,3953,3972,3974,3979,3984,3991,3993,4028,4038,4038,4096,4129,4131,4135,4137,4138,4140,4146,4150,4153,4160,4169,4176,4185,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,4969,4977,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6099,6112,6121,6160,6169,6176,6263,6272,6313,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8319,8319,8400,8412,8417,8417,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12335,12337,12341,12344,12346,12353,12436,12441,12442,12445,12446,12449,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65056,65059,65075,65076,65101,65103,65136,65138,65140,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500],YT=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],QT=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],ZT=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2208,2228,2230,2237,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42943,42946,42950,42999,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69376,69404,69415,69415,69424,69445,69600,69622,69635,69687,69763,69807,69840,69864,69891,69926,69956,69956,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70751,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71680,71723,71840,71903,71935,71935,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72384,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,123136,123180,123191,123197,123214,123214,123584,123627,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101],e3=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2208,2228,2230,2237,2259,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3162,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3328,3331,3333,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7673,7675,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42943,42946,42950,42999,43047,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69376,69404,69415,69415,69424,69456,69600,69622,69632,69702,69734,69743,69759,69818,69840,69864,69872,69881,69888,69940,69942,69951,69956,69958,69968,70003,70006,70006,70016,70084,70089,70092,70096,70106,70108,70108,70144,70161,70163,70199,70206,70206,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70751,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71680,71738,71840,71913,71935,71935,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72384,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92768,92777,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,123136,123180,123184,123197,123200,123209,123214,123214,123584,123641,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101,917760,917999],t3=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,r3=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,n3=aA(Ty),ll=7,Qp=/^#!.*/,ii=String.prototype.codePointAt?(e,t)=>e.codePointAt(t):function(t,r){let s=t.length;if(r<0||r>=s)return;let f=t.charCodeAt(r);if(f>=55296&&f<=56319&&s>r+1){let x=t.charCodeAt(r+1);if(x>=56320&&x<=57343)return(f-55296)*1024+x-56320+65536}return f},i3=String.fromCodePoint?e=>String.fromCodePoint(e):uA}});function fA(e){return So(e)||A_(e)}function dA(e){return uo(e,a2)}function a3(e){switch(Uf(e)){case 99:return"lib.esnext.full.d.ts";case 9:return"lib.es2022.full.d.ts";case 8:return"lib.es2021.full.d.ts";case 7:return"lib.es2020.full.d.ts";case 6:return"lib.es2019.full.d.ts";case 5:return"lib.es2018.full.d.ts";case 4:return"lib.es2017.full.d.ts";case 3:return"lib.es2016.full.d.ts";case 2:return"lib.es6.d.ts";default:return"lib.d.ts"}}function Ir(e){return e.start+e.length}function s3(e){return e.length===0}function mA(e,t){return t>=e.start&&t=e.pos&&t<=e.end}function gA(e,t){return t.start>=e.start&&Ir(t)<=Ir(e)}function yA(e,t){return o3(e,t)!==void 0}function o3(e,t){let r=_3(e,t);return r&&r.length===0?void 0:r}function vA(e,t){return Sy(e.start,e.length,t.start,t.length)}function bA(e,t,r){return Sy(e.start,e.length,t,r)}function Sy(e,t,r,s){let f=e+t,x=r+s;return r<=f&&x>=e}function TA(e,t){return t<=Ir(e)&&t>=e.start}function _3(e,t){let r=Math.max(e.start,t.start),s=Math.min(Ir(e),Ir(t));return r<=s?ha(r,s):void 0}function L_(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function ha(e,t){return L_(e,t-e)}function R_(e){return L_(e.span.start,e.newLength)}function c3(e){return s3(e.span)&&e.newLength===0}function Zp(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}function SA(e){if(e.length===0)return Vy;if(e.length===1)return e[0];let t=e[0],r=t.span.start,s=Ir(t.span),f=r+t.newLength;for(let x=1;xt.flags)}function wA(e,t,r){let s=e.toLowerCase(),f=/^([a-z]+)([_\-]([a-z]+))?$/.exec(s);if(!f){r&&r.push(Ol(ve.Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1,"en","ja-jp"));return}let x=f[1],w=f[3];pe(Hy,s)&&!A(x,w,r)&&A(x,void 0,r),xp(e);function A(g,B,N){let X=Un(t.getExecutingFilePath()),F=ma(X),$=tn(F,g);if(B&&($=$+"-"+B),$=t.resolvePath(tn($,"diagnosticMessages.generated.json")),!t.fileExists($))return!1;let ae="";try{ae=t.readFile($)}catch{return N&&N.push(Ol(ve.Unable_to_open_file_0,$)),!1}try{yx(JSON.parse(ae))}catch{return N&&N.push(Ol(ve.Corrupted_locale_file_0,$)),!1}return!0}}function ul(e,t){if(e)for(;e.original!==void 0;)e=e.original;return!e||!t||t(e)?e:void 0}function zi(e,t){for(;e;){let r=t(e);if(r==="quit")return;if(r)return e;e=e.parent}}function pl(e){return(e.flags&8)===0}function fl(e,t){if(e===void 0||pl(e))return e;for(e=e.original;e;){if(pl(e))return!t||t(e)?e:void 0;e=e.original}}function vi(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}function dl(e){let t=e;return t.length>=3&&t.charCodeAt(0)===95&&t.charCodeAt(1)===95&&t.charCodeAt(2)===95?t.substr(1):t}function qr(e){return dl(e.escapedText)}function d3(e){let t=_l(e.escapedText);return t?ln(t,ba):void 0}function rf(e){return e.valueDeclaration&&z3(e.valueDeclaration)?qr(e.valueDeclaration.name):dl(e.escapedName)}function m3(e){let t=e.parent.parent;if(t){if(ko(t))return nf(t);switch(t.kind){case 240:if(t.declarationList&&t.declarationList.declarations[0])return nf(t.declarationList.declarations[0]);break;case 241:let r=t.expression;switch(r.kind===223&&r.operatorToken.kind===63&&(r=r.left),r.kind){case 208:return r.name;case 209:let s=r.argumentExpression;if(yt(s))return s}break;case 214:return nf(t.expression);case 253:{if(ko(t.statement)||mf(t.statement))return nf(t.statement);break}}}}function nf(e){let t=ml(e);return t&&yt(t)?t:void 0}function h3(e,t){return!!(af(e)&&yt(e.name)&&qr(e.name)===qr(t)||zo(e)&&Ke(e.declarationList.declarations,r=>h3(r,t)))}function g3(e){return e.name||m3(e)}function af(e){return!!e.name}function Ey(e){switch(e.kind){case 79:return e;case 351:case 344:{let{name:r}=e;if(r.kind===163)return r.right;break}case 210:case 223:{let r=e;switch(ps(r)){case 1:case 4:case 5:case 3:return Cf(r.left);case 7:case 8:case 9:return r.arguments[1];default:return}}case 349:return g3(e);case 343:return m3(e);case 274:{let{expression:r}=e;return yt(r)?r:void 0}case 209:let t=e;if(x0(t))return t.argumentExpression}return e.name}function ml(e){if(e!==void 0)return Ey(e)||(ad(e)||sd(e)||_d(e)?y3(e):void 0)}function y3(e){if(e.parent){if(lc(e.parent)||Xl(e.parent))return e.parent.name;if(ur(e.parent)&&e===e.parent.right){if(yt(e.parent.left))return e.parent.left;if(Lo(e.parent.left))return Cf(e.parent.left)}else if(Vi(e.parent)&&yt(e.parent.name))return e.parent.name}else return}function CA(e){if(Il(e))return ee(e.modifiers,zl)}function sf(e){if(rn(e,126975))return ee(e.modifiers,Oy)}function v3(e,t){if(e.name)if(yt(e.name)){let r=e.name.escapedText;return j_(e.parent,t).filter(s=>pc(s)&&yt(s.name)&&s.name.escapedText===r)}else{let r=e.parent.parameters.indexOf(e);Y.assert(r>-1,"Parameters should always be in their parents' parameter list");let s=j_(e.parent,t).filter(pc);if(rGo(s)&&s.typeParameters.some(f=>f.name.escapedText===r))}function S3(e){return T3(e,!1)}function x3(e){return T3(e,!0)}function AA(e){return!!Nr(e,pc)}function E3(e){return Nr(e,md)}function w3(e){return M3(e,hE)}function PA(e){return Nr(e,pE)}function DA(e){return Nr(e,dv)}function C3(e){return Nr(e,dv,!0)}function kA(e){return Nr(e,mv)}function A3(e){return Nr(e,mv,!0)}function IA(e){return Nr(e,hv)}function P3(e){return Nr(e,hv,!0)}function NA(e){return Nr(e,gv)}function D3(e){return Nr(e,gv,!0)}function k3(e){return Nr(e,fE,!0)}function OA(e){return Nr(e,vv)}function I3(e){return Nr(e,vv,!0)}function MA(e){return Nr(e,dE)}function LA(e){return Nr(e,mE)}function N3(e){return Nr(e,bv)}function RA(e){return Nr(e,Go)}function wy(e){return Nr(e,Tv)}function _f(e){let t=Nr(e,au);if(t&&t.typeExpression&&t.typeExpression.type)return t}function cf(e){let t=Nr(e,au);return!t&&Vs(e)&&(t=Pe(of(e),r=>!!r.typeExpression)),t&&t.typeExpression&&t.typeExpression.type}function O3(e){let t=N3(e);if(t&&t.typeExpression)return t.typeExpression.type;let r=_f(e);if(r&&r.typeExpression){let s=r.typeExpression.type;if(id(s)){let f=Pe(s.members,V2);return f&&f.type}if($l(s)||dd(s))return s.type}}function j_(e,t){var r,s;if(!Af(e))return Bt;let f=(r=e.jsDoc)==null?void 0:r.jsDocCache;if(f===void 0||t){let x=r4(e,t);Y.assert(x.length<2||x[0]!==x[1]),f=ne(x,w=>Ho(w)?w.tags:w),t||((s=e.jsDoc)!=null||(e.jsDoc=[]),e.jsDoc.jsDocCache=f)}return f}function hl(e){return j_(e,!1)}function jA(e){return j_(e,!0)}function Nr(e,t,r){return Pe(j_(e,r),t)}function M3(e,t){return hl(e).filter(t)}function JA(e,t){return hl(e).filter(r=>r.kind===t)}function FA(e){return typeof e=="string"?e:e==null?void 0:e.map(t=>t.kind===324?t.text:BA(t)).join("")}function BA(e){let t=e.kind===327?"link":e.kind===328?"linkcode":"linkplain",r=e.name?ls(e.name):"",s=e.name&&e.text.startsWith("://")?"":" ";return`{@${t} ${r}${s}${e.text}}`}function qA(e){if(iu(e)){if(yv(e.parent)){let t=P0(e.parent);if(t&&I(t.tags))return ne(t.tags,r=>Go(r)?r.typeParameters:void 0)}return Bt}if(Cl(e))return Y.assert(e.parent.kind===323),ne(e.parent.tags,t=>Go(t)?t.typeParameters:void 0);if(e.typeParameters||IE(e)&&e.typeParameters)return e.typeParameters;if(Pr(e)){let t=F4(e);if(t.length)return t;let r=cf(e);if(r&&$l(r)&&r.typeParameters)return r.typeParameters}return Bt}function UA(e){return e.constraint?e.constraint:Go(e.parent)&&e===e.parent.typeParameters[0]?e.parent.constraint:void 0}function js(e){return e.kind===79||e.kind===80}function zA(e){return e.kind===175||e.kind===174}function L3(e){return bn(e)&&!!(e.flags&32)}function R3(e){return gs(e)&&!!(e.flags&32)}function Cy(e){return sc(e)&&!!(e.flags&32)}function Ay(e){let t=e.kind;return!!(e.flags&32)&&(t===208||t===209||t===210||t===232)}function Py(e){return Ay(e)&&!Uo(e)&&!!e.questionDotToken}function WA(e){return Py(e.parent)&&e.parent.expression===e}function VA(e){return!Ay(e.parent)||Py(e.parent)||e!==e.parent.expression}function HA(e){return e.kind===223&&e.operatorToken.kind===60}function j3(e){return ac(e)&&yt(e.typeName)&&e.typeName.escapedText==="const"&&!e.typeArguments}function lf(e){return $o(e,8)}function J3(e){return Uo(e)&&!!(e.flags&32)}function GA(e){return e.kind===249||e.kind===248}function $A(e){return e.kind===277||e.kind===276}function F3(e){switch(e.kind){case 305:case 306:return!0;default:return!1}}function KA(e){return F3(e)||e.kind===303||e.kind===307}function Dy(e){return e.kind===351||e.kind===344}function XA(e){return gl(e.kind)}function gl(e){return e>=163}function B3(e){return e>=0&&e<=162}function YA(e){return B3(e.kind)}function _s(e){return Jr(e,"pos")&&Jr(e,"end")}function ky(e){return 8<=e&&e<=14}function Iy(e){return ky(e.kind)}function QA(e){switch(e.kind){case 207:case 206:case 13:case 215:case 228:return!0}return!1}function yl(e){return 14<=e&&e<=17}function ZA(e){return yl(e.kind)}function eP(e){let t=e.kind;return t===16||t===17}function tP(e){return nE(e)||aE(e)}function q3(e){switch(e.kind){case 273:return e.isTypeOnly||e.parent.parent.isTypeOnly;case 271:return e.parent.isTypeOnly;case 270:case 268:return e.isTypeOnly}return!1}function U3(e){switch(e.kind){case 278:return e.isTypeOnly||e.parent.parent.isTypeOnly;case 275:return e.isTypeOnly&&!!e.moduleSpecifier&&!e.exportClause;case 277:return e.parent.isTypeOnly}return!1}function rP(e){return q3(e)||U3(e)}function nP(e){return Gn(e)||yt(e)}function iP(e){return e.kind===10||yl(e.kind)}function cs(e){var t;return yt(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function Ny(e){var t;return vn(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function z3(e){return(Bo(e)||Ly(e))&&vn(e.name)}function aP(e){return bn(e)&&vn(e.name)}function Wi(e){switch(e){case 126:case 127:case 132:case 85:case 136:case 88:case 93:case 101:case 123:case 121:case 122:case 146:case 124:case 145:case 161:return!0}return!1}function W3(e){return!!(Q0(e)&16476)}function V3(e){return W3(e)||e===124||e===161||e===127}function Oy(e){return Wi(e.kind)}function sP(e){let t=e.kind;return t===163||t===79}function vl(e){let t=e.kind;return t===79||t===80||t===10||t===8||t===164}function oP(e){let t=e.kind;return t===79||t===203||t===204}function ga(e){return!!e&&My(e.kind)}function uf(e){return!!e&&(My(e.kind)||Hl(e))}function H3(e){return e&&G3(e.kind)}function _P(e){return e.kind===110||e.kind===95}function G3(e){switch(e){case 259:case 171:case 173:case 174:case 175:case 215:case 216:return!0;default:return!1}}function My(e){switch(e){case 170:case 176:case 326:case 177:case 178:case 181:case 320:case 182:return!0;default:return G3(e)}}function cP(e){return wi(e)||rE(e)||Ql(e)&&ga(e.parent)}function Js(e){let t=e.kind;return t===173||t===169||t===171||t===174||t===175||t===178||t===172||t===237}function bi(e){return e&&(e.kind===260||e.kind===228)}function pf(e){return e&&(e.kind===174||e.kind===175)}function $3(e){return Bo(e)&&H4(e)}function Ly(e){switch(e.kind){case 171:case 174:case 175:return!0;default:return!1}}function lP(e){switch(e.kind){case 171:case 174:case 175:case 169:return!0;default:return!1}}function ff(e){return Oy(e)||zl(e)}function Ry(e){let t=e.kind;return t===177||t===176||t===168||t===170||t===178||t===174||t===175}function uP(e){return Ry(e)||Js(e)}function jy(e){let t=e.kind;return t===299||t===300||t===301||t===171||t===174||t===175}function Jy(e){return hx(e.kind)}function pP(e){switch(e.kind){case 181:case 182:return!0}return!1}function df(e){if(e){let t=e.kind;return t===204||t===203}return!1}function K3(e){let t=e.kind;return t===206||t===207}function fP(e){let t=e.kind;return t===205||t===229}function Fy(e){switch(e.kind){case 257:case 166:case 205:return!0}return!1}function dP(e){return Vi(e)||Vs(e)||Y3(e)||Z3(e)}function mP(e){return X3(e)||Q3(e)}function X3(e){switch(e.kind){case 203:case 207:return!0}return!1}function Y3(e){switch(e.kind){case 205:case 299:case 300:case 301:return!0}return!1}function Q3(e){switch(e.kind){case 204:case 206:return!0}return!1}function Z3(e){switch(e.kind){case 205:case 229:case 227:case 206:case 207:case 79:case 208:case 209:return!0}return ms(e,!0)}function hP(e){let t=e.kind;return t===208||t===163||t===202}function gP(e){let t=e.kind;return t===208||t===163}function yP(e){switch(e.kind){case 283:case 282:case 210:case 211:case 212:case 167:return!0;default:return!1}}function vP(e){return e.kind===210||e.kind===211}function bP(e){let t=e.kind;return t===225||t===14}function Do(e){return eS(lf(e).kind)}function eS(e){switch(e){case 208:case 209:case 211:case 210:case 281:case 282:case 285:case 212:case 206:case 214:case 207:case 228:case 215:case 79:case 80:case 13:case 8:case 9:case 10:case 14:case 225:case 95:case 104:case 108:case 110:case 106:case 232:case 230:case 233:case 100:case 279:return!0;default:return!1}}function tS(e){return rS(lf(e).kind)}function rS(e){switch(e){case 221:case 222:case 217:case 218:case 219:case 220:case 213:return!0;default:return eS(e)}}function TP(e){switch(e.kind){case 222:return!0;case 221:return e.operator===45||e.operator===46;default:return!1}}function SP(e){switch(e.kind){case 104:case 110:case 95:case 221:return!0;default:return Iy(e)}}function mf(e){return xP(lf(e).kind)}function xP(e){switch(e){case 224:case 226:case 216:case 223:case 227:case 231:case 229:case 357:case 356:case 235:return!0;default:return rS(e)}}function EP(e){let t=e.kind;return t===213||t===231}function wP(e){return cv(e)||Z8(e)}function nS(e,t){switch(e.kind){case 245:case 246:case 247:case 243:case 244:return!0;case 253:return t&&nS(e.statement,t)}return!1}function iS(e){return Vo(e)||cc(e)}function CP(e){return Ke(e,iS)}function AP(e){return!bf(e)&&!Vo(e)&&!rn(e,1)&&!yf(e)}function PP(e){return bf(e)||Vo(e)||rn(e,1)}function DP(e){return e.kind===246||e.kind===247}function kP(e){return Ql(e)||mf(e)}function IP(e){return Ql(e)}function NP(e){return rv(e)||mf(e)}function OP(e){let t=e.kind;return t===265||t===264||t===79}function MP(e){let t=e.kind;return t===265||t===264}function LP(e){let t=e.kind;return t===79||t===264}function RP(e){let t=e.kind;return t===272||t===271}function jP(e){return e.kind===264||e.kind===263}function JP(e){switch(e.kind){case 216:case 223:case 205:case 210:case 176:case 260:case 228:case 172:case 173:case 182:case 177:case 209:case 263:case 302:case 274:case 275:case 278:case 259:case 215:case 181:case 174:case 79:case 270:case 268:case 273:case 178:case 261:case 341:case 343:case 320:case 344:case 351:case 326:case 349:case 325:case 288:case 289:case 290:case 197:case 171:case 170:case 264:case 199:case 277:case 267:case 271:case 211:case 14:case 8:case 207:case 166:case 208:case 299:case 169:case 168:case 175:case 300:case 308:case 301:case 10:case 262:case 184:case 165:case 257:return!0;default:return!1}}function FP(e){switch(e.kind){case 216:case 238:case 176:case 266:case 295:case 172:case 191:case 173:case 182:case 177:case 245:case 246:case 247:case 259:case 215:case 181:case 174:case 178:case 341:case 343:case 320:case 326:case 349:case 197:case 171:case 170:case 264:case 175:case 308:case 262:return!0;default:return!1}}function BP(e){return e===216||e===205||e===260||e===228||e===172||e===173||e===263||e===302||e===278||e===259||e===215||e===174||e===270||e===268||e===273||e===261||e===288||e===171||e===170||e===264||e===267||e===271||e===277||e===166||e===299||e===169||e===168||e===175||e===300||e===262||e===165||e===257||e===349||e===341||e===351}function By(e){return e===259||e===279||e===260||e===261||e===262||e===263||e===264||e===269||e===268||e===275||e===274||e===267}function qy(e){return e===249||e===248||e===256||e===243||e===241||e===239||e===246||e===247||e===245||e===242||e===253||e===250||e===252||e===254||e===255||e===240||e===244||e===251||e===355||e===359||e===358}function ko(e){return e.kind===165?e.parent&&e.parent.kind!==348||Pr(e):BP(e.kind)}function qP(e){return By(e.kind)}function UP(e){return qy(e.kind)}function aS(e){let t=e.kind;return qy(t)||By(t)||zP(e)}function zP(e){return e.kind!==238||e.parent!==void 0&&(e.parent.kind===255||e.parent.kind===295)?!1:!OS(e)}function sS(e){let t=e.kind;return qy(t)||By(t)||t===238}function WP(e){let t=e.kind;return t===280||t===163||t===79}function VP(e){let t=e.kind;return t===108||t===79||t===208}function oS(e){let t=e.kind;return t===281||t===291||t===282||t===11||t===285}function HP(e){let t=e.kind;return t===288||t===290}function GP(e){let t=e.kind;return t===10||t===291}function _S(e){let t=e.kind;return t===283||t===282}function $P(e){let t=e.kind;return t===292||t===293}function Uy(e){return e.kind>=312&&e.kind<=353}function cS(e){return e.kind===323||e.kind===322||e.kind===324||Sl(e)||zy(e)||fv(e)||iu(e)}function zy(e){return e.kind>=330&&e.kind<=353}function bl(e){return e.kind===175}function Tl(e){return e.kind===174}function ya(e){if(!Af(e))return!1;let{jsDoc:t}=e;return!!t&&t.length>0}function KP(e){return!!e.type}function lS(e){return!!e.initializer}function XP(e){switch(e.kind){case 257:case 166:case 205:case 169:case 299:case 302:return!0;default:return!1}}function Wy(e){return e.kind===288||e.kind===290||jy(e)}function YP(e){return e.kind===180||e.kind===230}function QP(e){let t=Gy;for(let r of e){if(!r.length)continue;let s=0;for(;sr.kind===t)}function nD(e){let t=new Map;if(e)for(let r of e)t.set(r.escapedName,r);return t}function $y(e){return(e.flags&33554432)!==0}function iD(){var e="";let t=r=>e+=r;return{getText:()=>e,write:t,rawWrite:t,writeKeyword:t,writeOperator:t,writePunctuation:t,writeSpace:t,writeStringLiteral:t,writeLiteral:t,writeParameter:t,writeProperty:t,writeSymbol:(r,s)=>t(r),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&os(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:yn,decreaseIndent:yn,clear:()=>e=""}}function aD(e,t){return e.configFilePath!==t.configFilePath||pS(e,t)}function pS(e,t){return J_(e,t,moduleResolutionOptionDeclarations)}function sD(e,t){return J_(e,t,optionsAffectingProgramStructure)}function J_(e,t,r){return e!==t&&r.some(s=>!g2(u2(e,s),u2(t,s)))}function oD(e,t){for(;;){let r=t(e);if(r==="quit")return;if(r!==void 0)return r;if(wi(e))return;e=e.parent}}function _D(e,t){let r=e.entries();for(let[s,f]of r){let x=t(f,s);if(x)return x}}function cD(e,t){let r=e.keys();for(let s of r){let f=t(s);if(f)return f}}function lD(e,t){e.forEach((r,s)=>{t.set(s,r)})}function uD(e){let t=Z_.getText();try{return e(Z_),Z_.getText()}finally{Z_.clear(),Z_.writeKeyword(t)}}function hf(e){return e.end-e.pos}function pD(e,t,r){var s,f;return(f=(s=e==null?void 0:e.resolvedModules)==null?void 0:s.get(t,r))==null?void 0:f.resolvedModule}function fD(e,t,r,s){e.resolvedModules||(e.resolvedModules=createModeAwareCache()),e.resolvedModules.set(t,s,r)}function dD(e,t,r,s){e.resolvedTypeReferenceDirectiveNames||(e.resolvedTypeReferenceDirectiveNames=createModeAwareCache()),e.resolvedTypeReferenceDirectiveNames.set(t,s,r)}function mD(e,t,r){var s,f;return(f=(s=e==null?void 0:e.resolvedTypeReferenceDirectiveNames)==null?void 0:s.get(t,r))==null?void 0:f.resolvedTypeReferenceDirective}function hD(e,t){return e.path===t.path&&!e.prepend==!t.prepend&&!e.circular==!t.circular}function gD(e,t){return e===t||e.resolvedModule===t.resolvedModule||!!e.resolvedModule&&!!t.resolvedModule&&e.resolvedModule.isExternalLibraryImport===t.resolvedModule.isExternalLibraryImport&&e.resolvedModule.extension===t.resolvedModule.extension&&e.resolvedModule.resolvedFileName===t.resolvedModule.resolvedFileName&&e.resolvedModule.originalPath===t.resolvedModule.originalPath&&yD(e.resolvedModule.packageId,t.resolvedModule.packageId)}function yD(e,t){return e===t||!!e&&!!t&&e.name===t.name&&e.subModuleName===t.subModuleName&&e.version===t.version}function fS(e){let{name:t,subModuleName:r}=e;return r?`${t}/${r}`:t}function vD(e){return`${fS(e)}@${e.version}`}function bD(e,t){return e===t||e.resolvedTypeReferenceDirective===t.resolvedTypeReferenceDirective||!!e.resolvedTypeReferenceDirective&&!!t.resolvedTypeReferenceDirective&&e.resolvedTypeReferenceDirective.resolvedFileName===t.resolvedTypeReferenceDirective.resolvedFileName&&!!e.resolvedTypeReferenceDirective.primary==!!t.resolvedTypeReferenceDirective.primary&&e.resolvedTypeReferenceDirective.originalPath===t.resolvedTypeReferenceDirective.originalPath}function TD(e,t,r,s,f,x){Y.assert(e.length===r.length);for(let w=0;w=0),ss(t)[e]}function AD(e){let t=Si(e),r=Ls(t,e.pos);return`${t.fileName}(${r.line+1},${r.character+1})`}function dS(e,t){Y.assert(e>=0);let r=ss(t),s=e,f=t.text;if(s+1===r.length)return f.length-1;{let x=r[s],w=r[s+1]-1;for(Y.assert(un(f.charCodeAt(w)));x<=w&&un(f.charCodeAt(w));)w--;return w}}function mS(e,t,r){return!(r&&r(t))&&!e.identifiers.has(t)}function va(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function xl(e){return!va(e)}function PD(e,t){return Fo(e)?t===e.expression:Hl(e)?t===e.modifiers:Wl(e)?t===e.initializer:Bo(e)?t===e.questionToken&&$3(e):lc(e)?t===e.modifiers||t===e.questionToken||t===e.exclamationToken||F_(e.modifiers,t,ff):nu(e)?t===e.equalsToken||t===e.modifiers||t===e.questionToken||t===e.exclamationToken||F_(e.modifiers,t,ff):Vl(e)?t===e.exclamationToken:nc(e)?t===e.typeParameters||t===e.type||F_(e.typeParameters,t,Fo):Gl(e)?t===e.typeParameters||F_(e.typeParameters,t,Fo):ic(e)?t===e.typeParameters||t===e.type||F_(e.typeParameters,t,Fo):av(e)?t===e.modifiers||F_(e.modifiers,t,ff):!1}function F_(e,t,r){return!e||ir(t)||!r(t)?!1:pe(e,t)}function hS(e,t,r){if(t===void 0||t.length===0)return e;let s=0;for(;s[`${Ls(e,w.range.end).line}`,w])),s=new Map;return{getUnusedExpectations:f,markUsed:x};function f(){return Za(r.entries()).filter(w=>{let[A,g]=w;return g.type===0&&!s.get(A)}).map(w=>{let[A,g]=w;return g})}function x(w){return r.has(`${w}`)?(s.set(`${w}`,!0),!0):!1}}function Io(e,t,r){return va(e)?e.pos:Uy(e)||e.kind===11?Ar((t||Si(e)).text,e.pos,!1,!0):r&&ya(e)?Io(e.jsDoc[0],t):e.kind===354&&e._children.length>0?Io(e._children[0],t,r):Ar((t||Si(e)).text,e.pos,!1,!1,qS(e))}function LD(e,t){let r=!va(e)&&fc(e)?te(e.modifiers,zl):void 0;return r?Ar((t||Si(e)).text,r.end):Io(e,t)}function No(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return B_(e.text,t,r)}function RD(e){return!!zi(e,lE)}function bS(e){return!!(cc(e)&&e.exportClause&&ld(e.exportClause)&&e.exportClause.name.escapedText==="default")}function B_(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(va(t))return"";let s=e.substring(r?t.pos:Ar(e,t.pos),t.end);return RD(t)&&(s=s.split(/\r\n|\n|\r/).map(f=>nl(f.replace(/^\s*\*/,""))).join(` +`)),s}function gf(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return No(Si(e),e,t)}function jD(e){return e.pos}function JD(e,t){return Ya(e,t,jD,Vr)}function xi(e){let t=e.emitNode;return t&&t.flags||0}function FD(e){let t=e.emitNode;return t&&t.internalFlags||0}function BD(e,t,r){var s;if(t&&qD(e,r))return No(t,e);switch(e.kind){case 10:{let f=r&2?A4:r&1||xi(e)&33554432?Nf:Of;return e.singleQuote?"'"+f(e.text,39)+"'":'"'+f(e.text,34)+'"'}case 14:case 15:case 16:case 17:{let f=r&1||xi(e)&33554432?Nf:Of,x=(s=e.rawText)!=null?s:yN(f(e.text,96));switch(e.kind){case 14:return"`"+x+"`";case 15:return"`"+x+"${";case 16:return"}"+x+"${";case 17:return"}"+x+"`"}break}case 8:case 9:return e.text;case 13:return r&4&&e.isUnterminated?e.text+(e.text.charCodeAt(e.text.length-1)===92?" /":"/"):e.text}return Y.fail(`Literal kind '${e.kind}' not accounted for.`)}function qD(e,t){return fs(e)||!e.parent||t&4&&e.isUnterminated?!1:zs(e)&&e.numericLiteralFlags&512?!!(t&8):!U2(e)}function UD(e){return Ji(e)?'"'+Of(e)+'"':""+e}function zD(e){return sl(e).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function WD(e){return(tf(e)&3)!==0||TS(e)}function TS(e){let t=If(e);return t.kind===257&&t.parent.kind===295}function yf(e){return Ea(e)&&(e.name.kind===10||vf(e))}function VD(e){return Ea(e)&&e.name.kind===10}function HD(e){return Ea(e)&&Gn(e.name)}function SS(e){return Ea(e)||yt(e)}function GD(e){return $D(e.valueDeclaration)}function $D(e){return!!e&&e.kind===264&&!e.body}function KD(e){return e.kind===308||e.kind===264||uf(e)}function vf(e){return!!(e.flags&1024)}function Xy(e){return yf(e)&&xS(e)}function xS(e){switch(e.parent.kind){case 308:return Qo(e.parent);case 265:return yf(e.parent.parent)&&wi(e.parent.parent.parent)&&!Qo(e.parent.parent.parent)}return!1}function ES(e){var t;return(t=e.declarations)==null?void 0:t.find(r=>!Xy(r)&&!(Ea(r)&&vf(r)))}function XD(e){return e===1||e===100||e===199}function Yy(e,t){return Qo(e)||zf(t)||XD(Ei(t))&&!!e.commonJsModuleIndicator}function YD(e,t){switch(e.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return e.isDeclarationFile?!1:l2(t,"alwaysStrict")||SE(e.statements)?!0:Qo(e)||zf(t)?Ei(t)>=5?!0:!t.noImplicitUseStrict:!1}function QD(e){return!!(e.flags&16777216)||rn(e,2)}function wS(e,t){switch(e.kind){case 308:case 266:case 295:case 264:case 245:case 246:case 247:case 173:case 171:case 174:case 175:case 259:case 215:case 216:case 169:case 172:return!0;case 238:return!uf(t)}return!1}function ZD(e){switch(Y.type(e),e.kind){case 341:case 349:case 326:return!0;default:return CS(e)}}function CS(e){switch(Y.type(e),e.kind){case 176:case 177:case 170:case 178:case 181:case 182:case 320:case 260:case 228:case 261:case 262:case 348:case 259:case 171:case 173:case 174:case 175:case 215:case 216:return!0;default:return!1}}function Qy(e){switch(e.kind){case 269:case 268:return!0;default:return!1}}function ek(e){return Qy(e)||Ef(e)}function tk(e){switch(e.kind){case 269:case 268:case 240:case 260:case 259:case 264:case 262:case 261:case 263:return!0;default:return!1}}function rk(e){return bf(e)||Ea(e)||Kl(e)||s0(e)}function bf(e){return Qy(e)||cc(e)}function Zy(e){return zi(e.parent,t=>wS(t,t.parent))}function nk(e,t){let r=Zy(e);for(;r;)t(r),r=Zy(r)}function AS(e){return!e||hf(e)===0?"(Missing)":gf(e)}function ik(e){return e.declaration?AS(e.declaration.parameters[0].name):void 0}function ak(e){return e.kind===164&&!Ta(e.expression)}function e0(e){var t;switch(e.kind){case 79:case 80:return(t=e.emitNode)!=null&&t.autoGenerate?void 0:e.escapedText;case 10:case 8:case 14:return vi(e.text);case 164:return Ta(e.expression)?vi(e.expression.text):void 0;default:return Y.assertNever(e)}}function sk(e){return Y.checkDefined(e0(e))}function ls(e){switch(e.kind){case 108:return"this";case 80:case 79:return hf(e)===0?qr(e):gf(e);case 163:return ls(e.left)+"."+ls(e.right);case 208:return yt(e.name)||vn(e.name)?ls(e.expression)+"."+ls(e.name):Y.assertNever(e.name);case 314:return ls(e.left)+ls(e.right);default:return Y.assertNever(e)}}function ok(e,t,r,s,f,x){let w=Si(e);return PS(w,e,t,r,s,f,x)}function _k(e,t,r,s,f,x,w){let A=Ar(e.text,t.pos);return i2(e,A,t.end-A,r,s,f,x,w)}function PS(e,t,r,s,f,x,w){let A=i0(e,t);return i2(e,A.start,A.length,r,s,f,x,w)}function ck(e,t,r,s){let f=i0(e,t);return r0(e,f.start,f.length,r,s)}function lk(e,t,r,s){let f=Ar(e.text,t.pos);return r0(e,f,t.end-f,r,s)}function t0(e,t,r){Y.assertGreaterThanOrEqual(t,0),Y.assertGreaterThanOrEqual(r,0),e&&(Y.assertLessThanOrEqual(t,e.text.length),Y.assertLessThanOrEqual(t+r,e.text.length))}function r0(e,t,r,s,f){return t0(e,t,r),{file:e,start:t,length:r,code:s.code,category:s.category,messageText:s.next?s:s.messageText,relatedInformation:f}}function uk(e,t,r){return{file:e,start:0,length:0,code:t.code,category:t.category,messageText:t.next?t:t.messageText,relatedInformation:r}}function pk(e){return typeof e.messageText=="string"?{code:e.code,category:e.category,messageText:e.messageText,next:e.next}:e.messageText}function fk(e,t,r){return{file:e,start:t.pos,length:t.end-t.pos,code:r.code,category:r.category,messageText:r.message}}function n0(e,t){let r=Po(e.languageVersion,!0,e.languageVariant,e.text,void 0,t);r.scan();let s=r.getTokenPos();return ha(s,r.getTextPos())}function dk(e,t){let r=Po(e.languageVersion,!0,e.languageVariant,e.text,void 0,t);return r.scan(),r.getToken()}function mk(e,t){let r=Ar(e.text,t.pos);if(t.body&&t.body.kind===238){let{line:s}=Ls(e,t.body.pos),{line:f}=Ls(e,t.body.end);if(s0?t.statements[0].pos:t.end;return ha(w,A)}if(r===void 0)return n0(e,t.pos);Y.assert(!Ho(r));let s=va(r),f=s||td(t)?r.pos:Ar(e.text,r.pos);return s?(Y.assert(f===r.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),Y.assert(f===r.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(Y.assert(f>=r.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),Y.assert(f<=r.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),ha(f,r.end)}function hk(e){return(e.externalModuleIndicator||e.commonJsModuleIndicator)!==void 0}function a0(e){return e.scriptKind===6}function gk(e){return!!(ef(e)&2048)}function yk(e){return!!(ef(e)&64&&!l3(e,e.parent))}function DS(e){return!!(tf(e)&2)}function vk(e){return!!(tf(e)&1)}function bk(e){return e.kind===210&&e.expression.kind===106}function s0(e){return e.kind===210&&e.expression.kind===100}function o0(e){return tv(e)&&e.keywordToken===100&&e.name.escapedText==="meta"}function kS(e){return Kl(e)&&Y2(e.argument)&&Gn(e.argument.literal)}function us(e){return e.kind===241&&e.expression.kind===10}function Tf(e){return!!(xi(e)&2097152)}function _0(e){return Tf(e)&&Wo(e)}function Tk(e){return yt(e.name)&&!e.initializer}function c0(e){return Tf(e)&&zo(e)&&me(e.declarationList.declarations,Tk)}function Sk(e,t){return e.kind!==11?Ao(t.text,e.pos):void 0}function IS(e,t){let r=e.kind===166||e.kind===165||e.kind===215||e.kind===216||e.kind===214||e.kind===257||e.kind===278?Ft(HT(t,e.pos),Ao(t,e.pos)):Ao(t,e.pos);return ee(r,s=>t.charCodeAt(s.pos+1)===42&&t.charCodeAt(s.pos+2)===42&&t.charCodeAt(s.pos+3)!==47)}function l0(e){if(179<=e.kind&&e.kind<=202)return!0;switch(e.kind){case 131:case 157:case 148:case 160:case 152:case 134:case 153:case 149:case 155:case 144:return!0;case 114:return e.parent.kind!==219;case 230:return ru(e.parent)&&!Z0(e);case 165:return e.parent.kind===197||e.parent.kind===192;case 79:(e.parent.kind===163&&e.parent.right===e||e.parent.kind===208&&e.parent.name===e)&&(e=e.parent),Y.assert(e.kind===79||e.kind===163||e.kind===208,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 163:case 208:case 108:{let{parent:t}=e;if(t.kind===183)return!1;if(t.kind===202)return!t.isTypeOf;if(179<=t.kind&&t.kind<=202)return!0;switch(t.kind){case 230:return ru(t.parent)&&!Z0(t);case 165:return e===t.constraint;case 348:return e===t.constraint;case 169:case 168:case 166:case 257:return e===t.type;case 259:case 215:case 216:case 173:case 171:case 170:case 174:case 175:return e===t.type;case 176:case 177:case 178:return e===t.type;case 213:return e===t.type;case 210:case 211:return pe(t.typeArguments,e);case 212:return!1}}}return!1}function xk(e,t){for(;e;){if(e.kind===t)return!0;e=e.parent}return!1}function Ek(e,t){return r(e);function r(s){switch(s.kind){case 250:return t(s);case 266:case 238:case 242:case 243:case 244:case 245:case 246:case 247:case 251:case 252:case 292:case 293:case 253:case 255:case 295:return xr(s,r)}}}function wk(e,t){return r(e);function r(s){switch(s.kind){case 226:t(s);let f=s.expression;f&&r(f);return;case 263:case 261:case 264:case 262:return;default:if(ga(s)){if(s.name&&s.name.kind===164){r(s.name.expression);return}}else l0(s)||xr(s,r)}}}function Ck(e){return e&&e.kind===185?e.elementType:e&&e.kind===180?Xa(e.typeArguments):void 0}function Ak(e){switch(e.kind){case 261:case 260:case 228:case 184:return e.members;case 207:return e.properties}}function u0(e){if(e)switch(e.kind){case 205:case 302:case 166:case 299:case 169:case 168:case 300:case 257:return!0}return!1}function Pk(e){return u0(e)||pf(e)}function NS(e){return e.parent.kind===258&&e.parent.parent.kind===240}function Dk(e){return Pr(e)?Hs(e.parent)&&ur(e.parent.parent)&&ps(e.parent.parent)===2||p0(e.parent):!1}function p0(e){return Pr(e)?ur(e)&&ps(e)===1:!1}function kk(e){return(Vi(e)?DS(e)&&yt(e.name)&&NS(e):Bo(e)?$0(e)&&Lf(e):Wl(e)&&$0(e))||p0(e)}function Ik(e){switch(e.kind){case 171:case 170:case 173:case 174:case 175:case 259:case 215:return!0}return!1}function Nk(e,t){for(;;){if(t&&t(e),e.statement.kind!==253)return e.statement;e=e.statement}}function OS(e){return e&&e.kind===238&&ga(e.parent)}function Ok(e){return e&&e.kind===171&&e.parent.kind===207}function Mk(e){return(e.kind===171||e.kind===174||e.kind===175)&&(e.parent.kind===207||e.parent.kind===228)}function Lk(e){return e&&e.kind===1}function Rk(e){return e&&e.kind===0}function f0(e,t,r){return e.properties.filter(s=>{if(s.kind===299){let f=e0(s.name);return t===f||!!r&&r===f}return!1})}function jk(e,t,r){return q(f0(e,t),s=>Yl(s.initializer)?Pe(s.initializer.elements,f=>Gn(f)&&f.text===r):void 0)}function MS(e){if(e&&e.statements.length){let t=e.statements[0].expression;return ln(t,Hs)}}function Jk(e,t,r){return q(LS(e,t),s=>Yl(s.initializer)?Pe(s.initializer.elements,f=>Gn(f)&&f.text===r):void 0)}function LS(e,t){let r=MS(e);return r?f0(r,t):Bt}function Fk(e){return zi(e.parent,ga)}function Bk(e){return zi(e.parent,H3)}function qk(e){return zi(e.parent,bi)}function Uk(e){return zi(e.parent,t=>bi(t)||ga(t)?"quit":Hl(t))}function zk(e){return zi(e.parent,uf)}function d0(e,t,r){for(Y.assert(e.kind!==308);;){if(e=e.parent,!e)return Y.fail();switch(e.kind){case 164:if(r&&bi(e.parent.parent))return e;e=e.parent.parent;break;case 167:e.parent.kind===166&&Js(e.parent.parent)?e=e.parent.parent:Js(e.parent)&&(e=e.parent);break;case 216:if(!t)continue;case 259:case 215:case 264:case 172:case 169:case 168:case 171:case 170:case 173:case 174:case 175:case 176:case 177:case 178:case 263:case 308:return e}}}function Wk(e){switch(e.kind){case 216:case 259:case 215:case 169:return!0;case 238:switch(e.parent.kind){case 173:case 171:case 174:case 175:return!0;default:return!1}default:return!1}}function Vk(e){yt(e)&&(_c(e.parent)||Wo(e.parent))&&e.parent.name===e&&(e=e.parent);let t=d0(e,!0,!1);return wi(t)}function Hk(e){let t=d0(e,!1,!1);if(t)switch(t.kind){case 173:case 259:case 215:return t}}function Gk(e,t){for(;;){if(e=e.parent,!e)return;switch(e.kind){case 164:e=e.parent;break;case 259:case 215:case 216:if(!t)continue;case 169:case 168:case 171:case 170:case 173:case 174:case 175:case 172:return e;case 167:e.parent.kind===166&&Js(e.parent.parent)?e=e.parent.parent:Js(e.parent)&&(e=e.parent);break}}}function $k(e){if(e.kind===215||e.kind===216){let t=e,r=e.parent;for(;r.kind===214;)t=r,r=r.parent;if(r.kind===210&&r.expression===t)return r}}function Kk(e){return e.kind===106||Sf(e)}function Sf(e){let t=e.kind;return(t===208||t===209)&&e.expression.kind===106}function Xk(e){let t=e.kind;return(t===208||t===209)&&e.expression.kind===108}function Yk(e){var t;return!!e&&Vi(e)&&((t=e.initializer)==null?void 0:t.kind)===108}function Qk(e){return!!e&&(nu(e)||lc(e))&&ur(e.parent.parent)&&e.parent.parent.operatorToken.kind===63&&e.parent.parent.right.kind===108}function Zk(e){switch(e.kind){case 180:return e.typeName;case 230:return Bs(e.expression)?e.expression:void 0;case 79:case 163:return e}}function eI(e){switch(e.kind){case 212:return e.tag;case 283:case 282:return e.tagName;default:return e.expression}}function RS(e,t,r,s){if(e&&af(t)&&vn(t.name))return!1;switch(t.kind){case 260:return!0;case 228:return!e;case 169:return r!==void 0&&(e?_c(r):bi(r)&&!W4(t)&&!V4(t));case 174:case 175:case 171:return t.body!==void 0&&r!==void 0&&(e?_c(r):bi(r));case 166:return e?r!==void 0&&r.body!==void 0&&(r.kind===173||r.kind===171||r.kind===175)&&j4(r)!==t&&s!==void 0&&s.kind===260:!1}return!1}function q_(e,t,r,s){return Il(t)&&RS(e,t,r,s)}function m0(e,t,r,s){return q_(e,t,r,s)||h0(e,t,r)}function h0(e,t,r){switch(t.kind){case 260:return Ke(t.members,s=>m0(e,s,t,r));case 228:return!e&&Ke(t.members,s=>m0(e,s,t,r));case 171:case 175:case 173:return Ke(t.parameters,s=>q_(e,s,t,r));default:return!1}}function tI(e,t){if(q_(e,t))return!0;let r=R4(t);return!!r&&h0(e,r,t)}function rI(e,t,r){let s;if(pf(t)){let{firstAccessor:f,secondAccessor:x,setAccessor:w}=W0(r.members,t),A=Il(f)?f:x&&Il(x)?x:void 0;if(!A||t!==A)return!1;s=w==null?void 0:w.parameters}else Vl(t)&&(s=t.parameters);if(q_(e,t,r))return!0;if(s){for(let f of s)if(!kl(f)&&q_(e,f,t,r))return!0}return!1}function jS(e){if(e.textSourceNode){switch(e.textSourceNode.kind){case 10:return jS(e.textSourceNode);case 14:return e.text===""}return!1}return e.text===""}function xf(e){let{parent:t}=e;return t.kind===283||t.kind===282||t.kind===284?t.tagName===e:!1}function g0(e){switch(e.kind){case 106:case 104:case 110:case 95:case 13:case 206:case 207:case 208:case 209:case 210:case 211:case 212:case 231:case 213:case 235:case 232:case 214:case 215:case 228:case 216:case 219:case 217:case 218:case 221:case 222:case 223:case 224:case 227:case 225:case 229:case 281:case 282:case 285:case 226:case 220:case 233:return!0;case 230:return!ru(e.parent)&&!md(e.parent);case 163:for(;e.parent.kind===163;)e=e.parent;return e.parent.kind===183||Sl(e.parent)||fd(e.parent)||uc(e.parent)||xf(e);case 314:for(;uc(e.parent);)e=e.parent;return e.parent.kind===183||Sl(e.parent)||fd(e.parent)||uc(e.parent)||xf(e);case 80:return ur(e.parent)&&e.parent.left===e&&e.parent.operatorToken.kind===101;case 79:if(e.parent.kind===183||Sl(e.parent)||fd(e.parent)||uc(e.parent)||xf(e))return!0;case 8:case 9:case 10:case 14:case 108:return JS(e);default:return!1}}function JS(e){let{parent:t}=e;switch(t.kind){case 257:case 166:case 169:case 168:case 302:case 299:case 205:return t.initializer===e;case 241:case 242:case 243:case 244:case 250:case 251:case 252:case 292:case 254:return t.expression===e;case 245:let r=t;return r.initializer===e&&r.initializer.kind!==258||r.condition===e||r.incrementor===e;case 246:case 247:let s=t;return s.initializer===e&&s.initializer.kind!==258||s.expression===e;case 213:case 231:return e===t.expression;case 236:return e===t.expression;case 164:return e===t.expression;case 167:case 291:case 290:case 301:return!0;case 230:return t.expression===e&&!l0(t);case 300:return t.objectAssignmentInitializer===e;case 235:return e===t.expression;default:return g0(t)}}function FS(e){for(;e.kind===163||e.kind===79;)e=e.parent;return e.kind===183}function nI(e){return ld(e)&&!!e.parent.moduleSpecifier}function BS(e){return e.kind===268&&e.moduleReference.kind===280}function iI(e){return Y.assert(BS(e)),e.moduleReference.expression}function aI(e){return Ef(e)&&r2(e.initializer).arguments[0]}function sI(e){return e.kind===268&&e.moduleReference.kind!==280}function y0(e){return Pr(e)}function oI(e){return!Pr(e)}function Pr(e){return!!e&&!!(e.flags&262144)}function _I(e){return!!e&&!!(e.flags&67108864)}function cI(e){return!a0(e)}function qS(e){return!!e&&!!(e.flags&8388608)}function lI(e){return ac(e)&&yt(e.typeName)&&e.typeName.escapedText==="Object"&&e.typeArguments&&e.typeArguments.length===2&&(e.typeArguments[0].kind===152||e.typeArguments[0].kind===148)}function El(e,t){if(e.kind!==210)return!1;let{expression:r,arguments:s}=e;if(r.kind!==79||r.escapedText!=="require"||s.length!==1)return!1;let f=s[0];return!t||Ti(f)}function US(e){return zS(e,!1)}function Ef(e){return zS(e,!0)}function uI(e){return Xl(e)&&Ef(e.parent.parent)}function zS(e,t){return Vi(e)&&!!e.initializer&&El(t?r2(e.initializer):e.initializer,!0)}function WS(e){return zo(e)&&e.declarationList.declarations.length>0&&me(e.declarationList.declarations,t=>US(t))}function pI(e){return e===39||e===34}function fI(e,t){return No(t,e).charCodeAt(0)===34}function v0(e){return ur(e)||Lo(e)||yt(e)||sc(e)}function VS(e){return Pr(e)&&e.initializer&&ur(e.initializer)&&(e.initializer.operatorToken.kind===56||e.initializer.operatorToken.kind===60)&&e.name&&Bs(e.name)&&z_(e.name,e.initializer.left)?e.initializer.right:e.initializer}function dI(e){let t=VS(e);return t&&U_(t,Nl(e.name))}function mI(e,t){return c(e.properties,r=>lc(r)&&yt(r.name)&&r.name.escapedText==="value"&&r.initializer&&U_(r.initializer,t))}function hI(e){if(e&&e.parent&&ur(e.parent)&&e.parent.operatorToken.kind===63){let t=Nl(e.parent.left);return U_(e.parent.right,t)||gI(e.parent.left,e.parent.right,t)}if(e&&sc(e)&&S0(e)){let t=mI(e.arguments[2],e.arguments[1].text==="prototype");if(t)return t}}function U_(e,t){if(sc(e)){let r=Pl(e.expression);return r.kind===215||r.kind===216?e:void 0}if(e.kind===215||e.kind===228||e.kind===216||Hs(e)&&(e.properties.length===0||t))return e}function gI(e,t,r){let s=ur(t)&&(t.operatorToken.kind===56||t.operatorToken.kind===60)&&U_(t.right,r);if(s&&z_(e,t.left))return s}function yI(e){let t=Vi(e.parent)?e.parent.name:ur(e.parent)&&e.parent.operatorToken.kind===63?e.parent.left:void 0;return t&&U_(e.right,Nl(t))&&Bs(t)&&z_(t,e.left)}function vI(e){if(ur(e.parent)){let t=(e.parent.operatorToken.kind===56||e.parent.operatorToken.kind===60)&&ur(e.parent.parent)?e.parent.parent:e.parent;if(t.operatorToken.kind===63&&yt(t.left))return t.left}else if(Vi(e.parent))return e.parent.name}function z_(e,t){return L0(e)&&L0(t)?kf(e)===kf(t):js(e)&&wf(t)&&(t.expression.kind===108||yt(t.expression)&&(t.expression.escapedText==="window"||t.expression.escapedText==="self"||t.expression.escapedText==="global"))?z_(e,$S(t)):wf(e)&&wf(t)?Fs(e)===Fs(t)&&z_(e.expression,t.expression):!1}function b0(e){for(;ms(e,!0);)e=e.right;return e}function HS(e){return yt(e)&&e.escapedText==="exports"}function GS(e){return yt(e)&&e.escapedText==="module"}function T0(e){return(bn(e)||wl(e))&&GS(e.expression)&&Fs(e)==="exports"}function ps(e){let t=bI(e);return t===5||Pr(e)?t:0}function S0(e){return I(e.arguments)===3&&bn(e.expression)&&yt(e.expression.expression)&&qr(e.expression.expression)==="Object"&&qr(e.expression.name)==="defineProperty"&&Ta(e.arguments[1])&&V_(e.arguments[0],!0)}function wf(e){return bn(e)||wl(e)}function wl(e){return gs(e)&&Ta(e.argumentExpression)}function W_(e,t){return bn(e)&&(!t&&e.expression.kind===108||yt(e.name)&&V_(e.expression,!0))||x0(e,t)}function x0(e,t){return wl(e)&&(!t&&e.expression.kind===108||Bs(e.expression)||W_(e.expression,!0))}function V_(e,t){return Bs(e)||W_(e,t)}function $S(e){return bn(e)?e.name:e.argumentExpression}function bI(e){if(sc(e)){if(!S0(e))return 0;let t=e.arguments[0];return HS(t)||T0(t)?8:W_(t)&&Fs(t)==="prototype"?9:7}return e.operatorToken.kind!==63||!Lo(e.left)||TI(b0(e))?0:V_(e.left.expression,!0)&&Fs(e.left)==="prototype"&&Hs(XS(e))?6:KS(e.left)}function TI(e){return Q2(e)&&zs(e.expression)&&e.expression.text==="0"}function Cf(e){if(bn(e))return e.name;let t=Pl(e.argumentExpression);return zs(t)||Ti(t)?t:e}function Fs(e){let t=Cf(e);if(t){if(yt(t))return t.escapedText;if(Ti(t)||zs(t))return vi(t.text)}}function KS(e){if(e.expression.kind===108)return 4;if(T0(e))return 2;if(V_(e.expression,!0)){if(Nl(e.expression))return 3;let t=e;for(;!yt(t.expression);)t=t.expression;let r=t.expression;if((r.escapedText==="exports"||r.escapedText==="module"&&Fs(t)==="exports")&&W_(e))return 1;if(V_(e,!0)||gs(e)&&M0(e))return 5}return 0}function XS(e){for(;ur(e.right);)e=e.right;return e.right}function SI(e){return ur(e)&&ps(e)===3}function xI(e){return Pr(e)&&e.parent&&e.parent.kind===241&&(!gs(e)||wl(e))&&!!_f(e.parent)}function EI(e,t){let{valueDeclaration:r}=e;(!r||!(t.flags&16777216&&!Pr(t)&&!(r.flags&16777216))&&v0(r)&&!v0(t)||r.kind!==t.kind&&SS(r))&&(e.valueDeclaration=t)}function wI(e){if(!e||!e.valueDeclaration)return!1;let t=e.valueDeclaration;return t.kind===259||Vi(t)&&t.initializer&&ga(t.initializer)}function CI(e){var t,r;switch(e.kind){case 257:case 205:return(t=zi(e.initializer,s=>El(s,!0)))==null?void 0:t.arguments[0];case 269:return ln(e.moduleSpecifier,Ti);case 268:return ln((r=ln(e.moduleReference,ud))==null?void 0:r.expression,Ti);case 270:case 277:return ln(e.parent.moduleSpecifier,Ti);case 271:case 278:return ln(e.parent.parent.moduleSpecifier,Ti);case 273:return ln(e.parent.parent.parent.moduleSpecifier,Ti);default:Y.assertNever(e)}}function AI(e){return YS(e)||Y.failBadSyntaxKind(e.parent)}function YS(e){switch(e.parent.kind){case 269:case 275:return e.parent;case 280:return e.parent.parent;case 210:return s0(e.parent)||El(e.parent,!1)?e.parent:void 0;case 198:return Y.assert(Gn(e)),ln(e.parent.parent,Kl);default:return}}function E0(e){switch(e.kind){case 269:case 275:return e.moduleSpecifier;case 268:return e.moduleReference.kind===280?e.moduleReference.expression:void 0;case 202:return kS(e)?e.argument.literal:void 0;case 210:return e.arguments[0];case 264:return e.name.kind===10?e.name:void 0;default:return Y.assertNever(e)}}function QS(e){switch(e.kind){case 269:return e.importClause&&ln(e.importClause.namedBindings,_v);case 268:return e;case 275:return e.exportClause&&ln(e.exportClause,ld);default:return Y.assertNever(e)}}function ZS(e){return e.kind===269&&!!e.importClause&&!!e.importClause.name}function PI(e,t){if(e.name){let r=t(e);if(r)return r}if(e.namedBindings){let r=_v(e.namedBindings)?t(e.namedBindings):c(e.namedBindings.elements,t);if(r)return r}}function DI(e){if(e)switch(e.kind){case 166:case 171:case 170:case 300:case 299:case 169:case 168:return e.questionToken!==void 0}return!1}function kI(e){let t=dd(e)?pa(e.parameters):void 0,r=ln(t&&t.name,yt);return!!r&&r.escapedText==="new"}function Cl(e){return e.kind===349||e.kind===341||e.kind===343}function II(e){return Cl(e)||nv(e)}function NI(e){return Zl(e)&&ur(e.expression)&&e.expression.operatorToken.kind===63?b0(e.expression):void 0}function e4(e){return Zl(e)&&ur(e.expression)&&ps(e.expression)!==0&&ur(e.expression.right)&&(e.expression.right.operatorToken.kind===56||e.expression.right.operatorToken.kind===60)?e.expression.right.right:void 0}function w0(e){switch(e.kind){case 240:let t=Al(e);return t&&t.initializer;case 169:return e.initializer;case 299:return e.initializer}}function Al(e){return zo(e)?pa(e.declarationList.declarations):void 0}function t4(e){return Ea(e)&&e.body&&e.body.kind===264?e.body:void 0}function OI(e){if(e.kind>=240&&e.kind<=256)return!0;switch(e.kind){case 79:case 108:case 106:case 163:case 233:case 209:case 208:case 205:case 215:case 216:case 171:case 174:case 175:return!0;default:return!1}}function Af(e){switch(e.kind){case 216:case 223:case 238:case 249:case 176:case 292:case 260:case 228:case 172:case 173:case 182:case 177:case 248:case 256:case 243:case 209:case 239:case 1:case 263:case 302:case 274:case 275:case 278:case 241:case 246:case 247:case 245:case 259:case 215:case 181:case 174:case 79:case 242:case 269:case 268:case 178:case 261:case 320:case 326:case 253:case 171:case 170:case 264:case 199:case 267:case 207:case 166:case 214:case 208:case 299:case 169:case 168:case 250:case 175:case 300:case 301:case 252:case 254:case 255:case 262:case 165:case 257:case 240:case 244:case 251:return!0;default:return!1}}function r4(e,t){let r;u0(e)&&lS(e)&&ya(e.initializer)&&(r=jr(r,n4(e,Zn(e.initializer.jsDoc))));let s=e;for(;s&&s.parent;){if(ya(s)&&(r=jr(r,n4(e,Zn(s.jsDoc)))),s.kind===166){r=jr(r,(t?b3:of)(s));break}if(s.kind===165){r=jr(r,(t?x3:S3)(s));break}s=a4(s)}return r||Bt}function n4(e,t){if(Ho(t)){let r=ee(t.tags,s=>i4(e,s));return t.tags===r?[t]:r}return i4(e,t)?[t]:void 0}function i4(e,t){return!(au(t)||Tv(t))||!t.parent||!Ho(t.parent)||!qo(t.parent.parent)||t.parent.parent===e}function a4(e){let t=e.parent;if(t.kind===299||t.kind===274||t.kind===169||t.kind===241&&e.kind===208||t.kind===250||t4(t)||ur(e)&&e.operatorToken.kind===63)return t;if(t.parent&&(Al(t.parent)===e||ur(t)&&t.operatorToken.kind===63))return t.parent;if(t.parent&&t.parent.parent&&(Al(t.parent.parent)||w0(t.parent.parent)===e||e4(t.parent.parent)))return t.parent.parent}function MI(e){if(e.symbol)return e.symbol;if(!yt(e.name))return;let t=e.name.escapedText,r=C0(e);if(!r)return;let s=Pe(r.parameters,f=>f.name.kind===79&&f.name.escapedText===t);return s&&s.symbol}function LI(e){if(Ho(e.parent)&&e.parent.tags){let t=Pe(e.parent.tags,Cl);if(t)return t}return C0(e)}function C0(e){let t=A0(e);if(t)return Wl(t)&&t.type&&ga(t.type)?t.type:ga(t)?t:void 0}function A0(e){let t=s4(e);if(t)return e4(t)||NI(t)||w0(t)||Al(t)||t4(t)||t}function s4(e){let t=P0(e);if(!t)return;let r=t.parent;if(r&&r.jsDoc&&t===Cn(r.jsDoc))return r}function P0(e){return zi(e.parent,Ho)}function RI(e){let t=e.name.escapedText,{typeParameters:r}=e.parent.parent.parent;return r&&Pe(r,s=>s.name.escapedText===t)}function jI(e){return!!e.typeArguments}function o4(e){let t=e.parent;for(;;){switch(t.kind){case 223:let r=t.operatorToken.kind;return G_(r)&&t.left===e?r===63||jf(r)?1:2:0;case 221:case 222:let s=t.operator;return s===45||s===46?2:0;case 246:case 247:return t.initializer===e?1:0;case 214:case 206:case 227:case 232:e=t;break;case 301:e=t.parent;break;case 300:if(t.name!==e)return 0;e=t.parent;break;case 299:if(t.name===e)return 0;e=t.parent;break;default:return 0}t=e.parent}}function JI(e){return o4(e)!==0}function FI(e){switch(e.kind){case 238:case 240:case 251:case 242:case 252:case 266:case 292:case 293:case 253:case 245:case 246:case 247:case 243:case 244:case 255:case 295:return!0}return!1}function BI(e){return ad(e)||sd(e)||Ly(e)||Wo(e)||nc(e)}function _4(e,t){for(;e&&e.kind===t;)e=e.parent;return e}function qI(e){return _4(e,193)}function D0(e){return _4(e,214)}function UI(e){let t;for(;e&&e.kind===193;)t=e,e=e.parent;return[t,e]}function zI(e){for(;K2(e);)e=e.type;return e}function Pl(e,t){return $o(e,t?17:1)}function WI(e){return e.kind!==208&&e.kind!==209?!1:(e=D0(e.parent),e&&e.kind===217)}function VI(e,t){for(;e;){if(e===t)return!0;e=e.parent}return!1}function c4(e){return!wi(e)&&!df(e)&&ko(e.parent)&&e.parent.name===e}function HI(e){let t=e.parent;switch(e.kind){case 10:case 14:case 8:if(Ws(t))return t.parent;case 79:if(ko(t))return t.name===e?t:void 0;if(rc(t)){let r=t.parent;return pc(r)&&r.name===t?r:void 0}else{let r=t.parent;return ur(r)&&ps(r)!==0&&(r.left.symbol||r.symbol)&&ml(r)===e?r:void 0}case 80:return ko(t)&&t.name===e?t:void 0;default:return}}function l4(e){return Ta(e)&&e.parent.kind===164&&ko(e.parent.parent)}function GI(e){let t=e.parent;switch(t.kind){case 169:case 168:case 171:case 170:case 174:case 175:case 302:case 299:case 208:return t.name===e;case 163:return t.right===e;case 205:case 273:return t.propertyName===e;case 278:case 288:case 282:case 283:case 284:return!0}return!1}function $I(e){return e.kind===268||e.kind===267||e.kind===270&&e.name||e.kind===271||e.kind===277||e.kind===273||e.kind===278||e.kind===274&&I0(e)?!0:Pr(e)&&(ur(e)&&ps(e)===2&&I0(e)||bn(e)&&ur(e.parent)&&e.parent.left===e&&e.parent.operatorToken.kind===63&&k0(e.parent.right))}function u4(e){switch(e.parent.kind){case 270:case 273:case 271:case 278:case 274:case 268:case 277:return e.parent;case 163:do e=e.parent;while(e.parent.kind===163);return u4(e)}}function k0(e){return Bs(e)||_d(e)}function I0(e){let t=p4(e);return k0(t)}function p4(e){return Vo(e)?e.expression:e.right}function KI(e){return e.kind===300?e.name:e.kind===299?e.initializer:e.parent.right}function f4(e){let t=d4(e);if(t&&Pr(e)){let r=E3(e);if(r)return r.class}return t}function d4(e){let t=Pf(e.heritageClauses,94);return t&&t.types.length>0?t.types[0]:void 0}function m4(e){if(Pr(e))return w3(e).map(t=>t.class);{let t=Pf(e.heritageClauses,117);return t==null?void 0:t.types}}function h4(e){return eu(e)?g4(e)||Bt:bi(e)&&Ft(Cp(f4(e)),m4(e))||Bt}function g4(e){let t=Pf(e.heritageClauses,94);return t?t.types:void 0}function Pf(e,t){if(e){for(let r of e)if(r.token===t)return r}}function XI(e,t){for(;e;){if(e.kind===t)return e;e=e.parent}}function ba(e){return 81<=e&&e<=162}function N0(e){return 126<=e&&e<=162}function y4(e){return ba(e)&&!N0(e)}function YI(e){return 117<=e&&e<=125}function QI(e){let t=_l(e);return t!==void 0&&y4(t)}function ZI(e){let t=_l(e);return t!==void 0&&ba(t)}function eN(e){let t=d3(e);return!!t&&!N0(t)}function tN(e){return 2<=e&&e<=7}function rN(e){if(!e)return 4;let t=0;switch(e.kind){case 259:case 215:case 171:e.asteriskToken&&(t|=1);case 216:rn(e,512)&&(t|=2);break}return e.body||(t|=4),t}function nN(e){switch(e.kind){case 259:case 215:case 216:case 171:return e.body!==void 0&&e.asteriskToken===void 0&&rn(e,512)}return!1}function Ta(e){return Ti(e)||zs(e)}function O0(e){return od(e)&&(e.operator===39||e.operator===40)&&zs(e.operand)}function v4(e){let t=ml(e);return!!t&&M0(t)}function M0(e){if(!(e.kind===164||e.kind===209))return!1;let t=gs(e)?Pl(e.argumentExpression):e.expression;return!Ta(t)&&!O0(t)}function Df(e){switch(e.kind){case 79:case 80:return e.escapedText;case 10:case 8:return vi(e.text);case 164:let t=e.expression;return Ta(t)?vi(t.text):O0(t)?t.operator===40?Br(t.operator)+t.operand.text:t.operand.text:void 0;default:return Y.assertNever(e)}}function L0(e){switch(e.kind){case 79:case 10:case 14:case 8:return!0;default:return!1}}function kf(e){return js(e)?qr(e):e.text}function b4(e){return js(e)?e.escapedText:vi(e.text)}function iN(e){return`__@${getSymbolId(e)}@${e.escapedName}`}function aN(e,t){return`__#${getSymbolId(e)}@${t}`}function sN(e){return Pn(e.escapedName,"__@")}function oN(e){return Pn(e.escapedName,"__#")}function _N(e){return e.kind===79&&e.escapedText==="Symbol"}function T4(e){return yt(e)?qr(e)==="__proto__":Gn(e)&&e.text==="__proto__"}function H_(e,t){switch(e=$o(e),e.kind){case 228:case 215:if(e.name)return!1;break;case 216:break;default:return!1}return typeof t=="function"?t(e):!0}function S4(e){switch(e.kind){case 299:return!T4(e.name);case 300:return!!e.objectAssignmentInitializer;case 257:return yt(e.name)&&!!e.initializer;case 166:return yt(e.name)&&!!e.initializer&&!e.dotDotDotToken;case 205:return yt(e.name)&&!!e.initializer&&!e.dotDotDotToken;case 169:return!!e.initializer;case 223:switch(e.operatorToken.kind){case 63:case 76:case 75:case 77:return yt(e.left)}break;case 274:return!0}return!1}function cN(e,t){if(!S4(e))return!1;switch(e.kind){case 299:return H_(e.initializer,t);case 300:return H_(e.objectAssignmentInitializer,t);case 257:case 166:case 205:case 169:return H_(e.initializer,t);case 223:return H_(e.right,t);case 274:return H_(e.expression,t)}}function lN(e){return e.escapedText==="push"||e.escapedText==="unshift"}function uN(e){return If(e).kind===166}function If(e){for(;e.kind===205;)e=e.parent.parent;return e}function pN(e){let t=e.kind;return t===173||t===215||t===259||t===216||t===171||t===174||t===175||t===264||t===308}function fs(e){return hs(e.pos)||hs(e.end)}function fN(e){return fl(e,wi)||e}function dN(e){let t=R0(e),r=e.kind===211&&e.arguments!==void 0;return x4(e.kind,t,r)}function x4(e,t,r){switch(e){case 211:return r?0:1;case 221:case 218:case 219:case 217:case 220:case 224:case 226:return 1;case 223:switch(t){case 42:case 63:case 64:case 65:case 67:case 66:case 68:case 69:case 70:case 71:case 72:case 73:case 78:case 74:case 75:case 76:case 77:return 1}}return 0}function mN(e){let t=R0(e),r=e.kind===211&&e.arguments!==void 0;return E4(e.kind,t,r)}function R0(e){return e.kind===223?e.operatorToken.kind:e.kind===221||e.kind===222?e.operator:e.kind}function E4(e,t,r){switch(e){case 357:return 0;case 227:return 1;case 226:return 2;case 224:return 4;case 223:switch(t){case 27:return 0;case 63:case 64:case 65:case 67:case 66:case 68:case 69:case 70:case 71:case 72:case 73:case 78:case 74:case 75:case 76:case 77:return 3;default:return Dl(t)}case 213:case 232:case 221:case 218:case 219:case 217:case 220:return 16;case 222:return 17;case 210:return 18;case 211:return r?19:18;case 212:case 208:case 209:case 233:return 19;case 231:case 235:return 11;case 108:case 106:case 79:case 80:case 104:case 110:case 95:case 8:case 9:case 10:case 206:case 207:case 215:case 216:case 228:case 13:case 14:case 225:case 214:case 229:case 281:case 282:case 285:return 20;default:return-1}}function Dl(e){switch(e){case 60:return 4;case 56:return 5;case 55:return 6;case 51:return 7;case 52:return 8;case 50:return 9;case 34:case 35:case 36:case 37:return 10;case 29:case 31:case 32:case 33:case 102:case 101:case 128:case 150:return 11;case 47:case 48:case 49:return 12;case 39:case 40:return 13;case 41:case 43:case 44:return 14;case 42:return 15}return-1}function hN(e){return ee(e,t=>{switch(t.kind){case 291:return!!t.expression;case 11:return!t.containsOnlyTriviaWhiteSpaces;default:return!0}})}function gN(){let e=[],t=[],r=new Map,s=!1;return{add:x,lookup:f,getGlobalDiagnostics:w,getDiagnostics:A};function f(g){let B;if(g.file?B=r.get(g.file.fileName):B=e,!B)return;let N=Ya(B,g,rr,qf);if(N>=0)return B[N]}function x(g){let B;g.file?(B=r.get(g.file.fileName),B||(B=[],r.set(g.file.fileName,B),Qn(t,g.file.fileName,ri))):(s&&(s=!1,e=e.slice()),B=e),Qn(B,g,qf)}function w(){return s=!0,e}function A(g){if(g)return r.get(g)||[];let B=ge(t,N=>r.get(N));return e.length&&B.unshift(...e),B}}function yN(e){return e.replace(s8,"\\${")}function w4(e){return e&&!!(k8(e)?e.templateFlags:e.head.templateFlags||Ke(e.templateSpans,t=>!!t.literal.templateFlags))}function C4(e){return"\\u"+("0000"+e.toString(16).toUpperCase()).slice(-4)}function vN(e,t,r){if(e.charCodeAt(0)===0){let s=r.charCodeAt(t+e.length);return s>=48&&s<=57?"\\x00":"\\0"}return l8.get(e)||C4(e.charCodeAt(0))}function Nf(e,t){let r=t===96?c8:t===39?_8:o8;return e.replace(r,vN)}function Of(e,t){return e=Nf(e,t),C2.test(e)?e.replace(C2,r=>C4(r.charCodeAt(0))):e}function bN(e){return"&#x"+e.toString(16).toUpperCase()+";"}function TN(e){return e.charCodeAt(0)===0?"�":f8.get(e)||bN(e.charCodeAt(0))}function A4(e,t){let r=t===39?p8:u8;return e.replace(r,TN)}function SN(e){let t=e.length;return t>=2&&e.charCodeAt(0)===e.charCodeAt(t-1)&&xN(e.charCodeAt(0))?e.substring(1,t-1):e}function xN(e){return e===39||e===34||e===96}function P4(e){let t=e.charCodeAt(0);return t>=97&&t<=122||Fi(e,"-")||Fi(e,":")}function j0(e){let t=jo[1];for(let r=jo.length;r<=e;r++)jo.push(jo[r-1]+t);return jo[e]}function Oo(){return jo[1].length}function EN(){return Fi(C,"-dev")||Fi(C,"-insiders")}function wN(e){var t,r,s,f,x,w=!1;function A(Se){let Ye=Kp(Se);Ye.length>1?(f=f+Ye.length-1,x=t.length-Se.length+Zn(Ye),s=x-t.length===0):s=!1}function g(Se){Se&&Se.length&&(s&&(Se=j0(r)+Se,s=!1),t+=Se,A(Se))}function B(Se){Se&&(w=!1),g(Se)}function N(Se){Se&&(w=!0),g(Se)}function X(){t="",r=0,s=!0,f=0,x=0,w=!1}function F(Se){Se!==void 0&&(t+=Se,A(Se),w=!1)}function $(Se){Se&&Se.length&&B(Se)}function ae(Se){(!s||Se)&&(t+=e,f++,x=t.length,s=!0,w=!1)}function Te(){return s?t.length:t.length+e.length}return X(),{write:B,rawWrite:F,writeLiteral:$,writeLine:ae,increaseIndent:()=>{r++},decreaseIndent:()=>{r--},getIndent:()=>r,getTextPos:()=>t.length,getLine:()=>f,getColumn:()=>s?r*Oo():t.length-x,getText:()=>t,isAtStartOfLine:()=>s,hasTrailingComment:()=>w,hasTrailingWhitespace:()=>!!t.length&&os(t.charCodeAt(t.length-1)),clear:X,writeKeyword:B,writeOperator:B,writeParameter:B,writeProperty:B,writePunctuation:B,writeSpace:B,writeStringLiteral:B,writeSymbol:(Se,Ye)=>B(Se),writeTrailingSemicolon:B,writeComment:N,getTextPosWithWriteLine:Te}}function CN(e){let t=!1;function r(){t&&(e.writeTrailingSemicolon(";"),t=!1)}return Object.assign(Object.assign({},e),{},{writeTrailingSemicolon(){t=!0},writeLiteral(s){r(),e.writeLiteral(s)},writeStringLiteral(s){r(),e.writeStringLiteral(s)},writeSymbol(s,f){r(),e.writeSymbol(s,f)},writePunctuation(s){r(),e.writePunctuation(s)},writeKeyword(s){r(),e.writeKeyword(s)},writeOperator(s){r(),e.writeOperator(s)},writeParameter(s){r(),e.writeParameter(s)},writeSpace(s){r(),e.writeSpace(s)},writeProperty(s){r(),e.writeProperty(s)},writeComment(s){r(),e.writeComment(s)},writeLine(){r(),e.writeLine()},increaseIndent(){r(),e.increaseIndent()},decreaseIndent(){r(),e.decreaseIndent()}})}function J0(e){return e.useCaseSensitiveFileNames?e.useCaseSensitiveFileNames():!1}function D4(e){return wp(J0(e))}function k4(e,t,r){return t.moduleName||F0(e,t.fileName,r&&r.fileName)}function I4(e,t){return e.getCanonicalFileName(as(t,e.getCurrentDirectory()))}function AN(e,t,r){let s=t.getExternalModuleFileFromDeclaration(r);if(!s||s.isDeclarationFile)return;let f=E0(r);if(!(f&&Ti(f)&&!So(f.text)&&I4(e,s.path).indexOf(I4(e,wo(e.getCommonSourceDirectory())))===-1))return k4(e,s)}function F0(e,t,r){let s=g=>e.getCanonicalFileName(g),f=Ui(r?ma(r):e.getCommonSourceDirectory(),e.getCurrentDirectory(),s),x=as(t,e.getCurrentDirectory()),w=uy(f,x,f,s,!1),A=Ll(w);return r?_y(A):A}function PN(e,t,r){let s=t.getCompilerOptions(),f;return s.outDir?f=Ll(M4(e,t,s.outDir)):f=Ll(e),f+r}function DN(e,t){return N4(e,t.getCompilerOptions(),t.getCurrentDirectory(),t.getCommonSourceDirectory(),r=>t.getCanonicalFileName(r))}function N4(e,t,r,s,f){let x=t.declarationDir||t.outDir,w=x?U0(e,x,r,s,f):e,A=O4(w);return Ll(w)+A}function O4(e){return da(e,[".mjs",".mts"])?".d.mts":da(e,[".cjs",".cts"])?".d.cts":da(e,[".json"])?".d.json.ts":".d.ts"}function kN(e){return da(e,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:da(e,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:da(e,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function B0(e){return e.outFile||e.out}function IN(e,t){var r,s;if(e.paths)return(s=e.baseUrl)!=null?s:Y.checkDefined(e.pathsBasePath||((r=t.getCurrentDirectory)==null?void 0:r.call(t)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function NN(e,t,r){let s=e.getCompilerOptions();if(B0(s)){let f=Ei(s),x=s.emitDeclarationOnly||f===2||f===4;return ee(e.getSourceFiles(),w=>(x||!Qo(w))&&q0(w,e,r))}else{let f=t===void 0?e.getSourceFiles():[t];return ee(f,x=>q0(x,e,r))}}function q0(e,t,r){return!(t.getCompilerOptions().noEmitForJsFiles&&y0(e))&&!e.isDeclarationFile&&!t.isSourceFileFromExternalLibrary(e)&&(r||!(a0(e)&&t.getResolvedProjectReferenceToRedirect(e.fileName))&&!t.isSourceOfProjectReferenceRedirect(e.fileName))}function M4(e,t,r){return U0(e,r,t.getCurrentDirectory(),t.getCommonSourceDirectory(),s=>t.getCanonicalFileName(s))}function U0(e,t,r,s,f){let x=as(e,r);return x=f(x).indexOf(f(s))===0?x.substring(s.length):x,tn(t,x)}function ON(e,t,r,s,f,x,w){e.writeFile(r,s,f,A=>{t.add(Ol(ve.Could_not_write_file_0_Colon_1,r,A))},x,w)}function L4(e,t,r){if(e.length>Bi(e)&&!r(e)){let s=ma(e);L4(s,t,r),t(e)}}function MN(e,t,r,s,f,x){try{s(e,t,r)}catch{L4(ma(Un(e)),f,x),s(e,t,r)}}function LN(e,t){let r=ss(e);return k_(r,t)}function ds(e,t){return k_(e,t)}function R4(e){return Pe(e.members,t=>nc(t)&&xl(t.body))}function z0(e){if(e&&e.parameters.length>0){let t=e.parameters.length===2&&kl(e.parameters[0]);return e.parameters[t?1:0]}}function RN(e){let t=z0(e);return t&&t.type}function j4(e){if(e.parameters.length&&!iu(e)){let t=e.parameters[0];if(kl(t))return t}}function kl(e){return Mf(e.name)}function Mf(e){return!!e&&e.kind===79&&J4(e)}function jN(e){if(!Mf(e))return!1;for(;rc(e.parent)&&e.parent.left===e;)e=e.parent;return e.parent.kind===183}function J4(e){return e.escapedText==="this"}function W0(e,t){let r,s,f,x;return v4(t)?(r=t,t.kind===174?f=t:t.kind===175?x=t:Y.fail("Accessor has wrong kind")):c(e,w=>{if(pf(w)&&G0(w)===G0(t)){let A=Df(w.name),g=Df(t.name);A===g&&(r?s||(s=w):r=w,w.kind===174&&!f&&(f=w),w.kind===175&&!x&&(x=w))}}),{firstAccessor:r,secondAccessor:s,getAccessor:f,setAccessor:x}}function V0(e){if(!Pr(e)&&Wo(e))return;let t=e.type;return t||!Pr(e)?t:Dy(e)?e.typeExpression&&e.typeExpression.type:cf(e)}function JN(e){return e.type}function FN(e){return iu(e)?e.type&&e.type.typeExpression&&e.type.typeExpression.type:e.type||(Pr(e)?O3(e):void 0)}function F4(e){return ne(hl(e),t=>BN(t)?t.typeParameters:void 0)}function BN(e){return Go(e)&&!(e.parent.kind===323&&(e.parent.tags.some(Cl)||e.parent.tags.some(yv)))}function qN(e){let t=z0(e);return t&&V0(t)}function B4(e,t,r,s){q4(e,t,r.pos,s)}function q4(e,t,r,s){s&&s.length&&r!==s[0].pos&&ds(e,r)!==ds(e,s[0].pos)&&t.writeLine()}function UN(e,t,r,s){r!==s&&ds(e,r)!==ds(e,s)&&t.writeLine()}function U4(e,t,r,s,f,x,w,A){if(s&&s.length>0){f&&r.writeSpace(" ");let g=!1;for(let B of s)g&&(r.writeSpace(" "),g=!1),A(e,t,r,B.pos,B.end,w),B.hasTrailingNewLine?r.writeLine():g=!0;g&&x&&r.writeSpace(" ")}}function zN(e,t,r,s,f,x,w){let A,g;if(w?f.pos===0&&(A=ee(Ao(e,f.pos),B)):A=Ao(e,f.pos),A){let N=[],X;for(let F of A){if(X){let $=ds(t,X.end);if(ds(t,F.pos)>=$+2)break}N.push(F),X=F}if(N.length){let F=ds(t,Zn(N).end);ds(t,Ar(e,f.pos))>=F+2&&(B4(t,r,f,A),U4(e,t,r,N,!1,!0,x,s),g={nodePos:f.pos,detachedCommentEndPos:Zn(N).end})}}return g;function B(N){return vS(e,N.pos)}}function WN(e,t,r,s,f,x){if(e.charCodeAt(s+1)===42){let w=my(t,s),A=t.length,g;for(let B=s,N=w.line;B0){let ae=$%Oo(),Te=j0(($-ae)/Oo());for(r.rawWrite(Te);ae;)r.rawWrite(" "),ae--}else r.rawWrite("")}VN(e,f,r,x,B,X),B=X}}else r.writeComment(e.substring(s,f))}function VN(e,t,r,s,f,x){let w=Math.min(t,x-1),A=Pp(e.substring(f,w));A?(r.writeComment(A),w!==t&&r.writeLine()):r.rawWrite(s)}function z4(e,t,r){let s=0;for(;t=0&&e.kind<=162?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=Y0(e)|536870912),t&&!(e.modifierFlagsCache&4096)&&(r||Pr(e))&&e.parent&&(e.modifierFlagsCache|=X4(e)|4096),e.modifierFlagsCache&-536875009)}function Rf(e){return K0(e,!0)}function K4(e){return K0(e,!0,!0)}function X0(e){return K0(e,!1)}function X4(e){let t=0;return e.parent&&!Vs(e)&&(Pr(e)&&(C3(e)&&(t|=4),A3(e)&&(t|=8),P3(e)&&(t|=16),D3(e)&&(t|=64),k3(e)&&(t|=16384)),I3(e)&&(t|=8192)),t}function Y4(e){return Y0(e)|X4(e)}function Y0(e){let t=fc(e)?Vn(e.modifiers):0;return(e.flags&4||e.kind===79&&e.flags&2048)&&(t|=1),t}function Vn(e){let t=0;if(e)for(let r of e)t|=Q0(r.kind);return t}function Q0(e){switch(e){case 124:return 32;case 123:return 4;case 122:return 16;case 121:return 8;case 126:return 256;case 127:return 128;case 93:return 1;case 136:return 2;case 85:return 2048;case 88:return 1024;case 132:return 512;case 146:return 64;case 161:return 16384;case 101:return 32768;case 145:return 65536;case 167:return 131072}return 0}function Q4(e){return e===56||e===55}function KN(e){return Q4(e)||e===53}function jf(e){return e===75||e===76||e===77}function XN(e){return ur(e)&&jf(e.operatorToken.kind)}function Z4(e){return Q4(e)||e===60}function YN(e){return ur(e)&&Z4(e.operatorToken.kind)}function G_(e){return e>=63&&e<=78}function ex(e){let t=tx(e);return t&&!t.isImplements?t.class:void 0}function tx(e){if(ev(e)){if(ru(e.parent)&&bi(e.parent.parent))return{class:e.parent.parent,isImplements:e.parent.token===117};if(md(e.parent)){let t=A0(e.parent);if(t&&bi(t))return{class:t,isImplements:!1}}}}function ms(e,t){return ur(e)&&(t?e.operatorToken.kind===63:G_(e.operatorToken.kind))&&Do(e.left)}function QN(e){return ms(e.parent)&&e.parent.left===e}function ZN(e){if(ms(e,!0)){let t=e.left.kind;return t===207||t===206}return!1}function Z0(e){return ex(e)!==void 0}function Bs(e){return e.kind===79||rx(e)}function eO(e){switch(e.kind){case 79:return e;case 163:do e=e.left;while(e.kind!==79);return e;case 208:do e=e.expression;while(e.kind!==79);return e}}function e2(e){return e.kind===79||e.kind===108||e.kind===106||e.kind===233||e.kind===208&&e2(e.expression)||e.kind===214&&e2(e.expression)}function rx(e){return bn(e)&&yt(e.name)&&Bs(e.expression)}function t2(e){if(bn(e)){let t=t2(e.expression);if(t!==void 0)return t+"."+ls(e.name)}else if(gs(e)){let t=t2(e.expression);if(t!==void 0&&vl(e.argumentExpression))return t+"."+Df(e.argumentExpression)}else if(yt(e))return dl(e.escapedText)}function Nl(e){return W_(e)&&Fs(e)==="prototype"}function tO(e){return e.parent.kind===163&&e.parent.right===e||e.parent.kind===208&&e.parent.name===e}function nx(e){return bn(e.parent)&&e.parent.name===e||gs(e.parent)&&e.parent.argumentExpression===e}function rO(e){return rc(e.parent)&&e.parent.right===e||bn(e.parent)&&e.parent.name===e||uc(e.parent)&&e.parent.right===e}function nO(e){return e.kind===207&&e.properties.length===0}function iO(e){return e.kind===206&&e.elements.length===0}function aO(e){if(!(!sO(e)||!e.declarations)){for(let t of e.declarations)if(t.localSymbol)return t.localSymbol}}function sO(e){return e&&I(e.declarations)>0&&rn(e.declarations[0],1024)}function oO(e){return Pe(y8,t=>ns(e,t))}function _O(e){let t=[],r=e.length;for(let s=0;s>6|192),t.push(f&63|128)):f<65536?(t.push(f>>12|224),t.push(f>>6&63|128),t.push(f&63|128)):f<131072?(t.push(f>>18|240),t.push(f>>12&63|128),t.push(f>>6&63|128),t.push(f&63|128)):Y.assert(!1,"Unexpected code point")}return t}function ix(e){let t="",r=_O(e),s=0,f=r.length,x,w,A,g;for(;s>2,w=(r[s]&3)<<4|r[s+1]>>4,A=(r[s+1]&15)<<2|r[s+2]>>6,g=r[s+2]&63,s+1>=f?A=g=64:s+2>=f&&(g=64),t+=xa.charAt(x)+xa.charAt(w)+xa.charAt(A)+xa.charAt(g),s+=3;return t}function cO(e){let t="",r=0,s=e.length;for(;r>4&3,N=(w&15)<<4|A>>2&15,X=(A&3)<<6|g&63;N===0&&A!==0?s.push(B):X===0&&g!==0?s.push(B,N):s.push(B,N,X),f+=4}return cO(s)}function ax(e,t){let r=Ji(t)?t:t.readFile(e);if(!r)return;let s=parseConfigFileTextToJson(e,r);return s.error?void 0:s.config}function pO(e,t){return ax(e,t)||{}}function sx(e,t){return!t.directoryExists||t.directoryExists(e)}function ox(e){switch(e.newLine){case 0:return d8;case 1:case void 0:return m8}}function Jf(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e;return Y.assert(t>=e||t===-1),{pos:e,end:t}}function fO(e,t){return Jf(e.pos,t)}function Ff(e,t){return Jf(t,e.end)}function _x(e){let t=fc(e)?te(e.modifiers,zl):void 0;return t&&!hs(t.end)?Ff(e,t.end):e}function dO(e){if(Bo(e)||Vl(e))return Ff(e,e.name.pos);let t=fc(e)?Cn(e.modifiers):void 0;return t&&!hs(t.end)?Ff(e,t.end):_x(e)}function mO(e){return e.pos===e.end}function hO(e,t){return Jf(e,e+Br(t).length)}function gO(e,t){return cx(e,e,t)}function yO(e,t,r){return $_(K_(e,r,!1),K_(t,r,!1),r)}function vO(e,t,r){return $_(e.end,t.end,r)}function cx(e,t,r){return $_(K_(e,r,!1),t.end,r)}function bO(e,t,r){return $_(e.end,K_(t,r,!1),r)}function TO(e,t,r,s){let f=K_(t,r,s);return I_(r,e.end,f)}function SO(e,t,r){return I_(r,e.end,t.end)}function xO(e,t){return!$_(e.pos,e.end,t)}function $_(e,t,r){return I_(r,e,t)===0}function K_(e,t,r){return hs(e.pos)?-1:Ar(t.text,e.pos,!1,r)}function EO(e,t,r,s){let f=Ar(r.text,e,!1,s),x=CO(f,t,r);return I_(r,x!=null?x:t,f)}function wO(e,t,r,s){let f=Ar(r.text,e,!1,s);return I_(r,e,Math.min(t,f))}function CO(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2?arguments[2]:void 0;for(;e-- >t;)if(!os(r.text.charCodeAt(e)))return e}function AO(e){let t=fl(e);if(t)switch(t.parent.kind){case 263:case 264:return t===t.parent.name}return!1}function PO(e){return ee(e.declarations,lx)}function lx(e){return Vi(e)&&e.initializer!==void 0}function DO(e){return e.watch&&Jr(e,"watch")}function kO(e){e.close()}function ux(e){return e.flags&33554432?e.links.checkFlags:0}function IO(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(e.valueDeclaration){let r=t&&e.declarations&&Pe(e.declarations,ic)||e.flags&32768&&Pe(e.declarations,Gl)||e.valueDeclaration,s=ef(r);return e.parent&&e.parent.flags&32?s:s&-29}if(ux(e)&6){let r=e.links.checkFlags,s=r&1024?8:r&256?4:16,f=r&2048?32:0;return s|f}return e.flags&4194304?36:0}function NO(e,t){return e.flags&2097152?t.getAliasedSymbol(e):e}function OO(e){return e.exportSymbol?e.exportSymbol.flags|e.flags:e.flags}function MO(e){return Mo(e)===1}function LO(e){return Mo(e)!==0}function Mo(e){let{parent:t}=e;if(!t)return 0;switch(t.kind){case 214:return Mo(t);case 222:case 221:let{operator:s}=t;return s===45||s===46?r():0;case 223:let{left:f,operatorToken:x}=t;return f===e&&G_(x.kind)?x.kind===63?1:r():0;case 208:return t.name!==e?0:Mo(t);case 299:{let w=Mo(t.parent);return e===t.name?RO(w):w}case 300:return e===t.objectAssignmentInitializer?0:Mo(t.parent);case 206:return Mo(t);default:return 0}function r(){return t.parent&&D0(t.parent).kind===241?1:2}}function RO(e){switch(e){case 0:return 1;case 1:return 0;case 2:return 2;default:return Y.assertNever(e)}}function px(e,t){if(!e||!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let r in e)if(typeof e[r]=="object"){if(!px(e[r],t[r]))return!1}else if(typeof e[r]!="function"&&e[r]!==t[r])return!1;return!0}function jO(e,t){e.forEach(t),e.clear()}function fx(e,t,r){let{onDeleteValue:s,onExistingValue:f}=r;e.forEach((x,w)=>{let A=t.get(w);A===void 0?(e.delete(w),s(x,w)):f&&f(x,A,w)})}function JO(e,t,r){fx(e,t,r);let{createNewValue:s}=r;t.forEach((f,x)=>{e.has(x)||e.set(x,s(x,f))})}function FO(e){if(e.flags&32){let t=dx(e);return!!t&&rn(t,256)}return!1}function dx(e){var t;return(t=e.declarations)==null?void 0:t.find(bi)}function Bf(e){return e.flags&3899393?e.objectFlags:0}function BO(e,t){return!!FT(e,r=>t(r)?!0:void 0)}function qO(e){return!!e&&!!e.declarations&&!!e.declarations[0]&&av(e.declarations[0])}function UO(e){let{moduleSpecifier:t}=e;return Gn(t)?t.text:gf(t)}function mx(e){let t;return xr(e,r=>{xl(r)&&(t=r)},r=>{for(let s=r.length-1;s>=0;s--)if(xl(r[s])){t=r[s];break}}),t}function zO(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return e.has(t)?!1:(e.set(t,r),!0)}function WO(e){return bi(e)||eu(e)||id(e)}function hx(e){return e>=179&&e<=202||e===131||e===157||e===148||e===160||e===149||e===134||e===152||e===153||e===114||e===155||e===144||e===139||e===230||e===315||e===316||e===317||e===318||e===319||e===320||e===321}function Lo(e){return e.kind===208||e.kind===209}function VO(e){return e.kind===208?e.name:(Y.assert(e.kind===209),e.argumentExpression)}function HO(e){switch(e.kind){case"text":case"internal":return!0;default:return!1}}function GO(e){return e.kind===272||e.kind===276}function r2(e){for(;Lo(e);)e=e.expression;return e}function $O(e,t){if(Lo(e.parent)&&nx(e))return r(e.parent);function r(s){if(s.kind===208){let f=t(s.name);if(f!==void 0)return f}else if(s.kind===209)if(yt(s.argumentExpression)||Ti(s.argumentExpression)){let f=t(s.argumentExpression);if(f!==void 0)return f}else return;if(Lo(s.expression))return r(s.expression);if(yt(s.expression))return t(s.expression)}}function KO(e,t){for(;;){switch(e.kind){case 222:e=e.operand;continue;case 223:e=e.left;continue;case 224:e=e.condition;continue;case 212:e=e.tag;continue;case 210:if(t)return e;case 231:case 209:case 208:case 232:case 356:case 235:e=e.expression;continue}return e}}function XO(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.isAssigned=void 0,this.links=void 0}function YO(e,t){this.flags=t,(Y.isDebugging||rs)&&(this.checker=e)}function QO(e,t){this.flags=t,Y.isDebugging&&(this.checker=e)}function n2(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function ZO(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function eM(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function tM(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(s=>s)}function rM(e){A2.push(e),e(lr)}function gx(e){Object.assign(lr,e),c(A2,t=>t(lr))}function X_(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return e.replace(/{(\d+)}/g,(s,f)=>""+Y.checkDefined(t[+f+r]))}function yx(e){jl=e}function vx(e){!jl&&e&&(jl=e())}function Y_(e){return jl&&jl[e.key]||e.message}function Ro(e,t,r,s){t0(void 0,t,r);let f=Y_(s);return arguments.length>4&&(f=X_(f,arguments,4)),{file:void 0,start:t,length:r,messageText:f,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary,fileName:e}}function nM(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function bx(e,t){let r=t.fileName||"",s=t.text.length;Y.assertEqual(e.fileName,r),Y.assertLessThanOrEqual(e.start,s),Y.assertLessThanOrEqual(e.start+e.length,s);let f={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){f.relatedInformation=[];for(let x of e.relatedInformation)nM(x)&&x.fileName===r?(Y.assertLessThanOrEqual(x.start,s),Y.assertLessThanOrEqual(x.start+x.length,s),f.relatedInformation.push(bx(x,t))):f.relatedInformation.push(x)}return f}function qs(e,t){let r=[];for(let s of e)r.push(bx(s,t));return r}function i2(e,t,r,s){t0(e,t,r);let f=Y_(s);return arguments.length>4&&(f=X_(f,arguments,4)),{file:e,start:t,length:r,messageText:f,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated}}function iM(e,t){let r=Y_(t);return arguments.length>2&&(r=X_(r,arguments,2)),r}function Ol(e){let t=Y_(e);return arguments.length>1&&(t=X_(t,arguments,1)),{file:void 0,start:void 0,length:void 0,messageText:t,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated}}function aM(e,t){return{file:void 0,start:void 0,length:void 0,code:e.code,category:e.category,messageText:e.next?e:e.messageText,relatedInformation:t}}function sM(e,t){let r=Y_(t);return arguments.length>2&&(r=X_(r,arguments,2)),{messageText:r,category:t.category,code:t.code,next:e===void 0||Array.isArray(e)?e:[e]}}function oM(e,t){let r=e;for(;r.next;)r=r.next[0];r.next=[t]}function Tx(e){return e.file?e.file.path:void 0}function a2(e,t){return qf(e,t)||_M(e,t)||0}function qf(e,t){return ri(Tx(e),Tx(t))||Vr(e.start,t.start)||Vr(e.length,t.length)||Vr(e.code,t.code)||Sx(e.messageText,t.messageText)||0}function _M(e,t){return!e.relatedInformation&&!t.relatedInformation?0:e.relatedInformation&&t.relatedInformation?Vr(e.relatedInformation.length,t.relatedInformation.length)||c(e.relatedInformation,(r,s)=>{let f=t.relatedInformation[s];return a2(r,f)})||0:e.relatedInformation?-1:1}function Sx(e,t){if(typeof e=="string"&&typeof t=="string")return ri(e,t);if(typeof e=="string")return-1;if(typeof t=="string")return 1;let r=ri(e.messageText,t.messageText);if(r)return r;if(!e.next&&!t.next)return 0;if(!e.next)return-1;if(!t.next)return 1;let s=Math.min(e.next.length,t.next.length);for(let f=0;ft.next.length?1:0}function s2(e){return e===4||e===2||e===1||e===6?1:0}function xx(e){if(e.transformFlags&2)return _S(e)||pd(e)?e:xr(e,xx)}function cM(e){return e.isDeclarationFile?void 0:xx(e)}function lM(e){return(e.impliedNodeFormat===99||da(e.fileName,[".cjs",".cts",".mjs",".mts"]))&&!e.isDeclarationFile?!0:void 0}function Ex(e){switch(wx(e)){case 3:return f=>{f.externalModuleIndicator=ou(f)||!f.isDeclarationFile||void 0};case 1:return f=>{f.externalModuleIndicator=ou(f)};case 2:let t=[ou];(e.jsx===4||e.jsx===5)&&t.push(cM),t.push(lM);let r=W1(...t);return f=>void(f.externalModuleIndicator=r(f))}}function Uf(e){var t;return(t=e.target)!=null?t:e.module===100&&9||e.module===199&&99||1}function Ei(e){return typeof e.module=="number"?e.module:Uf(e)>=2?5:1}function uM(e){return e>=5&&e<=99}function Ml(e){let t=e.moduleResolution;if(t===void 0)switch(Ei(e)){case 1:t=2;break;case 100:t=3;break;case 199:t=99;break;default:t=1;break}return t}function wx(e){return e.moduleDetection||(Ei(e)===100||Ei(e)===199?3:2)}function pM(e){switch(Ei(e)){case 1:case 2:case 5:case 6:case 7:case 99:case 100:case 199:return!0;default:return!1}}function zf(e){return!!(e.isolatedModules||e.verbatimModuleSyntax)}function fM(e){return e.verbatimModuleSyntax||e.isolatedModules&&e.preserveValueImports}function dM(e){return e.allowUnreachableCode===!1}function mM(e){return e.allowUnusedLabels===!1}function hM(e){return!!(c2(e)&&e.declarationMap)}function o2(e){if(e.esModuleInterop!==void 0)return e.esModuleInterop;switch(Ei(e)){case 100:case 199:return!0}}function gM(e){return e.allowSyntheticDefaultImports!==void 0?e.allowSyntheticDefaultImports:o2(e)||Ei(e)===4||Ml(e)===100}function _2(e){return e>=3&&e<=99||e===100}function yM(e){let t=Ml(e);if(!_2(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}function vM(e){let t=Ml(e);if(!_2(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}function Cx(e){return e.resolveJsonModule!==void 0?e.resolveJsonModule:Ml(e)===100}function c2(e){return!!(e.declaration||e.composite)}function bM(e){return!!(e.preserveConstEnums||zf(e))}function TM(e){return!!(e.incremental||e.composite)}function l2(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function Ax(e){return e.allowJs===void 0?!!e.checkJs:e.allowJs}function SM(e){return e.useDefineForClassFields===void 0?Uf(e)>=9:e.useDefineForClassFields}function xM(e,t){return J_(t,e,semanticDiagnosticsOptionDeclarations)}function EM(e,t){return J_(t,e,affectsEmitOptionDeclarations)}function wM(e,t){return J_(t,e,affectsDeclarationPathOptionDeclarations)}function u2(e,t){return t.strictFlag?l2(e,t.name):e[t.name]}function CM(e){let t=e.jsx;return t===2||t===4||t===5}function AM(e,t){let r=t==null?void 0:t.pragmas.get("jsximportsource"),s=ir(r)?r[r.length-1]:r;return e.jsx===4||e.jsx===5||e.jsxImportSource||s?(s==null?void 0:s.arguments.factory)||e.jsxImportSource||"react":void 0}function PM(e,t){return e?`${e}/${t.jsx===5?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function DM(e){let t=!1;for(let r=0;rf,getSymlinkedDirectories:()=>r,getSymlinkedDirectoriesByRealpath:()=>s,setSymlinkedFile:(A,g)=>(f||(f=new Map)).set(A,g),setSymlinkedDirectory:(A,g)=>{let B=Ui(A,e,t);Hx(B)||(B=wo(B),g!==!1&&!(r!=null&&r.has(B))&&(s||(s=Be())).add(wo(g.realPath),A),(r||(r=new Map)).set(B,g))},setSymlinksFromResolutions(A,g){var B,N;Y.assert(!x),x=!0;for(let X of A)(B=X.resolvedModules)==null||B.forEach(F=>w(this,F.resolvedModule)),(N=X.resolvedTypeReferenceDirectiveNames)==null||N.forEach(F=>w(this,F.resolvedTypeReferenceDirective));g.forEach(X=>w(this,X.resolvedTypeReferenceDirective))},hasProcessedResolutions:()=>x};function w(A,g){if(!g||!g.originalPath||!g.resolvedFileName)return;let{resolvedFileName:B,originalPath:N}=g;A.setSymlinkedFile(Ui(N,e,t),B);let[X,F]=IM(B,N,e,t)||Bt;X&&F&&A.setSymlinkedDirectory(F,{real:X,realPath:Ui(X,e,t)})}}function IM(e,t,r,s){let f=qi(as(e,r)),x=qi(as(t,r)),w=!1;for(;f.length>=2&&x.length>=2&&!Px(f[f.length-2],s)&&!Px(x[x.length-2],s)&&s(f[f.length-1])===s(x[x.length-1]);)f.pop(),x.pop(),w=!0;return w?[xo(f),xo(x)]:void 0}function Px(e,t){return e!==void 0&&(t(e)==="node_modules"||Pn(e,"@"))}function NM(e){return ay(e.charCodeAt(0))?e.slice(1):void 0}function OM(e,t,r){let s=ST(e,t,r);return s===void 0?void 0:NM(s)}function MM(e){return e.replace(Xf,LM)}function LM(e){return"\\"+e}function Wf(e,t,r){let s=p2(e,t,r);return!s||!s.length?void 0:`^(${s.map(w=>`(${w})`).join("|")})${r==="exclude"?"($|/)":"$"}`}function p2(e,t,r){if(!(e===void 0||e.length===0))return ne(e,s=>s&&kx(s,t,r,N2[r]))}function Dx(e){return!/[.*?]/.test(e)}function RM(e,t,r){let s=e&&kx(e,t,r,N2[r]);return s&&`^(${s})${r==="exclude"?"($|/)":"$"}`}function kx(e,t,r,s){let{singleAsteriskRegexFragment:f,doubleAsteriskRegexFragment:x,replaceWildcardCharacter:w}=s,A="",g=!1,B=$p(e,t),N=Zn(B);if(r!=="exclude"&&N==="**")return;B[0]=P_(B[0]),Dx(N)&&B.push("**","*");let X=0;for(let F of B){if(F==="**")A+=x;else if(r==="directories"&&(A+="(",X++),g&&(A+=zn),r!=="exclude"){let $="";F.charCodeAt(0)===42?($+="([^./]"+f+")?",F=F.substr(1)):F.charCodeAt(0)===63&&($+="[^./]",F=F.substr(1)),$+=F.replace(Xf,w),$!==F&&(A+=Yf),A+=$}else A+=F.replace(Xf,w);g=!0}for(;X>0;)A+=")?",X--;return A}function f2(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function Ix(e,t,r,s,f){e=Un(e),f=Un(f);let x=tn(f,e);return{includeFilePatterns:Ze(p2(r,x,"files"),w=>`^${w}$`),includeFilePattern:Wf(r,x,"files"),includeDirectoryPattern:Wf(r,x,"directories"),excludePattern:Wf(t,x,"exclude"),basePaths:JM(e,r,s)}}function Vf(e,t){return new RegExp(e,t?"":"i")}function jM(e,t,r,s,f,x,w,A,g){e=Un(e),x=Un(x);let B=Ix(e,r,s,f,x),N=B.includeFilePatterns&&B.includeFilePatterns.map(Ye=>Vf(Ye,f)),X=B.includeDirectoryPattern&&Vf(B.includeDirectoryPattern,f),F=B.excludePattern&&Vf(B.excludePattern,f),$=N?N.map(()=>[]):[[]],ae=new Map,Te=wp(f);for(let Ye of B.basePaths)Se(Ye,tn(x,Ye),w);return ct($);function Se(Ye,Oe,oe){let Ve=Te(g(Oe));if(ae.has(Ve))return;ae.set(Ve,!0);let{files:pt,directories:Gt}=A(Ye);for(let Nt of Is(pt,ri)){let Xt=tn(Ye,Nt),er=tn(Oe,Nt);if(!(t&&!da(Xt,t))&&!(F&&F.test(er)))if(!N)$[0].push(Xt);else{let Tn=he(N,Hr=>Hr.test(er));Tn!==-1&&$[Tn].push(Xt)}}if(!(oe!==void 0&&(oe--,oe===0)))for(let Nt of Is(Gt,ri)){let Xt=tn(Ye,Nt),er=tn(Oe,Nt);(!X||X.test(er))&&(!F||!F.test(er))&&Se(Xt,er,oe)}}}function JM(e,t,r){let s=[e];if(t){let f=[];for(let x of t){let w=A_(x)?x:Un(tn(e,x));f.push(FM(w))}f.sort(rl(!r));for(let x of f)me(s,w=>!jT(w,x,e,!r))&&s.push(x)}return s}function FM(e){let t=Je(e,h8);return t<0?OT(e)?P_(ma(e)):e:e.substring(0,e.lastIndexOf(zn,t))}function Nx(e,t){return t||Ox(e)||3}function Ox(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".js":case".cjs":case".mjs":return 1;case".jsx":return 2;case".ts":case".cts":case".mts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}function Mx(e,t){let r=e&&Ax(e);if(!t||t.length===0)return r?Jl:Jo;let s=r?Jl:Jo,f=ct(s);return[...s,...qt(t,w=>w.scriptKind===7||r&&BM(w.scriptKind)&&f.indexOf(w.extension)===-1?[w.extension]:void 0)]}function Lx(e,t){return!e||!Cx(e)?t:t===Jl?v8:t===Jo?g8:[...t,[".json"]]}function BM(e){return e===1||e===2}function d2(e){return Ke(L2,t=>ns(e,t))}function m2(e){return Ke(O2,t=>ns(e,t))}function Rx(e){let{imports:t}=e,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:W1(d2,m2);return q(t,s=>{let{text:f}=s;return So(f)?r(f):void 0})||!1}function qM(e,t,r,s){if(e==="js"||t===99)return shouldAllowImportingTsExtension(r)&&f()!==2?3:2;if(e==="minimal")return 0;if(e==="index")return 1;if(!shouldAllowImportingTsExtension(r))return Rx(s)?2:0;return f();function f(){let x=!1,w=s.imports.length?s.imports.map(A=>A.text):y0(s)?UM(s).map(A=>A.arguments[0].text):Bt;for(let A of w)if(So(A)){if(m2(A))return 3;d2(A)&&(x=!0)}return x?2:0}}function UM(e){let t=0,r;for(let s of e.statements){if(t>3)break;WS(s)?r=Ft(r,s.declarationList.declarations.map(f=>f.initializer)):Zl(s)&&El(s.expression,!0)?r=tr(r,s.expression):t++}return r||Bt}function zM(e,t,r){if(!e)return!1;let s=Mx(t,r);for(let f of ct(Lx(t,s)))if(ns(e,f))return!0;return!1}function jx(e){let t=e.match(/\//g);return t?t.length:0}function WM(e,t){return Vr(jx(e),jx(t))}function Ll(e){for(let t of Qf){let r=Jx(e,t);if(r!==void 0)return r}return e}function Jx(e,t){return ns(e,t)?Fx(e,t):void 0}function Fx(e,t){return e.substring(0,e.length-t.length)}function VM(e,t){return RT(e,t,Qf,!1)}function Bx(e){let t=e.indexOf("*");return t===-1?e:e.indexOf("*",t+1)!==-1?void 0:{prefix:e.substr(0,t),suffix:e.substr(t+1)}}function HM(e){return qt(ho(e),t=>Bx(t))}function hs(e){return!(e>=0)}function qx(e){return e===".ts"||e===".tsx"||e===".d.ts"||e===".cts"||e===".mts"||e===".d.mts"||e===".d.cts"||Pn(e,".d.")&&es(e,".ts")}function GM(e){return qx(e)||e===".json"}function $M(e){let t=h2(e);return t!==void 0?t:Y.fail(`File ${e} has unknown extension.`)}function KM(e){return h2(e)!==void 0}function h2(e){return Pe(Qf,t=>ns(e,t))}function XM(e,t){return e.checkJsDirective?e.checkJsDirective.enabled:t.checkJs}function YM(e,t){let r=[];for(let s of e){if(s===t)return t;Ji(s)||r.push(s)}return TT(r,s=>s,t)}function QM(e,t){let r=e.indexOf(t);return Y.assert(r!==-1),e.slice(r)}function Rl(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),s=1;ss&&(s=x)}return{min:r,max:s}}function eL(e){return{pos:Io(e),end:e.end}}function tL(e,t){let r=t.pos-1,s=Math.min(e.text.length,Ar(e.text,t.end)+1);return{pos:r,end:s}}function rL(e,t,r){return t.skipLibCheck&&e.isDeclarationFile||t.skipDefaultLibCheck&&e.hasNoDefaultLib||r.isSourceOfProjectReferenceRedirect(e.fileName)}function g2(e,t){return e===t||typeof e=="object"&&e!==null&&typeof t=="object"&&t!==null&&S_(e,t,g2)}function Hf(e){let t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:let B=e.length-1,N=0;for(;e.charCodeAt(N)===48;)N++;return e.slice(N,B)||"0"}let r=2,s=e.length-1,f=(s-r)*t,x=new Uint16Array((f>>>4)+(f&15?1:0));for(let B=s-1,N=0;B>=r;B--,N+=t){let X=N>>>4,F=e.charCodeAt(B),ae=(F<=57?F-48:10+F-(F<=70?65:97))<<(N&15);x[X]|=ae;let Te=ae>>>16;Te&&(x[X+1]|=Te)}let w="",A=x.length-1,g=!0;for(;g;){let B=0;g=!1;for(let N=A;N>=0;N--){let X=B<<16|x[N],F=X/10|0;x[N]=F,B=X-F*10,F&&!g&&(A=N,g=!0)}w=B+w}return w}function y2(e){let{negative:t,base10Value:r}=e;return(t&&r!=="0"?"-":"")+r}function nL(e){if(zx(e,!1))return Ux(e)}function Ux(e){let t=e.startsWith("-"),r=Hf(`${t?e.slice(1):e}n`);return{negative:t,base10Value:r}}function zx(e,t){if(e==="")return!1;let r=Po(99,!1),s=!0;r.setOnError(()=>s=!1),r.setText(e+"n");let f=r.scan(),x=f===40;x&&(f=r.scan());let w=r.getTokenFlags();return s&&f===9&&r.getTextPos()===e.length+1&&!(w&512)&&(!t||e===y2({negative:x,base10Value:Hf(r.getTokenValue())}))}function iL(e){return!!(e.flags&16777216)||FS(e)||oL(e)||sL(e)||!(g0(e)||aL(e))}function aL(e){return yt(e)&&nu(e.parent)&&e.parent.name===e}function sL(e){for(;e.kind===79||e.kind===208;)e=e.parent;if(e.kind!==164)return!1;if(rn(e.parent,256))return!0;let t=e.parent.parent.kind;return t===261||t===184}function oL(e){if(e.kind!==79)return!1;let t=zi(e.parent,r=>{switch(r.kind){case 294:return!0;case 208:case 230:return!1;default:return"quit"}});return(t==null?void 0:t.token)===117||(t==null?void 0:t.parent.kind)===261}function _L(e){return ac(e)&&yt(e.typeName)}function cL(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fa;if(e.length<2)return!0;let r=e[0];for(let s=1,f=e.length;sFi(e,t))}function dL(e){if(!e.parent)return;switch(e.kind){case 165:let{parent:r}=e;return r.kind===192?void 0:r.typeParameters;case 166:return e.parent.parameters;case 201:return e.parent.templateSpans;case 236:return e.parent.templateSpans;case 167:{let{parent:s}=e;return ME(s)?s.modifiers:void 0}case 294:return e.parent.heritageClauses}let{parent:t}=e;if(zy(e))return fv(e.parent)?void 0:e.parent.tags;switch(t.kind){case 184:case 261:return Ry(e)?t.members:void 0;case 189:case 190:return t.types;case 186:case 206:case 357:case 272:case 276:return t.elements;case 207:case 289:return t.properties;case 210:case 211:return Jy(e)?t.typeArguments:t.expression===e?void 0:t.arguments;case 281:case 285:return oS(e)?t.children:void 0;case 283:case 282:return Jy(e)?t.typeArguments:void 0;case 238:case 292:case 293:case 265:return t.statements;case 266:return t.clauses;case 260:case 228:return Js(e)?t.members:void 0;case 263:return cE(e)?t.members:void 0;case 308:return t.statements}}function mL(e){if(!e.typeParameters){if(Ke(e.parameters,t=>!V0(t)))return!0;if(e.kind!==216){let t=pa(e.parameters);if(!(t&&kl(t)))return!0}}return!1}function hL(e){return e==="Infinity"||e==="-Infinity"||e==="NaN"}function Gx(e){return e.kind===257&&e.parent.kind===295}function gL(e){let t=e.valueDeclaration&&If(e.valueDeclaration);return!!t&&(Vs(t)||Gx(t))}function yL(e){return e.kind===215||e.kind===216}function vL(e){return e.replace(/\$/gm,()=>"\\$")}function $x(e){return(+e).toString()===e}function bL(e,t,r,s){return vy(e,t)?si.createIdentifier(e):!s&&$x(e)&&+e>=0?si.createNumericLiteral(+e):si.createStringLiteral(e,!!r)}function Kx(e){return!!(e.flags&262144&&e.isThisType)}function TL(e){let t=0,r=0,s=0,f=0,x;(B=>{B[B.BeforeNodeModules=0]="BeforeNodeModules",B[B.NodeModules=1]="NodeModules",B[B.Scope=2]="Scope",B[B.PackageContent=3]="PackageContent"})(x||(x={}));let w=0,A=0,g=0;for(;A>=0;)switch(w=A,A=e.indexOf("/",w+1),g){case 0:e.indexOf(nodeModulesPathPart,w)===w&&(t=w,r=A,g=1);break;case 1:case 2:g===1&&e.charAt(w+1)==="@"?g=2:(s=A,g=3);break;case 3:e.indexOf(nodeModulesPathPart,w)===w?g=1:g=3;break}return f=w,g>1?{topLevelNodeModulesIndex:t,topLevelPackageNameIndex:r,packageRootIndex:s,fileNameIndex:f}:void 0}function SL(e){var t;return e.kind===344?(t=e.typeExpression)==null?void 0:t.type:e.type}function Xx(e){switch(e.kind){case 165:case 260:case 261:case 262:case 263:case 349:case 341:case 343:return!0;case 270:return e.isTypeOnly;case 273:case 278:return e.parent.parent.isTypeOnly;default:return!1}}function xL(e){return iv(e)||zo(e)||Wo(e)||_c(e)||eu(e)||Xx(e)||Ea(e)&&!Xy(e)&&!vf(e)}function Yx(e){if(!Dy(e))return!1;let{isBracketed:t,typeExpression:r}=e;return t||!!r&&r.type.kind===319}function EL(e,t){if(e.length===0)return!1;let r=e.charCodeAt(0);return r===35?e.length>1&&Wn(e.charCodeAt(1),t):Wn(r,t)}function Qx(e){var t;return((t=getSnippetElement(e))==null?void 0:t.kind)===0}function Zx(e){return Pr(e)&&(e.type&&e.type.kind===319||of(e).some(t=>{let{isBracketed:r,typeExpression:s}=t;return r||!!s&&s.type.kind===319}))}function wL(e){switch(e.kind){case 169:case 168:return!!e.questionToken;case 166:return!!e.questionToken||Zx(e);case 351:case 344:return Yx(e);default:return!1}}function CL(e){let t=e.kind;return(t===208||t===209)&&Uo(e.expression)}function AL(e){return Pr(e)&&qo(e)&&ya(e)&&!!wy(e)}function PL(e){return Y.checkDefined(e8(e))}function e8(e){let t=wy(e);return t&&t.typeExpression&&t.typeExpression.type}var t8,Kf,r8,n8,Z_,v2,b2,i8,T2,a8,S2,x2,E2,w2,s8,o8,_8,c8,l8,C2,u8,p8,f8,jo,xa,d8,m8,lr,A2,jl,Xf,h8,P2,Yf,D2,k2,I2,N2,Jo,O2,g8,y8,M2,L2,Jl,v8,R2,b8,j2,Qf,T8,DL=D({"src/compiler/utilities.ts"(){"use strict";nn(),t8=[],Kf="tslib",r8=160,n8=1e6,Z_=iD(),v2=(e=>(e[e.None=0]="None",e[e.NeverAsciiEscape=1]="NeverAsciiEscape",e[e.JsxAttributeEscape=2]="JsxAttributeEscape",e[e.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",e[e.AllowNumericSeparator=8]="AllowNumericSeparator",e))(v2||{}),b2=/^(\/\/\/\s*/,i8=/^(\/\/\/\s*/,T2=/^(\/\/\/\s*/,a8=/^(\/\/\/\s*/,S2=(e=>(e[e.None=0]="None",e[e.Definite=1]="Definite",e[e.Compound=2]="Compound",e))(S2||{}),x2=(e=>(e[e.Normal=0]="Normal",e[e.Generator=1]="Generator",e[e.Async=2]="Async",e[e.Invalid=4]="Invalid",e[e.AsyncGenerator=3]="AsyncGenerator",e))(x2||{}),E2=(e=>(e[e.Left=0]="Left",e[e.Right=1]="Right",e))(E2||{}),w2=(e=>(e[e.Comma=0]="Comma",e[e.Spread=1]="Spread",e[e.Yield=2]="Yield",e[e.Assignment=3]="Assignment",e[e.Conditional=4]="Conditional",e[e.Coalesce=4]="Coalesce",e[e.LogicalOR=5]="LogicalOR",e[e.LogicalAND=6]="LogicalAND",e[e.BitwiseOR=7]="BitwiseOR",e[e.BitwiseXOR=8]="BitwiseXOR",e[e.BitwiseAND=9]="BitwiseAND",e[e.Equality=10]="Equality",e[e.Relational=11]="Relational",e[e.Shift=12]="Shift",e[e.Additive=13]="Additive",e[e.Multiplicative=14]="Multiplicative",e[e.Exponentiation=15]="Exponentiation",e[e.Unary=16]="Unary",e[e.Update=17]="Update",e[e.LeftHandSide=18]="LeftHandSide",e[e.Member=19]="Member",e[e.Primary=20]="Primary",e[e.Highest=20]="Highest",e[e.Lowest=0]="Lowest",e[e.Invalid=-1]="Invalid",e))(w2||{}),s8=/\$\{/g,o8=/[\\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,_8=/[\\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,c8=/\r\n|[\\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/g,l8=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"})),C2=/[^\u0000-\u007F]/g,u8=/[\"\u0000-\u001f\u2028\u2029\u0085]/g,p8=/[\'\u0000-\u001f\u2028\u2029\u0085]/g,f8=new Map(Object.entries({'"':""","'":"'"})),jo=[""," "],xa="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",d8=`\r +`,m8=` +`,lr={getNodeConstructor:()=>n2,getTokenConstructor:()=>ZO,getIdentifierConstructor:()=>eM,getPrivateIdentifierConstructor:()=>n2,getSourceFileConstructor:()=>n2,getSymbolConstructor:()=>XO,getTypeConstructor:()=>YO,getSignatureConstructor:()=>QO,getSourceMapSourceConstructor:()=>tM},A2=[],Xf=/[^\w\s\/]/g,h8=[42,63],P2=["node_modules","bower_components","jspm_packages"],Yf=`(?!(${P2.join("|")})(/|$))`,D2={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${Yf}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>f2(e,D2.singleAsteriskRegexFragment)},k2={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${Yf}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>f2(e,k2.singleAsteriskRegexFragment)},I2={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:e=>f2(e,I2.singleAsteriskRegexFragment)},N2={files:D2,directories:k2,exclude:I2},Jo=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],O2=ct(Jo),g8=[...Jo,[".json"]],y8=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx",".cts",".mts"],M2=[[".js",".jsx"],[".mjs"],[".cjs"]],L2=ct(M2),Jl=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],v8=[...Jl,[".json"]],R2=[".d.ts",".d.cts",".d.mts"],b8=[".ts",".cts",".mts",".tsx"],j2=(e=>(e[e.Minimal=0]="Minimal",e[e.Index=1]="Index",e[e.JsExtension=2]="JsExtension",e[e.TsExtension=3]="TsExtension",e))(j2||{}),Qf=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"],T8={files:Bt,directories:Bt}}});function S8(){let e,t,r,s,f;return{createBaseSourceFileNode:x,createBaseIdentifierNode:w,createBasePrivateIdentifierNode:A,createBaseTokenNode:g,createBaseNode:B};function x(N){return new(f||(f=lr.getSourceFileConstructor()))(N,-1,-1)}function w(N){return new(r||(r=lr.getIdentifierConstructor()))(N,-1,-1)}function A(N){return new(s||(s=lr.getPrivateIdentifierConstructor()))(N,-1,-1)}function g(N){return new(t||(t=lr.getTokenConstructor()))(N,-1,-1)}function B(N){return new(e||(e=lr.getNodeConstructor()))(N,-1,-1)}}var kL=D({"src/compiler/factory/baseNodeFactory.ts"(){"use strict";nn()}}),J2,IL=D({"src/compiler/factory/parenthesizerRules.ts"(){"use strict";nn(),J2={getParenthesizeLeftSideOfBinaryForOperator:e=>rr,getParenthesizeRightSideOfBinaryForOperator:e=>rr,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,r)=>r,parenthesizeExpressionOfComputedPropertyName:rr,parenthesizeConditionOfConditionalExpression:rr,parenthesizeBranchOfConditionalExpression:rr,parenthesizeExpressionOfExportDefault:rr,parenthesizeExpressionOfNew:e=>ti(e,Do),parenthesizeLeftSideOfAccess:e=>ti(e,Do),parenthesizeOperandOfPostfixUnary:e=>ti(e,Do),parenthesizeOperandOfPrefixUnary:e=>ti(e,tS),parenthesizeExpressionsOfCommaDelimitedList:e=>ti(e,_s),parenthesizeExpressionForDisallowedComma:rr,parenthesizeExpressionOfExpressionStatement:rr,parenthesizeConciseBodyOfArrowFunction:rr,parenthesizeCheckTypeOfConditionalType:rr,parenthesizeExtendsTypeOfConditionalType:rr,parenthesizeConstituentTypesOfUnionType:e=>ti(e,_s),parenthesizeConstituentTypeOfUnionType:rr,parenthesizeConstituentTypesOfIntersectionType:e=>ti(e,_s),parenthesizeConstituentTypeOfIntersectionType:rr,parenthesizeOperandOfTypeOperator:rr,parenthesizeOperandOfReadonlyTypeOperator:rr,parenthesizeNonArrayTypeOfPostfixType:rr,parenthesizeElementTypesOfTupleType:e=>ti(e,_s),parenthesizeElementTypeOfTupleType:rr,parenthesizeTypeOfOptionalType:rr,parenthesizeTypeArguments:e=>e&&ti(e,_s),parenthesizeLeadingTypeArgument:rr}}}),NL=()=>{},x8=()=>new Proxy({},{get:()=>()=>{}});function OL(e){B2.push(e)}function Zf(e,t){let r=e&8?ML:LL,s=tl(()=>e&1?J2:createParenthesizerRules(Ye)),f=tl(()=>e&2?nullNodeConverters:x8(Ye)),x=An(n=>(o,l)=>xu(o,n,l)),w=An(n=>o=>Tu(n,o)),A=An(n=>o=>Su(o,n)),g=An(n=>()=>db(n)),B=An(n=>o=>Ac(n,o)),N=An(n=>(o,l)=>mb(n,o,l)),X=An(n=>(o,l)=>Km(n,o,l)),F=An(n=>(o,l)=>Xm(n,o,l)),$=An(n=>(o,l)=>ph(n,o,l)),ae=An(n=>(o,l,p)=>Cb(n,o,l,p)),Te=An(n=>(o,l,p)=>fh(n,o,l,p)),Se=An(n=>(o,l,p,k)=>Ab(n,o,l,p,k)),Ye={get parenthesizer(){return s()},get converters(){return f()},baseFactory:t,flags:e,createNodeArray:Oe,createNumericLiteral:Gt,createBigIntLiteral:Nt,createStringLiteral:er,createStringLiteralFromNode:Tn,createRegularExpressionLiteral:Hr,createLiteralLikeNode:Gi,createIdentifier:Ut,createTempVariable:kn,createLoopVariable:an,createUniqueName:mr,getGeneratedNameForNode:$i,createPrivateIdentifier:Ur,createUniquePrivateName:_r,getGeneratedPrivateNameForNode:Sn,createToken:pr,createSuper:Zt,createThis:Or,createNull:Nn,createTrue:ar,createFalse:oi,createModifier:cr,createModifiersFromModifierFlags:$r,createQualifiedName:hr,updateQualifiedName:On,createComputedPropertyName:nr,updateComputedPropertyName:br,createTypeParameterDeclaration:Kr,updateTypeParameterDeclaration:wa,createParameterDeclaration:$n,updateParameterDeclaration:Ki,createDecorator:Mn,updateDecorator:_i,createPropertySignature:Ca,updatePropertySignature:St,createPropertyDeclaration:He,updatePropertyDeclaration:_t,createMethodSignature:ft,updateMethodSignature:Kt,createMethodDeclaration:zt,updateMethodDeclaration:xe,createConstructorDeclaration:Mt,updateConstructorDeclaration:It,createGetAccessorDeclaration:gr,updateGetAccessorDeclaration:Ln,createSetAccessorDeclaration:ci,updateSetAccessorDeclaration:Xi,createCallSignature:vs,updateCallSignature:$s,createConstructSignature:li,updateConstructSignature:Yi,createIndexSignature:Qi,updateIndexSignature:bs,createClassStaticBlockDeclaration:Re,updateClassStaticBlockDeclaration:ot,createTemplateLiteralTypeSpan:Ai,updateTemplateLiteralTypeSpan:xn,createKeywordTypeNode:Dt,createTypePredicateNode:Pi,updateTypePredicateNode:Z,createTypeReferenceNode:ie,updateTypeReferenceNode:U,createFunctionTypeNode:L,updateFunctionTypeNode:fe,createConstructorTypeNode:it,updateConstructorTypeNode:Ge,createTypeQueryNode:Yt,updateTypeQueryNode:$t,createTypeLiteralNode:Wt,updateTypeLiteralNode:Xr,createArrayTypeNode:Dr,updateArrayTypeNode:Lr,createTupleTypeNode:yr,updateTupleTypeNode:Rn,createNamedTupleMember:wt,updateNamedTupleMember:Tr,createOptionalTypeNode:Tt,updateOptionalTypeNode:kt,createRestTypeNode:de,updateRestTypeNode:jn,createUnionTypeNode:e_,updateUnionTypeNode:mc,createIntersectionTypeNode:Da,updateIntersectionTypeNode:Ts,createConditionalTypeNode:Ot,updateConditionalTypeNode:dr,createInferTypeNode:Dd,updateInferTypeNode:ea,createImportTypeNode:Id,updateImportTypeNode:ka,createParenthesizedType:t_,updateParenthesizedType:En,createThisTypeNode:Er,createTypeOperatorNode:Q,updateTypeOperatorNode:Jn,createIndexedAccessTypeNode:Ia,updateIndexedAccessTypeNode:Ss,createMappedTypeNode:hc,updateMappedTypeNode:wr,createLiteralTypeNode:zr,updateLiteralTypeNode:xs,createTemplateLiteralType:kd,updateTemplateLiteralType:sn,createObjectBindingPattern:Nd,updateObjectBindingPattern:Rv,createArrayBindingPattern:Es,updateArrayBindingPattern:jv,createBindingElement:gc,updateBindingElement:Ks,createArrayLiteralExpression:uu,updateArrayLiteralExpression:Od,createObjectLiteralExpression:r_,updateObjectLiteralExpression:Jv,createPropertyAccessExpression:e&4?(n,o)=>setEmitFlags(ta(n,o),262144):ta,updatePropertyAccessExpression:Ld,createPropertyAccessChain:e&4?(n,o,l)=>setEmitFlags(Xs(n,o,l),262144):Xs,updatePropertyAccessChain:Rd,createElementAccessExpression:pu,updateElementAccessExpression:Fv,createElementAccessChain:fu,updateElementAccessChain:jd,createCallExpression:Na,updateCallExpression:Bv,createCallChain:du,updateCallChain:Kn,createNewExpression:vc,updateNewExpression:mu,createTaggedTemplateExpression:hu,updateTaggedTemplateExpression:qv,createTypeAssertion:Fd,updateTypeAssertion:Bd,createParenthesizedExpression:gu,updateParenthesizedExpression:qd,createFunctionExpression:yu,updateFunctionExpression:Ud,createArrowFunction:vu,updateArrowFunction:zd,createDeleteExpression:bu,updateDeleteExpression:Uv,createTypeOfExpression:mn,updateTypeOfExpression:zv,createVoidExpression:ui,updateVoidExpression:Wv,createAwaitExpression:Oa,updateAwaitExpression:Ys,createPrefixUnaryExpression:Tu,updatePrefixUnaryExpression:bc,createPostfixUnaryExpression:Su,updatePostfixUnaryExpression:Wd,createBinaryExpression:xu,updateBinaryExpression:Vv,createConditionalExpression:Eu,updateConditionalExpression:Hv,createTemplateExpression:Di,updateTemplateExpression:Hd,createTemplateHead:Sc,createTemplateMiddle:Cu,createTemplateTail:Gv,createNoSubstitutionTemplateLiteral:$d,createTemplateLiteralLikeNode:Qs,createYieldExpression:Kd,updateYieldExpression:$v,createSpreadElement:Xd,updateSpreadElement:Kv,createClassExpression:Yd,updateClassExpression:xc,createOmittedExpression:Xv,createExpressionWithTypeArguments:Qd,updateExpressionWithTypeArguments:Xn,createAsExpression:Ec,updateAsExpression:Zd,createNonNullExpression:em,updateNonNullExpression:Au,createSatisfiesExpression:tm,updateSatisfiesExpression:Pu,createNonNullChain:pi,updateNonNullChain:rm,createMetaProperty:wc,updateMetaProperty:ra,createTemplateSpan:i_,updateTemplateSpan:nm,createSemicolonClassElement:im,createBlock:Zs,updateBlock:am,createVariableStatement:sm,updateVariableStatement:om,createEmptyStatement:Du,createExpressionStatement:a_,updateExpressionStatement:Yv,createIfStatement:ku,updateIfStatement:Qv,createDoStatement:Iu,updateDoStatement:Zv,createWhileStatement:_m,updateWhileStatement:eb,createForStatement:Nu,updateForStatement:cm,createForInStatement:lm,updateForInStatement:tb,createForOfStatement:um,updateForOfStatement:rb,createContinueStatement:pm,updateContinueStatement:fm,createBreakStatement:Ou,updateBreakStatement:dm,createReturnStatement:mm,updateReturnStatement:nb,createWithStatement:Mu,updateWithStatement:hm,createSwitchStatement:Lu,updateSwitchStatement:eo,createLabeledStatement:gm,updateLabeledStatement:ym,createThrowStatement:vm,updateThrowStatement:ib,createTryStatement:bm,updateTryStatement:ab,createDebuggerStatement:Tm,createVariableDeclaration:Cc,updateVariableDeclaration:Sm,createVariableDeclarationList:Ru,updateVariableDeclarationList:sb,createFunctionDeclaration:xm,updateFunctionDeclaration:ju,createClassDeclaration:Em,updateClassDeclaration:Ju,createInterfaceDeclaration:wm,updateInterfaceDeclaration:Cm,createTypeAliasDeclaration:sr,updateTypeAliasDeclaration:Ma,createEnumDeclaration:Fu,updateEnumDeclaration:La,createModuleDeclaration:Am,updateModuleDeclaration:Sr,createModuleBlock:Ra,updateModuleBlock:Yr,createCaseBlock:Pm,updateCaseBlock:_b,createNamespaceExportDeclaration:Dm,updateNamespaceExportDeclaration:km,createImportEqualsDeclaration:Im,updateImportEqualsDeclaration:Nm,createImportDeclaration:Om,updateImportDeclaration:Mm,createImportClause:Lm,updateImportClause:Rm,createAssertClause:Bu,updateAssertClause:lb,createAssertEntry:s_,updateAssertEntry:jm,createImportTypeAssertionContainer:qu,updateImportTypeAssertionContainer:Jm,createNamespaceImport:Fm,updateNamespaceImport:Uu,createNamespaceExport:Bm,updateNamespaceExport:qm,createNamedImports:Um,updateNamedImports:ub,createImportSpecifier:zm,updateImportSpecifier:pb,createExportAssignment:zu,updateExportAssignment:Wu,createExportDeclaration:na,updateExportDeclaration:Wm,createNamedExports:to,updateNamedExports:Hm,createExportSpecifier:Vu,updateExportSpecifier:o_,createMissingDeclaration:fb,createExternalModuleReference:Gm,updateExternalModuleReference:$m,get createJSDocAllType(){return g(315)},get createJSDocUnknownType(){return g(316)},get createJSDocNonNullableType(){return X(318)},get updateJSDocNonNullableType(){return F(318)},get createJSDocNullableType(){return X(317)},get updateJSDocNullableType(){return F(317)},get createJSDocOptionalType(){return B(319)},get updateJSDocOptionalType(){return N(319)},get createJSDocVariadicType(){return B(321)},get updateJSDocVariadicType(){return N(321)},get createJSDocNamepathType(){return B(322)},get updateJSDocNamepathType(){return N(322)},createJSDocFunctionType:Ym,updateJSDocFunctionType:hb,createJSDocTypeLiteral:Qm,updateJSDocTypeLiteral:gb,createJSDocTypeExpression:Zm,updateJSDocTypeExpression:yb,createJSDocSignature:eh,updateJSDocSignature:Hu,createJSDocTemplateTag:__,updateJSDocTemplateTag:Gu,createJSDocTypedefTag:$u,updateJSDocTypedefTag:th,createJSDocParameterTag:Pc,updateJSDocParameterTag:vb,createJSDocPropertyTag:Ku,updateJSDocPropertyTag:bb,createJSDocCallbackTag:rh,updateJSDocCallbackTag:nh,createJSDocOverloadTag:ih,updateJSDocOverloadTag:ah,createJSDocAugmentsTag:sh,updateJSDocAugmentsTag:Xu,createJSDocImplementsTag:Yu,updateJSDocImplementsTag:wb,createJSDocSeeTag:ro,updateJSDocSeeTag:Tb,createJSDocNameReference:ws,updateJSDocNameReference:Dc,createJSDocMemberName:oh,updateJSDocMemberName:Sb,createJSDocLink:_h,updateJSDocLink:xb,createJSDocLinkCode:ch,updateJSDocLinkCode:lh,createJSDocLinkPlain:uh,updateJSDocLinkPlain:Eb,get createJSDocTypeTag(){return Te(347)},get updateJSDocTypeTag(){return Se(347)},get createJSDocReturnTag(){return Te(345)},get updateJSDocReturnTag(){return Se(345)},get createJSDocThisTag(){return Te(346)},get updateJSDocThisTag(){return Se(346)},get createJSDocAuthorTag(){return $(333)},get updateJSDocAuthorTag(){return ae(333)},get createJSDocClassTag(){return $(335)},get updateJSDocClassTag(){return ae(335)},get createJSDocPublicTag(){return $(336)},get updateJSDocPublicTag(){return ae(336)},get createJSDocPrivateTag(){return $(337)},get updateJSDocPrivateTag(){return ae(337)},get createJSDocProtectedTag(){return $(338)},get updateJSDocProtectedTag(){return ae(338)},get createJSDocReadonlyTag(){return $(339)},get updateJSDocReadonlyTag(){return ae(339)},get createJSDocOverrideTag(){return $(340)},get updateJSDocOverrideTag(){return ae(340)},get createJSDocDeprecatedTag(){return $(334)},get updateJSDocDeprecatedTag(){return ae(334)},get createJSDocThrowsTag(){return Te(352)},get updateJSDocThrowsTag(){return Se(352)},get createJSDocSatisfiesTag(){return Te(353)},get updateJSDocSatisfiesTag(){return Se(353)},createJSDocEnumTag:mh,updateJSDocEnumTag:Db,createJSDocUnknownTag:dh,updateJSDocUnknownTag:Pb,createJSDocText:hh,updateJSDocText:Qu,createJSDocComment:gh,updateJSDocComment:yh,createJsxElement:Zu,updateJsxElement:kb,createJsxSelfClosingElement:c_,updateJsxSelfClosingElement:vh,createJsxOpeningElement:bh,updateJsxOpeningElement:Ib,createJsxClosingElement:on,updateJsxClosingElement:Th,createJsxFragment:ep,createJsxText:l_,updateJsxText:Ob,createJsxOpeningFragment:kc,createJsxJsxClosingFragment:Mb,updateJsxFragment:Nb,createJsxAttribute:Sh,updateJsxAttribute:Lb,createJsxAttributes:xh,updateJsxAttributes:tp,createJsxSpreadAttribute:no,updateJsxSpreadAttribute:Rb,createJsxExpression:Ic,updateJsxExpression:Eh,createCaseClause:wh,updateCaseClause:rp,createDefaultClause:np,updateDefaultClause:jb,createHeritageClause:Ch,updateHeritageClause:Ah,createCatchClause:ip,updateCatchClause:Ph,createPropertyAssignment:Fa,updatePropertyAssignment:Jb,createShorthandPropertyAssignment:Dh,updateShorthandPropertyAssignment:Bb,createSpreadAssignment:ap,updateSpreadAssignment:ki,createEnumMember:sp,updateEnumMember:qb,createSourceFile:Ub,updateSourceFile:Mh,createRedirectedSourceFile:Ih,createBundle:Lh,updateBundle:Wb,createUnparsedSource:Nc,createUnparsedPrologue:Vb,createUnparsedPrepend:Hb,createUnparsedTextLike:Gb,createUnparsedSyntheticReference:$b,createInputFiles:Kb,createSyntheticExpression:Rh,createSyntaxList:jh,createNotEmittedStatement:Jh,createPartiallyEmittedExpression:Fh,updatePartiallyEmittedExpression:Bh,createCommaListExpression:Mc,updateCommaListExpression:Xb,createEndOfDeclarationMarker:Yb,createMergeDeclarationMarker:Qb,createSyntheticReferenceExpression:Uh,updateSyntheticReferenceExpression:_p,cloneNode:cp,get createComma(){return x(27)},get createAssignment(){return x(63)},get createLogicalOr(){return x(56)},get createLogicalAnd(){return x(55)},get createBitwiseOr(){return x(51)},get createBitwiseXor(){return x(52)},get createBitwiseAnd(){return x(50)},get createStrictEquality(){return x(36)},get createStrictInequality(){return x(37)},get createEquality(){return x(34)},get createInequality(){return x(35)},get createLessThan(){return x(29)},get createLessThanEquals(){return x(32)},get createGreaterThan(){return x(31)},get createGreaterThanEquals(){return x(33)},get createLeftShift(){return x(47)},get createRightShift(){return x(48)},get createUnsignedRightShift(){return x(49)},get createAdd(){return x(39)},get createSubtract(){return x(40)},get createMultiply(){return x(41)},get createDivide(){return x(43)},get createModulo(){return x(44)},get createExponent(){return x(42)},get createPrefixPlus(){return w(39)},get createPrefixMinus(){return w(40)},get createPrefixIncrement(){return w(45)},get createPrefixDecrement(){return w(46)},get createBitwiseNot(){return w(54)},get createLogicalNot(){return w(53)},get createPostfixIncrement(){return A(45)},get createPostfixDecrement(){return A(46)},createImmediatelyInvokedFunctionExpression:n6,createImmediatelyInvokedArrowFunction:Lc,createVoidZero:Rc,createExportDefault:zh,createExternalModuleExport:i6,createTypeCheck:a6,createMethodCall:Ba,createGlobalMethodCall:io,createFunctionBindCall:s6,createFunctionCallCall:o6,createFunctionApplyCall:_6,createArraySliceCall:Wh,createArrayConcatCall:Vh,createObjectDefinePropertyCall:u,createObjectGetOwnPropertyDescriptorCall:b,createReflectGetCall:O,createReflectSetCall:j,createPropertyDescriptor:re,createCallBinding:Jt,createAssignmentTargetWrapper:Lt,inlineExpressions:At,getInternalName:Fn,getLocalName:di,getExportName:Ii,getDeclarationName:_n,getNamespaceMemberName:qa,getExternalModuleOrNamespaceExportName:Hh,restoreOuterExpressions:We,restoreEnclosingLabel:$e,createUseStrictPrologue:wn,copyPrologue:lp,copyStandardPrologue:Ua,copyCustomPrologue:up,ensureUseStrict:Qr,liftToBlock:jc,mergeLexicalEnvironment:$h,updateModifiers:Kh};return c(B2,n=>n(Ye)),Ye;function Oe(n,o){if(n===void 0||n===Bt)n=[];else if(_s(n)){if(o===void 0||n.hasTrailingComma===o)return n.transformFlags===void 0&&E8(n),Y.attachNodeArrayDebugInfo(n),n;let k=n.slice();return k.pos=n.pos,k.end=n.end,k.hasTrailingComma=o,k.transformFlags=n.transformFlags,Y.attachNodeArrayDebugInfo(k),k}let l=n.length,p=l>=1&&l<=4?n.slice():n;return p.pos=-1,p.end=-1,p.hasTrailingComma=!!o,p.transformFlags=0,E8(p),Y.attachNodeArrayDebugInfo(p),p}function oe(n){return t.createBaseNode(n)}function Ve(n){let o=oe(n);return o.symbol=void 0,o.localSymbol=void 0,o}function pt(n,o){return n!==o&&(n.typeArguments=o.typeArguments),r(n,o)}function Gt(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=Ve(8);return l.text=typeof n=="number"?n+"":n,l.numericLiteralFlags=o,o&384&&(l.transformFlags|=1024),l}function Nt(n){let o=In(9);return o.text=typeof n=="string"?n:y2(n)+"n",o.transformFlags|=4,o}function Xt(n,o){let l=Ve(10);return l.text=n,l.singleQuote=o,l}function er(n,o,l){let p=Xt(n,o);return p.hasExtendedUnicodeEscape=l,l&&(p.transformFlags|=1024),p}function Tn(n){let o=Xt(kf(n),void 0);return o.textSourceNode=n,o}function Hr(n){let o=In(13);return o.text=n,o}function Gi(n,o){switch(n){case 8:return Gt(o,0);case 9:return Nt(o);case 10:return er(o,void 0);case 11:return l_(o,!1);case 12:return l_(o,!0);case 13:return Hr(o);case 14:return Qs(n,o,void 0,0)}}function pn(n){let o=t.createBaseIdentifierNode(79);return o.escapedText=n,o.jsDoc=void 0,o.flowNode=void 0,o.symbol=void 0,o}function fn(n,o,l,p){let k=pn(vi(n));return setIdentifierAutoGenerate(k,{flags:o,id:Bl,prefix:l,suffix:p}),Bl++,k}function Ut(n,o,l){o===void 0&&n&&(o=_l(n)),o===79&&(o=void 0);let p=pn(vi(n));return l&&(p.flags|=128),p.escapedText==="await"&&(p.transformFlags|=67108864),p.flags&128&&(p.transformFlags|=1024),p}function kn(n,o,l,p){let k=1;o&&(k|=8);let V=fn("",k,l,p);return n&&n(V),V}function an(n){let o=2;return n&&(o|=8),fn("",o,void 0,void 0)}function mr(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;return Y.assert(!(o&7),"Argument out of range: flags"),Y.assert((o&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),fn(n,3|o,l,p)}function $i(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;Y.assert(!(o&7),"Argument out of range: flags");let k=n?js(n)?bd(!1,l,n,p,qr):`generated@${getNodeId(n)}`:"";(l||p)&&(o|=16);let V=fn(k,4|o,l,p);return V.original=n,V}function dn(n){let o=t.createBasePrivateIdentifierNode(80);return o.escapedText=n,o.transformFlags|=16777216,o}function Ur(n){return Pn(n,"#")||Y.fail("First character of private identifier must be #: "+n),dn(vi(n))}function Gr(n,o,l,p){let k=dn(vi(n));return setIdentifierAutoGenerate(k,{flags:o,id:Bl,prefix:l,suffix:p}),Bl++,k}function _r(n,o,l){n&&!Pn(n,"#")&&Y.fail("First character of private identifier must be #: "+n);let p=8|(n?3:1);return Gr(n!=null?n:"",p,o,l)}function Sn(n,o,l){let p=js(n)?bd(!0,o,n,l,qr):`#generated@${getNodeId(n)}`,V=Gr(p,4|(o||l?16:0),o,l);return V.original=n,V}function In(n){return t.createBaseTokenNode(n)}function pr(n){Y.assert(n>=0&&n<=162,"Invalid token"),Y.assert(n<=14||n>=17,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),Y.assert(n<=8||n>=14,"Invalid token. Use 'createLiteralLikeNode' to create literals."),Y.assert(n!==79,"Invalid token. Use 'createIdentifier' to create identifiers");let o=In(n),l=0;switch(n){case 132:l=384;break;case 123:case 121:case 122:case 146:case 126:case 136:case 85:case 131:case 148:case 160:case 144:case 149:case 101:case 145:case 161:case 152:case 134:case 153:case 114:case 157:case 155:l=1;break;case 106:l=134218752,o.flowNode=void 0;break;case 124:l=1024;break;case 127:l=16777216;break;case 108:l=16384,o.flowNode=void 0;break}return l&&(o.transformFlags|=l),o}function Zt(){return pr(106)}function Or(){return pr(108)}function Nn(){return pr(104)}function ar(){return pr(110)}function oi(){return pr(95)}function cr(n){return pr(n)}function $r(n){let o=[];return n&1&&o.push(cr(93)),n&2&&o.push(cr(136)),n&1024&&o.push(cr(88)),n&2048&&o.push(cr(85)),n&4&&o.push(cr(123)),n&8&&o.push(cr(121)),n&16&&o.push(cr(122)),n&256&&o.push(cr(126)),n&32&&o.push(cr(124)),n&16384&&o.push(cr(161)),n&64&&o.push(cr(146)),n&128&&o.push(cr(127)),n&512&&o.push(cr(132)),n&32768&&o.push(cr(101)),n&65536&&o.push(cr(145)),o.length?o:void 0}function hr(n,o){let l=oe(163);return l.left=n,l.right=Qt(o),l.transformFlags|=ye(l.left)|ec(l.right),l.flowNode=void 0,l}function On(n,o,l){return n.left!==o||n.right!==l?r(hr(o,l),n):n}function nr(n){let o=oe(164);return o.expression=s().parenthesizeExpressionOfComputedPropertyName(n),o.transformFlags|=ye(o.expression)|1024|131072,o}function br(n,o){return n.expression!==o?r(nr(o),n):n}function Kr(n,o,l,p){let k=Ve(165);return k.modifiers=xt(n),k.name=Qt(o),k.constraint=l,k.default=p,k.transformFlags=1,k.expression=void 0,k.jsDoc=void 0,k}function wa(n,o,l,p,k){return n.modifiers!==o||n.name!==l||n.constraint!==p||n.default!==k?r(Kr(o,l,p,k),n):n}function $n(n,o,l,p,k,V){var we,et;let mt=Ve(166);return mt.modifiers=xt(n),mt.dotDotDotToken=o,mt.name=Qt(l),mt.questionToken=p,mt.type=k,mt.initializer=Wa(V),Mf(mt.name)?mt.transformFlags=1:mt.transformFlags=gt(mt.modifiers)|ye(mt.dotDotDotToken)|ai(mt.name)|ye(mt.questionToken)|ye(mt.initializer)|(((we=mt.questionToken)!=null?we:mt.type)?1:0)|(((et=mt.dotDotDotToken)!=null?et:mt.initializer)?1024:0)|(Vn(mt.modifiers)&16476?8192:0),mt.jsDoc=void 0,mt}function Ki(n,o,l,p,k,V,we){return n.modifiers!==o||n.dotDotDotToken!==l||n.name!==p||n.questionToken!==k||n.type!==V||n.initializer!==we?r($n(o,l,p,k,V,we),n):n}function Mn(n){let o=oe(167);return o.expression=s().parenthesizeLeftSideOfAccess(n,!1),o.transformFlags|=ye(o.expression)|1|8192|33554432,o}function _i(n,o){return n.expression!==o?r(Mn(o),n):n}function Ca(n,o,l,p){let k=Ve(168);return k.modifiers=xt(n),k.name=Qt(o),k.type=p,k.questionToken=l,k.transformFlags=1,k.initializer=void 0,k.jsDoc=void 0,k}function St(n,o,l,p,k){return n.modifiers!==o||n.name!==l||n.questionToken!==p||n.type!==k?ue(Ca(o,l,p,k),n):n}function ue(n,o){return n!==o&&(n.initializer=o.initializer),r(n,o)}function He(n,o,l,p,k){let V=Ve(169);V.modifiers=xt(n),V.name=Qt(o),V.questionToken=l&&ql(l)?l:void 0,V.exclamationToken=l&&rd(l)?l:void 0,V.type=p,V.initializer=Wa(k);let we=V.flags&16777216||Vn(V.modifiers)&2;return V.transformFlags=gt(V.modifiers)|ai(V.name)|ye(V.initializer)|(we||V.questionToken||V.exclamationToken||V.type?1:0)|(Ws(V.name)||Vn(V.modifiers)&32&&V.initializer?8192:0)|16777216,V.jsDoc=void 0,V}function _t(n,o,l,p,k,V){return n.modifiers!==o||n.name!==l||n.questionToken!==(p!==void 0&&ql(p)?p:void 0)||n.exclamationToken!==(p!==void 0&&rd(p)?p:void 0)||n.type!==k||n.initializer!==V?r(He(o,l,p,k,V),n):n}function ft(n,o,l,p,k,V){let we=Ve(170);return we.modifiers=xt(n),we.name=Qt(o),we.questionToken=l,we.typeParameters=xt(p),we.parameters=xt(k),we.type=V,we.transformFlags=1,we.jsDoc=void 0,we.locals=void 0,we.nextContainer=void 0,we.typeArguments=void 0,we}function Kt(n,o,l,p,k,V,we){return n.modifiers!==o||n.name!==l||n.questionToken!==p||n.typeParameters!==k||n.parameters!==V||n.type!==we?pt(ft(o,l,p,k,V,we),n):n}function zt(n,o,l,p,k,V,we,et){let mt=Ve(171);if(mt.modifiers=xt(n),mt.asteriskToken=o,mt.name=Qt(l),mt.questionToken=p,mt.exclamationToken=void 0,mt.typeParameters=xt(k),mt.parameters=Oe(V),mt.type=we,mt.body=et,!mt.body)mt.transformFlags=1;else{let hn=Vn(mt.modifiers)&512,Ni=!!mt.asteriskToken,ia=hn&&Ni;mt.transformFlags=gt(mt.modifiers)|ye(mt.asteriskToken)|ai(mt.name)|ye(mt.questionToken)|gt(mt.typeParameters)|gt(mt.parameters)|ye(mt.type)|ye(mt.body)&-67108865|(ia?128:hn?256:Ni?2048:0)|(mt.questionToken||mt.typeParameters||mt.type?1:0)|1024}return mt.typeArguments=void 0,mt.jsDoc=void 0,mt.locals=void 0,mt.nextContainer=void 0,mt.flowNode=void 0,mt.endFlowNode=void 0,mt.returnFlowNode=void 0,mt}function xe(n,o,l,p,k,V,we,et,mt){return n.modifiers!==o||n.asteriskToken!==l||n.name!==p||n.questionToken!==k||n.typeParameters!==V||n.parameters!==we||n.type!==et||n.body!==mt?Le(zt(o,l,p,k,V,we,et,mt),n):n}function Le(n,o){return n!==o&&(n.exclamationToken=o.exclamationToken),r(n,o)}function Re(n){let o=Ve(172);return o.body=n,o.transformFlags=ye(n)|16777216,o.modifiers=void 0,o.jsDoc=void 0,o.locals=void 0,o.nextContainer=void 0,o.endFlowNode=void 0,o.returnFlowNode=void 0,o}function ot(n,o){return n.body!==o?Ct(Re(o),n):n}function Ct(n,o){return n!==o&&(n.modifiers=o.modifiers),r(n,o)}function Mt(n,o,l){let p=Ve(173);return p.modifiers=xt(n),p.parameters=Oe(o),p.body=l,p.transformFlags=gt(p.modifiers)|gt(p.parameters)|ye(p.body)&-67108865|1024,p.typeParameters=void 0,p.type=void 0,p.typeArguments=void 0,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.endFlowNode=void 0,p.returnFlowNode=void 0,p}function It(n,o,l,p){return n.modifiers!==o||n.parameters!==l||n.body!==p?Mr(Mt(o,l,p),n):n}function Mr(n,o){return n!==o&&(n.typeParameters=o.typeParameters,n.type=o.type),pt(n,o)}function gr(n,o,l,p,k){let V=Ve(174);return V.modifiers=xt(n),V.name=Qt(o),V.parameters=Oe(l),V.type=p,V.body=k,V.body?V.transformFlags=gt(V.modifiers)|ai(V.name)|gt(V.parameters)|ye(V.type)|ye(V.body)&-67108865|(V.type?1:0):V.transformFlags=1,V.typeArguments=void 0,V.typeParameters=void 0,V.jsDoc=void 0,V.locals=void 0,V.nextContainer=void 0,V.flowNode=void 0,V.endFlowNode=void 0,V.returnFlowNode=void 0,V}function Ln(n,o,l,p,k,V){return n.modifiers!==o||n.name!==l||n.parameters!==p||n.type!==k||n.body!==V?ys(gr(o,l,p,k,V),n):n}function ys(n,o){return n!==o&&(n.typeParameters=o.typeParameters),pt(n,o)}function ci(n,o,l,p){let k=Ve(175);return k.modifiers=xt(n),k.name=Qt(o),k.parameters=Oe(l),k.body=p,k.body?k.transformFlags=gt(k.modifiers)|ai(k.name)|gt(k.parameters)|ye(k.body)&-67108865|(k.type?1:0):k.transformFlags=1,k.typeArguments=void 0,k.typeParameters=void 0,k.type=void 0,k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k.flowNode=void 0,k.endFlowNode=void 0,k.returnFlowNode=void 0,k}function Xi(n,o,l,p,k){return n.modifiers!==o||n.name!==l||n.parameters!==p||n.body!==k?Aa(ci(o,l,p,k),n):n}function Aa(n,o){return n!==o&&(n.typeParameters=o.typeParameters,n.type=o.type),pt(n,o)}function vs(n,o,l){let p=Ve(176);return p.typeParameters=xt(n),p.parameters=xt(o),p.type=l,p.transformFlags=1,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.typeArguments=void 0,p}function $s(n,o,l,p){return n.typeParameters!==o||n.parameters!==l||n.type!==p?pt(vs(o,l,p),n):n}function li(n,o,l){let p=Ve(177);return p.typeParameters=xt(n),p.parameters=xt(o),p.type=l,p.transformFlags=1,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.typeArguments=void 0,p}function Yi(n,o,l,p){return n.typeParameters!==o||n.parameters!==l||n.type!==p?pt(li(o,l,p),n):n}function Qi(n,o,l){let p=Ve(178);return p.modifiers=xt(n),p.parameters=xt(o),p.type=l,p.transformFlags=1,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.typeArguments=void 0,p}function bs(n,o,l,p){return n.parameters!==l||n.type!==p||n.modifiers!==o?pt(Qi(o,l,p),n):n}function Ai(n,o){let l=oe(201);return l.type=n,l.literal=o,l.transformFlags=1,l}function xn(n,o,l){return n.type!==o||n.literal!==l?r(Ai(o,l),n):n}function Dt(n){return pr(n)}function Pi(n,o,l){let p=oe(179);return p.assertsModifier=n,p.parameterName=Qt(o),p.type=l,p.transformFlags=1,p}function Z(n,o,l,p){return n.assertsModifier!==o||n.parameterName!==l||n.type!==p?r(Pi(o,l,p),n):n}function ie(n,o){let l=oe(180);return l.typeName=Qt(n),l.typeArguments=o&&s().parenthesizeTypeArguments(Oe(o)),l.transformFlags=1,l}function U(n,o,l){return n.typeName!==o||n.typeArguments!==l?r(ie(o,l),n):n}function L(n,o,l){let p=Ve(181);return p.typeParameters=xt(n),p.parameters=xt(o),p.type=l,p.transformFlags=1,p.modifiers=void 0,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.typeArguments=void 0,p}function fe(n,o,l,p){return n.typeParameters!==o||n.parameters!==l||n.type!==p?T(L(o,l,p),n):n}function T(n,o){return n!==o&&(n.modifiers=o.modifiers),pt(n,o)}function it(){return arguments.length===4?dt(...arguments):arguments.length===3?_e(...arguments):Y.fail("Incorrect number of arguments specified.")}function dt(n,o,l,p){let k=Ve(182);return k.modifiers=xt(n),k.typeParameters=xt(o),k.parameters=xt(l),k.type=p,k.transformFlags=1,k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k.typeArguments=void 0,k}function _e(n,o,l){return dt(void 0,n,o,l)}function Ge(){return arguments.length===5?bt(...arguments):arguments.length===4?jt(...arguments):Y.fail("Incorrect number of arguments specified.")}function bt(n,o,l,p,k){return n.modifiers!==o||n.typeParameters!==l||n.parameters!==p||n.type!==k?pt(it(o,l,p,k),n):n}function jt(n,o,l,p){return bt(n,n.modifiers,o,l,p)}function Yt(n,o){let l=oe(183);return l.exprName=n,l.typeArguments=o&&s().parenthesizeTypeArguments(o),l.transformFlags=1,l}function $t(n,o,l){return n.exprName!==o||n.typeArguments!==l?r(Yt(o,l),n):n}function Wt(n){let o=Ve(184);return o.members=Oe(n),o.transformFlags=1,o}function Xr(n,o){return n.members!==o?r(Wt(o),n):n}function Dr(n){let o=oe(185);return o.elementType=s().parenthesizeNonArrayTypeOfPostfixType(n),o.transformFlags=1,o}function Lr(n,o){return n.elementType!==o?r(Dr(o),n):n}function yr(n){let o=oe(186);return o.elements=Oe(s().parenthesizeElementTypesOfTupleType(n)),o.transformFlags=1,o}function Rn(n,o){return n.elements!==o?r(yr(o),n):n}function wt(n,o,l,p){let k=Ve(199);return k.dotDotDotToken=n,k.name=o,k.questionToken=l,k.type=p,k.transformFlags=1,k.jsDoc=void 0,k}function Tr(n,o,l,p,k){return n.dotDotDotToken!==o||n.name!==l||n.questionToken!==p||n.type!==k?r(wt(o,l,p,k),n):n}function Tt(n){let o=oe(187);return o.type=s().parenthesizeTypeOfOptionalType(n),o.transformFlags=1,o}function kt(n,o){return n.type!==o?r(Tt(o),n):n}function de(n){let o=oe(188);return o.type=n,o.transformFlags=1,o}function jn(n,o){return n.type!==o?r(de(o),n):n}function Zi(n,o,l){let p=oe(n);return p.types=Ye.createNodeArray(l(o)),p.transformFlags=1,p}function Pa(n,o,l){return n.types!==o?r(Zi(n.kind,o,l),n):n}function e_(n){return Zi(189,n,s().parenthesizeConstituentTypesOfUnionType)}function mc(n,o){return Pa(n,o,s().parenthesizeConstituentTypesOfUnionType)}function Da(n){return Zi(190,n,s().parenthesizeConstituentTypesOfIntersectionType)}function Ts(n,o){return Pa(n,o,s().parenthesizeConstituentTypesOfIntersectionType)}function Ot(n,o,l,p){let k=oe(191);return k.checkType=s().parenthesizeCheckTypeOfConditionalType(n),k.extendsType=s().parenthesizeExtendsTypeOfConditionalType(o),k.trueType=l,k.falseType=p,k.transformFlags=1,k.locals=void 0,k.nextContainer=void 0,k}function dr(n,o,l,p,k){return n.checkType!==o||n.extendsType!==l||n.trueType!==p||n.falseType!==k?r(Ot(o,l,p,k),n):n}function Dd(n){let o=oe(192);return o.typeParameter=n,o.transformFlags=1,o}function ea(n,o){return n.typeParameter!==o?r(Dd(o),n):n}function kd(n,o){let l=oe(200);return l.head=n,l.templateSpans=Oe(o),l.transformFlags=1,l}function sn(n,o,l){return n.head!==o||n.templateSpans!==l?r(kd(o,l),n):n}function Id(n,o,l,p){let k=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1,V=oe(202);return V.argument=n,V.assertions=o,V.qualifier=l,V.typeArguments=p&&s().parenthesizeTypeArguments(p),V.isTypeOf=k,V.transformFlags=1,V}function ka(n,o,l,p,k){let V=arguments.length>5&&arguments[5]!==void 0?arguments[5]:n.isTypeOf;return n.argument!==o||n.assertions!==l||n.qualifier!==p||n.typeArguments!==k||n.isTypeOf!==V?r(Id(o,l,p,k,V),n):n}function t_(n){let o=oe(193);return o.type=n,o.transformFlags=1,o}function En(n,o){return n.type!==o?r(t_(o),n):n}function Er(){let n=oe(194);return n.transformFlags=1,n}function Q(n,o){let l=oe(195);return l.operator=n,l.type=n===146?s().parenthesizeOperandOfReadonlyTypeOperator(o):s().parenthesizeOperandOfTypeOperator(o),l.transformFlags=1,l}function Jn(n,o){return n.type!==o?r(Q(n.operator,o),n):n}function Ia(n,o){let l=oe(196);return l.objectType=s().parenthesizeNonArrayTypeOfPostfixType(n),l.indexType=o,l.transformFlags=1,l}function Ss(n,o,l){return n.objectType!==o||n.indexType!==l?r(Ia(o,l),n):n}function hc(n,o,l,p,k,V){let we=Ve(197);return we.readonlyToken=n,we.typeParameter=o,we.nameType=l,we.questionToken=p,we.type=k,we.members=V&&Oe(V),we.transformFlags=1,we.locals=void 0,we.nextContainer=void 0,we}function wr(n,o,l,p,k,V,we){return n.readonlyToken!==o||n.typeParameter!==l||n.nameType!==p||n.questionToken!==k||n.type!==V||n.members!==we?r(hc(o,l,p,k,V,we),n):n}function zr(n){let o=oe(198);return o.literal=n,o.transformFlags=1,o}function xs(n,o){return n.literal!==o?r(zr(o),n):n}function Nd(n){let o=oe(203);return o.elements=Oe(n),o.transformFlags|=gt(o.elements)|1024|524288,o.transformFlags&32768&&(o.transformFlags|=65664),o}function Rv(n,o){return n.elements!==o?r(Nd(o),n):n}function Es(n){let o=oe(204);return o.elements=Oe(n),o.transformFlags|=gt(o.elements)|1024|524288,o}function jv(n,o){return n.elements!==o?r(Es(o),n):n}function gc(n,o,l,p){let k=Ve(205);return k.dotDotDotToken=n,k.propertyName=Qt(o),k.name=Qt(l),k.initializer=Wa(p),k.transformFlags|=ye(k.dotDotDotToken)|ai(k.propertyName)|ai(k.name)|ye(k.initializer)|(k.dotDotDotToken?32768:0)|1024,k.flowNode=void 0,k}function Ks(n,o,l,p,k){return n.propertyName!==l||n.dotDotDotToken!==o||n.name!==p||n.initializer!==k?r(gc(o,l,p,k),n):n}function uu(n,o){let l=oe(206),p=n&&Cn(n),k=Oe(n,p&&cd(p)?!0:void 0);return l.elements=s().parenthesizeExpressionsOfCommaDelimitedList(k),l.multiLine=o,l.transformFlags|=gt(l.elements),l}function Od(n,o){return n.elements!==o?r(uu(o,n.multiLine),n):n}function r_(n,o){let l=Ve(207);return l.properties=Oe(n),l.multiLine=o,l.transformFlags|=gt(l.properties),l.jsDoc=void 0,l}function Jv(n,o){return n.properties!==o?r(r_(o,n.multiLine),n):n}function Md(n,o,l){let p=Ve(208);return p.expression=n,p.questionDotToken=o,p.name=l,p.transformFlags=ye(p.expression)|ye(p.questionDotToken)|(yt(p.name)?ec(p.name):ye(p.name)|536870912),p.jsDoc=void 0,p.flowNode=void 0,p}function ta(n,o){let l=Md(s().parenthesizeLeftSideOfAccess(n,!1),void 0,Qt(o));return nd(n)&&(l.transformFlags|=384),l}function Ld(n,o,l){return L3(n)?Rd(n,o,n.questionDotToken,ti(l,yt)):n.expression!==o||n.name!==l?r(ta(o,l),n):n}function Xs(n,o,l){let p=Md(s().parenthesizeLeftSideOfAccess(n,!0),o,Qt(l));return p.flags|=32,p.transformFlags|=32,p}function Rd(n,o,l,p){return Y.assert(!!(n.flags&32),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),n.expression!==o||n.questionDotToken!==l||n.name!==p?r(Xs(o,l,p),n):n}function yc(n,o,l){let p=Ve(209);return p.expression=n,p.questionDotToken=o,p.argumentExpression=l,p.transformFlags|=ye(p.expression)|ye(p.questionDotToken)|ye(p.argumentExpression),p.jsDoc=void 0,p.flowNode=void 0,p}function pu(n,o){let l=yc(s().parenthesizeLeftSideOfAccess(n,!1),void 0,za(o));return nd(n)&&(l.transformFlags|=384),l}function Fv(n,o,l){return R3(n)?jd(n,o,n.questionDotToken,l):n.expression!==o||n.argumentExpression!==l?r(pu(o,l),n):n}function fu(n,o,l){let p=yc(s().parenthesizeLeftSideOfAccess(n,!0),o,za(l));return p.flags|=32,p.transformFlags|=32,p}function jd(n,o,l,p){return Y.assert(!!(n.flags&32),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),n.expression!==o||n.questionDotToken!==l||n.argumentExpression!==p?r(fu(o,l,p),n):n}function Jd(n,o,l,p){let k=Ve(210);return k.expression=n,k.questionDotToken=o,k.typeArguments=l,k.arguments=p,k.transformFlags|=ye(k.expression)|ye(k.questionDotToken)|gt(k.typeArguments)|gt(k.arguments),k.typeArguments&&(k.transformFlags|=1),Sf(k.expression)&&(k.transformFlags|=16384),k}function Na(n,o,l){let p=Jd(s().parenthesizeLeftSideOfAccess(n,!1),void 0,xt(o),s().parenthesizeExpressionsOfCommaDelimitedList(Oe(l)));return M8(p.expression)&&(p.transformFlags|=8388608),p}function Bv(n,o,l,p){return Cy(n)?Kn(n,o,n.questionDotToken,l,p):n.expression!==o||n.typeArguments!==l||n.arguments!==p?r(Na(o,l,p),n):n}function du(n,o,l,p){let k=Jd(s().parenthesizeLeftSideOfAccess(n,!0),o,xt(l),s().parenthesizeExpressionsOfCommaDelimitedList(Oe(p)));return k.flags|=32,k.transformFlags|=32,k}function Kn(n,o,l,p,k){return Y.assert(!!(n.flags&32),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),n.expression!==o||n.questionDotToken!==l||n.typeArguments!==p||n.arguments!==k?r(du(o,l,p,k),n):n}function vc(n,o,l){let p=Ve(211);return p.expression=s().parenthesizeExpressionOfNew(n),p.typeArguments=xt(o),p.arguments=l?s().parenthesizeExpressionsOfCommaDelimitedList(l):void 0,p.transformFlags|=ye(p.expression)|gt(p.typeArguments)|gt(p.arguments)|32,p.typeArguments&&(p.transformFlags|=1),p}function mu(n,o,l,p){return n.expression!==o||n.typeArguments!==l||n.arguments!==p?r(vc(o,l,p),n):n}function hu(n,o,l){let p=oe(212);return p.tag=s().parenthesizeLeftSideOfAccess(n,!1),p.typeArguments=xt(o),p.template=l,p.transformFlags|=ye(p.tag)|gt(p.typeArguments)|ye(p.template)|1024,p.typeArguments&&(p.transformFlags|=1),w4(p.template)&&(p.transformFlags|=128),p}function qv(n,o,l,p){return n.tag!==o||n.typeArguments!==l||n.template!==p?r(hu(o,l,p),n):n}function Fd(n,o){let l=oe(213);return l.expression=s().parenthesizeOperandOfPrefixUnary(o),l.type=n,l.transformFlags|=ye(l.expression)|ye(l.type)|1,l}function Bd(n,o,l){return n.type!==o||n.expression!==l?r(Fd(o,l),n):n}function gu(n){let o=oe(214);return o.expression=n,o.transformFlags=ye(o.expression),o.jsDoc=void 0,o}function qd(n,o){return n.expression!==o?r(gu(o),n):n}function yu(n,o,l,p,k,V,we){let et=Ve(215);et.modifiers=xt(n),et.asteriskToken=o,et.name=Qt(l),et.typeParameters=xt(p),et.parameters=Oe(k),et.type=V,et.body=we;let mt=Vn(et.modifiers)&512,hn=!!et.asteriskToken,Ni=mt&&hn;return et.transformFlags=gt(et.modifiers)|ye(et.asteriskToken)|ai(et.name)|gt(et.typeParameters)|gt(et.parameters)|ye(et.type)|ye(et.body)&-67108865|(Ni?128:mt?256:hn?2048:0)|(et.typeParameters||et.type?1:0)|4194304,et.typeArguments=void 0,et.jsDoc=void 0,et.locals=void 0,et.nextContainer=void 0,et.flowNode=void 0,et.endFlowNode=void 0,et.returnFlowNode=void 0,et}function Ud(n,o,l,p,k,V,we,et){return n.name!==p||n.modifiers!==o||n.asteriskToken!==l||n.typeParameters!==k||n.parameters!==V||n.type!==we||n.body!==et?pt(yu(o,l,p,k,V,we,et),n):n}function vu(n,o,l,p,k,V){let we=Ve(216);we.modifiers=xt(n),we.typeParameters=xt(o),we.parameters=Oe(l),we.type=p,we.equalsGreaterThanToken=k!=null?k:pr(38),we.body=s().parenthesizeConciseBodyOfArrowFunction(V);let et=Vn(we.modifiers)&512;return we.transformFlags=gt(we.modifiers)|gt(we.typeParameters)|gt(we.parameters)|ye(we.type)|ye(we.equalsGreaterThanToken)|ye(we.body)&-67108865|(we.typeParameters||we.type?1:0)|(et?16640:0)|1024,we.typeArguments=void 0,we.jsDoc=void 0,we.locals=void 0,we.nextContainer=void 0,we.flowNode=void 0,we.endFlowNode=void 0,we.returnFlowNode=void 0,we}function zd(n,o,l,p,k,V,we){return n.modifiers!==o||n.typeParameters!==l||n.parameters!==p||n.type!==k||n.equalsGreaterThanToken!==V||n.body!==we?pt(vu(o,l,p,k,V,we),n):n}function bu(n){let o=oe(217);return o.expression=s().parenthesizeOperandOfPrefixUnary(n),o.transformFlags|=ye(o.expression),o}function Uv(n,o){return n.expression!==o?r(bu(o),n):n}function mn(n){let o=oe(218);return o.expression=s().parenthesizeOperandOfPrefixUnary(n),o.transformFlags|=ye(o.expression),o}function zv(n,o){return n.expression!==o?r(mn(o),n):n}function ui(n){let o=oe(219);return o.expression=s().parenthesizeOperandOfPrefixUnary(n),o.transformFlags|=ye(o.expression),o}function Wv(n,o){return n.expression!==o?r(ui(o),n):n}function Oa(n){let o=oe(220);return o.expression=s().parenthesizeOperandOfPrefixUnary(n),o.transformFlags|=ye(o.expression)|256|128|2097152,o}function Ys(n,o){return n.expression!==o?r(Oa(o),n):n}function Tu(n,o){let l=oe(221);return l.operator=n,l.operand=s().parenthesizeOperandOfPrefixUnary(o),l.transformFlags|=ye(l.operand),(n===45||n===46)&&yt(l.operand)&&!cs(l.operand)&&!Ev(l.operand)&&(l.transformFlags|=268435456),l}function bc(n,o){return n.operand!==o?r(Tu(n.operator,o),n):n}function Su(n,o){let l=oe(222);return l.operator=o,l.operand=s().parenthesizeOperandOfPostfixUnary(n),l.transformFlags|=ye(l.operand),yt(l.operand)&&!cs(l.operand)&&!Ev(l.operand)&&(l.transformFlags|=268435456),l}function Wd(n,o){return n.operand!==o?r(Su(o,n.operator),n):n}function xu(n,o,l){let p=Ve(223),k=c6(o),V=k.kind;return p.left=s().parenthesizeLeftSideOfBinary(V,n),p.operatorToken=k,p.right=s().parenthesizeRightSideOfBinary(V,p.left,l),p.transformFlags|=ye(p.left)|ye(p.operatorToken)|ye(p.right),V===60?p.transformFlags|=32:V===63?Hs(p.left)?p.transformFlags|=5248|Vd(p.left):Yl(p.left)&&(p.transformFlags|=5120|Vd(p.left)):V===42||V===67?p.transformFlags|=512:jf(V)&&(p.transformFlags|=16),V===101&&vn(p.left)&&(p.transformFlags|=536870912),p.jsDoc=void 0,p}function Vd(n){return Av(n)?65536:0}function Vv(n,o,l,p){return n.left!==o||n.operatorToken!==l||n.right!==p?r(xu(o,l,p),n):n}function Eu(n,o,l,p,k){let V=oe(224);return V.condition=s().parenthesizeConditionOfConditionalExpression(n),V.questionToken=o!=null?o:pr(57),V.whenTrue=s().parenthesizeBranchOfConditionalExpression(l),V.colonToken=p!=null?p:pr(58),V.whenFalse=s().parenthesizeBranchOfConditionalExpression(k),V.transformFlags|=ye(V.condition)|ye(V.questionToken)|ye(V.whenTrue)|ye(V.colonToken)|ye(V.whenFalse),V}function Hv(n,o,l,p,k,V){return n.condition!==o||n.questionToken!==l||n.whenTrue!==p||n.colonToken!==k||n.whenFalse!==V?r(Eu(o,l,p,k,V),n):n}function Di(n,o){let l=oe(225);return l.head=n,l.templateSpans=Oe(o),l.transformFlags|=ye(l.head)|gt(l.templateSpans)|1024,l}function Hd(n,o,l){return n.head!==o||n.templateSpans!==l?r(Di(o,l),n):n}function Tc(n,o,l){let p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;Y.assert(!(p&-2049),"Unsupported template flags.");let k;if(l!==void 0&&l!==o&&(k=RL(n,l),typeof k=="object"))return Y.fail("Invalid raw text");if(o===void 0){if(k===void 0)return Y.fail("Arguments 'text' and 'rawText' may not both be undefined.");o=k}else k!==void 0&&Y.assert(o===k,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return o}function Gd(n){let o=1024;return n&&(o|=128),o}function n_(n,o,l,p){let k=In(n);return k.text=o,k.rawText=l,k.templateFlags=p&2048,k.transformFlags=Gd(k.templateFlags),k}function wu(n,o,l,p){let k=Ve(n);return k.text=o,k.rawText=l,k.templateFlags=p&2048,k.transformFlags=Gd(k.templateFlags),k}function Qs(n,o,l,p){return n===14?wu(n,o,l,p):n_(n,o,l,p)}function Sc(n,o,l){return n=Tc(15,n,o,l),Qs(15,n,o,l)}function Cu(n,o,l){return n=Tc(15,n,o,l),Qs(16,n,o,l)}function Gv(n,o,l){return n=Tc(15,n,o,l),Qs(17,n,o,l)}function $d(n,o,l){return n=Tc(15,n,o,l),wu(14,n,o,l)}function Kd(n,o){Y.assert(!n||!!o,"A `YieldExpression` with an asteriskToken must have an expression.");let l=oe(226);return l.expression=o&&s().parenthesizeExpressionForDisallowedComma(o),l.asteriskToken=n,l.transformFlags|=ye(l.expression)|ye(l.asteriskToken)|1024|128|1048576,l}function $v(n,o,l){return n.expression!==l||n.asteriskToken!==o?r(Kd(o,l),n):n}function Xd(n){let o=oe(227);return o.expression=s().parenthesizeExpressionForDisallowedComma(n),o.transformFlags|=ye(o.expression)|1024|32768,o}function Kv(n,o){return n.expression!==o?r(Xd(o),n):n}function Yd(n,o,l,p,k){let V=Ve(228);return V.modifiers=xt(n),V.name=Qt(o),V.typeParameters=xt(l),V.heritageClauses=xt(p),V.members=Oe(k),V.transformFlags|=gt(V.modifiers)|ai(V.name)|gt(V.typeParameters)|gt(V.heritageClauses)|gt(V.members)|(V.typeParameters?1:0)|1024,V.jsDoc=void 0,V}function xc(n,o,l,p,k,V){return n.modifiers!==o||n.name!==l||n.typeParameters!==p||n.heritageClauses!==k||n.members!==V?r(Yd(o,l,p,k,V),n):n}function Xv(){return oe(229)}function Qd(n,o){let l=oe(230);return l.expression=s().parenthesizeLeftSideOfAccess(n,!1),l.typeArguments=o&&s().parenthesizeTypeArguments(o),l.transformFlags|=ye(l.expression)|gt(l.typeArguments)|1024,l}function Xn(n,o,l){return n.expression!==o||n.typeArguments!==l?r(Qd(o,l),n):n}function Ec(n,o){let l=oe(231);return l.expression=n,l.type=o,l.transformFlags|=ye(l.expression)|ye(l.type)|1,l}function Zd(n,o,l){return n.expression!==o||n.type!==l?r(Ec(o,l),n):n}function em(n){let o=oe(232);return o.expression=s().parenthesizeLeftSideOfAccess(n,!1),o.transformFlags|=ye(o.expression)|1,o}function Au(n,o){return J3(n)?rm(n,o):n.expression!==o?r(em(o),n):n}function tm(n,o){let l=oe(235);return l.expression=n,l.type=o,l.transformFlags|=ye(l.expression)|ye(l.type)|1,l}function Pu(n,o,l){return n.expression!==o||n.type!==l?r(tm(o,l),n):n}function pi(n){let o=oe(232);return o.flags|=32,o.expression=s().parenthesizeLeftSideOfAccess(n,!0),o.transformFlags|=ye(o.expression)|1,o}function rm(n,o){return Y.assert(!!(n.flags&32),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),n.expression!==o?r(pi(o),n):n}function wc(n,o){let l=oe(233);switch(l.keywordToken=n,l.name=o,l.transformFlags|=ye(l.name),n){case 103:l.transformFlags|=1024;break;case 100:l.transformFlags|=4;break;default:return Y.assertNever(n)}return l.flowNode=void 0,l}function ra(n,o){return n.name!==o?r(wc(n.keywordToken,o),n):n}function i_(n,o){let l=oe(236);return l.expression=n,l.literal=o,l.transformFlags|=ye(l.expression)|ye(l.literal)|1024,l}function nm(n,o,l){return n.expression!==o||n.literal!==l?r(i_(o,l),n):n}function im(){let n=oe(237);return n.transformFlags|=1024,n}function Zs(n,o){let l=oe(238);return l.statements=Oe(n),l.multiLine=o,l.transformFlags|=gt(l.statements),l.jsDoc=void 0,l.locals=void 0,l.nextContainer=void 0,l}function am(n,o){return n.statements!==o?r(Zs(o,n.multiLine),n):n}function sm(n,o){let l=oe(240);return l.modifiers=xt(n),l.declarationList=ir(o)?Ru(o):o,l.transformFlags|=gt(l.modifiers)|ye(l.declarationList),Vn(l.modifiers)&2&&(l.transformFlags=1),l.jsDoc=void 0,l.flowNode=void 0,l}function om(n,o,l){return n.modifiers!==o||n.declarationList!==l?r(sm(o,l),n):n}function Du(){let n=oe(239);return n.jsDoc=void 0,n}function a_(n){let o=oe(241);return o.expression=s().parenthesizeExpressionOfExpressionStatement(n),o.transformFlags|=ye(o.expression),o.jsDoc=void 0,o.flowNode=void 0,o}function Yv(n,o){return n.expression!==o?r(a_(o),n):n}function ku(n,o,l){let p=oe(242);return p.expression=n,p.thenStatement=Yn(o),p.elseStatement=Yn(l),p.transformFlags|=ye(p.expression)|ye(p.thenStatement)|ye(p.elseStatement),p.jsDoc=void 0,p.flowNode=void 0,p}function Qv(n,o,l,p){return n.expression!==o||n.thenStatement!==l||n.elseStatement!==p?r(ku(o,l,p),n):n}function Iu(n,o){let l=oe(243);return l.statement=Yn(n),l.expression=o,l.transformFlags|=ye(l.statement)|ye(l.expression),l.jsDoc=void 0,l.flowNode=void 0,l}function Zv(n,o,l){return n.statement!==o||n.expression!==l?r(Iu(o,l),n):n}function _m(n,o){let l=oe(244);return l.expression=n,l.statement=Yn(o),l.transformFlags|=ye(l.expression)|ye(l.statement),l.jsDoc=void 0,l.flowNode=void 0,l}function eb(n,o,l){return n.expression!==o||n.statement!==l?r(_m(o,l),n):n}function Nu(n,o,l,p){let k=oe(245);return k.initializer=n,k.condition=o,k.incrementor=l,k.statement=Yn(p),k.transformFlags|=ye(k.initializer)|ye(k.condition)|ye(k.incrementor)|ye(k.statement),k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k.flowNode=void 0,k}function cm(n,o,l,p,k){return n.initializer!==o||n.condition!==l||n.incrementor!==p||n.statement!==k?r(Nu(o,l,p,k),n):n}function lm(n,o,l){let p=oe(246);return p.initializer=n,p.expression=o,p.statement=Yn(l),p.transformFlags|=ye(p.initializer)|ye(p.expression)|ye(p.statement),p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.flowNode=void 0,p}function tb(n,o,l,p){return n.initializer!==o||n.expression!==l||n.statement!==p?r(lm(o,l,p),n):n}function um(n,o,l,p){let k=oe(247);return k.awaitModifier=n,k.initializer=o,k.expression=s().parenthesizeExpressionForDisallowedComma(l),k.statement=Yn(p),k.transformFlags|=ye(k.awaitModifier)|ye(k.initializer)|ye(k.expression)|ye(k.statement)|1024,n&&(k.transformFlags|=128),k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k.flowNode=void 0,k}function rb(n,o,l,p,k){return n.awaitModifier!==o||n.initializer!==l||n.expression!==p||n.statement!==k?r(um(o,l,p,k),n):n}function pm(n){let o=oe(248);return o.label=Qt(n),o.transformFlags|=ye(o.label)|4194304,o.jsDoc=void 0,o.flowNode=void 0,o}function fm(n,o){return n.label!==o?r(pm(o),n):n}function Ou(n){let o=oe(249);return o.label=Qt(n),o.transformFlags|=ye(o.label)|4194304,o.jsDoc=void 0,o.flowNode=void 0,o}function dm(n,o){return n.label!==o?r(Ou(o),n):n}function mm(n){let o=oe(250);return o.expression=n,o.transformFlags|=ye(o.expression)|128|4194304,o.jsDoc=void 0,o.flowNode=void 0,o}function nb(n,o){return n.expression!==o?r(mm(o),n):n}function Mu(n,o){let l=oe(251);return l.expression=n,l.statement=Yn(o),l.transformFlags|=ye(l.expression)|ye(l.statement),l.jsDoc=void 0,l.flowNode=void 0,l}function hm(n,o,l){return n.expression!==o||n.statement!==l?r(Mu(o,l),n):n}function Lu(n,o){let l=oe(252);return l.expression=s().parenthesizeExpressionForDisallowedComma(n),l.caseBlock=o,l.transformFlags|=ye(l.expression)|ye(l.caseBlock),l.jsDoc=void 0,l.flowNode=void 0,l.possiblyExhaustive=!1,l}function eo(n,o,l){return n.expression!==o||n.caseBlock!==l?r(Lu(o,l),n):n}function gm(n,o){let l=oe(253);return l.label=Qt(n),l.statement=Yn(o),l.transformFlags|=ye(l.label)|ye(l.statement),l.jsDoc=void 0,l.flowNode=void 0,l}function ym(n,o,l){return n.label!==o||n.statement!==l?r(gm(o,l),n):n}function vm(n){let o=oe(254);return o.expression=n,o.transformFlags|=ye(o.expression),o.jsDoc=void 0,o.flowNode=void 0,o}function ib(n,o){return n.expression!==o?r(vm(o),n):n}function bm(n,o,l){let p=oe(255);return p.tryBlock=n,p.catchClause=o,p.finallyBlock=l,p.transformFlags|=ye(p.tryBlock)|ye(p.catchClause)|ye(p.finallyBlock),p.jsDoc=void 0,p.flowNode=void 0,p}function ab(n,o,l,p){return n.tryBlock!==o||n.catchClause!==l||n.finallyBlock!==p?r(bm(o,l,p),n):n}function Tm(){let n=oe(256);return n.jsDoc=void 0,n.flowNode=void 0,n}function Cc(n,o,l,p){var k;let V=Ve(257);return V.name=Qt(n),V.exclamationToken=o,V.type=l,V.initializer=Wa(p),V.transformFlags|=ai(V.name)|ye(V.initializer)|(((k=V.exclamationToken)!=null?k:V.type)?1:0),V.jsDoc=void 0,V}function Sm(n,o,l,p,k){return n.name!==o||n.type!==p||n.exclamationToken!==l||n.initializer!==k?r(Cc(o,l,p,k),n):n}function Ru(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=oe(258);return l.flags|=o&3,l.declarations=Oe(n),l.transformFlags|=gt(l.declarations)|4194304,o&3&&(l.transformFlags|=263168),l}function sb(n,o){return n.declarations!==o?r(Ru(o,n.flags),n):n}function xm(n,o,l,p,k,V,we){let et=Ve(259);if(et.modifiers=xt(n),et.asteriskToken=o,et.name=Qt(l),et.typeParameters=xt(p),et.parameters=Oe(k),et.type=V,et.body=we,!et.body||Vn(et.modifiers)&2)et.transformFlags=1;else{let mt=Vn(et.modifiers)&512,hn=!!et.asteriskToken,Ni=mt&&hn;et.transformFlags=gt(et.modifiers)|ye(et.asteriskToken)|ai(et.name)|gt(et.typeParameters)|gt(et.parameters)|ye(et.type)|ye(et.body)&-67108865|(Ni?128:mt?256:hn?2048:0)|(et.typeParameters||et.type?1:0)|4194304}return et.typeArguments=void 0,et.jsDoc=void 0,et.locals=void 0,et.nextContainer=void 0,et.endFlowNode=void 0,et.returnFlowNode=void 0,et}function ju(n,o,l,p,k,V,we,et){return n.modifiers!==o||n.asteriskToken!==l||n.name!==p||n.typeParameters!==k||n.parameters!==V||n.type!==we||n.body!==et?ob(xm(o,l,p,k,V,we,et),n):n}function ob(n,o){return n!==o&&n.modifiers===o.modifiers&&(n.modifiers=o.modifiers),pt(n,o)}function Em(n,o,l,p,k){let V=Ve(260);return V.modifiers=xt(n),V.name=Qt(o),V.typeParameters=xt(l),V.heritageClauses=xt(p),V.members=Oe(k),Vn(V.modifiers)&2?V.transformFlags=1:(V.transformFlags|=gt(V.modifiers)|ai(V.name)|gt(V.typeParameters)|gt(V.heritageClauses)|gt(V.members)|(V.typeParameters?1:0)|1024,V.transformFlags&8192&&(V.transformFlags|=1)),V.jsDoc=void 0,V}function Ju(n,o,l,p,k,V){return n.modifiers!==o||n.name!==l||n.typeParameters!==p||n.heritageClauses!==k||n.members!==V?r(Em(o,l,p,k,V),n):n}function wm(n,o,l,p,k){let V=Ve(261);return V.modifiers=xt(n),V.name=Qt(o),V.typeParameters=xt(l),V.heritageClauses=xt(p),V.members=Oe(k),V.transformFlags=1,V.jsDoc=void 0,V}function Cm(n,o,l,p,k,V){return n.modifiers!==o||n.name!==l||n.typeParameters!==p||n.heritageClauses!==k||n.members!==V?r(wm(o,l,p,k,V),n):n}function sr(n,o,l,p){let k=Ve(262);return k.modifiers=xt(n),k.name=Qt(o),k.typeParameters=xt(l),k.type=p,k.transformFlags=1,k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k}function Ma(n,o,l,p,k){return n.modifiers!==o||n.name!==l||n.typeParameters!==p||n.type!==k?r(sr(o,l,p,k),n):n}function Fu(n,o,l){let p=Ve(263);return p.modifiers=xt(n),p.name=Qt(o),p.members=Oe(l),p.transformFlags|=gt(p.modifiers)|ye(p.name)|gt(p.members)|1,p.transformFlags&=-67108865,p.jsDoc=void 0,p}function La(n,o,l,p){return n.modifiers!==o||n.name!==l||n.members!==p?r(Fu(o,l,p),n):n}function Am(n,o,l){let p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,k=Ve(264);return k.modifiers=xt(n),k.flags|=p&1044,k.name=o,k.body=l,Vn(k.modifiers)&2?k.transformFlags=1:k.transformFlags|=gt(k.modifiers)|ye(k.name)|ye(k.body)|1,k.transformFlags&=-67108865,k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k}function Sr(n,o,l,p){return n.modifiers!==o||n.name!==l||n.body!==p?r(Am(o,l,p,n.flags),n):n}function Ra(n){let o=oe(265);return o.statements=Oe(n),o.transformFlags|=gt(o.statements),o.jsDoc=void 0,o}function Yr(n,o){return n.statements!==o?r(Ra(o),n):n}function Pm(n){let o=oe(266);return o.clauses=Oe(n),o.transformFlags|=gt(o.clauses),o.locals=void 0,o.nextContainer=void 0,o}function _b(n,o){return n.clauses!==o?r(Pm(o),n):n}function Dm(n){let o=Ve(267);return o.name=Qt(n),o.transformFlags|=ec(o.name)|1,o.modifiers=void 0,o.jsDoc=void 0,o}function km(n,o){return n.name!==o?cb(Dm(o),n):n}function cb(n,o){return n!==o&&(n.modifiers=o.modifiers),r(n,o)}function Im(n,o,l,p){let k=Ve(268);return k.modifiers=xt(n),k.name=Qt(l),k.isTypeOnly=o,k.moduleReference=p,k.transformFlags|=gt(k.modifiers)|ec(k.name)|ye(k.moduleReference),ud(k.moduleReference)||(k.transformFlags|=1),k.transformFlags&=-67108865,k.jsDoc=void 0,k}function Nm(n,o,l,p,k){return n.modifiers!==o||n.isTypeOnly!==l||n.name!==p||n.moduleReference!==k?r(Im(o,l,p,k),n):n}function Om(n,o,l,p){let k=oe(269);return k.modifiers=xt(n),k.importClause=o,k.moduleSpecifier=l,k.assertClause=p,k.transformFlags|=ye(k.importClause)|ye(k.moduleSpecifier),k.transformFlags&=-67108865,k.jsDoc=void 0,k}function Mm(n,o,l,p,k){return n.modifiers!==o||n.importClause!==l||n.moduleSpecifier!==p||n.assertClause!==k?r(Om(o,l,p,k),n):n}function Lm(n,o,l){let p=Ve(270);return p.isTypeOnly=n,p.name=o,p.namedBindings=l,p.transformFlags|=ye(p.name)|ye(p.namedBindings),n&&(p.transformFlags|=1),p.transformFlags&=-67108865,p}function Rm(n,o,l,p){return n.isTypeOnly!==o||n.name!==l||n.namedBindings!==p?r(Lm(o,l,p),n):n}function Bu(n,o){let l=oe(296);return l.elements=Oe(n),l.multiLine=o,l.transformFlags|=4,l}function lb(n,o,l){return n.elements!==o||n.multiLine!==l?r(Bu(o,l),n):n}function s_(n,o){let l=oe(297);return l.name=n,l.value=o,l.transformFlags|=4,l}function jm(n,o,l){return n.name!==o||n.value!==l?r(s_(o,l),n):n}function qu(n,o){let l=oe(298);return l.assertClause=n,l.multiLine=o,l}function Jm(n,o,l){return n.assertClause!==o||n.multiLine!==l?r(qu(o,l),n):n}function Fm(n){let o=Ve(271);return o.name=n,o.transformFlags|=ye(o.name),o.transformFlags&=-67108865,o}function Uu(n,o){return n.name!==o?r(Fm(o),n):n}function Bm(n){let o=Ve(277);return o.name=n,o.transformFlags|=ye(o.name)|4,o.transformFlags&=-67108865,o}function qm(n,o){return n.name!==o?r(Bm(o),n):n}function Um(n){let o=oe(272);return o.elements=Oe(n),o.transformFlags|=gt(o.elements),o.transformFlags&=-67108865,o}function ub(n,o){return n.elements!==o?r(Um(o),n):n}function zm(n,o,l){let p=Ve(273);return p.isTypeOnly=n,p.propertyName=o,p.name=l,p.transformFlags|=ye(p.propertyName)|ye(p.name),p.transformFlags&=-67108865,p}function pb(n,o,l,p){return n.isTypeOnly!==o||n.propertyName!==l||n.name!==p?r(zm(o,l,p),n):n}function zu(n,o,l){let p=Ve(274);return p.modifiers=xt(n),p.isExportEquals=o,p.expression=o?s().parenthesizeRightSideOfBinary(63,void 0,l):s().parenthesizeExpressionOfExportDefault(l),p.transformFlags|=gt(p.modifiers)|ye(p.expression),p.transformFlags&=-67108865,p.jsDoc=void 0,p}function Wu(n,o,l){return n.modifiers!==o||n.expression!==l?r(zu(o,n.isExportEquals,l),n):n}function na(n,o,l,p,k){let V=Ve(275);return V.modifiers=xt(n),V.isTypeOnly=o,V.exportClause=l,V.moduleSpecifier=p,V.assertClause=k,V.transformFlags|=gt(V.modifiers)|ye(V.exportClause)|ye(V.moduleSpecifier),V.transformFlags&=-67108865,V.jsDoc=void 0,V}function Wm(n,o,l,p,k,V){return n.modifiers!==o||n.isTypeOnly!==l||n.exportClause!==p||n.moduleSpecifier!==k||n.assertClause!==V?Vm(na(o,l,p,k,V),n):n}function Vm(n,o){return n!==o&&n.modifiers===o.modifiers&&(n.modifiers=o.modifiers),r(n,o)}function to(n){let o=oe(276);return o.elements=Oe(n),o.transformFlags|=gt(o.elements),o.transformFlags&=-67108865,o}function Hm(n,o){return n.elements!==o?r(to(o),n):n}function Vu(n,o,l){let p=oe(278);return p.isTypeOnly=n,p.propertyName=Qt(o),p.name=Qt(l),p.transformFlags|=ye(p.propertyName)|ye(p.name),p.transformFlags&=-67108865,p.jsDoc=void 0,p}function o_(n,o,l,p){return n.isTypeOnly!==o||n.propertyName!==l||n.name!==p?r(Vu(o,l,p),n):n}function fb(){let n=Ve(279);return n.jsDoc=void 0,n}function Gm(n){let o=oe(280);return o.expression=n,o.transformFlags|=ye(o.expression),o.transformFlags&=-67108865,o}function $m(n,o){return n.expression!==o?r(Gm(o),n):n}function db(n){return oe(n)}function Km(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,p=Ac(n,l?o&&s().parenthesizeNonArrayTypeOfPostfixType(o):o);return p.postfix=l,p}function Ac(n,o){let l=oe(n);return l.type=o,l}function Xm(n,o,l){return o.type!==l?r(Km(n,l,o.postfix),o):o}function mb(n,o,l){return o.type!==l?r(Ac(n,l),o):o}function Ym(n,o){let l=Ve(320);return l.parameters=xt(n),l.type=o,l.transformFlags=gt(l.parameters)|(l.type?1:0),l.jsDoc=void 0,l.locals=void 0,l.nextContainer=void 0,l.typeArguments=void 0,l}function hb(n,o,l){return n.parameters!==o||n.type!==l?r(Ym(o,l),n):n}function Qm(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,l=Ve(325);return l.jsDocPropertyTags=xt(n),l.isArrayType=o,l}function gb(n,o,l){return n.jsDocPropertyTags!==o||n.isArrayType!==l?r(Qm(o,l),n):n}function Zm(n){let o=oe(312);return o.type=n,o}function yb(n,o){return n.type!==o?r(Zm(o),n):n}function eh(n,o,l){let p=Ve(326);return p.typeParameters=xt(n),p.parameters=Oe(o),p.type=l,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p}function Hu(n,o,l,p){return n.typeParameters!==o||n.parameters!==l||n.type!==p?r(eh(o,l,p),n):n}function fi(n){let o=ed(n.kind);return n.tagName.escapedText===vi(o)?n.tagName:Ut(o)}function ja(n,o,l){let p=oe(n);return p.tagName=o,p.comment=l,p}function Ja(n,o,l){let p=Ve(n);return p.tagName=o,p.comment=l,p}function __(n,o,l,p){let k=ja(348,n!=null?n:Ut("template"),p);return k.constraint=o,k.typeParameters=Oe(l),k}function Gu(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0;return n.tagName!==o||n.constraint!==l||n.typeParameters!==p||n.comment!==k?r(__(o,l,p,k),n):n}function $u(n,o,l,p){let k=Ja(349,n!=null?n:Ut("typedef"),p);return k.typeExpression=o,k.fullName=l,k.name=wv(l),k.locals=void 0,k.nextContainer=void 0,k}function th(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0;return n.tagName!==o||n.typeExpression!==l||n.fullName!==p||n.comment!==k?r($u(o,l,p,k),n):n}function Pc(n,o,l,p,k,V){let we=Ja(344,n!=null?n:Ut("param"),V);return we.typeExpression=p,we.name=o,we.isNameFirst=!!k,we.isBracketed=l,we}function vb(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0,V=arguments.length>5?arguments[5]:void 0,we=arguments.length>6?arguments[6]:void 0;return n.tagName!==o||n.name!==l||n.isBracketed!==p||n.typeExpression!==k||n.isNameFirst!==V||n.comment!==we?r(Pc(o,l,p,k,V,we),n):n}function Ku(n,o,l,p,k,V){let we=Ja(351,n!=null?n:Ut("prop"),V);return we.typeExpression=p,we.name=o,we.isNameFirst=!!k,we.isBracketed=l,we}function bb(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0,V=arguments.length>5?arguments[5]:void 0,we=arguments.length>6?arguments[6]:void 0;return n.tagName!==o||n.name!==l||n.isBracketed!==p||n.typeExpression!==k||n.isNameFirst!==V||n.comment!==we?r(Ku(o,l,p,k,V,we),n):n}function rh(n,o,l,p){let k=Ja(341,n!=null?n:Ut("callback"),p);return k.typeExpression=o,k.fullName=l,k.name=wv(l),k.locals=void 0,k.nextContainer=void 0,k}function nh(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0;return n.tagName!==o||n.typeExpression!==l||n.fullName!==p||n.comment!==k?r(rh(o,l,p,k),n):n}function ih(n,o,l){let p=ja(342,n!=null?n:Ut("overload"),l);return p.typeExpression=o,p}function ah(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;return n.tagName!==o||n.typeExpression!==l||n.comment!==p?r(ih(o,l,p),n):n}function sh(n,o,l){let p=ja(331,n!=null?n:Ut("augments"),l);return p.class=o,p}function Xu(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;return n.tagName!==o||n.class!==l||n.comment!==p?r(sh(o,l,p),n):n}function Yu(n,o,l){let p=ja(332,n!=null?n:Ut("implements"),l);return p.class=o,p}function ro(n,o,l){let p=ja(350,n!=null?n:Ut("see"),l);return p.name=o,p}function Tb(n,o,l,p){return n.tagName!==o||n.name!==l||n.comment!==p?r(ro(o,l,p),n):n}function ws(n){let o=oe(313);return o.name=n,o}function Dc(n,o){return n.name!==o?r(ws(o),n):n}function oh(n,o){let l=oe(314);return l.left=n,l.right=o,l.transformFlags|=ye(l.left)|ye(l.right),l}function Sb(n,o,l){return n.left!==o||n.right!==l?r(oh(o,l),n):n}function _h(n,o){let l=oe(327);return l.name=n,l.text=o,l}function xb(n,o,l){return n.name!==o?r(_h(o,l),n):n}function ch(n,o){let l=oe(328);return l.name=n,l.text=o,l}function lh(n,o,l){return n.name!==o?r(ch(o,l),n):n}function uh(n,o){let l=oe(329);return l.name=n,l.text=o,l}function Eb(n,o,l){return n.name!==o?r(uh(o,l),n):n}function wb(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;return n.tagName!==o||n.class!==l||n.comment!==p?r(Yu(o,l,p),n):n}function ph(n,o,l){return ja(n,o!=null?o:Ut(ed(n)),l)}function Cb(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:fi(o),p=arguments.length>3?arguments[3]:void 0;return o.tagName!==l||o.comment!==p?r(ph(n,l,p),o):o}function fh(n,o,l,p){let k=ja(n,o!=null?o:Ut(ed(n)),p);return k.typeExpression=l,k}function Ab(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:fi(o),p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0;return o.tagName!==l||o.typeExpression!==p||o.comment!==k?r(fh(n,l,p,k),o):o}function dh(n,o){return ja(330,n,o)}function Pb(n,o,l){return n.tagName!==o||n.comment!==l?r(dh(o,l),n):n}function mh(n,o,l){let p=Ja(343,n!=null?n:Ut(ed(343)),l);return p.typeExpression=o,p.locals=void 0,p.nextContainer=void 0,p}function Db(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;return n.tagName!==o||n.typeExpression!==l||n.comment!==p?r(mh(o,l,p),n):n}function hh(n){let o=oe(324);return o.text=n,o}function Qu(n,o){return n.text!==o?r(hh(o),n):n}function gh(n,o){let l=oe(323);return l.comment=n,l.tags=xt(o),l}function yh(n,o,l){return n.comment!==o||n.tags!==l?r(gh(o,l),n):n}function Zu(n,o,l){let p=oe(281);return p.openingElement=n,p.children=Oe(o),p.closingElement=l,p.transformFlags|=ye(p.openingElement)|gt(p.children)|ye(p.closingElement)|2,p}function kb(n,o,l,p){return n.openingElement!==o||n.children!==l||n.closingElement!==p?r(Zu(o,l,p),n):n}function c_(n,o,l){let p=oe(282);return p.tagName=n,p.typeArguments=xt(o),p.attributes=l,p.transformFlags|=ye(p.tagName)|gt(p.typeArguments)|ye(p.attributes)|2,p.typeArguments&&(p.transformFlags|=1),p}function vh(n,o,l,p){return n.tagName!==o||n.typeArguments!==l||n.attributes!==p?r(c_(o,l,p),n):n}function bh(n,o,l){let p=oe(283);return p.tagName=n,p.typeArguments=xt(o),p.attributes=l,p.transformFlags|=ye(p.tagName)|gt(p.typeArguments)|ye(p.attributes)|2,o&&(p.transformFlags|=1),p}function Ib(n,o,l,p){return n.tagName!==o||n.typeArguments!==l||n.attributes!==p?r(bh(o,l,p),n):n}function on(n){let o=oe(284);return o.tagName=n,o.transformFlags|=ye(o.tagName)|2,o}function Th(n,o){return n.tagName!==o?r(on(o),n):n}function ep(n,o,l){let p=oe(285);return p.openingFragment=n,p.children=Oe(o),p.closingFragment=l,p.transformFlags|=ye(p.openingFragment)|gt(p.children)|ye(p.closingFragment)|2,p}function Nb(n,o,l,p){return n.openingFragment!==o||n.children!==l||n.closingFragment!==p?r(ep(o,l,p),n):n}function l_(n,o){let l=oe(11);return l.text=n,l.containsOnlyTriviaWhiteSpaces=!!o,l.transformFlags|=2,l}function Ob(n,o,l){return n.text!==o||n.containsOnlyTriviaWhiteSpaces!==l?r(l_(o,l),n):n}function kc(){let n=oe(286);return n.transformFlags|=2,n}function Mb(){let n=oe(287);return n.transformFlags|=2,n}function Sh(n,o){let l=Ve(288);return l.name=n,l.initializer=o,l.transformFlags|=ye(l.name)|ye(l.initializer)|2,l}function Lb(n,o,l){return n.name!==o||n.initializer!==l?r(Sh(o,l),n):n}function xh(n){let o=Ve(289);return o.properties=Oe(n),o.transformFlags|=gt(o.properties)|2,o}function tp(n,o){return n.properties!==o?r(xh(o),n):n}function no(n){let o=oe(290);return o.expression=n,o.transformFlags|=ye(o.expression)|2,o}function Rb(n,o){return n.expression!==o?r(no(o),n):n}function Ic(n,o){let l=oe(291);return l.dotDotDotToken=n,l.expression=o,l.transformFlags|=ye(l.dotDotDotToken)|ye(l.expression)|2,l}function Eh(n,o){return n.expression!==o?r(Ic(n.dotDotDotToken,o),n):n}function wh(n,o){let l=oe(292);return l.expression=s().parenthesizeExpressionForDisallowedComma(n),l.statements=Oe(o),l.transformFlags|=ye(l.expression)|gt(l.statements),l.jsDoc=void 0,l}function rp(n,o,l){return n.expression!==o||n.statements!==l?r(wh(o,l),n):n}function np(n){let o=oe(293);return o.statements=Oe(n),o.transformFlags=gt(o.statements),o}function jb(n,o){return n.statements!==o?r(np(o),n):n}function Ch(n,o){let l=oe(294);switch(l.token=n,l.types=Oe(o),l.transformFlags|=gt(l.types),n){case 94:l.transformFlags|=1024;break;case 117:l.transformFlags|=1;break;default:return Y.assertNever(n)}return l}function Ah(n,o){return n.types!==o?r(Ch(n.token,o),n):n}function ip(n,o){let l=oe(295);return l.variableDeclaration=Xh(n),l.block=o,l.transformFlags|=ye(l.variableDeclaration)|ye(l.block)|(n?0:64),l.locals=void 0,l.nextContainer=void 0,l}function Ph(n,o,l){return n.variableDeclaration!==o||n.block!==l?r(ip(o,l),n):n}function Fa(n,o){let l=Ve(299);return l.name=Qt(n),l.initializer=s().parenthesizeExpressionForDisallowedComma(o),l.transformFlags|=ai(l.name)|ye(l.initializer),l.modifiers=void 0,l.questionToken=void 0,l.exclamationToken=void 0,l.jsDoc=void 0,l}function Jb(n,o,l){return n.name!==o||n.initializer!==l?Fb(Fa(o,l),n):n}function Fb(n,o){return n!==o&&(n.modifiers=o.modifiers,n.questionToken=o.questionToken,n.exclamationToken=o.exclamationToken),r(n,o)}function Dh(n,o){let l=Ve(300);return l.name=Qt(n),l.objectAssignmentInitializer=o&&s().parenthesizeExpressionForDisallowedComma(o),l.transformFlags|=ec(l.name)|ye(l.objectAssignmentInitializer)|1024,l.equalsToken=void 0,l.modifiers=void 0,l.questionToken=void 0,l.exclamationToken=void 0,l.jsDoc=void 0,l}function Bb(n,o,l){return n.name!==o||n.objectAssignmentInitializer!==l?kh(Dh(o,l),n):n}function kh(n,o){return n!==o&&(n.modifiers=o.modifiers,n.questionToken=o.questionToken,n.exclamationToken=o.exclamationToken,n.equalsToken=o.equalsToken),r(n,o)}function ap(n){let o=Ve(301);return o.expression=s().parenthesizeExpressionForDisallowedComma(n),o.transformFlags|=ye(o.expression)|128|65536,o.jsDoc=void 0,o}function ki(n,o){return n.expression!==o?r(ap(o),n):n}function sp(n,o){let l=Ve(302);return l.name=Qt(n),l.initializer=o&&s().parenthesizeExpressionForDisallowedComma(o),l.transformFlags|=ye(l.name)|ye(l.initializer)|1,l.jsDoc=void 0,l}function qb(n,o,l){return n.name!==o||n.initializer!==l?r(sp(o,l),n):n}function Ub(n,o,l){let p=t.createBaseSourceFileNode(308);return p.statements=Oe(n),p.endOfFileToken=o,p.flags|=l,p.text="",p.fileName="",p.path="",p.resolvedPath="",p.originalFileName="",p.languageVersion=0,p.languageVariant=0,p.scriptKind=0,p.isDeclarationFile=!1,p.hasNoDefaultLib=!1,p.transformFlags|=gt(p.statements)|ye(p.endOfFileToken),p.locals=void 0,p.nextContainer=void 0,p.endFlowNode=void 0,p.nodeCount=0,p.identifierCount=0,p.symbolCount=0,p.parseDiagnostics=void 0,p.bindDiagnostics=void 0,p.bindSuggestionDiagnostics=void 0,p.lineMap=void 0,p.externalModuleIndicator=void 0,p.setExternalModuleIndicator=void 0,p.pragmas=void 0,p.checkJsDirective=void 0,p.referencedFiles=void 0,p.typeReferenceDirectives=void 0,p.libReferenceDirectives=void 0,p.amdDependencies=void 0,p.commentDirectives=void 0,p.identifiers=void 0,p.packageJsonLocations=void 0,p.packageJsonScope=void 0,p.imports=void 0,p.moduleAugmentations=void 0,p.ambientModuleNames=void 0,p.resolvedModules=void 0,p.classifiableNames=void 0,p.impliedNodeFormat=void 0,p}function Ih(n){let o=Object.create(n.redirectTarget);return Object.defineProperties(o,{id:{get(){return this.redirectInfo.redirectTarget.id},set(l){this.redirectInfo.redirectTarget.id=l}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(l){this.redirectInfo.redirectTarget.symbol=l}}}),o.redirectInfo=n,o}function Nh(n){let o=Ih(n.redirectInfo);return o.flags|=n.flags&-9,o.fileName=n.fileName,o.path=n.path,o.resolvedPath=n.resolvedPath,o.originalFileName=n.originalFileName,o.packageJsonLocations=n.packageJsonLocations,o.packageJsonScope=n.packageJsonScope,o.emitNode=void 0,o}function op(n){let o=t.createBaseSourceFileNode(308);o.flags|=n.flags&-9;for(let l in n)if(!(Jr(o,l)||!Jr(n,l))){if(l==="emitNode"){o.emitNode=void 0;continue}o[l]=n[l]}return o}function Oh(n){let o=n.redirectInfo?Nh(n):op(n);return Dn(o,n),o}function zb(n,o,l,p,k,V,we){let et=Oh(n);return et.statements=Oe(o),et.isDeclarationFile=l,et.referencedFiles=p,et.typeReferenceDirectives=k,et.hasNoDefaultLib=V,et.libReferenceDirectives=we,et.transformFlags=gt(et.statements)|ye(et.endOfFileToken),et}function Mh(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:n.isDeclarationFile,p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:n.referencedFiles,k=arguments.length>4&&arguments[4]!==void 0?arguments[4]:n.typeReferenceDirectives,V=arguments.length>5&&arguments[5]!==void 0?arguments[5]:n.hasNoDefaultLib,we=arguments.length>6&&arguments[6]!==void 0?arguments[6]:n.libReferenceDirectives;return n.statements!==o||n.isDeclarationFile!==l||n.referencedFiles!==p||n.typeReferenceDirectives!==k||n.hasNoDefaultLib!==V||n.libReferenceDirectives!==we?r(zb(n,o,l,p,k,V,we),n):n}function Lh(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Bt,l=oe(309);return l.prepends=o,l.sourceFiles=n,l.syntheticFileReferences=void 0,l.syntheticTypeReferences=void 0,l.syntheticLibReferences=void 0,l.hasNoDefaultLib=void 0,l}function Wb(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Bt;return n.sourceFiles!==o||n.prepends!==l?r(Lh(o,l),n):n}function Nc(n,o,l){let p=oe(310);return p.prologues=n,p.syntheticReferences=o,p.texts=l,p.fileName="",p.text="",p.referencedFiles=Bt,p.libReferenceDirectives=Bt,p.getLineAndCharacterOfPosition=k=>Ls(p,k),p}function Oc(n,o){let l=oe(n);return l.data=o,l}function Vb(n){return Oc(303,n)}function Hb(n,o){let l=Oc(304,n);return l.texts=o,l}function Gb(n,o){return Oc(o?306:305,n)}function $b(n){let o=oe(307);return o.data=n.data,o.section=n,o}function Kb(){let n=oe(311);return n.javascriptText="",n.declarationText="",n}function Rh(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,l=arguments.length>2?arguments[2]:void 0,p=oe(234);return p.type=n,p.isSpread=o,p.tupleNameSource=l,p}function jh(n){let o=oe(354);return o._children=n,o}function Jh(n){let o=oe(355);return o.original=n,Rt(o,n),o}function Fh(n,o){let l=oe(356);return l.expression=n,l.original=o,l.transformFlags|=ye(l.expression)|1,Rt(l,o),l}function Bh(n,o){return n.expression!==o?r(Fh(o,n.original),n):n}function qh(n){if(fs(n)&&!pl(n)&&!n.original&&!n.emitNode&&!n.id){if(oc(n))return n.elements;if(ur(n)&&I8(n.operatorToken))return[n.left,n.right]}return n}function Mc(n){let o=oe(357);return o.elements=Oe(at(n,qh)),o.transformFlags|=gt(o.elements),o}function Xb(n,o){return n.elements!==o?r(Mc(o),n):n}function Yb(n){let o=oe(359);return o.emitNode={},o.original=n,o}function Qb(n){let o=oe(358);return o.emitNode={},o.original=n,o}function Uh(n,o){let l=oe(360);return l.expression=n,l.thisArg=o,l.transformFlags|=ye(l.expression)|ye(l.thisArg),l}function _p(n,o,l){return n.expression!==o||n.thisArg!==l?r(Uh(o,l),n):n}function Zb(n){let o=pn(n.escapedText);return o.flags|=n.flags&-9,o.transformFlags=n.transformFlags,Dn(o,n),setIdentifierAutoGenerate(o,Object.assign({},n.emitNode.autoGenerate)),o}function e6(n){let o=pn(n.escapedText);o.flags|=n.flags&-9,o.jsDoc=n.jsDoc,o.flowNode=n.flowNode,o.symbol=n.symbol,o.transformFlags=n.transformFlags,Dn(o,n);let l=getIdentifierTypeArguments(n);return l&&setIdentifierTypeArguments(o,l),o}function t6(n){let o=dn(n.escapedText);return o.flags|=n.flags&-9,o.transformFlags=n.transformFlags,Dn(o,n),setIdentifierAutoGenerate(o,Object.assign({},n.emitNode.autoGenerate)),o}function r6(n){let o=dn(n.escapedText);return o.flags|=n.flags&-9,o.transformFlags=n.transformFlags,Dn(o,n),o}function cp(n){if(n===void 0)return n;if(wi(n))return Oh(n);if(cs(n))return Zb(n);if(yt(n))return e6(n);if(Ny(n))return t6(n);if(vn(n))return r6(n);let o=gl(n.kind)?t.createBaseNode(n.kind):t.createBaseTokenNode(n.kind);o.flags|=n.flags&-9,o.transformFlags=n.transformFlags,Dn(o,n);for(let l in n)Jr(o,l)||!Jr(n,l)||(o[l]=n[l]);return o}function n6(n,o,l){return Na(yu(void 0,void 0,void 0,void 0,o?[o]:[],void 0,Zs(n,!0)),void 0,l?[l]:[])}function Lc(n,o,l){return Na(vu(void 0,void 0,o?[o]:[],void 0,void 0,Zs(n,!0)),void 0,l?[l]:[])}function Rc(){return ui(Gt("0"))}function zh(n){return zu(void 0,!1,n)}function i6(n){return na(void 0,!1,to([Vu(!1,void 0,n)]))}function a6(n,o){return o==="undefined"?Ye.createStrictEquality(n,Rc()):Ye.createStrictEquality(mn(n),er(o))}function Ba(n,o,l){return Cy(n)?du(Xs(n,void 0,o),void 0,void 0,l):Na(ta(n,o),void 0,l)}function s6(n,o,l){return Ba(n,"bind",[o,...l])}function o6(n,o,l){return Ba(n,"call",[o,...l])}function _6(n,o,l){return Ba(n,"apply",[o,l])}function io(n,o,l){return Ba(Ut(n),o,l)}function Wh(n,o){return Ba(n,"slice",o===void 0?[]:[za(o)])}function Vh(n,o){return Ba(n,"concat",o)}function u(n,o,l){return io("Object","defineProperty",[n,za(o),l])}function b(n,o){return io("Object","getOwnPropertyDescriptor",[n,za(o)])}function O(n,o,l){return io("Reflect","get",l?[n,o,l]:[n,o])}function j(n,o,l,p){return io("Reflect","set",p?[n,o,l,p]:[n,o,l])}function z(n,o,l){return l?(n.push(Fa(o,l)),!0):!1}function re(n,o){let l=[];z(l,"enumerable",za(n.enumerable)),z(l,"configurable",za(n.configurable));let p=z(l,"writable",za(n.writable));p=z(l,"value",n.value)||p;let k=z(l,"get",n.get);return k=z(l,"set",n.set)||k,Y.assert(!(p&&k),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),r_(l,!o)}function Ee(n,o){switch(n.kind){case 214:return qd(n,o);case 213:return Bd(n,n.type,o);case 231:return Zd(n,o,n.type);case 235:return Pu(n,o,n.type);case 232:return Au(n,o);case 356:return Bh(n,o)}}function qe(n){return qo(n)&&fs(n)&&fs(getSourceMapRange(n))&&fs(getCommentRange(n))&&!Ke(getSyntheticLeadingComments(n))&&!Ke(getSyntheticTrailingComments(n))}function We(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:15;return n&&yd(n,l)&&!qe(n)?Ee(n,We(n.expression,o)):o}function $e(n,o,l){if(!o)return n;let p=ym(o,o.label,tE(o.statement)?$e(n,o.statement):n);return l&&l(o),p}function lt(n,o){let l=Pl(n);switch(l.kind){case 79:return o;case 108:case 8:case 9:case 10:return!1;case 206:return l.elements.length!==0;case 207:return l.properties.length>0;default:return!0}}function Jt(n,o,l){let p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,k=$o(n,15),V,we;return Sf(k)?(V=Or(),we=k):nd(k)?(V=Or(),we=l!==void 0&&l<2?Rt(Ut("_super"),k):k):xi(k)&8192?(V=Rc(),we=s().parenthesizeLeftSideOfAccess(k,!1)):bn(k)?lt(k.expression,p)?(V=kn(o),we=ta(Rt(Ye.createAssignment(V,k.expression),k.expression),k.name),Rt(we,k)):(V=k.expression,we=k):gs(k)?lt(k.expression,p)?(V=kn(o),we=pu(Rt(Ye.createAssignment(V,k.expression),k.expression),k.argumentExpression),Rt(we,k)):(V=k.expression,we=k):(V=Rc(),we=s().parenthesizeLeftSideOfAccess(n,!1)),{target:we,thisArg:V}}function Lt(n,o){return ta(gu(r_([ci(void 0,"value",[$n(void 0,void 0,n,void 0,void 0,void 0)],Zs([a_(o)]))])),"value")}function At(n){return n.length>10?Mc(n):Qa(n,Ye.createComma)}function kr(n,o,l){let p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,k=ml(n);if(k&&yt(k)&&!cs(k)){let V=Sa(Rt(cp(k),k),k.parent);return p|=xi(k),l||(p|=96),o||(p|=3072),p&&setEmitFlags(V,p),V}return $i(n)}function Fn(n,o,l){return kr(n,o,l,98304)}function di(n,o,l){return kr(n,o,l,32768)}function Ii(n,o,l){return kr(n,o,l,16384)}function _n(n,o,l){return kr(n,o,l)}function qa(n,o,l,p){let k=ta(n,fs(o)?o:cp(o));Rt(k,o);let V=0;return p||(V|=96),l||(V|=3072),V&&setEmitFlags(k,V),k}function Hh(n,o,l,p){return n&&rn(o,1)?qa(n,kr(o),l,p):Ii(o,l,p)}function lp(n,o,l,p){let k=Ua(n,o,0,l);return up(n,o,k,p)}function Gh(n){return Gn(n.expression)&&n.expression.text==="use strict"}function wn(){return vd(a_(er("use strict")))}function Ua(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,p=arguments.length>3?arguments[3]:void 0;Y.assert(o.length===0,"Prologue directives should be at the first statement in the target statements array");let k=!1,V=n.length;for(;l4&&arguments[4]!==void 0?arguments[4]:vp,V=n.length;for(;l!==void 0&&let&&hn.splice(k,0,...o.slice(et,mt)),et>we&&hn.splice(p,0,...o.slice(we,et)),we>V&&hn.splice(l,0,...o.slice(V,we)),V>0)if(l===0)hn.splice(0,0,...o.slice(0,V));else{let Ni=new Map;for(let ia=0;ia=0;ia--){let Oi=o[ia];Ni.has(Oi.expression.text)||hn.unshift(Oi)}}return _s(n)?Rt(Oe(hn,n.hasTrailingComma),n):n}function Kh(n,o){var l;let p;return typeof o=="number"?p=$r(o):p=o,Fo(n)?wa(n,p,n.name,n.constraint,n.default):Vs(n)?Ki(n,p,n.dotDotDotToken,n.name,n.questionToken,n.type,n.initializer):G2(n)?bt(n,p,n.typeParameters,n.parameters,n.type):Wl(n)?St(n,p,n.name,n.questionToken,n.type):Bo(n)?_t(n,p,n.name,(l=n.questionToken)!=null?l:n.exclamationToken,n.type,n.initializer):L8(n)?Kt(n,p,n.name,n.questionToken,n.typeParameters,n.parameters,n.type):Vl(n)?xe(n,p,n.asteriskToken,n.name,n.questionToken,n.typeParameters,n.parameters,n.type,n.body):nc(n)?It(n,p,n.parameters,n.body):Gl(n)?Ln(n,p,n.name,n.parameters,n.type,n.body):ic(n)?Xi(n,p,n.name,n.parameters,n.body):H2(n)?bs(n,p,n.parameters,n.type):ad(n)?Ud(n,p,n.asteriskToken,n.name,n.typeParameters,n.parameters,n.type,n.body):sd(n)?zd(n,p,n.typeParameters,n.parameters,n.type,n.equalsGreaterThanToken,n.body):_d(n)?xc(n,p,n.name,n.typeParameters,n.heritageClauses,n.members):zo(n)?om(n,p,n.declarationList):Wo(n)?ju(n,p,n.asteriskToken,n.name,n.typeParameters,n.parameters,n.type,n.body):_c(n)?Ju(n,p,n.name,n.typeParameters,n.heritageClauses,n.members):eu(n)?Cm(n,p,n.name,n.typeParameters,n.heritageClauses,n.members):nv(n)?Ma(n,p,n.name,n.typeParameters,n.type):iv(n)?La(n,p,n.name,n.members):Ea(n)?Sr(n,p,n.name,n.body):sv(n)?Nm(n,p,n.isTypeOnly,n.name,n.moduleReference):ov(n)?Mm(n,p,n.importClause,n.moduleSpecifier,n.assertClause):Vo(n)?Wu(n,p,n.expression):cc(n)?Wm(n,p,n.isTypeOnly,n.exportClause,n.moduleSpecifier,n.assertClause):Y.assertNever(n)}function xt(n){return n?Oe(n):void 0}function Qt(n){return typeof n=="string"?Ut(n):n}function za(n){return typeof n=="string"?er(n):typeof n=="number"?Gt(n):typeof n=="boolean"?n?ar():oi():n}function Wa(n){return n&&s().parenthesizeExpressionForDisallowedComma(n)}function c6(n){return typeof n=="number"?pr(n):n}function Yn(n){return n&&cv(n)?Rt(Dn(Du(),n),n):n}function Xh(n){return typeof n=="string"||n&&!Vi(n)?Cc(n,void 0,void 0,void 0):n}}function ML(e,t){return e!==t&&Rt(e,t),e}function LL(e,t){return e!==t&&(Dn(e,t),Rt(e,t)),e}function ed(e){switch(e){case 347:return"type";case 345:return"returns";case 346:return"this";case 343:return"enum";case 333:return"author";case 335:return"class";case 336:return"public";case 337:return"private";case 338:return"protected";case 339:return"readonly";case 340:return"override";case 348:return"template";case 349:return"typedef";case 344:return"param";case 351:return"prop";case 341:return"callback";case 342:return"overload";case 331:return"augments";case 332:return"implements";default:return Y.fail(`Unsupported kind: ${Y.formatSyntaxKind(e)}`)}}function RL(e,t){switch(Hn||(Hn=Po(99,!1,0)),e){case 14:Hn.setText("`"+t+"`");break;case 15:Hn.setText("`"+t+"${");break;case 16:Hn.setText("}"+t+"${");break;case 17:Hn.setText("}"+t+"`");break}let r=Hn.scan();if(r===19&&(r=Hn.reScanTemplateToken(!1)),Hn.isUnterminated())return Hn.setText(void 0),q2;let s;switch(r){case 14:case 15:case 16:case 17:s=Hn.getTokenValue();break}return s===void 0||Hn.scan()!==1?(Hn.setText(void 0),q2):(Hn.setText(void 0),s)}function ai(e){return e&&yt(e)?ec(e):ye(e)}function ec(e){return ye(e)&-67108865}function jL(e,t){return t|e.transformFlags&134234112}function ye(e){if(!e)return 0;let t=e.transformFlags&~w8(e.kind);return af(e)&&vl(e.name)?jL(e.name,t):t}function gt(e){return e?e.transformFlags:0}function E8(e){let t=0;for(let r of e)t|=ye(r);e.transformFlags=t}function w8(e){if(e>=179&&e<=202)return-2;switch(e){case 210:case 211:case 206:return-2147450880;case 264:return-1941676032;case 166:return-2147483648;case 216:return-2072174592;case 215:case 259:return-1937940480;case 258:return-2146893824;case 260:case 228:return-2147344384;case 173:return-1937948672;case 169:return-2013249536;case 171:case 174:case 175:return-2005057536;case 131:case 148:case 160:case 144:case 152:case 149:case 134:case 153:case 114:case 165:case 168:case 170:case 176:case 177:case 178:case 261:case 262:return-2;case 207:return-2147278848;case 295:return-2147418112;case 203:case 204:return-2147450880;case 213:case 235:case 231:case 356:case 214:case 106:return-2147483648;case 208:case 209:return-2147483648;default:return-2147483648}}function Fl(e){return e.flags|=8,e}function JL(e,t,r){let s,f,x,w,A,g,B,N,X,F;Ji(e)?(x="",w=e,A=e.length,g=t,B=r):(Y.assert(t==="js"||t==="dts"),x=(t==="js"?e.javascriptPath:e.declarationPath)||"",g=t==="js"?e.javascriptMapPath:e.declarationMapPath,N=()=>t==="js"?e.javascriptText:e.declarationText,X=()=>t==="js"?e.javascriptMapText:e.declarationMapText,A=()=>N().length,e.buildInfo&&e.buildInfo.bundle&&(Y.assert(r===void 0||typeof r=="boolean"),s=r,f=t==="js"?e.buildInfo.bundle.js:e.buildInfo.bundle.dts,F=e.oldFileOfCurrentEmit));let $=F?BL(Y.checkDefined(f)):FL(f,s,A);return $.fileName=x,$.sourceMapPath=g,$.oldFileOfCurrentEmit=F,N&&X?(Object.defineProperty($,"text",{get:N}),Object.defineProperty($,"sourceMapText",{get:X})):(Y.assert(!F),$.text=w!=null?w:"",$.sourceMapText=B),$}function FL(e,t,r){let s,f,x,w,A,g,B,N;for(let F of e?e.sections:Bt)switch(F.kind){case"prologue":s=tr(s,Rt(si.createUnparsedPrologue(F.data),F));break;case"emitHelpers":f=tr(f,getAllUnscopedEmitHelpers().get(F.data));break;case"no-default-lib":N=!0;break;case"reference":x=tr(x,{pos:-1,end:-1,fileName:F.data});break;case"type":w=tr(w,{pos:-1,end:-1,fileName:F.data});break;case"type-import":w=tr(w,{pos:-1,end:-1,fileName:F.data,resolutionMode:99});break;case"type-require":w=tr(w,{pos:-1,end:-1,fileName:F.data,resolutionMode:1});break;case"lib":A=tr(A,{pos:-1,end:-1,fileName:F.data});break;case"prepend":let $;for(let ae of F.texts)(!t||ae.kind!=="internal")&&($=tr($,Rt(si.createUnparsedTextLike(ae.data,ae.kind==="internal"),ae)));g=jr(g,$),B=tr(B,si.createUnparsedPrepend(F.data,$!=null?$:Bt));break;case"internal":if(t){B||(B=[]);break}case"text":B=tr(B,Rt(si.createUnparsedTextLike(F.data,F.kind==="internal"),F));break;default:Y.assertNever(F)}if(!B){let F=si.createUnparsedTextLike(void 0,!1);$f(F,0,typeof r=="function"?r():r),B=[F]}let X=dc.createUnparsedSource(s!=null?s:Bt,void 0,B);return Q_(s,X),Q_(B,X),Q_(g,X),X.hasNoDefaultLib=N,X.helpers=f,X.referencedFiles=x||Bt,X.typeReferenceDirectives=w,X.libReferenceDirectives=A||Bt,X}function BL(e){let t,r;for(let f of e.sections)switch(f.kind){case"internal":case"text":t=tr(t,Rt(si.createUnparsedTextLike(f.data,f.kind==="internal"),f));break;case"no-default-lib":case"reference":case"type":case"type-import":case"type-require":case"lib":r=tr(r,Rt(si.createUnparsedSyntheticReference(f),f));break;case"prologue":case"emitHelpers":case"prepend":break;default:Y.assertNever(f)}let s=si.createUnparsedSource(Bt,r,t!=null?t:Bt);return Q_(r,s),Q_(t,s),s.helpers=Ze(e.sources&&e.sources.helpers,f=>getAllUnscopedEmitHelpers().get(f)),s}function qL(e,t,r,s,f,x){return Ji(e)?A8(void 0,e,r,s,void 0,t,f,x):C8(e,t,r,s,f,x)}function C8(e,t,r,s,f,x,w,A){let g=dc.createInputFiles();g.javascriptPath=t,g.javascriptMapPath=r,g.declarationPath=s,g.declarationMapPath=f,g.buildInfoPath=x;let B=new Map,N=ae=>{if(ae===void 0)return;let Te=B.get(ae);return Te===void 0&&(Te=e(ae),B.set(ae,Te!==void 0?Te:!1)),Te!==!1?Te:void 0},X=ae=>{let Te=N(ae);return Te!==void 0?Te:`/* Input file ${ae} was missing */\r +`},F;return Object.defineProperties(g,{javascriptText:{get:()=>X(t)},javascriptMapText:{get:()=>N(r)},declarationText:{get:()=>X(Y.checkDefined(s))},declarationMapText:{get:()=>N(f)},buildInfo:{get:()=>{var ae,Te;if(F===void 0&&x)if(w!=null&&w.getBuildInfo)F=(ae=w.getBuildInfo(x,A.configFilePath))!=null?ae:!1;else{let Se=N(x);F=Se!==void 0&&(Te=getBuildInfo(x,Se))!=null?Te:!1}return F||void 0}}}),g}function A8(e,t,r,s,f,x,w,A,g,B,N){let X=dc.createInputFiles();return X.javascriptPath=e,X.javascriptText=t,X.javascriptMapPath=r,X.javascriptMapText=s,X.declarationPath=f,X.declarationText=x,X.declarationMapPath=w,X.declarationMapText=A,X.buildInfoPath=g,X.buildInfo=B,X.oldFileOfCurrentEmit=N,X}function UL(e,t,r){return new(D8||(D8=lr.getSourceMapSourceConstructor()))(e,t,r)}function Dn(e,t){if(e.original=t,t){let r=t.emitNode;r&&(e.emitNode=zL(r,e.emitNode))}return e}function zL(e,t){let{flags:r,internalFlags:s,leadingComments:f,trailingComments:x,commentRange:w,sourceMapRange:A,tokenSourceMapRanges:g,constantValue:B,helpers:N,startsOnNewLine:X,snippetElement:F}=e;if(t||(t={}),f&&(t.leadingComments=jr(f.slice(),t.leadingComments)),x&&(t.trailingComments=jr(x.slice(),t.trailingComments)),r&&(t.flags=r),s&&(t.internalFlags=s&-9),w&&(t.commentRange=w),A&&(t.sourceMapRange=A),g&&(t.tokenSourceMapRanges=WL(g,t.tokenSourceMapRanges)),B!==void 0&&(t.constantValue=B),N)for(let $ of N)t.helpers=g_(t.helpers,$);return X!==void 0&&(t.startsOnNewLine=X),F!==void 0&&(t.snippetElement=F),t}function WL(e,t){t||(t=[]);for(let r in e)t[r]=e[r];return t}var Bl,F2,B2,Hn,q2,tc,P8,si,D8,VL=D({"src/compiler/factory/nodeFactory.ts"(){"use strict";nn(),Bl=0,F2=(e=>(e[e.None=0]="None",e[e.NoParenthesizerRules=1]="NoParenthesizerRules",e[e.NoNodeConverters=2]="NoNodeConverters",e[e.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",e[e.NoOriginalNode=8]="NoOriginalNode",e))(F2||{}),B2=[],q2={},tc=S8(),P8={createBaseSourceFileNode:e=>Fl(tc.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>Fl(tc.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>Fl(tc.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>Fl(tc.createBaseTokenNode(e)),createBaseNode:e=>Fl(tc.createBaseNode(e))},si=Zf(4,P8)}}),HL=()=>{},GL=()=>{};function zs(e){return e.kind===8}function U2(e){return e.kind===9}function Gn(e){return e.kind===10}function td(e){return e.kind===11}function $L(e){return e.kind===13}function k8(e){return e.kind===14}function KL(e){return e.kind===15}function XL(e){return e.kind===16}function YL(e){return e.kind===17}function QL(e){return e.kind===25}function I8(e){return e.kind===27}function z2(e){return e.kind===39}function W2(e){return e.kind===40}function ZL(e){return e.kind===41}function rd(e){return e.kind===53}function ql(e){return e.kind===57}function eR(e){return e.kind===58}function tR(e){return e.kind===28}function rR(e){return e.kind===38}function yt(e){return e.kind===79}function vn(e){return e.kind===80}function N8(e){return e.kind===93}function nR(e){return e.kind===88}function Ul(e){return e.kind===132}function iR(e){return e.kind===129}function aR(e){return e.kind===133}function O8(e){return e.kind===146}function sR(e){return e.kind===124}function oR(e){return e.kind===126}function _R(e){return e.kind===161}function cR(e){return e.kind===127}function nd(e){return e.kind===106}function M8(e){return e.kind===100}function lR(e){return e.kind===82}function rc(e){return e.kind===163}function Ws(e){return e.kind===164}function Fo(e){return e.kind===165}function Vs(e){return e.kind===166}function zl(e){return e.kind===167}function Wl(e){return e.kind===168}function Bo(e){return e.kind===169}function L8(e){return e.kind===170}function Vl(e){return e.kind===171}function Hl(e){return e.kind===172}function nc(e){return e.kind===173}function Gl(e){return e.kind===174}function ic(e){return e.kind===175}function V2(e){return e.kind===176}function R8(e){return e.kind===177}function H2(e){return e.kind===178}function j8(e){return e.kind===179}function ac(e){return e.kind===180}function $l(e){return e.kind===181}function G2(e){return e.kind===182}function J8(e){return e.kind===183}function id(e){return e.kind===184}function F8(e){return e.kind===185}function B8(e){return e.kind===186}function $2(e){return e.kind===199}function q8(e){return e.kind===187}function U8(e){return e.kind===188}function z8(e){return e.kind===189}function W8(e){return e.kind===190}function V8(e){return e.kind===191}function H8(e){return e.kind===192}function K2(e){return e.kind===193}function X2(e){return e.kind===194}function G8(e){return e.kind===195}function $8(e){return e.kind===196}function K8(e){return e.kind===197}function Y2(e){return e.kind===198}function Kl(e){return e.kind===202}function uR(e){return e.kind===201}function pR(e){return e.kind===200}function fR(e){return e.kind===203}function dR(e){return e.kind===204}function Xl(e){return e.kind===205}function Yl(e){return e.kind===206}function Hs(e){return e.kind===207}function bn(e){return e.kind===208}function gs(e){return e.kind===209}function sc(e){return e.kind===210}function X8(e){return e.kind===211}function Y8(e){return e.kind===212}function mR(e){return e.kind===213}function qo(e){return e.kind===214}function ad(e){return e.kind===215}function sd(e){return e.kind===216}function hR(e){return e.kind===217}function gR(e){return e.kind===218}function Q2(e){return e.kind===219}function yR(e){return e.kind===220}function od(e){return e.kind===221}function Q8(e){return e.kind===222}function ur(e){return e.kind===223}function vR(e){return e.kind===224}function bR(e){return e.kind===225}function TR(e){return e.kind===226}function Z2(e){return e.kind===227}function _d(e){return e.kind===228}function cd(e){return e.kind===229}function ev(e){return e.kind===230}function SR(e){return e.kind===231}function xR(e){return e.kind===235}function Uo(e){return e.kind===232}function tv(e){return e.kind===233}function ER(e){return e.kind===234}function Z8(e){return e.kind===356}function oc(e){return e.kind===357}function wR(e){return e.kind===236}function CR(e){return e.kind===237}function Ql(e){return e.kind===238}function zo(e){return e.kind===240}function AR(e){return e.kind===239}function Zl(e){return e.kind===241}function PR(e){return e.kind===242}function DR(e){return e.kind===243}function kR(e){return e.kind===244}function eE(e){return e.kind===245}function IR(e){return e.kind===246}function NR(e){return e.kind===247}function OR(e){return e.kind===248}function MR(e){return e.kind===249}function LR(e){return e.kind===250}function RR(e){return e.kind===251}function jR(e){return e.kind===252}function tE(e){return e.kind===253}function JR(e){return e.kind===254}function FR(e){return e.kind===255}function BR(e){return e.kind===256}function Vi(e){return e.kind===257}function rv(e){return e.kind===258}function Wo(e){return e.kind===259}function _c(e){return e.kind===260}function eu(e){return e.kind===261}function nv(e){return e.kind===262}function iv(e){return e.kind===263}function Ea(e){return e.kind===264}function rE(e){return e.kind===265}function qR(e){return e.kind===266}function av(e){return e.kind===267}function sv(e){return e.kind===268}function ov(e){return e.kind===269}function UR(e){return e.kind===270}function zR(e){return e.kind===298}function WR(e){return e.kind===296}function VR(e){return e.kind===297}function _v(e){return e.kind===271}function ld(e){return e.kind===277}function HR(e){return e.kind===272}function nE(e){return e.kind===273}function Vo(e){return e.kind===274}function cc(e){return e.kind===275}function iE(e){return e.kind===276}function aE(e){return e.kind===278}function GR(e){return e.kind===279}function cv(e){return e.kind===355}function $R(e){return e.kind===360}function KR(e){return e.kind===358}function XR(e){return e.kind===359}function ud(e){return e.kind===280}function lv(e){return e.kind===281}function YR(e){return e.kind===282}function tu(e){return e.kind===283}function sE(e){return e.kind===284}function pd(e){return e.kind===285}function uv(e){return e.kind===286}function QR(e){return e.kind===287}function ZR(e){return e.kind===288}function pv(e){return e.kind===289}function ej(e){return e.kind===290}function tj(e){return e.kind===291}function rj(e){return e.kind===292}function oE(e){return e.kind===293}function ru(e){return e.kind===294}function nj(e){return e.kind===295}function lc(e){return e.kind===299}function nu(e){return e.kind===300}function _E(e){return e.kind===301}function cE(e){return e.kind===302}function ij(e){return e.kind===304}function wi(e){return e.kind===308}function aj(e){return e.kind===309}function sj(e){return e.kind===310}function lE(e){return e.kind===312}function fd(e){return e.kind===313}function uc(e){return e.kind===314}function oj(e){return e.kind===327}function _j(e){return e.kind===328}function cj(e){return e.kind===329}function lj(e){return e.kind===315}function uj(e){return e.kind===316}function uE(e){return e.kind===317}function pj(e){return e.kind===318}function fj(e){return e.kind===319}function dd(e){return e.kind===320}function dj(e){return e.kind===321}function mj(e){return e.kind===322}function Ho(e){return e.kind===323}function fv(e){return e.kind===325}function iu(e){return e.kind===326}function md(e){return e.kind===331}function hj(e){return e.kind===333}function pE(e){return e.kind===335}function gj(e){return e.kind===341}function dv(e){return e.kind===336}function mv(e){return e.kind===337}function hv(e){return e.kind===338}function gv(e){return e.kind===339}function fE(e){return e.kind===340}function yv(e){return e.kind===342}function vv(e){return e.kind===334}function yj(e){return e.kind===350}function dE(e){return e.kind===343}function pc(e){return e.kind===344}function bv(e){return e.kind===345}function mE(e){return e.kind===346}function au(e){return e.kind===347}function Go(e){return e.kind===348}function vj(e){return e.kind===349}function bj(e){return e.kind===330}function Tj(e){return e.kind===351}function hE(e){return e.kind===332}function Tv(e){return e.kind===353}function Sj(e){return e.kind===352}function xj(e){return e.kind===354}var Ej=D({"src/compiler/factory/nodeTests.ts"(){"use strict";nn()}});function wj(e){return e.createExportDeclaration(void 0,!1,e.createNamedExports([]),void 0)}function hd(e,t,r,s){if(Ws(r))return Rt(e.createElementAccessExpression(t,r.expression),s);{let f=Rt(js(r)?e.createPropertyAccessExpression(t,r):e.createElementAccessExpression(t,r),r);return addEmitFlags(f,128),f}}function Sv(e,t){let r=dc.createIdentifier(e||"React");return Sa(r,fl(t)),r}function xv(e,t,r){if(rc(t)){let s=xv(e,t.left,r),f=e.createIdentifier(qr(t.right));return f.escapedText=t.right.escapedText,e.createPropertyAccessExpression(s,f)}else return Sv(qr(t),r)}function gE(e,t,r,s){return t?xv(e,t,s):e.createPropertyAccessExpression(Sv(r,s),"createElement")}function Cj(e,t,r,s){return t?xv(e,t,s):e.createPropertyAccessExpression(Sv(r,s),"Fragment")}function Aj(e,t,r,s,f,x){let w=[r];if(s&&w.push(s),f&&f.length>0)if(s||w.push(e.createNull()),f.length>1)for(let A of f)vd(A),w.push(A);else w.push(f[0]);return Rt(e.createCallExpression(t,void 0,w),x)}function Pj(e,t,r,s,f,x,w){let g=[Cj(e,r,s,x),e.createNull()];if(f&&f.length>0)if(f.length>1)for(let B of f)vd(B),g.push(B);else g.push(f[0]);return Rt(e.createCallExpression(gE(e,t,s,x),void 0,g),w)}function Dj(e,t,r){if(rv(t)){let s=fo(t.declarations),f=e.updateVariableDeclaration(s,s.name,void 0,void 0,r);return Rt(e.createVariableStatement(void 0,e.updateVariableDeclarationList(t,[f])),t)}else{let s=Rt(e.createAssignment(t,r),t);return Rt(e.createExpressionStatement(s),t)}}function kj(e,t,r){return Ql(t)?e.updateBlock(t,Rt(e.createNodeArray([r,...t.statements]),t.statements)):e.createBlock(e.createNodeArray([t,r]),!0)}function yE(e,t){if(rc(t)){let r=yE(e,t.left),s=Sa(Rt(e.cloneNode(t.right),t.right),t.right.parent);return Rt(e.createPropertyAccessExpression(r,s),t)}else return Sa(Rt(e.cloneNode(t),t),t.parent)}function vE(e,t){return yt(t)?e.createStringLiteralFromNode(t):Ws(t)?Sa(Rt(e.cloneNode(t.expression),t.expression),t.expression.parent):Sa(Rt(e.cloneNode(t),t),t.parent)}function Ij(e,t,r,s,f){let{firstAccessor:x,getAccessor:w,setAccessor:A}=W0(t,r);if(r===x)return Rt(e.createObjectDefinePropertyCall(s,vE(e,r.name),e.createPropertyDescriptor({enumerable:e.createFalse(),configurable:!0,get:w&&Rt(Dn(e.createFunctionExpression(sf(w),void 0,void 0,void 0,w.parameters,void 0,w.body),w),w),set:A&&Rt(Dn(e.createFunctionExpression(sf(A),void 0,void 0,void 0,A.parameters,void 0,A.body),A),A)},!f)),x)}function Nj(e,t,r){return Dn(Rt(e.createAssignment(hd(e,r,t.name,t.name),t.initializer),t),t)}function Oj(e,t,r){return Dn(Rt(e.createAssignment(hd(e,r,t.name,t.name),e.cloneNode(t.name)),t),t)}function Mj(e,t,r){return Dn(Rt(e.createAssignment(hd(e,r,t.name,t.name),Dn(Rt(e.createFunctionExpression(sf(t),t.asteriskToken,void 0,void 0,t.parameters,void 0,t.body),t),t)),t),t)}function Lj(e,t,r,s){switch(r.name&&vn(r.name)&&Y.failBadSyntaxKind(r.name,"Private identifiers are not allowed in object literals."),r.kind){case 174:case 175:return Ij(e,t.properties,r,s,!!t.multiLine);case 299:return Nj(e,r,s);case 300:return Oj(e,r,s);case 171:return Mj(e,r,s)}}function Rj(e,t,r,s,f){let x=t.operator;Y.assert(x===45||x===46,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");let w=e.createTempVariable(s);r=e.createAssignment(w,r),Rt(r,t.operand);let A=od(t)?e.createPrefixUnaryExpression(x,w):e.createPostfixUnaryExpression(w,x);return Rt(A,t),f&&(A=e.createAssignment(f,A),Rt(A,t)),r=e.createComma(r,A),Rt(r,t),Q8(t)&&(r=e.createComma(r,w),Rt(r,t)),r}function jj(e){return(xi(e)&65536)!==0}function Ev(e){return(xi(e)&32768)!==0}function Jj(e){return(xi(e)&16384)!==0}function bE(e){return Gn(e.expression)&&e.expression.text==="use strict"}function TE(e){for(let t of e)if(us(t)){if(bE(t))return t}else break}function SE(e){let t=pa(e);return t!==void 0&&us(t)&&bE(t)}function gd(e){return e.kind===223&&e.operatorToken.kind===27}function Fj(e){return gd(e)||oc(e)}function xE(e){return qo(e)&&Pr(e)&&!!_f(e)}function Bj(e){let t=cf(e);return Y.assertIsDefined(t),t}function yd(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:15;switch(e.kind){case 214:return t&16&&xE(e)?!1:(t&1)!==0;case 213:case 231:case 230:case 235:return(t&2)!==0;case 232:return(t&4)!==0;case 356:return(t&8)!==0}return!1}function $o(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:15;for(;yd(e,t);)e=e.expression;return e}function qj(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:15,r=e.parent;for(;yd(r,t);)r=r.parent,Y.assert(r);return r}function Uj(e){return $o(e,6)}function vd(e){return setStartsOnNewLine(e,!0)}function EE(e){let t=ul(e,wi),r=t&&t.emitNode;return r&&r.externalHelpersModuleName}function zj(e){let t=ul(e,wi),r=t&&t.emitNode;return!!r&&(!!r.externalHelpersModuleName||!!r.externalHelpers)}function Wj(e,t,r,s,f,x,w){if(s.importHelpers&&Yy(r,s)){let A,g=Ei(s);if(g>=5&&g<=99||r.impliedNodeFormat===99){let B=getEmitHelpers(r);if(B){let N=[];for(let X of B)if(!X.scoped){let F=X.importName;F&&qn(N,F)}if(Ke(N)){N.sort(ri),A=e.createNamedImports(Ze(N,$=>mS(r,$)?e.createImportSpecifier(!1,void 0,e.createIdentifier($)):e.createImportSpecifier(!1,e.createIdentifier($),t.getUnscopedHelperName($))));let X=ul(r,wi),F=getOrCreateEmitNode(X);F.externalHelpers=!0}}}else{let B=wE(e,r,s,f,x||w);B&&(A=e.createNamespaceImport(B))}if(A){let B=e.createImportDeclaration(void 0,e.createImportClause(!1,void 0,A),e.createStringLiteral(Kf),void 0);return addInternalEmitFlags(B,2),B}}}function wE(e,t,r,s,f){if(r.importHelpers&&Yy(t,r)){let x=EE(t);if(x)return x;let w=Ei(r),A=(s||o2(r)&&f)&&w!==4&&(w<5||t.impliedNodeFormat===1);if(!A){let g=getEmitHelpers(t);if(g){for(let B of g)if(!B.scoped){A=!0;break}}}if(A){let g=ul(t,wi),B=getOrCreateEmitNode(g);return B.externalHelpersModuleName||(B.externalHelpersModuleName=e.createUniqueName(Kf))}}}function Vj(e,t,r){let s=QS(t);if(s&&!ZS(t)&&!bS(t)){let f=s.name;return cs(f)?f:e.createIdentifier(No(r,f)||qr(f))}if(t.kind===269&&t.importClause||t.kind===275&&t.moduleSpecifier)return e.getGeneratedNameForNode(t)}function Hj(e,t,r,s,f,x){let w=E0(t);if(w&&Gn(w))return $j(t,s,e,f,x)||Gj(e,w,r)||e.cloneNode(w)}function Gj(e,t,r){let s=r.renamedDependencies&&r.renamedDependencies.get(t.text);return s?e.createStringLiteral(s):void 0}function CE(e,t,r,s){if(t){if(t.moduleName)return e.createStringLiteral(t.moduleName);if(!t.isDeclarationFile&&B0(s))return e.createStringLiteral(F0(r,t.fileName))}}function $j(e,t,r,s,f){return CE(r,s.getExternalModuleFileFromDeclaration(e),t,f)}function AE(e){if(Fy(e))return e.initializer;if(lc(e)){let t=e.initializer;return ms(t,!0)?t.right:void 0}if(nu(e))return e.objectAssignmentInitializer;if(ms(e,!0))return e.right;if(Z2(e))return AE(e.expression)}function Ko(e){if(Fy(e))return e.name;if(jy(e)){switch(e.kind){case 299:return Ko(e.initializer);case 300:return e.name;case 301:return Ko(e.expression)}return}return ms(e,!0)?Ko(e.left):Z2(e)?Ko(e.expression):e}function Kj(e){switch(e.kind){case 166:case 205:return e.dotDotDotToken;case 227:case 301:return e}}function Xj(e){let t=PE(e);return Y.assert(!!t||_E(e),"Invalid property name for binding element."),t}function PE(e){switch(e.kind){case 205:if(e.propertyName){let r=e.propertyName;return vn(r)?Y.failBadSyntaxKind(r):Ws(r)&&DE(r.expression)?r.expression:r}break;case 299:if(e.name){let r=e.name;return vn(r)?Y.failBadSyntaxKind(r):Ws(r)&&DE(r.expression)?r.expression:r}break;case 301:return e.name&&vn(e.name)?Y.failBadSyntaxKind(e.name):e.name}let t=Ko(e);if(t&&vl(t))return t}function DE(e){let t=e.kind;return t===10||t===8}function kE(e){switch(e.kind){case 203:case 204:case 206:return e.elements;case 207:return e.properties}}function wv(e){if(e){let t=e;for(;;){if(yt(t)||!t.body)return yt(t)?t:t.name;t=t.body}}}function Yj(e){let t=e.kind;return t===173||t===175}function IE(e){let t=e.kind;return t===173||t===174||t===175}function Qj(e){let t=e.kind;return t===299||t===300||t===259||t===173||t===178||t===172||t===279||t===240||t===261||t===262||t===263||t===264||t===268||t===269||t===267||t===275||t===274}function Zj(e){let t=e.kind;return t===172||t===299||t===300||t===279||t===267}function eJ(e){return ql(e)||rd(e)}function tJ(e){return yt(e)||X2(e)}function rJ(e){return O8(e)||z2(e)||W2(e)}function nJ(e){return ql(e)||z2(e)||W2(e)}function iJ(e){return yt(e)||Gn(e)}function aJ(e){let t=e.kind;return t===104||t===110||t===95||Iy(e)||od(e)}function sJ(e){return e===42}function oJ(e){return e===41||e===43||e===44}function _J(e){return sJ(e)||oJ(e)}function cJ(e){return e===39||e===40}function lJ(e){return cJ(e)||_J(e)}function uJ(e){return e===47||e===48||e===49}function pJ(e){return uJ(e)||lJ(e)}function fJ(e){return e===29||e===32||e===31||e===33||e===102||e===101}function dJ(e){return fJ(e)||pJ(e)}function mJ(e){return e===34||e===36||e===35||e===37}function hJ(e){return mJ(e)||dJ(e)}function gJ(e){return e===50||e===51||e===52}function yJ(e){return gJ(e)||hJ(e)}function vJ(e){return e===55||e===56}function bJ(e){return vJ(e)||yJ(e)}function TJ(e){return e===60||bJ(e)||G_(e)}function SJ(e){return TJ(e)||e===27}function xJ(e){return SJ(e.kind)}function EJ(e,t,r,s,f,x){let w=new OE(e,t,r,s,f,x);return A;function A(g,B){let N={value:void 0},X=[Td.enter],F=[g],$=[void 0],ae=0;for(;X[ae]!==Td.done;)ae=X[ae](w,ae,X,F,$,N,B);return Y.assertEqual(ae,0),N.value}}function NE(e){return e===93||e===88}function wJ(e){let t=e.kind;return NE(t)}function CJ(e){let t=e.kind;return Wi(t)&&!NE(t)}function AJ(e,t){if(t!==void 0)return t.length===0?t:Rt(e.createNodeArray([],t.hasTrailingComma),t)}function PJ(e){var t;let r=e.emitNode.autoGenerate;if(r.flags&4){let s=r.id,f=e,x=f.original;for(;x;){f=x;let w=(t=f.emitNode)==null?void 0:t.autoGenerate;if(js(f)&&(w===void 0||w.flags&4&&w.id!==s))break;x=f.original}return f}return e}function Cv(e,t){return typeof e=="object"?bd(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function DJ(e,t){return typeof e=="string"?e:kJ(e,Y.checkDefined(t))}function kJ(e,t){return Ny(e)?t(e).slice(1):cs(e)?t(e):vn(e)?e.escapedText.slice(1):qr(e)}function bd(e,t,r,s,f){return t=Cv(t,f),s=Cv(s,f),r=DJ(r,f),`${e?"#":""}${t}${r}${s}`}function IJ(e,t,r,s){return e.updatePropertyDeclaration(t,r,e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage"),void 0,void 0,s)}function NJ(e,t,r,s){return e.createGetAccessorDeclaration(r,s,[],void 0,e.createBlock([e.createReturnStatement(e.createPropertyAccessExpression(e.createThis(),e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage")))]))}function OJ(e,t,r,s){return e.createSetAccessorDeclaration(r,s,[e.createParameterDeclaration(void 0,void 0,"value")],e.createBlock([e.createExpressionStatement(e.createAssignment(e.createPropertyAccessExpression(e.createThis(),e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage")),e.createIdentifier("value")))]))}function MJ(e){let t=e.expression;for(;;){if(t=$o(t),oc(t)){t=Zn(t.elements);continue}if(gd(t)){t=t.right;continue}if(ms(t,!0)&&cs(t.left))return t;break}}function LJ(e){return qo(e)&&fs(e)&&!e.emitNode}function su(e,t){if(LJ(e))su(e.expression,t);else if(gd(e))su(e.left,t),su(e.right,t);else if(oc(e))for(let r of e.elements)su(r,t);else t.push(e)}function RJ(e){let t=[];return su(e,t),t}function Av(e){if(e.transformFlags&65536)return!0;if(e.transformFlags&128)for(let t of kE(e)){let r=Ko(t);if(r&&K3(r)&&(r.transformFlags&65536||r.transformFlags&128&&Av(r)))return!0}return!1}var Td,OE,jJ=D({"src/compiler/factory/utilities.ts"(){"use strict";nn(),(e=>{function t(N,X,F,$,ae,Te,Se){let Ye=X>0?ae[X-1]:void 0;return Y.assertEqual(F[X],t),ae[X]=N.onEnter($[X],Ye,Se),F[X]=A(N,t),X}e.enter=t;function r(N,X,F,$,ae,Te,Se){Y.assertEqual(F[X],r),Y.assertIsDefined(N.onLeft),F[X]=A(N,r);let Ye=N.onLeft($[X].left,ae[X],$[X]);return Ye?(B(X,$,Ye),g(X,F,$,ae,Ye)):X}e.left=r;function s(N,X,F,$,ae,Te,Se){return Y.assertEqual(F[X],s),Y.assertIsDefined(N.onOperator),F[X]=A(N,s),N.onOperator($[X].operatorToken,ae[X],$[X]),X}e.operator=s;function f(N,X,F,$,ae,Te,Se){Y.assertEqual(F[X],f),Y.assertIsDefined(N.onRight),F[X]=A(N,f);let Ye=N.onRight($[X].right,ae[X],$[X]);return Ye?(B(X,$,Ye),g(X,F,$,ae,Ye)):X}e.right=f;function x(N,X,F,$,ae,Te,Se){Y.assertEqual(F[X],x),F[X]=A(N,x);let Ye=N.onExit($[X],ae[X]);if(X>0){if(X--,N.foldState){let Oe=F[X]===x?"right":"left";ae[X]=N.foldState(ae[X],Ye,Oe)}}else Te.value=Ye;return X}e.exit=x;function w(N,X,F,$,ae,Te,Se){return Y.assertEqual(F[X],w),X}e.done=w;function A(N,X){switch(X){case t:if(N.onLeft)return r;case r:if(N.onOperator)return s;case s:if(N.onRight)return f;case f:return x;case x:return w;case w:return w;default:Y.fail("Invalid state")}}e.nextState=A;function g(N,X,F,$,ae){return N++,X[N]=t,F[N]=ae,$[N]=void 0,N}function B(N,X,F){if(Y.shouldAssert(2))for(;N>=0;)Y.assert(X[N]!==F,"Circular traversal detected."),N--}})(Td||(Td={})),OE=class{constructor(e,t,r,s,f,x){this.onEnter=e,this.onLeft=t,this.onOperator=r,this.onRight=s,this.onExit=f,this.foldState=x}}}});function Rt(e,t){return t?Us(e,t.pos,t.end):e}function fc(e){let t=e.kind;return t===165||t===166||t===168||t===169||t===170||t===171||t===173||t===174||t===175||t===178||t===182||t===215||t===216||t===228||t===240||t===259||t===260||t===261||t===262||t===263||t===264||t===268||t===269||t===274||t===275}function ME(e){let t=e.kind;return t===166||t===169||t===171||t===174||t===175||t===228||t===260}var JJ=D({"src/compiler/factory/utilitiesPublic.ts"(){"use strict";nn()}});function G(e,t){return t&&e(t)}function ze(e,t,r){if(r){if(t)return t(r);for(let s of r){let f=e(s);if(f)return f}}}function LE(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}function ou(e){return c(e.statements,FJ)||BJ(e)}function FJ(e){return fc(e)&&qJ(e,93)||sv(e)&&ud(e.moduleReference)||ov(e)||Vo(e)||cc(e)?e:void 0}function BJ(e){return e.flags&4194304?RE(e):void 0}function RE(e){return UJ(e)?e:xr(e,RE)}function qJ(e,t){return Ke(e.modifiers,r=>r.kind===t)}function UJ(e){return tv(e)&&e.keywordToken===100&&e.name.escapedText==="meta"}function jE(e,t,r){return ze(t,r,e.typeParameters)||ze(t,r,e.parameters)||G(t,e.type)}function JE(e,t,r){return ze(t,r,e.types)}function FE(e,t,r){return G(t,e.type)}function BE(e,t,r){return ze(t,r,e.elements)}function qE(e,t,r){return G(t,e.expression)||G(t,e.questionDotToken)||ze(t,r,e.typeArguments)||ze(t,r,e.arguments)}function UE(e,t,r){return ze(t,r,e.statements)}function zE(e,t,r){return G(t,e.label)}function WE(e,t,r){return ze(t,r,e.modifiers)||G(t,e.name)||ze(t,r,e.typeParameters)||ze(t,r,e.heritageClauses)||ze(t,r,e.members)}function VE(e,t,r){return ze(t,r,e.elements)}function HE(e,t,r){return G(t,e.propertyName)||G(t,e.name)}function GE(e,t,r){return G(t,e.tagName)||ze(t,r,e.typeArguments)||G(t,e.attributes)}function Xo(e,t,r){return G(t,e.type)}function $E(e,t,r){return G(t,e.tagName)||(e.isNameFirst?G(t,e.name)||G(t,e.typeExpression):G(t,e.typeExpression)||G(t,e.name))||(typeof e.comment=="string"?void 0:ze(t,r,e.comment))}function Yo(e,t,r){return G(t,e.tagName)||G(t,e.typeExpression)||(typeof e.comment=="string"?void 0:ze(t,r,e.comment))}function Pv(e,t,r){return G(t,e.name)}function Gs(e,t,r){return G(t,e.tagName)||(typeof e.comment=="string"?void 0:ze(t,r,e.comment))}function zJ(e,t,r){return G(t,e.expression)}function xr(e,t,r){if(e===void 0||e.kind<=162)return;let s=o7[e.kind];return s===void 0?void 0:s(e,t,r)}function Dv(e,t,r){let s=KE(e),f=[];for(;f.length=0;--A)s.push(x[A]),f.push(w)}else{let A=t(x,w);if(A){if(A==="skip")continue;return A}if(x.kind>=163)for(let g of KE(x))s.push(g),f.push(x)}}}function KE(e){let t=[];return xr(e,r,r),t;function r(s){t.unshift(s)}}function XE(e){e.externalModuleIndicator=ou(e)}function YE(e,t,r){let s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,f=arguments.length>4?arguments[4]:void 0;var x,w;(x=rs)==null||x.push(rs.Phase.Parse,"createSourceFile",{path:e},!0),DT("beforeParse");let A;Dp.logStartParseSourceFile(e);let{languageVersion:g,setExternalModuleIndicator:B,impliedNodeFormat:N}=typeof r=="object"?r:{languageVersion:r};if(g===100)A=Ci.parseSourceFile(e,t,g,void 0,s,6,yn);else{let X=N===void 0?B:F=>(F.impliedNodeFormat=N,(B||XE)(F));A=Ci.parseSourceFile(e,t,g,void 0,s,f,X)}return Dp.logStopParseSourceFile(),DT("afterParse"),R5("Parse","beforeParse","afterParse"),(w=rs)==null||w.pop(),A}function WJ(e,t){return Ci.parseIsolatedEntityName(e,t)}function VJ(e,t){return Ci.parseJsonText(e,t)}function Qo(e){return e.externalModuleIndicator!==void 0}function kv(e,t,r){let s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,f=Sd.updateSourceFile(e,t,r,s);return f.flags|=e.flags&6291456,f}function HJ(e,t,r){let s=Ci.JSDocParser.parseIsolatedJSDocComment(e,t,r);return s&&s.jsDoc&&Ci.fixupParentReferences(s.jsDoc),s}function GJ(e,t,r){return Ci.JSDocParser.parseJSDocTypeExpressionForTests(e,t,r)}function QE(e){return da(e,R2)||ns(e,".ts")&&Fi(sl(e),".d.")}function $J(e,t,r,s){if(e){if(e==="import")return 99;if(e==="require")return 1;s(t,r-t,ve.resolution_mode_should_be_either_require_or_import)}}function ZE(e,t){let r=[];for(let s of Ao(t,0)||Bt){let f=t.substring(s.pos,s.end);XJ(r,s,f)}e.pragmas=new Map;for(let s of r){if(e.pragmas.has(s.name)){let f=e.pragmas.get(s.name);f instanceof Array?f.push(s.args):e.pragmas.set(s.name,[f,s.args]);continue}e.pragmas.set(s.name,s.args)}}function e7(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((r,s)=>{switch(s){case"reference":{let f=e.referencedFiles,x=e.typeReferenceDirectives,w=e.libReferenceDirectives;c(en(r),A=>{let{types:g,lib:B,path:N,["resolution-mode"]:X}=A.arguments;if(A.arguments["no-default-lib"])e.hasNoDefaultLib=!0;else if(g){let F=$J(X,g.pos,g.end,t);x.push(Object.assign({pos:g.pos,end:g.end,fileName:g.value},F?{resolutionMode:F}:{}))}else B?w.push({pos:B.pos,end:B.end,fileName:B.value}):N?f.push({pos:N.pos,end:N.end,fileName:N.value}):t(A.range.pos,A.range.end-A.range.pos,ve.Invalid_reference_directive_syntax)});break}case"amd-dependency":{e.amdDependencies=Ze(en(r),f=>({name:f.arguments.name,path:f.arguments.path}));break}case"amd-module":{if(r instanceof Array)for(let f of r)e.moduleName&&t(f.range.pos,f.range.end-f.range.pos,ve.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=f.arguments.name;else e.moduleName=r.arguments.name;break}case"ts-nocheck":case"ts-check":{c(en(r),f=>{(!e.checkJsDirective||f.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:s==="ts-check",end:f.range.end,pos:f.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:Y.fail("Unhandled pragma kind")}})}function KJ(e){if(xd.has(e))return xd.get(e);let t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return xd.set(e,t),t}function XJ(e,t,r){let s=t.kind===2&&_7.exec(r);if(s){let x=s[1].toLowerCase(),w=Vp[x];if(!w||!(w.kind&1))return;if(w.args){let A={};for(let g of w.args){let N=KJ(g.name).exec(r);if(!N&&!g.optional)return;if(N){let X=N[2]||N[3];if(g.captureSpan){let F=t.pos+N.index+N[1].length+1;A[g.name]={value:X,pos:F,end:F+X.length}}else A[g.name]=X}}e.push({name:x,args:{arguments:A,range:t}})}else e.push({name:x,args:{arguments:{},range:t}});return}let f=t.kind===2&&c7.exec(r);if(f)return t7(e,t,2,f);if(t.kind===3){let x=/@(\S+)(\s+.*)?$/gim,w;for(;w=x.exec(r);)t7(e,t,4,w)}}function t7(e,t,r,s){if(!s)return;let f=s[1].toLowerCase(),x=Vp[f];if(!x||!(x.kind&r))return;let w=s[2],A=YJ(x,w);A!=="fail"&&e.push({name:f,args:{arguments:A,range:t}})}function YJ(e,t){if(!t)return{};if(!e.args)return{};let r=Pp(t).split(/\s+/),s={};for(let f=0;fnew(s7||(s7=lr.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(i7||(i7=lr.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(a7||(a7=lr.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(n7||(n7=lr.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(r7||(r7=lr.getNodeConstructor()))(e,-1,-1)},dc=Zf(1,Iv),o7={[163]:function(t,r,s){return G(r,t.left)||G(r,t.right)},[165]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.constraint)||G(r,t.default)||G(r,t.expression)},[300]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.questionToken)||G(r,t.exclamationToken)||G(r,t.equalsToken)||G(r,t.objectAssignmentInitializer)},[301]:function(t,r,s){return G(r,t.expression)},[166]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.dotDotDotToken)||G(r,t.name)||G(r,t.questionToken)||G(r,t.type)||G(r,t.initializer)},[169]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.questionToken)||G(r,t.exclamationToken)||G(r,t.type)||G(r,t.initializer)},[168]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.questionToken)||G(r,t.type)||G(r,t.initializer)},[299]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.questionToken)||G(r,t.exclamationToken)||G(r,t.initializer)},[257]:function(t,r,s){return G(r,t.name)||G(r,t.exclamationToken)||G(r,t.type)||G(r,t.initializer)},[205]:function(t,r,s){return G(r,t.dotDotDotToken)||G(r,t.propertyName)||G(r,t.name)||G(r,t.initializer)},[178]:function(t,r,s){return ze(r,s,t.modifiers)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)},[182]:function(t,r,s){return ze(r,s,t.modifiers)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)},[181]:function(t,r,s){return ze(r,s,t.modifiers)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)},[176]:jE,[177]:jE,[171]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.asteriskToken)||G(r,t.name)||G(r,t.questionToken)||G(r,t.exclamationToken)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[170]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.questionToken)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)},[173]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[174]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[175]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[259]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.asteriskToken)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[215]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.asteriskToken)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[216]:function(t,r,s){return ze(r,s,t.modifiers)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.equalsGreaterThanToken)||G(r,t.body)},[172]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.body)},[180]:function(t,r,s){return G(r,t.typeName)||ze(r,s,t.typeArguments)},[179]:function(t,r,s){return G(r,t.assertsModifier)||G(r,t.parameterName)||G(r,t.type)},[183]:function(t,r,s){return G(r,t.exprName)||ze(r,s,t.typeArguments)},[184]:function(t,r,s){return ze(r,s,t.members)},[185]:function(t,r,s){return G(r,t.elementType)},[186]:function(t,r,s){return ze(r,s,t.elements)},[189]:JE,[190]:JE,[191]:function(t,r,s){return G(r,t.checkType)||G(r,t.extendsType)||G(r,t.trueType)||G(r,t.falseType)},[192]:function(t,r,s){return G(r,t.typeParameter)},[202]:function(t,r,s){return G(r,t.argument)||G(r,t.assertions)||G(r,t.qualifier)||ze(r,s,t.typeArguments)},[298]:function(t,r,s){return G(r,t.assertClause)},[193]:FE,[195]:FE,[196]:function(t,r,s){return G(r,t.objectType)||G(r,t.indexType)},[197]:function(t,r,s){return G(r,t.readonlyToken)||G(r,t.typeParameter)||G(r,t.nameType)||G(r,t.questionToken)||G(r,t.type)||ze(r,s,t.members)},[198]:function(t,r,s){return G(r,t.literal)},[199]:function(t,r,s){return G(r,t.dotDotDotToken)||G(r,t.name)||G(r,t.questionToken)||G(r,t.type)},[203]:BE,[204]:BE,[206]:function(t,r,s){return ze(r,s,t.elements)},[207]:function(t,r,s){return ze(r,s,t.properties)},[208]:function(t,r,s){return G(r,t.expression)||G(r,t.questionDotToken)||G(r,t.name)},[209]:function(t,r,s){return G(r,t.expression)||G(r,t.questionDotToken)||G(r,t.argumentExpression)},[210]:qE,[211]:qE,[212]:function(t,r,s){return G(r,t.tag)||G(r,t.questionDotToken)||ze(r,s,t.typeArguments)||G(r,t.template)},[213]:function(t,r,s){return G(r,t.type)||G(r,t.expression)},[214]:function(t,r,s){return G(r,t.expression)},[217]:function(t,r,s){return G(r,t.expression)},[218]:function(t,r,s){return G(r,t.expression)},[219]:function(t,r,s){return G(r,t.expression)},[221]:function(t,r,s){return G(r,t.operand)},[226]:function(t,r,s){return G(r,t.asteriskToken)||G(r,t.expression)},[220]:function(t,r,s){return G(r,t.expression)},[222]:function(t,r,s){return G(r,t.operand)},[223]:function(t,r,s){return G(r,t.left)||G(r,t.operatorToken)||G(r,t.right)},[231]:function(t,r,s){return G(r,t.expression)||G(r,t.type)},[232]:function(t,r,s){return G(r,t.expression)},[235]:function(t,r,s){return G(r,t.expression)||G(r,t.type)},[233]:function(t,r,s){return G(r,t.name)},[224]:function(t,r,s){return G(r,t.condition)||G(r,t.questionToken)||G(r,t.whenTrue)||G(r,t.colonToken)||G(r,t.whenFalse)},[227]:function(t,r,s){return G(r,t.expression)},[238]:UE,[265]:UE,[308]:function(t,r,s){return ze(r,s,t.statements)||G(r,t.endOfFileToken)},[240]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.declarationList)},[258]:function(t,r,s){return ze(r,s,t.declarations)},[241]:function(t,r,s){return G(r,t.expression)},[242]:function(t,r,s){return G(r,t.expression)||G(r,t.thenStatement)||G(r,t.elseStatement)},[243]:function(t,r,s){return G(r,t.statement)||G(r,t.expression)},[244]:function(t,r,s){return G(r,t.expression)||G(r,t.statement)},[245]:function(t,r,s){return G(r,t.initializer)||G(r,t.condition)||G(r,t.incrementor)||G(r,t.statement)},[246]:function(t,r,s){return G(r,t.initializer)||G(r,t.expression)||G(r,t.statement)},[247]:function(t,r,s){return G(r,t.awaitModifier)||G(r,t.initializer)||G(r,t.expression)||G(r,t.statement)},[248]:zE,[249]:zE,[250]:function(t,r,s){return G(r,t.expression)},[251]:function(t,r,s){return G(r,t.expression)||G(r,t.statement)},[252]:function(t,r,s){return G(r,t.expression)||G(r,t.caseBlock)},[266]:function(t,r,s){return ze(r,s,t.clauses)},[292]:function(t,r,s){return G(r,t.expression)||ze(r,s,t.statements)},[293]:function(t,r,s){return ze(r,s,t.statements)},[253]:function(t,r,s){return G(r,t.label)||G(r,t.statement)},[254]:function(t,r,s){return G(r,t.expression)},[255]:function(t,r,s){return G(r,t.tryBlock)||G(r,t.catchClause)||G(r,t.finallyBlock)},[295]:function(t,r,s){return G(r,t.variableDeclaration)||G(r,t.block)},[167]:function(t,r,s){return G(r,t.expression)},[260]:WE,[228]:WE,[261]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.heritageClauses)||ze(r,s,t.members)},[262]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.typeParameters)||G(r,t.type)},[263]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.members)},[302]:function(t,r,s){return G(r,t.name)||G(r,t.initializer)},[264]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.body)},[268]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.moduleReference)},[269]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.importClause)||G(r,t.moduleSpecifier)||G(r,t.assertClause)},[270]:function(t,r,s){return G(r,t.name)||G(r,t.namedBindings)},[296]:function(t,r,s){return ze(r,s,t.elements)},[297]:function(t,r,s){return G(r,t.name)||G(r,t.value)},[267]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)},[271]:function(t,r,s){return G(r,t.name)},[277]:function(t,r,s){return G(r,t.name)},[272]:VE,[276]:VE,[275]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.exportClause)||G(r,t.moduleSpecifier)||G(r,t.assertClause)},[273]:HE,[278]:HE,[274]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.expression)},[225]:function(t,r,s){return G(r,t.head)||ze(r,s,t.templateSpans)},[236]:function(t,r,s){return G(r,t.expression)||G(r,t.literal)},[200]:function(t,r,s){return G(r,t.head)||ze(r,s,t.templateSpans)},[201]:function(t,r,s){return G(r,t.type)||G(r,t.literal)},[164]:function(t,r,s){return G(r,t.expression)},[294]:function(t,r,s){return ze(r,s,t.types)},[230]:function(t,r,s){return G(r,t.expression)||ze(r,s,t.typeArguments)},[280]:function(t,r,s){return G(r,t.expression)},[279]:function(t,r,s){return ze(r,s,t.modifiers)},[357]:function(t,r,s){return ze(r,s,t.elements)},[281]:function(t,r,s){return G(r,t.openingElement)||ze(r,s,t.children)||G(r,t.closingElement)},[285]:function(t,r,s){return G(r,t.openingFragment)||ze(r,s,t.children)||G(r,t.closingFragment)},[282]:GE,[283]:GE,[289]:function(t,r,s){return ze(r,s,t.properties)},[288]:function(t,r,s){return G(r,t.name)||G(r,t.initializer)},[290]:function(t,r,s){return G(r,t.expression)},[291]:function(t,r,s){return G(r,t.dotDotDotToken)||G(r,t.expression)},[284]:function(t,r,s){return G(r,t.tagName)},[187]:Xo,[188]:Xo,[312]:Xo,[318]:Xo,[317]:Xo,[319]:Xo,[321]:Xo,[320]:function(t,r,s){return ze(r,s,t.parameters)||G(r,t.type)},[323]:function(t,r,s){return(typeof t.comment=="string"?void 0:ze(r,s,t.comment))||ze(r,s,t.tags)},[350]:function(t,r,s){return G(r,t.tagName)||G(r,t.name)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[313]:function(t,r,s){return G(r,t.name)},[314]:function(t,r,s){return G(r,t.left)||G(r,t.right)},[344]:$E,[351]:$E,[333]:function(t,r,s){return G(r,t.tagName)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[332]:function(t,r,s){return G(r,t.tagName)||G(r,t.class)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[331]:function(t,r,s){return G(r,t.tagName)||G(r,t.class)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[348]:function(t,r,s){return G(r,t.tagName)||G(r,t.constraint)||ze(r,s,t.typeParameters)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[349]:function(t,r,s){return G(r,t.tagName)||(t.typeExpression&&t.typeExpression.kind===312?G(r,t.typeExpression)||G(r,t.fullName)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment)):G(r,t.fullName)||G(r,t.typeExpression)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment)))},[341]:function(t,r,s){return G(r,t.tagName)||G(r,t.fullName)||G(r,t.typeExpression)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[345]:Yo,[347]:Yo,[346]:Yo,[343]:Yo,[353]:Yo,[352]:Yo,[342]:Yo,[326]:function(t,r,s){return c(t.typeParameters,r)||c(t.parameters,r)||G(r,t.type)},[327]:Pv,[328]:Pv,[329]:Pv,[325]:function(t,r,s){return c(t.jsDocPropertyTags,r)},[330]:Gs,[335]:Gs,[336]:Gs,[337]:Gs,[338]:Gs,[339]:Gs,[334]:Gs,[340]:Gs,[356]:zJ},(e=>{var t=Po(99,!0),r=20480,s,f,x,w,A;function g(u){return oi++,u}var B={createBaseSourceFileNode:u=>g(new A(u,0,0)),createBaseIdentifierNode:u=>g(new x(u,0,0)),createBasePrivateIdentifierNode:u=>g(new w(u,0,0)),createBaseTokenNode:u=>g(new f(u,0,0)),createBaseNode:u=>g(new s(u,0,0))},N=Zf(11,B),{createNodeArray:X,createNumericLiteral:F,createStringLiteral:$,createLiteralLikeNode:ae,createIdentifier:Te,createPrivateIdentifier:Se,createToken:Ye,createArrayLiteralExpression:Oe,createObjectLiteralExpression:oe,createPropertyAccessExpression:Ve,createPropertyAccessChain:pt,createElementAccessExpression:Gt,createElementAccessChain:Nt,createCallExpression:Xt,createCallChain:er,createNewExpression:Tn,createParenthesizedExpression:Hr,createBlock:Gi,createVariableStatement:pn,createExpressionStatement:fn,createIfStatement:Ut,createWhileStatement:kn,createForStatement:an,createForOfStatement:mr,createVariableDeclaration:$i,createVariableDeclarationList:dn}=N,Ur,Gr,_r,Sn,In,pr,Zt,Or,Nn,ar,oi,cr,$r,hr,On,nr,br=!0,Kr=!1;function wa(u,b,O,j){let z=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1,re=arguments.length>5?arguments[5]:void 0,Ee=arguments.length>6?arguments[6]:void 0;var qe;if(re=Nx(u,re),re===6){let $e=Ki(u,b,O,j,z);return convertToObjectWorker($e,(qe=$e.statements[0])==null?void 0:qe.expression,$e.parseDiagnostics,!1,void 0,void 0),$e.referencedFiles=Bt,$e.typeReferenceDirectives=Bt,$e.libReferenceDirectives=Bt,$e.amdDependencies=Bt,$e.hasNoDefaultLib=!1,$e.pragmas=V1,$e}Mn(u,b,O,j,re);let We=Ca(O,z,re,Ee||XE);return _i(),We}e.parseSourceFile=wa;function $n(u,b){Mn("",u,b,void 0,1),_e();let O=Ys(!0),j=T()===1&&!Zt.length;return _i(),j?O:void 0}e.parseIsolatedEntityName=$n;function Ki(u,b){let O=arguments.length>2&&arguments[2]!==void 0?arguments[2]:2,j=arguments.length>3?arguments[3]:void 0,z=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;Mn(u,b,O,j,6),Gr=nr,_e();let re=L(),Ee,qe;if(T()===1)Ee=Er([],re,re),qe=sn();else{let lt;for(;T()!==1;){let At;switch(T()){case 22:At=ah();break;case 110:case 95:case 104:At=sn();break;case 40:wt(()=>_e()===8&&_e()!==58)?At=qm():At=Xu();break;case 8:case 10:if(wt(()=>_e()!==58)){At=Di();break}default:At=Xu();break}lt&&ir(lt)?lt.push(At):lt?lt=[lt,At]:(lt=At,T()!==1&&Dt(ve.Unexpected_token))}let Jt=ir(lt)?Q(Oe(lt),re):Y.checkDefined(lt),Lt=fn(Jt);Q(Lt,re),Ee=Er([Lt],re),qe=ea(1,ve.Unexpected_token)}let We=Kt(u,2,6,!1,Ee,qe,Gr,yn);z&&ft(We),We.nodeCount=oi,We.identifierCount=$r,We.identifiers=cr,We.parseDiagnostics=qs(Zt,We),Or&&(We.jsDocDiagnostics=qs(Or,We));let $e=We;return _i(),$e}e.parseJsonText=Ki;function Mn(u,b,O,j,z){switch(s=lr.getNodeConstructor(),f=lr.getTokenConstructor(),x=lr.getIdentifierConstructor(),w=lr.getPrivateIdentifierConstructor(),A=lr.getSourceFileConstructor(),Ur=Un(u),_r=b,Sn=O,Nn=j,In=z,pr=s2(z),Zt=[],hr=0,cr=new Map,$r=0,oi=0,Gr=0,br=!0,In){case 1:case 2:nr=262144;break;case 6:nr=67371008;break;default:nr=0;break}Kr=!1,t.setText(_r),t.setOnError(U),t.setScriptTarget(Sn),t.setLanguageVariant(pr)}function _i(){t.clearCommentDirectives(),t.setText(""),t.setOnError(void 0),_r=void 0,Sn=void 0,Nn=void 0,In=void 0,pr=void 0,Gr=0,Zt=void 0,Or=void 0,hr=0,cr=void 0,On=void 0,br=!0}function Ca(u,b,O,j){let z=QE(Ur);z&&(nr|=16777216),Gr=nr,_e();let re=Kn(0,on);Y.assert(T()===1);let Ee=He(sn()),qe=Kt(Ur,u,O,z,re,Ee,Gr,j);return ZE(qe,_r),e7(qe,We),qe.commentDirectives=t.getCommentDirectives(),qe.nodeCount=oi,qe.identifierCount=$r,qe.identifiers=cr,qe.parseDiagnostics=qs(Zt,qe),Or&&(qe.jsDocDiagnostics=qs(Or,qe)),b&&ft(qe),qe;function We($e,lt,Jt){Zt.push(Ro(Ur,$e,lt,Jt))}}function St(u,b){return b?He(u):u}let ue=!1;function He(u){Y.assert(!u.jsDoc);let b=qt(IS(u,_r),O=>Vh.parseJSDocComment(u,O.pos,O.end-O.pos));return b.length&&(u.jsDoc=b),ue&&(ue=!1,u.flags|=268435456),u}function _t(u){let b=Nn,O=Sd.createSyntaxCursor(u);Nn={currentNode:lt};let j=[],z=Zt;Zt=[];let re=0,Ee=We(u.statements,0);for(;Ee!==-1;){let Jt=u.statements[re],Lt=u.statements[Ee];jr(j,u.statements,re,Ee),re=$e(u.statements,Ee);let At=he(z,Fn=>Fn.start>=Jt.pos),kr=At>=0?he(z,Fn=>Fn.start>=Lt.pos,At):-1;At>=0&&jr(Zt,z,At,kr>=0?kr:void 0),Rn(()=>{let Fn=nr;for(nr|=32768,t.setTextPos(Lt.pos),_e();T()!==1;){let di=t.getStartPos(),Ii=vc(0,on);if(j.push(Ii),di===t.getStartPos()&&_e(),re>=0){let _n=u.statements[re];if(Ii.end===_n.pos)break;Ii.end>_n.pos&&(re=$e(u.statements,re+1))}}nr=Fn},2),Ee=re>=0?We(u.statements,re):-1}if(re>=0){let Jt=u.statements[re];jr(j,u.statements,re);let Lt=he(z,At=>At.start>=Jt.pos);Lt>=0&&jr(Zt,z,Lt)}return Nn=b,N.updateSourceFile(u,Rt(X(j),u.statements));function qe(Jt){return!(Jt.flags&32768)&&!!(Jt.transformFlags&67108864)}function We(Jt,Lt){for(let At=Lt;At116}function kt(){return T()===79?!0:T()===125&&Yi()||T()===133&&xn()?!1:T()>116}function de(u,b){let O=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return T()===u?(O&&_e(),!0):(b?Dt(b):Dt(ve._0_expected,Br(u)),!1)}let jn=Object.keys(cl).filter(u=>u.length>2);function Zi(u){var b;if(Y8(u)){Z(Ar(_r,u.template.pos),u.template.end,ve.Module_declaration_names_may_only_use_or_quoted_strings);return}let O=yt(u)?qr(u):void 0;if(!O||!vy(O,Sn)){Dt(ve._0_expected,Br(26));return}let j=Ar(_r,u.pos);switch(O){case"const":case"let":case"var":Z(j,u.end,ve.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Pa(ve.Interface_name_cannot_be_0,ve.Interface_must_be_given_a_name,18);return;case"is":Z(j,t.getTextPos(),ve.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Pa(ve.Namespace_name_cannot_be_0,ve.Namespace_must_be_given_a_name,18);return;case"type":Pa(ve.Type_alias_name_cannot_be_0,ve.Type_alias_must_be_given_a_name,63);return}let z=(b=Ep(O,jn,re=>re))!=null?b:e_(O);if(z){Z(j,u.end,ve.Unknown_keyword_or_identifier_Did_you_mean_0,z);return}T()!==0&&Z(j,u.end,ve.Unexpected_keyword_or_identifier)}function Pa(u,b,O){T()===O?Dt(b):Dt(u,t.getTokenValue())}function e_(u){for(let b of jn)if(u.length>b.length+2&&Pn(u,b))return`${b} ${u.slice(b.length)}`}function mc(u,b,O){if(T()===59&&!t.hasPrecedingLineBreak()){Dt(ve.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(T()===20){Dt(ve.Cannot_start_a_function_call_in_a_type_annotation),_e();return}if(b&&!ka()){O?Dt(ve._0_expected,Br(26)):Dt(ve.Expected_for_property_initializer);return}if(!t_()){if(O){Dt(ve._0_expected,Br(26));return}Zi(u)}}function Da(u){return T()===u?(Ge(),!0):(Dt(ve._0_expected,Br(u)),!1)}function Ts(u,b,O,j){if(T()===b){_e();return}let z=Dt(ve._0_expected,Br(b));O&&z&&Rl(z,Ro(Ur,j,1,ve.The_parser_expected_to_find_a_1_to_match_the_0_token_here,Br(u),Br(b)))}function Ot(u){return T()===u?(_e(),!0):!1}function dr(u){if(T()===u)return sn()}function Dd(u){if(T()===u)return Id()}function ea(u,b,O){return dr(u)||Jn(u,!1,b||ve._0_expected,O||Br(u))}function kd(u){return Dd(u)||Jn(u,!1,ve._0_expected,Br(u))}function sn(){let u=L(),b=T();return _e(),Q(Ye(b),u)}function Id(){let u=L(),b=T();return Ge(),Q(Ye(b),u)}function ka(){return T()===26?!0:T()===19||T()===1||t.hasPrecedingLineBreak()}function t_(){return ka()?(T()===26&&_e(),!0):!1}function En(){return t_()||de(26)}function Er(u,b,O,j){let z=X(u,j);return Us(z,b,O!=null?O:t.getStartPos()),z}function Q(u,b,O){return Us(u,b,O!=null?O:t.getStartPos()),nr&&(u.flags|=nr),Kr&&(Kr=!1,u.flags|=131072),u}function Jn(u,b,O,j){b?Pi(t.getStartPos(),0,O,j):O&&Dt(O,j);let z=L(),re=u===79?Te("",void 0):yl(u)?N.createTemplateLiteralLikeNode(u,"","",void 0):u===8?F("",void 0):u===10?$("",void 0):u===279?N.createMissingDeclaration():Ye(u);return Q(re,z)}function Ia(u){let b=cr.get(u);return b===void 0&&cr.set(u,b=u),b}function Ss(u,b,O){if(u){$r++;let qe=L(),We=T(),$e=Ia(t.getTokenValue()),lt=t.hasExtendedUnicodeEscape();return it(),Q(Te($e,We,lt),qe)}if(T()===80)return Dt(O||ve.Private_identifiers_are_not_allowed_outside_class_bodies),Ss(!0);if(T()===0&&t.tryScan(()=>t.reScanInvalidIdentifier()===79))return Ss(!0);$r++;let j=T()===1,z=t.isReservedWord(),re=t.getTokenText(),Ee=z?ve.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:ve.Identifier_expected;return Jn(79,j,b||Ee,re)}function hc(u){return Ss(Tt(),void 0,u)}function wr(u,b){return Ss(kt(),u,b)}function zr(u){return Ss(fr(T()),u)}function xs(){return fr(T())||T()===10||T()===8}function Nd(){return fr(T())||T()===10}function Rv(u){if(T()===10||T()===8){let b=Di();return b.text=Ia(b.text),b}return u&&T()===22?jv():T()===80?gc():zr()}function Es(){return Rv(!0)}function jv(){let u=L();de(22);let b=It(Sr);return de(23),Q(N.createComputedPropertyName(b),u)}function gc(){let u=L(),b=Se(Ia(t.getTokenValue()));return _e(),Q(b,u)}function Ks(u){return T()===u&&Tr(Od)}function uu(){return _e(),t.hasPrecedingLineBreak()?!1:ta()}function Od(){switch(T()){case 85:return _e()===92;case 93:return _e(),T()===88?wt(Ld):T()===154?wt(Jv):r_();case 88:return Ld();case 124:case 137:case 151:return _e(),ta();default:return uu()}}function r_(){return T()===59||T()!==41&&T()!==128&&T()!==18&&ta()}function Jv(){return _e(),r_()}function Md(){return Wi(T())&&Tr(Od)}function ta(){return T()===22||T()===18||T()===41||T()===25||xs()}function Ld(){return _e(),T()===84||T()===98||T()===118||T()===59||T()===126&&wt(gh)||T()===132&&wt(yh)}function Xs(u,b){if(mu(u))return!0;switch(u){case 0:case 1:case 3:return!(T()===26&&b)&&vh();case 2:return T()===82||T()===88;case 4:return wt(om);case 5:return wt(Jb)||T()===26&&!b;case 6:return T()===22||xs();case 12:switch(T()){case 22:case 41:case 25:case 24:return!0;default:return xs()}case 18:return xs();case 9:return T()===22||T()===25||xs();case 24:return Nd();case 7:return T()===18?wt(Rd):b?kt()&&!fu():Fu()&&!fu();case 8:return tp();case 10:return T()===27||T()===25||tp();case 19:return T()===101||T()===85||kt();case 15:switch(T()){case 27:case 24:return!0}case 11:return T()===25||La();case 16:return Ec(!1);case 17:return Ec(!0);case 20:case 21:return T()===27||eo();case 22:return Oc();case 23:return fr(T());case 13:return fr(T())||T()===18;case 14:return!0}return Y.fail("Non-exhaustive case in 'isListElement'.")}function Rd(){if(Y.assert(T()===18),_e()===19){let u=_e();return u===27||u===18||u===94||u===117}return!0}function yc(){return _e(),kt()}function pu(){return _e(),fr(T())}function Fv(){return _e(),qT(T())}function fu(){return T()===117||T()===94?wt(jd):!1}function jd(){return _e(),La()}function Jd(){return _e(),eo()}function Na(u){if(T()===1)return!0;switch(u){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return T()===19;case 3:return T()===19||T()===82||T()===88;case 7:return T()===18||T()===94||T()===117;case 8:return Bv();case 19:return T()===31||T()===20||T()===18||T()===94||T()===117;case 11:return T()===21||T()===26;case 15:case 21:case 10:return T()===23;case 17:case 16:case 18:return T()===21||T()===23;case 20:return T()!==27;case 22:return T()===18||T()===19;case 13:return T()===31||T()===43;case 14:return T()===29&&wt(Xb);default:return!1}}function Bv(){return!!(ka()||jm(T())||T()===38)}function du(){for(let u=0;u<25;u++)if(hr&1<=0)}function zv(u){return u===6?ve.An_enum_member_name_must_be_followed_by_a_or:void 0}function ui(){let u=Er([],L());return u.isMissingList=!0,u}function Wv(u){return!!u.isMissingList}function Oa(u,b,O,j){if(de(O)){let z=mn(u,b);return de(j),z}return ui()}function Ys(u,b){let O=L(),j=u?zr(b):wr(b);for(;Ot(24)&&T()!==29;)j=Q(N.createQualifiedName(j,bc(u,!1)),O);return j}function Tu(u,b){return Q(N.createQualifiedName(u,b),u.pos)}function bc(u,b){if(t.hasPrecedingLineBreak()&&fr(T())&&wt(Qu))return Jn(79,!0,ve.Identifier_expected);if(T()===80){let O=gc();return b?O:Jn(79,!0,ve.Identifier_expected)}return u?zr():wr()}function Su(u){let b=L(),O=[],j;do j=Hv(u),O.push(j);while(j.literal.kind===16);return Er(O,b)}function Wd(u){let b=L();return Q(N.createTemplateExpression(Hd(u),Su(u)),b)}function xu(){let u=L();return Q(N.createTemplateLiteralType(Hd(!1),Vd()),u)}function Vd(){let u=L(),b=[],O;do O=Vv(),b.push(O);while(O.literal.kind===16);return Er(b,u)}function Vv(){let u=L();return Q(N.createTemplateLiteralTypeSpan(sr(),Eu(!1)),u)}function Eu(u){return T()===19?(Yt(u),Tc()):ea(17,ve._0_expected,Br(19))}function Hv(u){let b=L();return Q(N.createTemplateSpan(It(Sr),Eu(u)),b)}function Di(){return n_(T())}function Hd(u){u&&$t();let b=n_(T());return Y.assert(b.kind===15,"Template head has wrong token kind"),b}function Tc(){let u=n_(T());return Y.assert(u.kind===16||u.kind===17,"Template fragment has wrong token kind"),u}function Gd(u){let b=u===14||u===17,O=t.getTokenText();return O.substring(1,O.length-(t.isUnterminated()?0:b?1:2))}function n_(u){let b=L(),O=yl(u)?N.createTemplateLiteralLikeNode(u,t.getTokenValue(),Gd(u),t.getTokenFlags()&2048):u===8?F(t.getTokenValue(),t.getNumericLiteralFlags()):u===10?$(t.getTokenValue(),void 0,t.hasExtendedUnicodeEscape()):ky(u)?ae(u,t.getTokenValue()):Y.fail();return t.hasExtendedUnicodeEscape()&&(O.hasExtendedUnicodeEscape=!0),t.isUnterminated()&&(O.isUnterminated=!0),_e(),Q(O,b)}function wu(){return Ys(!0,ve.Type_expected)}function Qs(){if(!t.hasPrecedingLineBreak()&&Wt()===29)return Oa(20,sr,29,31)}function Sc(){let u=L();return Q(N.createTypeReferenceNode(wu(),Qs()),u)}function Cu(u){switch(u.kind){case 180:return va(u.typeName);case 181:case 182:{let{parameters:b,type:O}=u;return Wv(b)||Cu(O)}case 193:return Cu(u.type);default:return!1}}function Gv(u){return _e(),Q(N.createTypePredicateNode(void 0,u,sr()),u.pos)}function $d(){let u=L();return _e(),Q(N.createThisTypeNode(),u)}function Kd(){let u=L();return _e(),Q(N.createJSDocAllType(),u)}function $v(){let u=L();return _e(),Q(N.createJSDocNonNullableType(Lu(),!1),u)}function Xd(){let u=L();return _e(),T()===27||T()===19||T()===21||T()===31||T()===63||T()===51?Q(N.createJSDocUnknownType(),u):Q(N.createJSDocNullableType(sr(),!1),u)}function Kv(){let u=L(),b=fe();if(wt(qh)){_e();let O=ra(36),j=pi(58,!1);return St(Q(N.createJSDocFunctionType(O,j),u),b)}return Q(N.createTypeReferenceNode(zr(),void 0),u)}function Yd(){let u=L(),b;return(T()===108||T()===103)&&(b=zr(),de(58)),Q(N.createParameterDeclaration(void 0,void 0,b,void 0,xc(),void 0),u)}function xc(){t.setInJSDocType(!0);let u=L();if(Ot(142)){let j=N.createJSDocNamepathType(void 0);e:for(;;)switch(T()){case 19:case 1:case 27:case 5:break e;default:Ge()}return t.setInJSDocType(!1),Q(j,u)}let b=Ot(25),O=Ju();return t.setInJSDocType(!1),b&&(O=Q(N.createJSDocVariadicType(O),u)),T()===63?(_e(),Q(N.createJSDocOptionalType(O),u)):O}function Xv(){let u=L();de(112);let b=Ys(!0),O=t.hasPrecedingLineBreak()?void 0:Nc();return Q(N.createTypeQueryNode(b,O),u)}function Qd(){let u=L(),b=ki(!1,!0),O=wr(),j,z;Ot(94)&&(eo()||!La()?j=sr():z=Wu());let re=Ot(63)?sr():void 0,Ee=N.createTypeParameterDeclaration(b,O,j,re);return Ee.expression=z,Q(Ee,u)}function Xn(){if(T()===29)return Oa(19,Qd,29,31)}function Ec(u){return T()===25||tp()||Wi(T())||T()===59||eo(!u)}function Zd(u){let b=no(ve.Private_identifiers_cannot_be_used_as_parameters);return hf(b)===0&&!Ke(u)&&Wi(T())&&_e(),b}function em(){return Tt()||T()===22||T()===18}function Au(u){return Pu(u)}function tm(u){return Pu(u,!1)}function Pu(u){let b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,O=L(),j=fe(),z=u?Xi(()=>ki(!0)):Aa(()=>ki(!0));if(T()===108){let We=N.createParameterDeclaration(z,void 0,Ss(!0),void 0,Ma(),void 0),$e=pa(z);return $e&&ie($e,ve.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),St(Q(We,O),j)}let re=br;br=!1;let Ee=dr(25);if(!b&&!em())return;let qe=St(Q(N.createParameterDeclaration(z,Ee,Zd(z),dr(57),Ma(),Ra()),O),j);return br=re,qe}function pi(u,b){if(rm(u,b))return gr(Ju)}function rm(u,b){return u===38?(de(u),!0):Ot(58)?!0:b&&T()===38?(Dt(ve._0_expected,Br(58)),_e(),!0):!1}function wc(u,b){let O=Yi(),j=xn();Le(!!(u&1)),ot(!!(u&2));let z=u&32?mn(17,Yd):mn(16,()=>b?Au(j):tm(j));return Le(O),ot(j),z}function ra(u){if(!de(20))return ui();let b=wc(u,!0);return de(21),b}function i_(){Ot(27)||En()}function nm(u){let b=L(),O=fe();u===177&&de(103);let j=Xn(),z=ra(4),re=pi(58,!0);i_();let Ee=u===176?N.createCallSignature(j,z,re):N.createConstructSignature(j,z,re);return St(Q(Ee,b),O)}function im(){return T()===22&&wt(Zs)}function Zs(){if(_e(),T()===25||T()===23)return!0;if(Wi(T())){if(_e(),kt())return!0}else if(kt())_e();else return!1;return T()===58||T()===27?!0:T()!==57?!1:(_e(),T()===58||T()===27||T()===23)}function am(u,b,O){let j=Oa(16,()=>Au(!1),22,23),z=Ma();i_();let re=N.createIndexSignature(O,j,z);return St(Q(re,u),b)}function sm(u,b,O){let j=Es(),z=dr(57),re;if(T()===20||T()===29){let Ee=Xn(),qe=ra(4),We=pi(58,!0);re=N.createMethodSignature(O,j,z,Ee,qe,We)}else{let Ee=Ma();re=N.createPropertySignature(O,j,z,Ee),T()===63&&(re.initializer=Ra())}return i_(),St(Q(re,u),b)}function om(){if(T()===20||T()===29||T()===137||T()===151)return!0;let u=!1;for(;Wi(T());)u=!0,_e();return T()===22?!0:(xs()&&(u=!0,_e()),u?T()===20||T()===29||T()===57||T()===58||T()===27||ka():!1)}function Du(){if(T()===20||T()===29)return nm(176);if(T()===103&&wt(a_))return nm(177);let u=L(),b=fe(),O=ki(!1);return Ks(137)?Fa(u,b,O,174,4):Ks(151)?Fa(u,b,O,175,4):im()?am(u,b,O):sm(u,b,O)}function a_(){return _e(),T()===20||T()===29}function Yv(){return _e()===24}function ku(){switch(_e()){case 20:case 29:case 24:return!0}return!1}function Qv(){let u=L();return Q(N.createTypeLiteralNode(Iu()),u)}function Iu(){let u;return de(18)?(u=Kn(4,Du),de(19)):u=ui(),u}function Zv(){return _e(),T()===39||T()===40?_e()===146:(T()===146&&_e(),T()===22&&yc()&&_e()===101)}function _m(){let u=L(),b=zr();de(101);let O=sr();return Q(N.createTypeParameterDeclaration(void 0,b,O,void 0),u)}function eb(){let u=L();de(18);let b;(T()===146||T()===39||T()===40)&&(b=sn(),b.kind!==146&&de(146)),de(22);let O=_m(),j=Ot(128)?sr():void 0;de(23);let z;(T()===57||T()===39||T()===40)&&(z=sn(),z.kind!==57&&de(57));let re=Ma();En();let Ee=Kn(4,Du);return de(19),Q(N.createMappedTypeNode(b,O,j,z,re,Ee),u)}function Nu(){let u=L();if(Ot(25))return Q(N.createRestTypeNode(sr()),u);let b=sr();if(uE(b)&&b.pos===b.type.pos){let O=N.createOptionalTypeNode(b.type);return Rt(O,b),O.flags=b.flags,O}return b}function cm(){return _e()===58||T()===57&&_e()===58}function lm(){return T()===25?fr(_e())&&cm():fr(T())&&cm()}function tb(){if(wt(lm)){let u=L(),b=fe(),O=dr(25),j=zr(),z=dr(57);de(58);let re=Nu(),Ee=N.createNamedTupleMember(O,j,z,re);return St(Q(Ee,u),b)}return Nu()}function um(){let u=L();return Q(N.createTupleTypeNode(Oa(21,tb,22,23)),u)}function rb(){let u=L();de(20);let b=sr();return de(21),Q(N.createParenthesizedType(b),u)}function pm(){let u;if(T()===126){let b=L();_e();let O=Q(Ye(126),b);u=Er([O],b)}return u}function fm(){let u=L(),b=fe(),O=pm(),j=Ot(103);Y.assert(!O||j,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let z=Xn(),re=ra(4),Ee=pi(38,!1),qe=j?N.createConstructorTypeNode(O,z,re,Ee):N.createFunctionTypeNode(z,re,Ee);return St(Q(qe,u),b)}function Ou(){let u=sn();return T()===24?void 0:u}function dm(u){let b=L();u&&_e();let O=T()===110||T()===95||T()===104?sn():n_(T());return u&&(O=Q(N.createPrefixUnaryExpression(40,O),b)),Q(N.createLiteralTypeNode(O),b)}function mm(){return _e(),T()===100}function nb(){let u=L(),b=t.getTokenPos();de(18);let O=t.hasPrecedingLineBreak();de(130),de(58);let j=_p(!0);if(!de(19)){let z=Cn(Zt);z&&z.code===ve._0_expected.code&&Rl(z,Ro(Ur,b,1,ve.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return Q(N.createImportTypeAssertionContainer(j,O),u)}function Mu(){Gr|=2097152;let u=L(),b=Ot(112);de(100),de(20);let O=sr(),j;Ot(27)&&(j=nb()),de(21);let z=Ot(24)?wu():void 0,re=Qs();return Q(N.createImportTypeNode(O,j,z,re,b),u)}function hm(){return _e(),T()===8||T()===9}function Lu(){switch(T()){case 131:case 157:case 152:case 148:case 160:case 153:case 134:case 155:case 144:case 149:return Tr(Ou)||Sc();case 66:t.reScanAsteriskEqualsToken();case 41:return Kd();case 60:t.reScanQuestionToken();case 57:return Xd();case 98:return Kv();case 53:return $v();case 14:case 10:case 8:case 9:case 110:case 95:case 104:return dm();case 40:return wt(hm)?dm(!0):Sc();case 114:return sn();case 108:{let u=$d();return T()===140&&!t.hasPrecedingLineBreak()?Gv(u):u}case 112:return wt(mm)?Mu():Xv();case 18:return wt(Zv)?eb():Qv();case 22:return um();case 20:return rb();case 100:return Mu();case 129:return wt(Qu)?Cm():Sc();case 15:return xu();default:return Sc()}}function eo(u){switch(T()){case 131:case 157:case 152:case 148:case 160:case 134:case 146:case 153:case 156:case 114:case 155:case 104:case 108:case 112:case 144:case 18:case 22:case 29:case 51:case 50:case 103:case 10:case 8:case 9:case 110:case 95:case 149:case 41:case 57:case 53:case 25:case 138:case 100:case 129:case 14:case 15:return!0;case 98:return!u;case 40:return!u&&wt(hm);case 20:return!u&&wt(gm);default:return kt()}}function gm(){return _e(),T()===21||Ec(!1)||eo()}function ym(){let u=L(),b=Lu();for(;!t.hasPrecedingLineBreak();)switch(T()){case 53:_e(),b=Q(N.createJSDocNonNullableType(b,!0),u);break;case 57:if(wt(Jd))return b;_e(),b=Q(N.createJSDocNullableType(b,!0),u);break;case 22:if(de(22),eo()){let O=sr();de(23),b=Q(N.createIndexedAccessTypeNode(b,O),u)}else de(23),b=Q(N.createArrayTypeNode(b),u);break;default:return b}return b}function vm(u){let b=L();return de(u),Q(N.createTypeOperatorNode(u,Tm()),b)}function ib(){if(Ot(94)){let u=Ln(sr);if(bs()||T()!==57)return u}}function bm(){let u=L(),b=wr(),O=Tr(ib),j=N.createTypeParameterDeclaration(void 0,b,O);return Q(j,u)}function ab(){let u=L();return de(138),Q(N.createInferTypeNode(bm()),u)}function Tm(){let u=T();switch(u){case 141:case 156:case 146:return vm(u);case 138:return ab()}return gr(ym)}function Cc(u){if(ju()){let b=fm(),O;return $l(b)?O=u?ve.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:ve.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:O=u?ve.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:ve.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,ie(b,O),b}}function Sm(u,b,O){let j=L(),z=u===51,re=Ot(u),Ee=re&&Cc(z)||b();if(T()===u||re){let qe=[Ee];for(;Ot(u);)qe.push(Cc(z)||b());Ee=Q(O(Er(qe,j)),j)}return Ee}function Ru(){return Sm(50,Tm,N.createIntersectionTypeNode)}function sb(){return Sm(51,Ru,N.createUnionTypeNode)}function xm(){return _e(),T()===103}function ju(){return T()===29||T()===20&&wt(Em)?!0:T()===103||T()===126&&wt(xm)}function ob(){if(Wi(T())&&ki(!1),kt()||T()===108)return _e(),!0;if(T()===22||T()===18){let u=Zt.length;return no(),u===Zt.length}return!1}function Em(){return _e(),!!(T()===21||T()===25||ob()&&(T()===58||T()===27||T()===57||T()===63||T()===21&&(_e(),T()===38)))}function Ju(){let u=L(),b=kt()&&Tr(wm),O=sr();return b?Q(N.createTypePredicateNode(void 0,b,O),u):O}function wm(){let u=wr();if(T()===140&&!t.hasPrecedingLineBreak())return _e(),u}function Cm(){let u=L(),b=ea(129),O=T()===108?$d():wr(),j=Ot(140)?sr():void 0;return Q(N.createTypePredicateNode(b,O,j),u)}function sr(){if(nr&40960)return Ct(40960,sr);if(ju())return fm();let u=L(),b=sb();if(!bs()&&!t.hasPrecedingLineBreak()&&Ot(94)){let O=Ln(sr);de(57);let j=gr(sr);de(58);let z=gr(sr);return Q(N.createConditionalTypeNode(b,O,j,z),u)}return b}function Ma(){return Ot(58)?sr():void 0}function Fu(){switch(T()){case 108:case 106:case 104:case 110:case 95:case 8:case 9:case 10:case 14:case 15:case 20:case 22:case 18:case 98:case 84:case 103:case 43:case 68:case 79:return!0;case 100:return wt(ku);default:return kt()}}function La(){if(Fu())return!0;switch(T()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 45:case 46:case 29:case 133:case 125:case 80:case 59:return!0;default:return Jm()?!0:kt()}}function Am(){return T()!==18&&T()!==98&&T()!==84&&T()!==59&&La()}function Sr(){let u=Ai();u&&Re(!1);let b=L(),O=Yr(!0),j;for(;j=dr(27);)O=Uu(O,j,Yr(!0),b);return u&&Re(!0),O}function Ra(){return Ot(63)?Yr(!0):void 0}function Yr(u){if(Pm())return Dm();let b=cb(u)||Mm(u);if(b)return b;let O=L(),j=s_(0);return j.kind===79&&T()===38?km(O,j,u,void 0):Do(j)&&G_(bt())?Uu(j,sn(),Yr(u),O):lb(j,O,u)}function Pm(){return T()===125?Yi()?!0:wt(Zu):!1}function _b(){return _e(),!t.hasPrecedingLineBreak()&&kt()}function Dm(){let u=L();return _e(),!t.hasPrecedingLineBreak()&&(T()===41||La())?Q(N.createYieldExpression(dr(41),Yr(!0)),u):Q(N.createYieldExpression(void 0,void 0),u)}function km(u,b,O,j){Y.assert(T()===38,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let z=N.createParameterDeclaration(void 0,void 0,b,void 0,void 0,void 0);Q(z,b.pos);let re=Er([z],z.pos,z.end),Ee=ea(38),qe=Bu(!!j,O),We=N.createArrowFunction(j,void 0,re,void 0,Ee,qe);return He(Q(We,u))}function cb(u){let b=Im();if(b!==0)return b===1?Rm(!0,!0):Tr(()=>Om(u))}function Im(){return T()===20||T()===29||T()===132?wt(Nm):T()===38?1:0}function Nm(){if(T()===132&&(_e(),t.hasPrecedingLineBreak()||T()!==20&&T()!==29))return 0;let u=T(),b=_e();if(u===20){if(b===21)switch(_e()){case 38:case 58:case 18:return 1;default:return 0}if(b===22||b===18)return 2;if(b===25)return 1;if(Wi(b)&&b!==132&&wt(yc))return _e()===128?0:1;if(!kt()&&b!==108)return 0;switch(_e()){case 58:return 1;case 57:return _e(),T()===58||T()===27||T()===63||T()===21?1:0;case 27:case 63:case 21:return 2}return 0}else return Y.assert(u===29),!kt()&&T()!==85?0:pr===1?wt(()=>{Ot(85);let j=_e();if(j===94)switch(_e()){case 63:case 31:case 43:return!1;default:return!0}else if(j===27||j===63)return!0;return!1})?1:0:2}function Om(u){let b=t.getTokenPos();if(On!=null&&On.has(b))return;let O=Rm(!1,u);return O||(On||(On=new Set)).add(b),O}function Mm(u){if(T()===132&&wt(Lm)===1){let b=L(),O=sp(),j=s_(0);return km(b,j,u,O)}}function Lm(){if(T()===132){if(_e(),t.hasPrecedingLineBreak()||T()===38)return 0;let u=s_(0);if(!t.hasPrecedingLineBreak()&&u.kind===79&&T()===38)return 1}return 0}function Rm(u,b){let O=L(),j=fe(),z=sp(),re=Ke(z,Ul)?2:0,Ee=Xn(),qe;if(de(20)){if(u)qe=wc(re,u);else{let di=wc(re,u);if(!di)return;qe=di}if(!de(21)&&!u)return}else{if(!u)return;qe=ui()}let We=T()===58,$e=pi(58,!1);if($e&&!u&&Cu($e))return;let lt=$e;for(;(lt==null?void 0:lt.kind)===193;)lt=lt.type;let Jt=lt&&dd(lt);if(!u&&T()!==38&&(Jt||T()!==18))return;let Lt=T(),At=ea(38),kr=Lt===38||Lt===18?Bu(Ke(z,Ul),b):wr();if(!b&&We&&T()!==58)return;let Fn=N.createArrowFunction(z,Ee,qe,$e,At,kr);return St(Q(Fn,O),j)}function Bu(u,b){if(T()===18)return Dc(u?2:0);if(T()!==26&&T()!==98&&T()!==84&&vh()&&!Am())return Dc(16|(u?2:0));let O=br;br=!1;let j=u?Xi(()=>Yr(b)):Aa(()=>Yr(b));return br=O,j}function lb(u,b,O){let j=dr(57);if(!j)return u;let z;return Q(N.createConditionalExpression(u,j,Ct(r,()=>Yr(!1)),z=ea(58),xl(z)?Yr(O):Jn(79,!1,ve._0_expected,Br(58))),b)}function s_(u){let b=L(),O=Wu();return qu(u,O,b)}function jm(u){return u===101||u===162}function qu(u,b,O){for(;;){bt();let j=Dl(T());if(!(T()===42?j>=u:j>u)||T()===101&&Qi())break;if(T()===128||T()===150){if(t.hasPrecedingLineBreak())break;{let re=T();_e(),b=re===150?Fm(b,sr()):Bm(b,sr())}}else b=Uu(b,sn(),s_(j),O)}return b}function Jm(){return Qi()&&T()===101?!1:Dl(T())>0}function Fm(u,b){return Q(N.createSatisfiesExpression(u,b),u.pos)}function Uu(u,b,O,j){return Q(N.createBinaryExpression(u,b,O),j)}function Bm(u,b){return Q(N.createAsExpression(u,b),u.pos)}function qm(){let u=L();return Q(N.createPrefixUnaryExpression(T(),dt(na)),u)}function Um(){let u=L();return Q(N.createDeleteExpression(dt(na)),u)}function ub(){let u=L();return Q(N.createTypeOfExpression(dt(na)),u)}function zm(){let u=L();return Q(N.createVoidExpression(dt(na)),u)}function pb(){return T()===133?xn()?!0:wt(Zu):!1}function zu(){let u=L();return Q(N.createAwaitExpression(dt(na)),u)}function Wu(){if(Wm()){let O=L(),j=Vm();return T()===42?qu(Dl(T()),j,O):j}let u=T(),b=na();if(T()===42){let O=Ar(_r,b.pos),{end:j}=b;b.kind===213?Z(O,j,ve.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):Z(O,j,ve.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,Br(u))}return b}function na(){switch(T()){case 39:case 40:case 54:case 53:return qm();case 89:return Um();case 112:return ub();case 114:return zm();case 29:return pr===1?o_(!0):Zm();case 133:if(pb())return zu();default:return Vm()}}function Wm(){switch(T()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 133:return!1;case 29:if(pr!==1)return!1;default:return!0}}function Vm(){if(T()===45||T()===46){let b=L();return Q(N.createPrefixUnaryExpression(T(),dt(to)),b)}else if(pr===1&&T()===29&&wt(Fv))return o_(!0);let u=to();if(Y.assert(Do(u)),(T()===45||T()===46)&&!t.hasPrecedingLineBreak()){let b=T();return _e(),Q(N.createPostfixUnaryExpression(u,b),u.pos)}return u}function to(){let u=L(),b;return T()===100?wt(a_)?(Gr|=2097152,b=sn()):wt(Yv)?(_e(),_e(),b=Q(N.createMetaProperty(100,zr()),u),Gr|=4194304):b=Hm():b=T()===106?Vu():Hm(),$u(u,b)}function Hm(){let u=L(),b=Ku();return Ja(u,b,!0)}function Vu(){let u=L(),b=sn();if(T()===29){let O=L(),j=Tr(Pc);j!==void 0&&(Z(O,L(),ve.super_may_not_use_type_arguments),__()||(b=N.createExpressionWithTypeArguments(b,j)))}return T()===20||T()===24||T()===22?b:(ea(24,ve.super_must_be_followed_by_an_argument_list_or_member_access),Q(Ve(b,bc(!0,!0)),u))}function o_(u,b,O){let j=L(),z=Km(u),re;if(z.kind===283){let Ee=$m(z),qe,We=Ee[Ee.length-1];if((We==null?void 0:We.kind)===281&&!Hi(We.openingElement.tagName,We.closingElement.tagName)&&Hi(z.tagName,We.closingElement.tagName)){let $e=We.children.end,lt=Q(N.createJsxElement(We.openingElement,We.children,Q(N.createJsxClosingElement(Q(Te(""),$e,$e)),$e,$e)),We.openingElement.pos,$e);Ee=Er([...Ee.slice(0,Ee.length-1),lt],Ee.pos,$e),qe=We.closingElement}else qe=Qm(z,u),Hi(z.tagName,qe.tagName)||(O&&tu(O)&&Hi(qe.tagName,O.tagName)?ie(z.tagName,ve.JSX_element_0_has_no_corresponding_closing_tag,B_(_r,z.tagName)):ie(qe.tagName,ve.Expected_corresponding_JSX_closing_tag_for_0,B_(_r,z.tagName)));re=Q(N.createJsxElement(z,Ee,qe),j)}else z.kind===286?re=Q(N.createJsxFragment(z,$m(z),gb(u)),j):(Y.assert(z.kind===282),re=z);if(u&&T()===29){let Ee=typeof b>"u"?re.pos:b,qe=Tr(()=>o_(!0,Ee));if(qe){let We=Jn(27,!1);return $f(We,qe.pos,0),Z(Ar(_r,Ee),qe.end,ve.JSX_expressions_must_have_one_parent_element),Q(N.createBinaryExpression(re,We,qe),j)}}return re}function fb(){let u=L(),b=N.createJsxText(t.getTokenValue(),ar===12);return ar=t.scanJsxToken(),Q(b,u)}function Gm(u,b){switch(b){case 1:if(uv(u))ie(u,ve.JSX_fragment_has_no_corresponding_closing_tag);else{let O=u.tagName,j=Ar(_r,O.pos);Z(j,O.end,ve.JSX_element_0_has_no_corresponding_closing_tag,B_(_r,u.tagName))}return;case 30:case 7:return;case 11:case 12:return fb();case 18:return Xm(!1);case 29:return o_(!1,void 0,u);default:return Y.assertNever(b)}}function $m(u){let b=[],O=L(),j=hr;for(hr|=1<<14;;){let z=Gm(u,ar=t.reScanJsxToken());if(!z||(b.push(z),tu(u)&&(z==null?void 0:z.kind)===281&&!Hi(z.openingElement.tagName,z.closingElement.tagName)&&Hi(u.tagName,z.closingElement.tagName)))break}return hr=j,Er(b,O)}function db(){let u=L();return Q(N.createJsxAttributes(Kn(13,mb)),u)}function Km(u){let b=L();if(de(29),T()===31)return Lr(),Q(N.createJsxOpeningFragment(),b);let O=Ac(),j=nr&262144?void 0:Nc(),z=db(),re;return T()===31?(Lr(),re=N.createJsxOpeningElement(O,j,z)):(de(43),de(31,void 0,!1)&&(u?_e():Lr()),re=N.createJsxSelfClosingElement(O,j,z)),Q(re,b)}function Ac(){let u=L();Dr();let b=T()===108?sn():zr();for(;Ot(24);)b=Q(Ve(b,bc(!0,!1)),u);return b}function Xm(u){let b=L();if(!de(18))return;let O,j;return T()!==19&&(O=dr(25),j=Sr()),u?de(19):de(19,void 0,!1)&&Lr(),Q(N.createJsxExpression(O,j),b)}function mb(){if(T()===18)return hb();Dr();let u=L();return Q(N.createJsxAttribute(zr(),Ym()),u)}function Ym(){if(T()===63){if(yr()===10)return Di();if(T()===18)return Xm(!0);if(T()===29)return o_(!0);Dt(ve.or_JSX_element_expected)}}function hb(){let u=L();de(18),de(25);let b=Sr();return de(19),Q(N.createJsxSpreadAttribute(b),u)}function Qm(u,b){let O=L();de(30);let j=Ac();return de(31,void 0,!1)&&(b||!Hi(u.tagName,j)?_e():Lr()),Q(N.createJsxClosingElement(j),O)}function gb(u){let b=L();return de(30),de(31,ve.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(u?_e():Lr()),Q(N.createJsxJsxClosingFragment(),b)}function Zm(){Y.assert(pr!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let u=L();de(29);let b=sr();de(31);let O=na();return Q(N.createTypeAssertion(b,O),u)}function yb(){return _e(),fr(T())||T()===22||__()}function eh(){return T()===28&&wt(yb)}function Hu(u){if(u.flags&32)return!0;if(Uo(u)){let b=u.expression;for(;Uo(b)&&!(b.flags&32);)b=b.expression;if(b.flags&32){for(;Uo(u);)u.flags|=32,u=u.expression;return!0}}return!1}function fi(u,b,O){let j=bc(!0,!0),z=O||Hu(b),re=z?pt(b,O,j):Ve(b,j);if(z&&vn(re.name)&&ie(re.name,ve.An_optional_chain_cannot_contain_private_identifiers),ev(b)&&b.typeArguments){let Ee=b.typeArguments.pos-1,qe=Ar(_r,b.typeArguments.end)+1;Z(Ee,qe,ve.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return Q(re,u)}function ja(u,b,O){let j;if(T()===23)j=Jn(79,!0,ve.An_element_access_expression_should_take_an_argument);else{let re=It(Sr);Ta(re)&&(re.text=Ia(re.text)),j=re}de(23);let z=O||Hu(b)?Nt(b,O,j):Gt(b,j);return Q(z,u)}function Ja(u,b,O){for(;;){let j,z=!1;if(O&&eh()?(j=ea(28),z=fr(T())):z=Ot(24),z){b=fi(u,b,j);continue}if((j||!Ai())&&Ot(22)){b=ja(u,b,j);continue}if(__()){b=!j&&b.kind===230?Gu(u,b.expression,j,b.typeArguments):Gu(u,b,j,void 0);continue}if(!j){if(T()===53&&!t.hasPrecedingLineBreak()){_e(),b=Q(N.createNonNullExpression(b),u);continue}let re=Tr(Pc);if(re){b=Q(N.createExpressionWithTypeArguments(b,re),u);continue}}return b}}function __(){return T()===14||T()===15}function Gu(u,b,O,j){let z=N.createTaggedTemplateExpression(b,j,T()===14?($t(),Di()):Wd(!0));return(O||b.flags&32)&&(z.flags|=32),z.questionDotToken=O,Q(z,u)}function $u(u,b){for(;;){b=Ja(u,b,!0);let O,j=dr(28);if(j&&(O=Tr(Pc),__())){b=Gu(u,b,j,O);continue}if(O||T()===20){!j&&b.kind===230&&(O=b.typeArguments,b=b.expression);let z=th(),re=j||Hu(b)?er(b,j,O,z):Xt(b,O,z);b=Q(re,u);continue}if(j){let z=Jn(79,!1,ve.Identifier_expected);b=Q(pt(b,j,z),u)}break}return b}function th(){de(20);let u=mn(11,ih);return de(21),u}function Pc(){if(nr&262144||Wt()!==29)return;_e();let u=mn(20,sr);if(bt()===31)return _e(),u&&vb()?u:void 0}function vb(){switch(T()){case 20:case 14:case 15:return!0;case 29:case 31:case 39:case 40:return!1}return t.hasPrecedingLineBreak()||Jm()||!La()}function Ku(){switch(T()){case 8:case 9:case 10:case 14:return Di();case 108:case 106:case 104:case 110:case 95:return sn();case 20:return bb();case 22:return ah();case 18:return Xu();case 132:if(!wt(yh))break;return Yu();case 59:return Ub();case 84:return Ih();case 98:return Yu();case 103:return Tb();case 43:case 68:if(jt()===13)return Di();break;case 15:return Wd(!1);case 80:return gc()}return wr(ve.Expression_expected)}function bb(){let u=L(),b=fe();de(20);let O=It(Sr);return de(21),St(Q(Hr(O),u),b)}function rh(){let u=L();de(25);let b=Yr(!0);return Q(N.createSpreadElement(b),u)}function nh(){return T()===25?rh():T()===27?Q(N.createOmittedExpression(),L()):Yr(!0)}function ih(){return Ct(r,nh)}function ah(){let u=L(),b=t.getTokenPos(),O=de(22),j=t.hasPrecedingLineBreak(),z=mn(15,nh);return Ts(22,23,O,b),Q(Oe(z,j),u)}function sh(){let u=L(),b=fe();if(dr(25)){let lt=Yr(!0);return St(Q(N.createSpreadAssignment(lt),u),b)}let O=ki(!0);if(Ks(137))return Fa(u,b,O,174,0);if(Ks(151))return Fa(u,b,O,175,0);let j=dr(41),z=kt(),re=Es(),Ee=dr(57),qe=dr(53);if(j||T()===20||T()===29)return Ah(u,b,O,j,re,Ee,qe);let We;if(z&&T()!==58){let lt=dr(63),Jt=lt?It(()=>Yr(!0)):void 0;We=N.createShorthandPropertyAssignment(re,Jt),We.equalsToken=lt}else{de(58);let lt=It(()=>Yr(!0));We=N.createPropertyAssignment(re,lt)}return We.modifiers=O,We.questionToken=Ee,We.exclamationToken=qe,St(Q(We,u),b)}function Xu(){let u=L(),b=t.getTokenPos(),O=de(18),j=t.hasPrecedingLineBreak(),z=mn(12,sh,!0);return Ts(18,19,O,b),Q(oe(z,j),u)}function Yu(){let u=Ai();Re(!1);let b=L(),O=fe(),j=ki(!1);de(98);let z=dr(41),re=z?1:0,Ee=Ke(j,Ul)?2:0,qe=re&&Ee?vs(ro):re?ys(ro):Ee?Xi(ro):ro(),We=Xn(),$e=ra(re|Ee),lt=pi(58,!1),Jt=Dc(re|Ee);Re(u);let Lt=N.createFunctionExpression(j,z,qe,We,$e,lt,Jt);return St(Q(Lt,b),O)}function ro(){return Tt()?hc():void 0}function Tb(){let u=L();if(de(103),Ot(24)){let re=zr();return Q(N.createMetaProperty(103,re),u)}let b=L(),O=Ja(b,Ku(),!1),j;O.kind===230&&(j=O.typeArguments,O=O.expression),T()===28&&Dt(ve.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,B_(_r,O));let z=T()===20?th():void 0;return Q(Tn(O,j,z),u)}function ws(u,b){let O=L(),j=fe(),z=t.getTokenPos(),re=de(18,b);if(re||u){let Ee=t.hasPrecedingLineBreak(),qe=Kn(1,on);Ts(18,19,re,z);let We=St(Q(Gi(qe,Ee),O),j);return T()===63&&(Dt(ve.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),_e()),We}else{let Ee=ui();return St(Q(Gi(Ee,void 0),O),j)}}function Dc(u,b){let O=Yi();Le(!!(u&1));let j=xn();ot(!!(u&2));let z=br;br=!1;let re=Ai();re&&Re(!1);let Ee=ws(!!(u&16),b);return re&&Re(!0),br=z,Le(O),ot(j),Ee}function oh(){let u=L(),b=fe();return de(26),St(Q(N.createEmptyStatement(),u),b)}function Sb(){let u=L(),b=fe();de(99);let O=t.getTokenPos(),j=de(20),z=It(Sr);Ts(20,21,j,O);let re=on(),Ee=Ot(91)?on():void 0;return St(Q(Ut(z,re,Ee),u),b)}function _h(){let u=L(),b=fe();de(90);let O=on();de(115);let j=t.getTokenPos(),z=de(20),re=It(Sr);return Ts(20,21,z,j),Ot(26),St(Q(N.createDoStatement(O,re),u),b)}function xb(){let u=L(),b=fe();de(115);let O=t.getTokenPos(),j=de(20),z=It(Sr);Ts(20,21,j,O);let re=on();return St(Q(kn(z,re),u),b)}function ch(){let u=L(),b=fe();de(97);let O=dr(133);de(20);let j;T()!==26&&(T()===113||T()===119||T()===85?j=Eh(!0):j=Mr(Sr));let z;if(O?de(162):Ot(162)){let re=It(()=>Yr(!0));de(21),z=mr(O,j,re,on())}else if(Ot(101)){let re=It(Sr);de(21),z=N.createForInStatement(j,re,on())}else{de(26);let re=T()!==26&&T()!==21?It(Sr):void 0;de(26);let Ee=T()!==21?It(Sr):void 0;de(21),z=an(j,re,Ee,on())}return St(Q(z,u),b)}function lh(u){let b=L(),O=fe();de(u===249?81:86);let j=ka()?void 0:wr();En();let z=u===249?N.createBreakStatement(j):N.createContinueStatement(j);return St(Q(z,b),O)}function uh(){let u=L(),b=fe();de(105);let O=ka()?void 0:It(Sr);return En(),St(Q(N.createReturnStatement(O),u),b)}function Eb(){let u=L(),b=fe();de(116);let O=t.getTokenPos(),j=de(20),z=It(Sr);Ts(20,21,j,O);let re=Mt(33554432,on);return St(Q(N.createWithStatement(z,re),u),b)}function wb(){let u=L(),b=fe();de(82);let O=It(Sr);de(58);let j=Kn(3,on);return St(Q(N.createCaseClause(O,j),u),b)}function ph(){let u=L();de(88),de(58);let b=Kn(3,on);return Q(N.createDefaultClause(b),u)}function Cb(){return T()===82?wb():ph()}function fh(){let u=L();de(18);let b=Kn(2,Cb);return de(19),Q(N.createCaseBlock(b),u)}function Ab(){let u=L(),b=fe();de(107),de(20);let O=It(Sr);de(21);let j=fh();return St(Q(N.createSwitchStatement(O,j),u),b)}function dh(){let u=L(),b=fe();de(109);let O=t.hasPrecedingLineBreak()?void 0:It(Sr);return O===void 0&&($r++,O=Q(Te(""),L())),t_()||Zi(O),St(Q(N.createThrowStatement(O),u),b)}function Pb(){let u=L(),b=fe();de(111);let O=ws(!1),j=T()===83?mh():void 0,z;return(!j||T()===96)&&(de(96,ve.catch_or_finally_expected),z=ws(!1)),St(Q(N.createTryStatement(O,j,z),u),b)}function mh(){let u=L();de(83);let b;Ot(20)?(b=Ic(),de(21)):b=void 0;let O=ws(!1);return Q(N.createCatchClause(b,O),u)}function Db(){let u=L(),b=fe();return de(87),En(),St(Q(N.createDebuggerStatement(),u),b)}function hh(){let u=L(),b=fe(),O,j=T()===20,z=It(Sr);return yt(z)&&Ot(58)?O=N.createLabeledStatement(z,on()):(t_()||Zi(z),O=fn(z),j&&(b=!1)),St(Q(O,u),b)}function Qu(){return _e(),fr(T())&&!t.hasPrecedingLineBreak()}function gh(){return _e(),T()===84&&!t.hasPrecedingLineBreak()}function yh(){return _e(),T()===98&&!t.hasPrecedingLineBreak()}function Zu(){return _e(),(fr(T())||T()===8||T()===9||T()===10)&&!t.hasPrecedingLineBreak()}function kb(){for(;;)switch(T()){case 113:case 119:case 85:case 98:case 84:case 92:return!0;case 118:case 154:return _b();case 142:case 143:return Ob();case 126:case 127:case 132:case 136:case 121:case 122:case 123:case 146:if(_e(),t.hasPrecedingLineBreak())return!1;continue;case 159:return _e(),T()===18||T()===79||T()===93;case 100:return _e(),T()===10||T()===41||T()===18||fr(T());case 93:let u=_e();if(u===154&&(u=wt(_e)),u===63||u===41||u===18||u===88||u===128||u===59)return!0;continue;case 124:_e();continue;default:return!1}}function c_(){return wt(kb)}function vh(){switch(T()){case 59:case 26:case 18:case 113:case 119:case 98:case 84:case 92:case 99:case 90:case 115:case 97:case 86:case 81:case 105:case 116:case 107:case 109:case 111:case 87:case 83:case 96:return!0;case 100:return c_()||wt(ku);case 85:case 93:return c_();case 132:case 136:case 118:case 142:case 143:case 154:case 159:return!0;case 127:case 123:case 121:case 122:case 124:case 146:return c_()||!wt(Qu);default:return La()}}function bh(){return _e(),Tt()||T()===18||T()===22}function Ib(){return wt(bh)}function on(){switch(T()){case 26:return oh();case 18:return ws(!1);case 113:return rp(L(),fe(),void 0);case 119:if(Ib())return rp(L(),fe(),void 0);break;case 98:return np(L(),fe(),void 0);case 84:return Nh(L(),fe(),void 0);case 99:return Sb();case 90:return _h();case 115:return xb();case 97:return ch();case 86:return lh(248);case 81:return lh(249);case 105:return uh();case 116:return Eb();case 107:return Ab();case 109:return dh();case 111:case 83:case 96:return Pb();case 87:return Db();case 59:return ep();case 132:case 118:case 154:case 142:case 143:case 136:case 85:case 92:case 93:case 100:case 121:case 122:case 123:case 126:case 127:case 124:case 146:case 159:if(c_())return ep();break}return hh()}function Th(u){return u.kind===136}function ep(){let u=L(),b=fe(),O=ki(!0);if(Ke(O,Th)){let z=Nb(u);if(z)return z;for(let re of O)re.flags|=16777216;return Mt(16777216,()=>l_(u,b,O))}else return l_(u,b,O)}function Nb(u){return Mt(16777216,()=>{let b=mu(hr,u);if(b)return hu(b)})}function l_(u,b,O){switch(T()){case 113:case 119:case 85:return rp(u,b,O);case 98:return np(u,b,O);case 84:return Nh(u,b,O);case 118:return Hb(u,b,O);case 154:return Gb(u,b,O);case 92:return Kb(u,b,O);case 159:case 142:case 143:return Fh(u,b,O);case 100:return Qb(u,b,O);case 93:switch(_e(),T()){case 88:case 63:return _6(u,b,O);case 128:return Yb(u,b,O);default:return o6(u,b,O)}default:if(O){let j=Jn(279,!0,ve.Declaration_expected);return Gf(j,u),j.modifiers=O,j}return}}function Ob(){return _e(),!t.hasPrecedingLineBreak()&&(kt()||T()===10)}function kc(u,b){if(T()!==18){if(u&4){i_();return}if(ka()){En();return}}return Dc(u,b)}function Mb(){let u=L();if(T()===27)return Q(N.createOmittedExpression(),u);let b=dr(25),O=no(),j=Ra();return Q(N.createBindingElement(b,void 0,O,j),u)}function Sh(){let u=L(),b=dr(25),O=Tt(),j=Es(),z;O&&T()!==58?(z=j,j=void 0):(de(58),z=no());let re=Ra();return Q(N.createBindingElement(b,j,z,re),u)}function Lb(){let u=L();de(18);let b=mn(9,Sh);return de(19),Q(N.createObjectBindingPattern(b),u)}function xh(){let u=L();de(22);let b=mn(10,Mb);return de(23),Q(N.createArrayBindingPattern(b),u)}function tp(){return T()===18||T()===22||T()===80||Tt()}function no(u){return T()===22?xh():T()===18?Lb():hc(u)}function Rb(){return Ic(!0)}function Ic(u){let b=L(),O=fe(),j=no(ve.Private_identifiers_are_not_allowed_in_variable_declarations),z;u&&j.kind===79&&T()===53&&!t.hasPrecedingLineBreak()&&(z=sn());let re=Ma(),Ee=jm(T())?void 0:Ra(),qe=$i(j,z,re,Ee);return St(Q(qe,b),O)}function Eh(u){let b=L(),O=0;switch(T()){case 113:break;case 119:O|=1;break;case 85:O|=2;break;default:Y.fail()}_e();let j;if(T()===162&&wt(wh))j=ui();else{let z=Qi();xe(u),j=mn(8,u?Ic:Rb),xe(z)}return Q(dn(j,O),b)}function wh(){return yc()&&_e()===21}function rp(u,b,O){let j=Eh(!1);En();let z=pn(O,j);return St(Q(z,u),b)}function np(u,b,O){let j=xn(),z=Vn(O);de(98);let re=dr(41),Ee=z&1024?ro():hc(),qe=re?1:0,We=z&512?2:0,$e=Xn();z&1&&ot(!0);let lt=ra(qe|We),Jt=pi(58,!1),Lt=kc(qe|We,ve.or_expected);ot(j);let At=N.createFunctionDeclaration(O,re,Ee,$e,lt,Jt,Lt);return St(Q(At,u),b)}function jb(){if(T()===135)return de(135);if(T()===10&&wt(_e)===20)return Tr(()=>{let u=Di();return u.text==="constructor"?u:void 0})}function Ch(u,b,O){return Tr(()=>{if(jb()){let j=Xn(),z=ra(0),re=pi(58,!1),Ee=kc(0,ve.or_expected),qe=N.createConstructorDeclaration(O,z,Ee);return qe.typeParameters=j,qe.type=re,St(Q(qe,u),b)}})}function Ah(u,b,O,j,z,re,Ee,qe){let We=j?1:0,$e=Ke(O,Ul)?2:0,lt=Xn(),Jt=ra(We|$e),Lt=pi(58,!1),At=kc(We|$e,qe),kr=N.createMethodDeclaration(O,j,z,re,lt,Jt,Lt,At);return kr.exclamationToken=Ee,St(Q(kr,u),b)}function ip(u,b,O,j,z){let re=!z&&!t.hasPrecedingLineBreak()?dr(53):void 0,Ee=Ma(),qe=Ct(45056,Ra);mc(j,Ee,qe);let We=N.createPropertyDeclaration(O,j,z||re,Ee,qe);return St(Q(We,u),b)}function Ph(u,b,O){let j=dr(41),z=Es(),re=dr(57);return j||T()===20||T()===29?Ah(u,b,O,j,z,re,void 0,ve.or_expected):ip(u,b,O,z,re)}function Fa(u,b,O,j,z){let re=Es(),Ee=Xn(),qe=ra(0),We=pi(58,!1),$e=kc(z),lt=j===174?N.createGetAccessorDeclaration(O,re,qe,We,$e):N.createSetAccessorDeclaration(O,re,qe,$e);return lt.typeParameters=Ee,ic(lt)&&(lt.type=We),St(Q(lt,u),b)}function Jb(){let u;if(T()===59)return!0;for(;Wi(T());){if(u=T(),V3(u))return!0;_e()}if(T()===41||(xs()&&(u=T(),_e()),T()===22))return!0;if(u!==void 0){if(!ba(u)||u===151||u===137)return!0;switch(T()){case 20:case 29:case 53:case 58:case 63:case 57:return!0;default:return ka()}}return!1}function Fb(u,b,O){ea(124);let j=Dh(),z=St(Q(N.createClassStaticBlockDeclaration(j),u),b);return z.modifiers=O,z}function Dh(){let u=Yi(),b=xn();Le(!1),ot(!0);let O=ws(!1);return Le(u),ot(b),O}function Bb(){if(xn()&&T()===133){let u=L(),b=wr(ve.Expression_expected);_e();let O=Ja(u,b,!0);return $u(u,O)}return to()}function kh(){let u=L();if(!Ot(59))return;let b=ci(Bb);return Q(N.createDecorator(b),u)}function ap(u,b,O){let j=L(),z=T();if(T()===85&&b){if(!Tr(uu))return}else{if(O&&T()===124&&wt(Mc))return;if(u&&T()===124)return;if(!Md())return}return Q(Ye(z),j)}function ki(u,b,O){let j=L(),z,re,Ee,qe=!1,We=!1,$e=!1;if(u&&T()===59)for(;re=kh();)z=tr(z,re);for(;Ee=ap(qe,b,O);)Ee.kind===124&&(qe=!0),z=tr(z,Ee),We=!0;if(We&&u&&T()===59)for(;re=kh();)z=tr(z,re),$e=!0;if($e)for(;Ee=ap(qe,b,O);)Ee.kind===124&&(qe=!0),z=tr(z,Ee);return z&&Er(z,j)}function sp(){let u;if(T()===132){let b=L();_e();let O=Q(Ye(132),b);u=Er([O],b)}return u}function qb(){let u=L();if(T()===26)return _e(),Q(N.createSemicolonClassElement(),u);let b=fe(),O=ki(!0,!0,!0);if(T()===124&&wt(Mc))return Fb(u,b,O);if(Ks(137))return Fa(u,b,O,174,0);if(Ks(151))return Fa(u,b,O,175,0);if(T()===135||T()===10){let j=Ch(u,b,O);if(j)return j}if(im())return am(u,b,O);if(fr(T())||T()===10||T()===8||T()===41||T()===22)if(Ke(O,Th)){for(let z of O)z.flags|=16777216;return Mt(16777216,()=>Ph(u,b,O))}else return Ph(u,b,O);if(O){let j=Jn(79,!0,ve.Declaration_expected);return ip(u,b,O,j,void 0)}return Y.fail("Should not have attempted to parse class member declaration.")}function Ub(){let u=L(),b=fe(),O=ki(!0);if(T()===84)return op(u,b,O,228);let j=Jn(279,!0,ve.Expression_expected);return Gf(j,u),j.modifiers=O,j}function Ih(){return op(L(),fe(),void 0,228)}function Nh(u,b,O){return op(u,b,O,260)}function op(u,b,O,j){let z=xn();de(84);let re=Oh(),Ee=Xn();Ke(O,N8)&&ot(!0);let qe=Mh(),We;de(18)?(We=Vb(),de(19)):We=ui(),ot(z);let $e=j===260?N.createClassDeclaration(O,re,Ee,qe,We):N.createClassExpression(O,re,Ee,qe,We);return St(Q($e,u),b)}function Oh(){return Tt()&&!zb()?Ss(Tt()):void 0}function zb(){return T()===117&&wt(pu)}function Mh(){if(Oc())return Kn(22,Lh)}function Lh(){let u=L(),b=T();Y.assert(b===94||b===117),_e();let O=mn(7,Wb);return Q(N.createHeritageClause(b,O),u)}function Wb(){let u=L(),b=to();if(b.kind===230)return b;let O=Nc();return Q(N.createExpressionWithTypeArguments(b,O),u)}function Nc(){return T()===29?Oa(20,sr,29,31):void 0}function Oc(){return T()===94||T()===117}function Vb(){return Kn(5,qb)}function Hb(u,b,O){de(118);let j=wr(),z=Xn(),re=Mh(),Ee=Iu(),qe=N.createInterfaceDeclaration(O,j,z,re,Ee);return St(Q(qe,u),b)}function Gb(u,b,O){de(154);let j=wr(),z=Xn();de(63);let re=T()===139&&Tr(Ou)||sr();En();let Ee=N.createTypeAliasDeclaration(O,j,z,re);return St(Q(Ee,u),b)}function $b(){let u=L(),b=fe(),O=Es(),j=It(Ra);return St(Q(N.createEnumMember(O,j),u),b)}function Kb(u,b,O){de(92);let j=wr(),z;de(18)?(z=$s(()=>mn(6,$b)),de(19)):z=ui();let re=N.createEnumDeclaration(O,j,z);return St(Q(re,u),b)}function Rh(){let u=L(),b;return de(18)?(b=Kn(1,on),de(19)):b=ui(),Q(N.createModuleBlock(b),u)}function jh(u,b,O,j){let z=j&16,re=wr(),Ee=Ot(24)?jh(L(),!1,void 0,4|z):Rh(),qe=N.createModuleDeclaration(O,re,Ee,j);return St(Q(qe,u),b)}function Jh(u,b,O){let j=0,z;T()===159?(z=wr(),j|=1024):(z=Di(),z.text=Ia(z.text));let re;T()===18?re=Rh():En();let Ee=N.createModuleDeclaration(O,z,re,j);return St(Q(Ee,u),b)}function Fh(u,b,O){let j=0;if(T()===159)return Jh(u,b,O);if(Ot(143))j|=16;else if(de(142),T()===10)return Jh(u,b,O);return jh(u,b,O,j)}function Bh(){return T()===147&&wt(qh)}function qh(){return _e()===20}function Mc(){return _e()===18}function Xb(){return _e()===43}function Yb(u,b,O){de(128),de(143);let j=wr();En();let z=N.createNamespaceExportDeclaration(j);return z.modifiers=O,St(Q(z,u),b)}function Qb(u,b,O){de(100);let j=t.getStartPos(),z;kt()&&(z=wr());let re=!1;if(T()!==158&&(z==null?void 0:z.escapedText)==="type"&&(kt()||Zb())&&(re=!0,z=kt()?wr():void 0),z&&!e6())return t6(u,b,O,z,re);let Ee;(z||T()===41||T()===18)&&(Ee=r6(z,j,re),de(158));let qe=Lc(),We;T()===130&&!t.hasPrecedingLineBreak()&&(We=_p()),En();let $e=N.createImportDeclaration(O,Ee,qe,We);return St(Q($e,u),b)}function Uh(){let u=L(),b=fr(T())?zr():n_(10);de(58);let O=Yr(!0);return Q(N.createAssertEntry(b,O),u)}function _p(u){let b=L();u||de(130);let O=t.getTokenPos();if(de(18)){let j=t.hasPrecedingLineBreak(),z=mn(24,Uh,!0);if(!de(19)){let re=Cn(Zt);re&&re.code===ve._0_expected.code&&Rl(re,Ro(Ur,O,1,ve.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return Q(N.createAssertClause(z,j),b)}else{let j=Er([],L(),void 0,!1);return Q(N.createAssertClause(j,!1),b)}}function Zb(){return T()===41||T()===18}function e6(){return T()===27||T()===158}function t6(u,b,O,j,z){de(63);let re=cp();En();let Ee=N.createImportEqualsDeclaration(O,z,j,re);return St(Q(Ee,u),b)}function r6(u,b,O){let j;return(!u||Ot(27))&&(j=T()===41?Rc():zh(272)),Q(N.createImportClause(O,u,j),b)}function cp(){return Bh()?n6():Ys(!1)}function n6(){let u=L();de(147),de(20);let b=Lc();return de(21),Q(N.createExternalModuleReference(b),u)}function Lc(){if(T()===10){let u=Di();return u.text=Ia(u.text),u}else return Sr()}function Rc(){let u=L();de(41),de(128);let b=wr();return Q(N.createNamespaceImport(b),u)}function zh(u){let b=L(),O=u===272?N.createNamedImports(Oa(23,a6,18,19)):N.createNamedExports(Oa(23,i6,18,19));return Q(O,b)}function i6(){let u=fe();return St(Ba(278),u)}function a6(){return Ba(273)}function Ba(u){let b=L(),O=ba(T())&&!kt(),j=t.getTokenPos(),z=t.getTextPos(),re=!1,Ee,qe=!0,We=zr();if(We.escapedText==="type")if(T()===128){let Jt=zr();if(T()===128){let Lt=zr();fr(T())?(re=!0,Ee=Jt,We=lt(),qe=!1):(Ee=We,We=Lt,qe=!1)}else fr(T())?(Ee=We,qe=!1,We=lt()):(re=!0,We=Jt)}else fr(T())&&(re=!0,We=lt());qe&&T()===128&&(Ee=We,de(128),We=lt()),u===273&&O&&Z(j,z,ve.Identifier_expected);let $e=u===273?N.createImportSpecifier(re,Ee,We):N.createExportSpecifier(re,Ee,We);return Q($e,b);function lt(){return O=ba(T())&&!kt(),j=t.getTokenPos(),z=t.getTextPos(),zr()}}function s6(u){return Q(N.createNamespaceExport(zr()),u)}function o6(u,b,O){let j=xn();ot(!0);let z,re,Ee,qe=Ot(154),We=L();Ot(41)?(Ot(128)&&(z=s6(We)),de(158),re=Lc()):(z=zh(276),(T()===158||T()===10&&!t.hasPrecedingLineBreak())&&(de(158),re=Lc())),re&&T()===130&&!t.hasPrecedingLineBreak()&&(Ee=_p()),En(),ot(j);let $e=N.createExportDeclaration(O,qe,z,re,Ee);return St(Q($e,u),b)}function _6(u,b,O){let j=xn();ot(!0);let z;Ot(63)?z=!0:de(88);let re=Yr(!0);En(),ot(j);let Ee=N.createExportAssignment(O,z,re);return St(Q(Ee,u),b)}let io;(u=>{u[u.SourceElements=0]="SourceElements",u[u.BlockStatements=1]="BlockStatements",u[u.SwitchClauses=2]="SwitchClauses",u[u.SwitchClauseStatements=3]="SwitchClauseStatements",u[u.TypeMembers=4]="TypeMembers",u[u.ClassMembers=5]="ClassMembers",u[u.EnumMembers=6]="EnumMembers",u[u.HeritageClauseElement=7]="HeritageClauseElement",u[u.VariableDeclarations=8]="VariableDeclarations",u[u.ObjectBindingElements=9]="ObjectBindingElements",u[u.ArrayBindingElements=10]="ArrayBindingElements",u[u.ArgumentExpressions=11]="ArgumentExpressions",u[u.ObjectLiteralMembers=12]="ObjectLiteralMembers",u[u.JsxAttributes=13]="JsxAttributes",u[u.JsxChildren=14]="JsxChildren",u[u.ArrayLiteralMembers=15]="ArrayLiteralMembers",u[u.Parameters=16]="Parameters",u[u.JSDocParameters=17]="JSDocParameters",u[u.RestProperties=18]="RestProperties",u[u.TypeParameters=19]="TypeParameters",u[u.TypeArguments=20]="TypeArguments",u[u.TupleElementTypes=21]="TupleElementTypes",u[u.HeritageClauses=22]="HeritageClauses",u[u.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",u[u.AssertEntries=24]="AssertEntries",u[u.Count=25]="Count"})(io||(io={}));let Wh;(u=>{u[u.False=0]="False",u[u.True=1]="True",u[u.Unknown=2]="Unknown"})(Wh||(Wh={}));let Vh;(u=>{function b($e,lt,Jt){Mn("file.js",$e,99,void 0,1),t.setText($e,lt,Jt),ar=t.scan();let Lt=O(),At=Kt("file.js",99,1,!1,[],Ye(1),0,yn),kr=qs(Zt,At);return Or&&(At.jsDocDiagnostics=qs(Or,At)),_i(),Lt?{jsDocTypeExpression:Lt,diagnostics:kr}:void 0}u.parseJSDocTypeExpressionForTests=b;function O($e){let lt=L(),Jt=($e?Ot:de)(18),Lt=Mt(8388608,xc);(!$e||Jt)&&Da(19);let At=N.createJSDocTypeExpression(Lt);return ft(At),Q(At,lt)}u.parseJSDocTypeExpression=O;function j(){let $e=L(),lt=Ot(18),Jt=L(),Lt=Ys(!1);for(;T()===80;)Xr(),Ge(),Lt=Q(N.createJSDocMemberName(Lt,wr()),Jt);lt&&Da(19);let At=N.createJSDocNameReference(Lt);return ft(At),Q(At,$e)}u.parseJSDocNameReference=j;function z($e,lt,Jt){Mn("",$e,99,void 0,1);let Lt=Mt(8388608,()=>We(lt,Jt)),kr=qs(Zt,{languageVariant:0,text:$e});return _i(),Lt?{jsDoc:Lt,diagnostics:kr}:void 0}u.parseIsolatedJSDocComment=z;function re($e,lt,Jt){let Lt=ar,At=Zt.length,kr=Kr,Fn=Mt(8388608,()=>We(lt,Jt));return Sa(Fn,$e),nr&262144&&(Or||(Or=[]),Or.push(...Zt)),ar=Lt,Zt.length=At,Kr=kr,Fn}u.parseJSDocComment=re;let Ee;($e=>{$e[$e.BeginningOfLine=0]="BeginningOfLine",$e[$e.SawAsterisk=1]="SawAsterisk",$e[$e.SavingComments=2]="SavingComments",$e[$e.SavingBackticks=3]="SavingBackticks"})(Ee||(Ee={}));let qe;($e=>{$e[$e.Property=1]="Property",$e[$e.Parameter=2]="Parameter",$e[$e.CallbackParameter=4]="CallbackParameter"})(qe||(qe={}));function We(){let $e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,lt=arguments.length>1?arguments[1]:void 0,Jt=_r,Lt=lt===void 0?Jt.length:$e+lt;if(lt=Lt-$e,Y.assert($e>=0),Y.assert($e<=Lt),Y.assert(Lt<=Jt.length),!LE(Jt,$e))return;let At,kr,Fn,di,Ii,_n=[],qa=[];return t.scanRange($e+3,lt-5,()=>{let se=1,Me,Ae=$e-(Jt.lastIndexOf(` +`,$e)+1)+4;function Ue(vt){Me||(Me=Ae),_n.push(vt),Ae+=vt.length}for(Ge();u_(5););u_(4)&&(se=0,Ae=0);e:for(;;){switch(T()){case 59:se===0||se===1?(lp(_n),Ii||(Ii=L()),za(up(Ae)),se=0,Me=void 0):Ue(t.getTokenText());break;case 4:_n.push(t.getTokenText()),se=0,Ae=0;break;case 41:let vt=t.getTokenText();se===1||se===2?(se=2,Ue(vt)):(se=1,Ae+=vt.length);break;case 5:let Vt=t.getTokenText();se===2?_n.push(Vt):Me!==void 0&&Ae+Vt.length>Me&&_n.push(Vt.slice(Me-Ae)),Ae+=Vt.length;break;case 1:break e;case 18:se=2;let Rr=t.getStartPos(),gn=t.getTextPos()-1,mi=$h(gn);if(mi){di||Hh(_n),qa.push(Q(N.createJSDocText(_n.join("")),di!=null?di:$e,Rr)),qa.push(mi),_n=[],di=t.getTextPos();break}default:se=2,Ue(t.getTokenText());break}Ge()}lp(_n),qa.length&&_n.length&&qa.push(Q(N.createJSDocText(_n.join("")),di!=null?di:$e,Ii)),qa.length&&At&&Y.assertIsDefined(Ii,"having parsed tags implies that the end of the comment span should be set");let Qe=At&&Er(At,kr,Fn);return Q(N.createJSDocComment(qa.length?Er(qa,$e,Ii):_n.length?_n.join(""):void 0,Qe),$e,Lt)});function Hh(se){for(;se.length&&(se[0]===` +`||se[0]==="\r");)se.shift()}function lp(se){for(;se.length&&se[se.length-1].trim()==="";)se.pop()}function Gh(){for(;;){if(Ge(),T()===1)return!0;if(!(T()===5||T()===4))return!1}}function wn(){if(!((T()===5||T()===4)&&wt(Gh)))for(;T()===5||T()===4;)Ge()}function Ua(){if((T()===5||T()===4)&&wt(Gh))return"";let se=t.hasPrecedingLineBreak(),Me=!1,Ae="";for(;se&&T()===41||T()===5||T()===4;)Ae+=t.getTokenText(),T()===4?(se=!0,Me=!0,Ae=""):T()===41&&(se=!1),Ge();return Me?Ae:""}function up(se){Y.assert(T()===59);let Me=t.getTokenPos();Ge();let Ae=ao(void 0),Ue=Ua(),Qe;switch(Ae.escapedText){case"author":Qe=V(Me,Ae,se,Ue);break;case"implements":Qe=et(Me,Ae,se,Ue);break;case"augments":case"extends":Qe=mt(Me,Ae,se,Ue);break;case"class":case"constructor":Qe=Oi(Me,N.createJSDocClassTag,Ae,se,Ue);break;case"public":Qe=Oi(Me,N.createJSDocPublicTag,Ae,se,Ue);break;case"private":Qe=Oi(Me,N.createJSDocPrivateTag,Ae,se,Ue);break;case"protected":Qe=Oi(Me,N.createJSDocProtectedTag,Ae,se,Ue);break;case"readonly":Qe=Oi(Me,N.createJSDocReadonlyTag,Ae,se,Ue);break;case"override":Qe=Oi(Me,N.createJSDocOverrideTag,Ae,se,Ue);break;case"deprecated":ue=!0,Qe=Oi(Me,N.createJSDocDeprecatedTag,Ae,se,Ue);break;case"this":Qe=jB(Me,Ae,se,Ue);break;case"enum":Qe=JB(Me,Ae,se,Ue);break;case"arg":case"argument":case"param":return Xh(Me,Ae,2,se);case"return":case"returns":Qe=o(Me,Ae,se,Ue);break;case"template":Qe=$B(Me,Ae,se,Ue);break;case"type":Qe=l(Me,Ae,se,Ue);break;case"typedef":Qe=FB(Me,Ae,se,Ue);break;case"callback":Qe=qB(Me,Ae,se,Ue);break;case"overload":Qe=UB(Me,Ae,se,Ue);break;case"satisfies":Qe=hn(Me,Ae,se,Ue);break;case"see":Qe=p(Me,Ae,se,Ue);break;case"exception":case"throws":Qe=k(Me,Ae,se,Ue);break;default:Qe=Qt(Me,Ae,se,Ue);break}return Qe}function Qr(se,Me,Ae,Ue){return Ue||(Ae+=Me-se),jc(Ae,Ue.slice(Ae))}function jc(se,Me){let Ae=L(),Ue=[],Qe=[],vt,Vt=0,Rr=!0,gn;function mi(hi){gn||(gn=se),Ue.push(hi),se+=hi.length}Me!==void 0&&(Me!==""&&mi(Me),Vt=1);let Va=T();e:for(;;){switch(Va){case 4:Vt=0,Ue.push(t.getTokenText()),se=0;break;case 59:if(Vt===3||Vt===2&&(!Rr||wt(Cs))){Ue.push(t.getTokenText());break}t.setTextPos(t.getTextPos()-1);case 1:break e;case 5:if(Vt===2||Vt===3)mi(t.getTokenText());else{let so=t.getTokenText();gn!==void 0&&se+so.length>gn&&Ue.push(so.slice(gn-se)),se+=so.length}break;case 18:Vt=2;let hi=t.getStartPos(),pp=t.getTextPos()-1,fp=$h(pp);fp?(Qe.push(Q(N.createJSDocText(Ue.join("")),vt!=null?vt:Ae,hi)),Qe.push(fp),Ue=[],vt=t.getTextPos()):mi(t.getTokenText());break;case 61:Vt===3?Vt=2:Vt=3,mi(t.getTokenText());break;case 41:if(Vt===0){Vt=1,se+=1;break}default:Vt!==3&&(Vt=2),mi(t.getTokenText());break}Rr=T()===5,Va=Ge()}if(Hh(Ue),lp(Ue),Qe.length)return Ue.length&&Qe.push(Q(N.createJSDocText(Ue.join("")),vt!=null?vt:Ae)),Er(Qe,Ae,t.getTextPos());if(Ue.length)return Ue.join("")}function Cs(){let se=Ge();return se===5||se===4}function $h(se){let Me=Tr(Kh);if(!Me)return;Ge(),wn();let Ae=L(),Ue=fr(T())?Ys(!0):void 0;if(Ue)for(;T()===80;)Xr(),Ge(),Ue=Q(N.createJSDocMemberName(Ue,wr()),Ae);let Qe=[];for(;T()!==19&&T()!==4&&T()!==1;)Qe.push(t.getTokenText()),Ge();let vt=Me==="link"?N.createJSDocLink:Me==="linkcode"?N.createJSDocLinkCode:N.createJSDocLinkPlain;return Q(vt(Ue,Qe.join("")),se,t.getTextPos())}function Kh(){if(Ua(),T()===18&&Ge()===59&&fr(Ge())){let se=t.getTokenValue();if(xt(se))return se}}function xt(se){return se==="link"||se==="linkcode"||se==="linkplain"}function Qt(se,Me,Ae,Ue){return Q(N.createJSDocUnknownTag(Me,Qr(se,L(),Ae,Ue)),se)}function za(se){se&&(At?At.push(se):(At=[se],kr=se.pos),Fn=se.end)}function Wa(){return Ua(),T()===18?O():void 0}function c6(){let se=u_(22);se&&wn();let Me=u_(61),Ae=KB();return Me&&kd(61),se&&(wn(),dr(63)&&Sr(),de(23)),{name:Ae,isBracketed:se}}function Yn(se){switch(se.kind){case 149:return!0;case 185:return Yn(se.elementType);default:return ac(se)&&yt(se.typeName)&&se.typeName.escapedText==="Object"&&!se.typeArguments}}function Xh(se,Me,Ae,Ue){let Qe=Wa(),vt=!Qe;Ua();let{name:Vt,isBracketed:Rr}=c6(),gn=Ua();vt&&!wt(Kh)&&(Qe=Wa());let mi=Qr(se,L(),Ue,gn),Va=Ae!==4&&n(Qe,Vt,Ae,Ue);Va&&(Qe=Va,vt=!0);let hi=Ae===1?N.createJSDocPropertyTag(Me,Vt,Rr,Qe,vt,mi):N.createJSDocParameterTag(Me,Vt,Rr,Qe,vt,mi);return Q(hi,se)}function n(se,Me,Ae,Ue){if(se&&Yn(se.type)){let Qe=L(),vt,Vt;for(;vt=Tr(()=>u6(Ae,Ue,Me));)(vt.kind===344||vt.kind===351)&&(Vt=tr(Vt,vt));if(Vt){let Rr=Q(N.createJSDocTypeLiteral(Vt,se.type.kind===185),Qe);return Q(N.createJSDocTypeExpression(Rr),Qe)}}}function o(se,Me,Ae,Ue){Ke(At,bv)&&Z(Me.pos,t.getTokenPos(),ve._0_tag_already_specified,Me.escapedText);let Qe=Wa();return Q(N.createJSDocReturnTag(Me,Qe,Qr(se,L(),Ae,Ue)),se)}function l(se,Me,Ae,Ue){Ke(At,au)&&Z(Me.pos,t.getTokenPos(),ve._0_tag_already_specified,Me.escapedText);let Qe=O(!0),vt=Ae!==void 0&&Ue!==void 0?Qr(se,L(),Ae,Ue):void 0;return Q(N.createJSDocTypeTag(Me,Qe,vt),se)}function p(se,Me,Ae,Ue){let vt=T()===22||wt(()=>Ge()===59&&fr(Ge())&&xt(t.getTokenValue()))?void 0:j(),Vt=Ae!==void 0&&Ue!==void 0?Qr(se,L(),Ae,Ue):void 0;return Q(N.createJSDocSeeTag(Me,vt,Vt),se)}function k(se,Me,Ae,Ue){let Qe=Wa(),vt=Qr(se,L(),Ae,Ue);return Q(N.createJSDocThrowsTag(Me,Qe,vt),se)}function V(se,Me,Ae,Ue){let Qe=L(),vt=we(),Vt=t.getStartPos(),Rr=Qr(se,Vt,Ae,Ue);Rr||(Vt=t.getStartPos());let gn=typeof Rr!="string"?Er(Ft([Q(vt,Qe,Vt)],Rr),Qe):vt.text+Rr;return Q(N.createJSDocAuthorTag(Me,gn),se)}function we(){let se=[],Me=!1,Ae=t.getToken();for(;Ae!==1&&Ae!==4;){if(Ae===29)Me=!0;else{if(Ae===59&&!Me)break;if(Ae===31&&Me){se.push(t.getTokenText()),t.setTextPos(t.getTokenPos()+1);break}}se.push(t.getTokenText()),Ae=Ge()}return N.createJSDocText(se.join(""))}function et(se,Me,Ae,Ue){let Qe=Ni();return Q(N.createJSDocImplementsTag(Me,Qe,Qr(se,L(),Ae,Ue)),se)}function mt(se,Me,Ae,Ue){let Qe=Ni();return Q(N.createJSDocAugmentsTag(Me,Qe,Qr(se,L(),Ae,Ue)),se)}function hn(se,Me,Ae,Ue){let Qe=O(!1),vt=Ae!==void 0&&Ue!==void 0?Qr(se,L(),Ae,Ue):void 0;return Q(N.createJSDocSatisfiesTag(Me,Qe,vt),se)}function Ni(){let se=Ot(18),Me=L(),Ae=ia(),Ue=Nc(),Qe=N.createExpressionWithTypeArguments(Ae,Ue),vt=Q(Qe,Me);return se&&de(19),vt}function ia(){let se=L(),Me=ao();for(;Ot(24);){let Ae=ao();Me=Q(Ve(Me,Ae),se)}return Me}function Oi(se,Me,Ae,Ue,Qe){return Q(Me(Ae,Qr(se,L(),Ue,Qe)),se)}function jB(se,Me,Ae,Ue){let Qe=O(!0);return wn(),Q(N.createJSDocThisTag(Me,Qe,Qr(se,L(),Ae,Ue)),se)}function JB(se,Me,Ae,Ue){let Qe=O(!0);return wn(),Q(N.createJSDocEnumTag(Me,Qe,Qr(se,L(),Ae,Ue)),se)}function FB(se,Me,Ae,Ue){var Qe;let vt=Wa();Ua();let Vt=l6();wn();let Rr=jc(Ae),gn;if(!vt||Yn(vt.type)){let Va,hi,pp,fp=!1;for(;Va=Tr(()=>WB(Ae));)if(fp=!0,Va.kind===347)if(hi){let so=Dt(ve.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);so&&Rl(so,Ro(Ur,0,0,ve.The_tag_was_first_specified_here));break}else hi=Va;else pp=tr(pp,Va);if(fp){let so=vt&&vt.type.kind===185,XB=N.createJSDocTypeLiteral(pp,so);vt=hi&&hi.typeExpression&&!Yn(hi.typeExpression.type)?hi.typeExpression:Q(XB,se),gn=vt.end}}gn=gn||Rr!==void 0?L():((Qe=Vt!=null?Vt:vt)!=null?Qe:Me).end,Rr||(Rr=Qr(se,gn,Ae,Ue));let mi=N.createJSDocTypedefTag(Me,vt,Vt,Rr);return Q(mi,se,gn)}function l6(se){let Me=t.getTokenPos();if(!fr(T()))return;let Ae=ao();if(Ot(24)){let Ue=l6(!0),Qe=N.createModuleDeclaration(void 0,Ae,Ue,se?4:void 0);return Q(Qe,Me)}return se&&(Ae.flags|=2048),Ae}function BB(se){let Me=L(),Ae,Ue;for(;Ae=Tr(()=>u6(4,se));)Ue=tr(Ue,Ae);return Er(Ue||[],Me)}function j7(se,Me){let Ae=BB(Me),Ue=Tr(()=>{if(u_(59)){let Qe=up(Me);if(Qe&&Qe.kind===345)return Qe}});return Q(N.createJSDocSignature(void 0,Ae,Ue),se)}function qB(se,Me,Ae,Ue){let Qe=l6();wn();let vt=jc(Ae),Vt=j7(se,Ae);vt||(vt=Qr(se,L(),Ae,Ue));let Rr=vt!==void 0?L():Vt.end;return Q(N.createJSDocCallbackTag(Me,Vt,Qe,vt),se,Rr)}function UB(se,Me,Ae,Ue){wn();let Qe=jc(Ae),vt=j7(se,Ae);Qe||(Qe=Qr(se,L(),Ae,Ue));let Vt=Qe!==void 0?L():vt.end;return Q(N.createJSDocOverloadTag(Me,vt,Qe),se,Vt)}function zB(se,Me){for(;!yt(se)||!yt(Me);)if(!yt(se)&&!yt(Me)&&se.right.escapedText===Me.right.escapedText)se=se.left,Me=Me.left;else return!1;return se.escapedText===Me.escapedText}function WB(se){return u6(1,se)}function u6(se,Me,Ae){let Ue=!0,Qe=!1;for(;;)switch(Ge()){case 59:if(Ue){let vt=VB(se,Me);return vt&&(vt.kind===344||vt.kind===351)&&se!==4&&Ae&&(yt(vt.name)||!zB(Ae,vt.name.left))?!1:vt}Qe=!1;break;case 4:Ue=!0,Qe=!1;break;case 41:Qe&&(Ue=!1),Qe=!0;break;case 79:Ue=!1;break;case 1:return!1}}function VB(se,Me){Y.assert(T()===59);let Ae=t.getStartPos();Ge();let Ue=ao();wn();let Qe;switch(Ue.escapedText){case"type":return se===1&&l(Ae,Ue);case"prop":case"property":Qe=1;break;case"arg":case"argument":case"param":Qe=6;break;default:return!1}return se&Qe?Xh(Ae,Ue,se,Me):!1}function HB(){let se=L(),Me=u_(22);Me&&wn();let Ae=ao(ve.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),Ue;if(Me&&(wn(),de(63),Ue=Mt(8388608,xc),de(23)),!va(Ae))return Q(N.createTypeParameterDeclaration(void 0,Ae,void 0,Ue),se)}function GB(){let se=L(),Me=[];do{wn();let Ae=HB();Ae!==void 0&&Me.push(Ae),Ua()}while(u_(27));return Er(Me,se)}function $B(se,Me,Ae,Ue){let Qe=T()===18?O():void 0,vt=GB();return Q(N.createJSDocTemplateTag(Me,Qe,vt,Qr(se,L(),Ae,Ue)),se)}function u_(se){return T()===se?(Ge(),!0):!1}function KB(){let se=ao();for(Ot(22)&&de(23);Ot(24);){let Me=ao();Ot(22)&&de(23),se=Tu(se,Me)}return se}function ao(se){if(!fr(T()))return Jn(79,!se,se||ve.Identifier_expected);$r++;let Me=t.getTokenPos(),Ae=t.getTextPos(),Ue=T(),Qe=Ia(t.getTokenValue()),vt=Q(Te(Qe,Ue),Me,Ae);return Ge(),vt}}})(Vh=e.JSDocParser||(e.JSDocParser={}))})(Ci||(Ci={})),(e=>{function t($,ae,Te,Se){if(Se=Se||Y.shouldAssert(2),N($,ae,Te,Se),c3(Te))return $;if($.statements.length===0)return Ci.parseSourceFile($.fileName,ae,$.languageVersion,void 0,!0,$.scriptKind,$.setExternalModuleIndicator);let Ye=$;Y.assert(!Ye.hasBeenIncrementallyParsed),Ye.hasBeenIncrementallyParsed=!0,Ci.fixupParentReferences(Ye);let Oe=$.text,oe=X($),Ve=g($,Te);N($,ae,Ve,Se),Y.assert(Ve.span.start<=Te.span.start),Y.assert(Ir(Ve.span)===Ir(Te.span)),Y.assert(Ir(R_(Ve))===Ir(R_(Te)));let pt=R_(Ve).length-Ve.span.length;A(Ye,Ve.span.start,Ir(Ve.span),Ir(R_(Ve)),pt,Oe,ae,Se);let Gt=Ci.parseSourceFile($.fileName,ae,$.languageVersion,oe,!0,$.scriptKind,$.setExternalModuleIndicator);return Gt.commentDirectives=r($.commentDirectives,Gt.commentDirectives,Ve.span.start,Ir(Ve.span),pt,Oe,ae,Se),Gt.impliedNodeFormat=$.impliedNodeFormat,Gt}e.updateSourceFile=t;function r($,ae,Te,Se,Ye,Oe,oe,Ve){if(!$)return ae;let pt,Gt=!1;for(let Xt of $){let{range:er,type:Tn}=Xt;if(er.endSe){Nt();let Hr={range:{pos:er.pos+Ye,end:er.end+Ye},type:Tn};pt=tr(pt,Hr),Ve&&Y.assert(Oe.substring(er.pos,er.end)===oe.substring(Hr.range.pos,Hr.range.end))}}return Nt(),pt;function Nt(){Gt||(Gt=!0,pt?ae&&pt.push(...ae):pt=ae)}}function s($,ae,Te,Se,Ye,Oe){ae?Ve($):oe($);return;function oe(pt){let Gt="";if(Oe&&f(pt)&&(Gt=Se.substring(pt.pos,pt.end)),pt._children&&(pt._children=void 0),Us(pt,pt.pos+Te,pt.end+Te),Oe&&f(pt)&&Y.assert(Gt===Ye.substring(pt.pos,pt.end)),xr(pt,oe,Ve),ya(pt))for(let Nt of pt.jsDoc)oe(Nt);w(pt,Oe)}function Ve(pt){pt._children=void 0,Us(pt,pt.pos+Te,pt.end+Te);for(let Gt of pt)oe(Gt)}}function f($){switch($.kind){case 10:case 8:case 79:return!0}return!1}function x($,ae,Te,Se,Ye){Y.assert($.end>=ae,"Adjusting an element that was entirely before the change range"),Y.assert($.pos<=Te,"Adjusting an element that was entirely after the change range"),Y.assert($.pos<=$.end);let Oe=Math.min($.pos,Se),oe=$.end>=Te?$.end+Ye:Math.min($.end,Se);Y.assert(Oe<=oe),$.parent&&(Y.assertGreaterThanOrEqual(Oe,$.parent.pos),Y.assertLessThanOrEqual(oe,$.parent.end)),Us($,Oe,oe)}function w($,ae){if(ae){let Te=$.pos,Se=Ye=>{Y.assert(Ye.pos>=Te),Te=Ye.end};if(ya($))for(let Ye of $.jsDoc)Se(Ye);xr($,Se),Y.assert(Te<=$.end)}}function A($,ae,Te,Se,Ye,Oe,oe,Ve){pt($);return;function pt(Nt){if(Y.assert(Nt.pos<=Nt.end),Nt.pos>Te){s(Nt,!1,Ye,Oe,oe,Ve);return}let Xt=Nt.end;if(Xt>=ae){if(Nt.intersectsChange=!0,Nt._children=void 0,x(Nt,ae,Te,Se,Ye),xr(Nt,pt,Gt),ya(Nt))for(let er of Nt.jsDoc)pt(er);w(Nt,Ve);return}Y.assert(XtTe){s(Nt,!0,Ye,Oe,oe,Ve);return}let Xt=Nt.end;if(Xt>=ae){Nt.intersectsChange=!0,Nt._children=void 0,x(Nt,ae,Te,Se,Ye);for(let er of Nt)pt(er);return}Y.assert(Xt0&&oe<=1;oe++){let Ve=B($,Se);Y.assert(Ve.pos<=Se);let pt=Ve.pos;Se=Math.max(0,pt-1)}let Ye=ha(Se,Ir(ae.span)),Oe=ae.newLength+(ae.span.start-Se);return Zp(Ye,Oe)}function B($,ae){let Te=$,Se;if(xr($,Oe),Se){let oe=Ye(Se);oe.pos>Te.pos&&(Te=oe)}return Te;function Ye(oe){for(;;){let Ve=mx(oe);if(Ve)oe=Ve;else return oe}}function Oe(oe){if(!va(oe))if(oe.pos<=ae){if(oe.pos>=Te.pos&&(Te=oe),aeae),!0}}function N($,ae,Te,Se){let Ye=$.text;if(Te&&(Y.assert(Ye.length-Te.span.length+Te.newLength===ae.length),Se||Y.shouldAssert(3))){let Oe=Ye.substr(0,Te.span.start),oe=ae.substr(0,Te.span.start);Y.assert(Oe===oe);let Ve=Ye.substring(Ir(Te.span),Ye.length),pt=ae.substring(Ir(R_(Te)),ae.length);Y.assert(Ve===pt)}}function X($){let ae=$.statements,Te=0;Y.assert(Te=Gt.pos&&oe=Gt.pos&&oe{$[$.Value=-1]="Value"})(F||(F={}))})(Sd||(Sd={})),xd=new Map,_7=/^\/\/\/\s*<(\S+)\s.*?\/>/im,c7=/^\/\/\/?\s*@(\S+)\s*(.*)\s*$/im}}),ZJ=()=>{},eF=()=>{},tF=()=>{},rF=()=>{},nF=()=>{},iF=()=>{},aF=()=>{},sF=()=>{},oF=()=>{},_F=()=>{},cF=()=>{},lF=()=>{},uF=()=>{},pF=()=>{},fF=()=>{},dF=()=>{},mF=()=>{},hF=()=>{},gF=()=>{},yF=()=>{},vF=()=>{},bF=()=>{},TF=()=>{},SF=()=>{},xF=()=>{},EF=()=>{},wF=()=>{},CF=()=>{},AF=()=>{},PF=()=>{},DF=()=>{},kF=()=>{},IF=()=>{},NF=()=>{},OF=()=>{},MF=()=>{},LF=()=>{},RF=()=>{},jF=()=>{},JF=()=>{},FF=()=>{},BF=()=>{},qF=()=>{},UF=()=>{},zF=()=>{},WF=()=>{},nn=D({"src/compiler/_namespaces/ts.ts"(){"use strict";E(),I5(),PT(),N5(),O5(),L5(),J5(),NT(),B5(),rA(),nA(),pA(),eD(),DL(),kL(),IL(),NL(),VL(),HL(),GL(),Ej(),jJ(),JJ(),QJ(),ZJ(),eF(),tF(),rF(),iF(),aF(),sF(),oF(),_F(),cF(),lF(),uF(),pF(),fF(),dF(),mF(),hF(),gF(),yF(),vF(),bF(),TF(),SF(),xF(),EF(),wF(),CF(),AF(),PF(),DF(),kF(),IF(),NF(),OF(),MF(),LF(),RF(),jF(),JF(),FF(),BF(),qF(),UF(),zF(),WF(),nF(),IT()}}),l7=()=>{},VF=()=>{},u7=()=>{},Zo,u7=()=>{PT(),Zo=Po(99,!0)},HF=()=>{},GF=()=>{},$F=()=>{},KF=()=>{},XF=()=>{},YF=()=>{},QF=()=>{},ZF=()=>{},eB=()=>{},tB=()=>{},p7=()=>{},f7=()=>{};function d7(e,t,r,s){let f=gl(e)?new wd(e,t,r):e===79?new Ad(79,t,r):e===80?new Pd(80,t,r):new Ov(e,t,r);return f.parent=s,f.flags=s.flags&50720768,f}function rB(e,t){if(!gl(e.kind))return Bt;let r=[];if(cS(e))return e.forEachChild(w=>{r.push(w)}),r;Zo.setText((t||e.getSourceFile()).text);let s=e.pos,f=w=>{_u(r,s,w.pos,e),r.push(w),s=w.end},x=w=>{_u(r,s,w.pos,e),r.push(nB(w,e)),s=w.end};return c(e.jsDoc,f),s=e.pos,e.forEachChild(f,x),_u(r,s,e.end,e),Zo.setText(void 0),r}function _u(e,t,r,s){for(Zo.setTextPos(t);tt.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function Ed(e,t){if(!e)return Bt;let r=ts_JsDoc_exports.getJsDocTagsFromDeclarations(e,t);if(t&&(r.length===0||e.some(m7))){let s=new Set;for(let f of e){let x=h7(t,f,w=>{var A;if(!s.has(w))return s.add(w),f.kind===174||f.kind===175?w.getContextualJsDocTags(f,t):((A=w.declarations)==null?void 0:A.length)===1?w.getJsDocTags():void 0});x&&(r=[...x,...r])}}return r}function cu(e,t){if(!e)return Bt;let r=ts_JsDoc_exports.getJsDocCommentsFromDeclarations(e,t);if(t&&(r.length===0||e.some(m7))){let s=new Set;for(let f of e){let x=h7(t,f,w=>{if(!s.has(w))return s.add(w),f.kind===174||f.kind===175?w.getContextualDocumentationComment(f,t):w.getDocumentationComment(t)});x&&(r=r.length===0?x.slice():x.concat(lineBreakPart(),r))}}return r}function h7(e,t,r){var s;let f=((s=t.parent)==null?void 0:s.kind)===173?t.parent.parent:t.parent;if(!f)return;let x=Lf(t);return q(h4(f),w=>{let A=e.getTypeAtLocation(w),g=x&&A.symbol?e.getTypeOfSymbol(A.symbol):A,B=e.getPropertyOfType(g,t.symbol.name);return B?r(B):void 0})}function iB(){return{getNodeConstructor:()=>wd,getTokenConstructor:()=>Ov,getIdentifierConstructor:()=>Ad,getPrivateIdentifierConstructor:()=>Pd,getSourceFileConstructor:()=>P7,getSymbolConstructor:()=>w7,getTypeConstructor:()=>C7,getSignatureConstructor:()=>A7,getSourceMapSourceConstructor:()=>D7}}function lu(e){let t=!0;for(let s in e)if(Jr(e,s)&&!g7(s)){t=!1;break}if(t)return e;let r={};for(let s in e)if(Jr(e,s)){let f=g7(s)?s:s.charAt(0).toLowerCase()+s.substr(1);r[f]=e[s]}return r}function g7(e){return!e.length||e.charAt(0)===e.charAt(0).toLowerCase()}function aB(e){return e?Ze(e,t=>t.text).join(""):""}function y7(){return{target:1,jsx:1}}function v7(){return ts_codefix_exports.getSupportedErrorCodes()}function b7(e,t,r){e.version=r,e.scriptSnapshot=t}function Nv(e,t,r,s,f,x){let w=YE(e,getSnapshotText(t),r,f,x);return b7(w,t,s),w}function T7(e,t,r,s,f){if(s&&r!==e.version){let w,A=s.span.start!==0?e.text.substr(0,s.span.start):"",g=Ir(s.span)!==e.text.length?e.text.substr(Ir(s.span)):"";if(s.newLength===0)w=A&&g?A+g:A||g;else{let N=t.getText(s.span.start,s.span.start+s.newLength);w=A&&g?A+N+g:A?A+N:N+g}let B=kv(e,w,s,f);return b7(B,t,r),B.nameTable=void 0,e!==B&&e.scriptSnapshot&&(e.scriptSnapshot.dispose&&e.scriptSnapshot.dispose(),e.scriptSnapshot=void 0),B}let x={languageVersion:e.languageVersion,impliedNodeFormat:e.impliedNodeFormat,setExternalModuleIndicator:e.setExternalModuleIndicator};return Nv(e.fileName,t,x,r,!0,e.scriptKind)}function sB(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:createDocumentRegistry(e.useCaseSensitiveFileNames&&e.useCaseSensitiveFileNames(),e.getCurrentDirectory()),r=arguments.length>2?arguments[2]:void 0;var s;let f;r===void 0?f=0:typeof r=="boolean"?f=r?2:0:f=r;let x=new k7(e),w,A,g=0,B=e.getCancellationToken?new N7(e.getCancellationToken()):I7,N=e.getCurrentDirectory();vx((s=e.getLocalizedDiagnosticMessages)==null?void 0:s.bind(e));function X(Z){e.log&&e.log(Z)}let F=J0(e),$=wp(F),ae=getSourceMapper({useCaseSensitiveFileNames:()=>F,getCurrentDirectory:()=>N,getProgram:Ye,fileExists:le(e,e.fileExists),readFile:le(e,e.readFile),getDocumentPositionMapper:le(e,e.getDocumentPositionMapper),getSourceFileLike:le(e,e.getSourceFileLike),log:X});function Te(Z){let ie=w.getSourceFile(Z);if(!ie){let U=new Error(`Could not find source file: '${Z}'.`);throw U.ProgramFiles=w.getSourceFiles().map(L=>L.fileName),U}return ie}function Se(){var Z,ie,U;if(Y.assert(f!==2),e.getProjectVersion){let Tt=e.getProjectVersion();if(Tt){if(A===Tt&&!((Z=e.hasChangedAutomaticTypeDirectiveNames)!=null&&Z.call(e)))return;A=Tt}}let L=e.getTypeRootsVersion?e.getTypeRootsVersion():0;g!==L&&(X("TypeRoots version has changed; provide new program"),w=void 0,g=L);let fe=e.getScriptFileNames().slice(),T=e.getCompilationSettings()||y7(),it=e.hasInvalidatedResolutions||w_,dt=le(e,e.hasChangedAutomaticTypeDirectiveNames),_e=(ie=e.getProjectReferences)==null?void 0:ie.call(e),Ge,bt={getSourceFile:wt,getSourceFileByPath:Tr,getCancellationToken:()=>B,getCanonicalFileName:$,useCaseSensitiveFileNames:()=>F,getNewLine:()=>ox(T),getDefaultLibFileName:Tt=>e.getDefaultLibFileName(Tt),writeFile:yn,getCurrentDirectory:()=>N,fileExists:Tt=>e.fileExists(Tt),readFile:Tt=>e.readFile&&e.readFile(Tt),getSymlinkCache:le(e,e.getSymlinkCache),realpath:le(e,e.realpath),directoryExists:Tt=>sx(Tt,e),getDirectories:Tt=>e.getDirectories?e.getDirectories(Tt):[],readDirectory:(Tt,kt,de,jn,Zi)=>(Y.checkDefined(e.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),e.readDirectory(Tt,kt,de,jn,Zi)),onReleaseOldSourceFile:Rn,onReleaseParsedCommandLine:yr,hasInvalidatedResolutions:it,hasChangedAutomaticTypeDirectiveNames:dt,trace:le(e,e.trace),resolveModuleNames:le(e,e.resolveModuleNames),getModuleResolutionCache:le(e,e.getModuleResolutionCache),createHash:le(e,e.createHash),resolveTypeReferenceDirectives:le(e,e.resolveTypeReferenceDirectives),resolveModuleNameLiterals:le(e,e.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:le(e,e.resolveTypeReferenceDirectiveReferences),useSourceOfProjectReferenceRedirect:le(e,e.useSourceOfProjectReferenceRedirect),getParsedCommandLine:Dr},jt=bt.getSourceFile,{getSourceFileWithCache:Yt}=changeCompilerHostLikeToUseCache(bt,Tt=>Ui(Tt,N,$),function(){for(var Tt=arguments.length,kt=new Array(Tt),de=0;debt.fileExists(Tt),readFile:Tt=>bt.readFile(Tt),readDirectory:function(){return bt.readDirectory(...arguments)},trace:bt.trace,getCurrentDirectory:bt.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:yn},Wt=t.getKeyForCompilationSettings(T);if(isProgramUptoDate(w,fe,T,(Tt,kt)=>e.getScriptVersion(kt),Tt=>bt.fileExists(Tt),it,dt,Dr,_e))return;let Xr={rootNames:fe,options:T,host:bt,oldProgram:w,projectReferences:_e};w=createProgram(Xr),bt=void 0,Ge=void 0,ae.clearCache(),w.getTypeChecker();return;function Dr(Tt){let kt=Ui(Tt,N,$),de=Ge==null?void 0:Ge.get(kt);if(de!==void 0)return de||void 0;let jn=e.getParsedCommandLine?e.getParsedCommandLine(Tt):Lr(Tt);return(Ge||(Ge=new Map)).set(kt,jn||!1),jn}function Lr(Tt){let kt=wt(Tt,100);if(kt)return kt.path=Ui(Tt,N,$),kt.resolvedPath=kt.path,kt.originalFileName=kt.fileName,parseJsonSourceFileConfigFileContent(kt,$t,as(ma(Tt),N),void 0,as(Tt,N))}function yr(Tt,kt,de){var jn;e.getParsedCommandLine?(jn=e.onReleaseParsedCommandLine)==null||jn.call(e,Tt,kt,de):kt&&Rn(kt.sourceFile,de)}function Rn(Tt,kt){let de=t.getKeyForCompilationSettings(kt);t.releaseDocumentWithKey(Tt.resolvedPath,de,Tt.scriptKind,Tt.impliedNodeFormat)}function wt(Tt,kt,de,jn){return Tr(Tt,Ui(Tt,N,$),kt,de,jn)}function Tr(Tt,kt,de,jn,Zi){Y.assert(bt,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");let Pa=e.getScriptSnapshot(Tt);if(!Pa)return;let e_=getScriptKind(Tt,e),mc=e.getScriptVersion(Tt);if(!Zi){let Da=w&&w.getSourceFileByPath(kt);if(Da){if(e_===Da.scriptKind)return t.updateDocumentWithKey(Tt,kt,e,Wt,Pa,mc,e_,de);t.releaseDocumentWithKey(Da.resolvedPath,t.getKeyForCompilationSettings(w.getCompilerOptions()),Da.scriptKind,Da.impliedNodeFormat)}}return t.acquireDocumentWithKey(Tt,kt,e,Wt,Pa,mc,e_,de)}}function Ye(){if(f===2){Y.assert(w===void 0);return}return Se(),w}function Oe(){var Z;return(Z=e.getPackageJsonAutoImportProvider)==null?void 0:Z.call(e)}function oe(Z,ie){let U=w.getTypeChecker(),L=fe();if(!L)return!1;for(let it of Z)for(let dt of it.references){let _e=T(dt);if(Y.assertIsDefined(_e),ie.has(dt)||ts_FindAllReferences_exports.isDeclarationOfSymbol(_e,L)){ie.add(dt),dt.isDefinition=!0;let Ge=getMappedDocumentSpan(dt,ae,le(e,e.fileExists));Ge&&ie.add(Ge)}else dt.isDefinition=!1}return!0;function fe(){for(let it of Z)for(let dt of it.references){if(ie.has(dt)){let Ge=T(dt);return Y.assertIsDefined(Ge),U.getSymbolAtLocation(Ge)}let _e=getMappedDocumentSpan(dt,ae,le(e,e.fileExists));if(_e&&ie.has(_e)){let Ge=T(_e);if(Ge)return U.getSymbolAtLocation(Ge)}}}function T(it){let dt=w.getSourceFile(it.fileName);if(!dt)return;let _e=getTouchingPropertyName(dt,it.textSpan.start);return ts_FindAllReferences_exports.Core.getAdjustedNode(_e,{use:ts_FindAllReferences_exports.FindReferencesUse.References})}}function Ve(){w=void 0}function pt(){if(w){let Z=t.getKeyForCompilationSettings(w.getCompilerOptions());c(w.getSourceFiles(),ie=>t.releaseDocumentWithKey(ie.resolvedPath,Z,ie.scriptKind,ie.impliedNodeFormat)),w=void 0}e=void 0}function Gt(Z){return Se(),w.getSyntacticDiagnostics(Te(Z),B).slice()}function Nt(Z){Se();let ie=Te(Z),U=w.getSemanticDiagnostics(ie,B);if(!c2(w.getCompilerOptions()))return U.slice();let L=w.getDeclarationDiagnostics(ie,B);return[...U,...L]}function Xt(Z){return Se(),computeSuggestionDiagnostics(Te(Z),w,B)}function er(){return Se(),[...w.getOptionsDiagnostics(B),...w.getGlobalDiagnostics(B)]}function Tn(Z,ie){let U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:emptyOptions,L=arguments.length>3?arguments[3]:void 0,fe=Object.assign(Object.assign({},U),{},{includeCompletionsForModuleExports:U.includeCompletionsForModuleExports||U.includeExternalModuleExports,includeCompletionsWithInsertText:U.includeCompletionsWithInsertText||U.includeInsertTextCompletions});return Se(),ts_Completions_exports.getCompletionsAtPosition(e,w,X,Te(Z),ie,fe,U.triggerCharacter,U.triggerKind,B,L&&ts_formatting_exports.getFormatContext(L,e),U.includeSymbol)}function Hr(Z,ie,U,L,fe){let T=arguments.length>5&&arguments[5]!==void 0?arguments[5]:emptyOptions,it=arguments.length>6?arguments[6]:void 0;return Se(),ts_Completions_exports.getCompletionEntryDetails(w,X,Te(Z),ie,{name:U,source:fe,data:it},e,L&&ts_formatting_exports.getFormatContext(L,e),T,B)}function Gi(Z,ie,U,L){let fe=arguments.length>4&&arguments[4]!==void 0?arguments[4]:emptyOptions;return Se(),ts_Completions_exports.getCompletionEntrySymbol(w,X,Te(Z),ie,{name:U,source:L},e,fe)}function pn(Z,ie){Se();let U=Te(Z),L=getTouchingPropertyName(U,ie);if(L===U)return;let fe=w.getTypeChecker(),T=fn(L),it=uB(T,fe);if(!it||fe.isUnknownSymbol(it)){let jt=Ut(U,T,ie)?fe.getTypeAtLocation(T):void 0;return jt&&{kind:"",kindModifiers:"",textSpan:createTextSpanFromNode(T,U),displayParts:fe.runWithCancellationToken(B,Yt=>typeToDisplayParts(Yt,jt,getContainerNode(T))),documentation:jt.symbol?jt.symbol.getDocumentationComment(fe):void 0,tags:jt.symbol?jt.symbol.getJsDocTags(fe):void 0}}let{symbolKind:dt,displayParts:_e,documentation:Ge,tags:bt}=fe.runWithCancellationToken(B,jt=>ts_SymbolDisplay_exports.getSymbolDisplayPartsDocumentationAndSymbolKind(jt,it,U,getContainerNode(T),T));return{kind:dt,kindModifiers:ts_SymbolDisplay_exports.getSymbolModifiers(fe,it),textSpan:createTextSpanFromNode(T,U),displayParts:_e,documentation:Ge,tags:bt}}function fn(Z){return X8(Z.parent)&&Z.pos===Z.parent.pos?Z.parent.expression:$2(Z.parent)&&Z.pos===Z.parent.pos||o0(Z.parent)&&Z.parent.name===Z?Z.parent:Z}function Ut(Z,ie,U){switch(ie.kind){case 79:return!isLabelName(ie)&&!isTagName(ie)&&!j3(ie.parent);case 208:case 163:return!isInComment(Z,U);case 108:case 194:case 106:case 199:return!0;case 233:return o0(ie);default:return!1}}function kn(Z,ie,U,L){return Se(),ts_GoToDefinition_exports.getDefinitionAtPosition(w,Te(Z),ie,U,L)}function an(Z,ie){return Se(),ts_GoToDefinition_exports.getDefinitionAndBoundSpan(w,Te(Z),ie)}function mr(Z,ie){return Se(),ts_GoToDefinition_exports.getTypeDefinitionAtPosition(w.getTypeChecker(),Te(Z),ie)}function $i(Z,ie){return Se(),ts_FindAllReferences_exports.getImplementationsAtPosition(w,B,w.getSourceFiles(),Te(Z),ie)}function dn(Z,ie){return ne(Ur(Z,ie,[Z]),U=>U.highlightSpans.map(L=>Object.assign(Object.assign({fileName:U.fileName,textSpan:L.textSpan,isWriteAccess:L.kind==="writtenReference"},L.isInString&&{isInString:!0}),L.contextSpan&&{contextSpan:L.contextSpan})))}function Ur(Z,ie,U){let L=Un(Z);Y.assert(U.some(it=>Un(it)===L)),Se();let fe=qt(U,it=>w.getSourceFile(it)),T=Te(Z);return DocumentHighlights.getDocumentHighlights(w,B,T,ie,fe)}function Gr(Z,ie,U,L,fe){Se();let T=Te(Z),it=getAdjustedRenameLocation(getTouchingPropertyName(T,ie));if(ts_Rename_exports.nodeIsEligibleForRename(it))if(yt(it)&&(tu(it.parent)||sE(it.parent))&&P4(it.escapedText)){let{openingElement:dt,closingElement:_e}=it.parent.parent;return[dt,_e].map(Ge=>{let bt=createTextSpanFromNode(Ge.tagName,T);return Object.assign({fileName:T.fileName,textSpan:bt},ts_FindAllReferences_exports.toContextSpan(bt,T,Ge.parent))})}else return Sn(it,ie,{findInStrings:U,findInComments:L,providePrefixAndSuffixTextForRename:fe,use:ts_FindAllReferences_exports.FindReferencesUse.Rename},(dt,_e,Ge)=>ts_FindAllReferences_exports.toRenameLocation(dt,_e,Ge,fe||!1))}function _r(Z,ie){return Se(),Sn(getTouchingPropertyName(Te(Z),ie),ie,{use:ts_FindAllReferences_exports.FindReferencesUse.References},ts_FindAllReferences_exports.toReferenceEntry)}function Sn(Z,ie,U,L){Se();let fe=U&&U.use===ts_FindAllReferences_exports.FindReferencesUse.Rename?w.getSourceFiles().filter(T=>!w.isSourceFileDefaultLibrary(T)):w.getSourceFiles();return ts_FindAllReferences_exports.findReferenceOrRenameEntries(w,B,fe,Z,ie,U,L)}function In(Z,ie){return Se(),ts_FindAllReferences_exports.findReferencedSymbols(w,B,w.getSourceFiles(),Te(Z),ie)}function pr(Z){return Se(),ts_FindAllReferences_exports.Core.getReferencesForFileName(Z,w,w.getSourceFiles()).map(ts_FindAllReferences_exports.toReferenceEntry)}function Zt(Z,ie,U){let L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;Se();let fe=U?[Te(U)]:w.getSourceFiles();return getNavigateToItems(fe,w.getTypeChecker(),B,Z,ie,L)}function Or(Z,ie,U){Se();let L=Te(Z),fe=e.getCustomTransformers&&e.getCustomTransformers();return getFileEmitOutput(w,L,!!ie,B,fe,U)}function Nn(Z,ie){let{triggerReason:U}=arguments.length>2&&arguments[2]!==void 0?arguments[2]:emptyOptions;Se();let L=Te(Z);return ts_SignatureHelp_exports.getSignatureHelpItems(w,L,ie,U,B)}function ar(Z){return x.getCurrentSourceFile(Z)}function oi(Z,ie,U){let L=x.getCurrentSourceFile(Z),fe=getTouchingPropertyName(L,ie);if(fe===L)return;switch(fe.kind){case 208:case 163:case 10:case 95:case 110:case 104:case 106:case 108:case 194:case 79:break;default:return}let T=fe;for(;;)if(isRightSideOfPropertyAccess(T)||isRightSideOfQualifiedName(T))T=T.parent;else if(isNameOfModuleDeclaration(T))if(T.parent.parent.kind===264&&T.parent.parent.body===T.parent)T=T.parent.parent.name;else break;else break;return ha(T.getStart(),fe.getEnd())}function cr(Z,ie){let U=x.getCurrentSourceFile(Z);return ts_BreakpointResolver_exports.spanInSourceFileAtLocation(U,ie)}function $r(Z){return getNavigationBarItems(x.getCurrentSourceFile(Z),B)}function hr(Z){return getNavigationTree(x.getCurrentSourceFile(Z),B)}function On(Z,ie,U){return Se(),(U||"original")==="2020"?ts_classifier_exports.v2020.getSemanticClassifications(w,B,Te(Z),ie):getSemanticClassifications(w.getTypeChecker(),B,Te(Z),w.getClassifiableNames(),ie)}function nr(Z,ie,U){return Se(),(U||"original")==="original"?getEncodedSemanticClassifications(w.getTypeChecker(),B,Te(Z),w.getClassifiableNames(),ie):ts_classifier_exports.v2020.getEncodedSemanticClassifications(w,B,Te(Z),ie)}function br(Z,ie){return getSyntacticClassifications(B,x.getCurrentSourceFile(Z),ie)}function Kr(Z,ie){return getEncodedSyntacticClassifications(B,x.getCurrentSourceFile(Z),ie)}function wa(Z){let ie=x.getCurrentSourceFile(Z);return ts_OutliningElementsCollector_exports.collectElements(ie,B)}let $n=new Map(Object.entries({[18]:19,[20]:21,[22]:23,[31]:29}));$n.forEach((Z,ie)=>$n.set(Z.toString(),Number(ie)));function Ki(Z,ie){let U=x.getCurrentSourceFile(Z),L=getTouchingToken(U,ie),fe=L.getStart(U)===ie?$n.get(L.kind.toString()):void 0,T=fe&&findChildOfKind(L.parent,fe,U);return T?[createTextSpanFromNode(L,U),createTextSpanFromNode(T,U)].sort((it,dt)=>it.start-dt.start):Bt}function Mn(Z,ie,U){let L=ts(),fe=lu(U),T=x.getCurrentSourceFile(Z);X("getIndentationAtPosition: getCurrentSourceFile: "+(ts()-L)),L=ts();let it=ts_formatting_exports.SmartIndenter.getIndentation(ie,T,fe);return X("getIndentationAtPosition: computeIndentation : "+(ts()-L)),it}function _i(Z,ie,U,L){let fe=x.getCurrentSourceFile(Z);return ts_formatting_exports.formatSelection(ie,U,fe,ts_formatting_exports.getFormatContext(lu(L),e))}function Ca(Z,ie){return ts_formatting_exports.formatDocument(x.getCurrentSourceFile(Z),ts_formatting_exports.getFormatContext(lu(ie),e))}function St(Z,ie,U,L){let fe=x.getCurrentSourceFile(Z),T=ts_formatting_exports.getFormatContext(lu(L),e);if(!isInComment(fe,ie))switch(U){case"{":return ts_formatting_exports.formatOnOpeningCurly(ie,fe,T);case"}":return ts_formatting_exports.formatOnClosingCurly(ie,fe,T);case";":return ts_formatting_exports.formatOnSemicolon(ie,fe,T);case` +`:return ts_formatting_exports.formatOnEnter(ie,fe,T)}return[]}function ue(Z,ie,U,L,fe){let T=arguments.length>5&&arguments[5]!==void 0?arguments[5]:emptyOptions;Se();let it=Te(Z),dt=ha(ie,U),_e=ts_formatting_exports.getFormatContext(fe,e);return ne(ji(L,fa,Vr),Ge=>(B.throwIfCancellationRequested(),ts_codefix_exports.getFixes({errorCode:Ge,sourceFile:it,span:dt,program:w,host:e,cancellationToken:B,formatContext:_e,preferences:T})))}function He(Z,ie,U){let L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:emptyOptions;Se(),Y.assert(Z.type==="file");let fe=Te(Z.fileName),T=ts_formatting_exports.getFormatContext(U,e);return ts_codefix_exports.getAllFixes({fixId:ie,sourceFile:fe,program:w,host:e,cancellationToken:B,formatContext:T,preferences:L})}function _t(Z,ie){let U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:emptyOptions;var L;Se(),Y.assert(Z.type==="file");let fe=Te(Z.fileName),T=ts_formatting_exports.getFormatContext(ie,e),it=(L=Z.mode)!=null?L:Z.skipDestructiveCodeActions?"SortAndCombine":"All";return ts_OrganizeImports_exports.organizeImports(fe,T,e,w,U,it)}function ft(Z,ie,U){let L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:emptyOptions;return getEditsForFileRename(Ye(),Z,ie,e,ts_formatting_exports.getFormatContext(U,e),L,ae)}function Kt(Z,ie){let U=typeof Z=="string"?ie:Z;return ir(U)?Promise.all(U.map(L=>zt(L))):zt(U)}function zt(Z){let ie=U=>Ui(U,N,$);return Y.assertEqual(Z.type,"install package"),e.installPackage?e.installPackage({fileName:ie(Z.file),packageName:Z.packageName}):Promise.reject("Host does not implement `installPackage`")}function xe(Z,ie,U,L){let fe=L?ts_formatting_exports.getFormatContext(L,e).options:void 0;return ts_JsDoc_exports.getDocCommentTemplateAtPosition(getNewLineOrDefaultFromHost(e,fe),x.getCurrentSourceFile(Z),ie,U)}function Le(Z,ie,U){if(U===60)return!1;let L=x.getCurrentSourceFile(Z);if(isInString(L,ie))return!1;if(isInsideJsxElementOrAttribute(L,ie))return U===123;if(isInTemplateString(L,ie))return!1;switch(U){case 39:case 34:case 96:return!isInComment(L,ie)}return!0}function Re(Z,ie){let U=x.getCurrentSourceFile(Z),L=findPrecedingToken(ie,U);if(!L)return;let fe=L.kind===31&&tu(L.parent)?L.parent.parent:td(L)&&lv(L.parent)?L.parent:void 0;if(fe&&gr(fe))return{newText:``};let T=L.kind===31&&uv(L.parent)?L.parent.parent:td(L)&&pd(L.parent)?L.parent:void 0;if(T&&Ln(T))return{newText:""}}function ot(Z,ie){return{lineStarts:Z.getLineStarts(),firstLine:Z.getLineAndCharacterOfPosition(ie.pos).line,lastLine:Z.getLineAndCharacterOfPosition(ie.end).line}}function Ct(Z,ie,U){let L=x.getCurrentSourceFile(Z),fe=[],{lineStarts:T,firstLine:it,lastLine:dt}=ot(L,ie),_e=U||!1,Ge=Number.MAX_VALUE,bt=new Map,jt=new RegExp(/\S/),Yt=isInsideJsxElement(L,T[it]),$t=Yt?"{/*":"//";for(let Wt=it;Wt<=dt;Wt++){let Xr=L.text.substring(T[Wt],L.getLineEndOfPosition(T[Wt])),Dr=jt.exec(Xr);Dr&&(Ge=Math.min(Ge,Dr.index),bt.set(Wt.toString(),Dr.index),Xr.substr(Dr.index,$t.length)!==$t&&(_e=U===void 0||U))}for(let Wt=it;Wt<=dt;Wt++){if(it!==dt&&T[Wt]===ie.end)continue;let Xr=bt.get(Wt.toString());Xr!==void 0&&(Yt?fe.push.apply(fe,Mt(Z,{pos:T[Wt]+Ge,end:L.getLineEndOfPosition(T[Wt])},_e,Yt)):_e?fe.push({newText:$t,span:{length:0,start:T[Wt]+Ge}}):L.text.substr(T[Wt]+Xr,$t.length)===$t&&fe.push({newText:"",span:{length:$t.length,start:T[Wt]+Xr}}))}return fe}function Mt(Z,ie,U,L){var fe;let T=x.getCurrentSourceFile(Z),it=[],{text:dt}=T,_e=!1,Ge=U||!1,bt=[],{pos:jt}=ie,Yt=L!==void 0?L:isInsideJsxElement(T,jt),$t=Yt?"{/*":"/*",Wt=Yt?"*/}":"*/",Xr=Yt?"\\{\\/\\*":"\\/\\*",Dr=Yt?"\\*\\/\\}":"\\*\\/";for(;jt<=ie.end;){let Lr=dt.substr(jt,$t.length)===$t?$t.length:0,yr=isInComment(T,jt+Lr);if(yr)Yt&&(yr.pos--,yr.end++),bt.push(yr.pos),yr.kind===3&&bt.push(yr.end),_e=!0,jt=yr.end+1;else{let Rn=dt.substring(jt,ie.end).search(`(${Xr})|(${Dr})`);Ge=U!==void 0?U:Ge||!isTextWhiteSpaceLike(dt,jt,Rn===-1?ie.end:jt+Rn),jt=Rn===-1?ie.end+1:jt+Rn+Wt.length}}if(Ge||!_e){((fe=isInComment(T,ie.pos))==null?void 0:fe.kind)!==2&&Qn(bt,ie.pos,Vr),Qn(bt,ie.end,Vr);let Lr=bt[0];dt.substr(Lr,$t.length)!==$t&&it.push({newText:$t,span:{length:0,start:Lr}});for(let yr=1;yr0?Lr-Wt.length:0,Rn=dt.substr(yr,Wt.length)===Wt?Wt.length:0;it.push({newText:"",span:{length:$t.length,start:Lr-Rn}})}return it}function It(Z,ie){let U=x.getCurrentSourceFile(Z),{firstLine:L,lastLine:fe}=ot(U,ie);return L===fe&&ie.pos!==ie.end?Mt(Z,ie,!0):Ct(Z,ie,!0)}function Mr(Z,ie){let U=x.getCurrentSourceFile(Z),L=[],{pos:fe}=ie,{end:T}=ie;fe===T&&(T+=isInsideJsxElement(U,fe)?2:1);for(let it=fe;it<=T;it++){let dt=isInComment(U,it);if(dt){switch(dt.kind){case 2:L.push.apply(L,Ct(Z,{end:dt.end,pos:dt.pos+1},!1));break;case 3:L.push.apply(L,Mt(Z,{end:dt.end,pos:dt.pos+1},!1))}it=dt.end+1}}return L}function gr(Z){let{openingElement:ie,closingElement:U,parent:L}=Z;return!Hi(ie.tagName,U.tagName)||lv(L)&&Hi(ie.tagName,L.openingElement.tagName)&&gr(L)}function Ln(Z){let{closingFragment:ie,parent:U}=Z;return!!(ie.flags&131072)||pd(U)&&Ln(U)}function ys(Z,ie,U){let L=x.getCurrentSourceFile(Z),fe=ts_formatting_exports.getRangeOfEnclosingComment(L,ie);return fe&&(!U||fe.kind===3)?createTextSpanFromRange(fe):void 0}function ci(Z,ie){Se();let U=Te(Z);B.throwIfCancellationRequested();let L=U.text,fe=[];if(ie.length>0&&!_e(U.fileName)){let Ge=it(),bt;for(;bt=Ge.exec(L);){B.throwIfCancellationRequested();let jt=3;Y.assert(bt.length===ie.length+jt);let Yt=bt[1],$t=bt.index+Yt.length;if(!isInComment(U,$t))continue;let Wt;for(let Dr=0;Dr"("+T(yr.text)+")").join("|")+")",Wt=/(?:$|\*\/)/.source,Xr=/(?:.*?)/.source,Dr="("+$t+Xr+")",Lr=Yt+Dr+Wt;return new RegExp(Lr,"gim")}function dt(Ge){return Ge>=97&&Ge<=122||Ge>=65&&Ge<=90||Ge>=48&&Ge<=57}function _e(Ge){return Fi(Ge,"/node_modules/")}}function Xi(Z,ie,U){return Se(),ts_Rename_exports.getRenameInfo(w,Te(Z),ie,U||{})}function Aa(Z,ie,U,L,fe,T){let[it,dt]=typeof ie=="number"?[ie,void 0]:[ie.pos,ie.end];return{file:Z,startPosition:it,endPosition:dt,program:Ye(),host:e,formatContext:ts_formatting_exports.getFormatContext(L,e),cancellationToken:B,preferences:U,triggerReason:fe,kind:T}}function vs(Z,ie,U){return{file:Z,program:Ye(),host:e,span:ie,preferences:U,cancellationToken:B}}function $s(Z,ie){return ts_SmartSelectionRange_exports.getSmartSelectionRange(ie,x.getCurrentSourceFile(Z))}function li(Z,ie){let U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:emptyOptions,L=arguments.length>3?arguments[3]:void 0,fe=arguments.length>4?arguments[4]:void 0;Se();let T=Te(Z);return ts_refactor_exports.getApplicableRefactors(Aa(T,ie,U,emptyOptions,L,fe))}function Yi(Z,ie,U,L,fe){let T=arguments.length>5&&arguments[5]!==void 0?arguments[5]:emptyOptions;Se();let it=Te(Z);return ts_refactor_exports.getEditsForRefactor(Aa(it,U,T,ie),L,fe)}function Qi(Z,ie){return ie===0?{line:0,character:0}:ae.toLineColumnOffset(Z,ie)}function bs(Z,ie){Se();let U=ts_CallHierarchy_exports.resolveCallHierarchyDeclaration(w,getTouchingPropertyName(Te(Z),ie));return U&&mapOneOrMany(U,L=>ts_CallHierarchy_exports.createCallHierarchyItem(w,L))}function Ai(Z,ie){Se();let U=Te(Z),L=firstOrOnly(ts_CallHierarchy_exports.resolveCallHierarchyDeclaration(w,ie===0?U:getTouchingPropertyName(U,ie)));return L?ts_CallHierarchy_exports.getIncomingCalls(w,L,B):[]}function xn(Z,ie){Se();let U=Te(Z),L=firstOrOnly(ts_CallHierarchy_exports.resolveCallHierarchyDeclaration(w,ie===0?U:getTouchingPropertyName(U,ie)));return L?ts_CallHierarchy_exports.getOutgoingCalls(w,L):[]}function Dt(Z,ie){let U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:emptyOptions;Se();let L=Te(Z);return ts_InlayHints_exports.provideInlayHints(vs(L,ie,U))}let Pi={dispose:pt,cleanupSemanticCache:Ve,getSyntacticDiagnostics:Gt,getSemanticDiagnostics:Nt,getSuggestionDiagnostics:Xt,getCompilerOptionsDiagnostics:er,getSyntacticClassifications:br,getSemanticClassifications:On,getEncodedSyntacticClassifications:Kr,getEncodedSemanticClassifications:nr,getCompletionsAtPosition:Tn,getCompletionEntryDetails:Hr,getCompletionEntrySymbol:Gi,getSignatureHelpItems:Nn,getQuickInfoAtPosition:pn,getDefinitionAtPosition:kn,getDefinitionAndBoundSpan:an,getImplementationAtPosition:$i,getTypeDefinitionAtPosition:mr,getReferencesAtPosition:_r,findReferences:In,getFileReferences:pr,getOccurrencesAtPosition:dn,getDocumentHighlights:Ur,getNameOrDottedNameSpan:oi,getBreakpointStatementAtPosition:cr,getNavigateToItems:Zt,getRenameInfo:Xi,getSmartSelectionRange:$s,findRenameLocations:Gr,getNavigationBarItems:$r,getNavigationTree:hr,getOutliningSpans:wa,getTodoComments:ci,getBraceMatchingAtPosition:Ki,getIndentationAtPosition:Mn,getFormattingEditsForRange:_i,getFormattingEditsForDocument:Ca,getFormattingEditsAfterKeystroke:St,getDocCommentTemplateAtPosition:xe,isValidBraceCompletionAtPosition:Le,getJsxClosingTagAtPosition:Re,getSpanOfEnclosingComment:ys,getCodeFixesAtPosition:ue,getCombinedCodeFix:He,applyCodeActionCommand:Kt,organizeImports:_t,getEditsForFileRename:ft,getEmitOutput:Or,getNonBoundSourceFile:ar,getProgram:Ye,getCurrentProgram:()=>w,getAutoImportProvider:Oe,updateIsDefinitionOfReferencedSymbols:oe,getApplicableRefactors:li,getEditsForRefactor:Yi,toLineColumnOffset:Qi,getSourceMapper:()=>ae,clearSourceMapperCache:()=>ae.clearCache(),prepareCallHierarchy:bs,provideCallHierarchyIncomingCalls:Ai,provideCallHierarchyOutgoingCalls:xn,toggleLineComment:Ct,toggleMultilineComment:Mt,commentSelection:It,uncommentSelection:Mr,provideInlayHints:Dt,getSupportedCodeFixes:v7};switch(f){case 0:break;case 1:Mv.forEach(Z=>Pi[Z]=()=>{throw new Error(`LanguageService Operation: ${Z} not allowed in LanguageServiceMode.PartialSemantic`)});break;case 2:M7.forEach(Z=>Pi[Z]=()=>{throw new Error(`LanguageService Operation: ${Z} not allowed in LanguageServiceMode.Syntactic`)});break;default:Y.assertNever(f)}return Pi}function oB(e){return e.nameTable||_B(e),e.nameTable}function _B(e){let t=e.nameTable=new Map;e.forEachChild(function r(s){if(yt(s)&&!isTagName(s)&&s.escapedText||Ta(s)&&cB(s)){let f=b4(s);t.set(f,t.get(f)===void 0?s.pos:-1)}else if(vn(s)){let f=s.escapedText;t.set(f,t.get(f)===void 0?s.pos:-1)}if(xr(s,r),ya(s))for(let f of s.jsDoc)xr(f,r)})}function cB(e){return c4(e)||e.parent.kind===280||pB(e)||l4(e)}function S7(e){let t=lB(e);return t&&(Hs(t.parent)||pv(t.parent))?t:void 0}function lB(e){switch(e.kind){case 10:case 14:case 8:if(e.parent.kind===164)return Wy(e.parent.parent)?e.parent.parent:void 0;case 79:return Wy(e.parent)&&(e.parent.parent.kind===207||e.parent.parent.kind===289)&&e.parent.name===e?e.parent:void 0}}function uB(e,t){let r=S7(e);if(r){let s=t.getContextualType(r.parent),f=s&&x7(r,t,s,!1);if(f&&f.length===1)return fo(f)}return t.getSymbolAtLocation(e)}function x7(e,t,r,s){let f=getNameFromPropertyName(e.name);if(!f)return Bt;if(!r.isUnion()){let w=r.getProperty(f);return w?[w]:Bt}let x=qt(r.types,w=>(Hs(e.parent)||pv(e.parent))&&t.isTypeInvalidDueToUnionDiscriminant(w,e.parent)?void 0:w.getProperty(f));if(s&&(x.length===0||x.length===r.types.length)){let w=r.getProperty(f);if(w)return[w]}return x.length===0?qt(r.types,w=>w.getProperty(f)):x}function pB(e){return e&&e.parent&&e.parent.kind===209&&e.parent.argumentExpression===e}function fB(e){if(iy)return tn(ma(Un(iy.getExecutingFilePath())),a3(e));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}var E7,wd,Cd,w7,Ov,Ad,Pd,C7,A7,P7,D7,k7,I7,N7,O7,Mv,M7,dB=D({"src/services/services.ts"(){"use strict";Lv(),Lv(),p7(),f7(),E7="0.8",wd=class{constructor(e,t,r){this.pos=t,this.end=r,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.kind=e}assertHasRealPosition(e){Y.assert(!hs(this.pos)&&!hs(this.end),e||"Node must have a real position for this operation")}getSourceFile(){return Si(this)}getStart(e,t){return this.assertHasRealPosition(),Io(this,e,t)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(e){return this.assertHasRealPosition(),this.getEnd()-this.getStart(e)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(e){return this.assertHasRealPosition(),this.getStart(e)-this.pos}getFullText(e){return this.assertHasRealPosition(),(e||this.getSourceFile()).text.substring(this.pos,this.end)}getText(e){return this.assertHasRealPosition(),e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())}getChildCount(e){return this.getChildren(e).length}getChildAt(e,t){return this.getChildren(t)[e]}getChildren(e){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),this._children||(this._children=rB(this,e))}getFirstToken(e){this.assertHasRealPosition();let t=this.getChildren(e);if(!t.length)return;let r=Pe(t,s=>s.kind<312||s.kind>353);return r.kind<163?r:r.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();let t=this.getChildren(e),r=Cn(t);if(r)return r.kind<163?r:r.getLastToken(e)}forEachChild(e,t){return xr(this,e,t)}},Cd=class{constructor(e,t){this.pos=e,this.end=t,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0}getSourceFile(){return Si(this)}getStart(e,t){return Io(this,e,t)}getFullStart(){return this.pos}getEnd(){return this.end}getWidth(e){return this.getEnd()-this.getStart(e)}getFullWidth(){return this.end-this.pos}getLeadingTriviaWidth(e){return this.getStart(e)-this.pos}getFullText(e){return(e||this.getSourceFile()).text.substring(this.pos,this.end)}getText(e){return e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())}getChildCount(){return this.getChildren().length}getChildAt(e){return this.getChildren()[e]}getChildren(){return this.kind===1&&this.jsDoc||Bt}getFirstToken(){}getLastToken(){}forEachChild(){}},w7=class{constructor(e,t){this.id=0,this.mergeId=0,this.flags=e,this.escapedName=t}getFlags(){return this.flags}get name(){return rf(this)}getEscapedName(){return this.escapedName}getName(){return this.name}getDeclarations(){return this.declarations}getDocumentationComment(e){if(!this.documentationComment)if(this.documentationComment=Bt,!this.declarations&&$y(this)&&this.links.target&&$y(this.links.target)&&this.links.target.links.tupleLabelDeclaration){let t=this.links.target.links.tupleLabelDeclaration;this.documentationComment=cu([t],e)}else this.documentationComment=cu(this.declarations,e);return this.documentationComment}getContextualDocumentationComment(e,t){if(e){if(Tl(e)&&(this.contextualGetAccessorDocumentationComment||(this.contextualGetAccessorDocumentationComment=cu(ee(this.declarations,Tl),t)),I(this.contextualGetAccessorDocumentationComment)))return this.contextualGetAccessorDocumentationComment;if(bl(e)&&(this.contextualSetAccessorDocumentationComment||(this.contextualSetAccessorDocumentationComment=cu(ee(this.declarations,bl),t)),I(this.contextualSetAccessorDocumentationComment)))return this.contextualSetAccessorDocumentationComment}return this.getDocumentationComment(t)}getJsDocTags(e){return this.tags===void 0&&(this.tags=Ed(this.declarations,e)),this.tags}getContextualJsDocTags(e,t){if(e){if(Tl(e)&&(this.contextualGetAccessorTags||(this.contextualGetAccessorTags=Ed(ee(this.declarations,Tl),t)),I(this.contextualGetAccessorTags)))return this.contextualGetAccessorTags;if(bl(e)&&(this.contextualSetAccessorTags||(this.contextualSetAccessorTags=Ed(ee(this.declarations,bl),t)),I(this.contextualSetAccessorTags)))return this.contextualSetAccessorTags}return this.getJsDocTags(t)}},Ov=class extends Cd{constructor(e,t,r){super(t,r),this.kind=e}},Ad=class extends Cd{constructor(e,t,r){super(t,r),this.kind=79}get text(){return qr(this)}},Ad.prototype.kind=79,Pd=class extends Cd{constructor(e,t,r){super(t,r),this.kind=80}get text(){return qr(this)}},Pd.prototype.kind=80,C7=class{constructor(e,t){this.checker=e,this.flags=t}getFlags(){return this.flags}getSymbol(){return this.symbol}getProperties(){return this.checker.getPropertiesOfType(this)}getProperty(e){return this.checker.getPropertyOfType(this,e)}getApparentProperties(){return this.checker.getAugmentedPropertiesOfType(this)}getCallSignatures(){return this.checker.getSignaturesOfType(this,0)}getConstructSignatures(){return this.checker.getSignaturesOfType(this,1)}getStringIndexType(){return this.checker.getIndexTypeOfType(this,0)}getNumberIndexType(){return this.checker.getIndexTypeOfType(this,1)}getBaseTypes(){return this.isClassOrInterface()?this.checker.getBaseTypes(this):void 0}isNullableType(){return this.checker.isNullableType(this)}getNonNullableType(){return this.checker.getNonNullableType(this)}getNonOptionalType(){return this.checker.getNonOptionalType(this)}getConstraint(){return this.checker.getBaseConstraintOfType(this)}getDefault(){return this.checker.getDefaultFromTypeParameter(this)}isUnion(){return!!(this.flags&1048576)}isIntersection(){return!!(this.flags&2097152)}isUnionOrIntersection(){return!!(this.flags&3145728)}isLiteral(){return!!(this.flags&2432)}isStringLiteral(){return!!(this.flags&128)}isNumberLiteral(){return!!(this.flags&256)}isTypeParameter(){return!!(this.flags&262144)}isClassOrInterface(){return!!(Bf(this)&3)}isClass(){return!!(Bf(this)&1)}isIndexType(){return!!(this.flags&4194304)}get typeArguments(){if(Bf(this)&4)return this.checker.getTypeArguments(this)}},A7=class{constructor(e,t){this.checker=e,this.flags=t}getDeclaration(){return this.declaration}getTypeParameters(){return this.typeParameters}getParameters(){return this.parameters}getReturnType(){return this.checker.getReturnTypeOfSignature(this)}getTypeParameterAtPosition(e){let t=this.checker.getParameterType(this,e);if(t.isIndexType()&&Kx(t.type)){let r=t.type.getConstraint();if(r)return this.checker.getIndexType(r)}return t}getDocumentationComment(){return this.documentationComment||(this.documentationComment=cu(Cp(this.declaration),this.checker))}getJsDocTags(){return this.jsDocTags||(this.jsDocTags=Ed(Cp(this.declaration),this.checker))}},P7=class extends wd{constructor(e,t,r){super(e,t,r),this.kind=308}update(e,t){return kv(this,e,t)}getLineAndCharacterOfPosition(e){return Ls(this,e)}getLineStarts(){return ss(this)}getPositionOfLineAndCharacter(e,t,r){return dy(ss(this),e,t,this.text,r)}getLineEndOfPosition(e){let{line:t}=this.getLineAndCharacterOfPosition(e),r=this.getLineStarts(),s;t+1>=r.length&&(s=this.getEnd()),s||(s=r[t+1]-1);let f=this.getFullText();return f[s]===` +`&&f[s-1]==="\r"?s-1:s}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let e=Be();return this.forEachChild(f),e;function t(x){let w=s(x);w&&e.add(w,x)}function r(x){let w=e.get(x);return w||e.set(x,w=[]),w}function s(x){let w=Ey(x);return w&&(Ws(w)&&bn(w.expression)?w.expression.name.text:vl(w)?getNameFromPropertyName(w):void 0)}function f(x){switch(x.kind){case 259:case 215:case 171:case 170:let w=x,A=s(w);if(A){let N=r(A),X=Cn(N);X&&w.parent===X.parent&&w.symbol===X.symbol?w.body&&!X.body&&(N[N.length-1]=w):N.push(w)}xr(x,f);break;case 260:case 228:case 261:case 262:case 263:case 264:case 268:case 278:case 273:case 270:case 271:case 174:case 175:case 184:t(x),xr(x,f);break;case 166:if(!rn(x,16476))break;case 257:case 205:{let N=x;if(df(N.name)){xr(N.name,f);break}N.initializer&&f(N.initializer)}case 302:case 169:case 168:t(x);break;case 275:let g=x;g.exportClause&&(iE(g.exportClause)?c(g.exportClause.elements,f):f(g.exportClause.name));break;case 269:let B=x.importClause;B&&(B.name&&t(B.name),B.namedBindings&&(B.namedBindings.kind===271?t(B.namedBindings):c(B.namedBindings.elements,f)));break;case 223:ps(x)!==0&&t(x);default:xr(x,f)}}}},D7=class{constructor(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r}getLineAndCharacterOfPosition(e){return Ls(this,e)}},k7=class{constructor(e){this.host=e}getCurrentSourceFile(e){var t,r,s,f,x,w,A,g;let B=this.host.getScriptSnapshot(e);if(!B)throw new Error("Could not find file: '"+e+"'.");let N=getScriptKind(e,this.host),X=this.host.getScriptVersion(e),F;if(this.currentFileName!==e){let $={languageVersion:99,impliedNodeFormat:getImpliedNodeFormatForFile(Ui(e,this.host.getCurrentDirectory(),((s=(r=(t=this.host).getCompilerHost)==null?void 0:r.call(t))==null?void 0:s.getCanonicalFileName)||D4(this.host)),(g=(A=(w=(x=(f=this.host).getCompilerHost)==null?void 0:x.call(f))==null?void 0:w.getModuleResolutionCache)==null?void 0:A.call(w))==null?void 0:g.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:Ex(this.host.getCompilationSettings())};F=Nv(e,B,$,X,!0,N)}else if(this.currentFileVersion!==X){let $=B.getChangeRange(this.currentFileScriptSnapshot);F=T7(this.currentSourceFile,B,X,$)}return F&&(this.currentFileVersion=X,this.currentFileName=e,this.currentFileScriptSnapshot=B,this.currentSourceFile=F),this.currentSourceFile}},I7={isCancellationRequested:w_,throwIfCancellationRequested:yn},N7=class{constructor(e){this.cancellationToken=e}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var e;if(this.isCancellationRequested())throw(e=rs)==null||e.instant(rs.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new Rp}},O7=class{constructor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:20;this.hostCancellationToken=e,this.throttleWaitMilliseconds=t,this.lastCancellationCheckTime=0}isCancellationRequested(){let e=ts();return Math.abs(e-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=e,this.hostCancellationToken.isCancellationRequested()):!1}throwIfCancellationRequested(){var e;if(this.isCancellationRequested())throw(e=rs)==null||e.instant(rs.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new Rp}},Mv=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes"],M7=[...Mv,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getOccurrencesAtPosition","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors"],gx(iB())}}),mB=()=>{},hB=()=>{},gB=()=>{},yB=()=>{},vB=()=>{},bB=()=>{},TB=()=>{},SB=()=>{},xB=()=>{},EB=()=>{},wB=()=>{},CB=()=>{},AB=()=>{},PB=()=>{},DB=()=>{},kB=()=>{},IB=()=>{},NB=()=>{},OB=()=>{},MB=()=>{},Lv=D({"src/services/_namespaces/ts.ts"(){"use strict";nn(),l7(),VF(),u7(),HF(),GF(),$F(),KF(),XF(),YF(),QF(),ZF(),eB(),tB(),dB(),mB(),hB(),gB(),yB(),vB(),bB(),TB(),SB(),xB(),EB(),wB(),p7(),f7(),CB(),AB(),PB(),DB(),kB(),IB(),NB(),OB(),MB()}}),LB=()=>{},L7={};y(L7,{ANONYMOUS:()=>ANONYMOUS,AccessFlags:()=>Cg,AssertionLevel:()=>$1,AssignmentDeclarationKind:()=>Mg,AssignmentKind:()=>S2,Associativity:()=>E2,BreakpointResolver:()=>ts_BreakpointResolver_exports,BuilderFileEmit:()=>BuilderFileEmit,BuilderProgramKind:()=>BuilderProgramKind,BuilderState:()=>BuilderState,BundleFileSectionKind:()=>ty,CallHierarchy:()=>ts_CallHierarchy_exports,CharacterCodes:()=>$g,CheckFlags:()=>Tg,CheckMode:()=>CheckMode,ClassificationType:()=>ClassificationType,ClassificationTypeNames:()=>ClassificationTypeNames,CommentDirectiveType:()=>ig,Comparison:()=>d,CompletionInfoFlags:()=>CompletionInfoFlags,CompletionTriggerKind:()=>CompletionTriggerKind,Completions:()=>ts_Completions_exports,ConfigFileProgramReloadLevel:()=>ConfigFileProgramReloadLevel,ContextFlags:()=>pg,CoreServicesShimHostAdapter:()=>CoreServicesShimHostAdapter,Debug:()=>Y,DiagnosticCategory:()=>qp,Diagnostics:()=>ve,DocumentHighlights:()=>DocumentHighlights,ElementFlags:()=>wg,EmitFlags:()=>Wp,EmitHint:()=>Qg,EmitOnly:()=>og,EndOfLineState:()=>EndOfLineState,EnumKind:()=>bg,ExitStatus:()=>cg,ExportKind:()=>ExportKind,Extension:()=>Kg,ExternalEmitHelpers:()=>Yg,FileIncludeKind:()=>ag,FilePreprocessingDiagnosticsKind:()=>sg,FileSystemEntryKind:()=>FileSystemEntryKind,FileWatcherEventKind:()=>FileWatcherEventKind,FindAllReferences:()=>ts_FindAllReferences_exports,FlattenLevel:()=>FlattenLevel,FlowFlags:()=>il,ForegroundColorEscapeSequences:()=>ForegroundColorEscapeSequences,FunctionFlags:()=>x2,GeneratedIdentifierFlags:()=>rg,GetLiteralTextFlags:()=>v2,GoToDefinition:()=>ts_GoToDefinition_exports,HighlightSpanKind:()=>HighlightSpanKind,ImportKind:()=>ImportKind,ImportsNotUsedAsValues:()=>Ug,IndentStyle:()=>IndentStyle,IndexKind:()=>Dg,InferenceFlags:()=>Ng,InferencePriority:()=>Ig,InlayHintKind:()=>InlayHintKind,InlayHints:()=>ts_InlayHints_exports,InternalEmitFlags:()=>Xg,InternalSymbolName:()=>Sg,InvalidatedProjectKind:()=>InvalidatedProjectKind,JsDoc:()=>ts_JsDoc_exports,JsTyping:()=>ts_JsTyping_exports,JsxEmit:()=>qg,JsxFlags:()=>tg,JsxReferenceKind:()=>Ag,LanguageServiceMode:()=>LanguageServiceMode,LanguageServiceShimHostAdapter:()=>LanguageServiceShimHostAdapter,LanguageVariant:()=>Hg,LexicalEnvironmentFlags:()=>ey,ListFormat:()=>ry,LogLevel:()=>Y1,MemberOverrideStatus:()=>lg,ModifierFlags:()=>Mp,ModuleDetectionKind:()=>Rg,ModuleInstanceState:()=>ModuleInstanceState,ModuleKind:()=>Bg,ModuleResolutionKind:()=>Lg,ModuleSpecifierEnding:()=>j2,NavigateTo:()=>ts_NavigateTo_exports,NavigationBar:()=>ts_NavigationBar_exports,NewLineKind:()=>zg,NodeBuilderFlags:()=>fg,NodeCheckFlags:()=>xg,NodeFactoryFlags:()=>F2,NodeFlags:()=>Op,NodeResolutionFeatures:()=>NodeResolutionFeatures,ObjectFlags:()=>Fp,OperationCanceledException:()=>Rp,OperatorPrecedence:()=>w2,OrganizeImports:()=>ts_OrganizeImports_exports,OrganizeImportsMode:()=>OrganizeImportsMode,OuterExpressionKinds:()=>Zg,OutliningElementsCollector:()=>ts_OutliningElementsCollector_exports,OutliningSpanKind:()=>OutliningSpanKind,OutputFileType:()=>OutputFileType,PackageJsonAutoImportPreference:()=>PackageJsonAutoImportPreference,PackageJsonDependencyGroup:()=>PackageJsonDependencyGroup,PatternMatchKind:()=>PatternMatchKind,PollingInterval:()=>PollingInterval,PollingWatchKind:()=>Fg,PragmaKindFlags:()=>ny,PrivateIdentifierKind:()=>PrivateIdentifierKind,ProcessLevel:()=>ProcessLevel,QuotePreference:()=>QuotePreference,RelationComparisonResult:()=>Lp,Rename:()=>ts_Rename_exports,ScriptElementKind:()=>ScriptElementKind,ScriptElementKindModifier:()=>ScriptElementKindModifier,ScriptKind:()=>Wg,ScriptSnapshot:()=>ScriptSnapshot,ScriptTarget:()=>Vg,SemanticClassificationFormat:()=>SemanticClassificationFormat,SemanticMeaning:()=>SemanticMeaning,SemicolonPreference:()=>SemicolonPreference,SignatureCheckMode:()=>SignatureCheckMode,SignatureFlags:()=>Bp,SignatureHelp:()=>ts_SignatureHelp_exports,SignatureKind:()=>Pg,SmartSelectionRange:()=>ts_SmartSelectionRange_exports,SnippetKind:()=>zp,SortKind:()=>H1,StructureIsReused:()=>_g,SymbolAccessibility:()=>hg,SymbolDisplay:()=>ts_SymbolDisplay_exports,SymbolDisplayPartKind:()=>SymbolDisplayPartKind,SymbolFlags:()=>jp,SymbolFormatFlags:()=>mg,SyntaxKind:()=>Np,SyntheticSymbolKind:()=>gg,Ternary:()=>Og,ThrottledCancellationToken:()=>O7,TokenClass:()=>TokenClass,TokenFlags:()=>ng,TransformFlags:()=>Up,TypeFacts:()=>TypeFacts,TypeFlags:()=>Jp,TypeFormatFlags:()=>dg,TypeMapKind:()=>kg,TypePredicateKind:()=>yg,TypeReferenceSerializationKind:()=>vg,TypeScriptServicesFactory:()=>TypeScriptServicesFactory,UnionReduction:()=>ug,UpToDateStatusType:()=>UpToDateStatusType,VarianceFlags:()=>Eg,Version:()=>Version,VersionRange:()=>VersionRange,WatchDirectoryFlags:()=>Gg,WatchDirectoryKind:()=>Jg,WatchFileKind:()=>jg,WatchLogLevel:()=>WatchLogLevel,WatchType:()=>WatchType,accessPrivateIdentifier:()=>accessPrivateIdentifier,addEmitFlags:()=>addEmitFlags,addEmitHelper:()=>addEmitHelper,addEmitHelpers:()=>addEmitHelpers,addInternalEmitFlags:()=>addInternalEmitFlags,addNodeFactoryPatcher:()=>OL,addObjectAllocatorPatcher:()=>rM,addRange:()=>jr,addRelatedInfo:()=>Rl,addSyntheticLeadingComment:()=>addSyntheticLeadingComment,addSyntheticTrailingComment:()=>addSyntheticTrailingComment,addToSeen:()=>zO,advancedAsyncSuperHelper:()=>advancedAsyncSuperHelper,affectsDeclarationPathOptionDeclarations:()=>affectsDeclarationPathOptionDeclarations,affectsEmitOptionDeclarations:()=>affectsEmitOptionDeclarations,allKeysStartWithDot:()=>allKeysStartWithDot,altDirectorySeparator:()=>py,and:()=>b5,append:()=>tr,appendIfUnique:()=>g_,arrayFrom:()=>Za,arrayIsEqualTo:()=>Hc,arrayIsHomogeneous:()=>cL,arrayIsSorted:()=>Wc,arrayOf:()=>yo,arrayReverseIterator:()=>y_,arrayToMap:()=>Zc,arrayToMultiMap:()=>bo,arrayToNumericMap:()=>Os,arraysEqual:()=>Ie,assertType:()=>S5,assign:()=>vo,assignHelper:()=>assignHelper,asyncDelegator:()=>asyncDelegator,asyncGeneratorHelper:()=>asyncGeneratorHelper,asyncSuperHelper:()=>asyncSuperHelper,asyncValues:()=>asyncValues,attachFileToDiagnostics:()=>qs,awaitHelper:()=>awaitHelper,awaiterHelper:()=>awaiterHelper,base64decode:()=>uO,base64encode:()=>lO,binarySearch:()=>Ya,binarySearchKey:()=>b_,bindSourceFile:()=>bindSourceFile,breakIntoCharacterSpans:()=>breakIntoCharacterSpans,breakIntoWordSpans:()=>breakIntoWordSpans,buildLinkParts:()=>buildLinkParts,buildOpts:()=>buildOpts,buildOverload:()=>buildOverload,bundlerModuleNameResolver:()=>bundlerModuleNameResolver,canBeConvertedToAsync:()=>canBeConvertedToAsync,canHaveDecorators:()=>ME,canHaveExportModifier:()=>xL,canHaveFlowNode:()=>OI,canHaveIllegalDecorators:()=>Qj,canHaveIllegalModifiers:()=>Zj,canHaveIllegalType:()=>Yj,canHaveIllegalTypeParameters:()=>IE,canHaveJSDoc:()=>Af,canHaveLocals:()=>FP,canHaveModifiers:()=>fc,canHaveSymbol:()=>JP,canJsonReportNoInputFiles:()=>canJsonReportNoInputFiles,canProduceDiagnostics:()=>canProduceDiagnostics,canUsePropertyAccess:()=>EL,canWatchDirectoryOrFile:()=>canWatchDirectoryOrFile,cartesianProduct:()=>E5,cast:()=>ti,chainBundle:()=>chainBundle,chainDiagnosticMessages:()=>sM,changeAnyExtension:()=>RT,changeCompilerHostLikeToUseCache:()=>changeCompilerHostLikeToUseCache,changeExtension:()=>VM,changesAffectModuleResolution:()=>aD,changesAffectingProgramStructure:()=>sD,childIsDecorated:()=>h0,classElementOrClassElementParameterIsDecorated:()=>rI,classOrConstructorParameterIsDecorated:()=>tI,classPrivateFieldGetHelper:()=>classPrivateFieldGetHelper,classPrivateFieldInHelper:()=>classPrivateFieldInHelper,classPrivateFieldSetHelper:()=>classPrivateFieldSetHelper,classicNameResolver:()=>classicNameResolver,classifier:()=>ts_classifier_exports,cleanExtendedConfigCache:()=>cleanExtendedConfigCache,clear:()=>nt,clearMap:()=>jO,clearSharedExtendedConfigFileWatcher:()=>clearSharedExtendedConfigFileWatcher,climbPastPropertyAccess:()=>climbPastPropertyAccess,climbPastPropertyOrElementAccess:()=>climbPastPropertyOrElementAccess,clone:()=>E_,cloneCompilerOptions:()=>cloneCompilerOptions,closeFileWatcher:()=>kO,closeFileWatcherOf:()=>closeFileWatcherOf,codefix:()=>ts_codefix_exports,collapseTextChangeRangesAcrossMultipleVersions:()=>SA,collectExternalModuleInfo:()=>collectExternalModuleInfo,combine:()=>$c,combinePaths:()=>tn,commentPragmas:()=>Vp,commonOptionsWithBuild:()=>commonOptionsWithBuild,commonPackageFolders:()=>P2,compact:()=>Gc,compareBooleans:()=>j1,compareDataObjects:()=>px,compareDiagnostics:()=>a2,compareDiagnosticsSkipRelatedInformation:()=>qf,compareEmitHelpers:()=>compareEmitHelpers,compareNumberOfDirectorySeparators:()=>WM,comparePaths:()=>Y5,comparePathsCaseInsensitive:()=>X5,comparePathsCaseSensitive:()=>K5,comparePatternKeys:()=>comparePatternKeys,compareProperties:()=>R1,compareStringsCaseInsensitive:()=>C_,compareStringsCaseInsensitiveEslintCompatible:()=>O1,compareStringsCaseSensitive:()=>ri,compareStringsCaseSensitiveUI:()=>L1,compareTextSpans:()=>I1,compareValues:()=>Vr,compileOnSaveCommandLineOption:()=>compileOnSaveCommandLineOption,compilerOptionsAffectDeclarationPath:()=>wM,compilerOptionsAffectEmit:()=>EM,compilerOptionsAffectSemanticDiagnostics:()=>xM,compilerOptionsDidYouMeanDiagnostics:()=>compilerOptionsDidYouMeanDiagnostics,compilerOptionsIndicateEsModules:()=>compilerOptionsIndicateEsModules,compose:()=>k1,computeCommonSourceDirectoryOfFilenames:()=>computeCommonSourceDirectoryOfFilenames,computeLineAndCharacterOfPosition:()=>my,computeLineOfPosition:()=>k_,computeLineStarts:()=>Kp,computePositionOfLineAndCharacter:()=>dy,computeSignature:()=>computeSignature,computeSignatureWithDiagnostics:()=>computeSignatureWithDiagnostics,computeSuggestionDiagnostics:()=>computeSuggestionDiagnostics,concatenate:()=>Ft,concatenateDiagnosticMessageChains:()=>oM,consumesNodeCoreModules:()=>consumesNodeCoreModules,contains:()=>pe,containsIgnoredPath:()=>Hx,containsObjectRestOrSpread:()=>Av,containsParseError:()=>Ky,containsPath:()=>jT,convertCompilerOptionsForTelemetry:()=>convertCompilerOptionsForTelemetry,convertCompilerOptionsFromJson:()=>convertCompilerOptionsFromJson,convertJsonOption:()=>convertJsonOption,convertToBase64:()=>ix,convertToObject:()=>convertToObject,convertToObjectWorker:()=>convertToObjectWorker,convertToOptionsWithAbsolutePaths:()=>convertToOptionsWithAbsolutePaths,convertToRelativePath:()=>Z5,convertToTSConfig:()=>convertToTSConfig,convertTypeAcquisitionFromJson:()=>convertTypeAcquisitionFromJson,copyComments:()=>copyComments,copyEntries:()=>lD,copyLeadingComments:()=>copyLeadingComments,copyProperties:()=>H,copyTrailingAsLeadingComments:()=>copyTrailingAsLeadingComments,copyTrailingComments:()=>copyTrailingComments,couldStartTrivia:()=>_A,countWhere:()=>Xe,createAbstractBuilder:()=>createAbstractBuilder,createAccessorPropertyBackingField:()=>IJ,createAccessorPropertyGetRedirector:()=>NJ,createAccessorPropertySetRedirector:()=>OJ,createBaseNodeFactory:()=>S8,createBinaryExpressionTrampoline:()=>EJ,createBindingHelper:()=>createBindingHelper,createBuildInfo:()=>createBuildInfo,createBuilderProgram:()=>createBuilderProgram,createBuilderProgramUsingProgramBuildInfo:()=>createBuilderProgramUsingProgramBuildInfo,createBuilderStatusReporter:()=>createBuilderStatusReporter,createCacheWithRedirects:()=>createCacheWithRedirects,createCacheableExportInfoMap:()=>createCacheableExportInfoMap,createCachedDirectoryStructureHost:()=>createCachedDirectoryStructureHost,createClassifier:()=>createClassifier,createCommentDirectivesMap:()=>MD,createCompilerDiagnostic:()=>Ol,createCompilerDiagnosticForInvalidCustomType:()=>createCompilerDiagnosticForInvalidCustomType,createCompilerDiagnosticFromMessageChain:()=>aM,createCompilerHost:()=>createCompilerHost,createCompilerHostFromProgramHost:()=>createCompilerHostFromProgramHost,createCompilerHostWorker:()=>createCompilerHostWorker,createDetachedDiagnostic:()=>Ro,createDiagnosticCollection:()=>gN,createDiagnosticForFileFromMessageChain:()=>uk,createDiagnosticForNode:()=>ok,createDiagnosticForNodeArray:()=>_k,createDiagnosticForNodeArrayFromMessageChain:()=>lk,createDiagnosticForNodeFromMessageChain:()=>ck,createDiagnosticForNodeInSourceFile:()=>PS,createDiagnosticForRange:()=>fk,createDiagnosticMessageChainFromDiagnostic:()=>pk,createDiagnosticReporter:()=>createDiagnosticReporter,createDocumentPositionMapper:()=>createDocumentPositionMapper,createDocumentRegistry:()=>createDocumentRegistry,createDocumentRegistryInternal:()=>createDocumentRegistryInternal,createEmitAndSemanticDiagnosticsBuilderProgram:()=>createEmitAndSemanticDiagnosticsBuilderProgram,createEmitHelperFactory:()=>createEmitHelperFactory,createEmptyExports:()=>wj,createExpressionForJsxElement:()=>Aj,createExpressionForJsxFragment:()=>Pj,createExpressionForObjectLiteralElementLike:()=>Lj,createExpressionForPropertyName:()=>vE,createExpressionFromEntityName:()=>yE,createExternalHelpersImportDeclarationIfNeeded:()=>Wj,createFileDiagnostic:()=>i2,createFileDiagnosticFromMessageChain:()=>r0,createForOfBindingStatement:()=>Dj,createGetCanonicalFileName:()=>wp,createGetSourceFile:()=>createGetSourceFile,createGetSymbolAccessibilityDiagnosticForNode:()=>createGetSymbolAccessibilityDiagnosticForNode,createGetSymbolAccessibilityDiagnosticForNodeName:()=>createGetSymbolAccessibilityDiagnosticForNodeName,createGetSymbolWalker:()=>createGetSymbolWalker,createIncrementalCompilerHost:()=>createIncrementalCompilerHost,createIncrementalProgram:()=>createIncrementalProgram,createInputFiles:()=>qL,createInputFilesWithFilePaths:()=>C8,createInputFilesWithFileTexts:()=>A8,createJsxFactoryExpression:()=>gE,createLanguageService:()=>sB,createLanguageServiceSourceFile:()=>Nv,createMemberAccessForPropertyName:()=>hd,createModeAwareCache:()=>createModeAwareCache,createModeAwareCacheKey:()=>createModeAwareCacheKey,createModuleResolutionCache:()=>createModuleResolutionCache,createModuleResolutionLoader:()=>createModuleResolutionLoader,createModuleSpecifierResolutionHost:()=>createModuleSpecifierResolutionHost,createMultiMap:()=>Be,createNodeConverters:()=>x8,createNodeFactory:()=>Zf,createOptionNameMap:()=>createOptionNameMap,createOverload:()=>createOverload,createPackageJsonImportFilter:()=>createPackageJsonImportFilter,createPackageJsonInfo:()=>createPackageJsonInfo,createParenthesizerRules:()=>createParenthesizerRules,createPatternMatcher:()=>createPatternMatcher,createPrependNodes:()=>createPrependNodes,createPrinter:()=>createPrinter,createPrinterWithDefaults:()=>createPrinterWithDefaults,createPrinterWithRemoveComments:()=>createPrinterWithRemoveComments,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>createPrinterWithRemoveCommentsNeverAsciiEscape,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>createPrinterWithRemoveCommentsOmitTrailingSemicolon,createProgram:()=>createProgram,createProgramHost:()=>createProgramHost,createPropertyNameNodeForIdentifierOrLiteral:()=>bL,createQueue:()=>Fr,createRange:()=>Jf,createRedirectedBuilderProgram:()=>createRedirectedBuilderProgram,createResolutionCache:()=>createResolutionCache,createRuntimeTypeSerializer:()=>createRuntimeTypeSerializer,createScanner:()=>Po,createSemanticDiagnosticsBuilderProgram:()=>createSemanticDiagnosticsBuilderProgram,createSet:()=>Cr,createSolutionBuilder:()=>createSolutionBuilder,createSolutionBuilderHost:()=>createSolutionBuilderHost,createSolutionBuilderWithWatch:()=>createSolutionBuilderWithWatch,createSolutionBuilderWithWatchHost:()=>createSolutionBuilderWithWatchHost,createSortedArray:()=>zc,createSourceFile:()=>YE,createSourceMapGenerator:()=>createSourceMapGenerator,createSourceMapSource:()=>UL,createSuperAccessVariableStatement:()=>createSuperAccessVariableStatement,createSymbolTable:()=>nD,createSymlinkCache:()=>kM,createSystemWatchFunctions:()=>createSystemWatchFunctions,createTextChange:()=>createTextChange,createTextChangeFromStartLength:()=>createTextChangeFromStartLength,createTextChangeRange:()=>Zp,createTextRangeFromNode:()=>createTextRangeFromNode,createTextRangeFromSpan:()=>createTextRangeFromSpan,createTextSpan:()=>L_,createTextSpanFromBounds:()=>ha,createTextSpanFromNode:()=>createTextSpanFromNode,createTextSpanFromRange:()=>createTextSpanFromRange,createTextSpanFromStringLiteralLikeContent:()=>createTextSpanFromStringLiteralLikeContent,createTextWriter:()=>wN,createTokenRange:()=>hO,createTypeChecker:()=>createTypeChecker,createTypeReferenceDirectiveResolutionCache:()=>createTypeReferenceDirectiveResolutionCache,createTypeReferenceResolutionLoader:()=>createTypeReferenceResolutionLoader,createUnderscoreEscapedMultiMap:()=>Ht,createUnparsedSourceFile:()=>JL,createWatchCompilerHost:()=>createWatchCompilerHost2,createWatchCompilerHostOfConfigFile:()=>createWatchCompilerHostOfConfigFile,createWatchCompilerHostOfFilesAndCompilerOptions:()=>createWatchCompilerHostOfFilesAndCompilerOptions,createWatchFactory:()=>createWatchFactory,createWatchHost:()=>createWatchHost,createWatchProgram:()=>createWatchProgram,createWatchStatusReporter:()=>createWatchStatusReporter,createWriteFileMeasuringIO:()=>createWriteFileMeasuringIO,declarationNameToString:()=>AS,decodeMappings:()=>decodeMappings,decodedTextSpanIntersectsWith:()=>Sy,decorateHelper:()=>decorateHelper,deduplicate:()=>ji,defaultIncludeSpec:()=>defaultIncludeSpec,defaultInitCompilerOptions:()=>defaultInitCompilerOptions,defaultMaximumTruncationLength:()=>r8,detectSortCaseSensitivity:()=>Vc,diagnosticCategoryName:()=>F5,diagnosticToString:()=>diagnosticToString,directoryProbablyExists:()=>sx,directorySeparator:()=>zn,displayPart:()=>displayPart,displayPartsToString:()=>aB,disposeEmitNodes:()=>disposeEmitNodes,documentSpansEqual:()=>documentSpansEqual,dumpTracingLegend:()=>dumpTracingLegend,elementAt:()=>wT,elideNodes:()=>AJ,emitComments:()=>U4,emitDetachedComments:()=>zN,emitFiles:()=>emitFiles,emitFilesAndReportErrors:()=>emitFilesAndReportErrors,emitFilesAndReportErrorsAndGetExitStatus:()=>emitFilesAndReportErrorsAndGetExitStatus,emitModuleKindIsNonNodeESM:()=>uM,emitNewLineBeforeLeadingCommentOfPosition:()=>UN,emitNewLineBeforeLeadingComments:()=>B4,emitNewLineBeforeLeadingCommentsOfPosition:()=>q4,emitSkippedWithNoDiagnostics:()=>emitSkippedWithNoDiagnostics,emitUsingBuildInfo:()=>emitUsingBuildInfo,emptyArray:()=>Bt,emptyFileSystemEntries:()=>T8,emptyMap:()=>V1,emptyOptions:()=>emptyOptions,emptySet:()=>ET,endsWith:()=>es,ensurePathIsNonModuleName:()=>_y,ensureScriptKind:()=>Nx,ensureTrailingDirectorySeparator:()=>wo,entityNameToString:()=>ls,enumerateInsertsAndDeletes:()=>x5,equalOwnProperties:()=>S_,equateStringsCaseInsensitive:()=>Ms,equateStringsCaseSensitive:()=>To,equateValues:()=>fa,esDecorateHelper:()=>esDecorateHelper,escapeJsxAttributeString:()=>A4,escapeLeadingUnderscores:()=>vi,escapeNonAsciiString:()=>Of,escapeSnippetText:()=>vL,escapeString:()=>Nf,every:()=>me,expandPreOrPostfixIncrementOrDecrementExpression:()=>Rj,explainFiles:()=>explainFiles,explainIfFileIsRedirectAndImpliedFormat:()=>explainIfFileIsRedirectAndImpliedFormat,exportAssignmentIsAlias:()=>I0,exportStarHelper:()=>exportStarHelper,expressionResultIsUnused:()=>fL,extend:()=>S,extendsHelper:()=>extendsHelper,extensionFromPath:()=>$M,extensionIsTS:()=>qx,externalHelpersModuleNameText:()=>Kf,factory:()=>si,fileExtensionIs:()=>ns,fileExtensionIsOneOf:()=>da,fileIncludeReasonToDiagnostics:()=>fileIncludeReasonToDiagnostics,filter:()=>ee,filterMutate:()=>je,filterSemanticDiagnostics:()=>filterSemanticDiagnostics,find:()=>Pe,findAncestor:()=>zi,findBestPatternMatch:()=>TT,findChildOfKind:()=>findChildOfKind,findComputedPropertyNameCacheAssignment:()=>MJ,findConfigFile:()=>findConfigFile,findContainingList:()=>findContainingList,findDiagnosticForNode:()=>findDiagnosticForNode,findFirstNonJsxWhitespaceToken:()=>findFirstNonJsxWhitespaceToken,findIndex:()=>he,findLast:()=>te,findLastIndex:()=>De,findListItemInfo:()=>findListItemInfo,findMap:()=>R,findModifier:()=>findModifier,findNextToken:()=>findNextToken,findPackageJson:()=>findPackageJson,findPackageJsons:()=>findPackageJsons,findPrecedingMatchingToken:()=>findPrecedingMatchingToken,findPrecedingToken:()=>findPrecedingToken,findSuperStatementIndex:()=>findSuperStatementIndex,findTokenOnLeftOfPosition:()=>findTokenOnLeftOfPosition,findUseStrictPrologue:()=>TE,first:()=>fo,firstDefined:()=>q,firstDefinedIterator:()=>W,firstIterator:()=>v_,firstOrOnly:()=>firstOrOnly,firstOrUndefined:()=>pa,firstOrUndefinedIterator:()=>Xc,fixupCompilerOptions:()=>fixupCompilerOptions,flatMap:()=>ne,flatMapIterator:()=>Fe,flatMapToMutable:()=>ge,flatten:()=>ct,flattenCommaList:()=>RJ,flattenDestructuringAssignment:()=>flattenDestructuringAssignment,flattenDestructuringBinding:()=>flattenDestructuringBinding,flattenDiagnosticMessageText:()=>flattenDiagnosticMessageText,forEach:()=>c,forEachAncestor:()=>oD,forEachAncestorDirectory:()=>FT,forEachChild:()=>xr,forEachChildRecursively:()=>Dv,forEachEmittedFile:()=>forEachEmittedFile,forEachEnclosingBlockScopeContainer:()=>nk,forEachEntry:()=>_D,forEachExternalModuleToImportFrom:()=>forEachExternalModuleToImportFrom,forEachImportClauseDeclaration:()=>PI,forEachKey:()=>cD,forEachLeadingCommentRange:()=>cA,forEachNameInAccessChainWalkingLeft:()=>$O,forEachResolvedProjectReference:()=>forEachResolvedProjectReference,forEachReturnStatement:()=>Ek,forEachRight:()=>M,forEachTrailingCommentRange:()=>lA,forEachUnique:()=>forEachUnique,forEachYieldExpression:()=>wk,forSomeAncestorDirectory:()=>BO,formatColorAndReset:()=>formatColorAndReset,formatDiagnostic:()=>formatDiagnostic,formatDiagnostics:()=>formatDiagnostics,formatDiagnosticsWithColorAndContext:()=>formatDiagnosticsWithColorAndContext,formatGeneratedName:()=>bd,formatGeneratedNamePart:()=>Cv,formatLocation:()=>formatLocation,formatMessage:()=>iM,formatStringFromArgs:()=>X_,formatting:()=>ts_formatting_exports,fullTripleSlashAMDReferencePathRegEx:()=>T2,fullTripleSlashReferencePathRegEx:()=>b2,generateDjb2Hash:()=>generateDjb2Hash,generateTSConfig:()=>generateTSConfig,generatorHelper:()=>generatorHelper,getAdjustedReferenceLocation:()=>getAdjustedReferenceLocation,getAdjustedRenameLocation:()=>getAdjustedRenameLocation,getAliasDeclarationFromName:()=>u4,getAllAccessorDeclarations:()=>W0,getAllDecoratorsOfClass:()=>getAllDecoratorsOfClass,getAllDecoratorsOfClassElement:()=>getAllDecoratorsOfClassElement,getAllJSDocTags:()=>M3,getAllJSDocTagsOfKind:()=>JA,getAllKeys:()=>T_,getAllProjectOutputs:()=>getAllProjectOutputs,getAllSuperTypeNodes:()=>h4,getAllUnscopedEmitHelpers:()=>getAllUnscopedEmitHelpers,getAllowJSCompilerOption:()=>Ax,getAllowSyntheticDefaultImports:()=>gM,getAncestor:()=>XI,getAnyExtensionFromPath:()=>Gp,getAreDeclarationMapsEnabled:()=>hM,getAssignedExpandoInitializer:()=>hI,getAssignedName:()=>y3,getAssignmentDeclarationKind:()=>ps,getAssignmentDeclarationPropertyAccessKind:()=>KS,getAssignmentTargetKind:()=>o4,getAutomaticTypeDirectiveNames:()=>getAutomaticTypeDirectiveNames,getBaseFileName:()=>sl,getBinaryOperatorPrecedence:()=>Dl,getBuildInfo:()=>getBuildInfo,getBuildInfoFileVersionMap:()=>getBuildInfoFileVersionMap,getBuildInfoText:()=>getBuildInfoText,getBuildOrderFromAnyBuildOrder:()=>getBuildOrderFromAnyBuildOrder,getBuilderCreationParameters:()=>getBuilderCreationParameters,getBuilderFileEmit:()=>getBuilderFileEmit,getCheckFlags:()=>ux,getClassExtendsHeritageElement:()=>d4,getClassLikeDeclarationOfSymbol:()=>dx,getCombinedLocalAndExportSymbolFlags:()=>OO,getCombinedModifierFlags:()=>ef,getCombinedNodeFlags:()=>tf,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>EA,getCommentRange:()=>getCommentRange,getCommonSourceDirectory:()=>getCommonSourceDirectory,getCommonSourceDirectoryOfConfig:()=>getCommonSourceDirectoryOfConfig,getCompilerOptionValue:()=>u2,getCompilerOptionsDiffValue:()=>getCompilerOptionsDiffValue,getConditions:()=>getConditions,getConfigFileParsingDiagnostics:()=>getConfigFileParsingDiagnostics,getConstantValue:()=>getConstantValue,getContainerNode:()=>getContainerNode,getContainingClass:()=>qk,getContainingClassStaticBlock:()=>Uk,getContainingFunction:()=>Fk,getContainingFunctionDeclaration:()=>Bk,getContainingFunctionOrClassStaticBlock:()=>zk,getContainingNodeArray:()=>dL,getContainingObjectLiteralElement:()=>S7,getContextualTypeFromParent:()=>getContextualTypeFromParent,getContextualTypeFromParentOrAncestorTypeNode:()=>getContextualTypeFromParentOrAncestorTypeNode,getCurrentTime:()=>getCurrentTime,getDeclarationDiagnostics:()=>getDeclarationDiagnostics,getDeclarationEmitExtensionForPath:()=>O4,getDeclarationEmitOutputFilePath:()=>DN,getDeclarationEmitOutputFilePathWorker:()=>N4,getDeclarationFromName:()=>HI,getDeclarationModifierFlagsFromSymbol:()=>IO,getDeclarationOfKind:()=>tD,getDeclarationsOfKind:()=>rD,getDeclaredExpandoInitializer:()=>dI,getDecorators:()=>CA,getDefaultCompilerOptions:()=>y7,getDefaultExportInfoWorker:()=>getDefaultExportInfoWorker,getDefaultFormatCodeSettings:()=>getDefaultFormatCodeSettings,getDefaultLibFileName:()=>a3,getDefaultLibFilePath:()=>fB,getDefaultLikeExportInfo:()=>getDefaultLikeExportInfo,getDiagnosticText:()=>getDiagnosticText,getDiagnosticsWithinSpan:()=>getDiagnosticsWithinSpan,getDirectoryPath:()=>ma,getDocumentPositionMapper:()=>getDocumentPositionMapper,getESModuleInterop:()=>o2,getEditsForFileRename:()=>getEditsForFileRename,getEffectiveBaseTypeNode:()=>f4,getEffectiveConstraintOfTypeParameter:()=>UA,getEffectiveContainerForJSDocTemplateTag:()=>LI,getEffectiveImplementsTypeNodes:()=>m4,getEffectiveInitializer:()=>VS,getEffectiveJSDocHost:()=>A0,getEffectiveModifierFlags:()=>Rf,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>K4,getEffectiveModifierFlagsNoCache:()=>Y4,getEffectiveReturnTypeNode:()=>FN,getEffectiveSetAccessorTypeAnnotationNode:()=>qN,getEffectiveTypeAnnotationNode:()=>V0,getEffectiveTypeParameterDeclarations:()=>qA,getEffectiveTypeRoots:()=>getEffectiveTypeRoots,getElementOrPropertyAccessArgumentExpressionOrName:()=>Cf,getElementOrPropertyAccessName:()=>Fs,getElementsOfBindingOrAssignmentPattern:()=>kE,getEmitDeclarations:()=>c2,getEmitFlags:()=>xi,getEmitHelpers:()=>getEmitHelpers,getEmitModuleDetectionKind:()=>wx,getEmitModuleKind:()=>Ei,getEmitModuleResolutionKind:()=>Ml,getEmitScriptTarget:()=>Uf,getEnclosingBlockScopeContainer:()=>Zy,getEncodedSemanticClassifications:()=>getEncodedSemanticClassifications,getEncodedSyntacticClassifications:()=>getEncodedSyntacticClassifications,getEndLinePosition:()=>dS,getEntityNameFromTypeNode:()=>Zk,getEntrypointsFromPackageJsonInfo:()=>getEntrypointsFromPackageJsonInfo,getErrorCountForSummary:()=>getErrorCountForSummary,getErrorSpanForNode:()=>i0,getErrorSummaryText:()=>getErrorSummaryText,getEscapedTextOfIdentifierOrLiteral:()=>b4,getExpandoInitializer:()=>U_,getExportAssignmentExpression:()=>p4,getExportInfoMap:()=>getExportInfoMap,getExportNeedsImportStarHelper:()=>getExportNeedsImportStarHelper,getExpressionAssociativity:()=>dN,getExpressionPrecedence:()=>mN,getExternalHelpersModuleName:()=>EE,getExternalModuleImportEqualsDeclarationExpression:()=>iI,getExternalModuleName:()=>E0,getExternalModuleNameFromDeclaration:()=>AN,getExternalModuleNameFromPath:()=>F0,getExternalModuleNameLiteral:()=>Hj,getExternalModuleRequireArgument:()=>aI,getFallbackOptions:()=>getFallbackOptions,getFileEmitOutput:()=>getFileEmitOutput,getFileMatcherPatterns:()=>Ix,getFileNamesFromConfigSpecs:()=>getFileNamesFromConfigSpecs,getFileWatcherEventKind:()=>getFileWatcherEventKind,getFilesInErrorForSummary:()=>getFilesInErrorForSummary,getFirstConstructorWithBody:()=>R4,getFirstIdentifier:()=>eO,getFirstNonSpaceCharacterPosition:()=>getFirstNonSpaceCharacterPosition,getFirstProjectOutput:()=>getFirstProjectOutput,getFixableErrorSpanExpression:()=>getFixableErrorSpanExpression,getFormatCodeSettingsForWriting:()=>getFormatCodeSettingsForWriting,getFullWidth:()=>hf,getFunctionFlags:()=>rN,getHeritageClause:()=>Pf,getHostSignatureFromJSDoc:()=>C0,getIdentifierAutoGenerate:()=>getIdentifierAutoGenerate,getIdentifierGeneratedImportReference:()=>getIdentifierGeneratedImportReference,getIdentifierTypeArguments:()=>getIdentifierTypeArguments,getImmediatelyInvokedFunctionExpression:()=>$k,getImpliedNodeFormatForFile:()=>getImpliedNodeFormatForFile,getImpliedNodeFormatForFileWorker:()=>getImpliedNodeFormatForFileWorker,getImportNeedsImportDefaultHelper:()=>getImportNeedsImportDefaultHelper,getImportNeedsImportStarHelper:()=>getImportNeedsImportStarHelper,getIndentSize:()=>Oo,getIndentString:()=>j0,getInitializedVariables:()=>PO,getInitializerOfBinaryExpression:()=>XS,getInitializerOfBindingOrAssignmentElement:()=>AE,getInterfaceBaseTypeNodes:()=>g4,getInternalEmitFlags:()=>FD,getInvokedExpression:()=>eI,getIsolatedModules:()=>zf,getJSDocAugmentsTag:()=>E3,getJSDocClassTag:()=>PA,getJSDocCommentRanges:()=>IS,getJSDocCommentsAndTags:()=>r4,getJSDocDeprecatedTag:()=>OA,getJSDocDeprecatedTagNoCache:()=>I3,getJSDocEnumTag:()=>MA,getJSDocHost:()=>s4,getJSDocImplementsTags:()=>w3,getJSDocOverrideTagNoCache:()=>k3,getJSDocParameterTags:()=>of,getJSDocParameterTagsNoCache:()=>b3,getJSDocPrivateTag:()=>kA,getJSDocPrivateTagNoCache:()=>A3,getJSDocProtectedTag:()=>IA,getJSDocProtectedTagNoCache:()=>P3,getJSDocPublicTag:()=>DA,getJSDocPublicTagNoCache:()=>C3,getJSDocReadonlyTag:()=>NA,getJSDocReadonlyTagNoCache:()=>D3,getJSDocReturnTag:()=>N3,getJSDocReturnType:()=>O3,getJSDocRoot:()=>P0,getJSDocSatisfiesExpressionType:()=>PL,getJSDocSatisfiesTag:()=>wy,getJSDocTags:()=>hl,getJSDocTagsNoCache:()=>jA,getJSDocTemplateTag:()=>RA,getJSDocThisTag:()=>LA,getJSDocType:()=>cf,getJSDocTypeAliasName:()=>wv,getJSDocTypeAssertionType:()=>Bj,getJSDocTypeParameterDeclarations:()=>F4,getJSDocTypeParameterTags:()=>S3,getJSDocTypeParameterTagsNoCache:()=>x3,getJSDocTypeTag:()=>_f,getJSXImplicitImportBase:()=>AM,getJSXRuntimeImport:()=>PM,getJSXTransformEnabled:()=>CM,getKeyForCompilerOptions:()=>getKeyForCompilerOptions,getLanguageVariant:()=>s2,getLastChild:()=>mx,getLeadingCommentRanges:()=>Ao,getLeadingCommentRangesOfNode:()=>Sk,getLeftmostAccessExpression:()=>r2,getLeftmostExpression:()=>KO,getLineAndCharacterOfPosition:()=>Ls,getLineInfo:()=>getLineInfo,getLineOfLocalPosition:()=>LN,getLineOfLocalPositionFromLineMap:()=>ds,getLineStartPositionForPosition:()=>getLineStartPositionForPosition,getLineStarts:()=>ss,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>wO,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>EO,getLinesBetweenPositions:()=>I_,getLinesBetweenRangeEndAndRangeStart:()=>TO,getLinesBetweenRangeEndPositions:()=>SO,getLiteralText:()=>BD,getLocalNameForExternalImport:()=>Vj,getLocalSymbolForExportDefault:()=>aO,getLocaleSpecificMessage:()=>Y_,getLocaleTimeString:()=>getLocaleTimeString,getMappedContextSpan:()=>getMappedContextSpan,getMappedDocumentSpan:()=>getMappedDocumentSpan,getMappedLocation:()=>getMappedLocation,getMatchedFileSpec:()=>getMatchedFileSpec,getMatchedIncludeSpec:()=>getMatchedIncludeSpec,getMeaningFromDeclaration:()=>getMeaningFromDeclaration,getMeaningFromLocation:()=>getMeaningFromLocation,getMembersOfDeclaration:()=>Ak,getModeForFileReference:()=>getModeForFileReference,getModeForResolutionAtIndex:()=>getModeForResolutionAtIndex,getModeForUsageLocation:()=>getModeForUsageLocation,getModifiedTime:()=>getModifiedTime,getModifiers:()=>sf,getModuleInstanceState:()=>getModuleInstanceState,getModuleNameStringLiteralAt:()=>getModuleNameStringLiteralAt,getModuleSpecifierEndingPreference:()=>qM,getModuleSpecifierResolverHost:()=>getModuleSpecifierResolverHost,getNameForExportedSymbol:()=>getNameForExportedSymbol,getNameFromIndexInfo:()=>ik,getNameFromPropertyName:()=>getNameFromPropertyName,getNameOfAccessExpression:()=>VO,getNameOfCompilerOptionValue:()=>getNameOfCompilerOptionValue,getNameOfDeclaration:()=>ml,getNameOfExpando:()=>vI,getNameOfJSDocTypedef:()=>g3,getNameOrArgument:()=>$S,getNameTable:()=>oB,getNamesForExportedSymbol:()=>getNamesForExportedSymbol,getNamespaceDeclarationNode:()=>QS,getNewLineCharacter:()=>ox,getNewLineKind:()=>getNewLineKind,getNewLineOrDefaultFromHost:()=>getNewLineOrDefaultFromHost,getNewTargetContainer:()=>Hk,getNextJSDocCommentLocation:()=>a4,getNodeForGeneratedName:()=>PJ,getNodeId:()=>getNodeId,getNodeKind:()=>getNodeKind,getNodeModifiers:()=>getNodeModifiers,getNodeModulePathParts:()=>TL,getNonAssignedNameOfDeclaration:()=>Ey,getNonAssignmentOperatorForCompoundAssignment:()=>getNonAssignmentOperatorForCompoundAssignment,getNonAugmentationDeclaration:()=>ES,getNonDecoratorTokenPosOfNode:()=>LD,getNormalizedAbsolutePath:()=>as,getNormalizedAbsolutePathWithoutRoot:()=>$5,getNormalizedPathComponents:()=>$p,getObjectFlags:()=>Bf,getOperator:()=>R0,getOperatorAssociativity:()=>x4,getOperatorPrecedence:()=>E4,getOptionFromName:()=>getOptionFromName,getOptionsNameMap:()=>getOptionsNameMap,getOrCreateEmitNode:()=>getOrCreateEmitNode,getOrCreateExternalHelpersModuleNameIfNeeded:()=>wE,getOrUpdate:()=>la,getOriginalNode:()=>ul,getOriginalNodeId:()=>getOriginalNodeId,getOriginalSourceFile:()=>fN,getOutputDeclarationFileName:()=>getOutputDeclarationFileName,getOutputExtension:()=>getOutputExtension,getOutputFileNames:()=>getOutputFileNames,getOutputPathsFor:()=>getOutputPathsFor,getOutputPathsForBundle:()=>getOutputPathsForBundle,getOwnEmitOutputFilePath:()=>PN,getOwnKeys:()=>ho,getOwnValues:()=>go,getPackageJsonInfo:()=>getPackageJsonInfo,getPackageJsonTypesVersionsPaths:()=>getPackageJsonTypesVersionsPaths,getPackageJsonsVisibleToFile:()=>getPackageJsonsVisibleToFile,getPackageNameFromTypesPackageName:()=>getPackageNameFromTypesPackageName,getPackageScopeForPath:()=>getPackageScopeForPath,getParameterSymbolFromJSDoc:()=>MI,getParameterTypeNode:()=>SL,getParentNodeInSpan:()=>getParentNodeInSpan,getParseTreeNode:()=>fl,getParsedCommandLineOfConfigFile:()=>getParsedCommandLineOfConfigFile,getPathComponents:()=>qi,getPathComponentsRelativeTo:()=>ly,getPathFromPathComponents:()=>xo,getPathUpdater:()=>getPathUpdater,getPathsBasePath:()=>IN,getPatternFromSpec:()=>RM,getPendingEmitKind:()=>getPendingEmitKind,getPositionOfLineAndCharacter:()=>sA,getPossibleGenericSignatures:()=>getPossibleGenericSignatures,getPossibleOriginalInputExtensionForExtension:()=>kN,getPossibleTypeArgumentsInfo:()=>getPossibleTypeArgumentsInfo,getPreEmitDiagnostics:()=>getPreEmitDiagnostics,getPrecedingNonSpaceCharacterPosition:()=>getPrecedingNonSpaceCharacterPosition,getPrivateIdentifier:()=>getPrivateIdentifier,getProperties:()=>getProperties,getProperty:()=>Qc,getPropertyArrayElementValue:()=>jk,getPropertyAssignment:()=>f0,getPropertyAssignmentAliasLikeExpression:()=>KI,getPropertyNameForPropertyNameNode:()=>Df,getPropertyNameForUniqueESSymbol:()=>iN,getPropertyNameOfBindingOrAssignmentElement:()=>Xj,getPropertySymbolFromBindingElement:()=>getPropertySymbolFromBindingElement,getPropertySymbolsFromContextualType:()=>x7,getQuoteFromPreference:()=>getQuoteFromPreference,getQuotePreference:()=>getQuotePreference,getRangesWhere:()=>Et,getRefactorContextSpan:()=>getRefactorContextSpan,getReferencedFileLocation:()=>getReferencedFileLocation,getRegexFromPattern:()=>Vf,getRegularExpressionForWildcard:()=>Wf,getRegularExpressionsForWildcards:()=>p2,getRelativePathFromDirectory:()=>JT,getRelativePathFromFile:()=>eA,getRelativePathToDirectoryOrUrl:()=>uy,getRenameLocation:()=>getRenameLocation,getReplacementSpanForContextToken:()=>getReplacementSpanForContextToken,getResolutionDiagnostic:()=>getResolutionDiagnostic,getResolutionModeOverrideForClause:()=>getResolutionModeOverrideForClause,getResolveJsonModule:()=>Cx,getResolvePackageJsonExports:()=>yM,getResolvePackageJsonImports:()=>vM,getResolvedExternalModuleName:()=>k4,getResolvedModule:()=>pD,getResolvedTypeReferenceDirective:()=>mD,getRestIndicatorOfBindingOrAssignmentElement:()=>Kj,getRestParameterElementType:()=>Ck,getRightMostAssignedExpression:()=>b0,getRootDeclaration:()=>If,getRootLength:()=>Bi,getScriptKind:()=>getScriptKind,getScriptKindFromFileName:()=>Ox,getScriptTargetFeatures:()=>getScriptTargetFeatures,getSelectedEffectiveModifierFlags:()=>G4,getSelectedSyntacticModifierFlags:()=>$4,getSemanticClassifications:()=>getSemanticClassifications,getSemanticJsxChildren:()=>hN,getSetAccessorTypeAnnotationNode:()=>RN,getSetAccessorValueParameter:()=>z0,getSetExternalModuleIndicator:()=>Ex,getShebang:()=>GT,getSingleInitializerOfVariableStatementOrPropertyDeclaration:()=>w0,getSingleVariableOfVariableStatement:()=>Al,getSnapshotText:()=>getSnapshotText,getSnippetElement:()=>getSnippetElement,getSourceFileOfModule:()=>xD,getSourceFileOfNode:()=>Si,getSourceFilePathInNewDir:()=>M4,getSourceFilePathInNewDirWorker:()=>U0,getSourceFileVersionAsHashFromText:()=>getSourceFileVersionAsHashFromText,getSourceFilesToEmit:()=>NN,getSourceMapRange:()=>getSourceMapRange,getSourceMapper:()=>getSourceMapper,getSourceTextOfNodeFromSourceFile:()=>No,getSpanOfTokenAtPosition:()=>n0,getSpellingSuggestion:()=>Ep,getStartPositionOfLine:()=>CD,getStartPositionOfRange:()=>K_,getStartsOnNewLine:()=>getStartsOnNewLine,getStaticPropertiesAndClassStaticBlock:()=>getStaticPropertiesAndClassStaticBlock,getStrictOptionValue:()=>l2,getStringComparer:()=>rl,getSuperCallFromStatement:()=>getSuperCallFromStatement,getSuperContainer:()=>Gk,getSupportedCodeFixes:()=>v7,getSupportedExtensions:()=>Mx,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>Lx,getSwitchedType:()=>getSwitchedType,getSymbolId:()=>getSymbolId,getSymbolNameForPrivateIdentifier:()=>aN,getSymbolTarget:()=>getSymbolTarget,getSyntacticClassifications:()=>getSyntacticClassifications,getSyntacticModifierFlags:()=>X0,getSyntacticModifierFlagsNoCache:()=>Y0,getSynthesizedDeepClone:()=>getSynthesizedDeepClone,getSynthesizedDeepCloneWithReplacements:()=>getSynthesizedDeepCloneWithReplacements,getSynthesizedDeepClones:()=>getSynthesizedDeepClones,getSynthesizedDeepClonesWithReplacements:()=>getSynthesizedDeepClonesWithReplacements,getSyntheticLeadingComments:()=>getSyntheticLeadingComments,getSyntheticTrailingComments:()=>getSyntheticTrailingComments,getTargetLabel:()=>getTargetLabel,getTargetOfBindingOrAssignmentElement:()=>Ko,getTemporaryModuleResolutionState:()=>getTemporaryModuleResolutionState,getTextOfConstantValue:()=>UD,getTextOfIdentifierOrLiteral:()=>kf,getTextOfJSDocComment:()=>FA,getTextOfNode:()=>gf,getTextOfNodeFromSourceText:()=>B_,getTextOfPropertyName:()=>sk,getThisContainer:()=>d0,getThisParameter:()=>j4,getTokenAtPosition:()=>getTokenAtPosition,getTokenPosOfNode:()=>Io,getTokenSourceMapRange:()=>getTokenSourceMapRange,getTouchingPropertyName:()=>getTouchingPropertyName,getTouchingToken:()=>getTouchingToken,getTrailingCommentRanges:()=>HT,getTrailingSemicolonDeferringWriter:()=>CN,getTransformFlagsSubtreeExclusions:()=>w8,getTransformers:()=>getTransformers,getTsBuildInfoEmitOutputFilePath:()=>getTsBuildInfoEmitOutputFilePath,getTsConfigObjectLiteralExpression:()=>MS,getTsConfigPropArray:()=>LS,getTsConfigPropArrayElementValue:()=>Jk,getTypeAnnotationNode:()=>JN,getTypeArgumentOrTypeParameterList:()=>getTypeArgumentOrTypeParameterList,getTypeKeywordOfTypeOnlyImport:()=>getTypeKeywordOfTypeOnlyImport,getTypeNode:()=>getTypeNode,getTypeNodeIfAccessible:()=>getTypeNodeIfAccessible,getTypeParameterFromJsDoc:()=>RI,getTypeParameterOwner:()=>xA,getTypesPackageName:()=>getTypesPackageName,getUILocale:()=>M1,getUniqueName:()=>getUniqueName,getUniqueSymbolId:()=>getUniqueSymbolId,getUseDefineForClassFields:()=>SM,getWatchErrorSummaryDiagnosticMessage:()=>getWatchErrorSummaryDiagnosticMessage,getWatchFactory:()=>getWatchFactory,group:()=>el,groupBy:()=>x_,guessIndentation:()=>QP,handleNoEmitOptions:()=>handleNoEmitOptions,hasAbstractModifier:()=>W4,hasAccessorModifier:()=>H4,hasAmbientModifier:()=>V4,hasChangesInResolutions:()=>TD,hasChildOfKind:()=>hasChildOfKind,hasContextSensitiveParameters:()=>mL,hasDecorators:()=>Il,hasDocComment:()=>hasDocComment,hasDynamicName:()=>v4,hasEffectiveModifier:()=>H0,hasEffectiveModifiers:()=>HN,hasEffectiveReadonlyModifier:()=>$0,hasExtension:()=>OT,hasIndexSignature:()=>hasIndexSignature,hasInitializer:()=>lS,hasInvalidEscape:()=>w4,hasJSDocNodes:()=>ya,hasJSDocParameterTags:()=>AA,hasJSFileExtension:()=>d2,hasJsonModuleEmitEnabled:()=>pM,hasOnlyExpressionInitializer:()=>XP,hasOverrideModifier:()=>$N,hasPossibleExternalModuleReference:()=>rk,hasProperty:()=>Jr,hasPropertyAccessExpressionWithName:()=>hasPropertyAccessExpressionWithName,hasQuestionToken:()=>DI,hasRecordedExternalHelpers:()=>zj,hasRestParameter:()=>ZP,hasScopeMarker:()=>CP,hasStaticModifier:()=>Lf,hasSyntacticModifier:()=>rn,hasSyntacticModifiers:()=>GN,hasTSFileExtension:()=>m2,hasTabstop:()=>Qx,hasTrailingDirectorySeparator:()=>Hp,hasType:()=>KP,hasTypeArguments:()=>jI,hasZeroOrOneAsteriskCharacter:()=>DM,helperString:()=>helperString,hostGetCanonicalFileName:()=>D4,hostUsesCaseSensitiveFileNames:()=>J0,idText:()=>qr,identifierIsThisKeyword:()=>J4,identifierToKeywordKind:()=>d3,identity:()=>rr,identitySourceMapConsumer:()=>identitySourceMapConsumer,ignoreSourceNewlines:()=>ignoreSourceNewlines,ignoredPaths:()=>ignoredPaths,importDefaultHelper:()=>importDefaultHelper,importFromModuleSpecifier:()=>AI,importNameElisionDisabled:()=>fM,importStarHelper:()=>importStarHelper,indexOfAnyCharCode:()=>Je,indexOfNode:()=>JD,indicesOf:()=>Wr,inferredTypesContainingFile:()=>inferredTypesContainingFile,insertImports:()=>insertImports,insertLeadingStatement:()=>kj,insertSorted:()=>Qn,insertStatementAfterCustomPrologue:()=>ND,insertStatementAfterStandardPrologue:()=>ID,insertStatementsAfterCustomPrologue:()=>kD,insertStatementsAfterStandardPrologue:()=>DD,intersperse:()=>Ce,introducesArgumentsExoticObject:()=>Ik,inverseJsxOptionMap:()=>inverseJsxOptionMap,isAbstractConstructorSymbol:()=>FO,isAbstractModifier:()=>oR,isAccessExpression:()=>Lo,isAccessibilityModifier:()=>isAccessibilityModifier,isAccessor:()=>pf,isAccessorModifier:()=>cR,isAliasSymbolDeclaration:()=>$I,isAliasableExpression:()=>k0,isAmbientModule:()=>yf,isAmbientPropertyDeclaration:()=>QD,isAnonymousFunctionDefinition:()=>H_,isAnyDirectorySeparator:()=>ay,isAnyImportOrBareOrAccessedRequire:()=>ek,isAnyImportOrReExport:()=>bf,isAnyImportSyntax:()=>Qy,isAnySupportedFileExtension:()=>KM,isApplicableVersionedTypesKey:()=>isApplicableVersionedTypesKey,isArgumentExpressionOfElementAccess:()=>isArgumentExpressionOfElementAccess,isArray:()=>ir,isArrayBindingElement:()=>fP,isArrayBindingOrAssignmentElement:()=>Z3,isArrayBindingOrAssignmentPattern:()=>Q3,isArrayBindingPattern:()=>dR,isArrayLiteralExpression:()=>Yl,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>isArrayLiteralOrObjectLiteralDestructuringPattern,isArrayTypeNode:()=>F8,isArrowFunction:()=>sd,isAsExpression:()=>SR,isAssertClause:()=>WR,isAssertEntry:()=>VR,isAssertionExpression:()=>EP,isAssertionKey:()=>nP,isAssertsKeyword:()=>iR,isAssignmentDeclaration:()=>v0,isAssignmentExpression:()=>ms,isAssignmentOperator:()=>G_,isAssignmentPattern:()=>K3,isAssignmentTarget:()=>JI,isAsteriskToken:()=>ZL,isAsyncFunction:()=>nN,isAsyncModifier:()=>Ul,isAutoAccessorPropertyDeclaration:()=>$3,isAwaitExpression:()=>yR,isAwaitKeyword:()=>aR,isBigIntLiteral:()=>U2,isBinaryExpression:()=>ur,isBinaryOperatorToken:()=>xJ,isBindableObjectDefinePropertyCall:()=>S0,isBindableStaticAccessExpression:()=>W_,isBindableStaticElementAccessExpression:()=>x0,isBindableStaticNameExpression:()=>V_,isBindingElement:()=>Xl,isBindingElementOfBareOrAccessedRequire:()=>uI,isBindingName:()=>oP,isBindingOrAssignmentElement:()=>dP,isBindingOrAssignmentPattern:()=>mP,isBindingPattern:()=>df,isBlock:()=>Ql,isBlockOrCatchScoped:()=>WD,isBlockScope:()=>wS,isBlockScopedContainerTopLevel:()=>KD,isBooleanLiteral:()=>_P,isBreakOrContinueStatement:()=>GA,isBreakStatement:()=>MR,isBuildInfoFile:()=>isBuildInfoFile,isBuilderProgram:()=>isBuilderProgram2,isBundle:()=>aj,isBundleFileTextLike:()=>HO,isCallChain:()=>Cy,isCallExpression:()=>sc,isCallExpressionTarget:()=>isCallExpressionTarget,isCallLikeExpression:()=>yP,isCallOrNewExpression:()=>vP,isCallOrNewExpressionTarget:()=>isCallOrNewExpressionTarget,isCallSignatureDeclaration:()=>V2,isCallToHelper:()=>isCallToHelper,isCaseBlock:()=>qR,isCaseClause:()=>rj,isCaseKeyword:()=>lR,isCaseOrDefaultClause:()=>$P,isCatchClause:()=>nj,isCatchClauseVariableDeclaration:()=>Gx,isCatchClauseVariableDeclarationOrBindingElement:()=>TS,isCheckJsEnabledForFile:()=>XM,isChildOfNodeWithKind:()=>xk,isCircularBuildOrder:()=>isCircularBuildOrder,isClassDeclaration:()=>_c,isClassElement:()=>Js,isClassExpression:()=>_d,isClassLike:()=>bi,isClassMemberModifier:()=>V3,isClassOrTypeElement:()=>uP,isClassStaticBlockDeclaration:()=>Hl,isCollapsedRange:()=>mO,isColonToken:()=>eR,isCommaExpression:()=>gd,isCommaListExpression:()=>oc,isCommaSequence:()=>Fj,isCommaToken:()=>I8,isComment:()=>isComment,isCommonJsExportPropertyAssignment:()=>p0,isCommonJsExportedExpression:()=>Dk,isCompoundAssignment:()=>isCompoundAssignment,isComputedNonLiteralName:()=>ak,isComputedPropertyName:()=>Ws,isConciseBody:()=>kP,isConditionalExpression:()=>vR,isConditionalTypeNode:()=>V8,isConstTypeReference:()=>j3,isConstructSignatureDeclaration:()=>R8,isConstructorDeclaration:()=>nc,isConstructorTypeNode:()=>G2,isContextualKeyword:()=>N0,isContinueStatement:()=>OR,isCustomPrologue:()=>Tf,isDebuggerStatement:()=>BR,isDeclaration:()=>ko,isDeclarationBindingElement:()=>Fy,isDeclarationFileName:()=>QE,isDeclarationName:()=>c4,isDeclarationNameOfEnumOrNamespace:()=>AO,isDeclarationReadonly:()=>yk,isDeclarationStatement:()=>qP,isDeclarationWithTypeParameterChildren:()=>CS,isDeclarationWithTypeParameters:()=>ZD,isDecorator:()=>zl,isDecoratorTarget:()=>isDecoratorTarget,isDefaultClause:()=>oE,isDefaultImport:()=>ZS,isDefaultModifier:()=>nR,isDefaultedExpandoInitializer:()=>yI,isDeleteExpression:()=>hR,isDeleteTarget:()=>WI,isDeprecatedDeclaration:()=>isDeprecatedDeclaration,isDestructuringAssignment:()=>ZN,isDiagnosticWithLocation:()=>isDiagnosticWithLocation,isDiskPathRoot:()=>U5,isDoStatement:()=>DR,isDotDotDotToken:()=>QL,isDottedName:()=>e2,isDynamicName:()=>M0,isESSymbolIdentifier:()=>_N,isEffectiveExternalModule:()=>Yy,isEffectiveModuleDeclaration:()=>SS,isEffectiveStrictModeSourceFile:()=>YD,isElementAccessChain:()=>R3,isElementAccessExpression:()=>gs,isEmittedFileOfProgram:()=>isEmittedFileOfProgram,isEmptyArrayLiteral:()=>iO,isEmptyBindingElement:()=>p3,isEmptyBindingPattern:()=>u3,isEmptyObjectLiteral:()=>nO,isEmptyStatement:()=>AR,isEmptyStringLiteral:()=>jS,isEndOfDeclarationMarker:()=>XR,isEntityName:()=>sP,isEntityNameExpression:()=>Bs,isEnumConst:()=>gk,isEnumDeclaration:()=>iv,isEnumMember:()=>cE,isEqualityOperatorKind:()=>isEqualityOperatorKind,isEqualsGreaterThanToken:()=>rR,isExclamationToken:()=>rd,isExcludedFile:()=>isExcludedFile,isExclusivelyTypeOnlyImportOrExport:()=>isExclusivelyTypeOnlyImportOrExport,isExportAssignment:()=>Vo,isExportDeclaration:()=>cc,isExportModifier:()=>N8,isExportName:()=>Jj,isExportNamespaceAsDefaultDeclaration:()=>bS,isExportOrDefaultModifier:()=>wJ,isExportSpecifier:()=>aE,isExportsIdentifier:()=>HS,isExportsOrModuleExportsOrAlias:()=>isExportsOrModuleExportsOrAlias,isExpression:()=>mf,isExpressionNode:()=>g0,isExpressionOfExternalModuleImportEqualsDeclaration:()=>isExpressionOfExternalModuleImportEqualsDeclaration,isExpressionOfOptionalChainRoot:()=>WA,isExpressionStatement:()=>Zl,isExpressionWithTypeArguments:()=>ev,isExpressionWithTypeArgumentsInClassExtendsClause:()=>Z0,isExternalModule:()=>Qo,isExternalModuleAugmentation:()=>Xy,isExternalModuleImportEqualsDeclaration:()=>BS,isExternalModuleIndicator:()=>PP,isExternalModuleNameRelative:()=>fA,isExternalModuleReference:()=>ud,isExternalModuleSymbol:()=>isExternalModuleSymbol,isExternalOrCommonJsModule:()=>hk,isFileLevelUniqueName:()=>mS,isFileProbablyExternalModule:()=>ou,isFirstDeclarationOfSymbolParameter:()=>isFirstDeclarationOfSymbolParameter,isFixablePromiseHandler:()=>isFixablePromiseHandler,isForInOrOfStatement:()=>DP,isForInStatement:()=>IR,isForInitializer:()=>NP,isForOfStatement:()=>NR,isForStatement:()=>eE,isFunctionBlock:()=>OS,isFunctionBody:()=>IP,isFunctionDeclaration:()=>Wo,isFunctionExpression:()=>ad,isFunctionExpressionOrArrowFunction:()=>yL,isFunctionLike:()=>ga,isFunctionLikeDeclaration:()=>H3,isFunctionLikeKind:()=>My,isFunctionLikeOrClassStaticBlockDeclaration:()=>uf,isFunctionOrConstructorTypeNode:()=>pP,isFunctionOrModuleBlock:()=>cP,isFunctionSymbol:()=>wI,isFunctionTypeNode:()=>$l,isFutureReservedKeyword:()=>YI,isGeneratedIdentifier:()=>cs,isGeneratedPrivateIdentifier:()=>Ny,isGetAccessor:()=>Tl,isGetAccessorDeclaration:()=>Gl,isGetOrSetAccessorDeclaration:()=>zA,isGlobalDeclaration:()=>isGlobalDeclaration,isGlobalScopeAugmentation:()=>vf,isGrammarError:()=>PD,isHeritageClause:()=>ru,isHoistedFunction:()=>_0,isHoistedVariableStatement:()=>c0,isIdentifier:()=>yt,isIdentifierANonContextualKeyword:()=>eN,isIdentifierName:()=>GI,isIdentifierOrThisTypeNode:()=>tJ,isIdentifierPart:()=>Rs,isIdentifierStart:()=>Wn,isIdentifierText:()=>vy,isIdentifierTypePredicate:()=>Lk,isIdentifierTypeReference:()=>_L,isIfStatement:()=>PR,isIgnoredFileFromWildCardWatching:()=>isIgnoredFileFromWildCardWatching,isImplicitGlob:()=>Dx,isImportCall:()=>s0,isImportClause:()=>UR,isImportDeclaration:()=>ov,isImportEqualsDeclaration:()=>sv,isImportKeyword:()=>M8,isImportMeta:()=>o0,isImportOrExportSpecifier:()=>tP,isImportOrExportSpecifierName:()=>isImportOrExportSpecifierName,isImportSpecifier:()=>nE,isImportTypeAssertionContainer:()=>zR,isImportTypeNode:()=>Kl,isImportableFile:()=>isImportableFile,isInComment:()=>isInComment,isInExpressionContext:()=>JS,isInJSDoc:()=>qS,isInJSFile:()=>Pr,isInJSXText:()=>isInJSXText,isInJsonFile:()=>_I,isInNonReferenceComment:()=>isInNonReferenceComment,isInReferenceComment:()=>isInReferenceComment,isInRightSideOfInternalImportEqualsDeclaration:()=>isInRightSideOfInternalImportEqualsDeclaration,isInString:()=>isInString,isInTemplateString:()=>isInTemplateString,isInTopLevelContext:()=>Vk,isIncrementalCompilation:()=>TM,isIndexSignatureDeclaration:()=>H2,isIndexedAccessTypeNode:()=>$8,isInferTypeNode:()=>H8,isInfinityOrNaNString:()=>hL,isInitializedProperty:()=>isInitializedProperty,isInitializedVariable:()=>lx,isInsideJsxElement:()=>isInsideJsxElement,isInsideJsxElementOrAttribute:()=>isInsideJsxElementOrAttribute,isInsideNodeModules:()=>isInsideNodeModules,isInsideTemplateLiteral:()=>isInsideTemplateLiteral,isInstantiatedModule:()=>isInstantiatedModule,isInterfaceDeclaration:()=>eu,isInternalDeclaration:()=>isInternalDeclaration,isInternalModuleImportEqualsDeclaration:()=>sI,isInternalName:()=>jj,isIntersectionTypeNode:()=>W8,isIntrinsicJsxName:()=>P4,isIterationStatement:()=>nS,isJSDoc:()=>Ho,isJSDocAllType:()=>lj,isJSDocAugmentsTag:()=>md,isJSDocAuthorTag:()=>hj,isJSDocCallbackTag:()=>gj,isJSDocClassTag:()=>pE,isJSDocCommentContainingNode:()=>cS,isJSDocConstructSignature:()=>kI,isJSDocDeprecatedTag:()=>vv,isJSDocEnumTag:()=>dE,isJSDocFunctionType:()=>dd,isJSDocImplementsTag:()=>hE,isJSDocIndexSignature:()=>lI,isJSDocLikeText:()=>LE,isJSDocLink:()=>oj,isJSDocLinkCode:()=>_j,isJSDocLinkLike:()=>Sl,isJSDocLinkPlain:()=>cj,isJSDocMemberName:()=>uc,isJSDocNameReference:()=>fd,isJSDocNamepathType:()=>mj,isJSDocNamespaceBody:()=>LP,isJSDocNode:()=>Uy,isJSDocNonNullableType:()=>pj,isJSDocNullableType:()=>uE,isJSDocOptionalParameter:()=>Zx,isJSDocOptionalType:()=>fj,isJSDocOverloadTag:()=>yv,isJSDocOverrideTag:()=>fE,isJSDocParameterTag:()=>pc,isJSDocPrivateTag:()=>mv,isJSDocPropertyLikeTag:()=>Dy,isJSDocPropertyTag:()=>Tj,isJSDocProtectedTag:()=>hv,isJSDocPublicTag:()=>dv,isJSDocReadonlyTag:()=>gv,isJSDocReturnTag:()=>bv,isJSDocSatisfiesExpression:()=>AL,isJSDocSatisfiesTag:()=>Tv,isJSDocSeeTag:()=>yj,isJSDocSignature:()=>iu,isJSDocTag:()=>zy,isJSDocTemplateTag:()=>Go,isJSDocThisTag:()=>mE,isJSDocThrowsTag:()=>Sj,isJSDocTypeAlias:()=>Cl,isJSDocTypeAssertion:()=>xE,isJSDocTypeExpression:()=>lE,isJSDocTypeLiteral:()=>fv,isJSDocTypeTag:()=>au,isJSDocTypedefTag:()=>vj,isJSDocUnknownTag:()=>bj,isJSDocUnknownType:()=>uj,isJSDocVariadicType:()=>dj,isJSXTagName:()=>xf,isJsonEqual:()=>g2,isJsonSourceFile:()=>a0,isJsxAttribute:()=>ZR,isJsxAttributeLike:()=>HP,isJsxAttributes:()=>pv,isJsxChild:()=>oS,isJsxClosingElement:()=>sE,isJsxClosingFragment:()=>QR,isJsxElement:()=>lv,isJsxExpression:()=>tj,isJsxFragment:()=>pd,isJsxOpeningElement:()=>tu,isJsxOpeningFragment:()=>uv,isJsxOpeningLikeElement:()=>_S,isJsxOpeningLikeElementTagName:()=>isJsxOpeningLikeElementTagName,isJsxSelfClosingElement:()=>YR,isJsxSpreadAttribute:()=>ej,isJsxTagNameExpression:()=>VP,isJsxText:()=>td,isJumpStatementTarget:()=>isJumpStatementTarget,isKeyword:()=>ba,isKnownSymbol:()=>sN,isLabelName:()=>isLabelName,isLabelOfLabeledStatement:()=>isLabelOfLabeledStatement,isLabeledStatement:()=>tE,isLateVisibilityPaintedStatement:()=>tk,isLeftHandSideExpression:()=>Do,isLeftHandSideOfAssignment:()=>QN,isLet:()=>vk,isLineBreak:()=>un,isLiteralComputedPropertyDeclarationName:()=>l4,isLiteralExpression:()=>Iy,isLiteralExpressionOfObject:()=>QA,isLiteralImportTypeNode:()=>kS,isLiteralKind:()=>ky,isLiteralLikeAccess:()=>wf,isLiteralLikeElementAccess:()=>wl,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>isLiteralNameOfPropertyDeclarationOrIndexAccess,isLiteralTypeLikeExpression:()=>aJ,isLiteralTypeLiteral:()=>SP,isLiteralTypeNode:()=>Y2,isLocalName:()=>Ev,isLogicalOperator:()=>KN,isLogicalOrCoalescingAssignmentExpression:()=>XN,isLogicalOrCoalescingAssignmentOperator:()=>jf,isLogicalOrCoalescingBinaryExpression:()=>YN,isLogicalOrCoalescingBinaryOperator:()=>Z4,isMappedTypeNode:()=>K8,isMemberName:()=>js,isMergeDeclarationMarker:()=>KR,isMetaProperty:()=>tv,isMethodDeclaration:()=>Vl,isMethodOrAccessor:()=>Ly,isMethodSignature:()=>L8,isMinusToken:()=>W2,isMissingDeclaration:()=>GR,isModifier:()=>Oy,isModifierKind:()=>Wi,isModifierLike:()=>ff,isModuleAugmentationExternal:()=>xS,isModuleBlock:()=>rE,isModuleBody:()=>OP,isModuleDeclaration:()=>Ea,isModuleExportsAccessExpression:()=>T0,isModuleIdentifier:()=>GS,isModuleName:()=>iJ,isModuleOrEnumDeclaration:()=>jP,isModuleReference:()=>WP,isModuleSpecifierLike:()=>isModuleSpecifierLike,isModuleWithStringLiteralName:()=>VD,isNameOfFunctionDeclaration:()=>isNameOfFunctionDeclaration,isNameOfModuleDeclaration:()=>isNameOfModuleDeclaration,isNamedClassElement:()=>lP,isNamedDeclaration:()=>af,isNamedEvaluation:()=>cN,isNamedEvaluationSource:()=>S4,isNamedExportBindings:()=>$A,isNamedExports:()=>iE,isNamedImportBindings:()=>RP,isNamedImports:()=>HR,isNamedImportsOrExports:()=>GO,isNamedTupleMember:()=>$2,isNamespaceBody:()=>MP,isNamespaceExport:()=>ld,isNamespaceExportDeclaration:()=>av,isNamespaceImport:()=>_v,isNamespaceReexportDeclaration:()=>nI,isNewExpression:()=>X8,isNewExpressionTarget:()=>isNewExpressionTarget,isNightly:()=>EN,isNoSubstitutionTemplateLiteral:()=>k8,isNode:()=>XA,isNodeArray:()=>_s,isNodeArrayMultiLine:()=>xO,isNodeDescendantOf:()=>VI,isNodeKind:()=>gl,isNodeLikeSystem:()=>k5,isNodeModulesDirectory:()=>tA,isNodeWithPossibleHoistedDeclaration:()=>FI,isNonContextualKeyword:()=>y4,isNonExportDefaultModifier:()=>CJ,isNonGlobalAmbientModule:()=>HD,isNonGlobalDeclaration:()=>isNonGlobalDeclaration,isNonNullAccess:()=>CL,isNonNullChain:()=>J3,isNonNullExpression:()=>Uo,isNonStaticMethodOrAccessorWithPrivateName:()=>isNonStaticMethodOrAccessorWithPrivateName,isNotEmittedOrPartiallyEmittedNode:()=>wP,isNotEmittedStatement:()=>cv,isNullishCoalesce:()=>HA,isNumber:()=>gi,isNumericLiteral:()=>zs,isNumericLiteralName:()=>$x,isObjectBindingElementWithoutPropertyName:()=>isObjectBindingElementWithoutPropertyName,isObjectBindingOrAssignmentElement:()=>Y3,isObjectBindingOrAssignmentPattern:()=>X3,isObjectBindingPattern:()=>fR,isObjectLiteralElement:()=>Wy,isObjectLiteralElementLike:()=>jy,isObjectLiteralExpression:()=>Hs,isObjectLiteralMethod:()=>Ok,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Mk,isObjectTypeDeclaration:()=>WO,isOctalDigit:()=>hy,isOmittedExpression:()=>cd,isOptionalChain:()=>Ay,isOptionalChainRoot:()=>Py,isOptionalDeclaration:()=>wL,isOptionalJSDocPropertyLikeTag:()=>Yx,isOptionalTypeNode:()=>q8,isOuterExpression:()=>yd,isOutermostOptionalChain:()=>VA,isOverrideModifier:()=>_R,isPackedArrayLiteral:()=>pL,isParameter:()=>Vs,isParameterDeclaration:()=>uN,isParameterOrCatchClauseVariable:()=>gL,isParameterPropertyDeclaration:()=>l3,isParameterPropertyModifier:()=>W3,isParenthesizedExpression:()=>qo,isParenthesizedTypeNode:()=>K2,isParseTreeNode:()=>pl,isPartOfTypeNode:()=>l0,isPartOfTypeQuery:()=>FS,isPartiallyEmittedExpression:()=>Z8,isPatternMatch:()=>z1,isPinnedComment:()=>vS,isPlainJsFile:()=>ED,isPlusToken:()=>z2,isPossiblyTypeArgumentPosition:()=>isPossiblyTypeArgumentPosition,isPostfixUnaryExpression:()=>Q8,isPrefixUnaryExpression:()=>od,isPrivateIdentifier:()=>vn,isPrivateIdentifierClassElementDeclaration:()=>z3,isPrivateIdentifierPropertyAccessExpression:()=>aP,isPrivateIdentifierSymbol:()=>oN,isProgramBundleEmitBuildInfo:()=>isProgramBundleEmitBuildInfo,isProgramUptoDate:()=>isProgramUptoDate,isPrologueDirective:()=>us,isPropertyAccessChain:()=>L3,isPropertyAccessEntityNameExpression:()=>rx,isPropertyAccessExpression:()=>bn,isPropertyAccessOrQualifiedName:()=>gP,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>hP,isPropertyAssignment:()=>lc,isPropertyDeclaration:()=>Bo,isPropertyName:()=>vl,isPropertyNameLiteral:()=>L0,isPropertySignature:()=>Wl,isProtoSetter:()=>T4,isPrototypeAccess:()=>Nl,isPrototypePropertyAssignment:()=>SI,isPunctuation:()=>isPunctuation,isPushOrUnshiftIdentifier:()=>lN,isQualifiedName:()=>rc,isQuestionDotToken:()=>tR,isQuestionOrExclamationToken:()=>eJ,isQuestionOrPlusOrMinusToken:()=>nJ,isQuestionToken:()=>ql,isRawSourceMap:()=>isRawSourceMap,isReadonlyKeyword:()=>O8,isReadonlyKeywordOrPlusOrMinusToken:()=>rJ,isRecognizedTripleSlashComment:()=>OD,isReferenceFileLocation:()=>isReferenceFileLocation,isReferencedFile:()=>isReferencedFile,isRegularExpressionLiteral:()=>$L,isRequireCall:()=>El,isRequireVariableStatement:()=>WS,isRestParameter:()=>uS,isRestTypeNode:()=>U8,isReturnStatement:()=>LR,isReturnStatementWithFixablePromiseHandler:()=>isReturnStatementWithFixablePromiseHandler,isRightSideOfAccessExpression:()=>nx,isRightSideOfPropertyAccess:()=>isRightSideOfPropertyAccess,isRightSideOfQualifiedName:()=>isRightSideOfQualifiedName,isRightSideOfQualifiedNameOrPropertyAccess:()=>tO,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>rO,isRootedDiskPath:()=>A_,isSameEntityName:()=>z_,isSatisfiesExpression:()=>xR,isScopeMarker:()=>iS,isSemicolonClassElement:()=>CR,isSetAccessor:()=>bl,isSetAccessorDeclaration:()=>ic,isShebangTrivia:()=>gy,isShorthandAmbientModuleSymbol:()=>GD,isShorthandPropertyAssignment:()=>nu,isSignedNumericLiteral:()=>O0,isSimpleCopiableExpression:()=>isSimpleCopiableExpression,isSimpleInlineableExpression:()=>isSimpleInlineableExpression,isSingleOrDoubleQuote:()=>pI,isSourceFile:()=>wi,isSourceFileFromLibrary:()=>isSourceFileFromLibrary,isSourceFileJS:()=>y0,isSourceFileNotJS:()=>oI,isSourceFileNotJson:()=>cI,isSourceMapping:()=>isSourceMapping,isSpecialPropertyDeclaration:()=>xI,isSpreadAssignment:()=>_E,isSpreadElement:()=>Z2,isStatement:()=>aS,isStatementButNotDeclaration:()=>UP,isStatementOrBlock:()=>sS,isStatementWithLocals:()=>wD,isStatic:()=>G0,isStaticModifier:()=>sR,isString:()=>Ji,isStringAKeyword:()=>ZI,isStringANonContextualKeyword:()=>QI,isStringAndEmptyAnonymousObjectIntersection:()=>isStringAndEmptyAnonymousObjectIntersection,isStringDoubleQuoted:()=>fI,isStringLiteral:()=>Gn,isStringLiteralLike:()=>Ti,isStringLiteralOrJsxExpression:()=>GP,isStringLiteralOrTemplate:()=>isStringLiteralOrTemplate,isStringOrNumericLiteralLike:()=>Ta,isStringOrRegularExpressionOrTemplateLiteral:()=>isStringOrRegularExpressionOrTemplateLiteral,isStringTextContainingNode:()=>iP,isSuperCall:()=>bk,isSuperKeyword:()=>nd,isSuperOrSuperProperty:()=>Kk,isSuperProperty:()=>Sf,isSupportedSourceFileName:()=>zM,isSwitchStatement:()=>jR,isSyntaxList:()=>xj,isSyntheticExpression:()=>ER,isSyntheticReference:()=>$R,isTagName:()=>isTagName,isTaggedTemplateExpression:()=>Y8,isTaggedTemplateTag:()=>isTaggedTemplateTag,isTemplateExpression:()=>bR,isTemplateHead:()=>KL,isTemplateLiteral:()=>bP,isTemplateLiteralKind:()=>yl,isTemplateLiteralToken:()=>ZA,isTemplateLiteralTypeNode:()=>pR,isTemplateLiteralTypeSpan:()=>uR,isTemplateMiddle:()=>XL,isTemplateMiddleOrTemplateTail:()=>eP,isTemplateSpan:()=>wR,isTemplateTail:()=>YL,isTextWhiteSpaceLike:()=>isTextWhiteSpaceLike,isThis:()=>isThis,isThisContainerOrFunctionBlock:()=>Wk,isThisIdentifier:()=>Mf,isThisInTypeQuery:()=>jN,isThisInitializedDeclaration:()=>Yk,isThisInitializedObjectBindingExpression:()=>Qk,isThisProperty:()=>Xk,isThisTypeNode:()=>X2,isThisTypeParameter:()=>Kx,isThisTypePredicate:()=>Rk,isThrowStatement:()=>JR,isToken:()=>YA,isTokenKind:()=>B3,isTraceEnabled:()=>isTraceEnabled,isTransientSymbol:()=>$y,isTrivia:()=>tN,isTryStatement:()=>FR,isTupleTypeNode:()=>B8,isTypeAlias:()=>II,isTypeAliasDeclaration:()=>nv,isTypeAssertionExpression:()=>mR,isTypeDeclaration:()=>Xx,isTypeElement:()=>Ry,isTypeKeyword:()=>isTypeKeyword,isTypeKeywordToken:()=>isTypeKeywordToken,isTypeKeywordTokenOrIdentifier:()=>isTypeKeywordTokenOrIdentifier,isTypeLiteralNode:()=>id,isTypeNode:()=>Jy,isTypeNodeKind:()=>hx,isTypeOfExpression:()=>gR,isTypeOnlyExportDeclaration:()=>U3,isTypeOnlyImportDeclaration:()=>q3,isTypeOnlyImportOrExportDeclaration:()=>rP,isTypeOperatorNode:()=>G8,isTypeParameterDeclaration:()=>Fo,isTypePredicateNode:()=>j8,isTypeQueryNode:()=>J8,isTypeReferenceNode:()=>ac,isTypeReferenceType:()=>YP,isUMDExportSymbol:()=>qO,isUnaryExpression:()=>tS,isUnaryExpressionWithWrite:()=>TP,isUnicodeIdentifierStart:()=>UT,isUnionTypeNode:()=>z8,isUnparsedNode:()=>KA,isUnparsedPrepend:()=>ij,isUnparsedSource:()=>sj,isUnparsedTextLike:()=>F3,isUrl:()=>q5,isValidBigIntString:()=>zx,isValidESSymbolDeclaration:()=>kk,isValidTypeOnlyAliasUseSite:()=>iL,isValueSignatureDeclaration:()=>BI,isVarConst:()=>DS,isVariableDeclaration:()=>Vi,isVariableDeclarationInVariableStatement:()=>NS,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>Ef,isVariableDeclarationInitializedToRequire:()=>US,isVariableDeclarationList:()=>rv,isVariableLike:()=>u0,isVariableLikeOrAccessor:()=>Pk,isVariableStatement:()=>zo,isVoidExpression:()=>Q2,isWatchSet:()=>DO,isWhileStatement:()=>kR,isWhiteSpaceLike:()=>os,isWhiteSpaceSingleLine:()=>N_,isWithStatement:()=>RR,isWriteAccess:()=>LO,isWriteOnlyAccess:()=>MO,isYieldExpression:()=>TR,jsxModeNeedsExplicitImport:()=>jsxModeNeedsExplicitImport,keywordPart:()=>keywordPart,last:()=>Zn,lastOrUndefined:()=>Cn,length:()=>I,libMap:()=>libMap,libs:()=>libs,lineBreakPart:()=>lineBreakPart,linkNamePart:()=>linkNamePart,linkPart:()=>linkPart,linkTextPart:()=>linkTextPart,listFiles:()=>listFiles,loadModuleFromGlobalCache:()=>loadModuleFromGlobalCache,loadWithModeAwareCache:()=>loadWithModeAwareCache,makeIdentifierFromModuleName:()=>zD,makeImport:()=>makeImport,makeImportIfNecessary:()=>makeImportIfNecessary,makeStringLiteral:()=>makeStringLiteral,mangleScopedPackageName:()=>mangleScopedPackageName,map:()=>Ze,mapAllOrFail:()=>Pt,mapDefined:()=>qt,mapDefinedEntries:()=>Ri,mapDefinedIterator:()=>Zr,mapEntries:()=>be,mapIterator:()=>st,mapOneOrMany:()=>mapOneOrMany,mapToDisplayParts:()=>mapToDisplayParts,matchFiles:()=>jM,matchPatternOrExact:()=>YM,matchedText:()=>y5,matchesExclude:()=>matchesExclude,maybeBind:()=>le,maybeSetLocalizedDiagnosticMessages:()=>vx,memoize:()=>tl,memoizeCached:()=>D1,memoizeOne:()=>An,memoizeWeak:()=>P1,metadataHelper:()=>metadataHelper,min:()=>N1,minAndMax:()=>ZM,missingFileModifiedTime:()=>missingFileModifiedTime,modifierToFlag:()=>Q0,modifiersToFlags:()=>Vn,moduleOptionDeclaration:()=>moduleOptionDeclaration,moduleResolutionIsEqualTo:()=>gD,moduleResolutionNameAndModeGetter:()=>moduleResolutionNameAndModeGetter,moduleResolutionOptionDeclarations:()=>moduleResolutionOptionDeclarations,moduleResolutionSupportsPackageJsonExportsAndImports:()=>_2,moduleResolutionUsesNodeModules:()=>moduleResolutionUsesNodeModules,moduleSpecifiers:()=>ts_moduleSpecifiers_exports,moveEmitHelpers:()=>moveEmitHelpers,moveRangeEnd:()=>fO,moveRangePastDecorators:()=>_x,moveRangePastModifiers:()=>dO,moveRangePos:()=>Ff,moveSyntheticComments:()=>moveSyntheticComments,mutateMap:()=>JO,mutateMapSkippingNewValues:()=>fx,needsParentheses:()=>needsParentheses,needsScopeMarker:()=>AP,newCaseClauseTracker:()=>newCaseClauseTracker,newPrivateEnvironment:()=>newPrivateEnvironment,noEmitNotification:()=>noEmitNotification,noEmitSubstitution:()=>noEmitSubstitution,noTransformers:()=>noTransformers,noTruncationMaximumTruncationLength:()=>n8,nodeCanBeDecorated:()=>RS,nodeHasName:()=>h3,nodeIsDecorated:()=>q_,nodeIsMissing:()=>va,nodeIsPresent:()=>xl,nodeIsSynthesized:()=>fs,nodeModuleNameResolver:()=>nodeModuleNameResolver,nodeModulesPathPart:()=>nodeModulesPathPart,nodeNextJsonConfigResolver:()=>nodeNextJsonConfigResolver,nodeOrChildIsDecorated:()=>m0,nodeOverlapsWithStartEnd:()=>nodeOverlapsWithStartEnd,nodePosToString:()=>AD,nodeSeenTracker:()=>nodeSeenTracker,nodeStartsNewLexicalEnvironment:()=>pN,nodeToDisplayParts:()=>nodeToDisplayParts,noop:()=>yn,noopFileWatcher:()=>noopFileWatcher,noopPush:()=>CT,normalizePath:()=>Un,normalizeSlashes:()=>Eo,not:()=>T5,notImplemented:()=>A1,notImplementedResolver:()=>notImplementedResolver,nullNodeConverters:()=>nullNodeConverters,nullParenthesizerRules:()=>J2,nullTransformationContext:()=>nullTransformationContext,objectAllocator:()=>lr,operatorPart:()=>operatorPart,optionDeclarations:()=>optionDeclarations,optionMapToObject:()=>optionMapToObject,optionsAffectingProgramStructure:()=>optionsAffectingProgramStructure,optionsForBuild:()=>optionsForBuild,optionsForWatch:()=>optionsForWatch,optionsHaveChanges:()=>J_,optionsHaveModuleResolutionChanges:()=>pS,or:()=>W1,orderedRemoveItem:()=>J,orderedRemoveItemAt:()=>vT,outFile:()=>B0,packageIdToPackageName:()=>fS,packageIdToString:()=>vD,padLeft:()=>w5,padRight:()=>C5,paramHelper:()=>paramHelper,parameterIsThisKeyword:()=>kl,parameterNamePart:()=>parameterNamePart,parseBaseNodeFactory:()=>Iv,parseBigInt:()=>nL,parseBuildCommand:()=>parseBuildCommand,parseCommandLine:()=>parseCommandLine,parseCommandLineWorker:()=>parseCommandLineWorker,parseConfigFileTextToJson:()=>parseConfigFileTextToJson,parseConfigFileWithSystem:()=>parseConfigFileWithSystem,parseConfigHostFromCompilerHostLike:()=>parseConfigHostFromCompilerHostLike,parseCustomTypeOption:()=>parseCustomTypeOption,parseIsolatedEntityName:()=>WJ,parseIsolatedJSDocComment:()=>HJ,parseJSDocTypeExpressionForTests:()=>GJ,parseJsonConfigFileContent:()=>parseJsonConfigFileContent,parseJsonSourceFileConfigFileContent:()=>parseJsonSourceFileConfigFileContent,parseJsonText:()=>VJ,parseListTypeOption:()=>parseListTypeOption,parseNodeFactory:()=>dc,parseNodeModuleFromPath:()=>parseNodeModuleFromPath,parsePackageName:()=>parsePackageName,parsePseudoBigInt:()=>Hf,parseValidBigInt:()=>Ux,patchWriteFileEnsuringDirectory:()=>patchWriteFileEnsuringDirectory,pathContainsNodeModules:()=>pathContainsNodeModules,pathIsAbsolute:()=>sy,pathIsBareSpecifier:()=>z5,pathIsRelative:()=>So,patternText:()=>g5,perfLogger:()=>Dp,performIncrementalCompilation:()=>performIncrementalCompilation,performance:()=>ts_performance_exports,plainJSErrors:()=>plainJSErrors,positionBelongsToNode:()=>positionBelongsToNode,positionIsASICandidate:()=>positionIsASICandidate,positionIsSynthesized:()=>hs,positionsAreOnSameLine:()=>$_,preProcessFile:()=>preProcessFile,probablyUsesSemicolons:()=>probablyUsesSemicolons,processCommentPragmas:()=>ZE,processPragmasIntoFields:()=>e7,processTaggedTemplateExpression:()=>processTaggedTemplateExpression,programContainsEsModules:()=>programContainsEsModules,programContainsModules:()=>programContainsModules,projectReferenceIsEqualTo:()=>hD,propKeyHelper:()=>propKeyHelper,propertyNamePart:()=>propertyNamePart,pseudoBigIntToString:()=>y2,punctuationPart:()=>punctuationPart,pushIfUnique:()=>qn,quote:()=>quote,quotePreferenceFromString:()=>quotePreferenceFromString,rangeContainsPosition:()=>rangeContainsPosition,rangeContainsPositionExclusive:()=>rangeContainsPositionExclusive,rangeContainsRange:()=>rangeContainsRange,rangeContainsRangeExclusive:()=>rangeContainsRangeExclusive,rangeContainsStartEnd:()=>rangeContainsStartEnd,rangeEndIsOnSameLineAsRangeStart:()=>bO,rangeEndPositionsAreOnSameLine:()=>vO,rangeEquals:()=>Kc,rangeIsOnSingleLine:()=>gO,rangeOfNode:()=>eL,rangeOfTypeParameters:()=>tL,rangeOverlapsWithStartEnd:()=>rangeOverlapsWithStartEnd,rangeStartIsOnSameLineAsRangeEnd:()=>cx,rangeStartPositionsAreOnSameLine:()=>yO,readBuilderProgram:()=>readBuilderProgram,readConfigFile:()=>readConfigFile,readHelper:()=>readHelper,readJson:()=>pO,readJsonConfigFile:()=>readJsonConfigFile,readJsonOrUndefined:()=>ax,realizeDiagnostics:()=>realizeDiagnostics,reduceEachLeadingCommentRange:()=>zT,reduceEachTrailingCommentRange:()=>WT,reduceLeft:()=>Qa,reduceLeftIterator:()=>K,reducePathComponents:()=>is,refactor:()=>ts_refactor_exports,regExpEscape:()=>MM,relativeComplement:()=>h_,removeAllComments:()=>removeAllComments,removeEmitHelper:()=>removeEmitHelper,removeExtension:()=>Fx,removeFileExtension:()=>Ll,removeIgnoredPath:()=>removeIgnoredPath,removeMinAndVersionNumbers:()=>q1,removeOptionality:()=>removeOptionality,removePrefix:()=>v5,removeSuffix:()=>F1,removeTrailingDirectorySeparator:()=>P_,repeatString:()=>repeatString,replaceElement:()=>ei,resolutionExtensionIsTSOrJson:()=>GM,resolveConfigFileProjectName:()=>resolveConfigFileProjectName,resolveJSModule:()=>resolveJSModule,resolveModuleName:()=>resolveModuleName,resolveModuleNameFromCache:()=>resolveModuleNameFromCache,resolvePackageNameToPackageJson:()=>resolvePackageNameToPackageJson,resolvePath:()=>oy,resolveProjectReferencePath:()=>resolveProjectReferencePath,resolveTripleslashReference:()=>resolveTripleslashReference,resolveTypeReferenceDirective:()=>resolveTypeReferenceDirective,resolvingEmptyArray:()=>t8,restHelper:()=>restHelper,returnFalse:()=>w_,returnNoopFileWatcher:()=>returnNoopFileWatcher,returnTrue:()=>vp,returnUndefined:()=>C1,returnsPromise:()=>returnsPromise,runInitializersHelper:()=>runInitializersHelper,sameFlatMap:()=>at,sameMap:()=>tt,sameMapping:()=>sameMapping,scanShebangTrivia:()=>yy,scanTokenAtPosition:()=>dk,scanner:()=>Zo,screenStartingMessageCodes:()=>screenStartingMessageCodes,semanticDiagnosticsOptionDeclarations:()=>semanticDiagnosticsOptionDeclarations,serializeCompilerOptions:()=>serializeCompilerOptions,server:()=>ts_server_exports,servicesVersion:()=>E7,setCommentRange:()=>setCommentRange,setConfigFileInOptions:()=>setConfigFileInOptions,setConstantValue:()=>setConstantValue,setEachParent:()=>Q_,setEmitFlags:()=>setEmitFlags,setFunctionNameHelper:()=>setFunctionNameHelper,setGetSourceFileAsHashVersioned:()=>setGetSourceFileAsHashVersioned,setIdentifierAutoGenerate:()=>setIdentifierAutoGenerate,setIdentifierGeneratedImportReference:()=>setIdentifierGeneratedImportReference,setIdentifierTypeArguments:()=>setIdentifierTypeArguments,setInternalEmitFlags:()=>setInternalEmitFlags,setLocalizedDiagnosticMessages:()=>yx,setModuleDefaultHelper:()=>setModuleDefaultHelper,setNodeFlags:()=>lL,setObjectAllocator:()=>gx,setOriginalNode:()=>Dn,setParent:()=>Sa,setParentRecursive:()=>Vx,setPrivateIdentifier:()=>setPrivateIdentifier,setResolvedModule:()=>fD,setResolvedTypeReferenceDirective:()=>dD,setSnippetElement:()=>setSnippetElement,setSourceMapRange:()=>setSourceMapRange,setStackTraceLimit:()=>setStackTraceLimit,setStartsOnNewLine:()=>setStartsOnNewLine,setSyntheticLeadingComments:()=>setSyntheticLeadingComments,setSyntheticTrailingComments:()=>setSyntheticTrailingComments,setSys:()=>setSys,setSysLog:()=>setSysLog,setTextRange:()=>Rt,setTextRangeEnd:()=>Wx,setTextRangePos:()=>Gf,setTextRangePosEnd:()=>Us,setTextRangePosWidth:()=>$f,setTokenSourceMapRange:()=>setTokenSourceMapRange,setTypeNode:()=>setTypeNode,setUILocale:()=>xp,setValueDeclaration:()=>EI,shouldAllowImportingTsExtension:()=>shouldAllowImportingTsExtension,shouldPreserveConstEnums:()=>bM,shouldUseUriStyleNodeCoreModules:()=>shouldUseUriStyleNodeCoreModules,showModuleSpecifier:()=>UO,signatureHasLiteralTypes:()=>signatureHasLiteralTypes,signatureHasRestParameter:()=>signatureHasRestParameter,signatureToDisplayParts:()=>signatureToDisplayParts,single:()=>Yc,singleElementArray:()=>Cp,singleIterator:()=>Ka,singleOrMany:()=>mo,singleOrUndefined:()=>Xa,skipAlias:()=>NO,skipAssertions:()=>Uj,skipConstraint:()=>skipConstraint,skipOuterExpressions:()=>$o,skipParentheses:()=>Pl,skipPartiallyEmittedExpressions:()=>lf,skipTrivia:()=>Ar,skipTypeChecking:()=>rL,skipTypeParentheses:()=>zI,skipWhile:()=>P5,sliceAfter:()=>QM,some:()=>Ke,sort:()=>Is,sortAndDeduplicate:()=>uo,sortAndDeduplicateDiagnostics:()=>dA,sourceFileAffectingCompilerOptions:()=>sourceFileAffectingCompilerOptions,sourceFileMayBeEmitted:()=>q0,sourceMapCommentRegExp:()=>sourceMapCommentRegExp,sourceMapCommentRegExpDontCareLineStart:()=>sourceMapCommentRegExpDontCareLineStart,spacePart:()=>spacePart,spanMap:()=>co,spreadArrayHelper:()=>spreadArrayHelper,stableSort:()=>Ns,startEndContainsRange:()=>startEndContainsRange,startEndOverlapsWithStartEnd:()=>startEndOverlapsWithStartEnd,startOnNewLine:()=>vd,startTracing:()=>startTracing,startsWith:()=>Pn,startsWithDirectory:()=>Q5,startsWithUnderscore:()=>startsWithUnderscore,startsWithUseStrict:()=>SE,stringContains:()=>Fi,stringContainsAt:()=>stringContainsAt,stringToToken:()=>_l,stripQuotes:()=>SN,supportedDeclarationExtensions:()=>R2,supportedJSExtensions:()=>M2,supportedJSExtensionsFlat:()=>L2,supportedLocaleDirectories:()=>Hy,supportedTSExtensions:()=>Jo,supportedTSExtensionsFlat:()=>O2,supportedTSImplementationExtensions:()=>b8,suppressLeadingAndTrailingTrivia:()=>suppressLeadingAndTrailingTrivia,suppressLeadingTrivia:()=>suppressLeadingTrivia,suppressTrailingTrivia:()=>suppressTrailingTrivia,symbolEscapedNameNoDefault:()=>symbolEscapedNameNoDefault,symbolName:()=>rf,symbolNameNoDefault:()=>symbolNameNoDefault,symbolPart:()=>symbolPart,symbolToDisplayParts:()=>symbolToDisplayParts,syntaxMayBeASICandidate:()=>syntaxMayBeASICandidate,syntaxRequiresTrailingSemicolonOrASI:()=>syntaxRequiresTrailingSemicolonOrASI,sys:()=>iy,sysLog:()=>sysLog,tagNamesAreEquivalent:()=>Hi,takeWhile:()=>A5,targetOptionDeclaration:()=>targetOptionDeclaration,templateObjectHelper:()=>templateObjectHelper,testFormatSettings:()=>testFormatSettings,textChangeRangeIsUnchanged:()=>c3,textChangeRangeNewSpan:()=>R_,textChanges:()=>ts_textChanges_exports,textOrKeywordPart:()=>textOrKeywordPart,textPart:()=>textPart,textRangeContainsPositionInclusive:()=>hA,textSpanContainsPosition:()=>mA,textSpanContainsTextSpan:()=>gA,textSpanEnd:()=>Ir,textSpanIntersection:()=>_3,textSpanIntersectsWith:()=>bA,textSpanIntersectsWithPosition:()=>TA,textSpanIntersectsWithTextSpan:()=>vA,textSpanIsEmpty:()=>s3,textSpanOverlap:()=>o3,textSpanOverlapsWith:()=>yA,textSpansEqual:()=>textSpansEqual,textToKeywordObj:()=>cl,timestamp:()=>ts,toArray:()=>en,toBuilderFileEmit:()=>toBuilderFileEmit,toBuilderStateFileInfoForMultiEmit:()=>toBuilderStateFileInfoForMultiEmit,toEditorSettings:()=>lu,toFileNameLowerCase:()=>Tp,toLowerCase:()=>bp,toPath:()=>Ui,toProgramEmitPending:()=>toProgramEmitPending,tokenIsIdentifierOrKeyword:()=>fr,tokenIsIdentifierOrKeywordOrGreaterThan:()=>qT,tokenToString:()=>Br,trace:()=>trace,tracing:()=>rs,tracingEnabled:()=>tracingEnabled,transform:()=>transform,transformClassFields:()=>transformClassFields,transformDeclarations:()=>transformDeclarations,transformECMAScriptModule:()=>transformECMAScriptModule,transformES2015:()=>transformES2015,transformES2016:()=>transformES2016,transformES2017:()=>transformES2017,transformES2018:()=>transformES2018,transformES2019:()=>transformES2019,transformES2020:()=>transformES2020,transformES2021:()=>transformES2021,transformES5:()=>transformES5,transformESDecorators:()=>transformESDecorators,transformESNext:()=>transformESNext,transformGenerators:()=>transformGenerators,transformJsx:()=>transformJsx,transformLegacyDecorators:()=>transformLegacyDecorators,transformModule:()=>transformModule,transformNodeModule:()=>transformNodeModule,transformNodes:()=>transformNodes,transformSystemModule:()=>transformSystemModule,transformTypeScript:()=>transformTypeScript,transpile:()=>transpile,transpileModule:()=>transpileModule,transpileOptionValueCompilerOptions:()=>transpileOptionValueCompilerOptions,trimString:()=>Pp,trimStringEnd:()=>X1,trimStringStart:()=>nl,tryAddToSet:()=>ua,tryAndIgnoreErrors:()=>tryAndIgnoreErrors,tryCast:()=>ln,tryDirectoryExists:()=>tryDirectoryExists,tryExtractTSExtension:()=>oO,tryFileExists:()=>tryFileExists,tryGetClassExtendingExpressionWithTypeArguments:()=>ex,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>tx,tryGetDirectories:()=>tryGetDirectories,tryGetExtensionFromPath:()=>h2,tryGetImportFromModuleSpecifier:()=>YS,tryGetJSDocSatisfiesTypeNode:()=>e8,tryGetModuleNameFromFile:()=>CE,tryGetModuleSpecifierFromDeclaration:()=>CI,tryGetNativePerformanceHooks:()=>M5,tryGetPropertyAccessOrIdentifierToString:()=>t2,tryGetPropertyNameOfBindingOrAssignmentElement:()=>PE,tryGetSourceMappingURL:()=>tryGetSourceMappingURL,tryGetTextOfPropertyName:()=>e0,tryIOAndConsumeErrors:()=>tryIOAndConsumeErrors,tryParsePattern:()=>Bx,tryParsePatterns:()=>HM,tryParseRawSourceMap:()=>tryParseRawSourceMap,tryReadDirectory:()=>tryReadDirectory,tryReadFile:()=>tryReadFile,tryRemoveDirectoryPrefix:()=>OM,tryRemoveExtension:()=>Jx,tryRemovePrefix:()=>ST,tryRemoveSuffix:()=>B1,typeAcquisitionDeclarations:()=>typeAcquisitionDeclarations,typeAliasNamePart:()=>typeAliasNamePart,typeDirectiveIsEqualTo:()=>bD,typeKeywords:()=>typeKeywords,typeParameterNamePart:()=>typeParameterNamePart,typeReferenceResolutionNameAndModeGetter:()=>typeReferenceResolutionNameAndModeGetter,typeToDisplayParts:()=>typeToDisplayParts,unchangedPollThresholds:()=>unchangedPollThresholds,unchangedTextChangeRange:()=>Vy,unescapeLeadingUnderscores:()=>dl,unmangleScopedPackageName:()=>unmangleScopedPackageName,unorderedRemoveItem:()=>bT,unorderedRemoveItemAt:()=>U1,unreachableCodeIsError:()=>dM,unusedLabelIsError:()=>mM,unwrapInnermostStatementOfLabel:()=>Nk,updateErrorForNoInputFiles:()=>updateErrorForNoInputFiles,updateLanguageServiceSourceFile:()=>T7,updateMissingFilePathsWatch:()=>updateMissingFilePathsWatch,updatePackageJsonWatch:()=>updatePackageJsonWatch,updateResolutionField:()=>updateResolutionField,updateSharedExtendedConfigFileWatcher:()=>updateSharedExtendedConfigFileWatcher,updateSourceFile:()=>kv,updateWatchingWildcardDirectories:()=>updateWatchingWildcardDirectories,usesExtensionsOnImports:()=>Rx,usingSingleLineStringWriter:()=>uD,utf16EncodeAsString:()=>by,validateLocaleAndSetLanguage:()=>wA,valuesHelper:()=>valuesHelper,version:()=>C,versionMajorMinor:()=>m,visitArray:()=>visitArray,visitCommaListElements:()=>visitCommaListElements,visitEachChild:()=>visitEachChild,visitFunctionBody:()=>visitFunctionBody,visitIterationBody:()=>visitIterationBody,visitLexicalEnvironment:()=>visitLexicalEnvironment,visitNode:()=>visitNode,visitNodes:()=>visitNodes2,visitParameterList:()=>visitParameterList,walkUpBindingElementsAndPatterns:()=>f3,walkUpLexicalEnvironments:()=>walkUpLexicalEnvironments,walkUpOuterExpressions:()=>qj,walkUpParenthesizedExpressions:()=>D0,walkUpParenthesizedTypes:()=>qI,walkUpParenthesizedTypesAndGetParentAndChild:()=>UI,whitespaceOrMapCommentRegExp:()=>whitespaceOrMapCommentRegExp,writeCommentRange:()=>WN,writeFile:()=>ON,writeFileEnsuringDirectories:()=>MN,zipToModeAwareCache:()=>zipToModeAwareCache,zipWith:()=>ce});var R7=D({"src/typescript/_namespaces/ts.ts"(){"use strict";nn(),l7(),Lv(),LB()}}),RB=P({"src/typescript/typescript.ts"(e,t){R7(),R7(),typeof console<"u"&&(Y.loggingHost={log(r,s){switch(r){case 1:return console.error(s);case 2:return console.warn(s);case 3:return console.log(s);case 4:return console.log(s)}}}),t.exports=L7}});_.exports=RB()}}),wW=Ne({"src/language-js/parse/postprocess/typescript.js"(a,_){"use strict";ke();var v=R9(),h=J9(),D=F9(),P={AbstractKeyword:126,SourceFile:308,PropertyDeclaration:169};function y(c){for(;c&&c.kind!==P.SourceFile;)c=c.parent;return c}function m(c,M){let q=y(c),[W,K]=[c.getStart(),c.end].map(ce=>{let{line:Ce,character:me}=q.getLineAndCharacterOfPosition(ce);return{line:Ce+1,column:me}});D({loc:{start:W,end:K}},M)}function C(c){let M=vr();return[!0,!1].some(q=>M.nodeCanBeDecorated(q,c,c.parent,c.parent.parent))}function d(c){let{modifiers:M}=c;if(!v(M))return;let q=vr(),{SyntaxKind:W}=q;for(let K of M)q.isDecorator(K)&&!C(c)&&(c.kind===W.MethodDeclaration&&!q.nodeIsPresent(c.body)&&m(K,"A decorator can only decorate a method implementation, not an overload."),m(K,"Decorators are not valid here."))}function E(c,M){c.kind!==P.PropertyDeclaration||c.modifiers&&!c.modifiers.some(q=>q.kind===P.AbstractKeyword)||c.initializer&&M.value===null&&D(M,"Abstract property cannot have an initializer")}function I(c,M){if(!/@|abstract/.test(M.originalText))return;let{esTreeNodeToTSNodeMap:q,tsNodeToESTreeNodeMap:W}=c;h(c.ast,K=>{let ce=q.get(K);if(!ce)return;let Ce=W.get(ce);Ce===K&&(d(ce),E(ce,Ce))})}_.exports={throwErrorForInvalidNodes:I}}}),Ga=Ne({"scripts/build/shims/debug.cjs"(a,_){"use strict";ke(),_.exports=()=>()=>{}}}),h1=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/constants.js"(a,_){ke();var v="2.0.0",h=256,D=Number.MAX_SAFE_INTEGER||9007199254740991,P=16;_.exports={SEMVER_SPEC_VERSION:v,MAX_LENGTH:h,MAX_SAFE_INTEGER:D,MAX_SAFE_COMPONENT_LENGTH:P}}}),g1=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/debug.js"(a,_){ke();var v=typeof cn=="object"&&cn.env&&cn.env.NODE_DEBUG&&/\bsemver\b/i.test(cn.env.NODE_DEBUG)?function(){for(var h=arguments.length,D=new Array(h),P=0;P{};_.exports=v}}),Bc=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/re.js"(a,_){ke();var{MAX_SAFE_COMPONENT_LENGTH:v}=h1(),h=g1();a=_.exports={};var D=a.re=[],P=a.src=[],y=a.t={},m=0,C=(d,E,I)=>{let c=m++;h(d,c,E),y[d]=c,P[c]=E,D[c]=new RegExp(E,I?"g":void 0)};C("NUMERICIDENTIFIER","0|[1-9]\\d*"),C("NUMERICIDENTIFIERLOOSE","[0-9]+"),C("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),C("MAINVERSION",`(${P[y.NUMERICIDENTIFIER]})\\.(${P[y.NUMERICIDENTIFIER]})\\.(${P[y.NUMERICIDENTIFIER]})`),C("MAINVERSIONLOOSE",`(${P[y.NUMERICIDENTIFIERLOOSE]})\\.(${P[y.NUMERICIDENTIFIERLOOSE]})\\.(${P[y.NUMERICIDENTIFIERLOOSE]})`),C("PRERELEASEIDENTIFIER",`(?:${P[y.NUMERICIDENTIFIER]}|${P[y.NONNUMERICIDENTIFIER]})`),C("PRERELEASEIDENTIFIERLOOSE",`(?:${P[y.NUMERICIDENTIFIERLOOSE]}|${P[y.NONNUMERICIDENTIFIER]})`),C("PRERELEASE",`(?:-(${P[y.PRERELEASEIDENTIFIER]}(?:\\.${P[y.PRERELEASEIDENTIFIER]})*))`),C("PRERELEASELOOSE",`(?:-?(${P[y.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${P[y.PRERELEASEIDENTIFIERLOOSE]})*))`),C("BUILDIDENTIFIER","[0-9A-Za-z-]+"),C("BUILD",`(?:\\+(${P[y.BUILDIDENTIFIER]}(?:\\.${P[y.BUILDIDENTIFIER]})*))`),C("FULLPLAIN",`v?${P[y.MAINVERSION]}${P[y.PRERELEASE]}?${P[y.BUILD]}?`),C("FULL",`^${P[y.FULLPLAIN]}$`),C("LOOSEPLAIN",`[v=\\s]*${P[y.MAINVERSIONLOOSE]}${P[y.PRERELEASELOOSE]}?${P[y.BUILD]}?`),C("LOOSE",`^${P[y.LOOSEPLAIN]}$`),C("GTLT","((?:<|>)?=?)"),C("XRANGEIDENTIFIERLOOSE",`${P[y.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),C("XRANGEIDENTIFIER",`${P[y.NUMERICIDENTIFIER]}|x|X|\\*`),C("XRANGEPLAIN",`[v=\\s]*(${P[y.XRANGEIDENTIFIER]})(?:\\.(${P[y.XRANGEIDENTIFIER]})(?:\\.(${P[y.XRANGEIDENTIFIER]})(?:${P[y.PRERELEASE]})?${P[y.BUILD]}?)?)?`),C("XRANGEPLAINLOOSE",`[v=\\s]*(${P[y.XRANGEIDENTIFIERLOOSE]})(?:\\.(${P[y.XRANGEIDENTIFIERLOOSE]})(?:\\.(${P[y.XRANGEIDENTIFIERLOOSE]})(?:${P[y.PRERELEASELOOSE]})?${P[y.BUILD]}?)?)?`),C("XRANGE",`^${P[y.GTLT]}\\s*${P[y.XRANGEPLAIN]}$`),C("XRANGELOOSE",`^${P[y.GTLT]}\\s*${P[y.XRANGEPLAINLOOSE]}$`),C("COERCE",`(^|[^\\d])(\\d{1,${v}})(?:\\.(\\d{1,${v}}))?(?:\\.(\\d{1,${v}}))?(?:$|[^\\d])`),C("COERCERTL",P[y.COERCE],!0),C("LONETILDE","(?:~>?)"),C("TILDETRIM",`(\\s*)${P[y.LONETILDE]}\\s+`,!0),a.tildeTrimReplace="$1~",C("TILDE",`^${P[y.LONETILDE]}${P[y.XRANGEPLAIN]}$`),C("TILDELOOSE",`^${P[y.LONETILDE]}${P[y.XRANGEPLAINLOOSE]}$`),C("LONECARET","(?:\\^)"),C("CARETTRIM",`(\\s*)${P[y.LONECARET]}\\s+`,!0),a.caretTrimReplace="$1^",C("CARET",`^${P[y.LONECARET]}${P[y.XRANGEPLAIN]}$`),C("CARETLOOSE",`^${P[y.LONECARET]}${P[y.XRANGEPLAINLOOSE]}$`),C("COMPARATORLOOSE",`^${P[y.GTLT]}\\s*(${P[y.LOOSEPLAIN]})$|^$`),C("COMPARATOR",`^${P[y.GTLT]}\\s*(${P[y.FULLPLAIN]})$|^$`),C("COMPARATORTRIM",`(\\s*)${P[y.GTLT]}\\s*(${P[y.LOOSEPLAIN]}|${P[y.XRANGEPLAIN]})`,!0),a.comparatorTrimReplace="$1$2$3",C("HYPHENRANGE",`^\\s*(${P[y.XRANGEPLAIN]})\\s+-\\s+(${P[y.XRANGEPLAIN]})\\s*$`),C("HYPHENRANGELOOSE",`^\\s*(${P[y.XRANGEPLAINLOOSE]})\\s+-\\s+(${P[y.XRANGEPLAINLOOSE]})\\s*$`),C("STAR","(<|>)?=?\\s*\\*"),C("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),C("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}}),y1=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/parse-options.js"(a,_){ke();var v=["includePrerelease","loose","rtl"],h=D=>D?typeof D!="object"?{loose:!0}:v.filter(P=>D[P]).reduce((P,y)=>(P[y]=!0,P),{}):{};_.exports=h}}),B9=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/identifiers.js"(a,_){ke();var v=/^[0-9]+$/,h=(P,y)=>{let m=v.test(P),C=v.test(y);return m&&C&&(P=+P,y=+y),P===y?0:m&&!C?-1:C&&!m?1:Ph(y,P);_.exports={compareIdentifiers:h,rcompareIdentifiers:D}}}),Bn=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/semver.js"(a,_){ke();var v=g1(),{MAX_LENGTH:h,MAX_SAFE_INTEGER:D}=h1(),{re:P,t:y}=Bc(),m=y1(),{compareIdentifiers:C}=B9(),d=class{constructor(E,I){if(I=m(I),E instanceof d){if(E.loose===!!I.loose&&E.includePrerelease===!!I.includePrerelease)return E;E=E.version}else if(typeof E!="string")throw new TypeError(`Invalid Version: ${E}`);if(E.length>h)throw new TypeError(`version is longer than ${h} characters`);v("SemVer",E,I),this.options=I,this.loose=!!I.loose,this.includePrerelease=!!I.includePrerelease;let c=E.trim().match(I.loose?P[y.LOOSE]:P[y.FULL]);if(!c)throw new TypeError(`Invalid Version: ${E}`);if(this.raw=E,this.major=+c[1],this.minor=+c[2],this.patch=+c[3],this.major>D||this.major<0)throw new TypeError("Invalid major version");if(this.minor>D||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>D||this.patch<0)throw new TypeError("Invalid patch version");c[4]?this.prerelease=c[4].split(".").map(M=>{if(/^[0-9]+$/.test(M)){let q=+M;if(q>=0&&q=0;)typeof this.prerelease[c]=="number"&&(this.prerelease[c]++,c=-2);c===-1&&this.prerelease.push(0)}I&&(C(this.prerelease[0],I)===0?isNaN(this.prerelease[1])&&(this.prerelease=[I,0]):this.prerelease=[I,0]);break;default:throw new Error(`invalid increment argument: ${E}`)}return this.format(),this.raw=this.version,this}};_.exports=d}}),qc=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/parse.js"(a,_){ke();var{MAX_LENGTH:v}=h1(),{re:h,t:D}=Bc(),P=Bn(),y=y1(),m=(C,d)=>{if(d=y(d),C instanceof P)return C;if(typeof C!="string"||C.length>v||!(d.loose?h[D.LOOSE]:h[D.FULL]).test(C))return null;try{return new P(C,d)}catch{return null}};_.exports=m}}),CW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/valid.js"(a,_){ke();var v=qc(),h=(D,P)=>{let y=v(D,P);return y?y.version:null};_.exports=h}}),AW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/clean.js"(a,_){ke();var v=qc(),h=(D,P)=>{let y=v(D.trim().replace(/^[=v]+/,""),P);return y?y.version:null};_.exports=h}}),PW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/inc.js"(a,_){ke();var v=Bn(),h=(D,P,y,m)=>{typeof y=="string"&&(m=y,y=void 0);try{return new v(D instanceof v?D.version:D,y).inc(P,m).version}catch{return null}};_.exports=h}}),_a=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare.js"(a,_){ke();var v=Bn(),h=(D,P,y)=>new v(D,y).compare(new v(P,y));_.exports=h}}),sT=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/eq.js"(a,_){ke();var v=_a(),h=(D,P,y)=>v(D,P,y)===0;_.exports=h}}),DW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/diff.js"(a,_){ke();var v=qc(),h=sT(),D=(P,y)=>{if(h(P,y))return null;{let m=v(P),C=v(y),d=m.prerelease.length||C.prerelease.length,E=d?"pre":"",I=d?"prerelease":"";for(let c in m)if((c==="major"||c==="minor"||c==="patch")&&m[c]!==C[c])return E+c;return I}};_.exports=D}}),kW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/major.js"(a,_){ke();var v=Bn(),h=(D,P)=>new v(D,P).major;_.exports=h}}),IW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/minor.js"(a,_){ke();var v=Bn(),h=(D,P)=>new v(D,P).minor;_.exports=h}}),NW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/patch.js"(a,_){ke();var v=Bn(),h=(D,P)=>new v(D,P).patch;_.exports=h}}),OW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/prerelease.js"(a,_){ke();var v=qc(),h=(D,P)=>{let y=v(D,P);return y&&y.prerelease.length?y.prerelease:null};_.exports=h}}),MW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/rcompare.js"(a,_){ke();var v=_a(),h=(D,P,y)=>v(P,D,y);_.exports=h}}),LW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare-loose.js"(a,_){ke();var v=_a(),h=(D,P)=>v(D,P,!0);_.exports=h}}),oT=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare-build.js"(a,_){ke();var v=Bn(),h=(D,P,y)=>{let m=new v(D,y),C=new v(P,y);return m.compare(C)||m.compareBuild(C)};_.exports=h}}),RW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/sort.js"(a,_){ke();var v=oT(),h=(D,P)=>D.sort((y,m)=>v(y,m,P));_.exports=h}}),jW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/rsort.js"(a,_){ke();var v=oT(),h=(D,P)=>D.sort((y,m)=>v(m,y,P));_.exports=h}}),v1=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/gt.js"(a,_){ke();var v=_a(),h=(D,P,y)=>v(D,P,y)>0;_.exports=h}}),_T=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/lt.js"(a,_){ke();var v=_a(),h=(D,P,y)=>v(D,P,y)<0;_.exports=h}}),q9=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/neq.js"(a,_){ke();var v=_a(),h=(D,P,y)=>v(D,P,y)!==0;_.exports=h}}),cT=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/gte.js"(a,_){ke();var v=_a(),h=(D,P,y)=>v(D,P,y)>=0;_.exports=h}}),lT=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/lte.js"(a,_){ke();var v=_a(),h=(D,P,y)=>v(D,P,y)<=0;_.exports=h}}),U9=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/cmp.js"(a,_){ke();var v=sT(),h=q9(),D=v1(),P=cT(),y=_T(),m=lT(),C=(d,E,I,c)=>{switch(E){case"===":return typeof d=="object"&&(d=d.version),typeof I=="object"&&(I=I.version),d===I;case"!==":return typeof d=="object"&&(d=d.version),typeof I=="object"&&(I=I.version),d!==I;case"":case"=":case"==":return v(d,I,c);case"!=":return h(d,I,c);case">":return D(d,I,c);case">=":return P(d,I,c);case"<":return y(d,I,c);case"<=":return m(d,I,c);default:throw new TypeError(`Invalid operator: ${E}`)}};_.exports=C}}),JW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/coerce.js"(a,_){ke();var v=Bn(),h=qc(),{re:D,t:P}=Bc(),y=(m,C)=>{if(m instanceof v)return m;if(typeof m=="number"&&(m=String(m)),typeof m!="string")return null;C=C||{};let d=null;if(!C.rtl)d=m.match(D[P.COERCE]);else{let E;for(;(E=D[P.COERCERTL].exec(m))&&(!d||d.index+d[0].length!==m.length);)(!d||E.index+E[0].length!==d.index+d[0].length)&&(d=E),D[P.COERCERTL].lastIndex=E.index+E[1].length+E[2].length;D[P.COERCERTL].lastIndex=-1}return d===null?null:h(`${d[2]}.${d[3]||"0"}.${d[4]||"0"}`,C)};_.exports=y}}),FW=Ne({"node_modules/yallist/iterator.js"(a,_){"use strict";ke(),_.exports=function(v){v.prototype[Symbol.iterator]=function*(){for(let h=this.head;h;h=h.next)yield h.value}}}}),BW=Ne({"node_modules/yallist/yallist.js"(a,_){"use strict";ke(),_.exports=v,v.Node=y,v.create=v;function v(m){var C=this;if(C instanceof v||(C=new v),C.tail=null,C.head=null,C.length=0,m&&typeof m.forEach=="function")m.forEach(function(I){C.push(I)});else if(arguments.length>0)for(var d=0,E=arguments.length;d1)d=C;else if(this.head)E=this.head.next,d=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var I=0;E!==null;I++)d=m(d,E.value,I),E=E.next;return d},v.prototype.reduceReverse=function(m,C){var d,E=this.tail;if(arguments.length>1)d=C;else if(this.tail)E=this.tail.prev,d=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var I=this.length-1;E!==null;I--)d=m(d,E.value,I),E=E.prev;return d},v.prototype.toArray=function(){for(var m=new Array(this.length),C=0,d=this.head;d!==null;C++)m[C]=d.value,d=d.next;return m},v.prototype.toArrayReverse=function(){for(var m=new Array(this.length),C=0,d=this.tail;d!==null;C++)m[C]=d.value,d=d.prev;return m},v.prototype.slice=function(m,C){C=C||this.length,C<0&&(C+=this.length),m=m||0,m<0&&(m+=this.length);var d=new v;if(Cthis.length&&(C=this.length);for(var E=0,I=this.head;I!==null&&Ethis.length&&(C=this.length);for(var E=this.length,I=this.tail;I!==null&&E>C;E--)I=I.prev;for(;I!==null&&E>m;E--,I=I.prev)d.push(I.value);return d},v.prototype.splice=function(m,C){m>this.length&&(m=this.length-1),m<0&&(m=this.length+m);for(var d=0,E=this.head;E!==null&&d1,q=class{constructor(te){if(typeof te=="number"&&(te={max:te}),te||(te={}),te.max&&(typeof te.max!="number"||te.max<0))throw new TypeError("max must be a non-negative number");let he=this[h]=te.max||1/0,De=te.length||M;if(this[P]=typeof De!="function"?M:De,this[y]=te.stale||!1,te.maxAge&&typeof te.maxAge!="number")throw new TypeError("maxAge must be a number");this[m]=te.maxAge||0,this[C]=te.dispose,this[d]=te.noDisposeOnSet||!1,this[c]=te.updateAgeOnGet||!1,this.reset()}set max(te){if(typeof te!="number"||te<0)throw new TypeError("max must be a non-negative number");this[h]=te||1/0,ce(this)}get max(){return this[h]}set allowStale(te){this[y]=!!te}get allowStale(){return this[y]}set maxAge(te){if(typeof te!="number")throw new TypeError("maxAge must be a non-negative number");this[m]=te,ce(this)}get maxAge(){return this[m]}set lengthCalculator(te){typeof te!="function"&&(te=M),te!==this[P]&&(this[P]=te,this[D]=0,this[E].forEach(he=>{he.length=this[P](he.value,he.key),this[D]+=he.length})),ce(this)}get lengthCalculator(){return this[P]}get length(){return this[D]}get itemCount(){return this[E].length}rforEach(te,he){he=he||this;for(let De=this[E].tail;De!==null;){let R=De.prev;Pe(this,te,De,he),De=R}}forEach(te,he){he=he||this;for(let De=this[E].head;De!==null;){let R=De.next;Pe(this,te,De,he),De=R}}keys(){return this[E].toArray().map(te=>te.key)}values(){return this[E].toArray().map(te=>te.value)}reset(){this[C]&&this[E]&&this[E].length&&this[E].forEach(te=>this[C](te.key,te.value)),this[I]=new Map,this[E]=new v,this[D]=0}dump(){return this[E].map(te=>K(this,te)?!1:{k:te.key,v:te.value,e:te.now+(te.maxAge||0)}).toArray().filter(te=>te)}dumpLru(){return this[E]}set(te,he,De){if(De=De||this[m],De&&typeof De!="number")throw new TypeError("maxAge must be a number");let R=De?Date.now():0,pe=this[P](he,te);if(this[I].has(te)){if(pe>this[h])return Ce(this,this[I].get(te)),!1;let Xe=this[I].get(te).value;return this[C]&&(this[d]||this[C](te,Xe.value)),Xe.now=R,Xe.maxAge=De,Xe.value=he,this[D]+=pe-Xe.length,Xe.length=pe,this.get(te),ce(this),!0}let Ie=new me(te,he,pe,R,De);return Ie.length>this[h]?(this[C]&&this[C](te,he),!1):(this[D]+=Ie.length,this[E].unshift(Ie),this[I].set(te,this[E].head),ce(this),!0)}has(te){if(!this[I].has(te))return!1;let he=this[I].get(te).value;return!K(this,he)}get(te){return W(this,te,!0)}peek(te){return W(this,te,!1)}pop(){let te=this[E].tail;return te?(Ce(this,te),te.value):null}del(te){Ce(this,this[I].get(te))}load(te){this.reset();let he=Date.now();for(let De=te.length-1;De>=0;De--){let R=te[De],pe=R.e||0;if(pe===0)this.set(R.k,R.v);else{let Ie=pe-he;Ie>0&&this.set(R.k,R.v,Ie)}}}prune(){this[I].forEach((te,he)=>W(this,he,!1))}},W=(te,he,De)=>{let R=te[I].get(he);if(R){let pe=R.value;if(K(te,pe)){if(Ce(te,R),!te[y])return}else De&&(te[c]&&(R.value.now=Date.now()),te[E].unshiftNode(R));return pe.value}},K=(te,he)=>{if(!he||!he.maxAge&&!te[m])return!1;let De=Date.now()-he.now;return he.maxAge?De>he.maxAge:te[m]&&De>te[m]},ce=te=>{if(te[D]>te[h])for(let he=te[E].tail;te[D]>te[h]&&he!==null;){let De=he.prev;Ce(te,he),he=De}},Ce=(te,he)=>{if(he){let De=he.value;te[C]&&te[C](De.key,De.value),te[D]-=De.length,te[I].delete(De.key),te[E].removeNode(he)}},me=class{constructor(te,he,De,R,pe){this.key=te,this.value=he,this.length=De,this.now=R,this.maxAge=pe||0}},Pe=(te,he,De,R)=>{let pe=De.value;K(te,pe)&&(Ce(te,De),te[y]||(pe=void 0)),pe&&he.call(R,pe.value,pe.key,te)};_.exports=q}}),ca=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/range.js"(a,_){ke();var v=class{constructor(ee,je){if(je=P(je),ee instanceof v)return ee.loose===!!je.loose&&ee.includePrerelease===!!je.includePrerelease?ee:new v(ee.raw,je);if(ee instanceof y)return this.raw=ee.value,this.set=[[ee]],this.format(),this;if(this.options=je,this.loose=!!je.loose,this.includePrerelease=!!je.includePrerelease,this.raw=ee,this.set=ee.split("||").map(nt=>this.parseRange(nt.trim())).filter(nt=>nt.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${ee}`);if(this.set.length>1){let nt=this.set[0];if(this.set=this.set.filter(Ze=>!q(Ze[0])),this.set.length===0)this.set=[nt];else if(this.set.length>1){for(let Ze of this.set)if(Ze.length===1&&W(Ze[0])){this.set=[Ze];break}}}this.format()}format(){return this.range=this.set.map(ee=>ee.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(ee){ee=ee.trim();let nt=`parseRange:${Object.keys(this.options).join(",")}:${ee}`,Ze=D.get(nt);if(Ze)return Ze;let st=this.options.loose,tt=st?d[E.HYPHENRANGELOOSE]:d[E.HYPHENRANGE];ee=ee.replace(tt,Je(this.options.includePrerelease)),m("hyphen replace",ee),ee=ee.replace(d[E.COMPARATORTRIM],I),m("comparator trim",ee),ee=ee.replace(d[E.TILDETRIM],c),ee=ee.replace(d[E.CARETTRIM],M),ee=ee.split(/\s+/).join(" ");let ct=ee.split(" ").map(at=>ce(at,this.options)).join(" ").split(/\s+/).map(at=>Ie(at,this.options));st&&(ct=ct.filter(at=>(m("loose invalid filter",at,this.options),!!at.match(d[E.COMPARATORLOOSE])))),m("range list",ct);let ne=new Map,ge=ct.map(at=>new y(at,this.options));for(let at of ge){if(q(at))return[at];ne.set(at.value,at)}ne.size>1&&ne.has("")&&ne.delete("");let Fe=[...ne.values()];return D.set(nt,Fe),Fe}intersects(ee,je){if(!(ee instanceof v))throw new TypeError("a Range is required");return this.set.some(nt=>K(nt,je)&&ee.set.some(Ze=>K(Ze,je)&&nt.every(st=>Ze.every(tt=>st.intersects(tt,je)))))}test(ee){if(!ee)return!1;if(typeof ee=="string")try{ee=new C(ee,this.options)}catch{return!1}for(let je=0;jeee.value==="<0.0.0-0",W=ee=>ee.value==="",K=(ee,je)=>{let nt=!0,Ze=ee.slice(),st=Ze.pop();for(;nt&&Ze.length;)nt=Ze.every(tt=>st.intersects(tt,je)),st=Ze.pop();return nt},ce=(ee,je)=>(m("comp",ee,je),ee=te(ee,je),m("caret",ee),ee=me(ee,je),m("tildes",ee),ee=De(ee,je),m("xrange",ee),ee=pe(ee,je),m("stars",ee),ee),Ce=ee=>!ee||ee.toLowerCase()==="x"||ee==="*",me=(ee,je)=>ee.trim().split(/\s+/).map(nt=>Pe(nt,je)).join(" "),Pe=(ee,je)=>{let nt=je.loose?d[E.TILDELOOSE]:d[E.TILDE];return ee.replace(nt,(Ze,st,tt,ct,ne)=>{m("tilde",ee,Ze,st,tt,ct,ne);let ge;return Ce(st)?ge="":Ce(tt)?ge=`>=${st}.0.0 <${+st+1}.0.0-0`:Ce(ct)?ge=`>=${st}.${tt}.0 <${st}.${+tt+1}.0-0`:ne?(m("replaceTilde pr",ne),ge=`>=${st}.${tt}.${ct}-${ne} <${st}.${+tt+1}.0-0`):ge=`>=${st}.${tt}.${ct} <${st}.${+tt+1}.0-0`,m("tilde return",ge),ge})},te=(ee,je)=>ee.trim().split(/\s+/).map(nt=>he(nt,je)).join(" "),he=(ee,je)=>{m("caret",ee,je);let nt=je.loose?d[E.CARETLOOSE]:d[E.CARET],Ze=je.includePrerelease?"-0":"";return ee.replace(nt,(st,tt,ct,ne,ge)=>{m("caret",ee,st,tt,ct,ne,ge);let Fe;return Ce(tt)?Fe="":Ce(ct)?Fe=`>=${tt}.0.0${Ze} <${+tt+1}.0.0-0`:Ce(ne)?tt==="0"?Fe=`>=${tt}.${ct}.0${Ze} <${tt}.${+ct+1}.0-0`:Fe=`>=${tt}.${ct}.0${Ze} <${+tt+1}.0.0-0`:ge?(m("replaceCaret pr",ge),tt==="0"?ct==="0"?Fe=`>=${tt}.${ct}.${ne}-${ge} <${tt}.${ct}.${+ne+1}-0`:Fe=`>=${tt}.${ct}.${ne}-${ge} <${tt}.${+ct+1}.0-0`:Fe=`>=${tt}.${ct}.${ne}-${ge} <${+tt+1}.0.0-0`):(m("no pr"),tt==="0"?ct==="0"?Fe=`>=${tt}.${ct}.${ne}${Ze} <${tt}.${ct}.${+ne+1}-0`:Fe=`>=${tt}.${ct}.${ne}${Ze} <${tt}.${+ct+1}.0-0`:Fe=`>=${tt}.${ct}.${ne} <${+tt+1}.0.0-0`),m("caret return",Fe),Fe})},De=(ee,je)=>(m("replaceXRanges",ee,je),ee.split(/\s+/).map(nt=>R(nt,je)).join(" ")),R=(ee,je)=>{ee=ee.trim();let nt=je.loose?d[E.XRANGELOOSE]:d[E.XRANGE];return ee.replace(nt,(Ze,st,tt,ct,ne,ge)=>{m("xRange",ee,Ze,st,tt,ct,ne,ge);let Fe=Ce(tt),at=Fe||Ce(ct),Pt=at||Ce(ne),qt=Pt;return st==="="&&qt&&(st=""),ge=je.includePrerelease?"-0":"",Fe?st===">"||st==="<"?Ze="<0.0.0-0":Ze="*":st&&qt?(at&&(ct=0),ne=0,st===">"?(st=">=",at?(tt=+tt+1,ct=0,ne=0):(ct=+ct+1,ne=0)):st==="<="&&(st="<",at?tt=+tt+1:ct=+ct+1),st==="<"&&(ge="-0"),Ze=`${st+tt}.${ct}.${ne}${ge}`):at?Ze=`>=${tt}.0.0${ge} <${+tt+1}.0.0-0`:Pt&&(Ze=`>=${tt}.${ct}.0${ge} <${tt}.${+ct+1}.0-0`),m("xRange return",Ze),Ze})},pe=(ee,je)=>(m("replaceStars",ee,je),ee.trim().replace(d[E.STAR],"")),Ie=(ee,je)=>(m("replaceGTE0",ee,je),ee.trim().replace(d[je.includePrerelease?E.GTE0PRE:E.GTE0],"")),Je=ee=>(je,nt,Ze,st,tt,ct,ne,ge,Fe,at,Pt,qt,Zr)=>(Ce(Ze)?nt="":Ce(st)?nt=`>=${Ze}.0.0${ee?"-0":""}`:Ce(tt)?nt=`>=${Ze}.${st}.0${ee?"-0":""}`:ct?nt=`>=${nt}`:nt=`>=${nt}${ee?"-0":""}`,Ce(Fe)?ge="":Ce(at)?ge=`<${+Fe+1}.0.0-0`:Ce(Pt)?ge=`<${Fe}.${+at+1}.0-0`:qt?ge=`<=${Fe}.${at}.${Pt}-${qt}`:ee?ge=`<${Fe}.${at}.${+Pt+1}-0`:ge=`<=${ge}`,`${nt} ${ge}`.trim()),Xe=(ee,je,nt)=>{for(let Ze=0;Ze0){let st=ee[Ze].semver;if(st.major===je.major&&st.minor===je.minor&&st.patch===je.patch)return!0}return!1}return!0}}}),b1=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/comparator.js"(a,_){ke();var v=Symbol("SemVer ANY"),h=class{static get ANY(){return v}constructor(I,c){if(c=D(c),I instanceof h){if(I.loose===!!c.loose)return I;I=I.value}C("comparator",I,c),this.options=c,this.loose=!!c.loose,this.parse(I),this.semver===v?this.value="":this.value=this.operator+this.semver.version,C("comp",this)}parse(I){let c=this.options.loose?P[y.COMPARATORLOOSE]:P[y.COMPARATOR],M=I.match(c);if(!M)throw new TypeError(`Invalid comparator: ${I}`);this.operator=M[1]!==void 0?M[1]:"",this.operator==="="&&(this.operator=""),M[2]?this.semver=new d(M[2],this.options.loose):this.semver=v}toString(){return this.value}test(I){if(C("Comparator.test",I,this.options.loose),this.semver===v||I===v)return!0;if(typeof I=="string")try{I=new d(I,this.options)}catch{return!1}return m(I,this.operator,this.semver,this.options)}intersects(I,c){if(!(I instanceof h))throw new TypeError("a Comparator is required");if((!c||typeof c!="object")&&(c={loose:!!c,includePrerelease:!1}),this.operator==="")return this.value===""?!0:new E(I.value,c).test(this.value);if(I.operator==="")return I.value===""?!0:new E(this.value,c).test(I.semver);let M=(this.operator===">="||this.operator===">")&&(I.operator===">="||I.operator===">"),q=(this.operator==="<="||this.operator==="<")&&(I.operator==="<="||I.operator==="<"),W=this.semver.version===I.semver.version,K=(this.operator===">="||this.operator==="<=")&&(I.operator===">="||I.operator==="<="),ce=m(this.semver,"<",I.semver,c)&&(this.operator===">="||this.operator===">")&&(I.operator==="<="||I.operator==="<"),Ce=m(this.semver,">",I.semver,c)&&(this.operator==="<="||this.operator==="<")&&(I.operator===">="||I.operator===">");return M||q||W&&K||ce||Ce}};_.exports=h;var D=y1(),{re:P,t:y}=Bc(),m=U9(),C=g1(),d=Bn(),E=ca()}}),T1=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/satisfies.js"(a,_){ke();var v=ca(),h=(D,P,y)=>{try{P=new v(P,y)}catch{return!1}return P.test(D)};_.exports=h}}),UW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/to-comparators.js"(a,_){ke();var v=ca(),h=(D,P)=>new v(D,P).set.map(y=>y.map(m=>m.value).join(" ").trim().split(" "));_.exports=h}}),zW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/max-satisfying.js"(a,_){ke();var v=Bn(),h=ca(),D=(P,y,m)=>{let C=null,d=null,E=null;try{E=new h(y,m)}catch{return null}return P.forEach(I=>{E.test(I)&&(!C||d.compare(I)===-1)&&(C=I,d=new v(C,m))}),C};_.exports=D}}),WW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-satisfying.js"(a,_){ke();var v=Bn(),h=ca(),D=(P,y,m)=>{let C=null,d=null,E=null;try{E=new h(y,m)}catch{return null}return P.forEach(I=>{E.test(I)&&(!C||d.compare(I)===1)&&(C=I,d=new v(C,m))}),C};_.exports=D}}),VW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-version.js"(a,_){ke();var v=Bn(),h=ca(),D=v1(),P=(y,m)=>{y=new h(y,m);let C=new v("0.0.0");if(y.test(C)||(C=new v("0.0.0-0"),y.test(C)))return C;C=null;for(let d=0;d{let M=new v(c.semver.version);switch(c.operator){case">":M.prerelease.length===0?M.patch++:M.prerelease.push(0),M.raw=M.format();case"":case">=":(!I||D(M,I))&&(I=M);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${c.operator}`)}}),I&&(!C||D(C,I))&&(C=I)}return C&&y.test(C)?C:null};_.exports=P}}),HW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/valid.js"(a,_){ke();var v=ca(),h=(D,P)=>{try{return new v(D,P).range||"*"}catch{return null}};_.exports=h}}),uT=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/outside.js"(a,_){ke();var v=Bn(),h=b1(),{ANY:D}=h,P=ca(),y=T1(),m=v1(),C=_T(),d=lT(),E=cT(),I=(c,M,q,W)=>{c=new v(c,W),M=new P(M,W);let K,ce,Ce,me,Pe;switch(q){case">":K=m,ce=d,Ce=C,me=">",Pe=">=";break;case"<":K=C,ce=E,Ce=m,me="<",Pe="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(y(c,M,W))return!1;for(let te=0;te{pe.semver===D&&(pe=new h(">=0.0.0")),De=De||pe,R=R||pe,K(pe.semver,De.semver,W)?De=pe:Ce(pe.semver,R.semver,W)&&(R=pe)}),De.operator===me||De.operator===Pe||(!R.operator||R.operator===me)&&ce(c,R.semver))return!1;if(R.operator===Pe&&Ce(c,R.semver))return!1}return!0};_.exports=I}}),GW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/gtr.js"(a,_){ke();var v=uT(),h=(D,P,y)=>v(D,P,">",y);_.exports=h}}),$W=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/ltr.js"(a,_){ke();var v=uT(),h=(D,P,y)=>v(D,P,"<",y);_.exports=h}}),KW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/intersects.js"(a,_){ke();var v=ca(),h=(D,P,y)=>(D=new v(D,y),P=new v(P,y),D.intersects(P));_.exports=h}}),XW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/simplify.js"(a,_){ke();var v=T1(),h=_a();_.exports=(D,P,y)=>{let m=[],C=null,d=null,E=D.sort((q,W)=>h(q,W,y));for(let q of E)v(q,P,y)?(d=q,C||(C=q)):(d&&m.push([C,d]),d=null,C=null);C&&m.push([C,null]);let I=[];for(let[q,W]of m)q===W?I.push(q):!W&&q===E[0]?I.push("*"):W?q===E[0]?I.push(`<=${W}`):I.push(`${q} - ${W}`):I.push(`>=${q}`);let c=I.join(" || "),M=typeof P.raw=="string"?P.raw:String(P);return c.length2&&arguments[2]!==void 0?arguments[2]:{};if(I===c)return!0;I=new v(I,M),c=new v(c,M);let q=!1;e:for(let W of I.set){for(let K of c.set){let ce=C(W,K,M);if(q=q||ce!==null,ce)continue e}if(q)return!1}return!0},C=(I,c,M)=>{if(I===c)return!0;if(I.length===1&&I[0].semver===D){if(c.length===1&&c[0].semver===D)return!0;M.includePrerelease?I=[new h(">=0.0.0-0")]:I=[new h(">=0.0.0")]}if(c.length===1&&c[0].semver===D){if(M.includePrerelease)return!0;c=[new h(">=0.0.0")]}let q=new Set,W,K;for(let R of I)R.operator===">"||R.operator===">="?W=d(W,R,M):R.operator==="<"||R.operator==="<="?K=E(K,R,M):q.add(R.semver);if(q.size>1)return null;let ce;if(W&&K){if(ce=y(W.semver,K.semver,M),ce>0)return null;if(ce===0&&(W.operator!==">="||K.operator!=="<="))return null}for(let R of q){if(W&&!P(R,String(W),M)||K&&!P(R,String(K),M))return null;for(let pe of c)if(!P(R,String(pe),M))return!1;return!0}let Ce,me,Pe,te,he=K&&!M.includePrerelease&&K.semver.prerelease.length?K.semver:!1,De=W&&!M.includePrerelease&&W.semver.prerelease.length?W.semver:!1;he&&he.prerelease.length===1&&K.operator==="<"&&he.prerelease[0]===0&&(he=!1);for(let R of c){if(te=te||R.operator===">"||R.operator===">=",Pe=Pe||R.operator==="<"||R.operator==="<=",W){if(De&&R.semver.prerelease&&R.semver.prerelease.length&&R.semver.major===De.major&&R.semver.minor===De.minor&&R.semver.patch===De.patch&&(De=!1),R.operator===">"||R.operator===">="){if(Ce=d(W,R,M),Ce===R&&Ce!==W)return!1}else if(W.operator===">="&&!P(W.semver,String(R),M))return!1}if(K){if(he&&R.semver.prerelease&&R.semver.prerelease.length&&R.semver.major===he.major&&R.semver.minor===he.minor&&R.semver.patch===he.patch&&(he=!1),R.operator==="<"||R.operator==="<="){if(me=E(K,R,M),me===R&&me!==K)return!1}else if(K.operator==="<="&&!P(K.semver,String(R),M))return!1}if(!R.operator&&(K||W)&&ce!==0)return!1}return!(W&&Pe&&!K&&ce!==0||K&&te&&!W&&ce!==0||De||he)},d=(I,c,M)=>{if(!I)return c;let q=y(I.semver,c.semver,M);return q>0?I:q<0||c.operator===">"&&I.operator===">="?c:I},E=(I,c,M)=>{if(!I)return c;let q=y(I.semver,c.semver,M);return q<0?I:q>0||c.operator==="<"&&I.operator==="<="?c:I};_.exports=m}}),pT=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/index.js"(a,_){ke();var v=Bc(),h=h1(),D=Bn(),P=B9(),y=qc(),m=CW(),C=AW(),d=PW(),E=DW(),I=kW(),c=IW(),M=NW(),q=OW(),W=_a(),K=MW(),ce=LW(),Ce=oT(),me=RW(),Pe=jW(),te=v1(),he=_T(),De=sT(),R=q9(),pe=cT(),Ie=lT(),Je=U9(),Xe=JW(),ee=b1(),je=ca(),nt=T1(),Ze=UW(),st=zW(),tt=WW(),ct=VW(),ne=HW(),ge=uT(),Fe=GW(),at=$W(),Pt=KW(),qt=XW(),Zr=YW();_.exports={parse:y,valid:m,clean:C,inc:d,diff:E,major:I,minor:c,patch:M,prerelease:q,compare:W,rcompare:K,compareLoose:ce,compareBuild:Ce,sort:me,rsort:Pe,gt:te,lt:he,eq:De,neq:R,gte:pe,lte:Ie,cmp:Je,coerce:Xe,Comparator:ee,Range:je,satisfies:nt,toComparators:Ze,maxSatisfying:st,minSatisfying:tt,minVersion:ct,validRange:ne,outside:ge,gtr:Fe,ltr:at,intersects:Pt,simplifyRange:qt,subset:Zr,SemVer:D,re:v.re,src:v.src,tokens:v.t,SEMVER_SPEC_VERSION:h.SEMVER_SPEC_VERSION,compareIdentifiers:P.compareIdentifiers,rcompareIdentifiers:P.rcompareIdentifiers}}}),S1=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/version-check.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(C,d,E,I){I===void 0&&(I=E);var c=Object.getOwnPropertyDescriptor(d,E);(!c||("get"in c?!d.__esModule:c.writable||c.configurable))&&(c={enumerable:!0,get:function(){return d[E]}}),Object.defineProperty(C,I,c)}:function(C,d,E,I){I===void 0&&(I=E),C[I]=d[E]}),v=a&&a.__setModuleDefault||(Object.create?function(C,d){Object.defineProperty(C,"default",{enumerable:!0,value:d})}:function(C,d){C.default=d}),h=a&&a.__importStar||function(C){if(C&&C.__esModule)return C;var d={};if(C!=null)for(var E in C)E!=="default"&&Object.prototype.hasOwnProperty.call(C,E)&&_(d,C,E);return v(d,C),d};Object.defineProperty(a,"__esModule",{value:!0}),a.typescriptVersionIsAtLeast=void 0;var D=h(pT()),P=h(vr()),y=["3.7","3.8","3.9","4.0","4.1","4.2","4.3","4.4","4.5","4.6","4.7","4.8","4.9","5.0"],m={};a.typescriptVersionIsAtLeast=m;for(let C of y)m[C]=!0}}),fT=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/getModifiers.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(d,E,I,c){c===void 0&&(c=I);var M=Object.getOwnPropertyDescriptor(E,I);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[I]}}),Object.defineProperty(d,c,M)}:function(d,E,I,c){c===void 0&&(c=I),d[c]=E[I]}),v=a&&a.__setModuleDefault||(Object.create?function(d,E){Object.defineProperty(d,"default",{enumerable:!0,value:E})}:function(d,E){d.default=E}),h=a&&a.__importStar||function(d){if(d&&d.__esModule)return d;var E={};if(d!=null)for(var I in d)I!=="default"&&Object.prototype.hasOwnProperty.call(d,I)&&_(E,d,I);return v(E,d),E};Object.defineProperty(a,"__esModule",{value:!0}),a.getDecorators=a.getModifiers=void 0;var D=h(vr()),P=S1(),y=P.typescriptVersionIsAtLeast["4.8"];function m(d){var E;if(d!=null){if(y){if(D.canHaveModifiers(d)){let I=D.getModifiers(d);return I?Array.from(I):void 0}return}return(E=d.modifiers)===null||E===void 0?void 0:E.filter(I=>!D.isDecorator(I))}}a.getModifiers=m;function C(d){var E;if(d!=null){if(y){if(D.canHaveDecorators(d)){let I=D.getDecorators(d);return I?Array.from(I):void 0}return}return(E=d.decorators)===null||E===void 0?void 0:E.filter(D.isDecorator)}}a.getDecorators=C}}),QW=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.xhtmlEntities=void 0,a.xhtmlEntities={quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"}}}),z9=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types/dist/generated/ast-spec.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.AST_TOKEN_TYPES=a.AST_NODE_TYPES=void 0;var _;(function(h){h.AccessorProperty="AccessorProperty",h.ArrayExpression="ArrayExpression",h.ArrayPattern="ArrayPattern",h.ArrowFunctionExpression="ArrowFunctionExpression",h.AssignmentExpression="AssignmentExpression",h.AssignmentPattern="AssignmentPattern",h.AwaitExpression="AwaitExpression",h.BinaryExpression="BinaryExpression",h.BlockStatement="BlockStatement",h.BreakStatement="BreakStatement",h.CallExpression="CallExpression",h.CatchClause="CatchClause",h.ChainExpression="ChainExpression",h.ClassBody="ClassBody",h.ClassDeclaration="ClassDeclaration",h.ClassExpression="ClassExpression",h.ConditionalExpression="ConditionalExpression",h.ContinueStatement="ContinueStatement",h.DebuggerStatement="DebuggerStatement",h.Decorator="Decorator",h.DoWhileStatement="DoWhileStatement",h.EmptyStatement="EmptyStatement",h.ExportAllDeclaration="ExportAllDeclaration",h.ExportDefaultDeclaration="ExportDefaultDeclaration",h.ExportNamedDeclaration="ExportNamedDeclaration",h.ExportSpecifier="ExportSpecifier",h.ExpressionStatement="ExpressionStatement",h.ForInStatement="ForInStatement",h.ForOfStatement="ForOfStatement",h.ForStatement="ForStatement",h.FunctionDeclaration="FunctionDeclaration",h.FunctionExpression="FunctionExpression",h.Identifier="Identifier",h.IfStatement="IfStatement",h.ImportAttribute="ImportAttribute",h.ImportDeclaration="ImportDeclaration",h.ImportDefaultSpecifier="ImportDefaultSpecifier",h.ImportExpression="ImportExpression",h.ImportNamespaceSpecifier="ImportNamespaceSpecifier",h.ImportSpecifier="ImportSpecifier",h.JSXAttribute="JSXAttribute",h.JSXClosingElement="JSXClosingElement",h.JSXClosingFragment="JSXClosingFragment",h.JSXElement="JSXElement",h.JSXEmptyExpression="JSXEmptyExpression",h.JSXExpressionContainer="JSXExpressionContainer",h.JSXFragment="JSXFragment",h.JSXIdentifier="JSXIdentifier",h.JSXMemberExpression="JSXMemberExpression",h.JSXNamespacedName="JSXNamespacedName",h.JSXOpeningElement="JSXOpeningElement",h.JSXOpeningFragment="JSXOpeningFragment",h.JSXSpreadAttribute="JSXSpreadAttribute",h.JSXSpreadChild="JSXSpreadChild",h.JSXText="JSXText",h.LabeledStatement="LabeledStatement",h.Literal="Literal",h.LogicalExpression="LogicalExpression",h.MemberExpression="MemberExpression",h.MetaProperty="MetaProperty",h.MethodDefinition="MethodDefinition",h.NewExpression="NewExpression",h.ObjectExpression="ObjectExpression",h.ObjectPattern="ObjectPattern",h.PrivateIdentifier="PrivateIdentifier",h.Program="Program",h.Property="Property",h.PropertyDefinition="PropertyDefinition",h.RestElement="RestElement",h.ReturnStatement="ReturnStatement",h.SequenceExpression="SequenceExpression",h.SpreadElement="SpreadElement",h.StaticBlock="StaticBlock",h.Super="Super",h.SwitchCase="SwitchCase",h.SwitchStatement="SwitchStatement",h.TaggedTemplateExpression="TaggedTemplateExpression",h.TemplateElement="TemplateElement",h.TemplateLiteral="TemplateLiteral",h.ThisExpression="ThisExpression",h.ThrowStatement="ThrowStatement",h.TryStatement="TryStatement",h.UnaryExpression="UnaryExpression",h.UpdateExpression="UpdateExpression",h.VariableDeclaration="VariableDeclaration",h.VariableDeclarator="VariableDeclarator",h.WhileStatement="WhileStatement",h.WithStatement="WithStatement",h.YieldExpression="YieldExpression",h.TSAbstractAccessorProperty="TSAbstractAccessorProperty",h.TSAbstractKeyword="TSAbstractKeyword",h.TSAbstractMethodDefinition="TSAbstractMethodDefinition",h.TSAbstractPropertyDefinition="TSAbstractPropertyDefinition",h.TSAnyKeyword="TSAnyKeyword",h.TSArrayType="TSArrayType",h.TSAsExpression="TSAsExpression",h.TSAsyncKeyword="TSAsyncKeyword",h.TSBigIntKeyword="TSBigIntKeyword",h.TSBooleanKeyword="TSBooleanKeyword",h.TSCallSignatureDeclaration="TSCallSignatureDeclaration",h.TSClassImplements="TSClassImplements",h.TSConditionalType="TSConditionalType",h.TSConstructorType="TSConstructorType",h.TSConstructSignatureDeclaration="TSConstructSignatureDeclaration",h.TSDeclareFunction="TSDeclareFunction",h.TSDeclareKeyword="TSDeclareKeyword",h.TSEmptyBodyFunctionExpression="TSEmptyBodyFunctionExpression",h.TSEnumDeclaration="TSEnumDeclaration",h.TSEnumMember="TSEnumMember",h.TSExportAssignment="TSExportAssignment",h.TSExportKeyword="TSExportKeyword",h.TSExternalModuleReference="TSExternalModuleReference",h.TSFunctionType="TSFunctionType",h.TSInstantiationExpression="TSInstantiationExpression",h.TSImportEqualsDeclaration="TSImportEqualsDeclaration",h.TSImportType="TSImportType",h.TSIndexedAccessType="TSIndexedAccessType",h.TSIndexSignature="TSIndexSignature",h.TSInferType="TSInferType",h.TSInterfaceBody="TSInterfaceBody",h.TSInterfaceDeclaration="TSInterfaceDeclaration",h.TSInterfaceHeritage="TSInterfaceHeritage",h.TSIntersectionType="TSIntersectionType",h.TSIntrinsicKeyword="TSIntrinsicKeyword",h.TSLiteralType="TSLiteralType",h.TSMappedType="TSMappedType",h.TSMethodSignature="TSMethodSignature",h.TSModuleBlock="TSModuleBlock",h.TSModuleDeclaration="TSModuleDeclaration",h.TSNamedTupleMember="TSNamedTupleMember",h.TSNamespaceExportDeclaration="TSNamespaceExportDeclaration",h.TSNeverKeyword="TSNeverKeyword",h.TSNonNullExpression="TSNonNullExpression",h.TSNullKeyword="TSNullKeyword",h.TSNumberKeyword="TSNumberKeyword",h.TSObjectKeyword="TSObjectKeyword",h.TSOptionalType="TSOptionalType",h.TSParameterProperty="TSParameterProperty",h.TSPrivateKeyword="TSPrivateKeyword",h.TSPropertySignature="TSPropertySignature",h.TSProtectedKeyword="TSProtectedKeyword",h.TSPublicKeyword="TSPublicKeyword",h.TSQualifiedName="TSQualifiedName",h.TSReadonlyKeyword="TSReadonlyKeyword",h.TSRestType="TSRestType",h.TSSatisfiesExpression="TSSatisfiesExpression",h.TSStaticKeyword="TSStaticKeyword",h.TSStringKeyword="TSStringKeyword",h.TSSymbolKeyword="TSSymbolKeyword",h.TSTemplateLiteralType="TSTemplateLiteralType",h.TSThisType="TSThisType",h.TSTupleType="TSTupleType",h.TSTypeAliasDeclaration="TSTypeAliasDeclaration",h.TSTypeAnnotation="TSTypeAnnotation",h.TSTypeAssertion="TSTypeAssertion",h.TSTypeLiteral="TSTypeLiteral",h.TSTypeOperator="TSTypeOperator",h.TSTypeParameter="TSTypeParameter",h.TSTypeParameterDeclaration="TSTypeParameterDeclaration",h.TSTypeParameterInstantiation="TSTypeParameterInstantiation",h.TSTypePredicate="TSTypePredicate",h.TSTypeQuery="TSTypeQuery",h.TSTypeReference="TSTypeReference",h.TSUndefinedKeyword="TSUndefinedKeyword",h.TSUnionType="TSUnionType",h.TSUnknownKeyword="TSUnknownKeyword",h.TSVoidKeyword="TSVoidKeyword"})(_=a.AST_NODE_TYPES||(a.AST_NODE_TYPES={}));var v;(function(h){h.Boolean="Boolean",h.Identifier="Identifier",h.JSXIdentifier="JSXIdentifier",h.JSXText="JSXText",h.Keyword="Keyword",h.Null="Null",h.Numeric="Numeric",h.Punctuator="Punctuator",h.RegularExpression="RegularExpression",h.String="String",h.Template="Template",h.Block="Block",h.Line="Line"})(v=a.AST_TOKEN_TYPES||(a.AST_TOKEN_TYPES={}))}}),ZW=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types/dist/lib.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0})}}),eV=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types/dist/parser-options.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0})}}),tV=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types/dist/ts-estree.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(D,P,y,m){m===void 0&&(m=y);var C=Object.getOwnPropertyDescriptor(P,y);(!C||("get"in C?!P.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return P[y]}}),Object.defineProperty(D,m,C)}:function(D,P,y,m){m===void 0&&(m=y),D[m]=P[y]}),v=a&&a.__setModuleDefault||(Object.create?function(D,P){Object.defineProperty(D,"default",{enumerable:!0,value:P})}:function(D,P){D.default=P}),h=a&&a.__importStar||function(D){if(D&&D.__esModule)return D;var P={};if(D!=null)for(var y in D)y!=="default"&&Object.prototype.hasOwnProperty.call(D,y)&&_(P,D,y);return v(P,D),P};Object.defineProperty(a,"__esModule",{value:!0}),a.TSESTree=void 0,a.TSESTree=h(z9())}}),rV=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types/dist/index.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(D,P,y,m){m===void 0&&(m=y);var C=Object.getOwnPropertyDescriptor(P,y);(!C||("get"in C?!P.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return P[y]}}),Object.defineProperty(D,m,C)}:function(D,P,y,m){m===void 0&&(m=y),D[m]=P[y]}),v=a&&a.__exportStar||function(D,P){for(var y in D)y!=="default"&&!Object.prototype.hasOwnProperty.call(P,y)&&_(P,D,y)};Object.defineProperty(a,"__esModule",{value:!0}),a.AST_TOKEN_TYPES=a.AST_NODE_TYPES=void 0;var h=z9();Object.defineProperty(a,"AST_NODE_TYPES",{enumerable:!0,get:function(){return h.AST_NODE_TYPES}}),Object.defineProperty(a,"AST_TOKEN_TYPES",{enumerable:!0,get:function(){return h.AST_TOKEN_TYPES}}),v(ZW(),a),v(eV(),a),v(tV(),a)}}),nV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0})}}),iV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0})}}),x1=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(D,P,y,m){m===void 0&&(m=y);var C=Object.getOwnPropertyDescriptor(P,y);(!C||("get"in C?!P.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return P[y]}}),Object.defineProperty(D,m,C)}:function(D,P,y,m){m===void 0&&(m=y),D[m]=P[y]}),v=a&&a.__exportStar||function(D,P){for(var y in D)y!=="default"&&!Object.prototype.hasOwnProperty.call(P,y)&&_(P,D,y)};Object.defineProperty(a,"__esModule",{value:!0}),a.TSESTree=a.AST_TOKEN_TYPES=a.AST_NODE_TYPES=void 0;var h=rV();Object.defineProperty(a,"AST_NODE_TYPES",{enumerable:!0,get:function(){return h.AST_NODE_TYPES}}),Object.defineProperty(a,"AST_TOKEN_TYPES",{enumerable:!0,get:function(){return h.AST_TOKEN_TYPES}}),Object.defineProperty(a,"TSESTree",{enumerable:!0,get:function(){return h.TSESTree}}),v(nV(),a),v(iV(),a)}}),E1=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(be,Ke,Et,Ft){Ft===void 0&&(Ft=Et);var or=Object.getOwnPropertyDescriptor(Ke,Et);(!or||("get"in or?!Ke.__esModule:or.writable||or.configurable))&&(or={enumerable:!0,get:function(){return Ke[Et]}}),Object.defineProperty(be,Ft,or)}:function(be,Ke,Et,Ft){Ft===void 0&&(Ft=Et),be[Ft]=Ke[Et]}),v=a&&a.__setModuleDefault||(Object.create?function(be,Ke){Object.defineProperty(be,"default",{enumerable:!0,value:Ke})}:function(be,Ke){be.default=Ke}),h=a&&a.__importStar||function(be){if(be&&be.__esModule)return be;var Ke={};if(be!=null)for(var Et in be)Et!=="default"&&Object.prototype.hasOwnProperty.call(be,Et)&&_(Ke,be,Et);return v(Ke,be),Ke};Object.defineProperty(a,"__esModule",{value:!0}),a.isThisInTypeQuery=a.isThisIdentifier=a.identifierIsThisKeyword=a.firstDefined=a.nodeHasTokens=a.createError=a.TSError=a.convertTokens=a.convertToken=a.getTokenType=a.isChildUnwrappableOptionalChain=a.isChainExpression=a.isOptional=a.isComputedProperty=a.unescapeStringLiteralText=a.hasJSXAncestor=a.findFirstMatchingAncestor=a.findNextToken=a.getTSNodeAccessibility=a.getDeclarationKind=a.isJSXToken=a.isToken=a.getRange=a.canContainDirective=a.getLocFor=a.getLineAndCharacterFor=a.getBinaryExpressionType=a.isJSDocComment=a.isComment=a.isComma=a.getLastModifier=a.hasModifier=a.isESTreeClassMember=a.getTextForTokenKind=a.isLogicalOperator=a.isAssignmentOperator=void 0;var D=h(vr()),P=fT(),y=QW(),m=x1(),C=S1(),d=C.typescriptVersionIsAtLeast["5.0"],E=D.SyntaxKind,I=[E.BarBarToken,E.AmpersandAmpersandToken,E.QuestionQuestionToken];function c(be){return be.kind>=E.FirstAssignment&&be.kind<=E.LastAssignment}a.isAssignmentOperator=c;function M(be){return I.includes(be.kind)}a.isLogicalOperator=M;function q(be){return D.tokenToString(be)}a.getTextForTokenKind=q;function W(be){return be.kind!==E.SemicolonClassElement}a.isESTreeClassMember=W;function K(be,Ke){let Et=(0,P.getModifiers)(Ke);return(Et==null?void 0:Et.some(Ft=>Ft.kind===be))===!0}a.hasModifier=K;function ce(be){var Ke;let Et=(0,P.getModifiers)(be);return Et==null?null:(Ke=Et[Et.length-1])!==null&&Ke!==void 0?Ke:null}a.getLastModifier=ce;function Ce(be){return be.kind===E.CommaToken}a.isComma=Ce;function me(be){return be.kind===E.SingleLineCommentTrivia||be.kind===E.MultiLineCommentTrivia}a.isComment=me;function Pe(be){return be.kind===E.JSDocComment}a.isJSDocComment=Pe;function te(be){return c(be)?m.AST_NODE_TYPES.AssignmentExpression:M(be)?m.AST_NODE_TYPES.LogicalExpression:m.AST_NODE_TYPES.BinaryExpression}a.getBinaryExpressionType=te;function he(be,Ke){let Et=Ke.getLineAndCharacterOfPosition(be);return{line:Et.line+1,column:Et.character}}a.getLineAndCharacterFor=he;function De(be,Ke,Et){return{start:he(be,Et),end:he(Ke,Et)}}a.getLocFor=De;function R(be){if(be.kind===D.SyntaxKind.Block)switch(be.parent.kind){case D.SyntaxKind.Constructor:case D.SyntaxKind.GetAccessor:case D.SyntaxKind.SetAccessor:case D.SyntaxKind.ArrowFunction:case D.SyntaxKind.FunctionExpression:case D.SyntaxKind.FunctionDeclaration:case D.SyntaxKind.MethodDeclaration:return!0;default:return!1}return!0}a.canContainDirective=R;function pe(be,Ke){return[be.getStart(Ke),be.getEnd()]}a.getRange=pe;function Ie(be){return be.kind>=E.FirstToken&&be.kind<=E.LastToken}a.isToken=Ie;function Je(be){return be.kind>=E.JsxElement&&be.kind<=E.JsxAttribute}a.isJSXToken=Je;function Xe(be){return be.flags&D.NodeFlags.Let?"let":be.flags&D.NodeFlags.Const?"const":"var"}a.getDeclarationKind=Xe;function ee(be){let Ke=(0,P.getModifiers)(be);if(Ke==null)return null;for(let Et of Ke)switch(Et.kind){case E.PublicKeyword:return"public";case E.ProtectedKeyword:return"protected";case E.PrivateKeyword:return"private";default:break}return null}a.getTSNodeAccessibility=ee;function je(be,Ke,Et){return Ft(Ke);function Ft(or){return D.isToken(or)&&or.pos===be.end?or:la(or.getChildren(Et),Wr=>(Wr.pos<=be.pos&&Wr.end>be.end||Wr.pos===be.end)&&Ri(Wr,Et)?Ft(Wr):void 0)}}a.findNextToken=je;function nt(be,Ke){for(;be;){if(Ke(be))return be;be=be.parent}}a.findFirstMatchingAncestor=nt;function Ze(be){return!!nt(be,Je)}a.hasJSXAncestor=Ze;function st(be){return be.replace(/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g,Ke=>{let Et=Ke.slice(1,-1);if(Et[0]==="#"){let Ft=Et[1]==="x"?parseInt(Et.slice(2),16):parseInt(Et.slice(1),10);return Ft>1114111?Ke:String.fromCodePoint(Ft)}return y.xhtmlEntities[Et]||Ke})}a.unescapeStringLiteralText=st;function tt(be){return be.kind===E.ComputedPropertyName}a.isComputedProperty=tt;function ct(be){return be.questionToken?be.questionToken.kind===E.QuestionToken:!1}a.isOptional=ct;function ne(be){return be.type===m.AST_NODE_TYPES.ChainExpression}a.isChainExpression=ne;function ge(be,Ke){return ne(Ke)&&be.expression.kind!==D.SyntaxKind.ParenthesizedExpression}a.isChildUnwrappableOptionalChain=ge;function Fe(be){let Ke;if(d&&be.kind===E.Identifier?Ke=D.identifierToKeywordKind(be):"originalKeywordKind"in be&&(Ke=be.originalKeywordKind),Ke)return Ke===E.NullKeyword?m.AST_TOKEN_TYPES.Null:Ke>=E.FirstFutureReservedWord&&Ke<=E.LastKeyword?m.AST_TOKEN_TYPES.Identifier:m.AST_TOKEN_TYPES.Keyword;if(be.kind>=E.FirstKeyword&&be.kind<=E.LastFutureReservedWord)return be.kind===E.FalseKeyword||be.kind===E.TrueKeyword?m.AST_TOKEN_TYPES.Boolean:m.AST_TOKEN_TYPES.Keyword;if(be.kind>=E.FirstPunctuation&&be.kind<=E.LastPunctuation)return m.AST_TOKEN_TYPES.Punctuator;if(be.kind>=E.NoSubstitutionTemplateLiteral&&be.kind<=E.TemplateTail)return m.AST_TOKEN_TYPES.Template;switch(be.kind){case E.NumericLiteral:return m.AST_TOKEN_TYPES.Numeric;case E.JsxText:return m.AST_TOKEN_TYPES.JSXText;case E.StringLiteral:return be.parent&&(be.parent.kind===E.JsxAttribute||be.parent.kind===E.JsxElement)?m.AST_TOKEN_TYPES.JSXText:m.AST_TOKEN_TYPES.String;case E.RegularExpressionLiteral:return m.AST_TOKEN_TYPES.RegularExpression;case E.Identifier:case E.ConstructorKeyword:case E.GetKeyword:case E.SetKeyword:default:}return be.parent&&be.kind===E.Identifier&&(Je(be.parent)||be.parent.kind===E.PropertyAccessExpression&&Ze(be))?m.AST_TOKEN_TYPES.JSXIdentifier:m.AST_TOKEN_TYPES.Identifier}a.getTokenType=Fe;function at(be,Ke){let Et=be.kind===E.JsxText?be.getFullStart():be.getStart(Ke),Ft=be.getEnd(),or=Ke.text.slice(Et,Ft),Wr=Fe(be);return Wr===m.AST_TOKEN_TYPES.RegularExpression?{type:Wr,value:or,range:[Et,Ft],loc:De(Et,Ft,Ke),regex:{pattern:or.slice(1,or.lastIndexOf("/")),flags:or.slice(or.lastIndexOf("/")+1)}}:{type:Wr,value:or,range:[Et,Ft],loc:De(Et,Ft,Ke)}}a.convertToken=at;function Pt(be){let Ke=[];function Et(Ft){if(!(me(Ft)||Pe(Ft)))if(Ie(Ft)&&Ft.kind!==E.EndOfFileToken){let or=at(Ft,be);or&&Ke.push(or)}else Ft.getChildren(be).forEach(Et)}return Et(be),Ke}a.convertTokens=Pt;var qt=class extends Error{constructor(be,Ke,Et,Ft,or){super(be),this.fileName=Ke,this.index=Et,this.lineNumber=Ft,this.column=or,Object.defineProperty(this,"name",{value:new.target.name,enumerable:!1,configurable:!0})}};a.TSError=qt;function Zr(be,Ke,Et){let Ft=be.getLineAndCharacterOfPosition(Ke);return new qt(Et,be.fileName,Ke,Ft.line+1,Ft.character)}a.createError=Zr;function Ri(be,Ke){return be.kind===E.EndOfFileToken?!!be.jsDoc:be.getWidth(Ke)!==0}a.nodeHasTokens=Ri;function la(be,Ke){if(be!==void 0)for(let Et=0;Et{let K=this.convertChild(W);if(q)if(K!=null&&K.expression&&D.isExpressionStatement(W)&&D.isStringLiteral(W.expression)){let ce=K.expression.raw;return K.directive=ce.slice(1,-1),K}else q=!1;return K}).filter(W=>W)}convertTypeArgumentsToTypeParameters(c,M){let q=(0,y.findNextToken)(c,this.ast,this.ast);return this.createNode(M,{type:m.AST_NODE_TYPES.TSTypeParameterInstantiation,range:[c.pos-1,q.end],params:c.map(W=>this.convertType(W))})}convertTSTypeParametersToTypeParametersDeclaration(c){let M=(0,y.findNextToken)(c,this.ast,this.ast);return{type:m.AST_NODE_TYPES.TSTypeParameterDeclaration,range:[c.pos-1,M.end],loc:(0,y.getLocFor)(c.pos-1,M.end,this.ast),params:c.map(q=>this.convertType(q))}}convertParameters(c){return c!=null&&c.length?c.map(M=>{let q=this.convertChild(M),W=(0,P.getDecorators)(M);return W!=null&&W.length&&(q.decorators=W.map(K=>this.convertChild(K))),q}):[]}convertChainExpression(c,M){let{child:q,isOptional:W}=(()=>c.type===m.AST_NODE_TYPES.MemberExpression?{child:c.object,isOptional:c.optional}:c.type===m.AST_NODE_TYPES.CallExpression?{child:c.callee,isOptional:c.optional}:{child:c.expression,isOptional:!1})(),K=(0,y.isChildUnwrappableOptionalChain)(M,q);if(!K&&!W)return c;if(K&&(0,y.isChainExpression)(q)){let ce=q.expression;c.type===m.AST_NODE_TYPES.MemberExpression?c.object=ce:c.type===m.AST_NODE_TYPES.CallExpression?c.callee=ce:c.expression=ce}return this.createNode(M,{type:m.AST_NODE_TYPES.ChainExpression,expression:c})}deeplyCopy(c){if(c.kind===D.SyntaxKind.JSDocFunctionType)throw(0,y.createError)(this.ast,c.pos,"JSDoc types can only be used inside documentation comments.");let M=`TS${d[c.kind]}`;if(this.options.errorOnUnknownASTType&&!m.AST_NODE_TYPES[M])throw new Error(`Unknown AST_NODE_TYPE: "${M}"`);let q=this.createNode(c,{type:M});"type"in c&&(q.typeAnnotation=c.type&&"kind"in c.type&&D.isTypeNode(c.type)?this.convertTypeAnnotation(c.type,c):null),"typeArguments"in c&&(q.typeParameters=c.typeArguments&&"pos"in c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):null),"typeParameters"in c&&(q.typeParameters=c.typeParameters&&"pos"in c.typeParameters?this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters):null);let W=(0,P.getDecorators)(c);W!=null&&W.length&&(q.decorators=W.map(ce=>this.convertChild(ce)));let K=new Set(["_children","decorators","end","flags","illegalDecorators","heritageClauses","locals","localSymbol","jsDoc","kind","modifierFlagsCache","modifiers","nextContainer","parent","pos","symbol","transformFlags","type","typeArguments","typeParameters"]);return Object.entries(c).filter(ce=>{let[Ce]=ce;return!K.has(Ce)}).forEach(ce=>{let[Ce,me]=ce;Array.isArray(me)?q[Ce]=me.map(Pe=>this.convertChild(Pe)):me&&typeof me=="object"&&me.kind?q[Ce]=this.convertChild(me):q[Ce]=me}),q}convertJSXIdentifier(c){let M=this.createNode(c,{type:m.AST_NODE_TYPES.JSXIdentifier,name:c.getText()});return this.registerTSNodeInNodeMap(c,M),M}convertJSXNamespaceOrIdentifier(c){let M=c.getText(),q=M.indexOf(":");if(q>0){let W=(0,y.getRange)(c,this.ast),K=this.createNode(c,{type:m.AST_NODE_TYPES.JSXNamespacedName,namespace:this.createNode(c,{type:m.AST_NODE_TYPES.JSXIdentifier,name:M.slice(0,q),range:[W[0],W[0]+q]}),name:this.createNode(c,{type:m.AST_NODE_TYPES.JSXIdentifier,name:M.slice(q+1),range:[W[0]+q+1,W[1]]}),range:W});return this.registerTSNodeInNodeMap(c,K),K}return this.convertJSXIdentifier(c)}convertJSXTagName(c,M){let q;switch(c.kind){case d.PropertyAccessExpression:if(c.name.kind===d.PrivateIdentifier)throw new Error("Non-private identifier expected.");q=this.createNode(c,{type:m.AST_NODE_TYPES.JSXMemberExpression,object:this.convertJSXTagName(c.expression,M),property:this.convertJSXIdentifier(c.name)});break;case d.ThisKeyword:case d.Identifier:default:return this.convertJSXNamespaceOrIdentifier(c)}return this.registerTSNodeInNodeMap(c,q),q}convertMethodSignature(c){let M=this.createNode(c,{type:m.AST_NODE_TYPES.TSMethodSignature,computed:(0,y.isComputedProperty)(c.name),key:this.convertChild(c.name),params:this.convertParameters(c.parameters),kind:(()=>{switch(c.kind){case d.GetAccessor:return"get";case d.SetAccessor:return"set";case d.MethodSignature:return"method"}})()});(0,y.isOptional)(c)&&(M.optional=!0),c.type&&(M.returnType=this.convertTypeAnnotation(c.type,c)),(0,y.hasModifier)(d.ReadonlyKeyword,c)&&(M.readonly=!0),c.typeParameters&&(M.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters));let q=(0,y.getTSNodeAccessibility)(c);return q&&(M.accessibility=q),(0,y.hasModifier)(d.ExportKeyword,c)&&(M.export=!0),(0,y.hasModifier)(d.StaticKeyword,c)&&(M.static=!0),M}convertAssertClasue(c){return c===void 0?[]:c.elements.map(M=>this.convertChild(M))}applyModifiersToResult(c,M){if(!M)return;let q=[];for(let W of M)switch(W.kind){case d.ExportKeyword:case d.DefaultKeyword:break;case d.ConstKeyword:c.const=!0;break;case d.DeclareKeyword:c.declare=!0;break;default:q.push(this.convertChild(W));break}q.length>0&&(c.modifiers=q)}fixParentLocation(c,M){M[0]c.range[1]&&(c.range[1]=M[1],c.loc.end=(0,y.getLineAndCharacterFor)(c.range[1],this.ast))}assertModuleSpecifier(c,M){var q;if(!M&&c.moduleSpecifier==null)throw(0,y.createError)(this.ast,c.pos,"Module specifier must be a string literal.");if(c.moduleSpecifier&&((q=c.moduleSpecifier)===null||q===void 0?void 0:q.kind)!==d.StringLiteral)throw(0,y.createError)(this.ast,c.moduleSpecifier.pos,"Module specifier must be a string literal.")}convertNode(c,M){var q,W,K,ce,Ce,me,Pe,te,he,De;switch(c.kind){case d.SourceFile:return this.createNode(c,{type:m.AST_NODE_TYPES.Program,body:this.convertBodyExpressions(c.statements,c),sourceType:c.externalModuleIndicator?"module":"script",range:[c.getStart(this.ast),c.endOfFileToken.end]});case d.Block:return this.createNode(c,{type:m.AST_NODE_TYPES.BlockStatement,body:this.convertBodyExpressions(c.statements,c)});case d.Identifier:return(0,y.isThisInTypeQuery)(c)?this.createNode(c,{type:m.AST_NODE_TYPES.ThisExpression}):this.createNode(c,{type:m.AST_NODE_TYPES.Identifier,name:c.text});case d.PrivateIdentifier:return this.createNode(c,{type:m.AST_NODE_TYPES.PrivateIdentifier,name:c.text.slice(1)});case d.WithStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.WithStatement,object:this.convertChild(c.expression),body:this.convertChild(c.statement)});case d.ReturnStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ReturnStatement,argument:this.convertChild(c.expression)});case d.LabeledStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.LabeledStatement,label:this.convertChild(c.label),body:this.convertChild(c.statement)});case d.ContinueStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ContinueStatement,label:this.convertChild(c.label)});case d.BreakStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.BreakStatement,label:this.convertChild(c.label)});case d.IfStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.IfStatement,test:this.convertChild(c.expression),consequent:this.convertChild(c.thenStatement),alternate:this.convertChild(c.elseStatement)});case d.SwitchStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.SwitchStatement,discriminant:this.convertChild(c.expression),cases:c.caseBlock.clauses.map(R=>this.convertChild(R))});case d.CaseClause:case d.DefaultClause:return this.createNode(c,{type:m.AST_NODE_TYPES.SwitchCase,test:c.kind===d.CaseClause?this.convertChild(c.expression):null,consequent:c.statements.map(R=>this.convertChild(R))});case d.ThrowStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ThrowStatement,argument:this.convertChild(c.expression)});case d.TryStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.TryStatement,block:this.convertChild(c.tryBlock),handler:this.convertChild(c.catchClause),finalizer:this.convertChild(c.finallyBlock)});case d.CatchClause:return this.createNode(c,{type:m.AST_NODE_TYPES.CatchClause,param:c.variableDeclaration?this.convertBindingNameWithTypeAnnotation(c.variableDeclaration.name,c.variableDeclaration.type):null,body:this.convertChild(c.block)});case d.WhileStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.WhileStatement,test:this.convertChild(c.expression),body:this.convertChild(c.statement)});case d.DoStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.DoWhileStatement,test:this.convertChild(c.expression),body:this.convertChild(c.statement)});case d.ForStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ForStatement,init:this.convertChild(c.initializer),test:this.convertChild(c.condition),update:this.convertChild(c.incrementor),body:this.convertChild(c.statement)});case d.ForInStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ForInStatement,left:this.convertPattern(c.initializer),right:this.convertChild(c.expression),body:this.convertChild(c.statement)});case d.ForOfStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ForOfStatement,left:this.convertPattern(c.initializer),right:this.convertChild(c.expression),body:this.convertChild(c.statement),await:Boolean(c.awaitModifier&&c.awaitModifier.kind===d.AwaitKeyword)});case d.FunctionDeclaration:{let R=(0,y.hasModifier)(d.DeclareKeyword,c),pe=this.createNode(c,{type:R||!c.body?m.AST_NODE_TYPES.TSDeclareFunction:m.AST_NODE_TYPES.FunctionDeclaration,id:this.convertChild(c.name),generator:!!c.asteriskToken,expression:!1,async:(0,y.hasModifier)(d.AsyncKeyword,c),params:this.convertParameters(c.parameters),body:this.convertChild(c.body)||void 0});return c.type&&(pe.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(pe.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),R&&(pe.declare=!0),this.fixExports(c,pe)}case d.VariableDeclaration:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.VariableDeclarator,id:this.convertBindingNameWithTypeAnnotation(c.name,c.type,c),init:this.convertChild(c.initializer)});return c.exclamationToken&&(R.definite=!0),R}case d.VariableStatement:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.VariableDeclaration,declarations:c.declarationList.declarations.map(pe=>this.convertChild(pe)),kind:(0,y.getDeclarationKind)(c.declarationList)});return(0,y.hasModifier)(d.DeclareKeyword,c)&&(R.declare=!0),this.fixExports(c,R)}case d.VariableDeclarationList:return this.createNode(c,{type:m.AST_NODE_TYPES.VariableDeclaration,declarations:c.declarations.map(R=>this.convertChild(R)),kind:(0,y.getDeclarationKind)(c)});case d.ExpressionStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ExpressionStatement,expression:this.convertChild(c.expression)});case d.ThisKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES.ThisExpression});case d.ArrayLiteralExpression:return this.allowPattern?this.createNode(c,{type:m.AST_NODE_TYPES.ArrayPattern,elements:c.elements.map(R=>this.convertPattern(R))}):this.createNode(c,{type:m.AST_NODE_TYPES.ArrayExpression,elements:c.elements.map(R=>this.convertChild(R))});case d.ObjectLiteralExpression:return this.allowPattern?this.createNode(c,{type:m.AST_NODE_TYPES.ObjectPattern,properties:c.properties.map(R=>this.convertPattern(R))}):this.createNode(c,{type:m.AST_NODE_TYPES.ObjectExpression,properties:c.properties.map(R=>this.convertChild(R))});case d.PropertyAssignment:return this.createNode(c,{type:m.AST_NODE_TYPES.Property,key:this.convertChild(c.name),value:this.converter(c.initializer,c,this.inTypeMode,this.allowPattern),computed:(0,y.isComputedProperty)(c.name),method:!1,shorthand:!1,kind:"init"});case d.ShorthandPropertyAssignment:return c.objectAssignmentInitializer?this.createNode(c,{type:m.AST_NODE_TYPES.Property,key:this.convertChild(c.name),value:this.createNode(c,{type:m.AST_NODE_TYPES.AssignmentPattern,left:this.convertPattern(c.name),right:this.convertChild(c.objectAssignmentInitializer)}),computed:!1,method:!1,shorthand:!0,kind:"init"}):this.createNode(c,{type:m.AST_NODE_TYPES.Property,key:this.convertChild(c.name),value:this.convertChild(c.name),computed:!1,method:!1,shorthand:!0,kind:"init"});case d.ComputedPropertyName:return this.convertChild(c.expression);case d.PropertyDeclaration:{let R=(0,y.hasModifier)(d.AbstractKeyword,c),pe=(0,y.hasModifier)(d.AccessorKeyword,c),Ie=(()=>pe?R?m.AST_NODE_TYPES.TSAbstractAccessorProperty:m.AST_NODE_TYPES.AccessorProperty:R?m.AST_NODE_TYPES.TSAbstractPropertyDefinition:m.AST_NODE_TYPES.PropertyDefinition)(),Je=this.createNode(c,{type:Ie,key:this.convertChild(c.name),value:R?null:this.convertChild(c.initializer),computed:(0,y.isComputedProperty)(c.name),static:(0,y.hasModifier)(d.StaticKeyword,c),readonly:(0,y.hasModifier)(d.ReadonlyKeyword,c)||void 0,declare:(0,y.hasModifier)(d.DeclareKeyword,c),override:(0,y.hasModifier)(d.OverrideKeyword,c)});c.type&&(Je.typeAnnotation=this.convertTypeAnnotation(c.type,c));let Xe=(0,P.getDecorators)(c);Xe&&(Je.decorators=Xe.map(je=>this.convertChild(je)));let ee=(0,y.getTSNodeAccessibility)(c);return ee&&(Je.accessibility=ee),(c.name.kind===d.Identifier||c.name.kind===d.ComputedPropertyName||c.name.kind===d.PrivateIdentifier)&&c.questionToken&&(Je.optional=!0),c.exclamationToken&&(Je.definite=!0),Je.key.type===m.AST_NODE_TYPES.Literal&&c.questionToken&&(Je.optional=!0),Je}case d.GetAccessor:case d.SetAccessor:if(c.parent.kind===d.InterfaceDeclaration||c.parent.kind===d.TypeLiteral)return this.convertMethodSignature(c);case d.MethodDeclaration:{let R=this.createNode(c,{type:c.body?m.AST_NODE_TYPES.FunctionExpression:m.AST_NODE_TYPES.TSEmptyBodyFunctionExpression,id:null,generator:!!c.asteriskToken,expression:!1,async:(0,y.hasModifier)(d.AsyncKeyword,c),body:this.convertChild(c.body),range:[c.parameters.pos-1,c.end],params:[]});c.type&&(R.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(R.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters),this.fixParentLocation(R,R.typeParameters.range));let pe;if(M.kind===d.ObjectLiteralExpression)R.params=c.parameters.map(Ie=>this.convertChild(Ie)),pe=this.createNode(c,{type:m.AST_NODE_TYPES.Property,key:this.convertChild(c.name),value:R,computed:(0,y.isComputedProperty)(c.name),method:c.kind===d.MethodDeclaration,shorthand:!1,kind:"init"});else{R.params=this.convertParameters(c.parameters);let Ie=(0,y.hasModifier)(d.AbstractKeyword,c)?m.AST_NODE_TYPES.TSAbstractMethodDefinition:m.AST_NODE_TYPES.MethodDefinition;pe=this.createNode(c,{type:Ie,key:this.convertChild(c.name),value:R,computed:(0,y.isComputedProperty)(c.name),static:(0,y.hasModifier)(d.StaticKeyword,c),kind:"method",override:(0,y.hasModifier)(d.OverrideKeyword,c)});let Je=(0,P.getDecorators)(c);Je&&(pe.decorators=Je.map(ee=>this.convertChild(ee)));let Xe=(0,y.getTSNodeAccessibility)(c);Xe&&(pe.accessibility=Xe)}return c.questionToken&&(pe.optional=!0),c.kind===d.GetAccessor?pe.kind="get":c.kind===d.SetAccessor?pe.kind="set":!pe.static&&c.name.kind===d.StringLiteral&&c.name.text==="constructor"&&pe.type!==m.AST_NODE_TYPES.Property&&(pe.kind="constructor"),pe}case d.Constructor:{let R=(0,y.getLastModifier)(c),pe=R&&(0,y.findNextToken)(R,c,this.ast)||c.getFirstToken(),Ie=this.createNode(c,{type:c.body?m.AST_NODE_TYPES.FunctionExpression:m.AST_NODE_TYPES.TSEmptyBodyFunctionExpression,id:null,params:this.convertParameters(c.parameters),generator:!1,expression:!1,async:!1,body:this.convertChild(c.body),range:[c.parameters.pos-1,c.end]});c.typeParameters&&(Ie.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters),this.fixParentLocation(Ie,Ie.typeParameters.range)),c.type&&(Ie.returnType=this.convertTypeAnnotation(c.type,c));let Je=this.createNode(c,{type:m.AST_NODE_TYPES.Identifier,name:"constructor",range:[pe.getStart(this.ast),pe.end]}),Xe=(0,y.hasModifier)(d.StaticKeyword,c),ee=this.createNode(c,{type:(0,y.hasModifier)(d.AbstractKeyword,c)?m.AST_NODE_TYPES.TSAbstractMethodDefinition:m.AST_NODE_TYPES.MethodDefinition,key:Je,value:Ie,computed:!1,static:Xe,kind:Xe?"method":"constructor",override:!1}),je=(0,y.getTSNodeAccessibility)(c);return je&&(ee.accessibility=je),ee}case d.FunctionExpression:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.FunctionExpression,id:this.convertChild(c.name),generator:!!c.asteriskToken,params:this.convertParameters(c.parameters),body:this.convertChild(c.body),async:(0,y.hasModifier)(d.AsyncKeyword,c),expression:!1});return c.type&&(R.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(R.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),R}case d.SuperKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES.Super});case d.ArrayBindingPattern:return this.createNode(c,{type:m.AST_NODE_TYPES.ArrayPattern,elements:c.elements.map(R=>this.convertPattern(R))});case d.OmittedExpression:return null;case d.ObjectBindingPattern:return this.createNode(c,{type:m.AST_NODE_TYPES.ObjectPattern,properties:c.elements.map(R=>this.convertPattern(R))});case d.BindingElement:if(M.kind===d.ArrayBindingPattern){let R=this.convertChild(c.name,M);return c.initializer?this.createNode(c,{type:m.AST_NODE_TYPES.AssignmentPattern,left:R,right:this.convertChild(c.initializer)}):c.dotDotDotToken?this.createNode(c,{type:m.AST_NODE_TYPES.RestElement,argument:R}):R}else{let R;return c.dotDotDotToken?R=this.createNode(c,{type:m.AST_NODE_TYPES.RestElement,argument:this.convertChild((q=c.propertyName)!==null&&q!==void 0?q:c.name)}):R=this.createNode(c,{type:m.AST_NODE_TYPES.Property,key:this.convertChild((W=c.propertyName)!==null&&W!==void 0?W:c.name),value:this.convertChild(c.name),computed:Boolean(c.propertyName&&c.propertyName.kind===d.ComputedPropertyName),method:!1,shorthand:!c.propertyName,kind:"init"}),c.initializer&&(R.value=this.createNode(c,{type:m.AST_NODE_TYPES.AssignmentPattern,left:this.convertChild(c.name),right:this.convertChild(c.initializer),range:[c.name.getStart(this.ast),c.initializer.end]})),R}case d.ArrowFunction:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.ArrowFunctionExpression,generator:!1,id:null,params:this.convertParameters(c.parameters),body:this.convertChild(c.body),async:(0,y.hasModifier)(d.AsyncKeyword,c),expression:c.body.kind!==d.Block});return c.type&&(R.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(R.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),R}case d.YieldExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.YieldExpression,delegate:!!c.asteriskToken,argument:this.convertChild(c.expression)});case d.AwaitExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.AwaitExpression,argument:this.convertChild(c.expression)});case d.NoSubstitutionTemplateLiteral:return this.createNode(c,{type:m.AST_NODE_TYPES.TemplateLiteral,quasis:[this.createNode(c,{type:m.AST_NODE_TYPES.TemplateElement,value:{raw:this.ast.text.slice(c.getStart(this.ast)+1,c.end-1),cooked:c.text},tail:!0})],expressions:[]});case d.TemplateExpression:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TemplateLiteral,quasis:[this.convertChild(c.head)],expressions:[]});return c.templateSpans.forEach(pe=>{R.expressions.push(this.convertChild(pe.expression)),R.quasis.push(this.convertChild(pe.literal))}),R}case d.TaggedTemplateExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.TaggedTemplateExpression,typeParameters:c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):void 0,tag:this.convertChild(c.tag),quasi:this.convertChild(c.template)});case d.TemplateHead:case d.TemplateMiddle:case d.TemplateTail:{let R=c.kind===d.TemplateTail;return this.createNode(c,{type:m.AST_NODE_TYPES.TemplateElement,value:{raw:this.ast.text.slice(c.getStart(this.ast)+1,c.end-(R?1:2)),cooked:c.text},tail:R})}case d.SpreadAssignment:case d.SpreadElement:return this.allowPattern?this.createNode(c,{type:m.AST_NODE_TYPES.RestElement,argument:this.convertPattern(c.expression)}):this.createNode(c,{type:m.AST_NODE_TYPES.SpreadElement,argument:this.convertChild(c.expression)});case d.Parameter:{let R,pe;return c.dotDotDotToken?R=pe=this.createNode(c,{type:m.AST_NODE_TYPES.RestElement,argument:this.convertChild(c.name)}):c.initializer?(R=this.convertChild(c.name),pe=this.createNode(c,{type:m.AST_NODE_TYPES.AssignmentPattern,left:R,right:this.convertChild(c.initializer)}),(0,P.getModifiers)(c)&&(pe.range[0]=R.range[0],pe.loc=(0,y.getLocFor)(pe.range[0],pe.range[1],this.ast))):R=pe=this.convertChild(c.name,M),c.type&&(R.typeAnnotation=this.convertTypeAnnotation(c.type,c),this.fixParentLocation(R,R.typeAnnotation.range)),c.questionToken&&(c.questionToken.end>R.range[1]&&(R.range[1]=c.questionToken.end,R.loc.end=(0,y.getLineAndCharacterFor)(R.range[1],this.ast)),R.optional=!0),(0,P.getModifiers)(c)?this.createNode(c,{type:m.AST_NODE_TYPES.TSParameterProperty,accessibility:(K=(0,y.getTSNodeAccessibility)(c))!==null&&K!==void 0?K:void 0,readonly:(0,y.hasModifier)(d.ReadonlyKeyword,c)||void 0,static:(0,y.hasModifier)(d.StaticKeyword,c)||void 0,export:(0,y.hasModifier)(d.ExportKeyword,c)||void 0,override:(0,y.hasModifier)(d.OverrideKeyword,c)||void 0,parameter:pe}):pe}case d.ClassDeclaration:case d.ClassExpression:{let R=(ce=c.heritageClauses)!==null&&ce!==void 0?ce:[],pe=c.kind===d.ClassDeclaration?m.AST_NODE_TYPES.ClassDeclaration:m.AST_NODE_TYPES.ClassExpression,Ie=R.find(nt=>nt.token===d.ExtendsKeyword),Je=R.find(nt=>nt.token===d.ImplementsKeyword),Xe=this.createNode(c,{type:pe,id:this.convertChild(c.name),body:this.createNode(c,{type:m.AST_NODE_TYPES.ClassBody,body:[],range:[c.members.pos-1,c.end]}),superClass:Ie!=null&&Ie.types[0]?this.convertChild(Ie.types[0].expression):null});if(Ie){if(Ie.types.length>1)throw(0,y.createError)(this.ast,Ie.types[1].pos,"Classes can only extend a single class.");!((Ce=Ie.types[0])===null||Ce===void 0)&&Ce.typeArguments&&(Xe.superTypeParameters=this.convertTypeArgumentsToTypeParameters(Ie.types[0].typeArguments,Ie.types[0]))}c.typeParameters&&(Xe.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),Je&&(Xe.implements=Je.types.map(nt=>this.convertChild(nt))),(0,y.hasModifier)(d.AbstractKeyword,c)&&(Xe.abstract=!0),(0,y.hasModifier)(d.DeclareKeyword,c)&&(Xe.declare=!0);let ee=(0,P.getDecorators)(c);ee&&(Xe.decorators=ee.map(nt=>this.convertChild(nt)));let je=c.members.filter(y.isESTreeClassMember);return je.length&&(Xe.body.body=je.map(nt=>this.convertChild(nt))),this.fixExports(c,Xe)}case d.ModuleBlock:return this.createNode(c,{type:m.AST_NODE_TYPES.TSModuleBlock,body:this.convertBodyExpressions(c.statements,c)});case d.ImportDeclaration:{this.assertModuleSpecifier(c,!1);let R=this.createNode(c,{type:m.AST_NODE_TYPES.ImportDeclaration,source:this.convertChild(c.moduleSpecifier),specifiers:[],importKind:"value",assertions:this.convertAssertClasue(c.assertClause)});if(c.importClause&&(c.importClause.isTypeOnly&&(R.importKind="type"),c.importClause.name&&R.specifiers.push(this.convertChild(c.importClause)),c.importClause.namedBindings))switch(c.importClause.namedBindings.kind){case d.NamespaceImport:R.specifiers.push(this.convertChild(c.importClause.namedBindings));break;case d.NamedImports:R.specifiers=R.specifiers.concat(c.importClause.namedBindings.elements.map(pe=>this.convertChild(pe)));break}return R}case d.NamespaceImport:return this.createNode(c,{type:m.AST_NODE_TYPES.ImportNamespaceSpecifier,local:this.convertChild(c.name)});case d.ImportSpecifier:return this.createNode(c,{type:m.AST_NODE_TYPES.ImportSpecifier,local:this.convertChild(c.name),imported:this.convertChild((me=c.propertyName)!==null&&me!==void 0?me:c.name),importKind:c.isTypeOnly?"type":"value"});case d.ImportClause:{let R=this.convertChild(c.name);return this.createNode(c,{type:m.AST_NODE_TYPES.ImportDefaultSpecifier,local:R,range:R.range})}case d.ExportDeclaration:return((Pe=c.exportClause)===null||Pe===void 0?void 0:Pe.kind)===d.NamedExports?(this.assertModuleSpecifier(c,!0),this.createNode(c,{type:m.AST_NODE_TYPES.ExportNamedDeclaration,source:this.convertChild(c.moduleSpecifier),specifiers:c.exportClause.elements.map(R=>this.convertChild(R)),exportKind:c.isTypeOnly?"type":"value",declaration:null,assertions:this.convertAssertClasue(c.assertClause)})):(this.assertModuleSpecifier(c,!1),this.createNode(c,{type:m.AST_NODE_TYPES.ExportAllDeclaration,source:this.convertChild(c.moduleSpecifier),exportKind:c.isTypeOnly?"type":"value",exported:c.exportClause&&c.exportClause.kind===d.NamespaceExport?this.convertChild(c.exportClause.name):null,assertions:this.convertAssertClasue(c.assertClause)}));case d.ExportSpecifier:return this.createNode(c,{type:m.AST_NODE_TYPES.ExportSpecifier,local:this.convertChild((te=c.propertyName)!==null&&te!==void 0?te:c.name),exported:this.convertChild(c.name),exportKind:c.isTypeOnly?"type":"value"});case d.ExportAssignment:return c.isExportEquals?this.createNode(c,{type:m.AST_NODE_TYPES.TSExportAssignment,expression:this.convertChild(c.expression)}):this.createNode(c,{type:m.AST_NODE_TYPES.ExportDefaultDeclaration,declaration:this.convertChild(c.expression),exportKind:"value"});case d.PrefixUnaryExpression:case d.PostfixUnaryExpression:{let R=(0,y.getTextForTokenKind)(c.operator);return R==="++"||R==="--"?this.createNode(c,{type:m.AST_NODE_TYPES.UpdateExpression,operator:R,prefix:c.kind===d.PrefixUnaryExpression,argument:this.convertChild(c.operand)}):this.createNode(c,{type:m.AST_NODE_TYPES.UnaryExpression,operator:R,prefix:c.kind===d.PrefixUnaryExpression,argument:this.convertChild(c.operand)})}case d.DeleteExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.UnaryExpression,operator:"delete",prefix:!0,argument:this.convertChild(c.expression)});case d.VoidExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.UnaryExpression,operator:"void",prefix:!0,argument:this.convertChild(c.expression)});case d.TypeOfExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.UnaryExpression,operator:"typeof",prefix:!0,argument:this.convertChild(c.expression)});case d.TypeOperator:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeOperator,operator:(0,y.getTextForTokenKind)(c.operator),typeAnnotation:this.convertChild(c.type)});case d.BinaryExpression:if((0,y.isComma)(c.operatorToken)){let R=this.createNode(c,{type:m.AST_NODE_TYPES.SequenceExpression,expressions:[]}),pe=this.convertChild(c.left);return pe.type===m.AST_NODE_TYPES.SequenceExpression&&c.left.kind!==d.ParenthesizedExpression?R.expressions=R.expressions.concat(pe.expressions):R.expressions.push(pe),R.expressions.push(this.convertChild(c.right)),R}else{let R=(0,y.getBinaryExpressionType)(c.operatorToken);return this.allowPattern&&R===m.AST_NODE_TYPES.AssignmentExpression?this.createNode(c,{type:m.AST_NODE_TYPES.AssignmentPattern,left:this.convertPattern(c.left,c),right:this.convertChild(c.right)}):this.createNode(c,{type:R,operator:(0,y.getTextForTokenKind)(c.operatorToken.kind),left:this.converter(c.left,c,this.inTypeMode,R===m.AST_NODE_TYPES.AssignmentExpression),right:this.convertChild(c.right)})}case d.PropertyAccessExpression:{let R=this.convertChild(c.expression),pe=this.convertChild(c.name),Ie=!1,Je=this.createNode(c,{type:m.AST_NODE_TYPES.MemberExpression,object:R,property:pe,computed:Ie,optional:c.questionDotToken!==void 0});return this.convertChainExpression(Je,c)}case d.ElementAccessExpression:{let R=this.convertChild(c.expression),pe=this.convertChild(c.argumentExpression),Ie=!0,Je=this.createNode(c,{type:m.AST_NODE_TYPES.MemberExpression,object:R,property:pe,computed:Ie,optional:c.questionDotToken!==void 0});return this.convertChainExpression(Je,c)}case d.CallExpression:{if(c.expression.kind===d.ImportKeyword){if(c.arguments.length!==1&&c.arguments.length!==2)throw(0,y.createError)(this.ast,c.arguments.pos,"Dynamic import requires exactly one or two arguments.");return this.createNode(c,{type:m.AST_NODE_TYPES.ImportExpression,source:this.convertChild(c.arguments[0]),attributes:c.arguments[1]?this.convertChild(c.arguments[1]):null})}let R=this.convertChild(c.expression),pe=c.arguments.map(Je=>this.convertChild(Je)),Ie=this.createNode(c,{type:m.AST_NODE_TYPES.CallExpression,callee:R,arguments:pe,optional:c.questionDotToken!==void 0});return c.typeArguments&&(Ie.typeParameters=this.convertTypeArgumentsToTypeParameters(c.typeArguments,c)),this.convertChainExpression(Ie,c)}case d.NewExpression:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.NewExpression,callee:this.convertChild(c.expression),arguments:c.arguments?c.arguments.map(pe=>this.convertChild(pe)):[]});return c.typeArguments&&(R.typeParameters=this.convertTypeArgumentsToTypeParameters(c.typeArguments,c)),R}case d.ConditionalExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.ConditionalExpression,test:this.convertChild(c.condition),consequent:this.convertChild(c.whenTrue),alternate:this.convertChild(c.whenFalse)});case d.MetaProperty:return this.createNode(c,{type:m.AST_NODE_TYPES.MetaProperty,meta:this.createNode(c.getFirstToken(),{type:m.AST_NODE_TYPES.Identifier,name:(0,y.getTextForTokenKind)(c.keywordToken)}),property:this.convertChild(c.name)});case d.Decorator:return this.createNode(c,{type:m.AST_NODE_TYPES.Decorator,expression:this.convertChild(c.expression)});case d.StringLiteral:return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:M.kind===d.JsxAttribute?(0,y.unescapeStringLiteralText)(c.text):c.text,raw:c.getText()});case d.NumericLiteral:return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:Number(c.text),raw:c.getText()});case d.BigIntLiteral:{let R=(0,y.getRange)(c,this.ast),pe=this.ast.text.slice(R[0],R[1]),Ie=pe.slice(0,-1).replace(/_/g,""),Je=typeof BigInt<"u"?BigInt(Ie):null;return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,raw:pe,value:Je,bigint:Je==null?Ie:String(Je),range:R})}case d.RegularExpressionLiteral:{let R=c.text.slice(1,c.text.lastIndexOf("/")),pe=c.text.slice(c.text.lastIndexOf("/")+1),Ie=null;try{Ie=new RegExp(R,pe)}catch{Ie=null}return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:Ie,raw:c.text,regex:{pattern:R,flags:pe}})}case d.TrueKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:!0,raw:"true"});case d.FalseKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:!1,raw:"false"});case d.NullKeyword:return!C.typescriptVersionIsAtLeast["4.0"]&&this.inTypeMode?this.createNode(c,{type:m.AST_NODE_TYPES.TSNullKeyword}):this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:null,raw:"null"});case d.EmptyStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.EmptyStatement});case d.DebuggerStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.DebuggerStatement});case d.JsxElement:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXElement,openingElement:this.convertChild(c.openingElement),closingElement:this.convertChild(c.closingElement),children:c.children.map(R=>this.convertChild(R))});case d.JsxFragment:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXFragment,openingFragment:this.convertChild(c.openingFragment),closingFragment:this.convertChild(c.closingFragment),children:c.children.map(R=>this.convertChild(R))});case d.JsxSelfClosingElement:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXElement,openingElement:this.createNode(c,{type:m.AST_NODE_TYPES.JSXOpeningElement,typeParameters:c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):void 0,selfClosing:!0,name:this.convertJSXTagName(c.tagName,c),attributes:c.attributes.properties.map(R=>this.convertChild(R)),range:(0,y.getRange)(c,this.ast)}),closingElement:null,children:[]});case d.JsxOpeningElement:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXOpeningElement,typeParameters:c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):void 0,selfClosing:!1,name:this.convertJSXTagName(c.tagName,c),attributes:c.attributes.properties.map(R=>this.convertChild(R))});case d.JsxClosingElement:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXClosingElement,name:this.convertJSXTagName(c.tagName,c)});case d.JsxOpeningFragment:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXOpeningFragment});case d.JsxClosingFragment:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXClosingFragment});case d.JsxExpression:{let R=c.expression?this.convertChild(c.expression):this.createNode(c,{type:m.AST_NODE_TYPES.JSXEmptyExpression,range:[c.getStart(this.ast)+1,c.getEnd()-1]});return c.dotDotDotToken?this.createNode(c,{type:m.AST_NODE_TYPES.JSXSpreadChild,expression:R}):this.createNode(c,{type:m.AST_NODE_TYPES.JSXExpressionContainer,expression:R})}case d.JsxAttribute:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXAttribute,name:this.convertJSXNamespaceOrIdentifier(c.name),value:this.convertChild(c.initializer)});case d.JsxText:{let R=c.getFullStart(),pe=c.getEnd(),Ie=this.ast.text.slice(R,pe);return this.createNode(c,{type:m.AST_NODE_TYPES.JSXText,value:(0,y.unescapeStringLiteralText)(Ie),raw:Ie,range:[R,pe]})}case d.JsxSpreadAttribute:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXSpreadAttribute,argument:this.convertChild(c.expression)});case d.QualifiedName:return this.createNode(c,{type:m.AST_NODE_TYPES.TSQualifiedName,left:this.convertChild(c.left),right:this.convertChild(c.right)});case d.TypeReference:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeReference,typeName:this.convertType(c.typeName),typeParameters:c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):void 0});case d.TypeParameter:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeParameter,name:this.convertType(c.name),constraint:c.constraint?this.convertType(c.constraint):void 0,default:c.default?this.convertType(c.default):void 0,in:(0,y.hasModifier)(d.InKeyword,c),out:(0,y.hasModifier)(d.OutKeyword,c),const:(0,y.hasModifier)(d.ConstKeyword,c)});case d.ThisType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSThisType});case d.AnyKeyword:case d.BigIntKeyword:case d.BooleanKeyword:case d.NeverKeyword:case d.NumberKeyword:case d.ObjectKeyword:case d.StringKeyword:case d.SymbolKeyword:case d.UnknownKeyword:case d.VoidKeyword:case d.UndefinedKeyword:case d.IntrinsicKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES[`TS${d[c.kind]}`]});case d.NonNullExpression:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSNonNullExpression,expression:this.convertChild(c.expression)});return this.convertChainExpression(R,c)}case d.TypeLiteral:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeLiteral,members:c.members.map(R=>this.convertChild(R))});case d.ArrayType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSArrayType,elementType:this.convertType(c.elementType)});case d.IndexedAccessType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSIndexedAccessType,objectType:this.convertType(c.objectType),indexType:this.convertType(c.indexType)});case d.ConditionalType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSConditionalType,checkType:this.convertType(c.checkType),extendsType:this.convertType(c.extendsType),trueType:this.convertType(c.trueType),falseType:this.convertType(c.falseType)});case d.TypeQuery:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeQuery,exprName:this.convertType(c.exprName),typeParameters:c.typeArguments&&this.convertTypeArgumentsToTypeParameters(c.typeArguments,c)});case d.MappedType:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSMappedType,typeParameter:this.convertType(c.typeParameter),nameType:(he=this.convertType(c.nameType))!==null&&he!==void 0?he:null});return c.readonlyToken&&(c.readonlyToken.kind===d.ReadonlyKeyword?R.readonly=!0:R.readonly=(0,y.getTextForTokenKind)(c.readonlyToken.kind)),c.questionToken&&(c.questionToken.kind===d.QuestionToken?R.optional=!0:R.optional=(0,y.getTextForTokenKind)(c.questionToken.kind)),c.type&&(R.typeAnnotation=this.convertType(c.type)),R}case d.ParenthesizedExpression:return this.convertChild(c.expression,M);case d.TypeAliasDeclaration:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeAliasDeclaration,id:this.convertChild(c.name),typeAnnotation:this.convertType(c.type)});return(0,y.hasModifier)(d.DeclareKeyword,c)&&(R.declare=!0),c.typeParameters&&(R.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),this.fixExports(c,R)}case d.MethodSignature:return this.convertMethodSignature(c);case d.PropertySignature:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSPropertySignature,optional:(0,y.isOptional)(c)||void 0,computed:(0,y.isComputedProperty)(c.name),key:this.convertChild(c.name),typeAnnotation:c.type?this.convertTypeAnnotation(c.type,c):void 0,initializer:this.convertChild(c.initializer)||void 0,readonly:(0,y.hasModifier)(d.ReadonlyKeyword,c)||void 0,static:(0,y.hasModifier)(d.StaticKeyword,c)||void 0,export:(0,y.hasModifier)(d.ExportKeyword,c)||void 0}),pe=(0,y.getTSNodeAccessibility)(c);return pe&&(R.accessibility=pe),R}case d.IndexSignature:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSIndexSignature,parameters:c.parameters.map(Ie=>this.convertChild(Ie))});c.type&&(R.typeAnnotation=this.convertTypeAnnotation(c.type,c)),(0,y.hasModifier)(d.ReadonlyKeyword,c)&&(R.readonly=!0);let pe=(0,y.getTSNodeAccessibility)(c);return pe&&(R.accessibility=pe),(0,y.hasModifier)(d.ExportKeyword,c)&&(R.export=!0),(0,y.hasModifier)(d.StaticKeyword,c)&&(R.static=!0),R}case d.ConstructorType:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSConstructorType,params:this.convertParameters(c.parameters),abstract:(0,y.hasModifier)(d.AbstractKeyword,c)});return c.type&&(R.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(R.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),R}case d.FunctionType:case d.ConstructSignature:case d.CallSignature:{let R=c.kind===d.ConstructSignature?m.AST_NODE_TYPES.TSConstructSignatureDeclaration:c.kind===d.CallSignature?m.AST_NODE_TYPES.TSCallSignatureDeclaration:m.AST_NODE_TYPES.TSFunctionType,pe=this.createNode(c,{type:R,params:this.convertParameters(c.parameters)});return c.type&&(pe.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(pe.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),pe}case d.ExpressionWithTypeArguments:{let R=M.kind,pe=R===d.InterfaceDeclaration?m.AST_NODE_TYPES.TSInterfaceHeritage:R===d.HeritageClause?m.AST_NODE_TYPES.TSClassImplements:m.AST_NODE_TYPES.TSInstantiationExpression,Ie=this.createNode(c,{type:pe,expression:this.convertChild(c.expression)});return c.typeArguments&&(Ie.typeParameters=this.convertTypeArgumentsToTypeParameters(c.typeArguments,c)),Ie}case d.InterfaceDeclaration:{let R=(De=c.heritageClauses)!==null&&De!==void 0?De:[],pe=this.createNode(c,{type:m.AST_NODE_TYPES.TSInterfaceDeclaration,body:this.createNode(c,{type:m.AST_NODE_TYPES.TSInterfaceBody,body:c.members.map(Ie=>this.convertChild(Ie)),range:[c.members.pos-1,c.end]}),id:this.convertChild(c.name)});if(c.typeParameters&&(pe.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),R.length>0){let Ie=[],Je=[];for(let Xe of R)if(Xe.token===d.ExtendsKeyword)for(let ee of Xe.types)Ie.push(this.convertChild(ee,c));else for(let ee of Xe.types)Je.push(this.convertChild(ee,c));Ie.length&&(pe.extends=Ie),Je.length&&(pe.implements=Je)}return(0,y.hasModifier)(d.AbstractKeyword,c)&&(pe.abstract=!0),(0,y.hasModifier)(d.DeclareKeyword,c)&&(pe.declare=!0),this.fixExports(c,pe)}case d.TypePredicate:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSTypePredicate,asserts:c.assertsModifier!==void 0,parameterName:this.convertChild(c.parameterName),typeAnnotation:null});return c.type&&(R.typeAnnotation=this.convertTypeAnnotation(c.type,c),R.typeAnnotation.loc=R.typeAnnotation.typeAnnotation.loc,R.typeAnnotation.range=R.typeAnnotation.typeAnnotation.range),R}case d.ImportType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSImportType,isTypeOf:!!c.isTypeOf,parameter:this.convertChild(c.argument),qualifier:this.convertChild(c.qualifier),typeParameters:c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):null});case d.EnumDeclaration:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSEnumDeclaration,id:this.convertChild(c.name),members:c.members.map(pe=>this.convertChild(pe))});return this.applyModifiersToResult(R,(0,P.getModifiers)(c)),this.fixExports(c,R)}case d.EnumMember:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSEnumMember,id:this.convertChild(c.name)});return c.initializer&&(R.initializer=this.convertChild(c.initializer)),c.name.kind===D.SyntaxKind.ComputedPropertyName&&(R.computed=!0),R}case d.ModuleDeclaration:{let R=this.createNode(c,Object.assign({type:m.AST_NODE_TYPES.TSModuleDeclaration},(()=>{let pe=this.convertChild(c.name),Ie=this.convertChild(c.body);if(c.flags&D.NodeFlags.GlobalAugmentation){if(Ie==null||Ie.type===m.AST_NODE_TYPES.TSModuleDeclaration)throw new Error("Expected a valid module body");if(pe.type!==m.AST_NODE_TYPES.Identifier)throw new Error("global module augmentation must have an Identifier id");return{kind:"global",id:pe,body:Ie,global:!0}}else if(c.flags&D.NodeFlags.Namespace){if(Ie==null)throw new Error("Expected a module body");if(pe.type!==m.AST_NODE_TYPES.Identifier)throw new Error("`namespace`s must have an Identifier id");return{kind:"namespace",id:pe,body:Ie}}else return Object.assign({kind:"module",id:pe},Ie!=null?{body:Ie}:{})})()));return this.applyModifiersToResult(R,(0,P.getModifiers)(c)),this.fixExports(c,R)}case d.ParenthesizedType:return this.convertType(c.type);case d.UnionType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSUnionType,types:c.types.map(R=>this.convertType(R))});case d.IntersectionType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSIntersectionType,types:c.types.map(R=>this.convertType(R))});case d.AsExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.TSAsExpression,expression:this.convertChild(c.expression),typeAnnotation:this.convertType(c.type)});case d.InferType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSInferType,typeParameter:this.convertType(c.typeParameter)});case d.LiteralType:return C.typescriptVersionIsAtLeast["4.0"]&&c.literal.kind===d.NullKeyword?this.createNode(c.literal,{type:m.AST_NODE_TYPES.TSNullKeyword}):this.createNode(c,{type:m.AST_NODE_TYPES.TSLiteralType,literal:this.convertType(c.literal)});case d.TypeAssertionExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeAssertion,typeAnnotation:this.convertType(c.type),expression:this.convertChild(c.expression)});case d.ImportEqualsDeclaration:return this.createNode(c,{type:m.AST_NODE_TYPES.TSImportEqualsDeclaration,id:this.convertChild(c.name),moduleReference:this.convertChild(c.moduleReference),importKind:c.isTypeOnly?"type":"value",isExport:(0,y.hasModifier)(d.ExportKeyword,c)});case d.ExternalModuleReference:return this.createNode(c,{type:m.AST_NODE_TYPES.TSExternalModuleReference,expression:this.convertChild(c.expression)});case d.NamespaceExportDeclaration:return this.createNode(c,{type:m.AST_NODE_TYPES.TSNamespaceExportDeclaration,id:this.convertChild(c.name)});case d.AbstractKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES.TSAbstractKeyword});case d.TupleType:{let R="elementTypes"in c?c.elementTypes.map(pe=>this.convertType(pe)):c.elements.map(pe=>this.convertType(pe));return this.createNode(c,{type:m.AST_NODE_TYPES.TSTupleType,elementTypes:R})}case d.NamedTupleMember:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSNamedTupleMember,elementType:this.convertType(c.type,c),label:this.convertChild(c.name,c),optional:c.questionToken!=null});return c.dotDotDotToken?(R.range[0]=R.label.range[0],R.loc.start=R.label.loc.start,this.createNode(c,{type:m.AST_NODE_TYPES.TSRestType,typeAnnotation:R})):R}case d.OptionalType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSOptionalType,typeAnnotation:this.convertType(c.type)});case d.RestType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSRestType,typeAnnotation:this.convertType(c.type)});case d.TemplateLiteralType:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSTemplateLiteralType,quasis:[this.convertChild(c.head)],types:[]});return c.templateSpans.forEach(pe=>{R.types.push(this.convertChild(pe.type)),R.quasis.push(this.convertChild(pe.literal))}),R}case d.ClassStaticBlockDeclaration:return this.createNode(c,{type:m.AST_NODE_TYPES.StaticBlock,body:this.convertBodyExpressions(c.body.statements,c)});case d.AssertEntry:return this.createNode(c,{type:m.AST_NODE_TYPES.ImportAttribute,key:this.convertChild(c.name),value:this.convertChild(c.value)});case d.SatisfiesExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.TSSatisfiesExpression,expression:this.convertChild(c.expression),typeAnnotation:this.convertChild(c.type)});default:return this.deeplyCopy(c)}}};a.Converter=I}}),$a={};m1($a,{__assign:()=>f1,__asyncDelegator:()=>gV,__asyncGenerator:()=>hV,__asyncValues:()=>yV,__await:()=>gp,__awaiter:()=>lV,__classPrivateFieldGet:()=>SV,__classPrivateFieldSet:()=>xV,__createBinding:()=>pV,__decorate:()=>oV,__exportStar:()=>fV,__extends:()=>aV,__generator:()=>uV,__importDefault:()=>TV,__importStar:()=>bV,__makeTemplateObject:()=>vV,__metadata:()=>cV,__param:()=>_V,__read:()=>V9,__rest:()=>sV,__spread:()=>dV,__spreadArrays:()=>mV,__values:()=>tT});function aV(a,_){p1(a,_);function v(){this.constructor=a}a.prototype=_===null?Object.create(_):(v.prototype=_.prototype,new v)}function sV(a,_){var v={};for(var h in a)Object.prototype.hasOwnProperty.call(a,h)&&_.indexOf(h)<0&&(v[h]=a[h]);if(a!=null&&typeof Object.getOwnPropertySymbols=="function")for(var D=0,h=Object.getOwnPropertySymbols(a);D=0;m--)(y=a[m])&&(P=(D<3?y(P):D>3?y(_,v,P):y(_,v))||P);return D>3&&P&&Object.defineProperty(_,v,P),P}function _V(a,_){return function(v,h){_(v,h,a)}}function cV(a,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(a,_)}function lV(a,_,v,h){function D(P){return P instanceof v?P:new v(function(y){y(P)})}return new(v||(v=Promise))(function(P,y){function m(E){try{d(h.next(E))}catch(I){y(I)}}function C(E){try{d(h.throw(E))}catch(I){y(I)}}function d(E){E.done?P(E.value):D(E.value).then(m,C)}d((h=h.apply(a,_||[])).next())})}function uV(a,_){var v={label:0,sent:function(){if(P[0]&1)throw P[1];return P[1]},trys:[],ops:[]},h,D,P,y;return y={next:m(0),throw:m(1),return:m(2)},typeof Symbol=="function"&&(y[Symbol.iterator]=function(){return this}),y;function m(d){return function(E){return C([d,E])}}function C(d){if(h)throw new TypeError("Generator is already executing.");for(;v;)try{if(h=1,D&&(P=d[0]&2?D.return:d[0]?D.throw||((P=D.return)&&P.call(D),0):D.next)&&!(P=P.call(D,d[1])).done)return P;switch(D=0,P&&(d=[d[0]&2,P.value]),d[0]){case 0:case 1:P=d;break;case 4:return v.label++,{value:d[1],done:!1};case 5:v.label++,D=d[1],d=[0];continue;case 7:d=v.ops.pop(),v.trys.pop();continue;default:if(P=v.trys,!(P=P.length>0&&P[P.length-1])&&(d[0]===6||d[0]===2)){v=0;continue}if(d[0]===3&&(!P||d[1]>P[0]&&d[1]=a.length&&(a=void 0),{value:a&&a[h++],done:!a}}};throw new TypeError(_?"Object is not iterable.":"Symbol.iterator is not defined.")}function V9(a,_){var v=typeof Symbol=="function"&&a[Symbol.iterator];if(!v)return a;var h=v.call(a),D,P=[],y;try{for(;(_===void 0||_-- >0)&&!(D=h.next()).done;)P.push(D.value)}catch(m){y={error:m}}finally{try{D&&!D.done&&(v=h.return)&&v.call(h)}finally{if(y)throw y.error}}return P}function dV(){for(var a=[],_=0;_1||m(c,M)})})}function m(c,M){try{C(h[c](M))}catch(q){I(P[0][3],q)}}function C(c){c.value instanceof gp?Promise.resolve(c.value.v).then(d,E):I(P[0][2],c)}function d(c){m("next",c)}function E(c){m("throw",c)}function I(c,M){c(M),P.shift(),P.length&&m(P[0][0],P[0][1])}}function gV(a){var _,v;return _={},h("next"),h("throw",function(D){throw D}),h("return"),_[Symbol.iterator]=function(){return this},_;function h(D,P){_[D]=a[D]?function(y){return(v=!v)?{value:gp(a[D](y)),done:D==="return"}:P?P(y):y}:P}}function yV(a){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var _=a[Symbol.asyncIterator],v;return _?_.call(a):(a=typeof tT=="function"?tT(a):a[Symbol.iterator](),v={},h("next"),h("throw"),h("return"),v[Symbol.asyncIterator]=function(){return this},v);function h(P){v[P]=a[P]&&function(y){return new Promise(function(m,C){y=a[P](y),D(m,C,y.done,y.value)})}}function D(P,y,m,C){Promise.resolve(C).then(function(d){P({value:d,done:m})},y)}}function vV(a,_){return Object.defineProperty?Object.defineProperty(a,"raw",{value:_}):a.raw=_,a}function bV(a){if(a&&a.__esModule)return a;var _={};if(a!=null)for(var v in a)Object.hasOwnProperty.call(a,v)&&(_[v]=a[v]);return _.default=a,_}function TV(a){return a&&a.__esModule?a:{default:a}}function SV(a,_){if(!_.has(a))throw new TypeError("attempted to get private field on non-instance");return _.get(a)}function xV(a,_,v){if(!_.has(a))throw new TypeError("attempted to set private field on non-instance");return _.set(a,v),v}var p1,f1,Ds=yp({"node_modules/tslib/tslib.es6.js"(){ke(),p1=function(a,_){return p1=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(v,h){v.__proto__=h}||function(v,h){for(var D in h)h.hasOwnProperty(D)&&(v[D]=h[D])},p1(a,_)},f1=function(){return f1=Object.assign||function(_){for(var v,h=1,D=arguments.length;h=_.SyntaxKind.FirstLiteralToken&&J.kind<=_.SyntaxKind.LastLiteralToken}a.isLiteralExpression=Jr;function Qc(J){return J.kind===_.SyntaxKind.LiteralType}a.isLiteralTypeNode=Qc;function ho(J){return J.kind===_.SyntaxKind.MappedType}a.isMappedTypeNode=ho;function T_(J){return J.kind===_.SyntaxKind.MetaProperty}a.isMetaProperty=T_;function go(J){return J.kind===_.SyntaxKind.MethodDeclaration}a.isMethodDeclaration=go;function yo(J){return J.kind===_.SyntaxKind.MethodSignature}a.isMethodSignature=yo;function Za(J){return J.kind===_.SyntaxKind.ModuleBlock}a.isModuleBlock=Za;function vo(J){return J.kind===_.SyntaxKind.ModuleDeclaration}a.isModuleDeclaration=vo;function S_(J){return J.kind===_.SyntaxKind.NamedExports}a.isNamedExports=S_;function Zc(J){return J.kind===_.SyntaxKind.NamedImports}a.isNamedImports=Zc;function Os(J){return vo(J)&&J.name.kind===_.SyntaxKind.Identifier&&J.body!==void 0&&(J.body.kind===_.SyntaxKind.ModuleBlock||Os(J.body))}a.isNamespaceDeclaration=Os;function bo(J){return J.kind===_.SyntaxKind.NamespaceImport}a.isNamespaceImport=bo;function el(J){return J.kind===_.SyntaxKind.NamespaceExportDeclaration}a.isNamespaceExportDeclaration=el;function x_(J){return J.kind===_.SyntaxKind.NewExpression}a.isNewExpression=x_;function E_(J){return J.kind===_.SyntaxKind.NonNullExpression}a.isNonNullExpression=E_;function S(J){return J.kind===_.SyntaxKind.NoSubstitutionTemplateLiteral}a.isNoSubstitutionTemplateLiteral=S;function H(J){return J.kind===_.SyntaxKind.NullKeyword}a.isNullLiteral=H;function le(J){return J.kind===_.SyntaxKind.NumericLiteral}a.isNumericLiteral=le;function Be(J){switch(J.kind){case _.SyntaxKind.StringLiteral:case _.SyntaxKind.NumericLiteral:case _.SyntaxKind.NoSubstitutionTemplateLiteral:return!0;default:return!1}}a.isNumericOrStringLikeLiteral=Be;function rt(J){return J.kind===_.SyntaxKind.ObjectBindingPattern}a.isObjectBindingPattern=rt;function ut(J){return J.kind===_.SyntaxKind.ObjectLiteralExpression}a.isObjectLiteralExpression=ut;function Ht(J){return J.kind===_.SyntaxKind.OmittedExpression}a.isOmittedExpression=Ht;function Fr(J){return J.kind===_.SyntaxKind.Parameter}a.isParameterDeclaration=Fr;function Cr(J){return J.kind===_.SyntaxKind.ParenthesizedExpression}a.isParenthesizedExpression=Cr;function ir(J){return J.kind===_.SyntaxKind.ParenthesizedType}a.isParenthesizedTypeNode=ir;function en(J){return J.kind===_.SyntaxKind.PostfixUnaryExpression}a.isPostfixUnaryExpression=en;function Ji(J){return J.kind===_.SyntaxKind.PrefixUnaryExpression}a.isPrefixUnaryExpression=Ji;function gi(J){return J.kind===_.SyntaxKind.PropertyAccessExpression}a.isPropertyAccessExpression=gi;function ln(J){return J.kind===_.SyntaxKind.PropertyAssignment}a.isPropertyAssignment=ln;function ti(J){return J.kind===_.SyntaxKind.PropertyDeclaration}a.isPropertyDeclaration=ti;function yn(J){return J.kind===_.SyntaxKind.PropertySignature}a.isPropertySignature=yn;function w_(J){return J.kind===_.SyntaxKind.QualifiedName}a.isQualifiedName=w_;function vp(J){return J.kind===_.SyntaxKind.RegularExpressionLiteral}a.isRegularExpressionLiteral=vp;function C1(J){return J.kind===_.SyntaxKind.ReturnStatement}a.isReturnStatement=C1;function rr(J){return J.kind===_.SyntaxKind.SetAccessor}a.isSetAccessorDeclaration=rr;function bp(J){return J.kind===_.SyntaxKind.ShorthandPropertyAssignment}a.isShorthandPropertyAssignment=bp;function Tp(J){return J.parameters!==void 0}a.isSignatureDeclaration=Tp;function A1(J){return J.kind===_.SyntaxKind.SourceFile}a.isSourceFile=A1;function tl(J){return J.kind===_.SyntaxKind.SpreadAssignment}a.isSpreadAssignment=tl;function An(J){return J.kind===_.SyntaxKind.SpreadElement}a.isSpreadElement=An;function P1(J){return J.kind===_.SyntaxKind.StringLiteral}a.isStringLiteral=P1;function D1(J){return J.kind===_.SyntaxKind.SwitchStatement}a.isSwitchStatement=D1;function k1(J){return J.kind===_.SyntaxKind.SyntaxList}a.isSyntaxList=k1;function fa(J){return J.kind===_.SyntaxKind.TaggedTemplateExpression}a.isTaggedTemplateExpression=fa;function Ms(J){return J.kind===_.SyntaxKind.TemplateExpression}a.isTemplateExpression=Ms;function To(J){return J.kind===_.SyntaxKind.TemplateExpression||J.kind===_.SyntaxKind.NoSubstitutionTemplateLiteral}a.isTemplateLiteral=To;function Sp(J){return J.kind===_.SyntaxKind.StringLiteral||J.kind===_.SyntaxKind.NoSubstitutionTemplateLiteral}a.isTextualLiteral=Sp;function Vr(J){return J.kind===_.SyntaxKind.ThrowStatement}a.isThrowStatement=Vr;function I1(J){return J.kind===_.SyntaxKind.TryStatement}a.isTryStatement=I1;function N1(J){return J.kind===_.SyntaxKind.TupleType}a.isTupleTypeNode=N1;function C_(J){return J.kind===_.SyntaxKind.TypeAliasDeclaration}a.isTypeAliasDeclaration=C_;function O1(J){return J.kind===_.SyntaxKind.TypeAssertionExpression}a.isTypeAssertion=O1;function ri(J){return J.kind===_.SyntaxKind.TypeLiteral}a.isTypeLiteralNode=ri;function rl(J){return J.kind===_.SyntaxKind.TypeOfExpression}a.isTypeOfExpression=rl;function M1(J){return J.kind===_.SyntaxKind.TypeOperator}a.isTypeOperatorNode=M1;function xp(J){return J.kind===_.SyntaxKind.TypeParameter}a.isTypeParameterDeclaration=xp;function L1(J){return J.kind===_.SyntaxKind.TypePredicate}a.isTypePredicateNode=L1;function R1(J){return J.kind===_.SyntaxKind.TypeReference}a.isTypeReferenceNode=R1;function j1(J){return J.kind===_.SyntaxKind.TypeQuery}a.isTypeQueryNode=j1;function Ep(J){return J.kind===_.SyntaxKind.UnionType}a.isUnionTypeNode=Ep;function J1(J){return J.kind===_.SyntaxKind.VariableDeclaration}a.isVariableDeclaration=J1;function es(J){return J.kind===_.SyntaxKind.VariableStatement}a.isVariableStatement=es;function F1(J){return J.kind===_.SyntaxKind.VariableDeclarationList}a.isVariableDeclarationList=F1;function B1(J){return J.kind===_.SyntaxKind.VoidExpression}a.isVoidExpression=B1;function Fi(J){return J.kind===_.SyntaxKind.WhileStatement}a.isWhileStatement=Fi;function q1(J){return J.kind===_.SyntaxKind.WithStatement}a.isWithStatement=q1}}),wV=Ne({"node_modules/tsutils/typeguard/2.9/node.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.isImportTypeNode=void 0;var _=(Ds(),Li($a));_.__exportStar(EV(),a);var v=vr();function h(D){return D.kind===v.SyntaxKind.ImportType}a.isImportTypeNode=h}}),CV=Ne({"node_modules/tsutils/typeguard/3.0/node.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.isSyntheticExpression=a.isRestTypeNode=a.isOptionalTypeNode=void 0;var _=(Ds(),Li($a));_.__exportStar(wV(),a);var v=vr();function h(y){return y.kind===v.SyntaxKind.OptionalType}a.isOptionalTypeNode=h;function D(y){return y.kind===v.SyntaxKind.RestType}a.isRestTypeNode=D;function P(y){return y.kind===v.SyntaxKind.SyntheticExpression}a.isSyntheticExpression=P}}),H9=Ne({"node_modules/tsutils/typeguard/3.2/node.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.isBigIntLiteral=void 0;var _=(Ds(),Li($a));_.__exportStar(CV(),a);var v=vr();function h(D){return D.kind===v.SyntaxKind.BigIntLiteral}a.isBigIntLiteral=h}}),G9=Ne({"node_modules/tsutils/typeguard/node.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0});var _=(Ds(),Li($a));_.__exportStar(H9(),a)}}),AV=Ne({"node_modules/tsutils/typeguard/2.8/type.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.isUniqueESSymbolType=a.isUnionType=a.isUnionOrIntersectionType=a.isTypeVariable=a.isTypeReference=a.isTypeParameter=a.isSubstitutionType=a.isObjectType=a.isLiteralType=a.isIntersectionType=a.isInterfaceType=a.isInstantiableType=a.isIndexedAccessype=a.isIndexedAccessType=a.isGenericType=a.isEnumType=a.isConditionalType=void 0;var _=vr();function v(me){return(me.flags&_.TypeFlags.Conditional)!==0}a.isConditionalType=v;function h(me){return(me.flags&_.TypeFlags.Enum)!==0}a.isEnumType=h;function D(me){return(me.flags&_.TypeFlags.Object)!==0&&(me.objectFlags&_.ObjectFlags.ClassOrInterface)!==0&&(me.objectFlags&_.ObjectFlags.Reference)!==0}a.isGenericType=D;function P(me){return(me.flags&_.TypeFlags.IndexedAccess)!==0}a.isIndexedAccessType=P;function y(me){return(me.flags&_.TypeFlags.Index)!==0}a.isIndexedAccessype=y;function m(me){return(me.flags&_.TypeFlags.Instantiable)!==0}a.isInstantiableType=m;function C(me){return(me.flags&_.TypeFlags.Object)!==0&&(me.objectFlags&_.ObjectFlags.ClassOrInterface)!==0}a.isInterfaceType=C;function d(me){return(me.flags&_.TypeFlags.Intersection)!==0}a.isIntersectionType=d;function E(me){return(me.flags&(_.TypeFlags.StringOrNumberLiteral|_.TypeFlags.BigIntLiteral))!==0}a.isLiteralType=E;function I(me){return(me.flags&_.TypeFlags.Object)!==0}a.isObjectType=I;function c(me){return(me.flags&_.TypeFlags.Substitution)!==0}a.isSubstitutionType=c;function M(me){return(me.flags&_.TypeFlags.TypeParameter)!==0}a.isTypeParameter=M;function q(me){return(me.flags&_.TypeFlags.Object)!==0&&(me.objectFlags&_.ObjectFlags.Reference)!==0}a.isTypeReference=q;function W(me){return(me.flags&_.TypeFlags.TypeVariable)!==0}a.isTypeVariable=W;function K(me){return(me.flags&_.TypeFlags.UnionOrIntersection)!==0}a.isUnionOrIntersectionType=K;function ce(me){return(me.flags&_.TypeFlags.Union)!==0}a.isUnionType=ce;function Ce(me){return(me.flags&_.TypeFlags.UniqueESSymbol)!==0}a.isUniqueESSymbolType=Ce}}),b9=Ne({"node_modules/tsutils/typeguard/2.9/type.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0});var _=(Ds(),Li($a));_.__exportStar(AV(),a)}}),PV=Ne({"node_modules/tsutils/typeguard/3.0/type.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.isTupleTypeReference=a.isTupleType=void 0;var _=(Ds(),Li($a));_.__exportStar(b9(),a);var v=vr(),h=b9();function D(y){return(y.flags&v.TypeFlags.Object&&y.objectFlags&v.ObjectFlags.Tuple)!==0}a.isTupleType=D;function P(y){return h.isTypeReference(y)&&D(y.target)}a.isTupleTypeReference=P}}),$9=Ne({"node_modules/tsutils/typeguard/3.2/type.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0});var _=(Ds(),Li($a));_.__exportStar(PV(),a)}}),DV=Ne({"node_modules/tsutils/typeguard/3.2/index.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0});var _=(Ds(),Li($a));_.__exportStar(H9(),a),_.__exportStar($9(),a)}}),kV=Ne({"node_modules/tsutils/typeguard/type.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0});var _=(Ds(),Li($a));_.__exportStar($9(),a)}}),IV=Ne({"node_modules/tsutils/util/type.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.getBaseClassMemberOfClassElement=a.getIteratorYieldResultFromIteratorResult=a.getInstanceTypeOfClassLikeDeclaration=a.getConstructorTypeOfClassLikeDeclaration=a.getSymbolOfClassLikeDeclaration=a.getPropertyNameFromType=a.symbolHasReadonlyDeclaration=a.isPropertyReadonlyInType=a.getWellKnownSymbolPropertyOfType=a.getPropertyOfType=a.isBooleanLiteralType=a.isFalsyType=a.isThenableType=a.someTypePart=a.intersectionTypeParts=a.unionTypeParts=a.getCallSignaturesOfType=a.isTypeAssignableToString=a.isTypeAssignableToNumber=a.isOptionalChainingUndefinedMarkerType=a.removeOptionalChainingUndefinedMarkerType=a.removeOptionalityFromType=a.isEmptyObjectType=void 0;var _=vr(),v=kV(),h=K9(),D=G9();function P(ne){if(v.isObjectType(ne)&&ne.objectFlags&_.ObjectFlags.Anonymous&&ne.getProperties().length===0&&ne.getCallSignatures().length===0&&ne.getConstructSignatures().length===0&&ne.getStringIndexType()===void 0&&ne.getNumberIndexType()===void 0){let ge=ne.getBaseTypes();return ge===void 0||ge.every(P)}return!1}a.isEmptyObjectType=P;function y(ne,ge){if(!m(ge,_.TypeFlags.Undefined))return ge;let Fe=m(ge,_.TypeFlags.Null);return ge=ne.getNonNullableType(ge),Fe?ne.getNullableType(ge,_.TypeFlags.Null):ge}a.removeOptionalityFromType=y;function m(ne,ge){for(let Fe of q(ne))if(h.isTypeFlagSet(Fe,ge))return!0;return!1}function C(ne,ge){if(!v.isUnionType(ge))return d(ne,ge)?ge.getNonNullableType():ge;let Fe=0,at=!1;for(let Pt of ge.types)d(ne,Pt)?at=!0:Fe|=Pt.flags;return at?ne.getNullableType(ge.getNonNullableType(),Fe):ge}a.removeOptionalChainingUndefinedMarkerType=C;function d(ne,ge){return h.isTypeFlagSet(ge,_.TypeFlags.Undefined)&&ne.getNullableType(ge.getNonNullableType(),_.TypeFlags.Undefined)!==ge}a.isOptionalChainingUndefinedMarkerType=d;function E(ne,ge){return c(ne,ge,_.TypeFlags.NumberLike)}a.isTypeAssignableToNumber=E;function I(ne,ge){return c(ne,ge,_.TypeFlags.StringLike)}a.isTypeAssignableToString=I;function c(ne,ge,Fe){Fe|=_.TypeFlags.Any;let at;return function Pt(qt){if(v.isTypeParameter(qt)&&qt.symbol!==void 0&&qt.symbol.declarations!==void 0){if(at===void 0)at=new Set([qt]);else if(!at.has(qt))at.add(qt);else return!1;let Zr=qt.symbol.declarations[0];return Zr.constraint===void 0?!0:Pt(ne.getTypeFromTypeNode(Zr.constraint))}return v.isUnionType(qt)?qt.types.every(Pt):v.isIntersectionType(qt)?qt.types.some(Pt):h.isTypeFlagSet(qt,Fe)}(ge)}function M(ne){if(v.isUnionType(ne)){let ge=[];for(let Fe of ne.types)ge.push(...M(Fe));return ge}if(v.isIntersectionType(ne)){let ge;for(let Fe of ne.types){let at=M(Fe);if(at.length!==0){if(ge!==void 0)return[];ge=at}}return ge===void 0?[]:ge}return ne.getCallSignatures()}a.getCallSignaturesOfType=M;function q(ne){return v.isUnionType(ne)?ne.types:[ne]}a.unionTypeParts=q;function W(ne){return v.isIntersectionType(ne)?ne.types:[ne]}a.intersectionTypeParts=W;function K(ne,ge,Fe){return ge(ne)?ne.types.some(Fe):Fe(ne)}a.someTypePart=K;function ce(ne,ge){let Fe=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ne.getTypeAtLocation(ge);for(let at of q(ne.getApparentType(Fe))){let Pt=at.getProperty("then");if(Pt===void 0)continue;let qt=ne.getTypeOfSymbolAtLocation(Pt,ge);for(let Zr of q(qt))for(let Ri of Zr.getCallSignatures())if(Ri.parameters.length!==0&&Ce(ne,Ri.parameters[0],ge))return!0}return!1}a.isThenableType=ce;function Ce(ne,ge,Fe){let at=ne.getApparentType(ne.getTypeOfSymbolAtLocation(ge,Fe));if(ge.valueDeclaration.dotDotDotToken&&(at=at.getNumberIndexType(),at===void 0))return!1;for(let Pt of q(at))if(Pt.getCallSignatures().length!==0)return!0;return!1}function me(ne){return ne.flags&(_.TypeFlags.Undefined|_.TypeFlags.Null|_.TypeFlags.Void)?!0:v.isLiteralType(ne)?!ne.value:Pe(ne,!1)}a.isFalsyType=me;function Pe(ne,ge){return h.isTypeFlagSet(ne,_.TypeFlags.BooleanLiteral)&&ne.intrinsicName===(ge?"true":"false")}a.isBooleanLiteralType=Pe;function te(ne,ge){return ge.startsWith("__")?ne.getProperties().find(Fe=>Fe.escapedName===ge):ne.getProperty(ge)}a.getPropertyOfType=te;function he(ne,ge,Fe){let at="__@"+ge;for(let Pt of ne.getProperties()){if(!Pt.name.startsWith(at))continue;let qt=Fe.getApparentType(Fe.getTypeAtLocation(Pt.valueDeclaration.name.expression)).symbol;if(Pt.escapedName===De(Fe,qt,ge))return Pt}}a.getWellKnownSymbolPropertyOfType=he;function De(ne,ge,Fe){let at=ge&&ne.getTypeOfSymbolAtLocation(ge,ge.valueDeclaration).getProperty(Fe),Pt=at&&ne.getTypeOfSymbolAtLocation(at,at.valueDeclaration);return Pt&&v.isUniqueESSymbolType(Pt)?Pt.escapedName:"__@"+Fe}function R(ne,ge,Fe){let at=!1,Pt=!1;for(let qt of q(ne))if(te(qt,ge)===void 0){let Zr=(h.isNumericPropertyName(ge)?Fe.getIndexInfoOfType(qt,_.IndexKind.Number):void 0)||Fe.getIndexInfoOfType(qt,_.IndexKind.String);if(Zr!==void 0&&Zr.isReadonly){if(at)return!0;Pt=!0}}else{if(Pt||pe(qt,ge,Fe))return!0;at=!0}return!1}a.isPropertyReadonlyInType=R;function pe(ne,ge,Fe){return K(ne,v.isIntersectionType,at=>{let Pt=te(at,ge);if(Pt===void 0)return!1;if(Pt.flags&_.SymbolFlags.Transient){if(/^(?:[1-9]\d*|0)$/.test(ge)&&v.isTupleTypeReference(at))return at.target.readonly;switch(Ie(at,ge,Fe)){case!0:return!0;case!1:return!1;default:}}return h.isSymbolFlagSet(Pt,_.SymbolFlags.ValueModule)||Je(Pt,Fe)})}function Ie(ne,ge,Fe){if(!v.isObjectType(ne)||!h.isObjectFlagSet(ne,_.ObjectFlags.Mapped))return;let at=ne.symbol.declarations[0];return at.readonlyToken!==void 0&&!/^__@[^@]+$/.test(ge)?at.readonlyToken.kind!==_.SyntaxKind.MinusToken:R(ne.modifiersType,ge,Fe)}function Je(ne,ge){return(ne.flags&_.SymbolFlags.Accessor)===_.SymbolFlags.GetAccessor||ne.declarations!==void 0&&ne.declarations.some(Fe=>h.isModifierFlagSet(Fe,_.ModifierFlags.Readonly)||D.isVariableDeclaration(Fe)&&h.isNodeFlagSet(Fe.parent,_.NodeFlags.Const)||D.isCallExpression(Fe)&&h.isReadonlyAssignmentDeclaration(Fe,ge)||D.isEnumMember(Fe)||(D.isPropertyAssignment(Fe)||D.isShorthandPropertyAssignment(Fe))&&h.isInConstContext(Fe.parent))}a.symbolHasReadonlyDeclaration=Je;function Xe(ne){if(ne.flags&(_.TypeFlags.StringLiteral|_.TypeFlags.NumberLiteral)){let ge=String(ne.value);return{displayName:ge,symbolName:_.escapeLeadingUnderscores(ge)}}if(v.isUniqueESSymbolType(ne))return{displayName:`[${ne.symbol?`${ee(ne.symbol)?"Symbol.":""}${ne.symbol.name}`:ne.escapedName.replace(/^__@|@\d+$/g,"")}]`,symbolName:ne.escapedName}}a.getPropertyNameFromType=Xe;function ee(ne){return h.isSymbolFlagSet(ne,_.SymbolFlags.Property)&&ne.valueDeclaration!==void 0&&D.isInterfaceDeclaration(ne.valueDeclaration.parent)&&ne.valueDeclaration.parent.name.text==="SymbolConstructor"&&je(ne.valueDeclaration.parent)}function je(ne){return h.isNodeFlagSet(ne.parent,_.NodeFlags.GlobalAugmentation)||D.isSourceFile(ne.parent)&&!_.isExternalModule(ne.parent)}function nt(ne,ge){var Fe;return ge.getSymbolAtLocation((Fe=ne.name)!==null&&Fe!==void 0?Fe:h.getChildOfKind(ne,_.SyntaxKind.ClassKeyword))}a.getSymbolOfClassLikeDeclaration=nt;function Ze(ne,ge){return ne.kind===_.SyntaxKind.ClassExpression?ge.getTypeAtLocation(ne):ge.getTypeOfSymbolAtLocation(nt(ne,ge),ne)}a.getConstructorTypeOfClassLikeDeclaration=Ze;function st(ne,ge){return ne.kind===_.SyntaxKind.ClassDeclaration?ge.getTypeAtLocation(ne):ge.getDeclaredTypeOfSymbol(nt(ne,ge))}a.getInstanceTypeOfClassLikeDeclaration=st;function tt(ne,ge,Fe){return v.isUnionType(ne)&&ne.types.find(at=>{let Pt=at.getProperty("done");return Pt!==void 0&&Pe(y(Fe,Fe.getTypeOfSymbolAtLocation(Pt,ge)),!1)})||ne}a.getIteratorYieldResultFromIteratorResult=tt;function ct(ne,ge){if(!D.isClassLikeDeclaration(ne.parent))return;let Fe=h.getBaseOfClassLikeExpression(ne.parent);if(Fe===void 0)return;let at=h.getSingleLateBoundPropertyNameOfPropertyName(ne.name,ge);if(at===void 0)return;let Pt=ge.getTypeAtLocation(h.hasModifier(ne.modifiers,_.SyntaxKind.StaticKeyword)?Fe.expression:Fe);return te(Pt,at.symbolName)}a.getBaseClassMemberOfClassElement=ct}}),K9=Ne({"node_modules/tsutils/util/util.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.isValidIdentifier=a.getLineBreakStyle=a.getLineRanges=a.forEachComment=a.forEachTokenWithTrivia=a.forEachToken=a.isFunctionWithBody=a.hasOwnThisReference=a.isBlockScopeBoundary=a.isFunctionScopeBoundary=a.isTypeScopeBoundary=a.isScopeBoundary=a.ScopeBoundarySelector=a.ScopeBoundary=a.isInSingleStatementContext=a.isBlockScopedDeclarationStatement=a.isBlockScopedVariableDeclaration=a.isBlockScopedVariableDeclarationList=a.getVariableDeclarationKind=a.VariableDeclarationKind=a.forEachDeclaredVariable=a.forEachDestructuringIdentifier=a.getPropertyName=a.getWrappedNodeAtPosition=a.getAstNodeAtPosition=a.commentText=a.isPositionInComment=a.getCommentAtPosition=a.getTokenAtPosition=a.getNextToken=a.getPreviousToken=a.getNextStatement=a.getPreviousStatement=a.isModifierFlagSet=a.isObjectFlagSet=a.isSymbolFlagSet=a.isTypeFlagSet=a.isNodeFlagSet=a.hasAccessModifier=a.isParameterProperty=a.hasModifier=a.getModifier=a.isThisParameter=a.isKeywordKind=a.isJsDocKind=a.isTypeNodeKind=a.isAssignmentKind=a.isNodeKind=a.isTokenKind=a.getChildOfKind=void 0,a.getBaseOfClassLikeExpression=a.hasExhaustiveCaseClauses=a.formatPseudoBigInt=a.unwrapParentheses=a.getSingleLateBoundPropertyNameOfPropertyName=a.getLateBoundPropertyNamesOfPropertyName=a.getLateBoundPropertyNames=a.getPropertyNameOfWellKnownSymbol=a.isWellKnownSymbolLiterally=a.isBindableObjectDefinePropertyCall=a.isReadonlyAssignmentDeclaration=a.isInConstContext=a.isConstAssertion=a.getTsCheckDirective=a.getCheckJsDirective=a.isAmbientModule=a.isCompilerOptionEnabled=a.isStrictCompilerOptionEnabled=a.getIIFE=a.isAmbientModuleBlock=a.isStatementInAmbientContext=a.findImportLikeNodes=a.findImports=a.ImportKind=a.parseJsDocOfNode=a.getJsDoc=a.canHaveJsDoc=a.isReassignmentTarget=a.getAccessKind=a.AccessKind=a.isExpressionValueUsed=a.getDeclarationOfBindingElement=a.hasSideEffects=a.SideEffectOptions=a.isSameLine=a.isNumericPropertyName=a.isValidJsxIdentifier=a.isValidNumericLiteral=a.isValidPropertyName=a.isValidPropertyAccess=void 0;var _=vr(),v=G9(),h=DV(),D=IV();function P(S,H,le){for(let Be of S.getChildren(le))if(Be.kind===H)return Be}a.getChildOfKind=P;function y(S){return S>=_.SyntaxKind.FirstToken&&S<=_.SyntaxKind.LastToken}a.isTokenKind=y;function m(S){return S>=_.SyntaxKind.FirstNode}a.isNodeKind=m;function C(S){return S>=_.SyntaxKind.FirstAssignment&&S<=_.SyntaxKind.LastAssignment}a.isAssignmentKind=C;function d(S){return S>=_.SyntaxKind.FirstTypeNode&&S<=_.SyntaxKind.LastTypeNode}a.isTypeNodeKind=d;function E(S){return S>=_.SyntaxKind.FirstJSDocNode&&S<=_.SyntaxKind.LastJSDocNode}a.isJsDocKind=E;function I(S){return S>=_.SyntaxKind.FirstKeyword&&S<=_.SyntaxKind.LastKeyword}a.isKeywordKind=I;function c(S){return S.name.kind===_.SyntaxKind.Identifier&&S.name.originalKeywordKind===_.SyntaxKind.ThisKeyword}a.isThisParameter=c;function M(S,H){if(S.modifiers!==void 0){for(let le of S.modifiers)if(le.kind===H)return le}}a.getModifier=M;function q(S){if(S===void 0)return!1;for(var H=arguments.length,le=new Array(H>1?H-1:0),Be=1;Be0)return H.statements[le-1]}}a.getPreviousStatement=Pe;function te(S){let H=S.parent;if(v.isBlockLike(H)){let le=H.statements.indexOf(S);if(le=S.end))return y(S.kind)?S:pe(S,H,le!=null?le:S.getSourceFile(),Be===!0)}a.getTokenAtPosition=R;function pe(S,H,le,Be){if(!Be&&(S=je(S,H),y(S.kind)))return S;e:for(;;){for(let rt of S.getChildren(le))if(rt.end>H&&(Be||rt.kind!==_.SyntaxKind.JSDocComment)){if(y(rt.kind))return rt;S=rt;continue e}return}}function Ie(S,H){let le=arguments.length>2&&arguments[2]!==void 0?arguments[2]:S,Be=R(le,H,S);if(Be===void 0||Be.kind===_.SyntaxKind.JsxText||H>=Be.end-(_.tokenToString(Be.kind)||"").length)return;let rt=Be.pos===0?(_.getShebang(S.text)||"").length:Be.pos;return rt!==0&&_.forEachTrailingCommentRange(S.text,rt,Je,H)||_.forEachLeadingCommentRange(S.text,rt,Je,H)}a.getCommentAtPosition=Ie;function Je(S,H,le,Be,rt){return rt>=S&&rtH||S.end<=H)){for(;m(S.kind);){let le=_.forEachChild(S,Be=>Be.pos<=H&&Be.end>H?Be:void 0);if(le===void 0)break;S=le}return S}}a.getAstNodeAtPosition=je;function nt(S,H){if(S.node.pos>H||S.node.end<=H)return;e:for(;;){for(let le of S.children){if(le.node.pos>H)return S;if(le.node.end>H){S=le;continue e}}return S}}a.getWrappedNodeAtPosition=nt;function Ze(S){if(S.kind===_.SyntaxKind.ComputedPropertyName){let H=Os(S.expression);if(v.isPrefixUnaryExpression(H)){let le=!1;switch(H.operator){case _.SyntaxKind.MinusToken:le=!0;case _.SyntaxKind.PlusToken:return v.isNumericLiteral(H.operand)?`${le?"-":""}${H.operand.text}`:h.isBigIntLiteral(H.operand)?`${le?"-":""}${H.operand.text.slice(0,-1)}`:void 0;default:return}}return h.isBigIntLiteral(H)?H.text.slice(0,-1):v.isNumericOrStringLikeLiteral(H)?H.text:void 0}return S.kind===_.SyntaxKind.PrivateIdentifier?void 0:S.text}a.getPropertyName=Ze;function st(S,H){for(let le of S.elements){if(le.kind!==_.SyntaxKind.BindingElement)continue;let Be;if(le.name.kind===_.SyntaxKind.Identifier?Be=H(le):Be=st(le.name,H),Be)return Be}}a.forEachDestructuringIdentifier=st;function tt(S,H){for(let le of S.declarations){let Be;if(le.name.kind===_.SyntaxKind.Identifier?Be=H(le):Be=st(le.name,H),Be)return Be}}a.forEachDeclaredVariable=tt;var ct;(function(S){S[S.Var=0]="Var",S[S.Let=1]="Let",S[S.Const=2]="Const"})(ct=a.VariableDeclarationKind||(a.VariableDeclarationKind={}));function ne(S){return S.flags&_.NodeFlags.Let?1:S.flags&_.NodeFlags.Const?2:0}a.getVariableDeclarationKind=ne;function ge(S){return(S.flags&_.NodeFlags.BlockScoped)!==0}a.isBlockScopedVariableDeclarationList=ge;function Fe(S){let H=S.parent;return H.kind===_.SyntaxKind.CatchClause||ge(H)}a.isBlockScopedVariableDeclaration=Fe;function at(S){switch(S.kind){case _.SyntaxKind.VariableStatement:return ge(S.declarationList);case _.SyntaxKind.ClassDeclaration:case _.SyntaxKind.EnumDeclaration:case _.SyntaxKind.InterfaceDeclaration:case _.SyntaxKind.TypeAliasDeclaration:return!0;default:return!1}}a.isBlockScopedDeclarationStatement=at;function Pt(S){switch(S.parent.kind){case _.SyntaxKind.ForStatement:case _.SyntaxKind.ForInStatement:case _.SyntaxKind.ForOfStatement:case _.SyntaxKind.WhileStatement:case _.SyntaxKind.DoStatement:case _.SyntaxKind.IfStatement:case _.SyntaxKind.WithStatement:case _.SyntaxKind.LabeledStatement:return!0;default:return!1}}a.isInSingleStatementContext=Pt;var qt;(function(S){S[S.None=0]="None",S[S.Function=1]="Function",S[S.Block=2]="Block",S[S.Type=4]="Type",S[S.ConditionalType=8]="ConditionalType"})(qt=a.ScopeBoundary||(a.ScopeBoundary={}));var Zr;(function(S){S[S.Function=1]="Function",S[S.Block=3]="Block",S[S.Type=7]="Type",S[S.InferType=8]="InferType"})(Zr=a.ScopeBoundarySelector||(a.ScopeBoundarySelector={}));function Ri(S){return ua(S)||Ka(S)||la(S)}a.isScopeBoundary=Ri;function la(S){switch(S.kind){case _.SyntaxKind.InterfaceDeclaration:case _.SyntaxKind.TypeAliasDeclaration:case _.SyntaxKind.MappedType:return 4;case _.SyntaxKind.ConditionalType:return 8;default:return 0}}a.isTypeScopeBoundary=la;function ua(S){switch(S.kind){case _.SyntaxKind.FunctionExpression:case _.SyntaxKind.ArrowFunction:case _.SyntaxKind.Constructor:case _.SyntaxKind.ModuleDeclaration:case _.SyntaxKind.ClassDeclaration:case _.SyntaxKind.ClassExpression:case _.SyntaxKind.EnumDeclaration:case _.SyntaxKind.MethodDeclaration:case _.SyntaxKind.FunctionDeclaration:case _.SyntaxKind.GetAccessor:case _.SyntaxKind.SetAccessor:case _.SyntaxKind.MethodSignature:case _.SyntaxKind.CallSignature:case _.SyntaxKind.ConstructSignature:case _.SyntaxKind.ConstructorType:case _.SyntaxKind.FunctionType:return 1;case _.SyntaxKind.SourceFile:return _.isExternalModule(S)?1:0;default:return 0}}a.isFunctionScopeBoundary=ua;function Ka(S){switch(S.kind){case _.SyntaxKind.Block:let H=S.parent;return H.kind!==_.SyntaxKind.CatchClause&&(H.kind===_.SyntaxKind.SourceFile||!ua(H))?2:0;case _.SyntaxKind.ForStatement:case _.SyntaxKind.ForInStatement:case _.SyntaxKind.ForOfStatement:case _.SyntaxKind.CaseBlock:case _.SyntaxKind.CatchClause:case _.SyntaxKind.WithStatement:return 2;default:return 0}}a.isBlockScopeBoundary=Ka;function co(S){switch(S.kind){case _.SyntaxKind.ClassDeclaration:case _.SyntaxKind.ClassExpression:case _.SyntaxKind.FunctionExpression:return!0;case _.SyntaxKind.FunctionDeclaration:return S.body!==void 0;case _.SyntaxKind.MethodDeclaration:case _.SyntaxKind.GetAccessor:case _.SyntaxKind.SetAccessor:return S.parent.kind===_.SyntaxKind.ObjectLiteralExpression;default:return!1}}a.hasOwnThisReference=co;function be(S){switch(S.kind){case _.SyntaxKind.GetAccessor:case _.SyntaxKind.SetAccessor:case _.SyntaxKind.FunctionDeclaration:case _.SyntaxKind.MethodDeclaration:case _.SyntaxKind.Constructor:return S.body!==void 0;case _.SyntaxKind.FunctionExpression:case _.SyntaxKind.ArrowFunction:return!0;default:return!1}}a.isFunctionWithBody=be;function Ke(S,H){let le=arguments.length>2&&arguments[2]!==void 0?arguments[2]:S.getSourceFile(),Be=[];for(;;){if(y(S.kind))H(S);else if(S.kind!==_.SyntaxKind.JSDocComment){let rt=S.getChildren(le);if(rt.length===1){S=rt[0];continue}for(let ut=rt.length-1;ut>=0;--ut)Be.push(rt[ut])}if(Be.length===0)break;S=Be.pop()}}a.forEachToken=Ke;function Et(S,H){let le=arguments.length>2&&arguments[2]!==void 0?arguments[2]:S.getSourceFile(),Be=le.text,rt=_.createScanner(le.languageVersion,!1,le.languageVariant,Be);return Ke(S,ut=>{let Ht=ut.kind===_.SyntaxKind.JsxText||ut.pos===ut.end?ut.pos:ut.getStart(le);if(Ht!==ut.pos){rt.setTextPos(ut.pos);let Fr=rt.scan(),Cr=rt.getTokenPos();for(;Cr2&&arguments[2]!==void 0?arguments[2]:S.getSourceFile(),Be=le.text,rt=le.languageVariant!==_.LanguageVariant.JSX;return Ke(S,Ht=>{if(Ht.pos!==Ht.end&&(Ht.kind!==_.SyntaxKind.JsxText&&_.forEachLeadingCommentRange(Be,Ht.pos===0?(_.getShebang(Be)||"").length:Ht.pos,ut),rt||or(Ht)))return _.forEachTrailingCommentRange(Be,Ht.end,ut)},le);function ut(Ht,Fr,Cr){H(Be,{pos:Ht,end:Fr,kind:Cr})}}a.forEachComment=Ft;function or(S){switch(S.kind){case _.SyntaxKind.CloseBraceToken:return S.parent.kind!==_.SyntaxKind.JsxExpression||!Wr(S.parent.parent);case _.SyntaxKind.GreaterThanToken:switch(S.parent.kind){case _.SyntaxKind.JsxOpeningElement:return S.end!==S.parent.end;case _.SyntaxKind.JsxOpeningFragment:return!1;case _.SyntaxKind.JsxSelfClosingElement:return S.end!==S.parent.end||!Wr(S.parent.parent);case _.SyntaxKind.JsxClosingElement:case _.SyntaxKind.JsxClosingFragment:return!Wr(S.parent.parent.parent)}}return!0}function Wr(S){return S.kind===_.SyntaxKind.JsxElement||S.kind===_.SyntaxKind.JsxFragment}function m_(S){let H=S.getLineStarts(),le=[],Be=H.length,rt=S.text,ut=0;for(let Ht=1;Htut&&_.isLineBreak(rt.charCodeAt(Cr-1));--Cr);le.push({pos:ut,end:Fr,contentLength:Cr-ut}),ut=Fr}return le.push({pos:ut,end:S.end,contentLength:S.end-ut}),le}a.getLineRanges=m_;function Uc(S){let H=S.getLineStarts();return H.length===1||H[1]<2||S.text[H[1]-2]!=="\r"?` +`:`\r +`}a.getLineBreakStyle=Uc;var ji;function lo(S,H){return ji===void 0?ji=_.createScanner(H,!1,void 0,S):(ji.setScriptTarget(H),ji.setText(S)),ji.scan(),ji}function zc(S){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_.ScriptTarget.Latest,le=lo(S,H);return le.isIdentifier()&&le.getTextPos()===S.length&&le.getTokenPos()===0}a.isValidIdentifier=zc;function Qn(S){return S>=65536?2:1}function uo(S){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_.ScriptTarget.Latest;if(S.length===0)return!1;let le=S.codePointAt(0);if(!_.isIdentifierStart(le,H))return!1;for(let Be=Qn(le);Be1&&arguments[1]!==void 0?arguments[1]:_.ScriptTarget.Latest;if(uo(S,H))return!0;let le=lo(S,H);return le.getTextPos()===S.length&&le.getToken()===_.SyntaxKind.NumericLiteral&&le.getTokenValue()===S}a.isValidPropertyName=Wc;function Vc(S){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_.ScriptTarget.Latest,le=lo(S,H);return le.getToken()===_.SyntaxKind.NumericLiteral&&le.getTextPos()===S.length&&le.getTokenPos()===0}a.isValidNumericLiteral=Vc;function Hc(S){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_.ScriptTarget.Latest;if(S.length===0)return!1;let le=!1,Be=S.codePointAt(0);if(!_.isIdentifierStart(Be,H))return!1;for(let rt=Qn(Be);rt2&&arguments[2]!==void 0?arguments[2]:S.getSourceFile();if(y_(S)&&S.kind!==_.SyntaxKind.EndOfFileToken){let Be=Ns(S,le);if(Be.length!==0||!H)return Be}return pa(S,S.getStart(le),le,H)}a.parseJsDocOfNode=Kc;function pa(S,H,le,Be){let rt=_[Be&&h_(le,S.pos,H)?"forEachTrailingCommentRange":"forEachLeadingCommentRange"](le.text,S.pos,(en,Ji,gi)=>gi===_.SyntaxKind.MultiLineCommentTrivia&&le.text[en+2]==="*"?{pos:en}:void 0);if(rt===void 0)return[];let ut=rt.pos,Ht=le.text.slice(ut,H),Fr=_.createSourceFile("jsdoc.ts",`${Ht}var a;`,le.languageVersion),Cr=Ns(Fr.statements[0],Fr);for(let en of Cr)ir(en,S);return Cr;function ir(en,Ji){return en.pos+=ut,en.end+=ut,en.parent=Ji,_.forEachChild(en,gi=>ir(gi,en),gi=>{gi.pos+=ut,gi.end+=ut;for(let ln of gi)ir(ln,en)})}}var Xc;(function(S){S[S.ImportDeclaration=1]="ImportDeclaration",S[S.ImportEquals=2]="ImportEquals",S[S.ExportFrom=4]="ExportFrom",S[S.DynamicImport=8]="DynamicImport",S[S.Require=16]="Require",S[S.ImportType=32]="ImportType",S[S.All=63]="All",S[S.AllImports=59]="AllImports",S[S.AllStaticImports=3]="AllStaticImports",S[S.AllImportExpressions=24]="AllImportExpressions",S[S.AllRequireLike=18]="AllRequireLike",S[S.AllNestedImports=56]="AllNestedImports",S[S.AllTopLevelImports=7]="AllTopLevelImports"})(Xc=a.ImportKind||(a.ImportKind={}));function fo(S,H){let le=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,Be=[];for(let ut of v_(S,H,le))switch(ut.kind){case _.SyntaxKind.ImportDeclaration:rt(ut.moduleSpecifier);break;case _.SyntaxKind.ImportEqualsDeclaration:rt(ut.moduleReference.expression);break;case _.SyntaxKind.ExportDeclaration:rt(ut.moduleSpecifier);break;case _.SyntaxKind.CallExpression:rt(ut.arguments[0]);break;case _.SyntaxKind.ImportType:v.isLiteralTypeNode(ut.argument)&&rt(ut.argument.literal);break;default:throw new Error("unexpected node")}return Be;function rt(ut){v.isTextualLiteral(ut)&&Be.push(ut)}}a.findImports=fo;function v_(S,H){let le=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return new Cn(S,H,le).find()}a.findImportLikeNodes=v_;var Cn=class{constructor(S,H,le){this._sourceFile=S,this._options=H,this._ignoreFileName=le,this._result=[]}find(){return this._sourceFile.isDeclarationFile&&(this._options&=-25),this._options&7&&this._findImports(this._sourceFile.statements),this._options&56&&this._findNestedImports(),this._result}_findImports(S){for(let H of S)v.isImportDeclaration(H)?this._options&1&&this._result.push(H):v.isImportEqualsDeclaration(H)?this._options&2&&H.moduleReference.kind===_.SyntaxKind.ExternalModuleReference&&this._result.push(H):v.isExportDeclaration(H)?H.moduleSpecifier!==void 0&&this._options&4&&this._result.push(H):v.isModuleDeclaration(H)&&this._findImportsInModule(H)}_findImportsInModule(S){if(S.body!==void 0){if(S.body.kind===_.SyntaxKind.ModuleDeclaration)return this._findImportsInModule(S.body);this._findImports(S.body.statements)}}_findNestedImports(){let S=this._ignoreFileName||(this._sourceFile.flags&_.NodeFlags.JavaScriptFile)!==0,H,le;if((this._options&56)===16){if(!S)return;H=/\brequire\s*[1&&this._result.push(rt.parent)}}else rt.kind===_.SyntaxKind.Identifier&&rt.end-7===Be.index&&rt.parent.kind===_.SyntaxKind.CallExpression&&rt.parent.expression===rt&&rt.parent.arguments.length===1&&this._result.push(rt.parent)}}};function Zn(S){for(;S.flags&_.NodeFlags.NestedNamespace;)S=S.parent;return q(S.modifiers,_.SyntaxKind.DeclareKeyword)||Xa(S.parent)}a.isStatementInAmbientContext=Zn;function Xa(S){for(;S.kind===_.SyntaxKind.ModuleBlock;){do S=S.parent;while(S.flags&_.NodeFlags.NestedNamespace);if(q(S.modifiers,_.SyntaxKind.DeclareKeyword))return!0;S=S.parent}return!1}a.isAmbientModuleBlock=Xa;function Yc(S){let H=S.parent;for(;H.kind===_.SyntaxKind.ParenthesizedExpression;)H=H.parent;return v.isCallExpression(H)&&S.end<=H.expression.end?H:void 0}a.getIIFE=Yc;function mo(S,H){return(S.strict?S[H]!==!1:S[H]===!0)&&(H!=="strictPropertyInitialization"||mo(S,"strictNullChecks"))}a.isStrictCompilerOptionEnabled=mo;function ei(S,H){switch(H){case"stripInternal":case"declarationMap":case"emitDeclarationOnly":return S[H]===!0&&ei(S,"declaration");case"declaration":return S.declaration||ei(S,"composite");case"incremental":return S.incremental===void 0?ei(S,"composite"):S.incremental;case"skipDefaultLibCheck":return S.skipDefaultLibCheck||ei(S,"skipLibCheck");case"suppressImplicitAnyIndexErrors":return S.suppressImplicitAnyIndexErrors===!0&&ei(S,"noImplicitAny");case"allowSyntheticDefaultImports":return S.allowSyntheticDefaultImports!==void 0?S.allowSyntheticDefaultImports:ei(S,"esModuleInterop")||S.module===_.ModuleKind.System;case"noUncheckedIndexedAccess":return S.noUncheckedIndexedAccess===!0&&ei(S,"strictNullChecks");case"allowJs":return S.allowJs===void 0?ei(S,"checkJs"):S.allowJs;case"noImplicitAny":case"noImplicitThis":case"strictNullChecks":case"strictFunctionTypes":case"strictPropertyInitialization":case"alwaysStrict":case"strictBindCallApply":return mo(S,H)}return S[H]===!0}a.isCompilerOptionEnabled=ei;function Ya(S){return S.name.kind===_.SyntaxKind.StringLiteral||(S.flags&_.NodeFlags.GlobalAugmentation)!==0}a.isAmbientModule=Ya;function b_(S){return Qa(S)}a.getCheckJsDirective=b_;function Qa(S){let H;return _.forEachLeadingCommentRange(S,(_.getShebang(S)||"").length,(le,Be,rt)=>{if(rt===_.SyntaxKind.SingleLineCommentTrivia){let ut=S.slice(le,Be),Ht=/^\/{2,3}\s*@ts-(no)?check(?:\s|$)/i.exec(ut);Ht!==null&&(H={pos:le,end:Be,enabled:Ht[1]===void 0})}}),H}a.getTsCheckDirective=Qa;function Jr(S){return v.isTypeReferenceNode(S.type)&&S.type.typeName.kind===_.SyntaxKind.Identifier&&S.type.typeName.escapedText==="const"}a.isConstAssertion=Jr;function Qc(S){let H=S;for(;;){let le=H.parent;e:switch(le.kind){case _.SyntaxKind.TypeAssertionExpression:case _.SyntaxKind.AsExpression:return Jr(le);case _.SyntaxKind.PrefixUnaryExpression:if(H.kind!==_.SyntaxKind.NumericLiteral)return!1;switch(le.operator){case _.SyntaxKind.PlusToken:case _.SyntaxKind.MinusToken:H=le;break e;default:return!1}case _.SyntaxKind.PropertyAssignment:if(le.initializer!==H)return!1;H=le.parent;break;case _.SyntaxKind.ShorthandPropertyAssignment:H=le.parent;break;case _.SyntaxKind.ParenthesizedExpression:case _.SyntaxKind.ArrayLiteralExpression:case _.SyntaxKind.ObjectLiteralExpression:case _.SyntaxKind.TemplateExpression:H=le;break;default:return!1}}}a.isInConstContext=Qc;function ho(S,H){if(!T_(S))return!1;let le=H.getTypeAtLocation(S.arguments[2]);if(le.getProperty("value")===void 0)return le.getProperty("set")===void 0;let Be=le.getProperty("writable");if(Be===void 0)return!1;let rt=Be.valueDeclaration!==void 0&&v.isPropertyAssignment(Be.valueDeclaration)?H.getTypeAtLocation(Be.valueDeclaration.initializer):H.getTypeOfSymbolAtLocation(Be,S.arguments[2]);return D.isBooleanLiteralType(rt,!1)}a.isReadonlyAssignmentDeclaration=ho;function T_(S){return S.arguments.length===3&&v.isEntityNameExpression(S.arguments[0])&&v.isNumericOrStringLikeLiteral(S.arguments[1])&&v.isPropertyAccessExpression(S.expression)&&S.expression.name.escapedText==="defineProperty"&&v.isIdentifier(S.expression.expression)&&S.expression.expression.escapedText==="Object"}a.isBindableObjectDefinePropertyCall=T_;function go(S){return _.isPropertyAccessExpression(S)&&_.isIdentifier(S.expression)&&S.expression.escapedText==="Symbol"}a.isWellKnownSymbolLiterally=go;function yo(S){return{displayName:`[Symbol.${S.name.text}]`,symbolName:"__@"+S.name.text}}a.getPropertyNameOfWellKnownSymbol=yo;var Za=(S=>{let[H,le]=S;return H<"4"||H==="4"&&le<"3"})(_.versionMajorMinor.split("."));function vo(S,H){let le={known:!0,names:[]};if(S=Os(S),Za&&go(S))le.names.push(yo(S));else{let Be=H.getTypeAtLocation(S);for(let rt of D.unionTypeParts(H.getBaseConstraintOfType(Be)||Be)){let ut=D.getPropertyNameFromType(rt);ut?le.names.push(ut):le.known=!1}}return le}a.getLateBoundPropertyNames=vo;function S_(S,H){let le=Ze(S);return le!==void 0?{known:!0,names:[{displayName:le,symbolName:_.escapeLeadingUnderscores(le)}]}:S.kind===_.SyntaxKind.PrivateIdentifier?{known:!0,names:[{displayName:S.text,symbolName:H.getSymbolAtLocation(S).escapedName}]}:vo(S.expression,H)}a.getLateBoundPropertyNamesOfPropertyName=S_;function Zc(S,H){let le=Ze(S);if(le!==void 0)return{displayName:le,symbolName:_.escapeLeadingUnderscores(le)};if(S.kind===_.SyntaxKind.PrivateIdentifier)return{displayName:S.text,symbolName:H.getSymbolAtLocation(S).escapedName};let{expression:Be}=S;return Za&&go(Be)?yo(Be):D.getPropertyNameFromType(H.getTypeAtLocation(Be))}a.getSingleLateBoundPropertyNameOfPropertyName=Zc;function Os(S){for(;S.kind===_.SyntaxKind.ParenthesizedExpression;)S=S.expression;return S}a.unwrapParentheses=Os;function bo(S){return`${S.negative?"-":""}${S.base10Value}n`}a.formatPseudoBigInt=bo;function el(S,H){let le=S.caseBlock.clauses.filter(v.isCaseClause);if(le.length===0)return!1;let Be=D.unionTypeParts(H.getTypeAtLocation(S.expression));if(Be.length>le.length)return!1;let rt=new Set(Be.map(x_));if(rt.has(void 0))return!1;let ut=new Set;for(let Ht of le){let Fr=H.getTypeAtLocation(Ht.expression);if(a.isTypeFlagSet(Fr,_.TypeFlags.Never))continue;let Cr=x_(Fr);if(rt.has(Cr))ut.add(Cr);else if(Cr!=="null"&&Cr!=="undefined")return!1}return rt.size===ut.size}a.hasExhaustiveCaseClauses=el;function x_(S){if(a.isTypeFlagSet(S,_.TypeFlags.Null))return"null";if(a.isTypeFlagSet(S,_.TypeFlags.Undefined))return"undefined";if(a.isTypeFlagSet(S,_.TypeFlags.NumberLiteral))return`${a.isTypeFlagSet(S,_.TypeFlags.EnumLiteral)?"enum:":""}${S.value}`;if(a.isTypeFlagSet(S,_.TypeFlags.StringLiteral))return`${a.isTypeFlagSet(S,_.TypeFlags.EnumLiteral)?"enum:":""}string:${S.value}`;if(a.isTypeFlagSet(S,_.TypeFlags.BigIntLiteral))return bo(S.value);if(h.isUniqueESSymbolType(S))return S.escapedName;if(D.isBooleanLiteralType(S,!0))return"true";if(D.isBooleanLiteralType(S,!1))return"false"}function E_(S){var H;if(((H=S.heritageClauses)===null||H===void 0?void 0:H[0].token)===_.SyntaxKind.ExtendsKeyword)return S.heritageClauses[0].types[0]}a.getBaseOfClassLikeExpression=E_}}),NV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(d,E,I,c){c===void 0&&(c=I);var M=Object.getOwnPropertyDescriptor(E,I);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[I]}}),Object.defineProperty(d,c,M)}:function(d,E,I,c){c===void 0&&(c=I),d[c]=E[I]}),v=a&&a.__setModuleDefault||(Object.create?function(d,E){Object.defineProperty(d,"default",{enumerable:!0,value:E})}:function(d,E){d.default=E}),h=a&&a.__importStar||function(d){if(d&&d.__esModule)return d;var E={};if(d!=null)for(var I in d)I!=="default"&&Object.prototype.hasOwnProperty.call(d,I)&&_(E,d,I);return v(E,d),E};Object.defineProperty(a,"__esModule",{value:!0}),a.convertComments=void 0;var D=K9(),P=h(vr()),y=E1(),m=x1();function C(d,E){let I=[];return(0,D.forEachComment)(d,(c,M)=>{let q=M.kind===P.SyntaxKind.SingleLineCommentTrivia?m.AST_TOKEN_TYPES.Line:m.AST_TOKEN_TYPES.Block,W=[M.pos,M.end],K=(0,y.getLocFor)(W[0],W[1],d),ce=W[0]+2,Ce=M.kind===P.SyntaxKind.SingleLineCommentTrivia?W[1]-ce:W[1]-ce-2;I.push({type:q,value:E.slice(ce,ce+Ce),range:W,loc:K})},d),I}a.convertComments=C}}),X9=Ne({"node_modules/eslint-visitor-keys/dist/eslint-visitor-keys.cjs"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0});var _={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExportAllDeclaration:["exported","source"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source"],ExportSpecifier:["exported","local"],ExpressionStatement:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportExpression:["source"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXClosingFragment:[],JSXOpeningFragment:[],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],PropertyDefinition:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],StaticBlock:["body"],Super:[],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],YieldExpression:["argument"]},v=Object.keys(_);for(let m of v)Object.freeze(_[m]);Object.freeze(_);var h=new Set(["parent","leadingComments","trailingComments"]);function D(m){return!h.has(m)&&m[0]!=="_"}function P(m){return Object.keys(m).filter(D)}function y(m){let C=Object.assign({},_);for(let d of Object.keys(m))if(Object.prototype.hasOwnProperty.call(C,d)){let E=new Set(m[d]);for(let I of C[d])E.add(I);C[d]=Object.freeze(Array.from(E))}else C[d]=Object.freeze(Array.from(m[d]));return Object.freeze(C)}a.KEYS=_,a.getKeys=P,a.unionWith=y}}),OV=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/visitor-keys/dist/get-keys.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.getKeys=void 0;var _=X9(),v=_.getKeys;a.getKeys=v}}),MV=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/visitor-keys/dist/visitor-keys.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(C,d,E,I){I===void 0&&(I=E);var c=Object.getOwnPropertyDescriptor(d,E);(!c||("get"in c?!d.__esModule:c.writable||c.configurable))&&(c={enumerable:!0,get:function(){return d[E]}}),Object.defineProperty(C,I,c)}:function(C,d,E,I){I===void 0&&(I=E),C[I]=d[E]}),v=a&&a.__setModuleDefault||(Object.create?function(C,d){Object.defineProperty(C,"default",{enumerable:!0,value:d})}:function(C,d){C.default=d}),h=a&&a.__importStar||function(C){if(C&&C.__esModule)return C;var d={};if(C!=null)for(var E in C)E!=="default"&&Object.prototype.hasOwnProperty.call(C,E)&&_(d,C,E);return v(d,C),d};Object.defineProperty(a,"__esModule",{value:!0}),a.visitorKeys=void 0;var D=h(X9()),P=(()=>{let C=["typeParameters","params","returnType"],d=[...C,"body"],E=["decorators","key","typeAnnotation"];return{AnonymousFunction:d,Function:["id",...d],FunctionType:C,ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","implements","body"],AbstractPropertyDefinition:["decorators","key","typeAnnotation"],PropertyDefinition:[...E,"value"],TypeAssertion:["expression","typeAnnotation"]}})(),y={AccessorProperty:P.PropertyDefinition,ArrayPattern:["decorators","elements","typeAnnotation"],ArrowFunctionExpression:P.AnonymousFunction,AssignmentPattern:["decorators","left","right","typeAnnotation"],CallExpression:["callee","typeParameters","arguments"],ClassDeclaration:P.ClassDeclaration,ClassExpression:P.ClassDeclaration,Decorator:["expression"],ExportAllDeclaration:["exported","source","assertions"],ExportNamedDeclaration:["declaration","specifiers","source","assertions"],FunctionDeclaration:P.Function,FunctionExpression:P.Function,Identifier:["decorators","typeAnnotation"],ImportAttribute:["key","value"],ImportDeclaration:["specifiers","source","assertions"],ImportExpression:["source","attributes"],JSXClosingFragment:[],JSXOpeningElement:["name","typeParameters","attributes"],JSXOpeningFragment:[],JSXSpreadChild:["expression"],MethodDefinition:["decorators","key","value","typeParameters"],NewExpression:["callee","typeParameters","arguments"],ObjectPattern:["decorators","properties","typeAnnotation"],PropertyDefinition:P.PropertyDefinition,RestElement:["decorators","argument","typeAnnotation"],StaticBlock:["body"],TaggedTemplateExpression:["tag","typeParameters","quasi"],TSAbstractAccessorProperty:P.AbstractPropertyDefinition,TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:P.AbstractPropertyDefinition,TSAnyKeyword:[],TSArrayType:["elementType"],TSAsExpression:P.TypeAssertion,TSAsyncKeyword:[],TSBigIntKeyword:[],TSBooleanKeyword:[],TSCallSignatureDeclaration:P.FunctionType,TSClassImplements:["expression","typeParameters"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSConstructorType:P.FunctionType,TSConstructSignatureDeclaration:P.FunctionType,TSDeclareFunction:P.Function,TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id",...P.FunctionType],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSExportAssignment:["expression"],TSExportKeyword:[],TSExternalModuleReference:["expression"],TSFunctionType:P.FunctionType,TSImportEqualsDeclaration:["id","moduleReference"],TSImportType:["parameter","qualifier","typeParameters"],TSIndexedAccessType:["indexType","objectType"],TSIndexSignature:["parameters","typeAnnotation"],TSInferType:["typeParameter"],TSInstantiationExpression:["expression","typeParameters"],TSInterfaceBody:["body"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceHeritage:["expression","typeParameters"],TSIntersectionType:["types"],TSIntrinsicKeyword:[],TSLiteralType:["literal"],TSMappedType:["nameType","typeParameter","typeAnnotation"],TSMethodSignature:["typeParameters","key","params","returnType"],TSModuleBlock:["body"],TSModuleDeclaration:["id","body"],TSNamedTupleMember:["label","elementType"],TSNamespaceExportDeclaration:["id"],TSNeverKeyword:[],TSNonNullExpression:["expression"],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSOptionalType:["typeAnnotation"],TSParameterProperty:["decorators","parameter"],TSPrivateKeyword:[],TSPropertySignature:["typeAnnotation","key","initializer"],TSProtectedKeyword:[],TSPublicKeyword:[],TSQualifiedName:["left","right"],TSReadonlyKeyword:[],TSRestType:["typeAnnotation"],TSSatisfiesExpression:["typeAnnotation","expression"],TSStaticKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSTemplateLiteralType:["quasis","types"],TSThisType:[],TSTupleType:["elementTypes"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSTypeAnnotation:["typeAnnotation"],TSTypeAssertion:P.TypeAssertion,TSTypeLiteral:["members"],TSTypeOperator:["typeAnnotation"],TSTypeParameter:["name","constraint","default"],TSTypeParameterDeclaration:["params"],TSTypeParameterInstantiation:["params"],TSTypePredicate:["typeAnnotation","parameterName"],TSTypeQuery:["exprName","typeParameters"],TSTypeReference:["typeName","typeParameters"],TSUndefinedKeyword:[],TSUnionType:["types"],TSUnknownKeyword:[],TSVoidKeyword:[]},m=D.unionWith(y);a.visitorKeys=m}}),Y9=Ne({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/visitor-keys/dist/index.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.visitorKeys=a.getKeys=void 0;var _=OV();Object.defineProperty(a,"getKeys",{enumerable:!0,get:function(){return _.getKeys}});var v=MV();Object.defineProperty(a,"visitorKeys",{enumerable:!0,get:function(){return v.visitorKeys}})}}),Q9=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.simpleTraverse=void 0;var _=Y9();function v(y){return y!=null&&typeof y=="object"&&typeof y.type=="string"}function h(y,m){let C=y[m.type];return C!=null?C:[]}var D=class{constructor(y){let m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.allVisitorKeys=_.visitorKeys,this.selectors=y,this.setParentPointers=m}traverse(y,m){if(!v(y))return;this.setParentPointers&&(y.parent=m),"enter"in this.selectors?this.selectors.enter(y,m):y.type in this.selectors&&this.selectors[y.type](y,m);let C=h(this.allVisitorKeys,y);if(!(C.length<1))for(let d of C){let E=y[d];if(Array.isArray(E))for(let I of E)this.traverse(I,y);else this.traverse(E,y)}}};function P(y,m){let C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;new D(m,C).traverse(y,void 0)}a.simpleTraverse=P}}),LV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.astConverter=void 0;var _=W9(),v=NV(),h=E1(),D=Q9();function P(y,m,C){let{parseDiagnostics:d}=y;if(d.length)throw(0,_.convertError)(d[0]);let E=new _.Converter(y,{errorOnUnknownASTType:m.errorOnUnknownASTType||!1,shouldPreserveNodeMaps:C}),I=E.convertProgram();(!m.range||!m.loc)&&(0,D.simpleTraverse)(I,{enter:M=>{m.range||delete M.range,m.loc||delete M.loc}}),m.tokens&&(I.tokens=(0,h.convertTokens)(y)),m.comment&&(I.comments=(0,v.convertComments)(y,m.code));let c=E.getASTMaps();return{estree:I,astMaps:c}}a.astConverter=P}}),Z9={};m1(Z9,{basename:()=>i5,default:()=>s5,delimiter:()=>nT,dirname:()=>n5,extname:()=>a5,isAbsolute:()=>mT,join:()=>t5,normalize:()=>dT,relative:()=>r5,resolve:()=>d1,sep:()=>rT});function e5(a,_){for(var v=0,h=a.length-1;h>=0;h--){var D=a[h];D==="."?a.splice(h,1):D===".."?(a.splice(h,1),v++):v&&(a.splice(h,1),v--)}if(_)for(;v--;v)a.unshift("..");return a}function d1(){for(var a="",_=!1,v=arguments.length-1;v>=-1&&!_;v--){var h=v>=0?arguments[v]:"/";if(typeof h!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!h)continue;a=h+"/"+a,_=h.charAt(0)==="/"}return a=e5(hT(a.split("/"),function(D){return!!D}),!_).join("/"),(_?"/":"")+a||"."}function dT(a){var _=mT(a),v=o5(a,-1)==="/";return a=e5(hT(a.split("/"),function(h){return!!h}),!_).join("/"),!a&&!_&&(a="."),a&&v&&(a+="/"),(_?"/":"")+a}function mT(a){return a.charAt(0)==="/"}function t5(){var a=Array.prototype.slice.call(arguments,0);return dT(hT(a,function(_,v){if(typeof _!="string")throw new TypeError("Arguments to path.join must be strings");return _}).join("/"))}function r5(a,_){a=d1(a).substr(1),_=d1(_).substr(1);function v(d){for(var E=0;E=0&&d[I]==="";I--);return E>I?[]:d.slice(E,I-E+1)}for(var h=v(a.split("/")),D=v(_.split("/")),P=Math.min(h.length,D.length),y=P,m=0;mPe:Pe=>Pe.toLowerCase();function c(Pe){let te=P.default.normalize(Pe);return te.endsWith(P.default.sep)&&(te=te.slice(0,-1)),I(te)}a.getCanonicalFileName=c;function M(Pe,te){return P.default.isAbsolute(Pe)?Pe:P.default.join(te||"/prettier-security-dirname-placeholder",Pe)}a.ensureAbsolutePath=M;function q(Pe){return P.default.dirname(Pe)}a.canonicalDirname=q;var W=[y.Extension.Dts,y.Extension.Dcts,y.Extension.Dmts];function K(Pe){var te;return Pe?(te=W.find(he=>Pe.endsWith(he)))!==null&&te!==void 0?te:P.default.extname(Pe):null}function ce(Pe,te){let he=Pe.getSourceFile(te.filePath),De=K(te.filePath),R=K(he==null?void 0:he.fileName);if(De===R)return he&&{ast:he,program:Pe}}a.getAstFromProgram=ce;function Ce(Pe){let te;try{throw new Error("Dynamic require is not supported")}catch{let De=["Could not find the provided parserOptions.moduleResolver.","Hint: use an absolute path if you are not in control over where the ESLint instance runs."];throw new Error(De.join(` +`))}return te}a.getModuleResolver=Ce;function me(Pe){var te;return!((te=y.sys)===null||te===void 0)&&te.createHash?y.sys.createHash(Pe):Pe}a.createHash=me}}),jV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(I,c,M,q){q===void 0&&(q=M);var W=Object.getOwnPropertyDescriptor(c,M);(!W||("get"in W?!c.__esModule:W.writable||W.configurable))&&(W={enumerable:!0,get:function(){return c[M]}}),Object.defineProperty(I,q,W)}:function(I,c,M,q){q===void 0&&(q=M),I[q]=c[M]}),v=a&&a.__setModuleDefault||(Object.create?function(I,c){Object.defineProperty(I,"default",{enumerable:!0,value:c})}:function(I,c){I.default=c}),h=a&&a.__importStar||function(I){if(I&&I.__esModule)return I;var c={};if(I!=null)for(var M in I)M!=="default"&&Object.prototype.hasOwnProperty.call(I,M)&&_(c,I,M);return v(c,I),c},D=a&&a.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(a,"__esModule",{value:!0}),a.createDefaultProgram=void 0;var P=D(Ga()),y=D(_o()),m=h(vr()),C=d_(),d=(0,P.default)("typescript-eslint:typescript-estree:createDefaultProgram");function E(I){var c;if(d("Getting default program for: %s",I.filePath||"unnamed file"),((c=I.projects)===null||c===void 0?void 0:c.length)!==1)return;let M=I.projects[0],q=m.getParsedCommandLineOfConfigFile(M,(0,C.createDefaultCompilerOptionsFromExtra)(I),Object.assign(Object.assign({},m.sys),{onUnRecoverableConfigFileDiagnostic:()=>{}}));if(!q)return;let W=m.createCompilerHost(q.options,!0);I.moduleResolver&&(W.resolveModuleNames=(0,C.getModuleResolver)(I.moduleResolver).resolveModuleNames);let K=W.readFile;W.readFile=me=>y.default.normalize(me)===y.default.normalize(I.filePath)?I.code:K(me);let ce=m.createProgram([I.filePath],q.options,W),Ce=ce.getSourceFile(I.filePath);return Ce&&{ast:Ce,program:ce}}a.createDefaultProgram=E}}),gT=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/getScriptKind.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(d,E,I,c){c===void 0&&(c=I);var M=Object.getOwnPropertyDescriptor(E,I);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[I]}}),Object.defineProperty(d,c,M)}:function(d,E,I,c){c===void 0&&(c=I),d[c]=E[I]}),v=a&&a.__setModuleDefault||(Object.create?function(d,E){Object.defineProperty(d,"default",{enumerable:!0,value:E})}:function(d,E){d.default=E}),h=a&&a.__importStar||function(d){if(d&&d.__esModule)return d;var E={};if(d!=null)for(var I in d)I!=="default"&&Object.prototype.hasOwnProperty.call(d,I)&&_(E,d,I);return v(E,d),E},D=a&&a.__importDefault||function(d){return d&&d.__esModule?d:{default:d}};Object.defineProperty(a,"__esModule",{value:!0}),a.getLanguageVariant=a.getScriptKind=void 0;var P=D(_o()),y=h(vr());function m(d,E){switch(P.default.extname(d).toLowerCase()){case y.Extension.Js:case y.Extension.Cjs:case y.Extension.Mjs:return y.ScriptKind.JS;case y.Extension.Jsx:return y.ScriptKind.JSX;case y.Extension.Ts:case y.Extension.Cts:case y.Extension.Mts:return y.ScriptKind.TS;case y.Extension.Tsx:return y.ScriptKind.TSX;case y.Extension.Json:return y.ScriptKind.JSON;default:return E?y.ScriptKind.TSX:y.ScriptKind.TS}}a.getScriptKind=m;function C(d){switch(d){case y.ScriptKind.TSX:case y.ScriptKind.JSX:case y.ScriptKind.JS:case y.ScriptKind.JSON:return y.LanguageVariant.JSX;default:return y.LanguageVariant.Standard}}a.getLanguageVariant=C}}),JV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(I,c,M,q){q===void 0&&(q=M);var W=Object.getOwnPropertyDescriptor(c,M);(!W||("get"in W?!c.__esModule:W.writable||W.configurable))&&(W={enumerable:!0,get:function(){return c[M]}}),Object.defineProperty(I,q,W)}:function(I,c,M,q){q===void 0&&(q=M),I[q]=c[M]}),v=a&&a.__setModuleDefault||(Object.create?function(I,c){Object.defineProperty(I,"default",{enumerable:!0,value:c})}:function(I,c){I.default=c}),h=a&&a.__importStar||function(I){if(I&&I.__esModule)return I;var c={};if(I!=null)for(var M in I)M!=="default"&&Object.prototype.hasOwnProperty.call(I,M)&&_(c,I,M);return v(c,I),c},D=a&&a.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(a,"__esModule",{value:!0}),a.createIsolatedProgram=void 0;var P=D(Ga()),y=h(vr()),m=gT(),C=d_(),d=(0,P.default)("typescript-eslint:typescript-estree:createIsolatedProgram");function E(I){d("Getting isolated program in %s mode for: %s",I.jsx?"TSX":"TS",I.filePath);let c={fileExists(){return!0},getCanonicalFileName(){return I.filePath},getCurrentDirectory(){return""},getDirectories(){return[]},getDefaultLibFileName(){return"lib.d.ts"},getNewLine(){return` +`},getSourceFile(W){return y.createSourceFile(W,I.code,y.ScriptTarget.Latest,!0,(0,m.getScriptKind)(I.filePath,I.jsx))},readFile(){},useCaseSensitiveFileNames(){return!0},writeFile(){return null}},M=y.createProgram([I.filePath],Object.assign({noResolve:!0,target:y.ScriptTarget.Latest,jsx:I.jsx?y.JsxEmit.Preserve:void 0},(0,C.createDefaultCompilerOptionsFromExtra)(I)),c),q=M.getSourceFile(I.filePath);if(!q)throw new Error("Expected an ast to be returned for the single-file isolated program.");return{ast:q,program:M}}a.createIsolatedProgram=E}}),FV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/describeFilePath.js"(a){"use strict";ke();var _=a&&a.__importDefault||function(D){return D&&D.__esModule?D:{default:D}};Object.defineProperty(a,"__esModule",{value:!0}),a.describeFilePath=void 0;var v=_(_o());function h(D,P){let y=v.default.relative(P,D);return y&&!y.startsWith("..")&&!v.default.isAbsolute(y)?`/${y}`:/^[(\w+:)\\/~]/.test(D)||/\.\.[/\\]\.\./.test(y)?D:`/${y}`}a.describeFilePath=h}}),_5={};m1(_5,{default:()=>c5});var c5,BV=yp({"node-modules-polyfills:fs"(){ke(),c5={}}}),yT=Ne({"node-modules-polyfills-commonjs:fs"(a,_){ke();var v=(BV(),Li(_5));if(v&&v.default){_.exports=v.default;for(let h in v)_.exports[h]=v[h]}else v&&(_.exports=v)}}),l5=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(Je,Xe,ee,je){je===void 0&&(je=ee);var nt=Object.getOwnPropertyDescriptor(Xe,ee);(!nt||("get"in nt?!Xe.__esModule:nt.writable||nt.configurable))&&(nt={enumerable:!0,get:function(){return Xe[ee]}}),Object.defineProperty(Je,je,nt)}:function(Je,Xe,ee,je){je===void 0&&(je=ee),Je[je]=Xe[ee]}),v=a&&a.__setModuleDefault||(Object.create?function(Je,Xe){Object.defineProperty(Je,"default",{enumerable:!0,value:Xe})}:function(Je,Xe){Je.default=Xe}),h=a&&a.__importStar||function(Je){if(Je&&Je.__esModule)return Je;var Xe={};if(Je!=null)for(var ee in Je)ee!=="default"&&Object.prototype.hasOwnProperty.call(Je,ee)&&_(Xe,Je,ee);return v(Xe,Je),Xe},D=a&&a.__importDefault||function(Je){return Je&&Je.__esModule?Je:{default:Je}};Object.defineProperty(a,"__esModule",{value:!0}),a.getWatchProgramsForProjects=a.clearWatchCaches=void 0;var P=D(Ga()),y=D(yT()),m=D(pT()),C=h(vr()),d=d_(),E=(0,P.default)("typescript-eslint:typescript-estree:createWatchProgram"),I=new Map,c=new Map,M=new Map,q=new Map,W=new Map,K=new Map;function ce(){I.clear(),c.clear(),M.clear(),K.clear(),q.clear(),W.clear()}a.clearWatchCaches=ce;function Ce(Je){return(Xe,ee)=>{let je=(0,d.getCanonicalFileName)(Xe),nt=(()=>{let Ze=Je.get(je);return Ze||(Ze=new Set,Je.set(je,Ze)),Ze})();return nt.add(ee),{close:()=>{nt.delete(ee)}}}}var me={code:"",filePath:""};function Pe(Je){throw new Error(C.flattenDiagnosticMessageText(Je.messageText,C.sys.newLine))}function te(Je,Xe,ee){let je=ee.EXPERIMENTAL_useSourceOfProjectReferenceRedirect?new Set(Xe.getSourceFiles().map(nt=>(0,d.getCanonicalFileName)(nt.fileName))):new Set(Xe.getRootFileNames().map(nt=>(0,d.getCanonicalFileName)(nt)));return q.set(Je,je),je}function he(Je){let Xe=(0,d.getCanonicalFileName)(Je.filePath),ee=[];me.code=Je.code,me.filePath=Xe;let je=c.get(Xe),nt=(0,d.createHash)(Je.code);K.get(Xe)!==nt&&je&&je.size>0&&je.forEach(st=>st(Xe,C.FileWatcherEventKind.Changed));let Ze=new Set(Je.projects);for(let[st,tt]of I.entries()){if(!Ze.has(st))continue;let ct=q.get(st),ne=null;if(ct||(ne=tt.getProgram().getProgram(),ct=te(st,ne,Je)),ct.has(Xe))return E("Found existing program for file. %s",Xe),ne=ne!=null?ne:tt.getProgram().getProgram(),ne.getTypeChecker(),[ne]}E("File did not belong to any existing programs, moving to create/update. %s",Xe);for(let st of Je.projects){let tt=I.get(st);if(tt){let Fe=Ie(tt,Xe,st);if(!Fe)continue;if(Fe.getTypeChecker(),te(st,Fe,Je).has(Xe))return E("Found updated program for file. %s",Xe),[Fe];ee.push(Fe);continue}let ct=R(st,Je);I.set(st,ct);let ne=ct.getProgram().getProgram();if(ne.getTypeChecker(),te(st,ne,Je).has(Xe))return E("Found program for file. %s",Xe),[ne];ee.push(ne)}return ee}a.getWatchProgramsForProjects=he;var De=m.default.satisfies(C.version,">=3.9.0-beta",{includePrerelease:!0});function R(Je,Xe){E("Creating watch program for %s.",Je);let ee=C.createWatchCompilerHost(Je,(0,d.createDefaultCompilerOptionsFromExtra)(Xe),C.sys,C.createAbstractBuilder,Pe,()=>{});Xe.moduleResolver&&(ee.resolveModuleNames=(0,d.getModuleResolver)(Xe.moduleResolver).resolveModuleNames);let je=ee.readFile;ee.readFile=(tt,ct)=>{let ne=(0,d.getCanonicalFileName)(tt),ge=ne===me.filePath?me.code:je(ne,ct);return ge!==void 0&&K.set(ne,(0,d.createHash)(ge)),ge},ee.onUnRecoverableConfigFileDiagnostic=Pe,ee.afterProgramCreate=tt=>{let ct=tt.getConfigFileParsingDiagnostics().filter(ne=>ne.category===C.DiagnosticCategory.Error&&ne.code!==18003);ct.length>0&&Pe(ct[0])},ee.watchFile=Ce(c),ee.watchDirectory=Ce(M);let nt=ee.onCachedDirectoryStructureHostCreate;ee.onCachedDirectoryStructureHostCreate=tt=>{let ct=tt.readDirectory;tt.readDirectory=(ne,ge,Fe,at,Pt)=>ct(ne,ge?ge.concat(Xe.extraFileExtensions):void 0,Fe,at,Pt),nt(tt)},ee.extraFileExtensions=Xe.extraFileExtensions.map(tt=>({extension:tt,isMixedContent:!0,scriptKind:C.ScriptKind.Deferred})),ee.trace=E,ee.useSourceOfProjectReferenceRedirect=()=>Xe.EXPERIMENTAL_useSourceOfProjectReferenceRedirect;let Ze;De?(ee.setTimeout=void 0,ee.clearTimeout=void 0):(E("Running without timeout fix"),ee.setTimeout=function(tt,ct){for(var ne=arguments.length,ge=new Array(ne>2?ne-2:0),Fe=2;Fe{Ze=void 0});let st=C.createWatchProgram(ee);if(!De){let tt=st.getProgram;st.getProgram=()=>(Ze&&Ze(),Ze=void 0,tt.call(st))}return st}function pe(Je){let ee=y.default.statSync(Je).mtimeMs,je=W.get(Je);return W.set(Je,ee),je===void 0?!1:Math.abs(je-ee)>Number.EPSILON}function Ie(Je,Xe,ee){let je=Je.getProgram().getProgram();if(cn.env.TSESTREE_NO_INVALIDATION==="true")return je;pe(ee)&&(E("tsconfig has changed - triggering program update. %s",ee),c.get(ee).forEach(at=>at(ee,C.FileWatcherEventKind.Changed)),q.delete(ee));let nt=je.getSourceFile(Xe);if(nt)return je;E("File was not found in program - triggering folder update. %s",Xe);let Ze=(0,d.canonicalDirname)(Xe),st=null,tt=Ze,ct=!1;for(;st!==tt;){st=tt;let at=M.get(st);at&&(at.forEach(Pt=>{Ze!==st&&Pt(Ze,C.FileWatcherEventKind.Changed),Pt(st,C.FileWatcherEventKind.Changed)}),ct=!0),tt=(0,d.canonicalDirname)(st)}if(!ct)return E("No callback found for file, not part of this program. %s",Xe),null;if(q.delete(ee),je=Je.getProgram().getProgram(),nt=je.getSourceFile(Xe),nt)return je;E("File was still not found in program after directory update - checking file deletions. %s",Xe);let ge=je.getRootFileNames().find(at=>!y.default.existsSync(at));if(!ge)return null;let Fe=c.get((0,d.getCanonicalFileName)(ge));return Fe?(E("Marking file as deleted. %s",ge),Fe.forEach(at=>at(ge,C.FileWatcherEventKind.Deleted)),q.delete(ee),je=Je.getProgram().getProgram(),nt=je.getSourceFile(Xe),nt?je:(E("File was still not found in program after deletion check, assuming it is not part of this program. %s",Xe),null)):(E("Could not find watch callbacks for root file. %s",ge),je)}}}),qV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(W,K,ce,Ce){Ce===void 0&&(Ce=ce);var me=Object.getOwnPropertyDescriptor(K,ce);(!me||("get"in me?!K.__esModule:me.writable||me.configurable))&&(me={enumerable:!0,get:function(){return K[ce]}}),Object.defineProperty(W,Ce,me)}:function(W,K,ce,Ce){Ce===void 0&&(Ce=ce),W[Ce]=K[ce]}),v=a&&a.__setModuleDefault||(Object.create?function(W,K){Object.defineProperty(W,"default",{enumerable:!0,value:K})}:function(W,K){W.default=K}),h=a&&a.__importStar||function(W){if(W&&W.__esModule)return W;var K={};if(W!=null)for(var ce in W)ce!=="default"&&Object.prototype.hasOwnProperty.call(W,ce)&&_(K,W,ce);return v(K,W),K},D=a&&a.__importDefault||function(W){return W&&W.__esModule?W:{default:W}};Object.defineProperty(a,"__esModule",{value:!0}),a.createProjectProgram=void 0;var P=D(Ga()),y=D(_o()),m=h(vr()),C=E1(),d=FV(),E=l5(),I=d_(),c=(0,P.default)("typescript-eslint:typescript-estree:createProjectProgram"),M=[m.Extension.Ts,m.Extension.Tsx,m.Extension.Js,m.Extension.Jsx,m.Extension.Mjs,m.Extension.Mts,m.Extension.Cjs,m.Extension.Cts];function q(W){c("Creating project program for: %s",W.filePath);let K=(0,E.getWatchProgramsForProjects)(W),ce=(0,C.firstDefined)(K,Ie=>(0,I.getAstFromProgram)(Ie,W));if(ce||W.createDefaultProgram)return ce;let Ce=Ie=>(0,d.describeFilePath)(Ie,W.tsconfigRootDir),me=(0,d.describeFilePath)(W.filePath,W.tsconfigRootDir),Pe=W.projects.map(Ce),te=Pe.length===1?Pe[0]:` +${Pe.map(Ie=>`- ${Ie}`).join(` +`)}`,he=[`ESLint was configured to run on \`${me}\` using \`parserOptions.project\`: ${te}`],De=!1,R=W.extraFileExtensions||[];R.forEach(Ie=>{Ie.startsWith(".")||he.push(`Found unexpected extension \`${Ie}\` specified with the \`parserOptions.extraFileExtensions\` option. Did you mean \`.${Ie}\`?`),M.includes(Ie)&&he.push(`You unnecessarily included the extension \`${Ie}\` with the \`parserOptions.extraFileExtensions\` option. This extension is already handled by the parser by default.`)});let pe=y.default.extname(W.filePath);if(!M.includes(pe)){let Ie=`The extension for the file (\`${pe}\`) is non-standard`;R.length>0?R.includes(pe)||(he.push(`${Ie}. It should be added to your existing \`parserOptions.extraFileExtensions\`.`),De=!0):(he.push(`${Ie}. You should add \`parserOptions.extraFileExtensions\` to your config.`),De=!0)}if(!De){let[Ie,Je]=W.projects.length===1?["that TSConfig does not","that TSConfig"]:["none of those TSConfigs","one of those TSConfigs"];he.push(`However, ${Ie} include this file. Either:`,"- Change ESLint's list of included files to not include this file",`- Change ${Je} to include this file`,"- Create a new TSConfig that includes this file and include it in your parserOptions.project","See the typescript-eslint docs for more info: https://typescript-eslint.io/linting/troubleshooting#i-get-errors-telling-me-eslint-was-configured-to-run--however-that-tsconfig-does-not--none-of-those-tsconfigs-include-this-file")}throw new Error(he.join(` +`))}a.createProjectProgram=q}}),UV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(E,I,c,M){M===void 0&&(M=c);var q=Object.getOwnPropertyDescriptor(I,c);(!q||("get"in q?!I.__esModule:q.writable||q.configurable))&&(q={enumerable:!0,get:function(){return I[c]}}),Object.defineProperty(E,M,q)}:function(E,I,c,M){M===void 0&&(M=c),E[M]=I[c]}),v=a&&a.__setModuleDefault||(Object.create?function(E,I){Object.defineProperty(E,"default",{enumerable:!0,value:I})}:function(E,I){E.default=I}),h=a&&a.__importStar||function(E){if(E&&E.__esModule)return E;var I={};if(E!=null)for(var c in E)c!=="default"&&Object.prototype.hasOwnProperty.call(E,c)&&_(I,E,c);return v(I,E),I},D=a&&a.__importDefault||function(E){return E&&E.__esModule?E:{default:E}};Object.defineProperty(a,"__esModule",{value:!0}),a.createSourceFile=void 0;var P=D(Ga()),y=h(vr()),m=gT(),C=(0,P.default)("typescript-eslint:typescript-estree:createSourceFile");function d(E){return C("Getting AST without type information in %s mode for: %s",E.jsx?"TSX":"TS",E.filePath),y.createSourceFile(E.filePath,E.code,y.ScriptTarget.Latest,!0,(0,m.getScriptKind)(E.filePath,E.jsx))}a.createSourceFile=d}}),u5=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/useProvidedPrograms.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(q,W,K,ce){ce===void 0&&(ce=K);var Ce=Object.getOwnPropertyDescriptor(W,K);(!Ce||("get"in Ce?!W.__esModule:Ce.writable||Ce.configurable))&&(Ce={enumerable:!0,get:function(){return W[K]}}),Object.defineProperty(q,ce,Ce)}:function(q,W,K,ce){ce===void 0&&(ce=K),q[ce]=W[K]}),v=a&&a.__setModuleDefault||(Object.create?function(q,W){Object.defineProperty(q,"default",{enumerable:!0,value:W})}:function(q,W){q.default=W}),h=a&&a.__importStar||function(q){if(q&&q.__esModule)return q;var W={};if(q!=null)for(var K in q)K!=="default"&&Object.prototype.hasOwnProperty.call(q,K)&&_(W,q,K);return v(W,q),W},D=a&&a.__importDefault||function(q){return q&&q.__esModule?q:{default:q}};Object.defineProperty(a,"__esModule",{value:!0}),a.createProgramFromConfigFile=a.useProvidedPrograms=void 0;var P=D(Ga()),y=h(yT()),m=h(_o()),C=h(vr()),d=d_(),E=(0,P.default)("typescript-eslint:typescript-estree:useProvidedProgram");function I(q,W){E("Retrieving ast for %s from provided program instance(s)",W.filePath);let K;for(let ce of q)if(K=(0,d.getAstFromProgram)(ce,W),K)break;if(!K){let Ce=['"parserOptions.programs" has been provided for @typescript-eslint/parser.',`The file was not found in any of the provided program instance(s): ${m.relative(W.tsconfigRootDir||"/prettier-security-dirname-placeholder",W.filePath)}`];throw new Error(Ce.join(` +`))}return K.program.getTypeChecker(),K}a.useProvidedPrograms=I;function c(q,W){if(C.sys===void 0)throw new Error("`createProgramFromConfigFile` is only supported in a Node-like environment.");let ce=C.getParsedCommandLineOfConfigFile(q,d.CORE_COMPILER_OPTIONS,{onUnRecoverableConfigFileDiagnostic:me=>{throw new Error(M([me]))},fileExists:y.existsSync,getCurrentDirectory:()=>W&&m.resolve(W)||"/prettier-security-dirname-placeholder",readDirectory:C.sys.readDirectory,readFile:me=>y.readFileSync(me,"utf-8"),useCaseSensitiveFileNames:C.sys.useCaseSensitiveFileNames});if(ce.errors.length)throw new Error(M(ce.errors));let Ce=C.createCompilerHost(ce.options,!0);return C.createProgram(ce.fileNames,ce.options,Ce)}a.createProgramFromConfigFile=c;function M(q){return C.formatDiagnostics(q,{getCanonicalFileName:W=>W,getCurrentDirectory:cn.cwd,getNewLine:()=>` +`})}}}),p5=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/ExpiringCache.js"(a){"use strict";ke();var _=a&&a.__classPrivateFieldSet||function(m,C,d,E,I){if(E==="m")throw new TypeError("Private method is not writable");if(E==="a"&&!I)throw new TypeError("Private accessor was defined without a setter");if(typeof C=="function"?m!==C||!I:!C.has(m))throw new TypeError("Cannot write private member to an object whose class did not declare it");return E==="a"?I.call(m,d):I?I.value=d:C.set(m,d),d},v=a&&a.__classPrivateFieldGet||function(m,C,d,E){if(d==="a"&&!E)throw new TypeError("Private accessor was defined without a getter");if(typeof C=="function"?m!==C||!E:!C.has(m))throw new TypeError("Cannot read private member from an object whose class did not declare it");return d==="m"?E:d==="a"?E.call(m):E?E.value:C.get(m)},h,D;Object.defineProperty(a,"__esModule",{value:!0}),a.ExpiringCache=a.DEFAULT_TSCONFIG_CACHE_DURATION_SECONDS=void 0,a.DEFAULT_TSCONFIG_CACHE_DURATION_SECONDS=30;var P=[0,0],y=class{constructor(m){h.set(this,void 0),D.set(this,new Map),_(this,h,m,"f")}set(m,C){return v(this,D,"f").set(m,{value:C,lastSeen:v(this,h,"f")==="Infinity"?P:cn.hrtime()}),this}get(m){let C=v(this,D,"f").get(m);if((C==null?void 0:C.value)!=null){if(v(this,h,"f")==="Infinity"||cn.hrtime(C.lastSeen)[0]1&&M.length>=E.tsconfigRootDir.length);throw new Error(`project was set to \`true\` but couldn't find any tsconfig.json relative to '${E.filePath}' within '${E.tsconfigRootDir}'.`)}a.getProjectConfigFiles=d}}),WV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/inferSingleRun.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.inferSingleRun=void 0;var _=_o();function v(h){return(h==null?void 0:h.project)==null||(h==null?void 0:h.programs)!=null||cn.env.TSESTREE_SINGLE_RUN==="false"?!1:!!(cn.env.TSESTREE_SINGLE_RUN==="true"||h!=null&&h.allowAutomaticSingleRunInference&&(cn.env.CI==="true"||cn.argv[1].endsWith((0,_.normalize)("node_modules/.bin/eslint"))))}a.inferSingleRun=v}}),VV=Ne({"node_modules/is-extglob/index.js"(a,_){ke(),_.exports=function(h){if(typeof h!="string"||h==="")return!1;for(var D;D=/(\\).|([@?!+*]\(.*\))/g.exec(h);){if(D[2])return!0;h=h.slice(D.index+D[0].length)}return!1}}}),HV=Ne({"node_modules/is-glob/index.js"(a,_){ke();var v=VV(),h={"{":"}","(":")","[":"]"},D=function(y){if(y[0]==="!")return!0;for(var m=0,C=-2,d=-2,E=-2,I=-2,c=-2;mm&&(c===-1||c>d||(c=y.indexOf("\\",m),c===-1||c>d)))||E!==-1&&y[m]==="{"&&y[m+1]!=="}"&&(E=y.indexOf("}",m),E>m&&(c=y.indexOf("\\",m),c===-1||c>E))||I!==-1&&y[m]==="("&&y[m+1]==="?"&&/[:!=]/.test(y[m+2])&&y[m+3]!==")"&&(I=y.indexOf(")",m),I>m&&(c=y.indexOf("\\",m),c===-1||c>I))||C!==-1&&y[m]==="("&&y[m+1]!=="|"&&(CC&&(c=y.indexOf("\\",C),c===-1||c>I))))return!0;if(y[m]==="\\"){var M=y[m+1];m+=2;var q=h[M];if(q){var W=y.indexOf(q,m);W!==-1&&(m=W+1)}if(y[m]==="!")return!0}else m++}return!1},P=function(y){if(y[0]==="!")return!0;for(var m=0;m(typeof pe=="string"&&R.push(pe),R),[]).map(R=>R.startsWith("!")?R:`!${R}`),me=I({project:ce,projectFolderIgnoreList:Ce,tsconfigRootDir:M.tsconfigRootDir});if(C==null)C=new y.ExpiringCache(M.singleRun?"Infinity":(K=(W=M.cacheLifetime)===null||W===void 0?void 0:W.glob)!==null&&K!==void 0?K:y.DEFAULT_TSCONFIG_CACHE_DURATION_SECONDS);else{let R=C.get(me);if(R)return R}let Pe=ce.filter(R=>!(0,D.default)(R)),te=ce.filter(R=>(0,D.default)(R)),he=new Set(Pe.concat(te.length===0?[]:(0,h.sync)([...te,...Ce],{cwd:M.tsconfigRootDir})).map(R=>(0,P.getCanonicalFileName)((0,P.ensureAbsolutePath)(R,M.tsconfigRootDir))));m("parserOptions.project (excluding ignored) matched projects: %s",he);let De=Array.from(he);return C.set(me,De),De}a.resolveProjectList=E;function I(M){let{project:q,projectFolderIgnoreList:W,tsconfigRootDir:K}=M,ce={tsconfigRootDir:K,project:q,projectFolderIgnoreList:[...W].sort()};return(0,P.createHash)(JSON.stringify(ce))}function c(){C==null||C.clear(),C=null}a.clearGlobResolutionCache=c}}),GV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(M,q,W,K){K===void 0&&(K=W);var ce=Object.getOwnPropertyDescriptor(q,W);(!ce||("get"in ce?!q.__esModule:ce.writable||ce.configurable))&&(ce={enumerable:!0,get:function(){return q[W]}}),Object.defineProperty(M,K,ce)}:function(M,q,W,K){K===void 0&&(K=W),M[K]=q[W]}),v=a&&a.__setModuleDefault||(Object.create?function(M,q){Object.defineProperty(M,"default",{enumerable:!0,value:q})}:function(M,q){M.default=q}),h=a&&a.__importStar||function(M){if(M&&M.__esModule)return M;var q={};if(M!=null)for(var W in M)W!=="default"&&Object.prototype.hasOwnProperty.call(M,W)&&_(q,M,W);return v(q,M),q},D=a&&a.__importDefault||function(M){return M&&M.__esModule?M:{default:M}};Object.defineProperty(a,"__esModule",{value:!0}),a.warnAboutTSVersion=void 0;var P=D(pT()),y=h(vr()),m=">=3.3.1 <5.1.0",C=["5.0.1-rc"],d=y.version,E=P.default.satisfies(d,[m].concat(C).join(" || ")),I=!1;function c(M){var q;if(!E&&!I){if(typeof cn>"u"?!1:(q=cn.stdout)===null||q===void 0?void 0:q.isTTY){let K="=============",ce=[K,"WARNING: You are currently running a version of TypeScript which is not officially supported by @typescript-eslint/typescript-estree.","You may find that it works just fine, or you may not.",`SUPPORTED TYPESCRIPT VERSIONS: ${m}`,`YOUR TYPESCRIPT VERSION: ${d}`,"Please only submit bug reports when using the officially supported version.",K];M.log(ce.join(` + +`))}I=!0}}a.warnAboutTSVersion=c}}),d5=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/createParseSettings.js"(a){"use strict";ke();var _=a&&a.__importDefault||function(W){return W&&W.__esModule?W:{default:W}};Object.defineProperty(a,"__esModule",{value:!0}),a.clearTSConfigMatchCache=a.createParseSettings=void 0;var v=_(Ga()),h=d_(),D=p5(),P=zV(),y=WV(),m=f5(),C=GV(),d=(0,v.default)("typescript-eslint:typescript-estree:parser:parseSettings:createParseSettings"),E;function I(W){let K=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var ce,Ce,me;let Pe=(0,y.inferSingleRun)(K),te=typeof K.tsconfigRootDir=="string"?K.tsconfigRootDir:"/prettier-security-dirname-placeholder",he={code:M(W),comment:K.comment===!0,comments:[],createDefaultProgram:K.createDefaultProgram===!0,debugLevel:K.debugLevel===!0?new Set(["typescript-eslint"]):Array.isArray(K.debugLevel)?new Set(K.debugLevel):new Set,errorOnTypeScriptSyntacticAndSemanticIssues:!1,errorOnUnknownASTType:K.errorOnUnknownASTType===!0,EXPERIMENTAL_useSourceOfProjectReferenceRedirect:K.EXPERIMENTAL_useSourceOfProjectReferenceRedirect===!0,extraFileExtensions:Array.isArray(K.extraFileExtensions)&&K.extraFileExtensions.every(De=>typeof De=="string")?K.extraFileExtensions:[],filePath:(0,h.ensureAbsolutePath)(typeof K.filePath=="string"&&K.filePath!==""?K.filePath:q(K.jsx),te),jsx:K.jsx===!0,loc:K.loc===!0,log:typeof K.loggerFn=="function"?K.loggerFn:K.loggerFn===!1?()=>{}:console.log,moduleResolver:(ce=K.moduleResolver)!==null&&ce!==void 0?ce:"",preserveNodeMaps:K.preserveNodeMaps!==!1,programs:Array.isArray(K.programs)?K.programs:null,projects:[],range:K.range===!0,singleRun:Pe,tokens:K.tokens===!0?[]:null,tsconfigMatchCache:E!=null?E:E=new D.ExpiringCache(Pe?"Infinity":(me=(Ce=K.cacheLifetime)===null||Ce===void 0?void 0:Ce.glob)!==null&&me!==void 0?me:D.DEFAULT_TSCONFIG_CACHE_DURATION_SECONDS),tsconfigRootDir:te};if(he.debugLevel.size>0){let De=[];he.debugLevel.has("typescript-eslint")&&De.push("typescript-eslint:*"),(he.debugLevel.has("eslint")||v.default.enabled("eslint:*,-eslint:code-path"))&&De.push("eslint:*,-eslint:code-path"),v.default.enable(De.join(","))}if(Array.isArray(K.programs)){if(!K.programs.length)throw new Error("You have set parserOptions.programs to an empty array. This will cause all files to not be found in existing programs. Either provide one or more existing TypeScript Program instances in the array, or remove the parserOptions.programs setting.");d("parserOptions.programs was provided, so parserOptions.project will be ignored.")}return he.programs||(he.projects=(0,m.resolveProjectList)({cacheLifetime:K.cacheLifetime,project:(0,P.getProjectConfigFiles)(he,K.project),projectFolderIgnoreList:K.projectFolderIgnoreList,singleRun:he.singleRun,tsconfigRootDir:te})),(0,C.warnAboutTSVersion)(he),he}a.createParseSettings=I;function c(){E==null||E.clear()}a.clearTSConfigMatchCache=c;function M(W){return typeof W!="string"?String(W):W}function q(W){return W?"estree.tsx":"estree.ts"}}}),$V=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.getFirstSemanticOrSyntacticError=void 0;var _=vr();function v(P,y){try{let m=h(P.getSyntacticDiagnostics(y));if(m.length)return D(m[0]);let C=h(P.getSemanticDiagnostics(y));return C.length?D(C[0]):void 0}catch(m){console.warn(`Warning From TSC: "${m.message}`);return}}a.getFirstSemanticOrSyntacticError=v;function h(P){return P.filter(y=>{switch(y.code){case 1013:case 1014:case 1044:case 1045:case 1048:case 1049:case 1070:case 1071:case 1085:case 1090:case 1096:case 1097:case 1098:case 1099:case 1117:case 1121:case 1123:case 1141:case 1162:case 1164:case 1172:case 1173:case 1175:case 1176:case 1190:case 1196:case 1200:case 1206:case 1211:case 1242:case 1246:case 1255:case 1308:case 2364:case 2369:case 2452:case 2462:case 8017:case 17012:case 17013:return!0}return!1})}function D(P){return Object.assign(Object.assign({},P),{message:(0,_.flattenDiagnosticMessageText)(P.messageText,_.sys.newLine)})}}}),m5=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/parser.js"(a){"use strict";ke();var _=a&&a.__importDefault||function(he){return he&&he.__esModule?he:{default:he}};Object.defineProperty(a,"__esModule",{value:!0}),a.clearParseAndGenerateServicesCalls=a.clearProgramCache=a.parseWithNodeMaps=a.parseAndGenerateServices=a.parse=void 0;var v=_(Ga()),h=LV(),D=W9(),P=jV(),y=JV(),m=qV(),C=UV(),d=u5(),E=d5(),I=$V(),c=(0,v.default)("typescript-eslint:typescript-estree:parser"),M=new Map;function q(){M.clear()}a.clearProgramCache=q;function W(he,De){return he.programs&&(0,d.useProvidedPrograms)(he.programs,he)||De&&(0,m.createProjectProgram)(he)||De&&he.createDefaultProgram&&(0,P.createDefaultProgram)(he)||(0,y.createIsolatedProgram)(he)}function K(he,De){let{ast:R}=ce(he,De,!1);return R}a.parse=K;function ce(he,De,R){let pe=(0,E.createParseSettings)(he,De);if(De!=null&&De.errorOnTypeScriptSyntacticAndSemanticIssues)throw new Error('"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()');let Ie=(0,C.createSourceFile)(pe),{estree:Je,astMaps:Xe}=(0,h.astConverter)(Ie,pe,R);return{ast:Je,esTreeNodeToTSNodeMap:Xe.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:Xe.tsNodeToESTreeNodeMap}}function Ce(he,De){return ce(he,De,!0)}a.parseWithNodeMaps=Ce;var me={};function Pe(){me={}}a.clearParseAndGenerateServicesCalls=Pe;function te(he,De){var R,pe;let Ie=(0,E.createParseSettings)(he,De);De!==void 0&&typeof De.errorOnTypeScriptSyntacticAndSemanticIssues=="boolean"&&De.errorOnTypeScriptSyntacticAndSemanticIssues&&(Ie.errorOnTypeScriptSyntacticAndSemanticIssues=!0),Ie.singleRun&&!Ie.programs&&((R=Ie.projects)===null||R===void 0?void 0:R.length)>0&&(Ie.programs={*[Symbol.iterator](){for(let st of Ie.projects){let tt=M.get(st);if(tt)yield tt;else{c("Detected single-run/CLI usage, creating Program once ahead of time for project: %s",st);let ct=(0,d.createProgramFromConfigFile)(st);M.set(st,ct),yield ct}}}});let Je=Ie.programs!=null||((pe=Ie.projects)===null||pe===void 0?void 0:pe.length)>0;Ie.singleRun&&De.filePath&&(me[De.filePath]=(me[De.filePath]||0)+1);let{ast:Xe,program:ee}=Ie.singleRun&&De.filePath&&me[De.filePath]>1?(0,y.createIsolatedProgram)(Ie):W(Ie,Je),je=typeof Ie.preserveNodeMaps=="boolean"?Ie.preserveNodeMaps:!0,{estree:nt,astMaps:Ze}=(0,h.astConverter)(Xe,Ie,je);if(ee&&Ie.errorOnTypeScriptSyntacticAndSemanticIssues){let st=(0,I.getFirstSemanticOrSyntacticError)(ee,Xe);if(st)throw(0,D.convertError)(st)}return{ast:nt,services:{hasFullTypeInformation:Je,program:ee,esTreeNodeToTSNodeMap:Ze.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:Ze.tsNodeToESTreeNodeMap}}}a.parseAndGenerateServices=te}}),KV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/clear-caches.js"(a){"use strict";ke(),Object.defineProperty(a,"__esModule",{value:!0}),a.clearProgramCache=a.clearCaches=void 0;var _=l5(),v=m5(),h=d5(),D=f5();function P(){(0,v.clearProgramCache)(),(0,_.clearWatchCaches)(),(0,h.clearTSConfigMatchCache)(),(0,D.clearGlobCache)()}a.clearCaches=P,a.clearProgramCache=P}}),XV=Ne({"node_modules/@typescript-eslint/typescript-estree/package.json"(a,_){_.exports={name:"@typescript-eslint/typescript-estree",version:"5.55.0",description:"A parser that converts TypeScript source code into an ESTree compatible form",main:"dist/index.js",types:"dist/index.d.ts",files:["dist","_ts3.4","README.md","LICENSE"],engines:{node:"^12.22.0 || ^14.17.0 || >=16.0.0"},repository:{type:"git",url:"https://github.com/typescript-eslint/typescript-eslint.git",directory:"packages/typescript-estree"},bugs:{url:"https://github.com/typescript-eslint/typescript-eslint/issues"},license:"BSD-2-Clause",keywords:["ast","estree","ecmascript","javascript","typescript","parser","syntax"],scripts:{build:"tsc -b tsconfig.build.json",postbuild:"downlevel-dts dist _ts3.4/dist",clean:"tsc -b tsconfig.build.json --clean",postclean:"rimraf dist && rimraf _ts3.4 && rimraf coverage",format:'prettier --write "./**/*.{ts,mts,cts,tsx,js,mjs,cjs,jsx,json,md,css}" --ignore-path ../../.prettierignore',lint:"nx lint",test:"jest --coverage",typecheck:"tsc -p tsconfig.json --noEmit"},dependencies:{"@typescript-eslint/types":"5.55.0","@typescript-eslint/visitor-keys":"5.55.0",debug:"^4.3.4",globby:"^11.1.0","is-glob":"^4.0.3",semver:"^7.3.7",tsutils:"^3.21.0"},devDependencies:{"@babel/code-frame":"*","@babel/parser":"*","@types/babel__code-frame":"*","@types/debug":"*","@types/glob":"*","@types/is-glob":"*","@types/semver":"*","@types/tmp":"*",glob:"*","jest-specific-snapshot":"*","make-dir":"*",tmp:"*",typescript:"*"},peerDependenciesMeta:{typescript:{optional:!0}},funding:{type:"opencollective",url:"https://opencollective.com/typescript-eslint"},typesVersions:{"<3.8":{"*":["_ts3.4/*"]}},gitHead:"877d73327fca3bdbe7e170e8b3a906d090a6de37"}}}),YV=Ne({"node_modules/@typescript-eslint/typescript-estree/dist/index.js"(a){"use strict";ke();var _=a&&a.__createBinding||(Object.create?function(C,d,E,I){I===void 0&&(I=E);var c=Object.getOwnPropertyDescriptor(d,E);(!c||("get"in c?!d.__esModule:c.writable||c.configurable))&&(c={enumerable:!0,get:function(){return d[E]}}),Object.defineProperty(C,I,c)}:function(C,d,E,I){I===void 0&&(I=E),C[I]=d[E]}),v=a&&a.__exportStar||function(C,d){for(var E in C)E!=="default"&&!Object.prototype.hasOwnProperty.call(d,E)&&_(d,C,E)};Object.defineProperty(a,"__esModule",{value:!0}),a.version=a.visitorKeys=a.typescriptVersionIsAtLeast=a.createProgram=a.simpleTraverse=a.parseWithNodeMaps=a.parseAndGenerateServices=a.parse=void 0;var h=m5();Object.defineProperty(a,"parse",{enumerable:!0,get:function(){return h.parse}}),Object.defineProperty(a,"parseAndGenerateServices",{enumerable:!0,get:function(){return h.parseAndGenerateServices}}),Object.defineProperty(a,"parseWithNodeMaps",{enumerable:!0,get:function(){return h.parseWithNodeMaps}});var D=Q9();Object.defineProperty(a,"simpleTraverse",{enumerable:!0,get:function(){return D.simpleTraverse}}),v(x1(),a);var P=u5();Object.defineProperty(a,"createProgram",{enumerable:!0,get:function(){return P.createProgramFromConfigFile}}),v(gT(),a);var y=S1();Object.defineProperty(a,"typescriptVersionIsAtLeast",{enumerable:!0,get:function(){return y.typescriptVersionIsAtLeast}}),v(fT(),a),v(KV(),a);var m=Y9();Object.defineProperty(a,"visitorKeys",{enumerable:!0,get:function(){return m.visitorKeys}}),a.version=XV().version}}),QV=Ne({"src/language-js/parse/typescript.js"(a,_){ke();var v=S9(),h=_W(),D=yW(),P=vW(),y=EW(),{throwErrorForInvalidNodes:m}=wW(),C={loc:!0,range:!0,comment:!0,jsx:!0,tokens:!0,loggerFn:!1,project:[]};function d(c){let{message:M,lineNumber:q,column:W}=c;return typeof q!="number"?c:v(M,{start:{line:q,column:W+1}})}function E(c,M){let q=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},W=P(c),K=I(c),{parseWithNodeMaps:ce}=YV(),{result:Ce,error:me}=h(()=>ce(W,Object.assign(Object.assign({},C),{},{jsx:K})),()=>ce(W,Object.assign(Object.assign({},C),{},{jsx:!K})));if(!Ce)throw d(me);return q.originalText=c,m(Ce,q),y(Ce.ast,q)}function I(c){return new RegExp(["(?:^[^\"'`]*)"].join(""),"m").test(c)}_.exports={parsers:{typescript:D(E)}}}}),vG=QV();export{vG as default}; diff --git a/node_modules/prettier/esm/parser-yaml.mjs b/node_modules/prettier/esm/parser-yaml.mjs new file mode 100644 index 0000000..87f118a --- /dev/null +++ b/node_modules/prettier/esm/parser-yaml.mjs @@ -0,0 +1,150 @@ +var Ye=Object.defineProperty,vt=Object.getOwnPropertyDescriptor,De=Object.getOwnPropertyNames,yt=Object.prototype.hasOwnProperty,Ke=(s,e)=>function(){return s&&(e=(0,s[De(s)[0]])(s=0)),e},D=(s,e)=>function(){return e||(0,s[De(s)[0]])((e={exports:{}}).exports,e),e.exports},bt=(s,e)=>{for(var r in e)Ye(s,r,{get:e[r],enumerable:!0})},wt=(s,e,r,c)=>{if(e&&typeof e=="object"||typeof e=="function")for(let h of De(e))!yt.call(s,h)&&h!==r&&Ye(s,h,{get:()=>e[h],enumerable:!(c=vt(e,h))||c.enumerable});return s},se=s=>wt(Ye({},"__esModule",{value:!0}),s),Te,Y=Ke({""(){Te={env:{},argv:[]}}}),St=D({"src/common/parser-create-error.js"(s,e){"use strict";Y();function r(c,h){let d=new SyntaxError(c+" ("+h.start.line+":"+h.start.column+")");return d.loc=h,d}e.exports=r}}),Et=D({"src/language-yaml/pragma.js"(s,e){"use strict";Y();function r(d){return/^\s*@(?:prettier|format)\s*$/.test(d)}function c(d){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/.test(d)}function h(d){return`# @format + +${d}`}e.exports={isPragma:r,hasPragma:c,insertPragma:h}}}),Mt=D({"src/language-yaml/loc.js"(s,e){"use strict";Y();function r(h){return h.position.start.offset}function c(h){return h.position.end.offset}e.exports={locStart:r,locEnd:c}}}),te={};bt(te,{__assign:()=>qe,__asyncDelegator:()=>Bt,__asyncGenerator:()=>$t,__asyncValues:()=>jt,__await:()=>Ce,__awaiter:()=>Ct,__classPrivateFieldGet:()=>Wt,__classPrivateFieldSet:()=>Vt,__createBinding:()=>Pt,__decorate:()=>At,__exportStar:()=>It,__extends:()=>Ot,__generator:()=>kt,__importDefault:()=>Ft,__importStar:()=>Dt,__makeTemplateObject:()=>Yt,__metadata:()=>Tt,__param:()=>Nt,__read:()=>Je,__rest:()=>Lt,__spread:()=>Rt,__spreadArrays:()=>qt,__values:()=>je});function Ot(s,e){Re(s,e);function r(){this.constructor=s}s.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}function Lt(s,e){var r={};for(var c in s)Object.prototype.hasOwnProperty.call(s,c)&&e.indexOf(c)<0&&(r[c]=s[c]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var h=0,c=Object.getOwnPropertySymbols(s);h=0;M--)(y=s[M])&&(d=(h<3?y(d):h>3?y(e,r,d):y(e,r))||d);return h>3&&d&&Object.defineProperty(e,r,d),d}function Nt(s,e){return function(r,c){e(r,c,s)}}function Tt(s,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(s,e)}function Ct(s,e,r,c){function h(d){return d instanceof r?d:new r(function(y){y(d)})}return new(r||(r=Promise))(function(d,y){function M(E){try{w(c.next(E))}catch(T){y(T)}}function k(E){try{w(c.throw(E))}catch(T){y(T)}}function w(E){E.done?d(E.value):h(E.value).then(M,k)}w((c=c.apply(s,e||[])).next())})}function kt(s,e){var r={label:0,sent:function(){if(d[0]&1)throw d[1];return d[1]},trys:[],ops:[]},c,h,d,y;return y={next:M(0),throw:M(1),return:M(2)},typeof Symbol=="function"&&(y[Symbol.iterator]=function(){return this}),y;function M(w){return function(E){return k([w,E])}}function k(w){if(c)throw new TypeError("Generator is already executing.");for(;r;)try{if(c=1,h&&(d=w[0]&2?h.return:w[0]?h.throw||((d=h.return)&&d.call(h),0):h.next)&&!(d=d.call(h,w[1])).done)return d;switch(h=0,d&&(w=[w[0]&2,d.value]),w[0]){case 0:case 1:d=w;break;case 4:return r.label++,{value:w[1],done:!1};case 5:r.label++,h=w[1],w=[0];continue;case 7:w=r.ops.pop(),r.trys.pop();continue;default:if(d=r.trys,!(d=d.length>0&&d[d.length-1])&&(w[0]===6||w[0]===2)){r=0;continue}if(w[0]===3&&(!d||w[1]>d[0]&&w[1]=s.length&&(s=void 0),{value:s&&s[c++],done:!s}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Je(s,e){var r=typeof Symbol=="function"&&s[Symbol.iterator];if(!r)return s;var c=r.call(s),h,d=[],y;try{for(;(e===void 0||e-- >0)&&!(h=c.next()).done;)d.push(h.value)}catch(M){y={error:M}}finally{try{h&&!h.done&&(r=c.return)&&r.call(c)}finally{if(y)throw y.error}}return d}function Rt(){for(var s=[],e=0;e1||M(I,C)})})}function M(I,C){try{k(c[I](C))}catch(q){T(d[0][3],q)}}function k(I){I.value instanceof Ce?Promise.resolve(I.value.v).then(w,E):T(d[0][2],I)}function w(I){M("next",I)}function E(I){M("throw",I)}function T(I,C){I(C),d.shift(),d.length&&M(d[0][0],d[0][1])}}function Bt(s){var e,r;return e={},c("next"),c("throw",function(h){throw h}),c("return"),e[Symbol.iterator]=function(){return this},e;function c(h,d){e[h]=s[h]?function(y){return(r=!r)?{value:Ce(s[h](y)),done:h==="return"}:d?d(y):y}:d}}function jt(s){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=s[Symbol.asyncIterator],r;return e?e.call(s):(s=typeof je=="function"?je(s):s[Symbol.iterator](),r={},c("next"),c("throw"),c("return"),r[Symbol.asyncIterator]=function(){return this},r);function c(d){r[d]=s[d]&&function(y){return new Promise(function(M,k){y=s[d](y),h(M,k,y.done,y.value)})}}function h(d,y,M,k){Promise.resolve(k).then(function(w){d({value:w,done:M})},y)}}function Yt(s,e){return Object.defineProperty?Object.defineProperty(s,"raw",{value:e}):s.raw=e,s}function Dt(s){if(s&&s.__esModule)return s;var e={};if(s!=null)for(var r in s)Object.hasOwnProperty.call(s,r)&&(e[r]=s[r]);return e.default=s,e}function Ft(s){return s&&s.__esModule?s:{default:s}}function Wt(s,e){if(!e.has(s))throw new TypeError("attempted to get private field on non-instance");return e.get(s)}function Vt(s,e,r){if(!e.has(s))throw new TypeError("attempted to set private field on non-instance");return e.set(s,r),r}var Re,qe,ie=Ke({"node_modules/tslib/tslib.es6.js"(){Y(),Re=function(s,e){return Re=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,c){r.__proto__=c}||function(r,c){for(var h in c)c.hasOwnProperty(h)&&(r[h]=c[h])},Re(s,e)},qe=function(){return qe=Object.assign||function(e){for(var r,c=1,h=arguments.length;cthis.string.length)return null;for(var y=0,M=this.offsets;M[y+1]<=d;)y++;var k=d-M[y];return{line:y,column:k}},h.prototype.indexForLocation=function(d){var y=d.line,M=d.column;return y<0||y>=this.offsets.length||M<0||M>this.lengthOfLine(y)?null:this.offsets[y]+M},h.prototype.lengthOfLine=function(d){var y=this.offsets[d],M=d===this.offsets.length-1?this.string.length:this.offsets[d+1];return M-y},h}();s.LinesAndColumns=c,s.default=c}}),Ut=D({"node_modules/yaml-unist-parser/lib/utils/define-parents.js"(s){"use strict";Y(),s.__esModule=!0;function e(r,c){c===void 0&&(c=null),"children"in r&&r.children.forEach(function(h){return e(h,r)}),"anchor"in r&&r.anchor&&e(r.anchor,r),"tag"in r&&r.tag&&e(r.tag,r),"leadingComments"in r&&r.leadingComments.forEach(function(h){return e(h,r)}),"middleComments"in r&&r.middleComments.forEach(function(h){return e(h,r)}),"indicatorComment"in r&&r.indicatorComment&&e(r.indicatorComment,r),"trailingComment"in r&&r.trailingComment&&e(r.trailingComment,r),"endComments"in r&&r.endComments.forEach(function(h){return e(h,r)}),Object.defineProperty(r,"_parent",{value:c,enumerable:!1})}s.defineParents=e}}),Fe=D({"node_modules/yaml-unist-parser/lib/utils/get-point-text.js"(s){"use strict";Y(),s.__esModule=!0;function e(r){return r.line+":"+r.column}s.getPointText=e}}),Kt=D({"node_modules/yaml-unist-parser/lib/attach.js"(s){"use strict";Y(),s.__esModule=!0;var e=Ut(),r=Fe();function c(w){e.defineParents(w);var E=h(w),T=w.children.slice();w.comments.sort(function(I,C){return I.position.start.offset-C.position.end.offset}).filter(function(I){return!I._parent}).forEach(function(I){for(;T.length>1&&I.position.start.line>T[0].position.end.line;)T.shift();y(I,E,T[0])})}s.attachComments=c;function h(w){for(var E=Array.from(new Array(w.position.end.line),function(){return{}}),T=0,I=w.comments;T1&&E.type!=="document"&&E.type!=="documentHead"){var C=E.position.end,q=w[C.line-1].trailingAttachableNode;(!q||C.column>=q.position.end.column)&&(w[C.line-1].trailingAttachableNode=E)}if(E.type!=="root"&&E.type!=="document"&&E.type!=="documentHead"&&E.type!=="documentBody")for(var R=E.position,T=R.start,C=R.end,B=[C.line].concat(T.line===C.line?[]:T.line),U=0,f=B;U=t.position.end.column)&&(w[i-1].trailingNode=E)}"children"in E&&E.children.forEach(function(n){d(w,n)})}}function y(w,E,T){var I=w.position.start.line,C=E[I-1].trailingAttachableNode;if(C){if(C.trailingComment)throw new Error("Unexpected multiple trailing comment at "+r.getPointText(w.position.start));e.defineParents(w,C),C.trailingComment=w;return}for(var q=I;q>=T.position.start.line;q--){var R=E[q-1].trailingNode,B=void 0;if(R)B=R;else if(q!==I&&E[q-1].comment)B=E[q-1].comment._parent;else continue;if((B.type==="sequence"||B.type==="mapping")&&(B=B.children[0]),B.type==="mappingItem"){var U=B.children,f=U[0],i=U[1];B=k(f)?f:i}for(;;){if(M(B,w)){e.defineParents(w,B),B.endComments.push(w);return}if(!B._parent)break;B=B._parent}break}for(var q=I+1;q<=T.position.end.line;q++){var t=E[q-1].leadingAttachableNode;if(t){e.defineParents(w,t),t.leadingComments.push(w);return}}var n=T.children[1];e.defineParents(w,n),n.endComments.push(w)}function M(w,E){if(w.position.start.offsetE.position.end.offset)switch(w.type){case"flowMapping":case"flowSequence":return w.children.length===0||E.position.start.line>w.children[w.children.length-1].position.end.line}if(E.position.end.offsetw.position.start.column;case"mappingKey":case"mappingValue":return E.position.start.column>w._parent.position.start.column&&(w.children.length===0||w.children.length===1&&w.children[0].type!=="blockFolded"&&w.children[0].type!=="blockLiteral")&&(w.type==="mappingValue"||k(w));default:return!1}}function k(w){return w.position.start!==w.position.end&&(w.children.length===0||w.position.start.offset!==w.children[0].position.start.offset)}}}),me=D({"node_modules/yaml-unist-parser/lib/factories/node.js"(s){"use strict";Y(),s.__esModule=!0;function e(r,c){return{type:r,position:c}}s.createNode=e}}),Jt=D({"node_modules/yaml-unist-parser/lib/factories/root.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=me();function c(h,d,y){return e.__assign(e.__assign({},r.createNode("root",h)),{children:d,comments:y})}s.createRoot=c}}),xt=D({"node_modules/yaml-unist-parser/lib/preprocess.js"(s){"use strict";Y(),s.__esModule=!0;function e(r){switch(r.type){case"DOCUMENT":for(var c=r.contents.length-1;c>=0;c--)r.contents[c].type==="BLANK_LINE"?r.contents.splice(c,1):e(r.contents[c]);for(var c=r.directives.length-1;c>=0;c--)r.directives[c].type==="BLANK_LINE"&&r.directives.splice(c,1);break;case"FLOW_MAP":case"FLOW_SEQ":case"MAP":case"SEQ":for(var c=r.items.length-1;c>=0;c--){var h=r.items[c];"char"in h||(h.type==="BLANK_LINE"?r.items.splice(c,1):e(h))}break;case"MAP_KEY":case"MAP_VALUE":case"SEQ_ITEM":r.node&&e(r.node);break;case"ALIAS":case"BLANK_LINE":case"BLOCK_FOLDED":case"BLOCK_LITERAL":case"COMMENT":case"DIRECTIVE":case"PLAIN":case"QUOTE_DOUBLE":case"QUOTE_SINGLE":break;default:throw new Error("Unexpected node type "+JSON.stringify(r.type))}}s.removeCstBlankLine=e}}),Oe=D({"node_modules/yaml-unist-parser/lib/factories/leading-comment-attachable.js"(s){"use strict";Y(),s.__esModule=!0;function e(){return{leadingComments:[]}}s.createLeadingCommentAttachable=e}}),$e=D({"node_modules/yaml-unist-parser/lib/factories/trailing-comment-attachable.js"(s){"use strict";Y(),s.__esModule=!0;function e(r){return r===void 0&&(r=null),{trailingComment:r}}s.createTrailingCommentAttachable=e}}),Se=D({"node_modules/yaml-unist-parser/lib/factories/comment-attachable.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=Oe(),c=$e();function h(){return e.__assign(e.__assign({},r.createLeadingCommentAttachable()),c.createTrailingCommentAttachable())}s.createCommentAttachable=h}}),Ht=D({"node_modules/yaml-unist-parser/lib/factories/alias.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=Se(),c=me();function h(d,y,M){return e.__assign(e.__assign(e.__assign(e.__assign({},c.createNode("alias",d)),r.createCommentAttachable()),y),{value:M})}s.createAlias=h}}),Gt=D({"node_modules/yaml-unist-parser/lib/transforms/alias.js"(s){"use strict";Y(),s.__esModule=!0;var e=Ht();function r(c,h){var d=c.cstNode;return e.createAlias(h.transformRange({origStart:d.valueRange.origStart-1,origEnd:d.valueRange.origEnd}),h.transformContent(c),d.rawValue)}s.transformAlias=r}}),zt=D({"node_modules/yaml-unist-parser/lib/factories/block-folded.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te));function r(c){return e.__assign(e.__assign({},c),{type:"blockFolded"})}s.createBlockFolded=r}}),Zt=D({"node_modules/yaml-unist-parser/lib/factories/block-value.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=Oe(),c=me();function h(d,y,M,k,w,E){return e.__assign(e.__assign(e.__assign(e.__assign({},c.createNode("blockValue",d)),r.createLeadingCommentAttachable()),y),{chomping:M,indent:k,value:w,indicatorComment:E})}s.createBlockValue=h}}),xe=D({"node_modules/yaml-unist-parser/lib/constants.js"(s){"use strict";Y(),s.__esModule=!0;var e;(function(r){r.Tag="!",r.Anchor="&",r.Comment="#"})(e=s.PropLeadingCharacter||(s.PropLeadingCharacter={}))}}),Xt=D({"node_modules/yaml-unist-parser/lib/factories/anchor.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=me();function c(h,d){return e.__assign(e.__assign({},r.createNode("anchor",h)),{value:d})}s.createAnchor=c}}),We=D({"node_modules/yaml-unist-parser/lib/factories/comment.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=me();function c(h,d){return e.__assign(e.__assign({},r.createNode("comment",h)),{value:d})}s.createComment=c}}),er=D({"node_modules/yaml-unist-parser/lib/factories/content.js"(s){"use strict";Y(),s.__esModule=!0;function e(r,c,h){return{anchor:c,tag:r,middleComments:h}}s.createContent=e}}),tr=D({"node_modules/yaml-unist-parser/lib/factories/tag.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=me();function c(h,d){return e.__assign(e.__assign({},r.createNode("tag",h)),{value:d})}s.createTag=c}}),He=D({"node_modules/yaml-unist-parser/lib/transforms/content.js"(s){"use strict";Y(),s.__esModule=!0;var e=xe(),r=Xt(),c=We(),h=er(),d=tr();function y(M,k,w){w===void 0&&(w=function(){return!1});for(var E=M.cstNode,T=[],I=null,C=null,q=null,R=0,B=E.props;R=0;U--){var f=w.contents[U];if(f.type==="COMMENT"){var i=E.transformNode(f);T&&T.line===i.position.start.line?R.unshift(i):B?I.unshift(i):i.position.start.offset>=w.valueRange.origEnd?q.unshift(i):I.unshift(i)}else B=!0}if(q.length>1)throw new Error("Unexpected multiple document trailing comments at "+d.getPointText(q[1].position.start));if(R.length>1)throw new Error("Unexpected multiple documentHead trailing comments at "+d.getPointText(R[1].position.start));return{comments:I,endComments:C,documentTrailingComment:c.getLast(q)||null,documentHeadTrailingComment:c.getLast(R)||null}}function k(w,E,T){var I=h.getMatchIndex(T.text.slice(w.valueRange.origEnd),/^\.\.\./),C=I===-1?w.valueRange.origEnd:Math.max(0,w.valueRange.origEnd-1);T.text[C-1]==="\r"&&C--;var q=T.transformRange({origStart:E!==null?E.position.start.offset:C,origEnd:C}),R=I===-1?q.end:T.transformOffset(w.valueRange.origEnd+3);return{position:q,documentEndPoint:R}}}}),fr=D({"node_modules/yaml-unist-parser/lib/factories/document-head.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=Ee(),c=me(),h=$e();function d(y,M,k,w){return e.__assign(e.__assign(e.__assign(e.__assign({},c.createNode("documentHead",y)),r.createEndCommentAttachable(k)),h.createTrailingCommentAttachable(w)),{children:M})}s.createDocumentHead=d}}),mr=D({"node_modules/yaml-unist-parser/lib/transforms/document-head.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=fr(),c=ze();function h(M,k){var w,E=M.cstNode,T=d(E,k),I=T.directives,C=T.comments,q=T.endComments,R=y(E,I,k),B=R.position,U=R.endMarkerPoint;(w=k.comments).push.apply(w,e.__spreadArrays(C,q));var f=function(i){return i&&k.comments.push(i),r.createDocumentHead(B,I,q,i)};return{createDocumentHeadWithTrailingComment:f,documentHeadEndMarkerPoint:U}}s.transformDocumentHead=h;function d(M,k){for(var w=[],E=[],T=[],I=!1,C=M.directives.length-1;C>=0;C--){var q=k.transformNode(M.directives[C]);q.type==="comment"?I?E.unshift(q):T.unshift(q):(I=!0,w.unshift(q))}return{directives:w,comments:E,endComments:T}}function y(M,k,w){var E=c.getMatchIndex(w.text.slice(0,M.valueRange.origStart),/---\s*$/);E>0&&!/[\r\n]/.test(w.text[E-1])&&(E=-1);var T=E===-1?{origStart:M.valueRange.origStart,origEnd:M.valueRange.origStart}:{origStart:E,origEnd:E+3};return k.length!==0&&(T.origStart=k[0].position.start.offset),{position:w.transformRange(T),endMarkerPoint:E===-1?null:w.transformOffset(E)}}}}),dr=D({"node_modules/yaml-unist-parser/lib/transforms/document.js"(s){"use strict";Y(),s.__esModule=!0;var e=lr(),r=Le(),c=ur(),h=mr();function d(y,M){var k=h.transformDocumentHead(y,M),w=k.createDocumentHeadWithTrailingComment,E=k.documentHeadEndMarkerPoint,T=c.transformDocumentBody(y,M,E),I=T.documentBody,C=T.documentEndPoint,q=T.documentTrailingComment,R=T.documentHeadTrailingComment,B=w(R);return q&&M.comments.push(q),e.createDocument(r.createPosition(B.position.start,C),B,I,q)}s.transformDocument=d}}),Ze=D({"node_modules/yaml-unist-parser/lib/factories/flow-collection.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=Se(),c=Ee(),h=me();function d(y,M,k){return e.__assign(e.__assign(e.__assign(e.__assign(e.__assign({},h.createNode("flowCollection",y)),r.createCommentAttachable()),c.createEndCommentAttachable()),M),{children:k})}s.createFlowCollection=d}}),hr=D({"node_modules/yaml-unist-parser/lib/factories/flow-mapping.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=Ze();function c(h,d,y){return e.__assign(e.__assign({},r.createFlowCollection(h,d,y)),{type:"flowMapping"})}s.createFlowMapping=c}}),Xe=D({"node_modules/yaml-unist-parser/lib/factories/flow-mapping-item.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=Oe(),c=me();function h(d,y,M){return e.__assign(e.__assign(e.__assign({},c.createNode("flowMappingItem",d)),r.createLeadingCommentAttachable()),{children:[y,M]})}s.createFlowMappingItem=h}}),Be=D({"node_modules/yaml-unist-parser/lib/utils/extract-comments.js"(s){"use strict";Y(),s.__esModule=!0;function e(r,c){for(var h=[],d=0,y=r;d=0;d--)if(h.test(r[d]))return d;return-1}s.findLastCharIndex=e}}),Lr=D({"node_modules/yaml-unist-parser/lib/transforms/plain.js"(s){"use strict";Y(),s.__esModule=!0;var e=Mr(),r=Or();function c(h,d){var y=h.cstNode;return e.createPlain(d.transformRange({origStart:y.valueRange.origStart,origEnd:r.findLastCharIndex(d.text,y.valueRange.origEnd-1,/\S/)+1}),d.transformContent(h),y.strValue)}s.transformPlain=c}}),Ar=D({"node_modules/yaml-unist-parser/lib/factories/quote-double.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te));function r(c){return e.__assign(e.__assign({},c),{type:"quoteDouble"})}s.createQuoteDouble=r}}),Nr=D({"node_modules/yaml-unist-parser/lib/factories/quote-value.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=Se(),c=me();function h(d,y,M){return e.__assign(e.__assign(e.__assign(e.__assign({},c.createNode("quoteValue",d)),y),r.createCommentAttachable()),{value:M})}s.createQuoteValue=h}}),nt=D({"node_modules/yaml-unist-parser/lib/transforms/quote-value.js"(s){"use strict";Y(),s.__esModule=!0;var e=Nr();function r(c,h){var d=c.cstNode;return e.createQuoteValue(h.transformRange(d.valueRange),h.transformContent(c),d.strValue)}s.transformAstQuoteValue=r}}),Tr=D({"node_modules/yaml-unist-parser/lib/transforms/quote-double.js"(s){"use strict";Y(),s.__esModule=!0;var e=Ar(),r=nt();function c(h,d){return e.createQuoteDouble(r.transformAstQuoteValue(h,d))}s.transformQuoteDouble=c}}),Cr=D({"node_modules/yaml-unist-parser/lib/factories/quote-single.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te));function r(c){return e.__assign(e.__assign({},c),{type:"quoteSingle"})}s.createQuoteSingle=r}}),kr=D({"node_modules/yaml-unist-parser/lib/transforms/quote-single.js"(s){"use strict";Y(),s.__esModule=!0;var e=Cr(),r=nt();function c(h,d){return e.createQuoteSingle(r.transformAstQuoteValue(h,d))}s.transformQuoteSingle=c}}),Pr=D({"node_modules/yaml-unist-parser/lib/factories/sequence.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=Ee(),c=Oe(),h=me();function d(y,M,k){return e.__assign(e.__assign(e.__assign(e.__assign(e.__assign({},h.createNode("sequence",y)),c.createLeadingCommentAttachable()),r.createEndCommentAttachable()),M),{children:k})}s.createSequence=d}}),Ir=D({"node_modules/yaml-unist-parser/lib/factories/sequence-item.js"(s){"use strict";Y(),s.__esModule=!0;var e=(ie(),se(te)),r=Se(),c=Ee(),h=me();function d(y,M){return e.__assign(e.__assign(e.__assign(e.__assign({},h.createNode("sequenceItem",y)),r.createCommentAttachable()),c.createEndCommentAttachable()),{children:M?[M]:[]})}s.createSequenceItem=d}}),Rr=D({"node_modules/yaml-unist-parser/lib/transforms/seq.js"(s){"use strict";Y(),s.__esModule=!0;var e=Le(),r=Pr(),c=Ir(),h=Be(),d=Ve(),y=Ae();function M(k,w){var E=h.extractComments(k.cstNode.items,w),T=E.map(function(I,C){d.extractPropComments(I,w);var q=w.transformNode(k.items[C]);return c.createSequenceItem(e.createPosition(w.transformOffset(I.valueRange.origStart),q===null?w.transformOffset(I.valueRange.origStart+1):q.position.end),q)});return r.createSequence(e.createPosition(T[0].position.start,y.getLast(T).position.end),w.transformContent(k),T)}s.transformSeq=M}}),qr=D({"node_modules/yaml-unist-parser/lib/transform.js"(s){"use strict";Y(),s.__esModule=!0;var e=Gt(),r=rr(),c=sr(),h=ir(),d=or(),y=dr(),M=_r(),k=br(),w=Er(),E=Lr(),T=Tr(),I=kr(),C=Rr();function q(R,B){if(R===null||R.type===void 0&&R.value===null)return null;switch(R.type){case"ALIAS":return e.transformAlias(R,B);case"BLOCK_FOLDED":return r.transformBlockFolded(R,B);case"BLOCK_LITERAL":return c.transformBlockLiteral(R,B);case"COMMENT":return h.transformComment(R,B);case"DIRECTIVE":return d.transformDirective(R,B);case"DOCUMENT":return y.transformDocument(R,B);case"FLOW_MAP":return M.transformFlowMap(R,B);case"FLOW_SEQ":return k.transformFlowSeq(R,B);case"MAP":return w.transformMap(R,B);case"PLAIN":return E.transformPlain(R,B);case"QUOTE_DOUBLE":return T.transformQuoteDouble(R,B);case"QUOTE_SINGLE":return I.transformQuoteSingle(R,B);case"SEQ":return C.transformSeq(R,B);default:throw new Error("Unexpected node type "+R.type)}}s.transformNode=q}}),$r=D({"node_modules/yaml-unist-parser/lib/factories/error.js"(s){"use strict";Y(),s.__esModule=!0;function e(r,c,h){var d=new SyntaxError(r);return d.name="YAMLSyntaxError",d.source=c,d.position=h,d}s.createError=e}}),Br=D({"node_modules/yaml-unist-parser/lib/transforms/error.js"(s){"use strict";Y(),s.__esModule=!0;var e=$r();function r(c,h){var d=c.source.range||c.source.valueRange;return e.createError(c.message,h.text,h.transformRange(d))}s.transformError=r}}),jr=D({"node_modules/yaml-unist-parser/lib/factories/point.js"(s){"use strict";Y(),s.__esModule=!0;function e(r,c,h){return{offset:r,line:c,column:h}}s.createPoint=e}}),Yr=D({"node_modules/yaml-unist-parser/lib/transforms/offset.js"(s){"use strict";Y(),s.__esModule=!0;var e=jr();function r(c,h){c<0?c=0:c>h.text.length&&(c=h.text.length);var d=h.locator.locationForIndex(c);return e.createPoint(c,d.line+1,d.column+1)}s.transformOffset=r}}),Dr=D({"node_modules/yaml-unist-parser/lib/transforms/range.js"(s){"use strict";Y(),s.__esModule=!0;var e=Le();function r(c,h){return e.createPosition(h.transformOffset(c.origStart),h.transformOffset(c.origEnd))}s.transformRange=r}}),Fr=D({"node_modules/yaml-unist-parser/lib/utils/add-orig-range.js"(s){"use strict";Y(),s.__esModule=!0;var e=!0;function r(y){if(!y.setOrigRanges()){var M=function(k){if(h(k))return k.origStart=k.start,k.origEnd=k.end,e;if(d(k))return k.origOffset=k.offset,e};y.forEach(function(k){return c(k,M)})}}s.addOrigRange=r;function c(y,M){if(!(!y||typeof y!="object")&&M(y)!==e)for(var k=0,w=Object.keys(y);kE.offset}}}),Me=D({"node_modules/yaml/dist/PlainValue-ec8e588e.js"(s){"use strict";Y();var e={ANCHOR:"&",COMMENT:"#",TAG:"!",DIRECTIVES_END:"-",DOCUMENT_END:"."},r={ALIAS:"ALIAS",BLANK_LINE:"BLANK_LINE",BLOCK_FOLDED:"BLOCK_FOLDED",BLOCK_LITERAL:"BLOCK_LITERAL",COMMENT:"COMMENT",DIRECTIVE:"DIRECTIVE",DOCUMENT:"DOCUMENT",FLOW_MAP:"FLOW_MAP",FLOW_SEQ:"FLOW_SEQ",MAP:"MAP",MAP_KEY:"MAP_KEY",MAP_VALUE:"MAP_VALUE",PLAIN:"PLAIN",QUOTE_DOUBLE:"QUOTE_DOUBLE",QUOTE_SINGLE:"QUOTE_SINGLE",SEQ:"SEQ",SEQ_ITEM:"SEQ_ITEM"},c="tag:yaml.org,2002:",h={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function d(i){let t=[0],n=i.indexOf(` +`);for(;n!==-1;)n+=1,t.push(n),n=i.indexOf(` +`,n);return t}function y(i){let t,n;return typeof i=="string"?(t=d(i),n=i):(Array.isArray(i)&&(i=i[0]),i&&i.context&&(i.lineStarts||(i.lineStarts=d(i.context.src)),t=i.lineStarts,n=i.context.src)),{lineStarts:t,src:n}}function M(i,t){if(typeof i!="number"||i<0)return null;let{lineStarts:n,src:a}=y(t);if(!n||!a||i>a.length)return null;for(let p=0;p=1)||i>n.length)return null;let m=n[i-1],p=n[i];for(;p&&p>m&&a[p-1]===` +`;)--p;return a.slice(m,p)}function w(i,t){let{start:n,end:a}=i,m=arguments.length>2&&arguments[2]!==void 0?arguments[2]:80,p=k(n.line,t);if(!p)return null;let{col:u}=n;if(p.length>m)if(u<=m-10)p=p.substr(0,m-1)+"\u2026";else{let K=Math.round(m/2);p.length>u+K&&(p=p.substr(0,u+K-1)+"\u2026"),u-=p.length-m,p="\u2026"+p.substr(1-m)}let g=1,L="";a&&(a.line===n.line&&u+(a.col-n.col)<=m+1?g=a.col-n.col:(g=Math.min(p.length+1,m)-u,L="\u2026"));let P=u>1?" ".repeat(u-1):"",$="^".repeat(g);return`${p} +${P}${$}${L}`}var E=class{static copy(i){return new E(i.start,i.end)}constructor(i,t){this.start=i,this.end=t||i}isEmpty(){return typeof this.start!="number"||!this.end||this.end<=this.start}setOrigRange(i,t){let{start:n,end:a}=this;if(i.length===0||a<=i[0])return this.origStart=n,this.origEnd=a,t;let m=t;for(;mn);)++m;this.origStart=n+m;let p=m;for(;m=a);)++m;return this.origEnd=a+m,p}},T=class{static addStringTerminator(i,t,n){if(n[n.length-1]===` +`)return n;let a=T.endOfWhiteSpace(i,t);return a>=i.length||i[a]===` +`?n+` +`:n}static atDocumentBoundary(i,t,n){let a=i[t];if(!a)return!0;let m=i[t-1];if(m&&m!==` +`)return!1;if(n){if(a!==n)return!1}else if(a!==e.DIRECTIVES_END&&a!==e.DOCUMENT_END)return!1;let p=i[t+1],u=i[t+2];if(p!==a||u!==a)return!1;let g=i[t+3];return!g||g===` +`||g===" "||g===" "}static endOfIdentifier(i,t){let n=i[t],a=n==="<",m=a?[` +`," "," ",">"]:[` +`," "," ","[","]","{","}",","];for(;n&&m.indexOf(n)===-1;)n=i[t+=1];return a&&n===">"&&(t+=1),t}static endOfIndent(i,t){let n=i[t];for(;n===" ";)n=i[t+=1];return t}static endOfLine(i,t){let n=i[t];for(;n&&n!==` +`;)n=i[t+=1];return t}static endOfWhiteSpace(i,t){let n=i[t];for(;n===" "||n===" ";)n=i[t+=1];return t}static startOfLine(i,t){let n=i[t-1];if(n===` +`)return t;for(;n&&n!==` +`;)n=i[t-=1];return t+1}static endOfBlockIndent(i,t,n){let a=T.endOfIndent(i,n);if(a>n+t)return a;{let m=T.endOfWhiteSpace(i,a),p=i[m];if(!p||p===` +`)return m}return null}static atBlank(i,t,n){let a=i[t];return a===` +`||a===" "||a===" "||n&&!a}static nextNodeIsIndented(i,t,n){return!i||t<0?!1:t>0?!0:n&&i==="-"}static normalizeOffset(i,t){let n=i[t];return n?n!==` +`&&i[t-1]===` +`?t-1:T.endOfWhiteSpace(i,t):t}static foldNewline(i,t,n){let a=0,m=!1,p="",u=i[t+1];for(;u===" "||u===" "||u===` +`;){switch(u){case` +`:a=0,t+=1,p+=` +`;break;case" ":a<=n&&(m=!0),t=T.endOfWhiteSpace(i,t+2)-1;break;case" ":a+=1,t+=1;break}u=i[t+1]}return p||(p=" "),u&&a<=n&&(m=!0),{fold:p,offset:t,error:m}}constructor(i,t,n){Object.defineProperty(this,"context",{value:n||null,writable:!0}),this.error=null,this.range=null,this.valueRange=null,this.props=t||[],this.type=i,this.value=null}getPropValue(i,t,n){if(!this.context)return null;let{src:a}=this.context,m=this.props[i];return m&&a[m.start]===t?a.slice(m.start+(n?1:0),m.end):null}get anchor(){for(let i=0;i0?i.join(` +`):null}commentHasRequiredWhitespace(i){let{src:t}=this.context;if(this.header&&i===this.header.end||!this.valueRange)return!1;let{end:n}=this.valueRange;return i!==n||T.atBlank(t,n-1)}get hasComment(){if(this.context){let{src:i}=this.context;for(let t=0;tn.setOrigRange(i,t)),t}toString(){let{context:{src:i},range:t,value:n}=this;if(n!=null)return n;let a=i.slice(t.start,t.end);return T.addStringTerminator(i,t.end,a)}},I=class extends Error{constructor(i,t,n){if(!n||!(t instanceof T))throw new Error(`Invalid arguments for new ${i}`);super(),this.name=i,this.message=n,this.source=t}makePretty(){if(!this.source)return;this.nodeType=this.source.type;let i=this.source.context&&this.source.context.root;if(typeof this.offset=="number"){this.range=new E(this.offset,this.offset+1);let t=i&&M(this.offset,i);if(t){let n={line:t.line,col:t.col+1};this.linePos={start:t,end:n}}delete this.offset}else this.range=this.source.range,this.linePos=this.source.rangeAsLinePos;if(this.linePos){let{line:t,col:n}=this.linePos.start;this.message+=` at line ${t}, column ${n}`;let a=i&&w(this.linePos,i);a&&(this.message+=`: + +${a} +`)}delete this.source}},C=class extends I{constructor(i,t){super("YAMLReferenceError",i,t)}},q=class extends I{constructor(i,t){super("YAMLSemanticError",i,t)}},R=class extends I{constructor(i,t){super("YAMLSyntaxError",i,t)}},B=class extends I{constructor(i,t){super("YAMLWarning",i,t)}};function U(i,t,n){return t in i?Object.defineProperty(i,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):i[t]=n,i}var f=class extends T{static endOfLine(i,t,n){let a=i[t],m=t;for(;a&&a!==` +`&&!(n&&(a==="["||a==="]"||a==="{"||a==="}"||a===","));){let p=i[m+1];if(a===":"&&(!p||p===` +`||p===" "||p===" "||n&&p===",")||(a===" "||a===" ")&&p==="#")break;m+=1,a=p}return m}get strValue(){if(!this.valueRange||!this.context)return null;let{start:i,end:t}=this.valueRange,{src:n}=this.context,a=n[t-1];for(;iL?n.slice(L,u+1):g)}else m+=g}let p=n[i];switch(p){case" ":{let u="Plain value cannot start with a tab character";return{errors:[new q(this,u)],str:m}}case"@":case"`":{let u=`Plain value cannot start with reserved character ${p}`;return{errors:[new q(this,u)],str:m}}default:return m}}parseBlockValue(i){let{indent:t,inFlow:n,src:a}=this.context,m=i,p=i;for(let u=a[m];u===` +`&&!T.atDocumentBoundary(a,m+1);u=a[m]){let g=T.endOfBlockIndent(a,t,m+1);if(g===null||a[g]==="#")break;a[g]===` +`?m=g:(p=f.endOfLine(a,g,n),m=p)}return this.valueRange.isEmpty()&&(this.valueRange.start=i),this.valueRange.end=p,p}parse(i,t){this.context=i;let{inFlow:n,src:a}=i,m=t,p=a[m];return p&&p!=="#"&&p!==` +`&&(m=f.endOfLine(a,t,n)),this.valueRange=new E(t,m),m=T.endOfWhiteSpace(a,m),m=this.parseComment(m),(!this.hasComment||this.valueRange.isEmpty())&&(m=this.parseBlockValue(m)),m}};s.Char=e,s.Node=T,s.PlainValue=f,s.Range=E,s.Type=r,s.YAMLError=I,s.YAMLReferenceError=C,s.YAMLSemanticError=q,s.YAMLSyntaxError=R,s.YAMLWarning=B,s._defineProperty=U,s.defaultTagPrefix=c,s.defaultTags=h}}),Ur=D({"node_modules/yaml/dist/parse-cst.js"(s){"use strict";Y();var e=Me(),r=class extends e.Node{constructor(){super(e.Type.BLANK_LINE)}get includesTrailingLines(){return!0}parse(f,i){return this.context=f,this.range=new e.Range(i,i+1),i+1}},c=class extends e.Node{constructor(f,i){super(f,i),this.node=null}get includesTrailingLines(){return!!this.node&&this.node.includesTrailingLines}parse(f,i){this.context=f;let{parseNode:t,src:n}=f,{atLineStart:a,lineStart:m}=f;!a&&this.type===e.Type.SEQ_ITEM&&(this.error=new e.YAMLSemanticError(this,"Sequence items must not have preceding content on the same line"));let p=a?i-m:f.indent,u=e.Node.endOfWhiteSpace(n,i+1),g=n[u],L=g==="#",P=[],$=null;for(;g===` +`||g==="#";){if(g==="#"){let V=e.Node.endOfLine(n,u+1);P.push(new e.Range(u,V)),u=V}else{a=!0,m=u+1;let V=e.Node.endOfWhiteSpace(n,m);n[V]===` +`&&P.length===0&&($=new r,m=$.parse({src:n},m)),u=e.Node.endOfIndent(n,m)}g=n[u]}if(e.Node.nextNodeIsIndented(g,u-(m+p),this.type!==e.Type.SEQ_ITEM)?this.node=t({atLineStart:a,inCollection:!1,indent:p,lineStart:m,parent:this},u):g&&m>i+1&&(u=m-1),this.node){if($){let V=f.parent.items||f.parent.contents;V&&V.push($)}P.length&&Array.prototype.push.apply(this.props,P),u=this.node.range.end}else if(L){let V=P[0];this.props.push(V),u=V.end}else u=e.Node.endOfLine(n,i+1);let K=this.node?this.node.valueRange.end:u;return this.valueRange=new e.Range(i,K),u}setOrigRanges(f,i){return i=super.setOrigRanges(f,i),this.node?this.node.setOrigRanges(f,i):i}toString(){let{context:{src:f},node:i,range:t,value:n}=this;if(n!=null)return n;let a=i?f.slice(t.start,i.range.start)+String(i):f.slice(t.start,t.end);return e.Node.addStringTerminator(f,t.end,a)}},h=class extends e.Node{constructor(){super(e.Type.COMMENT)}parse(f,i){this.context=f;let t=this.parseComment(i);return this.range=new e.Range(i,t),t}};function d(f){let i=f;for(;i instanceof c;)i=i.node;if(!(i instanceof y))return null;let t=i.items.length,n=-1;for(let p=t-1;p>=0;--p){let u=i.items[p];if(u.type===e.Type.COMMENT){let{indent:g,lineStart:L}=u.context;if(g>0&&u.range.start>=L+g)break;n=p}else if(u.type===e.Type.BLANK_LINE)n=p;else break}if(n===-1)return null;let a=i.items.splice(n,t-n),m=a[0].range.start;for(;i.range.end=m,i.valueRange&&i.valueRange.end>m&&(i.valueRange.end=m),i!==f;)i=i.context.parent;return a}var y=class extends e.Node{static nextContentHasIndent(f,i,t){let n=e.Node.endOfLine(f,i)+1;i=e.Node.endOfWhiteSpace(f,n);let a=f[i];return a?i>=n+t?!0:a!=="#"&&a!==` +`?!1:y.nextContentHasIndent(f,i,t):!1}constructor(f){super(f.type===e.Type.SEQ_ITEM?e.Type.SEQ:e.Type.MAP);for(let t=f.props.length-1;t>=0;--t)if(f.props[t].start0}parse(f,i){this.context=f;let{parseNode:t,src:n}=f,a=e.Node.startOfLine(n,i),m=this.items[0];m.context.parent=this,this.valueRange=e.Range.copy(m.valueRange);let p=m.range.start-m.context.lineStart,u=i;u=e.Node.normalizeOffset(n,u);let g=n[u],L=e.Node.endOfWhiteSpace(n,a)===u,P=!1;for(;g;){for(;g===` +`||g==="#";){if(L&&g===` +`&&!P){let V=new r;if(u=V.parse({src:n},u),this.valueRange.end=u,u>=n.length){g=null;break}this.items.push(V),u-=1}else if(g==="#"){if(u=n.length){g=null;break}}if(a=u+1,u=e.Node.endOfIndent(n,a),e.Node.atBlank(n,u)){let V=e.Node.endOfWhiteSpace(n,u),z=n[V];(!z||z===` +`||z==="#")&&(u=V)}g=n[u],L=!0}if(!g)break;if(u!==a+p&&(L||g!==":")){if(ui&&(u=a);break}else if(!this.error){let V="All collection items must start at the same column";this.error=new e.YAMLSyntaxError(this,V)}}if(m.type===e.Type.SEQ_ITEM){if(g!=="-"){a>i&&(u=a);break}}else if(g==="-"&&!this.error){let V=n[u+1];if(!V||V===` +`||V===" "||V===" "){let z="A collection cannot be both a mapping and a sequence";this.error=new e.YAMLSyntaxError(this,z)}}let $=t({atLineStart:L,inCollection:!0,indent:p,lineStart:a,parent:this},u);if(!$)return u;if(this.items.push($),this.valueRange.end=$.valueRange.end,u=e.Node.normalizeOffset(n,$.range.end),g=n[u],L=!1,P=$.includesTrailingLines,g){let V=u-1,z=n[V];for(;z===" "||z===" ";)z=n[--V];z===` +`&&(a=V+1,L=!0)}let K=d($);K&&Array.prototype.push.apply(this.items,K)}return u}setOrigRanges(f,i){return i=super.setOrigRanges(f,i),this.items.forEach(t=>{i=t.setOrigRanges(f,i)}),i}toString(){let{context:{src:f},items:i,range:t,value:n}=this;if(n!=null)return n;let a=f.slice(t.start,i[0].range.start)+String(i[0]);for(let m=1;m0&&(this.contents=this.directives,this.directives=[]),a}return i[a]?(this.directivesEndMarker=new e.Range(a,a+3),a+3):(n?this.error=new e.YAMLSemanticError(this,"Missing directives-end indicator line"):this.directives.length>0&&(this.contents=this.directives,this.directives=[]),a)}parseContents(f){let{parseNode:i,src:t}=this.context;this.contents||(this.contents=[]);let n=f;for(;t[n-1]==="-";)n-=1;let a=e.Node.endOfWhiteSpace(t,f),m=n===f;for(this.valueRange=new e.Range(a);!e.Node.atDocumentBoundary(t,a,e.Char.DOCUMENT_END);){switch(t[a]){case` +`:if(m){let p=new r;a=p.parse({src:t},a),a{i=t.setOrigRanges(f,i)}),this.directivesEndMarker&&(i=this.directivesEndMarker.setOrigRange(f,i)),this.contents.forEach(t=>{i=t.setOrigRanges(f,i)}),this.documentEndMarker&&(i=this.documentEndMarker.setOrigRange(f,i)),i}toString(){let{contents:f,directives:i,value:t}=this;if(t!=null)return t;let n=i.join("");return f.length>0&&((i.length>0||f[0].type===e.Type.COMMENT)&&(n+=`--- +`),n+=f.join("")),n[n.length-1]!==` +`&&(n+=` +`),n}},w=class extends e.Node{parse(f,i){this.context=f;let{src:t}=f,n=e.Node.endOfIdentifier(t,i+1);return this.valueRange=new e.Range(i+1,n),n=e.Node.endOfWhiteSpace(t,n),n=this.parseComment(n),n}},E={CLIP:"CLIP",KEEP:"KEEP",STRIP:"STRIP"},T=class extends e.Node{constructor(f,i){super(f,i),this.blockIndent=null,this.chomping=E.CLIP,this.header=null}get includesTrailingLines(){return this.chomping===E.KEEP}get strValue(){if(!this.valueRange||!this.context)return null;let{start:f,end:i}=this.valueRange,{indent:t,src:n}=this.context;if(this.valueRange.isEmpty())return"";let a=null,m=n[i-1];for(;m===` +`||m===" "||m===" ";){if(i-=1,i<=f){if(this.chomping===E.KEEP)break;return""}m===` +`&&(a=i),m=n[i-1]}let p=i+1;a&&(this.chomping===E.KEEP?(p=a,i=this.valueRange.end):i=a);let u=t+this.blockIndent,g=this.type===e.Type.BLOCK_FOLDED,L=!0,P="",$="",K=!1;for(let V=f;Vp&&(p=P);t[g]===` +`?a=g:a=m=e.Node.endOfLine(t,g)}return this.chomping!==E.KEEP&&(a=t[m]?m+1:m),this.valueRange=new e.Range(f+1,a),a}parse(f,i){this.context=f;let{src:t}=f,n=this.parseBlockHeader(i);return n=e.Node.endOfWhiteSpace(t,n),n=this.parseComment(n),n=this.parseBlockValue(n),n}setOrigRanges(f,i){return i=super.setOrigRanges(f,i),this.header?this.header.setOrigRange(f,i):i}},I=class extends e.Node{constructor(f,i){super(f,i),this.items=null}prevNodeIsJsonLike(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.items.length,i=this.items[f-1];return!!i&&(i.jsonLike||i.type===e.Type.COMMENT&&this.prevNodeIsJsonLike(f-1))}parse(f,i){this.context=f;let{parseNode:t,src:n}=f,{indent:a,lineStart:m}=f,p=n[i];this.items=[{char:p,offset:i}];let u=e.Node.endOfWhiteSpace(n,i+1);for(p=n[u];p&&p!=="]"&&p!=="}";){switch(p){case` +`:{m=u+1;let g=e.Node.endOfWhiteSpace(n,m);if(n[g]===` +`){let L=new r;m=L.parse({src:n},m),this.items.push(L)}if(u=e.Node.endOfIndent(n,m),u<=m+a&&(p=n[u],u{if(t instanceof e.Node)i=t.setOrigRanges(f,i);else if(f.length===0)t.origOffset=t.offset;else{let n=i;for(;nt.offset);)++n;t.origOffset=t.offset+n,i=n}}),i}toString(){let{context:{src:f},items:i,range:t,value:n}=this;if(n!=null)return n;let a=i.filter(u=>u instanceof e.Node),m="",p=t.start;return a.forEach(u=>{let g=f.slice(p,u.range.start);p=u.range.end,m+=g+String(u),m[m.length-1]===` +`&&f[p-1]!==` +`&&f[p]===` +`&&(p+=1)}),m+=f.slice(p,t.end),e.Node.addStringTerminator(f,t.end,m)}},C=class extends e.Node{static endOfQuote(f,i){let t=f[i];for(;t&&t!=='"';)i+=t==="\\"?2:1,t=f[i];return i+1}get strValue(){if(!this.valueRange||!this.context)return null;let f=[],{start:i,end:t}=this.valueRange,{indent:n,src:a}=this.context;a[t-1]!=='"'&&f.push(new e.YAMLSyntaxError(this,'Missing closing "quote'));let m="";for(let p=i+1;pg?a.slice(g,p+1):u)}else m+=u}return f.length>0?{errors:f,str:m}:m}parseCharCode(f,i,t){let{src:n}=this.context,a=n.substr(f,i),p=a.length===i&&/^[0-9a-fA-F]+$/.test(a)?parseInt(a,16):NaN;return isNaN(p)?(t.push(new e.YAMLSyntaxError(this,`Invalid escape sequence ${n.substr(f-2,i+2)}`)),n.substr(f-2,i+2)):String.fromCodePoint(p)}parse(f,i){this.context=f;let{src:t}=f,n=C.endOfQuote(t,i+1);return this.valueRange=new e.Range(i,n),n=e.Node.endOfWhiteSpace(t,n),n=this.parseComment(n),n}},q=class extends e.Node{static endOfQuote(f,i){let t=f[i];for(;t;)if(t==="'"){if(f[i+1]!=="'")break;t=f[i+=2]}else t=f[i+=1];return i+1}get strValue(){if(!this.valueRange||!this.context)return null;let f=[],{start:i,end:t}=this.valueRange,{indent:n,src:a}=this.context;a[t-1]!=="'"&&f.push(new e.YAMLSyntaxError(this,"Missing closing 'quote"));let m="";for(let p=i+1;pg?a.slice(g,p+1):u)}else m+=u}return f.length>0?{errors:f,str:m}:m}parse(f,i){this.context=f;let{src:t}=f,n=q.endOfQuote(t,i+1);return this.valueRange=new e.Range(i,n),n=e.Node.endOfWhiteSpace(t,n),n=this.parseComment(n),n}};function R(f,i){switch(f){case e.Type.ALIAS:return new w(f,i);case e.Type.BLOCK_FOLDED:case e.Type.BLOCK_LITERAL:return new T(f,i);case e.Type.FLOW_MAP:case e.Type.FLOW_SEQ:return new I(f,i);case e.Type.MAP_KEY:case e.Type.MAP_VALUE:case e.Type.SEQ_ITEM:return new c(f,i);case e.Type.COMMENT:case e.Type.PLAIN:return new e.PlainValue(f,i);case e.Type.QUOTE_DOUBLE:return new C(f,i);case e.Type.QUOTE_SINGLE:return new q(f,i);default:return null}}var B=class{static parseType(f,i,t){switch(f[i]){case"*":return e.Type.ALIAS;case">":return e.Type.BLOCK_FOLDED;case"|":return e.Type.BLOCK_LITERAL;case"{":return e.Type.FLOW_MAP;case"[":return e.Type.FLOW_SEQ;case"?":return!t&&e.Node.atBlank(f,i+1,!0)?e.Type.MAP_KEY:e.Type.PLAIN;case":":return!t&&e.Node.atBlank(f,i+1,!0)?e.Type.MAP_VALUE:e.Type.PLAIN;case"-":return!t&&e.Node.atBlank(f,i+1,!0)?e.Type.SEQ_ITEM:e.Type.PLAIN;case'"':return e.Type.QUOTE_DOUBLE;case"'":return e.Type.QUOTE_SINGLE;default:return e.Type.PLAIN}}constructor(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},{atLineStart:i,inCollection:t,inFlow:n,indent:a,lineStart:m,parent:p}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};e._defineProperty(this,"parseNode",(u,g)=>{if(e.Node.atDocumentBoundary(this.src,g))return null;let L=new B(this,u),{props:P,type:$,valueStart:K}=L.parseProps(g),V=R($,P),z=V.parse(L,K);if(V.range=new e.Range(g,z),z<=g&&(V.error=new Error("Node#parse consumed no characters"),V.error.parseEnd=z,V.error.source=V,V.range.end=g+1),L.nodeStartsCollection(V)){!V.error&&!L.atLineStart&&L.parent.type===e.Type.DOCUMENT&&(V.error=new e.YAMLSyntaxError(V,"Block collection must not have preceding content here (e.g. directives-end indicator)"));let ae=new y(V);return z=ae.parse(new B(L),z),ae.range=new e.Range(g,z),ae}return V}),this.atLineStart=i!=null?i:f.atLineStart||!1,this.inCollection=t!=null?t:f.inCollection||!1,this.inFlow=n!=null?n:f.inFlow||!1,this.indent=a!=null?a:f.indent,this.lineStart=m!=null?m:f.lineStart,this.parent=p!=null?p:f.parent||{},this.root=f.root,this.src=f.src}nodeStartsCollection(f){let{inCollection:i,inFlow:t,src:n}=this;if(i||t)return!1;if(f instanceof c)return!0;let a=f.range.end;return n[a]===` +`||n[a-1]===` +`?!1:(a=e.Node.endOfWhiteSpace(n,a),n[a]===":")}parseProps(f){let{inFlow:i,parent:t,src:n}=this,a=[],m=!1;f=this.atLineStart?e.Node.endOfIndent(n,f):e.Node.endOfWhiteSpace(n,f);let p=n[f];for(;p===e.Char.ANCHOR||p===e.Char.COMMENT||p===e.Char.TAG||p===` +`;){if(p===` +`){let g=f,L;do L=g+1,g=e.Node.endOfIndent(n,L);while(n[g]===` +`);let P=g-(L+this.indent),$=t.type===e.Type.SEQ_ITEM&&t.context.atLineStart;if(n[g]!=="#"&&!e.Node.nextNodeIsIndented(n[g],P,!$))break;this.atLineStart=!0,this.lineStart=L,m=!1,f=g}else if(p===e.Char.COMMENT){let g=e.Node.endOfLine(n,f+1);a.push(new e.Range(f,g)),f=g}else{let g=e.Node.endOfIdentifier(n,f+1);p===e.Char.TAG&&n[g]===","&&/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(n.slice(f+1,g+13))&&(g=e.Node.endOfIdentifier(n,g+5)),a.push(new e.Range(f,g)),m=!0,f=e.Node.endOfWhiteSpace(n,g)}p=n[f]}m&&p===":"&&e.Node.atBlank(n,f+1,!0)&&(f-=1);let u=B.parseType(n,f,i);return{props:a,type:u,valueStart:f}}};function U(f){let i=[];f.indexOf("\r")!==-1&&(f=f.replace(/\r\n?/g,(a,m)=>(a.length>1&&i.push(m),` +`)));let t=[],n=0;do{let a=new k,m=new B({src:f});n=a.parse(m,n),t.push(a)}while(n{if(i.length===0)return!1;for(let m=1;mt.join(`... +`),t}s.parse=U}}),ke=D({"node_modules/yaml/dist/resolveSeq-d03cb037.js"(s){"use strict";Y();var e=Me();function r(o,l,_){return _?`#${_.replace(/[\s\S]^/gm,`$&${l}#`)} +${l}${o}`:o}function c(o,l,_){return _?_.indexOf(` +`)===-1?`${o} #${_}`:`${o} +`+_.replace(/^/gm,`${l||""}#`):o}var h=class{};function d(o,l,_){if(Array.isArray(o))return o.map((v,b)=>d(v,String(b),_));if(o&&typeof o.toJSON=="function"){let v=_&&_.anchors&&_.anchors.get(o);v&&(_.onCreate=S=>{v.res=S,delete _.onCreate});let b=o.toJSON(l,_);return v&&_.onCreate&&_.onCreate(b),b}return(!_||!_.keep)&&typeof o=="bigint"?Number(o):o}var y=class extends h{constructor(o){super(),this.value=o}toJSON(o,l){return l&&l.keep?this.value:d(this.value,o,l)}toString(){return String(this.value)}};function M(o,l,_){let v=_;for(let b=l.length-1;b>=0;--b){let S=l[b];if(Number.isInteger(S)&&S>=0){let A=[];A[S]=v,v=A}else{let A={};Object.defineProperty(A,S,{value:v,writable:!0,enumerable:!0,configurable:!0}),v=A}}return o.createNode(v,!1)}var k=o=>o==null||typeof o=="object"&&o[Symbol.iterator]().next().done,w=class extends h{constructor(o){super(),e._defineProperty(this,"items",[]),this.schema=o}addIn(o,l){if(k(o))this.add(l);else{let[_,...v]=o,b=this.get(_,!0);if(b instanceof w)b.addIn(v,l);else if(b===void 0&&this.schema)this.set(_,M(this.schema,v,l));else throw new Error(`Expected YAML collection at ${_}. Remaining path: ${v}`)}}deleteIn(o){let[l,..._]=o;if(_.length===0)return this.delete(l);let v=this.get(l,!0);if(v instanceof w)return v.deleteIn(_);throw new Error(`Expected YAML collection at ${l}. Remaining path: ${_}`)}getIn(o,l){let[_,...v]=o,b=this.get(_,!0);return v.length===0?!l&&b instanceof y?b.value:b:b instanceof w?b.getIn(v,l):void 0}hasAllNullValues(){return this.items.every(o=>{if(!o||o.type!=="PAIR")return!1;let l=o.value;return l==null||l instanceof y&&l.value==null&&!l.commentBefore&&!l.comment&&!l.tag})}hasIn(o){let[l,..._]=o;if(_.length===0)return this.has(l);let v=this.get(l,!0);return v instanceof w?v.hasIn(_):!1}setIn(o,l){let[_,...v]=o;if(v.length===0)this.set(_,l);else{let b=this.get(_,!0);if(b instanceof w)b.setIn(v,l);else if(b===void 0&&this.schema)this.set(_,M(this.schema,v,l));else throw new Error(`Expected YAML collection at ${_}. Remaining path: ${v}`)}}toJSON(){return null}toString(o,l,_,v){let{blockItem:b,flowChars:S,isMap:A,itemIndent:N}=l,{indent:j,indentStep:F,stringify:Q}=o,H=this.type===e.Type.FLOW_MAP||this.type===e.Type.FLOW_SEQ||o.inFlow;H&&(N+=F);let oe=A&&this.hasAllNullValues();o=Object.assign({},o,{allNullValues:oe,indent:N,inFlow:H,type:null});let le=!1,Z=!1,ee=this.items.reduce((de,ne,he)=>{let ce;ne&&(!le&&ne.spaceBefore&&de.push({type:"comment",str:""}),ne.commentBefore&&ne.commentBefore.match(/^.*$/gm).forEach(Ie=>{de.push({type:"comment",str:`#${Ie}`})}),ne.comment&&(ce=ne.comment),H&&(!le&&ne.spaceBefore||ne.commentBefore||ne.comment||ne.key&&(ne.key.commentBefore||ne.key.comment)||ne.value&&(ne.value.commentBefore||ne.value.comment))&&(Z=!0)),le=!1;let fe=Q(ne,o,()=>ce=null,()=>le=!0);return H&&!Z&&fe.includes(` +`)&&(Z=!0),H&&hece.str);if(Z||he.reduce((ce,fe)=>ce+fe.length+2,2)>w.maxFlowStringSingleLineLength){X=de;for(let ce of he)X+=ce?` +${F}${j}${ce}`:` +`;X+=` +${j}${ne}`}else X=`${de} ${he.join(" ")} ${ne}`}else{let de=ee.map(b);X=de.shift();for(let ne of de)X+=ne?` +${j}${ne}`:` +`}return this.comment?(X+=` +`+this.comment.replace(/^/gm,`${j}#`),_&&_()):le&&v&&v(),X}};e._defineProperty(w,"maxFlowStringSingleLineLength",60);function E(o){let l=o instanceof y?o.value:o;return l&&typeof l=="string"&&(l=Number(l)),Number.isInteger(l)&&l>=0?l:null}var T=class extends w{add(o){this.items.push(o)}delete(o){let l=E(o);return typeof l!="number"?!1:this.items.splice(l,1).length>0}get(o,l){let _=E(o);if(typeof _!="number")return;let v=this.items[_];return!l&&v instanceof y?v.value:v}has(o){let l=E(o);return typeof l=="number"&&lv.type==="comment"?v.str:`- ${v.str}`,flowChars:{start:"[",end:"]"},isMap:!1,itemIndent:(o.indent||"")+" "},l,_):JSON.stringify(this)}},I=(o,l,_)=>l===null?"":typeof l!="object"?String(l):o instanceof h&&_&&_.doc?o.toString({anchors:Object.create(null),doc:_.doc,indent:"",indentStep:_.indentStep,inFlow:!0,inStringifyKey:!0,stringify:_.stringify}):JSON.stringify(l),C=class extends h{constructor(o){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;super(),this.key=o,this.value=l,this.type=C.Type.PAIR}get commentBefore(){return this.key instanceof h?this.key.commentBefore:void 0}set commentBefore(o){if(this.key==null&&(this.key=new y(null)),this.key instanceof h)this.key.commentBefore=o;else{let l="Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";throw new Error(l)}}addToJSMap(o,l){let _=d(this.key,"",o);if(l instanceof Map){let v=d(this.value,_,o);l.set(_,v)}else if(l instanceof Set)l.add(_);else{let v=I(this.key,_,o),b=d(this.value,v,o);v in l?Object.defineProperty(l,v,{value:b,writable:!0,enumerable:!0,configurable:!0}):l[v]=b}return l}toJSON(o,l){let _=l&&l.mapAsMap?new Map:{};return this.addToJSMap(l,_)}toString(o,l,_){if(!o||!o.doc)return JSON.stringify(this);let{indent:v,indentSeq:b,simpleKeys:S}=o.doc.options,{key:A,value:N}=this,j=A instanceof h&&A.comment;if(S){if(j)throw new Error("With simple keys, key nodes cannot have comments");if(A instanceof w){let ce="With simple keys, collection cannot be used as a key value";throw new Error(ce)}}let F=!S&&(!A||j||(A instanceof h?A instanceof w||A.type===e.Type.BLOCK_FOLDED||A.type===e.Type.BLOCK_LITERAL:typeof A=="object")),{doc:Q,indent:H,indentStep:oe,stringify:le}=o;o=Object.assign({},o,{implicitKey:!F,indent:H+oe});let Z=!1,ee=le(A,o,()=>j=null,()=>Z=!0);if(ee=c(ee,o.indent,j),!F&&ee.length>1024){if(S)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");F=!0}if(o.allNullValues&&!S)return this.comment?(ee=c(ee,o.indent,this.comment),l&&l()):Z&&!j&&_&&_(),o.inFlow&&!F?ee:`? ${ee}`;ee=F?`? ${ee} +${H}:`:`${ee}:`,this.comment&&(ee=c(ee,o.indent,this.comment),l&&l());let X="",de=null;if(N instanceof h){if(N.spaceBefore&&(X=` +`),N.commentBefore){let ce=N.commentBefore.replace(/^/gm,`${o.indent}#`);X+=` +${ce}`}de=N.comment}else N&&typeof N=="object"&&(N=Q.schema.createNode(N,!0));o.implicitKey=!1,!F&&!this.comment&&N instanceof y&&(o.indentAtStart=ee.length+1),Z=!1,!b&&v>=2&&!o.inFlow&&!F&&N instanceof T&&N.type!==e.Type.FLOW_SEQ&&!N.tag&&!Q.anchors.getName(N)&&(o.indent=o.indent.substr(2));let ne=le(N,o,()=>de=null,()=>Z=!0),he=" ";return X||this.comment?he=`${X} +${o.indent}`:!F&&N instanceof w?(!(ne[0]==="["||ne[0]==="{")||ne.includes(` +`))&&(he=` +${o.indent}`):ne[0]===` +`&&(he=""),Z&&!de&&_&&_(),c(ee+he+ne,o.indent,de)}};e._defineProperty(C,"Type",{PAIR:"PAIR",MERGE_PAIR:"MERGE_PAIR"});var q=(o,l)=>{if(o instanceof R){let _=l.get(o.source);return _.count*_.aliasCount}else if(o instanceof w){let _=0;for(let v of o.items){let b=q(v,l);b>_&&(_=b)}return _}else if(o instanceof C){let _=q(o.key,l),v=q(o.value,l);return Math.max(_,v)}return 1},R=class extends h{static stringify(o,l){let{range:_,source:v}=o,{anchors:b,doc:S,implicitKey:A,inStringifyKey:N}=l,j=Object.keys(b).find(Q=>b[Q]===v);if(!j&&N&&(j=S.anchors.getName(v)||S.anchors.newName()),j)return`*${j}${A?" ":""}`;let F=S.anchors.getName(v)?"Alias node must be after source node":"Source node not found for alias node";throw new Error(`${F} [${_}]`)}constructor(o){super(),this.source=o,this.type=e.Type.ALIAS}set tag(o){throw new Error("Alias nodes cannot have tags")}toJSON(o,l){if(!l)return d(this.source,o,l);let{anchors:_,maxAliasCount:v}=l,b=_.get(this.source);if(!b||b.res===void 0){let S="This should not happen: Alias anchor was not resolved?";throw this.cstNode?new e.YAMLReferenceError(this.cstNode,S):new ReferenceError(S)}if(v>=0&&(b.count+=1,b.aliasCount===0&&(b.aliasCount=q(this.source,_)),b.count*b.aliasCount>v)){let S="Excessive alias count indicates a resource exhaustion attack";throw this.cstNode?new e.YAMLReferenceError(this.cstNode,S):new ReferenceError(S)}return b.res}toString(o){return R.stringify(this,o)}};e._defineProperty(R,"default",!0);function B(o,l){let _=l instanceof y?l.value:l;for(let v of o)if(v instanceof C&&(v.key===l||v.key===_||v.key&&v.key.value===_))return v}var U=class extends w{add(o,l){o?o instanceof C||(o=new C(o.key||o,o.value)):o=new C(o);let _=B(this.items,o.key),v=this.schema&&this.schema.sortMapEntries;if(_)if(l)_.value=o.value;else throw new Error(`Key ${o.key} already set`);else if(v){let b=this.items.findIndex(S=>v(o,S)<0);b===-1?this.items.push(o):this.items.splice(b,0,o)}else this.items.push(o)}delete(o){let l=B(this.items,o);return l?this.items.splice(this.items.indexOf(l),1).length>0:!1}get(o,l){let _=B(this.items,o),v=_&&_.value;return!l&&v instanceof y?v.value:v}has(o){return!!B(this.items,o)}set(o,l){this.add(new C(o,l),!0)}toJSON(o,l,_){let v=_?new _:l&&l.mapAsMap?new Map:{};l&&l.onCreate&&l.onCreate(v);for(let b of this.items)b.addToJSMap(l,v);return v}toString(o,l,_){if(!o)return JSON.stringify(this);for(let v of this.items)if(!(v instanceof C))throw new Error(`Map items must all be pairs; found ${JSON.stringify(v)} instead`);return super.toString(o,{blockItem:v=>v.str,flowChars:{start:"{",end:"}"},isMap:!0,itemIndent:o.indent||""},l,_)}},f="<<",i=class extends C{constructor(o){if(o instanceof C){let l=o.value;l instanceof T||(l=new T,l.items.push(o.value),l.range=o.value.range),super(o.key,l),this.range=o.range}else super(new y(f),new T);this.type=C.Type.MERGE_PAIR}addToJSMap(o,l){for(let{source:_}of this.value.items){if(!(_ instanceof U))throw new Error("Merge sources must be maps");let v=_.toJSON(null,o,Map);for(let[b,S]of v)l instanceof Map?l.has(b)||l.set(b,S):l instanceof Set?l.add(b):Object.prototype.hasOwnProperty.call(l,b)||Object.defineProperty(l,b,{value:S,writable:!0,enumerable:!0,configurable:!0})}return l}toString(o,l){let _=this.value;if(_.items.length>1)return super.toString(o,l);this.value=_.items[0];let v=super.toString(o,l);return this.value=_,v}},t={defaultType:e.Type.BLOCK_LITERAL,lineWidth:76},n={trueStr:"true",falseStr:"false"},a={asBigInt:!1},m={nullStr:"null"},p={defaultType:e.Type.PLAIN,doubleQuoted:{jsonEncoding:!1,minMultiLineLength:40},fold:{lineWidth:80,minContentWidth:20}};function u(o,l,_){for(let{format:v,test:b,resolve:S}of l)if(b){let A=o.match(b);if(A){let N=S.apply(null,A);return N instanceof y||(N=new y(N)),v&&(N.format=v),N}}return _&&(o=_(o)),new y(o)}var g="flow",L="block",P="quoted",$=(o,l)=>{let _=o[l+1];for(;_===" "||_===" ";){do _=o[l+=1];while(_&&_!==` +`);_=o[l+1]}return l};function K(o,l,_,v){let{indentAtStart:b,lineWidth:S=80,minContentWidth:A=20,onFold:N,onOverflow:j}=v;if(!S||S<0)return o;let F=Math.max(1+A,1+S-l.length);if(o.length<=F)return o;let Q=[],H={},oe=S-l.length;typeof b=="number"&&(b>S-Math.max(2,A)?Q.push(0):oe=S-b);let le,Z,ee=!1,X=-1,de=-1,ne=-1;_===L&&(X=$(o,X),X!==-1&&(oe=X+F));for(let ce;ce=o[X+=1];){if(_===P&&ce==="\\"){switch(de=X,o[X+1]){case"x":X+=3;break;case"u":X+=5;break;case"U":X+=9;break;default:X+=1}ne=X}if(ce===` +`)_===L&&(X=$(o,X)),oe=X+F,le=void 0;else{if(ce===" "&&Z&&Z!==" "&&Z!==` +`&&Z!==" "){let fe=o[X+1];fe&&fe!==" "&&fe!==` +`&&fe!==" "&&(le=X)}if(X>=oe)if(le)Q.push(le),oe=le+F,le=void 0;else if(_===P){for(;Z===" "||Z===" ";)Z=ce,ce=o[X+=1],ee=!0;let fe=X>ne+1?X-2:de-1;if(H[fe])return o;Q.push(fe),H[fe]=!0,oe=fe+F,le=void 0}else ee=!0}Z=ce}if(ee&&j&&j(),Q.length===0)return o;N&&N();let he=o.slice(0,Q[0]);for(let ce=0;ce{let{indentAtStart:l}=o;return l?Object.assign({indentAtStart:l},p.fold):p.fold},z=o=>/^(%|---|\.\.\.)/m.test(o);function ae(o,l,_){if(!l||l<0)return!1;let v=l-_,b=o.length;if(b<=v)return!1;for(let S=0,A=0;Sv)return!0;if(A=S+1,b-A<=v)return!1}return!0}function ue(o,l){let{implicitKey:_}=l,{jsonEncoding:v,minMultiLineLength:b}=p.doubleQuoted,S=JSON.stringify(o);if(v)return S;let A=l.indent||(z(o)?" ":""),N="",j=0;for(let F=0,Q=S[F];Q;Q=S[++F])if(Q===" "&&S[F+1]==="\\"&&S[F+2]==="n"&&(N+=S.slice(j,F)+"\\ ",F+=1,j=F,Q="\\"),Q==="\\")switch(S[F+1]){case"u":{N+=S.slice(j,F);let H=S.substr(F+2,4);switch(H){case"0000":N+="\\0";break;case"0007":N+="\\a";break;case"000b":N+="\\v";break;case"001b":N+="\\e";break;case"0085":N+="\\N";break;case"00a0":N+="\\_";break;case"2028":N+="\\L";break;case"2029":N+="\\P";break;default:H.substr(0,2)==="00"?N+="\\x"+H.substr(2):N+=S.substr(F,6)}F+=5,j=F+1}break;case"n":if(_||S[F+2]==='"'||S.length";if(!A)return Q+` +`;let H="",oe="";if(A=A.replace(/[\n\t ]*$/,Z=>{let ee=Z.indexOf(` +`);return ee===-1?Q+="-":(A===Z||ee!==Z.length-1)&&(Q+="+",v&&v()),oe=Z.replace(/\n$/,""),""}).replace(/^[\n ]*/,Z=>{Z.indexOf(" ")!==-1&&(Q+=j);let ee=Z.match(/ +$/);return ee?(H=Z.slice(0,-ee[0].length),ee[0]):(H=Z,"")}),oe&&(oe=oe.replace(/\n+(?!\n|$)/g,`$&${N}`)),H&&(H=H.replace(/\n+/g,`$&${N}`)),b&&(Q+=" #"+b.replace(/ ?[\r\n]+/g," "),_&&_()),!A)return`${Q}${j} +${N}${oe}`;if(F)return A=A.replace(/\n+/g,`$&${N}`),`${Q} +${N}${H}${A}${oe}`;A=A.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${N}`);let le=K(`${H}${A}${oe}`,N,L,p.fold);return`${Q} +${N}${le}`}function O(o,l,_,v){let{comment:b,type:S,value:A}=o,{actualString:N,implicitKey:j,indent:F,inFlow:Q}=l;if(j&&/[\n[\]{},]/.test(A)||Q&&/[[\]{},]/.test(A))return ue(A,l);if(!A||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(A))return j||Q||A.indexOf(` +`)===-1?A.indexOf('"')!==-1&&A.indexOf("'")===-1?ge(A,l):ue(A,l):pe(o,l,_,v);if(!j&&!Q&&S!==e.Type.PLAIN&&A.indexOf(` +`)!==-1)return pe(o,l,_,v);if(F===""&&z(A))return l.forceBlockIndent=!0,pe(o,l,_,v);let H=A.replace(/\n+/g,`$& +${F}`);if(N){let{tags:le}=l.doc.schema;if(typeof u(H,le,le.scalarFallback).value!="string")return ue(A,l)}let oe=j?H:K(H,F,g,V(l));return b&&!Q&&(oe.indexOf(` +`)!==-1||b.indexOf(` +`)!==-1)?(_&&_(),r(oe,F,b)):oe}function W(o,l,_,v){let{defaultType:b}=p,{implicitKey:S,inFlow:A}=l,{type:N,value:j}=o;typeof j!="string"&&(j=String(j),o=Object.assign({},o,{value:j}));let F=H=>{switch(H){case e.Type.BLOCK_FOLDED:case e.Type.BLOCK_LITERAL:return pe(o,l,_,v);case e.Type.QUOTE_DOUBLE:return ue(j,l);case e.Type.QUOTE_SINGLE:return ge(j,l);case e.Type.PLAIN:return O(o,l,_,v);default:return null}};(N!==e.Type.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(j)||(S||A)&&(N===e.Type.BLOCK_FOLDED||N===e.Type.BLOCK_LITERAL))&&(N=e.Type.QUOTE_DOUBLE);let Q=F(N);if(Q===null&&(Q=F(b),Q===null))throw new Error(`Unsupported default string type ${b}`);return Q}function J(o){let{format:l,minFractionDigits:_,tag:v,value:b}=o;if(typeof b=="bigint")return String(b);if(!isFinite(b))return isNaN(b)?".nan":b<0?"-.inf":".inf";let S=JSON.stringify(b);if(!l&&_&&(!v||v==="tag:yaml.org,2002:float")&&/^\d/.test(S)){let A=S.indexOf(".");A<0&&(A=S.length,S+=".");let N=_-(S.length-A-1);for(;N-- >0;)S+="0"}return S}function x(o,l){let _,v;switch(l.type){case e.Type.FLOW_MAP:_="}",v="flow map";break;case e.Type.FLOW_SEQ:_="]",v="flow sequence";break;default:o.push(new e.YAMLSemanticError(l,"Not a flow collection!?"));return}let b;for(let S=l.items.length-1;S>=0;--S){let A=l.items[S];if(!A||A.type!==e.Type.COMMENT){b=A;break}}if(b&&b.char!==_){let S=`Expected ${v} to end with ${_}`,A;typeof b.offset=="number"?(A=new e.YAMLSemanticError(l,S),A.offset=b.offset+1):(A=new e.YAMLSemanticError(b,S),b.range&&b.range.end&&(A.offset=b.range.end-b.range.start)),o.push(A)}}function G(o,l){let _=l.context.src[l.range.start-1];if(_!==` +`&&_!==" "&&_!==" "){let v="Comments must be separated from other tokens by white space characters";o.push(new e.YAMLSemanticError(l,v))}}function re(o,l){let _=String(l),v=_.substr(0,8)+"..."+_.substr(-8);return new e.YAMLSemanticError(o,`The "${v}" key is too long`)}function _e(o,l){for(let{afterKey:_,before:v,comment:b}of l){let S=o.items[v];S?(_&&S.value&&(S=S.value),b===void 0?(_||!S.commentBefore)&&(S.spaceBefore=!0):S.commentBefore?S.commentBefore+=` +`+b:S.commentBefore=b):b!==void 0&&(o.comment?o.comment+=` +`+b:o.comment=b)}}function ye(o,l){let _=l.strValue;return _?typeof _=="string"?_:(_.errors.forEach(v=>{v.source||(v.source=l),o.errors.push(v)}),_.str):""}function be(o,l){let{handle:_,suffix:v}=l.tag,b=o.tagPrefixes.find(S=>S.handle===_);if(!b){let S=o.getDefaults().tagPrefixes;if(S&&(b=S.find(A=>A.handle===_)),!b)throw new e.YAMLSemanticError(l,`The ${_} tag handle is non-default and was not declared.`)}if(!v)throw new e.YAMLSemanticError(l,`The ${_} tag has no suffix.`);if(_==="!"&&(o.version||o.options.version)==="1.0"){if(v[0]==="^")return o.warnings.push(new e.YAMLWarning(l,"YAML 1.0 ^ tag expansion is not supported")),v;if(/[:/]/.test(v)){let S=v.match(/^([a-z0-9-]+)\/(.*)/i);return S?`tag:${S[1]}.yaml.org,2002:${S[2]}`:`tag:${v}`}}return b.prefix+decodeURIComponent(v)}function ve(o,l){let{tag:_,type:v}=l,b=!1;if(_){let{handle:S,suffix:A,verbatim:N}=_;if(N){if(N!=="!"&&N!=="!!")return N;let j=`Verbatim tags aren't resolved, so ${N} is invalid.`;o.errors.push(new e.YAMLSemanticError(l,j))}else if(S==="!"&&!A)b=!0;else try{return be(o,l)}catch(j){o.errors.push(j)}}switch(v){case e.Type.BLOCK_FOLDED:case e.Type.BLOCK_LITERAL:case e.Type.QUOTE_DOUBLE:case e.Type.QUOTE_SINGLE:return e.defaultTags.STR;case e.Type.FLOW_MAP:case e.Type.MAP:return e.defaultTags.MAP;case e.Type.FLOW_SEQ:case e.Type.SEQ:return e.defaultTags.SEQ;case e.Type.PLAIN:return b?e.defaultTags.STR:null;default:return null}}function Ne(o,l,_){let{tags:v}=o.schema,b=[];for(let A of v)if(A.tag===_)if(A.test)b.push(A);else{let N=A.resolve(o,l);return N instanceof w?N:new y(N)}let S=ye(o,l);return typeof S=="string"&&b.length>0?u(S,b,v.scalarFallback):null}function Pe(o){let{type:l}=o;switch(l){case e.Type.FLOW_MAP:case e.Type.MAP:return e.defaultTags.MAP;case e.Type.FLOW_SEQ:case e.Type.SEQ:return e.defaultTags.SEQ;default:return e.defaultTags.STR}}function at(o,l,_){try{let v=Ne(o,l,_);if(v)return _&&l.tag&&(v.tag=_),v}catch(v){return v.source||(v.source=l),o.errors.push(v),null}try{let v=Pe(l);if(!v)throw new Error(`The tag ${_} is unavailable`);let b=`The tag ${_} is unavailable, falling back to ${v}`;o.warnings.push(new e.YAMLWarning(l,b));let S=Ne(o,l,v);return S.tag=_,S}catch(v){let b=new e.YAMLReferenceError(l,v.message);return b.stack=v.stack,o.errors.push(b),null}}var ot=o=>{if(!o)return!1;let{type:l}=o;return l===e.Type.MAP_KEY||l===e.Type.MAP_VALUE||l===e.Type.SEQ_ITEM};function lt(o,l){let _={before:[],after:[]},v=!1,b=!1,S=ot(l.context.parent)?l.context.parent.props.concat(l.props):l.props;for(let{start:A,end:N}of S)switch(l.context.src[A]){case e.Char.COMMENT:{if(!l.commentHasRequiredWhitespace(A)){let H="Comments must be separated from other tokens by white space characters";o.push(new e.YAMLSemanticError(l,H))}let{header:j,valueRange:F}=l;(F&&(A>F.start||j&&A>j.start)?_.after:_.before).push(l.context.src.slice(A+1,N));break}case e.Char.ANCHOR:if(v){let j="A node can have at most one anchor";o.push(new e.YAMLSemanticError(l,j))}v=!0;break;case e.Char.TAG:if(b){let j="A node can have at most one tag";o.push(new e.YAMLSemanticError(l,j))}b=!0;break}return{comments:_,hasAnchor:v,hasTag:b}}function ct(o,l){let{anchors:_,errors:v,schema:b}=o;if(l.type===e.Type.ALIAS){let A=l.rawValue,N=_.getNode(A);if(!N){let F=`Aliased anchor not found: ${A}`;return v.push(new e.YAMLReferenceError(l,F)),null}let j=new R(N);return _._cstAliases.push(j),j}let S=ve(o,l);if(S)return at(o,l,S);if(l.type!==e.Type.PLAIN){let A=`Failed to resolve ${l.type} node here`;return v.push(new e.YAMLSyntaxError(l,A)),null}try{let A=ye(o,l);return u(A,b.tags,b.tags.scalarFallback)}catch(A){return A.source||(A.source=l),v.push(A),null}}function we(o,l){if(!l)return null;l.error&&o.errors.push(l.error);let{comments:_,hasAnchor:v,hasTag:b}=lt(o.errors,l);if(v){let{anchors:A}=o,N=l.anchor,j=A.getNode(N);j&&(A.map[A.newName(N)]=j),A.map[N]=l}if(l.type===e.Type.ALIAS&&(v||b)){let A="An alias node must not specify any properties";o.errors.push(new e.YAMLSemanticError(l,A))}let S=ct(o,l);if(S){S.range=[l.range.start,l.range.end],o.options.keepCstNodes&&(S.cstNode=l),o.options.keepNodeTypes&&(S.type=l.type);let A=_.before.join(` +`);A&&(S.commentBefore=S.commentBefore?`${S.commentBefore} +${A}`:A);let N=_.after.join(` +`);N&&(S.comment=S.comment?`${S.comment} +${N}`:N)}return l.resolved=S}function ut(o,l){if(l.type!==e.Type.MAP&&l.type!==e.Type.FLOW_MAP){let A=`A ${l.type} node cannot be resolved as a mapping`;return o.errors.push(new e.YAMLSyntaxError(l,A)),null}let{comments:_,items:v}=l.type===e.Type.FLOW_MAP?ht(o,l):dt(o,l),b=new U;b.items=v,_e(b,_);let S=!1;for(let A=0;A{if(Q instanceof R){let{type:H}=Q.source;return H===e.Type.MAP||H===e.Type.FLOW_MAP?!1:F="Merge nodes aliases can only point to maps"}return F="Merge nodes can only have Alias nodes as values"}),F&&o.errors.push(new e.YAMLSemanticError(l,F))}else for(let j=A+1;j{let{context:{lineStart:l,node:_,src:v},props:b}=o;if(b.length===0)return!1;let{start:S}=b[0];if(_&&S>_.valueRange.start||v[S]!==e.Char.COMMENT)return!1;for(let A=l;A0){j=new e.PlainValue(e.Type.PLAIN,[]),j.context={parent:N,src:N.context.src};let Q=N.range.start+1;if(j.range={start:Q,end:Q},j.valueRange={start:Q,end:Q},typeof N.range.origStart=="number"){let H=N.range.origStart+1;j.range.origStart=j.range.origEnd=H,j.valueRange.origStart=j.valueRange.origEnd=H}}let F=new C(b,we(o,j));mt(N,F),v.push(F),b&&typeof S=="number"&&N.range.start>S+1024&&o.errors.push(re(l,b)),b=void 0,S=null}break;default:b!==void 0&&v.push(new C(b)),b=we(o,N),S=N.range.start,N.error&&o.errors.push(N.error);e:for(let j=A+1;;++j){let F=l.items[j];switch(F&&F.type){case e.Type.BLANK_LINE:case e.Type.COMMENT:continue e;case e.Type.MAP_VALUE:break e;default:{let Q="Implicit map keys need to be followed by map values";o.errors.push(new e.YAMLSemanticError(N,Q));break e}}}if(N.valueRangeContainsNewline){let j="Implicit map keys need to be on a single line";o.errors.push(new e.YAMLSemanticError(N,j))}}}return b!==void 0&&v.push(new C(b)),{comments:_,items:v}}function ht(o,l){let _=[],v=[],b,S=!1,A="{";for(let N=0;NS instanceof C&&S.key instanceof w)){let S="Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";o.warnings.push(new e.YAMLWarning(l,S))}return l.resolved=b,b}function gt(o,l){let _=[],v=[];for(let b=0;bA+1024&&o.errors.push(re(l,S));let{src:Z}=j.context;for(let ee=A;eeu instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve:(u,g)=>{let L=r.resolveString(u,g);if(typeof Buffer=="function")return Buffer.from(L,"base64");if(typeof atob=="function"){let P=atob(L.replace(/[\n\r]/g,"")),$=new Uint8Array(P.length);for(let K=0;K{let{comment:$,type:K,value:V}=u,z;if(typeof Buffer=="function")z=V instanceof Buffer?V.toString("base64"):Buffer.from(V.buffer).toString("base64");else if(typeof btoa=="function"){let ae="";for(let ue=0;ue1){let V="Each pair must have its own sequence indicator";throw new e.YAMLSemanticError(g,V)}let K=$.items[0]||new r.Pair;$.commentBefore&&(K.commentBefore=K.commentBefore?`${$.commentBefore} +${K.commentBefore}`:$.commentBefore),$.comment&&(K.comment=K.comment?`${$.comment} +${K.comment}`:$.comment),$=K}L.items[P]=$ instanceof r.Pair?$:new r.Pair($)}}return L}function d(u,g,L){let P=new r.YAMLSeq(u);P.tag="tag:yaml.org,2002:pairs";for(let $ of g){let K,V;if(Array.isArray($))if($.length===2)K=$[0],V=$[1];else throw new TypeError(`Expected [key, value] tuple: ${$}`);else if($&&$ instanceof Object){let ae=Object.keys($);if(ae.length===1)K=ae[0],V=$[K];else throw new TypeError(`Expected { key: value } tuple: ${$}`)}else K=$;let z=u.createPair(K,V,L);P.items.push(z)}return P}var y={default:!1,tag:"tag:yaml.org,2002:pairs",resolve:h,createNode:d},M=class extends r.YAMLSeq{constructor(){super(),e._defineProperty(this,"add",r.YAMLMap.prototype.add.bind(this)),e._defineProperty(this,"delete",r.YAMLMap.prototype.delete.bind(this)),e._defineProperty(this,"get",r.YAMLMap.prototype.get.bind(this)),e._defineProperty(this,"has",r.YAMLMap.prototype.has.bind(this)),e._defineProperty(this,"set",r.YAMLMap.prototype.set.bind(this)),this.tag=M.tag}toJSON(u,g){let L=new Map;g&&g.onCreate&&g.onCreate(L);for(let P of this.items){let $,K;if(P instanceof r.Pair?($=r.toJSON(P.key,"",g),K=r.toJSON(P.value,$,g)):$=r.toJSON(P,"",g),L.has($))throw new Error("Ordered maps must not include duplicate keys");L.set($,K)}return L}};e._defineProperty(M,"tag","tag:yaml.org,2002:omap");function k(u,g){let L=h(u,g),P=[];for(let{key:$}of L.items)if($ instanceof r.Scalar)if(P.includes($.value)){let K="Ordered maps must not include duplicate keys";throw new e.YAMLSemanticError(g,K)}else P.push($.value);return Object.assign(new M,L)}function w(u,g,L){let P=d(u,g,L),$=new M;return $.items=P.items,$}var E={identify:u=>u instanceof Map,nodeClass:M,default:!1,tag:"tag:yaml.org,2002:omap",resolve:k,createNode:w},T=class extends r.YAMLMap{constructor(){super(),this.tag=T.tag}add(u){let g=u instanceof r.Pair?u:new r.Pair(u);r.findPair(this.items,g.key)||this.items.push(g)}get(u,g){let L=r.findPair(this.items,u);return!g&&L instanceof r.Pair?L.key instanceof r.Scalar?L.key.value:L.key:L}set(u,g){if(typeof g!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof g}`);let L=r.findPair(this.items,u);L&&!g?this.items.splice(this.items.indexOf(L),1):!L&&g&&this.items.push(new r.Pair(u))}toJSON(u,g){return super.toJSON(u,g,Set)}toString(u,g,L){if(!u)return JSON.stringify(this);if(this.hasAllNullValues())return super.toString(u,g,L);throw new Error("Set items must all have null values")}};e._defineProperty(T,"tag","tag:yaml.org,2002:set");function I(u,g){let L=r.resolveMap(u,g);if(!L.hasAllNullValues())throw new e.YAMLSemanticError(g,"Set items must all have null values");return Object.assign(new T,L)}function C(u,g,L){let P=new T;for(let $ of g)P.items.push(u.createPair($,null,L));return P}var q={identify:u=>u instanceof Set,nodeClass:T,default:!1,tag:"tag:yaml.org,2002:set",resolve:I,createNode:C},R=(u,g)=>{let L=g.split(":").reduce((P,$)=>P*60+Number($),0);return u==="-"?-L:L},B=u=>{let{value:g}=u;if(isNaN(g)||!isFinite(g))return r.stringifyNumber(g);let L="";g<0&&(L="-",g=Math.abs(g));let P=[g%60];return g<60?P.unshift(0):(g=Math.round((g-P[0])/60),P.unshift(g%60),g>=60&&(g=Math.round((g-P[0])/60),P.unshift(g))),L+P.map($=>$<10?"0"+String($):String($)).join(":").replace(/000000\d*$/,"")},U={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,resolve:(u,g,L)=>R(g,L.replace(/_/g,"")),stringify:B},f={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,resolve:(u,g,L)=>R(g,L.replace(/_/g,"")),stringify:B},i={identify:u=>u instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),resolve:(u,g,L,P,$,K,V,z,ae)=>{z&&(z=(z+"00").substr(1,3));let ue=Date.UTC(g,L-1,P,$||0,K||0,V||0,z||0);if(ae&&ae!=="Z"){let ge=R(ae[0],ae.slice(1));Math.abs(ge)<30&&(ge*=60),ue-=6e4*ge}return new Date(ue)},stringify:u=>{let{value:g}=u;return g.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")}};function t(u){let g=typeof Te<"u"&&Te.env||{};return u?typeof YAML_SILENCE_DEPRECATION_WARNINGS<"u"?!YAML_SILENCE_DEPRECATION_WARNINGS:!g.YAML_SILENCE_DEPRECATION_WARNINGS:typeof YAML_SILENCE_WARNINGS<"u"?!YAML_SILENCE_WARNINGS:!g.YAML_SILENCE_WARNINGS}function n(u,g){if(t(!1)){let L=typeof Te<"u"&&Te.emitWarning;L?L(u,g):console.warn(g?`${g}: ${u}`:u)}}function a(u){if(t(!0)){let g=u.replace(/.*yaml[/\\]/i,"").replace(/\.js$/,"").replace(/\\/g,"/");n(`The endpoint 'yaml/${g}' will be removed in a future release.`,"DeprecationWarning")}}var m={};function p(u,g){if(!m[u]&&t(!0)){m[u]=!0;let L=`The option '${u}' will be removed in a future release`;L+=g?`, use '${g}' instead.`:".",n(L,"DeprecationWarning")}}s.binary=c,s.floatTime=f,s.intTime=U,s.omap=E,s.pairs=y,s.set=q,s.timestamp=i,s.warn=n,s.warnFileDeprecation=a,s.warnOptionDeprecation=p}}),it=D({"node_modules/yaml/dist/Schema-88e323a7.js"(s){"use strict";Y();var e=Me(),r=ke(),c=st();function h(O,W,J){let x=new r.YAMLMap(O);if(W instanceof Map)for(let[G,re]of W)x.items.push(O.createPair(G,re,J));else if(W&&typeof W=="object")for(let G of Object.keys(W))x.items.push(O.createPair(G,W[G],J));return typeof O.sortMapEntries=="function"&&x.items.sort(O.sortMapEntries),x}var d={createNode:h,default:!0,nodeClass:r.YAMLMap,tag:"tag:yaml.org,2002:map",resolve:r.resolveMap};function y(O,W,J){let x=new r.YAMLSeq(O);if(W&&W[Symbol.iterator])for(let G of W){let re=O.createNode(G,J.wrapScalars,null,J);x.items.push(re)}return x}var M={createNode:y,default:!0,nodeClass:r.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve:r.resolveSeq},k={identify:O=>typeof O=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify(O,W,J,x){return W=Object.assign({actualString:!0},W),r.stringifyString(O,W,J,x)},options:r.strOptions},w=[d,M,k],E=O=>typeof O=="bigint"||Number.isInteger(O),T=(O,W,J)=>r.intOptions.asBigInt?BigInt(O):parseInt(W,J);function I(O,W,J){let{value:x}=O;return E(x)&&x>=0?J+x.toString(W):r.stringifyNumber(O)}var C={identify:O=>O==null,createNode:(O,W,J)=>J.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},q={identify:O=>typeof O=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:O=>O[0]==="t"||O[0]==="T",options:r.boolOptions,stringify:O=>{let{value:W}=O;return W?r.boolOptions.trueStr:r.boolOptions.falseStr}},R={identify:O=>E(O)&&O>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o([0-7]+)$/,resolve:(O,W)=>T(O,W,8),options:r.intOptions,stringify:O=>I(O,8,"0o")},B={identify:E,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:O=>T(O,O,10),options:r.intOptions,stringify:r.stringifyNumber},U={identify:O=>E(O)&&O>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x([0-9a-fA-F]+)$/,resolve:(O,W)=>T(O,W,16),options:r.intOptions,stringify:O=>I(O,16,"0x")},f={identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(O,W)=>W?NaN:O[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},i={identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:O=>parseFloat(O),stringify:O=>{let{value:W}=O;return Number(W).toExponential()}},t={identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,resolve(O,W,J){let x=W||J,G=new r.Scalar(parseFloat(O));return x&&x[x.length-1]==="0"&&(G.minFractionDigits=x.length),G},stringify:r.stringifyNumber},n=w.concat([C,q,R,B,U,f,i,t]),a=O=>typeof O=="bigint"||Number.isInteger(O),m=O=>{let{value:W}=O;return JSON.stringify(W)},p=[d,M,{identify:O=>typeof O=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify:m},{identify:O=>O==null,createNode:(O,W,J)=>J.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:m},{identify:O=>typeof O=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:O=>O==="true",stringify:m},{identify:a,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:O=>r.intOptions.asBigInt?BigInt(O):parseInt(O,10),stringify:O=>{let{value:W}=O;return a(W)?W.toString():JSON.stringify(W)}},{identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:O=>parseFloat(O),stringify:m}];p.scalarFallback=O=>{throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(O)}`)};var u=O=>{let{value:W}=O;return W?r.boolOptions.trueStr:r.boolOptions.falseStr},g=O=>typeof O=="bigint"||Number.isInteger(O);function L(O,W,J){let x=W.replace(/_/g,"");if(r.intOptions.asBigInt){switch(J){case 2:x=`0b${x}`;break;case 8:x=`0o${x}`;break;case 16:x=`0x${x}`;break}let re=BigInt(x);return O==="-"?BigInt(-1)*re:re}let G=parseInt(x,J);return O==="-"?-1*G:G}function P(O,W,J){let{value:x}=O;if(g(x)){let G=x.toString(W);return x<0?"-"+J+G.substr(1):J+G}return r.stringifyNumber(O)}var $=w.concat([{identify:O=>O==null,createNode:(O,W,J)=>J.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},{identify:O=>typeof O=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>!0,options:r.boolOptions,stringify:u},{identify:O=>typeof O=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,resolve:()=>!1,options:r.boolOptions,stringify:u},{identify:g,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^([-+]?)0b([0-1_]+)$/,resolve:(O,W,J)=>L(W,J,2),stringify:O=>P(O,2,"0b")},{identify:g,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^([-+]?)0([0-7_]+)$/,resolve:(O,W,J)=>L(W,J,8),stringify:O=>P(O,8,"0")},{identify:g,default:!0,tag:"tag:yaml.org,2002:int",test:/^([-+]?)([0-9][0-9_]*)$/,resolve:(O,W,J)=>L(W,J,10),stringify:r.stringifyNumber},{identify:g,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^([-+]?)0x([0-9a-fA-F_]+)$/,resolve:(O,W,J)=>L(W,J,16),stringify:O=>P(O,16,"0x")},{identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(O,W)=>W?NaN:O[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},{identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:O=>parseFloat(O.replace(/_/g,"")),stringify:O=>{let{value:W}=O;return Number(W).toExponential()}},{identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,resolve(O,W){let J=new r.Scalar(parseFloat(O.replace(/_/g,"")));if(W){let x=W.replace(/_/g,"");x[x.length-1]==="0"&&(J.minFractionDigits=x.length)}return J},stringify:r.stringifyNumber}],c.binary,c.omap,c.pairs,c.set,c.intTime,c.floatTime,c.timestamp),K={core:n,failsafe:w,json:p,yaml11:$},V={binary:c.binary,bool:q,float:t,floatExp:i,floatNaN:f,floatTime:c.floatTime,int:B,intHex:U,intOct:R,intTime:c.intTime,map:d,null:C,omap:c.omap,pairs:c.pairs,seq:M,set:c.set,timestamp:c.timestamp};function z(O,W,J){if(W){let x=J.filter(re=>re.tag===W),G=x.find(re=>!re.format)||x[0];if(!G)throw new Error(`Tag ${W} not found`);return G}return J.find(x=>(x.identify&&x.identify(O)||x.class&&O instanceof x.class)&&!x.format)}function ae(O,W,J){if(O instanceof r.Node)return O;let{defaultPrefix:x,onTagObj:G,prevObjects:re,schema:_e,wrapScalars:ye}=J;W&&W.startsWith("!!")&&(W=x+W.slice(2));let be=z(O,W,_e.tags);if(!be){if(typeof O.toJSON=="function"&&(O=O.toJSON()),!O||typeof O!="object")return ye?new r.Scalar(O):O;be=O instanceof Map?d:O[Symbol.iterator]?M:d}G&&(G(be),delete J.onTagObj);let ve={value:void 0,node:void 0};if(O&&typeof O=="object"&&re){let Ne=re.get(O);if(Ne){let Pe=new r.Alias(Ne);return J.aliasNodes.push(Pe),Pe}ve.value=O,re.set(O,ve)}return ve.node=be.createNode?be.createNode(J.schema,O,J):ye?new r.Scalar(O):O,W&&ve.node instanceof r.Node&&(ve.node.tag=W),ve.node}function ue(O,W,J,x){let G=O[x.replace(/\W/g,"")];if(!G){let re=Object.keys(O).map(_e=>JSON.stringify(_e)).join(", ");throw new Error(`Unknown schema "${x}"; use one of ${re}`)}if(Array.isArray(J))for(let re of J)G=G.concat(re);else typeof J=="function"&&(G=J(G.slice()));for(let re=0;reJSON.stringify(ve)).join(", ");throw new Error(`Unknown custom tag "${_e}"; use one of ${be}`)}G[re]=ye}}return G}var ge=(O,W)=>O.keyW.key?1:0,pe=class{constructor(O){let{customTags:W,merge:J,schema:x,sortMapEntries:G,tags:re}=O;this.merge=!!J,this.name=x,this.sortMapEntries=G===!0?ge:G||null,!W&&re&&c.warnOptionDeprecation("tags","customTags"),this.tags=ue(K,V,W||re,x)}createNode(O,W,J,x){let G={defaultPrefix:pe.defaultPrefix,schema:this,wrapScalars:W},re=x?Object.assign(x,G):G;return ae(O,J,re)}createPair(O,W,J){J||(J={wrapScalars:!0});let x=this.createNode(O,J.wrapScalars,null,J),G=this.createNode(W,J.wrapScalars,null,J);return new r.Pair(x,G)}};e._defineProperty(pe,"defaultPrefix",e.defaultTagPrefix),e._defineProperty(pe,"defaultTags",e.defaultTags),s.Schema=pe}}),Kr=D({"node_modules/yaml/dist/Document-9b4560a1.js"(s){"use strict";Y();var e=Me(),r=ke(),c=it(),h={anchorPrefix:"a",customTags:null,indent:2,indentSeq:!0,keepCstNodes:!1,keepNodeTypes:!0,keepBlobsInJSON:!0,mapAsMap:!1,maxAliasCount:100,prettyErrors:!1,simpleKeys:!1,version:"1.2"},d={get binary(){return r.binaryOptions},set binary(t){Object.assign(r.binaryOptions,t)},get bool(){return r.boolOptions},set bool(t){Object.assign(r.boolOptions,t)},get int(){return r.intOptions},set int(t){Object.assign(r.intOptions,t)},get null(){return r.nullOptions},set null(t){Object.assign(r.nullOptions,t)},get str(){return r.strOptions},set str(t){Object.assign(r.strOptions,t)}},y={"1.0":{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:e.defaultTagPrefix},{handle:"!!",prefix:"tag:private.yaml.org,2002:"}]},1.1:{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:e.defaultTagPrefix}]},1.2:{schema:"core",merge:!1,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:e.defaultTagPrefix}]}};function M(t,n){if((t.version||t.options.version)==="1.0"){let p=n.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);if(p)return"!"+p[1];let u=n.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);return u?`!${u[1]}/${u[2]}`:`!${n.replace(/^tag:/,"")}`}let a=t.tagPrefixes.find(p=>n.indexOf(p.prefix)===0);if(!a){let p=t.getDefaults().tagPrefixes;a=p&&p.find(u=>n.indexOf(u.prefix)===0)}if(!a)return n[0]==="!"?n:`!<${n}>`;let m=n.substr(a.prefix.length).replace(/[!,[\]{}]/g,p=>({"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"})[p]);return a.handle+m}function k(t,n){if(n instanceof r.Alias)return r.Alias;if(n.tag){let p=t.filter(u=>u.tag===n.tag);if(p.length>0)return p.find(u=>u.format===n.format)||p[0]}let a,m;if(n instanceof r.Scalar){m=n.value;let p=t.filter(u=>u.identify&&u.identify(m)||u.class&&m instanceof u.class);a=p.find(u=>u.format===n.format)||p.find(u=>!u.format)}else m=n,a=t.find(p=>p.nodeClass&&m instanceof p.nodeClass);if(!a){let p=m&&m.constructor?m.constructor.name:typeof m;throw new Error(`Tag not resolved for ${p} value`)}return a}function w(t,n,a){let{anchors:m,doc:p}=a,u=[],g=p.anchors.getName(t);return g&&(m[g]=t,u.push(`&${g}`)),t.tag?u.push(M(p,t.tag)):n.default||u.push(M(p,n.tag)),u.join(" ")}function E(t,n,a,m){let{anchors:p,schema:u}=n.doc,g;if(!(t instanceof r.Node)){let $={aliasNodes:[],onTagObj:K=>g=K,prevObjects:new Map};t=u.createNode(t,!0,null,$);for(let K of $.aliasNodes){K.source=K.source.node;let V=p.getName(K.source);V||(V=p.newName(),p.map[V]=K.source)}}if(t instanceof r.Pair)return t.toString(n,a,m);g||(g=k(u.tags,t));let L=w(t,g,n);L.length>0&&(n.indentAtStart=(n.indentAtStart||0)+L.length+1);let P=typeof g.stringify=="function"?g.stringify(t,n,a,m):t instanceof r.Scalar?r.stringifyString(t,n,a,m):t.toString(n,a,m);return L?t instanceof r.Scalar||P[0]==="{"||P[0]==="["?`${L} ${P}`:`${L} +${n.indent}${P}`:P}var T=class{static validAnchorNode(t){return t instanceof r.Scalar||t instanceof r.YAMLSeq||t instanceof r.YAMLMap}constructor(t){e._defineProperty(this,"map",Object.create(null)),this.prefix=t}createAlias(t,n){return this.setAnchor(t,n),new r.Alias(t)}createMergePair(){let t=new r.Merge;for(var n=arguments.length,a=new Array(n),m=0;m{if(p instanceof r.Alias){if(p.source instanceof r.YAMLMap)return p}else if(p instanceof r.YAMLMap)return this.createAlias(p);throw new Error("Merge sources must be Map nodes or their Aliases")}),t}getName(t){let{map:n}=this;return Object.keys(n).find(a=>n[a]===t)}getNames(){return Object.keys(this.map)}getNode(t){return this.map[t]}newName(t){t||(t=this.prefix);let n=Object.keys(this.map);for(let a=1;;++a){let m=`${t}${a}`;if(!n.includes(m))return m}}resolveNodes(){let{map:t,_cstAliases:n}=this;Object.keys(t).forEach(a=>{t[a]=t[a].resolved}),n.forEach(a=>{a.source=a.source.resolved}),delete this._cstAliases}setAnchor(t,n){if(t!=null&&!T.validAnchorNode(t))throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");if(n&&/[\x00-\x19\s,[\]{}]/.test(n))throw new Error("Anchor names must not contain whitespace or control characters");let{map:a}=this,m=t&&Object.keys(a).find(p=>a[p]===t);if(m)if(n)m!==n&&(delete a[m],a[n]=t);else return m;else{if(!n){if(!t)return null;n=this.newName()}a[n]=t}return n}},I=(t,n)=>{if(t&&typeof t=="object"){let{tag:a}=t;t instanceof r.Collection?(a&&(n[a]=!0),t.items.forEach(m=>I(m,n))):t instanceof r.Pair?(I(t.key,n),I(t.value,n)):t instanceof r.Scalar&&a&&(n[a]=!0)}return n},C=t=>Object.keys(I(t,{}));function q(t,n){let a={before:[],after:[]},m,p=!1;for(let u of n)if(u.valueRange){if(m!==void 0){let L="Document contains trailing content not separated by a ... or --- line";t.errors.push(new e.YAMLSyntaxError(u,L));break}let g=r.resolveNode(t,u);p&&(g.spaceBefore=!0,p=!1),m=g}else u.comment!==null?(m===void 0?a.before:a.after).push(u.comment):u.type===e.Type.BLANK_LINE&&(p=!0,m===void 0&&a.before.length>0&&!t.commentBefore&&(t.commentBefore=a.before.join(` +`),a.before=[]));if(t.contents=m||null,!m)t.comment=a.before.concat(a.after).join(` +`)||null;else{let u=a.before.join(` +`);if(u){let g=m instanceof r.Collection&&m.items[0]?m.items[0]:m;g.commentBefore=g.commentBefore?`${u} +${g.commentBefore}`:u}t.comment=a.after.join(` +`)||null}}function R(t,n){let{tagPrefixes:a}=t,[m,p]=n.parameters;if(!m||!p){let u="Insufficient parameters given for %TAG directive";throw new e.YAMLSemanticError(n,u)}if(a.some(u=>u.handle===m)){let u="The %TAG directive must only be given at most once per handle in the same document.";throw new e.YAMLSemanticError(n,u)}return{handle:m,prefix:p}}function B(t,n){let[a]=n.parameters;if(n.name==="YAML:1.0"&&(a="1.0"),!a){let m="Insufficient parameters given for %YAML directive";throw new e.YAMLSemanticError(n,m)}if(!y[a]){let p=`Document will be parsed as YAML ${t.version||t.options.version} rather than YAML ${a}`;t.warnings.push(new e.YAMLWarning(n,p))}return a}function U(t,n,a){let m=[],p=!1;for(let u of n){let{comment:g,name:L}=u;switch(L){case"TAG":try{t.tagPrefixes.push(R(t,u))}catch(P){t.errors.push(P)}p=!0;break;case"YAML":case"YAML:1.0":if(t.version){let P="The %YAML directive must only be given at most once per document.";t.errors.push(new e.YAMLSemanticError(u,P))}try{t.version=B(t,u)}catch(P){t.errors.push(P)}p=!0;break;default:if(L){let P=`YAML only supports %TAG and %YAML directives, and not %${L}`;t.warnings.push(new e.YAMLWarning(u,P))}}g&&m.push(g)}if(a&&!p&&(t.version||a.version||t.options.version)==="1.1"){let u=g=>{let{handle:L,prefix:P}=g;return{handle:L,prefix:P}};t.tagPrefixes=a.tagPrefixes.map(u),t.version=a.version}t.commentBefore=m.join(` +`)||null}function f(t){if(t instanceof r.Collection)return!0;throw new Error("Expected a YAML collection as document contents")}var i=class{constructor(t){this.anchors=new T(t.anchorPrefix),this.commentBefore=null,this.comment=null,this.contents=null,this.directivesEndMarker=null,this.errors=[],this.options=t,this.schema=null,this.tagPrefixes=[],this.version=null,this.warnings=[]}add(t){return f(this.contents),this.contents.add(t)}addIn(t,n){f(this.contents),this.contents.addIn(t,n)}delete(t){return f(this.contents),this.contents.delete(t)}deleteIn(t){return r.isEmptyPath(t)?this.contents==null?!1:(this.contents=null,!0):(f(this.contents),this.contents.deleteIn(t))}getDefaults(){return i.defaults[this.version]||i.defaults[this.options.version]||{}}get(t,n){return this.contents instanceof r.Collection?this.contents.get(t,n):void 0}getIn(t,n){return r.isEmptyPath(t)?!n&&this.contents instanceof r.Scalar?this.contents.value:this.contents:this.contents instanceof r.Collection?this.contents.getIn(t,n):void 0}has(t){return this.contents instanceof r.Collection?this.contents.has(t):!1}hasIn(t){return r.isEmptyPath(t)?this.contents!==void 0:this.contents instanceof r.Collection?this.contents.hasIn(t):!1}set(t,n){f(this.contents),this.contents.set(t,n)}setIn(t,n){r.isEmptyPath(t)?this.contents=n:(f(this.contents),this.contents.setIn(t,n))}setSchema(t,n){if(!t&&!n&&this.schema)return;typeof t=="number"&&(t=t.toFixed(1)),t==="1.0"||t==="1.1"||t==="1.2"?(this.version?this.version=t:this.options.version=t,delete this.options.schema):t&&typeof t=="string"&&(this.options.schema=t),Array.isArray(n)&&(this.options.customTags=n);let a=Object.assign({},this.getDefaults(),this.options);this.schema=new c.Schema(a)}parse(t,n){this.options.keepCstNodes&&(this.cstNode=t),this.options.keepNodeTypes&&(this.type="DOCUMENT");let{directives:a=[],contents:m=[],directivesEndMarker:p,error:u,valueRange:g}=t;if(u&&(u.source||(u.source=this),this.errors.push(u)),U(this,a,n),p&&(this.directivesEndMarker=!0),this.range=g?[g.start,g.end]:null,this.setSchema(),this.anchors._cstAliases=[],q(this,m),this.anchors.resolveNodes(),this.options.prettyErrors){for(let L of this.errors)L instanceof e.YAMLError&&L.makePretty();for(let L of this.warnings)L instanceof e.YAMLError&&L.makePretty()}return this}listNonDefaultTags(){return C(this.contents).filter(t=>t.indexOf(c.Schema.defaultPrefix)!==0)}setTagPrefix(t,n){if(t[0]!=="!"||t[t.length-1]!=="!")throw new Error("Handle must start and end with !");if(n){let a=this.tagPrefixes.find(m=>m.handle===t);a?a.prefix=n:this.tagPrefixes.push({handle:t,prefix:n})}else this.tagPrefixes=this.tagPrefixes.filter(a=>a.handle!==t)}toJSON(t,n){let{keepBlobsInJSON:a,mapAsMap:m,maxAliasCount:p}=this.options,u=a&&(typeof t!="string"||!(this.contents instanceof r.Scalar)),g={doc:this,indentStep:" ",keep:u,mapAsMap:u&&!!m,maxAliasCount:p,stringify:E},L=Object.keys(this.anchors.map);L.length>0&&(g.anchors=new Map(L.map($=>[this.anchors.map[$],{alias:[],aliasCount:0,count:1}])));let P=r.toJSON(this.contents,t,g);if(typeof n=="function"&&g.anchors)for(let{count:$,res:K}of g.anchors.values())n(K,$);return P}toString(){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");let t=this.options.indent;if(!Number.isInteger(t)||t<=0){let L=JSON.stringify(t);throw new Error(`"indent" option must be a positive integer, not ${L}`)}this.setSchema();let n=[],a=!1;if(this.version){let L="%YAML 1.2";this.schema.name==="yaml-1.1"&&(this.version==="1.0"?L="%YAML:1.0":this.version==="1.1"&&(L="%YAML 1.1")),n.push(L),a=!0}let m=this.listNonDefaultTags();this.tagPrefixes.forEach(L=>{let{handle:P,prefix:$}=L;m.some(K=>K.indexOf($)===0)&&(n.push(`%TAG ${P} ${$}`),a=!0)}),(a||this.directivesEndMarker)&&n.push("---"),this.commentBefore&&((a||!this.directivesEndMarker)&&n.unshift(""),n.unshift(this.commentBefore.replace(/^/gm,"#")));let p={anchors:Object.create(null),doc:this,indent:"",indentStep:" ".repeat(t),stringify:E},u=!1,g=null;if(this.contents){this.contents instanceof r.Node&&(this.contents.spaceBefore&&(a||this.directivesEndMarker)&&n.push(""),this.contents.commentBefore&&n.push(this.contents.commentBefore.replace(/^/gm,"#")),p.forceBlockIndent=!!this.comment,g=this.contents.comment);let L=g?null:()=>u=!0,P=E(this.contents,p,()=>g=null,L);n.push(r.addComment(P,"",g))}else this.contents!==void 0&&n.push(E(this.contents,p));return this.comment&&((!u||g)&&n[n.length-1]!==""&&n.push(""),n.push(this.comment.replace(/^/gm,"#"))),n.join(` +`)+` +`}};e._defineProperty(i,"defaults",y),s.Document=i,s.defaultOptions=h,s.scalarOptions=d}}),Jr=D({"node_modules/yaml/dist/index.js"(s){"use strict";Y();var e=Ur(),r=Kr(),c=it(),h=Me(),d=st();ke();function y(C){let q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,R=arguments.length>2?arguments[2]:void 0;R===void 0&&typeof q=="string"&&(R=q,q=!0);let B=Object.assign({},r.Document.defaults[r.defaultOptions.version],r.defaultOptions);return new c.Schema(B).createNode(C,q,R)}var M=class extends r.Document{constructor(C){super(Object.assign({},r.defaultOptions,C))}};function k(C,q){let R=[],B;for(let U of e.parse(C)){let f=new M(q);f.parse(U,B),R.push(f),B=f}return R}function w(C,q){let R=e.parse(C),B=new M(q).parse(R[0]);if(R.length>1){let U="Source contains multiple documents; please use YAML.parseAllDocuments()";B.errors.unshift(new h.YAMLSemanticError(R[1],U))}return B}function E(C,q){let R=w(C,q);if(R.warnings.forEach(B=>d.warn(B)),R.errors.length>0)throw R.errors[0];return R.toJSON()}function T(C,q){let R=new M(q);return R.contents=C,String(R)}var I={createNode:y,defaultOptions:r.defaultOptions,Document:M,parse:E,parseAllDocuments:k,parseCST:e.parse,parseDocument:w,scalarOptions:r.scalarOptions,stringify:T};s.YAML=I}}),Ue=D({"node_modules/yaml/index.js"(s,e){Y(),e.exports=Jr().YAML}}),xr=D({"node_modules/yaml/dist/util.js"(s){"use strict";Y();var e=ke(),r=Me();s.findPair=e.findPair,s.parseMap=e.resolveMap,s.parseSeq=e.resolveSeq,s.stringifyNumber=e.stringifyNumber,s.stringifyString=e.stringifyString,s.toJSON=e.toJSON,s.Type=r.Type,s.YAMLError=r.YAMLError,s.YAMLReferenceError=r.YAMLReferenceError,s.YAMLSemanticError=r.YAMLSemanticError,s.YAMLSyntaxError=r.YAMLSyntaxError,s.YAMLWarning=r.YAMLWarning}}),Hr=D({"node_modules/yaml/util.js"(s){Y();var e=xr();s.findPair=e.findPair,s.toJSON=e.toJSON,s.parseMap=e.parseMap,s.parseSeq=e.parseSeq,s.stringifyNumber=e.stringifyNumber,s.stringifyString=e.stringifyString,s.Type=e.Type,s.YAMLError=e.YAMLError,s.YAMLReferenceError=e.YAMLReferenceError,s.YAMLSemanticError=e.YAMLSemanticError,s.YAMLSyntaxError=e.YAMLSyntaxError,s.YAMLWarning=e.YAMLWarning}}),Gr=D({"node_modules/yaml-unist-parser/lib/yaml.js"(s){"use strict";Y(),s.__esModule=!0;var e=Ue();s.Document=e.Document;var r=Ue();s.parseCST=r.parseCST;var c=Hr();s.YAMLError=c.YAMLError,s.YAMLSyntaxError=c.YAMLSyntaxError,s.YAMLSemanticError=c.YAMLSemanticError}}),zr=D({"node_modules/yaml-unist-parser/lib/parse.js"(s){"use strict";Y(),s.__esModule=!0;var e=Qt(),r=Kt(),c=Jt(),h=xt(),d=qr(),y=He(),M=Br(),k=Yr(),w=Dr(),E=Fr(),T=Wr(),I=Qr(),C=Gr();function q(R){var B=C.parseCST(R);E.addOrigRange(B);for(var U=B.map(function(P){return new C.Document({merge:!1,keepCstNodes:!0}).parse(P)}),f=new e.default(R),i=[],t={text:R,locator:f,comments:i,transformOffset:function(P){return k.transformOffset(P,t)},transformRange:function(P){return w.transformRange(P,t)},transformNode:function(P){return d.transformNode(P,t)},transformContent:function(P){return y.transformContent(P,t)}},n=0,a=U;n()=>(r||e((r={exports:{}}).exports,r),r.exports);var pt=Te((Vg,ou)=>{var ur=function(e){return e&&e.Math==Math&&e};ou.exports=ur(typeof globalThis=="object"&&globalThis)||ur(typeof window=="object"&&window)||ur(typeof self=="object"&&self)||ur(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var Dt=Te((Wg,lu)=>{lu.exports=function(e){try{return!!e()}catch{return!0}}});var yt=Te((Hg,cu)=>{var wo=Dt();cu.exports=!wo(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var sr=Te((Gg,pu)=>{var _o=Dt();pu.exports=!_o(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")})});var At=Te((Ug,fu)=>{var Po=sr(),ir=Function.prototype.call;fu.exports=Po?ir.bind(ir):function(){return ir.apply(ir,arguments)}});var gu=Te(du=>{"use strict";var Du={}.propertyIsEnumerable,mu=Object.getOwnPropertyDescriptor,Io=mu&&!Du.call({1:2},1);du.f=Io?function(r){var t=mu(this,r);return!!t&&t.enumerable}:Du});var ar=Te((zg,yu)=>{yu.exports=function(e,r){return{enumerable:!(e&1),configurable:!(e&2),writable:!(e&4),value:r}}});var mt=Te((Xg,Cu)=>{var hu=sr(),vu=Function.prototype,$r=vu.call,ko=hu&&vu.bind.bind($r,$r);Cu.exports=hu?ko:function(e){return function(){return $r.apply(e,arguments)}}});var Rt=Te((Kg,Fu)=>{var Eu=mt(),Lo=Eu({}.toString),Oo=Eu("".slice);Fu.exports=function(e){return Oo(Lo(e),8,-1)}});var Su=Te((Yg,Au)=>{var jo=mt(),qo=Dt(),Mo=Rt(),Vr=Object,Ro=jo("".split);Au.exports=qo(function(){return!Vr("z").propertyIsEnumerable(0)})?function(e){return Mo(e)=="String"?Ro(e,""):Vr(e)}:Vr});var or=Te((Qg,xu)=>{xu.exports=function(e){return e==null}});var Wr=Te((Zg,bu)=>{var $o=or(),Vo=TypeError;bu.exports=function(e){if($o(e))throw Vo("Can't call method on "+e);return e}});var lr=Te((e0,Tu)=>{var Wo=Su(),Ho=Wr();Tu.exports=function(e){return Wo(Ho(e))}});var Gr=Te((t0,Bu)=>{var Hr=typeof document=="object"&&document.all,Go=typeof Hr>"u"&&Hr!==void 0;Bu.exports={all:Hr,IS_HTMLDDA:Go}});var ot=Te((r0,wu)=>{var Nu=Gr(),Uo=Nu.all;wu.exports=Nu.IS_HTMLDDA?function(e){return typeof e=="function"||e===Uo}:function(e){return typeof e=="function"}});var St=Te((n0,Iu)=>{var _u=ot(),Pu=Gr(),Jo=Pu.all;Iu.exports=Pu.IS_HTMLDDA?function(e){return typeof e=="object"?e!==null:_u(e)||e===Jo}:function(e){return typeof e=="object"?e!==null:_u(e)}});var $t=Te((u0,ku)=>{var Ur=pt(),zo=ot(),Xo=function(e){return zo(e)?e:void 0};ku.exports=function(e,r){return arguments.length<2?Xo(Ur[e]):Ur[e]&&Ur[e][r]}});var Jr=Te((s0,Lu)=>{var Ko=mt();Lu.exports=Ko({}.isPrototypeOf)});var ju=Te((i0,Ou)=>{var Yo=$t();Ou.exports=Yo("navigator","userAgent")||""});var Hu=Te((a0,Wu)=>{var Vu=pt(),zr=ju(),qu=Vu.process,Mu=Vu.Deno,Ru=qu&&qu.versions||Mu&&Mu.version,$u=Ru&&Ru.v8,dt,cr;$u&&(dt=$u.split("."),cr=dt[0]>0&&dt[0]<4?1:+(dt[0]+dt[1]));!cr&&zr&&(dt=zr.match(/Edge\/(\d+)/),(!dt||dt[1]>=74)&&(dt=zr.match(/Chrome\/(\d+)/),dt&&(cr=+dt[1])));Wu.exports=cr});var Xr=Te((o0,Uu)=>{var Gu=Hu(),Qo=Dt();Uu.exports=!!Object.getOwnPropertySymbols&&!Qo(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&Gu&&Gu<41})});var Kr=Te((l0,Ju)=>{var Zo=Xr();Ju.exports=Zo&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Yr=Te((c0,zu)=>{var el=$t(),tl=ot(),rl=Jr(),nl=Kr(),ul=Object;zu.exports=nl?function(e){return typeof e=="symbol"}:function(e){var r=el("Symbol");return tl(r)&&rl(r.prototype,ul(e))}});var pr=Te((p0,Xu)=>{var sl=String;Xu.exports=function(e){try{return sl(e)}catch{return"Object"}}});var Vt=Te((f0,Ku)=>{var il=ot(),al=pr(),ol=TypeError;Ku.exports=function(e){if(il(e))return e;throw ol(al(e)+" is not a function")}});var fr=Te((D0,Yu)=>{var ll=Vt(),cl=or();Yu.exports=function(e,r){var t=e[r];return cl(t)?void 0:ll(t)}});var Zu=Te((m0,Qu)=>{var Qr=At(),Zr=ot(),en=St(),pl=TypeError;Qu.exports=function(e,r){var t,s;if(r==="string"&&Zr(t=e.toString)&&!en(s=Qr(t,e))||Zr(t=e.valueOf)&&!en(s=Qr(t,e))||r!=="string"&&Zr(t=e.toString)&&!en(s=Qr(t,e)))return s;throw pl("Can't convert object to primitive value")}});var ts=Te((d0,es)=>{es.exports=!1});var Dr=Te((g0,ns)=>{var rs=pt(),fl=Object.defineProperty;ns.exports=function(e,r){try{fl(rs,e,{value:r,configurable:!0,writable:!0})}catch{rs[e]=r}return r}});var mr=Te((y0,ss)=>{var Dl=pt(),ml=Dr(),us="__core-js_shared__",dl=Dl[us]||ml(us,{});ss.exports=dl});var tn=Te((h0,as)=>{var gl=ts(),is=mr();(as.exports=function(e,r){return is[e]||(is[e]=r!==void 0?r:{})})("versions",[]).push({version:"3.26.1",mode:gl?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var dr=Te((v0,os)=>{var yl=Wr(),hl=Object;os.exports=function(e){return hl(yl(e))}});var Ct=Te((C0,ls)=>{var vl=mt(),Cl=dr(),El=vl({}.hasOwnProperty);ls.exports=Object.hasOwn||function(r,t){return El(Cl(r),t)}});var rn=Te((E0,cs)=>{var Fl=mt(),Al=0,Sl=Math.random(),xl=Fl(1 .toString);cs.exports=function(e){return"Symbol("+(e===void 0?"":e)+")_"+xl(++Al+Sl,36)}});var bt=Te((F0,ds)=>{var bl=pt(),Tl=tn(),ps=Ct(),Bl=rn(),fs=Xr(),ms=Kr(),Pt=Tl("wks"),xt=bl.Symbol,Ds=xt&&xt.for,Nl=ms?xt:xt&&xt.withoutSetter||Bl;ds.exports=function(e){if(!ps(Pt,e)||!(fs||typeof Pt[e]=="string")){var r="Symbol."+e;fs&&ps(xt,e)?Pt[e]=xt[e]:ms&&Ds?Pt[e]=Ds(r):Pt[e]=Nl(r)}return Pt[e]}});var vs=Te((A0,hs)=>{var wl=At(),gs=St(),ys=Yr(),_l=fr(),Pl=Zu(),Il=bt(),kl=TypeError,Ll=Il("toPrimitive");hs.exports=function(e,r){if(!gs(e)||ys(e))return e;var t=_l(e,Ll),s;if(t){if(r===void 0&&(r="default"),s=wl(t,e,r),!gs(s)||ys(s))return s;throw kl("Can't convert object to primitive value")}return r===void 0&&(r="number"),Pl(e,r)}});var gr=Te((S0,Cs)=>{var Ol=vs(),jl=Yr();Cs.exports=function(e){var r=Ol(e,"string");return jl(r)?r:r+""}});var As=Te((x0,Fs)=>{var ql=pt(),Es=St(),nn=ql.document,Ml=Es(nn)&&Es(nn.createElement);Fs.exports=function(e){return Ml?nn.createElement(e):{}}});var un=Te((b0,Ss)=>{var Rl=yt(),$l=Dt(),Vl=As();Ss.exports=!Rl&&!$l(function(){return Object.defineProperty(Vl("div"),"a",{get:function(){return 7}}).a!=7})});var sn=Te(bs=>{var Wl=yt(),Hl=At(),Gl=gu(),Ul=ar(),Jl=lr(),zl=gr(),Xl=Ct(),Kl=un(),xs=Object.getOwnPropertyDescriptor;bs.f=Wl?xs:function(r,t){if(r=Jl(r),t=zl(t),Kl)try{return xs(r,t)}catch{}if(Xl(r,t))return Ul(!Hl(Gl.f,r,t),r[t])}});var Bs=Te((B0,Ts)=>{var Yl=yt(),Ql=Dt();Ts.exports=Yl&&Ql(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Tt=Te((N0,Ns)=>{var Zl=St(),ec=String,tc=TypeError;Ns.exports=function(e){if(Zl(e))return e;throw tc(ec(e)+" is not an object")}});var It=Te(_s=>{var rc=yt(),nc=un(),uc=Bs(),yr=Tt(),ws=gr(),sc=TypeError,an=Object.defineProperty,ic=Object.getOwnPropertyDescriptor,on="enumerable",ln="configurable",cn="writable";_s.f=rc?uc?function(r,t,s){if(yr(r),t=ws(t),yr(s),typeof r=="function"&&t==="prototype"&&"value"in s&&cn in s&&!s[cn]){var a=ic(r,t);a&&a[cn]&&(r[t]=s.value,s={configurable:ln in s?s[ln]:a[ln],enumerable:on in s?s[on]:a[on],writable:!1})}return an(r,t,s)}:an:function(r,t,s){if(yr(r),t=ws(t),yr(s),nc)try{return an(r,t,s)}catch{}if("get"in s||"set"in s)throw sc("Accessors not supported");return"value"in s&&(r[t]=s.value),r}});var pn=Te((_0,Ps)=>{var ac=yt(),oc=It(),lc=ar();Ps.exports=ac?function(e,r,t){return oc.f(e,r,lc(1,t))}:function(e,r,t){return e[r]=t,e}});var Ls=Te((P0,ks)=>{var fn=yt(),cc=Ct(),Is=Function.prototype,pc=fn&&Object.getOwnPropertyDescriptor,Dn=cc(Is,"name"),fc=Dn&&function(){}.name==="something",Dc=Dn&&(!fn||fn&&pc(Is,"name").configurable);ks.exports={EXISTS:Dn,PROPER:fc,CONFIGURABLE:Dc}});var dn=Te((I0,Os)=>{var mc=mt(),dc=ot(),mn=mr(),gc=mc(Function.toString);dc(mn.inspectSource)||(mn.inspectSource=function(e){return gc(e)});Os.exports=mn.inspectSource});var Ms=Te((k0,qs)=>{var yc=pt(),hc=ot(),js=yc.WeakMap;qs.exports=hc(js)&&/native code/.test(String(js))});var Vs=Te((L0,$s)=>{var vc=tn(),Cc=rn(),Rs=vc("keys");$s.exports=function(e){return Rs[e]||(Rs[e]=Cc(e))}});var gn=Te((O0,Ws)=>{Ws.exports={}});var Js=Te((j0,Us)=>{var Ec=Ms(),Gs=pt(),Fc=St(),Ac=pn(),yn=Ct(),hn=mr(),Sc=Vs(),xc=gn(),Hs="Object already initialized",vn=Gs.TypeError,bc=Gs.WeakMap,hr,Wt,vr,Tc=function(e){return vr(e)?Wt(e):hr(e,{})},Bc=function(e){return function(r){var t;if(!Fc(r)||(t=Wt(r)).type!==e)throw vn("Incompatible receiver, "+e+" required");return t}};Ec||hn.state?(gt=hn.state||(hn.state=new bc),gt.get=gt.get,gt.has=gt.has,gt.set=gt.set,hr=function(e,r){if(gt.has(e))throw vn(Hs);return r.facade=e,gt.set(e,r),r},Wt=function(e){return gt.get(e)||{}},vr=function(e){return gt.has(e)}):(Bt=Sc("state"),xc[Bt]=!0,hr=function(e,r){if(yn(e,Bt))throw vn(Hs);return r.facade=e,Ac(e,Bt,r),r},Wt=function(e){return yn(e,Bt)?e[Bt]:{}},vr=function(e){return yn(e,Bt)});var gt,Bt;Us.exports={set:hr,get:Wt,has:vr,enforce:Tc,getterFor:Bc}});var En=Te((q0,Xs)=>{var Nc=Dt(),wc=ot(),Cr=Ct(),Cn=yt(),_c=Ls().CONFIGURABLE,Pc=dn(),zs=Js(),Ic=zs.enforce,kc=zs.get,Er=Object.defineProperty,Lc=Cn&&!Nc(function(){return Er(function(){},"length",{value:8}).length!==8}),Oc=String(String).split("String"),jc=Xs.exports=function(e,r,t){String(r).slice(0,7)==="Symbol("&&(r="["+String(r).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),t&&t.getter&&(r="get "+r),t&&t.setter&&(r="set "+r),(!Cr(e,"name")||_c&&e.name!==r)&&(Cn?Er(e,"name",{value:r,configurable:!0}):e.name=r),Lc&&t&&Cr(t,"arity")&&e.length!==t.arity&&Er(e,"length",{value:t.arity});try{t&&Cr(t,"constructor")&&t.constructor?Cn&&Er(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch{}var s=Ic(e);return Cr(s,"source")||(s.source=Oc.join(typeof r=="string"?r:"")),e};Function.prototype.toString=jc(function(){return wc(this)&&kc(this).source||Pc(this)},"toString")});var Ys=Te((M0,Ks)=>{var qc=ot(),Mc=It(),Rc=En(),$c=Dr();Ks.exports=function(e,r,t,s){s||(s={});var a=s.enumerable,n=s.name!==void 0?s.name:r;if(qc(t)&&Rc(t,n,s),s.global)a?e[r]=t:$c(r,t);else{try{s.unsafe?e[r]&&(a=!0):delete e[r]}catch{}a?e[r]=t:Mc.f(e,r,{value:t,enumerable:!1,configurable:!s.nonConfigurable,writable:!s.nonWritable})}return e}});var Zs=Te((R0,Qs)=>{var Vc=Math.ceil,Wc=Math.floor;Qs.exports=Math.trunc||function(r){var t=+r;return(t>0?Wc:Vc)(t)}});var Fr=Te(($0,ei)=>{var Hc=Zs();ei.exports=function(e){var r=+e;return r!==r||r===0?0:Hc(r)}});var ri=Te((V0,ti)=>{var Gc=Fr(),Uc=Math.max,Jc=Math.min;ti.exports=function(e,r){var t=Gc(e);return t<0?Uc(t+r,0):Jc(t,r)}});var ui=Te((W0,ni)=>{var zc=Fr(),Xc=Math.min;ni.exports=function(e){return e>0?Xc(zc(e),9007199254740991):0}});var kt=Te((H0,si)=>{var Kc=ui();si.exports=function(e){return Kc(e.length)}});var oi=Te((G0,ai)=>{var Yc=lr(),Qc=ri(),Zc=kt(),ii=function(e){return function(r,t,s){var a=Yc(r),n=Zc(a),u=Qc(s,n),i;if(e&&t!=t){for(;n>u;)if(i=a[u++],i!=i)return!0}else for(;n>u;u++)if((e||u in a)&&a[u]===t)return e||u||0;return!e&&-1}};ai.exports={includes:ii(!0),indexOf:ii(!1)}});var pi=Te((U0,ci)=>{var ep=mt(),Fn=Ct(),tp=lr(),rp=oi().indexOf,np=gn(),li=ep([].push);ci.exports=function(e,r){var t=tp(e),s=0,a=[],n;for(n in t)!Fn(np,n)&&Fn(t,n)&&li(a,n);for(;r.length>s;)Fn(t,n=r[s++])&&(~rp(a,n)||li(a,n));return a}});var Di=Te((J0,fi)=>{fi.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var di=Te(mi=>{var up=pi(),sp=Di(),ip=sp.concat("length","prototype");mi.f=Object.getOwnPropertyNames||function(r){return up(r,ip)}});var yi=Te(gi=>{gi.f=Object.getOwnPropertySymbols});var vi=Te((K0,hi)=>{var ap=$t(),op=mt(),lp=di(),cp=yi(),pp=Tt(),fp=op([].concat);hi.exports=ap("Reflect","ownKeys")||function(r){var t=lp.f(pp(r)),s=cp.f;return s?fp(t,s(r)):t}});var Fi=Te((Y0,Ei)=>{var Ci=Ct(),Dp=vi(),mp=sn(),dp=It();Ei.exports=function(e,r,t){for(var s=Dp(r),a=dp.f,n=mp.f,u=0;u{var gp=Dt(),yp=ot(),hp=/#|\.prototype\./,Ht=function(e,r){var t=Cp[vp(e)];return t==Fp?!0:t==Ep?!1:yp(r)?gp(r):!!r},vp=Ht.normalize=function(e){return String(e).replace(hp,".").toLowerCase()},Cp=Ht.data={},Ep=Ht.NATIVE="N",Fp=Ht.POLYFILL="P";Ai.exports=Ht});var Gt=Te((Z0,xi)=>{var An=pt(),Ap=sn().f,Sp=pn(),xp=Ys(),bp=Dr(),Tp=Fi(),Bp=Si();xi.exports=function(e,r){var t=e.target,s=e.global,a=e.stat,n,u,i,l,p,d;if(s?u=An:a?u=An[t]||bp(t,{}):u=(An[t]||{}).prototype,u)for(i in r){if(p=r[i],e.dontCallGetSet?(d=Ap(u,i),l=d&&d.value):l=u[i],n=Bp(s?i:t+(a?".":"#")+i,e.forced),!n&&l!==void 0){if(typeof p==typeof l)continue;Tp(p,l)}(e.sham||l&&l.sham)&&Sp(p,"sham",!0),xp(u,i,p,e)}}});var Sn=Te((ey,bi)=>{var Np=Rt();bi.exports=Array.isArray||function(r){return Np(r)=="Array"}});var Bi=Te((ty,Ti)=>{var wp=TypeError,_p=9007199254740991;Ti.exports=function(e){if(e>_p)throw wp("Maximum allowed index exceeded");return e}});var wi=Te((ry,Ni)=>{var Pp=Rt(),Ip=mt();Ni.exports=function(e){if(Pp(e)==="Function")return Ip(e)}});var xn=Te((ny,Pi)=>{var _i=wi(),kp=Vt(),Lp=sr(),Op=_i(_i.bind);Pi.exports=function(e,r){return kp(e),r===void 0?e:Lp?Op(e,r):function(){return e.apply(r,arguments)}}});var bn=Te((uy,ki)=>{"use strict";var jp=Sn(),qp=kt(),Mp=Bi(),Rp=xn(),Ii=function(e,r,t,s,a,n,u,i){for(var l=a,p=0,d=u?Rp(u,i):!1,y,g;p0&&jp(y)?(g=qp(y),l=Ii(e,r,y,g,l,n-1)-1):(Mp(l+1),e[l]=y),l++),p++;return l};ki.exports=Ii});var ji=Te((sy,Oi)=>{var $p=bt(),Vp=$p("toStringTag"),Li={};Li[Vp]="z";Oi.exports=String(Li)==="[object z]"});var Tn=Te((iy,qi)=>{var Wp=ji(),Hp=ot(),Ar=Rt(),Gp=bt(),Up=Gp("toStringTag"),Jp=Object,zp=Ar(function(){return arguments}())=="Arguments",Xp=function(e,r){try{return e[r]}catch{}};qi.exports=Wp?Ar:function(e){var r,t,s;return e===void 0?"Undefined":e===null?"Null":typeof(t=Xp(r=Jp(e),Up))=="string"?t:zp?Ar(r):(s=Ar(r))=="Object"&&Hp(r.callee)?"Arguments":s}});var Hi=Te((ay,Wi)=>{var Kp=mt(),Yp=Dt(),Mi=ot(),Qp=Tn(),Zp=$t(),ef=dn(),Ri=function(){},tf=[],$i=Zp("Reflect","construct"),Bn=/^\s*(?:class|function)\b/,rf=Kp(Bn.exec),nf=!Bn.exec(Ri),Ut=function(r){if(!Mi(r))return!1;try{return $i(Ri,tf,r),!0}catch{return!1}},Vi=function(r){if(!Mi(r))return!1;switch(Qp(r)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return nf||!!rf(Bn,ef(r))}catch{return!0}};Vi.sham=!0;Wi.exports=!$i||Yp(function(){var e;return Ut(Ut.call)||!Ut(Object)||!Ut(function(){e=!0})||e})?Vi:Ut});var zi=Te((oy,Ji)=>{var Gi=Sn(),uf=Hi(),sf=St(),af=bt(),of=af("species"),Ui=Array;Ji.exports=function(e){var r;return Gi(e)&&(r=e.constructor,uf(r)&&(r===Ui||Gi(r.prototype))?r=void 0:sf(r)&&(r=r[of],r===null&&(r=void 0))),r===void 0?Ui:r}});var Nn=Te((ly,Xi)=>{var lf=zi();Xi.exports=function(e,r){return new(lf(e))(r===0?0:r)}});var wn=Te((cy,Ki)=>{Ki.exports={}});var Qi=Te((py,Yi)=>{var gf=bt(),yf=wn(),hf=gf("iterator"),vf=Array.prototype;Yi.exports=function(e){return e!==void 0&&(yf.Array===e||vf[hf]===e)}});var _n=Te((fy,ea)=>{var Cf=Tn(),Zi=fr(),Ef=or(),Ff=wn(),Af=bt(),Sf=Af("iterator");ea.exports=function(e){if(!Ef(e))return Zi(e,Sf)||Zi(e,"@@iterator")||Ff[Cf(e)]}});var ra=Te((Dy,ta)=>{var xf=At(),bf=Vt(),Tf=Tt(),Bf=pr(),Nf=_n(),wf=TypeError;ta.exports=function(e,r){var t=arguments.length<2?Nf(e):r;if(bf(t))return Tf(xf(t,e));throw wf(Bf(e)+" is not iterable")}});var sa=Te((my,ua)=>{var _f=At(),na=Tt(),Pf=fr();ua.exports=function(e,r,t){var s,a;na(e);try{if(s=Pf(e,"return"),!s){if(r==="throw")throw t;return t}s=_f(s,e)}catch(n){a=!0,s=n}if(r==="throw")throw t;if(a)throw s;return na(s),t}});var ca=Te((dy,la)=>{var If=xn(),kf=At(),Lf=Tt(),Of=pr(),jf=Qi(),qf=kt(),ia=Jr(),Mf=ra(),Rf=_n(),aa=sa(),$f=TypeError,Sr=function(e,r){this.stopped=e,this.result=r},oa=Sr.prototype;la.exports=function(e,r,t){var s=t&&t.that,a=!!(t&&t.AS_ENTRIES),n=!!(t&&t.IS_RECORD),u=!!(t&&t.IS_ITERATOR),i=!!(t&&t.INTERRUPTED),l=If(r,s),p,d,y,g,c,f,E,_=function(F){return p&&aa(p,"normal",F),new Sr(!0,F)},w=function(F){return a?(Lf(F),i?l(F[0],F[1],_):l(F[0],F[1])):i?l(F,_):l(F)};if(n)p=e.iterator;else if(u)p=e;else{if(d=Rf(e),!d)throw $f(Of(e)+" is not iterable");if(jf(d)){for(y=0,g=qf(e);g>y;y++)if(c=w(e[y]),c&&ia(oa,c))return c;return new Sr(!1)}p=Mf(e,d)}for(f=n?e.next:p.next;!(E=kf(f,p)).done;){try{c=w(E.value)}catch(F){aa(p,"throw",F)}if(typeof c=="object"&&c&&ia(oa,c))return c}return new Sr(!1)}});var fa=Te((gy,pa)=>{"use strict";var Vf=gr(),Wf=It(),Hf=ar();pa.exports=function(e,r,t){var s=Vf(r);s in e?Wf.f(e,s,Hf(0,t)):e[s]=t}});var da=Te((yy,ma)=>{var Da=En(),zf=It();ma.exports=function(e,r,t){return t.get&&Da(t.get,r,{getter:!0}),t.set&&Da(t.set,r,{setter:!0}),zf.f(e,r,t)}});var ya=Te((hy,ga)=>{"use strict";var Xf=Tt();ga.exports=function(){var e=Xf(this),r="";return e.hasIndices&&(r+="d"),e.global&&(r+="g"),e.ignoreCase&&(r+="i"),e.multiline&&(r+="m"),e.dotAll&&(r+="s"),e.unicode&&(r+="u"),e.unicodeSets&&(r+="v"),e.sticky&&(r+="y"),r}});var Ca=Te(()=>{var rD=Gt(),Pn=pt();rD({global:!0,forced:Pn.globalThis!==Pn},{globalThis:Pn})});var cf=Gt(),pf=bn(),ff=Vt(),Df=dr(),mf=kt(),df=Nn();cf({target:"Array",proto:!0},{flatMap:function(r){var t=Df(this),s=mf(t),a;return ff(r),a=df(t,0),a.length=pf(a,t,t,s,0,1,r,arguments.length>1?arguments[1]:void 0),a}});var Gf=Gt(),Uf=ca(),Jf=fa();Gf({target:"Object",stat:!0},{fromEntries:function(r){var t={};return Uf(r,function(s,a){Jf(t,s,a)},{AS_ENTRIES:!0}),t}});var Kf=pt(),Yf=yt(),Qf=da(),Zf=ya(),eD=Dt(),ha=Kf.RegExp,va=ha.prototype,tD=Yf&&eD(function(){var e=!0;try{ha(".","d")}catch{e=!1}var r={},t="",s=e?"dgimsy":"gimsy",a=function(l,p){Object.defineProperty(r,l,{get:function(){return t+=p,!0}})},n={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};e&&(n.hasIndices="d");for(var u in n)a(u,n[u]);var i=Object.getOwnPropertyDescriptor(va,"flags").get.call(r);return i!==s||t!==s});tD&&Qf(va,"flags",{configurable:!0,get:Zf});Ca();var nD=Gt(),uD=bn(),sD=dr(),iD=kt(),aD=Fr(),oD=Nn();nD({target:"Array",proto:!0},{flat:function(){var r=arguments.length?arguments[0]:void 0,t=sD(this),s=iD(t),a=oD(t,0);return a.length=uD(a,t,t,s,0,r===void 0?1:aD(r)),a}});var lD=["cliName","cliCategory","cliDescription"],cD=["_"],pD=["languageId"];function $n(e,r){if(e==null)return{};var t=fD(e,r),s,a;if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0)&&Object.prototype.propertyIsEnumerable.call(e,s)&&(t[s]=e[s])}return t}function fD(e,r){if(e==null)return{};var t={},s=Object.keys(e),a,n;for(n=0;n=0)&&(t[a]=e[a]);return t}var DD=Object.create,Nr=Object.defineProperty,mD=Object.getOwnPropertyDescriptor,Vn=Object.getOwnPropertyNames,dD=Object.getPrototypeOf,gD=Object.prototype.hasOwnProperty,ht=(e,r)=>function(){return e&&(r=(0,e[Vn(e)[0]])(e=0)),r},te=(e,r)=>function(){return r||(0,e[Vn(e)[0]])((r={exports:{}}).exports,r),r.exports},zt=(e,r)=>{for(var t in r)Nr(e,t,{get:r[t],enumerable:!0})},Sa=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of Vn(r))!gD.call(e,a)&&a!==t&&Nr(e,a,{get:()=>r[a],enumerable:!(s=mD(r,a))||s.enumerable});return e},yD=(e,r,t)=>(t=e!=null?DD(dD(e)):{},Sa(r||!e||!e.__esModule?Nr(t,"default",{value:e,enumerable:!0}):t,e)),ft=e=>Sa(Nr({},"__esModule",{value:!0}),e),Nt,ne=ht({""(){Nt={env:{},argv:[]}}}),xa=te({"package.json"(e,r){r.exports={version:"2.8.8"}}}),hD=te({"node_modules/diff/lib/diff/base.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;function r(){}r.prototype={diff:function(n,u){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},l=i.callback;typeof i=="function"&&(l=i,i={}),this.options=i;var p=this;function d(N){return l?(setTimeout(function(){l(void 0,N)},0),!0):N}n=this.castInput(n),u=this.castInput(u),n=this.removeEmpty(this.tokenize(n)),u=this.removeEmpty(this.tokenize(u));var y=u.length,g=n.length,c=1,f=y+g,E=[{newPos:-1,components:[]}],_=this.extractCommon(E[0],u,n,0);if(E[0].newPos+1>=y&&_+1>=g)return d([{value:this.join(u),count:u.length}]);function w(){for(var N=-1*c;N<=c;N+=2){var x=void 0,I=E[N-1],P=E[N+1],$=(P?P.newPos:0)-N;I&&(E[N-1]=void 0);var D=I&&I.newPos+1=y&&$+1>=g)return d(t(p,x.components,u,n,p.useLongestToken));E[N]=x}c++}if(l)(function N(){setTimeout(function(){if(c>f)return l();w()||N()},0)})();else for(;c<=f;){var F=w();if(F)return F}},pushComponent:function(n,u,i){var l=n[n.length-1];l&&l.added===u&&l.removed===i?n[n.length-1]={count:l.count+1,added:u,removed:i}:n.push({count:1,added:u,removed:i})},extractCommon:function(n,u,i,l){for(var p=u.length,d=i.length,y=n.newPos,g=y-l,c=0;y+1w.length?N:w}),c.value=a.join(f)}else c.value=a.join(u.slice(y,y+c.count));y+=c.count,c.added||(g+=c.count)}}var _=n[d-1];return d>1&&typeof _.value=="string"&&(_.added||_.removed)&&a.equals("",_.value)&&(n[d-2].value+=_.value,n.pop()),n}function s(a){return{newPos:a.newPos,components:a.components.slice(0)}}}}),vD=te({"node_modules/diff/lib/diff/array.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.diffArrays=a,e.arrayDiff=void 0;var r=t(hD());function t(n){return n&&n.__esModule?n:{default:n}}var s=new r.default;e.arrayDiff=s,s.tokenize=function(n){return n.slice()},s.join=s.removeEmpty=function(n){return n};function a(n,u,i){return s.diff(n,u,i)}}}),Wn=te({"src/document/doc-builders.js"(e,r){"use strict";ne();function t(C){return{type:"concat",parts:C}}function s(C){return{type:"indent",contents:C}}function a(C,o){return{type:"align",contents:o,n:C}}function n(C){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return{type:"group",id:o.id,contents:C,break:Boolean(o.shouldBreak),expandedStates:o.expandedStates}}function u(C){return a(Number.NEGATIVE_INFINITY,C)}function i(C){return a({type:"root"},C)}function l(C){return a(-1,C)}function p(C,o){return n(C[0],Object.assign(Object.assign({},o),{},{expandedStates:C}))}function d(C){return{type:"fill",parts:C}}function y(C,o){let h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return{type:"if-break",breakContents:C,flatContents:o,groupId:h.groupId}}function g(C,o){return{type:"indent-if-break",contents:C,groupId:o.groupId,negate:o.negate}}function c(C){return{type:"line-suffix",contents:C}}var f={type:"line-suffix-boundary"},E={type:"break-parent"},_={type:"trim"},w={type:"line",hard:!0},F={type:"line",hard:!0,literal:!0},N={type:"line"},x={type:"line",soft:!0},I=t([w,E]),P=t([F,E]),$={type:"cursor",placeholder:Symbol("cursor")};function D(C,o){let h=[];for(let v=0;v0){for(let S=0;S=0?u.charAt(i+1)===` +`?"crlf":"cr":"lf"}function s(u){switch(u){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function a(u,i){let l;switch(i){case` +`:l=/\n/g;break;case"\r":l=/\r/g;break;case`\r +`:l=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(i)}.`)}let p=u.match(l);return p?p.length:0}function n(u){return u.replace(/\r\n?/g,` +`)}r.exports={guessEndOfLine:t,convertEndOfLineToChars:s,countEndOfLineChars:a,normalizeEndOfLine:n}}}),lt=te({"src/utils/get-last.js"(e,r){"use strict";ne();var t=s=>s[s.length-1];r.exports=t}});function CD(){let{onlyFirst:e=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=["[\\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(r,e?void 0:"g")}var ED=ht({"node_modules/strip-ansi/node_modules/ansi-regex/index.js"(){ne()}});function FD(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(CD(),"")}var AD=ht({"node_modules/strip-ansi/index.js"(){ne(),ED()}});function SD(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var xD=ht({"node_modules/is-fullwidth-code-point/index.js"(){ne()}}),bD=te({"node_modules/emoji-regex/index.js"(e,r){"use strict";ne(),r.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\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])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\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\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\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-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*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\u26A7\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-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\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[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}}}),ba={};zt(ba,{default:()=>TD});function TD(e){if(typeof e!="string"||e.length===0||(e=FD(e),e.length===0))return 0;e=e.replace((0,Ta.default)()," ");let r=0;for(let t=0;t=127&&s<=159||s>=768&&s<=879||(s>65535&&t++,r+=SD(s)?2:1)}return r}var Ta,BD=ht({"node_modules/string-width/index.js"(){ne(),AD(),xD(),Ta=yD(bD())}}),Ba=te({"src/utils/get-string-width.js"(e,r){"use strict";ne();var t=(BD(),ft(ba)).default,s=/[^\x20-\x7F]/;function a(n){return n?s.test(n)?t(n):n.length:0}r.exports=a}}),Xt=te({"src/document/doc-utils.js"(e,r){"use strict";ne();var t=lt(),{literalline:s,join:a}=Wn(),n=o=>Array.isArray(o)||o&&o.type==="concat",u=o=>{if(Array.isArray(o))return o;if(o.type!=="concat"&&o.type!=="fill")throw new Error("Expect doc type to be `concat` or `fill`.");return o.parts},i={};function l(o,h,v,S){let b=[o];for(;b.length>0;){let B=b.pop();if(B===i){v(b.pop());continue}if(v&&b.push(B,i),!h||h(B)!==!1)if(n(B)||B.type==="fill"){let k=u(B);for(let M=k.length,R=M-1;R>=0;--R)b.push(k[R])}else if(B.type==="if-break")B.flatContents&&b.push(B.flatContents),B.breakContents&&b.push(B.breakContents);else if(B.type==="group"&&B.expandedStates)if(S)for(let k=B.expandedStates.length,M=k-1;M>=0;--M)b.push(B.expandedStates[M]);else b.push(B.contents);else B.contents&&b.push(B.contents)}}function p(o,h){let v=new Map;return S(o);function S(B){if(v.has(B))return v.get(B);let k=b(B);return v.set(B,k),k}function b(B){if(Array.isArray(B))return h(B.map(S));if(B.type==="concat"||B.type==="fill"){let k=B.parts.map(S);return h(Object.assign(Object.assign({},B),{},{parts:k}))}if(B.type==="if-break"){let k=B.breakContents&&S(B.breakContents),M=B.flatContents&&S(B.flatContents);return h(Object.assign(Object.assign({},B),{},{breakContents:k,flatContents:M}))}if(B.type==="group"&&B.expandedStates){let k=B.expandedStates.map(S),M=k[0];return h(Object.assign(Object.assign({},B),{},{contents:M,expandedStates:k}))}if(B.contents){let k=S(B.contents);return h(Object.assign(Object.assign({},B),{},{contents:k}))}return h(B)}}function d(o,h,v){let S=v,b=!1;function B(k){let M=h(k);if(M!==void 0&&(b=!0,S=M),b)return!1}return l(o,B),S}function y(o){if(o.type==="group"&&o.break||o.type==="line"&&o.hard||o.type==="break-parent")return!0}function g(o){return d(o,y,!1)}function c(o){if(o.length>0){let h=t(o);!h.expandedStates&&!h.break&&(h.break="propagated")}return null}function f(o){let h=new Set,v=[];function S(B){if(B.type==="break-parent"&&c(v),B.type==="group"){if(v.push(B),h.has(B))return!1;h.add(B)}}function b(B){B.type==="group"&&v.pop().break&&c(v)}l(o,S,b,!0)}function E(o){return o.type==="line"&&!o.hard?o.soft?"":" ":o.type==="if-break"?o.flatContents||"":o}function _(o){return p(o,E)}var w=(o,h)=>o&&o.type==="line"&&o.hard&&h&&h.type==="break-parent";function F(o){if(!o)return o;if(n(o)||o.type==="fill"){let h=u(o);for(;h.length>1&&w(...h.slice(-2));)h.length-=2;if(h.length>0){let v=F(t(h));h[h.length-1]=v}return Array.isArray(o)?h:Object.assign(Object.assign({},o),{},{parts:h})}switch(o.type){case"align":case"indent":case"indent-if-break":case"group":case"line-suffix":case"label":{let h=F(o.contents);return Object.assign(Object.assign({},o),{},{contents:h})}case"if-break":{let h=F(o.breakContents),v=F(o.flatContents);return Object.assign(Object.assign({},o),{},{breakContents:h,flatContents:v})}}return o}function N(o){return F(I(o))}function x(o){switch(o.type){case"fill":if(o.parts.every(v=>v===""))return"";break;case"group":if(!o.contents&&!o.id&&!o.break&&!o.expandedStates)return"";if(o.contents.type==="group"&&o.contents.id===o.id&&o.contents.break===o.break&&o.contents.expandedStates===o.expandedStates)return o.contents;break;case"align":case"indent":case"indent-if-break":case"line-suffix":if(!o.contents)return"";break;case"if-break":if(!o.flatContents&&!o.breakContents)return"";break}if(!n(o))return o;let h=[];for(let v of u(o)){if(!v)continue;let[S,...b]=n(v)?u(v):[v];typeof S=="string"&&typeof t(h)=="string"?h[h.length-1]+=S:h.push(S),h.push(...b)}return h.length===0?"":h.length===1?h[0]:Array.isArray(o)?h:Object.assign(Object.assign({},o),{},{parts:h})}function I(o){return p(o,h=>x(h))}function P(o){let h=[],v=o.filter(Boolean);for(;v.length>0;){let S=v.shift();if(S){if(n(S)){v.unshift(...u(S));continue}if(h.length>0&&typeof t(h)=="string"&&typeof S=="string"){h[h.length-1]+=S;continue}h.push(S)}}return h}function $(o){return p(o,h=>Array.isArray(h)?P(h):h.parts?Object.assign(Object.assign({},h),{},{parts:P(h.parts)}):h)}function D(o){return p(o,h=>typeof h=="string"&&h.includes(` +`)?T(h):h)}function T(o){let h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:s;return a(h,o.split(` +`)).parts}function m(o){if(o.type==="line")return!0}function C(o){return d(o,m,!1)}r.exports={isConcat:n,getDocParts:u,willBreak:g,traverseDoc:l,findInDoc:d,mapDoc:p,propagateBreaks:f,removeLines:_,stripTrailingHardline:N,normalizeParts:P,normalizeDoc:$,cleanDoc:I,replaceTextEndOfLine:T,replaceEndOfLine:D,canBreak:C}}}),ND=te({"src/document/doc-printer.js"(e,r){"use strict";ne();var{convertEndOfLineToChars:t}=Hn(),s=lt(),a=Ba(),{fill:n,cursor:u,indent:i}=Wn(),{isConcat:l,getDocParts:p}=Xt(),d,y=1,g=2;function c(){return{value:"",length:0,queue:[]}}function f(x,I){return _(x,{type:"indent"},I)}function E(x,I,P){return I===Number.NEGATIVE_INFINITY?x.root||c():I<0?_(x,{type:"dedent"},P):I?I.type==="root"?Object.assign(Object.assign({},x),{},{root:x}):_(x,{type:typeof I=="string"?"stringAlign":"numberAlign",n:I},P):x}function _(x,I,P){let $=I.type==="dedent"?x.queue.slice(0,-1):[...x.queue,I],D="",T=0,m=0,C=0;for(let k of $)switch(k.type){case"indent":v(),P.useTabs?o(1):h(P.tabWidth);break;case"stringAlign":v(),D+=k.n,T+=k.n.length;break;case"numberAlign":m+=1,C+=k.n;break;default:throw new Error(`Unexpected type '${k.type}'`)}return b(),Object.assign(Object.assign({},x),{},{value:D,length:T,queue:$});function o(k){D+=" ".repeat(k),T+=P.tabWidth*k}function h(k){D+=" ".repeat(k),T+=k}function v(){P.useTabs?S():b()}function S(){m>0&&o(m),B()}function b(){C>0&&h(C),B()}function B(){m=0,C=0}}function w(x){if(x.length===0)return 0;let I=0;for(;x.length>0&&typeof s(x)=="string"&&/^[\t ]*$/.test(s(x));)I+=x.pop().length;if(x.length>0&&typeof s(x)=="string"){let P=s(x).replace(/[\t ]*$/,"");I+=s(x).length-P.length,x[x.length-1]=P}return I}function F(x,I,P,$,D){let T=I.length,m=[x],C=[];for(;P>=0;){if(m.length===0){if(T===0)return!0;m.push(I[--T]);continue}let{mode:o,doc:h}=m.pop();if(typeof h=="string")C.push(h),P-=a(h);else if(l(h)||h.type==="fill"){let v=p(h);for(let S=v.length-1;S>=0;S--)m.push({mode:o,doc:v[S]})}else switch(h.type){case"indent":case"align":case"indent-if-break":case"label":m.push({mode:o,doc:h.contents});break;case"trim":P+=w(C);break;case"group":{if(D&&h.break)return!1;let v=h.break?y:o,S=h.expandedStates&&v===y?s(h.expandedStates):h.contents;m.push({mode:v,doc:S});break}case"if-break":{let S=(h.groupId?d[h.groupId]||g:o)===y?h.breakContents:h.flatContents;S&&m.push({mode:o,doc:S});break}case"line":if(o===y||h.hard)return!0;h.soft||(C.push(" "),P--);break;case"line-suffix":$=!0;break;case"line-suffix-boundary":if($)return!1;break}}return!1}function N(x,I){d={};let P=I.printWidth,$=t(I.endOfLine),D=0,T=[{ind:c(),mode:y,doc:x}],m=[],C=!1,o=[];for(;T.length>0;){let{ind:v,mode:S,doc:b}=T.pop();if(typeof b=="string"){let B=$!==` +`?b.replace(/\n/g,$):b;m.push(B),D+=a(B)}else if(l(b)){let B=p(b);for(let k=B.length-1;k>=0;k--)T.push({ind:v,mode:S,doc:B[k]})}else switch(b.type){case"cursor":m.push(u.placeholder);break;case"indent":T.push({ind:f(v,I),mode:S,doc:b.contents});break;case"align":T.push({ind:E(v,b.n,I),mode:S,doc:b.contents});break;case"trim":D-=w(m);break;case"group":switch(S){case g:if(!C){T.push({ind:v,mode:b.break?y:g,doc:b.contents});break}case y:{C=!1;let B={ind:v,mode:g,doc:b.contents},k=P-D,M=o.length>0;if(!b.break&&F(B,T,k,M))T.push(B);else if(b.expandedStates){let R=s(b.expandedStates);if(b.break){T.push({ind:v,mode:y,doc:R});break}else for(let q=1;q=b.expandedStates.length){T.push({ind:v,mode:y,doc:R});break}else{let J=b.expandedStates[q],L={ind:v,mode:g,doc:J};if(F(L,T,k,M)){T.push(L);break}}}else T.push({ind:v,mode:y,doc:b.contents});break}}b.id&&(d[b.id]=s(T).mode);break;case"fill":{let B=P-D,{parts:k}=b;if(k.length===0)break;let[M,R]=k,q={ind:v,mode:g,doc:M},J={ind:v,mode:y,doc:M},L=F(q,[],B,o.length>0,!0);if(k.length===1){L?T.push(q):T.push(J);break}let Q={ind:v,mode:g,doc:R},V={ind:v,mode:y,doc:R};if(k.length===2){L?T.push(Q,q):T.push(V,J);break}k.splice(0,2);let j={ind:v,mode:S,doc:n(k)},Y=k[0];F({ind:v,mode:g,doc:[M,R,Y]},[],B,o.length>0,!0)?T.push(j,Q,q):L?T.push(j,V,q):T.push(j,V,J);break}case"if-break":case"indent-if-break":{let B=b.groupId?d[b.groupId]:S;if(B===y){let k=b.type==="if-break"?b.breakContents:b.negate?b.contents:i(b.contents);k&&T.push({ind:v,mode:S,doc:k})}if(B===g){let k=b.type==="if-break"?b.flatContents:b.negate?i(b.contents):b.contents;k&&T.push({ind:v,mode:S,doc:k})}break}case"line-suffix":o.push({ind:v,mode:S,doc:b.contents});break;case"line-suffix-boundary":o.length>0&&T.push({ind:v,mode:S,doc:{type:"line",hard:!0}});break;case"line":switch(S){case g:if(b.hard)C=!0;else{b.soft||(m.push(" "),D+=1);break}case y:if(o.length>0){T.push({ind:v,mode:S,doc:b},...o.reverse()),o.length=0;break}b.literal?v.root?(m.push($,v.root.value),D=v.root.length):(m.push($),D=0):(D-=w(m),m.push($+v.value),D=v.length);break}break;case"label":T.push({ind:v,mode:S,doc:b.contents});break;default:}T.length===0&&o.length>0&&(T.push(...o.reverse()),o.length=0)}let h=m.indexOf(u.placeholder);if(h!==-1){let v=m.indexOf(u.placeholder,h+1),S=m.slice(0,h).join(""),b=m.slice(h+1,v).join(""),B=m.slice(v+1).join("");return{formatted:S+b+B,cursorNodeStart:S.length,cursorNodeText:b}}return{formatted:m.join("")}}r.exports={printDocToString:N}}}),wD=te({"src/document/doc-debug.js"(e,r){"use strict";ne();var{isConcat:t,getDocParts:s}=Xt();function a(u){if(!u)return"";if(t(u)){let i=[];for(let l of s(u))if(t(l))i.push(...a(l).parts);else{let p=a(l);p!==""&&i.push(p)}return{type:"concat",parts:i}}return u.type==="if-break"?Object.assign(Object.assign({},u),{},{breakContents:a(u.breakContents),flatContents:a(u.flatContents)}):u.type==="group"?Object.assign(Object.assign({},u),{},{contents:a(u.contents),expandedStates:u.expandedStates&&u.expandedStates.map(a)}):u.type==="fill"?{type:"fill",parts:u.parts.map(a)}:u.contents?Object.assign(Object.assign({},u),{},{contents:a(u.contents)}):u}function n(u){let i=Object.create(null),l=new Set;return p(a(u));function p(y,g,c){if(typeof y=="string")return JSON.stringify(y);if(t(y)){let f=s(y).map(p).filter(Boolean);return f.length===1?f[0]:`[${f.join(", ")}]`}if(y.type==="line"){let f=Array.isArray(c)&&c[g+1]&&c[g+1].type==="break-parent";return y.literal?f?"literalline":"literallineWithoutBreakParent":y.hard?f?"hardline":"hardlineWithoutBreakParent":y.soft?"softline":"line"}if(y.type==="break-parent")return Array.isArray(c)&&c[g-1]&&c[g-1].type==="line"&&c[g-1].hard?void 0:"breakParent";if(y.type==="trim")return"trim";if(y.type==="indent")return"indent("+p(y.contents)+")";if(y.type==="align")return y.n===Number.NEGATIVE_INFINITY?"dedentToRoot("+p(y.contents)+")":y.n<0?"dedent("+p(y.contents)+")":y.n.type==="root"?"markAsRoot("+p(y.contents)+")":"align("+JSON.stringify(y.n)+", "+p(y.contents)+")";if(y.type==="if-break")return"ifBreak("+p(y.breakContents)+(y.flatContents?", "+p(y.flatContents):"")+(y.groupId?(y.flatContents?"":', ""')+`, { groupId: ${d(y.groupId)} }`:"")+")";if(y.type==="indent-if-break"){let f=[];y.negate&&f.push("negate: true"),y.groupId&&f.push(`groupId: ${d(y.groupId)}`);let E=f.length>0?`, { ${f.join(", ")} }`:"";return`indentIfBreak(${p(y.contents)}${E})`}if(y.type==="group"){let f=[];y.break&&y.break!=="propagated"&&f.push("shouldBreak: true"),y.id&&f.push(`id: ${d(y.id)}`);let E=f.length>0?`, { ${f.join(", ")} }`:"";return y.expandedStates?`conditionalGroup([${y.expandedStates.map(_=>p(_)).join(",")}]${E})`:`group(${p(y.contents)}${E})`}if(y.type==="fill")return`fill([${y.parts.map(f=>p(f)).join(", ")}])`;if(y.type==="line-suffix")return"lineSuffix("+p(y.contents)+")";if(y.type==="line-suffix-boundary")return"lineSuffixBoundary";if(y.type==="label")return`label(${JSON.stringify(y.label)}, ${p(y.contents)})`;throw new Error("Unknown doc type "+y.type)}function d(y){if(typeof y!="symbol")return JSON.stringify(String(y));if(y in i)return i[y];let g=String(y).slice(7,-1)||"symbol";for(let c=0;;c++){let f=g+(c>0?` #${c}`:"");if(!l.has(f))return l.add(f),i[y]=`Symbol.for(${JSON.stringify(f)})`}}}r.exports={printDocToDebug:n}}}),qe=te({"src/document/index.js"(e,r){"use strict";ne(),r.exports={builders:Wn(),printer:ND(),utils:Xt(),debug:wD()}}}),Na={};zt(Na,{default:()=>_D});function _D(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var PD=ht({"node_modules/escape-string-regexp/index.js"(){ne()}}),wa=te({"node_modules/semver/internal/debug.js"(e,r){ne();var t=typeof Nt=="object"&&Nt.env&&Nt.env.NODE_DEBUG&&/\bsemver\b/i.test(Nt.env.NODE_DEBUG)?function(){for(var s=arguments.length,a=new Array(s),n=0;n{};r.exports=t}}),_a=te({"node_modules/semver/internal/constants.js"(e,r){ne();var t="2.0.0",s=256,a=Number.MAX_SAFE_INTEGER||9007199254740991,n=16;r.exports={SEMVER_SPEC_VERSION:t,MAX_LENGTH:s,MAX_SAFE_INTEGER:a,MAX_SAFE_COMPONENT_LENGTH:n}}}),ID=te({"node_modules/semver/internal/re.js"(e,r){ne();var{MAX_SAFE_COMPONENT_LENGTH:t}=_a(),s=wa();e=r.exports={};var a=e.re=[],n=e.src=[],u=e.t={},i=0,l=(p,d,y)=>{let g=i++;s(p,g,d),u[p]=g,n[g]=d,a[g]=new RegExp(d,y?"g":void 0)};l("NUMERICIDENTIFIER","0|[1-9]\\d*"),l("NUMERICIDENTIFIERLOOSE","[0-9]+"),l("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),l("MAINVERSION",`(${n[u.NUMERICIDENTIFIER]})\\.(${n[u.NUMERICIDENTIFIER]})\\.(${n[u.NUMERICIDENTIFIER]})`),l("MAINVERSIONLOOSE",`(${n[u.NUMERICIDENTIFIERLOOSE]})\\.(${n[u.NUMERICIDENTIFIERLOOSE]})\\.(${n[u.NUMERICIDENTIFIERLOOSE]})`),l("PRERELEASEIDENTIFIER",`(?:${n[u.NUMERICIDENTIFIER]}|${n[u.NONNUMERICIDENTIFIER]})`),l("PRERELEASEIDENTIFIERLOOSE",`(?:${n[u.NUMERICIDENTIFIERLOOSE]}|${n[u.NONNUMERICIDENTIFIER]})`),l("PRERELEASE",`(?:-(${n[u.PRERELEASEIDENTIFIER]}(?:\\.${n[u.PRERELEASEIDENTIFIER]})*))`),l("PRERELEASELOOSE",`(?:-?(${n[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${n[u.PRERELEASEIDENTIFIERLOOSE]})*))`),l("BUILDIDENTIFIER","[0-9A-Za-z-]+"),l("BUILD",`(?:\\+(${n[u.BUILDIDENTIFIER]}(?:\\.${n[u.BUILDIDENTIFIER]})*))`),l("FULLPLAIN",`v?${n[u.MAINVERSION]}${n[u.PRERELEASE]}?${n[u.BUILD]}?`),l("FULL",`^${n[u.FULLPLAIN]}$`),l("LOOSEPLAIN",`[v=\\s]*${n[u.MAINVERSIONLOOSE]}${n[u.PRERELEASELOOSE]}?${n[u.BUILD]}?`),l("LOOSE",`^${n[u.LOOSEPLAIN]}$`),l("GTLT","((?:<|>)?=?)"),l("XRANGEIDENTIFIERLOOSE",`${n[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),l("XRANGEIDENTIFIER",`${n[u.NUMERICIDENTIFIER]}|x|X|\\*`),l("XRANGEPLAIN",`[v=\\s]*(${n[u.XRANGEIDENTIFIER]})(?:\\.(${n[u.XRANGEIDENTIFIER]})(?:\\.(${n[u.XRANGEIDENTIFIER]})(?:${n[u.PRERELEASE]})?${n[u.BUILD]}?)?)?`),l("XRANGEPLAINLOOSE",`[v=\\s]*(${n[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[u.XRANGEIDENTIFIERLOOSE]})(?:${n[u.PRERELEASELOOSE]})?${n[u.BUILD]}?)?)?`),l("XRANGE",`^${n[u.GTLT]}\\s*${n[u.XRANGEPLAIN]}$`),l("XRANGELOOSE",`^${n[u.GTLT]}\\s*${n[u.XRANGEPLAINLOOSE]}$`),l("COERCE",`(^|[^\\d])(\\d{1,${t}})(?:\\.(\\d{1,${t}}))?(?:\\.(\\d{1,${t}}))?(?:$|[^\\d])`),l("COERCERTL",n[u.COERCE],!0),l("LONETILDE","(?:~>?)"),l("TILDETRIM",`(\\s*)${n[u.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",l("TILDE",`^${n[u.LONETILDE]}${n[u.XRANGEPLAIN]}$`),l("TILDELOOSE",`^${n[u.LONETILDE]}${n[u.XRANGEPLAINLOOSE]}$`),l("LONECARET","(?:\\^)"),l("CARETTRIM",`(\\s*)${n[u.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",l("CARET",`^${n[u.LONECARET]}${n[u.XRANGEPLAIN]}$`),l("CARETLOOSE",`^${n[u.LONECARET]}${n[u.XRANGEPLAINLOOSE]}$`),l("COMPARATORLOOSE",`^${n[u.GTLT]}\\s*(${n[u.LOOSEPLAIN]})$|^$`),l("COMPARATOR",`^${n[u.GTLT]}\\s*(${n[u.FULLPLAIN]})$|^$`),l("COMPARATORTRIM",`(\\s*)${n[u.GTLT]}\\s*(${n[u.LOOSEPLAIN]}|${n[u.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",l("HYPHENRANGE",`^\\s*(${n[u.XRANGEPLAIN]})\\s+-\\s+(${n[u.XRANGEPLAIN]})\\s*$`),l("HYPHENRANGELOOSE",`^\\s*(${n[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${n[u.XRANGEPLAINLOOSE]})\\s*$`),l("STAR","(<|>)?=?\\s*\\*"),l("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),l("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}}),kD=te({"node_modules/semver/internal/parse-options.js"(e,r){ne();var t=["includePrerelease","loose","rtl"],s=a=>a?typeof a!="object"?{loose:!0}:t.filter(n=>a[n]).reduce((n,u)=>(n[u]=!0,n),{}):{};r.exports=s}}),LD=te({"node_modules/semver/internal/identifiers.js"(e,r){ne();var t=/^[0-9]+$/,s=(n,u)=>{let i=t.test(n),l=t.test(u);return i&&l&&(n=+n,u=+u),n===u?0:i&&!l?-1:l&&!i?1:ns(u,n);r.exports={compareIdentifiers:s,rcompareIdentifiers:a}}}),OD=te({"node_modules/semver/classes/semver.js"(e,r){ne();var t=wa(),{MAX_LENGTH:s,MAX_SAFE_INTEGER:a}=_a(),{re:n,t:u}=ID(),i=kD(),{compareIdentifiers:l}=LD(),p=class{constructor(d,y){if(y=i(y),d instanceof p){if(d.loose===!!y.loose&&d.includePrerelease===!!y.includePrerelease)return d;d=d.version}else if(typeof d!="string")throw new TypeError(`Invalid Version: ${d}`);if(d.length>s)throw new TypeError(`version is longer than ${s} characters`);t("SemVer",d,y),this.options=y,this.loose=!!y.loose,this.includePrerelease=!!y.includePrerelease;let g=d.trim().match(y.loose?n[u.LOOSE]:n[u.FULL]);if(!g)throw new TypeError(`Invalid Version: ${d}`);if(this.raw=d,this.major=+g[1],this.minor=+g[2],this.patch=+g[3],this.major>a||this.major<0)throw new TypeError("Invalid major version");if(this.minor>a||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>a||this.patch<0)throw new TypeError("Invalid patch version");g[4]?this.prerelease=g[4].split(".").map(c=>{if(/^[0-9]+$/.test(c)){let f=+c;if(f>=0&&f=0;)typeof this.prerelease[g]=="number"&&(this.prerelease[g]++,g=-2);g===-1&&this.prerelease.push(0)}y&&(l(this.prerelease[0],y)===0?isNaN(this.prerelease[1])&&(this.prerelease=[y,0]):this.prerelease=[y,0]);break;default:throw new Error(`invalid increment argument: ${d}`)}return this.format(),this.raw=this.version,this}};r.exports=p}}),Gn=te({"node_modules/semver/functions/compare.js"(e,r){ne();var t=OD(),s=(a,n,u)=>new t(a,u).compare(new t(n,u));r.exports=s}}),jD=te({"node_modules/semver/functions/lt.js"(e,r){ne();var t=Gn(),s=(a,n,u)=>t(a,n,u)<0;r.exports=s}}),qD=te({"node_modules/semver/functions/gte.js"(e,r){ne();var t=Gn(),s=(a,n,u)=>t(a,n,u)>=0;r.exports=s}}),MD=te({"src/utils/arrayify.js"(e,r){"use strict";ne(),r.exports=(t,s)=>Object.entries(t).map(a=>{let[n,u]=a;return Object.assign({[s]:n},u)})}}),RD=te({"node_modules/outdent/lib/index.js"(e,r){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.outdent=void 0;function t(){for(var F=[],N=0;Ntypeof y=="string"||typeof y=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",since:"1.16.0",description:"JavaScript"},{value:"babel-flow",since:"1.16.0",description:"Flow"},{value:"babel-ts",since:"2.0.0",description:"TypeScript"},{value:"typescript",since:"1.4.0",description:"TypeScript"},{value:"acorn",since:"2.6.0",description:"JavaScript"},{value:"espree",since:"2.2.0",description:"JavaScript"},{value:"meriyah",since:"2.2.0",description:"JavaScript"},{value:"css",since:"1.7.1",description:"CSS"},{value:"less",since:"1.7.1",description:"Less"},{value:"scss",since:"1.7.1",description:"SCSS"},{value:"json",since:"1.5.0",description:"JSON"},{value:"json5",since:"1.13.0",description:"JSON5"},{value:"json-stringify",since:"1.13.0",description:"JSON.stringify"},{value:"graphql",since:"1.5.0",description:"GraphQL"},{value:"markdown",since:"1.8.0",description:"Markdown"},{value:"mdx",since:"1.15.0",description:"MDX"},{value:"vue",since:"1.10.0",description:"Vue"},{value:"yaml",since:"1.14.0",description:"YAML"},{value:"glimmer",since:"2.3.0",description:"Ember / Handlebars"},{value:"html",since:"1.15.0",description:"HTML"},{value:"angular",since:"1.15.0",description:"Angular"},{value:"lwc",since:"1.17.0",description:"Lightning Web Components"}]},plugins:{since:"1.10.0",type:"path",array:!0,default:[{value:[]}],category:l,description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:y=>typeof y=="string"||typeof y=="object",cliName:"plugin",cliCategory:s},pluginSearchDirs:{since:"1.13.0",type:"path",array:!0,default:[{value:[]}],category:l,description:t` + Custom directory that contains prettier plugins in node_modules subdirectory. + Overrides default behavior when plugins are searched relatively to the location of Prettier. + Multiple values are accepted. + `,exception:y=>typeof y=="string"||typeof y=="object",cliName:"plugin-search-dir",cliCategory:s},printWidth:{since:"0.0.0",category:l,type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},rangeEnd:{since:"1.4.0",category:p,type:"int",default:Number.POSITIVE_INFINITY,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:t` + Format code ending at a given character offset (exclusive). + The range will extend forwards to the end of the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:a},rangeStart:{since:"1.4.0",category:p,type:"int",default:0,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:t` + Format code starting at a given character offset. + The range will extend backwards to the start of the first line containing the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:a},requirePragma:{since:"1.7.0",category:p,type:"boolean",default:!1,description:t` + Require either '@prettier' or '@format' to be present in the file's first docblock comment + in order for it to be formatted. + `,cliCategory:u},tabWidth:{type:"int",category:l,default:2,description:"Number of spaces per indentation level.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},useTabs:{since:"1.0.0",category:l,type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{since:"2.1.0",category:l,type:"choice",default:[{since:"2.1.0",value:"auto"}],description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};r.exports={CATEGORY_CONFIG:s,CATEGORY_EDITOR:a,CATEGORY_FORMAT:n,CATEGORY_OTHER:u,CATEGORY_OUTPUT:i,CATEGORY_GLOBAL:l,CATEGORY_SPECIAL:p,options:d}}}),Un=te({"src/main/support.js"(e,r){"use strict";ne();var t={compare:Gn(),lt:jD(),gte:qD()},s=MD(),a=xa().version,n=$D().options;function u(){let{plugins:l=[],showUnreleased:p=!1,showDeprecated:d=!1,showInternal:y=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},g=a.split("-",1)[0],c=l.flatMap(F=>F.languages||[]).filter(E),f=s(Object.assign({},...l.map(F=>{let{options:N}=F;return N}),n),"name").filter(F=>E(F)&&_(F)).sort((F,N)=>F.name===N.name?0:F.name{F=Object.assign({},F),Array.isArray(F.default)&&(F.default=F.default.length===1?F.default[0].value:F.default.filter(E).sort((x,I)=>t.compare(I.since,x.since))[0].value),Array.isArray(F.choices)&&(F.choices=F.choices.filter(x=>E(x)&&_(x)),F.name==="parser"&&i(F,c,l));let N=Object.fromEntries(l.filter(x=>x.defaultOptions&&x.defaultOptions[F.name]!==void 0).map(x=>[x.name,x.defaultOptions[F.name]]));return Object.assign(Object.assign({},F),{},{pluginDefaults:N})});return{languages:c,options:f};function E(F){return p||!("since"in F)||F.since&&t.gte(g,F.since)}function _(F){return d||!("deprecated"in F)||F.deprecated&&t.lt(g,F.deprecated)}function w(F){if(y)return F;let{cliName:N,cliCategory:x,cliDescription:I}=F;return $n(F,lD)}}function i(l,p,d){let y=new Set(l.choices.map(g=>g.value));for(let g of p)if(g.parsers){for(let c of g.parsers)if(!y.has(c)){y.add(c);let f=d.find(_=>_.parsers&&_.parsers[c]),E=g.name;f&&f.name&&(E+=` (plugin: ${f.name})`),l.choices.push({value:c,description:E})}}}r.exports={getSupportInfo:u}}}),Jn=te({"src/utils/is-non-empty-array.js"(e,r){"use strict";ne();function t(s){return Array.isArray(s)&&s.length>0}r.exports=t}}),wr=te({"src/utils/text/skip.js"(e,r){"use strict";ne();function t(i){return(l,p,d)=>{let y=d&&d.backwards;if(p===!1)return!1;let{length:g}=l,c=p;for(;c>=0&&cV[V.length-2];function _(V){return(j,Y,ie)=>{let ee=ie&&ie.backwards;if(Y===!1)return!1;let{length:ce}=j,W=Y;for(;W>=0&&W2&&arguments[2]!==void 0?arguments[2]:{},ie=l(V,Y.backwards?j-1:j,Y),ee=c(V,ie,Y);return ie!==ee}function F(V,j,Y){for(let ie=j;ie2&&arguments[2]!==void 0?arguments[2]:{};return l(V,Y.backwards?j-1:j,Y)!==j}function T(V,j){let Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,ie=0;for(let ee=Y;eede?ce:ee}return W}function o(V,j){let Y=V.slice(1,-1),ie=j.parser==="json"||j.parser==="json5"&&j.quoteProps==="preserve"&&!j.singleQuote?'"':j.__isInHtmlAttribute?"'":C(Y,j.singleQuote?"'":'"').quote;return h(Y,ie,!(j.parser==="css"||j.parser==="less"||j.parser==="scss"||j.__embeddedInHtml))}function h(V,j,Y){let ie=j==='"'?"'":'"',ee=/\\(.)|(["'])/gs,ce=V.replace(ee,(W,K,de)=>K===ie?K:de===j?"\\"+de:de||(Y&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(K)?K:"\\"+K));return j+ce+j}function v(V){return V.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(\d)/,"$1$2$3").replace(/^([+-]?[\d.]+)e[+-]?0+$/,"$1").replace(/^([+-])?\./,"$10.").replace(/(\.\d+?)0+(?=e|$)/,"$1").replace(/\.(?=e|$)/,"")}function S(V,j){let Y=V.match(new RegExp(`(${t(j)})+`,"g"));return Y===null?0:Y.reduce((ie,ee)=>Math.max(ie,ee.length/j.length),0)}function b(V,j){let Y=V.match(new RegExp(`(${t(j)})+`,"g"));if(Y===null)return 0;let ie=new Map,ee=0;for(let ce of Y){let W=ce.length/j.length;ie.set(W,!0),W>ee&&(ee=W)}for(let ce=1;ce{let{name:ce}=ee;return ce.toLowerCase()===V})||Y.find(ee=>{let{aliases:ce}=ee;return Array.isArray(ce)&&ce.includes(V)})||Y.find(ee=>{let{extensions:ce}=ee;return Array.isArray(ce)&&ce.includes(`.${V}`)});return ie&&ie.parsers[0]}function J(V){return V&&V.type==="front-matter"}function L(V){let j=new WeakMap;return function(Y){return j.has(Y)||j.set(Y,Symbol(V)),j.get(Y)}}function Q(V){let j=V.type||V.kind||"(unknown type)",Y=String(V.name||V.id&&(typeof V.id=="object"?V.id.name:V.id)||V.key&&(typeof V.key=="object"?V.key.name:V.key)||V.value&&(typeof V.value=="object"?"":String(V.value))||V.operator||"");return Y.length>20&&(Y=Y.slice(0,19)+"\u2026"),j+(Y?" "+Y:"")}r.exports={inferParserByLanguage:q,getStringWidth:u,getMaxContinuousCount:S,getMinNotPresentContinuousCount:b,getPenultimate:E,getLast:s,getNextNonSpaceNonCommentCharacterIndexWithStartIndex:f,getNextNonSpaceNonCommentCharacterIndex:P,getNextNonSpaceNonCommentCharacter:$,skip:_,skipWhitespace:i,skipSpaces:l,skipToLineEnd:p,skipEverythingButNewLine:d,skipInlineComment:y,skipTrailingComment:g,skipNewline:c,isNextLineEmptyAfterIndex:x,isNextLineEmpty:I,isPreviousLineEmpty:N,hasNewline:w,hasNewlineInRange:F,hasSpaces:D,getAlignmentSize:T,getIndentSize:m,getPreferredQuote:C,printString:o,printNumber:v,makeString:h,addLeadingComment:k,addDanglingComment:M,addTrailingComment:R,isFrontMatterNode:J,isNonEmptyArray:n,createGroupIdMapper:L}}}),La={};zt(La,{basename:()=>Ra,default:()=>Va,delimiter:()=>On,dirname:()=>Ma,extname:()=>$a,isAbsolute:()=>Xn,join:()=>ja,normalize:()=>zn,relative:()=>qa,resolve:()=>Br,sep:()=>Ln});function Oa(e,r){for(var t=0,s=e.length-1;s>=0;s--){var a=e[s];a==="."?e.splice(s,1):a===".."?(e.splice(s,1),t++):t&&(e.splice(s,1),t--)}if(r)for(;t--;t)e.unshift("..");return e}function Br(){for(var e="",r=!1,t=arguments.length-1;t>=-1&&!r;t--){var s=t>=0?arguments[t]:"/";if(typeof s!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!s)continue;e=s+"/"+e,r=s.charAt(0)==="/"}return e=Oa(Kn(e.split("/"),function(a){return!!a}),!r).join("/"),(r?"/":"")+e||"."}function zn(e){var r=Xn(e),t=Wa(e,-1)==="/";return e=Oa(Kn(e.split("/"),function(s){return!!s}),!r).join("/"),!e&&!r&&(e="."),e&&t&&(e+="/"),(r?"/":"")+e}function Xn(e){return e.charAt(0)==="/"}function ja(){var e=Array.prototype.slice.call(arguments,0);return zn(Kn(e,function(r,t){if(typeof r!="string")throw new TypeError("Arguments to path.join must be strings");return r}).join("/"))}function qa(e,r){e=Br(e).substr(1),r=Br(r).substr(1);function t(p){for(var d=0;d=0&&p[y]==="";y--);return d>y?[]:p.slice(d,y-d+1)}for(var s=t(e.split("/")),a=t(r.split("/")),n=Math.min(s.length,a.length),u=n,i=0;iTr,__asyncDelegator:()=>nm,__asyncGenerator:()=>rm,__asyncValues:()=>um,__await:()=>Jt,__awaiter:()=>KD,__classPrivateFieldGet:()=>om,__classPrivateFieldSet:()=>lm,__createBinding:()=>QD,__decorate:()=>JD,__exportStar:()=>ZD,__extends:()=>GD,__generator:()=>YD,__importDefault:()=>am,__importStar:()=>im,__makeTemplateObject:()=>sm,__metadata:()=>XD,__param:()=>zD,__read:()=>Ha,__rest:()=>UD,__spread:()=>em,__spreadArrays:()=>tm,__values:()=>jn});function GD(e,r){br(e,r);function t(){this.constructor=e}e.prototype=r===null?Object.create(r):(t.prototype=r.prototype,new t)}function UD(e,r){var t={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&r.indexOf(s)<0&&(t[s]=e[s]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,s=Object.getOwnPropertySymbols(e);a=0;i--)(u=e[i])&&(n=(a<3?u(n):a>3?u(r,t,n):u(r,t))||n);return a>3&&n&&Object.defineProperty(r,t,n),n}function zD(e,r){return function(t,s){r(t,s,e)}}function XD(e,r){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,r)}function KD(e,r,t,s){function a(n){return n instanceof t?n:new t(function(u){u(n)})}return new(t||(t=Promise))(function(n,u){function i(d){try{p(s.next(d))}catch(y){u(y)}}function l(d){try{p(s.throw(d))}catch(y){u(y)}}function p(d){d.done?n(d.value):a(d.value).then(i,l)}p((s=s.apply(e,r||[])).next())})}function YD(e,r){var t={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},s,a,n,u;return u={next:i(0),throw:i(1),return:i(2)},typeof Symbol=="function"&&(u[Symbol.iterator]=function(){return this}),u;function i(p){return function(d){return l([p,d])}}function l(p){if(s)throw new TypeError("Generator is already executing.");for(;t;)try{if(s=1,a&&(n=p[0]&2?a.return:p[0]?a.throw||((n=a.return)&&n.call(a),0):a.next)&&!(n=n.call(a,p[1])).done)return n;switch(a=0,n&&(p=[p[0]&2,n.value]),p[0]){case 0:case 1:n=p;break;case 4:return t.label++,{value:p[1],done:!1};case 5:t.label++,a=p[1],p=[0];continue;case 7:p=t.ops.pop(),t.trys.pop();continue;default:if(n=t.trys,!(n=n.length>0&&n[n.length-1])&&(p[0]===6||p[0]===2)){t=0;continue}if(p[0]===3&&(!n||p[1]>n[0]&&p[1]=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")}function Ha(e,r){var t=typeof Symbol=="function"&&e[Symbol.iterator];if(!t)return e;var s=t.call(e),a,n=[],u;try{for(;(r===void 0||r-- >0)&&!(a=s.next()).done;)n.push(a.value)}catch(i){u={error:i}}finally{try{a&&!a.done&&(t=s.return)&&t.call(s)}finally{if(u)throw u.error}}return n}function em(){for(var e=[],r=0;r1||i(g,c)})})}function i(g,c){try{l(s[g](c))}catch(f){y(n[0][3],f)}}function l(g){g.value instanceof Jt?Promise.resolve(g.value.v).then(p,d):y(n[0][2],g)}function p(g){i("next",g)}function d(g){i("throw",g)}function y(g,c){g(c),n.shift(),n.length&&i(n[0][0],n[0][1])}}function nm(e){var r,t;return r={},s("next"),s("throw",function(a){throw a}),s("return"),r[Symbol.iterator]=function(){return this},r;function s(a,n){r[a]=e[a]?function(u){return(t=!t)?{value:Jt(e[a](u)),done:a==="return"}:n?n(u):u}:n}}function um(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=e[Symbol.asyncIterator],t;return r?r.call(e):(e=typeof jn=="function"?jn(e):e[Symbol.iterator](),t={},s("next"),s("throw"),s("return"),t[Symbol.asyncIterator]=function(){return this},t);function s(n){t[n]=e[n]&&function(u){return new Promise(function(i,l){u=e[n](u),a(i,l,u.done,u.value)})}}function a(n,u,i,l){Promise.resolve(l).then(function(p){n({value:p,done:i})},u)}}function sm(e,r){return Object.defineProperty?Object.defineProperty(e,"raw",{value:r}):e.raw=r,e}function im(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var t in e)Object.hasOwnProperty.call(e,t)&&(r[t]=e[t]);return r.default=e,r}function am(e){return e&&e.__esModule?e:{default:e}}function om(e,r){if(!r.has(e))throw new TypeError("attempted to get private field on non-instance");return r.get(e)}function lm(e,r,t){if(!r.has(e))throw new TypeError("attempted to set private field on non-instance");return r.set(e,t),t}var br,Tr,Et=ht({"node_modules/tslib/tslib.es6.js"(){ne(),br=function(e,r){return br=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,s){t.__proto__=s}||function(t,s){for(var a in s)s.hasOwnProperty(a)&&(t[a]=s[a])},br(e,r)},Tr=function(){return Tr=Object.assign||function(r){for(var t,s=1,a=arguments.length;s/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(r)?r:JSON.stringify(r),value(r){if(r===null||typeof r!="object")return JSON.stringify(r);if(Array.isArray(r))return`[${r.map(s=>e.apiDescriptor.value(s)).join(", ")}]`;let t=Object.keys(r);return t.length===0?"{}":`{ ${t.map(s=>`${e.apiDescriptor.key(s)}: ${e.apiDescriptor.value(r[s])}`).join(", ")} }`},pair:r=>{let{key:t,value:s}=r;return e.apiDescriptor.value({[t]:s})}}}}),cm=te({"node_modules/vnopts/lib/descriptors/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(Ga(),e)}}),Pr=te({"scripts/build/shims/chalk.cjs"(e,r){"use strict";ne();var t=s=>s;t.grey=t,t.red=t,t.bold=t,t.yellow=t,t.blue=t,t.default=t,r.exports=t}}),Ua=te({"node_modules/vnopts/lib/handlers/deprecated/common.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Pr();e.commonDeprecatedHandler=(t,s,a)=>{let{descriptor:n}=a,u=[`${r.default.yellow(typeof t=="string"?n.key(t):n.pair(t))} is deprecated`];return s&&u.push(`we now treat it as ${r.default.blue(typeof s=="string"?n.key(s):n.pair(s))}`),u.join("; ")+"."}}}),pm=te({"node_modules/vnopts/lib/handlers/deprecated/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(Ua(),e)}}),fm=te({"node_modules/vnopts/lib/handlers/invalid/common.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Pr();e.commonInvalidHandler=(t,s,a)=>[`Invalid ${r.default.red(a.descriptor.key(t))} value.`,`Expected ${r.default.blue(a.schemas[t].expected(a))},`,`but received ${r.default.red(a.descriptor.value(s))}.`].join(" ")}}),Ja=te({"node_modules/vnopts/lib/handlers/invalid/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(fm(),e)}}),Dm=te({"node_modules/vnopts/node_modules/leven/index.js"(e,r){"use strict";ne();var t=[],s=[];r.exports=function(a,n){if(a===n)return 0;var u=a;a.length>n.length&&(a=n,n=u);var i=a.length,l=n.length;if(i===0)return l;if(l===0)return i;for(;i>0&&a.charCodeAt(~-i)===n.charCodeAt(~-l);)i--,l--;if(i===0)return l;for(var p=0;py?c>y?y+1:c:c>g?g+1:c;return y}}}),za=te({"node_modules/vnopts/lib/handlers/unknown/leven.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Pr(),t=Dm();e.levenUnknownHandler=(s,a,n)=>{let{descriptor:u,logger:i,schemas:l}=n,p=[`Ignored unknown option ${r.default.yellow(u.pair({key:s,value:a}))}.`],d=Object.keys(l).sort().find(y=>t(s,y)<3);d&&p.push(`Did you mean ${r.default.blue(u.key(d))}?`),i.warn(p.join(" "))}}}),mm=te({"node_modules/vnopts/lib/handlers/unknown/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(za(),e)}}),dm=te({"node_modules/vnopts/lib/handlers/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(pm(),e),r.__exportStar(Ja(),e),r.__exportStar(mm(),e)}}),Ft=te({"node_modules/vnopts/lib/schema.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function t(n,u){let i=new n(u),l=Object.create(i);for(let p of r)p in u&&(l[p]=a(u[p],i,s.prototype[p].length));return l}e.createSchema=t;var s=class{constructor(n){this.name=n.name}static create(n){return t(this,n)}default(n){}expected(n){return"nothing"}validate(n,u){return!1}deprecated(n,u){return!1}forward(n,u){}redirect(n,u){}overlap(n,u,i){return n}preprocess(n,u){return n}postprocess(n,u){return n}};e.Schema=s;function a(n,u,i){return typeof n=="function"?function(){for(var l=arguments.length,p=new Array(l),d=0;dn}}}),gm=te({"node_modules/vnopts/lib/schemas/alias.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=class extends r.Schema{constructor(s){super(s),this._sourceName=s.sourceName}expected(s){return s.schemas[this._sourceName].expected(s)}validate(s,a){return a.schemas[this._sourceName].validate(s,a)}redirect(s,a){return this._sourceName}};e.AliasSchema=t}}),ym=te({"node_modules/vnopts/lib/schemas/any.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=class extends r.Schema{expected(){return"anything"}validate(){return!0}};e.AnySchema=t}}),hm=te({"node_modules/vnopts/lib/schemas/array.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt)),t=Ft(),s=class extends t.Schema{constructor(n){var{valueSchema:u,name:i=u.name}=n,l=r.__rest(n,["valueSchema","name"]);super(Object.assign({},l,{name:i})),this._valueSchema=u}expected(n){return`an array of ${this._valueSchema.expected(n)}`}validate(n,u){if(!Array.isArray(n))return!1;let i=[];for(let l of n){let p=u.normalizeValidateResult(this._valueSchema.validate(l,u),l);p!==!0&&i.push(p.value)}return i.length===0?!0:{value:i}}deprecated(n,u){let i=[];for(let l of n){let p=u.normalizeDeprecatedResult(this._valueSchema.deprecated(l,u),l);p!==!1&&i.push(...p.map(d=>{let{value:y}=d;return{value:[y]}}))}return i}forward(n,u){let i=[];for(let l of n){let p=u.normalizeForwardResult(this._valueSchema.forward(l,u),l);i.push(...p.map(a))}return i}redirect(n,u){let i=[],l=[];for(let p of n){let d=u.normalizeRedirectResult(this._valueSchema.redirect(p,u),p);"remain"in d&&i.push(d.remain),l.push(...d.redirect.map(a))}return i.length===0?{redirect:l}:{redirect:l,remain:i}}overlap(n,u){return n.concat(u)}};e.ArraySchema=s;function a(n){let{from:u,to:i}=n;return{from:[u],to:i}}}}),vm=te({"node_modules/vnopts/lib/schemas/boolean.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=class extends r.Schema{expected(){return"true or false"}validate(s){return typeof s=="boolean"}};e.BooleanSchema=t}}),Yn=te({"node_modules/vnopts/lib/utils.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});function r(c,f){let E=Object.create(null);for(let _ of c){let w=_[f];if(E[w])throw new Error(`Duplicate ${f} ${JSON.stringify(w)}`);E[w]=_}return E}e.recordFromArray=r;function t(c,f){let E=new Map;for(let _ of c){let w=_[f];if(E.has(w))throw new Error(`Duplicate ${f} ${JSON.stringify(w)}`);E.set(w,_)}return E}e.mapFromArray=t;function s(){let c=Object.create(null);return f=>{let E=JSON.stringify(f);return c[E]?!0:(c[E]=!0,!1)}}e.createAutoChecklist=s;function a(c,f){let E=[],_=[];for(let w of c)f(w)?E.push(w):_.push(w);return[E,_]}e.partition=a;function n(c){return c===Math.floor(c)}e.isInt=n;function u(c,f){if(c===f)return 0;let E=typeof c,_=typeof f,w=["undefined","object","boolean","number","string"];return E!==_?w.indexOf(E)-w.indexOf(_):E!=="string"?Number(c)-Number(f):c.localeCompare(f)}e.comparePrimitive=u;function i(c){return c===void 0?{}:c}e.normalizeDefaultResult=i;function l(c,f){return c===!0?!0:c===!1?{value:f}:c}e.normalizeValidateResult=l;function p(c,f){let E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return c===!1?!1:c===!0?E?!0:[{value:f}]:"value"in c?[c]:c.length===0?!1:c}e.normalizeDeprecatedResult=p;function d(c,f){return typeof c=="string"||"key"in c?{from:f,to:c}:"from"in c?{from:c.from,to:c.to}:{from:f,to:c.to}}e.normalizeTransferResult=d;function y(c,f){return c===void 0?[]:Array.isArray(c)?c.map(E=>d(E,f)):[d(c,f)]}e.normalizeForwardResult=y;function g(c,f){let E=y(typeof c=="object"&&"redirect"in c?c.redirect:c,f);return E.length===0?{remain:f,redirect:E}:typeof c=="object"&&"remain"in c?{remain:c.remain,redirect:E}:{redirect:E}}e.normalizeRedirectResult=g}}),Cm=te({"node_modules/vnopts/lib/schemas/choice.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=Yn(),s=class extends r.Schema{constructor(a){super(a),this._choices=t.mapFromArray(a.choices.map(n=>n&&typeof n=="object"?n:{value:n}),"value")}expected(a){let{descriptor:n}=a,u=Array.from(this._choices.keys()).map(p=>this._choices.get(p)).filter(p=>!p.deprecated).map(p=>p.value).sort(t.comparePrimitive).map(n.value),i=u.slice(0,-2),l=u.slice(-2);return i.concat(l.join(" or ")).join(", ")}validate(a){return this._choices.has(a)}deprecated(a){let n=this._choices.get(a);return n&&n.deprecated?{value:a}:!1}forward(a){let n=this._choices.get(a);return n?n.forward:void 0}redirect(a){let n=this._choices.get(a);return n?n.redirect:void 0}};e.ChoiceSchema=s}}),Xa=te({"node_modules/vnopts/lib/schemas/number.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=class extends r.Schema{expected(){return"a number"}validate(s,a){return typeof s=="number"}};e.NumberSchema=t}}),Em=te({"node_modules/vnopts/lib/schemas/integer.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Yn(),t=Xa(),s=class extends t.NumberSchema{expected(){return"an integer"}validate(a,n){return n.normalizeValidateResult(super.validate(a,n),a)===!0&&r.isInt(a)}};e.IntegerSchema=s}}),Fm=te({"node_modules/vnopts/lib/schemas/string.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=class extends r.Schema{expected(){return"a string"}validate(s){return typeof s=="string"}};e.StringSchema=t}}),Am=te({"node_modules/vnopts/lib/schemas/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(gm(),e),r.__exportStar(ym(),e),r.__exportStar(hm(),e),r.__exportStar(vm(),e),r.__exportStar(Cm(),e),r.__exportStar(Em(),e),r.__exportStar(Xa(),e),r.__exportStar(Fm(),e)}}),Sm=te({"node_modules/vnopts/lib/defaults.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ga(),t=Ua(),s=Ja(),a=za();e.defaultDescriptor=r.apiDescriptor,e.defaultUnknownHandler=a.levenUnknownHandler,e.defaultInvalidHandler=s.commonInvalidHandler,e.defaultDeprecatedHandler=t.commonDeprecatedHandler}}),xm=te({"node_modules/vnopts/lib/normalize.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Sm(),t=Yn();e.normalize=(a,n,u)=>new s(n,u).normalize(a);var s=class{constructor(a,n){let{logger:u=console,descriptor:i=r.defaultDescriptor,unknown:l=r.defaultUnknownHandler,invalid:p=r.defaultInvalidHandler,deprecated:d=r.defaultDeprecatedHandler}=n||{};this._utils={descriptor:i,logger:u||{warn:()=>{}},schemas:t.recordFromArray(a,"name"),normalizeDefaultResult:t.normalizeDefaultResult,normalizeDeprecatedResult:t.normalizeDeprecatedResult,normalizeForwardResult:t.normalizeForwardResult,normalizeRedirectResult:t.normalizeRedirectResult,normalizeValidateResult:t.normalizeValidateResult},this._unknownHandler=l,this._invalidHandler=p,this._deprecatedHandler=d,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=t.createAutoChecklist()}normalize(a){let n={},u=[a],i=()=>{for(;u.length!==0;){let l=u.shift(),p=this._applyNormalization(l,n);u.push(...p)}};i();for(let l of Object.keys(this._utils.schemas)){let p=this._utils.schemas[l];if(!(l in n)){let d=t.normalizeDefaultResult(p.default(this._utils));"value"in d&&u.push({[l]:d.value})}}i();for(let l of Object.keys(this._utils.schemas)){let p=this._utils.schemas[l];l in n&&(n[l]=p.postprocess(n[l],this._utils))}return n}_applyNormalization(a,n){let u=[],[i,l]=t.partition(Object.keys(a),p=>p in this._utils.schemas);for(let p of i){let d=this._utils.schemas[p],y=d.preprocess(a[p],this._utils),g=t.normalizeValidateResult(d.validate(y,this._utils),y);if(g!==!0){let{value:w}=g,F=this._invalidHandler(p,w,this._utils);throw typeof F=="string"?new Error(F):F}let c=w=>{let{from:F,to:N}=w;u.push(typeof N=="string"?{[N]:F}:{[N.key]:N.value})},f=w=>{let{value:F,redirectTo:N}=w,x=t.normalizeDeprecatedResult(d.deprecated(F,this._utils),y,!0);if(x!==!1)if(x===!0)this._hasDeprecationWarned(p)||this._utils.logger.warn(this._deprecatedHandler(p,N,this._utils));else for(let{value:I}of x){let P={key:p,value:I};if(!this._hasDeprecationWarned(P)){let $=typeof N=="string"?{key:N,value:I}:N;this._utils.logger.warn(this._deprecatedHandler(P,$,this._utils))}}};t.normalizeForwardResult(d.forward(y,this._utils),y).forEach(c);let _=t.normalizeRedirectResult(d.redirect(y,this._utils),y);if(_.redirect.forEach(c),"remain"in _){let w=_.remain;n[p]=p in n?d.overlap(n[p],w,this._utils):w,f({value:w})}for(let{from:w,to:F}of _.redirect)f({value:w,redirectTo:F})}for(let p of l){let d=a[p],y=this._unknownHandler(p,d,this._utils);if(y)for(let g of Object.keys(y)){let c={[g]:y[g]};g in this._utils.schemas?u.push(c):Object.assign(n,c)}}return u}};e.Normalizer=s}}),bm=te({"node_modules/vnopts/lib/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(cm(),e),r.__exportStar(dm(),e),r.__exportStar(Am(),e),r.__exportStar(xm(),e),r.__exportStar(Ft(),e)}}),Tm=te({"src/main/options-normalizer.js"(e,r){"use strict";ne();var t=bm(),s=lt(),a={key:g=>g.length===1?`-${g}`:`--${g}`,value:g=>t.apiDescriptor.value(g),pair:g=>{let{key:c,value:f}=g;return f===!1?`--no-${c}`:f===!0?a.key(c):f===""?`${a.key(c)} without an argument`:`${a.key(c)}=${f}`}},n=g=>{let{colorsModule:c,levenshteinDistance:f}=g;return class extends t.ChoiceSchema{constructor(_){let{name:w,flags:F}=_;super({name:w,choices:F}),this._flags=[...F].sort()}preprocess(_,w){if(typeof _=="string"&&_.length>0&&!this._flags.includes(_)){let F=this._flags.find(N=>f(N,_)<3);if(F)return w.logger.warn([`Unknown flag ${c.yellow(w.descriptor.value(_))},`,`did you mean ${c.blue(w.descriptor.value(F))}?`].join(" ")),F}return _}expected(){return"a flag"}}},u;function i(g,c){let{logger:f=!1,isCLI:E=!1,passThrough:_=!1,colorsModule:w=null,levenshteinDistance:F=null}=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},N=_?Array.isArray(_)?(T,m)=>_.includes(T)?{[T]:m}:void 0:(T,m)=>({[T]:m}):(T,m,C)=>{let o=C.schemas,{_:h}=o,v=$n(o,cD);return t.levenUnknownHandler(T,m,Object.assign(Object.assign({},C),{},{schemas:v}))},x=E?a:t.apiDescriptor,I=l(c,{isCLI:E,colorsModule:w,levenshteinDistance:F}),P=new t.Normalizer(I,{logger:f,unknown:N,descriptor:x}),$=f!==!1;$&&u&&(P._hasDeprecationWarned=u);let D=P.normalize(g);return $&&(u=P._hasDeprecationWarned),E&&D["plugin-search"]===!1&&(D["plugin-search-dir"]=!1),D}function l(g,c){let{isCLI:f,colorsModule:E,levenshteinDistance:_}=c,w=[];f&&w.push(t.AnySchema.create({name:"_"}));for(let F of g)w.push(p(F,{isCLI:f,optionInfos:g,colorsModule:E,levenshteinDistance:_})),F.alias&&f&&w.push(t.AliasSchema.create({name:F.alias,sourceName:F.name}));return w}function p(g,c){let{isCLI:f,optionInfos:E,colorsModule:_,levenshteinDistance:w}=c,{name:F}=g;if(F==="plugin-search-dir"||F==="pluginSearchDirs")return t.AnySchema.create({name:F,preprocess(P){return P===!1||(P=Array.isArray(P)?P:[P]),P},validate(P){return P===!1?!0:P.every($=>typeof $=="string")},expected(){return"false or paths to plugin search dir"}});let N={name:F},x,I={};switch(g.type){case"int":x=t.IntegerSchema,f&&(N.preprocess=Number);break;case"string":x=t.StringSchema;break;case"choice":x=t.ChoiceSchema,N.choices=g.choices.map(P=>typeof P=="object"&&P.redirect?Object.assign(Object.assign({},P),{},{redirect:{to:{key:g.name,value:P.redirect}}}):P);break;case"boolean":x=t.BooleanSchema;break;case"flag":x=n({colorsModule:_,levenshteinDistance:w}),N.flags=E.flatMap(P=>[P.alias,P.description&&P.name,P.oppositeDescription&&`no-${P.name}`].filter(Boolean));break;case"path":x=t.StringSchema;break;default:throw new Error(`Unexpected type ${g.type}`)}if(g.exception?N.validate=(P,$,D)=>g.exception(P)||$.validate(P,D):N.validate=(P,$,D)=>P===void 0||$.validate(P,D),g.redirect&&(I.redirect=P=>P?{to:{key:g.redirect.option,value:g.redirect.value}}:void 0),g.deprecated&&(I.deprecated=!0),f&&!g.array){let P=N.preprocess||($=>$);N.preprocess=($,D,T)=>D.preprocess(P(Array.isArray($)?s($):$),T)}return g.array?t.ArraySchema.create(Object.assign(Object.assign(Object.assign({},f?{preprocess:P=>Array.isArray(P)?P:[P]}:{}),I),{},{valueSchema:x.create(N)})):x.create(Object.assign(Object.assign({},N),I))}function d(g,c,f){return i(g,c,f)}function y(g,c,f){return i(g,c,Object.assign({isCLI:!0},f))}r.exports={normalizeApiOptions:d,normalizeCliOptions:y}}}),ut=te({"src/language-js/loc.js"(e,r){"use strict";ne();var t=Jn();function s(l){var p,d;let y=l.range?l.range[0]:l.start,g=(p=(d=l.declaration)===null||d===void 0?void 0:d.decorators)!==null&&p!==void 0?p:l.decorators;return t(g)?Math.min(s(g[0]),y):y}function a(l){return l.range?l.range[1]:l.end}function n(l,p){let d=s(l);return Number.isInteger(d)&&d===s(p)}function u(l,p){let d=a(l);return Number.isInteger(d)&&d===a(p)}function i(l,p){return n(l,p)&&u(l,p)}r.exports={locStart:s,locEnd:a,hasSameLocStart:n,hasSameLoc:i}}}),Bm=te({"src/main/load-parser.js"(e,r){ne(),r.exports=()=>{}}}),Nm=te({"scripts/build/shims/babel-highlight.cjs"(e,r){"use strict";ne();var t=Pr(),s={shouldHighlight:()=>!1,getChalk:()=>t};r.exports=s}}),wm=te({"node_modules/@babel/code-frame/lib/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.codeFrameColumns=u,e.default=i;var r=Nm(),t=!1;function s(l){return{gutter:l.grey,marker:l.red.bold,message:l.red.bold}}var a=/\r\n|[\n\r\u2028\u2029]/;function n(l,p,d){let y=Object.assign({column:0,line:-1},l.start),g=Object.assign({},y,l.end),{linesAbove:c=2,linesBelow:f=3}=d||{},E=y.line,_=y.column,w=g.line,F=g.column,N=Math.max(E-(c+1),0),x=Math.min(p.length,w+f);E===-1&&(N=0),w===-1&&(x=p.length);let I=w-E,P={};if(I)for(let $=0;$<=I;$++){let D=$+E;if(!_)P[D]=!0;else if($===0){let T=p[D-1].length;P[D]=[_,T-_+1]}else if($===I)P[D]=[0,F];else{let T=p[D-$].length;P[D]=[0,T]}}else _===F?_?P[E]=[_,0]:P[E]=!0:P[E]=[_,F-_];return{start:N,end:x,markerLines:P}}function u(l,p){let d=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},y=(d.highlightCode||d.forceColor)&&(0,r.shouldHighlight)(d),g=(0,r.getChalk)(d),c=s(g),f=($,D)=>y?$(D):D,E=l.split(a),{start:_,end:w,markerLines:F}=n(p,E,d),N=p.start&&typeof p.start.column=="number",x=String(w).length,P=(y?(0,r.default)(l,d):l).split(a,w).slice(_,w).map(($,D)=>{let T=_+1+D,C=` ${` ${T}`.slice(-x)} |`,o=F[T],h=!F[T+1];if(o){let v="";if(Array.isArray(o)){let S=$.slice(0,Math.max(o[0]-1,0)).replace(/[^\t]/g," "),b=o[1]||1;v=[` + `,f(c.gutter,C.replace(/\d/g," "))," ",S,f(c.marker,"^").repeat(b)].join(""),h&&d.message&&(v+=" "+f(c.message,d.message))}return[f(c.marker,">"),f(c.gutter,C),$.length>0?` ${$}`:"",v].join("")}else return` ${f(c.gutter,C)}${$.length>0?` ${$}`:""}`}).join(` +`);return d.message&&!N&&(P=`${" ".repeat(x+1)}${d.message} +${P}`),y?g.reset(P):P}function i(l,p,d){let y=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};if(!t){t=!0;let c="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(Nt.emitWarning)Nt.emitWarning(c,"DeprecationWarning");else{let f=new Error(c);f.name="DeprecationWarning",console.warn(new Error(c))}}return d=Math.max(d,0),u(l,{start:{column:d,line:p}},y)}}}),Qn=te({"src/main/parser.js"(e,r){"use strict";ne();var{ConfigError:t}=Kt(),s=ut(),a=Bm(),{locStart:n,locEnd:u}=s,i=Object.getOwnPropertyNames,l=Object.getOwnPropertyDescriptor;function p(g){let c={};for(let f of g.plugins)if(f.parsers)for(let E of i(f.parsers))Object.defineProperty(c,E,l(f.parsers,E));return c}function d(g){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p(g);if(typeof g.parser=="function")return{parse:g.parser,astFormat:"estree",locStart:n,locEnd:u};if(typeof g.parser=="string"){if(Object.prototype.hasOwnProperty.call(c,g.parser))return c[g.parser];throw new t(`Couldn't resolve parser "${g.parser}". Parsers must be explicitly added to the standalone bundle.`)}}function y(g,c){let f=p(c),E=Object.defineProperties({},Object.fromEntries(Object.keys(f).map(w=>[w,{enumerable:!0,get(){return f[w].parse}}]))),_=d(c,f);try{return _.preprocess&&(g=_.preprocess(g,c)),{text:g,ast:_.parse(g,E,c)}}catch(w){let{loc:F}=w;if(F){let{codeFrameColumns:N}=wm();throw w.codeFrame=N(g,F,{highlightCode:!0}),w.message+=` +`+w.codeFrame,w}throw w}}r.exports={parse:y,resolveParser:d}}}),Ka=te({"src/main/options.js"(e,r){"use strict";ne();var t=HD(),{UndefinedParserError:s}=Kt(),{getSupportInfo:a}=Un(),n=Tm(),{resolveParser:u}=Qn(),i={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};function l(y){let g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},c=Object.assign({},y),f=a({plugins:y.plugins,showUnreleased:!0,showDeprecated:!0}).options,E=Object.assign(Object.assign({},i),Object.fromEntries(f.filter(x=>x.default!==void 0).map(x=>[x.name,x.default])));if(!c.parser){if(!c.filepath)(g.logger||console).warn("No parser and no filepath given, using 'babel' the parser now but this will throw an error in the future. Please specify a parser or a filepath so one can be inferred."),c.parser="babel";else if(c.parser=d(c.filepath,c.plugins),!c.parser)throw new s(`No parser could be inferred for file: ${c.filepath}`)}let _=u(n.normalizeApiOptions(c,[f.find(x=>x.name==="parser")],{passThrough:!0,logger:!1}));c.astFormat=_.astFormat,c.locEnd=_.locEnd,c.locStart=_.locStart;let w=p(c);c.printer=w.printers[c.astFormat];let F=Object.fromEntries(f.filter(x=>x.pluginDefaults&&x.pluginDefaults[w.name]!==void 0).map(x=>[x.name,x.pluginDefaults[w.name]])),N=Object.assign(Object.assign({},E),F);for(let[x,I]of Object.entries(N))(c[x]===null||c[x]===void 0)&&(c[x]=I);return c.parser==="json"&&(c.trailingComma="none"),n.normalizeApiOptions(c,f,Object.assign({passThrough:Object.keys(i)},g))}function p(y){let{astFormat:g}=y;if(!g)throw new Error("getPlugin() requires astFormat to be set");let c=y.plugins.find(f=>f.printers&&f.printers[g]);if(!c)throw new Error(`Couldn't find plugin for AST format "${g}"`);return c}function d(y,g){let c=t.basename(y).toLowerCase(),E=a({plugins:g}).languages.filter(_=>_.since!==null).find(_=>_.extensions&&_.extensions.some(w=>c.endsWith(w))||_.filenames&&_.filenames.some(w=>w.toLowerCase()===c));return E&&E.parsers[0]}r.exports={normalize:l,hiddenDefaults:i,inferParser:d}}}),_m=te({"src/main/massage-ast.js"(e,r){"use strict";ne();function t(s,a,n){if(Array.isArray(s))return s.map(p=>t(p,a,n)).filter(Boolean);if(!s||typeof s!="object")return s;let u=a.printer.massageAstNode,i;u&&u.ignoredProperties?i=u.ignoredProperties:i=new Set;let l={};for(let[p,d]of Object.entries(s))!i.has(p)&&typeof d!="function"&&(l[p]=t(d,a,s));if(u){let p=u(s,l,n);if(p===null)return;if(p)return p}return l}r.exports=t}}),Yt=te({"scripts/build/shims/assert.cjs"(e,r){"use strict";ne();var t=()=>{};t.ok=t,t.strictEqual=t,r.exports=t}}),et=te({"src/main/comments.js"(e,r){"use strict";ne();var t=Yt(),{builders:{line:s,hardline:a,breakParent:n,indent:u,lineSuffix:i,join:l,cursor:p}}=qe(),{hasNewline:d,skipNewline:y,skipSpaces:g,isPreviousLineEmpty:c,addLeadingComment:f,addDanglingComment:E,addTrailingComment:_}=Ue(),w=new WeakMap;function F(k,M,R){if(!k)return;let{printer:q,locStart:J,locEnd:L}=M;if(R){if(q.canAttachComment&&q.canAttachComment(k)){let V;for(V=R.length-1;V>=0&&!(J(R[V])<=J(k)&&L(R[V])<=L(k));--V);R.splice(V+1,0,k);return}}else if(w.has(k))return w.get(k);let Q=q.getCommentChildNodes&&q.getCommentChildNodes(k,M)||typeof k=="object"&&Object.entries(k).filter(V=>{let[j]=V;return j!=="enclosingNode"&&j!=="precedingNode"&&j!=="followingNode"&&j!=="tokens"&&j!=="comments"&&j!=="parent"}).map(V=>{let[,j]=V;return j});if(Q){R||(R=[],w.set(k,R));for(let V of Q)F(V,M,R);return R}}function N(k,M,R,q){let{locStart:J,locEnd:L}=R,Q=J(M),V=L(M),j=F(k,R),Y,ie,ee=0,ce=j.length;for(;ee>1,K=j[W],de=J(K),ue=L(K);if(de<=Q&&V<=ue)return N(K,M,R,K);if(ue<=Q){Y=K,ee=W+1;continue}if(V<=de){ie=K,ce=W;continue}throw new Error("Comment location overlaps with node location")}if(q&&q.type==="TemplateLiteral"){let{quasis:W}=q,K=C(W,M,R);Y&&C(W,Y,R)!==K&&(Y=null),ie&&C(W,ie,R)!==K&&(ie=null)}return{enclosingNode:q,precedingNode:Y,followingNode:ie}}var x=()=>!1;function I(k,M,R,q){if(!Array.isArray(k))return;let J=[],{locStart:L,locEnd:Q,printer:{handleComments:V={}}}=q,{avoidAstMutation:j,ownLine:Y=x,endOfLine:ie=x,remaining:ee=x}=V,ce=k.map((W,K)=>Object.assign(Object.assign({},N(M,W,q)),{},{comment:W,text:R,options:q,ast:M,isLastComment:k.length-1===K}));for(let[W,K]of ce.entries()){let{comment:de,precedingNode:ue,enclosingNode:Fe,followingNode:z,text:U,options:Z,ast:se,isLastComment:fe}=K;if(Z.parser==="json"||Z.parser==="json5"||Z.parser==="__js_expression"||Z.parser==="__vue_expression"||Z.parser==="__vue_ts_expression"){if(L(de)-L(se)<=0){f(se,de);continue}if(Q(de)-Q(se)>=0){_(se,de);continue}}let ge;if(j?ge=[K]:(de.enclosingNode=Fe,de.precedingNode=ue,de.followingNode=z,ge=[de,U,Z,se,fe]),$(U,Z,ce,W))de.placement="ownLine",Y(...ge)||(z?f(z,de):ue?_(ue,de):E(Fe||se,de));else if(D(U,Z,ce,W))de.placement="endOfLine",ie(...ge)||(ue?_(ue,de):z?f(z,de):E(Fe||se,de));else if(de.placement="remaining",!ee(...ge))if(ue&&z){let he=J.length;he>0&&J[he-1].followingNode!==z&&T(J,U,Z),J.push(K)}else ue?_(ue,de):z?f(z,de):E(Fe||se,de)}if(T(J,R,q),!j)for(let W of k)delete W.precedingNode,delete W.enclosingNode,delete W.followingNode}var P=k=>!/[\S\n\u2028\u2029]/.test(k);function $(k,M,R,q){let{comment:J,precedingNode:L}=R[q],{locStart:Q,locEnd:V}=M,j=Q(J);if(L)for(let Y=q-1;Y>=0;Y--){let{comment:ie,precedingNode:ee}=R[Y];if(ee!==L||!P(k.slice(V(ie),j)))break;j=Q(ie)}return d(k,j,{backwards:!0})}function D(k,M,R,q){let{comment:J,followingNode:L}=R[q],{locStart:Q,locEnd:V}=M,j=V(J);if(L)for(let Y=q+1;Y0;--Y){let{comment:ie,precedingNode:ee,followingNode:ce}=k[Y-1];t.strictEqual(ee,J),t.strictEqual(ce,L);let W=M.slice(R.locEnd(ie),j);if(V.test(W))j=R.locStart(ie);else break}for(let[ie,{comment:ee}]of k.entries())ie1&&ie.comments.sort((ee,ce)=>R.locStart(ee)-R.locStart(ce));k.length=0}function m(k,M){let R=k.getValue();return R.printed=!0,M.printer.printComment(k,M)}function C(k,M,R){let q=R.locStart(M)-1;for(let J=1;J{let Q=k.getValue();!Q.leading&&!Q.trailing&&(!q||q(Q))&&J.push(m(k,M))},"comments"),J.length===0)?"":R?l(a,J):u([a,l(a,J)])}function S(k,M,R){let q=k.getValue();if(!q)return{};let J=q.comments||[];R&&(J=J.filter(j=>!R.has(j)));let L=q===M.cursorNode;if(J.length===0){let j=L?p:"";return{leading:j,trailing:j}}let Q=[],V=[];return k.each(()=>{let j=k.getValue();if(R&&R.has(j))return;let{leading:Y,trailing:ie}=j;Y?Q.push(o(k,M)):ie&&V.push(h(k,M))},"comments"),L&&(Q.unshift(p),V.push(p)),{leading:Q,trailing:V}}function b(k,M,R,q){let{leading:J,trailing:L}=S(k,R,q);return!J&&!L?M:[J,M,L]}function B(k){if(k)for(let M of k){if(!M.printed)throw new Error('Comment "'+M.value.trim()+'" was not printed. Please report this error!');delete M.printed}}r.exports={attach:I,printComments:b,printCommentsSeparately:S,printDanglingComments:v,getSortedChildNodes:F,ensureAllCommentsPrinted:B}}}),Pm=te({"src/common/ast-path.js"(e,r){"use strict";ne();var t=lt();function s(u,i){let l=a(u.stack,i);return l===-1?null:u.stack[l]}function a(u,i){for(let l=u.length-1;l>=0;l-=2){let p=u[l];if(p&&!Array.isArray(p)&&--i<0)return l}return-1}var n=class{constructor(u){this.stack=[u]}getName(){let{stack:u}=this,{length:i}=u;return i>1?u[i-2]:null}getValue(){return t(this.stack)}getNode(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;return s(this,u)}getParentNode(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;return s(this,u+1)}call(u){let{stack:i}=this,{length:l}=i,p=t(i);for(var d=arguments.length,y=new Array(d>1?d-1:0),g=1;g1&&arguments[1]!==void 0?arguments[1]:0,l=a(this.stack,i+1),p=this.stack.splice(l+1),d=u(this);return this.stack.push(...p),d}each(u){let{stack:i}=this,{length:l}=i,p=t(i);for(var d=arguments.length,y=new Array(d>1?d-1:0),g=1;g1?l-1:0),d=1;d{i[g]=u(y,g,c)},...p),i}try(u){let{stack:i}=this,l=[...i];try{return u()}finally{i.length=0,i.push(...l)}}match(){let u=this.stack.length-1,i=null,l=this.stack[u--];for(var p=arguments.length,d=new Array(p),y=0;yu(y,g,p,d,c),p)}function u(i,l,p,d){let{stripTrailingHardline:y=!1}=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{},g=s(Object.assign(Object.assign(Object.assign({},p),l),{},{parentParser:p.parser,originalText:i}),{passThrough:!0}),c=Qn().parse(i,g),{ast:f}=c;i=c.text;let E=f.comments;delete f.comments,a.attach(E,f,i,g),g[Symbol.for("comments")]=E||[],g[Symbol.for("tokens")]=f.tokens||[];let _=d(f,g);return a.ensureAllCommentsPrinted(E),y?typeof _=="string"?_.replace(/(?:\r?\n)*$/,""):t(_):_}r.exports={printSubtree:n}}}),km=te({"src/main/ast-to-doc.js"(e,r){"use strict";ne();var t=Pm(),{builders:{hardline:s,addAlignmentToDoc:a},utils:{propagateBreaks:n}}=qe(),{printComments:u}=et(),i=Im();function l(y,g){let c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,{printer:f}=g;f.preprocess&&(y=f.preprocess(y,g));let E=new Map,_=new t(y),w=F();return c>0&&(w=a([s,w],c,g.tabWidth)),n(w),w;function F(x,I){return x===void 0||x===_?N(I):Array.isArray(x)?_.call(()=>N(I),...x):_.call(()=>N(I),x)}function N(x){let I=_.getValue(),P=I&&typeof I=="object"&&x===void 0;if(P&&E.has(I))return E.get(I);let $=d(_,g,F,x);return P&&E.set(I,$),$}}function p(y,g){let{originalText:c,[Symbol.for("comments")]:f,locStart:E,locEnd:_}=g,w=E(y),F=_(y),N=new Set;for(let x of f)E(x)>=w&&_(x)<=F&&(x.printed=!0,N.add(x));return{doc:c.slice(w,F),printedComments:N}}function d(y,g,c,f){let E=y.getValue(),{printer:_}=g,w,F;if(_.hasPrettierIgnore&&_.hasPrettierIgnore(y))({doc:w,printedComments:F}=p(E,g));else{if(E)try{w=i.printSubtree(y,c,g,l)}catch(N){if(globalThis.PRETTIER_DEBUG)throw N}w||(w=_.print(y,g,c,f))}return(!_.willPrintOwnComments||!_.willPrintOwnComments(y,g))&&(w=u(y,w,g,F)),w}r.exports=l}}),Lm=te({"src/main/range-util.js"(e,r){"use strict";ne();var t=Yt(),s=et(),a=f=>{let{parser:E}=f;return E==="json"||E==="json5"||E==="json-stringify"};function n(f,E){let _=[f.node,...f.parentNodes],w=new Set([E.node,...E.parentNodes]);return _.find(F=>d.has(F.type)&&w.has(F))}function u(f){let E=f.length-1;for(;;){let _=f[E];if(_&&(_.type==="Program"||_.type==="File"))E--;else break}return f.slice(0,E+1)}function i(f,E,_){let{locStart:w,locEnd:F}=_,N=f.node,x=E.node;if(N===x)return{startNode:N,endNode:x};let I=w(f.node);for(let $ of u(E.parentNodes))if(w($)>=I)x=$;else break;let P=F(E.node);for(let $ of u(f.parentNodes)){if(F($)<=P)N=$;else break;if(N===x)break}return{startNode:N,endNode:x}}function l(f,E,_,w){let F=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],N=arguments.length>5?arguments[5]:void 0,{locStart:x,locEnd:I}=_,P=x(f),$=I(f);if(!(E>$||Ew);let I=f.slice(w,F).search(/\S/),P=I===-1;if(!P)for(w+=I;F>w&&!/\S/.test(f[F-1]);--F);let $=l(_,w,E,(C,o)=>g(E,C,o),[],"rangeStart"),D=P?$:l(_,F,E,C=>g(E,C),[],"rangeEnd");if(!$||!D)return{rangeStart:0,rangeEnd:0};let T,m;if(a(E)){let C=n($,D);T=C,m=C}else({startNode:T,endNode:m}=i($,D,E));return{rangeStart:Math.min(N(T),N(m)),rangeEnd:Math.max(x(T),x(m))}}r.exports={calculateRange:c,findNodeAtOffset:l}}}),Om=te({"src/main/core.js"(e,r){"use strict";ne();var{diffArrays:t}=vD(),{printer:{printDocToString:s},debug:{printDocToDebug:a}}=qe(),{getAlignmentSize:n}=Ue(),{guessEndOfLine:u,convertEndOfLineToChars:i,countEndOfLineChars:l,normalizeEndOfLine:p}=Hn(),d=Ka().normalize,y=_m(),g=et(),c=Qn(),f=km(),E=Lm(),_="\uFEFF",w=Symbol("cursor");function F(m,C,o){let h=C.comments;return h&&(delete C.comments,g.attach(h,C,m,o)),o[Symbol.for("comments")]=h||[],o[Symbol.for("tokens")]=C.tokens||[],o.originalText=m,h}function N(m,C){let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;if(!m||m.trim().length===0)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:h,text:v}=c.parse(m,C);if(C.cursorOffset>=0){let k=E.findNodeAtOffset(h,C.cursorOffset,C);k&&k.node&&(C.cursorNode=k.node)}let S=F(v,h,C),b=f(h,C,o),B=s(b,C);if(g.ensureAllCommentsPrinted(S),o>0){let k=B.formatted.trim();B.cursorNodeStart!==void 0&&(B.cursorNodeStart-=B.formatted.indexOf(k)),B.formatted=k+i(C.endOfLine)}if(C.cursorOffset>=0){let k,M,R,q,J;if(C.cursorNode&&B.cursorNodeText?(k=C.locStart(C.cursorNode),M=v.slice(k,C.locEnd(C.cursorNode)),R=C.cursorOffset-k,q=B.cursorNodeStart,J=B.cursorNodeText):(k=0,M=v,R=C.cursorOffset,q=0,J=B.formatted),M===J)return{formatted:B.formatted,cursorOffset:q+R,comments:S};let L=[...M];L.splice(R,0,w);let Q=[...J],V=t(L,Q),j=q;for(let Y of V)if(Y.removed){if(Y.value.includes(w))break}else j+=Y.count;return{formatted:B.formatted,cursorOffset:j,comments:S}}return{formatted:B.formatted,cursorOffset:-1,comments:S}}function x(m,C){let{ast:o,text:h}=c.parse(m,C),{rangeStart:v,rangeEnd:S}=E.calculateRange(h,C,o),b=h.slice(v,S),B=Math.min(v,h.lastIndexOf(` +`,v)+1),k=h.slice(B,v).match(/^\s*/)[0],M=n(k,C.tabWidth),R=N(b,Object.assign(Object.assign({},C),{},{rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:C.cursorOffset>v&&C.cursorOffset<=S?C.cursorOffset-v:-1,endOfLine:"lf"}),M),q=R.formatted.trimEnd(),{cursorOffset:J}=C;J>S?J+=q.length-b.length:R.cursorOffset>=0&&(J=R.cursorOffset+v);let L=h.slice(0,v)+q+h.slice(S);if(C.endOfLine!=="lf"){let Q=i(C.endOfLine);J>=0&&Q===`\r +`&&(J+=l(L.slice(0,J),` +`)),L=L.replace(/\n/g,Q)}return{formatted:L,cursorOffset:J,comments:R.comments}}function I(m,C,o){return typeof C!="number"||Number.isNaN(C)||C<0||C>m.length?o:C}function P(m,C){let{cursorOffset:o,rangeStart:h,rangeEnd:v}=C;return o=I(m,o,-1),h=I(m,h,0),v=I(m,v,m.length),Object.assign(Object.assign({},C),{},{cursorOffset:o,rangeStart:h,rangeEnd:v})}function $(m,C){let{cursorOffset:o,rangeStart:h,rangeEnd:v,endOfLine:S}=P(m,C),b=m.charAt(0)===_;if(b&&(m=m.slice(1),o--,h--,v--),S==="auto"&&(S=u(m)),m.includes("\r")){let B=k=>l(m.slice(0,Math.max(k,0)),`\r +`);o-=B(o),h-=B(h),v-=B(v),m=p(m)}return{hasBOM:b,text:m,options:P(m,Object.assign(Object.assign({},C),{},{cursorOffset:o,rangeStart:h,rangeEnd:v,endOfLine:S}))}}function D(m,C){let o=c.resolveParser(C);return!o.hasPragma||o.hasPragma(m)}function T(m,C){let{hasBOM:o,text:h,options:v}=$(m,d(C));if(v.rangeStart>=v.rangeEnd&&h!==""||v.requirePragma&&!D(h,v))return{formatted:m,cursorOffset:C.cursorOffset,comments:[]};let S;return v.rangeStart>0||v.rangeEnd=0&&S.cursorOffset++),S}r.exports={formatWithCursor:T,parse(m,C,o){let{text:h,options:v}=$(m,d(C)),S=c.parse(h,v);return o&&(S.ast=y(S.ast,v)),S},formatAST(m,C){C=d(C);let o=f(m,C);return s(o,C)},formatDoc(m,C){return T(a(m),Object.assign(Object.assign({},C),{},{parser:"__js_expression"})).formatted},printToDoc(m,C){C=d(C);let{ast:o,text:h}=c.parse(m,C);return F(h,o,C),f(o,C)},printDocToString(m,C){return s(m,d(C))}}}}),jm=te({"src/common/util-shared.js"(e,r){"use strict";ne();var{getMaxContinuousCount:t,getStringWidth:s,getAlignmentSize:a,getIndentSize:n,skip:u,skipWhitespace:i,skipSpaces:l,skipNewline:p,skipToLineEnd:d,skipEverythingButNewLine:y,skipInlineComment:g,skipTrailingComment:c,hasNewline:f,hasNewlineInRange:E,hasSpaces:_,isNextLineEmpty:w,isNextLineEmptyAfterIndex:F,isPreviousLineEmpty:N,getNextNonSpaceNonCommentCharacterIndex:x,makeString:I,addLeadingComment:P,addDanglingComment:$,addTrailingComment:D}=Ue();r.exports={getMaxContinuousCount:t,getStringWidth:s,getAlignmentSize:a,getIndentSize:n,skip:u,skipWhitespace:i,skipSpaces:l,skipNewline:p,skipToLineEnd:d,skipEverythingButNewLine:y,skipInlineComment:g,skipTrailingComment:c,hasNewline:f,hasNewlineInRange:E,hasSpaces:_,isNextLineEmpty:w,isNextLineEmptyAfterIndex:F,isPreviousLineEmpty:N,getNextNonSpaceNonCommentCharacterIndex:x,makeString:I,addLeadingComment:P,addDanglingComment:$,addTrailingComment:D}}}),wt=te({"src/utils/create-language.js"(e,r){"use strict";ne(),r.exports=function(t,s){let{languageId:a}=t,n=$n(t,pD);return Object.assign(Object.assign({linguistLanguageId:a},n),s(t))}}}),qm=te({"node_modules/esutils/lib/ast.js"(e,r){ne(),function(){"use strict";function t(l){if(l==null)return!1;switch(l.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"Literal":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":return!0}return!1}function s(l){if(l==null)return!1;switch(l.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0}return!1}function a(l){if(l==null)return!1;switch(l.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":return!0}return!1}function n(l){return a(l)||l!=null&&l.type==="FunctionDeclaration"}function u(l){switch(l.type){case"IfStatement":return l.alternate!=null?l.alternate:l.consequent;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return l.body}return null}function i(l){var p;if(l.type!=="IfStatement"||l.alternate==null)return!1;p=l.consequent;do{if(p.type==="IfStatement"&&p.alternate==null)return!0;p=u(p)}while(p);return!1}r.exports={isExpression:t,isStatement:a,isIterationStatement:s,isSourceElement:n,isProblematicIfStatement:i,trailingStatement:u}}()}}),Ya=te({"node_modules/esutils/lib/code.js"(e,r){ne(),function(){"use strict";var t,s,a,n,u,i;s={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/},t={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/};function l(F){return 48<=F&&F<=57}function p(F){return 48<=F&&F<=57||97<=F&&F<=102||65<=F&&F<=70}function d(F){return F>=48&&F<=55}a=[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];function y(F){return F===32||F===9||F===11||F===12||F===160||F>=5760&&a.indexOf(F)>=0}function g(F){return F===10||F===13||F===8232||F===8233}function c(F){if(F<=65535)return String.fromCharCode(F);var N=String.fromCharCode(Math.floor((F-65536)/1024)+55296),x=String.fromCharCode((F-65536)%1024+56320);return N+x}for(n=new Array(128),i=0;i<128;++i)n[i]=i>=97&&i<=122||i>=65&&i<=90||i===36||i===95;for(u=new Array(128),i=0;i<128;++i)u[i]=i>=97&&i<=122||i>=65&&i<=90||i>=48&&i<=57||i===36||i===95;function f(F){return F<128?n[F]:s.NonAsciiIdentifierStart.test(c(F))}function E(F){return F<128?u[F]:s.NonAsciiIdentifierPart.test(c(F))}function _(F){return F<128?n[F]:t.NonAsciiIdentifierStart.test(c(F))}function w(F){return F<128?u[F]:t.NonAsciiIdentifierPart.test(c(F))}r.exports={isDecimalDigit:l,isHexDigit:p,isOctalDigit:d,isWhiteSpace:y,isLineTerminator:g,isIdentifierStartES5:f,isIdentifierPartES5:E,isIdentifierStartES6:_,isIdentifierPartES6:w}}()}}),Mm=te({"node_modules/esutils/lib/keyword.js"(e,r){ne(),function(){"use strict";var t=Ya();function s(f){switch(f){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"let":return!0;default:return!1}}function a(f,E){return!E&&f==="yield"?!1:n(f,E)}function n(f,E){if(E&&s(f))return!0;switch(f.length){case 2:return f==="if"||f==="in"||f==="do";case 3:return f==="var"||f==="for"||f==="new"||f==="try";case 4:return f==="this"||f==="else"||f==="case"||f==="void"||f==="with"||f==="enum";case 5:return f==="while"||f==="break"||f==="catch"||f==="throw"||f==="const"||f==="yield"||f==="class"||f==="super";case 6:return f==="return"||f==="typeof"||f==="delete"||f==="switch"||f==="export"||f==="import";case 7:return f==="default"||f==="finally"||f==="extends";case 8:return f==="function"||f==="continue"||f==="debugger";case 10:return f==="instanceof";default:return!1}}function u(f,E){return f==="null"||f==="true"||f==="false"||a(f,E)}function i(f,E){return f==="null"||f==="true"||f==="false"||n(f,E)}function l(f){return f==="eval"||f==="arguments"}function p(f){var E,_,w;if(f.length===0||(w=f.charCodeAt(0),!t.isIdentifierStartES5(w)))return!1;for(E=1,_=f.length;E<_;++E)if(w=f.charCodeAt(E),!t.isIdentifierPartES5(w))return!1;return!0}function d(f,E){return(f-55296)*1024+(E-56320)+65536}function y(f){var E,_,w,F,N;if(f.length===0)return!1;for(N=t.isIdentifierStartES6,E=0,_=f.length;E<_;++E){if(w=f.charCodeAt(E),55296<=w&&w<=56319){if(++E,E>=_||(F=f.charCodeAt(E),!(56320<=F&&F<=57343)))return!1;w=d(w,F)}if(!N(w))return!1;N=t.isIdentifierPartES6}return!0}function g(f,E){return p(f)&&!u(f,E)}function c(f,E){return y(f)&&!i(f,E)}r.exports={isKeywordES5:a,isKeywordES6:n,isReservedWordES5:u,isReservedWordES6:i,isRestrictedWord:l,isIdentifierNameES5:p,isIdentifierNameES6:y,isIdentifierES5:g,isIdentifierES6:c}}()}}),Rm=te({"node_modules/esutils/lib/utils.js"(e){ne(),function(){"use strict";e.ast=qm(),e.code=Ya(),e.keyword=Mm()}()}}),_t=te({"src/language-js/utils/is-block-comment.js"(e,r){"use strict";ne();var t=new Set(["Block","CommentBlock","MultiLine"]),s=a=>t.has(a==null?void 0:a.type);r.exports=s}}),$m=te({"src/language-js/utils/is-node-matches.js"(e,r){"use strict";ne();function t(a,n){let u=n.split(".");for(let i=u.length-1;i>=0;i--){let l=u[i];if(i===0)return a.type==="Identifier"&&a.name===l;if(a.type!=="MemberExpression"||a.optional||a.computed||a.property.type!=="Identifier"||a.property.name!==l)return!1;a=a.object}}function s(a,n){return n.some(u=>t(a,u))}r.exports=s}}),Ke=te({"src/language-js/utils/index.js"(e,r){"use strict";ne();var t=Rm().keyword.isIdentifierNameES5,{getLast:s,hasNewline:a,skipWhitespace:n,isNonEmptyArray:u,isNextLineEmptyAfterIndex:i,getStringWidth:l}=Ue(),{locStart:p,locEnd:d,hasSameLocStart:y}=ut(),g=_t(),c=$m(),f="(?:(?=.)\\s)",E=new RegExp(`^${f}*:`),_=new RegExp(`^${f}*::`);function w(O){var me,_e;return((me=O.extra)===null||me===void 0?void 0:me.parenthesized)&&g((_e=O.trailingComments)===null||_e===void 0?void 0:_e[0])&&E.test(O.trailingComments[0].value)}function F(O){let me=O==null?void 0:O[0];return g(me)&&_.test(me.value)}function N(O,me){if(!O||typeof O!="object")return!1;if(Array.isArray(O))return O.some(He=>N(He,me));let _e=me(O);return typeof _e=="boolean"?_e:Object.values(O).some(He=>N(He,me))}function x(O){return O.type==="AssignmentExpression"||O.type==="BinaryExpression"||O.type==="LogicalExpression"||O.type==="NGPipeExpression"||O.type==="ConditionalExpression"||de(O)||ue(O)||O.type==="SequenceExpression"||O.type==="TaggedTemplateExpression"||O.type==="BindExpression"||O.type==="UpdateExpression"&&!O.prefix||st(O)||O.type==="TSNonNullExpression"}function I(O){var me,_e,He,Ge,it,Qe;return O.expressions?O.expressions[0]:(me=(_e=(He=(Ge=(it=(Qe=O.left)!==null&&Qe!==void 0?Qe:O.test)!==null&&it!==void 0?it:O.callee)!==null&&Ge!==void 0?Ge:O.object)!==null&&He!==void 0?He:O.tag)!==null&&_e!==void 0?_e:O.argument)!==null&&me!==void 0?me:O.expression}function P(O,me){if(me.expressions)return["expressions",0];if(me.left)return["left"];if(me.test)return["test"];if(me.object)return["object"];if(me.callee)return["callee"];if(me.tag)return["tag"];if(me.argument)return["argument"];if(me.expression)return["expression"];throw new Error("Unexpected node has no left side.")}function $(O){return O=new Set(O),me=>O.has(me==null?void 0:me.type)}var D=$(["Line","CommentLine","SingleLine","HashbangComment","HTMLOpen","HTMLClose"]),T=$(["ExportDefaultDeclaration","ExportDefaultSpecifier","DeclareExportDeclaration","ExportNamedDeclaration","ExportAllDeclaration"]);function m(O){let me=O.getParentNode();return O.getName()==="declaration"&&T(me)?me:null}var C=$(["BooleanLiteral","DirectiveLiteral","Literal","NullLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","RegExpLiteral","StringLiteral","TemplateLiteral","TSTypeLiteral","JSXText"]);function o(O){return O.type==="NumericLiteral"||O.type==="Literal"&&typeof O.value=="number"}function h(O){return O.type==="UnaryExpression"&&(O.operator==="+"||O.operator==="-")&&o(O.argument)}function v(O){return O.type==="StringLiteral"||O.type==="Literal"&&typeof O.value=="string"}var S=$(["ObjectTypeAnnotation","TSTypeLiteral","TSMappedType"]),b=$(["FunctionExpression","ArrowFunctionExpression"]);function B(O){return O.type==="FunctionExpression"||O.type==="ArrowFunctionExpression"&&O.body.type==="BlockStatement"}function k(O){return de(O)&&O.callee.type==="Identifier"&&["async","inject","fakeAsync","waitForAsync"].includes(O.callee.name)}var M=$(["JSXElement","JSXFragment"]);function R(O,me){if(O.parentParser!=="markdown"&&O.parentParser!=="mdx")return!1;let _e=me.getNode();if(!_e.expression||!M(_e.expression))return!1;let He=me.getParentNode();return He.type==="Program"&&He.body.length===1}function q(O){return O.kind==="get"||O.kind==="set"}function J(O){return q(O)||y(O,O.value)}function L(O){return(O.type==="ObjectTypeProperty"||O.type==="ObjectTypeInternalSlot")&&O.value.type==="FunctionTypeAnnotation"&&!O.static&&!J(O)}function Q(O){return(O.type==="TypeAnnotation"||O.type==="TSTypeAnnotation")&&O.typeAnnotation.type==="FunctionTypeAnnotation"&&!O.static&&!y(O,O.typeAnnotation)}var V=$(["BinaryExpression","LogicalExpression","NGPipeExpression"]);function j(O){return ue(O)||O.type==="BindExpression"&&Boolean(O.object)}var Y=new Set(["AnyTypeAnnotation","TSAnyKeyword","NullLiteralTypeAnnotation","TSNullKeyword","ThisTypeAnnotation","TSThisType","NumberTypeAnnotation","TSNumberKeyword","VoidTypeAnnotation","TSVoidKeyword","BooleanTypeAnnotation","TSBooleanKeyword","BigIntTypeAnnotation","TSBigIntKeyword","SymbolTypeAnnotation","TSSymbolKeyword","StringTypeAnnotation","TSStringKeyword","BooleanLiteralTypeAnnotation","StringLiteralTypeAnnotation","BigIntLiteralTypeAnnotation","NumberLiteralTypeAnnotation","TSLiteralType","TSTemplateLiteralType","EmptyTypeAnnotation","MixedTypeAnnotation","TSNeverKeyword","TSObjectKeyword","TSUndefinedKeyword","TSUnknownKeyword"]);function ie(O){return O?!!((O.type==="GenericTypeAnnotation"||O.type==="TSTypeReference")&&!O.typeParameters||Y.has(O.type)):!1}function ee(O){let me=/^(?:before|after)(?:Each|All)$/;return O.callee.type==="Identifier"&&me.test(O.callee.name)&&O.arguments.length===1}var ce=["it","it.only","it.skip","describe","describe.only","describe.skip","test","test.only","test.skip","test.step","test.describe","test.describe.only","test.describe.parallel","test.describe.parallel.only","test.describe.serial","test.describe.serial.only","skip","xit","xdescribe","xtest","fit","fdescribe","ftest"];function W(O){return c(O,ce)}function K(O,me){if(O.type!=="CallExpression")return!1;if(O.arguments.length===1){if(k(O)&&me&&K(me))return b(O.arguments[0]);if(ee(O))return k(O.arguments[0])}else if((O.arguments.length===2||O.arguments.length===3)&&(O.arguments[0].type==="TemplateLiteral"||v(O.arguments[0]))&&W(O.callee))return O.arguments[2]&&!o(O.arguments[2])?!1:(O.arguments.length===2?b(O.arguments[1]):B(O.arguments[1])&&ve(O.arguments[1]).length<=1)||k(O.arguments[1]);return!1}var de=$(["CallExpression","OptionalCallExpression"]),ue=$(["MemberExpression","OptionalMemberExpression"]);function Fe(O){let me="expressions";O.type==="TSTemplateLiteralType"&&(me="types");let _e=O[me];return _e.length===0?!1:_e.every(He=>{if(Me(He))return!1;if(He.type==="Identifier"||He.type==="ThisExpression")return!0;if(ue(He)){let Ge=He;for(;ue(Ge);)if(Ge.property.type!=="Identifier"&&Ge.property.type!=="Literal"&&Ge.property.type!=="StringLiteral"&&Ge.property.type!=="NumericLiteral"||(Ge=Ge.object,Me(Ge)))return!1;return Ge.type==="Identifier"||Ge.type==="ThisExpression"}return!1})}function z(O,me){return O==="+"||O==="-"?O+me:me}function U(O,me){let _e=p(me),He=n(O,d(me));return He!==!1&&O.slice(_e,_e+2)==="/*"&&O.slice(He,He+2)==="*/"}function Z(O,me){return M(me)?Oe(me):Me(me,be.Leading,_e=>a(O,d(_e)))}function se(O,me){return me.parser!=="json"&&v(O.key)&&oe(O.key).slice(1,-1)===O.key.value&&(t(O.key.value)&&!(me.parser==="babel-ts"&&O.type==="ClassProperty"||me.parser==="typescript"&&O.type==="PropertyDefinition")||fe(O.key.value)&&String(Number(O.key.value))===O.key.value&&(me.parser==="babel"||me.parser==="acorn"||me.parser==="espree"||me.parser==="meriyah"||me.parser==="__babel_estree"))}function fe(O){return/^(?:\d+|\d+\.\d+)$/.test(O)}function ge(O,me){let _e=/^[fx]?(?:describe|it|test)$/;return me.type==="TaggedTemplateExpression"&&me.quasi===O&&me.tag.type==="MemberExpression"&&me.tag.property.type==="Identifier"&&me.tag.property.name==="each"&&(me.tag.object.type==="Identifier"&&_e.test(me.tag.object.name)||me.tag.object.type==="MemberExpression"&&me.tag.object.property.type==="Identifier"&&(me.tag.object.property.name==="only"||me.tag.object.property.name==="skip")&&me.tag.object.object.type==="Identifier"&&_e.test(me.tag.object.object.name))}function he(O){return O.quasis.some(me=>me.value.raw.includes(` +`))}function we(O,me){return(O.type==="TemplateLiteral"&&he(O)||O.type==="TaggedTemplateExpression"&&he(O.quasi))&&!a(me,p(O),{backwards:!0})}function ke(O){if(!Me(O))return!1;let me=s(ae(O,be.Dangling));return me&&!g(me)}function Re(O){if(O.length<=1)return!1;let me=0;for(let _e of O)if(b(_e)){if(me+=1,me>1)return!0}else if(de(_e)){for(let He of _e.arguments)if(b(He))return!0}return!1}function Ne(O){let me=O.getValue(),_e=O.getParentNode();return de(me)&&de(_e)&&_e.callee===me&&me.arguments.length>_e.arguments.length&&_e.arguments.length>0}function Pe(O,me){if(me>=2)return!1;let _e=Qe=>Pe(Qe,me+1),He=O.type==="Literal"&&"regex"in O&&O.regex.pattern||O.type==="RegExpLiteral"&&O.pattern;if(He&&l(He)>5)return!1;if(O.type==="Literal"||O.type==="BigIntLiteral"||O.type==="DecimalLiteral"||O.type==="BooleanLiteral"||O.type==="NullLiteral"||O.type==="NumericLiteral"||O.type==="RegExpLiteral"||O.type==="StringLiteral"||O.type==="Identifier"||O.type==="ThisExpression"||O.type==="Super"||O.type==="PrivateName"||O.type==="PrivateIdentifier"||O.type==="ArgumentPlaceholder"||O.type==="Import")return!0;if(O.type==="TemplateLiteral")return O.quasis.every(Qe=>!Qe.value.raw.includes(` +`))&&O.expressions.every(_e);if(O.type==="ObjectExpression")return O.properties.every(Qe=>!Qe.computed&&(Qe.shorthand||Qe.value&&_e(Qe.value)));if(O.type==="ArrayExpression")return O.elements.every(Qe=>Qe===null||_e(Qe));if(tt(O))return(O.type==="ImportExpression"||Pe(O.callee,me))&&Ye(O).every(_e);if(ue(O))return Pe(O.object,me)&&Pe(O.property,me);let Ge={"!":!0,"-":!0,"+":!0,"~":!0};if(O.type==="UnaryExpression"&&Ge[O.operator])return Pe(O.argument,me);let it={"++":!0,"--":!0};return O.type==="UpdateExpression"&&it[O.operator]?Pe(O.argument,me):O.type==="TSNonNullExpression"?Pe(O.expression,me):!1}function oe(O){var me,_e;return(me=(_e=O.extra)===null||_e===void 0?void 0:_e.raw)!==null&&me!==void 0?me:O.raw}function H(O){return O}function pe(O){return O.filepath&&/\.tsx$/i.test(O.filepath)}function X(O){let me=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"es5";return O.trailingComma==="es5"&&me==="es5"||O.trailingComma==="all"&&(me==="all"||me==="es5")}function le(O,me){switch(O.type){case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":case"NGPipeExpression":return le(O.left,me);case"MemberExpression":case"OptionalMemberExpression":return le(O.object,me);case"TaggedTemplateExpression":return O.tag.type==="FunctionExpression"?!1:le(O.tag,me);case"CallExpression":case"OptionalCallExpression":return O.callee.type==="FunctionExpression"?!1:le(O.callee,me);case"ConditionalExpression":return le(O.test,me);case"UpdateExpression":return!O.prefix&&le(O.argument,me);case"BindExpression":return O.object&&le(O.object,me);case"SequenceExpression":return le(O.expressions[0],me);case"TSSatisfiesExpression":case"TSAsExpression":case"TSNonNullExpression":return le(O.expression,me);default:return me(O)}}var Ae={"==":!0,"!=":!0,"===":!0,"!==":!0},Ee={"*":!0,"/":!0,"%":!0},De={">>":!0,">>>":!0,"<<":!0};function A(O,me){return!(re(me)!==re(O)||O==="**"||Ae[O]&&Ae[me]||me==="%"&&Ee[O]||O==="%"&&Ee[me]||me!==O&&Ee[me]&&Ee[O]||De[O]&&De[me])}var G=new Map([["|>"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].flatMap((O,me)=>O.map(_e=>[_e,me])));function re(O){return G.get(O)}function ye(O){return Boolean(De[O])||O==="|"||O==="^"||O==="&"}function Ce(O){var me;if(O.rest)return!0;let _e=ve(O);return((me=s(_e))===null||me===void 0?void 0:me.type)==="RestElement"}var Be=new WeakMap;function ve(O){if(Be.has(O))return Be.get(O);let me=[];return O.this&&me.push(O.this),Array.isArray(O.parameters)?me.push(...O.parameters):Array.isArray(O.params)&&me.push(...O.params),O.rest&&me.push(O.rest),Be.set(O,me),me}function ze(O,me){let _e=O.getValue(),He=0,Ge=it=>me(it,He++);_e.this&&O.call(Ge,"this"),Array.isArray(_e.parameters)?O.each(Ge,"parameters"):Array.isArray(_e.params)&&O.each(Ge,"params"),_e.rest&&O.call(Ge,"rest")}var xe=new WeakMap;function Ye(O){if(xe.has(O))return xe.get(O);let me=O.arguments;return O.type==="ImportExpression"&&(me=[O.source],O.attributes&&me.push(O.attributes)),xe.set(O,me),me}function Se(O,me){let _e=O.getValue();_e.type==="ImportExpression"?(O.call(He=>me(He,0),"source"),_e.attributes&&O.call(He=>me(He,1),"attributes")):O.each(me,"arguments")}function Ie(O){return O.value.trim()==="prettier-ignore"&&!O.unignore}function Oe(O){return O&&(O.prettierIgnore||Me(O,be.PrettierIgnore))}function Je(O){let me=O.getValue();return Oe(me)}var be={Leading:1<<1,Trailing:1<<2,Dangling:1<<3,Block:1<<4,Line:1<<5,PrettierIgnore:1<<6,First:1<<7,Last:1<<8},je=(O,me)=>{if(typeof O=="function"&&(me=O,O=0),O||me)return(_e,He,Ge)=>!(O&be.Leading&&!_e.leading||O&be.Trailing&&!_e.trailing||O&be.Dangling&&(_e.leading||_e.trailing)||O&be.Block&&!g(_e)||O&be.Line&&!D(_e)||O&be.First&&He!==0||O&be.Last&&He!==Ge.length-1||O&be.PrettierIgnore&&!Ie(_e)||me&&!me(_e))};function Me(O,me,_e){if(!u(O==null?void 0:O.comments))return!1;let He=je(me,_e);return He?O.comments.some(He):!0}function ae(O,me,_e){if(!Array.isArray(O==null?void 0:O.comments))return[];let He=je(me,_e);return He?O.comments.filter(He):O.comments}var nt=(O,me)=>{let{originalText:_e}=me;return i(_e,d(O))};function tt(O){return de(O)||O.type==="NewExpression"||O.type==="ImportExpression"}function Ve(O){return O&&(O.type==="ObjectProperty"||O.type==="Property"&&!O.method&&O.kind==="init")}function We(O){return Boolean(O.__isUsingHackPipeline)}var Xe=Symbol("ifWithoutBlockAndSameLineComment");function st(O){return O.type==="TSAsExpression"||O.type==="TSSatisfiesExpression"}r.exports={getFunctionParameters:ve,iterateFunctionParametersPath:ze,getCallArguments:Ye,iterateCallArgumentsPath:Se,hasRestParameter:Ce,getLeftSide:I,getLeftSidePathName:P,getParentExportDeclaration:m,getTypeScriptMappedTypeModifier:z,hasFlowAnnotationComment:F,hasFlowShorthandAnnotationComment:w,hasLeadingOwnLineComment:Z,hasNakedLeftSide:x,hasNode:N,hasIgnoreComment:Je,hasNodeIgnoreComment:Oe,identity:H,isBinaryish:V,isCallLikeExpression:tt,isEnabledHackPipeline:We,isLineComment:D,isPrettierIgnoreComment:Ie,isCallExpression:de,isMemberExpression:ue,isExportDeclaration:T,isFlowAnnotationComment:U,isFunctionCompositionArgs:Re,isFunctionNotation:J,isFunctionOrArrowExpression:b,isGetterOrSetter:q,isJestEachTemplateLiteral:ge,isJsxNode:M,isLiteral:C,isLongCurriedCallExpression:Ne,isSimpleCallArgument:Pe,isMemberish:j,isNumericLiteral:o,isSignedNumericLiteral:h,isObjectProperty:Ve,isObjectType:S,isObjectTypePropertyAFunction:L,isSimpleType:ie,isSimpleNumber:fe,isSimpleTemplateLiteral:Fe,isStringLiteral:v,isStringPropSafeToUnquote:se,isTemplateOnItsOwnLine:we,isTestCall:K,isTheOnlyJsxElementInMarkdown:R,isTSXFile:pe,isTypeAnnotationAFunction:Q,isNextLineEmpty:nt,needsHardlineAfterDanglingComment:ke,rawText:oe,shouldPrintComma:X,isBitwiseOperator:ye,shouldFlatten:A,startsWithNoLookaheadToken:le,getPrecedence:re,hasComment:Me,getComments:ae,CommentCheckFlags:be,markerForIfWithoutBlockAndSameLineComment:Xe,isTSTypeExpression:st}}}),Lt=te({"src/language-js/print/template-literal.js"(e,r){"use strict";ne();var t=lt(),{getStringWidth:s,getIndentSize:a}=Ue(),{builders:{join:n,hardline:u,softline:i,group:l,indent:p,align:d,lineSuffixBoundary:y,addAlignmentToDoc:g},printer:{printDocToString:c},utils:{mapDoc:f}}=qe(),{isBinaryish:E,isJestEachTemplateLiteral:_,isSimpleTemplateLiteral:w,hasComment:F,isMemberExpression:N,isTSTypeExpression:x}=Ke();function I(C,o,h){let v=C.getValue();if(v.type==="TemplateLiteral"&&_(v,C.getParentNode())){let R=P(C,h,o);if(R)return R}let b="expressions";v.type==="TSTemplateLiteralType"&&(b="types");let B=[],k=C.map(o,b),M=w(v);return M&&(k=k.map(R=>c(R,Object.assign(Object.assign({},h),{},{printWidth:Number.POSITIVE_INFINITY})).formatted)),B.push(y,"`"),C.each(R=>{let q=R.getName();if(B.push(o()),q1||S.some(b=>b.length>0)){o.__inJestEach=!0;let b=C.map(h,"expressions");o.__inJestEach=!1;let B=[],k=b.map(L=>"${"+c(L,Object.assign(Object.assign({},o),{},{printWidth:Number.POSITIVE_INFINITY,endOfLine:"lf"})).formatted+"}"),M=[{hasLineBreak:!1,cells:[]}];for(let L=1;LL.cells.length)),q=Array.from({length:R}).fill(0),J=[{cells:S},...M.filter(L=>L.cells.length>0)];for(let{cells:L}of J.filter(Q=>!Q.hasLineBreak))for(let[Q,V]of L.entries())q[Q]=Math.max(q[Q],s(V));return B.push(y,"`",p([u,n(u,J.map(L=>n(" | ",L.cells.map((Q,V)=>L.hasLineBreak?Q:Q+" ".repeat(q[V]-s(Q))))))]),u,"`"),B}}function $(C,o){let h=C.getValue(),v=o();return F(h)&&(v=l([p([i,v]),i])),["${",v,y,"}"]}function D(C,o){return C.map(h=>$(h,o),"expressions")}function T(C,o){return f(C,h=>typeof h=="string"?o?h.replace(/(\\*)`/g,"$1$1\\`"):m(h):h)}function m(C){return C.replace(/([\\`]|\${)/g,"\\$1")}r.exports={printTemplateLiteral:I,printTemplateExpressions:D,escapeTemplateCharacters:T,uncookTemplateElementValue:m}}}),Vm=te({"src/language-js/embed/markdown.js"(e,r){"use strict";ne();var{builders:{indent:t,softline:s,literalline:a,dedentToRoot:n}}=qe(),{escapeTemplateCharacters:u}=Lt();function i(p,d,y){let c=p.getValue().quasis[0].value.raw.replace(/((?:\\\\)*)\\`/g,(w,F)=>"\\".repeat(F.length/2)+"`"),f=l(c),E=f!=="";E&&(c=c.replace(new RegExp(`^${f}`,"gm"),""));let _=u(y(c,{parser:"markdown",__inJsTemplate:!0},{stripTrailingHardline:!0}),!0);return["`",E?t([s,_]):[a,n(_)],s,"`"]}function l(p){let d=p.match(/^([^\S\n]*)\S/m);return d===null?"":d[1]}r.exports=i}}),Wm=te({"src/language-js/embed/css.js"(e,r){"use strict";ne();var{isNonEmptyArray:t}=Ue(),{builders:{indent:s,hardline:a,softline:n},utils:{mapDoc:u,replaceEndOfLine:i,cleanDoc:l}}=qe(),{printTemplateExpressions:p}=Lt();function d(c,f,E){let _=c.getValue(),w=_.quasis.map(P=>P.value.raw),F=0,N=w.reduce((P,$,D)=>D===0?$:P+"@prettier-placeholder-"+F+++"-id"+$,""),x=E(N,{parser:"scss"},{stripTrailingHardline:!0}),I=p(c,f);return y(x,_,I)}function y(c,f,E){if(f.quasis.length===1&&!f.quasis[0].value.raw.trim())return"``";let w=g(c,E);if(!w)throw new Error("Couldn't insert all the expressions");return["`",s([a,w]),n,"`"]}function g(c,f){if(!t(f))return c;let E=0,_=u(l(c),w=>typeof w!="string"||!w.includes("@prettier-placeholder")?w:w.split(/@prettier-placeholder-(\d+)-id/).map((F,N)=>N%2===0?i(F):(E++,f[F])));return f.length===E?_:null}r.exports=d}}),Hm=te({"src/language-js/embed/graphql.js"(e,r){"use strict";ne();var{builders:{indent:t,join:s,hardline:a}}=qe(),{escapeTemplateCharacters:n,printTemplateExpressions:u}=Lt();function i(p,d,y){let g=p.getValue(),c=g.quasis.length;if(c===1&&g.quasis[0].value.raw.trim()==="")return"``";let f=u(p,d),E=[];for(let _=0;_2&&I[0].trim()===""&&I[1].trim()==="",T=P>2&&I[P-1].trim()===""&&I[P-2].trim()==="",m=I.every(o=>/^\s*(?:#[^\n\r]*)?$/.test(o));if(!N&&/#[^\n\r]*$/.test(I[P-1]))return null;let C=null;m?C=l(I):C=y(x,{parser:"graphql"},{stripTrailingHardline:!0}),C?(C=n(C,!1),!F&&D&&E.push(""),E.push(C),!N&&T&&E.push("")):!F&&!N&&D&&E.push(""),$&&E.push($)}return["`",t([a,s(a,E)]),a,"`"]}function l(p){let d=[],y=!1,g=p.map(c=>c.trim());for(let[c,f]of g.entries())f!==""&&(g[c-1]===""&&y?d.push([a,f]):d.push(f),y=!0);return d.length===0?null:s(a,d)}r.exports=i}}),Gm=te({"src/language-js/embed/html.js"(e,r){"use strict";ne();var{builders:{indent:t,line:s,hardline:a,group:n},utils:{mapDoc:u}}=qe(),{printTemplateExpressions:i,uncookTemplateElementValue:l}=Lt(),p=0;function d(y,g,c,f,E){let{parser:_}=E,w=y.getValue(),F=p;p=p+1>>>0;let N=h=>`PRETTIER_HTML_PLACEHOLDER_${h}_${F}_IN_JS`,x=w.quasis.map((h,v,S)=>v===S.length-1?h.value.cooked:h.value.cooked+N(v)).join(""),I=i(y,g);if(I.length===0&&x.trim().length===0)return"``";let P=new RegExp(N("(\\d+)"),"g"),$=0,D=c(x,{parser:_,__onHtmlRoot(h){$=h.children.length}},{stripTrailingHardline:!0}),T=u(D,h=>{if(typeof h!="string")return h;let v=[],S=h.split(P);for(let b=0;b1?t(n(T)):n(T),C,"`"])}r.exports=d}}),Um=te({"src/language-js/embed.js"(e,r){"use strict";ne();var{hasComment:t,CommentCheckFlags:s,isObjectProperty:a}=Ke(),n=Vm(),u=Wm(),i=Hm(),l=Gm();function p(D){if(g(D)||_(D)||w(D)||c(D))return"css";if(x(D))return"graphql";if(P(D))return"html";if(f(D))return"angular";if(y(D))return"markdown"}function d(D,T,m,C){let o=D.getValue();if(o.type!=="TemplateLiteral"||$(o))return;let h=p(D);if(h){if(h==="markdown")return n(D,T,m);if(h==="css")return u(D,T,m);if(h==="graphql")return i(D,T,m);if(h==="html"||h==="angular")return l(D,T,m,C,{parser:h})}}function y(D){let T=D.getValue(),m=D.getParentNode();return m&&m.type==="TaggedTemplateExpression"&&T.quasis.length===1&&m.tag.type==="Identifier"&&(m.tag.name==="md"||m.tag.name==="markdown")}function g(D){let T=D.getValue(),m=D.getParentNode(),C=D.getParentNode(1);return C&&T.quasis&&m.type==="JSXExpressionContainer"&&C.type==="JSXElement"&&C.openingElement.name.name==="style"&&C.openingElement.attributes.some(o=>o.name.name==="jsx")||m&&m.type==="TaggedTemplateExpression"&&m.tag.type==="Identifier"&&m.tag.name==="css"||m&&m.type==="TaggedTemplateExpression"&&m.tag.type==="MemberExpression"&&m.tag.object.name==="css"&&(m.tag.property.name==="global"||m.tag.property.name==="resolve")}function c(D){return D.match(T=>T.type==="TemplateLiteral",(T,m)=>T.type==="ArrayExpression"&&m==="elements",(T,m)=>a(T)&&T.key.type==="Identifier"&&T.key.name==="styles"&&m==="value",...E)}function f(D){return D.match(T=>T.type==="TemplateLiteral",(T,m)=>a(T)&&T.key.type==="Identifier"&&T.key.name==="template"&&m==="value",...E)}var E=[(D,T)=>D.type==="ObjectExpression"&&T==="properties",(D,T)=>D.type==="CallExpression"&&D.callee.type==="Identifier"&&D.callee.name==="Component"&&T==="arguments",(D,T)=>D.type==="Decorator"&&T==="expression"];function _(D){let T=D.getParentNode();if(!T||T.type!=="TaggedTemplateExpression")return!1;let m=T.tag.type==="ParenthesizedExpression"?T.tag.expression:T.tag;switch(m.type){case"MemberExpression":return F(m.object)||N(m);case"CallExpression":return F(m.callee)||m.callee.type==="MemberExpression"&&(m.callee.object.type==="MemberExpression"&&(F(m.callee.object.object)||N(m.callee.object))||m.callee.object.type==="CallExpression"&&F(m.callee.object.callee));case"Identifier":return m.name==="css";default:return!1}}function w(D){let T=D.getParentNode(),m=D.getParentNode(1);return m&&T.type==="JSXExpressionContainer"&&m.type==="JSXAttribute"&&m.name.type==="JSXIdentifier"&&m.name.name==="css"}function F(D){return D.type==="Identifier"&&D.name==="styled"}function N(D){return/^[A-Z]/.test(D.object.name)&&D.property.name==="extend"}function x(D){let T=D.getValue(),m=D.getParentNode();return I(T,"GraphQL")||m&&(m.type==="TaggedTemplateExpression"&&(m.tag.type==="MemberExpression"&&m.tag.object.name==="graphql"&&m.tag.property.name==="experimental"||m.tag.type==="Identifier"&&(m.tag.name==="gql"||m.tag.name==="graphql"))||m.type==="CallExpression"&&m.callee.type==="Identifier"&&m.callee.name==="graphql")}function I(D,T){return t(D,s.Block|s.Leading,m=>{let{value:C}=m;return C===` ${T} `})}function P(D){return I(D.getValue(),"HTML")||D.match(T=>T.type==="TemplateLiteral",(T,m)=>T.type==="TaggedTemplateExpression"&&T.tag.type==="Identifier"&&T.tag.name==="html"&&m==="quasi")}function $(D){let{quasis:T}=D;return T.some(m=>{let{value:{cooked:C}}=m;return C===null})}r.exports=d}}),Jm=te({"src/language-js/clean.js"(e,r){"use strict";ne();var t=_t(),s=new Set(["range","raw","comments","leadingComments","trailingComments","innerComments","extra","start","end","loc","flags","errors","tokens"]),a=u=>{for(let i of u.quasis)delete i.value};function n(u,i,l){if(u.type==="Program"&&delete i.sourceType,(u.type==="BigIntLiteral"||u.type==="BigIntLiteralTypeAnnotation")&&i.value&&(i.value=i.value.toLowerCase()),(u.type==="BigIntLiteral"||u.type==="Literal")&&i.bigint&&(i.bigint=i.bigint.toLowerCase()),u.type==="DecimalLiteral"&&(i.value=Number(i.value)),u.type==="Literal"&&i.decimal&&(i.decimal=Number(i.decimal)),u.type==="EmptyStatement"||u.type==="JSXText"||u.type==="JSXExpressionContainer"&&(u.expression.type==="Literal"||u.expression.type==="StringLiteral")&&u.expression.value===" ")return null;if((u.type==="Property"||u.type==="ObjectProperty"||u.type==="MethodDefinition"||u.type==="ClassProperty"||u.type==="ClassMethod"||u.type==="PropertyDefinition"||u.type==="TSDeclareMethod"||u.type==="TSPropertySignature"||u.type==="ObjectTypeProperty")&&typeof u.key=="object"&&u.key&&(u.key.type==="Literal"||u.key.type==="NumericLiteral"||u.key.type==="StringLiteral"||u.key.type==="Identifier")&&delete i.key,u.type==="JSXElement"&&u.openingElement.name.name==="style"&&u.openingElement.attributes.some(y=>y.name.name==="jsx"))for(let{type:y,expression:g}of i.children)y==="JSXExpressionContainer"&&g.type==="TemplateLiteral"&&a(g);u.type==="JSXAttribute"&&u.name.name==="css"&&u.value.type==="JSXExpressionContainer"&&u.value.expression.type==="TemplateLiteral"&&a(i.value.expression),u.type==="JSXAttribute"&&u.value&&u.value.type==="Literal"&&/["']|"|'/.test(u.value.value)&&(i.value.value=i.value.value.replace(/["']|"|'/g,'"'));let p=u.expression||u.callee;if(u.type==="Decorator"&&p.type==="CallExpression"&&p.callee.name==="Component"&&p.arguments.length===1){let y=u.expression.arguments[0].properties;for(let[g,c]of i.expression.arguments[0].properties.entries())switch(y[g].key.name){case"styles":c.value.type==="ArrayExpression"&&a(c.value.elements[0]);break;case"template":c.value.type==="TemplateLiteral"&&a(c.value);break}}if(u.type==="TaggedTemplateExpression"&&(u.tag.type==="MemberExpression"||u.tag.type==="Identifier"&&(u.tag.name==="gql"||u.tag.name==="graphql"||u.tag.name==="css"||u.tag.name==="md"||u.tag.name==="markdown"||u.tag.name==="html")||u.tag.type==="CallExpression")&&a(i.quasi),u.type==="TemplateLiteral"){var d;(((d=u.leadingComments)===null||d===void 0?void 0:d.some(g=>t(g)&&["GraphQL","HTML"].some(c=>g.value===` ${c} `)))||l.type==="CallExpression"&&l.callee.name==="graphql"||!u.leadingComments)&&a(i)}if(u.type==="InterpreterDirective"&&(i.value=i.value.trimEnd()),(u.type==="TSIntersectionType"||u.type==="TSUnionType")&&u.types.length===1)return i.types[0]}n.ignoredProperties=s,r.exports=n}}),Qa={};zt(Qa,{EOL:()=>Rn,arch:()=>zm,cpus:()=>so,default:()=>co,endianness:()=>Za,freemem:()=>no,getNetworkInterfaces:()=>lo,hostname:()=>eo,loadavg:()=>to,networkInterfaces:()=>oo,platform:()=>Xm,release:()=>ao,tmpDir:()=>qn,tmpdir:()=>Mn,totalmem:()=>uo,type:()=>io,uptime:()=>ro});function Za(){if(typeof xr>"u"){var e=new ArrayBuffer(2),r=new Uint8Array(e),t=new Uint16Array(e);if(r[0]=1,r[1]=2,t[0]===258)xr="BE";else if(t[0]===513)xr="LE";else throw new Error("unable to figure out endianess")}return xr}function eo(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function to(){return[]}function ro(){return 0}function no(){return Number.MAX_VALUE}function uo(){return Number.MAX_VALUE}function so(){return[]}function io(){return"Browser"}function ao(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function oo(){}function lo(){}function zm(){return"javascript"}function Xm(){return"browser"}function qn(){return"/tmp"}var xr,Mn,Rn,co,Km=ht({"node-modules-polyfills:os"(){ne(),Mn=qn,Rn=` +`,co={EOL:Rn,tmpdir:Mn,tmpDir:qn,networkInterfaces:oo,getNetworkInterfaces:lo,release:ao,type:io,cpus:so,totalmem:uo,freemem:no,uptime:ro,loadavg:to,hostname:eo,endianness:Za}}}),Ym=te({"node-modules-polyfills-commonjs:os"(e,r){ne();var t=(Km(),ft(Qa));if(t&&t.default){r.exports=t.default;for(let s in t)r.exports[s]=t[s]}else t&&(r.exports=t)}}),Qm=te({"node_modules/detect-newline/index.js"(e,r){"use strict";ne();var t=s=>{if(typeof s!="string")throw new TypeError("Expected a string");let a=s.match(/(?:\r?\n)/g)||[];if(a.length===0)return;let n=a.filter(i=>i===`\r +`).length,u=a.length-n;return n>u?`\r +`:` +`};r.exports=t,r.exports.graceful=s=>typeof s=="string"&&t(s)||` +`}}),Zm=te({"node_modules/jest-docblock/build/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.extract=c,e.parse=E,e.parseWithComments=_,e.print=w,e.strip=f;function r(){let N=Ym();return r=function(){return N},N}function t(){let N=s(Qm());return t=function(){return N},N}function s(N){return N&&N.__esModule?N:{default:N}}var a=/\*\/$/,n=/^\/\*\*?/,u=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,i=/(^|\s+)\/\/([^\r\n]*)/g,l=/^(\r?\n)+/,p=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,d=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,y=/(\r?\n|^) *\* ?/g,g=[];function c(N){let x=N.match(u);return x?x[0].trimLeft():""}function f(N){let x=N.match(u);return x&&x[0]?N.substring(x[0].length):N}function E(N){return _(N).pragmas}function _(N){let x=(0,t().default)(N)||r().EOL;N=N.replace(n,"").replace(a,"").replace(y,"$1");let I="";for(;I!==N;)I=N,N=N.replace(p,`${x}$1 $2${x}`);N=N.replace(l,"").trimRight();let P=Object.create(null),$=N.replace(d,"").replace(l,"").trimRight(),D;for(;D=d.exec(N);){let T=D[2].replace(i,"");typeof P[D[1]]=="string"||Array.isArray(P[D[1]])?P[D[1]]=g.concat(P[D[1]],T):P[D[1]]=T}return{comments:$,pragmas:P}}function w(N){let{comments:x="",pragmas:I={}}=N,P=(0,t().default)(x)||r().EOL,$="/**",D=" *",T=" */",m=Object.keys(I),C=m.map(h=>F(h,I[h])).reduce((h,v)=>h.concat(v),[]).map(h=>`${D} ${h}${P}`).join("");if(!x){if(m.length===0)return"";if(m.length===1&&!Array.isArray(I[m[0]])){let h=I[m[0]];return`${$} ${F(m[0],h)[0]}${T}`}}let o=x.split(P).map(h=>`${D} ${h}`).join(P)+P;return $+P+(x?o:"")+(x&&m.length?D+P:"")+C+T}function F(N,x){return g.concat(x).map(I=>`@${N} ${I}`.trim())}}}),ed=te({"src/language-js/utils/get-shebang.js"(e,r){"use strict";ne();function t(s){if(!s.startsWith("#!"))return"";let a=s.indexOf(` +`);return a===-1?s:s.slice(0,a)}r.exports=t}}),po=te({"src/language-js/pragma.js"(e,r){"use strict";ne();var{parseWithComments:t,strip:s,extract:a,print:n}=Zm(),{normalizeEndOfLine:u}=Hn(),i=ed();function l(y){let g=i(y);g&&(y=y.slice(g.length+1));let c=a(y),{pragmas:f,comments:E}=t(c);return{shebang:g,text:y,pragmas:f,comments:E}}function p(y){let g=Object.keys(l(y).pragmas);return g.includes("prettier")||g.includes("format")}function d(y){let{shebang:g,text:c,pragmas:f,comments:E}=l(y),_=s(c),w=n({pragmas:Object.assign({format:""},f),comments:E.trimStart()});return(g?`${g} +`:"")+u(w)+(_.startsWith(` +`)?` +`:` + +`)+_}r.exports={hasPragma:p,insertPragma:d}}}),td=te({"src/language-js/utils/is-type-cast-comment.js"(e,r){"use strict";ne();var t=_t();function s(a){return t(a)&&a.value[0]==="*"&&/@(?:type|satisfies)\b/.test(a.value)}r.exports=s}}),fo=te({"src/language-js/comments.js"(e,r){"use strict";ne();var{getLast:t,hasNewline:s,getNextNonSpaceNonCommentCharacterIndexWithStartIndex:a,getNextNonSpaceNonCommentCharacter:n,hasNewlineInRange:u,addLeadingComment:i,addTrailingComment:l,addDanglingComment:p,getNextNonSpaceNonCommentCharacterIndex:d,isNonEmptyArray:y}=Ue(),{getFunctionParameters:g,isPrettierIgnoreComment:c,isJsxNode:f,hasFlowShorthandAnnotationComment:E,hasFlowAnnotationComment:_,hasIgnoreComment:w,isCallLikeExpression:F,getCallArguments:N,isCallExpression:x,isMemberExpression:I,isObjectProperty:P,isLineComment:$,getComments:D,CommentCheckFlags:T,markerForIfWithoutBlockAndSameLineComment:m}=Ke(),{locStart:C,locEnd:o}=ut(),h=_t(),v=td();function S(De){return[H,Fe,Q,q,J,L,ie,he,se,ge,we,ke,ce,z,U].some(A=>A(De))}function b(De){return[R,Fe,V,we,q,J,L,ie,z,Z,fe,ge,Pe,U,X].some(A=>A(De))}function B(De){return[H,q,J,j,ue,ce,ge,de,K,pe,U,oe].some(A=>A(De))}function k(De,A){let G=(De.body||De.properties).find(re=>{let{type:ye}=re;return ye!=="EmptyStatement"});G?i(G,A):p(De,A)}function M(De,A){De.type==="BlockStatement"?k(De,A):i(De,A)}function R(De){let{comment:A,followingNode:G}=De;return G&&v(A)?(i(G,A),!0):!1}function q(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye,text:Ce}=De;if((re==null?void 0:re.type)!=="IfStatement"||!ye)return!1;if(n(Ce,A,o)===")")return l(G,A),!0;if(G===re.consequent&&ye===re.alternate){if(G.type==="BlockStatement")l(G,A);else{let ve=A.type==="SingleLine"||A.loc.start.line===A.loc.end.line,ze=A.loc.start.line===G.loc.start.line;ve&&ze?p(G,A,m):p(re,A)}return!0}return ye.type==="BlockStatement"?(k(ye,A),!0):ye.type==="IfStatement"?(M(ye.consequent,A),!0):re.consequent===ye?(i(ye,A),!0):!1}function J(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye,text:Ce}=De;return(re==null?void 0:re.type)!=="WhileStatement"||!ye?!1:n(Ce,A,o)===")"?(l(G,A),!0):ye.type==="BlockStatement"?(k(ye,A),!0):re.body===ye?(i(ye,A),!0):!1}function L(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye}=De;return(re==null?void 0:re.type)!=="TryStatement"&&(re==null?void 0:re.type)!=="CatchClause"||!ye?!1:re.type==="CatchClause"&&G?(l(G,A),!0):ye.type==="BlockStatement"?(k(ye,A),!0):ye.type==="TryStatement"?(M(ye.finalizer,A),!0):ye.type==="CatchClause"?(M(ye.body,A),!0):!1}function Q(De){let{comment:A,enclosingNode:G,followingNode:re}=De;return I(G)&&(re==null?void 0:re.type)==="Identifier"?(i(G,A),!0):!1}function V(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye,text:Ce}=De,Be=G&&!u(Ce,o(G),C(A));return(!G||!Be)&&((re==null?void 0:re.type)==="ConditionalExpression"||(re==null?void 0:re.type)==="TSConditionalType")&&ye?(i(ye,A),!0):!1}function j(De){let{comment:A,precedingNode:G,enclosingNode:re}=De;return P(re)&&re.shorthand&&re.key===G&&re.value.type==="AssignmentPattern"?(l(re.value.left,A),!0):!1}var Y=new Set(["ClassDeclaration","ClassExpression","DeclareClass","DeclareInterface","InterfaceDeclaration","TSInterfaceDeclaration"]);function ie(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye}=De;if(Y.has(re==null?void 0:re.type)){if(y(re.decorators)&&!(ye&&ye.type==="Decorator"))return l(t(re.decorators),A),!0;if(re.body&&ye===re.body)return k(re.body,A),!0;if(ye){if(re.superClass&&ye===re.superClass&&G&&(G===re.id||G===re.typeParameters))return l(G,A),!0;for(let Ce of["implements","extends","mixins"])if(re[Ce]&&ye===re[Ce][0])return G&&(G===re.id||G===re.typeParameters||G===re.superClass)?l(G,A):p(re,A,Ce),!0}}return!1}var ee=new Set(["ClassMethod","ClassProperty","PropertyDefinition","TSAbstractPropertyDefinition","TSAbstractMethodDefinition","TSDeclareMethod","MethodDefinition","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty"]);function ce(De){let{comment:A,precedingNode:G,enclosingNode:re,text:ye}=De;return re&&G&&n(ye,A,o)==="("&&(re.type==="Property"||re.type==="TSDeclareMethod"||re.type==="TSAbstractMethodDefinition")&&G.type==="Identifier"&&re.key===G&&n(ye,G,o)!==":"||(G==null?void 0:G.type)==="Decorator"&&ee.has(re==null?void 0:re.type)?(l(G,A),!0):!1}var W=new Set(["FunctionDeclaration","FunctionExpression","ClassMethod","MethodDefinition","ObjectMethod"]);function K(De){let{comment:A,precedingNode:G,enclosingNode:re,text:ye}=De;return n(ye,A,o)!=="("?!1:G&&W.has(re==null?void 0:re.type)?(l(G,A),!0):!1}function de(De){let{comment:A,enclosingNode:G,text:re}=De;if((G==null?void 0:G.type)!=="ArrowFunctionExpression")return!1;let ye=d(re,A,o);return ye!==!1&&re.slice(ye,ye+2)==="=>"?(p(G,A),!0):!1}function ue(De){let{comment:A,enclosingNode:G,text:re}=De;return n(re,A,o)!==")"?!1:G&&(le(G)&&g(G).length===0||F(G)&&N(G).length===0)?(p(G,A),!0):((G==null?void 0:G.type)==="MethodDefinition"||(G==null?void 0:G.type)==="TSAbstractMethodDefinition")&&g(G.value).length===0?(p(G.value,A),!0):!1}function Fe(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye,text:Ce}=De;if((G==null?void 0:G.type)==="FunctionTypeParam"&&(re==null?void 0:re.type)==="FunctionTypeAnnotation"&&(ye==null?void 0:ye.type)!=="FunctionTypeParam"||((G==null?void 0:G.type)==="Identifier"||(G==null?void 0:G.type)==="AssignmentPattern")&&re&&le(re)&&n(Ce,A,o)===")")return l(G,A),!0;if((re==null?void 0:re.type)==="FunctionDeclaration"&&(ye==null?void 0:ye.type)==="BlockStatement"){let Be=(()=>{let ve=g(re);if(ve.length>0)return a(Ce,o(t(ve)));let ze=a(Ce,o(re.id));return ze!==!1&&a(Ce,ze+1)})();if(C(A)>Be)return k(ye,A),!0}return!1}function z(De){let{comment:A,enclosingNode:G}=De;return(G==null?void 0:G.type)==="LabeledStatement"?(i(G,A),!0):!1}function U(De){let{comment:A,enclosingNode:G}=De;return((G==null?void 0:G.type)==="ContinueStatement"||(G==null?void 0:G.type)==="BreakStatement")&&!G.label?(l(G,A),!0):!1}function Z(De){let{comment:A,precedingNode:G,enclosingNode:re}=De;return x(re)&&G&&re.callee===G&&re.arguments.length>0?(i(re.arguments[0],A),!0):!1}function se(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye}=De;return(re==null?void 0:re.type)==="UnionTypeAnnotation"||(re==null?void 0:re.type)==="TSUnionType"?(c(A)&&(ye.prettierIgnore=!0,A.unignore=!0),G?(l(G,A),!0):!1):(((ye==null?void 0:ye.type)==="UnionTypeAnnotation"||(ye==null?void 0:ye.type)==="TSUnionType")&&c(A)&&(ye.types[0].prettierIgnore=!0,A.unignore=!0),!1)}function fe(De){let{comment:A,enclosingNode:G}=De;return P(G)?(i(G,A),!0):!1}function ge(De){let{comment:A,enclosingNode:G,followingNode:re,ast:ye,isLastComment:Ce}=De;return ye&&ye.body&&ye.body.length===0?(Ce?p(ye,A):i(ye,A),!0):(G==null?void 0:G.type)==="Program"&&(G==null?void 0:G.body.length)===0&&!y(G.directives)?(Ce?p(G,A):i(G,A),!0):(re==null?void 0:re.type)==="Program"&&(re==null?void 0:re.body.length)===0&&(G==null?void 0:G.type)==="ModuleExpression"?(p(re,A),!0):!1}function he(De){let{comment:A,enclosingNode:G}=De;return(G==null?void 0:G.type)==="ForInStatement"||(G==null?void 0:G.type)==="ForOfStatement"?(i(G,A),!0):!1}function we(De){let{comment:A,precedingNode:G,enclosingNode:re,text:ye}=De;if((re==null?void 0:re.type)==="ImportSpecifier"||(re==null?void 0:re.type)==="ExportSpecifier")return i(re,A),!0;let Ce=(G==null?void 0:G.type)==="ImportSpecifier"&&(re==null?void 0:re.type)==="ImportDeclaration",Be=(G==null?void 0:G.type)==="ExportSpecifier"&&(re==null?void 0:re.type)==="ExportNamedDeclaration";return(Ce||Be)&&s(ye,o(A))?(l(G,A),!0):!1}function ke(De){let{comment:A,enclosingNode:G}=De;return(G==null?void 0:G.type)==="AssignmentPattern"?(i(G,A),!0):!1}var Re=new Set(["VariableDeclarator","AssignmentExpression","TypeAlias","TSTypeAliasDeclaration"]),Ne=new Set(["ObjectExpression","ArrayExpression","TemplateLiteral","TaggedTemplateExpression","ObjectTypeAnnotation","TSTypeLiteral"]);function Pe(De){let{comment:A,enclosingNode:G,followingNode:re}=De;return Re.has(G==null?void 0:G.type)&&re&&(Ne.has(re.type)||h(A))?(i(re,A),!0):!1}function oe(De){let{comment:A,enclosingNode:G,followingNode:re,text:ye}=De;return!re&&((G==null?void 0:G.type)==="TSMethodSignature"||(G==null?void 0:G.type)==="TSDeclareFunction"||(G==null?void 0:G.type)==="TSAbstractMethodDefinition")&&n(ye,A,o)===";"?(l(G,A),!0):!1}function H(De){let{comment:A,enclosingNode:G,followingNode:re}=De;if(c(A)&&(G==null?void 0:G.type)==="TSMappedType"&&(re==null?void 0:re.type)==="TSTypeParameter"&&re.constraint)return G.prettierIgnore=!0,A.unignore=!0,!0}function pe(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye}=De;return(re==null?void 0:re.type)!=="TSMappedType"?!1:(ye==null?void 0:ye.type)==="TSTypeParameter"&&ye.name?(i(ye.name,A),!0):(G==null?void 0:G.type)==="TSTypeParameter"&&G.constraint?(l(G.constraint,A),!0):!1}function X(De){let{comment:A,enclosingNode:G,followingNode:re}=De;return!G||G.type!=="SwitchCase"||G.test||!re||re!==G.consequent[0]?!1:(re.type==="BlockStatement"&&$(A)?k(re,A):p(G,A),!0)}function le(De){return De.type==="ArrowFunctionExpression"||De.type==="FunctionExpression"||De.type==="FunctionDeclaration"||De.type==="ObjectMethod"||De.type==="ClassMethod"||De.type==="TSDeclareFunction"||De.type==="TSCallSignatureDeclaration"||De.type==="TSConstructSignatureDeclaration"||De.type==="TSMethodSignature"||De.type==="TSConstructorType"||De.type==="TSFunctionType"||De.type==="TSDeclareMethod"}function Ae(De,A){if((A.parser==="typescript"||A.parser==="flow"||A.parser==="acorn"||A.parser==="espree"||A.parser==="meriyah"||A.parser==="__babel_estree")&&De.type==="MethodDefinition"&&De.value&&De.value.type==="FunctionExpression"&&g(De.value).length===0&&!De.value.returnType&&!y(De.value.typeParameters)&&De.value.body)return[...De.decorators||[],De.key,De.value.body]}function Ee(De){let A=De.getValue(),G=De.getParentNode(),re=ye=>_(D(ye,T.Leading))||_(D(ye,T.Trailing));return(A&&(f(A)||E(A)||x(G)&&re(A))||G&&(G.type==="JSXSpreadAttribute"||G.type==="JSXSpreadChild"||G.type==="UnionTypeAnnotation"||G.type==="TSUnionType"||(G.type==="ClassDeclaration"||G.type==="ClassExpression")&&G.superClass===A))&&(!w(De)||G.type==="UnionTypeAnnotation"||G.type==="TSUnionType")}r.exports={handleOwnLineComment:S,handleEndOfLineComment:b,handleRemainingComment:B,getCommentChildNodes:Ae,willPrintOwnComments:Ee}}}),Ot=te({"src/language-js/needs-parens.js"(e,r){"use strict";ne();var t=lt(),s=Jn(),{getFunctionParameters:a,getLeftSidePathName:n,hasFlowShorthandAnnotationComment:u,hasNakedLeftSide:i,hasNode:l,isBitwiseOperator:p,startsWithNoLookaheadToken:d,shouldFlatten:y,getPrecedence:g,isCallExpression:c,isMemberExpression:f,isObjectProperty:E,isTSTypeExpression:_}=Ke();function w(D,T){let m=D.getParentNode();if(!m)return!1;let C=D.getName(),o=D.getNode();if(T.__isInHtmlInterpolation&&!T.bracketSpacing&&I(o)&&P(D))return!0;if(F(o))return!1;if(T.parser!=="flow"&&u(D.getValue()))return!0;if(o.type==="Identifier"){if(o.extra&&o.extra.parenthesized&&/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/.test(o.name)||C==="left"&&(o.name==="async"&&!m.await||o.name==="let")&&m.type==="ForOfStatement")return!0;if(o.name==="let"){var h;let S=(h=D.findAncestor(b=>b.type==="ForOfStatement"))===null||h===void 0?void 0:h.left;if(S&&d(S,b=>b===o))return!0}if(C==="object"&&o.name==="let"&&m.type==="MemberExpression"&&m.computed&&!m.optional){let S=D.findAncestor(B=>B.type==="ExpressionStatement"||B.type==="ForStatement"||B.type==="ForInStatement"),b=S?S.type==="ExpressionStatement"?S.expression:S.type==="ForStatement"?S.init:S.left:void 0;if(b&&d(b,B=>B===o))return!0}return!1}if(o.type==="ObjectExpression"||o.type==="FunctionExpression"||o.type==="ClassExpression"||o.type==="DoExpression"){var v;let S=(v=D.findAncestor(b=>b.type==="ExpressionStatement"))===null||v===void 0?void 0:v.expression;if(S&&d(S,b=>b===o))return!0}switch(m.type){case"ParenthesizedExpression":return!1;case"ClassDeclaration":case"ClassExpression":{if(C==="superClass"&&(o.type==="ArrowFunctionExpression"||o.type==="AssignmentExpression"||o.type==="AwaitExpression"||o.type==="BinaryExpression"||o.type==="ConditionalExpression"||o.type==="LogicalExpression"||o.type==="NewExpression"||o.type==="ObjectExpression"||o.type==="SequenceExpression"||o.type==="TaggedTemplateExpression"||o.type==="UnaryExpression"||o.type==="UpdateExpression"||o.type==="YieldExpression"||o.type==="TSNonNullExpression"))return!0;break}case"ExportDefaultDeclaration":return $(D,T)||o.type==="SequenceExpression";case"Decorator":{if(C==="expression"){if(f(o)&&o.computed)return!0;let S=!1,b=!1,B=o;for(;B;)switch(B.type){case"MemberExpression":b=!0,B=B.object;break;case"CallExpression":if(b||S)return T.parser!=="typescript";S=!0,B=B.callee;break;case"Identifier":return!1;case"TaggedTemplateExpression":return T.parser!=="typescript";default:return!0}return!0}break}case"ArrowFunctionExpression":{if(C==="body"&&o.type!=="SequenceExpression"&&d(o,S=>S.type==="ObjectExpression"))return!0;break}}switch(o.type){case"UpdateExpression":if(m.type==="UnaryExpression")return o.prefix&&(o.operator==="++"&&m.operator==="+"||o.operator==="--"&&m.operator==="-");case"UnaryExpression":switch(m.type){case"UnaryExpression":return o.operator===m.operator&&(o.operator==="+"||o.operator==="-");case"BindExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return C==="object";case"TaggedTemplateExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return C==="callee";case"BinaryExpression":return C==="left"&&m.operator==="**";case"TSNonNullExpression":return!0;default:return!1}case"BinaryExpression":{if(m.type==="UpdateExpression"||o.operator==="in"&&N(D))return!0;if(o.operator==="|>"&&o.extra&&o.extra.parenthesized){let S=D.getParentNode(1);if(S.type==="BinaryExpression"&&S.operator==="|>")return!0}}case"TSTypeAssertion":case"TSAsExpression":case"TSSatisfiesExpression":case"LogicalExpression":switch(m.type){case"TSSatisfiesExpression":case"TSAsExpression":return!_(o);case"ConditionalExpression":return _(o);case"CallExpression":case"NewExpression":case"OptionalCallExpression":return C==="callee";case"ClassExpression":case"ClassDeclaration":return C==="superClass";case"TSTypeAssertion":case"TaggedTemplateExpression":case"UnaryExpression":case"JSXSpreadAttribute":case"SpreadElement":case"SpreadProperty":case"BindExpression":case"AwaitExpression":case"TSNonNullExpression":case"UpdateExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return C==="object";case"AssignmentExpression":case"AssignmentPattern":return C==="left"&&(o.type==="TSTypeAssertion"||_(o));case"LogicalExpression":if(o.type==="LogicalExpression")return m.operator!==o.operator;case"BinaryExpression":{let{operator:S,type:b}=o;if(!S&&b!=="TSTypeAssertion")return!0;let B=g(S),k=m.operator,M=g(k);return M>B||C==="right"&&M===B||M===B&&!y(k,S)?!0:M");default:return!1}case"TSConditionalType":case"TSFunctionType":case"TSConstructorType":if(C==="extendsType"&&m.type==="TSConditionalType"){if(o.type==="TSConditionalType")return!0;let{typeAnnotation:S}=o.returnType||o.typeAnnotation;if(S.type==="TSTypePredicate"&&S.typeAnnotation&&(S=S.typeAnnotation.typeAnnotation),S.type==="TSInferType"&&S.typeParameter.constraint)return!0}if(C==="checkType"&&m.type==="TSConditionalType")return!0;case"TSUnionType":case"TSIntersectionType":if((m.type==="TSUnionType"||m.type==="TSIntersectionType")&&m.types.length>1&&(!o.types||o.types.length>1))return!0;case"TSInferType":if(o.type==="TSInferType"&&m.type==="TSRestType")return!1;case"TSTypeOperator":return m.type==="TSArrayType"||m.type==="TSOptionalType"||m.type==="TSRestType"||C==="objectType"&&m.type==="TSIndexedAccessType"||m.type==="TSTypeOperator"||m.type==="TSTypeAnnotation"&&D.getParentNode(1).type.startsWith("TSJSDoc");case"TSTypeQuery":return C==="objectType"&&m.type==="TSIndexedAccessType"||C==="elementType"&&m.type==="TSArrayType";case"TypeofTypeAnnotation":return C==="objectType"&&(m.type==="IndexedAccessType"||m.type==="OptionalIndexedAccessType")||C==="elementType"&&m.type==="ArrayTypeAnnotation";case"ArrayTypeAnnotation":return m.type==="NullableTypeAnnotation";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return m.type==="ArrayTypeAnnotation"||m.type==="NullableTypeAnnotation"||m.type==="IntersectionTypeAnnotation"||m.type==="UnionTypeAnnotation"||C==="objectType"&&(m.type==="IndexedAccessType"||m.type==="OptionalIndexedAccessType");case"NullableTypeAnnotation":return m.type==="ArrayTypeAnnotation"||C==="objectType"&&(m.type==="IndexedAccessType"||m.type==="OptionalIndexedAccessType");case"FunctionTypeAnnotation":{let S=m.type==="NullableTypeAnnotation"?D.getParentNode(1):m;return S.type==="UnionTypeAnnotation"||S.type==="IntersectionTypeAnnotation"||S.type==="ArrayTypeAnnotation"||C==="objectType"&&(S.type==="IndexedAccessType"||S.type==="OptionalIndexedAccessType")||S.type==="NullableTypeAnnotation"||m.type==="FunctionTypeParam"&&m.name===null&&a(o).some(b=>b.typeAnnotation&&b.typeAnnotation.type==="NullableTypeAnnotation")}case"OptionalIndexedAccessType":return C==="objectType"&&m.type==="IndexedAccessType";case"StringLiteral":case"NumericLiteral":case"Literal":if(typeof o.value=="string"&&m.type==="ExpressionStatement"&&!m.directive){let S=D.getParentNode(1);return S.type==="Program"||S.type==="BlockStatement"}return C==="object"&&m.type==="MemberExpression"&&typeof o.value=="number";case"AssignmentExpression":{let S=D.getParentNode(1);return C==="body"&&m.type==="ArrowFunctionExpression"?!0:C==="key"&&(m.type==="ClassProperty"||m.type==="PropertyDefinition")&&m.computed||(C==="init"||C==="update")&&m.type==="ForStatement"?!1:m.type==="ExpressionStatement"?o.left.type==="ObjectPattern":!(C==="key"&&m.type==="TSPropertySignature"||m.type==="AssignmentExpression"||m.type==="SequenceExpression"&&S&&S.type==="ForStatement"&&(S.init===m||S.update===m)||C==="value"&&m.type==="Property"&&S&&S.type==="ObjectPattern"&&S.properties.includes(m)||m.type==="NGChainedExpression")}case"ConditionalExpression":switch(m.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":case"NGPipeExpression":case"ExportDefaultDeclaration":case"AwaitExpression":case"JSXSpreadAttribute":case"TSTypeAssertion":case"TypeCastExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return C==="callee";case"ConditionalExpression":return C==="test";case"MemberExpression":case"OptionalMemberExpression":return C==="object";default:return!1}case"FunctionExpression":switch(m.type){case"NewExpression":case"CallExpression":case"OptionalCallExpression":return C==="callee";case"TaggedTemplateExpression":return!0;default:return!1}case"ArrowFunctionExpression":switch(m.type){case"BinaryExpression":return m.operator!=="|>"||o.extra&&o.extra.parenthesized;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return C==="callee";case"MemberExpression":case"OptionalMemberExpression":return C==="object";case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"BindExpression":case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"AwaitExpression":case"TSTypeAssertion":return!0;case"ConditionalExpression":return C==="test";default:return!1}case"ClassExpression":if(s(o.decorators))return!0;switch(m.type){case"NewExpression":return C==="callee";default:return!1}case"OptionalMemberExpression":case"OptionalCallExpression":{let S=D.getParentNode(1);if(C==="object"&&m.type==="MemberExpression"||C==="callee"&&(m.type==="CallExpression"||m.type==="NewExpression")||m.type==="TSNonNullExpression"&&S.type==="MemberExpression"&&S.object===m)return!0}case"CallExpression":case"MemberExpression":case"TaggedTemplateExpression":case"TSNonNullExpression":if(C==="callee"&&(m.type==="BindExpression"||m.type==="NewExpression")){let S=o;for(;S;)switch(S.type){case"CallExpression":case"OptionalCallExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":case"BindExpression":S=S.object;break;case"TaggedTemplateExpression":S=S.tag;break;case"TSNonNullExpression":S=S.expression;break;default:return!1}}return!1;case"BindExpression":return C==="callee"&&(m.type==="BindExpression"||m.type==="NewExpression")||C==="object"&&f(m);case"NGPipeExpression":return!(m.type==="NGRoot"||m.type==="NGMicrosyntaxExpression"||m.type==="ObjectProperty"&&!(o.extra&&o.extra.parenthesized)||m.type==="ArrayExpression"||c(m)&&m.arguments[C]===o||C==="right"&&m.type==="NGPipeExpression"||C==="property"&&m.type==="MemberExpression"||m.type==="AssignmentExpression");case"JSXFragment":case"JSXElement":return C==="callee"||C==="left"&&m.type==="BinaryExpression"&&m.operator==="<"||m.type!=="ArrayExpression"&&m.type!=="ArrowFunctionExpression"&&m.type!=="AssignmentExpression"&&m.type!=="AssignmentPattern"&&m.type!=="BinaryExpression"&&m.type!=="NewExpression"&&m.type!=="ConditionalExpression"&&m.type!=="ExpressionStatement"&&m.type!=="JsExpressionRoot"&&m.type!=="JSXAttribute"&&m.type!=="JSXElement"&&m.type!=="JSXExpressionContainer"&&m.type!=="JSXFragment"&&m.type!=="LogicalExpression"&&!c(m)&&!E(m)&&m.type!=="ReturnStatement"&&m.type!=="ThrowStatement"&&m.type!=="TypeCastExpression"&&m.type!=="VariableDeclarator"&&m.type!=="YieldExpression";case"TypeAnnotation":return C==="returnType"&&m.type==="ArrowFunctionExpression"&&x(o)}return!1}function F(D){return D.type==="BlockStatement"||D.type==="BreakStatement"||D.type==="ClassBody"||D.type==="ClassDeclaration"||D.type==="ClassMethod"||D.type==="ClassProperty"||D.type==="PropertyDefinition"||D.type==="ClassPrivateProperty"||D.type==="ContinueStatement"||D.type==="DebuggerStatement"||D.type==="DeclareClass"||D.type==="DeclareExportAllDeclaration"||D.type==="DeclareExportDeclaration"||D.type==="DeclareFunction"||D.type==="DeclareInterface"||D.type==="DeclareModule"||D.type==="DeclareModuleExports"||D.type==="DeclareVariable"||D.type==="DoWhileStatement"||D.type==="EnumDeclaration"||D.type==="ExportAllDeclaration"||D.type==="ExportDefaultDeclaration"||D.type==="ExportNamedDeclaration"||D.type==="ExpressionStatement"||D.type==="ForInStatement"||D.type==="ForOfStatement"||D.type==="ForStatement"||D.type==="FunctionDeclaration"||D.type==="IfStatement"||D.type==="ImportDeclaration"||D.type==="InterfaceDeclaration"||D.type==="LabeledStatement"||D.type==="MethodDefinition"||D.type==="ReturnStatement"||D.type==="SwitchStatement"||D.type==="ThrowStatement"||D.type==="TryStatement"||D.type==="TSDeclareFunction"||D.type==="TSEnumDeclaration"||D.type==="TSImportEqualsDeclaration"||D.type==="TSInterfaceDeclaration"||D.type==="TSModuleDeclaration"||D.type==="TSNamespaceExportDeclaration"||D.type==="TypeAlias"||D.type==="VariableDeclaration"||D.type==="WhileStatement"||D.type==="WithStatement"}function N(D){let T=0,m=D.getValue();for(;m;){let C=D.getParentNode(T++);if(C&&C.type==="ForStatement"&&C.init===m)return!0;m=C}return!1}function x(D){return l(D,T=>T.type==="ObjectTypeAnnotation"&&l(T,m=>m.type==="FunctionTypeAnnotation"||void 0)||void 0)}function I(D){switch(D.type){case"ObjectExpression":return!0;default:return!1}}function P(D){let T=D.getValue(),m=D.getParentNode(),C=D.getName();switch(m.type){case"NGPipeExpression":if(typeof C=="number"&&m.arguments[C]===T&&m.arguments.length-1===C)return D.callParent(P);break;case"ObjectProperty":if(C==="value"){let o=D.getParentNode(1);return t(o.properties)===m}break;case"BinaryExpression":case"LogicalExpression":if(C==="right")return D.callParent(P);break;case"ConditionalExpression":if(C==="alternate")return D.callParent(P);break;case"UnaryExpression":if(m.prefix)return D.callParent(P);break}return!1}function $(D,T){let m=D.getValue(),C=D.getParentNode();return m.type==="FunctionExpression"||m.type==="ClassExpression"?C.type==="ExportDefaultDeclaration"||!w(D,T):!i(m)||C.type!=="ExportDefaultDeclaration"&&w(D,T)?!1:D.call(o=>$(o,T),...n(D,m))}r.exports=w}}),Do=te({"src/language-js/print-preprocess.js"(e,r){"use strict";ne();function t(s,a){switch(a.parser){case"json":case"json5":case"json-stringify":case"__js_expression":case"__vue_expression":case"__vue_ts_expression":return Object.assign(Object.assign({},s),{},{type:a.parser.startsWith("__")?"JsExpressionRoot":"JsonRoot",node:s,comments:[],rootMarker:a.rootMarker});default:return s}}r.exports=t}}),rd=te({"src/language-js/print/html-binding.js"(e,r){"use strict";ne();var{builders:{join:t,line:s,group:a,softline:n,indent:u}}=qe();function i(p,d,y){let g=p.getValue();if(d.__onHtmlBindingRoot&&p.getName()===null&&d.__onHtmlBindingRoot(g,d),g.type==="File"){if(d.__isVueForBindingLeft)return p.call(c=>{let f=t([",",s],c.map(y,"params")),{params:E}=c.getValue();return E.length===1?f:["(",u([n,a(f)]),n,")"]},"program","body",0);if(d.__isVueBindings)return p.call(c=>t([",",s],c.map(y,"params")),"program","body",0)}}function l(p){switch(p.type){case"MemberExpression":switch(p.property.type){case"Identifier":case"NumericLiteral":case"StringLiteral":return l(p.object)}return!1;case"Identifier":return!0;default:return!1}}r.exports={isVueEventBindingExpression:l,printHtmlBinding:i}}}),Zn=te({"src/language-js/print/binaryish.js"(e,r){"use strict";ne();var{printComments:t}=et(),{getLast:s}=Ue(),{builders:{join:a,line:n,softline:u,group:i,indent:l,align:p,indentIfBreak:d},utils:{cleanDoc:y,getDocParts:g,isConcat:c}}=qe(),{hasLeadingOwnLineComment:f,isBinaryish:E,isJsxNode:_,shouldFlatten:w,hasComment:F,CommentCheckFlags:N,isCallExpression:x,isMemberExpression:I,isObjectProperty:P,isEnabledHackPipeline:$}=Ke(),D=0;function T(o,h,v){let S=o.getValue(),b=o.getParentNode(),B=o.getParentNode(1),k=S!==b.body&&(b.type==="IfStatement"||b.type==="WhileStatement"||b.type==="SwitchStatement"||b.type==="DoWhileStatement"),M=$(h)&&S.operator==="|>",R=m(o,v,h,!1,k);if(k)return R;if(M)return i(R);if(x(b)&&b.callee===S||b.type==="UnaryExpression"||I(b)&&!b.computed)return i([l([u,...R]),u]);let q=b.type==="ReturnStatement"||b.type==="ThrowStatement"||b.type==="JSXExpressionContainer"&&B.type==="JSXAttribute"||S.operator!=="|"&&b.type==="JsExpressionRoot"||S.type!=="NGPipeExpression"&&(b.type==="NGRoot"&&h.parser==="__ng_binding"||b.type==="NGMicrosyntaxExpression"&&B.type==="NGMicrosyntax"&&B.body.length===1)||S===b.body&&b.type==="ArrowFunctionExpression"||S!==b.body&&b.type==="ForStatement"||b.type==="ConditionalExpression"&&B.type!=="ReturnStatement"&&B.type!=="ThrowStatement"&&!x(B)||b.type==="TemplateLiteral",J=b.type==="AssignmentExpression"||b.type==="VariableDeclarator"||b.type==="ClassProperty"||b.type==="PropertyDefinition"||b.type==="TSAbstractPropertyDefinition"||b.type==="ClassPrivateProperty"||P(b),L=E(S.left)&&w(S.operator,S.left.operator);if(q||C(S)&&!L||!C(S)&&J)return i(R);if(R.length===0)return"";let Q=_(S.right),V=R.findIndex(W=>typeof W!="string"&&!Array.isArray(W)&&W.type==="group"),j=R.slice(0,V===-1?1:V+1),Y=R.slice(j.length,Q?-1:void 0),ie=Symbol("logicalChain-"+ ++D),ee=i([...j,l(Y)],{id:ie});if(!Q)return ee;let ce=s(R);return i([ee,d(ce,{groupId:ie})])}function m(o,h,v,S,b){let B=o.getValue();if(!E(B))return[i(h())];let k=[];w(B.operator,B.left.operator)?k=o.call(Y=>m(Y,h,v,!0,b),"left"):k.push(i(h("left")));let M=C(B),R=(B.operator==="|>"||B.type==="NGPipeExpression"||B.operator==="|"&&v.parser==="__vue_expression")&&!f(v.originalText,B.right),q=B.type==="NGPipeExpression"?"|":B.operator,J=B.type==="NGPipeExpression"&&B.arguments.length>0?i(l([n,": ",a([n,": "],o.map(h,"arguments").map(Y=>p(2,i(Y))))])):"",L;if(M)L=[q," ",h("right"),J];else{let ie=$(v)&&q==="|>"?o.call(ee=>m(ee,h,v,!0,b),"right"):h("right");L=[R?n:"",q,R?" ":n,ie,J]}let Q=o.getParentNode(),V=F(B.left,N.Trailing|N.Line),j=V||!(b&&B.type==="LogicalExpression")&&Q.type!==B.type&&B.left.type!==B.type&&B.right.type!==B.type;if(k.push(R?"":" ",j?i(L,{shouldBreak:V}):L),S&&F(B)){let Y=y(t(o,k,v));return c(Y)||Y.type==="fill"?g(Y):[Y]}return k}function C(o){return o.type!=="LogicalExpression"?!1:!!(o.right.type==="ObjectExpression"&&o.right.properties.length>0||o.right.type==="ArrayExpression"&&o.right.elements.length>0||_(o.right))}r.exports={printBinaryishExpression:T,shouldInlineLogicalExpression:C}}}),nd=te({"src/language-js/print/angular.js"(e,r){"use strict";ne();var{builders:{join:t,line:s,group:a}}=qe(),{hasNode:n,hasComment:u,getComments:i}=Ke(),{printBinaryishExpression:l}=Zn();function p(g,c,f){let E=g.getValue();if(E.type.startsWith("NG"))switch(E.type){case"NGRoot":return[f("node"),u(E.node)?" //"+i(E.node)[0].value.trimEnd():""];case"NGPipeExpression":return l(g,c,f);case"NGChainedExpression":return a(t([";",s],g.map(_=>y(_)?f():["(",f(),")"],"expressions")));case"NGEmptyExpression":return"";case"NGQuotedExpression":return[E.prefix,": ",E.value.trim()];case"NGMicrosyntax":return g.map((_,w)=>[w===0?"":d(_.getValue(),w,E)?" ":[";",s],f()],"body");case"NGMicrosyntaxKey":return/^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/i.test(E.name)?E.name:JSON.stringify(E.name);case"NGMicrosyntaxExpression":return[f("expression"),E.alias===null?"":[" as ",f("alias")]];case"NGMicrosyntaxKeyedExpression":{let _=g.getName(),w=g.getParentNode(),F=d(E,_,w)||(_===1&&(E.key.name==="then"||E.key.name==="else")||_===2&&E.key.name==="else"&&w.body[_-1].type==="NGMicrosyntaxKeyedExpression"&&w.body[_-1].key.name==="then")&&w.body[0].type==="NGMicrosyntaxExpression";return[f("key"),F?" ":": ",f("expression")]}case"NGMicrosyntaxLet":return["let ",f("key"),E.value===null?"":[" = ",f("value")]];case"NGMicrosyntaxAs":return[f("key")," as ",f("alias")];default:throw new Error(`Unknown Angular node type: ${JSON.stringify(E.type)}.`)}}function d(g,c,f){return g.type==="NGMicrosyntaxKeyedExpression"&&g.key.name==="of"&&c===1&&f.body[0].type==="NGMicrosyntaxLet"&&f.body[0].value===null}function y(g){return n(g.getValue(),c=>{switch(c.type){case void 0:return!1;case"CallExpression":case"OptionalCallExpression":case"AssignmentExpression":return!0}})}r.exports={printAngular:p}}}),ud=te({"src/language-js/print/jsx.js"(e,r){"use strict";ne();var{printComments:t,printDanglingComments:s,printCommentsSeparately:a}=et(),{builders:{line:n,hardline:u,softline:i,group:l,indent:p,conditionalGroup:d,fill:y,ifBreak:g,lineSuffixBoundary:c,join:f},utils:{willBreak:E}}=qe(),{getLast:_,getPreferredQuote:w}=Ue(),{isJsxNode:F,rawText:N,isCallExpression:x,isStringLiteral:I,isBinaryish:P,hasComment:$,CommentCheckFlags:D,hasNodeIgnoreComment:T}=Ke(),m=Ot(),{willPrintOwnComments:C}=fo(),o=U=>U===""||U===n||U===u||U===i;function h(U,Z,se){let fe=U.getValue();if(fe.type==="JSXElement"&&de(fe))return[se("openingElement"),se("closingElement")];let ge=fe.type==="JSXElement"?se("openingElement"):se("openingFragment"),he=fe.type==="JSXElement"?se("closingElement"):se("closingFragment");if(fe.children.length===1&&fe.children[0].type==="JSXExpressionContainer"&&(fe.children[0].expression.type==="TemplateLiteral"||fe.children[0].expression.type==="TaggedTemplateExpression"))return[ge,...U.map(se,"children"),he];fe.children=fe.children.map(A=>Fe(A)?{type:"JSXText",value:" ",raw:" "}:A);let we=fe.children.some(F),ke=fe.children.filter(A=>A.type==="JSXExpressionContainer").length>1,Re=fe.type==="JSXElement"&&fe.openingElement.attributes.length>1,Ne=E(ge)||we||Re||ke,Pe=U.getParentNode().rootMarker==="mdx",oe=Z.singleQuote?"{' '}":'{" "}',H=Pe?" ":g([oe,i]," "),pe=fe.openingElement&&fe.openingElement.name&&fe.openingElement.name.name==="fbt",X=v(U,Z,se,H,pe),le=fe.children.some(A=>ue(A));for(let A=X.length-2;A>=0;A--){let G=X[A]===""&&X[A+1]==="",re=X[A]===u&&X[A+1]===""&&X[A+2]===u,ye=(X[A]===i||X[A]===u)&&X[A+1]===""&&X[A+2]===H,Ce=X[A]===H&&X[A+1]===""&&(X[A+2]===i||X[A+2]===u),Be=X[A]===H&&X[A+1]===""&&X[A+2]===H,ve=X[A]===i&&X[A+1]===""&&X[A+2]===u||X[A]===u&&X[A+1]===""&&X[A+2]===i;re&&le||G||ye||Be||ve?X.splice(A,2):Ce&&X.splice(A+1,2)}for(;X.length>0&&o(_(X));)X.pop();for(;X.length>1&&o(X[0])&&o(X[1]);)X.shift(),X.shift();let Ae=[];for(let[A,G]of X.entries()){if(G===H){if(A===1&&X[A-1]===""){if(X.length===2){Ae.push(oe);continue}Ae.push([oe,u]);continue}else if(A===X.length-1){Ae.push(oe);continue}else if(X[A-1]===""&&X[A-2]===u){Ae.push(oe);continue}}Ae.push(G),E(G)&&(Ne=!0)}let Ee=le?y(Ae):l(Ae,{shouldBreak:!0});if(Pe)return Ee;let De=l([ge,p([u,Ee]),u,he]);return Ne?De:d([l([ge,...X,he]),De])}function v(U,Z,se,fe,ge){let he=[];return U.each((we,ke,Re)=>{let Ne=we.getValue();if(Ne.type==="JSXText"){let Pe=N(Ne);if(ue(Ne)){let oe=Pe.split(ce);if(oe[0]===""){if(he.push(""),oe.shift(),/\n/.test(oe[0])){let pe=Re[ke+1];he.push(b(ge,oe[1],Ne,pe))}else he.push(fe);oe.shift()}let H;if(_(oe)===""&&(oe.pop(),H=oe.pop()),oe.length===0)return;for(let[pe,X]of oe.entries())pe%2===1?he.push(n):he.push(X);if(H!==void 0)if(/\n/.test(H)){let pe=Re[ke+1];he.push(b(ge,_(he),Ne,pe))}else he.push(fe);else{let pe=Re[ke+1];he.push(S(ge,_(he),Ne,pe))}}else/\n/.test(Pe)?Pe.match(/\n/g).length>1&&he.push("",u):he.push("",fe)}else{let Pe=se();he.push(Pe);let oe=Re[ke+1];if(oe&&ue(oe)){let pe=K(N(oe)).split(ce)[0];he.push(S(ge,pe,Ne,oe))}else he.push(u)}},"children"),he}function S(U,Z,se,fe){return U?"":se.type==="JSXElement"&&!se.closingElement||fe&&fe.type==="JSXElement"&&!fe.closingElement?Z.length===1?i:u:i}function b(U,Z,se,fe){return U?u:Z.length===1?se.type==="JSXElement"&&!se.closingElement||fe&&fe.type==="JSXElement"&&!fe.closingElement?u:i:u}function B(U,Z,se){let fe=U.getParentNode();if(!fe||{ArrayExpression:!0,JSXAttribute:!0,JSXElement:!0,JSXExpressionContainer:!0,JSXFragment:!0,ExpressionStatement:!0,CallExpression:!0,OptionalCallExpression:!0,ConditionalExpression:!0,JsExpressionRoot:!0}[fe.type])return Z;let he=U.match(void 0,ke=>ke.type==="ArrowFunctionExpression",x,ke=>ke.type==="JSXExpressionContainer"),we=m(U,se);return l([we?"":g("("),p([i,Z]),i,we?"":g(")")],{shouldBreak:he})}function k(U,Z,se){let fe=U.getValue(),ge=[];if(ge.push(se("name")),fe.value){let he;if(I(fe.value)){let ke=N(fe.value).slice(1,-1).replace(/'/g,"'").replace(/"/g,'"'),{escaped:Re,quote:Ne,regex:Pe}=w(ke,Z.jsxSingleQuote?"'":'"');ke=ke.replace(Pe,Re);let{leading:oe,trailing:H}=U.call(()=>a(U,Z),"value");he=[oe,Ne,ke,Ne,H]}else he=se("value");ge.push("=",he)}return ge}function M(U,Z,se){let fe=U.getValue(),ge=(he,we)=>he.type==="JSXEmptyExpression"||!$(he)&&(he.type==="ArrayExpression"||he.type==="ObjectExpression"||he.type==="ArrowFunctionExpression"||he.type==="AwaitExpression"&&(ge(he.argument,he)||he.argument.type==="JSXElement")||x(he)||he.type==="FunctionExpression"||he.type==="TemplateLiteral"||he.type==="TaggedTemplateExpression"||he.type==="DoExpression"||F(we)&&(he.type==="ConditionalExpression"||P(he)));return ge(fe.expression,U.getParentNode(0))?l(["{",se("expression"),c,"}"]):l(["{",p([i,se("expression")]),i,c,"}"])}function R(U,Z,se){let fe=U.getValue(),ge=fe.name&&$(fe.name)||fe.typeParameters&&$(fe.typeParameters);if(fe.selfClosing&&fe.attributes.length===0&&!ge)return["<",se("name"),se("typeParameters")," />"];if(fe.attributes&&fe.attributes.length===1&&fe.attributes[0].value&&I(fe.attributes[0].value)&&!fe.attributes[0].value.value.includes(` +`)&&!ge&&!$(fe.attributes[0]))return l(["<",se("name"),se("typeParameters")," ",...U.map(se,"attributes"),fe.selfClosing?" />":">"]);let he=fe.attributes&&fe.attributes.some(ke=>ke.value&&I(ke.value)&&ke.value.value.includes(` +`)),we=Z.singleAttributePerLine&&fe.attributes.length>1?u:n;return l(["<",se("name"),se("typeParameters"),p(U.map(()=>[we,se()],"attributes")),...q(fe,Z,ge)],{shouldBreak:he})}function q(U,Z,se){return U.selfClosing?[n,"/>"]:J(U,Z,se)?[">"]:[i,">"]}function J(U,Z,se){let fe=U.attributes.length>0&&$(_(U.attributes),D.Trailing);return U.attributes.length===0&&!se||(Z.bracketSameLine||Z.jsxBracketSameLine)&&(!se||U.attributes.length>0)&&!fe}function L(U,Z,se){let fe=U.getValue(),ge=[];ge.push(""),ge}function Q(U,Z){let se=U.getValue(),fe=$(se),ge=$(se,D.Line),he=se.type==="JSXOpeningFragment";return[he?"<":""]}function V(U,Z,se){let fe=t(U,h(U,Z,se),Z);return B(U,fe,Z)}function j(U,Z){let se=U.getValue(),fe=$(se,D.Line);return[s(U,Z,!fe),fe?u:""]}function Y(U,Z,se){let fe=U.getValue();return["{",U.call(ge=>{let he=["...",se()],we=ge.getValue();return!$(we)||!C(ge)?he:[p([i,t(ge,he,Z)]),i]},fe.type==="JSXSpreadAttribute"?"argument":"expression"),"}"]}function ie(U,Z,se){let fe=U.getValue();if(fe.type.startsWith("JSX"))switch(fe.type){case"JSXAttribute":return k(U,Z,se);case"JSXIdentifier":return String(fe.name);case"JSXNamespacedName":return f(":",[se("namespace"),se("name")]);case"JSXMemberExpression":return f(".",[se("object"),se("property")]);case"JSXSpreadAttribute":return Y(U,Z,se);case"JSXSpreadChild":return Y(U,Z,se);case"JSXExpressionContainer":return M(U,Z,se);case"JSXFragment":case"JSXElement":return V(U,Z,se);case"JSXOpeningElement":return R(U,Z,se);case"JSXClosingElement":return L(U,Z,se);case"JSXOpeningFragment":case"JSXClosingFragment":return Q(U,Z);case"JSXEmptyExpression":return j(U,Z);case"JSXText":throw new Error("JSXText should be handled by JSXElement");default:throw new Error(`Unknown JSX node type: ${JSON.stringify(fe.type)}.`)}}var ee=` +\r `,ce=new RegExp("(["+ee+"]+)"),W=new RegExp("[^"+ee+"]"),K=U=>U.replace(new RegExp("(?:^"+ce.source+"|"+ce.source+"$)"),"");function de(U){if(U.children.length===0)return!0;if(U.children.length>1)return!1;let Z=U.children[0];return Z.type==="JSXText"&&!ue(Z)}function ue(U){return U.type==="JSXText"&&(W.test(N(U))||!/\n/.test(N(U)))}function Fe(U){return U.type==="JSXExpressionContainer"&&I(U.expression)&&U.expression.value===" "&&!$(U.expression)}function z(U){let Z=U.getValue(),se=U.getParentNode();if(!se||!Z||!F(Z)||!F(se))return!1;let fe=se.children.indexOf(Z),ge=null;for(let he=fe;he>0;he--){let we=se.children[he-1];if(!(we.type==="JSXText"&&!ue(we))){ge=we;break}}return ge&&ge.type==="JSXExpressionContainer"&&ge.expression.type==="JSXEmptyExpression"&&T(ge.expression)}r.exports={hasJsxIgnoreComment:z,printJsx:ie}}}),ct=te({"src/language-js/print/misc.js"(e,r){"use strict";ne();var{isNonEmptyArray:t}=Ue(),{builders:{indent:s,join:a,line:n}}=qe(),{isFlowAnnotationComment:u}=Ke();function i(_){let w=_.getValue();return!w.optional||w.type==="Identifier"&&w===_.getParentNode().key?"":w.type==="OptionalCallExpression"||w.type==="OptionalMemberExpression"&&w.computed?"?.":"?"}function l(_){return _.getValue().definite||_.match(void 0,(w,F)=>F==="id"&&w.type==="VariableDeclarator"&&w.definite)?"!":""}function p(_,w,F){let N=_.getValue();return N.typeArguments?F("typeArguments"):N.typeParameters?F("typeParameters"):""}function d(_,w,F){let N=_.getValue();if(!N.typeAnnotation)return"";let x=_.getParentNode(),I=x.type==="DeclareFunction"&&x.id===N;return u(w.originalText,N.typeAnnotation)?[" /*: ",F("typeAnnotation")," */"]:[I?"":": ",F("typeAnnotation")]}function y(_,w,F){return["::",F("callee")]}function g(_,w,F){let N=_.getValue();return t(N.modifiers)?[a(" ",_.map(F,"modifiers"))," "]:""}function c(_,w,F){return _.type==="EmptyStatement"?";":_.type==="BlockStatement"||F?[" ",w]:s([n,w])}function f(_,w,F){return["...",F("argument"),d(_,w,F)]}function E(_,w){let F=_.slice(1,-1);if(F.includes('"')||F.includes("'"))return _;let N=w.singleQuote?"'":'"';return N+F+N}r.exports={printOptionalToken:i,printDefiniteToken:l,printFunctionTypeParameters:p,printBindExpressionCallee:y,printTypeScriptModifiers:g,printTypeAnnotation:d,printRestSpread:f,adjustClause:c,printDirective:E}}}),Qt=te({"src/language-js/print/array.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{builders:{line:s,softline:a,hardline:n,group:u,indent:i,ifBreak:l,fill:p}}=qe(),{getLast:d,hasNewline:y}=Ue(),{shouldPrintComma:g,hasComment:c,CommentCheckFlags:f,isNextLineEmpty:E,isNumericLiteral:_,isSignedNumericLiteral:w}=Ke(),{locStart:F}=ut(),{printOptionalToken:N,printTypeAnnotation:x}=ct();function I(T,m,C){let o=T.getValue(),h=[],v=o.type==="TupleExpression"?"#[":"[",S="]";if(o.elements.length===0)c(o,f.Dangling)?h.push(u([v,t(T,m),a,S])):h.push(v,S);else{let b=d(o.elements),B=!(b&&b.type==="RestElement"),k=b===null,M=Symbol("array"),R=!m.__inJestEach&&o.elements.length>1&&o.elements.every((L,Q,V)=>{let j=L&&L.type;if(j!=="ArrayExpression"&&j!=="ObjectExpression")return!1;let Y=V[Q+1];if(Y&&j!==Y.type)return!1;let ie=j==="ArrayExpression"?"elements":"properties";return L[ie]&&L[ie].length>1}),q=P(o,m),J=B?k?",":g(m)?q?l(",","",{groupId:M}):l(","):"":"";h.push(u([v,i([a,q?D(T,m,C,J):[$(T,m,"elements",C),J],t(T,m,!0)]),a,S],{shouldBreak:R,id:M}))}return h.push(N(T),x(T,m,C)),h}function P(T,m){return T.elements.length>1&&T.elements.every(C=>C&&(_(C)||w(C)&&!c(C.argument))&&!c(C,f.Trailing|f.Line,o=>!y(m.originalText,F(o),{backwards:!0})))}function $(T,m,C,o){let h=[],v=[];return T.each(S=>{h.push(v,u(o())),v=[",",s],S.getValue()&&E(S.getValue(),m)&&v.push(a)},C),h}function D(T,m,C,o){let h=[];return T.each((v,S,b)=>{let B=S===b.length-1;h.push([C(),B?o:","]),B||h.push(E(v.getValue(),m)?[n,n]:c(b[S+1],f.Leading|f.Line)?n:s)},"elements"),p(h)}r.exports={printArray:I,printArrayItems:$,isConciselyPrintedArray:P}}}),mo=te({"src/language-js/print/call-arguments.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{getLast:s,getPenultimate:a}=Ue(),{getFunctionParameters:n,hasComment:u,CommentCheckFlags:i,isFunctionCompositionArgs:l,isJsxNode:p,isLongCurriedCallExpression:d,shouldPrintComma:y,getCallArguments:g,iterateCallArgumentsPath:c,isNextLineEmpty:f,isCallExpression:E,isStringLiteral:_,isObjectProperty:w,isTSTypeExpression:F}=Ke(),{builders:{line:N,hardline:x,softline:I,group:P,indent:$,conditionalGroup:D,ifBreak:T,breakParent:m},utils:{willBreak:C}}=qe(),{ArgExpansionBailout:o}=Kt(),{isConciselyPrintedArray:h}=Qt();function v(q,J,L){let Q=q.getValue(),V=Q.type==="ImportExpression",j=g(Q);if(j.length===0)return["(",t(q,J,!0),")"];if(k(j))return["(",L(["arguments",0]),", ",L(["arguments",1]),")"];let Y=!1,ie=!1,ee=j.length-1,ce=[];c(q,(z,U)=>{let Z=z.getNode(),se=[L()];U===ee||(f(Z,J)?(U===0&&(ie=!0),Y=!0,se.push(",",x,x)):se.push(",",N)),ce.push(se)});let W=!(V||Q.callee&&Q.callee.type==="Import")&&y(J,"all")?",":"";function K(){return P(["(",$([N,...ce]),W,N,")"],{shouldBreak:!0})}if(Y||q.getParentNode().type!=="Decorator"&&l(j))return K();let de=B(j),ue=b(j,J);if(de||ue){if(de?ce.slice(1).some(C):ce.slice(0,-1).some(C))return K();let z=[];try{q.try(()=>{c(q,(U,Z)=>{de&&Z===0&&(z=[[L([],{expandFirstArg:!0}),ce.length>1?",":"",ie?x:N,ie?x:""],...ce.slice(1)]),ue&&Z===ee&&(z=[...ce.slice(0,-1),L([],{expandLastArg:!0})])})})}catch(U){if(U instanceof o)return K();throw U}return[ce.some(C)?m:"",D([["(",...z,")"],de?["(",P(z[0],{shouldBreak:!0}),...z.slice(1),")"]:["(",...ce.slice(0,-1),P(s(z),{shouldBreak:!0}),")"],K()])]}let Fe=["(",$([I,...ce]),T(W),I,")"];return d(q)?Fe:P(Fe,{shouldBreak:ce.some(C)||Y})}function S(q){let J=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return q.type==="ObjectExpression"&&(q.properties.length>0||u(q))||q.type==="ArrayExpression"&&(q.elements.length>0||u(q))||q.type==="TSTypeAssertion"&&S(q.expression)||F(q)&&S(q.expression)||q.type==="FunctionExpression"||q.type==="ArrowFunctionExpression"&&(!q.returnType||!q.returnType.typeAnnotation||q.returnType.typeAnnotation.type!=="TSTypeReference"||M(q.body))&&(q.body.type==="BlockStatement"||q.body.type==="ArrowFunctionExpression"&&S(q.body,!0)||q.body.type==="ObjectExpression"||q.body.type==="ArrayExpression"||!J&&(E(q.body)||q.body.type==="ConditionalExpression")||p(q.body))||q.type==="DoExpression"||q.type==="ModuleExpression"}function b(q,J){let L=s(q),Q=a(q);return!u(L,i.Leading)&&!u(L,i.Trailing)&&S(L)&&(!Q||Q.type!==L.type)&&(q.length!==2||Q.type!=="ArrowFunctionExpression"||L.type!=="ArrayExpression")&&!(q.length>1&&L.type==="ArrayExpression"&&h(L,J))}function B(q){if(q.length!==2)return!1;let[J,L]=q;return J.type==="ModuleExpression"&&R(L)?!0:!u(J)&&(J.type==="FunctionExpression"||J.type==="ArrowFunctionExpression"&&J.body.type==="BlockStatement")&&L.type!=="FunctionExpression"&&L.type!=="ArrowFunctionExpression"&&L.type!=="ConditionalExpression"&&!S(L)}function k(q){return q.length===2&&q[0].type==="ArrowFunctionExpression"&&n(q[0]).length===0&&q[0].body.type==="BlockStatement"&&q[1].type==="ArrayExpression"&&!q.some(J=>u(J))}function M(q){return q.type==="BlockStatement"&&(q.body.some(J=>J.type!=="EmptyStatement")||u(q,i.Dangling))}function R(q){return q.type==="ObjectExpression"&&q.properties.length===1&&w(q.properties[0])&&q.properties[0].key.type==="Identifier"&&q.properties[0].key.name==="type"&&_(q.properties[0].value)&&q.properties[0].value.value==="module"}r.exports=v}}),go=te({"src/language-js/print/member.js"(e,r){"use strict";ne();var{builders:{softline:t,group:s,indent:a,label:n}}=qe(),{isNumericLiteral:u,isMemberExpression:i,isCallExpression:l}=Ke(),{printOptionalToken:p}=ct();function d(g,c,f){let E=g.getValue(),_=g.getParentNode(),w,F=0;do w=g.getParentNode(F),F++;while(w&&(i(w)||w.type==="TSNonNullExpression"));let N=f("object"),x=y(g,c,f),I=w&&(w.type==="NewExpression"||w.type==="BindExpression"||w.type==="AssignmentExpression"&&w.left.type!=="Identifier")||E.computed||E.object.type==="Identifier"&&E.property.type==="Identifier"&&!i(_)||(_.type==="AssignmentExpression"||_.type==="VariableDeclarator")&&(l(E.object)&&E.object.arguments.length>0||E.object.type==="TSNonNullExpression"&&l(E.object.expression)&&E.object.expression.arguments.length>0||N.label==="member-chain");return n(N.label==="member-chain"?"member-chain":"member",[N,I?x:s(a([t,x]))])}function y(g,c,f){let E=f("property"),_=g.getValue(),w=p(g);return _.computed?!_.property||u(_.property)?[w,"[",E,"]"]:s([w,"[",a([t,E]),t,"]"]):[w,".",E]}r.exports={printMemberExpression:d,printMemberLookup:y}}}),sd=te({"src/language-js/print/member-chain.js"(e,r){"use strict";ne();var{printComments:t}=et(),{getLast:s,isNextLineEmptyAfterIndex:a,getNextNonSpaceNonCommentCharacterIndex:n}=Ue(),u=Ot(),{isCallExpression:i,isMemberExpression:l,isFunctionOrArrowExpression:p,isLongCurriedCallExpression:d,isMemberish:y,isNumericLiteral:g,isSimpleCallArgument:c,hasComment:f,CommentCheckFlags:E,isNextLineEmpty:_}=Ke(),{locEnd:w}=ut(),{builders:{join:F,hardline:N,group:x,indent:I,conditionalGroup:P,breakParent:$,label:D},utils:{willBreak:T}}=qe(),m=mo(),{printMemberLookup:C}=go(),{printOptionalToken:o,printFunctionTypeParameters:h,printBindExpressionCallee:v}=ct();function S(b,B,k){let M=b.getParentNode(),R=!M||M.type==="ExpressionStatement",q=[];function J(Ne){let{originalText:Pe}=B,oe=n(Pe,Ne,w);return Pe.charAt(oe)===")"?oe!==!1&&a(Pe,oe+1):_(Ne,B)}function L(Ne){let Pe=Ne.getValue();i(Pe)&&(y(Pe.callee)||i(Pe.callee))?(q.unshift({node:Pe,printed:[t(Ne,[o(Ne),h(Ne,B,k),m(Ne,B,k)],B),J(Pe)?N:""]}),Ne.call(oe=>L(oe),"callee")):y(Pe)?(q.unshift({node:Pe,needsParens:u(Ne,B),printed:t(Ne,l(Pe)?C(Ne,B,k):v(Ne,B,k),B)}),Ne.call(oe=>L(oe),"object")):Pe.type==="TSNonNullExpression"?(q.unshift({node:Pe,printed:t(Ne,"!",B)}),Ne.call(oe=>L(oe),"expression")):q.unshift({node:Pe,printed:k()})}let Q=b.getValue();q.unshift({node:Q,printed:[o(b),h(b,B,k),m(b,B,k)]}),Q.callee&&b.call(Ne=>L(Ne),"callee");let V=[],j=[q[0]],Y=1;for(;Y0&&V.push(j);function ee(Ne){return/^[A-Z]|^[$_]+$/.test(Ne)}function ce(Ne){return Ne.length<=B.tabWidth}function W(Ne){let Pe=Ne[1].length>0&&Ne[1][0].node.computed;if(Ne[0].length===1){let H=Ne[0][0].node;return H.type==="ThisExpression"||H.type==="Identifier"&&(ee(H.name)||R&&ce(H.name)||Pe)}let oe=s(Ne[0]).node;return l(oe)&&oe.property.type==="Identifier"&&(ee(oe.property.name)||Pe)}let K=V.length>=2&&!f(V[1][0].node)&&W(V);function de(Ne){let Pe=Ne.map(oe=>oe.printed);return Ne.length>0&&s(Ne).needsParens?["(",...Pe,")"]:Pe}function ue(Ne){return Ne.length===0?"":I(x([N,F(N,Ne.map(de))]))}let Fe=V.map(de),z=Fe,U=K?3:2,Z=V.flat(),se=Z.slice(1,-1).some(Ne=>f(Ne.node,E.Leading))||Z.slice(0,-1).some(Ne=>f(Ne.node,E.Trailing))||V[U]&&f(V[U][0].node,E.Leading);if(V.length<=U&&!se)return d(b)?z:x(z);let fe=s(V[K?1:0]).node,ge=!i(fe)&&J(fe),he=[de(V[0]),K?V.slice(1,2).map(de):"",ge?N:"",ue(V.slice(K?2:1))],we=q.map(Ne=>{let{node:Pe}=Ne;return Pe}).filter(i);function ke(){let Ne=s(s(V)).node,Pe=s(Fe);return i(Ne)&&T(Pe)&&we.slice(0,-1).some(oe=>oe.arguments.some(p))}let Re;return se||we.length>2&&we.some(Ne=>!Ne.arguments.every(Pe=>c(Pe,0)))||Fe.slice(0,-1).some(T)||ke()?Re=x(he):Re=[T(z)||ge?$:"",P([z,he])],D("member-chain",Re)}r.exports=S}}),yo=te({"src/language-js/print/call-expression.js"(e,r){"use strict";ne();var{builders:{join:t,group:s}}=qe(),a=Ot(),{getCallArguments:n,hasFlowAnnotationComment:u,isCallExpression:i,isMemberish:l,isStringLiteral:p,isTemplateOnItsOwnLine:d,isTestCall:y,iterateCallArgumentsPath:g}=Ke(),c=sd(),f=mo(),{printOptionalToken:E,printFunctionTypeParameters:_}=ct();function w(N,x,I){let P=N.getValue(),$=N.getParentNode(),D=P.type==="NewExpression",T=P.type==="ImportExpression",m=E(N),C=n(P);if(C.length>0&&(!T&&!D&&F(P,$)||C.length===1&&d(C[0],x.originalText)||!D&&y(P,$))){let v=[];return g(N,()=>{v.push(I())}),[D?"new ":"",I("callee"),m,_(N,x,I),"(",t(", ",v),")"]}let o=(x.parser==="babel"||x.parser==="babel-flow")&&P.callee&&P.callee.type==="Identifier"&&u(P.callee.trailingComments);if(o&&(P.callee.trailingComments[0].printed=!0),!T&&!D&&l(P.callee)&&!N.call(v=>a(v,x),"callee"))return c(N,x,I);let h=[D?"new ":"",T?"import":I("callee"),m,o?`/*:: ${P.callee.trailingComments[0].value.slice(2).trim()} */`:"",_(N,x,I),f(N,x,I)];return T||i(P.callee)?s(h):h}function F(N,x){if(N.callee.type!=="Identifier")return!1;if(N.callee.name==="require")return!0;if(N.callee.name==="define"){let I=n(N);return x.type==="ExpressionStatement"&&(I.length===1||I.length===2&&I[0].type==="ArrayExpression"||I.length===3&&p(I[0])&&I[1].type==="ArrayExpression")}return!1}r.exports={printCallExpression:w}}}),Zt=te({"src/language-js/print/assignment.js"(e,r){"use strict";ne();var{isNonEmptyArray:t,getStringWidth:s}=Ue(),{builders:{line:a,group:n,indent:u,indentIfBreak:i,lineSuffixBoundary:l},utils:{cleanDoc:p,willBreak:d,canBreak:y}}=qe(),{hasLeadingOwnLineComment:g,isBinaryish:c,isStringLiteral:f,isLiteral:E,isNumericLiteral:_,isCallExpression:w,isMemberExpression:F,getCallArguments:N,rawText:x,hasComment:I,isSignedNumericLiteral:P,isObjectProperty:$}=Ke(),{shouldInlineLogicalExpression:D}=Zn(),{printCallExpression:T}=yo();function m(W,K,de,ue,Fe,z){let U=h(W,K,de,ue,z),Z=de(z,{assignmentLayout:U});switch(U){case"break-after-operator":return n([n(ue),Fe,n(u([a,Z]))]);case"never-break-after-operator":return n([n(ue),Fe," ",Z]);case"fluid":{let se=Symbol("assignment");return n([n(ue),Fe,n(u(a),{id:se}),l,i(Z,{groupId:se})])}case"break-lhs":return n([ue,Fe," ",n(Z)]);case"chain":return[n(ue),Fe,a,Z];case"chain-tail":return[n(ue),Fe,u([a,Z])];case"chain-tail-arrow-chain":return[n(ue),Fe,Z];case"only-left":return ue}}function C(W,K,de){let ue=W.getValue();return m(W,K,de,de("left"),[" ",ue.operator],"right")}function o(W,K,de){return m(W,K,de,de("id")," =","init")}function h(W,K,de,ue,Fe){let z=W.getValue(),U=z[Fe];if(!U)return"only-left";let Z=!b(U);if(W.match(b,B,he=>!Z||he.type!=="ExpressionStatement"&&he.type!=="VariableDeclaration"))return Z?U.type==="ArrowFunctionExpression"&&U.body.type==="ArrowFunctionExpression"?"chain-tail-arrow-chain":"chain-tail":"chain";if(!Z&&b(U.right)||g(K.originalText,U))return"break-after-operator";if(U.type==="CallExpression"&&U.callee.name==="require"||K.parser==="json5"||K.parser==="json")return"never-break-after-operator";if(S(z)||k(z)||q(z)||J(z)&&y(ue))return"break-lhs";let ge=ie(z,ue,K);return W.call(()=>v(W,K,de,ge),Fe)?"break-after-operator":ge||U.type==="TemplateLiteral"||U.type==="TaggedTemplateExpression"||U.type==="BooleanLiteral"||_(U)||U.type==="ClassExpression"?"never-break-after-operator":"fluid"}function v(W,K,de,ue){let Fe=W.getValue();if(c(Fe)&&!D(Fe))return!0;switch(Fe.type){case"StringLiteralTypeAnnotation":case"SequenceExpression":return!0;case"ConditionalExpression":{let{test:Z}=Fe;return c(Z)&&!D(Z)}case"ClassExpression":return t(Fe.decorators)}if(ue)return!1;let z=Fe,U=[];for(;;)if(z.type==="UnaryExpression")z=z.argument,U.push("argument");else if(z.type==="TSNonNullExpression")z=z.expression,U.push("expression");else break;return!!(f(z)||W.call(()=>V(W,K,de),...U))}function S(W){if(B(W)){let K=W.left||W.id;return K.type==="ObjectPattern"&&K.properties.length>2&&K.properties.some(de=>$(de)&&(!de.shorthand||de.value&&de.value.type==="AssignmentPattern"))}return!1}function b(W){return W.type==="AssignmentExpression"}function B(W){return b(W)||W.type==="VariableDeclarator"}function k(W){let K=M(W);if(t(K)){let de=W.type==="TSTypeAliasDeclaration"?"constraint":"bound";if(K.length>1&&K.some(ue=>ue[de]||ue.default))return!0}return!1}function M(W){return R(W)&&W.typeParameters&&W.typeParameters.params?W.typeParameters.params:null}function R(W){return W.type==="TSTypeAliasDeclaration"||W.type==="TypeAlias"}function q(W){if(W.type!=="VariableDeclarator")return!1;let{typeAnnotation:K}=W.id;if(!K||!K.typeAnnotation)return!1;let de=L(K.typeAnnotation);return t(de)&&de.length>1&&de.some(ue=>t(L(ue))||ue.type==="TSConditionalType")}function J(W){return W.type==="VariableDeclarator"&&W.init&&W.init.type==="ArrowFunctionExpression"}function L(W){return Q(W)&&W.typeParameters&&W.typeParameters.params?W.typeParameters.params:null}function Q(W){return W.type==="TSTypeReference"||W.type==="GenericTypeAnnotation"}function V(W,K,de){let ue=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,Fe=W.getValue(),z=()=>V(W,K,de,!0);if(Fe.type==="TSNonNullExpression")return W.call(z,"expression");if(w(Fe)){if(T(W,K,de).label==="member-chain")return!1;let Z=N(Fe);return!(Z.length===0||Z.length===1&&Y(Z[0],K))||ee(Fe,de)?!1:W.call(z,"callee")}return F(Fe)?W.call(z,"object"):ue&&(Fe.type==="Identifier"||Fe.type==="ThisExpression")}var j=.25;function Y(W,K){let{printWidth:de}=K;if(I(W))return!1;let ue=de*j;if(W.type==="ThisExpression"||W.type==="Identifier"&&W.name.length<=ue||P(W)&&!I(W.argument))return!0;let Fe=W.type==="Literal"&&"regex"in W&&W.regex.pattern||W.type==="RegExpLiteral"&&W.pattern;return Fe?Fe.length<=ue:f(W)?x(W).length<=ue:W.type==="TemplateLiteral"?W.expressions.length===0&&W.quasis[0].value.raw.length<=ue&&!W.quasis[0].value.raw.includes(` +`):E(W)}function ie(W,K,de){if(!$(W))return!1;K=p(K);let ue=3;return typeof K=="string"&&s(K)1)return!0;if(de.length===1){let Fe=de[0];if(Fe.type==="TSUnionType"||Fe.type==="UnionTypeAnnotation"||Fe.type==="TSIntersectionType"||Fe.type==="IntersectionTypeAnnotation"||Fe.type==="TSTypeLiteral"||Fe.type==="ObjectTypeAnnotation")return!0}let ue=W.typeParameters?"typeParameters":"typeArguments";if(d(K(ue)))return!0}return!1}function ce(W){return W.typeParameters&&W.typeParameters.params||W.typeArguments&&W.typeArguments.params}r.exports={printVariableDeclarator:o,printAssignmentExpression:C,printAssignment:m,isArrowFunctionVariableDeclarator:J}}}),Ir=te({"src/language-js/print/function-parameters.js"(e,r){"use strict";ne();var{getNextNonSpaceNonCommentCharacter:t}=Ue(),{printDanglingComments:s}=et(),{builders:{line:a,hardline:n,softline:u,group:i,indent:l,ifBreak:p},utils:{removeLines:d,willBreak:y}}=qe(),{getFunctionParameters:g,iterateFunctionParametersPath:c,isSimpleType:f,isTestCall:E,isTypeAnnotationAFunction:_,isObjectType:w,isObjectTypePropertyAFunction:F,hasRestParameter:N,shouldPrintComma:x,hasComment:I,isNextLineEmpty:P}=Ke(),{locEnd:$}=ut(),{ArgExpansionBailout:D}=Kt(),{printFunctionTypeParameters:T}=ct();function m(v,S,b,B,k){let M=v.getValue(),R=g(M),q=k?T(v,b,S):"";if(R.length===0)return[q,"(",s(v,b,!0,ie=>t(b.originalText,ie,$)===")"),")"];let J=v.getParentNode(),L=E(J),Q=C(M),V=[];if(c(v,(ie,ee)=>{let ce=ee===R.length-1;ce&&M.rest&&V.push("..."),V.push(S()),!ce&&(V.push(","),L||Q?V.push(" "):P(R[ee],b)?V.push(n,n):V.push(a))}),B){if(y(q)||y(V))throw new D;return i([d(q),"(",d(V),")"])}let j=R.every(ie=>!ie.decorators);return Q&&j?[q,"(",...V,")"]:L?[q,"(",...V,")"]:(F(J)||_(J)||J.type==="TypeAlias"||J.type==="UnionTypeAnnotation"||J.type==="TSUnionType"||J.type==="IntersectionTypeAnnotation"||J.type==="FunctionTypeAnnotation"&&J.returnType===M)&&R.length===1&&R[0].name===null&&M.this!==R[0]&&R[0].typeAnnotation&&M.typeParameters===null&&f(R[0].typeAnnotation)&&!M.rest?b.arrowParens==="always"?["(",...V,")"]:V:[q,"(",l([u,...V]),p(!N(M)&&x(b,"all")?",":""),u,")"]}function C(v){if(!v)return!1;let S=g(v);if(S.length!==1)return!1;let[b]=S;return!I(b)&&(b.type==="ObjectPattern"||b.type==="ArrayPattern"||b.type==="Identifier"&&b.typeAnnotation&&(b.typeAnnotation.type==="TypeAnnotation"||b.typeAnnotation.type==="TSTypeAnnotation")&&w(b.typeAnnotation.typeAnnotation)||b.type==="FunctionTypeParam"&&w(b.typeAnnotation)||b.type==="AssignmentPattern"&&(b.left.type==="ObjectPattern"||b.left.type==="ArrayPattern")&&(b.right.type==="Identifier"||b.right.type==="ObjectExpression"&&b.right.properties.length===0||b.right.type==="ArrayExpression"&&b.right.elements.length===0))}function o(v){let S;return v.returnType?(S=v.returnType,S.typeAnnotation&&(S=S.typeAnnotation)):v.typeAnnotation&&(S=v.typeAnnotation),S}function h(v,S){let b=o(v);if(!b)return!1;let B=v.typeParameters&&v.typeParameters.params;if(B){if(B.length>1)return!1;if(B.length===1){let k=B[0];if(k.constraint||k.default)return!1}}return g(v).length===1&&(w(b)||y(S))}r.exports={printFunctionParameters:m,shouldHugFunctionParameters:C,shouldGroupFunctionParameters:h}}}),kr=te({"src/language-js/print/type-annotation.js"(e,r){"use strict";ne();var{printComments:t,printDanglingComments:s}=et(),{isNonEmptyArray:a}=Ue(),{builders:{group:n,join:u,line:i,softline:l,indent:p,align:d,ifBreak:y}}=qe(),g=Ot(),{locStart:c}=ut(),{isSimpleType:f,isObjectType:E,hasLeadingOwnLineComment:_,isObjectTypePropertyAFunction:w,shouldPrintComma:F}=Ke(),{printAssignment:N}=Zt(),{printFunctionParameters:x,shouldGroupFunctionParameters:I}=Ir(),{printArrayItems:P}=Qt();function $(b){if(f(b)||E(b))return!0;if(b.type==="UnionTypeAnnotation"||b.type==="TSUnionType"){let B=b.types.filter(M=>M.type==="VoidTypeAnnotation"||M.type==="TSVoidKeyword"||M.type==="NullLiteralTypeAnnotation"||M.type==="TSNullKeyword").length,k=b.types.some(M=>M.type==="ObjectTypeAnnotation"||M.type==="TSTypeLiteral"||M.type==="GenericTypeAnnotation"||M.type==="TSTypeReference");if(b.types.length-1===B&&k)return!0}return!1}function D(b,B,k){let M=B.semi?";":"",R=b.getValue(),q=[];return q.push("opaque type ",k("id"),k("typeParameters")),R.supertype&&q.push(": ",k("supertype")),R.impltype&&q.push(" = ",k("impltype")),q.push(M),q}function T(b,B,k){let M=B.semi?";":"",R=b.getValue(),q=[];R.declare&&q.push("declare "),q.push("type ",k("id"),k("typeParameters"));let J=R.type==="TSTypeAliasDeclaration"?"typeAnnotation":"right";return[N(b,B,k,q," =",J),M]}function m(b,B,k){let M=b.getValue(),R=b.map(k,"types"),q=[],J=!1;for(let L=0;L1&&(J=!0),q.push(" & ",L>1?p(R[L]):R[L]));return n(q)}function C(b,B,k){let M=b.getValue(),R=b.getParentNode(),q=R.type!=="TypeParameterInstantiation"&&R.type!=="TSTypeParameterInstantiation"&&R.type!=="GenericTypeAnnotation"&&R.type!=="TSTypeReference"&&R.type!=="TSTypeAssertion"&&R.type!=="TupleTypeAnnotation"&&R.type!=="TSTupleType"&&!(R.type==="FunctionTypeParam"&&!R.name&&b.getParentNode(1).this!==R)&&!((R.type==="TypeAlias"||R.type==="VariableDeclarator"||R.type==="TSTypeAliasDeclaration")&&_(B.originalText,M)),J=$(M),L=b.map(j=>{let Y=k();return J||(Y=d(2,Y)),t(j,Y,B)},"types");if(J)return u(" | ",L);let Q=q&&!_(B.originalText,M),V=[y([Q?i:"","| "]),u([i,"| "],L)];return g(b,B)?n([p(V),l]):R.type==="TupleTypeAnnotation"&&R.types.length>1||R.type==="TSTupleType"&&R.elementTypes.length>1?n([p([y(["(",l]),V]),l,y(")")]):n(q?p(V):V)}function o(b,B,k){let M=b.getValue(),R=[],q=b.getParentNode(0),J=b.getParentNode(1),L=b.getParentNode(2),Q=M.type==="TSFunctionType"||!((q.type==="ObjectTypeProperty"||q.type==="ObjectTypeInternalSlot")&&!q.variance&&!q.optional&&c(q)===c(M)||q.type==="ObjectTypeCallProperty"||L&&L.type==="DeclareFunction"),V=Q&&(q.type==="TypeAnnotation"||q.type==="TSTypeAnnotation"),j=V&&Q&&(q.type==="TypeAnnotation"||q.type==="TSTypeAnnotation")&&J.type==="ArrowFunctionExpression";w(q)&&(Q=!0,V=!0),j&&R.push("(");let Y=x(b,k,B,!1,!0),ie=M.returnType||M.predicate||M.typeAnnotation?[Q?" => ":": ",k("returnType"),k("predicate"),k("typeAnnotation")]:"",ee=I(M,ie);return R.push(ee?n(Y):Y),ie&&R.push(ie),j&&R.push(")"),n(R)}function h(b,B,k){let M=b.getValue(),R=M.type==="TSTupleType"?"elementTypes":"types",q=M[R],J=a(q),L=J?l:"";return n(["[",p([L,P(b,B,R,k)]),y(J&&F(B,"all")?",":""),s(b,B,!0),L,"]"])}function v(b,B,k){let M=b.getValue(),R=M.type==="OptionalIndexedAccessType"&&M.optional?"?.[":"[";return[k("objectType"),R,k("indexType"),"]"]}function S(b,B,k){let M=b.getValue();return[M.postfix?"":k,B("typeAnnotation"),M.postfix?k:""]}r.exports={printOpaqueType:D,printTypeAlias:T,printIntersectionType:m,printUnionType:C,printFunctionType:o,printTupleType:h,printIndexedAccessType:v,shouldHugType:$,printJSDocType:S}}}),Lr=te({"src/language-js/print/type-parameters.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{builders:{join:s,line:a,hardline:n,softline:u,group:i,indent:l,ifBreak:p}}=qe(),{isTestCall:d,hasComment:y,CommentCheckFlags:g,isTSXFile:c,shouldPrintComma:f,getFunctionParameters:E,isObjectType:_,getTypeScriptMappedTypeModifier:w}=Ke(),{createGroupIdMapper:F}=Ue(),{shouldHugType:N}=kr(),{isArrowFunctionVariableDeclarator:x}=Zt(),I=F("typeParameters");function P(T,m,C,o){let h=T.getValue();if(!h[o])return"";if(!Array.isArray(h[o]))return C(o);let v=T.getNode(2),S=v&&d(v),b=T.match(M=>!(M[o].length===1&&_(M[o][0])),void 0,(M,R)=>R==="typeAnnotation",M=>M.type==="Identifier",x);if(h[o].length===0||!b&&(S||h[o].length===1&&(h[o][0].type==="NullableTypeAnnotation"||N(h[o][0]))))return["<",s(", ",T.map(C,o)),$(T,m),">"];let k=h.type==="TSTypeParameterInstantiation"?"":E(h).length===1&&c(m)&&!h[o][0].constraint&&T.getParentNode().type==="ArrowFunctionExpression"?",":f(m,"all")?p(","):"";return i(["<",l([u,s([",",a],T.map(C,o))]),k,u,">"],{id:I(h)})}function $(T,m){let C=T.getValue();if(!y(C,g.Dangling))return"";let o=!y(C,g.Line),h=t(T,m,o);return o?h:[h,n]}function D(T,m,C){let o=T.getValue(),h=[o.type==="TSTypeParameter"&&o.const?"const ":""],v=T.getParentNode();return v.type==="TSMappedType"?(v.readonly&&h.push(w(v.readonly,"readonly")," "),h.push("[",C("name")),o.constraint&&h.push(" in ",C("constraint")),v.nameType&&h.push(" as ",T.callParent(()=>C("nameType"))),h.push("]"),h):(o.variance&&h.push(C("variance")),o.in&&h.push("in "),o.out&&h.push("out "),h.push(C("name")),o.bound&&h.push(": ",C("bound")),o.constraint&&h.push(" extends ",C("constraint")),o.default&&h.push(" = ",C("default")),h)}r.exports={printTypeParameter:D,printTypeParameters:P,getTypeParametersGroupId:I}}}),er=te({"src/language-js/print/property.js"(e,r){"use strict";ne();var{printComments:t}=et(),{printString:s,printNumber:a}=Ue(),{isNumericLiteral:n,isSimpleNumber:u,isStringLiteral:i,isStringPropSafeToUnquote:l,rawText:p}=Ke(),{printAssignment:d}=Zt(),y=new WeakMap;function g(f,E,_){let w=f.getNode();if(w.computed)return["[",_("key"),"]"];let F=f.getParentNode(),{key:N}=w;if(E.quoteProps==="consistent"&&!y.has(F)){let x=(F.properties||F.body||F.members).some(I=>!I.computed&&I.key&&i(I.key)&&!l(I,E));y.set(F,x)}if((N.type==="Identifier"||n(N)&&u(a(p(N)))&&String(N.value)===a(p(N))&&!(E.parser==="typescript"||E.parser==="babel-ts"))&&(E.parser==="json"||E.quoteProps==="consistent"&&y.get(F))){let x=s(JSON.stringify(N.type==="Identifier"?N.name:N.value.toString()),E);return f.call(I=>t(I,x,E),"key")}return l(w,E)&&(E.quoteProps==="as-needed"||E.quoteProps==="consistent"&&!y.get(F))?f.call(x=>t(x,/^\d/.test(N.value)?a(N.value):N.value,E),"key"):_("key")}function c(f,E,_){return f.getValue().shorthand?_("value"):d(f,E,_,g(f,E,_),":","value")}r.exports={printProperty:c,printPropertyKey:g}}}),Or=te({"src/language-js/print/function.js"(e,r){"use strict";ne();var t=Yt(),{printDanglingComments:s,printCommentsSeparately:a}=et(),n=lt(),{getNextNonSpaceNonCommentCharacterIndex:u}=Ue(),{builders:{line:i,softline:l,group:p,indent:d,ifBreak:y,hardline:g,join:c,indentIfBreak:f},utils:{removeLines:E,willBreak:_}}=qe(),{ArgExpansionBailout:w}=Kt(),{getFunctionParameters:F,hasLeadingOwnLineComment:N,isFlowAnnotationComment:x,isJsxNode:I,isTemplateOnItsOwnLine:P,shouldPrintComma:$,startsWithNoLookaheadToken:D,isBinaryish:T,isLineComment:m,hasComment:C,getComments:o,CommentCheckFlags:h,isCallLikeExpression:v,isCallExpression:S,getCallArguments:b,hasNakedLeftSide:B,getLeftSide:k}=Ke(),{locEnd:M}=ut(),{printFunctionParameters:R,shouldGroupFunctionParameters:q}=Ir(),{printPropertyKey:J}=er(),{printFunctionTypeParameters:L}=ct();function Q(U,Z,se,fe){let ge=U.getValue(),he=!1;if((ge.type==="FunctionDeclaration"||ge.type==="FunctionExpression")&&fe&&fe.expandLastArg){let Pe=U.getParentNode();S(Pe)&&b(Pe).length>1&&(he=!0)}let we=[];ge.type==="TSDeclareFunction"&&ge.declare&&we.push("declare "),ge.async&&we.push("async "),ge.generator?we.push("function* "):we.push("function "),ge.id&&we.push(Z("id"));let ke=R(U,Z,se,he),Re=K(U,Z,se),Ne=q(ge,Re);return we.push(L(U,se,Z),p([Ne?p(ke):ke,Re]),ge.body?" ":"",Z("body")),se.semi&&(ge.declare||!ge.body)&&we.push(";"),we}function V(U,Z,se){let fe=U.getNode(),{kind:ge}=fe,he=fe.value||fe,we=[];return!ge||ge==="init"||ge==="method"||ge==="constructor"?he.async&&we.push("async "):(t.ok(ge==="get"||ge==="set"),we.push(ge," ")),he.generator&&we.push("*"),we.push(J(U,Z,se),fe.optional||fe.key.optional?"?":""),fe===he?we.push(j(U,Z,se)):he.type==="FunctionExpression"?we.push(U.call(ke=>j(ke,Z,se),"value")):we.push(se("value")),we}function j(U,Z,se){let fe=U.getNode(),ge=R(U,se,Z),he=K(U,se,Z),we=q(fe,he),ke=[L(U,Z,se),p([we?p(ge):ge,he])];return fe.body?ke.push(" ",se("body")):ke.push(Z.semi?";":""),ke}function Y(U,Z,se,fe){let ge=U.getValue(),he=[];if(ge.async&&he.push("async "),W(U,Z))he.push(se(["params",0]));else{let ke=fe&&(fe.expandLastArg||fe.expandFirstArg),Re=K(U,se,Z);if(ke){if(_(Re))throw new w;Re=p(E(Re))}he.push(p([R(U,se,Z,ke,!0),Re]))}let we=s(U,Z,!0,ke=>{let Re=u(Z.originalText,ke,M);return Re!==!1&&Z.originalText.slice(Re,Re+2)==="=>"});return we&&he.push(" ",we),he}function ie(U,Z,se,fe,ge,he){let we=U.getName(),ke=U.getParentNode(),Re=v(ke)&&we==="callee",Ne=Boolean(Z&&Z.assignmentLayout),Pe=he.body.type!=="BlockStatement"&&he.body.type!=="ObjectExpression"&&he.body.type!=="SequenceExpression",oe=Re&&Pe||Z&&Z.assignmentLayout==="chain-tail-arrow-chain",H=Symbol("arrow-chain");return he.body.type==="SequenceExpression"&&(ge=p(["(",d([l,ge]),l,")"])),p([p(d([Re||Ne?l:"",p(c([" =>",i],se),{shouldBreak:fe})]),{id:H,shouldBreak:oe})," =>",f(Pe?d([i,ge]):[" ",ge],{groupId:H}),Re?y(l,"",{groupId:H}):""])}function ee(U,Z,se,fe){let ge=U.getValue(),he=[],we=[],ke=!1;if(function H(){let pe=Y(U,Z,se,fe);if(he.length===0)he.push(pe);else{let{leading:X,trailing:le}=a(U,Z);he.push([X,pe]),we.unshift(le)}ke=ke||ge.returnType&&F(ge).length>0||ge.typeParameters||F(ge).some(X=>X.type!=="Identifier"),ge.body.type!=="ArrowFunctionExpression"||fe&&fe.expandLastArg?we.unshift(se("body",fe)):(ge=ge.body,U.call(H,"body"))}(),he.length>1)return ie(U,fe,he,ke,we,ge);let Re=he;if(Re.push(" =>"),!N(Z.originalText,ge.body)&&(ge.body.type==="ArrayExpression"||ge.body.type==="ObjectExpression"||ge.body.type==="BlockStatement"||I(ge.body)||P(ge.body,Z.originalText)||ge.body.type==="ArrowFunctionExpression"||ge.body.type==="DoExpression"))return p([...Re," ",we]);if(ge.body.type==="SequenceExpression")return p([...Re,p([" (",d([l,we]),l,")"])]);let Ne=(fe&&fe.expandLastArg||U.getParentNode().type==="JSXExpressionContainer")&&!C(ge),Pe=fe&&fe.expandLastArg&&$(Z,"all"),oe=ge.body.type==="ConditionalExpression"&&!D(ge.body,H=>H.type==="ObjectExpression");return p([...Re,p([d([i,oe?y("","("):"",we,oe?y("",")"):""]),Ne?[y(Pe?",":""),l]:""])])}function ce(U){let Z=F(U);return Z.length===1&&!U.typeParameters&&!C(U,h.Dangling)&&Z[0].type==="Identifier"&&!Z[0].typeAnnotation&&!C(Z[0])&&!Z[0].optional&&!U.predicate&&!U.returnType}function W(U,Z){if(Z.arrowParens==="always")return!1;if(Z.arrowParens==="avoid"){let se=U.getValue();return ce(se)}return!1}function K(U,Z,se){let fe=U.getValue(),ge=Z("returnType");if(fe.returnType&&x(se.originalText,fe.returnType))return[" /*: ",ge," */"];let he=[ge];return fe.returnType&&fe.returnType.typeAnnotation&&he.unshift(": "),fe.predicate&&he.push(fe.returnType?" ":": ",Z("predicate")),he}function de(U,Z,se){let fe=U.getValue(),ge=Z.semi?";":"",he=[];fe.argument&&(z(Z,fe.argument)?he.push([" (",d([g,se("argument")]),g,")"]):T(fe.argument)||fe.argument.type==="SequenceExpression"?he.push(p([y(" ("," "),d([l,se("argument")]),l,y(")")])):he.push(" ",se("argument")));let we=o(fe),ke=n(we),Re=ke&&m(ke);return Re&&he.push(ge),C(fe,h.Dangling)&&he.push(" ",s(U,Z,!0)),Re||he.push(ge),he}function ue(U,Z,se){return["return",de(U,Z,se)]}function Fe(U,Z,se){return["throw",de(U,Z,se)]}function z(U,Z){if(N(U.originalText,Z))return!0;if(B(Z)){let se=Z,fe;for(;fe=k(se);)if(se=fe,N(U.originalText,se))return!0}return!1}r.exports={printFunction:Q,printArrowFunction:ee,printMethod:V,printReturnStatement:ue,printThrowStatement:Fe,printMethodInternal:j,shouldPrintParamsWithoutParens:W}}}),eu=te({"src/language-js/print/decorators.js"(e,r){"use strict";ne();var{isNonEmptyArray:t,hasNewline:s}=Ue(),{builders:{line:a,hardline:n,join:u,breakParent:i,group:l}}=qe(),{locStart:p,locEnd:d}=ut(),{getParentExportDeclaration:y}=Ke();function g(w,F,N){let x=w.getValue();return l([u(a,w.map(N,"decorators")),E(x,F)?n:a])}function c(w,F,N){return[u(n,w.map(N,"declaration","decorators")),n]}function f(w,F,N){let x=w.getValue(),{decorators:I}=x;if(!t(I)||_(w.getParentNode()))return;let P=x.type==="ClassExpression"||x.type==="ClassDeclaration"||E(x,F);return[y(w)?n:P?i:"",u(a,w.map(N,"decorators")),a]}function E(w,F){return w.decorators.some(N=>s(F.originalText,d(N)))}function _(w){if(w.type!=="ExportDefaultDeclaration"&&w.type!=="ExportNamedDeclaration"&&w.type!=="DeclareExportDeclaration")return!1;let F=w.declaration&&w.declaration.decorators;return t(F)&&p(w)===p(F[0])}r.exports={printDecorators:f,printClassMemberDecorators:g,printDecoratorsBeforeExport:c,hasDecoratorsBeforeExport:_}}}),tr=te({"src/language-js/print/class.js"(e,r){"use strict";ne();var{isNonEmptyArray:t,createGroupIdMapper:s}=Ue(),{printComments:a,printDanglingComments:n}=et(),{builders:{join:u,line:i,hardline:l,softline:p,group:d,indent:y,ifBreak:g}}=qe(),{hasComment:c,CommentCheckFlags:f}=Ke(),{getTypeParametersGroupId:E}=Lr(),{printMethod:_}=Or(),{printOptionalToken:w,printTypeAnnotation:F,printDefiniteToken:N}=ct(),{printPropertyKey:x}=er(),{printAssignment:I}=Zt(),{printClassMemberDecorators:P}=eu();function $(b,B,k){let M=b.getValue(),R=[];M.declare&&R.push("declare "),M.abstract&&R.push("abstract "),R.push("class");let q=M.id&&c(M.id,f.Trailing)||M.typeParameters&&c(M.typeParameters,f.Trailing)||M.superClass&&c(M.superClass)||t(M.extends)||t(M.mixins)||t(M.implements),J=[],L=[];if(M.id&&J.push(" ",k("id")),J.push(k("typeParameters")),M.superClass){let Q=[h(b,B,k),k("superTypeParameters")],V=b.call(j=>["extends ",a(j,Q,B)],"superClass");q?L.push(i,d(V)):L.push(" ",V)}else L.push(o(b,B,k,"extends"));if(L.push(o(b,B,k,"mixins"),o(b,B,k,"implements")),q){let Q;C(M)?Q=[...J,y(L)]:Q=y([...J,L]),R.push(d(Q,{id:D(M)}))}else R.push(...J,...L);return R.push(" ",k("body")),R}var D=s("heritageGroup");function T(b){return g(l,"",{groupId:D(b)})}function m(b){return["superClass","extends","mixins","implements"].filter(B=>Boolean(b[B])).length>1}function C(b){return b.typeParameters&&!c(b.typeParameters,f.Trailing|f.Line)&&!m(b)}function o(b,B,k,M){let R=b.getValue();if(!t(R[M]))return"";let q=n(b,B,!0,J=>{let{marker:L}=J;return L===M});return[C(R)?g(" ",i,{groupId:E(R.typeParameters)}):i,q,q&&l,M,d(y([i,u([",",i],b.map(k,M))]))]}function h(b,B,k){let M=k("superClass");return b.getParentNode().type==="AssignmentExpression"?d(g(["(",y([p,M]),p,")"],M)):M}function v(b,B,k){let M=b.getValue(),R=[];return t(M.decorators)&&R.push(P(b,B,k)),M.accessibility&&R.push(M.accessibility+" "),M.readonly&&R.push("readonly "),M.declare&&R.push("declare "),M.static&&R.push("static "),(M.type==="TSAbstractMethodDefinition"||M.abstract)&&R.push("abstract "),M.override&&R.push("override "),R.push(_(b,B,k)),R}function S(b,B,k){let M=b.getValue(),R=[],q=B.semi?";":"";return t(M.decorators)&&R.push(P(b,B,k)),M.accessibility&&R.push(M.accessibility+" "),M.declare&&R.push("declare "),M.static&&R.push("static "),(M.type==="TSAbstractPropertyDefinition"||M.type==="TSAbstractAccessorProperty"||M.abstract)&&R.push("abstract "),M.override&&R.push("override "),M.readonly&&R.push("readonly "),M.variance&&R.push(k("variance")),(M.type==="ClassAccessorProperty"||M.type==="AccessorProperty"||M.type==="TSAbstractAccessorProperty")&&R.push("accessor "),R.push(x(b,B,k),w(b),N(b),F(b,B,k)),[I(b,B,k,R," =","value"),q]}r.exports={printClass:$,printClassMethod:v,printClassProperty:S,printHardlineAfterHeritage:T}}}),ho=te({"src/language-js/print/interface.js"(e,r){"use strict";ne();var{isNonEmptyArray:t}=Ue(),{builders:{join:s,line:a,group:n,indent:u,ifBreak:i}}=qe(),{hasComment:l,identity:p,CommentCheckFlags:d}=Ke(),{getTypeParametersGroupId:y}=Lr(),{printTypeScriptModifiers:g}=ct();function c(f,E,_){let w=f.getValue(),F=[];w.declare&&F.push("declare "),w.type==="TSInterfaceDeclaration"&&F.push(w.abstract?"abstract ":"",g(f,E,_)),F.push("interface");let N=[],x=[];w.type!=="InterfaceTypeAnnotation"&&N.push(" ",_("id"),_("typeParameters"));let I=w.typeParameters&&!l(w.typeParameters,d.Trailing|d.Line);return t(w.extends)&&x.push(I?i(" ",a,{groupId:y(w.typeParameters)}):a,"extends ",(w.extends.length===1?p:u)(s([",",a],f.map(_,"extends")))),w.id&&l(w.id,d.Trailing)||t(w.extends)?I?F.push(n([...N,u(x)])):F.push(n(u([...N,...x]))):F.push(...N,...x),F.push(" ",_("body")),n(F)}r.exports={printInterface:c}}}),vo=te({"src/language-js/print/module.js"(e,r){"use strict";ne();var{isNonEmptyArray:t}=Ue(),{builders:{softline:s,group:a,indent:n,join:u,line:i,ifBreak:l,hardline:p}}=qe(),{printDanglingComments:d}=et(),{hasComment:y,CommentCheckFlags:g,shouldPrintComma:c,needsHardlineAfterDanglingComment:f,isStringLiteral:E,rawText:_}=Ke(),{locStart:w,hasSameLoc:F}=ut(),{hasDecoratorsBeforeExport:N,printDecoratorsBeforeExport:x}=eu();function I(S,b,B){let k=S.getValue(),M=b.semi?";":"",R=[],{importKind:q}=k;return R.push("import"),q&&q!=="value"&&R.push(" ",q),R.push(m(S,b,B),T(S,b,B),o(S,b,B),M),R}function P(S,b,B){let k=S.getValue(),M=[];N(k)&&M.push(x(S,b,B));let{type:R,exportKind:q,declaration:J}=k;return M.push("export"),(k.default||R==="ExportDefaultDeclaration")&&M.push(" default"),y(k,g.Dangling)&&(M.push(" ",d(S,b,!0)),f(k)&&M.push(p)),J?M.push(" ",B("declaration")):M.push(q==="type"?" type":"",m(S,b,B),T(S,b,B),o(S,b,B)),D(k,b)&&M.push(";"),M}function $(S,b,B){let k=S.getValue(),M=b.semi?";":"",R=[],{exportKind:q,exported:J}=k;return R.push("export"),q==="type"&&R.push(" type"),R.push(" *"),J&&R.push(" as ",B("exported")),R.push(T(S,b,B),o(S,b,B),M),R}function D(S,b){if(!b.semi)return!1;let{type:B,declaration:k}=S,M=S.default||B==="ExportDefaultDeclaration";if(!k)return!0;let{type:R}=k;return!!(M&&R!=="ClassDeclaration"&&R!=="FunctionDeclaration"&&R!=="TSInterfaceDeclaration"&&R!=="DeclareClass"&&R!=="DeclareFunction"&&R!=="TSDeclareFunction"&&R!=="EnumDeclaration")}function T(S,b,B){let k=S.getValue();if(!k.source)return"";let M=[];return C(k,b)||M.push(" from"),M.push(" ",B("source")),M}function m(S,b,B){let k=S.getValue();if(C(k,b))return"";let M=[" "];if(t(k.specifiers)){let R=[],q=[];S.each(()=>{let J=S.getValue().type;if(J==="ExportNamespaceSpecifier"||J==="ExportDefaultSpecifier"||J==="ImportNamespaceSpecifier"||J==="ImportDefaultSpecifier")R.push(B());else if(J==="ExportSpecifier"||J==="ImportSpecifier")q.push(B());else throw new Error(`Unknown specifier type ${JSON.stringify(J)}`)},"specifiers"),M.push(u(", ",R)),q.length>0&&(R.length>0&&M.push(", "),q.length>1||R.length>0||k.specifiers.some(L=>y(L))?M.push(a(["{",n([b.bracketSpacing?i:s,u([",",i],q)]),l(c(b)?",":""),b.bracketSpacing?i:s,"}"])):M.push(["{",b.bracketSpacing?" ":"",...q,b.bracketSpacing?" ":"","}"]))}else M.push("{}");return M}function C(S,b){let{type:B,importKind:k,source:M,specifiers:R}=S;return B!=="ImportDeclaration"||t(R)||k==="type"?!1:!/{\s*}/.test(b.originalText.slice(w(S),w(M)))}function o(S,b,B){let k=S.getNode();return t(k.assertions)?[" assert {",b.bracketSpacing?" ":"",u(", ",S.map(B,"assertions")),b.bracketSpacing?" ":"","}"]:""}function h(S,b,B){let k=S.getNode(),{type:M}=k,R=[],q=M==="ImportSpecifier"?k.importKind:k.exportKind;q&&q!=="value"&&R.push(q," ");let J=M.startsWith("Import"),L=J?"imported":"local",Q=J?"local":"exported",V=k[L],j=k[Q],Y="",ie="";return M==="ExportNamespaceSpecifier"||M==="ImportNamespaceSpecifier"?Y="*":V&&(Y=B(L)),j&&!v(k)&&(ie=B(Q)),R.push(Y,Y&&ie?" as ":"",ie),R}function v(S){if(S.type!=="ImportSpecifier"&&S.type!=="ExportSpecifier")return!1;let{local:b,[S.type==="ImportSpecifier"?"imported":"exported"]:B}=S;if(b.type!==B.type||!F(b,B))return!1;if(E(b))return b.value===B.value&&_(b)===_(B);switch(b.type){case"Identifier":return b.name===B.name;default:return!1}}r.exports={printImportDeclaration:I,printExportDeclaration:P,printExportAllDeclaration:$,printModuleSpecifier:h}}}),tu=te({"src/language-js/print/object.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{builders:{line:s,softline:a,group:n,indent:u,ifBreak:i,hardline:l}}=qe(),{getLast:p,hasNewlineInRange:d,hasNewline:y,isNonEmptyArray:g}=Ue(),{shouldPrintComma:c,hasComment:f,getComments:E,CommentCheckFlags:_,isNextLineEmpty:w}=Ke(),{locStart:F,locEnd:N}=ut(),{printOptionalToken:x,printTypeAnnotation:I}=ct(),{shouldHugFunctionParameters:P}=Ir(),{shouldHugType:$}=kr(),{printHardlineAfterHeritage:D}=tr();function T(m,C,o){let h=C.semi?";":"",v=m.getValue(),S;v.type==="TSTypeLiteral"?S="members":v.type==="TSInterfaceBody"?S="body":S="properties";let b=v.type==="ObjectTypeAnnotation",B=[S];b&&B.push("indexers","callProperties","internalSlots");let k=B.map(W=>v[W][0]).sort((W,K)=>F(W)-F(K))[0],M=m.getParentNode(0),R=b&&M&&(M.type==="InterfaceDeclaration"||M.type==="DeclareInterface"||M.type==="DeclareClass")&&m.getName()==="body",q=v.type==="TSInterfaceBody"||R||v.type==="ObjectPattern"&&M.type!=="FunctionDeclaration"&&M.type!=="FunctionExpression"&&M.type!=="ArrowFunctionExpression"&&M.type!=="ObjectMethod"&&M.type!=="ClassMethod"&&M.type!=="ClassPrivateMethod"&&M.type!=="AssignmentPattern"&&M.type!=="CatchClause"&&v.properties.some(W=>W.value&&(W.value.type==="ObjectPattern"||W.value.type==="ArrayPattern"))||v.type!=="ObjectPattern"&&k&&d(C.originalText,F(v),F(k)),J=R?";":v.type==="TSInterfaceBody"||v.type==="TSTypeLiteral"?i(h,";"):",",L=v.type==="RecordExpression"?"#{":v.exact?"{|":"{",Q=v.exact?"|}":"}",V=[];for(let W of B)m.each(K=>{let de=K.getValue();V.push({node:de,printed:o(),loc:F(de)})},W);B.length>1&&V.sort((W,K)=>W.loc-K.loc);let j=[],Y=V.map(W=>{let K=[...j,n(W.printed)];return j=[J,s],(W.node.type==="TSPropertySignature"||W.node.type==="TSMethodSignature"||W.node.type==="TSConstructSignatureDeclaration")&&f(W.node,_.PrettierIgnore)&&j.shift(),w(W.node,C)&&j.push(l),K});if(v.inexact){let W;if(f(v,_.Dangling)){let K=f(v,_.Line);W=[t(m,C,!0),K||y(C.originalText,N(p(E(v))))?l:s,"..."]}else W=["..."];Y.push([...j,...W])}let ie=p(v[S]),ee=!(v.inexact||ie&&ie.type==="RestElement"||ie&&(ie.type==="TSPropertySignature"||ie.type==="TSCallSignatureDeclaration"||ie.type==="TSMethodSignature"||ie.type==="TSConstructSignatureDeclaration")&&f(ie,_.PrettierIgnore)),ce;if(Y.length===0){if(!f(v,_.Dangling))return[L,Q,I(m,C,o)];ce=n([L,t(m,C),a,Q,x(m),I(m,C,o)])}else ce=[R&&g(v.properties)?D(M):"",L,u([C.bracketSpacing?s:a,...Y]),i(ee&&(J!==","||c(C))?J:""),C.bracketSpacing?s:a,Q,x(m),I(m,C,o)];return m.match(W=>W.type==="ObjectPattern"&&!W.decorators,(W,K,de)=>P(W)&&(K==="params"||K==="parameters"||K==="this"||K==="rest")&&de===0)||m.match($,(W,K)=>K==="typeAnnotation",(W,K)=>K==="typeAnnotation",(W,K,de)=>P(W)&&(K==="params"||K==="parameters"||K==="this"||K==="rest")&&de===0)||!q&&m.match(W=>W.type==="ObjectPattern",W=>W.type==="AssignmentExpression"||W.type==="VariableDeclarator")?ce:n(ce,{shouldBreak:q})}r.exports={printObject:T}}}),id=te({"src/language-js/print/flow.js"(e,r){"use strict";ne();var t=Yt(),{printDanglingComments:s}=et(),{printString:a,printNumber:n}=Ue(),{builders:{hardline:u,softline:i,group:l,indent:p}}=qe(),{getParentExportDeclaration:d,isFunctionNotation:y,isGetterOrSetter:g,rawText:c,shouldPrintComma:f}=Ke(),{locStart:E,locEnd:_}=ut(),{replaceTextEndOfLine:w}=Xt(),{printClass:F}=tr(),{printOpaqueType:N,printTypeAlias:x,printIntersectionType:I,printUnionType:P,printFunctionType:$,printTupleType:D,printIndexedAccessType:T}=kr(),{printInterface:m}=ho(),{printTypeParameter:C,printTypeParameters:o}=Lr(),{printExportDeclaration:h,printExportAllDeclaration:v}=vo(),{printArrayItems:S}=Qt(),{printObject:b}=tu(),{printPropertyKey:B}=er(),{printOptionalToken:k,printTypeAnnotation:M,printRestSpread:R}=ct();function q(L,Q,V){let j=L.getValue(),Y=Q.semi?";":"",ie=[];switch(j.type){case"DeclareClass":return J(L,F(L,Q,V));case"DeclareFunction":return J(L,["function ",V("id"),j.predicate?" ":"",V("predicate"),Y]);case"DeclareModule":return J(L,["module ",V("id")," ",V("body")]);case"DeclareModuleExports":return J(L,["module.exports",": ",V("typeAnnotation"),Y]);case"DeclareVariable":return J(L,["var ",V("id"),Y]);case"DeclareOpaqueType":return J(L,N(L,Q,V));case"DeclareInterface":return J(L,m(L,Q,V));case"DeclareTypeAlias":return J(L,x(L,Q,V));case"DeclareExportDeclaration":return J(L,h(L,Q,V));case"DeclareExportAllDeclaration":return J(L,v(L,Q,V));case"OpaqueType":return N(L,Q,V);case"TypeAlias":return x(L,Q,V);case"IntersectionTypeAnnotation":return I(L,Q,V);case"UnionTypeAnnotation":return P(L,Q,V);case"FunctionTypeAnnotation":return $(L,Q,V);case"TupleTypeAnnotation":return D(L,Q,V);case"GenericTypeAnnotation":return[V("id"),o(L,Q,V,"typeParameters")];case"IndexedAccessType":case"OptionalIndexedAccessType":return T(L,Q,V);case"TypeAnnotation":return V("typeAnnotation");case"TypeParameter":return C(L,Q,V);case"TypeofTypeAnnotation":return["typeof ",V("argument")];case"ExistsTypeAnnotation":return"*";case"EmptyTypeAnnotation":return"empty";case"MixedTypeAnnotation":return"mixed";case"ArrayTypeAnnotation":return[V("elementType"),"[]"];case"BooleanLiteralTypeAnnotation":return String(j.value);case"EnumDeclaration":return["enum ",V("id")," ",V("body")];case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":{if(j.type==="EnumSymbolBody"||j.explicitType){let ee=null;switch(j.type){case"EnumBooleanBody":ee="boolean";break;case"EnumNumberBody":ee="number";break;case"EnumStringBody":ee="string";break;case"EnumSymbolBody":ee="symbol";break}ie.push("of ",ee," ")}if(j.members.length===0&&!j.hasUnknownMembers)ie.push(l(["{",s(L,Q),i,"}"]));else{let ee=j.members.length>0?[u,S(L,Q,"members",V),j.hasUnknownMembers||f(Q)?",":""]:[];ie.push(l(["{",p([...ee,...j.hasUnknownMembers?[u,"..."]:[]]),s(L,Q,!0),u,"}"]))}return ie}case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":return[V("id")," = ",typeof j.init=="object"?V("init"):String(j.init)];case"EnumDefaultedMember":return V("id");case"FunctionTypeParam":{let ee=j.name?V("name"):L.getParentNode().this===j?"this":"";return[ee,k(L),ee?": ":"",V("typeAnnotation")]}case"InterfaceDeclaration":case"InterfaceTypeAnnotation":return m(L,Q,V);case"ClassImplements":case"InterfaceExtends":return[V("id"),V("typeParameters")];case"NullableTypeAnnotation":return["?",V("typeAnnotation")];case"Variance":{let{kind:ee}=j;return t.ok(ee==="plus"||ee==="minus"),ee==="plus"?"+":"-"}case"ObjectTypeCallProperty":return j.static&&ie.push("static "),ie.push(V("value")),ie;case"ObjectTypeIndexer":return[j.static?"static ":"",j.variance?V("variance"):"","[",V("id"),j.id?": ":"",V("key"),"]: ",V("value")];case"ObjectTypeProperty":{let ee="";return j.proto?ee="proto ":j.static&&(ee="static "),[ee,g(j)?j.kind+" ":"",j.variance?V("variance"):"",B(L,Q,V),k(L),y(j)?"":": ",V("value")]}case"ObjectTypeAnnotation":return b(L,Q,V);case"ObjectTypeInternalSlot":return[j.static?"static ":"","[[",V("id"),"]]",k(L),j.method?"":": ",V("value")];case"ObjectTypeSpreadProperty":return R(L,Q,V);case"QualifiedTypeofIdentifier":case"QualifiedTypeIdentifier":return[V("qualification"),".",V("id")];case"StringLiteralTypeAnnotation":return w(a(c(j),Q));case"NumberLiteralTypeAnnotation":t.strictEqual(typeof j.value,"number");case"BigIntLiteralTypeAnnotation":return j.extra?n(j.extra.raw):n(j.raw);case"TypeCastExpression":return["(",V("expression"),M(L,Q,V),")"];case"TypeParameterDeclaration":case"TypeParameterInstantiation":{let ee=o(L,Q,V,"params");if(Q.parser==="flow"){let ce=E(j),W=_(j),K=Q.originalText.lastIndexOf("/*",ce),de=Q.originalText.indexOf("*/",W);if(K!==-1&&de!==-1){let ue=Q.originalText.slice(K+2,de).trim();if(ue.startsWith("::")&&!ue.includes("/*")&&!ue.includes("*/"))return["/*:: ",ee," */"]}}return ee}case"InferredPredicate":return"%checks";case"DeclaredPredicate":return["%checks(",V("value"),")"];case"AnyTypeAnnotation":return"any";case"BooleanTypeAnnotation":return"boolean";case"BigIntTypeAnnotation":return"bigint";case"NullLiteralTypeAnnotation":return"null";case"NumberTypeAnnotation":return"number";case"SymbolTypeAnnotation":return"symbol";case"StringTypeAnnotation":return"string";case"VoidTypeAnnotation":return"void";case"ThisTypeAnnotation":return"this";case"Node":case"Printable":case"SourceLocation":case"Position":case"Statement":case"Function":case"Pattern":case"Expression":case"Declaration":case"Specifier":case"NamedSpecifier":case"Comment":case"MemberTypeAnnotation":case"Type":throw new Error("unprintable type: "+JSON.stringify(j.type))}}function J(L,Q){let V=d(L);return V?(t.strictEqual(V.type,"DeclareExportDeclaration"),Q):["declare ",Q]}r.exports={printFlow:q}}}),ad=te({"src/language-js/utils/is-ts-keyword-type.js"(e,r){"use strict";ne();function t(s){let{type:a}=s;return a.startsWith("TS")&&a.endsWith("Keyword")}r.exports=t}}),Co=te({"src/language-js/print/ternary.js"(e,r){"use strict";ne();var{hasNewlineInRange:t}=Ue(),{isJsxNode:s,getComments:a,isCallExpression:n,isMemberExpression:u,isTSTypeExpression:i}=Ke(),{locStart:l,locEnd:p}=ut(),d=_t(),{builders:{line:y,softline:g,group:c,indent:f,align:E,ifBreak:_,dedent:w,breakParent:F}}=qe();function N(D){let T=[D];for(let m=0;mR[ue]===C),J=R.type===C.type&&!q,L,Q,V=0;do Q=L||C,L=D.getParentNode(V),V++;while(L&&L.type===C.type&&S.every(ue=>L[ue]!==Q));let j=L||R,Y=Q;if(o&&(s(C[S[0]])||s(b)||s(B)||N(Y))){M=!0,J=!0;let ue=z=>[_("("),f([g,z]),g,_(")")],Fe=z=>z.type==="NullLiteral"||z.type==="Literal"&&z.value===null||z.type==="Identifier"&&z.name==="undefined";k.push(" ? ",Fe(b)?m(h):ue(m(h))," : ",B.type===C.type||Fe(B)?m(v):ue(m(v)))}else{let ue=[y,"? ",b.type===C.type?_("","("):"",E(2,m(h)),b.type===C.type?_("",")"):"",y,": ",B.type===C.type?m(v):E(2,m(v))];k.push(R.type!==C.type||R[v]===C||q?ue:T.useTabs?w(f(ue)):E(Math.max(0,T.tabWidth-2),ue))}let ee=[...S.map(ue=>a(C[ue])),a(b),a(B)].flat().some(ue=>d(ue)&&t(T.originalText,l(ue),p(ue))),ce=ue=>R===j?c(ue,{shouldBreak:ee}):ee?[ue,F]:ue,W=!M&&(u(R)||R.type==="NGPipeExpression"&&R.left===C)&&!R.computed,K=P(D),de=ce([x(D,T,m),J?k:f(k),o&&W&&!K?g:""]);return q||K?c([f([g,de]),g]):de}r.exports={printTernary:$}}}),Eo=te({"src/language-js/print/statement.js"(e,r){"use strict";ne();var{builders:{hardline:t}}=qe(),s=Ot(),{getLeftSidePathName:a,hasNakedLeftSide:n,isJsxNode:u,isTheOnlyJsxElementInMarkdown:i,hasComment:l,CommentCheckFlags:p,isNextLineEmpty:d}=Ke(),{shouldPrintParamsWithoutParens:y}=Or();function g(x,I,P,$){let D=x.getValue(),T=[],m=D.type==="ClassBody",C=c(D[$]);return x.each((o,h,v)=>{let S=o.getValue();if(S.type==="EmptyStatement")return;let b=P();!I.semi&&!m&&!i(I,o)&&f(o,I)?l(S,p.Leading)?T.push(P([],{needsSemi:!0})):T.push(";",b):T.push(b),!I.semi&&m&&F(S)&&N(S,v[h+1])&&T.push(";"),S!==C&&(T.push(t),d(S,I)&&T.push(t))},$),T}function c(x){for(let I=x.length-1;I>=0;I--){let P=x[I];if(P.type!=="EmptyStatement")return P}}function f(x,I){return x.getNode().type!=="ExpressionStatement"?!1:x.call($=>E($,I),"expression")}function E(x,I){let P=x.getValue();switch(P.type){case"ParenthesizedExpression":case"TypeCastExpression":case"ArrayExpression":case"ArrayPattern":case"TemplateLiteral":case"TemplateElement":case"RegExpLiteral":return!0;case"ArrowFunctionExpression":{if(!y(x,I))return!0;break}case"UnaryExpression":{let{prefix:$,operator:D}=P;if($&&(D==="+"||D==="-"))return!0;break}case"BindExpression":{if(!P.object)return!0;break}case"Literal":{if(P.regex)return!0;break}default:if(u(P))return!0}return s(x,I)?!0:n(P)?x.call($=>E($,I),...a(x,P)):!1}function _(x,I,P){return g(x,I,P,"body")}function w(x,I,P){return g(x,I,P,"consequent")}var F=x=>{let{type:I}=x;return I==="ClassProperty"||I==="PropertyDefinition"||I==="ClassPrivateProperty"||I==="ClassAccessorProperty"||I==="AccessorProperty"||I==="TSAbstractPropertyDefinition"||I==="TSAbstractAccessorProperty"};function N(x,I){let{type:P,name:$}=x.key;if(!x.computed&&P==="Identifier"&&($==="static"||$==="get"||$==="set"||$==="accessor")&&!x.value&&!x.typeAnnotation)return!0;if(!I||I.static||I.accessibility)return!1;if(!I.computed){let D=I.key&&I.key.name;if(D==="in"||D==="instanceof")return!0}if(F(I)&&I.variance&&!I.static&&!I.declare)return!0;switch(I.type){case"ClassProperty":case"PropertyDefinition":case"TSAbstractPropertyDefinition":return I.computed;case"MethodDefinition":case"TSAbstractMethodDefinition":case"ClassMethod":case"ClassPrivateMethod":{if((I.value?I.value.async:I.async)||I.kind==="get"||I.kind==="set")return!1;let T=I.value?I.value.generator:I.generator;return!!(I.computed||T)}case"TSIndexSignature":return!0}return!1}r.exports={printBody:_,printSwitchCaseConsequent:w}}}),Fo=te({"src/language-js/print/block.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{isNonEmptyArray:s}=Ue(),{builders:{hardline:a,indent:n}}=qe(),{hasComment:u,CommentCheckFlags:i,isNextLineEmpty:l}=Ke(),{printHardlineAfterHeritage:p}=tr(),{printBody:d}=Eo();function y(c,f,E){let _=c.getValue(),w=[];if(_.type==="StaticBlock"&&w.push("static "),_.type==="ClassBody"&&s(_.body)){let N=c.getParentNode();w.push(p(N))}w.push("{");let F=g(c,f,E);if(F)w.push(n([a,F]),a);else{let N=c.getParentNode(),x=c.getParentNode(1);N.type==="ArrowFunctionExpression"||N.type==="FunctionExpression"||N.type==="FunctionDeclaration"||N.type==="ObjectMethod"||N.type==="ClassMethod"||N.type==="ClassPrivateMethod"||N.type==="ForStatement"||N.type==="WhileStatement"||N.type==="DoWhileStatement"||N.type==="DoExpression"||N.type==="CatchClause"&&!x.finalizer||N.type==="TSModuleDeclaration"||N.type==="TSDeclareFunction"||_.type==="StaticBlock"||_.type==="ClassBody"||w.push(a)}return w.push("}"),w}function g(c,f,E){let _=c.getValue(),w=s(_.directives),F=_.body.some(I=>I.type!=="EmptyStatement"),N=u(_,i.Dangling);if(!w&&!F&&!N)return"";let x=[];if(w&&c.each((I,P,$)=>{x.push(E()),(P<$.length-1||F||N)&&(x.push(a),l(I.getValue(),f)&&x.push(a))},"directives"),F&&x.push(d(c,f,E)),N&&x.push(t(c,f,!0)),_.type==="Program"){let I=c.getParentNode();(!I||I.type!=="ModuleExpression")&&x.push(a)}return x}r.exports={printBlock:y,printBlockBody:g}}}),od=te({"src/language-js/print/typescript.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{hasNewlineInRange:s}=Ue(),{builders:{join:a,line:n,hardline:u,softline:i,group:l,indent:p,conditionalGroup:d,ifBreak:y}}=qe(),{isStringLiteral:g,getTypeScriptMappedTypeModifier:c,shouldPrintComma:f,isCallExpression:E,isMemberExpression:_}=Ke(),w=ad(),{locStart:F,locEnd:N}=ut(),{printOptionalToken:x,printTypeScriptModifiers:I}=ct(),{printTernary:P}=Co(),{printFunctionParameters:$,shouldGroupFunctionParameters:D}=Ir(),{printTemplateLiteral:T}=Lt(),{printArrayItems:m}=Qt(),{printObject:C}=tu(),{printClassProperty:o,printClassMethod:h}=tr(),{printTypeParameter:v,printTypeParameters:S}=Lr(),{printPropertyKey:b}=er(),{printFunction:B,printMethodInternal:k}=Or(),{printInterface:M}=ho(),{printBlock:R}=Fo(),{printTypeAlias:q,printIntersectionType:J,printUnionType:L,printFunctionType:Q,printTupleType:V,printIndexedAccessType:j,printJSDocType:Y}=kr();function ie(ee,ce,W){let K=ee.getValue();if(!K.type.startsWith("TS"))return;if(w(K))return K.type.slice(2,-7).toLowerCase();let de=ce.semi?";":"",ue=[];switch(K.type){case"TSThisType":return"this";case"TSTypeAssertion":{let Fe=!(K.expression.type==="ArrayExpression"||K.expression.type==="ObjectExpression"),z=l(["<",p([i,W("typeAnnotation")]),i,">"]),U=[y("("),p([i,W("expression")]),i,y(")")];return Fe?d([[z,W("expression")],[z,l(U,{shouldBreak:!0})],[z,W("expression")]]):l([z,W("expression")])}case"TSDeclareFunction":return B(ee,W,ce);case"TSExportAssignment":return["export = ",W("expression"),de];case"TSModuleBlock":return R(ee,ce,W);case"TSInterfaceBody":case"TSTypeLiteral":return C(ee,ce,W);case"TSTypeAliasDeclaration":return q(ee,ce,W);case"TSQualifiedName":return a(".",[W("left"),W("right")]);case"TSAbstractMethodDefinition":case"TSDeclareMethod":return h(ee,ce,W);case"TSAbstractAccessorProperty":case"TSAbstractPropertyDefinition":return o(ee,ce,W);case"TSInterfaceHeritage":case"TSExpressionWithTypeArguments":return ue.push(W("expression")),K.typeParameters&&ue.push(W("typeParameters")),ue;case"TSTemplateLiteralType":return T(ee,W,ce);case"TSNamedTupleMember":return[W("label"),K.optional?"?":"",": ",W("elementType")];case"TSRestType":return["...",W("typeAnnotation")];case"TSOptionalType":return[W("typeAnnotation"),"?"];case"TSInterfaceDeclaration":return M(ee,ce,W);case"TSClassImplements":return[W("expression"),W("typeParameters")];case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return S(ee,ce,W,"params");case"TSTypeParameter":return v(ee,ce,W);case"TSSatisfiesExpression":case"TSAsExpression":{let Fe=K.type==="TSAsExpression"?"as":"satisfies";ue.push(W("expression"),` ${Fe} `,W("typeAnnotation"));let z=ee.getParentNode();return E(z)&&z.callee===K||_(z)&&z.object===K?l([p([i,...ue]),i]):ue}case"TSArrayType":return[W("elementType"),"[]"];case"TSPropertySignature":return K.readonly&&ue.push("readonly "),ue.push(b(ee,ce,W),x(ee)),K.typeAnnotation&&ue.push(": ",W("typeAnnotation")),K.initializer&&ue.push(" = ",W("initializer")),ue;case"TSParameterProperty":return K.accessibility&&ue.push(K.accessibility+" "),K.export&&ue.push("export "),K.static&&ue.push("static "),K.override&&ue.push("override "),K.readonly&&ue.push("readonly "),ue.push(W("parameter")),ue;case"TSTypeQuery":return["typeof ",W("exprName"),W("typeParameters")];case"TSIndexSignature":{let Fe=ee.getParentNode(),z=K.parameters.length>1?y(f(ce)?",":""):"",U=l([p([i,a([", ",i],ee.map(W,"parameters"))]),z,i]);return[K.export?"export ":"",K.accessibility?[K.accessibility," "]:"",K.static?"static ":"",K.readonly?"readonly ":"",K.declare?"declare ":"","[",K.parameters?U:"",K.typeAnnotation?"]: ":"]",K.typeAnnotation?W("typeAnnotation"):"",Fe.type==="ClassBody"?de:""]}case"TSTypePredicate":return[K.asserts?"asserts ":"",W("parameterName"),K.typeAnnotation?[" is ",W("typeAnnotation")]:""];case"TSNonNullExpression":return[W("expression"),"!"];case"TSImportType":return[K.isTypeOf?"typeof ":"","import(",W(K.parameter?"parameter":"argument"),")",K.qualifier?[".",W("qualifier")]:"",S(ee,ce,W,"typeParameters")];case"TSLiteralType":return W("literal");case"TSIndexedAccessType":return j(ee,ce,W);case"TSConstructSignatureDeclaration":case"TSCallSignatureDeclaration":case"TSConstructorType":{if(K.type==="TSConstructorType"&&K.abstract&&ue.push("abstract "),K.type!=="TSCallSignatureDeclaration"&&ue.push("new "),ue.push(l($(ee,W,ce,!1,!0))),K.returnType||K.typeAnnotation){let Fe=K.type==="TSConstructorType";ue.push(Fe?" => ":": ",W("returnType"),W("typeAnnotation"))}return ue}case"TSTypeOperator":return[K.operator," ",W("typeAnnotation")];case"TSMappedType":{let Fe=s(ce.originalText,F(K),N(K));return l(["{",p([ce.bracketSpacing?n:i,W("typeParameter"),K.optional?c(K.optional,"?"):"",K.typeAnnotation?": ":"",W("typeAnnotation"),y(de)]),t(ee,ce,!0),ce.bracketSpacing?n:i,"}"],{shouldBreak:Fe})}case"TSMethodSignature":{let Fe=K.kind&&K.kind!=="method"?`${K.kind} `:"";ue.push(K.accessibility?[K.accessibility," "]:"",Fe,K.export?"export ":"",K.static?"static ":"",K.readonly?"readonly ":"",K.abstract?"abstract ":"",K.declare?"declare ":"",K.computed?"[":"",W("key"),K.computed?"]":"",x(ee));let z=$(ee,W,ce,!1,!0),U=K.returnType?"returnType":"typeAnnotation",Z=K[U],se=Z?W(U):"",fe=D(K,se);return ue.push(fe?l(z):z),Z&&ue.push(": ",l(se)),l(ue)}case"TSNamespaceExportDeclaration":return ue.push("export as namespace ",W("id")),ce.semi&&ue.push(";"),l(ue);case"TSEnumDeclaration":return K.declare&&ue.push("declare "),K.modifiers&&ue.push(I(ee,ce,W)),K.const&&ue.push("const "),ue.push("enum ",W("id")," "),K.members.length===0?ue.push(l(["{",t(ee,ce),i,"}"])):ue.push(l(["{",p([u,m(ee,ce,"members",W),f(ce,"es5")?",":""]),t(ee,ce,!0),u,"}"])),ue;case"TSEnumMember":return K.computed?ue.push("[",W("id"),"]"):ue.push(W("id")),K.initializer&&ue.push(" = ",W("initializer")),ue;case"TSImportEqualsDeclaration":return K.isExport&&ue.push("export "),ue.push("import "),K.importKind&&K.importKind!=="value"&&ue.push(K.importKind," "),ue.push(W("id")," = ",W("moduleReference")),ce.semi&&ue.push(";"),l(ue);case"TSExternalModuleReference":return["require(",W("expression"),")"];case"TSModuleDeclaration":{let Fe=ee.getParentNode(),z=g(K.id),U=Fe.type==="TSModuleDeclaration",Z=K.body&&K.body.type==="TSModuleDeclaration";if(U)ue.push(".");else{K.declare&&ue.push("declare "),ue.push(I(ee,ce,W));let se=ce.originalText.slice(F(K),F(K.id));K.id.type==="Identifier"&&K.id.name==="global"&&!/namespace|module/.test(se)||ue.push(z||/(?:^|\s)module(?:\s|$)/.test(se)?"module ":"namespace ")}return ue.push(W("id")),Z?ue.push(W("body")):K.body?ue.push(" ",l(W("body"))):ue.push(de),ue}case"TSConditionalType":return P(ee,ce,W);case"TSInferType":return["infer"," ",W("typeParameter")];case"TSIntersectionType":return J(ee,ce,W);case"TSUnionType":return L(ee,ce,W);case"TSFunctionType":return Q(ee,ce,W);case"TSTupleType":return V(ee,ce,W);case"TSTypeReference":return[W("typeName"),S(ee,ce,W,"typeParameters")];case"TSTypeAnnotation":return W("typeAnnotation");case"TSEmptyBodyFunctionExpression":return k(ee,ce,W);case"TSJSDocAllType":return"*";case"TSJSDocUnknownType":return"?";case"TSJSDocNullableType":return Y(ee,W,"?");case"TSJSDocNonNullableType":return Y(ee,W,"!");case"TSInstantiationExpression":return[W("expression"),W("typeParameters")];default:throw new Error(`Unknown TypeScript node type: ${JSON.stringify(K.type)}.`)}}r.exports={printTypescript:ie}}}),ld=te({"src/language-js/print/comment.js"(e,r){"use strict";ne();var{hasNewline:t}=Ue(),{builders:{join:s,hardline:a},utils:{replaceTextEndOfLine:n}}=qe(),{isLineComment:u}=Ke(),{locStart:i,locEnd:l}=ut(),p=_t();function d(c,f){let E=c.getValue();if(u(E))return f.originalText.slice(i(E),l(E)).trimEnd();if(p(E)){if(y(E)){let F=g(E);return E.trailing&&!t(f.originalText,i(E),{backwards:!0})?[a,F]:F}let _=l(E),w=f.originalText.slice(_-3,_)==="*-/";return["/*",n(E.value),w?"*-/":"*/"]}throw new Error("Not a comment: "+JSON.stringify(E))}function y(c){let f=`*${c.value}*`.split(` +`);return f.length>1&&f.every(E=>E.trim()[0]==="*")}function g(c){let f=c.value.split(` +`);return["/*",s(a,f.map((E,_)=>_===0?E.trimEnd():" "+(_{let{marker:Je}=Oe;return Je===C});return[ve("expression"),x(Be,Ce)?"":Ye,Ie?[" ",Ie]:""]}case"ParenthesizedExpression":return!F(xe.expression)&&(xe.expression.type==="ObjectExpression"||xe.expression.type==="ArrayExpression")?["(",ve("expression"),")"]:l(["(",p([i,ve("expression")]),i,")"]);case"AssignmentExpression":return oe(Ce,Be,ve);case"VariableDeclarator":return Pe(Ce,Be,ve);case"BinaryExpression":case"LogicalExpression":return H(Ce,Be,ve);case"AssignmentPattern":return[ve("left")," = ",ve("right")];case"OptionalMemberExpression":case"MemberExpression":return X(Ce,Be,ve);case"MetaProperty":return[ve("meta"),".",ve("property")];case"BindExpression":return xe.object&&Se.push(ve("object")),Se.push(l(p([i,L(Ce,Be,ve)]))),Se;case"Identifier":return[xe.name,J(Ce),Y(Ce),Q(Ce,Be,ve)];case"V8IntrinsicIdentifier":return["%",xe.name];case"SpreadElement":case"SpreadElementPattern":case"SpreadProperty":case"SpreadPropertyPattern":case"RestElement":return j(Ce,Be,ve);case"FunctionDeclaration":case"FunctionExpression":return ge(Ce,ve,Be,ze);case"ArrowFunctionExpression":return he(Ce,Be,ve,ze);case"YieldExpression":return Se.push("yield"),xe.delegate&&Se.push("*"),xe.argument&&Se.push(" ",ve("argument")),Se;case"AwaitExpression":{if(Se.push("await"),xe.argument){Se.push(" ",ve("argument"));let Ie=Ce.getParentNode();if(T(Ie)&&Ie.callee===xe||m(Ie)&&Ie.object===xe){Se=[p([i,...Se]),i];let Oe=Ce.findAncestor(Je=>Je.type==="AwaitExpression"||Je.type==="BlockStatement");if(!Oe||Oe.type!=="AwaitExpression")return l(Se)}}return Se}case"ExportDefaultDeclaration":case"ExportNamedDeclaration":return ce(Ce,Be,ve);case"ExportAllDeclaration":return W(Ce,Be,ve);case"ImportDeclaration":return ee(Ce,Be,ve);case"ImportSpecifier":case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ExportNamespaceSpecifier":case"ImportDefaultSpecifier":case"ExportDefaultSpecifier":return K(Ce,Be,ve);case"ImportAttribute":return[ve("key"),": ",ve("value")];case"Import":return"import";case"BlockStatement":case"StaticBlock":case"ClassBody":return le(Ce,Be,ve);case"ThrowStatement":return Re(Ce,Be,ve);case"ReturnStatement":return ke(Ce,Be,ve);case"NewExpression":case"ImportExpression":case"OptionalCallExpression":case"CallExpression":return Ne(Ce,Be,ve);case"ObjectExpression":case"ObjectPattern":case"RecordExpression":return z(Ce,Be,ve);case"ObjectProperty":case"Property":return xe.method||xe.kind==="get"||xe.kind==="set"?we(Ce,Be,ve):fe(Ce,Be,ve);case"ObjectMethod":return we(Ce,Be,ve);case"Decorator":return["@",ve("expression")];case"ArrayExpression":case"ArrayPattern":case"TupleExpression":return Fe(Ce,Be,ve);case"SequenceExpression":{let Ie=Ce.getParentNode(0);if(Ie.type==="ExpressionStatement"||Ie.type==="ForStatement"){let Oe=[];return Ce.each((Je,be)=>{be===0?Oe.push(ve()):Oe.push(",",p([n,ve()]))},"expressions"),l(Oe)}return l(a([",",n],Ce.map(ve,"expressions")))}case"ThisExpression":return"this";case"Super":return"super";case"Directive":return[ve("value"),Ye];case"DirectiveLiteral":return ie(xe.extra.raw,Be);case"UnaryExpression":return Se.push(xe.operator),/[a-z]$/.test(xe.operator)&&Se.push(" "),F(xe.argument)?Se.push(l(["(",p([i,ve("argument")]),i,")"])):Se.push(ve("argument")),Se;case"UpdateExpression":return Se.push(ve("argument"),xe.operator),xe.prefix&&Se.reverse(),Se;case"ConditionalExpression":return de(Ce,Be,ve);case"VariableDeclaration":{let Ie=Ce.map(ve,"declarations"),Oe=Ce.getParentNode(),Je=Oe.type==="ForStatement"||Oe.type==="ForInStatement"||Oe.type==="ForOfStatement",be=xe.declarations.some(Me=>Me.init),je;return Ie.length===1&&!F(xe.declarations[0])?je=Ie[0]:Ie.length>0&&(je=p(Ie[0])),Se=[xe.declare?"declare ":"",xe.kind,je?[" ",je]:"",p(Ie.slice(1).map(Me=>[",",be&&!Je?u:n,Me]))],Je&&Oe.body!==xe||Se.push(Ye),l(Se)}case"WithStatement":return l(["with (",ve("object"),")",V(xe.body,ve("body"))]);case"IfStatement":{let Ie=V(xe.consequent,ve("consequent")),Oe=l(["if (",l([p([i,ve("test")]),i]),")",Ie]);if(Se.push(Oe),xe.alternate){let Je=F(xe.consequent,N.Trailing|N.Line)||$(xe),be=xe.consequent.type==="BlockStatement"&&!Je;Se.push(be?" ":u),F(xe,N.Dangling)&&Se.push(t(Ce,Be,!0),Je?u:" "),Se.push("else",l(V(xe.alternate,ve("alternate"),xe.alternate.type==="IfStatement")))}return Se}case"ForStatement":{let Ie=V(xe.body,ve("body")),Oe=t(Ce,Be,!0),Je=Oe?[Oe,i]:"";return!xe.init&&!xe.test&&!xe.update?[Je,l(["for (;;)",Ie])]:[Je,l(["for (",l([p([i,ve("init"),";",n,ve("test"),";",n,ve("update")]),i]),")",Ie])]}case"WhileStatement":return l(["while (",l([p([i,ve("test")]),i]),")",V(xe.body,ve("body"))]);case"ForInStatement":return l(["for (",ve("left")," in ",ve("right"),")",V(xe.body,ve("body"))]);case"ForOfStatement":return l(["for",xe.await?" await":""," (",ve("left")," of ",ve("right"),")",V(xe.body,ve("body"))]);case"DoWhileStatement":{let Ie=V(xe.body,ve("body"));return Se=[l(["do",Ie])],xe.body.type==="BlockStatement"?Se.push(" "):Se.push(u),Se.push("while (",l([p([i,ve("test")]),i]),")",Ye),Se}case"DoExpression":return[xe.async?"async ":"","do ",ve("body")];case"BreakStatement":return Se.push("break"),xe.label&&Se.push(" ",ve("label")),Se.push(Ye),Se;case"ContinueStatement":return Se.push("continue"),xe.label&&Se.push(" ",ve("label")),Se.push(Ye),Se;case"LabeledStatement":return xe.body.type==="EmptyStatement"?[ve("label"),":;"]:[ve("label"),": ",ve("body")];case"TryStatement":return["try ",ve("block"),xe.handler?[" ",ve("handler")]:"",xe.finalizer?[" finally ",ve("finalizer")]:""];case"CatchClause":if(xe.param){let Ie=F(xe.param,Je=>!v(Je)||Je.leading&&s(Be.originalText,h(Je))||Je.trailing&&s(Be.originalText,o(Je),{backwards:!0})),Oe=ve("param");return["catch ",Ie?["(",p([i,Oe]),i,") "]:["(",Oe,") "],ve("body")]}return["catch ",ve("body")];case"SwitchStatement":return[l(["switch (",p([i,ve("discriminant")]),i,")"])," {",xe.cases.length>0?p([u,a(u,Ce.map((Ie,Oe,Je)=>{let be=Ie.getValue();return[ve(),Oe!==Je.length-1&&P(be,Be)?u:""]},"cases"))]):"",u,"}"];case"SwitchCase":{xe.test?Se.push("case ",ve("test"),":"):Se.push("default:"),F(xe,N.Dangling)&&Se.push(" ",t(Ce,Be,!0));let Ie=xe.consequent.filter(Oe=>Oe.type!=="EmptyStatement");if(Ie.length>0){let Oe=pe(Ce,Be,ve);Se.push(Ie.length===1&&Ie[0].type==="BlockStatement"?[" ",Oe]:p([u,Oe]))}return Se}case"DebuggerStatement":return["debugger",Ye];case"ClassDeclaration":case"ClassExpression":return U(Ce,Be,ve);case"ClassMethod":case"ClassPrivateMethod":case"MethodDefinition":return Z(Ce,Be,ve);case"ClassProperty":case"PropertyDefinition":case"ClassPrivateProperty":case"ClassAccessorProperty":case"AccessorProperty":return se(Ce,Be,ve);case"TemplateElement":return d(xe.value.raw);case"TemplateLiteral":return ue(Ce,ve,Be);case"TaggedTemplateExpression":return[ve("tag"),ve("typeParameters"),ve("quasi")];case"PrivateIdentifier":return["#",ve("name")];case"PrivateName":return["#",ve("id")];case"InterpreterDirective":return Se.push("#!",xe.value,u),P(xe,Be)&&Se.push(u),Se;case"TopicReference":return"%";case"ArgumentPlaceholder":return"?";case"ModuleExpression":{Se.push("module {");let Ie=ve("body");return Ie&&Se.push(p([u,Ie]),u),Se.push("}"),Se}default:throw new Error("unknown type: "+JSON.stringify(xe.type))}}function ye(Ce){return Ce.type&&!v(Ce)&&!I(Ce)&&Ce.type!=="EmptyStatement"&&Ce.type!=="TemplateElement"&&Ce.type!=="Import"&&Ce.type!=="TSEmptyBodyFunctionExpression"}r.exports={preprocess:_,print:G,embed:y,insertPragma:c,massageAstNode:g,hasPrettierIgnore(Ce){return D(Ce)||M(Ce)},willPrintOwnComments:f.willPrintOwnComments,canAttachComment:ye,printComment:Ee,isBlockComment:v,handleComments:{avoidAstMutation:!0,ownLine:f.handleOwnLineComment,endOfLine:f.handleEndOfLineComment,remaining:f.handleRemainingComment},getCommentChildNodes:f.getCommentChildNodes}}}),fd=te({"src/language-js/printer-estree-json.js"(e,r){"use strict";ne();var{builders:{hardline:t,indent:s,join:a}}=qe(),n=Do();function u(d,y,g){let c=d.getValue();switch(c.type){case"JsonRoot":return[g("node"),t];case"ArrayExpression":{if(c.elements.length===0)return"[]";let f=d.map(()=>d.getValue()===null?"null":g(),"elements");return["[",s([t,a([",",t],f)]),t,"]"]}case"ObjectExpression":return c.properties.length===0?"{}":["{",s([t,a([",",t],d.map(g,"properties"))]),t,"}"];case"ObjectProperty":return[g("key"),": ",g("value")];case"UnaryExpression":return[c.operator==="+"?"":c.operator,g("argument")];case"NullLiteral":return"null";case"BooleanLiteral":return c.value?"true":"false";case"StringLiteral":return JSON.stringify(c.value);case"NumericLiteral":return i(d)?JSON.stringify(String(c.value)):JSON.stringify(c.value);case"Identifier":return i(d)?JSON.stringify(c.name):c.name;case"TemplateLiteral":return g(["quasis",0]);case"TemplateElement":return JSON.stringify(c.value.cooked);default:throw new Error("unknown type: "+JSON.stringify(c.type))}}function i(d){return d.getName()==="key"&&d.getParentNode().type==="ObjectProperty"}var l=new Set(["start","end","extra","loc","comments","leadingComments","trailingComments","innerComments","errors","range","tokens"]);function p(d,y){let{type:g}=d;if(g==="ObjectProperty"){let{key:c}=d;c.type==="Identifier"?y.key={type:"StringLiteral",value:c.name}:c.type==="NumericLiteral"&&(y.key={type:"StringLiteral",value:String(c.value)});return}if(g==="UnaryExpression"&&d.operator==="+")return y.argument;if(g==="ArrayExpression"){for(let[c,f]of d.elements.entries())f===null&&y.elements.splice(c,0,{type:"NullLiteral"});return}if(g==="TemplateLiteral")return{type:"StringLiteral",value:d.quasis[0].value.cooked}}p.ignoredProperties=l,r.exports={preprocess:n,print:u,massageAstNode:p}}}),jt=te({"src/common/common-options.js"(e,r){"use strict";ne();var t="Common";r.exports={bracketSpacing:{since:"0.0.0",category:t,type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},singleQuote:{since:"0.0.0",category:t,type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{since:"1.8.2",category:t,type:"choice",default:[{since:"1.8.2",value:!0},{since:"1.9.0",value:"preserve"}],description:"How to wrap prose.",choices:[{since:"1.9.0",value:"always",description:"Wrap prose if it exceeds the print width."},{since:"1.9.0",value:"never",description:"Do not wrap prose."},{since:"1.9.0",value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{since:"2.4.0",category:t,type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{since:"2.6.0",category:t,type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}}}}),Dd=te({"src/language-js/options.js"(e,r){"use strict";ne();var t=jt(),s="JavaScript";r.exports={arrowParens:{since:"1.9.0",category:s,type:"choice",default:[{since:"1.9.0",value:"avoid"},{since:"2.0.0",value:"always"}],description:"Include parentheses around a sole arrow function parameter.",choices:[{value:"always",description:"Always include parens. Example: `(x) => x`"},{value:"avoid",description:"Omit parens when possible. Example: `x => x`"}]},bracketSameLine:t.bracketSameLine,bracketSpacing:t.bracketSpacing,jsxBracketSameLine:{since:"0.17.0",category:s,type:"boolean",description:"Put > on the last line instead of at a new line.",deprecated:"2.4.0"},semi:{since:"1.0.0",category:s,type:"boolean",default:!0,description:"Print semicolons.",oppositeDescription:"Do not print semicolons, except at the beginning of lines which may need them."},singleQuote:t.singleQuote,jsxSingleQuote:{since:"1.15.0",category:s,type:"boolean",default:!1,description:"Use single quotes in JSX."},quoteProps:{since:"1.17.0",category:s,type:"choice",default:"as-needed",description:"Change when properties in objects are quoted.",choices:[{value:"as-needed",description:"Only add quotes around object properties where required."},{value:"consistent",description:"If at least one property in an object requires quotes, quote all properties."},{value:"preserve",description:"Respect the input use of quotes in object properties."}]},trailingComma:{since:"0.0.0",category:s,type:"choice",default:[{since:"0.0.0",value:!1},{since:"0.19.0",value:"none"},{since:"2.0.0",value:"es5"}],description:"Print trailing commas wherever possible when multi-line.",choices:[{value:"es5",description:"Trailing commas where valid in ES5 (objects, arrays, etc.)"},{value:"none",description:"No trailing commas."},{value:"all",description:"Trailing commas wherever possible (including function arguments)."}]},singleAttributePerLine:t.singleAttributePerLine}}}),md=te({"src/language-js/parse/parsers.js"(){ne()}}),In=te({"node_modules/linguist-languages/data/JavaScript.json"(e,r){r.exports={name:"JavaScript",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:["js","node"],extensions:[".js","._js",".bones",".cjs",".es",".es6",".frag",".gs",".jake",".javascript",".jsb",".jscad",".jsfl",".jslib",".jsm",".jspre",".jss",".jsx",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib"],filenames:["Jakefile"],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell"],languageId:183}}}),dd=te({"node_modules/linguist-languages/data/TypeScript.json"(e,r){r.exports={name:"TypeScript",type:"programming",color:"#3178c6",aliases:["ts"],interpreters:["deno","ts-node"],extensions:[".ts",".cts",".mts"],tmScope:"source.ts",aceMode:"typescript",codemirrorMode:"javascript",codemirrorMimeType:"application/typescript",languageId:378}}}),gd=te({"node_modules/linguist-languages/data/TSX.json"(e,r){r.exports={name:"TSX",type:"programming",color:"#3178c6",group:"TypeScript",extensions:[".tsx"],tmScope:"source.tsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",languageId:94901924}}}),Fa=te({"node_modules/linguist-languages/data/JSON.json"(e,r){r.exports={name:"JSON",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".json",".4DForm",".4DProject",".avsc",".geojson",".gltf",".har",".ice",".JSON-tmLanguage",".jsonl",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","Pipfile.lock","composer.lock","mcmod.info"],languageId:174}}}),yd=te({"node_modules/linguist-languages/data/JSON with Comments.json"(e,r){r.exports={name:"JSON with Comments",type:"data",color:"#292929",group:"JSON",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",aliases:["jsonc"],extensions:[".jsonc",".code-snippets",".sublime-build",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"],filenames:[".babelrc",".devcontainer.json",".eslintrc.json",".jscsrc",".jshintrc",".jslintrc","api-extractor.json","devcontainer.json","jsconfig.json","language-configuration.json","tsconfig.json","tslint.json"],languageId:423}}}),hd=te({"node_modules/linguist-languages/data/JSON5.json"(e,r){r.exports={name:"JSON5",type:"data",color:"#267CB9",extensions:[".json5"],tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"application/json",languageId:175}}}),vd=te({"src/language-js/index.js"(e,r){"use strict";ne();var t=wt(),s=pd(),a=fd(),n=Dd(),u=md(),i=[t(In(),p=>({since:"0.0.0",parsers:["babel","acorn","espree","meriyah","babel-flow","babel-ts","flow","typescript"],vscodeLanguageIds:["javascript","mongo"],interpreters:[...p.interpreters,"zx"],extensions:[...p.extensions.filter(d=>d!==".jsx"),".wxs"]})),t(In(),()=>({name:"Flow",since:"0.0.0",parsers:["flow","babel-flow"],vscodeLanguageIds:["javascript"],aliases:[],filenames:[],extensions:[".js.flow"]})),t(In(),()=>({name:"JSX",since:"0.0.0",parsers:["babel","babel-flow","babel-ts","flow","typescript","espree","meriyah"],vscodeLanguageIds:["javascriptreact"],aliases:void 0,filenames:void 0,extensions:[".jsx"],group:"JavaScript",interpreters:void 0,tmScope:"source.js.jsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",color:void 0})),t(dd(),()=>({since:"1.4.0",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescript"]})),t(gd(),()=>({since:"1.4.0",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescriptreact"]})),t(Fa(),()=>({name:"JSON.stringify",since:"1.13.0",parsers:["json-stringify"],vscodeLanguageIds:["json"],extensions:[".importmap"],filenames:["package.json","package-lock.json","composer.json"]})),t(Fa(),p=>({since:"1.5.0",parsers:["json"],vscodeLanguageIds:["json"],extensions:p.extensions.filter(d=>d!==".jsonl")})),t(yd(),p=>({since:"1.5.0",parsers:["json"],vscodeLanguageIds:["jsonc"],filenames:[...p.filenames,".eslintrc",".swcrc"]})),t(hd(),()=>({since:"1.13.0",parsers:["json5"],vscodeLanguageIds:["json5"]}))],l={estree:s,"estree-json":a};r.exports={languages:i,options:n,printers:l,parsers:u}}}),Cd=te({"src/language-css/clean.js"(e,r){"use strict";ne();var{isFrontMatterNode:t}=Ue(),s=lt(),a=new Set(["raw","raws","sourceIndex","source","before","after","trailingComma"]);function n(i,l,p){if(t(i)&&i.lang==="yaml"&&delete l.value,i.type==="css-comment"&&p.type==="css-root"&&p.nodes.length>0&&((p.nodes[0]===i||t(p.nodes[0])&&p.nodes[1]===i)&&(delete l.text,/^\*\s*@(?:format|prettier)\s*$/.test(i.text))||p.type==="css-root"&&s(p.nodes)===i))return null;if(i.type==="value-root"&&delete l.text,(i.type==="media-query"||i.type==="media-query-list"||i.type==="media-feature-expression")&&delete l.value,i.type==="css-rule"&&delete l.params,i.type==="selector-combinator"&&(l.value=l.value.replace(/\s+/g," ")),i.type==="media-feature"&&(l.value=l.value.replace(/ /g,"")),(i.type==="value-word"&&(i.isColor&&i.isHex||["initial","inherit","unset","revert"].includes(l.value.replace().toLowerCase()))||i.type==="media-feature"||i.type==="selector-root-invalid"||i.type==="selector-pseudo")&&(l.value=l.value.toLowerCase()),i.type==="css-decl"&&(l.prop=l.prop.toLowerCase()),(i.type==="css-atrule"||i.type==="css-import")&&(l.name=l.name.toLowerCase()),i.type==="value-number"&&(l.unit=l.unit.toLowerCase()),(i.type==="media-feature"||i.type==="media-keyword"||i.type==="media-type"||i.type==="media-unknown"||i.type==="media-url"||i.type==="media-value"||i.type==="selector-attribute"||i.type==="selector-string"||i.type==="selector-class"||i.type==="selector-combinator"||i.type==="value-string")&&l.value&&(l.value=u(l.value)),i.type==="selector-attribute"&&(l.attribute=l.attribute.trim(),l.namespace&&typeof l.namespace=="string"&&(l.namespace=l.namespace.trim(),l.namespace.length===0&&(l.namespace=!0)),l.value&&(l.value=l.value.trim().replace(/^["']|["']$/g,""),delete l.quoted)),(i.type==="media-value"||i.type==="media-type"||i.type==="value-number"||i.type==="selector-root-invalid"||i.type==="selector-class"||i.type==="selector-combinator"||i.type==="selector-tag")&&l.value&&(l.value=l.value.replace(/([\d+.Ee-]+)([A-Za-z]*)/g,(d,y,g)=>{let c=Number(y);return Number.isNaN(c)?d:c+g.toLowerCase()})),i.type==="selector-tag"){let d=i.value.toLowerCase();["from","to"].includes(d)&&(l.value=d)}if(i.type==="css-atrule"&&i.name.toLowerCase()==="supports"&&delete l.value,i.type==="selector-unknown"&&delete l.value,i.type==="value-comma_group"){let d=i.groups.findIndex(y=>y.type==="value-number"&&y.unit==="...");d!==-1&&(l.groups[d].unit="",l.groups.splice(d+1,0,{type:"value-word",value:"...",isColor:!1,isHex:!1}))}if(i.type==="value-comma_group"&&i.groups.some(d=>d.type==="value-atword"&&d.value.endsWith("[")||d.type==="value-word"&&d.value.startsWith("]")))return{type:"value-atword",value:i.groups.map(d=>d.value).join(""),group:{open:null,close:null,groups:[],type:"value-paren_group"}}}n.ignoredProperties=a;function u(i){return i.replace(/'/g,'"').replace(/\\([^\dA-Fa-f])/g,"$1")}r.exports=n}}),ru=te({"src/utils/front-matter/print.js"(e,r){"use strict";ne();var{builders:{hardline:t,markAsRoot:s}}=qe();function a(n,u){if(n.lang==="yaml"){let i=n.value.trim(),l=i?u(i,{parser:"yaml"},{stripTrailingHardline:!0}):"";return s([n.startDelimiter,t,l,l?t:"",n.endDelimiter])}}r.exports=a}}),Ed=te({"src/language-css/embed.js"(e,r){"use strict";ne();var{builders:{hardline:t}}=qe(),s=ru();function a(n,u,i){let l=n.getValue();if(l.type==="front-matter"){let p=s(l,i);return p?[p,t]:""}}r.exports=a}}),Ao=te({"src/utils/front-matter/parse.js"(e,r){"use strict";ne();var t=new RegExp("^(?-{3}|\\+{3})(?[^\\n]*)\\n(?:|(?.*?)\\n)(?\\k|\\.{3})[^\\S\\n]*(?:\\n|$)","s");function s(a){let n=a.match(t);if(!n)return{content:a};let{startDelimiter:u,language:i,value:l="",endDelimiter:p}=n.groups,d=i.trim()||"yaml";if(u==="+++"&&(d="toml"),d!=="yaml"&&u!==p)return{content:a};let[y]=n;return{frontMatter:{type:"front-matter",lang:d,value:l,startDelimiter:u,endDelimiter:p,raw:y.replace(/\n$/,"")},content:y.replace(/[^\n]/g," ")+a.slice(y.length)}}r.exports=s}}),Fd=te({"src/language-css/pragma.js"(e,r){"use strict";ne();var t=po(),s=Ao();function a(u){return t.hasPragma(s(u).content)}function n(u){let{frontMatter:i,content:l}=s(u);return(i?i.raw+` + +`:"")+t.insertPragma(l)}r.exports={hasPragma:a,insertPragma:n}}}),Ad=te({"src/language-css/utils/index.js"(e,r){"use strict";ne();var t=new Set(["red","green","blue","alpha","a","rgb","hue","h","saturation","s","lightness","l","whiteness","w","blackness","b","tint","shade","blend","blenda","contrast","hsl","hsla","hwb","hwba"]);function s(z,U){let Z=Array.isArray(U)?U:[U],se=-1,fe;for(;fe=z.getParentNode(++se);)if(Z.includes(fe.type))return se;return-1}function a(z,U){let Z=s(z,U);return Z===-1?null:z.getParentNode(Z)}function n(z){var U;let Z=a(z,"css-decl");return Z==null||(U=Z.prop)===null||U===void 0?void 0:U.toLowerCase()}var u=new Set(["initial","inherit","unset","revert"]);function i(z){return u.has(z.toLowerCase())}function l(z,U){let Z=a(z,"css-atrule");return(Z==null?void 0:Z.name)&&Z.name.toLowerCase().endsWith("keyframes")&&["from","to"].includes(U.toLowerCase())}function p(z){return z.includes("$")||z.includes("@")||z.includes("#")||z.startsWith("%")||z.startsWith("--")||z.startsWith(":--")||z.includes("(")&&z.includes(")")?z:z.toLowerCase()}function d(z,U){var Z;let se=a(z,"value-func");return(se==null||(Z=se.value)===null||Z===void 0?void 0:Z.toLowerCase())===U}function y(z){var U;let Z=a(z,"css-rule"),se=Z==null||(U=Z.raws)===null||U===void 0?void 0:U.selector;return se&&(se.startsWith(":import")||se.startsWith(":export"))}function g(z,U){let Z=Array.isArray(U)?U:[U],se=a(z,"css-atrule");return se&&Z.includes(se.name.toLowerCase())}function c(z){let U=z.getValue(),Z=a(z,"css-atrule");return(Z==null?void 0:Z.name)==="import"&&U.groups[0].value==="url"&&U.groups.length===2}function f(z){return z.type==="value-func"&&z.value.toLowerCase()==="url"}function E(z,U){var Z;let se=(Z=z.getParentNode())===null||Z===void 0?void 0:Z.nodes;return se&&se.indexOf(U)===se.length-1}function _(z){let{selector:U}=z;return U?typeof U=="string"&&/^@.+:.*$/.test(U)||U.value&&/^@.+:.*$/.test(U.value):!1}function w(z){return z.type==="value-word"&&["from","through","end"].includes(z.value)}function F(z){return z.type==="value-word"&&["and","or","not"].includes(z.value)}function N(z){return z.type==="value-word"&&z.value==="in"}function x(z){return z.type==="value-operator"&&z.value==="*"}function I(z){return z.type==="value-operator"&&z.value==="/"}function P(z){return z.type==="value-operator"&&z.value==="+"}function $(z){return z.type==="value-operator"&&z.value==="-"}function D(z){return z.type==="value-operator"&&z.value==="%"}function T(z){return x(z)||I(z)||P(z)||$(z)||D(z)}function m(z){return z.type==="value-word"&&["==","!="].includes(z.value)}function C(z){return z.type==="value-word"&&["<",">","<=",">="].includes(z.value)}function o(z){return z.type==="css-atrule"&&["if","else","for","each","while"].includes(z.name)}function h(z){var U;return((U=z.raws)===null||U===void 0?void 0:U.params)&&/^\(\s*\)$/.test(z.raws.params)}function v(z){return z.name.startsWith("prettier-placeholder")}function S(z){return z.prop.startsWith("@prettier-placeholder")}function b(z,U){return z.value==="$$"&&z.type==="value-func"&&(U==null?void 0:U.type)==="value-word"&&!U.raws.before}function B(z){var U,Z;return((U=z.value)===null||U===void 0?void 0:U.type)==="value-root"&&((Z=z.value.group)===null||Z===void 0?void 0:Z.type)==="value-value"&&z.prop.toLowerCase()==="composes"}function k(z){var U,Z,se;return((U=z.value)===null||U===void 0||(Z=U.group)===null||Z===void 0||(se=Z.group)===null||se===void 0?void 0:se.type)==="value-paren_group"&&z.value.group.group.open!==null&&z.value.group.group.close!==null}function M(z){var U;return((U=z.raws)===null||U===void 0?void 0:U.before)===""}function R(z){var U,Z;return z.type==="value-comma_group"&&((U=z.groups)===null||U===void 0||(Z=U[1])===null||Z===void 0?void 0:Z.type)==="value-colon"}function q(z){var U;return z.type==="value-paren_group"&&((U=z.groups)===null||U===void 0?void 0:U[0])&&R(z.groups[0])}function J(z){var U;let Z=z.getValue();if(Z.groups.length===0)return!1;let se=z.getParentNode(1);if(!q(Z)&&!(se&&q(se)))return!1;let fe=a(z,"css-decl");return!!(fe!=null&&(U=fe.prop)!==null&&U!==void 0&&U.startsWith("$")||q(se)||se.type==="value-func")}function L(z){return z.type==="value-comment"&&z.inline}function Q(z){return z.type==="value-word"&&z.value==="#"}function V(z){return z.type==="value-word"&&z.value==="{"}function j(z){return z.type==="value-word"&&z.value==="}"}function Y(z){return["value-word","value-atword"].includes(z.type)}function ie(z){return(z==null?void 0:z.type)==="value-colon"}function ee(z,U){if(!R(U))return!1;let{groups:Z}=U,se=Z.indexOf(z);return se===-1?!1:ie(Z[se+1])}function ce(z){return z.value&&["not","and","or"].includes(z.value.toLowerCase())}function W(z){return z.type!=="value-func"?!1:t.has(z.value.toLowerCase())}function K(z){return/\/\//.test(z.split(/[\n\r]/).pop())}function de(z){return(z==null?void 0:z.type)==="value-atword"&&z.value.startsWith("prettier-placeholder-")}function ue(z,U){var Z,se;if(((Z=z.open)===null||Z===void 0?void 0:Z.value)!=="("||((se=z.close)===null||se===void 0?void 0:se.value)!==")"||z.groups.some(fe=>fe.type!=="value-comma_group"))return!1;if(U.type==="value-comma_group"){let fe=U.groups.indexOf(z)-1,ge=U.groups[fe];if((ge==null?void 0:ge.type)==="value-word"&&ge.value==="with")return!0}return!1}function Fe(z){var U,Z;return z.type==="value-paren_group"&&((U=z.open)===null||U===void 0?void 0:U.value)==="("&&((Z=z.close)===null||Z===void 0?void 0:Z.value)===")"}r.exports={getAncestorCounter:s,getAncestorNode:a,getPropOfDeclNode:n,maybeToLowerCase:p,insideValueFunctionNode:d,insideICSSRuleNode:y,insideAtRuleNode:g,insideURLFunctionInImportAtRuleNode:c,isKeyframeAtRuleKeywords:l,isWideKeywords:i,isLastNode:E,isSCSSControlDirectiveNode:o,isDetachedRulesetDeclarationNode:_,isRelationalOperatorNode:C,isEqualityOperatorNode:m,isMultiplicationNode:x,isDivisionNode:I,isAdditionNode:P,isSubtractionNode:$,isModuloNode:D,isMathOperatorNode:T,isEachKeywordNode:N,isForKeywordNode:w,isURLFunctionNode:f,isIfElseKeywordNode:F,hasComposesNode:B,hasParensAroundNode:k,hasEmptyRawBefore:M,isDetachedRulesetCallNode:h,isTemplatePlaceholderNode:v,isTemplatePropNode:S,isPostcssSimpleVarNode:b,isKeyValuePairNode:R,isKeyValuePairInParenGroupNode:q,isKeyInValuePairNode:ee,isSCSSMapItemNode:J,isInlineValueCommentNode:L,isHashNode:Q,isLeftCurlyBraceNode:V,isRightCurlyBraceNode:j,isWordNode:Y,isColonNode:ie,isMediaAndSupportsKeywords:ce,isColorAdjusterFuncNode:W,lastLineHasInlineComment:K,isAtWordPlaceholderNode:de,isConfigurationNode:ue,isParenGroupNode:Fe}}}),Sd=te({"src/utils/line-column-to-index.js"(e,r){"use strict";ne(),r.exports=function(t,s){let a=0;for(let n=0;n0?y:""]}case"css-comment":{let Ve=ae.inline||ae.raws.inline,We=je.originalText.slice(Ae(ae),Ee(ae));return Ve?We.trimEnd():We}case"css-rule":return[Me("selector"),ae.important?" !important":"",ae.nodes?[ae.selector&&ae.selector.type==="selector-unknown"&&H(ae.selector.value)?d:" ","{",ae.nodes.length>0?E([y,Ce(be,je,Me)]):"",y,"}",M(ae)?";":""]:";"];case"css-decl":{let Ve=be.getParentNode(),{between:We}=ae.raws,Xe=We.trim(),st=Xe===":",O=W(ae)?N(Me("value")):Me("value");return!st&&H(Xe)&&(O=E([y,_(O)])),[ae.raws.before.replace(/[\s;]/g,""),Ve.type==="css-atrule"&&Ve.variable||o(be)?ae.prop:m(ae.prop),Xe.startsWith("//")?" ":"",Xe,ae.extend?"":" ",De(je)&&ae.extend&&ae.selector?["extend(",Me("selector"),")"]:"",O,ae.raws.important?ae.raws.important.replace(/\s*!\s*important/i," !important"):ae.important?" !important":"",ae.raws.scssDefault?ae.raws.scssDefault.replace(/\s*!default/i," !default"):ae.scssDefault?" !default":"",ae.raws.scssGlobal?ae.raws.scssGlobal.replace(/\s*!global/i," !global"):ae.scssGlobal?" !global":"",ae.nodes?[" {",E([g,Ce(be,je,Me)]),g,"}"]:Z(ae)&&!Ve.raws.semicolon&&je.originalText[Ee(ae)-1]!==";"?"":je.__isHTMLStyleAttribute&&B(be,ae)?w(";"):";"]}case"css-atrule":{let Ve=be.getParentNode(),We=U(ae)&&!Ve.raws.semicolon&&je.originalText[Ee(ae)-1]!==";";if(De(je)){if(ae.mixin)return[Me("selector"),ae.important?" !important":"",We?"":";"];if(ae.function)return[ae.name,Me("params"),We?"":";"];if(ae.variable)return["@",ae.name,": ",ae.value?Me("value"):"",ae.raws.between.trim()?ae.raws.between.trim()+" ":"",ae.nodes?["{",E([ae.nodes.length>0?g:"",Ce(be,je,Me)]),g,"}"]:"",We?"":";"]}return["@",z(ae)||ae.name.endsWith(":")?ae.name:m(ae.name),ae.params?[z(ae)?"":U(ae)?ae.raws.afterName===""?"":ae.name.endsWith(":")?" ":/^\s*\n\s*\n/.test(ae.raws.afterName)?[y,y]:/^\s*\n/.test(ae.raws.afterName)?y:" ":" ",Me("params")]:"",ae.selector?E([" ",Me("selector")]):"",ae.value?c([" ",Me("value"),k(ae)?K(ae)?" ":d:""]):ae.name==="else"?" ":"",ae.nodes?[k(ae)?"":ae.selector&&!ae.selector.nodes&&typeof ae.selector.value=="string"&&H(ae.selector.value)||!ae.selector&&typeof ae.params=="string"&&H(ae.params)?d:" ","{",E([ae.nodes.length>0?g:"",Ce(be,je,Me)]),g,"}"]:We?"":";"]}case"media-query-list":{let Ve=[];return be.each(We=>{let Xe=We.getValue();Xe.type==="media-query"&&Xe.value===""||Ve.push(Me())},"nodes"),c(E(p(d,Ve)))}case"media-query":return[p(" ",be.map(Me,"nodes")),B(be,ae)?"":","];case"media-type":return Oe(Se(ae.value,je));case"media-feature-expression":return ae.nodes?["(",...be.map(Me,"nodes"),")"]:ae.value;case"media-feature":return m(Se(ae.value.replace(/ +/g," "),je));case"media-colon":return[ae.value," "];case"media-value":return Oe(Se(ae.value,je));case"media-keyword":return Se(ae.value,je);case"media-url":return Se(ae.value.replace(/^url\(\s+/gi,"url(").replace(/\s+\)$/g,")"),je);case"media-unknown":return ae.value;case"selector-root":return c([h(be,"custom-selector")?[D(be,"css-atrule").customSelector,d]:"",p([",",h(be,["extend","custom-selector","nest"])?d:y],be.map(Me,"nodes"))]);case"selector-selector":return c(E(be.map(Me,"nodes")));case"selector-comment":return ae.value;case"selector-string":return Se(ae.value,je);case"selector-tag":{let Ve=be.getParentNode(),We=Ve&&Ve.nodes.indexOf(ae),Xe=We&&Ve.nodes[We-1];return[ae.namespace?[ae.namespace===!0?"":ae.namespace.trim(),"|"]:"",Xe.type==="selector-nesting"?ae.value:Oe(S(be,ae.value)?ae.value.toLowerCase():ae.value)]}case"selector-id":return["#",ae.value];case"selector-class":return[".",Oe(Se(ae.value,je))];case"selector-attribute":{var nt;return["[",ae.namespace?[ae.namespace===!0?"":ae.namespace.trim(),"|"]:"",ae.attribute.trim(),(nt=ae.operator)!==null&&nt!==void 0?nt:"",ae.value?Ie(Se(ae.value.trim(),je),je):"",ae.insensitive?" i":"","]"]}case"selector-combinator":{if(ae.value==="+"||ae.value===">"||ae.value==="~"||ae.value===">>>"){let Xe=be.getParentNode();return[Xe.type==="selector-selector"&&Xe.nodes[0]===ae?"":d,ae.value,B(be,ae)?"":" "]}let Ve=ae.value.trim().startsWith("(")?d:"",We=Oe(Se(ae.value.trim(),je))||d;return[Ve,We]}case"selector-universal":return[ae.namespace?[ae.namespace===!0?"":ae.namespace.trim(),"|"]:"",ae.value];case"selector-pseudo":return[m(ae.value),l(ae.nodes)?c(["(",E([g,p([",",d],be.map(Me,"nodes"))]),g,")"]):""];case"selector-nesting":return ae.value;case"selector-unknown":{let Ve=D(be,"css-rule");if(Ve&&Ve.isSCSSNesterProperty)return Oe(Se(m(ae.value),je));let We=be.getParentNode();if(We.raws&&We.raws.selector){let st=Ae(We),O=st+We.raws.selector.length;return je.originalText.slice(st,O).trim()}let Xe=be.getParentNode(1);if(We.type==="value-paren_group"&&Xe&&Xe.type==="value-func"&&Xe.value==="selector"){let st=Ee(We.open)+1,O=Ae(We.close),me=je.originalText.slice(st,O).trim();return H(me)?[F,me]:me}return ae.value}case"value-value":case"value-root":return Me("group");case"value-comment":return je.originalText.slice(Ae(ae),Ee(ae));case"value-comma_group":{let Ve=be.getParentNode(),We=be.getParentNode(1),Xe=T(be),st=Xe&&Ve.type==="value-value"&&(Xe==="grid"||Xe.startsWith("grid-template")),O=D(be,"css-atrule"),me=O&&k(O),_e=ae.groups.some(at=>ge(at)),He=be.map(Me,"groups"),Ge=[],it=C(be,"url"),Qe=!1,rt=!1;for(let at=0;atRr:Mr!==-1?Qe=!0:Rr!==-1&&(Qe=!1)}if(Qe||Ne(Le)||Ne($e)||Le.type==="value-atword"&&(Le.value===""||Le.value.endsWith("["))||$e.type==="value-word"&&$e.value.startsWith("]")||Le.value==="~"||Le.value&&Le.value.includes("\\")&&$e&&$e.type!=="value-comment"||Ze&&Ze.value&&Ze.value.indexOf("\\")===Ze.value.length-1&&Le.type==="value-operator"&&Le.value==="/"||Le.value==="\\"||se(Le,$e)||he(Le)||we(Le)||ke($e)||we($e)&&de($e)||ke(Le)&&de($e)||Le.value==="--"&&he($e))continue;let qr=j(Le),su=j($e);if((qr&&he($e)||su&&ke(Le))&&de($e)||!Ze&&L(Le)||C(be,"calc")&&(Q(Le)||Q($e)||V(Le)||V($e))&&de($e))continue;let No=(Q(Le)||V(Le))&&at===0&&($e.type==="value-number"||$e.isHex)&&We&&oe(We)&&!de($e),iu=nr&&nr.type==="value-func"||nr&&Re(nr)||Le.type==="value-func"||Re(Le),au=$e.type==="value-func"||Re($e)||Ze&&Ze.type==="value-func"||Ze&&Re(Ze);if(!(!(J($e)||J(Le))&&!C(be,"calc")&&!No&&(L($e)&&!iu||L(Le)&&!au||Q($e)&&!iu||Q(Le)&&!au||V($e)||V(Le))&&(de($e)||qr&&(!Ze||Ze&&j(Ze))))&&!((je.parser==="scss"||je.parser==="less")&&qr&&Le.value==="-"&&le($e)&&Ee(Le)===Ae($e.open)&&$e.open.value==="(")){if(ge(Le)){if(Ve.type==="value-paren_group"){Ge.push(_(y));continue}Ge.push(y);continue}if(me&&(q($e)||R($e)||ce($e)||Y(Le)||ie(Le))){Ge.push(" ");continue}if(O&&O.name.toLowerCase()==="namespace"){Ge.push(" ");continue}if(st){Le.source&&$e.source&&Le.source.start.line!==$e.source.start.line?(Ge.push(y),rt=!0):Ge.push(" ");continue}if(su){Ge.push(" ");continue}if(!($e&&$e.value==="...")&&!(pe(Le)&&pe($e)&&Ee(Le)===Ae($e))){if(pe(Le)&&le($e)&&Ee(Le)===Ae($e.open)){Ge.push(g);continue}if(Le.value==="with"&&le($e)){Ge.push(" ");continue}(tt=Le.value)!==null&&tt!==void 0&&tt.endsWith("#")&&$e.value==="{"&&le($e.group)||Ge.push(d)}}}return _e&&Ge.push(F),rt&&Ge.unshift(y),me?c(E(Ge)):v(be)?c(f(Ge)):c(E(f(Ge)))}case"value-paren_group":{let Ve=be.getParentNode();if(Ve&&ee(Ve)&&(ae.groups.length===1||ae.groups.length>0&&ae.groups[0].type==="value-comma_group"&&ae.groups[0].groups.length>0&&ae.groups[0].groups[0].type==="value-word"&&ae.groups[0].groups[0].value.startsWith("data:")))return[ae.open?Me("open"):"",p(",",be.map(Me,"groups")),ae.close?Me("close"):""];if(!ae.open){let it=be.map(Me,"groups"),Qe=[];for(let rt=0;rt{let rt=it.getValue(),at=Qe===ae.groups.length-1,Ze=[Me(),at?"":","];if(ue(rt)&&rt.type==="value-comma_group"&&rt.groups&&rt.groups[0].type!=="value-paren_group"&&rt.groups[2]&&rt.groups[2].type==="value-paren_group"){let Le=x(Ze[0].contents.contents);Le[1]=c(Le[1]),Ze=[c(_(Ze))]}if(!at&&rt.type==="value-comma_group"&&l(rt.groups)){let Le=t(rt.groups);!Le.source&&Le.close&&(Le=Le.close),Le.source&&i(je.originalText,Le,Ee)&&Ze.push(y)}return Ze},"groups"))]),w(!st&&A(je.parser,je.originalText)&&We&&re(je)?",":""),g,ae.close?Me("close"):""],{shouldBreak:_e});return He?_(Ge):Ge}case"value-func":return[ae.value,h(be,"supports")&&Pe(ae)?" ":"",Me("group")];case"value-paren":return ae.value;case"value-number":return[Je(ae.value),G(ae.unit)];case"value-operator":return ae.value;case"value-word":return ae.isColor&&ae.isHex||b(ae.value)?ae.value.toLowerCase():ae.value;case"value-colon":{let Ve=be.getParentNode(),We=Ve&&Ve.groups.indexOf(ae),Xe=We&&Ve.groups[We-1];return[ae.value,Xe&&typeof Xe.value=="string"&&t(Xe.value)==="\\"||C(be,"url")?"":d]}case"value-comma":return[ae.value," "];case"value-string":return a(ae.raws.quote+ae.value+ae.raws.quote,je);case"value-atword":return["@",ae.value];case"value-unicode-range":return ae.value;case"value-unknown":return ae.value;default:throw new Error(`Unknown postcss type ${JSON.stringify(ae.type)}`)}}function Ce(be,je,Me){let ae=[];return be.each((nt,tt,Ve)=>{let We=Ve[tt-1];if(We&&We.type==="css-comment"&&We.text.trim()==="prettier-ignore"){let Xe=nt.getValue();ae.push(je.originalText.slice(Ae(Xe),Ee(Xe)))}else ae.push(Me());tt!==Ve.length-1&&(Ve[tt+1].type==="css-comment"&&!n(je.originalText,Ae(Ve[tt+1]),{backwards:!0})&&!u(Ve[tt])||Ve[tt+1].type==="css-atrule"&&Ve[tt+1].name==="else"&&Ve[tt].type!=="css-comment"?ae.push(" "):(ae.push(je.__isHTMLStyleAttribute?d:y),i(je.originalText,nt.getValue(),Ee)&&!u(Ve[tt])&&ae.push(y)))},"nodes"),ae}var Be=/(["'])(?:(?!\1)[^\\]|\\.)*\1/gs,ve=/(?:\d*\.\d+|\d+\.?)(?:[Ee][+-]?\d+)?/g,ze=/[A-Za-z]+/g,xe=/[$@]?[A-Z_a-z\u0080-\uFFFF][\w\u0080-\uFFFF-]*/g,Ye=new RegExp(Be.source+`|(${xe.source})?(${ve.source})(${ze.source})?`,"g");function Se(be,je){return be.replace(Be,Me=>a(Me,je))}function Ie(be,je){let Me=je.singleQuote?"'":'"';return be.includes('"')||be.includes("'")?be:Me+be+Me}function Oe(be){return be.replace(Ye,(je,Me,ae,nt,tt)=>!ae&&nt?Je(nt)+m(tt||""):je)}function Je(be){return s(be).replace(/\.0(?=$|e)/,"")}r.exports={print:ye,embed:P,insertPragma:$,massageAstNode:I}}}),_d=te({"src/language-css/options.js"(e,r){"use strict";ne();var t=jt();r.exports={singleQuote:t.singleQuote}}}),Pd=te({"src/language-css/parsers.js"(){ne()}}),Id=te({"node_modules/linguist-languages/data/CSS.json"(e,r){r.exports={name:"CSS",type:"markup",tmScope:"source.css",aceMode:"css",codemirrorMode:"css",codemirrorMimeType:"text/css",color:"#563d7c",extensions:[".css"],languageId:50}}}),kd=te({"node_modules/linguist-languages/data/PostCSS.json"(e,r){r.exports={name:"PostCSS",type:"markup",color:"#dc3a0c",tmScope:"source.postcss",group:"CSS",extensions:[".pcss",".postcss"],aceMode:"text",languageId:262764437}}}),Ld=te({"node_modules/linguist-languages/data/Less.json"(e,r){r.exports={name:"Less",type:"markup",color:"#1d365d",aliases:["less-css"],extensions:[".less"],tmScope:"source.css.less",aceMode:"less",codemirrorMode:"css",codemirrorMimeType:"text/css",languageId:198}}}),Od=te({"node_modules/linguist-languages/data/SCSS.json"(e,r){r.exports={name:"SCSS",type:"markup",color:"#c6538c",tmScope:"source.css.scss",aceMode:"scss",codemirrorMode:"css",codemirrorMimeType:"text/x-scss",extensions:[".scss"],languageId:329}}}),jd=te({"src/language-css/index.js"(e,r){"use strict";ne();var t=wt(),s=wd(),a=_d(),n=Pd(),u=[t(Id(),l=>({since:"1.4.0",parsers:["css"],vscodeLanguageIds:["css"],extensions:[...l.extensions,".wxss"]})),t(kd(),()=>({since:"1.4.0",parsers:["css"],vscodeLanguageIds:["postcss"]})),t(Ld(),()=>({since:"1.4.0",parsers:["less"],vscodeLanguageIds:["less"]})),t(Od(),()=>({since:"1.4.0",parsers:["scss"],vscodeLanguageIds:["scss"]}))],i={postcss:s};r.exports={languages:u,options:a,printers:i,parsers:n}}}),qd=te({"src/language-handlebars/loc.js"(e,r){"use strict";ne();function t(a){return a.loc.start.offset}function s(a){return a.loc.end.offset}r.exports={locStart:t,locEnd:s}}}),Md=te({"src/language-handlebars/clean.js"(e,r){"use strict";ne();function t(s,a){if(s.type==="TextNode"){let n=s.chars.trim();if(!n)return null;a.chars=n.replace(/[\t\n\f\r ]+/g," ")}s.type==="AttrNode"&&s.name.toLowerCase()==="class"&&delete a.value}t.ignoredProperties=new Set(["loc","selfClosing"]),r.exports=t}}),Rd=te({"src/language-handlebars/html-void-elements.evaluate.js"(e,r){r.exports=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]}}),$d=te({"src/language-handlebars/utils.js"(e,r){"use strict";ne();var t=lt(),s=Rd();function a(x){let I=x.getValue(),P=x.getParentNode(0);return!!(g(x,["ElementNode"])&&t(P.children)===I||g(x,["Block"])&&t(P.body)===I)}function n(x){return x.toUpperCase()===x}function u(x){return y(x,["ElementNode"])&&typeof x.tag=="string"&&!x.tag.startsWith(":")&&(n(x.tag[0])||x.tag.includes("."))}var i=new Set(s);function l(x){return i.has(x.toLowerCase())&&!n(x[0])}function p(x){return x.selfClosing===!0||l(x.tag)||u(x)&&x.children.every(I=>d(I))}function d(x){return y(x,["TextNode"])&&!/\S/.test(x.chars)}function y(x,I){return x&&I.includes(x.type)}function g(x,I){let P=x.getParentNode(0);return y(P,I)}function c(x,I){let P=_(x);return y(P,I)}function f(x,I){let P=w(x);return y(P,I)}function E(x,I){var P,$,D,T;let m=x.getValue(),C=(P=x.getParentNode(0))!==null&&P!==void 0?P:{},o=($=(D=(T=C.children)!==null&&T!==void 0?T:C.body)!==null&&D!==void 0?D:C.parts)!==null&&$!==void 0?$:[],h=o.indexOf(m);return h!==-1&&o[h+I]}function _(x){let I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;return E(x,-I)}function w(x){return E(x,1)}function F(x){return y(x,["MustacheCommentStatement"])&&typeof x.value=="string"&&x.value.trim()==="prettier-ignore"}function N(x){let I=x.getValue(),P=_(x,2);return F(I)||F(P)}r.exports={getNextNode:w,getPreviousNode:_,hasPrettierIgnore:N,isLastNodeOfSiblings:a,isNextNodeOfSomeType:f,isNodeOfSomeType:y,isParentOfSomeType:g,isPreviousNodeOfSomeType:c,isVoid:p,isWhitespaceNode:d}}}),Vd=te({"src/language-handlebars/printer-glimmer.js"(e,r){"use strict";ne();var{builders:{dedent:t,fill:s,group:a,hardline:n,ifBreak:u,indent:i,join:l,line:p,softline:d},utils:{getDocParts:y,replaceTextEndOfLine:g}}=qe(),{getPreferredQuote:c,isNonEmptyArray:f}=Ue(),{locStart:E,locEnd:_}=qd(),w=Md(),{getNextNode:F,getPreviousNode:N,hasPrettierIgnore:x,isLastNodeOfSiblings:I,isNextNodeOfSomeType:P,isNodeOfSomeType:$,isParentOfSomeType:D,isPreviousNodeOfSomeType:T,isVoid:m,isWhitespaceNode:C}=$d(),o=2;function h(H,pe,X){let le=H.getValue();if(!le)return"";if(x(H))return pe.originalText.slice(E(le),_(le));let Ae=pe.singleQuote?"'":'"';switch(le.type){case"Block":case"Program":case"Template":return a(H.map(X,"body"));case"ElementNode":{let Ee=a(S(H,X)),De=pe.htmlWhitespaceSensitivity==="ignore"&&P(H,["ElementNode"])?d:"";if(m(le))return[Ee,De];let A=[""];return le.children.length===0?[Ee,i(A),De]:pe.htmlWhitespaceSensitivity==="ignore"?[Ee,i(b(H,pe,X)),n,i(A),De]:[Ee,i(a(b(H,pe,X))),i(A),De]}case"BlockStatement":{let Ee=H.getParentNode(1);return Ee&&Ee.inverse&&Ee.inverse.body.length===1&&Ee.inverse.body[0]===le&&Ee.inverse.body[0].path.parts[0]===Ee.path.parts[0]?[ie(H,X,Ee.inverse.body[0].path.parts[0]),de(H,X,pe),ue(H,X,pe)]:[j(H,X),a([de(H,X,pe),ue(H,X,pe),ee(H,X,pe)])]}case"ElementModifierStatement":return a(["{{",Re(H,X),"}}"]);case"MustacheStatement":return a([k(le),Re(H,X),M(le)]);case"SubExpression":return a(["(",ke(H,X),d,")"]);case"AttrNode":{let Ee=le.value.type==="TextNode";if(Ee&&le.value.chars===""&&E(le.value)===_(le.value))return le.name;let A=Ee?c(le.value.chars,Ae).quote:le.value.type==="ConcatStatement"?c(le.value.parts.filter(re=>re.type==="TextNode").map(re=>re.chars).join(""),Ae).quote:"",G=X("value");return[le.name,"=",A,le.name==="class"&&A?a(i(G)):G,A]}case"ConcatStatement":return H.map(X,"parts");case"Hash":return l(p,H.map(X,"pairs"));case"HashPair":return[le.key,"=",X("value")];case"TextNode":{let Ee=le.chars.replace(/{{/g,"\\{{"),De=U(H);if(De){if(De==="class"){let Ye=Ee.trim().split(/\s+/).join(" "),Se=!1,Ie=!1;return D(H,["ConcatStatement"])&&(T(H,["MustacheStatement"])&&/^\s/.test(Ee)&&(Se=!0),P(H,["MustacheStatement"])&&/\s$/.test(Ee)&&Ye!==""&&(Ie=!0)),[Se?p:"",Ye,Ie?p:""]}return g(Ee)}let G=/^[\t\n\f\r ]*$/.test(Ee),re=!N(H),ye=!F(H);if(pe.htmlWhitespaceSensitivity!=="ignore"){let Ye=/^[\t\n\f\r ]*/,Se=/[\t\n\f\r ]*$/,Ie=ye&&D(H,["Template"]),Oe=re&&D(H,["Template"]);if(G){if(Oe||Ie)return"";let ae=[p],nt=Z(Ee);return nt&&(ae=ge(nt)),I(H)&&(ae=ae.map(tt=>t(tt))),ae}let[Je]=Ee.match(Ye),[be]=Ee.match(Se),je=[];if(Je){je=[p];let ae=Z(Je);ae&&(je=ge(ae)),Ee=Ee.replace(Ye,"")}let Me=[];if(be){if(!Ie){Me=[p];let ae=Z(be);ae&&(Me=ge(ae)),I(H)&&(Me=Me.map(nt=>t(nt)))}Ee=Ee.replace(Se,"")}return[...je,s(Fe(Ee)),...Me]}let Ce=Z(Ee),Be=se(Ee),ve=fe(Ee);if((re||ye)&&G&&D(H,["Block","ElementNode","Template"]))return"";G&&Ce?(Be=Math.min(Ce,o),ve=0):(P(H,["BlockStatement","ElementNode"])&&(ve=Math.max(ve,1)),T(H,["BlockStatement","ElementNode"])&&(Be=Math.max(Be,1)));let ze="",xe="";return ve===0&&P(H,["MustacheStatement"])&&(xe=" "),Be===0&&T(H,["MustacheStatement"])&&(ze=" "),re&&(Be=0,ze=""),ye&&(ve=0,xe=""),Ee=Ee.replace(/^[\t\n\f\r ]+/g,ze).replace(/[\t\n\f\r ]+$/,xe),[...ge(Be),s(Fe(Ee)),...ge(ve)]}case"MustacheCommentStatement":{let Ee=E(le),De=_(le),A=pe.originalText.charAt(Ee+2)==="~",G=pe.originalText.charAt(De-3)==="~",re=le.value.includes("}}")?"--":"";return["{{",A?"~":"","!",re,le.value,re,G?"~":"","}}"]}case"PathExpression":return le.original;case"BooleanLiteral":return String(le.value);case"CommentStatement":return[""];case"StringLiteral":{if(we(H)){let Ee=pe.singleQuote?'"':"'";return he(le.value,Ee)}return he(le.value,Ae)}case"NumberLiteral":return String(le.value);case"UndefinedLiteral":return"undefined";case"NullLiteral":return"null";default:throw new Error("unknown glimmer type: "+JSON.stringify(le.type))}}function v(H,pe){return E(H)-E(pe)}function S(H,pe){let X=H.getValue(),le=["attributes","modifiers","comments"].filter(Ee=>f(X[Ee])),Ae=le.flatMap(Ee=>X[Ee]).sort(v);for(let Ee of le)H.each(De=>{let A=Ae.indexOf(De.getValue());Ae.splice(A,1,[p,pe()])},Ee);return f(X.blockParams)&&Ae.push(p,oe(X)),["<",X.tag,i(Ae),B(X)]}function b(H,pe,X){let Ae=H.getValue().children.every(Ee=>C(Ee));return pe.htmlWhitespaceSensitivity==="ignore"&&Ae?"":H.map((Ee,De)=>{let A=X();return De===0&&pe.htmlWhitespaceSensitivity==="ignore"?[d,A]:A},"children")}function B(H){return m(H)?u([d,"/>"],[" />",d]):u([d,">"],">")}function k(H){let pe=H.escaped===!1?"{{{":"{{",X=H.strip&&H.strip.open?"~":"";return[pe,X]}function M(H){let pe=H.escaped===!1?"}}}":"}}";return[H.strip&&H.strip.close?"~":"",pe]}function R(H){let pe=k(H),X=H.openStrip.open?"~":"";return[pe,X,"#"]}function q(H){let pe=M(H);return[H.openStrip.close?"~":"",pe]}function J(H){let pe=k(H),X=H.closeStrip.open?"~":"";return[pe,X,"/"]}function L(H){let pe=M(H);return[H.closeStrip.close?"~":"",pe]}function Q(H){let pe=k(H),X=H.inverseStrip.open?"~":"";return[pe,X]}function V(H){let pe=M(H);return[H.inverseStrip.close?"~":"",pe]}function j(H,pe){let X=H.getValue(),le=[],Ae=Pe(H,pe);return Ae&&le.push(a(Ae)),f(X.program.blockParams)&&le.push(oe(X.program)),a([R(X),Ne(H,pe),le.length>0?i([p,l(p,le)]):"",d,q(X)])}function Y(H,pe){return[pe.htmlWhitespaceSensitivity==="ignore"?n:"",Q(H),"else",V(H)]}function ie(H,pe,X){let le=H.getValue(),Ae=H.getParentNode(1);return a([Q(Ae),["else"," ",X],i([p,a(Pe(H,pe)),...f(le.program.blockParams)?[p,oe(le.program)]:[]]),d,V(Ae)])}function ee(H,pe,X){let le=H.getValue();return X.htmlWhitespaceSensitivity==="ignore"?[ce(le)?d:n,J(le),pe("path"),L(le)]:[J(le),pe("path"),L(le)]}function ce(H){return $(H,["BlockStatement"])&&H.program.body.every(pe=>C(pe))}function W(H){return K(H)&&H.inverse.body.length===1&&$(H.inverse.body[0],["BlockStatement"])&&H.inverse.body[0].path.parts[0]===H.path.parts[0]}function K(H){return $(H,["BlockStatement"])&&H.inverse}function de(H,pe,X){let le=H.getValue();if(ce(le))return"";let Ae=pe("program");return X.htmlWhitespaceSensitivity==="ignore"?i([n,Ae]):i(Ae)}function ue(H,pe,X){let le=H.getValue(),Ae=pe("inverse"),Ee=X.htmlWhitespaceSensitivity==="ignore"?[n,Ae]:Ae;return W(le)?Ee:K(le)?[Y(le,X),i(Ee)]:""}function Fe(H){return y(l(p,z(H)))}function z(H){return H.split(/[\t\n\f\r ]+/)}function U(H){for(let pe=0;pe<2;pe++){let X=H.getParentNode(pe);if(X&&X.type==="AttrNode")return X.name.toLowerCase()}}function Z(H){return H=typeof H=="string"?H:"",H.split(` +`).length-1}function se(H){H=typeof H=="string"?H:"";let pe=(H.match(/^([^\S\n\r]*[\n\r])+/g)||[])[0]||"";return Z(pe)}function fe(H){H=typeof H=="string"?H:"";let pe=(H.match(/([\n\r][^\S\n\r]*)+$/g)||[])[0]||"";return Z(pe)}function ge(){let H=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;return Array.from({length:Math.min(H,o)}).fill(n)}function he(H,pe){let{quote:X,regex:le}=c(H,pe);return[X,H.replace(le,`\\${X}`),X]}function we(H){let pe=0,X=H.getParentNode(pe);for(;X&&$(X,["SubExpression"]);)pe++,X=H.getParentNode(pe);return!!(X&&$(H.getParentNode(pe+1),["ConcatStatement"])&&$(H.getParentNode(pe+2),["AttrNode"]))}function ke(H,pe){let X=Ne(H,pe),le=Pe(H,pe);return le?i([X,p,a(le)]):X}function Re(H,pe){let X=Ne(H,pe),le=Pe(H,pe);return le?[i([X,p,le]),d]:X}function Ne(H,pe){return pe("path")}function Pe(H,pe){let X=H.getValue(),le=[];if(X.params.length>0){let Ae=H.map(pe,"params");le.push(...Ae)}if(X.hash&&X.hash.pairs.length>0){let Ae=pe("hash");le.push(Ae)}return le.length===0?"":l(p,le)}function oe(H){return["as |",H.blockParams.join(" "),"|"]}r.exports={print:h,massageAstNode:w}}}),Wd=te({"src/language-handlebars/parsers.js"(){ne()}}),Hd=te({"node_modules/linguist-languages/data/Handlebars.json"(e,r){r.exports={name:"Handlebars",type:"markup",color:"#f7931e",aliases:["hbs","htmlbars"],extensions:[".handlebars",".hbs"],tmScope:"text.html.handlebars",aceMode:"handlebars",languageId:155}}}),Gd=te({"src/language-handlebars/index.js"(e,r){"use strict";ne();var t=wt(),s=Vd(),a=Wd(),n=[t(Hd(),()=>({since:"2.3.0",parsers:["glimmer"],vscodeLanguageIds:["handlebars"]}))],u={glimmer:s};r.exports={languages:n,printers:u,parsers:a}}}),Ud=te({"src/language-graphql/pragma.js"(e,r){"use strict";ne();function t(a){return/^\s*#[^\S\n]*@(?:format|prettier)\s*(?:\n|$)/.test(a)}function s(a){return`# @format + +`+a}r.exports={hasPragma:t,insertPragma:s}}}),Jd=te({"src/language-graphql/loc.js"(e,r){"use strict";ne();function t(a){return typeof a.start=="number"?a.start:a.loc&&a.loc.start}function s(a){return typeof a.end=="number"?a.end:a.loc&&a.loc.end}r.exports={locStart:t,locEnd:s}}}),zd=te({"src/language-graphql/printer-graphql.js"(e,r){"use strict";ne();var{builders:{join:t,hardline:s,line:a,softline:n,group:u,indent:i,ifBreak:l}}=qe(),{isNextLineEmpty:p,isNonEmptyArray:d}=Ue(),{insertPragma:y}=Ud(),{locStart:g,locEnd:c}=Jd();function f(P,$,D){let T=P.getValue();if(!T)return"";if(typeof T=="string")return T;switch(T.kind){case"Document":{let m=[];return P.each((C,o,h)=>{m.push(D()),o!==h.length-1&&(m.push(s),p($.originalText,C.getValue(),c)&&m.push(s))},"definitions"),[...m,s]}case"OperationDefinition":{let m=$.originalText[g(T)]!=="{",C=Boolean(T.name);return[m?T.operation:"",m&&C?[" ",D("name")]:"",m&&!C&&d(T.variableDefinitions)?" ":"",d(T.variableDefinitions)?u(["(",i([n,t([l("",", "),n],P.map(D,"variableDefinitions"))]),n,")"]):"",E(P,D,T),T.selectionSet?!m&&!C?"":" ":"",D("selectionSet")]}case"FragmentDefinition":return["fragment ",D("name"),d(T.variableDefinitions)?u(["(",i([n,t([l("",", "),n],P.map(D,"variableDefinitions"))]),n,")"]):""," on ",D("typeCondition"),E(P,D,T)," ",D("selectionSet")];case"SelectionSet":return["{",i([s,t(s,_(P,$,D,"selections"))]),s,"}"];case"Field":return u([T.alias?[D("alias"),": "]:"",D("name"),T.arguments.length>0?u(["(",i([n,t([l("",", "),n],_(P,$,D,"arguments"))]),n,")"]):"",E(P,D,T),T.selectionSet?" ":"",D("selectionSet")]);case"Name":return T.value;case"StringValue":{if(T.block){let m=T.value.replace(/"""/g,"\\$&").split(` +`);return m.length===1&&(m[0]=m[0].trim()),m.every(C=>C==="")&&(m.length=0),t(s,['"""',...m,'"""'])}return['"',T.value.replace(/["\\]/g,"\\$&").replace(/\n/g,"\\n"),'"']}case"IntValue":case"FloatValue":case"EnumValue":return T.value;case"BooleanValue":return T.value?"true":"false";case"NullValue":return"null";case"Variable":return["$",D("name")];case"ListValue":return u(["[",i([n,t([l("",", "),n],P.map(D,"values"))]),n,"]"]);case"ObjectValue":return u(["{",$.bracketSpacing&&T.fields.length>0?" ":"",i([n,t([l("",", "),n],P.map(D,"fields"))]),n,l("",$.bracketSpacing&&T.fields.length>0?" ":""),"}"]);case"ObjectField":case"Argument":return[D("name"),": ",D("value")];case"Directive":return["@",D("name"),T.arguments.length>0?u(["(",i([n,t([l("",", "),n],_(P,$,D,"arguments"))]),n,")"]):""];case"NamedType":return D("name");case"VariableDefinition":return[D("variable"),": ",D("type"),T.defaultValue?[" = ",D("defaultValue")]:"",E(P,D,T)];case"ObjectTypeExtension":case"ObjectTypeDefinition":return[D("description"),T.description?s:"",T.kind==="ObjectTypeExtension"?"extend ":"","type ",D("name"),T.interfaces.length>0?[" implements ",...N(P,$,D)]:"",E(P,D,T),T.fields.length>0?[" {",i([s,t(s,_(P,$,D,"fields"))]),s,"}"]:""];case"FieldDefinition":return[D("description"),T.description?s:"",D("name"),T.arguments.length>0?u(["(",i([n,t([l("",", "),n],_(P,$,D,"arguments"))]),n,")"]):"",": ",D("type"),E(P,D,T)];case"DirectiveDefinition":return[D("description"),T.description?s:"","directive ","@",D("name"),T.arguments.length>0?u(["(",i([n,t([l("",", "),n],_(P,$,D,"arguments"))]),n,")"]):"",T.repeatable?" repeatable":""," on ",t(" | ",P.map(D,"locations"))];case"EnumTypeExtension":case"EnumTypeDefinition":return[D("description"),T.description?s:"",T.kind==="EnumTypeExtension"?"extend ":"","enum ",D("name"),E(P,D,T),T.values.length>0?[" {",i([s,t(s,_(P,$,D,"values"))]),s,"}"]:""];case"EnumValueDefinition":return[D("description"),T.description?s:"",D("name"),E(P,D,T)];case"InputValueDefinition":return[D("description"),T.description?T.description.block?s:a:"",D("name"),": ",D("type"),T.defaultValue?[" = ",D("defaultValue")]:"",E(P,D,T)];case"InputObjectTypeExtension":case"InputObjectTypeDefinition":return[D("description"),T.description?s:"",T.kind==="InputObjectTypeExtension"?"extend ":"","input ",D("name"),E(P,D,T),T.fields.length>0?[" {",i([s,t(s,_(P,$,D,"fields"))]),s,"}"]:""];case"SchemaExtension":return["extend schema",E(P,D,T),...T.operationTypes.length>0?[" {",i([s,t(s,_(P,$,D,"operationTypes"))]),s,"}"]:[]];case"SchemaDefinition":return[D("description"),T.description?s:"","schema",E(P,D,T)," {",T.operationTypes.length>0?i([s,t(s,_(P,$,D,"operationTypes"))]):"",s,"}"];case"OperationTypeDefinition":return[D("operation"),": ",D("type")];case"InterfaceTypeExtension":case"InterfaceTypeDefinition":return[D("description"),T.description?s:"",T.kind==="InterfaceTypeExtension"?"extend ":"","interface ",D("name"),T.interfaces.length>0?[" implements ",...N(P,$,D)]:"",E(P,D,T),T.fields.length>0?[" {",i([s,t(s,_(P,$,D,"fields"))]),s,"}"]:""];case"FragmentSpread":return["...",D("name"),E(P,D,T)];case"InlineFragment":return["...",T.typeCondition?[" on ",D("typeCondition")]:"",E(P,D,T)," ",D("selectionSet")];case"UnionTypeExtension":case"UnionTypeDefinition":return u([D("description"),T.description?s:"",u([T.kind==="UnionTypeExtension"?"extend ":"","union ",D("name"),E(P,D,T),T.types.length>0?[" =",l(""," "),i([l([a," "]),t([a,"| "],P.map(D,"types"))])]:""])]);case"ScalarTypeExtension":case"ScalarTypeDefinition":return[D("description"),T.description?s:"",T.kind==="ScalarTypeExtension"?"extend ":"","scalar ",D("name"),E(P,D,T)];case"NonNullType":return[D("type"),"!"];case"ListType":return["[",D("type"),"]"];default:throw new Error("unknown graphql type: "+JSON.stringify(T.kind))}}function E(P,$,D){if(D.directives.length===0)return"";let T=t(a,P.map($,"directives"));return D.kind==="FragmentDefinition"||D.kind==="OperationDefinition"?u([a,T]):[" ",u(i([n,T]))]}function _(P,$,D,T){return P.map((m,C,o)=>{let h=D();return CD(h),"interfaces");for(let h=0;hT.value.trim()==="prettier-ignore")}r.exports={print:f,massageAstNode:x,hasPrettierIgnore:I,insertPragma:y,printComment:F,canAttachComment:w}}}),Xd=te({"src/language-graphql/options.js"(e,r){"use strict";ne();var t=jt();r.exports={bracketSpacing:t.bracketSpacing}}}),Kd=te({"src/language-graphql/parsers.js"(){ne()}}),Yd=te({"node_modules/linguist-languages/data/GraphQL.json"(e,r){r.exports={name:"GraphQL",type:"data",color:"#e10098",extensions:[".graphql",".gql",".graphqls"],tmScope:"source.graphql",aceMode:"text",languageId:139}}}),Qd=te({"src/language-graphql/index.js"(e,r){"use strict";ne();var t=wt(),s=zd(),a=Xd(),n=Kd(),u=[t(Yd(),()=>({since:"1.5.0",parsers:["graphql"],vscodeLanguageIds:["graphql"]}))],i={graphql:s};r.exports={languages:u,options:a,printers:i,parsers:n}}}),So=te({"node_modules/collapse-white-space/index.js"(e,r){"use strict";ne(),r.exports=t;function t(s){return String(s).replace(/\s+/g," ")}}}),xo=te({"src/language-markdown/loc.js"(e,r){"use strict";ne();function t(a){return a.position.start.offset}function s(a){return a.position.end.offset}r.exports={locStart:t,locEnd:s}}}),Zd=te({"src/language-markdown/constants.evaluate.js"(e,r){r.exports={cjkPattern:"(?:[\\u02ea-\\u02eb\\u1100-\\u11ff\\u2e80-\\u2e99\\u2e9b-\\u2ef3\\u2f00-\\u2fd5\\u2ff0-\\u303f\\u3041-\\u3096\\u3099-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312f\\u3131-\\u318e\\u3190-\\u3191\\u3196-\\u31ba\\u31c0-\\u31e3\\u31f0-\\u321e\\u322a-\\u3247\\u3260-\\u327e\\u328a-\\u32b0\\u32c0-\\u32cb\\u32d0-\\u3370\\u337b-\\u337f\\u33e0-\\u33fe\\u3400-\\u4db5\\u4e00-\\u9fef\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufe10-\\ufe1f\\ufe30-\\ufe6f\\uff00-\\uffef]|[\\ud840-\\ud868\\ud86a-\\ud86c\\ud86f-\\ud872\\ud874-\\ud879][\\udc00-\\udfff]|\\ud82c[\\udc00-\\udd1e\\udd50-\\udd52\\udd64-\\udd67]|\\ud83c[\\ude00\\ude50-\\ude51]|\\ud869[\\udc00-\\uded6\\udf00-\\udfff]|\\ud86d[\\udc00-\\udf34\\udf40-\\udfff]|\\ud86e[\\udc00-\\udc1d\\udc20-\\udfff]|\\ud873[\\udc00-\\udea1\\udeb0-\\udfff]|\\ud87a[\\udc00-\\udfe0]|\\ud87e[\\udc00-\\ude1d])(?:[\\ufe00-\\ufe0f]|\\udb40[\\udd00-\\uddef])?",kPattern:"[\\u1100-\\u11ff\\u3001-\\u3003\\u3008-\\u3011\\u3013-\\u301f\\u302e-\\u3030\\u3037\\u30fb\\u3131-\\u318e\\u3200-\\u321e\\u3260-\\u327e\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\ufe45-\\ufe46\\uff61-\\uff65\\uffa0-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc]",punctuationPattern:"[\\u0021-\\u002f\\u003a-\\u0040\\u005b-\\u0060\\u007b-\\u007e\\u00a1\\u00a7\\u00ab\\u00b6-\\u00b7\\u00bb\\u00bf\\u037e\\u0387\\u055a-\\u055f\\u0589-\\u058a\\u05be\\u05c0\\u05c3\\u05c6\\u05f3-\\u05f4\\u0609-\\u060a\\u060c-\\u060d\\u061b\\u061e-\\u061f\\u066a-\\u066d\\u06d4\\u0700-\\u070d\\u07f7-\\u07f9\\u0830-\\u083e\\u085e\\u0964-\\u0965\\u0970\\u09fd\\u0a76\\u0af0\\u0c77\\u0c84\\u0df4\\u0e4f\\u0e5a-\\u0e5b\\u0f04-\\u0f12\\u0f14\\u0f3a-\\u0f3d\\u0f85\\u0fd0-\\u0fd4\\u0fd9-\\u0fda\\u104a-\\u104f\\u10fb\\u1360-\\u1368\\u1400\\u166e\\u169b-\\u169c\\u16eb-\\u16ed\\u1735-\\u1736\\u17d4-\\u17d6\\u17d8-\\u17da\\u1800-\\u180a\\u1944-\\u1945\\u1a1e-\\u1a1f\\u1aa0-\\u1aa6\\u1aa8-\\u1aad\\u1b5a-\\u1b60\\u1bfc-\\u1bff\\u1c3b-\\u1c3f\\u1c7e-\\u1c7f\\u1cc0-\\u1cc7\\u1cd3\\u2010-\\u2027\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205e\\u207d-\\u207e\\u208d-\\u208e\\u2308-\\u230b\\u2329-\\u232a\\u2768-\\u2775\\u27c5-\\u27c6\\u27e6-\\u27ef\\u2983-\\u2998\\u29d8-\\u29db\\u29fc-\\u29fd\\u2cf9-\\u2cfc\\u2cfe-\\u2cff\\u2d70\\u2e00-\\u2e2e\\u2e30-\\u2e4f\\u3001-\\u3003\\u3008-\\u3011\\u3014-\\u301f\\u3030\\u303d\\u30a0\\u30fb\\ua4fe-\\ua4ff\\ua60d-\\ua60f\\ua673\\ua67e\\ua6f2-\\ua6f7\\ua874-\\ua877\\ua8ce-\\ua8cf\\ua8f8-\\ua8fa\\ua8fc\\ua92e-\\ua92f\\ua95f\\ua9c1-\\ua9cd\\ua9de-\\ua9df\\uaa5c-\\uaa5f\\uaade-\\uaadf\\uaaf0-\\uaaf1\\uabeb\\ufd3e-\\ufd3f\\ufe10-\\ufe19\\ufe30-\\ufe52\\ufe54-\\ufe61\\ufe63\\ufe68\\ufe6a-\\ufe6b\\uff01-\\uff03\\uff05-\\uff0a\\uff0c-\\uff0f\\uff1a-\\uff1b\\uff1f-\\uff20\\uff3b-\\uff3d\\uff3f\\uff5b\\uff5d\\uff5f-\\uff65]|\\ud800[\\udd00-\\udd02\\udf9f\\udfd0]|\\ud801[\\udd6f]|\\ud802[\\udc57\\udd1f\\udd3f\\ude50-\\ude58\\ude7f\\udef0-\\udef6\\udf39-\\udf3f\\udf99-\\udf9c]|\\ud803[\\udf55-\\udf59]|\\ud804[\\udc47-\\udc4d\\udcbb-\\udcbc\\udcbe-\\udcc1\\udd40-\\udd43\\udd74-\\udd75\\uddc5-\\uddc8\\uddcd\\udddb\\udddd-\\udddf\\ude38-\\ude3d\\udea9]|\\ud805[\\udc4b-\\udc4f\\udc5b\\udc5d\\udcc6\\uddc1-\\uddd7\\ude41-\\ude43\\ude60-\\ude6c\\udf3c-\\udf3e]|\\ud806[\\udc3b\\udde2\\ude3f-\\ude46\\ude9a-\\ude9c\\ude9e-\\udea2]|\\ud807[\\udc41-\\udc45\\udc70-\\udc71\\udef7-\\udef8\\udfff]|\\ud809[\\udc70-\\udc74]|\\ud81a[\\ude6e-\\ude6f\\udef5\\udf37-\\udf3b\\udf44]|\\ud81b[\\ude97-\\ude9a\\udfe2]|\\ud82f[\\udc9f]|\\ud836[\\ude87-\\ude8b]|\\ud83a[\\udd5e-\\udd5f]"}}}),nu=te({"src/language-markdown/utils.js"(e,r){"use strict";ne();var{getLast:t}=Ue(),{locStart:s,locEnd:a}=xo(),{cjkPattern:n,kPattern:u,punctuationPattern:i}=Zd(),l=["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"],p=[...l,"tableCell","paragraph","heading"],d=new RegExp(u),y=new RegExp(i);function g(F,N){let x="non-cjk",I="cj-letter",P="k-letter",$="cjk-punctuation",D=[],T=(N.proseWrap==="preserve"?F:F.replace(new RegExp(`(${n}) +(${n})`,"g"),"$1$2")).split(/([\t\n ]+)/);for(let[C,o]of T.entries()){if(C%2===1){D.push({type:"whitespace",value:/\n/.test(o)?` +`:" "});continue}if((C===0||C===T.length-1)&&o==="")continue;let h=o.split(new RegExp(`(${n})`));for(let[v,S]of h.entries())if(!((v===0||v===h.length-1)&&S==="")){if(v%2===0){S!==""&&m({type:"word",value:S,kind:x,hasLeadingPunctuation:y.test(S[0]),hasTrailingPunctuation:y.test(t(S))});continue}m(y.test(S)?{type:"word",value:S,kind:$,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0}:{type:"word",value:S,kind:d.test(S)?P:I,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return D;function m(C){let o=t(D);o&&o.type==="word"&&(o.kind===x&&C.kind===I&&!o.hasTrailingPunctuation||o.kind===I&&C.kind===x&&!C.hasLeadingPunctuation?D.push({type:"whitespace",value:" "}):!h(x,$)&&![o.value,C.value].some(v=>/\u3000/.test(v))&&D.push({type:"whitespace",value:""})),D.push(C);function h(v,S){return o.kind===v&&C.kind===S||o.kind===S&&C.kind===v}}}function c(F,N){let[,x,I,P]=N.slice(F.position.start.offset,F.position.end.offset).match(/^\s*(\d+)(\.|\))(\s*)/);return{numberText:x,marker:I,leadingSpaces:P}}function f(F,N){if(!F.ordered||F.children.length<2)return!1;let x=Number(c(F.children[0],N.originalText).numberText),I=Number(c(F.children[1],N.originalText).numberText);if(x===0&&F.children.length>2){let P=Number(c(F.children[2],N.originalText).numberText);return I===1&&P===1}return I===1}function E(F,N){let{value:x}=F;return F.position.end.offset===N.length&&x.endsWith(` +`)&&N.endsWith(` +`)?x.slice(0,-1):x}function _(F,N){return function x(I,P,$){let D=Object.assign({},N(I,P,$));return D.children&&(D.children=D.children.map((T,m)=>x(T,m,[D,...$]))),D}(F,null,[])}function w(F){if((F==null?void 0:F.type)!=="link"||F.children.length!==1)return!1;let[N]=F.children;return s(F)===s(N)&&a(F)===a(N)}r.exports={mapAst:_,splitText:g,punctuationPattern:i,getFencedCodeBlockValue:E,getOrderedListItemInfo:c,hasGitDiffFriendlyOrderedList:f,INLINE_NODE_TYPES:l,INLINE_NODE_WRAPPER_TYPES:p,isAutolink:w}}}),eg=te({"src/language-markdown/embed.js"(e,r){"use strict";ne();var{inferParserByLanguage:t,getMaxContinuousCount:s}=Ue(),{builders:{hardline:a,markAsRoot:n},utils:{replaceEndOfLine:u}}=qe(),i=ru(),{getFencedCodeBlockValue:l}=nu();function p(d,y,g,c){let f=d.getValue();if(f.type==="code"&&f.lang!==null){let E=t(f.lang,c);if(E){let _=c.__inJsTemplate?"~":"`",w=_.repeat(Math.max(3,s(f.value,_)+1)),F={parser:E};f.lang==="tsx"&&(F.filepath="dummy.tsx");let N=g(l(f,c.originalText),F,{stripTrailingHardline:!0});return n([w,f.lang,f.meta?" "+f.meta:"",a,u(N),a,w])}}switch(f.type){case"front-matter":return i(f,g);case"importExport":return[g(f.value,{parser:"babel"},{stripTrailingHardline:!0}),a];case"jsx":return g(`<$>${f.value}`,{parser:"__js_expression",rootMarker:"mdx"},{stripTrailingHardline:!0})}return null}r.exports=p}}),bo=te({"src/language-markdown/pragma.js"(e,r){"use strict";ne();var t=Ao(),s=["format","prettier"];function a(n){let u=`@(${s.join("|")})`,i=new RegExp([``,`{\\s*\\/\\*\\s*${u}\\s*\\*\\/\\s*}`,``].join("|"),"m"),l=n.match(i);return(l==null?void 0:l.index)===0}r.exports={startWithPragma:a,hasPragma:n=>a(t(n).content.trimStart()),insertPragma:n=>{let u=t(n),i=``;return u.frontMatter?`${u.frontMatter.raw} + +${i} + +${u.content}`:`${i} + +${u.content}`}}}}),tg=te({"src/language-markdown/print-preprocess.js"(e,r){"use strict";ne();var t=lt(),{getOrderedListItemInfo:s,mapAst:a,splitText:n}=nu(),u=/^.$/su;function i(w,F){return w=d(w,F),w=c(w),w=p(w,F),w=E(w,F),w=_(w,F),w=f(w,F),w=l(w),w=y(w),w}function l(w){return a(w,F=>F.type!=="import"&&F.type!=="export"?F:Object.assign(Object.assign({},F),{},{type:"importExport"}))}function p(w,F){return a(w,N=>N.type!=="inlineCode"||F.proseWrap==="preserve"?N:Object.assign(Object.assign({},N),{},{value:N.value.replace(/\s+/g," ")}))}function d(w,F){return a(w,N=>N.type!=="text"||N.value==="*"||N.value==="_"||!u.test(N.value)||N.position.end.offset-N.position.start.offset===N.value.length?N:Object.assign(Object.assign({},N),{},{value:F.originalText.slice(N.position.start.offset,N.position.end.offset)}))}function y(w){return g(w,(F,N)=>F.type==="importExport"&&N.type==="importExport",(F,N)=>({type:"importExport",value:F.value+` + +`+N.value,position:{start:F.position.start,end:N.position.end}}))}function g(w,F,N){return a(w,x=>{if(!x.children)return x;let I=x.children.reduce((P,$)=>{let D=t(P);return D&&F(D,$)?P.splice(-1,1,N(D,$)):P.push($),P},[]);return Object.assign(Object.assign({},x),{},{children:I})})}function c(w){return g(w,(F,N)=>F.type==="text"&&N.type==="text",(F,N)=>({type:"text",value:F.value+N.value,position:{start:F.position.start,end:N.position.end}}))}function f(w,F){return a(w,(N,x,I)=>{let[P]=I;if(N.type!=="text")return N;let{value:$}=N;return P.type==="paragraph"&&(x===0&&($=$.trimStart()),x===P.children.length-1&&($=$.trimEnd())),{type:"sentence",position:N.position,children:n($,F)}})}function E(w,F){return a(w,(N,x,I)=>{if(N.type==="code"){let P=/^\n?(?: {4,}|\t)/.test(F.originalText.slice(N.position.start.offset,N.position.end.offset));if(N.isIndented=P,P)for(let $=0;${if(I.type==="list"&&I.children.length>0){for(let D=0;D<$.length;D++){let T=$[D];if(T.type==="list"&&!T.isAligned)return I.isAligned=!1,I}I.isAligned=x(I)}return I});function N(I){return I.children.length===0?-1:I.children[0].position.start.column-1}function x(I){if(!I.ordered)return!0;let[P,$]=I.children;if(s(P,F.originalText).leadingSpaces.length>1)return!0;let T=N(P);if(T===-1)return!1;if(I.children.length===1)return T%F.tabWidth===0;let m=N($);return T!==m?!1:T%F.tabWidth===0?!0:s($,F.originalText).leadingSpaces.length>1}}r.exports=i}}),rg=te({"src/language-markdown/clean.js"(e,r){"use strict";ne();var t=So(),{isFrontMatterNode:s}=Ue(),{startWithPragma:a}=bo(),n=new Set(["position","raw"]);function u(i,l,p){if((i.type==="front-matter"||i.type==="code"||i.type==="yaml"||i.type==="import"||i.type==="export"||i.type==="jsx")&&delete l.value,i.type==="list"&&delete l.isAligned,(i.type==="list"||i.type==="listItem")&&(delete l.spread,delete l.loose),i.type==="text"||(i.type==="inlineCode"&&(l.value=i.value.replace(/[\t\n ]+/g," ")),i.type==="wikiLink"&&(l.value=i.value.trim().replace(/[\t\n]+/g," ")),(i.type==="definition"||i.type==="linkReference"||i.type==="imageReference")&&(l.label=t(i.label)),(i.type==="definition"||i.type==="link"||i.type==="image")&&i.title&&(l.title=i.title.replace(/\\(["')])/g,"$1")),p&&p.type==="root"&&p.children.length>0&&(p.children[0]===i||s(p.children[0])&&p.children[1]===i)&&i.type==="html"&&a(i.value)))return null}u.ignoredProperties=n,r.exports=u}}),ng=te({"src/language-markdown/printer-markdown.js"(e,r){"use strict";ne();var t=So(),{getLast:s,getMinNotPresentContinuousCount:a,getMaxContinuousCount:n,getStringWidth:u,isNonEmptyArray:i}=Ue(),{builders:{breakParent:l,join:p,line:d,literalline:y,markAsRoot:g,hardline:c,softline:f,ifBreak:E,fill:_,align:w,indent:F,group:N,hardlineWithoutBreakParent:x},utils:{normalizeDoc:I,replaceTextEndOfLine:P},printer:{printDocToString:$}}=qe(),D=eg(),{insertPragma:T}=bo(),{locStart:m,locEnd:C}=xo(),o=tg(),h=rg(),{getFencedCodeBlockValue:v,hasGitDiffFriendlyOrderedList:S,splitText:b,punctuationPattern:B,INLINE_NODE_TYPES:k,INLINE_NODE_WRAPPER_TYPES:M,isAutolink:R}=nu(),q=new Set(["importExport"]),J=["heading","tableCell","link","wikiLink"],L=new Set(["listItem","definition","footnoteDefinition"]);function Q(oe,H,pe){let X=oe.getValue();if(ge(oe))return b(H.originalText.slice(X.position.start.offset,X.position.end.offset),H).map(le=>le.type==="word"?le.value:le.value===""?"":W(oe,le.value,H));switch(X.type){case"front-matter":return H.originalText.slice(X.position.start.offset,X.position.end.offset);case"root":return X.children.length===0?"":[I(de(oe,H,pe)),q.has(z(X).type)?"":c];case"paragraph":return ue(oe,H,pe,{postprocessor:_});case"sentence":return ue(oe,H,pe);case"word":{let le=X.value.replace(/\*/g,"\\$&").replace(new RegExp([`(^|${B})(_+)`,`(_+)(${B}|$)`].join("|"),"g"),(De,A,G,re,ye)=>(G?`${A}${G}`:`${re}${ye}`).replace(/_/g,"\\_")),Ae=(De,A,G)=>De.type==="sentence"&&G===0,Ee=(De,A,G)=>R(De.children[G-1]);return le!==X.value&&(oe.match(void 0,Ae,Ee)||oe.match(void 0,Ae,(De,A,G)=>De.type==="emphasis"&&G===0,Ee))&&(le=le.replace(/^(\\?[*_])+/,De=>De.replace(/\\/g,""))),le}case"whitespace":{let le=oe.getParentNode(),Ae=le.children.indexOf(X),Ee=le.children[Ae+1],De=Ee&&/^>|^(?:[*+-]|#{1,6}|\d+[).])$/.test(Ee.value)?"never":H.proseWrap;return W(oe,X.value,{proseWrap:De})}case"emphasis":{let le;if(R(X.children[0]))le=H.originalText[X.position.start.offset];else{let Ae=oe.getParentNode(),Ee=Ae.children.indexOf(X),De=Ae.children[Ee-1],A=Ae.children[Ee+1];le=De&&De.type==="sentence"&&De.children.length>0&&s(De.children).type==="word"&&!s(De.children).hasTrailingPunctuation||A&&A.type==="sentence"&&A.children.length>0&&A.children[0].type==="word"&&!A.children[0].hasLeadingPunctuation||ce(oe,"emphasis")?"*":"_"}return[le,ue(oe,H,pe),le]}case"strong":return["**",ue(oe,H,pe),"**"];case"delete":return["~~",ue(oe,H,pe),"~~"];case"inlineCode":{let le=a(X.value,"`"),Ae="`".repeat(le||1),Ee=le&&!/^\s/.test(X.value)?" ":"";return[Ae,Ee,X.value,Ee,Ae]}case"wikiLink":{let le="";return H.proseWrap==="preserve"?le=X.value:le=X.value.replace(/[\t\n]+/g," "),["[[",le,"]]"]}case"link":switch(H.originalText[X.position.start.offset]){case"<":{let le="mailto:";return["<",X.url.startsWith(le)&&H.originalText.slice(X.position.start.offset+1,X.position.start.offset+1+le.length)!==le?X.url.slice(le.length):X.url,">"]}case"[":return["[",ue(oe,H,pe),"](",he(X.url,")"),we(X.title,H),")"];default:return H.originalText.slice(X.position.start.offset,X.position.end.offset)}case"image":return["![",X.alt||"","](",he(X.url,")"),we(X.title,H),")"];case"blockquote":return["> ",w("> ",ue(oe,H,pe))];case"heading":return["#".repeat(X.depth)+" ",ue(oe,H,pe)];case"code":{if(X.isIndented){let Ee=" ".repeat(4);return w(Ee,[Ee,...P(X.value,c)])}let le=H.__inJsTemplate?"~":"`",Ae=le.repeat(Math.max(3,n(X.value,le)+1));return[Ae,X.lang||"",X.meta?" "+X.meta:"",c,...P(v(X,H.originalText),c),c,Ae]}case"html":{let le=oe.getParentNode(),Ae=le.type==="root"&&s(le.children)===X?X.value.trimEnd():X.value,Ee=/^$/s.test(Ae);return P(Ae,Ee?c:g(y))}case"list":{let le=Y(X,oe.getParentNode()),Ae=S(X,H);return ue(oe,H,pe,{processor:(Ee,De)=>{let A=re(),G=Ee.getValue();if(G.children.length===2&&G.children[1].type==="html"&&G.children[0].position.start.column!==G.children[1].position.start.column)return[A,V(Ee,H,pe,A)];return[A,w(" ".repeat(A.length),V(Ee,H,pe,A))];function re(){let ye=X.ordered?(De===0?X.start:Ae?1:X.start+De)+(le%2===0?". ":") "):le%2===0?"- ":"* ";return X.isAligned||X.hasIndentedCodeblock?j(ye,H):ye}}})}case"thematicBreak":{let le=ee(oe,"list");return le===-1?"---":Y(oe.getParentNode(le),oe.getParentNode(le+1))%2===0?"***":"---"}case"linkReference":return["[",ue(oe,H,pe),"]",X.referenceType==="full"?Ne(X):X.referenceType==="collapsed"?"[]":""];case"imageReference":switch(X.referenceType){case"full":return["![",X.alt||"","]",Ne(X)];default:return["![",X.alt,"]",X.referenceType==="collapsed"?"[]":""]}case"definition":{let le=H.proseWrap==="always"?d:" ";return N([Ne(X),":",F([le,he(X.url),X.title===null?"":[le,we(X.title,H,!1)]])])}case"footnote":return["[^",ue(oe,H,pe),"]"];case"footnoteReference":return Pe(X);case"footnoteDefinition":{let le=oe.getParentNode().children[oe.getName()+1],Ae=X.children.length===1&&X.children[0].type==="paragraph"&&(H.proseWrap==="never"||H.proseWrap==="preserve"&&X.children[0].position.start.line===X.children[0].position.end.line);return[Pe(X),": ",Ae?ue(oe,H,pe):N([w(" ".repeat(4),ue(oe,H,pe,{processor:(Ee,De)=>De===0?N([f,pe()]):pe()})),le&&le.type==="footnoteDefinition"?f:""])]}case"table":return K(oe,H,pe);case"tableCell":return ue(oe,H,pe);case"break":return/\s/.test(H.originalText[X.position.start.offset])?[" ",g(y)]:["\\",c];case"liquidNode":return P(X.value,c);case"importExport":return[X.value,c];case"esComment":return["{/* ",X.value," */}"];case"jsx":return X.value;case"math":return["$$",c,X.value?[...P(X.value,c),c]:"","$$"];case"inlineMath":return H.originalText.slice(m(X),C(X));case"tableRow":case"listItem":default:throw new Error(`Unknown markdown type ${JSON.stringify(X.type)}`)}}function V(oe,H,pe,X){let le=oe.getValue(),Ae=le.checked===null?"":le.checked?"[x] ":"[ ] ";return[Ae,ue(oe,H,pe,{processor:(Ee,De)=>{if(De===0&&Ee.getValue().type!=="list")return w(" ".repeat(Ae.length),pe());let A=" ".repeat(ke(H.tabWidth-X.length,0,3));return[A,w(A,pe())]}})]}function j(oe,H){let pe=X();return oe+" ".repeat(pe>=4?0:pe);function X(){let le=oe.length%H.tabWidth;return le===0?0:H.tabWidth-le}}function Y(oe,H){return ie(oe,H,pe=>pe.ordered===oe.ordered)}function ie(oe,H,pe){let X=-1;for(let le of H.children)if(le.type===oe.type&&pe(le)?X++:X=-1,le===oe)return X}function ee(oe,H){let pe=Array.isArray(H)?H:[H],X=-1,le;for(;le=oe.getParentNode(++X);)if(pe.includes(le.type))return X;return-1}function ce(oe,H){let pe=ee(oe,H);return pe===-1?null:oe.getParentNode(pe)}function W(oe,H,pe){if(pe.proseWrap==="preserve"&&H===` +`)return c;let X=pe.proseWrap==="always"&&!ce(oe,J);return H!==""?X?d:" ":X?f:""}function K(oe,H,pe){let X=oe.getValue(),le=[],Ae=oe.map(ye=>ye.map((Ce,Be)=>{let ve=$(pe(),H).formatted,ze=u(ve);return le[Be]=Math.max(le[Be]||3,ze),{text:ve,width:ze}},"children"),"children"),Ee=A(!1);if(H.proseWrap!=="never")return[l,Ee];let De=A(!0);return[l,N(E(De,Ee))];function A(ye){let Ce=[re(Ae[0],ye),G(ye)];return Ae.length>1&&Ce.push(p(x,Ae.slice(1).map(Be=>re(Be,ye)))),p(x,Ce)}function G(ye){return`| ${le.map((Be,ve)=>{let ze=X.align[ve],xe=ze==="center"||ze==="left"?":":"-",Ye=ze==="center"||ze==="right"?":":"-",Se=ye?"-":"-".repeat(Be-2);return`${xe}${Se}${Ye}`}).join(" | ")} |`}function re(ye,Ce){return`| ${ye.map((ve,ze)=>{let{text:xe,width:Ye}=ve;if(Ce)return xe;let Se=le[ze]-Ye,Ie=X.align[ze],Oe=0;Ie==="right"?Oe=Se:Ie==="center"&&(Oe=Math.floor(Se/2));let Je=Se-Oe;return`${" ".repeat(Oe)}${xe}${" ".repeat(Je)}`}).join(" | ")} |`}}function de(oe,H,pe){let X=[],le=null,{children:Ae}=oe.getValue();for(let[Ee,De]of Ae.entries())switch(U(De)){case"start":le===null&&(le={index:Ee,offset:De.position.end.offset});break;case"end":le!==null&&(X.push({start:le,end:{index:Ee,offset:De.position.start.offset}}),le=null);break;default:break}return ue(oe,H,pe,{processor:(Ee,De)=>{if(X.length>0){let A=X[0];if(De===A.start.index)return[Fe(Ae[A.start.index]),H.originalText.slice(A.start.offset,A.end.offset),Fe(Ae[A.end.index])];if(A.start.index3&&arguments[3]!==void 0?arguments[3]:{},{postprocessor:le}=X,Ae=X.processor||(()=>pe()),Ee=oe.getValue(),De=[],A;return oe.each((G,re)=>{let ye=G.getValue(),Ce=Ae(G,re);if(Ce!==!1){let Be={parts:De,prevNode:A,parentNode:Ee,options:H};Z(ye,Be)&&(De.push(c),A&&q.has(A.type)||(se(ye,Be)||fe(ye,Be))&&De.push(c),fe(ye,Be)&&De.push(c)),De.push(Ce),A=ye}},"children"),le?le(De):De}function Fe(oe){if(oe.type==="html")return oe.value;if(oe.type==="paragraph"&&Array.isArray(oe.children)&&oe.children.length===1&&oe.children[0].type==="esComment")return["{/* ",oe.children[0].value," */}"]}function z(oe){let H=oe;for(;i(H.children);)H=s(H.children);return H}function U(oe){let H;if(oe.type==="html")H=oe.value.match(/^$/);else{let pe;oe.type==="esComment"?pe=oe:oe.type==="paragraph"&&oe.children.length===1&&oe.children[0].type==="esComment"&&(pe=oe.children[0]),pe&&(H=pe.value.match(/^prettier-ignore(?:-(start|end))?$/))}return H?H[1]||"next":!1}function Z(oe,H){let pe=H.parts.length===0,X=k.includes(oe.type),le=oe.type==="html"&&M.includes(H.parentNode.type);return!pe&&!X&&!le}function se(oe,H){var pe,X,le;let Ee=(H.prevNode&&H.prevNode.type)===oe.type&&L.has(oe.type),De=H.parentNode.type==="listItem"&&!H.parentNode.loose,A=((pe=H.prevNode)===null||pe===void 0?void 0:pe.type)==="listItem"&&H.prevNode.loose,G=U(H.prevNode)==="next",re=oe.type==="html"&&((X=H.prevNode)===null||X===void 0?void 0:X.type)==="html"&&H.prevNode.position.end.line+1===oe.position.start.line,ye=oe.type==="html"&&H.parentNode.type==="listItem"&&((le=H.prevNode)===null||le===void 0?void 0:le.type)==="paragraph"&&H.prevNode.position.end.line+1===oe.position.start.line;return A||!(Ee||De||G||re||ye)}function fe(oe,H){let pe=H.prevNode&&H.prevNode.type==="list",X=oe.type==="code"&&oe.isIndented;return pe&&X}function ge(oe){let H=ce(oe,["linkReference","imageReference"]);return H&&(H.type!=="linkReference"||H.referenceType!=="full")}function he(oe){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],pe=[" ",...Array.isArray(H)?H:[H]];return new RegExp(pe.map(X=>`\\${X}`).join("|")).test(oe)?`<${oe}>`:oe}function we(oe,H){let pe=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!oe)return"";if(pe)return" "+we(oe,H,!1);if(oe=oe.replace(/\\(["')])/g,"$1"),oe.includes('"')&&oe.includes("'")&&!oe.includes(")"))return`(${oe})`;let X=oe.split("'").length-1,le=oe.split('"').length-1,Ae=X>le?'"':le>X||H.singleQuote?"'":'"';return oe=oe.replace(/\\/,"\\\\"),oe=oe.replace(new RegExp(`(${Ae})`,"g"),"\\$1"),`${Ae}${oe}${Ae}`}function ke(oe,H,pe){return oepe?pe:oe}function Re(oe){let H=Number(oe.getName());if(H===0)return!1;let pe=oe.getParentNode().children[H-1];return U(pe)==="next"}function Ne(oe){return`[${t(oe.label)}]`}function Pe(oe){return`[^${oe.label}]`}r.exports={preprocess:o,print:Q,embed:D,massageAstNode:h,hasPrettierIgnore:Re,insertPragma:T}}}),ug=te({"src/language-markdown/options.js"(e,r){"use strict";ne();var t=jt();r.exports={proseWrap:t.proseWrap,singleQuote:t.singleQuote}}}),sg=te({"src/language-markdown/parsers.js"(){ne()}}),Aa=te({"node_modules/linguist-languages/data/Markdown.json"(e,r){r.exports={name:"Markdown",type:"prose",color:"#083fa1",aliases:["pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".md",".livemd",".markdown",".mdown",".mdwn",".mdx",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr"],tmScope:"source.gfm",languageId:222}}}),ig=te({"src/language-markdown/index.js"(e,r){"use strict";ne();var t=wt(),s=ng(),a=ug(),n=sg(),u=[t(Aa(),l=>({since:"1.8.0",parsers:["markdown"],vscodeLanguageIds:["markdown"],filenames:[...l.filenames,"README"],extensions:l.extensions.filter(p=>p!==".mdx")})),t(Aa(),()=>({name:"MDX",since:"1.15.0",parsers:["mdx"],vscodeLanguageIds:["mdx"],filenames:[],extensions:[".mdx"]}))],i={mdast:s};r.exports={languages:u,options:a,printers:i,parsers:n}}}),ag=te({"src/language-html/clean.js"(e,r){"use strict";ne();var{isFrontMatterNode:t}=Ue(),s=new Set(["sourceSpan","startSourceSpan","endSourceSpan","nameSpan","valueSpan"]);function a(n,u){if(n.type==="text"||n.type==="comment"||t(n)||n.type==="yaml"||n.type==="toml")return null;n.type==="attribute"&&delete u.value,n.type==="docType"&&delete u.value}a.ignoredProperties=s,r.exports=a}}),og=te({"src/language-html/constants.evaluate.js"(e,r){r.exports={CSS_DISPLAY_TAGS:{area:"none",base:"none",basefont:"none",datalist:"none",head:"none",link:"none",meta:"none",noembed:"none",noframes:"none",param:"block",rp:"none",script:"block",source:"block",style:"none",template:"inline",track:"block",title:"none",html:"block",body:"block",address:"block",blockquote:"block",center:"block",div:"block",figure:"block",figcaption:"block",footer:"block",form:"block",header:"block",hr:"block",legend:"block",listing:"block",main:"block",p:"block",plaintext:"block",pre:"block",xmp:"block",slot:"contents",ruby:"ruby",rt:"ruby-text",article:"block",aside:"block",h1:"block",h2:"block",h3:"block",h4:"block",h5:"block",h6:"block",hgroup:"block",nav:"block",section:"block",dir:"block",dd:"block",dl:"block",dt:"block",ol:"block",ul:"block",li:"list-item",table:"table",caption:"table-caption",colgroup:"table-column-group",col:"table-column",thead:"table-header-group",tbody:"table-row-group",tfoot:"table-footer-group",tr:"table-row",td:"table-cell",th:"table-cell",fieldset:"block",button:"inline-block",details:"block",summary:"block",dialog:"block",meter:"inline-block",progress:"inline-block",object:"inline-block",video:"inline-block",audio:"inline-block",select:"inline-block",option:"block",optgroup:"block"},CSS_DISPLAY_DEFAULT:"inline",CSS_WHITE_SPACE_TAGS:{listing:"pre",plaintext:"pre",pre:"pre",xmp:"pre",nobr:"nowrap",table:"initial",textarea:"pre-wrap"},CSS_WHITE_SPACE_DEFAULT:"normal"}}}),lg=te({"src/language-html/utils/is-unknown-namespace.js"(e,r){"use strict";ne();function t(s){return s.type==="element"&&!s.hasExplicitNamespace&&!["html","svg"].includes(s.namespace)}r.exports=t}}),qt=te({"src/language-html/utils/index.js"(e,r){"use strict";ne();var{inferParserByLanguage:t,isFrontMatterNode:s}=Ue(),{builders:{line:a,hardline:n,join:u},utils:{getDocParts:i,replaceTextEndOfLine:l}}=qe(),{CSS_DISPLAY_TAGS:p,CSS_DISPLAY_DEFAULT:d,CSS_WHITE_SPACE_TAGS:y,CSS_WHITE_SPACE_DEFAULT:g}=og(),c=lg(),f=new Set([" ",` +`,"\f","\r"," "]),E=A=>A.replace(/^[\t\n\f\r ]+/,""),_=A=>A.replace(/[\t\n\f\r ]+$/,""),w=A=>E(_(A)),F=A=>A.replace(/^[\t\f\r ]*\n/g,""),N=A=>F(_(A)),x=A=>A.split(/[\t\n\f\r ]+/),I=A=>A.match(/^[\t\n\f\r ]*/)[0],P=A=>{let[,G,re,ye]=A.match(/^([\t\n\f\r ]*)(.*?)([\t\n\f\r ]*)$/s);return{leadingWhitespace:G,trailingWhitespace:ye,text:re}},$=A=>/[\t\n\f\r ]/.test(A);function D(A,G){return!!(A.type==="ieConditionalComment"&&A.lastChild&&!A.lastChild.isSelfClosing&&!A.lastChild.endSourceSpan||A.type==="ieConditionalComment"&&!A.complete||se(A)&&A.children.some(re=>re.type!=="text"&&re.type!=="interpolation")||X(A,G)&&!o(A)&&A.type!=="interpolation")}function T(A){return A.type==="attribute"||!A.parent||!A.prev?!1:m(A.prev)}function m(A){return A.type==="comment"&&A.value.trim()==="prettier-ignore"}function C(A){return A.type==="text"||A.type==="comment"}function o(A){return A.type==="element"&&(A.fullName==="script"||A.fullName==="style"||A.fullName==="svg:style"||c(A)&&(A.name==="script"||A.name==="style"))}function h(A){return A.children&&!o(A)}function v(A){return o(A)||A.type==="interpolation"||S(A)}function S(A){return we(A).startsWith("pre")}function b(A,G){let re=ye();if(re&&!A.prev&&A.parent&&A.parent.tagDefinition&&A.parent.tagDefinition.ignoreFirstLf)return A.type==="interpolation";return re;function ye(){return s(A)?!1:(A.type==="text"||A.type==="interpolation")&&A.prev&&(A.prev.type==="text"||A.prev.type==="interpolation")?!0:!A.parent||A.parent.cssDisplay==="none"?!1:se(A.parent)?!0:!(!A.prev&&(A.parent.type==="root"||se(A)&&A.parent||o(A.parent)||H(A.parent,G)||!ue(A.parent.cssDisplay))||A.prev&&!U(A.prev.cssDisplay))}}function B(A,G){return s(A)?!1:(A.type==="text"||A.type==="interpolation")&&A.next&&(A.next.type==="text"||A.next.type==="interpolation")?!0:!A.parent||A.parent.cssDisplay==="none"?!1:se(A.parent)?!0:!(!A.next&&(A.parent.type==="root"||se(A)&&A.parent||o(A.parent)||H(A.parent,G)||!Fe(A.parent.cssDisplay))||A.next&&!z(A.next.cssDisplay))}function k(A){return Z(A.cssDisplay)&&!o(A)}function M(A){return s(A)||A.next&&A.sourceSpan.end&&A.sourceSpan.end.line+10&&(["body","script","style"].includes(A.name)||A.children.some(G=>ee(G)))||A.firstChild&&A.firstChild===A.lastChild&&A.firstChild.type!=="text"&&V(A.firstChild)&&(!A.lastChild.isTrailingSpaceSensitive||j(A.lastChild))}function q(A){return A.type==="element"&&A.children.length>0&&(["html","head","ul","ol","select"].includes(A.name)||A.cssDisplay.startsWith("table")&&A.cssDisplay!=="table-cell")}function J(A){return Y(A)||A.prev&&L(A.prev)||Q(A)}function L(A){return Y(A)||A.type==="element"&&A.fullName==="br"||Q(A)}function Q(A){return V(A)&&j(A)}function V(A){return A.hasLeadingSpaces&&(A.prev?A.prev.sourceSpan.end.lineA.sourceSpan.end.line:A.parent.type==="root"||A.parent.endSourceSpan&&A.parent.endSourceSpan.start.line>A.sourceSpan.end.line)}function Y(A){switch(A.type){case"ieConditionalComment":case"comment":case"directive":return!0;case"element":return["script","select"].includes(A.name)}return!1}function ie(A){return A.lastChild?ie(A.lastChild):A}function ee(A){return A.children&&A.children.some(G=>G.type!=="text")}function ce(A){let{type:G,lang:re}=A.attrMap;if(G==="module"||G==="text/javascript"||G==="text/babel"||G==="application/javascript"||re==="jsx")return"babel";if(G==="application/x-typescript"||re==="ts"||re==="tsx")return"typescript";if(G==="text/markdown")return"markdown";if(G==="text/html")return"html";if(G&&(G.endsWith("json")||G.endsWith("importmap"))||G==="speculationrules")return"json";if(G==="text/x-handlebars-template")return"glimmer"}function W(A,G){let{lang:re}=A.attrMap;if(!re||re==="postcss"||re==="css")return"css";if(re==="scss")return"scss";if(re==="less")return"less";if(re==="stylus")return t("stylus",G)}function K(A,G){if(A.name==="script"&&!A.attrMap.src)return!A.attrMap.lang&&!A.attrMap.type?"babel":ce(A);if(A.name==="style")return W(A,G);if(G&&X(A,G))return ce(A)||!("src"in A.attrMap)&&t(A.attrMap.lang,G)}function de(A){return A==="block"||A==="list-item"||A.startsWith("table")}function ue(A){return!de(A)&&A!=="inline-block"}function Fe(A){return!de(A)&&A!=="inline-block"}function z(A){return!de(A)}function U(A){return!de(A)}function Z(A){return!de(A)&&A!=="inline-block"}function se(A){return we(A).startsWith("pre")}function fe(A,G){let re=0;for(let ye=A.stack.length-1;ye>=0;ye--){let Ce=A.stack[ye];Ce&&typeof Ce=="object"&&!Array.isArray(Ce)&&G(Ce)&&re++}return re}function ge(A,G){let re=A;for(;re;){if(G(re))return!0;re=re.parent}return!1}function he(A,G){if(A.prev&&A.prev.type==="comment"){let ye=A.prev.value.match(/^\s*display:\s*([a-z]+)\s*$/);if(ye)return ye[1]}let re=!1;if(A.type==="element"&&A.namespace==="svg")if(ge(A,ye=>ye.fullName==="svg:foreignObject"))re=!0;else return A.name==="svg"?"inline-block":"block";switch(G.htmlWhitespaceSensitivity){case"strict":return"inline";case"ignore":return"block";default:return G.parser==="vue"&&A.parent&&A.parent.type==="root"?"block":A.type==="element"&&(!A.namespace||re||c(A))&&p[A.name]||d}}function we(A){return A.type==="element"&&(!A.namespace||c(A))&&y[A.name]||g}function ke(A){let G=Number.POSITIVE_INFINITY;for(let re of A.split(` +`)){if(re.length===0)continue;if(!f.has(re[0]))return 0;let ye=I(re).length;re.length!==ye&&ye1&&arguments[1]!==void 0?arguments[1]:ke(A);return G===0?A:A.split(` +`).map(re=>re.slice(G)).join(` +`)}function Ne(A,G){let re=0;for(let ye=0;ye1&&arguments[1]!==void 0?arguments[1]:A.value;return A.parent.isWhitespaceSensitive?A.parent.isIndentationSensitive?l(G):l(Re(N(G)),n):i(u(a,x(G)))}function De(A,G){return pe(A,G)&&A.name==="script"}r.exports={htmlTrim:w,htmlTrimPreserveIndentation:N,hasHtmlWhitespace:$,getLeadingAndTrailingHtmlWhitespace:P,canHaveInterpolation:h,countChars:Ne,countParents:fe,dedentString:Re,forceBreakChildren:q,forceBreakContent:R,forceNextEmptyLine:M,getLastDescendant:ie,getNodeCssStyleDisplay:he,getNodeCssStyleWhiteSpace:we,hasPrettierIgnore:T,inferScriptParser:K,isVueCustomBlock:H,isVueNonHtmlBlock:X,isVueScriptTag:De,isVueSlotAttribute:le,isVueSfcBindingsAttribute:Ae,isVueSfcBlock:pe,isDanglingSpaceSensitiveNode:k,isIndentationSensitiveNode:S,isLeadingSpaceSensitiveNode:b,isPreLikeNode:se,isScriptLikeTag:o,isTextLikeNode:C,isTrailingSpaceSensitiveNode:B,isWhitespaceSensitiveNode:v,isUnknownNamespace:c,preferHardlineAsLeadingSpaces:J,preferHardlineAsTrailingSpaces:L,shouldPreserveContent:D,unescapeQuoteEntities:Pe,getTextValueParts:Ee}}}),cg=te({"node_modules/angular-html-parser/lib/compiler/src/chars.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.$EOF=0,e.$BSPACE=8,e.$TAB=9,e.$LF=10,e.$VTAB=11,e.$FF=12,e.$CR=13,e.$SPACE=32,e.$BANG=33,e.$DQ=34,e.$HASH=35,e.$$=36,e.$PERCENT=37,e.$AMPERSAND=38,e.$SQ=39,e.$LPAREN=40,e.$RPAREN=41,e.$STAR=42,e.$PLUS=43,e.$COMMA=44,e.$MINUS=45,e.$PERIOD=46,e.$SLASH=47,e.$COLON=58,e.$SEMICOLON=59,e.$LT=60,e.$EQ=61,e.$GT=62,e.$QUESTION=63,e.$0=48,e.$7=55,e.$9=57,e.$A=65,e.$E=69,e.$F=70,e.$X=88,e.$Z=90,e.$LBRACKET=91,e.$BACKSLASH=92,e.$RBRACKET=93,e.$CARET=94,e.$_=95,e.$a=97,e.$b=98,e.$e=101,e.$f=102,e.$n=110,e.$r=114,e.$t=116,e.$u=117,e.$v=118,e.$x=120,e.$z=122,e.$LBRACE=123,e.$BAR=124,e.$RBRACE=125,e.$NBSP=160,e.$PIPE=124,e.$TILDA=126,e.$AT=64,e.$BT=96;function r(i){return i>=e.$TAB&&i<=e.$SPACE||i==e.$NBSP}e.isWhitespace=r;function t(i){return e.$0<=i&&i<=e.$9}e.isDigit=t;function s(i){return i>=e.$a&&i<=e.$z||i>=e.$A&&i<=e.$Z}e.isAsciiLetter=s;function a(i){return i>=e.$a&&i<=e.$f||i>=e.$A&&i<=e.$F||t(i)}e.isAsciiHexDigit=a;function n(i){return i===e.$LF||i===e.$CR}e.isNewLine=n;function u(i){return e.$0<=i&&i<=e.$7}e.isOctalDigit=u}}),pg=te({"node_modules/angular-html-parser/lib/compiler/src/aot/static_symbol.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=class{constructor(s,a,n){this.filePath=s,this.name=a,this.members=n}assertNoMembers(){if(this.members.length)throw new Error(`Illegal state: symbol without members expected, but got ${JSON.stringify(this)}.`)}};e.StaticSymbol=r;var t=class{constructor(){this.cache=new Map}get(s,a,n){n=n||[];let u=n.length?`.${n.join(".")}`:"",i=`"${s}".${a}${u}`,l=this.cache.get(i);return l||(l=new r(s,a,n),this.cache.set(i,l)),l}};e.StaticSymbolCache=t}}),fg=te({"node_modules/angular-html-parser/lib/compiler/src/util.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=/-+([a-z0-9])/g;function t(o){return o.replace(r,function(){for(var h=arguments.length,v=new Array(h),S=0;Su(v,this,h))}visitStringMap(o,h){let v={};return Object.keys(o).forEach(S=>{v[S]=u(o[S],this,h)}),v}visitPrimitive(o,h){return o}visitOther(o,h){return o}};e.ValueTransformer=p,e.SyncAsync={assertSync:o=>{if(P(o))throw new Error("Illegal state: value cannot be a promise");return o},then:(o,h)=>P(o)?o.then(h):h(o),all:o=>o.some(P)?Promise.all(o):o};function d(o){throw new Error(`Internal Error: ${o}`)}e.error=d;function y(o,h){let v=Error(o);return v[g]=!0,h&&(v[c]=h),v}e.syntaxError=y;var g="ngSyntaxError",c="ngParseErrors";function f(o){return o[g]}e.isSyntaxError=f;function E(o){return o[c]||[]}e.getParseErrors=E;function _(o){return o.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")}e.escapeRegExp=_;var w=Object.getPrototypeOf({});function F(o){return typeof o=="object"&&o!==null&&Object.getPrototypeOf(o)===w}function N(o){let h="";for(let v=0;v=55296&&S<=56319&&o.length>v+1){let b=o.charCodeAt(v+1);b>=56320&&b<=57343&&(v++,S=(S-55296<<10)+b-56320+65536)}S<=127?h+=String.fromCharCode(S):S<=2047?h+=String.fromCharCode(S>>6&31|192,S&63|128):S<=65535?h+=String.fromCharCode(S>>12|224,S>>6&63|128,S&63|128):S<=2097151&&(h+=String.fromCharCode(S>>18&7|240,S>>12&63|128,S>>6&63|128,S&63|128))}return h}e.utf8Encode=N;function x(o){if(typeof o=="string")return o;if(o instanceof Array)return"["+o.map(x).join(", ")+"]";if(o==null)return""+o;if(o.overriddenName)return`${o.overriddenName}`;if(o.name)return`${o.name}`;if(!o.toString)return"object";let h=o.toString();if(h==null)return""+h;let v=h.indexOf(` +`);return v===-1?h:h.substring(0,v)}e.stringify=x;function I(o){return typeof o=="function"&&o.hasOwnProperty("__forward_ref__")?o():o}e.resolveForwardRef=I;function P(o){return!!o&&typeof o.then=="function"}e.isPromise=P;var $=class{constructor(o){this.full=o;let h=o.split(".");this.major=h[0],this.minor=h[1],this.patch=h.slice(2).join(".")}};e.Version=$;var D=typeof window<"u"&&window,T=typeof self<"u"&&typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&self,m=typeof globalThis<"u"&&globalThis,C=m||D||T;e.global=C}}),Dg=te({"node_modules/angular-html-parser/lib/compiler/src/compile_metadata.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=pg(),t=fg(),s=/^(?:(?:\[([^\]]+)\])|(?:\(([^\)]+)\)))|(\@[-\w]+)$/;function a(v){return v.replace(/\W/g,"_")}e.sanitizeIdentifier=a;var n=0;function u(v){if(!v||!v.reference)return null;let S=v.reference;if(S instanceof r.StaticSymbol)return S.name;if(S.__anonymousType)return S.__anonymousType;let b=t.stringify(S);return b.indexOf("(")>=0?(b=`anonymous_${n++}`,S.__anonymousType=b):b=a(b),b}e.identifierName=u;function i(v){let S=v.reference;return S instanceof r.StaticSymbol?S.filePath:`./${t.stringify(S)}`}e.identifierModuleUrl=i;function l(v,S){return`View_${u({reference:v})}_${S}`}e.viewClassName=l;function p(v){return`RenderType_${u({reference:v})}`}e.rendererTypeName=p;function d(v){return`HostView_${u({reference:v})}`}e.hostViewClassName=d;function y(v){return`${u({reference:v})}NgFactory`}e.componentFactoryName=y;var g;(function(v){v[v.Pipe=0]="Pipe",v[v.Directive=1]="Directive",v[v.NgModule=2]="NgModule",v[v.Injectable=3]="Injectable"})(g=e.CompileSummaryKind||(e.CompileSummaryKind={}));function c(v){return v.value!=null?a(v.value):u(v.identifier)}e.tokenName=c;function f(v){return v.identifier!=null?v.identifier.reference:v.value}e.tokenReference=f;var E=class{constructor(){let{moduleUrl:v,styles:S,styleUrls:b}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.moduleUrl=v||null,this.styles=P(S),this.styleUrls=P(b)}};e.CompileStylesheetMetadata=E;var _=class{constructor(v){let{encapsulation:S,template:b,templateUrl:B,htmlAst:k,styles:M,styleUrls:R,externalStylesheets:q,animations:J,ngContentSelectors:L,interpolation:Q,isInline:V,preserveWhitespaces:j}=v;if(this.encapsulation=S,this.template=b,this.templateUrl=B,this.htmlAst=k,this.styles=P(M),this.styleUrls=P(R),this.externalStylesheets=P(q),this.animations=J?D(J):[],this.ngContentSelectors=L||[],Q&&Q.length!=2)throw new Error("'interpolation' should have a start and an end symbol.");this.interpolation=Q,this.isInline=V,this.preserveWhitespaces=j}toSummary(){return{ngContentSelectors:this.ngContentSelectors,encapsulation:this.encapsulation,styles:this.styles,animations:this.animations}}};e.CompileTemplateMetadata=_;var w=class{static create(v){let{isHost:S,type:b,isComponent:B,selector:k,exportAs:M,changeDetection:R,inputs:q,outputs:J,host:L,providers:Q,viewProviders:V,queries:j,guards:Y,viewQueries:ie,entryComponents:ee,template:ce,componentViewType:W,rendererType:K,componentFactory:de}=v,ue={},Fe={},z={};L!=null&&Object.keys(L).forEach(se=>{let fe=L[se],ge=se.match(s);ge===null?z[se]=fe:ge[1]!=null?Fe[ge[1]]=fe:ge[2]!=null&&(ue[ge[2]]=fe)});let U={};q!=null&&q.forEach(se=>{let fe=t.splitAtColon(se,[se,se]);U[fe[0]]=fe[1]});let Z={};return J!=null&&J.forEach(se=>{let fe=t.splitAtColon(se,[se,se]);Z[fe[0]]=fe[1]}),new w({isHost:S,type:b,isComponent:!!B,selector:k,exportAs:M,changeDetection:R,inputs:U,outputs:Z,hostListeners:ue,hostProperties:Fe,hostAttributes:z,providers:Q,viewProviders:V,queries:j,guards:Y,viewQueries:ie,entryComponents:ee,template:ce,componentViewType:W,rendererType:K,componentFactory:de})}constructor(v){let{isHost:S,type:b,isComponent:B,selector:k,exportAs:M,changeDetection:R,inputs:q,outputs:J,hostListeners:L,hostProperties:Q,hostAttributes:V,providers:j,viewProviders:Y,queries:ie,guards:ee,viewQueries:ce,entryComponents:W,template:K,componentViewType:de,rendererType:ue,componentFactory:Fe}=v;this.isHost=!!S,this.type=b,this.isComponent=B,this.selector=k,this.exportAs=M,this.changeDetection=R,this.inputs=q,this.outputs=J,this.hostListeners=L,this.hostProperties=Q,this.hostAttributes=V,this.providers=P(j),this.viewProviders=P(Y),this.queries=P(ie),this.guards=ee,this.viewQueries=P(ce),this.entryComponents=P(W),this.template=K,this.componentViewType=de,this.rendererType=ue,this.componentFactory=Fe}toSummary(){return{summaryKind:g.Directive,type:this.type,isComponent:this.isComponent,selector:this.selector,exportAs:this.exportAs,inputs:this.inputs,outputs:this.outputs,hostListeners:this.hostListeners,hostProperties:this.hostProperties,hostAttributes:this.hostAttributes,providers:this.providers,viewProviders:this.viewProviders,queries:this.queries,guards:this.guards,viewQueries:this.viewQueries,entryComponents:this.entryComponents,changeDetection:this.changeDetection,template:this.template&&this.template.toSummary(),componentViewType:this.componentViewType,rendererType:this.rendererType,componentFactory:this.componentFactory}}};e.CompileDirectiveMetadata=w;var F=class{constructor(v){let{type:S,name:b,pure:B}=v;this.type=S,this.name=b,this.pure=!!B}toSummary(){return{summaryKind:g.Pipe,type:this.type,name:this.name,pure:this.pure}}};e.CompilePipeMetadata=F;var N=class{};e.CompileShallowModuleMetadata=N;var x=class{constructor(v){let{type:S,providers:b,declaredDirectives:B,exportedDirectives:k,declaredPipes:M,exportedPipes:R,entryComponents:q,bootstrapComponents:J,importedModules:L,exportedModules:Q,schemas:V,transitiveModule:j,id:Y}=v;this.type=S||null,this.declaredDirectives=P(B),this.exportedDirectives=P(k),this.declaredPipes=P(M),this.exportedPipes=P(R),this.providers=P(b),this.entryComponents=P(q),this.bootstrapComponents=P(J),this.importedModules=P(L),this.exportedModules=P(Q),this.schemas=P(V),this.id=Y||null,this.transitiveModule=j||null}toSummary(){let v=this.transitiveModule;return{summaryKind:g.NgModule,type:this.type,entryComponents:v.entryComponents,providers:v.providers,modules:v.modules,exportedDirectives:v.exportedDirectives,exportedPipes:v.exportedPipes}}};e.CompileNgModuleMetadata=x;var I=class{constructor(){this.directivesSet=new Set,this.directives=[],this.exportedDirectivesSet=new Set,this.exportedDirectives=[],this.pipesSet=new Set,this.pipes=[],this.exportedPipesSet=new Set,this.exportedPipes=[],this.modulesSet=new Set,this.modules=[],this.entryComponentsSet=new Set,this.entryComponents=[],this.providers=[]}addProvider(v,S){this.providers.push({provider:v,module:S})}addDirective(v){this.directivesSet.has(v.reference)||(this.directivesSet.add(v.reference),this.directives.push(v))}addExportedDirective(v){this.exportedDirectivesSet.has(v.reference)||(this.exportedDirectivesSet.add(v.reference),this.exportedDirectives.push(v))}addPipe(v){this.pipesSet.has(v.reference)||(this.pipesSet.add(v.reference),this.pipes.push(v))}addExportedPipe(v){this.exportedPipesSet.has(v.reference)||(this.exportedPipesSet.add(v.reference),this.exportedPipes.push(v))}addModule(v){this.modulesSet.has(v.reference)||(this.modulesSet.add(v.reference),this.modules.push(v))}addEntryComponent(v){this.entryComponentsSet.has(v.componentType)||(this.entryComponentsSet.add(v.componentType),this.entryComponents.push(v))}};e.TransitiveCompileNgModuleMetadata=I;function P(v){return v||[]}var $=class{constructor(v,S){let{useClass:b,useValue:B,useExisting:k,useFactory:M,deps:R,multi:q}=S;this.token=v,this.useClass=b||null,this.useValue=B,this.useExisting=k,this.useFactory=M||null,this.dependencies=R||null,this.multi=!!q}};e.ProviderMeta=$;function D(v){return v.reduce((S,b)=>{let B=Array.isArray(b)?D(b):b;return S.concat(B)},[])}e.flatten=D;function T(v){return v.replace(/(\w+:\/\/[\w:-]+)?(\/+)?/,"ng:///")}function m(v,S,b){let B;return b.isInline?S.type.reference instanceof r.StaticSymbol?B=`${S.type.reference.filePath}.${S.type.reference.name}.html`:B=`${u(v)}/${u(S.type)}.html`:B=b.templateUrl,S.type.reference instanceof r.StaticSymbol?B:T(B)}e.templateSourceUrl=m;function C(v,S){let b=v.moduleUrl.split(/\/\\/g),B=b[b.length-1];return T(`css/${S}${B}.ngstyle.js`)}e.sharedStylesheetJitUrl=C;function o(v){return T(`${u(v.type)}/module.ngfactory.js`)}e.ngModuleJitUrl=o;function h(v,S){return T(`${u(v)}/${u(S.type)}.ngfactory.js`)}e.templateJitUrl=h}}),mg=te({"node_modules/angular-html-parser/lib/compiler/src/parse_util.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=cg(),t=Dg(),s=class{constructor(d,y,g,c){this.file=d,this.offset=y,this.line=g,this.col=c}toString(){return this.offset!=null?`${this.file.url}@${this.line}:${this.col}`:this.file.url}moveBy(d){let y=this.file.content,g=y.length,c=this.offset,f=this.line,E=this.col;for(;c>0&&d<0;)if(c--,d++,y.charCodeAt(c)==r.$LF){f--;let w=y.substr(0,c-1).lastIndexOf(String.fromCharCode(r.$LF));E=w>0?c-w:c}else E--;for(;c0;){let _=y.charCodeAt(c);c++,d--,_==r.$LF?(f++,E=0):E++}return new s(this.file,c,f,E)}getContext(d,y){let g=this.file.content,c=this.offset;if(c!=null){c>g.length-1&&(c=g.length-1);let f=c,E=0,_=0;for(;E0&&(c--,E++,!(g[c]==` +`&&++_==y)););for(E=0,_=0;E2&&arguments[2]!==void 0?arguments[2]:null;this.start=d,this.end=y,this.details=g}toString(){return this.start.file.content.substring(this.start.offset,this.end.offset)}};e.ParseSourceSpan=n,e.EMPTY_PARSE_LOCATION=new s(new a("",""),0,0,0),e.EMPTY_SOURCE_SPAN=new n(e.EMPTY_PARSE_LOCATION,e.EMPTY_PARSE_LOCATION);var u;(function(d){d[d.WARNING=0]="WARNING",d[d.ERROR=1]="ERROR"})(u=e.ParseErrorLevel||(e.ParseErrorLevel={}));var i=class{constructor(d,y){let g=arguments.length>2&&arguments[2]!==void 0?arguments[2]:u.ERROR;this.span=d,this.msg=y,this.level=g}contextualMessage(){let d=this.span.start.getContext(100,3);return d?`${this.msg} ("${d.before}[${u[this.level]} ->]${d.after}")`:this.msg}toString(){let d=this.span.details?`, ${this.span.details}`:"";return`${this.contextualMessage()}: ${this.span.start}${d}`}};e.ParseError=i;function l(d,y){let g=t.identifierModuleUrl(y),c=g!=null?`in ${d} ${t.identifierName(y)} in ${g}`:`in ${d} ${t.identifierName(y)}`,f=new a("",c);return new n(new s(f,-1,-1,-1),new s(f,-1,-1,-1))}e.typeSourceSpan=l;function p(d,y,g){let c=`in ${d} ${y} in ${g}`,f=new a("",c);return new n(new s(f,-1,-1,-1),new s(f,-1,-1,-1))}e.r3JitTypeSourceSpan=p}}),dg=te({"src/language-html/print-preprocess.js"(e,r){"use strict";ne();var{ParseSourceSpan:t}=mg(),{htmlTrim:s,getLeadingAndTrailingHtmlWhitespace:a,hasHtmlWhitespace:n,canHaveInterpolation:u,getNodeCssStyleDisplay:i,isDanglingSpaceSensitiveNode:l,isIndentationSensitiveNode:p,isLeadingSpaceSensitiveNode:d,isTrailingSpaceSensitiveNode:y,isWhitespaceSensitiveNode:g,isVueScriptTag:c}=qt(),f=[_,w,N,I,P,T,$,D,m,x,C];function E(o,h){for(let v of f)v(o,h);return o}function _(o){o.walk(h=>{if(h.type==="element"&&h.tagDefinition.ignoreFirstLf&&h.children.length>0&&h.children[0].type==="text"&&h.children[0].value[0]===` +`){let v=h.children[0];v.value.length===1?h.removeChild(v):v.value=v.value.slice(1)}})}function w(o){let h=v=>v.type==="element"&&v.prev&&v.prev.type==="ieConditionalStartComment"&&v.prev.sourceSpan.end.offset===v.startSourceSpan.start.offset&&v.firstChild&&v.firstChild.type==="ieConditionalEndComment"&&v.firstChild.sourceSpan.start.offset===v.startSourceSpan.end.offset;o.walk(v=>{if(v.children)for(let S=0;S{if(S.children)for(let b=0;bh.type==="cdata",h=>``)}function x(o){let h=v=>v.type==="element"&&v.attrs.length===0&&v.children.length===1&&v.firstChild.type==="text"&&!n(v.children[0].value)&&!v.firstChild.hasLeadingSpaces&&!v.firstChild.hasTrailingSpaces&&v.isLeadingSpaceSensitive&&!v.hasLeadingSpaces&&v.isTrailingSpaceSensitive&&!v.hasTrailingSpaces&&v.prev&&v.prev.type==="text"&&v.next&&v.next.type==="text";o.walk(v=>{if(v.children)for(let S=0;S`+b.firstChild.value+``+k.value,B.sourceSpan=new t(B.sourceSpan.start,k.sourceSpan.end),B.isTrailingSpaceSensitive=k.isTrailingSpaceSensitive,B.hasTrailingSpaces=k.hasTrailingSpaces,v.removeChild(b),S--,v.removeChild(k)}})}function I(o,h){if(h.parser==="html")return;let v=/{{(.+?)}}/s;o.walk(S=>{if(u(S))for(let b of S.children){if(b.type!=="text")continue;let B=b.sourceSpan.start,k=null,M=b.value.split(v);for(let R=0;R0&&S.insertChildBefore(b,{type:"text",value:q,sourceSpan:new t(B,k)});continue}k=B.moveBy(q.length+4),S.insertChildBefore(b,{type:"interpolation",sourceSpan:new t(B,k),children:q.length===0?[]:[{type:"text",value:q,sourceSpan:new t(B.moveBy(2),k.moveBy(-2))}]})}S.removeChild(b)}})}function P(o){o.walk(h=>{if(!h.children)return;if(h.children.length===0||h.children.length===1&&h.children[0].type==="text"&&s(h.children[0].value).length===0){h.hasDanglingSpaces=h.children.length>0,h.children=[];return}let v=g(h),S=p(h);if(!v)for(let b=0;b{h.isSelfClosing=!h.children||h.type==="element"&&(h.tagDefinition.isVoid||h.startSourceSpan===h.endSourceSpan)})}function D(o,h){o.walk(v=>{v.type==="element"&&(v.hasHtmComponentClosingTag=v.endSourceSpan&&/^<\s*\/\s*\/\s*>$/.test(h.originalText.slice(v.endSourceSpan.start.offset,v.endSourceSpan.end.offset)))})}function T(o,h){o.walk(v=>{v.cssDisplay=i(v,h)})}function m(o,h){o.walk(v=>{let{children:S}=v;if(S){if(S.length===0){v.isDanglingSpaceSensitive=l(v);return}for(let b of S)b.isLeadingSpaceSensitive=d(b,h),b.isTrailingSpaceSensitive=y(b,h);for(let b=0;bc(b,h));if(!v)return;let{lang:S}=v.attrMap;(S==="ts"||S==="typescript")&&(h.__should_parse_vue_template_with_ts=!0)}}r.exports=E}}),gg=te({"src/language-html/pragma.js"(e,r){"use strict";ne();function t(a){return/^\s*/.test(a)}function s(a){return` + +`+a.replace(/^\s*\n/,"")}r.exports={hasPragma:t,insertPragma:s}}}),uu=te({"src/language-html/loc.js"(e,r){"use strict";ne();function t(a){return a.sourceSpan.start.offset}function s(a){return a.sourceSpan.end.offset}r.exports={locStart:t,locEnd:s}}}),rr=te({"src/language-html/print/tag.js"(e,r){"use strict";ne();var t=Yt(),{isNonEmptyArray:s}=Ue(),{builders:{indent:a,join:n,line:u,softline:i,hardline:l},utils:{replaceTextEndOfLine:p}}=qe(),{locStart:d,locEnd:y}=uu(),{isTextLikeNode:g,getLastDescendant:c,isPreLikeNode:f,hasPrettierIgnore:E,shouldPreserveContent:_,isVueSfcBlock:w}=qt();function F(L,Q){return[L.isSelfClosing?"":N(L,Q),x(L,Q)]}function N(L,Q){return L.lastChild&&o(L.lastChild)?"":[I(L,Q),$(L,Q)]}function x(L,Q){return(L.next?m(L.next):C(L.parent))?"":[D(L,Q),P(L,Q)]}function I(L,Q){return C(L)?D(L.lastChild,Q):""}function P(L,Q){return o(L)?$(L.parent,Q):h(L)?q(L.next):""}function $(L,Q){if(t(!L.isSelfClosing),T(L,Q))return"";switch(L.type){case"ieConditionalComment":return"";case"ieConditionalStartComment":return"]>";case"interpolation":return"}}";case"element":if(L.isSelfClosing)return"/>";default:return">"}}function T(L,Q){return!L.isSelfClosing&&!L.endSourceSpan&&(E(L)||_(L.parent,Q))}function m(L){return L.prev&&L.prev.type!=="docType"&&!g(L.prev)&&L.isLeadingSpaceSensitive&&!L.hasLeadingSpaces}function C(L){return L.lastChild&&L.lastChild.isTrailingSpaceSensitive&&!L.lastChild.hasTrailingSpaces&&!g(c(L.lastChild))&&!f(L)}function o(L){return!L.next&&!L.hasTrailingSpaces&&L.isTrailingSpaceSensitive&&g(c(L))}function h(L){return L.next&&!g(L.next)&&g(L)&&L.isTrailingSpaceSensitive&&!L.hasTrailingSpaces}function v(L){let Q=L.trim().match(/^prettier-ignore-attribute(?:\s+(.+))?$/s);return Q?Q[1]?Q[1].split(/\s+/):!0:!1}function S(L){return!L.prev&&L.isLeadingSpaceSensitive&&!L.hasLeadingSpaces}function b(L,Q,V){let j=L.getValue();if(!s(j.attrs))return j.isSelfClosing?" ":"";let Y=j.prev&&j.prev.type==="comment"&&v(j.prev.value),ie=typeof Y=="boolean"?()=>Y:Array.isArray(Y)?ue=>Y.includes(ue.rawName):()=>!1,ee=L.map(ue=>{let Fe=ue.getValue();return ie(Fe)?p(Q.originalText.slice(d(Fe),y(Fe))):V()},"attrs"),ce=j.type==="element"&&j.fullName==="script"&&j.attrs.length===1&&j.attrs[0].fullName==="src"&&j.children.length===0,K=Q.singleAttributePerLine&&j.attrs.length>1&&!w(j,Q)?l:u,de=[a([ce?" ":u,n(K,ee)])];return j.firstChild&&S(j.firstChild)||j.isSelfClosing&&C(j.parent)||ce?de.push(j.isSelfClosing?" ":""):de.push(Q.bracketSameLine?j.isSelfClosing?" ":"":j.isSelfClosing?u:i),de}function B(L){return L.firstChild&&S(L.firstChild)?"":J(L)}function k(L,Q,V){let j=L.getValue();return[M(j,Q),b(L,Q,V),j.isSelfClosing?"":B(j)]}function M(L,Q){return L.prev&&h(L.prev)?"":[R(L,Q),q(L)]}function R(L,Q){return S(L)?J(L.parent):m(L)?D(L.prev,Q):""}function q(L){switch(L.type){case"ieConditionalComment":case"ieConditionalStartComment":return`<${L.rawName}`;default:return`<${L.rawName}`}}function J(L){switch(t(!L.isSelfClosing),L.type){case"ieConditionalComment":return"]>";case"element":if(L.condition)return">";default:return">"}}r.exports={printClosingTag:F,printClosingTagStart:N,printClosingTagStartMarker:$,printClosingTagEndMarker:D,printClosingTagSuffix:P,printClosingTagEnd:x,needsToBorrowLastChildClosingTagEndMarker:C,needsToBorrowParentClosingTagStartMarker:o,needsToBorrowPrevClosingTagEndMarker:m,printOpeningTag:k,printOpeningTagStart:M,printOpeningTagPrefix:R,printOpeningTagStartMarker:q,printOpeningTagEndMarker:J,needsToBorrowNextOpeningTagStartMarker:h,needsToBorrowParentOpeningTagEndMarker:S}}}),yg=te({"node_modules/parse-srcset/src/parse-srcset.js"(e,r){ne(),function(t,s){typeof define=="function"&&define.amd?define([],s):typeof r=="object"&&r.exports?r.exports=s():t.parseSrcset=s()}(e,function(){return function(t,s){var a=s&&s.logger||console;function n($){return $===" "||$===" "||$===` +`||$==="\f"||$==="\r"}function u($){var D,T=$.exec(t.substring(N));if(T)return D=T[0],N+=D.length,D}for(var i=t.length,l=/^[ \t\n\r\u000c]+/,p=/^[, \t\n\r\u000c]+/,d=/^[^ \t\n\r\u000c]+/,y=/[,]+$/,g=/^\d+$/,c=/^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/,f,E,_,w,F,N=0,x=[];;){if(u(p),N>=i)return x;f=u(d),E=[],f.slice(-1)===","?(f=f.replace(y,""),P()):I()}function I(){for(u(l),_="",w="in descriptor";;){if(F=t.charAt(N),w==="in descriptor")if(n(F))_&&(E.push(_),_="",w="after descriptor");else if(F===","){N+=1,_&&E.push(_),P();return}else if(F==="(")_=_+F,w="in parens";else if(F===""){_&&E.push(_),P();return}else _=_+F;else if(w==="in parens")if(F===")")_=_+F,w="in descriptor";else if(F===""){E.push(_),P();return}else _=_+F;else if(w==="after descriptor"&&!n(F))if(F===""){P();return}else w="in descriptor",N-=1;N+=1}}function P(){var $=!1,D,T,m,C,o={},h,v,S,b,B;for(C=0;C{let{w:P}=I;return P}),y=p.some(I=>{let{h:P}=I;return P}),g=p.some(I=>{let{d:P}=I;return P});if(d+y+g>1)throw new Error("Mixed descriptor in srcset is not supported");let c=d?"w":y?"h":"d",f=d?"w":y?"h":"x",E=I=>Math.max(...I),_=p.map(I=>I.url),w=E(_.map(I=>I.length)),F=p.map(I=>I[c]).map(I=>I?I.toString():""),N=F.map(I=>{let P=I.indexOf(".");return P===-1?I.length:P}),x=E(N);return a([",",n],_.map((I,P)=>{let $=[I],D=F[P];if(D){let T=w-I.length+1,m=x-N[P],C=" ".repeat(T+m);$.push(s(C," "),D+f)}return $}))}function i(l){return l.trim().split(/\s+/).join(" ")}r.exports={printImgSrcset:u,printClassNames:i}}}),vg=te({"src/language-html/syntax-vue.js"(e,r){"use strict";ne();var{builders:{group:t}}=qe();function s(i,l){let{left:p,operator:d,right:y}=a(i);return[t(l(`function _(${p}) {}`,{parser:"babel",__isVueForBindingLeft:!0}))," ",d," ",l(y,{parser:"__js_expression"},{stripTrailingHardline:!0})]}function a(i){let l=/(.*?)\s+(in|of)\s+(.*)/s,p=/,([^,\]}]*)(?:,([^,\]}]*))?$/,d=/^\(|\)$/g,y=i.match(l);if(!y)return;let g={};if(g.for=y[3].trim(),!g.for)return;let c=y[1].trim().replace(d,""),f=c.match(p);f?(g.alias=c.replace(p,""),g.iterator1=f[1].trim(),f[2]&&(g.iterator2=f[2].trim())):g.alias=c;let E=[g.alias,g.iterator1,g.iterator2];if(!E.some((_,w)=>!_&&(w===0||E.slice(w+1).some(Boolean))))return{left:E.filter(Boolean).join(","),operator:y[2],right:g.for}}function n(i,l){return l(`function _(${i}) {}`,{parser:"babel",__isVueBindings:!0})}function u(i){let l=/^(?:[\w$]+|\([^)]*\))\s*=>|^function\s*\(/,p=/^[$A-Z_a-z][\w$]*(?:\.[$A-Z_a-z][\w$]*|\['[^']*']|\["[^"]*"]|\[\d+]|\[[$A-Z_a-z][\w$]*])*$/,d=i.trim();return l.test(d)||p.test(d)}r.exports={isVueEventBindingExpression:u,printVueFor:s,printVueBindings:n}}}),To=te({"src/language-html/get-node-content.js"(e,r){"use strict";ne();var{needsToBorrowParentClosingTagStartMarker:t,printClosingTagStartMarker:s,needsToBorrowLastChildClosingTagEndMarker:a,printClosingTagEndMarker:n,needsToBorrowParentOpeningTagEndMarker:u,printOpeningTagEndMarker:i}=rr();function l(p,d){let y=p.startSourceSpan.end.offset;p.firstChild&&u(p.firstChild)&&(y-=i(p).length);let g=p.endSourceSpan.start.offset;return p.lastChild&&t(p.lastChild)?g+=s(p,d).length:a(p)&&(g-=n(p.lastChild,d).length),d.originalText.slice(y,g)}r.exports=l}}),Cg=te({"src/language-html/embed.js"(e,r){"use strict";ne();var{builders:{breakParent:t,group:s,hardline:a,indent:n,line:u,fill:i,softline:l},utils:{mapDoc:p,replaceTextEndOfLine:d}}=qe(),y=ru(),{printClosingTag:g,printClosingTagSuffix:c,needsToBorrowPrevClosingTagEndMarker:f,printOpeningTagPrefix:E,printOpeningTag:_}=rr(),{printImgSrcset:w,printClassNames:F}=hg(),{printVueFor:N,printVueBindings:x,isVueEventBindingExpression:I}=vg(),{isScriptLikeTag:P,isVueNonHtmlBlock:$,inferScriptParser:D,htmlTrimPreserveIndentation:T,dedentString:m,unescapeQuoteEntities:C,isVueSlotAttribute:o,isVueSfcBindingsAttribute:h,getTextValueParts:v}=qt(),S=To();function b(k,M,R){let q=ee=>new RegExp(ee.join("|")).test(k.fullName),J=()=>C(k.value),L=!1,Q=(ee,ce)=>{let W=ee.type==="NGRoot"?ee.node.type==="NGMicrosyntax"&&ee.node.body.length===1&&ee.node.body[0].type==="NGMicrosyntaxExpression"?ee.node.body[0].expression:ee.node:ee.type==="JsExpressionRoot"?ee.node:ee;W&&(W.type==="ObjectExpression"||W.type==="ArrayExpression"||ce.parser==="__vue_expression"&&(W.type==="TemplateLiteral"||W.type==="StringLiteral"))&&(L=!0)},V=ee=>s(ee),j=function(ee){let ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return s([n([l,ee]),ce?l:""])},Y=ee=>L?V(ee):j(ee),ie=(ee,ce)=>M(ee,Object.assign({__onHtmlBindingRoot:Q,__embeddedInHtml:!0},ce));if(k.fullName==="srcset"&&(k.parent.fullName==="img"||k.parent.fullName==="source"))return j(w(J()));if(k.fullName==="class"&&!R.parentParser){let ee=J();if(!ee.includes("{{"))return F(ee)}if(k.fullName==="style"&&!R.parentParser){let ee=J();if(!ee.includes("{{"))return j(ie(ee,{parser:"css",__isHTMLStyleAttribute:!0}))}if(R.parser==="vue"){if(k.fullName==="v-for")return N(J(),ie);if(o(k)||h(k,R))return x(J(),ie);let ee=["^@","^v-on:"],ce=["^:","^v-bind:"],W=["^v-"];if(q(ee)){let K=J(),de=I(K)?"__js_expression":R.__should_parse_vue_template_with_ts?"__vue_ts_event_binding":"__vue_event_binding";return Y(ie(K,{parser:de}))}if(q(ce))return Y(ie(J(),{parser:"__vue_expression"}));if(q(W))return Y(ie(J(),{parser:"__js_expression"}))}if(R.parser==="angular"){let ee=(z,U)=>ie(z,Object.assign(Object.assign({},U),{},{trailingComma:"none"})),ce=["^\\*"],W=["^\\(.+\\)$","^on-"],K=["^\\[.+\\]$","^bind(on)?-","^ng-(if|show|hide|class|style)$"],de=["^i18n(-.+)?$"];if(q(W))return Y(ee(J(),{parser:"__ng_action"}));if(q(K))return Y(ee(J(),{parser:"__ng_binding"}));if(q(de)){let z=J().trim();return j(i(v(k,z)),!z.includes("@@"))}if(q(ce))return Y(ee(J(),{parser:"__ng_directive"}));let ue=/{{(.+?)}}/s,Fe=J();if(ue.test(Fe)){let z=[];for(let[U,Z]of Fe.split(ue).entries())if(U%2===0)z.push(d(Z));else try{z.push(s(["{{",n([u,ee(Z,{parser:"__ng_interpolation",__isInHtmlInterpolation:!0})]),u,"}}"]))}catch{z.push("{{",d(Z),"}}")}return s(z)}}return null}function B(k,M,R,q){let J=k.getValue();switch(J.type){case"element":{if(P(J)||J.type==="interpolation")return;if(!J.isSelfClosing&&$(J,q)){let L=D(J,q);if(!L)return;let Q=S(J,q),V=/^\s*$/.test(Q),j="";return V||(j=R(T(Q),{parser:L,__embeddedInHtml:!0},{stripTrailingHardline:!0}),V=j===""),[E(J,q),s(_(k,q,M)),V?"":a,j,V?"":a,g(J,q),c(J,q)]}break}case"text":{if(P(J.parent)){let L=D(J.parent,q);if(L){let Q=L==="markdown"?m(J.value.replace(/^[^\S\n]*\n/,"")):J.value,V={parser:L,__embeddedInHtml:!0};if(q.parser==="html"&&L==="babel"){let j="script",{attrMap:Y}=J.parent;Y&&(Y.type==="module"||Y.type==="text/babel"&&Y["data-type"]==="module")&&(j="module"),V.__babelSourceType=j}return[t,E(J,q),R(Q,V,{stripTrailingHardline:!0}),c(J,q)]}}else if(J.parent.type==="interpolation"){let L={__isInHtmlInterpolation:!0,__embeddedInHtml:!0};return q.parser==="angular"?(L.parser="__ng_interpolation",L.trailingComma="none"):q.parser==="vue"?L.parser=q.__should_parse_vue_template_with_ts?"__vue_ts_expression":"__vue_expression":L.parser="__js_expression",[n([u,R(J.value,L,{stripTrailingHardline:!0})]),J.parent.next&&f(J.parent.next)?" ":u]}break}case"attribute":{if(!J.value)break;if(/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/.test(q.originalText.slice(J.valueSpan.start.offset,J.valueSpan.end.offset)))return[J.rawName,"=",J.value];if(q.parser==="lwc"&&/^{.*}$/s.test(q.originalText.slice(J.valueSpan.start.offset,J.valueSpan.end.offset)))return[J.rawName,"=",J.value];let L=b(J,(Q,V)=>R(Q,Object.assign({__isInHtmlAttribute:!0,__embeddedInHtml:!0},V),{stripTrailingHardline:!0}),q);if(L)return[J.rawName,'="',s(p(L,Q=>typeof Q=="string"?Q.replace(/"/g,"""):Q)),'"'];break}case"front-matter":return y(J,R)}}r.exports=B}}),Bo=te({"src/language-html/print/children.js"(e,r){"use strict";ne();var{builders:{breakParent:t,group:s,ifBreak:a,line:n,softline:u,hardline:i},utils:{replaceTextEndOfLine:l}}=qe(),{locStart:p,locEnd:d}=uu(),{forceBreakChildren:y,forceNextEmptyLine:g,isTextLikeNode:c,hasPrettierIgnore:f,preferHardlineAsLeadingSpaces:E}=qt(),{printOpeningTagPrefix:_,needsToBorrowNextOpeningTagStartMarker:w,printOpeningTagStartMarker:F,needsToBorrowPrevClosingTagEndMarker:N,printClosingTagEndMarker:x,printClosingTagSuffix:I,needsToBorrowParentClosingTagStartMarker:P}=rr();function $(m,C,o){let h=m.getValue();return f(h)?[_(h,C),...l(C.originalText.slice(p(h)+(h.prev&&w(h.prev)?F(h).length:0),d(h)-(h.next&&N(h.next)?x(h,C).length:0))),I(h,C)]:o()}function D(m,C){return c(m)&&c(C)?m.isTrailingSpaceSensitive?m.hasTrailingSpaces?E(C)?i:n:"":E(C)?i:u:w(m)&&(f(C)||C.firstChild||C.isSelfClosing||C.type==="element"&&C.attrs.length>0)||m.type==="element"&&m.isSelfClosing&&N(C)?"":!C.isLeadingSpaceSensitive||E(C)||N(C)&&m.lastChild&&P(m.lastChild)&&m.lastChild.lastChild&&P(m.lastChild.lastChild)?i:C.hasLeadingSpaces?n:u}function T(m,C,o){let h=m.getValue();if(y(h))return[t,...m.map(S=>{let b=S.getValue(),B=b.prev?D(b.prev,b):"";return[B?[B,g(b.prev)?i:""]:"",$(S,C,o)]},"children")];let v=h.children.map(()=>Symbol(""));return m.map((S,b)=>{let B=S.getValue();if(c(B)){if(B.prev&&c(B.prev)){let Q=D(B.prev,B);if(Q)return g(B.prev)?[i,i,$(S,C,o)]:[Q,$(S,C,o)]}return $(S,C,o)}let k=[],M=[],R=[],q=[],J=B.prev?D(B.prev,B):"",L=B.next?D(B,B.next):"";return J&&(g(B.prev)?k.push(i,i):J===i?k.push(i):c(B.prev)?M.push(J):M.push(a("",u,{groupId:v[b-1]}))),L&&(g(B)?c(B.next)&&q.push(i,i):L===i?c(B.next)&&q.push(i):R.push(L)),[...k,s([...M,s([$(S,C,o),...R],{id:v[b]})]),...q]},"children")}r.exports={printChildren:T}}}),Eg=te({"src/language-html/print/element.js"(e,r){"use strict";ne();var{builders:{breakParent:t,dedentToRoot:s,group:a,ifBreak:n,indentIfBreak:u,indent:i,line:l,softline:p},utils:{replaceTextEndOfLine:d}}=qe(),y=To(),{shouldPreserveContent:g,isScriptLikeTag:c,isVueCustomBlock:f,countParents:E,forceBreakContent:_}=qt(),{printOpeningTagPrefix:w,printOpeningTag:F,printClosingTagSuffix:N,printClosingTag:x,needsToBorrowPrevClosingTagEndMarker:I,needsToBorrowLastChildClosingTagEndMarker:P}=rr(),{printChildren:$}=Bo();function D(T,m,C){let o=T.getValue();if(g(o,m))return[w(o,m),a(F(T,m,C)),...d(y(o,m)),...x(o,m),N(o,m)];let h=o.children.length===1&&o.firstChild.type==="interpolation"&&o.firstChild.isLeadingSpaceSensitive&&!o.firstChild.hasLeadingSpaces&&o.lastChild.isTrailingSpaceSensitive&&!o.lastChild.hasTrailingSpaces,v=Symbol("element-attr-group-id"),S=M=>a([a(F(T,m,C),{id:v}),M,x(o,m)]),b=M=>h?u(M,{groupId:v}):(c(o)||f(o,m))&&o.parent.type==="root"&&m.parser==="vue"&&!m.vueIndentScriptAndStyle?M:i(M),B=()=>h?n(p,"",{groupId:v}):o.firstChild.hasLeadingSpaces&&o.firstChild.isLeadingSpaceSensitive?l:o.firstChild.type==="text"&&o.isWhitespaceSensitive&&o.isIndentationSensitive?s(p):p,k=()=>(o.next?I(o.next):P(o.parent))?o.lastChild.hasTrailingSpaces&&o.lastChild.isTrailingSpaceSensitive?" ":"":h?n(p,"",{groupId:v}):o.lastChild.hasTrailingSpaces&&o.lastChild.isTrailingSpaceSensitive?l:(o.lastChild.type==="comment"||o.lastChild.type==="text"&&o.isWhitespaceSensitive&&o.isIndentationSensitive)&&new RegExp(`\\n[\\t ]{${m.tabWidth*E(T,R=>R.parent&&R.parent.type!=="root")}}$`).test(o.lastChild.value)?"":p;return o.children.length===0?S(o.hasDanglingSpaces&&o.isDanglingSpaceSensitive?l:""):S([_(o)?t:"",b([B(),$(T,m,C)]),k()])}r.exports={printElement:D}}}),Fg=te({"src/language-html/printer-html.js"(e,r){"use strict";ne();var{builders:{fill:t,group:s,hardline:a,literalline:n},utils:{cleanDoc:u,getDocParts:i,isConcat:l,replaceTextEndOfLine:p}}=qe(),d=ag(),{countChars:y,unescapeQuoteEntities:g,getTextValueParts:c}=qt(),f=dg(),{insertPragma:E}=gg(),{locStart:_,locEnd:w}=uu(),F=Cg(),{printClosingTagSuffix:N,printClosingTagEnd:x,printOpeningTagPrefix:I,printOpeningTagStart:P}=rr(),{printElement:$}=Eg(),{printChildren:D}=Bo();function T(m,C,o){let h=m.getValue();switch(h.type){case"front-matter":return p(h.raw);case"root":return C.__onHtmlRoot&&C.__onHtmlRoot(h),[s(D(m,C,o)),a];case"element":case"ieConditionalComment":return $(m,C,o);case"ieConditionalStartComment":case"ieConditionalEndComment":return[P(h),x(h)];case"interpolation":return[P(h,C),...m.map(o,"children"),x(h,C)];case"text":{if(h.parent.type==="interpolation"){let S=/\n[^\S\n]*$/,b=S.test(h.value),B=b?h.value.replace(S,""):h.value;return[...p(B),b?a:""]}let v=u([I(h,C),...c(h),N(h,C)]);return l(v)||v.type==="fill"?t(i(v)):v}case"docType":return[s([P(h,C)," ",h.value.replace(/^html\b/i,"html").replace(/\s+/g," ")]),x(h,C)];case"comment":return[I(h,C),...p(C.originalText.slice(_(h),w(h)),n),N(h,C)];case"attribute":{if(h.value===null)return h.rawName;let v=g(h.value),S=y(v,"'"),b=y(v,'"'),B=S({name:"Angular",since:"1.15.0",parsers:["angular"],vscodeLanguageIds:["html"],extensions:[".component.html"],filenames:[]})),t(kn(),l=>({since:"1.15.0",parsers:["html"],vscodeLanguageIds:["html"],extensions:[...l.extensions,".mjml"]})),t(kn(),()=>({name:"Lightning Web Components",since:"1.17.0",parsers:["lwc"],vscodeLanguageIds:["html"],extensions:[],filenames:[]})),t(xg(),()=>({since:"1.10.0",parsers:["vue"],vscodeLanguageIds:["vue"]}))],i={html:s};r.exports={languages:u,printers:i,options:a,parsers:n}}}),Tg=te({"src/language-yaml/pragma.js"(e,r){"use strict";ne();function t(n){return/^\s*@(?:prettier|format)\s*$/.test(n)}function s(n){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/.test(n)}function a(n){return`# @format + +${n}`}r.exports={isPragma:t,hasPragma:s,insertPragma:a}}}),Bg=te({"src/language-yaml/loc.js"(e,r){"use strict";ne();function t(a){return a.position.start.offset}function s(a){return a.position.end.offset}r.exports={locStart:t,locEnd:s}}}),Ng=te({"src/language-yaml/embed.js"(e,r){"use strict";ne();function t(s,a,n,u){if(s.getValue().type==="root"&&u.filepath&&/(?:[/\\]|^)\.(?:prettier|stylelint|lintstaged)rc$/.test(u.filepath))return n(u.originalText,Object.assign(Object.assign({},u),{},{parser:"json"}))}r.exports=t}}),Mt=te({"src/language-yaml/utils.js"(e,r){"use strict";ne();var{getLast:t,isNonEmptyArray:s}=Ue();function a(D,T){let m=0,C=D.stack.length-1;for(let o=0;ou(C,T,D))}):D,m)}function i(D,T,m){Object.defineProperty(D,T,{get:m,enumerable:!1})}function l(D,T){let m=0,C=T.length;for(let o=D.position.end.offset-1;oh===0&&h===v.length-1?o:h!==0&&h!==v.length-1?o.trim():h===0?o.trimEnd():o.trimStart());return m.proseWrap==="preserve"?C.map(o=>o.length===0?[]:[o]):C.map(o=>o.length===0?[]:x(o)).reduce((o,h,v)=>v!==0&&C[v-1].length>0&&h.length>0&&!(D==="quoteDouble"&&t(t(o)).endsWith("\\"))?[...o.slice(0,-1),[...t(o),...h]]:[...o,h],[]).map(o=>m.proseWrap==="never"?[o.join(" ")]:o)}function P(D,T){let{parentIndent:m,isLastDescendant:C,options:o}=T,h=D.position.start.line===D.position.end.line?"":o.originalText.slice(D.position.start.offset,D.position.end.offset).match(/^[^\n]*\n(.*)$/s)[1],v;if(D.indent===null){let B=h.match(/^(? *)[^\n\r ]/m);v=B?B.groups.leadingSpace.length:Number.POSITIVE_INFINITY}else v=D.indent-1+m;let S=h.split(` +`).map(B=>B.slice(v));if(o.proseWrap==="preserve"||D.type==="blockLiteral")return b(S.map(B=>B.length===0?[]:[B]));return b(S.map(B=>B.length===0?[]:x(B)).reduce((B,k,M)=>M!==0&&S[M-1].length>0&&k.length>0&&!/^\s/.test(k[0])&&!/^\s|\s$/.test(t(B))?[...B.slice(0,-1),[...t(B),...k]]:[...B,k],[]).map(B=>B.reduce((k,M)=>k.length>0&&/\s$/.test(t(k))?[...k.slice(0,-1),t(k)+" "+M]:[...k,M],[])).map(B=>o.proseWrap==="never"?[B.join(" ")]:B));function b(B){if(D.chomping==="keep")return t(B).length===0?B.slice(0,-1):B;let k=0;for(let M=B.length-1;M>=0&&B[M].length===0;M--)k++;return k===0?B:k>=2&&!C?B.slice(0,-(k-1)):B.slice(0,-k)}}function $(D){if(!D)return!0;switch(D.type){case"plain":case"quoteDouble":case"quoteSingle":case"alias":case"flowMapping":case"flowSequence":return!0;default:return!1}}r.exports={getLast:t,getAncestorCount:a,isNode:n,isEmptyNode:c,isInlineNode:$,mapNode:u,defineShortcut:i,isNextLineEmpty:l,isLastDescendantNode:p,getBlockValueLineContents:P,getFlowScalarLineContents:I,getLastDescendantNode:d,hasPrettierIgnore:g,hasLeadingComments:E,hasMiddleComments:_,hasIndicatorComment:w,hasTrailingComment:F,hasEndComments:N}}}),wg=te({"src/language-yaml/print-preprocess.js"(e,r){"use strict";ne();var{defineShortcut:t,mapNode:s}=Mt();function a(u){return s(u,n)}function n(u){switch(u.type){case"document":t(u,"head",()=>u.children[0]),t(u,"body",()=>u.children[1]);break;case"documentBody":case"sequenceItem":case"flowSequenceItem":case"mappingKey":case"mappingValue":t(u,"content",()=>u.children[0]);break;case"mappingItem":case"flowMappingItem":t(u,"key",()=>u.children[0]),t(u,"value",()=>u.children[1]);break}return u}r.exports=a}}),jr=te({"src/language-yaml/print/misc.js"(e,r){"use strict";ne();var{builders:{softline:t,align:s}}=qe(),{hasEndComments:a,isNextLineEmpty:n,isNode:u}=Mt(),i=new WeakMap;function l(y,g){let c=y.getValue(),f=y.stack[0],E;return i.has(f)?E=i.get(f):(E=new Set,i.set(f,E)),!E.has(c.position.end.line)&&(E.add(c.position.end.line),n(c,g)&&!p(y.getParentNode()))?t:""}function p(y){return a(y)&&!u(y,["documentHead","documentBody","flowMapping","flowSequence"])}function d(y,g){return s(" ".repeat(y),g)}r.exports={alignWithSpaces:d,shouldPrintEndComments:p,printNextEmptyLine:l}}}),_g=te({"src/language-yaml/print/flow-mapping-sequence.js"(e,r){"use strict";ne();var{builders:{ifBreak:t,line:s,softline:a,hardline:n,join:u}}=qe(),{isEmptyNode:i,getLast:l,hasEndComments:p}=Mt(),{printNextEmptyLine:d,alignWithSpaces:y}=jr();function g(f,E,_){let w=f.getValue(),F=w.type==="flowMapping",N=F?"{":"[",x=F?"}":"]",I=a;F&&w.children.length>0&&_.bracketSpacing&&(I=s);let P=l(w.children),$=P&&P.type==="flowMappingItem"&&i(P.key)&&i(P.value);return[N,y(_.tabWidth,[I,c(f,E,_),_.trailingComma==="none"?"":t(","),p(w)?[n,u(n,f.map(E,"endComments"))]:""]),$?"":I,x]}function c(f,E,_){let w=f.getValue();return f.map((N,x)=>[E(),x===w.children.length-1?"":[",",s,w.children[x].position.start.line!==w.children[x+1].position.start.line?d(N,_.originalText):""]],"children")}r.exports={printFlowMapping:g,printFlowSequence:g}}}),Pg=te({"src/language-yaml/print/mapping-item.js"(e,r){"use strict";ne();var{builders:{conditionalGroup:t,group:s,hardline:a,ifBreak:n,join:u,line:i}}=qe(),{hasLeadingComments:l,hasMiddleComments:p,hasTrailingComment:d,hasEndComments:y,isNode:g,isEmptyNode:c,isInlineNode:f}=Mt(),{alignWithSpaces:E}=jr();function _(x,I,P,$,D){let{key:T,value:m}=x,C=c(T),o=c(m);if(C&&o)return": ";let h=$("key"),v=F(x)?" ":"";if(o)return x.type==="flowMappingItem"&&I.type==="flowMapping"?h:x.type==="mappingItem"&&w(T.content,D)&&!d(T.content)&&(!I.tag||I.tag.value!=="tag:yaml.org,2002:set")?[h,v,":"]:["? ",E(2,h)];let S=$("value");if(C)return[": ",E(2,S)];if(l(m)||!f(T.content))return["? ",E(2,h),a,u("",P.map($,"value","leadingComments").map(q=>[q,a])),": ",E(2,S)];if(N(T.content)&&!l(T.content)&&!p(T.content)&&!d(T.content)&&!y(T)&&!l(m.content)&&!p(m.content)&&!y(m)&&w(m.content,D))return[h,v,": ",S];let b=Symbol("mappingKey"),B=s([n("? "),s(E(2,h),{id:b})]),k=[a,": ",E(2,S)],M=[v,":"];l(m.content)||y(m)&&m.content&&!g(m.content,["mapping","sequence"])||I.type==="mapping"&&d(T.content)&&f(m.content)||g(m.content,["mapping","sequence"])&&m.content.tag===null&&m.content.anchor===null?M.push(a):m.content&&M.push(i),M.push(S);let R=E(D.tabWidth,M);return w(T.content,D)&&!l(T.content)&&!p(T.content)&&!y(T)?t([[h,R]]):t([[B,n(k,R,{groupId:b})]])}function w(x,I){if(!x)return!0;switch(x.type){case"plain":case"quoteSingle":case"quoteDouble":break;case"alias":return!0;default:return!1}if(I.proseWrap==="preserve")return x.position.start.line===x.position.end.line;if(/\\$/m.test(I.originalText.slice(x.position.start.offset,x.position.end.offset)))return!1;switch(I.proseWrap){case"never":return!x.value.includes(` +`);case"always":return!/[\n ]/.test(x.value);default:return!1}}function F(x){return x.key.content&&x.key.content.type==="alias"}function N(x){if(!x)return!0;switch(x.type){case"plain":case"quoteDouble":case"quoteSingle":return x.position.start.line===x.position.end.line;case"alias":return!0;default:return!1}}r.exports=_}}),Ig=te({"src/language-yaml/print/block.js"(e,r){"use strict";ne();var{builders:{dedent:t,dedentToRoot:s,fill:a,hardline:n,join:u,line:i,literalline:l,markAsRoot:p},utils:{getDocParts:d}}=qe(),{getAncestorCount:y,getBlockValueLineContents:g,hasIndicatorComment:c,isLastDescendantNode:f,isNode:E}=Mt(),{alignWithSpaces:_}=jr();function w(F,N,x){let I=F.getValue(),P=y(F,C=>E(C,["sequence","mapping"])),$=f(F),D=[I.type==="blockFolded"?">":"|"];I.indent!==null&&D.push(I.indent.toString()),I.chomping!=="clip"&&D.push(I.chomping==="keep"?"+":"-"),c(I)&&D.push(" ",N("indicatorComment"));let T=g(I,{parentIndent:P,isLastDescendant:$,options:x}),m=[];for(let[C,o]of T.entries())C===0&&m.push(n),m.push(a(d(u(i,o)))),C!==T.length-1?m.push(o.length===0?n:p(l)):I.chomping==="keep"&&$&&m.push(s(o.length===0?n:l));return I.indent===null?D.push(t(_(x.tabWidth,m))):D.push(s(_(I.indent-1+P,m))),D}r.exports=w}}),kg=te({"src/language-yaml/printer-yaml.js"(e,r){"use strict";ne();var{builders:{breakParent:t,fill:s,group:a,hardline:n,join:u,line:i,lineSuffix:l,literalline:p},utils:{getDocParts:d,replaceTextEndOfLine:y}}=qe(),{isPreviousLineEmpty:g}=Ue(),{insertPragma:c,isPragma:f}=Tg(),{locStart:E}=Bg(),_=Ng(),{getFlowScalarLineContents:w,getLastDescendantNode:F,hasLeadingComments:N,hasMiddleComments:x,hasTrailingComment:I,hasEndComments:P,hasPrettierIgnore:$,isLastDescendantNode:D,isNode:T,isInlineNode:m}=Mt(),C=wg(),{alignWithSpaces:o,printNextEmptyLine:h,shouldPrintEndComments:v}=jr(),{printFlowMapping:S,printFlowSequence:b}=_g(),B=Pg(),k=Ig();function M(j,Y,ie){let ee=j.getValue(),ce=[];ee.type!=="mappingValue"&&N(ee)&&ce.push([u(n,j.map(ie,"leadingComments")),n]);let{tag:W,anchor:K}=ee;W&&ce.push(ie("tag")),W&&K&&ce.push(" "),K&&ce.push(ie("anchor"));let de="";T(ee,["mapping","sequence","comment","directive","mappingItem","sequenceItem"])&&!D(j)&&(de=h(j,Y.originalText)),(W||K)&&(T(ee,["sequence","mapping"])&&!x(ee)?ce.push(n):ce.push(" ")),x(ee)&&ce.push([ee.middleComments.length===1?"":n,u(n,j.map(ie,"middleComments")),n]);let ue=j.getParentNode();return $(j)?ce.push(y(Y.originalText.slice(ee.position.start.offset,ee.position.end.offset).trimEnd(),p)):ce.push(a(R(ee,ue,j,Y,ie))),I(ee)&&!T(ee,["document","documentHead"])&&ce.push(l([ee.type==="mappingValue"&&!ee.content?"":" ",ue.type==="mappingKey"&&j.getParentNode(2).type==="mapping"&&m(ee)?"":t,ie("trailingComment")])),v(ee)&&ce.push(o(ee.type==="sequenceItem"?2:0,[n,u(n,j.map(Fe=>[g(Y.originalText,Fe.getValue(),E)?n:"",ie()],"endComments"))])),ce.push(de),ce}function R(j,Y,ie,ee,ce){switch(j.type){case"root":{let{children:W}=j,K=[];ie.each((ue,Fe)=>{let z=W[Fe],U=W[Fe+1];Fe!==0&&K.push(n),K.push(ce()),J(z,U)?(K.push(n,"..."),I(z)&&K.push(" ",ce("trailingComment"))):U&&!I(U.head)&&K.push(n,"---")},"children");let de=F(j);return(!T(de,["blockLiteral","blockFolded"])||de.chomping!=="keep")&&K.push(n),K}case"document":{let W=Y.children[ie.getName()+1],K=[];return L(j,W,Y,ee)==="head"&&((j.head.children.length>0||j.head.endComments.length>0)&&K.push(ce("head")),I(j.head)?K.push(["---"," ",ce(["head","trailingComment"])]):K.push("---")),q(j)&&K.push(ce("body")),u(n,K)}case"documentHead":return u(n,[...ie.map(ce,"children"),...ie.map(ce,"endComments")]);case"documentBody":{let{children:W,endComments:K}=j,de="";if(W.length>0&&K.length>0){let ue=F(j);T(ue,["blockFolded","blockLiteral"])?ue.chomping!=="keep"&&(de=[n,n]):de=n}return[u(n,ie.map(ce,"children")),de,u(n,ie.map(ce,"endComments"))]}case"directive":return["%",u(" ",[j.name,...j.parameters])];case"comment":return["#",j.value];case"alias":return["*",j.value];case"tag":return ee.originalText.slice(j.position.start.offset,j.position.end.offset);case"anchor":return["&",j.value];case"plain":return Q(j.type,ee.originalText.slice(j.position.start.offset,j.position.end.offset),ee);case"quoteDouble":case"quoteSingle":{let W="'",K='"',de=ee.originalText.slice(j.position.start.offset+1,j.position.end.offset-1);if(j.type==="quoteSingle"&&de.includes("\\")||j.type==="quoteDouble"&&/\\[^"]/.test(de)){let Fe=j.type==="quoteDouble"?K:W;return[Fe,Q(j.type,de,ee),Fe]}if(de.includes(K))return[W,Q(j.type,j.type==="quoteDouble"?de.replace(/\\"/g,K).replace(/'/g,W.repeat(2)):de,ee),W];if(de.includes(W))return[K,Q(j.type,j.type==="quoteSingle"?de.replace(/''/g,W):de,ee),K];let ue=ee.singleQuote?W:K;return[ue,Q(j.type,de,ee),ue]}case"blockFolded":case"blockLiteral":return k(ie,ce,ee);case"mapping":case"sequence":return u(n,ie.map(ce,"children"));case"sequenceItem":return["- ",o(2,j.content?ce("content"):"")];case"mappingKey":case"mappingValue":return j.content?ce("content"):"";case"mappingItem":case"flowMappingItem":return B(j,Y,ie,ce,ee);case"flowMapping":return S(ie,ce,ee);case"flowSequence":return b(ie,ce,ee);case"flowSequenceItem":return ce("content");default:throw new Error(`Unexpected node type ${j.type}`)}}function q(j){return j.body.children.length>0||P(j.body)}function J(j,Y){return I(j)||Y&&(Y.head.children.length>0||P(Y.head))}function L(j,Y,ie,ee){return ie.children[0]===j&&/---(?:\s|$)/.test(ee.originalText.slice(E(j),E(j)+4))||j.head.children.length>0||P(j.head)||I(j.head)?"head":J(j,Y)?!1:Y?"root":!1}function Q(j,Y,ie){let ee=w(j,Y,ie);return u(n,ee.map(ce=>s(d(u(i,ce)))))}function V(j,Y){if(T(Y))switch(delete Y.position,Y.type){case"comment":if(f(Y.value))return null;break;case"quoteDouble":case"quoteSingle":Y.type="quote";break}}r.exports={preprocess:C,embed:_,print:M,massageAstNode:V,insertPragma:c}}}),Lg=te({"src/language-yaml/options.js"(e,r){"use strict";ne();var t=jt();r.exports={bracketSpacing:t.bracketSpacing,singleQuote:t.singleQuote,proseWrap:t.proseWrap}}}),Og=te({"src/language-yaml/parsers.js"(){ne()}}),jg=te({"node_modules/linguist-languages/data/YAML.json"(e,r){r.exports={name:"YAML",type:"data",color:"#cb171e",tmScope:"source.yaml",aliases:["yml"],extensions:[".yml",".mir",".reek",".rviz",".sublime-syntax",".syntax",".yaml",".yaml-tmlanguage",".yaml.sed",".yml.mysql"],filenames:[".clang-format",".clang-tidy",".gemrc","CITATION.cff","glide.lock","yarn.lock"],aceMode:"yaml",codemirrorMode:"yaml",codemirrorMimeType:"text/x-yaml",languageId:407}}}),qg=te({"src/language-yaml/index.js"(e,r){"use strict";ne();var t=wt(),s=kg(),a=Lg(),n=Og(),u=[t(jg(),i=>({since:"1.14.0",parsers:["yaml"],vscodeLanguageIds:["yaml","ansible","home-assistant"],filenames:[...i.filenames.filter(l=>l!=="yarn.lock"),".prettierrc",".stylelintrc",".lintstagedrc"]}))];r.exports={languages:u,printers:{yaml:s},options:a,parsers:n}}}),Mg=te({"src/languages.js"(e,r){"use strict";ne(),r.exports=[vd(),jd(),Gd(),Qd(),ig(),bg(),qg()]}}),Rg=te({"src/standalone.js"(e,r){ne();var{version:t}=xa(),s=Om(),{getSupportInfo:a}=Un(),n=jm(),u=Mg(),i=qe();function l(d){let y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;return function(){for(var g=arguments.length,c=new Array(g),f=0;f function __require() { + return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; +}; + +// node_modules/core-js/internals/global.js +var require_global = __commonJS({ + "node_modules/core-js/internals/global.js"(exports2, module2) { + var check = function(it) { + return it && it.Math == Math && it; + }; + module2.exports = check(typeof globalThis == "object" && globalThis) || check(typeof window == "object" && window) || check(typeof self == "object" && self) || check(typeof global == "object" && global) || function() { + return this; + }() || Function("return this")(); + } +}); + +// node_modules/core-js/internals/fails.js +var require_fails = __commonJS({ + "node_modules/core-js/internals/fails.js"(exports2, module2) { + module2.exports = function(exec) { + try { + return !!exec(); + } catch (error) { + return true; + } + }; + } +}); + +// node_modules/core-js/internals/descriptors.js +var require_descriptors = __commonJS({ + "node_modules/core-js/internals/descriptors.js"(exports2, module2) { + var fails = require_fails(); + module2.exports = !fails(function() { + return Object.defineProperty({}, 1, { get: function() { + return 7; + } })[1] != 7; + }); + } +}); + +// node_modules/core-js/internals/function-bind-native.js +var require_function_bind_native = __commonJS({ + "node_modules/core-js/internals/function-bind-native.js"(exports2, module2) { + var fails = require_fails(); + module2.exports = !fails(function() { + var test = function() { + }.bind(); + return typeof test != "function" || test.hasOwnProperty("prototype"); + }); + } +}); + +// node_modules/core-js/internals/function-call.js +var require_function_call = __commonJS({ + "node_modules/core-js/internals/function-call.js"(exports2, module2) { + var NATIVE_BIND = require_function_bind_native(); + var call = Function.prototype.call; + module2.exports = NATIVE_BIND ? call.bind(call) : function() { + return call.apply(call, arguments); + }; + } +}); + +// node_modules/core-js/internals/object-property-is-enumerable.js +var require_object_property_is_enumerable = __commonJS({ + "node_modules/core-js/internals/object-property-is-enumerable.js"(exports2) { + "use strict"; + var $propertyIsEnumerable = {}.propertyIsEnumerable; + var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1); + exports2.f = NASHORN_BUG ? function propertyIsEnumerable(V) { + var descriptor = getOwnPropertyDescriptor(this, V); + return !!descriptor && descriptor.enumerable; + } : $propertyIsEnumerable; + } +}); + +// node_modules/core-js/internals/create-property-descriptor.js +var require_create_property_descriptor = __commonJS({ + "node_modules/core-js/internals/create-property-descriptor.js"(exports2, module2) { + module2.exports = function(bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value + }; + }; + } +}); + +// node_modules/core-js/internals/function-uncurry-this.js +var require_function_uncurry_this = __commonJS({ + "node_modules/core-js/internals/function-uncurry-this.js"(exports2, module2) { + var NATIVE_BIND = require_function_bind_native(); + var FunctionPrototype = Function.prototype; + var call = FunctionPrototype.call; + var uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call); + module2.exports = NATIVE_BIND ? uncurryThisWithBind : function(fn) { + return function() { + return call.apply(fn, arguments); + }; + }; + } +}); + +// node_modules/core-js/internals/classof-raw.js +var require_classof_raw = __commonJS({ + "node_modules/core-js/internals/classof-raw.js"(exports2, module2) { + var uncurryThis = require_function_uncurry_this(); + var toString = uncurryThis({}.toString); + var stringSlice = uncurryThis("".slice); + module2.exports = function(it) { + return stringSlice(toString(it), 8, -1); + }; + } +}); + +// node_modules/core-js/internals/indexed-object.js +var require_indexed_object = __commonJS({ + "node_modules/core-js/internals/indexed-object.js"(exports2, module2) { + var uncurryThis = require_function_uncurry_this(); + var fails = require_fails(); + var classof = require_classof_raw(); + var $Object = Object; + var split = uncurryThis("".split); + module2.exports = fails(function() { + return !$Object("z").propertyIsEnumerable(0); + }) ? function(it) { + return classof(it) == "String" ? split(it, "") : $Object(it); + } : $Object; + } +}); + +// node_modules/core-js/internals/is-null-or-undefined.js +var require_is_null_or_undefined = __commonJS({ + "node_modules/core-js/internals/is-null-or-undefined.js"(exports2, module2) { + module2.exports = function(it) { + return it === null || it === void 0; + }; + } +}); + +// node_modules/core-js/internals/require-object-coercible.js +var require_require_object_coercible = __commonJS({ + "node_modules/core-js/internals/require-object-coercible.js"(exports2, module2) { + var isNullOrUndefined = require_is_null_or_undefined(); + var $TypeError = TypeError; + module2.exports = function(it) { + if (isNullOrUndefined(it)) + throw $TypeError("Can't call method on " + it); + return it; + }; + } +}); + +// node_modules/core-js/internals/to-indexed-object.js +var require_to_indexed_object = __commonJS({ + "node_modules/core-js/internals/to-indexed-object.js"(exports2, module2) { + var IndexedObject = require_indexed_object(); + var requireObjectCoercible = require_require_object_coercible(); + module2.exports = function(it) { + return IndexedObject(requireObjectCoercible(it)); + }; + } +}); + +// node_modules/core-js/internals/document-all.js +var require_document_all = __commonJS({ + "node_modules/core-js/internals/document-all.js"(exports2, module2) { + var documentAll = typeof document == "object" && document.all; + var IS_HTMLDDA = typeof documentAll == "undefined" && documentAll !== void 0; + module2.exports = { + all: documentAll, + IS_HTMLDDA + }; + } +}); + +// node_modules/core-js/internals/is-callable.js +var require_is_callable = __commonJS({ + "node_modules/core-js/internals/is-callable.js"(exports2, module2) { + var $documentAll = require_document_all(); + var documentAll = $documentAll.all; + module2.exports = $documentAll.IS_HTMLDDA ? function(argument) { + return typeof argument == "function" || argument === documentAll; + } : function(argument) { + return typeof argument == "function"; + }; + } +}); + +// node_modules/core-js/internals/is-object.js +var require_is_object = __commonJS({ + "node_modules/core-js/internals/is-object.js"(exports2, module2) { + var isCallable = require_is_callable(); + var $documentAll = require_document_all(); + var documentAll = $documentAll.all; + module2.exports = $documentAll.IS_HTMLDDA ? function(it) { + return typeof it == "object" ? it !== null : isCallable(it) || it === documentAll; + } : function(it) { + return typeof it == "object" ? it !== null : isCallable(it); + }; + } +}); + +// node_modules/core-js/internals/get-built-in.js +var require_get_built_in = __commonJS({ + "node_modules/core-js/internals/get-built-in.js"(exports2, module2) { + var global2 = require_global(); + var isCallable = require_is_callable(); + var aFunction = function(argument) { + return isCallable(argument) ? argument : void 0; + }; + module2.exports = function(namespace, method) { + return arguments.length < 2 ? aFunction(global2[namespace]) : global2[namespace] && global2[namespace][method]; + }; + } +}); + +// node_modules/core-js/internals/object-is-prototype-of.js +var require_object_is_prototype_of = __commonJS({ + "node_modules/core-js/internals/object-is-prototype-of.js"(exports2, module2) { + var uncurryThis = require_function_uncurry_this(); + module2.exports = uncurryThis({}.isPrototypeOf); + } +}); + +// node_modules/core-js/internals/engine-user-agent.js +var require_engine_user_agent = __commonJS({ + "node_modules/core-js/internals/engine-user-agent.js"(exports2, module2) { + var getBuiltIn = require_get_built_in(); + module2.exports = getBuiltIn("navigator", "userAgent") || ""; + } +}); + +// node_modules/core-js/internals/engine-v8-version.js +var require_engine_v8_version = __commonJS({ + "node_modules/core-js/internals/engine-v8-version.js"(exports2, module2) { + var global2 = require_global(); + var userAgent = require_engine_user_agent(); + var process2 = global2.process; + var Deno = global2.Deno; + var versions = process2 && process2.versions || Deno && Deno.version; + var v8 = versions && versions.v8; + var match; + var version2; + if (v8) { + match = v8.split("."); + version2 = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]); + } + if (!version2 && userAgent) { + match = userAgent.match(/Edge\/(\d+)/); + if (!match || match[1] >= 74) { + match = userAgent.match(/Chrome\/(\d+)/); + if (match) + version2 = +match[1]; + } + } + module2.exports = version2; + } +}); + +// node_modules/core-js/internals/symbol-constructor-detection.js +var require_symbol_constructor_detection = __commonJS({ + "node_modules/core-js/internals/symbol-constructor-detection.js"(exports2, module2) { + var V8_VERSION = require_engine_v8_version(); + var fails = require_fails(); + module2.exports = !!Object.getOwnPropertySymbols && !fails(function() { + var symbol = Symbol(); + return !String(symbol) || !(Object(symbol) instanceof Symbol) || !Symbol.sham && V8_VERSION && V8_VERSION < 41; + }); + } +}); + +// node_modules/core-js/internals/use-symbol-as-uid.js +var require_use_symbol_as_uid = __commonJS({ + "node_modules/core-js/internals/use-symbol-as-uid.js"(exports2, module2) { + var NATIVE_SYMBOL = require_symbol_constructor_detection(); + module2.exports = NATIVE_SYMBOL && !Symbol.sham && typeof Symbol.iterator == "symbol"; + } +}); + +// node_modules/core-js/internals/is-symbol.js +var require_is_symbol = __commonJS({ + "node_modules/core-js/internals/is-symbol.js"(exports2, module2) { + var getBuiltIn = require_get_built_in(); + var isCallable = require_is_callable(); + var isPrototypeOf = require_object_is_prototype_of(); + var USE_SYMBOL_AS_UID = require_use_symbol_as_uid(); + var $Object = Object; + module2.exports = USE_SYMBOL_AS_UID ? function(it) { + return typeof it == "symbol"; + } : function(it) { + var $Symbol = getBuiltIn("Symbol"); + return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it)); + }; + } +}); + +// node_modules/core-js/internals/try-to-string.js +var require_try_to_string = __commonJS({ + "node_modules/core-js/internals/try-to-string.js"(exports2, module2) { + var $String = String; + module2.exports = function(argument) { + try { + return $String(argument); + } catch (error) { + return "Object"; + } + }; + } +}); + +// node_modules/core-js/internals/a-callable.js +var require_a_callable = __commonJS({ + "node_modules/core-js/internals/a-callable.js"(exports2, module2) { + var isCallable = require_is_callable(); + var tryToString = require_try_to_string(); + var $TypeError = TypeError; + module2.exports = function(argument) { + if (isCallable(argument)) + return argument; + throw $TypeError(tryToString(argument) + " is not a function"); + }; + } +}); + +// node_modules/core-js/internals/get-method.js +var require_get_method = __commonJS({ + "node_modules/core-js/internals/get-method.js"(exports2, module2) { + var aCallable = require_a_callable(); + var isNullOrUndefined = require_is_null_or_undefined(); + module2.exports = function(V, P) { + var func = V[P]; + return isNullOrUndefined(func) ? void 0 : aCallable(func); + }; + } +}); + +// node_modules/core-js/internals/ordinary-to-primitive.js +var require_ordinary_to_primitive = __commonJS({ + "node_modules/core-js/internals/ordinary-to-primitive.js"(exports2, module2) { + var call = require_function_call(); + var isCallable = require_is_callable(); + var isObject = require_is_object(); + var $TypeError = TypeError; + module2.exports = function(input, pref) { + var fn, val; + if (pref === "string" && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) + return val; + if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) + return val; + if (pref !== "string" && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) + return val; + throw $TypeError("Can't convert object to primitive value"); + }; + } +}); + +// node_modules/core-js/internals/is-pure.js +var require_is_pure = __commonJS({ + "node_modules/core-js/internals/is-pure.js"(exports2, module2) { + module2.exports = false; + } +}); + +// node_modules/core-js/internals/define-global-property.js +var require_define_global_property = __commonJS({ + "node_modules/core-js/internals/define-global-property.js"(exports2, module2) { + var global2 = require_global(); + var defineProperty = Object.defineProperty; + module2.exports = function(key, value) { + try { + defineProperty(global2, key, { value, configurable: true, writable: true }); + } catch (error) { + global2[key] = value; + } + return value; + }; + } +}); + +// node_modules/core-js/internals/shared-store.js +var require_shared_store = __commonJS({ + "node_modules/core-js/internals/shared-store.js"(exports2, module2) { + var global2 = require_global(); + var defineGlobalProperty = require_define_global_property(); + var SHARED = "__core-js_shared__"; + var store = global2[SHARED] || defineGlobalProperty(SHARED, {}); + module2.exports = store; + } +}); + +// node_modules/core-js/internals/shared.js +var require_shared = __commonJS({ + "node_modules/core-js/internals/shared.js"(exports2, module2) { + var IS_PURE = require_is_pure(); + var store = require_shared_store(); + (module2.exports = function(key, value) { + return store[key] || (store[key] = value !== void 0 ? value : {}); + })("versions", []).push({ + version: "3.26.1", + mode: IS_PURE ? "pure" : "global", + copyright: "\xA9 2014-2022 Denis Pushkarev (zloirock.ru)", + license: "https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE", + source: "https://github.com/zloirock/core-js" + }); + } +}); + +// node_modules/core-js/internals/to-object.js +var require_to_object = __commonJS({ + "node_modules/core-js/internals/to-object.js"(exports2, module2) { + var requireObjectCoercible = require_require_object_coercible(); + var $Object = Object; + module2.exports = function(argument) { + return $Object(requireObjectCoercible(argument)); + }; + } +}); + +// node_modules/core-js/internals/has-own-property.js +var require_has_own_property = __commonJS({ + "node_modules/core-js/internals/has-own-property.js"(exports2, module2) { + var uncurryThis = require_function_uncurry_this(); + var toObject = require_to_object(); + var hasOwnProperty = uncurryThis({}.hasOwnProperty); + module2.exports = Object.hasOwn || function hasOwn(it, key) { + return hasOwnProperty(toObject(it), key); + }; + } +}); + +// node_modules/core-js/internals/uid.js +var require_uid = __commonJS({ + "node_modules/core-js/internals/uid.js"(exports2, module2) { + var uncurryThis = require_function_uncurry_this(); + var id = 0; + var postfix = Math.random(); + var toString = uncurryThis(1 .toString); + module2.exports = function(key) { + return "Symbol(" + (key === void 0 ? "" : key) + ")_" + toString(++id + postfix, 36); + }; + } +}); + +// node_modules/core-js/internals/well-known-symbol.js +var require_well_known_symbol = __commonJS({ + "node_modules/core-js/internals/well-known-symbol.js"(exports2, module2) { + var global2 = require_global(); + var shared = require_shared(); + var hasOwn = require_has_own_property(); + var uid = require_uid(); + var NATIVE_SYMBOL = require_symbol_constructor_detection(); + var USE_SYMBOL_AS_UID = require_use_symbol_as_uid(); + var WellKnownSymbolsStore = shared("wks"); + var Symbol2 = global2.Symbol; + var symbolFor = Symbol2 && Symbol2["for"]; + var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol2 : Symbol2 && Symbol2.withoutSetter || uid; + module2.exports = function(name) { + if (!hasOwn(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == "string")) { + var description = "Symbol." + name; + if (NATIVE_SYMBOL && hasOwn(Symbol2, name)) { + WellKnownSymbolsStore[name] = Symbol2[name]; + } else if (USE_SYMBOL_AS_UID && symbolFor) { + WellKnownSymbolsStore[name] = symbolFor(description); + } else { + WellKnownSymbolsStore[name] = createWellKnownSymbol(description); + } + } + return WellKnownSymbolsStore[name]; + }; + } +}); + +// node_modules/core-js/internals/to-primitive.js +var require_to_primitive = __commonJS({ + "node_modules/core-js/internals/to-primitive.js"(exports2, module2) { + var call = require_function_call(); + var isObject = require_is_object(); + var isSymbol = require_is_symbol(); + var getMethod = require_get_method(); + var ordinaryToPrimitive = require_ordinary_to_primitive(); + var wellKnownSymbol = require_well_known_symbol(); + var $TypeError = TypeError; + var TO_PRIMITIVE = wellKnownSymbol("toPrimitive"); + module2.exports = function(input, pref) { + if (!isObject(input) || isSymbol(input)) + return input; + var exoticToPrim = getMethod(input, TO_PRIMITIVE); + var result; + if (exoticToPrim) { + if (pref === void 0) + pref = "default"; + result = call(exoticToPrim, input, pref); + if (!isObject(result) || isSymbol(result)) + return result; + throw $TypeError("Can't convert object to primitive value"); + } + if (pref === void 0) + pref = "number"; + return ordinaryToPrimitive(input, pref); + }; + } +}); + +// node_modules/core-js/internals/to-property-key.js +var require_to_property_key = __commonJS({ + "node_modules/core-js/internals/to-property-key.js"(exports2, module2) { + var toPrimitive = require_to_primitive(); + var isSymbol = require_is_symbol(); + module2.exports = function(argument) { + var key = toPrimitive(argument, "string"); + return isSymbol(key) ? key : key + ""; + }; + } +}); + +// node_modules/core-js/internals/document-create-element.js +var require_document_create_element = __commonJS({ + "node_modules/core-js/internals/document-create-element.js"(exports2, module2) { + var global2 = require_global(); + var isObject = require_is_object(); + var document2 = global2.document; + var EXISTS = isObject(document2) && isObject(document2.createElement); + module2.exports = function(it) { + return EXISTS ? document2.createElement(it) : {}; + }; + } +}); + +// node_modules/core-js/internals/ie8-dom-define.js +var require_ie8_dom_define = __commonJS({ + "node_modules/core-js/internals/ie8-dom-define.js"(exports2, module2) { + var DESCRIPTORS = require_descriptors(); + var fails = require_fails(); + var createElement = require_document_create_element(); + module2.exports = !DESCRIPTORS && !fails(function() { + return Object.defineProperty(createElement("div"), "a", { + get: function() { + return 7; + } + }).a != 7; + }); + } +}); + +// node_modules/core-js/internals/object-get-own-property-descriptor.js +var require_object_get_own_property_descriptor = __commonJS({ + "node_modules/core-js/internals/object-get-own-property-descriptor.js"(exports2) { + var DESCRIPTORS = require_descriptors(); + var call = require_function_call(); + var propertyIsEnumerableModule = require_object_property_is_enumerable(); + var createPropertyDescriptor = require_create_property_descriptor(); + var toIndexedObject = require_to_indexed_object(); + var toPropertyKey = require_to_property_key(); + var hasOwn = require_has_own_property(); + var IE8_DOM_DEFINE = require_ie8_dom_define(); + var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + exports2.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) { + O = toIndexedObject(O); + P = toPropertyKey(P); + if (IE8_DOM_DEFINE) + try { + return $getOwnPropertyDescriptor(O, P); + } catch (error) { + } + if (hasOwn(O, P)) + return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]); + }; + } +}); + +// node_modules/core-js/internals/v8-prototype-define-bug.js +var require_v8_prototype_define_bug = __commonJS({ + "node_modules/core-js/internals/v8-prototype-define-bug.js"(exports2, module2) { + var DESCRIPTORS = require_descriptors(); + var fails = require_fails(); + module2.exports = DESCRIPTORS && fails(function() { + return Object.defineProperty(function() { + }, "prototype", { + value: 42, + writable: false + }).prototype != 42; + }); + } +}); + +// node_modules/core-js/internals/an-object.js +var require_an_object = __commonJS({ + "node_modules/core-js/internals/an-object.js"(exports2, module2) { + var isObject = require_is_object(); + var $String = String; + var $TypeError = TypeError; + module2.exports = function(argument) { + if (isObject(argument)) + return argument; + throw $TypeError($String(argument) + " is not an object"); + }; + } +}); + +// node_modules/core-js/internals/object-define-property.js +var require_object_define_property = __commonJS({ + "node_modules/core-js/internals/object-define-property.js"(exports2) { + var DESCRIPTORS = require_descriptors(); + var IE8_DOM_DEFINE = require_ie8_dom_define(); + var V8_PROTOTYPE_DEFINE_BUG = require_v8_prototype_define_bug(); + var anObject = require_an_object(); + var toPropertyKey = require_to_property_key(); + var $TypeError = TypeError; + var $defineProperty = Object.defineProperty; + var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + var ENUMERABLE = "enumerable"; + var CONFIGURABLE = "configurable"; + var WRITABLE = "writable"; + exports2.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) { + anObject(O); + P = toPropertyKey(P); + anObject(Attributes); + if (typeof O === "function" && P === "prototype" && "value" in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) { + var current = $getOwnPropertyDescriptor(O, P); + if (current && current[WRITABLE]) { + O[P] = Attributes.value; + Attributes = { + configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE], + enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE], + writable: false + }; + } + } + return $defineProperty(O, P, Attributes); + } : $defineProperty : function defineProperty(O, P, Attributes) { + anObject(O); + P = toPropertyKey(P); + anObject(Attributes); + if (IE8_DOM_DEFINE) + try { + return $defineProperty(O, P, Attributes); + } catch (error) { + } + if ("get" in Attributes || "set" in Attributes) + throw $TypeError("Accessors not supported"); + if ("value" in Attributes) + O[P] = Attributes.value; + return O; + }; + } +}); + +// node_modules/core-js/internals/create-non-enumerable-property.js +var require_create_non_enumerable_property = __commonJS({ + "node_modules/core-js/internals/create-non-enumerable-property.js"(exports2, module2) { + var DESCRIPTORS = require_descriptors(); + var definePropertyModule = require_object_define_property(); + var createPropertyDescriptor = require_create_property_descriptor(); + module2.exports = DESCRIPTORS ? function(object, key, value) { + return definePropertyModule.f(object, key, createPropertyDescriptor(1, value)); + } : function(object, key, value) { + object[key] = value; + return object; + }; + } +}); + +// node_modules/core-js/internals/function-name.js +var require_function_name = __commonJS({ + "node_modules/core-js/internals/function-name.js"(exports2, module2) { + var DESCRIPTORS = require_descriptors(); + var hasOwn = require_has_own_property(); + var FunctionPrototype = Function.prototype; + var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor; + var EXISTS = hasOwn(FunctionPrototype, "name"); + var PROPER = EXISTS && function something() { + }.name === "something"; + var CONFIGURABLE = EXISTS && (!DESCRIPTORS || DESCRIPTORS && getDescriptor(FunctionPrototype, "name").configurable); + module2.exports = { + EXISTS, + PROPER, + CONFIGURABLE + }; + } +}); + +// node_modules/core-js/internals/inspect-source.js +var require_inspect_source = __commonJS({ + "node_modules/core-js/internals/inspect-source.js"(exports2, module2) { + var uncurryThis = require_function_uncurry_this(); + var isCallable = require_is_callable(); + var store = require_shared_store(); + var functionToString = uncurryThis(Function.toString); + if (!isCallable(store.inspectSource)) { + store.inspectSource = function(it) { + return functionToString(it); + }; + } + module2.exports = store.inspectSource; + } +}); + +// node_modules/core-js/internals/weak-map-basic-detection.js +var require_weak_map_basic_detection = __commonJS({ + "node_modules/core-js/internals/weak-map-basic-detection.js"(exports2, module2) { + var global2 = require_global(); + var isCallable = require_is_callable(); + var WeakMap2 = global2.WeakMap; + module2.exports = isCallable(WeakMap2) && /native code/.test(String(WeakMap2)); + } +}); + +// node_modules/core-js/internals/shared-key.js +var require_shared_key = __commonJS({ + "node_modules/core-js/internals/shared-key.js"(exports2, module2) { + var shared = require_shared(); + var uid = require_uid(); + var keys = shared("keys"); + module2.exports = function(key) { + return keys[key] || (keys[key] = uid(key)); + }; + } +}); + +// node_modules/core-js/internals/hidden-keys.js +var require_hidden_keys = __commonJS({ + "node_modules/core-js/internals/hidden-keys.js"(exports2, module2) { + module2.exports = {}; + } +}); + +// node_modules/core-js/internals/internal-state.js +var require_internal_state = __commonJS({ + "node_modules/core-js/internals/internal-state.js"(exports2, module2) { + var NATIVE_WEAK_MAP = require_weak_map_basic_detection(); + var global2 = require_global(); + var isObject = require_is_object(); + var createNonEnumerableProperty = require_create_non_enumerable_property(); + var hasOwn = require_has_own_property(); + var shared = require_shared_store(); + var sharedKey = require_shared_key(); + var hiddenKeys = require_hidden_keys(); + var OBJECT_ALREADY_INITIALIZED = "Object already initialized"; + var TypeError2 = global2.TypeError; + var WeakMap2 = global2.WeakMap; + var set; + var get; + var has; + var enforce = function(it) { + return has(it) ? get(it) : set(it, {}); + }; + var getterFor = function(TYPE) { + return function(it) { + var state; + if (!isObject(it) || (state = get(it)).type !== TYPE) { + throw TypeError2("Incompatible receiver, " + TYPE + " required"); + } + return state; + }; + }; + if (NATIVE_WEAK_MAP || shared.state) { + store = shared.state || (shared.state = new WeakMap2()); + store.get = store.get; + store.has = store.has; + store.set = store.set; + set = function(it, metadata) { + if (store.has(it)) + throw TypeError2(OBJECT_ALREADY_INITIALIZED); + metadata.facade = it; + store.set(it, metadata); + return metadata; + }; + get = function(it) { + return store.get(it) || {}; + }; + has = function(it) { + return store.has(it); + }; + } else { + STATE = sharedKey("state"); + hiddenKeys[STATE] = true; + set = function(it, metadata) { + if (hasOwn(it, STATE)) + throw TypeError2(OBJECT_ALREADY_INITIALIZED); + metadata.facade = it; + createNonEnumerableProperty(it, STATE, metadata); + return metadata; + }; + get = function(it) { + return hasOwn(it, STATE) ? it[STATE] : {}; + }; + has = function(it) { + return hasOwn(it, STATE); + }; + } + var store; + var STATE; + module2.exports = { + set, + get, + has, + enforce, + getterFor + }; + } +}); + +// node_modules/core-js/internals/make-built-in.js +var require_make_built_in = __commonJS({ + "node_modules/core-js/internals/make-built-in.js"(exports2, module2) { + var fails = require_fails(); + var isCallable = require_is_callable(); + var hasOwn = require_has_own_property(); + var DESCRIPTORS = require_descriptors(); + var CONFIGURABLE_FUNCTION_NAME = require_function_name().CONFIGURABLE; + var inspectSource = require_inspect_source(); + var InternalStateModule = require_internal_state(); + var enforceInternalState = InternalStateModule.enforce; + var getInternalState = InternalStateModule.get; + var defineProperty = Object.defineProperty; + var CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function() { + return defineProperty(function() { + }, "length", { value: 8 }).length !== 8; + }); + var TEMPLATE = String(String).split("String"); + var makeBuiltIn = module2.exports = function(value, name, options) { + if (String(name).slice(0, 7) === "Symbol(") { + name = "[" + String(name).replace(/^Symbol\(([^)]*)\)/, "$1") + "]"; + } + if (options && options.getter) + name = "get " + name; + if (options && options.setter) + name = "set " + name; + if (!hasOwn(value, "name") || CONFIGURABLE_FUNCTION_NAME && value.name !== name) { + if (DESCRIPTORS) + defineProperty(value, "name", { value: name, configurable: true }); + else + value.name = name; + } + if (CONFIGURABLE_LENGTH && options && hasOwn(options, "arity") && value.length !== options.arity) { + defineProperty(value, "length", { value: options.arity }); + } + try { + if (options && hasOwn(options, "constructor") && options.constructor) { + if (DESCRIPTORS) + defineProperty(value, "prototype", { writable: false }); + } else if (value.prototype) + value.prototype = void 0; + } catch (error) { + } + var state = enforceInternalState(value); + if (!hasOwn(state, "source")) { + state.source = TEMPLATE.join(typeof name == "string" ? name : ""); + } + return value; + }; + Function.prototype.toString = makeBuiltIn(function toString() { + return isCallable(this) && getInternalState(this).source || inspectSource(this); + }, "toString"); + } +}); + +// node_modules/core-js/internals/define-built-in.js +var require_define_built_in = __commonJS({ + "node_modules/core-js/internals/define-built-in.js"(exports2, module2) { + var isCallable = require_is_callable(); + var definePropertyModule = require_object_define_property(); + var makeBuiltIn = require_make_built_in(); + var defineGlobalProperty = require_define_global_property(); + module2.exports = function(O, key, value, options) { + if (!options) + options = {}; + var simple = options.enumerable; + var name = options.name !== void 0 ? options.name : key; + if (isCallable(value)) + makeBuiltIn(value, name, options); + if (options.global) { + if (simple) + O[key] = value; + else + defineGlobalProperty(key, value); + } else { + try { + if (!options.unsafe) + delete O[key]; + else if (O[key]) + simple = true; + } catch (error) { + } + if (simple) + O[key] = value; + else + definePropertyModule.f(O, key, { + value, + enumerable: false, + configurable: !options.nonConfigurable, + writable: !options.nonWritable + }); + } + return O; + }; + } +}); + +// node_modules/core-js/internals/math-trunc.js +var require_math_trunc = __commonJS({ + "node_modules/core-js/internals/math-trunc.js"(exports2, module2) { + var ceil = Math.ceil; + var floor = Math.floor; + module2.exports = Math.trunc || function trunc(x) { + var n = +x; + return (n > 0 ? floor : ceil)(n); + }; + } +}); + +// node_modules/core-js/internals/to-integer-or-infinity.js +var require_to_integer_or_infinity = __commonJS({ + "node_modules/core-js/internals/to-integer-or-infinity.js"(exports2, module2) { + var trunc = require_math_trunc(); + module2.exports = function(argument) { + var number = +argument; + return number !== number || number === 0 ? 0 : trunc(number); + }; + } +}); + +// node_modules/core-js/internals/to-absolute-index.js +var require_to_absolute_index = __commonJS({ + "node_modules/core-js/internals/to-absolute-index.js"(exports2, module2) { + var toIntegerOrInfinity = require_to_integer_or_infinity(); + var max = Math.max; + var min = Math.min; + module2.exports = function(index, length) { + var integer = toIntegerOrInfinity(index); + return integer < 0 ? max(integer + length, 0) : min(integer, length); + }; + } +}); + +// node_modules/core-js/internals/to-length.js +var require_to_length = __commonJS({ + "node_modules/core-js/internals/to-length.js"(exports2, module2) { + var toIntegerOrInfinity = require_to_integer_or_infinity(); + var min = Math.min; + module2.exports = function(argument) { + return argument > 0 ? min(toIntegerOrInfinity(argument), 9007199254740991) : 0; + }; + } +}); + +// node_modules/core-js/internals/length-of-array-like.js +var require_length_of_array_like = __commonJS({ + "node_modules/core-js/internals/length-of-array-like.js"(exports2, module2) { + var toLength = require_to_length(); + module2.exports = function(obj) { + return toLength(obj.length); + }; + } +}); + +// node_modules/core-js/internals/array-includes.js +var require_array_includes = __commonJS({ + "node_modules/core-js/internals/array-includes.js"(exports2, module2) { + var toIndexedObject = require_to_indexed_object(); + var toAbsoluteIndex = require_to_absolute_index(); + var lengthOfArrayLike = require_length_of_array_like(); + var createMethod = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O = toIndexedObject($this); + var length = lengthOfArrayLike(O); + var index = toAbsoluteIndex(fromIndex, length); + var value; + if (IS_INCLUDES && el != el) + while (length > index) { + value = O[index++]; + if (value != value) + return true; + } + else + for (; length > index; index++) { + if ((IS_INCLUDES || index in O) && O[index] === el) + return IS_INCLUDES || index || 0; + } + return !IS_INCLUDES && -1; + }; + }; + module2.exports = { + includes: createMethod(true), + indexOf: createMethod(false) + }; + } +}); + +// node_modules/core-js/internals/object-keys-internal.js +var require_object_keys_internal = __commonJS({ + "node_modules/core-js/internals/object-keys-internal.js"(exports2, module2) { + var uncurryThis = require_function_uncurry_this(); + var hasOwn = require_has_own_property(); + var toIndexedObject = require_to_indexed_object(); + var indexOf = require_array_includes().indexOf; + var hiddenKeys = require_hidden_keys(); + var push = uncurryThis([].push); + module2.exports = function(object, names) { + var O = toIndexedObject(object); + var i = 0; + var result = []; + var key; + for (key in O) + !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key); + while (names.length > i) + if (hasOwn(O, key = names[i++])) { + ~indexOf(result, key) || push(result, key); + } + return result; + }; + } +}); + +// node_modules/core-js/internals/enum-bug-keys.js +var require_enum_bug_keys = __commonJS({ + "node_modules/core-js/internals/enum-bug-keys.js"(exports2, module2) { + module2.exports = [ + "constructor", + "hasOwnProperty", + "isPrototypeOf", + "propertyIsEnumerable", + "toLocaleString", + "toString", + "valueOf" + ]; + } +}); + +// node_modules/core-js/internals/object-get-own-property-names.js +var require_object_get_own_property_names = __commonJS({ + "node_modules/core-js/internals/object-get-own-property-names.js"(exports2) { + var internalObjectKeys = require_object_keys_internal(); + var enumBugKeys = require_enum_bug_keys(); + var hiddenKeys = enumBugKeys.concat("length", "prototype"); + exports2.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return internalObjectKeys(O, hiddenKeys); + }; + } +}); + +// node_modules/core-js/internals/object-get-own-property-symbols.js +var require_object_get_own_property_symbols = __commonJS({ + "node_modules/core-js/internals/object-get-own-property-symbols.js"(exports2) { + exports2.f = Object.getOwnPropertySymbols; + } +}); + +// node_modules/core-js/internals/own-keys.js +var require_own_keys = __commonJS({ + "node_modules/core-js/internals/own-keys.js"(exports2, module2) { + var getBuiltIn = require_get_built_in(); + var uncurryThis = require_function_uncurry_this(); + var getOwnPropertyNamesModule = require_object_get_own_property_names(); + var getOwnPropertySymbolsModule = require_object_get_own_property_symbols(); + var anObject = require_an_object(); + var concat = uncurryThis([].concat); + module2.exports = getBuiltIn("Reflect", "ownKeys") || function ownKeys(it) { + var keys = getOwnPropertyNamesModule.f(anObject(it)); + var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; + return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys; + }; + } +}); + +// node_modules/core-js/internals/copy-constructor-properties.js +var require_copy_constructor_properties = __commonJS({ + "node_modules/core-js/internals/copy-constructor-properties.js"(exports2, module2) { + var hasOwn = require_has_own_property(); + var ownKeys = require_own_keys(); + var getOwnPropertyDescriptorModule = require_object_get_own_property_descriptor(); + var definePropertyModule = require_object_define_property(); + module2.exports = function(target, source, exceptions) { + var keys = ownKeys(source); + var defineProperty = definePropertyModule.f; + var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) { + defineProperty(target, key, getOwnPropertyDescriptor(source, key)); + } + } + }; + } +}); + +// node_modules/core-js/internals/is-forced.js +var require_is_forced = __commonJS({ + "node_modules/core-js/internals/is-forced.js"(exports2, module2) { + var fails = require_fails(); + var isCallable = require_is_callable(); + var replacement = /#|\.prototype\./; + var isForced = function(feature, detection) { + var value = data[normalize(feature)]; + return value == POLYFILL ? true : value == NATIVE ? false : isCallable(detection) ? fails(detection) : !!detection; + }; + var normalize = isForced.normalize = function(string) { + return String(string).replace(replacement, ".").toLowerCase(); + }; + var data = isForced.data = {}; + var NATIVE = isForced.NATIVE = "N"; + var POLYFILL = isForced.POLYFILL = "P"; + module2.exports = isForced; + } +}); + +// node_modules/core-js/internals/export.js +var require_export = __commonJS({ + "node_modules/core-js/internals/export.js"(exports2, module2) { + var global2 = require_global(); + var getOwnPropertyDescriptor = require_object_get_own_property_descriptor().f; + var createNonEnumerableProperty = require_create_non_enumerable_property(); + var defineBuiltIn = require_define_built_in(); + var defineGlobalProperty = require_define_global_property(); + var copyConstructorProperties = require_copy_constructor_properties(); + var isForced = require_is_forced(); + module2.exports = function(options, source) { + var TARGET = options.target; + var GLOBAL = options.global; + var STATIC = options.stat; + var FORCED, target, key, targetProperty, sourceProperty, descriptor; + if (GLOBAL) { + target = global2; + } else if (STATIC) { + target = global2[TARGET] || defineGlobalProperty(TARGET, {}); + } else { + target = (global2[TARGET] || {}).prototype; + } + if (target) + for (key in source) { + sourceProperty = source[key]; + if (options.dontCallGetSet) { + descriptor = getOwnPropertyDescriptor(target, key); + targetProperty = descriptor && descriptor.value; + } else + targetProperty = target[key]; + FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? "." : "#") + key, options.forced); + if (!FORCED && targetProperty !== void 0) { + if (typeof sourceProperty == typeof targetProperty) + continue; + copyConstructorProperties(sourceProperty, targetProperty); + } + if (options.sham || targetProperty && targetProperty.sham) { + createNonEnumerableProperty(sourceProperty, "sham", true); + } + defineBuiltIn(target, key, sourceProperty, options); + } + }; + } +}); + +// node_modules/core-js/internals/is-array.js +var require_is_array = __commonJS({ + "node_modules/core-js/internals/is-array.js"(exports2, module2) { + var classof = require_classof_raw(); + module2.exports = Array.isArray || function isArray(argument) { + return classof(argument) == "Array"; + }; + } +}); + +// node_modules/core-js/internals/does-not-exceed-safe-integer.js +var require_does_not_exceed_safe_integer = __commonJS({ + "node_modules/core-js/internals/does-not-exceed-safe-integer.js"(exports2, module2) { + var $TypeError = TypeError; + var MAX_SAFE_INTEGER = 9007199254740991; + module2.exports = function(it) { + if (it > MAX_SAFE_INTEGER) + throw $TypeError("Maximum allowed index exceeded"); + return it; + }; + } +}); + +// node_modules/core-js/internals/function-uncurry-this-clause.js +var require_function_uncurry_this_clause = __commonJS({ + "node_modules/core-js/internals/function-uncurry-this-clause.js"(exports2, module2) { + var classofRaw = require_classof_raw(); + var uncurryThis = require_function_uncurry_this(); + module2.exports = function(fn) { + if (classofRaw(fn) === "Function") + return uncurryThis(fn); + }; + } +}); + +// node_modules/core-js/internals/function-bind-context.js +var require_function_bind_context = __commonJS({ + "node_modules/core-js/internals/function-bind-context.js"(exports2, module2) { + var uncurryThis = require_function_uncurry_this_clause(); + var aCallable = require_a_callable(); + var NATIVE_BIND = require_function_bind_native(); + var bind = uncurryThis(uncurryThis.bind); + module2.exports = function(fn, that) { + aCallable(fn); + return that === void 0 ? fn : NATIVE_BIND ? bind(fn, that) : function() { + return fn.apply(that, arguments); + }; + }; + } +}); + +// node_modules/core-js/internals/flatten-into-array.js +var require_flatten_into_array = __commonJS({ + "node_modules/core-js/internals/flatten-into-array.js"(exports2, module2) { + "use strict"; + var isArray = require_is_array(); + var lengthOfArrayLike = require_length_of_array_like(); + var doesNotExceedSafeInteger = require_does_not_exceed_safe_integer(); + var bind = require_function_bind_context(); + var flattenIntoArray = function(target, original, source, sourceLen, start, depth, mapper, thisArg) { + var targetIndex = start; + var sourceIndex = 0; + var mapFn = mapper ? bind(mapper, thisArg) : false; + var element, elementLen; + while (sourceIndex < sourceLen) { + if (sourceIndex in source) { + element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex]; + if (depth > 0 && isArray(element)) { + elementLen = lengthOfArrayLike(element); + targetIndex = flattenIntoArray(target, original, element, elementLen, targetIndex, depth - 1) - 1; + } else { + doesNotExceedSafeInteger(targetIndex + 1); + target[targetIndex] = element; + } + targetIndex++; + } + sourceIndex++; + } + return targetIndex; + }; + module2.exports = flattenIntoArray; + } +}); + +// node_modules/core-js/internals/to-string-tag-support.js +var require_to_string_tag_support = __commonJS({ + "node_modules/core-js/internals/to-string-tag-support.js"(exports2, module2) { + var wellKnownSymbol = require_well_known_symbol(); + var TO_STRING_TAG = wellKnownSymbol("toStringTag"); + var test = {}; + test[TO_STRING_TAG] = "z"; + module2.exports = String(test) === "[object z]"; + } +}); + +// node_modules/core-js/internals/classof.js +var require_classof = __commonJS({ + "node_modules/core-js/internals/classof.js"(exports2, module2) { + var TO_STRING_TAG_SUPPORT = require_to_string_tag_support(); + var isCallable = require_is_callable(); + var classofRaw = require_classof_raw(); + var wellKnownSymbol = require_well_known_symbol(); + var TO_STRING_TAG = wellKnownSymbol("toStringTag"); + var $Object = Object; + var CORRECT_ARGUMENTS = classofRaw(function() { + return arguments; + }()) == "Arguments"; + var tryGet = function(it, key) { + try { + return it[key]; + } catch (error) { + } + }; + module2.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function(it) { + var O, tag, result; + return it === void 0 ? "Undefined" : it === null ? "Null" : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == "string" ? tag : CORRECT_ARGUMENTS ? classofRaw(O) : (result = classofRaw(O)) == "Object" && isCallable(O.callee) ? "Arguments" : result; + }; + } +}); + +// node_modules/core-js/internals/is-constructor.js +var require_is_constructor = __commonJS({ + "node_modules/core-js/internals/is-constructor.js"(exports2, module2) { + var uncurryThis = require_function_uncurry_this(); + var fails = require_fails(); + var isCallable = require_is_callable(); + var classof = require_classof(); + var getBuiltIn = require_get_built_in(); + var inspectSource = require_inspect_source(); + var noop = function() { + }; + var empty = []; + var construct = getBuiltIn("Reflect", "construct"); + var constructorRegExp = /^\s*(?:class|function)\b/; + var exec = uncurryThis(constructorRegExp.exec); + var INCORRECT_TO_STRING = !constructorRegExp.exec(noop); + var isConstructorModern = function isConstructor(argument) { + if (!isCallable(argument)) + return false; + try { + construct(noop, empty, argument); + return true; + } catch (error) { + return false; + } + }; + var isConstructorLegacy = function isConstructor(argument) { + if (!isCallable(argument)) + return false; + switch (classof(argument)) { + case "AsyncFunction": + case "GeneratorFunction": + case "AsyncGeneratorFunction": + return false; + } + try { + return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument)); + } catch (error) { + return true; + } + }; + isConstructorLegacy.sham = true; + module2.exports = !construct || fails(function() { + var called; + return isConstructorModern(isConstructorModern.call) || !isConstructorModern(Object) || !isConstructorModern(function() { + called = true; + }) || called; + }) ? isConstructorLegacy : isConstructorModern; + } +}); + +// node_modules/core-js/internals/array-species-constructor.js +var require_array_species_constructor = __commonJS({ + "node_modules/core-js/internals/array-species-constructor.js"(exports2, module2) { + var isArray = require_is_array(); + var isConstructor = require_is_constructor(); + var isObject = require_is_object(); + var wellKnownSymbol = require_well_known_symbol(); + var SPECIES = wellKnownSymbol("species"); + var $Array = Array; + module2.exports = function(originalArray) { + var C; + if (isArray(originalArray)) { + C = originalArray.constructor; + if (isConstructor(C) && (C === $Array || isArray(C.prototype))) + C = void 0; + else if (isObject(C)) { + C = C[SPECIES]; + if (C === null) + C = void 0; + } + } + return C === void 0 ? $Array : C; + }; + } +}); + +// node_modules/core-js/internals/array-species-create.js +var require_array_species_create = __commonJS({ + "node_modules/core-js/internals/array-species-create.js"(exports2, module2) { + var arraySpeciesConstructor = require_array_species_constructor(); + module2.exports = function(originalArray, length) { + return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length); + }; + } +}); + +// node_modules/core-js/modules/es.array.flat-map.js +var require_es_array_flat_map = __commonJS({ + "node_modules/core-js/modules/es.array.flat-map.js"() { + "use strict"; + var $ = require_export(); + var flattenIntoArray = require_flatten_into_array(); + var aCallable = require_a_callable(); + var toObject = require_to_object(); + var lengthOfArrayLike = require_length_of_array_like(); + var arraySpeciesCreate = require_array_species_create(); + $({ target: "Array", proto: true }, { + flatMap: function flatMap(callbackfn) { + var O = toObject(this); + var sourceLen = lengthOfArrayLike(O); + var A; + aCallable(callbackfn); + A = arraySpeciesCreate(O, 0); + A.length = flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments.length > 1 ? arguments[1] : void 0); + return A; + } + }); + } +}); + +// node_modules/core-js/internals/iterators.js +var require_iterators = __commonJS({ + "node_modules/core-js/internals/iterators.js"(exports2, module2) { + module2.exports = {}; + } +}); + +// node_modules/core-js/internals/is-array-iterator-method.js +var require_is_array_iterator_method = __commonJS({ + "node_modules/core-js/internals/is-array-iterator-method.js"(exports2, module2) { + var wellKnownSymbol = require_well_known_symbol(); + var Iterators = require_iterators(); + var ITERATOR = wellKnownSymbol("iterator"); + var ArrayPrototype = Array.prototype; + module2.exports = function(it) { + return it !== void 0 && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it); + }; + } +}); + +// node_modules/core-js/internals/get-iterator-method.js +var require_get_iterator_method = __commonJS({ + "node_modules/core-js/internals/get-iterator-method.js"(exports2, module2) { + var classof = require_classof(); + var getMethod = require_get_method(); + var isNullOrUndefined = require_is_null_or_undefined(); + var Iterators = require_iterators(); + var wellKnownSymbol = require_well_known_symbol(); + var ITERATOR = wellKnownSymbol("iterator"); + module2.exports = function(it) { + if (!isNullOrUndefined(it)) + return getMethod(it, ITERATOR) || getMethod(it, "@@iterator") || Iterators[classof(it)]; + }; + } +}); + +// node_modules/core-js/internals/get-iterator.js +var require_get_iterator = __commonJS({ + "node_modules/core-js/internals/get-iterator.js"(exports2, module2) { + var call = require_function_call(); + var aCallable = require_a_callable(); + var anObject = require_an_object(); + var tryToString = require_try_to_string(); + var getIteratorMethod = require_get_iterator_method(); + var $TypeError = TypeError; + module2.exports = function(argument, usingIterator) { + var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator; + if (aCallable(iteratorMethod)) + return anObject(call(iteratorMethod, argument)); + throw $TypeError(tryToString(argument) + " is not iterable"); + }; + } +}); + +// node_modules/core-js/internals/iterator-close.js +var require_iterator_close = __commonJS({ + "node_modules/core-js/internals/iterator-close.js"(exports2, module2) { + var call = require_function_call(); + var anObject = require_an_object(); + var getMethod = require_get_method(); + module2.exports = function(iterator, kind, value) { + var innerResult, innerError; + anObject(iterator); + try { + innerResult = getMethod(iterator, "return"); + if (!innerResult) { + if (kind === "throw") + throw value; + return value; + } + innerResult = call(innerResult, iterator); + } catch (error) { + innerError = true; + innerResult = error; + } + if (kind === "throw") + throw value; + if (innerError) + throw innerResult; + anObject(innerResult); + return value; + }; + } +}); + +// node_modules/core-js/internals/iterate.js +var require_iterate = __commonJS({ + "node_modules/core-js/internals/iterate.js"(exports2, module2) { + var bind = require_function_bind_context(); + var call = require_function_call(); + var anObject = require_an_object(); + var tryToString = require_try_to_string(); + var isArrayIteratorMethod = require_is_array_iterator_method(); + var lengthOfArrayLike = require_length_of_array_like(); + var isPrototypeOf = require_object_is_prototype_of(); + var getIterator = require_get_iterator(); + var getIteratorMethod = require_get_iterator_method(); + var iteratorClose = require_iterator_close(); + var $TypeError = TypeError; + var Result = function(stopped, result) { + this.stopped = stopped; + this.result = result; + }; + var ResultPrototype = Result.prototype; + module2.exports = function(iterable, unboundFunction, options) { + var that = options && options.that; + var AS_ENTRIES = !!(options && options.AS_ENTRIES); + var IS_RECORD = !!(options && options.IS_RECORD); + var IS_ITERATOR = !!(options && options.IS_ITERATOR); + var INTERRUPTED = !!(options && options.INTERRUPTED); + var fn = bind(unboundFunction, that); + var iterator, iterFn, index, length, result, next, step; + var stop = function(condition) { + if (iterator) + iteratorClose(iterator, "normal", condition); + return new Result(true, condition); + }; + var callFn = function(value) { + if (AS_ENTRIES) { + anObject(value); + return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]); + } + return INTERRUPTED ? fn(value, stop) : fn(value); + }; + if (IS_RECORD) { + iterator = iterable.iterator; + } else if (IS_ITERATOR) { + iterator = iterable; + } else { + iterFn = getIteratorMethod(iterable); + if (!iterFn) + throw $TypeError(tryToString(iterable) + " is not iterable"); + if (isArrayIteratorMethod(iterFn)) { + for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) { + result = callFn(iterable[index]); + if (result && isPrototypeOf(ResultPrototype, result)) + return result; + } + return new Result(false); + } + iterator = getIterator(iterable, iterFn); + } + next = IS_RECORD ? iterable.next : iterator.next; + while (!(step = call(next, iterator)).done) { + try { + result = callFn(step.value); + } catch (error) { + iteratorClose(iterator, "throw", error); + } + if (typeof result == "object" && result && isPrototypeOf(ResultPrototype, result)) + return result; + } + return new Result(false); + }; + } +}); + +// node_modules/core-js/internals/create-property.js +var require_create_property = __commonJS({ + "node_modules/core-js/internals/create-property.js"(exports2, module2) { + "use strict"; + var toPropertyKey = require_to_property_key(); + var definePropertyModule = require_object_define_property(); + var createPropertyDescriptor = require_create_property_descriptor(); + module2.exports = function(object, key, value) { + var propertyKey = toPropertyKey(key); + if (propertyKey in object) + definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value)); + else + object[propertyKey] = value; + }; + } +}); + +// node_modules/core-js/modules/es.object.from-entries.js +var require_es_object_from_entries = __commonJS({ + "node_modules/core-js/modules/es.object.from-entries.js"() { + var $ = require_export(); + var iterate = require_iterate(); + var createProperty = require_create_property(); + $({ target: "Object", stat: true }, { + fromEntries: function fromEntries(iterable) { + var obj = {}; + iterate(iterable, function(k, v) { + createProperty(obj, k, v); + }, { AS_ENTRIES: true }); + return obj; + } + }); + } +}); + +// node_modules/core-js/internals/define-built-in-accessor.js +var require_define_built_in_accessor = __commonJS({ + "node_modules/core-js/internals/define-built-in-accessor.js"(exports2, module2) { + var makeBuiltIn = require_make_built_in(); + var defineProperty = require_object_define_property(); + module2.exports = function(target, name, descriptor) { + if (descriptor.get) + makeBuiltIn(descriptor.get, name, { getter: true }); + if (descriptor.set) + makeBuiltIn(descriptor.set, name, { setter: true }); + return defineProperty.f(target, name, descriptor); + }; + } +}); + +// node_modules/core-js/internals/regexp-flags.js +var require_regexp_flags = __commonJS({ + "node_modules/core-js/internals/regexp-flags.js"(exports2, module2) { + "use strict"; + var anObject = require_an_object(); + module2.exports = function() { + var that = anObject(this); + var result = ""; + if (that.hasIndices) + result += "d"; + if (that.global) + result += "g"; + if (that.ignoreCase) + result += "i"; + if (that.multiline) + result += "m"; + if (that.dotAll) + result += "s"; + if (that.unicode) + result += "u"; + if (that.unicodeSets) + result += "v"; + if (that.sticky) + result += "y"; + return result; + }; + } +}); + +// node_modules/core-js/modules/es.regexp.flags.js +var require_es_regexp_flags = __commonJS({ + "node_modules/core-js/modules/es.regexp.flags.js"() { + var global2 = require_global(); + var DESCRIPTORS = require_descriptors(); + var defineBuiltInAccessor = require_define_built_in_accessor(); + var regExpFlags = require_regexp_flags(); + var fails = require_fails(); + var RegExp2 = global2.RegExp; + var RegExpPrototype = RegExp2.prototype; + var FORCED = DESCRIPTORS && fails(function() { + var INDICES_SUPPORT = true; + try { + RegExp2(".", "d"); + } catch (error) { + INDICES_SUPPORT = false; + } + var O = {}; + var calls = ""; + var expected = INDICES_SUPPORT ? "dgimsy" : "gimsy"; + var addGetter = function(key2, chr) { + Object.defineProperty(O, key2, { get: function() { + calls += chr; + return true; + } }); + }; + var pairs = { + dotAll: "s", + global: "g", + ignoreCase: "i", + multiline: "m", + sticky: "y" + }; + if (INDICES_SUPPORT) + pairs.hasIndices = "d"; + for (var key in pairs) + addGetter(key, pairs[key]); + var result = Object.getOwnPropertyDescriptor(RegExpPrototype, "flags").get.call(O); + return result !== expected || calls !== expected; + }); + if (FORCED) + defineBuiltInAccessor(RegExpPrototype, "flags", { + configurable: true, + get: regExpFlags + }); + } +}); + +// node_modules/core-js/modules/es.array.flat.js +var require_es_array_flat = __commonJS({ + "node_modules/core-js/modules/es.array.flat.js"() { + "use strict"; + var $ = require_export(); + var flattenIntoArray = require_flatten_into_array(); + var toObject = require_to_object(); + var lengthOfArrayLike = require_length_of_array_like(); + var toIntegerOrInfinity = require_to_integer_or_infinity(); + var arraySpeciesCreate = require_array_species_create(); + $({ target: "Array", proto: true }, { + flat: function flat() { + var depthArg = arguments.length ? arguments[0] : void 0; + var O = toObject(this); + var sourceLen = lengthOfArrayLike(O); + var A = arraySpeciesCreate(O, 0); + A.length = flattenIntoArray(A, O, O, sourceLen, 0, depthArg === void 0 ? 1 : toIntegerOrInfinity(depthArg)); + return A; + } + }); + } +}); + +// dist/_index.js.cjs.js +var _excluded = ["cliName", "cliCategory", "cliDescription"]; +var _excluded2 = ["_"]; +var _excluded3 = ["overrides"]; +var _excluded4 = ["languageId"]; +function _objectWithoutProperties(source, excluded) { + if (source == null) + return {}; + var target = _objectWithoutPropertiesLoose(source, excluded); + var key, i; + if (Object.getOwnPropertySymbols) { + var sourceSymbolKeys = Object.getOwnPropertySymbols(source); + for (i = 0; i < sourceSymbolKeys.length; i++) { + key = sourceSymbolKeys[i]; + if (excluded.indexOf(key) >= 0) + continue; + if (!Object.prototype.propertyIsEnumerable.call(source, key)) + continue; + target[key] = source[key]; + } + } + return target; +} +function _objectWithoutPropertiesLoose(source, excluded) { + if (source == null) + return {}; + var target = {}; + var sourceKeys = Object.keys(source); + var key, i; + for (i = 0; i < sourceKeys.length; i++) { + key = sourceKeys[i]; + if (excluded.indexOf(key) >= 0) + continue; + target[key] = source[key]; + } + return target; +} +require_es_array_flat_map(); +require_es_object_from_entries(); +require_es_regexp_flags(); +require_es_array_flat(); +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames2 = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __esm = (fn, res) => function __init() { + return fn && (res = (0, fn[__getOwnPropNames2(fn)[0]])(fn = 0)), res; +}; +var __commonJS2 = (cb, mod) => function __require() { + return mod || (0, cb[__getOwnPropNames2(cb)[0]])((mod = { + exports: {} + }).exports, mod), mod.exports; +}; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { + get: all[name], + enumerable: true + }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable + }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { + value: mod, + enumerable: true +}) : target, mod)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { + value: true +}), mod); +var require_base = __commonJS2({ + "node_modules/diff/lib/diff/base.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2["default"] = Diff; + function Diff() { + } + Diff.prototype = { + diff: function diff(oldString, newString) { + var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}; + var callback = options.callback; + if (typeof options === "function") { + callback = options; + options = {}; + } + this.options = options; + var self2 = this; + function done(value) { + if (callback) { + setTimeout(function() { + callback(void 0, value); + }, 0); + return true; + } else { + return value; + } + } + oldString = this.castInput(oldString); + newString = this.castInput(newString); + oldString = this.removeEmpty(this.tokenize(oldString)); + newString = this.removeEmpty(this.tokenize(newString)); + var newLen = newString.length, oldLen = oldString.length; + var editLength = 1; + var maxEditLength = newLen + oldLen; + var bestPath = [{ + newPos: -1, + components: [] + }]; + var oldPos = this.extractCommon(bestPath[0], newString, oldString, 0); + if (bestPath[0].newPos + 1 >= newLen && oldPos + 1 >= oldLen) { + return done([{ + value: this.join(newString), + count: newString.length + }]); + } + function execEditLength() { + for (var diagonalPath = -1 * editLength; diagonalPath <= editLength; diagonalPath += 2) { + var basePath = void 0; + var addPath = bestPath[diagonalPath - 1], removePath = bestPath[diagonalPath + 1], _oldPos = (removePath ? removePath.newPos : 0) - diagonalPath; + if (addPath) { + bestPath[diagonalPath - 1] = void 0; + } + var canAdd = addPath && addPath.newPos + 1 < newLen, canRemove = removePath && 0 <= _oldPos && _oldPos < oldLen; + if (!canAdd && !canRemove) { + bestPath[diagonalPath] = void 0; + continue; + } + if (!canAdd || canRemove && addPath.newPos < removePath.newPos) { + basePath = clonePath(removePath); + self2.pushComponent(basePath.components, void 0, true); + } else { + basePath = addPath; + basePath.newPos++; + self2.pushComponent(basePath.components, true, void 0); + } + _oldPos = self2.extractCommon(basePath, newString, oldString, diagonalPath); + if (basePath.newPos + 1 >= newLen && _oldPos + 1 >= oldLen) { + return done(buildValues(self2, basePath.components, newString, oldString, self2.useLongestToken)); + } else { + bestPath[diagonalPath] = basePath; + } + } + editLength++; + } + if (callback) { + (function exec() { + setTimeout(function() { + if (editLength > maxEditLength) { + return callback(); + } + if (!execEditLength()) { + exec(); + } + }, 0); + })(); + } else { + while (editLength <= maxEditLength) { + var ret = execEditLength(); + if (ret) { + return ret; + } + } + } + }, + pushComponent: function pushComponent(components, added, removed) { + var last = components[components.length - 1]; + if (last && last.added === added && last.removed === removed) { + components[components.length - 1] = { + count: last.count + 1, + added, + removed + }; + } else { + components.push({ + count: 1, + added, + removed + }); + } + }, + extractCommon: function extractCommon(basePath, newString, oldString, diagonalPath) { + var newLen = newString.length, oldLen = oldString.length, newPos = basePath.newPos, oldPos = newPos - diagonalPath, commonCount = 0; + while (newPos + 1 < newLen && oldPos + 1 < oldLen && this.equals(newString[newPos + 1], oldString[oldPos + 1])) { + newPos++; + oldPos++; + commonCount++; + } + if (commonCount) { + basePath.components.push({ + count: commonCount + }); + } + basePath.newPos = newPos; + return oldPos; + }, + equals: function equals(left, right) { + if (this.options.comparator) { + return this.options.comparator(left, right); + } else { + return left === right || this.options.ignoreCase && left.toLowerCase() === right.toLowerCase(); + } + }, + removeEmpty: function removeEmpty(array) { + var ret = []; + for (var i = 0; i < array.length; i++) { + if (array[i]) { + ret.push(array[i]); + } + } + return ret; + }, + castInput: function castInput(value) { + return value; + }, + tokenize: function tokenize(value) { + return value.split(""); + }, + join: function join(chars) { + return chars.join(""); + } + }; + function buildValues(diff, components, newString, oldString, useLongestToken) { + var componentPos = 0, componentLen = components.length, newPos = 0, oldPos = 0; + for (; componentPos < componentLen; componentPos++) { + var component = components[componentPos]; + if (!component.removed) { + if (!component.added && useLongestToken) { + var value = newString.slice(newPos, newPos + component.count); + value = value.map(function(value2, i) { + var oldValue = oldString[oldPos + i]; + return oldValue.length > value2.length ? oldValue : value2; + }); + component.value = diff.join(value); + } else { + component.value = diff.join(newString.slice(newPos, newPos + component.count)); + } + newPos += component.count; + if (!component.added) { + oldPos += component.count; + } + } else { + component.value = diff.join(oldString.slice(oldPos, oldPos + component.count)); + oldPos += component.count; + if (componentPos && components[componentPos - 1].added) { + var tmp = components[componentPos - 1]; + components[componentPos - 1] = components[componentPos]; + components[componentPos] = tmp; + } + } + } + var lastComponent = components[componentLen - 1]; + if (componentLen > 1 && typeof lastComponent.value === "string" && (lastComponent.added || lastComponent.removed) && diff.equals("", lastComponent.value)) { + components[componentLen - 2].value += lastComponent.value; + components.pop(); + } + return components; + } + function clonePath(path) { + return { + newPos: path.newPos, + components: path.components.slice(0) + }; + } + } +}); +var require_array = __commonJS2({ + "node_modules/diff/lib/diff/array.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.diffArrays = diffArrays; + exports2.arrayDiff = void 0; + var _base = _interopRequireDefault(require_base()); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + "default": obj + }; + } + var arrayDiff = new _base["default"](); + exports2.arrayDiff = arrayDiff; + arrayDiff.tokenize = function(value) { + return value.slice(); + }; + arrayDiff.join = arrayDiff.removeEmpty = function(value) { + return value; + }; + function diffArrays(oldArr, newArr, callback) { + return arrayDiff.diff(oldArr, newArr, callback); + } + } +}); +var escape_string_regexp_exports = {}; +__export(escape_string_regexp_exports, { + default: () => escapeStringRegexp +}); +function escapeStringRegexp(string) { + if (typeof string !== "string") { + throw new TypeError("Expected a string"); + } + return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d"); +} +var init_escape_string_regexp = __esm({ + "node_modules/escape-string-regexp/index.js"() { + } +}); +var require_get_last = __commonJS2({ + "src/utils/get-last.js"(exports2, module2) { + "use strict"; + var getLast = (arr) => arr[arr.length - 1]; + module2.exports = getLast; + } +}); +var require_debug = __commonJS2({ + "node_modules/semver/internal/debug.js"(exports2, module2) { + var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => { + }; + module2.exports = debug; + } +}); +var require_constants = __commonJS2({ + "node_modules/semver/internal/constants.js"(exports2, module2) { + var SEMVER_SPEC_VERSION = "2.0.0"; + var MAX_LENGTH = 256; + var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991; + var MAX_SAFE_COMPONENT_LENGTH = 16; + module2.exports = { + SEMVER_SPEC_VERSION, + MAX_LENGTH, + MAX_SAFE_INTEGER, + MAX_SAFE_COMPONENT_LENGTH + }; + } +}); +var require_re = __commonJS2({ + "node_modules/semver/internal/re.js"(exports2, module2) { + var { + MAX_SAFE_COMPONENT_LENGTH + } = require_constants(); + var debug = require_debug(); + exports2 = module2.exports = {}; + var re = exports2.re = []; + var src = exports2.src = []; + var t = exports2.t = {}; + var R = 0; + var createToken = (name, value, isGlobal) => { + const index = R++; + debug(name, index, value); + t[name] = index; + src[index] = value; + re[index] = new RegExp(value, isGlobal ? "g" : void 0); + }; + createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*"); + createToken("NUMERICIDENTIFIERLOOSE", "[0-9]+"); + createToken("NONNUMERICIDENTIFIER", "\\d*[a-zA-Z-][a-zA-Z0-9-]*"); + createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`); + createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`); + createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NUMERICIDENTIFIER]}|${src[t.NONNUMERICIDENTIFIER]})`); + createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NUMERICIDENTIFIERLOOSE]}|${src[t.NONNUMERICIDENTIFIER]})`); + createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`); + createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`); + createToken("BUILDIDENTIFIER", "[0-9A-Za-z-]+"); + createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`); + createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`); + createToken("FULL", `^${src[t.FULLPLAIN]}$`); + createToken("LOOSEPLAIN", `[v=\\s]*${src[t.MAINVERSIONLOOSE]}${src[t.PRERELEASELOOSE]}?${src[t.BUILD]}?`); + createToken("LOOSE", `^${src[t.LOOSEPLAIN]}$`); + createToken("GTLT", "((?:<|>)?=?)"); + createToken("XRANGEIDENTIFIERLOOSE", `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`); + createToken("XRANGEIDENTIFIER", `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`); + createToken("XRANGEPLAIN", `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:\\.(${src[t.XRANGEIDENTIFIER]})(?:${src[t.PRERELEASE]})?${src[t.BUILD]}?)?)?`); + createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})(?:${src[t.PRERELEASELOOSE]})?${src[t.BUILD]}?)?)?`); + createToken("XRANGE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`); + createToken("XRANGELOOSE", `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`); + createToken("COERCE", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:$|[^\\d])`); + createToken("COERCERTL", src[t.COERCE], true); + createToken("LONETILDE", "(?:~>?)"); + createToken("TILDETRIM", `(\\s*)${src[t.LONETILDE]}\\s+`, true); + exports2.tildeTrimReplace = "$1~"; + createToken("TILDE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`); + createToken("TILDELOOSE", `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`); + createToken("LONECARET", "(?:\\^)"); + createToken("CARETTRIM", `(\\s*)${src[t.LONECARET]}\\s+`, true); + exports2.caretTrimReplace = "$1^"; + createToken("CARET", `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`); + createToken("CARETLOOSE", `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`); + createToken("COMPARATORLOOSE", `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`); + createToken("COMPARATOR", `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`); + createToken("COMPARATORTRIM", `(\\s*)${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true); + exports2.comparatorTrimReplace = "$1$2$3"; + createToken("HYPHENRANGE", `^\\s*(${src[t.XRANGEPLAIN]})\\s+-\\s+(${src[t.XRANGEPLAIN]})\\s*$`); + createToken("HYPHENRANGELOOSE", `^\\s*(${src[t.XRANGEPLAINLOOSE]})\\s+-\\s+(${src[t.XRANGEPLAINLOOSE]})\\s*$`); + createToken("STAR", "(<|>)?=?\\s*\\*"); + createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$"); + createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$"); + } +}); +var require_parse_options = __commonJS2({ + "node_modules/semver/internal/parse-options.js"(exports2, module2) { + var opts = ["includePrerelease", "loose", "rtl"]; + var parseOptions = (options) => !options ? {} : typeof options !== "object" ? { + loose: true + } : opts.filter((k) => options[k]).reduce((o, k) => { + o[k] = true; + return o; + }, {}); + module2.exports = parseOptions; + } +}); +var require_identifiers = __commonJS2({ + "node_modules/semver/internal/identifiers.js"(exports2, module2) { + var numeric = /^[0-9]+$/; + var compareIdentifiers = (a, b) => { + const anum = numeric.test(a); + const bnum = numeric.test(b); + if (anum && bnum) { + a = +a; + b = +b; + } + return a === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a < b ? -1 : 1; + }; + var rcompareIdentifiers = (a, b) => compareIdentifiers(b, a); + module2.exports = { + compareIdentifiers, + rcompareIdentifiers + }; + } +}); +var require_semver = __commonJS2({ + "node_modules/semver/classes/semver.js"(exports2, module2) { + var debug = require_debug(); + var { + MAX_LENGTH, + MAX_SAFE_INTEGER + } = require_constants(); + var { + re, + t + } = require_re(); + var parseOptions = require_parse_options(); + var { + compareIdentifiers + } = require_identifiers(); + var SemVer = class { + constructor(version2, options) { + options = parseOptions(options); + if (version2 instanceof SemVer) { + if (version2.loose === !!options.loose && version2.includePrerelease === !!options.includePrerelease) { + return version2; + } else { + version2 = version2.version; + } + } else if (typeof version2 !== "string") { + throw new TypeError(`Invalid Version: ${version2}`); + } + if (version2.length > MAX_LENGTH) { + throw new TypeError(`version is longer than ${MAX_LENGTH} characters`); + } + debug("SemVer", version2, options); + this.options = options; + this.loose = !!options.loose; + this.includePrerelease = !!options.includePrerelease; + const m = version2.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]); + if (!m) { + throw new TypeError(`Invalid Version: ${version2}`); + } + this.raw = version2; + this.major = +m[1]; + this.minor = +m[2]; + this.patch = +m[3]; + if (this.major > MAX_SAFE_INTEGER || this.major < 0) { + throw new TypeError("Invalid major version"); + } + if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { + throw new TypeError("Invalid minor version"); + } + if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { + throw new TypeError("Invalid patch version"); + } + if (!m[4]) { + this.prerelease = []; + } else { + this.prerelease = m[4].split(".").map((id) => { + if (/^[0-9]+$/.test(id)) { + const num = +id; + if (num >= 0 && num < MAX_SAFE_INTEGER) { + return num; + } + } + return id; + }); + } + this.build = m[5] ? m[5].split(".") : []; + this.format(); + } + format() { + this.version = `${this.major}.${this.minor}.${this.patch}`; + if (this.prerelease.length) { + this.version += `-${this.prerelease.join(".")}`; + } + return this.version; + } + toString() { + return this.version; + } + compare(other) { + debug("SemVer.compare", this.version, this.options, other); + if (!(other instanceof SemVer)) { + if (typeof other === "string" && other === this.version) { + return 0; + } + other = new SemVer(other, this.options); + } + if (other.version === this.version) { + return 0; + } + return this.compareMain(other) || this.comparePre(other); + } + compareMain(other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options); + } + return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch); + } + comparePre(other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options); + } + if (this.prerelease.length && !other.prerelease.length) { + return -1; + } else if (!this.prerelease.length && other.prerelease.length) { + return 1; + } else if (!this.prerelease.length && !other.prerelease.length) { + return 0; + } + let i = 0; + do { + const a = this.prerelease[i]; + const b = other.prerelease[i]; + debug("prerelease compare", i, a, b); + if (a === void 0 && b === void 0) { + return 0; + } else if (b === void 0) { + return 1; + } else if (a === void 0) { + return -1; + } else if (a === b) { + continue; + } else { + return compareIdentifiers(a, b); + } + } while (++i); + } + compareBuild(other) { + if (!(other instanceof SemVer)) { + other = new SemVer(other, this.options); + } + let i = 0; + do { + const a = this.build[i]; + const b = other.build[i]; + debug("prerelease compare", i, a, b); + if (a === void 0 && b === void 0) { + return 0; + } else if (b === void 0) { + return 1; + } else if (a === void 0) { + return -1; + } else if (a === b) { + continue; + } else { + return compareIdentifiers(a, b); + } + } while (++i); + } + inc(release, identifier) { + switch (release) { + case "premajor": + this.prerelease.length = 0; + this.patch = 0; + this.minor = 0; + this.major++; + this.inc("pre", identifier); + break; + case "preminor": + this.prerelease.length = 0; + this.patch = 0; + this.minor++; + this.inc("pre", identifier); + break; + case "prepatch": + this.prerelease.length = 0; + this.inc("patch", identifier); + this.inc("pre", identifier); + break; + case "prerelease": + if (this.prerelease.length === 0) { + this.inc("patch", identifier); + } + this.inc("pre", identifier); + break; + case "major": + if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) { + this.major++; + } + this.minor = 0; + this.patch = 0; + this.prerelease = []; + break; + case "minor": + if (this.patch !== 0 || this.prerelease.length === 0) { + this.minor++; + } + this.patch = 0; + this.prerelease = []; + break; + case "patch": + if (this.prerelease.length === 0) { + this.patch++; + } + this.prerelease = []; + break; + case "pre": + if (this.prerelease.length === 0) { + this.prerelease = [0]; + } else { + let i = this.prerelease.length; + while (--i >= 0) { + if (typeof this.prerelease[i] === "number") { + this.prerelease[i]++; + i = -2; + } + } + if (i === -1) { + this.prerelease.push(0); + } + } + if (identifier) { + if (compareIdentifiers(this.prerelease[0], identifier) === 0) { + if (isNaN(this.prerelease[1])) { + this.prerelease = [identifier, 0]; + } + } else { + this.prerelease = [identifier, 0]; + } + } + break; + default: + throw new Error(`invalid increment argument: ${release}`); + } + this.format(); + this.raw = this.version; + return this; + } + }; + module2.exports = SemVer; + } +}); +var require_compare = __commonJS2({ + "node_modules/semver/functions/compare.js"(exports2, module2) { + var SemVer = require_semver(); + var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose)); + module2.exports = compare; + } +}); +var require_lt = __commonJS2({ + "node_modules/semver/functions/lt.js"(exports2, module2) { + var compare = require_compare(); + var lt = (a, b, loose) => compare(a, b, loose) < 0; + module2.exports = lt; + } +}); +var require_gte = __commonJS2({ + "node_modules/semver/functions/gte.js"(exports2, module2) { + var compare = require_compare(); + var gte = (a, b, loose) => compare(a, b, loose) >= 0; + module2.exports = gte; + } +}); +var require_arrayify = __commonJS2({ + "src/utils/arrayify.js"(exports2, module2) { + "use strict"; + module2.exports = (object, keyName) => Object.entries(object).map(([key, value]) => Object.assign({ + [keyName]: key + }, value)); + } +}); +var require_lib = __commonJS2({ + "node_modules/outdent/lib/index.js"(exports2, module2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.outdent = void 0; + function noop() { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + } + function createWeakMap() { + if (typeof WeakMap !== "undefined") { + return /* @__PURE__ */ new WeakMap(); + } else { + return fakeSetOrMap(); + } + } + function fakeSetOrMap() { + return { + add: noop, + delete: noop, + get: noop, + set: noop, + has: function(k) { + return false; + } + }; + } + var hop = Object.prototype.hasOwnProperty; + var has = function(obj, prop) { + return hop.call(obj, prop); + }; + function extend(target, source) { + for (var prop in source) { + if (has(source, prop)) { + target[prop] = source[prop]; + } + } + return target; + } + var reLeadingNewline = /^[ \t]*(?:\r\n|\r|\n)/; + var reTrailingNewline = /(?:\r\n|\r|\n)[ \t]*$/; + var reStartsWithNewlineOrIsEmpty = /^(?:[\r\n]|$)/; + var reDetectIndentation = /(?:\r\n|\r|\n)([ \t]*)(?:[^ \t\r\n]|$)/; + var reOnlyWhitespaceWithAtLeastOneNewline = /^[ \t]*[\r\n][ \t\r\n]*$/; + function _outdentArray(strings, firstInterpolatedValueSetsIndentationLevel, options) { + var indentationLevel = 0; + var match = strings[0].match(reDetectIndentation); + if (match) { + indentationLevel = match[1].length; + } + var reSource = "(\\r\\n|\\r|\\n).{0," + indentationLevel + "}"; + var reMatchIndent = new RegExp(reSource, "g"); + if (firstInterpolatedValueSetsIndentationLevel) { + strings = strings.slice(1); + } + var newline = options.newline, trimLeadingNewline = options.trimLeadingNewline, trimTrailingNewline = options.trimTrailingNewline; + var normalizeNewlines = typeof newline === "string"; + var l = strings.length; + var outdentedStrings = strings.map(function(v, i) { + v = v.replace(reMatchIndent, "$1"); + if (i === 0 && trimLeadingNewline) { + v = v.replace(reLeadingNewline, ""); + } + if (i === l - 1 && trimTrailingNewline) { + v = v.replace(reTrailingNewline, ""); + } + if (normalizeNewlines) { + v = v.replace(/\r\n|\n|\r/g, function(_) { + return newline; + }); + } + return v; + }); + return outdentedStrings; + } + function concatStringsAndValues(strings, values) { + var ret = ""; + for (var i = 0, l = strings.length; i < l; i++) { + ret += strings[i]; + if (i < l - 1) { + ret += values[i]; + } + } + return ret; + } + function isTemplateStringsArray(v) { + return has(v, "raw") && has(v, "length"); + } + function createInstance(options) { + var arrayAutoIndentCache = createWeakMap(); + var arrayFirstInterpSetsIndentCache = createWeakMap(); + function outdent(stringsOrOptions) { + var values = []; + for (var _i = 1; _i < arguments.length; _i++) { + values[_i - 1] = arguments[_i]; + } + if (isTemplateStringsArray(stringsOrOptions)) { + var strings = stringsOrOptions; + var firstInterpolatedValueSetsIndentationLevel = (values[0] === outdent || values[0] === defaultOutdent) && reOnlyWhitespaceWithAtLeastOneNewline.test(strings[0]) && reStartsWithNewlineOrIsEmpty.test(strings[1]); + var cache = firstInterpolatedValueSetsIndentationLevel ? arrayFirstInterpSetsIndentCache : arrayAutoIndentCache; + var renderedArray = cache.get(strings); + if (!renderedArray) { + renderedArray = _outdentArray(strings, firstInterpolatedValueSetsIndentationLevel, options); + cache.set(strings, renderedArray); + } + if (values.length === 0) { + return renderedArray[0]; + } + var rendered = concatStringsAndValues(renderedArray, firstInterpolatedValueSetsIndentationLevel ? values.slice(1) : values); + return rendered; + } else { + return createInstance(extend(extend({}, options), stringsOrOptions || {})); + } + } + var fullOutdent = extend(outdent, { + string: function(str) { + return _outdentArray([str], false, options)[0]; + } + }); + return fullOutdent; + } + var defaultOutdent = createInstance({ + trimLeadingNewline: true, + trimTrailingNewline: true + }); + exports2.outdent = defaultOutdent; + exports2.default = defaultOutdent; + if (typeof module2 !== "undefined") { + try { + module2.exports = defaultOutdent; + Object.defineProperty(defaultOutdent, "__esModule", { + value: true + }); + defaultOutdent.default = defaultOutdent; + defaultOutdent.outdent = defaultOutdent; + } catch (e) { + } + } + } +}); +var require_core_options = __commonJS2({ + "src/main/core-options.js"(exports2, module2) { + "use strict"; + var { + outdent + } = require_lib(); + var CATEGORY_CONFIG = "Config"; + var CATEGORY_EDITOR = "Editor"; + var CATEGORY_FORMAT = "Format"; + var CATEGORY_OTHER = "Other"; + var CATEGORY_OUTPUT = "Output"; + var CATEGORY_GLOBAL = "Global"; + var CATEGORY_SPECIAL = "Special"; + var options = { + cursorOffset: { + since: "1.4.0", + category: CATEGORY_SPECIAL, + type: "int", + default: -1, + range: { + start: -1, + end: Number.POSITIVE_INFINITY, + step: 1 + }, + description: outdent` + Print (to stderr) where a cursor at the given position would move to after formatting. + This option cannot be used with --range-start and --range-end. + `, + cliCategory: CATEGORY_EDITOR + }, + endOfLine: { + since: "1.15.0", + category: CATEGORY_GLOBAL, + type: "choice", + default: [{ + since: "1.15.0", + value: "auto" + }, { + since: "2.0.0", + value: "lf" + }], + description: "Which end of line characters to apply.", + choices: [{ + value: "lf", + description: "Line Feed only (\\n), common on Linux and macOS as well as inside git repos" + }, { + value: "crlf", + description: "Carriage Return + Line Feed characters (\\r\\n), common on Windows" + }, { + value: "cr", + description: "Carriage Return character only (\\r), used very rarely" + }, { + value: "auto", + description: outdent` + Maintain existing + (mixed values within one file are normalised by looking at what's used after the first line) + ` + }] + }, + filepath: { + since: "1.4.0", + category: CATEGORY_SPECIAL, + type: "path", + description: "Specify the input filepath. This will be used to do parser inference.", + cliName: "stdin-filepath", + cliCategory: CATEGORY_OTHER, + cliDescription: "Path to the file to pretend that stdin comes from." + }, + insertPragma: { + since: "1.8.0", + category: CATEGORY_SPECIAL, + type: "boolean", + default: false, + description: "Insert @format pragma into file's first docblock comment.", + cliCategory: CATEGORY_OTHER + }, + parser: { + since: "0.0.10", + category: CATEGORY_GLOBAL, + type: "choice", + default: [{ + since: "0.0.10", + value: "babylon" + }, { + since: "1.13.0", + value: void 0 + }], + description: "Which parser to use.", + exception: (value) => typeof value === "string" || typeof value === "function", + choices: [{ + value: "flow", + description: "Flow" + }, { + value: "babel", + since: "1.16.0", + description: "JavaScript" + }, { + value: "babel-flow", + since: "1.16.0", + description: "Flow" + }, { + value: "babel-ts", + since: "2.0.0", + description: "TypeScript" + }, { + value: "typescript", + since: "1.4.0", + description: "TypeScript" + }, { + value: "acorn", + since: "2.6.0", + description: "JavaScript" + }, { + value: "espree", + since: "2.2.0", + description: "JavaScript" + }, { + value: "meriyah", + since: "2.2.0", + description: "JavaScript" + }, { + value: "css", + since: "1.7.1", + description: "CSS" + }, { + value: "less", + since: "1.7.1", + description: "Less" + }, { + value: "scss", + since: "1.7.1", + description: "SCSS" + }, { + value: "json", + since: "1.5.0", + description: "JSON" + }, { + value: "json5", + since: "1.13.0", + description: "JSON5" + }, { + value: "json-stringify", + since: "1.13.0", + description: "JSON.stringify" + }, { + value: "graphql", + since: "1.5.0", + description: "GraphQL" + }, { + value: "markdown", + since: "1.8.0", + description: "Markdown" + }, { + value: "mdx", + since: "1.15.0", + description: "MDX" + }, { + value: "vue", + since: "1.10.0", + description: "Vue" + }, { + value: "yaml", + since: "1.14.0", + description: "YAML" + }, { + value: "glimmer", + since: "2.3.0", + description: "Ember / Handlebars" + }, { + value: "html", + since: "1.15.0", + description: "HTML" + }, { + value: "angular", + since: "1.15.0", + description: "Angular" + }, { + value: "lwc", + since: "1.17.0", + description: "Lightning Web Components" + }] + }, + plugins: { + since: "1.10.0", + type: "path", + array: true, + default: [{ + value: [] + }], + category: CATEGORY_GLOBAL, + description: "Add a plugin. Multiple plugins can be passed as separate `--plugin`s.", + exception: (value) => typeof value === "string" || typeof value === "object", + cliName: "plugin", + cliCategory: CATEGORY_CONFIG + }, + pluginSearchDirs: { + since: "1.13.0", + type: "path", + array: true, + default: [{ + value: [] + }], + category: CATEGORY_GLOBAL, + description: outdent` + Custom directory that contains prettier plugins in node_modules subdirectory. + Overrides default behavior when plugins are searched relatively to the location of Prettier. + Multiple values are accepted. + `, + exception: (value) => typeof value === "string" || typeof value === "object", + cliName: "plugin-search-dir", + cliCategory: CATEGORY_CONFIG + }, + printWidth: { + since: "0.0.0", + category: CATEGORY_GLOBAL, + type: "int", + default: 80, + description: "The line length where Prettier will try wrap.", + range: { + start: 0, + end: Number.POSITIVE_INFINITY, + step: 1 + } + }, + rangeEnd: { + since: "1.4.0", + category: CATEGORY_SPECIAL, + type: "int", + default: Number.POSITIVE_INFINITY, + range: { + start: 0, + end: Number.POSITIVE_INFINITY, + step: 1 + }, + description: outdent` + Format code ending at a given character offset (exclusive). + The range will extend forwards to the end of the selected statement. + This option cannot be used with --cursor-offset. + `, + cliCategory: CATEGORY_EDITOR + }, + rangeStart: { + since: "1.4.0", + category: CATEGORY_SPECIAL, + type: "int", + default: 0, + range: { + start: 0, + end: Number.POSITIVE_INFINITY, + step: 1 + }, + description: outdent` + Format code starting at a given character offset. + The range will extend backwards to the start of the first line containing the selected statement. + This option cannot be used with --cursor-offset. + `, + cliCategory: CATEGORY_EDITOR + }, + requirePragma: { + since: "1.7.0", + category: CATEGORY_SPECIAL, + type: "boolean", + default: false, + description: outdent` + Require either '@prettier' or '@format' to be present in the file's first docblock comment + in order for it to be formatted. + `, + cliCategory: CATEGORY_OTHER + }, + tabWidth: { + type: "int", + category: CATEGORY_GLOBAL, + default: 2, + description: "Number of spaces per indentation level.", + range: { + start: 0, + end: Number.POSITIVE_INFINITY, + step: 1 + } + }, + useTabs: { + since: "1.0.0", + category: CATEGORY_GLOBAL, + type: "boolean", + default: false, + description: "Indent with tabs instead of spaces." + }, + embeddedLanguageFormatting: { + since: "2.1.0", + category: CATEGORY_GLOBAL, + type: "choice", + default: [{ + since: "2.1.0", + value: "auto" + }], + description: "Control how Prettier formats quoted code embedded in the file.", + choices: [{ + value: "auto", + description: "Format embedded code if Prettier can automatically identify it." + }, { + value: "off", + description: "Never automatically format embedded code." + }] + } + }; + module2.exports = { + CATEGORY_CONFIG, + CATEGORY_EDITOR, + CATEGORY_FORMAT, + CATEGORY_OTHER, + CATEGORY_OUTPUT, + CATEGORY_GLOBAL, + CATEGORY_SPECIAL, + options + }; + } +}); +var require_support = __commonJS2({ + "src/main/support.js"(exports2, module2) { + "use strict"; + var semver = { + compare: require_compare(), + lt: require_lt(), + gte: require_gte() + }; + var arrayify = require_arrayify(); + var currentVersion = require("./package.json").version; + var coreOptions = require_core_options().options; + function getSupportInfo2({ + plugins: plugins2 = [], + showUnreleased = false, + showDeprecated = false, + showInternal = false + } = {}) { + const version2 = currentVersion.split("-", 1)[0]; + const languages = plugins2.flatMap((plugin) => plugin.languages || []).filter(filterSince); + const options = arrayify(Object.assign({}, ...plugins2.map(({ + options: options2 + }) => options2), coreOptions), "name").filter((option) => filterSince(option) && filterDeprecated(option)).sort((a, b) => a.name === b.name ? 0 : a.name < b.name ? -1 : 1).map(mapInternal).map((option) => { + option = Object.assign({}, option); + if (Array.isArray(option.default)) { + option.default = option.default.length === 1 ? option.default[0].value : option.default.filter(filterSince).sort((info1, info2) => semver.compare(info2.since, info1.since))[0].value; + } + if (Array.isArray(option.choices)) { + option.choices = option.choices.filter((option2) => filterSince(option2) && filterDeprecated(option2)); + if (option.name === "parser") { + collectParsersFromLanguages(option, languages, plugins2); + } + } + const pluginDefaults = Object.fromEntries(plugins2.filter((plugin) => plugin.defaultOptions && plugin.defaultOptions[option.name] !== void 0).map((plugin) => [plugin.name, plugin.defaultOptions[option.name]])); + return Object.assign(Object.assign({}, option), {}, { + pluginDefaults + }); + }); + return { + languages, + options + }; + function filterSince(object) { + return showUnreleased || !("since" in object) || object.since && semver.gte(version2, object.since); + } + function filterDeprecated(object) { + return showDeprecated || !("deprecated" in object) || object.deprecated && semver.lt(version2, object.deprecated); + } + function mapInternal(object) { + if (showInternal) { + return object; + } + const { + cliName, + cliCategory, + cliDescription + } = object, newObject = _objectWithoutProperties(object, _excluded); + return newObject; + } + } + function collectParsersFromLanguages(option, languages, plugins2) { + const existingValues = new Set(option.choices.map((choice) => choice.value)); + for (const language of languages) { + if (language.parsers) { + for (const value of language.parsers) { + if (!existingValues.has(value)) { + existingValues.add(value); + const plugin = plugins2.find((plugin2) => plugin2.parsers && plugin2.parsers[value]); + let description = language.name; + if (plugin && plugin.name) { + description += ` (plugin: ${plugin.name})`; + } + option.choices.push({ + value, + description + }); + } + } + } + } + } + module2.exports = { + getSupportInfo: getSupportInfo2 + }; + } +}); +var require_is_non_empty_array = __commonJS2({ + "src/utils/is-non-empty-array.js"(exports2, module2) { + "use strict"; + function isNonEmptyArray(object) { + return Array.isArray(object) && object.length > 0; + } + module2.exports = isNonEmptyArray; + } +}); +function ansiRegex({ + onlyFirst = false +} = {}) { + const pattern = ["[\\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(pattern, onlyFirst ? void 0 : "g"); +} +var init_ansi_regex = __esm({ + "node_modules/strip-ansi/node_modules/ansi-regex/index.js"() { + } +}); +function stripAnsi(string) { + if (typeof string !== "string") { + throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``); + } + return string.replace(ansiRegex(), ""); +} +var init_strip_ansi = __esm({ + "node_modules/strip-ansi/index.js"() { + init_ansi_regex(); + } +}); +function isFullwidthCodePoint(codePoint) { + if (!Number.isInteger(codePoint)) { + return false; + } + return codePoint >= 4352 && (codePoint <= 4447 || codePoint === 9001 || codePoint === 9002 || 11904 <= codePoint && codePoint <= 12871 && codePoint !== 12351 || 12880 <= codePoint && codePoint <= 19903 || 19968 <= codePoint && codePoint <= 42182 || 43360 <= codePoint && codePoint <= 43388 || 44032 <= codePoint && codePoint <= 55203 || 63744 <= codePoint && codePoint <= 64255 || 65040 <= codePoint && codePoint <= 65049 || 65072 <= codePoint && codePoint <= 65131 || 65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510 || 110592 <= codePoint && codePoint <= 110593 || 127488 <= codePoint && codePoint <= 127569 || 131072 <= codePoint && codePoint <= 262141); +} +var init_is_fullwidth_code_point = __esm({ + "node_modules/is-fullwidth-code-point/index.js"() { + } +}); +var require_emoji_regex = __commonJS2({ + "node_modules/emoji-regex/index.js"(exports2, module2) { + "use strict"; + module2.exports = function() { + return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\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])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\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\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\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-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*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\u26A7\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-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\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[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g; + }; + } +}); +var string_width_exports = {}; +__export(string_width_exports, { + default: () => stringWidth +}); +function stringWidth(string) { + if (typeof string !== "string" || string.length === 0) { + return 0; + } + string = stripAnsi(string); + if (string.length === 0) { + return 0; + } + string = string.replace((0, import_emoji_regex.default)(), " "); + let width = 0; + for (let index = 0; index < string.length; index++) { + const codePoint = string.codePointAt(index); + if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) { + continue; + } + if (codePoint >= 768 && codePoint <= 879) { + continue; + } + if (codePoint > 65535) { + index++; + } + width += isFullwidthCodePoint(codePoint) ? 2 : 1; + } + return width; +} +var import_emoji_regex; +var init_string_width = __esm({ + "node_modules/string-width/index.js"() { + init_strip_ansi(); + init_is_fullwidth_code_point(); + import_emoji_regex = __toESM(require_emoji_regex()); + } +}); +var require_get_string_width = __commonJS2({ + "src/utils/get-string-width.js"(exports2, module2) { + "use strict"; + var stringWidth2 = (init_string_width(), __toCommonJS(string_width_exports)).default; + var notAsciiRegex = /[^\x20-\x7F]/; + function getStringWidth(text) { + if (!text) { + return 0; + } + if (!notAsciiRegex.test(text)) { + return text.length; + } + return stringWidth2(text); + } + module2.exports = getStringWidth; + } +}); +var require_skip = __commonJS2({ + "src/utils/text/skip.js"(exports2, module2) { + "use strict"; + function skip(chars) { + return (text, index, opts) => { + const backwards = opts && opts.backwards; + if (index === false) { + return false; + } + const { + length + } = text; + let cursor = index; + while (cursor >= 0 && cursor < length) { + const c = text.charAt(cursor); + if (chars instanceof RegExp) { + if (!chars.test(c)) { + return cursor; + } + } else if (!chars.includes(c)) { + return cursor; + } + backwards ? cursor-- : cursor++; + } + if (cursor === -1 || cursor === length) { + return cursor; + } + return false; + }; + } + var skipWhitespace = skip(/\s/); + var skipSpaces = skip(" "); + var skipToLineEnd = skip(",; "); + var skipEverythingButNewLine = skip(/[^\n\r]/); + module2.exports = { + skipWhitespace, + skipSpaces, + skipToLineEnd, + skipEverythingButNewLine + }; + } +}); +var require_skip_inline_comment = __commonJS2({ + "src/utils/text/skip-inline-comment.js"(exports2, module2) { + "use strict"; + function skipInlineComment(text, index) { + if (index === false) { + return false; + } + if (text.charAt(index) === "/" && text.charAt(index + 1) === "*") { + for (let i = index + 2; i < text.length; ++i) { + if (text.charAt(i) === "*" && text.charAt(i + 1) === "/") { + return i + 2; + } + } + } + return index; + } + module2.exports = skipInlineComment; + } +}); +var require_skip_trailing_comment = __commonJS2({ + "src/utils/text/skip-trailing-comment.js"(exports2, module2) { + "use strict"; + var { + skipEverythingButNewLine + } = require_skip(); + function skipTrailingComment(text, index) { + if (index === false) { + return false; + } + if (text.charAt(index) === "/" && text.charAt(index + 1) === "/") { + return skipEverythingButNewLine(text, index); + } + return index; + } + module2.exports = skipTrailingComment; + } +}); +var require_skip_newline = __commonJS2({ + "src/utils/text/skip-newline.js"(exports2, module2) { + "use strict"; + function skipNewline(text, index, opts) { + const backwards = opts && opts.backwards; + if (index === false) { + return false; + } + const atIndex = text.charAt(index); + if (backwards) { + if (text.charAt(index - 1) === "\r" && atIndex === "\n") { + return index - 2; + } + if (atIndex === "\n" || atIndex === "\r" || atIndex === "\u2028" || atIndex === "\u2029") { + return index - 1; + } + } else { + if (atIndex === "\r" && text.charAt(index + 1) === "\n") { + return index + 2; + } + if (atIndex === "\n" || atIndex === "\r" || atIndex === "\u2028" || atIndex === "\u2029") { + return index + 1; + } + } + return index; + } + module2.exports = skipNewline; + } +}); +var require_get_next_non_space_non_comment_character_index_with_start_index = __commonJS2({ + "src/utils/text/get-next-non-space-non-comment-character-index-with-start-index.js"(exports2, module2) { + "use strict"; + var skipInlineComment = require_skip_inline_comment(); + var skipNewline = require_skip_newline(); + var skipTrailingComment = require_skip_trailing_comment(); + var { + skipSpaces + } = require_skip(); + function getNextNonSpaceNonCommentCharacterIndexWithStartIndex(text, idx) { + let oldIdx = null; + let nextIdx = idx; + while (nextIdx !== oldIdx) { + oldIdx = nextIdx; + nextIdx = skipSpaces(text, nextIdx); + nextIdx = skipInlineComment(text, nextIdx); + nextIdx = skipTrailingComment(text, nextIdx); + nextIdx = skipNewline(text, nextIdx); + } + return nextIdx; + } + module2.exports = getNextNonSpaceNonCommentCharacterIndexWithStartIndex; + } +}); +var require_util = __commonJS2({ + "src/common/util.js"(exports2, module2) { + "use strict"; + var { + default: escapeStringRegexp2 + } = (init_escape_string_regexp(), __toCommonJS(escape_string_regexp_exports)); + var getLast = require_get_last(); + var { + getSupportInfo: getSupportInfo2 + } = require_support(); + var isNonEmptyArray = require_is_non_empty_array(); + var getStringWidth = require_get_string_width(); + var { + skipWhitespace, + skipSpaces, + skipToLineEnd, + skipEverythingButNewLine + } = require_skip(); + var skipInlineComment = require_skip_inline_comment(); + var skipTrailingComment = require_skip_trailing_comment(); + var skipNewline = require_skip_newline(); + var getNextNonSpaceNonCommentCharacterIndexWithStartIndex = require_get_next_non_space_non_comment_character_index_with_start_index(); + var getPenultimate = (arr) => arr[arr.length - 2]; + function skip(chars) { + return (text, index, opts) => { + const backwards = opts && opts.backwards; + if (index === false) { + return false; + } + const { + length + } = text; + let cursor = index; + while (cursor >= 0 && cursor < length) { + const c = text.charAt(cursor); + if (chars instanceof RegExp) { + if (!chars.test(c)) { + return cursor; + } + } else if (!chars.includes(c)) { + return cursor; + } + backwards ? cursor-- : cursor++; + } + if (cursor === -1 || cursor === length) { + return cursor; + } + return false; + }; + } + function hasNewline(text, index, opts = {}) { + const idx = skipSpaces(text, opts.backwards ? index - 1 : index, opts); + const idx2 = skipNewline(text, idx, opts); + return idx !== idx2; + } + function hasNewlineInRange(text, start, end) { + for (let i = start; i < end; ++i) { + if (text.charAt(i) === "\n") { + return true; + } + } + return false; + } + function isPreviousLineEmpty(text, node, locStart) { + let idx = locStart(node) - 1; + idx = skipSpaces(text, idx, { + backwards: true + }); + idx = skipNewline(text, idx, { + backwards: true + }); + idx = skipSpaces(text, idx, { + backwards: true + }); + const idx2 = skipNewline(text, idx, { + backwards: true + }); + return idx !== idx2; + } + function isNextLineEmptyAfterIndex(text, index) { + let oldIdx = null; + let idx = index; + while (idx !== oldIdx) { + oldIdx = idx; + idx = skipToLineEnd(text, idx); + idx = skipInlineComment(text, idx); + idx = skipSpaces(text, idx); + } + idx = skipTrailingComment(text, idx); + idx = skipNewline(text, idx); + return idx !== false && hasNewline(text, idx); + } + function isNextLineEmpty(text, node, locEnd) { + return isNextLineEmptyAfterIndex(text, locEnd(node)); + } + function getNextNonSpaceNonCommentCharacterIndex(text, node, locEnd) { + return getNextNonSpaceNonCommentCharacterIndexWithStartIndex(text, locEnd(node)); + } + function getNextNonSpaceNonCommentCharacter(text, node, locEnd) { + return text.charAt(getNextNonSpaceNonCommentCharacterIndex(text, node, locEnd)); + } + function hasSpaces(text, index, opts = {}) { + const idx = skipSpaces(text, opts.backwards ? index - 1 : index, opts); + return idx !== index; + } + function getAlignmentSize(value, tabWidth, startIndex = 0) { + let size = 0; + for (let i = startIndex; i < value.length; ++i) { + if (value[i] === " ") { + size = size + tabWidth - size % tabWidth; + } else { + size++; + } + } + return size; + } + function getIndentSize(value, tabWidth) { + const lastNewlineIndex = value.lastIndexOf("\n"); + if (lastNewlineIndex === -1) { + return 0; + } + return getAlignmentSize(value.slice(lastNewlineIndex + 1).match(/^[\t ]*/)[0], tabWidth); + } + function getPreferredQuote(rawContent, preferredQuote) { + const double = { + quote: '"', + regex: /"/g, + escaped: """ + }; + const single = { + quote: "'", + regex: /'/g, + escaped: "'" + }; + const preferred = preferredQuote === "'" ? single : double; + const alternate = preferred === single ? double : single; + let result = preferred; + if (rawContent.includes(preferred.quote) || rawContent.includes(alternate.quote)) { + const numPreferredQuotes = (rawContent.match(preferred.regex) || []).length; + const numAlternateQuotes = (rawContent.match(alternate.regex) || []).length; + result = numPreferredQuotes > numAlternateQuotes ? alternate : preferred; + } + return result; + } + function printString(raw, options) { + const rawContent = raw.slice(1, -1); + const enclosingQuote = options.parser === "json" || options.parser === "json5" && options.quoteProps === "preserve" && !options.singleQuote ? '"' : options.__isInHtmlAttribute ? "'" : getPreferredQuote(rawContent, options.singleQuote ? "'" : '"').quote; + return makeString(rawContent, enclosingQuote, !(options.parser === "css" || options.parser === "less" || options.parser === "scss" || options.__embeddedInHtml)); + } + function makeString(rawContent, enclosingQuote, unescapeUnnecessaryEscapes) { + const otherQuote = enclosingQuote === '"' ? "'" : '"'; + const regex = /\\(.)|(["'])/gs; + const newContent = rawContent.replace(regex, (match, escaped, quote) => { + if (escaped === otherQuote) { + return escaped; + } + if (quote === enclosingQuote) { + return "\\" + quote; + } + if (quote) { + return quote; + } + return unescapeUnnecessaryEscapes && /^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(escaped) ? escaped : "\\" + escaped; + }); + return enclosingQuote + newContent + enclosingQuote; + } + function printNumber(rawNumber) { + return rawNumber.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(\d)/, "$1$2$3").replace(/^([+-]?[\d.]+)e[+-]?0+$/, "$1").replace(/^([+-])?\./, "$10.").replace(/(\.\d+?)0+(?=e|$)/, "$1").replace(/\.(?=e|$)/, ""); + } + function getMaxContinuousCount(str, target) { + const results = str.match(new RegExp(`(${escapeStringRegexp2(target)})+`, "g")); + if (results === null) { + return 0; + } + return results.reduce((maxCount, result) => Math.max(maxCount, result.length / target.length), 0); + } + function getMinNotPresentContinuousCount(str, target) { + const matches = str.match(new RegExp(`(${escapeStringRegexp2(target)})+`, "g")); + if (matches === null) { + return 0; + } + const countPresent = /* @__PURE__ */ new Map(); + let max = 0; + for (const match of matches) { + const count = match.length / target.length; + countPresent.set(count, true); + if (count > max) { + max = count; + } + } + for (let i = 1; i < max; i++) { + if (!countPresent.get(i)) { + return i; + } + } + return max + 1; + } + function addCommentHelper(node, comment) { + const comments = node.comments || (node.comments = []); + comments.push(comment); + comment.printed = false; + comment.nodeDescription = describeNodeForDebugging(node); + } + function addLeadingComment(node, comment) { + comment.leading = true; + comment.trailing = false; + addCommentHelper(node, comment); + } + function addDanglingComment(node, comment, marker) { + comment.leading = false; + comment.trailing = false; + if (marker) { + comment.marker = marker; + } + addCommentHelper(node, comment); + } + function addTrailingComment(node, comment) { + comment.leading = false; + comment.trailing = true; + addCommentHelper(node, comment); + } + function inferParserByLanguage(language, options) { + const { + languages + } = getSupportInfo2({ + plugins: options.plugins + }); + const matched = languages.find(({ + name + }) => name.toLowerCase() === language) || languages.find(({ + aliases + }) => Array.isArray(aliases) && aliases.includes(language)) || languages.find(({ + extensions + }) => Array.isArray(extensions) && extensions.includes(`.${language}`)); + return matched && matched.parsers[0]; + } + function isFrontMatterNode(node) { + return node && node.type === "front-matter"; + } + function createGroupIdMapper(description) { + const groupIds = /* @__PURE__ */ new WeakMap(); + return function(node) { + if (!groupIds.has(node)) { + groupIds.set(node, Symbol(description)); + } + return groupIds.get(node); + }; + } + function describeNodeForDebugging(node) { + const nodeType = node.type || node.kind || "(unknown type)"; + let nodeName = String(node.name || node.id && (typeof node.id === "object" ? node.id.name : node.id) || node.key && (typeof node.key === "object" ? node.key.name : node.key) || node.value && (typeof node.value === "object" ? "" : String(node.value)) || node.operator || ""); + if (nodeName.length > 20) { + nodeName = nodeName.slice(0, 19) + "\u2026"; + } + return nodeType + (nodeName ? " " + nodeName : ""); + } + module2.exports = { + inferParserByLanguage, + getStringWidth, + getMaxContinuousCount, + getMinNotPresentContinuousCount, + getPenultimate, + getLast, + getNextNonSpaceNonCommentCharacterIndexWithStartIndex, + getNextNonSpaceNonCommentCharacterIndex, + getNextNonSpaceNonCommentCharacter, + skip, + skipWhitespace, + skipSpaces, + skipToLineEnd, + skipEverythingButNewLine, + skipInlineComment, + skipTrailingComment, + skipNewline, + isNextLineEmptyAfterIndex, + isNextLineEmpty, + isPreviousLineEmpty, + hasNewline, + hasNewlineInRange, + hasSpaces, + getAlignmentSize, + getIndentSize, + getPreferredQuote, + printString, + printNumber, + makeString, + addLeadingComment, + addDanglingComment, + addTrailingComment, + isFrontMatterNode, + isNonEmptyArray, + createGroupIdMapper + }; + } +}); +var require_end_of_line = __commonJS2({ + "src/common/end-of-line.js"(exports2, module2) { + "use strict"; + function guessEndOfLine(text) { + const index = text.indexOf("\r"); + if (index >= 0) { + return text.charAt(index + 1) === "\n" ? "crlf" : "cr"; + } + return "lf"; + } + function convertEndOfLineToChars(value) { + switch (value) { + case "cr": + return "\r"; + case "crlf": + return "\r\n"; + default: + return "\n"; + } + } + function countEndOfLineChars(text, eol) { + let regex; + switch (eol) { + case "\n": + regex = /\n/g; + break; + case "\r": + regex = /\r/g; + break; + case "\r\n": + regex = /\r\n/g; + break; + default: + throw new Error(`Unexpected "eol" ${JSON.stringify(eol)}.`); + } + const endOfLines = text.match(regex); + return endOfLines ? endOfLines.length : 0; + } + function normalizeEndOfLine(text) { + return text.replace(/\r\n?/g, "\n"); + } + module2.exports = { + guessEndOfLine, + convertEndOfLineToChars, + countEndOfLineChars, + normalizeEndOfLine + }; + } +}); +var require_errors = __commonJS2({ + "src/common/errors.js"(exports2, module2) { + "use strict"; + var ConfigError = class extends Error { + }; + var DebugError = class extends Error { + }; + var UndefinedParserError = class extends Error { + }; + var ArgExpansionBailout = class extends Error { + }; + module2.exports = { + ConfigError, + DebugError, + UndefinedParserError, + ArgExpansionBailout + }; + } +}); +var tslib_es6_exports = {}; +__export(tslib_es6_exports, { + __assign: () => __assign, + __asyncDelegator: () => __asyncDelegator, + __asyncGenerator: () => __asyncGenerator, + __asyncValues: () => __asyncValues, + __await: () => __await, + __awaiter: () => __awaiter, + __classPrivateFieldGet: () => __classPrivateFieldGet, + __classPrivateFieldSet: () => __classPrivateFieldSet, + __createBinding: () => __createBinding, + __decorate: () => __decorate, + __exportStar: () => __exportStar, + __extends: () => __extends, + __generator: () => __generator, + __importDefault: () => __importDefault, + __importStar: () => __importStar, + __makeTemplateObject: () => __makeTemplateObject, + __metadata: () => __metadata, + __param: () => __param, + __read: () => __read, + __rest: () => __rest, + __spread: () => __spread, + __spreadArrays: () => __spreadArrays, + __values: () => __values +}); +function __extends(d, b) { + extendStatics(d, b); + function __() { + this.constructor = d; + } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); +} +function __rest(s, e) { + var t = {}; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +} +function __decorate(decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") + r = Reflect.decorate(decorators, target, key, desc); + else + for (var i = decorators.length - 1; i >= 0; i--) + if (d = decorators[i]) + r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +} +function __param(paramIndex, decorator) { + return function(target, key) { + decorator(target, key, paramIndex); + }; +} +function __metadata(metadataKey, metadataValue) { + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") + return Reflect.metadata(metadataKey, metadataValue); +} +function __awaiter(thisArg, _arguments, P, generator) { + function adopt(value) { + return value instanceof P ? value : new P(function(resolve) { + resolve(value); + }); + } + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +} +function __generator(thisArg, body) { + var _ = { + label: 0, + sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, + trys: [], + ops: [] + }, f, y, t, g; + return g = { + next: verb(0), + "throw": verb(1), + "return": verb(2) + }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { + value: op[1], + done: false + }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { + value: op[0] ? op[1] : void 0, + done: true + }; + } +} +function __createBinding(o, m, k, k2) { + if (k2 === void 0) + k2 = k; + o[k2] = m[k]; +} +function __exportStar(m, exports2) { + for (var p in m) + if (p !== "default" && !exports2.hasOwnProperty(p)) + exports2[p] = m[p]; +} +function __values(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) + return m.call(o); + if (o && typeof o.length === "number") + return { + next: function() { + if (o && i >= o.length) + o = void 0; + return { + value: o && o[i++], + done: !o + }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); +} +function __read(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) + return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) + ar.push(r.value); + } catch (error) { + e = { + error + }; + } finally { + try { + if (r && !r.done && (m = i["return"])) + m.call(i); + } finally { + if (e) + throw e.error; + } + } + return ar; +} +function __spread() { + for (var ar = [], i = 0; i < arguments.length; i++) + ar = ar.concat(__read(arguments[i])); + return ar; +} +function __spreadArrays() { + for (var s = 0, i = 0, il = arguments.length; i < il; i++) + s += arguments[i].length; + for (var r = Array(s), k = 0, i = 0; i < il; i++) + for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) + r[k] = a[j]; + return r; +} +function __await(v) { + return this instanceof __await ? (this.v = v, this) : new __await(v); +} +function __asyncGenerator(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i; + function verb(n) { + if (g[n]) + i[n] = function(v) { + return new Promise(function(a, b) { + q.push([n, v, a, b]) > 1 || resume(n, v); + }); + }; + } + function resume(n, v) { + try { + step(g[n](v)); + } catch (e) { + settle(q[0][3], e); + } + } + function step(r) { + r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); + } + function fulfill(value) { + resume("next", value); + } + function reject(value) { + resume("throw", value); + } + function settle(f, v) { + if (f(v), q.shift(), q.length) + resume(q[0][0], q[0][1]); + } +} +function __asyncDelegator(o) { + var i, p; + return i = {}, verb("next"), verb("throw", function(e) { + throw e; + }), verb("return"), i[Symbol.iterator] = function() { + return this; + }, i; + function verb(n, f) { + i[n] = o[n] ? function(v) { + return (p = !p) ? { + value: __await(o[n](v)), + done: n === "return" + } : f ? f(v) : v; + } : f; + } +} +function __asyncValues(o) { + if (!Symbol.asyncIterator) + throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() { + return this; + }, i); + function verb(n) { + i[n] = o[n] && function(v) { + return new Promise(function(resolve, reject) { + v = o[n](v), settle(resolve, reject, v.done, v.value); + }); + }; + } + function settle(resolve, reject, d, v) { + Promise.resolve(v).then(function(v2) { + resolve({ + value: v2, + done: d + }); + }, reject); + } +} +function __makeTemplateObject(cooked, raw) { + if (Object.defineProperty) { + Object.defineProperty(cooked, "raw", { + value: raw + }); + } else { + cooked.raw = raw; + } + return cooked; +} +function __importStar(mod) { + if (mod && mod.__esModule) + return mod; + var result = {}; + if (mod != null) { + for (var k in mod) + if (Object.hasOwnProperty.call(mod, k)) + result[k] = mod[k]; + } + result.default = mod; + return result; +} +function __importDefault(mod) { + return mod && mod.__esModule ? mod : { + default: mod + }; +} +function __classPrivateFieldGet(receiver, privateMap) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to get private field on non-instance"); + } + return privateMap.get(receiver); +} +function __classPrivateFieldSet(receiver, privateMap, value) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to set private field on non-instance"); + } + privateMap.set(receiver, value); + return value; +} +var extendStatics; +var __assign; +var init_tslib_es6 = __esm({ + "node_modules/tslib/tslib.es6.js"() { + extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || { + __proto__: [] + } instanceof Array && function(d2, b2) { + d2.__proto__ = b2; + } || function(d2, b2) { + for (var p in b2) + if (b2.hasOwnProperty(p)) + d2[p] = b2[p]; + }; + return extendStatics(d, b); + }; + __assign = function() { + __assign = Object.assign || function __assign2(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) + if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); + }; + } +}); +var require_api = __commonJS2({ + "node_modules/vnopts/lib/descriptors/api.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.apiDescriptor = { + key: (key) => /^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(key) ? key : JSON.stringify(key), + value(value) { + if (value === null || typeof value !== "object") { + return JSON.stringify(value); + } + if (Array.isArray(value)) { + return `[${value.map((subValue) => exports2.apiDescriptor.value(subValue)).join(", ")}]`; + } + const keys = Object.keys(value); + return keys.length === 0 ? "{}" : `{ ${keys.map((key) => `${exports2.apiDescriptor.key(key)}: ${exports2.apiDescriptor.value(value[key])}`).join(", ")} }`; + }, + pair: ({ + key, + value + }) => exports2.apiDescriptor.value({ + [key]: value + }) + }; + } +}); +var require_descriptors2 = __commonJS2({ + "node_modules/vnopts/lib/descriptors/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_api(), exports2); + } +}); +var require_escape_string_regexp = __commonJS2({ + "node_modules/vnopts/node_modules/escape-string-regexp/index.js"(exports2, module2) { + "use strict"; + var matchOperatorsRe = /[|\\{}()[\]^$+*?.]/g; + module2.exports = function(str) { + if (typeof str !== "string") { + throw new TypeError("Expected a string"); + } + return str.replace(matchOperatorsRe, "\\$&"); + }; + } +}); +var require_color_name = __commonJS2({ + "node_modules/color-name/index.js"(exports2, module2) { + "use strict"; + module2.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 require_conversions = __commonJS2({ + "node_modules/color-convert/conversions.js"(exports2, module2) { + var cssKeywords = require_color_name(); + var reverseKeywords = {}; + for (key in cssKeywords) { + if (cssKeywords.hasOwnProperty(key)) { + reverseKeywords[cssKeywords[key]] = key; + } + } + var key; + var convert = module2.exports = { + 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"] + } + }; + for (model in convert) { + if (convert.hasOwnProperty(model)) { + if (!("channels" in convert[model])) { + throw new Error("missing channels property: " + model); + } + if (!("labels" in convert[model])) { + throw new Error("missing channel labels property: " + model); + } + if (convert[model].labels.length !== convert[model].channels) { + throw new Error("channel and label counts mismatch: " + model); + } + channels = convert[model].channels; + labels = convert[model].labels; + delete convert[model].channels; + delete convert[model].labels; + Object.defineProperty(convert[model], "channels", { + value: channels + }); + Object.defineProperty(convert[model], "labels", { + value: labels + }); + } + } + var channels; + var labels; + var model; + convert.rgb.hsl = function(rgb) { + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + var min = Math.min(r, g, b); + var max = Math.max(r, g, b); + var delta = max - min; + var h; + var s; + var l; + if (max === min) { + h = 0; + } else if (r === max) { + h = (g - b) / delta; + } else if (g === max) { + h = 2 + (b - r) / delta; + } else if (b === max) { + h = 4 + (r - g) / delta; + } + h = Math.min(h * 60, 360); + if (h < 0) { + h += 360; + } + l = (min + max) / 2; + if (max === min) { + s = 0; + } else if (l <= 0.5) { + s = delta / (max + min); + } else { + s = delta / (2 - max - min); + } + return [h, s * 100, l * 100]; + }; + convert.rgb.hsv = function(rgb) { + var rdif; + var gdif; + var bdif; + var h; + var s; + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + var v = Math.max(r, g, b); + var diff = v - Math.min(r, g, b); + var diffc = function(c) { + return (v - c) / 6 / diff + 1 / 2; + }; + if (diff === 0) { + h = s = 0; + } else { + s = diff / v; + rdif = diffc(r); + gdif = diffc(g); + bdif = diffc(b); + if (r === v) { + h = bdif - gdif; + } else if (g === v) { + h = 1 / 3 + rdif - bdif; + } else if (b === v) { + h = 2 / 3 + gdif - rdif; + } + if (h < 0) { + h += 1; + } else if (h > 1) { + h -= 1; + } + } + return [h * 360, s * 100, v * 100]; + }; + convert.rgb.hwb = function(rgb) { + var r = rgb[0]; + var g = rgb[1]; + var b = rgb[2]; + var h = convert.rgb.hsl(rgb)[0]; + var w = 1 / 255 * Math.min(r, Math.min(g, b)); + b = 1 - 1 / 255 * Math.max(r, Math.max(g, b)); + return [h, w * 100, b * 100]; + }; + convert.rgb.cmyk = function(rgb) { + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + var c; + var m; + var y; + var k; + k = Math.min(1 - r, 1 - g, 1 - b); + c = (1 - r - k) / (1 - k) || 0; + m = (1 - g - k) / (1 - k) || 0; + y = (1 - b - k) / (1 - k) || 0; + return [c * 100, m * 100, y * 100, k * 100]; + }; + function comparativeDistance(x, y) { + return Math.pow(x[0] - y[0], 2) + Math.pow(x[1] - y[1], 2) + Math.pow(x[2] - y[2], 2); + } + convert.rgb.keyword = function(rgb) { + var reversed = reverseKeywords[rgb]; + if (reversed) { + return reversed; + } + var currentClosestDistance = Infinity; + var currentClosestKeyword; + for (var keyword in cssKeywords) { + if (cssKeywords.hasOwnProperty(keyword)) { + var value = cssKeywords[keyword]; + var distance = comparativeDistance(rgb, value); + if (distance < currentClosestDistance) { + currentClosestDistance = distance; + currentClosestKeyword = keyword; + } + } + } + return currentClosestKeyword; + }; + convert.keyword.rgb = function(keyword) { + return cssKeywords[keyword]; + }; + convert.rgb.xyz = function(rgb) { + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + r = r > 0.04045 ? Math.pow((r + 0.055) / 1.055, 2.4) : r / 12.92; + g = g > 0.04045 ? Math.pow((g + 0.055) / 1.055, 2.4) : g / 12.92; + b = b > 0.04045 ? Math.pow((b + 0.055) / 1.055, 2.4) : b / 12.92; + var x = r * 0.4124 + g * 0.3576 + b * 0.1805; + var y = r * 0.2126 + g * 0.7152 + b * 0.0722; + var z = r * 0.0193 + g * 0.1192 + b * 0.9505; + return [x * 100, y * 100, z * 100]; + }; + convert.rgb.lab = function(rgb) { + var xyz = convert.rgb.xyz(rgb); + var x = xyz[0]; + var y = xyz[1]; + var z = xyz[2]; + var l; + var a; + var b; + x /= 95.047; + y /= 100; + z /= 108.883; + x = x > 8856e-6 ? Math.pow(x, 1 / 3) : 7.787 * x + 16 / 116; + y = y > 8856e-6 ? Math.pow(y, 1 / 3) : 7.787 * y + 16 / 116; + z = z > 8856e-6 ? Math.pow(z, 1 / 3) : 7.787 * z + 16 / 116; + l = 116 * y - 16; + a = 500 * (x - y); + b = 200 * (y - z); + return [l, a, b]; + }; + convert.hsl.rgb = function(hsl) { + var h = hsl[0] / 360; + var s = hsl[1] / 100; + var l = hsl[2] / 100; + var t1; + var t2; + var t3; + var rgb; + var val; + if (s === 0) { + val = l * 255; + return [val, val, val]; + } + if (l < 0.5) { + t2 = l * (1 + s); + } else { + t2 = l + s - l * s; + } + t1 = 2 * l - t2; + rgb = [0, 0, 0]; + for (var i = 0; i < 3; i++) { + t3 = h + 1 / 3 * -(i - 1); + if (t3 < 0) { + t3++; + } + if (t3 > 1) { + t3--; + } + if (6 * t3 < 1) { + val = t1 + (t2 - t1) * 6 * t3; + } else if (2 * t3 < 1) { + val = t2; + } else if (3 * t3 < 2) { + val = t1 + (t2 - t1) * (2 / 3 - t3) * 6; + } else { + val = t1; + } + rgb[i] = val * 255; + } + return rgb; + }; + convert.hsl.hsv = function(hsl) { + var h = hsl[0]; + var s = hsl[1] / 100; + var l = hsl[2] / 100; + var smin = s; + var lmin = Math.max(l, 0.01); + var sv; + var v; + l *= 2; + s *= l <= 1 ? l : 2 - l; + smin *= lmin <= 1 ? lmin : 2 - lmin; + v = (l + s) / 2; + sv = l === 0 ? 2 * smin / (lmin + smin) : 2 * s / (l + s); + return [h, sv * 100, v * 100]; + }; + convert.hsv.rgb = function(hsv) { + var h = hsv[0] / 60; + var s = hsv[1] / 100; + var v = hsv[2] / 100; + var hi = Math.floor(h) % 6; + var f = h - Math.floor(h); + var p = 255 * v * (1 - s); + var q = 255 * v * (1 - s * f); + var t = 255 * v * (1 - s * (1 - f)); + v *= 255; + switch (hi) { + case 0: + return [v, t, p]; + case 1: + return [q, v, p]; + case 2: + return [p, v, t]; + case 3: + return [p, q, v]; + case 4: + return [t, p, v]; + case 5: + return [v, p, q]; + } + }; + convert.hsv.hsl = function(hsv) { + var h = hsv[0]; + var s = hsv[1] / 100; + var v = hsv[2] / 100; + var vmin = Math.max(v, 0.01); + var lmin; + var sl; + var l; + l = (2 - s) * v; + lmin = (2 - s) * vmin; + sl = s * vmin; + sl /= lmin <= 1 ? lmin : 2 - lmin; + sl = sl || 0; + l /= 2; + return [h, sl * 100, l * 100]; + }; + convert.hwb.rgb = function(hwb) { + var h = hwb[0] / 360; + var wh = hwb[1] / 100; + var bl = hwb[2] / 100; + var ratio = wh + bl; + var i; + var v; + var f; + var n; + if (ratio > 1) { + wh /= ratio; + bl /= ratio; + } + i = Math.floor(6 * h); + v = 1 - bl; + f = 6 * h - i; + if ((i & 1) !== 0) { + f = 1 - f; + } + n = wh + f * (v - wh); + var r; + var g; + var b; + switch (i) { + default: + case 6: + case 0: + r = v; + g = n; + b = wh; + break; + case 1: + r = n; + g = v; + b = wh; + break; + case 2: + r = wh; + g = v; + b = n; + break; + case 3: + r = wh; + g = n; + b = v; + break; + case 4: + r = n; + g = wh; + b = v; + break; + case 5: + r = v; + g = wh; + b = n; + break; + } + return [r * 255, g * 255, b * 255]; + }; + convert.cmyk.rgb = function(cmyk) { + var c = cmyk[0] / 100; + var m = cmyk[1] / 100; + var y = cmyk[2] / 100; + var k = cmyk[3] / 100; + var r; + var g; + var b; + r = 1 - Math.min(1, c * (1 - k) + k); + g = 1 - Math.min(1, m * (1 - k) + k); + b = 1 - Math.min(1, y * (1 - k) + k); + return [r * 255, g * 255, b * 255]; + }; + convert.xyz.rgb = function(xyz) { + var x = xyz[0] / 100; + var y = xyz[1] / 100; + var z = xyz[2] / 100; + var r; + var g; + var b; + r = x * 3.2406 + y * -1.5372 + z * -0.4986; + g = x * -0.9689 + y * 1.8758 + z * 0.0415; + b = x * 0.0557 + y * -0.204 + z * 1.057; + r = r > 31308e-7 ? 1.055 * Math.pow(r, 1 / 2.4) - 0.055 : r * 12.92; + g = g > 31308e-7 ? 1.055 * Math.pow(g, 1 / 2.4) - 0.055 : g * 12.92; + b = b > 31308e-7 ? 1.055 * Math.pow(b, 1 / 2.4) - 0.055 : b * 12.92; + r = Math.min(Math.max(0, r), 1); + g = Math.min(Math.max(0, g), 1); + b = Math.min(Math.max(0, b), 1); + return [r * 255, g * 255, b * 255]; + }; + convert.xyz.lab = function(xyz) { + var x = xyz[0]; + var y = xyz[1]; + var z = xyz[2]; + var l; + var a; + var b; + x /= 95.047; + y /= 100; + z /= 108.883; + x = x > 8856e-6 ? Math.pow(x, 1 / 3) : 7.787 * x + 16 / 116; + y = y > 8856e-6 ? Math.pow(y, 1 / 3) : 7.787 * y + 16 / 116; + z = z > 8856e-6 ? Math.pow(z, 1 / 3) : 7.787 * z + 16 / 116; + l = 116 * y - 16; + a = 500 * (x - y); + b = 200 * (y - z); + return [l, a, b]; + }; + convert.lab.xyz = function(lab) { + var l = lab[0]; + var a = lab[1]; + var b = lab[2]; + var x; + var y; + var z; + y = (l + 16) / 116; + x = a / 500 + y; + z = y - b / 200; + var y2 = Math.pow(y, 3); + var x2 = Math.pow(x, 3); + var z2 = Math.pow(z, 3); + y = y2 > 8856e-6 ? y2 : (y - 16 / 116) / 7.787; + x = x2 > 8856e-6 ? x2 : (x - 16 / 116) / 7.787; + z = z2 > 8856e-6 ? z2 : (z - 16 / 116) / 7.787; + x *= 95.047; + y *= 100; + z *= 108.883; + return [x, y, z]; + }; + convert.lab.lch = function(lab) { + var l = lab[0]; + var a = lab[1]; + var b = lab[2]; + var hr; + var h; + var c; + hr = Math.atan2(b, a); + h = hr * 360 / 2 / Math.PI; + if (h < 0) { + h += 360; + } + c = Math.sqrt(a * a + b * b); + return [l, c, h]; + }; + convert.lch.lab = function(lch) { + var l = lch[0]; + var c = lch[1]; + var h = lch[2]; + var a; + var b; + var hr; + hr = h / 360 * 2 * Math.PI; + a = c * Math.cos(hr); + b = c * Math.sin(hr); + return [l, a, b]; + }; + convert.rgb.ansi16 = function(args) { + var r = args[0]; + var g = args[1]; + var b = args[2]; + var value = 1 in arguments ? arguments[1] : convert.rgb.hsv(args)[2]; + value = Math.round(value / 50); + if (value === 0) { + return 30; + } + var ansi = 30 + (Math.round(b / 255) << 2 | Math.round(g / 255) << 1 | Math.round(r / 255)); + if (value === 2) { + ansi += 60; + } + return ansi; + }; + convert.hsv.ansi16 = function(args) { + return convert.rgb.ansi16(convert.hsv.rgb(args), args[2]); + }; + convert.rgb.ansi256 = function(args) { + var r = args[0]; + var g = args[1]; + var b = args[2]; + if (r === g && g === b) { + if (r < 8) { + return 16; + } + if (r > 248) { + return 231; + } + return Math.round((r - 8) / 247 * 24) + 232; + } + var ansi = 16 + 36 * Math.round(r / 255 * 5) + 6 * Math.round(g / 255 * 5) + Math.round(b / 255 * 5); + return ansi; + }; + convert.ansi16.rgb = function(args) { + var color = args % 10; + if (color === 0 || color === 7) { + if (args > 50) { + color += 3.5; + } + color = color / 10.5 * 255; + return [color, color, color]; + } + var mult = (~~(args > 50) + 1) * 0.5; + var r = (color & 1) * mult * 255; + var g = (color >> 1 & 1) * mult * 255; + var b = (color >> 2 & 1) * mult * 255; + return [r, g, b]; + }; + convert.ansi256.rgb = function(args) { + if (args >= 232) { + var c = (args - 232) * 10 + 8; + return [c, c, c]; + } + args -= 16; + var rem; + var r = Math.floor(args / 36) / 5 * 255; + var g = Math.floor((rem = args % 36) / 6) / 5 * 255; + var b = rem % 6 / 5 * 255; + return [r, g, b]; + }; + convert.rgb.hex = function(args) { + var integer = ((Math.round(args[0]) & 255) << 16) + ((Math.round(args[1]) & 255) << 8) + (Math.round(args[2]) & 255); + var string = integer.toString(16).toUpperCase(); + return "000000".substring(string.length) + string; + }; + convert.hex.rgb = function(args) { + var match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i); + if (!match) { + return [0, 0, 0]; + } + var colorString = match[0]; + if (match[0].length === 3) { + colorString = colorString.split("").map(function(char) { + return char + char; + }).join(""); + } + var integer = parseInt(colorString, 16); + var r = integer >> 16 & 255; + var g = integer >> 8 & 255; + var b = integer & 255; + return [r, g, b]; + }; + convert.rgb.hcg = function(rgb) { + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + var max = Math.max(Math.max(r, g), b); + var min = Math.min(Math.min(r, g), b); + var chroma = max - min; + var grayscale; + var hue; + if (chroma < 1) { + grayscale = min / (1 - chroma); + } else { + grayscale = 0; + } + if (chroma <= 0) { + hue = 0; + } else if (max === r) { + hue = (g - b) / chroma % 6; + } else if (max === g) { + hue = 2 + (b - r) / chroma; + } else { + hue = 4 + (r - g) / chroma + 4; + } + hue /= 6; + hue %= 1; + return [hue * 360, chroma * 100, grayscale * 100]; + }; + convert.hsl.hcg = function(hsl) { + var s = hsl[1] / 100; + var l = hsl[2] / 100; + var c = 1; + var f = 0; + if (l < 0.5) { + c = 2 * s * l; + } else { + c = 2 * s * (1 - l); + } + if (c < 1) { + f = (l - 0.5 * c) / (1 - c); + } + return [hsl[0], c * 100, f * 100]; + }; + convert.hsv.hcg = function(hsv) { + var s = hsv[1] / 100; + var v = hsv[2] / 100; + var c = s * v; + var f = 0; + if (c < 1) { + f = (v - c) / (1 - c); + } + return [hsv[0], c * 100, f * 100]; + }; + convert.hcg.rgb = function(hcg) { + var h = hcg[0] / 360; + var c = hcg[1] / 100; + var g = hcg[2] / 100; + if (c === 0) { + return [g * 255, g * 255, g * 255]; + } + var pure = [0, 0, 0]; + var hi = h % 1 * 6; + var v = hi % 1; + var w = 1 - v; + var mg = 0; + switch (Math.floor(hi)) { + case 0: + pure[0] = 1; + pure[1] = v; + pure[2] = 0; + break; + case 1: + pure[0] = w; + pure[1] = 1; + pure[2] = 0; + break; + case 2: + pure[0] = 0; + pure[1] = 1; + pure[2] = v; + break; + case 3: + pure[0] = 0; + pure[1] = w; + pure[2] = 1; + break; + case 4: + pure[0] = v; + pure[1] = 0; + pure[2] = 1; + break; + default: + pure[0] = 1; + pure[1] = 0; + pure[2] = w; + } + mg = (1 - c) * g; + return [(c * pure[0] + mg) * 255, (c * pure[1] + mg) * 255, (c * pure[2] + mg) * 255]; + }; + convert.hcg.hsv = function(hcg) { + var c = hcg[1] / 100; + var g = hcg[2] / 100; + var v = c + g * (1 - c); + var f = 0; + if (v > 0) { + f = c / v; + } + return [hcg[0], f * 100, v * 100]; + }; + convert.hcg.hsl = function(hcg) { + var c = hcg[1] / 100; + var g = hcg[2] / 100; + var l = g * (1 - c) + 0.5 * c; + var s = 0; + if (l > 0 && l < 0.5) { + s = c / (2 * l); + } else if (l >= 0.5 && l < 1) { + s = c / (2 * (1 - l)); + } + return [hcg[0], s * 100, l * 100]; + }; + convert.hcg.hwb = function(hcg) { + var c = hcg[1] / 100; + var g = hcg[2] / 100; + var v = c + g * (1 - c); + return [hcg[0], (v - c) * 100, (1 - v) * 100]; + }; + convert.hwb.hcg = function(hwb) { + var w = hwb[1] / 100; + var b = hwb[2] / 100; + var v = 1 - b; + var c = v - w; + var g = 0; + if (c < 1) { + g = (v - c) / (1 - c); + } + return [hwb[0], c * 100, g * 100]; + }; + convert.apple.rgb = function(apple) { + return [apple[0] / 65535 * 255, apple[1] / 65535 * 255, apple[2] / 65535 * 255]; + }; + convert.rgb.apple = function(rgb) { + return [rgb[0] / 255 * 65535, rgb[1] / 255 * 65535, rgb[2] / 255 * 65535]; + }; + convert.gray.rgb = function(args) { + return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255]; + }; + convert.gray.hsl = convert.gray.hsv = function(args) { + return [0, 0, args[0]]; + }; + convert.gray.hwb = function(gray) { + return [0, 100, gray[0]]; + }; + convert.gray.cmyk = function(gray) { + return [0, 0, 0, gray[0]]; + }; + convert.gray.lab = function(gray) { + return [gray[0], 0, 0]; + }; + convert.gray.hex = function(gray) { + var val = Math.round(gray[0] / 100 * 255) & 255; + var integer = (val << 16) + (val << 8) + val; + var string = integer.toString(16).toUpperCase(); + return "000000".substring(string.length) + string; + }; + convert.rgb.gray = function(rgb) { + var val = (rgb[0] + rgb[1] + rgb[2]) / 3; + return [val / 255 * 100]; + }; + } +}); +var require_route = __commonJS2({ + "node_modules/color-convert/route.js"(exports2, module2) { + var conversions = require_conversions(); + function buildGraph() { + var graph = {}; + var models = Object.keys(conversions); + for (var len = models.length, i = 0; i < len; i++) { + graph[models[i]] = { + distance: -1, + parent: null + }; + } + return graph; + } + function deriveBFS(fromModel) { + var graph = buildGraph(); + var queue = [fromModel]; + graph[fromModel].distance = 0; + while (queue.length) { + var current = queue.pop(); + var adjacents = Object.keys(conversions[current]); + for (var len = adjacents.length, i = 0; i < len; i++) { + var adjacent = adjacents[i]; + var node = graph[adjacent]; + if (node.distance === -1) { + node.distance = graph[current].distance + 1; + node.parent = current; + queue.unshift(adjacent); + } + } + } + return graph; + } + function link(from, to) { + return function(args) { + return to(from(args)); + }; + } + function wrapConversion(toModel, graph) { + var path = [graph[toModel].parent, toModel]; + var fn = conversions[graph[toModel].parent][toModel]; + var cur = graph[toModel].parent; + while (graph[cur].parent) { + path.unshift(graph[cur].parent); + fn = link(conversions[graph[cur].parent][cur], fn); + cur = graph[cur].parent; + } + fn.conversion = path; + return fn; + } + module2.exports = function(fromModel) { + var graph = deriveBFS(fromModel); + var conversion = {}; + var models = Object.keys(graph); + for (var len = models.length, i = 0; i < len; i++) { + var toModel = models[i]; + var node = graph[toModel]; + if (node.parent === null) { + continue; + } + conversion[toModel] = wrapConversion(toModel, graph); + } + return conversion; + }; + } +}); +var require_color_convert = __commonJS2({ + "node_modules/color-convert/index.js"(exports2, module2) { + var conversions = require_conversions(); + var route = require_route(); + var convert = {}; + var models = Object.keys(conversions); + function wrapRaw(fn) { + var wrappedFn = function(args) { + if (args === void 0 || args === null) { + return args; + } + if (arguments.length > 1) { + args = Array.prototype.slice.call(arguments); + } + return fn(args); + }; + if ("conversion" in fn) { + wrappedFn.conversion = fn.conversion; + } + return wrappedFn; + } + function wrapRounded(fn) { + var wrappedFn = function(args) { + if (args === void 0 || args === null) { + return args; + } + if (arguments.length > 1) { + args = Array.prototype.slice.call(arguments); + } + var result = fn(args); + if (typeof result === "object") { + for (var len = result.length, i = 0; i < len; i++) { + result[i] = Math.round(result[i]); + } + } + return result; + }; + if ("conversion" in fn) { + wrappedFn.conversion = fn.conversion; + } + return wrappedFn; + } + models.forEach(function(fromModel) { + convert[fromModel] = {}; + Object.defineProperty(convert[fromModel], "channels", { + value: conversions[fromModel].channels + }); + Object.defineProperty(convert[fromModel], "labels", { + value: conversions[fromModel].labels + }); + var routes = route(fromModel); + var routeModels = Object.keys(routes); + routeModels.forEach(function(toModel) { + var fn = routes[toModel]; + convert[fromModel][toModel] = wrapRounded(fn); + convert[fromModel][toModel].raw = wrapRaw(fn); + }); + }); + module2.exports = convert; + } +}); +var require_ansi_styles = __commonJS2({ + "node_modules/ansi-styles/index.js"(exports2, module2) { + "use strict"; + var colorConvert = require_color_convert(); + var wrapAnsi16 = (fn, offset) => function() { + const code = fn.apply(colorConvert, arguments); + return `\x1B[${code + offset}m`; + }; + var wrapAnsi256 = (fn, offset) => function() { + const code = fn.apply(colorConvert, arguments); + return `\x1B[${38 + offset};5;${code}m`; + }; + var wrapAnsi16m = (fn, offset) => function() { + const rgb = fn.apply(colorConvert, arguments); + return `\x1B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; + }; + function assembleStyles() { + const codes = /* @__PURE__ */ new Map(); + const styles = { + 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], + gray: [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] + } + }; + styles.color.grey = styles.color.gray; + for (const groupName of Object.keys(styles)) { + const group = styles[groupName]; + for (const styleName of Object.keys(group)) { + const style = group[styleName]; + styles[styleName] = { + open: `\x1B[${style[0]}m`, + close: `\x1B[${style[1]}m` + }; + group[styleName] = styles[styleName]; + codes.set(style[0], style[1]); + } + Object.defineProperty(styles, groupName, { + value: group, + enumerable: false + }); + Object.defineProperty(styles, "codes", { + value: codes, + enumerable: false + }); + } + const ansi2ansi = (n) => n; + const rgb2rgb = (r, g, b) => [r, g, b]; + styles.color.close = "\x1B[39m"; + styles.bgColor.close = "\x1B[49m"; + styles.color.ansi = { + ansi: wrapAnsi16(ansi2ansi, 0) + }; + styles.color.ansi256 = { + ansi256: wrapAnsi256(ansi2ansi, 0) + }; + styles.color.ansi16m = { + rgb: wrapAnsi16m(rgb2rgb, 0) + }; + styles.bgColor.ansi = { + ansi: wrapAnsi16(ansi2ansi, 10) + }; + styles.bgColor.ansi256 = { + ansi256: wrapAnsi256(ansi2ansi, 10) + }; + styles.bgColor.ansi16m = { + rgb: wrapAnsi16m(rgb2rgb, 10) + }; + for (let key of Object.keys(colorConvert)) { + if (typeof colorConvert[key] !== "object") { + continue; + } + const suite = colorConvert[key]; + if (key === "ansi16") { + key = "ansi"; + } + if ("ansi16" in suite) { + styles.color.ansi[key] = wrapAnsi16(suite.ansi16, 0); + styles.bgColor.ansi[key] = wrapAnsi16(suite.ansi16, 10); + } + if ("ansi256" in suite) { + styles.color.ansi256[key] = wrapAnsi256(suite.ansi256, 0); + styles.bgColor.ansi256[key] = wrapAnsi256(suite.ansi256, 10); + } + if ("rgb" in suite) { + styles.color.ansi16m[key] = wrapAnsi16m(suite.rgb, 0); + styles.bgColor.ansi16m[key] = wrapAnsi16m(suite.rgb, 10); + } + } + return styles; + } + Object.defineProperty(module2, "exports", { + enumerable: true, + get: assembleStyles + }); + } +}); +var require_has_flag = __commonJS2({ + "node_modules/vnopts/node_modules/has-flag/index.js"(exports2, module2) { + "use strict"; + module2.exports = (flag, argv) => { + argv = argv || process.argv; + const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; + const pos = argv.indexOf(prefix + flag); + const terminatorPos = argv.indexOf("--"); + return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos); + }; + } +}); +var require_supports_color = __commonJS2({ + "node_modules/vnopts/node_modules/supports-color/index.js"(exports2, module2) { + "use strict"; + var os = require("os"); + var hasFlag = require_has_flag(); + var env = process.env; + var forceColor; + if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false")) { + forceColor = false; + } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { + forceColor = true; + } + if ("FORCE_COLOR" in env) { + forceColor = env.FORCE_COLOR.length === 0 || parseInt(env.FORCE_COLOR, 10) !== 0; + } + function translateLevel(level) { + if (level === 0) { + return false; + } + return { + level, + hasBasic: true, + has256: level >= 2, + has16m: level >= 3 + }; + } + function supportsColor(stream) { + if (forceColor === false) { + return 0; + } + if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { + return 3; + } + if (hasFlag("color=256")) { + return 2; + } + if (stream && !stream.isTTY && forceColor !== true) { + return 0; + } + const min = forceColor ? 1 : 0; + if (process.platform === "win32") { + const osRelease = os.release().split("."); + if (Number(process.versions.node.split(".")[0]) >= 8 && Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { + return Number(osRelease[2]) >= 14931 ? 3 : 2; + } + return 1; + } + if ("CI" in env) { + if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI"].some((sign) => sign in env) || env.CI_NAME === "codeship") { + return 1; + } + return min; + } + if ("TEAMCITY_VERSION" in env) { + return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0; + } + if (env.COLORTERM === "truecolor") { + return 3; + } + if ("TERM_PROGRAM" in env) { + const version2 = parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10); + switch (env.TERM_PROGRAM) { + case "iTerm.app": + return version2 >= 3 ? 3 : 2; + case "Apple_Terminal": + return 2; + } + } + if (/-256(color)?$/i.test(env.TERM)) { + return 2; + } + if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) { + return 1; + } + if ("COLORTERM" in env) { + return 1; + } + if (env.TERM === "dumb") { + return min; + } + return min; + } + function getSupportLevel(stream) { + const level = supportsColor(stream); + return translateLevel(level); + } + module2.exports = { + supportsColor: getSupportLevel, + stdout: getSupportLevel(process.stdout), + stderr: getSupportLevel(process.stderr) + }; + } +}); +var require_templates = __commonJS2({ + "node_modules/vnopts/node_modules/chalk/templates.js"(exports2, module2) { + "use strict"; + var TEMPLATE_REGEX = /(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi; + var STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g; + var STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/; + var ESCAPE_REGEX = /\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi; + var ESCAPES = /* @__PURE__ */ new Map([["n", "\n"], ["r", "\r"], ["t", " "], ["b", "\b"], ["f", "\f"], ["v", "\v"], ["0", "\0"], ["\\", "\\"], ["e", "\x1B"], ["a", "\x07"]]); + function unescape(c) { + if (c[0] === "u" && c.length === 5 || c[0] === "x" && c.length === 3) { + return String.fromCharCode(parseInt(c.slice(1), 16)); + } + return ESCAPES.get(c) || c; + } + function parseArguments(name, args) { + const results = []; + const chunks = args.trim().split(/\s*,\s*/g); + let matches; + for (const chunk of chunks) { + if (!isNaN(chunk)) { + results.push(Number(chunk)); + } else if (matches = chunk.match(STRING_REGEX)) { + results.push(matches[2].replace(ESCAPE_REGEX, (m, escape, chr) => escape ? unescape(escape) : chr)); + } else { + throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`); + } + } + return results; + } + function parseStyle(style) { + STYLE_REGEX.lastIndex = 0; + const results = []; + let matches; + while ((matches = STYLE_REGEX.exec(style)) !== null) { + const name = matches[1]; + if (matches[2]) { + const args = parseArguments(name, matches[2]); + results.push([name].concat(args)); + } else { + results.push([name]); + } + } + return results; + } + function buildStyle(chalk, styles) { + const enabled = {}; + for (const layer of styles) { + for (const style of layer.styles) { + enabled[style[0]] = layer.inverse ? null : style.slice(1); + } + } + let current = chalk; + for (const styleName of Object.keys(enabled)) { + if (Array.isArray(enabled[styleName])) { + if (!(styleName in current)) { + throw new Error(`Unknown Chalk style: ${styleName}`); + } + if (enabled[styleName].length > 0) { + current = current[styleName].apply(current, enabled[styleName]); + } else { + current = current[styleName]; + } + } + } + return current; + } + module2.exports = (chalk, tmp) => { + const styles = []; + const chunks = []; + let chunk = []; + tmp.replace(TEMPLATE_REGEX, (m, escapeChar, inverse, style, close, chr) => { + if (escapeChar) { + chunk.push(unescape(escapeChar)); + } else if (style) { + const str = chunk.join(""); + chunk = []; + chunks.push(styles.length === 0 ? str : buildStyle(chalk, styles)(str)); + styles.push({ + inverse, + styles: parseStyle(style) + }); + } else if (close) { + if (styles.length === 0) { + throw new Error("Found extraneous } in Chalk template literal"); + } + chunks.push(buildStyle(chalk, styles)(chunk.join(""))); + chunk = []; + styles.pop(); + } else { + chunk.push(chr); + } + }); + chunks.push(chunk.join("")); + if (styles.length > 0) { + const errMsg = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? "" : "s"} (\`}\`)`; + throw new Error(errMsg); + } + return chunks.join(""); + }; + } +}); +var require_chalk = __commonJS2({ + "node_modules/vnopts/node_modules/chalk/index.js"(exports2, module2) { + "use strict"; + var escapeStringRegexp2 = require_escape_string_regexp(); + var ansiStyles = require_ansi_styles(); + var stdoutColor = require_supports_color().stdout; + var template = require_templates(); + var isSimpleWindowsTerm = process.platform === "win32" && !(process.env.TERM || "").toLowerCase().startsWith("xterm"); + var levelMapping = ["ansi", "ansi", "ansi256", "ansi16m"]; + var skipModels = /* @__PURE__ */ new Set(["gray"]); + var styles = /* @__PURE__ */ Object.create(null); + function applyOptions(obj, options) { + options = options || {}; + const scLevel = stdoutColor ? stdoutColor.level : 0; + obj.level = options.level === void 0 ? scLevel : options.level; + obj.enabled = "enabled" in options ? options.enabled : obj.level > 0; + } + function Chalk(options) { + if (!this || !(this instanceof Chalk) || this.template) { + const chalk = {}; + applyOptions(chalk, options); + chalk.template = function() { + const args = [].slice.call(arguments); + return chalkTag.apply(null, [chalk.template].concat(args)); + }; + Object.setPrototypeOf(chalk, Chalk.prototype); + Object.setPrototypeOf(chalk.template, chalk); + chalk.template.constructor = Chalk; + return chalk.template; + } + applyOptions(this, options); + } + if (isSimpleWindowsTerm) { + ansiStyles.blue.open = "\x1B[94m"; + } + for (const key of Object.keys(ansiStyles)) { + ansiStyles[key].closeRe = new RegExp(escapeStringRegexp2(ansiStyles[key].close), "g"); + styles[key] = { + get() { + const codes = ansiStyles[key]; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, key); + } + }; + } + styles.visible = { + get() { + return build.call(this, this._styles || [], true, "visible"); + } + }; + ansiStyles.color.closeRe = new RegExp(escapeStringRegexp2(ansiStyles.color.close), "g"); + for (const model of Object.keys(ansiStyles.color.ansi)) { + if (skipModels.has(model)) { + continue; + } + styles[model] = { + get() { + const level = this.level; + return function() { + const open = ansiStyles.color[levelMapping[level]][model].apply(null, arguments); + const codes = { + open, + close: ansiStyles.color.close, + closeRe: ansiStyles.color.closeRe + }; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); + }; + } + }; + } + ansiStyles.bgColor.closeRe = new RegExp(escapeStringRegexp2(ansiStyles.bgColor.close), "g"); + for (const model of Object.keys(ansiStyles.bgColor.ansi)) { + if (skipModels.has(model)) { + continue; + } + const bgModel = "bg" + model[0].toUpperCase() + model.slice(1); + styles[bgModel] = { + get() { + const level = this.level; + return function() { + const open = ansiStyles.bgColor[levelMapping[level]][model].apply(null, arguments); + const codes = { + open, + close: ansiStyles.bgColor.close, + closeRe: ansiStyles.bgColor.closeRe + }; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); + }; + } + }; + } + var proto = Object.defineProperties(() => { + }, styles); + function build(_styles, _empty, key) { + const builder = function() { + return applyStyle.apply(builder, arguments); + }; + builder._styles = _styles; + builder._empty = _empty; + const self2 = this; + Object.defineProperty(builder, "level", { + enumerable: true, + get() { + return self2.level; + }, + set(level) { + self2.level = level; + } + }); + Object.defineProperty(builder, "enabled", { + enumerable: true, + get() { + return self2.enabled; + }, + set(enabled) { + self2.enabled = enabled; + } + }); + builder.hasGrey = this.hasGrey || key === "gray" || key === "grey"; + builder.__proto__ = proto; + return builder; + } + function applyStyle() { + const args = arguments; + const argsLen = args.length; + let str = String(arguments[0]); + if (argsLen === 0) { + return ""; + } + if (argsLen > 1) { + for (let a = 1; a < argsLen; a++) { + str += " " + args[a]; + } + } + if (!this.enabled || this.level <= 0 || !str) { + return this._empty ? "" : str; + } + const originalDim = ansiStyles.dim.open; + if (isSimpleWindowsTerm && this.hasGrey) { + ansiStyles.dim.open = ""; + } + for (const code of this._styles.slice().reverse()) { + str = code.open + str.replace(code.closeRe, code.open) + code.close; + str = str.replace(/\r?\n/g, `${code.close}$&${code.open}`); + } + ansiStyles.dim.open = originalDim; + return str; + } + function chalkTag(chalk, strings) { + if (!Array.isArray(strings)) { + return [].slice.call(arguments, 1).join(" "); + } + const args = [].slice.call(arguments, 2); + const parts = [strings.raw[0]]; + for (let i = 1; i < strings.length; i++) { + parts.push(String(args[i - 1]).replace(/[{}\\]/g, "\\$&")); + parts.push(String(strings.raw[i])); + } + return template(chalk, parts.join("")); + } + Object.defineProperties(Chalk.prototype, styles); + module2.exports = Chalk(); + module2.exports.supportsColor = stdoutColor; + module2.exports.default = module2.exports; + } +}); +var require_common = __commonJS2({ + "node_modules/vnopts/lib/handlers/deprecated/common.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var chalk_1 = require_chalk(); + exports2.commonDeprecatedHandler = (keyOrPair, redirectTo, { + descriptor + }) => { + const messages = [`${chalk_1.default.yellow(typeof keyOrPair === "string" ? descriptor.key(keyOrPair) : descriptor.pair(keyOrPair))} is deprecated`]; + if (redirectTo) { + messages.push(`we now treat it as ${chalk_1.default.blue(typeof redirectTo === "string" ? descriptor.key(redirectTo) : descriptor.pair(redirectTo))}`); + } + return messages.join("; ") + "."; + }; + } +}); +var require_deprecated = __commonJS2({ + "node_modules/vnopts/lib/handlers/deprecated/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_common(), exports2); + } +}); +var require_common2 = __commonJS2({ + "node_modules/vnopts/lib/handlers/invalid/common.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var chalk_1 = require_chalk(); + exports2.commonInvalidHandler = (key, value, utils) => [`Invalid ${chalk_1.default.red(utils.descriptor.key(key))} value.`, `Expected ${chalk_1.default.blue(utils.schemas[key].expected(utils))},`, `but received ${chalk_1.default.red(utils.descriptor.value(value))}.`].join(" "); + } +}); +var require_invalid = __commonJS2({ + "node_modules/vnopts/lib/handlers/invalid/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_common2(), exports2); + } +}); +var require_leven = __commonJS2({ + "node_modules/vnopts/node_modules/leven/index.js"(exports2, module2) { + "use strict"; + var arr = []; + var charCodeCache = []; + module2.exports = function(a, b) { + if (a === b) { + return 0; + } + var swap = a; + if (a.length > b.length) { + a = b; + b = swap; + } + var aLen = a.length; + var bLen = b.length; + if (aLen === 0) { + return bLen; + } + if (bLen === 0) { + return aLen; + } + while (aLen > 0 && a.charCodeAt(~-aLen) === b.charCodeAt(~-bLen)) { + aLen--; + bLen--; + } + if (aLen === 0) { + return bLen; + } + var start = 0; + while (start < aLen && a.charCodeAt(start) === b.charCodeAt(start)) { + start++; + } + aLen -= start; + bLen -= start; + if (aLen === 0) { + return bLen; + } + var bCharCode; + var ret; + var tmp; + var tmp2; + var i = 0; + var j = 0; + while (i < aLen) { + charCodeCache[start + i] = a.charCodeAt(start + i); + arr[i] = ++i; + } + while (j < bLen) { + bCharCode = b.charCodeAt(start + j); + tmp = j++; + ret = j; + for (i = 0; i < aLen; i++) { + tmp2 = bCharCode === charCodeCache[start + i] ? tmp : tmp + 1; + tmp = arr[i]; + ret = arr[i] = tmp > ret ? tmp2 > ret ? ret + 1 : tmp2 : tmp2 > tmp ? tmp + 1 : tmp2; + } + } + return ret; + }; + } +}); +var require_leven2 = __commonJS2({ + "node_modules/vnopts/lib/handlers/unknown/leven.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var chalk_1 = require_chalk(); + var leven = require_leven(); + exports2.levenUnknownHandler = (key, value, { + descriptor, + logger, + schemas + }) => { + const messages = [`Ignored unknown option ${chalk_1.default.yellow(descriptor.pair({ + key, + value + }))}.`]; + const suggestion = Object.keys(schemas).sort().find((knownKey) => leven(key, knownKey) < 3); + if (suggestion) { + messages.push(`Did you mean ${chalk_1.default.blue(descriptor.key(suggestion))}?`); + } + logger.warn(messages.join(" ")); + }; + } +}); +var require_unknown = __commonJS2({ + "node_modules/vnopts/lib/handlers/unknown/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_leven2(), exports2); + } +}); +var require_handlers = __commonJS2({ + "node_modules/vnopts/lib/handlers/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_deprecated(), exports2); + tslib_1.__exportStar(require_invalid(), exports2); + tslib_1.__exportStar(require_unknown(), exports2); + } +}); +var require_schema = __commonJS2({ + "node_modules/vnopts/lib/schema.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var HANDLER_KEYS = ["default", "expected", "validate", "deprecated", "forward", "redirect", "overlap", "preprocess", "postprocess"]; + function createSchema(SchemaConstructor, parameters) { + const schema = new SchemaConstructor(parameters); + const subSchema = Object.create(schema); + for (const handlerKey of HANDLER_KEYS) { + if (handlerKey in parameters) { + subSchema[handlerKey] = normalizeHandler(parameters[handlerKey], schema, Schema.prototype[handlerKey].length); + } + } + return subSchema; + } + exports2.createSchema = createSchema; + var Schema = class { + constructor(parameters) { + this.name = parameters.name; + } + static create(parameters) { + return createSchema(this, parameters); + } + default(_utils) { + return void 0; + } + expected(_utils) { + return "nothing"; + } + validate(_value, _utils) { + return false; + } + deprecated(_value, _utils) { + return false; + } + forward(_value, _utils) { + return void 0; + } + redirect(_value, _utils) { + return void 0; + } + overlap(currentValue, _newValue, _utils) { + return currentValue; + } + preprocess(value, _utils) { + return value; + } + postprocess(value, _utils) { + return value; + } + }; + exports2.Schema = Schema; + function normalizeHandler(handler, superSchema, handlerArgumentsLength) { + return typeof handler === "function" ? (...args) => handler(...args.slice(0, handlerArgumentsLength - 1), superSchema, ...args.slice(handlerArgumentsLength - 1)) : () => handler; + } + } +}); +var require_alias = __commonJS2({ + "node_modules/vnopts/lib/schemas/alias.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var schema_1 = require_schema(); + var AliasSchema = class extends schema_1.Schema { + constructor(parameters) { + super(parameters); + this._sourceName = parameters.sourceName; + } + expected(utils) { + return utils.schemas[this._sourceName].expected(utils); + } + validate(value, utils) { + return utils.schemas[this._sourceName].validate(value, utils); + } + redirect(_value, _utils) { + return this._sourceName; + } + }; + exports2.AliasSchema = AliasSchema; + } +}); +var require_any = __commonJS2({ + "node_modules/vnopts/lib/schemas/any.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var schema_1 = require_schema(); + var AnySchema = class extends schema_1.Schema { + expected() { + return "anything"; + } + validate() { + return true; + } + }; + exports2.AnySchema = AnySchema; + } +}); +var require_array2 = __commonJS2({ + "node_modules/vnopts/lib/schemas/array.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + var schema_1 = require_schema(); + var ArraySchema = class extends schema_1.Schema { + constructor(_a) { + var { + valueSchema, + name = valueSchema.name + } = _a, handlers = tslib_1.__rest(_a, ["valueSchema", "name"]); + super(Object.assign({}, handlers, { + name + })); + this._valueSchema = valueSchema; + } + expected(utils) { + return `an array of ${this._valueSchema.expected(utils)}`; + } + validate(value, utils) { + if (!Array.isArray(value)) { + return false; + } + const invalidValues = []; + for (const subValue of value) { + const subValidateResult = utils.normalizeValidateResult(this._valueSchema.validate(subValue, utils), subValue); + if (subValidateResult !== true) { + invalidValues.push(subValidateResult.value); + } + } + return invalidValues.length === 0 ? true : { + value: invalidValues + }; + } + deprecated(value, utils) { + const deprecatedResult = []; + for (const subValue of value) { + const subDeprecatedResult = utils.normalizeDeprecatedResult(this._valueSchema.deprecated(subValue, utils), subValue); + if (subDeprecatedResult !== false) { + deprecatedResult.push(...subDeprecatedResult.map(({ + value: deprecatedValue + }) => ({ + value: [deprecatedValue] + }))); + } + } + return deprecatedResult; + } + forward(value, utils) { + const forwardResult = []; + for (const subValue of value) { + const subForwardResult = utils.normalizeForwardResult(this._valueSchema.forward(subValue, utils), subValue); + forwardResult.push(...subForwardResult.map(wrapTransferResult)); + } + return forwardResult; + } + redirect(value, utils) { + const remain = []; + const redirect = []; + for (const subValue of value) { + const subRedirectResult = utils.normalizeRedirectResult(this._valueSchema.redirect(subValue, utils), subValue); + if ("remain" in subRedirectResult) { + remain.push(subRedirectResult.remain); + } + redirect.push(...subRedirectResult.redirect.map(wrapTransferResult)); + } + return remain.length === 0 ? { + redirect + } : { + redirect, + remain + }; + } + overlap(currentValue, newValue) { + return currentValue.concat(newValue); + } + }; + exports2.ArraySchema = ArraySchema; + function wrapTransferResult({ + from, + to + }) { + return { + from: [from], + to + }; + } + } +}); +var require_boolean = __commonJS2({ + "node_modules/vnopts/lib/schemas/boolean.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var schema_1 = require_schema(); + var BooleanSchema = class extends schema_1.Schema { + expected() { + return "true or false"; + } + validate(value) { + return typeof value === "boolean"; + } + }; + exports2.BooleanSchema = BooleanSchema; + } +}); +var require_utils = __commonJS2({ + "node_modules/vnopts/lib/utils.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + function recordFromArray(array, mainKey) { + const record = /* @__PURE__ */ Object.create(null); + for (const value of array) { + const key = value[mainKey]; + if (record[key]) { + throw new Error(`Duplicate ${mainKey} ${JSON.stringify(key)}`); + } + record[key] = value; + } + return record; + } + exports2.recordFromArray = recordFromArray; + function mapFromArray(array, mainKey) { + const map = /* @__PURE__ */ new Map(); + for (const value of array) { + const key = value[mainKey]; + if (map.has(key)) { + throw new Error(`Duplicate ${mainKey} ${JSON.stringify(key)}`); + } + map.set(key, value); + } + return map; + } + exports2.mapFromArray = mapFromArray; + function createAutoChecklist() { + const map = /* @__PURE__ */ Object.create(null); + return (id) => { + const idString = JSON.stringify(id); + if (map[idString]) { + return true; + } + map[idString] = true; + return false; + }; + } + exports2.createAutoChecklist = createAutoChecklist; + function partition(array, predicate) { + const trueArray = []; + const falseArray = []; + for (const value of array) { + if (predicate(value)) { + trueArray.push(value); + } else { + falseArray.push(value); + } + } + return [trueArray, falseArray]; + } + exports2.partition = partition; + function isInt(value) { + return value === Math.floor(value); + } + exports2.isInt = isInt; + function comparePrimitive(a, b) { + if (a === b) { + return 0; + } + const typeofA = typeof a; + const typeofB = typeof b; + const orders = ["undefined", "object", "boolean", "number", "string"]; + if (typeofA !== typeofB) { + return orders.indexOf(typeofA) - orders.indexOf(typeofB); + } + if (typeofA !== "string") { + return Number(a) - Number(b); + } + return a.localeCompare(b); + } + exports2.comparePrimitive = comparePrimitive; + function normalizeDefaultResult(result) { + return result === void 0 ? {} : result; + } + exports2.normalizeDefaultResult = normalizeDefaultResult; + function normalizeValidateResult(result, value) { + return result === true ? true : result === false ? { + value + } : result; + } + exports2.normalizeValidateResult = normalizeValidateResult; + function normalizeDeprecatedResult(result, value, doNotNormalizeTrue = false) { + return result === false ? false : result === true ? doNotNormalizeTrue ? true : [{ + value + }] : "value" in result ? [result] : result.length === 0 ? false : result; + } + exports2.normalizeDeprecatedResult = normalizeDeprecatedResult; + function normalizeTransferResult(result, value) { + return typeof result === "string" || "key" in result ? { + from: value, + to: result + } : "from" in result ? { + from: result.from, + to: result.to + } : { + from: value, + to: result.to + }; + } + exports2.normalizeTransferResult = normalizeTransferResult; + function normalizeForwardResult(result, value) { + return result === void 0 ? [] : Array.isArray(result) ? result.map((transferResult) => normalizeTransferResult(transferResult, value)) : [normalizeTransferResult(result, value)]; + } + exports2.normalizeForwardResult = normalizeForwardResult; + function normalizeRedirectResult(result, value) { + const redirect = normalizeForwardResult(typeof result === "object" && "redirect" in result ? result.redirect : result, value); + return redirect.length === 0 ? { + remain: value, + redirect + } : typeof result === "object" && "remain" in result ? { + remain: result.remain, + redirect + } : { + redirect + }; + } + exports2.normalizeRedirectResult = normalizeRedirectResult; + } +}); +var require_choice = __commonJS2({ + "node_modules/vnopts/lib/schemas/choice.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var schema_1 = require_schema(); + var utils_1 = require_utils(); + var ChoiceSchema = class extends schema_1.Schema { + constructor(parameters) { + super(parameters); + this._choices = utils_1.mapFromArray(parameters.choices.map((choice) => choice && typeof choice === "object" ? choice : { + value: choice + }), "value"); + } + expected({ + descriptor + }) { + const choiceValues = Array.from(this._choices.keys()).map((value) => this._choices.get(value)).filter((choiceInfo) => !choiceInfo.deprecated).map((choiceInfo) => choiceInfo.value).sort(utils_1.comparePrimitive).map(descriptor.value); + const head = choiceValues.slice(0, -2); + const tail = choiceValues.slice(-2); + return head.concat(tail.join(" or ")).join(", "); + } + validate(value) { + return this._choices.has(value); + } + deprecated(value) { + const choiceInfo = this._choices.get(value); + return choiceInfo && choiceInfo.deprecated ? { + value + } : false; + } + forward(value) { + const choiceInfo = this._choices.get(value); + return choiceInfo ? choiceInfo.forward : void 0; + } + redirect(value) { + const choiceInfo = this._choices.get(value); + return choiceInfo ? choiceInfo.redirect : void 0; + } + }; + exports2.ChoiceSchema = ChoiceSchema; + } +}); +var require_number = __commonJS2({ + "node_modules/vnopts/lib/schemas/number.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var schema_1 = require_schema(); + var NumberSchema = class extends schema_1.Schema { + expected() { + return "a number"; + } + validate(value, _utils) { + return typeof value === "number"; + } + }; + exports2.NumberSchema = NumberSchema; + } +}); +var require_integer = __commonJS2({ + "node_modules/vnopts/lib/schemas/integer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var utils_1 = require_utils(); + var number_1 = require_number(); + var IntegerSchema = class extends number_1.NumberSchema { + expected() { + return "an integer"; + } + validate(value, utils) { + return utils.normalizeValidateResult(super.validate(value, utils), value) === true && utils_1.isInt(value); + } + }; + exports2.IntegerSchema = IntegerSchema; + } +}); +var require_string = __commonJS2({ + "node_modules/vnopts/lib/schemas/string.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var schema_1 = require_schema(); + var StringSchema = class extends schema_1.Schema { + expected() { + return "a string"; + } + validate(value) { + return typeof value === "string"; + } + }; + exports2.StringSchema = StringSchema; + } +}); +var require_schemas = __commonJS2({ + "node_modules/vnopts/lib/schemas/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_alias(), exports2); + tslib_1.__exportStar(require_any(), exports2); + tslib_1.__exportStar(require_array2(), exports2); + tslib_1.__exportStar(require_boolean(), exports2); + tslib_1.__exportStar(require_choice(), exports2); + tslib_1.__exportStar(require_integer(), exports2); + tslib_1.__exportStar(require_number(), exports2); + tslib_1.__exportStar(require_string(), exports2); + } +}); +var require_defaults = __commonJS2({ + "node_modules/vnopts/lib/defaults.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var api_1 = require_api(); + var common_1 = require_common(); + var invalid_1 = require_invalid(); + var leven_1 = require_leven2(); + exports2.defaultDescriptor = api_1.apiDescriptor; + exports2.defaultUnknownHandler = leven_1.levenUnknownHandler; + exports2.defaultInvalidHandler = invalid_1.commonInvalidHandler; + exports2.defaultDeprecatedHandler = common_1.commonDeprecatedHandler; + } +}); +var require_normalize = __commonJS2({ + "node_modules/vnopts/lib/normalize.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var defaults_1 = require_defaults(); + var utils_1 = require_utils(); + exports2.normalize = (options, schemas, opts) => new Normalizer(schemas, opts).normalize(options); + var Normalizer = class { + constructor(schemas, opts) { + const { + logger = console, + descriptor = defaults_1.defaultDescriptor, + unknown = defaults_1.defaultUnknownHandler, + invalid = defaults_1.defaultInvalidHandler, + deprecated = defaults_1.defaultDeprecatedHandler + } = opts || {}; + this._utils = { + descriptor, + logger: logger || { + warn: () => { + } + }, + schemas: utils_1.recordFromArray(schemas, "name"), + normalizeDefaultResult: utils_1.normalizeDefaultResult, + normalizeDeprecatedResult: utils_1.normalizeDeprecatedResult, + normalizeForwardResult: utils_1.normalizeForwardResult, + normalizeRedirectResult: utils_1.normalizeRedirectResult, + normalizeValidateResult: utils_1.normalizeValidateResult + }; + this._unknownHandler = unknown; + this._invalidHandler = invalid; + this._deprecatedHandler = deprecated; + this.cleanHistory(); + } + cleanHistory() { + this._hasDeprecationWarned = utils_1.createAutoChecklist(); + } + normalize(options) { + const normalized = {}; + const restOptionsArray = [options]; + const applyNormalization = () => { + while (restOptionsArray.length !== 0) { + const currentOptions = restOptionsArray.shift(); + const transferredOptionsArray = this._applyNormalization(currentOptions, normalized); + restOptionsArray.push(...transferredOptionsArray); + } + }; + applyNormalization(); + for (const key of Object.keys(this._utils.schemas)) { + const schema = this._utils.schemas[key]; + if (!(key in normalized)) { + const defaultResult = utils_1.normalizeDefaultResult(schema.default(this._utils)); + if ("value" in defaultResult) { + restOptionsArray.push({ + [key]: defaultResult.value + }); + } + } + } + applyNormalization(); + for (const key of Object.keys(this._utils.schemas)) { + const schema = this._utils.schemas[key]; + if (key in normalized) { + normalized[key] = schema.postprocess(normalized[key], this._utils); + } + } + return normalized; + } + _applyNormalization(options, normalized) { + const transferredOptionsArray = []; + const [knownOptionNames, unknownOptionNames] = utils_1.partition(Object.keys(options), (key) => key in this._utils.schemas); + for (const key of knownOptionNames) { + const schema = this._utils.schemas[key]; + const value = schema.preprocess(options[key], this._utils); + const validateResult = utils_1.normalizeValidateResult(schema.validate(value, this._utils), value); + if (validateResult !== true) { + const { + value: invalidValue + } = validateResult; + const errorMessageOrError = this._invalidHandler(key, invalidValue, this._utils); + throw typeof errorMessageOrError === "string" ? new Error(errorMessageOrError) : errorMessageOrError; + } + const appendTransferredOptions = ({ + from, + to + }) => { + transferredOptionsArray.push(typeof to === "string" ? { + [to]: from + } : { + [to.key]: to.value + }); + }; + const warnDeprecated = ({ + value: currentValue, + redirectTo + }) => { + const deprecatedResult = utils_1.normalizeDeprecatedResult(schema.deprecated(currentValue, this._utils), value, true); + if (deprecatedResult === false) { + return; + } + if (deprecatedResult === true) { + if (!this._hasDeprecationWarned(key)) { + this._utils.logger.warn(this._deprecatedHandler(key, redirectTo, this._utils)); + } + } else { + for (const { + value: deprecatedValue + } of deprecatedResult) { + const pair = { + key, + value: deprecatedValue + }; + if (!this._hasDeprecationWarned(pair)) { + const redirectToPair = typeof redirectTo === "string" ? { + key: redirectTo, + value: deprecatedValue + } : redirectTo; + this._utils.logger.warn(this._deprecatedHandler(pair, redirectToPair, this._utils)); + } + } + } + }; + const forwardResult = utils_1.normalizeForwardResult(schema.forward(value, this._utils), value); + forwardResult.forEach(appendTransferredOptions); + const redirectResult = utils_1.normalizeRedirectResult(schema.redirect(value, this._utils), value); + redirectResult.redirect.forEach(appendTransferredOptions); + if ("remain" in redirectResult) { + const remainingValue = redirectResult.remain; + normalized[key] = key in normalized ? schema.overlap(normalized[key], remainingValue, this._utils) : remainingValue; + warnDeprecated({ + value: remainingValue + }); + } + for (const { + from, + to + } of redirectResult.redirect) { + warnDeprecated({ + value: from, + redirectTo: to + }); + } + } + for (const key of unknownOptionNames) { + const value = options[key]; + const unknownResult = this._unknownHandler(key, value, this._utils); + if (unknownResult) { + for (const unknownKey of Object.keys(unknownResult)) { + const unknownOption = { + [unknownKey]: unknownResult[unknownKey] + }; + if (unknownKey in this._utils.schemas) { + transferredOptionsArray.push(unknownOption); + } else { + Object.assign(normalized, unknownOption); + } + } + } + } + return transferredOptionsArray; + } + }; + exports2.Normalizer = Normalizer; + } +}); +var require_lib2 = __commonJS2({ + "node_modules/vnopts/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports)); + tslib_1.__exportStar(require_descriptors2(), exports2); + tslib_1.__exportStar(require_handlers(), exports2); + tslib_1.__exportStar(require_schemas(), exports2); + tslib_1.__exportStar(require_normalize(), exports2); + tslib_1.__exportStar(require_schema(), exports2); + } +}); +var require_options_normalizer = __commonJS2({ + "src/main/options-normalizer.js"(exports2, module2) { + "use strict"; + var vnopts = require_lib2(); + var getLast = require_get_last(); + var cliDescriptor = { + key: (key) => key.length === 1 ? `-${key}` : `--${key}`, + value: (value) => vnopts.apiDescriptor.value(value), + pair: ({ + key, + value + }) => value === false ? `--no-${key}` : value === true ? cliDescriptor.key(key) : value === "" ? `${cliDescriptor.key(key)} without an argument` : `${cliDescriptor.key(key)}=${value}` + }; + var getFlagSchema = ({ + colorsModule, + levenshteinDistance + }) => class FlagSchema extends vnopts.ChoiceSchema { + constructor({ + name, + flags + }) { + super({ + name, + choices: flags + }); + this._flags = [...flags].sort(); + } + preprocess(value, utils) { + if (typeof value === "string" && value.length > 0 && !this._flags.includes(value)) { + const suggestion = this._flags.find((flag) => levenshteinDistance(flag, value) < 3); + if (suggestion) { + utils.logger.warn([`Unknown flag ${colorsModule.yellow(utils.descriptor.value(value))},`, `did you mean ${colorsModule.blue(utils.descriptor.value(suggestion))}?`].join(" ")); + return suggestion; + } + } + return value; + } + expected() { + return "a flag"; + } + }; + var hasDeprecationWarned; + function normalizeOptions(options, optionInfos, { + logger = false, + isCLI = false, + passThrough = false, + colorsModule = null, + levenshteinDistance = null + } = {}) { + const unknown = !passThrough ? (key, value, options2) => { + const _options2$schemas = options2.schemas, { + _ + } = _options2$schemas, schemas2 = _objectWithoutProperties(_options2$schemas, _excluded2); + return vnopts.levenUnknownHandler(key, value, Object.assign(Object.assign({}, options2), {}, { + schemas: schemas2 + })); + } : Array.isArray(passThrough) ? (key, value) => !passThrough.includes(key) ? void 0 : { + [key]: value + } : (key, value) => ({ + [key]: value + }); + const descriptor = isCLI ? cliDescriptor : vnopts.apiDescriptor; + const schemas = optionInfosToSchemas(optionInfos, { + isCLI, + colorsModule, + levenshteinDistance + }); + const normalizer = new vnopts.Normalizer(schemas, { + logger, + unknown, + descriptor + }); + const shouldSuppressDuplicateDeprecationWarnings = logger !== false; + if (shouldSuppressDuplicateDeprecationWarnings && hasDeprecationWarned) { + normalizer._hasDeprecationWarned = hasDeprecationWarned; + } + const normalized = normalizer.normalize(options); + if (shouldSuppressDuplicateDeprecationWarnings) { + hasDeprecationWarned = normalizer._hasDeprecationWarned; + } + if (isCLI && normalized["plugin-search"] === false) { + normalized["plugin-search-dir"] = false; + } + return normalized; + } + function optionInfosToSchemas(optionInfos, { + isCLI, + colorsModule, + levenshteinDistance + }) { + const schemas = []; + if (isCLI) { + schemas.push(vnopts.AnySchema.create({ + name: "_" + })); + } + for (const optionInfo of optionInfos) { + schemas.push(optionInfoToSchema(optionInfo, { + isCLI, + optionInfos, + colorsModule, + levenshteinDistance + })); + if (optionInfo.alias && isCLI) { + schemas.push(vnopts.AliasSchema.create({ + name: optionInfo.alias, + sourceName: optionInfo.name + })); + } + } + return schemas; + } + function optionInfoToSchema(optionInfo, { + isCLI, + optionInfos, + colorsModule, + levenshteinDistance + }) { + const { + name + } = optionInfo; + if (name === "plugin-search-dir" || name === "pluginSearchDirs") { + return vnopts.AnySchema.create({ + name, + preprocess(value) { + if (value === false) { + return value; + } + value = Array.isArray(value) ? value : [value]; + return value; + }, + validate(value) { + if (value === false) { + return true; + } + return value.every((dir) => typeof dir === "string"); + }, + expected() { + return "false or paths to plugin search dir"; + } + }); + } + const parameters = { + name + }; + let SchemaConstructor; + const handlers = {}; + switch (optionInfo.type) { + case "int": + SchemaConstructor = vnopts.IntegerSchema; + if (isCLI) { + parameters.preprocess = Number; + } + break; + case "string": + SchemaConstructor = vnopts.StringSchema; + break; + case "choice": + SchemaConstructor = vnopts.ChoiceSchema; + parameters.choices = optionInfo.choices.map((choiceInfo) => typeof choiceInfo === "object" && choiceInfo.redirect ? Object.assign(Object.assign({}, choiceInfo), {}, { + redirect: { + to: { + key: optionInfo.name, + value: choiceInfo.redirect + } + } + }) : choiceInfo); + break; + case "boolean": + SchemaConstructor = vnopts.BooleanSchema; + break; + case "flag": + SchemaConstructor = getFlagSchema({ + colorsModule, + levenshteinDistance + }); + parameters.flags = optionInfos.flatMap((optionInfo2) => [optionInfo2.alias, optionInfo2.description && optionInfo2.name, optionInfo2.oppositeDescription && `no-${optionInfo2.name}`].filter(Boolean)); + break; + case "path": + SchemaConstructor = vnopts.StringSchema; + break; + default: + throw new Error(`Unexpected type ${optionInfo.type}`); + } + if (optionInfo.exception) { + parameters.validate = (value, schema, utils) => optionInfo.exception(value) || schema.validate(value, utils); + } else { + parameters.validate = (value, schema, utils) => value === void 0 || schema.validate(value, utils); + } + if (optionInfo.redirect) { + handlers.redirect = (value) => !value ? void 0 : { + to: { + key: optionInfo.redirect.option, + value: optionInfo.redirect.value + } + }; + } + if (optionInfo.deprecated) { + handlers.deprecated = true; + } + if (isCLI && !optionInfo.array) { + const originalPreprocess = parameters.preprocess || ((x) => x); + parameters.preprocess = (value, schema, utils) => schema.preprocess(originalPreprocess(Array.isArray(value) ? getLast(value) : value), utils); + } + return optionInfo.array ? vnopts.ArraySchema.create(Object.assign(Object.assign(Object.assign({}, isCLI ? { + preprocess: (v) => Array.isArray(v) ? v : [v] + } : {}), handlers), {}, { + valueSchema: SchemaConstructor.create(parameters) + })) : SchemaConstructor.create(Object.assign(Object.assign({}, parameters), handlers)); + } + function normalizeApiOptions(options, optionInfos, opts) { + return normalizeOptions(options, optionInfos, opts); + } + function normalizeCliOptions(options, optionInfos, opts) { + if (false) { + if (!opts.colorsModule) { + throw new Error("'colorsModule' option is required."); + } + if (!opts.levenshteinDistance) { + throw new Error("'levenshteinDistance' option is required."); + } + } + return normalizeOptions(options, optionInfos, Object.assign({ + isCLI: true + }, opts)); + } + module2.exports = { + normalizeApiOptions, + normalizeCliOptions + }; + } +}); +var require_loc = __commonJS2({ + "src/language-js/loc.js"(exports2, module2) { + "use strict"; + var isNonEmptyArray = require_is_non_empty_array(); + function locStart(node) { + var _node$declaration$dec, _node$declaration; + const start = node.range ? node.range[0] : node.start; + const decorators = (_node$declaration$dec = (_node$declaration = node.declaration) === null || _node$declaration === void 0 ? void 0 : _node$declaration.decorators) !== null && _node$declaration$dec !== void 0 ? _node$declaration$dec : node.decorators; + if (isNonEmptyArray(decorators)) { + return Math.min(locStart(decorators[0]), start); + } + return start; + } + function locEnd(node) { + return node.range ? node.range[1] : node.end; + } + function hasSameLocStart(nodeA, nodeB) { + const nodeAStart = locStart(nodeA); + return Number.isInteger(nodeAStart) && nodeAStart === locStart(nodeB); + } + function hasSameLocEnd(nodeA, nodeB) { + const nodeAEnd = locEnd(nodeA); + return Number.isInteger(nodeAEnd) && nodeAEnd === locEnd(nodeB); + } + function hasSameLoc(nodeA, nodeB) { + return hasSameLocStart(nodeA, nodeB) && hasSameLocEnd(nodeA, nodeB); + } + module2.exports = { + locStart, + locEnd, + hasSameLocStart, + hasSameLoc + }; + } +}); +var require_load_parser = __commonJS2({ + "src/main/load-parser.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var { + ConfigError + } = require_errors(); + var { + locStart, + locEnd + } = require_loc(); + function requireParser(parser) { + try { + return { + parse: require(path.resolve(process.cwd(), parser)), + astFormat: "estree", + locStart, + locEnd + }; + } catch { + throw new ConfigError(`Couldn't resolve parser "${parser}"`); + } + } + module2.exports = requireParser; + } +}); +var require_js_tokens = __commonJS2({ + "node_modules/js-tokens/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = /((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g; + exports2.matchToToken = function(match) { + var token = { + type: "invalid", + value: match[0], + closed: void 0 + }; + if (match[1]) + token.type = "string", token.closed = !!(match[3] || match[4]); + else if (match[5]) + token.type = "comment"; + else if (match[6]) + token.type = "comment", token.closed = !!match[7]; + else if (match[8]) + token.type = "regex"; + else if (match[9]) + token.type = "number"; + else if (match[10]) + token.type = "name"; + else if (match[11]) + token.type = "punctuator"; + else if (match[12]) + token.type = "whitespace"; + return token; + }; + } +}); +var require_identifier = __commonJS2({ + "node_modules/@babel/helper-validator-identifier/lib/identifier.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.isIdentifierChar = isIdentifierChar; + exports2.isIdentifierName = isIdentifierName; + exports2.isIdentifierStart = isIdentifierStart; + var nonASCIIidentifierStartChars = "\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC"; + var nonASCIIidentifierChars = "\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F"; + var nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]"); + var nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]"); + nonASCIIidentifierStartChars = nonASCIIidentifierChars = null; + var astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 68, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 349, 41, 7, 1, 79, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 20, 1, 64, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 16, 0, 2, 12, 2, 33, 125, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1071, 18, 5, 4026, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 16, 0, 30, 2, 3, 0, 15, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 7, 5, 262, 61, 147, 44, 11, 6, 17, 0, 322, 29, 19, 43, 485, 27, 757, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4153, 7, 221, 3, 5761, 15, 7472, 3104, 541, 1507, 4938, 6, 4191]; + var astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 81, 2, 71, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 3, 0, 158, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 10, 1, 2, 0, 49, 6, 4, 4, 14, 9, 5351, 0, 7, 14, 13835, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 101, 0, 161, 6, 10, 9, 357, 0, 62, 13, 499, 13, 983, 6, 110, 6, 6, 9, 4759, 9, 787719, 239]; + function isInAstralSet(code, set) { + let pos = 65536; + for (let i = 0, length = set.length; i < length; i += 2) { + pos += set[i]; + if (pos > code) + return false; + pos += set[i + 1]; + if (pos >= code) + return true; + } + return false; + } + function isIdentifierStart(code) { + if (code < 65) + return code === 36; + if (code <= 90) + return true; + if (code < 97) + return code === 95; + if (code <= 122) + return true; + if (code <= 65535) { + return code >= 170 && nonASCIIidentifierStart.test(String.fromCharCode(code)); + } + return isInAstralSet(code, astralIdentifierStartCodes); + } + function isIdentifierChar(code) { + if (code < 48) + return code === 36; + if (code < 58) + return true; + if (code < 65) + return false; + if (code <= 90) + return true; + if (code < 97) + return code === 95; + if (code <= 122) + return true; + if (code <= 65535) { + return code >= 170 && nonASCIIidentifier.test(String.fromCharCode(code)); + } + return isInAstralSet(code, astralIdentifierStartCodes) || isInAstralSet(code, astralIdentifierCodes); + } + function isIdentifierName(name) { + let isFirst = true; + for (let i = 0; i < name.length; i++) { + let cp = name.charCodeAt(i); + if ((cp & 64512) === 55296 && i + 1 < name.length) { + const trail = name.charCodeAt(++i); + if ((trail & 64512) === 56320) { + cp = 65536 + ((cp & 1023) << 10) + (trail & 1023); + } + } + if (isFirst) { + isFirst = false; + if (!isIdentifierStart(cp)) { + return false; + } + } else if (!isIdentifierChar(cp)) { + return false; + } + } + return !isFirst; + } + } +}); +var require_keyword = __commonJS2({ + "node_modules/@babel/helper-validator-identifier/lib/keyword.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.isKeyword = isKeyword; + exports2.isReservedWord = isReservedWord; + exports2.isStrictBindOnlyReservedWord = isStrictBindOnlyReservedWord; + exports2.isStrictBindReservedWord = isStrictBindReservedWord; + exports2.isStrictReservedWord = isStrictReservedWord; + var reservedWords = { + keyword: ["break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete"], + strict: ["implements", "interface", "let", "package", "private", "protected", "public", "static", "yield"], + strictBind: ["eval", "arguments"] + }; + var keywords = new Set(reservedWords.keyword); + var reservedWordsStrictSet = new Set(reservedWords.strict); + var reservedWordsStrictBindSet = new Set(reservedWords.strictBind); + function isReservedWord(word, inModule) { + return inModule && word === "await" || word === "enum"; + } + function isStrictReservedWord(word, inModule) { + return isReservedWord(word, inModule) || reservedWordsStrictSet.has(word); + } + function isStrictBindOnlyReservedWord(word) { + return reservedWordsStrictBindSet.has(word); + } + function isStrictBindReservedWord(word, inModule) { + return isStrictReservedWord(word, inModule) || isStrictBindOnlyReservedWord(word); + } + function isKeyword(word) { + return keywords.has(word); + } + } +}); +var require_lib3 = __commonJS2({ + "node_modules/@babel/helper-validator-identifier/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + Object.defineProperty(exports2, "isIdentifierChar", { + enumerable: true, + get: function() { + return _identifier.isIdentifierChar; + } + }); + Object.defineProperty(exports2, "isIdentifierName", { + enumerable: true, + get: function() { + return _identifier.isIdentifierName; + } + }); + Object.defineProperty(exports2, "isIdentifierStart", { + enumerable: true, + get: function() { + return _identifier.isIdentifierStart; + } + }); + Object.defineProperty(exports2, "isKeyword", { + enumerable: true, + get: function() { + return _keyword.isKeyword; + } + }); + Object.defineProperty(exports2, "isReservedWord", { + enumerable: true, + get: function() { + return _keyword.isReservedWord; + } + }); + Object.defineProperty(exports2, "isStrictBindOnlyReservedWord", { + enumerable: true, + get: function() { + return _keyword.isStrictBindOnlyReservedWord; + } + }); + Object.defineProperty(exports2, "isStrictBindReservedWord", { + enumerable: true, + get: function() { + return _keyword.isStrictBindReservedWord; + } + }); + Object.defineProperty(exports2, "isStrictReservedWord", { + enumerable: true, + get: function() { + return _keyword.isStrictReservedWord; + } + }); + var _identifier = require_identifier(); + var _keyword = require_keyword(); + } +}); +var require_escape_string_regexp2 = __commonJS2({ + "node_modules/@babel/highlight/node_modules/escape-string-regexp/index.js"(exports2, module2) { + "use strict"; + var matchOperatorsRe = /[|\\{}()[\]^$+*?.]/g; + module2.exports = function(str) { + if (typeof str !== "string") { + throw new TypeError("Expected a string"); + } + return str.replace(matchOperatorsRe, "\\$&"); + }; + } +}); +var require_has_flag2 = __commonJS2({ + "node_modules/@babel/highlight/node_modules/has-flag/index.js"(exports2, module2) { + "use strict"; + module2.exports = (flag, argv) => { + argv = argv || process.argv; + const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; + const pos = argv.indexOf(prefix + flag); + const terminatorPos = argv.indexOf("--"); + return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos); + }; + } +}); +var require_supports_color2 = __commonJS2({ + "node_modules/@babel/highlight/node_modules/supports-color/index.js"(exports2, module2) { + "use strict"; + var os = require("os"); + var hasFlag = require_has_flag2(); + var env = process.env; + var forceColor; + if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false")) { + forceColor = false; + } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { + forceColor = true; + } + if ("FORCE_COLOR" in env) { + forceColor = env.FORCE_COLOR.length === 0 || parseInt(env.FORCE_COLOR, 10) !== 0; + } + function translateLevel(level) { + if (level === 0) { + return false; + } + return { + level, + hasBasic: true, + has256: level >= 2, + has16m: level >= 3 + }; + } + function supportsColor(stream) { + if (forceColor === false) { + return 0; + } + if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { + return 3; + } + if (hasFlag("color=256")) { + return 2; + } + if (stream && !stream.isTTY && forceColor !== true) { + return 0; + } + const min = forceColor ? 1 : 0; + if (process.platform === "win32") { + const osRelease = os.release().split("."); + if (Number(process.versions.node.split(".")[0]) >= 8 && Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { + return Number(osRelease[2]) >= 14931 ? 3 : 2; + } + return 1; + } + if ("CI" in env) { + if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI"].some((sign) => sign in env) || env.CI_NAME === "codeship") { + return 1; + } + return min; + } + if ("TEAMCITY_VERSION" in env) { + return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0; + } + if (env.COLORTERM === "truecolor") { + return 3; + } + if ("TERM_PROGRAM" in env) { + const version2 = parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10); + switch (env.TERM_PROGRAM) { + case "iTerm.app": + return version2 >= 3 ? 3 : 2; + case "Apple_Terminal": + return 2; + } + } + if (/-256(color)?$/i.test(env.TERM)) { + return 2; + } + if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) { + return 1; + } + if ("COLORTERM" in env) { + return 1; + } + if (env.TERM === "dumb") { + return min; + } + return min; + } + function getSupportLevel(stream) { + const level = supportsColor(stream); + return translateLevel(level); + } + module2.exports = { + supportsColor: getSupportLevel, + stdout: getSupportLevel(process.stdout), + stderr: getSupportLevel(process.stderr) + }; + } +}); +var require_templates2 = __commonJS2({ + "node_modules/@babel/highlight/node_modules/chalk/templates.js"(exports2, module2) { + "use strict"; + var TEMPLATE_REGEX = /(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi; + var STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g; + var STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/; + var ESCAPE_REGEX = /\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi; + var ESCAPES = /* @__PURE__ */ new Map([["n", "\n"], ["r", "\r"], ["t", " "], ["b", "\b"], ["f", "\f"], ["v", "\v"], ["0", "\0"], ["\\", "\\"], ["e", "\x1B"], ["a", "\x07"]]); + function unescape(c) { + if (c[0] === "u" && c.length === 5 || c[0] === "x" && c.length === 3) { + return String.fromCharCode(parseInt(c.slice(1), 16)); + } + return ESCAPES.get(c) || c; + } + function parseArguments(name, args) { + const results = []; + const chunks = args.trim().split(/\s*,\s*/g); + let matches; + for (const chunk of chunks) { + if (!isNaN(chunk)) { + results.push(Number(chunk)); + } else if (matches = chunk.match(STRING_REGEX)) { + results.push(matches[2].replace(ESCAPE_REGEX, (m, escape, chr) => escape ? unescape(escape) : chr)); + } else { + throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`); + } + } + return results; + } + function parseStyle(style) { + STYLE_REGEX.lastIndex = 0; + const results = []; + let matches; + while ((matches = STYLE_REGEX.exec(style)) !== null) { + const name = matches[1]; + if (matches[2]) { + const args = parseArguments(name, matches[2]); + results.push([name].concat(args)); + } else { + results.push([name]); + } + } + return results; + } + function buildStyle(chalk, styles) { + const enabled = {}; + for (const layer of styles) { + for (const style of layer.styles) { + enabled[style[0]] = layer.inverse ? null : style.slice(1); + } + } + let current = chalk; + for (const styleName of Object.keys(enabled)) { + if (Array.isArray(enabled[styleName])) { + if (!(styleName in current)) { + throw new Error(`Unknown Chalk style: ${styleName}`); + } + if (enabled[styleName].length > 0) { + current = current[styleName].apply(current, enabled[styleName]); + } else { + current = current[styleName]; + } + } + } + return current; + } + module2.exports = (chalk, tmp) => { + const styles = []; + const chunks = []; + let chunk = []; + tmp.replace(TEMPLATE_REGEX, (m, escapeChar, inverse, style, close, chr) => { + if (escapeChar) { + chunk.push(unescape(escapeChar)); + } else if (style) { + const str = chunk.join(""); + chunk = []; + chunks.push(styles.length === 0 ? str : buildStyle(chalk, styles)(str)); + styles.push({ + inverse, + styles: parseStyle(style) + }); + } else if (close) { + if (styles.length === 0) { + throw new Error("Found extraneous } in Chalk template literal"); + } + chunks.push(buildStyle(chalk, styles)(chunk.join(""))); + chunk = []; + styles.pop(); + } else { + chunk.push(chr); + } + }); + chunks.push(chunk.join("")); + if (styles.length > 0) { + const errMsg = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? "" : "s"} (\`}\`)`; + throw new Error(errMsg); + } + return chunks.join(""); + }; + } +}); +var require_chalk2 = __commonJS2({ + "node_modules/@babel/highlight/node_modules/chalk/index.js"(exports2, module2) { + "use strict"; + var escapeStringRegexp2 = require_escape_string_regexp2(); + var ansiStyles = require_ansi_styles(); + var stdoutColor = require_supports_color2().stdout; + var template = require_templates2(); + var isSimpleWindowsTerm = process.platform === "win32" && !(process.env.TERM || "").toLowerCase().startsWith("xterm"); + var levelMapping = ["ansi", "ansi", "ansi256", "ansi16m"]; + var skipModels = /* @__PURE__ */ new Set(["gray"]); + var styles = /* @__PURE__ */ Object.create(null); + function applyOptions(obj, options) { + options = options || {}; + const scLevel = stdoutColor ? stdoutColor.level : 0; + obj.level = options.level === void 0 ? scLevel : options.level; + obj.enabled = "enabled" in options ? options.enabled : obj.level > 0; + } + function Chalk(options) { + if (!this || !(this instanceof Chalk) || this.template) { + const chalk = {}; + applyOptions(chalk, options); + chalk.template = function() { + const args = [].slice.call(arguments); + return chalkTag.apply(null, [chalk.template].concat(args)); + }; + Object.setPrototypeOf(chalk, Chalk.prototype); + Object.setPrototypeOf(chalk.template, chalk); + chalk.template.constructor = Chalk; + return chalk.template; + } + applyOptions(this, options); + } + if (isSimpleWindowsTerm) { + ansiStyles.blue.open = "\x1B[94m"; + } + for (const key of Object.keys(ansiStyles)) { + ansiStyles[key].closeRe = new RegExp(escapeStringRegexp2(ansiStyles[key].close), "g"); + styles[key] = { + get() { + const codes = ansiStyles[key]; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, key); + } + }; + } + styles.visible = { + get() { + return build.call(this, this._styles || [], true, "visible"); + } + }; + ansiStyles.color.closeRe = new RegExp(escapeStringRegexp2(ansiStyles.color.close), "g"); + for (const model of Object.keys(ansiStyles.color.ansi)) { + if (skipModels.has(model)) { + continue; + } + styles[model] = { + get() { + const level = this.level; + return function() { + const open = ansiStyles.color[levelMapping[level]][model].apply(null, arguments); + const codes = { + open, + close: ansiStyles.color.close, + closeRe: ansiStyles.color.closeRe + }; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); + }; + } + }; + } + ansiStyles.bgColor.closeRe = new RegExp(escapeStringRegexp2(ansiStyles.bgColor.close), "g"); + for (const model of Object.keys(ansiStyles.bgColor.ansi)) { + if (skipModels.has(model)) { + continue; + } + const bgModel = "bg" + model[0].toUpperCase() + model.slice(1); + styles[bgModel] = { + get() { + const level = this.level; + return function() { + const open = ansiStyles.bgColor[levelMapping[level]][model].apply(null, arguments); + const codes = { + open, + close: ansiStyles.bgColor.close, + closeRe: ansiStyles.bgColor.closeRe + }; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); + }; + } + }; + } + var proto = Object.defineProperties(() => { + }, styles); + function build(_styles, _empty, key) { + const builder = function() { + return applyStyle.apply(builder, arguments); + }; + builder._styles = _styles; + builder._empty = _empty; + const self2 = this; + Object.defineProperty(builder, "level", { + enumerable: true, + get() { + return self2.level; + }, + set(level) { + self2.level = level; + } + }); + Object.defineProperty(builder, "enabled", { + enumerable: true, + get() { + return self2.enabled; + }, + set(enabled) { + self2.enabled = enabled; + } + }); + builder.hasGrey = this.hasGrey || key === "gray" || key === "grey"; + builder.__proto__ = proto; + return builder; + } + function applyStyle() { + const args = arguments; + const argsLen = args.length; + let str = String(arguments[0]); + if (argsLen === 0) { + return ""; + } + if (argsLen > 1) { + for (let a = 1; a < argsLen; a++) { + str += " " + args[a]; + } + } + if (!this.enabled || this.level <= 0 || !str) { + return this._empty ? "" : str; + } + const originalDim = ansiStyles.dim.open; + if (isSimpleWindowsTerm && this.hasGrey) { + ansiStyles.dim.open = ""; + } + for (const code of this._styles.slice().reverse()) { + str = code.open + str.replace(code.closeRe, code.open) + code.close; + str = str.replace(/\r?\n/g, `${code.close}$&${code.open}`); + } + ansiStyles.dim.open = originalDim; + return str; + } + function chalkTag(chalk, strings) { + if (!Array.isArray(strings)) { + return [].slice.call(arguments, 1).join(" "); + } + const args = [].slice.call(arguments, 2); + const parts = [strings.raw[0]]; + for (let i = 1; i < strings.length; i++) { + parts.push(String(args[i - 1]).replace(/[{}\\]/g, "\\$&")); + parts.push(String(strings.raw[i])); + } + return template(chalk, parts.join("")); + } + Object.defineProperties(Chalk.prototype, styles); + module2.exports = Chalk(); + module2.exports.supportsColor = stdoutColor; + module2.exports.default = module2.exports; + } +}); +var require_lib4 = __commonJS2({ + "node_modules/@babel/highlight/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = highlight; + exports2.getChalk = getChalk; + exports2.shouldHighlight = shouldHighlight; + var _jsTokens = require_js_tokens(); + var _helperValidatorIdentifier = require_lib3(); + var _chalk = require_chalk2(); + var sometimesKeywords = /* @__PURE__ */ new Set(["as", "async", "from", "get", "of", "set"]); + function getDefs(chalk) { + return { + keyword: chalk.cyan, + capitalized: chalk.yellow, + jsxIdentifier: chalk.yellow, + punctuator: chalk.yellow, + number: chalk.magenta, + string: chalk.green, + regex: chalk.magenta, + comment: chalk.grey, + invalid: chalk.white.bgRed.bold + }; + } + var NEWLINE = /\r\n|[\n\r\u2028\u2029]/; + var BRACKET = /^[()[\]{}]$/; + var tokenize; + { + const JSX_TAG = /^[a-z][\w-]*$/i; + const getTokenType = function(token, offset, text) { + if (token.type === "name") { + if ((0, _helperValidatorIdentifier.isKeyword)(token.value) || (0, _helperValidatorIdentifier.isStrictReservedWord)(token.value, true) || sometimesKeywords.has(token.value)) { + return "keyword"; + } + if (JSX_TAG.test(token.value) && (text[offset - 1] === "<" || text.slice(offset - 2, offset) == " colorize(str)).join("\n"); + } else { + highlighted += value; + } + } + return highlighted; + } + function shouldHighlight(options) { + return !!_chalk.supportsColor || options.forceColor; + } + function getChalk(options) { + return options.forceColor ? new _chalk.constructor({ + enabled: true, + level: 1 + }) : _chalk; + } + function highlight(code, options = {}) { + if (code !== "" && shouldHighlight(options)) { + const chalk = getChalk(options); + const defs = getDefs(chalk); + return highlightTokens(defs, code); + } else { + return code; + } + } + } +}); +var require_lib5 = __commonJS2({ + "node_modules/@babel/code-frame/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.codeFrameColumns = codeFrameColumns; + exports2.default = _default; + var _highlight = require_lib4(); + var deprecationWarningShown = false; + function getDefs(chalk) { + return { + gutter: chalk.grey, + marker: chalk.red.bold, + message: chalk.red.bold + }; + } + var NEWLINE = /\r\n|[\n\r\u2028\u2029]/; + function getMarkerLines(loc, source, opts) { + const startLoc = Object.assign({ + column: 0, + line: -1 + }, loc.start); + const endLoc = Object.assign({}, startLoc, loc.end); + const { + linesAbove = 2, + linesBelow = 3 + } = opts || {}; + const startLine = startLoc.line; + const startColumn = startLoc.column; + const endLine = endLoc.line; + const endColumn = endLoc.column; + let start = Math.max(startLine - (linesAbove + 1), 0); + let end = Math.min(source.length, endLine + linesBelow); + if (startLine === -1) { + start = 0; + } + if (endLine === -1) { + end = source.length; + } + const lineDiff = endLine - startLine; + const markerLines = {}; + if (lineDiff) { + for (let i = 0; i <= lineDiff; i++) { + const lineNumber = i + startLine; + if (!startColumn) { + markerLines[lineNumber] = true; + } else if (i === 0) { + const sourceLength = source[lineNumber - 1].length; + markerLines[lineNumber] = [startColumn, sourceLength - startColumn + 1]; + } else if (i === lineDiff) { + markerLines[lineNumber] = [0, endColumn]; + } else { + const sourceLength = source[lineNumber - i].length; + markerLines[lineNumber] = [0, sourceLength]; + } + } + } else { + if (startColumn === endColumn) { + if (startColumn) { + markerLines[startLine] = [startColumn, 0]; + } else { + markerLines[startLine] = true; + } + } else { + markerLines[startLine] = [startColumn, endColumn - startColumn]; + } + } + return { + start, + end, + markerLines + }; + } + function codeFrameColumns(rawLines, loc, opts = {}) { + const highlighted = (opts.highlightCode || opts.forceColor) && (0, _highlight.shouldHighlight)(opts); + const chalk = (0, _highlight.getChalk)(opts); + const defs = getDefs(chalk); + const maybeHighlight = (chalkFn, string) => { + return highlighted ? chalkFn(string) : string; + }; + const lines = rawLines.split(NEWLINE); + const { + start, + end, + markerLines + } = getMarkerLines(loc, lines, opts); + const hasColumns = loc.start && typeof loc.start.column === "number"; + const numberMaxWidth = String(end).length; + const highlightedLines = highlighted ? (0, _highlight.default)(rawLines, opts) : rawLines; + let frame = highlightedLines.split(NEWLINE, end).slice(start, end).map((line, index) => { + const number = start + 1 + index; + const paddedNumber = ` ${number}`.slice(-numberMaxWidth); + const gutter = ` ${paddedNumber} |`; + const hasMarker = markerLines[number]; + const lastMarkerLine = !markerLines[number + 1]; + if (hasMarker) { + let markerLine = ""; + if (Array.isArray(hasMarker)) { + const markerSpacing = line.slice(0, Math.max(hasMarker[0] - 1, 0)).replace(/[^\t]/g, " "); + const numberOfMarkers = hasMarker[1] || 1; + markerLine = ["\n ", maybeHighlight(defs.gutter, gutter.replace(/\d/g, " ")), " ", markerSpacing, maybeHighlight(defs.marker, "^").repeat(numberOfMarkers)].join(""); + if (lastMarkerLine && opts.message) { + markerLine += " " + maybeHighlight(defs.message, opts.message); + } + } + return [maybeHighlight(defs.marker, ">"), maybeHighlight(defs.gutter, gutter), line.length > 0 ? ` ${line}` : "", markerLine].join(""); + } else { + return ` ${maybeHighlight(defs.gutter, gutter)}${line.length > 0 ? ` ${line}` : ""}`; + } + }).join("\n"); + if (opts.message && !hasColumns) { + frame = `${" ".repeat(numberMaxWidth + 1)}${opts.message} +${frame}`; + } + if (highlighted) { + return chalk.reset(frame); + } else { + return frame; + } + } + function _default(rawLines, lineNumber, colNumber, opts = {}) { + if (!deprecationWarningShown) { + deprecationWarningShown = true; + const message = "Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`."; + if (process.emitWarning) { + process.emitWarning(message, "DeprecationWarning"); + } else { + const deprecationError = new Error(message); + deprecationError.name = "DeprecationWarning"; + console.warn(new Error(message)); + } + } + colNumber = Math.max(colNumber, 0); + const location = { + start: { + column: colNumber, + line: lineNumber + } + }; + return codeFrameColumns(rawLines, location, opts); + } + } +}); +var require_parser = __commonJS2({ + "src/main/parser.js"(exports2, module2) { + "use strict"; + var { + ConfigError + } = require_errors(); + var jsLoc = require_loc(); + var loadParser = require_load_parser(); + var { + locStart, + locEnd + } = jsLoc; + var ownNames = Object.getOwnPropertyNames; + var ownDescriptor = Object.getOwnPropertyDescriptor; + function getParsers(options) { + const parsers = {}; + for (const plugin of options.plugins) { + if (!plugin.parsers) { + continue; + } + for (const name of ownNames(plugin.parsers)) { + Object.defineProperty(parsers, name, ownDescriptor(plugin.parsers, name)); + } + } + return parsers; + } + function resolveParser(opts, parsers = getParsers(opts)) { + if (typeof opts.parser === "function") { + return { + parse: opts.parser, + astFormat: "estree", + locStart, + locEnd + }; + } + if (typeof opts.parser === "string") { + if (Object.prototype.hasOwnProperty.call(parsers, opts.parser)) { + return parsers[opts.parser]; + } + if (false) { + throw new ConfigError(`Couldn't resolve parser "${opts.parser}". Parsers must be explicitly added to the standalone bundle.`); + } + return loadParser(opts.parser); + } + } + function parse(text, opts) { + const parsers = getParsers(opts); + const parsersForCustomParserApi = Object.defineProperties({}, Object.fromEntries(Object.keys(parsers).map((parserName) => [parserName, { + enumerable: true, + get() { + return parsers[parserName].parse; + } + }]))); + const parser = resolveParser(opts, parsers); + try { + if (parser.preprocess) { + text = parser.preprocess(text, opts); + } + return { + text, + ast: parser.parse(text, parsersForCustomParserApi, opts) + }; + } catch (error) { + const { + loc + } = error; + if (loc) { + const { + codeFrameColumns + } = require_lib5(); + error.codeFrame = codeFrameColumns(text, loc, { + highlightCode: true + }); + error.message += "\n" + error.codeFrame; + throw error; + } + throw error; + } + } + module2.exports = { + parse, + resolveParser + }; + } +}); +var require_readlines = __commonJS2({ + "node_modules/n-readlines/readlines.js"(exports2, module2) { + "use strict"; + var fs = require("fs"); + var LineByLine = class { + constructor(file, options) { + options = options || {}; + if (!options.readChunk) + options.readChunk = 1024; + if (!options.newLineCharacter) { + options.newLineCharacter = 10; + } else { + options.newLineCharacter = options.newLineCharacter.charCodeAt(0); + } + if (typeof file === "number") { + this.fd = file; + } else { + this.fd = fs.openSync(file, "r"); + } + this.options = options; + this.newLineCharacter = options.newLineCharacter; + this.reset(); + } + _searchInBuffer(buffer, hexNeedle) { + let found = -1; + for (let i = 0; i <= buffer.length; i++) { + let b_byte = buffer[i]; + if (b_byte === hexNeedle) { + found = i; + break; + } + } + return found; + } + reset() { + this.eofReached = false; + this.linesCache = []; + this.fdPosition = 0; + } + close() { + fs.closeSync(this.fd); + this.fd = null; + } + _extractLines(buffer) { + let line; + const lines = []; + let bufferPosition = 0; + let lastNewLineBufferPosition = 0; + while (true) { + let bufferPositionValue = buffer[bufferPosition++]; + if (bufferPositionValue === this.newLineCharacter) { + line = buffer.slice(lastNewLineBufferPosition, bufferPosition); + lines.push(line); + lastNewLineBufferPosition = bufferPosition; + } else if (bufferPositionValue === void 0) { + break; + } + } + let leftovers = buffer.slice(lastNewLineBufferPosition, bufferPosition); + if (leftovers.length) { + lines.push(leftovers); + } + return lines; + } + _readChunk(lineLeftovers) { + let totalBytesRead = 0; + let bytesRead; + const buffers = []; + do { + const readBuffer = new Buffer(this.options.readChunk); + bytesRead = fs.readSync(this.fd, readBuffer, 0, this.options.readChunk, this.fdPosition); + totalBytesRead = totalBytesRead + bytesRead; + this.fdPosition = this.fdPosition + bytesRead; + buffers.push(readBuffer); + } while (bytesRead && this._searchInBuffer(buffers[buffers.length - 1], this.options.newLineCharacter) === -1); + let bufferData = Buffer.concat(buffers); + if (bytesRead < this.options.readChunk) { + this.eofReached = true; + bufferData = bufferData.slice(0, totalBytesRead); + } + if (totalBytesRead) { + this.linesCache = this._extractLines(bufferData); + if (lineLeftovers) { + this.linesCache[0] = Buffer.concat([lineLeftovers, this.linesCache[0]]); + } + } + return totalBytesRead; + } + next() { + if (!this.fd) + return false; + let line = false; + if (this.eofReached && this.linesCache.length === 0) { + return line; + } + let bytesRead; + if (!this.linesCache.length) { + bytesRead = this._readChunk(); + } + if (this.linesCache.length) { + line = this.linesCache.shift(); + const lastLineCharacter = line[line.length - 1]; + if (lastLineCharacter !== this.newLineCharacter) { + bytesRead = this._readChunk(line); + if (bytesRead) { + line = this.linesCache.shift(); + } + } + } + if (this.eofReached && this.linesCache.length === 0) { + this.close(); + } + if (line && line[line.length - 1] === this.newLineCharacter) { + line = line.slice(0, line.length - 1); + } + return line; + } + }; + module2.exports = LineByLine; + } +}); +var require_get_interpreter = __commonJS2({ + "src/utils/get-interpreter.js"(exports2, module2) { + "use strict"; + var fs = require("fs"); + var readlines = require_readlines(); + function getInterpreter(filepath) { + if (typeof filepath !== "string") { + return ""; + } + let fd; + try { + fd = fs.openSync(filepath, "r"); + } catch { + return ""; + } + try { + const liner = new readlines(fd); + const firstLine = liner.next().toString("utf8"); + const m1 = firstLine.match(/^#!\/(?:usr\/)?bin\/env\s+(\S+)/); + if (m1) { + return m1[1]; + } + const m2 = firstLine.match(/^#!\/(?:usr\/(?:local\/)?)?bin\/(\S+)/); + if (m2) { + return m2[1]; + } + return ""; + } catch { + return ""; + } finally { + try { + fs.closeSync(fd); + } catch { + } + } + } + module2.exports = getInterpreter; + } +}); +var require_options = __commonJS2({ + "src/main/options.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var { + UndefinedParserError + } = require_errors(); + var { + getSupportInfo: getSupportInfo2 + } = require_support(); + var normalizer = require_options_normalizer(); + var { + resolveParser + } = require_parser(); + var hiddenDefaults = { + astFormat: "estree", + printer: {}, + originalText: void 0, + locStart: null, + locEnd: null + }; + function normalize(options, opts = {}) { + const rawOptions = Object.assign({}, options); + const supportOptions = getSupportInfo2({ + plugins: options.plugins, + showUnreleased: true, + showDeprecated: true + }).options; + const defaults = Object.assign(Object.assign({}, hiddenDefaults), Object.fromEntries(supportOptions.filter((optionInfo) => optionInfo.default !== void 0).map((option) => [option.name, option.default]))); + if (!rawOptions.parser) { + if (!rawOptions.filepath) { + const logger = opts.logger || console; + logger.warn("No parser and no filepath given, using 'babel' the parser now but this will throw an error in the future. Please specify a parser or a filepath so one can be inferred."); + rawOptions.parser = "babel"; + } else { + rawOptions.parser = inferParser(rawOptions.filepath, rawOptions.plugins); + if (!rawOptions.parser) { + throw new UndefinedParserError(`No parser could be inferred for file: ${rawOptions.filepath}`); + } + } + } + const parser = resolveParser(normalizer.normalizeApiOptions(rawOptions, [supportOptions.find((x) => x.name === "parser")], { + passThrough: true, + logger: false + })); + rawOptions.astFormat = parser.astFormat; + rawOptions.locEnd = parser.locEnd; + rawOptions.locStart = parser.locStart; + const plugin = getPlugin(rawOptions); + rawOptions.printer = plugin.printers[rawOptions.astFormat]; + const pluginDefaults = Object.fromEntries(supportOptions.filter((optionInfo) => optionInfo.pluginDefaults && optionInfo.pluginDefaults[plugin.name] !== void 0).map((optionInfo) => [optionInfo.name, optionInfo.pluginDefaults[plugin.name]])); + const mixedDefaults = Object.assign(Object.assign({}, defaults), pluginDefaults); + for (const [k, value] of Object.entries(mixedDefaults)) { + if (rawOptions[k] === null || rawOptions[k] === void 0) { + rawOptions[k] = value; + } + } + if (rawOptions.parser === "json") { + rawOptions.trailingComma = "none"; + } + return normalizer.normalizeApiOptions(rawOptions, supportOptions, Object.assign({ + passThrough: Object.keys(hiddenDefaults) + }, opts)); + } + function getPlugin(options) { + const { + astFormat + } = options; + if (!astFormat) { + throw new Error("getPlugin() requires astFormat to be set"); + } + const printerPlugin = options.plugins.find((plugin) => plugin.printers && plugin.printers[astFormat]); + if (!printerPlugin) { + throw new Error(`Couldn't find plugin for AST format "${astFormat}"`); + } + return printerPlugin; + } + function inferParser(filepath, plugins2) { + const filename = path.basename(filepath).toLowerCase(); + const languages = getSupportInfo2({ + plugins: plugins2 + }).languages.filter((language2) => language2.since !== null); + let language = languages.find((language2) => language2.extensions && language2.extensions.some((extension) => filename.endsWith(extension)) || language2.filenames && language2.filenames.some((name) => name.toLowerCase() === filename)); + if (!language && !filename.includes(".")) { + const getInterpreter = require_get_interpreter(); + const interpreter = getInterpreter(filepath); + language = languages.find((language2) => language2.interpreters && language2.interpreters.includes(interpreter)); + } + return language && language.parsers[0]; + } + module2.exports = { + normalize, + hiddenDefaults, + inferParser + }; + } +}); +var require_massage_ast = __commonJS2({ + "src/main/massage-ast.js"(exports2, module2) { + "use strict"; + function massageAST(ast, options, parent) { + if (Array.isArray(ast)) { + return ast.map((e) => massageAST(e, options, parent)).filter(Boolean); + } + if (!ast || typeof ast !== "object") { + return ast; + } + const cleanFunction = options.printer.massageAstNode; + let ignoredProperties; + if (cleanFunction && cleanFunction.ignoredProperties) { + ignoredProperties = cleanFunction.ignoredProperties; + } else { + ignoredProperties = /* @__PURE__ */ new Set(); + } + const newObj = {}; + for (const [key, value] of Object.entries(ast)) { + if (!ignoredProperties.has(key) && typeof value !== "function") { + newObj[key] = massageAST(value, options, ast); + } + } + if (cleanFunction) { + const result = cleanFunction(ast, newObj, parent); + if (result === null) { + return; + } + if (result) { + return result; + } + } + return newObj; + } + module2.exports = massageAST; + } +}); +var require_comments = __commonJS2({ + "src/main/comments.js"(exports2, module2) { + "use strict"; + var assert = require("assert"); + var { + builders: { + line, + hardline, + breakParent, + indent, + lineSuffix, + join, + cursor + } + } = require("./doc.js"); + var { + hasNewline, + skipNewline, + skipSpaces, + isPreviousLineEmpty, + addLeadingComment, + addDanglingComment, + addTrailingComment + } = require_util(); + var childNodesCache = /* @__PURE__ */ new WeakMap(); + function getSortedChildNodes(node, options, resultArray) { + if (!node) { + return; + } + const { + printer, + locStart, + locEnd + } = options; + if (resultArray) { + if (printer.canAttachComment && printer.canAttachComment(node)) { + let i; + for (i = resultArray.length - 1; i >= 0; --i) { + if (locStart(resultArray[i]) <= locStart(node) && locEnd(resultArray[i]) <= locEnd(node)) { + break; + } + } + resultArray.splice(i + 1, 0, node); + return; + } + } else if (childNodesCache.has(node)) { + return childNodesCache.get(node); + } + const childNodes = printer.getCommentChildNodes && printer.getCommentChildNodes(node, options) || typeof node === "object" && Object.entries(node).filter(([key]) => key !== "enclosingNode" && key !== "precedingNode" && key !== "followingNode" && key !== "tokens" && key !== "comments" && key !== "parent").map(([, value]) => value); + if (!childNodes) { + return; + } + if (!resultArray) { + resultArray = []; + childNodesCache.set(node, resultArray); + } + for (const childNode of childNodes) { + getSortedChildNodes(childNode, options, resultArray); + } + return resultArray; + } + function decorateComment(node, comment, options, enclosingNode) { + const { + locStart, + locEnd + } = options; + const commentStart = locStart(comment); + const commentEnd = locEnd(comment); + const childNodes = getSortedChildNodes(node, options); + let precedingNode; + let followingNode; + let left = 0; + let right = childNodes.length; + while (left < right) { + const middle = left + right >> 1; + const child = childNodes[middle]; + const start = locStart(child); + const end = locEnd(child); + if (start <= commentStart && commentEnd <= end) { + return decorateComment(child, comment, options, child); + } + if (end <= commentStart) { + precedingNode = child; + left = middle + 1; + continue; + } + if (commentEnd <= start) { + followingNode = child; + right = middle; + continue; + } + throw new Error("Comment location overlaps with node location"); + } + if (enclosingNode && enclosingNode.type === "TemplateLiteral") { + const { + quasis + } = enclosingNode; + const commentIndex = findExpressionIndexForComment(quasis, comment, options); + if (precedingNode && findExpressionIndexForComment(quasis, precedingNode, options) !== commentIndex) { + precedingNode = null; + } + if (followingNode && findExpressionIndexForComment(quasis, followingNode, options) !== commentIndex) { + followingNode = null; + } + } + return { + enclosingNode, + precedingNode, + followingNode + }; + } + var returnFalse = () => false; + function attach(comments, ast, text, options) { + if (!Array.isArray(comments)) { + return; + } + const tiesToBreak = []; + const { + locStart, + locEnd, + printer: { + handleComments = {} + } + } = options; + const { + avoidAstMutation, + ownLine: handleOwnLineComment = returnFalse, + endOfLine: handleEndOfLineComment = returnFalse, + remaining: handleRemainingComment = returnFalse + } = handleComments; + const decoratedComments = comments.map((comment, index) => Object.assign(Object.assign({}, decorateComment(ast, comment, options)), {}, { + comment, + text, + options, + ast, + isLastComment: comments.length - 1 === index + })); + for (const [index, context] of decoratedComments.entries()) { + const { + comment, + precedingNode, + enclosingNode, + followingNode, + text: text2, + options: options2, + ast: ast2, + isLastComment + } = context; + if (options2.parser === "json" || options2.parser === "json5" || options2.parser === "__js_expression" || options2.parser === "__vue_expression" || options2.parser === "__vue_ts_expression") { + if (locStart(comment) - locStart(ast2) <= 0) { + addLeadingComment(ast2, comment); + continue; + } + if (locEnd(comment) - locEnd(ast2) >= 0) { + addTrailingComment(ast2, comment); + continue; + } + } + let args; + if (avoidAstMutation) { + args = [context]; + } else { + comment.enclosingNode = enclosingNode; + comment.precedingNode = precedingNode; + comment.followingNode = followingNode; + args = [comment, text2, options2, ast2, isLastComment]; + } + if (isOwnLineComment(text2, options2, decoratedComments, index)) { + comment.placement = "ownLine"; + if (handleOwnLineComment(...args)) { + } else if (followingNode) { + addLeadingComment(followingNode, comment); + } else if (precedingNode) { + addTrailingComment(precedingNode, comment); + } else if (enclosingNode) { + addDanglingComment(enclosingNode, comment); + } else { + addDanglingComment(ast2, comment); + } + } else if (isEndOfLineComment(text2, options2, decoratedComments, index)) { + comment.placement = "endOfLine"; + if (handleEndOfLineComment(...args)) { + } else if (precedingNode) { + addTrailingComment(precedingNode, comment); + } else if (followingNode) { + addLeadingComment(followingNode, comment); + } else if (enclosingNode) { + addDanglingComment(enclosingNode, comment); + } else { + addDanglingComment(ast2, comment); + } + } else { + comment.placement = "remaining"; + if (handleRemainingComment(...args)) { + } else if (precedingNode && followingNode) { + const tieCount = tiesToBreak.length; + if (tieCount > 0) { + const lastTie = tiesToBreak[tieCount - 1]; + if (lastTie.followingNode !== followingNode) { + breakTies(tiesToBreak, text2, options2); + } + } + tiesToBreak.push(context); + } else if (precedingNode) { + addTrailingComment(precedingNode, comment); + } else if (followingNode) { + addLeadingComment(followingNode, comment); + } else if (enclosingNode) { + addDanglingComment(enclosingNode, comment); + } else { + addDanglingComment(ast2, comment); + } + } + } + breakTies(tiesToBreak, text, options); + if (!avoidAstMutation) { + for (const comment of comments) { + delete comment.precedingNode; + delete comment.enclosingNode; + delete comment.followingNode; + } + } + } + var isAllEmptyAndNoLineBreak = (text) => !/[\S\n\u2028\u2029]/.test(text); + function isOwnLineComment(text, options, decoratedComments, commentIndex) { + const { + comment, + precedingNode + } = decoratedComments[commentIndex]; + const { + locStart, + locEnd + } = options; + let start = locStart(comment); + if (precedingNode) { + for (let index = commentIndex - 1; index >= 0; index--) { + const { + comment: comment2, + precedingNode: currentCommentPrecedingNode + } = decoratedComments[index]; + if (currentCommentPrecedingNode !== precedingNode || !isAllEmptyAndNoLineBreak(text.slice(locEnd(comment2), start))) { + break; + } + start = locStart(comment2); + } + } + return hasNewline(text, start, { + backwards: true + }); + } + function isEndOfLineComment(text, options, decoratedComments, commentIndex) { + const { + comment, + followingNode + } = decoratedComments[commentIndex]; + const { + locStart, + locEnd + } = options; + let end = locEnd(comment); + if (followingNode) { + for (let index = commentIndex + 1; index < decoratedComments.length; index++) { + const { + comment: comment2, + followingNode: currentCommentFollowingNode + } = decoratedComments[index]; + if (currentCommentFollowingNode !== followingNode || !isAllEmptyAndNoLineBreak(text.slice(end, locStart(comment2)))) { + break; + } + end = locEnd(comment2); + } + } + return hasNewline(text, end); + } + function breakTies(tiesToBreak, text, options) { + const tieCount = tiesToBreak.length; + if (tieCount === 0) { + return; + } + const { + precedingNode, + followingNode, + enclosingNode + } = tiesToBreak[0]; + const gapRegExp = options.printer.getGapRegex && options.printer.getGapRegex(enclosingNode) || /^[\s(]*$/; + let gapEndPos = options.locStart(followingNode); + let indexOfFirstLeadingComment; + for (indexOfFirstLeadingComment = tieCount; indexOfFirstLeadingComment > 0; --indexOfFirstLeadingComment) { + const { + comment, + precedingNode: currentCommentPrecedingNode, + followingNode: currentCommentFollowingNode + } = tiesToBreak[indexOfFirstLeadingComment - 1]; + assert.strictEqual(currentCommentPrecedingNode, precedingNode); + assert.strictEqual(currentCommentFollowingNode, followingNode); + const gap = text.slice(options.locEnd(comment), gapEndPos); + if (gapRegExp.test(gap)) { + gapEndPos = options.locStart(comment); + } else { + break; + } + } + for (const [i, { + comment + }] of tiesToBreak.entries()) { + if (i < indexOfFirstLeadingComment) { + addTrailingComment(precedingNode, comment); + } else { + addLeadingComment(followingNode, comment); + } + } + for (const node of [precedingNode, followingNode]) { + if (node.comments && node.comments.length > 1) { + node.comments.sort((a, b) => options.locStart(a) - options.locStart(b)); + } + } + tiesToBreak.length = 0; + } + function printComment(path, options) { + const comment = path.getValue(); + comment.printed = true; + return options.printer.printComment(path, options); + } + function findExpressionIndexForComment(quasis, comment, options) { + const startPos = options.locStart(comment) - 1; + for (let i = 1; i < quasis.length; ++i) { + if (startPos < options.locStart(quasis[i])) { + return i - 1; + } + } + return 0; + } + function printLeadingComment(path, options) { + const comment = path.getValue(); + const parts = [printComment(path, options)]; + const { + printer, + originalText, + locStart, + locEnd + } = options; + const isBlock = printer.isBlockComment && printer.isBlockComment(comment); + if (isBlock) { + const lineBreak = hasNewline(originalText, locEnd(comment)) ? hasNewline(originalText, locStart(comment), { + backwards: true + }) ? hardline : line : " "; + parts.push(lineBreak); + } else { + parts.push(hardline); + } + const index = skipNewline(originalText, skipSpaces(originalText, locEnd(comment))); + if (index !== false && hasNewline(originalText, index)) { + parts.push(hardline); + } + return parts; + } + function printTrailingComment(path, options) { + const comment = path.getValue(); + const printed = printComment(path, options); + const { + printer, + originalText, + locStart + } = options; + const isBlock = printer.isBlockComment && printer.isBlockComment(comment); + if (hasNewline(originalText, locStart(comment), { + backwards: true + })) { + const isLineBeforeEmpty = isPreviousLineEmpty(originalText, comment, locStart); + return lineSuffix([hardline, isLineBeforeEmpty ? hardline : "", printed]); + } + let parts = [" ", printed]; + if (!isBlock) { + parts = [lineSuffix(parts), breakParent]; + } + return parts; + } + function printDanglingComments(path, options, sameIndent, filter) { + const parts = []; + const node = path.getValue(); + if (!node || !node.comments) { + return ""; + } + path.each(() => { + const comment = path.getValue(); + if (!comment.leading && !comment.trailing && (!filter || filter(comment))) { + parts.push(printComment(path, options)); + } + }, "comments"); + if (parts.length === 0) { + return ""; + } + if (sameIndent) { + return join(hardline, parts); + } + return indent([hardline, join(hardline, parts)]); + } + function printCommentsSeparately(path, options, ignored) { + const value = path.getValue(); + if (!value) { + return {}; + } + let comments = value.comments || []; + if (ignored) { + comments = comments.filter((comment) => !ignored.has(comment)); + } + const isCursorNode = value === options.cursorNode; + if (comments.length === 0) { + const maybeCursor = isCursorNode ? cursor : ""; + return { + leading: maybeCursor, + trailing: maybeCursor + }; + } + const leadingParts = []; + const trailingParts = []; + path.each(() => { + const comment = path.getValue(); + if (ignored && ignored.has(comment)) { + return; + } + const { + leading, + trailing + } = comment; + if (leading) { + leadingParts.push(printLeadingComment(path, options)); + } else if (trailing) { + trailingParts.push(printTrailingComment(path, options)); + } + }, "comments"); + if (isCursorNode) { + leadingParts.unshift(cursor); + trailingParts.push(cursor); + } + return { + leading: leadingParts, + trailing: trailingParts + }; + } + function printComments(path, doc2, options, ignored) { + const { + leading, + trailing + } = printCommentsSeparately(path, options, ignored); + if (!leading && !trailing) { + return doc2; + } + return [leading, doc2, trailing]; + } + function ensureAllCommentsPrinted(astComments) { + if (!astComments) { + return; + } + for (const comment of astComments) { + if (!comment.printed) { + throw new Error('Comment "' + comment.value.trim() + '" was not printed. Please report this error!'); + } + delete comment.printed; + } + } + module2.exports = { + attach, + printComments, + printCommentsSeparately, + printDanglingComments, + getSortedChildNodes, + ensureAllCommentsPrinted + }; + } +}); +var require_ast_path = __commonJS2({ + "src/common/ast-path.js"(exports2, module2) { + "use strict"; + var getLast = require_get_last(); + function getNodeHelper(path, count) { + const stackIndex = getNodeStackIndexHelper(path.stack, count); + return stackIndex === -1 ? null : path.stack[stackIndex]; + } + function getNodeStackIndexHelper(stack, count) { + for (let i = stack.length - 1; i >= 0; i -= 2) { + const value = stack[i]; + if (value && !Array.isArray(value) && --count < 0) { + return i; + } + } + return -1; + } + var AstPath = class { + constructor(value) { + this.stack = [value]; + } + getName() { + const { + stack + } = this; + const { + length + } = stack; + if (length > 1) { + return stack[length - 2]; + } + return null; + } + getValue() { + return getLast(this.stack); + } + getNode(count = 0) { + return getNodeHelper(this, count); + } + getParentNode(count = 0) { + return getNodeHelper(this, count + 1); + } + call(callback, ...names) { + const { + stack + } = this; + const { + length + } = stack; + let value = getLast(stack); + for (const name of names) { + value = value[name]; + stack.push(name, value); + } + const result = callback(this); + stack.length = length; + return result; + } + callParent(callback, count = 0) { + const stackIndex = getNodeStackIndexHelper(this.stack, count + 1); + const parentValues = this.stack.splice(stackIndex + 1); + const result = callback(this); + this.stack.push(...parentValues); + return result; + } + each(callback, ...names) { + const { + stack + } = this; + const { + length + } = stack; + let value = getLast(stack); + for (const name of names) { + value = value[name]; + stack.push(name, value); + } + for (let i = 0; i < value.length; ++i) { + stack.push(i, value[i]); + callback(this, i, value); + stack.length -= 2; + } + stack.length = length; + } + map(callback, ...names) { + const result = []; + this.each((path, index, value) => { + result[index] = callback(path, index, value); + }, ...names); + return result; + } + try(callback) { + const { + stack + } = this; + const stackBackup = [...stack]; + try { + return callback(); + } finally { + stack.length = 0; + stack.push(...stackBackup); + } + } + match(...predicates) { + let stackPointer = this.stack.length - 1; + let name = null; + let node = this.stack[stackPointer--]; + for (const predicate of predicates) { + if (node === void 0) { + return false; + } + let number = null; + if (typeof name === "number") { + number = name; + name = this.stack[stackPointer--]; + node = this.stack[stackPointer--]; + } + if (predicate && !predicate(node, name, number)) { + return false; + } + name = this.stack[stackPointer--]; + node = this.stack[stackPointer--]; + } + return true; + } + findAncestor(predicate) { + let stackPointer = this.stack.length - 1; + let name = null; + let node = this.stack[stackPointer--]; + while (node) { + let number = null; + if (typeof name === "number") { + number = name; + name = this.stack[stackPointer--]; + node = this.stack[stackPointer--]; + } + if (name !== null && predicate(node, name, number)) { + return node; + } + name = this.stack[stackPointer--]; + node = this.stack[stackPointer--]; + } + } + }; + module2.exports = AstPath; + } +}); +var require_multiparser = __commonJS2({ + "src/main/multiparser.js"(exports2, module2) { + "use strict"; + var { + utils: { + stripTrailingHardline + } + } = require("./doc.js"); + var { + normalize + } = require_options(); + var comments = require_comments(); + function printSubtree(path, print, options, printAstToDoc) { + if (options.printer.embed && options.embeddedLanguageFormatting === "auto") { + return options.printer.embed(path, print, (text, partialNextOptions, textToDocOptions) => textToDoc(text, partialNextOptions, options, printAstToDoc, textToDocOptions), options); + } + } + function textToDoc(text, partialNextOptions, parentOptions, printAstToDoc, { + stripTrailingHardline: shouldStripTrailingHardline = false + } = {}) { + const nextOptions = normalize(Object.assign(Object.assign(Object.assign({}, parentOptions), partialNextOptions), {}, { + parentParser: parentOptions.parser, + originalText: text + }), { + passThrough: true + }); + const result = require_parser().parse(text, nextOptions); + const { + ast + } = result; + text = result.text; + const astComments = ast.comments; + delete ast.comments; + comments.attach(astComments, ast, text, nextOptions); + nextOptions[Symbol.for("comments")] = astComments || []; + nextOptions[Symbol.for("tokens")] = ast.tokens || []; + const doc2 = printAstToDoc(ast, nextOptions); + comments.ensureAllCommentsPrinted(astComments); + if (shouldStripTrailingHardline) { + if (typeof doc2 === "string") { + return doc2.replace(/(?:\r?\n)*$/, ""); + } + return stripTrailingHardline(doc2); + } + return doc2; + } + module2.exports = { + printSubtree + }; + } +}); +var require_ast_to_doc = __commonJS2({ + "src/main/ast-to-doc.js"(exports2, module2) { + "use strict"; + var AstPath = require_ast_path(); + var { + builders: { + hardline, + addAlignmentToDoc + }, + utils: { + propagateBreaks + } + } = require("./doc.js"); + var { + printComments + } = require_comments(); + var multiparser = require_multiparser(); + function printAstToDoc(ast, options, alignmentSize = 0) { + const { + printer + } = options; + if (printer.preprocess) { + ast = printer.preprocess(ast, options); + } + const cache = /* @__PURE__ */ new Map(); + const path = new AstPath(ast); + let doc2 = mainPrint(); + if (alignmentSize > 0) { + doc2 = addAlignmentToDoc([hardline, doc2], alignmentSize, options.tabWidth); + } + propagateBreaks(doc2); + return doc2; + function mainPrint(selector, args) { + if (selector === void 0 || selector === path) { + return mainPrintInternal(args); + } + if (Array.isArray(selector)) { + return path.call(() => mainPrintInternal(args), ...selector); + } + return path.call(() => mainPrintInternal(args), selector); + } + function mainPrintInternal(args) { + const value = path.getValue(); + const shouldCache = value && typeof value === "object" && args === void 0; + if (shouldCache && cache.has(value)) { + return cache.get(value); + } + const doc3 = callPluginPrintFunction(path, options, mainPrint, args); + if (shouldCache) { + cache.set(value, doc3); + } + return doc3; + } + } + function printPrettierIgnoredNode(node, options) { + const { + originalText, + [Symbol.for("comments")]: comments, + locStart, + locEnd + } = options; + const start = locStart(node); + const end = locEnd(node); + const printedComments = /* @__PURE__ */ new Set(); + for (const comment of comments) { + if (locStart(comment) >= start && locEnd(comment) <= end) { + comment.printed = true; + printedComments.add(comment); + } + } + return { + doc: originalText.slice(start, end), + printedComments + }; + } + function callPluginPrintFunction(path, options, printPath, args) { + const node = path.getValue(); + const { + printer + } = options; + let doc2; + let printedComments; + if (printer.hasPrettierIgnore && printer.hasPrettierIgnore(path)) { + ({ + doc: doc2, + printedComments + } = printPrettierIgnoredNode(node, options)); + } else { + if (node) { + try { + doc2 = multiparser.printSubtree(path, printPath, options, printAstToDoc); + } catch (error) { + if (process.env.PRETTIER_DEBUG) { + throw error; + } + } + } + if (!doc2) { + doc2 = printer.print(path, options, printPath, args); + } + } + if (!printer.willPrintOwnComments || !printer.willPrintOwnComments(path, options)) { + doc2 = printComments(path, doc2, options, printedComments); + } + return doc2; + } + module2.exports = printAstToDoc; + } +}); +var require_range_util = __commonJS2({ + "src/main/range-util.js"(exports2, module2) { + "use strict"; + var assert = require("assert"); + var comments = require_comments(); + var isJsonParser = ({ + parser + }) => parser === "json" || parser === "json5" || parser === "json-stringify"; + function findCommonAncestor(startNodeAndParents, endNodeAndParents) { + const startNodeAndAncestors = [startNodeAndParents.node, ...startNodeAndParents.parentNodes]; + const endNodeAndAncestors = /* @__PURE__ */ new Set([endNodeAndParents.node, ...endNodeAndParents.parentNodes]); + return startNodeAndAncestors.find((node) => jsonSourceElements.has(node.type) && endNodeAndAncestors.has(node)); + } + function dropRootParents(parents) { + let lastParentIndex = parents.length - 1; + for (; ; ) { + const parent = parents[lastParentIndex]; + if (parent && (parent.type === "Program" || parent.type === "File")) { + lastParentIndex--; + } else { + break; + } + } + return parents.slice(0, lastParentIndex + 1); + } + function findSiblingAncestors(startNodeAndParents, endNodeAndParents, { + locStart, + locEnd + }) { + let resultStartNode = startNodeAndParents.node; + let resultEndNode = endNodeAndParents.node; + if (resultStartNode === resultEndNode) { + return { + startNode: resultStartNode, + endNode: resultEndNode + }; + } + const startNodeStart = locStart(startNodeAndParents.node); + for (const endParent of dropRootParents(endNodeAndParents.parentNodes)) { + if (locStart(endParent) >= startNodeStart) { + resultEndNode = endParent; + } else { + break; + } + } + const endNodeEnd = locEnd(endNodeAndParents.node); + for (const startParent of dropRootParents(startNodeAndParents.parentNodes)) { + if (locEnd(startParent) <= endNodeEnd) { + resultStartNode = startParent; + } else { + break; + } + if (resultStartNode === resultEndNode) { + break; + } + } + return { + startNode: resultStartNode, + endNode: resultEndNode + }; + } + function findNodeAtOffset(node, offset, options, predicate, parentNodes = [], type) { + const { + locStart, + locEnd + } = options; + const start = locStart(node); + const end = locEnd(node); + if (offset > end || offset < start || type === "rangeEnd" && offset === start || type === "rangeStart" && offset === end) { + return; + } + for (const childNode of comments.getSortedChildNodes(node, options)) { + const childResult = findNodeAtOffset(childNode, offset, options, predicate, [node, ...parentNodes], type); + if (childResult) { + return childResult; + } + } + if (!predicate || predicate(node, parentNodes[0])) { + return { + node, + parentNodes + }; + } + } + function isJsSourceElement(type, parentType) { + return parentType !== "DeclareExportDeclaration" && type !== "TypeParameterDeclaration" && (type === "Directive" || type === "TypeAlias" || type === "TSExportAssignment" || type.startsWith("Declare") || type.startsWith("TSDeclare") || type.endsWith("Statement") || type.endsWith("Declaration")); + } + var jsonSourceElements = /* @__PURE__ */ new Set(["ObjectExpression", "ArrayExpression", "StringLiteral", "NumericLiteral", "BooleanLiteral", "NullLiteral", "UnaryExpression", "TemplateLiteral"]); + var graphqlSourceElements = /* @__PURE__ */ new Set(["OperationDefinition", "FragmentDefinition", "VariableDefinition", "TypeExtensionDefinition", "ObjectTypeDefinition", "FieldDefinition", "DirectiveDefinition", "EnumTypeDefinition", "EnumValueDefinition", "InputValueDefinition", "InputObjectTypeDefinition", "SchemaDefinition", "OperationTypeDefinition", "InterfaceTypeDefinition", "UnionTypeDefinition", "ScalarTypeDefinition"]); + function isSourceElement(opts, node, parentNode) { + if (!node) { + return false; + } + switch (opts.parser) { + case "flow": + case "babel": + case "babel-flow": + case "babel-ts": + case "typescript": + case "acorn": + case "espree": + case "meriyah": + case "__babel_estree": + return isJsSourceElement(node.type, parentNode && parentNode.type); + case "json": + case "json5": + case "json-stringify": + return jsonSourceElements.has(node.type); + case "graphql": + return graphqlSourceElements.has(node.kind); + case "vue": + return node.tag !== "root"; + } + return false; + } + function calculateRange(text, opts, ast) { + let { + rangeStart: start, + rangeEnd: end, + locStart, + locEnd + } = opts; + assert.ok(end > start); + const firstNonWhitespaceCharacterIndex = text.slice(start, end).search(/\S/); + const isAllWhitespace = firstNonWhitespaceCharacterIndex === -1; + if (!isAllWhitespace) { + start += firstNonWhitespaceCharacterIndex; + for (; end > start; --end) { + if (/\S/.test(text[end - 1])) { + break; + } + } + } + const startNodeAndParents = findNodeAtOffset(ast, start, opts, (node, parentNode) => isSourceElement(opts, node, parentNode), [], "rangeStart"); + const endNodeAndParents = isAllWhitespace ? startNodeAndParents : findNodeAtOffset(ast, end, opts, (node) => isSourceElement(opts, node), [], "rangeEnd"); + if (!startNodeAndParents || !endNodeAndParents) { + return { + rangeStart: 0, + rangeEnd: 0 + }; + } + let startNode; + let endNode; + if (isJsonParser(opts)) { + const commonAncestor = findCommonAncestor(startNodeAndParents, endNodeAndParents); + startNode = commonAncestor; + endNode = commonAncestor; + } else { + ({ + startNode, + endNode + } = findSiblingAncestors(startNodeAndParents, endNodeAndParents, opts)); + } + return { + rangeStart: Math.min(locStart(startNode), locStart(endNode)), + rangeEnd: Math.max(locEnd(startNode), locEnd(endNode)) + }; + } + module2.exports = { + calculateRange, + findNodeAtOffset + }; + } +}); +var require_core = __commonJS2({ + "src/main/core.js"(exports2, module2) { + "use strict"; + var { + diffArrays + } = require_array(); + var { + printer: { + printDocToString + }, + debug: { + printDocToDebug + } + } = require("./doc.js"); + var { + getAlignmentSize + } = require_util(); + var { + guessEndOfLine, + convertEndOfLineToChars, + countEndOfLineChars, + normalizeEndOfLine + } = require_end_of_line(); + var normalizeOptions = require_options().normalize; + var massageAST = require_massage_ast(); + var comments = require_comments(); + var parser = require_parser(); + var printAstToDoc = require_ast_to_doc(); + var rangeUtil = require_range_util(); + var BOM = "\uFEFF"; + var CURSOR = Symbol("cursor"); + function attachComments(text, ast, opts) { + const astComments = ast.comments; + if (astComments) { + delete ast.comments; + comments.attach(astComments, ast, text, opts); + } + opts[Symbol.for("comments")] = astComments || []; + opts[Symbol.for("tokens")] = ast.tokens || []; + opts.originalText = text; + return astComments; + } + function coreFormat(originalText, opts, addAlignmentSize = 0) { + if (!originalText || originalText.trim().length === 0) { + return { + formatted: "", + cursorOffset: -1, + comments: [] + }; + } + const { + ast, + text + } = parser.parse(originalText, opts); + if (opts.cursorOffset >= 0) { + const nodeResult = rangeUtil.findNodeAtOffset(ast, opts.cursorOffset, opts); + if (nodeResult && nodeResult.node) { + opts.cursorNode = nodeResult.node; + } + } + const astComments = attachComments(text, ast, opts); + const doc2 = printAstToDoc(ast, opts, addAlignmentSize); + const result = printDocToString(doc2, opts); + comments.ensureAllCommentsPrinted(astComments); + if (addAlignmentSize > 0) { + const trimmed = result.formatted.trim(); + if (result.cursorNodeStart !== void 0) { + result.cursorNodeStart -= result.formatted.indexOf(trimmed); + } + result.formatted = trimmed + convertEndOfLineToChars(opts.endOfLine); + } + if (opts.cursorOffset >= 0) { + let oldCursorNodeStart; + let oldCursorNodeText; + let cursorOffsetRelativeToOldCursorNode; + let newCursorNodeStart; + let newCursorNodeText; + if (opts.cursorNode && result.cursorNodeText) { + oldCursorNodeStart = opts.locStart(opts.cursorNode); + oldCursorNodeText = text.slice(oldCursorNodeStart, opts.locEnd(opts.cursorNode)); + cursorOffsetRelativeToOldCursorNode = opts.cursorOffset - oldCursorNodeStart; + newCursorNodeStart = result.cursorNodeStart; + newCursorNodeText = result.cursorNodeText; + } else { + oldCursorNodeStart = 0; + oldCursorNodeText = text; + cursorOffsetRelativeToOldCursorNode = opts.cursorOffset; + newCursorNodeStart = 0; + newCursorNodeText = result.formatted; + } + if (oldCursorNodeText === newCursorNodeText) { + return { + formatted: result.formatted, + cursorOffset: newCursorNodeStart + cursorOffsetRelativeToOldCursorNode, + comments: astComments + }; + } + const oldCursorNodeCharArray = [...oldCursorNodeText]; + oldCursorNodeCharArray.splice(cursorOffsetRelativeToOldCursorNode, 0, CURSOR); + const newCursorNodeCharArray = [...newCursorNodeText]; + const cursorNodeDiff = diffArrays(oldCursorNodeCharArray, newCursorNodeCharArray); + let cursorOffset = newCursorNodeStart; + for (const entry of cursorNodeDiff) { + if (entry.removed) { + if (entry.value.includes(CURSOR)) { + break; + } + } else { + cursorOffset += entry.count; + } + } + return { + formatted: result.formatted, + cursorOffset, + comments: astComments + }; + } + return { + formatted: result.formatted, + cursorOffset: -1, + comments: astComments + }; + } + function formatRange(originalText, opts) { + const { + ast, + text + } = parser.parse(originalText, opts); + const { + rangeStart, + rangeEnd + } = rangeUtil.calculateRange(text, opts, ast); + const rangeString = text.slice(rangeStart, rangeEnd); + const rangeStart2 = Math.min(rangeStart, text.lastIndexOf("\n", rangeStart) + 1); + const indentString = text.slice(rangeStart2, rangeStart).match(/^\s*/)[0]; + const alignmentSize = getAlignmentSize(indentString, opts.tabWidth); + const rangeResult = coreFormat(rangeString, Object.assign(Object.assign({}, opts), {}, { + rangeStart: 0, + rangeEnd: Number.POSITIVE_INFINITY, + cursorOffset: opts.cursorOffset > rangeStart && opts.cursorOffset <= rangeEnd ? opts.cursorOffset - rangeStart : -1, + endOfLine: "lf" + }), alignmentSize); + const rangeTrimmed = rangeResult.formatted.trimEnd(); + let { + cursorOffset + } = opts; + if (cursorOffset > rangeEnd) { + cursorOffset += rangeTrimmed.length - rangeString.length; + } else if (rangeResult.cursorOffset >= 0) { + cursorOffset = rangeResult.cursorOffset + rangeStart; + } + let formatted = text.slice(0, rangeStart) + rangeTrimmed + text.slice(rangeEnd); + if (opts.endOfLine !== "lf") { + const eol = convertEndOfLineToChars(opts.endOfLine); + if (cursorOffset >= 0 && eol === "\r\n") { + cursorOffset += countEndOfLineChars(formatted.slice(0, cursorOffset), "\n"); + } + formatted = formatted.replace(/\n/g, eol); + } + return { + formatted, + cursorOffset, + comments: rangeResult.comments + }; + } + function ensureIndexInText(text, index, defaultValue) { + if (typeof index !== "number" || Number.isNaN(index) || index < 0 || index > text.length) { + return defaultValue; + } + return index; + } + function normalizeIndexes(text, options) { + let { + cursorOffset, + rangeStart, + rangeEnd + } = options; + cursorOffset = ensureIndexInText(text, cursorOffset, -1); + rangeStart = ensureIndexInText(text, rangeStart, 0); + rangeEnd = ensureIndexInText(text, rangeEnd, text.length); + return Object.assign(Object.assign({}, options), {}, { + cursorOffset, + rangeStart, + rangeEnd + }); + } + function normalizeInputAndOptions(text, options) { + let { + cursorOffset, + rangeStart, + rangeEnd, + endOfLine + } = normalizeIndexes(text, options); + const hasBOM = text.charAt(0) === BOM; + if (hasBOM) { + text = text.slice(1); + cursorOffset--; + rangeStart--; + rangeEnd--; + } + if (endOfLine === "auto") { + endOfLine = guessEndOfLine(text); + } + if (text.includes("\r")) { + const countCrlfBefore = (index) => countEndOfLineChars(text.slice(0, Math.max(index, 0)), "\r\n"); + cursorOffset -= countCrlfBefore(cursorOffset); + rangeStart -= countCrlfBefore(rangeStart); + rangeEnd -= countCrlfBefore(rangeEnd); + text = normalizeEndOfLine(text); + } + return { + hasBOM, + text, + options: normalizeIndexes(text, Object.assign(Object.assign({}, options), {}, { + cursorOffset, + rangeStart, + rangeEnd, + endOfLine + })) + }; + } + function hasPragma(text, options) { + const selectedParser = parser.resolveParser(options); + return !selectedParser.hasPragma || selectedParser.hasPragma(text); + } + function formatWithCursor2(originalText, originalOptions) { + let { + hasBOM, + text, + options + } = normalizeInputAndOptions(originalText, normalizeOptions(originalOptions)); + if (options.rangeStart >= options.rangeEnd && text !== "" || options.requirePragma && !hasPragma(text, options)) { + return { + formatted: originalText, + cursorOffset: originalOptions.cursorOffset, + comments: [] + }; + } + let result; + if (options.rangeStart > 0 || options.rangeEnd < text.length) { + result = formatRange(text, options); + } else { + if (!options.requirePragma && options.insertPragma && options.printer.insertPragma && !hasPragma(text, options)) { + text = options.printer.insertPragma(text); + } + result = coreFormat(text, options); + } + if (hasBOM) { + result.formatted = BOM + result.formatted; + if (result.cursorOffset >= 0) { + result.cursorOffset++; + } + } + return result; + } + module2.exports = { + formatWithCursor: formatWithCursor2, + parse(originalText, originalOptions, massage) { + const { + text, + options + } = normalizeInputAndOptions(originalText, normalizeOptions(originalOptions)); + const parsed = parser.parse(text, options); + if (massage) { + parsed.ast = massageAST(parsed.ast, options); + } + return parsed; + }, + formatAST(ast, options) { + options = normalizeOptions(options); + const doc2 = printAstToDoc(ast, options); + return printDocToString(doc2, options); + }, + formatDoc(doc2, options) { + return formatWithCursor2(printDocToDebug(doc2), Object.assign(Object.assign({}, options), {}, { + parser: "__js_expression" + })).formatted; + }, + printToDoc(originalText, options) { + options = normalizeOptions(options); + const { + ast, + text + } = parser.parse(originalText, options); + attachComments(text, ast, options); + return printAstToDoc(ast, options); + }, + printDocToString(doc2, options) { + return printDocToString(doc2, normalizeOptions(options)); + } + }; + } +}); +var require_utils2 = __commonJS2({ + "node_modules/braces/lib/utils.js"(exports2) { + "use strict"; + exports2.isInteger = (num) => { + if (typeof num === "number") { + return Number.isInteger(num); + } + if (typeof num === "string" && num.trim() !== "") { + return Number.isInteger(Number(num)); + } + return false; + }; + exports2.find = (node, type) => node.nodes.find((node2) => node2.type === type); + exports2.exceedsLimit = (min, max, step = 1, limit) => { + if (limit === false) + return false; + if (!exports2.isInteger(min) || !exports2.isInteger(max)) + return false; + return (Number(max) - Number(min)) / Number(step) >= limit; + }; + exports2.escapeNode = (block, n = 0, type) => { + let node = block.nodes[n]; + if (!node) + return; + if (type && node.type === type || node.type === "open" || node.type === "close") { + if (node.escaped !== true) { + node.value = "\\" + node.value; + node.escaped = true; + } + } + }; + exports2.encloseBrace = (node) => { + if (node.type !== "brace") + return false; + if (node.commas >> 0 + node.ranges >> 0 === 0) { + node.invalid = true; + return true; + } + return false; + }; + exports2.isInvalidBrace = (block) => { + if (block.type !== "brace") + return false; + if (block.invalid === true || block.dollar) + return true; + if (block.commas >> 0 + block.ranges >> 0 === 0) { + block.invalid = true; + return true; + } + if (block.open !== true || block.close !== true) { + block.invalid = true; + return true; + } + return false; + }; + exports2.isOpenOrClose = (node) => { + if (node.type === "open" || node.type === "close") { + return true; + } + return node.open === true || node.close === true; + }; + exports2.reduce = (nodes) => nodes.reduce((acc, node) => { + if (node.type === "text") + acc.push(node.value); + if (node.type === "range") + node.type = "text"; + return acc; + }, []); + exports2.flatten = (...args) => { + const result = []; + const flat = (arr) => { + for (let i = 0; i < arr.length; i++) { + let ele = arr[i]; + Array.isArray(ele) ? flat(ele, result) : ele !== void 0 && result.push(ele); + } + return result; + }; + flat(args); + return result; + }; + } +}); +var require_stringify = __commonJS2({ + "node_modules/braces/lib/stringify.js"(exports2, module2) { + "use strict"; + var utils = require_utils2(); + module2.exports = (ast, options = {}) => { + let stringify = (node, parent = {}) => { + let invalidBlock = options.escapeInvalid && utils.isInvalidBrace(parent); + let invalidNode = node.invalid === true && options.escapeInvalid === true; + let output = ""; + if (node.value) { + if ((invalidBlock || invalidNode) && utils.isOpenOrClose(node)) { + return "\\" + node.value; + } + return node.value; + } + if (node.value) { + return node.value; + } + if (node.nodes) { + for (let child of node.nodes) { + output += stringify(child); + } + } + return output; + }; + return stringify(ast); + }; + } +}); +var require_is_number = __commonJS2({ + "node_modules/is-number/index.js"(exports2, module2) { + "use strict"; + module2.exports = function(num) { + if (typeof num === "number") { + return num - num === 0; + } + if (typeof num === "string" && num.trim() !== "") { + return Number.isFinite ? Number.isFinite(+num) : isFinite(+num); + } + return false; + }; + } +}); +var require_to_regex_range = __commonJS2({ + "node_modules/to-regex-range/index.js"(exports2, module2) { + "use strict"; + var isNumber = require_is_number(); + var toRegexRange = (min, max, options) => { + if (isNumber(min) === false) { + throw new TypeError("toRegexRange: expected the first argument to be a number"); + } + if (max === void 0 || min === max) { + return String(min); + } + if (isNumber(max) === false) { + throw new TypeError("toRegexRange: expected the second argument to be a number."); + } + let opts = Object.assign({ + relaxZeros: true + }, options); + if (typeof opts.strictZeros === "boolean") { + opts.relaxZeros = opts.strictZeros === false; + } + let relax = String(opts.relaxZeros); + let shorthand = String(opts.shorthand); + let capture = String(opts.capture); + let wrap = String(opts.wrap); + let cacheKey = min + ":" + max + "=" + relax + shorthand + capture + wrap; + if (toRegexRange.cache.hasOwnProperty(cacheKey)) { + return toRegexRange.cache[cacheKey].result; + } + let a = Math.min(min, max); + let b = Math.max(min, max); + if (Math.abs(a - b) === 1) { + let result = min + "|" + max; + if (opts.capture) { + return `(${result})`; + } + if (opts.wrap === false) { + return result; + } + return `(?:${result})`; + } + let isPadded = hasPadding(min) || hasPadding(max); + let state = { + min, + max, + a, + b + }; + let positives = []; + let negatives = []; + if (isPadded) { + state.isPadded = isPadded; + state.maxLen = String(state.max).length; + } + if (a < 0) { + let newMin = b < 0 ? Math.abs(b) : 1; + negatives = splitToPatterns(newMin, Math.abs(a), state, opts); + a = state.a = 0; + } + if (b >= 0) { + positives = splitToPatterns(a, b, state, opts); + } + state.negatives = negatives; + state.positives = positives; + state.result = collatePatterns(negatives, positives, opts); + if (opts.capture === true) { + state.result = `(${state.result})`; + } else if (opts.wrap !== false && positives.length + negatives.length > 1) { + state.result = `(?:${state.result})`; + } + toRegexRange.cache[cacheKey] = state; + return state.result; + }; + function collatePatterns(neg, pos, options) { + let onlyNegative = filterPatterns(neg, pos, "-", false, options) || []; + let onlyPositive = filterPatterns(pos, neg, "", false, options) || []; + let intersected = filterPatterns(neg, pos, "-?", true, options) || []; + let subpatterns = onlyNegative.concat(intersected).concat(onlyPositive); + return subpatterns.join("|"); + } + function splitToRanges(min, max) { + let nines = 1; + let zeros = 1; + let stop = countNines(min, nines); + let stops = /* @__PURE__ */ new Set([max]); + while (min <= stop && stop <= max) { + stops.add(stop); + nines += 1; + stop = countNines(min, nines); + } + stop = countZeros(max + 1, zeros) - 1; + while (min < stop && stop <= max) { + stops.add(stop); + zeros += 1; + stop = countZeros(max + 1, zeros) - 1; + } + stops = [...stops]; + stops.sort(compare); + return stops; + } + function rangeToPattern(start, stop, options) { + if (start === stop) { + return { + pattern: start, + count: [], + digits: 0 + }; + } + let zipped = zip(start, stop); + let digits = zipped.length; + let pattern = ""; + let count = 0; + for (let i = 0; i < digits; i++) { + let [startDigit, stopDigit] = zipped[i]; + if (startDigit === stopDigit) { + pattern += startDigit; + } else if (startDigit !== "0" || stopDigit !== "9") { + pattern += toCharacterClass(startDigit, stopDigit, options); + } else { + count++; + } + } + if (count) { + pattern += options.shorthand === true ? "\\d" : "[0-9]"; + } + return { + pattern, + count: [count], + digits + }; + } + function splitToPatterns(min, max, tok, options) { + let ranges = splitToRanges(min, max); + let tokens = []; + let start = min; + let prev; + for (let i = 0; i < ranges.length; i++) { + let max2 = ranges[i]; + let obj = rangeToPattern(String(start), String(max2), options); + let zeros = ""; + if (!tok.isPadded && prev && prev.pattern === obj.pattern) { + if (prev.count.length > 1) { + prev.count.pop(); + } + prev.count.push(obj.count[0]); + prev.string = prev.pattern + toQuantifier(prev.count); + start = max2 + 1; + continue; + } + if (tok.isPadded) { + zeros = padZeros(max2, tok, options); + } + obj.string = zeros + obj.pattern + toQuantifier(obj.count); + tokens.push(obj); + start = max2 + 1; + prev = obj; + } + return tokens; + } + function filterPatterns(arr, comparison, prefix, intersection, options) { + let result = []; + for (let ele of arr) { + let { + string + } = ele; + if (!intersection && !contains(comparison, "string", string)) { + result.push(prefix + string); + } + if (intersection && contains(comparison, "string", string)) { + result.push(prefix + string); + } + } + return result; + } + function zip(a, b) { + let arr = []; + for (let i = 0; i < a.length; i++) + arr.push([a[i], b[i]]); + return arr; + } + function compare(a, b) { + return a > b ? 1 : b > a ? -1 : 0; + } + function contains(arr, key, val) { + return arr.some((ele) => ele[key] === val); + } + function countNines(min, len) { + return Number(String(min).slice(0, -len) + "9".repeat(len)); + } + function countZeros(integer, zeros) { + return integer - integer % Math.pow(10, zeros); + } + function toQuantifier(digits) { + let [start = 0, stop = ""] = digits; + if (stop || start > 1) { + return `{${start + (stop ? "," + stop : "")}}`; + } + return ""; + } + function toCharacterClass(a, b, options) { + return `[${a}${b - a === 1 ? "" : "-"}${b}]`; + } + function hasPadding(str) { + return /^-?(0+)\d/.test(str); + } + function padZeros(value, tok, options) { + if (!tok.isPadded) { + return value; + } + let diff = Math.abs(tok.maxLen - String(value).length); + let relax = options.relaxZeros !== false; + switch (diff) { + case 0: + return ""; + case 1: + return relax ? "0?" : "0"; + case 2: + return relax ? "0{0,2}" : "00"; + default: { + return relax ? `0{0,${diff}}` : `0{${diff}}`; + } + } + } + toRegexRange.cache = {}; + toRegexRange.clearCache = () => toRegexRange.cache = {}; + module2.exports = toRegexRange; + } +}); +var require_fill_range = __commonJS2({ + "node_modules/fill-range/index.js"(exports2, module2) { + "use strict"; + var util = require("util"); + var toRegexRange = require_to_regex_range(); + var isObject = (val) => val !== null && typeof val === "object" && !Array.isArray(val); + var transform = (toNumber) => { + return (value) => toNumber === true ? Number(value) : String(value); + }; + var isValidValue = (value) => { + return typeof value === "number" || typeof value === "string" && value !== ""; + }; + var isNumber = (num) => Number.isInteger(+num); + var zeros = (input) => { + let value = `${input}`; + let index = -1; + if (value[0] === "-") + value = value.slice(1); + if (value === "0") + return false; + while (value[++index] === "0") + ; + return index > 0; + }; + var stringify = (start, end, options) => { + if (typeof start === "string" || typeof end === "string") { + return true; + } + return options.stringify === true; + }; + var pad = (input, maxLength, toNumber) => { + if (maxLength > 0) { + let dash = input[0] === "-" ? "-" : ""; + if (dash) + input = input.slice(1); + input = dash + input.padStart(dash ? maxLength - 1 : maxLength, "0"); + } + if (toNumber === false) { + return String(input); + } + return input; + }; + var toMaxLen = (input, maxLength) => { + let negative = input[0] === "-" ? "-" : ""; + if (negative) { + input = input.slice(1); + maxLength--; + } + while (input.length < maxLength) + input = "0" + input; + return negative ? "-" + input : input; + }; + var toSequence = (parts, options) => { + parts.negatives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); + parts.positives.sort((a, b) => a < b ? -1 : a > b ? 1 : 0); + let prefix = options.capture ? "" : "?:"; + let positives = ""; + let negatives = ""; + let result; + if (parts.positives.length) { + positives = parts.positives.join("|"); + } + if (parts.negatives.length) { + negatives = `-(${prefix}${parts.negatives.join("|")})`; + } + if (positives && negatives) { + result = `${positives}|${negatives}`; + } else { + result = positives || negatives; + } + if (options.wrap) { + return `(${prefix}${result})`; + } + return result; + }; + var toRange = (a, b, isNumbers, options) => { + if (isNumbers) { + return toRegexRange(a, b, Object.assign({ + wrap: false + }, options)); + } + let start = String.fromCharCode(a); + if (a === b) + return start; + let stop = String.fromCharCode(b); + return `[${start}-${stop}]`; + }; + var toRegex = (start, end, options) => { + if (Array.isArray(start)) { + let wrap = options.wrap === true; + let prefix = options.capture ? "" : "?:"; + return wrap ? `(${prefix}${start.join("|")})` : start.join("|"); + } + return toRegexRange(start, end, options); + }; + var rangeError = (...args) => { + return new RangeError("Invalid range arguments: " + util.inspect(...args)); + }; + var invalidRange = (start, end, options) => { + if (options.strictRanges === true) + throw rangeError([start, end]); + return []; + }; + var invalidStep = (step, options) => { + if (options.strictRanges === true) { + throw new TypeError(`Expected step "${step}" to be a number`); + } + return []; + }; + var fillNumbers = (start, end, step = 1, options = {}) => { + let a = Number(start); + let b = Number(end); + if (!Number.isInteger(a) || !Number.isInteger(b)) { + if (options.strictRanges === true) + throw rangeError([start, end]); + return []; + } + if (a === 0) + a = 0; + if (b === 0) + b = 0; + let descending = a > b; + let startString = String(start); + let endString = String(end); + let stepString = String(step); + step = Math.max(Math.abs(step), 1); + let padded = zeros(startString) || zeros(endString) || zeros(stepString); + let maxLen = padded ? Math.max(startString.length, endString.length, stepString.length) : 0; + let toNumber = padded === false && stringify(start, end, options) === false; + let format = options.transform || transform(toNumber); + if (options.toRegex && step === 1) { + return toRange(toMaxLen(start, maxLen), toMaxLen(end, maxLen), true, options); + } + let parts = { + negatives: [], + positives: [] + }; + let push = (num) => parts[num < 0 ? "negatives" : "positives"].push(Math.abs(num)); + let range = []; + let index = 0; + while (descending ? a >= b : a <= b) { + if (options.toRegex === true && step > 1) { + push(a); + } else { + range.push(pad(format(a, index), maxLen, toNumber)); + } + a = descending ? a - step : a + step; + index++; + } + if (options.toRegex === true) { + return step > 1 ? toSequence(parts, options) : toRegex(range, null, Object.assign({ + wrap: false + }, options)); + } + return range; + }; + var fillLetters = (start, end, step = 1, options = {}) => { + if (!isNumber(start) && start.length > 1 || !isNumber(end) && end.length > 1) { + return invalidRange(start, end, options); + } + let format = options.transform || ((val) => String.fromCharCode(val)); + let a = `${start}`.charCodeAt(0); + let b = `${end}`.charCodeAt(0); + let descending = a > b; + let min = Math.min(a, b); + let max = Math.max(a, b); + if (options.toRegex && step === 1) { + return toRange(min, max, false, options); + } + let range = []; + let index = 0; + while (descending ? a >= b : a <= b) { + range.push(format(a, index)); + a = descending ? a - step : a + step; + index++; + } + if (options.toRegex === true) { + return toRegex(range, null, { + wrap: false, + options + }); + } + return range; + }; + var fill = (start, end, step, options = {}) => { + if (end == null && isValidValue(start)) { + return [start]; + } + if (!isValidValue(start) || !isValidValue(end)) { + return invalidRange(start, end, options); + } + if (typeof step === "function") { + return fill(start, end, 1, { + transform: step + }); + } + if (isObject(step)) { + return fill(start, end, 0, step); + } + let opts = Object.assign({}, options); + if (opts.capture === true) + opts.wrap = true; + step = step || opts.step || 1; + if (!isNumber(step)) { + if (step != null && !isObject(step)) + return invalidStep(step, opts); + return fill(start, end, 1, step); + } + if (isNumber(start) && isNumber(end)) { + return fillNumbers(start, end, step, opts); + } + return fillLetters(start, end, Math.max(Math.abs(step), 1), opts); + }; + module2.exports = fill; + } +}); +var require_compile = __commonJS2({ + "node_modules/braces/lib/compile.js"(exports2, module2) { + "use strict"; + var fill = require_fill_range(); + var utils = require_utils2(); + var compile = (ast, options = {}) => { + let walk = (node, parent = {}) => { + let invalidBlock = utils.isInvalidBrace(parent); + let invalidNode = node.invalid === true && options.escapeInvalid === true; + let invalid = invalidBlock === true || invalidNode === true; + let prefix = options.escapeInvalid === true ? "\\" : ""; + let output = ""; + if (node.isOpen === true) { + return prefix + node.value; + } + if (node.isClose === true) { + return prefix + node.value; + } + if (node.type === "open") { + return invalid ? prefix + node.value : "("; + } + if (node.type === "close") { + return invalid ? prefix + node.value : ")"; + } + if (node.type === "comma") { + return node.prev.type === "comma" ? "" : invalid ? node.value : "|"; + } + if (node.value) { + return node.value; + } + if (node.nodes && node.ranges > 0) { + let args = utils.reduce(node.nodes); + let range = fill(...args, Object.assign(Object.assign({}, options), {}, { + wrap: false, + toRegex: true + })); + if (range.length !== 0) { + return args.length > 1 && range.length > 1 ? `(${range})` : range; + } + } + if (node.nodes) { + for (let child of node.nodes) { + output += walk(child, node); + } + } + return output; + }; + return walk(ast); + }; + module2.exports = compile; + } +}); +var require_expand = __commonJS2({ + "node_modules/braces/lib/expand.js"(exports2, module2) { + "use strict"; + var fill = require_fill_range(); + var stringify = require_stringify(); + var utils = require_utils2(); + var append = (queue = "", stash = "", enclose = false) => { + let result = []; + queue = [].concat(queue); + stash = [].concat(stash); + if (!stash.length) + return queue; + if (!queue.length) { + return enclose ? utils.flatten(stash).map((ele) => `{${ele}}`) : stash; + } + for (let item of queue) { + if (Array.isArray(item)) { + for (let value of item) { + result.push(append(value, stash, enclose)); + } + } else { + for (let ele of stash) { + if (enclose === true && typeof ele === "string") + ele = `{${ele}}`; + result.push(Array.isArray(ele) ? append(item, ele, enclose) : item + ele); + } + } + } + return utils.flatten(result); + }; + var expand = (ast, options = {}) => { + let rangeLimit = options.rangeLimit === void 0 ? 1e3 : options.rangeLimit; + let walk = (node, parent = {}) => { + node.queue = []; + let p = parent; + let q = parent.queue; + while (p.type !== "brace" && p.type !== "root" && p.parent) { + p = p.parent; + q = p.queue; + } + if (node.invalid || node.dollar) { + q.push(append(q.pop(), stringify(node, options))); + return; + } + if (node.type === "brace" && node.invalid !== true && node.nodes.length === 2) { + q.push(append(q.pop(), ["{}"])); + return; + } + if (node.nodes && node.ranges > 0) { + let args = utils.reduce(node.nodes); + if (utils.exceedsLimit(...args, options.step, rangeLimit)) { + throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit."); + } + let range = fill(...args, options); + if (range.length === 0) { + range = stringify(node, options); + } + q.push(append(q.pop(), range)); + node.nodes = []; + return; + } + let enclose = utils.encloseBrace(node); + let queue = node.queue; + let block = node; + while (block.type !== "brace" && block.type !== "root" && block.parent) { + block = block.parent; + queue = block.queue; + } + for (let i = 0; i < node.nodes.length; i++) { + let child = node.nodes[i]; + if (child.type === "comma" && node.type === "brace") { + if (i === 1) + queue.push(""); + queue.push(""); + continue; + } + if (child.type === "close") { + q.push(append(q.pop(), queue, enclose)); + continue; + } + if (child.value && child.type !== "open") { + queue.push(append(queue.pop(), child.value)); + continue; + } + if (child.nodes) { + walk(child, node); + } + } + return queue; + }; + return utils.flatten(walk(ast)); + }; + module2.exports = expand; + } +}); +var require_constants2 = __commonJS2({ + "node_modules/braces/lib/constants.js"(exports2, module2) { + "use strict"; + module2.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: "\n", + 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 require_parse = __commonJS2({ + "node_modules/braces/lib/parse.js"(exports2, module2) { + "use strict"; + var stringify = require_stringify(); + var { + MAX_LENGTH, + CHAR_BACKSLASH, + CHAR_BACKTICK, + CHAR_COMMA, + CHAR_DOT, + CHAR_LEFT_PARENTHESES, + CHAR_RIGHT_PARENTHESES, + CHAR_LEFT_CURLY_BRACE, + CHAR_RIGHT_CURLY_BRACE, + CHAR_LEFT_SQUARE_BRACKET, + CHAR_RIGHT_SQUARE_BRACKET, + CHAR_DOUBLE_QUOTE, + CHAR_SINGLE_QUOTE, + CHAR_NO_BREAK_SPACE, + CHAR_ZERO_WIDTH_NOBREAK_SPACE + } = require_constants2(); + var parse = (input, options = {}) => { + if (typeof input !== "string") { + throw new TypeError("Expected a string"); + } + let opts = options || {}; + let max = typeof opts.maxLength === "number" ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + if (input.length > max) { + throw new SyntaxError(`Input length (${input.length}), exceeds max characters (${max})`); + } + let ast = { + type: "root", + input, + nodes: [] + }; + let stack = [ast]; + let block = ast; + let prev = ast; + let brackets = 0; + let length = input.length; + let index = 0; + let depth = 0; + let value; + let memo = {}; + const advance = () => input[index++]; + const push = (node) => { + if (node.type === "text" && prev.type === "dot") { + prev.type = "text"; + } + if (prev && prev.type === "text" && node.type === "text") { + prev.value += node.value; + return; + } + block.nodes.push(node); + node.parent = block; + node.prev = prev; + prev = node; + return node; + }; + push({ + type: "bos" + }); + while (index < length) { + block = stack[stack.length - 1]; + value = advance(); + if (value === CHAR_ZERO_WIDTH_NOBREAK_SPACE || value === CHAR_NO_BREAK_SPACE) { + continue; + } + if (value === CHAR_BACKSLASH) { + push({ + type: "text", + value: (options.keepEscaping ? value : "") + advance() + }); + continue; + } + if (value === CHAR_RIGHT_SQUARE_BRACKET) { + push({ + type: "text", + value: "\\" + value + }); + continue; + } + if (value === CHAR_LEFT_SQUARE_BRACKET) { + brackets++; + let closed = true; + let next; + while (index < length && (next = advance())) { + value += next; + if (next === CHAR_LEFT_SQUARE_BRACKET) { + brackets++; + continue; + } + if (next === CHAR_BACKSLASH) { + value += advance(); + continue; + } + if (next === CHAR_RIGHT_SQUARE_BRACKET) { + brackets--; + if (brackets === 0) { + break; + } + } + } + push({ + type: "text", + value + }); + continue; + } + if (value === CHAR_LEFT_PARENTHESES) { + block = push({ + type: "paren", + nodes: [] + }); + stack.push(block); + push({ + type: "text", + value + }); + continue; + } + if (value === CHAR_RIGHT_PARENTHESES) { + if (block.type !== "paren") { + push({ + type: "text", + value + }); + continue; + } + block = stack.pop(); + push({ + type: "text", + value + }); + block = stack[stack.length - 1]; + continue; + } + if (value === CHAR_DOUBLE_QUOTE || value === CHAR_SINGLE_QUOTE || value === CHAR_BACKTICK) { + let open = value; + let next; + if (options.keepQuotes !== true) { + value = ""; + } + while (index < length && (next = advance())) { + if (next === CHAR_BACKSLASH) { + value += next + advance(); + continue; + } + if (next === open) { + if (options.keepQuotes === true) + value += next; + break; + } + value += next; + } + push({ + type: "text", + value + }); + continue; + } + if (value === CHAR_LEFT_CURLY_BRACE) { + depth++; + let dollar = prev.value && prev.value.slice(-1) === "$" || block.dollar === true; + let brace = { + type: "brace", + open: true, + close: false, + dollar, + depth, + commas: 0, + ranges: 0, + nodes: [] + }; + block = push(brace); + stack.push(block); + push({ + type: "open", + value + }); + continue; + } + if (value === CHAR_RIGHT_CURLY_BRACE) { + if (block.type !== "brace") { + push({ + type: "text", + value + }); + continue; + } + let type = "close"; + block = stack.pop(); + block.close = true; + push({ + type, + value + }); + depth--; + block = stack[stack.length - 1]; + continue; + } + if (value === CHAR_COMMA && depth > 0) { + if (block.ranges > 0) { + block.ranges = 0; + let open = block.nodes.shift(); + block.nodes = [open, { + type: "text", + value: stringify(block) + }]; + } + push({ + type: "comma", + value + }); + block.commas++; + continue; + } + if (value === CHAR_DOT && depth > 0 && block.commas === 0) { + let siblings = block.nodes; + if (depth === 0 || siblings.length === 0) { + push({ + type: "text", + value + }); + continue; + } + if (prev.type === "dot") { + block.range = []; + prev.value += value; + prev.type = "range"; + if (block.nodes.length !== 3 && block.nodes.length !== 5) { + block.invalid = true; + block.ranges = 0; + prev.type = "text"; + continue; + } + block.ranges++; + block.args = []; + continue; + } + if (prev.type === "range") { + siblings.pop(); + let before = siblings[siblings.length - 1]; + before.value += prev.value + value; + prev = before; + block.ranges--; + continue; + } + push({ + type: "dot", + value + }); + continue; + } + push({ + type: "text", + value + }); + } + do { + block = stack.pop(); + if (block.type !== "root") { + block.nodes.forEach((node) => { + if (!node.nodes) { + if (node.type === "open") + node.isOpen = true; + if (node.type === "close") + node.isClose = true; + if (!node.nodes) + node.type = "text"; + node.invalid = true; + } + }); + let parent = stack[stack.length - 1]; + let index2 = parent.nodes.indexOf(block); + parent.nodes.splice(index2, 1, ...block.nodes); + } + } while (stack.length > 0); + push({ + type: "eos" + }); + return ast; + }; + module2.exports = parse; + } +}); +var require_braces = __commonJS2({ + "node_modules/braces/index.js"(exports2, module2) { + "use strict"; + var stringify = require_stringify(); + var compile = require_compile(); + var expand = require_expand(); + var parse = require_parse(); + var braces = (input, options = {}) => { + let output = []; + if (Array.isArray(input)) { + for (let pattern of input) { + let result = braces.create(pattern, options); + if (Array.isArray(result)) { + output.push(...result); + } else { + output.push(result); + } + } + } else { + output = [].concat(braces.create(input, options)); + } + if (options && options.expand === true && options.nodupes === true) { + output = [...new Set(output)]; + } + return output; + }; + braces.parse = (input, options = {}) => parse(input, options); + braces.stringify = (input, options = {}) => { + if (typeof input === "string") { + return stringify(braces.parse(input, options), options); + } + return stringify(input, options); + }; + braces.compile = (input, options = {}) => { + if (typeof input === "string") { + input = braces.parse(input, options); + } + return compile(input, options); + }; + braces.expand = (input, options = {}) => { + if (typeof input === "string") { + input = braces.parse(input, options); + } + let result = expand(input, options); + if (options.noempty === true) { + result = result.filter(Boolean); + } + if (options.nodupes === true) { + result = [...new Set(result)]; + } + return result; + }; + braces.create = (input, options = {}) => { + if (input === "" || input.length < 3) { + return [input]; + } + return options.expand !== true ? braces.compile(input, options) : braces.expand(input, options); + }; + module2.exports = braces; + } +}); +var require_constants3 = __commonJS2({ + "node_modules/picomatch/lib/constants.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var WIN_SLASH = "\\\\/"; + var WIN_NO_SLASH = `[^${WIN_SLASH}]`; + var DOT_LITERAL = "\\."; + var PLUS_LITERAL = "\\+"; + var QMARK_LITERAL = "\\?"; + var SLASH_LITERAL = "\\/"; + var ONE_CHAR = "(?=.)"; + var QMARK = "[^/]"; + var END_ANCHOR = `(?:${SLASH_LITERAL}|$)`; + var START_ANCHOR = `(?:^|${SLASH_LITERAL})`; + var DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`; + var NO_DOT = `(?!${DOT_LITERAL})`; + var NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`; + var NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`; + var NO_DOTS_SLASH = `(?!${DOTS_SLASH})`; + var QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`; + var STAR = `${QMARK}*?`; + var POSIX_CHARS = { + DOT_LITERAL, + PLUS_LITERAL, + QMARK_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + QMARK, + END_ANCHOR, + DOTS_SLASH, + NO_DOT, + NO_DOTS, + NO_DOT_SLASH, + NO_DOTS_SLASH, + QMARK_NO_DOT, + STAR, + START_ANCHOR + }; + var WINDOWS_CHARS = Object.assign(Object.assign({}, POSIX_CHARS), {}, { + SLASH_LITERAL: `[${WIN_SLASH}]`, + QMARK: WIN_NO_SLASH, + STAR: `${WIN_NO_SLASH}*?`, + DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`, + NO_DOT: `(?!${DOT_LITERAL})`, + NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, + NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`, + NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`, + QMARK_NO_DOT: `[^.${WIN_SLASH}]`, + START_ANCHOR: `(?:^|[${WIN_SLASH}])`, + END_ANCHOR: `(?:[${WIN_SLASH}]|$)` + }); + var POSIX_REGEX_SOURCE = { + 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" + }; + module2.exports = { + MAX_LENGTH: 1024 * 64, + POSIX_REGEX_SOURCE, + 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: path.sep, + extglobChars(chars) { + return { + "!": { + type: "negate", + open: "(?:(?!(?:", + close: `))${chars.STAR})` + }, + "?": { + type: "qmark", + open: "(?:", + close: ")?" + }, + "+": { + type: "plus", + open: "(?:", + close: ")+" + }, + "*": { + type: "star", + open: "(?:", + close: ")*" + }, + "@": { + type: "at", + open: "(?:", + close: ")" + } + }; + }, + globChars(win32) { + return win32 === true ? WINDOWS_CHARS : POSIX_CHARS; + } + }; + } +}); +var require_utils3 = __commonJS2({ + "node_modules/picomatch/lib/utils.js"(exports2) { + "use strict"; + var path = require("path"); + var win32 = process.platform === "win32"; + var { + REGEX_BACKSLASH, + REGEX_REMOVE_BACKSLASH, + REGEX_SPECIAL_CHARS, + REGEX_SPECIAL_CHARS_GLOBAL + } = require_constants3(); + exports2.isObject = (val) => val !== null && typeof val === "object" && !Array.isArray(val); + exports2.hasRegexChars = (str) => REGEX_SPECIAL_CHARS.test(str); + exports2.isRegexChar = (str) => str.length === 1 && exports2.hasRegexChars(str); + exports2.escapeRegex = (str) => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, "\\$1"); + exports2.toPosixSlashes = (str) => str.replace(REGEX_BACKSLASH, "/"); + exports2.removeBackslashes = (str) => { + return str.replace(REGEX_REMOVE_BACKSLASH, (match) => { + return match === "\\" ? "" : match; + }); + }; + exports2.supportsLookbehinds = () => { + const segs = process.version.slice(1).split(".").map(Number); + if (segs.length === 3 && segs[0] >= 9 || segs[0] === 8 && segs[1] >= 10) { + return true; + } + return false; + }; + exports2.isWindows = (options) => { + if (options && typeof options.windows === "boolean") { + return options.windows; + } + return win32 === true || path.sep === "\\"; + }; + exports2.escapeLast = (input, char, lastIdx) => { + const idx = input.lastIndexOf(char, lastIdx); + if (idx === -1) + return input; + if (input[idx - 1] === "\\") + return exports2.escapeLast(input, char, idx - 1); + return `${input.slice(0, idx)}\\${input.slice(idx)}`; + }; + exports2.removePrefix = (input, state = {}) => { + let output = input; + if (output.startsWith("./")) { + output = output.slice(2); + state.prefix = "./"; + } + return output; + }; + exports2.wrapOutput = (input, state = {}, options = {}) => { + const prepend = options.contains ? "" : "^"; + const append = options.contains ? "" : "$"; + let output = `${prepend}(?:${input})${append}`; + if (state.negated === true) { + output = `(?:^(?!${output}).*$)`; + } + return output; + }; + } +}); +var require_scan = __commonJS2({ + "node_modules/picomatch/lib/scan.js"(exports2, module2) { + "use strict"; + var utils = require_utils3(); + var { + CHAR_ASTERISK, + CHAR_AT, + CHAR_BACKWARD_SLASH, + CHAR_COMMA, + CHAR_DOT, + CHAR_EXCLAMATION_MARK, + CHAR_FORWARD_SLASH, + CHAR_LEFT_CURLY_BRACE, + CHAR_LEFT_PARENTHESES, + CHAR_LEFT_SQUARE_BRACKET, + CHAR_PLUS, + CHAR_QUESTION_MARK, + CHAR_RIGHT_CURLY_BRACE, + CHAR_RIGHT_PARENTHESES, + CHAR_RIGHT_SQUARE_BRACKET + } = require_constants3(); + var isPathSeparator = (code) => { + return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH; + }; + var depth = (token) => { + if (token.isPrefix !== true) { + token.depth = token.isGlobstar ? Infinity : 1; + } + }; + var scan = (input, options) => { + const opts = options || {}; + const length = input.length - 1; + const scanToEnd = opts.parts === true || opts.scanToEnd === true; + const slashes = []; + const tokens = []; + const parts = []; + let str = input; + let index = -1; + let start = 0; + let lastIndex = 0; + let isBrace = false; + let isBracket = false; + let isGlob = false; + let isExtglob = false; + let isGlobstar = false; + let braceEscaped = false; + let backslashes = false; + let negated = false; + let negatedExtglob = false; + let finished = false; + let braces = 0; + let prev; + let code; + let token = { + value: "", + depth: 0, + isGlob: false + }; + const eos = () => index >= length; + const peek = () => str.charCodeAt(index + 1); + const advance = () => { + prev = code; + return str.charCodeAt(++index); + }; + while (index < length) { + code = advance(); + let next; + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + code = advance(); + if (code === CHAR_LEFT_CURLY_BRACE) { + braceEscaped = true; + } + continue; + } + if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) { + braces++; + while (eos() !== true && (code = advance())) { + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + advance(); + continue; + } + if (code === CHAR_LEFT_CURLY_BRACE) { + braces++; + continue; + } + if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) { + isBrace = token.isBrace = true; + isGlob = token.isGlob = true; + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + if (braceEscaped !== true && code === CHAR_COMMA) { + isBrace = token.isBrace = true; + isGlob = token.isGlob = true; + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + if (code === CHAR_RIGHT_CURLY_BRACE) { + braces--; + if (braces === 0) { + braceEscaped = false; + isBrace = token.isBrace = true; + finished = true; + break; + } + } + } + if (scanToEnd === true) { + continue; + } + break; + } + if (code === CHAR_FORWARD_SLASH) { + slashes.push(index); + tokens.push(token); + token = { + value: "", + depth: 0, + isGlob: false + }; + if (finished === true) + continue; + if (prev === CHAR_DOT && index === start + 1) { + start += 2; + continue; + } + lastIndex = index + 1; + continue; + } + if (opts.noext !== true) { + const isExtglobChar = code === CHAR_PLUS || code === CHAR_AT || code === CHAR_ASTERISK || code === CHAR_QUESTION_MARK || code === CHAR_EXCLAMATION_MARK; + if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) { + isGlob = token.isGlob = true; + isExtglob = token.isExtglob = true; + finished = true; + if (code === CHAR_EXCLAMATION_MARK && index === start) { + negatedExtglob = true; + } + if (scanToEnd === true) { + while (eos() !== true && (code = advance())) { + if (code === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + code = advance(); + continue; + } + if (code === CHAR_RIGHT_PARENTHESES) { + isGlob = token.isGlob = true; + finished = true; + break; + } + } + continue; + } + break; + } + } + if (code === CHAR_ASTERISK) { + if (prev === CHAR_ASTERISK) + isGlobstar = token.isGlobstar = true; + isGlob = token.isGlob = true; + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + if (code === CHAR_QUESTION_MARK) { + isGlob = token.isGlob = true; + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + if (code === CHAR_LEFT_SQUARE_BRACKET) { + while (eos() !== true && (next = advance())) { + if (next === CHAR_BACKWARD_SLASH) { + backslashes = token.backslashes = true; + advance(); + continue; + } + if (next === CHAR_RIGHT_SQUARE_BRACKET) { + isBracket = token.isBracket = true; + isGlob = token.isGlob = true; + finished = true; + break; + } + } + if (scanToEnd === true) { + continue; + } + break; + } + if (opts.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) { + negated = token.negated = true; + start++; + continue; + } + if (opts.noparen !== true && code === CHAR_LEFT_PARENTHESES) { + isGlob = token.isGlob = true; + if (scanToEnd === true) { + while (eos() !== true && (code = advance())) { + if (code === CHAR_LEFT_PARENTHESES) { + backslashes = token.backslashes = true; + code = advance(); + continue; + } + if (code === CHAR_RIGHT_PARENTHESES) { + finished = true; + break; + } + } + continue; + } + break; + } + if (isGlob === true) { + finished = true; + if (scanToEnd === true) { + continue; + } + break; + } + } + if (opts.noext === true) { + isExtglob = false; + isGlob = false; + } + let base = str; + let prefix = ""; + let glob = ""; + if (start > 0) { + prefix = str.slice(0, start); + str = str.slice(start); + lastIndex -= start; + } + if (base && isGlob === true && lastIndex > 0) { + base = str.slice(0, lastIndex); + glob = str.slice(lastIndex); + } else if (isGlob === true) { + base = ""; + glob = str; + } else { + base = str; + } + if (base && base !== "" && base !== "/" && base !== str) { + if (isPathSeparator(base.charCodeAt(base.length - 1))) { + base = base.slice(0, -1); + } + } + if (opts.unescape === true) { + if (glob) + glob = utils.removeBackslashes(glob); + if (base && backslashes === true) { + base = utils.removeBackslashes(base); + } + } + const state = { + prefix, + input, + start, + base, + glob, + isBrace, + isBracket, + isGlob, + isExtglob, + isGlobstar, + negated, + negatedExtglob + }; + if (opts.tokens === true) { + state.maxDepth = 0; + if (!isPathSeparator(code)) { + tokens.push(token); + } + state.tokens = tokens; + } + if (opts.parts === true || opts.tokens === true) { + let prevIndex; + for (let idx = 0; idx < slashes.length; idx++) { + const n = prevIndex ? prevIndex + 1 : start; + const i = slashes[idx]; + const value = input.slice(n, i); + if (opts.tokens) { + if (idx === 0 && start !== 0) { + tokens[idx].isPrefix = true; + tokens[idx].value = prefix; + } else { + tokens[idx].value = value; + } + depth(tokens[idx]); + state.maxDepth += tokens[idx].depth; + } + if (idx !== 0 || value !== "") { + parts.push(value); + } + prevIndex = i; + } + if (prevIndex && prevIndex + 1 < input.length) { + const value = input.slice(prevIndex + 1); + parts.push(value); + if (opts.tokens) { + tokens[tokens.length - 1].value = value; + depth(tokens[tokens.length - 1]); + state.maxDepth += tokens[tokens.length - 1].depth; + } + } + state.slashes = slashes; + state.parts = parts; + } + return state; + }; + module2.exports = scan; + } +}); +var require_parse2 = __commonJS2({ + "node_modules/picomatch/lib/parse.js"(exports2, module2) { + "use strict"; + var constants = require_constants3(); + var utils = require_utils3(); + var { + MAX_LENGTH, + POSIX_REGEX_SOURCE, + REGEX_NON_SPECIAL_CHARS, + REGEX_SPECIAL_CHARS_BACKREF, + REPLACEMENTS + } = constants; + var expandRange = (args, options) => { + if (typeof options.expandRange === "function") { + return options.expandRange(...args, options); + } + args.sort(); + const value = `[${args.join("-")}]`; + try { + new RegExp(value); + } catch (ex) { + return args.map((v) => utils.escapeRegex(v)).join(".."); + } + return value; + }; + var syntaxError = (type, char) => { + return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`; + }; + var parse = (input, options) => { + if (typeof input !== "string") { + throw new TypeError("Expected a string"); + } + input = REPLACEMENTS[input] || input; + const opts = Object.assign({}, options); + const max = typeof opts.maxLength === "number" ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + let len = input.length; + if (len > max) { + throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); + } + const bos = { + type: "bos", + value: "", + output: opts.prepend || "" + }; + const tokens = [bos]; + const capture = opts.capture ? "" : "?:"; + const win32 = utils.isWindows(options); + const PLATFORM_CHARS = constants.globChars(win32); + const EXTGLOB_CHARS = constants.extglobChars(PLATFORM_CHARS); + const { + DOT_LITERAL, + PLUS_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + DOTS_SLASH, + NO_DOT, + NO_DOT_SLASH, + NO_DOTS_SLASH, + QMARK, + QMARK_NO_DOT, + STAR, + START_ANCHOR + } = PLATFORM_CHARS; + const globstar = (opts2) => { + return `(${capture}(?:(?!${START_ANCHOR}${opts2.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; + }; + const nodot = opts.dot ? "" : NO_DOT; + const qmarkNoDot = opts.dot ? QMARK : QMARK_NO_DOT; + let star = opts.bash === true ? globstar(opts) : STAR; + if (opts.capture) { + star = `(${star})`; + } + if (typeof opts.noext === "boolean") { + opts.noextglob = opts.noext; + } + const state = { + input, + index: -1, + start: 0, + dot: opts.dot === true, + consumed: "", + output: "", + prefix: "", + backtrack: false, + negated: false, + brackets: 0, + braces: 0, + parens: 0, + quotes: 0, + globstar: false, + tokens + }; + input = utils.removePrefix(input, state); + len = input.length; + const extglobs = []; + const braces = []; + const stack = []; + let prev = bos; + let value; + const eos = () => state.index === len - 1; + const peek = state.peek = (n = 1) => input[state.index + n]; + const advance = state.advance = () => input[++state.index] || ""; + const remaining = () => input.slice(state.index + 1); + const consume = (value2 = "", num = 0) => { + state.consumed += value2; + state.index += num; + }; + const append = (token) => { + state.output += token.output != null ? token.output : token.value; + consume(token.value); + }; + const negate = () => { + let count = 1; + while (peek() === "!" && (peek(2) !== "(" || peek(3) === "?")) { + advance(); + state.start++; + count++; + } + if (count % 2 === 0) { + return false; + } + state.negated = true; + state.start++; + return true; + }; + const increment = (type) => { + state[type]++; + stack.push(type); + }; + const decrement = (type) => { + state[type]--; + stack.pop(); + }; + const push = (tok) => { + if (prev.type === "globstar") { + const isBrace = state.braces > 0 && (tok.type === "comma" || tok.type === "brace"); + const isExtglob = tok.extglob === true || extglobs.length && (tok.type === "pipe" || tok.type === "paren"); + if (tok.type !== "slash" && tok.type !== "paren" && !isBrace && !isExtglob) { + state.output = state.output.slice(0, -prev.output.length); + prev.type = "star"; + prev.value = "*"; + prev.output = star; + state.output += prev.output; + } + } + if (extglobs.length && tok.type !== "paren") { + extglobs[extglobs.length - 1].inner += tok.value; + } + if (tok.value || tok.output) + append(tok); + if (prev && prev.type === "text" && tok.type === "text") { + prev.value += tok.value; + prev.output = (prev.output || "") + tok.value; + return; + } + tok.prev = prev; + tokens.push(tok); + prev = tok; + }; + const extglobOpen = (type, value2) => { + const token = Object.assign(Object.assign({}, EXTGLOB_CHARS[value2]), {}, { + conditions: 1, + inner: "" + }); + token.prev = prev; + token.parens = state.parens; + token.output = state.output; + const output = (opts.capture ? "(" : "") + token.open; + increment("parens"); + push({ + type, + value: value2, + output: state.output ? "" : ONE_CHAR + }); + push({ + type: "paren", + extglob: true, + value: advance(), + output + }); + extglobs.push(token); + }; + const extglobClose = (token) => { + let output = token.close + (opts.capture ? ")" : ""); + let rest; + if (token.type === "negate") { + let extglobStar = star; + if (token.inner && token.inner.length > 1 && token.inner.includes("/")) { + extglobStar = globstar(opts); + } + if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) { + output = token.close = `)$))${extglobStar}`; + } + if (token.inner.includes("*") && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) { + const expression = parse(rest, Object.assign(Object.assign({}, options), {}, { + fastpaths: false + })).output; + output = token.close = `)${expression})${extglobStar})`; + } + if (token.prev.type === "bos") { + state.negatedExtglob = true; + } + } + push({ + type: "paren", + extglob: true, + value, + output + }); + decrement("parens"); + }; + if (opts.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) { + let backslashes = false; + let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => { + if (first === "\\") { + backslashes = true; + return m; + } + if (first === "?") { + if (esc) { + return esc + first + (rest ? QMARK.repeat(rest.length) : ""); + } + if (index === 0) { + return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : ""); + } + return QMARK.repeat(chars.length); + } + if (first === ".") { + return DOT_LITERAL.repeat(chars.length); + } + if (first === "*") { + if (esc) { + return esc + first + (rest ? star : ""); + } + return star; + } + return esc ? m : `\\${m}`; + }); + if (backslashes === true) { + if (opts.unescape === true) { + output = output.replace(/\\/g, ""); + } else { + output = output.replace(/\\+/g, (m) => { + return m.length % 2 === 0 ? "\\\\" : m ? "\\" : ""; + }); + } + } + if (output === input && opts.contains === true) { + state.output = input; + return state; + } + state.output = utils.wrapOutput(output, state, options); + return state; + } + while (!eos()) { + value = advance(); + if (value === "\0") { + continue; + } + if (value === "\\") { + const next = peek(); + if (next === "/" && opts.bash !== true) { + continue; + } + if (next === "." || next === ";") { + continue; + } + if (!next) { + value += "\\"; + push({ + type: "text", + value + }); + continue; + } + const match = /^\\+/.exec(remaining()); + let slashes = 0; + if (match && match[0].length > 2) { + slashes = match[0].length; + state.index += slashes; + if (slashes % 2 !== 0) { + value += "\\"; + } + } + if (opts.unescape === true) { + value = advance(); + } else { + value += advance(); + } + if (state.brackets === 0) { + push({ + type: "text", + value + }); + continue; + } + } + if (state.brackets > 0 && (value !== "]" || prev.value === "[" || prev.value === "[^")) { + if (opts.posix !== false && value === ":") { + const inner = prev.value.slice(1); + if (inner.includes("[")) { + prev.posix = true; + if (inner.includes(":")) { + const idx = prev.value.lastIndexOf("["); + const pre = prev.value.slice(0, idx); + const rest2 = prev.value.slice(idx + 2); + const posix = POSIX_REGEX_SOURCE[rest2]; + if (posix) { + prev.value = pre + posix; + state.backtrack = true; + advance(); + if (!bos.output && tokens.indexOf(prev) === 1) { + bos.output = ONE_CHAR; + } + continue; + } + } + } + } + if (value === "[" && peek() !== ":" || value === "-" && peek() === "]") { + value = `\\${value}`; + } + if (value === "]" && (prev.value === "[" || prev.value === "[^")) { + value = `\\${value}`; + } + if (opts.posix === true && value === "!" && prev.value === "[") { + value = "^"; + } + prev.value += value; + append({ + value + }); + continue; + } + if (state.quotes === 1 && value !== '"') { + value = utils.escapeRegex(value); + prev.value += value; + append({ + value + }); + continue; + } + if (value === '"') { + state.quotes = state.quotes === 1 ? 0 : 1; + if (opts.keepQuotes === true) { + push({ + type: "text", + value + }); + } + continue; + } + if (value === "(") { + increment("parens"); + push({ + type: "paren", + value + }); + continue; + } + if (value === ")") { + if (state.parens === 0 && opts.strictBrackets === true) { + throw new SyntaxError(syntaxError("opening", "(")); + } + const extglob = extglobs[extglobs.length - 1]; + if (extglob && state.parens === extglob.parens + 1) { + extglobClose(extglobs.pop()); + continue; + } + push({ + type: "paren", + value, + output: state.parens ? ")" : "\\)" + }); + decrement("parens"); + continue; + } + if (value === "[") { + if (opts.nobracket === true || !remaining().includes("]")) { + if (opts.nobracket !== true && opts.strictBrackets === true) { + throw new SyntaxError(syntaxError("closing", "]")); + } + value = `\\${value}`; + } else { + increment("brackets"); + } + push({ + type: "bracket", + value + }); + continue; + } + if (value === "]") { + if (opts.nobracket === true || prev && prev.type === "bracket" && prev.value.length === 1) { + push({ + type: "text", + value, + output: `\\${value}` + }); + continue; + } + if (state.brackets === 0) { + if (opts.strictBrackets === true) { + throw new SyntaxError(syntaxError("opening", "[")); + } + push({ + type: "text", + value, + output: `\\${value}` + }); + continue; + } + decrement("brackets"); + const prevValue = prev.value.slice(1); + if (prev.posix !== true && prevValue[0] === "^" && !prevValue.includes("/")) { + value = `/${value}`; + } + prev.value += value; + append({ + value + }); + if (opts.literalBrackets === false || utils.hasRegexChars(prevValue)) { + continue; + } + const escaped = utils.escapeRegex(prev.value); + state.output = state.output.slice(0, -prev.value.length); + if (opts.literalBrackets === true) { + state.output += escaped; + prev.value = escaped; + continue; + } + prev.value = `(${capture}${escaped}|${prev.value})`; + state.output += prev.value; + continue; + } + if (value === "{" && opts.nobrace !== true) { + increment("braces"); + const open = { + type: "brace", + value, + output: "(", + outputIndex: state.output.length, + tokensIndex: state.tokens.length + }; + braces.push(open); + push(open); + continue; + } + if (value === "}") { + const brace = braces[braces.length - 1]; + if (opts.nobrace === true || !brace) { + push({ + type: "text", + value, + output: value + }); + continue; + } + let output = ")"; + if (brace.dots === true) { + const arr = tokens.slice(); + const range = []; + for (let i = arr.length - 1; i >= 0; i--) { + tokens.pop(); + if (arr[i].type === "brace") { + break; + } + if (arr[i].type !== "dots") { + range.unshift(arr[i].value); + } + } + output = expandRange(range, opts); + state.backtrack = true; + } + if (brace.comma !== true && brace.dots !== true) { + const out = state.output.slice(0, brace.outputIndex); + const toks = state.tokens.slice(brace.tokensIndex); + brace.value = brace.output = "\\{"; + value = output = "\\}"; + state.output = out; + for (const t of toks) { + state.output += t.output || t.value; + } + } + push({ + type: "brace", + value, + output + }); + decrement("braces"); + braces.pop(); + continue; + } + if (value === "|") { + if (extglobs.length > 0) { + extglobs[extglobs.length - 1].conditions++; + } + push({ + type: "text", + value + }); + continue; + } + if (value === ",") { + let output = value; + const brace = braces[braces.length - 1]; + if (brace && stack[stack.length - 1] === "braces") { + brace.comma = true; + output = "|"; + } + push({ + type: "comma", + value, + output + }); + continue; + } + if (value === "/") { + if (prev.type === "dot" && state.index === state.start + 1) { + state.start = state.index + 1; + state.consumed = ""; + state.output = ""; + tokens.pop(); + prev = bos; + continue; + } + push({ + type: "slash", + value, + output: SLASH_LITERAL + }); + continue; + } + if (value === ".") { + if (state.braces > 0 && prev.type === "dot") { + if (prev.value === ".") + prev.output = DOT_LITERAL; + const brace = braces[braces.length - 1]; + prev.type = "dots"; + prev.output += value; + prev.value += value; + brace.dots = true; + continue; + } + if (state.braces + state.parens === 0 && prev.type !== "bos" && prev.type !== "slash") { + push({ + type: "text", + value, + output: DOT_LITERAL + }); + continue; + } + push({ + type: "dot", + value, + output: DOT_LITERAL + }); + continue; + } + if (value === "?") { + const isGroup = prev && prev.value === "("; + if (!isGroup && opts.noextglob !== true && peek() === "(" && peek(2) !== "?") { + extglobOpen("qmark", value); + continue; + } + if (prev && prev.type === "paren") { + const next = peek(); + let output = value; + if (next === "<" && !utils.supportsLookbehinds()) { + throw new Error("Node.js v10 or higher is required for regex lookbehinds"); + } + if (prev.value === "(" && !/[!=<:]/.test(next) || next === "<" && !/<([!=]|\w+>)/.test(remaining())) { + output = `\\${value}`; + } + push({ + type: "text", + value, + output + }); + continue; + } + if (opts.dot !== true && (prev.type === "slash" || prev.type === "bos")) { + push({ + type: "qmark", + value, + output: QMARK_NO_DOT + }); + continue; + } + push({ + type: "qmark", + value, + output: QMARK + }); + continue; + } + if (value === "!") { + if (opts.noextglob !== true && peek() === "(") { + if (peek(2) !== "?" || !/[!=<:]/.test(peek(3))) { + extglobOpen("negate", value); + continue; + } + } + if (opts.nonegate !== true && state.index === 0) { + negate(); + continue; + } + } + if (value === "+") { + if (opts.noextglob !== true && peek() === "(" && peek(2) !== "?") { + extglobOpen("plus", value); + continue; + } + if (prev && prev.value === "(" || opts.regex === false) { + push({ + type: "plus", + value, + output: PLUS_LITERAL + }); + continue; + } + if (prev && (prev.type === "bracket" || prev.type === "paren" || prev.type === "brace") || state.parens > 0) { + push({ + type: "plus", + value + }); + continue; + } + push({ + type: "plus", + value: PLUS_LITERAL + }); + continue; + } + if (value === "@") { + if (opts.noextglob !== true && peek() === "(" && peek(2) !== "?") { + push({ + type: "at", + extglob: true, + value, + output: "" + }); + continue; + } + push({ + type: "text", + value + }); + continue; + } + if (value !== "*") { + if (value === "$" || value === "^") { + value = `\\${value}`; + } + const match = REGEX_NON_SPECIAL_CHARS.exec(remaining()); + if (match) { + value += match[0]; + state.index += match[0].length; + } + push({ + type: "text", + value + }); + continue; + } + if (prev && (prev.type === "globstar" || prev.star === true)) { + prev.type = "star"; + prev.star = true; + prev.value += value; + prev.output = star; + state.backtrack = true; + state.globstar = true; + consume(value); + continue; + } + let rest = remaining(); + if (opts.noextglob !== true && /^\([^?]/.test(rest)) { + extglobOpen("star", value); + continue; + } + if (prev.type === "star") { + if (opts.noglobstar === true) { + consume(value); + continue; + } + const prior = prev.prev; + const before = prior.prev; + const isStart = prior.type === "slash" || prior.type === "bos"; + const afterStar = before && (before.type === "star" || before.type === "globstar"); + if (opts.bash === true && (!isStart || rest[0] && rest[0] !== "/")) { + push({ + type: "star", + value, + output: "" + }); + continue; + } + const isBrace = state.braces > 0 && (prior.type === "comma" || prior.type === "brace"); + const isExtglob = extglobs.length && (prior.type === "pipe" || prior.type === "paren"); + if (!isStart && prior.type !== "paren" && !isBrace && !isExtglob) { + push({ + type: "star", + value, + output: "" + }); + continue; + } + while (rest.slice(0, 3) === "/**") { + const after = input[state.index + 4]; + if (after && after !== "/") { + break; + } + rest = rest.slice(3); + consume("/**", 3); + } + if (prior.type === "bos" && eos()) { + prev.type = "globstar"; + prev.value += value; + prev.output = globstar(opts); + state.output = prev.output; + state.globstar = true; + consume(value); + continue; + } + if (prior.type === "slash" && prior.prev.type !== "bos" && !afterStar && eos()) { + state.output = state.output.slice(0, -(prior.output + prev.output).length); + prior.output = `(?:${prior.output}`; + prev.type = "globstar"; + prev.output = globstar(opts) + (opts.strictSlashes ? ")" : "|$)"); + prev.value += value; + state.globstar = true; + state.output += prior.output + prev.output; + consume(value); + continue; + } + if (prior.type === "slash" && prior.prev.type !== "bos" && rest[0] === "/") { + const end = rest[1] !== void 0 ? "|$" : ""; + state.output = state.output.slice(0, -(prior.output + prev.output).length); + prior.output = `(?:${prior.output}`; + prev.type = "globstar"; + prev.output = `${globstar(opts)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`; + prev.value += value; + state.output += prior.output + prev.output; + state.globstar = true; + consume(value + advance()); + push({ + type: "slash", + value: "/", + output: "" + }); + continue; + } + if (prior.type === "bos" && rest[0] === "/") { + prev.type = "globstar"; + prev.value += value; + prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts)}${SLASH_LITERAL})`; + state.output = prev.output; + state.globstar = true; + consume(value + advance()); + push({ + type: "slash", + value: "/", + output: "" + }); + continue; + } + state.output = state.output.slice(0, -prev.output.length); + prev.type = "globstar"; + prev.output = globstar(opts); + prev.value += value; + state.output += prev.output; + state.globstar = true; + consume(value); + continue; + } + const token = { + type: "star", + value, + output: star + }; + if (opts.bash === true) { + token.output = ".*?"; + if (prev.type === "bos" || prev.type === "slash") { + token.output = nodot + token.output; + } + push(token); + continue; + } + if (prev && (prev.type === "bracket" || prev.type === "paren") && opts.regex === true) { + token.output = value; + push(token); + continue; + } + if (state.index === state.start || prev.type === "slash" || prev.type === "dot") { + if (prev.type === "dot") { + state.output += NO_DOT_SLASH; + prev.output += NO_DOT_SLASH; + } else if (opts.dot === true) { + state.output += NO_DOTS_SLASH; + prev.output += NO_DOTS_SLASH; + } else { + state.output += nodot; + prev.output += nodot; + } + if (peek() !== "*") { + state.output += ONE_CHAR; + prev.output += ONE_CHAR; + } + } + push(token); + } + while (state.brackets > 0) { + if (opts.strictBrackets === true) + throw new SyntaxError(syntaxError("closing", "]")); + state.output = utils.escapeLast(state.output, "["); + decrement("brackets"); + } + while (state.parens > 0) { + if (opts.strictBrackets === true) + throw new SyntaxError(syntaxError("closing", ")")); + state.output = utils.escapeLast(state.output, "("); + decrement("parens"); + } + while (state.braces > 0) { + if (opts.strictBrackets === true) + throw new SyntaxError(syntaxError("closing", "}")); + state.output = utils.escapeLast(state.output, "{"); + decrement("braces"); + } + if (opts.strictSlashes !== true && (prev.type === "star" || prev.type === "bracket")) { + push({ + type: "maybe_slash", + value: "", + output: `${SLASH_LITERAL}?` + }); + } + if (state.backtrack === true) { + state.output = ""; + for (const token of state.tokens) { + state.output += token.output != null ? token.output : token.value; + if (token.suffix) { + state.output += token.suffix; + } + } + } + return state; + }; + parse.fastpaths = (input, options) => { + const opts = Object.assign({}, options); + const max = typeof opts.maxLength === "number" ? Math.min(MAX_LENGTH, opts.maxLength) : MAX_LENGTH; + const len = input.length; + if (len > max) { + throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max}`); + } + input = REPLACEMENTS[input] || input; + const win32 = utils.isWindows(options); + const { + DOT_LITERAL, + SLASH_LITERAL, + ONE_CHAR, + DOTS_SLASH, + NO_DOT, + NO_DOTS, + NO_DOTS_SLASH, + STAR, + START_ANCHOR + } = constants.globChars(win32); + const nodot = opts.dot ? NO_DOTS : NO_DOT; + const slashDot = opts.dot ? NO_DOTS_SLASH : NO_DOT; + const capture = opts.capture ? "" : "?:"; + const state = { + negated: false, + prefix: "" + }; + let star = opts.bash === true ? ".*?" : STAR; + if (opts.capture) { + star = `(${star})`; + } + const globstar = (opts2) => { + if (opts2.noglobstar === true) + return star; + return `(${capture}(?:(?!${START_ANCHOR}${opts2.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`; + }; + const create = (str) => { + switch (str) { + case "*": + return `${nodot}${ONE_CHAR}${star}`; + case ".*": + return `${DOT_LITERAL}${ONE_CHAR}${star}`; + case "*.*": + return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; + case "*/*": + return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`; + case "**": + return nodot + globstar(opts); + case "**/*": + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`; + case "**/*.*": + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`; + case "**/.*": + return `(?:${nodot}${globstar(opts)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`; + default: { + const match = /^(.*?)\.(\w+)$/.exec(str); + if (!match) + return; + const source2 = create(match[1]); + if (!source2) + return; + return source2 + DOT_LITERAL + match[2]; + } + } + }; + const output = utils.removePrefix(input, state); + let source = create(output); + if (source && opts.strictSlashes !== true) { + source += `${SLASH_LITERAL}?`; + } + return source; + }; + module2.exports = parse; + } +}); +var require_picomatch = __commonJS2({ + "node_modules/picomatch/lib/picomatch.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var scan = require_scan(); + var parse = require_parse2(); + var utils = require_utils3(); + var constants = require_constants3(); + var isObject = (val) => val && typeof val === "object" && !Array.isArray(val); + var picomatch = (glob, options, returnState = false) => { + if (Array.isArray(glob)) { + const fns = glob.map((input) => picomatch(input, options, returnState)); + const arrayMatcher = (str) => { + for (const isMatch of fns) { + const state2 = isMatch(str); + if (state2) + return state2; + } + return false; + }; + return arrayMatcher; + } + const isState = isObject(glob) && glob.tokens && glob.input; + if (glob === "" || typeof glob !== "string" && !isState) { + throw new TypeError("Expected pattern to be a non-empty string"); + } + const opts = options || {}; + const posix = utils.isWindows(options); + const regex = isState ? picomatch.compileRe(glob, options) : picomatch.makeRe(glob, options, false, true); + const state = regex.state; + delete regex.state; + let isIgnored = () => false; + if (opts.ignore) { + const ignoreOpts = Object.assign(Object.assign({}, options), {}, { + ignore: null, + onMatch: null, + onResult: null + }); + isIgnored = picomatch(opts.ignore, ignoreOpts, returnState); + } + const matcher = (input, returnObject = false) => { + const { + isMatch, + match, + output + } = picomatch.test(input, regex, options, { + glob, + posix + }); + const result = { + glob, + state, + regex, + posix, + input, + output, + match, + isMatch + }; + if (typeof opts.onResult === "function") { + opts.onResult(result); + } + if (isMatch === false) { + result.isMatch = false; + return returnObject ? result : false; + } + if (isIgnored(input)) { + if (typeof opts.onIgnore === "function") { + opts.onIgnore(result); + } + result.isMatch = false; + return returnObject ? result : false; + } + if (typeof opts.onMatch === "function") { + opts.onMatch(result); + } + return returnObject ? result : true; + }; + if (returnState) { + matcher.state = state; + } + return matcher; + }; + picomatch.test = (input, regex, options, { + glob, + posix + } = {}) => { + if (typeof input !== "string") { + throw new TypeError("Expected input to be a string"); + } + if (input === "") { + return { + isMatch: false, + output: "" + }; + } + const opts = options || {}; + const format = opts.format || (posix ? utils.toPosixSlashes : null); + let match = input === glob; + let output = match && format ? format(input) : input; + if (match === false) { + output = format ? format(input) : input; + match = output === glob; + } + if (match === false || opts.capture === true) { + if (opts.matchBase === true || opts.basename === true) { + match = picomatch.matchBase(input, regex, options, posix); + } else { + match = regex.exec(output); + } + } + return { + isMatch: Boolean(match), + match, + output + }; + }; + picomatch.matchBase = (input, glob, options, posix = utils.isWindows(options)) => { + const regex = glob instanceof RegExp ? glob : picomatch.makeRe(glob, options); + return regex.test(path.basename(input)); + }; + picomatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); + picomatch.parse = (pattern, options) => { + if (Array.isArray(pattern)) + return pattern.map((p) => picomatch.parse(p, options)); + return parse(pattern, Object.assign(Object.assign({}, options), {}, { + fastpaths: false + })); + }; + picomatch.scan = (input, options) => scan(input, options); + picomatch.compileRe = (state, options, returnOutput = false, returnState = false) => { + if (returnOutput === true) { + return state.output; + } + const opts = options || {}; + const prepend = opts.contains ? "" : "^"; + const append = opts.contains ? "" : "$"; + let source = `${prepend}(?:${state.output})${append}`; + if (state && state.negated === true) { + source = `^(?!${source}).*$`; + } + const regex = picomatch.toRegex(source, options); + if (returnState === true) { + regex.state = state; + } + return regex; + }; + picomatch.makeRe = (input, options = {}, returnOutput = false, returnState = false) => { + if (!input || typeof input !== "string") { + throw new TypeError("Expected a non-empty string"); + } + let parsed = { + negated: false, + fastpaths: true + }; + if (options.fastpaths !== false && (input[0] === "." || input[0] === "*")) { + parsed.output = parse.fastpaths(input, options); + } + if (!parsed.output) { + parsed = parse(input, options); + } + return picomatch.compileRe(parsed, options, returnOutput, returnState); + }; + picomatch.toRegex = (source, options) => { + try { + const opts = options || {}; + return new RegExp(source, opts.flags || (opts.nocase ? "i" : "")); + } catch (err) { + if (options && options.debug === true) + throw err; + return /$^/; + } + }; + picomatch.constants = constants; + module2.exports = picomatch; + } +}); +var require_picomatch2 = __commonJS2({ + "node_modules/picomatch/index.js"(exports2, module2) { + "use strict"; + module2.exports = require_picomatch(); + } +}); +var require_micromatch = __commonJS2({ + "node_modules/micromatch/index.js"(exports2, module2) { + "use strict"; + var util = require("util"); + var braces = require_braces(); + var picomatch = require_picomatch2(); + var utils = require_utils3(); + var isEmptyString = (val) => val === "" || val === "./"; + var micromatch = (list, patterns, options) => { + patterns = [].concat(patterns); + list = [].concat(list); + let omit = /* @__PURE__ */ new Set(); + let keep = /* @__PURE__ */ new Set(); + let items = /* @__PURE__ */ new Set(); + let negatives = 0; + let onResult = (state) => { + items.add(state.output); + if (options && options.onResult) { + options.onResult(state); + } + }; + for (let i = 0; i < patterns.length; i++) { + let isMatch = picomatch(String(patterns[i]), Object.assign(Object.assign({}, options), {}, { + onResult + }), true); + let negated = isMatch.state.negated || isMatch.state.negatedExtglob; + if (negated) + negatives++; + for (let item of list) { + let matched = isMatch(item, true); + let match = negated ? !matched.isMatch : matched.isMatch; + if (!match) + continue; + if (negated) { + omit.add(matched.output); + } else { + omit.delete(matched.output); + keep.add(matched.output); + } + } + } + let result = negatives === patterns.length ? [...items] : [...keep]; + let matches = result.filter((item) => !omit.has(item)); + if (options && matches.length === 0) { + if (options.failglob === true) { + throw new Error(`No matches found for "${patterns.join(", ")}"`); + } + if (options.nonull === true || options.nullglob === true) { + return options.unescape ? patterns.map((p) => p.replace(/\\/g, "")) : patterns; + } + } + return matches; + }; + micromatch.match = micromatch; + micromatch.matcher = (pattern, options) => picomatch(pattern, options); + micromatch.isMatch = (str, patterns, options) => picomatch(patterns, options)(str); + micromatch.any = micromatch.isMatch; + micromatch.not = (list, patterns, options = {}) => { + patterns = [].concat(patterns).map(String); + let result = /* @__PURE__ */ new Set(); + let items = []; + let onResult = (state) => { + if (options.onResult) + options.onResult(state); + items.push(state.output); + }; + let matches = new Set(micromatch(list, patterns, Object.assign(Object.assign({}, options), {}, { + onResult + }))); + for (let item of items) { + if (!matches.has(item)) { + result.add(item); + } + } + return [...result]; + }; + micromatch.contains = (str, pattern, options) => { + if (typeof str !== "string") { + throw new TypeError(`Expected a string: "${util.inspect(str)}"`); + } + if (Array.isArray(pattern)) { + return pattern.some((p) => micromatch.contains(str, p, options)); + } + if (typeof pattern === "string") { + if (isEmptyString(str) || isEmptyString(pattern)) { + return false; + } + if (str.includes(pattern) || str.startsWith("./") && str.slice(2).includes(pattern)) { + return true; + } + } + return micromatch.isMatch(str, pattern, Object.assign(Object.assign({}, options), {}, { + contains: true + })); + }; + micromatch.matchKeys = (obj, patterns, options) => { + if (!utils.isObject(obj)) { + throw new TypeError("Expected the first argument to be an object"); + } + let keys = micromatch(Object.keys(obj), patterns, options); + let res = {}; + for (let key of keys) + res[key] = obj[key]; + return res; + }; + micromatch.some = (list, patterns, options) => { + let items = [].concat(list); + for (let pattern of [].concat(patterns)) { + let isMatch = picomatch(String(pattern), options); + if (items.some((item) => isMatch(item))) { + return true; + } + } + return false; + }; + micromatch.every = (list, patterns, options) => { + let items = [].concat(list); + for (let pattern of [].concat(patterns)) { + let isMatch = picomatch(String(pattern), options); + if (!items.every((item) => isMatch(item))) { + return false; + } + } + return true; + }; + micromatch.all = (str, patterns, options) => { + if (typeof str !== "string") { + throw new TypeError(`Expected a string: "${util.inspect(str)}"`); + } + return [].concat(patterns).every((p) => picomatch(p, options)(str)); + }; + micromatch.capture = (glob, input, options) => { + let posix = utils.isWindows(options); + let regex = picomatch.makeRe(String(glob), Object.assign(Object.assign({}, options), {}, { + capture: true + })); + let match = regex.exec(posix ? utils.toPosixSlashes(input) : input); + if (match) { + return match.slice(1).map((v) => v === void 0 ? "" : v); + } + }; + micromatch.makeRe = (...args) => picomatch.makeRe(...args); + micromatch.scan = (...args) => picomatch.scan(...args); + micromatch.parse = (patterns, options) => { + let res = []; + for (let pattern of [].concat(patterns || [])) { + for (let str of braces(String(pattern), options)) { + res.push(picomatch.parse(str, options)); + } + } + return res; + }; + micromatch.braces = (pattern, options) => { + if (typeof pattern !== "string") + throw new TypeError("Expected a string"); + if (options && options.nobrace === true || !/\{.*\}/.test(pattern)) { + return [pattern]; + } + return braces(pattern, options); + }; + micromatch.braceExpand = (pattern, options) => { + if (typeof pattern !== "string") + throw new TypeError("Expected a string"); + return micromatch.braces(pattern, Object.assign(Object.assign({}, options), {}, { + expand: true + })); + }; + module2.exports = micromatch; + } +}); +var require_parser2 = __commonJS2({ + "node_modules/@iarna/toml/lib/parser.js"(exports2, module2) { + "use strict"; + var ParserEND = 1114112; + var ParserError = class extends Error { + constructor(msg, filename, linenumber) { + super("[ParserError] " + msg, filename, linenumber); + this.name = "ParserError"; + this.code = "ParserError"; + if (Error.captureStackTrace) + Error.captureStackTrace(this, ParserError); + } + }; + var State = class { + constructor(parser) { + this.parser = parser; + this.buf = ""; + this.returned = null; + this.result = null; + this.resultTable = null; + this.resultArr = null; + } + }; + var Parser = class { + constructor() { + this.pos = 0; + this.col = 0; + this.line = 0; + this.obj = {}; + this.ctx = this.obj; + this.stack = []; + this._buf = ""; + this.char = null; + this.ii = 0; + this.state = new State(this.parseStart); + } + parse(str) { + if (str.length === 0 || str.length == null) + return; + this._buf = String(str); + this.ii = -1; + this.char = -1; + let getNext; + while (getNext === false || this.nextChar()) { + getNext = this.runOne(); + } + this._buf = null; + } + nextChar() { + if (this.char === 10) { + ++this.line; + this.col = -1; + } + ++this.ii; + this.char = this._buf.codePointAt(this.ii); + ++this.pos; + ++this.col; + return this.haveBuffer(); + } + haveBuffer() { + return this.ii < this._buf.length; + } + runOne() { + return this.state.parser.call(this, this.state.returned); + } + finish() { + this.char = ParserEND; + let last; + do { + last = this.state.parser; + this.runOne(); + } while (this.state.parser !== last); + this.ctx = null; + this.state = null; + this._buf = null; + return this.obj; + } + next(fn) { + if (typeof fn !== "function") + throw new ParserError("Tried to set state to non-existent state: " + JSON.stringify(fn)); + this.state.parser = fn; + } + goto(fn) { + this.next(fn); + return this.runOne(); + } + call(fn, returnWith) { + if (returnWith) + this.next(returnWith); + this.stack.push(this.state); + this.state = new State(fn); + } + callNow(fn, returnWith) { + this.call(fn, returnWith); + return this.runOne(); + } + return(value) { + if (this.stack.length === 0) + throw this.error(new ParserError("Stack underflow")); + if (value === void 0) + value = this.state.buf; + this.state = this.stack.pop(); + this.state.returned = value; + } + returnNow(value) { + this.return(value); + return this.runOne(); + } + consume() { + if (this.char === ParserEND) + throw this.error(new ParserError("Unexpected end-of-buffer")); + this.state.buf += this._buf[this.ii]; + } + error(err) { + err.line = this.line; + err.col = this.col; + err.pos = this.pos; + return err; + } + parseStart() { + throw new ParserError("Must declare a parseStart method"); + } + }; + Parser.END = ParserEND; + Parser.Error = ParserError; + module2.exports = Parser; + } +}); +var require_create_datetime = __commonJS2({ + "node_modules/@iarna/toml/lib/create-datetime.js"(exports2, module2) { + "use strict"; + module2.exports = (value) => { + const date = new Date(value); + if (isNaN(date)) { + throw new TypeError("Invalid Datetime"); + } else { + return date; + } + }; + } +}); +var require_format_num = __commonJS2({ + "node_modules/@iarna/toml/lib/format-num.js"(exports2, module2) { + "use strict"; + module2.exports = (d, num) => { + num = String(num); + while (num.length < d) + num = "0" + num; + return num; + }; + } +}); +var require_create_datetime_float = __commonJS2({ + "node_modules/@iarna/toml/lib/create-datetime-float.js"(exports2, module2) { + "use strict"; + var f = require_format_num(); + var FloatingDateTime = class extends Date { + constructor(value) { + super(value + "Z"); + this.isFloating = true; + } + toISOString() { + const date = `${this.getUTCFullYear()}-${f(2, this.getUTCMonth() + 1)}-${f(2, this.getUTCDate())}`; + const time = `${f(2, this.getUTCHours())}:${f(2, this.getUTCMinutes())}:${f(2, this.getUTCSeconds())}.${f(3, this.getUTCMilliseconds())}`; + return `${date}T${time}`; + } + }; + module2.exports = (value) => { + const date = new FloatingDateTime(value); + if (isNaN(date)) { + throw new TypeError("Invalid Datetime"); + } else { + return date; + } + }; + } +}); +var require_create_date = __commonJS2({ + "node_modules/@iarna/toml/lib/create-date.js"(exports2, module2) { + "use strict"; + var f = require_format_num(); + var DateTime = global.Date; + var Date2 = class extends DateTime { + constructor(value) { + super(value); + this.isDate = true; + } + toISOString() { + return `${this.getUTCFullYear()}-${f(2, this.getUTCMonth() + 1)}-${f(2, this.getUTCDate())}`; + } + }; + module2.exports = (value) => { + const date = new Date2(value); + if (isNaN(date)) { + throw new TypeError("Invalid Datetime"); + } else { + return date; + } + }; + } +}); +var require_create_time = __commonJS2({ + "node_modules/@iarna/toml/lib/create-time.js"(exports2, module2) { + "use strict"; + var f = require_format_num(); + var Time = class extends Date { + constructor(value) { + super(`0000-01-01T${value}Z`); + this.isTime = true; + } + toISOString() { + return `${f(2, this.getUTCHours())}:${f(2, this.getUTCMinutes())}:${f(2, this.getUTCSeconds())}.${f(3, this.getUTCMilliseconds())}`; + } + }; + module2.exports = (value) => { + const date = new Time(value); + if (isNaN(date)) { + throw new TypeError("Invalid Datetime"); + } else { + return date; + } + }; + } +}); +var require_toml_parser = __commonJS2({ + "node_modules/@iarna/toml/lib/toml-parser.js"(exports2, module2) { + "use strict"; + module2.exports = makeParserClass(require_parser2()); + module2.exports.makeParserClass = makeParserClass; + var TomlError = class extends Error { + constructor(msg) { + super(msg); + this.name = "TomlError"; + if (Error.captureStackTrace) + Error.captureStackTrace(this, TomlError); + this.fromTOML = true; + this.wrapped = null; + } + }; + TomlError.wrap = (err) => { + const terr = new TomlError(err.message); + terr.code = err.code; + terr.wrapped = err; + return terr; + }; + module2.exports.TomlError = TomlError; + var createDateTime = require_create_datetime(); + var createDateTimeFloat = require_create_datetime_float(); + var createDate = require_create_date(); + var createTime = require_create_time(); + var CTRL_I = 9; + var CTRL_J = 10; + var CTRL_M = 13; + var CTRL_CHAR_BOUNDARY = 31; + var CHAR_SP = 32; + var CHAR_QUOT = 34; + var CHAR_NUM = 35; + var CHAR_APOS = 39; + var CHAR_PLUS = 43; + var CHAR_COMMA = 44; + var CHAR_HYPHEN = 45; + var CHAR_PERIOD = 46; + var CHAR_0 = 48; + var CHAR_1 = 49; + var CHAR_7 = 55; + var CHAR_9 = 57; + var CHAR_COLON = 58; + var CHAR_EQUALS = 61; + var CHAR_A = 65; + var CHAR_E = 69; + var CHAR_F = 70; + var CHAR_T = 84; + var CHAR_U = 85; + var CHAR_Z = 90; + var CHAR_LOWBAR = 95; + var CHAR_a = 97; + var CHAR_b = 98; + var CHAR_e = 101; + var CHAR_f = 102; + var CHAR_i = 105; + var CHAR_l = 108; + var CHAR_n = 110; + var CHAR_o = 111; + var CHAR_r = 114; + var CHAR_s = 115; + var CHAR_t = 116; + var CHAR_u = 117; + var CHAR_x = 120; + var CHAR_z = 122; + var CHAR_LCUB = 123; + var CHAR_RCUB = 125; + var CHAR_LSQB = 91; + var CHAR_BSOL = 92; + var CHAR_RSQB = 93; + var CHAR_DEL = 127; + var SURROGATE_FIRST = 55296; + var SURROGATE_LAST = 57343; + var escapes = { + [CHAR_b]: "\b", + [CHAR_t]: " ", + [CHAR_n]: "\n", + [CHAR_f]: "\f", + [CHAR_r]: "\r", + [CHAR_QUOT]: '"', + [CHAR_BSOL]: "\\" + }; + function isDigit(cp) { + return cp >= CHAR_0 && cp <= CHAR_9; + } + function isHexit(cp) { + return cp >= CHAR_A && cp <= CHAR_F || cp >= CHAR_a && cp <= CHAR_f || cp >= CHAR_0 && cp <= CHAR_9; + } + function isBit(cp) { + return cp === CHAR_1 || cp === CHAR_0; + } + function isOctit(cp) { + return cp >= CHAR_0 && cp <= CHAR_7; + } + function isAlphaNumQuoteHyphen(cp) { + return cp >= CHAR_A && cp <= CHAR_Z || cp >= CHAR_a && cp <= CHAR_z || cp >= CHAR_0 && cp <= CHAR_9 || cp === CHAR_APOS || cp === CHAR_QUOT || cp === CHAR_LOWBAR || cp === CHAR_HYPHEN; + } + function isAlphaNumHyphen(cp) { + return cp >= CHAR_A && cp <= CHAR_Z || cp >= CHAR_a && cp <= CHAR_z || cp >= CHAR_0 && cp <= CHAR_9 || cp === CHAR_LOWBAR || cp === CHAR_HYPHEN; + } + var _type = Symbol("type"); + var _declared = Symbol("declared"); + var hasOwnProperty = Object.prototype.hasOwnProperty; + var defineProperty = Object.defineProperty; + var descriptor = { + configurable: true, + enumerable: true, + writable: true, + value: void 0 + }; + function hasKey(obj, key) { + if (hasOwnProperty.call(obj, key)) + return true; + if (key === "__proto__") + defineProperty(obj, "__proto__", descriptor); + return false; + } + var INLINE_TABLE = Symbol("inline-table"); + function InlineTable() { + return Object.defineProperties({}, { + [_type]: { + value: INLINE_TABLE + } + }); + } + function isInlineTable(obj) { + if (obj === null || typeof obj !== "object") + return false; + return obj[_type] === INLINE_TABLE; + } + var TABLE = Symbol("table"); + function Table() { + return Object.defineProperties({}, { + [_type]: { + value: TABLE + }, + [_declared]: { + value: false, + writable: true + } + }); + } + function isTable(obj) { + if (obj === null || typeof obj !== "object") + return false; + return obj[_type] === TABLE; + } + var _contentType = Symbol("content-type"); + var INLINE_LIST = Symbol("inline-list"); + function InlineList(type) { + return Object.defineProperties([], { + [_type]: { + value: INLINE_LIST + }, + [_contentType]: { + value: type + } + }); + } + function isInlineList(obj) { + if (obj === null || typeof obj !== "object") + return false; + return obj[_type] === INLINE_LIST; + } + var LIST = Symbol("list"); + function List() { + return Object.defineProperties([], { + [_type]: { + value: LIST + } + }); + } + function isList(obj) { + if (obj === null || typeof obj !== "object") + return false; + return obj[_type] === LIST; + } + var _custom; + try { + const utilInspect = require("util").inspect; + _custom = utilInspect.custom; + } catch (_) { + } + var _inspect = _custom || "inspect"; + var BoxedBigInt = class { + constructor(value) { + try { + this.value = global.BigInt.asIntN(64, value); + } catch (_) { + this.value = null; + } + Object.defineProperty(this, _type, { + value: INTEGER + }); + } + isNaN() { + return this.value === null; + } + toString() { + return String(this.value); + } + [_inspect]() { + return `[BigInt: ${this.toString()}]}`; + } + valueOf() { + return this.value; + } + }; + var INTEGER = Symbol("integer"); + function Integer(value) { + let num = Number(value); + if (Object.is(num, -0)) + num = 0; + if (global.BigInt && !Number.isSafeInteger(num)) { + return new BoxedBigInt(value); + } else { + return Object.defineProperties(new Number(num), { + isNaN: { + value: function() { + return isNaN(this); + } + }, + [_type]: { + value: INTEGER + }, + [_inspect]: { + value: () => `[Integer: ${value}]` + } + }); + } + } + function isInteger(obj) { + if (obj === null || typeof obj !== "object") + return false; + return obj[_type] === INTEGER; + } + var FLOAT = Symbol("float"); + function Float(value) { + return Object.defineProperties(new Number(value), { + [_type]: { + value: FLOAT + }, + [_inspect]: { + value: () => `[Float: ${value}]` + } + }); + } + function isFloat(obj) { + if (obj === null || typeof obj !== "object") + return false; + return obj[_type] === FLOAT; + } + function tomlType(value) { + const type = typeof value; + if (type === "object") { + if (value === null) + return "null"; + if (value instanceof Date) + return "datetime"; + if (_type in value) { + switch (value[_type]) { + case INLINE_TABLE: + return "inline-table"; + case INLINE_LIST: + return "inline-list"; + case TABLE: + return "table"; + case LIST: + return "list"; + case FLOAT: + return "float"; + case INTEGER: + return "integer"; + } + } + } + return type; + } + function makeParserClass(Parser) { + class TOMLParser extends Parser { + constructor() { + super(); + this.ctx = this.obj = Table(); + } + atEndOfWord() { + return this.char === CHAR_NUM || this.char === CTRL_I || this.char === CHAR_SP || this.atEndOfLine(); + } + atEndOfLine() { + return this.char === Parser.END || this.char === CTRL_J || this.char === CTRL_M; + } + parseStart() { + if (this.char === Parser.END) { + return null; + } else if (this.char === CHAR_LSQB) { + return this.call(this.parseTableOrList); + } else if (this.char === CHAR_NUM) { + return this.call(this.parseComment); + } else if (this.char === CTRL_J || this.char === CHAR_SP || this.char === CTRL_I || this.char === CTRL_M) { + return null; + } else if (isAlphaNumQuoteHyphen(this.char)) { + return this.callNow(this.parseAssignStatement); + } else { + throw this.error(new TomlError(`Unknown character "${this.char}"`)); + } + } + parseWhitespaceToEOL() { + if (this.char === CHAR_SP || this.char === CTRL_I || this.char === CTRL_M) { + return null; + } else if (this.char === CHAR_NUM) { + return this.goto(this.parseComment); + } else if (this.char === Parser.END || this.char === CTRL_J) { + return this.return(); + } else { + throw this.error(new TomlError("Unexpected character, expected only whitespace or comments till end of line")); + } + } + parseAssignStatement() { + return this.callNow(this.parseAssign, this.recordAssignStatement); + } + recordAssignStatement(kv) { + let target = this.ctx; + let finalKey = kv.key.pop(); + for (let kw of kv.key) { + if (hasKey(target, kw) && (!isTable(target[kw]) || target[kw][_declared])) { + throw this.error(new TomlError("Can't redefine existing key")); + } + target = target[kw] = target[kw] || Table(); + } + if (hasKey(target, finalKey)) { + throw this.error(new TomlError("Can't redefine existing key")); + } + if (isInteger(kv.value) || isFloat(kv.value)) { + target[finalKey] = kv.value.valueOf(); + } else { + target[finalKey] = kv.value; + } + return this.goto(this.parseWhitespaceToEOL); + } + parseAssign() { + return this.callNow(this.parseKeyword, this.recordAssignKeyword); + } + recordAssignKeyword(key) { + if (this.state.resultTable) { + this.state.resultTable.push(key); + } else { + this.state.resultTable = [key]; + } + return this.goto(this.parseAssignKeywordPreDot); + } + parseAssignKeywordPreDot() { + if (this.char === CHAR_PERIOD) { + return this.next(this.parseAssignKeywordPostDot); + } else if (this.char !== CHAR_SP && this.char !== CTRL_I) { + return this.goto(this.parseAssignEqual); + } + } + parseAssignKeywordPostDot() { + if (this.char !== CHAR_SP && this.char !== CTRL_I) { + return this.callNow(this.parseKeyword, this.recordAssignKeyword); + } + } + parseAssignEqual() { + if (this.char === CHAR_EQUALS) { + return this.next(this.parseAssignPreValue); + } else { + throw this.error(new TomlError('Invalid character, expected "="')); + } + } + parseAssignPreValue() { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null; + } else { + return this.callNow(this.parseValue, this.recordAssignValue); + } + } + recordAssignValue(value) { + return this.returnNow({ + key: this.state.resultTable, + value + }); + } + parseComment() { + do { + if (this.char === Parser.END || this.char === CTRL_J) { + return this.return(); + } + } while (this.nextChar()); + } + parseTableOrList() { + if (this.char === CHAR_LSQB) { + this.next(this.parseList); + } else { + return this.goto(this.parseTable); + } + } + parseTable() { + this.ctx = this.obj; + return this.goto(this.parseTableNext); + } + parseTableNext() { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null; + } else { + return this.callNow(this.parseKeyword, this.parseTableMore); + } + } + parseTableMore(keyword) { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null; + } else if (this.char === CHAR_RSQB) { + if (hasKey(this.ctx, keyword) && (!isTable(this.ctx[keyword]) || this.ctx[keyword][_declared])) { + throw this.error(new TomlError("Can't redefine existing key")); + } else { + this.ctx = this.ctx[keyword] = this.ctx[keyword] || Table(); + this.ctx[_declared] = true; + } + return this.next(this.parseWhitespaceToEOL); + } else if (this.char === CHAR_PERIOD) { + if (!hasKey(this.ctx, keyword)) { + this.ctx = this.ctx[keyword] = Table(); + } else if (isTable(this.ctx[keyword])) { + this.ctx = this.ctx[keyword]; + } else if (isList(this.ctx[keyword])) { + this.ctx = this.ctx[keyword][this.ctx[keyword].length - 1]; + } else { + throw this.error(new TomlError("Can't redefine existing key")); + } + return this.next(this.parseTableNext); + } else { + throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]")); + } + } + parseList() { + this.ctx = this.obj; + return this.goto(this.parseListNext); + } + parseListNext() { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null; + } else { + return this.callNow(this.parseKeyword, this.parseListMore); + } + } + parseListMore(keyword) { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null; + } else if (this.char === CHAR_RSQB) { + if (!hasKey(this.ctx, keyword)) { + this.ctx[keyword] = List(); + } + if (isInlineList(this.ctx[keyword])) { + throw this.error(new TomlError("Can't extend an inline array")); + } else if (isList(this.ctx[keyword])) { + const next = Table(); + this.ctx[keyword].push(next); + this.ctx = next; + } else { + throw this.error(new TomlError("Can't redefine an existing key")); + } + return this.next(this.parseListEnd); + } else if (this.char === CHAR_PERIOD) { + if (!hasKey(this.ctx, keyword)) { + this.ctx = this.ctx[keyword] = Table(); + } else if (isInlineList(this.ctx[keyword])) { + throw this.error(new TomlError("Can't extend an inline array")); + } else if (isInlineTable(this.ctx[keyword])) { + throw this.error(new TomlError("Can't extend an inline table")); + } else if (isList(this.ctx[keyword])) { + this.ctx = this.ctx[keyword][this.ctx[keyword].length - 1]; + } else if (isTable(this.ctx[keyword])) { + this.ctx = this.ctx[keyword]; + } else { + throw this.error(new TomlError("Can't redefine an existing key")); + } + return this.next(this.parseListNext); + } else { + throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]")); + } + } + parseListEnd(keyword) { + if (this.char === CHAR_RSQB) { + return this.next(this.parseWhitespaceToEOL); + } else { + throw this.error(new TomlError("Unexpected character, expected whitespace, . or ]")); + } + } + parseValue() { + if (this.char === Parser.END) { + throw this.error(new TomlError("Key without value")); + } else if (this.char === CHAR_QUOT) { + return this.next(this.parseDoubleString); + } + if (this.char === CHAR_APOS) { + return this.next(this.parseSingleString); + } else if (this.char === CHAR_HYPHEN || this.char === CHAR_PLUS) { + return this.goto(this.parseNumberSign); + } else if (this.char === CHAR_i) { + return this.next(this.parseInf); + } else if (this.char === CHAR_n) { + return this.next(this.parseNan); + } else if (isDigit(this.char)) { + return this.goto(this.parseNumberOrDateTime); + } else if (this.char === CHAR_t || this.char === CHAR_f) { + return this.goto(this.parseBoolean); + } else if (this.char === CHAR_LSQB) { + return this.call(this.parseInlineList, this.recordValue); + } else if (this.char === CHAR_LCUB) { + return this.call(this.parseInlineTable, this.recordValue); + } else { + throw this.error(new TomlError("Unexpected character, expecting string, number, datetime, boolean, inline array or inline table")); + } + } + recordValue(value) { + return this.returnNow(value); + } + parseInf() { + if (this.char === CHAR_n) { + return this.next(this.parseInf2); + } else { + throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"')); + } + } + parseInf2() { + if (this.char === CHAR_f) { + if (this.state.buf === "-") { + return this.return(-Infinity); + } else { + return this.return(Infinity); + } + } else { + throw this.error(new TomlError('Unexpected character, expected "inf", "+inf" or "-inf"')); + } + } + parseNan() { + if (this.char === CHAR_a) { + return this.next(this.parseNan2); + } else { + throw this.error(new TomlError('Unexpected character, expected "nan"')); + } + } + parseNan2() { + if (this.char === CHAR_n) { + return this.return(NaN); + } else { + throw this.error(new TomlError('Unexpected character, expected "nan"')); + } + } + parseKeyword() { + if (this.char === CHAR_QUOT) { + return this.next(this.parseBasicString); + } else if (this.char === CHAR_APOS) { + return this.next(this.parseLiteralString); + } else { + return this.goto(this.parseBareKey); + } + } + parseBareKey() { + do { + if (this.char === Parser.END) { + throw this.error(new TomlError("Key ended without value")); + } else if (isAlphaNumHyphen(this.char)) { + this.consume(); + } else if (this.state.buf.length === 0) { + throw this.error(new TomlError("Empty bare keys are not allowed")); + } else { + return this.returnNow(); + } + } while (this.nextChar()); + } + parseSingleString() { + if (this.char === CHAR_APOS) { + return this.next(this.parseLiteralMultiStringMaybe); + } else { + return this.goto(this.parseLiteralString); + } + } + parseLiteralString() { + do { + if (this.char === CHAR_APOS) { + return this.return(); + } else if (this.atEndOfLine()) { + throw this.error(new TomlError("Unterminated string")); + } else if (this.char === CHAR_DEL || this.char <= CTRL_CHAR_BOUNDARY && this.char !== CTRL_I) { + throw this.errorControlCharInString(); + } else { + this.consume(); + } + } while (this.nextChar()); + } + parseLiteralMultiStringMaybe() { + if (this.char === CHAR_APOS) { + return this.next(this.parseLiteralMultiString); + } else { + return this.returnNow(); + } + } + parseLiteralMultiString() { + if (this.char === CTRL_M) { + return null; + } else if (this.char === CTRL_J) { + return this.next(this.parseLiteralMultiStringContent); + } else { + return this.goto(this.parseLiteralMultiStringContent); + } + } + parseLiteralMultiStringContent() { + do { + if (this.char === CHAR_APOS) { + return this.next(this.parseLiteralMultiEnd); + } else if (this.char === Parser.END) { + throw this.error(new TomlError("Unterminated multi-line string")); + } else if (this.char === CHAR_DEL || this.char <= CTRL_CHAR_BOUNDARY && this.char !== CTRL_I && this.char !== CTRL_J && this.char !== CTRL_M) { + throw this.errorControlCharInString(); + } else { + this.consume(); + } + } while (this.nextChar()); + } + parseLiteralMultiEnd() { + if (this.char === CHAR_APOS) { + return this.next(this.parseLiteralMultiEnd2); + } else { + this.state.buf += "'"; + return this.goto(this.parseLiteralMultiStringContent); + } + } + parseLiteralMultiEnd2() { + if (this.char === CHAR_APOS) { + return this.return(); + } else { + this.state.buf += "''"; + return this.goto(this.parseLiteralMultiStringContent); + } + } + parseDoubleString() { + if (this.char === CHAR_QUOT) { + return this.next(this.parseMultiStringMaybe); + } else { + return this.goto(this.parseBasicString); + } + } + parseBasicString() { + do { + if (this.char === CHAR_BSOL) { + return this.call(this.parseEscape, this.recordEscapeReplacement); + } else if (this.char === CHAR_QUOT) { + return this.return(); + } else if (this.atEndOfLine()) { + throw this.error(new TomlError("Unterminated string")); + } else if (this.char === CHAR_DEL || this.char <= CTRL_CHAR_BOUNDARY && this.char !== CTRL_I) { + throw this.errorControlCharInString(); + } else { + this.consume(); + } + } while (this.nextChar()); + } + recordEscapeReplacement(replacement) { + this.state.buf += replacement; + return this.goto(this.parseBasicString); + } + parseMultiStringMaybe() { + if (this.char === CHAR_QUOT) { + return this.next(this.parseMultiString); + } else { + return this.returnNow(); + } + } + parseMultiString() { + if (this.char === CTRL_M) { + return null; + } else if (this.char === CTRL_J) { + return this.next(this.parseMultiStringContent); + } else { + return this.goto(this.parseMultiStringContent); + } + } + parseMultiStringContent() { + do { + if (this.char === CHAR_BSOL) { + return this.call(this.parseMultiEscape, this.recordMultiEscapeReplacement); + } else if (this.char === CHAR_QUOT) { + return this.next(this.parseMultiEnd); + } else if (this.char === Parser.END) { + throw this.error(new TomlError("Unterminated multi-line string")); + } else if (this.char === CHAR_DEL || this.char <= CTRL_CHAR_BOUNDARY && this.char !== CTRL_I && this.char !== CTRL_J && this.char !== CTRL_M) { + throw this.errorControlCharInString(); + } else { + this.consume(); + } + } while (this.nextChar()); + } + errorControlCharInString() { + let displayCode = "\\u00"; + if (this.char < 16) { + displayCode += "0"; + } + displayCode += this.char.toString(16); + return this.error(new TomlError(`Control characters (codes < 0x1f and 0x7f) are not allowed in strings, use ${displayCode} instead`)); + } + recordMultiEscapeReplacement(replacement) { + this.state.buf += replacement; + return this.goto(this.parseMultiStringContent); + } + parseMultiEnd() { + if (this.char === CHAR_QUOT) { + return this.next(this.parseMultiEnd2); + } else { + this.state.buf += '"'; + return this.goto(this.parseMultiStringContent); + } + } + parseMultiEnd2() { + if (this.char === CHAR_QUOT) { + return this.return(); + } else { + this.state.buf += '""'; + return this.goto(this.parseMultiStringContent); + } + } + parseMultiEscape() { + if (this.char === CTRL_M || this.char === CTRL_J) { + return this.next(this.parseMultiTrim); + } else if (this.char === CHAR_SP || this.char === CTRL_I) { + return this.next(this.parsePreMultiTrim); + } else { + return this.goto(this.parseEscape); + } + } + parsePreMultiTrim() { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null; + } else if (this.char === CTRL_M || this.char === CTRL_J) { + return this.next(this.parseMultiTrim); + } else { + throw this.error(new TomlError("Can't escape whitespace")); + } + } + parseMultiTrim() { + if (this.char === CTRL_J || this.char === CHAR_SP || this.char === CTRL_I || this.char === CTRL_M) { + return null; + } else { + return this.returnNow(); + } + } + parseEscape() { + if (this.char in escapes) { + return this.return(escapes[this.char]); + } else if (this.char === CHAR_u) { + return this.call(this.parseSmallUnicode, this.parseUnicodeReturn); + } else if (this.char === CHAR_U) { + return this.call(this.parseLargeUnicode, this.parseUnicodeReturn); + } else { + throw this.error(new TomlError("Unknown escape character: " + this.char)); + } + } + parseUnicodeReturn(char) { + try { + const codePoint = parseInt(char, 16); + if (codePoint >= SURROGATE_FIRST && codePoint <= SURROGATE_LAST) { + throw this.error(new TomlError("Invalid unicode, character in range 0xD800 - 0xDFFF is reserved")); + } + return this.returnNow(String.fromCodePoint(codePoint)); + } catch (err) { + throw this.error(TomlError.wrap(err)); + } + } + parseSmallUnicode() { + if (!isHexit(this.char)) { + throw this.error(new TomlError("Invalid character in unicode sequence, expected hex")); + } else { + this.consume(); + if (this.state.buf.length >= 4) + return this.return(); + } + } + parseLargeUnicode() { + if (!isHexit(this.char)) { + throw this.error(new TomlError("Invalid character in unicode sequence, expected hex")); + } else { + this.consume(); + if (this.state.buf.length >= 8) + return this.return(); + } + } + parseNumberSign() { + this.consume(); + return this.next(this.parseMaybeSignedInfOrNan); + } + parseMaybeSignedInfOrNan() { + if (this.char === CHAR_i) { + return this.next(this.parseInf); + } else if (this.char === CHAR_n) { + return this.next(this.parseNan); + } else { + return this.callNow(this.parseNoUnder, this.parseNumberIntegerStart); + } + } + parseNumberIntegerStart() { + if (this.char === CHAR_0) { + this.consume(); + return this.next(this.parseNumberIntegerExponentOrDecimal); + } else { + return this.goto(this.parseNumberInteger); + } + } + parseNumberIntegerExponentOrDecimal() { + if (this.char === CHAR_PERIOD) { + this.consume(); + return this.call(this.parseNoUnder, this.parseNumberFloat); + } else if (this.char === CHAR_E || this.char === CHAR_e) { + this.consume(); + return this.next(this.parseNumberExponentSign); + } else { + return this.returnNow(Integer(this.state.buf)); + } + } + parseNumberInteger() { + if (isDigit(this.char)) { + this.consume(); + } else if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnder); + } else if (this.char === CHAR_E || this.char === CHAR_e) { + this.consume(); + return this.next(this.parseNumberExponentSign); + } else if (this.char === CHAR_PERIOD) { + this.consume(); + return this.call(this.parseNoUnder, this.parseNumberFloat); + } else { + const result = Integer(this.state.buf); + if (result.isNaN()) { + throw this.error(new TomlError("Invalid number")); + } else { + return this.returnNow(result); + } + } + } + parseNoUnder() { + if (this.char === CHAR_LOWBAR || this.char === CHAR_PERIOD || this.char === CHAR_E || this.char === CHAR_e) { + throw this.error(new TomlError("Unexpected character, expected digit")); + } else if (this.atEndOfWord()) { + throw this.error(new TomlError("Incomplete number")); + } + return this.returnNow(); + } + parseNoUnderHexOctBinLiteral() { + if (this.char === CHAR_LOWBAR || this.char === CHAR_PERIOD) { + throw this.error(new TomlError("Unexpected character, expected digit")); + } else if (this.atEndOfWord()) { + throw this.error(new TomlError("Incomplete number")); + } + return this.returnNow(); + } + parseNumberFloat() { + if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnder, this.parseNumberFloat); + } else if (isDigit(this.char)) { + this.consume(); + } else if (this.char === CHAR_E || this.char === CHAR_e) { + this.consume(); + return this.next(this.parseNumberExponentSign); + } else { + return this.returnNow(Float(this.state.buf)); + } + } + parseNumberExponentSign() { + if (isDigit(this.char)) { + return this.goto(this.parseNumberExponent); + } else if (this.char === CHAR_HYPHEN || this.char === CHAR_PLUS) { + this.consume(); + this.call(this.parseNoUnder, this.parseNumberExponent); + } else { + throw this.error(new TomlError("Unexpected character, expected -, + or digit")); + } + } + parseNumberExponent() { + if (isDigit(this.char)) { + this.consume(); + } else if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnder); + } else { + return this.returnNow(Float(this.state.buf)); + } + } + parseNumberOrDateTime() { + if (this.char === CHAR_0) { + this.consume(); + return this.next(this.parseNumberBaseOrDateTime); + } else { + return this.goto(this.parseNumberOrDateTimeOnly); + } + } + parseNumberOrDateTimeOnly() { + if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnder, this.parseNumberInteger); + } else if (isDigit(this.char)) { + this.consume(); + if (this.state.buf.length > 4) + this.next(this.parseNumberInteger); + } else if (this.char === CHAR_E || this.char === CHAR_e) { + this.consume(); + return this.next(this.parseNumberExponentSign); + } else if (this.char === CHAR_PERIOD) { + this.consume(); + return this.call(this.parseNoUnder, this.parseNumberFloat); + } else if (this.char === CHAR_HYPHEN) { + return this.goto(this.parseDateTime); + } else if (this.char === CHAR_COLON) { + return this.goto(this.parseOnlyTimeHour); + } else { + return this.returnNow(Integer(this.state.buf)); + } + } + parseDateTimeOnly() { + if (this.state.buf.length < 4) { + if (isDigit(this.char)) { + return this.consume(); + } else if (this.char === CHAR_COLON) { + return this.goto(this.parseOnlyTimeHour); + } else { + throw this.error(new TomlError("Expected digit while parsing year part of a date")); + } + } else { + if (this.char === CHAR_HYPHEN) { + return this.goto(this.parseDateTime); + } else { + throw this.error(new TomlError("Expected hyphen (-) while parsing year part of date")); + } + } + } + parseNumberBaseOrDateTime() { + if (this.char === CHAR_b) { + this.consume(); + return this.call(this.parseNoUnderHexOctBinLiteral, this.parseIntegerBin); + } else if (this.char === CHAR_o) { + this.consume(); + return this.call(this.parseNoUnderHexOctBinLiteral, this.parseIntegerOct); + } else if (this.char === CHAR_x) { + this.consume(); + return this.call(this.parseNoUnderHexOctBinLiteral, this.parseIntegerHex); + } else if (this.char === CHAR_PERIOD) { + return this.goto(this.parseNumberInteger); + } else if (isDigit(this.char)) { + return this.goto(this.parseDateTimeOnly); + } else { + return this.returnNow(Integer(this.state.buf)); + } + } + parseIntegerHex() { + if (isHexit(this.char)) { + this.consume(); + } else if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnderHexOctBinLiteral); + } else { + const result = Integer(this.state.buf); + if (result.isNaN()) { + throw this.error(new TomlError("Invalid number")); + } else { + return this.returnNow(result); + } + } + } + parseIntegerOct() { + if (isOctit(this.char)) { + this.consume(); + } else if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnderHexOctBinLiteral); + } else { + const result = Integer(this.state.buf); + if (result.isNaN()) { + throw this.error(new TomlError("Invalid number")); + } else { + return this.returnNow(result); + } + } + } + parseIntegerBin() { + if (isBit(this.char)) { + this.consume(); + } else if (this.char === CHAR_LOWBAR) { + return this.call(this.parseNoUnderHexOctBinLiteral); + } else { + const result = Integer(this.state.buf); + if (result.isNaN()) { + throw this.error(new TomlError("Invalid number")); + } else { + return this.returnNow(result); + } + } + } + parseDateTime() { + if (this.state.buf.length < 4) { + throw this.error(new TomlError("Years less than 1000 must be zero padded to four characters")); + } + this.state.result = this.state.buf; + this.state.buf = ""; + return this.next(this.parseDateMonth); + } + parseDateMonth() { + if (this.char === CHAR_HYPHEN) { + if (this.state.buf.length < 2) { + throw this.error(new TomlError("Months less than 10 must be zero padded to two characters")); + } + this.state.result += "-" + this.state.buf; + this.state.buf = ""; + return this.next(this.parseDateDay); + } else if (isDigit(this.char)) { + this.consume(); + } else { + throw this.error(new TomlError("Incomplete datetime")); + } + } + parseDateDay() { + if (this.char === CHAR_T || this.char === CHAR_SP) { + if (this.state.buf.length < 2) { + throw this.error(new TomlError("Days less than 10 must be zero padded to two characters")); + } + this.state.result += "-" + this.state.buf; + this.state.buf = ""; + return this.next(this.parseStartTimeHour); + } else if (this.atEndOfWord()) { + return this.returnNow(createDate(this.state.result + "-" + this.state.buf)); + } else if (isDigit(this.char)) { + this.consume(); + } else { + throw this.error(new TomlError("Incomplete datetime")); + } + } + parseStartTimeHour() { + if (this.atEndOfWord()) { + return this.returnNow(createDate(this.state.result)); + } else { + return this.goto(this.parseTimeHour); + } + } + parseTimeHour() { + if (this.char === CHAR_COLON) { + if (this.state.buf.length < 2) { + throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters")); + } + this.state.result += "T" + this.state.buf; + this.state.buf = ""; + return this.next(this.parseTimeMin); + } else if (isDigit(this.char)) { + this.consume(); + } else { + throw this.error(new TomlError("Incomplete datetime")); + } + } + parseTimeMin() { + if (this.state.buf.length < 2 && isDigit(this.char)) { + this.consume(); + } else if (this.state.buf.length === 2 && this.char === CHAR_COLON) { + this.state.result += ":" + this.state.buf; + this.state.buf = ""; + return this.next(this.parseTimeSec); + } else { + throw this.error(new TomlError("Incomplete datetime")); + } + } + parseTimeSec() { + if (isDigit(this.char)) { + this.consume(); + if (this.state.buf.length === 2) { + this.state.result += ":" + this.state.buf; + this.state.buf = ""; + return this.next(this.parseTimeZoneOrFraction); + } + } else { + throw this.error(new TomlError("Incomplete datetime")); + } + } + parseOnlyTimeHour() { + if (this.char === CHAR_COLON) { + if (this.state.buf.length < 2) { + throw this.error(new TomlError("Hours less than 10 must be zero padded to two characters")); + } + this.state.result = this.state.buf; + this.state.buf = ""; + return this.next(this.parseOnlyTimeMin); + } else { + throw this.error(new TomlError("Incomplete time")); + } + } + parseOnlyTimeMin() { + if (this.state.buf.length < 2 && isDigit(this.char)) { + this.consume(); + } else if (this.state.buf.length === 2 && this.char === CHAR_COLON) { + this.state.result += ":" + this.state.buf; + this.state.buf = ""; + return this.next(this.parseOnlyTimeSec); + } else { + throw this.error(new TomlError("Incomplete time")); + } + } + parseOnlyTimeSec() { + if (isDigit(this.char)) { + this.consume(); + if (this.state.buf.length === 2) { + return this.next(this.parseOnlyTimeFractionMaybe); + } + } else { + throw this.error(new TomlError("Incomplete time")); + } + } + parseOnlyTimeFractionMaybe() { + this.state.result += ":" + this.state.buf; + if (this.char === CHAR_PERIOD) { + this.state.buf = ""; + this.next(this.parseOnlyTimeFraction); + } else { + return this.return(createTime(this.state.result)); + } + } + parseOnlyTimeFraction() { + if (isDigit(this.char)) { + this.consume(); + } else if (this.atEndOfWord()) { + if (this.state.buf.length === 0) + throw this.error(new TomlError("Expected digit in milliseconds")); + return this.returnNow(createTime(this.state.result + "." + this.state.buf)); + } else { + throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z")); + } + } + parseTimeZoneOrFraction() { + if (this.char === CHAR_PERIOD) { + this.consume(); + this.next(this.parseDateTimeFraction); + } else if (this.char === CHAR_HYPHEN || this.char === CHAR_PLUS) { + this.consume(); + this.next(this.parseTimeZoneHour); + } else if (this.char === CHAR_Z) { + this.consume(); + return this.return(createDateTime(this.state.result + this.state.buf)); + } else if (this.atEndOfWord()) { + return this.returnNow(createDateTimeFloat(this.state.result + this.state.buf)); + } else { + throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z")); + } + } + parseDateTimeFraction() { + if (isDigit(this.char)) { + this.consume(); + } else if (this.state.buf.length === 1) { + throw this.error(new TomlError("Expected digit in milliseconds")); + } else if (this.char === CHAR_HYPHEN || this.char === CHAR_PLUS) { + this.consume(); + this.next(this.parseTimeZoneHour); + } else if (this.char === CHAR_Z) { + this.consume(); + return this.return(createDateTime(this.state.result + this.state.buf)); + } else if (this.atEndOfWord()) { + return this.returnNow(createDateTimeFloat(this.state.result + this.state.buf)); + } else { + throw this.error(new TomlError("Unexpected character in datetime, expected period (.), minus (-), plus (+) or Z")); + } + } + parseTimeZoneHour() { + if (isDigit(this.char)) { + this.consume(); + if (/\d\d$/.test(this.state.buf)) + return this.next(this.parseTimeZoneSep); + } else { + throw this.error(new TomlError("Unexpected character in datetime, expected digit")); + } + } + parseTimeZoneSep() { + if (this.char === CHAR_COLON) { + this.consume(); + this.next(this.parseTimeZoneMin); + } else { + throw this.error(new TomlError("Unexpected character in datetime, expected colon")); + } + } + parseTimeZoneMin() { + if (isDigit(this.char)) { + this.consume(); + if (/\d\d$/.test(this.state.buf)) + return this.return(createDateTime(this.state.result + this.state.buf)); + } else { + throw this.error(new TomlError("Unexpected character in datetime, expected digit")); + } + } + parseBoolean() { + if (this.char === CHAR_t) { + this.consume(); + return this.next(this.parseTrue_r); + } else if (this.char === CHAR_f) { + this.consume(); + return this.next(this.parseFalse_a); + } + } + parseTrue_r() { + if (this.char === CHAR_r) { + this.consume(); + return this.next(this.parseTrue_u); + } else { + throw this.error(new TomlError("Invalid boolean, expected true or false")); + } + } + parseTrue_u() { + if (this.char === CHAR_u) { + this.consume(); + return this.next(this.parseTrue_e); + } else { + throw this.error(new TomlError("Invalid boolean, expected true or false")); + } + } + parseTrue_e() { + if (this.char === CHAR_e) { + return this.return(true); + } else { + throw this.error(new TomlError("Invalid boolean, expected true or false")); + } + } + parseFalse_a() { + if (this.char === CHAR_a) { + this.consume(); + return this.next(this.parseFalse_l); + } else { + throw this.error(new TomlError("Invalid boolean, expected true or false")); + } + } + parseFalse_l() { + if (this.char === CHAR_l) { + this.consume(); + return this.next(this.parseFalse_s); + } else { + throw this.error(new TomlError("Invalid boolean, expected true or false")); + } + } + parseFalse_s() { + if (this.char === CHAR_s) { + this.consume(); + return this.next(this.parseFalse_e); + } else { + throw this.error(new TomlError("Invalid boolean, expected true or false")); + } + } + parseFalse_e() { + if (this.char === CHAR_e) { + return this.return(false); + } else { + throw this.error(new TomlError("Invalid boolean, expected true or false")); + } + } + parseInlineList() { + if (this.char === CHAR_SP || this.char === CTRL_I || this.char === CTRL_M || this.char === CTRL_J) { + return null; + } else if (this.char === Parser.END) { + throw this.error(new TomlError("Unterminated inline array")); + } else if (this.char === CHAR_NUM) { + return this.call(this.parseComment); + } else if (this.char === CHAR_RSQB) { + return this.return(this.state.resultArr || InlineList()); + } else { + return this.callNow(this.parseValue, this.recordInlineListValue); + } + } + recordInlineListValue(value) { + if (this.state.resultArr) { + const listType = this.state.resultArr[_contentType]; + const valueType = tomlType(value); + if (listType !== valueType) { + throw this.error(new TomlError(`Inline lists must be a single type, not a mix of ${listType} and ${valueType}`)); + } + } else { + this.state.resultArr = InlineList(tomlType(value)); + } + if (isFloat(value) || isInteger(value)) { + this.state.resultArr.push(value.valueOf()); + } else { + this.state.resultArr.push(value); + } + return this.goto(this.parseInlineListNext); + } + parseInlineListNext() { + if (this.char === CHAR_SP || this.char === CTRL_I || this.char === CTRL_M || this.char === CTRL_J) { + return null; + } else if (this.char === CHAR_NUM) { + return this.call(this.parseComment); + } else if (this.char === CHAR_COMMA) { + return this.next(this.parseInlineList); + } else if (this.char === CHAR_RSQB) { + return this.goto(this.parseInlineList); + } else { + throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])")); + } + } + parseInlineTable() { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null; + } else if (this.char === Parser.END || this.char === CHAR_NUM || this.char === CTRL_J || this.char === CTRL_M) { + throw this.error(new TomlError("Unterminated inline array")); + } else if (this.char === CHAR_RCUB) { + return this.return(this.state.resultTable || InlineTable()); + } else { + if (!this.state.resultTable) + this.state.resultTable = InlineTable(); + return this.callNow(this.parseAssign, this.recordInlineTableValue); + } + } + recordInlineTableValue(kv) { + let target = this.state.resultTable; + let finalKey = kv.key.pop(); + for (let kw of kv.key) { + if (hasKey(target, kw) && (!isTable(target[kw]) || target[kw][_declared])) { + throw this.error(new TomlError("Can't redefine existing key")); + } + target = target[kw] = target[kw] || Table(); + } + if (hasKey(target, finalKey)) { + throw this.error(new TomlError("Can't redefine existing key")); + } + if (isInteger(kv.value) || isFloat(kv.value)) { + target[finalKey] = kv.value.valueOf(); + } else { + target[finalKey] = kv.value; + } + return this.goto(this.parseInlineTableNext); + } + parseInlineTableNext() { + if (this.char === CHAR_SP || this.char === CTRL_I) { + return null; + } else if (this.char === Parser.END || this.char === CHAR_NUM || this.char === CTRL_J || this.char === CTRL_M) { + throw this.error(new TomlError("Unterminated inline array")); + } else if (this.char === CHAR_COMMA) { + return this.next(this.parseInlineTable); + } else if (this.char === CHAR_RCUB) { + return this.goto(this.parseInlineTable); + } else { + throw this.error(new TomlError("Invalid character, expected whitespace, comma (,) or close bracket (])")); + } + } + } + return TOMLParser; + } + } +}); +var require_parse_pretty_error = __commonJS2({ + "node_modules/@iarna/toml/parse-pretty-error.js"(exports2, module2) { + "use strict"; + module2.exports = prettyError; + function prettyError(err, buf) { + if (err.pos == null || err.line == null) + return err; + let msg = err.message; + msg += ` at row ${err.line + 1}, col ${err.col + 1}, pos ${err.pos}: +`; + if (buf && buf.split) { + const lines = buf.split(/\n/); + const lineNumWidth = String(Math.min(lines.length, err.line + 3)).length; + let linePadding = " "; + while (linePadding.length < lineNumWidth) + linePadding += " "; + for (let ii = Math.max(0, err.line - 1); ii < Math.min(lines.length, err.line + 2); ++ii) { + let lineNum = String(ii + 1); + if (lineNum.length < lineNumWidth) + lineNum = " " + lineNum; + if (err.line === ii) { + msg += lineNum + "> " + lines[ii] + "\n"; + msg += linePadding + " "; + for (let hh = 0; hh < err.col; ++hh) { + msg += " "; + } + msg += "^\n"; + } else { + msg += lineNum + ": " + lines[ii] + "\n"; + } + } + } + err.message = msg + "\n"; + return err; + } + } +}); +var require_parse_string = __commonJS2({ + "node_modules/@iarna/toml/parse-string.js"(exports2, module2) { + "use strict"; + module2.exports = parseString; + var TOMLParser = require_toml_parser(); + var prettyError = require_parse_pretty_error(); + function parseString(str) { + if (global.Buffer && global.Buffer.isBuffer(str)) { + str = str.toString("utf8"); + } + const parser = new TOMLParser(); + try { + parser.parse(str); + return parser.finish(); + } catch (err) { + throw prettyError(err, str); + } + } + } +}); +var require_load_toml = __commonJS2({ + "src/utils/load-toml.js"(exports2, module2) { + "use strict"; + var parse = require_parse_string(); + module2.exports = function(filePath, content) { + try { + return parse(content); + } catch (error) { + error.message = `TOML Error in ${filePath}: +${error.message}`; + throw error; + } + }; + } +}); +var require_unicode = __commonJS2({ + "node_modules/json5/lib/unicode.js"(exports2, module2) { + module2.exports.Space_Separator = /[\u1680\u2000-\u200A\u202F\u205F\u3000]/; + module2.exports.ID_Start = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/; + module2.exports.ID_Continue = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/; + } +}); +var require_util2 = __commonJS2({ + "node_modules/json5/lib/util.js"(exports2, module2) { + var unicode = require_unicode(); + module2.exports = { + isSpaceSeparator(c) { + return typeof c === "string" && unicode.Space_Separator.test(c); + }, + isIdStartChar(c) { + return typeof c === "string" && (c >= "a" && c <= "z" || c >= "A" && c <= "Z" || c === "$" || c === "_" || unicode.ID_Start.test(c)); + }, + isIdContinueChar(c) { + return typeof c === "string" && (c >= "a" && c <= "z" || c >= "A" && c <= "Z" || c >= "0" && c <= "9" || c === "$" || c === "_" || c === "\u200C" || c === "\u200D" || unicode.ID_Continue.test(c)); + }, + isDigit(c) { + return typeof c === "string" && /[0-9]/.test(c); + }, + isHexDigit(c) { + return typeof c === "string" && /[0-9A-Fa-f]/.test(c); + } + }; + } +}); +var require_parse3 = __commonJS2({ + "node_modules/json5/lib/parse.js"(exports2, module2) { + var util = require_util2(); + var source; + var parseState; + var stack; + var pos; + var line; + var column; + var token; + var key; + var root; + module2.exports = function parse(text, reviver) { + source = String(text); + parseState = "start"; + stack = []; + pos = 0; + line = 1; + column = 0; + token = void 0; + key = void 0; + root = void 0; + do { + token = lex(); + parseStates[parseState](); + } while (token.type !== "eof"); + if (typeof reviver === "function") { + return internalize({ + "": root + }, "", reviver); + } + return root; + }; + function internalize(holder, name, reviver) { + const value = holder[name]; + if (value != null && typeof value === "object") { + if (Array.isArray(value)) { + for (let i = 0; i < value.length; i++) { + const key2 = String(i); + const replacement = internalize(value, key2, reviver); + if (replacement === void 0) { + delete value[key2]; + } else { + Object.defineProperty(value, key2, { + value: replacement, + writable: true, + enumerable: true, + configurable: true + }); + } + } + } else { + for (const key2 in value) { + const replacement = internalize(value, key2, reviver); + if (replacement === void 0) { + delete value[key2]; + } else { + Object.defineProperty(value, key2, { + value: replacement, + writable: true, + enumerable: true, + configurable: true + }); + } + } + } + } + return reviver.call(holder, name, value); + } + var lexState; + var buffer; + var doubleQuote; + var sign; + var c; + function lex() { + lexState = "default"; + buffer = ""; + doubleQuote = false; + sign = 1; + for (; ; ) { + c = peek(); + const token2 = lexStates[lexState](); + if (token2) { + return token2; + } + } + } + function peek() { + if (source[pos]) { + return String.fromCodePoint(source.codePointAt(pos)); + } + } + function read() { + const c2 = peek(); + if (c2 === "\n") { + line++; + column = 0; + } else if (c2) { + column += c2.length; + } else { + column++; + } + if (c2) { + pos += c2.length; + } + return c2; + } + var lexStates = { + default() { + switch (c) { + case " ": + case "\v": + case "\f": + case " ": + case "\xA0": + case "\uFEFF": + case "\n": + case "\r": + case "\u2028": + case "\u2029": + read(); + return; + case "/": + read(); + lexState = "comment"; + return; + case void 0: + read(); + return newToken("eof"); + } + if (util.isSpaceSeparator(c)) { + read(); + return; + } + return lexStates[parseState](); + }, + comment() { + switch (c) { + case "*": + read(); + lexState = "multiLineComment"; + return; + case "/": + read(); + lexState = "singleLineComment"; + return; + } + throw invalidChar(read()); + }, + multiLineComment() { + switch (c) { + case "*": + read(); + lexState = "multiLineCommentAsterisk"; + return; + case void 0: + throw invalidChar(read()); + } + read(); + }, + multiLineCommentAsterisk() { + switch (c) { + case "*": + read(); + return; + case "/": + read(); + lexState = "default"; + return; + case void 0: + throw invalidChar(read()); + } + read(); + lexState = "multiLineComment"; + }, + singleLineComment() { + switch (c) { + case "\n": + case "\r": + case "\u2028": + case "\u2029": + read(); + lexState = "default"; + return; + case void 0: + read(); + return newToken("eof"); + } + read(); + }, + value() { + switch (c) { + case "{": + case "[": + return newToken("punctuator", read()); + case "n": + read(); + literal("ull"); + return newToken("null", null); + case "t": + read(); + literal("rue"); + return newToken("boolean", true); + case "f": + read(); + literal("alse"); + return newToken("boolean", false); + case "-": + case "+": + if (read() === "-") { + sign = -1; + } + lexState = "sign"; + return; + case ".": + buffer = read(); + lexState = "decimalPointLeading"; + return; + case "0": + buffer = read(); + lexState = "zero"; + return; + case "1": + case "2": + case "3": + case "4": + case "5": + case "6": + case "7": + case "8": + case "9": + buffer = read(); + lexState = "decimalInteger"; + return; + case "I": + read(); + literal("nfinity"); + return newToken("numeric", Infinity); + case "N": + read(); + literal("aN"); + return newToken("numeric", NaN); + case '"': + case "'": + doubleQuote = read() === '"'; + buffer = ""; + lexState = "string"; + return; + } + throw invalidChar(read()); + }, + identifierNameStartEscape() { + if (c !== "u") { + throw invalidChar(read()); + } + read(); + const u = unicodeEscape(); + switch (u) { + case "$": + case "_": + break; + default: + if (!util.isIdStartChar(u)) { + throw invalidIdentifier(); + } + break; + } + buffer += u; + lexState = "identifierName"; + }, + identifierName() { + switch (c) { + case "$": + case "_": + case "\u200C": + case "\u200D": + buffer += read(); + return; + case "\\": + read(); + lexState = "identifierNameEscape"; + return; + } + if (util.isIdContinueChar(c)) { + buffer += read(); + return; + } + return newToken("identifier", buffer); + }, + identifierNameEscape() { + if (c !== "u") { + throw invalidChar(read()); + } + read(); + const u = unicodeEscape(); + switch (u) { + case "$": + case "_": + case "\u200C": + case "\u200D": + break; + default: + if (!util.isIdContinueChar(u)) { + throw invalidIdentifier(); + } + break; + } + buffer += u; + lexState = "identifierName"; + }, + sign() { + switch (c) { + case ".": + buffer = read(); + lexState = "decimalPointLeading"; + return; + case "0": + buffer = read(); + lexState = "zero"; + return; + case "1": + case "2": + case "3": + case "4": + case "5": + case "6": + case "7": + case "8": + case "9": + buffer = read(); + lexState = "decimalInteger"; + return; + case "I": + read(); + literal("nfinity"); + return newToken("numeric", sign * Infinity); + case "N": + read(); + literal("aN"); + return newToken("numeric", NaN); + } + throw invalidChar(read()); + }, + zero() { + switch (c) { + case ".": + buffer += read(); + lexState = "decimalPoint"; + return; + case "e": + case "E": + buffer += read(); + lexState = "decimalExponent"; + return; + case "x": + case "X": + buffer += read(); + lexState = "hexadecimal"; + return; + } + return newToken("numeric", sign * 0); + }, + decimalInteger() { + switch (c) { + case ".": + buffer += read(); + lexState = "decimalPoint"; + return; + case "e": + case "E": + buffer += read(); + lexState = "decimalExponent"; + return; + } + if (util.isDigit(c)) { + buffer += read(); + return; + } + return newToken("numeric", sign * Number(buffer)); + }, + decimalPointLeading() { + if (util.isDigit(c)) { + buffer += read(); + lexState = "decimalFraction"; + return; + } + throw invalidChar(read()); + }, + decimalPoint() { + switch (c) { + case "e": + case "E": + buffer += read(); + lexState = "decimalExponent"; + return; + } + if (util.isDigit(c)) { + buffer += read(); + lexState = "decimalFraction"; + return; + } + return newToken("numeric", sign * Number(buffer)); + }, + decimalFraction() { + switch (c) { + case "e": + case "E": + buffer += read(); + lexState = "decimalExponent"; + return; + } + if (util.isDigit(c)) { + buffer += read(); + return; + } + return newToken("numeric", sign * Number(buffer)); + }, + decimalExponent() { + switch (c) { + case "+": + case "-": + buffer += read(); + lexState = "decimalExponentSign"; + return; + } + if (util.isDigit(c)) { + buffer += read(); + lexState = "decimalExponentInteger"; + return; + } + throw invalidChar(read()); + }, + decimalExponentSign() { + if (util.isDigit(c)) { + buffer += read(); + lexState = "decimalExponentInteger"; + return; + } + throw invalidChar(read()); + }, + decimalExponentInteger() { + if (util.isDigit(c)) { + buffer += read(); + return; + } + return newToken("numeric", sign * Number(buffer)); + }, + hexadecimal() { + if (util.isHexDigit(c)) { + buffer += read(); + lexState = "hexadecimalInteger"; + return; + } + throw invalidChar(read()); + }, + hexadecimalInteger() { + if (util.isHexDigit(c)) { + buffer += read(); + return; + } + return newToken("numeric", sign * Number(buffer)); + }, + string() { + switch (c) { + case "\\": + read(); + buffer += escape(); + return; + case '"': + if (doubleQuote) { + read(); + return newToken("string", buffer); + } + buffer += read(); + return; + case "'": + if (!doubleQuote) { + read(); + return newToken("string", buffer); + } + buffer += read(); + return; + case "\n": + case "\r": + throw invalidChar(read()); + case "\u2028": + case "\u2029": + separatorChar(c); + break; + case void 0: + throw invalidChar(read()); + } + buffer += read(); + }, + start() { + switch (c) { + case "{": + case "[": + return newToken("punctuator", read()); + } + lexState = "value"; + }, + beforePropertyName() { + switch (c) { + case "$": + case "_": + buffer = read(); + lexState = "identifierName"; + return; + case "\\": + read(); + lexState = "identifierNameStartEscape"; + return; + case "}": + return newToken("punctuator", read()); + case '"': + case "'": + doubleQuote = read() === '"'; + lexState = "string"; + return; + } + if (util.isIdStartChar(c)) { + buffer += read(); + lexState = "identifierName"; + return; + } + throw invalidChar(read()); + }, + afterPropertyName() { + if (c === ":") { + return newToken("punctuator", read()); + } + throw invalidChar(read()); + }, + beforePropertyValue() { + lexState = "value"; + }, + afterPropertyValue() { + switch (c) { + case ",": + case "}": + return newToken("punctuator", read()); + } + throw invalidChar(read()); + }, + beforeArrayValue() { + if (c === "]") { + return newToken("punctuator", read()); + } + lexState = "value"; + }, + afterArrayValue() { + switch (c) { + case ",": + case "]": + return newToken("punctuator", read()); + } + throw invalidChar(read()); + }, + end() { + throw invalidChar(read()); + } + }; + function newToken(type, value) { + return { + type, + value, + line, + column + }; + } + function literal(s) { + for (const c2 of s) { + const p = peek(); + if (p !== c2) { + throw invalidChar(read()); + } + read(); + } + } + function escape() { + const c2 = peek(); + switch (c2) { + case "b": + read(); + return "\b"; + case "f": + read(); + return "\f"; + case "n": + read(); + return "\n"; + case "r": + read(); + return "\r"; + case "t": + read(); + return " "; + case "v": + read(); + return "\v"; + case "0": + read(); + if (util.isDigit(peek())) { + throw invalidChar(read()); + } + return "\0"; + case "x": + read(); + return hexEscape(); + case "u": + read(); + return unicodeEscape(); + case "\n": + case "\u2028": + case "\u2029": + read(); + return ""; + case "\r": + read(); + if (peek() === "\n") { + read(); + } + return ""; + case "1": + case "2": + case "3": + case "4": + case "5": + case "6": + case "7": + case "8": + case "9": + throw invalidChar(read()); + case void 0: + throw invalidChar(read()); + } + return read(); + } + function hexEscape() { + let buffer2 = ""; + let c2 = peek(); + if (!util.isHexDigit(c2)) { + throw invalidChar(read()); + } + buffer2 += read(); + c2 = peek(); + if (!util.isHexDigit(c2)) { + throw invalidChar(read()); + } + buffer2 += read(); + return String.fromCodePoint(parseInt(buffer2, 16)); + } + function unicodeEscape() { + let buffer2 = ""; + let count = 4; + while (count-- > 0) { + const c2 = peek(); + if (!util.isHexDigit(c2)) { + throw invalidChar(read()); + } + buffer2 += read(); + } + return String.fromCodePoint(parseInt(buffer2, 16)); + } + var parseStates = { + start() { + if (token.type === "eof") { + throw invalidEOF(); + } + push(); + }, + beforePropertyName() { + switch (token.type) { + case "identifier": + case "string": + key = token.value; + parseState = "afterPropertyName"; + return; + case "punctuator": + pop(); + return; + case "eof": + throw invalidEOF(); + } + }, + afterPropertyName() { + if (token.type === "eof") { + throw invalidEOF(); + } + parseState = "beforePropertyValue"; + }, + beforePropertyValue() { + if (token.type === "eof") { + throw invalidEOF(); + } + push(); + }, + beforeArrayValue() { + if (token.type === "eof") { + throw invalidEOF(); + } + if (token.type === "punctuator" && token.value === "]") { + pop(); + return; + } + push(); + }, + afterPropertyValue() { + if (token.type === "eof") { + throw invalidEOF(); + } + switch (token.value) { + case ",": + parseState = "beforePropertyName"; + return; + case "}": + pop(); + } + }, + afterArrayValue() { + if (token.type === "eof") { + throw invalidEOF(); + } + switch (token.value) { + case ",": + parseState = "beforeArrayValue"; + return; + case "]": + pop(); + } + }, + end() { + } + }; + function push() { + let value; + switch (token.type) { + case "punctuator": + switch (token.value) { + case "{": + value = {}; + break; + case "[": + value = []; + break; + } + break; + case "null": + case "boolean": + case "numeric": + case "string": + value = token.value; + break; + } + if (root === void 0) { + root = value; + } else { + const parent = stack[stack.length - 1]; + if (Array.isArray(parent)) { + parent.push(value); + } else { + Object.defineProperty(parent, key, { + value, + writable: true, + enumerable: true, + configurable: true + }); + } + } + if (value !== null && typeof value === "object") { + stack.push(value); + if (Array.isArray(value)) { + parseState = "beforeArrayValue"; + } else { + parseState = "beforePropertyName"; + } + } else { + const current = stack[stack.length - 1]; + if (current == null) { + parseState = "end"; + } else if (Array.isArray(current)) { + parseState = "afterArrayValue"; + } else { + parseState = "afterPropertyValue"; + } + } + } + function pop() { + stack.pop(); + const current = stack[stack.length - 1]; + if (current == null) { + parseState = "end"; + } else if (Array.isArray(current)) { + parseState = "afterArrayValue"; + } else { + parseState = "afterPropertyValue"; + } + } + function invalidChar(c2) { + if (c2 === void 0) { + return syntaxError(`JSON5: invalid end of input at ${line}:${column}`); + } + return syntaxError(`JSON5: invalid character '${formatChar(c2)}' at ${line}:${column}`); + } + function invalidEOF() { + return syntaxError(`JSON5: invalid end of input at ${line}:${column}`); + } + function invalidIdentifier() { + column -= 5; + return syntaxError(`JSON5: invalid identifier character at ${line}:${column}`); + } + function separatorChar(c2) { + console.warn(`JSON5: '${formatChar(c2)}' in strings is not valid ECMAScript; consider escaping`); + } + function formatChar(c2) { + const replacements = { + "'": "\\'", + '"': '\\"', + "\\": "\\\\", + "\b": "\\b", + "\f": "\\f", + "\n": "\\n", + "\r": "\\r", + " ": "\\t", + "\v": "\\v", + "\0": "\\0", + "\u2028": "\\u2028", + "\u2029": "\\u2029" + }; + if (replacements[c2]) { + return replacements[c2]; + } + if (c2 < " ") { + const hexString = c2.charCodeAt(0).toString(16); + return "\\x" + ("00" + hexString).substring(hexString.length); + } + return c2; + } + function syntaxError(message) { + const err = new SyntaxError(message); + err.lineNumber = line; + err.columnNumber = column; + return err; + } + } +}); +var require_stringify2 = __commonJS2({ + "node_modules/json5/lib/stringify.js"(exports2, module2) { + var util = require_util2(); + module2.exports = function stringify(value, replacer, space) { + const stack = []; + let indent = ""; + let propertyList; + let replacerFunc; + let gap = ""; + let quote; + if (replacer != null && typeof replacer === "object" && !Array.isArray(replacer)) { + space = replacer.space; + quote = replacer.quote; + replacer = replacer.replacer; + } + if (typeof replacer === "function") { + replacerFunc = replacer; + } else if (Array.isArray(replacer)) { + propertyList = []; + for (const v of replacer) { + let item; + if (typeof v === "string") { + item = v; + } else if (typeof v === "number" || v instanceof String || v instanceof Number) { + item = String(v); + } + if (item !== void 0 && propertyList.indexOf(item) < 0) { + propertyList.push(item); + } + } + } + if (space instanceof Number) { + space = Number(space); + } else if (space instanceof String) { + space = String(space); + } + if (typeof space === "number") { + if (space > 0) { + space = Math.min(10, Math.floor(space)); + gap = " ".substr(0, space); + } + } else if (typeof space === "string") { + gap = space.substr(0, 10); + } + return serializeProperty("", { + "": value + }); + function serializeProperty(key, holder) { + let value2 = holder[key]; + if (value2 != null) { + if (typeof value2.toJSON5 === "function") { + value2 = value2.toJSON5(key); + } else if (typeof value2.toJSON === "function") { + value2 = value2.toJSON(key); + } + } + if (replacerFunc) { + value2 = replacerFunc.call(holder, key, value2); + } + if (value2 instanceof Number) { + value2 = Number(value2); + } else if (value2 instanceof String) { + value2 = String(value2); + } else if (value2 instanceof Boolean) { + value2 = value2.valueOf(); + } + switch (value2) { + case null: + return "null"; + case true: + return "true"; + case false: + return "false"; + } + if (typeof value2 === "string") { + return quoteString(value2, false); + } + if (typeof value2 === "number") { + return String(value2); + } + if (typeof value2 === "object") { + return Array.isArray(value2) ? serializeArray(value2) : serializeObject(value2); + } + return void 0; + } + function quoteString(value2) { + const quotes = { + "'": 0.1, + '"': 0.2 + }; + const replacements = { + "'": "\\'", + '"': '\\"', + "\\": "\\\\", + "\b": "\\b", + "\f": "\\f", + "\n": "\\n", + "\r": "\\r", + " ": "\\t", + "\v": "\\v", + "\0": "\\0", + "\u2028": "\\u2028", + "\u2029": "\\u2029" + }; + let product = ""; + for (let i = 0; i < value2.length; i++) { + const c = value2[i]; + switch (c) { + case "'": + case '"': + quotes[c]++; + product += c; + continue; + case "\0": + if (util.isDigit(value2[i + 1])) { + product += "\\x00"; + continue; + } + } + if (replacements[c]) { + product += replacements[c]; + continue; + } + if (c < " ") { + let hexString = c.charCodeAt(0).toString(16); + product += "\\x" + ("00" + hexString).substring(hexString.length); + continue; + } + product += c; + } + const quoteChar = quote || Object.keys(quotes).reduce((a, b) => quotes[a] < quotes[b] ? a : b); + product = product.replace(new RegExp(quoteChar, "g"), replacements[quoteChar]); + return quoteChar + product + quoteChar; + } + function serializeObject(value2) { + if (stack.indexOf(value2) >= 0) { + throw TypeError("Converting circular structure to JSON5"); + } + stack.push(value2); + let stepback = indent; + indent = indent + gap; + let keys = propertyList || Object.keys(value2); + let partial = []; + for (const key of keys) { + const propertyString = serializeProperty(key, value2); + if (propertyString !== void 0) { + let member = serializeKey(key) + ":"; + if (gap !== "") { + member += " "; + } + member += propertyString; + partial.push(member); + } + } + let final; + if (partial.length === 0) { + final = "{}"; + } else { + let properties; + if (gap === "") { + properties = partial.join(","); + final = "{" + properties + "}"; + } else { + let separator = ",\n" + indent; + properties = partial.join(separator); + final = "{\n" + indent + properties + ",\n" + stepback + "}"; + } + } + stack.pop(); + indent = stepback; + return final; + } + function serializeKey(key) { + if (key.length === 0) { + return quoteString(key, true); + } + const firstChar = String.fromCodePoint(key.codePointAt(0)); + if (!util.isIdStartChar(firstChar)) { + return quoteString(key, true); + } + for (let i = firstChar.length; i < key.length; i++) { + if (!util.isIdContinueChar(String.fromCodePoint(key.codePointAt(i)))) { + return quoteString(key, true); + } + } + return key; + } + function serializeArray(value2) { + if (stack.indexOf(value2) >= 0) { + throw TypeError("Converting circular structure to JSON5"); + } + stack.push(value2); + let stepback = indent; + indent = indent + gap; + let partial = []; + for (let i = 0; i < value2.length; i++) { + const propertyString = serializeProperty(String(i), value2); + partial.push(propertyString !== void 0 ? propertyString : "null"); + } + let final; + if (partial.length === 0) { + final = "[]"; + } else { + if (gap === "") { + let properties = partial.join(","); + final = "[" + properties + "]"; + } else { + let separator = ",\n" + indent; + let properties = partial.join(separator); + final = "[\n" + indent + properties + ",\n" + stepback + "]"; + } + } + stack.pop(); + indent = stepback; + return final; + } + }; + } +}); +var require_lib6 = __commonJS2({ + "node_modules/json5/lib/index.js"(exports2, module2) { + var parse = require_parse3(); + var stringify = require_stringify2(); + var JSON5 = { + parse, + stringify + }; + module2.exports = JSON5; + } +}); +var require_load_json5 = __commonJS2({ + "src/utils/load-json5.js"(exports2, module2) { + "use strict"; + var { + parse + } = require_lib6(); + module2.exports = function(filePath, content) { + try { + return parse(content); + } catch (error) { + error.message = `JSON5 Error in ${filePath}: +${error.message}`; + throw error; + } + }; + } +}); +var require_partition = __commonJS2({ + "src/utils/partition.js"(exports2, module2) { + "use strict"; + function partition(array, predicate) { + const result = [[], []]; + for (const value of array) { + result[predicate(value) ? 0 : 1].push(value); + } + return result; + } + module2.exports = partition; + } +}); +var require_homedir = __commonJS2({ + "node_modules/resolve/lib/homedir.js"(exports2, module2) { + "use strict"; + var os = require("os"); + module2.exports = os.homedir || function homedir() { + var home = process.env.HOME; + var user = process.env.LOGNAME || process.env.USER || process.env.LNAME || process.env.USERNAME; + if (process.platform === "win32") { + return process.env.USERPROFILE || process.env.HOMEDRIVE + process.env.HOMEPATH || home || null; + } + if (process.platform === "darwin") { + return home || (user ? "/Users/" + user : null); + } + if (process.platform === "linux") { + return home || (process.getuid() === 0 ? "/root" : user ? "/home/" + user : null); + } + return home || null; + }; + } +}); +var require_caller = __commonJS2({ + "node_modules/resolve/lib/caller.js"(exports2, module2) { + module2.exports = function() { + var origPrepareStackTrace = Error.prepareStackTrace; + Error.prepareStackTrace = function(_, stack2) { + return stack2; + }; + var stack = new Error().stack; + Error.prepareStackTrace = origPrepareStackTrace; + return stack[2].getFileName(); + }; + } +}); +var require_path_parse = __commonJS2({ + "node_modules/path-parse/index.js"(exports2, module2) { + "use strict"; + var isWindows = process.platform === "win32"; + var splitWindowsRe = /^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/; + var win32 = {}; + function win32SplitPath(filename) { + return splitWindowsRe.exec(filename).slice(1); + } + win32.parse = function(pathString) { + if (typeof pathString !== "string") { + throw new TypeError("Parameter 'pathString' must be a string, not " + typeof pathString); + } + var allParts = win32SplitPath(pathString); + if (!allParts || allParts.length !== 5) { + throw new TypeError("Invalid path '" + pathString + "'"); + } + return { + root: allParts[1], + dir: allParts[0] === allParts[1] ? allParts[0] : allParts[0].slice(0, -1), + base: allParts[2], + ext: allParts[4], + name: allParts[3] + }; + }; + var splitPathRe = /^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/; + var posix = {}; + function posixSplitPath(filename) { + return splitPathRe.exec(filename).slice(1); + } + posix.parse = function(pathString) { + if (typeof pathString !== "string") { + throw new TypeError("Parameter 'pathString' must be a string, not " + typeof pathString); + } + var allParts = posixSplitPath(pathString); + if (!allParts || allParts.length !== 5) { + throw new TypeError("Invalid path '" + pathString + "'"); + } + return { + root: allParts[1], + dir: allParts[0].slice(0, -1), + base: allParts[2], + ext: allParts[4], + name: allParts[3] + }; + }; + if (isWindows) + module2.exports = win32.parse; + else + module2.exports = posix.parse; + module2.exports.posix = posix.parse; + module2.exports.win32 = win32.parse; + } +}); +var require_node_modules_paths = __commonJS2({ + "node_modules/resolve/lib/node-modules-paths.js"(exports2, module2) { + var path = require("path"); + var parse = path.parse || require_path_parse(); + var getNodeModulesDirs = function getNodeModulesDirs2(absoluteStart, modules) { + var prefix = "/"; + if (/^([A-Za-z]:)/.test(absoluteStart)) { + prefix = ""; + } else if (/^\\\\/.test(absoluteStart)) { + prefix = "\\\\"; + } + var paths = [absoluteStart]; + var parsed = parse(absoluteStart); + while (parsed.dir !== paths[paths.length - 1]) { + paths.push(parsed.dir); + parsed = parse(parsed.dir); + } + return paths.reduce(function(dirs, aPath) { + return dirs.concat(modules.map(function(moduleDir) { + return path.resolve(prefix, aPath, moduleDir); + })); + }, []); + }; + module2.exports = function nodeModulesPaths(start, opts, request) { + var modules = opts && opts.moduleDirectory ? [].concat(opts.moduleDirectory) : ["node_modules"]; + if (opts && typeof opts.paths === "function") { + return opts.paths(request, start, function() { + return getNodeModulesDirs(start, modules); + }, opts); + } + var dirs = getNodeModulesDirs(start, modules); + return opts && opts.paths ? dirs.concat(opts.paths) : dirs; + }; + } +}); +var require_normalize_options = __commonJS2({ + "node_modules/resolve/lib/normalize-options.js"(exports2, module2) { + module2.exports = function(x, opts) { + return opts || {}; + }; + } +}); +var require_implementation = __commonJS2({ + "node_modules/function-bind/implementation.js"(exports2, module2) { + "use strict"; + var ERROR_MESSAGE = "Function.prototype.bind called on incompatible "; + var slice = Array.prototype.slice; + var toStr = Object.prototype.toString; + var funcType = "[object Function]"; + module2.exports = function bind(that) { + var target = this; + if (typeof target !== "function" || toStr.call(target) !== funcType) { + throw new TypeError(ERROR_MESSAGE + target); + } + var args = slice.call(arguments, 1); + var bound; + var binder = function() { + if (this instanceof bound) { + var result = target.apply(this, args.concat(slice.call(arguments))); + if (Object(result) === result) { + return result; + } + return this; + } else { + return target.apply(that, args.concat(slice.call(arguments))); + } + }; + var boundLength = Math.max(0, target.length - args.length); + var boundArgs = []; + for (var i = 0; i < boundLength; i++) { + boundArgs.push("$" + i); + } + bound = Function("binder", "return function (" + boundArgs.join(",") + "){ return binder.apply(this,arguments); }")(binder); + if (target.prototype) { + var Empty = function Empty2() { + }; + Empty.prototype = target.prototype; + bound.prototype = new Empty(); + Empty.prototype = null; + } + return bound; + }; + } +}); +var require_function_bind = __commonJS2({ + "node_modules/function-bind/index.js"(exports2, module2) { + "use strict"; + var implementation = require_implementation(); + module2.exports = Function.prototype.bind || implementation; + } +}); +var require_src = __commonJS2({ + "node_modules/has/src/index.js"(exports2, module2) { + "use strict"; + var bind = require_function_bind(); + module2.exports = bind.call(Function.call, Object.prototype.hasOwnProperty); + } +}); +var require_core2 = __commonJS2({ + "node_modules/is-core-module/core.json"(exports2, module2) { + module2.exports = { + assert: true, + "node:assert": [">= 14.18 && < 15", ">= 16"], + "assert/strict": ">= 15", + "node:assert/strict": ">= 16", + async_hooks: ">= 8", + "node:async_hooks": [">= 14.18 && < 15", ">= 16"], + buffer_ieee754: ">= 0.5 && < 0.9.7", + buffer: true, + "node:buffer": [">= 14.18 && < 15", ">= 16"], + child_process: true, + "node:child_process": [">= 14.18 && < 15", ">= 16"], + cluster: ">= 0.5", + "node:cluster": [">= 14.18 && < 15", ">= 16"], + console: true, + "node:console": [">= 14.18 && < 15", ">= 16"], + constants: true, + "node:constants": [">= 14.18 && < 15", ">= 16"], + crypto: true, + "node:crypto": [">= 14.18 && < 15", ">= 16"], + _debug_agent: ">= 1 && < 8", + _debugger: "< 8", + dgram: true, + "node:dgram": [">= 14.18 && < 15", ">= 16"], + diagnostics_channel: [">= 14.17 && < 15", ">= 15.1"], + "node:diagnostics_channel": [">= 14.18 && < 15", ">= 16"], + dns: true, + "node:dns": [">= 14.18 && < 15", ">= 16"], + "dns/promises": ">= 15", + "node:dns/promises": ">= 16", + domain: ">= 0.7.12", + "node:domain": [">= 14.18 && < 15", ">= 16"], + events: true, + "node:events": [">= 14.18 && < 15", ">= 16"], + freelist: "< 6", + fs: true, + "node:fs": [">= 14.18 && < 15", ">= 16"], + "fs/promises": [">= 10 && < 10.1", ">= 14"], + "node:fs/promises": [">= 14.18 && < 15", ">= 16"], + _http_agent: ">= 0.11.1", + "node:_http_agent": [">= 14.18 && < 15", ">= 16"], + _http_client: ">= 0.11.1", + "node:_http_client": [">= 14.18 && < 15", ">= 16"], + _http_common: ">= 0.11.1", + "node:_http_common": [">= 14.18 && < 15", ">= 16"], + _http_incoming: ">= 0.11.1", + "node:_http_incoming": [">= 14.18 && < 15", ">= 16"], + _http_outgoing: ">= 0.11.1", + "node:_http_outgoing": [">= 14.18 && < 15", ">= 16"], + _http_server: ">= 0.11.1", + "node:_http_server": [">= 14.18 && < 15", ">= 16"], + http: true, + "node:http": [">= 14.18 && < 15", ">= 16"], + http2: ">= 8.8", + "node:http2": [">= 14.18 && < 15", ">= 16"], + https: true, + "node:https": [">= 14.18 && < 15", ">= 16"], + inspector: ">= 8", + "node:inspector": [">= 14.18 && < 15", ">= 16"], + "inspector/promises": [">= 19"], + "node:inspector/promises": [">= 19"], + _linklist: "< 8", + module: true, + "node:module": [">= 14.18 && < 15", ">= 16"], + net: true, + "node:net": [">= 14.18 && < 15", ">= 16"], + "node-inspect/lib/_inspect": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_client": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_repl": ">= 7.6 && < 12", + os: true, + "node:os": [">= 14.18 && < 15", ">= 16"], + path: true, + "node:path": [">= 14.18 && < 15", ">= 16"], + "path/posix": ">= 15.3", + "node:path/posix": ">= 16", + "path/win32": ">= 15.3", + "node:path/win32": ">= 16", + perf_hooks: ">= 8.5", + "node:perf_hooks": [">= 14.18 && < 15", ">= 16"], + process: ">= 1", + "node:process": [">= 14.18 && < 15", ">= 16"], + punycode: ">= 0.5", + "node:punycode": [">= 14.18 && < 15", ">= 16"], + querystring: true, + "node:querystring": [">= 14.18 && < 15", ">= 16"], + readline: true, + "node:readline": [">= 14.18 && < 15", ">= 16"], + "readline/promises": ">= 17", + "node:readline/promises": ">= 17", + repl: true, + "node:repl": [">= 14.18 && < 15", ">= 16"], + smalloc: ">= 0.11.5 && < 3", + _stream_duplex: ">= 0.9.4", + "node:_stream_duplex": [">= 14.18 && < 15", ">= 16"], + _stream_transform: ">= 0.9.4", + "node:_stream_transform": [">= 14.18 && < 15", ">= 16"], + _stream_wrap: ">= 1.4.1", + "node:_stream_wrap": [">= 14.18 && < 15", ">= 16"], + _stream_passthrough: ">= 0.9.4", + "node:_stream_passthrough": [">= 14.18 && < 15", ">= 16"], + _stream_readable: ">= 0.9.4", + "node:_stream_readable": [">= 14.18 && < 15", ">= 16"], + _stream_writable: ">= 0.9.4", + "node:_stream_writable": [">= 14.18 && < 15", ">= 16"], + stream: true, + "node:stream": [">= 14.18 && < 15", ">= 16"], + "stream/consumers": ">= 16.7", + "node:stream/consumers": ">= 16.7", + "stream/promises": ">= 15", + "node:stream/promises": ">= 16", + "stream/web": ">= 16.5", + "node:stream/web": ">= 16.5", + string_decoder: true, + "node:string_decoder": [">= 14.18 && < 15", ">= 16"], + sys: [">= 0.4 && < 0.7", ">= 0.8"], + "node:sys": [">= 14.18 && < 15", ">= 16"], + "node:test": [">= 16.17 && < 17", ">= 18"], + timers: true, + "node:timers": [">= 14.18 && < 15", ">= 16"], + "timers/promises": ">= 15", + "node:timers/promises": ">= 16", + _tls_common: ">= 0.11.13", + "node:_tls_common": [">= 14.18 && < 15", ">= 16"], + _tls_legacy: ">= 0.11.3 && < 10", + _tls_wrap: ">= 0.11.3", + "node:_tls_wrap": [">= 14.18 && < 15", ">= 16"], + tls: true, + "node:tls": [">= 14.18 && < 15", ">= 16"], + trace_events: ">= 10", + "node:trace_events": [">= 14.18 && < 15", ">= 16"], + tty: true, + "node:tty": [">= 14.18 && < 15", ">= 16"], + url: true, + "node:url": [">= 14.18 && < 15", ">= 16"], + util: true, + "node:util": [">= 14.18 && < 15", ">= 16"], + "util/types": ">= 15.3", + "node:util/types": ">= 16", + "v8/tools/arguments": ">= 10 && < 12", + "v8/tools/codemap": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/consarray": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/csvparser": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/logreader": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/profile_view": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/splaytree": [">= 4.4 && < 5", ">= 5.2 && < 12"], + v8: ">= 1", + "node:v8": [">= 14.18 && < 15", ">= 16"], + vm: true, + "node:vm": [">= 14.18 && < 15", ">= 16"], + wasi: ">= 13.4 && < 13.5", + worker_threads: ">= 11.7", + "node:worker_threads": [">= 14.18 && < 15", ">= 16"], + zlib: ">= 0.5", + "node:zlib": [">= 14.18 && < 15", ">= 16"] + }; + } +}); +var require_is_core_module = __commonJS2({ + "node_modules/is-core-module/index.js"(exports2, module2) { + "use strict"; + var has = require_src(); + function specifierIncluded(current, specifier) { + var nodeParts = current.split("."); + var parts = specifier.split(" "); + var op = parts.length > 1 ? parts[0] : "="; + var versionParts = (parts.length > 1 ? parts[1] : parts[0]).split("."); + for (var i = 0; i < 3; ++i) { + var cur = parseInt(nodeParts[i] || 0, 10); + var ver = parseInt(versionParts[i] || 0, 10); + if (cur === ver) { + continue; + } + if (op === "<") { + return cur < ver; + } + if (op === ">=") { + return cur >= ver; + } + return false; + } + return op === ">="; + } + function matchesRange(current, range) { + var specifiers = range.split(/ ?&& ?/); + if (specifiers.length === 0) { + return false; + } + for (var i = 0; i < specifiers.length; ++i) { + if (!specifierIncluded(current, specifiers[i])) { + return false; + } + } + return true; + } + function versionIncluded(nodeVersion, specifierValue) { + if (typeof specifierValue === "boolean") { + return specifierValue; + } + var current = typeof nodeVersion === "undefined" ? process.versions && process.versions.node : nodeVersion; + if (typeof current !== "string") { + throw new TypeError(typeof nodeVersion === "undefined" ? "Unable to determine current node version" : "If provided, a valid node version is required"); + } + if (specifierValue && typeof specifierValue === "object") { + for (var i = 0; i < specifierValue.length; ++i) { + if (matchesRange(current, specifierValue[i])) { + return true; + } + } + return false; + } + return matchesRange(current, specifierValue); + } + var data = require_core2(); + module2.exports = function isCore(x, nodeVersion) { + return has(data, x) && versionIncluded(nodeVersion, data[x]); + }; + } +}); +var require_async = __commonJS2({ + "node_modules/resolve/lib/async.js"(exports2, module2) { + var fs = require("fs"); + var getHomedir = require_homedir(); + var path = require("path"); + var caller = require_caller(); + var nodeModulesPaths = require_node_modules_paths(); + var normalizeOptions = require_normalize_options(); + var isCore = require_is_core_module(); + var realpathFS = process.platform !== "win32" && fs.realpath && typeof fs.realpath.native === "function" ? fs.realpath.native : fs.realpath; + var homedir = getHomedir(); + var defaultPaths = function() { + return [path.join(homedir, ".node_modules"), path.join(homedir, ".node_libraries")]; + }; + var defaultIsFile = function isFile(file, cb) { + fs.stat(file, function(err, stat) { + if (!err) { + return cb(null, stat.isFile() || stat.isFIFO()); + } + if (err.code === "ENOENT" || err.code === "ENOTDIR") + return cb(null, false); + return cb(err); + }); + }; + var defaultIsDir = function isDirectory(dir, cb) { + fs.stat(dir, function(err, stat) { + if (!err) { + return cb(null, stat.isDirectory()); + } + if (err.code === "ENOENT" || err.code === "ENOTDIR") + return cb(null, false); + return cb(err); + }); + }; + var defaultRealpath = function realpath(x, cb) { + realpathFS(x, function(realpathErr, realPath) { + if (realpathErr && realpathErr.code !== "ENOENT") + cb(realpathErr); + else + cb(null, realpathErr ? x : realPath); + }); + }; + var maybeRealpath = function maybeRealpath2(realpath, x, opts, cb) { + if (opts && opts.preserveSymlinks === false) { + realpath(x, cb); + } else { + cb(null, x); + } + }; + var defaultReadPackage = function defaultReadPackage2(readFile, pkgfile, cb) { + readFile(pkgfile, function(readFileErr, body) { + if (readFileErr) + cb(readFileErr); + else { + try { + var pkg = JSON.parse(body); + cb(null, pkg); + } catch (jsonErr) { + cb(null); + } + } + }); + }; + var getPackageCandidates = function getPackageCandidates2(x, start, opts) { + var dirs = nodeModulesPaths(start, opts, x); + for (var i = 0; i < dirs.length; i++) { + dirs[i] = path.join(dirs[i], x); + } + return dirs; + }; + module2.exports = function resolve(x, options, callback) { + var cb = callback; + var opts = options; + if (typeof options === "function") { + cb = opts; + opts = {}; + } + if (typeof x !== "string") { + var err = new TypeError("Path must be a string."); + return process.nextTick(function() { + cb(err); + }); + } + opts = normalizeOptions(x, opts); + var isFile = opts.isFile || defaultIsFile; + var isDirectory = opts.isDirectory || defaultIsDir; + var readFile = opts.readFile || fs.readFile; + var realpath = opts.realpath || defaultRealpath; + var readPackage = opts.readPackage || defaultReadPackage; + if (opts.readFile && opts.readPackage) { + var conflictErr = new TypeError("`readFile` and `readPackage` are mutually exclusive."); + return process.nextTick(function() { + cb(conflictErr); + }); + } + var packageIterator = opts.packageIterator; + var extensions = opts.extensions || [".js"]; + var includeCoreModules = opts.includeCoreModules !== false; + var basedir = opts.basedir || path.dirname(caller()); + var parent = opts.filename || basedir; + opts.paths = opts.paths || defaultPaths(); + var absoluteStart = path.resolve(basedir); + maybeRealpath(realpath, absoluteStart, opts, function(err2, realStart) { + if (err2) + cb(err2); + else + init(realStart); + }); + var res; + function init(basedir2) { + if (/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/.test(x)) { + res = path.resolve(basedir2, x); + if (x === "." || x === ".." || x.slice(-1) === "/") + res += "/"; + if (/\/$/.test(x) && res === basedir2) { + loadAsDirectory(res, opts.package, onfile); + } else + loadAsFile(res, opts.package, onfile); + } else if (includeCoreModules && isCore(x)) { + return cb(null, x); + } else + loadNodeModules(x, basedir2, function(err2, n, pkg) { + if (err2) + cb(err2); + else if (n) { + return maybeRealpath(realpath, n, opts, function(err3, realN) { + if (err3) { + cb(err3); + } else { + cb(null, realN, pkg); + } + }); + } else { + var moduleError = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + moduleError.code = "MODULE_NOT_FOUND"; + cb(moduleError); + } + }); + } + function onfile(err2, m, pkg) { + if (err2) + cb(err2); + else if (m) + cb(null, m, pkg); + else + loadAsDirectory(res, function(err3, d, pkg2) { + if (err3) + cb(err3); + else if (d) { + maybeRealpath(realpath, d, opts, function(err4, realD) { + if (err4) { + cb(err4); + } else { + cb(null, realD, pkg2); + } + }); + } else { + var moduleError = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + moduleError.code = "MODULE_NOT_FOUND"; + cb(moduleError); + } + }); + } + function loadAsFile(x2, thePackage, callback2) { + var loadAsFilePackage = thePackage; + var cb2 = callback2; + if (typeof loadAsFilePackage === "function") { + cb2 = loadAsFilePackage; + loadAsFilePackage = void 0; + } + var exts = [""].concat(extensions); + load(exts, x2, loadAsFilePackage); + function load(exts2, x3, loadPackage) { + if (exts2.length === 0) + return cb2(null, void 0, loadPackage); + var file = x3 + exts2[0]; + var pkg = loadPackage; + if (pkg) + onpkg(null, pkg); + else + loadpkg(path.dirname(file), onpkg); + function onpkg(err2, pkg_, dir) { + pkg = pkg_; + if (err2) + return cb2(err2); + if (dir && pkg && opts.pathFilter) { + var rfile = path.relative(dir, file); + var rel = rfile.slice(0, rfile.length - exts2[0].length); + var r = opts.pathFilter(pkg, x3, rel); + if (r) + return load([""].concat(extensions.slice()), path.resolve(dir, r), pkg); + } + isFile(file, onex); + } + function onex(err2, ex) { + if (err2) + return cb2(err2); + if (ex) + return cb2(null, file, pkg); + load(exts2.slice(1), x3, pkg); + } + } + } + function loadpkg(dir, cb2) { + if (dir === "" || dir === "/") + return cb2(null); + if (process.platform === "win32" && /^\w:[/\\]*$/.test(dir)) { + return cb2(null); + } + if (/[/\\]node_modules[/\\]*$/.test(dir)) + return cb2(null); + maybeRealpath(realpath, dir, opts, function(unwrapErr, pkgdir) { + if (unwrapErr) + return loadpkg(path.dirname(dir), cb2); + var pkgfile = path.join(pkgdir, "package.json"); + isFile(pkgfile, function(err2, ex) { + if (!ex) + return loadpkg(path.dirname(dir), cb2); + readPackage(readFile, pkgfile, function(err3, pkgParam) { + if (err3) + cb2(err3); + var pkg = pkgParam; + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter(pkg, pkgfile); + } + cb2(null, pkg, dir); + }); + }); + }); + } + function loadAsDirectory(x2, loadAsDirectoryPackage, callback2) { + var cb2 = callback2; + var fpkg = loadAsDirectoryPackage; + if (typeof fpkg === "function") { + cb2 = fpkg; + fpkg = opts.package; + } + maybeRealpath(realpath, x2, opts, function(unwrapErr, pkgdir) { + if (unwrapErr) + return cb2(unwrapErr); + var pkgfile = path.join(pkgdir, "package.json"); + isFile(pkgfile, function(err2, ex) { + if (err2) + return cb2(err2); + if (!ex) + return loadAsFile(path.join(x2, "index"), fpkg, cb2); + readPackage(readFile, pkgfile, function(err3, pkgParam) { + if (err3) + return cb2(err3); + var pkg = pkgParam; + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter(pkg, pkgfile); + } + if (pkg && pkg.main) { + if (typeof pkg.main !== "string") { + var mainError = new TypeError("package \u201C" + pkg.name + "\u201D `main` must be a string"); + mainError.code = "INVALID_PACKAGE_MAIN"; + return cb2(mainError); + } + if (pkg.main === "." || pkg.main === "./") { + pkg.main = "index"; + } + loadAsFile(path.resolve(x2, pkg.main), pkg, function(err4, m, pkg2) { + if (err4) + return cb2(err4); + if (m) + return cb2(null, m, pkg2); + if (!pkg2) + return loadAsFile(path.join(x2, "index"), pkg2, cb2); + var dir = path.resolve(x2, pkg2.main); + loadAsDirectory(dir, pkg2, function(err5, n, pkg3) { + if (err5) + return cb2(err5); + if (n) + return cb2(null, n, pkg3); + loadAsFile(path.join(x2, "index"), pkg3, cb2); + }); + }); + return; + } + loadAsFile(path.join(x2, "/index"), pkg, cb2); + }); + }); + }); + } + function processDirs(cb2, dirs) { + if (dirs.length === 0) + return cb2(null, void 0); + var dir = dirs[0]; + isDirectory(path.dirname(dir), isdir); + function isdir(err2, isdir2) { + if (err2) + return cb2(err2); + if (!isdir2) + return processDirs(cb2, dirs.slice(1)); + loadAsFile(dir, opts.package, onfile2); + } + function onfile2(err2, m, pkg) { + if (err2) + return cb2(err2); + if (m) + return cb2(null, m, pkg); + loadAsDirectory(dir, opts.package, ondir); + } + function ondir(err2, n, pkg) { + if (err2) + return cb2(err2); + if (n) + return cb2(null, n, pkg); + processDirs(cb2, dirs.slice(1)); + } + } + function loadNodeModules(x2, start, cb2) { + var thunk = function() { + return getPackageCandidates(x2, start, opts); + }; + processDirs(cb2, packageIterator ? packageIterator(x2, start, thunk, opts) : thunk()); + } + }; + } +}); +var require_core3 = __commonJS2({ + "node_modules/resolve/lib/core.json"(exports2, module2) { + module2.exports = { + assert: true, + "node:assert": [">= 14.18 && < 15", ">= 16"], + "assert/strict": ">= 15", + "node:assert/strict": ">= 16", + async_hooks: ">= 8", + "node:async_hooks": [">= 14.18 && < 15", ">= 16"], + buffer_ieee754: ">= 0.5 && < 0.9.7", + buffer: true, + "node:buffer": [">= 14.18 && < 15", ">= 16"], + child_process: true, + "node:child_process": [">= 14.18 && < 15", ">= 16"], + cluster: ">= 0.5", + "node:cluster": [">= 14.18 && < 15", ">= 16"], + console: true, + "node:console": [">= 14.18 && < 15", ">= 16"], + constants: true, + "node:constants": [">= 14.18 && < 15", ">= 16"], + crypto: true, + "node:crypto": [">= 14.18 && < 15", ">= 16"], + _debug_agent: ">= 1 && < 8", + _debugger: "< 8", + dgram: true, + "node:dgram": [">= 14.18 && < 15", ">= 16"], + diagnostics_channel: [">= 14.17 && < 15", ">= 15.1"], + "node:diagnostics_channel": [">= 14.18 && < 15", ">= 16"], + dns: true, + "node:dns": [">= 14.18 && < 15", ">= 16"], + "dns/promises": ">= 15", + "node:dns/promises": ">= 16", + domain: ">= 0.7.12", + "node:domain": [">= 14.18 && < 15", ">= 16"], + events: true, + "node:events": [">= 14.18 && < 15", ">= 16"], + freelist: "< 6", + fs: true, + "node:fs": [">= 14.18 && < 15", ">= 16"], + "fs/promises": [">= 10 && < 10.1", ">= 14"], + "node:fs/promises": [">= 14.18 && < 15", ">= 16"], + _http_agent: ">= 0.11.1", + "node:_http_agent": [">= 14.18 && < 15", ">= 16"], + _http_client: ">= 0.11.1", + "node:_http_client": [">= 14.18 && < 15", ">= 16"], + _http_common: ">= 0.11.1", + "node:_http_common": [">= 14.18 && < 15", ">= 16"], + _http_incoming: ">= 0.11.1", + "node:_http_incoming": [">= 14.18 && < 15", ">= 16"], + _http_outgoing: ">= 0.11.1", + "node:_http_outgoing": [">= 14.18 && < 15", ">= 16"], + _http_server: ">= 0.11.1", + "node:_http_server": [">= 14.18 && < 15", ">= 16"], + http: true, + "node:http": [">= 14.18 && < 15", ">= 16"], + http2: ">= 8.8", + "node:http2": [">= 14.18 && < 15", ">= 16"], + https: true, + "node:https": [">= 14.18 && < 15", ">= 16"], + inspector: ">= 8", + "node:inspector": [">= 14.18 && < 15", ">= 16"], + _linklist: "< 8", + module: true, + "node:module": [">= 14.18 && < 15", ">= 16"], + net: true, + "node:net": [">= 14.18 && < 15", ">= 16"], + "node-inspect/lib/_inspect": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_client": ">= 7.6 && < 12", + "node-inspect/lib/internal/inspect_repl": ">= 7.6 && < 12", + os: true, + "node:os": [">= 14.18 && < 15", ">= 16"], + path: true, + "node:path": [">= 14.18 && < 15", ">= 16"], + "path/posix": ">= 15.3", + "node:path/posix": ">= 16", + "path/win32": ">= 15.3", + "node:path/win32": ">= 16", + perf_hooks: ">= 8.5", + "node:perf_hooks": [">= 14.18 && < 15", ">= 16"], + process: ">= 1", + "node:process": [">= 14.18 && < 15", ">= 16"], + punycode: ">= 0.5", + "node:punycode": [">= 14.18 && < 15", ">= 16"], + querystring: true, + "node:querystring": [">= 14.18 && < 15", ">= 16"], + readline: true, + "node:readline": [">= 14.18 && < 15", ">= 16"], + "readline/promises": ">= 17", + "node:readline/promises": ">= 17", + repl: true, + "node:repl": [">= 14.18 && < 15", ">= 16"], + smalloc: ">= 0.11.5 && < 3", + _stream_duplex: ">= 0.9.4", + "node:_stream_duplex": [">= 14.18 && < 15", ">= 16"], + _stream_transform: ">= 0.9.4", + "node:_stream_transform": [">= 14.18 && < 15", ">= 16"], + _stream_wrap: ">= 1.4.1", + "node:_stream_wrap": [">= 14.18 && < 15", ">= 16"], + _stream_passthrough: ">= 0.9.4", + "node:_stream_passthrough": [">= 14.18 && < 15", ">= 16"], + _stream_readable: ">= 0.9.4", + "node:_stream_readable": [">= 14.18 && < 15", ">= 16"], + _stream_writable: ">= 0.9.4", + "node:_stream_writable": [">= 14.18 && < 15", ">= 16"], + stream: true, + "node:stream": [">= 14.18 && < 15", ">= 16"], + "stream/consumers": ">= 16.7", + "node:stream/consumers": ">= 16.7", + "stream/promises": ">= 15", + "node:stream/promises": ">= 16", + "stream/web": ">= 16.5", + "node:stream/web": ">= 16.5", + string_decoder: true, + "node:string_decoder": [">= 14.18 && < 15", ">= 16"], + sys: [">= 0.4 && < 0.7", ">= 0.8"], + "node:sys": [">= 14.18 && < 15", ">= 16"], + "node:test": ">= 18", + timers: true, + "node:timers": [">= 14.18 && < 15", ">= 16"], + "timers/promises": ">= 15", + "node:timers/promises": ">= 16", + _tls_common: ">= 0.11.13", + "node:_tls_common": [">= 14.18 && < 15", ">= 16"], + _tls_legacy: ">= 0.11.3 && < 10", + _tls_wrap: ">= 0.11.3", + "node:_tls_wrap": [">= 14.18 && < 15", ">= 16"], + tls: true, + "node:tls": [">= 14.18 && < 15", ">= 16"], + trace_events: ">= 10", + "node:trace_events": [">= 14.18 && < 15", ">= 16"], + tty: true, + "node:tty": [">= 14.18 && < 15", ">= 16"], + url: true, + "node:url": [">= 14.18 && < 15", ">= 16"], + util: true, + "node:util": [">= 14.18 && < 15", ">= 16"], + "util/types": ">= 15.3", + "node:util/types": ">= 16", + "v8/tools/arguments": ">= 10 && < 12", + "v8/tools/codemap": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/consarray": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/csvparser": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/logreader": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/profile_view": [">= 4.4 && < 5", ">= 5.2 && < 12"], + "v8/tools/splaytree": [">= 4.4 && < 5", ">= 5.2 && < 12"], + v8: ">= 1", + "node:v8": [">= 14.18 && < 15", ">= 16"], + vm: true, + "node:vm": [">= 14.18 && < 15", ">= 16"], + wasi: ">= 13.4 && < 13.5", + worker_threads: ">= 11.7", + "node:worker_threads": [">= 14.18 && < 15", ">= 16"], + zlib: ">= 0.5", + "node:zlib": [">= 14.18 && < 15", ">= 16"] + }; + } +}); +var require_core4 = __commonJS2({ + "node_modules/resolve/lib/core.js"(exports2, module2) { + var current = process.versions && process.versions.node && process.versions.node.split(".") || []; + function specifierIncluded(specifier) { + var parts = specifier.split(" "); + var op = parts.length > 1 ? parts[0] : "="; + var versionParts = (parts.length > 1 ? parts[1] : parts[0]).split("."); + for (var i = 0; i < 3; ++i) { + var cur = parseInt(current[i] || 0, 10); + var ver = parseInt(versionParts[i] || 0, 10); + if (cur === ver) { + continue; + } + if (op === "<") { + return cur < ver; + } else if (op === ">=") { + return cur >= ver; + } + return false; + } + return op === ">="; + } + function matchesRange(range) { + var specifiers = range.split(/ ?&& ?/); + if (specifiers.length === 0) { + return false; + } + for (var i = 0; i < specifiers.length; ++i) { + if (!specifierIncluded(specifiers[i])) { + return false; + } + } + return true; + } + function versionIncluded(specifierValue) { + if (typeof specifierValue === "boolean") { + return specifierValue; + } + if (specifierValue && typeof specifierValue === "object") { + for (var i = 0; i < specifierValue.length; ++i) { + if (matchesRange(specifierValue[i])) { + return true; + } + } + return false; + } + return matchesRange(specifierValue); + } + var data = require_core3(); + var core2 = {}; + for (mod in data) { + if (Object.prototype.hasOwnProperty.call(data, mod)) { + core2[mod] = versionIncluded(data[mod]); + } + } + var mod; + module2.exports = core2; + } +}); +var require_is_core = __commonJS2({ + "node_modules/resolve/lib/is-core.js"(exports2, module2) { + var isCoreModule = require_is_core_module(); + module2.exports = function isCore(x) { + return isCoreModule(x); + }; + } +}); +var require_sync = __commonJS2({ + "node_modules/resolve/lib/sync.js"(exports2, module2) { + var isCore = require_is_core_module(); + var fs = require("fs"); + var path = require("path"); + var getHomedir = require_homedir(); + var caller = require_caller(); + var nodeModulesPaths = require_node_modules_paths(); + var normalizeOptions = require_normalize_options(); + var realpathFS = process.platform !== "win32" && fs.realpathSync && typeof fs.realpathSync.native === "function" ? fs.realpathSync.native : fs.realpathSync; + var homedir = getHomedir(); + var defaultPaths = function() { + return [path.join(homedir, ".node_modules"), path.join(homedir, ".node_libraries")]; + }; + var defaultIsFile = function isFile(file) { + try { + var stat = fs.statSync(file, { + throwIfNoEntry: false + }); + } catch (e) { + if (e && (e.code === "ENOENT" || e.code === "ENOTDIR")) + return false; + throw e; + } + return !!stat && (stat.isFile() || stat.isFIFO()); + }; + var defaultIsDir = function isDirectory(dir) { + try { + var stat = fs.statSync(dir, { + throwIfNoEntry: false + }); + } catch (e) { + if (e && (e.code === "ENOENT" || e.code === "ENOTDIR")) + return false; + throw e; + } + return !!stat && stat.isDirectory(); + }; + var defaultRealpathSync = function realpathSync(x) { + try { + return realpathFS(x); + } catch (realpathErr) { + if (realpathErr.code !== "ENOENT") { + throw realpathErr; + } + } + return x; + }; + var maybeRealpathSync = function maybeRealpathSync2(realpathSync, x, opts) { + if (opts && opts.preserveSymlinks === false) { + return realpathSync(x); + } + return x; + }; + var defaultReadPackageSync = function defaultReadPackageSync2(readFileSync, pkgfile) { + var body = readFileSync(pkgfile); + try { + var pkg = JSON.parse(body); + return pkg; + } catch (jsonErr) { + } + }; + var getPackageCandidates = function getPackageCandidates2(x, start, opts) { + var dirs = nodeModulesPaths(start, opts, x); + for (var i = 0; i < dirs.length; i++) { + dirs[i] = path.join(dirs[i], x); + } + return dirs; + }; + module2.exports = function resolveSync(x, options) { + if (typeof x !== "string") { + throw new TypeError("Path must be a string."); + } + var opts = normalizeOptions(x, options); + var isFile = opts.isFile || defaultIsFile; + var readFileSync = opts.readFileSync || fs.readFileSync; + var isDirectory = opts.isDirectory || defaultIsDir; + var realpathSync = opts.realpathSync || defaultRealpathSync; + var readPackageSync = opts.readPackageSync || defaultReadPackageSync; + if (opts.readFileSync && opts.readPackageSync) { + throw new TypeError("`readFileSync` and `readPackageSync` are mutually exclusive."); + } + var packageIterator = opts.packageIterator; + var extensions = opts.extensions || [".js"]; + var includeCoreModules = opts.includeCoreModules !== false; + var basedir = opts.basedir || path.dirname(caller()); + var parent = opts.filename || basedir; + opts.paths = opts.paths || defaultPaths(); + var absoluteStart = maybeRealpathSync(realpathSync, path.resolve(basedir), opts); + if (/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/.test(x)) { + var res = path.resolve(absoluteStart, x); + if (x === "." || x === ".." || x.slice(-1) === "/") + res += "/"; + var m = loadAsFileSync(res) || loadAsDirectorySync(res); + if (m) + return maybeRealpathSync(realpathSync, m, opts); + } else if (includeCoreModules && isCore(x)) { + return x; + } else { + var n = loadNodeModulesSync(x, absoluteStart); + if (n) + return maybeRealpathSync(realpathSync, n, opts); + } + var err = new Error("Cannot find module '" + x + "' from '" + parent + "'"); + err.code = "MODULE_NOT_FOUND"; + throw err; + function loadAsFileSync(x2) { + var pkg = loadpkg(path.dirname(x2)); + if (pkg && pkg.dir && pkg.pkg && opts.pathFilter) { + var rfile = path.relative(pkg.dir, x2); + var r = opts.pathFilter(pkg.pkg, x2, rfile); + if (r) { + x2 = path.resolve(pkg.dir, r); + } + } + if (isFile(x2)) { + return x2; + } + for (var i = 0; i < extensions.length; i++) { + var file = x2 + extensions[i]; + if (isFile(file)) { + return file; + } + } + } + function loadpkg(dir) { + if (dir === "" || dir === "/") + return; + if (process.platform === "win32" && /^\w:[/\\]*$/.test(dir)) { + return; + } + if (/[/\\]node_modules[/\\]*$/.test(dir)) + return; + var pkgfile = path.join(maybeRealpathSync(realpathSync, dir, opts), "package.json"); + if (!isFile(pkgfile)) { + return loadpkg(path.dirname(dir)); + } + var pkg = readPackageSync(readFileSync, pkgfile); + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter(pkg, dir); + } + return { + pkg, + dir + }; + } + function loadAsDirectorySync(x2) { + var pkgfile = path.join(maybeRealpathSync(realpathSync, x2, opts), "/package.json"); + if (isFile(pkgfile)) { + try { + var pkg = readPackageSync(readFileSync, pkgfile); + } catch (e) { + } + if (pkg && opts.packageFilter) { + pkg = opts.packageFilter(pkg, x2); + } + if (pkg && pkg.main) { + if (typeof pkg.main !== "string") { + var mainError = new TypeError("package \u201C" + pkg.name + "\u201D `main` must be a string"); + mainError.code = "INVALID_PACKAGE_MAIN"; + throw mainError; + } + if (pkg.main === "." || pkg.main === "./") { + pkg.main = "index"; + } + try { + var m2 = loadAsFileSync(path.resolve(x2, pkg.main)); + if (m2) + return m2; + var n2 = loadAsDirectorySync(path.resolve(x2, pkg.main)); + if (n2) + return n2; + } catch (e) { + } + } + } + return loadAsFileSync(path.join(x2, "/index")); + } + function loadNodeModulesSync(x2, start) { + var thunk = function() { + return getPackageCandidates(x2, start, opts); + }; + var dirs = packageIterator ? packageIterator(x2, start, thunk, opts) : thunk(); + for (var i = 0; i < dirs.length; i++) { + var dir = dirs[i]; + if (isDirectory(path.dirname(dir))) { + var m2 = loadAsFileSync(dir); + if (m2) + return m2; + var n2 = loadAsDirectorySync(dir); + if (n2) + return n2; + } + } + } + }; + } +}); +var require_resolve = __commonJS2({ + "node_modules/resolve/index.js"(exports2, module2) { + var async = require_async(); + async.core = require_core4(); + async.isCore = require_is_core(); + async.sync = require_sync(); + module2.exports = async; + } +}); +var require_resolve2 = __commonJS2({ + "src/common/resolve.js"(exports2, module2) { + "use strict"; + var { + resolve + } = require; + if (resolve.length === 1 || process.env.PRETTIER_FALLBACK_RESOLVE) { + resolve = (id, options) => { + let basedir; + if (options && options.paths && options.paths.length === 1) { + basedir = options.paths[0]; + } + return require_resolve().sync(id, { + basedir + }); + }; + } + module2.exports = resolve; + } +}); +function mimicFunction(to, from, { + ignoreNonConfigurable = false +} = {}) { + const { + name + } = to; + for (const property of Reflect.ownKeys(from)) { + copyProperty(to, from, property, ignoreNonConfigurable); + } + changePrototype(to, from); + changeToString(to, from, name); + return to; +} +var copyProperty; +var canCopyProperty; +var changePrototype; +var wrappedToString; +var toStringDescriptor; +var toStringName; +var changeToString; +var init_mimic_fn = __esm({ + "node_modules/mimic-fn/index.js"() { + copyProperty = (to, from, property, ignoreNonConfigurable) => { + if (property === "length" || property === "prototype") { + return; + } + if (property === "arguments" || property === "caller") { + return; + } + const toDescriptor = Object.getOwnPropertyDescriptor(to, property); + const fromDescriptor = Object.getOwnPropertyDescriptor(from, property); + if (!canCopyProperty(toDescriptor, fromDescriptor) && ignoreNonConfigurable) { + return; + } + Object.defineProperty(to, property, fromDescriptor); + }; + canCopyProperty = function(toDescriptor, fromDescriptor) { + return toDescriptor === void 0 || toDescriptor.configurable || toDescriptor.writable === fromDescriptor.writable && toDescriptor.enumerable === fromDescriptor.enumerable && toDescriptor.configurable === fromDescriptor.configurable && (toDescriptor.writable || toDescriptor.value === fromDescriptor.value); + }; + changePrototype = (to, from) => { + const fromPrototype = Object.getPrototypeOf(from); + if (fromPrototype === Object.getPrototypeOf(to)) { + return; + } + Object.setPrototypeOf(to, fromPrototype); + }; + wrappedToString = (withName, fromBody) => `/* Wrapped ${withName}*/ +${fromBody}`; + toStringDescriptor = Object.getOwnPropertyDescriptor(Function.prototype, "toString"); + toStringName = Object.getOwnPropertyDescriptor(Function.prototype.toString, "name"); + changeToString = (to, from, name) => { + const withName = name === "" ? "" : `with ${name.trim()}() `; + const newToString = wrappedToString.bind(null, withName, from.toString()); + Object.defineProperty(newToString, "name", toStringName); + Object.defineProperty(to, "toString", Object.assign(Object.assign({}, toStringDescriptor), {}, { + value: newToString + })); + }; + } +}); +var require_p_defer = __commonJS2({ + "node_modules/p-defer/index.js"(exports2, module2) { + "use strict"; + module2.exports = () => { + const ret = {}; + ret.promise = new Promise((resolve, reject) => { + ret.resolve = resolve; + ret.reject = reject; + }); + return ret; + }; + } +}); +var require_dist = __commonJS2({ + "node_modules/map-age-cleaner/dist/index.js"(exports2, module2) { + "use strict"; + var __awaiter2 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve(result.value) : new P(function(resolve2) { + resolve2(result.value); + }).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { + "default": mod + }; + }; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var p_defer_1 = __importDefault2(require_p_defer()); + function mapAgeCleaner2(map, property = "maxAge") { + let processingKey; + let processingTimer; + let processingDeferred; + const cleanup = () => __awaiter2(this, void 0, void 0, function* () { + if (processingKey !== void 0) { + return; + } + const setupTimer = (item) => __awaiter2(this, void 0, void 0, function* () { + processingDeferred = p_defer_1.default(); + const delay = item[1][property] - Date.now(); + if (delay <= 0) { + map.delete(item[0]); + processingDeferred.resolve(); + return; + } + processingKey = item[0]; + processingTimer = setTimeout(() => { + map.delete(item[0]); + if (processingDeferred) { + processingDeferred.resolve(); + } + }, delay); + if (typeof processingTimer.unref === "function") { + processingTimer.unref(); + } + return processingDeferred.promise; + }); + try { + for (const entry of map) { + yield setupTimer(entry); + } + } catch (_a) { + } + processingKey = void 0; + }); + const reset = () => { + processingKey = void 0; + if (processingTimer !== void 0) { + clearTimeout(processingTimer); + processingTimer = void 0; + } + if (processingDeferred !== void 0) { + processingDeferred.reject(void 0); + processingDeferred = void 0; + } + }; + const originalSet = map.set.bind(map); + map.set = (key, value) => { + if (map.has(key)) { + map.delete(key); + } + const result = originalSet(key, value); + if (processingKey && processingKey === key) { + reset(); + } + cleanup(); + return result; + }; + cleanup(); + return map; + } + exports2.default = mapAgeCleaner2; + module2.exports = mapAgeCleaner2; + module2.exports.default = mapAgeCleaner2; + } +}); +var dist_exports = {}; +__export(dist_exports, { + default: () => mem, + memClear: () => memClear, + memDecorator: () => memDecorator +}); +function mem(fn, { + cacheKey, + cache = /* @__PURE__ */ new Map(), + maxAge +} = {}) { + if (typeof maxAge === "number") { + (0, import_map_age_cleaner.default)(cache); + } + const memoized = function(...arguments_) { + const key = cacheKey ? cacheKey(arguments_) : arguments_[0]; + const cacheItem = cache.get(key); + if (cacheItem) { + return cacheItem.data; + } + const result = fn.apply(this, arguments_); + cache.set(key, { + data: result, + maxAge: maxAge ? Date.now() + maxAge : Number.POSITIVE_INFINITY + }); + return result; + }; + mimicFunction(memoized, fn, { + ignoreNonConfigurable: true + }); + cacheStore.set(memoized, cache); + return memoized; +} +function memDecorator(options = {}) { + const instanceMap = /* @__PURE__ */ new WeakMap(); + return (target, propertyKey, descriptor) => { + const input = target[propertyKey]; + if (typeof input !== "function") { + throw new TypeError("The decorated value must be a function"); + } + delete descriptor.value; + delete descriptor.writable; + descriptor.get = function() { + if (!instanceMap.has(this)) { + const value = mem(input, options); + instanceMap.set(this, value); + return value; + } + return instanceMap.get(this); + }; + }; +} +function memClear(fn) { + const cache = cacheStore.get(fn); + if (!cache) { + throw new TypeError("Can't clear a function that was not memoized!"); + } + if (typeof cache.clear !== "function") { + throw new TypeError("The cache Map can't be cleared!"); + } + cache.clear(); +} +var import_map_age_cleaner; +var cacheStore; +var init_dist = __esm({ + "node_modules/mem/dist/index.js"() { + init_mimic_fn(); + import_map_age_cleaner = __toESM(require_dist()); + cacheStore = /* @__PURE__ */ new WeakMap(); + } +}); +var require_pseudomap = __commonJS2({ + "node_modules/pseudomap/pseudomap.js"(exports2, module2) { + var hasOwnProperty = Object.prototype.hasOwnProperty; + module2.exports = PseudoMap; + function PseudoMap(set2) { + if (!(this instanceof PseudoMap)) + throw new TypeError("Constructor PseudoMap requires 'new'"); + this.clear(); + if (set2) { + if (set2 instanceof PseudoMap || typeof Map === "function" && set2 instanceof Map) + set2.forEach(function(value, key) { + this.set(key, value); + }, this); + else if (Array.isArray(set2)) + set2.forEach(function(kv) { + this.set(kv[0], kv[1]); + }, this); + else + throw new TypeError("invalid argument"); + } + } + PseudoMap.prototype.forEach = function(fn, thisp) { + thisp = thisp || this; + Object.keys(this._data).forEach(function(k) { + if (k !== "size") + fn.call(thisp, this._data[k].value, this._data[k].key); + }, this); + }; + PseudoMap.prototype.has = function(k) { + return !!find(this._data, k); + }; + PseudoMap.prototype.get = function(k) { + var res = find(this._data, k); + return res && res.value; + }; + PseudoMap.prototype.set = function(k, v) { + set(this._data, k, v); + }; + PseudoMap.prototype.delete = function(k) { + var res = find(this._data, k); + if (res) { + delete this._data[res._index]; + this._data.size--; + } + }; + PseudoMap.prototype.clear = function() { + var data = /* @__PURE__ */ Object.create(null); + data.size = 0; + Object.defineProperty(this, "_data", { + value: data, + enumerable: false, + configurable: true, + writable: false + }); + }; + Object.defineProperty(PseudoMap.prototype, "size", { + get: function() { + return this._data.size; + }, + set: function(n) { + }, + enumerable: true, + configurable: true + }); + PseudoMap.prototype.values = PseudoMap.prototype.keys = PseudoMap.prototype.entries = function() { + throw new Error("iterators are not implemented in this version"); + }; + function same(a, b) { + return a === b || a !== a && b !== b; + } + function Entry(k, v, i) { + this.key = k; + this.value = v; + this._index = i; + } + function find(data, k) { + for (var i = 0, s = "_" + k, key = s; hasOwnProperty.call(data, key); key = s + i++) { + if (same(data[key].key, k)) + return data[key]; + } + } + function set(data, k, v) { + for (var i = 0, s = "_" + k, key = s; hasOwnProperty.call(data, key); key = s + i++) { + if (same(data[key].key, k)) { + data[key].value = v; + return; + } + } + data.size++; + data[key] = new Entry(k, v, key); + } + } +}); +var require_map = __commonJS2({ + "node_modules/pseudomap/map.js"(exports2, module2) { + if (process.env.npm_package_name === "pseudomap" && process.env.npm_lifecycle_script === "test") + process.env.TEST_PSEUDOMAP = "true"; + if (typeof Map === "function" && !process.env.TEST_PSEUDOMAP) { + module2.exports = Map; + } else { + module2.exports = require_pseudomap(); + } + } +}); +var require_yallist = __commonJS2({ + "node_modules/editorconfig/node_modules/yallist/yallist.js"(exports2, module2) { + module2.exports = Yallist; + Yallist.Node = Node; + Yallist.create = Yallist; + function Yallist(list) { + var self2 = this; + if (!(self2 instanceof Yallist)) { + self2 = new Yallist(); + } + self2.tail = null; + self2.head = null; + self2.length = 0; + if (list && typeof list.forEach === "function") { + list.forEach(function(item) { + self2.push(item); + }); + } else if (arguments.length > 0) { + for (var i = 0, l = arguments.length; i < l; i++) { + self2.push(arguments[i]); + } + } + return self2; + } + Yallist.prototype.removeNode = function(node) { + if (node.list !== this) { + throw new Error("removing node which does not belong to this list"); + } + var next = node.next; + var prev = node.prev; + if (next) { + next.prev = prev; + } + if (prev) { + prev.next = next; + } + if (node === this.head) { + this.head = next; + } + if (node === this.tail) { + this.tail = prev; + } + node.list.length--; + node.next = null; + node.prev = null; + node.list = null; + }; + Yallist.prototype.unshiftNode = function(node) { + if (node === this.head) { + return; + } + if (node.list) { + node.list.removeNode(node); + } + var head = this.head; + node.list = this; + node.next = head; + if (head) { + head.prev = node; + } + this.head = node; + if (!this.tail) { + this.tail = node; + } + this.length++; + }; + Yallist.prototype.pushNode = function(node) { + if (node === this.tail) { + return; + } + if (node.list) { + node.list.removeNode(node); + } + var tail = this.tail; + node.list = this; + node.prev = tail; + if (tail) { + tail.next = node; + } + this.tail = node; + if (!this.head) { + this.head = node; + } + this.length++; + }; + Yallist.prototype.push = function() { + for (var i = 0, l = arguments.length; i < l; i++) { + push(this, arguments[i]); + } + return this.length; + }; + Yallist.prototype.unshift = function() { + for (var i = 0, l = arguments.length; i < l; i++) { + unshift(this, arguments[i]); + } + return this.length; + }; + Yallist.prototype.pop = function() { + if (!this.tail) { + return void 0; + } + var res = this.tail.value; + this.tail = this.tail.prev; + if (this.tail) { + this.tail.next = null; + } else { + this.head = null; + } + this.length--; + return res; + }; + Yallist.prototype.shift = function() { + if (!this.head) { + return void 0; + } + var res = this.head.value; + this.head = this.head.next; + if (this.head) { + this.head.prev = null; + } else { + this.tail = null; + } + this.length--; + return res; + }; + Yallist.prototype.forEach = function(fn, thisp) { + thisp = thisp || this; + for (var walker = this.head, i = 0; walker !== null; i++) { + fn.call(thisp, walker.value, i, this); + walker = walker.next; + } + }; + Yallist.prototype.forEachReverse = function(fn, thisp) { + thisp = thisp || this; + for (var walker = this.tail, i = this.length - 1; walker !== null; i--) { + fn.call(thisp, walker.value, i, this); + walker = walker.prev; + } + }; + Yallist.prototype.get = function(n) { + for (var i = 0, walker = this.head; walker !== null && i < n; i++) { + walker = walker.next; + } + if (i === n && walker !== null) { + return walker.value; + } + }; + Yallist.prototype.getReverse = function(n) { + for (var i = 0, walker = this.tail; walker !== null && i < n; i++) { + walker = walker.prev; + } + if (i === n && walker !== null) { + return walker.value; + } + }; + Yallist.prototype.map = function(fn, thisp) { + thisp = thisp || this; + var res = new Yallist(); + for (var walker = this.head; walker !== null; ) { + res.push(fn.call(thisp, walker.value, this)); + walker = walker.next; + } + return res; + }; + Yallist.prototype.mapReverse = function(fn, thisp) { + thisp = thisp || this; + var res = new Yallist(); + for (var walker = this.tail; walker !== null; ) { + res.push(fn.call(thisp, walker.value, this)); + walker = walker.prev; + } + return res; + }; + Yallist.prototype.reduce = function(fn, initial) { + var acc; + var walker = this.head; + if (arguments.length > 1) { + acc = initial; + } else if (this.head) { + walker = this.head.next; + acc = this.head.value; + } else { + throw new TypeError("Reduce of empty list with no initial value"); + } + for (var i = 0; walker !== null; i++) { + acc = fn(acc, walker.value, i); + walker = walker.next; + } + return acc; + }; + Yallist.prototype.reduceReverse = function(fn, initial) { + var acc; + var walker = this.tail; + if (arguments.length > 1) { + acc = initial; + } else if (this.tail) { + walker = this.tail.prev; + acc = this.tail.value; + } else { + throw new TypeError("Reduce of empty list with no initial value"); + } + for (var i = this.length - 1; walker !== null; i--) { + acc = fn(acc, walker.value, i); + walker = walker.prev; + } + return acc; + }; + Yallist.prototype.toArray = function() { + var arr = new Array(this.length); + for (var i = 0, walker = this.head; walker !== null; i++) { + arr[i] = walker.value; + walker = walker.next; + } + return arr; + }; + Yallist.prototype.toArrayReverse = function() { + var arr = new Array(this.length); + for (var i = 0, walker = this.tail; walker !== null; i++) { + arr[i] = walker.value; + walker = walker.prev; + } + return arr; + }; + Yallist.prototype.slice = function(from, to) { + to = to || this.length; + if (to < 0) { + to += this.length; + } + from = from || 0; + if (from < 0) { + from += this.length; + } + var ret = new Yallist(); + if (to < from || to < 0) { + return ret; + } + if (from < 0) { + from = 0; + } + if (to > this.length) { + to = this.length; + } + for (var i = 0, walker = this.head; walker !== null && i < from; i++) { + walker = walker.next; + } + for (; walker !== null && i < to; i++, walker = walker.next) { + ret.push(walker.value); + } + return ret; + }; + Yallist.prototype.sliceReverse = function(from, to) { + to = to || this.length; + if (to < 0) { + to += this.length; + } + from = from || 0; + if (from < 0) { + from += this.length; + } + var ret = new Yallist(); + if (to < from || to < 0) { + return ret; + } + if (from < 0) { + from = 0; + } + if (to > this.length) { + to = this.length; + } + for (var i = this.length, walker = this.tail; walker !== null && i > to; i--) { + walker = walker.prev; + } + for (; walker !== null && i > from; i--, walker = walker.prev) { + ret.push(walker.value); + } + return ret; + }; + Yallist.prototype.reverse = function() { + var head = this.head; + var tail = this.tail; + for (var walker = head; walker !== null; walker = walker.prev) { + var p = walker.prev; + walker.prev = walker.next; + walker.next = p; + } + this.head = tail; + this.tail = head; + return this; + }; + function push(self2, item) { + self2.tail = new Node(item, self2.tail, null, self2); + if (!self2.head) { + self2.head = self2.tail; + } + self2.length++; + } + function unshift(self2, item) { + self2.head = new Node(item, null, self2.head, self2); + if (!self2.tail) { + self2.tail = self2.head; + } + self2.length++; + } + function Node(value, prev, next, list) { + if (!(this instanceof Node)) { + return new Node(value, prev, next, list); + } + this.list = list; + this.value = value; + if (prev) { + prev.next = this; + this.prev = prev; + } else { + this.prev = null; + } + if (next) { + next.prev = this; + this.next = next; + } else { + this.next = null; + } + } + } +}); +var require_lru_cache = __commonJS2({ + "node_modules/editorconfig/node_modules/lru-cache/index.js"(exports2, module2) { + "use strict"; + module2.exports = LRUCache; + var Map2 = require_map(); + var util = require("util"); + var Yallist = require_yallist(); + var hasSymbol = typeof Symbol === "function" && process.env._nodeLRUCacheForceNoSymbol !== "1"; + var makeSymbol; + if (hasSymbol) { + makeSymbol = function(key) { + return Symbol(key); + }; + } else { + makeSymbol = function(key) { + return "_" + key; + }; + } + var MAX = makeSymbol("max"); + var LENGTH = makeSymbol("length"); + var LENGTH_CALCULATOR = makeSymbol("lengthCalculator"); + var ALLOW_STALE = makeSymbol("allowStale"); + var MAX_AGE = makeSymbol("maxAge"); + var DISPOSE = makeSymbol("dispose"); + var NO_DISPOSE_ON_SET = makeSymbol("noDisposeOnSet"); + var LRU_LIST = makeSymbol("lruList"); + var CACHE = makeSymbol("cache"); + function naiveLength() { + return 1; + } + function LRUCache(options) { + if (!(this instanceof LRUCache)) { + return new LRUCache(options); + } + if (typeof options === "number") { + options = { + max: options + }; + } + if (!options) { + options = {}; + } + var max = this[MAX] = options.max; + if (!max || !(typeof max === "number") || max <= 0) { + this[MAX] = Infinity; + } + var lc = options.length || naiveLength; + if (typeof lc !== "function") { + lc = naiveLength; + } + this[LENGTH_CALCULATOR] = lc; + this[ALLOW_STALE] = options.stale || false; + this[MAX_AGE] = options.maxAge || 0; + this[DISPOSE] = options.dispose; + this[NO_DISPOSE_ON_SET] = options.noDisposeOnSet || false; + this.reset(); + } + Object.defineProperty(LRUCache.prototype, "max", { + set: function(mL) { + if (!mL || !(typeof mL === "number") || mL <= 0) { + mL = Infinity; + } + this[MAX] = mL; + trim(this); + }, + get: function() { + return this[MAX]; + }, + enumerable: true + }); + Object.defineProperty(LRUCache.prototype, "allowStale", { + set: function(allowStale) { + this[ALLOW_STALE] = !!allowStale; + }, + get: function() { + return this[ALLOW_STALE]; + }, + enumerable: true + }); + Object.defineProperty(LRUCache.prototype, "maxAge", { + set: function(mA) { + if (!mA || !(typeof mA === "number") || mA < 0) { + mA = 0; + } + this[MAX_AGE] = mA; + trim(this); + }, + get: function() { + return this[MAX_AGE]; + }, + enumerable: true + }); + Object.defineProperty(LRUCache.prototype, "lengthCalculator", { + set: function(lC) { + if (typeof lC !== "function") { + lC = naiveLength; + } + if (lC !== this[LENGTH_CALCULATOR]) { + this[LENGTH_CALCULATOR] = lC; + this[LENGTH] = 0; + this[LRU_LIST].forEach(function(hit) { + hit.length = this[LENGTH_CALCULATOR](hit.value, hit.key); + this[LENGTH] += hit.length; + }, this); + } + trim(this); + }, + get: function() { + return this[LENGTH_CALCULATOR]; + }, + enumerable: true + }); + Object.defineProperty(LRUCache.prototype, "length", { + get: function() { + return this[LENGTH]; + }, + enumerable: true + }); + Object.defineProperty(LRUCache.prototype, "itemCount", { + get: function() { + return this[LRU_LIST].length; + }, + enumerable: true + }); + LRUCache.prototype.rforEach = function(fn, thisp) { + thisp = thisp || this; + for (var walker = this[LRU_LIST].tail; walker !== null; ) { + var prev = walker.prev; + forEachStep(this, fn, walker, thisp); + walker = prev; + } + }; + function forEachStep(self2, fn, node, thisp) { + var hit = node.value; + if (isStale(self2, hit)) { + del(self2, node); + if (!self2[ALLOW_STALE]) { + hit = void 0; + } + } + if (hit) { + fn.call(thisp, hit.value, hit.key, self2); + } + } + LRUCache.prototype.forEach = function(fn, thisp) { + thisp = thisp || this; + for (var walker = this[LRU_LIST].head; walker !== null; ) { + var next = walker.next; + forEachStep(this, fn, walker, thisp); + walker = next; + } + }; + LRUCache.prototype.keys = function() { + return this[LRU_LIST].toArray().map(function(k) { + return k.key; + }, this); + }; + LRUCache.prototype.values = function() { + return this[LRU_LIST].toArray().map(function(k) { + return k.value; + }, this); + }; + LRUCache.prototype.reset = function() { + if (this[DISPOSE] && this[LRU_LIST] && this[LRU_LIST].length) { + this[LRU_LIST].forEach(function(hit) { + this[DISPOSE](hit.key, hit.value); + }, this); + } + this[CACHE] = new Map2(); + this[LRU_LIST] = new Yallist(); + this[LENGTH] = 0; + }; + LRUCache.prototype.dump = function() { + return this[LRU_LIST].map(function(hit) { + if (!isStale(this, hit)) { + return { + k: hit.key, + v: hit.value, + e: hit.now + (hit.maxAge || 0) + }; + } + }, this).toArray().filter(function(h) { + return h; + }); + }; + LRUCache.prototype.dumpLru = function() { + return this[LRU_LIST]; + }; + LRUCache.prototype.inspect = function(n, opts) { + var str = "LRUCache {"; + var extras = false; + var as = this[ALLOW_STALE]; + if (as) { + str += "\n allowStale: true"; + extras = true; + } + var max = this[MAX]; + if (max && max !== Infinity) { + if (extras) { + str += ","; + } + str += "\n max: " + util.inspect(max, opts); + extras = true; + } + var maxAge = this[MAX_AGE]; + if (maxAge) { + if (extras) { + str += ","; + } + str += "\n maxAge: " + util.inspect(maxAge, opts); + extras = true; + } + var lc = this[LENGTH_CALCULATOR]; + if (lc && lc !== naiveLength) { + if (extras) { + str += ","; + } + str += "\n length: " + util.inspect(this[LENGTH], opts); + extras = true; + } + var didFirst = false; + this[LRU_LIST].forEach(function(item) { + if (didFirst) { + str += ",\n "; + } else { + if (extras) { + str += ",\n"; + } + didFirst = true; + str += "\n "; + } + var key = util.inspect(item.key).split("\n").join("\n "); + var val = { + value: item.value + }; + if (item.maxAge !== maxAge) { + val.maxAge = item.maxAge; + } + if (lc !== naiveLength) { + val.length = item.length; + } + if (isStale(this, item)) { + val.stale = true; + } + val = util.inspect(val, opts).split("\n").join("\n "); + str += key + " => " + val; + }); + if (didFirst || extras) { + str += "\n"; + } + str += "}"; + return str; + }; + LRUCache.prototype.set = function(key, value, maxAge) { + maxAge = maxAge || this[MAX_AGE]; + var now = maxAge ? Date.now() : 0; + var len = this[LENGTH_CALCULATOR](value, key); + if (this[CACHE].has(key)) { + if (len > this[MAX]) { + del(this, this[CACHE].get(key)); + return false; + } + var node = this[CACHE].get(key); + var item = node.value; + if (this[DISPOSE]) { + if (!this[NO_DISPOSE_ON_SET]) { + this[DISPOSE](key, item.value); + } + } + item.now = now; + item.maxAge = maxAge; + item.value = value; + this[LENGTH] += len - item.length; + item.length = len; + this.get(key); + trim(this); + return true; + } + var hit = new Entry(key, value, len, now, maxAge); + if (hit.length > this[MAX]) { + if (this[DISPOSE]) { + this[DISPOSE](key, value); + } + return false; + } + this[LENGTH] += hit.length; + this[LRU_LIST].unshift(hit); + this[CACHE].set(key, this[LRU_LIST].head); + trim(this); + return true; + }; + LRUCache.prototype.has = function(key) { + if (!this[CACHE].has(key)) + return false; + var hit = this[CACHE].get(key).value; + if (isStale(this, hit)) { + return false; + } + return true; + }; + LRUCache.prototype.get = function(key) { + return get(this, key, true); + }; + LRUCache.prototype.peek = function(key) { + return get(this, key, false); + }; + LRUCache.prototype.pop = function() { + var node = this[LRU_LIST].tail; + if (!node) + return null; + del(this, node); + return node.value; + }; + LRUCache.prototype.del = function(key) { + del(this, this[CACHE].get(key)); + }; + LRUCache.prototype.load = function(arr) { + this.reset(); + var now = Date.now(); + for (var l = arr.length - 1; l >= 0; l--) { + var hit = arr[l]; + var expiresAt = hit.e || 0; + if (expiresAt === 0) { + this.set(hit.k, hit.v); + } else { + var maxAge = expiresAt - now; + if (maxAge > 0) { + this.set(hit.k, hit.v, maxAge); + } + } + } + }; + LRUCache.prototype.prune = function() { + var self2 = this; + this[CACHE].forEach(function(value, key) { + get(self2, key, false); + }); + }; + function get(self2, key, doUse) { + var node = self2[CACHE].get(key); + if (node) { + var hit = node.value; + if (isStale(self2, hit)) { + del(self2, node); + if (!self2[ALLOW_STALE]) + hit = void 0; + } else { + if (doUse) { + self2[LRU_LIST].unshiftNode(node); + } + } + if (hit) + hit = hit.value; + } + return hit; + } + function isStale(self2, hit) { + if (!hit || !hit.maxAge && !self2[MAX_AGE]) { + return false; + } + var stale = false; + var diff = Date.now() - hit.now; + if (hit.maxAge) { + stale = diff > hit.maxAge; + } else { + stale = self2[MAX_AGE] && diff > self2[MAX_AGE]; + } + return stale; + } + function trim(self2) { + if (self2[LENGTH] > self2[MAX]) { + for (var walker = self2[LRU_LIST].tail; self2[LENGTH] > self2[MAX] && walker !== null; ) { + var prev = walker.prev; + del(self2, walker); + walker = prev; + } + } + } + function del(self2, node) { + if (node) { + var hit = node.value; + if (self2[DISPOSE]) { + self2[DISPOSE](hit.key, hit.value); + } + self2[LENGTH] -= hit.length; + self2[CACHE].delete(hit.key); + self2[LRU_LIST].removeNode(node); + } + } + function Entry(key, value, length, now, maxAge) { + this.key = key; + this.value = value; + this.length = length; + this.now = now; + this.maxAge = maxAge || 0; + } + } +}); +var require_sigmund = __commonJS2({ + "node_modules/sigmund/sigmund.js"(exports2, module2) { + module2.exports = sigmund; + function sigmund(subject, maxSessions) { + maxSessions = maxSessions || 10; + var notes = []; + var analysis = ""; + var RE = RegExp; + function psychoAnalyze(subject2, session) { + if (session > maxSessions) + return; + if (typeof subject2 === "function" || typeof subject2 === "undefined") { + return; + } + if (typeof subject2 !== "object" || !subject2 || subject2 instanceof RE) { + analysis += subject2; + return; + } + if (notes.indexOf(subject2) !== -1 || session === maxSessions) + return; + notes.push(subject2); + analysis += "{"; + Object.keys(subject2).forEach(function(issue, _, __) { + if (issue.charAt(0) === "_") + return; + var to = typeof subject2[issue]; + if (to === "function" || to === "undefined") + return; + analysis += issue; + psychoAnalyze(subject2[issue], session + 1); + }); + } + psychoAnalyze(subject, 0); + return analysis; + } + } +}); +var require_fnmatch = __commonJS2({ + "node_modules/editorconfig/src/lib/fnmatch.js"(exports2, module2) { + var platform = typeof process === "object" ? process.platform : "win32"; + if (module2) + module2.exports = minimatch; + else + exports2.minimatch = minimatch; + minimatch.Minimatch = Minimatch; + var LRU = require_lru_cache(); + var cache = minimatch.cache = new LRU({ + max: 100 + }); + var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}; + var sigmund = require_sigmund(); + var path = require("path"); + var qmark = "[^/]"; + var star = qmark + "*?"; + var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?"; + var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?"; + var reSpecials = charSet("().*{}+?[]^$\\!"); + function charSet(s) { + return s.split("").reduce(function(set, c) { + set[c] = true; + return set; + }, {}); + } + var slashSplit = /\/+/; + minimatch.monkeyPatch = monkeyPatch; + function monkeyPatch() { + var desc = Object.getOwnPropertyDescriptor(String.prototype, "match"); + var orig = desc.value; + desc.value = function(p) { + if (p instanceof Minimatch) + return p.match(this); + return orig.call(this, p); + }; + Object.defineProperty(String.prototype, desc); + } + minimatch.filter = filter; + function filter(pattern, options) { + options = options || {}; + return function(p, i, list) { + return minimatch(p, pattern, options); + }; + } + function ext(a, b) { + a = a || {}; + b = b || {}; + var t = {}; + Object.keys(b).forEach(function(k) { + t[k] = b[k]; + }); + Object.keys(a).forEach(function(k) { + t[k] = a[k]; + }); + return t; + } + minimatch.defaults = function(def) { + if (!def || !Object.keys(def).length) + return minimatch; + var orig = minimatch; + var m = function minimatch2(p, pattern, options) { + return orig.minimatch(p, pattern, ext(def, options)); + }; + m.Minimatch = function Minimatch2(pattern, options) { + return new orig.Minimatch(pattern, ext(def, options)); + }; + return m; + }; + Minimatch.defaults = function(def) { + if (!def || !Object.keys(def).length) + return Minimatch; + return minimatch.defaults(def).Minimatch; + }; + function minimatch(p, pattern, options) { + if (typeof pattern !== "string") { + throw new TypeError("glob pattern string required"); + } + if (!options) + options = {}; + if (!options.nocomment && pattern.charAt(0) === "#") { + return false; + } + if (pattern.trim() === "") + return p === ""; + return new Minimatch(pattern, options).match(p); + } + function Minimatch(pattern, options) { + if (!(this instanceof Minimatch)) { + return new Minimatch(pattern, options, cache); + } + if (typeof pattern !== "string") { + throw new TypeError("glob pattern string required"); + } + if (!options) + options = {}; + if (platform === "win32") { + pattern = pattern.split("\\").join("/"); + } + var cacheKey = pattern + "\n" + sigmund(options); + var cached = minimatch.cache.get(cacheKey); + if (cached) + return cached; + minimatch.cache.set(cacheKey, this); + this.options = options; + this.set = []; + this.pattern = pattern; + this.regexp = null; + this.negate = false; + this.comment = false; + this.empty = false; + this.make(); + } + Minimatch.prototype.make = make; + function make() { + if (this._made) + return; + var pattern = this.pattern; + var options = this.options; + if (!options.nocomment && pattern.charAt(0) === "#") { + this.comment = true; + return; + } + if (!pattern) { + this.empty = true; + return; + } + this.parseNegate(); + var set = this.globSet = this.braceExpand(); + if (options.debug) + console.error(this.pattern, set); + set = this.globParts = set.map(function(s) { + return s.split(slashSplit); + }); + if (options.debug) + console.error(this.pattern, set); + set = set.map(function(s, si, set2) { + return s.map(this.parse, this); + }, this); + if (options.debug) + console.error(this.pattern, set); + set = set.filter(function(s) { + return -1 === s.indexOf(false); + }); + if (options.debug) + console.error(this.pattern, set); + this.set = set; + } + Minimatch.prototype.parseNegate = parseNegate; + function parseNegate() { + var pattern = this.pattern, negate = false, options = this.options, negateOffset = 0; + if (options.nonegate) + return; + for (var i = 0, l = pattern.length; i < l && pattern.charAt(i) === "!"; i++) { + negate = !negate; + negateOffset++; + } + if (negateOffset) + this.pattern = pattern.substr(negateOffset); + this.negate = negate; + } + minimatch.braceExpand = function(pattern, options) { + return new Minimatch(pattern, options).braceExpand(); + }; + Minimatch.prototype.braceExpand = braceExpand; + function braceExpand(pattern, options) { + options = options || this.options; + pattern = typeof pattern === "undefined" ? this.pattern : pattern; + if (typeof pattern === "undefined") { + throw new Error("undefined pattern"); + } + if (options.nobrace || !pattern.match(/\{.*\}/)) { + return [pattern]; + } + var escaping = false; + if (pattern.charAt(0) !== "{") { + var prefix = null; + for (var i = 0, l = pattern.length; i < l; i++) { + var c = pattern.charAt(i); + if (c === "\\") { + escaping = !escaping; + } else if (c === "{" && !escaping) { + prefix = pattern.substr(0, i); + break; + } + } + if (prefix === null) { + return [pattern]; + } + var tail = braceExpand(pattern.substr(i), options); + return tail.map(function(t) { + return prefix + t; + }); + } + var numset = pattern.match(/^\{(-?[0-9]+)\.\.(-?[0-9]+)\}/); + if (numset) { + var suf = braceExpand(pattern.substr(numset[0].length), options), start = +numset[1], end = +numset[2], inc = start > end ? -1 : 1, set = []; + for (var i = start; i != end + inc; i += inc) { + for (var ii = 0, ll = suf.length; ii < ll; ii++) { + set.push(i + suf[ii]); + } + } + return set; + } + var i = 1, depth = 1, set = [], member = "", sawEnd = false, escaping = false; + function addMember() { + set.push(member); + member = ""; + } + FOR: + for (i = 1, l = pattern.length; i < l; i++) { + var c = pattern.charAt(i); + if (escaping) { + escaping = false; + member += "\\" + c; + } else { + switch (c) { + case "\\": + escaping = true; + continue; + case "{": + depth++; + member += "{"; + continue; + case "}": + depth--; + if (depth === 0) { + addMember(); + i++; + break FOR; + } else { + member += c; + continue; + } + case ",": + if (depth === 1) { + addMember(); + } else { + member += c; + } + continue; + default: + member += c; + continue; + } + } + } + if (depth !== 0) { + return braceExpand("\\" + pattern, options); + } + var suf = braceExpand(pattern.substr(i), options); + var addBraces = set.length === 1; + set = set.map(function(p) { + return braceExpand(p, options); + }); + set = set.reduce(function(l2, r) { + return l2.concat(r); + }); + if (addBraces) { + set = set.map(function(s) { + return "{" + s + "}"; + }); + } + var ret = []; + for (var i = 0, l = set.length; i < l; i++) { + for (var ii = 0, ll = suf.length; ii < ll; ii++) { + ret.push(set[i] + suf[ii]); + } + } + return ret; + } + Minimatch.prototype.parse = parse; + var SUBPARSE = {}; + function parse(pattern, isSub) { + var options = this.options; + if (!options.noglobstar && pattern === "**") + return GLOBSTAR; + if (pattern === "") + return ""; + var re = "", hasMagic = !!options.nocase, escaping = false, patternListStack = [], plType, stateChar, inClass = false, reClassStart = -1, classStart = -1, patternStart = pattern.charAt(0) === "." ? "" : options.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)"; + function clearStateChar() { + if (stateChar) { + switch (stateChar) { + case "*": + re += star; + hasMagic = true; + break; + case "?": + re += qmark; + hasMagic = true; + break; + default: + re += "\\" + stateChar; + break; + } + stateChar = false; + } + } + for (var i = 0, len = pattern.length, c; i < len && (c = pattern.charAt(i)); i++) { + if (options.debug) { + console.error("%s %s %s %j", pattern, i, re, c); + } + if (escaping && reSpecials[c]) { + re += "\\" + c; + escaping = false; + continue; + } + SWITCH: + switch (c) { + case "/": + return false; + case "\\": + clearStateChar(); + escaping = true; + continue; + case "?": + case "*": + case "+": + case "@": + case "!": + if (options.debug) { + console.error("%s %s %s %j <-- stateChar", pattern, i, re, c); + } + if (inClass) { + if (c === "!" && i === classStart + 1) + c = "^"; + re += c; + continue; + } + clearStateChar(); + stateChar = c; + if (options.noext) + clearStateChar(); + continue; + case "(": + if (inClass) { + re += "("; + continue; + } + if (!stateChar) { + re += "\\("; + continue; + } + plType = stateChar; + patternListStack.push({ + type: plType, + start: i - 1, + reStart: re.length + }); + re += stateChar === "!" ? "(?:(?!" : "(?:"; + stateChar = false; + continue; + case ")": + if (inClass || !patternListStack.length) { + re += "\\)"; + continue; + } + hasMagic = true; + re += ")"; + plType = patternListStack.pop().type; + switch (plType) { + case "!": + re += "[^/]*?)"; + break; + case "?": + case "+": + case "*": + re += plType; + case "@": + break; + } + continue; + case "|": + if (inClass || !patternListStack.length || escaping) { + re += "\\|"; + escaping = false; + continue; + } + re += "|"; + continue; + case "[": + clearStateChar(); + if (inClass) { + re += "\\" + c; + continue; + } + inClass = true; + classStart = i; + reClassStart = re.length; + re += c; + continue; + case "]": + if (i === classStart + 1 || !inClass) { + re += "\\" + c; + escaping = false; + continue; + } + hasMagic = true; + inClass = false; + re += c; + continue; + default: + clearStateChar(); + if (escaping) { + escaping = false; + } else if (reSpecials[c] && !(c === "^" && inClass)) { + re += "\\"; + } + re += c; + } + } + if (inClass) { + var cs = pattern.substr(classStart + 1), sp = this.parse(cs, SUBPARSE); + re = re.substr(0, reClassStart) + "\\[" + sp[0]; + hasMagic = hasMagic || sp[1]; + } + var pl; + while (pl = patternListStack.pop()) { + var tail = re.slice(pl.reStart + 3); + tail = tail.replace(/((?:\\{2})*)(\\?)\|/g, function(_, $1, $2) { + if (!$2) { + $2 = "\\"; + } + return $1 + $1 + $2 + "|"; + }); + var t = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type; + hasMagic = true; + re = re.slice(0, pl.reStart) + t + "\\(" + tail; + } + clearStateChar(); + if (escaping) { + re += "\\\\"; + } + var addPatternStart = false; + switch (re.charAt(0)) { + case ".": + case "[": + case "(": + addPatternStart = true; + } + if (re !== "" && hasMagic) + re = "(?=.)" + re; + if (addPatternStart) + re = patternStart + re; + if (isSub === SUBPARSE) { + return [re, hasMagic]; + } + if (!hasMagic) { + return globUnescape(pattern); + } + var flags = options.nocase ? "i" : "", regExp = new RegExp("^" + re + "$", flags); + regExp._glob = pattern; + regExp._src = re; + return regExp; + } + minimatch.makeRe = function(pattern, options) { + return new Minimatch(pattern, options || {}).makeRe(); + }; + Minimatch.prototype.makeRe = makeRe; + function makeRe() { + if (this.regexp || this.regexp === false) + return this.regexp; + var set = this.set; + if (!set.length) + return this.regexp = false; + var options = this.options; + var twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot, flags = options.nocase ? "i" : ""; + var re = set.map(function(pattern) { + return pattern.map(function(p) { + return p === GLOBSTAR ? twoStar : typeof p === "string" ? regExpEscape(p) : p._src; + }).join("\\/"); + }).join("|"); + re = "^(?:" + re + ")$"; + if (this.negate) + re = "^(?!" + re + ").*$"; + try { + return this.regexp = new RegExp(re, flags); + } catch (ex) { + return this.regexp = false; + } + } + minimatch.match = function(list, pattern, options) { + var mm = new Minimatch(pattern, options); + list = list.filter(function(f) { + return mm.match(f); + }); + if (options.nonull && !list.length) { + list.push(pattern); + } + return list; + }; + Minimatch.prototype.match = match; + function match(f, partial) { + if (this.comment) + return false; + if (this.empty) + return f === ""; + if (f === "/" && partial) + return true; + var options = this.options; + if (platform === "win32") { + f = f.split("\\").join("/"); + } + f = f.split(slashSplit); + if (options.debug) { + console.error(this.pattern, "split", f); + } + var set = this.set; + for (var i = 0, l = set.length; i < l; i++) { + var pattern = set[i]; + var hit = this.matchOne(f, pattern, partial); + if (hit) { + if (options.flipNegate) + return true; + return !this.negate; + } + } + if (options.flipNegate) + return false; + return this.negate; + } + Minimatch.prototype.matchOne = function(file, pattern, partial) { + var options = this.options; + if (options.debug) { + console.error("matchOne", { + "this": this, + file, + pattern + }); + } + if (options.matchBase && pattern.length === 1) { + file = path.basename(file.join("/")).split("/"); + } + if (options.debug) { + console.error("matchOne", file.length, pattern.length); + } + for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) { + if (options.debug) { + console.error("matchOne loop"); + } + var p = pattern[pi], f = file[fi]; + if (options.debug) { + console.error(pattern, p, f); + } + if (p === false) + return false; + if (p === GLOBSTAR) { + if (options.debug) + console.error("GLOBSTAR", [pattern, p, f]); + var fr = fi, pr = pi + 1; + if (pr === pl) { + if (options.debug) + console.error("** at the end"); + for (; fi < fl; fi++) { + if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".") + return false; + } + return true; + } + WHILE: + while (fr < fl) { + var swallowee = file[fr]; + if (options.debug) { + console.error("\nglobstar while", file, fr, pattern, pr, swallowee); + } + if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) { + if (options.debug) + console.error("globstar found match!", fr, fl, swallowee); + return true; + } else { + if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") { + if (options.debug) + console.error("dot detected!", file, fr, pattern, pr); + break WHILE; + } + if (options.debug) + console.error("globstar swallow a segment, and continue"); + fr++; + } + } + if (partial) { + if (fr === fl) + return true; + } + return false; + } + var hit; + if (typeof p === "string") { + if (options.nocase) { + hit = f.toLowerCase() === p.toLowerCase(); + } else { + hit = f === p; + } + if (options.debug) { + console.error("string match", p, f, hit); + } + } else { + hit = f.match(p); + if (options.debug) { + console.error("pattern match", p, f, hit); + } + } + if (!hit) + return false; + } + if (fi === fl && pi === pl) { + return true; + } else if (fi === fl) { + return partial; + } else if (pi === pl) { + var emptyFileEnd = fi === fl - 1 && file[fi] === ""; + return emptyFileEnd; + } + throw new Error("wtf?"); + }; + function globUnescape(s) { + return s.replace(/\\(.)/g, "$1"); + } + function regExpEscape(s) { + return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"); + } + } +}); +var require_ini = __commonJS2({ + "node_modules/editorconfig/src/lib/ini.js"(exports2) { + "use strict"; + var __awaiter2 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve(result.value) : new P(function(resolve2) { + resolve2(result.value); + }).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __generator2 = exports2 && exports2.__generator || function(thisArg, body) { + var _ = { + label: 0, + sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, + trys: [], + ops: [] + }, f, y, t, g; + return g = { + next: verb(0), + "throw": verb(1), + "return": verb(2) + }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { + value: op[1], + done: false + }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { + value: op[0] ? op[1] : void 0, + done: true + }; + } + }; + var __importStar2 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result = {}; + if (mod != null) { + for (var k in mod) + if (Object.hasOwnProperty.call(mod, k)) + result[k] = mod[k]; + } + result["default"] = mod; + return result; + }; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var fs = __importStar2(require("fs")); + var regex = { + section: /^\s*\[(([^#;]|\\#|\\;)+)\]\s*([#;].*)?$/, + param: /^\s*([\w\.\-\_]+)\s*[=:]\s*(.*?)\s*([#;].*)?$/, + comment: /^\s*[#;].*$/ + }; + function parse(file) { + return __awaiter2(this, void 0, void 0, function() { + return __generator2(this, function(_a) { + return [2, new Promise(function(resolve, reject) { + fs.readFile(file, "utf8", function(err, data) { + if (err) { + reject(err); + return; + } + resolve(parseString(data)); + }); + })]; + }); + }); + } + exports2.parse = parse; + function parseSync(file) { + return parseString(fs.readFileSync(file, "utf8")); + } + exports2.parseSync = parseSync; + function parseString(data) { + var sectionBody = {}; + var sectionName = null; + var value = [[sectionName, sectionBody]]; + var lines = data.split(/\r\n|\r|\n/); + lines.forEach(function(line) { + var match; + if (regex.comment.test(line)) { + return; + } + if (regex.param.test(line)) { + match = line.match(regex.param); + sectionBody[match[1]] = match[2]; + } else if (regex.section.test(line)) { + match = line.match(regex.section); + sectionName = match[1]; + sectionBody = {}; + value.push([sectionName, sectionBody]); + } + }); + return value; + } + exports2.parseString = parseString; + } +}); +var require_package = __commonJS2({ + "node_modules/editorconfig/package.json"(exports2, module2) { + module2.exports = { + name: "editorconfig", + version: "0.15.3", + description: "EditorConfig File Locator and Interpreter for Node.js", + keywords: ["editorconfig", "core"], + main: "src/index.js", + contributors: ["Hong Xu (topbug.net)", "Jed Mao (https://github.com/jedmao/)", "Trey Hunner (http://treyhunner.com)"], + directories: { + bin: "./bin", + lib: "./lib" + }, + scripts: { + clean: "rimraf dist", + prebuild: "npm run clean", + build: "tsc", + pretest: "npm run lint && npm run build && npm run copy && cmake .", + test: "ctest .", + "pretest:ci": "npm run pretest", + "test:ci": "ctest -VV --output-on-failure .", + lint: "npm run eclint && npm run tslint", + eclint: 'eclint check --indent_size ignore "src/**"', + tslint: "tslint --project tsconfig.json --exclude package.json", + copy: "cpy .npmignore LICENSE README.md CHANGELOG.md dist && cpy bin/* dist/bin && cpy src/lib/fnmatch*.* dist/src/lib", + prepub: "npm run lint && npm run build && npm run copy", + pub: "npm publish ./dist" + }, + repository: { + type: "git", + url: "git://github.com/editorconfig/editorconfig-core-js.git" + }, + bugs: "https://github.com/editorconfig/editorconfig-core-js/issues", + author: "EditorConfig Team", + license: "MIT", + dependencies: { + commander: "^2.19.0", + "lru-cache": "^4.1.5", + semver: "^5.6.0", + sigmund: "^1.0.1" + }, + devDependencies: { + "@types/mocha": "^5.2.6", + "@types/node": "^10.12.29", + "@types/semver": "^5.5.0", + "cpy-cli": "^2.0.0", + eclint: "^2.8.1", + mocha: "^5.2.0", + rimraf: "^2.6.3", + should: "^13.2.3", + tslint: "^5.13.1", + typescript: "^3.3.3333" + } + }; + } +}); +var require_src2 = __commonJS2({ + "node_modules/editorconfig/src/index.js"(exports2) { + "use strict"; + var __awaiter2 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function(resolve, reject) { + function fulfilled(value) { + try { + step(generator.next(value)); + } catch (e) { + reject(e); + } + } + function rejected(value) { + try { + step(generator["throw"](value)); + } catch (e) { + reject(e); + } + } + function step(result) { + result.done ? resolve(result.value) : new P(function(resolve2) { + resolve2(result.value); + }).then(fulfilled, rejected); + } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); + }; + var __generator2 = exports2 && exports2.__generator || function(thisArg, body) { + var _ = { + label: 0, + sent: function() { + if (t[0] & 1) + throw t[1]; + return t[1]; + }, + trys: [], + ops: [] + }, f, y, t, g; + return g = { + next: verb(0), + "throw": verb(1), + "return": verb(2) + }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { + return this; + }), g; + function verb(n) { + return function(v) { + return step([n, v]); + }; + } + function step(op) { + if (f) + throw new TypeError("Generator is already executing."); + while (_) + try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) + return t; + if (y = 0, t) + op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: + case 1: + t = op; + break; + case 4: + _.label++; + return { + value: op[1], + done: false + }; + case 5: + _.label++; + y = op[1]; + op = [0]; + continue; + case 7: + op = _.ops.pop(); + _.trys.pop(); + continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { + _ = 0; + continue; + } + if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { + _.label = op[1]; + break; + } + if (op[0] === 6 && _.label < t[1]) { + _.label = t[1]; + t = op; + break; + } + if (t && _.label < t[2]) { + _.label = t[2]; + _.ops.push(op); + break; + } + if (t[2]) + _.ops.pop(); + _.trys.pop(); + continue; + } + op = body.call(thisArg, _); + } catch (e) { + op = [6, e]; + y = 0; + } finally { + f = t = 0; + } + if (op[0] & 5) + throw op[1]; + return { + value: op[0] ? op[1] : void 0, + done: true + }; + } + }; + var __importStar2 = exports2 && exports2.__importStar || function(mod) { + if (mod && mod.__esModule) + return mod; + var result = {}; + if (mod != null) { + for (var k in mod) + if (Object.hasOwnProperty.call(mod, k)) + result[k] = mod[k]; + } + result["default"] = mod; + return result; + }; + var __importDefault2 = exports2 && exports2.__importDefault || function(mod) { + return mod && mod.__esModule ? mod : { + "default": mod + }; + }; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var fs = __importStar2(require("fs")); + var path = __importStar2(require("path")); + var semver = { + gte: require_gte() + }; + var fnmatch_1 = __importDefault2(require_fnmatch()); + var ini_1 = require_ini(); + exports2.parseString = ini_1.parseString; + var package_json_1 = __importDefault2(require_package()); + var knownProps = { + end_of_line: true, + indent_style: true, + indent_size: true, + insert_final_newline: true, + trim_trailing_whitespace: true, + charset: true + }; + function fnmatch(filepath, glob) { + var matchOptions = { + matchBase: true, + dot: true, + noext: true + }; + glob = glob.replace(/\*\*/g, "{*,**/**/**}"); + return fnmatch_1.default(filepath, glob, matchOptions); + } + function getConfigFileNames(filepath, options) { + var paths = []; + do { + filepath = path.dirname(filepath); + paths.push(path.join(filepath, options.config)); + } while (filepath !== options.root); + return paths; + } + function processMatches(matches, version2) { + if ("indent_style" in matches && matches.indent_style === "tab" && !("indent_size" in matches) && semver.gte(version2, "0.10.0")) { + matches.indent_size = "tab"; + } + if ("indent_size" in matches && !("tab_width" in matches) && matches.indent_size !== "tab") { + matches.tab_width = matches.indent_size; + } + if ("indent_size" in matches && "tab_width" in matches && matches.indent_size === "tab") { + matches.indent_size = matches.tab_width; + } + return matches; + } + function processOptions(options, filepath) { + if (options === void 0) { + options = {}; + } + return { + config: options.config || ".editorconfig", + version: options.version || package_json_1.default.version, + root: path.resolve(options.root || path.parse(filepath).root) + }; + } + function buildFullGlob(pathPrefix, glob) { + switch (glob.indexOf("/")) { + case -1: + glob = "**/" + glob; + break; + case 0: + glob = glob.substring(1); + break; + default: + break; + } + return path.join(pathPrefix, glob); + } + function extendProps(props, options) { + if (props === void 0) { + props = {}; + } + if (options === void 0) { + options = {}; + } + for (var key in options) { + if (options.hasOwnProperty(key)) { + var value = options[key]; + var key2 = key.toLowerCase(); + var value2 = value; + if (knownProps[key2]) { + value2 = value.toLowerCase(); + } + try { + value2 = JSON.parse(value); + } catch (e) { + } + if (typeof value === "undefined" || value === null) { + value2 = String(value); + } + props[key2] = value2; + } + } + return props; + } + function parseFromConfigs(configs, filepath, options) { + return processMatches(configs.reverse().reduce(function(matches, file) { + var pathPrefix = path.dirname(file.name); + file.contents.forEach(function(section) { + var glob = section[0]; + var options2 = section[1]; + if (!glob) { + return; + } + var fullGlob = buildFullGlob(pathPrefix, glob); + if (!fnmatch(filepath, fullGlob)) { + return; + } + matches = extendProps(matches, options2); + }); + return matches; + }, {}), options.version); + } + function getConfigsForFiles(files) { + var configs = []; + for (var i in files) { + if (files.hasOwnProperty(i)) { + var file = files[i]; + var contents = ini_1.parseString(file.contents); + configs.push({ + name: file.name, + contents + }); + if ((contents[0][1].root || "").toLowerCase() === "true") { + break; + } + } + } + return configs; + } + function readConfigFiles(filepaths) { + return __awaiter2(this, void 0, void 0, function() { + return __generator2(this, function(_a) { + return [2, Promise.all(filepaths.map(function(name) { + return new Promise(function(resolve) { + fs.readFile(name, "utf8", function(err, data) { + resolve({ + name, + contents: err ? "" : data + }); + }); + }); + }))]; + }); + }); + } + function readConfigFilesSync(filepaths) { + var files = []; + var file; + filepaths.forEach(function(filepath) { + try { + file = fs.readFileSync(filepath, "utf8"); + } catch (e) { + file = ""; + } + files.push({ + name: filepath, + contents: file + }); + }); + return files; + } + function opts(filepath, options) { + if (options === void 0) { + options = {}; + } + var resolvedFilePath = path.resolve(filepath); + return [resolvedFilePath, processOptions(options, resolvedFilePath)]; + } + function parseFromFiles(filepath, files, options) { + if (options === void 0) { + options = {}; + } + return __awaiter2(this, void 0, void 0, function() { + var _a, resolvedFilePath, processedOptions; + return __generator2(this, function(_b) { + _a = opts(filepath, options), resolvedFilePath = _a[0], processedOptions = _a[1]; + return [2, files.then(getConfigsForFiles).then(function(configs) { + return parseFromConfigs(configs, resolvedFilePath, processedOptions); + })]; + }); + }); + } + exports2.parseFromFiles = parseFromFiles; + function parseFromFilesSync(filepath, files, options) { + if (options === void 0) { + options = {}; + } + var _a = opts(filepath, options), resolvedFilePath = _a[0], processedOptions = _a[1]; + return parseFromConfigs(getConfigsForFiles(files), resolvedFilePath, processedOptions); + } + exports2.parseFromFilesSync = parseFromFilesSync; + function parse(_filepath, _options) { + if (_options === void 0) { + _options = {}; + } + return __awaiter2(this, void 0, void 0, function() { + var _a, resolvedFilePath, processedOptions, filepaths; + return __generator2(this, function(_b) { + _a = opts(_filepath, _options), resolvedFilePath = _a[0], processedOptions = _a[1]; + filepaths = getConfigFileNames(resolvedFilePath, processedOptions); + return [2, readConfigFiles(filepaths).then(getConfigsForFiles).then(function(configs) { + return parseFromConfigs(configs, resolvedFilePath, processedOptions); + })]; + }); + }); + } + exports2.parse = parse; + function parseSync(_filepath, _options) { + if (_options === void 0) { + _options = {}; + } + var _a = opts(_filepath, _options), resolvedFilePath = _a[0], processedOptions = _a[1]; + var filepaths = getConfigFileNames(resolvedFilePath, processedOptions); + var files = readConfigFilesSync(filepaths); + return parseFromConfigs(getConfigsForFiles(files), resolvedFilePath, processedOptions); + } + exports2.parseSync = parseSync; + } +}); +var require_editorconfig_to_prettier = __commonJS2({ + "node_modules/editorconfig-to-prettier/index.js"(exports2, module2) { + module2.exports = editorConfigToPrettier; + function removeUnset(editorConfig) { + const result = {}; + const keys = Object.keys(editorConfig); + for (let i = 0; i < keys.length; i++) { + const key = keys[i]; + if (editorConfig[key] === "unset") { + continue; + } + result[key] = editorConfig[key]; + } + return result; + } + function editorConfigToPrettier(editorConfig) { + if (!editorConfig) { + return null; + } + editorConfig = removeUnset(editorConfig); + if (Object.keys(editorConfig).length === 0) { + return null; + } + const result = {}; + if (editorConfig.indent_style) { + result.useTabs = editorConfig.indent_style === "tab"; + } + if (editorConfig.indent_size === "tab") { + result.useTabs = true; + } + if (result.useTabs && editorConfig.tab_width) { + result.tabWidth = editorConfig.tab_width; + } else if (editorConfig.indent_style === "space" && editorConfig.indent_size && editorConfig.indent_size !== "tab") { + result.tabWidth = editorConfig.indent_size; + } else if (editorConfig.tab_width !== void 0) { + result.tabWidth = editorConfig.tab_width; + } + if (editorConfig.max_line_length) { + if (editorConfig.max_line_length === "off") { + result.printWidth = Number.POSITIVE_INFINITY; + } else { + result.printWidth = editorConfig.max_line_length; + } + } + if (editorConfig.quote_type === "single") { + result.singleQuote = true; + } else if (editorConfig.quote_type === "double") { + result.singleQuote = false; + } + if (["cr", "crlf", "lf"].indexOf(editorConfig.end_of_line) !== -1) { + result.endOfLine = editorConfig.end_of_line; + } + if (editorConfig.insert_final_newline === false || editorConfig.insert_final_newline === true) { + result.insertFinalNewline = editorConfig.insert_final_newline; + } + return result; + } + } +}); +var require_find_project_root = __commonJS2({ + "src/config/find-project-root.js"(exports2, module2) { + "use strict"; + var fs = require("fs"); + var path = require("path"); + var MARKERS = [".git", ".hg"]; + var markerExists = (directory) => MARKERS.some((mark) => fs.existsSync(path.join(directory, mark))); + function findProjectRoot(directory) { + while (!markerExists(directory)) { + const parentDirectory = path.resolve(directory, ".."); + if (parentDirectory === directory) { + break; + } + directory = parentDirectory; + } + return directory; + } + module2.exports = findProjectRoot; + } +}); +var require_resolve_config_editorconfig = __commonJS2({ + "src/config/resolve-config-editorconfig.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var editorconfig = require_src2(); + var editorConfigToPrettier = require_editorconfig_to_prettier(); + var { + default: mem2, + memClear: memClear2 + } = (init_dist(), __toCommonJS(dist_exports)); + var findProjectRoot = require_find_project_root(); + var jsonStringifyMem = (fn) => mem2(fn, { + cacheKey: JSON.stringify + }); + var maybeParse = (filePath, parse) => filePath && parse(filePath, { + root: findProjectRoot(path.dirname(path.resolve(filePath))) + }); + var editorconfigAsyncNoCache = async (filePath) => editorConfigToPrettier(await maybeParse(filePath, editorconfig.parse)); + var editorconfigAsyncWithCache = jsonStringifyMem(editorconfigAsyncNoCache); + var editorconfigSyncNoCache = (filePath) => editorConfigToPrettier(maybeParse(filePath, editorconfig.parseSync)); + var editorconfigSyncWithCache = jsonStringifyMem(editorconfigSyncNoCache); + function getLoadFunction(opts) { + if (!opts.editorconfig) { + return () => null; + } + if (opts.sync) { + return opts.cache ? editorconfigSyncWithCache : editorconfigSyncNoCache; + } + return opts.cache ? editorconfigAsyncWithCache : editorconfigAsyncNoCache; + } + function clearCache() { + memClear2(editorconfigSyncWithCache); + memClear2(editorconfigAsyncWithCache); + } + module2.exports = { + getLoadFunction, + clearCache + }; + } +}); +var require_resolve_config = __commonJS2({ + "src/config/resolve-config.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var micromatch = require_micromatch(); + var thirdParty = require("./third-party.js"); + var loadToml = require_load_toml(); + var loadJson5 = require_load_json5(); + var partition = require_partition(); + var resolve = require_resolve2(); + var { + default: mem2, + memClear: memClear2 + } = (init_dist(), __toCommonJS(dist_exports)); + var resolveEditorConfig = require_resolve_config_editorconfig(); + var getExplorerMemoized = mem2((opts) => { + const cosmiconfig = thirdParty["cosmiconfig" + (opts.sync ? "Sync" : "")]; + const explorer = cosmiconfig("prettier", { + cache: opts.cache, + transform: (result) => { + if (result && result.config) { + if (typeof result.config === "string") { + const dir = path.dirname(result.filepath); + const modulePath = resolve(result.config, { + paths: [dir] + }); + result.config = require(modulePath); + } + if (typeof result.config !== "object") { + throw new TypeError(`Config is only allowed to be an object, but received ${typeof result.config} in "${result.filepath}"`); + } + delete result.config.$schema; + } + return result; + }, + searchPlaces: ["package.json", ".prettierrc", ".prettierrc.json", ".prettierrc.yaml", ".prettierrc.yml", ".prettierrc.json5", ".prettierrc.js", ".prettierrc.cjs", "prettier.config.js", "prettier.config.cjs", ".prettierrc.toml"], + loaders: { + ".toml": loadToml, + ".json5": loadJson5 + } + }); + return explorer; + }, { + cacheKey: JSON.stringify + }); + function getExplorer(opts) { + opts = Object.assign({ + sync: false, + cache: false + }, opts); + return getExplorerMemoized(opts); + } + function _resolveConfig(filePath, opts, sync) { + opts = Object.assign({ + useCache: true + }, opts); + const loadOpts = { + cache: Boolean(opts.useCache), + sync: Boolean(sync), + editorconfig: Boolean(opts.editorconfig) + }; + const { + load, + search + } = getExplorer(loadOpts); + const loadEditorConfig = resolveEditorConfig.getLoadFunction(loadOpts); + const arr = [opts.config ? load(opts.config) : search(filePath), loadEditorConfig(filePath)]; + const unwrapAndMerge = ([result, editorConfigured]) => { + const merged = Object.assign(Object.assign({}, editorConfigured), mergeOverrides(result, filePath)); + for (const optionName of ["plugins", "pluginSearchDirs"]) { + if (Array.isArray(merged[optionName])) { + merged[optionName] = merged[optionName].map((value) => typeof value === "string" && value.startsWith(".") ? path.resolve(path.dirname(result.filepath), value) : value); + } + } + if (!result && !editorConfigured) { + return null; + } + delete merged.insertFinalNewline; + return merged; + }; + if (loadOpts.sync) { + return unwrapAndMerge(arr); + } + return Promise.all(arr).then(unwrapAndMerge); + } + var resolveConfig = (filePath, opts) => _resolveConfig(filePath, opts, false); + resolveConfig.sync = (filePath, opts) => _resolveConfig(filePath, opts, true); + function clearCache() { + memClear2(getExplorerMemoized); + resolveEditorConfig.clearCache(); + } + async function resolveConfigFile(filePath) { + const { + search + } = getExplorer({ + sync: false + }); + const result = await search(filePath); + return result ? result.filepath : null; + } + resolveConfigFile.sync = (filePath) => { + const { + search + } = getExplorer({ + sync: true + }); + const result = search(filePath); + return result ? result.filepath : null; + }; + function mergeOverrides(configResult, filePath) { + const { + config: config2, + filepath: configPath + } = configResult || {}; + const _ref = config2 || {}, { + overrides + } = _ref, options = _objectWithoutProperties(_ref, _excluded3); + if (filePath && overrides) { + const relativeFilePath = path.relative(path.dirname(configPath), filePath); + for (const override of overrides) { + if (pathMatchesGlobs(relativeFilePath, override.files, override.excludeFiles)) { + Object.assign(options, override.options); + } + } + } + return options; + } + function pathMatchesGlobs(filePath, patterns, excludedPatterns) { + const patternList = Array.isArray(patterns) ? patterns : [patterns]; + const [withSlashes, withoutSlashes] = partition(patternList, (pattern) => pattern.includes("/")); + return micromatch.isMatch(filePath, withoutSlashes, { + ignore: excludedPatterns, + basename: true, + dot: true + }) || micromatch.isMatch(filePath, withSlashes, { + ignore: excludedPatterns, + basename: false, + dot: true + }); + } + module2.exports = { + resolveConfig, + resolveConfigFile, + clearCache + }; + } +}); +var require_ignore = __commonJS2({ + "node_modules/ignore/index.js"(exports2, module2) { + function makeArray(subject) { + return Array.isArray(subject) ? subject : [subject]; + } + var EMPTY = ""; + var SPACE = " "; + var ESCAPE = "\\"; + var REGEX_TEST_BLANK_LINE = /^\s+$/; + var REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/; + var REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/; + var REGEX_SPLITALL_CRLF = /\r?\n/g; + var REGEX_TEST_INVALID_PATH = /^\.*\/|^\.+$/; + var SLASH = "/"; + var KEY_IGNORE = typeof Symbol !== "undefined" ? Symbol.for("node-ignore") : "node-ignore"; + var define2 = (object, key, value) => Object.defineProperty(object, key, { + value + }); + var REGEX_REGEXP_RANGE = /([0-z])-([0-z])/g; + var RETURN_FALSE = () => false; + var sanitizeRange = (range) => range.replace(REGEX_REGEXP_RANGE, (match, from, to) => from.charCodeAt(0) <= to.charCodeAt(0) ? match : EMPTY); + var cleanRangeBackSlash = (slashes) => { + const { + length + } = slashes; + return slashes.slice(0, length - length % 2); + }; + var REPLACERS = [[/\\?\s+$/, (match) => match.indexOf("\\") === 0 ? SPACE : EMPTY], [/\\\s/g, () => SPACE], [/[\\$.|*+(){^]/g, (match) => `\\${match}`], [/(?!\\)\?/g, () => "[^/]"], [/^\//, () => "^"], [/\//g, () => "\\/"], [/^\^*\\\*\\\*\\\//, () => "^(?:.*\\/)?"], [/^(?=[^^])/, function startingReplacer() { + return !/\/(?!$)/.test(this) ? "(?:^|\\/)" : "^"; + }], [/\\\/\\\*\\\*(?=\\\/|$)/g, (_, index, str) => index + 6 < str.length ? "(?:\\/[^\\/]+)*" : "\\/.+"], [/(^|[^\\]+)\\\*(?=.+)/g, (_, p1) => `${p1}[^\\/]*`], [/\\\\\\(?=[$.|*+(){^])/g, () => ESCAPE], [/\\\\/g, () => ESCAPE], [/(\\)?\[([^\]/]*?)(\\*)($|\])/g, (match, leadEscape, range, endEscape, close) => leadEscape === ESCAPE ? `\\[${range}${cleanRangeBackSlash(endEscape)}${close}` : close === "]" ? endEscape.length % 2 === 0 ? `[${sanitizeRange(range)}${endEscape}]` : "[]" : "[]"], [/(?:[^*])$/, (match) => /\/$/.test(match) ? `${match}$` : `${match}(?=$|\\/$)`], [/(\^|\\\/)?\\\*$/, (_, p1) => { + const prefix = p1 ? `${p1}[^/]+` : "[^/]*"; + return `${prefix}(?=$|\\/$)`; + }]]; + var regexCache = /* @__PURE__ */ Object.create(null); + var makeRegex = (pattern, ignoreCase) => { + let source = regexCache[pattern]; + if (!source) { + source = REPLACERS.reduce((prev, current) => prev.replace(current[0], current[1].bind(pattern)), pattern); + regexCache[pattern] = source; + } + return ignoreCase ? new RegExp(source, "i") : new RegExp(source); + }; + var isString = (subject) => typeof subject === "string"; + var checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_TEST_BLANK_LINE.test(pattern) && pattern.indexOf("#") !== 0; + var splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF); + var IgnoreRule = class { + constructor(origin, pattern, negative, regex) { + this.origin = origin; + this.pattern = pattern; + this.negative = negative; + this.regex = regex; + } + }; + var createRule = (pattern, ignoreCase) => { + const origin = pattern; + let negative = false; + if (pattern.indexOf("!") === 0) { + negative = true; + pattern = pattern.substr(1); + } + pattern = pattern.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#"); + const regex = makeRegex(pattern, ignoreCase); + return new IgnoreRule(origin, pattern, negative, regex); + }; + var throwError = (message, Ctor) => { + throw new Ctor(message); + }; + var checkPath = (path, originalPath, doThrow) => { + if (!isString(path)) { + return doThrow(`path must be a string, but got \`${originalPath}\``, TypeError); + } + if (!path) { + return doThrow(`path must not be empty`, TypeError); + } + if (checkPath.isNotRelative(path)) { + const r = "`path.relative()`d"; + return doThrow(`path should be a ${r} string, but got "${originalPath}"`, RangeError); + } + return true; + }; + var isNotRelative = (path) => REGEX_TEST_INVALID_PATH.test(path); + checkPath.isNotRelative = isNotRelative; + checkPath.convert = (p) => p; + var Ignore = class { + constructor({ + ignorecase = true, + ignoreCase = ignorecase, + allowRelativePaths = false + } = {}) { + define2(this, KEY_IGNORE, true); + this._rules = []; + this._ignoreCase = ignoreCase; + this._allowRelativePaths = allowRelativePaths; + this._initCache(); + } + _initCache() { + this._ignoreCache = /* @__PURE__ */ Object.create(null); + this._testCache = /* @__PURE__ */ Object.create(null); + } + _addPattern(pattern) { + if (pattern && pattern[KEY_IGNORE]) { + this._rules = this._rules.concat(pattern._rules); + this._added = true; + return; + } + if (checkPattern(pattern)) { + const rule = createRule(pattern, this._ignoreCase); + this._added = true; + this._rules.push(rule); + } + } + add(pattern) { + this._added = false; + makeArray(isString(pattern) ? splitPattern(pattern) : pattern).forEach(this._addPattern, this); + if (this._added) { + this._initCache(); + } + return this; + } + addPattern(pattern) { + return this.add(pattern); + } + _testOne(path, checkUnignored) { + let ignored = false; + let unignored = false; + this._rules.forEach((rule) => { + const { + negative + } = rule; + if (unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) { + return; + } + const matched = rule.regex.test(path); + if (matched) { + ignored = !negative; + unignored = negative; + } + }); + return { + ignored, + unignored + }; + } + _test(originalPath, cache, checkUnignored, slices) { + const path = originalPath && checkPath.convert(originalPath); + checkPath(path, originalPath, this._allowRelativePaths ? RETURN_FALSE : throwError); + return this._t(path, cache, checkUnignored, slices); + } + _t(path, cache, checkUnignored, slices) { + if (path in cache) { + return cache[path]; + } + if (!slices) { + slices = path.split(SLASH); + } + slices.pop(); + if (!slices.length) { + return cache[path] = this._testOne(path, checkUnignored); + } + const parent = this._t(slices.join(SLASH) + SLASH, cache, checkUnignored, slices); + return cache[path] = parent.ignored ? parent : this._testOne(path, checkUnignored); + } + ignores(path) { + return this._test(path, this._ignoreCache, false).ignored; + } + createFilter() { + return (path) => !this.ignores(path); + } + filter(paths) { + return makeArray(paths).filter(this.createFilter()); + } + test(path) { + return this._test(path, this._testCache, true); + } + }; + var factory = (options) => new Ignore(options); + var isPathValid = (path) => checkPath(path && checkPath.convert(path), path, RETURN_FALSE); + factory.isPathValid = isPathValid; + factory.default = factory; + module2.exports = factory; + if (typeof process !== "undefined" && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === "win32")) { + const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/"); + checkPath.convert = makePosix; + const REGIX_IS_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i; + checkPath.isNotRelative = (path) => REGIX_IS_WINDOWS_PATH_ABSOLUTE.test(path) || isNotRelative(path); + } + } +}); +var require_get_file_content_or_null = __commonJS2({ + "src/utils/get-file-content-or-null.js"(exports2, module2) { + "use strict"; + var fs = require("fs"); + var fsAsync = fs.promises; + async function getFileContentOrNull(filename) { + try { + return await fsAsync.readFile(filename, "utf8"); + } catch (error) { + return handleError(filename, error); + } + } + getFileContentOrNull.sync = function(filename) { + try { + return fs.readFileSync(filename, "utf8"); + } catch (error) { + return handleError(filename, error); + } + }; + function handleError(filename, error) { + if (error && error.code === "ENOENT") { + return null; + } + throw new Error(`Unable to read ${filename}: ${error.message}`); + } + module2.exports = getFileContentOrNull; + } +}); +var require_create_ignorer = __commonJS2({ + "src/common/create-ignorer.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var ignore = require_ignore().default; + var getFileContentOrNull = require_get_file_content_or_null(); + async function createIgnorer(ignorePath, withNodeModules) { + const ignoreContent = ignorePath ? await getFileContentOrNull(path.resolve(ignorePath)) : null; + return _createIgnorer(ignoreContent, withNodeModules); + } + createIgnorer.sync = function(ignorePath, withNodeModules) { + const ignoreContent = !ignorePath ? null : getFileContentOrNull.sync(path.resolve(ignorePath)); + return _createIgnorer(ignoreContent, withNodeModules); + }; + function _createIgnorer(ignoreContent, withNodeModules) { + const ignorer = ignore({ + allowRelativePaths: true + }).add(ignoreContent || ""); + if (!withNodeModules) { + ignorer.add("node_modules"); + } + return ignorer; + } + module2.exports = createIgnorer; + } +}); +var require_get_file_info = __commonJS2({ + "src/common/get-file-info.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var options = require_options(); + var config2 = require_resolve_config(); + var createIgnorer = require_create_ignorer(); + async function getFileInfo2(filePath, opts) { + if (typeof filePath !== "string") { + throw new TypeError(`expect \`filePath\` to be a string, got \`${typeof filePath}\``); + } + const ignorer = await createIgnorer(opts.ignorePath, opts.withNodeModules); + return _getFileInfo({ + ignorer, + filePath, + plugins: opts.plugins, + resolveConfig: opts.resolveConfig, + ignorePath: opts.ignorePath, + sync: false + }); + } + getFileInfo2.sync = function(filePath, opts) { + if (typeof filePath !== "string") { + throw new TypeError(`expect \`filePath\` to be a string, got \`${typeof filePath}\``); + } + const ignorer = createIgnorer.sync(opts.ignorePath, opts.withNodeModules); + return _getFileInfo({ + ignorer, + filePath, + plugins: opts.plugins, + resolveConfig: opts.resolveConfig, + ignorePath: opts.ignorePath, + sync: true + }); + }; + function getFileParser(resolvedConfig, filePath, plugins2) { + if (resolvedConfig && resolvedConfig.parser) { + return resolvedConfig.parser; + } + const inferredParser = options.inferParser(filePath, plugins2); + if (inferredParser) { + return inferredParser; + } + return null; + } + function _getFileInfo({ + ignorer, + filePath, + plugins: plugins2, + resolveConfig = false, + ignorePath, + sync = false + }) { + const normalizedFilePath = normalizeFilePath(filePath, ignorePath); + const fileInfo = { + ignored: ignorer.ignores(normalizedFilePath), + inferredParser: null + }; + if (fileInfo.ignored) { + return fileInfo; + } + let resolvedConfig; + if (resolveConfig) { + if (sync) { + resolvedConfig = config2.resolveConfig.sync(filePath); + } else { + return config2.resolveConfig(filePath).then((resolvedConfig2) => { + fileInfo.inferredParser = getFileParser(resolvedConfig2, filePath, plugins2); + return fileInfo; + }); + } + } + fileInfo.inferredParser = getFileParser(resolvedConfig, filePath, plugins2); + return fileInfo; + } + function normalizeFilePath(filePath, ignorePath) { + return ignorePath ? path.relative(path.dirname(ignorePath), filePath) : filePath; + } + module2.exports = getFileInfo2; + } +}); +var require_util_shared = __commonJS2({ + "src/common/util-shared.js"(exports2, module2) { + "use strict"; + var { + getMaxContinuousCount, + getStringWidth, + getAlignmentSize, + getIndentSize, + skip, + skipWhitespace, + skipSpaces, + skipNewline, + skipToLineEnd, + skipEverythingButNewLine, + skipInlineComment, + skipTrailingComment, + hasNewline, + hasNewlineInRange, + hasSpaces, + isNextLineEmpty, + isNextLineEmptyAfterIndex, + isPreviousLineEmpty, + getNextNonSpaceNonCommentCharacterIndex, + makeString, + addLeadingComment, + addDanglingComment, + addTrailingComment + } = require_util(); + module2.exports = { + getMaxContinuousCount, + getStringWidth, + getAlignmentSize, + getIndentSize, + skip, + skipWhitespace, + skipSpaces, + skipNewline, + skipToLineEnd, + skipEverythingButNewLine, + skipInlineComment, + skipTrailingComment, + hasNewline, + hasNewlineInRange, + hasSpaces, + isNextLineEmpty, + isNextLineEmptyAfterIndex, + isPreviousLineEmpty, + getNextNonSpaceNonCommentCharacterIndex, + makeString, + addLeadingComment, + addDanglingComment, + addTrailingComment + }; + } +}); +var require_array3 = __commonJS2({ + "node_modules/fast-glob/out/utils/array.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.splitWhen = exports2.flatten = void 0; + function flatten(items) { + return items.reduce((collection, item) => [].concat(collection, item), []); + } + exports2.flatten = flatten; + function splitWhen(items, predicate) { + const result = [[]]; + let groupIndex = 0; + for (const item of items) { + if (predicate(item)) { + groupIndex++; + result[groupIndex] = []; + } else { + result[groupIndex].push(item); + } + } + return result; + } + exports2.splitWhen = splitWhen; + } +}); +var require_errno = __commonJS2({ + "node_modules/fast-glob/out/utils/errno.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.isEnoentCodeError = void 0; + function isEnoentCodeError(error) { + return error.code === "ENOENT"; + } + exports2.isEnoentCodeError = isEnoentCodeError; + } +}); +var require_fs = __commonJS2({ + "node_modules/fast-glob/out/utils/fs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.createDirentFromStats = void 0; + var DirentFromStats = class { + constructor(name, stats) { + this.name = name; + this.isBlockDevice = stats.isBlockDevice.bind(stats); + this.isCharacterDevice = stats.isCharacterDevice.bind(stats); + this.isDirectory = stats.isDirectory.bind(stats); + this.isFIFO = stats.isFIFO.bind(stats); + this.isFile = stats.isFile.bind(stats); + this.isSocket = stats.isSocket.bind(stats); + this.isSymbolicLink = stats.isSymbolicLink.bind(stats); + } + }; + function createDirentFromStats(name, stats) { + return new DirentFromStats(name, stats); + } + exports2.createDirentFromStats = createDirentFromStats; + } +}); +var require_path = __commonJS2({ + "node_modules/fast-glob/out/utils/path.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.removeLeadingDotSegment = exports2.escape = exports2.makeAbsolute = exports2.unixify = void 0; + var path = require("path"); + var LEADING_DOT_SEGMENT_CHARACTERS_COUNT = 2; + var UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\())/g; + function unixify(filepath) { + return filepath.replace(/\\/g, "/"); + } + exports2.unixify = unixify; + function makeAbsolute(cwd, filepath) { + return path.resolve(cwd, filepath); + } + exports2.makeAbsolute = makeAbsolute; + function escape(pattern) { + return pattern.replace(UNESCAPED_GLOB_SYMBOLS_RE, "\\$2"); + } + exports2.escape = escape; + function removeLeadingDotSegment(entry) { + if (entry.charAt(0) === ".") { + const secondCharactery = entry.charAt(1); + if (secondCharactery === "/" || secondCharactery === "\\") { + return entry.slice(LEADING_DOT_SEGMENT_CHARACTERS_COUNT); + } + } + return entry; + } + exports2.removeLeadingDotSegment = removeLeadingDotSegment; + } +}); +var require_is_extglob = __commonJS2({ + "node_modules/is-extglob/index.js"(exports2, module2) { + module2.exports = function isExtglob(str) { + if (typeof str !== "string" || str === "") { + return false; + } + var match; + while (match = /(\\).|([@?!+*]\(.*\))/g.exec(str)) { + if (match[2]) + return true; + str = str.slice(match.index + match[0].length); + } + return false; + }; + } +}); +var require_is_glob = __commonJS2({ + "node_modules/is-glob/index.js"(exports2, module2) { + var isExtglob = require_is_extglob(); + var chars = { + "{": "}", + "(": ")", + "[": "]" + }; + var strictCheck = function(str) { + if (str[0] === "!") { + return true; + } + var index = 0; + var pipeIndex = -2; + var closeSquareIndex = -2; + var closeCurlyIndex = -2; + var closeParenIndex = -2; + var backSlashIndex = -2; + while (index < str.length) { + if (str[index] === "*") { + return true; + } + if (str[index + 1] === "?" && /[\].+)]/.test(str[index])) { + return true; + } + if (closeSquareIndex !== -1 && str[index] === "[" && str[index + 1] !== "]") { + if (closeSquareIndex < index) { + closeSquareIndex = str.indexOf("]", index); + } + if (closeSquareIndex > index) { + if (backSlashIndex === -1 || backSlashIndex > closeSquareIndex) { + return true; + } + backSlashIndex = str.indexOf("\\", index); + if (backSlashIndex === -1 || backSlashIndex > closeSquareIndex) { + return true; + } + } + } + if (closeCurlyIndex !== -1 && str[index] === "{" && str[index + 1] !== "}") { + closeCurlyIndex = str.indexOf("}", index); + if (closeCurlyIndex > index) { + backSlashIndex = str.indexOf("\\", index); + if (backSlashIndex === -1 || backSlashIndex > closeCurlyIndex) { + return true; + } + } + } + if (closeParenIndex !== -1 && str[index] === "(" && str[index + 1] === "?" && /[:!=]/.test(str[index + 2]) && str[index + 3] !== ")") { + closeParenIndex = str.indexOf(")", index); + if (closeParenIndex > index) { + backSlashIndex = str.indexOf("\\", index); + if (backSlashIndex === -1 || backSlashIndex > closeParenIndex) { + return true; + } + } + } + if (pipeIndex !== -1 && str[index] === "(" && str[index + 1] !== "|") { + if (pipeIndex < index) { + pipeIndex = str.indexOf("|", index); + } + if (pipeIndex !== -1 && str[pipeIndex + 1] !== ")") { + closeParenIndex = str.indexOf(")", pipeIndex); + if (closeParenIndex > pipeIndex) { + backSlashIndex = str.indexOf("\\", pipeIndex); + if (backSlashIndex === -1 || backSlashIndex > closeParenIndex) { + return true; + } + } + } + } + if (str[index] === "\\") { + var open = str[index + 1]; + index += 2; + var close = chars[open]; + if (close) { + var n = str.indexOf(close, index); + if (n !== -1) { + index = n + 1; + } + } + if (str[index] === "!") { + return true; + } + } else { + index++; + } + } + return false; + }; + var relaxedCheck = function(str) { + if (str[0] === "!") { + return true; + } + var index = 0; + while (index < str.length) { + if (/[*?{}()[\]]/.test(str[index])) { + return true; + } + if (str[index] === "\\") { + var open = str[index + 1]; + index += 2; + var close = chars[open]; + if (close) { + var n = str.indexOf(close, index); + if (n !== -1) { + index = n + 1; + } + } + if (str[index] === "!") { + return true; + } + } else { + index++; + } + } + return false; + }; + module2.exports = function isGlob(str, options) { + if (typeof str !== "string" || str === "") { + return false; + } + if (isExtglob(str)) { + return true; + } + var check = strictCheck; + if (options && options.strict === false) { + check = relaxedCheck; + } + return check(str); + }; + } +}); +var require_glob_parent = __commonJS2({ + "node_modules/glob-parent/index.js"(exports2, module2) { + "use strict"; + var isGlob = require_is_glob(); + var pathPosixDirname = require("path").posix.dirname; + var isWin32 = require("os").platform() === "win32"; + var slash = "/"; + var backslash = /\\/g; + var enclosure = /[\{\[].*[\}\]]$/; + var globby = /(^|[^\\])([\{\[]|\([^\)]+$)/; + var escaped = /\\([\!\*\?\|\[\]\(\)\{\}])/g; + module2.exports = function globParent(str, opts) { + var options = Object.assign({ + flipBackslashes: true + }, opts); + if (options.flipBackslashes && isWin32 && str.indexOf(slash) < 0) { + str = str.replace(backslash, slash); + } + if (enclosure.test(str)) { + str += slash; + } + str += "a"; + do { + str = pathPosixDirname(str); + } while (isGlob(str) || globby.test(str)); + return str.replace(escaped, "$1"); + }; + } +}); +var require_pattern = __commonJS2({ + "node_modules/fast-glob/out/utils/pattern.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.matchAny = exports2.convertPatternsToRe = exports2.makeRe = exports2.getPatternParts = exports2.expandBraceExpansion = exports2.expandPatternsWithBraceExpansion = exports2.isAffectDepthOfReadingPattern = exports2.endsWithSlashGlobStar = exports2.hasGlobStar = exports2.getBaseDirectory = exports2.isPatternRelatedToParentDirectory = exports2.getPatternsOutsideCurrentDirectory = exports2.getPatternsInsideCurrentDirectory = exports2.getPositivePatterns = exports2.getNegativePatterns = exports2.isPositivePattern = exports2.isNegativePattern = exports2.convertToNegativePattern = exports2.convertToPositivePattern = exports2.isDynamicPattern = exports2.isStaticPattern = void 0; + var path = require("path"); + var globParent = require_glob_parent(); + var micromatch = require_micromatch(); + var GLOBSTAR = "**"; + var ESCAPE_SYMBOL = "\\"; + var COMMON_GLOB_SYMBOLS_RE = /[*?]|^!/; + var REGEX_CHARACTER_CLASS_SYMBOLS_RE = /\[[^[]*]/; + var REGEX_GROUP_SYMBOLS_RE = /(?:^|[^!*+?@])\([^(]*\|[^|]*\)/; + var GLOB_EXTENSION_SYMBOLS_RE = /[!*+?@]\([^(]*\)/; + var BRACE_EXPANSION_SEPARATORS_RE = /,|\.\./; + function isStaticPattern(pattern, options = {}) { + return !isDynamicPattern(pattern, options); + } + exports2.isStaticPattern = isStaticPattern; + function isDynamicPattern(pattern, options = {}) { + if (pattern === "") { + return false; + } + if (options.caseSensitiveMatch === false || pattern.includes(ESCAPE_SYMBOL)) { + return true; + } + if (COMMON_GLOB_SYMBOLS_RE.test(pattern) || REGEX_CHARACTER_CLASS_SYMBOLS_RE.test(pattern) || REGEX_GROUP_SYMBOLS_RE.test(pattern)) { + return true; + } + if (options.extglob !== false && GLOB_EXTENSION_SYMBOLS_RE.test(pattern)) { + return true; + } + if (options.braceExpansion !== false && hasBraceExpansion(pattern)) { + return true; + } + return false; + } + exports2.isDynamicPattern = isDynamicPattern; + function hasBraceExpansion(pattern) { + const openingBraceIndex = pattern.indexOf("{"); + if (openingBraceIndex === -1) { + return false; + } + const closingBraceIndex = pattern.indexOf("}", openingBraceIndex + 1); + if (closingBraceIndex === -1) { + return false; + } + const braceContent = pattern.slice(openingBraceIndex, closingBraceIndex); + return BRACE_EXPANSION_SEPARATORS_RE.test(braceContent); + } + function convertToPositivePattern(pattern) { + return isNegativePattern(pattern) ? pattern.slice(1) : pattern; + } + exports2.convertToPositivePattern = convertToPositivePattern; + function convertToNegativePattern(pattern) { + return "!" + pattern; + } + exports2.convertToNegativePattern = convertToNegativePattern; + function isNegativePattern(pattern) { + return pattern.startsWith("!") && pattern[1] !== "("; + } + exports2.isNegativePattern = isNegativePattern; + function isPositivePattern(pattern) { + return !isNegativePattern(pattern); + } + exports2.isPositivePattern = isPositivePattern; + function getNegativePatterns(patterns) { + return patterns.filter(isNegativePattern); + } + exports2.getNegativePatterns = getNegativePatterns; + function getPositivePatterns(patterns) { + return patterns.filter(isPositivePattern); + } + exports2.getPositivePatterns = getPositivePatterns; + function getPatternsInsideCurrentDirectory(patterns) { + return patterns.filter((pattern) => !isPatternRelatedToParentDirectory(pattern)); + } + exports2.getPatternsInsideCurrentDirectory = getPatternsInsideCurrentDirectory; + function getPatternsOutsideCurrentDirectory(patterns) { + return patterns.filter(isPatternRelatedToParentDirectory); + } + exports2.getPatternsOutsideCurrentDirectory = getPatternsOutsideCurrentDirectory; + function isPatternRelatedToParentDirectory(pattern) { + return pattern.startsWith("..") || pattern.startsWith("./.."); + } + exports2.isPatternRelatedToParentDirectory = isPatternRelatedToParentDirectory; + function getBaseDirectory(pattern) { + return globParent(pattern, { + flipBackslashes: false + }); + } + exports2.getBaseDirectory = getBaseDirectory; + function hasGlobStar(pattern) { + return pattern.includes(GLOBSTAR); + } + exports2.hasGlobStar = hasGlobStar; + function endsWithSlashGlobStar(pattern) { + return pattern.endsWith("/" + GLOBSTAR); + } + exports2.endsWithSlashGlobStar = endsWithSlashGlobStar; + function isAffectDepthOfReadingPattern(pattern) { + const basename = path.basename(pattern); + return endsWithSlashGlobStar(pattern) || isStaticPattern(basename); + } + exports2.isAffectDepthOfReadingPattern = isAffectDepthOfReadingPattern; + function expandPatternsWithBraceExpansion(patterns) { + return patterns.reduce((collection, pattern) => { + return collection.concat(expandBraceExpansion(pattern)); + }, []); + } + exports2.expandPatternsWithBraceExpansion = expandPatternsWithBraceExpansion; + function expandBraceExpansion(pattern) { + return micromatch.braces(pattern, { + expand: true, + nodupes: true + }); + } + exports2.expandBraceExpansion = expandBraceExpansion; + function getPatternParts(pattern, options) { + let { + parts + } = micromatch.scan(pattern, Object.assign(Object.assign({}, options), { + parts: true + })); + if (parts.length === 0) { + parts = [pattern]; + } + if (parts[0].startsWith("/")) { + parts[0] = parts[0].slice(1); + parts.unshift(""); + } + return parts; + } + exports2.getPatternParts = getPatternParts; + function makeRe(pattern, options) { + return micromatch.makeRe(pattern, options); + } + exports2.makeRe = makeRe; + function convertPatternsToRe(patterns, options) { + return patterns.map((pattern) => makeRe(pattern, options)); + } + exports2.convertPatternsToRe = convertPatternsToRe; + function matchAny(entry, patternsRe) { + return patternsRe.some((patternRe) => patternRe.test(entry)); + } + exports2.matchAny = matchAny; + } +}); +var require_merge2 = __commonJS2({ + "node_modules/merge2/index.js"(exports2, module2) { + "use strict"; + var Stream = require("stream"); + var PassThrough = Stream.PassThrough; + var slice = Array.prototype.slice; + module2.exports = merge2; + function merge2() { + const streamsQueue = []; + const args = slice.call(arguments); + let merging = false; + let options = args[args.length - 1]; + if (options && !Array.isArray(options) && options.pipe == null) { + args.pop(); + } else { + options = {}; + } + const doEnd = options.end !== false; + const doPipeError = options.pipeError === true; + if (options.objectMode == null) { + options.objectMode = true; + } + if (options.highWaterMark == null) { + options.highWaterMark = 64 * 1024; + } + const mergedStream = PassThrough(options); + function addStream() { + for (let i = 0, len = arguments.length; i < len; i++) { + streamsQueue.push(pauseStreams(arguments[i], options)); + } + mergeStream(); + return this; + } + function mergeStream() { + if (merging) { + return; + } + merging = true; + let streams = streamsQueue.shift(); + if (!streams) { + process.nextTick(endStream); + return; + } + if (!Array.isArray(streams)) { + streams = [streams]; + } + let pipesCount = streams.length + 1; + function next() { + if (--pipesCount > 0) { + return; + } + merging = false; + mergeStream(); + } + function pipe(stream) { + function onend() { + stream.removeListener("merge2UnpipeEnd", onend); + stream.removeListener("end", onend); + if (doPipeError) { + stream.removeListener("error", onerror); + } + next(); + } + function onerror(err) { + mergedStream.emit("error", err); + } + if (stream._readableState.endEmitted) { + return next(); + } + stream.on("merge2UnpipeEnd", onend); + stream.on("end", onend); + if (doPipeError) { + stream.on("error", onerror); + } + stream.pipe(mergedStream, { + end: false + }); + stream.resume(); + } + for (let i = 0; i < streams.length; i++) { + pipe(streams[i]); + } + next(); + } + function endStream() { + merging = false; + mergedStream.emit("queueDrain"); + if (doEnd) { + mergedStream.end(); + } + } + mergedStream.setMaxListeners(0); + mergedStream.add = addStream; + mergedStream.on("unpipe", function(stream) { + stream.emit("merge2UnpipeEnd"); + }); + if (args.length) { + addStream.apply(null, args); + } + return mergedStream; + } + function pauseStreams(streams, options) { + if (!Array.isArray(streams)) { + if (!streams._readableState && streams.pipe) { + streams = streams.pipe(PassThrough(options)); + } + if (!streams._readableState || !streams.pause || !streams.pipe) { + throw new Error("Only readable stream can be merged."); + } + streams.pause(); + } else { + for (let i = 0, len = streams.length; i < len; i++) { + streams[i] = pauseStreams(streams[i], options); + } + } + return streams; + } + } +}); +var require_stream = __commonJS2({ + "node_modules/fast-glob/out/utils/stream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.merge = void 0; + var merge2 = require_merge2(); + function merge(streams) { + const mergedStream = merge2(streams); + streams.forEach((stream) => { + stream.once("error", (error) => mergedStream.emit("error", error)); + }); + mergedStream.once("close", () => propagateCloseEventToSources(streams)); + mergedStream.once("end", () => propagateCloseEventToSources(streams)); + return mergedStream; + } + exports2.merge = merge; + function propagateCloseEventToSources(streams) { + streams.forEach((stream) => stream.emit("close")); + } + } +}); +var require_string2 = __commonJS2({ + "node_modules/fast-glob/out/utils/string.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.isEmpty = exports2.isString = void 0; + function isString(input) { + return typeof input === "string"; + } + exports2.isString = isString; + function isEmpty(input) { + return input === ""; + } + exports2.isEmpty = isEmpty; + } +}); +var require_utils4 = __commonJS2({ + "node_modules/fast-glob/out/utils/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.string = exports2.stream = exports2.pattern = exports2.path = exports2.fs = exports2.errno = exports2.array = void 0; + var array = require_array3(); + exports2.array = array; + var errno = require_errno(); + exports2.errno = errno; + var fs = require_fs(); + exports2.fs = fs; + var path = require_path(); + exports2.path = path; + var pattern = require_pattern(); + exports2.pattern = pattern; + var stream = require_stream(); + exports2.stream = stream; + var string = require_string2(); + exports2.string = string; + } +}); +var require_tasks = __commonJS2({ + "node_modules/fast-glob/out/managers/tasks.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.convertPatternGroupToTask = exports2.convertPatternGroupsToTasks = exports2.groupPatternsByBaseDirectory = exports2.getNegativePatternsAsPositive = exports2.getPositivePatterns = exports2.convertPatternsToTasks = exports2.generate = void 0; + var utils = require_utils4(); + function generate(patterns, settings) { + const positivePatterns = getPositivePatterns(patterns); + const negativePatterns = getNegativePatternsAsPositive(patterns, settings.ignore); + const staticPatterns = positivePatterns.filter((pattern) => utils.pattern.isStaticPattern(pattern, settings)); + const dynamicPatterns = positivePatterns.filter((pattern) => utils.pattern.isDynamicPattern(pattern, settings)); + const staticTasks = convertPatternsToTasks(staticPatterns, negativePatterns, false); + const dynamicTasks = convertPatternsToTasks(dynamicPatterns, negativePatterns, true); + return staticTasks.concat(dynamicTasks); + } + exports2.generate = generate; + function convertPatternsToTasks(positive, negative, dynamic) { + const tasks = []; + const patternsOutsideCurrentDirectory = utils.pattern.getPatternsOutsideCurrentDirectory(positive); + const patternsInsideCurrentDirectory = utils.pattern.getPatternsInsideCurrentDirectory(positive); + const outsideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsOutsideCurrentDirectory); + const insideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsInsideCurrentDirectory); + tasks.push(...convertPatternGroupsToTasks(outsideCurrentDirectoryGroup, negative, dynamic)); + if ("." in insideCurrentDirectoryGroup) { + tasks.push(convertPatternGroupToTask(".", patternsInsideCurrentDirectory, negative, dynamic)); + } else { + tasks.push(...convertPatternGroupsToTasks(insideCurrentDirectoryGroup, negative, dynamic)); + } + return tasks; + } + exports2.convertPatternsToTasks = convertPatternsToTasks; + function getPositivePatterns(patterns) { + return utils.pattern.getPositivePatterns(patterns); + } + exports2.getPositivePatterns = getPositivePatterns; + function getNegativePatternsAsPositive(patterns, ignore) { + const negative = utils.pattern.getNegativePatterns(patterns).concat(ignore); + const positive = negative.map(utils.pattern.convertToPositivePattern); + return positive; + } + exports2.getNegativePatternsAsPositive = getNegativePatternsAsPositive; + function groupPatternsByBaseDirectory(patterns) { + const group = {}; + return patterns.reduce((collection, pattern) => { + const base = utils.pattern.getBaseDirectory(pattern); + if (base in collection) { + collection[base].push(pattern); + } else { + collection[base] = [pattern]; + } + return collection; + }, group); + } + exports2.groupPatternsByBaseDirectory = groupPatternsByBaseDirectory; + function convertPatternGroupsToTasks(positive, negative, dynamic) { + return Object.keys(positive).map((base) => { + return convertPatternGroupToTask(base, positive[base], negative, dynamic); + }); + } + exports2.convertPatternGroupsToTasks = convertPatternGroupsToTasks; + function convertPatternGroupToTask(base, positive, negative, dynamic) { + return { + dynamic, + positive, + negative, + base, + patterns: [].concat(positive, negative.map(utils.pattern.convertToNegativePattern)) + }; + } + exports2.convertPatternGroupToTask = convertPatternGroupToTask; + } +}); +var require_patterns = __commonJS2({ + "node_modules/fast-glob/out/managers/patterns.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.removeDuplicateSlashes = exports2.transform = void 0; + var DOUBLE_SLASH_RE = /(?!^)\/{2,}/g; + function transform(patterns) { + return patterns.map((pattern) => removeDuplicateSlashes(pattern)); + } + exports2.transform = transform; + function removeDuplicateSlashes(pattern) { + return pattern.replace(DOUBLE_SLASH_RE, "/"); + } + exports2.removeDuplicateSlashes = removeDuplicateSlashes; + } +}); +var require_async2 = __commonJS2({ + "node_modules/@nodelib/fs.stat/out/providers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.read = void 0; + function read(path, settings, callback) { + settings.fs.lstat(path, (lstatError, lstat) => { + if (lstatError !== null) { + callFailureCallback(callback, lstatError); + return; + } + if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { + callSuccessCallback(callback, lstat); + return; + } + settings.fs.stat(path, (statError, stat) => { + if (statError !== null) { + if (settings.throwErrorOnBrokenSymbolicLink) { + callFailureCallback(callback, statError); + return; + } + callSuccessCallback(callback, lstat); + return; + } + if (settings.markSymbolicLink) { + stat.isSymbolicLink = () => true; + } + callSuccessCallback(callback, stat); + }); + }); + } + exports2.read = read; + function callFailureCallback(callback, error) { + callback(error); + } + function callSuccessCallback(callback, result) { + callback(null, result); + } + } +}); +var require_sync2 = __commonJS2({ + "node_modules/@nodelib/fs.stat/out/providers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.read = void 0; + function read(path, settings) { + const lstat = settings.fs.lstatSync(path); + if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) { + return lstat; + } + try { + const stat = settings.fs.statSync(path); + if (settings.markSymbolicLink) { + stat.isSymbolicLink = () => true; + } + return stat; + } catch (error) { + if (!settings.throwErrorOnBrokenSymbolicLink) { + return lstat; + } + throw error; + } + } + exports2.read = read; + } +}); +var require_fs2 = __commonJS2({ + "node_modules/@nodelib/fs.stat/out/adapters/fs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.createFileSystemAdapter = exports2.FILE_SYSTEM_ADAPTER = void 0; + var fs = require("fs"); + exports2.FILE_SYSTEM_ADAPTER = { + lstat: fs.lstat, + stat: fs.stat, + lstatSync: fs.lstatSync, + statSync: fs.statSync + }; + function createFileSystemAdapter(fsMethods) { + if (fsMethods === void 0) { + return exports2.FILE_SYSTEM_ADAPTER; + } + return Object.assign(Object.assign({}, exports2.FILE_SYSTEM_ADAPTER), fsMethods); + } + exports2.createFileSystemAdapter = createFileSystemAdapter; + } +}); +var require_settings = __commonJS2({ + "node_modules/@nodelib/fs.stat/out/settings.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var fs = require_fs2(); + var Settings = class { + constructor(_options = {}) { + this._options = _options; + this.followSymbolicLink = this._getValue(this._options.followSymbolicLink, true); + this.fs = fs.createFileSystemAdapter(this._options.fs); + this.markSymbolicLink = this._getValue(this._options.markSymbolicLink, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } + }; + exports2.default = Settings; + } +}); +var require_out = __commonJS2({ + "node_modules/@nodelib/fs.stat/out/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.statSync = exports2.stat = exports2.Settings = void 0; + var async = require_async2(); + var sync = require_sync2(); + var settings_1 = require_settings(); + exports2.Settings = settings_1.default; + function stat(path, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === "function") { + async.read(path, getSettings(), optionsOrSettingsOrCallback); + return; + } + async.read(path, getSettings(optionsOrSettingsOrCallback), callback); + } + exports2.stat = stat; + function statSync(path, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + return sync.read(path, settings); + } + exports2.statSync = statSync; + function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); + } + } +}); +var require_queue_microtask = __commonJS2({ + "node_modules/queue-microtask/index.js"(exports2, module2) { + var promise; + module2.exports = typeof queueMicrotask === "function" ? queueMicrotask.bind(typeof window !== "undefined" ? window : global) : (cb) => (promise || (promise = Promise.resolve())).then(cb).catch((err) => setTimeout(() => { + throw err; + }, 0)); + } +}); +var require_run_parallel = __commonJS2({ + "node_modules/run-parallel/index.js"(exports2, module2) { + module2.exports = runParallel; + var queueMicrotask2 = require_queue_microtask(); + function runParallel(tasks, cb) { + let results, pending, keys; + let isSync = true; + if (Array.isArray(tasks)) { + results = []; + pending = tasks.length; + } else { + keys = Object.keys(tasks); + results = {}; + pending = keys.length; + } + function done(err) { + function end() { + if (cb) + cb(err, results); + cb = null; + } + if (isSync) + queueMicrotask2(end); + else + end(); + } + function each(i, err, result) { + results[i] = result; + if (--pending === 0 || err) { + done(err); + } + } + if (!pending) { + done(null); + } else if (keys) { + keys.forEach(function(key) { + tasks[key](function(err, result) { + each(key, err, result); + }); + }); + } else { + tasks.forEach(function(task, i) { + task(function(err, result) { + each(i, err, result); + }); + }); + } + isSync = false; + } + } +}); +var require_constants4 = __commonJS2({ + "node_modules/@nodelib/fs.scandir/out/constants.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.IS_SUPPORT_READDIR_WITH_FILE_TYPES = void 0; + var NODE_PROCESS_VERSION_PARTS = process.versions.node.split("."); + if (NODE_PROCESS_VERSION_PARTS[0] === void 0 || NODE_PROCESS_VERSION_PARTS[1] === void 0) { + throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`); + } + var MAJOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[0], 10); + var MINOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[1], 10); + var SUPPORTED_MAJOR_VERSION = 10; + var SUPPORTED_MINOR_VERSION = 10; + var IS_MATCHED_BY_MAJOR = MAJOR_VERSION > SUPPORTED_MAJOR_VERSION; + var IS_MATCHED_BY_MAJOR_AND_MINOR = MAJOR_VERSION === SUPPORTED_MAJOR_VERSION && MINOR_VERSION >= SUPPORTED_MINOR_VERSION; + exports2.IS_SUPPORT_READDIR_WITH_FILE_TYPES = IS_MATCHED_BY_MAJOR || IS_MATCHED_BY_MAJOR_AND_MINOR; + } +}); +var require_fs3 = __commonJS2({ + "node_modules/@nodelib/fs.scandir/out/utils/fs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.createDirentFromStats = void 0; + var DirentFromStats = class { + constructor(name, stats) { + this.name = name; + this.isBlockDevice = stats.isBlockDevice.bind(stats); + this.isCharacterDevice = stats.isCharacterDevice.bind(stats); + this.isDirectory = stats.isDirectory.bind(stats); + this.isFIFO = stats.isFIFO.bind(stats); + this.isFile = stats.isFile.bind(stats); + this.isSocket = stats.isSocket.bind(stats); + this.isSymbolicLink = stats.isSymbolicLink.bind(stats); + } + }; + function createDirentFromStats(name, stats) { + return new DirentFromStats(name, stats); + } + exports2.createDirentFromStats = createDirentFromStats; + } +}); +var require_utils5 = __commonJS2({ + "node_modules/@nodelib/fs.scandir/out/utils/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.fs = void 0; + var fs = require_fs3(); + exports2.fs = fs; + } +}); +var require_common3 = __commonJS2({ + "node_modules/@nodelib/fs.scandir/out/providers/common.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.joinPathSegments = void 0; + function joinPathSegments(a, b, separator) { + if (a.endsWith(separator)) { + return a + b; + } + return a + separator + b; + } + exports2.joinPathSegments = joinPathSegments; + } +}); +var require_async3 = __commonJS2({ + "node_modules/@nodelib/fs.scandir/out/providers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.readdir = exports2.readdirWithFileTypes = exports2.read = void 0; + var fsStat = require_out(); + var rpl = require_run_parallel(); + var constants_1 = require_constants4(); + var utils = require_utils5(); + var common = require_common3(); + function read(directory, settings, callback) { + if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { + readdirWithFileTypes(directory, settings, callback); + return; + } + readdir(directory, settings, callback); + } + exports2.read = read; + function readdirWithFileTypes(directory, settings, callback) { + settings.fs.readdir(directory, { + withFileTypes: true + }, (readdirError, dirents) => { + if (readdirError !== null) { + callFailureCallback(callback, readdirError); + return; + } + const entries = dirents.map((dirent) => ({ + dirent, + name: dirent.name, + path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) + })); + if (!settings.followSymbolicLinks) { + callSuccessCallback(callback, entries); + return; + } + const tasks = entries.map((entry) => makeRplTaskEntry(entry, settings)); + rpl(tasks, (rplError, rplEntries) => { + if (rplError !== null) { + callFailureCallback(callback, rplError); + return; + } + callSuccessCallback(callback, rplEntries); + }); + }); + } + exports2.readdirWithFileTypes = readdirWithFileTypes; + function makeRplTaskEntry(entry, settings) { + return (done) => { + if (!entry.dirent.isSymbolicLink()) { + done(null, entry); + return; + } + settings.fs.stat(entry.path, (statError, stats) => { + if (statError !== null) { + if (settings.throwErrorOnBrokenSymbolicLink) { + done(statError); + return; + } + done(null, entry); + return; + } + entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); + done(null, entry); + }); + }; + } + function readdir(directory, settings, callback) { + settings.fs.readdir(directory, (readdirError, names) => { + if (readdirError !== null) { + callFailureCallback(callback, readdirError); + return; + } + const tasks = names.map((name) => { + const path = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); + return (done) => { + fsStat.stat(path, settings.fsStatSettings, (error, stats) => { + if (error !== null) { + done(error); + return; + } + const entry = { + name, + path, + dirent: utils.fs.createDirentFromStats(name, stats) + }; + if (settings.stats) { + entry.stats = stats; + } + done(null, entry); + }); + }; + }); + rpl(tasks, (rplError, entries) => { + if (rplError !== null) { + callFailureCallback(callback, rplError); + return; + } + callSuccessCallback(callback, entries); + }); + }); + } + exports2.readdir = readdir; + function callFailureCallback(callback, error) { + callback(error); + } + function callSuccessCallback(callback, result) { + callback(null, result); + } + } +}); +var require_sync3 = __commonJS2({ + "node_modules/@nodelib/fs.scandir/out/providers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.readdir = exports2.readdirWithFileTypes = exports2.read = void 0; + var fsStat = require_out(); + var constants_1 = require_constants4(); + var utils = require_utils5(); + var common = require_common3(); + function read(directory, settings) { + if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) { + return readdirWithFileTypes(directory, settings); + } + return readdir(directory, settings); + } + exports2.read = read; + function readdirWithFileTypes(directory, settings) { + const dirents = settings.fs.readdirSync(directory, { + withFileTypes: true + }); + return dirents.map((dirent) => { + const entry = { + dirent, + name: dirent.name, + path: common.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator) + }; + if (entry.dirent.isSymbolicLink() && settings.followSymbolicLinks) { + try { + const stats = settings.fs.statSync(entry.path); + entry.dirent = utils.fs.createDirentFromStats(entry.name, stats); + } catch (error) { + if (settings.throwErrorOnBrokenSymbolicLink) { + throw error; + } + } + } + return entry; + }); + } + exports2.readdirWithFileTypes = readdirWithFileTypes; + function readdir(directory, settings) { + const names = settings.fs.readdirSync(directory); + return names.map((name) => { + const entryPath = common.joinPathSegments(directory, name, settings.pathSegmentSeparator); + const stats = fsStat.statSync(entryPath, settings.fsStatSettings); + const entry = { + name, + path: entryPath, + dirent: utils.fs.createDirentFromStats(name, stats) + }; + if (settings.stats) { + entry.stats = stats; + } + return entry; + }); + } + exports2.readdir = readdir; + } +}); +var require_fs4 = __commonJS2({ + "node_modules/@nodelib/fs.scandir/out/adapters/fs.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.createFileSystemAdapter = exports2.FILE_SYSTEM_ADAPTER = void 0; + var fs = require("fs"); + exports2.FILE_SYSTEM_ADAPTER = { + lstat: fs.lstat, + stat: fs.stat, + lstatSync: fs.lstatSync, + statSync: fs.statSync, + readdir: fs.readdir, + readdirSync: fs.readdirSync + }; + function createFileSystemAdapter(fsMethods) { + if (fsMethods === void 0) { + return exports2.FILE_SYSTEM_ADAPTER; + } + return Object.assign(Object.assign({}, exports2.FILE_SYSTEM_ADAPTER), fsMethods); + } + exports2.createFileSystemAdapter = createFileSystemAdapter; + } +}); +var require_settings2 = __commonJS2({ + "node_modules/@nodelib/fs.scandir/out/settings.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var path = require("path"); + var fsStat = require_out(); + var fs = require_fs4(); + var Settings = class { + constructor(_options = {}) { + this._options = _options; + this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, false); + this.fs = fs.createFileSystemAdapter(this._options.fs); + this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path.sep); + this.stats = this._getValue(this._options.stats, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); + this.fsStatSettings = new fsStat.Settings({ + followSymbolicLink: this.followSymbolicLinks, + fs: this.fs, + throwErrorOnBrokenSymbolicLink: this.throwErrorOnBrokenSymbolicLink + }); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } + }; + exports2.default = Settings; + } +}); +var require_out2 = __commonJS2({ + "node_modules/@nodelib/fs.scandir/out/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.Settings = exports2.scandirSync = exports2.scandir = void 0; + var async = require_async3(); + var sync = require_sync3(); + var settings_1 = require_settings2(); + exports2.Settings = settings_1.default; + function scandir(path, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === "function") { + async.read(path, getSettings(), optionsOrSettingsOrCallback); + return; + } + async.read(path, getSettings(optionsOrSettingsOrCallback), callback); + } + exports2.scandir = scandir; + function scandirSync(path, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + return sync.read(path, settings); + } + exports2.scandirSync = scandirSync; + function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); + } + } +}); +var require_reusify = __commonJS2({ + "node_modules/reusify/reusify.js"(exports2, module2) { + "use strict"; + function reusify(Constructor) { + var head = new Constructor(); + var tail = head; + function get() { + var current = head; + if (current.next) { + head = current.next; + } else { + head = new Constructor(); + tail = head; + } + current.next = null; + return current; + } + function release(obj) { + tail.next = obj; + tail = obj; + } + return { + get, + release + }; + } + module2.exports = reusify; + } +}); +var require_queue = __commonJS2({ + "node_modules/fastq/queue.js"(exports2, module2) { + "use strict"; + var reusify = require_reusify(); + function fastqueue(context, worker, concurrency) { + if (typeof context === "function") { + concurrency = worker; + worker = context; + context = null; + } + if (concurrency < 1) { + throw new Error("fastqueue concurrency must be greater than 1"); + } + var cache = reusify(Task); + var queueHead = null; + var queueTail = null; + var _running = 0; + var errorHandler = null; + var self2 = { + push, + drain: noop, + saturated: noop, + pause, + paused: false, + concurrency, + running, + resume, + idle, + length, + getQueue, + unshift, + empty: noop, + kill, + killAndDrain, + error + }; + return self2; + function running() { + return _running; + } + function pause() { + self2.paused = true; + } + function length() { + var current = queueHead; + var counter = 0; + while (current) { + current = current.next; + counter++; + } + return counter; + } + function getQueue() { + var current = queueHead; + var tasks = []; + while (current) { + tasks.push(current.value); + current = current.next; + } + return tasks; + } + function resume() { + if (!self2.paused) + return; + self2.paused = false; + for (var i = 0; i < self2.concurrency; i++) { + _running++; + release(); + } + } + function idle() { + return _running === 0 && self2.length() === 0; + } + function push(value, done) { + var current = cache.get(); + current.context = context; + current.release = release; + current.value = value; + current.callback = done || noop; + current.errorHandler = errorHandler; + if (_running === self2.concurrency || self2.paused) { + if (queueTail) { + queueTail.next = current; + queueTail = current; + } else { + queueHead = current; + queueTail = current; + self2.saturated(); + } + } else { + _running++; + worker.call(context, current.value, current.worked); + } + } + function unshift(value, done) { + var current = cache.get(); + current.context = context; + current.release = release; + current.value = value; + current.callback = done || noop; + if (_running === self2.concurrency || self2.paused) { + if (queueHead) { + current.next = queueHead; + queueHead = current; + } else { + queueHead = current; + queueTail = current; + self2.saturated(); + } + } else { + _running++; + worker.call(context, current.value, current.worked); + } + } + function release(holder) { + if (holder) { + cache.release(holder); + } + var next = queueHead; + if (next) { + if (!self2.paused) { + if (queueTail === queueHead) { + queueTail = null; + } + queueHead = next.next; + next.next = null; + worker.call(context, next.value, next.worked); + if (queueTail === null) { + self2.empty(); + } + } else { + _running--; + } + } else if (--_running === 0) { + self2.drain(); + } + } + function kill() { + queueHead = null; + queueTail = null; + self2.drain = noop; + } + function killAndDrain() { + queueHead = null; + queueTail = null; + self2.drain(); + self2.drain = noop; + } + function error(handler) { + errorHandler = handler; + } + } + function noop() { + } + function Task() { + this.value = null; + this.callback = noop; + this.next = null; + this.release = noop; + this.context = null; + this.errorHandler = null; + var self2 = this; + this.worked = function worked(err, result) { + var callback = self2.callback; + var errorHandler = self2.errorHandler; + var val = self2.value; + self2.value = null; + self2.callback = noop; + if (self2.errorHandler) { + errorHandler(err, val); + } + callback.call(self2.context, err, result); + self2.release(self2); + }; + } + function queueAsPromised(context, worker, concurrency) { + if (typeof context === "function") { + concurrency = worker; + worker = context; + context = null; + } + function asyncWrapper(arg, cb) { + worker.call(this, arg).then(function(res) { + cb(null, res); + }, cb); + } + var queue = fastqueue(context, asyncWrapper, concurrency); + var pushCb = queue.push; + var unshiftCb = queue.unshift; + queue.push = push; + queue.unshift = unshift; + queue.drained = drained; + return queue; + function push(value) { + var p = new Promise(function(resolve, reject) { + pushCb(value, function(err, result) { + if (err) { + reject(err); + return; + } + resolve(result); + }); + }); + p.catch(noop); + return p; + } + function unshift(value) { + var p = new Promise(function(resolve, reject) { + unshiftCb(value, function(err, result) { + if (err) { + reject(err); + return; + } + resolve(result); + }); + }); + p.catch(noop); + return p; + } + function drained() { + var previousDrain = queue.drain; + var p = new Promise(function(resolve) { + queue.drain = function() { + previousDrain(); + resolve(); + }; + }); + return p; + } + } + module2.exports = fastqueue; + module2.exports.promise = queueAsPromised; + } +}); +var require_common4 = __commonJS2({ + "node_modules/@nodelib/fs.walk/out/readers/common.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.joinPathSegments = exports2.replacePathSegmentSeparator = exports2.isAppliedFilter = exports2.isFatalError = void 0; + function isFatalError(settings, error) { + if (settings.errorFilter === null) { + return true; + } + return !settings.errorFilter(error); + } + exports2.isFatalError = isFatalError; + function isAppliedFilter(filter, value) { + return filter === null || filter(value); + } + exports2.isAppliedFilter = isAppliedFilter; + function replacePathSegmentSeparator(filepath, separator) { + return filepath.split(/[/\\]/).join(separator); + } + exports2.replacePathSegmentSeparator = replacePathSegmentSeparator; + function joinPathSegments(a, b, separator) { + if (a === "") { + return b; + } + if (a.endsWith(separator)) { + return a + b; + } + return a + separator + b; + } + exports2.joinPathSegments = joinPathSegments; + } +}); +var require_reader = __commonJS2({ + "node_modules/@nodelib/fs.walk/out/readers/reader.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var common = require_common4(); + var Reader = class { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._root = common.replacePathSegmentSeparator(_root, _settings.pathSegmentSeparator); + } + }; + exports2.default = Reader; + } +}); +var require_async4 = __commonJS2({ + "node_modules/@nodelib/fs.walk/out/readers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var events_1 = require("events"); + var fsScandir = require_out2(); + var fastq = require_queue(); + var common = require_common4(); + var reader_1 = require_reader(); + var AsyncReader = class extends reader_1.default { + constructor(_root, _settings) { + super(_root, _settings); + this._settings = _settings; + this._scandir = fsScandir.scandir; + this._emitter = new events_1.EventEmitter(); + this._queue = fastq(this._worker.bind(this), this._settings.concurrency); + this._isFatalError = false; + this._isDestroyed = false; + this._queue.drain = () => { + if (!this._isFatalError) { + this._emitter.emit("end"); + } + }; + } + read() { + this._isFatalError = false; + this._isDestroyed = false; + setImmediate(() => { + this._pushToQueue(this._root, this._settings.basePath); + }); + return this._emitter; + } + get isDestroyed() { + return this._isDestroyed; + } + destroy() { + if (this._isDestroyed) { + throw new Error("The reader is already destroyed"); + } + this._isDestroyed = true; + this._queue.killAndDrain(); + } + onEntry(callback) { + this._emitter.on("entry", callback); + } + onError(callback) { + this._emitter.once("error", callback); + } + onEnd(callback) { + this._emitter.once("end", callback); + } + _pushToQueue(directory, base) { + const queueItem = { + directory, + base + }; + this._queue.push(queueItem, (error) => { + if (error !== null) { + this._handleError(error); + } + }); + } + _worker(item, done) { + this._scandir(item.directory, this._settings.fsScandirSettings, (error, entries) => { + if (error !== null) { + done(error, void 0); + return; + } + for (const entry of entries) { + this._handleEntry(entry, item.base); + } + done(null, void 0); + }); + } + _handleError(error) { + if (this._isDestroyed || !common.isFatalError(this._settings, error)) { + return; + } + this._isFatalError = true; + this._isDestroyed = true; + this._emitter.emit("error", error); + } + _handleEntry(entry, base) { + if (this._isDestroyed || this._isFatalError) { + return; + } + const fullpath = entry.path; + if (base !== void 0) { + entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); + } + if (common.isAppliedFilter(this._settings.entryFilter, entry)) { + this._emitEntry(entry); + } + if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { + this._pushToQueue(fullpath, base === void 0 ? void 0 : entry.path); + } + } + _emitEntry(entry) { + this._emitter.emit("entry", entry); + } + }; + exports2.default = AsyncReader; + } +}); +var require_async5 = __commonJS2({ + "node_modules/@nodelib/fs.walk/out/providers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var async_1 = require_async4(); + var AsyncProvider = class { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new async_1.default(this._root, this._settings); + this._storage = []; + } + read(callback) { + this._reader.onError((error) => { + callFailureCallback(callback, error); + }); + this._reader.onEntry((entry) => { + this._storage.push(entry); + }); + this._reader.onEnd(() => { + callSuccessCallback(callback, this._storage); + }); + this._reader.read(); + } + }; + exports2.default = AsyncProvider; + function callFailureCallback(callback, error) { + callback(error); + } + function callSuccessCallback(callback, entries) { + callback(null, entries); + } + } +}); +var require_stream2 = __commonJS2({ + "node_modules/@nodelib/fs.walk/out/providers/stream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var stream_1 = require("stream"); + var async_1 = require_async4(); + var StreamProvider = class { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new async_1.default(this._root, this._settings); + this._stream = new stream_1.Readable({ + objectMode: true, + read: () => { + }, + destroy: () => { + if (!this._reader.isDestroyed) { + this._reader.destroy(); + } + } + }); + } + read() { + this._reader.onError((error) => { + this._stream.emit("error", error); + }); + this._reader.onEntry((entry) => { + this._stream.push(entry); + }); + this._reader.onEnd(() => { + this._stream.push(null); + }); + this._reader.read(); + return this._stream; + } + }; + exports2.default = StreamProvider; + } +}); +var require_sync4 = __commonJS2({ + "node_modules/@nodelib/fs.walk/out/readers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var fsScandir = require_out2(); + var common = require_common4(); + var reader_1 = require_reader(); + var SyncReader = class extends reader_1.default { + constructor() { + super(...arguments); + this._scandir = fsScandir.scandirSync; + this._storage = []; + this._queue = /* @__PURE__ */ new Set(); + } + read() { + this._pushToQueue(this._root, this._settings.basePath); + this._handleQueue(); + return this._storage; + } + _pushToQueue(directory, base) { + this._queue.add({ + directory, + base + }); + } + _handleQueue() { + for (const item of this._queue.values()) { + this._handleDirectory(item.directory, item.base); + } + } + _handleDirectory(directory, base) { + try { + const entries = this._scandir(directory, this._settings.fsScandirSettings); + for (const entry of entries) { + this._handleEntry(entry, base); + } + } catch (error) { + this._handleError(error); + } + } + _handleError(error) { + if (!common.isFatalError(this._settings, error)) { + return; + } + throw error; + } + _handleEntry(entry, base) { + const fullpath = entry.path; + if (base !== void 0) { + entry.path = common.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator); + } + if (common.isAppliedFilter(this._settings.entryFilter, entry)) { + this._pushToStorage(entry); + } + if (entry.dirent.isDirectory() && common.isAppliedFilter(this._settings.deepFilter, entry)) { + this._pushToQueue(fullpath, base === void 0 ? void 0 : entry.path); + } + } + _pushToStorage(entry) { + this._storage.push(entry); + } + }; + exports2.default = SyncReader; + } +}); +var require_sync5 = __commonJS2({ + "node_modules/@nodelib/fs.walk/out/providers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var sync_1 = require_sync4(); + var SyncProvider = class { + constructor(_root, _settings) { + this._root = _root; + this._settings = _settings; + this._reader = new sync_1.default(this._root, this._settings); + } + read() { + return this._reader.read(); + } + }; + exports2.default = SyncProvider; + } +}); +var require_settings3 = __commonJS2({ + "node_modules/@nodelib/fs.walk/out/settings.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var path = require("path"); + var fsScandir = require_out2(); + var Settings = class { + constructor(_options = {}) { + this._options = _options; + 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, path.sep); + this.fsScandirSettings = new fsScandir.Settings({ + followSymbolicLinks: this._options.followSymbolicLinks, + fs: this._options.fs, + pathSegmentSeparator: this._options.pathSegmentSeparator, + stats: this._options.stats, + throwErrorOnBrokenSymbolicLink: this._options.throwErrorOnBrokenSymbolicLink + }); + } + _getValue(option, value) { + return option !== null && option !== void 0 ? option : value; + } + }; + exports2.default = Settings; + } +}); +var require_out3 = __commonJS2({ + "node_modules/@nodelib/fs.walk/out/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.Settings = exports2.walkStream = exports2.walkSync = exports2.walk = void 0; + var async_1 = require_async5(); + var stream_1 = require_stream2(); + var sync_1 = require_sync5(); + var settings_1 = require_settings3(); + exports2.Settings = settings_1.default; + function walk(directory, optionsOrSettingsOrCallback, callback) { + if (typeof optionsOrSettingsOrCallback === "function") { + new async_1.default(directory, getSettings()).read(optionsOrSettingsOrCallback); + return; + } + new async_1.default(directory, getSettings(optionsOrSettingsOrCallback)).read(callback); + } + exports2.walk = walk; + function walkSync(directory, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + const provider = new sync_1.default(directory, settings); + return provider.read(); + } + exports2.walkSync = walkSync; + function walkStream(directory, optionsOrSettings) { + const settings = getSettings(optionsOrSettings); + const provider = new stream_1.default(directory, settings); + return provider.read(); + } + exports2.walkStream = walkStream; + function getSettings(settingsOrOptions = {}) { + if (settingsOrOptions instanceof settings_1.default) { + return settingsOrOptions; + } + return new settings_1.default(settingsOrOptions); + } + } +}); +var require_reader2 = __commonJS2({ + "node_modules/fast-glob/out/readers/reader.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var path = require("path"); + var fsStat = require_out(); + var utils = require_utils4(); + var Reader = class { + constructor(_settings) { + this._settings = _settings; + this._fsStatSettings = new fsStat.Settings({ + followSymbolicLink: this._settings.followSymbolicLinks, + fs: this._settings.fs, + throwErrorOnBrokenSymbolicLink: this._settings.followSymbolicLinks + }); + } + _getFullEntryPath(filepath) { + return path.resolve(this._settings.cwd, filepath); + } + _makeEntry(stats, pattern) { + const entry = { + name: pattern, + path: pattern, + dirent: utils.fs.createDirentFromStats(pattern, stats) + }; + if (this._settings.stats) { + entry.stats = stats; + } + return entry; + } + _isFatalError(error) { + return !utils.errno.isEnoentCodeError(error) && !this._settings.suppressErrors; + } + }; + exports2.default = Reader; + } +}); +var require_stream3 = __commonJS2({ + "node_modules/fast-glob/out/readers/stream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var stream_1 = require("stream"); + var fsStat = require_out(); + var fsWalk = require_out3(); + var reader_1 = require_reader2(); + var ReaderStream = class extends reader_1.default { + constructor() { + super(...arguments); + this._walkStream = fsWalk.walkStream; + this._stat = fsStat.stat; + } + dynamic(root, options) { + return this._walkStream(root, options); + } + static(patterns, options) { + const filepaths = patterns.map(this._getFullEntryPath, this); + const stream = new stream_1.PassThrough({ + objectMode: true + }); + stream._write = (index, _enc, done) => { + return this._getEntry(filepaths[index], patterns[index], options).then((entry) => { + if (entry !== null && options.entryFilter(entry)) { + stream.push(entry); + } + if (index === filepaths.length - 1) { + stream.end(); + } + done(); + }).catch(done); + }; + for (let i = 0; i < filepaths.length; i++) { + stream.write(i); + } + return stream; + } + _getEntry(filepath, pattern, options) { + return this._getStat(filepath).then((stats) => this._makeEntry(stats, pattern)).catch((error) => { + if (options.errorFilter(error)) { + return null; + } + throw error; + }); + } + _getStat(filepath) { + return new Promise((resolve, reject) => { + this._stat(filepath, this._fsStatSettings, (error, stats) => { + return error === null ? resolve(stats) : reject(error); + }); + }); + } + }; + exports2.default = ReaderStream; + } +}); +var require_async6 = __commonJS2({ + "node_modules/fast-glob/out/readers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var fsWalk = require_out3(); + var reader_1 = require_reader2(); + var stream_1 = require_stream3(); + var ReaderAsync = class extends reader_1.default { + constructor() { + super(...arguments); + this._walkAsync = fsWalk.walk; + this._readerStream = new stream_1.default(this._settings); + } + dynamic(root, options) { + return new Promise((resolve, reject) => { + this._walkAsync(root, options, (error, entries) => { + if (error === null) { + resolve(entries); + } else { + reject(error); + } + }); + }); + } + async static(patterns, options) { + const entries = []; + const stream = this._readerStream.static(patterns, options); + return new Promise((resolve, reject) => { + stream.once("error", reject); + stream.on("data", (entry) => entries.push(entry)); + stream.once("end", () => resolve(entries)); + }); + } + }; + exports2.default = ReaderAsync; + } +}); +var require_matcher = __commonJS2({ + "node_modules/fast-glob/out/providers/matchers/matcher.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var utils = require_utils4(); + var Matcher = class { + constructor(_patterns, _settings, _micromatchOptions) { + this._patterns = _patterns; + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + this._storage = []; + this._fillStorage(); + } + _fillStorage() { + const patterns = utils.pattern.expandPatternsWithBraceExpansion(this._patterns); + for (const pattern of patterns) { + const segments = this._getPatternSegments(pattern); + const sections = this._splitSegmentsIntoSections(segments); + this._storage.push({ + complete: sections.length <= 1, + pattern, + segments, + sections + }); + } + } + _getPatternSegments(pattern) { + const parts = utils.pattern.getPatternParts(pattern, this._micromatchOptions); + return parts.map((part) => { + const dynamic = utils.pattern.isDynamicPattern(part, this._settings); + if (!dynamic) { + return { + dynamic: false, + pattern: part + }; + } + return { + dynamic: true, + pattern: part, + patternRe: utils.pattern.makeRe(part, this._micromatchOptions) + }; + }); + } + _splitSegmentsIntoSections(segments) { + return utils.array.splitWhen(segments, (segment) => segment.dynamic && utils.pattern.hasGlobStar(segment.pattern)); + } + }; + exports2.default = Matcher; + } +}); +var require_partial = __commonJS2({ + "node_modules/fast-glob/out/providers/matchers/partial.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var matcher_1 = require_matcher(); + var PartialMatcher = class extends matcher_1.default { + match(filepath) { + const parts = filepath.split("/"); + const levels = parts.length; + const patterns = this._storage.filter((info) => !info.complete || info.segments.length > levels); + for (const pattern of patterns) { + const section = pattern.sections[0]; + if (!pattern.complete && levels > section.length) { + return true; + } + const match = parts.every((part, index) => { + const segment = pattern.segments[index]; + if (segment.dynamic && segment.patternRe.test(part)) { + return true; + } + if (!segment.dynamic && segment.pattern === part) { + return true; + } + return false; + }); + if (match) { + return true; + } + } + return false; + } + }; + exports2.default = PartialMatcher; + } +}); +var require_deep = __commonJS2({ + "node_modules/fast-glob/out/providers/filters/deep.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var utils = require_utils4(); + var partial_1 = require_partial(); + var DeepFilter = class { + constructor(_settings, _micromatchOptions) { + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + } + getFilter(basePath, positive, negative) { + const matcher = this._getMatcher(positive); + const negativeRe = this._getNegativePatternsRe(negative); + return (entry) => this._filter(basePath, entry, matcher, negativeRe); + } + _getMatcher(patterns) { + return new partial_1.default(patterns, this._settings, this._micromatchOptions); + } + _getNegativePatternsRe(patterns) { + const affectDepthOfReadingPatterns = patterns.filter(utils.pattern.isAffectDepthOfReadingPattern); + return utils.pattern.convertPatternsToRe(affectDepthOfReadingPatterns, this._micromatchOptions); + } + _filter(basePath, entry, matcher, negativeRe) { + if (this._isSkippedByDeep(basePath, entry.path)) { + return false; + } + if (this._isSkippedSymbolicLink(entry)) { + return false; + } + const filepath = utils.path.removeLeadingDotSegment(entry.path); + if (this._isSkippedByPositivePatterns(filepath, matcher)) { + return false; + } + return this._isSkippedByNegativePatterns(filepath, negativeRe); + } + _isSkippedByDeep(basePath, entryPath) { + if (this._settings.deep === Infinity) { + return false; + } + return this._getEntryLevel(basePath, entryPath) >= this._settings.deep; + } + _getEntryLevel(basePath, entryPath) { + const entryPathDepth = entryPath.split("/").length; + if (basePath === "") { + return entryPathDepth; + } + const basePathDepth = basePath.split("/").length; + return entryPathDepth - basePathDepth; + } + _isSkippedSymbolicLink(entry) { + return !this._settings.followSymbolicLinks && entry.dirent.isSymbolicLink(); + } + _isSkippedByPositivePatterns(entryPath, matcher) { + return !this._settings.baseNameMatch && !matcher.match(entryPath); + } + _isSkippedByNegativePatterns(entryPath, patternsRe) { + return !utils.pattern.matchAny(entryPath, patternsRe); + } + }; + exports2.default = DeepFilter; + } +}); +var require_entry = __commonJS2({ + "node_modules/fast-glob/out/providers/filters/entry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var utils = require_utils4(); + var EntryFilter = class { + constructor(_settings, _micromatchOptions) { + this._settings = _settings; + this._micromatchOptions = _micromatchOptions; + this.index = /* @__PURE__ */ new Map(); + } + getFilter(positive, negative) { + const positiveRe = utils.pattern.convertPatternsToRe(positive, this._micromatchOptions); + const negativeRe = utils.pattern.convertPatternsToRe(negative, this._micromatchOptions); + return (entry) => this._filter(entry, positiveRe, negativeRe); + } + _filter(entry, positiveRe, negativeRe) { + if (this._settings.unique && this._isDuplicateEntry(entry)) { + return false; + } + if (this._onlyFileFilter(entry) || this._onlyDirectoryFilter(entry)) { + return false; + } + if (this._isSkippedByAbsoluteNegativePatterns(entry.path, negativeRe)) { + return false; + } + const filepath = this._settings.baseNameMatch ? entry.name : entry.path; + const isDirectory = entry.dirent.isDirectory(); + const isMatched = this._isMatchToPatterns(filepath, positiveRe, isDirectory) && !this._isMatchToPatterns(entry.path, negativeRe, isDirectory); + if (this._settings.unique && isMatched) { + this._createIndexRecord(entry); + } + return isMatched; + } + _isDuplicateEntry(entry) { + return this.index.has(entry.path); + } + _createIndexRecord(entry) { + this.index.set(entry.path, void 0); + } + _onlyFileFilter(entry) { + return this._settings.onlyFiles && !entry.dirent.isFile(); + } + _onlyDirectoryFilter(entry) { + return this._settings.onlyDirectories && !entry.dirent.isDirectory(); + } + _isSkippedByAbsoluteNegativePatterns(entryPath, patternsRe) { + if (!this._settings.absolute) { + return false; + } + const fullpath = utils.path.makeAbsolute(this._settings.cwd, entryPath); + return utils.pattern.matchAny(fullpath, patternsRe); + } + _isMatchToPatterns(entryPath, patternsRe, isDirectory) { + const filepath = utils.path.removeLeadingDotSegment(entryPath); + const isMatched = utils.pattern.matchAny(filepath, patternsRe); + if (!isMatched && isDirectory) { + return utils.pattern.matchAny(filepath + "/", patternsRe); + } + return isMatched; + } + }; + exports2.default = EntryFilter; + } +}); +var require_error = __commonJS2({ + "node_modules/fast-glob/out/providers/filters/error.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var utils = require_utils4(); + var ErrorFilter = class { + constructor(_settings) { + this._settings = _settings; + } + getFilter() { + return (error) => this._isNonFatalError(error); + } + _isNonFatalError(error) { + return utils.errno.isEnoentCodeError(error) || this._settings.suppressErrors; + } + }; + exports2.default = ErrorFilter; + } +}); +var require_entry2 = __commonJS2({ + "node_modules/fast-glob/out/providers/transformers/entry.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var utils = require_utils4(); + var EntryTransformer = class { + constructor(_settings) { + this._settings = _settings; + } + getTransformer() { + return (entry) => this._transform(entry); + } + _transform(entry) { + let filepath = entry.path; + if (this._settings.absolute) { + filepath = utils.path.makeAbsolute(this._settings.cwd, filepath); + filepath = utils.path.unixify(filepath); + } + if (this._settings.markDirectories && entry.dirent.isDirectory()) { + filepath += "/"; + } + if (!this._settings.objectMode) { + return filepath; + } + return Object.assign(Object.assign({}, entry), { + path: filepath + }); + } + }; + exports2.default = EntryTransformer; + } +}); +var require_provider = __commonJS2({ + "node_modules/fast-glob/out/providers/provider.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var path = require("path"); + var deep_1 = require_deep(); + var entry_1 = require_entry(); + var error_1 = require_error(); + var entry_2 = require_entry2(); + var Provider = class { + constructor(_settings) { + this._settings = _settings; + this.errorFilter = new error_1.default(this._settings); + this.entryFilter = new entry_1.default(this._settings, this._getMicromatchOptions()); + this.deepFilter = new deep_1.default(this._settings, this._getMicromatchOptions()); + this.entryTransformer = new entry_2.default(this._settings); + } + _getRootDirectory(task) { + return path.resolve(this._settings.cwd, task.base); + } + _getReaderOptions(task) { + const basePath = task.base === "." ? "" : task.base; + return { + basePath, + pathSegmentSeparator: "/", + concurrency: this._settings.concurrency, + deepFilter: this.deepFilter.getFilter(basePath, task.positive, task.negative), + entryFilter: this.entryFilter.getFilter(task.positive, task.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: true, + strictSlashes: false + }; + } + }; + exports2.default = Provider; + } +}); +var require_async7 = __commonJS2({ + "node_modules/fast-glob/out/providers/async.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var async_1 = require_async6(); + var provider_1 = require_provider(); + var ProviderAsync = class extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new async_1.default(this._settings); + } + async read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const entries = await this.api(root, task, options); + return entries.map((entry) => options.transform(entry)); + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } + }; + exports2.default = ProviderAsync; + } +}); +var require_stream4 = __commonJS2({ + "node_modules/fast-glob/out/providers/stream.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var stream_1 = require("stream"); + var stream_2 = require_stream3(); + var provider_1 = require_provider(); + var ProviderStream = class extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new stream_2.default(this._settings); + } + read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const source = this.api(root, task, options); + const destination = new stream_1.Readable({ + objectMode: true, + read: () => { + } + }); + source.once("error", (error) => destination.emit("error", error)).on("data", (entry) => destination.emit("data", options.transform(entry))).once("end", () => destination.emit("end")); + destination.once("close", () => source.destroy()); + return destination; + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } + }; + exports2.default = ProviderStream; + } +}); +var require_sync6 = __commonJS2({ + "node_modules/fast-glob/out/readers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var fsStat = require_out(); + var fsWalk = require_out3(); + var reader_1 = require_reader2(); + var ReaderSync = class extends reader_1.default { + constructor() { + super(...arguments); + this._walkSync = fsWalk.walkSync; + this._statSync = fsStat.statSync; + } + dynamic(root, options) { + return this._walkSync(root, options); + } + static(patterns, options) { + const entries = []; + for (const pattern of patterns) { + const filepath = this._getFullEntryPath(pattern); + const entry = this._getEntry(filepath, pattern, options); + if (entry === null || !options.entryFilter(entry)) { + continue; + } + entries.push(entry); + } + return entries; + } + _getEntry(filepath, pattern, options) { + try { + const stats = this._getStat(filepath); + return this._makeEntry(stats, pattern); + } catch (error) { + if (options.errorFilter(error)) { + return null; + } + throw error; + } + } + _getStat(filepath) { + return this._statSync(filepath, this._fsStatSettings); + } + }; + exports2.default = ReaderSync; + } +}); +var require_sync7 = __commonJS2({ + "node_modules/fast-glob/out/providers/sync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var sync_1 = require_sync6(); + var provider_1 = require_provider(); + var ProviderSync = class extends provider_1.default { + constructor() { + super(...arguments); + this._reader = new sync_1.default(this._settings); + } + read(task) { + const root = this._getRootDirectory(task); + const options = this._getReaderOptions(task); + const entries = this.api(root, task, options); + return entries.map(options.transform); + } + api(root, task, options) { + if (task.dynamic) { + return this._reader.dynamic(root, options); + } + return this._reader.static(task.patterns, options); + } + }; + exports2.default = ProviderSync; + } +}); +var require_settings4 = __commonJS2({ + "node_modules/fast-glob/out/settings.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.DEFAULT_FILE_SYSTEM_ADAPTER = void 0; + var fs = require("fs"); + var os = require("os"); + var CPU_COUNT = Math.max(os.cpus().length, 1); + exports2.DEFAULT_FILE_SYSTEM_ADAPTER = { + lstat: fs.lstat, + lstatSync: fs.lstatSync, + stat: fs.stat, + statSync: fs.statSync, + readdir: fs.readdir, + readdirSync: fs.readdirSync + }; + var Settings = class { + constructor(_options = {}) { + this._options = _options; + this.absolute = this._getValue(this._options.absolute, false); + this.baseNameMatch = this._getValue(this._options.baseNameMatch, false); + this.braceExpansion = this._getValue(this._options.braceExpansion, true); + this.caseSensitiveMatch = this._getValue(this._options.caseSensitiveMatch, true); + this.concurrency = this._getValue(this._options.concurrency, CPU_COUNT); + this.cwd = this._getValue(this._options.cwd, process.cwd()); + this.deep = this._getValue(this._options.deep, Infinity); + this.dot = this._getValue(this._options.dot, false); + this.extglob = this._getValue(this._options.extglob, true); + this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, true); + this.fs = this._getFileSystemMethods(this._options.fs); + this.globstar = this._getValue(this._options.globstar, true); + this.ignore = this._getValue(this._options.ignore, []); + this.markDirectories = this._getValue(this._options.markDirectories, false); + this.objectMode = this._getValue(this._options.objectMode, false); + this.onlyDirectories = this._getValue(this._options.onlyDirectories, false); + this.onlyFiles = this._getValue(this._options.onlyFiles, true); + this.stats = this._getValue(this._options.stats, false); + this.suppressErrors = this._getValue(this._options.suppressErrors, false); + this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, false); + this.unique = this._getValue(this._options.unique, true); + if (this.onlyDirectories) { + this.onlyFiles = false; + } + if (this.stats) { + this.objectMode = true; + } + } + _getValue(option, value) { + return option === void 0 ? value : option; + } + _getFileSystemMethods(methods = {}) { + return Object.assign(Object.assign({}, exports2.DEFAULT_FILE_SYSTEM_ADAPTER), methods); + } + }; + exports2.default = Settings; + } +}); +var require_out4 = __commonJS2({ + "node_modules/fast-glob/out/index.js"(exports2, module2) { + "use strict"; + var taskManager = require_tasks(); + var patternManager = require_patterns(); + var async_1 = require_async7(); + var stream_1 = require_stream4(); + var sync_1 = require_sync7(); + var settings_1 = require_settings4(); + var utils = require_utils4(); + async function FastGlob(source, options) { + assertPatternsInput(source); + const works = getWorks(source, async_1.default, options); + const result = await Promise.all(works); + return utils.array.flatten(result); + } + (function(FastGlob2) { + function sync(source, options) { + assertPatternsInput(source); + const works = getWorks(source, sync_1.default, options); + return utils.array.flatten(works); + } + FastGlob2.sync = sync; + function stream(source, options) { + assertPatternsInput(source); + const works = getWorks(source, stream_1.default, options); + return utils.stream.merge(works); + } + FastGlob2.stream = stream; + function generateTasks(source, options) { + assertPatternsInput(source); + const patterns = patternManager.transform([].concat(source)); + const settings = new settings_1.default(options); + return taskManager.generate(patterns, settings); + } + FastGlob2.generateTasks = generateTasks; + function isDynamicPattern(source, options) { + assertPatternsInput(source); + const settings = new settings_1.default(options); + return utils.pattern.isDynamicPattern(source, settings); + } + FastGlob2.isDynamicPattern = isDynamicPattern; + function escapePath(source) { + assertPatternsInput(source); + return utils.path.escape(source); + } + FastGlob2.escapePath = escapePath; + })(FastGlob || (FastGlob = {})); + function getWorks(source, _Provider, options) { + const patterns = patternManager.transform([].concat(source)); + const settings = new settings_1.default(options); + const tasks = taskManager.generate(patterns, settings); + const provider = new _Provider(settings); + return tasks.map(provider.read, provider); + } + function assertPatternsInput(input) { + const source = [].concat(input); + const isValidSource = source.every((item) => utils.string.isString(item) && !utils.string.isEmpty(item)); + if (!isValidSource) { + throw new TypeError("Patterns must be a string (non empty) or an array of strings"); + } + } + module2.exports = FastGlob; + } +}); +var require_uniq_by_key = __commonJS2({ + "src/utils/uniq-by-key.js"(exports2, module2) { + "use strict"; + function uniqByKey(array, key) { + const result = []; + const seen = /* @__PURE__ */ new Set(); + for (const element of array) { + const value = element[key]; + if (!seen.has(value)) { + seen.add(value); + result.push(element); + } + } + return result; + } + module2.exports = uniqByKey; + } +}); +var require_create_language = __commonJS2({ + "src/utils/create-language.js"(exports2, module2) { + "use strict"; + module2.exports = function(linguistData, override) { + const { + languageId + } = linguistData, rest = _objectWithoutProperties(linguistData, _excluded4); + return Object.assign(Object.assign({ + linguistLanguageId: languageId + }, rest), override(linguistData)); + }; + } +}); +var require_ast = __commonJS2({ + "node_modules/esutils/lib/ast.js"(exports2, module2) { + (function() { + "use strict"; + function isExpression(node) { + if (node == null) { + return false; + } + switch (node.type) { + case "ArrayExpression": + case "AssignmentExpression": + case "BinaryExpression": + case "CallExpression": + case "ConditionalExpression": + case "FunctionExpression": + case "Identifier": + case "Literal": + case "LogicalExpression": + case "MemberExpression": + case "NewExpression": + case "ObjectExpression": + case "SequenceExpression": + case "ThisExpression": + case "UnaryExpression": + case "UpdateExpression": + return true; + } + return false; + } + function isIterationStatement(node) { + if (node == null) { + return false; + } + switch (node.type) { + case "DoWhileStatement": + case "ForInStatement": + case "ForStatement": + case "WhileStatement": + return true; + } + return false; + } + function isStatement(node) { + if (node == null) { + return false; + } + switch (node.type) { + case "BlockStatement": + case "BreakStatement": + case "ContinueStatement": + case "DebuggerStatement": + case "DoWhileStatement": + case "EmptyStatement": + case "ExpressionStatement": + case "ForInStatement": + case "ForStatement": + case "IfStatement": + case "LabeledStatement": + case "ReturnStatement": + case "SwitchStatement": + case "ThrowStatement": + case "TryStatement": + case "VariableDeclaration": + case "WhileStatement": + case "WithStatement": + return true; + } + return false; + } + function isSourceElement(node) { + return isStatement(node) || node != null && node.type === "FunctionDeclaration"; + } + function trailingStatement(node) { + switch (node.type) { + case "IfStatement": + if (node.alternate != null) { + return node.alternate; + } + return node.consequent; + case "LabeledStatement": + case "ForStatement": + case "ForInStatement": + case "WhileStatement": + case "WithStatement": + return node.body; + } + return null; + } + function isProblematicIfStatement(node) { + var current; + if (node.type !== "IfStatement") { + return false; + } + if (node.alternate == null) { + return false; + } + current = node.consequent; + do { + if (current.type === "IfStatement") { + if (current.alternate == null) { + return true; + } + } + current = trailingStatement(current); + } while (current); + return false; + } + module2.exports = { + isExpression, + isStatement, + isIterationStatement, + isSourceElement, + isProblematicIfStatement, + trailingStatement + }; + })(); + } +}); +var require_code = __commonJS2({ + "node_modules/esutils/lib/code.js"(exports2, module2) { + (function() { + "use strict"; + var ES6Regex, ES5Regex, NON_ASCII_WHITESPACES, IDENTIFIER_START, IDENTIFIER_PART, ch; + ES5Regex = { + NonAsciiIdentifierStart: /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/, + NonAsciiIdentifierPart: /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/ + }; + ES6Regex = { + NonAsciiIdentifierStart: /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/, + NonAsciiIdentifierPart: /[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/ + }; + function isDecimalDigit(ch2) { + return 48 <= ch2 && ch2 <= 57; + } + function isHexDigit(ch2) { + return 48 <= ch2 && ch2 <= 57 || 97 <= ch2 && ch2 <= 102 || 65 <= ch2 && ch2 <= 70; + } + function isOctalDigit(ch2) { + return ch2 >= 48 && ch2 <= 55; + } + NON_ASCII_WHITESPACES = [5760, 8192, 8193, 8194, 8195, 8196, 8197, 8198, 8199, 8200, 8201, 8202, 8239, 8287, 12288, 65279]; + function isWhiteSpace(ch2) { + return ch2 === 32 || ch2 === 9 || ch2 === 11 || ch2 === 12 || ch2 === 160 || ch2 >= 5760 && NON_ASCII_WHITESPACES.indexOf(ch2) >= 0; + } + function isLineTerminator(ch2) { + return ch2 === 10 || ch2 === 13 || ch2 === 8232 || ch2 === 8233; + } + function fromCodePoint(cp) { + if (cp <= 65535) { + return String.fromCharCode(cp); + } + var cu1 = String.fromCharCode(Math.floor((cp - 65536) / 1024) + 55296); + var cu2 = String.fromCharCode((cp - 65536) % 1024 + 56320); + return cu1 + cu2; + } + IDENTIFIER_START = new Array(128); + for (ch = 0; ch < 128; ++ch) { + IDENTIFIER_START[ch] = ch >= 97 && ch <= 122 || ch >= 65 && ch <= 90 || ch === 36 || ch === 95; + } + IDENTIFIER_PART = new Array(128); + for (ch = 0; ch < 128; ++ch) { + IDENTIFIER_PART[ch] = ch >= 97 && ch <= 122 || ch >= 65 && ch <= 90 || ch >= 48 && ch <= 57 || ch === 36 || ch === 95; + } + function isIdentifierStartES5(ch2) { + return ch2 < 128 ? IDENTIFIER_START[ch2] : ES5Regex.NonAsciiIdentifierStart.test(fromCodePoint(ch2)); + } + function isIdentifierPartES5(ch2) { + return ch2 < 128 ? IDENTIFIER_PART[ch2] : ES5Regex.NonAsciiIdentifierPart.test(fromCodePoint(ch2)); + } + function isIdentifierStartES6(ch2) { + return ch2 < 128 ? IDENTIFIER_START[ch2] : ES6Regex.NonAsciiIdentifierStart.test(fromCodePoint(ch2)); + } + function isIdentifierPartES6(ch2) { + return ch2 < 128 ? IDENTIFIER_PART[ch2] : ES6Regex.NonAsciiIdentifierPart.test(fromCodePoint(ch2)); + } + module2.exports = { + isDecimalDigit, + isHexDigit, + isOctalDigit, + isWhiteSpace, + isLineTerminator, + isIdentifierStartES5, + isIdentifierPartES5, + isIdentifierStartES6, + isIdentifierPartES6 + }; + })(); + } +}); +var require_keyword2 = __commonJS2({ + "node_modules/esutils/lib/keyword.js"(exports2, module2) { + (function() { + "use strict"; + var code = require_code(); + function isStrictModeReservedWordES6(id) { + switch (id) { + case "implements": + case "interface": + case "package": + case "private": + case "protected": + case "public": + case "static": + case "let": + return true; + default: + return false; + } + } + function isKeywordES5(id, strict) { + if (!strict && id === "yield") { + return false; + } + return isKeywordES6(id, strict); + } + function isKeywordES6(id, strict) { + if (strict && isStrictModeReservedWordES6(id)) { + return true; + } + switch (id.length) { + case 2: + return id === "if" || id === "in" || id === "do"; + case 3: + return id === "var" || id === "for" || id === "new" || id === "try"; + case 4: + return id === "this" || id === "else" || id === "case" || id === "void" || id === "with" || id === "enum"; + case 5: + return id === "while" || id === "break" || id === "catch" || id === "throw" || id === "const" || id === "yield" || id === "class" || id === "super"; + case 6: + return id === "return" || id === "typeof" || id === "delete" || id === "switch" || id === "export" || id === "import"; + case 7: + return id === "default" || id === "finally" || id === "extends"; + case 8: + return id === "function" || id === "continue" || id === "debugger"; + case 10: + return id === "instanceof"; + default: + return false; + } + } + function isReservedWordES5(id, strict) { + return id === "null" || id === "true" || id === "false" || isKeywordES5(id, strict); + } + function isReservedWordES6(id, strict) { + return id === "null" || id === "true" || id === "false" || isKeywordES6(id, strict); + } + function isRestrictedWord(id) { + return id === "eval" || id === "arguments"; + } + function isIdentifierNameES5(id) { + var i, iz, ch; + if (id.length === 0) { + return false; + } + ch = id.charCodeAt(0); + if (!code.isIdentifierStartES5(ch)) { + return false; + } + for (i = 1, iz = id.length; i < iz; ++i) { + ch = id.charCodeAt(i); + if (!code.isIdentifierPartES5(ch)) { + return false; + } + } + return true; + } + function decodeUtf16(lead, trail) { + return (lead - 55296) * 1024 + (trail - 56320) + 65536; + } + function isIdentifierNameES6(id) { + var i, iz, ch, lowCh, check; + if (id.length === 0) { + return false; + } + check = code.isIdentifierStartES6; + for (i = 0, iz = id.length; i < iz; ++i) { + ch = id.charCodeAt(i); + if (55296 <= ch && ch <= 56319) { + ++i; + if (i >= iz) { + return false; + } + lowCh = id.charCodeAt(i); + if (!(56320 <= lowCh && lowCh <= 57343)) { + return false; + } + ch = decodeUtf16(ch, lowCh); + } + if (!check(ch)) { + return false; + } + check = code.isIdentifierPartES6; + } + return true; + } + function isIdentifierES5(id, strict) { + return isIdentifierNameES5(id) && !isReservedWordES5(id, strict); + } + function isIdentifierES6(id, strict) { + return isIdentifierNameES6(id) && !isReservedWordES6(id, strict); + } + module2.exports = { + isKeywordES5, + isKeywordES6, + isReservedWordES5, + isReservedWordES6, + isRestrictedWord, + isIdentifierNameES5, + isIdentifierNameES6, + isIdentifierES5, + isIdentifierES6 + }; + })(); + } +}); +var require_utils6 = __commonJS2({ + "node_modules/esutils/lib/utils.js"(exports2) { + (function() { + "use strict"; + exports2.ast = require_ast(); + exports2.code = require_code(); + exports2.keyword = require_keyword2(); + })(); + } +}); +var require_is_block_comment = __commonJS2({ + "src/language-js/utils/is-block-comment.js"(exports2, module2) { + "use strict"; + var BLOCK_COMMENT_TYPES = /* @__PURE__ */ new Set(["Block", "CommentBlock", "MultiLine"]); + var isBlockComment = (comment) => BLOCK_COMMENT_TYPES.has(comment === null || comment === void 0 ? void 0 : comment.type); + module2.exports = isBlockComment; + } +}); +var require_is_node_matches = __commonJS2({ + "src/language-js/utils/is-node-matches.js"(exports2, module2) { + "use strict"; + function isNodeMatchesNameOrPath(node, nameOrPath) { + const names = nameOrPath.split("."); + for (let index = names.length - 1; index >= 0; index--) { + const name = names[index]; + if (index === 0) { + return node.type === "Identifier" && node.name === name; + } + if (node.type !== "MemberExpression" || node.optional || node.computed || node.property.type !== "Identifier" || node.property.name !== name) { + return false; + } + node = node.object; + } + } + function isNodeMatches(node, nameOrPaths) { + return nameOrPaths.some((nameOrPath) => isNodeMatchesNameOrPath(node, nameOrPath)); + } + module2.exports = isNodeMatches; + } +}); +var require_utils7 = __commonJS2({ + "src/language-js/utils/index.js"(exports2, module2) { + "use strict"; + var isIdentifierName = require_utils6().keyword.isIdentifierNameES5; + var { + getLast, + hasNewline, + skipWhitespace, + isNonEmptyArray, + isNextLineEmptyAfterIndex, + getStringWidth + } = require_util(); + var { + locStart, + locEnd, + hasSameLocStart + } = require_loc(); + var isBlockComment = require_is_block_comment(); + var isNodeMatches = require_is_node_matches(); + var NON_LINE_TERMINATING_WHITE_SPACE = "(?:(?=.)\\s)"; + var FLOW_SHORTHAND_ANNOTATION = new RegExp(`^${NON_LINE_TERMINATING_WHITE_SPACE}*:`); + var FLOW_ANNOTATION = new RegExp(`^${NON_LINE_TERMINATING_WHITE_SPACE}*::`); + function hasFlowShorthandAnnotationComment(node) { + var _node$extra, _node$trailingComment; + return ((_node$extra = node.extra) === null || _node$extra === void 0 ? void 0 : _node$extra.parenthesized) && isBlockComment((_node$trailingComment = node.trailingComments) === null || _node$trailingComment === void 0 ? void 0 : _node$trailingComment[0]) && FLOW_SHORTHAND_ANNOTATION.test(node.trailingComments[0].value); + } + function hasFlowAnnotationComment(comments) { + const firstComment = comments === null || comments === void 0 ? void 0 : comments[0]; + return isBlockComment(firstComment) && FLOW_ANNOTATION.test(firstComment.value); + } + function hasNode(node, fn) { + if (!node || typeof node !== "object") { + return false; + } + if (Array.isArray(node)) { + return node.some((value) => hasNode(value, fn)); + } + const result = fn(node); + return typeof result === "boolean" ? result : Object.values(node).some((value) => hasNode(value, fn)); + } + function hasNakedLeftSide(node) { + return node.type === "AssignmentExpression" || node.type === "BinaryExpression" || node.type === "LogicalExpression" || node.type === "NGPipeExpression" || node.type === "ConditionalExpression" || isCallExpression(node) || isMemberExpression(node) || node.type === "SequenceExpression" || node.type === "TaggedTemplateExpression" || node.type === "BindExpression" || node.type === "UpdateExpression" && !node.prefix || isTSTypeExpression(node) || node.type === "TSNonNullExpression"; + } + function getLeftSide(node) { + var _ref2, _ref3, _ref4, _ref5, _ref6, _node$left; + if (node.expressions) { + return node.expressions[0]; + } + return (_ref2 = (_ref3 = (_ref4 = (_ref5 = (_ref6 = (_node$left = node.left) !== null && _node$left !== void 0 ? _node$left : node.test) !== null && _ref6 !== void 0 ? _ref6 : node.callee) !== null && _ref5 !== void 0 ? _ref5 : node.object) !== null && _ref4 !== void 0 ? _ref4 : node.tag) !== null && _ref3 !== void 0 ? _ref3 : node.argument) !== null && _ref2 !== void 0 ? _ref2 : node.expression; + } + function getLeftSidePathName(path, node) { + if (node.expressions) { + return ["expressions", 0]; + } + if (node.left) { + return ["left"]; + } + if (node.test) { + return ["test"]; + } + if (node.object) { + return ["object"]; + } + if (node.callee) { + return ["callee"]; + } + if (node.tag) { + return ["tag"]; + } + if (node.argument) { + return ["argument"]; + } + if (node.expression) { + return ["expression"]; + } + throw new Error("Unexpected node has no left side."); + } + function createTypeCheckFunction(types) { + types = new Set(types); + return (node) => types.has(node === null || node === void 0 ? void 0 : node.type); + } + var isLineComment = createTypeCheckFunction(["Line", "CommentLine", "SingleLine", "HashbangComment", "HTMLOpen", "HTMLClose"]); + var isExportDeclaration = createTypeCheckFunction(["ExportDefaultDeclaration", "ExportDefaultSpecifier", "DeclareExportDeclaration", "ExportNamedDeclaration", "ExportAllDeclaration"]); + function getParentExportDeclaration(path) { + const parentNode = path.getParentNode(); + if (path.getName() === "declaration" && isExportDeclaration(parentNode)) { + return parentNode; + } + return null; + } + var isLiteral = createTypeCheckFunction(["BooleanLiteral", "DirectiveLiteral", "Literal", "NullLiteral", "NumericLiteral", "BigIntLiteral", "DecimalLiteral", "RegExpLiteral", "StringLiteral", "TemplateLiteral", "TSTypeLiteral", "JSXText"]); + function isNumericLiteral(node) { + return node.type === "NumericLiteral" || node.type === "Literal" && typeof node.value === "number"; + } + function isSignedNumericLiteral(node) { + return node.type === "UnaryExpression" && (node.operator === "+" || node.operator === "-") && isNumericLiteral(node.argument); + } + function isStringLiteral(node) { + return node.type === "StringLiteral" || node.type === "Literal" && typeof node.value === "string"; + } + var isObjectType = createTypeCheckFunction(["ObjectTypeAnnotation", "TSTypeLiteral", "TSMappedType"]); + var isFunctionOrArrowExpression = createTypeCheckFunction(["FunctionExpression", "ArrowFunctionExpression"]); + function isFunctionOrArrowExpressionWithBody(node) { + return node.type === "FunctionExpression" || node.type === "ArrowFunctionExpression" && node.body.type === "BlockStatement"; + } + function isAngularTestWrapper(node) { + return isCallExpression(node) && node.callee.type === "Identifier" && ["async", "inject", "fakeAsync", "waitForAsync"].includes(node.callee.name); + } + var isJsxNode = createTypeCheckFunction(["JSXElement", "JSXFragment"]); + function isTheOnlyJsxElementInMarkdown(options, path) { + if (options.parentParser !== "markdown" && options.parentParser !== "mdx") { + return false; + } + const node = path.getNode(); + if (!node.expression || !isJsxNode(node.expression)) { + return false; + } + const parent = path.getParentNode(); + return parent.type === "Program" && parent.body.length === 1; + } + function isGetterOrSetter(node) { + return node.kind === "get" || node.kind === "set"; + } + function isFunctionNotation(node) { + return isGetterOrSetter(node) || hasSameLocStart(node, node.value); + } + function isObjectTypePropertyAFunction(node) { + return (node.type === "ObjectTypeProperty" || node.type === "ObjectTypeInternalSlot") && node.value.type === "FunctionTypeAnnotation" && !node.static && !isFunctionNotation(node); + } + function isTypeAnnotationAFunction(node) { + return (node.type === "TypeAnnotation" || node.type === "TSTypeAnnotation") && node.typeAnnotation.type === "FunctionTypeAnnotation" && !node.static && !hasSameLocStart(node, node.typeAnnotation); + } + var isBinaryish = createTypeCheckFunction(["BinaryExpression", "LogicalExpression", "NGPipeExpression"]); + function isMemberish(node) { + return isMemberExpression(node) || node.type === "BindExpression" && Boolean(node.object); + } + var simpleTypeAnnotations = /* @__PURE__ */ new Set(["AnyTypeAnnotation", "TSAnyKeyword", "NullLiteralTypeAnnotation", "TSNullKeyword", "ThisTypeAnnotation", "TSThisType", "NumberTypeAnnotation", "TSNumberKeyword", "VoidTypeAnnotation", "TSVoidKeyword", "BooleanTypeAnnotation", "TSBooleanKeyword", "BigIntTypeAnnotation", "TSBigIntKeyword", "SymbolTypeAnnotation", "TSSymbolKeyword", "StringTypeAnnotation", "TSStringKeyword", "BooleanLiteralTypeAnnotation", "StringLiteralTypeAnnotation", "BigIntLiteralTypeAnnotation", "NumberLiteralTypeAnnotation", "TSLiteralType", "TSTemplateLiteralType", "EmptyTypeAnnotation", "MixedTypeAnnotation", "TSNeverKeyword", "TSObjectKeyword", "TSUndefinedKeyword", "TSUnknownKeyword"]); + function isSimpleType(node) { + if (!node) { + return false; + } + if ((node.type === "GenericTypeAnnotation" || node.type === "TSTypeReference") && !node.typeParameters) { + return true; + } + if (simpleTypeAnnotations.has(node.type)) { + return true; + } + return false; + } + function isUnitTestSetUp(node) { + const unitTestSetUpRe = /^(?:before|after)(?:Each|All)$/; + return node.callee.type === "Identifier" && unitTestSetUpRe.test(node.callee.name) && node.arguments.length === 1; + } + var testCallCalleePatterns = ["it", "it.only", "it.skip", "describe", "describe.only", "describe.skip", "test", "test.only", "test.skip", "test.step", "test.describe", "test.describe.only", "test.describe.parallel", "test.describe.parallel.only", "test.describe.serial", "test.describe.serial.only", "skip", "xit", "xdescribe", "xtest", "fit", "fdescribe", "ftest"]; + function isTestCallCallee(node) { + return isNodeMatches(node, testCallCalleePatterns); + } + function isTestCall(node, parent) { + if (node.type !== "CallExpression") { + return false; + } + if (node.arguments.length === 1) { + if (isAngularTestWrapper(node) && parent && isTestCall(parent)) { + return isFunctionOrArrowExpression(node.arguments[0]); + } + if (isUnitTestSetUp(node)) { + return isAngularTestWrapper(node.arguments[0]); + } + } else if (node.arguments.length === 2 || node.arguments.length === 3) { + if ((node.arguments[0].type === "TemplateLiteral" || isStringLiteral(node.arguments[0])) && isTestCallCallee(node.callee)) { + if (node.arguments[2] && !isNumericLiteral(node.arguments[2])) { + return false; + } + return (node.arguments.length === 2 ? isFunctionOrArrowExpression(node.arguments[1]) : isFunctionOrArrowExpressionWithBody(node.arguments[1]) && getFunctionParameters(node.arguments[1]).length <= 1) || isAngularTestWrapper(node.arguments[1]); + } + } + return false; + } + var isCallExpression = createTypeCheckFunction(["CallExpression", "OptionalCallExpression"]); + var isMemberExpression = createTypeCheckFunction(["MemberExpression", "OptionalMemberExpression"]); + function isSimpleTemplateLiteral(node) { + let expressionsKey = "expressions"; + if (node.type === "TSTemplateLiteralType") { + expressionsKey = "types"; + } + const expressions = node[expressionsKey]; + if (expressions.length === 0) { + return false; + } + return expressions.every((expr) => { + if (hasComment(expr)) { + return false; + } + if (expr.type === "Identifier" || expr.type === "ThisExpression") { + return true; + } + if (isMemberExpression(expr)) { + let head = expr; + while (isMemberExpression(head)) { + if (head.property.type !== "Identifier" && head.property.type !== "Literal" && head.property.type !== "StringLiteral" && head.property.type !== "NumericLiteral") { + return false; + } + head = head.object; + if (hasComment(head)) { + return false; + } + } + if (head.type === "Identifier" || head.type === "ThisExpression") { + return true; + } + return false; + } + return false; + }); + } + function getTypeScriptMappedTypeModifier(tokenNode, keyword) { + if (tokenNode === "+" || tokenNode === "-") { + return tokenNode + keyword; + } + return keyword; + } + function isFlowAnnotationComment(text, typeAnnotation) { + const start = locStart(typeAnnotation); + const end = skipWhitespace(text, locEnd(typeAnnotation)); + return end !== false && text.slice(start, start + 2) === "/*" && text.slice(end, end + 2) === "*/"; + } + function hasLeadingOwnLineComment(text, node) { + if (isJsxNode(node)) { + return hasNodeIgnoreComment(node); + } + return hasComment(node, CommentCheckFlags.Leading, (comment) => hasNewline(text, locEnd(comment))); + } + function isStringPropSafeToUnquote(node, options) { + return options.parser !== "json" && isStringLiteral(node.key) && rawText(node.key).slice(1, -1) === node.key.value && (isIdentifierName(node.key.value) && !(options.parser === "babel-ts" && node.type === "ClassProperty" || options.parser === "typescript" && node.type === "PropertyDefinition") || isSimpleNumber(node.key.value) && String(Number(node.key.value)) === node.key.value && (options.parser === "babel" || options.parser === "acorn" || options.parser === "espree" || options.parser === "meriyah" || options.parser === "__babel_estree")); + } + function isSimpleNumber(numberString) { + return /^(?:\d+|\d+\.\d+)$/.test(numberString); + } + function isJestEachTemplateLiteral(node, parentNode) { + const jestEachTriggerRegex = /^[fx]?(?:describe|it|test)$/; + return parentNode.type === "TaggedTemplateExpression" && parentNode.quasi === node && parentNode.tag.type === "MemberExpression" && parentNode.tag.property.type === "Identifier" && parentNode.tag.property.name === "each" && (parentNode.tag.object.type === "Identifier" && jestEachTriggerRegex.test(parentNode.tag.object.name) || parentNode.tag.object.type === "MemberExpression" && parentNode.tag.object.property.type === "Identifier" && (parentNode.tag.object.property.name === "only" || parentNode.tag.object.property.name === "skip") && parentNode.tag.object.object.type === "Identifier" && jestEachTriggerRegex.test(parentNode.tag.object.object.name)); + } + function templateLiteralHasNewLines(template) { + return template.quasis.some((quasi) => quasi.value.raw.includes("\n")); + } + function isTemplateOnItsOwnLine(node, text) { + return (node.type === "TemplateLiteral" && templateLiteralHasNewLines(node) || node.type === "TaggedTemplateExpression" && templateLiteralHasNewLines(node.quasi)) && !hasNewline(text, locStart(node), { + backwards: true + }); + } + function needsHardlineAfterDanglingComment(node) { + if (!hasComment(node)) { + return false; + } + const lastDanglingComment = getLast(getComments(node, CommentCheckFlags.Dangling)); + return lastDanglingComment && !isBlockComment(lastDanglingComment); + } + function isFunctionCompositionArgs(args) { + if (args.length <= 1) { + return false; + } + let count = 0; + for (const arg of args) { + if (isFunctionOrArrowExpression(arg)) { + count += 1; + if (count > 1) { + return true; + } + } else if (isCallExpression(arg)) { + for (const childArg of arg.arguments) { + if (isFunctionOrArrowExpression(childArg)) { + return true; + } + } + } + } + return false; + } + function isLongCurriedCallExpression(path) { + const node = path.getValue(); + const parent = path.getParentNode(); + return isCallExpression(node) && isCallExpression(parent) && parent.callee === node && node.arguments.length > parent.arguments.length && parent.arguments.length > 0; + } + function isSimpleCallArgument(node, depth) { + if (depth >= 2) { + return false; + } + const isChildSimple = (child) => isSimpleCallArgument(child, depth + 1); + const regexpPattern = node.type === "Literal" && "regex" in node && node.regex.pattern || node.type === "RegExpLiteral" && node.pattern; + if (regexpPattern && getStringWidth(regexpPattern) > 5) { + return false; + } + if (node.type === "Literal" || node.type === "BigIntLiteral" || node.type === "DecimalLiteral" || node.type === "BooleanLiteral" || node.type === "NullLiteral" || node.type === "NumericLiteral" || node.type === "RegExpLiteral" || node.type === "StringLiteral" || node.type === "Identifier" || node.type === "ThisExpression" || node.type === "Super" || node.type === "PrivateName" || node.type === "PrivateIdentifier" || node.type === "ArgumentPlaceholder" || node.type === "Import") { + return true; + } + if (node.type === "TemplateLiteral") { + return node.quasis.every((element) => !element.value.raw.includes("\n")) && node.expressions.every(isChildSimple); + } + if (node.type === "ObjectExpression") { + return node.properties.every((p) => !p.computed && (p.shorthand || p.value && isChildSimple(p.value))); + } + if (node.type === "ArrayExpression") { + return node.elements.every((x) => x === null || isChildSimple(x)); + } + if (isCallLikeExpression(node)) { + return (node.type === "ImportExpression" || isSimpleCallArgument(node.callee, depth)) && getCallArguments(node).every(isChildSimple); + } + if (isMemberExpression(node)) { + return isSimpleCallArgument(node.object, depth) && isSimpleCallArgument(node.property, depth); + } + const targetUnaryExpressionOperators = { + "!": true, + "-": true, + "+": true, + "~": true + }; + if (node.type === "UnaryExpression" && targetUnaryExpressionOperators[node.operator]) { + return isSimpleCallArgument(node.argument, depth); + } + const targetUpdateExpressionOperators = { + "++": true, + "--": true + }; + if (node.type === "UpdateExpression" && targetUpdateExpressionOperators[node.operator]) { + return isSimpleCallArgument(node.argument, depth); + } + if (node.type === "TSNonNullExpression") { + return isSimpleCallArgument(node.expression, depth); + } + return false; + } + function rawText(node) { + var _node$extra$raw, _node$extra2; + return (_node$extra$raw = (_node$extra2 = node.extra) === null || _node$extra2 === void 0 ? void 0 : _node$extra2.raw) !== null && _node$extra$raw !== void 0 ? _node$extra$raw : node.raw; + } + function identity(x) { + return x; + } + function isTSXFile(options) { + return options.filepath && /\.tsx$/i.test(options.filepath); + } + function shouldPrintComma(options, level = "es5") { + return options.trailingComma === "es5" && level === "es5" || options.trailingComma === "all" && (level === "all" || level === "es5"); + } + function startsWithNoLookaheadToken(node, predicate) { + switch (node.type) { + case "BinaryExpression": + case "LogicalExpression": + case "AssignmentExpression": + case "NGPipeExpression": + return startsWithNoLookaheadToken(node.left, predicate); + case "MemberExpression": + case "OptionalMemberExpression": + return startsWithNoLookaheadToken(node.object, predicate); + case "TaggedTemplateExpression": + if (node.tag.type === "FunctionExpression") { + return false; + } + return startsWithNoLookaheadToken(node.tag, predicate); + case "CallExpression": + case "OptionalCallExpression": + if (node.callee.type === "FunctionExpression") { + return false; + } + return startsWithNoLookaheadToken(node.callee, predicate); + case "ConditionalExpression": + return startsWithNoLookaheadToken(node.test, predicate); + case "UpdateExpression": + return !node.prefix && startsWithNoLookaheadToken(node.argument, predicate); + case "BindExpression": + return node.object && startsWithNoLookaheadToken(node.object, predicate); + case "SequenceExpression": + return startsWithNoLookaheadToken(node.expressions[0], predicate); + case "TSSatisfiesExpression": + case "TSAsExpression": + case "TSNonNullExpression": + return startsWithNoLookaheadToken(node.expression, predicate); + default: + return predicate(node); + } + } + var equalityOperators = { + "==": true, + "!=": true, + "===": true, + "!==": true + }; + var multiplicativeOperators = { + "*": true, + "/": true, + "%": true + }; + var bitshiftOperators = { + ">>": true, + ">>>": true, + "<<": true + }; + function shouldFlatten(parentOp, nodeOp) { + if (getPrecedence(nodeOp) !== getPrecedence(parentOp)) { + return false; + } + if (parentOp === "**") { + return false; + } + if (equalityOperators[parentOp] && equalityOperators[nodeOp]) { + return false; + } + if (nodeOp === "%" && multiplicativeOperators[parentOp] || parentOp === "%" && multiplicativeOperators[nodeOp]) { + return false; + } + if (nodeOp !== parentOp && multiplicativeOperators[nodeOp] && multiplicativeOperators[parentOp]) { + return false; + } + if (bitshiftOperators[parentOp] && bitshiftOperators[nodeOp]) { + return false; + } + return true; + } + var PRECEDENCE = new Map([["|>"], ["??"], ["||"], ["&&"], ["|"], ["^"], ["&"], ["==", "===", "!=", "!=="], ["<", ">", "<=", ">=", "in", "instanceof"], [">>", "<<", ">>>"], ["+", "-"], ["*", "/", "%"], ["**"]].flatMap((operators, index) => operators.map((operator) => [operator, index]))); + function getPrecedence(operator) { + return PRECEDENCE.get(operator); + } + function isBitwiseOperator(operator) { + return Boolean(bitshiftOperators[operator]) || operator === "|" || operator === "^" || operator === "&"; + } + function hasRestParameter(node) { + var _getLast; + if (node.rest) { + return true; + } + const parameters = getFunctionParameters(node); + return ((_getLast = getLast(parameters)) === null || _getLast === void 0 ? void 0 : _getLast.type) === "RestElement"; + } + var functionParametersCache = /* @__PURE__ */ new WeakMap(); + function getFunctionParameters(node) { + if (functionParametersCache.has(node)) { + return functionParametersCache.get(node); + } + const parameters = []; + if (node.this) { + parameters.push(node.this); + } + if (Array.isArray(node.parameters)) { + parameters.push(...node.parameters); + } else if (Array.isArray(node.params)) { + parameters.push(...node.params); + } + if (node.rest) { + parameters.push(node.rest); + } + functionParametersCache.set(node, parameters); + return parameters; + } + function iterateFunctionParametersPath(path, iteratee) { + const node = path.getValue(); + let index = 0; + const callback = (childPath) => iteratee(childPath, index++); + if (node.this) { + path.call(callback, "this"); + } + if (Array.isArray(node.parameters)) { + path.each(callback, "parameters"); + } else if (Array.isArray(node.params)) { + path.each(callback, "params"); + } + if (node.rest) { + path.call(callback, "rest"); + } + } + var callArgumentsCache = /* @__PURE__ */ new WeakMap(); + function getCallArguments(node) { + if (callArgumentsCache.has(node)) { + return callArgumentsCache.get(node); + } + let args = node.arguments; + if (node.type === "ImportExpression") { + args = [node.source]; + if (node.attributes) { + args.push(node.attributes); + } + } + callArgumentsCache.set(node, args); + return args; + } + function iterateCallArgumentsPath(path, iteratee) { + const node = path.getValue(); + if (node.type === "ImportExpression") { + path.call((sourcePath) => iteratee(sourcePath, 0), "source"); + if (node.attributes) { + path.call((sourcePath) => iteratee(sourcePath, 1), "attributes"); + } + } else { + path.each(iteratee, "arguments"); + } + } + function isPrettierIgnoreComment(comment) { + return comment.value.trim() === "prettier-ignore" && !comment.unignore; + } + function hasNodeIgnoreComment(node) { + return node && (node.prettierIgnore || hasComment(node, CommentCheckFlags.PrettierIgnore)); + } + function hasIgnoreComment(path) { + const node = path.getValue(); + return hasNodeIgnoreComment(node); + } + var CommentCheckFlags = { + Leading: 1 << 1, + Trailing: 1 << 2, + Dangling: 1 << 3, + Block: 1 << 4, + Line: 1 << 5, + PrettierIgnore: 1 << 6, + First: 1 << 7, + Last: 1 << 8 + }; + var getCommentTestFunction = (flags, fn) => { + if (typeof flags === "function") { + fn = flags; + flags = 0; + } + if (flags || fn) { + return (comment, index, comments) => !(flags & CommentCheckFlags.Leading && !comment.leading || flags & CommentCheckFlags.Trailing && !comment.trailing || flags & CommentCheckFlags.Dangling && (comment.leading || comment.trailing) || flags & CommentCheckFlags.Block && !isBlockComment(comment) || flags & CommentCheckFlags.Line && !isLineComment(comment) || flags & CommentCheckFlags.First && index !== 0 || flags & CommentCheckFlags.Last && index !== comments.length - 1 || flags & CommentCheckFlags.PrettierIgnore && !isPrettierIgnoreComment(comment) || fn && !fn(comment)); + } + }; + function hasComment(node, flags, fn) { + if (!isNonEmptyArray(node === null || node === void 0 ? void 0 : node.comments)) { + return false; + } + const test = getCommentTestFunction(flags, fn); + return test ? node.comments.some(test) : true; + } + function getComments(node, flags, fn) { + if (!Array.isArray(node === null || node === void 0 ? void 0 : node.comments)) { + return []; + } + const test = getCommentTestFunction(flags, fn); + return test ? node.comments.filter(test) : node.comments; + } + var isNextLineEmpty = (node, { + originalText + }) => isNextLineEmptyAfterIndex(originalText, locEnd(node)); + function isCallLikeExpression(node) { + return isCallExpression(node) || node.type === "NewExpression" || node.type === "ImportExpression"; + } + function isObjectProperty(node) { + return node && (node.type === "ObjectProperty" || node.type === "Property" && !node.method && node.kind === "init"); + } + function isEnabledHackPipeline(options) { + return Boolean(options.__isUsingHackPipeline); + } + var markerForIfWithoutBlockAndSameLineComment = Symbol("ifWithoutBlockAndSameLineComment"); + function isTSTypeExpression(node) { + return node.type === "TSAsExpression" || node.type === "TSSatisfiesExpression"; + } + module2.exports = { + getFunctionParameters, + iterateFunctionParametersPath, + getCallArguments, + iterateCallArgumentsPath, + hasRestParameter, + getLeftSide, + getLeftSidePathName, + getParentExportDeclaration, + getTypeScriptMappedTypeModifier, + hasFlowAnnotationComment, + hasFlowShorthandAnnotationComment, + hasLeadingOwnLineComment, + hasNakedLeftSide, + hasNode, + hasIgnoreComment, + hasNodeIgnoreComment, + identity, + isBinaryish, + isCallLikeExpression, + isEnabledHackPipeline, + isLineComment, + isPrettierIgnoreComment, + isCallExpression, + isMemberExpression, + isExportDeclaration, + isFlowAnnotationComment, + isFunctionCompositionArgs, + isFunctionNotation, + isFunctionOrArrowExpression, + isGetterOrSetter, + isJestEachTemplateLiteral, + isJsxNode, + isLiteral, + isLongCurriedCallExpression, + isSimpleCallArgument, + isMemberish, + isNumericLiteral, + isSignedNumericLiteral, + isObjectProperty, + isObjectType, + isObjectTypePropertyAFunction, + isSimpleType, + isSimpleNumber, + isSimpleTemplateLiteral, + isStringLiteral, + isStringPropSafeToUnquote, + isTemplateOnItsOwnLine, + isTestCall, + isTheOnlyJsxElementInMarkdown, + isTSXFile, + isTypeAnnotationAFunction, + isNextLineEmpty, + needsHardlineAfterDanglingComment, + rawText, + shouldPrintComma, + isBitwiseOperator, + shouldFlatten, + startsWithNoLookaheadToken, + getPrecedence, + hasComment, + getComments, + CommentCheckFlags, + markerForIfWithoutBlockAndSameLineComment, + isTSTypeExpression + }; + } +}); +var require_template_literal = __commonJS2({ + "src/language-js/print/template-literal.js"(exports2, module2) { + "use strict"; + var getLast = require_get_last(); + var { + getStringWidth, + getIndentSize + } = require_util(); + var { + builders: { + join, + hardline, + softline, + group, + indent, + align, + lineSuffixBoundary, + addAlignmentToDoc + }, + printer: { + printDocToString + }, + utils: { + mapDoc + } + } = require("./doc.js"); + var { + isBinaryish, + isJestEachTemplateLiteral, + isSimpleTemplateLiteral, + hasComment, + isMemberExpression, + isTSTypeExpression + } = require_utils7(); + function printTemplateLiteral(path, print, options) { + const node = path.getValue(); + const isTemplateLiteral = node.type === "TemplateLiteral"; + if (isTemplateLiteral && isJestEachTemplateLiteral(node, path.getParentNode())) { + const printed = printJestEachTemplateLiteral(path, options, print); + if (printed) { + return printed; + } + } + let expressionsKey = "expressions"; + if (node.type === "TSTemplateLiteralType") { + expressionsKey = "types"; + } + const parts = []; + let expressions = path.map(print, expressionsKey); + const isSimple = isSimpleTemplateLiteral(node); + if (isSimple) { + expressions = expressions.map((doc2) => printDocToString(doc2, Object.assign(Object.assign({}, options), {}, { + printWidth: Number.POSITIVE_INFINITY + })).formatted); + } + parts.push(lineSuffixBoundary, "`"); + path.each((childPath) => { + const i = childPath.getName(); + parts.push(print()); + if (i < expressions.length) { + const { + tabWidth + } = options; + const quasi = childPath.getValue(); + const indentSize = getIndentSize(quasi.value.raw, tabWidth); + let printed = expressions[i]; + if (!isSimple) { + const expression = node[expressionsKey][i]; + if (hasComment(expression) || isMemberExpression(expression) || expression.type === "ConditionalExpression" || expression.type === "SequenceExpression" || isTSTypeExpression(expression) || isBinaryish(expression)) { + printed = [indent([softline, printed]), softline]; + } + } + const aligned = indentSize === 0 && quasi.value.raw.endsWith("\n") ? align(Number.NEGATIVE_INFINITY, printed) : addAlignmentToDoc(printed, indentSize, tabWidth); + parts.push(group(["${", aligned, lineSuffixBoundary, "}"])); + } + }, "quasis"); + parts.push("`"); + return parts; + } + function printJestEachTemplateLiteral(path, options, print) { + const node = path.getNode(); + const headerNames = node.quasis[0].value.raw.trim().split(/\s*\|\s*/); + if (headerNames.length > 1 || headerNames.some((headerName) => headerName.length > 0)) { + options.__inJestEach = true; + const expressions = path.map(print, "expressions"); + options.__inJestEach = false; + const parts = []; + const stringifiedExpressions = expressions.map((doc2) => "${" + printDocToString(doc2, Object.assign(Object.assign({}, options), {}, { + printWidth: Number.POSITIVE_INFINITY, + endOfLine: "lf" + })).formatted + "}"); + const tableBody = [{ + hasLineBreak: false, + cells: [] + }]; + for (let i = 1; i < node.quasis.length; i++) { + const row = getLast(tableBody); + const correspondingExpression = stringifiedExpressions[i - 1]; + row.cells.push(correspondingExpression); + if (correspondingExpression.includes("\n")) { + row.hasLineBreak = true; + } + if (node.quasis[i].value.raw.includes("\n")) { + tableBody.push({ + hasLineBreak: false, + cells: [] + }); + } + } + const maxColumnCount = Math.max(headerNames.length, ...tableBody.map((row) => row.cells.length)); + const maxColumnWidths = Array.from({ + length: maxColumnCount + }).fill(0); + const table = [{ + cells: headerNames + }, ...tableBody.filter((row) => row.cells.length > 0)]; + for (const { + cells + } of table.filter((row) => !row.hasLineBreak)) { + for (const [index, cell] of cells.entries()) { + maxColumnWidths[index] = Math.max(maxColumnWidths[index], getStringWidth(cell)); + } + } + parts.push(lineSuffixBoundary, "`", indent([hardline, join(hardline, table.map((row) => join(" | ", row.cells.map((cell, index) => row.hasLineBreak ? cell : cell + " ".repeat(maxColumnWidths[index] - getStringWidth(cell))))))]), hardline, "`"); + return parts; + } + } + function printTemplateExpression(path, print) { + const node = path.getValue(); + let printed = print(); + if (hasComment(node)) { + printed = group([indent([softline, printed]), softline]); + } + return ["${", printed, lineSuffixBoundary, "}"]; + } + function printTemplateExpressions(path, print) { + return path.map((path2) => printTemplateExpression(path2, print), "expressions"); + } + function escapeTemplateCharacters(doc2, raw) { + return mapDoc(doc2, (currentDoc) => { + if (typeof currentDoc === "string") { + return raw ? currentDoc.replace(/(\\*)`/g, "$1$1\\`") : uncookTemplateElementValue(currentDoc); + } + return currentDoc; + }); + } + function uncookTemplateElementValue(cookedValue) { + return cookedValue.replace(/([\\`]|\${)/g, "\\$1"); + } + module2.exports = { + printTemplateLiteral, + printTemplateExpressions, + escapeTemplateCharacters, + uncookTemplateElementValue + }; + } +}); +var require_markdown = __commonJS2({ + "src/language-js/embed/markdown.js"(exports2, module2) { + "use strict"; + var { + builders: { + indent, + softline, + literalline, + dedentToRoot + } + } = require("./doc.js"); + var { + escapeTemplateCharacters + } = require_template_literal(); + function format(path, print, textToDoc) { + const node = path.getValue(); + let text = node.quasis[0].value.raw.replace(/((?:\\\\)*)\\`/g, (_, backslashes) => "\\".repeat(backslashes.length / 2) + "`"); + const indentation = getIndentation(text); + const hasIndent = indentation !== ""; + if (hasIndent) { + text = text.replace(new RegExp(`^${indentation}`, "gm"), ""); + } + const doc2 = escapeTemplateCharacters(textToDoc(text, { + parser: "markdown", + __inJsTemplate: true + }, { + stripTrailingHardline: true + }), true); + return ["`", hasIndent ? indent([softline, doc2]) : [literalline, dedentToRoot(doc2)], softline, "`"]; + } + function getIndentation(str) { + const firstMatchedIndent = str.match(/^([^\S\n]*)\S/m); + return firstMatchedIndent === null ? "" : firstMatchedIndent[1]; + } + module2.exports = format; + } +}); +var require_css = __commonJS2({ + "src/language-js/embed/css.js"(exports2, module2) { + "use strict"; + var { + isNonEmptyArray + } = require_util(); + var { + builders: { + indent, + hardline, + softline + }, + utils: { + mapDoc, + replaceEndOfLine, + cleanDoc + } + } = require("./doc.js"); + var { + printTemplateExpressions + } = require_template_literal(); + function format(path, print, textToDoc) { + const node = path.getValue(); + const rawQuasis = node.quasis.map((q) => q.value.raw); + let placeholderID = 0; + const text = rawQuasis.reduce((prevVal, currVal, idx) => idx === 0 ? currVal : prevVal + "@prettier-placeholder-" + placeholderID++ + "-id" + currVal, ""); + const doc2 = textToDoc(text, { + parser: "scss" + }, { + stripTrailingHardline: true + }); + const expressionDocs = printTemplateExpressions(path, print); + return transformCssDoc(doc2, node, expressionDocs); + } + function transformCssDoc(quasisDoc, parentNode, expressionDocs) { + const isEmpty = parentNode.quasis.length === 1 && !parentNode.quasis[0].value.raw.trim(); + if (isEmpty) { + return "``"; + } + const newDoc = replacePlaceholders(quasisDoc, expressionDocs); + if (!newDoc) { + throw new Error("Couldn't insert all the expressions"); + } + return ["`", indent([hardline, newDoc]), softline, "`"]; + } + function replacePlaceholders(quasisDoc, expressionDocs) { + if (!isNonEmptyArray(expressionDocs)) { + return quasisDoc; + } + let replaceCounter = 0; + const newDoc = mapDoc(cleanDoc(quasisDoc), (doc2) => { + if (typeof doc2 !== "string" || !doc2.includes("@prettier-placeholder")) { + return doc2; + } + return doc2.split(/@prettier-placeholder-(\d+)-id/).map((component, idx) => { + if (idx % 2 === 0) { + return replaceEndOfLine(component); + } + replaceCounter++; + return expressionDocs[component]; + }); + }); + return expressionDocs.length === replaceCounter ? newDoc : null; + } + module2.exports = format; + } +}); +var require_graphql = __commonJS2({ + "src/language-js/embed/graphql.js"(exports2, module2) { + "use strict"; + var { + builders: { + indent, + join, + hardline + } + } = require("./doc.js"); + var { + escapeTemplateCharacters, + printTemplateExpressions + } = require_template_literal(); + function format(path, print, textToDoc) { + const node = path.getValue(); + const numQuasis = node.quasis.length; + if (numQuasis === 1 && node.quasis[0].value.raw.trim() === "") { + return "``"; + } + const expressionDocs = printTemplateExpressions(path, print); + const parts = []; + for (let i = 0; i < numQuasis; i++) { + const templateElement = node.quasis[i]; + const isFirst = i === 0; + const isLast = i === numQuasis - 1; + const text = templateElement.value.cooked; + const lines = text.split("\n"); + const numLines = lines.length; + const expressionDoc = expressionDocs[i]; + const startsWithBlankLine = numLines > 2 && lines[0].trim() === "" && lines[1].trim() === ""; + const endsWithBlankLine = numLines > 2 && lines[numLines - 1].trim() === "" && lines[numLines - 2].trim() === ""; + const commentsAndWhitespaceOnly = lines.every((line) => /^\s*(?:#[^\n\r]*)?$/.test(line)); + if (!isLast && /#[^\n\r]*$/.test(lines[numLines - 1])) { + return null; + } + let doc2 = null; + if (commentsAndWhitespaceOnly) { + doc2 = printGraphqlComments(lines); + } else { + doc2 = textToDoc(text, { + parser: "graphql" + }, { + stripTrailingHardline: true + }); + } + if (doc2) { + doc2 = escapeTemplateCharacters(doc2, false); + if (!isFirst && startsWithBlankLine) { + parts.push(""); + } + parts.push(doc2); + if (!isLast && endsWithBlankLine) { + parts.push(""); + } + } else if (!isFirst && !isLast && startsWithBlankLine) { + parts.push(""); + } + if (expressionDoc) { + parts.push(expressionDoc); + } + } + return ["`", indent([hardline, join(hardline, parts)]), hardline, "`"]; + } + function printGraphqlComments(lines) { + const parts = []; + let seenComment = false; + const array = lines.map((textLine) => textLine.trim()); + for (const [i, textLine] of array.entries()) { + if (textLine === "") { + continue; + } + if (array[i - 1] === "" && seenComment) { + parts.push([hardline, textLine]); + } else { + parts.push(textLine); + } + seenComment = true; + } + return parts.length === 0 ? null : join(hardline, parts); + } + module2.exports = format; + } +}); +var require_html = __commonJS2({ + "src/language-js/embed/html.js"(exports2, module2) { + "use strict"; + var { + builders: { + indent, + line, + hardline, + group + }, + utils: { + mapDoc + } + } = require("./doc.js"); + var { + printTemplateExpressions, + uncookTemplateElementValue + } = require_template_literal(); + var htmlTemplateLiteralCounter = 0; + function format(path, print, textToDoc, options, { + parser + }) { + const node = path.getValue(); + const counter = htmlTemplateLiteralCounter; + htmlTemplateLiteralCounter = htmlTemplateLiteralCounter + 1 >>> 0; + const composePlaceholder = (index) => `PRETTIER_HTML_PLACEHOLDER_${index}_${counter}_IN_JS`; + const text = node.quasis.map((quasi, index, quasis) => index === quasis.length - 1 ? quasi.value.cooked : quasi.value.cooked + composePlaceholder(index)).join(""); + const expressionDocs = printTemplateExpressions(path, print); + if (expressionDocs.length === 0 && text.trim().length === 0) { + return "``"; + } + const placeholderRegex = new RegExp(composePlaceholder("(\\d+)"), "g"); + let topLevelCount = 0; + const doc2 = textToDoc(text, { + parser, + __onHtmlRoot(root) { + topLevelCount = root.children.length; + } + }, { + stripTrailingHardline: true + }); + const contentDoc = mapDoc(doc2, (doc3) => { + if (typeof doc3 !== "string") { + return doc3; + } + const parts = []; + const components = doc3.split(placeholderRegex); + for (let i = 0; i < components.length; i++) { + let component = components[i]; + if (i % 2 === 0) { + if (component) { + component = uncookTemplateElementValue(component); + if (options.__embeddedInHtml) { + component = component.replace(/<\/(script)\b/gi, "<\\/$1"); + } + parts.push(component); + } + continue; + } + const placeholderIndex = Number(component); + parts.push(expressionDocs[placeholderIndex]); + } + return parts; + }); + const leadingWhitespace = /^\s/.test(text) ? " " : ""; + const trailingWhitespace = /\s$/.test(text) ? " " : ""; + const linebreak = options.htmlWhitespaceSensitivity === "ignore" ? hardline : leadingWhitespace && trailingWhitespace ? line : null; + if (linebreak) { + return group(["`", indent([linebreak, group(contentDoc)]), linebreak, "`"]); + } + return group(["`", leadingWhitespace, topLevelCount > 1 ? indent(group(contentDoc)) : group(contentDoc), trailingWhitespace, "`"]); + } + module2.exports = format; + } +}); +var require_embed = __commonJS2({ + "src/language-js/embed.js"(exports2, module2) { + "use strict"; + var { + hasComment, + CommentCheckFlags, + isObjectProperty + } = require_utils7(); + var formatMarkdown = require_markdown(); + var formatCss = require_css(); + var formatGraphql = require_graphql(); + var formatHtml = require_html(); + function getLanguage(path) { + if (isStyledJsx(path) || isStyledComponents(path) || isCssProp(path) || isAngularComponentStyles(path)) { + return "css"; + } + if (isGraphQL(path)) { + return "graphql"; + } + if (isHtml(path)) { + return "html"; + } + if (isAngularComponentTemplate(path)) { + return "angular"; + } + if (isMarkdown(path)) { + return "markdown"; + } + } + function embed(path, print, textToDoc, options) { + const node = path.getValue(); + if (node.type !== "TemplateLiteral" || hasInvalidCookedValue(node)) { + return; + } + const language = getLanguage(path); + if (!language) { + return; + } + if (language === "markdown") { + return formatMarkdown(path, print, textToDoc); + } + if (language === "css") { + return formatCss(path, print, textToDoc); + } + if (language === "graphql") { + return formatGraphql(path, print, textToDoc); + } + if (language === "html" || language === "angular") { + return formatHtml(path, print, textToDoc, options, { + parser: language + }); + } + } + function isMarkdown(path) { + const node = path.getValue(); + const parent = path.getParentNode(); + return parent && parent.type === "TaggedTemplateExpression" && node.quasis.length === 1 && parent.tag.type === "Identifier" && (parent.tag.name === "md" || parent.tag.name === "markdown"); + } + function isStyledJsx(path) { + const node = path.getValue(); + const parent = path.getParentNode(); + const parentParent = path.getParentNode(1); + return parentParent && node.quasis && parent.type === "JSXExpressionContainer" && parentParent.type === "JSXElement" && parentParent.openingElement.name.name === "style" && parentParent.openingElement.attributes.some((attribute) => attribute.name.name === "jsx") || parent && parent.type === "TaggedTemplateExpression" && parent.tag.type === "Identifier" && parent.tag.name === "css" || parent && parent.type === "TaggedTemplateExpression" && parent.tag.type === "MemberExpression" && parent.tag.object.name === "css" && (parent.tag.property.name === "global" || parent.tag.property.name === "resolve"); + } + function isAngularComponentStyles(path) { + return path.match((node) => node.type === "TemplateLiteral", (node, name) => node.type === "ArrayExpression" && name === "elements", (node, name) => isObjectProperty(node) && node.key.type === "Identifier" && node.key.name === "styles" && name === "value", ...angularComponentObjectExpressionPredicates); + } + function isAngularComponentTemplate(path) { + return path.match((node) => node.type === "TemplateLiteral", (node, name) => isObjectProperty(node) && node.key.type === "Identifier" && node.key.name === "template" && name === "value", ...angularComponentObjectExpressionPredicates); + } + var angularComponentObjectExpressionPredicates = [(node, name) => node.type === "ObjectExpression" && name === "properties", (node, name) => node.type === "CallExpression" && node.callee.type === "Identifier" && node.callee.name === "Component" && name === "arguments", (node, name) => node.type === "Decorator" && name === "expression"]; + function isStyledComponents(path) { + const parent = path.getParentNode(); + if (!parent || parent.type !== "TaggedTemplateExpression") { + return false; + } + const tag = parent.tag.type === "ParenthesizedExpression" ? parent.tag.expression : parent.tag; + switch (tag.type) { + case "MemberExpression": + return isStyledIdentifier(tag.object) || isStyledExtend(tag); + case "CallExpression": + return isStyledIdentifier(tag.callee) || tag.callee.type === "MemberExpression" && (tag.callee.object.type === "MemberExpression" && (isStyledIdentifier(tag.callee.object.object) || isStyledExtend(tag.callee.object)) || tag.callee.object.type === "CallExpression" && isStyledIdentifier(tag.callee.object.callee)); + case "Identifier": + return tag.name === "css"; + default: + return false; + } + } + function isCssProp(path) { + const parent = path.getParentNode(); + const parentParent = path.getParentNode(1); + return parentParent && parent.type === "JSXExpressionContainer" && parentParent.type === "JSXAttribute" && parentParent.name.type === "JSXIdentifier" && parentParent.name.name === "css"; + } + function isStyledIdentifier(node) { + return node.type === "Identifier" && node.name === "styled"; + } + function isStyledExtend(node) { + return /^[A-Z]/.test(node.object.name) && node.property.name === "extend"; + } + function isGraphQL(path) { + const node = path.getValue(); + const parent = path.getParentNode(); + return hasLanguageComment(node, "GraphQL") || parent && (parent.type === "TaggedTemplateExpression" && (parent.tag.type === "MemberExpression" && parent.tag.object.name === "graphql" && parent.tag.property.name === "experimental" || parent.tag.type === "Identifier" && (parent.tag.name === "gql" || parent.tag.name === "graphql")) || parent.type === "CallExpression" && parent.callee.type === "Identifier" && parent.callee.name === "graphql"); + } + function hasLanguageComment(node, languageName) { + return hasComment(node, CommentCheckFlags.Block | CommentCheckFlags.Leading, ({ + value + }) => value === ` ${languageName} `); + } + function isHtml(path) { + return hasLanguageComment(path.getValue(), "HTML") || path.match((node) => node.type === "TemplateLiteral", (node, name) => node.type === "TaggedTemplateExpression" && node.tag.type === "Identifier" && node.tag.name === "html" && name === "quasi"); + } + function hasInvalidCookedValue({ + quasis + }) { + return quasis.some(({ + value: { + cooked + } + }) => cooked === null); + } + module2.exports = embed; + } +}); +var require_clean = __commonJS2({ + "src/language-js/clean.js"(exports2, module2) { + "use strict"; + var isBlockComment = require_is_block_comment(); + var ignoredProperties = /* @__PURE__ */ new Set(["range", "raw", "comments", "leadingComments", "trailingComments", "innerComments", "extra", "start", "end", "loc", "flags", "errors", "tokens"]); + var removeTemplateElementsValue = (node) => { + for (const templateElement of node.quasis) { + delete templateElement.value; + } + }; + function clean(ast, newObj, parent) { + if (ast.type === "Program") { + delete newObj.sourceType; + } + if (ast.type === "BigIntLiteral" || ast.type === "BigIntLiteralTypeAnnotation") { + if (newObj.value) { + newObj.value = newObj.value.toLowerCase(); + } + } + if (ast.type === "BigIntLiteral" || ast.type === "Literal") { + if (newObj.bigint) { + newObj.bigint = newObj.bigint.toLowerCase(); + } + } + if (ast.type === "DecimalLiteral") { + newObj.value = Number(newObj.value); + } + if (ast.type === "Literal" && newObj.decimal) { + newObj.decimal = Number(newObj.decimal); + } + if (ast.type === "EmptyStatement") { + return null; + } + if (ast.type === "JSXText") { + return null; + } + if (ast.type === "JSXExpressionContainer" && (ast.expression.type === "Literal" || ast.expression.type === "StringLiteral") && ast.expression.value === " ") { + return null; + } + if ((ast.type === "Property" || ast.type === "ObjectProperty" || ast.type === "MethodDefinition" || ast.type === "ClassProperty" || ast.type === "ClassMethod" || ast.type === "PropertyDefinition" || ast.type === "TSDeclareMethod" || ast.type === "TSPropertySignature" || ast.type === "ObjectTypeProperty") && typeof ast.key === "object" && ast.key && (ast.key.type === "Literal" || ast.key.type === "NumericLiteral" || ast.key.type === "StringLiteral" || ast.key.type === "Identifier")) { + delete newObj.key; + } + if (ast.type === "JSXElement" && ast.openingElement.name.name === "style" && ast.openingElement.attributes.some((attr) => attr.name.name === "jsx")) { + for (const { + type, + expression: expression2 + } of newObj.children) { + if (type === "JSXExpressionContainer" && expression2.type === "TemplateLiteral") { + removeTemplateElementsValue(expression2); + } + } + } + if (ast.type === "JSXAttribute" && ast.name.name === "css" && ast.value.type === "JSXExpressionContainer" && ast.value.expression.type === "TemplateLiteral") { + removeTemplateElementsValue(newObj.value.expression); + } + if (ast.type === "JSXAttribute" && ast.value && ast.value.type === "Literal" && /["']|"|'/.test(ast.value.value)) { + newObj.value.value = newObj.value.value.replace(/["']|"|'/g, '"'); + } + const expression = ast.expression || ast.callee; + if (ast.type === "Decorator" && expression.type === "CallExpression" && expression.callee.name === "Component" && expression.arguments.length === 1) { + const astProps = ast.expression.arguments[0].properties; + for (const [index, prop] of newObj.expression.arguments[0].properties.entries()) { + switch (astProps[index].key.name) { + case "styles": + if (prop.value.type === "ArrayExpression") { + removeTemplateElementsValue(prop.value.elements[0]); + } + break; + case "template": + if (prop.value.type === "TemplateLiteral") { + removeTemplateElementsValue(prop.value); + } + break; + } + } + } + if (ast.type === "TaggedTemplateExpression" && (ast.tag.type === "MemberExpression" || ast.tag.type === "Identifier" && (ast.tag.name === "gql" || ast.tag.name === "graphql" || ast.tag.name === "css" || ast.tag.name === "md" || ast.tag.name === "markdown" || ast.tag.name === "html") || ast.tag.type === "CallExpression")) { + removeTemplateElementsValue(newObj.quasi); + } + if (ast.type === "TemplateLiteral") { + var _ast$leadingComments; + const hasLanguageComment = (_ast$leadingComments = ast.leadingComments) === null || _ast$leadingComments === void 0 ? void 0 : _ast$leadingComments.some((comment) => isBlockComment(comment) && ["GraphQL", "HTML"].some((languageName) => comment.value === ` ${languageName} `)); + if (hasLanguageComment || parent.type === "CallExpression" && parent.callee.name === "graphql" || !ast.leadingComments) { + removeTemplateElementsValue(newObj); + } + } + if (ast.type === "InterpreterDirective") { + newObj.value = newObj.value.trimEnd(); + } + if ((ast.type === "TSIntersectionType" || ast.type === "TSUnionType") && ast.types.length === 1) { + return newObj.types[0]; + } + } + clean.ignoredProperties = ignoredProperties; + module2.exports = clean; + } +}); +var require_detect_newline = __commonJS2({ + "node_modules/detect-newline/index.js"(exports2, module2) { + "use strict"; + var detectNewline = (string) => { + if (typeof string !== "string") { + throw new TypeError("Expected a string"); + } + const newlines = string.match(/(?:\r?\n)/g) || []; + if (newlines.length === 0) { + return; + } + const crlf = newlines.filter((newline) => newline === "\r\n").length; + const lf = newlines.length - crlf; + return crlf > lf ? "\r\n" : "\n"; + }; + module2.exports = detectNewline; + module2.exports.graceful = (string) => typeof string === "string" && detectNewline(string) || "\n"; + } +}); +var require_build = __commonJS2({ + "node_modules/jest-docblock/build/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.extract = extract; + exports2.parse = parse; + exports2.parseWithComments = parseWithComments; + exports2.print = print; + exports2.strip = strip; + function _os() { + const data = require("os"); + _os = function() { + return data; + }; + return data; + } + function _detectNewline() { + const data = _interopRequireDefault(require_detect_newline()); + _detectNewline = function() { + return data; + }; + return data; + } + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + default: obj + }; + } + var commentEndRe = /\*\/$/; + var commentStartRe = /^\/\*\*?/; + var docblockRe = /^\s*(\/\*\*?(.|\r?\n)*?\*\/)/; + var lineCommentRe = /(^|\s+)\/\/([^\r\n]*)/g; + var ltrimNewlineRe = /^(\r?\n)+/; + var multilineRe = /(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g; + var propertyRe = /(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g; + var stringStartRe = /(\r?\n|^) *\* ?/g; + var STRING_ARRAY = []; + function extract(contents) { + const match = contents.match(docblockRe); + return match ? match[0].trimLeft() : ""; + } + function strip(contents) { + const match = contents.match(docblockRe); + return match && match[0] ? contents.substring(match[0].length) : contents; + } + function parse(docblock) { + return parseWithComments(docblock).pragmas; + } + function parseWithComments(docblock) { + const line = (0, _detectNewline().default)(docblock) || _os().EOL; + docblock = docblock.replace(commentStartRe, "").replace(commentEndRe, "").replace(stringStartRe, "$1"); + let prev = ""; + while (prev !== docblock) { + prev = docblock; + docblock = docblock.replace(multilineRe, `${line}$1 $2${line}`); + } + docblock = docblock.replace(ltrimNewlineRe, "").trimRight(); + const result = /* @__PURE__ */ Object.create(null); + const comments = docblock.replace(propertyRe, "").replace(ltrimNewlineRe, "").trimRight(); + let match; + while (match = propertyRe.exec(docblock)) { + const nextPragma = match[2].replace(lineCommentRe, ""); + if (typeof result[match[1]] === "string" || Array.isArray(result[match[1]])) { + result[match[1]] = STRING_ARRAY.concat(result[match[1]], nextPragma); + } else { + result[match[1]] = nextPragma; + } + } + return { + comments, + pragmas: result + }; + } + function print({ + comments = "", + pragmas = {} + }) { + const line = (0, _detectNewline().default)(comments) || _os().EOL; + const head = "/**"; + const start = " *"; + const tail = " */"; + const keys = Object.keys(pragmas); + const printedObject = keys.map((key) => printKeyValues(key, pragmas[key])).reduce((arr, next) => arr.concat(next), []).map((keyValue) => `${start} ${keyValue}${line}`).join(""); + if (!comments) { + if (keys.length === 0) { + return ""; + } + if (keys.length === 1 && !Array.isArray(pragmas[keys[0]])) { + const value = pragmas[keys[0]]; + return `${head} ${printKeyValues(keys[0], value)[0]}${tail}`; + } + } + const printedComments = comments.split(line).map((textLine) => `${start} ${textLine}`).join(line) + line; + return head + line + (comments ? printedComments : "") + (comments && keys.length ? start + line : "") + printedObject + tail; + } + function printKeyValues(key, valueOrArray) { + return STRING_ARRAY.concat(valueOrArray).map((value) => `@${key} ${value}`.trim()); + } + } +}); +var require_get_shebang = __commonJS2({ + "src/language-js/utils/get-shebang.js"(exports2, module2) { + "use strict"; + function getShebang(text) { + if (!text.startsWith("#!")) { + return ""; + } + const index = text.indexOf("\n"); + if (index === -1) { + return text; + } + return text.slice(0, index); + } + module2.exports = getShebang; + } +}); +var require_pragma = __commonJS2({ + "src/language-js/pragma.js"(exports2, module2) { + "use strict"; + var { + parseWithComments, + strip, + extract, + print + } = require_build(); + var { + normalizeEndOfLine + } = require_end_of_line(); + var getShebang = require_get_shebang(); + function parseDocBlock(text) { + const shebang = getShebang(text); + if (shebang) { + text = text.slice(shebang.length + 1); + } + const docBlock = extract(text); + const { + pragmas, + comments + } = parseWithComments(docBlock); + return { + shebang, + text, + pragmas, + comments + }; + } + function hasPragma(text) { + const pragmas = Object.keys(parseDocBlock(text).pragmas); + return pragmas.includes("prettier") || pragmas.includes("format"); + } + function insertPragma(originalText) { + const { + shebang, + text, + pragmas, + comments + } = parseDocBlock(originalText); + const strippedText = strip(text); + const docBlock = print({ + pragmas: Object.assign({ + format: "" + }, pragmas), + comments: comments.trimStart() + }); + return (shebang ? `${shebang} +` : "") + normalizeEndOfLine(docBlock) + (strippedText.startsWith("\n") ? "\n" : "\n\n") + strippedText; + } + module2.exports = { + hasPragma, + insertPragma + }; + } +}); +var require_is_type_cast_comment = __commonJS2({ + "src/language-js/utils/is-type-cast-comment.js"(exports2, module2) { + "use strict"; + var isBlockComment = require_is_block_comment(); + function isTypeCastComment(comment) { + return isBlockComment(comment) && comment.value[0] === "*" && /@(?:type|satisfies)\b/.test(comment.value); + } + module2.exports = isTypeCastComment; + } +}); +var require_comments2 = __commonJS2({ + "src/language-js/comments.js"(exports2, module2) { + "use strict"; + var { + getLast, + hasNewline, + getNextNonSpaceNonCommentCharacterIndexWithStartIndex, + getNextNonSpaceNonCommentCharacter, + hasNewlineInRange, + addLeadingComment, + addTrailingComment, + addDanglingComment, + getNextNonSpaceNonCommentCharacterIndex, + isNonEmptyArray + } = require_util(); + var { + getFunctionParameters, + isPrettierIgnoreComment, + isJsxNode, + hasFlowShorthandAnnotationComment, + hasFlowAnnotationComment, + hasIgnoreComment, + isCallLikeExpression, + getCallArguments, + isCallExpression, + isMemberExpression, + isObjectProperty, + isLineComment, + getComments, + CommentCheckFlags, + markerForIfWithoutBlockAndSameLineComment + } = require_utils7(); + var { + locStart, + locEnd + } = require_loc(); + var isBlockComment = require_is_block_comment(); + var isTypeCastComment = require_is_type_cast_comment(); + function handleOwnLineComment(context) { + return [handleIgnoreComments, handleLastFunctionArgComments, handleMemberExpressionComments, handleIfStatementComments, handleWhileComments, handleTryStatementComments, handleClassComments, handleForComments, handleUnionTypeComments, handleOnlyComments, handleModuleSpecifiersComments, handleAssignmentPatternComments, handleMethodNameComments, handleLabeledStatementComments, handleBreakAndContinueStatementComments].some((fn) => fn(context)); + } + function handleEndOfLineComment(context) { + return [handleClosureTypeCastComments, handleLastFunctionArgComments, handleConditionalExpressionComments, handleModuleSpecifiersComments, handleIfStatementComments, handleWhileComments, handleTryStatementComments, handleClassComments, handleLabeledStatementComments, handleCallExpressionComments, handlePropertyComments, handleOnlyComments, handleVariableDeclaratorComments, handleBreakAndContinueStatementComments, handleSwitchDefaultCaseComments].some((fn) => fn(context)); + } + function handleRemainingComment(context) { + return [handleIgnoreComments, handleIfStatementComments, handleWhileComments, handleObjectPropertyAssignment, handleCommentInEmptyParens, handleMethodNameComments, handleOnlyComments, handleCommentAfterArrowParams, handleFunctionNameComments, handleTSMappedTypeComments, handleBreakAndContinueStatementComments, handleTSFunctionTrailingComments].some((fn) => fn(context)); + } + function addBlockStatementFirstComment(node, comment) { + const firstNonEmptyNode = (node.body || node.properties).find(({ + type + }) => type !== "EmptyStatement"); + if (firstNonEmptyNode) { + addLeadingComment(firstNonEmptyNode, comment); + } else { + addDanglingComment(node, comment); + } + } + function addBlockOrNotComment(node, comment) { + if (node.type === "BlockStatement") { + addBlockStatementFirstComment(node, comment); + } else { + addLeadingComment(node, comment); + } + } + function handleClosureTypeCastComments({ + comment, + followingNode + }) { + if (followingNode && isTypeCastComment(comment)) { + addLeadingComment(followingNode, comment); + return true; + } + return false; + } + function handleIfStatementComments({ + comment, + precedingNode, + enclosingNode, + followingNode, + text + }) { + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) !== "IfStatement" || !followingNode) { + return false; + } + const nextCharacter = getNextNonSpaceNonCommentCharacter(text, comment, locEnd); + if (nextCharacter === ")") { + addTrailingComment(precedingNode, comment); + return true; + } + if (precedingNode === enclosingNode.consequent && followingNode === enclosingNode.alternate) { + if (precedingNode.type === "BlockStatement") { + addTrailingComment(precedingNode, comment); + } else { + const isSingleLineComment = comment.type === "SingleLine" || comment.loc.start.line === comment.loc.end.line; + const isSameLineComment = comment.loc.start.line === precedingNode.loc.start.line; + if (isSingleLineComment && isSameLineComment) { + addDanglingComment(precedingNode, comment, markerForIfWithoutBlockAndSameLineComment); + } else { + addDanglingComment(enclosingNode, comment); + } + } + return true; + } + if (followingNode.type === "BlockStatement") { + addBlockStatementFirstComment(followingNode, comment); + return true; + } + if (followingNode.type === "IfStatement") { + addBlockOrNotComment(followingNode.consequent, comment); + return true; + } + if (enclosingNode.consequent === followingNode) { + addLeadingComment(followingNode, comment); + return true; + } + return false; + } + function handleWhileComments({ + comment, + precedingNode, + enclosingNode, + followingNode, + text + }) { + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) !== "WhileStatement" || !followingNode) { + return false; + } + const nextCharacter = getNextNonSpaceNonCommentCharacter(text, comment, locEnd); + if (nextCharacter === ")") { + addTrailingComment(precedingNode, comment); + return true; + } + if (followingNode.type === "BlockStatement") { + addBlockStatementFirstComment(followingNode, comment); + return true; + } + if (enclosingNode.body === followingNode) { + addLeadingComment(followingNode, comment); + return true; + } + return false; + } + function handleTryStatementComments({ + comment, + precedingNode, + enclosingNode, + followingNode + }) { + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) !== "TryStatement" && (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) !== "CatchClause" || !followingNode) { + return false; + } + if (enclosingNode.type === "CatchClause" && precedingNode) { + addTrailingComment(precedingNode, comment); + return true; + } + if (followingNode.type === "BlockStatement") { + addBlockStatementFirstComment(followingNode, comment); + return true; + } + if (followingNode.type === "TryStatement") { + addBlockOrNotComment(followingNode.finalizer, comment); + return true; + } + if (followingNode.type === "CatchClause") { + addBlockOrNotComment(followingNode.body, comment); + return true; + } + return false; + } + function handleMemberExpressionComments({ + comment, + enclosingNode, + followingNode + }) { + if (isMemberExpression(enclosingNode) && (followingNode === null || followingNode === void 0 ? void 0 : followingNode.type) === "Identifier") { + addLeadingComment(enclosingNode, comment); + return true; + } + return false; + } + function handleConditionalExpressionComments({ + comment, + precedingNode, + enclosingNode, + followingNode, + text + }) { + const isSameLineAsPrecedingNode = precedingNode && !hasNewlineInRange(text, locEnd(precedingNode), locStart(comment)); + if ((!precedingNode || !isSameLineAsPrecedingNode) && ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "ConditionalExpression" || (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "TSConditionalType") && followingNode) { + addLeadingComment(followingNode, comment); + return true; + } + return false; + } + function handleObjectPropertyAssignment({ + comment, + precedingNode, + enclosingNode + }) { + if (isObjectProperty(enclosingNode) && enclosingNode.shorthand && enclosingNode.key === precedingNode && enclosingNode.value.type === "AssignmentPattern") { + addTrailingComment(enclosingNode.value.left, comment); + return true; + } + return false; + } + var classLikeNodeTypes = /* @__PURE__ */ new Set(["ClassDeclaration", "ClassExpression", "DeclareClass", "DeclareInterface", "InterfaceDeclaration", "TSInterfaceDeclaration"]); + function handleClassComments({ + comment, + precedingNode, + enclosingNode, + followingNode + }) { + if (classLikeNodeTypes.has(enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type)) { + if (isNonEmptyArray(enclosingNode.decorators) && !(followingNode && followingNode.type === "Decorator")) { + addTrailingComment(getLast(enclosingNode.decorators), comment); + return true; + } + if (enclosingNode.body && followingNode === enclosingNode.body) { + addBlockStatementFirstComment(enclosingNode.body, comment); + return true; + } + if (followingNode) { + if (enclosingNode.superClass && followingNode === enclosingNode.superClass && precedingNode && (precedingNode === enclosingNode.id || precedingNode === enclosingNode.typeParameters)) { + addTrailingComment(precedingNode, comment); + return true; + } + for (const prop of ["implements", "extends", "mixins"]) { + if (enclosingNode[prop] && followingNode === enclosingNode[prop][0]) { + if (precedingNode && (precedingNode === enclosingNode.id || precedingNode === enclosingNode.typeParameters || precedingNode === enclosingNode.superClass)) { + addTrailingComment(precedingNode, comment); + } else { + addDanglingComment(enclosingNode, comment, prop); + } + return true; + } + } + } + } + return false; + } + var propertyLikeNodeTypes = /* @__PURE__ */ new Set(["ClassMethod", "ClassProperty", "PropertyDefinition", "TSAbstractPropertyDefinition", "TSAbstractMethodDefinition", "TSDeclareMethod", "MethodDefinition", "ClassAccessorProperty", "AccessorProperty", "TSAbstractAccessorProperty"]); + function handleMethodNameComments({ + comment, + precedingNode, + enclosingNode, + text + }) { + if (enclosingNode && precedingNode && getNextNonSpaceNonCommentCharacter(text, comment, locEnd) === "(" && (enclosingNode.type === "Property" || enclosingNode.type === "TSDeclareMethod" || enclosingNode.type === "TSAbstractMethodDefinition") && precedingNode.type === "Identifier" && enclosingNode.key === precedingNode && getNextNonSpaceNonCommentCharacter(text, precedingNode, locEnd) !== ":") { + addTrailingComment(precedingNode, comment); + return true; + } + if ((precedingNode === null || precedingNode === void 0 ? void 0 : precedingNode.type) === "Decorator" && propertyLikeNodeTypes.has(enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type)) { + addTrailingComment(precedingNode, comment); + return true; + } + return false; + } + var functionLikeNodeTypes = /* @__PURE__ */ new Set(["FunctionDeclaration", "FunctionExpression", "ClassMethod", "MethodDefinition", "ObjectMethod"]); + function handleFunctionNameComments({ + comment, + precedingNode, + enclosingNode, + text + }) { + if (getNextNonSpaceNonCommentCharacter(text, comment, locEnd) !== "(") { + return false; + } + if (precedingNode && functionLikeNodeTypes.has(enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type)) { + addTrailingComment(precedingNode, comment); + return true; + } + return false; + } + function handleCommentAfterArrowParams({ + comment, + enclosingNode, + text + }) { + if (!((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "ArrowFunctionExpression")) { + return false; + } + const index = getNextNonSpaceNonCommentCharacterIndex(text, comment, locEnd); + if (index !== false && text.slice(index, index + 2) === "=>") { + addDanglingComment(enclosingNode, comment); + return true; + } + return false; + } + function handleCommentInEmptyParens({ + comment, + enclosingNode, + text + }) { + if (getNextNonSpaceNonCommentCharacter(text, comment, locEnd) !== ")") { + return false; + } + if (enclosingNode && (isRealFunctionLikeNode(enclosingNode) && getFunctionParameters(enclosingNode).length === 0 || isCallLikeExpression(enclosingNode) && getCallArguments(enclosingNode).length === 0)) { + addDanglingComment(enclosingNode, comment); + return true; + } + if (((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "MethodDefinition" || (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "TSAbstractMethodDefinition") && getFunctionParameters(enclosingNode.value).length === 0) { + addDanglingComment(enclosingNode.value, comment); + return true; + } + return false; + } + function handleLastFunctionArgComments({ + comment, + precedingNode, + enclosingNode, + followingNode, + text + }) { + if ((precedingNode === null || precedingNode === void 0 ? void 0 : precedingNode.type) === "FunctionTypeParam" && (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "FunctionTypeAnnotation" && (followingNode === null || followingNode === void 0 ? void 0 : followingNode.type) !== "FunctionTypeParam") { + addTrailingComment(precedingNode, comment); + return true; + } + if (((precedingNode === null || precedingNode === void 0 ? void 0 : precedingNode.type) === "Identifier" || (precedingNode === null || precedingNode === void 0 ? void 0 : precedingNode.type) === "AssignmentPattern") && enclosingNode && isRealFunctionLikeNode(enclosingNode) && getNextNonSpaceNonCommentCharacter(text, comment, locEnd) === ")") { + addTrailingComment(precedingNode, comment); + return true; + } + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "FunctionDeclaration" && (followingNode === null || followingNode === void 0 ? void 0 : followingNode.type) === "BlockStatement") { + const functionParamRightParenIndex = (() => { + const parameters = getFunctionParameters(enclosingNode); + if (parameters.length > 0) { + return getNextNonSpaceNonCommentCharacterIndexWithStartIndex(text, locEnd(getLast(parameters))); + } + const functionParamLeftParenIndex = getNextNonSpaceNonCommentCharacterIndexWithStartIndex(text, locEnd(enclosingNode.id)); + return functionParamLeftParenIndex !== false && getNextNonSpaceNonCommentCharacterIndexWithStartIndex(text, functionParamLeftParenIndex + 1); + })(); + if (locStart(comment) > functionParamRightParenIndex) { + addBlockStatementFirstComment(followingNode, comment); + return true; + } + } + return false; + } + function handleLabeledStatementComments({ + comment, + enclosingNode + }) { + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "LabeledStatement") { + addLeadingComment(enclosingNode, comment); + return true; + } + return false; + } + function handleBreakAndContinueStatementComments({ + comment, + enclosingNode + }) { + if (((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "ContinueStatement" || (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "BreakStatement") && !enclosingNode.label) { + addTrailingComment(enclosingNode, comment); + return true; + } + return false; + } + function handleCallExpressionComments({ + comment, + precedingNode, + enclosingNode + }) { + if (isCallExpression(enclosingNode) && precedingNode && enclosingNode.callee === precedingNode && enclosingNode.arguments.length > 0) { + addLeadingComment(enclosingNode.arguments[0], comment); + return true; + } + return false; + } + function handleUnionTypeComments({ + comment, + precedingNode, + enclosingNode, + followingNode + }) { + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "UnionTypeAnnotation" || (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "TSUnionType") { + if (isPrettierIgnoreComment(comment)) { + followingNode.prettierIgnore = true; + comment.unignore = true; + } + if (precedingNode) { + addTrailingComment(precedingNode, comment); + return true; + } + return false; + } + if (((followingNode === null || followingNode === void 0 ? void 0 : followingNode.type) === "UnionTypeAnnotation" || (followingNode === null || followingNode === void 0 ? void 0 : followingNode.type) === "TSUnionType") && isPrettierIgnoreComment(comment)) { + followingNode.types[0].prettierIgnore = true; + comment.unignore = true; + } + return false; + } + function handlePropertyComments({ + comment, + enclosingNode + }) { + if (isObjectProperty(enclosingNode)) { + addLeadingComment(enclosingNode, comment); + return true; + } + return false; + } + function handleOnlyComments({ + comment, + enclosingNode, + followingNode, + ast, + isLastComment + }) { + if (ast && ast.body && ast.body.length === 0) { + if (isLastComment) { + addDanglingComment(ast, comment); + } else { + addLeadingComment(ast, comment); + } + return true; + } + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "Program" && (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.body.length) === 0 && !isNonEmptyArray(enclosingNode.directives)) { + if (isLastComment) { + addDanglingComment(enclosingNode, comment); + } else { + addLeadingComment(enclosingNode, comment); + } + return true; + } + if ((followingNode === null || followingNode === void 0 ? void 0 : followingNode.type) === "Program" && (followingNode === null || followingNode === void 0 ? void 0 : followingNode.body.length) === 0 && (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "ModuleExpression") { + addDanglingComment(followingNode, comment); + return true; + } + return false; + } + function handleForComments({ + comment, + enclosingNode + }) { + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "ForInStatement" || (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "ForOfStatement") { + addLeadingComment(enclosingNode, comment); + return true; + } + return false; + } + function handleModuleSpecifiersComments({ + comment, + precedingNode, + enclosingNode, + text + }) { + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "ImportSpecifier" || (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "ExportSpecifier") { + addLeadingComment(enclosingNode, comment); + return true; + } + const isImportDeclaration = (precedingNode === null || precedingNode === void 0 ? void 0 : precedingNode.type) === "ImportSpecifier" && (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "ImportDeclaration"; + const isExportDeclaration = (precedingNode === null || precedingNode === void 0 ? void 0 : precedingNode.type) === "ExportSpecifier" && (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "ExportNamedDeclaration"; + if ((isImportDeclaration || isExportDeclaration) && hasNewline(text, locEnd(comment))) { + addTrailingComment(precedingNode, comment); + return true; + } + return false; + } + function handleAssignmentPatternComments({ + comment, + enclosingNode + }) { + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "AssignmentPattern") { + addLeadingComment(enclosingNode, comment); + return true; + } + return false; + } + var assignmentLikeNodeTypes = /* @__PURE__ */ new Set(["VariableDeclarator", "AssignmentExpression", "TypeAlias", "TSTypeAliasDeclaration"]); + var complexExprNodeTypes = /* @__PURE__ */ new Set(["ObjectExpression", "ArrayExpression", "TemplateLiteral", "TaggedTemplateExpression", "ObjectTypeAnnotation", "TSTypeLiteral"]); + function handleVariableDeclaratorComments({ + comment, + enclosingNode, + followingNode + }) { + if (assignmentLikeNodeTypes.has(enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) && followingNode && (complexExprNodeTypes.has(followingNode.type) || isBlockComment(comment))) { + addLeadingComment(followingNode, comment); + return true; + } + return false; + } + function handleTSFunctionTrailingComments({ + comment, + enclosingNode, + followingNode, + text + }) { + if (!followingNode && ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "TSMethodSignature" || (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "TSDeclareFunction" || (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "TSAbstractMethodDefinition") && getNextNonSpaceNonCommentCharacter(text, comment, locEnd) === ";") { + addTrailingComment(enclosingNode, comment); + return true; + } + return false; + } + function handleIgnoreComments({ + comment, + enclosingNode, + followingNode + }) { + if (isPrettierIgnoreComment(comment) && (enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) === "TSMappedType" && (followingNode === null || followingNode === void 0 ? void 0 : followingNode.type) === "TSTypeParameter" && followingNode.constraint) { + enclosingNode.prettierIgnore = true; + comment.unignore = true; + return true; + } + } + function handleTSMappedTypeComments({ + comment, + precedingNode, + enclosingNode, + followingNode + }) { + if ((enclosingNode === null || enclosingNode === void 0 ? void 0 : enclosingNode.type) !== "TSMappedType") { + return false; + } + if ((followingNode === null || followingNode === void 0 ? void 0 : followingNode.type) === "TSTypeParameter" && followingNode.name) { + addLeadingComment(followingNode.name, comment); + return true; + } + if ((precedingNode === null || precedingNode === void 0 ? void 0 : precedingNode.type) === "TSTypeParameter" && precedingNode.constraint) { + addTrailingComment(precedingNode.constraint, comment); + return true; + } + return false; + } + function handleSwitchDefaultCaseComments({ + comment, + enclosingNode, + followingNode + }) { + if (!enclosingNode || enclosingNode.type !== "SwitchCase" || enclosingNode.test || !followingNode || followingNode !== enclosingNode.consequent[0]) { + return false; + } + if (followingNode.type === "BlockStatement" && isLineComment(comment)) { + addBlockStatementFirstComment(followingNode, comment); + } else { + addDanglingComment(enclosingNode, comment); + } + return true; + } + function isRealFunctionLikeNode(node) { + return node.type === "ArrowFunctionExpression" || node.type === "FunctionExpression" || node.type === "FunctionDeclaration" || node.type === "ObjectMethod" || node.type === "ClassMethod" || node.type === "TSDeclareFunction" || node.type === "TSCallSignatureDeclaration" || node.type === "TSConstructSignatureDeclaration" || node.type === "TSMethodSignature" || node.type === "TSConstructorType" || node.type === "TSFunctionType" || node.type === "TSDeclareMethod"; + } + function getCommentChildNodes(node, options) { + if ((options.parser === "typescript" || options.parser === "flow" || options.parser === "acorn" || options.parser === "espree" || options.parser === "meriyah" || options.parser === "__babel_estree") && node.type === "MethodDefinition" && node.value && node.value.type === "FunctionExpression" && getFunctionParameters(node.value).length === 0 && !node.value.returnType && !isNonEmptyArray(node.value.typeParameters) && node.value.body) { + return [...node.decorators || [], node.key, node.value.body]; + } + } + function willPrintOwnComments(path) { + const node = path.getValue(); + const parent = path.getParentNode(); + const hasFlowAnnotations = (node2) => hasFlowAnnotationComment(getComments(node2, CommentCheckFlags.Leading)) || hasFlowAnnotationComment(getComments(node2, CommentCheckFlags.Trailing)); + return (node && (isJsxNode(node) || hasFlowShorthandAnnotationComment(node) || isCallExpression(parent) && hasFlowAnnotations(node)) || parent && (parent.type === "JSXSpreadAttribute" || parent.type === "JSXSpreadChild" || parent.type === "UnionTypeAnnotation" || parent.type === "TSUnionType" || (parent.type === "ClassDeclaration" || parent.type === "ClassExpression") && parent.superClass === node)) && (!hasIgnoreComment(path) || parent.type === "UnionTypeAnnotation" || parent.type === "TSUnionType"); + } + module2.exports = { + handleOwnLineComment, + handleEndOfLineComment, + handleRemainingComment, + getCommentChildNodes, + willPrintOwnComments + }; + } +}); +var require_needs_parens = __commonJS2({ + "src/language-js/needs-parens.js"(exports2, module2) { + "use strict"; + var getLast = require_get_last(); + var isNonEmptyArray = require_is_non_empty_array(); + var { + getFunctionParameters, + getLeftSidePathName, + hasFlowShorthandAnnotationComment, + hasNakedLeftSide, + hasNode, + isBitwiseOperator, + startsWithNoLookaheadToken, + shouldFlatten, + getPrecedence, + isCallExpression, + isMemberExpression, + isObjectProperty, + isTSTypeExpression + } = require_utils7(); + function needsParens(path, options) { + const parent = path.getParentNode(); + if (!parent) { + return false; + } + const name = path.getName(); + const node = path.getNode(); + if (options.__isInHtmlInterpolation && !options.bracketSpacing && endsWithRightBracket(node) && isFollowedByRightBracket(path)) { + return true; + } + if (isStatement(node)) { + return false; + } + if (options.parser !== "flow" && hasFlowShorthandAnnotationComment(path.getValue())) { + return true; + } + if (node.type === "Identifier") { + if (node.extra && node.extra.parenthesized && /^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/.test(node.name)) { + return true; + } + if (name === "left" && (node.name === "async" && !parent.await || node.name === "let") && parent.type === "ForOfStatement") { + return true; + } + if (node.name === "let") { + var _path$findAncestor; + const expression = (_path$findAncestor = path.findAncestor((node2) => node2.type === "ForOfStatement")) === null || _path$findAncestor === void 0 ? void 0 : _path$findAncestor.left; + if (expression && startsWithNoLookaheadToken(expression, (leftmostNode) => leftmostNode === node)) { + return true; + } + } + if (name === "object" && node.name === "let" && parent.type === "MemberExpression" && parent.computed && !parent.optional) { + const statement = path.findAncestor((node2) => node2.type === "ExpressionStatement" || node2.type === "ForStatement" || node2.type === "ForInStatement"); + const expression = !statement ? void 0 : statement.type === "ExpressionStatement" ? statement.expression : statement.type === "ForStatement" ? statement.init : statement.left; + if (expression && startsWithNoLookaheadToken(expression, (leftmostNode) => leftmostNode === node)) { + return true; + } + } + return false; + } + if (node.type === "ObjectExpression" || node.type === "FunctionExpression" || node.type === "ClassExpression" || node.type === "DoExpression") { + var _path$findAncestor2; + const expression = (_path$findAncestor2 = path.findAncestor((node2) => node2.type === "ExpressionStatement")) === null || _path$findAncestor2 === void 0 ? void 0 : _path$findAncestor2.expression; + if (expression && startsWithNoLookaheadToken(expression, (leftmostNode) => leftmostNode === node)) { + return true; + } + } + switch (parent.type) { + case "ParenthesizedExpression": + return false; + case "ClassDeclaration": + case "ClassExpression": { + if (name === "superClass" && (node.type === "ArrowFunctionExpression" || node.type === "AssignmentExpression" || node.type === "AwaitExpression" || node.type === "BinaryExpression" || node.type === "ConditionalExpression" || node.type === "LogicalExpression" || node.type === "NewExpression" || node.type === "ObjectExpression" || node.type === "SequenceExpression" || node.type === "TaggedTemplateExpression" || node.type === "UnaryExpression" || node.type === "UpdateExpression" || node.type === "YieldExpression" || node.type === "TSNonNullExpression")) { + return true; + } + break; + } + case "ExportDefaultDeclaration": { + return shouldWrapFunctionForExportDefault(path, options) || node.type === "SequenceExpression"; + } + case "Decorator": { + if (name === "expression") { + if (isMemberExpression(node) && node.computed) { + return true; + } + let hasCallExpression = false; + let hasMemberExpression = false; + let current = node; + while (current) { + switch (current.type) { + case "MemberExpression": + hasMemberExpression = true; + current = current.object; + break; + case "CallExpression": + if (hasMemberExpression || hasCallExpression) { + return options.parser !== "typescript"; + } + hasCallExpression = true; + current = current.callee; + break; + case "Identifier": + return false; + case "TaggedTemplateExpression": + return options.parser !== "typescript"; + default: + return true; + } + } + return true; + } + break; + } + case "ArrowFunctionExpression": { + if (name === "body" && node.type !== "SequenceExpression" && startsWithNoLookaheadToken(node, (node2) => node2.type === "ObjectExpression")) { + return true; + } + break; + } + } + switch (node.type) { + case "UpdateExpression": + if (parent.type === "UnaryExpression") { + return node.prefix && (node.operator === "++" && parent.operator === "+" || node.operator === "--" && parent.operator === "-"); + } + case "UnaryExpression": + switch (parent.type) { + case "UnaryExpression": + return node.operator === parent.operator && (node.operator === "+" || node.operator === "-"); + case "BindExpression": + return true; + case "MemberExpression": + case "OptionalMemberExpression": + return name === "object"; + case "TaggedTemplateExpression": + return true; + case "NewExpression": + case "CallExpression": + case "OptionalCallExpression": + return name === "callee"; + case "BinaryExpression": + return name === "left" && parent.operator === "**"; + case "TSNonNullExpression": + return true; + default: + return false; + } + case "BinaryExpression": { + if (parent.type === "UpdateExpression") { + return true; + } + if (node.operator === "in" && isPathInForStatementInitializer(path)) { + return true; + } + if (node.operator === "|>" && node.extra && node.extra.parenthesized) { + const grandParent = path.getParentNode(1); + if (grandParent.type === "BinaryExpression" && grandParent.operator === "|>") { + return true; + } + } + } + case "TSTypeAssertion": + case "TSAsExpression": + case "TSSatisfiesExpression": + case "LogicalExpression": + switch (parent.type) { + case "TSSatisfiesExpression": + case "TSAsExpression": + return !isTSTypeExpression(node); + case "ConditionalExpression": + return isTSTypeExpression(node); + case "CallExpression": + case "NewExpression": + case "OptionalCallExpression": + return name === "callee"; + case "ClassExpression": + case "ClassDeclaration": + return name === "superClass"; + case "TSTypeAssertion": + case "TaggedTemplateExpression": + case "UnaryExpression": + case "JSXSpreadAttribute": + case "SpreadElement": + case "SpreadProperty": + case "BindExpression": + case "AwaitExpression": + case "TSNonNullExpression": + case "UpdateExpression": + return true; + case "MemberExpression": + case "OptionalMemberExpression": + return name === "object"; + case "AssignmentExpression": + case "AssignmentPattern": + return name === "left" && (node.type === "TSTypeAssertion" || isTSTypeExpression(node)); + case "LogicalExpression": + if (node.type === "LogicalExpression") { + return parent.operator !== node.operator; + } + case "BinaryExpression": { + const { + operator, + type + } = node; + if (!operator && type !== "TSTypeAssertion") { + return true; + } + const precedence = getPrecedence(operator); + const parentOperator = parent.operator; + const parentPrecedence = getPrecedence(parentOperator); + if (parentPrecedence > precedence) { + return true; + } + if (name === "right" && parentPrecedence === precedence) { + return true; + } + if (parentPrecedence === precedence && !shouldFlatten(parentOperator, operator)) { + return true; + } + if (parentPrecedence < precedence && operator === "%") { + return parentOperator === "+" || parentOperator === "-"; + } + if (isBitwiseOperator(parentOperator)) { + return true; + } + return false; + } + default: + return false; + } + case "SequenceExpression": + switch (parent.type) { + case "ReturnStatement": + return false; + case "ForStatement": + return false; + case "ExpressionStatement": + return name !== "expression"; + case "ArrowFunctionExpression": + return name !== "body"; + default: + return true; + } + case "YieldExpression": + if (parent.type === "UnaryExpression" || parent.type === "AwaitExpression" || isTSTypeExpression(parent) || parent.type === "TSNonNullExpression") { + return true; + } + case "AwaitExpression": + switch (parent.type) { + case "TaggedTemplateExpression": + case "UnaryExpression": + case "LogicalExpression": + case "SpreadElement": + case "SpreadProperty": + case "TSAsExpression": + case "TSSatisfiesExpression": + case "TSNonNullExpression": + case "BindExpression": + return true; + case "MemberExpression": + case "OptionalMemberExpression": + return name === "object"; + case "NewExpression": + case "CallExpression": + case "OptionalCallExpression": + return name === "callee"; + case "ConditionalExpression": + return name === "test"; + case "BinaryExpression": { + if (!node.argument && parent.operator === "|>") { + return false; + } + return true; + } + default: + return false; + } + case "TSConditionalType": + case "TSFunctionType": + case "TSConstructorType": + if (name === "extendsType" && parent.type === "TSConditionalType") { + if (node.type === "TSConditionalType") { + return true; + } + let { + typeAnnotation + } = node.returnType || node.typeAnnotation; + if (typeAnnotation.type === "TSTypePredicate" && typeAnnotation.typeAnnotation) { + typeAnnotation = typeAnnotation.typeAnnotation.typeAnnotation; + } + if (typeAnnotation.type === "TSInferType" && typeAnnotation.typeParameter.constraint) { + return true; + } + } + if (name === "checkType" && parent.type === "TSConditionalType") { + return true; + } + case "TSUnionType": + case "TSIntersectionType": + if ((parent.type === "TSUnionType" || parent.type === "TSIntersectionType") && parent.types.length > 1 && (!node.types || node.types.length > 1)) { + return true; + } + case "TSInferType": + if (node.type === "TSInferType" && parent.type === "TSRestType") { + return false; + } + case "TSTypeOperator": + return parent.type === "TSArrayType" || parent.type === "TSOptionalType" || parent.type === "TSRestType" || name === "objectType" && parent.type === "TSIndexedAccessType" || parent.type === "TSTypeOperator" || parent.type === "TSTypeAnnotation" && path.getParentNode(1).type.startsWith("TSJSDoc"); + case "TSTypeQuery": + return name === "objectType" && parent.type === "TSIndexedAccessType" || name === "elementType" && parent.type === "TSArrayType"; + case "TypeofTypeAnnotation": + return name === "objectType" && (parent.type === "IndexedAccessType" || parent.type === "OptionalIndexedAccessType") || name === "elementType" && parent.type === "ArrayTypeAnnotation"; + case "ArrayTypeAnnotation": + return parent.type === "NullableTypeAnnotation"; + case "IntersectionTypeAnnotation": + case "UnionTypeAnnotation": + return parent.type === "ArrayTypeAnnotation" || parent.type === "NullableTypeAnnotation" || parent.type === "IntersectionTypeAnnotation" || parent.type === "UnionTypeAnnotation" || name === "objectType" && (parent.type === "IndexedAccessType" || parent.type === "OptionalIndexedAccessType"); + case "NullableTypeAnnotation": + return parent.type === "ArrayTypeAnnotation" || name === "objectType" && (parent.type === "IndexedAccessType" || parent.type === "OptionalIndexedAccessType"); + case "FunctionTypeAnnotation": { + const ancestor = parent.type === "NullableTypeAnnotation" ? path.getParentNode(1) : parent; + return ancestor.type === "UnionTypeAnnotation" || ancestor.type === "IntersectionTypeAnnotation" || ancestor.type === "ArrayTypeAnnotation" || name === "objectType" && (ancestor.type === "IndexedAccessType" || ancestor.type === "OptionalIndexedAccessType") || ancestor.type === "NullableTypeAnnotation" || parent.type === "FunctionTypeParam" && parent.name === null && getFunctionParameters(node).some((param) => param.typeAnnotation && param.typeAnnotation.type === "NullableTypeAnnotation"); + } + case "OptionalIndexedAccessType": + return name === "objectType" && parent.type === "IndexedAccessType"; + case "StringLiteral": + case "NumericLiteral": + case "Literal": + if (typeof node.value === "string" && parent.type === "ExpressionStatement" && !parent.directive) { + const grandParent = path.getParentNode(1); + return grandParent.type === "Program" || grandParent.type === "BlockStatement"; + } + return name === "object" && parent.type === "MemberExpression" && typeof node.value === "number"; + case "AssignmentExpression": { + const grandParent = path.getParentNode(1); + if (name === "body" && parent.type === "ArrowFunctionExpression") { + return true; + } + if (name === "key" && (parent.type === "ClassProperty" || parent.type === "PropertyDefinition") && parent.computed) { + return false; + } + if ((name === "init" || name === "update") && parent.type === "ForStatement") { + return false; + } + if (parent.type === "ExpressionStatement") { + return node.left.type === "ObjectPattern"; + } + if (name === "key" && parent.type === "TSPropertySignature") { + return false; + } + if (parent.type === "AssignmentExpression") { + return false; + } + if (parent.type === "SequenceExpression" && grandParent && grandParent.type === "ForStatement" && (grandParent.init === parent || grandParent.update === parent)) { + return false; + } + if (name === "value" && parent.type === "Property" && grandParent && grandParent.type === "ObjectPattern" && grandParent.properties.includes(parent)) { + return false; + } + if (parent.type === "NGChainedExpression") { + return false; + } + return true; + } + case "ConditionalExpression": + switch (parent.type) { + case "TaggedTemplateExpression": + case "UnaryExpression": + case "SpreadElement": + case "SpreadProperty": + case "BinaryExpression": + case "LogicalExpression": + case "NGPipeExpression": + case "ExportDefaultDeclaration": + case "AwaitExpression": + case "JSXSpreadAttribute": + case "TSTypeAssertion": + case "TypeCastExpression": + case "TSAsExpression": + case "TSSatisfiesExpression": + case "TSNonNullExpression": + return true; + case "NewExpression": + case "CallExpression": + case "OptionalCallExpression": + return name === "callee"; + case "ConditionalExpression": + return name === "test"; + case "MemberExpression": + case "OptionalMemberExpression": + return name === "object"; + default: + return false; + } + case "FunctionExpression": + switch (parent.type) { + case "NewExpression": + case "CallExpression": + case "OptionalCallExpression": + return name === "callee"; + case "TaggedTemplateExpression": + return true; + default: + return false; + } + case "ArrowFunctionExpression": + switch (parent.type) { + case "BinaryExpression": + return parent.operator !== "|>" || node.extra && node.extra.parenthesized; + case "NewExpression": + case "CallExpression": + case "OptionalCallExpression": + return name === "callee"; + case "MemberExpression": + case "OptionalMemberExpression": + return name === "object"; + case "TSAsExpression": + case "TSSatisfiesExpression": + case "TSNonNullExpression": + case "BindExpression": + case "TaggedTemplateExpression": + case "UnaryExpression": + case "LogicalExpression": + case "AwaitExpression": + case "TSTypeAssertion": + return true; + case "ConditionalExpression": + return name === "test"; + default: + return false; + } + case "ClassExpression": + if (isNonEmptyArray(node.decorators)) { + return true; + } + switch (parent.type) { + case "NewExpression": + return name === "callee"; + default: + return false; + } + case "OptionalMemberExpression": + case "OptionalCallExpression": { + const parentParent = path.getParentNode(1); + if (name === "object" && parent.type === "MemberExpression" || name === "callee" && (parent.type === "CallExpression" || parent.type === "NewExpression") || parent.type === "TSNonNullExpression" && parentParent.type === "MemberExpression" && parentParent.object === parent) { + return true; + } + } + case "CallExpression": + case "MemberExpression": + case "TaggedTemplateExpression": + case "TSNonNullExpression": + if (name === "callee" && (parent.type === "BindExpression" || parent.type === "NewExpression")) { + let object = node; + while (object) { + switch (object.type) { + case "CallExpression": + case "OptionalCallExpression": + return true; + case "MemberExpression": + case "OptionalMemberExpression": + case "BindExpression": + object = object.object; + break; + case "TaggedTemplateExpression": + object = object.tag; + break; + case "TSNonNullExpression": + object = object.expression; + break; + default: + return false; + } + } + } + return false; + case "BindExpression": + return name === "callee" && (parent.type === "BindExpression" || parent.type === "NewExpression") || name === "object" && isMemberExpression(parent); + case "NGPipeExpression": + if (parent.type === "NGRoot" || parent.type === "NGMicrosyntaxExpression" || parent.type === "ObjectProperty" && !(node.extra && node.extra.parenthesized) || parent.type === "ArrayExpression" || isCallExpression(parent) && parent.arguments[name] === node || name === "right" && parent.type === "NGPipeExpression" || name === "property" && parent.type === "MemberExpression" || parent.type === "AssignmentExpression") { + return false; + } + return true; + case "JSXFragment": + case "JSXElement": + return name === "callee" || name === "left" && parent.type === "BinaryExpression" && parent.operator === "<" || parent.type !== "ArrayExpression" && parent.type !== "ArrowFunctionExpression" && parent.type !== "AssignmentExpression" && parent.type !== "AssignmentPattern" && parent.type !== "BinaryExpression" && parent.type !== "NewExpression" && parent.type !== "ConditionalExpression" && parent.type !== "ExpressionStatement" && parent.type !== "JsExpressionRoot" && parent.type !== "JSXAttribute" && parent.type !== "JSXElement" && parent.type !== "JSXExpressionContainer" && parent.type !== "JSXFragment" && parent.type !== "LogicalExpression" && !isCallExpression(parent) && !isObjectProperty(parent) && parent.type !== "ReturnStatement" && parent.type !== "ThrowStatement" && parent.type !== "TypeCastExpression" && parent.type !== "VariableDeclarator" && parent.type !== "YieldExpression"; + case "TypeAnnotation": + return name === "returnType" && parent.type === "ArrowFunctionExpression" && includesFunctionTypeInObjectType(node); + } + return false; + } + function isStatement(node) { + return node.type === "BlockStatement" || node.type === "BreakStatement" || node.type === "ClassBody" || node.type === "ClassDeclaration" || node.type === "ClassMethod" || node.type === "ClassProperty" || node.type === "PropertyDefinition" || node.type === "ClassPrivateProperty" || node.type === "ContinueStatement" || node.type === "DebuggerStatement" || node.type === "DeclareClass" || node.type === "DeclareExportAllDeclaration" || node.type === "DeclareExportDeclaration" || node.type === "DeclareFunction" || node.type === "DeclareInterface" || node.type === "DeclareModule" || node.type === "DeclareModuleExports" || node.type === "DeclareVariable" || node.type === "DoWhileStatement" || node.type === "EnumDeclaration" || node.type === "ExportAllDeclaration" || node.type === "ExportDefaultDeclaration" || node.type === "ExportNamedDeclaration" || node.type === "ExpressionStatement" || node.type === "ForInStatement" || node.type === "ForOfStatement" || node.type === "ForStatement" || node.type === "FunctionDeclaration" || node.type === "IfStatement" || node.type === "ImportDeclaration" || node.type === "InterfaceDeclaration" || node.type === "LabeledStatement" || node.type === "MethodDefinition" || node.type === "ReturnStatement" || node.type === "SwitchStatement" || node.type === "ThrowStatement" || node.type === "TryStatement" || node.type === "TSDeclareFunction" || node.type === "TSEnumDeclaration" || node.type === "TSImportEqualsDeclaration" || node.type === "TSInterfaceDeclaration" || node.type === "TSModuleDeclaration" || node.type === "TSNamespaceExportDeclaration" || node.type === "TypeAlias" || node.type === "VariableDeclaration" || node.type === "WhileStatement" || node.type === "WithStatement"; + } + function isPathInForStatementInitializer(path) { + let i = 0; + let node = path.getValue(); + while (node) { + const parent = path.getParentNode(i++); + if (parent && parent.type === "ForStatement" && parent.init === node) { + return true; + } + node = parent; + } + return false; + } + function includesFunctionTypeInObjectType(node) { + return hasNode(node, (n1) => n1.type === "ObjectTypeAnnotation" && hasNode(n1, (n2) => n2.type === "FunctionTypeAnnotation" || void 0) || void 0); + } + function endsWithRightBracket(node) { + switch (node.type) { + case "ObjectExpression": + return true; + default: + return false; + } + } + function isFollowedByRightBracket(path) { + const node = path.getValue(); + const parent = path.getParentNode(); + const name = path.getName(); + switch (parent.type) { + case "NGPipeExpression": + if (typeof name === "number" && parent.arguments[name] === node && parent.arguments.length - 1 === name) { + return path.callParent(isFollowedByRightBracket); + } + break; + case "ObjectProperty": + if (name === "value") { + const parentParent = path.getParentNode(1); + return getLast(parentParent.properties) === parent; + } + break; + case "BinaryExpression": + case "LogicalExpression": + if (name === "right") { + return path.callParent(isFollowedByRightBracket); + } + break; + case "ConditionalExpression": + if (name === "alternate") { + return path.callParent(isFollowedByRightBracket); + } + break; + case "UnaryExpression": + if (parent.prefix) { + return path.callParent(isFollowedByRightBracket); + } + break; + } + return false; + } + function shouldWrapFunctionForExportDefault(path, options) { + const node = path.getValue(); + const parent = path.getParentNode(); + if (node.type === "FunctionExpression" || node.type === "ClassExpression") { + return parent.type === "ExportDefaultDeclaration" || !needsParens(path, options); + } + if (!hasNakedLeftSide(node) || parent.type !== "ExportDefaultDeclaration" && needsParens(path, options)) { + return false; + } + return path.call((childPath) => shouldWrapFunctionForExportDefault(childPath, options), ...getLeftSidePathName(path, node)); + } + module2.exports = needsParens; + } +}); +var require_print_preprocess = __commonJS2({ + "src/language-js/print-preprocess.js"(exports2, module2) { + "use strict"; + function preprocess(ast, options) { + switch (options.parser) { + case "json": + case "json5": + case "json-stringify": + case "__js_expression": + case "__vue_expression": + case "__vue_ts_expression": + return Object.assign(Object.assign({}, ast), {}, { + type: options.parser.startsWith("__") ? "JsExpressionRoot" : "JsonRoot", + node: ast, + comments: [], + rootMarker: options.rootMarker + }); + default: + return ast; + } + } + module2.exports = preprocess; + } +}); +var require_html_binding = __commonJS2({ + "src/language-js/print/html-binding.js"(exports2, module2) { + "use strict"; + var { + builders: { + join, + line, + group, + softline, + indent + } + } = require("./doc.js"); + function printHtmlBinding(path, options, print) { + const node = path.getValue(); + if (options.__onHtmlBindingRoot && path.getName() === null) { + options.__onHtmlBindingRoot(node, options); + } + if (node.type !== "File") { + return; + } + if (options.__isVueForBindingLeft) { + return path.call((functionDeclarationPath) => { + const printed = join([",", line], functionDeclarationPath.map(print, "params")); + const { + params + } = functionDeclarationPath.getValue(); + if (params.length === 1) { + return printed; + } + return ["(", indent([softline, group(printed)]), softline, ")"]; + }, "program", "body", 0); + } + if (options.__isVueBindings) { + return path.call((functionDeclarationPath) => join([",", line], functionDeclarationPath.map(print, "params")), "program", "body", 0); + } + } + function isVueEventBindingExpression(node) { + switch (node.type) { + case "MemberExpression": + switch (node.property.type) { + case "Identifier": + case "NumericLiteral": + case "StringLiteral": + return isVueEventBindingExpression(node.object); + } + return false; + case "Identifier": + return true; + default: + return false; + } + } + module2.exports = { + isVueEventBindingExpression, + printHtmlBinding + }; + } +}); +var require_binaryish = __commonJS2({ + "src/language-js/print/binaryish.js"(exports2, module2) { + "use strict"; + var { + printComments + } = require_comments(); + var { + getLast + } = require_util(); + var { + builders: { + join, + line, + softline, + group, + indent, + align, + indentIfBreak + }, + utils: { + cleanDoc, + getDocParts, + isConcat + } + } = require("./doc.js"); + var { + hasLeadingOwnLineComment, + isBinaryish, + isJsxNode, + shouldFlatten, + hasComment, + CommentCheckFlags, + isCallExpression, + isMemberExpression, + isObjectProperty, + isEnabledHackPipeline + } = require_utils7(); + var uid = 0; + function printBinaryishExpression(path, options, print) { + const node = path.getValue(); + const parent = path.getParentNode(); + const parentParent = path.getParentNode(1); + const isInsideParenthesis = node !== parent.body && (parent.type === "IfStatement" || parent.type === "WhileStatement" || parent.type === "SwitchStatement" || parent.type === "DoWhileStatement"); + const isHackPipeline = isEnabledHackPipeline(options) && node.operator === "|>"; + const parts = printBinaryishExpressions(path, print, options, false, isInsideParenthesis); + if (isInsideParenthesis) { + return parts; + } + if (isHackPipeline) { + return group(parts); + } + if (isCallExpression(parent) && parent.callee === node || parent.type === "UnaryExpression" || isMemberExpression(parent) && !parent.computed) { + return group([indent([softline, ...parts]), softline]); + } + const shouldNotIndent = parent.type === "ReturnStatement" || parent.type === "ThrowStatement" || parent.type === "JSXExpressionContainer" && parentParent.type === "JSXAttribute" || node.operator !== "|" && parent.type === "JsExpressionRoot" || node.type !== "NGPipeExpression" && (parent.type === "NGRoot" && options.parser === "__ng_binding" || parent.type === "NGMicrosyntaxExpression" && parentParent.type === "NGMicrosyntax" && parentParent.body.length === 1) || node === parent.body && parent.type === "ArrowFunctionExpression" || node !== parent.body && parent.type === "ForStatement" || parent.type === "ConditionalExpression" && parentParent.type !== "ReturnStatement" && parentParent.type !== "ThrowStatement" && !isCallExpression(parentParent) || parent.type === "TemplateLiteral"; + const shouldIndentIfInlining = parent.type === "AssignmentExpression" || parent.type === "VariableDeclarator" || parent.type === "ClassProperty" || parent.type === "PropertyDefinition" || parent.type === "TSAbstractPropertyDefinition" || parent.type === "ClassPrivateProperty" || isObjectProperty(parent); + const samePrecedenceSubExpression = isBinaryish(node.left) && shouldFlatten(node.operator, node.left.operator); + if (shouldNotIndent || shouldInlineLogicalExpression(node) && !samePrecedenceSubExpression || !shouldInlineLogicalExpression(node) && shouldIndentIfInlining) { + return group(parts); + } + if (parts.length === 0) { + return ""; + } + const hasJsx = isJsxNode(node.right); + const firstGroupIndex = parts.findIndex((part) => typeof part !== "string" && !Array.isArray(part) && part.type === "group"); + const headParts = parts.slice(0, firstGroupIndex === -1 ? 1 : firstGroupIndex + 1); + const rest = parts.slice(headParts.length, hasJsx ? -1 : void 0); + const groupId = Symbol("logicalChain-" + ++uid); + const chain = group([...headParts, indent(rest)], { + id: groupId + }); + if (!hasJsx) { + return chain; + } + const jsxPart = getLast(parts); + return group([chain, indentIfBreak(jsxPart, { + groupId + })]); + } + function printBinaryishExpressions(path, print, options, isNested, isInsideParenthesis) { + const node = path.getValue(); + if (!isBinaryish(node)) { + return [group(print())]; + } + let parts = []; + if (shouldFlatten(node.operator, node.left.operator)) { + parts = path.call((left) => printBinaryishExpressions(left, print, options, true, isInsideParenthesis), "left"); + } else { + parts.push(group(print("left"))); + } + const shouldInline = shouldInlineLogicalExpression(node); + const lineBeforeOperator = (node.operator === "|>" || node.type === "NGPipeExpression" || node.operator === "|" && options.parser === "__vue_expression") && !hasLeadingOwnLineComment(options.originalText, node.right); + const operator = node.type === "NGPipeExpression" ? "|" : node.operator; + const rightSuffix = node.type === "NGPipeExpression" && node.arguments.length > 0 ? group(indent([line, ": ", join([line, ": "], path.map(print, "arguments").map((arg) => align(2, group(arg))))])) : ""; + let right; + if (shouldInline) { + right = [operator, " ", print("right"), rightSuffix]; + } else { + const isHackPipeline = isEnabledHackPipeline(options) && operator === "|>"; + const rightContent = isHackPipeline ? path.call((left) => printBinaryishExpressions(left, print, options, true, isInsideParenthesis), "right") : print("right"); + right = [lineBeforeOperator ? line : "", operator, lineBeforeOperator ? " " : line, rightContent, rightSuffix]; + } + const parent = path.getParentNode(); + const shouldBreak = hasComment(node.left, CommentCheckFlags.Trailing | CommentCheckFlags.Line); + const shouldGroup = shouldBreak || !(isInsideParenthesis && node.type === "LogicalExpression") && parent.type !== node.type && node.left.type !== node.type && node.right.type !== node.type; + parts.push(lineBeforeOperator ? "" : " ", shouldGroup ? group(right, { + shouldBreak + }) : right); + if (isNested && hasComment(node)) { + const printed = cleanDoc(printComments(path, parts, options)); + if (isConcat(printed) || printed.type === "fill") { + return getDocParts(printed); + } + return [printed]; + } + return parts; + } + function shouldInlineLogicalExpression(node) { + if (node.type !== "LogicalExpression") { + return false; + } + if (node.right.type === "ObjectExpression" && node.right.properties.length > 0) { + return true; + } + if (node.right.type === "ArrayExpression" && node.right.elements.length > 0) { + return true; + } + if (isJsxNode(node.right)) { + return true; + } + return false; + } + module2.exports = { + printBinaryishExpression, + shouldInlineLogicalExpression + }; + } +}); +var require_angular = __commonJS2({ + "src/language-js/print/angular.js"(exports2, module2) { + "use strict"; + var { + builders: { + join, + line, + group + } + } = require("./doc.js"); + var { + hasNode, + hasComment, + getComments + } = require_utils7(); + var { + printBinaryishExpression + } = require_binaryish(); + function printAngular(path, options, print) { + const node = path.getValue(); + if (!node.type.startsWith("NG")) { + return; + } + switch (node.type) { + case "NGRoot": + return [print("node"), !hasComment(node.node) ? "" : " //" + getComments(node.node)[0].value.trimEnd()]; + case "NGPipeExpression": + return printBinaryishExpression(path, options, print); + case "NGChainedExpression": + return group(join([";", line], path.map((childPath) => hasNgSideEffect(childPath) ? print() : ["(", print(), ")"], "expressions"))); + case "NGEmptyExpression": + return ""; + case "NGQuotedExpression": + return [node.prefix, ": ", node.value.trim()]; + case "NGMicrosyntax": + return path.map((childPath, index) => [index === 0 ? "" : isNgForOf(childPath.getValue(), index, node) ? " " : [";", line], print()], "body"); + case "NGMicrosyntaxKey": + return /^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/i.test(node.name) ? node.name : JSON.stringify(node.name); + case "NGMicrosyntaxExpression": + return [print("expression"), node.alias === null ? "" : [" as ", print("alias")]]; + case "NGMicrosyntaxKeyedExpression": { + const index = path.getName(); + const parentNode = path.getParentNode(); + const shouldNotPrintColon = isNgForOf(node, index, parentNode) || (index === 1 && (node.key.name === "then" || node.key.name === "else") || index === 2 && node.key.name === "else" && parentNode.body[index - 1].type === "NGMicrosyntaxKeyedExpression" && parentNode.body[index - 1].key.name === "then") && parentNode.body[0].type === "NGMicrosyntaxExpression"; + return [print("key"), shouldNotPrintColon ? " " : ": ", print("expression")]; + } + case "NGMicrosyntaxLet": + return ["let ", print("key"), node.value === null ? "" : [" = ", print("value")]]; + case "NGMicrosyntaxAs": + return [print("key"), " as ", print("alias")]; + default: + throw new Error(`Unknown Angular node type: ${JSON.stringify(node.type)}.`); + } + } + function isNgForOf(node, index, parentNode) { + return node.type === "NGMicrosyntaxKeyedExpression" && node.key.name === "of" && index === 1 && parentNode.body[0].type === "NGMicrosyntaxLet" && parentNode.body[0].value === null; + } + function hasNgSideEffect(path) { + return hasNode(path.getValue(), (node) => { + switch (node.type) { + case void 0: + return false; + case "CallExpression": + case "OptionalCallExpression": + case "AssignmentExpression": + return true; + } + }); + } + module2.exports = { + printAngular + }; + } +}); +var require_jsx = __commonJS2({ + "src/language-js/print/jsx.js"(exports2, module2) { + "use strict"; + var { + printComments, + printDanglingComments, + printCommentsSeparately + } = require_comments(); + var { + builders: { + line, + hardline, + softline, + group, + indent, + conditionalGroup, + fill, + ifBreak, + lineSuffixBoundary, + join + }, + utils: { + willBreak + } + } = require("./doc.js"); + var { + getLast, + getPreferredQuote + } = require_util(); + var { + isJsxNode, + rawText, + isCallExpression, + isStringLiteral, + isBinaryish, + hasComment, + CommentCheckFlags, + hasNodeIgnoreComment + } = require_utils7(); + var pathNeedsParens = require_needs_parens(); + var { + willPrintOwnComments + } = require_comments2(); + var isEmptyStringOrAnyLine = (doc2) => doc2 === "" || doc2 === line || doc2 === hardline || doc2 === softline; + function printJsxElementInternal(path, options, print) { + const node = path.getValue(); + if (node.type === "JSXElement" && isEmptyJsxElement(node)) { + return [print("openingElement"), print("closingElement")]; + } + const openingLines = node.type === "JSXElement" ? print("openingElement") : print("openingFragment"); + const closingLines = node.type === "JSXElement" ? print("closingElement") : print("closingFragment"); + if (node.children.length === 1 && node.children[0].type === "JSXExpressionContainer" && (node.children[0].expression.type === "TemplateLiteral" || node.children[0].expression.type === "TaggedTemplateExpression")) { + return [openingLines, ...path.map(print, "children"), closingLines]; + } + node.children = node.children.map((child) => { + if (isJsxWhitespaceExpression(child)) { + return { + type: "JSXText", + value: " ", + raw: " " + }; + } + return child; + }); + const containsTag = node.children.some(isJsxNode); + const containsMultipleExpressions = node.children.filter((child) => child.type === "JSXExpressionContainer").length > 1; + const containsMultipleAttributes = node.type === "JSXElement" && node.openingElement.attributes.length > 1; + let forcedBreak = willBreak(openingLines) || containsTag || containsMultipleAttributes || containsMultipleExpressions; + const isMdxBlock = path.getParentNode().rootMarker === "mdx"; + const rawJsxWhitespace = options.singleQuote ? "{' '}" : '{" "}'; + const jsxWhitespace = isMdxBlock ? " " : ifBreak([rawJsxWhitespace, softline], " "); + const isFacebookTranslationTag = node.openingElement && node.openingElement.name && node.openingElement.name.name === "fbt"; + const children = printJsxChildren(path, options, print, jsxWhitespace, isFacebookTranslationTag); + const containsText = node.children.some((child) => isMeaningfulJsxText(child)); + for (let i = children.length - 2; i >= 0; i--) { + const isPairOfEmptyStrings = children[i] === "" && children[i + 1] === ""; + const isPairOfHardlines = children[i] === hardline && children[i + 1] === "" && children[i + 2] === hardline; + const isLineFollowedByJsxWhitespace = (children[i] === softline || children[i] === hardline) && children[i + 1] === "" && children[i + 2] === jsxWhitespace; + const isJsxWhitespaceFollowedByLine = children[i] === jsxWhitespace && children[i + 1] === "" && (children[i + 2] === softline || children[i + 2] === hardline); + const isDoubleJsxWhitespace = children[i] === jsxWhitespace && children[i + 1] === "" && children[i + 2] === jsxWhitespace; + const isPairOfHardOrSoftLines = children[i] === softline && children[i + 1] === "" && children[i + 2] === hardline || children[i] === hardline && children[i + 1] === "" && children[i + 2] === softline; + if (isPairOfHardlines && containsText || isPairOfEmptyStrings || isLineFollowedByJsxWhitespace || isDoubleJsxWhitespace || isPairOfHardOrSoftLines) { + children.splice(i, 2); + } else if (isJsxWhitespaceFollowedByLine) { + children.splice(i + 1, 2); + } + } + while (children.length > 0 && isEmptyStringOrAnyLine(getLast(children))) { + children.pop(); + } + while (children.length > 1 && isEmptyStringOrAnyLine(children[0]) && isEmptyStringOrAnyLine(children[1])) { + children.shift(); + children.shift(); + } + const multilineChildren = []; + for (const [i, child] of children.entries()) { + if (child === jsxWhitespace) { + if (i === 1 && children[i - 1] === "") { + if (children.length === 2) { + multilineChildren.push(rawJsxWhitespace); + continue; + } + multilineChildren.push([rawJsxWhitespace, hardline]); + continue; + } else if (i === children.length - 1) { + multilineChildren.push(rawJsxWhitespace); + continue; + } else if (children[i - 1] === "" && children[i - 2] === hardline) { + multilineChildren.push(rawJsxWhitespace); + continue; + } + } + multilineChildren.push(child); + if (willBreak(child)) { + forcedBreak = true; + } + } + const content = containsText ? fill(multilineChildren) : group(multilineChildren, { + shouldBreak: true + }); + if (isMdxBlock) { + return content; + } + const multiLineElem = group([openingLines, indent([hardline, content]), hardline, closingLines]); + if (forcedBreak) { + return multiLineElem; + } + return conditionalGroup([group([openingLines, ...children, closingLines]), multiLineElem]); + } + function printJsxChildren(path, options, print, jsxWhitespace, isFacebookTranslationTag) { + const parts = []; + path.each((childPath, i, children) => { + const child = childPath.getValue(); + if (child.type === "JSXText") { + const text = rawText(child); + if (isMeaningfulJsxText(child)) { + const words = text.split(matchJsxWhitespaceRegex); + if (words[0] === "") { + parts.push(""); + words.shift(); + if (/\n/.test(words[0])) { + const next = children[i + 1]; + parts.push(separatorWithWhitespace(isFacebookTranslationTag, words[1], child, next)); + } else { + parts.push(jsxWhitespace); + } + words.shift(); + } + let endWhitespace; + if (getLast(words) === "") { + words.pop(); + endWhitespace = words.pop(); + } + if (words.length === 0) { + return; + } + for (const [i2, word] of words.entries()) { + if (i2 % 2 === 1) { + parts.push(line); + } else { + parts.push(word); + } + } + if (endWhitespace !== void 0) { + if (/\n/.test(endWhitespace)) { + const next = children[i + 1]; + parts.push(separatorWithWhitespace(isFacebookTranslationTag, getLast(parts), child, next)); + } else { + parts.push(jsxWhitespace); + } + } else { + const next = children[i + 1]; + parts.push(separatorNoWhitespace(isFacebookTranslationTag, getLast(parts), child, next)); + } + } else if (/\n/.test(text)) { + if (text.match(/\n/g).length > 1) { + parts.push("", hardline); + } + } else { + parts.push("", jsxWhitespace); + } + } else { + const printedChild = print(); + parts.push(printedChild); + const next = children[i + 1]; + const directlyFollowedByMeaningfulText = next && isMeaningfulJsxText(next); + if (directlyFollowedByMeaningfulText) { + const firstWord = trimJsxWhitespace(rawText(next)).split(matchJsxWhitespaceRegex)[0]; + parts.push(separatorNoWhitespace(isFacebookTranslationTag, firstWord, child, next)); + } else { + parts.push(hardline); + } + } + }, "children"); + return parts; + } + function separatorNoWhitespace(isFacebookTranslationTag, child, childNode, nextNode) { + if (isFacebookTranslationTag) { + return ""; + } + if (childNode.type === "JSXElement" && !childNode.closingElement || nextNode && nextNode.type === "JSXElement" && !nextNode.closingElement) { + return child.length === 1 ? softline : hardline; + } + return softline; + } + function separatorWithWhitespace(isFacebookTranslationTag, child, childNode, nextNode) { + if (isFacebookTranslationTag) { + return hardline; + } + if (child.length === 1) { + return childNode.type === "JSXElement" && !childNode.closingElement || nextNode && nextNode.type === "JSXElement" && !nextNode.closingElement ? hardline : softline; + } + return hardline; + } + function maybeWrapJsxElementInParens(path, elem, options) { + const parent = path.getParentNode(); + if (!parent) { + return elem; + } + const NO_WRAP_PARENTS = { + ArrayExpression: true, + JSXAttribute: true, + JSXElement: true, + JSXExpressionContainer: true, + JSXFragment: true, + ExpressionStatement: true, + CallExpression: true, + OptionalCallExpression: true, + ConditionalExpression: true, + JsExpressionRoot: true + }; + if (NO_WRAP_PARENTS[parent.type]) { + return elem; + } + const shouldBreak = path.match(void 0, (node) => node.type === "ArrowFunctionExpression", isCallExpression, (node) => node.type === "JSXExpressionContainer"); + const needsParens = pathNeedsParens(path, options); + return group([needsParens ? "" : ifBreak("("), indent([softline, elem]), softline, needsParens ? "" : ifBreak(")")], { + shouldBreak + }); + } + function printJsxAttribute(path, options, print) { + const node = path.getValue(); + const parts = []; + parts.push(print("name")); + if (node.value) { + let res; + if (isStringLiteral(node.value)) { + const raw = rawText(node.value); + let final = raw.slice(1, -1).replace(/'/g, "'").replace(/"/g, '"'); + const { + escaped, + quote, + regex + } = getPreferredQuote(final, options.jsxSingleQuote ? "'" : '"'); + final = final.replace(regex, escaped); + const { + leading, + trailing + } = path.call(() => printCommentsSeparately(path, options), "value"); + res = [leading, quote, final, quote, trailing]; + } else { + res = print("value"); + } + parts.push("=", res); + } + return parts; + } + function printJsxExpressionContainer(path, options, print) { + const node = path.getValue(); + const shouldInline = (node2, parent) => node2.type === "JSXEmptyExpression" || !hasComment(node2) && (node2.type === "ArrayExpression" || node2.type === "ObjectExpression" || node2.type === "ArrowFunctionExpression" || node2.type === "AwaitExpression" && (shouldInline(node2.argument, node2) || node2.argument.type === "JSXElement") || isCallExpression(node2) || node2.type === "FunctionExpression" || node2.type === "TemplateLiteral" || node2.type === "TaggedTemplateExpression" || node2.type === "DoExpression" || isJsxNode(parent) && (node2.type === "ConditionalExpression" || isBinaryish(node2))); + if (shouldInline(node.expression, path.getParentNode(0))) { + return group(["{", print("expression"), lineSuffixBoundary, "}"]); + } + return group(["{", indent([softline, print("expression")]), softline, lineSuffixBoundary, "}"]); + } + function printJsxOpeningElement(path, options, print) { + const node = path.getValue(); + const nameHasComments = node.name && hasComment(node.name) || node.typeParameters && hasComment(node.typeParameters); + if (node.selfClosing && node.attributes.length === 0 && !nameHasComments) { + return ["<", print("name"), print("typeParameters"), " />"]; + } + if (node.attributes && node.attributes.length === 1 && node.attributes[0].value && isStringLiteral(node.attributes[0].value) && !node.attributes[0].value.value.includes("\n") && !nameHasComments && !hasComment(node.attributes[0])) { + return group(["<", print("name"), print("typeParameters"), " ", ...path.map(print, "attributes"), node.selfClosing ? " />" : ">"]); + } + const shouldBreak = node.attributes && node.attributes.some((attr) => attr.value && isStringLiteral(attr.value) && attr.value.value.includes("\n")); + const attributeLine = options.singleAttributePerLine && node.attributes.length > 1 ? hardline : line; + return group(["<", print("name"), print("typeParameters"), indent(path.map(() => [attributeLine, print()], "attributes")), ...printEndOfOpeningTag(node, options, nameHasComments)], { + shouldBreak + }); + } + function printEndOfOpeningTag(node, options, nameHasComments) { + if (node.selfClosing) { + return [line, "/>"]; + } + const bracketSameLine = shouldPrintBracketSameLine(node, options, nameHasComments); + if (bracketSameLine) { + return [">"]; + } + return [softline, ">"]; + } + function shouldPrintBracketSameLine(node, options, nameHasComments) { + const lastAttrHasTrailingComments = node.attributes.length > 0 && hasComment(getLast(node.attributes), CommentCheckFlags.Trailing); + return node.attributes.length === 0 && !nameHasComments || (options.bracketSameLine || options.jsxBracketSameLine) && (!nameHasComments || node.attributes.length > 0) && !lastAttrHasTrailingComments; + } + function printJsxClosingElement(path, options, print) { + const node = path.getValue(); + const parts = []; + parts.push(""); + return parts; + } + function printJsxOpeningClosingFragment(path, options) { + const node = path.getValue(); + const nodeHasComment = hasComment(node); + const hasOwnLineComment = hasComment(node, CommentCheckFlags.Line); + const isOpeningFragment = node.type === "JSXOpeningFragment"; + return [isOpeningFragment ? "<" : ""]; + } + function printJsxElement(path, options, print) { + const elem = printComments(path, printJsxElementInternal(path, options, print), options); + return maybeWrapJsxElementInParens(path, elem, options); + } + function printJsxEmptyExpression(path, options) { + const node = path.getValue(); + const requiresHardline = hasComment(node, CommentCheckFlags.Line); + return [printDanglingComments(path, options, !requiresHardline), requiresHardline ? hardline : ""]; + } + function printJsxSpreadAttribute(path, options, print) { + const node = path.getValue(); + return ["{", path.call((p) => { + const printed = ["...", print()]; + const node2 = p.getValue(); + if (!hasComment(node2) || !willPrintOwnComments(p)) { + return printed; + } + return [indent([softline, printComments(p, printed, options)]), softline]; + }, node.type === "JSXSpreadAttribute" ? "argument" : "expression"), "}"]; + } + function printJsx(path, options, print) { + const node = path.getValue(); + if (!node.type.startsWith("JSX")) { + return; + } + switch (node.type) { + case "JSXAttribute": + return printJsxAttribute(path, options, print); + case "JSXIdentifier": + return String(node.name); + case "JSXNamespacedName": + return join(":", [print("namespace"), print("name")]); + case "JSXMemberExpression": + return join(".", [print("object"), print("property")]); + case "JSXSpreadAttribute": + return printJsxSpreadAttribute(path, options, print); + case "JSXSpreadChild": { + const printJsxSpreadChild = printJsxSpreadAttribute; + return printJsxSpreadChild(path, options, print); + } + case "JSXExpressionContainer": + return printJsxExpressionContainer(path, options, print); + case "JSXFragment": + case "JSXElement": + return printJsxElement(path, options, print); + case "JSXOpeningElement": + return printJsxOpeningElement(path, options, print); + case "JSXClosingElement": + return printJsxClosingElement(path, options, print); + case "JSXOpeningFragment": + case "JSXClosingFragment": + return printJsxOpeningClosingFragment(path, options); + case "JSXEmptyExpression": + return printJsxEmptyExpression(path, options); + case "JSXText": + throw new Error("JSXText should be handled by JSXElement"); + default: + throw new Error(`Unknown JSX node type: ${JSON.stringify(node.type)}.`); + } + } + var jsxWhitespaceChars = " \n\r "; + var matchJsxWhitespaceRegex = new RegExp("([" + jsxWhitespaceChars + "]+)"); + var containsNonJsxWhitespaceRegex = new RegExp("[^" + jsxWhitespaceChars + "]"); + var trimJsxWhitespace = (text) => text.replace(new RegExp("(?:^" + matchJsxWhitespaceRegex.source + "|" + matchJsxWhitespaceRegex.source + "$)"), ""); + function isEmptyJsxElement(node) { + if (node.children.length === 0) { + return true; + } + if (node.children.length > 1) { + return false; + } + const child = node.children[0]; + return child.type === "JSXText" && !isMeaningfulJsxText(child); + } + function isMeaningfulJsxText(node) { + return node.type === "JSXText" && (containsNonJsxWhitespaceRegex.test(rawText(node)) || !/\n/.test(rawText(node))); + } + function isJsxWhitespaceExpression(node) { + return node.type === "JSXExpressionContainer" && isStringLiteral(node.expression) && node.expression.value === " " && !hasComment(node.expression); + } + function hasJsxIgnoreComment(path) { + const node = path.getValue(); + const parent = path.getParentNode(); + if (!parent || !node || !isJsxNode(node) || !isJsxNode(parent)) { + return false; + } + const index = parent.children.indexOf(node); + let prevSibling = null; + for (let i = index; i > 0; i--) { + const candidate = parent.children[i - 1]; + if (candidate.type === "JSXText" && !isMeaningfulJsxText(candidate)) { + continue; + } + prevSibling = candidate; + break; + } + return prevSibling && prevSibling.type === "JSXExpressionContainer" && prevSibling.expression.type === "JSXEmptyExpression" && hasNodeIgnoreComment(prevSibling.expression); + } + module2.exports = { + hasJsxIgnoreComment, + printJsx + }; + } +}); +var require_doc_builders = __commonJS2({ + "src/document/doc-builders.js"(exports2, module2) { + "use strict"; + function concat(parts) { + if (false) { + for (const part of parts) { + assertDoc(part); + } + } + return { + type: "concat", + parts + }; + } + function indent(contents) { + if (false) { + assertDoc(contents); + } + return { + type: "indent", + contents + }; + } + function align(widthOrString, contents) { + if (false) { + assertDoc(contents); + } + return { + type: "align", + contents, + n: widthOrString + }; + } + function group(contents, opts = {}) { + if (false) { + assertDoc(contents); + } + return { + type: "group", + id: opts.id, + contents, + break: Boolean(opts.shouldBreak), + expandedStates: opts.expandedStates + }; + } + function dedentToRoot(contents) { + return align(Number.NEGATIVE_INFINITY, contents); + } + function markAsRoot(contents) { + return align({ + type: "root" + }, contents); + } + function dedent(contents) { + return align(-1, contents); + } + function conditionalGroup(states, opts) { + return group(states[0], Object.assign(Object.assign({}, opts), {}, { + expandedStates: states + })); + } + function fill(parts) { + if (false) { + for (const part of parts) { + assertDoc(part); + } + } + return { + type: "fill", + parts + }; + } + function ifBreak(breakContents, flatContents, opts = {}) { + if (false) { + if (breakContents) { + assertDoc(breakContents); + } + if (flatContents) { + assertDoc(flatContents); + } + } + return { + type: "if-break", + breakContents, + flatContents, + groupId: opts.groupId + }; + } + function indentIfBreak(contents, opts) { + return { + type: "indent-if-break", + contents, + groupId: opts.groupId, + negate: opts.negate + }; + } + function lineSuffix(contents) { + if (false) { + assertDoc(contents); + } + return { + type: "line-suffix", + contents + }; + } + var lineSuffixBoundary = { + type: "line-suffix-boundary" + }; + var breakParent = { + type: "break-parent" + }; + var trim = { + type: "trim" + }; + var hardlineWithoutBreakParent = { + type: "line", + hard: true + }; + var literallineWithoutBreakParent = { + type: "line", + hard: true, + literal: true + }; + var line = { + type: "line" + }; + var softline = { + type: "line", + soft: true + }; + var hardline = concat([hardlineWithoutBreakParent, breakParent]); + var literalline = concat([literallineWithoutBreakParent, breakParent]); + var cursor = { + type: "cursor", + placeholder: Symbol("cursor") + }; + function join(sep, arr) { + const res = []; + for (let i = 0; i < arr.length; i++) { + if (i !== 0) { + res.push(sep); + } + res.push(arr[i]); + } + return concat(res); + } + function addAlignmentToDoc(doc2, size, tabWidth) { + let aligned = doc2; + if (size > 0) { + for (let i = 0; i < Math.floor(size / tabWidth); ++i) { + aligned = indent(aligned); + } + aligned = align(size % tabWidth, aligned); + aligned = align(Number.NEGATIVE_INFINITY, aligned); + } + return aligned; + } + function label(label2, contents) { + return { + type: "label", + label: label2, + contents + }; + } + module2.exports = { + concat, + join, + line, + softline, + hardline, + literalline, + group, + conditionalGroup, + fill, + lineSuffix, + lineSuffixBoundary, + cursor, + breakParent, + ifBreak, + trim, + indent, + indentIfBreak, + align, + addAlignmentToDoc, + markAsRoot, + dedentToRoot, + dedent, + hardlineWithoutBreakParent, + literallineWithoutBreakParent, + label + }; + } +}); +var require_doc_utils = __commonJS2({ + "src/document/doc-utils.js"(exports2, module2) { + "use strict"; + var getLast = require_get_last(); + var { + literalline, + join + } = require_doc_builders(); + var isConcat = (doc2) => Array.isArray(doc2) || doc2 && doc2.type === "concat"; + var getDocParts = (doc2) => { + if (Array.isArray(doc2)) { + return doc2; + } + if (doc2.type !== "concat" && doc2.type !== "fill") { + throw new Error("Expect doc type to be `concat` or `fill`."); + } + return doc2.parts; + }; + var traverseDocOnExitStackMarker = {}; + function traverseDoc(doc2, onEnter, onExit, shouldTraverseConditionalGroups) { + const docsStack = [doc2]; + while (docsStack.length > 0) { + const doc3 = docsStack.pop(); + if (doc3 === traverseDocOnExitStackMarker) { + onExit(docsStack.pop()); + continue; + } + if (onExit) { + docsStack.push(doc3, traverseDocOnExitStackMarker); + } + if (!onEnter || onEnter(doc3) !== false) { + if (isConcat(doc3) || doc3.type === "fill") { + const parts = getDocParts(doc3); + for (let ic = parts.length, i = ic - 1; i >= 0; --i) { + docsStack.push(parts[i]); + } + } else if (doc3.type === "if-break") { + if (doc3.flatContents) { + docsStack.push(doc3.flatContents); + } + if (doc3.breakContents) { + docsStack.push(doc3.breakContents); + } + } else if (doc3.type === "group" && doc3.expandedStates) { + if (shouldTraverseConditionalGroups) { + for (let ic = doc3.expandedStates.length, i = ic - 1; i >= 0; --i) { + docsStack.push(doc3.expandedStates[i]); + } + } else { + docsStack.push(doc3.contents); + } + } else if (doc3.contents) { + docsStack.push(doc3.contents); + } + } + } + } + function mapDoc(doc2, cb) { + const mapped = /* @__PURE__ */ new Map(); + return rec(doc2); + function rec(doc3) { + if (mapped.has(doc3)) { + return mapped.get(doc3); + } + const result = process2(doc3); + mapped.set(doc3, result); + return result; + } + function process2(doc3) { + if (Array.isArray(doc3)) { + return cb(doc3.map(rec)); + } + if (doc3.type === "concat" || doc3.type === "fill") { + const parts = doc3.parts.map(rec); + return cb(Object.assign(Object.assign({}, doc3), {}, { + parts + })); + } + if (doc3.type === "if-break") { + const breakContents = doc3.breakContents && rec(doc3.breakContents); + const flatContents = doc3.flatContents && rec(doc3.flatContents); + return cb(Object.assign(Object.assign({}, doc3), {}, { + breakContents, + flatContents + })); + } + if (doc3.type === "group" && doc3.expandedStates) { + const expandedStates = doc3.expandedStates.map(rec); + const contents = expandedStates[0]; + return cb(Object.assign(Object.assign({}, doc3), {}, { + contents, + expandedStates + })); + } + if (doc3.contents) { + const contents = rec(doc3.contents); + return cb(Object.assign(Object.assign({}, doc3), {}, { + contents + })); + } + return cb(doc3); + } + } + function findInDoc(doc2, fn, defaultValue) { + let result = defaultValue; + let hasStopped = false; + function findInDocOnEnterFn(doc3) { + const maybeResult = fn(doc3); + if (maybeResult !== void 0) { + hasStopped = true; + result = maybeResult; + } + if (hasStopped) { + return false; + } + } + traverseDoc(doc2, findInDocOnEnterFn); + return result; + } + function willBreakFn(doc2) { + if (doc2.type === "group" && doc2.break) { + return true; + } + if (doc2.type === "line" && doc2.hard) { + return true; + } + if (doc2.type === "break-parent") { + return true; + } + } + function willBreak(doc2) { + return findInDoc(doc2, willBreakFn, false); + } + function breakParentGroup(groupStack) { + if (groupStack.length > 0) { + const parentGroup = getLast(groupStack); + if (!parentGroup.expandedStates && !parentGroup.break) { + parentGroup.break = "propagated"; + } + } + return null; + } + function propagateBreaks(doc2) { + const alreadyVisitedSet = /* @__PURE__ */ new Set(); + const groupStack = []; + function propagateBreaksOnEnterFn(doc3) { + if (doc3.type === "break-parent") { + breakParentGroup(groupStack); + } + if (doc3.type === "group") { + groupStack.push(doc3); + if (alreadyVisitedSet.has(doc3)) { + return false; + } + alreadyVisitedSet.add(doc3); + } + } + function propagateBreaksOnExitFn(doc3) { + if (doc3.type === "group") { + const group = groupStack.pop(); + if (group.break) { + breakParentGroup(groupStack); + } + } + } + traverseDoc(doc2, propagateBreaksOnEnterFn, propagateBreaksOnExitFn, true); + } + function removeLinesFn(doc2) { + if (doc2.type === "line" && !doc2.hard) { + return doc2.soft ? "" : " "; + } + if (doc2.type === "if-break") { + return doc2.flatContents || ""; + } + return doc2; + } + function removeLines(doc2) { + return mapDoc(doc2, removeLinesFn); + } + var isHardline = (doc2, nextDoc) => doc2 && doc2.type === "line" && doc2.hard && nextDoc && nextDoc.type === "break-parent"; + function stripDocTrailingHardlineFromDoc(doc2) { + if (!doc2) { + return doc2; + } + if (isConcat(doc2) || doc2.type === "fill") { + const parts = getDocParts(doc2); + while (parts.length > 1 && isHardline(...parts.slice(-2))) { + parts.length -= 2; + } + if (parts.length > 0) { + const lastPart = stripDocTrailingHardlineFromDoc(getLast(parts)); + parts[parts.length - 1] = lastPart; + } + return Array.isArray(doc2) ? parts : Object.assign(Object.assign({}, doc2), {}, { + parts + }); + } + switch (doc2.type) { + case "align": + case "indent": + case "indent-if-break": + case "group": + case "line-suffix": + case "label": { + const contents = stripDocTrailingHardlineFromDoc(doc2.contents); + return Object.assign(Object.assign({}, doc2), {}, { + contents + }); + } + case "if-break": { + const breakContents = stripDocTrailingHardlineFromDoc(doc2.breakContents); + const flatContents = stripDocTrailingHardlineFromDoc(doc2.flatContents); + return Object.assign(Object.assign({}, doc2), {}, { + breakContents, + flatContents + }); + } + } + return doc2; + } + function stripTrailingHardline(doc2) { + return stripDocTrailingHardlineFromDoc(cleanDoc(doc2)); + } + function cleanDocFn(doc2) { + switch (doc2.type) { + case "fill": + if (doc2.parts.every((part) => part === "")) { + return ""; + } + break; + case "group": + if (!doc2.contents && !doc2.id && !doc2.break && !doc2.expandedStates) { + return ""; + } + if (doc2.contents.type === "group" && doc2.contents.id === doc2.id && doc2.contents.break === doc2.break && doc2.contents.expandedStates === doc2.expandedStates) { + return doc2.contents; + } + break; + case "align": + case "indent": + case "indent-if-break": + case "line-suffix": + if (!doc2.contents) { + return ""; + } + break; + case "if-break": + if (!doc2.flatContents && !doc2.breakContents) { + return ""; + } + break; + } + if (!isConcat(doc2)) { + return doc2; + } + const parts = []; + for (const part of getDocParts(doc2)) { + if (!part) { + continue; + } + const [currentPart, ...restParts] = isConcat(part) ? getDocParts(part) : [part]; + if (typeof currentPart === "string" && typeof getLast(parts) === "string") { + parts[parts.length - 1] += currentPart; + } else { + parts.push(currentPart); + } + parts.push(...restParts); + } + if (parts.length === 0) { + return ""; + } + if (parts.length === 1) { + return parts[0]; + } + return Array.isArray(doc2) ? parts : Object.assign(Object.assign({}, doc2), {}, { + parts + }); + } + function cleanDoc(doc2) { + return mapDoc(doc2, (currentDoc) => cleanDocFn(currentDoc)); + } + function normalizeParts(parts) { + const newParts = []; + const restParts = parts.filter(Boolean); + while (restParts.length > 0) { + const part = restParts.shift(); + if (!part) { + continue; + } + if (isConcat(part)) { + restParts.unshift(...getDocParts(part)); + continue; + } + if (newParts.length > 0 && typeof getLast(newParts) === "string" && typeof part === "string") { + newParts[newParts.length - 1] += part; + continue; + } + newParts.push(part); + } + return newParts; + } + function normalizeDoc(doc2) { + return mapDoc(doc2, (currentDoc) => { + if (Array.isArray(currentDoc)) { + return normalizeParts(currentDoc); + } + if (!currentDoc.parts) { + return currentDoc; + } + return Object.assign(Object.assign({}, currentDoc), {}, { + parts: normalizeParts(currentDoc.parts) + }); + }); + } + function replaceEndOfLine(doc2) { + return mapDoc(doc2, (currentDoc) => typeof currentDoc === "string" && currentDoc.includes("\n") ? replaceTextEndOfLine(currentDoc) : currentDoc); + } + function replaceTextEndOfLine(text, replacement = literalline) { + return join(replacement, text.split("\n")).parts; + } + function canBreakFn(doc2) { + if (doc2.type === "line") { + return true; + } + } + function canBreak(doc2) { + return findInDoc(doc2, canBreakFn, false); + } + module2.exports = { + isConcat, + getDocParts, + willBreak, + traverseDoc, + findInDoc, + mapDoc, + propagateBreaks, + removeLines, + stripTrailingHardline, + normalizeParts, + normalizeDoc, + cleanDoc, + replaceTextEndOfLine, + replaceEndOfLine, + canBreak + }; + } +}); +var require_misc = __commonJS2({ + "src/language-js/print/misc.js"(exports2, module2) { + "use strict"; + var { + isNonEmptyArray + } = require_util(); + var { + builders: { + indent, + join, + line + } + } = require("./doc.js"); + var { + isFlowAnnotationComment + } = require_utils7(); + function printOptionalToken(path) { + const node = path.getValue(); + if (!node.optional || node.type === "Identifier" && node === path.getParentNode().key) { + return ""; + } + if (node.type === "OptionalCallExpression" || node.type === "OptionalMemberExpression" && node.computed) { + return "?."; + } + return "?"; + } + function printDefiniteToken(path) { + return path.getValue().definite || path.match(void 0, (node, name) => name === "id" && node.type === "VariableDeclarator" && node.definite) ? "!" : ""; + } + function printFunctionTypeParameters(path, options, print) { + const fun = path.getValue(); + if (fun.typeArguments) { + return print("typeArguments"); + } + if (fun.typeParameters) { + return print("typeParameters"); + } + return ""; + } + function printTypeAnnotation(path, options, print) { + const node = path.getValue(); + if (!node.typeAnnotation) { + return ""; + } + const parentNode = path.getParentNode(); + const isFunctionDeclarationIdentifier = parentNode.type === "DeclareFunction" && parentNode.id === node; + if (isFlowAnnotationComment(options.originalText, node.typeAnnotation)) { + return [" /*: ", print("typeAnnotation"), " */"]; + } + return [isFunctionDeclarationIdentifier ? "" : ": ", print("typeAnnotation")]; + } + function printBindExpressionCallee(path, options, print) { + return ["::", print("callee")]; + } + function printTypeScriptModifiers(path, options, print) { + const node = path.getValue(); + if (!isNonEmptyArray(node.modifiers)) { + return ""; + } + return [join(" ", path.map(print, "modifiers")), " "]; + } + function adjustClause(node, clause, forceSpace) { + if (node.type === "EmptyStatement") { + return ";"; + } + if (node.type === "BlockStatement" || forceSpace) { + return [" ", clause]; + } + return indent([line, clause]); + } + function printRestSpread(path, options, print) { + return ["...", print("argument"), printTypeAnnotation(path, options, print)]; + } + function printDirective(rawText, options) { + const rawContent = rawText.slice(1, -1); + if (rawContent.includes('"') || rawContent.includes("'")) { + return rawText; + } + const enclosingQuote = options.singleQuote ? "'" : '"'; + return enclosingQuote + rawContent + enclosingQuote; + } + module2.exports = { + printOptionalToken, + printDefiniteToken, + printFunctionTypeParameters, + printBindExpressionCallee, + printTypeScriptModifiers, + printTypeAnnotation, + printRestSpread, + adjustClause, + printDirective + }; + } +}); +var require_array4 = __commonJS2({ + "src/language-js/print/array.js"(exports2, module2) { + "use strict"; + var { + printDanglingComments + } = require_comments(); + var { + builders: { + line, + softline, + hardline, + group, + indent, + ifBreak, + fill + } + } = require("./doc.js"); + var { + getLast, + hasNewline + } = require_util(); + var { + shouldPrintComma, + hasComment, + CommentCheckFlags, + isNextLineEmpty, + isNumericLiteral, + isSignedNumericLiteral + } = require_utils7(); + var { + locStart + } = require_loc(); + var { + printOptionalToken, + printTypeAnnotation + } = require_misc(); + function printArray(path, options, print) { + const node = path.getValue(); + const parts = []; + const openBracket = node.type === "TupleExpression" ? "#[" : "["; + const closeBracket = "]"; + if (node.elements.length === 0) { + if (!hasComment(node, CommentCheckFlags.Dangling)) { + parts.push(openBracket, closeBracket); + } else { + parts.push(group([openBracket, printDanglingComments(path, options), softline, closeBracket])); + } + } else { + const lastElem = getLast(node.elements); + const canHaveTrailingComma = !(lastElem && lastElem.type === "RestElement"); + const needsForcedTrailingComma = lastElem === null; + const groupId = Symbol("array"); + const shouldBreak = !options.__inJestEach && node.elements.length > 1 && node.elements.every((element, i, elements) => { + const elementType = element && element.type; + if (elementType !== "ArrayExpression" && elementType !== "ObjectExpression") { + return false; + } + const nextElement = elements[i + 1]; + if (nextElement && elementType !== nextElement.type) { + return false; + } + const itemsKey = elementType === "ArrayExpression" ? "elements" : "properties"; + return element[itemsKey] && element[itemsKey].length > 1; + }); + const shouldUseConciseFormatting = isConciselyPrintedArray(node, options); + const trailingComma = !canHaveTrailingComma ? "" : needsForcedTrailingComma ? "," : !shouldPrintComma(options) ? "" : shouldUseConciseFormatting ? ifBreak(",", "", { + groupId + }) : ifBreak(","); + parts.push(group([openBracket, indent([softline, shouldUseConciseFormatting ? printArrayItemsConcisely(path, options, print, trailingComma) : [printArrayItems(path, options, "elements", print), trailingComma], printDanglingComments(path, options, true)]), softline, closeBracket], { + shouldBreak, + id: groupId + })); + } + parts.push(printOptionalToken(path), printTypeAnnotation(path, options, print)); + return parts; + } + function isConciselyPrintedArray(node, options) { + return node.elements.length > 1 && node.elements.every((element) => element && (isNumericLiteral(element) || isSignedNumericLiteral(element) && !hasComment(element.argument)) && !hasComment(element, CommentCheckFlags.Trailing | CommentCheckFlags.Line, (comment) => !hasNewline(options.originalText, locStart(comment), { + backwards: true + }))); + } + function printArrayItems(path, options, printPath, print) { + const printedElements = []; + let separatorParts = []; + path.each((childPath) => { + printedElements.push(separatorParts, group(print())); + separatorParts = [",", line]; + if (childPath.getValue() && isNextLineEmpty(childPath.getValue(), options)) { + separatorParts.push(softline); + } + }, printPath); + return printedElements; + } + function printArrayItemsConcisely(path, options, print, trailingComma) { + const parts = []; + path.each((childPath, i, elements) => { + const isLast = i === elements.length - 1; + parts.push([print(), isLast ? trailingComma : ","]); + if (!isLast) { + parts.push(isNextLineEmpty(childPath.getValue(), options) ? [hardline, hardline] : hasComment(elements[i + 1], CommentCheckFlags.Leading | CommentCheckFlags.Line) ? hardline : line); + } + }, "elements"); + return fill(parts); + } + module2.exports = { + printArray, + printArrayItems, + isConciselyPrintedArray + }; + } +}); +var require_call_arguments = __commonJS2({ + "src/language-js/print/call-arguments.js"(exports2, module2) { + "use strict"; + var { + printDanglingComments + } = require_comments(); + var { + getLast, + getPenultimate + } = require_util(); + var { + getFunctionParameters, + hasComment, + CommentCheckFlags, + isFunctionCompositionArgs, + isJsxNode, + isLongCurriedCallExpression, + shouldPrintComma, + getCallArguments, + iterateCallArgumentsPath, + isNextLineEmpty, + isCallExpression, + isStringLiteral, + isObjectProperty, + isTSTypeExpression + } = require_utils7(); + var { + builders: { + line, + hardline, + softline, + group, + indent, + conditionalGroup, + ifBreak, + breakParent + }, + utils: { + willBreak + } + } = require("./doc.js"); + var { + ArgExpansionBailout + } = require_errors(); + var { + isConciselyPrintedArray + } = require_array4(); + function printCallArguments(path, options, print) { + const node = path.getValue(); + const isDynamicImport = node.type === "ImportExpression"; + const args = getCallArguments(node); + if (args.length === 0) { + return ["(", printDanglingComments(path, options, true), ")"]; + } + if (isReactHookCallWithDepsArray(args)) { + return ["(", print(["arguments", 0]), ", ", print(["arguments", 1]), ")"]; + } + let anyArgEmptyLine = false; + let hasEmptyLineFollowingFirstArg = false; + const lastArgIndex = args.length - 1; + const printedArguments = []; + iterateCallArgumentsPath(path, (argPath, index) => { + const arg = argPath.getNode(); + const parts = [print()]; + if (index === lastArgIndex) { + } else if (isNextLineEmpty(arg, options)) { + if (index === 0) { + hasEmptyLineFollowingFirstArg = true; + } + anyArgEmptyLine = true; + parts.push(",", hardline, hardline); + } else { + parts.push(",", line); + } + printedArguments.push(parts); + }); + const maybeTrailingComma = !(isDynamicImport || node.callee && node.callee.type === "Import") && shouldPrintComma(options, "all") ? "," : ""; + function allArgsBrokenOut() { + return group(["(", indent([line, ...printedArguments]), maybeTrailingComma, line, ")"], { + shouldBreak: true + }); + } + if (anyArgEmptyLine || path.getParentNode().type !== "Decorator" && isFunctionCompositionArgs(args)) { + return allArgsBrokenOut(); + } + const shouldGroupFirst = shouldGroupFirstArg(args); + const shouldGroupLast = shouldGroupLastArg(args, options); + if (shouldGroupFirst || shouldGroupLast) { + if (shouldGroupFirst ? printedArguments.slice(1).some(willBreak) : printedArguments.slice(0, -1).some(willBreak)) { + return allArgsBrokenOut(); + } + let printedExpanded = []; + try { + path.try(() => { + iterateCallArgumentsPath(path, (argPath, i) => { + if (shouldGroupFirst && i === 0) { + printedExpanded = [[print([], { + expandFirstArg: true + }), printedArguments.length > 1 ? "," : "", hasEmptyLineFollowingFirstArg ? hardline : line, hasEmptyLineFollowingFirstArg ? hardline : ""], ...printedArguments.slice(1)]; + } + if (shouldGroupLast && i === lastArgIndex) { + printedExpanded = [...printedArguments.slice(0, -1), print([], { + expandLastArg: true + })]; + } + }); + }); + } catch (caught) { + if (caught instanceof ArgExpansionBailout) { + return allArgsBrokenOut(); + } + throw caught; + } + return [printedArguments.some(willBreak) ? breakParent : "", conditionalGroup([["(", ...printedExpanded, ")"], shouldGroupFirst ? ["(", group(printedExpanded[0], { + shouldBreak: true + }), ...printedExpanded.slice(1), ")"] : ["(", ...printedArguments.slice(0, -1), group(getLast(printedExpanded), { + shouldBreak: true + }), ")"], allArgsBrokenOut()])]; + } + const contents = ["(", indent([softline, ...printedArguments]), ifBreak(maybeTrailingComma), softline, ")"]; + if (isLongCurriedCallExpression(path)) { + return contents; + } + return group(contents, { + shouldBreak: printedArguments.some(willBreak) || anyArgEmptyLine + }); + } + function couldGroupArg(arg, arrowChainRecursion = false) { + return arg.type === "ObjectExpression" && (arg.properties.length > 0 || hasComment(arg)) || arg.type === "ArrayExpression" && (arg.elements.length > 0 || hasComment(arg)) || arg.type === "TSTypeAssertion" && couldGroupArg(arg.expression) || isTSTypeExpression(arg) && couldGroupArg(arg.expression) || arg.type === "FunctionExpression" || arg.type === "ArrowFunctionExpression" && (!arg.returnType || !arg.returnType.typeAnnotation || arg.returnType.typeAnnotation.type !== "TSTypeReference" || isNonEmptyBlockStatement(arg.body)) && (arg.body.type === "BlockStatement" || arg.body.type === "ArrowFunctionExpression" && couldGroupArg(arg.body, true) || arg.body.type === "ObjectExpression" || arg.body.type === "ArrayExpression" || !arrowChainRecursion && (isCallExpression(arg.body) || arg.body.type === "ConditionalExpression") || isJsxNode(arg.body)) || arg.type === "DoExpression" || arg.type === "ModuleExpression"; + } + function shouldGroupLastArg(args, options) { + const lastArg = getLast(args); + const penultimateArg = getPenultimate(args); + return !hasComment(lastArg, CommentCheckFlags.Leading) && !hasComment(lastArg, CommentCheckFlags.Trailing) && couldGroupArg(lastArg) && (!penultimateArg || penultimateArg.type !== lastArg.type) && (args.length !== 2 || penultimateArg.type !== "ArrowFunctionExpression" || lastArg.type !== "ArrayExpression") && !(args.length > 1 && lastArg.type === "ArrayExpression" && isConciselyPrintedArray(lastArg, options)); + } + function shouldGroupFirstArg(args) { + if (args.length !== 2) { + return false; + } + const [firstArg, secondArg] = args; + if (firstArg.type === "ModuleExpression" && isTypeModuleObjectExpression(secondArg)) { + return true; + } + return !hasComment(firstArg) && (firstArg.type === "FunctionExpression" || firstArg.type === "ArrowFunctionExpression" && firstArg.body.type === "BlockStatement") && secondArg.type !== "FunctionExpression" && secondArg.type !== "ArrowFunctionExpression" && secondArg.type !== "ConditionalExpression" && !couldGroupArg(secondArg); + } + function isReactHookCallWithDepsArray(args) { + return args.length === 2 && args[0].type === "ArrowFunctionExpression" && getFunctionParameters(args[0]).length === 0 && args[0].body.type === "BlockStatement" && args[1].type === "ArrayExpression" && !args.some((arg) => hasComment(arg)); + } + function isNonEmptyBlockStatement(node) { + return node.type === "BlockStatement" && (node.body.some((node2) => node2.type !== "EmptyStatement") || hasComment(node, CommentCheckFlags.Dangling)); + } + function isTypeModuleObjectExpression(node) { + return node.type === "ObjectExpression" && node.properties.length === 1 && isObjectProperty(node.properties[0]) && node.properties[0].key.type === "Identifier" && node.properties[0].key.name === "type" && isStringLiteral(node.properties[0].value) && node.properties[0].value.value === "module"; + } + module2.exports = printCallArguments; + } +}); +var require_member = __commonJS2({ + "src/language-js/print/member.js"(exports2, module2) { + "use strict"; + var { + builders: { + softline, + group, + indent, + label + } + } = require("./doc.js"); + var { + isNumericLiteral, + isMemberExpression, + isCallExpression + } = require_utils7(); + var { + printOptionalToken + } = require_misc(); + function printMemberExpression(path, options, print) { + const node = path.getValue(); + const parent = path.getParentNode(); + let firstNonMemberParent; + let i = 0; + do { + firstNonMemberParent = path.getParentNode(i); + i++; + } while (firstNonMemberParent && (isMemberExpression(firstNonMemberParent) || firstNonMemberParent.type === "TSNonNullExpression")); + const objectDoc = print("object"); + const lookupDoc = printMemberLookup(path, options, print); + const shouldInline = firstNonMemberParent && (firstNonMemberParent.type === "NewExpression" || firstNonMemberParent.type === "BindExpression" || firstNonMemberParent.type === "AssignmentExpression" && firstNonMemberParent.left.type !== "Identifier") || node.computed || node.object.type === "Identifier" && node.property.type === "Identifier" && !isMemberExpression(parent) || (parent.type === "AssignmentExpression" || parent.type === "VariableDeclarator") && (isCallExpression(node.object) && node.object.arguments.length > 0 || node.object.type === "TSNonNullExpression" && isCallExpression(node.object.expression) && node.object.expression.arguments.length > 0 || objectDoc.label === "member-chain"); + return label(objectDoc.label === "member-chain" ? "member-chain" : "member", [objectDoc, shouldInline ? lookupDoc : group(indent([softline, lookupDoc]))]); + } + function printMemberLookup(path, options, print) { + const property = print("property"); + const node = path.getValue(); + const optional = printOptionalToken(path); + if (!node.computed) { + return [optional, ".", property]; + } + if (!node.property || isNumericLiteral(node.property)) { + return [optional, "[", property, "]"]; + } + return group([optional, "[", indent([softline, property]), softline, "]"]); + } + module2.exports = { + printMemberExpression, + printMemberLookup + }; + } +}); +var require_member_chain = __commonJS2({ + "src/language-js/print/member-chain.js"(exports2, module2) { + "use strict"; + var { + printComments + } = require_comments(); + var { + getLast, + isNextLineEmptyAfterIndex, + getNextNonSpaceNonCommentCharacterIndex + } = require_util(); + var pathNeedsParens = require_needs_parens(); + var { + isCallExpression, + isMemberExpression, + isFunctionOrArrowExpression, + isLongCurriedCallExpression, + isMemberish, + isNumericLiteral, + isSimpleCallArgument, + hasComment, + CommentCheckFlags, + isNextLineEmpty + } = require_utils7(); + var { + locEnd + } = require_loc(); + var { + builders: { + join, + hardline, + group, + indent, + conditionalGroup, + breakParent, + label + }, + utils: { + willBreak + } + } = require("./doc.js"); + var printCallArguments = require_call_arguments(); + var { + printMemberLookup + } = require_member(); + var { + printOptionalToken, + printFunctionTypeParameters, + printBindExpressionCallee + } = require_misc(); + function printMemberChain(path, options, print) { + const parent = path.getParentNode(); + const isExpressionStatement = !parent || parent.type === "ExpressionStatement"; + const printedNodes = []; + function shouldInsertEmptyLineAfter(node2) { + const { + originalText + } = options; + const nextCharIndex = getNextNonSpaceNonCommentCharacterIndex(originalText, node2, locEnd); + const nextChar = originalText.charAt(nextCharIndex); + if (nextChar === ")") { + return nextCharIndex !== false && isNextLineEmptyAfterIndex(originalText, nextCharIndex + 1); + } + return isNextLineEmpty(node2, options); + } + function rec(path2) { + const node2 = path2.getValue(); + if (isCallExpression(node2) && (isMemberish(node2.callee) || isCallExpression(node2.callee))) { + printedNodes.unshift({ + node: node2, + printed: [printComments(path2, [printOptionalToken(path2), printFunctionTypeParameters(path2, options, print), printCallArguments(path2, options, print)], options), shouldInsertEmptyLineAfter(node2) ? hardline : ""] + }); + path2.call((callee) => rec(callee), "callee"); + } else if (isMemberish(node2)) { + printedNodes.unshift({ + node: node2, + needsParens: pathNeedsParens(path2, options), + printed: printComments(path2, isMemberExpression(node2) ? printMemberLookup(path2, options, print) : printBindExpressionCallee(path2, options, print), options) + }); + path2.call((object) => rec(object), "object"); + } else if (node2.type === "TSNonNullExpression") { + printedNodes.unshift({ + node: node2, + printed: printComments(path2, "!", options) + }); + path2.call((expression) => rec(expression), "expression"); + } else { + printedNodes.unshift({ + node: node2, + printed: print() + }); + } + } + const node = path.getValue(); + printedNodes.unshift({ + node, + printed: [printOptionalToken(path), printFunctionTypeParameters(path, options, print), printCallArguments(path, options, print)] + }); + if (node.callee) { + path.call((callee) => rec(callee), "callee"); + } + const groups = []; + let currentGroup = [printedNodes[0]]; + let i = 1; + for (; i < printedNodes.length; ++i) { + if (printedNodes[i].node.type === "TSNonNullExpression" || isCallExpression(printedNodes[i].node) || isMemberExpression(printedNodes[i].node) && printedNodes[i].node.computed && isNumericLiteral(printedNodes[i].node.property)) { + currentGroup.push(printedNodes[i]); + } else { + break; + } + } + if (!isCallExpression(printedNodes[0].node)) { + for (; i + 1 < printedNodes.length; ++i) { + if (isMemberish(printedNodes[i].node) && isMemberish(printedNodes[i + 1].node)) { + currentGroup.push(printedNodes[i]); + } else { + break; + } + } + } + groups.push(currentGroup); + currentGroup = []; + let hasSeenCallExpression = false; + for (; i < printedNodes.length; ++i) { + if (hasSeenCallExpression && isMemberish(printedNodes[i].node)) { + if (printedNodes[i].node.computed && isNumericLiteral(printedNodes[i].node.property)) { + currentGroup.push(printedNodes[i]); + continue; + } + groups.push(currentGroup); + currentGroup = []; + hasSeenCallExpression = false; + } + if (isCallExpression(printedNodes[i].node) || printedNodes[i].node.type === "ImportExpression") { + hasSeenCallExpression = true; + } + currentGroup.push(printedNodes[i]); + if (hasComment(printedNodes[i].node, CommentCheckFlags.Trailing)) { + groups.push(currentGroup); + currentGroup = []; + hasSeenCallExpression = false; + } + } + if (currentGroup.length > 0) { + groups.push(currentGroup); + } + function isFactory(name) { + return /^[A-Z]|^[$_]+$/.test(name); + } + function isShort(name) { + return name.length <= options.tabWidth; + } + function shouldNotWrap(groups2) { + const hasComputed = groups2[1].length > 0 && groups2[1][0].node.computed; + if (groups2[0].length === 1) { + const firstNode = groups2[0][0].node; + return firstNode.type === "ThisExpression" || firstNode.type === "Identifier" && (isFactory(firstNode.name) || isExpressionStatement && isShort(firstNode.name) || hasComputed); + } + const lastNode = getLast(groups2[0]).node; + return isMemberExpression(lastNode) && lastNode.property.type === "Identifier" && (isFactory(lastNode.property.name) || hasComputed); + } + const shouldMerge = groups.length >= 2 && !hasComment(groups[1][0].node) && shouldNotWrap(groups); + function printGroup(printedGroup) { + const printed = printedGroup.map((tuple) => tuple.printed); + if (printedGroup.length > 0 && getLast(printedGroup).needsParens) { + return ["(", ...printed, ")"]; + } + return printed; + } + function printIndentedGroup(groups2) { + if (groups2.length === 0) { + return ""; + } + return indent(group([hardline, join(hardline, groups2.map(printGroup))])); + } + const printedGroups = groups.map(printGroup); + const oneLine = printedGroups; + const cutoff = shouldMerge ? 3 : 2; + const flatGroups = groups.flat(); + const nodeHasComment = flatGroups.slice(1, -1).some((node2) => hasComment(node2.node, CommentCheckFlags.Leading)) || flatGroups.slice(0, -1).some((node2) => hasComment(node2.node, CommentCheckFlags.Trailing)) || groups[cutoff] && hasComment(groups[cutoff][0].node, CommentCheckFlags.Leading); + if (groups.length <= cutoff && !nodeHasComment) { + if (isLongCurriedCallExpression(path)) { + return oneLine; + } + return group(oneLine); + } + const lastNodeBeforeIndent = getLast(groups[shouldMerge ? 1 : 0]).node; + const shouldHaveEmptyLineBeforeIndent = !isCallExpression(lastNodeBeforeIndent) && shouldInsertEmptyLineAfter(lastNodeBeforeIndent); + const expanded = [printGroup(groups[0]), shouldMerge ? groups.slice(1, 2).map(printGroup) : "", shouldHaveEmptyLineBeforeIndent ? hardline : "", printIndentedGroup(groups.slice(shouldMerge ? 2 : 1))]; + const callExpressions = printedNodes.map(({ + node: node2 + }) => node2).filter(isCallExpression); + function lastGroupWillBreakAndOtherCallsHaveFunctionArguments() { + const lastGroupNode = getLast(getLast(groups)).node; + const lastGroupDoc = getLast(printedGroups); + return isCallExpression(lastGroupNode) && willBreak(lastGroupDoc) && callExpressions.slice(0, -1).some((node2) => node2.arguments.some(isFunctionOrArrowExpression)); + } + let result; + if (nodeHasComment || callExpressions.length > 2 && callExpressions.some((expr) => !expr.arguments.every((arg) => isSimpleCallArgument(arg, 0))) || printedGroups.slice(0, -1).some(willBreak) || lastGroupWillBreakAndOtherCallsHaveFunctionArguments()) { + result = group(expanded); + } else { + result = [willBreak(oneLine) || shouldHaveEmptyLineBeforeIndent ? breakParent : "", conditionalGroup([oneLine, expanded])]; + } + return label("member-chain", result); + } + module2.exports = printMemberChain; + } +}); +var require_call_expression = __commonJS2({ + "src/language-js/print/call-expression.js"(exports2, module2) { + "use strict"; + var { + builders: { + join, + group + } + } = require("./doc.js"); + var pathNeedsParens = require_needs_parens(); + var { + getCallArguments, + hasFlowAnnotationComment, + isCallExpression, + isMemberish, + isStringLiteral, + isTemplateOnItsOwnLine, + isTestCall, + iterateCallArgumentsPath + } = require_utils7(); + var printMemberChain = require_member_chain(); + var printCallArguments = require_call_arguments(); + var { + printOptionalToken, + printFunctionTypeParameters + } = require_misc(); + function printCallExpression(path, options, print) { + const node = path.getValue(); + const parentNode = path.getParentNode(); + const isNew = node.type === "NewExpression"; + const isDynamicImport = node.type === "ImportExpression"; + const optional = printOptionalToken(path); + const args = getCallArguments(node); + if (args.length > 0 && (!isDynamicImport && !isNew && isCommonsJsOrAmdCall(node, parentNode) || args.length === 1 && isTemplateOnItsOwnLine(args[0], options.originalText) || !isNew && isTestCall(node, parentNode))) { + const printed = []; + iterateCallArgumentsPath(path, () => { + printed.push(print()); + }); + return [isNew ? "new " : "", print("callee"), optional, printFunctionTypeParameters(path, options, print), "(", join(", ", printed), ")"]; + } + const isIdentifierWithFlowAnnotation = (options.parser === "babel" || options.parser === "babel-flow") && node.callee && node.callee.type === "Identifier" && hasFlowAnnotationComment(node.callee.trailingComments); + if (isIdentifierWithFlowAnnotation) { + node.callee.trailingComments[0].printed = true; + } + if (!isDynamicImport && !isNew && isMemberish(node.callee) && !path.call((path2) => pathNeedsParens(path2, options), "callee")) { + return printMemberChain(path, options, print); + } + const contents = [isNew ? "new " : "", isDynamicImport ? "import" : print("callee"), optional, isIdentifierWithFlowAnnotation ? `/*:: ${node.callee.trailingComments[0].value.slice(2).trim()} */` : "", printFunctionTypeParameters(path, options, print), printCallArguments(path, options, print)]; + if (isDynamicImport || isCallExpression(node.callee)) { + return group(contents); + } + return contents; + } + function isCommonsJsOrAmdCall(node, parentNode) { + if (node.callee.type !== "Identifier") { + return false; + } + if (node.callee.name === "require") { + return true; + } + if (node.callee.name === "define") { + const args = getCallArguments(node); + return parentNode.type === "ExpressionStatement" && (args.length === 1 || args.length === 2 && args[0].type === "ArrayExpression" || args.length === 3 && isStringLiteral(args[0]) && args[1].type === "ArrayExpression"); + } + return false; + } + module2.exports = { + printCallExpression + }; + } +}); +var require_assignment = __commonJS2({ + "src/language-js/print/assignment.js"(exports2, module2) { + "use strict"; + var { + isNonEmptyArray, + getStringWidth + } = require_util(); + var { + builders: { + line, + group, + indent, + indentIfBreak, + lineSuffixBoundary + }, + utils: { + cleanDoc, + willBreak, + canBreak + } + } = require("./doc.js"); + var { + hasLeadingOwnLineComment, + isBinaryish, + isStringLiteral, + isLiteral, + isNumericLiteral, + isCallExpression, + isMemberExpression, + getCallArguments, + rawText, + hasComment, + isSignedNumericLiteral, + isObjectProperty + } = require_utils7(); + var { + shouldInlineLogicalExpression + } = require_binaryish(); + var { + printCallExpression + } = require_call_expression(); + function printAssignment(path, options, print, leftDoc, operator, rightPropertyName) { + const layout = chooseLayout(path, options, print, leftDoc, rightPropertyName); + const rightDoc = print(rightPropertyName, { + assignmentLayout: layout + }); + switch (layout) { + case "break-after-operator": + return group([group(leftDoc), operator, group(indent([line, rightDoc]))]); + case "never-break-after-operator": + return group([group(leftDoc), operator, " ", rightDoc]); + case "fluid": { + const groupId = Symbol("assignment"); + return group([group(leftDoc), operator, group(indent(line), { + id: groupId + }), lineSuffixBoundary, indentIfBreak(rightDoc, { + groupId + })]); + } + case "break-lhs": + return group([leftDoc, operator, " ", group(rightDoc)]); + case "chain": + return [group(leftDoc), operator, line, rightDoc]; + case "chain-tail": + return [group(leftDoc), operator, indent([line, rightDoc])]; + case "chain-tail-arrow-chain": + return [group(leftDoc), operator, rightDoc]; + case "only-left": + return leftDoc; + } + } + function printAssignmentExpression(path, options, print) { + const node = path.getValue(); + return printAssignment(path, options, print, print("left"), [" ", node.operator], "right"); + } + function printVariableDeclarator(path, options, print) { + return printAssignment(path, options, print, print("id"), " =", "init"); + } + function chooseLayout(path, options, print, leftDoc, rightPropertyName) { + const node = path.getValue(); + const rightNode = node[rightPropertyName]; + if (!rightNode) { + return "only-left"; + } + const isTail = !isAssignment(rightNode); + const shouldUseChainFormatting = path.match(isAssignment, isAssignmentOrVariableDeclarator, (node2) => !isTail || node2.type !== "ExpressionStatement" && node2.type !== "VariableDeclaration"); + if (shouldUseChainFormatting) { + return !isTail ? "chain" : rightNode.type === "ArrowFunctionExpression" && rightNode.body.type === "ArrowFunctionExpression" ? "chain-tail-arrow-chain" : "chain-tail"; + } + const isHeadOfLongChain = !isTail && isAssignment(rightNode.right); + if (isHeadOfLongChain || hasLeadingOwnLineComment(options.originalText, rightNode)) { + return "break-after-operator"; + } + if (rightNode.type === "CallExpression" && rightNode.callee.name === "require" || options.parser === "json5" || options.parser === "json") { + return "never-break-after-operator"; + } + if (isComplexDestructuring(node) || isComplexTypeAliasParams(node) || hasComplexTypeAnnotation(node) || isArrowFunctionVariableDeclarator(node) && canBreak(leftDoc)) { + return "break-lhs"; + } + const hasShortKey = isObjectPropertyWithShortKey(node, leftDoc, options); + if (path.call(() => shouldBreakAfterOperator(path, options, print, hasShortKey), rightPropertyName)) { + return "break-after-operator"; + } + if (hasShortKey || rightNode.type === "TemplateLiteral" || rightNode.type === "TaggedTemplateExpression" || rightNode.type === "BooleanLiteral" || isNumericLiteral(rightNode) || rightNode.type === "ClassExpression") { + return "never-break-after-operator"; + } + return "fluid"; + } + function shouldBreakAfterOperator(path, options, print, hasShortKey) { + const rightNode = path.getValue(); + if (isBinaryish(rightNode) && !shouldInlineLogicalExpression(rightNode)) { + return true; + } + switch (rightNode.type) { + case "StringLiteralTypeAnnotation": + case "SequenceExpression": + return true; + case "ConditionalExpression": { + const { + test + } = rightNode; + return isBinaryish(test) && !shouldInlineLogicalExpression(test); + } + case "ClassExpression": + return isNonEmptyArray(rightNode.decorators); + } + if (hasShortKey) { + return false; + } + let node = rightNode; + const propertiesForPath = []; + for (; ; ) { + if (node.type === "UnaryExpression") { + node = node.argument; + propertiesForPath.push("argument"); + } else if (node.type === "TSNonNullExpression") { + node = node.expression; + propertiesForPath.push("expression"); + } else { + break; + } + } + if (isStringLiteral(node) || path.call(() => isPoorlyBreakableMemberOrCallChain(path, options, print), ...propertiesForPath)) { + return true; + } + return false; + } + function isComplexDestructuring(node) { + if (isAssignmentOrVariableDeclarator(node)) { + const leftNode = node.left || node.id; + return leftNode.type === "ObjectPattern" && leftNode.properties.length > 2 && leftNode.properties.some((property) => isObjectProperty(property) && (!property.shorthand || property.value && property.value.type === "AssignmentPattern")); + } + return false; + } + function isAssignment(node) { + return node.type === "AssignmentExpression"; + } + function isAssignmentOrVariableDeclarator(node) { + return isAssignment(node) || node.type === "VariableDeclarator"; + } + function isComplexTypeAliasParams(node) { + const typeParams = getTypeParametersFromTypeAlias(node); + if (isNonEmptyArray(typeParams)) { + const constraintPropertyName = node.type === "TSTypeAliasDeclaration" ? "constraint" : "bound"; + if (typeParams.length > 1 && typeParams.some((param) => param[constraintPropertyName] || param.default)) { + return true; + } + } + return false; + } + function getTypeParametersFromTypeAlias(node) { + if (isTypeAlias(node) && node.typeParameters && node.typeParameters.params) { + return node.typeParameters.params; + } + return null; + } + function isTypeAlias(node) { + return node.type === "TSTypeAliasDeclaration" || node.type === "TypeAlias"; + } + function hasComplexTypeAnnotation(node) { + if (node.type !== "VariableDeclarator") { + return false; + } + const { + typeAnnotation + } = node.id; + if (!typeAnnotation || !typeAnnotation.typeAnnotation) { + return false; + } + const typeParams = getTypeParametersFromTypeReference(typeAnnotation.typeAnnotation); + return isNonEmptyArray(typeParams) && typeParams.length > 1 && typeParams.some((param) => isNonEmptyArray(getTypeParametersFromTypeReference(param)) || param.type === "TSConditionalType"); + } + function isArrowFunctionVariableDeclarator(node) { + return node.type === "VariableDeclarator" && node.init && node.init.type === "ArrowFunctionExpression"; + } + function getTypeParametersFromTypeReference(node) { + if (isTypeReference(node) && node.typeParameters && node.typeParameters.params) { + return node.typeParameters.params; + } + return null; + } + function isTypeReference(node) { + return node.type === "TSTypeReference" || node.type === "GenericTypeAnnotation"; + } + function isPoorlyBreakableMemberOrCallChain(path, options, print, deep = false) { + const node = path.getValue(); + const goDeeper = () => isPoorlyBreakableMemberOrCallChain(path, options, print, true); + if (node.type === "TSNonNullExpression") { + return path.call(goDeeper, "expression"); + } + if (isCallExpression(node)) { + const doc2 = printCallExpression(path, options, print); + if (doc2.label === "member-chain") { + return false; + } + const args = getCallArguments(node); + const isPoorlyBreakableCall = args.length === 0 || args.length === 1 && isLoneShortArgument(args[0], options); + if (!isPoorlyBreakableCall) { + return false; + } + if (isCallExpressionWithComplexTypeArguments(node, print)) { + return false; + } + return path.call(goDeeper, "callee"); + } + if (isMemberExpression(node)) { + return path.call(goDeeper, "object"); + } + return deep && (node.type === "Identifier" || node.type === "ThisExpression"); + } + var LONE_SHORT_ARGUMENT_THRESHOLD_RATE = 0.25; + function isLoneShortArgument(node, { + printWidth + }) { + if (hasComment(node)) { + return false; + } + const threshold = printWidth * LONE_SHORT_ARGUMENT_THRESHOLD_RATE; + if (node.type === "ThisExpression" || node.type === "Identifier" && node.name.length <= threshold || isSignedNumericLiteral(node) && !hasComment(node.argument)) { + return true; + } + const regexpPattern = node.type === "Literal" && "regex" in node && node.regex.pattern || node.type === "RegExpLiteral" && node.pattern; + if (regexpPattern) { + return regexpPattern.length <= threshold; + } + if (isStringLiteral(node)) { + return rawText(node).length <= threshold; + } + if (node.type === "TemplateLiteral") { + return node.expressions.length === 0 && node.quasis[0].value.raw.length <= threshold && !node.quasis[0].value.raw.includes("\n"); + } + return isLiteral(node); + } + function isObjectPropertyWithShortKey(node, keyDoc, options) { + if (!isObjectProperty(node)) { + return false; + } + keyDoc = cleanDoc(keyDoc); + const MIN_OVERLAP_FOR_BREAK = 3; + return typeof keyDoc === "string" && getStringWidth(keyDoc) < options.tabWidth + MIN_OVERLAP_FOR_BREAK; + } + function isCallExpressionWithComplexTypeArguments(node, print) { + const typeArgs = getTypeArgumentsFromCallExpression(node); + if (isNonEmptyArray(typeArgs)) { + if (typeArgs.length > 1) { + return true; + } + if (typeArgs.length === 1) { + const firstArg = typeArgs[0]; + if (firstArg.type === "TSUnionType" || firstArg.type === "UnionTypeAnnotation" || firstArg.type === "TSIntersectionType" || firstArg.type === "IntersectionTypeAnnotation" || firstArg.type === "TSTypeLiteral" || firstArg.type === "ObjectTypeAnnotation") { + return true; + } + } + const typeArgsKeyName = node.typeParameters ? "typeParameters" : "typeArguments"; + if (willBreak(print(typeArgsKeyName))) { + return true; + } + } + return false; + } + function getTypeArgumentsFromCallExpression(node) { + return node.typeParameters && node.typeParameters.params || node.typeArguments && node.typeArguments.params; + } + module2.exports = { + printVariableDeclarator, + printAssignmentExpression, + printAssignment, + isArrowFunctionVariableDeclarator + }; + } +}); +var require_function_parameters = __commonJS2({ + "src/language-js/print/function-parameters.js"(exports2, module2) { + "use strict"; + var { + getNextNonSpaceNonCommentCharacter + } = require_util(); + var { + printDanglingComments + } = require_comments(); + var { + builders: { + line, + hardline, + softline, + group, + indent, + ifBreak + }, + utils: { + removeLines, + willBreak + } + } = require("./doc.js"); + var { + getFunctionParameters, + iterateFunctionParametersPath, + isSimpleType, + isTestCall, + isTypeAnnotationAFunction, + isObjectType, + isObjectTypePropertyAFunction, + hasRestParameter, + shouldPrintComma, + hasComment, + isNextLineEmpty + } = require_utils7(); + var { + locEnd + } = require_loc(); + var { + ArgExpansionBailout + } = require_errors(); + var { + printFunctionTypeParameters + } = require_misc(); + function printFunctionParameters(path, print, options, expandArg, printTypeParams) { + const functionNode = path.getValue(); + const parameters = getFunctionParameters(functionNode); + const typeParams = printTypeParams ? printFunctionTypeParameters(path, options, print) : ""; + if (parameters.length === 0) { + return [typeParams, "(", printDanglingComments(path, options, true, (comment) => getNextNonSpaceNonCommentCharacter(options.originalText, comment, locEnd) === ")"), ")"]; + } + const parent = path.getParentNode(); + const isParametersInTestCall = isTestCall(parent); + const shouldHugParameters = shouldHugFunctionParameters(functionNode); + const printed = []; + iterateFunctionParametersPath(path, (parameterPath, index) => { + const isLastParameter = index === parameters.length - 1; + if (isLastParameter && functionNode.rest) { + printed.push("..."); + } + printed.push(print()); + if (isLastParameter) { + return; + } + printed.push(","); + if (isParametersInTestCall || shouldHugParameters) { + printed.push(" "); + } else if (isNextLineEmpty(parameters[index], options)) { + printed.push(hardline, hardline); + } else { + printed.push(line); + } + }); + if (expandArg) { + if (willBreak(typeParams) || willBreak(printed)) { + throw new ArgExpansionBailout(); + } + return group([removeLines(typeParams), "(", removeLines(printed), ")"]); + } + const hasNotParameterDecorator = parameters.every((node) => !node.decorators); + if (shouldHugParameters && hasNotParameterDecorator) { + return [typeParams, "(", ...printed, ")"]; + } + if (isParametersInTestCall) { + return [typeParams, "(", ...printed, ")"]; + } + const isFlowShorthandWithOneArg = (isObjectTypePropertyAFunction(parent) || isTypeAnnotationAFunction(parent) || parent.type === "TypeAlias" || parent.type === "UnionTypeAnnotation" || parent.type === "TSUnionType" || parent.type === "IntersectionTypeAnnotation" || parent.type === "FunctionTypeAnnotation" && parent.returnType === functionNode) && parameters.length === 1 && parameters[0].name === null && functionNode.this !== parameters[0] && parameters[0].typeAnnotation && functionNode.typeParameters === null && isSimpleType(parameters[0].typeAnnotation) && !functionNode.rest; + if (isFlowShorthandWithOneArg) { + if (options.arrowParens === "always") { + return ["(", ...printed, ")"]; + } + return printed; + } + return [typeParams, "(", indent([softline, ...printed]), ifBreak(!hasRestParameter(functionNode) && shouldPrintComma(options, "all") ? "," : ""), softline, ")"]; + } + function shouldHugFunctionParameters(node) { + if (!node) { + return false; + } + const parameters = getFunctionParameters(node); + if (parameters.length !== 1) { + return false; + } + const [parameter] = parameters; + return !hasComment(parameter) && (parameter.type === "ObjectPattern" || parameter.type === "ArrayPattern" || parameter.type === "Identifier" && parameter.typeAnnotation && (parameter.typeAnnotation.type === "TypeAnnotation" || parameter.typeAnnotation.type === "TSTypeAnnotation") && isObjectType(parameter.typeAnnotation.typeAnnotation) || parameter.type === "FunctionTypeParam" && isObjectType(parameter.typeAnnotation) || parameter.type === "AssignmentPattern" && (parameter.left.type === "ObjectPattern" || parameter.left.type === "ArrayPattern") && (parameter.right.type === "Identifier" || parameter.right.type === "ObjectExpression" && parameter.right.properties.length === 0 || parameter.right.type === "ArrayExpression" && parameter.right.elements.length === 0)); + } + function getReturnTypeNode(functionNode) { + let returnTypeNode; + if (functionNode.returnType) { + returnTypeNode = functionNode.returnType; + if (returnTypeNode.typeAnnotation) { + returnTypeNode = returnTypeNode.typeAnnotation; + } + } else if (functionNode.typeAnnotation) { + returnTypeNode = functionNode.typeAnnotation; + } + return returnTypeNode; + } + function shouldGroupFunctionParameters(functionNode, returnTypeDoc) { + const returnTypeNode = getReturnTypeNode(functionNode); + if (!returnTypeNode) { + return false; + } + const typeParameters = functionNode.typeParameters && functionNode.typeParameters.params; + if (typeParameters) { + if (typeParameters.length > 1) { + return false; + } + if (typeParameters.length === 1) { + const typeParameter = typeParameters[0]; + if (typeParameter.constraint || typeParameter.default) { + return false; + } + } + } + return getFunctionParameters(functionNode).length === 1 && (isObjectType(returnTypeNode) || willBreak(returnTypeDoc)); + } + module2.exports = { + printFunctionParameters, + shouldHugFunctionParameters, + shouldGroupFunctionParameters + }; + } +}); +var require_type_annotation = __commonJS2({ + "src/language-js/print/type-annotation.js"(exports2, module2) { + "use strict"; + var { + printComments, + printDanglingComments + } = require_comments(); + var { + isNonEmptyArray + } = require_util(); + var { + builders: { + group, + join, + line, + softline, + indent, + align, + ifBreak + } + } = require("./doc.js"); + var pathNeedsParens = require_needs_parens(); + var { + locStart + } = require_loc(); + var { + isSimpleType, + isObjectType, + hasLeadingOwnLineComment, + isObjectTypePropertyAFunction, + shouldPrintComma + } = require_utils7(); + var { + printAssignment + } = require_assignment(); + var { + printFunctionParameters, + shouldGroupFunctionParameters + } = require_function_parameters(); + var { + printArrayItems + } = require_array4(); + function shouldHugType(node) { + if (isSimpleType(node) || isObjectType(node)) { + return true; + } + if (node.type === "UnionTypeAnnotation" || node.type === "TSUnionType") { + const voidCount = node.types.filter((node2) => node2.type === "VoidTypeAnnotation" || node2.type === "TSVoidKeyword" || node2.type === "NullLiteralTypeAnnotation" || node2.type === "TSNullKeyword").length; + const hasObject = node.types.some((node2) => node2.type === "ObjectTypeAnnotation" || node2.type === "TSTypeLiteral" || node2.type === "GenericTypeAnnotation" || node2.type === "TSTypeReference"); + if (node.types.length - 1 === voidCount && hasObject) { + return true; + } + } + return false; + } + function printOpaqueType(path, options, print) { + const semi = options.semi ? ";" : ""; + const node = path.getValue(); + const parts = []; + parts.push("opaque type ", print("id"), print("typeParameters")); + if (node.supertype) { + parts.push(": ", print("supertype")); + } + if (node.impltype) { + parts.push(" = ", print("impltype")); + } + parts.push(semi); + return parts; + } + function printTypeAlias(path, options, print) { + const semi = options.semi ? ";" : ""; + const node = path.getValue(); + const parts = []; + if (node.declare) { + parts.push("declare "); + } + parts.push("type ", print("id"), print("typeParameters")); + const rightPropertyName = node.type === "TSTypeAliasDeclaration" ? "typeAnnotation" : "right"; + return [printAssignment(path, options, print, parts, " =", rightPropertyName), semi]; + } + function printIntersectionType(path, options, print) { + const node = path.getValue(); + const types = path.map(print, "types"); + const result = []; + let wasIndented = false; + for (let i = 0; i < types.length; ++i) { + if (i === 0) { + result.push(types[i]); + } else if (isObjectType(node.types[i - 1]) && isObjectType(node.types[i])) { + result.push([" & ", wasIndented ? indent(types[i]) : types[i]]); + } else if (!isObjectType(node.types[i - 1]) && !isObjectType(node.types[i])) { + result.push(indent([" &", line, types[i]])); + } else { + if (i > 1) { + wasIndented = true; + } + result.push(" & ", i > 1 ? indent(types[i]) : types[i]); + } + } + return group(result); + } + function printUnionType(path, options, print) { + const node = path.getValue(); + const parent = path.getParentNode(); + const shouldIndent = parent.type !== "TypeParameterInstantiation" && parent.type !== "TSTypeParameterInstantiation" && parent.type !== "GenericTypeAnnotation" && parent.type !== "TSTypeReference" && parent.type !== "TSTypeAssertion" && parent.type !== "TupleTypeAnnotation" && parent.type !== "TSTupleType" && !(parent.type === "FunctionTypeParam" && !parent.name && path.getParentNode(1).this !== parent) && !((parent.type === "TypeAlias" || parent.type === "VariableDeclarator" || parent.type === "TSTypeAliasDeclaration") && hasLeadingOwnLineComment(options.originalText, node)); + const shouldHug = shouldHugType(node); + const printed = path.map((typePath) => { + let printedType = print(); + if (!shouldHug) { + printedType = align(2, printedType); + } + return printComments(typePath, printedType, options); + }, "types"); + if (shouldHug) { + return join(" | ", printed); + } + const shouldAddStartLine = shouldIndent && !hasLeadingOwnLineComment(options.originalText, node); + const code = [ifBreak([shouldAddStartLine ? line : "", "| "]), join([line, "| "], printed)]; + if (pathNeedsParens(path, options)) { + return group([indent(code), softline]); + } + if (parent.type === "TupleTypeAnnotation" && parent.types.length > 1 || parent.type === "TSTupleType" && parent.elementTypes.length > 1) { + return group([indent([ifBreak(["(", softline]), code]), softline, ifBreak(")")]); + } + return group(shouldIndent ? indent(code) : code); + } + function printFunctionType(path, options, print) { + const node = path.getValue(); + const parts = []; + const parent = path.getParentNode(0); + const parentParent = path.getParentNode(1); + const parentParentParent = path.getParentNode(2); + let isArrowFunctionTypeAnnotation = node.type === "TSFunctionType" || !((parent.type === "ObjectTypeProperty" || parent.type === "ObjectTypeInternalSlot") && !parent.variance && !parent.optional && locStart(parent) === locStart(node) || parent.type === "ObjectTypeCallProperty" || parentParentParent && parentParentParent.type === "DeclareFunction"); + let needsColon = isArrowFunctionTypeAnnotation && (parent.type === "TypeAnnotation" || parent.type === "TSTypeAnnotation"); + const needsParens = needsColon && isArrowFunctionTypeAnnotation && (parent.type === "TypeAnnotation" || parent.type === "TSTypeAnnotation") && parentParent.type === "ArrowFunctionExpression"; + if (isObjectTypePropertyAFunction(parent)) { + isArrowFunctionTypeAnnotation = true; + needsColon = true; + } + if (needsParens) { + parts.push("("); + } + const parametersDoc = printFunctionParameters(path, print, options, false, true); + const returnTypeDoc = node.returnType || node.predicate || node.typeAnnotation ? [isArrowFunctionTypeAnnotation ? " => " : ": ", print("returnType"), print("predicate"), print("typeAnnotation")] : ""; + const shouldGroupParameters = shouldGroupFunctionParameters(node, returnTypeDoc); + parts.push(shouldGroupParameters ? group(parametersDoc) : parametersDoc); + if (returnTypeDoc) { + parts.push(returnTypeDoc); + } + if (needsParens) { + parts.push(")"); + } + return group(parts); + } + function printTupleType(path, options, print) { + const node = path.getValue(); + const typesField = node.type === "TSTupleType" ? "elementTypes" : "types"; + const types = node[typesField]; + const isNonEmptyTuple = isNonEmptyArray(types); + const bracketsDelimiterLine = isNonEmptyTuple ? softline : ""; + return group(["[", indent([bracketsDelimiterLine, printArrayItems(path, options, typesField, print)]), ifBreak(isNonEmptyTuple && shouldPrintComma(options, "all") ? "," : ""), printDanglingComments(path, options, true), bracketsDelimiterLine, "]"]); + } + function printIndexedAccessType(path, options, print) { + const node = path.getValue(); + const leftDelimiter = node.type === "OptionalIndexedAccessType" && node.optional ? "?.[" : "["; + return [print("objectType"), leftDelimiter, print("indexType"), "]"]; + } + function printJSDocType(path, print, token) { + const node = path.getValue(); + return [node.postfix ? "" : token, print("typeAnnotation"), node.postfix ? token : ""]; + } + module2.exports = { + printOpaqueType, + printTypeAlias, + printIntersectionType, + printUnionType, + printFunctionType, + printTupleType, + printIndexedAccessType, + shouldHugType, + printJSDocType + }; + } +}); +var require_type_parameters = __commonJS2({ + "src/language-js/print/type-parameters.js"(exports2, module2) { + "use strict"; + var { + printDanglingComments + } = require_comments(); + var { + builders: { + join, + line, + hardline, + softline, + group, + indent, + ifBreak + } + } = require("./doc.js"); + var { + isTestCall, + hasComment, + CommentCheckFlags, + isTSXFile, + shouldPrintComma, + getFunctionParameters, + isObjectType, + getTypeScriptMappedTypeModifier + } = require_utils7(); + var { + createGroupIdMapper + } = require_util(); + var { + shouldHugType + } = require_type_annotation(); + var { + isArrowFunctionVariableDeclarator + } = require_assignment(); + var getTypeParametersGroupId = createGroupIdMapper("typeParameters"); + function printTypeParameters(path, options, print, paramsKey) { + const node = path.getValue(); + if (!node[paramsKey]) { + return ""; + } + if (!Array.isArray(node[paramsKey])) { + return print(paramsKey); + } + const grandparent = path.getNode(2); + const isParameterInTestCall = grandparent && isTestCall(grandparent); + const isArrowFunctionVariable = path.match((node2) => !(node2[paramsKey].length === 1 && isObjectType(node2[paramsKey][0])), void 0, (node2, name) => name === "typeAnnotation", (node2) => node2.type === "Identifier", isArrowFunctionVariableDeclarator); + const shouldInline = node[paramsKey].length === 0 || !isArrowFunctionVariable && (isParameterInTestCall || node[paramsKey].length === 1 && (node[paramsKey][0].type === "NullableTypeAnnotation" || shouldHugType(node[paramsKey][0]))); + if (shouldInline) { + return ["<", join(", ", path.map(print, paramsKey)), printDanglingCommentsForInline(path, options), ">"]; + } + const trailingComma = node.type === "TSTypeParameterInstantiation" ? "" : getFunctionParameters(node).length === 1 && isTSXFile(options) && !node[paramsKey][0].constraint && path.getParentNode().type === "ArrowFunctionExpression" ? "," : shouldPrintComma(options, "all") ? ifBreak(",") : ""; + return group(["<", indent([softline, join([",", line], path.map(print, paramsKey))]), trailingComma, softline, ">"], { + id: getTypeParametersGroupId(node) + }); + } + function printDanglingCommentsForInline(path, options) { + const node = path.getValue(); + if (!hasComment(node, CommentCheckFlags.Dangling)) { + return ""; + } + const hasOnlyBlockComments = !hasComment(node, CommentCheckFlags.Line); + const printed = printDanglingComments(path, options, hasOnlyBlockComments); + if (hasOnlyBlockComments) { + return printed; + } + return [printed, hardline]; + } + function printTypeParameter(path, options, print) { + const node = path.getValue(); + const parts = [node.type === "TSTypeParameter" && node.const ? "const " : ""]; + const parent = path.getParentNode(); + if (parent.type === "TSMappedType") { + if (parent.readonly) { + parts.push(getTypeScriptMappedTypeModifier(parent.readonly, "readonly"), " "); + } + parts.push("[", print("name")); + if (node.constraint) { + parts.push(" in ", print("constraint")); + } + if (parent.nameType) { + parts.push(" as ", path.callParent(() => print("nameType"))); + } + parts.push("]"); + return parts; + } + if (node.variance) { + parts.push(print("variance")); + } + if (node.in) { + parts.push("in "); + } + if (node.out) { + parts.push("out "); + } + parts.push(print("name")); + if (node.bound) { + parts.push(": ", print("bound")); + } + if (node.constraint) { + parts.push(" extends ", print("constraint")); + } + if (node.default) { + parts.push(" = ", print("default")); + } + return parts; + } + module2.exports = { + printTypeParameter, + printTypeParameters, + getTypeParametersGroupId + }; + } +}); +var require_property = __commonJS2({ + "src/language-js/print/property.js"(exports2, module2) { + "use strict"; + var { + printComments + } = require_comments(); + var { + printString, + printNumber + } = require_util(); + var { + isNumericLiteral, + isSimpleNumber, + isStringLiteral, + isStringPropSafeToUnquote, + rawText + } = require_utils7(); + var { + printAssignment + } = require_assignment(); + var needsQuoteProps = /* @__PURE__ */ new WeakMap(); + function printPropertyKey(path, options, print) { + const node = path.getNode(); + if (node.computed) { + return ["[", print("key"), "]"]; + } + const parent = path.getParentNode(); + const { + key + } = node; + if (options.quoteProps === "consistent" && !needsQuoteProps.has(parent)) { + const objectHasStringProp = (parent.properties || parent.body || parent.members).some((prop) => !prop.computed && prop.key && isStringLiteral(prop.key) && !isStringPropSafeToUnquote(prop, options)); + needsQuoteProps.set(parent, objectHasStringProp); + } + if ((key.type === "Identifier" || isNumericLiteral(key) && isSimpleNumber(printNumber(rawText(key))) && String(key.value) === printNumber(rawText(key)) && !(options.parser === "typescript" || options.parser === "babel-ts")) && (options.parser === "json" || options.quoteProps === "consistent" && needsQuoteProps.get(parent))) { + const prop = printString(JSON.stringify(key.type === "Identifier" ? key.name : key.value.toString()), options); + return path.call((keyPath) => printComments(keyPath, prop, options), "key"); + } + if (isStringPropSafeToUnquote(node, options) && (options.quoteProps === "as-needed" || options.quoteProps === "consistent" && !needsQuoteProps.get(parent))) { + return path.call((keyPath) => printComments(keyPath, /^\d/.test(key.value) ? printNumber(key.value) : key.value, options), "key"); + } + return print("key"); + } + function printProperty(path, options, print) { + const node = path.getValue(); + if (node.shorthand) { + return print("value"); + } + return printAssignment(path, options, print, printPropertyKey(path, options, print), ":", "value"); + } + module2.exports = { + printProperty, + printPropertyKey + }; + } +}); +var require_function = __commonJS2({ + "src/language-js/print/function.js"(exports2, module2) { + "use strict"; + var assert = require("assert"); + var { + printDanglingComments, + printCommentsSeparately + } = require_comments(); + var getLast = require_get_last(); + var { + getNextNonSpaceNonCommentCharacterIndex + } = require_util(); + var { + builders: { + line, + softline, + group, + indent, + ifBreak, + hardline, + join, + indentIfBreak + }, + utils: { + removeLines, + willBreak + } + } = require("./doc.js"); + var { + ArgExpansionBailout + } = require_errors(); + var { + getFunctionParameters, + hasLeadingOwnLineComment, + isFlowAnnotationComment, + isJsxNode, + isTemplateOnItsOwnLine, + shouldPrintComma, + startsWithNoLookaheadToken, + isBinaryish, + isLineComment, + hasComment, + getComments, + CommentCheckFlags, + isCallLikeExpression, + isCallExpression, + getCallArguments, + hasNakedLeftSide, + getLeftSide + } = require_utils7(); + var { + locEnd + } = require_loc(); + var { + printFunctionParameters, + shouldGroupFunctionParameters + } = require_function_parameters(); + var { + printPropertyKey + } = require_property(); + var { + printFunctionTypeParameters + } = require_misc(); + function printFunction(path, print, options, args) { + const node = path.getValue(); + let expandArg = false; + if ((node.type === "FunctionDeclaration" || node.type === "FunctionExpression") && args && args.expandLastArg) { + const parent = path.getParentNode(); + if (isCallExpression(parent) && getCallArguments(parent).length > 1) { + expandArg = true; + } + } + const parts = []; + if (node.type === "TSDeclareFunction" && node.declare) { + parts.push("declare "); + } + if (node.async) { + parts.push("async "); + } + if (node.generator) { + parts.push("function* "); + } else { + parts.push("function "); + } + if (node.id) { + parts.push(print("id")); + } + const parametersDoc = printFunctionParameters(path, print, options, expandArg); + const returnTypeDoc = printReturnType(path, print, options); + const shouldGroupParameters = shouldGroupFunctionParameters(node, returnTypeDoc); + parts.push(printFunctionTypeParameters(path, options, print), group([shouldGroupParameters ? group(parametersDoc) : parametersDoc, returnTypeDoc]), node.body ? " " : "", print("body")); + if (options.semi && (node.declare || !node.body)) { + parts.push(";"); + } + return parts; + } + function printMethod(path, options, print) { + const node = path.getNode(); + const { + kind + } = node; + const value = node.value || node; + const parts = []; + if (!kind || kind === "init" || kind === "method" || kind === "constructor") { + if (value.async) { + parts.push("async "); + } + } else { + assert.ok(kind === "get" || kind === "set"); + parts.push(kind, " "); + } + if (value.generator) { + parts.push("*"); + } + parts.push(printPropertyKey(path, options, print), node.optional || node.key.optional ? "?" : ""); + if (node === value) { + parts.push(printMethodInternal(path, options, print)); + } else if (value.type === "FunctionExpression") { + parts.push(path.call((path2) => printMethodInternal(path2, options, print), "value")); + } else { + parts.push(print("value")); + } + return parts; + } + function printMethodInternal(path, options, print) { + const node = path.getNode(); + const parametersDoc = printFunctionParameters(path, print, options); + const returnTypeDoc = printReturnType(path, print, options); + const shouldGroupParameters = shouldGroupFunctionParameters(node, returnTypeDoc); + const parts = [printFunctionTypeParameters(path, options, print), group([shouldGroupParameters ? group(parametersDoc) : parametersDoc, returnTypeDoc])]; + if (node.body) { + parts.push(" ", print("body")); + } else { + parts.push(options.semi ? ";" : ""); + } + return parts; + } + function printArrowFunctionSignature(path, options, print, args) { + const node = path.getValue(); + const parts = []; + if (node.async) { + parts.push("async "); + } + if (shouldPrintParamsWithoutParens(path, options)) { + parts.push(print(["params", 0])); + } else { + const expandArg = args && (args.expandLastArg || args.expandFirstArg); + let returnTypeDoc = printReturnType(path, print, options); + if (expandArg) { + if (willBreak(returnTypeDoc)) { + throw new ArgExpansionBailout(); + } + returnTypeDoc = group(removeLines(returnTypeDoc)); + } + parts.push(group([printFunctionParameters(path, print, options, expandArg, true), returnTypeDoc])); + } + const dangling = printDanglingComments(path, options, true, (comment) => { + const nextCharacter = getNextNonSpaceNonCommentCharacterIndex(options.originalText, comment, locEnd); + return nextCharacter !== false && options.originalText.slice(nextCharacter, nextCharacter + 2) === "=>"; + }); + if (dangling) { + parts.push(" ", dangling); + } + return parts; + } + function printArrowChain(path, args, signatures, shouldBreak, bodyDoc, tailNode) { + const name = path.getName(); + const parent = path.getParentNode(); + const isCallee = isCallLikeExpression(parent) && name === "callee"; + const isAssignmentRhs = Boolean(args && args.assignmentLayout); + const shouldPutBodyOnSeparateLine = tailNode.body.type !== "BlockStatement" && tailNode.body.type !== "ObjectExpression" && tailNode.body.type !== "SequenceExpression"; + const shouldBreakBeforeChain = isCallee && shouldPutBodyOnSeparateLine || args && args.assignmentLayout === "chain-tail-arrow-chain"; + const groupId = Symbol("arrow-chain"); + if (tailNode.body.type === "SequenceExpression") { + bodyDoc = group(["(", indent([softline, bodyDoc]), softline, ")"]); + } + return group([group(indent([isCallee || isAssignmentRhs ? softline : "", group(join([" =>", line], signatures), { + shouldBreak + })]), { + id: groupId, + shouldBreak: shouldBreakBeforeChain + }), " =>", indentIfBreak(shouldPutBodyOnSeparateLine ? indent([line, bodyDoc]) : [" ", bodyDoc], { + groupId + }), isCallee ? ifBreak(softline, "", { + groupId + }) : ""]); + } + function printArrowFunction(path, options, print, args) { + let node = path.getValue(); + const signatures = []; + const body = []; + let chainShouldBreak = false; + (function rec() { + const doc2 = printArrowFunctionSignature(path, options, print, args); + if (signatures.length === 0) { + signatures.push(doc2); + } else { + const { + leading, + trailing + } = printCommentsSeparately(path, options); + signatures.push([leading, doc2]); + body.unshift(trailing); + } + chainShouldBreak = chainShouldBreak || node.returnType && getFunctionParameters(node).length > 0 || node.typeParameters || getFunctionParameters(node).some((param) => param.type !== "Identifier"); + if (node.body.type !== "ArrowFunctionExpression" || args && args.expandLastArg) { + body.unshift(print("body", args)); + } else { + node = node.body; + path.call(rec, "body"); + } + })(); + if (signatures.length > 1) { + return printArrowChain(path, args, signatures, chainShouldBreak, body, node); + } + const parts = signatures; + parts.push(" =>"); + if (!hasLeadingOwnLineComment(options.originalText, node.body) && (node.body.type === "ArrayExpression" || node.body.type === "ObjectExpression" || node.body.type === "BlockStatement" || isJsxNode(node.body) || isTemplateOnItsOwnLine(node.body, options.originalText) || node.body.type === "ArrowFunctionExpression" || node.body.type === "DoExpression")) { + return group([...parts, " ", body]); + } + if (node.body.type === "SequenceExpression") { + return group([...parts, group([" (", indent([softline, body]), softline, ")"])]); + } + const shouldAddSoftLine = (args && args.expandLastArg || path.getParentNode().type === "JSXExpressionContainer") && !hasComment(node); + const printTrailingComma = args && args.expandLastArg && shouldPrintComma(options, "all"); + const shouldAddParens = node.body.type === "ConditionalExpression" && !startsWithNoLookaheadToken(node.body, (node2) => node2.type === "ObjectExpression"); + return group([...parts, group([indent([line, shouldAddParens ? ifBreak("", "(") : "", body, shouldAddParens ? ifBreak("", ")") : ""]), shouldAddSoftLine ? [ifBreak(printTrailingComma ? "," : ""), softline] : ""])]); + } + function canPrintParamsWithoutParens(node) { + const parameters = getFunctionParameters(node); + return parameters.length === 1 && !node.typeParameters && !hasComment(node, CommentCheckFlags.Dangling) && parameters[0].type === "Identifier" && !parameters[0].typeAnnotation && !hasComment(parameters[0]) && !parameters[0].optional && !node.predicate && !node.returnType; + } + function shouldPrintParamsWithoutParens(path, options) { + if (options.arrowParens === "always") { + return false; + } + if (options.arrowParens === "avoid") { + const node = path.getValue(); + return canPrintParamsWithoutParens(node); + } + return false; + } + function printReturnType(path, print, options) { + const node = path.getValue(); + const returnType = print("returnType"); + if (node.returnType && isFlowAnnotationComment(options.originalText, node.returnType)) { + return [" /*: ", returnType, " */"]; + } + const parts = [returnType]; + if (node.returnType && node.returnType.typeAnnotation) { + parts.unshift(": "); + } + if (node.predicate) { + parts.push(node.returnType ? " " : ": ", print("predicate")); + } + return parts; + } + function printReturnOrThrowArgument(path, options, print) { + const node = path.getValue(); + const semi = options.semi ? ";" : ""; + const parts = []; + if (node.argument) { + if (returnArgumentHasLeadingComment(options, node.argument)) { + parts.push([" (", indent([hardline, print("argument")]), hardline, ")"]); + } else if (isBinaryish(node.argument) || node.argument.type === "SequenceExpression") { + parts.push(group([ifBreak(" (", " "), indent([softline, print("argument")]), softline, ifBreak(")")])); + } else { + parts.push(" ", print("argument")); + } + } + const comments = getComments(node); + const lastComment = getLast(comments); + const isLastCommentLine = lastComment && isLineComment(lastComment); + if (isLastCommentLine) { + parts.push(semi); + } + if (hasComment(node, CommentCheckFlags.Dangling)) { + parts.push(" ", printDanglingComments(path, options, true)); + } + if (!isLastCommentLine) { + parts.push(semi); + } + return parts; + } + function printReturnStatement(path, options, print) { + return ["return", printReturnOrThrowArgument(path, options, print)]; + } + function printThrowStatement(path, options, print) { + return ["throw", printReturnOrThrowArgument(path, options, print)]; + } + function returnArgumentHasLeadingComment(options, argument) { + if (hasLeadingOwnLineComment(options.originalText, argument)) { + return true; + } + if (hasNakedLeftSide(argument)) { + let leftMost = argument; + let newLeftMost; + while (newLeftMost = getLeftSide(leftMost)) { + leftMost = newLeftMost; + if (hasLeadingOwnLineComment(options.originalText, leftMost)) { + return true; + } + } + } + return false; + } + module2.exports = { + printFunction, + printArrowFunction, + printMethod, + printReturnStatement, + printThrowStatement, + printMethodInternal, + shouldPrintParamsWithoutParens + }; + } +}); +var require_decorators = __commonJS2({ + "src/language-js/print/decorators.js"(exports2, module2) { + "use strict"; + var { + isNonEmptyArray, + hasNewline + } = require_util(); + var { + builders: { + line, + hardline, + join, + breakParent, + group + } + } = require("./doc.js"); + var { + locStart, + locEnd + } = require_loc(); + var { + getParentExportDeclaration + } = require_utils7(); + function printClassMemberDecorators(path, options, print) { + const node = path.getValue(); + return group([join(line, path.map(print, "decorators")), hasNewlineBetweenOrAfterDecorators(node, options) ? hardline : line]); + } + function printDecoratorsBeforeExport(path, options, print) { + return [join(hardline, path.map(print, "declaration", "decorators")), hardline]; + } + function printDecorators(path, options, print) { + const node = path.getValue(); + const { + decorators + } = node; + if (!isNonEmptyArray(decorators) || hasDecoratorsBeforeExport(path.getParentNode())) { + return; + } + const shouldBreak = node.type === "ClassExpression" || node.type === "ClassDeclaration" || hasNewlineBetweenOrAfterDecorators(node, options); + return [getParentExportDeclaration(path) ? hardline : shouldBreak ? breakParent : "", join(line, path.map(print, "decorators")), line]; + } + function hasNewlineBetweenOrAfterDecorators(node, options) { + return node.decorators.some((decorator) => hasNewline(options.originalText, locEnd(decorator))); + } + function hasDecoratorsBeforeExport(node) { + if (node.type !== "ExportDefaultDeclaration" && node.type !== "ExportNamedDeclaration" && node.type !== "DeclareExportDeclaration") { + return false; + } + const decorators = node.declaration && node.declaration.decorators; + return isNonEmptyArray(decorators) && locStart(node) === locStart(decorators[0]); + } + module2.exports = { + printDecorators, + printClassMemberDecorators, + printDecoratorsBeforeExport, + hasDecoratorsBeforeExport + }; + } +}); +var require_class = __commonJS2({ + "src/language-js/print/class.js"(exports2, module2) { + "use strict"; + var { + isNonEmptyArray, + createGroupIdMapper + } = require_util(); + var { + printComments, + printDanglingComments + } = require_comments(); + var { + builders: { + join, + line, + hardline, + softline, + group, + indent, + ifBreak + } + } = require("./doc.js"); + var { + hasComment, + CommentCheckFlags + } = require_utils7(); + var { + getTypeParametersGroupId + } = require_type_parameters(); + var { + printMethod + } = require_function(); + var { + printOptionalToken, + printTypeAnnotation, + printDefiniteToken + } = require_misc(); + var { + printPropertyKey + } = require_property(); + var { + printAssignment + } = require_assignment(); + var { + printClassMemberDecorators + } = require_decorators(); + function printClass(path, options, print) { + const node = path.getValue(); + const parts = []; + if (node.declare) { + parts.push("declare "); + } + if (node.abstract) { + parts.push("abstract "); + } + parts.push("class"); + const groupMode = node.id && hasComment(node.id, CommentCheckFlags.Trailing) || node.typeParameters && hasComment(node.typeParameters, CommentCheckFlags.Trailing) || node.superClass && hasComment(node.superClass) || isNonEmptyArray(node.extends) || isNonEmptyArray(node.mixins) || isNonEmptyArray(node.implements); + const partsGroup = []; + const extendsParts = []; + if (node.id) { + partsGroup.push(" ", print("id")); + } + partsGroup.push(print("typeParameters")); + if (node.superClass) { + const printed = [printSuperClass(path, options, print), print("superTypeParameters")]; + const printedWithComments = path.call((superClass) => ["extends ", printComments(superClass, printed, options)], "superClass"); + if (groupMode) { + extendsParts.push(line, group(printedWithComments)); + } else { + extendsParts.push(" ", printedWithComments); + } + } else { + extendsParts.push(printList(path, options, print, "extends")); + } + extendsParts.push(printList(path, options, print, "mixins"), printList(path, options, print, "implements")); + if (groupMode) { + let printedPartsGroup; + if (shouldIndentOnlyHeritageClauses(node)) { + printedPartsGroup = [...partsGroup, indent(extendsParts)]; + } else { + printedPartsGroup = indent([...partsGroup, extendsParts]); + } + parts.push(group(printedPartsGroup, { + id: getHeritageGroupId(node) + })); + } else { + parts.push(...partsGroup, ...extendsParts); + } + parts.push(" ", print("body")); + return parts; + } + var getHeritageGroupId = createGroupIdMapper("heritageGroup"); + function printHardlineAfterHeritage(node) { + return ifBreak(hardline, "", { + groupId: getHeritageGroupId(node) + }); + } + function hasMultipleHeritage(node) { + return ["superClass", "extends", "mixins", "implements"].filter((key) => Boolean(node[key])).length > 1; + } + function shouldIndentOnlyHeritageClauses(node) { + return node.typeParameters && !hasComment(node.typeParameters, CommentCheckFlags.Trailing | CommentCheckFlags.Line) && !hasMultipleHeritage(node); + } + function printList(path, options, print, listName) { + const node = path.getValue(); + if (!isNonEmptyArray(node[listName])) { + return ""; + } + const printedLeadingComments = printDanglingComments(path, options, true, ({ + marker + }) => marker === listName); + return [shouldIndentOnlyHeritageClauses(node) ? ifBreak(" ", line, { + groupId: getTypeParametersGroupId(node.typeParameters) + }) : line, printedLeadingComments, printedLeadingComments && hardline, listName, group(indent([line, join([",", line], path.map(print, listName))]))]; + } + function printSuperClass(path, options, print) { + const printed = print("superClass"); + const parent = path.getParentNode(); + if (parent.type === "AssignmentExpression") { + return group(ifBreak(["(", indent([softline, printed]), softline, ")"], printed)); + } + return printed; + } + function printClassMethod(path, options, print) { + const node = path.getValue(); + const parts = []; + if (isNonEmptyArray(node.decorators)) { + parts.push(printClassMemberDecorators(path, options, print)); + } + if (node.accessibility) { + parts.push(node.accessibility + " "); + } + if (node.readonly) { + parts.push("readonly "); + } + if (node.declare) { + parts.push("declare "); + } + if (node.static) { + parts.push("static "); + } + if (node.type === "TSAbstractMethodDefinition" || node.abstract) { + parts.push("abstract "); + } + if (node.override) { + parts.push("override "); + } + parts.push(printMethod(path, options, print)); + return parts; + } + function printClassProperty(path, options, print) { + const node = path.getValue(); + const parts = []; + const semi = options.semi ? ";" : ""; + if (isNonEmptyArray(node.decorators)) { + parts.push(printClassMemberDecorators(path, options, print)); + } + if (node.accessibility) { + parts.push(node.accessibility + " "); + } + if (node.declare) { + parts.push("declare "); + } + if (node.static) { + parts.push("static "); + } + if (node.type === "TSAbstractPropertyDefinition" || node.type === "TSAbstractAccessorProperty" || node.abstract) { + parts.push("abstract "); + } + if (node.override) { + parts.push("override "); + } + if (node.readonly) { + parts.push("readonly "); + } + if (node.variance) { + parts.push(print("variance")); + } + if (node.type === "ClassAccessorProperty" || node.type === "AccessorProperty" || node.type === "TSAbstractAccessorProperty") { + parts.push("accessor "); + } + parts.push(printPropertyKey(path, options, print), printOptionalToken(path), printDefiniteToken(path), printTypeAnnotation(path, options, print)); + return [printAssignment(path, options, print, parts, " =", "value"), semi]; + } + module2.exports = { + printClass, + printClassMethod, + printClassProperty, + printHardlineAfterHeritage + }; + } +}); +var require_interface = __commonJS2({ + "src/language-js/print/interface.js"(exports2, module2) { + "use strict"; + var { + isNonEmptyArray + } = require_util(); + var { + builders: { + join, + line, + group, + indent, + ifBreak + } + } = require("./doc.js"); + var { + hasComment, + identity, + CommentCheckFlags + } = require_utils7(); + var { + getTypeParametersGroupId + } = require_type_parameters(); + var { + printTypeScriptModifiers + } = require_misc(); + function printInterface(path, options, print) { + const node = path.getValue(); + const parts = []; + if (node.declare) { + parts.push("declare "); + } + if (node.type === "TSInterfaceDeclaration") { + parts.push(node.abstract ? "abstract " : "", printTypeScriptModifiers(path, options, print)); + } + parts.push("interface"); + const partsGroup = []; + const extendsParts = []; + if (node.type !== "InterfaceTypeAnnotation") { + partsGroup.push(" ", print("id"), print("typeParameters")); + } + const shouldIndentOnlyHeritageClauses = node.typeParameters && !hasComment(node.typeParameters, CommentCheckFlags.Trailing | CommentCheckFlags.Line); + if (isNonEmptyArray(node.extends)) { + extendsParts.push(shouldIndentOnlyHeritageClauses ? ifBreak(" ", line, { + groupId: getTypeParametersGroupId(node.typeParameters) + }) : line, "extends ", (node.extends.length === 1 ? identity : indent)(join([",", line], path.map(print, "extends")))); + } + if (node.id && hasComment(node.id, CommentCheckFlags.Trailing) || isNonEmptyArray(node.extends)) { + if (shouldIndentOnlyHeritageClauses) { + parts.push(group([...partsGroup, indent(extendsParts)])); + } else { + parts.push(group(indent([...partsGroup, ...extendsParts]))); + } + } else { + parts.push(...partsGroup, ...extendsParts); + } + parts.push(" ", print("body")); + return group(parts); + } + module2.exports = { + printInterface + }; + } +}); +var require_module = __commonJS2({ + "src/language-js/print/module.js"(exports2, module2) { + "use strict"; + var { + isNonEmptyArray + } = require_util(); + var { + builders: { + softline, + group, + indent, + join, + line, + ifBreak, + hardline + } + } = require("./doc.js"); + var { + printDanglingComments + } = require_comments(); + var { + hasComment, + CommentCheckFlags, + shouldPrintComma, + needsHardlineAfterDanglingComment, + isStringLiteral, + rawText + } = require_utils7(); + var { + locStart, + hasSameLoc + } = require_loc(); + var { + hasDecoratorsBeforeExport, + printDecoratorsBeforeExport + } = require_decorators(); + function printImportDeclaration(path, options, print) { + const node = path.getValue(); + const semi = options.semi ? ";" : ""; + const parts = []; + const { + importKind + } = node; + parts.push("import"); + if (importKind && importKind !== "value") { + parts.push(" ", importKind); + } + parts.push(printModuleSpecifiers(path, options, print), printModuleSource(path, options, print), printImportAssertions(path, options, print), semi); + return parts; + } + function printExportDeclaration(path, options, print) { + const node = path.getValue(); + const parts = []; + if (hasDecoratorsBeforeExport(node)) { + parts.push(printDecoratorsBeforeExport(path, options, print)); + } + const { + type, + exportKind, + declaration + } = node; + parts.push("export"); + const isDefaultExport = node.default || type === "ExportDefaultDeclaration"; + if (isDefaultExport) { + parts.push(" default"); + } + if (hasComment(node, CommentCheckFlags.Dangling)) { + parts.push(" ", printDanglingComments(path, options, true)); + if (needsHardlineAfterDanglingComment(node)) { + parts.push(hardline); + } + } + if (declaration) { + parts.push(" ", print("declaration")); + } else { + parts.push(exportKind === "type" ? " type" : "", printModuleSpecifiers(path, options, print), printModuleSource(path, options, print), printImportAssertions(path, options, print)); + } + if (shouldExportDeclarationPrintSemi(node, options)) { + parts.push(";"); + } + return parts; + } + function printExportAllDeclaration(path, options, print) { + const node = path.getValue(); + const semi = options.semi ? ";" : ""; + const parts = []; + const { + exportKind, + exported + } = node; + parts.push("export"); + if (exportKind === "type") { + parts.push(" type"); + } + parts.push(" *"); + if (exported) { + parts.push(" as ", print("exported")); + } + parts.push(printModuleSource(path, options, print), printImportAssertions(path, options, print), semi); + return parts; + } + function shouldExportDeclarationPrintSemi(node, options) { + if (!options.semi) { + return false; + } + const { + type, + declaration + } = node; + const isDefaultExport = node.default || type === "ExportDefaultDeclaration"; + if (!declaration) { + return true; + } + const { + type: declarationType + } = declaration; + if (isDefaultExport && declarationType !== "ClassDeclaration" && declarationType !== "FunctionDeclaration" && declarationType !== "TSInterfaceDeclaration" && declarationType !== "DeclareClass" && declarationType !== "DeclareFunction" && declarationType !== "TSDeclareFunction" && declarationType !== "EnumDeclaration") { + return true; + } + return false; + } + function printModuleSource(path, options, print) { + const node = path.getValue(); + if (!node.source) { + return ""; + } + const parts = []; + if (!shouldNotPrintSpecifiers(node, options)) { + parts.push(" from"); + } + parts.push(" ", print("source")); + return parts; + } + function printModuleSpecifiers(path, options, print) { + const node = path.getValue(); + if (shouldNotPrintSpecifiers(node, options)) { + return ""; + } + const parts = [" "]; + if (isNonEmptyArray(node.specifiers)) { + const standaloneSpecifiers = []; + const groupedSpecifiers = []; + path.each(() => { + const specifierType = path.getValue().type; + if (specifierType === "ExportNamespaceSpecifier" || specifierType === "ExportDefaultSpecifier" || specifierType === "ImportNamespaceSpecifier" || specifierType === "ImportDefaultSpecifier") { + standaloneSpecifiers.push(print()); + } else if (specifierType === "ExportSpecifier" || specifierType === "ImportSpecifier") { + groupedSpecifiers.push(print()); + } else { + throw new Error(`Unknown specifier type ${JSON.stringify(specifierType)}`); + } + }, "specifiers"); + parts.push(join(", ", standaloneSpecifiers)); + if (groupedSpecifiers.length > 0) { + if (standaloneSpecifiers.length > 0) { + parts.push(", "); + } + const canBreak = groupedSpecifiers.length > 1 || standaloneSpecifiers.length > 0 || node.specifiers.some((node2) => hasComment(node2)); + if (canBreak) { + parts.push(group(["{", indent([options.bracketSpacing ? line : softline, join([",", line], groupedSpecifiers)]), ifBreak(shouldPrintComma(options) ? "," : ""), options.bracketSpacing ? line : softline, "}"])); + } else { + parts.push(["{", options.bracketSpacing ? " " : "", ...groupedSpecifiers, options.bracketSpacing ? " " : "", "}"]); + } + } + } else { + parts.push("{}"); + } + return parts; + } + function shouldNotPrintSpecifiers(node, options) { + const { + type, + importKind, + source, + specifiers + } = node; + if (type !== "ImportDeclaration" || isNonEmptyArray(specifiers) || importKind === "type") { + return false; + } + return !/{\s*}/.test(options.originalText.slice(locStart(node), locStart(source))); + } + function printImportAssertions(path, options, print) { + const node = path.getNode(); + if (isNonEmptyArray(node.assertions)) { + return [" assert {", options.bracketSpacing ? " " : "", join(", ", path.map(print, "assertions")), options.bracketSpacing ? " " : "", "}"]; + } + return ""; + } + function printModuleSpecifier(path, options, print) { + const node = path.getNode(); + const { + type + } = node; + const parts = []; + const kind = type === "ImportSpecifier" ? node.importKind : node.exportKind; + if (kind && kind !== "value") { + parts.push(kind, " "); + } + const isImport = type.startsWith("Import"); + const leftSideProperty = isImport ? "imported" : "local"; + const rightSideProperty = isImport ? "local" : "exported"; + const leftSideNode = node[leftSideProperty]; + const rightSideNode = node[rightSideProperty]; + let left = ""; + let right = ""; + if (type === "ExportNamespaceSpecifier" || type === "ImportNamespaceSpecifier") { + left = "*"; + } else if (leftSideNode) { + left = print(leftSideProperty); + } + if (rightSideNode && !isShorthandSpecifier(node)) { + right = print(rightSideProperty); + } + parts.push(left, left && right ? " as " : "", right); + return parts; + } + function isShorthandSpecifier(specifier) { + if (specifier.type !== "ImportSpecifier" && specifier.type !== "ExportSpecifier") { + return false; + } + const { + local, + [specifier.type === "ImportSpecifier" ? "imported" : "exported"]: importedOrExported + } = specifier; + if (local.type !== importedOrExported.type || !hasSameLoc(local, importedOrExported)) { + return false; + } + if (isStringLiteral(local)) { + return local.value === importedOrExported.value && rawText(local) === rawText(importedOrExported); + } + switch (local.type) { + case "Identifier": + return local.name === importedOrExported.name; + default: + return false; + } + } + module2.exports = { + printImportDeclaration, + printExportDeclaration, + printExportAllDeclaration, + printModuleSpecifier + }; + } +}); +var require_object = __commonJS2({ + "src/language-js/print/object.js"(exports2, module2) { + "use strict"; + var { + printDanglingComments + } = require_comments(); + var { + builders: { + line, + softline, + group, + indent, + ifBreak, + hardline + } + } = require("./doc.js"); + var { + getLast, + hasNewlineInRange, + hasNewline, + isNonEmptyArray + } = require_util(); + var { + shouldPrintComma, + hasComment, + getComments, + CommentCheckFlags, + isNextLineEmpty + } = require_utils7(); + var { + locStart, + locEnd + } = require_loc(); + var { + printOptionalToken, + printTypeAnnotation + } = require_misc(); + var { + shouldHugFunctionParameters + } = require_function_parameters(); + var { + shouldHugType + } = require_type_annotation(); + var { + printHardlineAfterHeritage + } = require_class(); + function printObject(path, options, print) { + const semi = options.semi ? ";" : ""; + const node = path.getValue(); + let propertiesField; + if (node.type === "TSTypeLiteral") { + propertiesField = "members"; + } else if (node.type === "TSInterfaceBody") { + propertiesField = "body"; + } else { + propertiesField = "properties"; + } + const isTypeAnnotation = node.type === "ObjectTypeAnnotation"; + const fields = [propertiesField]; + if (isTypeAnnotation) { + fields.push("indexers", "callProperties", "internalSlots"); + } + const firstProperty = fields.map((field) => node[field][0]).sort((a, b) => locStart(a) - locStart(b))[0]; + const parent = path.getParentNode(0); + const isFlowInterfaceLikeBody = isTypeAnnotation && parent && (parent.type === "InterfaceDeclaration" || parent.type === "DeclareInterface" || parent.type === "DeclareClass") && path.getName() === "body"; + const shouldBreak = node.type === "TSInterfaceBody" || isFlowInterfaceLikeBody || node.type === "ObjectPattern" && parent.type !== "FunctionDeclaration" && parent.type !== "FunctionExpression" && parent.type !== "ArrowFunctionExpression" && parent.type !== "ObjectMethod" && parent.type !== "ClassMethod" && parent.type !== "ClassPrivateMethod" && parent.type !== "AssignmentPattern" && parent.type !== "CatchClause" && node.properties.some((property) => property.value && (property.value.type === "ObjectPattern" || property.value.type === "ArrayPattern")) || node.type !== "ObjectPattern" && firstProperty && hasNewlineInRange(options.originalText, locStart(node), locStart(firstProperty)); + const separator = isFlowInterfaceLikeBody ? ";" : node.type === "TSInterfaceBody" || node.type === "TSTypeLiteral" ? ifBreak(semi, ";") : ","; + const leftBrace = node.type === "RecordExpression" ? "#{" : node.exact ? "{|" : "{"; + const rightBrace = node.exact ? "|}" : "}"; + const propsAndLoc = []; + for (const field of fields) { + path.each((childPath) => { + const node2 = childPath.getValue(); + propsAndLoc.push({ + node: node2, + printed: print(), + loc: locStart(node2) + }); + }, field); + } + if (fields.length > 1) { + propsAndLoc.sort((a, b) => a.loc - b.loc); + } + let separatorParts = []; + const props = propsAndLoc.map((prop) => { + const result = [...separatorParts, group(prop.printed)]; + separatorParts = [separator, line]; + if ((prop.node.type === "TSPropertySignature" || prop.node.type === "TSMethodSignature" || prop.node.type === "TSConstructSignatureDeclaration") && hasComment(prop.node, CommentCheckFlags.PrettierIgnore)) { + separatorParts.shift(); + } + if (isNextLineEmpty(prop.node, options)) { + separatorParts.push(hardline); + } + return result; + }); + if (node.inexact) { + let printed; + if (hasComment(node, CommentCheckFlags.Dangling)) { + const hasLineComments = hasComment(node, CommentCheckFlags.Line); + const printedDanglingComments = printDanglingComments(path, options, true); + printed = [printedDanglingComments, hasLineComments || hasNewline(options.originalText, locEnd(getLast(getComments(node)))) ? hardline : line, "..."]; + } else { + printed = ["..."]; + } + props.push([...separatorParts, ...printed]); + } + const lastElem = getLast(node[propertiesField]); + const canHaveTrailingSeparator = !(node.inexact || lastElem && lastElem.type === "RestElement" || lastElem && (lastElem.type === "TSPropertySignature" || lastElem.type === "TSCallSignatureDeclaration" || lastElem.type === "TSMethodSignature" || lastElem.type === "TSConstructSignatureDeclaration") && hasComment(lastElem, CommentCheckFlags.PrettierIgnore)); + let content; + if (props.length === 0) { + if (!hasComment(node, CommentCheckFlags.Dangling)) { + return [leftBrace, rightBrace, printTypeAnnotation(path, options, print)]; + } + content = group([leftBrace, printDanglingComments(path, options), softline, rightBrace, printOptionalToken(path), printTypeAnnotation(path, options, print)]); + } else { + content = [isFlowInterfaceLikeBody && isNonEmptyArray(node.properties) ? printHardlineAfterHeritage(parent) : "", leftBrace, indent([options.bracketSpacing ? line : softline, ...props]), ifBreak(canHaveTrailingSeparator && (separator !== "," || shouldPrintComma(options)) ? separator : ""), options.bracketSpacing ? line : softline, rightBrace, printOptionalToken(path), printTypeAnnotation(path, options, print)]; + } + if (path.match((node2) => node2.type === "ObjectPattern" && !node2.decorators, (node2, name, number) => shouldHugFunctionParameters(node2) && (name === "params" || name === "parameters" || name === "this" || name === "rest") && number === 0) || path.match(shouldHugType, (node2, name) => name === "typeAnnotation", (node2, name) => name === "typeAnnotation", (node2, name, number) => shouldHugFunctionParameters(node2) && (name === "params" || name === "parameters" || name === "this" || name === "rest") && number === 0) || !shouldBreak && path.match((node2) => node2.type === "ObjectPattern", (node2) => node2.type === "AssignmentExpression" || node2.type === "VariableDeclarator")) { + return content; + } + return group(content, { + shouldBreak + }); + } + module2.exports = { + printObject + }; + } +}); +var require_flow = __commonJS2({ + "src/language-js/print/flow.js"(exports2, module2) { + "use strict"; + var assert = require("assert"); + var { + printDanglingComments + } = require_comments(); + var { + printString, + printNumber + } = require_util(); + var { + builders: { + hardline, + softline, + group, + indent + } + } = require("./doc.js"); + var { + getParentExportDeclaration, + isFunctionNotation, + isGetterOrSetter, + rawText, + shouldPrintComma + } = require_utils7(); + var { + locStart, + locEnd + } = require_loc(); + var { + replaceTextEndOfLine + } = require_doc_utils(); + var { + printClass + } = require_class(); + var { + printOpaqueType, + printTypeAlias, + printIntersectionType, + printUnionType, + printFunctionType, + printTupleType, + printIndexedAccessType + } = require_type_annotation(); + var { + printInterface + } = require_interface(); + var { + printTypeParameter, + printTypeParameters + } = require_type_parameters(); + var { + printExportDeclaration, + printExportAllDeclaration + } = require_module(); + var { + printArrayItems + } = require_array4(); + var { + printObject + } = require_object(); + var { + printPropertyKey + } = require_property(); + var { + printOptionalToken, + printTypeAnnotation, + printRestSpread + } = require_misc(); + function printFlow(path, options, print) { + const node = path.getValue(); + const semi = options.semi ? ";" : ""; + const parts = []; + switch (node.type) { + case "DeclareClass": + return printFlowDeclaration(path, printClass(path, options, print)); + case "DeclareFunction": + return printFlowDeclaration(path, ["function ", print("id"), node.predicate ? " " : "", print("predicate"), semi]); + case "DeclareModule": + return printFlowDeclaration(path, ["module ", print("id"), " ", print("body")]); + case "DeclareModuleExports": + return printFlowDeclaration(path, ["module.exports", ": ", print("typeAnnotation"), semi]); + case "DeclareVariable": + return printFlowDeclaration(path, ["var ", print("id"), semi]); + case "DeclareOpaqueType": + return printFlowDeclaration(path, printOpaqueType(path, options, print)); + case "DeclareInterface": + return printFlowDeclaration(path, printInterface(path, options, print)); + case "DeclareTypeAlias": + return printFlowDeclaration(path, printTypeAlias(path, options, print)); + case "DeclareExportDeclaration": + return printFlowDeclaration(path, printExportDeclaration(path, options, print)); + case "DeclareExportAllDeclaration": + return printFlowDeclaration(path, printExportAllDeclaration(path, options, print)); + case "OpaqueType": + return printOpaqueType(path, options, print); + case "TypeAlias": + return printTypeAlias(path, options, print); + case "IntersectionTypeAnnotation": + return printIntersectionType(path, options, print); + case "UnionTypeAnnotation": + return printUnionType(path, options, print); + case "FunctionTypeAnnotation": + return printFunctionType(path, options, print); + case "TupleTypeAnnotation": + return printTupleType(path, options, print); + case "GenericTypeAnnotation": + return [print("id"), printTypeParameters(path, options, print, "typeParameters")]; + case "IndexedAccessType": + case "OptionalIndexedAccessType": + return printIndexedAccessType(path, options, print); + case "TypeAnnotation": + return print("typeAnnotation"); + case "TypeParameter": + return printTypeParameter(path, options, print); + case "TypeofTypeAnnotation": + return ["typeof ", print("argument")]; + case "ExistsTypeAnnotation": + return "*"; + case "EmptyTypeAnnotation": + return "empty"; + case "MixedTypeAnnotation": + return "mixed"; + case "ArrayTypeAnnotation": + return [print("elementType"), "[]"]; + case "BooleanLiteralTypeAnnotation": + return String(node.value); + case "EnumDeclaration": + return ["enum ", print("id"), " ", print("body")]; + case "EnumBooleanBody": + case "EnumNumberBody": + case "EnumStringBody": + case "EnumSymbolBody": { + if (node.type === "EnumSymbolBody" || node.explicitType) { + let type = null; + switch (node.type) { + case "EnumBooleanBody": + type = "boolean"; + break; + case "EnumNumberBody": + type = "number"; + break; + case "EnumStringBody": + type = "string"; + break; + case "EnumSymbolBody": + type = "symbol"; + break; + } + parts.push("of ", type, " "); + } + if (node.members.length === 0 && !node.hasUnknownMembers) { + parts.push(group(["{", printDanglingComments(path, options), softline, "}"])); + } else { + const members = node.members.length > 0 ? [hardline, printArrayItems(path, options, "members", print), node.hasUnknownMembers || shouldPrintComma(options) ? "," : ""] : []; + parts.push(group(["{", indent([...members, ...node.hasUnknownMembers ? [hardline, "..."] : []]), printDanglingComments(path, options, true), hardline, "}"])); + } + return parts; + } + case "EnumBooleanMember": + case "EnumNumberMember": + case "EnumStringMember": + return [print("id"), " = ", typeof node.init === "object" ? print("init") : String(node.init)]; + case "EnumDefaultedMember": + return print("id"); + case "FunctionTypeParam": { + const name = node.name ? print("name") : path.getParentNode().this === node ? "this" : ""; + return [name, printOptionalToken(path), name ? ": " : "", print("typeAnnotation")]; + } + case "InterfaceDeclaration": + case "InterfaceTypeAnnotation": + return printInterface(path, options, print); + case "ClassImplements": + case "InterfaceExtends": + return [print("id"), print("typeParameters")]; + case "NullableTypeAnnotation": + return ["?", print("typeAnnotation")]; + case "Variance": { + const { + kind + } = node; + assert.ok(kind === "plus" || kind === "minus"); + return kind === "plus" ? "+" : "-"; + } + case "ObjectTypeCallProperty": + if (node.static) { + parts.push("static "); + } + parts.push(print("value")); + return parts; + case "ObjectTypeIndexer": { + return [node.static ? "static " : "", node.variance ? print("variance") : "", "[", print("id"), node.id ? ": " : "", print("key"), "]: ", print("value")]; + } + case "ObjectTypeProperty": { + let modifier = ""; + if (node.proto) { + modifier = "proto "; + } else if (node.static) { + modifier = "static "; + } + return [modifier, isGetterOrSetter(node) ? node.kind + " " : "", node.variance ? print("variance") : "", printPropertyKey(path, options, print), printOptionalToken(path), isFunctionNotation(node) ? "" : ": ", print("value")]; + } + case "ObjectTypeAnnotation": + return printObject(path, options, print); + case "ObjectTypeInternalSlot": + return [node.static ? "static " : "", "[[", print("id"), "]]", printOptionalToken(path), node.method ? "" : ": ", print("value")]; + case "ObjectTypeSpreadProperty": + return printRestSpread(path, options, print); + case "QualifiedTypeofIdentifier": + case "QualifiedTypeIdentifier": + return [print("qualification"), ".", print("id")]; + case "StringLiteralTypeAnnotation": + return replaceTextEndOfLine(printString(rawText(node), options)); + case "NumberLiteralTypeAnnotation": + assert.strictEqual(typeof node.value, "number"); + case "BigIntLiteralTypeAnnotation": + if (node.extra) { + return printNumber(node.extra.raw); + } + return printNumber(node.raw); + case "TypeCastExpression": { + return ["(", print("expression"), printTypeAnnotation(path, options, print), ")"]; + } + case "TypeParameterDeclaration": + case "TypeParameterInstantiation": { + const printed = printTypeParameters(path, options, print, "params"); + if (options.parser === "flow") { + const start = locStart(node); + const end = locEnd(node); + const commentStartIndex = options.originalText.lastIndexOf("/*", start); + const commentEndIndex = options.originalText.indexOf("*/", end); + if (commentStartIndex !== -1 && commentEndIndex !== -1) { + const comment = options.originalText.slice(commentStartIndex + 2, commentEndIndex).trim(); + if (comment.startsWith("::") && !comment.includes("/*") && !comment.includes("*/")) { + return ["/*:: ", printed, " */"]; + } + } + } + return printed; + } + case "InferredPredicate": + return "%checks"; + case "DeclaredPredicate": + return ["%checks(", print("value"), ")"]; + case "AnyTypeAnnotation": + return "any"; + case "BooleanTypeAnnotation": + return "boolean"; + case "BigIntTypeAnnotation": + return "bigint"; + case "NullLiteralTypeAnnotation": + return "null"; + case "NumberTypeAnnotation": + return "number"; + case "SymbolTypeAnnotation": + return "symbol"; + case "StringTypeAnnotation": + return "string"; + case "VoidTypeAnnotation": + return "void"; + case "ThisTypeAnnotation": + return "this"; + case "Node": + case "Printable": + case "SourceLocation": + case "Position": + case "Statement": + case "Function": + case "Pattern": + case "Expression": + case "Declaration": + case "Specifier": + case "NamedSpecifier": + case "Comment": + case "MemberTypeAnnotation": + case "Type": + throw new Error("unprintable type: " + JSON.stringify(node.type)); + } + } + function printFlowDeclaration(path, printed) { + const parentExportDecl = getParentExportDeclaration(path); + if (parentExportDecl) { + assert.strictEqual(parentExportDecl.type, "DeclareExportDeclaration"); + return printed; + } + return ["declare ", printed]; + } + module2.exports = { + printFlow + }; + } +}); +var require_is_ts_keyword_type = __commonJS2({ + "src/language-js/utils/is-ts-keyword-type.js"(exports2, module2) { + "use strict"; + function isTsKeywordType({ + type + }) { + return type.startsWith("TS") && type.endsWith("Keyword"); + } + module2.exports = isTsKeywordType; + } +}); +var require_ternary = __commonJS2({ + "src/language-js/print/ternary.js"(exports2, module2) { + "use strict"; + var { + hasNewlineInRange + } = require_util(); + var { + isJsxNode, + getComments, + isCallExpression, + isMemberExpression, + isTSTypeExpression + } = require_utils7(); + var { + locStart, + locEnd + } = require_loc(); + var isBlockComment = require_is_block_comment(); + var { + builders: { + line, + softline, + group, + indent, + align, + ifBreak, + dedent, + breakParent + } + } = require("./doc.js"); + function conditionalExpressionChainContainsJsx(node) { + const conditionalExpressions = [node]; + for (let index = 0; index < conditionalExpressions.length; index++) { + const conditionalExpression = conditionalExpressions[index]; + for (const property of ["test", "consequent", "alternate"]) { + const node2 = conditionalExpression[property]; + if (isJsxNode(node2)) { + return true; + } + if (node2.type === "ConditionalExpression") { + conditionalExpressions.push(node2); + } + } + } + return false; + } + function printTernaryTest(path, options, print) { + const node = path.getValue(); + const isConditionalExpression = node.type === "ConditionalExpression"; + const alternateNodePropertyName = isConditionalExpression ? "alternate" : "falseType"; + const parent = path.getParentNode(); + const printed = isConditionalExpression ? print("test") : [print("checkType"), " ", "extends", " ", print("extendsType")]; + if (parent.type === node.type && parent[alternateNodePropertyName] === node) { + return align(2, printed); + } + return printed; + } + var ancestorNameMap = /* @__PURE__ */ new Map([["AssignmentExpression", "right"], ["VariableDeclarator", "init"], ["ReturnStatement", "argument"], ["ThrowStatement", "argument"], ["UnaryExpression", "argument"], ["YieldExpression", "argument"]]); + function shouldExtraIndentForConditionalExpression(path) { + const node = path.getValue(); + if (node.type !== "ConditionalExpression") { + return false; + } + let parent; + let child = node; + for (let ancestorCount = 0; !parent; ancestorCount++) { + const node2 = path.getParentNode(ancestorCount); + if (isCallExpression(node2) && node2.callee === child || isMemberExpression(node2) && node2.object === child || node2.type === "TSNonNullExpression" && node2.expression === child) { + child = node2; + continue; + } + if (node2.type === "NewExpression" && node2.callee === child || isTSTypeExpression(node2) && node2.expression === child) { + parent = path.getParentNode(ancestorCount + 1); + child = node2; + } else { + parent = node2; + } + } + if (child === node) { + return false; + } + return parent[ancestorNameMap.get(parent.type)] === child; + } + function printTernary(path, options, print) { + const node = path.getValue(); + const isConditionalExpression = node.type === "ConditionalExpression"; + const consequentNodePropertyName = isConditionalExpression ? "consequent" : "trueType"; + const alternateNodePropertyName = isConditionalExpression ? "alternate" : "falseType"; + const testNodePropertyNames = isConditionalExpression ? ["test"] : ["checkType", "extendsType"]; + const consequentNode = node[consequentNodePropertyName]; + const alternateNode = node[alternateNodePropertyName]; + const parts = []; + let jsxMode = false; + const parent = path.getParentNode(); + const isParentTest = parent.type === node.type && testNodePropertyNames.some((prop) => parent[prop] === node); + let forceNoIndent = parent.type === node.type && !isParentTest; + let currentParent; + let previousParent; + let i = 0; + do { + previousParent = currentParent || node; + currentParent = path.getParentNode(i); + i++; + } while (currentParent && currentParent.type === node.type && testNodePropertyNames.every((prop) => currentParent[prop] !== previousParent)); + const firstNonConditionalParent = currentParent || parent; + const lastConditionalParent = previousParent; + if (isConditionalExpression && (isJsxNode(node[testNodePropertyNames[0]]) || isJsxNode(consequentNode) || isJsxNode(alternateNode) || conditionalExpressionChainContainsJsx(lastConditionalParent))) { + jsxMode = true; + forceNoIndent = true; + const wrap = (doc2) => [ifBreak("("), indent([softline, doc2]), softline, ifBreak(")")]; + const isNil = (node2) => node2.type === "NullLiteral" || node2.type === "Literal" && node2.value === null || node2.type === "Identifier" && node2.name === "undefined"; + parts.push(" ? ", isNil(consequentNode) ? print(consequentNodePropertyName) : wrap(print(consequentNodePropertyName)), " : ", alternateNode.type === node.type || isNil(alternateNode) ? print(alternateNodePropertyName) : wrap(print(alternateNodePropertyName))); + } else { + const part = [line, "? ", consequentNode.type === node.type ? ifBreak("", "(") : "", align(2, print(consequentNodePropertyName)), consequentNode.type === node.type ? ifBreak("", ")") : "", line, ": ", alternateNode.type === node.type ? print(alternateNodePropertyName) : align(2, print(alternateNodePropertyName))]; + parts.push(parent.type !== node.type || parent[alternateNodePropertyName] === node || isParentTest ? part : options.useTabs ? dedent(indent(part)) : align(Math.max(0, options.tabWidth - 2), part)); + } + const comments = [...testNodePropertyNames.map((propertyName) => getComments(node[propertyName])), getComments(consequentNode), getComments(alternateNode)].flat(); + const shouldBreak = comments.some((comment) => isBlockComment(comment) && hasNewlineInRange(options.originalText, locStart(comment), locEnd(comment))); + const maybeGroup = (doc2) => parent === firstNonConditionalParent ? group(doc2, { + shouldBreak + }) : shouldBreak ? [doc2, breakParent] : doc2; + const breakClosingParen = !jsxMode && (isMemberExpression(parent) || parent.type === "NGPipeExpression" && parent.left === node) && !parent.computed; + const shouldExtraIndent = shouldExtraIndentForConditionalExpression(path); + const result = maybeGroup([printTernaryTest(path, options, print), forceNoIndent ? parts : indent(parts), isConditionalExpression && breakClosingParen && !shouldExtraIndent ? softline : ""]); + return isParentTest || shouldExtraIndent ? group([indent([softline, result]), softline]) : result; + } + module2.exports = { + printTernary + }; + } +}); +var require_statement = __commonJS2({ + "src/language-js/print/statement.js"(exports2, module2) { + "use strict"; + var { + builders: { + hardline + } + } = require("./doc.js"); + var pathNeedsParens = require_needs_parens(); + var { + getLeftSidePathName, + hasNakedLeftSide, + isJsxNode, + isTheOnlyJsxElementInMarkdown, + hasComment, + CommentCheckFlags, + isNextLineEmpty + } = require_utils7(); + var { + shouldPrintParamsWithoutParens + } = require_function(); + function printStatementSequence(path, options, print, property) { + const node = path.getValue(); + const parts = []; + const isClassBody = node.type === "ClassBody"; + const lastStatement = getLastStatement(node[property]); + path.each((path2, index, statements) => { + const node2 = path2.getValue(); + if (node2.type === "EmptyStatement") { + return; + } + const printed = print(); + if (!options.semi && !isClassBody && !isTheOnlyJsxElementInMarkdown(options, path2) && statementNeedsASIProtection(path2, options)) { + if (hasComment(node2, CommentCheckFlags.Leading)) { + parts.push(print([], { + needsSemi: true + })); + } else { + parts.push(";", printed); + } + } else { + parts.push(printed); + } + if (!options.semi && isClassBody && isClassProperty(node2) && shouldPrintSemicolonAfterClassProperty(node2, statements[index + 1])) { + parts.push(";"); + } + if (node2 !== lastStatement) { + parts.push(hardline); + if (isNextLineEmpty(node2, options)) { + parts.push(hardline); + } + } + }, property); + return parts; + } + function getLastStatement(statements) { + for (let i = statements.length - 1; i >= 0; i--) { + const statement = statements[i]; + if (statement.type !== "EmptyStatement") { + return statement; + } + } + } + function statementNeedsASIProtection(path, options) { + const node = path.getNode(); + if (node.type !== "ExpressionStatement") { + return false; + } + return path.call((childPath) => expressionNeedsASIProtection(childPath, options), "expression"); + } + function expressionNeedsASIProtection(path, options) { + const node = path.getValue(); + switch (node.type) { + case "ParenthesizedExpression": + case "TypeCastExpression": + case "ArrayExpression": + case "ArrayPattern": + case "TemplateLiteral": + case "TemplateElement": + case "RegExpLiteral": + return true; + case "ArrowFunctionExpression": { + if (!shouldPrintParamsWithoutParens(path, options)) { + return true; + } + break; + } + case "UnaryExpression": { + const { + prefix, + operator + } = node; + if (prefix && (operator === "+" || operator === "-")) { + return true; + } + break; + } + case "BindExpression": { + if (!node.object) { + return true; + } + break; + } + case "Literal": { + if (node.regex) { + return true; + } + break; + } + default: { + if (isJsxNode(node)) { + return true; + } + } + } + if (pathNeedsParens(path, options)) { + return true; + } + if (!hasNakedLeftSide(node)) { + return false; + } + return path.call((childPath) => expressionNeedsASIProtection(childPath, options), ...getLeftSidePathName(path, node)); + } + function printBody(path, options, print) { + return printStatementSequence(path, options, print, "body"); + } + function printSwitchCaseConsequent(path, options, print) { + return printStatementSequence(path, options, print, "consequent"); + } + var isClassProperty = ({ + type + }) => type === "ClassProperty" || type === "PropertyDefinition" || type === "ClassPrivateProperty" || type === "ClassAccessorProperty" || type === "AccessorProperty" || type === "TSAbstractPropertyDefinition" || type === "TSAbstractAccessorProperty"; + function shouldPrintSemicolonAfterClassProperty(node, nextNode) { + const { + type, + name + } = node.key; + if (!node.computed && type === "Identifier" && (name === "static" || name === "get" || name === "set" || name === "accessor") && !node.value && !node.typeAnnotation) { + return true; + } + if (!nextNode) { + return false; + } + if (nextNode.static || nextNode.accessibility) { + return false; + } + if (!nextNode.computed) { + const name2 = nextNode.key && nextNode.key.name; + if (name2 === "in" || name2 === "instanceof") { + return true; + } + } + if (isClassProperty(nextNode) && nextNode.variance && !nextNode.static && !nextNode.declare) { + return true; + } + switch (nextNode.type) { + case "ClassProperty": + case "PropertyDefinition": + case "TSAbstractPropertyDefinition": + return nextNode.computed; + case "MethodDefinition": + case "TSAbstractMethodDefinition": + case "ClassMethod": + case "ClassPrivateMethod": { + const isAsync = nextNode.value ? nextNode.value.async : nextNode.async; + if (isAsync || nextNode.kind === "get" || nextNode.kind === "set") { + return false; + } + const isGenerator = nextNode.value ? nextNode.value.generator : nextNode.generator; + if (nextNode.computed || isGenerator) { + return true; + } + return false; + } + case "TSIndexSignature": + return true; + } + return false; + } + module2.exports = { + printBody, + printSwitchCaseConsequent + }; + } +}); +var require_block = __commonJS2({ + "src/language-js/print/block.js"(exports2, module2) { + "use strict"; + var { + printDanglingComments + } = require_comments(); + var { + isNonEmptyArray + } = require_util(); + var { + builders: { + hardline, + indent + } + } = require("./doc.js"); + var { + hasComment, + CommentCheckFlags, + isNextLineEmpty + } = require_utils7(); + var { + printHardlineAfterHeritage + } = require_class(); + var { + printBody + } = require_statement(); + function printBlock(path, options, print) { + const node = path.getValue(); + const parts = []; + if (node.type === "StaticBlock") { + parts.push("static "); + } + if (node.type === "ClassBody" && isNonEmptyArray(node.body)) { + const parent = path.getParentNode(); + parts.push(printHardlineAfterHeritage(parent)); + } + parts.push("{"); + const printed = printBlockBody(path, options, print); + if (printed) { + parts.push(indent([hardline, printed]), hardline); + } else { + const parent = path.getParentNode(); + const parentParent = path.getParentNode(1); + if (!(parent.type === "ArrowFunctionExpression" || parent.type === "FunctionExpression" || parent.type === "FunctionDeclaration" || parent.type === "ObjectMethod" || parent.type === "ClassMethod" || parent.type === "ClassPrivateMethod" || parent.type === "ForStatement" || parent.type === "WhileStatement" || parent.type === "DoWhileStatement" || parent.type === "DoExpression" || parent.type === "CatchClause" && !parentParent.finalizer || parent.type === "TSModuleDeclaration" || parent.type === "TSDeclareFunction" || node.type === "StaticBlock" || node.type === "ClassBody")) { + parts.push(hardline); + } + } + parts.push("}"); + return parts; + } + function printBlockBody(path, options, print) { + const node = path.getValue(); + const nodeHasDirectives = isNonEmptyArray(node.directives); + const nodeHasBody = node.body.some((node2) => node2.type !== "EmptyStatement"); + const nodeHasComment = hasComment(node, CommentCheckFlags.Dangling); + if (!nodeHasDirectives && !nodeHasBody && !nodeHasComment) { + return ""; + } + const parts = []; + if (nodeHasDirectives) { + path.each((childPath, index, directives) => { + parts.push(print()); + if (index < directives.length - 1 || nodeHasBody || nodeHasComment) { + parts.push(hardline); + if (isNextLineEmpty(childPath.getValue(), options)) { + parts.push(hardline); + } + } + }, "directives"); + } + if (nodeHasBody) { + parts.push(printBody(path, options, print)); + } + if (nodeHasComment) { + parts.push(printDanglingComments(path, options, true)); + } + if (node.type === "Program") { + const parent = path.getParentNode(); + if (!parent || parent.type !== "ModuleExpression") { + parts.push(hardline); + } + } + return parts; + } + module2.exports = { + printBlock, + printBlockBody + }; + } +}); +var require_typescript = __commonJS2({ + "src/language-js/print/typescript.js"(exports2, module2) { + "use strict"; + var { + printDanglingComments + } = require_comments(); + var { + hasNewlineInRange + } = require_util(); + var { + builders: { + join, + line, + hardline, + softline, + group, + indent, + conditionalGroup, + ifBreak + } + } = require("./doc.js"); + var { + isStringLiteral, + getTypeScriptMappedTypeModifier, + shouldPrintComma, + isCallExpression, + isMemberExpression + } = require_utils7(); + var isTsKeywordType = require_is_ts_keyword_type(); + var { + locStart, + locEnd + } = require_loc(); + var { + printOptionalToken, + printTypeScriptModifiers + } = require_misc(); + var { + printTernary + } = require_ternary(); + var { + printFunctionParameters, + shouldGroupFunctionParameters + } = require_function_parameters(); + var { + printTemplateLiteral + } = require_template_literal(); + var { + printArrayItems + } = require_array4(); + var { + printObject + } = require_object(); + var { + printClassProperty, + printClassMethod + } = require_class(); + var { + printTypeParameter, + printTypeParameters + } = require_type_parameters(); + var { + printPropertyKey + } = require_property(); + var { + printFunction, + printMethodInternal + } = require_function(); + var { + printInterface + } = require_interface(); + var { + printBlock + } = require_block(); + var { + printTypeAlias, + printIntersectionType, + printUnionType, + printFunctionType, + printTupleType, + printIndexedAccessType, + printJSDocType + } = require_type_annotation(); + function printTypescript(path, options, print) { + const node = path.getValue(); + if (!node.type.startsWith("TS")) { + return; + } + if (isTsKeywordType(node)) { + return node.type.slice(2, -7).toLowerCase(); + } + const semi = options.semi ? ";" : ""; + const parts = []; + switch (node.type) { + case "TSThisType": + return "this"; + case "TSTypeAssertion": { + const shouldBreakAfterCast = !(node.expression.type === "ArrayExpression" || node.expression.type === "ObjectExpression"); + const castGroup = group(["<", indent([softline, print("typeAnnotation")]), softline, ">"]); + const exprContents = [ifBreak("("), indent([softline, print("expression")]), softline, ifBreak(")")]; + if (shouldBreakAfterCast) { + return conditionalGroup([[castGroup, print("expression")], [castGroup, group(exprContents, { + shouldBreak: true + })], [castGroup, print("expression")]]); + } + return group([castGroup, print("expression")]); + } + case "TSDeclareFunction": + return printFunction(path, print, options); + case "TSExportAssignment": + return ["export = ", print("expression"), semi]; + case "TSModuleBlock": + return printBlock(path, options, print); + case "TSInterfaceBody": + case "TSTypeLiteral": + return printObject(path, options, print); + case "TSTypeAliasDeclaration": + return printTypeAlias(path, options, print); + case "TSQualifiedName": + return join(".", [print("left"), print("right")]); + case "TSAbstractMethodDefinition": + case "TSDeclareMethod": + return printClassMethod(path, options, print); + case "TSAbstractAccessorProperty": + case "TSAbstractPropertyDefinition": + return printClassProperty(path, options, print); + case "TSInterfaceHeritage": + case "TSExpressionWithTypeArguments": + parts.push(print("expression")); + if (node.typeParameters) { + parts.push(print("typeParameters")); + } + return parts; + case "TSTemplateLiteralType": + return printTemplateLiteral(path, print, options); + case "TSNamedTupleMember": + return [print("label"), node.optional ? "?" : "", ": ", print("elementType")]; + case "TSRestType": + return ["...", print("typeAnnotation")]; + case "TSOptionalType": + return [print("typeAnnotation"), "?"]; + case "TSInterfaceDeclaration": + return printInterface(path, options, print); + case "TSClassImplements": + return [print("expression"), print("typeParameters")]; + case "TSTypeParameterDeclaration": + case "TSTypeParameterInstantiation": + return printTypeParameters(path, options, print, "params"); + case "TSTypeParameter": + return printTypeParameter(path, options, print); + case "TSSatisfiesExpression": + case "TSAsExpression": { + const operator = node.type === "TSAsExpression" ? "as" : "satisfies"; + parts.push(print("expression"), ` ${operator} `, print("typeAnnotation")); + const parent = path.getParentNode(); + if (isCallExpression(parent) && parent.callee === node || isMemberExpression(parent) && parent.object === node) { + return group([indent([softline, ...parts]), softline]); + } + return parts; + } + case "TSArrayType": + return [print("elementType"), "[]"]; + case "TSPropertySignature": { + if (node.readonly) { + parts.push("readonly "); + } + parts.push(printPropertyKey(path, options, print), printOptionalToken(path)); + if (node.typeAnnotation) { + parts.push(": ", print("typeAnnotation")); + } + if (node.initializer) { + parts.push(" = ", print("initializer")); + } + return parts; + } + case "TSParameterProperty": + if (node.accessibility) { + parts.push(node.accessibility + " "); + } + if (node.export) { + parts.push("export "); + } + if (node.static) { + parts.push("static "); + } + if (node.override) { + parts.push("override "); + } + if (node.readonly) { + parts.push("readonly "); + } + parts.push(print("parameter")); + return parts; + case "TSTypeQuery": + return ["typeof ", print("exprName"), print("typeParameters")]; + case "TSIndexSignature": { + const parent = path.getParentNode(); + const trailingComma = node.parameters.length > 1 ? ifBreak(shouldPrintComma(options) ? "," : "") : ""; + const parametersGroup = group([indent([softline, join([", ", softline], path.map(print, "parameters"))]), trailingComma, softline]); + return [node.export ? "export " : "", node.accessibility ? [node.accessibility, " "] : "", node.static ? "static " : "", node.readonly ? "readonly " : "", node.declare ? "declare " : "", "[", node.parameters ? parametersGroup : "", node.typeAnnotation ? "]: " : "]", node.typeAnnotation ? print("typeAnnotation") : "", parent.type === "ClassBody" ? semi : ""]; + } + case "TSTypePredicate": + return [node.asserts ? "asserts " : "", print("parameterName"), node.typeAnnotation ? [" is ", print("typeAnnotation")] : ""]; + case "TSNonNullExpression": + return [print("expression"), "!"]; + case "TSImportType": + return [!node.isTypeOf ? "" : "typeof ", "import(", print(node.parameter ? "parameter" : "argument"), ")", !node.qualifier ? "" : [".", print("qualifier")], printTypeParameters(path, options, print, "typeParameters")]; + case "TSLiteralType": + return print("literal"); + case "TSIndexedAccessType": + return printIndexedAccessType(path, options, print); + case "TSConstructSignatureDeclaration": + case "TSCallSignatureDeclaration": + case "TSConstructorType": { + if (node.type === "TSConstructorType" && node.abstract) { + parts.push("abstract "); + } + if (node.type !== "TSCallSignatureDeclaration") { + parts.push("new "); + } + parts.push(group(printFunctionParameters(path, print, options, false, true))); + if (node.returnType || node.typeAnnotation) { + const isType = node.type === "TSConstructorType"; + parts.push(isType ? " => " : ": ", print("returnType"), print("typeAnnotation")); + } + return parts; + } + case "TSTypeOperator": + return [node.operator, " ", print("typeAnnotation")]; + case "TSMappedType": { + const shouldBreak = hasNewlineInRange(options.originalText, locStart(node), locEnd(node)); + return group(["{", indent([options.bracketSpacing ? line : softline, print("typeParameter"), node.optional ? getTypeScriptMappedTypeModifier(node.optional, "?") : "", node.typeAnnotation ? ": " : "", print("typeAnnotation"), ifBreak(semi)]), printDanglingComments(path, options, true), options.bracketSpacing ? line : softline, "}"], { + shouldBreak + }); + } + case "TSMethodSignature": { + const kind = node.kind && node.kind !== "method" ? `${node.kind} ` : ""; + parts.push(node.accessibility ? [node.accessibility, " "] : "", kind, node.export ? "export " : "", node.static ? "static " : "", node.readonly ? "readonly " : "", node.abstract ? "abstract " : "", node.declare ? "declare " : "", node.computed ? "[" : "", print("key"), node.computed ? "]" : "", printOptionalToken(path)); + const parametersDoc = printFunctionParameters(path, print, options, false, true); + const returnTypePropertyName = node.returnType ? "returnType" : "typeAnnotation"; + const returnTypeNode = node[returnTypePropertyName]; + const returnTypeDoc = returnTypeNode ? print(returnTypePropertyName) : ""; + const shouldGroupParameters = shouldGroupFunctionParameters(node, returnTypeDoc); + parts.push(shouldGroupParameters ? group(parametersDoc) : parametersDoc); + if (returnTypeNode) { + parts.push(": ", group(returnTypeDoc)); + } + return group(parts); + } + case "TSNamespaceExportDeclaration": + parts.push("export as namespace ", print("id")); + if (options.semi) { + parts.push(";"); + } + return group(parts); + case "TSEnumDeclaration": + if (node.declare) { + parts.push("declare "); + } + if (node.modifiers) { + parts.push(printTypeScriptModifiers(path, options, print)); + } + if (node.const) { + parts.push("const "); + } + parts.push("enum ", print("id"), " "); + if (node.members.length === 0) { + parts.push(group(["{", printDanglingComments(path, options), softline, "}"])); + } else { + parts.push(group(["{", indent([hardline, printArrayItems(path, options, "members", print), shouldPrintComma(options, "es5") ? "," : ""]), printDanglingComments(path, options, true), hardline, "}"])); + } + return parts; + case "TSEnumMember": + if (node.computed) { + parts.push("[", print("id"), "]"); + } else { + parts.push(print("id")); + } + if (node.initializer) { + parts.push(" = ", print("initializer")); + } + return parts; + case "TSImportEqualsDeclaration": + if (node.isExport) { + parts.push("export "); + } + parts.push("import "); + if (node.importKind && node.importKind !== "value") { + parts.push(node.importKind, " "); + } + parts.push(print("id"), " = ", print("moduleReference")); + if (options.semi) { + parts.push(";"); + } + return group(parts); + case "TSExternalModuleReference": + return ["require(", print("expression"), ")"]; + case "TSModuleDeclaration": { + const parent = path.getParentNode(); + const isExternalModule = isStringLiteral(node.id); + const parentIsDeclaration = parent.type === "TSModuleDeclaration"; + const bodyIsDeclaration = node.body && node.body.type === "TSModuleDeclaration"; + if (parentIsDeclaration) { + parts.push("."); + } else { + if (node.declare) { + parts.push("declare "); + } + parts.push(printTypeScriptModifiers(path, options, print)); + const textBetweenNodeAndItsId = options.originalText.slice(locStart(node), locStart(node.id)); + const isGlobalDeclaration = node.id.type === "Identifier" && node.id.name === "global" && !/namespace|module/.test(textBetweenNodeAndItsId); + if (!isGlobalDeclaration) { + parts.push(isExternalModule || /(?:^|\s)module(?:\s|$)/.test(textBetweenNodeAndItsId) ? "module " : "namespace "); + } + } + parts.push(print("id")); + if (bodyIsDeclaration) { + parts.push(print("body")); + } else if (node.body) { + parts.push(" ", group(print("body"))); + } else { + parts.push(semi); + } + return parts; + } + case "TSConditionalType": + return printTernary(path, options, print); + case "TSInferType": + return ["infer", " ", print("typeParameter")]; + case "TSIntersectionType": + return printIntersectionType(path, options, print); + case "TSUnionType": + return printUnionType(path, options, print); + case "TSFunctionType": + return printFunctionType(path, options, print); + case "TSTupleType": + return printTupleType(path, options, print); + case "TSTypeReference": + return [print("typeName"), printTypeParameters(path, options, print, "typeParameters")]; + case "TSTypeAnnotation": + return print("typeAnnotation"); + case "TSEmptyBodyFunctionExpression": + return printMethodInternal(path, options, print); + case "TSJSDocAllType": + return "*"; + case "TSJSDocUnknownType": + return "?"; + case "TSJSDocNullableType": + return printJSDocType(path, print, "?"); + case "TSJSDocNonNullableType": + return printJSDocType(path, print, "!"); + case "TSInstantiationExpression": + return [print("expression"), print("typeParameters")]; + default: + throw new Error(`Unknown TypeScript node type: ${JSON.stringify(node.type)}.`); + } + } + module2.exports = { + printTypescript + }; + } +}); +var require_comment = __commonJS2({ + "src/language-js/print/comment.js"(exports2, module2) { + "use strict"; + var { + hasNewline + } = require_util(); + var { + builders: { + join, + hardline + }, + utils: { + replaceTextEndOfLine + } + } = require("./doc.js"); + var { + isLineComment + } = require_utils7(); + var { + locStart, + locEnd + } = require_loc(); + var isBlockComment = require_is_block_comment(); + function printComment(commentPath, options) { + const comment = commentPath.getValue(); + if (isLineComment(comment)) { + return options.originalText.slice(locStart(comment), locEnd(comment)).trimEnd(); + } + if (isBlockComment(comment)) { + if (isIndentableBlockComment(comment)) { + const printed = printIndentableBlockComment(comment); + if (comment.trailing && !hasNewline(options.originalText, locStart(comment), { + backwards: true + })) { + return [hardline, printed]; + } + return printed; + } + const commentEnd = locEnd(comment); + const isInsideFlowComment = options.originalText.slice(commentEnd - 3, commentEnd) === "*-/"; + return ["/*", replaceTextEndOfLine(comment.value), isInsideFlowComment ? "*-/" : "*/"]; + } + throw new Error("Not a comment: " + JSON.stringify(comment)); + } + function isIndentableBlockComment(comment) { + const lines = `*${comment.value}*`.split("\n"); + return lines.length > 1 && lines.every((line) => line.trim()[0] === "*"); + } + function printIndentableBlockComment(comment) { + const lines = comment.value.split("\n"); + return ["/*", join(hardline, lines.map((line, index) => index === 0 ? line.trimEnd() : " " + (index < lines.length - 1 ? line.trim() : line.trimStart()))), "*/"]; + } + module2.exports = { + printComment + }; + } +}); +var require_literal = __commonJS2({ + "src/language-js/print/literal.js"(exports2, module2) { + "use strict"; + var { + printString, + printNumber + } = require_util(); + var { + replaceTextEndOfLine + } = require_doc_utils(); + var { + printDirective + } = require_misc(); + function printLiteral(path, options) { + const node = path.getNode(); + switch (node.type) { + case "RegExpLiteral": + return printRegex(node); + case "BigIntLiteral": + return printBigInt(node.bigint || node.extra.raw); + case "NumericLiteral": + return printNumber(node.extra.raw); + case "StringLiteral": + return replaceTextEndOfLine(printString(node.extra.raw, options)); + case "NullLiteral": + return "null"; + case "BooleanLiteral": + return String(node.value); + case "DecimalLiteral": + return printNumber(node.value) + "m"; + case "Literal": { + if (node.regex) { + return printRegex(node.regex); + } + if (node.bigint) { + return printBigInt(node.raw); + } + if (node.decimal) { + return printNumber(node.decimal) + "m"; + } + const { + value + } = node; + if (typeof value === "number") { + return printNumber(node.raw); + } + if (typeof value === "string") { + return isDirective(path) ? printDirective(node.raw, options) : replaceTextEndOfLine(printString(node.raw, options)); + } + return String(value); + } + } + } + function isDirective(path) { + if (path.getName() !== "expression") { + return; + } + const parent = path.getParentNode(); + return parent.type === "ExpressionStatement" && parent.directive; + } + function printBigInt(raw) { + return raw.toLowerCase(); + } + function printRegex({ + pattern, + flags + }) { + flags = [...flags].sort().join(""); + return `/${pattern}/${flags}`; + } + module2.exports = { + printLiteral + }; + } +}); +var require_printer_estree = __commonJS2({ + "src/language-js/printer-estree.js"(exports2, module2) { + "use strict"; + var { + printDanglingComments + } = require_comments(); + var { + hasNewline + } = require_util(); + var { + builders: { + join, + line, + hardline, + softline, + group, + indent + }, + utils: { + replaceTextEndOfLine + } + } = require("./doc.js"); + var embed = require_embed(); + var clean = require_clean(); + var { + insertPragma + } = require_pragma(); + var handleComments = require_comments2(); + var pathNeedsParens = require_needs_parens(); + var preprocess = require_print_preprocess(); + var { + hasFlowShorthandAnnotationComment, + hasComment, + CommentCheckFlags, + isTheOnlyJsxElementInMarkdown, + isLineComment, + isNextLineEmpty, + needsHardlineAfterDanglingComment, + hasIgnoreComment, + isCallExpression, + isMemberExpression, + markerForIfWithoutBlockAndSameLineComment + } = require_utils7(); + var { + locStart, + locEnd + } = require_loc(); + var isBlockComment = require_is_block_comment(); + var { + printHtmlBinding, + isVueEventBindingExpression + } = require_html_binding(); + var { + printAngular + } = require_angular(); + var { + printJsx, + hasJsxIgnoreComment + } = require_jsx(); + var { + printFlow + } = require_flow(); + var { + printTypescript + } = require_typescript(); + var { + printOptionalToken, + printBindExpressionCallee, + printTypeAnnotation, + adjustClause, + printRestSpread, + printDefiniteToken, + printDirective + } = require_misc(); + var { + printImportDeclaration, + printExportDeclaration, + printExportAllDeclaration, + printModuleSpecifier + } = require_module(); + var { + printTernary + } = require_ternary(); + var { + printTemplateLiteral + } = require_template_literal(); + var { + printArray + } = require_array4(); + var { + printObject + } = require_object(); + var { + printClass, + printClassMethod, + printClassProperty + } = require_class(); + var { + printProperty + } = require_property(); + var { + printFunction, + printArrowFunction, + printMethod, + printReturnStatement, + printThrowStatement + } = require_function(); + var { + printCallExpression + } = require_call_expression(); + var { + printVariableDeclarator, + printAssignmentExpression + } = require_assignment(); + var { + printBinaryishExpression + } = require_binaryish(); + var { + printSwitchCaseConsequent + } = require_statement(); + var { + printMemberExpression + } = require_member(); + var { + printBlock, + printBlockBody + } = require_block(); + var { + printComment + } = require_comment(); + var { + printLiteral + } = require_literal(); + var { + printDecorators + } = require_decorators(); + function genericPrint(path, options, print, args) { + const printed = printPathNoParens(path, options, print, args); + if (!printed) { + return ""; + } + const node = path.getValue(); + const { + type + } = node; + if (type === "ClassMethod" || type === "ClassPrivateMethod" || type === "ClassProperty" || type === "ClassAccessorProperty" || type === "AccessorProperty" || type === "TSAbstractAccessorProperty" || type === "PropertyDefinition" || type === "TSAbstractPropertyDefinition" || type === "ClassPrivateProperty" || type === "MethodDefinition" || type === "TSAbstractMethodDefinition" || type === "TSDeclareMethod") { + return printed; + } + let parts = [printed]; + const printedDecorators = printDecorators(path, options, print); + const isClassExpressionWithDecorators = node.type === "ClassExpression" && printedDecorators; + if (printedDecorators) { + parts = [...printedDecorators, printed]; + if (!isClassExpressionWithDecorators) { + return group(parts); + } + } + const needsParens = pathNeedsParens(path, options); + if (!needsParens) { + if (args && args.needsSemi) { + parts.unshift(";"); + } + if (parts.length === 1 && parts[0] === printed) { + return printed; + } + return parts; + } + if (isClassExpressionWithDecorators) { + parts = [indent([line, ...parts])]; + } + parts.unshift("("); + if (args && args.needsSemi) { + parts.unshift(";"); + } + if (hasFlowShorthandAnnotationComment(node)) { + const [comment] = node.trailingComments; + parts.push(" /*", comment.value.trimStart(), "*/"); + comment.printed = true; + } + if (isClassExpressionWithDecorators) { + parts.push(line); + } + parts.push(")"); + return parts; + } + function printPathNoParens(path, options, print, args) { + const node = path.getValue(); + const semi = options.semi ? ";" : ""; + if (!node) { + return ""; + } + if (typeof node === "string") { + return node; + } + for (const printer of [printLiteral, printHtmlBinding, printAngular, printJsx, printFlow, printTypescript]) { + const printed = printer(path, options, print); + if (typeof printed !== "undefined") { + return printed; + } + } + let parts = []; + switch (node.type) { + case "JsExpressionRoot": + return print("node"); + case "JsonRoot": + return [print("node"), hardline]; + case "File": + if (node.program && node.program.interpreter) { + parts.push(print(["program", "interpreter"])); + } + parts.push(print("program")); + return parts; + case "Program": + return printBlockBody(path, options, print); + case "EmptyStatement": + return ""; + case "ExpressionStatement": { + if (options.parser === "__vue_event_binding" || options.parser === "__vue_ts_event_binding") { + const parent = path.getParentNode(); + if (parent.type === "Program" && parent.body.length === 1 && parent.body[0] === node) { + return [print("expression"), isVueEventBindingExpression(node.expression) ? ";" : ""]; + } + } + const danglingComment = printDanglingComments(path, options, true, ({ + marker + }) => marker === markerForIfWithoutBlockAndSameLineComment); + return [print("expression"), isTheOnlyJsxElementInMarkdown(options, path) ? "" : semi, danglingComment ? [" ", danglingComment] : ""]; + } + case "ParenthesizedExpression": { + const shouldHug = !hasComment(node.expression) && (node.expression.type === "ObjectExpression" || node.expression.type === "ArrayExpression"); + if (shouldHug) { + return ["(", print("expression"), ")"]; + } + return group(["(", indent([softline, print("expression")]), softline, ")"]); + } + case "AssignmentExpression": + return printAssignmentExpression(path, options, print); + case "VariableDeclarator": + return printVariableDeclarator(path, options, print); + case "BinaryExpression": + case "LogicalExpression": + return printBinaryishExpression(path, options, print); + case "AssignmentPattern": + return [print("left"), " = ", print("right")]; + case "OptionalMemberExpression": + case "MemberExpression": { + return printMemberExpression(path, options, print); + } + case "MetaProperty": + return [print("meta"), ".", print("property")]; + case "BindExpression": + if (node.object) { + parts.push(print("object")); + } + parts.push(group(indent([softline, printBindExpressionCallee(path, options, print)]))); + return parts; + case "Identifier": { + return [node.name, printOptionalToken(path), printDefiniteToken(path), printTypeAnnotation(path, options, print)]; + } + case "V8IntrinsicIdentifier": + return ["%", node.name]; + case "SpreadElement": + case "SpreadElementPattern": + case "SpreadProperty": + case "SpreadPropertyPattern": + case "RestElement": + return printRestSpread(path, options, print); + case "FunctionDeclaration": + case "FunctionExpression": + return printFunction(path, print, options, args); + case "ArrowFunctionExpression": + return printArrowFunction(path, options, print, args); + case "YieldExpression": + parts.push("yield"); + if (node.delegate) { + parts.push("*"); + } + if (node.argument) { + parts.push(" ", print("argument")); + } + return parts; + case "AwaitExpression": { + parts.push("await"); + if (node.argument) { + parts.push(" ", print("argument")); + const parent = path.getParentNode(); + if (isCallExpression(parent) && parent.callee === node || isMemberExpression(parent) && parent.object === node) { + parts = [indent([softline, ...parts]), softline]; + const parentAwaitOrBlock = path.findAncestor((node2) => node2.type === "AwaitExpression" || node2.type === "BlockStatement"); + if (!parentAwaitOrBlock || parentAwaitOrBlock.type !== "AwaitExpression") { + return group(parts); + } + } + } + return parts; + } + case "ExportDefaultDeclaration": + case "ExportNamedDeclaration": + return printExportDeclaration(path, options, print); + case "ExportAllDeclaration": + return printExportAllDeclaration(path, options, print); + case "ImportDeclaration": + return printImportDeclaration(path, options, print); + case "ImportSpecifier": + case "ExportSpecifier": + case "ImportNamespaceSpecifier": + case "ExportNamespaceSpecifier": + case "ImportDefaultSpecifier": + case "ExportDefaultSpecifier": + return printModuleSpecifier(path, options, print); + case "ImportAttribute": + return [print("key"), ": ", print("value")]; + case "Import": + return "import"; + case "BlockStatement": + case "StaticBlock": + case "ClassBody": + return printBlock(path, options, print); + case "ThrowStatement": + return printThrowStatement(path, options, print); + case "ReturnStatement": + return printReturnStatement(path, options, print); + case "NewExpression": + case "ImportExpression": + case "OptionalCallExpression": + case "CallExpression": + return printCallExpression(path, options, print); + case "ObjectExpression": + case "ObjectPattern": + case "RecordExpression": + return printObject(path, options, print); + case "ObjectProperty": + case "Property": + if (node.method || node.kind === "get" || node.kind === "set") { + return printMethod(path, options, print); + } + return printProperty(path, options, print); + case "ObjectMethod": + return printMethod(path, options, print); + case "Decorator": + return ["@", print("expression")]; + case "ArrayExpression": + case "ArrayPattern": + case "TupleExpression": + return printArray(path, options, print); + case "SequenceExpression": { + const parent = path.getParentNode(0); + if (parent.type === "ExpressionStatement" || parent.type === "ForStatement") { + const parts2 = []; + path.each((expressionPath, index) => { + if (index === 0) { + parts2.push(print()); + } else { + parts2.push(",", indent([line, print()])); + } + }, "expressions"); + return group(parts2); + } + return group(join([",", line], path.map(print, "expressions"))); + } + case "ThisExpression": + return "this"; + case "Super": + return "super"; + case "Directive": + return [print("value"), semi]; + case "DirectiveLiteral": + return printDirective(node.extra.raw, options); + case "UnaryExpression": + parts.push(node.operator); + if (/[a-z]$/.test(node.operator)) { + parts.push(" "); + } + if (hasComment(node.argument)) { + parts.push(group(["(", indent([softline, print("argument")]), softline, ")"])); + } else { + parts.push(print("argument")); + } + return parts; + case "UpdateExpression": + parts.push(print("argument"), node.operator); + if (node.prefix) { + parts.reverse(); + } + return parts; + case "ConditionalExpression": + return printTernary(path, options, print); + case "VariableDeclaration": { + const printed = path.map(print, "declarations"); + const parentNode = path.getParentNode(); + const isParentForLoop = parentNode.type === "ForStatement" || parentNode.type === "ForInStatement" || parentNode.type === "ForOfStatement"; + const hasValue = node.declarations.some((decl) => decl.init); + let firstVariable; + if (printed.length === 1 && !hasComment(node.declarations[0])) { + firstVariable = printed[0]; + } else if (printed.length > 0) { + firstVariable = indent(printed[0]); + } + parts = [node.declare ? "declare " : "", node.kind, firstVariable ? [" ", firstVariable] : "", indent(printed.slice(1).map((p) => [",", hasValue && !isParentForLoop ? hardline : line, p]))]; + if (!(isParentForLoop && parentNode.body !== node)) { + parts.push(semi); + } + return group(parts); + } + case "WithStatement": + return group(["with (", print("object"), ")", adjustClause(node.body, print("body"))]); + case "IfStatement": { + const con = adjustClause(node.consequent, print("consequent")); + const opening = group(["if (", group([indent([softline, print("test")]), softline]), ")", con]); + parts.push(opening); + if (node.alternate) { + const commentOnOwnLine = hasComment(node.consequent, CommentCheckFlags.Trailing | CommentCheckFlags.Line) || needsHardlineAfterDanglingComment(node); + const elseOnSameLine = node.consequent.type === "BlockStatement" && !commentOnOwnLine; + parts.push(elseOnSameLine ? " " : hardline); + if (hasComment(node, CommentCheckFlags.Dangling)) { + parts.push(printDanglingComments(path, options, true), commentOnOwnLine ? hardline : " "); + } + parts.push("else", group(adjustClause(node.alternate, print("alternate"), node.alternate.type === "IfStatement"))); + } + return parts; + } + case "ForStatement": { + const body = adjustClause(node.body, print("body")); + const dangling = printDanglingComments(path, options, true); + const printedComments = dangling ? [dangling, softline] : ""; + if (!node.init && !node.test && !node.update) { + return [printedComments, group(["for (;;)", body])]; + } + return [printedComments, group(["for (", group([indent([softline, print("init"), ";", line, print("test"), ";", line, print("update")]), softline]), ")", body])]; + } + case "WhileStatement": + return group(["while (", group([indent([softline, print("test")]), softline]), ")", adjustClause(node.body, print("body"))]); + case "ForInStatement": + return group(["for (", print("left"), " in ", print("right"), ")", adjustClause(node.body, print("body"))]); + case "ForOfStatement": + return group(["for", node.await ? " await" : "", " (", print("left"), " of ", print("right"), ")", adjustClause(node.body, print("body"))]); + case "DoWhileStatement": { + const clause = adjustClause(node.body, print("body")); + const doBody = group(["do", clause]); + parts = [doBody]; + if (node.body.type === "BlockStatement") { + parts.push(" "); + } else { + parts.push(hardline); + } + parts.push("while (", group([indent([softline, print("test")]), softline]), ")", semi); + return parts; + } + case "DoExpression": + return [node.async ? "async " : "", "do ", print("body")]; + case "BreakStatement": + parts.push("break"); + if (node.label) { + parts.push(" ", print("label")); + } + parts.push(semi); + return parts; + case "ContinueStatement": + parts.push("continue"); + if (node.label) { + parts.push(" ", print("label")); + } + parts.push(semi); + return parts; + case "LabeledStatement": + if (node.body.type === "EmptyStatement") { + return [print("label"), ":;"]; + } + return [print("label"), ": ", print("body")]; + case "TryStatement": + return ["try ", print("block"), node.handler ? [" ", print("handler")] : "", node.finalizer ? [" finally ", print("finalizer")] : ""]; + case "CatchClause": + if (node.param) { + const parameterHasComments = hasComment(node.param, (comment) => !isBlockComment(comment) || comment.leading && hasNewline(options.originalText, locEnd(comment)) || comment.trailing && hasNewline(options.originalText, locStart(comment), { + backwards: true + })); + const param = print("param"); + return ["catch ", parameterHasComments ? ["(", indent([softline, param]), softline, ") "] : ["(", param, ") "], print("body")]; + } + return ["catch ", print("body")]; + case "SwitchStatement": + return [group(["switch (", indent([softline, print("discriminant")]), softline, ")"]), " {", node.cases.length > 0 ? indent([hardline, join(hardline, path.map((casePath, index, cases) => { + const caseNode = casePath.getValue(); + return [print(), index !== cases.length - 1 && isNextLineEmpty(caseNode, options) ? hardline : ""]; + }, "cases"))]) : "", hardline, "}"]; + case "SwitchCase": { + if (node.test) { + parts.push("case ", print("test"), ":"); + } else { + parts.push("default:"); + } + if (hasComment(node, CommentCheckFlags.Dangling)) { + parts.push(" ", printDanglingComments(path, options, true)); + } + const consequent = node.consequent.filter((node2) => node2.type !== "EmptyStatement"); + if (consequent.length > 0) { + const cons = printSwitchCaseConsequent(path, options, print); + parts.push(consequent.length === 1 && consequent[0].type === "BlockStatement" ? [" ", cons] : indent([hardline, cons])); + } + return parts; + } + case "DebuggerStatement": + return ["debugger", semi]; + case "ClassDeclaration": + case "ClassExpression": + return printClass(path, options, print); + case "ClassMethod": + case "ClassPrivateMethod": + case "MethodDefinition": + return printClassMethod(path, options, print); + case "ClassProperty": + case "PropertyDefinition": + case "ClassPrivateProperty": + case "ClassAccessorProperty": + case "AccessorProperty": + return printClassProperty(path, options, print); + case "TemplateElement": + return replaceTextEndOfLine(node.value.raw); + case "TemplateLiteral": + return printTemplateLiteral(path, print, options); + case "TaggedTemplateExpression": + return [print("tag"), print("typeParameters"), print("quasi")]; + case "PrivateIdentifier": + return ["#", print("name")]; + case "PrivateName": + return ["#", print("id")]; + case "InterpreterDirective": + parts.push("#!", node.value, hardline); + if (isNextLineEmpty(node, options)) { + parts.push(hardline); + } + return parts; + case "TopicReference": + return "%"; + case "ArgumentPlaceholder": + return "?"; + case "ModuleExpression": { + parts.push("module {"); + const printed = print("body"); + if (printed) { + parts.push(indent([hardline, printed]), hardline); + } + parts.push("}"); + return parts; + } + default: + throw new Error("unknown type: " + JSON.stringify(node.type)); + } + } + function canAttachComment(node) { + return node.type && !isBlockComment(node) && !isLineComment(node) && node.type !== "EmptyStatement" && node.type !== "TemplateElement" && node.type !== "Import" && node.type !== "TSEmptyBodyFunctionExpression"; + } + module2.exports = { + preprocess, + print: genericPrint, + embed, + insertPragma, + massageAstNode: clean, + hasPrettierIgnore(path) { + return hasIgnoreComment(path) || hasJsxIgnoreComment(path); + }, + willPrintOwnComments: handleComments.willPrintOwnComments, + canAttachComment, + printComment, + isBlockComment, + handleComments: { + avoidAstMutation: true, + ownLine: handleComments.handleOwnLineComment, + endOfLine: handleComments.handleEndOfLineComment, + remaining: handleComments.handleRemainingComment + }, + getCommentChildNodes: handleComments.getCommentChildNodes + }; + } +}); +var require_printer_estree_json = __commonJS2({ + "src/language-js/printer-estree-json.js"(exports2, module2) { + "use strict"; + var { + builders: { + hardline, + indent, + join + } + } = require("./doc.js"); + var preprocess = require_print_preprocess(); + function genericPrint(path, options, print) { + const node = path.getValue(); + switch (node.type) { + case "JsonRoot": + return [print("node"), hardline]; + case "ArrayExpression": { + if (node.elements.length === 0) { + return "[]"; + } + const printed = path.map(() => path.getValue() === null ? "null" : print(), "elements"); + return ["[", indent([hardline, join([",", hardline], printed)]), hardline, "]"]; + } + case "ObjectExpression": + return node.properties.length === 0 ? "{}" : ["{", indent([hardline, join([",", hardline], path.map(print, "properties"))]), hardline, "}"]; + case "ObjectProperty": + return [print("key"), ": ", print("value")]; + case "UnaryExpression": + return [node.operator === "+" ? "" : node.operator, print("argument")]; + case "NullLiteral": + return "null"; + case "BooleanLiteral": + return node.value ? "true" : "false"; + case "StringLiteral": + return JSON.stringify(node.value); + case "NumericLiteral": + return isObjectKey(path) ? JSON.stringify(String(node.value)) : JSON.stringify(node.value); + case "Identifier": + return isObjectKey(path) ? JSON.stringify(node.name) : node.name; + case "TemplateLiteral": + return print(["quasis", 0]); + case "TemplateElement": + return JSON.stringify(node.value.cooked); + default: + throw new Error("unknown type: " + JSON.stringify(node.type)); + } + } + function isObjectKey(path) { + return path.getName() === "key" && path.getParentNode().type === "ObjectProperty"; + } + var ignoredProperties = /* @__PURE__ */ new Set(["start", "end", "extra", "loc", "comments", "leadingComments", "trailingComments", "innerComments", "errors", "range", "tokens"]); + function clean(node, newNode) { + const { + type + } = node; + if (type === "ObjectProperty") { + const { + key + } = node; + if (key.type === "Identifier") { + newNode.key = { + type: "StringLiteral", + value: key.name + }; + } else if (key.type === "NumericLiteral") { + newNode.key = { + type: "StringLiteral", + value: String(key.value) + }; + } + return; + } + if (type === "UnaryExpression" && node.operator === "+") { + return newNode.argument; + } + if (type === "ArrayExpression") { + for (const [index, element] of node.elements.entries()) { + if (element === null) { + newNode.elements.splice(index, 0, { + type: "NullLiteral" + }); + } + } + return; + } + if (type === "TemplateLiteral") { + return { + type: "StringLiteral", + value: node.quasis[0].value.cooked + }; + } + } + clean.ignoredProperties = ignoredProperties; + module2.exports = { + preprocess, + print: genericPrint, + massageAstNode: clean + }; + } +}); +var require_common_options = __commonJS2({ + "src/common/common-options.js"(exports2, module2) { + "use strict"; + var CATEGORY_COMMON = "Common"; + module2.exports = { + bracketSpacing: { + since: "0.0.0", + category: CATEGORY_COMMON, + type: "boolean", + default: true, + description: "Print spaces between brackets.", + oppositeDescription: "Do not print spaces between brackets." + }, + singleQuote: { + since: "0.0.0", + category: CATEGORY_COMMON, + type: "boolean", + default: false, + description: "Use single quotes instead of double quotes." + }, + proseWrap: { + since: "1.8.2", + category: CATEGORY_COMMON, + type: "choice", + default: [{ + since: "1.8.2", + value: true + }, { + since: "1.9.0", + value: "preserve" + }], + description: "How to wrap prose.", + choices: [{ + since: "1.9.0", + value: "always", + description: "Wrap prose if it exceeds the print width." + }, { + since: "1.9.0", + value: "never", + description: "Do not wrap prose." + }, { + since: "1.9.0", + value: "preserve", + description: "Wrap prose as-is." + }] + }, + bracketSameLine: { + since: "2.4.0", + category: CATEGORY_COMMON, + type: "boolean", + default: false, + description: "Put > of opening tags on the last line instead of on a new line." + }, + singleAttributePerLine: { + since: "2.6.0", + category: CATEGORY_COMMON, + type: "boolean", + default: false, + description: "Enforce single attribute per line in HTML, Vue and JSX." + } + }; + } +}); +var require_options2 = __commonJS2({ + "src/language-js/options.js"(exports2, module2) { + "use strict"; + var commonOptions = require_common_options(); + var CATEGORY_JAVASCRIPT = "JavaScript"; + module2.exports = { + arrowParens: { + since: "1.9.0", + category: CATEGORY_JAVASCRIPT, + type: "choice", + default: [{ + since: "1.9.0", + value: "avoid" + }, { + since: "2.0.0", + value: "always" + }], + description: "Include parentheses around a sole arrow function parameter.", + choices: [{ + value: "always", + description: "Always include parens. Example: `(x) => x`" + }, { + value: "avoid", + description: "Omit parens when possible. Example: `x => x`" + }] + }, + bracketSameLine: commonOptions.bracketSameLine, + bracketSpacing: commonOptions.bracketSpacing, + jsxBracketSameLine: { + since: "0.17.0", + category: CATEGORY_JAVASCRIPT, + type: "boolean", + description: "Put > on the last line instead of at a new line.", + deprecated: "2.4.0" + }, + semi: { + since: "1.0.0", + category: CATEGORY_JAVASCRIPT, + type: "boolean", + default: true, + description: "Print semicolons.", + oppositeDescription: "Do not print semicolons, except at the beginning of lines which may need them." + }, + singleQuote: commonOptions.singleQuote, + jsxSingleQuote: { + since: "1.15.0", + category: CATEGORY_JAVASCRIPT, + type: "boolean", + default: false, + description: "Use single quotes in JSX." + }, + quoteProps: { + since: "1.17.0", + category: CATEGORY_JAVASCRIPT, + type: "choice", + default: "as-needed", + description: "Change when properties in objects are quoted.", + choices: [{ + value: "as-needed", + description: "Only add quotes around object properties where required." + }, { + value: "consistent", + description: "If at least one property in an object requires quotes, quote all properties." + }, { + value: "preserve", + description: "Respect the input use of quotes in object properties." + }] + }, + trailingComma: { + since: "0.0.0", + category: CATEGORY_JAVASCRIPT, + type: "choice", + default: [{ + since: "0.0.0", + value: false + }, { + since: "0.19.0", + value: "none" + }, { + since: "2.0.0", + value: "es5" + }], + description: "Print trailing commas wherever possible when multi-line.", + choices: [{ + value: "es5", + description: "Trailing commas where valid in ES5 (objects, arrays, etc.)" + }, { + value: "none", + description: "No trailing commas." + }, { + value: "all", + description: "Trailing commas wherever possible (including function arguments)." + }] + }, + singleAttributePerLine: commonOptions.singleAttributePerLine + }; + } +}); +var require_parsers = __commonJS2({ + "src/language-js/parse/parsers.js"(exports2, module2) { + "use strict"; + module2.exports = { + get babel() { + return require("./parser-babel.js").parsers.babel; + }, + get "babel-flow"() { + return require("./parser-babel.js").parsers["babel-flow"]; + }, + get "babel-ts"() { + return require("./parser-babel.js").parsers["babel-ts"]; + }, + get json() { + return require("./parser-babel.js").parsers.json; + }, + get json5() { + return require("./parser-babel.js").parsers.json5; + }, + get "json-stringify"() { + return require("./parser-babel.js").parsers["json-stringify"]; + }, + get __js_expression() { + return require("./parser-babel.js").parsers.__js_expression; + }, + get __vue_expression() { + return require("./parser-babel.js").parsers.__vue_expression; + }, + get __vue_ts_expression() { + return require("./parser-babel.js").parsers.__vue_ts_expression; + }, + get __vue_event_binding() { + return require("./parser-babel.js").parsers.__vue_event_binding; + }, + get __vue_ts_event_binding() { + return require("./parser-babel.js").parsers.__vue_ts_event_binding; + }, + get flow() { + return require("./parser-flow.js").parsers.flow; + }, + get typescript() { + return require("./parser-typescript.js").parsers.typescript; + }, + get __ng_action() { + return require("./parser-angular.js").parsers.__ng_action; + }, + get __ng_binding() { + return require("./parser-angular.js").parsers.__ng_binding; + }, + get __ng_interpolation() { + return require("./parser-angular.js").parsers.__ng_interpolation; + }, + get __ng_directive() { + return require("./parser-angular.js").parsers.__ng_directive; + }, + get acorn() { + return require("./parser-espree.js").parsers.acorn; + }, + get espree() { + return require("./parser-espree.js").parsers.espree; + }, + get meriyah() { + return require("./parser-meriyah.js").parsers.meriyah; + }, + get __babel_estree() { + return require("./parser-babel.js").parsers.__babel_estree; + } + }; + } +}); +var require_JavaScript = __commonJS2({ + "node_modules/linguist-languages/data/JavaScript.json"(exports2, module2) { + module2.exports = { + name: "JavaScript", + type: "programming", + tmScope: "source.js", + aceMode: "javascript", + codemirrorMode: "javascript", + codemirrorMimeType: "text/javascript", + color: "#f1e05a", + aliases: ["js", "node"], + extensions: [".js", "._js", ".bones", ".cjs", ".es", ".es6", ".frag", ".gs", ".jake", ".javascript", ".jsb", ".jscad", ".jsfl", ".jslib", ".jsm", ".jspre", ".jss", ".jsx", ".mjs", ".njs", ".pac", ".sjs", ".ssjs", ".xsjs", ".xsjslib"], + filenames: ["Jakefile"], + interpreters: ["chakra", "d8", "gjs", "js", "node", "nodejs", "qjs", "rhino", "v8", "v8-shell"], + languageId: 183 + }; + } +}); +var require_TypeScript = __commonJS2({ + "node_modules/linguist-languages/data/TypeScript.json"(exports2, module2) { + module2.exports = { + name: "TypeScript", + type: "programming", + color: "#3178c6", + aliases: ["ts"], + interpreters: ["deno", "ts-node"], + extensions: [".ts", ".cts", ".mts"], + tmScope: "source.ts", + aceMode: "typescript", + codemirrorMode: "javascript", + codemirrorMimeType: "application/typescript", + languageId: 378 + }; + } +}); +var require_TSX = __commonJS2({ + "node_modules/linguist-languages/data/TSX.json"(exports2, module2) { + module2.exports = { + name: "TSX", + type: "programming", + color: "#3178c6", + group: "TypeScript", + extensions: [".tsx"], + tmScope: "source.tsx", + aceMode: "javascript", + codemirrorMode: "jsx", + codemirrorMimeType: "text/jsx", + languageId: 94901924 + }; + } +}); +var require_JSON = __commonJS2({ + "node_modules/linguist-languages/data/JSON.json"(exports2, module2) { + module2.exports = { + name: "JSON", + type: "data", + color: "#292929", + tmScope: "source.json", + aceMode: "json", + codemirrorMode: "javascript", + codemirrorMimeType: "application/json", + aliases: ["geojson", "jsonl", "topojson"], + extensions: [".json", ".4DForm", ".4DProject", ".avsc", ".geojson", ".gltf", ".har", ".ice", ".JSON-tmLanguage", ".jsonl", ".mcmeta", ".tfstate", ".tfstate.backup", ".topojson", ".webapp", ".webmanifest", ".yy", ".yyp"], + filenames: [".arcconfig", ".auto-changelog", ".c8rc", ".htmlhintrc", ".imgbotconfig", ".nycrc", ".tern-config", ".tern-project", ".watchmanconfig", "Pipfile.lock", "composer.lock", "mcmod.info"], + languageId: 174 + }; + } +}); +var require_JSON_with_Comments = __commonJS2({ + "node_modules/linguist-languages/data/JSON with Comments.json"(exports2, module2) { + module2.exports = { + name: "JSON with Comments", + type: "data", + color: "#292929", + group: "JSON", + tmScope: "source.js", + aceMode: "javascript", + codemirrorMode: "javascript", + codemirrorMimeType: "text/javascript", + aliases: ["jsonc"], + extensions: [".jsonc", ".code-snippets", ".sublime-build", ".sublime-commands", ".sublime-completions", ".sublime-keymap", ".sublime-macro", ".sublime-menu", ".sublime-mousemap", ".sublime-project", ".sublime-settings", ".sublime-theme", ".sublime-workspace", ".sublime_metrics", ".sublime_session"], + filenames: [".babelrc", ".devcontainer.json", ".eslintrc.json", ".jscsrc", ".jshintrc", ".jslintrc", "api-extractor.json", "devcontainer.json", "jsconfig.json", "language-configuration.json", "tsconfig.json", "tslint.json"], + languageId: 423 + }; + } +}); +var require_JSON5 = __commonJS2({ + "node_modules/linguist-languages/data/JSON5.json"(exports2, module2) { + module2.exports = { + name: "JSON5", + type: "data", + color: "#267CB9", + extensions: [".json5"], + tmScope: "source.js", + aceMode: "javascript", + codemirrorMode: "javascript", + codemirrorMimeType: "application/json", + languageId: 175 + }; + } +}); +var require_language_js = __commonJS2({ + "src/language-js/index.js"(exports2, module2) { + "use strict"; + var createLanguage = require_create_language(); + var estreePrinter = require_printer_estree(); + var estreeJsonPrinter = require_printer_estree_json(); + var options = require_options2(); + var parsers = require_parsers(); + var languages = [createLanguage(require_JavaScript(), (data) => ({ + since: "0.0.0", + parsers: ["babel", "acorn", "espree", "meriyah", "babel-flow", "babel-ts", "flow", "typescript"], + vscodeLanguageIds: ["javascript", "mongo"], + interpreters: [...data.interpreters, "zx"], + extensions: [...data.extensions.filter((extension) => extension !== ".jsx"), ".wxs"] + })), createLanguage(require_JavaScript(), () => ({ + name: "Flow", + since: "0.0.0", + parsers: ["flow", "babel-flow"], + vscodeLanguageIds: ["javascript"], + aliases: [], + filenames: [], + extensions: [".js.flow"] + })), createLanguage(require_JavaScript(), () => ({ + name: "JSX", + since: "0.0.0", + parsers: ["babel", "babel-flow", "babel-ts", "flow", "typescript", "espree", "meriyah"], + vscodeLanguageIds: ["javascriptreact"], + aliases: void 0, + filenames: void 0, + extensions: [".jsx"], + group: "JavaScript", + interpreters: void 0, + tmScope: "source.js.jsx", + aceMode: "javascript", + codemirrorMode: "jsx", + codemirrorMimeType: "text/jsx", + color: void 0 + })), createLanguage(require_TypeScript(), () => ({ + since: "1.4.0", + parsers: ["typescript", "babel-ts"], + vscodeLanguageIds: ["typescript"] + })), createLanguage(require_TSX(), () => ({ + since: "1.4.0", + parsers: ["typescript", "babel-ts"], + vscodeLanguageIds: ["typescriptreact"] + })), createLanguage(require_JSON(), () => ({ + name: "JSON.stringify", + since: "1.13.0", + parsers: ["json-stringify"], + vscodeLanguageIds: ["json"], + extensions: [".importmap"], + filenames: ["package.json", "package-lock.json", "composer.json"] + })), createLanguage(require_JSON(), (data) => ({ + since: "1.5.0", + parsers: ["json"], + vscodeLanguageIds: ["json"], + extensions: data.extensions.filter((extension) => extension !== ".jsonl") + })), createLanguage(require_JSON_with_Comments(), (data) => ({ + since: "1.5.0", + parsers: ["json"], + vscodeLanguageIds: ["jsonc"], + filenames: [...data.filenames, ".eslintrc", ".swcrc"] + })), createLanguage(require_JSON5(), () => ({ + since: "1.13.0", + parsers: ["json5"], + vscodeLanguageIds: ["json5"] + }))]; + var printers = { + estree: estreePrinter, + "estree-json": estreeJsonPrinter + }; + module2.exports = { + languages, + options, + printers, + parsers + }; + } +}); +var require_clean2 = __commonJS2({ + "src/language-css/clean.js"(exports2, module2) { + "use strict"; + var { + isFrontMatterNode + } = require_util(); + var getLast = require_get_last(); + var ignoredProperties = /* @__PURE__ */ new Set(["raw", "raws", "sourceIndex", "source", "before", "after", "trailingComma"]); + function clean(ast, newObj, parent) { + if (isFrontMatterNode(ast) && ast.lang === "yaml") { + delete newObj.value; + } + if (ast.type === "css-comment" && parent.type === "css-root" && parent.nodes.length > 0) { + if (parent.nodes[0] === ast || isFrontMatterNode(parent.nodes[0]) && parent.nodes[1] === ast) { + delete newObj.text; + if (/^\*\s*@(?:format|prettier)\s*$/.test(ast.text)) { + return null; + } + } + if (parent.type === "css-root" && getLast(parent.nodes) === ast) { + return null; + } + } + if (ast.type === "value-root") { + delete newObj.text; + } + if (ast.type === "media-query" || ast.type === "media-query-list" || ast.type === "media-feature-expression") { + delete newObj.value; + } + if (ast.type === "css-rule") { + delete newObj.params; + } + if (ast.type === "selector-combinator") { + newObj.value = newObj.value.replace(/\s+/g, " "); + } + if (ast.type === "media-feature") { + newObj.value = newObj.value.replace(/ /g, ""); + } + if (ast.type === "value-word" && (ast.isColor && ast.isHex || ["initial", "inherit", "unset", "revert"].includes(newObj.value.replace().toLowerCase())) || ast.type === "media-feature" || ast.type === "selector-root-invalid" || ast.type === "selector-pseudo") { + newObj.value = newObj.value.toLowerCase(); + } + if (ast.type === "css-decl") { + newObj.prop = newObj.prop.toLowerCase(); + } + if (ast.type === "css-atrule" || ast.type === "css-import") { + newObj.name = newObj.name.toLowerCase(); + } + if (ast.type === "value-number") { + newObj.unit = newObj.unit.toLowerCase(); + } + if ((ast.type === "media-feature" || ast.type === "media-keyword" || ast.type === "media-type" || ast.type === "media-unknown" || ast.type === "media-url" || ast.type === "media-value" || ast.type === "selector-attribute" || ast.type === "selector-string" || ast.type === "selector-class" || ast.type === "selector-combinator" || ast.type === "value-string") && newObj.value) { + newObj.value = cleanCSSStrings(newObj.value); + } + if (ast.type === "selector-attribute") { + newObj.attribute = newObj.attribute.trim(); + if (newObj.namespace) { + if (typeof newObj.namespace === "string") { + newObj.namespace = newObj.namespace.trim(); + if (newObj.namespace.length === 0) { + newObj.namespace = true; + } + } + } + if (newObj.value) { + newObj.value = newObj.value.trim().replace(/^["']|["']$/g, ""); + delete newObj.quoted; + } + } + if ((ast.type === "media-value" || ast.type === "media-type" || ast.type === "value-number" || ast.type === "selector-root-invalid" || ast.type === "selector-class" || ast.type === "selector-combinator" || ast.type === "selector-tag") && newObj.value) { + newObj.value = newObj.value.replace(/([\d+.Ee-]+)([A-Za-z]*)/g, (match, numStr, unit) => { + const num = Number(numStr); + return Number.isNaN(num) ? match : num + unit.toLowerCase(); + }); + } + if (ast.type === "selector-tag") { + const lowercasedValue = ast.value.toLowerCase(); + if (["from", "to"].includes(lowercasedValue)) { + newObj.value = lowercasedValue; + } + } + if (ast.type === "css-atrule" && ast.name.toLowerCase() === "supports") { + delete newObj.value; + } + if (ast.type === "selector-unknown") { + delete newObj.value; + } + if (ast.type === "value-comma_group") { + const index = ast.groups.findIndex((node) => node.type === "value-number" && node.unit === "..."); + if (index !== -1) { + newObj.groups[index].unit = ""; + newObj.groups.splice(index + 1, 0, { + type: "value-word", + value: "...", + isColor: false, + isHex: false + }); + } + } + if (ast.type === "value-comma_group" && ast.groups.some((node) => node.type === "value-atword" && node.value.endsWith("[") || node.type === "value-word" && node.value.startsWith("]"))) { + return { + type: "value-atword", + value: ast.groups.map((node) => node.value).join(""), + group: { + open: null, + close: null, + groups: [], + type: "value-paren_group" + } + }; + } + } + clean.ignoredProperties = ignoredProperties; + function cleanCSSStrings(value) { + return value.replace(/'/g, '"').replace(/\\([^\dA-Fa-f])/g, "$1"); + } + module2.exports = clean; + } +}); +var require_print = __commonJS2({ + "src/utils/front-matter/print.js"(exports2, module2) { + "use strict"; + var { + builders: { + hardline, + markAsRoot + } + } = require("./doc.js"); + function print(node, textToDoc) { + if (node.lang === "yaml") { + const value = node.value.trim(); + const doc2 = value ? textToDoc(value, { + parser: "yaml" + }, { + stripTrailingHardline: true + }) : ""; + return markAsRoot([node.startDelimiter, hardline, doc2, doc2 ? hardline : "", node.endDelimiter]); + } + } + module2.exports = print; + } +}); +var require_embed2 = __commonJS2({ + "src/language-css/embed.js"(exports2, module2) { + "use strict"; + var { + builders: { + hardline + } + } = require("./doc.js"); + var printFrontMatter = require_print(); + function embed(path, print, textToDoc) { + const node = path.getValue(); + if (node.type === "front-matter") { + const doc2 = printFrontMatter(node, textToDoc); + return doc2 ? [doc2, hardline] : ""; + } + } + module2.exports = embed; + } +}); +var require_parse4 = __commonJS2({ + "src/utils/front-matter/parse.js"(exports2, module2) { + "use strict"; + var frontMatterRegex = new RegExp("^(?-{3}|\\+{3})(?[^\\n]*)\\n(?:|(?.*?)\\n)(?\\k|\\.{3})[^\\S\\n]*(?:\\n|$)", "s"); + function parse(text) { + const match = text.match(frontMatterRegex); + if (!match) { + return { + content: text + }; + } + const { + startDelimiter, + language, + value = "", + endDelimiter + } = match.groups; + let lang = language.trim() || "yaml"; + if (startDelimiter === "+++") { + lang = "toml"; + } + if (lang !== "yaml" && startDelimiter !== endDelimiter) { + return { + content: text + }; + } + const [raw] = match; + const frontMatter = { + type: "front-matter", + lang, + value, + startDelimiter, + endDelimiter, + raw: raw.replace(/\n$/, "") + }; + return { + frontMatter, + content: raw.replace(/[^\n]/g, " ") + text.slice(raw.length) + }; + } + module2.exports = parse; + } +}); +var require_pragma2 = __commonJS2({ + "src/language-css/pragma.js"(exports2, module2) { + "use strict"; + var jsPragma = require_pragma(); + var parseFrontMatter = require_parse4(); + function hasPragma(text) { + return jsPragma.hasPragma(parseFrontMatter(text).content); + } + function insertPragma(text) { + const { + frontMatter, + content + } = parseFrontMatter(text); + return (frontMatter ? frontMatter.raw + "\n\n" : "") + jsPragma.insertPragma(content); + } + module2.exports = { + hasPragma, + insertPragma + }; + } +}); +var require_utils8 = __commonJS2({ + "src/language-css/utils/index.js"(exports2, module2) { + "use strict"; + var colorAdjusterFunctions = /* @__PURE__ */ new Set(["red", "green", "blue", "alpha", "a", "rgb", "hue", "h", "saturation", "s", "lightness", "l", "whiteness", "w", "blackness", "b", "tint", "shade", "blend", "blenda", "contrast", "hsl", "hsla", "hwb", "hwba"]); + function getAncestorCounter(path, typeOrTypes) { + const types = Array.isArray(typeOrTypes) ? typeOrTypes : [typeOrTypes]; + let counter = -1; + let ancestorNode; + while (ancestorNode = path.getParentNode(++counter)) { + if (types.includes(ancestorNode.type)) { + return counter; + } + } + return -1; + } + function getAncestorNode(path, typeOrTypes) { + const counter = getAncestorCounter(path, typeOrTypes); + return counter === -1 ? null : path.getParentNode(counter); + } + function getPropOfDeclNode(path) { + var _declAncestorNode$pro; + const declAncestorNode = getAncestorNode(path, "css-decl"); + return declAncestorNode === null || declAncestorNode === void 0 ? void 0 : (_declAncestorNode$pro = declAncestorNode.prop) === null || _declAncestorNode$pro === void 0 ? void 0 : _declAncestorNode$pro.toLowerCase(); + } + var wideKeywords = /* @__PURE__ */ new Set(["initial", "inherit", "unset", "revert"]); + function isWideKeywords(value) { + return wideKeywords.has(value.toLowerCase()); + } + function isKeyframeAtRuleKeywords(path, value) { + const atRuleAncestorNode = getAncestorNode(path, "css-atrule"); + return (atRuleAncestorNode === null || atRuleAncestorNode === void 0 ? void 0 : atRuleAncestorNode.name) && atRuleAncestorNode.name.toLowerCase().endsWith("keyframes") && ["from", "to"].includes(value.toLowerCase()); + } + function maybeToLowerCase(value) { + return value.includes("$") || value.includes("@") || value.includes("#") || value.startsWith("%") || value.startsWith("--") || value.startsWith(":--") || value.includes("(") && value.includes(")") ? value : value.toLowerCase(); + } + function insideValueFunctionNode(path, functionName) { + var _funcAncestorNode$val; + const funcAncestorNode = getAncestorNode(path, "value-func"); + return (funcAncestorNode === null || funcAncestorNode === void 0 ? void 0 : (_funcAncestorNode$val = funcAncestorNode.value) === null || _funcAncestorNode$val === void 0 ? void 0 : _funcAncestorNode$val.toLowerCase()) === functionName; + } + function insideICSSRuleNode(path) { + var _ruleAncestorNode$raw; + const ruleAncestorNode = getAncestorNode(path, "css-rule"); + const selector = ruleAncestorNode === null || ruleAncestorNode === void 0 ? void 0 : (_ruleAncestorNode$raw = ruleAncestorNode.raws) === null || _ruleAncestorNode$raw === void 0 ? void 0 : _ruleAncestorNode$raw.selector; + return selector && (selector.startsWith(":import") || selector.startsWith(":export")); + } + function insideAtRuleNode(path, atRuleNameOrAtRuleNames) { + const atRuleNames = Array.isArray(atRuleNameOrAtRuleNames) ? atRuleNameOrAtRuleNames : [atRuleNameOrAtRuleNames]; + const atRuleAncestorNode = getAncestorNode(path, "css-atrule"); + return atRuleAncestorNode && atRuleNames.includes(atRuleAncestorNode.name.toLowerCase()); + } + function insideURLFunctionInImportAtRuleNode(path) { + const node = path.getValue(); + const atRuleAncestorNode = getAncestorNode(path, "css-atrule"); + return (atRuleAncestorNode === null || atRuleAncestorNode === void 0 ? void 0 : atRuleAncestorNode.name) === "import" && node.groups[0].value === "url" && node.groups.length === 2; + } + function isURLFunctionNode(node) { + return node.type === "value-func" && node.value.toLowerCase() === "url"; + } + function isLastNode(path, node) { + var _path$getParentNode; + const nodes = (_path$getParentNode = path.getParentNode()) === null || _path$getParentNode === void 0 ? void 0 : _path$getParentNode.nodes; + return nodes && nodes.indexOf(node) === nodes.length - 1; + } + function isDetachedRulesetDeclarationNode(node) { + const { + selector + } = node; + if (!selector) { + return false; + } + return typeof selector === "string" && /^@.+:.*$/.test(selector) || selector.value && /^@.+:.*$/.test(selector.value); + } + function isForKeywordNode(node) { + return node.type === "value-word" && ["from", "through", "end"].includes(node.value); + } + function isIfElseKeywordNode(node) { + return node.type === "value-word" && ["and", "or", "not"].includes(node.value); + } + function isEachKeywordNode(node) { + return node.type === "value-word" && node.value === "in"; + } + function isMultiplicationNode(node) { + return node.type === "value-operator" && node.value === "*"; + } + function isDivisionNode(node) { + return node.type === "value-operator" && node.value === "/"; + } + function isAdditionNode(node) { + return node.type === "value-operator" && node.value === "+"; + } + function isSubtractionNode(node) { + return node.type === "value-operator" && node.value === "-"; + } + function isModuloNode(node) { + return node.type === "value-operator" && node.value === "%"; + } + function isMathOperatorNode(node) { + return isMultiplicationNode(node) || isDivisionNode(node) || isAdditionNode(node) || isSubtractionNode(node) || isModuloNode(node); + } + function isEqualityOperatorNode(node) { + return node.type === "value-word" && ["==", "!="].includes(node.value); + } + function isRelationalOperatorNode(node) { + return node.type === "value-word" && ["<", ">", "<=", ">="].includes(node.value); + } + function isSCSSControlDirectiveNode(node) { + return node.type === "css-atrule" && ["if", "else", "for", "each", "while"].includes(node.name); + } + function isDetachedRulesetCallNode(node) { + var _node$raws; + return ((_node$raws = node.raws) === null || _node$raws === void 0 ? void 0 : _node$raws.params) && /^\(\s*\)$/.test(node.raws.params); + } + function isTemplatePlaceholderNode(node) { + return node.name.startsWith("prettier-placeholder"); + } + function isTemplatePropNode(node) { + return node.prop.startsWith("@prettier-placeholder"); + } + function isPostcssSimpleVarNode(currentNode, nextNode) { + return currentNode.value === "$$" && currentNode.type === "value-func" && (nextNode === null || nextNode === void 0 ? void 0 : nextNode.type) === "value-word" && !nextNode.raws.before; + } + function hasComposesNode(node) { + var _node$value, _node$value$group; + return ((_node$value = node.value) === null || _node$value === void 0 ? void 0 : _node$value.type) === "value-root" && ((_node$value$group = node.value.group) === null || _node$value$group === void 0 ? void 0 : _node$value$group.type) === "value-value" && node.prop.toLowerCase() === "composes"; + } + function hasParensAroundNode(node) { + var _node$value2, _node$value2$group, _node$value2$group$gr; + return ((_node$value2 = node.value) === null || _node$value2 === void 0 ? void 0 : (_node$value2$group = _node$value2.group) === null || _node$value2$group === void 0 ? void 0 : (_node$value2$group$gr = _node$value2$group.group) === null || _node$value2$group$gr === void 0 ? void 0 : _node$value2$group$gr.type) === "value-paren_group" && node.value.group.group.open !== null && node.value.group.group.close !== null; + } + function hasEmptyRawBefore(node) { + var _node$raws2; + return ((_node$raws2 = node.raws) === null || _node$raws2 === void 0 ? void 0 : _node$raws2.before) === ""; + } + function isKeyValuePairNode(node) { + var _node$groups, _node$groups$; + return node.type === "value-comma_group" && ((_node$groups = node.groups) === null || _node$groups === void 0 ? void 0 : (_node$groups$ = _node$groups[1]) === null || _node$groups$ === void 0 ? void 0 : _node$groups$.type) === "value-colon"; + } + function isKeyValuePairInParenGroupNode(node) { + var _node$groups2; + return node.type === "value-paren_group" && ((_node$groups2 = node.groups) === null || _node$groups2 === void 0 ? void 0 : _node$groups2[0]) && isKeyValuePairNode(node.groups[0]); + } + function isSCSSMapItemNode(path) { + var _declNode$prop; + const node = path.getValue(); + if (node.groups.length === 0) { + return false; + } + const parentParentNode = path.getParentNode(1); + if (!isKeyValuePairInParenGroupNode(node) && !(parentParentNode && isKeyValuePairInParenGroupNode(parentParentNode))) { + return false; + } + const declNode = getAncestorNode(path, "css-decl"); + if (declNode !== null && declNode !== void 0 && (_declNode$prop = declNode.prop) !== null && _declNode$prop !== void 0 && _declNode$prop.startsWith("$")) { + return true; + } + if (isKeyValuePairInParenGroupNode(parentParentNode)) { + return true; + } + if (parentParentNode.type === "value-func") { + return true; + } + return false; + } + function isInlineValueCommentNode(node) { + return node.type === "value-comment" && node.inline; + } + function isHashNode(node) { + return node.type === "value-word" && node.value === "#"; + } + function isLeftCurlyBraceNode(node) { + return node.type === "value-word" && node.value === "{"; + } + function isRightCurlyBraceNode(node) { + return node.type === "value-word" && node.value === "}"; + } + function isWordNode(node) { + return ["value-word", "value-atword"].includes(node.type); + } + function isColonNode(node) { + return (node === null || node === void 0 ? void 0 : node.type) === "value-colon"; + } + function isKeyInValuePairNode(node, parentNode) { + if (!isKeyValuePairNode(parentNode)) { + return false; + } + const { + groups + } = parentNode; + const index = groups.indexOf(node); + if (index === -1) { + return false; + } + return isColonNode(groups[index + 1]); + } + function isMediaAndSupportsKeywords(node) { + return node.value && ["not", "and", "or"].includes(node.value.toLowerCase()); + } + function isColorAdjusterFuncNode(node) { + if (node.type !== "value-func") { + return false; + } + return colorAdjusterFunctions.has(node.value.toLowerCase()); + } + function lastLineHasInlineComment(text) { + return /\/\//.test(text.split(/[\n\r]/).pop()); + } + function isAtWordPlaceholderNode(node) { + return (node === null || node === void 0 ? void 0 : node.type) === "value-atword" && node.value.startsWith("prettier-placeholder-"); + } + function isConfigurationNode(node, parentNode) { + var _node$open, _node$close; + if (((_node$open = node.open) === null || _node$open === void 0 ? void 0 : _node$open.value) !== "(" || ((_node$close = node.close) === null || _node$close === void 0 ? void 0 : _node$close.value) !== ")" || node.groups.some((group) => group.type !== "value-comma_group")) { + return false; + } + if (parentNode.type === "value-comma_group") { + const prevIdx = parentNode.groups.indexOf(node) - 1; + const maybeWithNode = parentNode.groups[prevIdx]; + if ((maybeWithNode === null || maybeWithNode === void 0 ? void 0 : maybeWithNode.type) === "value-word" && maybeWithNode.value === "with") { + return true; + } + } + return false; + } + function isParenGroupNode(node) { + var _node$open2, _node$close2; + return node.type === "value-paren_group" && ((_node$open2 = node.open) === null || _node$open2 === void 0 ? void 0 : _node$open2.value) === "(" && ((_node$close2 = node.close) === null || _node$close2 === void 0 ? void 0 : _node$close2.value) === ")"; + } + module2.exports = { + getAncestorCounter, + getAncestorNode, + getPropOfDeclNode, + maybeToLowerCase, + insideValueFunctionNode, + insideICSSRuleNode, + insideAtRuleNode, + insideURLFunctionInImportAtRuleNode, + isKeyframeAtRuleKeywords, + isWideKeywords, + isLastNode, + isSCSSControlDirectiveNode, + isDetachedRulesetDeclarationNode, + isRelationalOperatorNode, + isEqualityOperatorNode, + isMultiplicationNode, + isDivisionNode, + isAdditionNode, + isSubtractionNode, + isModuloNode, + isMathOperatorNode, + isEachKeywordNode, + isForKeywordNode, + isURLFunctionNode, + isIfElseKeywordNode, + hasComposesNode, + hasParensAroundNode, + hasEmptyRawBefore, + isDetachedRulesetCallNode, + isTemplatePlaceholderNode, + isTemplatePropNode, + isPostcssSimpleVarNode, + isKeyValuePairNode, + isKeyValuePairInParenGroupNode, + isKeyInValuePairNode, + isSCSSMapItemNode, + isInlineValueCommentNode, + isHashNode, + isLeftCurlyBraceNode, + isRightCurlyBraceNode, + isWordNode, + isColonNode, + isMediaAndSupportsKeywords, + isColorAdjusterFuncNode, + lastLineHasInlineComment, + isAtWordPlaceholderNode, + isConfigurationNode, + isParenGroupNode + }; + } +}); +var require_line_column_to_index = __commonJS2({ + "src/utils/line-column-to-index.js"(exports2, module2) { + "use strict"; + module2.exports = function(lineColumn, text) { + let index = 0; + for (let i = 0; i < lineColumn.line - 1; ++i) { + index = text.indexOf("\n", index) + 1; + } + return index + lineColumn.column; + }; + } +}); +var require_loc2 = __commonJS2({ + "src/language-css/loc.js"(exports2, module2) { + "use strict"; + var { + skipEverythingButNewLine + } = require_skip(); + var getLast = require_get_last(); + var lineColumnToIndex = require_line_column_to_index(); + function calculateLocStart(node, text) { + if (typeof node.sourceIndex === "number") { + return node.sourceIndex; + } + return node.source ? lineColumnToIndex(node.source.start, text) - 1 : null; + } + function calculateLocEnd(node, text) { + if (node.type === "css-comment" && node.inline) { + return skipEverythingButNewLine(text, node.source.startOffset); + } + const endNode = node.nodes && getLast(node.nodes); + if (endNode && node.source && !node.source.end) { + node = endNode; + } + if (node.source && node.source.end) { + return lineColumnToIndex(node.source.end, text); + } + return null; + } + function calculateLoc(node, text) { + if (node.source) { + node.source.startOffset = calculateLocStart(node, text); + node.source.endOffset = calculateLocEnd(node, text); + } + for (const key in node) { + const child = node[key]; + if (key === "source" || !child || typeof child !== "object") { + continue; + } + if (child.type === "value-root" || child.type === "value-unknown") { + calculateValueNodeLoc(child, getValueRootOffset(node), child.text || child.value); + } else { + calculateLoc(child, text); + } + } + } + function calculateValueNodeLoc(node, rootOffset, text) { + if (node.source) { + node.source.startOffset = calculateLocStart(node, text) + rootOffset; + node.source.endOffset = calculateLocEnd(node, text) + rootOffset; + } + for (const key in node) { + const child = node[key]; + if (key === "source" || !child || typeof child !== "object") { + continue; + } + calculateValueNodeLoc(child, rootOffset, text); + } + } + function getValueRootOffset(node) { + let result = node.source.startOffset; + if (typeof node.prop === "string") { + result += node.prop.length; + } + if (node.type === "css-atrule" && typeof node.name === "string") { + result += 1 + node.name.length + node.raws.afterName.match(/^\s*:?\s*/)[0].length; + } + if (node.type !== "css-atrule" && node.raws && typeof node.raws.between === "string") { + result += node.raws.between.length; + } + return result; + } + function replaceQuotesInInlineComments(text) { + let state = "initial"; + let stateToReturnFromQuotes = "initial"; + let inlineCommentStartIndex; + let inlineCommentContainsQuotes = false; + const inlineCommentsToReplace = []; + for (let i = 0; i < text.length; i++) { + const c = text[i]; + switch (state) { + case "initial": + if (c === "'") { + state = "single-quotes"; + continue; + } + if (c === '"') { + state = "double-quotes"; + continue; + } + if ((c === "u" || c === "U") && text.slice(i, i + 4).toLowerCase() === "url(") { + state = "url"; + i += 3; + continue; + } + if (c === "*" && text[i - 1] === "/") { + state = "comment-block"; + continue; + } + if (c === "/" && text[i - 1] === "/") { + state = "comment-inline"; + inlineCommentStartIndex = i - 1; + continue; + } + continue; + case "single-quotes": + if (c === "'" && text[i - 1] !== "\\") { + state = stateToReturnFromQuotes; + stateToReturnFromQuotes = "initial"; + } + if (c === "\n" || c === "\r") { + return text; + } + continue; + case "double-quotes": + if (c === '"' && text[i - 1] !== "\\") { + state = stateToReturnFromQuotes; + stateToReturnFromQuotes = "initial"; + } + if (c === "\n" || c === "\r") { + return text; + } + continue; + case "url": + if (c === ")") { + state = "initial"; + } + if (c === "\n" || c === "\r") { + return text; + } + if (c === "'") { + state = "single-quotes"; + stateToReturnFromQuotes = "url"; + continue; + } + if (c === '"') { + state = "double-quotes"; + stateToReturnFromQuotes = "url"; + continue; + } + continue; + case "comment-block": + if (c === "/" && text[i - 1] === "*") { + state = "initial"; + } + continue; + case "comment-inline": + if (c === '"' || c === "'" || c === "*") { + inlineCommentContainsQuotes = true; + } + if (c === "\n" || c === "\r") { + if (inlineCommentContainsQuotes) { + inlineCommentsToReplace.push([inlineCommentStartIndex, i]); + } + state = "initial"; + inlineCommentContainsQuotes = false; + } + continue; + } + } + for (const [start, end] of inlineCommentsToReplace) { + text = text.slice(0, start) + text.slice(start, end).replace(/["'*]/g, " ") + text.slice(end); + } + return text; + } + function locStart(node) { + return node.source.startOffset; + } + function locEnd(node) { + return node.source.endOffset; + } + module2.exports = { + locStart, + locEnd, + calculateLoc, + replaceQuotesInInlineComments + }; + } +}); +var require_is_less_parser = __commonJS2({ + "src/language-css/utils/is-less-parser.js"(exports2, module2) { + "use strict"; + function isLessParser(options) { + return options.parser === "css" || options.parser === "less"; + } + module2.exports = isLessParser; + } +}); +var require_is_scss = __commonJS2({ + "src/language-css/utils/is-scss.js"(exports2, module2) { + "use strict"; + function isSCSS(parser, text) { + const hasExplicitParserChoice = parser === "less" || parser === "scss"; + const IS_POSSIBLY_SCSS = /(?:\w\s*:\s*[^:}]+|#){|@import[^\n]+(?:url|,)/; + return hasExplicitParserChoice ? parser === "scss" : IS_POSSIBLY_SCSS.test(text); + } + module2.exports = isSCSS; + } +}); +var require_css_units_evaluate = __commonJS2({ + "src/language-css/utils/css-units.evaluate.js"(exports2, module2) { + module2.exports = { + em: "em", + rem: "rem", + ex: "ex", + rex: "rex", + cap: "cap", + rcap: "rcap", + ch: "ch", + rch: "rch", + ic: "ic", + ric: "ric", + lh: "lh", + rlh: "rlh", + vw: "vw", + svw: "svw", + lvw: "lvw", + dvw: "dvw", + vh: "vh", + svh: "svh", + lvh: "lvh", + dvh: "dvh", + vi: "vi", + svi: "svi", + lvi: "lvi", + dvi: "dvi", + vb: "vb", + svb: "svb", + lvb: "lvb", + dvb: "dvb", + vmin: "vmin", + svmin: "svmin", + lvmin: "lvmin", + dvmin: "dvmin", + vmax: "vmax", + svmax: "svmax", + lvmax: "lvmax", + dvmax: "dvmax", + cm: "cm", + mm: "mm", + q: "Q", + in: "in", + pt: "pt", + pc: "pc", + px: "px", + deg: "deg", + grad: "grad", + rad: "rad", + turn: "turn", + s: "s", + ms: "ms", + hz: "Hz", + khz: "kHz", + dpi: "dpi", + dpcm: "dpcm", + dppx: "dppx", + x: "x" + }; + } +}); +var require_print_unit = __commonJS2({ + "src/language-css/utils/print-unit.js"(exports2, module2) { + "use strict"; + var CSS_UNITS = require_css_units_evaluate(); + function printUnit(unit) { + const lowercased = unit.toLowerCase(); + return Object.prototype.hasOwnProperty.call(CSS_UNITS, lowercased) ? CSS_UNITS[lowercased] : unit; + } + module2.exports = printUnit; + } +}); +var require_printer_postcss = __commonJS2({ + "src/language-css/printer-postcss.js"(exports2, module2) { + "use strict"; + var getLast = require_get_last(); + var { + printNumber, + printString, + hasNewline, + isFrontMatterNode, + isNextLineEmpty, + isNonEmptyArray + } = require_util(); + var { + builders: { + join, + line, + hardline, + softline, + group, + fill, + indent, + dedent, + ifBreak, + breakParent + }, + utils: { + removeLines, + getDocParts + } + } = require("./doc.js"); + var clean = require_clean2(); + var embed = require_embed2(); + var { + insertPragma + } = require_pragma2(); + var { + getAncestorNode, + getPropOfDeclNode, + maybeToLowerCase, + insideValueFunctionNode, + insideICSSRuleNode, + insideAtRuleNode, + insideURLFunctionInImportAtRuleNode, + isKeyframeAtRuleKeywords, + isWideKeywords, + isLastNode, + isSCSSControlDirectiveNode, + isDetachedRulesetDeclarationNode, + isRelationalOperatorNode, + isEqualityOperatorNode, + isMultiplicationNode, + isDivisionNode, + isAdditionNode, + isSubtractionNode, + isMathOperatorNode, + isEachKeywordNode, + isForKeywordNode, + isURLFunctionNode, + isIfElseKeywordNode, + hasComposesNode, + hasParensAroundNode, + hasEmptyRawBefore, + isKeyValuePairNode, + isKeyInValuePairNode, + isDetachedRulesetCallNode, + isTemplatePlaceholderNode, + isTemplatePropNode, + isPostcssSimpleVarNode, + isSCSSMapItemNode, + isInlineValueCommentNode, + isHashNode, + isLeftCurlyBraceNode, + isRightCurlyBraceNode, + isWordNode, + isColonNode, + isMediaAndSupportsKeywords, + isColorAdjusterFuncNode, + lastLineHasInlineComment, + isAtWordPlaceholderNode, + isConfigurationNode, + isParenGroupNode + } = require_utils8(); + var { + locStart, + locEnd + } = require_loc2(); + var isLessParser = require_is_less_parser(); + var isSCSS = require_is_scss(); + var printUnit = require_print_unit(); + function shouldPrintComma(options) { + return options.trailingComma === "es5" || options.trailingComma === "all"; + } + function genericPrint(path, options, print) { + const node = path.getValue(); + if (!node) { + return ""; + } + if (typeof node === "string") { + return node; + } + switch (node.type) { + case "front-matter": + return [node.raw, hardline]; + case "css-root": { + const nodes = printNodeSequence(path, options, print); + let after = node.raws.after.trim(); + if (after.startsWith(";")) { + after = after.slice(1).trim(); + } + return [nodes, after ? ` ${after}` : "", getDocParts(nodes).length > 0 ? hardline : ""]; + } + case "css-comment": { + const isInlineComment = node.inline || node.raws.inline; + const text = options.originalText.slice(locStart(node), locEnd(node)); + return isInlineComment ? text.trimEnd() : text; + } + case "css-rule": { + return [print("selector"), node.important ? " !important" : "", node.nodes ? [node.selector && node.selector.type === "selector-unknown" && lastLineHasInlineComment(node.selector.value) ? line : " ", "{", node.nodes.length > 0 ? indent([hardline, printNodeSequence(path, options, print)]) : "", hardline, "}", isDetachedRulesetDeclarationNode(node) ? ";" : ""] : ";"]; + } + case "css-decl": { + const parentNode = path.getParentNode(); + const { + between: rawBetween + } = node.raws; + const trimmedBetween = rawBetween.trim(); + const isColon = trimmedBetween === ":"; + let value = hasComposesNode(node) ? removeLines(print("value")) : print("value"); + if (!isColon && lastLineHasInlineComment(trimmedBetween)) { + value = indent([hardline, dedent(value)]); + } + return [node.raws.before.replace(/[\s;]/g, ""), parentNode.type === "css-atrule" && parentNode.variable || insideICSSRuleNode(path) ? node.prop : maybeToLowerCase(node.prop), trimmedBetween.startsWith("//") ? " " : "", trimmedBetween, node.extend ? "" : " ", isLessParser(options) && node.extend && node.selector ? ["extend(", print("selector"), ")"] : "", value, node.raws.important ? node.raws.important.replace(/\s*!\s*important/i, " !important") : node.important ? " !important" : "", node.raws.scssDefault ? node.raws.scssDefault.replace(/\s*!default/i, " !default") : node.scssDefault ? " !default" : "", node.raws.scssGlobal ? node.raws.scssGlobal.replace(/\s*!global/i, " !global") : node.scssGlobal ? " !global" : "", node.nodes ? [" {", indent([softline, printNodeSequence(path, options, print)]), softline, "}"] : isTemplatePropNode(node) && !parentNode.raws.semicolon && options.originalText[locEnd(node) - 1] !== ";" ? "" : options.__isHTMLStyleAttribute && isLastNode(path, node) ? ifBreak(";") : ";"]; + } + case "css-atrule": { + const parentNode = path.getParentNode(); + const isTemplatePlaceholderNodeWithoutSemiColon = isTemplatePlaceholderNode(node) && !parentNode.raws.semicolon && options.originalText[locEnd(node) - 1] !== ";"; + if (isLessParser(options)) { + if (node.mixin) { + return [print("selector"), node.important ? " !important" : "", isTemplatePlaceholderNodeWithoutSemiColon ? "" : ";"]; + } + if (node.function) { + return [node.name, print("params"), isTemplatePlaceholderNodeWithoutSemiColon ? "" : ";"]; + } + if (node.variable) { + return ["@", node.name, ": ", node.value ? print("value") : "", node.raws.between.trim() ? node.raws.between.trim() + " " : "", node.nodes ? ["{", indent([node.nodes.length > 0 ? softline : "", printNodeSequence(path, options, print)]), softline, "}"] : "", isTemplatePlaceholderNodeWithoutSemiColon ? "" : ";"]; + } + } + return ["@", isDetachedRulesetCallNode(node) || node.name.endsWith(":") ? node.name : maybeToLowerCase(node.name), node.params ? [isDetachedRulesetCallNode(node) ? "" : isTemplatePlaceholderNode(node) ? node.raws.afterName === "" ? "" : node.name.endsWith(":") ? " " : /^\s*\n\s*\n/.test(node.raws.afterName) ? [hardline, hardline] : /^\s*\n/.test(node.raws.afterName) ? hardline : " " : " ", print("params")] : "", node.selector ? indent([" ", print("selector")]) : "", node.value ? group([" ", print("value"), isSCSSControlDirectiveNode(node) ? hasParensAroundNode(node) ? " " : line : ""]) : node.name === "else" ? " " : "", node.nodes ? [isSCSSControlDirectiveNode(node) ? "" : node.selector && !node.selector.nodes && typeof node.selector.value === "string" && lastLineHasInlineComment(node.selector.value) || !node.selector && typeof node.params === "string" && lastLineHasInlineComment(node.params) ? line : " ", "{", indent([node.nodes.length > 0 ? softline : "", printNodeSequence(path, options, print)]), softline, "}"] : isTemplatePlaceholderNodeWithoutSemiColon ? "" : ";"]; + } + case "media-query-list": { + const parts = []; + path.each((childPath) => { + const node2 = childPath.getValue(); + if (node2.type === "media-query" && node2.value === "") { + return; + } + parts.push(print()); + }, "nodes"); + return group(indent(join(line, parts))); + } + case "media-query": { + return [join(" ", path.map(print, "nodes")), isLastNode(path, node) ? "" : ","]; + } + case "media-type": { + return adjustNumbers(adjustStrings(node.value, options)); + } + case "media-feature-expression": { + if (!node.nodes) { + return node.value; + } + return ["(", ...path.map(print, "nodes"), ")"]; + } + case "media-feature": { + return maybeToLowerCase(adjustStrings(node.value.replace(/ +/g, " "), options)); + } + case "media-colon": { + return [node.value, " "]; + } + case "media-value": { + return adjustNumbers(adjustStrings(node.value, options)); + } + case "media-keyword": { + return adjustStrings(node.value, options); + } + case "media-url": { + return adjustStrings(node.value.replace(/^url\(\s+/gi, "url(").replace(/\s+\)$/g, ")"), options); + } + case "media-unknown": { + return node.value; + } + case "selector-root": { + return group([insideAtRuleNode(path, "custom-selector") ? [getAncestorNode(path, "css-atrule").customSelector, line] : "", join([",", insideAtRuleNode(path, ["extend", "custom-selector", "nest"]) ? line : hardline], path.map(print, "nodes"))]); + } + case "selector-selector": { + return group(indent(path.map(print, "nodes"))); + } + case "selector-comment": { + return node.value; + } + case "selector-string": { + return adjustStrings(node.value, options); + } + case "selector-tag": { + const parentNode = path.getParentNode(); + const index = parentNode && parentNode.nodes.indexOf(node); + const prevNode = index && parentNode.nodes[index - 1]; + return [node.namespace ? [node.namespace === true ? "" : node.namespace.trim(), "|"] : "", prevNode.type === "selector-nesting" ? node.value : adjustNumbers(isKeyframeAtRuleKeywords(path, node.value) ? node.value.toLowerCase() : node.value)]; + } + case "selector-id": { + return ["#", node.value]; + } + case "selector-class": { + return [".", adjustNumbers(adjustStrings(node.value, options))]; + } + case "selector-attribute": { + var _node$operator; + return ["[", node.namespace ? [node.namespace === true ? "" : node.namespace.trim(), "|"] : "", node.attribute.trim(), (_node$operator = node.operator) !== null && _node$operator !== void 0 ? _node$operator : "", node.value ? quoteAttributeValue(adjustStrings(node.value.trim(), options), options) : "", node.insensitive ? " i" : "", "]"]; + } + case "selector-combinator": { + if (node.value === "+" || node.value === ">" || node.value === "~" || node.value === ">>>") { + const parentNode = path.getParentNode(); + const leading2 = parentNode.type === "selector-selector" && parentNode.nodes[0] === node ? "" : line; + return [leading2, node.value, isLastNode(path, node) ? "" : " "]; + } + const leading = node.value.trim().startsWith("(") ? line : ""; + const value = adjustNumbers(adjustStrings(node.value.trim(), options)) || line; + return [leading, value]; + } + case "selector-universal": { + return [node.namespace ? [node.namespace === true ? "" : node.namespace.trim(), "|"] : "", node.value]; + } + case "selector-pseudo": { + return [maybeToLowerCase(node.value), isNonEmptyArray(node.nodes) ? group(["(", indent([softline, join([",", line], path.map(print, "nodes"))]), softline, ")"]) : ""]; + } + case "selector-nesting": { + return node.value; + } + case "selector-unknown": { + const ruleAncestorNode = getAncestorNode(path, "css-rule"); + if (ruleAncestorNode && ruleAncestorNode.isSCSSNesterProperty) { + return adjustNumbers(adjustStrings(maybeToLowerCase(node.value), options)); + } + const parentNode = path.getParentNode(); + if (parentNode.raws && parentNode.raws.selector) { + const start = locStart(parentNode); + const end = start + parentNode.raws.selector.length; + return options.originalText.slice(start, end).trim(); + } + const grandParent = path.getParentNode(1); + if (parentNode.type === "value-paren_group" && grandParent && grandParent.type === "value-func" && grandParent.value === "selector") { + const start = locEnd(parentNode.open) + 1; + const end = locStart(parentNode.close); + const selector = options.originalText.slice(start, end).trim(); + return lastLineHasInlineComment(selector) ? [breakParent, selector] : selector; + } + return node.value; + } + case "value-value": + case "value-root": { + return print("group"); + } + case "value-comment": { + return options.originalText.slice(locStart(node), locEnd(node)); + } + case "value-comma_group": { + const parentNode = path.getParentNode(); + const parentParentNode = path.getParentNode(1); + const declAncestorProp = getPropOfDeclNode(path); + const isGridValue = declAncestorProp && parentNode.type === "value-value" && (declAncestorProp === "grid" || declAncestorProp.startsWith("grid-template")); + const atRuleAncestorNode = getAncestorNode(path, "css-atrule"); + const isControlDirective = atRuleAncestorNode && isSCSSControlDirectiveNode(atRuleAncestorNode); + const hasInlineComment = node.groups.some((node2) => isInlineValueCommentNode(node2)); + const printed = path.map(print, "groups"); + const parts = []; + const insideURLFunction = insideValueFunctionNode(path, "url"); + let insideSCSSInterpolationInString = false; + let didBreak = false; + for (let i = 0; i < node.groups.length; ++i) { + var _iNode$value; + parts.push(printed[i]); + const iPrevNode = node.groups[i - 1]; + const iNode = node.groups[i]; + const iNextNode = node.groups[i + 1]; + const iNextNextNode = node.groups[i + 2]; + if (insideURLFunction) { + if (iNextNode && isAdditionNode(iNextNode) || isAdditionNode(iNode)) { + parts.push(" "); + } + continue; + } + if (insideAtRuleNode(path, "forward") && iNode.type === "value-word" && iNode.value && iPrevNode !== void 0 && iPrevNode.type === "value-word" && iPrevNode.value === "as" && iNextNode.type === "value-operator" && iNextNode.value === "*") { + continue; + } + if (!iNextNode) { + continue; + } + if (iNode.type === "value-word" && iNode.value.endsWith("-") && isAtWordPlaceholderNode(iNextNode)) { + continue; + } + if (iNode.type === "value-string" && iNode.quoted) { + const positionOfOpeningInterpolation = iNode.value.lastIndexOf("#{"); + const positionOfClosingInterpolation = iNode.value.lastIndexOf("}"); + if (positionOfOpeningInterpolation !== -1 && positionOfClosingInterpolation !== -1) { + insideSCSSInterpolationInString = positionOfOpeningInterpolation > positionOfClosingInterpolation; + } else if (positionOfOpeningInterpolation !== -1) { + insideSCSSInterpolationInString = true; + } else if (positionOfClosingInterpolation !== -1) { + insideSCSSInterpolationInString = false; + } + } + if (insideSCSSInterpolationInString) { + continue; + } + if (isColonNode(iNode) || isColonNode(iNextNode)) { + continue; + } + if (iNode.type === "value-atword" && (iNode.value === "" || iNode.value.endsWith("["))) { + continue; + } + if (iNextNode.type === "value-word" && iNextNode.value.startsWith("]")) { + continue; + } + if (iNode.value === "~") { + continue; + } + if (iNode.value && iNode.value.includes("\\") && iNextNode && iNextNode.type !== "value-comment") { + continue; + } + if (iPrevNode && iPrevNode.value && iPrevNode.value.indexOf("\\") === iPrevNode.value.length - 1 && iNode.type === "value-operator" && iNode.value === "/") { + continue; + } + if (iNode.value === "\\") { + continue; + } + if (isPostcssSimpleVarNode(iNode, iNextNode)) { + continue; + } + if (isHashNode(iNode) || isLeftCurlyBraceNode(iNode) || isRightCurlyBraceNode(iNextNode) || isLeftCurlyBraceNode(iNextNode) && hasEmptyRawBefore(iNextNode) || isRightCurlyBraceNode(iNode) && hasEmptyRawBefore(iNextNode)) { + continue; + } + if (iNode.value === "--" && isHashNode(iNextNode)) { + continue; + } + const isMathOperator = isMathOperatorNode(iNode); + const isNextMathOperator = isMathOperatorNode(iNextNode); + if ((isMathOperator && isHashNode(iNextNode) || isNextMathOperator && isRightCurlyBraceNode(iNode)) && hasEmptyRawBefore(iNextNode)) { + continue; + } + if (!iPrevNode && isDivisionNode(iNode)) { + continue; + } + if (insideValueFunctionNode(path, "calc") && (isAdditionNode(iNode) || isAdditionNode(iNextNode) || isSubtractionNode(iNode) || isSubtractionNode(iNextNode)) && hasEmptyRawBefore(iNextNode)) { + continue; + } + const isColorAdjusterNode = (isAdditionNode(iNode) || isSubtractionNode(iNode)) && i === 0 && (iNextNode.type === "value-number" || iNextNode.isHex) && parentParentNode && isColorAdjusterFuncNode(parentParentNode) && !hasEmptyRawBefore(iNextNode); + const requireSpaceBeforeOperator = iNextNextNode && iNextNextNode.type === "value-func" || iNextNextNode && isWordNode(iNextNextNode) || iNode.type === "value-func" || isWordNode(iNode); + const requireSpaceAfterOperator = iNextNode.type === "value-func" || isWordNode(iNextNode) || iPrevNode && iPrevNode.type === "value-func" || iPrevNode && isWordNode(iPrevNode); + if (!(isMultiplicationNode(iNextNode) || isMultiplicationNode(iNode)) && !insideValueFunctionNode(path, "calc") && !isColorAdjusterNode && (isDivisionNode(iNextNode) && !requireSpaceBeforeOperator || isDivisionNode(iNode) && !requireSpaceAfterOperator || isAdditionNode(iNextNode) && !requireSpaceBeforeOperator || isAdditionNode(iNode) && !requireSpaceAfterOperator || isSubtractionNode(iNextNode) || isSubtractionNode(iNode)) && (hasEmptyRawBefore(iNextNode) || isMathOperator && (!iPrevNode || iPrevNode && isMathOperatorNode(iPrevNode)))) { + continue; + } + if ((options.parser === "scss" || options.parser === "less") && isMathOperator && iNode.value === "-" && isParenGroupNode(iNextNode) && locEnd(iNode) === locStart(iNextNode.open) && iNextNode.open.value === "(") { + continue; + } + if (isInlineValueCommentNode(iNode)) { + if (parentNode.type === "value-paren_group") { + parts.push(dedent(hardline)); + continue; + } + parts.push(hardline); + continue; + } + if (isControlDirective && (isEqualityOperatorNode(iNextNode) || isRelationalOperatorNode(iNextNode) || isIfElseKeywordNode(iNextNode) || isEachKeywordNode(iNode) || isForKeywordNode(iNode))) { + parts.push(" "); + continue; + } + if (atRuleAncestorNode && atRuleAncestorNode.name.toLowerCase() === "namespace") { + parts.push(" "); + continue; + } + if (isGridValue) { + if (iNode.source && iNextNode.source && iNode.source.start.line !== iNextNode.source.start.line) { + parts.push(hardline); + didBreak = true; + } else { + parts.push(" "); + } + continue; + } + if (isNextMathOperator) { + parts.push(" "); + continue; + } + if (iNextNode && iNextNode.value === "...") { + continue; + } + if (isAtWordPlaceholderNode(iNode) && isAtWordPlaceholderNode(iNextNode) && locEnd(iNode) === locStart(iNextNode)) { + continue; + } + if (isAtWordPlaceholderNode(iNode) && isParenGroupNode(iNextNode) && locEnd(iNode) === locStart(iNextNode.open)) { + parts.push(softline); + continue; + } + if (iNode.value === "with" && isParenGroupNode(iNextNode)) { + parts.push(" "); + continue; + } + if ((_iNode$value = iNode.value) !== null && _iNode$value !== void 0 && _iNode$value.endsWith("#") && iNextNode.value === "{" && isParenGroupNode(iNextNode.group)) { + continue; + } + parts.push(line); + } + if (hasInlineComment) { + parts.push(breakParent); + } + if (didBreak) { + parts.unshift(hardline); + } + if (isControlDirective) { + return group(indent(parts)); + } + if (insideURLFunctionInImportAtRuleNode(path)) { + return group(fill(parts)); + } + return group(indent(fill(parts))); + } + case "value-paren_group": { + const parentNode = path.getParentNode(); + if (parentNode && isURLFunctionNode(parentNode) && (node.groups.length === 1 || node.groups.length > 0 && node.groups[0].type === "value-comma_group" && node.groups[0].groups.length > 0 && node.groups[0].groups[0].type === "value-word" && node.groups[0].groups[0].value.startsWith("data:"))) { + return [node.open ? print("open") : "", join(",", path.map(print, "groups")), node.close ? print("close") : ""]; + } + if (!node.open) { + const printed2 = path.map(print, "groups"); + const res = []; + for (let i = 0; i < printed2.length; i++) { + if (i !== 0) { + res.push([",", line]); + } + res.push(printed2[i]); + } + return group(indent(fill(res))); + } + const isSCSSMapItem = isSCSSMapItemNode(path); + const lastItem = getLast(node.groups); + const isLastItemComment = lastItem && lastItem.type === "value-comment"; + const isKey = isKeyInValuePairNode(node, parentNode); + const isConfiguration = isConfigurationNode(node, parentNode); + const shouldBreak = isConfiguration || isSCSSMapItem && !isKey; + const shouldDedent = isConfiguration || isKey; + const printed = group([node.open ? print("open") : "", indent([softline, join([line], path.map((childPath, index) => { + const child = childPath.getValue(); + const isLast = index === node.groups.length - 1; + let printed2 = [print(), isLast ? "" : ","]; + if (isKeyValuePairNode(child) && child.type === "value-comma_group" && child.groups && child.groups[0].type !== "value-paren_group" && child.groups[2] && child.groups[2].type === "value-paren_group") { + const parts = getDocParts(printed2[0].contents.contents); + parts[1] = group(parts[1]); + printed2 = [group(dedent(printed2))]; + } + if (!isLast && child.type === "value-comma_group" && isNonEmptyArray(child.groups)) { + let last = getLast(child.groups); + if (!last.source && last.close) { + last = last.close; + } + if (last.source && isNextLineEmpty(options.originalText, last, locEnd)) { + printed2.push(hardline); + } + } + return printed2; + }, "groups"))]), ifBreak(!isLastItemComment && isSCSS(options.parser, options.originalText) && isSCSSMapItem && shouldPrintComma(options) ? "," : ""), softline, node.close ? print("close") : ""], { + shouldBreak + }); + return shouldDedent ? dedent(printed) : printed; + } + case "value-func": { + return [node.value, insideAtRuleNode(path, "supports") && isMediaAndSupportsKeywords(node) ? " " : "", print("group")]; + } + case "value-paren": { + return node.value; + } + case "value-number": { + return [printCssNumber(node.value), printUnit(node.unit)]; + } + case "value-operator": { + return node.value; + } + case "value-word": { + if (node.isColor && node.isHex || isWideKeywords(node.value)) { + return node.value.toLowerCase(); + } + return node.value; + } + case "value-colon": { + const parentNode = path.getParentNode(); + const index = parentNode && parentNode.groups.indexOf(node); + const prevNode = index && parentNode.groups[index - 1]; + return [node.value, prevNode && typeof prevNode.value === "string" && getLast(prevNode.value) === "\\" || insideValueFunctionNode(path, "url") ? "" : line]; + } + case "value-comma": { + return [node.value, " "]; + } + case "value-string": { + return printString(node.raws.quote + node.value + node.raws.quote, options); + } + case "value-atword": { + return ["@", node.value]; + } + case "value-unicode-range": { + return node.value; + } + case "value-unknown": { + return node.value; + } + default: + throw new Error(`Unknown postcss type ${JSON.stringify(node.type)}`); + } + } + function printNodeSequence(path, options, print) { + const parts = []; + path.each((pathChild, i, nodes) => { + const prevNode = nodes[i - 1]; + if (prevNode && prevNode.type === "css-comment" && prevNode.text.trim() === "prettier-ignore") { + const childNode = pathChild.getValue(); + parts.push(options.originalText.slice(locStart(childNode), locEnd(childNode))); + } else { + parts.push(print()); + } + if (i !== nodes.length - 1) { + if (nodes[i + 1].type === "css-comment" && !hasNewline(options.originalText, locStart(nodes[i + 1]), { + backwards: true + }) && !isFrontMatterNode(nodes[i]) || nodes[i + 1].type === "css-atrule" && nodes[i + 1].name === "else" && nodes[i].type !== "css-comment") { + parts.push(" "); + } else { + parts.push(options.__isHTMLStyleAttribute ? line : hardline); + if (isNextLineEmpty(options.originalText, pathChild.getValue(), locEnd) && !isFrontMatterNode(nodes[i])) { + parts.push(hardline); + } + } + } + }, "nodes"); + return parts; + } + var STRING_REGEX = /(["'])(?:(?!\1)[^\\]|\\.)*\1/gs; + var NUMBER_REGEX = /(?:\d*\.\d+|\d+\.?)(?:[Ee][+-]?\d+)?/g; + var STANDARD_UNIT_REGEX = /[A-Za-z]+/g; + var WORD_PART_REGEX = /[$@]?[A-Z_a-z\u0080-\uFFFF][\w\u0080-\uFFFF-]*/g; + var ADJUST_NUMBERS_REGEX = new RegExp(STRING_REGEX.source + `|(${WORD_PART_REGEX.source})?(${NUMBER_REGEX.source})(${STANDARD_UNIT_REGEX.source})?`, "g"); + function adjustStrings(value, options) { + return value.replace(STRING_REGEX, (match) => printString(match, options)); + } + function quoteAttributeValue(value, options) { + const quote = options.singleQuote ? "'" : '"'; + return value.includes('"') || value.includes("'") ? value : quote + value + quote; + } + function adjustNumbers(value) { + return value.replace(ADJUST_NUMBERS_REGEX, (match, quote, wordPart, number, unit) => !wordPart && number ? printCssNumber(number) + maybeToLowerCase(unit || "") : match); + } + function printCssNumber(rawNumber) { + return printNumber(rawNumber).replace(/\.0(?=$|e)/, ""); + } + module2.exports = { + print: genericPrint, + embed, + insertPragma, + massageAstNode: clean + }; + } +}); +var require_options3 = __commonJS2({ + "src/language-css/options.js"(exports2, module2) { + "use strict"; + var commonOptions = require_common_options(); + module2.exports = { + singleQuote: commonOptions.singleQuote + }; + } +}); +var require_parsers2 = __commonJS2({ + "src/language-css/parsers.js"(exports2, module2) { + "use strict"; + module2.exports = { + get css() { + return require("./parser-postcss.js").parsers.css; + }, + get less() { + return require("./parser-postcss.js").parsers.less; + }, + get scss() { + return require("./parser-postcss.js").parsers.scss; + } + }; + } +}); +var require_CSS = __commonJS2({ + "node_modules/linguist-languages/data/CSS.json"(exports2, module2) { + module2.exports = { + name: "CSS", + type: "markup", + tmScope: "source.css", + aceMode: "css", + codemirrorMode: "css", + codemirrorMimeType: "text/css", + color: "#563d7c", + extensions: [".css"], + languageId: 50 + }; + } +}); +var require_PostCSS = __commonJS2({ + "node_modules/linguist-languages/data/PostCSS.json"(exports2, module2) { + module2.exports = { + name: "PostCSS", + type: "markup", + color: "#dc3a0c", + tmScope: "source.postcss", + group: "CSS", + extensions: [".pcss", ".postcss"], + aceMode: "text", + languageId: 262764437 + }; + } +}); +var require_Less = __commonJS2({ + "node_modules/linguist-languages/data/Less.json"(exports2, module2) { + module2.exports = { + name: "Less", + type: "markup", + color: "#1d365d", + aliases: ["less-css"], + extensions: [".less"], + tmScope: "source.css.less", + aceMode: "less", + codemirrorMode: "css", + codemirrorMimeType: "text/css", + languageId: 198 + }; + } +}); +var require_SCSS = __commonJS2({ + "node_modules/linguist-languages/data/SCSS.json"(exports2, module2) { + module2.exports = { + name: "SCSS", + type: "markup", + color: "#c6538c", + tmScope: "source.css.scss", + aceMode: "scss", + codemirrorMode: "css", + codemirrorMimeType: "text/x-scss", + extensions: [".scss"], + languageId: 329 + }; + } +}); +var require_language_css = __commonJS2({ + "src/language-css/index.js"(exports2, module2) { + "use strict"; + var createLanguage = require_create_language(); + var printer = require_printer_postcss(); + var options = require_options3(); + var parsers = require_parsers2(); + var languages = [createLanguage(require_CSS(), (data) => ({ + since: "1.4.0", + parsers: ["css"], + vscodeLanguageIds: ["css"], + extensions: [...data.extensions, ".wxss"] + })), createLanguage(require_PostCSS(), () => ({ + since: "1.4.0", + parsers: ["css"], + vscodeLanguageIds: ["postcss"] + })), createLanguage(require_Less(), () => ({ + since: "1.4.0", + parsers: ["less"], + vscodeLanguageIds: ["less"] + })), createLanguage(require_SCSS(), () => ({ + since: "1.4.0", + parsers: ["scss"], + vscodeLanguageIds: ["scss"] + }))]; + var printers = { + postcss: printer + }; + module2.exports = { + languages, + options, + printers, + parsers + }; + } +}); +var require_loc3 = __commonJS2({ + "src/language-handlebars/loc.js"(exports2, module2) { + "use strict"; + function locStart(node) { + return node.loc.start.offset; + } + function locEnd(node) { + return node.loc.end.offset; + } + module2.exports = { + locStart, + locEnd + }; + } +}); +var require_clean3 = __commonJS2({ + "src/language-handlebars/clean.js"(exports2, module2) { + "use strict"; + function clean(ast, newNode) { + if (ast.type === "TextNode") { + const trimmed = ast.chars.trim(); + if (!trimmed) { + return null; + } + newNode.chars = trimmed.replace(/[\t\n\f\r ]+/g, " "); + } + if (ast.type === "AttrNode" && ast.name.toLowerCase() === "class") { + delete newNode.value; + } + } + clean.ignoredProperties = /* @__PURE__ */ new Set(["loc", "selfClosing"]); + module2.exports = clean; + } +}); +var require_html_void_elements_evaluate = __commonJS2({ + "src/language-handlebars/html-void-elements.evaluate.js"(exports2, module2) { + module2.exports = ["area", "base", "br", "col", "command", "embed", "hr", "img", "input", "keygen", "link", "meta", "param", "source", "track", "wbr"]; + } +}); +var require_utils9 = __commonJS2({ + "src/language-handlebars/utils.js"(exports2, module2) { + "use strict"; + var getLast = require_get_last(); + var htmlVoidElements = require_html_void_elements_evaluate(); + function isLastNodeOfSiblings(path) { + const node = path.getValue(); + const parentNode = path.getParentNode(0); + if (isParentOfSomeType(path, ["ElementNode"]) && getLast(parentNode.children) === node) { + return true; + } + if (isParentOfSomeType(path, ["Block"]) && getLast(parentNode.body) === node) { + return true; + } + return false; + } + function isUppercase(string) { + return string.toUpperCase() === string; + } + function isGlimmerComponent(node) { + return isNodeOfSomeType(node, ["ElementNode"]) && typeof node.tag === "string" && !node.tag.startsWith(":") && (isUppercase(node.tag[0]) || node.tag.includes(".")); + } + var voidTags = new Set(htmlVoidElements); + function isVoidTag(tag) { + return voidTags.has(tag.toLowerCase()) && !isUppercase(tag[0]); + } + function isVoid(node) { + return node.selfClosing === true || isVoidTag(node.tag) || isGlimmerComponent(node) && node.children.every((node2) => isWhitespaceNode(node2)); + } + function isWhitespaceNode(node) { + return isNodeOfSomeType(node, ["TextNode"]) && !/\S/.test(node.chars); + } + function isNodeOfSomeType(node, types) { + return node && types.includes(node.type); + } + function isParentOfSomeType(path, types) { + const parentNode = path.getParentNode(0); + return isNodeOfSomeType(parentNode, types); + } + function isPreviousNodeOfSomeType(path, types) { + const previousNode = getPreviousNode(path); + return isNodeOfSomeType(previousNode, types); + } + function isNextNodeOfSomeType(path, types) { + const nextNode = getNextNode(path); + return isNodeOfSomeType(nextNode, types); + } + function getSiblingNode(path, offset) { + var _path$getParentNode2, _ref7, _ref8, _parentNode$children; + const node = path.getValue(); + const parentNode = (_path$getParentNode2 = path.getParentNode(0)) !== null && _path$getParentNode2 !== void 0 ? _path$getParentNode2 : {}; + const children = (_ref7 = (_ref8 = (_parentNode$children = parentNode.children) !== null && _parentNode$children !== void 0 ? _parentNode$children : parentNode.body) !== null && _ref8 !== void 0 ? _ref8 : parentNode.parts) !== null && _ref7 !== void 0 ? _ref7 : []; + const index = children.indexOf(node); + return index !== -1 && children[index + offset]; + } + function getPreviousNode(path, lookBack = 1) { + return getSiblingNode(path, -lookBack); + } + function getNextNode(path) { + return getSiblingNode(path, 1); + } + function isPrettierIgnoreNode(node) { + return isNodeOfSomeType(node, ["MustacheCommentStatement"]) && typeof node.value === "string" && node.value.trim() === "prettier-ignore"; + } + function hasPrettierIgnore(path) { + const node = path.getValue(); + const previousPreviousNode = getPreviousNode(path, 2); + return isPrettierIgnoreNode(node) || isPrettierIgnoreNode(previousPreviousNode); + } + module2.exports = { + getNextNode, + getPreviousNode, + hasPrettierIgnore, + isLastNodeOfSiblings, + isNextNodeOfSomeType, + isNodeOfSomeType, + isParentOfSomeType, + isPreviousNodeOfSomeType, + isVoid, + isWhitespaceNode + }; + } +}); +var require_printer_glimmer = __commonJS2({ + "src/language-handlebars/printer-glimmer.js"(exports2, module2) { + "use strict"; + var { + builders: { + dedent, + fill, + group, + hardline, + ifBreak, + indent, + join, + line, + softline + }, + utils: { + getDocParts, + replaceTextEndOfLine + } + } = require("./doc.js"); + var { + getPreferredQuote, + isNonEmptyArray + } = require_util(); + var { + locStart, + locEnd + } = require_loc3(); + var clean = require_clean3(); + var { + getNextNode, + getPreviousNode, + hasPrettierIgnore, + isLastNodeOfSiblings, + isNextNodeOfSomeType, + isNodeOfSomeType, + isParentOfSomeType, + isPreviousNodeOfSomeType, + isVoid, + isWhitespaceNode + } = require_utils9(); + var NEWLINES_TO_PRESERVE_MAX = 2; + function print(path, options, print2) { + const node = path.getValue(); + if (!node) { + return ""; + } + if (hasPrettierIgnore(path)) { + return options.originalText.slice(locStart(node), locEnd(node)); + } + const favoriteQuote = options.singleQuote ? "'" : '"'; + switch (node.type) { + case "Block": + case "Program": + case "Template": { + return group(path.map(print2, "body")); + } + case "ElementNode": { + const startingTag = group(printStartingTag(path, print2)); + const escapeNextElementNode = options.htmlWhitespaceSensitivity === "ignore" && isNextNodeOfSomeType(path, ["ElementNode"]) ? softline : ""; + if (isVoid(node)) { + return [startingTag, escapeNextElementNode]; + } + const endingTag = [""]; + if (node.children.length === 0) { + return [startingTag, indent(endingTag), escapeNextElementNode]; + } + if (options.htmlWhitespaceSensitivity === "ignore") { + return [startingTag, indent(printChildren(path, options, print2)), hardline, indent(endingTag), escapeNextElementNode]; + } + return [startingTag, indent(group(printChildren(path, options, print2))), indent(endingTag), escapeNextElementNode]; + } + case "BlockStatement": { + const pp = path.getParentNode(1); + const isElseIfLike = pp && pp.inverse && pp.inverse.body.length === 1 && pp.inverse.body[0] === node && pp.inverse.body[0].path.parts[0] === pp.path.parts[0]; + if (isElseIfLike) { + return [printElseIfLikeBlock(path, print2, pp.inverse.body[0].path.parts[0]), printProgram(path, print2, options), printInverse(path, print2, options)]; + } + return [printOpenBlock(path, print2), group([printProgram(path, print2, options), printInverse(path, print2, options), printCloseBlock(path, print2, options)])]; + } + case "ElementModifierStatement": { + return group(["{{", printPathAndParams(path, print2), "}}"]); + } + case "MustacheStatement": { + return group([printOpeningMustache(node), printPathAndParams(path, print2), printClosingMustache(node)]); + } + case "SubExpression": { + return group(["(", printSubExpressionPathAndParams(path, print2), softline, ")"]); + } + case "AttrNode": { + const isText = node.value.type === "TextNode"; + const isEmptyText = isText && node.value.chars === ""; + if (isEmptyText && locStart(node.value) === locEnd(node.value)) { + return node.name; + } + const quote = isText ? getPreferredQuote(node.value.chars, favoriteQuote).quote : node.value.type === "ConcatStatement" ? getPreferredQuote(node.value.parts.filter((part) => part.type === "TextNode").map((part) => part.chars).join(""), favoriteQuote).quote : ""; + const valueDoc = print2("value"); + return [node.name, "=", quote, node.name === "class" && quote ? group(indent(valueDoc)) : valueDoc, quote]; + } + case "ConcatStatement": { + return path.map(print2, "parts"); + } + case "Hash": { + return join(line, path.map(print2, "pairs")); + } + case "HashPair": { + return [node.key, "=", print2("value")]; + } + case "TextNode": { + let text = node.chars.replace(/{{/g, "\\{{"); + const attrName = getCurrentAttributeName(path); + if (attrName) { + if (attrName === "class") { + const formattedClasses = text.trim().split(/\s+/).join(" "); + let leadingSpace2 = false; + let trailingSpace2 = false; + if (isParentOfSomeType(path, ["ConcatStatement"])) { + if (isPreviousNodeOfSomeType(path, ["MustacheStatement"]) && /^\s/.test(text)) { + leadingSpace2 = true; + } + if (isNextNodeOfSomeType(path, ["MustacheStatement"]) && /\s$/.test(text) && formattedClasses !== "") { + trailingSpace2 = true; + } + } + return [leadingSpace2 ? line : "", formattedClasses, trailingSpace2 ? line : ""]; + } + return replaceTextEndOfLine(text); + } + const whitespacesOnlyRE = /^[\t\n\f\r ]*$/; + const isWhitespaceOnly = whitespacesOnlyRE.test(text); + const isFirstElement = !getPreviousNode(path); + const isLastElement = !getNextNode(path); + if (options.htmlWhitespaceSensitivity !== "ignore") { + const leadingWhitespacesRE = /^[\t\n\f\r ]*/; + const trailingWhitespacesRE = /[\t\n\f\r ]*$/; + const shouldTrimTrailingNewlines = isLastElement && isParentOfSomeType(path, ["Template"]); + const shouldTrimLeadingNewlines = isFirstElement && isParentOfSomeType(path, ["Template"]); + if (isWhitespaceOnly) { + if (shouldTrimLeadingNewlines || shouldTrimTrailingNewlines) { + return ""; + } + let breaks = [line]; + const newlines = countNewLines(text); + if (newlines) { + breaks = generateHardlines(newlines); + } + if (isLastNodeOfSiblings(path)) { + breaks = breaks.map((newline) => dedent(newline)); + } + return breaks; + } + const [lead] = text.match(leadingWhitespacesRE); + const [tail] = text.match(trailingWhitespacesRE); + let leadBreaks = []; + if (lead) { + leadBreaks = [line]; + const leadingNewlines = countNewLines(lead); + if (leadingNewlines) { + leadBreaks = generateHardlines(leadingNewlines); + } + text = text.replace(leadingWhitespacesRE, ""); + } + let trailBreaks = []; + if (tail) { + if (!shouldTrimTrailingNewlines) { + trailBreaks = [line]; + const trailingNewlines = countNewLines(tail); + if (trailingNewlines) { + trailBreaks = generateHardlines(trailingNewlines); + } + if (isLastNodeOfSiblings(path)) { + trailBreaks = trailBreaks.map((hardline2) => dedent(hardline2)); + } + } + text = text.replace(trailingWhitespacesRE, ""); + } + return [...leadBreaks, fill(getTextValueParts(text)), ...trailBreaks]; + } + const lineBreaksCount = countNewLines(text); + let leadingLineBreaksCount = countLeadingNewLines(text); + let trailingLineBreaksCount = countTrailingNewLines(text); + if ((isFirstElement || isLastElement) && isWhitespaceOnly && isParentOfSomeType(path, ["Block", "ElementNode", "Template"])) { + return ""; + } + if (isWhitespaceOnly && lineBreaksCount) { + leadingLineBreaksCount = Math.min(lineBreaksCount, NEWLINES_TO_PRESERVE_MAX); + trailingLineBreaksCount = 0; + } else { + if (isNextNodeOfSomeType(path, ["BlockStatement", "ElementNode"])) { + trailingLineBreaksCount = Math.max(trailingLineBreaksCount, 1); + } + if (isPreviousNodeOfSomeType(path, ["BlockStatement", "ElementNode"])) { + leadingLineBreaksCount = Math.max(leadingLineBreaksCount, 1); + } + } + let leadingSpace = ""; + let trailingSpace = ""; + if (trailingLineBreaksCount === 0 && isNextNodeOfSomeType(path, ["MustacheStatement"])) { + trailingSpace = " "; + } + if (leadingLineBreaksCount === 0 && isPreviousNodeOfSomeType(path, ["MustacheStatement"])) { + leadingSpace = " "; + } + if (isFirstElement) { + leadingLineBreaksCount = 0; + leadingSpace = ""; + } + if (isLastElement) { + trailingLineBreaksCount = 0; + trailingSpace = ""; + } + text = text.replace(/^[\t\n\f\r ]+/g, leadingSpace).replace(/[\t\n\f\r ]+$/, trailingSpace); + return [...generateHardlines(leadingLineBreaksCount), fill(getTextValueParts(text)), ...generateHardlines(trailingLineBreaksCount)]; + } + case "MustacheCommentStatement": { + const start = locStart(node); + const end = locEnd(node); + const isLeftWhiteSpaceSensitive = options.originalText.charAt(start + 2) === "~"; + const isRightWhitespaceSensitive = options.originalText.charAt(end - 3) === "~"; + const dashes = node.value.includes("}}") ? "--" : ""; + return ["{{", isLeftWhiteSpaceSensitive ? "~" : "", "!", dashes, node.value, dashes, isRightWhitespaceSensitive ? "~" : "", "}}"]; + } + case "PathExpression": { + return node.original; + } + case "BooleanLiteral": { + return String(node.value); + } + case "CommentStatement": { + return [""]; + } + case "StringLiteral": { + if (needsOppositeQuote(path)) { + const printFavoriteQuote = !options.singleQuote ? "'" : '"'; + return printStringLiteral(node.value, printFavoriteQuote); + } + return printStringLiteral(node.value, favoriteQuote); + } + case "NumberLiteral": { + return String(node.value); + } + case "UndefinedLiteral": { + return "undefined"; + } + case "NullLiteral": { + return "null"; + } + default: + throw new Error("unknown glimmer type: " + JSON.stringify(node.type)); + } + } + function sortByLoc(a, b) { + return locStart(a) - locStart(b); + } + function printStartingTag(path, print2) { + const node = path.getValue(); + const types = ["attributes", "modifiers", "comments"].filter((property) => isNonEmptyArray(node[property])); + const attributes = types.flatMap((type) => node[type]).sort(sortByLoc); + for (const attributeType of types) { + path.each((attributePath) => { + const index = attributes.indexOf(attributePath.getValue()); + attributes.splice(index, 1, [line, print2()]); + }, attributeType); + } + if (isNonEmptyArray(node.blockParams)) { + attributes.push(line, printBlockParams(node)); + } + return ["<", node.tag, indent(attributes), printStartingTagEndMarker(node)]; + } + function printChildren(path, options, print2) { + const node = path.getValue(); + const isEmpty = node.children.every((node2) => isWhitespaceNode(node2)); + if (options.htmlWhitespaceSensitivity === "ignore" && isEmpty) { + return ""; + } + return path.map((childPath, childIndex) => { + const printedChild = print2(); + if (childIndex === 0 && options.htmlWhitespaceSensitivity === "ignore") { + return [softline, printedChild]; + } + return printedChild; + }, "children"); + } + function printStartingTagEndMarker(node) { + if (isVoid(node)) { + return ifBreak([softline, "/>"], [" />", softline]); + } + return ifBreak([softline, ">"], ">"); + } + function printOpeningMustache(node) { + const mustache = node.escaped === false ? "{{{" : "{{"; + const strip = node.strip && node.strip.open ? "~" : ""; + return [mustache, strip]; + } + function printClosingMustache(node) { + const mustache = node.escaped === false ? "}}}" : "}}"; + const strip = node.strip && node.strip.close ? "~" : ""; + return [strip, mustache]; + } + function printOpeningBlockOpeningMustache(node) { + const opening = printOpeningMustache(node); + const strip = node.openStrip.open ? "~" : ""; + return [opening, strip, "#"]; + } + function printOpeningBlockClosingMustache(node) { + const closing = printClosingMustache(node); + const strip = node.openStrip.close ? "~" : ""; + return [strip, closing]; + } + function printClosingBlockOpeningMustache(node) { + const opening = printOpeningMustache(node); + const strip = node.closeStrip.open ? "~" : ""; + return [opening, strip, "/"]; + } + function printClosingBlockClosingMustache(node) { + const closing = printClosingMustache(node); + const strip = node.closeStrip.close ? "~" : ""; + return [strip, closing]; + } + function printInverseBlockOpeningMustache(node) { + const opening = printOpeningMustache(node); + const strip = node.inverseStrip.open ? "~" : ""; + return [opening, strip]; + } + function printInverseBlockClosingMustache(node) { + const closing = printClosingMustache(node); + const strip = node.inverseStrip.close ? "~" : ""; + return [strip, closing]; + } + function printOpenBlock(path, print2) { + const node = path.getValue(); + const parts = []; + const paramsDoc = printParams(path, print2); + if (paramsDoc) { + parts.push(group(paramsDoc)); + } + if (isNonEmptyArray(node.program.blockParams)) { + parts.push(printBlockParams(node.program)); + } + return group([printOpeningBlockOpeningMustache(node), printPath(path, print2), parts.length > 0 ? indent([line, join(line, parts)]) : "", softline, printOpeningBlockClosingMustache(node)]); + } + function printElseBlock(node, options) { + return [options.htmlWhitespaceSensitivity === "ignore" ? hardline : "", printInverseBlockOpeningMustache(node), "else", printInverseBlockClosingMustache(node)]; + } + function printElseIfLikeBlock(path, print2, ifLikeKeyword) { + const node = path.getValue(); + const parentNode = path.getParentNode(1); + return group([printInverseBlockOpeningMustache(parentNode), ["else", " ", ifLikeKeyword], indent([line, group(printParams(path, print2)), ...isNonEmptyArray(node.program.blockParams) ? [line, printBlockParams(node.program)] : []]), softline, printInverseBlockClosingMustache(parentNode)]); + } + function printCloseBlock(path, print2, options) { + const node = path.getValue(); + if (options.htmlWhitespaceSensitivity === "ignore") { + const escape = blockStatementHasOnlyWhitespaceInProgram(node) ? softline : hardline; + return [escape, printClosingBlockOpeningMustache(node), print2("path"), printClosingBlockClosingMustache(node)]; + } + return [printClosingBlockOpeningMustache(node), print2("path"), printClosingBlockClosingMustache(node)]; + } + function blockStatementHasOnlyWhitespaceInProgram(node) { + return isNodeOfSomeType(node, ["BlockStatement"]) && node.program.body.every((node2) => isWhitespaceNode(node2)); + } + function blockStatementHasElseIfLike(node) { + return blockStatementHasElse(node) && node.inverse.body.length === 1 && isNodeOfSomeType(node.inverse.body[0], ["BlockStatement"]) && node.inverse.body[0].path.parts[0] === node.path.parts[0]; + } + function blockStatementHasElse(node) { + return isNodeOfSomeType(node, ["BlockStatement"]) && node.inverse; + } + function printProgram(path, print2, options) { + const node = path.getValue(); + if (blockStatementHasOnlyWhitespaceInProgram(node)) { + return ""; + } + const program = print2("program"); + if (options.htmlWhitespaceSensitivity === "ignore") { + return indent([hardline, program]); + } + return indent(program); + } + function printInverse(path, print2, options) { + const node = path.getValue(); + const inverse = print2("inverse"); + const printed = options.htmlWhitespaceSensitivity === "ignore" ? [hardline, inverse] : inverse; + if (blockStatementHasElseIfLike(node)) { + return printed; + } + if (blockStatementHasElse(node)) { + return [printElseBlock(node, options), indent(printed)]; + } + return ""; + } + function getTextValueParts(value) { + return getDocParts(join(line, splitByHtmlWhitespace(value))); + } + function splitByHtmlWhitespace(string) { + return string.split(/[\t\n\f\r ]+/); + } + function getCurrentAttributeName(path) { + for (let depth = 0; depth < 2; depth++) { + const parentNode = path.getParentNode(depth); + if (parentNode && parentNode.type === "AttrNode") { + return parentNode.name.toLowerCase(); + } + } + } + function countNewLines(string) { + string = typeof string === "string" ? string : ""; + return string.split("\n").length - 1; + } + function countLeadingNewLines(string) { + string = typeof string === "string" ? string : ""; + const newLines = (string.match(/^([^\S\n\r]*[\n\r])+/g) || [])[0] || ""; + return countNewLines(newLines); + } + function countTrailingNewLines(string) { + string = typeof string === "string" ? string : ""; + const newLines = (string.match(/([\n\r][^\S\n\r]*)+$/g) || [])[0] || ""; + return countNewLines(newLines); + } + function generateHardlines(number = 0) { + return Array.from({ + length: Math.min(number, NEWLINES_TO_PRESERVE_MAX) + }).fill(hardline); + } + function printStringLiteral(stringLiteral, favoriteQuote) { + const { + quote, + regex + } = getPreferredQuote(stringLiteral, favoriteQuote); + return [quote, stringLiteral.replace(regex, `\\${quote}`), quote]; + } + function needsOppositeQuote(path) { + let index = 0; + let parentNode = path.getParentNode(index); + while (parentNode && isNodeOfSomeType(parentNode, ["SubExpression"])) { + index++; + parentNode = path.getParentNode(index); + } + if (parentNode && isNodeOfSomeType(path.getParentNode(index + 1), ["ConcatStatement"]) && isNodeOfSomeType(path.getParentNode(index + 2), ["AttrNode"])) { + return true; + } + return false; + } + function printSubExpressionPathAndParams(path, print2) { + const printed = printPath(path, print2); + const params = printParams(path, print2); + if (!params) { + return printed; + } + return indent([printed, line, group(params)]); + } + function printPathAndParams(path, print2) { + const p = printPath(path, print2); + const params = printParams(path, print2); + if (!params) { + return p; + } + return [indent([p, line, params]), softline]; + } + function printPath(path, print2) { + return print2("path"); + } + function printParams(path, print2) { + const node = path.getValue(); + const parts = []; + if (node.params.length > 0) { + const params = path.map(print2, "params"); + parts.push(...params); + } + if (node.hash && node.hash.pairs.length > 0) { + const hash = print2("hash"); + parts.push(hash); + } + if (parts.length === 0) { + return ""; + } + return join(line, parts); + } + function printBlockParams(node) { + return ["as |", node.blockParams.join(" "), "|"]; + } + module2.exports = { + print, + massageAstNode: clean + }; + } +}); +var require_parsers3 = __commonJS2({ + "src/language-handlebars/parsers.js"(exports2, module2) { + "use strict"; + module2.exports = { + get glimmer() { + return require("./parser-glimmer.js").parsers.glimmer; + } + }; + } +}); +var require_Handlebars = __commonJS2({ + "node_modules/linguist-languages/data/Handlebars.json"(exports2, module2) { + module2.exports = { + name: "Handlebars", + type: "markup", + color: "#f7931e", + aliases: ["hbs", "htmlbars"], + extensions: [".handlebars", ".hbs"], + tmScope: "text.html.handlebars", + aceMode: "handlebars", + languageId: 155 + }; + } +}); +var require_language_handlebars = __commonJS2({ + "src/language-handlebars/index.js"(exports2, module2) { + "use strict"; + var createLanguage = require_create_language(); + var printer = require_printer_glimmer(); + var parsers = require_parsers3(); + var languages = [createLanguage(require_Handlebars(), () => ({ + since: "2.3.0", + parsers: ["glimmer"], + vscodeLanguageIds: ["handlebars"] + }))]; + var printers = { + glimmer: printer + }; + module2.exports = { + languages, + printers, + parsers + }; + } +}); +var require_pragma3 = __commonJS2({ + "src/language-graphql/pragma.js"(exports2, module2) { + "use strict"; + function hasPragma(text) { + return /^\s*#[^\S\n]*@(?:format|prettier)\s*(?:\n|$)/.test(text); + } + function insertPragma(text) { + return "# @format\n\n" + text; + } + module2.exports = { + hasPragma, + insertPragma + }; + } +}); +var require_loc4 = __commonJS2({ + "src/language-graphql/loc.js"(exports2, module2) { + "use strict"; + function locStart(node) { + if (typeof node.start === "number") { + return node.start; + } + return node.loc && node.loc.start; + } + function locEnd(node) { + if (typeof node.end === "number") { + return node.end; + } + return node.loc && node.loc.end; + } + module2.exports = { + locStart, + locEnd + }; + } +}); +var require_printer_graphql = __commonJS2({ + "src/language-graphql/printer-graphql.js"(exports2, module2) { + "use strict"; + var { + builders: { + join, + hardline, + line, + softline, + group, + indent, + ifBreak + } + } = require("./doc.js"); + var { + isNextLineEmpty, + isNonEmptyArray + } = require_util(); + var { + insertPragma + } = require_pragma3(); + var { + locStart, + locEnd + } = require_loc4(); + function genericPrint(path, options, print) { + const node = path.getValue(); + if (!node) { + return ""; + } + if (typeof node === "string") { + return node; + } + switch (node.kind) { + case "Document": { + const parts = []; + path.each((pathChild, index, definitions) => { + parts.push(print()); + if (index !== definitions.length - 1) { + parts.push(hardline); + if (isNextLineEmpty(options.originalText, pathChild.getValue(), locEnd)) { + parts.push(hardline); + } + } + }, "definitions"); + return [...parts, hardline]; + } + case "OperationDefinition": { + const hasOperation = options.originalText[locStart(node)] !== "{"; + const hasName = Boolean(node.name); + return [hasOperation ? node.operation : "", hasOperation && hasName ? [" ", print("name")] : "", hasOperation && !hasName && isNonEmptyArray(node.variableDefinitions) ? " " : "", isNonEmptyArray(node.variableDefinitions) ? group(["(", indent([softline, join([ifBreak("", ", "), softline], path.map(print, "variableDefinitions"))]), softline, ")"]) : "", printDirectives(path, print, node), node.selectionSet ? !hasOperation && !hasName ? "" : " " : "", print("selectionSet")]; + } + case "FragmentDefinition": { + return ["fragment ", print("name"), isNonEmptyArray(node.variableDefinitions) ? group(["(", indent([softline, join([ifBreak("", ", "), softline], path.map(print, "variableDefinitions"))]), softline, ")"]) : "", " on ", print("typeCondition"), printDirectives(path, print, node), " ", print("selectionSet")]; + } + case "SelectionSet": { + return ["{", indent([hardline, join(hardline, printSequence(path, options, print, "selections"))]), hardline, "}"]; + } + case "Field": { + return group([node.alias ? [print("alias"), ": "] : "", print("name"), node.arguments.length > 0 ? group(["(", indent([softline, join([ifBreak("", ", "), softline], printSequence(path, options, print, "arguments"))]), softline, ")"]) : "", printDirectives(path, print, node), node.selectionSet ? " " : "", print("selectionSet")]); + } + case "Name": { + return node.value; + } + case "StringValue": { + if (node.block) { + const lines = node.value.replace(/"""/g, "\\$&").split("\n"); + if (lines.length === 1) { + lines[0] = lines[0].trim(); + } + if (lines.every((line2) => line2 === "")) { + lines.length = 0; + } + return join(hardline, ['"""', ...lines, '"""']); + } + return ['"', node.value.replace(/["\\]/g, "\\$&").replace(/\n/g, "\\n"), '"']; + } + case "IntValue": + case "FloatValue": + case "EnumValue": { + return node.value; + } + case "BooleanValue": { + return node.value ? "true" : "false"; + } + case "NullValue": { + return "null"; + } + case "Variable": { + return ["$", print("name")]; + } + case "ListValue": { + return group(["[", indent([softline, join([ifBreak("", ", "), softline], path.map(print, "values"))]), softline, "]"]); + } + case "ObjectValue": { + return group(["{", options.bracketSpacing && node.fields.length > 0 ? " " : "", indent([softline, join([ifBreak("", ", "), softline], path.map(print, "fields"))]), softline, ifBreak("", options.bracketSpacing && node.fields.length > 0 ? " " : ""), "}"]); + } + case "ObjectField": + case "Argument": { + return [print("name"), ": ", print("value")]; + } + case "Directive": { + return ["@", print("name"), node.arguments.length > 0 ? group(["(", indent([softline, join([ifBreak("", ", "), softline], printSequence(path, options, print, "arguments"))]), softline, ")"]) : ""]; + } + case "NamedType": { + return print("name"); + } + case "VariableDefinition": { + return [print("variable"), ": ", print("type"), node.defaultValue ? [" = ", print("defaultValue")] : "", printDirectives(path, print, node)]; + } + case "ObjectTypeExtension": + case "ObjectTypeDefinition": { + return [print("description"), node.description ? hardline : "", node.kind === "ObjectTypeExtension" ? "extend " : "", "type ", print("name"), node.interfaces.length > 0 ? [" implements ", ...printInterfaces(path, options, print)] : "", printDirectives(path, print, node), node.fields.length > 0 ? [" {", indent([hardline, join(hardline, printSequence(path, options, print, "fields"))]), hardline, "}"] : ""]; + } + case "FieldDefinition": { + return [print("description"), node.description ? hardline : "", print("name"), node.arguments.length > 0 ? group(["(", indent([softline, join([ifBreak("", ", "), softline], printSequence(path, options, print, "arguments"))]), softline, ")"]) : "", ": ", print("type"), printDirectives(path, print, node)]; + } + case "DirectiveDefinition": { + return [print("description"), node.description ? hardline : "", "directive ", "@", print("name"), node.arguments.length > 0 ? group(["(", indent([softline, join([ifBreak("", ", "), softline], printSequence(path, options, print, "arguments"))]), softline, ")"]) : "", node.repeatable ? " repeatable" : "", " on ", join(" | ", path.map(print, "locations"))]; + } + case "EnumTypeExtension": + case "EnumTypeDefinition": { + return [print("description"), node.description ? hardline : "", node.kind === "EnumTypeExtension" ? "extend " : "", "enum ", print("name"), printDirectives(path, print, node), node.values.length > 0 ? [" {", indent([hardline, join(hardline, printSequence(path, options, print, "values"))]), hardline, "}"] : ""]; + } + case "EnumValueDefinition": { + return [print("description"), node.description ? hardline : "", print("name"), printDirectives(path, print, node)]; + } + case "InputValueDefinition": { + return [print("description"), node.description ? node.description.block ? hardline : line : "", print("name"), ": ", print("type"), node.defaultValue ? [" = ", print("defaultValue")] : "", printDirectives(path, print, node)]; + } + case "InputObjectTypeExtension": + case "InputObjectTypeDefinition": { + return [print("description"), node.description ? hardline : "", node.kind === "InputObjectTypeExtension" ? "extend " : "", "input ", print("name"), printDirectives(path, print, node), node.fields.length > 0 ? [" {", indent([hardline, join(hardline, printSequence(path, options, print, "fields"))]), hardline, "}"] : ""]; + } + case "SchemaExtension": { + return ["extend schema", printDirectives(path, print, node), ...node.operationTypes.length > 0 ? [" {", indent([hardline, join(hardline, printSequence(path, options, print, "operationTypes"))]), hardline, "}"] : []]; + } + case "SchemaDefinition": { + return [print("description"), node.description ? hardline : "", "schema", printDirectives(path, print, node), " {", node.operationTypes.length > 0 ? indent([hardline, join(hardline, printSequence(path, options, print, "operationTypes"))]) : "", hardline, "}"]; + } + case "OperationTypeDefinition": { + return [print("operation"), ": ", print("type")]; + } + case "InterfaceTypeExtension": + case "InterfaceTypeDefinition": { + return [print("description"), node.description ? hardline : "", node.kind === "InterfaceTypeExtension" ? "extend " : "", "interface ", print("name"), node.interfaces.length > 0 ? [" implements ", ...printInterfaces(path, options, print)] : "", printDirectives(path, print, node), node.fields.length > 0 ? [" {", indent([hardline, join(hardline, printSequence(path, options, print, "fields"))]), hardline, "}"] : ""]; + } + case "FragmentSpread": { + return ["...", print("name"), printDirectives(path, print, node)]; + } + case "InlineFragment": { + return ["...", node.typeCondition ? [" on ", print("typeCondition")] : "", printDirectives(path, print, node), " ", print("selectionSet")]; + } + case "UnionTypeExtension": + case "UnionTypeDefinition": { + return group([print("description"), node.description ? hardline : "", group([node.kind === "UnionTypeExtension" ? "extend " : "", "union ", print("name"), printDirectives(path, print, node), node.types.length > 0 ? [" =", ifBreak("", " "), indent([ifBreak([line, " "]), join([line, "| "], path.map(print, "types"))])] : ""])]); + } + case "ScalarTypeExtension": + case "ScalarTypeDefinition": { + return [print("description"), node.description ? hardline : "", node.kind === "ScalarTypeExtension" ? "extend " : "", "scalar ", print("name"), printDirectives(path, print, node)]; + } + case "NonNullType": { + return [print("type"), "!"]; + } + case "ListType": { + return ["[", print("type"), "]"]; + } + default: + throw new Error("unknown graphql type: " + JSON.stringify(node.kind)); + } + } + function printDirectives(path, print, node) { + if (node.directives.length === 0) { + return ""; + } + const printed = join(line, path.map(print, "directives")); + if (node.kind === "FragmentDefinition" || node.kind === "OperationDefinition") { + return group([line, printed]); + } + return [" ", group(indent([softline, printed]))]; + } + function printSequence(path, options, print, property) { + return path.map((path2, index, sequence) => { + const printed = print(); + if (index < sequence.length - 1 && isNextLineEmpty(options.originalText, path2.getValue(), locEnd)) { + return [printed, hardline]; + } + return printed; + }, property); + } + function canAttachComment(node) { + return node.kind && node.kind !== "Comment"; + } + function printComment(commentPath) { + const comment = commentPath.getValue(); + if (comment.kind === "Comment") { + return "#" + comment.value.trimEnd(); + } + throw new Error("Not a comment: " + JSON.stringify(comment)); + } + function printInterfaces(path, options, print) { + const node = path.getNode(); + const parts = []; + const { + interfaces + } = node; + const printed = path.map((node2) => print(node2), "interfaces"); + for (let index = 0; index < interfaces.length; index++) { + const interfaceNode = interfaces[index]; + parts.push(printed[index]); + const nextInterfaceNode = interfaces[index + 1]; + if (nextInterfaceNode) { + const textBetween = options.originalText.slice(interfaceNode.loc.end, nextInterfaceNode.loc.start); + const hasComment = textBetween.includes("#"); + const separator = textBetween.replace(/#.*/g, "").trim(); + parts.push(separator === "," ? "," : " &", hasComment ? line : " "); + } + } + return parts; + } + function clean(node, newNode) { + if (node.kind === "StringValue" && node.block && !node.value.includes("\n")) { + newNode.value = newNode.value.trim(); + } + } + clean.ignoredProperties = /* @__PURE__ */ new Set(["loc", "comments"]); + function hasPrettierIgnore(path) { + var _node$comments; + const node = path.getValue(); + return node === null || node === void 0 ? void 0 : (_node$comments = node.comments) === null || _node$comments === void 0 ? void 0 : _node$comments.some((comment) => comment.value.trim() === "prettier-ignore"); + } + module2.exports = { + print: genericPrint, + massageAstNode: clean, + hasPrettierIgnore, + insertPragma, + printComment, + canAttachComment + }; + } +}); +var require_options4 = __commonJS2({ + "src/language-graphql/options.js"(exports2, module2) { + "use strict"; + var commonOptions = require_common_options(); + module2.exports = { + bracketSpacing: commonOptions.bracketSpacing + }; + } +}); +var require_parsers4 = __commonJS2({ + "src/language-graphql/parsers.js"(exports2, module2) { + "use strict"; + module2.exports = { + get graphql() { + return require("./parser-graphql.js").parsers.graphql; + } + }; + } +}); +var require_GraphQL = __commonJS2({ + "node_modules/linguist-languages/data/GraphQL.json"(exports2, module2) { + module2.exports = { + name: "GraphQL", + type: "data", + color: "#e10098", + extensions: [".graphql", ".gql", ".graphqls"], + tmScope: "source.graphql", + aceMode: "text", + languageId: 139 + }; + } +}); +var require_language_graphql = __commonJS2({ + "src/language-graphql/index.js"(exports2, module2) { + "use strict"; + var createLanguage = require_create_language(); + var printer = require_printer_graphql(); + var options = require_options4(); + var parsers = require_parsers4(); + var languages = [createLanguage(require_GraphQL(), () => ({ + since: "1.5.0", + parsers: ["graphql"], + vscodeLanguageIds: ["graphql"] + }))]; + var printers = { + graphql: printer + }; + module2.exports = { + languages, + options, + printers, + parsers + }; + } +}); +var require_collapse_white_space = __commonJS2({ + "node_modules/collapse-white-space/index.js"(exports2, module2) { + "use strict"; + module2.exports = collapse; + function collapse(value) { + return String(value).replace(/\s+/g, " "); + } + } +}); +var require_loc5 = __commonJS2({ + "src/language-markdown/loc.js"(exports2, module2) { + "use strict"; + function locStart(node) { + return node.position.start.offset; + } + function locEnd(node) { + return node.position.end.offset; + } + module2.exports = { + locStart, + locEnd + }; + } +}); +var require_constants_evaluate = __commonJS2({ + "src/language-markdown/constants.evaluate.js"(exports2, module2) { + module2.exports = { + cjkPattern: "(?:[\\u02ea-\\u02eb\\u1100-\\u11ff\\u2e80-\\u2e99\\u2e9b-\\u2ef3\\u2f00-\\u2fd5\\u2ff0-\\u303f\\u3041-\\u3096\\u3099-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312f\\u3131-\\u318e\\u3190-\\u3191\\u3196-\\u31ba\\u31c0-\\u31e3\\u31f0-\\u321e\\u322a-\\u3247\\u3260-\\u327e\\u328a-\\u32b0\\u32c0-\\u32cb\\u32d0-\\u3370\\u337b-\\u337f\\u33e0-\\u33fe\\u3400-\\u4db5\\u4e00-\\u9fef\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufe10-\\ufe1f\\ufe30-\\ufe6f\\uff00-\\uffef]|[\\ud840-\\ud868\\ud86a-\\ud86c\\ud86f-\\ud872\\ud874-\\ud879][\\udc00-\\udfff]|\\ud82c[\\udc00-\\udd1e\\udd50-\\udd52\\udd64-\\udd67]|\\ud83c[\\ude00\\ude50-\\ude51]|\\ud869[\\udc00-\\uded6\\udf00-\\udfff]|\\ud86d[\\udc00-\\udf34\\udf40-\\udfff]|\\ud86e[\\udc00-\\udc1d\\udc20-\\udfff]|\\ud873[\\udc00-\\udea1\\udeb0-\\udfff]|\\ud87a[\\udc00-\\udfe0]|\\ud87e[\\udc00-\\ude1d])(?:[\\ufe00-\\ufe0f]|\\udb40[\\udd00-\\uddef])?", + kPattern: "[\\u1100-\\u11ff\\u3001-\\u3003\\u3008-\\u3011\\u3013-\\u301f\\u302e-\\u3030\\u3037\\u30fb\\u3131-\\u318e\\u3200-\\u321e\\u3260-\\u327e\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\ufe45-\\ufe46\\uff61-\\uff65\\uffa0-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc]", + punctuationPattern: "[\\u0021-\\u002f\\u003a-\\u0040\\u005b-\\u0060\\u007b-\\u007e\\u00a1\\u00a7\\u00ab\\u00b6-\\u00b7\\u00bb\\u00bf\\u037e\\u0387\\u055a-\\u055f\\u0589-\\u058a\\u05be\\u05c0\\u05c3\\u05c6\\u05f3-\\u05f4\\u0609-\\u060a\\u060c-\\u060d\\u061b\\u061e-\\u061f\\u066a-\\u066d\\u06d4\\u0700-\\u070d\\u07f7-\\u07f9\\u0830-\\u083e\\u085e\\u0964-\\u0965\\u0970\\u09fd\\u0a76\\u0af0\\u0c77\\u0c84\\u0df4\\u0e4f\\u0e5a-\\u0e5b\\u0f04-\\u0f12\\u0f14\\u0f3a-\\u0f3d\\u0f85\\u0fd0-\\u0fd4\\u0fd9-\\u0fda\\u104a-\\u104f\\u10fb\\u1360-\\u1368\\u1400\\u166e\\u169b-\\u169c\\u16eb-\\u16ed\\u1735-\\u1736\\u17d4-\\u17d6\\u17d8-\\u17da\\u1800-\\u180a\\u1944-\\u1945\\u1a1e-\\u1a1f\\u1aa0-\\u1aa6\\u1aa8-\\u1aad\\u1b5a-\\u1b60\\u1bfc-\\u1bff\\u1c3b-\\u1c3f\\u1c7e-\\u1c7f\\u1cc0-\\u1cc7\\u1cd3\\u2010-\\u2027\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205e\\u207d-\\u207e\\u208d-\\u208e\\u2308-\\u230b\\u2329-\\u232a\\u2768-\\u2775\\u27c5-\\u27c6\\u27e6-\\u27ef\\u2983-\\u2998\\u29d8-\\u29db\\u29fc-\\u29fd\\u2cf9-\\u2cfc\\u2cfe-\\u2cff\\u2d70\\u2e00-\\u2e2e\\u2e30-\\u2e4f\\u3001-\\u3003\\u3008-\\u3011\\u3014-\\u301f\\u3030\\u303d\\u30a0\\u30fb\\ua4fe-\\ua4ff\\ua60d-\\ua60f\\ua673\\ua67e\\ua6f2-\\ua6f7\\ua874-\\ua877\\ua8ce-\\ua8cf\\ua8f8-\\ua8fa\\ua8fc\\ua92e-\\ua92f\\ua95f\\ua9c1-\\ua9cd\\ua9de-\\ua9df\\uaa5c-\\uaa5f\\uaade-\\uaadf\\uaaf0-\\uaaf1\\uabeb\\ufd3e-\\ufd3f\\ufe10-\\ufe19\\ufe30-\\ufe52\\ufe54-\\ufe61\\ufe63\\ufe68\\ufe6a-\\ufe6b\\uff01-\\uff03\\uff05-\\uff0a\\uff0c-\\uff0f\\uff1a-\\uff1b\\uff1f-\\uff20\\uff3b-\\uff3d\\uff3f\\uff5b\\uff5d\\uff5f-\\uff65]|\\ud800[\\udd00-\\udd02\\udf9f\\udfd0]|\\ud801[\\udd6f]|\\ud802[\\udc57\\udd1f\\udd3f\\ude50-\\ude58\\ude7f\\udef0-\\udef6\\udf39-\\udf3f\\udf99-\\udf9c]|\\ud803[\\udf55-\\udf59]|\\ud804[\\udc47-\\udc4d\\udcbb-\\udcbc\\udcbe-\\udcc1\\udd40-\\udd43\\udd74-\\udd75\\uddc5-\\uddc8\\uddcd\\udddb\\udddd-\\udddf\\ude38-\\ude3d\\udea9]|\\ud805[\\udc4b-\\udc4f\\udc5b\\udc5d\\udcc6\\uddc1-\\uddd7\\ude41-\\ude43\\ude60-\\ude6c\\udf3c-\\udf3e]|\\ud806[\\udc3b\\udde2\\ude3f-\\ude46\\ude9a-\\ude9c\\ude9e-\\udea2]|\\ud807[\\udc41-\\udc45\\udc70-\\udc71\\udef7-\\udef8\\udfff]|\\ud809[\\udc70-\\udc74]|\\ud81a[\\ude6e-\\ude6f\\udef5\\udf37-\\udf3b\\udf44]|\\ud81b[\\ude97-\\ude9a\\udfe2]|\\ud82f[\\udc9f]|\\ud836[\\ude87-\\ude8b]|\\ud83a[\\udd5e-\\udd5f]" + }; + } +}); +var require_utils10 = __commonJS2({ + "src/language-markdown/utils.js"(exports2, module2) { + "use strict"; + var { + getLast + } = require_util(); + var { + locStart, + locEnd + } = require_loc5(); + var { + cjkPattern, + kPattern, + punctuationPattern + } = require_constants_evaluate(); + var INLINE_NODE_TYPES = ["liquidNode", "inlineCode", "emphasis", "esComment", "strong", "delete", "wikiLink", "link", "linkReference", "image", "imageReference", "footnote", "footnoteReference", "sentence", "whitespace", "word", "break", "inlineMath"]; + var INLINE_NODE_WRAPPER_TYPES = [...INLINE_NODE_TYPES, "tableCell", "paragraph", "heading"]; + var kRegex = new RegExp(kPattern); + var punctuationRegex = new RegExp(punctuationPattern); + function splitText(text, options) { + const KIND_NON_CJK = "non-cjk"; + const KIND_CJ_LETTER = "cj-letter"; + const KIND_K_LETTER = "k-letter"; + const KIND_CJK_PUNCTUATION = "cjk-punctuation"; + const nodes = []; + const tokens = (options.proseWrap === "preserve" ? text : text.replace(new RegExp(`(${cjkPattern}) +(${cjkPattern})`, "g"), "$1$2")).split(/([\t\n ]+)/); + for (const [index, token] of tokens.entries()) { + if (index % 2 === 1) { + nodes.push({ + type: "whitespace", + value: /\n/.test(token) ? "\n" : " " + }); + continue; + } + if ((index === 0 || index === tokens.length - 1) && token === "") { + continue; + } + const innerTokens = token.split(new RegExp(`(${cjkPattern})`)); + for (const [innerIndex, innerToken] of innerTokens.entries()) { + if ((innerIndex === 0 || innerIndex === innerTokens.length - 1) && innerToken === "") { + continue; + } + if (innerIndex % 2 === 0) { + if (innerToken !== "") { + appendNode({ + type: "word", + value: innerToken, + kind: KIND_NON_CJK, + hasLeadingPunctuation: punctuationRegex.test(innerToken[0]), + hasTrailingPunctuation: punctuationRegex.test(getLast(innerToken)) + }); + } + continue; + } + appendNode(punctuationRegex.test(innerToken) ? { + type: "word", + value: innerToken, + kind: KIND_CJK_PUNCTUATION, + hasLeadingPunctuation: true, + hasTrailingPunctuation: true + } : { + type: "word", + value: innerToken, + kind: kRegex.test(innerToken) ? KIND_K_LETTER : KIND_CJ_LETTER, + hasLeadingPunctuation: false, + hasTrailingPunctuation: false + }); + } + } + return nodes; + function appendNode(node) { + const lastNode = getLast(nodes); + if (lastNode && lastNode.type === "word") { + if (lastNode.kind === KIND_NON_CJK && node.kind === KIND_CJ_LETTER && !lastNode.hasTrailingPunctuation || lastNode.kind === KIND_CJ_LETTER && node.kind === KIND_NON_CJK && !node.hasLeadingPunctuation) { + nodes.push({ + type: "whitespace", + value: " " + }); + } else if (!isBetween(KIND_NON_CJK, KIND_CJK_PUNCTUATION) && ![lastNode.value, node.value].some((value) => /\u3000/.test(value))) { + nodes.push({ + type: "whitespace", + value: "" + }); + } + } + nodes.push(node); + function isBetween(kind1, kind2) { + return lastNode.kind === kind1 && node.kind === kind2 || lastNode.kind === kind2 && node.kind === kind1; + } + } + } + function getOrderedListItemInfo(orderListItem, originalText) { + const [, numberText, marker, leadingSpaces] = originalText.slice(orderListItem.position.start.offset, orderListItem.position.end.offset).match(/^\s*(\d+)(\.|\))(\s*)/); + return { + numberText, + marker, + leadingSpaces + }; + } + function hasGitDiffFriendlyOrderedList(node, options) { + if (!node.ordered) { + return false; + } + if (node.children.length < 2) { + return false; + } + const firstNumber = Number(getOrderedListItemInfo(node.children[0], options.originalText).numberText); + const secondNumber = Number(getOrderedListItemInfo(node.children[1], options.originalText).numberText); + if (firstNumber === 0 && node.children.length > 2) { + const thirdNumber = Number(getOrderedListItemInfo(node.children[2], options.originalText).numberText); + return secondNumber === 1 && thirdNumber === 1; + } + return secondNumber === 1; + } + function getFencedCodeBlockValue(node, originalText) { + const { + value + } = node; + if (node.position.end.offset === originalText.length && value.endsWith("\n") && originalText.endsWith("\n")) { + return value.slice(0, -1); + } + return value; + } + function mapAst(ast, handler) { + return function preorder(node, index, parentStack) { + const newNode = Object.assign({}, handler(node, index, parentStack)); + if (newNode.children) { + newNode.children = newNode.children.map((child, index2) => preorder(child, index2, [newNode, ...parentStack])); + } + return newNode; + }(ast, null, []); + } + function isAutolink(node) { + if ((node === null || node === void 0 ? void 0 : node.type) !== "link" || node.children.length !== 1) { + return false; + } + const [child] = node.children; + return locStart(node) === locStart(child) && locEnd(node) === locEnd(child); + } + module2.exports = { + mapAst, + splitText, + punctuationPattern, + getFencedCodeBlockValue, + getOrderedListItemInfo, + hasGitDiffFriendlyOrderedList, + INLINE_NODE_TYPES, + INLINE_NODE_WRAPPER_TYPES, + isAutolink + }; + } +}); +var require_embed3 = __commonJS2({ + "src/language-markdown/embed.js"(exports2, module2) { + "use strict"; + var { + inferParserByLanguage, + getMaxContinuousCount + } = require_util(); + var { + builders: { + hardline, + markAsRoot + }, + utils: { + replaceEndOfLine + } + } = require("./doc.js"); + var printFrontMatter = require_print(); + var { + getFencedCodeBlockValue + } = require_utils10(); + function embed(path, print, textToDoc, options) { + const node = path.getValue(); + if (node.type === "code" && node.lang !== null) { + const parser = inferParserByLanguage(node.lang, options); + if (parser) { + const styleUnit = options.__inJsTemplate ? "~" : "`"; + const style = styleUnit.repeat(Math.max(3, getMaxContinuousCount(node.value, styleUnit) + 1)); + const newOptions = { + parser + }; + if (node.lang === "tsx") { + newOptions.filepath = "dummy.tsx"; + } + const doc2 = textToDoc(getFencedCodeBlockValue(node, options.originalText), newOptions, { + stripTrailingHardline: true + }); + return markAsRoot([style, node.lang, node.meta ? " " + node.meta : "", hardline, replaceEndOfLine(doc2), hardline, style]); + } + } + switch (node.type) { + case "front-matter": + return printFrontMatter(node, textToDoc); + case "importExport": + return [textToDoc(node.value, { + parser: "babel" + }, { + stripTrailingHardline: true + }), hardline]; + case "jsx": + return textToDoc(`<$>${node.value}`, { + parser: "__js_expression", + rootMarker: "mdx" + }, { + stripTrailingHardline: true + }); + } + return null; + } + module2.exports = embed; + } +}); +var require_pragma4 = __commonJS2({ + "src/language-markdown/pragma.js"(exports2, module2) { + "use strict"; + var parseFrontMatter = require_parse4(); + var pragmas = ["format", "prettier"]; + function startWithPragma(text) { + const pragma = `@(${pragmas.join("|")})`; + const regex = new RegExp([``, `{\\s*\\/\\*\\s*${pragma}\\s*\\*\\/\\s*}`, ``].join("|"), "m"); + const matched = text.match(regex); + return (matched === null || matched === void 0 ? void 0 : matched.index) === 0; + } + module2.exports = { + startWithPragma, + hasPragma: (text) => startWithPragma(parseFrontMatter(text).content.trimStart()), + insertPragma: (text) => { + const extracted = parseFrontMatter(text); + const pragma = ``; + return extracted.frontMatter ? `${extracted.frontMatter.raw} + +${pragma} + +${extracted.content}` : `${pragma} + +${extracted.content}`; + } + }; + } +}); +var require_print_preprocess2 = __commonJS2({ + "src/language-markdown/print-preprocess.js"(exports2, module2) { + "use strict"; + var getLast = require_get_last(); + var { + getOrderedListItemInfo, + mapAst, + splitText + } = require_utils10(); + var isSingleCharRegex = /^.$/su; + function preprocess(ast, options) { + ast = restoreUnescapedCharacter(ast, options); + ast = mergeContinuousTexts(ast); + ast = transformInlineCode(ast, options); + ast = transformIndentedCodeblockAndMarkItsParentList(ast, options); + ast = markAlignedList(ast, options); + ast = splitTextIntoSentences(ast, options); + ast = transformImportExport(ast); + ast = mergeContinuousImportExport(ast); + return ast; + } + function transformImportExport(ast) { + return mapAst(ast, (node) => { + if (node.type !== "import" && node.type !== "export") { + return node; + } + return Object.assign(Object.assign({}, node), {}, { + type: "importExport" + }); + }); + } + function transformInlineCode(ast, options) { + return mapAst(ast, (node) => { + if (node.type !== "inlineCode" || options.proseWrap === "preserve") { + return node; + } + return Object.assign(Object.assign({}, node), {}, { + value: node.value.replace(/\s+/g, " ") + }); + }); + } + function restoreUnescapedCharacter(ast, options) { + return mapAst(ast, (node) => node.type !== "text" || node.value === "*" || node.value === "_" || !isSingleCharRegex.test(node.value) || node.position.end.offset - node.position.start.offset === node.value.length ? node : Object.assign(Object.assign({}, node), {}, { + value: options.originalText.slice(node.position.start.offset, node.position.end.offset) + })); + } + function mergeContinuousImportExport(ast) { + return mergeChildren(ast, (prevNode, node) => prevNode.type === "importExport" && node.type === "importExport", (prevNode, node) => ({ + type: "importExport", + value: prevNode.value + "\n\n" + node.value, + position: { + start: prevNode.position.start, + end: node.position.end + } + })); + } + function mergeChildren(ast, shouldMerge, mergeNode) { + return mapAst(ast, (node) => { + if (!node.children) { + return node; + } + const children = node.children.reduce((current, child) => { + const lastChild = getLast(current); + if (lastChild && shouldMerge(lastChild, child)) { + current.splice(-1, 1, mergeNode(lastChild, child)); + } else { + current.push(child); + } + return current; + }, []); + return Object.assign(Object.assign({}, node), {}, { + children + }); + }); + } + function mergeContinuousTexts(ast) { + return mergeChildren(ast, (prevNode, node) => prevNode.type === "text" && node.type === "text", (prevNode, node) => ({ + type: "text", + value: prevNode.value + node.value, + position: { + start: prevNode.position.start, + end: node.position.end + } + })); + } + function splitTextIntoSentences(ast, options) { + return mapAst(ast, (node, index, [parentNode]) => { + if (node.type !== "text") { + return node; + } + let { + value + } = node; + if (parentNode.type === "paragraph") { + if (index === 0) { + value = value.trimStart(); + } + if (index === parentNode.children.length - 1) { + value = value.trimEnd(); + } + } + return { + type: "sentence", + position: node.position, + children: splitText(value, options) + }; + }); + } + function transformIndentedCodeblockAndMarkItsParentList(ast, options) { + return mapAst(ast, (node, index, parentStack) => { + if (node.type === "code") { + const isIndented = /^\n?(?: {4,}|\t)/.test(options.originalText.slice(node.position.start.offset, node.position.end.offset)); + node.isIndented = isIndented; + if (isIndented) { + for (let i = 0; i < parentStack.length; i++) { + const parent = parentStack[i]; + if (parent.hasIndentedCodeblock) { + break; + } + if (parent.type === "list") { + parent.hasIndentedCodeblock = true; + } + } + } + } + return node; + }); + } + function markAlignedList(ast, options) { + return mapAst(ast, (node, index, parentStack) => { + if (node.type === "list" && node.children.length > 0) { + for (let i = 0; i < parentStack.length; i++) { + const parent = parentStack[i]; + if (parent.type === "list" && !parent.isAligned) { + node.isAligned = false; + return node; + } + } + node.isAligned = isAligned(node); + } + return node; + }); + function getListItemStart(listItem) { + return listItem.children.length === 0 ? -1 : listItem.children[0].position.start.column - 1; + } + function isAligned(list) { + if (!list.ordered) { + return true; + } + const [firstItem, secondItem] = list.children; + const firstInfo = getOrderedListItemInfo(firstItem, options.originalText); + if (firstInfo.leadingSpaces.length > 1) { + return true; + } + const firstStart = getListItemStart(firstItem); + if (firstStart === -1) { + return false; + } + if (list.children.length === 1) { + return firstStart % options.tabWidth === 0; + } + const secondStart = getListItemStart(secondItem); + if (firstStart !== secondStart) { + return false; + } + if (firstStart % options.tabWidth === 0) { + return true; + } + const secondInfo = getOrderedListItemInfo(secondItem, options.originalText); + return secondInfo.leadingSpaces.length > 1; + } + } + module2.exports = preprocess; + } +}); +var require_clean4 = __commonJS2({ + "src/language-markdown/clean.js"(exports2, module2) { + "use strict"; + var collapseWhiteSpace = require_collapse_white_space(); + var { + isFrontMatterNode + } = require_util(); + var { + startWithPragma + } = require_pragma4(); + var ignoredProperties = /* @__PURE__ */ new Set(["position", "raw"]); + function clean(ast, newObj, parent) { + if (ast.type === "front-matter" || ast.type === "code" || ast.type === "yaml" || ast.type === "import" || ast.type === "export" || ast.type === "jsx") { + delete newObj.value; + } + if (ast.type === "list") { + delete newObj.isAligned; + } + if (ast.type === "list" || ast.type === "listItem") { + delete newObj.spread; + delete newObj.loose; + } + if (ast.type === "text") { + return null; + } + if (ast.type === "inlineCode") { + newObj.value = ast.value.replace(/[\t\n ]+/g, " "); + } + if (ast.type === "wikiLink") { + newObj.value = ast.value.trim().replace(/[\t\n]+/g, " "); + } + if (ast.type === "definition" || ast.type === "linkReference" || ast.type === "imageReference") { + newObj.label = collapseWhiteSpace(ast.label); + } + if ((ast.type === "definition" || ast.type === "link" || ast.type === "image") && ast.title) { + newObj.title = ast.title.replace(/\\(["')])/g, "$1"); + } + if (parent && parent.type === "root" && parent.children.length > 0 && (parent.children[0] === ast || isFrontMatterNode(parent.children[0]) && parent.children[1] === ast) && ast.type === "html" && startWithPragma(ast.value)) { + return null; + } + } + clean.ignoredProperties = ignoredProperties; + module2.exports = clean; + } +}); +var require_printer_markdown = __commonJS2({ + "src/language-markdown/printer-markdown.js"(exports2, module2) { + "use strict"; + var collapseWhiteSpace = require_collapse_white_space(); + var { + getLast, + getMinNotPresentContinuousCount, + getMaxContinuousCount, + getStringWidth, + isNonEmptyArray + } = require_util(); + var { + builders: { + breakParent, + join, + line, + literalline, + markAsRoot, + hardline, + softline, + ifBreak, + fill, + align, + indent, + group, + hardlineWithoutBreakParent + }, + utils: { + normalizeDoc, + replaceTextEndOfLine + }, + printer: { + printDocToString + } + } = require("./doc.js"); + var embed = require_embed3(); + var { + insertPragma + } = require_pragma4(); + var { + locStart, + locEnd + } = require_loc5(); + var preprocess = require_print_preprocess2(); + var clean = require_clean4(); + var { + getFencedCodeBlockValue, + hasGitDiffFriendlyOrderedList, + splitText, + punctuationPattern, + INLINE_NODE_TYPES, + INLINE_NODE_WRAPPER_TYPES, + isAutolink + } = require_utils10(); + var TRAILING_HARDLINE_NODES = /* @__PURE__ */ new Set(["importExport"]); + var SINGLE_LINE_NODE_TYPES = ["heading", "tableCell", "link", "wikiLink"]; + var SIBLING_NODE_TYPES = /* @__PURE__ */ new Set(["listItem", "definition", "footnoteDefinition"]); + function genericPrint(path, options, print) { + const node = path.getValue(); + if (shouldRemainTheSameContent(path)) { + return splitText(options.originalText.slice(node.position.start.offset, node.position.end.offset), options).map((node2) => node2.type === "word" ? node2.value : node2.value === "" ? "" : printLine(path, node2.value, options)); + } + switch (node.type) { + case "front-matter": + return options.originalText.slice(node.position.start.offset, node.position.end.offset); + case "root": + if (node.children.length === 0) { + return ""; + } + return [normalizeDoc(printRoot(path, options, print)), !TRAILING_HARDLINE_NODES.has(getLastDescendantNode(node).type) ? hardline : ""]; + case "paragraph": + return printChildren(path, options, print, { + postprocessor: fill + }); + case "sentence": + return printChildren(path, options, print); + case "word": { + let escapedValue = node.value.replace(/\*/g, "\\$&").replace(new RegExp([`(^|${punctuationPattern})(_+)`, `(_+)(${punctuationPattern}|$)`].join("|"), "g"), (_, text1, underscore1, underscore2, text2) => (underscore1 ? `${text1}${underscore1}` : `${underscore2}${text2}`).replace(/_/g, "\\_")); + const isFirstSentence = (node2, name, index) => node2.type === "sentence" && index === 0; + const isLastChildAutolink = (node2, name, index) => isAutolink(node2.children[index - 1]); + if (escapedValue !== node.value && (path.match(void 0, isFirstSentence, isLastChildAutolink) || path.match(void 0, isFirstSentence, (node2, name, index) => node2.type === "emphasis" && index === 0, isLastChildAutolink))) { + escapedValue = escapedValue.replace(/^(\\?[*_])+/, (prefix) => prefix.replace(/\\/g, "")); + } + return escapedValue; + } + case "whitespace": { + const parentNode = path.getParentNode(); + const index = parentNode.children.indexOf(node); + const nextNode = parentNode.children[index + 1]; + const proseWrap = nextNode && /^>|^(?:[*+-]|#{1,6}|\d+[).])$/.test(nextNode.value) ? "never" : options.proseWrap; + return printLine(path, node.value, { + proseWrap + }); + } + case "emphasis": { + let style; + if (isAutolink(node.children[0])) { + style = options.originalText[node.position.start.offset]; + } else { + const parentNode = path.getParentNode(); + const index = parentNode.children.indexOf(node); + const prevNode = parentNode.children[index - 1]; + const nextNode = parentNode.children[index + 1]; + const hasPrevOrNextWord = prevNode && prevNode.type === "sentence" && prevNode.children.length > 0 && getLast(prevNode.children).type === "word" && !getLast(prevNode.children).hasTrailingPunctuation || nextNode && nextNode.type === "sentence" && nextNode.children.length > 0 && nextNode.children[0].type === "word" && !nextNode.children[0].hasLeadingPunctuation; + style = hasPrevOrNextWord || getAncestorNode(path, "emphasis") ? "*" : "_"; + } + return [style, printChildren(path, options, print), style]; + } + case "strong": + return ["**", printChildren(path, options, print), "**"]; + case "delete": + return ["~~", printChildren(path, options, print), "~~"]; + case "inlineCode": { + const backtickCount = getMinNotPresentContinuousCount(node.value, "`"); + const style = "`".repeat(backtickCount || 1); + const gap = backtickCount && !/^\s/.test(node.value) ? " " : ""; + return [style, gap, node.value, gap, style]; + } + case "wikiLink": { + let contents = ""; + if (options.proseWrap === "preserve") { + contents = node.value; + } else { + contents = node.value.replace(/[\t\n]+/g, " "); + } + return ["[[", contents, "]]"]; + } + case "link": + switch (options.originalText[node.position.start.offset]) { + case "<": { + const mailto = "mailto:"; + const url = node.url.startsWith(mailto) && options.originalText.slice(node.position.start.offset + 1, node.position.start.offset + 1 + mailto.length) !== mailto ? node.url.slice(mailto.length) : node.url; + return ["<", url, ">"]; + } + case "[": + return ["[", printChildren(path, options, print), "](", printUrl(node.url, ")"), printTitle(node.title, options), ")"]; + default: + return options.originalText.slice(node.position.start.offset, node.position.end.offset); + } + case "image": + return ["![", node.alt || "", "](", printUrl(node.url, ")"), printTitle(node.title, options), ")"]; + case "blockquote": + return ["> ", align("> ", printChildren(path, options, print))]; + case "heading": + return ["#".repeat(node.depth) + " ", printChildren(path, options, print)]; + case "code": { + if (node.isIndented) { + const alignment = " ".repeat(4); + return align(alignment, [alignment, ...replaceTextEndOfLine(node.value, hardline)]); + } + const styleUnit = options.__inJsTemplate ? "~" : "`"; + const style = styleUnit.repeat(Math.max(3, getMaxContinuousCount(node.value, styleUnit) + 1)); + return [style, node.lang || "", node.meta ? " " + node.meta : "", hardline, ...replaceTextEndOfLine(getFencedCodeBlockValue(node, options.originalText), hardline), hardline, style]; + } + case "html": { + const parentNode = path.getParentNode(); + const value = parentNode.type === "root" && getLast(parentNode.children) === node ? node.value.trimEnd() : node.value; + const isHtmlComment = /^$/s.test(value); + return replaceTextEndOfLine(value, isHtmlComment ? hardline : markAsRoot(literalline)); + } + case "list": { + const nthSiblingIndex = getNthListSiblingIndex(node, path.getParentNode()); + const isGitDiffFriendlyOrderedList = hasGitDiffFriendlyOrderedList(node, options); + return printChildren(path, options, print, { + processor: (childPath, index) => { + const prefix = getPrefix(); + const childNode = childPath.getValue(); + if (childNode.children.length === 2 && childNode.children[1].type === "html" && childNode.children[0].position.start.column !== childNode.children[1].position.start.column) { + return [prefix, printListItem(childPath, options, print, prefix)]; + } + return [prefix, align(" ".repeat(prefix.length), printListItem(childPath, options, print, prefix))]; + function getPrefix() { + const rawPrefix = node.ordered ? (index === 0 ? node.start : isGitDiffFriendlyOrderedList ? 1 : node.start + index) + (nthSiblingIndex % 2 === 0 ? ". " : ") ") : nthSiblingIndex % 2 === 0 ? "- " : "* "; + return node.isAligned || node.hasIndentedCodeblock ? alignListPrefix(rawPrefix, options) : rawPrefix; + } + } + }); + } + case "thematicBreak": { + const counter = getAncestorCounter(path, "list"); + if (counter === -1) { + return "---"; + } + const nthSiblingIndex = getNthListSiblingIndex(path.getParentNode(counter), path.getParentNode(counter + 1)); + return nthSiblingIndex % 2 === 0 ? "***" : "---"; + } + case "linkReference": + return ["[", printChildren(path, options, print), "]", node.referenceType === "full" ? printLinkReference(node) : node.referenceType === "collapsed" ? "[]" : ""]; + case "imageReference": + switch (node.referenceType) { + case "full": + return ["![", node.alt || "", "]", printLinkReference(node)]; + default: + return ["![", node.alt, "]", node.referenceType === "collapsed" ? "[]" : ""]; + } + case "definition": { + const lineOrSpace = options.proseWrap === "always" ? line : " "; + return group([printLinkReference(node), ":", indent([lineOrSpace, printUrl(node.url), node.title === null ? "" : [lineOrSpace, printTitle(node.title, options, false)]])]); + } + case "footnote": + return ["[^", printChildren(path, options, print), "]"]; + case "footnoteReference": + return printFootnoteReference(node); + case "footnoteDefinition": { + const nextNode = path.getParentNode().children[path.getName() + 1]; + const shouldInlineFootnote = node.children.length === 1 && node.children[0].type === "paragraph" && (options.proseWrap === "never" || options.proseWrap === "preserve" && node.children[0].position.start.line === node.children[0].position.end.line); + return [printFootnoteReference(node), ": ", shouldInlineFootnote ? printChildren(path, options, print) : group([align(" ".repeat(4), printChildren(path, options, print, { + processor: (childPath, index) => index === 0 ? group([softline, print()]) : print() + })), nextNode && nextNode.type === "footnoteDefinition" ? softline : ""])]; + } + case "table": + return printTable(path, options, print); + case "tableCell": + return printChildren(path, options, print); + case "break": + return /\s/.test(options.originalText[node.position.start.offset]) ? [" ", markAsRoot(literalline)] : ["\\", hardline]; + case "liquidNode": + return replaceTextEndOfLine(node.value, hardline); + case "importExport": + return [node.value, hardline]; + case "esComment": + return ["{/* ", node.value, " */}"]; + case "jsx": + return node.value; + case "math": + return ["$$", hardline, node.value ? [...replaceTextEndOfLine(node.value, hardline), hardline] : "", "$$"]; + case "inlineMath": { + return options.originalText.slice(locStart(node), locEnd(node)); + } + case "tableRow": + case "listItem": + default: + throw new Error(`Unknown markdown type ${JSON.stringify(node.type)}`); + } + } + function printListItem(path, options, print, listPrefix) { + const node = path.getValue(); + const prefix = node.checked === null ? "" : node.checked ? "[x] " : "[ ] "; + return [prefix, printChildren(path, options, print, { + processor: (childPath, index) => { + if (index === 0 && childPath.getValue().type !== "list") { + return align(" ".repeat(prefix.length), print()); + } + const alignment = " ".repeat(clamp(options.tabWidth - listPrefix.length, 0, 3)); + return [alignment, align(alignment, print())]; + } + })]; + } + function alignListPrefix(prefix, options) { + const additionalSpaces = getAdditionalSpaces(); + return prefix + " ".repeat(additionalSpaces >= 4 ? 0 : additionalSpaces); + function getAdditionalSpaces() { + const restSpaces = prefix.length % options.tabWidth; + return restSpaces === 0 ? 0 : options.tabWidth - restSpaces; + } + } + function getNthListSiblingIndex(node, parentNode) { + return getNthSiblingIndex(node, parentNode, (siblingNode) => siblingNode.ordered === node.ordered); + } + function getNthSiblingIndex(node, parentNode, condition) { + let index = -1; + for (const childNode of parentNode.children) { + if (childNode.type === node.type && condition(childNode)) { + index++; + } else { + index = -1; + } + if (childNode === node) { + return index; + } + } + } + function getAncestorCounter(path, typeOrTypes) { + const types = Array.isArray(typeOrTypes) ? typeOrTypes : [typeOrTypes]; + let counter = -1; + let ancestorNode; + while (ancestorNode = path.getParentNode(++counter)) { + if (types.includes(ancestorNode.type)) { + return counter; + } + } + return -1; + } + function getAncestorNode(path, typeOrTypes) { + const counter = getAncestorCounter(path, typeOrTypes); + return counter === -1 ? null : path.getParentNode(counter); + } + function printLine(path, value, options) { + if (options.proseWrap === "preserve" && value === "\n") { + return hardline; + } + const isBreakable = options.proseWrap === "always" && !getAncestorNode(path, SINGLE_LINE_NODE_TYPES); + return value !== "" ? isBreakable ? line : " " : isBreakable ? softline : ""; + } + function printTable(path, options, print) { + const node = path.getValue(); + const columnMaxWidths = []; + const contents = path.map((rowPath) => rowPath.map((cellPath, columnIndex) => { + const text = printDocToString(print(), options).formatted; + const width = getStringWidth(text); + columnMaxWidths[columnIndex] = Math.max(columnMaxWidths[columnIndex] || 3, width); + return { + text, + width + }; + }, "children"), "children"); + const alignedTable = printTableContents(false); + if (options.proseWrap !== "never") { + return [breakParent, alignedTable]; + } + const compactTable = printTableContents(true); + return [breakParent, group(ifBreak(compactTable, alignedTable))]; + function printTableContents(isCompact) { + const parts = [printRow(contents[0], isCompact), printAlign(isCompact)]; + if (contents.length > 1) { + parts.push(join(hardlineWithoutBreakParent, contents.slice(1).map((rowContents) => printRow(rowContents, isCompact)))); + } + return join(hardlineWithoutBreakParent, parts); + } + function printAlign(isCompact) { + const align2 = columnMaxWidths.map((width, index) => { + const align3 = node.align[index]; + const first = align3 === "center" || align3 === "left" ? ":" : "-"; + const last = align3 === "center" || align3 === "right" ? ":" : "-"; + const middle = isCompact ? "-" : "-".repeat(width - 2); + return `${first}${middle}${last}`; + }); + return `| ${align2.join(" | ")} |`; + } + function printRow(rowContents, isCompact) { + const columns = rowContents.map(({ + text, + width + }, columnIndex) => { + if (isCompact) { + return text; + } + const spaces = columnMaxWidths[columnIndex] - width; + const align2 = node.align[columnIndex]; + let before = 0; + if (align2 === "right") { + before = spaces; + } else if (align2 === "center") { + before = Math.floor(spaces / 2); + } + const after = spaces - before; + return `${" ".repeat(before)}${text}${" ".repeat(after)}`; + }); + return `| ${columns.join(" | ")} |`; + } + } + function printRoot(path, options, print) { + const ignoreRanges = []; + let ignoreStart = null; + const { + children + } = path.getValue(); + for (const [index, childNode] of children.entries()) { + switch (isPrettierIgnore(childNode)) { + case "start": + if (ignoreStart === null) { + ignoreStart = { + index, + offset: childNode.position.end.offset + }; + } + break; + case "end": + if (ignoreStart !== null) { + ignoreRanges.push({ + start: ignoreStart, + end: { + index, + offset: childNode.position.start.offset + } + }); + ignoreStart = null; + } + break; + default: + break; + } + } + return printChildren(path, options, print, { + processor: (childPath, index) => { + if (ignoreRanges.length > 0) { + const ignoreRange = ignoreRanges[0]; + if (index === ignoreRange.start.index) { + return [printIgnoreComment(children[ignoreRange.start.index]), options.originalText.slice(ignoreRange.start.offset, ignoreRange.end.offset), printIgnoreComment(children[ignoreRange.end.index])]; + } + if (ignoreRange.start.index < index && index < ignoreRange.end.index) { + return false; + } + if (index === ignoreRange.end.index) { + ignoreRanges.shift(); + return false; + } + } + return print(); + } + }); + } + function printChildren(path, options, print, events = {}) { + const { + postprocessor + } = events; + const processor = events.processor || (() => print()); + const node = path.getValue(); + const parts = []; + let lastChildNode; + path.each((childPath, index) => { + const childNode = childPath.getValue(); + const result = processor(childPath, index); + if (result !== false) { + const data = { + parts, + prevNode: lastChildNode, + parentNode: node, + options + }; + if (shouldPrePrintHardline(childNode, data)) { + parts.push(hardline); + if (lastChildNode && TRAILING_HARDLINE_NODES.has(lastChildNode.type)) { + if (shouldPrePrintTripleHardline(childNode, data)) { + parts.push(hardline); + } + } else { + if (shouldPrePrintDoubleHardline(childNode, data) || shouldPrePrintTripleHardline(childNode, data)) { + parts.push(hardline); + } + if (shouldPrePrintTripleHardline(childNode, data)) { + parts.push(hardline); + } + } + } + parts.push(result); + lastChildNode = childNode; + } + }, "children"); + return postprocessor ? postprocessor(parts) : parts; + } + function printIgnoreComment(node) { + if (node.type === "html") { + return node.value; + } + if (node.type === "paragraph" && Array.isArray(node.children) && node.children.length === 1 && node.children[0].type === "esComment") { + return ["{/* ", node.children[0].value, " */}"]; + } + } + function getLastDescendantNode(node) { + let current = node; + while (isNonEmptyArray(current.children)) { + current = getLast(current.children); + } + return current; + } + function isPrettierIgnore(node) { + let match; + if (node.type === "html") { + match = node.value.match(/^$/); + } else { + let comment; + if (node.type === "esComment") { + comment = node; + } else if (node.type === "paragraph" && node.children.length === 1 && node.children[0].type === "esComment") { + comment = node.children[0]; + } + if (comment) { + match = comment.value.match(/^prettier-ignore(?:-(start|end))?$/); + } + } + return match ? match[1] || "next" : false; + } + function shouldPrePrintHardline(node, data) { + const isFirstNode = data.parts.length === 0; + const isInlineNode = INLINE_NODE_TYPES.includes(node.type); + const isInlineHTML = node.type === "html" && INLINE_NODE_WRAPPER_TYPES.includes(data.parentNode.type); + return !isFirstNode && !isInlineNode && !isInlineHTML; + } + function shouldPrePrintDoubleHardline(node, data) { + var _data$prevNode, _data$prevNode2, _data$prevNode3; + const isSequence = (data.prevNode && data.prevNode.type) === node.type; + const isSiblingNode = isSequence && SIBLING_NODE_TYPES.has(node.type); + const isInTightListItem = data.parentNode.type === "listItem" && !data.parentNode.loose; + const isPrevNodeLooseListItem = ((_data$prevNode = data.prevNode) === null || _data$prevNode === void 0 ? void 0 : _data$prevNode.type) === "listItem" && data.prevNode.loose; + const isPrevNodePrettierIgnore = isPrettierIgnore(data.prevNode) === "next"; + const isBlockHtmlWithoutBlankLineBetweenPrevHtml = node.type === "html" && ((_data$prevNode2 = data.prevNode) === null || _data$prevNode2 === void 0 ? void 0 : _data$prevNode2.type) === "html" && data.prevNode.position.end.line + 1 === node.position.start.line; + const isHtmlDirectAfterListItem = node.type === "html" && data.parentNode.type === "listItem" && ((_data$prevNode3 = data.prevNode) === null || _data$prevNode3 === void 0 ? void 0 : _data$prevNode3.type) === "paragraph" && data.prevNode.position.end.line + 1 === node.position.start.line; + return isPrevNodeLooseListItem || !(isSiblingNode || isInTightListItem || isPrevNodePrettierIgnore || isBlockHtmlWithoutBlankLineBetweenPrevHtml || isHtmlDirectAfterListItem); + } + function shouldPrePrintTripleHardline(node, data) { + const isPrevNodeList = data.prevNode && data.prevNode.type === "list"; + const isIndentedCode = node.type === "code" && node.isIndented; + return isPrevNodeList && isIndentedCode; + } + function shouldRemainTheSameContent(path) { + const ancestorNode = getAncestorNode(path, ["linkReference", "imageReference"]); + return ancestorNode && (ancestorNode.type !== "linkReference" || ancestorNode.referenceType !== "full"); + } + function printUrl(url, dangerousCharOrChars = []) { + const dangerousChars = [" ", ...Array.isArray(dangerousCharOrChars) ? dangerousCharOrChars : [dangerousCharOrChars]]; + return new RegExp(dangerousChars.map((x) => `\\${x}`).join("|")).test(url) ? `<${url}>` : url; + } + function printTitle(title, options, printSpace = true) { + if (!title) { + return ""; + } + if (printSpace) { + return " " + printTitle(title, options, false); + } + title = title.replace(/\\(["')])/g, "$1"); + if (title.includes('"') && title.includes("'") && !title.includes(")")) { + return `(${title})`; + } + const singleCount = title.split("'").length - 1; + const doubleCount = title.split('"').length - 1; + const quote = singleCount > doubleCount ? '"' : doubleCount > singleCount ? "'" : options.singleQuote ? "'" : '"'; + title = title.replace(/\\/, "\\\\"); + title = title.replace(new RegExp(`(${quote})`, "g"), "\\$1"); + return `${quote}${title}${quote}`; + } + function clamp(value, min, max) { + return value < min ? min : value > max ? max : value; + } + function hasPrettierIgnore(path) { + const index = Number(path.getName()); + if (index === 0) { + return false; + } + const prevNode = path.getParentNode().children[index - 1]; + return isPrettierIgnore(prevNode) === "next"; + } + function printLinkReference(node) { + return `[${collapseWhiteSpace(node.label)}]`; + } + function printFootnoteReference(node) { + return `[^${node.label}]`; + } + module2.exports = { + preprocess, + print: genericPrint, + embed, + massageAstNode: clean, + hasPrettierIgnore, + insertPragma + }; + } +}); +var require_options5 = __commonJS2({ + "src/language-markdown/options.js"(exports2, module2) { + "use strict"; + var commonOptions = require_common_options(); + module2.exports = { + proseWrap: commonOptions.proseWrap, + singleQuote: commonOptions.singleQuote + }; + } +}); +var require_parsers5 = __commonJS2({ + "src/language-markdown/parsers.js"(exports2, module2) { + "use strict"; + module2.exports = { + get remark() { + return require("./parser-markdown.js").parsers.remark; + }, + get markdown() { + return require("./parser-markdown.js").parsers.remark; + }, + get mdx() { + return require("./parser-markdown.js").parsers.mdx; + } + }; + } +}); +var require_Markdown = __commonJS2({ + "node_modules/linguist-languages/data/Markdown.json"(exports2, module2) { + module2.exports = { + name: "Markdown", + type: "prose", + color: "#083fa1", + aliases: ["pandoc"], + aceMode: "markdown", + codemirrorMode: "gfm", + codemirrorMimeType: "text/x-gfm", + wrap: true, + extensions: [".md", ".livemd", ".markdown", ".mdown", ".mdwn", ".mdx", ".mkd", ".mkdn", ".mkdown", ".ronn", ".scd", ".workbook"], + filenames: ["contents.lr"], + tmScope: "source.gfm", + languageId: 222 + }; + } +}); +var require_language_markdown = __commonJS2({ + "src/language-markdown/index.js"(exports2, module2) { + "use strict"; + var createLanguage = require_create_language(); + var printer = require_printer_markdown(); + var options = require_options5(); + var parsers = require_parsers5(); + var languages = [createLanguage(require_Markdown(), (data) => ({ + since: "1.8.0", + parsers: ["markdown"], + vscodeLanguageIds: ["markdown"], + filenames: [...data.filenames, "README"], + extensions: data.extensions.filter((extension) => extension !== ".mdx") + })), createLanguage(require_Markdown(), () => ({ + name: "MDX", + since: "1.15.0", + parsers: ["mdx"], + vscodeLanguageIds: ["mdx"], + filenames: [], + extensions: [".mdx"] + }))]; + var printers = { + mdast: printer + }; + module2.exports = { + languages, + options, + printers, + parsers + }; + } +}); +var require_clean5 = __commonJS2({ + "src/language-html/clean.js"(exports2, module2) { + "use strict"; + var { + isFrontMatterNode + } = require_util(); + var ignoredProperties = /* @__PURE__ */ new Set(["sourceSpan", "startSourceSpan", "endSourceSpan", "nameSpan", "valueSpan"]); + function clean(ast, newNode) { + if (ast.type === "text" || ast.type === "comment") { + return null; + } + if (isFrontMatterNode(ast) || ast.type === "yaml" || ast.type === "toml") { + return null; + } + if (ast.type === "attribute") { + delete newNode.value; + } + if (ast.type === "docType") { + delete newNode.value; + } + } + clean.ignoredProperties = ignoredProperties; + module2.exports = clean; + } +}); +var require_constants_evaluate2 = __commonJS2({ + "src/language-html/constants.evaluate.js"(exports2, module2) { + module2.exports = { + CSS_DISPLAY_TAGS: { + area: "none", + base: "none", + basefont: "none", + datalist: "none", + head: "none", + link: "none", + meta: "none", + noembed: "none", + noframes: "none", + param: "block", + rp: "none", + script: "block", + source: "block", + style: "none", + template: "inline", + track: "block", + title: "none", + html: "block", + body: "block", + address: "block", + blockquote: "block", + center: "block", + div: "block", + figure: "block", + figcaption: "block", + footer: "block", + form: "block", + header: "block", + hr: "block", + legend: "block", + listing: "block", + main: "block", + p: "block", + plaintext: "block", + pre: "block", + xmp: "block", + slot: "contents", + ruby: "ruby", + rt: "ruby-text", + article: "block", + aside: "block", + h1: "block", + h2: "block", + h3: "block", + h4: "block", + h5: "block", + h6: "block", + hgroup: "block", + nav: "block", + section: "block", + dir: "block", + dd: "block", + dl: "block", + dt: "block", + ol: "block", + ul: "block", + li: "list-item", + table: "table", + caption: "table-caption", + colgroup: "table-column-group", + col: "table-column", + thead: "table-header-group", + tbody: "table-row-group", + tfoot: "table-footer-group", + tr: "table-row", + td: "table-cell", + th: "table-cell", + fieldset: "block", + button: "inline-block", + details: "block", + summary: "block", + dialog: "block", + meter: "inline-block", + progress: "inline-block", + object: "inline-block", + video: "inline-block", + audio: "inline-block", + select: "inline-block", + option: "block", + optgroup: "block" + }, + CSS_DISPLAY_DEFAULT: "inline", + CSS_WHITE_SPACE_TAGS: { + listing: "pre", + plaintext: "pre", + pre: "pre", + xmp: "pre", + nobr: "nowrap", + table: "initial", + textarea: "pre-wrap" + }, + CSS_WHITE_SPACE_DEFAULT: "normal" + }; + } +}); +var require_is_unknown_namespace = __commonJS2({ + "src/language-html/utils/is-unknown-namespace.js"(exports2, module2) { + "use strict"; + function isUnknownNamespace(node) { + return node.type === "element" && !node.hasExplicitNamespace && !["html", "svg"].includes(node.namespace); + } + module2.exports = isUnknownNamespace; + } +}); +var require_utils11 = __commonJS2({ + "src/language-html/utils/index.js"(exports2, module2) { + "use strict"; + var { + inferParserByLanguage, + isFrontMatterNode + } = require_util(); + var { + builders: { + line, + hardline, + join + }, + utils: { + getDocParts, + replaceTextEndOfLine + } + } = require("./doc.js"); + var { + CSS_DISPLAY_TAGS, + CSS_DISPLAY_DEFAULT, + CSS_WHITE_SPACE_TAGS, + CSS_WHITE_SPACE_DEFAULT + } = require_constants_evaluate2(); + var isUnknownNamespace = require_is_unknown_namespace(); + var HTML_WHITESPACE = /* @__PURE__ */ new Set([" ", "\n", "\f", "\r", " "]); + var htmlTrimStart = (string) => string.replace(/^[\t\n\f\r ]+/, ""); + var htmlTrimEnd = (string) => string.replace(/[\t\n\f\r ]+$/, ""); + var htmlTrim = (string) => htmlTrimStart(htmlTrimEnd(string)); + var htmlTrimLeadingBlankLines = (string) => string.replace(/^[\t\f\r ]*\n/g, ""); + var htmlTrimPreserveIndentation = (string) => htmlTrimLeadingBlankLines(htmlTrimEnd(string)); + var splitByHtmlWhitespace = (string) => string.split(/[\t\n\f\r ]+/); + var getLeadingHtmlWhitespace = (string) => string.match(/^[\t\n\f\r ]*/)[0]; + var getLeadingAndTrailingHtmlWhitespace = (string) => { + const [, leadingWhitespace, text, trailingWhitespace] = string.match(/^([\t\n\f\r ]*)(.*?)([\t\n\f\r ]*)$/s); + return { + leadingWhitespace, + trailingWhitespace, + text + }; + }; + var hasHtmlWhitespace = (string) => /[\t\n\f\r ]/.test(string); + function shouldPreserveContent(node, options) { + if (node.type === "ieConditionalComment" && node.lastChild && !node.lastChild.isSelfClosing && !node.lastChild.endSourceSpan) { + return true; + } + if (node.type === "ieConditionalComment" && !node.complete) { + return true; + } + if (isPreLikeNode(node) && node.children.some((child) => child.type !== "text" && child.type !== "interpolation")) { + return true; + } + if (isVueNonHtmlBlock(node, options) && !isScriptLikeTag(node) && node.type !== "interpolation") { + return true; + } + return false; + } + function hasPrettierIgnore(node) { + if (node.type === "attribute") { + return false; + } + if (!node.parent) { + return false; + } + if (!node.prev) { + return false; + } + return isPrettierIgnore(node.prev); + } + function isPrettierIgnore(node) { + return node.type === "comment" && node.value.trim() === "prettier-ignore"; + } + function isTextLikeNode(node) { + return node.type === "text" || node.type === "comment"; + } + function isScriptLikeTag(node) { + return node.type === "element" && (node.fullName === "script" || node.fullName === "style" || node.fullName === "svg:style" || isUnknownNamespace(node) && (node.name === "script" || node.name === "style")); + } + function canHaveInterpolation(node) { + return node.children && !isScriptLikeTag(node); + } + function isWhitespaceSensitiveNode(node) { + return isScriptLikeTag(node) || node.type === "interpolation" || isIndentationSensitiveNode(node); + } + function isIndentationSensitiveNode(node) { + return getNodeCssStyleWhiteSpace(node).startsWith("pre"); + } + function isLeadingSpaceSensitiveNode(node, options) { + const isLeadingSpaceSensitive = _isLeadingSpaceSensitiveNode(); + if (isLeadingSpaceSensitive && !node.prev && node.parent && node.parent.tagDefinition && node.parent.tagDefinition.ignoreFirstLf) { + return node.type === "interpolation"; + } + return isLeadingSpaceSensitive; + function _isLeadingSpaceSensitiveNode() { + if (isFrontMatterNode(node)) { + return false; + } + if ((node.type === "text" || node.type === "interpolation") && node.prev && (node.prev.type === "text" || node.prev.type === "interpolation")) { + return true; + } + if (!node.parent || node.parent.cssDisplay === "none") { + return false; + } + if (isPreLikeNode(node.parent)) { + return true; + } + if (!node.prev && (node.parent.type === "root" || isPreLikeNode(node) && node.parent || isScriptLikeTag(node.parent) || isVueCustomBlock(node.parent, options) || !isFirstChildLeadingSpaceSensitiveCssDisplay(node.parent.cssDisplay))) { + return false; + } + if (node.prev && !isNextLeadingSpaceSensitiveCssDisplay(node.prev.cssDisplay)) { + return false; + } + return true; + } + } + function isTrailingSpaceSensitiveNode(node, options) { + if (isFrontMatterNode(node)) { + return false; + } + if ((node.type === "text" || node.type === "interpolation") && node.next && (node.next.type === "text" || node.next.type === "interpolation")) { + return true; + } + if (!node.parent || node.parent.cssDisplay === "none") { + return false; + } + if (isPreLikeNode(node.parent)) { + return true; + } + if (!node.next && (node.parent.type === "root" || isPreLikeNode(node) && node.parent || isScriptLikeTag(node.parent) || isVueCustomBlock(node.parent, options) || !isLastChildTrailingSpaceSensitiveCssDisplay(node.parent.cssDisplay))) { + return false; + } + if (node.next && !isPrevTrailingSpaceSensitiveCssDisplay(node.next.cssDisplay)) { + return false; + } + return true; + } + function isDanglingSpaceSensitiveNode(node) { + return isDanglingSpaceSensitiveCssDisplay(node.cssDisplay) && !isScriptLikeTag(node); + } + function forceNextEmptyLine(node) { + return isFrontMatterNode(node) || node.next && node.sourceSpan.end && node.sourceSpan.end.line + 1 < node.next.sourceSpan.start.line; + } + function forceBreakContent(node) { + return forceBreakChildren(node) || node.type === "element" && node.children.length > 0 && (["body", "script", "style"].includes(node.name) || node.children.some((child) => hasNonTextChild(child))) || node.firstChild && node.firstChild === node.lastChild && node.firstChild.type !== "text" && hasLeadingLineBreak(node.firstChild) && (!node.lastChild.isTrailingSpaceSensitive || hasTrailingLineBreak(node.lastChild)); + } + function forceBreakChildren(node) { + return node.type === "element" && node.children.length > 0 && (["html", "head", "ul", "ol", "select"].includes(node.name) || node.cssDisplay.startsWith("table") && node.cssDisplay !== "table-cell"); + } + function preferHardlineAsLeadingSpaces(node) { + return preferHardlineAsSurroundingSpaces(node) || node.prev && preferHardlineAsTrailingSpaces(node.prev) || hasSurroundingLineBreak(node); + } + function preferHardlineAsTrailingSpaces(node) { + return preferHardlineAsSurroundingSpaces(node) || node.type === "element" && node.fullName === "br" || hasSurroundingLineBreak(node); + } + function hasSurroundingLineBreak(node) { + return hasLeadingLineBreak(node) && hasTrailingLineBreak(node); + } + function hasLeadingLineBreak(node) { + return node.hasLeadingSpaces && (node.prev ? node.prev.sourceSpan.end.line < node.sourceSpan.start.line : node.parent.type === "root" || node.parent.startSourceSpan.end.line < node.sourceSpan.start.line); + } + function hasTrailingLineBreak(node) { + return node.hasTrailingSpaces && (node.next ? node.next.sourceSpan.start.line > node.sourceSpan.end.line : node.parent.type === "root" || node.parent.endSourceSpan && node.parent.endSourceSpan.start.line > node.sourceSpan.end.line); + } + function preferHardlineAsSurroundingSpaces(node) { + switch (node.type) { + case "ieConditionalComment": + case "comment": + case "directive": + return true; + case "element": + return ["script", "select"].includes(node.name); + } + return false; + } + function getLastDescendant(node) { + return node.lastChild ? getLastDescendant(node.lastChild) : node; + } + function hasNonTextChild(node) { + return node.children && node.children.some((child) => child.type !== "text"); + } + function _inferScriptParser(node) { + const { + type, + lang + } = node.attrMap; + if (type === "module" || type === "text/javascript" || type === "text/babel" || type === "application/javascript" || lang === "jsx") { + return "babel"; + } + if (type === "application/x-typescript" || lang === "ts" || lang === "tsx") { + return "typescript"; + } + if (type === "text/markdown") { + return "markdown"; + } + if (type === "text/html") { + return "html"; + } + if (type && (type.endsWith("json") || type.endsWith("importmap")) || type === "speculationrules") { + return "json"; + } + if (type === "text/x-handlebars-template") { + return "glimmer"; + } + } + function inferStyleParser(node, options) { + const { + lang + } = node.attrMap; + if (!lang || lang === "postcss" || lang === "css") { + return "css"; + } + if (lang === "scss") { + return "scss"; + } + if (lang === "less") { + return "less"; + } + if (lang === "stylus") { + return inferParserByLanguage("stylus", options); + } + } + function inferScriptParser(node, options) { + if (node.name === "script" && !node.attrMap.src) { + if (!node.attrMap.lang && !node.attrMap.type) { + return "babel"; + } + return _inferScriptParser(node); + } + if (node.name === "style") { + return inferStyleParser(node, options); + } + if (options && isVueNonHtmlBlock(node, options)) { + return _inferScriptParser(node) || !("src" in node.attrMap) && inferParserByLanguage(node.attrMap.lang, options); + } + } + function isBlockLikeCssDisplay(cssDisplay) { + return cssDisplay === "block" || cssDisplay === "list-item" || cssDisplay.startsWith("table"); + } + function isFirstChildLeadingSpaceSensitiveCssDisplay(cssDisplay) { + return !isBlockLikeCssDisplay(cssDisplay) && cssDisplay !== "inline-block"; + } + function isLastChildTrailingSpaceSensitiveCssDisplay(cssDisplay) { + return !isBlockLikeCssDisplay(cssDisplay) && cssDisplay !== "inline-block"; + } + function isPrevTrailingSpaceSensitiveCssDisplay(cssDisplay) { + return !isBlockLikeCssDisplay(cssDisplay); + } + function isNextLeadingSpaceSensitiveCssDisplay(cssDisplay) { + return !isBlockLikeCssDisplay(cssDisplay); + } + function isDanglingSpaceSensitiveCssDisplay(cssDisplay) { + return !isBlockLikeCssDisplay(cssDisplay) && cssDisplay !== "inline-block"; + } + function isPreLikeNode(node) { + return getNodeCssStyleWhiteSpace(node).startsWith("pre"); + } + function countParents(path, predicate) { + let counter = 0; + for (let i = path.stack.length - 1; i >= 0; i--) { + const value = path.stack[i]; + if (value && typeof value === "object" && !Array.isArray(value) && predicate(value)) { + counter++; + } + } + return counter; + } + function hasParent(node, fn) { + let current = node; + while (current) { + if (fn(current)) { + return true; + } + current = current.parent; + } + return false; + } + function getNodeCssStyleDisplay(node, options) { + if (node.prev && node.prev.type === "comment") { + const match = node.prev.value.match(/^\s*display:\s*([a-z]+)\s*$/); + if (match) { + return match[1]; + } + } + let isInSvgForeignObject = false; + if (node.type === "element" && node.namespace === "svg") { + if (hasParent(node, (parent) => parent.fullName === "svg:foreignObject")) { + isInSvgForeignObject = true; + } else { + return node.name === "svg" ? "inline-block" : "block"; + } + } + switch (options.htmlWhitespaceSensitivity) { + case "strict": + return "inline"; + case "ignore": + return "block"; + default: { + if (options.parser === "vue" && node.parent && node.parent.type === "root") { + return "block"; + } + return node.type === "element" && (!node.namespace || isInSvgForeignObject || isUnknownNamespace(node)) && CSS_DISPLAY_TAGS[node.name] || CSS_DISPLAY_DEFAULT; + } + } + } + function getNodeCssStyleWhiteSpace(node) { + return node.type === "element" && (!node.namespace || isUnknownNamespace(node)) && CSS_WHITE_SPACE_TAGS[node.name] || CSS_WHITE_SPACE_DEFAULT; + } + function getMinIndentation(text) { + let minIndentation = Number.POSITIVE_INFINITY; + for (const lineText of text.split("\n")) { + if (lineText.length === 0) { + continue; + } + if (!HTML_WHITESPACE.has(lineText[0])) { + return 0; + } + const indentation = getLeadingHtmlWhitespace(lineText).length; + if (lineText.length === indentation) { + continue; + } + if (indentation < minIndentation) { + minIndentation = indentation; + } + } + return minIndentation === Number.POSITIVE_INFINITY ? 0 : minIndentation; + } + function dedentString(text, minIndent = getMinIndentation(text)) { + return minIndent === 0 ? text : text.split("\n").map((lineText) => lineText.slice(minIndent)).join("\n"); + } + function countChars(text, char) { + let counter = 0; + for (let i = 0; i < text.length; i++) { + if (text[i] === char) { + counter++; + } + } + return counter; + } + function unescapeQuoteEntities(text) { + return text.replace(/'/g, "'").replace(/"/g, '"'); + } + var vueRootElementsSet = /* @__PURE__ */ new Set(["template", "style", "script"]); + function isVueCustomBlock(node, options) { + return isVueSfcBlock(node, options) && !vueRootElementsSet.has(node.fullName); + } + function isVueSfcBlock(node, options) { + return options.parser === "vue" && node.type === "element" && node.parent.type === "root" && node.fullName.toLowerCase() !== "html"; + } + function isVueNonHtmlBlock(node, options) { + return isVueSfcBlock(node, options) && (isVueCustomBlock(node, options) || node.attrMap.lang && node.attrMap.lang !== "html"); + } + function isVueSlotAttribute(attribute) { + const attributeName = attribute.fullName; + return attributeName.charAt(0) === "#" || attributeName === "slot-scope" || attributeName === "v-slot" || attributeName.startsWith("v-slot:"); + } + function isVueSfcBindingsAttribute(attribute, options) { + const element = attribute.parent; + if (!isVueSfcBlock(element, options)) { + return false; + } + const tagName = element.fullName; + const attributeName = attribute.fullName; + return tagName === "script" && attributeName === "setup" || tagName === "style" && attributeName === "vars"; + } + function getTextValueParts(node, value = node.value) { + return node.parent.isWhitespaceSensitive ? node.parent.isIndentationSensitive ? replaceTextEndOfLine(value) : replaceTextEndOfLine(dedentString(htmlTrimPreserveIndentation(value)), hardline) : getDocParts(join(line, splitByHtmlWhitespace(value))); + } + function isVueScriptTag(node, options) { + return isVueSfcBlock(node, options) && node.name === "script"; + } + module2.exports = { + htmlTrim, + htmlTrimPreserveIndentation, + hasHtmlWhitespace, + getLeadingAndTrailingHtmlWhitespace, + canHaveInterpolation, + countChars, + countParents, + dedentString, + forceBreakChildren, + forceBreakContent, + forceNextEmptyLine, + getLastDescendant, + getNodeCssStyleDisplay, + getNodeCssStyleWhiteSpace, + hasPrettierIgnore, + inferScriptParser, + isVueCustomBlock, + isVueNonHtmlBlock, + isVueScriptTag, + isVueSlotAttribute, + isVueSfcBindingsAttribute, + isVueSfcBlock, + isDanglingSpaceSensitiveNode, + isIndentationSensitiveNode, + isLeadingSpaceSensitiveNode, + isPreLikeNode, + isScriptLikeTag, + isTextLikeNode, + isTrailingSpaceSensitiveNode, + isWhitespaceSensitiveNode, + isUnknownNamespace, + preferHardlineAsLeadingSpaces, + preferHardlineAsTrailingSpaces, + shouldPreserveContent, + unescapeQuoteEntities, + getTextValueParts + }; + } +}); +var require_chars = __commonJS2({ + "node_modules/angular-html-parser/lib/compiler/src/chars.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.$EOF = 0; + exports2.$BSPACE = 8; + exports2.$TAB = 9; + exports2.$LF = 10; + exports2.$VTAB = 11; + exports2.$FF = 12; + exports2.$CR = 13; + exports2.$SPACE = 32; + exports2.$BANG = 33; + exports2.$DQ = 34; + exports2.$HASH = 35; + exports2.$$ = 36; + exports2.$PERCENT = 37; + exports2.$AMPERSAND = 38; + exports2.$SQ = 39; + exports2.$LPAREN = 40; + exports2.$RPAREN = 41; + exports2.$STAR = 42; + exports2.$PLUS = 43; + exports2.$COMMA = 44; + exports2.$MINUS = 45; + exports2.$PERIOD = 46; + exports2.$SLASH = 47; + exports2.$COLON = 58; + exports2.$SEMICOLON = 59; + exports2.$LT = 60; + exports2.$EQ = 61; + exports2.$GT = 62; + exports2.$QUESTION = 63; + exports2.$0 = 48; + exports2.$7 = 55; + exports2.$9 = 57; + exports2.$A = 65; + exports2.$E = 69; + exports2.$F = 70; + exports2.$X = 88; + exports2.$Z = 90; + exports2.$LBRACKET = 91; + exports2.$BACKSLASH = 92; + exports2.$RBRACKET = 93; + exports2.$CARET = 94; + exports2.$_ = 95; + exports2.$a = 97; + exports2.$b = 98; + exports2.$e = 101; + exports2.$f = 102; + exports2.$n = 110; + exports2.$r = 114; + exports2.$t = 116; + exports2.$u = 117; + exports2.$v = 118; + exports2.$x = 120; + exports2.$z = 122; + exports2.$LBRACE = 123; + exports2.$BAR = 124; + exports2.$RBRACE = 125; + exports2.$NBSP = 160; + exports2.$PIPE = 124; + exports2.$TILDA = 126; + exports2.$AT = 64; + exports2.$BT = 96; + function isWhitespace(code) { + return code >= exports2.$TAB && code <= exports2.$SPACE || code == exports2.$NBSP; + } + exports2.isWhitespace = isWhitespace; + function isDigit(code) { + return exports2.$0 <= code && code <= exports2.$9; + } + exports2.isDigit = isDigit; + function isAsciiLetter(code) { + return code >= exports2.$a && code <= exports2.$z || code >= exports2.$A && code <= exports2.$Z; + } + exports2.isAsciiLetter = isAsciiLetter; + function isAsciiHexDigit(code) { + return code >= exports2.$a && code <= exports2.$f || code >= exports2.$A && code <= exports2.$F || isDigit(code); + } + exports2.isAsciiHexDigit = isAsciiHexDigit; + function isNewLine(code) { + return code === exports2.$LF || code === exports2.$CR; + } + exports2.isNewLine = isNewLine; + function isOctalDigit(code) { + return exports2.$0 <= code && code <= exports2.$7; + } + exports2.isOctalDigit = isOctalDigit; + } +}); +var require_static_symbol = __commonJS2({ + "node_modules/angular-html-parser/lib/compiler/src/aot/static_symbol.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var StaticSymbol = class { + constructor(filePath, name, members) { + this.filePath = filePath; + this.name = name; + this.members = members; + } + assertNoMembers() { + if (this.members.length) { + throw new Error(`Illegal state: symbol without members expected, but got ${JSON.stringify(this)}.`); + } + } + }; + exports2.StaticSymbol = StaticSymbol; + var StaticSymbolCache = class { + constructor() { + this.cache = /* @__PURE__ */ new Map(); + } + get(declarationFile, name, members) { + members = members || []; + const memberSuffix = members.length ? `.${members.join(".")}` : ""; + const key = `"${declarationFile}".${name}${memberSuffix}`; + let result = this.cache.get(key); + if (!result) { + result = new StaticSymbol(declarationFile, name, members); + this.cache.set(key, result); + } + return result; + } + }; + exports2.StaticSymbolCache = StaticSymbolCache; + } +}); +var require_util3 = __commonJS2({ + "node_modules/angular-html-parser/lib/compiler/src/util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var DASH_CASE_REGEXP = /-+([a-z0-9])/g; + function dashCaseToCamelCase(input) { + return input.replace(DASH_CASE_REGEXP, (...m) => m[1].toUpperCase()); + } + exports2.dashCaseToCamelCase = dashCaseToCamelCase; + function splitAtColon(input, defaultValues) { + return _splitAt(input, ":", defaultValues); + } + exports2.splitAtColon = splitAtColon; + function splitAtPeriod(input, defaultValues) { + return _splitAt(input, ".", defaultValues); + } + exports2.splitAtPeriod = splitAtPeriod; + function _splitAt(input, character, defaultValues) { + const characterIndex = input.indexOf(character); + if (characterIndex == -1) + return defaultValues; + return [input.slice(0, characterIndex).trim(), input.slice(characterIndex + 1).trim()]; + } + function visitValue(value, visitor, context) { + if (Array.isArray(value)) { + return visitor.visitArray(value, context); + } + if (isStrictStringMap(value)) { + return visitor.visitStringMap(value, context); + } + if (value == null || typeof value == "string" || typeof value == "number" || typeof value == "boolean") { + return visitor.visitPrimitive(value, context); + } + return visitor.visitOther(value, context); + } + exports2.visitValue = visitValue; + function isDefined(val) { + return val !== null && val !== void 0; + } + exports2.isDefined = isDefined; + function noUndefined(val) { + return val === void 0 ? null : val; + } + exports2.noUndefined = noUndefined; + var ValueTransformer = class { + visitArray(arr, context) { + return arr.map((value) => visitValue(value, this, context)); + } + visitStringMap(map, context) { + const result = {}; + Object.keys(map).forEach((key) => { + result[key] = visitValue(map[key], this, context); + }); + return result; + } + visitPrimitive(value, context) { + return value; + } + visitOther(value, context) { + return value; + } + }; + exports2.ValueTransformer = ValueTransformer; + exports2.SyncAsync = { + assertSync: (value) => { + if (isPromise(value)) { + throw new Error(`Illegal state: value cannot be a promise`); + } + return value; + }, + then: (value, cb) => { + return isPromise(value) ? value.then(cb) : cb(value); + }, + all: (syncAsyncValues) => { + return syncAsyncValues.some(isPromise) ? Promise.all(syncAsyncValues) : syncAsyncValues; + } + }; + function error(msg) { + throw new Error(`Internal Error: ${msg}`); + } + exports2.error = error; + function syntaxError(msg, parseErrors) { + const error2 = Error(msg); + error2[ERROR_SYNTAX_ERROR] = true; + if (parseErrors) + error2[ERROR_PARSE_ERRORS] = parseErrors; + return error2; + } + exports2.syntaxError = syntaxError; + var ERROR_SYNTAX_ERROR = "ngSyntaxError"; + var ERROR_PARSE_ERRORS = "ngParseErrors"; + function isSyntaxError(error2) { + return error2[ERROR_SYNTAX_ERROR]; + } + exports2.isSyntaxError = isSyntaxError; + function getParseErrors(error2) { + return error2[ERROR_PARSE_ERRORS] || []; + } + exports2.getParseErrors = getParseErrors; + function escapeRegExp(s) { + return s.replace(/([.*+?^=!:${}()|[\]\/\\])/g, "\\$1"); + } + exports2.escapeRegExp = escapeRegExp; + var STRING_MAP_PROTO = Object.getPrototypeOf({}); + function isStrictStringMap(obj) { + return typeof obj === "object" && obj !== null && Object.getPrototypeOf(obj) === STRING_MAP_PROTO; + } + function utf8Encode(str) { + let encoded = ""; + for (let index = 0; index < str.length; index++) { + let codePoint = str.charCodeAt(index); + if (codePoint >= 55296 && codePoint <= 56319 && str.length > index + 1) { + const low = str.charCodeAt(index + 1); + if (low >= 56320 && low <= 57343) { + index++; + codePoint = (codePoint - 55296 << 10) + low - 56320 + 65536; + } + } + if (codePoint <= 127) { + encoded += String.fromCharCode(codePoint); + } else if (codePoint <= 2047) { + encoded += String.fromCharCode(codePoint >> 6 & 31 | 192, codePoint & 63 | 128); + } else if (codePoint <= 65535) { + encoded += String.fromCharCode(codePoint >> 12 | 224, codePoint >> 6 & 63 | 128, codePoint & 63 | 128); + } else if (codePoint <= 2097151) { + encoded += String.fromCharCode(codePoint >> 18 & 7 | 240, codePoint >> 12 & 63 | 128, codePoint >> 6 & 63 | 128, codePoint & 63 | 128); + } + } + return encoded; + } + exports2.utf8Encode = utf8Encode; + function stringify(token) { + if (typeof token === "string") { + return token; + } + if (token instanceof Array) { + return "[" + token.map(stringify).join(", ") + "]"; + } + if (token == null) { + return "" + token; + } + if (token.overriddenName) { + return `${token.overriddenName}`; + } + if (token.name) { + return `${token.name}`; + } + if (!token.toString) { + return "object"; + } + const res = token.toString(); + if (res == null) { + return "" + res; + } + const newLineIndex = res.indexOf("\n"); + return newLineIndex === -1 ? res : res.substring(0, newLineIndex); + } + exports2.stringify = stringify; + function resolveForwardRef(type) { + if (typeof type === "function" && type.hasOwnProperty("__forward_ref__")) { + return type(); + } else { + return type; + } + } + exports2.resolveForwardRef = resolveForwardRef; + function isPromise(obj) { + return !!obj && typeof obj.then === "function"; + } + exports2.isPromise = isPromise; + var Version = class { + constructor(full) { + this.full = full; + const splits = full.split("."); + this.major = splits[0]; + this.minor = splits[1]; + this.patch = splits.slice(2).join("."); + } + }; + exports2.Version = Version; + var __window = typeof window !== "undefined" && window; + var __self = typeof self !== "undefined" && typeof WorkerGlobalScope !== "undefined" && self instanceof WorkerGlobalScope && self; + var __global = typeof global !== "undefined" && global; + var _global = __global || __window || __self; + exports2.global = _global; + } +}); +var require_compile_metadata = __commonJS2({ + "node_modules/angular-html-parser/lib/compiler/src/compile_metadata.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var static_symbol_1 = require_static_symbol(); + var util_1 = require_util3(); + var HOST_REG_EXP = /^(?:(?:\[([^\]]+)\])|(?:\(([^\)]+)\)))|(\@[-\w]+)$/; + function sanitizeIdentifier(name) { + return name.replace(/\W/g, "_"); + } + exports2.sanitizeIdentifier = sanitizeIdentifier; + var _anonymousTypeIndex = 0; + function identifierName(compileIdentifier) { + if (!compileIdentifier || !compileIdentifier.reference) { + return null; + } + const ref = compileIdentifier.reference; + if (ref instanceof static_symbol_1.StaticSymbol) { + return ref.name; + } + if (ref["__anonymousType"]) { + return ref["__anonymousType"]; + } + let identifier = util_1.stringify(ref); + if (identifier.indexOf("(") >= 0) { + identifier = `anonymous_${_anonymousTypeIndex++}`; + ref["__anonymousType"] = identifier; + } else { + identifier = sanitizeIdentifier(identifier); + } + return identifier; + } + exports2.identifierName = identifierName; + function identifierModuleUrl(compileIdentifier) { + const ref = compileIdentifier.reference; + if (ref instanceof static_symbol_1.StaticSymbol) { + return ref.filePath; + } + return `./${util_1.stringify(ref)}`; + } + exports2.identifierModuleUrl = identifierModuleUrl; + function viewClassName(compType, embeddedTemplateIndex) { + return `View_${identifierName({ + reference: compType + })}_${embeddedTemplateIndex}`; + } + exports2.viewClassName = viewClassName; + function rendererTypeName(compType) { + return `RenderType_${identifierName({ + reference: compType + })}`; + } + exports2.rendererTypeName = rendererTypeName; + function hostViewClassName(compType) { + return `HostView_${identifierName({ + reference: compType + })}`; + } + exports2.hostViewClassName = hostViewClassName; + function componentFactoryName(compType) { + return `${identifierName({ + reference: compType + })}NgFactory`; + } + exports2.componentFactoryName = componentFactoryName; + var CompileSummaryKind; + (function(CompileSummaryKind2) { + CompileSummaryKind2[CompileSummaryKind2["Pipe"] = 0] = "Pipe"; + CompileSummaryKind2[CompileSummaryKind2["Directive"] = 1] = "Directive"; + CompileSummaryKind2[CompileSummaryKind2["NgModule"] = 2] = "NgModule"; + CompileSummaryKind2[CompileSummaryKind2["Injectable"] = 3] = "Injectable"; + })(CompileSummaryKind = exports2.CompileSummaryKind || (exports2.CompileSummaryKind = {})); + function tokenName(token) { + return token.value != null ? sanitizeIdentifier(token.value) : identifierName(token.identifier); + } + exports2.tokenName = tokenName; + function tokenReference(token) { + if (token.identifier != null) { + return token.identifier.reference; + } else { + return token.value; + } + } + exports2.tokenReference = tokenReference; + var CompileStylesheetMetadata = class { + constructor({ + moduleUrl, + styles, + styleUrls + } = {}) { + this.moduleUrl = moduleUrl || null; + this.styles = _normalizeArray(styles); + this.styleUrls = _normalizeArray(styleUrls); + } + }; + exports2.CompileStylesheetMetadata = CompileStylesheetMetadata; + var CompileTemplateMetadata = class { + constructor({ + encapsulation, + template, + templateUrl, + htmlAst, + styles, + styleUrls, + externalStylesheets, + animations, + ngContentSelectors, + interpolation, + isInline, + preserveWhitespaces + }) { + this.encapsulation = encapsulation; + this.template = template; + this.templateUrl = templateUrl; + this.htmlAst = htmlAst; + this.styles = _normalizeArray(styles); + this.styleUrls = _normalizeArray(styleUrls); + this.externalStylesheets = _normalizeArray(externalStylesheets); + this.animations = animations ? flatten(animations) : []; + this.ngContentSelectors = ngContentSelectors || []; + if (interpolation && interpolation.length != 2) { + throw new Error(`'interpolation' should have a start and an end symbol.`); + } + this.interpolation = interpolation; + this.isInline = isInline; + this.preserveWhitespaces = preserveWhitespaces; + } + toSummary() { + return { + ngContentSelectors: this.ngContentSelectors, + encapsulation: this.encapsulation, + styles: this.styles, + animations: this.animations + }; + } + }; + exports2.CompileTemplateMetadata = CompileTemplateMetadata; + var CompileDirectiveMetadata = class { + static create({ + isHost, + type, + isComponent, + selector, + exportAs, + changeDetection, + inputs, + outputs, + host, + providers, + viewProviders, + queries, + guards, + viewQueries, + entryComponents, + template, + componentViewType, + rendererType, + componentFactory + }) { + const hostListeners = {}; + const hostProperties = {}; + const hostAttributes = {}; + if (host != null) { + Object.keys(host).forEach((key) => { + const value = host[key]; + const matches = key.match(HOST_REG_EXP); + if (matches === null) { + hostAttributes[key] = value; + } else if (matches[1] != null) { + hostProperties[matches[1]] = value; + } else if (matches[2] != null) { + hostListeners[matches[2]] = value; + } + }); + } + const inputsMap = {}; + if (inputs != null) { + inputs.forEach((bindConfig) => { + const parts = util_1.splitAtColon(bindConfig, [bindConfig, bindConfig]); + inputsMap[parts[0]] = parts[1]; + }); + } + const outputsMap = {}; + if (outputs != null) { + outputs.forEach((bindConfig) => { + const parts = util_1.splitAtColon(bindConfig, [bindConfig, bindConfig]); + outputsMap[parts[0]] = parts[1]; + }); + } + return new CompileDirectiveMetadata({ + isHost, + type, + isComponent: !!isComponent, + selector, + exportAs, + changeDetection, + inputs: inputsMap, + outputs: outputsMap, + hostListeners, + hostProperties, + hostAttributes, + providers, + viewProviders, + queries, + guards, + viewQueries, + entryComponents, + template, + componentViewType, + rendererType, + componentFactory + }); + } + constructor({ + isHost, + type, + isComponent, + selector, + exportAs, + changeDetection, + inputs, + outputs, + hostListeners, + hostProperties, + hostAttributes, + providers, + viewProviders, + queries, + guards, + viewQueries, + entryComponents, + template, + componentViewType, + rendererType, + componentFactory + }) { + this.isHost = !!isHost; + this.type = type; + this.isComponent = isComponent; + this.selector = selector; + this.exportAs = exportAs; + this.changeDetection = changeDetection; + this.inputs = inputs; + this.outputs = outputs; + this.hostListeners = hostListeners; + this.hostProperties = hostProperties; + this.hostAttributes = hostAttributes; + this.providers = _normalizeArray(providers); + this.viewProviders = _normalizeArray(viewProviders); + this.queries = _normalizeArray(queries); + this.guards = guards; + this.viewQueries = _normalizeArray(viewQueries); + this.entryComponents = _normalizeArray(entryComponents); + this.template = template; + this.componentViewType = componentViewType; + this.rendererType = rendererType; + this.componentFactory = componentFactory; + } + toSummary() { + return { + summaryKind: CompileSummaryKind.Directive, + type: this.type, + isComponent: this.isComponent, + selector: this.selector, + exportAs: this.exportAs, + inputs: this.inputs, + outputs: this.outputs, + hostListeners: this.hostListeners, + hostProperties: this.hostProperties, + hostAttributes: this.hostAttributes, + providers: this.providers, + viewProviders: this.viewProviders, + queries: this.queries, + guards: this.guards, + viewQueries: this.viewQueries, + entryComponents: this.entryComponents, + changeDetection: this.changeDetection, + template: this.template && this.template.toSummary(), + componentViewType: this.componentViewType, + rendererType: this.rendererType, + componentFactory: this.componentFactory + }; + } + }; + exports2.CompileDirectiveMetadata = CompileDirectiveMetadata; + var CompilePipeMetadata = class { + constructor({ + type, + name, + pure + }) { + this.type = type; + this.name = name; + this.pure = !!pure; + } + toSummary() { + return { + summaryKind: CompileSummaryKind.Pipe, + type: this.type, + name: this.name, + pure: this.pure + }; + } + }; + exports2.CompilePipeMetadata = CompilePipeMetadata; + var CompileShallowModuleMetadata = class { + }; + exports2.CompileShallowModuleMetadata = CompileShallowModuleMetadata; + var CompileNgModuleMetadata = class { + constructor({ + type, + providers, + declaredDirectives, + exportedDirectives, + declaredPipes, + exportedPipes, + entryComponents, + bootstrapComponents, + importedModules, + exportedModules, + schemas, + transitiveModule, + id + }) { + this.type = type || null; + this.declaredDirectives = _normalizeArray(declaredDirectives); + this.exportedDirectives = _normalizeArray(exportedDirectives); + this.declaredPipes = _normalizeArray(declaredPipes); + this.exportedPipes = _normalizeArray(exportedPipes); + this.providers = _normalizeArray(providers); + this.entryComponents = _normalizeArray(entryComponents); + this.bootstrapComponents = _normalizeArray(bootstrapComponents); + this.importedModules = _normalizeArray(importedModules); + this.exportedModules = _normalizeArray(exportedModules); + this.schemas = _normalizeArray(schemas); + this.id = id || null; + this.transitiveModule = transitiveModule || null; + } + toSummary() { + const module3 = this.transitiveModule; + return { + summaryKind: CompileSummaryKind.NgModule, + type: this.type, + entryComponents: module3.entryComponents, + providers: module3.providers, + modules: module3.modules, + exportedDirectives: module3.exportedDirectives, + exportedPipes: module3.exportedPipes + }; + } + }; + exports2.CompileNgModuleMetadata = CompileNgModuleMetadata; + var TransitiveCompileNgModuleMetadata = class { + constructor() { + this.directivesSet = /* @__PURE__ */ new Set(); + this.directives = []; + this.exportedDirectivesSet = /* @__PURE__ */ new Set(); + this.exportedDirectives = []; + this.pipesSet = /* @__PURE__ */ new Set(); + this.pipes = []; + this.exportedPipesSet = /* @__PURE__ */ new Set(); + this.exportedPipes = []; + this.modulesSet = /* @__PURE__ */ new Set(); + this.modules = []; + this.entryComponentsSet = /* @__PURE__ */ new Set(); + this.entryComponents = []; + this.providers = []; + } + addProvider(provider, module3) { + this.providers.push({ + provider, + module: module3 + }); + } + addDirective(id) { + if (!this.directivesSet.has(id.reference)) { + this.directivesSet.add(id.reference); + this.directives.push(id); + } + } + addExportedDirective(id) { + if (!this.exportedDirectivesSet.has(id.reference)) { + this.exportedDirectivesSet.add(id.reference); + this.exportedDirectives.push(id); + } + } + addPipe(id) { + if (!this.pipesSet.has(id.reference)) { + this.pipesSet.add(id.reference); + this.pipes.push(id); + } + } + addExportedPipe(id) { + if (!this.exportedPipesSet.has(id.reference)) { + this.exportedPipesSet.add(id.reference); + this.exportedPipes.push(id); + } + } + addModule(id) { + if (!this.modulesSet.has(id.reference)) { + this.modulesSet.add(id.reference); + this.modules.push(id); + } + } + addEntryComponent(ec) { + if (!this.entryComponentsSet.has(ec.componentType)) { + this.entryComponentsSet.add(ec.componentType); + this.entryComponents.push(ec); + } + } + }; + exports2.TransitiveCompileNgModuleMetadata = TransitiveCompileNgModuleMetadata; + function _normalizeArray(obj) { + return obj || []; + } + var ProviderMeta = class { + constructor(token, { + useClass, + useValue, + useExisting, + useFactory, + deps, + multi + }) { + this.token = token; + this.useClass = useClass || null; + this.useValue = useValue; + this.useExisting = useExisting; + this.useFactory = useFactory || null; + this.dependencies = deps || null; + this.multi = !!multi; + } + }; + exports2.ProviderMeta = ProviderMeta; + function flatten(list) { + return list.reduce((flat, item) => { + const flatItem = Array.isArray(item) ? flatten(item) : item; + return flat.concat(flatItem); + }, []); + } + exports2.flatten = flatten; + function jitSourceUrl(url) { + return url.replace(/(\w+:\/\/[\w:-]+)?(\/+)?/, "ng:///"); + } + function templateSourceUrl(ngModuleType, compMeta, templateMeta) { + let url; + if (templateMeta.isInline) { + if (compMeta.type.reference instanceof static_symbol_1.StaticSymbol) { + url = `${compMeta.type.reference.filePath}.${compMeta.type.reference.name}.html`; + } else { + url = `${identifierName(ngModuleType)}/${identifierName(compMeta.type)}.html`; + } + } else { + url = templateMeta.templateUrl; + } + return compMeta.type.reference instanceof static_symbol_1.StaticSymbol ? url : jitSourceUrl(url); + } + exports2.templateSourceUrl = templateSourceUrl; + function sharedStylesheetJitUrl(meta, id) { + const pathParts = meta.moduleUrl.split(/\/\\/g); + const baseName = pathParts[pathParts.length - 1]; + return jitSourceUrl(`css/${id}${baseName}.ngstyle.js`); + } + exports2.sharedStylesheetJitUrl = sharedStylesheetJitUrl; + function ngModuleJitUrl(moduleMeta) { + return jitSourceUrl(`${identifierName(moduleMeta.type)}/module.ngfactory.js`); + } + exports2.ngModuleJitUrl = ngModuleJitUrl; + function templateJitUrl(ngModuleType, compMeta) { + return jitSourceUrl(`${identifierName(ngModuleType)}/${identifierName(compMeta.type)}.ngfactory.js`); + } + exports2.templateJitUrl = templateJitUrl; + } +}); +var require_parse_util = __commonJS2({ + "node_modules/angular-html-parser/lib/compiler/src/parse_util.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + var chars = require_chars(); + var compile_metadata_1 = require_compile_metadata(); + var ParseLocation = class { + constructor(file, offset, line, col) { + this.file = file; + this.offset = offset; + this.line = line; + this.col = col; + } + toString() { + return this.offset != null ? `${this.file.url}@${this.line}:${this.col}` : this.file.url; + } + moveBy(delta) { + const source = this.file.content; + const len = source.length; + let offset = this.offset; + let line = this.line; + let col = this.col; + while (offset > 0 && delta < 0) { + offset--; + delta++; + const ch = source.charCodeAt(offset); + if (ch == chars.$LF) { + line--; + const priorLine = source.substr(0, offset - 1).lastIndexOf(String.fromCharCode(chars.$LF)); + col = priorLine > 0 ? offset - priorLine : offset; + } else { + col--; + } + } + while (offset < len && delta > 0) { + const ch = source.charCodeAt(offset); + offset++; + delta--; + if (ch == chars.$LF) { + line++; + col = 0; + } else { + col++; + } + } + return new ParseLocation(this.file, offset, line, col); + } + getContext(maxChars, maxLines) { + const content = this.file.content; + let startOffset = this.offset; + if (startOffset != null) { + if (startOffset > content.length - 1) { + startOffset = content.length - 1; + } + let endOffset = startOffset; + let ctxChars = 0; + let ctxLines = 0; + while (ctxChars < maxChars && startOffset > 0) { + startOffset--; + ctxChars++; + if (content[startOffset] == "\n") { + if (++ctxLines == maxLines) { + break; + } + } + } + ctxChars = 0; + ctxLines = 0; + while (ctxChars < maxChars && endOffset < content.length - 1) { + endOffset++; + ctxChars++; + if (content[endOffset] == "\n") { + if (++ctxLines == maxLines) { + break; + } + } + } + return { + before: content.substring(startOffset, this.offset), + after: content.substring(this.offset, endOffset + 1) + }; + } + return null; + } + }; + exports2.ParseLocation = ParseLocation; + var ParseSourceFile = class { + constructor(content, url) { + this.content = content; + this.url = url; + } + }; + exports2.ParseSourceFile = ParseSourceFile; + var ParseSourceSpan = class { + constructor(start, end, details = null) { + this.start = start; + this.end = end; + this.details = details; + } + toString() { + return this.start.file.content.substring(this.start.offset, this.end.offset); + } + }; + exports2.ParseSourceSpan = ParseSourceSpan; + exports2.EMPTY_PARSE_LOCATION = new ParseLocation(new ParseSourceFile("", ""), 0, 0, 0); + exports2.EMPTY_SOURCE_SPAN = new ParseSourceSpan(exports2.EMPTY_PARSE_LOCATION, exports2.EMPTY_PARSE_LOCATION); + var ParseErrorLevel; + (function(ParseErrorLevel2) { + ParseErrorLevel2[ParseErrorLevel2["WARNING"] = 0] = "WARNING"; + ParseErrorLevel2[ParseErrorLevel2["ERROR"] = 1] = "ERROR"; + })(ParseErrorLevel = exports2.ParseErrorLevel || (exports2.ParseErrorLevel = {})); + var ParseError = class { + constructor(span, msg, level = ParseErrorLevel.ERROR) { + this.span = span; + this.msg = msg; + this.level = level; + } + contextualMessage() { + const ctx = this.span.start.getContext(100, 3); + return ctx ? `${this.msg} ("${ctx.before}[${ParseErrorLevel[this.level]} ->]${ctx.after}")` : this.msg; + } + toString() { + const details = this.span.details ? `, ${this.span.details}` : ""; + return `${this.contextualMessage()}: ${this.span.start}${details}`; + } + }; + exports2.ParseError = ParseError; + function typeSourceSpan(kind, type) { + const moduleUrl = compile_metadata_1.identifierModuleUrl(type); + const sourceFileName = moduleUrl != null ? `in ${kind} ${compile_metadata_1.identifierName(type)} in ${moduleUrl}` : `in ${kind} ${compile_metadata_1.identifierName(type)}`; + const sourceFile = new ParseSourceFile("", sourceFileName); + return new ParseSourceSpan(new ParseLocation(sourceFile, -1, -1, -1), new ParseLocation(sourceFile, -1, -1, -1)); + } + exports2.typeSourceSpan = typeSourceSpan; + function r3JitTypeSourceSpan(kind, typeName, sourceUrl) { + const sourceFileName = `in ${kind} ${typeName} in ${sourceUrl}`; + const sourceFile = new ParseSourceFile("", sourceFileName); + return new ParseSourceSpan(new ParseLocation(sourceFile, -1, -1, -1), new ParseLocation(sourceFile, -1, -1, -1)); + } + exports2.r3JitTypeSourceSpan = r3JitTypeSourceSpan; + } +}); +var require_print_preprocess3 = __commonJS2({ + "src/language-html/print-preprocess.js"(exports2, module2) { + "use strict"; + var { + ParseSourceSpan + } = require_parse_util(); + var { + htmlTrim, + getLeadingAndTrailingHtmlWhitespace, + hasHtmlWhitespace, + canHaveInterpolation, + getNodeCssStyleDisplay, + isDanglingSpaceSensitiveNode, + isIndentationSensitiveNode, + isLeadingSpaceSensitiveNode, + isTrailingSpaceSensitiveNode, + isWhitespaceSensitiveNode, + isVueScriptTag + } = require_utils11(); + var PREPROCESS_PIPELINE = [removeIgnorableFirstLf, mergeIfConditionalStartEndCommentIntoElementOpeningTag, mergeCdataIntoText, extractInterpolation, extractWhitespaces, addCssDisplay, addIsSelfClosing, addHasHtmComponentClosingTag, addIsSpaceSensitive, mergeSimpleElementIntoText, markTsScript]; + function preprocess(ast, options) { + for (const fn of PREPROCESS_PIPELINE) { + fn(ast, options); + } + return ast; + } + function removeIgnorableFirstLf(ast) { + ast.walk((node) => { + if (node.type === "element" && node.tagDefinition.ignoreFirstLf && node.children.length > 0 && node.children[0].type === "text" && node.children[0].value[0] === "\n") { + const text = node.children[0]; + if (text.value.length === 1) { + node.removeChild(text); + } else { + text.value = text.value.slice(1); + } + } + }); + } + function mergeIfConditionalStartEndCommentIntoElementOpeningTag(ast) { + const isTarget = (node) => node.type === "element" && node.prev && node.prev.type === "ieConditionalStartComment" && node.prev.sourceSpan.end.offset === node.startSourceSpan.start.offset && node.firstChild && node.firstChild.type === "ieConditionalEndComment" && node.firstChild.sourceSpan.start.offset === node.startSourceSpan.end.offset; + ast.walk((node) => { + if (node.children) { + for (let i = 0; i < node.children.length; i++) { + const child = node.children[i]; + if (!isTarget(child)) { + continue; + } + const ieConditionalStartComment = child.prev; + const ieConditionalEndComment = child.firstChild; + node.removeChild(ieConditionalStartComment); + i--; + const startSourceSpan = new ParseSourceSpan(ieConditionalStartComment.sourceSpan.start, ieConditionalEndComment.sourceSpan.end); + const sourceSpan = new ParseSourceSpan(startSourceSpan.start, child.sourceSpan.end); + child.condition = ieConditionalStartComment.condition; + child.sourceSpan = sourceSpan; + child.startSourceSpan = startSourceSpan; + child.removeChild(ieConditionalEndComment); + } + } + }); + } + function mergeNodeIntoText(ast, shouldMerge, getValue) { + ast.walk((node) => { + if (node.children) { + for (let i = 0; i < node.children.length; i++) { + const child = node.children[i]; + if (child.type !== "text" && !shouldMerge(child)) { + continue; + } + if (child.type !== "text") { + child.type = "text"; + child.value = getValue(child); + } + const prevChild = child.prev; + if (!prevChild || prevChild.type !== "text") { + continue; + } + prevChild.value += child.value; + prevChild.sourceSpan = new ParseSourceSpan(prevChild.sourceSpan.start, child.sourceSpan.end); + node.removeChild(child); + i--; + } + } + }); + } + function mergeCdataIntoText(ast) { + return mergeNodeIntoText(ast, (node) => node.type === "cdata", (node) => ``); + } + function mergeSimpleElementIntoText(ast) { + const isSimpleElement = (node) => node.type === "element" && node.attrs.length === 0 && node.children.length === 1 && node.firstChild.type === "text" && !hasHtmlWhitespace(node.children[0].value) && !node.firstChild.hasLeadingSpaces && !node.firstChild.hasTrailingSpaces && node.isLeadingSpaceSensitive && !node.hasLeadingSpaces && node.isTrailingSpaceSensitive && !node.hasTrailingSpaces && node.prev && node.prev.type === "text" && node.next && node.next.type === "text"; + ast.walk((node) => { + if (node.children) { + for (let i = 0; i < node.children.length; i++) { + const child = node.children[i]; + if (!isSimpleElement(child)) { + continue; + } + const prevChild = child.prev; + const nextChild = child.next; + prevChild.value += `<${child.rawName}>` + child.firstChild.value + `` + nextChild.value; + prevChild.sourceSpan = new ParseSourceSpan(prevChild.sourceSpan.start, nextChild.sourceSpan.end); + prevChild.isTrailingSpaceSensitive = nextChild.isTrailingSpaceSensitive; + prevChild.hasTrailingSpaces = nextChild.hasTrailingSpaces; + node.removeChild(child); + i--; + node.removeChild(nextChild); + } + } + }); + } + function extractInterpolation(ast, options) { + if (options.parser === "html") { + return; + } + const interpolationRegex = /{{(.+?)}}/s; + ast.walk((node) => { + if (!canHaveInterpolation(node)) { + return; + } + for (const child of node.children) { + if (child.type !== "text") { + continue; + } + let startSourceSpan = child.sourceSpan.start; + let endSourceSpan = null; + const components = child.value.split(interpolationRegex); + for (let i = 0; i < components.length; i++, startSourceSpan = endSourceSpan) { + const value = components[i]; + if (i % 2 === 0) { + endSourceSpan = startSourceSpan.moveBy(value.length); + if (value.length > 0) { + node.insertChildBefore(child, { + type: "text", + value, + sourceSpan: new ParseSourceSpan(startSourceSpan, endSourceSpan) + }); + } + continue; + } + endSourceSpan = startSourceSpan.moveBy(value.length + 4); + node.insertChildBefore(child, { + type: "interpolation", + sourceSpan: new ParseSourceSpan(startSourceSpan, endSourceSpan), + children: value.length === 0 ? [] : [{ + type: "text", + value, + sourceSpan: new ParseSourceSpan(startSourceSpan.moveBy(2), endSourceSpan.moveBy(-2)) + }] + }); + } + node.removeChild(child); + } + }); + } + function extractWhitespaces(ast) { + ast.walk((node) => { + if (!node.children) { + return; + } + if (node.children.length === 0 || node.children.length === 1 && node.children[0].type === "text" && htmlTrim(node.children[0].value).length === 0) { + node.hasDanglingSpaces = node.children.length > 0; + node.children = []; + return; + } + const isWhitespaceSensitive = isWhitespaceSensitiveNode(node); + const isIndentationSensitive = isIndentationSensitiveNode(node); + if (!isWhitespaceSensitive) { + for (let i = 0; i < node.children.length; i++) { + const child = node.children[i]; + if (child.type !== "text") { + continue; + } + const { + leadingWhitespace, + text, + trailingWhitespace + } = getLeadingAndTrailingHtmlWhitespace(child.value); + const prevChild = child.prev; + const nextChild = child.next; + if (!text) { + node.removeChild(child); + i--; + if (leadingWhitespace || trailingWhitespace) { + if (prevChild) { + prevChild.hasTrailingSpaces = true; + } + if (nextChild) { + nextChild.hasLeadingSpaces = true; + } + } + } else { + child.value = text; + child.sourceSpan = new ParseSourceSpan(child.sourceSpan.start.moveBy(leadingWhitespace.length), child.sourceSpan.end.moveBy(-trailingWhitespace.length)); + if (leadingWhitespace) { + if (prevChild) { + prevChild.hasTrailingSpaces = true; + } + child.hasLeadingSpaces = true; + } + if (trailingWhitespace) { + child.hasTrailingSpaces = true; + if (nextChild) { + nextChild.hasLeadingSpaces = true; + } + } + } + } + } + node.isWhitespaceSensitive = isWhitespaceSensitive; + node.isIndentationSensitive = isIndentationSensitive; + }); + } + function addIsSelfClosing(ast) { + ast.walk((node) => { + node.isSelfClosing = !node.children || node.type === "element" && (node.tagDefinition.isVoid || node.startSourceSpan === node.endSourceSpan); + }); + } + function addHasHtmComponentClosingTag(ast, options) { + ast.walk((node) => { + if (node.type !== "element") { + return; + } + node.hasHtmComponentClosingTag = node.endSourceSpan && /^<\s*\/\s*\/\s*>$/.test(options.originalText.slice(node.endSourceSpan.start.offset, node.endSourceSpan.end.offset)); + }); + } + function addCssDisplay(ast, options) { + ast.walk((node) => { + node.cssDisplay = getNodeCssStyleDisplay(node, options); + }); + } + function addIsSpaceSensitive(ast, options) { + ast.walk((node) => { + const { + children + } = node; + if (!children) { + return; + } + if (children.length === 0) { + node.isDanglingSpaceSensitive = isDanglingSpaceSensitiveNode(node); + return; + } + for (const child of children) { + child.isLeadingSpaceSensitive = isLeadingSpaceSensitiveNode(child, options); + child.isTrailingSpaceSensitive = isTrailingSpaceSensitiveNode(child, options); + } + for (let index = 0; index < children.length; index++) { + const child = children[index]; + child.isLeadingSpaceSensitive = index === 0 ? child.isLeadingSpaceSensitive : child.prev.isTrailingSpaceSensitive && child.isLeadingSpaceSensitive; + child.isTrailingSpaceSensitive = index === children.length - 1 ? child.isTrailingSpaceSensitive : child.next.isLeadingSpaceSensitive && child.isTrailingSpaceSensitive; + } + }); + } + function markTsScript(ast, options) { + if (options.parser === "vue") { + const vueScriptTag = ast.children.find((child) => isVueScriptTag(child, options)); + if (!vueScriptTag) { + return; + } + const { + lang + } = vueScriptTag.attrMap; + if (lang === "ts" || lang === "typescript") { + options.__should_parse_vue_template_with_ts = true; + } + } + } + module2.exports = preprocess; + } +}); +var require_pragma5 = __commonJS2({ + "src/language-html/pragma.js"(exports2, module2) { + "use strict"; + function hasPragma(text) { + return /^\s*/.test(text); + } + function insertPragma(text) { + return "\n\n" + text.replace(/^\s*\n/, ""); + } + module2.exports = { + hasPragma, + insertPragma + }; + } +}); +var require_loc6 = __commonJS2({ + "src/language-html/loc.js"(exports2, module2) { + "use strict"; + function locStart(node) { + return node.sourceSpan.start.offset; + } + function locEnd(node) { + return node.sourceSpan.end.offset; + } + module2.exports = { + locStart, + locEnd + }; + } +}); +var require_tag = __commonJS2({ + "src/language-html/print/tag.js"(exports2, module2) { + "use strict"; + var assert = require("assert"); + var { + isNonEmptyArray + } = require_util(); + var { + builders: { + indent, + join, + line, + softline, + hardline + }, + utils: { + replaceTextEndOfLine + } + } = require("./doc.js"); + var { + locStart, + locEnd + } = require_loc6(); + var { + isTextLikeNode, + getLastDescendant, + isPreLikeNode, + hasPrettierIgnore, + shouldPreserveContent, + isVueSfcBlock + } = require_utils11(); + function printClosingTag(node, options) { + return [node.isSelfClosing ? "" : printClosingTagStart(node, options), printClosingTagEnd(node, options)]; + } + function printClosingTagStart(node, options) { + return node.lastChild && needsToBorrowParentClosingTagStartMarker(node.lastChild) ? "" : [printClosingTagPrefix(node, options), printClosingTagStartMarker(node, options)]; + } + function printClosingTagEnd(node, options) { + return (node.next ? needsToBorrowPrevClosingTagEndMarker(node.next) : needsToBorrowLastChildClosingTagEndMarker(node.parent)) ? "" : [printClosingTagEndMarker(node, options), printClosingTagSuffix(node, options)]; + } + function printClosingTagPrefix(node, options) { + return needsToBorrowLastChildClosingTagEndMarker(node) ? printClosingTagEndMarker(node.lastChild, options) : ""; + } + function printClosingTagSuffix(node, options) { + return needsToBorrowParentClosingTagStartMarker(node) ? printClosingTagStartMarker(node.parent, options) : needsToBorrowNextOpeningTagStartMarker(node) ? printOpeningTagStartMarker(node.next) : ""; + } + function printClosingTagStartMarker(node, options) { + assert(!node.isSelfClosing); + if (shouldNotPrintClosingTag(node, options)) { + return ""; + } + switch (node.type) { + case "ieConditionalComment": + return ""; + case "ieConditionalStartComment": + return "]>"; + case "interpolation": + return "}}"; + case "element": + if (node.isSelfClosing) { + return "/>"; + } + default: + return ">"; + } + } + function shouldNotPrintClosingTag(node, options) { + return !node.isSelfClosing && !node.endSourceSpan && (hasPrettierIgnore(node) || shouldPreserveContent(node.parent, options)); + } + function needsToBorrowPrevClosingTagEndMarker(node) { + return node.prev && node.prev.type !== "docType" && !isTextLikeNode(node.prev) && node.isLeadingSpaceSensitive && !node.hasLeadingSpaces; + } + function needsToBorrowLastChildClosingTagEndMarker(node) { + return node.lastChild && node.lastChild.isTrailingSpaceSensitive && !node.lastChild.hasTrailingSpaces && !isTextLikeNode(getLastDescendant(node.lastChild)) && !isPreLikeNode(node); + } + function needsToBorrowParentClosingTagStartMarker(node) { + return !node.next && !node.hasTrailingSpaces && node.isTrailingSpaceSensitive && isTextLikeNode(getLastDescendant(node)); + } + function needsToBorrowNextOpeningTagStartMarker(node) { + return node.next && !isTextLikeNode(node.next) && isTextLikeNode(node) && node.isTrailingSpaceSensitive && !node.hasTrailingSpaces; + } + function getPrettierIgnoreAttributeCommentData(value) { + const match = value.trim().match(/^prettier-ignore-attribute(?:\s+(.+))?$/s); + if (!match) { + return false; + } + if (!match[1]) { + return true; + } + return match[1].split(/\s+/); + } + function needsToBorrowParentOpeningTagEndMarker(node) { + return !node.prev && node.isLeadingSpaceSensitive && !node.hasLeadingSpaces; + } + function printAttributes(path, options, print) { + const node = path.getValue(); + if (!isNonEmptyArray(node.attrs)) { + return node.isSelfClosing ? " " : ""; + } + const ignoreAttributeData = node.prev && node.prev.type === "comment" && getPrettierIgnoreAttributeCommentData(node.prev.value); + const hasPrettierIgnoreAttribute = typeof ignoreAttributeData === "boolean" ? () => ignoreAttributeData : Array.isArray(ignoreAttributeData) ? (attribute) => ignoreAttributeData.includes(attribute.rawName) : () => false; + const printedAttributes = path.map((attributePath) => { + const attribute = attributePath.getValue(); + return hasPrettierIgnoreAttribute(attribute) ? replaceTextEndOfLine(options.originalText.slice(locStart(attribute), locEnd(attribute))) : print(); + }, "attrs"); + const forceNotToBreakAttrContent = node.type === "element" && node.fullName === "script" && node.attrs.length === 1 && node.attrs[0].fullName === "src" && node.children.length === 0; + const shouldPrintAttributePerLine = options.singleAttributePerLine && node.attrs.length > 1 && !isVueSfcBlock(node, options); + const attributeLine = shouldPrintAttributePerLine ? hardline : line; + const parts = [indent([forceNotToBreakAttrContent ? " " : line, join(attributeLine, printedAttributes)])]; + if (node.firstChild && needsToBorrowParentOpeningTagEndMarker(node.firstChild) || node.isSelfClosing && needsToBorrowLastChildClosingTagEndMarker(node.parent) || forceNotToBreakAttrContent) { + parts.push(node.isSelfClosing ? " " : ""); + } else { + parts.push(options.bracketSameLine ? node.isSelfClosing ? " " : "" : node.isSelfClosing ? line : softline); + } + return parts; + } + function printOpeningTagEnd(node) { + return node.firstChild && needsToBorrowParentOpeningTagEndMarker(node.firstChild) ? "" : printOpeningTagEndMarker(node); + } + function printOpeningTag(path, options, print) { + const node = path.getValue(); + return [printOpeningTagStart(node, options), printAttributes(path, options, print), node.isSelfClosing ? "" : printOpeningTagEnd(node)]; + } + function printOpeningTagStart(node, options) { + return node.prev && needsToBorrowNextOpeningTagStartMarker(node.prev) ? "" : [printOpeningTagPrefix(node, options), printOpeningTagStartMarker(node)]; + } + function printOpeningTagPrefix(node, options) { + return needsToBorrowParentOpeningTagEndMarker(node) ? printOpeningTagEndMarker(node.parent) : needsToBorrowPrevClosingTagEndMarker(node) ? printClosingTagEndMarker(node.prev, options) : ""; + } + function printOpeningTagStartMarker(node) { + switch (node.type) { + case "ieConditionalComment": + case "ieConditionalStartComment": + return `<${node.rawName}`; + } + default: + return `<${node.rawName}`; + } + } + function printOpeningTagEndMarker(node) { + assert(!node.isSelfClosing); + switch (node.type) { + case "ieConditionalComment": + return "]>"; + case "element": + if (node.condition) { + return ">"; + } + default: + return ">"; + } + } + module2.exports = { + printClosingTag, + printClosingTagStart, + printClosingTagStartMarker, + printClosingTagEndMarker, + printClosingTagSuffix, + printClosingTagEnd, + needsToBorrowLastChildClosingTagEndMarker, + needsToBorrowParentClosingTagStartMarker, + needsToBorrowPrevClosingTagEndMarker, + printOpeningTag, + printOpeningTagStart, + printOpeningTagPrefix, + printOpeningTagStartMarker, + printOpeningTagEndMarker, + needsToBorrowNextOpeningTagStartMarker, + needsToBorrowParentOpeningTagEndMarker + }; + } +}); +var require_parse_srcset = __commonJS2({ + "node_modules/parse-srcset/src/parse-srcset.js"(exports2, module2) { + (function(root, factory) { + if (typeof define === "function" && define.amd) { + define([], factory); + } else if (typeof module2 === "object" && module2.exports) { + module2.exports = factory(); + } else { + root.parseSrcset = factory(); + } + })(exports2, function() { + return function(input, options) { + var logger = options && options.logger || console; + function isSpace(c2) { + return c2 === " " || c2 === " " || c2 === "\n" || c2 === "\f" || c2 === "\r"; + } + function collectCharacters(regEx) { + var chars, match = regEx.exec(input.substring(pos)); + if (match) { + chars = match[0]; + pos += chars.length; + return chars; + } + } + var inputLength = input.length, regexLeadingSpaces = /^[ \t\n\r\u000c]+/, regexLeadingCommasOrSpaces = /^[, \t\n\r\u000c]+/, regexLeadingNotSpaces = /^[^ \t\n\r\u000c]+/, regexTrailingCommas = /[,]+$/, regexNonNegativeInteger = /^\d+$/, regexFloatingPoint = /^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/, url, descriptors, currentDescriptor, state, c, pos = 0, candidates = []; + while (true) { + collectCharacters(regexLeadingCommasOrSpaces); + if (pos >= inputLength) { + return candidates; + } + url = collectCharacters(regexLeadingNotSpaces); + descriptors = []; + if (url.slice(-1) === ",") { + url = url.replace(regexTrailingCommas, ""); + parseDescriptors(); + } else { + tokenize(); + } + } + function tokenize() { + collectCharacters(regexLeadingSpaces); + currentDescriptor = ""; + state = "in descriptor"; + while (true) { + c = input.charAt(pos); + if (state === "in descriptor") { + if (isSpace(c)) { + if (currentDescriptor) { + descriptors.push(currentDescriptor); + currentDescriptor = ""; + state = "after descriptor"; + } + } else if (c === ",") { + pos += 1; + if (currentDescriptor) { + descriptors.push(currentDescriptor); + } + parseDescriptors(); + return; + } else if (c === "(") { + currentDescriptor = currentDescriptor + c; + state = "in parens"; + } else if (c === "") { + if (currentDescriptor) { + descriptors.push(currentDescriptor); + } + parseDescriptors(); + return; + } else { + currentDescriptor = currentDescriptor + c; + } + } else if (state === "in parens") { + if (c === ")") { + currentDescriptor = currentDescriptor + c; + state = "in descriptor"; + } else if (c === "") { + descriptors.push(currentDescriptor); + parseDescriptors(); + return; + } else { + currentDescriptor = currentDescriptor + c; + } + } else if (state === "after descriptor") { + if (isSpace(c)) { + } else if (c === "") { + parseDescriptors(); + return; + } else { + state = "in descriptor"; + pos -= 1; + } + } + pos += 1; + } + } + function parseDescriptors() { + var pError = false, w, d, h, i, candidate = {}, desc, lastChar, value, intVal, floatVal; + for (i = 0; i < descriptors.length; i++) { + desc = descriptors[i]; + lastChar = desc[desc.length - 1]; + value = desc.substring(0, desc.length - 1); + intVal = parseInt(value, 10); + floatVal = parseFloat(value); + if (regexNonNegativeInteger.test(value) && lastChar === "w") { + if (w || d) { + pError = true; + } + if (intVal === 0) { + pError = true; + } else { + w = intVal; + } + } else if (regexFloatingPoint.test(value) && lastChar === "x") { + if (w || d || h) { + pError = true; + } + if (floatVal < 0) { + pError = true; + } else { + d = floatVal; + } + } else if (regexNonNegativeInteger.test(value) && lastChar === "h") { + if (h || d) { + pError = true; + } + if (intVal === 0) { + pError = true; + } else { + h = intVal; + } + } else { + pError = true; + } + } + if (!pError) { + candidate.url = url; + if (w) { + candidate.w = w; + } + if (d) { + candidate.d = d; + } + if (h) { + candidate.h = h; + } + candidates.push(candidate); + } else if (logger && logger.error) { + logger.error("Invalid srcset descriptor found in '" + input + "' at '" + desc + "'."); + } + } + }; + }); + } +}); +var require_syntax_attribute = __commonJS2({ + "src/language-html/syntax-attribute.js"(exports2, module2) { + "use strict"; + var parseSrcset = require_parse_srcset(); + var { + builders: { + ifBreak, + join, + line + } + } = require("./doc.js"); + function printImgSrcset(value) { + const srcset = parseSrcset(value, { + logger: { + error(message) { + throw new Error(message); + } + } + }); + const hasW = srcset.some(({ + w + }) => w); + const hasH = srcset.some(({ + h + }) => h); + const hasX = srcset.some(({ + d + }) => d); + if (hasW + hasH + hasX > 1) { + throw new Error("Mixed descriptor in srcset is not supported"); + } + const key = hasW ? "w" : hasH ? "h" : "d"; + const unit = hasW ? "w" : hasH ? "h" : "x"; + const getMax = (values) => Math.max(...values); + const urls = srcset.map((src) => src.url); + const maxUrlLength = getMax(urls.map((url) => url.length)); + const descriptors = srcset.map((src) => src[key]).map((descriptor) => descriptor ? descriptor.toString() : ""); + const descriptorLeftLengths = descriptors.map((descriptor) => { + const index = descriptor.indexOf("."); + return index === -1 ? descriptor.length : index; + }); + const maxDescriptorLeftLength = getMax(descriptorLeftLengths); + return join([",", line], urls.map((url, index) => { + const parts = [url]; + const descriptor = descriptors[index]; + if (descriptor) { + const urlPadding = maxUrlLength - url.length + 1; + const descriptorPadding = maxDescriptorLeftLength - descriptorLeftLengths[index]; + const alignment = " ".repeat(urlPadding + descriptorPadding); + parts.push(ifBreak(alignment, " "), descriptor + unit); + } + return parts; + })); + } + function printClassNames(value) { + return value.trim().split(/\s+/).join(" "); + } + module2.exports = { + printImgSrcset, + printClassNames + }; + } +}); +var require_syntax_vue = __commonJS2({ + "src/language-html/syntax-vue.js"(exports2, module2) { + "use strict"; + var { + builders: { + group + } + } = require("./doc.js"); + function printVueFor(value, textToDoc) { + const { + left, + operator, + right + } = parseVueFor(value); + return [group(textToDoc(`function _(${left}) {}`, { + parser: "babel", + __isVueForBindingLeft: true + })), " ", operator, " ", textToDoc(right, { + parser: "__js_expression" + }, { + stripTrailingHardline: true + })]; + } + function parseVueFor(value) { + const forAliasRE = /(.*?)\s+(in|of)\s+(.*)/s; + const forIteratorRE = /,([^,\]}]*)(?:,([^,\]}]*))?$/; + const stripParensRE = /^\(|\)$/g; + const inMatch = value.match(forAliasRE); + if (!inMatch) { + return; + } + const res = {}; + res.for = inMatch[3].trim(); + if (!res.for) { + return; + } + const alias = inMatch[1].trim().replace(stripParensRE, ""); + const iteratorMatch = alias.match(forIteratorRE); + if (iteratorMatch) { + res.alias = alias.replace(forIteratorRE, ""); + res.iterator1 = iteratorMatch[1].trim(); + if (iteratorMatch[2]) { + res.iterator2 = iteratorMatch[2].trim(); + } + } else { + res.alias = alias; + } + const left = [res.alias, res.iterator1, res.iterator2]; + if (left.some((part, index) => !part && (index === 0 || left.slice(index + 1).some(Boolean)))) { + return; + } + return { + left: left.filter(Boolean).join(","), + operator: inMatch[2], + right: res.for + }; + } + function printVueBindings(value, textToDoc) { + return textToDoc(`function _(${value}) {}`, { + parser: "babel", + __isVueBindings: true + }); + } + function isVueEventBindingExpression(eventBindingValue) { + const fnExpRE = /^(?:[\w$]+|\([^)]*\))\s*=>|^function\s*\(/; + const simplePathRE = /^[$A-Z_a-z][\w$]*(?:\.[$A-Z_a-z][\w$]*|\['[^']*']|\["[^"]*"]|\[\d+]|\[[$A-Z_a-z][\w$]*])*$/; + const value = eventBindingValue.trim(); + return fnExpRE.test(value) || simplePathRE.test(value); + } + module2.exports = { + isVueEventBindingExpression, + printVueFor, + printVueBindings + }; + } +}); +var require_get_node_content = __commonJS2({ + "src/language-html/get-node-content.js"(exports2, module2) { + "use strict"; + var { + needsToBorrowParentClosingTagStartMarker, + printClosingTagStartMarker, + needsToBorrowLastChildClosingTagEndMarker, + printClosingTagEndMarker, + needsToBorrowParentOpeningTagEndMarker, + printOpeningTagEndMarker + } = require_tag(); + function getNodeContent(node, options) { + let start = node.startSourceSpan.end.offset; + if (node.firstChild && needsToBorrowParentOpeningTagEndMarker(node.firstChild)) { + start -= printOpeningTagEndMarker(node).length; + } + let end = node.endSourceSpan.start.offset; + if (node.lastChild && needsToBorrowParentClosingTagStartMarker(node.lastChild)) { + end += printClosingTagStartMarker(node, options).length; + } else if (needsToBorrowLastChildClosingTagEndMarker(node)) { + end -= printClosingTagEndMarker(node.lastChild, options).length; + } + return options.originalText.slice(start, end); + } + module2.exports = getNodeContent; + } +}); +var require_embed4 = __commonJS2({ + "src/language-html/embed.js"(exports2, module2) { + "use strict"; + var { + builders: { + breakParent, + group, + hardline, + indent, + line, + fill, + softline + }, + utils: { + mapDoc, + replaceTextEndOfLine + } + } = require("./doc.js"); + var printFrontMatter = require_print(); + var { + printClosingTag, + printClosingTagSuffix, + needsToBorrowPrevClosingTagEndMarker, + printOpeningTagPrefix, + printOpeningTag + } = require_tag(); + var { + printImgSrcset, + printClassNames + } = require_syntax_attribute(); + var { + printVueFor, + printVueBindings, + isVueEventBindingExpression + } = require_syntax_vue(); + var { + isScriptLikeTag, + isVueNonHtmlBlock, + inferScriptParser, + htmlTrimPreserveIndentation, + dedentString, + unescapeQuoteEntities, + isVueSlotAttribute, + isVueSfcBindingsAttribute, + getTextValueParts + } = require_utils11(); + var getNodeContent = require_get_node_content(); + function printEmbeddedAttributeValue(node, htmlTextToDoc, options) { + const isKeyMatched = (patterns) => new RegExp(patterns.join("|")).test(node.fullName); + const getValue = () => unescapeQuoteEntities(node.value); + let shouldHug = false; + const __onHtmlBindingRoot = (root, options2) => { + const rootNode = root.type === "NGRoot" ? root.node.type === "NGMicrosyntax" && root.node.body.length === 1 && root.node.body[0].type === "NGMicrosyntaxExpression" ? root.node.body[0].expression : root.node : root.type === "JsExpressionRoot" ? root.node : root; + if (rootNode && (rootNode.type === "ObjectExpression" || rootNode.type === "ArrayExpression" || options2.parser === "__vue_expression" && (rootNode.type === "TemplateLiteral" || rootNode.type === "StringLiteral"))) { + shouldHug = true; + } + }; + const printHug = (doc2) => group(doc2); + const printExpand = (doc2, canHaveTrailingWhitespace = true) => group([indent([softline, doc2]), canHaveTrailingWhitespace ? softline : ""]); + const printMaybeHug = (doc2) => shouldHug ? printHug(doc2) : printExpand(doc2); + const attributeTextToDoc = (code, opts) => htmlTextToDoc(code, Object.assign({ + __onHtmlBindingRoot, + __embeddedInHtml: true + }, opts)); + if (node.fullName === "srcset" && (node.parent.fullName === "img" || node.parent.fullName === "source")) { + return printExpand(printImgSrcset(getValue())); + } + if (node.fullName === "class" && !options.parentParser) { + const value = getValue(); + if (!value.includes("{{")) { + return printClassNames(value); + } + } + if (node.fullName === "style" && !options.parentParser) { + const value = getValue(); + if (!value.includes("{{")) { + return printExpand(attributeTextToDoc(value, { + parser: "css", + __isHTMLStyleAttribute: true + })); + } + } + if (options.parser === "vue") { + if (node.fullName === "v-for") { + return printVueFor(getValue(), attributeTextToDoc); + } + if (isVueSlotAttribute(node) || isVueSfcBindingsAttribute(node, options)) { + return printVueBindings(getValue(), attributeTextToDoc); + } + const vueEventBindingPatterns = ["^@", "^v-on:"]; + const vueExpressionBindingPatterns = ["^:", "^v-bind:"]; + const jsExpressionBindingPatterns = ["^v-"]; + if (isKeyMatched(vueEventBindingPatterns)) { + const value = getValue(); + const parser = isVueEventBindingExpression(value) ? "__js_expression" : options.__should_parse_vue_template_with_ts ? "__vue_ts_event_binding" : "__vue_event_binding"; + return printMaybeHug(attributeTextToDoc(value, { + parser + })); + } + if (isKeyMatched(vueExpressionBindingPatterns)) { + return printMaybeHug(attributeTextToDoc(getValue(), { + parser: "__vue_expression" + })); + } + if (isKeyMatched(jsExpressionBindingPatterns)) { + return printMaybeHug(attributeTextToDoc(getValue(), { + parser: "__js_expression" + })); + } + } + if (options.parser === "angular") { + const ngTextToDoc = (code, opts) => attributeTextToDoc(code, Object.assign(Object.assign({}, opts), {}, { + trailingComma: "none" + })); + const ngDirectiveBindingPatterns = ["^\\*"]; + const ngStatementBindingPatterns = ["^\\(.+\\)$", "^on-"]; + const ngExpressionBindingPatterns = ["^\\[.+\\]$", "^bind(on)?-", "^ng-(if|show|hide|class|style)$"]; + const ngI18nPatterns = ["^i18n(-.+)?$"]; + if (isKeyMatched(ngStatementBindingPatterns)) { + return printMaybeHug(ngTextToDoc(getValue(), { + parser: "__ng_action" + })); + } + if (isKeyMatched(ngExpressionBindingPatterns)) { + return printMaybeHug(ngTextToDoc(getValue(), { + parser: "__ng_binding" + })); + } + if (isKeyMatched(ngI18nPatterns)) { + const value2 = getValue().trim(); + return printExpand(fill(getTextValueParts(node, value2)), !value2.includes("@@")); + } + if (isKeyMatched(ngDirectiveBindingPatterns)) { + return printMaybeHug(ngTextToDoc(getValue(), { + parser: "__ng_directive" + })); + } + const interpolationRegex = /{{(.+?)}}/s; + const value = getValue(); + if (interpolationRegex.test(value)) { + const parts = []; + for (const [index, part] of value.split(interpolationRegex).entries()) { + if (index % 2 === 0) { + parts.push(replaceTextEndOfLine(part)); + } else { + try { + parts.push(group(["{{", indent([line, ngTextToDoc(part, { + parser: "__ng_interpolation", + __isInHtmlInterpolation: true + })]), line, "}}"])); + } catch { + parts.push("{{", replaceTextEndOfLine(part), "}}"); + } + } + } + return group(parts); + } + } + return null; + } + function embed(path, print, textToDoc, options) { + const node = path.getValue(); + switch (node.type) { + case "element": { + if (isScriptLikeTag(node) || node.type === "interpolation") { + return; + } + if (!node.isSelfClosing && isVueNonHtmlBlock(node, options)) { + const parser = inferScriptParser(node, options); + if (!parser) { + return; + } + const content = getNodeContent(node, options); + let isEmpty = /^\s*$/.test(content); + let doc2 = ""; + if (!isEmpty) { + doc2 = textToDoc(htmlTrimPreserveIndentation(content), { + parser, + __embeddedInHtml: true + }, { + stripTrailingHardline: true + }); + isEmpty = doc2 === ""; + } + return [printOpeningTagPrefix(node, options), group(printOpeningTag(path, options, print)), isEmpty ? "" : hardline, doc2, isEmpty ? "" : hardline, printClosingTag(node, options), printClosingTagSuffix(node, options)]; + } + break; + } + case "text": { + if (isScriptLikeTag(node.parent)) { + const parser = inferScriptParser(node.parent, options); + if (parser) { + const value = parser === "markdown" ? dedentString(node.value.replace(/^[^\S\n]*\n/, "")) : node.value; + const textToDocOptions = { + parser, + __embeddedInHtml: true + }; + if (options.parser === "html" && parser === "babel") { + let sourceType = "script"; + const { + attrMap + } = node.parent; + if (attrMap && (attrMap.type === "module" || attrMap.type === "text/babel" && attrMap["data-type"] === "module")) { + sourceType = "module"; + } + textToDocOptions.__babelSourceType = sourceType; + } + return [breakParent, printOpeningTagPrefix(node, options), textToDoc(value, textToDocOptions, { + stripTrailingHardline: true + }), printClosingTagSuffix(node, options)]; + } + } else if (node.parent.type === "interpolation") { + const textToDocOptions = { + __isInHtmlInterpolation: true, + __embeddedInHtml: true + }; + if (options.parser === "angular") { + textToDocOptions.parser = "__ng_interpolation"; + textToDocOptions.trailingComma = "none"; + } else if (options.parser === "vue") { + textToDocOptions.parser = options.__should_parse_vue_template_with_ts ? "__vue_ts_expression" : "__vue_expression"; + } else { + textToDocOptions.parser = "__js_expression"; + } + return [indent([line, textToDoc(node.value, textToDocOptions, { + stripTrailingHardline: true + })]), node.parent.next && needsToBorrowPrevClosingTagEndMarker(node.parent.next) ? " " : line]; + } + break; + } + case "attribute": { + if (!node.value) { + break; + } + if (/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/.test(options.originalText.slice(node.valueSpan.start.offset, node.valueSpan.end.offset))) { + return [node.rawName, "=", node.value]; + } + if (options.parser === "lwc") { + const interpolationRegex = /^{.*}$/s; + if (interpolationRegex.test(options.originalText.slice(node.valueSpan.start.offset, node.valueSpan.end.offset))) { + return [node.rawName, "=", node.value]; + } + } + const embeddedAttributeValueDoc = printEmbeddedAttributeValue(node, (code, opts) => textToDoc(code, Object.assign({ + __isInHtmlAttribute: true, + __embeddedInHtml: true + }, opts), { + stripTrailingHardline: true + }), options); + if (embeddedAttributeValueDoc) { + return [node.rawName, '="', group(mapDoc(embeddedAttributeValueDoc, (doc2) => typeof doc2 === "string" ? doc2.replace(/"/g, """) : doc2)), '"']; + } + break; + } + case "front-matter": + return printFrontMatter(node, textToDoc); + } + } + module2.exports = embed; + } +}); +var require_children = __commonJS2({ + "src/language-html/print/children.js"(exports2, module2) { + "use strict"; + var { + builders: { + breakParent, + group, + ifBreak, + line, + softline, + hardline + }, + utils: { + replaceTextEndOfLine + } + } = require("./doc.js"); + var { + locStart, + locEnd + } = require_loc6(); + var { + forceBreakChildren, + forceNextEmptyLine, + isTextLikeNode, + hasPrettierIgnore, + preferHardlineAsLeadingSpaces + } = require_utils11(); + var { + printOpeningTagPrefix, + needsToBorrowNextOpeningTagStartMarker, + printOpeningTagStartMarker, + needsToBorrowPrevClosingTagEndMarker, + printClosingTagEndMarker, + printClosingTagSuffix, + needsToBorrowParentClosingTagStartMarker + } = require_tag(); + function printChild(childPath, options, print) { + const child = childPath.getValue(); + if (hasPrettierIgnore(child)) { + return [printOpeningTagPrefix(child, options), ...replaceTextEndOfLine(options.originalText.slice(locStart(child) + (child.prev && needsToBorrowNextOpeningTagStartMarker(child.prev) ? printOpeningTagStartMarker(child).length : 0), locEnd(child) - (child.next && needsToBorrowPrevClosingTagEndMarker(child.next) ? printClosingTagEndMarker(child, options).length : 0))), printClosingTagSuffix(child, options)]; + } + return print(); + } + function printBetweenLine(prevNode, nextNode) { + return isTextLikeNode(prevNode) && isTextLikeNode(nextNode) ? prevNode.isTrailingSpaceSensitive ? prevNode.hasTrailingSpaces ? preferHardlineAsLeadingSpaces(nextNode) ? hardline : line : "" : preferHardlineAsLeadingSpaces(nextNode) ? hardline : softline : needsToBorrowNextOpeningTagStartMarker(prevNode) && (hasPrettierIgnore(nextNode) || nextNode.firstChild || nextNode.isSelfClosing || nextNode.type === "element" && nextNode.attrs.length > 0) || prevNode.type === "element" && prevNode.isSelfClosing && needsToBorrowPrevClosingTagEndMarker(nextNode) ? "" : !nextNode.isLeadingSpaceSensitive || preferHardlineAsLeadingSpaces(nextNode) || needsToBorrowPrevClosingTagEndMarker(nextNode) && prevNode.lastChild && needsToBorrowParentClosingTagStartMarker(prevNode.lastChild) && prevNode.lastChild.lastChild && needsToBorrowParentClosingTagStartMarker(prevNode.lastChild.lastChild) ? hardline : nextNode.hasLeadingSpaces ? line : softline; + } + function printChildren(path, options, print) { + const node = path.getValue(); + if (forceBreakChildren(node)) { + return [breakParent, ...path.map((childPath) => { + const childNode = childPath.getValue(); + const prevBetweenLine = !childNode.prev ? "" : printBetweenLine(childNode.prev, childNode); + return [!prevBetweenLine ? "" : [prevBetweenLine, forceNextEmptyLine(childNode.prev) ? hardline : ""], printChild(childPath, options, print)]; + }, "children")]; + } + const groupIds = node.children.map(() => Symbol("")); + return path.map((childPath, childIndex) => { + const childNode = childPath.getValue(); + if (isTextLikeNode(childNode)) { + if (childNode.prev && isTextLikeNode(childNode.prev)) { + const prevBetweenLine2 = printBetweenLine(childNode.prev, childNode); + if (prevBetweenLine2) { + if (forceNextEmptyLine(childNode.prev)) { + return [hardline, hardline, printChild(childPath, options, print)]; + } + return [prevBetweenLine2, printChild(childPath, options, print)]; + } + } + return printChild(childPath, options, print); + } + const prevParts = []; + const leadingParts = []; + const trailingParts = []; + const nextParts = []; + const prevBetweenLine = childNode.prev ? printBetweenLine(childNode.prev, childNode) : ""; + const nextBetweenLine = childNode.next ? printBetweenLine(childNode, childNode.next) : ""; + if (prevBetweenLine) { + if (forceNextEmptyLine(childNode.prev)) { + prevParts.push(hardline, hardline); + } else if (prevBetweenLine === hardline) { + prevParts.push(hardline); + } else { + if (isTextLikeNode(childNode.prev)) { + leadingParts.push(prevBetweenLine); + } else { + leadingParts.push(ifBreak("", softline, { + groupId: groupIds[childIndex - 1] + })); + } + } + } + if (nextBetweenLine) { + if (forceNextEmptyLine(childNode)) { + if (isTextLikeNode(childNode.next)) { + nextParts.push(hardline, hardline); + } + } else if (nextBetweenLine === hardline) { + if (isTextLikeNode(childNode.next)) { + nextParts.push(hardline); + } + } else { + trailingParts.push(nextBetweenLine); + } + } + return [...prevParts, group([...leadingParts, group([printChild(childPath, options, print), ...trailingParts], { + id: groupIds[childIndex] + })]), ...nextParts]; + }, "children"); + } + module2.exports = { + printChildren + }; + } +}); +var require_element = __commonJS2({ + "src/language-html/print/element.js"(exports2, module2) { + "use strict"; + var { + builders: { + breakParent, + dedentToRoot, + group, + ifBreak, + indentIfBreak, + indent, + line, + softline + }, + utils: { + replaceTextEndOfLine + } + } = require("./doc.js"); + var getNodeContent = require_get_node_content(); + var { + shouldPreserveContent, + isScriptLikeTag, + isVueCustomBlock, + countParents, + forceBreakContent + } = require_utils11(); + var { + printOpeningTagPrefix, + printOpeningTag, + printClosingTagSuffix, + printClosingTag, + needsToBorrowPrevClosingTagEndMarker, + needsToBorrowLastChildClosingTagEndMarker + } = require_tag(); + var { + printChildren + } = require_children(); + function printElement(path, options, print) { + const node = path.getValue(); + if (shouldPreserveContent(node, options)) { + return [printOpeningTagPrefix(node, options), group(printOpeningTag(path, options, print)), ...replaceTextEndOfLine(getNodeContent(node, options)), ...printClosingTag(node, options), printClosingTagSuffix(node, options)]; + } + const shouldHugContent = node.children.length === 1 && node.firstChild.type === "interpolation" && node.firstChild.isLeadingSpaceSensitive && !node.firstChild.hasLeadingSpaces && node.lastChild.isTrailingSpaceSensitive && !node.lastChild.hasTrailingSpaces; + const attrGroupId = Symbol("element-attr-group-id"); + const printTag = (doc2) => group([group(printOpeningTag(path, options, print), { + id: attrGroupId + }), doc2, printClosingTag(node, options)]); + const printChildrenDoc = (childrenDoc) => { + if (shouldHugContent) { + return indentIfBreak(childrenDoc, { + groupId: attrGroupId + }); + } + if ((isScriptLikeTag(node) || isVueCustomBlock(node, options)) && node.parent.type === "root" && options.parser === "vue" && !options.vueIndentScriptAndStyle) { + return childrenDoc; + } + return indent(childrenDoc); + }; + const printLineBeforeChildren = () => { + if (shouldHugContent) { + return ifBreak(softline, "", { + groupId: attrGroupId + }); + } + if (node.firstChild.hasLeadingSpaces && node.firstChild.isLeadingSpaceSensitive) { + return line; + } + if (node.firstChild.type === "text" && node.isWhitespaceSensitive && node.isIndentationSensitive) { + return dedentToRoot(softline); + } + return softline; + }; + const printLineAfterChildren = () => { + const needsToBorrow = node.next ? needsToBorrowPrevClosingTagEndMarker(node.next) : needsToBorrowLastChildClosingTagEndMarker(node.parent); + if (needsToBorrow) { + if (node.lastChild.hasTrailingSpaces && node.lastChild.isTrailingSpaceSensitive) { + return " "; + } + return ""; + } + if (shouldHugContent) { + return ifBreak(softline, "", { + groupId: attrGroupId + }); + } + if (node.lastChild.hasTrailingSpaces && node.lastChild.isTrailingSpaceSensitive) { + return line; + } + if ((node.lastChild.type === "comment" || node.lastChild.type === "text" && node.isWhitespaceSensitive && node.isIndentationSensitive) && new RegExp(`\\n[\\t ]{${options.tabWidth * countParents(path, (node2) => node2.parent && node2.parent.type !== "root")}}$`).test(node.lastChild.value)) { + return ""; + } + return softline; + }; + if (node.children.length === 0) { + return printTag(node.hasDanglingSpaces && node.isDanglingSpaceSensitive ? line : ""); + } + return printTag([forceBreakContent(node) ? breakParent : "", printChildrenDoc([printLineBeforeChildren(), printChildren(path, options, print)]), printLineAfterChildren()]); + } + module2.exports = { + printElement + }; + } +}); +var require_printer_html = __commonJS2({ + "src/language-html/printer-html.js"(exports2, module2) { + "use strict"; + var { + builders: { + fill, + group, + hardline, + literalline + }, + utils: { + cleanDoc, + getDocParts, + isConcat, + replaceTextEndOfLine + } + } = require("./doc.js"); + var clean = require_clean5(); + var { + countChars, + unescapeQuoteEntities, + getTextValueParts + } = require_utils11(); + var preprocess = require_print_preprocess3(); + var { + insertPragma + } = require_pragma5(); + var { + locStart, + locEnd + } = require_loc6(); + var embed = require_embed4(); + var { + printClosingTagSuffix, + printClosingTagEnd, + printOpeningTagPrefix, + printOpeningTagStart + } = require_tag(); + var { + printElement + } = require_element(); + var { + printChildren + } = require_children(); + function genericPrint(path, options, print) { + const node = path.getValue(); + switch (node.type) { + case "front-matter": + return replaceTextEndOfLine(node.raw); + case "root": + if (options.__onHtmlRoot) { + options.__onHtmlRoot(node); + } + return [group(printChildren(path, options, print)), hardline]; + case "element": + case "ieConditionalComment": { + return printElement(path, options, print); + } + case "ieConditionalStartComment": + case "ieConditionalEndComment": + return [printOpeningTagStart(node), printClosingTagEnd(node)]; + case "interpolation": + return [printOpeningTagStart(node, options), ...path.map(print, "children"), printClosingTagEnd(node, options)]; + case "text": { + if (node.parent.type === "interpolation") { + const trailingNewlineRegex = /\n[^\S\n]*$/; + const hasTrailingNewline = trailingNewlineRegex.test(node.value); + const value = hasTrailingNewline ? node.value.replace(trailingNewlineRegex, "") : node.value; + return [...replaceTextEndOfLine(value), hasTrailingNewline ? hardline : ""]; + } + const printed = cleanDoc([printOpeningTagPrefix(node, options), ...getTextValueParts(node), printClosingTagSuffix(node, options)]); + if (isConcat(printed) || printed.type === "fill") { + return fill(getDocParts(printed)); + } + return printed; + } + case "docType": + return [group([printOpeningTagStart(node, options), " ", node.value.replace(/^html\b/i, "html").replace(/\s+/g, " ")]), printClosingTagEnd(node, options)]; + case "comment": { + return [printOpeningTagPrefix(node, options), ...replaceTextEndOfLine(options.originalText.slice(locStart(node), locEnd(node)), literalline), printClosingTagSuffix(node, options)]; + } + case "attribute": { + if (node.value === null) { + return node.rawName; + } + const value = unescapeQuoteEntities(node.value); + const singleQuoteCount = countChars(value, "'"); + const doubleQuoteCount = countChars(value, '"'); + const quote = singleQuoteCount < doubleQuoteCount ? "'" : '"'; + return [node.rawName, "=", quote, ...replaceTextEndOfLine(quote === '"' ? value.replace(/"/g, """) : value.replace(/'/g, "'")), quote]; + } + default: + throw new Error(`Unexpected node type ${node.type}`); + } + } + module2.exports = { + preprocess, + print: genericPrint, + insertPragma, + massageAstNode: clean, + embed + }; + } +}); +var require_options6 = __commonJS2({ + "src/language-html/options.js"(exports2, module2) { + "use strict"; + var commonOptions = require_common_options(); + var CATEGORY_HTML = "HTML"; + module2.exports = { + bracketSameLine: commonOptions.bracketSameLine, + htmlWhitespaceSensitivity: { + since: "1.15.0", + category: CATEGORY_HTML, + type: "choice", + default: "css", + description: "How to handle whitespaces in HTML.", + choices: [{ + value: "css", + description: "Respect the default value of CSS display property." + }, { + value: "strict", + description: "Whitespaces are considered sensitive." + }, { + value: "ignore", + description: "Whitespaces are considered insensitive." + }] + }, + singleAttributePerLine: commonOptions.singleAttributePerLine, + vueIndentScriptAndStyle: { + since: "1.19.0", + category: CATEGORY_HTML, + type: "boolean", + default: false, + description: "Indent script and style tags in Vue files." + } + }; + } +}); +var require_parsers6 = __commonJS2({ + "src/language-html/parsers.js"(exports2, module2) { + "use strict"; + module2.exports = { + get html() { + return require("./parser-html.js").parsers.html; + }, + get vue() { + return require("./parser-html.js").parsers.vue; + }, + get angular() { + return require("./parser-html.js").parsers.angular; + }, + get lwc() { + return require("./parser-html.js").parsers.lwc; + } + }; + } +}); +var require_HTML = __commonJS2({ + "node_modules/linguist-languages/data/HTML.json"(exports2, module2) { + module2.exports = { + name: "HTML", + type: "markup", + tmScope: "text.html.basic", + aceMode: "html", + codemirrorMode: "htmlmixed", + codemirrorMimeType: "text/html", + color: "#e34c26", + aliases: ["xhtml"], + extensions: [".html", ".hta", ".htm", ".html.hl", ".inc", ".xht", ".xhtml"], + languageId: 146 + }; + } +}); +var require_Vue = __commonJS2({ + "node_modules/linguist-languages/data/Vue.json"(exports2, module2) { + module2.exports = { + name: "Vue", + type: "markup", + color: "#41b883", + extensions: [".vue"], + tmScope: "text.html.vue", + aceMode: "html", + languageId: 391 + }; + } +}); +var require_language_html = __commonJS2({ + "src/language-html/index.js"(exports2, module2) { + "use strict"; + var createLanguage = require_create_language(); + var printer = require_printer_html(); + var options = require_options6(); + var parsers = require_parsers6(); + var languages = [createLanguage(require_HTML(), () => ({ + name: "Angular", + since: "1.15.0", + parsers: ["angular"], + vscodeLanguageIds: ["html"], + extensions: [".component.html"], + filenames: [] + })), createLanguage(require_HTML(), (data) => ({ + since: "1.15.0", + parsers: ["html"], + vscodeLanguageIds: ["html"], + extensions: [...data.extensions, ".mjml"] + })), createLanguage(require_HTML(), () => ({ + name: "Lightning Web Components", + since: "1.17.0", + parsers: ["lwc"], + vscodeLanguageIds: ["html"], + extensions: [], + filenames: [] + })), createLanguage(require_Vue(), () => ({ + since: "1.10.0", + parsers: ["vue"], + vscodeLanguageIds: ["vue"] + }))]; + var printers = { + html: printer + }; + module2.exports = { + languages, + printers, + options, + parsers + }; + } +}); +var require_pragma6 = __commonJS2({ + "src/language-yaml/pragma.js"(exports2, module2) { + "use strict"; + function isPragma(text) { + return /^\s*@(?:prettier|format)\s*$/.test(text); + } + function hasPragma(text) { + return /^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/.test(text); + } + function insertPragma(text) { + return `# @format + +${text}`; + } + module2.exports = { + isPragma, + hasPragma, + insertPragma + }; + } +}); +var require_loc7 = __commonJS2({ + "src/language-yaml/loc.js"(exports2, module2) { + "use strict"; + function locStart(node) { + return node.position.start.offset; + } + function locEnd(node) { + return node.position.end.offset; + } + module2.exports = { + locStart, + locEnd + }; + } +}); +var require_embed5 = __commonJS2({ + "src/language-yaml/embed.js"(exports2, module2) { + "use strict"; + function embed(path, print, textToDoc, options) { + const node = path.getValue(); + if (node.type === "root" && options.filepath && /(?:[/\\]|^)\.(?:prettier|stylelint|lintstaged)rc$/.test(options.filepath)) { + return textToDoc(options.originalText, Object.assign(Object.assign({}, options), {}, { + parser: "json" + })); + } + } + module2.exports = embed; + } +}); +var require_utils12 = __commonJS2({ + "src/language-yaml/utils.js"(exports2, module2) { + "use strict"; + var { + getLast, + isNonEmptyArray + } = require_util(); + function getAncestorCount(path, filter) { + let counter = 0; + const pathStackLength = path.stack.length - 1; + for (let i = 0; i < pathStackLength; i++) { + const value = path.stack[i]; + if (isNode(value) && filter(value)) { + counter++; + } + } + return counter; + } + function isNode(value, types) { + return value && typeof value.type === "string" && (!types || types.includes(value.type)); + } + function mapNode(node, callback, parent) { + return callback("children" in node ? Object.assign(Object.assign({}, node), {}, { + children: node.children.map((childNode) => mapNode(childNode, callback, node)) + }) : node, parent); + } + function defineShortcut(x, key, getter) { + Object.defineProperty(x, key, { + get: getter, + enumerable: false + }); + } + function isNextLineEmpty(node, text) { + let newlineCount = 0; + const textLength = text.length; + for (let i = node.position.end.offset - 1; i < textLength; i++) { + const char = text[i]; + if (char === "\n") { + newlineCount++; + } + if (newlineCount === 1 && /\S/.test(char)) { + return false; + } + if (newlineCount === 2) { + return true; + } + } + return false; + } + function isLastDescendantNode(path) { + const node = path.getValue(); + switch (node.type) { + case "tag": + case "anchor": + case "comment": + return false; + } + const pathStackLength = path.stack.length; + for (let i = 1; i < pathStackLength; i++) { + const item = path.stack[i]; + const parentItem = path.stack[i - 1]; + if (Array.isArray(parentItem) && typeof item === "number" && item !== parentItem.length - 1) { + return false; + } + } + return true; + } + function getLastDescendantNode(node) { + return isNonEmptyArray(node.children) ? getLastDescendantNode(getLast(node.children)) : node; + } + function isPrettierIgnore(comment) { + return comment.value.trim() === "prettier-ignore"; + } + function hasPrettierIgnore(path) { + const node = path.getValue(); + if (node.type === "documentBody") { + const document2 = path.getParentNode(); + return hasEndComments(document2.head) && isPrettierIgnore(getLast(document2.head.endComments)); + } + return hasLeadingComments(node) && isPrettierIgnore(getLast(node.leadingComments)); + } + function isEmptyNode(node) { + return !isNonEmptyArray(node.children) && !hasComments(node); + } + function hasComments(node) { + return hasLeadingComments(node) || hasMiddleComments(node) || hasIndicatorComment(node) || hasTrailingComment(node) || hasEndComments(node); + } + function hasLeadingComments(node) { + return isNonEmptyArray(node === null || node === void 0 ? void 0 : node.leadingComments); + } + function hasMiddleComments(node) { + return isNonEmptyArray(node === null || node === void 0 ? void 0 : node.middleComments); + } + function hasIndicatorComment(node) { + return node === null || node === void 0 ? void 0 : node.indicatorComment; + } + function hasTrailingComment(node) { + return node === null || node === void 0 ? void 0 : node.trailingComment; + } + function hasEndComments(node) { + return isNonEmptyArray(node === null || node === void 0 ? void 0 : node.endComments); + } + function splitWithSingleSpace(text) { + const parts = []; + let lastPart; + for (const part of text.split(/( +)/)) { + if (part !== " ") { + if (lastPart === " ") { + parts.push(part); + } else { + parts.push((parts.pop() || "") + part); + } + } else if (lastPart === void 0) { + parts.unshift(""); + } + lastPart = part; + } + if (lastPart === " ") { + parts.push((parts.pop() || "") + " "); + } + if (parts[0] === "") { + parts.shift(); + parts.unshift(" " + (parts.shift() || "")); + } + return parts; + } + function getFlowScalarLineContents(nodeType, content, options) { + const rawLineContents = content.split("\n").map((lineContent, index, lineContents) => index === 0 && index === lineContents.length - 1 ? lineContent : index !== 0 && index !== lineContents.length - 1 ? lineContent.trim() : index === 0 ? lineContent.trimEnd() : lineContent.trimStart()); + if (options.proseWrap === "preserve") { + return rawLineContents.map((lineContent) => lineContent.length === 0 ? [] : [lineContent]); + } + return rawLineContents.map((lineContent) => lineContent.length === 0 ? [] : splitWithSingleSpace(lineContent)).reduce((reduced, lineContentWords, index) => index !== 0 && rawLineContents[index - 1].length > 0 && lineContentWords.length > 0 && !(nodeType === "quoteDouble" && getLast(getLast(reduced)).endsWith("\\")) ? [...reduced.slice(0, -1), [...getLast(reduced), ...lineContentWords]] : [...reduced, lineContentWords], []).map((lineContentWords) => options.proseWrap === "never" ? [lineContentWords.join(" ")] : lineContentWords); + } + function getBlockValueLineContents(node, { + parentIndent, + isLastDescendant, + options + }) { + const content = node.position.start.line === node.position.end.line ? "" : options.originalText.slice(node.position.start.offset, node.position.end.offset).match(/^[^\n]*\n(.*)$/s)[1]; + let leadingSpaceCount; + if (node.indent === null) { + const matches = content.match(/^(? *)[^\n\r ]/m); + leadingSpaceCount = matches ? matches.groups.leadingSpace.length : Number.POSITIVE_INFINITY; + } else { + leadingSpaceCount = node.indent - 1 + parentIndent; + } + const rawLineContents = content.split("\n").map((lineContent) => lineContent.slice(leadingSpaceCount)); + if (options.proseWrap === "preserve" || node.type === "blockLiteral") { + return removeUnnecessaryTrailingNewlines(rawLineContents.map((lineContent) => lineContent.length === 0 ? [] : [lineContent])); + } + return removeUnnecessaryTrailingNewlines(rawLineContents.map((lineContent) => lineContent.length === 0 ? [] : splitWithSingleSpace(lineContent)).reduce((reduced, lineContentWords, index) => index !== 0 && rawLineContents[index - 1].length > 0 && lineContentWords.length > 0 && !/^\s/.test(lineContentWords[0]) && !/^\s|\s$/.test(getLast(reduced)) ? [...reduced.slice(0, -1), [...getLast(reduced), ...lineContentWords]] : [...reduced, lineContentWords], []).map((lineContentWords) => lineContentWords.reduce((reduced, word) => reduced.length > 0 && /\s$/.test(getLast(reduced)) ? [...reduced.slice(0, -1), getLast(reduced) + " " + word] : [...reduced, word], [])).map((lineContentWords) => options.proseWrap === "never" ? [lineContentWords.join(" ")] : lineContentWords)); + function removeUnnecessaryTrailingNewlines(lineContents) { + if (node.chomping === "keep") { + return getLast(lineContents).length === 0 ? lineContents.slice(0, -1) : lineContents; + } + let trailingNewlineCount = 0; + for (let i = lineContents.length - 1; i >= 0; i--) { + if (lineContents[i].length === 0) { + trailingNewlineCount++; + } else { + break; + } + } + return trailingNewlineCount === 0 ? lineContents : trailingNewlineCount >= 2 && !isLastDescendant ? lineContents.slice(0, -(trailingNewlineCount - 1)) : lineContents.slice(0, -trailingNewlineCount); + } + } + function isInlineNode(node) { + if (!node) { + return true; + } + switch (node.type) { + case "plain": + case "quoteDouble": + case "quoteSingle": + case "alias": + case "flowMapping": + case "flowSequence": + return true; + default: + return false; + } + } + module2.exports = { + getLast, + getAncestorCount, + isNode, + isEmptyNode, + isInlineNode, + mapNode, + defineShortcut, + isNextLineEmpty, + isLastDescendantNode, + getBlockValueLineContents, + getFlowScalarLineContents, + getLastDescendantNode, + hasPrettierIgnore, + hasLeadingComments, + hasMiddleComments, + hasIndicatorComment, + hasTrailingComment, + hasEndComments + }; + } +}); +var require_print_preprocess4 = __commonJS2({ + "src/language-yaml/print-preprocess.js"(exports2, module2) { + "use strict"; + var { + defineShortcut, + mapNode + } = require_utils12(); + function preprocess(ast) { + return mapNode(ast, defineShortcuts); + } + function defineShortcuts(node) { + switch (node.type) { + case "document": + defineShortcut(node, "head", () => node.children[0]); + defineShortcut(node, "body", () => node.children[1]); + break; + case "documentBody": + case "sequenceItem": + case "flowSequenceItem": + case "mappingKey": + case "mappingValue": + defineShortcut(node, "content", () => node.children[0]); + break; + case "mappingItem": + case "flowMappingItem": + defineShortcut(node, "key", () => node.children[0]); + defineShortcut(node, "value", () => node.children[1]); + break; + } + return node; + } + module2.exports = preprocess; + } +}); +var require_misc2 = __commonJS2({ + "src/language-yaml/print/misc.js"(exports2, module2) { + "use strict"; + var { + builders: { + softline, + align + } + } = require("./doc.js"); + var { + hasEndComments, + isNextLineEmpty, + isNode + } = require_utils12(); + var printedEmptyLineCache = /* @__PURE__ */ new WeakMap(); + function printNextEmptyLine(path, originalText) { + const node = path.getValue(); + const root = path.stack[0]; + let isNextEmptyLinePrintedSet; + if (printedEmptyLineCache.has(root)) { + isNextEmptyLinePrintedSet = printedEmptyLineCache.get(root); + } else { + isNextEmptyLinePrintedSet = /* @__PURE__ */ new Set(); + printedEmptyLineCache.set(root, isNextEmptyLinePrintedSet); + } + if (!isNextEmptyLinePrintedSet.has(node.position.end.line)) { + isNextEmptyLinePrintedSet.add(node.position.end.line); + if (isNextLineEmpty(node, originalText) && !shouldPrintEndComments(path.getParentNode())) { + return softline; + } + } + return ""; + } + function shouldPrintEndComments(node) { + return hasEndComments(node) && !isNode(node, ["documentHead", "documentBody", "flowMapping", "flowSequence"]); + } + function alignWithSpaces(width, doc2) { + return align(" ".repeat(width), doc2); + } + module2.exports = { + alignWithSpaces, + shouldPrintEndComments, + printNextEmptyLine + }; + } +}); +var require_flow_mapping_sequence = __commonJS2({ + "src/language-yaml/print/flow-mapping-sequence.js"(exports2, module2) { + "use strict"; + var { + builders: { + ifBreak, + line, + softline, + hardline, + join + } + } = require("./doc.js"); + var { + isEmptyNode, + getLast, + hasEndComments + } = require_utils12(); + var { + printNextEmptyLine, + alignWithSpaces + } = require_misc2(); + function printFlowMapping(path, print, options) { + const node = path.getValue(); + const isMapping = node.type === "flowMapping"; + const openMarker = isMapping ? "{" : "["; + const closeMarker = isMapping ? "}" : "]"; + let bracketSpacing = softline; + if (isMapping && node.children.length > 0 && options.bracketSpacing) { + bracketSpacing = line; + } + const lastItem = getLast(node.children); + const isLastItemEmptyMappingItem = lastItem && lastItem.type === "flowMappingItem" && isEmptyNode(lastItem.key) && isEmptyNode(lastItem.value); + return [openMarker, alignWithSpaces(options.tabWidth, [bracketSpacing, printChildren(path, print, options), options.trailingComma === "none" ? "" : ifBreak(","), hasEndComments(node) ? [hardline, join(hardline, path.map(print, "endComments"))] : ""]), isLastItemEmptyMappingItem ? "" : bracketSpacing, closeMarker]; + } + function printChildren(path, print, options) { + const node = path.getValue(); + const parts = path.map((childPath, index) => [print(), index === node.children.length - 1 ? "" : [",", line, node.children[index].position.start.line !== node.children[index + 1].position.start.line ? printNextEmptyLine(childPath, options.originalText) : ""]], "children"); + return parts; + } + module2.exports = { + printFlowMapping, + printFlowSequence: printFlowMapping + }; + } +}); +var require_mapping_item = __commonJS2({ + "src/language-yaml/print/mapping-item.js"(exports2, module2) { + "use strict"; + var { + builders: { + conditionalGroup, + group, + hardline, + ifBreak, + join, + line + } + } = require("./doc.js"); + var { + hasLeadingComments, + hasMiddleComments, + hasTrailingComment, + hasEndComments, + isNode, + isEmptyNode, + isInlineNode + } = require_utils12(); + var { + alignWithSpaces + } = require_misc2(); + function printMappingItem(node, parentNode, path, print, options) { + const { + key, + value + } = node; + const isEmptyMappingKey = isEmptyNode(key); + const isEmptyMappingValue = isEmptyNode(value); + if (isEmptyMappingKey && isEmptyMappingValue) { + return ": "; + } + const printedKey = print("key"); + const spaceBeforeColon = needsSpaceInFrontOfMappingValue(node) ? " " : ""; + if (isEmptyMappingValue) { + if (node.type === "flowMappingItem" && parentNode.type === "flowMapping") { + return printedKey; + } + if (node.type === "mappingItem" && isAbsolutelyPrintedAsSingleLineNode(key.content, options) && !hasTrailingComment(key.content) && (!parentNode.tag || parentNode.tag.value !== "tag:yaml.org,2002:set")) { + return [printedKey, spaceBeforeColon, ":"]; + } + return ["? ", alignWithSpaces(2, printedKey)]; + } + const printedValue = print("value"); + if (isEmptyMappingKey) { + return [": ", alignWithSpaces(2, printedValue)]; + } + if (hasLeadingComments(value) || !isInlineNode(key.content)) { + return ["? ", alignWithSpaces(2, printedKey), hardline, join("", path.map(print, "value", "leadingComments").map((comment) => [comment, hardline])), ": ", alignWithSpaces(2, printedValue)]; + } + if (isSingleLineNode(key.content) && !hasLeadingComments(key.content) && !hasMiddleComments(key.content) && !hasTrailingComment(key.content) && !hasEndComments(key) && !hasLeadingComments(value.content) && !hasMiddleComments(value.content) && !hasEndComments(value) && isAbsolutelyPrintedAsSingleLineNode(value.content, options)) { + return [printedKey, spaceBeforeColon, ": ", printedValue]; + } + const groupId = Symbol("mappingKey"); + const groupedKey = group([ifBreak("? "), group(alignWithSpaces(2, printedKey), { + id: groupId + })]); + const explicitMappingValue = [hardline, ": ", alignWithSpaces(2, printedValue)]; + const implicitMappingValueParts = [spaceBeforeColon, ":"]; + if (hasLeadingComments(value.content) || hasEndComments(value) && value.content && !isNode(value.content, ["mapping", "sequence"]) || parentNode.type === "mapping" && hasTrailingComment(key.content) && isInlineNode(value.content) || isNode(value.content, ["mapping", "sequence"]) && value.content.tag === null && value.content.anchor === null) { + implicitMappingValueParts.push(hardline); + } else if (value.content) { + implicitMappingValueParts.push(line); + } + implicitMappingValueParts.push(printedValue); + const implicitMappingValue = alignWithSpaces(options.tabWidth, implicitMappingValueParts); + if (isAbsolutelyPrintedAsSingleLineNode(key.content, options) && !hasLeadingComments(key.content) && !hasMiddleComments(key.content) && !hasEndComments(key)) { + return conditionalGroup([[printedKey, implicitMappingValue]]); + } + return conditionalGroup([[groupedKey, ifBreak(explicitMappingValue, implicitMappingValue, { + groupId + })]]); + } + function isAbsolutelyPrintedAsSingleLineNode(node, options) { + if (!node) { + return true; + } + switch (node.type) { + case "plain": + case "quoteSingle": + case "quoteDouble": + break; + case "alias": + return true; + default: + return false; + } + if (options.proseWrap === "preserve") { + return node.position.start.line === node.position.end.line; + } + if (/\\$/m.test(options.originalText.slice(node.position.start.offset, node.position.end.offset))) { + return false; + } + switch (options.proseWrap) { + case "never": + return !node.value.includes("\n"); + case "always": + return !/[\n ]/.test(node.value); + default: + return false; + } + } + function needsSpaceInFrontOfMappingValue(node) { + return node.key.content && node.key.content.type === "alias"; + } + function isSingleLineNode(node) { + if (!node) { + return true; + } + switch (node.type) { + case "plain": + case "quoteDouble": + case "quoteSingle": + return node.position.start.line === node.position.end.line; + case "alias": + return true; + default: + return false; + } + } + module2.exports = printMappingItem; + } +}); +var require_block2 = __commonJS2({ + "src/language-yaml/print/block.js"(exports2, module2) { + "use strict"; + var { + builders: { + dedent, + dedentToRoot, + fill, + hardline, + join, + line, + literalline, + markAsRoot + }, + utils: { + getDocParts + } + } = require("./doc.js"); + var { + getAncestorCount, + getBlockValueLineContents, + hasIndicatorComment, + isLastDescendantNode, + isNode + } = require_utils12(); + var { + alignWithSpaces + } = require_misc2(); + function printBlock(path, print, options) { + const node = path.getValue(); + const parentIndent = getAncestorCount(path, (ancestorNode) => isNode(ancestorNode, ["sequence", "mapping"])); + const isLastDescendant = isLastDescendantNode(path); + const parts = [node.type === "blockFolded" ? ">" : "|"]; + if (node.indent !== null) { + parts.push(node.indent.toString()); + } + if (node.chomping !== "clip") { + parts.push(node.chomping === "keep" ? "+" : "-"); + } + if (hasIndicatorComment(node)) { + parts.push(" ", print("indicatorComment")); + } + const lineContents = getBlockValueLineContents(node, { + parentIndent, + isLastDescendant, + options + }); + const contentsParts = []; + for (const [index, lineWords] of lineContents.entries()) { + if (index === 0) { + contentsParts.push(hardline); + } + contentsParts.push(fill(getDocParts(join(line, lineWords)))); + if (index !== lineContents.length - 1) { + contentsParts.push(lineWords.length === 0 ? hardline : markAsRoot(literalline)); + } else if (node.chomping === "keep" && isLastDescendant) { + contentsParts.push(dedentToRoot(lineWords.length === 0 ? hardline : literalline)); + } + } + if (node.indent === null) { + parts.push(dedent(alignWithSpaces(options.tabWidth, contentsParts))); + } else { + parts.push(dedentToRoot(alignWithSpaces(node.indent - 1 + parentIndent, contentsParts))); + } + return parts; + } + module2.exports = printBlock; + } +}); +var require_printer_yaml = __commonJS2({ + "src/language-yaml/printer-yaml.js"(exports2, module2) { + "use strict"; + var { + builders: { + breakParent, + fill, + group, + hardline, + join, + line, + lineSuffix, + literalline + }, + utils: { + getDocParts, + replaceTextEndOfLine + } + } = require("./doc.js"); + var { + isPreviousLineEmpty + } = require_util(); + var { + insertPragma, + isPragma + } = require_pragma6(); + var { + locStart + } = require_loc7(); + var embed = require_embed5(); + var { + getFlowScalarLineContents, + getLastDescendantNode, + hasLeadingComments, + hasMiddleComments, + hasTrailingComment, + hasEndComments, + hasPrettierIgnore, + isLastDescendantNode, + isNode, + isInlineNode + } = require_utils12(); + var preprocess = require_print_preprocess4(); + var { + alignWithSpaces, + printNextEmptyLine, + shouldPrintEndComments + } = require_misc2(); + var { + printFlowMapping, + printFlowSequence + } = require_flow_mapping_sequence(); + var printMappingItem = require_mapping_item(); + var printBlock = require_block2(); + function genericPrint(path, options, print) { + const node = path.getValue(); + const parts = []; + if (node.type !== "mappingValue" && hasLeadingComments(node)) { + parts.push([join(hardline, path.map(print, "leadingComments")), hardline]); + } + const { + tag, + anchor + } = node; + if (tag) { + parts.push(print("tag")); + } + if (tag && anchor) { + parts.push(" "); + } + if (anchor) { + parts.push(print("anchor")); + } + let nextEmptyLine = ""; + if (isNode(node, ["mapping", "sequence", "comment", "directive", "mappingItem", "sequenceItem"]) && !isLastDescendantNode(path)) { + nextEmptyLine = printNextEmptyLine(path, options.originalText); + } + if (tag || anchor) { + if (isNode(node, ["sequence", "mapping"]) && !hasMiddleComments(node)) { + parts.push(hardline); + } else { + parts.push(" "); + } + } + if (hasMiddleComments(node)) { + parts.push([node.middleComments.length === 1 ? "" : hardline, join(hardline, path.map(print, "middleComments")), hardline]); + } + const parentNode = path.getParentNode(); + if (hasPrettierIgnore(path)) { + parts.push(replaceTextEndOfLine(options.originalText.slice(node.position.start.offset, node.position.end.offset).trimEnd(), literalline)); + } else { + parts.push(group(printNode(node, parentNode, path, options, print))); + } + if (hasTrailingComment(node) && !isNode(node, ["document", "documentHead"])) { + parts.push(lineSuffix([node.type === "mappingValue" && !node.content ? "" : " ", parentNode.type === "mappingKey" && path.getParentNode(2).type === "mapping" && isInlineNode(node) ? "" : breakParent, print("trailingComment")])); + } + if (shouldPrintEndComments(node)) { + parts.push(alignWithSpaces(node.type === "sequenceItem" ? 2 : 0, [hardline, join(hardline, path.map((path2) => [isPreviousLineEmpty(options.originalText, path2.getValue(), locStart) ? hardline : "", print()], "endComments"))])); + } + parts.push(nextEmptyLine); + return parts; + } + function printNode(node, parentNode, path, options, print) { + switch (node.type) { + case "root": { + const { + children + } = node; + const parts = []; + path.each((childPath, index) => { + const document2 = children[index]; + const nextDocument = children[index + 1]; + if (index !== 0) { + parts.push(hardline); + } + parts.push(print()); + if (shouldPrintDocumentEndMarker(document2, nextDocument)) { + parts.push(hardline, "..."); + if (hasTrailingComment(document2)) { + parts.push(" ", print("trailingComment")); + } + } else if (nextDocument && !hasTrailingComment(nextDocument.head)) { + parts.push(hardline, "---"); + } + }, "children"); + const lastDescendantNode = getLastDescendantNode(node); + if (!isNode(lastDescendantNode, ["blockLiteral", "blockFolded"]) || lastDescendantNode.chomping !== "keep") { + parts.push(hardline); + } + return parts; + } + case "document": { + const nextDocument = parentNode.children[path.getName() + 1]; + const parts = []; + if (shouldPrintDocumentHeadEndMarker(node, nextDocument, parentNode, options) === "head") { + if (node.head.children.length > 0 || node.head.endComments.length > 0) { + parts.push(print("head")); + } + if (hasTrailingComment(node.head)) { + parts.push(["---", " ", print(["head", "trailingComment"])]); + } else { + parts.push("---"); + } + } + if (shouldPrintDocumentBody(node)) { + parts.push(print("body")); + } + return join(hardline, parts); + } + case "documentHead": + return join(hardline, [...path.map(print, "children"), ...path.map(print, "endComments")]); + case "documentBody": { + const { + children, + endComments + } = node; + let separator = ""; + if (children.length > 0 && endComments.length > 0) { + const lastDescendantNode = getLastDescendantNode(node); + if (isNode(lastDescendantNode, ["blockFolded", "blockLiteral"])) { + if (lastDescendantNode.chomping !== "keep") { + separator = [hardline, hardline]; + } + } else { + separator = hardline; + } + } + return [join(hardline, path.map(print, "children")), separator, join(hardline, path.map(print, "endComments"))]; + } + case "directive": + return ["%", join(" ", [node.name, ...node.parameters])]; + case "comment": + return ["#", node.value]; + case "alias": + return ["*", node.value]; + case "tag": + return options.originalText.slice(node.position.start.offset, node.position.end.offset); + case "anchor": + return ["&", node.value]; + case "plain": + return printFlowScalarContent(node.type, options.originalText.slice(node.position.start.offset, node.position.end.offset), options); + case "quoteDouble": + case "quoteSingle": { + const singleQuote = "'"; + const doubleQuote = '"'; + const raw = options.originalText.slice(node.position.start.offset + 1, node.position.end.offset - 1); + if (node.type === "quoteSingle" && raw.includes("\\") || node.type === "quoteDouble" && /\\[^"]/.test(raw)) { + const originalQuote = node.type === "quoteDouble" ? doubleQuote : singleQuote; + return [originalQuote, printFlowScalarContent(node.type, raw, options), originalQuote]; + } + if (raw.includes(doubleQuote)) { + return [singleQuote, printFlowScalarContent(node.type, node.type === "quoteDouble" ? raw.replace(/\\"/g, doubleQuote).replace(/'/g, singleQuote.repeat(2)) : raw, options), singleQuote]; + } + if (raw.includes(singleQuote)) { + return [doubleQuote, printFlowScalarContent(node.type, node.type === "quoteSingle" ? raw.replace(/''/g, singleQuote) : raw, options), doubleQuote]; + } + const quote = options.singleQuote ? singleQuote : doubleQuote; + return [quote, printFlowScalarContent(node.type, raw, options), quote]; + } + case "blockFolded": + case "blockLiteral": { + return printBlock(path, print, options); + } + case "mapping": + case "sequence": + return join(hardline, path.map(print, "children")); + case "sequenceItem": + return ["- ", alignWithSpaces(2, node.content ? print("content") : "")]; + case "mappingKey": + case "mappingValue": + return !node.content ? "" : print("content"); + case "mappingItem": + case "flowMappingItem": { + return printMappingItem(node, parentNode, path, print, options); + } + case "flowMapping": + return printFlowMapping(path, print, options); + case "flowSequence": + return printFlowSequence(path, print, options); + case "flowSequenceItem": + return print("content"); + default: + throw new Error(`Unexpected node type ${node.type}`); + } + } + function shouldPrintDocumentBody(document2) { + return document2.body.children.length > 0 || hasEndComments(document2.body); + } + function shouldPrintDocumentEndMarker(document2, nextDocument) { + return hasTrailingComment(document2) || nextDocument && (nextDocument.head.children.length > 0 || hasEndComments(nextDocument.head)); + } + function shouldPrintDocumentHeadEndMarker(document2, nextDocument, root, options) { + if (root.children[0] === document2 && /---(?:\s|$)/.test(options.originalText.slice(locStart(document2), locStart(document2) + 4)) || document2.head.children.length > 0 || hasEndComments(document2.head) || hasTrailingComment(document2.head)) { + return "head"; + } + if (shouldPrintDocumentEndMarker(document2, nextDocument)) { + return false; + } + return nextDocument ? "root" : false; + } + function printFlowScalarContent(nodeType, content, options) { + const lineContents = getFlowScalarLineContents(nodeType, content, options); + return join(hardline, lineContents.map((lineContentWords) => fill(getDocParts(join(line, lineContentWords))))); + } + function clean(node, newNode) { + if (isNode(newNode)) { + delete newNode.position; + switch (newNode.type) { + case "comment": + if (isPragma(newNode.value)) { + return null; + } + break; + case "quoteDouble": + case "quoteSingle": + newNode.type = "quote"; + break; + } + } + } + module2.exports = { + preprocess, + embed, + print: genericPrint, + massageAstNode: clean, + insertPragma + }; + } +}); +var require_options7 = __commonJS2({ + "src/language-yaml/options.js"(exports2, module2) { + "use strict"; + var commonOptions = require_common_options(); + module2.exports = { + bracketSpacing: commonOptions.bracketSpacing, + singleQuote: commonOptions.singleQuote, + proseWrap: commonOptions.proseWrap + }; + } +}); +var require_parsers7 = __commonJS2({ + "src/language-yaml/parsers.js"(exports2, module2) { + "use strict"; + module2.exports = { + get yaml() { + return require("./parser-yaml.js").parsers.yaml; + } + }; + } +}); +var require_YAML = __commonJS2({ + "node_modules/linguist-languages/data/YAML.json"(exports2, module2) { + module2.exports = { + name: "YAML", + type: "data", + color: "#cb171e", + tmScope: "source.yaml", + aliases: ["yml"], + extensions: [".yml", ".mir", ".reek", ".rviz", ".sublime-syntax", ".syntax", ".yaml", ".yaml-tmlanguage", ".yaml.sed", ".yml.mysql"], + filenames: [".clang-format", ".clang-tidy", ".gemrc", "CITATION.cff", "glide.lock", "yarn.lock"], + aceMode: "yaml", + codemirrorMode: "yaml", + codemirrorMimeType: "text/x-yaml", + languageId: 407 + }; + } +}); +var require_language_yaml = __commonJS2({ + "src/language-yaml/index.js"(exports2, module2) { + "use strict"; + var createLanguage = require_create_language(); + var printer = require_printer_yaml(); + var options = require_options7(); + var parsers = require_parsers7(); + var languages = [createLanguage(require_YAML(), (data) => ({ + since: "1.14.0", + parsers: ["yaml"], + vscodeLanguageIds: ["yaml", "ansible", "home-assistant"], + filenames: [...data.filenames.filter((filename) => filename !== "yarn.lock"), ".prettierrc", ".stylelintrc", ".lintstagedrc"] + }))]; + module2.exports = { + languages, + printers: { + yaml: printer + }, + options, + parsers + }; + } +}); +var require_languages = __commonJS2({ + "src/languages.js"(exports2, module2) { + "use strict"; + module2.exports = [require_language_js(), require_language_css(), require_language_handlebars(), require_language_graphql(), require_language_markdown(), require_language_html(), require_language_yaml()]; + } +}); +var require_load_plugins = __commonJS2({ + "src/common/load-plugins.js"(exports2, module2) { + "use strict"; + var fs = require("fs"); + var path = require("path"); + var fastGlob = require_out4(); + var partition = require_partition(); + var uniqByKey = require_uniq_by_key(); + var internalPlugins = require_languages(); + var { + default: mem2, + memClear: memClear2 + } = (init_dist(), __toCommonJS(dist_exports)); + var thirdParty = require("./third-party.js"); + var resolve = require_resolve2(); + var memoizedLoad = mem2(load, { + cacheKey: JSON.stringify + }); + var memoizedSearch = mem2(findPluginsInNodeModules); + var clearCache = () => { + memClear2(memoizedLoad); + memClear2(memoizedSearch); + }; + function load(plugins2, pluginSearchDirs) { + if (!plugins2) { + plugins2 = []; + } + if (pluginSearchDirs === false) { + pluginSearchDirs = []; + } else { + pluginSearchDirs = pluginSearchDirs || []; + if (pluginSearchDirs.length === 0) { + const autoLoadDir = thirdParty.findParentDir(__dirname, "node_modules"); + if (autoLoadDir) { + pluginSearchDirs = [autoLoadDir]; + } + } + } + const [externalPluginNames, externalPluginInstances] = partition(plugins2, (plugin) => typeof plugin === "string"); + const externalManualLoadPluginInfos = externalPluginNames.map((pluginName) => { + let requirePath; + try { + requirePath = resolve(path.resolve(process.cwd(), pluginName)); + } catch { + requirePath = resolve(pluginName, { + paths: [process.cwd()] + }); + } + return { + name: pluginName, + requirePath + }; + }); + const externalAutoLoadPluginInfos = pluginSearchDirs.flatMap((pluginSearchDir) => { + const resolvedPluginSearchDir = path.resolve(process.cwd(), pluginSearchDir); + const nodeModulesDir = path.resolve(resolvedPluginSearchDir, "node_modules"); + if (!isDirectory(nodeModulesDir) && !isDirectory(resolvedPluginSearchDir)) { + throw new Error(`${pluginSearchDir} does not exist or is not a directory`); + } + return memoizedSearch(nodeModulesDir).map((pluginName) => ({ + name: pluginName, + requirePath: resolve(pluginName, { + paths: [resolvedPluginSearchDir] + }) + })); + }); + const externalPlugins = [...uniqByKey([...externalManualLoadPluginInfos, ...externalAutoLoadPluginInfos], "requirePath").map((externalPluginInfo) => Object.assign({ + name: externalPluginInfo.name + }, require(externalPluginInfo.requirePath))), ...externalPluginInstances]; + return [...internalPlugins, ...externalPlugins]; + } + function findPluginsInNodeModules(nodeModulesDir) { + const pluginPackageJsonPaths = fastGlob.sync(["prettier-plugin-*/package.json", "@*/prettier-plugin-*/package.json", "@prettier/plugin-*/package.json"], { + cwd: nodeModulesDir + }); + return pluginPackageJsonPaths.map(path.dirname); + } + function isDirectory(dir) { + try { + return fs.statSync(dir).isDirectory(); + } catch { + return false; + } + } + module2.exports = { + loadPlugins: memoizedLoad, + clearCache + }; + } +}); +var { + version +} = require("./package.json"); +var core = require_core(); +var { + getSupportInfo +} = require_support(); +var getFileInfo = require_get_file_info(); +var sharedUtil = require_util_shared(); +var plugins = require_load_plugins(); +var config = require_resolve_config(); +var doc = require("./doc.js"); +function _withPlugins(fn, optsArgIdx = 1) { + return (...args) => { + const opts = args[optsArgIdx] || {}; + args[optsArgIdx] = Object.assign(Object.assign({}, opts), {}, { + plugins: plugins.loadPlugins(opts.plugins, opts.pluginSearchDirs) + }); + return fn(...args); + }; +} +function withPlugins(fn, optsArgIdx) { + const resultingFn = _withPlugins(fn, optsArgIdx); + if (fn.sync) { + resultingFn.sync = _withPlugins(fn.sync, optsArgIdx); + } + return resultingFn; +} +var formatWithCursor = withPlugins(core.formatWithCursor); +module.exports = { + formatWithCursor, + format(text, opts) { + return formatWithCursor(text, opts).formatted; + }, + check(text, opts) { + const { + formatted + } = formatWithCursor(text, opts); + return formatted === text; + }, + doc, + resolveConfig: config.resolveConfig, + resolveConfigFile: config.resolveConfigFile, + clearConfigCache() { + config.clearCache(); + plugins.clearCache(); + }, + getFileInfo: withPlugins(getFileInfo), + getSupportInfo: withPlugins(getSupportInfo, 0), + version, + util: sharedUtil, + __internal: { + errors: require_errors(), + coreOptions: require_core_options(), + createIgnorer: require_create_ignorer(), + optionsModule: require_options(), + optionsNormalizer: require_options_normalizer(), + utils: { + arrayify: require_arrayify(), + getLast: require_get_last(), + partition: require_partition(), + isNonEmptyArray: require_util().isNonEmptyArray + } + }, + __debug: { + parse: withPlugins(core.parse), + formatAST: withPlugins(core.formatAST), + formatDoc: withPlugins(core.formatDoc), + printToDoc: withPlugins(core.printToDoc), + printDocToString: withPlugins(core.printDocToString) + } +}; diff --git a/node_modules/prettier/package.json b/node_modules/prettier/package.json new file mode 100644 index 0000000..1651dc3 --- /dev/null +++ b/node_modules/prettier/package.json @@ -0,0 +1,21 @@ +{ + "name": "prettier", + "version": "2.8.8", + "description": "Prettier is an opinionated code formatter", + "bin": "./bin-prettier.js", + "repository": "prettier/prettier", + "funding": "https://github.com/prettier/prettier?sponsor=1", + "homepage": "https://prettier.io", + "author": "James Long", + "license": "MIT", + "main": "./index.js", + "browser": "./standalone.js", + "unpkg": "./standalone.js", + "engines": { + "node": ">=10.13.0" + }, + "files": [ + "*.js", + "esm/*.mjs" + ] +} \ No newline at end of file diff --git a/node_modules/prettier/parser-angular.js b/node_modules/prettier/parser-angular.js new file mode 100644 index 0000000..f4cbb36 --- /dev/null +++ b/node_modules/prettier/parser-angular.js @@ -0,0 +1,2 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.angular=e()}})(function(){"use strict";var cr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Br=cr((Mr,ar)=>{var ze=Object.defineProperty,ur=Object.getOwnPropertyDescriptor,He=Object.getOwnPropertyNames,lr=Object.prototype.hasOwnProperty,Y=(e,t)=>function(){return e&&(t=(0,e[He(e)[0]])(e=0)),t},q=(e,t)=>function(){return t||(0,e[He(e)[0]])((t={exports:{}}).exports,t),t.exports},Xe=(e,t)=>{for(var r in t)ze(e,r,{get:t[r],enumerable:!0})},hr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of He(t))!lr.call(e,s)&&s!==r&&ze(e,s,{get:()=>t[s],enumerable:!(n=ur(t,s))||n.enumerable});return e},be=e=>hr(ze({},"__esModule",{value:!0}),e),L=Y({""(){}}),pr=q({"src/utils/is-non-empty-array.js"(e,t){"use strict";L();function r(n){return Array.isArray(n)&&n.length>0}t.exports=r}}),dr=q({"src/language-js/loc.js"(e,t){"use strict";L();var r=pr();function n(l){var P,p;let x=l.range?l.range[0]:l.start,C=(P=(p=l.declaration)===null||p===void 0?void 0:p.decorators)!==null&&P!==void 0?P:l.decorators;return r(C)?Math.min(n(C[0]),x):x}function s(l){return l.range?l.range[1]:l.end}function a(l,P){let p=n(l);return Number.isInteger(p)&&p===n(P)}function i(l,P){let p=s(l);return Number.isInteger(p)&&p===s(P)}function h(l,P){return a(l,P)&&i(l,P)}t.exports={locStart:n,locEnd:s,hasSameLocStart:a,hasSameLoc:h}}}),fr=q({"node_modules/angular-estree-parser/node_modules/lines-and-columns/build/index.js"(e){"use strict";L(),e.__esModule=!0,e.LinesAndColumns=void 0;var t=` +`,r="\r",n=function(){function s(a){this.string=a;for(var i=[0],h=0;hthis.string.length)return null;for(var i=0,h=this.offsets;h[i+1]<=a;)i++;var l=a-h[i];return{line:i,column:l}},s.prototype.indexForLocation=function(a){var i=a.line,h=a.column;return i<0||i>=this.offsets.length||h<0||h>this.lengthOfLine(i)?null:this.offsets[i]+h},s.prototype.lengthOfLine=function(a){var i=this.offsets[a],h=a===this.offsets.length-1?this.string.length:this.offsets[a+1];return h-i},s}();e.LinesAndColumns=n,e.default=n}}),gr=q({"node_modules/angular-estree-parser/lib/context.js"(e){"use strict";L(),Object.defineProperty(e,"__esModule",{value:!0}),e.Context=void 0;var t=fr(),r=class{constructor(s){this.text=s,this.locator=new n(this.text)}};e.Context=r;var n=class{constructor(s){this._lineAndColumn=new t.default(s)}locationForIndex(s){let{line:a,column:i}=this._lineAndColumn.locationForIndex(s);return{line:a+1,column:i}}}}}),Je={};Xe(Je,{AST:()=>k,ASTWithName:()=>W,ASTWithSource:()=>G,AbsoluteSourceSpan:()=>U,AstMemoryEfficientTransformer:()=>Ct,AstTransformer:()=>Pt,Binary:()=>B,BindingPipe:()=>fe,BoundElementProperty:()=>It,Chain:()=>oe,Conditional:()=>ce,EmptyExpr:()=>K,ExpressionBinding:()=>Ze,FunctionCall:()=>Pe,ImplicitReceiver:()=>Oe,Interpolation:()=>me,KeyedRead:()=>he,KeyedWrite:()=>de,LiteralArray:()=>ge,LiteralMap:()=>ve,LiteralPrimitive:()=>$,MethodCall:()=>ye,NonNullAssert:()=>Se,ParseSpan:()=>V,ParsedEvent:()=>At,ParsedProperty:()=>Et,ParsedPropertyType:()=>se,ParsedVariable:()=>_t,ParserError:()=>ae,PrefixNot:()=>xe,PropertyRead:()=>ne,PropertyWrite:()=>ue,Quote:()=>Le,RecursiveAstVisitor:()=>et,SafeKeyedRead:()=>pe,SafeMethodCall:()=>we,SafePropertyRead:()=>le,ThisReceiver:()=>Ye,Unary:()=>F,VariableBinding:()=>Re});var ae,V,k,W,Le,K,Oe,Ye,oe,ce,ne,ue,le,he,pe,de,fe,$,ge,ve,me,B,F,xe,Se,ye,we,Pe,U,G,Re,Ze,et,Pt,Ct,Et,se,At,_t,It,tt=Y({"node_modules/@angular/compiler/esm2015/src/expression_parser/ast.js"(){L(),ae=class{constructor(e,t,r,n){this.input=t,this.errLocation=r,this.ctxLocation=n,this.message=`Parser Error: ${e} ${r} [${t}] in ${n}`}},V=class{constructor(e,t){this.start=e,this.end=t}toAbsolute(e){return new U(e+this.start,e+this.end)}},k=class{constructor(e,t){this.span=e,this.sourceSpan=t}toString(){return"AST"}},W=class extends k{constructor(e,t,r){super(e,t),this.nameSpan=r}},Le=class extends k{constructor(e,t,r,n,s){super(e,t),this.prefix=r,this.uninterpretedExpression=n,this.location=s}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitQuote(this,t)}toString(){return"Quote"}},K=class extends k{visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null}},Oe=class extends k{visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitImplicitReceiver(this,t)}},Ye=class extends Oe{visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;var r;return(r=e.visitThisReceiver)===null||r===void 0?void 0:r.call(e,this,t)}},oe=class extends k{constructor(e,t,r){super(e,t),this.expressions=r}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitChain(this,t)}},ce=class extends k{constructor(e,t,r,n,s){super(e,t),this.condition=r,this.trueExp=n,this.falseExp=s}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitConditional(this,t)}},ne=class extends W{constructor(e,t,r,n,s){super(e,t,r),this.receiver=n,this.name=s}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitPropertyRead(this,t)}},ue=class extends W{constructor(e,t,r,n,s,a){super(e,t,r),this.receiver=n,this.name=s,this.value=a}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitPropertyWrite(this,t)}},le=class extends W{constructor(e,t,r,n,s){super(e,t,r),this.receiver=n,this.name=s}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitSafePropertyRead(this,t)}},he=class extends k{constructor(e,t,r,n){super(e,t),this.receiver=r,this.key=n}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitKeyedRead(this,t)}},pe=class extends k{constructor(e,t,r,n){super(e,t),this.receiver=r,this.key=n}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitSafeKeyedRead(this,t)}},de=class extends k{constructor(e,t,r,n,s){super(e,t),this.receiver=r,this.key=n,this.value=s}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitKeyedWrite(this,t)}},fe=class extends W{constructor(e,t,r,n,s,a){super(e,t,a),this.exp=r,this.name=n,this.args=s}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitPipe(this,t)}},$=class extends k{constructor(e,t,r){super(e,t),this.value=r}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitLiteralPrimitive(this,t)}},ge=class extends k{constructor(e,t,r){super(e,t),this.expressions=r}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitLiteralArray(this,t)}},ve=class extends k{constructor(e,t,r,n){super(e,t),this.keys=r,this.values=n}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitLiteralMap(this,t)}},me=class extends k{constructor(e,t,r,n){super(e,t),this.strings=r,this.expressions=n}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitInterpolation(this,t)}},B=class extends k{constructor(e,t,r,n,s){super(e,t),this.operation=r,this.left=n,this.right=s}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitBinary(this,t)}},F=class extends B{constructor(e,t,r,n,s,a,i){super(e,t,s,a,i),this.operator=r,this.expr=n}static createMinus(e,t,r){return new F(e,t,"-",r,"-",new $(e,t,0),r)}static createPlus(e,t,r){return new F(e,t,"+",r,"-",r,new $(e,t,0))}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitUnary!==void 0?e.visitUnary(this,t):e.visitBinary(this,t)}},xe=class extends k{constructor(e,t,r){super(e,t),this.expression=r}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitPrefixNot(this,t)}},Se=class extends k{constructor(e,t,r){super(e,t),this.expression=r}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitNonNullAssert(this,t)}},ye=class extends W{constructor(e,t,r,n,s,a,i){super(e,t,r),this.receiver=n,this.name=s,this.args=a,this.argumentSpan=i}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitMethodCall(this,t)}},we=class extends W{constructor(e,t,r,n,s,a,i){super(e,t,r),this.receiver=n,this.name=s,this.args=a,this.argumentSpan=i}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitSafeMethodCall(this,t)}},Pe=class extends k{constructor(e,t,r,n){super(e,t),this.target=r,this.args=n}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitFunctionCall(this,t)}},U=class{constructor(e,t){this.start=e,this.end=t}},G=class extends k{constructor(e,t,r,n,s){super(new V(0,t===null?0:t.length),new U(n,t===null?n:n+t.length)),this.ast=e,this.source=t,this.location=r,this.errors=s}visit(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return e.visitASTWithSource?e.visitASTWithSource(this,t):this.ast.visit(e,t)}toString(){return`${this.source} in ${this.location}`}},Re=class{constructor(e,t,r){this.sourceSpan=e,this.key=t,this.value=r}},Ze=class{constructor(e,t,r){this.sourceSpan=e,this.key=t,this.value=r}},et=class{visit(e,t){e.visit(this,t)}visitUnary(e,t){this.visit(e.expr,t)}visitBinary(e,t){this.visit(e.left,t),this.visit(e.right,t)}visitChain(e,t){this.visitAll(e.expressions,t)}visitConditional(e,t){this.visit(e.condition,t),this.visit(e.trueExp,t),this.visit(e.falseExp,t)}visitPipe(e,t){this.visit(e.exp,t),this.visitAll(e.args,t)}visitFunctionCall(e,t){e.target&&this.visit(e.target,t),this.visitAll(e.args,t)}visitImplicitReceiver(e,t){}visitThisReceiver(e,t){}visitInterpolation(e,t){this.visitAll(e.expressions,t)}visitKeyedRead(e,t){this.visit(e.receiver,t),this.visit(e.key,t)}visitKeyedWrite(e,t){this.visit(e.receiver,t),this.visit(e.key,t),this.visit(e.value,t)}visitLiteralArray(e,t){this.visitAll(e.expressions,t)}visitLiteralMap(e,t){this.visitAll(e.values,t)}visitLiteralPrimitive(e,t){}visitMethodCall(e,t){this.visit(e.receiver,t),this.visitAll(e.args,t)}visitPrefixNot(e,t){this.visit(e.expression,t)}visitNonNullAssert(e,t){this.visit(e.expression,t)}visitPropertyRead(e,t){this.visit(e.receiver,t)}visitPropertyWrite(e,t){this.visit(e.receiver,t),this.visit(e.value,t)}visitSafePropertyRead(e,t){this.visit(e.receiver,t)}visitSafeMethodCall(e,t){this.visit(e.receiver,t),this.visitAll(e.args,t)}visitSafeKeyedRead(e,t){this.visit(e.receiver,t),this.visit(e.key,t)}visitQuote(e,t){}visitAll(e,t){for(let r of e)this.visit(r,t)}},Pt=class{visitImplicitReceiver(e,t){return e}visitThisReceiver(e,t){return e}visitInterpolation(e,t){return new me(e.span,e.sourceSpan,e.strings,this.visitAll(e.expressions))}visitLiteralPrimitive(e,t){return new $(e.span,e.sourceSpan,e.value)}visitPropertyRead(e,t){return new ne(e.span,e.sourceSpan,e.nameSpan,e.receiver.visit(this),e.name)}visitPropertyWrite(e,t){return new ue(e.span,e.sourceSpan,e.nameSpan,e.receiver.visit(this),e.name,e.value.visit(this))}visitSafePropertyRead(e,t){return new le(e.span,e.sourceSpan,e.nameSpan,e.receiver.visit(this),e.name)}visitMethodCall(e,t){return new ye(e.span,e.sourceSpan,e.nameSpan,e.receiver.visit(this),e.name,this.visitAll(e.args),e.argumentSpan)}visitSafeMethodCall(e,t){return new we(e.span,e.sourceSpan,e.nameSpan,e.receiver.visit(this),e.name,this.visitAll(e.args),e.argumentSpan)}visitFunctionCall(e,t){return new Pe(e.span,e.sourceSpan,e.target.visit(this),this.visitAll(e.args))}visitLiteralArray(e,t){return new ge(e.span,e.sourceSpan,this.visitAll(e.expressions))}visitLiteralMap(e,t){return new ve(e.span,e.sourceSpan,e.keys,this.visitAll(e.values))}visitUnary(e,t){switch(e.operator){case"+":return F.createPlus(e.span,e.sourceSpan,e.expr.visit(this));case"-":return F.createMinus(e.span,e.sourceSpan,e.expr.visit(this));default:throw new Error(`Unknown unary operator ${e.operator}`)}}visitBinary(e,t){return new B(e.span,e.sourceSpan,e.operation,e.left.visit(this),e.right.visit(this))}visitPrefixNot(e,t){return new xe(e.span,e.sourceSpan,e.expression.visit(this))}visitNonNullAssert(e,t){return new Se(e.span,e.sourceSpan,e.expression.visit(this))}visitConditional(e,t){return new ce(e.span,e.sourceSpan,e.condition.visit(this),e.trueExp.visit(this),e.falseExp.visit(this))}visitPipe(e,t){return new fe(e.span,e.sourceSpan,e.exp.visit(this),e.name,this.visitAll(e.args),e.nameSpan)}visitKeyedRead(e,t){return new he(e.span,e.sourceSpan,e.receiver.visit(this),e.key.visit(this))}visitKeyedWrite(e,t){return new de(e.span,e.sourceSpan,e.receiver.visit(this),e.key.visit(this),e.value.visit(this))}visitAll(e){let t=[];for(let r=0;r=rt&&e<=nt||e==dt}function Q(e){return Mt<=e&&e<=jt}function mr(e){return e>=ht&&e<=pt||e>=ut&&e<=lt}function mt(e){return e===at||e===st||e===Xt}var Ce,rt,Ot,kt,Nt,bt,nt,Lt,st,Rt,it,Tt,je,at,Ee,z,$t,ot,ee,ct,H,Te,X,te,Bt,ie,Kt,Fe,Mt,jt,ut,Ft,lt,Ae,Ut,re,Wt,Be,ht,Gt,Vt,qt,Qt,Dt,zt,Ht,pt,$e,Ue,_e,dt,Xt,Jt=Y({"node_modules/@angular/compiler/esm2015/src/chars.js"(){L(),Ce=0,rt=9,Ot=10,kt=11,Nt=12,bt=13,nt=32,Lt=33,st=34,Rt=35,it=36,Tt=37,je=38,at=39,Ee=40,z=41,$t=42,ot=43,ee=44,ct=45,H=46,Te=47,X=58,te=59,Bt=60,ie=61,Kt=62,Fe=63,Mt=48,jt=57,ut=65,Ft=69,lt=90,Ae=91,Ut=92,re=93,Wt=94,Be=95,ht=97,Gt=101,Vt=102,qt=110,Qt=114,Dt=116,zt=117,Ht=118,pt=122,$e=123,Ue=124,_e=125,dt=160,Xt=96}}),Yt={};Xe(Yt,{EOF:()=>Ie,Lexer:()=>er,Token:()=>M,TokenType:()=>S,isIdentifier:()=>Zt});function xt(e,t,r){return new M(e,t,S.Character,r,String.fromCharCode(r))}function xr(e,t,r){return new M(e,t,S.Identifier,0,r)}function Sr(e,t,r){return new M(e,t,S.PrivateIdentifier,0,r)}function yr(e,t,r){return new M(e,t,S.Keyword,0,r)}function Ke(e,t,r){return new M(e,t,S.Operator,0,r)}function wr(e,t,r){return new M(e,t,S.String,0,r)}function Pr(e,t,r){return new M(e,t,S.Number,r,"")}function Cr(e,t,r){return new M(e,t,S.Error,0,r)}function We(e){return ht<=e&&e<=pt||ut<=e&&e<=lt||e==Be||e==it}function Zt(e){if(e.length==0)return!1;let t=new Ve(e);if(!We(t.peek))return!1;for(t.advance();t.peek!==Ce;){if(!Ge(t.peek))return!1;t.advance()}return!0}function Ge(e){return mr(e)||Q(e)||e==Be||e==it}function Er(e){return e==Gt||e==Ft}function Ar(e){return e==ct||e==ot}function _r(e){switch(e){case qt:return Ot;case Vt:return Nt;case Qt:return bt;case Dt:return rt;case Ht:return kt;default:return e}}function Ir(e){let t=parseInt(e);if(isNaN(t))throw new Error("Invalid integer literal when parsing "+e);return t}var S,St,er,M,Ie,Ve,tr=Y({"node_modules/@angular/compiler/esm2015/src/expression_parser/lexer.js"(){L(),Jt(),function(e){e[e.Character=0]="Character",e[e.Identifier=1]="Identifier",e[e.PrivateIdentifier=2]="PrivateIdentifier",e[e.Keyword=3]="Keyword",e[e.String=4]="String",e[e.Operator=5]="Operator",e[e.Number=6]="Number",e[e.Error=7]="Error"}(S||(S={})),St=["var","let","as","null","undefined","true","false","if","else","this"],er=class{tokenize(e){let t=new Ve(e),r=[],n=t.scanToken();for(;n!=null;)r.push(n),n=t.scanToken();return r}},M=class{constructor(e,t,r,n,s){this.index=e,this.end=t,this.type=r,this.numValue=n,this.strValue=s}isCharacter(e){return this.type==S.Character&&this.numValue==e}isNumber(){return this.type==S.Number}isString(){return this.type==S.String}isOperator(e){return this.type==S.Operator&&this.strValue==e}isIdentifier(){return this.type==S.Identifier}isPrivateIdentifier(){return this.type==S.PrivateIdentifier}isKeyword(){return this.type==S.Keyword}isKeywordLet(){return this.type==S.Keyword&&this.strValue=="let"}isKeywordAs(){return this.type==S.Keyword&&this.strValue=="as"}isKeywordNull(){return this.type==S.Keyword&&this.strValue=="null"}isKeywordUndefined(){return this.type==S.Keyword&&this.strValue=="undefined"}isKeywordTrue(){return this.type==S.Keyword&&this.strValue=="true"}isKeywordFalse(){return this.type==S.Keyword&&this.strValue=="false"}isKeywordThis(){return this.type==S.Keyword&&this.strValue=="this"}isError(){return this.type==S.Error}toNumber(){return this.type==S.Number?this.numValue:-1}toString(){switch(this.type){case S.Character:case S.Identifier:case S.Keyword:case S.Operator:case S.PrivateIdentifier:case S.String:case S.Error:return this.strValue;case S.Number:return this.numValue.toString();default:return null}}},Ie=new M(-1,-1,S.Character,0,""),Ve=class{constructor(e){this.input=e,this.peek=0,this.index=-1,this.length=e.length,this.advance()}advance(){this.peek=++this.index>=this.length?Ce:this.input.charCodeAt(this.index)}scanToken(){let e=this.input,t=this.length,r=this.peek,n=this.index;for(;r<=nt;)if(++n>=t){r=Ce;break}else r=e.charCodeAt(n);if(this.peek=r,this.index=n,n>=t)return null;if(We(r))return this.scanIdentifier();if(Q(r))return this.scanNumber(n);let s=n;switch(r){case H:return this.advance(),Q(this.peek)?this.scanNumber(s):xt(s,this.index,H);case Ee:case z:case $e:case _e:case Ae:case re:case ee:case X:case te:return this.scanCharacter(s,r);case at:case st:return this.scanString();case Rt:return this.scanPrivateIdentifier();case ot:case ct:case $t:case Te:case Tt:case Wt:return this.scanOperator(s,String.fromCharCode(r));case Fe:return this.scanQuestion(s);case Bt:case Kt:return this.scanComplexOperator(s,String.fromCharCode(r),ie,"=");case Lt:case ie:return this.scanComplexOperator(s,String.fromCharCode(r),ie,"=",ie,"=");case je:return this.scanComplexOperator(s,"&",je,"&");case Ue:return this.scanComplexOperator(s,"|",Ue,"|");case dt:for(;vr(this.peek);)this.advance();return this.scanToken()}return this.advance(),this.error(`Unexpected character [${String.fromCharCode(r)}]`,0)}scanCharacter(e,t){return this.advance(),xt(e,this.index,t)}scanOperator(e,t){return this.advance(),Ke(e,this.index,t)}scanComplexOperator(e,t,r,n,s,a){this.advance();let i=t;return this.peek==r&&(this.advance(),i+=n),s!=null&&this.peek==s&&(this.advance(),i+=a),Ke(e,this.index,i)}scanIdentifier(){let e=this.index;for(this.advance();Ge(this.peek);)this.advance();let t=this.input.substring(e,this.index);return St.indexOf(t)>-1?yr(e,this.index,t):xr(e,this.index,t)}scanPrivateIdentifier(){let e=this.index;if(this.advance(),!We(this.peek))return this.error("Invalid character [#]",-1);for(;Ge(this.peek);)this.advance();let t=this.input.substring(e,this.index);return Sr(e,this.index,t)}scanNumber(e){let t=this.index===e,r=!1;for(this.advance();;){if(!Q(this.peek))if(this.peek===Be){if(!Q(this.input.charCodeAt(this.index-1))||!Q(this.input.charCodeAt(this.index+1)))return this.error("Invalid numeric separator",0);r=!0}else if(this.peek===H)t=!1;else if(Er(this.peek)){if(this.advance(),Ar(this.peek)&&this.advance(),!Q(this.peek))return this.error("Invalid exponent",-1);t=!1}else break;this.advance()}let n=this.input.substring(e,this.index);r&&(n=n.replace(/_/g,""));let s=t?Ir(n):parseFloat(n);return Pr(e,this.index,s)}scanString(){let e=this.index,t=this.peek;this.advance();let r="",n=this.index,s=this.input;for(;this.peek!=t;)if(this.peek==Ut){r+=s.substring(n,this.index),this.advance();let i;if(this.peek=this.peek,this.peek==zt){let h=s.substring(this.index+1,this.index+5);if(/^[0-9a-f]+$/i.test(h))i=parseInt(h,16);else return this.error(`Invalid unicode escape [\\u${h}]`,0);for(let l=0;l<5;l++)this.advance()}else i=_r(this.peek),this.advance();r+=String.fromCharCode(i),n=this.index}else{if(this.peek==Ce)return this.error("Unterminated quote",0);this.advance()}let a=s.substring(n,this.index);return this.advance(),wr(e,this.index,r+a)}scanQuestion(e){this.advance();let t="?";return(this.peek===Fe||this.peek===H)&&(t+=this.peek===H?".":"?",this.advance()),Ke(e,this.index,t)}error(e,t){let r=this.index+t;return Cr(r,this.index,`Lexer Error: ${e} at column ${r} in expression [${this.input}]`)}}}});function Or(e,t){if(t!=null&&!(Array.isArray(t)&&t.length==2))throw new Error(`Expected '${e}' to be an array, [start, end].`);if(t!=null){let r=t[0],n=t[1];rr.forEach(s=>{if(s.test(r)||s.test(n))throw new Error(`['${r}', '${n}'] contains unusable interpolation symbol.`)})}}var rr,kr=Y({"node_modules/@angular/compiler/esm2015/src/assertions.js"(){L(),rr=[/^\s*$/,/[<>]/,/^[{}]$/,/&(#|[a-z])/i,/^\/\//]}}),Me,J,Nr=Y({"node_modules/@angular/compiler/esm2015/src/ml_parser/interpolation_config.js"(){L(),kr(),Me=class{constructor(e,t){this.start=e,this.end=t}static fromArray(e){return e?(Or("interpolation",e),new Me(e[0],e[1])):J}},J=new Me("{{","}}")}}),nr={};Xe(nr,{IvyParser:()=>sr,Parser:()=>De,SplitInterpolation:()=>qe,TemplateBindingParseResult:()=>Qe,_ParseAST:()=>D});var qe,Qe,De,sr,Z,D,yt,wt,br=Y({"node_modules/@angular/compiler/esm2015/src/expression_parser/parser.js"(){L(),Jt(),Nr(),tt(),tr(),qe=class{constructor(e,t,r){this.strings=e,this.expressions=t,this.offsets=r}},Qe=class{constructor(e,t,r){this.templateBindings=e,this.warnings=t,this.errors=r}},De=class{constructor(e){this._lexer=e,this.errors=[],this.simpleExpressionChecker=yt}parseAction(e,t,r){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:J;this._checkNoInterpolation(e,t,n);let s=this._stripComments(e),a=this._lexer.tokenize(this._stripComments(e)),i=new D(e,t,r,a,s.length,!0,this.errors,e.length-s.length).parseChain();return new G(i,e,t,r,this.errors)}parseBinding(e,t,r){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:J,s=this._parseBindingAst(e,t,r,n);return new G(s,e,t,r,this.errors)}checkSimpleExpression(e){let t=new this.simpleExpressionChecker;return e.visit(t),t.errors}parseSimpleBinding(e,t,r){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:J,s=this._parseBindingAst(e,t,r,n),a=this.checkSimpleExpression(s);return a.length>0&&this._reportError(`Host binding expression cannot contain ${a.join(" ")}`,e,t),new G(s,e,t,r,this.errors)}_reportError(e,t,r,n){this.errors.push(new ae(e,t,r,n))}_parseBindingAst(e,t,r,n){let s=this._parseQuote(e,t,r);if(s!=null)return s;this._checkNoInterpolation(e,t,n);let a=this._stripComments(e),i=this._lexer.tokenize(a);return new D(e,t,r,i,a.length,!1,this.errors,e.length-a.length).parseChain()}_parseQuote(e,t,r){if(e==null)return null;let n=e.indexOf(":");if(n==-1)return null;let s=e.substring(0,n).trim();if(!Zt(s))return null;let a=e.substring(n+1),i=new V(0,e.length);return new Le(i,i.toAbsolute(r),s,a,t)}parseTemplateBindings(e,t,r,n,s){let a=this._lexer.tokenize(t);return new D(t,r,s,a,t.length,!1,this.errors,0).parseTemplateBindings({source:e,span:new U(n,n+e.length)})}parseInterpolation(e,t,r){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:J,{strings:s,expressions:a,offsets:i}=this.splitInterpolation(e,t,n);if(a.length===0)return null;let h=[];for(let l=0;ll.text),h,e,t,r)}parseInterpolationExpression(e,t,r){let n=this._stripComments(e),s=this._lexer.tokenize(n),a=new D(e,t,r,s,n.length,!1,this.errors,0).parseChain(),i=["",""];return this.createInterpolationAst(i,[a],e,t,r)}createInterpolationAst(e,t,r,n,s){let a=new V(0,r.length),i=new me(a,a.toAbsolute(s),e,t);return new G(i,r,n,s,this.errors)}splitInterpolation(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:J,n=[],s=[],a=[],i=0,h=!1,l=!1,{start:P,end:p}=r;for(;i-1)break;a>-1&&i>-1&&this._reportError(`Got interpolation (${n}${s}) where expression was expected`,e,`at column ${a} in`,t)}_getInterpolationEndIndex(e,t,r){for(let n of this._forEachUnquotedChar(e,r)){if(e.startsWith(t,n))return n;if(e.startsWith("//",n))return e.indexOf(t,n)}return-1}*_forEachUnquotedChar(e,t){let r=null,n=0;for(let s=t;s=this.tokens.length}get inputIndex(){return this.atEOF?this.currentEndIndex:this.next.index+this.offset}get currentEndIndex(){return this.index>0?this.peek(-1).end+this.offset:this.tokens.length===0?this.inputLength+this.offset:this.next.index+this.offset}get currentAbsoluteOffset(){return this.absoluteOffset+this.inputIndex}span(e,t){let r=this.currentEndIndex;if(t!==void 0&&t>this.currentEndIndex&&(r=t),e>r){let n=r;r=e,e=n}return new V(e,r)}sourceSpan(e,t){let r=`${e}@${this.inputIndex}:${t}`;return this.sourceSpanCache.has(r)||this.sourceSpanCache.set(r,this.span(e,t).toAbsolute(this.absoluteOffset)),this.sourceSpanCache.get(r)}advance(){this.index++}withContext(e,t){this.context|=e;let r=t();return this.context^=e,r}consumeOptionalCharacter(e){return this.next.isCharacter(e)?(this.advance(),!0):!1}peekKeywordLet(){return this.next.isKeywordLet()}peekKeywordAs(){return this.next.isKeywordAs()}expectCharacter(e){this.consumeOptionalCharacter(e)||this.error(`Missing expected ${String.fromCharCode(e)}`)}consumeOptionalOperator(e){return this.next.isOperator(e)?(this.advance(),!0):!1}expectOperator(e){this.consumeOptionalOperator(e)||this.error(`Missing expected operator ${e}`)}prettyPrintToken(e){return e===Ie?"end of input":`token ${e}`}expectIdentifierOrKeyword(){let e=this.next;return!e.isIdentifier()&&!e.isKeyword()?(e.isPrivateIdentifier()?this._reportErrorForPrivateIdentifier(e,"expected identifier or keyword"):this.error(`Unexpected ${this.prettyPrintToken(e)}, expected identifier or keyword`),null):(this.advance(),e.toString())}expectIdentifierOrKeywordOrString(){let e=this.next;return!e.isIdentifier()&&!e.isKeyword()&&!e.isString()?(e.isPrivateIdentifier()?this._reportErrorForPrivateIdentifier(e,"expected identifier, keyword or string"):this.error(`Unexpected ${this.prettyPrintToken(e)}, expected identifier, keyword, or string`),""):(this.advance(),e.toString())}parseChain(){let e=[],t=this.inputIndex;for(;this.index":case"<=":case">=":this.advance();let n=this.parseAdditive();t=new B(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseAdditive(){let e=this.inputIndex,t=this.parseMultiplicative();for(;this.next.type==S.Operator;){let r=this.next.strValue;switch(r){case"+":case"-":this.advance();let n=this.parseMultiplicative();t=new B(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseMultiplicative(){let e=this.inputIndex,t=this.parsePrefix();for(;this.next.type==S.Operator;){let r=this.next.strValue;switch(r){case"*":case"%":case"/":this.advance();let n=this.parsePrefix();t=new B(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parsePrefix(){if(this.next.type==S.Operator){let e=this.inputIndex,t=this.next.strValue,r;switch(t){case"+":return this.advance(),r=this.parsePrefix(),F.createPlus(this.span(e),this.sourceSpan(e),r);case"-":return this.advance(),r=this.parsePrefix(),F.createMinus(this.span(e),this.sourceSpan(e),r);case"!":return this.advance(),r=this.parsePrefix(),new xe(this.span(e),this.sourceSpan(e),r)}}return this.parseCallChain()}parseCallChain(){let e=this.inputIndex,t=this.parsePrimary();for(;;)if(this.consumeOptionalCharacter(H))t=this.parseAccessMemberOrMethodCall(t,e,!1);else if(this.consumeOptionalOperator("?."))t=this.consumeOptionalCharacter(Ae)?this.parseKeyedReadOrWrite(t,e,!0):this.parseAccessMemberOrMethodCall(t,e,!0);else if(this.consumeOptionalCharacter(Ae))t=this.parseKeyedReadOrWrite(t,e,!1);else if(this.consumeOptionalCharacter(Ee)){this.rparensExpected++;let r=this.parseCallArguments();this.rparensExpected--,this.expectCharacter(z),t=new Pe(this.span(e),this.sourceSpan(e),t,r)}else if(this.consumeOptionalOperator("!"))t=new Se(this.span(e),this.sourceSpan(e),t);else return t}parsePrimary(){let e=this.inputIndex;if(this.consumeOptionalCharacter(Ee)){this.rparensExpected++;let t=this.parsePipe();return this.rparensExpected--,this.expectCharacter(z),t}else{if(this.next.isKeywordNull())return this.advance(),new $(this.span(e),this.sourceSpan(e),null);if(this.next.isKeywordUndefined())return this.advance(),new $(this.span(e),this.sourceSpan(e),void 0);if(this.next.isKeywordTrue())return this.advance(),new $(this.span(e),this.sourceSpan(e),!0);if(this.next.isKeywordFalse())return this.advance(),new $(this.span(e),this.sourceSpan(e),!1);if(this.next.isKeywordThis())return this.advance(),new Ye(this.span(e),this.sourceSpan(e));if(this.consumeOptionalCharacter(Ae)){this.rbracketsExpected++;let t=this.parseExpressionList(re);return this.rbracketsExpected--,this.expectCharacter(re),new ge(this.span(e),this.sourceSpan(e),t)}else{if(this.next.isCharacter($e))return this.parseLiteralMap();if(this.next.isIdentifier())return this.parseAccessMemberOrMethodCall(new Oe(this.span(e),this.sourceSpan(e)),e,!1);if(this.next.isNumber()){let t=this.next.toNumber();return this.advance(),new $(this.span(e),this.sourceSpan(e),t)}else if(this.next.isString()){let t=this.next.toString();return this.advance(),new $(this.span(e),this.sourceSpan(e),t)}else return this.next.isPrivateIdentifier()?(this._reportErrorForPrivateIdentifier(this.next,null),new K(this.span(e),this.sourceSpan(e))):this.index>=this.tokens.length?(this.error(`Unexpected end of expression: ${this.input}`),new K(this.span(e),this.sourceSpan(e))):(this.error(`Unexpected token ${this.next}`),new K(this.span(e),this.sourceSpan(e)))}}}parseExpressionList(e){let t=[];do if(!this.next.isCharacter(e))t.push(this.parsePipe());else break;while(this.consumeOptionalCharacter(ee));return t}parseLiteralMap(){let e=[],t=[],r=this.inputIndex;if(this.expectCharacter($e),!this.consumeOptionalCharacter(_e)){this.rbracesExpected++;do{let n=this.inputIndex,s=this.next.isString(),a=this.expectIdentifierOrKeywordOrString();if(e.push({key:a,quoted:s}),s)this.expectCharacter(X),t.push(this.parsePipe());else if(this.consumeOptionalCharacter(X))t.push(this.parsePipe());else{let i=this.span(n),h=this.sourceSpan(n);t.push(new ne(i,h,h,new Oe(i,h),a))}}while(this.consumeOptionalCharacter(ee));this.rbracesExpected--,this.expectCharacter(_e)}return new ve(this.span(r),this.sourceSpan(r),e,t)}parseAccessMemberOrMethodCall(e,t,r){let n=this.inputIndex,s=this.withContext(Z.Writable,()=>{var i;let h=(i=this.expectIdentifierOrKeyword())!==null&&i!==void 0?i:"";return h.length===0&&this.error("Expected identifier for property access",e.span.end),h}),a=this.sourceSpan(n);if(this.consumeOptionalCharacter(Ee)){let i=this.inputIndex;this.rparensExpected++;let h=this.parseCallArguments(),l=this.span(i,this.inputIndex).toAbsolute(this.absoluteOffset);this.expectCharacter(z),this.rparensExpected--;let P=this.span(t),p=this.sourceSpan(t);return r?new we(P,p,a,e,s,h,l):new ye(P,p,a,e,s,h,l)}else{if(r)return this.consumeOptionalOperator("=")?(this.error("The '?.' operator cannot be used in the assignment"),new K(this.span(t),this.sourceSpan(t))):new le(this.span(t),this.sourceSpan(t),a,e,s);if(this.consumeOptionalOperator("=")){if(!this.parseAction)return this.error("Bindings cannot contain assignments"),new K(this.span(t),this.sourceSpan(t));let i=this.parseConditional();return new ue(this.span(t),this.sourceSpan(t),a,e,s,i)}else return new ne(this.span(t),this.sourceSpan(t),a,e,s)}}parseCallArguments(){if(this.next.isCharacter(z))return[];let e=[];do e.push(this.parsePipe());while(this.consumeOptionalCharacter(ee));return e}expectTemplateBindingKey(){let e="",t=!1,r=this.currentAbsoluteOffset;do e+=this.expectIdentifierOrKeywordOrString(),t=this.consumeOptionalOperator("-"),t&&(e+="-");while(t);return{source:e,span:new U(r,r+e.length)}}parseTemplateBindings(e){let t=[];for(t.push(...this.parseDirectiveKeywordBindings(e));this.index{this.rbracketsExpected++;let n=this.parsePipe();if(n instanceof K&&this.error("Key access cannot be empty"),this.rbracketsExpected--,this.expectCharacter(re),this.consumeOptionalOperator("="))if(r)this.error("The '?.' operator cannot be used in the assignment");else{let s=this.parseConditional();return new de(this.span(t),this.sourceSpan(t),e,n,s)}else return r?new pe(this.span(t),this.sourceSpan(t),e,n):new he(this.span(t),this.sourceSpan(t),e,n);return new K(this.span(t),this.sourceSpan(t))})}parseDirectiveKeywordBindings(e){let t=[];this.consumeOptionalCharacter(X);let r=this.getDirectiveBoundTarget(),n=this.currentAbsoluteOffset,s=this.parseAsBinding(e);s||(this.consumeStatementTerminator(),n=this.currentAbsoluteOffset);let a=new U(e.span.start,n);return t.push(new Ze(a,e,r)),s&&t.push(s),t}getDirectiveBoundTarget(){if(this.next===Ie||this.peekKeywordAs()||this.peekKeywordLet())return null;let e=this.parsePipe(),{start:t,end:r}=e.span,n=this.input.substring(t,r);return new G(e,n,this.location,this.absoluteOffset+t,this.errors)}parseAsBinding(e){if(!this.peekKeywordAs())return null;this.advance();let t=this.expectTemplateBindingKey();this.consumeStatementTerminator();let r=new U(e.span.start,this.currentAbsoluteOffset);return new Re(r,t,e)}parseLetBinding(){if(!this.peekKeywordLet())return null;let e=this.currentAbsoluteOffset;this.advance();let t=this.expectTemplateBindingKey(),r=null;this.consumeOptionalOperator("=")&&(r=this.expectTemplateBindingKey()),this.consumeStatementTerminator();let n=new U(e,this.currentAbsoluteOffset);return new Re(n,t,r)}consumeStatementTerminator(){this.consumeOptionalCharacter(te)||this.consumeOptionalCharacter(ee)}error(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;this.errors.push(new ae(e,this.input,this.locationText(t),this.location)),this.skip()}locationText(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;return e==null&&(e=this.index),er.visit(this,t))}visitChain(e,t){}visitQuote(e,t){}visitSafeKeyedRead(e,t){}},wt=class extends et{constructor(){super(...arguments),this.errors=[]}visitPipe(){this.errors.push("pipes")}}}}),ft=q({"node_modules/angular-estree-parser/lib/utils.js"(e){"use strict";L(),Object.defineProperty(e,"__esModule",{value:!0}),e.getLast=e.toLowerCamelCase=e.findBackChar=e.findFrontChar=e.fitSpans=e.getNgType=e.parseNgInterpolation=e.parseNgTemplateBindings=e.parseNgAction=e.parseNgSimpleBinding=e.parseNgBinding=e.NG_PARSE_TEMPLATE_BINDINGS_FAKE_PREFIX=void 0;var t=(tt(),be(Je)),r=(tr(),be(Yt)),n=(br(),be(nr)),s="angular-estree-parser";e.NG_PARSE_TEMPLATE_BINDINGS_FAKE_PREFIX="NgEstreeParser";var a=0,i=[s,a];function h(){return new n.Parser(new r.Lexer)}function l(o,d){let y=h(),{astInput:E,comments:A}=T(o,y),{ast:I,errors:j}=d(E,y);return R(j),{ast:I,comments:A}}function P(o){return l(o,(d,y)=>y.parseBinding(d,...i))}e.parseNgBinding=P;function p(o){return l(o,(d,y)=>y.parseSimpleBinding(d,...i))}e.parseNgSimpleBinding=p;function x(o){return l(o,(d,y)=>y.parseAction(d,...i))}e.parseNgAction=x;function C(o){let d=h(),{templateBindings:y,errors:E}=d.parseTemplateBindings(e.NG_PARSE_TEMPLATE_BINDINGS_FAKE_PREFIX,o,s,a,a);return R(E),y}e.parseNgTemplateBindings=C;function b(o){let d=h(),{astInput:y,comments:E}=T(o,d),A="{{",I="}}",{ast:j,errors:or}=d.parseInterpolation(A+y+I,...i);R(or);let gt=j.expressions[0],vt=new Set;return _(gt,ke=>{vt.has(ke)||(ke.start-=A.length,ke.end-=A.length,vt.add(ke))}),{ast:gt,comments:E}}e.parseNgInterpolation=b;function _(o,d){if(!(!o||typeof o!="object")){if(Array.isArray(o))return o.forEach(y=>_(y,d));for(let y of Object.keys(o)){let E=o[y];y==="span"?d(E):_(E,d)}}}function R(o){if(o.length!==0){let[{message:d}]=o;throw new SyntaxError(d.replace(/^Parser Error: | at column \d+ in [^]*$/g,""))}}function T(o,d){let y=d._commentStart(o);return y===null?{astInput:o,comments:[]}:{astInput:o.slice(0,y),comments:[{type:"Comment",value:o.slice(y+2),span:{start:y,end:o.length}}]}}function O(o){return t.Unary&&o instanceof t.Unary?"Unary":o instanceof t.Binary?"Binary":o instanceof t.BindingPipe?"BindingPipe":o instanceof t.Chain?"Chain":o instanceof t.Conditional?"Conditional":o instanceof t.EmptyExpr?"EmptyExpr":o instanceof t.FunctionCall?"FunctionCall":o instanceof t.ImplicitReceiver?"ImplicitReceiver":o instanceof t.KeyedRead?"KeyedRead":o instanceof t.KeyedWrite?"KeyedWrite":o instanceof t.LiteralArray?"LiteralArray":o instanceof t.LiteralMap?"LiteralMap":o instanceof t.LiteralPrimitive?"LiteralPrimitive":o instanceof t.MethodCall?"MethodCall":o instanceof t.NonNullAssert?"NonNullAssert":o instanceof t.PrefixNot?"PrefixNot":o instanceof t.PropertyRead?"PropertyRead":o instanceof t.PropertyWrite?"PropertyWrite":o instanceof t.Quote?"Quote":o instanceof t.SafeMethodCall?"SafeMethodCall":o instanceof t.SafePropertyRead?"SafePropertyRead":o.type}e.getNgType=O;function N(o,d){let{start:y,end:E}=o,A=y,I=E;for(;I!==A&&/\s/.test(d[I-1]);)I--;for(;A!==I&&/\s/.test(d[A]);)A++;return{start:A,end:I}}function c(o,d){let{start:y,end:E}=o,A=y,I=E;for(;I!==d.length&&/\s/.test(d[I]);)I++;for(;A!==0&&/\s/.test(d[A-1]);)A--;return{start:A,end:I}}function g(o,d){return d[o.start-1]==="("&&d[o.end]===")"?{start:o.start-1,end:o.end+1}:o}function u(o,d,y){let E=0,A={start:o.start,end:o.end};for(;;){let I=c(A,d),j=g(I,d);if(I.start===j.start&&I.end===j.end)break;A.start=j.start,A.end=j.end,E++}return{hasParens:(y?E-1:E)!==0,outerSpan:N(y?{start:A.start+1,end:A.end-1}:A,d),innerSpan:N(o,d)}}e.fitSpans=u;function v(o,d,y){let E=d;for(;!o.test(y[E]);)if(--E<0)throw new Error(`Cannot find front char ${o} from index ${d} in ${JSON.stringify(y)}`);return E}e.findFrontChar=v;function m(o,d,y){let E=d;for(;!o.test(y[E]);)if(++E>=y.length)throw new Error(`Cannot find back char ${o} from index ${d} in ${JSON.stringify(y)}`);return E}e.findBackChar=m;function f(o){return o.slice(0,1).toLowerCase()+o.slice(1)}e.toLowerCamelCase=f;function w(o){return o.length===0?void 0:o[o.length-1]}e.getLast=w}}),ir=q({"node_modules/angular-estree-parser/lib/transform.js"(e){"use strict";L(),Object.defineProperty(e,"__esModule",{value:!0}),e.transformSpan=e.transform=void 0;var t=ft(),r=function(s,a){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,h=t.getNgType(s);switch(h){case"Unary":{let{operator:c,expr:g}=s,u=l(g);return p("UnaryExpression",{prefix:!0,argument:u,operator:c},s.span,{hasParentParens:i})}case"Binary":{let{left:c,operation:g,right:u}=s,v=u.span.start===u.span.end,m=c.span.start===c.span.end;if(v||m){let o=c.span.start===c.span.end?l(u):l(c);return p("UnaryExpression",{prefix:!0,argument:o,operator:v?"+":"-"},{start:s.span.start,end:N(o)},{hasParentParens:i})}let f=l(c),w=l(u);return p(g==="&&"||g==="||"?"LogicalExpression":"BinaryExpression",{left:f,right:w,operator:g},{start:O(f),end:N(w)},{hasParentParens:i})}case"BindingPipe":{let{exp:c,name:g,args:u}=s,v=l(c),m=b(/\S/,b(/\|/,N(v))+1),f=p("Identifier",{name:g},{start:m,end:m+g.length}),w=u.map(l);return p("NGPipeExpression",{left:v,right:f,arguments:w},{start:O(v),end:N(w.length===0?f:t.getLast(w))},{hasParentParens:i})}case"Chain":{let{expressions:c}=s;return p("NGChainedExpression",{expressions:c.map(l)},s.span,{hasParentParens:i})}case"Comment":{let{value:c}=s;return p("CommentLine",{value:c},s.span,{processSpan:!1})}case"Conditional":{let{condition:c,trueExp:g,falseExp:u}=s,v=l(c),m=l(g),f=l(u);return p("ConditionalExpression",{test:v,consequent:m,alternate:f},{start:O(v),end:N(f)},{hasParentParens:i})}case"EmptyExpr":return p("NGEmptyExpression",{},s.span,{hasParentParens:i});case"FunctionCall":{let{target:c,args:g}=s,u=g.length===1?[P(g[0])]:g.map(l),v=l(c);return p("CallExpression",{callee:v,arguments:u},{start:O(v),end:s.span.end},{hasParentParens:i})}case"ImplicitReceiver":return p("ThisExpression",{},s.span,{hasParentParens:i});case"KeyedRead":{let{key:c}=s,g=Object.prototype.hasOwnProperty.call(s,"receiver")?s.receiver:s.obj,u=l(c);return x(g,u,{computed:!0,optional:!1},{end:s.span.end,hasParentParens:i})}case"LiteralArray":{let{expressions:c}=s;return p("ArrayExpression",{elements:c.map(l)},s.span,{hasParentParens:i})}case"LiteralMap":{let{keys:c,values:g}=s,u=g.map(m=>l(m)),v=c.map((m,f)=>{let{key:w,quoted:o}=m,d=u[f],y=b(/\S/,f===0?s.span.start+1:b(/,/,N(u[f-1]))+1),E=C(/\S/,C(/:/,O(d)-1)-1)+1,A={start:y,end:E},I=o?p("StringLiteral",{value:w},A):p("Identifier",{name:w},A),j=I.end3&&arguments[3]!==void 0?arguments[3]:{},f=Object.assign(Object.assign({type:c},n(u,a,v,m)),g);switch(c){case"Identifier":{let w=f;w.loc.identifierName=w.name;break}case"NumericLiteral":{let w=f;w.extra=Object.assign(Object.assign({},w.extra),{raw:a.text.slice(w.start,w.end),rawValue:w.value});break}case"StringLiteral":{let w=f;w.extra=Object.assign(Object.assign({},w.extra),{raw:a.text.slice(w.start,w.end),rawValue:w.value});break}}return f}function x(c,g,u){let{end:v=N(g),hasParentParens:m=!1}=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};if(_(c)||c.span.start===g.start)return g;let f=l(c),w=R(f);return p(u.optional||w?"OptionalMemberExpression":"MemberExpression",Object.assign({object:f,property:g,computed:u.computed},u.optional?{optional:!0}:w?{optional:!1}:null),{start:O(f),end:v},{hasParentParens:m})}function C(c,g){return t.findFrontChar(c,g,a.text)}function b(c,g){return t.findBackChar(c,g,a.text)}function _(c){return c.span.start>=c.span.end||/^\s+$/.test(a.text.slice(c.span.start,c.span.end))}function R(c){return(c.type==="OptionalCallExpression"||c.type==="OptionalMemberExpression")&&!T(c)}function T(c){return c.extra&&c.extra.parenthesized}function O(c){return T(c)?c.extra.parenStart:c.start}function N(c){return T(c)?c.extra.parenEnd:c.end}};e.transform=r;function n(s,a){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,h=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!i){let{start:x,end:C}=s;return{start:x,end:C,loc:{start:a.locator.locationForIndex(x),end:a.locator.locationForIndex(C)}}}let{outerSpan:l,innerSpan:P,hasParens:p}=t.fitSpans(s,a.text,h);return Object.assign({start:P.start,end:P.end,loc:{start:a.locator.locationForIndex(P.start),end:a.locator.locationForIndex(P.end)}},p&&{extra:{parenthesized:!0,parenStart:l.start,parenEnd:l.end}})}e.transformSpan=n}}),Lr=q({"node_modules/angular-estree-parser/lib/transform-microsyntax.js"(e){"use strict";L(),Object.defineProperty(e,"__esModule",{value:!0}),e.transformTemplateBindings=void 0;var t=(tt(),be(Je)),r=ir(),n=ft();function s(a,i){a.forEach(N);let[h]=a,{key:l}=h,P=i.text.slice(h.sourceSpan.start,h.sourceSpan.end).trim().length===0?a.slice(1):a,p=[],x=null;for(let u=0;uObject.assign(Object.assign({},d),r.transformSpan({start:d.start,end:y},i)),w=d=>Object.assign(Object.assign({},f(d,m.end)),{alias:m}),o=p.pop();if(o.type==="NGMicrosyntaxExpression")p.push(w(o));else if(o.type==="NGMicrosyntaxKeyedExpression"){let d=w(o.expression);p.push(f(Object.assign(Object.assign({},o),{expression:d}),d.end))}else throw new Error(`Unexpected type ${o.type}`)}else p.push(C(v,u));x=v}return _("NGMicrosyntax",{body:p},p.length===0?a[0].sourceSpan:{start:p[0].start,end:p[p.length-1].end});function C(u,v){if(T(u)){let{key:m,value:f}=u;return f?v===0?_("NGMicrosyntaxExpression",{expression:b(f.ast),alias:null},f.sourceSpan):_("NGMicrosyntaxKeyedExpression",{key:_("NGMicrosyntaxKey",{name:R(m.source)},m.span),expression:_("NGMicrosyntaxExpression",{expression:b(f.ast),alias:null},f.sourceSpan)},{start:m.span.start,end:f.sourceSpan.end}):_("NGMicrosyntaxKey",{name:R(m.source)},m.span)}else{let{key:m,sourceSpan:f}=u;if(/^let\s$/.test(i.text.slice(f.start,f.start+4))){let{value:o}=u;return _("NGMicrosyntaxLet",{key:_("NGMicrosyntaxKey",{name:m.source},m.span),value:o?_("NGMicrosyntaxKey",{name:o.source},o.span):null},{start:f.start,end:o?o.span.end:m.span.end})}else{let o=g(u);return _("NGMicrosyntaxAs",{key:_("NGMicrosyntaxKey",{name:o.source},o.span),alias:_("NGMicrosyntaxKey",{name:m.source},m.span)},{start:o.span.start,end:m.span.end})}}}function b(u){return r.transform(u,i)}function _(u,v,m){let f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;return Object.assign(Object.assign({type:u},r.transformSpan(m,i,f)),v)}function R(u){return n.toLowerCamelCase(u.slice(l.source.length))}function T(u){return u instanceof t.ExpressionBinding}function O(u){return u instanceof t.VariableBinding}function N(u){c(u.key.span),O(u)&&u.value&&c(u.value.span)}function c(u){if(i.text[u.start]!=='"'&&i.text[u.start]!=="'")return;let v=i.text[u.start],m=!1;for(let f=u.start+1;fr.transform(N,R),O=T(b);return O.comments=_.map(T),O}function i(x){return a(x,s.parseNgBinding)}e.parseBinding=i;function h(x){return a(x,s.parseNgSimpleBinding)}e.parseSimpleBinding=h;function l(x){return a(x,s.parseNgInterpolation)}e.parseInterpolation=l;function P(x){return a(x,s.parseNgAction)}e.parseAction=P;function p(x){return n.transformTemplateBindings(s.parseNgTemplateBindings(x),new t.Context(x))}e.parseTemplateBindings=p}});L();var{locStart:Tr,locEnd:$r}=dr();function Ne(e){return{astFormat:"estree",parse:(r,n,s)=>{let a=Rr(),i=e(r,a);return{type:"NGRoot",node:s.parser==="__ng_action"&&i.type!=="NGChainedExpression"?Object.assign(Object.assign({},i),{},{type:"NGChainedExpression",expressions:[i]}):i}},locStart:Tr,locEnd:$r}}ar.exports={parsers:{__ng_action:Ne((e,t)=>t.parseAction(e)),__ng_binding:Ne((e,t)=>t.parseBinding(e)),__ng_interpolation:Ne((e,t)=>t.parseInterpolation(e)),__ng_directive:Ne((e,t)=>t.parseTemplateBindings(e))}}});return Br();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-babel.js b/node_modules/prettier/parser-babel.js new file mode 100644 index 0000000..e397f7a --- /dev/null +++ b/node_modules/prettier/parser-babel.js @@ -0,0 +1,29 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.babel=e()}})(function(){"use strict";var E=(l,h)=>()=>(h||l((h={exports:{}}).exports,h),h.exports);var re=E((xd,Zr)=>{var Ct=function(l){return l&&l.Math==Math&&l};Zr.exports=Ct(typeof globalThis=="object"&&globalThis)||Ct(typeof window=="object"&&window)||Ct(typeof self=="object"&&self)||Ct(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var ie=E((gd,ei)=>{ei.exports=function(l){try{return!!l()}catch{return!0}}});var ye=E((Pd,ti)=>{var kh=ie();ti.exports=!kh(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var bt=E((Ad,si)=>{var Dh=ie();si.exports=!Dh(function(){var l=function(){}.bind();return typeof l!="function"||l.hasOwnProperty("prototype")})});var wt=E((Td,ri)=>{var Fh=bt(),St=Function.prototype.call;ri.exports=Fh?St.bind(St):function(){return St.apply(St,arguments)}});var oi=E(ni=>{"use strict";var ii={}.propertyIsEnumerable,ai=Object.getOwnPropertyDescriptor,Lh=ai&&!ii.call({1:2},1);ni.f=Lh?function(h){var p=ai(this,h);return!!p&&p.enumerable}:ii});var fs=E((Ed,li)=>{li.exports=function(l,h){return{enumerable:!(l&1),configurable:!(l&2),writable:!(l&4),value:h}}});var ae=E((Cd,ci)=>{var hi=bt(),ui=Function.prototype,ds=ui.call,Oh=hi&&ui.bind.bind(ds,ds);ci.exports=hi?Oh:function(l){return function(){return ds.apply(l,arguments)}}});var Ye=E((bd,fi)=>{var pi=ae(),Bh=pi({}.toString),Mh=pi("".slice);fi.exports=function(l){return Mh(Bh(l),8,-1)}});var mi=E((Sd,di)=>{var _h=ae(),Rh=ie(),jh=Ye(),ms=Object,qh=_h("".split);di.exports=Rh(function(){return!ms("z").propertyIsEnumerable(0)})?function(l){return jh(l)=="String"?qh(l,""):ms(l)}:ms});var ys=E((wd,yi)=>{yi.exports=function(l){return l==null}});var xs=E((Id,xi)=>{var Uh=ys(),$h=TypeError;xi.exports=function(l){if(Uh(l))throw $h("Can't call method on "+l);return l}});var It=E((Nd,gi)=>{var Hh=mi(),zh=xs();gi.exports=function(l){return Hh(zh(l))}});var Ps=E((kd,Pi)=>{var gs=typeof document=="object"&&document.all,Vh=typeof gs>"u"&&gs!==void 0;Pi.exports={all:gs,IS_HTMLDDA:Vh}});var ee=E((Dd,Ti)=>{var Ai=Ps(),Kh=Ai.all;Ti.exports=Ai.IS_HTMLDDA?function(l){return typeof l=="function"||l===Kh}:function(l){return typeof l=="function"}});var Ie=E((Fd,Ci)=>{var vi=ee(),Ei=Ps(),Wh=Ei.all;Ci.exports=Ei.IS_HTMLDDA?function(l){return typeof l=="object"?l!==null:vi(l)||l===Wh}:function(l){return typeof l=="object"?l!==null:vi(l)}});var Qe=E((Ld,bi)=>{var As=re(),Gh=ee(),Jh=function(l){return Gh(l)?l:void 0};bi.exports=function(l,h){return arguments.length<2?Jh(As[l]):As[l]&&As[l][h]}});var wi=E((Od,Si)=>{var Xh=ae();Si.exports=Xh({}.isPrototypeOf)});var Ni=E((Bd,Ii)=>{var Yh=Qe();Ii.exports=Yh("navigator","userAgent")||""});var Mi=E((Md,Bi)=>{var Oi=re(),Ts=Ni(),ki=Oi.process,Di=Oi.Deno,Fi=ki&&ki.versions||Di&&Di.version,Li=Fi&&Fi.v8,ne,Nt;Li&&(ne=Li.split("."),Nt=ne[0]>0&&ne[0]<4?1:+(ne[0]+ne[1]));!Nt&&Ts&&(ne=Ts.match(/Edge\/(\d+)/),(!ne||ne[1]>=74)&&(ne=Ts.match(/Chrome\/(\d+)/),ne&&(Nt=+ne[1])));Bi.exports=Nt});var vs=E((_d,Ri)=>{var _i=Mi(),Qh=ie();Ri.exports=!!Object.getOwnPropertySymbols&&!Qh(function(){var l=Symbol();return!String(l)||!(Object(l)instanceof Symbol)||!Symbol.sham&&_i&&_i<41})});var Es=E((Rd,ji)=>{var Zh=vs();ji.exports=Zh&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Cs=E((jd,qi)=>{var eu=Qe(),tu=ee(),su=wi(),ru=Es(),iu=Object;qi.exports=ru?function(l){return typeof l=="symbol"}:function(l){var h=eu("Symbol");return tu(h)&&su(h.prototype,iu(l))}});var $i=E((qd,Ui)=>{var au=String;Ui.exports=function(l){try{return au(l)}catch{return"Object"}}});var kt=E((Ud,Hi)=>{var nu=ee(),ou=$i(),lu=TypeError;Hi.exports=function(l){if(nu(l))return l;throw lu(ou(l)+" is not a function")}});var Vi=E(($d,zi)=>{var hu=kt(),uu=ys();zi.exports=function(l,h){var p=l[h];return uu(p)?void 0:hu(p)}});var Wi=E((Hd,Ki)=>{var bs=wt(),Ss=ee(),ws=Ie(),cu=TypeError;Ki.exports=function(l,h){var p,d;if(h==="string"&&Ss(p=l.toString)&&!ws(d=bs(p,l))||Ss(p=l.valueOf)&&!ws(d=bs(p,l))||h!=="string"&&Ss(p=l.toString)&&!ws(d=bs(p,l)))return d;throw cu("Can't convert object to primitive value")}});var Ji=E((zd,Gi)=>{Gi.exports=!1});var Dt=E((Vd,Yi)=>{var Xi=re(),pu=Object.defineProperty;Yi.exports=function(l,h){try{pu(Xi,l,{value:h,configurable:!0,writable:!0})}catch{Xi[l]=h}return h}});var Ft=E((Kd,Zi)=>{var fu=re(),du=Dt(),Qi="__core-js_shared__",mu=fu[Qi]||du(Qi,{});Zi.exports=mu});var Is=E((Wd,ta)=>{var yu=Ji(),ea=Ft();(ta.exports=function(l,h){return ea[l]||(ea[l]=h!==void 0?h:{})})("versions",[]).push({version:"3.26.1",mode:yu?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var Ns=E((Gd,sa)=>{var xu=xs(),gu=Object;sa.exports=function(l){return gu(xu(l))}});var ve=E((Jd,ra)=>{var Pu=ae(),Au=Ns(),Tu=Pu({}.hasOwnProperty);ra.exports=Object.hasOwn||function(h,p){return Tu(Au(h),p)}});var ks=E((Xd,ia)=>{var vu=ae(),Eu=0,Cu=Math.random(),bu=vu(1 .toString);ia.exports=function(l){return"Symbol("+(l===void 0?"":l)+")_"+bu(++Eu+Cu,36)}});var Ze=E((Yd,ha)=>{var Su=re(),wu=Is(),aa=ve(),Iu=ks(),na=vs(),la=Es(),qe=wu("wks"),Ne=Su.Symbol,oa=Ne&&Ne.for,Nu=la?Ne:Ne&&Ne.withoutSetter||Iu;ha.exports=function(l){if(!aa(qe,l)||!(na||typeof qe[l]=="string")){var h="Symbol."+l;na&&aa(Ne,l)?qe[l]=Ne[l]:la&&oa?qe[l]=oa(h):qe[l]=Nu(h)}return qe[l]}});var fa=E((Qd,pa)=>{var ku=wt(),ua=Ie(),ca=Cs(),Du=Vi(),Fu=Wi(),Lu=Ze(),Ou=TypeError,Bu=Lu("toPrimitive");pa.exports=function(l,h){if(!ua(l)||ca(l))return l;var p=Du(l,Bu),d;if(p){if(h===void 0&&(h="default"),d=ku(p,l,h),!ua(d)||ca(d))return d;throw Ou("Can't convert object to primitive value")}return h===void 0&&(h="number"),Fu(l,h)}});var Ds=E((Zd,da)=>{var Mu=fa(),_u=Cs();da.exports=function(l){var h=Mu(l,"string");return _u(h)?h:h+""}});var xa=E((em,ya)=>{var Ru=re(),ma=Ie(),Fs=Ru.document,ju=ma(Fs)&&ma(Fs.createElement);ya.exports=function(l){return ju?Fs.createElement(l):{}}});var Ls=E((tm,ga)=>{var qu=ye(),Uu=ie(),$u=xa();ga.exports=!qu&&!Uu(function(){return Object.defineProperty($u("div"),"a",{get:function(){return 7}}).a!=7})});var Os=E(Aa=>{var Hu=ye(),zu=wt(),Vu=oi(),Ku=fs(),Wu=It(),Gu=Ds(),Ju=ve(),Xu=Ls(),Pa=Object.getOwnPropertyDescriptor;Aa.f=Hu?Pa:function(h,p){if(h=Wu(h),p=Gu(p),Xu)try{return Pa(h,p)}catch{}if(Ju(h,p))return Ku(!zu(Vu.f,h,p),h[p])}});var va=E((rm,Ta)=>{var Yu=ye(),Qu=ie();Ta.exports=Yu&&Qu(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Lt=E((im,Ea)=>{var Zu=Ie(),ec=String,tc=TypeError;Ea.exports=function(l){if(Zu(l))return l;throw tc(ec(l)+" is not an object")}});var et=E(ba=>{var sc=ye(),rc=Ls(),ic=va(),Ot=Lt(),Ca=Ds(),ac=TypeError,Bs=Object.defineProperty,nc=Object.getOwnPropertyDescriptor,Ms="enumerable",_s="configurable",Rs="writable";ba.f=sc?ic?function(h,p,d){if(Ot(h),p=Ca(p),Ot(d),typeof h=="function"&&p==="prototype"&&"value"in d&&Rs in d&&!d[Rs]){var x=nc(h,p);x&&x[Rs]&&(h[p]=d.value,d={configurable:_s in d?d[_s]:x[_s],enumerable:Ms in d?d[Ms]:x[Ms],writable:!1})}return Bs(h,p,d)}:Bs:function(h,p,d){if(Ot(h),p=Ca(p),Ot(d),rc)try{return Bs(h,p,d)}catch{}if("get"in d||"set"in d)throw ac("Accessors not supported");return"value"in d&&(h[p]=d.value),h}});var js=E((nm,Sa)=>{var oc=ye(),lc=et(),hc=fs();Sa.exports=oc?function(l,h,p){return lc.f(l,h,hc(1,p))}:function(l,h,p){return l[h]=p,l}});var Na=E((om,Ia)=>{var qs=ye(),uc=ve(),wa=Function.prototype,cc=qs&&Object.getOwnPropertyDescriptor,Us=uc(wa,"name"),pc=Us&&function(){}.name==="something",fc=Us&&(!qs||qs&&cc(wa,"name").configurable);Ia.exports={EXISTS:Us,PROPER:pc,CONFIGURABLE:fc}});var Hs=E((lm,ka)=>{var dc=ae(),mc=ee(),$s=Ft(),yc=dc(Function.toString);mc($s.inspectSource)||($s.inspectSource=function(l){return yc(l)});ka.exports=$s.inspectSource});var La=E((hm,Fa)=>{var xc=re(),gc=ee(),Da=xc.WeakMap;Fa.exports=gc(Da)&&/native code/.test(String(Da))});var Ma=E((um,Ba)=>{var Pc=Is(),Ac=ks(),Oa=Pc("keys");Ba.exports=function(l){return Oa[l]||(Oa[l]=Ac(l))}});var zs=E((cm,_a)=>{_a.exports={}});var Ua=E((pm,qa)=>{var Tc=La(),ja=re(),vc=Ie(),Ec=js(),Vs=ve(),Ks=Ft(),Cc=Ma(),bc=zs(),Ra="Object already initialized",Ws=ja.TypeError,Sc=ja.WeakMap,Bt,tt,Mt,wc=function(l){return Mt(l)?tt(l):Bt(l,{})},Ic=function(l){return function(h){var p;if(!vc(h)||(p=tt(h)).type!==l)throw Ws("Incompatible receiver, "+l+" required");return p}};Tc||Ks.state?(oe=Ks.state||(Ks.state=new Sc),oe.get=oe.get,oe.has=oe.has,oe.set=oe.set,Bt=function(l,h){if(oe.has(l))throw Ws(Ra);return h.facade=l,oe.set(l,h),h},tt=function(l){return oe.get(l)||{}},Mt=function(l){return oe.has(l)}):(ke=Cc("state"),bc[ke]=!0,Bt=function(l,h){if(Vs(l,ke))throw Ws(Ra);return h.facade=l,Ec(l,ke,h),h},tt=function(l){return Vs(l,ke)?l[ke]:{}},Mt=function(l){return Vs(l,ke)});var oe,ke;qa.exports={set:Bt,get:tt,has:Mt,enforce:wc,getterFor:Ic}});var Js=E((fm,Ha)=>{var Nc=ie(),kc=ee(),_t=ve(),Gs=ye(),Dc=Na().CONFIGURABLE,Fc=Hs(),$a=Ua(),Lc=$a.enforce,Oc=$a.get,Rt=Object.defineProperty,Bc=Gs&&!Nc(function(){return Rt(function(){},"length",{value:8}).length!==8}),Mc=String(String).split("String"),_c=Ha.exports=function(l,h,p){String(h).slice(0,7)==="Symbol("&&(h="["+String(h).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),p&&p.getter&&(h="get "+h),p&&p.setter&&(h="set "+h),(!_t(l,"name")||Dc&&l.name!==h)&&(Gs?Rt(l,"name",{value:h,configurable:!0}):l.name=h),Bc&&p&&_t(p,"arity")&&l.length!==p.arity&&Rt(l,"length",{value:p.arity});try{p&&_t(p,"constructor")&&p.constructor?Gs&&Rt(l,"prototype",{writable:!1}):l.prototype&&(l.prototype=void 0)}catch{}var d=Lc(l);return _t(d,"source")||(d.source=Mc.join(typeof h=="string"?h:"")),l};Function.prototype.toString=_c(function(){return kc(this)&&Oc(this).source||Fc(this)},"toString")});var Va=E((dm,za)=>{var Rc=ee(),jc=et(),qc=Js(),Uc=Dt();za.exports=function(l,h,p,d){d||(d={});var x=d.enumerable,P=d.name!==void 0?d.name:h;if(Rc(p)&&qc(p,P,d),d.global)x?l[h]=p:Uc(h,p);else{try{d.unsafe?l[h]&&(x=!0):delete l[h]}catch{}x?l[h]=p:jc.f(l,h,{value:p,enumerable:!1,configurable:!d.nonConfigurable,writable:!d.nonWritable})}return l}});var Wa=E((mm,Ka)=>{var $c=Math.ceil,Hc=Math.floor;Ka.exports=Math.trunc||function(h){var p=+h;return(p>0?Hc:$c)(p)}});var Xs=E((ym,Ga)=>{var zc=Wa();Ga.exports=function(l){var h=+l;return h!==h||h===0?0:zc(h)}});var Xa=E((xm,Ja)=>{var Vc=Xs(),Kc=Math.max,Wc=Math.min;Ja.exports=function(l,h){var p=Vc(l);return p<0?Kc(p+h,0):Wc(p,h)}});var Qa=E((gm,Ya)=>{var Gc=Xs(),Jc=Math.min;Ya.exports=function(l){return l>0?Jc(Gc(l),9007199254740991):0}});var jt=E((Pm,Za)=>{var Xc=Qa();Za.exports=function(l){return Xc(l.length)}});var sn=E((Am,tn)=>{var Yc=It(),Qc=Xa(),Zc=jt(),en=function(l){return function(h,p,d){var x=Yc(h),P=Zc(x),m=Qc(d,P),v;if(l&&p!=p){for(;P>m;)if(v=x[m++],v!=v)return!0}else for(;P>m;m++)if((l||m in x)&&x[m]===p)return l||m||0;return!l&&-1}};tn.exports={includes:en(!0),indexOf:en(!1)}});var nn=E((Tm,an)=>{var ep=ae(),Ys=ve(),tp=It(),sp=sn().indexOf,rp=zs(),rn=ep([].push);an.exports=function(l,h){var p=tp(l),d=0,x=[],P;for(P in p)!Ys(rp,P)&&Ys(p,P)&&rn(x,P);for(;h.length>d;)Ys(p,P=h[d++])&&(~sp(x,P)||rn(x,P));return x}});var ln=E((vm,on)=>{on.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var un=E(hn=>{var ip=nn(),ap=ln(),np=ap.concat("length","prototype");hn.f=Object.getOwnPropertyNames||function(h){return ip(h,np)}});var pn=E(cn=>{cn.f=Object.getOwnPropertySymbols});var dn=E((bm,fn)=>{var op=Qe(),lp=ae(),hp=un(),up=pn(),cp=Lt(),pp=lp([].concat);fn.exports=op("Reflect","ownKeys")||function(h){var p=hp.f(cp(h)),d=up.f;return d?pp(p,d(h)):p}});var xn=E((Sm,yn)=>{var mn=ve(),fp=dn(),dp=Os(),mp=et();yn.exports=function(l,h,p){for(var d=fp(h),x=mp.f,P=dp.f,m=0;m{var yp=ie(),xp=ee(),gp=/#|\.prototype\./,st=function(l,h){var p=Ap[Pp(l)];return p==vp?!0:p==Tp?!1:xp(h)?yp(h):!!h},Pp=st.normalize=function(l){return String(l).replace(gp,".").toLowerCase()},Ap=st.data={},Tp=st.NATIVE="N",vp=st.POLYFILL="P";gn.exports=st});var Zs=E((Im,An)=>{var Qs=re(),Ep=Os().f,Cp=js(),bp=Va(),Sp=Dt(),wp=xn(),Ip=Pn();An.exports=function(l,h){var p=l.target,d=l.global,x=l.stat,P,m,v,S,k,F;if(d?m=Qs:x?m=Qs[p]||Sp(p,{}):m=(Qs[p]||{}).prototype,m)for(v in h){if(k=h[v],l.dontCallGetSet?(F=Ep(m,v),S=F&&F.value):S=m[v],P=Ip(d?v:p+(x?".":"#")+v,l.forced),!P&&S!==void 0){if(typeof k==typeof S)continue;wp(k,S)}(l.sham||S&&S.sham)&&Cp(k,"sham",!0),bp(m,v,k,l)}}});var Tn=E(()=>{var Np=Zs(),er=re();Np({global:!0,forced:er.globalThis!==er},{globalThis:er})});var vn=E(()=>{Tn()});var bn=E((Lm,Cn)=>{var En=Js(),kp=et();Cn.exports=function(l,h,p){return p.get&&En(p.get,h,{getter:!0}),p.set&&En(p.set,h,{setter:!0}),kp.f(l,h,p)}});var wn=E((Om,Sn)=>{"use strict";var Dp=Lt();Sn.exports=function(){var l=Dp(this),h="";return l.hasIndices&&(h+="d"),l.global&&(h+="g"),l.ignoreCase&&(h+="i"),l.multiline&&(h+="m"),l.dotAll&&(h+="s"),l.unicode&&(h+="u"),l.unicodeSets&&(h+="v"),l.sticky&&(h+="y"),h}});var kn=E(()=>{var Fp=re(),Lp=ye(),Op=bn(),Bp=wn(),Mp=ie(),In=Fp.RegExp,Nn=In.prototype,_p=Lp&&Mp(function(){var l=!0;try{In(".","d")}catch{l=!1}var h={},p="",d=l?"dgimsy":"gimsy",x=function(S,k){Object.defineProperty(h,S,{get:function(){return p+=k,!0}})},P={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};l&&(P.hasIndices="d");for(var m in P)x(m,P[m]);var v=Object.getOwnPropertyDescriptor(Nn,"flags").get.call(h);return v!==d||p!==d});_p&&Op(Nn,"flags",{configurable:!0,get:Bp})});var tr=E((_m,Dn)=>{var Rp=Ye();Dn.exports=Array.isArray||function(h){return Rp(h)=="Array"}});var Ln=E((Rm,Fn)=>{var jp=TypeError,qp=9007199254740991;Fn.exports=function(l){if(l>qp)throw jp("Maximum allowed index exceeded");return l}});var Bn=E((jm,On)=>{var Up=Ye(),$p=ae();On.exports=function(l){if(Up(l)==="Function")return $p(l)}});var Rn=E((qm,_n)=>{var Mn=Bn(),Hp=kt(),zp=bt(),Vp=Mn(Mn.bind);_n.exports=function(l,h){return Hp(l),h===void 0?l:zp?Vp(l,h):function(){return l.apply(h,arguments)}}});var Un=E((Um,qn)=>{"use strict";var Kp=tr(),Wp=jt(),Gp=Ln(),Jp=Rn(),jn=function(l,h,p,d,x,P,m,v){for(var S=x,k=0,F=m?Jp(m,v):!1,w,L;k0&&Kp(w)?(L=Wp(w),S=jn(l,h,w,L,S,P-1)-1):(Gp(S+1),l[S]=w),S++),k++;return S};qn.exports=jn});var zn=E(($m,Hn)=>{var Xp=Ze(),Yp=Xp("toStringTag"),$n={};$n[Yp]="z";Hn.exports=String($n)==="[object z]"});var Kn=E((Hm,Vn)=>{var Qp=zn(),Zp=ee(),qt=Ye(),ef=Ze(),tf=ef("toStringTag"),sf=Object,rf=qt(function(){return arguments}())=="Arguments",af=function(l,h){try{return l[h]}catch{}};Vn.exports=Qp?qt:function(l){var h,p,d;return l===void 0?"Undefined":l===null?"Null":typeof(p=af(h=sf(l),tf))=="string"?p:rf?qt(h):(d=qt(h))=="Object"&&Zp(h.callee)?"Arguments":d}});var Qn=E((zm,Yn)=>{var nf=ae(),of=ie(),Wn=ee(),lf=Kn(),hf=Qe(),uf=Hs(),Gn=function(){},cf=[],Jn=hf("Reflect","construct"),sr=/^\s*(?:class|function)\b/,pf=nf(sr.exec),ff=!sr.exec(Gn),rt=function(h){if(!Wn(h))return!1;try{return Jn(Gn,cf,h),!0}catch{return!1}},Xn=function(h){if(!Wn(h))return!1;switch(lf(h)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return ff||!!pf(sr,uf(h))}catch{return!0}};Xn.sham=!0;Yn.exports=!Jn||of(function(){var l;return rt(rt.call)||!rt(Object)||!rt(function(){l=!0})||l})?Xn:rt});var so=E((Vm,to)=>{var Zn=tr(),df=Qn(),mf=Ie(),yf=Ze(),xf=yf("species"),eo=Array;to.exports=function(l){var h;return Zn(l)&&(h=l.constructor,df(h)&&(h===eo||Zn(h.prototype))?h=void 0:mf(h)&&(h=h[xf],h===null&&(h=void 0))),h===void 0?eo:h}});var io=E((Km,ro)=>{var gf=so();ro.exports=function(l,h){return new(gf(l))(h===0?0:h)}});var ao=E(()=>{"use strict";var Pf=Zs(),Af=Un(),Tf=kt(),vf=Ns(),Ef=jt(),Cf=io();Pf({target:"Array",proto:!0},{flatMap:function(h){var p=vf(this),d=Ef(p),x;return Tf(h),x=Cf(p,0),x.length=Af(x,p,p,d,0,1,h,arguments.length>1?arguments[1]:void 0),x}})});var md=E((ty,Oo)=>{vn();kn();ao();var nr=Object.defineProperty,bf=Object.getOwnPropertyDescriptor,or=Object.getOwnPropertyNames,Sf=Object.prototype.hasOwnProperty,co=(l,h)=>function(){return l&&(h=(0,l[or(l)[0]])(l=0)),h},$=(l,h)=>function(){return h||(0,l[or(l)[0]])((h={exports:{}}).exports,h),h.exports},wf=(l,h)=>{for(var p in h)nr(l,p,{get:h[p],enumerable:!0})},If=(l,h,p,d)=>{if(h&&typeof h=="object"||typeof h=="function")for(let x of or(h))!Sf.call(l,x)&&x!==p&&nr(l,x,{get:()=>h[x],enumerable:!(d=bf(h,x))||d.enumerable});return l},Nf=l=>If(nr({},"__esModule",{value:!0}),l),U=co({""(){}}),kf=$({"src/utils/try-combinations.js"(l,h){"use strict";U();function p(){let d;for(var x=arguments.length,P=new Array(x),m=0;m{let w=F&&F.backwards;if(k===!1)return!1;let{length:L}=S,A=k;for(;A>=0&&Aar,arch:()=>Bf,cpus:()=>vo,default:()=>wo,endianness:()=>yo,freemem:()=>Ao,getNetworkInterfaces:()=>So,hostname:()=>xo,loadavg:()=>go,networkInterfaces:()=>bo,platform:()=>Mf,release:()=>Co,tmpDir:()=>rr,tmpdir:()=>ir,totalmem:()=>To,type:()=>Eo,uptime:()=>Po});function yo(){if(typeof Ut>"u"){var l=new ArrayBuffer(2),h=new Uint8Array(l),p=new Uint16Array(l);if(h[0]=1,h[1]=2,p[0]===258)Ut="BE";else if(p[0]===513)Ut="LE";else throw new Error("unable to figure out endianess")}return Ut}function xo(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function go(){return[]}function Po(){return 0}function Ao(){return Number.MAX_VALUE}function To(){return Number.MAX_VALUE}function vo(){return[]}function Eo(){return"Browser"}function Co(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function bo(){}function So(){}function Bf(){return"javascript"}function Mf(){return"browser"}function rr(){return"/tmp"}var Ut,ir,ar,wo,_f=co({"node-modules-polyfills:os"(){U(),ir=rr,ar=` +`,wo={EOL:ar,tmpdir:ir,tmpDir:rr,networkInterfaces:bo,getNetworkInterfaces:So,release:Co,type:Eo,cpus:vo,totalmem:To,freemem:Ao,uptime:Po,loadavg:go,hostname:xo,endianness:yo}}}),Rf=$({"node-modules-polyfills-commonjs:os"(l,h){U();var p=(_f(),Nf(mo));if(p&&p.default){h.exports=p.default;for(let d in p)h.exports[d]=p[d]}else p&&(h.exports=p)}}),jf=$({"node_modules/detect-newline/index.js"(l,h){"use strict";U();var p=d=>{if(typeof d!="string")throw new TypeError("Expected a string");let x=d.match(/(?:\r?\n)/g)||[];if(x.length===0)return;let P=x.filter(v=>v===`\r +`).length,m=x.length-P;return P>m?`\r +`:` +`};h.exports=p,h.exports.graceful=d=>typeof d=="string"&&p(d)||` +`}}),qf=$({"node_modules/jest-docblock/build/index.js"(l){"use strict";U(),Object.defineProperty(l,"__esModule",{value:!0}),l.extract=A,l.parse=G,l.parseWithComments=N,l.print=O,l.strip=_;function h(){let R=Rf();return h=function(){return R},R}function p(){let R=d(jf());return p=function(){return R},R}function d(R){return R&&R.__esModule?R:{default:R}}var x=/\*\/$/,P=/^\/\*\*?/,m=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,v=/(^|\s+)\/\/([^\r\n]*)/g,S=/^(\r?\n)+/,k=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,F=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,w=/(\r?\n|^) *\* ?/g,L=[];function A(R){let z=R.match(m);return z?z[0].trimLeft():""}function _(R){let z=R.match(m);return z&&z[0]?R.substring(z[0].length):R}function G(R){return N(R).pragmas}function N(R){let z=(0,p().default)(R)||h().EOL;R=R.replace(P,"").replace(x,"").replace(w,"$1");let Q="";for(;Q!==R;)Q=R,R=R.replace(k,`${z}$1 $2${z}`);R=R.replace(S,"").trimRight();let b=Object.create(null),B=R.replace(F,"").replace(S,"").trimRight(),Z;for(;Z=F.exec(R);){let q=Z[2].replace(v,"");typeof b[Z[1]]=="string"||Array.isArray(b[Z[1]])?b[Z[1]]=L.concat(b[Z[1]],q):b[Z[1]]=q}return{comments:B,pragmas:b}}function O(R){let{comments:z="",pragmas:Q={}}=R,b=(0,p().default)(z)||h().EOL,B="/**",Z=" *",q=" */",ue=Object.keys(Q),te=ue.map(se=>H(se,Q[se])).reduce((se,He)=>se.concat(He),[]).map(se=>`${Z} ${se}${b}`).join("");if(!z){if(ue.length===0)return"";if(ue.length===1&&!Array.isArray(Q[ue[0]])){let se=Q[ue[0]];return`${B} ${H(ue[0],se)[0]}${q}`}}let it=z.split(b).map(se=>`${Z} ${se}`).join(b)+b;return B+b+(z?it:"")+(z&&ue.length?Z+b:"")+te+q}function H(R,z){return L.concat(z).map(Q=>`@${R} ${Q}`.trim())}}}),Uf=$({"src/common/end-of-line.js"(l,h){"use strict";U();function p(m){let v=m.indexOf("\r");return v>=0?m.charAt(v+1)===` +`?"crlf":"cr":"lf"}function d(m){switch(m){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function x(m,v){let S;switch(v){case` +`:S=/\n/g;break;case"\r":S=/\r/g;break;case`\r +`:S=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(v)}.`)}let k=m.match(S);return k?k.length:0}function P(m){return m.replace(/\r\n?/g,` +`)}h.exports={guessEndOfLine:p,convertEndOfLineToChars:d,countEndOfLineChars:x,normalizeEndOfLine:P}}}),$f=$({"src/language-js/pragma.js"(l,h){"use strict";U();var{parseWithComments:p,strip:d,extract:x,print:P}=qf(),{normalizeEndOfLine:m}=Uf(),v=po();function S(w){let L=v(w);L&&(w=w.slice(L.length+1));let A=x(w),{pragmas:_,comments:G}=p(A);return{shebang:L,text:w,pragmas:_,comments:G}}function k(w){let L=Object.keys(S(w).pragmas);return L.includes("prettier")||L.includes("format")}function F(w){let{shebang:L,text:A,pragmas:_,comments:G}=S(w),N=d(A),O=P({pragmas:Object.assign({format:""},_),comments:G.trimStart()});return(L?`${L} +`:"")+m(O)+(N.startsWith(` +`)?` +`:` + +`)+N}h.exports={hasPragma:k,insertPragma:F}}}),Io=$({"src/utils/is-non-empty-array.js"(l,h){"use strict";U();function p(d){return Array.isArray(d)&&d.length>0}h.exports=p}}),No=$({"src/language-js/loc.js"(l,h){"use strict";U();var p=Io();function d(S){var k,F;let w=S.range?S.range[0]:S.start,L=(k=(F=S.declaration)===null||F===void 0?void 0:F.decorators)!==null&&k!==void 0?k:S.decorators;return p(L)?Math.min(d(L[0]),w):w}function x(S){return S.range?S.range[1]:S.end}function P(S,k){let F=d(S);return Number.isInteger(F)&&F===d(k)}function m(S,k){let F=x(S);return Number.isInteger(F)&&F===x(k)}function v(S,k){return P(S,k)&&m(S,k)}h.exports={locStart:d,locEnd:x,hasSameLocStart:P,hasSameLoc:v}}}),ko=$({"src/language-js/parse/utils/create-parser.js"(l,h){"use strict";U();var{hasPragma:p}=$f(),{locStart:d,locEnd:x}=No();function P(m){return m=typeof m=="function"?{parse:m}:m,Object.assign({astFormat:"estree",hasPragma:p,locStart:d,locEnd:x},m)}h.exports=P}}),lr=$({"src/common/parser-create-error.js"(l,h){"use strict";U();function p(d,x){let P=new SyntaxError(d+" ("+x.start.line+":"+x.start.column+")");return P.loc=x,P}h.exports=p}}),Do=$({"src/language-js/parse/utils/create-babel-parse-error.js"(l,h){"use strict";U();var p=lr();function d(x){let{message:P,loc:m}=x;return p(P.replace(/ \(.*\)/,""),{start:{line:m?m.line:0,column:m?m.column+1:0}})}h.exports=d}}),Hf=$({"src/language-js/utils/is-ts-keyword-type.js"(l,h){"use strict";U();function p(d){let{type:x}=d;return x.startsWith("TS")&&x.endsWith("Keyword")}h.exports=p}}),zf=$({"src/language-js/utils/is-block-comment.js"(l,h){"use strict";U();var p=new Set(["Block","CommentBlock","MultiLine"]),d=x=>p.has(x==null?void 0:x.type);h.exports=d}}),Vf=$({"src/language-js/utils/is-type-cast-comment.js"(l,h){"use strict";U();var p=zf();function d(x){return p(x)&&x.value[0]==="*"&&/@(?:type|satisfies)\b/.test(x.value)}h.exports=d}}),Kf=$({"src/utils/get-last.js"(l,h){"use strict";U();var p=d=>d[d.length-1];h.exports=p}}),Wf=$({"src/language-js/parse/postprocess/visit-node.js"(l,h){"use strict";U();function p(d,x){if(Array.isArray(d)){for(let P=0;P{O.leadingComments&&O.leadingComments.some(P)&&N.add(p(O))}),A=v(A,O=>{if(O.type==="ParenthesizedExpression"){let{expression:H}=O;if(H.type==="TypeCastExpression")return H.range=O.range,H;let R=p(O);if(!N.has(R))return H.extra=Object.assign(Object.assign({},H.extra),{},{parenthesized:!0}),H}})}return A=v(A,N=>{switch(N.type){case"ChainExpression":return F(N.expression);case"LogicalExpression":{if(w(N))return L(N);break}case"VariableDeclaration":{let O=m(N.declarations);O&&O.init&&G(N,O);break}case"TSParenthesizedType":return x(N.typeAnnotation)||N.typeAnnotation.type==="TSThisType"||(N.typeAnnotation.range=[p(N),d(N)]),N.typeAnnotation;case"TSTypeParameter":if(typeof N.name=="string"){let O=p(N);N.name={type:"Identifier",name:N.name,range:[O,O+N.name.length]}}break;case"ObjectExpression":if(_.parser==="typescript"){let O=N.properties.find(H=>H.type==="Property"&&H.value.type==="TSEmptyBodyFunctionExpression");O&&S(O.value,"Unexpected token.")}break;case"SequenceExpression":{let O=m(N.expressions);N.range=[p(N),Math.min(d(O),d(N))];break}case"TopicReference":_.__isUsingHackPipeline=!0;break;case"ExportAllDeclaration":{let{exported:O}=N;if(_.parser==="meriyah"&&O&&O.type==="Identifier"){let H=_.originalText.slice(p(O),d(O));(H.startsWith('"')||H.startsWith("'"))&&(N.exported=Object.assign(Object.assign({},N.exported),{},{type:"Literal",value:N.exported.name,raw:H}))}break}case"PropertyDefinition":if(_.parser==="meriyah"&&N.static&&!N.computed&&!N.key){let O="static",H=p(N);Object.assign(N,{static:!1,key:{type:"Identifier",name:O,range:[H,H+O.length]}})}break}}),A;function G(N,O){_.originalText[d(O)]!==";"&&(N.range=[p(N),d(O)])}}function F(A){switch(A.type){case"CallExpression":A.type="OptionalCallExpression",A.callee=F(A.callee);break;case"MemberExpression":A.type="OptionalMemberExpression",A.object=F(A.object);break;case"TSNonNullExpression":A.expression=F(A.expression);break}return A}function w(A){return A.type==="LogicalExpression"&&A.right.type==="LogicalExpression"&&A.operator===A.right.operator}function L(A){return w(A)?L({type:"LogicalExpression",operator:A.operator,left:L({type:"LogicalExpression",operator:A.operator,left:A.left,right:A.right.left,range:[p(A.left),d(A.right.left)]}),right:A.right.right,range:[p(A),d(A)]}):A}h.exports=k}}),Fo=$({"node_modules/@babel/parser/lib/index.js"(l){"use strict";U(),Object.defineProperty(l,"__esModule",{value:!0});var h={sourceType:"script",sourceFilename:void 0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0};function p(t){if(t&&t.annexB!=null&&t.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");let r={};for(let e of Object.keys(h))r[e]=t&&t[e]!=null?t[e]:h[e];return r}var d=class{constructor(t,r){this.token=void 0,this.preserveSpace=void 0,this.token=t,this.preserveSpace=!!r}},x={brace:new d("{"),j_oTag:new d("...",!0)};x.template=new d("`",!0);var P=!0,m=!0,v=!0,S=!0,k=!0,F=!0,w=class{constructor(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=t,this.keyword=r.keyword,this.beforeExpr=!!r.beforeExpr,this.startsExpr=!!r.startsExpr,this.rightAssociative=!!r.rightAssociative,this.isLoop=!!r.isLoop,this.isAssign=!!r.isAssign,this.prefix=!!r.prefix,this.postfix=!!r.postfix,this.binop=r.binop!=null?r.binop:null,this.updateContext=null}},L=new Map;function A(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};r.keyword=t;let e=b(t,r);return L.set(t,e),e}function _(t,r){return b(t,{beforeExpr:P,binop:r})}var G=-1,N=[],O=[],H=[],R=[],z=[],Q=[];function b(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var e,s,i,a;return++G,O.push(t),H.push((e=r.binop)!=null?e:-1),R.push((s=r.beforeExpr)!=null?s:!1),z.push((i=r.startsExpr)!=null?i:!1),Q.push((a=r.prefix)!=null?a:!1),N.push(new w(t,r)),G}function B(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var e,s,i,a;return++G,L.set(t,G),O.push(t),H.push((e=r.binop)!=null?e:-1),R.push((s=r.beforeExpr)!=null?s:!1),z.push((i=r.startsExpr)!=null?i:!1),Q.push((a=r.prefix)!=null?a:!1),N.push(new w("name",r)),G}var Z={bracketL:b("[",{beforeExpr:P,startsExpr:m}),bracketHashL:b("#[",{beforeExpr:P,startsExpr:m}),bracketBarL:b("[|",{beforeExpr:P,startsExpr:m}),bracketR:b("]"),bracketBarR:b("|]"),braceL:b("{",{beforeExpr:P,startsExpr:m}),braceBarL:b("{|",{beforeExpr:P,startsExpr:m}),braceHashL:b("#{",{beforeExpr:P,startsExpr:m}),braceR:b("}"),braceBarR:b("|}"),parenL:b("(",{beforeExpr:P,startsExpr:m}),parenR:b(")"),comma:b(",",{beforeExpr:P}),semi:b(";",{beforeExpr:P}),colon:b(":",{beforeExpr:P}),doubleColon:b("::",{beforeExpr:P}),dot:b("."),question:b("?",{beforeExpr:P}),questionDot:b("?."),arrow:b("=>",{beforeExpr:P}),template:b("template"),ellipsis:b("...",{beforeExpr:P}),backQuote:b("`",{startsExpr:m}),dollarBraceL:b("${",{beforeExpr:P,startsExpr:m}),templateTail:b("...`",{startsExpr:m}),templateNonTail:b("...${",{beforeExpr:P,startsExpr:m}),at:b("@"),hash:b("#",{startsExpr:m}),interpreterDirective:b("#!..."),eq:b("=",{beforeExpr:P,isAssign:S}),assign:b("_=",{beforeExpr:P,isAssign:S}),slashAssign:b("_=",{beforeExpr:P,isAssign:S}),xorAssign:b("_=",{beforeExpr:P,isAssign:S}),moduloAssign:b("_=",{beforeExpr:P,isAssign:S}),incDec:b("++/--",{prefix:k,postfix:F,startsExpr:m}),bang:b("!",{beforeExpr:P,prefix:k,startsExpr:m}),tilde:b("~",{beforeExpr:P,prefix:k,startsExpr:m}),doubleCaret:b("^^",{startsExpr:m}),doubleAt:b("@@",{startsExpr:m}),pipeline:_("|>",0),nullishCoalescing:_("??",1),logicalOR:_("||",1),logicalAND:_("&&",2),bitwiseOR:_("|",3),bitwiseXOR:_("^",4),bitwiseAND:_("&",5),equality:_("==/!=/===/!==",6),lt:_("/<=/>=",7),gt:_("/<=/>=",7),relational:_("/<=/>=",7),bitShift:_("<>/>>>",8),bitShiftL:_("<>/>>>",8),bitShiftR:_("<>/>>>",8),plusMin:b("+/-",{beforeExpr:P,binop:9,prefix:k,startsExpr:m}),modulo:b("%",{binop:10,startsExpr:m}),star:b("*",{binop:10}),slash:_("/",10),exponent:b("**",{beforeExpr:P,binop:11,rightAssociative:!0}),_in:A("in",{beforeExpr:P,binop:7}),_instanceof:A("instanceof",{beforeExpr:P,binop:7}),_break:A("break"),_case:A("case",{beforeExpr:P}),_catch:A("catch"),_continue:A("continue"),_debugger:A("debugger"),_default:A("default",{beforeExpr:P}),_else:A("else",{beforeExpr:P}),_finally:A("finally"),_function:A("function",{startsExpr:m}),_if:A("if"),_return:A("return",{beforeExpr:P}),_switch:A("switch"),_throw:A("throw",{beforeExpr:P,prefix:k,startsExpr:m}),_try:A("try"),_var:A("var"),_const:A("const"),_with:A("with"),_new:A("new",{beforeExpr:P,startsExpr:m}),_this:A("this",{startsExpr:m}),_super:A("super",{startsExpr:m}),_class:A("class",{startsExpr:m}),_extends:A("extends",{beforeExpr:P}),_export:A("export"),_import:A("import",{startsExpr:m}),_null:A("null",{startsExpr:m}),_true:A("true",{startsExpr:m}),_false:A("false",{startsExpr:m}),_typeof:A("typeof",{beforeExpr:P,prefix:k,startsExpr:m}),_void:A("void",{beforeExpr:P,prefix:k,startsExpr:m}),_delete:A("delete",{beforeExpr:P,prefix:k,startsExpr:m}),_do:A("do",{isLoop:v,beforeExpr:P}),_for:A("for",{isLoop:v}),_while:A("while",{isLoop:v}),_as:B("as",{startsExpr:m}),_assert:B("assert",{startsExpr:m}),_async:B("async",{startsExpr:m}),_await:B("await",{startsExpr:m}),_from:B("from",{startsExpr:m}),_get:B("get",{startsExpr:m}),_let:B("let",{startsExpr:m}),_meta:B("meta",{startsExpr:m}),_of:B("of",{startsExpr:m}),_sent:B("sent",{startsExpr:m}),_set:B("set",{startsExpr:m}),_static:B("static",{startsExpr:m}),_using:B("using",{startsExpr:m}),_yield:B("yield",{startsExpr:m}),_asserts:B("asserts",{startsExpr:m}),_checks:B("checks",{startsExpr:m}),_exports:B("exports",{startsExpr:m}),_global:B("global",{startsExpr:m}),_implements:B("implements",{startsExpr:m}),_intrinsic:B("intrinsic",{startsExpr:m}),_infer:B("infer",{startsExpr:m}),_is:B("is",{startsExpr:m}),_mixins:B("mixins",{startsExpr:m}),_proto:B("proto",{startsExpr:m}),_require:B("require",{startsExpr:m}),_satisfies:B("satisfies",{startsExpr:m}),_keyof:B("keyof",{startsExpr:m}),_readonly:B("readonly",{startsExpr:m}),_unique:B("unique",{startsExpr:m}),_abstract:B("abstract",{startsExpr:m}),_declare:B("declare",{startsExpr:m}),_enum:B("enum",{startsExpr:m}),_module:B("module",{startsExpr:m}),_namespace:B("namespace",{startsExpr:m}),_interface:B("interface",{startsExpr:m}),_type:B("type",{startsExpr:m}),_opaque:B("opaque",{startsExpr:m}),name:b("name",{startsExpr:m}),string:b("string",{startsExpr:m}),num:b("num",{startsExpr:m}),bigint:b("bigint",{startsExpr:m}),decimal:b("decimal",{startsExpr:m}),regexp:b("regexp",{startsExpr:m}),privateName:b("#name",{startsExpr:m}),eof:b("eof"),jsxName:b("jsxName"),jsxText:b("jsxText",{beforeExpr:!0}),jsxTagStart:b("jsxTagStart",{startsExpr:!0}),jsxTagEnd:b("jsxTagEnd"),placeholder:b("%%",{startsExpr:!0})};function q(t){return t>=93&&t<=130}function ue(t){return t<=92}function te(t){return t>=58&&t<=130}function it(t){return t>=58&&t<=134}function se(t){return R[t]}function He(t){return z[t]}function Bo(t){return t>=29&&t<=33}function hr(t){return t>=127&&t<=129}function Mo(t){return t>=90&&t<=92}function $t(t){return t>=58&&t<=92}function _o(t){return t>=39&&t<=59}function Ro(t){return t===34}function jo(t){return Q[t]}function qo(t){return t>=119&&t<=121}function Uo(t){return t>=122&&t<=128}function xe(t){return O[t]}function at(t){return H[t]}function $o(t){return t===57}function nt(t){return t>=24&&t<=25}function ce(t){return N[t]}N[8].updateContext=t=>{t.pop()},N[5].updateContext=N[7].updateContext=N[23].updateContext=t=>{t.push(x.brace)},N[22].updateContext=t=>{t[t.length-1]===x.template?t.pop():t.push(x.template)},N[140].updateContext=t=>{t.push(x.j_expr,x.j_oTag)};function ot(t,r){if(t==null)return{};var e={},s=Object.keys(t),i,a;for(a=0;a=0)&&(e[i]=t[i]);return e}var ge=class{constructor(t,r,e){this.line=void 0,this.column=void 0,this.index=void 0,this.line=t,this.column=r,this.index=e}},lt=class{constructor(t,r){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=t,this.end=r}};function Y(t,r){let{line:e,column:s,index:i}=t;return new ge(e,s+r,i+r)}var Ht={SyntaxError:"BABEL_PARSER_SYNTAX_ERROR",SourceTypeModuleError:"BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED"},Ho=function(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:t.length-1;return{get(){return t.reduce((e,s)=>e[s],this)},set(e){t.reduce((s,i,a)=>a===r?s[i]=e:s[i],this)}}},zo=(t,r,e)=>Object.keys(e).map(s=>[s,e[s]]).filter(s=>{let[,i]=s;return!!i}).map(s=>{let[i,a]=s;return[i,typeof a=="function"?{value:a,enumerable:!1}:typeof a.reflect=="string"?Object.assign({},a,Ho(a.reflect.split("."))):a]}).reduce((s,i)=>{let[a,n]=i;return Object.defineProperty(s,a,Object.assign({configurable:!0},n))},Object.assign(new t,r)),Vo={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:Ht.SourceTypeModuleError},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:Ht.SourceTypeModuleError}},ur={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},zt=t=>{let{type:r,prefix:e}=t;return r==="UpdateExpression"?ur.UpdateExpression[String(e)]:ur[r]},Ko={AccessorIsGenerator:t=>{let{kind:r}=t;return`A ${r}ter cannot be a generator.`},ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitInUsingBinding:"'await' is not allowed to be used as a name in 'using' declarations.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:t=>{let{kind:r}=t;return`Missing initializer in ${r} declaration.`},DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:t=>{let{exportName:r}=t;return`\`${r}\` has already been exported. Exported identifiers must be unique.`},DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:t=>{let{localName:r,exportName:e}=t;return`A string literal cannot be used as an exported binding without \`from\`. +- Did you mean \`export { '${r}' as '${e}' } from 'some-module'\`?`},ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:t=>{let{type:r}=t;return`'${r==="ForInStatement"?"for-in":"for-of"}' loop variable declaration may not have an initializer.`},ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:t=>{let{type:r}=t;return`Unsyntactic ${r==="BreakStatement"?"break":"continue"}.`},IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportBindingIsString:t=>{let{importName:r}=t;return`A string literal cannot be used as an imported binding. +- Did you mean \`import { "${r}" as foo }\`?`},ImportCallArgumentTrailingComma:"Trailing comma is disallowed inside import(...) arguments.",ImportCallArity:t=>{let{maxArgumentCount:r}=t;return`\`import()\` requires exactly ${r===1?"one argument":"one or two arguments"}.`},ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:t=>{let{radix:r}=t;return`Expected number in radix ${r}.`},InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:t=>{let{reservedWord:r}=t;return`Escape sequence in keyword ${r}.`},InvalidIdentifier:t=>{let{identifierName:r}=t;return`Invalid identifier ${r}.`},InvalidLhs:t=>{let{ancestor:r}=t;return`Invalid left-hand side in ${zt(r)}.`},InvalidLhsBinding:t=>{let{ancestor:r}=t;return`Binding invalid left-hand side in ${zt(r)}.`},InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:t=>{let{unexpected:r}=t;return`Unexpected character '${r}'.`},InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:t=>{let{identifierName:r}=t;return`Private name #${r} is not defined.`},InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:t=>{let{labelName:r}=t;return`Label '${r}' is already declared.`},LetInLexicalBinding:"'let' is not allowed to be used as a name in 'let' or 'const' declarations.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:t=>{let{missingPlugin:r}=t;return`This experimental syntax requires enabling the parser plugin: ${r.map(e=>JSON.stringify(e)).join(", ")}.`},MissingOneOfPlugins:t=>{let{missingPlugin:r}=t;return`This experimental syntax requires enabling one of the following parser plugin(s): ${r.map(e=>JSON.stringify(e)).join(", ")}.`},MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:t=>{let{key:r}=t;return`Duplicate key "${r}" is not allowed in module attributes.`},ModuleExportNameHasLoneSurrogate:t=>{let{surrogateCharCode:r}=t;return`An export name cannot include a lone surrogate, found '\\u${r.toString(16)}'.`},ModuleExportUndefined:t=>{let{localName:r}=t;return`Export '${r}' is not defined.`},MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:t=>{let{identifierName:r}=t;return`Private names are only allowed in property accesses (\`obj.#${r}\`) or in \`in\` expressions (\`#${r} in obj\`).`},PrivateNameRedeclaration:t=>{let{identifierName:r}=t;return`Duplicate private name #${r}.`},RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:t=>{let{keyword:r}=t;return`Unexpected keyword '${r}'.`},UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:t=>{let{reservedWord:r}=t;return`Unexpected reserved word '${r}'.`},UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:t=>{let{expected:r,unexpected:e}=t;return`Unexpected token${e?` '${e}'.`:""}${r?`, expected "${r}"`:""}`},UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:t=>{let{target:r,onlyValidPropertyName:e}=t;return`The only valid meta property for ${r} is ${r}.${e}.`},UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:t=>{let{identifierName:r}=t;return`Identifier '${r}' has already been declared.`},YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},Wo={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:t=>{let{referenceName:r}=t;return`Assigning to '${r}' in strict mode.`},StrictEvalArgumentsBinding:t=>{let{bindingName:r}=t;return`Binding '${r}' in strict mode.`},StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."},Go=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),Jo={PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:t=>{let{token:r}=t;return`Invalid topic token ${r}. In order to use ${r} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${r}" }.`},PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:t=>{let{type:r}=t;return`Hack-style pipe body cannot be an unparenthesized ${zt({type:r})}; please wrap it in parentheses.`},PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'},Xo=["toMessage"],Yo=["message"];function Qo(t){let{toMessage:r}=t,e=ot(t,Xo);return function s(i){let{loc:a,details:n}=i;return zo(SyntaxError,Object.assign({},e,{loc:a}),{clone(){let o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},u=o.loc||{};return s({loc:new ge("line"in u?u.line:this.loc.line,"column"in u?u.column:this.loc.column,"index"in u?u.index:this.loc.index),details:Object.assign({},this.details,o.details)})},details:{value:n,enumerable:!1},message:{get(){return`${r(this.details)} (${this.loc.line}:${this.loc.column})`},set(o){Object.defineProperty(this,"message",{value:o})}},pos:{reflect:"loc.index",enumerable:!0},missingPlugin:"missingPlugin"in n&&{reflect:"details.missingPlugin",enumerable:!0}})}}function pe(t,r){if(Array.isArray(t))return s=>pe(s,t[0]);let e={};for(let s of Object.keys(t)){let i=t[s],a=typeof i=="string"?{message:()=>i}:typeof i=="function"?{message:i}:i,{message:n}=a,o=ot(a,Yo),u=typeof n=="string"?()=>n:n;e[s]=Qo(Object.assign({code:Ht.SyntaxError,reasonCode:s,toMessage:u},r?{syntaxPlugin:r}:{},o))}return e}var f=Object.assign({},pe(Vo),pe(Ko),pe(Wo),pe`pipelineOperator`(Jo)),{defineProperty:Zo}=Object,cr=(t,r)=>Zo(t,r,{enumerable:!1,value:t[r]});function ze(t){return t.loc.start&&cr(t.loc.start,"index"),t.loc.end&&cr(t.loc.end,"index"),t}var el=t=>class extends t{parse(){let e=ze(super.parse());return this.options.tokens&&(e.tokens=e.tokens.map(ze)),e}parseRegExpLiteral(e){let{pattern:s,flags:i}=e,a=null;try{a=new RegExp(s,i)}catch{}let n=this.estreeParseLiteral(a);return n.regex={pattern:s,flags:i},n}parseBigIntLiteral(e){let s;try{s=BigInt(e)}catch{s=null}let i=this.estreeParseLiteral(s);return i.bigint=String(i.value||e),i}parseDecimalLiteral(e){let i=this.estreeParseLiteral(null);return i.decimal=String(i.value||e),i}estreeParseLiteral(e){return this.parseLiteral(e,"Literal")}parseStringLiteral(e){return this.estreeParseLiteral(e)}parseNumericLiteral(e){return this.estreeParseLiteral(e)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(e){return this.estreeParseLiteral(e)}directiveToStmt(e){let s=e.value;delete e.value,s.type="Literal",s.raw=s.extra.raw,s.value=s.extra.expressionValue;let i=e;return i.type="ExpressionStatement",i.expression=s,i.directive=s.extra.rawValue,delete s.extra,i}initFunction(e,s){super.initFunction(e,s),e.expression=!1}checkDeclaration(e){e!=null&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var s;return e.type==="ExpressionStatement"&&e.expression.type==="Literal"&&typeof e.expression.value=="string"&&!((s=e.expression.extra)!=null&&s.parenthesized)}parseBlockBody(e,s,i,a,n){super.parseBlockBody(e,s,i,a,n);let o=e.directives.map(u=>this.directiveToStmt(u));e.body=o.concat(e.body),delete e.directives}pushClassMethod(e,s,i,a,n,o){this.parseMethod(s,i,a,n,o,"ClassMethod",!0),s.typeParameters&&(s.value.typeParameters=s.typeParameters,delete s.typeParameters),e.body.push(s)}parsePrivateName(){let e=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){let s=super.getPrivateNameSV(e);return e=e,delete e.id,e.name=s,e.type="PrivateIdentifier",e}isPrivateName(e){return this.getPluginOption("estree","classFeatures")?e.type==="PrivateIdentifier":super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption("estree","classFeatures")?e.name:super.getPrivateNameSV(e)}parseLiteral(e,s){let i=super.parseLiteral(e,s);return i.raw=i.extra.raw,delete i.extra,i}parseFunctionBody(e,s){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;super.parseFunctionBody(e,s,i),e.expression=e.body.type!=="BlockStatement"}parseMethod(e,s,i,a,n,o){let u=arguments.length>6&&arguments[6]!==void 0?arguments[6]:!1,c=this.startNode();return c.kind=e.kind,c=super.parseMethod(c,s,i,a,n,o,u),c.type="FunctionExpression",delete c.kind,e.value=c,o==="ClassPrivateMethod"&&(e.computed=!1),this.finishNode(e,"MethodDefinition")}parseClassProperty(){let e=super.parseClassProperty(...arguments);return this.getPluginOption("estree","classFeatures")&&(e.type="PropertyDefinition"),e}parseClassPrivateProperty(){let e=super.parseClassPrivateProperty(...arguments);return this.getPluginOption("estree","classFeatures")&&(e.type="PropertyDefinition",e.computed=!1),e}parseObjectMethod(e,s,i,a,n){let o=super.parseObjectMethod(e,s,i,a,n);return o&&(o.type="Property",o.kind==="method"&&(o.kind="init"),o.shorthand=!1),o}parseObjectProperty(e,s,i,a){let n=super.parseObjectProperty(e,s,i,a);return n&&(n.kind="init",n.type="Property"),n}isValidLVal(e,s,i){return e==="Property"?"value":super.isValidLVal(e,s,i)}isAssignable(e,s){return e!=null&&this.isObjectProperty(e)?this.isAssignable(e.value,s):super.isAssignable(e,s)}toAssignable(e){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(e!=null&&this.isObjectProperty(e)){let{key:i,value:a}=e;this.isPrivateName(i)&&this.classScope.usePrivateName(this.getPrivateNameSV(i),i.loc.start),this.toAssignable(a,s)}else super.toAssignable(e,s)}toAssignableObjectExpressionProp(e,s,i){e.kind==="get"||e.kind==="set"?this.raise(f.PatternHasAccessor,{at:e.key}):e.method?this.raise(f.PatternHasMethod,{at:e.key}):super.toAssignableObjectExpressionProp(e,s,i)}finishCallExpression(e,s){let i=super.finishCallExpression(e,s);if(i.callee.type==="Import"){if(i.type="ImportExpression",i.source=i.arguments[0],this.hasPlugin("importAssertions")){var a;i.attributes=(a=i.arguments[1])!=null?a:null}delete i.arguments,delete i.callee}return i}toReferencedArguments(e){e.type!=="ImportExpression"&&super.toReferencedArguments(e)}parseExport(e,s){let i=this.state.lastTokStartLoc,a=super.parseExport(e,s);switch(a.type){case"ExportAllDeclaration":a.exported=null;break;case"ExportNamedDeclaration":a.specifiers.length===1&&a.specifiers[0].type==="ExportNamespaceSpecifier"&&(a.type="ExportAllDeclaration",a.exported=a.specifiers[0].exported,delete a.specifiers);case"ExportDefaultDeclaration":{var n;let{declaration:o}=a;(o==null?void 0:o.type)==="ClassDeclaration"&&((n=o.decorators)==null?void 0:n.length)>0&&o.start===a.start&&this.resetStartLocation(a,i)}break}return a}parseSubscript(e,s,i,a){let n=super.parseSubscript(e,s,i,a);if(a.optionalChainMember){if((n.type==="OptionalMemberExpression"||n.type==="OptionalCallExpression")&&(n.type=n.type.substring(8)),a.stop){let o=this.startNodeAtNode(n);return o.expression=n,this.finishNode(o,"ChainExpression")}}else(n.type==="MemberExpression"||n.type==="CallExpression")&&(n.optional=!1);return n}hasPropertyAsPrivateName(e){return e.type==="ChainExpression"&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isObjectProperty(e){return e.type==="Property"&&e.kind==="init"&&!e.method}isObjectMethod(e){return e.method||e.kind==="get"||e.kind==="set"}finishNodeAt(e,s,i){return ze(super.finishNodeAt(e,s,i))}resetStartLocation(e,s){super.resetStartLocation(e,s),ze(e)}resetEndLocation(e){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.state.lastTokEndLoc;super.resetEndLocation(e,s),ze(e)}},Vt="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",pr="\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F",tl=new RegExp("["+Vt+"]"),sl=new RegExp("["+Vt+pr+"]");Vt=pr=null;var fr=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,4026,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,757,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,3104,541,1507,4938,6,4191],rl=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,81,2,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,9,5351,0,7,14,13835,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,983,6,110,6,6,9,4759,9,787719,239];function Kt(t,r){let e=65536;for(let s=0,i=r.length;st)return!1;if(e+=r[s+1],e>=t)return!0}return!1}function fe(t){return t<65?t===36:t<=90?!0:t<97?t===95:t<=122?!0:t<=65535?t>=170&&tl.test(String.fromCharCode(t)):Kt(t,fr)}function De(t){return t<48?t===36:t<58?!0:t<65?!1:t<=90?!0:t<97?t===95:t<=122?!0:t<=65535?t>=170&&sl.test(String.fromCharCode(t)):Kt(t,fr)||Kt(t,rl)}var Wt={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},il=new Set(Wt.keyword),al=new Set(Wt.strict),nl=new Set(Wt.strictBind);function dr(t,r){return r&&t==="await"||t==="enum"}function mr(t,r){return dr(t,r)||al.has(t)}function yr(t){return nl.has(t)}function xr(t,r){return mr(t,r)||yr(t)}function ol(t){return il.has(t)}function ll(t,r,e){return t===64&&r===64&&fe(e)}var hl=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);function ul(t){return hl.has(t)}var Fe=0,Le=1,de=2,Gt=4,gr=8,ht=16,Pr=32,Ee=64,ut=128,Oe=256,ct=Le|de|ut|Oe,le=1,Ce=2,Ar=4,be=8,pt=16,Tr=64,ft=128,Jt=256,Xt=512,Yt=1024,Qt=2048,Ve=4096,dt=8192,vr=le|Ce|be|ft|dt,Be=le|0|be|dt,cl=le|0|be|0,mt=le|0|Ar|0,Er=le|0|pt|0,pl=0|Ce|0|ft,fl=0|Ce|0|0,Cr=le|Ce|be|Jt|dt,br=0|Yt,Pe=0|Tr,dl=le|0|0|Tr,ml=Cr|Xt,yl=0|Yt,Sr=0|Ce|0|Ve,xl=Qt,yt=4,Zt=2,es=1,ts=Zt|es,gl=Zt|yt,Pl=es|yt,Al=Zt,Tl=es,ss=0,rs=class{constructor(t){this.var=new Set,this.lexical=new Set,this.functions=new Set,this.flags=t}},is=class{constructor(t,r){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=t,this.inModule=r}get inTopLevel(){return(this.currentScope().flags&Le)>0}get inFunction(){return(this.currentVarScopeFlags()&de)>0}get allowSuper(){return(this.currentThisScopeFlags()&ht)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&Pr)>0}get inClass(){return(this.currentThisScopeFlags()&Ee)>0}get inClassAndNotInNonArrowFunction(){let t=this.currentThisScopeFlags();return(t&Ee)>0&&(t&de)===0}get inStaticBlock(){for(let t=this.scopeStack.length-1;;t--){let{flags:r}=this.scopeStack[t];if(r&ut)return!0;if(r&(ct|Ee))return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&de)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(t){return new rs(t)}enter(t){this.scopeStack.push(this.createScope(t))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(t){return!!(t.flags&(de|ut)||!this.parser.inModule&&t.flags&Le)}declareName(t,r,e){let s=this.currentScope();if(r&be||r&pt)this.checkRedeclarationInScope(s,t,r,e),r&pt?s.functions.add(t):s.lexical.add(t),r&be&&this.maybeExportDefined(s,t);else if(r&Ar)for(let i=this.scopeStack.length-1;i>=0&&(s=this.scopeStack[i],this.checkRedeclarationInScope(s,t,r,e),s.var.add(t),this.maybeExportDefined(s,t),!(s.flags&ct));--i);this.parser.inModule&&s.flags&Le&&this.undefinedExports.delete(t)}maybeExportDefined(t,r){this.parser.inModule&&t.flags&Le&&this.undefinedExports.delete(r)}checkRedeclarationInScope(t,r,e,s){this.isRedeclaredInScope(t,r,e)&&this.parser.raise(f.VarRedeclaration,{at:s,identifierName:r})}isRedeclaredInScope(t,r,e){return e&le?e&be?t.lexical.has(r)||t.functions.has(r)||t.var.has(r):e&pt?t.lexical.has(r)||!this.treatFunctionsAsVarInScope(t)&&t.var.has(r):t.lexical.has(r)&&!(t.flags&gr&&t.lexical.values().next().value===r)||!this.treatFunctionsAsVarInScope(t)&&t.functions.has(r):!1}checkLocalExport(t){let{name:r}=t,e=this.scopeStack[0];!e.lexical.has(r)&&!e.var.has(r)&&!e.functions.has(r)&&this.undefinedExports.set(r,t.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let t=this.scopeStack.length-1;;t--){let{flags:r}=this.scopeStack[t];if(r&ct)return r}}currentThisScopeFlags(){for(let t=this.scopeStack.length-1;;t--){let{flags:r}=this.scopeStack[t];if(r&(ct|Ee)&&!(r&Gt))return r}}},vl=class extends rs{constructor(){super(...arguments),this.declareFunctions=new Set}},El=class extends is{createScope(t){return new vl(t)}declareName(t,r,e){let s=this.currentScope();if(r&Qt){this.checkRedeclarationInScope(s,t,r,e),this.maybeExportDefined(s,t),s.declareFunctions.add(t);return}super.declareName(t,r,e)}isRedeclaredInScope(t,r,e){return super.isRedeclaredInScope(t,r,e)?!0:e&Qt?!t.declareFunctions.has(r)&&(t.lexical.has(r)||t.functions.has(r)):!1}checkLocalExport(t){this.scopeStack[0].declareFunctions.has(t.name)||super.checkLocalExport(t)}},Cl=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}hasPlugin(t){if(typeof t=="string")return this.plugins.has(t);{let[r,e]=t;if(!this.hasPlugin(r))return!1;let s=this.plugins.get(r);for(let i of Object.keys(e))if((s==null?void 0:s[i])!==e[i])return!1;return!0}}getPluginOption(t,r){var e;return(e=this.plugins.get(t))==null?void 0:e[r]}};function wr(t,r){t.trailingComments===void 0?t.trailingComments=r:t.trailingComments.unshift(...r)}function bl(t,r){t.leadingComments===void 0?t.leadingComments=r:t.leadingComments.unshift(...r)}function Ke(t,r){t.innerComments===void 0?t.innerComments=r:t.innerComments.unshift(...r)}function We(t,r,e){let s=null,i=r.length;for(;s===null&&i>0;)s=r[--i];s===null||s.start>e.start?Ke(t,e.comments):wr(s,e.comments)}var Sl=class extends Cl{addComment(t){this.filename&&(t.loc.filename=this.filename),this.state.comments.push(t)}processComment(t){let{commentStack:r}=this.state,e=r.length;if(e===0)return;let s=e-1,i=r[s];i.start===t.end&&(i.leadingNode=t,s--);let{start:a}=t;for(;s>=0;s--){let n=r[s],o=n.end;if(o>a)n.containingNode=t,this.finalizeComment(n),r.splice(s,1);else{o===a&&(n.trailingNode=t);break}}}finalizeComment(t){let{comments:r}=t;if(t.leadingNode!==null||t.trailingNode!==null)t.leadingNode!==null&&wr(t.leadingNode,r),t.trailingNode!==null&&bl(t.trailingNode,r);else{let{containingNode:e,start:s}=t;if(this.input.charCodeAt(s-1)===44)switch(e.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":We(e,e.properties,t);break;case"CallExpression":case"OptionalCallExpression":We(e,e.arguments,t);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":We(e,e.params,t);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":We(e,e.elements,t);break;case"ExportNamedDeclaration":case"ImportDeclaration":We(e,e.specifiers,t);break;default:Ke(e,r)}else Ke(e,r)}}finalizeRemainingComments(){let{commentStack:t}=this.state;for(let r=t.length-1;r>=0;r--)this.finalizeComment(t[r]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(t){let{commentStack:r}=this.state,{length:e}=r;if(e===0)return;let s=r[e-1];s.leadingNode===t&&(s.leadingNode=null)}takeSurroundingComments(t,r,e){let{commentStack:s}=this.state,i=s.length;if(i===0)return;let a=i-1;for(;a>=0;a--){let n=s[a],o=n.end;if(n.start===e)n.leadingNode=t;else if(o===r)n.trailingNode=t;else if(o=48&&r<=57},kr={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},gt={bin:t=>t===48||t===49,oct:t=>t>=48&&t<=55,dec:t=>t>=48&&t<=57,hex:t=>t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102};function Dr(t,r,e,s,i,a){let n=e,o=s,u=i,c="",y=null,g=e,{length:T}=r;for(;;){if(e>=T){a.unterminated(n,o,u),c+=r.slice(g,e);break}let C=r.charCodeAt(e);if(kl(t,C,r,e)){c+=r.slice(g,e);break}if(C===92){c+=r.slice(g,e);let M=Dl(r,e,s,i,t==="template",a);M.ch===null&&!y?y={pos:e,lineStart:s,curLine:i}:c+=M.ch,{pos:e,lineStart:s,curLine:i}=M,g=e}else C===8232||C===8233?(++e,++i,s=e):C===10||C===13?t==="template"?(c+=r.slice(g,e)+` +`,++e,C===13&&r.charCodeAt(e)===10&&++e,++i,g=s=e):a.unterminated(n,o,u):++e}return{pos:e,str:c,firstInvalidLoc:y,lineStart:s,curLine:i,containsInvalid:!!y}}function kl(t,r,e,s){return t==="template"?r===96||r===36&&e.charCodeAt(s+1)===123:r===(t==="double"?34:39)}function Dl(t,r,e,s,i,a){let n=!i;r++;let o=c=>({pos:r,ch:c,lineStart:e,curLine:s}),u=t.charCodeAt(r++);switch(u){case 110:return o(` +`);case 114:return o("\r");case 120:{let c;return{code:c,pos:r}=os(t,r,e,s,2,!1,n,a),o(c===null?null:String.fromCharCode(c))}case 117:{let c;return{code:c,pos:r}=Lr(t,r,e,s,n,a),o(c===null?null:String.fromCodePoint(c))}case 116:return o(" ");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:t.charCodeAt(r)===10&&++r;case 10:e=r,++s;case 8232:case 8233:return o("");case 56:case 57:if(i)return o(null);a.strictNumericEscape(r-1,e,s);default:if(u>=48&&u<=55){let c=r-1,g=t.slice(c,r+2).match(/^[0-7]+/)[0],T=parseInt(g,8);T>255&&(g=g.slice(0,-1),T=parseInt(g,8)),r+=g.length-1;let C=t.charCodeAt(r);if(g!=="0"||C===56||C===57){if(i)return o(null);a.strictNumericEscape(c,e,s)}return o(String.fromCharCode(T))}return o(String.fromCharCode(u))}}function os(t,r,e,s,i,a,n,o){let u=r,c;return{n:c,pos:r}=Fr(t,r,e,s,16,i,a,!1,o,!n),c===null&&(n?o.invalidEscapeSequence(u,e,s):r=u-1),{code:c,pos:r}}function Fr(t,r,e,s,i,a,n,o,u,c){let y=r,g=i===16?kr.hex:kr.decBinOct,T=i===16?gt.hex:i===10?gt.dec:i===8?gt.oct:gt.bin,C=!1,M=0;for(let j=0,K=a==null?1/0:a;j=97?V=W-97+10:W>=65?V=W-65+10:Nl(W)?V=W-48:V=1/0,V>=i){if(V<=9&&c)return{n:null,pos:r};if(V<=9&&u.invalidDigit(r,e,s,i))V=0;else if(n)V=0,C=!0;else break}++r,M=M*i+V}return r===y||a!=null&&r-y!==a||C?{n:null,pos:r}:{n:M,pos:r}}function Lr(t,r,e,s,i,a){let n=t.charCodeAt(r),o;if(n===123){if(++r,{code:o,pos:r}=os(t,r,e,s,t.indexOf("}",r)-r,!0,i,a),++r,o!==null&&o>1114111)if(i)a.invalidCodePoint(r,e,s);else return{code:null,pos:r}}else({code:o,pos:r}=os(t,r,e,s,4,!1,i,a));return{code:o,pos:r}}var Fl=["at"],Ll=["at"];function Je(t,r,e){return new ge(e,t-r,t)}var Ol=new Set([103,109,115,105,121,117,100,118]),Ae=class{constructor(t){this.type=t.type,this.value=t.value,this.start=t.start,this.end=t.end,this.loc=new lt(t.startLoc,t.endLoc)}},Bl=class extends Sl{constructor(t,r){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(e,s,i,a)=>this.options.errorRecovery?(this.raise(f.InvalidDigit,{at:Je(e,s,i),radix:a}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(f.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(f.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(f.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(f.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(e,s,i)=>{this.recordStrictModeErrors(f.StrictNumericEscape,{at:Je(e,s,i)})},unterminated:(e,s,i)=>{throw this.raise(f.UnterminatedString,{at:Je(e-1,s,i)})}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(f.StrictNumericEscape),unterminated:(e,s,i)=>{throw this.raise(f.UnterminatedTemplate,{at:Je(e,s,i)})}}),this.state=new Nr,this.state.init(t),this.input=r,this.length=r.length,this.isLookahead=!1}pushToken(t){this.tokens.length=this.state.tokensLength,this.tokens.push(t),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.options.tokens&&this.pushToken(new Ae(this.state)),this.state.lastTokStart=this.state.start,this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(t){return this.match(t)?(this.next(),!0):!1}match(t){return this.state.type===t}createLookaheadState(t){return{pos:t.pos,value:null,type:t.type,start:t.start,end:t.end,context:[this.curContext()],inType:t.inType,startLoc:t.startLoc,lastTokEndLoc:t.lastTokEndLoc,curLine:t.curLine,lineStart:t.lineStart,curPosition:t.curPosition}}lookahead(){let t=this.state;this.state=this.createLookaheadState(t),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let r=this.state;return this.state=t,r}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(t){return ns.lastIndex=t,ns.test(this.input)?ns.lastIndex:t}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}codePointAtPos(t){let r=this.input.charCodeAt(t);if((r&64512)===55296&&++t{let[e,s]=r;return this.raise(e,{at:s})}),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(137);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(t){let r;this.isLookahead||(r=this.state.curPosition());let e=this.state.pos,s=this.input.indexOf(t,e+2);if(s===-1)throw this.raise(f.UnterminatedComment,{at:this.state.curPosition()});for(this.state.pos=s+t.length,xt.lastIndex=e+2;xt.test(this.input)&&xt.lastIndex<=s;)++this.state.curLine,this.state.lineStart=xt.lastIndex;if(this.isLookahead)return;let i={type:"CommentBlock",value:this.input.slice(e+2,s),start:e,end:s+t.length,loc:new lt(r,this.state.curPosition())};return this.options.tokens&&this.pushToken(i),i}skipLineComment(t){let r=this.state.pos,e;this.isLookahead||(e=this.state.curPosition());let s=this.input.charCodeAt(this.state.pos+=t);if(this.state.post)){let i=this.skipLineComment(3);i!==void 0&&(this.addComment(i),this.options.attachComment&&r.push(i))}else break e}else if(e===60&&!this.inModule&&this.options.annexB){let s=this.state.pos;if(this.input.charCodeAt(s+1)===33&&this.input.charCodeAt(s+2)===45&&this.input.charCodeAt(s+3)===45){let i=this.skipLineComment(4);i!==void 0&&(this.addComment(i),this.options.attachComment&&r.push(i))}else break e}else break e}}if(r.length>0){let e=this.state.pos,s={start:t,end:e,comments:r,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(s)}}finishToken(t,r){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let e=this.state.type;this.state.type=t,this.state.value=r,this.isLookahead||this.updateContext(e)}replaceToken(t){this.state.type=t,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let t=this.state.pos+1,r=this.codePointAtPos(t);if(r>=48&&r<=57)throw this.raise(f.UnexpectedDigitAfterHash,{at:this.state.curPosition()});if(r===123||r===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(r===123?f.RecordExpressionHashIncorrectStartSyntaxType:f.TupleExpressionHashIncorrectStartSyntaxType,{at:this.state.curPosition()});this.state.pos+=2,r===123?this.finishToken(7):this.finishToken(1)}else fe(r)?(++this.state.pos,this.finishToken(136,this.readWord1(r))):r===92?(++this.state.pos,this.finishToken(136,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let t=this.input.charCodeAt(this.state.pos+1);if(t>=48&&t<=57){this.readNumber(!0);return}t===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let t=this.input.charCodeAt(this.state.pos+1);if(t!==33)return!1;let r=this.state.pos;for(this.state.pos+=1;!Ge(t)&&++this.state.pos=48&&r<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(t){switch(t){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(f.TupleExpressionBarIncorrectStartSyntaxType,{at:this.state.curPosition()});this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(f.RecordExpressionBarIncorrectStartSyntaxType,{at:this.state.curPosition()});this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let r=this.input.charCodeAt(this.state.pos+1);if(r===120||r===88){this.readRadixNumber(16);return}if(r===111||r===79){this.readRadixNumber(8);return}if(r===98||r===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(t);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(t);return;case 124:case 38:this.readToken_pipe_amp(t);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(t);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(t);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(fe(t)){this.readWord(t);return}}throw this.raise(f.InvalidOrUnexpectedToken,{at:this.state.curPosition(),unexpected:String.fromCodePoint(t)})}finishOp(t,r){let e=this.input.slice(this.state.pos,this.state.pos+r);this.state.pos+=r,this.finishToken(t,e)}readRegexp(){let t=this.state.startLoc,r=this.state.start+1,e,s,{pos:i}=this.state;for(;;++i){if(i>=this.length)throw this.raise(f.UnterminatedRegExp,{at:Y(t,1)});let u=this.input.charCodeAt(i);if(Ge(u))throw this.raise(f.UnterminatedRegExp,{at:Y(t,1)});if(e)e=!1;else{if(u===91)s=!0;else if(u===93&&s)s=!1;else if(u===47&&!s)break;e=u===92}}let a=this.input.slice(r,i);++i;let n="",o=()=>Y(t,i+2-r);for(;i2&&arguments[2]!==void 0?arguments[2]:!1,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,{n:i,pos:a}=Fr(this.input,this.state.pos,this.state.lineStart,this.state.curLine,t,r,e,s,this.errorHandlers_readInt,!1);return this.state.pos=a,i}readRadixNumber(t){let r=this.state.curPosition(),e=!1;this.state.pos+=2;let s=this.readInt(t);s==null&&this.raise(f.InvalidDigit,{at:Y(r,2),radix:t});let i=this.input.charCodeAt(this.state.pos);if(i===110)++this.state.pos,e=!0;else if(i===109)throw this.raise(f.InvalidDecimal,{at:r});if(fe(this.codePointAtPos(this.state.pos)))throw this.raise(f.NumberIdentifier,{at:this.state.curPosition()});if(e){let a=this.input.slice(r.index,this.state.pos).replace(/[_n]/g,"");this.finishToken(133,a);return}this.finishToken(132,s)}readNumber(t){let r=this.state.pos,e=this.state.curPosition(),s=!1,i=!1,a=!1,n=!1,o=!1;!t&&this.readInt(10)===null&&this.raise(f.InvalidNumber,{at:this.state.curPosition()});let u=this.state.pos-r>=2&&this.input.charCodeAt(r)===48;if(u){let T=this.input.slice(r,this.state.pos);if(this.recordStrictModeErrors(f.StrictOctalLiteral,{at:e}),!this.state.strict){let C=T.indexOf("_");C>0&&this.raise(f.ZeroDigitNumericSeparator,{at:Y(e,C)})}o=u&&!/[89]/.test(T)}let c=this.input.charCodeAt(this.state.pos);if(c===46&&!o&&(++this.state.pos,this.readInt(10),s=!0,c=this.input.charCodeAt(this.state.pos)),(c===69||c===101)&&!o&&(c=this.input.charCodeAt(++this.state.pos),(c===43||c===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(f.InvalidOrMissingExponent,{at:e}),s=!0,n=!0,c=this.input.charCodeAt(this.state.pos)),c===110&&((s||u)&&this.raise(f.InvalidBigIntLiteral,{at:e}),++this.state.pos,i=!0),c===109&&(this.expectPlugin("decimal",this.state.curPosition()),(n||u)&&this.raise(f.InvalidDecimal,{at:e}),++this.state.pos,a=!0),fe(this.codePointAtPos(this.state.pos)))throw this.raise(f.NumberIdentifier,{at:this.state.curPosition()});let y=this.input.slice(r,this.state.pos).replace(/[_mn]/g,"");if(i){this.finishToken(133,y);return}if(a){this.finishToken(134,y);return}let g=o?parseInt(y,8):parseFloat(y);this.finishToken(132,g)}readCodePoint(t){let{code:r,pos:e}=Lr(this.input,this.state.pos,this.state.lineStart,this.state.curLine,t,this.errorHandlers_readCodePoint);return this.state.pos=e,r}readString(t){let{str:r,pos:e,curLine:s,lineStart:i}=Dr(t===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=e+1,this.state.lineStart=i,this.state.curLine=s,this.finishToken(131,r)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let t=this.input[this.state.pos],{str:r,firstInvalidLoc:e,pos:s,curLine:i,lineStart:a}=Dr("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=s+1,this.state.lineStart=a,this.state.curLine=i,e&&(this.state.firstInvalidTemplateEscapePos=new ge(e.curLine,e.pos-e.lineStart,e.pos)),this.input.codePointAt(s)===96?this.finishToken(24,e?null:t+r+"`"):(this.state.pos++,this.finishToken(25,e?null:t+r+"${"))}recordStrictModeErrors(t,r){let{at:e}=r,s=e.index;this.state.strict&&!this.state.strictErrors.has(s)?this.raise(t,{at:e}):this.state.strictErrors.set(s,[t,e])}readWord1(t){this.state.containsEsc=!1;let r="",e=this.state.pos,s=this.state.pos;for(t!==void 0&&(this.state.pos+=t<=65535?1:2);this.state.pos=0;o--){let u=n[o];if(u.loc.index===a)return n[o]=t({loc:i,details:s});if(u.loc.indexthis.hasPlugin(r)))throw this.raise(f.MissingOneOfPlugins,{at:this.state.startLoc,missingPlugin:t})}errorBuilder(t){return(r,e,s)=>{this.raise(t,{at:Je(r,e,s)})}}},Ml=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},_l=class{constructor(t){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=t}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Ml)}exit(){let t=this.stack.pop(),r=this.current();for(let[e,s]of Array.from(t.undefinedPrivateNames))r?r.undefinedPrivateNames.has(e)||r.undefinedPrivateNames.set(e,s):this.parser.raise(f.InvalidPrivateFieldResolution,{at:s,identifierName:e})}declarePrivateName(t,r,e){let{privateNames:s,loneAccessors:i,undefinedPrivateNames:a}=this.current(),n=s.has(t);if(r&ts){let o=n&&i.get(t);if(o){let u=o&yt,c=r&yt,y=o&ts,g=r&ts;n=y===g||u!==c,n||i.delete(t)}else n||i.set(t,r)}n&&this.parser.raise(f.PrivateNameRedeclaration,{at:e,identifierName:t}),s.add(t),a.delete(t)}usePrivateName(t,r){let e;for(e of this.stack)if(e.privateNames.has(t))return;e?e.undefinedPrivateNames.set(t,r):this.parser.raise(f.InvalidPrivateFieldResolution,{at:r,identifierName:t})}},Rl=0,Or=1,ls=2,Br=3,Pt=class{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Rl;this.type=void 0,this.type=t}canBeArrowParameterDeclaration(){return this.type===ls||this.type===Or}isCertainlyParameterDeclaration(){return this.type===Br}},Mr=class extends Pt{constructor(t){super(t),this.declarationErrors=new Map}recordDeclarationError(t,r){let{at:e}=r,s=e.index;this.declarationErrors.set(s,[t,e])}clearDeclarationError(t){this.declarationErrors.delete(t)}iterateErrors(t){this.declarationErrors.forEach(t)}},jl=class{constructor(t){this.parser=void 0,this.stack=[new Pt],this.parser=t}enter(t){this.stack.push(t)}exit(){this.stack.pop()}recordParameterInitializerError(t,r){let{at:e}=r,s={at:e.loc.start},{stack:i}=this,a=i.length-1,n=i[a];for(;!n.isCertainlyParameterDeclaration();){if(n.canBeArrowParameterDeclaration())n.recordDeclarationError(t,s);else return;n=i[--a]}this.parser.raise(t,s)}recordArrowParameterBindingError(t,r){let{at:e}=r,{stack:s}=this,i=s[s.length-1],a={at:e.loc.start};if(i.isCertainlyParameterDeclaration())this.parser.raise(t,a);else if(i.canBeArrowParameterDeclaration())i.recordDeclarationError(t,a);else return}recordAsyncArrowParametersError(t){let{at:r}=t,{stack:e}=this,s=e.length-1,i=e[s];for(;i.canBeArrowParameterDeclaration();)i.type===ls&&i.recordDeclarationError(f.AwaitBindingIdentifier,{at:r}),i=e[--s]}validateAsPattern(){let{stack:t}=this,r=t[t.length-1];r.canBeArrowParameterDeclaration()&&r.iterateErrors(e=>{let[s,i]=e;this.parser.raise(s,{at:i});let a=t.length-2,n=t[a];for(;n.canBeArrowParameterDeclaration();)n.clearDeclarationError(i.index),n=t[--a]})}};function ql(){return new Pt(Br)}function Ul(){return new Mr(Or)}function $l(){return new Mr(ls)}function _r(){return new Pt}var Me=0,Rr=1,At=2,jr=4,_e=8,Hl=class{constructor(){this.stacks=[]}enter(t){this.stacks.push(t)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&At)>0}get hasYield(){return(this.currentFlags()&Rr)>0}get hasReturn(){return(this.currentFlags()&jr)>0}get hasIn(){return(this.currentFlags()&_e)>0}};function Tt(t,r){return(t?At:0)|(r?Rr:0)}var zl=class extends Bl{addExtra(t,r,e){let s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;if(!t)return;let i=t.extra=t.extra||{};s?i[r]=e:Object.defineProperty(i,r,{enumerable:s,value:e})}isContextual(t){return this.state.type===t&&!this.state.containsEsc}isUnparsedContextual(t,r){let e=t+r.length;if(this.input.slice(t,e)===r){let s=this.input.charCodeAt(e);return!(De(s)||(s&64512)===55296)}return!1}isLookaheadContextual(t){let r=this.nextTokenStart();return this.isUnparsedContextual(r,t)}eatContextual(t){return this.isContextual(t)?(this.next(),!0):!1}expectContextual(t,r){if(!this.eatContextual(t)){if(r!=null)throw this.raise(r,{at:this.state.startLoc});this.unexpected(null,t)}}canInsertSemicolon(){return this.match(137)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return as.test(this.input.slice(this.state.lastTokEndLoc.index,this.state.start))}hasFollowingLineBreak(){return Ir.lastIndex=this.state.end,Ir.test(this.input)}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(){((arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0)?this.isLineTerminator():this.eat(13))||this.raise(f.MissingSemicolon,{at:this.state.lastTokEndLoc})}expect(t,r){this.eat(t)||this.unexpected(r,t)}tryParse(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.state.clone(),e={node:null};try{let s=t(function(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;throw e.node=i,e});if(this.state.errors.length>r.errors.length){let i=this.state;return this.state=r,this.state.tokensLength=i.tokensLength,{node:s,error:i.errors[r.errors.length],thrown:!1,aborted:!1,failState:i}}return{node:s,error:null,thrown:!1,aborted:!1,failState:null}}catch(s){let i=this.state;if(this.state=r,s instanceof SyntaxError)return{node:null,error:s,thrown:!0,aborted:!1,failState:i};if(s===e)return{node:e.node,error:null,thrown:!1,aborted:!0,failState:i};throw s}}checkExpressionErrors(t,r){if(!t)return!1;let{shorthandAssignLoc:e,doubleProtoLoc:s,privateKeyLoc:i,optionalParametersLoc:a}=t,n=!!e||!!s||!!a||!!i;if(!r)return n;e!=null&&this.raise(f.InvalidCoverInitializedName,{at:e}),s!=null&&this.raise(f.DuplicateProto,{at:s}),i!=null&&this.raise(f.UnexpectedPrivateField,{at:i}),a!=null&&this.unexpected(a)}isLiteralPropertyName(){return it(this.state.type)}isPrivateName(t){return t.type==="PrivateName"}getPrivateNameSV(t){return t.id.name}hasPropertyAsPrivateName(t){return(t.type==="MemberExpression"||t.type==="OptionalMemberExpression")&&this.isPrivateName(t.property)}isObjectProperty(t){return t.type==="ObjectProperty"}isObjectMethod(t){return t.type==="ObjectMethod"}initializeScopes(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.sourceType==="module",r=this.state.labels;this.state.labels=[];let e=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let s=this.inModule;this.inModule=t;let i=this.scope,a=this.getScopeHandler();this.scope=new a(this,t);let n=this.prodParam;this.prodParam=new Hl;let o=this.classScope;this.classScope=new _l(this);let u=this.expressionScope;return this.expressionScope=new jl(this),()=>{this.state.labels=r,this.exportedIdentifiers=e,this.inModule=s,this.scope=i,this.prodParam=n,this.classScope=o,this.expressionScope=u}}enterInitialScopes(){let t=Me;this.inModule&&(t|=At),this.scope.enter(Le),this.prodParam.enter(t)}checkDestructuringPrivate(t){let{privateKeyLoc:r}=t;r!==null&&this.expectPlugin("destructuringPrivate",r)}},vt=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},Et=class{constructor(t,r,e){this.type="",this.start=r,this.end=0,this.loc=new lt(e),t!=null&&t.options.ranges&&(this.range=[r,0]),t!=null&&t.filename&&(this.loc.filename=t.filename)}},hs=Et.prototype;hs.__clone=function(){let t=new Et(void 0,this.start,this.loc.start),r=Object.keys(this);for(let e=0,s=r.length;e1&&arguments[1]!==void 0?arguments[1]:this.state.lastTokEndLoc;t.end=r.index,t.loc.end=r,this.options.ranges&&(t.range[1]=r.index)}resetStartLocationFromNode(t,r){this.resetStartLocation(t,r.loc.start)}},Gl=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),D=pe`flow`({AmbiguousConditionalArrow:"Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.",AmbiguousDeclareModuleKind:"Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.",AssignReservedType:t=>{let{reservedType:r}=t;return`Cannot overwrite reserved type ${r}.`},DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:t=>{let{memberName:r,enumName:e}=t;return`Boolean enum members need to be initialized. Use either \`${r} = true,\` or \`${r} = false,\` in enum \`${e}\`.`},EnumDuplicateMemberName:t=>{let{memberName:r,enumName:e}=t;return`Enum member names need to be unique, but the name \`${r}\` has already been used before in enum \`${e}\`.`},EnumInconsistentMemberValues:t=>{let{enumName:r}=t;return`Enum \`${r}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`},EnumInvalidExplicitType:t=>{let{invalidEnumType:r,enumName:e}=t;return`Enum type \`${r}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${e}\`.`},EnumInvalidExplicitTypeUnknownSupplied:t=>{let{enumName:r}=t;return`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${r}\`.`},EnumInvalidMemberInitializerPrimaryType:t=>{let{enumName:r,memberName:e,explicitType:s}=t;return`Enum \`${r}\` has type \`${s}\`, so the initializer of \`${e}\` needs to be a ${s} literal.`},EnumInvalidMemberInitializerSymbolType:t=>{let{enumName:r,memberName:e}=t;return`Symbol enum members cannot be initialized. Use \`${e},\` in enum \`${r}\`.`},EnumInvalidMemberInitializerUnknownType:t=>{let{enumName:r,memberName:e}=t;return`The enum member initializer for \`${e}\` needs to be a literal (either a boolean, number, or string) in enum \`${r}\`.`},EnumInvalidMemberName:t=>{let{enumName:r,memberName:e,suggestion:s}=t;return`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${e}\`, consider using \`${s}\`, in enum \`${r}\`.`},EnumNumberMemberNotInitialized:t=>{let{enumName:r,memberName:e}=t;return`Number enum members need to be initialized, e.g. \`${e} = 1\` in enum \`${r}\`.`},EnumStringMemberInconsistentlyInitailized:t=>{let{enumName:r}=t;return`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${r}\`.`},GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:t=>{let{reservedType:r}=t;return`Unexpected reserved type ${r}.`},UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of ` async () => {}`, use `async () => {}`.",UnsupportedDeclareExportKind:t=>{let{unsupportedExportKind:r,suggestion:e}=t;return`\`declare export ${r}\` is not supported. Use \`${e}\` instead.`},UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Jl(t){return t.type==="DeclareExportAllDeclaration"||t.type==="DeclareExportDeclaration"&&(!t.declaration||t.declaration.type!=="TypeAlias"&&t.declaration.type!=="InterfaceDeclaration")}function us(t){return t.importKind==="type"||t.importKind==="typeof"}function qr(t){return te(t)&&t!==97}var Xl={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function Yl(t,r){let e=[],s=[];for(let i=0;iclass extends t{constructor(){super(...arguments),this.flowPragma=void 0}getScopeHandler(){return El}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}shouldParseEnums(){return!!this.getPluginOption("flow","enums")}finishToken(e,s){e!==131&&e!==13&&e!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(e,s)}addComment(e){if(this.flowPragma===void 0){let s=Ql.exec(e.value);if(s)if(s[1]==="flow")this.flowPragma="flow";else if(s[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(e)}flowParseTypeInitialiser(e){let s=this.state.inType;this.state.inType=!0,this.expect(e||14);let i=this.flowParseType();return this.state.inType=s,i}flowParsePredicate(){let e=this.startNode(),s=this.state.startLoc;return this.next(),this.expectContextual(108),this.state.lastTokStart>s.index+1&&this.raise(D.UnexpectedSpaceBetweenModuloChecks,{at:s}),this.eat(10)?(e.value=super.parseExpression(),this.expect(11),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let e=this.state.inType;this.state.inType=!0,this.expect(14);let s=null,i=null;return this.match(54)?(this.state.inType=e,i=this.flowParsePredicate()):(s=this.flowParseType(),this.state.inType=e,this.match(54)&&(i=this.flowParsePredicate())),[s,i]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();let s=e.id=this.parseIdentifier(),i=this.startNode(),a=this.startNode();this.match(47)?i.typeParameters=this.flowParseTypeParameterDeclaration():i.typeParameters=null,this.expect(10);let n=this.flowParseFunctionTypeParams();return i.params=n.params,i.rest=n.rest,i.this=n._this,this.expect(11),[i.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),a.typeAnnotation=this.finishNode(i,"FunctionTypeAnnotation"),s.typeAnnotation=this.finishNode(a,"TypeAnnotation"),this.resetEndLocation(s),this.semicolon(),this.scope.declareName(e.id.name,xl,e.id.loc.start),this.finishNode(e,"DeclareFunction")}flowParseDeclare(e,s){if(this.match(80))return this.flowParseDeclareClass(e);if(this.match(68))return this.flowParseDeclareFunction(e);if(this.match(74))return this.flowParseDeclareVariable(e);if(this.eatContextual(125))return this.match(16)?this.flowParseDeclareModuleExports(e):(s&&this.raise(D.NestedDeclareModule,{at:this.state.lastTokStartLoc}),this.flowParseDeclareModule(e));if(this.isContextual(128))return this.flowParseDeclareTypeAlias(e);if(this.isContextual(129))return this.flowParseDeclareOpaqueType(e);if(this.isContextual(127))return this.flowParseDeclareInterface(e);if(this.match(82))return this.flowParseDeclareExportDeclaration(e,s);this.unexpected()}flowParseDeclareVariable(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(e.id.name,mt,e.id.loc.start),this.semicolon(),this.finishNode(e,"DeclareVariable")}flowParseDeclareModule(e){this.scope.enter(Fe),this.match(131)?e.id=super.parseExprAtom():e.id=this.parseIdentifier();let s=e.body=this.startNode(),i=s.body=[];for(this.expect(5);!this.match(8);){let o=this.startNode();this.match(83)?(this.next(),!this.isContextual(128)&&!this.match(87)&&this.raise(D.InvalidNonTypeImportInDeclareModule,{at:this.state.lastTokStartLoc}),super.parseImport(o)):(this.expectContextual(123,D.UnsupportedStatementInDeclareModule),o=this.flowParseDeclare(o,!0)),i.push(o)}this.scope.exit(),this.expect(8),this.finishNode(s,"BlockStatement");let a=null,n=!1;return i.forEach(o=>{Jl(o)?(a==="CommonJS"&&this.raise(D.AmbiguousDeclareModuleKind,{at:o}),a="ES"):o.type==="DeclareModuleExports"&&(n&&this.raise(D.DuplicateDeclareModuleExports,{at:o}),a==="ES"&&this.raise(D.AmbiguousDeclareModuleKind,{at:o}),a="CommonJS",n=!0)}),e.kind=a||"CommonJS",this.finishNode(e,"DeclareModule")}flowParseDeclareExportDeclaration(e,s){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?e.declaration=this.flowParseDeclare(this.startNode()):(e.declaration=this.flowParseType(),this.semicolon()),e.default=!0,this.finishNode(e,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(128)||this.isContextual(127))&&!s){let i=this.state.value;throw this.raise(D.UnsupportedDeclareExportKind,{at:this.state.startLoc,unsupportedExportKind:i,suggestion:Xl[i]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(129))return e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(127)||this.isContextual(128)||this.isContextual(129))return e=this.parseExport(e,null),e.type==="ExportNamedDeclaration"&&(e.type="ExportDeclaration",e.default=!1,delete e.exportKind),e.type="Declare"+e.type,e;this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(109),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){this.next();let s=this.flowParseTypeAlias(e);return s.type="DeclareTypeAlias",s}flowParseDeclareOpaqueType(e){this.next();let s=this.flowParseOpaqueType(e,!0);return s.type="DeclareOpaqueType",s}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e,!1),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,s){if(e.id=this.flowParseRestrictedIdentifier(!s,!0),this.scope.declareName(e.id.name,s?Er:Be,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],e.implements=[],e.mixins=[],this.eat(81))do e.extends.push(this.flowParseInterfaceExtends());while(!s&&this.eat(12));if(s){if(this.eatContextual(115))do e.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(111))do e.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:s,allowExact:!1,allowSpread:!1,allowProto:s,allowInexact:!1})}flowParseInterfaceExtends(){let e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")}flowParseInterface(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,"InterfaceDeclaration")}checkNotUnderscore(e){e==="_"&&this.raise(D.UnexpectedReservedUnderscore,{at:this.state.startLoc})}checkReservedType(e,s,i){Gl.has(e)&&this.raise(i?D.AssignReservedType:D.UnexpectedReservedType,{at:s,reservedType:e})}flowParseRestrictedIdentifier(e,s){return this.checkReservedType(this.state.value,this.state.startLoc,s),this.parseIdentifier(e)}flowParseTypeAlias(e){return e.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(e.id.name,Be,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,"TypeAlias")}flowParseOpaqueType(e,s){return this.expectContextual(128),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,Be,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(14)&&(e.supertype=this.flowParseTypeInitialiser(14)),e.impltype=null,s||(e.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(e,"OpaqueType")}flowParseTypeParameter(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,s=this.state.startLoc,i=this.startNode(),a=this.flowParseVariance(),n=this.flowParseTypeAnnotatableIdentifier();return i.name=n.name,i.variance=a,i.bound=n.typeAnnotation,this.match(29)?(this.eat(29),i.default=this.flowParseType()):e&&this.raise(D.MissingTypeParamDefault,{at:s}),this.finishNode(i,"TypeParameter")}flowParseTypeParameterDeclaration(){let e=this.state.inType,s=this.startNode();s.params=[],this.state.inType=!0,this.match(47)||this.match(140)?this.next():this.unexpected();let i=!1;do{let a=this.flowParseTypeParameter(i);s.params.push(a),a.default&&(i=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(s,"TypeParameterDeclaration")}flowParseTypeParameterInstantiation(){let e=this.startNode(),s=this.state.inType;e.params=[],this.state.inType=!0,this.expect(47);let i=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);return this.state.noAnonFunctionType=i,this.expect(48),this.state.inType=s,this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){let e=this.startNode(),s=this.state.inType;for(e.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)e.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=s,this.finishNode(e,"TypeParameterInstantiation")}flowParseInterfaceType(){let e=this.startNode();if(this.expectContextual(127),e.extends=[],this.eat(81))do e.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return e.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(e,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(132)||this.match(131)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,s,i){return e.static=s,this.lookahead().type===14?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=i,this.finishNode(e,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(e,s){return e.static=s,e.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(e.method=!0,e.optional=!1,e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start))):(e.method=!1,this.eat(17)&&(e.optional=!0),e.value=this.flowParseTypeInitialiser()),this.finishNode(e,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(e){for(e.params=[],e.rest=null,e.typeParameters=null,e.this=null,this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(e.this=this.flowParseFunctionTypeParam(!0),e.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(e.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(e,s){let i=this.startNode();return e.static=s,e.value=this.flowParseObjectTypeMethodish(i),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType(e){let{allowStatic:s,allowExact:i,allowSpread:a,allowProto:n,allowInexact:o}=e,u=this.state.inType;this.state.inType=!0;let c=this.startNode();c.callProperties=[],c.properties=[],c.indexers=[],c.internalSlots=[];let y,g,T=!1;for(i&&this.match(6)?(this.expect(6),y=9,g=!0):(this.expect(5),y=8,g=!1),c.exact=g;!this.match(y);){let M=!1,j=null,K=null,W=this.startNode();if(n&&this.isContextual(116)){let X=this.lookahead();X.type!==14&&X.type!==17&&(this.next(),j=this.state.startLoc,s=!1)}if(s&&this.isContextual(104)){let X=this.lookahead();X.type!==14&&X.type!==17&&(this.next(),M=!0)}let V=this.flowParseVariance();if(this.eat(0))j!=null&&this.unexpected(j),this.eat(0)?(V&&this.unexpected(V.loc.start),c.internalSlots.push(this.flowParseObjectTypeInternalSlot(W,M))):c.indexers.push(this.flowParseObjectTypeIndexer(W,M,V));else if(this.match(10)||this.match(47))j!=null&&this.unexpected(j),V&&this.unexpected(V.loc.start),c.callProperties.push(this.flowParseObjectTypeCallProperty(W,M));else{let X="init";if(this.isContextual(98)||this.isContextual(103)){let Nh=this.lookahead();it(Nh.type)&&(X=this.state.value,this.next())}let je=this.flowParseObjectTypeProperty(W,M,j,V,X,a,o!=null?o:!g);je===null?(T=!0,K=this.state.lastTokStartLoc):c.properties.push(je)}this.flowObjectTypeSemicolon(),K&&!this.match(8)&&!this.match(9)&&this.raise(D.UnexpectedExplicitInexactInObject,{at:K})}this.expect(y),a&&(c.inexact=T);let C=this.finishNode(c,"ObjectTypeAnnotation");return this.state.inType=u,C}flowParseObjectTypeProperty(e,s,i,a,n,o,u){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(o?u||this.raise(D.InexactInsideExact,{at:this.state.lastTokStartLoc}):this.raise(D.InexactInsideNonObject,{at:this.state.lastTokStartLoc}),a&&this.raise(D.InexactVariance,{at:a}),null):(o||this.raise(D.UnexpectedSpreadType,{at:this.state.lastTokStartLoc}),i!=null&&this.unexpected(i),a&&this.raise(D.SpreadVariance,{at:a}),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"));{e.key=this.flowParseObjectPropertyKey(),e.static=s,e.proto=i!=null,e.kind=n;let c=!1;return this.match(47)||this.match(10)?(e.method=!0,i!=null&&this.unexpected(i),a&&this.unexpected(a.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),(n==="get"||n==="set")&&this.flowCheckGetterSetterParams(e),!o&&e.key.name==="constructor"&&e.value.this&&this.raise(D.ThisParamBannedInConstructor,{at:e.value.this})):(n!=="init"&&this.unexpected(),e.method=!1,this.eat(17)&&(c=!0),e.value=this.flowParseTypeInitialiser(),e.variance=a),e.optional=c,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){let s=e.kind==="get"?0:1,i=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise(e.kind==="get"?D.GetterMayNotHaveThisParam:D.SetterMayNotHaveThisParam,{at:e.value.this}),i!==s&&this.raise(e.kind==="get"?f.BadGetterArity:f.BadSetterArity,{at:e}),e.kind==="set"&&e.value.rest&&this.raise(f.BadSetterRestParameter,{at:e})}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(e,s){var i;(i=e)!=null||(e=this.state.startLoc);let a=s||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let n=this.startNodeAt(e);n.qualification=a,n.id=this.flowParseRestrictedIdentifier(!0),a=this.finishNode(n,"QualifiedTypeIdentifier")}return a}flowParseGenericType(e,s){let i=this.startNodeAt(e);return i.typeParameters=null,i.id=this.flowParseQualifiedTypeIdentifier(e,s),this.match(47)&&(i.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(i,"GenericTypeAnnotation")}flowParseTypeofType(){let e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")}flowParseTupleType(){let e=this.startNode();for(e.types=[],this.expect(0);this.state.pos0&&arguments[0]!==void 0?arguments[0]:[],s=null,i=null;for(this.match(78)&&(i=this.flowParseFunctionTypeParam(!0),i.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(s=this.flowParseFunctionTypeParam(!1)),{params:e,rest:s,_this:i}}flowIdentToTypeAnnotation(e,s,i){switch(i.name){case"any":return this.finishNode(s,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(s,"BooleanTypeAnnotation");case"mixed":return this.finishNode(s,"MixedTypeAnnotation");case"empty":return this.finishNode(s,"EmptyTypeAnnotation");case"number":return this.finishNode(s,"NumberTypeAnnotation");case"string":return this.finishNode(s,"StringTypeAnnotation");case"symbol":return this.finishNode(s,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(i.name),this.flowParseGenericType(e,i)}}flowParsePrimaryType(){let e=this.state.startLoc,s=this.startNode(),i,a,n=!1,o=this.state.noAnonFunctionType;switch(this.state.type){case 5:return this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!0,allowProto:!1,allowInexact:!0});case 6:return this.flowParseObjectType({allowStatic:!1,allowExact:!0,allowSpread:!0,allowProto:!1,allowInexact:!1});case 0:return this.state.noAnonFunctionType=!1,a=this.flowParseTupleType(),this.state.noAnonFunctionType=o,a;case 47:return s.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),i=this.flowParseFunctionTypeParams(),s.params=i.params,s.rest=i.rest,s.this=i._this,this.expect(11),this.expect(19),s.returnType=this.flowParseType(),this.finishNode(s,"FunctionTypeAnnotation");case 10:if(this.next(),!this.match(11)&&!this.match(21))if(q(this.state.type)||this.match(78)){let u=this.lookahead().type;n=u!==17&&u!==14}else n=!0;if(n){if(this.state.noAnonFunctionType=!1,a=this.flowParseType(),this.state.noAnonFunctionType=o,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&this.lookahead().type===19))return this.expect(11),a;this.eat(12)}return a?i=this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(a)]):i=this.flowParseFunctionTypeParams(),s.params=i.params,s.rest=i.rest,s.this=i._this,this.expect(11),this.expect(19),s.returnType=this.flowParseType(),s.typeParameters=null,this.finishNode(s,"FunctionTypeAnnotation");case 131:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return s.value=this.match(85),this.next(),this.finishNode(s,"BooleanLiteralTypeAnnotation");case 53:if(this.state.value==="-"){if(this.next(),this.match(132))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",s);if(this.match(133))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",s);throw this.raise(D.UnexpectedSubtractionOperand,{at:this.state.startLoc})}this.unexpected();return;case 132:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 133:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(s,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(s,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(s,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(s,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if($t(this.state.type)){let u=xe(this.state.type);return this.next(),super.createIdentifier(s,u)}else if(q(this.state.type))return this.isContextual(127)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(e,s,this.parseIdentifier())}this.unexpected()}flowParsePostfixType(){let e=this.state.startLoc,s=this.flowParsePrimaryType(),i=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){let a=this.startNodeAt(e),n=this.eat(18);i=i||n,this.expect(0),!n&&this.match(3)?(a.elementType=s,this.next(),s=this.finishNode(a,"ArrayTypeAnnotation")):(a.objectType=s,a.indexType=this.flowParseType(),this.expect(3),i?(a.optional=n,s=this.finishNode(a,"OptionalIndexedAccessType")):s=this.finishNode(a,"IndexedAccessType"))}return s}flowParsePrefixType(){let e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){let e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){let s=this.startNodeAt(e.loc.start);return s.params=[this.reinterpretTypeAsFunctionTypeParam(e)],s.rest=null,s.this=null,s.returnType=this.flowParseType(),s.typeParameters=null,this.finishNode(s,"FunctionTypeAnnotation")}return e}flowParseIntersectionType(){let e=this.startNode();this.eat(45);let s=this.flowParseAnonFunctionWithoutParens();for(e.types=[s];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return e.types.length===1?s:this.finishNode(e,"IntersectionTypeAnnotation")}flowParseUnionType(){let e=this.startNode();this.eat(43);let s=this.flowParseIntersectionType();for(e.types=[s];this.eat(43);)e.types.push(this.flowParseIntersectionType());return e.types.length===1?s:this.finishNode(e,"UnionTypeAnnotation")}flowParseType(){let e=this.state.inType;this.state.inType=!0;let s=this.flowParseUnionType();return this.state.inType=e,s}flowParseTypeOrImplicitInstantiation(){if(this.state.type===130&&this.state.value==="_"){let e=this.state.startLoc,s=this.parseIdentifier();return this.flowParseGenericType(e,s)}else return this.flowParseType()}flowParseTypeAnnotation(){let e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(e){let s=e?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(s.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(s)),s}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}flowParseVariance(){let e=null;return this.match(53)?(e=this.startNode(),this.state.value==="+"?e.kind="plus":e.kind="minus",this.next(),this.finishNode(e,"Variance")):e}parseFunctionBody(e,s){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(s){this.forwardNoArrowParamsConversionAt(e,()=>super.parseFunctionBody(e,!0,i));return}super.parseFunctionBody(e,!1,i)}parseFunctionBodyAndFinish(e,s){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(this.match(14)){let a=this.startNode();[a.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=a.typeAnnotation?this.finishNode(a,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(e,s,i)}parseStatementLike(e){if(this.state.strict&&this.isContextual(127)){let i=this.lookahead();if(te(i.type)){let a=this.startNode();return this.next(),this.flowParseInterface(a)}}else if(this.shouldParseEnums()&&this.isContextual(124)){let i=this.startNode();return this.next(),this.flowParseEnumDeclaration(i)}let s=super.parseStatementLike(e);return this.flowPragma===void 0&&!this.isValidDirective(s)&&(this.flowPragma=null),s}parseExpressionStatement(e,s,i){if(s.type==="Identifier"){if(s.name==="declare"){if(this.match(80)||q(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(q(this.state.type)){if(s.name==="interface")return this.flowParseInterface(e);if(s.name==="type")return this.flowParseTypeAlias(e);if(s.name==="opaque")return this.flowParseOpaqueType(e,!1)}}return super.parseExpressionStatement(e,s,i)}shouldParseExportDeclaration(){let{type:e}=this.state;return hr(e)||this.shouldParseEnums()&&e===124?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:e}=this.state;return hr(e)||this.shouldParseEnums()&&e===124?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.shouldParseEnums()&&this.isContextual(124)){let e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,s,i){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){let T=this.lookaheadCharCode();if(T===44||T===61||T===58||T===41)return this.setOptionalParametersError(i),e}this.expect(17);let a=this.state.clone(),n=this.state.noArrowAt,o=this.startNodeAt(s),{consequent:u,failed:c}=this.tryParseConditionalConsequent(),[y,g]=this.getArrowLikeExpressions(u);if(c||g.length>0){let T=[...n];if(g.length>0){this.state=a,this.state.noArrowAt=T;for(let C=0;C1&&this.raise(D.AmbiguousConditionalArrow,{at:a.startLoc}),c&&y.length===1&&(this.state=a,T.push(y[0].start),this.state.noArrowAt=T,{consequent:u,failed:c}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(u,!0),this.state.noArrowAt=n,this.expect(14),o.test=e,o.consequent=u,o.alternate=this.forwardNoArrowParamsConversionAt(o,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(o,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let e=this.parseMaybeAssignAllowIn(),s=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:s}}getArrowLikeExpressions(e,s){let i=[e],a=[];for(;i.length!==0;){let n=i.pop();n.type==="ArrowFunctionExpression"?(n.typeParameters||!n.returnType?this.finishArrowValidation(n):a.push(n),i.push(n.body)):n.type==="ConditionalExpression"&&(i.push(n.consequent),i.push(n.alternate))}return s?(a.forEach(n=>this.finishArrowValidation(n)),[a,[]]):Yl(a,n=>n.params.every(o=>this.isAssignable(o,!0)))}finishArrowValidation(e){var s;this.toAssignableList(e.params,(s=e.extra)==null?void 0:s.trailingCommaLoc,!1),this.scope.enter(de|Gt),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,s){let i;return this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1?(this.state.noArrowParamsConversionAt.push(this.state.start),i=s(),this.state.noArrowParamsConversionAt.pop()):i=s(),i}parseParenItem(e,s){if(e=super.parseParenItem(e,s),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){let i=this.startNodeAt(s);return i.expression=e,i.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(i,"TypeCastExpression")}return e}assertModuleNodeAllowed(e){e.type==="ImportDeclaration"&&(e.importKind==="type"||e.importKind==="typeof")||e.type==="ExportNamedDeclaration"&&e.exportKind==="type"||e.type==="ExportAllDeclaration"&&e.exportKind==="type"||super.assertModuleNodeAllowed(e)}parseExport(e,s){let i=super.parseExport(e,s);return(i.type==="ExportNamedDeclaration"||i.type==="ExportAllDeclaration")&&(i.exportKind=i.exportKind||"value"),i}parseExportDeclaration(e){if(this.isContextual(128)){e.exportKind="type";let s=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(e),null):this.flowParseTypeAlias(s)}else if(this.isContextual(129)){e.exportKind="type";let s=this.startNode();return this.next(),this.flowParseOpaqueType(s,!1)}else if(this.isContextual(127)){e.exportKind="type";let s=this.startNode();return this.next(),this.flowParseInterface(s)}else if(this.shouldParseEnums()&&this.isContextual(124)){e.exportKind="value";let s=this.startNode();return this.next(),this.flowParseEnumDeclaration(s)}else return super.parseExportDeclaration(e)}eatExportStar(e){return super.eatExportStar(e)?!0:this.isContextual(128)&&this.lookahead().type===55?(e.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(e){let{startLoc:s}=this.state,i=super.maybeParseExportNamespaceSpecifier(e);return i&&e.exportKind==="type"&&this.unexpected(s),i}parseClassId(e,s,i){super.parseClassId(e,s,i),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,s,i){let{startLoc:a}=this.state;if(this.isContextual(123)){if(super.parseClassMemberFromModifier(e,s))return;s.declare=!0}super.parseClassMember(e,s,i),s.declare&&(s.type!=="ClassProperty"&&s.type!=="ClassPrivateProperty"&&s.type!=="PropertyDefinition"?this.raise(D.DeclareClassElement,{at:a}):s.value&&this.raise(D.DeclareClassFieldInitializer,{at:s.value}))}isIterator(e){return e==="iterator"||e==="asyncIterator"}readIterator(){let e=super.readWord1(),s="@@"+e;(!this.isIterator(e)||!this.state.inType)&&this.raise(f.InvalidIdentifier,{at:this.state.curPosition(),identifierName:s}),this.finishToken(130,s)}getTokenFromCode(e){let s=this.input.charCodeAt(this.state.pos+1);e===123&&s===124?this.finishOp(6,2):this.state.inType&&(e===62||e===60)?this.finishOp(e===62?48:47,1):this.state.inType&&e===63?s===46?this.finishOp(18,2):this.finishOp(17,1):ll(e,s,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(e)}isAssignable(e,s){return e.type==="TypeCastExpression"?this.isAssignable(e.expression,s):super.isAssignable(e,s)}toAssignable(e){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;!s&&e.type==="AssignmentExpression"&&e.left.type==="TypeCastExpression"&&(e.left=this.typeCastToParameter(e.left)),super.toAssignable(e,s)}toAssignableList(e,s,i){for(let a=0;a1||!s)&&this.raise(D.TypeCastInPattern,{at:n.typeAnnotation})}return e}parseArrayLike(e,s,i,a){let n=super.parseArrayLike(e,s,i,a);return s&&!this.state.maybeInArrowParameters&&this.toReferencedList(n.elements),n}isValidLVal(e,s,i){return e==="TypeCastExpression"||super.isValidLVal(e,s,i)}parseClassProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(e)}parseClassPrivateProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(e){return!this.match(14)&&super.isNonstaticConstructor(e)}pushClassMethod(e,s,i,a,n,o){if(s.variance&&this.unexpected(s.variance.loc.start),delete s.variance,this.match(47)&&(s.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,s,i,a,n,o),s.params&&n){let u=s.params;u.length>0&&this.isThisParam(u[0])&&this.raise(D.ThisParamBannedInConstructor,{at:s})}else if(s.type==="MethodDefinition"&&n&&s.value.params){let u=s.value.params;u.length>0&&this.isThisParam(u[0])&&this.raise(D.ThisParamBannedInConstructor,{at:s})}}pushClassPrivateMethod(e,s,i,a){s.variance&&this.unexpected(s.variance.loc.start),delete s.variance,this.match(47)&&(s.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,s,i,a)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&this.match(47)&&(e.superTypeParameters=this.flowParseTypeParameterInstantiation()),this.isContextual(111)){this.next();let s=e.implements=[];do{let i=this.startNode();i.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?i.typeParameters=this.flowParseTypeParameterInstantiation():i.typeParameters=null,s.push(this.finishNode(i,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);let s=this.getObjectOrClassMethodParams(e);if(s.length>0){let i=s[0];this.isThisParam(i)&&e.kind==="get"?this.raise(D.GetterMayNotHaveThisParam,{at:i}):this.isThisParam(i)&&this.raise(D.SetterMayNotHaveThisParam,{at:i})}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,s,i,a,n,o,u){e.variance&&this.unexpected(e.variance.loc.start),delete e.variance;let c;this.match(47)&&!o&&(c=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let y=super.parseObjPropValue(e,s,i,a,n,o,u);return c&&((y.value||y).typeParameters=c),y}parseAssignableListItemTypes(e){return this.eat(17)&&(e.type!=="Identifier"&&this.raise(D.PatternIsOptional,{at:e}),this.isThisParam(e)&&this.raise(D.ThisParamMayNotBeOptional,{at:e}),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(D.ThisParamAnnotationRequired,{at:e}),this.match(29)&&this.isThisParam(e)&&this.raise(D.ThisParamNoDefault,{at:e}),this.resetEndLocation(e),e}parseMaybeDefault(e,s){let i=super.parseMaybeDefault(e,s);return i.type==="AssignmentPattern"&&i.typeAnnotation&&i.right.startsuper.parseMaybeAssign(e,s),a),!n.error)return n.node;let{context:c}=this.state,y=c[c.length-1];(y===x.j_oTag||y===x.j_expr)&&c.pop()}if((i=n)!=null&&i.error||this.match(47)){var o,u;a=a||this.state.clone();let c,y=this.tryParse(T=>{var C;c=this.flowParseTypeParameterDeclaration();let M=this.forwardNoArrowParamsConversionAt(c,()=>{let K=super.parseMaybeAssign(e,s);return this.resetStartLocationFromNode(K,c),K});(C=M.extra)!=null&&C.parenthesized&&T();let j=this.maybeUnwrapTypeCastExpression(M);return j.type!=="ArrowFunctionExpression"&&T(),j.typeParameters=c,this.resetStartLocationFromNode(j,c),M},a),g=null;if(y.node&&this.maybeUnwrapTypeCastExpression(y.node).type==="ArrowFunctionExpression"){if(!y.error&&!y.aborted)return y.node.async&&this.raise(D.UnexpectedTypeParameterBeforeAsyncArrowFunction,{at:c}),y.node;g=y.node}if((o=n)!=null&&o.node)return this.state=n.failState,n.node;if(g)return this.state=y.failState,g;throw(u=n)!=null&&u.thrown?n.error:y.thrown?y.error:this.raise(D.UnexpectedTokenAfterTypeParameter,{at:c})}return super.parseMaybeAssign(e,s)}parseArrow(e){if(this.match(14)){let s=this.tryParse(()=>{let i=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let a=this.startNode();return[a.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=i,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),a});if(s.thrown)return null;s.error&&(this.state=s.failState),e.returnType=s.node.typeAnnotation?this.finishNode(s.node,"TypeAnnotation"):null}return super.parseArrow(e)}shouldParseArrow(e){return this.match(14)||super.shouldParseArrow(e)}setArrowFunctionParameters(e,s){this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1?e.params=s:super.setArrowFunctionParameters(e,s)}checkParams(e,s,i){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;if(!(i&&this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1)){for(let n=0;n0&&this.raise(D.ThisParamMustBeFirst,{at:e.params[n]});super.checkParams(e,s,i,a)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&this.state.noArrowAt.indexOf(this.state.start)===-1)}parseSubscripts(e,s,i){if(e.type==="Identifier"&&e.name==="async"&&this.state.noArrowAt.indexOf(s.index)!==-1){this.next();let a=this.startNodeAt(s);a.callee=e,a.arguments=super.parseCallExpressionArguments(11,!1),e=this.finishNode(a,"CallExpression")}else if(e.type==="Identifier"&&e.name==="async"&&this.match(47)){let a=this.state.clone(),n=this.tryParse(u=>this.parseAsyncArrowWithTypeParameters(s)||u(),a);if(!n.error&&!n.aborted)return n.node;let o=this.tryParse(()=>super.parseSubscripts(e,s,i),a);if(o.node&&!o.error)return o.node;if(n.node)return this.state=n.failState,n.node;if(o.node)return this.state=o.failState,o.node;throw n.error||o.error}return super.parseSubscripts(e,s,i)}parseSubscript(e,s,i,a){if(this.match(18)&&this.isLookaheadToken_lt()){if(a.optionalChainMember=!0,i)return a.stop=!0,e;this.next();let n=this.startNodeAt(s);return n.callee=e,n.typeArguments=this.flowParseTypeParameterInstantiation(),this.expect(10),n.arguments=this.parseCallExpressionArguments(11,!1),n.optional=!0,this.finishCallExpression(n,!0)}else if(!i&&this.shouldParseTypes()&&this.match(47)){let n=this.startNodeAt(s);n.callee=e;let o=this.tryParse(()=>(n.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),n.arguments=super.parseCallExpressionArguments(11,!1),a.optionalChainMember&&(n.optional=!1),this.finishCallExpression(n,a.optionalChainMember)));if(o.node)return o.error&&(this.state=o.failState),o.node}return super.parseSubscript(e,s,i,a)}parseNewCallee(e){super.parseNewCallee(e);let s=null;this.shouldParseTypes()&&this.match(47)&&(s=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),e.typeArguments=s}parseAsyncArrowWithTypeParameters(e){let s=this.startNodeAt(e);if(this.parseFunctionParams(s,!1),!!this.parseArrow(s))return super.parseArrowExpression(s,void 0,!0)}readToken_mult_modulo(e){let s=this.input.charCodeAt(this.state.pos+1);if(e===42&&s===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(e)}readToken_pipe_amp(e){let s=this.input.charCodeAt(this.state.pos+1);if(e===124&&s===125){this.finishOp(9,2);return}super.readToken_pipe_amp(e)}parseTopLevel(e,s){let i=super.parseTopLevel(e,s);return this.state.hasFlowComment&&this.raise(D.UnterminatedFlowComment,{at:this.state.curPosition()}),i}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(D.NestedFlowComment,{at:this.state.startLoc});this.hasFlowCommentCompletion();let e=this.skipFlowComment();e&&(this.state.pos+=e,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:e}=this.state,s=2;for(;[32,9].includes(this.input.charCodeAt(e+s));)s++;let i=this.input.charCodeAt(s+e),a=this.input.charCodeAt(s+e+1);return i===58&&a===58?s+2:this.input.slice(s+e,s+e+12)==="flow-include"?s+12:i===58&&a!==58?s:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(f.UnterminatedComment,{at:this.state.curPosition()})}flowEnumErrorBooleanMemberNotInitialized(e,s){let{enumName:i,memberName:a}=s;this.raise(D.EnumBooleanMemberNotInitialized,{at:e,memberName:a,enumName:i})}flowEnumErrorInvalidMemberInitializer(e,s){return this.raise(s.explicitType?s.explicitType==="symbol"?D.EnumInvalidMemberInitializerSymbolType:D.EnumInvalidMemberInitializerPrimaryType:D.EnumInvalidMemberInitializerUnknownType,Object.assign({at:e},s))}flowEnumErrorNumberMemberNotInitialized(e,s){let{enumName:i,memberName:a}=s;this.raise(D.EnumNumberMemberNotInitialized,{at:e,enumName:i,memberName:a})}flowEnumErrorStringMemberInconsistentlyInitailized(e,s){let{enumName:i}=s;this.raise(D.EnumStringMemberInconsistentlyInitailized,{at:e,enumName:i})}flowEnumMemberInit(){let e=this.state.startLoc,s=()=>this.match(12)||this.match(8);switch(this.state.type){case 132:{let i=this.parseNumericLiteral(this.state.value);return s()?{type:"number",loc:i.loc.start,value:i}:{type:"invalid",loc:e}}case 131:{let i=this.parseStringLiteral(this.state.value);return s()?{type:"string",loc:i.loc.start,value:i}:{type:"invalid",loc:e}}case 85:case 86:{let i=this.parseBooleanLiteral(this.match(85));return s()?{type:"boolean",loc:i.loc.start,value:i}:{type:"invalid",loc:e}}default:return{type:"invalid",loc:e}}}flowEnumMemberRaw(){let e=this.state.startLoc,s=this.parseIdentifier(!0),i=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e};return{id:s,init:i}}flowEnumCheckExplicitTypeMismatch(e,s,i){let{explicitType:a}=s;a!==null&&a!==i&&this.flowEnumErrorInvalidMemberInitializer(e,s)}flowEnumMembers(e){let{enumName:s,explicitType:i}=e,a=new Set,n={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},o=!1;for(;!this.match(8);){if(this.eat(21)){o=!0;break}let u=this.startNode(),{id:c,init:y}=this.flowEnumMemberRaw(),g=c.name;if(g==="")continue;/^[a-z]/.test(g)&&this.raise(D.EnumInvalidMemberName,{at:c,memberName:g,suggestion:g[0].toUpperCase()+g.slice(1),enumName:s}),a.has(g)&&this.raise(D.EnumDuplicateMemberName,{at:c,memberName:g,enumName:s}),a.add(g);let T={enumName:s,explicitType:i,memberName:g};switch(u.id=c,y.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(y.loc,T,"boolean"),u.init=y.value,n.booleanMembers.push(this.finishNode(u,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(y.loc,T,"number"),u.init=y.value,n.numberMembers.push(this.finishNode(u,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(y.loc,T,"string"),u.init=y.value,n.stringMembers.push(this.finishNode(u,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(y.loc,T);case"none":switch(i){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(y.loc,T);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(y.loc,T);break;default:n.defaultedMembers.push(this.finishNode(u,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:n,hasUnknownMembers:o}}flowEnumStringMembers(e,s,i){let{enumName:a}=i;if(e.length===0)return s;if(s.length===0)return e;if(s.length>e.length){for(let n of e)this.flowEnumErrorStringMemberInconsistentlyInitailized(n,{enumName:a});return s}else{for(let n of s)this.flowEnumErrorStringMemberInconsistentlyInitailized(n,{enumName:a});return e}}flowEnumParseExplicitType(e){let{enumName:s}=e;if(!this.eatContextual(101))return null;if(!q(this.state.type))throw this.raise(D.EnumInvalidExplicitTypeUnknownSupplied,{at:this.state.startLoc,enumName:s});let{value:i}=this.state;return this.next(),i!=="boolean"&&i!=="number"&&i!=="string"&&i!=="symbol"&&this.raise(D.EnumInvalidExplicitType,{at:this.state.startLoc,enumName:s,invalidEnumType:i}),i}flowEnumBody(e,s){let i=s.name,a=s.loc.start,n=this.flowEnumParseExplicitType({enumName:i});this.expect(5);let{members:o,hasUnknownMembers:u}=this.flowEnumMembers({enumName:i,explicitType:n});switch(e.hasUnknownMembers=u,n){case"boolean":return e.explicitType=!0,e.members=o.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=o.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:i}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=o.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{let c=()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody"));e.explicitType=!1;let y=o.booleanMembers.length,g=o.numberMembers.length,T=o.stringMembers.length,C=o.defaultedMembers.length;if(!y&&!g&&!T&&!C)return c();if(!y&&!g)return e.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:i}),this.expect(8),this.finishNode(e,"EnumStringBody");if(!g&&!T&&y>=C){for(let M of o.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(M.loc.start,{enumName:i,memberName:M.id.name});return e.members=o.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}else if(!y&&!T&&g>=C){for(let M of o.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(M.loc.start,{enumName:i,memberName:M.id.name});return e.members=o.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}else return this.raise(D.EnumInconsistentMemberValues,{at:a,enumName:i}),c()}}}flowParseEnumDeclaration(e){let s=this.parseIdentifier();return e.id=s,e.body=this.flowEnumBody(this.startNode(),s),this.finishNode(e,"EnumDeclaration")}isLookaheadToken_lt(){let e=this.nextTokenStart();if(this.input.charCodeAt(e)===60){let s=this.input.charCodeAt(e+1);return s!==60&&s!==61}return!1}maybeUnwrapTypeCastExpression(e){return e.type==="TypeCastExpression"?e.expression:e}},eh={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"},Se=pe`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:t=>{let{openingTagName:r}=t;return`Expected corresponding JSX closing tag for <${r}>.`},MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:t=>{let{unexpected:r,HTMLEntity:e}=t;return`Unexpected token \`${r}\`. Did you mean \`${e}\` or \`{'${r}'}\`?`},UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...?"});function Te(t){return t?t.type==="JSXOpeningFragment"||t.type==="JSXClosingFragment":!1}function Re(t){if(t.type==="JSXIdentifier")return t.name;if(t.type==="JSXNamespacedName")return t.namespace.name+":"+t.name.name;if(t.type==="JSXMemberExpression")return Re(t.object)+"."+Re(t.property);throw new Error("Node had unexpected type: "+t.type)}var th=t=>class extends t{jsxReadToken(){let e="",s=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(Se.UnterminatedJsxContent,{at:this.state.startLoc});let i=this.input.charCodeAt(this.state.pos);switch(i){case 60:case 123:if(this.state.pos===this.state.start){i===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(140)):super.getTokenFromCode(i);return}e+=this.input.slice(s,this.state.pos),this.finishToken(139,e);return;case 38:e+=this.input.slice(s,this.state.pos),e+=this.jsxReadEntity(),s=this.state.pos;break;case 62:case 125:default:Ge(i)?(e+=this.input.slice(s,this.state.pos),e+=this.jsxReadNewLine(!0),s=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){let s=this.input.charCodeAt(this.state.pos),i;return++this.state.pos,s===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,i=e?` +`:`\r +`):i=String.fromCharCode(s),++this.state.curLine,this.state.lineStart=this.state.pos,i}jsxReadString(e){let s="",i=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(f.UnterminatedString,{at:this.state.startLoc});let a=this.input.charCodeAt(this.state.pos);if(a===e)break;a===38?(s+=this.input.slice(i,this.state.pos),s+=this.jsxReadEntity(),i=this.state.pos):Ge(a)?(s+=this.input.slice(i,this.state.pos),s+=this.jsxReadNewLine(!1),i=this.state.pos):++this.state.pos}s+=this.input.slice(i,this.state.pos++),this.finishToken(131,s)}jsxReadEntity(){let e=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let s=10;this.codePointAtPos(this.state.pos)===120&&(s=16,++this.state.pos);let i=this.readInt(s,void 0,!1,"bail");if(i!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(i)}else{let s=0,i=!1;for(;s++<10&&this.state.pos1){for(let s=0;s=0;s--){let i=this.scopeStack[s];if(i.types.has(r)||i.exportOnlyBindings.has(r))return}super.checkLocalExport(t)}},ih=(t,r)=>Object.hasOwnProperty.call(t,r)&&t[r],Ur=t=>t.type==="ParenthesizedExpression"?Ur(t.expression):t,ah=class extends Wl{toAssignable(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;var e,s;let i;switch((t.type==="ParenthesizedExpression"||(e=t.extra)!=null&&e.parenthesized)&&(i=Ur(t),r?i.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(f.InvalidParenthesizedAssignment,{at:t}):i.type!=="MemberExpression"&&this.raise(f.InvalidParenthesizedAssignment,{at:t}):this.raise(f.InvalidParenthesizedAssignment,{at:t})),t.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":t.type="ObjectPattern";for(let n=0,o=t.properties.length,u=o-1;ns.type!=="ObjectMethod"&&(i===e||s.type!=="SpreadElement")&&this.isAssignable(s))}case"ObjectProperty":return this.isAssignable(t.value);case"SpreadElement":return this.isAssignable(t.argument);case"ArrayExpression":return t.elements.every(e=>e===null||this.isAssignable(e));case"AssignmentExpression":return t.operator==="=";case"ParenthesizedExpression":return this.isAssignable(t.expression);case"MemberExpression":case"OptionalMemberExpression":return!r;default:return!1}}toReferencedList(t,r){return t}toReferencedListDeep(t,r){this.toReferencedList(t,r);for(let e of t)(e==null?void 0:e.type)==="ArrayExpression"&&this.toReferencedListDeep(e.elements)}parseSpread(t){let r=this.startNode();return this.next(),r.argument=this.parseMaybeAssignAllowIn(t,void 0),this.finishNode(r,"SpreadElement")}parseRestBinding(){let t=this.startNode();return this.next(),t.argument=this.parseBindingAtom(),this.finishNode(t,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let t=this.startNode();return this.next(),t.elements=this.parseBindingList(3,93,1),this.finishNode(t,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(t,r,e){let s=e&1,i=[],a=!0;for(;!this.eat(t);)if(a?a=!1:this.expect(12),s&&this.match(12))i.push(null);else{if(this.eat(t))break;if(this.match(21)){if(i.push(this.parseAssignableListItemTypes(this.parseRestBinding(),e)),!this.checkCommaAfterRest(r)){this.expect(t);break}}else{let n=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(f.UnsupportedParameterDecorator,{at:this.state.startLoc});this.match(26);)n.push(this.parseDecorator());i.push(this.parseAssignableListItem(e,n))}}return i}parseBindingRestProperty(t){return this.next(),t.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(t,"RestElement")}parseBindingProperty(){let t=this.startNode(),{type:r,startLoc:e}=this.state;return r===21?this.parseBindingRestProperty(t):(r===136?(this.expectPlugin("destructuringPrivate",e),this.classScope.usePrivateName(this.state.value,e),t.key=this.parsePrivateName()):this.parsePropertyName(t),t.method=!1,this.parseObjPropValue(t,e,!1,!1,!0,!1))}parseAssignableListItem(t,r){let e=this.parseMaybeDefault();this.parseAssignableListItemTypes(e,t);let s=this.parseMaybeDefault(e.loc.start,e);return r.length&&(e.decorators=r),s}parseAssignableListItemTypes(t,r){return t}parseMaybeDefault(t,r){var e,s;if((e=t)!=null||(t=this.state.startLoc),r=(s=r)!=null?s:this.parseBindingAtom(),!this.eat(29))return r;let i=this.startNodeAt(t);return i.left=r,i.right=this.parseMaybeAssignAllowIn(),this.finishNode(i,"AssignmentPattern")}isValidLVal(t,r,e){return ih({AssignmentPattern:"left",RestElement:"argument",ObjectProperty:"value",ParenthesizedExpression:"expression",ArrayPattern:"elements",ObjectPattern:"properties"},t)}checkLVal(t,r){let{in:e,binding:s=Pe,checkClashes:i=!1,strictModeChanged:a=!1,hasParenthesizedAncestor:n=!1}=r;var o;let u=t.type;if(this.isObjectMethod(t))return;if(u==="MemberExpression"){s!==Pe&&this.raise(f.InvalidPropertyBindingPattern,{at:t});return}if(u==="Identifier"){this.checkIdentifier(t,s,a);let{name:C}=t;i&&(i.has(C)?this.raise(f.ParamDupe,{at:t}):i.add(C));return}let c=this.isValidLVal(u,!(n||(o=t.extra)!=null&&o.parenthesized)&&e.type==="AssignmentExpression",s);if(c===!0)return;if(c===!1){let C=s===Pe?f.InvalidLhs:f.InvalidLhsBinding;this.raise(C,{at:t,ancestor:e});return}let[y,g]=Array.isArray(c)?c:[c,u==="ParenthesizedExpression"],T=u==="ArrayPattern"||u==="ObjectPattern"||u==="ParenthesizedExpression"?{type:u}:e;for(let C of[].concat(t[y]))C&&this.checkLVal(C,{in:T,binding:s,checkClashes:i,strictModeChanged:a,hasParenthesizedAncestor:g})}checkIdentifier(t,r){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.state.strict&&(e?xr(t.name,this.inModule):yr(t.name))&&(r===Pe?this.raise(f.StrictEvalArguments,{at:t,referenceName:t.name}):this.raise(f.StrictEvalArgumentsBinding,{at:t,bindingName:t.name})),r&dt&&t.name==="let"&&this.raise(f.LetInLexicalBinding,{at:t}),r&Pe||this.declareNameFromIdentifier(t,r)}declareNameFromIdentifier(t,r){this.scope.declareName(t.name,r,t.loc.start)}checkToRestConversion(t,r){switch(t.type){case"ParenthesizedExpression":this.checkToRestConversion(t.expression,r);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(r)break;default:this.raise(f.InvalidRestAssignmentPattern,{at:t})}}checkCommaAfterRest(t){return this.match(12)?(this.raise(this.lookaheadCharCode()===t?f.RestTrailingComma:f.ElementAfterRest,{at:this.state.startLoc}),!0):!1}},nh=(t,r)=>Object.hasOwnProperty.call(t,r)&&t[r];function oh(t){if(t==null)throw new Error(`Unexpected ${t} value.`);return t}function $r(t){if(!t)throw new Error("Assert fail")}var I=pe`typescript`({AbstractMethodHasImplementation:t=>{let{methodName:r}=t;return`Method '${r}' cannot have an implementation because it is marked abstract.`},AbstractPropertyHasInitializer:t=>{let{propertyName:r}=t;return`Property '${r}' cannot have an initializer because it is marked abstract.`},AccesorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccesorCannotHaveTypeParameters:"An accessor cannot have type parameters.",AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:t=>{let{kind:r}=t;return`'declare' is not allowed in ${r}ters.`},DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:t=>{let{modifier:r}=t;return"Accessibility modifier already seen."},DuplicateModifier:t=>{let{modifier:r}=t;return`Duplicate modifier: '${r}'.`},EmptyHeritageClauseType:t=>{let{token:r}=t;return`'${r}' list cannot be empty.`},EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:t=>{let{modifiers:r}=t;return`'${r[0]}' modifier cannot be used with '${r[1]}' modifier.`},IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:t=>{let{modifier:r}=t;return`Index signatures cannot have an accessibility modifier ('${r}').`},IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidModifierOnTypeMember:t=>{let{modifier:r}=t;return`'${r}' modifier cannot appear on a type member.`},InvalidModifierOnTypeParameter:t=>{let{modifier:r}=t;return`'${r}' modifier cannot appear on a type parameter.`},InvalidModifierOnTypeParameterPositions:t=>{let{modifier:r}=t;return`'${r}' modifier can only appear on a type parameter of a class, interface or type alias.`},InvalidModifiersOrder:t=>{let{orderedModifiers:r}=t;return`'${r[0]}' modifier must precede '${r[1]}' modifier.`},InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",MixedLabeledAndUnlabeledElements:"Tuple members must all have names or all not have names.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifer:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:t=>{let{modifier:r}=t;return`Private elements cannot have an accessibility modifier ('${r}').`},ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccesorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccesorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccesorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:t=>{let{typeParameterName:r}=t;return`Single type parameter ${r} should have a trailing comma. Example usage: <${r},>.`},StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:t=>{let{type:r}=t;return`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${r}.`}});function lh(t){switch(t){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}function Hr(t){return t==="private"||t==="public"||t==="protected"}function hh(t){return t==="in"||t==="out"}var uh=t=>class extends t{constructor(){super(...arguments),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:I.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:I.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:I.InvalidModifierOnTypeParameter})}getScopeHandler(){return rh}tsIsIdentifier(){return q(this.state.type)}tsTokenCanFollowModifier(){return(this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(136)||this.isLiteralPropertyName())&&!this.hasPrecedingLineBreak()}tsNextTokenCanFollowModifier(){return this.next(),this.tsTokenCanFollowModifier()}tsParseModifier(e,s){if(!q(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let i=this.state.value;if(e.indexOf(i)!==-1){if(s&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return i}}tsParseModifiers(e,s){let{allowedModifiers:i,disallowedModifiers:a,stopOnStartOfClassStaticBlock:n,errorTemplate:o=I.InvalidModifierOnTypeMember}=e,u=(y,g,T,C)=>{g===T&&s[C]&&this.raise(I.InvalidModifiersOrder,{at:y,orderedModifiers:[T,C]})},c=(y,g,T,C)=>{(s[T]&&g===C||s[C]&&g===T)&&this.raise(I.IncompatibleModifiers,{at:y,modifiers:[T,C]})};for(;;){let{startLoc:y}=this.state,g=this.tsParseModifier(i.concat(a!=null?a:[]),n);if(!g)break;Hr(g)?s.accessibility?this.raise(I.DuplicateAccessibilityModifier,{at:y,modifier:g}):(u(y,g,g,"override"),u(y,g,g,"static"),u(y,g,g,"readonly"),s.accessibility=g):hh(g)?(s[g]&&this.raise(I.DuplicateModifier,{at:y,modifier:g}),s[g]=!0,u(y,g,"in","out")):(Object.hasOwnProperty.call(s,g)?this.raise(I.DuplicateModifier,{at:y,modifier:g}):(u(y,g,"static","readonly"),u(y,g,"static","override"),u(y,g,"override","readonly"),u(y,g,"abstract","override"),c(y,g,"declare","override"),c(y,g,"static","abstract")),s[g]=!0),a!=null&&a.includes(g)&&this.raise(o,{at:y,modifier:g})}}tsIsListTerminator(e){switch(e){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(e,s){let i=[];for(;!this.tsIsListTerminator(e);)i.push(s());return i}tsParseDelimitedList(e,s,i){return oh(this.tsParseDelimitedListWorker(e,s,!0,i))}tsParseDelimitedListWorker(e,s,i,a){let n=[],o=-1;for(;!this.tsIsListTerminator(e);){o=-1;let u=s();if(u==null)return;if(n.push(u),this.eat(12)){o=this.state.lastTokStart;continue}if(this.tsIsListTerminator(e))break;i&&this.expect(12);return}return a&&(a.value=o),n}tsParseBracketedList(e,s,i,a,n){a||(i?this.expect(0):this.expect(47));let o=this.tsParseDelimitedList(e,s,n);return i?this.expect(3):this.expect(48),o}tsParseImportType(){let e=this.startNode();return this.expect(83),this.expect(10),this.match(131)||this.raise(I.UnsupportedImportTypeArgument,{at:this.state.startLoc}),e.argument=super.parseExprAtom(),this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName()),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseEntityName(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,s=this.parseIdentifier(e);for(;this.eat(16);){let i=this.startNodeAtNode(s);i.left=s,i.right=this.parseIdentifier(e),s=this.finishNode(i,"TSQualifiedName")}return s}tsParseTypeReference(){let e=this.startNode();return e.typeName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();let s=this.startNodeAtNode(e);return s.parameterName=e,s.typeAnnotation=this.tsParseTypeAnnotation(!1),s.asserts=!1,this.finishNode(s,"TSTypePredicate")}tsParseThisTypeNode(){let e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")}tsParseTypeQuery(){let e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(e){let s=this.startNode();return e(s),s.name=this.tsParseTypeParameterName(),s.constraint=this.tsEatThenParseType(81),s.default=this.tsEatThenParseType(29),this.finishNode(s,"TSTypeParameter")}tsTryParseTypeParameters(e){if(this.match(47))return this.tsParseTypeParameters(e)}tsParseTypeParameters(e){let s=this.startNode();this.match(47)||this.match(140)?this.next():this.unexpected();let i={value:-1};return s.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,e),!1,!0,i),s.params.length===0&&this.raise(I.EmptyTypeParameters,{at:s}),i.value!==-1&&this.addExtra(s,"trailingComma",i.value),this.finishNode(s,"TSTypeParameterDeclaration")}tsFillSignature(e,s){let i=e===19,a="parameters",n="typeAnnotation";s.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),s[a]=this.tsParseBindingListForSignature(),i?s[n]=this.tsParseTypeOrTypePredicateAnnotation(e):this.match(e)&&(s[n]=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){return super.parseBindingList(11,41,2).map(e=>(e.type!=="Identifier"&&e.type!=="RestElement"&&e.type!=="ObjectPattern"&&e.type!=="ArrayPattern"&&this.raise(I.UnsupportedSignatureParameterKind,{at:e,type:e.type}),e))}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(e,s){return this.tsFillSignature(14,s),this.tsParseTypeMemberSemicolon(),this.finishNode(s,e)}tsIsUnambiguouslyIndexSignature(){return this.next(),q(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(e){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let s=this.parseIdentifier();s.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(s),this.expect(3),e.parameters=[s];let i=this.tsTryParseTypeAnnotation();return i&&(e.typeAnnotation=i),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,s){this.eat(17)&&(e.optional=!0);let i=e;if(this.match(10)||this.match(47)){s&&this.raise(I.ReadonlyForMethodSignature,{at:e});let a=i;a.kind&&this.match(47)&&this.raise(I.AccesorCannotHaveTypeParameters,{at:this.state.curPosition()}),this.tsFillSignature(14,a),this.tsParseTypeMemberSemicolon();let n="parameters",o="typeAnnotation";if(a.kind==="get")a[n].length>0&&(this.raise(f.BadGetterArity,{at:this.state.curPosition()}),this.isThisParam(a[n][0])&&this.raise(I.AccesorCannotDeclareThisParameter,{at:this.state.curPosition()}));else if(a.kind==="set"){if(a[n].length!==1)this.raise(f.BadSetterArity,{at:this.state.curPosition()});else{let u=a[n][0];this.isThisParam(u)&&this.raise(I.AccesorCannotDeclareThisParameter,{at:this.state.curPosition()}),u.type==="Identifier"&&u.optional&&this.raise(I.SetAccesorCannotHaveOptionalParameter,{at:this.state.curPosition()}),u.type==="RestElement"&&this.raise(I.SetAccesorCannotHaveRestParameter,{at:this.state.curPosition()})}a[o]&&this.raise(I.SetAccesorCannotHaveReturnType,{at:a[o]})}else a.kind="method";return this.finishNode(a,"TSMethodSignature")}else{let a=i;s&&(a.readonly=!0);let n=this.tsTryParseTypeAnnotation();return n&&(a.typeAnnotation=n),this.tsParseTypeMemberSemicolon(),this.finishNode(a,"TSPropertySignature")}}tsParseTypeMember(){let e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",e);if(this.match(77)){let i=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",e):(e.key=this.createIdentifier(i,"new"),this.tsParsePropertyOrMethodSignature(e,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},e);let s=this.tsTryParseIndexSignature(e);return s||(super.parsePropertyName(e),!e.computed&&e.key.type==="Identifier"&&(e.key.name==="get"||e.key.name==="set")&&this.tsTokenCanFollowModifier()&&(e.kind=e.key.name,super.parsePropertyName(e)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){let e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let e=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),e}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(120):(this.isContextual(120)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedTypeParameter(){let e=this.startNode();return e.name=this.tsParseTypeParameterName(),e.constraint=this.tsExpectThenParseType(58),this.finishNode(e,"TSTypeParameter")}tsParseMappedType(){let e=this.startNode();return this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(120)):this.eatContextual(120)&&(e.readonly=!0),this.expect(0),e.typeParameter=this.tsParseMappedTypeParameter(),e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){let e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let s=!1,i=null;return e.elementTypes.forEach(a=>{var n;let{type:o}=a;s&&o!=="TSRestType"&&o!=="TSOptionalType"&&!(o==="TSNamedTupleMember"&&a.optional)&&this.raise(I.OptionalTypeBeforeRequired,{at:a}),s||(s=o==="TSNamedTupleMember"&&a.optional||o==="TSOptionalType");let u=o;o==="TSRestType"&&(a=a.typeAnnotation,u=a.type);let c=u==="TSNamedTupleMember";(n=i)!=null||(i=c),i!==c&&this.raise(I.MixedLabeledAndUnlabeledElements,{at:a})}),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){let{startLoc:e}=this.state,s=this.eat(21),i,a,n,o,c=te(this.state.type)?this.lookaheadCharCode():null;if(c===58)i=!0,n=!1,a=this.parseIdentifier(!0),this.expect(14),o=this.tsParseType();else if(c===63){n=!0;let y=this.state.startLoc,g=this.state.value,T=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(i=!0,a=this.createIdentifier(this.startNodeAt(y),g),this.expect(17),this.expect(14),o=this.tsParseType()):(i=!1,o=T,this.expect(17))}else o=this.tsParseType(),n=this.eat(17),i=this.eat(14);if(i){let y;a?(y=this.startNodeAtNode(a),y.optional=n,y.label=a,y.elementType=o,this.eat(17)&&(y.optional=!0,this.raise(I.TupleOptionalAfterType,{at:this.state.lastTokStartLoc}))):(y=this.startNodeAtNode(o),y.optional=n,this.raise(I.InvalidTupleMemberLabel,{at:o}),y.label=o,y.elementType=this.tsParseType()),o=this.finishNode(y,"TSNamedTupleMember")}else if(n){let y=this.startNodeAtNode(o);y.typeAnnotation=o,o=this.finishNode(y,"TSOptionalType")}if(s){let y=this.startNodeAt(e);y.typeAnnotation=o,o=this.finishNode(y,"TSRestType")}return o}tsParseParenthesizedType(){let e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,s){let i=this.startNode();return e==="TSConstructorType"&&(i.abstract=!!s,s&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,i)),this.finishNode(i,e)}tsParseLiteralTypeNode(){let e=this.startNode();return e.literal=(()=>{switch(this.state.type){case 132:case 133:case 131:case 85:case 86:return super.parseExprAtom();default:this.unexpected()}})(),this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){let e=this.startNode();return e.literal=super.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let e=this.tsParseThisTypeNode();return this.isContextual(114)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 131:case 132:case 133:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let e=this.startNode(),s=this.lookahead();return s.type!==132&&s.type!==133&&this.unexpected(),e.literal=this.parseMaybeUnary(),this.finishNode(e,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{let{type:e}=this.state;if(q(e)||e===88||e===84){let s=e===88?"TSVoidKeyword":e===84?"TSNullKeyword":lh(this.state.value);if(s!==void 0&&this.lookaheadCharCode()!==46){let i=this.startNode();return this.next(),this.finishNode(i,s)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let e=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let s=this.startNodeAtNode(e);s.elementType=e,this.expect(3),e=this.finishNode(s,"TSArrayType")}else{let s=this.startNodeAtNode(e);s.objectType=e,s.indexType=this.tsParseType(),this.expect(3),e=this.finishNode(s,"TSIndexedAccessType")}return e}tsParseTypeOperator(){let e=this.startNode(),s=this.state.value;return this.next(),e.operator=s,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),s==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(I.UnexpectedReadonly,{at:e})}}tsParseInferType(){let e=this.startNode();this.expectContextual(113);let s=this.startNode();return s.name=this.tsParseTypeParameterName(),s.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),e.typeParameter=this.finishNode(s,"TSTypeParameter"),this.finishNode(e,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let e=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return e}}tsParseTypeOperatorOrHigher(){return qo(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(113)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(e,s,i){let a=this.startNode(),n=this.eat(i),o=[];do o.push(s());while(this.eat(i));return o.length===1&&!n?o[0]:(a.types=o,this.finishNode(a,e))}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return this.match(47)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(q(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:e}=this.state,s=e.length;try{return this.parseObjectLike(8,!0),e.length===s}catch{return!1}}if(this.match(0)){this.next();let{errors:e}=this.state,s=e.length;try{return super.parseBindingList(3,93,1),e.length===s}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType(()=>{let s=this.startNode();this.expect(e);let i=this.startNode(),a=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(a&&this.match(78)){let u=this.tsParseThisTypeOrThisTypePredicate();return u.type==="TSThisType"?(i.parameterName=u,i.asserts=!0,i.typeAnnotation=null,u=this.finishNode(i,"TSTypePredicate")):(this.resetStartLocationFromNode(u,i),u.asserts=!0),s.typeAnnotation=u,this.finishNode(s,"TSTypeAnnotation")}let n=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!n)return a?(i.parameterName=this.parseIdentifier(),i.asserts=a,i.typeAnnotation=null,s.typeAnnotation=this.finishNode(i,"TSTypePredicate"),this.finishNode(s,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,s);let o=this.tsParseTypeAnnotation(!1);return i.parameterName=n,i.typeAnnotation=o,i.asserts=a,s.typeAnnotation=this.finishNode(i,"TSTypePredicate"),this.finishNode(s,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){return this.match(14)?this.tsParseTypeOrTypePredicateAnnotation(14):void 0}tsTryParseTypeAnnotation(){return this.match(14)?this.tsParseTypeAnnotation():void 0}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let e=this.parseIdentifier();if(this.isContextual(114)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(this.state.type!==107)return!1;let e=this.state.containsEsc;return this.next(),!q(this.state.type)&&!this.match(78)?!1:(e&&this.raise(f.InvalidEscapedReservedWord,{at:this.state.lastTokStartLoc,reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.startNode();return this.tsInType(()=>{e&&this.expect(14),s.typeAnnotation=this.tsParseType()}),this.finishNode(s,"TSTypeAnnotation")}tsParseType(){$r(this.state.inType);let e=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return e;let s=this.startNodeAtNode(e);return s.checkType=e,s.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),s.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),s.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(s,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(122)&&this.lookahead().type===77}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(I.ReservedTypeAssertion,{at:this.state.startLoc});let e=this.startNode();return e.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),e.expression=this.parseMaybeUnary(),this.finishNode(e,"TSTypeAssertion")}tsParseHeritageClause(e){let s=this.state.startLoc,i=this.tsParseDelimitedList("HeritageClauseElement",()=>{let a=this.startNode();return a.expression=this.tsParseEntityName(),this.match(47)&&(a.typeParameters=this.tsParseTypeArguments()),this.finishNode(a,"TSExpressionWithTypeArguments")});return i.length||this.raise(I.EmptyHeritageClauseType,{at:s,token:e}),i}tsParseInterfaceDeclaration(e){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.hasFollowingLineBreak())return null;this.expectContextual(127),s.declare&&(e.declare=!0),q(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,pl)):(e.id=null,this.raise(I.MissingInterfaceName,{at:this.state.startLoc})),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));let i=this.startNode();return i.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(i,"TSInterfaceBody"),this.finishNode(e,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(e){return e.id=this.parseIdentifier(),this.checkIdentifier(e.id,fl),e.typeAnnotation=this.tsInType(()=>{if(e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(112)&&this.lookahead().type!==16){let s=this.startNode();return this.next(),this.finishNode(s,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInNoContext(e){let s=this.state.context;this.state.context=[s[0]];try{return e()}finally{this.state.context=s}}tsInType(e){let s=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=s}}tsInDisallowConditionalTypesContext(e){let s=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=s}}tsInAllowConditionalTypesContext(e){let s=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return e()}finally{this.state.inDisallowConditionalTypesContext=s}}tsEatThenParseType(e){return this.match(e)?this.tsNextThenParseType():void 0}tsExpectThenParseType(e){return this.tsDoThenParseType(()=>this.expect(e))}tsNextThenParseType(){return this.tsDoThenParseType(()=>this.next())}tsDoThenParseType(e){return this.tsInType(()=>(e(),this.tsParseType()))}tsParseEnumMember(){let e=this.startNode();return e.id=this.match(131)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(e.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(e,"TSEnumMember")}tsParseEnumDeclaration(e){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return s.const&&(e.const=!0),s.declare&&(e.declare=!0),this.expectContextual(124),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?ml:Cr),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")}tsParseModuleBlock(){let e=this.startNode();return this.scope.enter(Fe),this.expect(5),super.parseBlockOrModuleBlockBody(e.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(e,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(e){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(e.id=this.parseIdentifier(),s||this.checkIdentifier(e.id,yl),this.eat(16)){let i=this.startNode();this.tsParseModuleOrNamespaceDeclaration(i,!0),e.body=i}else this.scope.enter(Oe),this.prodParam.enter(Me),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(e){return this.isContextual(110)?(e.global=!0,e.id=this.parseIdentifier()):this.match(131)?e.id=super.parseStringLiteral(this.state.value):this.unexpected(),this.match(5)?(this.scope.enter(Oe),this.prodParam.enter(Me),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(e,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(e,s){e.isExport=s||!1,e.id=this.parseIdentifier(),this.checkIdentifier(e.id,Ve),this.expect(29);let i=this.tsParseModuleReference();return e.importKind==="type"&&i.type!=="TSExternalModuleReference"&&this.raise(I.ImportAliasHasImportType,{at:i}),e.moduleReference=i,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(117)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(!1)}tsParseExternalModuleReference(){let e=this.startNode();return this.expectContextual(117),this.expect(10),this.match(131)||this.unexpected(),e.expression=super.parseExprAtom(),this.expect(11),this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){let s=this.state.clone(),i=e();return this.state=s,i}tsTryParseAndCatch(e){let s=this.tryParse(i=>e()||i());if(!(s.aborted||!s.node))return s.error&&(this.state=s.failState),s.node}tsTryParse(e){let s=this.state.clone(),i=e();if(i!==void 0&&i!==!1)return i;this.state=s}tsTryParseDeclare(e){if(this.isLineTerminator())return;let s=this.state.type,i;return this.isContextual(99)&&(s=74,i="let"),this.tsInAmbientContext(()=>{if(s===68)return e.declare=!0,super.parseFunctionStatement(e,!1,!1);if(s===80)return e.declare=!0,this.parseClass(e,!0,!1);if(s===124)return this.tsParseEnumDeclaration(e,{declare:!0});if(s===110)return this.tsParseAmbientExternalModuleDeclaration(e);if(s===75||s===74)return!this.match(75)||!this.isLookaheadContextual("enum")?(e.declare=!0,this.parseVarStatement(e,i||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0}));if(s===127){let a=this.tsParseInterfaceDeclaration(e,{declare:!0});if(a)return a}if(q(s))return this.tsParseDeclaration(e,this.state.value,!0,null)})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(e,s,i){switch(s.name){case"declare":{let a=this.tsTryParseDeclare(e);if(a)return a.declare=!0,a;break}case"global":if(this.match(5)){this.scope.enter(Oe),this.prodParam.enter(Me);let a=e;return a.global=!0,a.id=s,a.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(a,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(e,s.name,!1,i)}}tsParseDeclaration(e,s,i,a){switch(s){case"abstract":if(this.tsCheckLineTerminator(i)&&(this.match(80)||q(this.state.type)))return this.tsParseAbstractDeclaration(e,a);break;case"module":if(this.tsCheckLineTerminator(i)){if(this.match(131))return this.tsParseAmbientExternalModuleDeclaration(e);if(q(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e)}break;case"namespace":if(this.tsCheckLineTerminator(i)&&q(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e);break;case"type":if(this.tsCheckLineTerminator(i)&&q(this.state.type))return this.tsParseTypeAliasDeclaration(e);break}}tsCheckLineTerminator(e){return e?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e){if(!this.match(47))return;let s=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let i=this.tsTryParseAndCatch(()=>{let a=this.startNodeAt(e);return a.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(a),a.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),a});if(this.state.maybeInArrowParameters=s,!!i)return super.parseArrowExpression(i,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let e=this.startNode();return e.params=this.tsInType(()=>this.tsInNoContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),e.params.length===0&&this.raise(I.EmptyTypeArguments,{at:e}),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return Uo(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(e,s){let i=this.state.startLoc,a={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},a);let n=a.accessibility,o=a.override,u=a.readonly;!(e&4)&&(n||u||o)&&this.raise(I.UnexpectedParameterModifier,{at:i});let c=this.parseMaybeDefault();this.parseAssignableListItemTypes(c,e);let y=this.parseMaybeDefault(c.loc.start,c);if(n||u||o){let g=this.startNodeAt(i);return s.length&&(g.decorators=s),n&&(g.accessibility=n),u&&(g.readonly=u),o&&(g.override=o),y.type!=="Identifier"&&y.type!=="AssignmentPattern"&&this.raise(I.UnsupportedParameterPropertyKind,{at:g}),g.parameter=y,this.finishNode(g,"TSParameterProperty")}return s.length&&(c.decorators=s),y}isSimpleParameter(e){return e.type==="TSParameterProperty"&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}tsDisallowOptionalPattern(e){for(let s of e.params)s.type!=="Identifier"&&s.optional&&!this.state.isAmbientContext&&this.raise(I.PatternIsOptional,{at:s})}setArrowFunctionParameters(e,s,i){super.setArrowFunctionParameters(e,s,i),this.tsDisallowOptionalPattern(e)}parseFunctionBodyAndFinish(e,s){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let a=s==="FunctionDeclaration"?"TSDeclareFunction":s==="ClassMethod"||s==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return a&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,a):a==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(I.DeclareFunctionHasImplementation,{at:e}),e.declare)?super.parseFunctionBodyAndFinish(e,a,i):(this.tsDisallowOptionalPattern(e),super.parseFunctionBodyAndFinish(e,s,i))}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,br):super.registerFunctionStatementId(e)}tsCheckForInvalidTypeCasts(e){e.forEach(s=>{(s==null?void 0:s.type)==="TSTypeCastExpression"&&this.raise(I.UnexpectedTypeAnnotation,{at:s.typeAnnotation})})}toReferencedList(e,s){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(e,s,i,a){let n=super.parseArrayLike(e,s,i,a);return n.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(n.elements),n}parseSubscript(e,s,i,a){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let o=this.startNodeAt(s);return o.expression=e,this.finishNode(o,"TSNonNullExpression")}let n=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(i)return a.stop=!0,e;a.optionalChainMember=n=!0,this.next()}if(this.match(47)||this.match(51)){let o,u=this.tsTryParseAndCatch(()=>{if(!i&&this.atPossibleAsyncArrow(e)){let T=this.tsTryParseGenericAsyncArrowFunction(s);if(T)return T}let c=this.tsParseTypeArgumentsInExpression();if(!c)return;if(n&&!this.match(10)){o=this.state.curPosition();return}if(nt(this.state.type)){let T=super.parseTaggedTemplateExpression(e,s,a);return T.typeParameters=c,T}if(!i&&this.eat(10)){let T=this.startNodeAt(s);return T.callee=e,T.arguments=this.parseCallExpressionArguments(11,!1),this.tsCheckForInvalidTypeCasts(T.arguments),T.typeParameters=c,a.optionalChainMember&&(T.optional=n),this.finishCallExpression(T,a.optionalChainMember)}let y=this.state.type;if(y===48||y===52||y!==10&&He(y)&&!this.hasPrecedingLineBreak())return;let g=this.startNodeAt(s);return g.expression=e,g.typeParameters=c,this.finishNode(g,"TSInstantiationExpression")});if(o&&this.unexpected(o,10),u)return u.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(I.InvalidPropertyAccessAfterInstantiationExpression,{at:this.state.startLoc}),u}return super.parseSubscript(e,s,i,a)}parseNewCallee(e){var s;super.parseNewCallee(e);let{callee:i}=e;i.type==="TSInstantiationExpression"&&!((s=i.extra)!=null&&s.parenthesized)&&(e.typeParameters=i.typeParameters,e.callee=i.expression)}parseExprOp(e,s,i){let a;if(at(58)>i&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(a=this.isContextual(118)))){let n=this.startNodeAt(s);return n.expression=e,n.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(a&&this.raise(f.UnexpectedKeyword,{at:this.state.startLoc,keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(n,a?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(n,s,i)}return super.parseExprOp(e,s,i)}checkReservedWord(e,s,i,a){this.state.isAmbientContext||super.checkReservedWord(e,s,i,a)}checkImportReflection(e){super.checkImportReflection(e),e.module&&e.importKind!=="value"&&this.raise(I.ImportReflectionHasImportType,{at:e.specifiers[0].loc.start})}checkDuplicateExports(){}parseImport(e){if(e.importKind="value",q(this.state.type)||this.match(55)||this.match(5)){let i=this.lookahead();if(this.isContextual(128)&&i.type!==12&&i.type!==97&&i.type!==29&&(e.importKind="type",this.next(),i=this.lookahead()),q(this.state.type)&&i.type===29)return this.tsParseImportEqualsDeclaration(e)}let s=super.parseImport(e);return s.importKind==="type"&&s.specifiers.length>1&&s.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(I.TypeImportCannotSpecifyDefaultAndNamed,{at:s}),s}parseExport(e,s){if(this.match(83))return this.next(),this.isContextual(128)&&this.lookaheadCharCode()!==61?(e.importKind="type",this.next()):e.importKind="value",this.tsParseImportEqualsDeclaration(e,!0);if(this.eat(29)){let i=e;return i.expression=super.parseExpression(),this.semicolon(),this.finishNode(i,"TSExportAssignment")}else if(this.eatContextual(93)){let i=e;return this.expectContextual(126),i.id=this.parseIdentifier(),this.semicolon(),this.finishNode(i,"TSNamespaceExportDeclaration")}else{if(e.exportKind="value",this.isContextual(128)){let i=this.lookaheadCharCode();(i===123||i===42)&&(this.next(),e.exportKind="type")}return super.parseExport(e,s)}}isAbstractClass(){return this.isContextual(122)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0)}if(this.match(127)){let e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,s){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{isAmbientContext:a}=this.state,n=super.parseVarStatement(e,s,i||a);if(!a)return n;for(let{id:o,init:u}of n.declarations)u&&(s!=="const"||o.typeAnnotation?this.raise(I.InitializerNotAllowedInAmbientContext,{at:u}):ph(u,this.hasPlugin("estree"))||this.raise(I.ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference,{at:u}));return n}parseStatementContent(e,s){if(this.match(75)&&this.isLookaheadContextual("enum")){let i=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(i,{const:!0})}if(this.isContextual(124))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(127)){let i=this.tsParseInterfaceDeclaration(this.startNode());if(i)return i}return super.parseStatementContent(e,s)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(e,s){return s.some(i=>Hr(i)?e.accessibility===i:!!e[i])}tsIsStartOfStaticBlocks(){return this.isContextual(104)&&this.lookaheadCharCode()===123}parseClassMember(e,s,i){let a=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:a,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:I.InvalidModifierOnTypeParameterPositions},s);let n=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(s,a)&&this.raise(I.StaticBlockCannotHaveModifier,{at:this.state.curPosition()}),super.parseClassStaticBlock(e,s)):this.parseClassMemberWithIsStatic(e,s,i,!!s.static)};s.declare?this.tsInAmbientContext(n):n()}parseClassMemberWithIsStatic(e,s,i,a){let n=this.tsTryParseIndexSignature(s);if(n){e.body.push(n),s.abstract&&this.raise(I.IndexSignatureHasAbstract,{at:s}),s.accessibility&&this.raise(I.IndexSignatureHasAccessibility,{at:s,modifier:s.accessibility}),s.declare&&this.raise(I.IndexSignatureHasDeclare,{at:s}),s.override&&this.raise(I.IndexSignatureHasOverride,{at:s});return}!this.state.inAbstractClass&&s.abstract&&this.raise(I.NonAbstractClassHasAbstractMethod,{at:s}),s.override&&(i.hadSuperClass||this.raise(I.OverrideNotInSubClass,{at:s})),super.parseClassMemberWithIsStatic(e,s,i,a)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(I.ClassMethodHasReadonly,{at:e}),e.declare&&this.match(10)&&this.raise(I.ClassMethodHasDeclare,{at:e})}parseExpressionStatement(e,s,i){return(s.type==="Identifier"?this.tsParseExpressionStatement(e,s,i):void 0)||super.parseExpressionStatement(e,s,i)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(e,s,i){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(e,s,i);let a=this.tryParse(()=>super.parseConditional(e,s));return a.node?(a.error&&(this.state=a.failState),a.node):(a.error&&super.setOptionalParametersError(i,a.error),e)}parseParenItem(e,s){if(e=super.parseParenItem(e,s),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){let i=this.startNodeAt(s);return i.expression=e,i.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(i,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(123))return this.tsInAmbientContext(()=>this.parseExportDeclaration(e));let s=this.state.startLoc,i=this.eatContextual(123);if(i&&(this.isContextual(123)||!this.shouldParseExportDeclaration()))throw this.raise(I.ExpectedAmbientAfterExportDeclare,{at:this.state.startLoc});let n=q(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return n?((n.type==="TSInterfaceDeclaration"||n.type==="TSTypeAliasDeclaration"||i)&&(e.exportKind="type"),i&&(this.resetStartLocation(n,s),n.declare=!0),n):null}parseClassId(e,s,i,a){if((!s||i)&&this.isContextual(111))return;super.parseClassId(e,s,i,e.declare?br:vr);let n=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);n&&(e.typeParameters=n)}parseClassPropertyAnnotation(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));let s=this.tsTryParseTypeAnnotation();s&&(e.typeAnnotation=s)}parseClassProperty(e){if(this.parseClassPropertyAnnotation(e),this.state.isAmbientContext&&!(e.readonly&&!e.typeAnnotation)&&this.match(29)&&this.raise(I.DeclareClassFieldHasInitializer,{at:this.state.startLoc}),e.abstract&&this.match(29)){let{key:s}=e;this.raise(I.AbstractPropertyHasInitializer,{at:this.state.startLoc,propertyName:s.type==="Identifier"&&!e.computed?s.name:`[${this.input.slice(s.start,s.end)}]`})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(I.PrivateElementHasAbstract,{at:e}),e.accessibility&&this.raise(I.PrivateElementHasAccessibility,{at:e,modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}parseClassAccessorProperty(e){return this.parseClassPropertyAnnotation(e),e.optional&&this.raise(I.AccessorCannotBeOptional,{at:e}),super.parseClassAccessorProperty(e)}pushClassMethod(e,s,i,a,n,o){let u=this.tsTryParseTypeParameters(this.tsParseConstModifier);u&&n&&this.raise(I.ConstructorHasTypeParameters,{at:u});let{declare:c=!1,kind:y}=s;c&&(y==="get"||y==="set")&&this.raise(I.DeclareAccessor,{at:s,kind:y}),u&&(s.typeParameters=u),super.pushClassMethod(e,s,i,a,n,o)}pushClassPrivateMethod(e,s,i,a){let n=this.tsTryParseTypeParameters(this.tsParseConstModifier);n&&(s.typeParameters=n),super.pushClassPrivateMethod(e,s,i,a)}declareClassPrivateMethodInScope(e,s){e.type!=="TSDeclareMethod"&&(e.type==="MethodDefinition"&&!e.value.body||super.declareClassPrivateMethodInScope(e,s))}parseClassSuper(e){super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(111)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,s,i,a,n,o,u){let c=this.tsTryParseTypeParameters(this.tsParseConstModifier);return c&&(e.typeParameters=c),super.parseObjPropValue(e,s,i,a,n,o,u)}parseFunctionParams(e,s){let i=this.tsTryParseTypeParameters(this.tsParseConstModifier);i&&(e.typeParameters=i),super.parseFunctionParams(e,s)}parseVarId(e,s){super.parseVarId(e,s),e.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);let i=this.tsTryParseTypeAnnotation();i&&(e.id.typeAnnotation=i,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,s){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,s)}parseMaybeAssign(e,s){var i,a,n,o,u,c,y;let g,T,C;if(this.hasPlugin("jsx")&&(this.match(140)||this.match(47))){if(g=this.state.clone(),T=this.tryParse(()=>super.parseMaybeAssign(e,s),g),!T.error)return T.node;let{context:K}=this.state,W=K[K.length-1];(W===x.j_oTag||W===x.j_expr)&&K.pop()}if(!((i=T)!=null&&i.error)&&!this.match(47))return super.parseMaybeAssign(e,s);(!g||g===this.state)&&(g=this.state.clone());let M,j=this.tryParse(K=>{var W,V;M=this.tsParseTypeParameters(this.tsParseConstModifier);let X=super.parseMaybeAssign(e,s);return(X.type!=="ArrowFunctionExpression"||(W=X.extra)!=null&&W.parenthesized)&&K(),((V=M)==null?void 0:V.params.length)!==0&&this.resetStartLocationFromNode(X,M),X.typeParameters=M,X},g);if(!j.error&&!j.aborted)return M&&this.reportReservedArrowTypeParam(M),j.node;if(!T&&($r(!this.hasPlugin("jsx")),C=this.tryParse(()=>super.parseMaybeAssign(e,s),g),!C.error))return C.node;if((a=T)!=null&&a.node)return this.state=T.failState,T.node;if(j.node)return this.state=j.failState,M&&this.reportReservedArrowTypeParam(M),j.node;if((n=C)!=null&&n.node)return this.state=C.failState,C.node;throw(o=T)!=null&&o.thrown?T.error:j.thrown?j.error:(u=C)!=null&&u.thrown?C.error:((c=T)==null?void 0:c.error)||j.error||((y=C)==null?void 0:y.error)}reportReservedArrowTypeParam(e){var s;e.params.length===1&&!e.params[0].constraint&&!((s=e.extra)!=null&&s.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(I.ReservedArrowTypeParam,{at:e})}parseMaybeUnary(e,s){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e,s)}parseArrow(e){if(this.match(14)){let s=this.tryParse(i=>{let a=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&i(),a});if(s.aborted)return;s.thrown||(s.error&&(this.state=s.failState),e.returnType=s.node)}return super.parseArrow(e)}parseAssignableListItemTypes(e,s){if(!(s&2))return e;this.eat(17)&&(e.optional=!0);let i=this.tsTryParseTypeAnnotation();return i&&(e.typeAnnotation=i),this.resetEndLocation(e),e}isAssignable(e,s){switch(e.type){case"TSTypeCastExpression":return this.isAssignable(e.expression,s);case"TSParameterProperty":return!0;default:return super.isAssignable(e,s)}}toAssignable(e){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;switch(e.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(e,s);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":s?this.expressionScope.recordArrowParameterBindingError(I.UnexpectedTypeCastInParameter,{at:e}):this.raise(I.UnexpectedTypeCastInParameter,{at:e}),this.toAssignable(e.expression,s);break;case"AssignmentExpression":!s&&e.left.type==="TSTypeCastExpression"&&(e.left=this.typeCastToParameter(e.left));default:super.toAssignable(e,s)}}toAssignableParenthesizedExpression(e,s){switch(e.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(e.expression,s);break;default:super.toAssignable(e,s)}}checkToRestConversion(e,s){switch(e.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(e.expression,!1);break;default:super.checkToRestConversion(e,s)}}isValidLVal(e,s,i){return nh({TSTypeCastExpression:!0,TSParameterProperty:"parameter",TSNonNullExpression:"expression",TSAsExpression:(i!==Pe||!s)&&["expression",!0],TSSatisfiesExpression:(i!==Pe||!s)&&["expression",!0],TSTypeAssertion:(i!==Pe||!s)&&["expression",!0]},e)||super.isValidLVal(e,s,i)}parseBindingAtom(){switch(this.state.type){case 78:return this.parseIdentifier(!0);default:return super.parseBindingAtom()}}parseMaybeDecoratorArguments(e){if(this.match(47)||this.match(51)){let s=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let i=super.parseMaybeDecoratorArguments(e);return i.typeParameters=s,i}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(e,s){let i=super.parseMaybeDefault(e,s);return i.type==="AssignmentPattern"&&i.typeAnnotation&&i.right.startthis.isAssignable(s,!0)):super.shouldParseArrow(e)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(e){if(this.match(47)||this.match(51)){let s=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());s&&(e.typeParameters=s)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){let s=super.getGetterSetterExpectedParamCount(e),a=this.getObjectOrClassMethodParams(e)[0];return a&&this.isThisParam(a)?s+1:s}parseCatchClauseParam(){let e=super.parseCatchClauseParam(),s=this.tsTryParseTypeAnnotation();return s&&(e.typeAnnotation=s,this.resetEndLocation(e)),e}tsInAmbientContext(e){let s=this.state.isAmbientContext;this.state.isAmbientContext=!0;try{return e()}finally{this.state.isAmbientContext=s}}parseClass(e,s,i){let a=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,s,i)}finally{this.state.inAbstractClass=a}}tsParseAbstractDeclaration(e,s){if(this.match(80))return e.abstract=!0,this.maybeTakeDecorators(s,this.parseClass(e,!0,!1));if(this.isContextual(127)){if(!this.hasFollowingLineBreak())return e.abstract=!0,this.raise(I.NonClassMethodPropertyHasAbstractModifer,{at:e}),this.tsParseInterfaceDeclaration(e)}else this.unexpected(null,80)}parseMethod(e,s,i,a,n,o,u){let c=super.parseMethod(e,s,i,a,n,o,u);if(c.abstract&&(this.hasPlugin("estree")?!!c.value.body:!!c.body)){let{key:g}=c;this.raise(I.AbstractMethodHasImplementation,{at:c,methodName:g.type==="Identifier"&&!c.computed?g.name:`[${this.input.slice(g.start,g.end)}]`})}return c}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(e,s,i,a){return!s&&a?(this.parseTypeOnlyImportExportSpecifier(e,!1,i),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,s,i,a))}parseImportSpecifier(e,s,i,a,n){return!s&&a?(this.parseTypeOnlyImportExportSpecifier(e,!0,i),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,s,i,a,i?Sr:Ve))}parseTypeOnlyImportExportSpecifier(e,s,i){let a=s?"imported":"local",n=s?"local":"exported",o=e[a],u,c=!1,y=!0,g=o.loc.start;if(this.isContextual(93)){let C=this.parseIdentifier();if(this.isContextual(93)){let M=this.parseIdentifier();te(this.state.type)?(c=!0,o=C,u=s?this.parseIdentifier():this.parseModuleExportName(),y=!1):(u=M,y=!1)}else te(this.state.type)?(y=!1,u=s?this.parseIdentifier():this.parseModuleExportName()):(c=!0,o=C)}else te(this.state.type)&&(c=!0,s?(o=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(o.name,o.loc.start,!0,!0)):o=this.parseModuleExportName());c&&i&&this.raise(s?I.TypeModifierIsUsedInTypeImports:I.TypeModifierIsUsedInTypeExports,{at:g}),e[a]=o,e[n]=u;let T=s?"importKind":"exportKind";e[T]=c?"type":"value",y&&this.eatContextual(93)&&(e[n]=s?this.parseIdentifier():this.parseModuleExportName()),e[n]||(e[n]=me(e[a])),s&&this.checkIdentifier(e[n],c?Sr:Ve)}};function ch(t){if(t.type!=="MemberExpression")return!1;let{computed:r,property:e}=t;return r&&e.type!=="StringLiteral"&&(e.type!=="TemplateLiteral"||e.expressions.length>0)?!1:Vr(t.object)}function ph(t,r){var e;let{type:s}=t;if((e=t.extra)!=null&&e.parenthesized)return!1;if(r){if(s==="Literal"){let{value:i}=t;if(typeof i=="string"||typeof i=="boolean")return!0}}else if(s==="StringLiteral"||s==="BooleanLiteral")return!0;return!!(zr(t,r)||fh(t,r)||s==="TemplateLiteral"&&t.expressions.length===0||ch(t))}function zr(t,r){return r?t.type==="Literal"&&(typeof t.value=="number"||"bigint"in t):t.type==="NumericLiteral"||t.type==="BigIntLiteral"}function fh(t,r){if(t.type==="UnaryExpression"){let{operator:e,argument:s}=t;if(e==="-"&&zr(s,r))return!0}return!1}function Vr(t){return t.type==="Identifier"?!0:t.type!=="MemberExpression"||t.computed?!1:Vr(t.object)}var Kr=pe`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),dh=t=>class extends t{parsePlaceholder(e){if(this.match(142)){let s=this.startNode();return this.next(),this.assertNoSpace(),s.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(142),this.finishPlaceholder(s,e)}}finishPlaceholder(e,s){let i=!!(e.expectedNode&&e.type==="Placeholder");return e.expectedNode=s,i?e:this.finishNode(e,"Placeholder")}getTokenFromCode(e){e===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(142,2):super.getTokenFromCode(e)}parseExprAtom(e){return this.parsePlaceholder("Expression")||super.parseExprAtom(e)}parseIdentifier(e){return this.parsePlaceholder("Identifier")||super.parseIdentifier(e)}checkReservedWord(e,s,i,a){e!==void 0&&super.checkReservedWord(e,s,i,a)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(e,s,i){return e==="Placeholder"||super.isValidLVal(e,s,i)}toAssignable(e,s){e&&e.type==="Placeholder"&&e.expectedNode==="Expression"?e.expectedNode="Pattern":super.toAssignable(e,s)}chStartsBindingIdentifier(e,s){return!!(super.chStartsBindingIdentifier(e,s)||this.lookahead().type===142)}verifyBreakContinue(e,s){e.label&&e.label.type==="Placeholder"||super.verifyBreakContinue(e,s)}parseExpressionStatement(e,s){if(s.type!=="Placeholder"||s.extra&&s.extra.parenthesized)return super.parseExpressionStatement(e,s);if(this.match(14)){let i=e;return i.label=this.finishPlaceholder(s,"Identifier"),this.next(),i.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(i,"LabeledStatement")}return this.semicolon(),e.name=s.name,this.finishPlaceholder(e,"Statement")}parseBlock(e,s,i){return this.parsePlaceholder("BlockStatement")||super.parseBlock(e,s,i)}parseFunctionId(e){return this.parsePlaceholder("Identifier")||super.parseFunctionId(e)}parseClass(e,s,i){let a=s?"ClassDeclaration":"ClassExpression";this.next();let n=this.state.strict,o=this.parsePlaceholder("Identifier");if(o)if(this.match(81)||this.match(142)||this.match(5))e.id=o;else{if(i||!s)return e.id=null,e.body=this.finishPlaceholder(o,"ClassBody"),this.finishNode(e,a);throw this.raise(Kr.ClassNameIsRequired,{at:this.state.startLoc})}else this.parseClassId(e,s,i);return super.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!e.superClass,n),this.finishNode(e,a)}parseExport(e,s){let i=this.parsePlaceholder("Identifier");if(!i)return super.parseExport(e,s);if(!this.isContextual(97)&&!this.match(12))return e.specifiers=[],e.source=null,e.declaration=this.finishPlaceholder(i,"Declaration"),this.finishNode(e,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let a=this.startNode();return a.exported=i,e.specifiers=[this.finishNode(a,"ExportDefaultSpecifier")],super.parseExport(e,s)}isExportDefaultSpecifier(){if(this.match(65)){let e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(xe(142),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e){return e.specifiers&&e.specifiers.length>0?!0:super.maybeParseExportDefaultSpecifier(e)}checkExport(e){let{specifiers:s}=e;s!=null&&s.length&&(e.specifiers=s.filter(i=>i.exported.type==="Placeholder")),super.checkExport(e),e.specifiers=s}parseImport(e){let s=this.parsePlaceholder("Identifier");if(!s)return super.parseImport(e);if(e.specifiers=[],!this.isContextual(97)&&!this.match(12))return e.source=this.finishPlaceholder(s,"StringLiteral"),this.semicolon(),this.finishNode(e,"ImportDeclaration");let i=this.startNodeAtNode(s);return i.local=s,e.specifiers.push(this.finishNode(i,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)),this.expectContextual(97),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.state.lastTokEndLoc.index&&this.raise(Kr.UnexpectedSpace,{at:this.state.lastTokEndLoc})}},mh=t=>class extends t{parseV8Intrinsic(){if(this.match(54)){let e=this.state.startLoc,s=this.startNode();if(this.next(),q(this.state.type)){let i=this.parseIdentifierName(),a=this.createIdentifier(s,i);if(a.type="V8IntrinsicIdentifier",this.match(10))return a}this.unexpected(e)}}parseExprAtom(e){return this.parseV8Intrinsic()||super.parseExprAtom(e)}};function J(t,r){let[e,s]=typeof r=="string"?[r,{}]:r,i=Object.keys(s),a=i.length===0;return t.some(n=>{if(typeof n=="string")return a&&n===e;{let[o,u]=n;if(o!==e)return!1;for(let c of i)if(u[c]!==s[c])return!1;return!0}})}function we(t,r,e){let s=t.find(i=>Array.isArray(i)?i[0]===r:i===r);return s&&Array.isArray(s)&&s.length>1?s[1][e]:null}var Wr=["minimal","fsharp","hack","smart"],Gr=["^^","@@","^","%","#"],Jr=["hash","bar"];function yh(t){if(J(t,"decorators")){if(J(t,"decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let r=we(t,"decorators","decoratorsBeforeExport");if(r!=null&&typeof r!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let e=we(t,"decorators","allowCallParenthesized");if(e!=null&&typeof e!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(J(t,"flow")&&J(t,"typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(J(t,"placeholders")&&J(t,"v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(J(t,"pipelineOperator")){let r=we(t,"pipelineOperator","proposal");if(!Wr.includes(r)){let s=Wr.map(i=>`"${i}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${s}.`)}let e=J(t,["recordAndTuple",{syntaxType:"hash"}]);if(r==="hack"){if(J(t,"placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(J(t,"v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let s=we(t,"pipelineOperator","topicToken");if(!Gr.includes(s)){let i=Gr.map(a=>`"${a}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${i}.`)}if(s==="#"&&e)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "hack", topicToken: "#" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}else if(r==="smart"&&e)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "smart" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}if(J(t,"moduleAttributes")){if(J(t,"importAssertions"))throw new Error("Cannot combine importAssertions and moduleAttributes plugins.");if(we(t,"moduleAttributes","version")!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(J(t,"recordAndTuple")&&we(t,"recordAndTuple","syntaxType")!=null&&!Jr.includes(we(t,"recordAndTuple","syntaxType")))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+Jr.map(r=>`'${r}'`).join(", "));if(J(t,"asyncDoExpressions")&&!J(t,"doExpressions")){let r=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw r.missingPlugins="doExpressions",r}}var Xr={estree:el,jsx:th,flow:Zl,typescript:uh,v8intrinsic:mh,placeholders:dh},xh=Object.keys(Xr),gh=class extends ah{checkProto(t,r,e,s){if(t.type==="SpreadElement"||this.isObjectMethod(t)||t.computed||t.shorthand)return;let i=t.key;if((i.type==="Identifier"?i.name:i.value)==="__proto__"){if(r){this.raise(f.RecordNoProto,{at:i});return}e.used&&(s?s.doubleProtoLoc===null&&(s.doubleProtoLoc=i.loc.start):this.raise(f.DuplicateProto,{at:i})),e.used=!0}}shouldExitDescending(t,r){return t.type==="ArrowFunctionExpression"&&t.start===r}getExpression(){this.enterInitialScopes(),this.nextToken();let t=this.parseExpression();return this.match(137)||this.unexpected(),this.finalizeRemainingComments(),t.comments=this.state.comments,t.errors=this.state.errors,this.options.tokens&&(t.tokens=this.tokens),t}parseExpression(t,r){return t?this.disallowInAnd(()=>this.parseExpressionBase(r)):this.allowInAnd(()=>this.parseExpressionBase(r))}parseExpressionBase(t){let r=this.state.startLoc,e=this.parseMaybeAssign(t);if(this.match(12)){let s=this.startNodeAt(r);for(s.expressions=[e];this.eat(12);)s.expressions.push(this.parseMaybeAssign(t));return this.toReferencedList(s.expressions),this.finishNode(s,"SequenceExpression")}return e}parseMaybeAssignDisallowIn(t,r){return this.disallowInAnd(()=>this.parseMaybeAssign(t,r))}parseMaybeAssignAllowIn(t,r){return this.allowInAnd(()=>this.parseMaybeAssign(t,r))}setOptionalParametersError(t,r){var e;t.optionalParametersLoc=(e=r==null?void 0:r.loc)!=null?e:this.state.startLoc}parseMaybeAssign(t,r){let e=this.state.startLoc;if(this.isContextual(106)&&this.prodParam.hasYield){let n=this.parseYield();return r&&(n=r.call(this,n,e)),n}let s;t?s=!1:(t=new vt,s=!0);let{type:i}=this.state;(i===10||q(i))&&(this.state.potentialArrowAt=this.state.start);let a=this.parseMaybeConditional(t);if(r&&(a=r.call(this,a,e)),Bo(this.state.type)){let n=this.startNodeAt(e),o=this.state.value;if(n.operator=o,this.match(29)){this.toAssignable(a,!0),n.left=a;let u=e.index;t.doubleProtoLoc!=null&&t.doubleProtoLoc.index>=u&&(t.doubleProtoLoc=null),t.shorthandAssignLoc!=null&&t.shorthandAssignLoc.index>=u&&(t.shorthandAssignLoc=null),t.privateKeyLoc!=null&&t.privateKeyLoc.index>=u&&(this.checkDestructuringPrivate(t),t.privateKeyLoc=null)}else n.left=a;return this.next(),n.right=this.parseMaybeAssign(),this.checkLVal(a,{in:this.finishNode(n,"AssignmentExpression")}),n}else s&&this.checkExpressionErrors(t,!0);return a}parseMaybeConditional(t){let r=this.state.startLoc,e=this.state.potentialArrowAt,s=this.parseExprOps(t);return this.shouldExitDescending(s,e)?s:this.parseConditional(s,r,t)}parseConditional(t,r,e){if(this.eat(17)){let s=this.startNodeAt(r);return s.test=t,s.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),s.alternate=this.parseMaybeAssign(),this.finishNode(s,"ConditionalExpression")}return t}parseMaybeUnaryOrPrivate(t){return this.match(136)?this.parsePrivateName():this.parseMaybeUnary(t)}parseExprOps(t){let r=this.state.startLoc,e=this.state.potentialArrowAt,s=this.parseMaybeUnaryOrPrivate(t);return this.shouldExitDescending(s,e)?s:this.parseExprOp(s,r,-1)}parseExprOp(t,r,e){if(this.isPrivateName(t)){let i=this.getPrivateNameSV(t);(e>=at(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(f.PrivateInExpectedIn,{at:t,identifierName:i}),this.classScope.usePrivateName(i,t.loc.start)}let s=this.state.type;if(_o(s)&&(this.prodParam.hasIn||!this.match(58))){let i=at(s);if(i>e){if(s===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return t;this.checkPipelineAtInfixOperator(t,r)}let a=this.startNodeAt(r);a.left=t,a.operator=this.state.value;let n=s===41||s===42,o=s===40;if(o&&(i=at(42)),this.next(),s===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(f.UnexpectedAwaitAfterPipelineBody,{at:this.state.startLoc});a.right=this.parseExprOpRightExpr(s,i);let u=this.finishNode(a,n||o?"LogicalExpression":"BinaryExpression"),c=this.state.type;if(o&&(c===41||c===42)||n&&c===40)throw this.raise(f.MixingCoalesceWithLogical,{at:this.state.startLoc});return this.parseExprOp(u,r,e)}}return t}parseExprOpRightExpr(t,r){let e=this.state.startLoc;switch(t){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"smart":return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(106))throw this.raise(f.PipeBodyIsTighter,{at:this.state.startLoc});return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(t,r),e)});case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(r))}default:return this.parseExprOpBaseRightExpr(t,r)}}parseExprOpBaseRightExpr(t,r){let e=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),e,$o(t)?r-1:r)}parseHackPipeBody(){var t;let{startLoc:r}=this.state,e=this.parseMaybeAssign();return Go.has(e.type)&&!((t=e.extra)!=null&&t.parenthesized)&&this.raise(f.PipeUnparenthesizedBody,{at:r,type:e.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(f.PipeTopicUnused,{at:r}),e}checkExponentialAfterUnary(t){this.match(57)&&this.raise(f.UnexpectedTokenUnaryExponentiation,{at:t.argument})}parseMaybeUnary(t,r){let e=this.state.startLoc,s=this.isContextual(96);if(s&&this.isAwaitAllowed()){this.next();let o=this.parseAwait(e);return r||this.checkExponentialAfterUnary(o),o}let i=this.match(34),a=this.startNode();if(jo(this.state.type)){a.operator=this.state.value,a.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let o=this.match(89);if(this.next(),a.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(t,!0),this.state.strict&&o){let u=a.argument;u.type==="Identifier"?this.raise(f.StrictDelete,{at:a}):this.hasPropertyAsPrivateName(u)&&this.raise(f.DeletePrivateField,{at:a})}if(!i)return r||this.checkExponentialAfterUnary(a),this.finishNode(a,"UnaryExpression")}let n=this.parseUpdate(a,i,t);if(s){let{type:o}=this.state;if((this.hasPlugin("v8intrinsic")?He(o):He(o)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(f.AwaitNotInAsyncContext,{at:e}),this.parseAwait(e)}return n}parseUpdate(t,r,e){if(r){let a=t;return this.checkLVal(a.argument,{in:this.finishNode(a,"UpdateExpression")}),t}let s=this.state.startLoc,i=this.parseExprSubscripts(e);if(this.checkExpressionErrors(e,!1))return i;for(;Ro(this.state.type)&&!this.canInsertSemicolon();){let a=this.startNodeAt(s);a.operator=this.state.value,a.prefix=!1,a.argument=i,this.next(),this.checkLVal(i,{in:i=this.finishNode(a,"UpdateExpression")})}return i}parseExprSubscripts(t){let r=this.state.startLoc,e=this.state.potentialArrowAt,s=this.parseExprAtom(t);return this.shouldExitDescending(s,e)?s:this.parseSubscripts(s,r)}parseSubscripts(t,r,e){let s={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(t),stop:!1};do t=this.parseSubscript(t,r,e,s),s.maybeAsyncArrow=!1;while(!s.stop);return t}parseSubscript(t,r,e,s){let{type:i}=this.state;if(!e&&i===15)return this.parseBind(t,r,e,s);if(nt(i))return this.parseTaggedTemplateExpression(t,r,s);let a=!1;if(i===18){if(e&&(this.raise(f.OptionalChainingNoNew,{at:this.state.startLoc}),this.lookaheadCharCode()===40))return s.stop=!0,t;s.optionalChainMember=a=!0,this.next()}if(!e&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(t,r,s,a);{let n=this.eat(0);return n||a||this.eat(16)?this.parseMember(t,r,s,n,a):(s.stop=!0,t)}}parseMember(t,r,e,s,i){let a=this.startNodeAt(r);return a.object=t,a.computed=s,s?(a.property=this.parseExpression(),this.expect(3)):this.match(136)?(t.type==="Super"&&this.raise(f.SuperPrivateField,{at:r}),this.classScope.usePrivateName(this.state.value,this.state.startLoc),a.property=this.parsePrivateName()):a.property=this.parseIdentifier(!0),e.optionalChainMember?(a.optional=i,this.finishNode(a,"OptionalMemberExpression")):this.finishNode(a,"MemberExpression")}parseBind(t,r,e,s){let i=this.startNodeAt(r);return i.object=t,this.next(),i.callee=this.parseNoCallExpr(),s.stop=!0,this.parseSubscripts(this.finishNode(i,"BindExpression"),r,e)}parseCoverCallAndAsyncArrowHead(t,r,e,s){let i=this.state.maybeInArrowParameters,a=null;this.state.maybeInArrowParameters=!0,this.next();let n=this.startNodeAt(r);n.callee=t;let{maybeAsyncArrow:o,optionalChainMember:u}=e;o&&(this.expressionScope.enter($l()),a=new vt),u&&(n.optional=s),s?n.arguments=this.parseCallExpressionArguments(11):n.arguments=this.parseCallExpressionArguments(11,t.type==="Import",t.type!=="Super",n,a);let c=this.finishCallExpression(n,u);return o&&this.shouldParseAsyncArrow()&&!s?(e.stop=!0,this.checkDestructuringPrivate(a),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),c=this.parseAsyncArrowFromCallExpression(this.startNodeAt(r),c)):(o&&(this.checkExpressionErrors(a,!0),this.expressionScope.exit()),this.toReferencedArguments(c)),this.state.maybeInArrowParameters=i,c}toReferencedArguments(t,r){this.toReferencedListDeep(t.arguments,r)}parseTaggedTemplateExpression(t,r,e){let s=this.startNodeAt(r);return s.tag=t,s.quasi=this.parseTemplate(!0),e.optionalChainMember&&this.raise(f.OptionalChainingNoTemplate,{at:r}),this.finishNode(s,"TaggedTemplateExpression")}atPossibleAsyncArrow(t){return t.type==="Identifier"&&t.name==="async"&&this.state.lastTokEndLoc.index===t.end&&!this.canInsertSemicolon()&&t.end-t.start===5&&t.start===this.state.potentialArrowAt}finishCallExpression(t,r){if(t.callee.type==="Import")if(t.arguments.length===2&&(this.hasPlugin("moduleAttributes")||this.expectPlugin("importAssertions")),t.arguments.length===0||t.arguments.length>2)this.raise(f.ImportCallArity,{at:t,maxArgumentCount:this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")?2:1});else for(let e of t.arguments)e.type==="SpreadElement"&&this.raise(f.ImportCallSpreadArgument,{at:e});return this.finishNode(t,r?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(t,r,e,s,i){let a=[],n=!0,o=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(t);){if(n)n=!1;else if(this.expect(12),this.match(t)){r&&!this.hasPlugin("importAssertions")&&!this.hasPlugin("moduleAttributes")&&this.raise(f.ImportCallArgumentTrailingComma,{at:this.state.lastTokStartLoc}),s&&this.addTrailingCommaExtraToNode(s),this.next();break}a.push(this.parseExprListItem(!1,i,e))}return this.state.inFSharpPipelineDirectBody=o,a}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(t,r){var e;return this.resetPreviousNodeTrailingComments(r),this.expect(19),this.parseArrowExpression(t,r.arguments,!0,(e=r.extra)==null?void 0:e.trailingCommaLoc),r.innerComments&&Ke(t,r.innerComments),r.callee.trailingComments&&Ke(t,r.callee.trailingComments),t}parseNoCallExpr(){let t=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),t,!0)}parseExprAtom(t){let r,e=null,{type:s}=this.state;switch(s){case 79:return this.parseSuper();case 83:return r=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(r):(this.match(10)||this.raise(f.UnsupportedImport,{at:this.state.lastTokStartLoc}),this.finishNode(r,"Import"));case 78:return r=this.startNode(),this.next(),this.finishNode(r,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 132:return this.parseNumericLiteral(this.state.value);case 133:return this.parseBigIntLiteral(this.state.value);case 134:return this.parseDecimalLiteral(this.state.value);case 131:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let i=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(i)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,t);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,t);case 68:return this.parseFunctionOrFunctionSent();case 26:e=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(e,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{r=this.startNode(),this.next(),r.object=null;let i=r.callee=this.parseNoCallExpr();if(i.type==="MemberExpression")return this.finishNode(r,"BindExpression");throw this.raise(f.UnsupportedBind,{at:i})}case 136:return this.raise(f.PrivateInExpectedIn,{at:this.state.startLoc,identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let i=this.getPluginOption("pipelineOperator","proposal");if(i)return this.parseTopicReference(i);this.unexpected();break}case 47:{let i=this.input.codePointAt(this.nextTokenStart());fe(i)||i===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(q(s)){if(this.isContextual(125)&&this.lookaheadCharCode()===123&&!this.hasFollowingLineBreak())return this.parseModuleExpression();let i=this.state.potentialArrowAt===this.state.start,a=this.state.containsEsc,n=this.parseIdentifier();if(!a&&n.name==="async"&&!this.canInsertSemicolon()){let{type:o}=this.state;if(o===68)return this.resetPreviousNodeTrailingComments(n),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(n));if(q(o))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(n)):n;if(o===90)return this.resetPreviousNodeTrailingComments(n),this.parseDo(this.startNodeAtNode(n),!0)}return i&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(n),[n],!1)):n}else this.unexpected()}}parseTopicReferenceThenEqualsSign(t,r){let e=this.getPluginOption("pipelineOperator","proposal");if(e)return this.state.type=t,this.state.value=r,this.state.pos--,this.state.end--,this.state.endLoc=Y(this.state.endLoc,-1),this.parseTopicReference(e);this.unexpected()}parseTopicReference(t){let r=this.startNode(),e=this.state.startLoc,s=this.state.type;return this.next(),this.finishTopicReference(r,e,t,s)}finishTopicReference(t,r,e,s){if(this.testTopicReferenceConfiguration(e,r,s)){let i=e==="smart"?"PipelinePrimaryTopicReference":"TopicReference";return this.topicReferenceIsAllowedInCurrentContext()||this.raise(e==="smart"?f.PrimaryTopicNotAllowed:f.PipeTopicUnbound,{at:r}),this.registerTopicReference(),this.finishNode(t,i)}else throw this.raise(f.PipeTopicUnconfiguredToken,{at:r,token:xe(s)})}testTopicReferenceConfiguration(t,r,e){switch(t){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:xe(e)}]);case"smart":return e===27;default:throw this.raise(f.PipeTopicRequiresHackPipes,{at:r})}}parseAsyncArrowUnaryFunction(t){this.prodParam.enter(Tt(!0,this.prodParam.hasYield));let r=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(f.LineTerminatorBeforeArrow,{at:this.state.curPosition()}),this.expect(19),this.parseArrowExpression(t,r,!0)}parseDo(t,r){this.expectPlugin("doExpressions"),r&&this.expectPlugin("asyncDoExpressions"),t.async=r,this.next();let e=this.state.labels;return this.state.labels=[],r?(this.prodParam.enter(At),t.body=this.parseBlock(),this.prodParam.exit()):t.body=this.parseBlock(),this.state.labels=e,this.finishNode(t,"DoExpression")}parseSuper(){let t=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!this.options.allowSuperOutsideMethod?this.raise(f.SuperNotAllowed,{at:t}):!this.scope.allowSuper&&!this.options.allowSuperOutsideMethod&&this.raise(f.UnexpectedSuper,{at:t}),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(f.UnsupportedSuper,{at:t}),this.finishNode(t,"Super")}parsePrivateName(){let t=this.startNode(),r=this.startNodeAt(Y(this.state.startLoc,1)),e=this.state.value;return this.next(),t.id=this.createIdentifier(r,e),this.finishNode(t,"PrivateName")}parseFunctionOrFunctionSent(){let t=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let r=this.createIdentifier(this.startNodeAtNode(t),"function");return this.next(),this.match(102)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(t,r,"sent")}return this.parseFunction(t)}parseMetaProperty(t,r,e){t.meta=r;let s=this.state.containsEsc;return t.property=this.parseIdentifier(!0),(t.property.name!==e||s)&&this.raise(f.UnsupportedMetaProperty,{at:t.property,target:r.name,onlyValidPropertyName:e}),this.finishNode(t,"MetaProperty")}parseImportMetaProperty(t){let r=this.createIdentifier(this.startNodeAtNode(t),"import");return this.next(),this.isContextual(100)&&(this.inModule||this.raise(f.ImportMetaOutsideModule,{at:r}),this.sawUnambiguousESM=!0),this.parseMetaProperty(t,r,"meta")}parseLiteralAtNode(t,r,e){return this.addExtra(e,"rawValue",t),this.addExtra(e,"raw",this.input.slice(e.start,this.state.end)),e.value=t,this.next(),this.finishNode(e,r)}parseLiteral(t,r){let e=this.startNode();return this.parseLiteralAtNode(t,r,e)}parseStringLiteral(t){return this.parseLiteral(t,"StringLiteral")}parseNumericLiteral(t){return this.parseLiteral(t,"NumericLiteral")}parseBigIntLiteral(t){return this.parseLiteral(t,"BigIntLiteral")}parseDecimalLiteral(t){return this.parseLiteral(t,"DecimalLiteral")}parseRegExpLiteral(t){let r=this.parseLiteral(t.value,"RegExpLiteral");return r.pattern=t.pattern,r.flags=t.flags,r}parseBooleanLiteral(t){let r=this.startNode();return r.value=t,this.next(),this.finishNode(r,"BooleanLiteral")}parseNullLiteral(){let t=this.startNode();return this.next(),this.finishNode(t,"NullLiteral")}parseParenAndDistinguishExpression(t){let r=this.state.startLoc,e;this.next(),this.expressionScope.enter(Ul());let s=this.state.maybeInArrowParameters,i=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let a=this.state.startLoc,n=[],o=new vt,u=!0,c,y;for(;!this.match(11);){if(u)u=!1;else if(this.expect(12,o.optionalParametersLoc===null?null:o.optionalParametersLoc),this.match(11)){y=this.state.startLoc;break}if(this.match(21)){let C=this.state.startLoc;if(c=this.state.startLoc,n.push(this.parseParenItem(this.parseRestBinding(),C)),!this.checkCommaAfterRest(41))break}else n.push(this.parseMaybeAssignAllowIn(o,this.parseParenItem))}let g=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=s,this.state.inFSharpPipelineDirectBody=i;let T=this.startNodeAt(r);return t&&this.shouldParseArrow(n)&&(T=this.parseArrow(T))?(this.checkDestructuringPrivate(o),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(T,n,!1),T):(this.expressionScope.exit(),n.length||this.unexpected(this.state.lastTokStartLoc),y&&this.unexpected(y),c&&this.unexpected(c),this.checkExpressionErrors(o,!0),this.toReferencedListDeep(n,!0),n.length>1?(e=this.startNodeAt(a),e.expressions=n,this.finishNode(e,"SequenceExpression"),this.resetEndLocation(e,g)):e=n[0],this.wrapParenthesis(r,e))}wrapParenthesis(t,r){if(!this.options.createParenthesizedExpressions)return this.addExtra(r,"parenthesized",!0),this.addExtra(r,"parenStart",t.index),this.takeSurroundingComments(r,t.index,this.state.lastTokEndLoc.index),r;let e=this.startNodeAt(t);return e.expression=r,this.finishNode(e,"ParenthesizedExpression")}shouldParseArrow(t){return!this.canInsertSemicolon()}parseArrow(t){if(this.eat(19))return t}parseParenItem(t,r){return t}parseNewOrNewTarget(){let t=this.startNode();if(this.next(),this.match(16)){let r=this.createIdentifier(this.startNodeAtNode(t),"new");this.next();let e=this.parseMetaProperty(t,r,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!this.options.allowNewTargetOutsideFunction&&this.raise(f.UnexpectedNewTarget,{at:e}),e}return this.parseNew(t)}parseNew(t){if(this.parseNewCallee(t),this.eat(10)){let r=this.parseExprList(11);this.toReferencedList(r),t.arguments=r}else t.arguments=[];return this.finishNode(t,"NewExpression")}parseNewCallee(t){t.callee=this.parseNoCallExpr(),t.callee.type==="Import"&&this.raise(f.ImportCallNotNewExpression,{at:t.callee})}parseTemplateElement(t){let{start:r,startLoc:e,end:s,value:i}=this.state,a=r+1,n=this.startNodeAt(Y(e,1));i===null&&(t||this.raise(f.InvalidEscapeSequenceTemplate,{at:Y(this.state.firstInvalidTemplateEscapePos,1)}));let o=this.match(24),u=o?-1:-2,c=s+u;n.value={raw:this.input.slice(a,c).replace(/\r\n?/g,` +`),cooked:i===null?null:i.slice(1,u)},n.tail=o,this.next();let y=this.finishNode(n,"TemplateElement");return this.resetEndLocation(y,Y(this.state.lastTokEndLoc,u)),y}parseTemplate(t){let r=this.startNode();r.expressions=[];let e=this.parseTemplateElement(t);for(r.quasis=[e];!e.tail;)r.expressions.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),r.quasis.push(e=this.parseTemplateElement(t));return this.finishNode(r,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(t,r,e,s){e&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=Object.create(null),n=!0,o=this.startNode();for(o.properties=[],this.next();!this.match(t);){if(n)n=!1;else if(this.expect(12),this.match(t)){this.addTrailingCommaExtraToNode(o);break}let c;r?c=this.parseBindingProperty():(c=this.parsePropertyDefinition(s),this.checkProto(c,e,a,s)),e&&!this.isObjectProperty(c)&&c.type!=="SpreadElement"&&this.raise(f.InvalidRecordProperty,{at:c}),c.shorthand&&this.addExtra(c,"shorthand",!0),o.properties.push(c)}this.next(),this.state.inFSharpPipelineDirectBody=i;let u="ObjectExpression";return r?u="ObjectPattern":e&&(u="RecordExpression"),this.finishNode(o,u)}addTrailingCommaExtraToNode(t){this.addExtra(t,"trailingComma",this.state.lastTokStart),this.addExtra(t,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(t){return!t.computed&&t.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(t){let r=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(f.UnsupportedPropertyDecorator,{at:this.state.startLoc});this.match(26);)r.push(this.parseDecorator());let e=this.startNode(),s=!1,i=!1,a;if(this.match(21))return r.length&&this.unexpected(),this.parseSpread();r.length&&(e.decorators=r,r=[]),e.method=!1,t&&(a=this.state.startLoc);let n=this.eat(55);this.parsePropertyNamePrefixOperator(e);let o=this.state.containsEsc,u=this.parsePropertyName(e,t);if(!n&&!o&&this.maybeAsyncOrAccessorProp(e)){let c=u.name;c==="async"&&!this.hasPrecedingLineBreak()&&(s=!0,this.resetPreviousNodeTrailingComments(u),n=this.eat(55),this.parsePropertyName(e)),(c==="get"||c==="set")&&(i=!0,this.resetPreviousNodeTrailingComments(u),e.kind=c,this.match(55)&&(n=!0,this.raise(f.AccessorIsGenerator,{at:this.state.curPosition(),kind:c}),this.next()),this.parsePropertyName(e))}return this.parseObjPropValue(e,a,n,s,!1,i,t)}getGetterSetterExpectedParamCount(t){return t.kind==="get"?0:1}getObjectOrClassMethodParams(t){return t.params}checkGetterSetterParams(t){var r;let e=this.getGetterSetterExpectedParamCount(t),s=this.getObjectOrClassMethodParams(t);s.length!==e&&this.raise(t.kind==="get"?f.BadGetterArity:f.BadSetterArity,{at:t}),t.kind==="set"&&((r=s[s.length-1])==null?void 0:r.type)==="RestElement"&&this.raise(f.BadSetterRestParameter,{at:t})}parseObjectMethod(t,r,e,s,i){if(i){let a=this.parseMethod(t,r,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(a),a}if(e||r||this.match(10))return s&&this.unexpected(),t.kind="method",t.method=!0,this.parseMethod(t,r,e,!1,!1,"ObjectMethod")}parseObjectProperty(t,r,e,s){if(t.shorthand=!1,this.eat(14))return t.value=e?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(s),this.finishNode(t,"ObjectProperty");if(!t.computed&&t.key.type==="Identifier"){if(this.checkReservedWord(t.key.name,t.key.loc.start,!0,!1),e)t.value=this.parseMaybeDefault(r,me(t.key));else if(this.match(29)){let i=this.state.startLoc;s!=null?s.shorthandAssignLoc===null&&(s.shorthandAssignLoc=i):this.raise(f.InvalidCoverInitializedName,{at:i}),t.value=this.parseMaybeDefault(r,me(t.key))}else t.value=me(t.key);return t.shorthand=!0,this.finishNode(t,"ObjectProperty")}}parseObjPropValue(t,r,e,s,i,a,n){let o=this.parseObjectMethod(t,e,s,i,a)||this.parseObjectProperty(t,r,i,n);return o||this.unexpected(),o}parsePropertyName(t,r){if(this.eat(0))t.computed=!0,t.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:e,value:s}=this.state,i;if(te(e))i=this.parseIdentifier(!0);else switch(e){case 132:i=this.parseNumericLiteral(s);break;case 131:i=this.parseStringLiteral(s);break;case 133:i=this.parseBigIntLiteral(s);break;case 134:i=this.parseDecimalLiteral(s);break;case 136:{let a=this.state.startLoc;r!=null?r.privateKeyLoc===null&&(r.privateKeyLoc=a):this.raise(f.UnexpectedPrivateField,{at:a}),i=this.parsePrivateName();break}default:this.unexpected()}t.key=i,e!==136&&(t.computed=!1)}return t.key}initFunction(t,r){t.id=null,t.generator=!1,t.async=r}parseMethod(t,r,e,s,i,a){let n=arguments.length>6&&arguments[6]!==void 0?arguments[6]:!1;this.initFunction(t,e),t.generator=r,this.scope.enter(de|ht|(n?Ee:0)|(i?Pr:0)),this.prodParam.enter(Tt(e,t.generator)),this.parseFunctionParams(t,s);let o=this.parseFunctionBodyAndFinish(t,a,!0);return this.prodParam.exit(),this.scope.exit(),o}parseArrayLike(t,r,e,s){e&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=this.startNode();return this.next(),a.elements=this.parseExprList(t,!e,s,a),this.state.inFSharpPipelineDirectBody=i,this.finishNode(a,e?"TupleExpression":"ArrayExpression")}parseArrowExpression(t,r,e,s){this.scope.enter(de|Gt);let i=Tt(e,!1);!this.match(5)&&this.prodParam.hasIn&&(i|=_e),this.prodParam.enter(i),this.initFunction(t,e);let a=this.state.maybeInArrowParameters;return r&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(t,r,s)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(t,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=a,this.finishNode(t,"ArrowFunctionExpression")}setArrowFunctionParameters(t,r,e){this.toAssignableList(r,e,!1),t.params=r}parseFunctionBodyAndFinish(t,r){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return this.parseFunctionBody(t,!1,e),this.finishNode(t,r)}parseFunctionBody(t,r){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,s=r&&!this.match(5);if(this.expressionScope.enter(_r()),s)t.body=this.parseMaybeAssign(),this.checkParams(t,!1,r,!1);else{let i=this.state.strict,a=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|jr),t.body=this.parseBlock(!0,!1,n=>{let o=!this.isSimpleParamList(t.params);n&&o&&this.raise(f.IllegalLanguageModeDirective,{at:(t.kind==="method"||t.kind==="constructor")&&t.key?t.key.loc.end:t});let u=!i&&this.state.strict;this.checkParams(t,!this.state.strict&&!r&&!e&&!o,r,u),this.state.strict&&t.id&&this.checkIdentifier(t.id,dl,u)}),this.prodParam.exit(),this.state.labels=a}this.expressionScope.exit()}isSimpleParameter(t){return t.type==="Identifier"}isSimpleParamList(t){for(let r=0,e=t.length;r3&&arguments[3]!==void 0?arguments[3]:!0,i=!r&&new Set,a={type:"FormalParameters"};for(let n of t.params)this.checkLVal(n,{in:a,binding:mt,checkClashes:i,strictModeChanged:s})}parseExprList(t,r,e,s){let i=[],a=!0;for(;!this.eat(t);){if(a)a=!1;else if(this.expect(12),this.match(t)){s&&this.addTrailingCommaExtraToNode(s),this.next();break}i.push(this.parseExprListItem(r,e))}return i}parseExprListItem(t,r,e){let s;if(this.match(12))t||this.raise(f.UnexpectedToken,{at:this.state.curPosition(),unexpected:","}),s=null;else if(this.match(21)){let i=this.state.startLoc;s=this.parseParenItem(this.parseSpread(r),i)}else if(this.match(17)){this.expectPlugin("partialApplication"),e||this.raise(f.UnexpectedArgumentPlaceholder,{at:this.state.startLoc});let i=this.startNode();this.next(),s=this.finishNode(i,"ArgumentPlaceholder")}else s=this.parseMaybeAssignAllowIn(r,this.parseParenItem);return s}parseIdentifier(t){let r=this.startNode(),e=this.parseIdentifierName(t);return this.createIdentifier(r,e)}createIdentifier(t,r){return t.name=r,t.loc.identifierName=r,this.finishNode(t,"Identifier")}parseIdentifierName(t){let r,{startLoc:e,type:s}=this.state;te(s)?r=this.state.value:this.unexpected();let i=ue(s);return t?i&&this.replaceToken(130):this.checkReservedWord(r,e,i,!1),this.next(),r}checkReservedWord(t,r,e,s){if(t.length>10||!ul(t))return;if(e&&ol(t)){this.raise(f.UnexpectedKeyword,{at:r,keyword:t});return}if((this.state.strict?s?xr:mr:dr)(t,this.inModule)){this.raise(f.UnexpectedReservedWord,{at:r,reservedWord:t});return}else if(t==="yield"){if(this.prodParam.hasYield){this.raise(f.YieldBindingIdentifier,{at:r});return}}else if(t==="await"){if(this.prodParam.hasAwait){this.raise(f.AwaitBindingIdentifier,{at:r});return}if(this.scope.inStaticBlock){this.raise(f.AwaitBindingIdentifierInStaticBlock,{at:r});return}this.expressionScope.recordAsyncArrowParametersError({at:r})}else if(t==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(f.ArgumentsInClass,{at:r});return}}isAwaitAllowed(){return!!(this.prodParam.hasAwait||this.options.allowAwaitOutsideFunction&&!this.scope.inFunction)}parseAwait(t){let r=this.startNodeAt(t);return this.expressionScope.recordParameterInitializerError(f.AwaitExpressionFormalParameter,{at:r}),this.eat(55)&&this.raise(f.ObsoleteAwaitStar,{at:r}),!this.scope.inFunction&&!this.options.allowAwaitOutsideFunction&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(r.argument=this.parseMaybeUnary(null,!0)),this.finishNode(r,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:t}=this.state;return t===53||t===10||t===0||nt(t)||t===101&&!this.state.containsEsc||t===135||t===56||this.hasPlugin("v8intrinsic")&&t===54}parseYield(){let t=this.startNode();this.expressionScope.recordParameterInitializerError(f.YieldInParameter,{at:t}),this.next();let r=!1,e=null;if(!this.hasPrecedingLineBreak())switch(r=this.eat(55),this.state.type){case 13:case 137:case 8:case 11:case 3:case 9:case 14:case 12:if(!r)break;default:e=this.parseMaybeAssign()}return t.delegate=r,t.argument=e,this.finishNode(t,"YieldExpression")}checkPipelineAtInfixOperator(t,r){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&t.type==="SequenceExpression"&&this.raise(f.PipelineHeadSequenceExpression,{at:r})}parseSmartPipelineBodyInStyle(t,r){if(this.isSimpleReference(t)){let e=this.startNodeAt(r);return e.callee=t,this.finishNode(e,"PipelineBareFunction")}else{let e=this.startNodeAt(r);return this.checkSmartPipeTopicBodyEarlyErrors(r),e.expression=t,this.finishNode(e,"PipelineTopicExpression")}}isSimpleReference(t){switch(t.type){case"MemberExpression":return!t.computed&&this.isSimpleReference(t.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(t){if(this.match(19))throw this.raise(f.PipelineBodyNoArrow,{at:this.state.startLoc});this.topicReferenceWasUsedInCurrentContext()||this.raise(f.PipelineTopicUnused,{at:t})}withTopicBindingContext(t){let r=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return t()}finally{this.state.topicContext=r}}withSmartMixTopicForbiddingContext(t){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let r=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return t()}finally{this.state.topicContext=r}}else return t()}withSoloAwaitPermittingContext(t){let r=this.state.soloAwait;this.state.soloAwait=!0;try{return t()}finally{this.state.soloAwait=r}}allowInAnd(t){let r=this.prodParam.currentFlags();if(_e&~r){this.prodParam.enter(r|_e);try{return t()}finally{this.prodParam.exit()}}return t()}disallowInAnd(t){let r=this.prodParam.currentFlags();if(_e&r){this.prodParam.enter(r&~_e);try{return t()}finally{this.prodParam.exit()}}return t()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(t){let r=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let e=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let s=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),r,t);return this.state.inFSharpPipelineDirectBody=e,s}parseModuleExpression(){this.expectPlugin("moduleBlocks");let t=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let r=this.startNodeAt(this.state.endLoc);this.next();let e=this.initializeScopes(!0);this.enterInitialScopes();try{t.body=this.parseProgram(r,8,"module")}finally{e()}return this.finishNode(t,"ModuleExpression")}parsePropertyNamePrefixOperator(t){}},cs={kind:"loop"},Ph={kind:"switch"},Ah=/[\uD800-\uDFFF]/u,ps=/in(?:stanceof)?/y;function Th(t,r){for(let e=0;e1&&arguments[1]!==void 0?arguments[1]:137,e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.options.sourceType;if(t.sourceType=e,t.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(t,!0,!0,r),this.inModule&&!this.options.allowUndeclaredExports&&this.scope.undefinedExports.size>0)for(let[i,a]of Array.from(this.scope.undefinedExports))this.raise(f.ModuleExportUndefined,{at:a,localName:i});let s;return r===137?s=this.finishNode(t,"Program"):s=this.finishNodeAt(t,"Program",Y(this.state.startLoc,-1)),s}stmtToDirective(t){let r=t;r.type="Directive",r.value=r.expression,delete r.expression;let e=r.value,s=e.value,i=this.input.slice(e.start,e.end),a=e.value=i.slice(1,-1);return this.addExtra(e,"raw",i),this.addExtra(e,"rawValue",a),this.addExtra(e,"expressionValue",s),e.type="DirectiveLiteral",r}parseInterpreterDirective(){if(!this.match(28))return null;let t=this.startNode();return t.value=this.state.value,this.next(),this.finishNode(t,"InterpreterDirective")}isLet(){return this.isContextual(99)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(t,r){if(fe(t)){if(ps.lastIndex=r,ps.test(this.input)){let e=this.codePointAtPos(ps.lastIndex);if(!De(e)&&e!==92)return!1}return!0}else return t===92}chStartsBindingPattern(t){return t===91||t===123}hasFollowingBindingAtom(){let t=this.nextTokenStart(),r=this.codePointAtPos(t);return this.chStartsBindingPattern(r)||this.chStartsBindingIdentifier(r,t)}hasFollowingBindingIdentifier(){let t=this.nextTokenStart(),r=this.codePointAtPos(t);return this.chStartsBindingIdentifier(r,t)}startsUsingForOf(){let t=this.lookahead();return t.type===101&&!t.containsEsc?!1:(this.expectPlugin("explicitResourceManagement"),!0)}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,r=0;return this.options.annexB&&!this.state.strict&&(r|=4,t&&(r|=8)),this.parseStatementLike(r)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(t){let r=null;return this.match(26)&&(r=this.parseDecorators(!0)),this.parseStatementContent(t,r)}parseStatementContent(t,r){let e=this.state.type,s=this.startNode(),i=!!(t&2),a=!!(t&4),n=t&1;switch(e){case 60:return this.parseBreakContinueStatement(s,!0);case 63:return this.parseBreakContinueStatement(s,!1);case 64:return this.parseDebuggerStatement(s);case 90:return this.parseDoWhileStatement(s);case 91:return this.parseForStatement(s);case 68:if(this.lookaheadCharCode()===46)break;return a||this.raise(this.state.strict?f.StrictFunction:this.options.annexB?f.SloppyFunctionAnnexB:f.SloppyFunction,{at:this.state.startLoc}),this.parseFunctionStatement(s,!1,!i&&a);case 80:return i||this.unexpected(),this.parseClass(this.maybeTakeDecorators(r,s),!0);case 69:return this.parseIfStatement(s);case 70:return this.parseReturnStatement(s);case 71:return this.parseSwitchStatement(s);case 72:return this.parseThrowStatement(s);case 73:return this.parseTryStatement(s);case 105:if(this.hasFollowingLineBreak()||this.state.containsEsc||!this.hasFollowingBindingIdentifier())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(f.UnexpectedUsingDeclaration,{at:this.state.startLoc}):i||this.raise(f.UnexpectedLexicalDeclaration,{at:this.state.startLoc}),this.parseVarStatement(s,"using");case 99:{if(this.state.containsEsc)break;let c=this.nextTokenStart(),y=this.codePointAtPos(c);if(y!==91&&(!i&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(y,c)&&y!==123))break}case 75:i||this.raise(f.UnexpectedLexicalDeclaration,{at:this.state.startLoc});case 74:{let c=this.state.value;return this.parseVarStatement(s,c)}case 92:return this.parseWhileStatement(s);case 76:return this.parseWithStatement(s);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(s);case 83:{let c=this.lookaheadCharCode();if(c===40||c===46)break}case 82:{!this.options.allowImportExportEverywhere&&!n&&this.raise(f.UnexpectedImportExport,{at:this.state.startLoc}),this.next();let c;return e===83?(c=this.parseImport(s),c.type==="ImportDeclaration"&&(!c.importKind||c.importKind==="value")&&(this.sawUnambiguousESM=!0)):(c=this.parseExport(s,r),(c.type==="ExportNamedDeclaration"&&(!c.exportKind||c.exportKind==="value")||c.type==="ExportAllDeclaration"&&(!c.exportKind||c.exportKind==="value")||c.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(c),c}default:if(this.isAsyncFunction())return i||this.raise(f.AsyncFunctionInSingleStatementContext,{at:this.state.startLoc}),this.next(),this.parseFunctionStatement(s,!0,!i&&a)}let o=this.state.value,u=this.parseExpression();return q(e)&&u.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(s,o,u,t):this.parseExpressionStatement(s,u,r)}assertModuleNodeAllowed(t){!this.options.allowImportExportEverywhere&&!this.inModule&&this.raise(f.ImportOutsideModule,{at:t})}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(t,r,e){return t&&(r.decorators&&r.decorators.length>0?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(f.DecoratorsBeforeAfterExport,{at:r.decorators[0]}),r.decorators.unshift(...t)):r.decorators=t,this.resetStartLocationFromNode(r,t[0]),e&&this.resetStartLocationFromNode(e,r)),r}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(t){let r=[];do r.push(this.parseDecorator());while(this.match(26));if(this.match(82))t||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(f.DecoratorExportClass,{at:this.state.startLoc});else if(!this.canHaveLeadingDecorator())throw this.raise(f.UnexpectedLeadingDecorator,{at:this.state.startLoc});return r}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let t=this.startNode();if(this.next(),this.hasPlugin("decorators")){let r=this.state.startLoc,e;if(this.match(10)){let s=this.state.startLoc;this.next(),e=this.parseExpression(),this.expect(11),e=this.wrapParenthesis(s,e);let i=this.state.startLoc;t.expression=this.parseMaybeDecoratorArguments(e),this.getPluginOption("decorators","allowCallParenthesized")===!1&&t.expression!==e&&this.raise(f.DecoratorArgumentsOutsideParentheses,{at:i})}else{for(e=this.parseIdentifier(!1);this.eat(16);){let s=this.startNodeAt(r);s.object=e,this.match(136)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),s.computed=!1,e=this.finishNode(s,"MemberExpression")}t.expression=this.parseMaybeDecoratorArguments(e)}}else t.expression=this.parseExprSubscripts();return this.finishNode(t,"Decorator")}parseMaybeDecoratorArguments(t){if(this.eat(10)){let r=this.startNodeAtNode(t);return r.callee=t,r.arguments=this.parseCallExpressionArguments(11,!1),this.toReferencedList(r.arguments),this.finishNode(r,"CallExpression")}return t}parseBreakContinueStatement(t,r){return this.next(),this.isLineTerminator()?t.label=null:(t.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(t,r),this.finishNode(t,r?"BreakStatement":"ContinueStatement")}verifyBreakContinue(t,r){let e;for(e=0;ethis.parseStatement()),this.state.labels.pop(),this.expect(92),t.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(t,"DoWhileStatement")}parseForStatement(t){this.next(),this.state.labels.push(cs);let r=null;if(this.isAwaitAllowed()&&this.eatContextual(96)&&(r=this.state.lastTokStartLoc),this.scope.enter(Fe),this.expect(10),this.match(13))return r!==null&&this.unexpected(r),this.parseFor(t,null);let e=this.isContextual(99),s=this.isContextual(105)&&!this.hasFollowingLineBreak(),i=e&&this.hasFollowingBindingAtom()||s&&this.hasFollowingBindingIdentifier()&&this.startsUsingForOf();if(this.match(74)||this.match(75)||i){let c=this.startNode(),y=this.state.value;this.next(),this.parseVar(c,!0,y);let g=this.finishNode(c,"VariableDeclaration"),T=this.match(58);return T&&s&&this.raise(f.ForInUsing,{at:g}),(T||this.isContextual(101))&&g.declarations.length===1?this.parseForIn(t,g,r):(r!==null&&this.unexpected(r),this.parseFor(t,g))}let a=this.isContextual(95),n=new vt,o=this.parseExpression(!0,n),u=this.isContextual(101);if(u&&(e&&this.raise(f.ForOfLet,{at:o}),r===null&&a&&o.type==="Identifier"&&this.raise(f.ForOfAsync,{at:o})),u||this.match(58)){this.checkDestructuringPrivate(n),this.toAssignable(o,!0);let c=u?"ForOfStatement":"ForInStatement";return this.checkLVal(o,{in:{type:c}}),this.parseForIn(t,o,r)}else this.checkExpressionErrors(n,!0);return r!==null&&this.unexpected(r),this.parseFor(t,o)}parseFunctionStatement(t,r,e){return this.next(),this.parseFunction(t,1|(e?2:0)|(r?8:0))}parseIfStatement(t){return this.next(),t.test=this.parseHeaderExpression(),t.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),t.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(t,"IfStatement")}parseReturnStatement(t){return!this.prodParam.hasReturn&&!this.options.allowReturnOutsideFunction&&this.raise(f.IllegalReturn,{at:this.state.startLoc}),this.next(),this.isLineTerminator()?t.argument=null:(t.argument=this.parseExpression(),this.semicolon()),this.finishNode(t,"ReturnStatement")}parseSwitchStatement(t){this.next(),t.discriminant=this.parseHeaderExpression();let r=t.cases=[];this.expect(5),this.state.labels.push(Ph),this.scope.enter(Fe);let e;for(let s;!this.match(8);)if(this.match(61)||this.match(65)){let i=this.match(61);e&&this.finishNode(e,"SwitchCase"),r.push(e=this.startNode()),e.consequent=[],this.next(),i?e.test=this.parseExpression():(s&&this.raise(f.MultipleDefaultsInSwitch,{at:this.state.lastTokStartLoc}),s=!0,e.test=null),this.expect(14)}else e?e.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),e&&this.finishNode(e,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(t,"SwitchStatement")}parseThrowStatement(t){return this.next(),this.hasPrecedingLineBreak()&&this.raise(f.NewlineAfterThrow,{at:this.state.lastTokEndLoc}),t.argument=this.parseExpression(),this.semicolon(),this.finishNode(t,"ThrowStatement")}parseCatchClauseParam(){let t=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&t.type==="Identifier"?gr:0),this.checkLVal(t,{in:{type:"CatchClause"},binding:cl}),t}parseTryStatement(t){if(this.next(),t.block=this.parseBlock(),t.handler=null,this.match(62)){let r=this.startNode();this.next(),this.match(10)?(this.expect(10),r.param=this.parseCatchClauseParam(),this.expect(11)):(r.param=null,this.scope.enter(Fe)),r.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),t.handler=this.finishNode(r,"CatchClause")}return t.finalizer=this.eat(67)?this.parseBlock():null,!t.handler&&!t.finalizer&&this.raise(f.NoCatchOrFinally,{at:t}),this.finishNode(t,"TryStatement")}parseVarStatement(t,r){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return this.next(),this.parseVar(t,!1,r,e),this.semicolon(),this.finishNode(t,"VariableDeclaration")}parseWhileStatement(t){return this.next(),t.test=this.parseHeaderExpression(),this.state.labels.push(cs),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(t,"WhileStatement")}parseWithStatement(t){return this.state.strict&&this.raise(f.StrictWith,{at:this.state.startLoc}),this.next(),t.object=this.parseHeaderExpression(),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(t,"WithStatement")}parseEmptyStatement(t){return this.next(),this.finishNode(t,"EmptyStatement")}parseLabeledStatement(t,r,e,s){for(let a of this.state.labels)a.name===r&&this.raise(f.LabelRedeclaration,{at:e,labelName:r});let i=Mo(this.state.type)?"loop":this.match(71)?"switch":null;for(let a=this.state.labels.length-1;a>=0;a--){let n=this.state.labels[a];if(n.statementStart===t.start)n.statementStart=this.state.start,n.kind=i;else break}return this.state.labels.push({name:r,kind:i,statementStart:this.state.start}),t.body=s&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),t.label=e,this.finishNode(t,"LabeledStatement")}parseExpressionStatement(t,r,e){return t.expression=r,this.semicolon(),this.finishNode(t,"ExpressionStatement")}parseBlock(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,e=arguments.length>2?arguments[2]:void 0,s=this.startNode();return t&&this.state.strictErrors.clear(),this.expect(5),r&&this.scope.enter(Fe),this.parseBlockBody(s,t,!1,8,e),r&&this.scope.exit(),this.finishNode(s,"BlockStatement")}isValidDirective(t){return t.type==="ExpressionStatement"&&t.expression.type==="StringLiteral"&&!t.expression.extra.parenthesized}parseBlockBody(t,r,e,s,i){let a=t.body=[],n=t.directives=[];this.parseBlockOrModuleBlockBody(a,r?n:void 0,e,s,i)}parseBlockOrModuleBlockBody(t,r,e,s,i){let a=this.state.strict,n=!1,o=!1;for(;!this.match(s);){let u=e?this.parseModuleItem():this.parseStatementListItem();if(r&&!o){if(this.isValidDirective(u)){let c=this.stmtToDirective(u);r.push(c),!n&&c.value.value==="use strict"&&(n=!0,this.setStrict(!0));continue}o=!0,this.state.strictErrors.clear()}t.push(u)}i&&i.call(this,n),a||this.setStrict(!1),this.next()}parseFor(t,r){return t.init=r,this.semicolon(!1),t.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),t.update=this.match(11)?null:this.parseExpression(),this.expect(11),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(t,"ForStatement")}parseForIn(t,r,e){let s=this.match(58);return this.next(),s?e!==null&&this.unexpected(e):t.await=e!==null,r.type==="VariableDeclaration"&&r.declarations[0].init!=null&&(!s||!this.options.annexB||this.state.strict||r.kind!=="var"||r.declarations[0].id.type!=="Identifier")&&this.raise(f.ForInOfLoopInitializer,{at:r,type:s?"ForInStatement":"ForOfStatement"}),r.type==="AssignmentPattern"&&this.raise(f.InvalidLhs,{at:r,ancestor:{type:"ForStatement"}}),t.left=r,t.right=s?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(t,s?"ForInStatement":"ForOfStatement")}parseVar(t,r,e){let s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,i=t.declarations=[];for(t.kind=e;;){let a=this.startNode();if(this.parseVarId(a,e),a.init=this.eat(29)?r?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,a.init===null&&!s&&(a.id.type!=="Identifier"&&!(r&&(this.match(58)||this.isContextual(101)))?this.raise(f.DeclarationMissingInitializer,{at:this.state.lastTokEndLoc,kind:"destructuring"}):e==="const"&&!(this.match(58)||this.isContextual(101))&&this.raise(f.DeclarationMissingInitializer,{at:this.state.lastTokEndLoc,kind:"const"})),i.push(this.finishNode(a,"VariableDeclarator")),!this.eat(12))break}return t}parseVarId(t,r){r==="using"&&!this.inModule&&this.match(96)&&this.raise(f.AwaitInUsingBinding,{at:this.state.startLoc});let e=this.parseBindingAtom();this.checkLVal(e,{in:{type:"VariableDeclarator"},binding:r==="var"?mt:Be}),t.id=e}parseAsyncFunctionExpression(t){return this.parseFunction(t,8)}parseFunction(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,e=r&2,s=!!(r&1),i=s&&!(r&4),a=!!(r&8);this.initFunction(t,a),this.match(55)&&(e&&this.raise(f.GeneratorInSingleStatementContext,{at:this.state.startLoc}),this.next(),t.generator=!0),s&&(t.id=this.parseFunctionId(i));let n=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(de),this.prodParam.enter(Tt(a,t.generator)),s||(t.id=this.parseFunctionId()),this.parseFunctionParams(t,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(t,s?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),s&&!e&&this.registerFunctionStatementId(t),this.state.maybeInArrowParameters=n,t}parseFunctionId(t){return t||q(this.state.type)?this.parseIdentifier():null}parseFunctionParams(t,r){this.expect(10),this.expressionScope.enter(ql()),t.params=this.parseBindingList(11,41,2|(r?4:0)),this.expressionScope.exit()}registerFunctionStatementId(t){t.id&&this.scope.declareName(t.id.name,!this.options.annexB||this.state.strict||t.generator||t.async?this.scope.treatFunctionsAsVar?mt:Be:Er,t.id.loc.start)}parseClass(t,r,e){this.next();let s=this.state.strict;return this.state.strict=!0,this.parseClassId(t,r,e),this.parseClassSuper(t),t.body=this.parseClassBody(!!t.superClass,s),this.finishNode(t,r?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}isNonstaticConstructor(t){return!t.computed&&!t.static&&(t.key.name==="constructor"||t.key.value==="constructor")}parseClassBody(t,r){this.classScope.enter();let e={hadConstructor:!1,hadSuperClass:t},s=[],i=this.startNode();if(i.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(s.length>0)throw this.raise(f.DecoratorSemicolon,{at:this.state.lastTokEndLoc});continue}if(this.match(26)){s.push(this.parseDecorator());continue}let a=this.startNode();s.length&&(a.decorators=s,this.resetStartLocationFromNode(a,s[0]),s=[]),this.parseClassMember(i,a,e),a.kind==="constructor"&&a.decorators&&a.decorators.length>0&&this.raise(f.DecoratorConstructor,{at:a})}}),this.state.strict=r,this.next(),s.length)throw this.raise(f.TrailingDecorator,{at:this.state.startLoc});return this.classScope.exit(),this.finishNode(i,"ClassBody")}parseClassMemberFromModifier(t,r){let e=this.parseIdentifier(!0);if(this.isClassMethod()){let s=r;return s.kind="method",s.computed=!1,s.key=e,s.static=!1,this.pushClassMethod(t,s,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let s=r;return s.computed=!1,s.key=e,s.static=!1,t.body.push(this.parseClassProperty(s)),!0}return this.resetPreviousNodeTrailingComments(e),!1}parseClassMember(t,r,e){let s=this.isContextual(104);if(s){if(this.parseClassMemberFromModifier(t,r))return;if(this.eat(5)){this.parseClassStaticBlock(t,r);return}}this.parseClassMemberWithIsStatic(t,r,e,s)}parseClassMemberWithIsStatic(t,r,e,s){let i=r,a=r,n=r,o=r,u=r,c=i,y=i;if(r.static=s,this.parsePropertyNamePrefixOperator(r),this.eat(55)){c.kind="method";let j=this.match(136);if(this.parseClassElementName(c),j){this.pushClassPrivateMethod(t,a,!0,!1);return}this.isNonstaticConstructor(i)&&this.raise(f.ConstructorIsGenerator,{at:i.key}),this.pushClassMethod(t,i,!0,!1,!1,!1);return}let g=q(this.state.type)&&!this.state.containsEsc,T=this.match(136),C=this.parseClassElementName(r),M=this.state.startLoc;if(this.parsePostMemberNameModifiers(y),this.isClassMethod()){if(c.kind="method",T){this.pushClassPrivateMethod(t,a,!1,!1);return}let j=this.isNonstaticConstructor(i),K=!1;j&&(i.kind="constructor",e.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(f.DuplicateConstructor,{at:C}),j&&this.hasPlugin("typescript")&&r.override&&this.raise(f.OverrideOnConstructor,{at:C}),e.hadConstructor=!0,K=e.hadSuperClass),this.pushClassMethod(t,i,!1,!1,j,K)}else if(this.isClassProperty())T?this.pushClassPrivateProperty(t,o):this.pushClassProperty(t,n);else if(g&&C.name==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(C);let j=this.eat(55);y.optional&&this.unexpected(M),c.kind="method";let K=this.match(136);this.parseClassElementName(c),this.parsePostMemberNameModifiers(y),K?this.pushClassPrivateMethod(t,a,j,!0):(this.isNonstaticConstructor(i)&&this.raise(f.ConstructorIsAsync,{at:i.key}),this.pushClassMethod(t,i,j,!0,!1,!1))}else if(g&&(C.name==="get"||C.name==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(C),c.kind=C.name;let j=this.match(136);this.parseClassElementName(i),j?this.pushClassPrivateMethod(t,a,!1,!1):(this.isNonstaticConstructor(i)&&this.raise(f.ConstructorIsAccessor,{at:i.key}),this.pushClassMethod(t,i,!1,!1,!1,!1)),this.checkGetterSetterParams(i)}else if(g&&C.name==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(C);let j=this.match(136);this.parseClassElementName(n),this.pushClassAccessorProperty(t,u,j)}else this.isLineTerminator()?T?this.pushClassPrivateProperty(t,o):this.pushClassProperty(t,n):this.unexpected()}parseClassElementName(t){let{type:r,value:e}=this.state;if((r===130||r===131)&&t.static&&e==="prototype"&&this.raise(f.StaticPrototype,{at:this.state.startLoc}),r===136){e==="constructor"&&this.raise(f.ConstructorClassPrivateField,{at:this.state.startLoc});let s=this.parsePrivateName();return t.key=s,s}return this.parsePropertyName(t)}parseClassStaticBlock(t,r){var e;this.scope.enter(Ee|ut|ht);let s=this.state.labels;this.state.labels=[],this.prodParam.enter(Me);let i=r.body=[];this.parseBlockOrModuleBlockBody(i,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=s,t.body.push(this.finishNode(r,"StaticBlock")),(e=r.decorators)!=null&&e.length&&this.raise(f.DecoratorStaticBlock,{at:r})}pushClassProperty(t,r){!r.computed&&(r.key.name==="constructor"||r.key.value==="constructor")&&this.raise(f.ConstructorClassField,{at:r.key}),t.body.push(this.parseClassProperty(r))}pushClassPrivateProperty(t,r){let e=this.parseClassPrivateProperty(r);t.body.push(e),this.classScope.declarePrivateName(this.getPrivateNameSV(e.key),ss,e.key.loc.start)}pushClassAccessorProperty(t,r,e){if(!e&&!r.computed){let i=r.key;(i.name==="constructor"||i.value==="constructor")&&this.raise(f.ConstructorClassField,{at:i})}let s=this.parseClassAccessorProperty(r);t.body.push(s),e&&this.classScope.declarePrivateName(this.getPrivateNameSV(s.key),ss,s.key.loc.start)}pushClassMethod(t,r,e,s,i,a){t.body.push(this.parseMethod(r,e,s,i,a,"ClassMethod",!0))}pushClassPrivateMethod(t,r,e,s){let i=this.parseMethod(r,e,s,!1,!1,"ClassPrivateMethod",!0);t.body.push(i);let a=i.kind==="get"?i.static?gl:Al:i.kind==="set"?i.static?Pl:Tl:ss;this.declareClassPrivateMethodInScope(i,a)}declareClassPrivateMethodInScope(t,r){this.classScope.declarePrivateName(this.getPrivateNameSV(t.key),r,t.key.loc.start)}parsePostMemberNameModifiers(t){}parseClassPrivateProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassPrivateProperty")}parseClassProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassProperty")}parseClassAccessorProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassAccessorProperty")}parseInitializer(t){this.scope.enter(Ee|ht),this.expressionScope.enter(_r()),this.prodParam.enter(Me),t.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(t,r,e){let s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:vr;if(q(this.state.type))t.id=this.parseIdentifier(),r&&this.declareNameFromIdentifier(t.id,s);else if(e||!r)t.id=null;else throw this.raise(f.MissingClassName,{at:this.state.startLoc})}parseClassSuper(t){t.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(t,r){let e=this.maybeParseExportDefaultSpecifier(t),s=!e||this.eat(12),i=s&&this.eatExportStar(t),a=i&&this.maybeParseExportNamespaceSpecifier(t),n=s&&(!a||this.eat(12)),o=e||i;if(i&&!a){if(e&&this.unexpected(),r)throw this.raise(f.UnsupportedDecoratorExport,{at:t});return this.parseExportFrom(t,!0),this.finishNode(t,"ExportAllDeclaration")}let u=this.maybeParseExportNamedSpecifiers(t);e&&s&&!i&&!u&&this.unexpected(null,5),a&&n&&this.unexpected(null,97);let c;if(o||u){if(c=!1,r)throw this.raise(f.UnsupportedDecoratorExport,{at:t});this.parseExportFrom(t,o)}else c=this.maybeParseExportDeclaration(t);if(o||u||c){var y;let g=t;if(this.checkExport(g,!0,!1,!!g.source),((y=g.declaration)==null?void 0:y.type)==="ClassDeclaration")this.maybeTakeDecorators(r,g.declaration,g);else if(r)throw this.raise(f.UnsupportedDecoratorExport,{at:t});return this.finishNode(g,"ExportNamedDeclaration")}if(this.eat(65)){let g=t,T=this.parseExportDefaultExpression();if(g.declaration=T,T.type==="ClassDeclaration")this.maybeTakeDecorators(r,T,g);else if(r)throw this.raise(f.UnsupportedDecoratorExport,{at:t});return this.checkExport(g,!0,!0),this.finishNode(g,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(t){return this.eat(55)}maybeParseExportDefaultSpecifier(t){if(this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom");let r=this.startNode();return r.exported=this.parseIdentifier(!0),t.specifiers=[this.finishNode(r,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(t){if(this.isContextual(93)){t.specifiers||(t.specifiers=[]);let r=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),r.exported=this.parseModuleExportName(),t.specifiers.push(this.finishNode(r,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(t){if(this.match(5)){t.specifiers||(t.specifiers=[]);let r=t.exportKind==="type";return t.specifiers.push(...this.parseExportSpecifiers(r)),t.source=null,t.declaration=null,this.hasPlugin("importAssertions")&&(t.assertions=[]),!0}return!1}maybeParseExportDeclaration(t){return this.shouldParseExportDeclaration()?(t.specifiers=[],t.source=null,this.hasPlugin("importAssertions")&&(t.assertions=[]),t.declaration=this.parseExportDeclaration(t),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let t=this.nextTokenStart();return!as.test(this.input.slice(this.state.pos,t))&&this.isUnparsedContextual(t,"function")}parseExportDefaultExpression(){let t=this.startNode();if(this.match(68))return this.next(),this.parseFunction(t,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(t,13);if(this.match(80))return this.parseClass(t,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(f.DecoratorBeforeExport,{at:this.state.startLoc}),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(f.UnsupportedDefaultExport,{at:this.state.startLoc});let r=this.parseMaybeAssignAllowIn();return this.semicolon(),r}parseExportDeclaration(t){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:t}=this.state;if(q(t)){if(t===95&&!this.state.containsEsc||t===99)return!1;if((t===128||t===127)&&!this.state.containsEsc){let{type:s}=this.lookahead();if(q(s)&&s!==97||s===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let r=this.nextTokenStart(),e=this.isUnparsedContextual(r,"from");if(this.input.charCodeAt(r)===44||q(this.state.type)&&e)return!0;if(this.match(65)&&e){let s=this.input.charCodeAt(this.nextTokenStartSince(r+4));return s===34||s===39}return!1}parseExportFrom(t,r){if(this.eatContextual(97)){t.source=this.parseImportSource(),this.checkExport(t);let e=this.maybeParseImportAssertions();e&&(t.assertions=e,this.checkJSONModuleImport(t))}else r&&this.unexpected();this.semicolon()}shouldParseExportDeclaration(){let{type:t}=this.state;return t===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(f.DecoratorBeforeExport,{at:this.state.startLoc}),!0):t===74||t===75||t===68||t===80||this.isLet()||this.isAsyncFunction()}checkExport(t,r,e,s){if(r){if(e){if(this.checkDuplicateExports(t,"default"),this.hasPlugin("exportDefaultFrom")){var i;let a=t.declaration;a.type==="Identifier"&&a.name==="from"&&a.end-a.start===4&&!((i=a.extra)!=null&&i.parenthesized)&&this.raise(f.ExportDefaultFromAsIdentifier,{at:a})}}else if(t.specifiers&&t.specifiers.length)for(let a of t.specifiers){let{exported:n}=a,o=n.type==="Identifier"?n.name:n.value;if(this.checkDuplicateExports(a,o),!s&&a.local){let{local:u}=a;u.type!=="Identifier"?this.raise(f.ExportBindingIsString,{at:a,localName:u.value,exportName:o}):(this.checkReservedWord(u.name,u.loc.start,!0,!1),this.scope.checkLocalExport(u))}}else if(t.declaration){if(t.declaration.type==="FunctionDeclaration"||t.declaration.type==="ClassDeclaration"){let a=t.declaration.id;if(!a)throw new Error("Assertion failure");this.checkDuplicateExports(t,a.name)}else if(t.declaration.type==="VariableDeclaration")for(let a of t.declaration.declarations)this.checkDeclaration(a.id)}}}checkDeclaration(t){if(t.type==="Identifier")this.checkDuplicateExports(t,t.name);else if(t.type==="ObjectPattern")for(let r of t.properties)this.checkDeclaration(r);else if(t.type==="ArrayPattern")for(let r of t.elements)r&&this.checkDeclaration(r);else t.type==="ObjectProperty"?this.checkDeclaration(t.value):t.type==="RestElement"?this.checkDeclaration(t.argument):t.type==="AssignmentPattern"&&this.checkDeclaration(t.left)}checkDuplicateExports(t,r){this.exportedIdentifiers.has(r)&&(r==="default"?this.raise(f.DuplicateDefaultExport,{at:t}):this.raise(f.DuplicateExport,{at:t,exportName:r})),this.exportedIdentifiers.add(r)}parseExportSpecifiers(t){let r=[],e=!0;for(this.expect(5);!this.eat(8);){if(e)e=!1;else if(this.expect(12),this.eat(8))break;let s=this.isContextual(128),i=this.match(131),a=this.startNode();a.local=this.parseModuleExportName(),r.push(this.parseExportSpecifier(a,i,t,s))}return r}parseExportSpecifier(t,r,e,s){return this.eatContextual(93)?t.exported=this.parseModuleExportName():r?t.exported=Kl(t.local):t.exported||(t.exported=me(t.local)),this.finishNode(t,"ExportSpecifier")}parseModuleExportName(){if(this.match(131)){let t=this.parseStringLiteral(this.state.value),r=t.value.match(Ah);return r&&this.raise(f.ModuleExportNameHasLoneSurrogate,{at:t,surrogateCharCode:r[0].charCodeAt(0)}),t}return this.parseIdentifier(!0)}isJSONModuleImport(t){return t.assertions!=null?t.assertions.some(r=>{let{key:e,value:s}=r;return s.value==="json"&&(e.type==="Identifier"?e.name==="type":e.value==="type")}):!1}checkImportReflection(t){if(t.module){var r;(t.specifiers.length!==1||t.specifiers[0].type!=="ImportDefaultSpecifier")&&this.raise(f.ImportReflectionNotBinding,{at:t.specifiers[0].loc.start}),((r=t.assertions)==null?void 0:r.length)>0&&this.raise(f.ImportReflectionHasAssertion,{at:t.specifiers[0].loc.start})}}checkJSONModuleImport(t){if(this.isJSONModuleImport(t)&&t.type!=="ExportAllDeclaration"){let{specifiers:r}=t;if(r!=null){let e=r.find(s=>{let i;if(s.type==="ExportSpecifier"?i=s.local:s.type==="ImportSpecifier"&&(i=s.imported),i!==void 0)return i.type==="Identifier"?i.name!=="default":i.value!=="default"});e!==void 0&&this.raise(f.ImportJSONBindingNotDefault,{at:e.loc.start})}}}parseMaybeImportReflection(t){let r=!1;if(this.isContextual(125)){let e=this.lookahead(),s=e.type;q(s)?(s!==97||this.input.charCodeAt(this.nextTokenStartSince(e.end))===102)&&(r=!0):s!==12&&(r=!0)}r?(this.expectPlugin("importReflection"),this.next(),t.module=!0):this.hasPlugin("importReflection")&&(t.module=!1)}parseImport(t){if(t.specifiers=[],!this.match(131)){this.parseMaybeImportReflection(t);let s=!this.maybeParseDefaultImportSpecifier(t)||this.eat(12),i=s&&this.maybeParseStarImportSpecifier(t);s&&!i&&this.parseNamedImportSpecifiers(t),this.expectContextual(97)}t.source=this.parseImportSource();let r=this.maybeParseImportAssertions();if(r)t.assertions=r;else{let e=this.maybeParseModuleAttributes();e&&(t.attributes=e)}return this.checkImportReflection(t),this.checkJSONModuleImport(t),this.semicolon(),this.finishNode(t,"ImportDeclaration")}parseImportSource(){return this.match(131)||this.unexpected(),this.parseExprAtom()}shouldParseDefaultImport(t){return q(this.state.type)}parseImportSpecifierLocal(t,r,e){r.local=this.parseIdentifier(),t.specifiers.push(this.finishImportSpecifier(r,e))}finishImportSpecifier(t,r){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Be;return this.checkLVal(t.local,{in:{type:r},binding:e}),this.finishNode(t,r)}parseAssertEntries(){let t=[],r=new Set;do{if(this.match(8))break;let e=this.startNode(),s=this.state.value;if(r.has(s)&&this.raise(f.ModuleAttributesWithDuplicateKeys,{at:this.state.startLoc,key:s}),r.add(s),this.match(131)?e.key=this.parseStringLiteral(s):e.key=this.parseIdentifier(!0),this.expect(14),!this.match(131))throw this.raise(f.ModuleAttributeInvalidValue,{at:this.state.startLoc});e.value=this.parseStringLiteral(this.state.value),t.push(this.finishNode(e,"ImportAttribute"))}while(this.eat(12));return t}maybeParseModuleAttributes(){if(this.match(76)&&!this.hasPrecedingLineBreak())this.expectPlugin("moduleAttributes"),this.next();else return this.hasPlugin("moduleAttributes")?[]:null;let t=[],r=new Set;do{let e=this.startNode();if(e.key=this.parseIdentifier(!0),e.key.name!=="type"&&this.raise(f.ModuleAttributeDifferentFromType,{at:e.key}),r.has(e.key.name)&&this.raise(f.ModuleAttributesWithDuplicateKeys,{at:e.key,key:e.key.name}),r.add(e.key.name),this.expect(14),!this.match(131))throw this.raise(f.ModuleAttributeInvalidValue,{at:this.state.startLoc});e.value=this.parseStringLiteral(this.state.value),this.finishNode(e,"ImportAttribute"),t.push(e)}while(this.eat(12));return t}maybeParseImportAssertions(){if(this.isContextual(94)&&!this.hasPrecedingLineBreak())this.expectPlugin("importAssertions"),this.next();else return this.hasPlugin("importAssertions")?[]:null;this.eat(5);let t=this.parseAssertEntries();return this.eat(8),t}maybeParseDefaultImportSpecifier(t){return this.shouldParseDefaultImport(t)?(this.parseImportSpecifierLocal(t,this.startNode(),"ImportDefaultSpecifier"),!0):!1}maybeParseStarImportSpecifier(t){if(this.match(55)){let r=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(t,r,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(t){let r=!0;for(this.expect(5);!this.eat(8);){if(r)r=!1;else{if(this.eat(14))throw this.raise(f.DestructureNamedImport,{at:this.state.startLoc});if(this.expect(12),this.eat(8))break}let e=this.startNode(),s=this.match(131),i=this.isContextual(128);e.imported=this.parseModuleExportName();let a=this.parseImportSpecifier(e,s,t.importKind==="type"||t.importKind==="typeof",i,void 0);t.specifiers.push(a)}}parseImportSpecifier(t,r,e,s,i){if(this.eatContextual(93))t.local=this.parseIdentifier();else{let{imported:a}=t;if(r)throw this.raise(f.ImportBindingIsString,{at:t,importName:a.value});this.checkReservedWord(a.name,t.loc.start,!0,!0),t.local||(t.local=me(a))}return this.finishImportSpecifier(t,"ImportSpecifier",i)}isThisParam(t){return t.type==="Identifier"&&t.name==="this"}},Yr=class extends vh{constructor(t,r){t=p(t),super(t,r),this.options=t,this.initializeScopes(),this.plugins=Eh(this.options.plugins),this.filename=t.sourceFilename}getScopeHandler(){return is}parse(){this.enterInitialScopes();let t=this.startNode(),r=this.startNode();return this.nextToken(),t.errors=null,this.parseTopLevel(t,r),t.errors=this.state.errors,t}};function Eh(t){let r=new Map;for(let e of t){let[s,i]=Array.isArray(e)?e:[e,{}];r.has(s)||r.set(s,i||{})}return r}function Ch(t,r){var e;if(((e=r)==null?void 0:e.sourceType)==="unambiguous"){r=Object.assign({},r);try{r.sourceType="module";let s=Xe(r,t),i=s.parse();if(s.sawUnambiguousESM)return i;if(s.ambiguousScriptDifferentAst)try{return r.sourceType="script",Xe(r,t).parse()}catch{}else i.program.sourceType="script";return i}catch(s){try{return r.sourceType="script",Xe(r,t).parse()}catch{}throw s}}else return Xe(r,t).parse()}function bh(t,r){let e=Xe(r,t);return e.options.strictMode&&(e.state.strict=!0),e.getExpression()}function Sh(t){let r={};for(let e of Object.keys(t))r[e]=ce(t[e]);return r}var wh=Sh(Z);function Xe(t,r){let e=Yr;return t!=null&&t.plugins&&(yh(t.plugins),e=Ih(t.plugins)),new e(t,r)}var Qr={};function Ih(t){let r=xh.filter(i=>J(t,i)),e=r.join("/"),s=Qr[e];if(!s){s=Yr;for(let i of r)s=Xr[i](s);Qr[e]=s}return s}l.parse=Ch,l.parseExpression=bh,l.tokTypes=wh}}),Xf=$({"src/language-js/parse/json.js"(l,h){"use strict";U();var p=Io(),d=lr(),x=ko(),P=Do();function m(){let w=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},{allowComments:L=!0}=w;return function(_){let{parseExpression:G}=Fo(),N;try{N=G(_,{tokens:!0,ranges:!0})}catch(O){throw P(O)}if(!L&&p(N.comments))throw v(N.comments[0],"Comment");return S(N),N}}function v(w,L){let[A,_]=[w.loc.start,w.loc.end].map(G=>{let{line:N,column:O}=G;return{line:N,column:O+1}});return d(`${L} is not allowed in JSON.`,{start:A,end:_})}function S(w){switch(w.type){case"ArrayExpression":for(let L of w.elements)L!==null&&S(L);return;case"ObjectExpression":for(let L of w.properties)S(L);return;case"ObjectProperty":if(w.computed)throw v(w.key,"Computed key");if(w.shorthand)throw v(w.key,"Shorthand property");w.key.type!=="Identifier"&&S(w.key),S(w.value);return;case"UnaryExpression":{let{operator:L,argument:A}=w;if(L!=="+"&&L!=="-")throw v(w,`Operator '${w.operator}'`);if(A.type==="NumericLiteral"||A.type==="Identifier"&&(A.name==="Infinity"||A.name==="NaN"))return;throw v(A,`Operator '${L}' before '${A.type}'`)}case"Identifier":if(w.name!=="Infinity"&&w.name!=="NaN"&&w.name!=="undefined")throw v(w,`Identifier '${w.name}'`);return;case"TemplateLiteral":if(p(w.expressions))throw v(w.expressions[0],"'TemplateLiteral' with expression");for(let L of w.quasis)S(L);return;case"NullLiteral":case"BooleanLiteral":case"NumericLiteral":case"StringLiteral":case"TemplateElement":return;default:throw v(w,`'${w.type}'`)}}var k=m(),F={json:x({parse:k,hasPragma(){return!0}}),json5:x(k),"json-stringify":x({parse:m({allowComments:!1}),astFormat:"estree-json"})};h.exports=F}});U();var Yf=kf(),Qf=po(),Zf=Of(),Ue=ko(),ed=Do(),td=Jf(),sd=Xf(),rd={sourceType:"module",allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,allowSuperOutsideMethod:!0,allowUndeclaredExports:!0,errorRecovery:!0,createParenthesizedExpressions:!0,plugins:["doExpressions","exportDefaultFrom","functionBind","functionSent","throwExpressions","partialApplication",["decorators",{decoratorsBeforeExport:!1}],"importAssertions","decimal","moduleBlocks","asyncDoExpressions","regexpUnicodeSets","destructuringPrivate","decoratorAutoAccessors"],tokens:!0,ranges:!0},id=["recordAndTuple",{syntaxType:"hash"}],no="v8intrinsic",oo=[["pipelineOperator",{proposal:"hack",topicToken:"%"}],["pipelineOperator",{proposal:"minimal"}],["pipelineOperator",{proposal:"fsharp"}]],he=function(l){let h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:rd;return Object.assign(Object.assign({},h),{},{plugins:[...h.plugins,...l]})},ad=/@(?:no)?flow\b/;function nd(l,h){if(h.filepath&&h.filepath.endsWith(".js.flow"))return!0;let p=Qf(l);p&&(l=l.slice(p.length));let d=Zf(l,0);return d!==!1&&(l=l.slice(0,d)),ad.test(l)}function od(l,h,p){let d=Fo()[l],x=d(h,p),P=x.errors.find(m=>!fd.has(m.reasonCode));if(P)throw P;return x}function $e(l){for(var h=arguments.length,p=new Array(h>1?h-1:0),d=1;d2&&arguments[2]!==void 0?arguments[2]:{};if((m.parser==="babel"||m.parser==="__babel_estree")&&nd(x,m))return m.parser="babel-flow",Lo(x,P,m);let v=p;m.__babelSourceType==="script"&&(v=v.map(w=>Object.assign(Object.assign({},w),{},{sourceType:"script"}))),/#[[{]/.test(x)&&(v=v.map(w=>he([id],w)));let S=/%[A-Z]/.test(x);x.includes("|>")?v=(S?[...oo,no]:oo).flatMap(L=>v.map(A=>he([L],A))):S&&(v=v.map(w=>he([no],w)));let{result:k,error:F}=Yf(...v.map(w=>()=>od(l,x,w)));if(!k)throw ed(F);return m.originalText=x,td(k,m)}}var ld=$e("parse",he(["jsx","flow"])),Lo=$e("parse",he(["jsx",["flow",{all:!0,enums:!0}]])),hd=$e("parse",he(["jsx","typescript"]),he(["typescript"])),ud=$e("parse",he(["jsx","flow","estree"])),cd=$e("parseExpression",he(["jsx"])),pd=$e("parseExpression",he(["typescript"])),fd=new Set(["StrictNumericEscape","StrictWith","StrictOctalLiteral","StrictDelete","StrictEvalArguments","StrictEvalArgumentsBinding","StrictFunction","EmptyTypeArguments","EmptyTypeParameters","ConstructorHasTypeParameters","UnsupportedParameterPropertyKind","UnexpectedParameterModifier","MixedLabeledAndUnlabeledElements","InvalidTupleMemberLabel","NonClassMethodPropertyHasAbstractModifer","ReadonlyForMethodSignature","ClassMethodHasDeclare","ClassMethodHasReadonly","InvalidModifierOnTypeMember","DuplicateAccessibilityModifier","IndexSignatureHasDeclare","DecoratorExportClass","ParamDupe","InvalidDecimal","RestTrailingComma","UnsupportedParameterDecorator","UnterminatedJsxContent","UnexpectedReservedWord","ModuleAttributesWithDuplicateKeys","LineTerminatorBeforeArrow","InvalidEscapeSequenceTemplate","NonAbstractClassHasAbstractMethod","UnsupportedPropertyDecorator","OptionalTypeBeforeRequired","PatternIsOptional","OptionalBindingPattern","DeclareClassFieldHasInitializer","TypeImportCannotSpecifyDefaultAndNamed","DeclareFunctionHasImplementation","ConstructorClassField","VarRedeclaration","InvalidPrivateFieldResolution","DuplicateExport"]),lo=Ue(ld),ho=Ue(hd),uo=Ue(cd),dd=Ue(pd);Oo.exports={parsers:Object.assign(Object.assign({babel:lo,"babel-flow":Ue(Lo),"babel-ts":ho},sd),{},{__js_expression:uo,__vue_expression:uo,__vue_ts_expression:dd,__vue_event_binding:lo,__vue_ts_event_binding:ho,__babel_estree:Ue(ud)})}});return md();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-espree.js b/node_modules/prettier/parser-espree.js new file mode 100644 index 0000000..c8f486c --- /dev/null +++ b/node_modules/prettier/parser-espree.js @@ -0,0 +1,26 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.espree=e()}})(function(){"use strict";var C=(a,u)=>()=>(u||a((u={exports:{}}).exports,u),u.exports);var oe=C((tl,zr)=>{var Ye=function(a){return a&&a.Math==Math&&a};zr.exports=Ye(typeof globalThis=="object"&&globalThis)||Ye(typeof window=="object"&&window)||Ye(typeof self=="object"&&self)||Ye(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var me=C((rl,Gr)=>{Gr.exports=function(a){try{return!!a()}catch{return!0}}});var xe=C((il,Hr)=>{var vn=me();Hr.exports=!vn(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var bt=C((sl,Kr)=>{var gn=me();Kr.exports=!gn(function(){var a=function(){}.bind();return typeof a!="function"||a.hasOwnProperty("prototype")})});var et=C((al,Xr)=>{var xn=bt(),Ze=Function.prototype.call;Xr.exports=xn?Ze.bind(Ze):function(){return Ze.apply(Ze,arguments)}});var Yr=C($r=>{"use strict";var Jr={}.propertyIsEnumerable,Qr=Object.getOwnPropertyDescriptor,yn=Qr&&!Jr.call({1:2},1);$r.f=yn?function(u){var o=Qr(this,u);return!!o&&o.enumerable}:Jr});var _t=C((ul,Zr)=>{Zr.exports=function(a,u){return{enumerable:!(a&1),configurable:!(a&2),writable:!(a&4),value:u}}});var ye=C((ol,ri)=>{var ei=bt(),ti=Function.prototype,St=ti.call,An=ei&&ti.bind.bind(St,St);ri.exports=ei?An:function(a){return function(){return St.apply(a,arguments)}}});var ai=C((hl,si)=>{var ii=ye(),Cn=ii({}.toString),En=ii("".slice);si.exports=function(a){return En(Cn(a),8,-1)}});var ui=C((ll,ni)=>{var bn=ye(),_n=me(),Sn=ai(),wt=Object,wn=bn("".split);ni.exports=_n(function(){return!wt("z").propertyIsEnumerable(0)})?function(a){return Sn(a)=="String"?wn(a,""):wt(a)}:wt});var kt=C((cl,oi)=>{oi.exports=function(a){return a==null}});var Ft=C((pl,hi)=>{var kn=kt(),Fn=TypeError;hi.exports=function(a){if(kn(a))throw Fn("Can't call method on "+a);return a}});var tt=C((fl,li)=>{var Bn=ui(),In=Ft();li.exports=function(a){return Bn(In(a))}});var It=C((dl,ci)=>{var Bt=typeof document=="object"&&document.all,Tn=typeof Bt>"u"&&Bt!==void 0;ci.exports={all:Bt,IS_HTMLDDA:Tn}});var le=C((ml,fi)=>{var pi=It(),Pn=pi.all;fi.exports=pi.IS_HTMLDDA?function(a){return typeof a=="function"||a===Pn}:function(a){return typeof a=="function"}});var Pe=C((vl,vi)=>{var di=le(),mi=It(),Dn=mi.all;vi.exports=mi.IS_HTMLDDA?function(a){return typeof a=="object"?a!==null:di(a)||a===Dn}:function(a){return typeof a=="object"?a!==null:di(a)}});var rt=C((gl,gi)=>{var Tt=oe(),Nn=le(),On=function(a){return Nn(a)?a:void 0};gi.exports=function(a,u){return arguments.length<2?On(Tt[a]):Tt[a]&&Tt[a][u]}});var yi=C((xl,xi)=>{var Ln=ye();xi.exports=Ln({}.isPrototypeOf)});var Ci=C((yl,Ai)=>{var Vn=rt();Ai.exports=Vn("navigator","userAgent")||""});var Fi=C((Al,ki)=>{var wi=oe(),Pt=Ci(),Ei=wi.process,bi=wi.Deno,_i=Ei&&Ei.versions||bi&&bi.version,Si=_i&&_i.v8,ce,it;Si&&(ce=Si.split("."),it=ce[0]>0&&ce[0]<4?1:+(ce[0]+ce[1]));!it&&Pt&&(ce=Pt.match(/Edge\/(\d+)/),(!ce||ce[1]>=74)&&(ce=Pt.match(/Chrome\/(\d+)/),ce&&(it=+ce[1])));ki.exports=it});var Dt=C((Cl,Ii)=>{var Bi=Fi(),Rn=me();Ii.exports=!!Object.getOwnPropertySymbols&&!Rn(function(){var a=Symbol();return!String(a)||!(Object(a)instanceof Symbol)||!Symbol.sham&&Bi&&Bi<41})});var Nt=C((El,Ti)=>{var jn=Dt();Ti.exports=jn&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Ot=C((bl,Pi)=>{var qn=rt(),Mn=le(),Un=yi(),Wn=Nt(),zn=Object;Pi.exports=Wn?function(a){return typeof a=="symbol"}:function(a){var u=qn("Symbol");return Mn(u)&&Un(u.prototype,zn(a))}});var Ni=C((_l,Di)=>{var Gn=String;Di.exports=function(a){try{return Gn(a)}catch{return"Object"}}});var Li=C((Sl,Oi)=>{var Hn=le(),Kn=Ni(),Xn=TypeError;Oi.exports=function(a){if(Hn(a))return a;throw Xn(Kn(a)+" is not a function")}});var Ri=C((wl,Vi)=>{var Jn=Li(),Qn=kt();Vi.exports=function(a,u){var o=a[u];return Qn(o)?void 0:Jn(o)}});var qi=C((kl,ji)=>{var Lt=et(),Vt=le(),Rt=Pe(),$n=TypeError;ji.exports=function(a,u){var o,l;if(u==="string"&&Vt(o=a.toString)&&!Rt(l=Lt(o,a))||Vt(o=a.valueOf)&&!Rt(l=Lt(o,a))||u!=="string"&&Vt(o=a.toString)&&!Rt(l=Lt(o,a)))return l;throw $n("Can't convert object to primitive value")}});var Ui=C((Fl,Mi)=>{Mi.exports=!1});var st=C((Bl,zi)=>{var Wi=oe(),Yn=Object.defineProperty;zi.exports=function(a,u){try{Yn(Wi,a,{value:u,configurable:!0,writable:!0})}catch{Wi[a]=u}return u}});var at=C((Il,Hi)=>{var Zn=oe(),eu=st(),Gi="__core-js_shared__",tu=Zn[Gi]||eu(Gi,{});Hi.exports=tu});var jt=C((Tl,Xi)=>{var ru=Ui(),Ki=at();(Xi.exports=function(a,u){return Ki[a]||(Ki[a]=u!==void 0?u:{})})("versions",[]).push({version:"3.26.1",mode:ru?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var Qi=C((Pl,Ji)=>{var iu=Ft(),su=Object;Ji.exports=function(a){return su(iu(a))}});var be=C((Dl,$i)=>{var au=ye(),nu=Qi(),uu=au({}.hasOwnProperty);$i.exports=Object.hasOwn||function(u,o){return uu(nu(u),o)}});var qt=C((Nl,Yi)=>{var ou=ye(),hu=0,lu=Math.random(),cu=ou(1 .toString);Yi.exports=function(a){return"Symbol("+(a===void 0?"":a)+")_"+cu(++hu+lu,36)}});var ss=C((Ol,is)=>{var pu=oe(),fu=jt(),Zi=be(),du=qt(),es=Dt(),rs=Nt(),De=fu("wks"),we=pu.Symbol,ts=we&&we.for,mu=rs?we:we&&we.withoutSetter||du;is.exports=function(a){if(!Zi(De,a)||!(es||typeof De[a]=="string")){var u="Symbol."+a;es&&Zi(we,a)?De[a]=we[a]:rs&&ts?De[a]=ts(u):De[a]=mu(u)}return De[a]}});var os=C((Ll,us)=>{var vu=et(),as=Pe(),ns=Ot(),gu=Ri(),xu=qi(),yu=ss(),Au=TypeError,Cu=yu("toPrimitive");us.exports=function(a,u){if(!as(a)||ns(a))return a;var o=gu(a,Cu),l;if(o){if(u===void 0&&(u="default"),l=vu(o,a,u),!as(l)||ns(l))return l;throw Au("Can't convert object to primitive value")}return u===void 0&&(u="number"),xu(a,u)}});var Mt=C((Vl,hs)=>{var Eu=os(),bu=Ot();hs.exports=function(a){var u=Eu(a,"string");return bu(u)?u:u+""}});var ps=C((Rl,cs)=>{var _u=oe(),ls=Pe(),Ut=_u.document,Su=ls(Ut)&&ls(Ut.createElement);cs.exports=function(a){return Su?Ut.createElement(a):{}}});var Wt=C((jl,fs)=>{var wu=xe(),ku=me(),Fu=ps();fs.exports=!wu&&!ku(function(){return Object.defineProperty(Fu("div"),"a",{get:function(){return 7}}).a!=7})});var zt=C(ms=>{var Bu=xe(),Iu=et(),Tu=Yr(),Pu=_t(),Du=tt(),Nu=Mt(),Ou=be(),Lu=Wt(),ds=Object.getOwnPropertyDescriptor;ms.f=Bu?ds:function(u,o){if(u=Du(u),o=Nu(o),Lu)try{return ds(u,o)}catch{}if(Ou(u,o))return Pu(!Iu(Tu.f,u,o),u[o])}});var gs=C((Ml,vs)=>{var Vu=xe(),Ru=me();vs.exports=Vu&&Ru(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var nt=C((Ul,xs)=>{var ju=Pe(),qu=String,Mu=TypeError;xs.exports=function(a){if(ju(a))return a;throw Mu(qu(a)+" is not an object")}});var Me=C(As=>{var Uu=xe(),Wu=Wt(),zu=gs(),ut=nt(),ys=Mt(),Gu=TypeError,Gt=Object.defineProperty,Hu=Object.getOwnPropertyDescriptor,Ht="enumerable",Kt="configurable",Xt="writable";As.f=Uu?zu?function(u,o,l){if(ut(u),o=ys(o),ut(l),typeof u=="function"&&o==="prototype"&&"value"in l&&Xt in l&&!l[Xt]){var v=Hu(u,o);v&&v[Xt]&&(u[o]=l.value,l={configurable:Kt in l?l[Kt]:v[Kt],enumerable:Ht in l?l[Ht]:v[Ht],writable:!1})}return Gt(u,o,l)}:Gt:function(u,o,l){if(ut(u),o=ys(o),ut(l),Wu)try{return Gt(u,o,l)}catch{}if("get"in l||"set"in l)throw Gu("Accessors not supported");return"value"in l&&(u[o]=l.value),u}});var Jt=C((zl,Cs)=>{var Ku=xe(),Xu=Me(),Ju=_t();Cs.exports=Ku?function(a,u,o){return Xu.f(a,u,Ju(1,o))}:function(a,u,o){return a[u]=o,a}});var _s=C((Gl,bs)=>{var Qt=xe(),Qu=be(),Es=Function.prototype,$u=Qt&&Object.getOwnPropertyDescriptor,$t=Qu(Es,"name"),Yu=$t&&function(){}.name==="something",Zu=$t&&(!Qt||Qt&&$u(Es,"name").configurable);bs.exports={EXISTS:$t,PROPER:Yu,CONFIGURABLE:Zu}});var ws=C((Hl,Ss)=>{var eo=ye(),to=le(),Yt=at(),ro=eo(Function.toString);to(Yt.inspectSource)||(Yt.inspectSource=function(a){return ro(a)});Ss.exports=Yt.inspectSource});var Bs=C((Kl,Fs)=>{var io=oe(),so=le(),ks=io.WeakMap;Fs.exports=so(ks)&&/native code/.test(String(ks))});var Ps=C((Xl,Ts)=>{var ao=jt(),no=qt(),Is=ao("keys");Ts.exports=function(a){return Is[a]||(Is[a]=no(a))}});var Zt=C((Jl,Ds)=>{Ds.exports={}});var Vs=C((Ql,Ls)=>{var uo=Bs(),Os=oe(),oo=Pe(),ho=Jt(),er=be(),tr=at(),lo=Ps(),co=Zt(),Ns="Object already initialized",rr=Os.TypeError,po=Os.WeakMap,ot,Ue,ht,fo=function(a){return ht(a)?Ue(a):ot(a,{})},mo=function(a){return function(u){var o;if(!oo(u)||(o=Ue(u)).type!==a)throw rr("Incompatible receiver, "+a+" required");return o}};uo||tr.state?(pe=tr.state||(tr.state=new po),pe.get=pe.get,pe.has=pe.has,pe.set=pe.set,ot=function(a,u){if(pe.has(a))throw rr(Ns);return u.facade=a,pe.set(a,u),u},Ue=function(a){return pe.get(a)||{}},ht=function(a){return pe.has(a)}):(ke=lo("state"),co[ke]=!0,ot=function(a,u){if(er(a,ke))throw rr(Ns);return u.facade=a,ho(a,ke,u),u},Ue=function(a){return er(a,ke)?a[ke]:{}},ht=function(a){return er(a,ke)});var pe,ke;Ls.exports={set:ot,get:Ue,has:ht,enforce:fo,getterFor:mo}});var sr=C(($l,js)=>{var vo=me(),go=le(),lt=be(),ir=xe(),xo=_s().CONFIGURABLE,yo=ws(),Rs=Vs(),Ao=Rs.enforce,Co=Rs.get,ct=Object.defineProperty,Eo=ir&&!vo(function(){return ct(function(){},"length",{value:8}).length!==8}),bo=String(String).split("String"),_o=js.exports=function(a,u,o){String(u).slice(0,7)==="Symbol("&&(u="["+String(u).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),o&&o.getter&&(u="get "+u),o&&o.setter&&(u="set "+u),(!lt(a,"name")||xo&&a.name!==u)&&(ir?ct(a,"name",{value:u,configurable:!0}):a.name=u),Eo&&o&<(o,"arity")&&a.length!==o.arity&&ct(a,"length",{value:o.arity});try{o&<(o,"constructor")&&o.constructor?ir&&ct(a,"prototype",{writable:!1}):a.prototype&&(a.prototype=void 0)}catch{}var l=Ao(a);return lt(l,"source")||(l.source=bo.join(typeof u=="string"?u:"")),a};Function.prototype.toString=_o(function(){return go(this)&&Co(this).source||yo(this)},"toString")});var Ms=C((Yl,qs)=>{var So=le(),wo=Me(),ko=sr(),Fo=st();qs.exports=function(a,u,o,l){l||(l={});var v=l.enumerable,b=l.name!==void 0?l.name:u;if(So(o)&&ko(o,b,l),l.global)v?a[u]=o:Fo(u,o);else{try{l.unsafe?a[u]&&(v=!0):delete a[u]}catch{}v?a[u]=o:wo.f(a,u,{value:o,enumerable:!1,configurable:!l.nonConfigurable,writable:!l.nonWritable})}return a}});var Ws=C((Zl,Us)=>{var Bo=Math.ceil,Io=Math.floor;Us.exports=Math.trunc||function(u){var o=+u;return(o>0?Io:Bo)(o)}});var ar=C((ec,zs)=>{var To=Ws();zs.exports=function(a){var u=+a;return u!==u||u===0?0:To(u)}});var Hs=C((tc,Gs)=>{var Po=ar(),Do=Math.max,No=Math.min;Gs.exports=function(a,u){var o=Po(a);return o<0?Do(o+u,0):No(o,u)}});var Xs=C((rc,Ks)=>{var Oo=ar(),Lo=Math.min;Ks.exports=function(a){return a>0?Lo(Oo(a),9007199254740991):0}});var Qs=C((ic,Js)=>{var Vo=Xs();Js.exports=function(a){return Vo(a.length)}});var Zs=C((sc,Ys)=>{var Ro=tt(),jo=Hs(),qo=Qs(),$s=function(a){return function(u,o,l){var v=Ro(u),b=qo(v),y=jo(l,b),I;if(a&&o!=o){for(;b>y;)if(I=v[y++],I!=I)return!0}else for(;b>y;y++)if((a||y in v)&&v[y]===o)return a||y||0;return!a&&-1}};Ys.exports={includes:$s(!0),indexOf:$s(!1)}});var ra=C((ac,ta)=>{var Mo=ye(),nr=be(),Uo=tt(),Wo=Zs().indexOf,zo=Zt(),ea=Mo([].push);ta.exports=function(a,u){var o=Uo(a),l=0,v=[],b;for(b in o)!nr(zo,b)&&nr(o,b)&&ea(v,b);for(;u.length>l;)nr(o,b=u[l++])&&(~Wo(v,b)||ea(v,b));return v}});var sa=C((nc,ia)=>{ia.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var na=C(aa=>{var Go=ra(),Ho=sa(),Ko=Ho.concat("length","prototype");aa.f=Object.getOwnPropertyNames||function(u){return Go(u,Ko)}});var oa=C(ua=>{ua.f=Object.getOwnPropertySymbols});var la=C((hc,ha)=>{var Xo=rt(),Jo=ye(),Qo=na(),$o=oa(),Yo=nt(),Zo=Jo([].concat);ha.exports=Xo("Reflect","ownKeys")||function(u){var o=Qo.f(Yo(u)),l=$o.f;return l?Zo(o,l(u)):o}});var fa=C((lc,pa)=>{var ca=be(),eh=la(),th=zt(),rh=Me();pa.exports=function(a,u,o){for(var l=eh(u),v=rh.f,b=th.f,y=0;y{var ih=me(),sh=le(),ah=/#|\.prototype\./,We=function(a,u){var o=uh[nh(a)];return o==hh?!0:o==oh?!1:sh(u)?ih(u):!!u},nh=We.normalize=function(a){return String(a).replace(ah,".").toLowerCase()},uh=We.data={},oh=We.NATIVE="N",hh=We.POLYFILL="P";da.exports=We});var ga=C((pc,va)=>{var ur=oe(),lh=zt().f,ch=Jt(),ph=Ms(),fh=st(),dh=fa(),mh=ma();va.exports=function(a,u){var o=a.target,l=a.global,v=a.stat,b,y,I,T,x,R;if(l?y=ur:v?y=ur[o]||fh(o,{}):y=(ur[o]||{}).prototype,y)for(I in u){if(x=u[I],a.dontCallGetSet?(R=lh(y,I),T=R&&R.value):T=y[I],b=mh(l?I:o+(v?".":"#")+I,a.forced),!b&&T!==void 0){if(typeof x==typeof T)continue;dh(x,T)}(a.sham||T&&T.sham)&&ch(x,"sham",!0),ph(y,I,x,a)}}});var xa=C(()=>{var vh=ga(),or=oe();vh({global:!0,forced:or.globalThis!==or},{globalThis:or})});var ya=C(()=>{xa()});var Ea=C((gc,Ca)=>{var Aa=sr(),gh=Me();Ca.exports=function(a,u,o){return o.get&&Aa(o.get,u,{getter:!0}),o.set&&Aa(o.set,u,{setter:!0}),gh.f(a,u,o)}});var _a=C((xc,ba)=>{"use strict";var xh=nt();ba.exports=function(){var a=xh(this),u="";return a.hasIndices&&(u+="d"),a.global&&(u+="g"),a.ignoreCase&&(u+="i"),a.multiline&&(u+="m"),a.dotAll&&(u+="s"),a.unicode&&(u+="u"),a.unicodeSets&&(u+="v"),a.sticky&&(u+="y"),u}});var ka=C(()=>{var yh=oe(),Ah=xe(),Ch=Ea(),Eh=_a(),bh=me(),Sa=yh.RegExp,wa=Sa.prototype,_h=Ah&&bh(function(){var a=!0;try{Sa(".","d")}catch{a=!1}var u={},o="",l=a?"dgimsy":"gimsy",v=function(T,x){Object.defineProperty(u,T,{get:function(){return o+=x,!0}})},b={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};a&&(b.hasIndices="d");for(var y in b)v(y,b[y]);var I=Object.getOwnPropertyDescriptor(wa,"flags").get.call(u);return I!==l||o!==l});_h&&Ch(wa,"flags",{configurable:!0,get:Eh})});var Zh=C((Ec,Ka)=>{ya();ka();var pr=Object.defineProperty,Sh=Object.getOwnPropertyDescriptor,fr=Object.getOwnPropertyNames,wh=Object.prototype.hasOwnProperty,Fa=(a,u)=>function(){return a&&(u=(0,a[fr(a)[0]])(a=0)),u},$=(a,u)=>function(){return u||(0,a[fr(a)[0]])((u={exports:{}}).exports,u),u.exports},kh=(a,u)=>{for(var o in u)pr(a,o,{get:u[o],enumerable:!0})},Fh=(a,u,o,l)=>{if(u&&typeof u=="object"||typeof u=="function")for(let v of fr(u))!wh.call(a,v)&&v!==o&&pr(a,v,{get:()=>u[v],enumerable:!(l=Sh(u,v))||l.enumerable});return a},Bh=a=>Fh(pr({},"__esModule",{value:!0}),a),J=Fa({""(){}}),dr=$({"src/common/parser-create-error.js"(a,u){"use strict";J();function o(l,v){let b=new SyntaxError(l+" ("+v.start.line+":"+v.start.column+")");return b.loc=v,b}u.exports=o}}),Ba=$({"src/utils/try-combinations.js"(a,u){"use strict";J();function o(){let l;for(var v=arguments.length,b=new Array(v),y=0;ycr,arch:()=>Ih,cpus:()=>Va,default:()=>Ua,endianness:()=>Ta,freemem:()=>Oa,getNetworkInterfaces:()=>Ma,hostname:()=>Pa,loadavg:()=>Da,networkInterfaces:()=>qa,platform:()=>Th,release:()=>ja,tmpDir:()=>hr,tmpdir:()=>lr,totalmem:()=>La,type:()=>Ra,uptime:()=>Na});function Ta(){if(typeof pt>"u"){var a=new ArrayBuffer(2),u=new Uint8Array(a),o=new Uint16Array(a);if(u[0]=1,u[1]=2,o[0]===258)pt="BE";else if(o[0]===513)pt="LE";else throw new Error("unable to figure out endianess")}return pt}function Pa(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function Da(){return[]}function Na(){return 0}function Oa(){return Number.MAX_VALUE}function La(){return Number.MAX_VALUE}function Va(){return[]}function Ra(){return"Browser"}function ja(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function qa(){}function Ma(){}function Ih(){return"javascript"}function Th(){return"browser"}function hr(){return"/tmp"}var pt,lr,cr,Ua,Ph=Fa({"node-modules-polyfills:os"(){J(),lr=hr,cr=` +`,Ua={EOL:cr,tmpdir:lr,tmpDir:hr,networkInterfaces:qa,getNetworkInterfaces:Ma,release:ja,type:Ra,cpus:Va,totalmem:La,freemem:Oa,uptime:Na,loadavg:Da,hostname:Pa,endianness:Ta}}}),Dh=$({"node-modules-polyfills-commonjs:os"(a,u){J();var o=(Ph(),Bh(Ia));if(o&&o.default){u.exports=o.default;for(let l in o)u.exports[l]=o[l]}else o&&(u.exports=o)}}),Nh=$({"node_modules/detect-newline/index.js"(a,u){"use strict";J();var o=l=>{if(typeof l!="string")throw new TypeError("Expected a string");let v=l.match(/(?:\r?\n)/g)||[];if(v.length===0)return;let b=v.filter(I=>I===`\r +`).length,y=v.length-b;return b>y?`\r +`:` +`};u.exports=o,u.exports.graceful=l=>typeof l=="string"&&o(l)||` +`}}),Oh=$({"node_modules/jest-docblock/build/index.js"(a){"use strict";J(),Object.defineProperty(a,"__esModule",{value:!0}),a.extract=g,a.parse=G,a.parseWithComments=f,a.print=B,a.strip=w;function u(){let k=Dh();return u=function(){return k},k}function o(){let k=l(Nh());return o=function(){return k},k}function l(k){return k&&k.__esModule?k:{default:k}}var v=/\*\/$/,b=/^\/\*\*?/,y=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,I=/(^|\s+)\/\/([^\r\n]*)/g,T=/^(\r?\n)+/,x=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,R=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,U=/(\r?\n|^) *\* ?/g,D=[];function g(k){let X=k.match(y);return X?X[0].trimLeft():""}function w(k){let X=k.match(y);return X&&X[0]?k.substring(X[0].length):k}function G(k){return f(k).pragmas}function f(k){let X=(0,o().default)(k)||u().EOL;k=k.replace(b,"").replace(v,"").replace(U,"$1");let O="";for(;O!==k;)O=k,k=k.replace(x,`${X}$1 $2${X}`);k=k.replace(T,"").trimRight();let i=Object.create(null),S=k.replace(R,"").replace(T,"").trimRight(),F;for(;F=R.exec(k);){let j=F[2].replace(I,"");typeof i[F[1]]=="string"||Array.isArray(i[F[1]])?i[F[1]]=D.concat(i[F[1]],j):i[F[1]]=j}return{comments:S,pragmas:i}}function B(k){let{comments:X="",pragmas:O={}}=k,i=(0,o().default)(X)||u().EOL,S="/**",F=" *",j=" */",Z=Object.keys(O),ne=Z.map(ie=>V(ie,O[ie])).reduce((ie,Ne)=>ie.concat(Ne),[]).map(ie=>`${F} ${ie}${i}`).join("");if(!X){if(Z.length===0)return"";if(Z.length===1&&!Array.isArray(O[Z[0]])){let ie=O[Z[0]];return`${S} ${V(Z[0],ie)[0]}${j}`}}let ee=X.split(i).map(ie=>`${F} ${ie}`).join(i)+i;return S+i+(X?ee:"")+(X&&Z.length?F+i:"")+ne+j}function V(k,X){return D.concat(X).map(O=>`@${k} ${O}`.trim())}}}),Lh=$({"src/common/end-of-line.js"(a,u){"use strict";J();function o(y){let I=y.indexOf("\r");return I>=0?y.charAt(I+1)===` +`?"crlf":"cr":"lf"}function l(y){switch(y){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function v(y,I){let T;switch(I){case` +`:T=/\n/g;break;case"\r":T=/\r/g;break;case`\r +`:T=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(I)}.`)}let x=y.match(T);return x?x.length:0}function b(y){return y.replace(/\r\n?/g,` +`)}u.exports={guessEndOfLine:o,convertEndOfLineToChars:l,countEndOfLineChars:v,normalizeEndOfLine:b}}}),Vh=$({"src/language-js/utils/get-shebang.js"(a,u){"use strict";J();function o(l){if(!l.startsWith("#!"))return"";let v=l.indexOf(` +`);return v===-1?l:l.slice(0,v)}u.exports=o}}),Rh=$({"src/language-js/pragma.js"(a,u){"use strict";J();var{parseWithComments:o,strip:l,extract:v,print:b}=Oh(),{normalizeEndOfLine:y}=Lh(),I=Vh();function T(U){let D=I(U);D&&(U=U.slice(D.length+1));let g=v(U),{pragmas:w,comments:G}=o(g);return{shebang:D,text:U,pragmas:w,comments:G}}function x(U){let D=Object.keys(T(U).pragmas);return D.includes("prettier")||D.includes("format")}function R(U){let{shebang:D,text:g,pragmas:w,comments:G}=T(U),f=l(g),B=b({pragmas:Object.assign({format:""},w),comments:G.trimStart()});return(D?`${D} +`:"")+y(B)+(f.startsWith(` +`)?` +`:` + +`)+f}u.exports={hasPragma:x,insertPragma:R}}}),jh=$({"src/utils/is-non-empty-array.js"(a,u){"use strict";J();function o(l){return Array.isArray(l)&&l.length>0}u.exports=o}}),Wa=$({"src/language-js/loc.js"(a,u){"use strict";J();var o=jh();function l(T){var x,R;let U=T.range?T.range[0]:T.start,D=(x=(R=T.declaration)===null||R===void 0?void 0:R.decorators)!==null&&x!==void 0?x:T.decorators;return o(D)?Math.min(l(D[0]),U):U}function v(T){return T.range?T.range[1]:T.end}function b(T,x){let R=l(T);return Number.isInteger(R)&&R===l(x)}function y(T,x){let R=v(T);return Number.isInteger(R)&&R===v(x)}function I(T,x){return b(T,x)&&y(T,x)}u.exports={locStart:l,locEnd:v,hasSameLocStart:b,hasSameLoc:I}}}),za=$({"src/language-js/parse/utils/create-parser.js"(a,u){"use strict";J();var{hasPragma:o}=Rh(),{locStart:l,locEnd:v}=Wa();function b(y){return y=typeof y=="function"?{parse:y}:y,Object.assign({astFormat:"estree",hasPragma:o,locStart:l,locEnd:v},y)}u.exports=b}}),qh=$({"src/language-js/utils/is-ts-keyword-type.js"(a,u){"use strict";J();function o(l){let{type:v}=l;return v.startsWith("TS")&&v.endsWith("Keyword")}u.exports=o}}),Mh=$({"src/language-js/utils/is-block-comment.js"(a,u){"use strict";J();var o=new Set(["Block","CommentBlock","MultiLine"]),l=v=>o.has(v==null?void 0:v.type);u.exports=l}}),Uh=$({"src/language-js/utils/is-type-cast-comment.js"(a,u){"use strict";J();var o=Mh();function l(v){return o(v)&&v.value[0]==="*"&&/@(?:type|satisfies)\b/.test(v.value)}u.exports=l}}),Wh=$({"src/utils/get-last.js"(a,u){"use strict";J();var o=l=>l[l.length-1];u.exports=o}}),zh=$({"src/language-js/parse/postprocess/visit-node.js"(a,u){"use strict";J();function o(l,v){if(Array.isArray(l)){for(let b=0;b{B.leadingComments&&B.leadingComments.some(b)&&f.add(o(B))}),g=I(g,B=>{if(B.type==="ParenthesizedExpression"){let{expression:V}=B;if(V.type==="TypeCastExpression")return V.range=B.range,V;let k=o(B);if(!f.has(k))return V.extra=Object.assign(Object.assign({},V.extra),{},{parenthesized:!0}),V}})}return g=I(g,f=>{switch(f.type){case"ChainExpression":return R(f.expression);case"LogicalExpression":{if(U(f))return D(f);break}case"VariableDeclaration":{let B=y(f.declarations);B&&B.init&&G(f,B);break}case"TSParenthesizedType":return v(f.typeAnnotation)||f.typeAnnotation.type==="TSThisType"||(f.typeAnnotation.range=[o(f),l(f)]),f.typeAnnotation;case"TSTypeParameter":if(typeof f.name=="string"){let B=o(f);f.name={type:"Identifier",name:f.name,range:[B,B+f.name.length]}}break;case"ObjectExpression":if(w.parser==="typescript"){let B=f.properties.find(V=>V.type==="Property"&&V.value.type==="TSEmptyBodyFunctionExpression");B&&T(B.value,"Unexpected token.")}break;case"SequenceExpression":{let B=y(f.expressions);f.range=[o(f),Math.min(l(B),l(f))];break}case"TopicReference":w.__isUsingHackPipeline=!0;break;case"ExportAllDeclaration":{let{exported:B}=f;if(w.parser==="meriyah"&&B&&B.type==="Identifier"){let V=w.originalText.slice(o(B),l(B));(V.startsWith('"')||V.startsWith("'"))&&(f.exported=Object.assign(Object.assign({},f.exported),{},{type:"Literal",value:f.exported.name,raw:V}))}break}case"PropertyDefinition":if(w.parser==="meriyah"&&f.static&&!f.computed&&!f.key){let B="static",V=o(f);Object.assign(f,{static:!1,key:{type:"Identifier",name:B,range:[V,V+B.length]}})}break}}),g;function G(f,B){w.originalText[l(B)]!==";"&&(f.range=[o(f),l(B)])}}function R(g){switch(g.type){case"CallExpression":g.type="OptionalCallExpression",g.callee=R(g.callee);break;case"MemberExpression":g.type="OptionalMemberExpression",g.object=R(g.object);break;case"TSNonNullExpression":g.expression=R(g.expression);break}return g}function U(g){return g.type==="LogicalExpression"&&g.right.type==="LogicalExpression"&&g.operator===g.right.operator}function D(g){return U(g)?D({type:"LogicalExpression",operator:g.operator,left:D({type:"LogicalExpression",operator:g.operator,left:g.left,right:g.right.left,range:[o(g.left),l(g.right.left)]}),right:g.right.right,range:[o(g),l(g)]}):g}u.exports=x}}),ft=$({"node_modules/acorn/dist/acorn.js"(a,u){J(),function(o,l){typeof a=="object"&&typeof u<"u"?l(a):typeof define=="function"&&define.amd?define(["exports"],l):(o=typeof globalThis<"u"?globalThis:o||self,l(o.acorn={}))}(a,function(o){"use strict";var l=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,154,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,161,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,19306,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,262,6,10,9,357,0,62,13,1495,6,110,6,6,9,4759,9,787719,239],v=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,190,0,80,921,103,110,18,195,2637,96,16,1070,4050,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,46,2,18,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,482,44,11,6,17,0,322,29,19,43,1269,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4152,8,221,3,5761,15,7472,3104,541,1507,4938],b="\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECD\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F",y="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",I={3:"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",5:"class enum extends super const export import",6:"enum",strict:"implements interface let package private protected public static yield",strictBind:"eval arguments"},T="break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this",x={5:T,"5module":T+" export import",6:T+" const class extends export import super"},R=/^in(stanceof)?$/,U=new RegExp("["+y+"]"),D=new RegExp("["+y+b+"]");function g(e,t){for(var r=65536,s=0;se)return!1;if(r+=t[s+1],r>=e)return!0}}function w(e,t){return e<65?e===36:e<91?!0:e<97?e===95:e<123?!0:e<=65535?e>=170&&U.test(String.fromCharCode(e)):t===!1?!1:g(e,v)}function G(e,t){return e<48?e===36:e<58?!0:e<65?!1:e<91?!0:e<97?e===95:e<123?!0:e<=65535?e>=170&&D.test(String.fromCharCode(e)):t===!1?!1:g(e,v)||g(e,l)}var f=function(t,r){r===void 0&&(r={}),this.label=t,this.keyword=r.keyword,this.beforeExpr=!!r.beforeExpr,this.startsExpr=!!r.startsExpr,this.isLoop=!!r.isLoop,this.isAssign=!!r.isAssign,this.prefix=!!r.prefix,this.postfix=!!r.postfix,this.binop=r.binop||null,this.updateContext=null};function B(e,t){return new f(e,{beforeExpr:!0,binop:t})}var V={beforeExpr:!0},k={startsExpr:!0},X={};function O(e,t){return t===void 0&&(t={}),t.keyword=e,X[e]=new f(e,t)}var i={num:new f("num",k),regexp:new f("regexp",k),string:new f("string",k),name:new f("name",k),privateId:new f("privateId",k),eof:new f("eof"),bracketL:new f("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new f("]"),braceL:new f("{",{beforeExpr:!0,startsExpr:!0}),braceR:new f("}"),parenL:new f("(",{beforeExpr:!0,startsExpr:!0}),parenR:new f(")"),comma:new f(",",V),semi:new f(";",V),colon:new f(":",V),dot:new f("."),question:new f("?",V),questionDot:new f("?."),arrow:new f("=>",V),template:new f("template"),invalidTemplate:new f("invalidTemplate"),ellipsis:new f("...",V),backQuote:new f("`",k),dollarBraceL:new f("${",{beforeExpr:!0,startsExpr:!0}),eq:new f("=",{beforeExpr:!0,isAssign:!0}),assign:new f("_=",{beforeExpr:!0,isAssign:!0}),incDec:new f("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new f("!/~",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:B("||",1),logicalAND:B("&&",2),bitwiseOR:B("|",3),bitwiseXOR:B("^",4),bitwiseAND:B("&",5),equality:B("==/!=/===/!==",6),relational:B("/<=/>=",7),bitShift:B("<>/>>>",8),plusMin:new f("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:B("%",10),star:B("*",10),slash:B("/",10),starstar:new f("**",{beforeExpr:!0}),coalesce:B("??",1),_break:O("break"),_case:O("case",V),_catch:O("catch"),_continue:O("continue"),_debugger:O("debugger"),_default:O("default",V),_do:O("do",{isLoop:!0,beforeExpr:!0}),_else:O("else",V),_finally:O("finally"),_for:O("for",{isLoop:!0}),_function:O("function",k),_if:O("if"),_return:O("return",V),_switch:O("switch"),_throw:O("throw",V),_try:O("try"),_var:O("var"),_const:O("const"),_while:O("while",{isLoop:!0}),_with:O("with"),_new:O("new",{beforeExpr:!0,startsExpr:!0}),_this:O("this",k),_super:O("super",k),_class:O("class",k),_extends:O("extends",V),_export:O("export"),_import:O("import",k),_null:O("null",k),_true:O("true",k),_false:O("false",k),_in:O("in",{beforeExpr:!0,binop:7}),_instanceof:O("instanceof",{beforeExpr:!0,binop:7}),_typeof:O("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_void:O("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_delete:O("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},S=/\r\n?|\n|\u2028|\u2029/,F=new RegExp(S.source,"g");function j(e){return e===10||e===13||e===8232||e===8233}function Z(e,t,r){r===void 0&&(r=e.length);for(var s=t;s>10)+55296,(e&1023)+56320))}var K=/(?:[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/,H=function(t,r){this.line=t,this.column=r};H.prototype.offset=function(t){return new H(this.line,this.column+t)};var te=function(t,r,s){this.start=r,this.end=s,t.sourceFile!==null&&(this.source=t.sourceFile)};function ae(e,t){for(var r=1,s=0;;){var n=Z(e,s,t);if(n<0)return new H(r,t-s);++r,s=n}}var fe={ecmaVersion:null,sourceType:"script",onInsertedSemicolon:null,onTrailingComma:null,allowReserved:null,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowAwaitOutsideFunction:null,allowSuperOutsideMethod:null,allowHashBang:!1,locations:!1,onToken:null,onComment:null,ranges:!1,program:null,sourceFile:null,directSourceFile:null,preserveParens:!1},Ae=!1;function dt(e){var t={};for(var r in fe)t[r]=e&&P(e,r)?e[r]:fe[r];if(t.ecmaVersion==="latest"?t.ecmaVersion=1e8:t.ecmaVersion==null?(!Ae&&typeof console=="object"&&console.warn&&(Ae=!0,console.warn(`Since Acorn 8.0.0, options.ecmaVersion is required. +Defaulting to 2020, but this will stop working in the future.`)),t.ecmaVersion=11):t.ecmaVersion>=2015&&(t.ecmaVersion-=2009),t.allowReserved==null&&(t.allowReserved=t.ecmaVersion<5),e.allowHashBang==null&&(t.allowHashBang=t.ecmaVersion>=14),_(t.onToken)){var s=t.onToken;t.onToken=function(n){return s.push(n)}}return _(t.onComment)&&(t.onComment=mt(t,t.onComment)),t}function mt(e,t){return function(r,s,n,h,c,m){var A={type:r?"Block":"Line",value:s,start:n,end:h};e.locations&&(A.loc=new te(this,c,m)),e.ranges&&(A.range=[n,h]),t.push(A)}}var _e=1,Ce=2,Oe=4,ze=8,mr=16,vr=32,vt=64,gr=128,Le=256,gt=_e|Ce|Le;function xt(e,t){return Ce|(e?Oe:0)|(t?ze:0)}var Ge=0,yt=1,ve=2,xr=3,yr=4,Ar=5,Y=function(t,r,s){this.options=t=dt(t),this.sourceFile=t.sourceFile,this.keywords=d(x[t.ecmaVersion>=6?6:t.sourceType==="module"?"5module":5]);var n="";t.allowReserved!==!0&&(n=I[t.ecmaVersion>=6?6:t.ecmaVersion===5?5:3],t.sourceType==="module"&&(n+=" await")),this.reservedWords=d(n);var h=(n?n+" ":"")+I.strict;this.reservedWordsStrict=d(h),this.reservedWordsStrictBind=d(h+" "+I.strictBind),this.input=String(r),this.containsEsc=!1,s?(this.pos=s,this.lineStart=this.input.lastIndexOf(` +`,s-1)+1,this.curLine=this.input.slice(0,this.lineStart).split(S).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=i.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.inModule=t.sourceType==="module",this.strict=this.inModule||this.strictDirective(this.pos),this.potentialArrowAt=-1,this.potentialArrowInForAwait=!1,this.yieldPos=this.awaitPos=this.awaitIdentPos=0,this.labels=[],this.undefinedExports=Object.create(null),this.pos===0&&t.allowHashBang&&this.input.slice(0,2)==="#!"&&this.skipLineComment(2),this.scopeStack=[],this.enterScope(_e),this.regexpState=null,this.privateNameStack=[]},de={inFunction:{configurable:!0},inGenerator:{configurable:!0},inAsync:{configurable:!0},canAwait:{configurable:!0},allowSuper:{configurable:!0},allowDirectSuper:{configurable:!0},treatFunctionsAsVar:{configurable:!0},allowNewDotTarget:{configurable:!0},inClassStaticBlock:{configurable:!0}};Y.prototype.parse=function(){var t=this.options.program||this.startNode();return this.nextToken(),this.parseTopLevel(t)},de.inFunction.get=function(){return(this.currentVarScope().flags&Ce)>0},de.inGenerator.get=function(){return(this.currentVarScope().flags&ze)>0&&!this.currentVarScope().inClassFieldInit},de.inAsync.get=function(){return(this.currentVarScope().flags&Oe)>0&&!this.currentVarScope().inClassFieldInit},de.canAwait.get=function(){for(var e=this.scopeStack.length-1;e>=0;e--){var t=this.scopeStack[e];if(t.inClassFieldInit||t.flags&Le)return!1;if(t.flags&Ce)return(t.flags&Oe)>0}return this.inModule&&this.options.ecmaVersion>=13||this.options.allowAwaitOutsideFunction},de.allowSuper.get=function(){var e=this.currentThisScope(),t=e.flags,r=e.inClassFieldInit;return(t&vt)>0||r||this.options.allowSuperOutsideMethod},de.allowDirectSuper.get=function(){return(this.currentThisScope().flags&gr)>0},de.treatFunctionsAsVar.get=function(){return this.treatFunctionsAsVarInScope(this.currentScope())},de.allowNewDotTarget.get=function(){var e=this.currentThisScope(),t=e.flags,r=e.inClassFieldInit;return(t&(Ce|Le))>0||r},de.inClassStaticBlock.get=function(){return(this.currentVarScope().flags&Le)>0},Y.extend=function(){for(var t=[],r=arguments.length;r--;)t[r]=arguments[r];for(var s=this,n=0;n=,?^&]/.test(n)||n==="!"&&this.input.charAt(s+1)==="=")}e+=t[0].length,ee.lastIndex=e,e+=ee.exec(this.input)[0].length,this.input[e]===";"&&e++}},se.eat=function(e){return this.type===e?(this.next(),!0):!1},se.isContextual=function(e){return this.type===i.name&&this.value===e&&!this.containsEsc},se.eatContextual=function(e){return this.isContextual(e)?(this.next(),!0):!1},se.expectContextual=function(e){this.eatContextual(e)||this.unexpected()},se.canInsertSemicolon=function(){return this.type===i.eof||this.type===i.braceR||S.test(this.input.slice(this.lastTokEnd,this.start))},se.insertSemicolon=function(){if(this.canInsertSemicolon())return this.options.onInsertedSemicolon&&this.options.onInsertedSemicolon(this.lastTokEnd,this.lastTokEndLoc),!0},se.semicolon=function(){!this.eat(i.semi)&&!this.insertSemicolon()&&this.unexpected()},se.afterTrailingComma=function(e,t){if(this.type===e)return this.options.onTrailingComma&&this.options.onTrailingComma(this.lastTokStart,this.lastTokStartLoc),t||this.next(),!0},se.expect=function(e){this.eat(e)||this.unexpected()},se.unexpected=function(e){this.raise(e!=null?e:this.start,"Unexpected token")};var He=function(){this.shorthandAssign=this.trailingComma=this.parenthesizedAssign=this.parenthesizedBind=this.doubleProto=-1};se.checkPatternErrors=function(e,t){if(e){e.trailingComma>-1&&this.raiseRecoverable(e.trailingComma,"Comma is not permitted after the rest element");var r=t?e.parenthesizedAssign:e.parenthesizedBind;r>-1&&this.raiseRecoverable(r,t?"Assigning to rvalue":"Parenthesized pattern")}},se.checkExpressionErrors=function(e,t){if(!e)return!1;var r=e.shorthandAssign,s=e.doubleProto;if(!t)return r>=0||s>=0;r>=0&&this.raise(r,"Shorthand property assignments are valid only in destructuring patterns"),s>=0&&this.raiseRecoverable(s,"Redefinition of __proto__ property")},se.checkYieldAwaitInDefaultParams=function(){this.yieldPos&&(!this.awaitPos||this.yieldPos55295&&s<56320)return!0;if(e)return!1;if(s===123)return!0;if(w(s,!0)){for(var n=r+1;G(s=this.input.charCodeAt(n),!0);)++n;if(s===92||s>55295&&s<56320)return!0;var h=this.input.slice(r,n);if(!R.test(h))return!0}return!1},L.isAsyncFunction=function(){if(this.options.ecmaVersion<8||!this.isContextual("async"))return!1;ee.lastIndex=this.pos;var e=ee.exec(this.input),t=this.pos+e[0].length,r;return!S.test(this.input.slice(this.pos,t))&&this.input.slice(t,t+8)==="function"&&(t+8===this.input.length||!(G(r=this.input.charCodeAt(t+8))||r>55295&&r<56320))},L.parseStatement=function(e,t,r){var s=this.type,n=this.startNode(),h;switch(this.isLet(e)&&(s=i._var,h="let"),s){case i._break:case i._continue:return this.parseBreakContinueStatement(n,s.keyword);case i._debugger:return this.parseDebuggerStatement(n);case i._do:return this.parseDoStatement(n);case i._for:return this.parseForStatement(n);case i._function:return e&&(this.strict||e!=="if"&&e!=="label")&&this.options.ecmaVersion>=6&&this.unexpected(),this.parseFunctionStatement(n,!1,!e);case i._class:return e&&this.unexpected(),this.parseClass(n,!0);case i._if:return this.parseIfStatement(n);case i._return:return this.parseReturnStatement(n);case i._switch:return this.parseSwitchStatement(n);case i._throw:return this.parseThrowStatement(n);case i._try:return this.parseTryStatement(n);case i._const:case i._var:return h=h||this.value,e&&h!=="var"&&this.unexpected(),this.parseVarStatement(n,h);case i._while:return this.parseWhileStatement(n);case i._with:return this.parseWithStatement(n);case i.braceL:return this.parseBlock(!0,n);case i.semi:return this.parseEmptyStatement(n);case i._export:case i._import:if(this.options.ecmaVersion>10&&s===i._import){ee.lastIndex=this.pos;var c=ee.exec(this.input),m=this.pos+c[0].length,A=this.input.charCodeAt(m);if(A===40||A===46)return this.parseExpressionStatement(n,this.parseExpression())}return this.options.allowImportExportEverywhere||(t||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),s===i._import?this.parseImport(n):this.parseExport(n,r);default:if(this.isAsyncFunction())return e&&this.unexpected(),this.next(),this.parseFunctionStatement(n,!0,!e);var q=this.value,W=this.parseExpression();return s===i.name&&W.type==="Identifier"&&this.eat(i.colon)?this.parseLabeledStatement(n,q,W,e):this.parseExpressionStatement(n,W)}},L.parseBreakContinueStatement=function(e,t){var r=t==="break";this.next(),this.eat(i.semi)||this.insertSemicolon()?e.label=null:this.type!==i.name?this.unexpected():(e.label=this.parseIdent(),this.semicolon());for(var s=0;s=6?this.eat(i.semi):this.semicolon(),this.finishNode(e,"DoWhileStatement")},L.parseForStatement=function(e){this.next();var t=this.options.ecmaVersion>=9&&this.canAwait&&this.eatContextual("await")?this.lastTokStart:-1;if(this.labels.push(At),this.enterScope(0),this.expect(i.parenL),this.type===i.semi)return t>-1&&this.unexpected(t),this.parseFor(e,null);var r=this.isLet();if(this.type===i._var||this.type===i._const||r){var s=this.startNode(),n=r?"let":this.value;return this.next(),this.parseVar(s,!0,n),this.finishNode(s,"VariableDeclaration"),(this.type===i._in||this.options.ecmaVersion>=6&&this.isContextual("of"))&&s.declarations.length===1?(this.options.ecmaVersion>=9&&(this.type===i._in?t>-1&&this.unexpected(t):e.await=t>-1),this.parseForIn(e,s)):(t>-1&&this.unexpected(t),this.parseFor(e,s))}var h=this.isContextual("let"),c=!1,m=new He,A=this.parseExpression(t>-1?"await":!0,m);return this.type===i._in||(c=this.options.ecmaVersion>=6&&this.isContextual("of"))?(this.options.ecmaVersion>=9&&(this.type===i._in?t>-1&&this.unexpected(t):e.await=t>-1),h&&c&&this.raise(A.start,"The left-hand side of a for-of loop may not start with 'let'."),this.toAssignable(A,!1,m),this.checkLValPattern(A),this.parseForIn(e,A)):(this.checkExpressionErrors(m,!0),t>-1&&this.unexpected(t),this.parseFor(e,A))},L.parseFunctionStatement=function(e,t,r){return this.next(),this.parseFunction(e,Ve|(r?0:Ct),!1,t)},L.parseIfStatement=function(e){return this.next(),e.test=this.parseParenExpression(),e.consequent=this.parseStatement("if"),e.alternate=this.eat(i._else)?this.parseStatement("if"):null,this.finishNode(e,"IfStatement")},L.parseReturnStatement=function(e){return!this.inFunction&&!this.options.allowReturnOutsideFunction&&this.raise(this.start,"'return' outside of function"),this.next(),this.eat(i.semi)||this.insertSemicolon()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")},L.parseSwitchStatement=function(e){this.next(),e.discriminant=this.parseParenExpression(),e.cases=[],this.expect(i.braceL),this.labels.push(Ja),this.enterScope(0);for(var t,r=!1;this.type!==i.braceR;)if(this.type===i._case||this.type===i._default){var s=this.type===i._case;t&&this.finishNode(t,"SwitchCase"),e.cases.push(t=this.startNode()),t.consequent=[],this.next(),s?t.test=this.parseExpression():(r&&this.raiseRecoverable(this.lastTokStart,"Multiple default clauses"),r=!0,t.test=null),this.expect(i.colon)}else t||this.unexpected(),t.consequent.push(this.parseStatement(null));return this.exitScope(),t&&this.finishNode(t,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(e,"SwitchStatement")},L.parseThrowStatement=function(e){return this.next(),S.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")};var Qa=[];L.parseTryStatement=function(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.type===i._catch){var t=this.startNode();if(this.next(),this.eat(i.parenL)){t.param=this.parseBindingAtom();var r=t.param.type==="Identifier";this.enterScope(r?vr:0),this.checkLValPattern(t.param,r?yr:ve),this.expect(i.parenR)}else this.options.ecmaVersion<10&&this.unexpected(),t.param=null,this.enterScope(0);t.body=this.parseBlock(!1),this.exitScope(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(i._finally)?this.parseBlock():null,!e.handler&&!e.finalizer&&this.raise(e.start,"Missing catch or finally clause"),this.finishNode(e,"TryStatement")},L.parseVarStatement=function(e,t){return this.next(),this.parseVar(e,!1,t),this.semicolon(),this.finishNode(e,"VariableDeclaration")},L.parseWhileStatement=function(e){return this.next(),e.test=this.parseParenExpression(),this.labels.push(At),e.body=this.parseStatement("while"),this.labels.pop(),this.finishNode(e,"WhileStatement")},L.parseWithStatement=function(e){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),e.object=this.parseParenExpression(),e.body=this.parseStatement("with"),this.finishNode(e,"WithStatement")},L.parseEmptyStatement=function(e){return this.next(),this.finishNode(e,"EmptyStatement")},L.parseLabeledStatement=function(e,t,r,s){for(var n=0,h=this.labels;n=0;A--){var q=this.labels[A];if(q.statementStart===e.start)q.statementStart=this.start,q.kind=m;else break}return this.labels.push({name:t,kind:m,statementStart:this.start}),e.body=this.parseStatement(s?s.indexOf("label")===-1?s+"label":s:"label"),this.labels.pop(),e.label=r,this.finishNode(e,"LabeledStatement")},L.parseExpressionStatement=function(e,t){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")},L.parseBlock=function(e,t,r){for(e===void 0&&(e=!0),t===void 0&&(t=this.startNode()),t.body=[],this.expect(i.braceL),e&&this.enterScope(0);this.type!==i.braceR;){var s=this.parseStatement(null);t.body.push(s)}return r&&(this.strict=!1),this.next(),e&&this.exitScope(),this.finishNode(t,"BlockStatement")},L.parseFor=function(e,t){return e.init=t,this.expect(i.semi),e.test=this.type===i.semi?null:this.parseExpression(),this.expect(i.semi),e.update=this.type===i.parenR?null:this.parseExpression(),this.expect(i.parenR),e.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(e,"ForStatement")},L.parseForIn=function(e,t){var r=this.type===i._in;return this.next(),t.type==="VariableDeclaration"&&t.declarations[0].init!=null&&(!r||this.options.ecmaVersion<8||this.strict||t.kind!=="var"||t.declarations[0].id.type!=="Identifier")&&this.raise(t.start,(r?"for-in":"for-of")+" loop variable declaration may not have an initializer"),e.left=t,e.right=r?this.parseExpression():this.parseMaybeAssign(),this.expect(i.parenR),e.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(e,r?"ForInStatement":"ForOfStatement")},L.parseVar=function(e,t,r){for(e.declarations=[],e.kind=r;;){var s=this.startNode();if(this.parseVarId(s,r),this.eat(i.eq)?s.init=this.parseMaybeAssign(t):r==="const"&&!(this.type===i._in||this.options.ecmaVersion>=6&&this.isContextual("of"))?this.unexpected():s.id.type!=="Identifier"&&!(t&&(this.type===i._in||this.isContextual("of")))?this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value"):s.init=null,e.declarations.push(this.finishNode(s,"VariableDeclarator")),!this.eat(i.comma))break}return e},L.parseVarId=function(e,t){e.id=this.parseBindingAtom(),this.checkLValPattern(e.id,t==="var"?yt:ve,!1)};var Ve=1,Ct=2,Cr=4;L.parseFunction=function(e,t,r,s,n){this.initFunction(e),(this.options.ecmaVersion>=9||this.options.ecmaVersion>=6&&!s)&&(this.type===i.star&&t&Ct&&this.unexpected(),e.generator=this.eat(i.star)),this.options.ecmaVersion>=8&&(e.async=!!s),t&Ve&&(e.id=t&Cr&&this.type!==i.name?null:this.parseIdent(),e.id&&!(t&Ct)&&this.checkLValSimple(e.id,this.strict||e.generator||e.async?this.treatFunctionsAsVar?yt:ve:xr));var h=this.yieldPos,c=this.awaitPos,m=this.awaitIdentPos;return this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(xt(e.async,e.generator)),t&Ve||(e.id=this.type===i.name?this.parseIdent():null),this.parseFunctionParams(e),this.parseFunctionBody(e,r,!1,n),this.yieldPos=h,this.awaitPos=c,this.awaitIdentPos=m,this.finishNode(e,t&Ve?"FunctionDeclaration":"FunctionExpression")},L.parseFunctionParams=function(e){this.expect(i.parenL),e.params=this.parseBindingList(i.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams()},L.parseClass=function(e,t){this.next();var r=this.strict;this.strict=!0,this.parseClassId(e,t),this.parseClassSuper(e);var s=this.enterClassBody(),n=this.startNode(),h=!1;for(n.body=[],this.expect(i.braceL);this.type!==i.braceR;){var c=this.parseClassElement(e.superClass!==null);c&&(n.body.push(c),c.type==="MethodDefinition"&&c.kind==="constructor"?(h&&this.raise(c.start,"Duplicate constructor in the same class"),h=!0):c.key&&c.key.type==="PrivateIdentifier"&&$a(s,c)&&this.raiseRecoverable(c.key.start,"Identifier '#"+c.key.name+"' has already been declared"))}return this.strict=r,this.next(),e.body=this.finishNode(n,"ClassBody"),this.exitClassBody(),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")},L.parseClassElement=function(e){if(this.eat(i.semi))return null;var t=this.options.ecmaVersion,r=this.startNode(),s="",n=!1,h=!1,c="method",m=!1;if(this.eatContextual("static")){if(t>=13&&this.eat(i.braceL))return this.parseClassStaticBlock(r),r;this.isClassElementNameStart()||this.type===i.star?m=!0:s="static"}if(r.static=m,!s&&t>=8&&this.eatContextual("async")&&((this.isClassElementNameStart()||this.type===i.star)&&!this.canInsertSemicolon()?h=!0:s="async"),!s&&(t>=9||!h)&&this.eat(i.star)&&(n=!0),!s&&!h&&!n){var A=this.value;(this.eatContextual("get")||this.eatContextual("set"))&&(this.isClassElementNameStart()?c=A:s=A)}if(s?(r.computed=!1,r.key=this.startNodeAt(this.lastTokStart,this.lastTokStartLoc),r.key.name=s,this.finishNode(r.key,"Identifier")):this.parseClassElementName(r),t<13||this.type===i.parenL||c!=="method"||n||h){var q=!r.static&&Ke(r,"constructor"),W=q&&e;q&&c!=="method"&&this.raise(r.key.start,"Constructor can't have get/set modifier"),r.kind=q?"constructor":c,this.parseClassMethod(r,n,h,W)}else this.parseClassField(r);return r},L.isClassElementNameStart=function(){return this.type===i.name||this.type===i.privateId||this.type===i.num||this.type===i.string||this.type===i.bracketL||this.type.keyword},L.parseClassElementName=function(e){this.type===i.privateId?(this.value==="constructor"&&this.raise(this.start,"Classes can't have an element named '#constructor'"),e.computed=!1,e.key=this.parsePrivateIdent()):this.parsePropertyName(e)},L.parseClassMethod=function(e,t,r,s){var n=e.key;e.kind==="constructor"?(t&&this.raise(n.start,"Constructor can't be a generator"),r&&this.raise(n.start,"Constructor can't be an async method")):e.static&&Ke(e,"prototype")&&this.raise(n.start,"Classes may not have a static property named prototype");var h=e.value=this.parseMethod(t,r,s);return e.kind==="get"&&h.params.length!==0&&this.raiseRecoverable(h.start,"getter should have no params"),e.kind==="set"&&h.params.length!==1&&this.raiseRecoverable(h.start,"setter should have exactly one param"),e.kind==="set"&&h.params[0].type==="RestElement"&&this.raiseRecoverable(h.params[0].start,"Setter cannot use rest params"),this.finishNode(e,"MethodDefinition")},L.parseClassField=function(e){if(Ke(e,"constructor")?this.raise(e.key.start,"Classes can't have a field named 'constructor'"):e.static&&Ke(e,"prototype")&&this.raise(e.key.start,"Classes can't have a static field named 'prototype'"),this.eat(i.eq)){var t=this.currentThisScope(),r=t.inClassFieldInit;t.inClassFieldInit=!0,e.value=this.parseMaybeAssign(),t.inClassFieldInit=r}else e.value=null;return this.semicolon(),this.finishNode(e,"PropertyDefinition")},L.parseClassStaticBlock=function(e){e.body=[];var t=this.labels;for(this.labels=[],this.enterScope(Le|vt);this.type!==i.braceR;){var r=this.parseStatement(null);e.body.push(r)}return this.next(),this.exitScope(),this.labels=t,this.finishNode(e,"StaticBlock")},L.parseClassId=function(e,t){this.type===i.name?(e.id=this.parseIdent(),t&&this.checkLValSimple(e.id,ve,!1)):(t===!0&&this.unexpected(),e.id=null)},L.parseClassSuper=function(e){e.superClass=this.eat(i._extends)?this.parseExprSubscripts(!1):null},L.enterClassBody=function(){var e={declared:Object.create(null),used:[]};return this.privateNameStack.push(e),e.declared},L.exitClassBody=function(){for(var e=this.privateNameStack.pop(),t=e.declared,r=e.used,s=this.privateNameStack.length,n=s===0?null:this.privateNameStack[s-1],h=0;h=11&&(this.eatContextual("as")?(e.exported=this.parseModuleExportName(),this.checkExport(t,e.exported,this.lastTokStart)):e.exported=null),this.expectContextual("from"),this.type!==i.string&&this.unexpected(),e.source=this.parseExprAtom(),this.semicolon(),this.finishNode(e,"ExportAllDeclaration");if(this.eat(i._default)){this.checkExport(t,"default",this.lastTokStart);var r;if(this.type===i._function||(r=this.isAsyncFunction())){var s=this.startNode();this.next(),r&&this.next(),e.declaration=this.parseFunction(s,Ve|Cr,!1,r)}else if(this.type===i._class){var n=this.startNode();e.declaration=this.parseClass(n,"nullableID")}else e.declaration=this.parseMaybeAssign(),this.semicolon();return this.finishNode(e,"ExportDefaultDeclaration")}if(this.shouldParseExportStatement())e.declaration=this.parseStatement(null),e.declaration.type==="VariableDeclaration"?this.checkVariableExport(t,e.declaration.declarations):this.checkExport(t,e.declaration.id,e.declaration.id.start),e.specifiers=[],e.source=null;else{if(e.declaration=null,e.specifiers=this.parseExportSpecifiers(t),this.eatContextual("from"))this.type!==i.string&&this.unexpected(),e.source=this.parseExprAtom();else{for(var h=0,c=e.specifiers;h=13&&this.type===i.string){var e=this.parseLiteral(this.value);return K.test(e.value)&&this.raise(e.start,"An export name cannot include a lone surrogate."),e}return this.parseIdent(!0)},L.adaptDirectivePrologue=function(e){for(var t=0;t=5&&e.type==="ExpressionStatement"&&e.expression.type==="Literal"&&typeof e.expression.value=="string"&&(this.input[e.start]==='"'||this.input[e.start]==="'")};var he=Y.prototype;he.toAssignable=function(e,t,r){if(this.options.ecmaVersion>=6&&e)switch(e.type){case"Identifier":this.inAsync&&e.name==="await"&&this.raise(e.start,"Cannot use 'await' as identifier inside an async function");break;case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern",r&&this.checkPatternErrors(r,!0);for(var s=0,n=e.properties;s=8&&!c&&m.name==="async"&&!this.canInsertSemicolon()&&this.eat(i._function))return this.overrideContext(Q.f_expr),this.parseFunction(this.startNodeAt(n,h),0,!1,!0,t);if(s&&!this.canInsertSemicolon()){if(this.eat(i.arrow))return this.parseArrowExpression(this.startNodeAt(n,h),[m],!1,t);if(this.options.ecmaVersion>=8&&m.name==="async"&&this.type===i.name&&!c&&(!this.potentialArrowInForAwait||this.value!=="of"||this.containsEsc))return m=this.parseIdent(!1),(this.canInsertSemicolon()||!this.eat(i.arrow))&&this.unexpected(),this.parseArrowExpression(this.startNodeAt(n,h),[m],!0,t)}return m;case i.regexp:var A=this.value;return r=this.parseLiteral(A.value),r.regex={pattern:A.pattern,flags:A.flags},r;case i.num:case i.string:return this.parseLiteral(this.value);case i._null:case i._true:case i._false:return r=this.startNode(),r.value=this.type===i._null?null:this.type===i._true,r.raw=this.type.keyword,this.next(),this.finishNode(r,"Literal");case i.parenL:var q=this.start,W=this.parseParenAndDistinguishExpression(s,t);return e&&(e.parenthesizedAssign<0&&!this.isSimpleAssignTarget(W)&&(e.parenthesizedAssign=q),e.parenthesizedBind<0&&(e.parenthesizedBind=q)),W;case i.bracketL:return r=this.startNode(),this.next(),r.elements=this.parseExprList(i.bracketR,!0,!0,e),this.finishNode(r,"ArrayExpression");case i.braceL:return this.overrideContext(Q.b_expr),this.parseObj(!1,e);case i._function:return r=this.startNode(),this.next(),this.parseFunction(r,0);case i._class:return this.parseClass(this.startNode(),!1);case i._new:return this.parseNew();case i.backQuote:return this.parseTemplate();case i._import:return this.options.ecmaVersion>=11?this.parseExprImport():this.unexpected();default:this.unexpected()}},M.parseExprImport=function(){var e=this.startNode();this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword import");var t=this.parseIdent(!0);switch(this.type){case i.parenL:return this.parseDynamicImport(e);case i.dot:return e.meta=t,this.parseImportMeta(e);default:this.unexpected()}},M.parseDynamicImport=function(e){if(this.next(),e.source=this.parseMaybeAssign(),!this.eat(i.parenR)){var t=this.start;this.eat(i.comma)&&this.eat(i.parenR)?this.raiseRecoverable(t,"Trailing comma is not allowed in import()"):this.unexpected(t)}return this.finishNode(e,"ImportExpression")},M.parseImportMeta=function(e){this.next();var t=this.containsEsc;return e.property=this.parseIdent(!0),e.property.name!=="meta"&&this.raiseRecoverable(e.property.start,"The only valid meta property for import is 'import.meta'"),t&&this.raiseRecoverable(e.start,"'import.meta' must not contain escaped characters"),this.options.sourceType!=="module"&&!this.options.allowImportExportEverywhere&&this.raiseRecoverable(e.start,"Cannot use 'import.meta' outside a module"),this.finishNode(e,"MetaProperty")},M.parseLiteral=function(e){var t=this.startNode();return t.value=e,t.raw=this.input.slice(this.start,this.end),t.raw.charCodeAt(t.raw.length-1)===110&&(t.bigint=t.raw.slice(0,-1).replace(/_/g,"")),this.next(),this.finishNode(t,"Literal")},M.parseParenExpression=function(){this.expect(i.parenL);var e=this.parseExpression();return this.expect(i.parenR),e},M.parseParenAndDistinguishExpression=function(e,t){var r=this.start,s=this.startLoc,n,h=this.options.ecmaVersion>=8;if(this.options.ecmaVersion>=6){this.next();var c=this.start,m=this.startLoc,A=[],q=!0,W=!1,re=new He,Se=this.yieldPos,qe=this.awaitPos,Be;for(this.yieldPos=0,this.awaitPos=0;this.type!==i.parenR;)if(q?q=!1:this.expect(i.comma),h&&this.afterTrailingComma(i.parenR,!0)){W=!0;break}else if(this.type===i.ellipsis){Be=this.start,A.push(this.parseParenItem(this.parseRestBinding())),this.type===i.comma&&this.raise(this.start,"Comma is not permitted after the rest element");break}else A.push(this.parseMaybeAssign(!1,re,this.parseParenItem));var $e=this.lastTokEnd,Ie=this.lastTokEndLoc;if(this.expect(i.parenR),e&&!this.canInsertSemicolon()&&this.eat(i.arrow))return this.checkPatternErrors(re,!1),this.checkYieldAwaitInDefaultParams(),this.yieldPos=Se,this.awaitPos=qe,this.parseParenArrowList(r,s,A,t);(!A.length||W)&&this.unexpected(this.lastTokStart),Be&&this.unexpected(Be),this.checkExpressionErrors(re,!0),this.yieldPos=Se||this.yieldPos,this.awaitPos=qe||this.awaitPos,A.length>1?(n=this.startNodeAt(c,m),n.expressions=A,this.finishNodeAt(n,"SequenceExpression",$e,Ie)):n=A[0]}else n=this.parseParenExpression();if(this.options.preserveParens){var Te=this.startNodeAt(r,s);return Te.expression=n,this.finishNode(Te,"ParenthesizedExpression")}else return n},M.parseParenItem=function(e){return e},M.parseParenArrowList=function(e,t,r,s){return this.parseArrowExpression(this.startNodeAt(e,t),r,!1,s)};var Ya=[];M.parseNew=function(){this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword new");var e=this.startNode(),t=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(i.dot)){e.meta=t;var r=this.containsEsc;return e.property=this.parseIdent(!0),e.property.name!=="target"&&this.raiseRecoverable(e.property.start,"The only valid meta property for new is 'new.target'"),r&&this.raiseRecoverable(e.start,"'new.target' must not contain escaped characters"),this.allowNewDotTarget||this.raiseRecoverable(e.start,"'new.target' can only be used in functions and class static block"),this.finishNode(e,"MetaProperty")}var s=this.start,n=this.startLoc,h=this.type===i._import;return e.callee=this.parseSubscripts(this.parseExprAtom(),s,n,!0,!1),h&&e.callee.type==="ImportExpression"&&this.raise(s,"Cannot use new with import()"),this.eat(i.parenL)?e.arguments=this.parseExprList(i.parenR,this.options.ecmaVersion>=8,!1):e.arguments=Ya,this.finishNode(e,"NewExpression")},M.parseTemplateElement=function(e){var t=e.isTagged,r=this.startNode();return this.type===i.invalidTemplate?(t||this.raiseRecoverable(this.start,"Bad escape sequence in untagged template literal"),r.value={raw:this.value,cooked:null}):r.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,` +`),cooked:this.value},this.next(),r.tail=this.type===i.backQuote,this.finishNode(r,"TemplateElement")},M.parseTemplate=function(e){e===void 0&&(e={});var t=e.isTagged;t===void 0&&(t=!1);var r=this.startNode();this.next(),r.expressions=[];var s=this.parseTemplateElement({isTagged:t});for(r.quasis=[s];!s.tail;)this.type===i.eof&&this.raise(this.pos,"Unterminated template literal"),this.expect(i.dollarBraceL),r.expressions.push(this.parseExpression()),this.expect(i.braceR),r.quasis.push(s=this.parseTemplateElement({isTagged:t}));return this.next(),this.finishNode(r,"TemplateLiteral")},M.isAsyncProp=function(e){return!e.computed&&e.key.type==="Identifier"&&e.key.name==="async"&&(this.type===i.name||this.type===i.num||this.type===i.string||this.type===i.bracketL||this.type.keyword||this.options.ecmaVersion>=9&&this.type===i.star)&&!S.test(this.input.slice(this.lastTokEnd,this.start))},M.parseObj=function(e,t){var r=this.startNode(),s=!0,n={};for(r.properties=[],this.next();!this.eat(i.braceR);){if(s)s=!1;else if(this.expect(i.comma),this.options.ecmaVersion>=5&&this.afterTrailingComma(i.braceR))break;var h=this.parseProperty(e,t);e||this.checkPropClash(h,n,t),r.properties.push(h)}return this.finishNode(r,e?"ObjectPattern":"ObjectExpression")},M.parseProperty=function(e,t){var r=this.startNode(),s,n,h,c;if(this.options.ecmaVersion>=9&&this.eat(i.ellipsis))return e?(r.argument=this.parseIdent(!1),this.type===i.comma&&this.raise(this.start,"Comma is not permitted after the rest element"),this.finishNode(r,"RestElement")):(r.argument=this.parseMaybeAssign(!1,t),this.type===i.comma&&t&&t.trailingComma<0&&(t.trailingComma=this.start),this.finishNode(r,"SpreadElement"));this.options.ecmaVersion>=6&&(r.method=!1,r.shorthand=!1,(e||t)&&(h=this.start,c=this.startLoc),e||(s=this.eat(i.star)));var m=this.containsEsc;return this.parsePropertyName(r),!e&&!m&&this.options.ecmaVersion>=8&&!s&&this.isAsyncProp(r)?(n=!0,s=this.options.ecmaVersion>=9&&this.eat(i.star),this.parsePropertyName(r,t)):n=!1,this.parsePropertyValue(r,e,s,n,h,c,t,m),this.finishNode(r,"Property")},M.parsePropertyValue=function(e,t,r,s,n,h,c,m){if((r||s)&&this.type===i.colon&&this.unexpected(),this.eat(i.colon))e.value=t?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,c),e.kind="init";else if(this.options.ecmaVersion>=6&&this.type===i.parenL)t&&this.unexpected(),e.kind="init",e.method=!0,e.value=this.parseMethod(r,s);else if(!t&&!m&&this.options.ecmaVersion>=5&&!e.computed&&e.key.type==="Identifier"&&(e.key.name==="get"||e.key.name==="set")&&this.type!==i.comma&&this.type!==i.braceR&&this.type!==i.eq){(r||s)&&this.unexpected(),e.kind=e.key.name,this.parsePropertyName(e),e.value=this.parseMethod(!1);var A=e.kind==="get"?0:1;if(e.value.params.length!==A){var q=e.value.start;e.kind==="get"?this.raiseRecoverable(q,"getter should have no params"):this.raiseRecoverable(q,"setter should have exactly one param")}else e.kind==="set"&&e.value.params[0].type==="RestElement"&&this.raiseRecoverable(e.value.params[0].start,"Setter cannot use rest params")}else this.options.ecmaVersion>=6&&!e.computed&&e.key.type==="Identifier"?((r||s)&&this.unexpected(),this.checkUnreserved(e.key),e.key.name==="await"&&!this.awaitIdentPos&&(this.awaitIdentPos=n),e.kind="init",t?e.value=this.parseMaybeDefault(n,h,this.copyNode(e.key)):this.type===i.eq&&c?(c.shorthandAssign<0&&(c.shorthandAssign=this.start),e.value=this.parseMaybeDefault(n,h,this.copyNode(e.key))):e.value=this.copyNode(e.key),e.shorthand=!0):this.unexpected()},M.parsePropertyName=function(e){if(this.options.ecmaVersion>=6){if(this.eat(i.bracketL))return e.computed=!0,e.key=this.parseMaybeAssign(),this.expect(i.bracketR),e.key;e.computed=!1}return e.key=this.type===i.num||this.type===i.string?this.parseExprAtom():this.parseIdent(this.options.allowReserved!=="never")},M.initFunction=function(e){e.id=null,this.options.ecmaVersion>=6&&(e.generator=e.expression=!1),this.options.ecmaVersion>=8&&(e.async=!1)},M.parseMethod=function(e,t,r){var s=this.startNode(),n=this.yieldPos,h=this.awaitPos,c=this.awaitIdentPos;return this.initFunction(s),this.options.ecmaVersion>=6&&(s.generator=e),this.options.ecmaVersion>=8&&(s.async=!!t),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(xt(t,s.generator)|vt|(r?gr:0)),this.expect(i.parenL),s.params=this.parseBindingList(i.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams(),this.parseFunctionBody(s,!1,!0,!1),this.yieldPos=n,this.awaitPos=h,this.awaitIdentPos=c,this.finishNode(s,"FunctionExpression")},M.parseArrowExpression=function(e,t,r,s){var n=this.yieldPos,h=this.awaitPos,c=this.awaitIdentPos;return this.enterScope(xt(r,!1)|mr),this.initFunction(e),this.options.ecmaVersion>=8&&(e.async=!!r),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,e.params=this.toAssignableList(t,!0),this.parseFunctionBody(e,!0,!1,s),this.yieldPos=n,this.awaitPos=h,this.awaitIdentPos=c,this.finishNode(e,"ArrowFunctionExpression")},M.parseFunctionBody=function(e,t,r,s){var n=t&&this.type!==i.braceL,h=this.strict,c=!1;if(n)e.body=this.parseMaybeAssign(s),e.expression=!0,this.checkParams(e,!1);else{var m=this.options.ecmaVersion>=7&&!this.isSimpleParamList(e.params);(!h||m)&&(c=this.strictDirective(this.end),c&&m&&this.raiseRecoverable(e.start,"Illegal 'use strict' directive in function with non-simple parameter list"));var A=this.labels;this.labels=[],c&&(this.strict=!0),this.checkParams(e,!h&&!c&&!t&&!r&&this.isSimpleParamList(e.params)),this.strict&&e.id&&this.checkLValSimple(e.id,Ar),e.body=this.parseBlock(!1,void 0,c&&!h),e.expression=!1,this.adaptDirectivePrologue(e.body.body),this.labels=A}this.exitScope()},M.isSimpleParamList=function(e){for(var t=0,r=e;t-1||n.functions.indexOf(e)>-1||n.var.indexOf(e)>-1,n.lexical.push(e),this.inModule&&n.flags&_e&&delete this.undefinedExports[e]}else if(t===yr){var h=this.currentScope();h.lexical.push(e)}else if(t===xr){var c=this.currentScope();this.treatFunctionsAsVar?s=c.lexical.indexOf(e)>-1:s=c.lexical.indexOf(e)>-1||c.var.indexOf(e)>-1,c.functions.push(e)}else for(var m=this.scopeStack.length-1;m>=0;--m){var A=this.scopeStack[m];if(A.lexical.indexOf(e)>-1&&!(A.flags&vr&&A.lexical[0]===e)||!this.treatFunctionsAsVarInScope(A)&&A.functions.indexOf(e)>-1){s=!0;break}if(A.var.push(e),this.inModule&&A.flags&_e&&delete this.undefinedExports[e],A.flags>)break}s&&this.raiseRecoverable(r,"Identifier '"+e+"' has already been declared")},Ee.checkLocalExport=function(e){this.scopeStack[0].lexical.indexOf(e.name)===-1&&this.scopeStack[0].var.indexOf(e.name)===-1&&(this.undefinedExports[e.name]=e)},Ee.currentScope=function(){return this.scopeStack[this.scopeStack.length-1]},Ee.currentVarScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(t.flags>)return t}},Ee.currentThisScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(t.flags>&&!(t.flags&mr))return t}};var Re=function(t,r,s){this.type="",this.start=r,this.end=0,t.options.locations&&(this.loc=new te(t,s)),t.options.directSourceFile&&(this.sourceFile=t.options.directSourceFile),t.options.ranges&&(this.range=[r,0])},je=Y.prototype;je.startNode=function(){return new Re(this,this.start,this.startLoc)},je.startNodeAt=function(e,t){return new Re(this,e,t)};function br(e,t,r,s){return e.type=t,e.end=r,this.options.locations&&(e.loc.end=s),this.options.ranges&&(e.range[1]=r),e}je.finishNode=function(e,t){return br.call(this,e,t,this.lastTokEnd,this.lastTokEndLoc)},je.finishNodeAt=function(e,t,r,s){return br.call(this,e,t,r,s)},je.copyNode=function(e){var t=new Re(this,e.start,this.startLoc);for(var r in e)t[r]=e[r];return t};var _r="ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS",Sr=_r+" Extended_Pictographic",wr=Sr,kr=wr+" EBase EComp EMod EPres ExtPict",en=kr,tn={9:_r,10:Sr,11:wr,12:kr,13:en},Fr="Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu",Br="Adlam Adlm Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb",Ir=Br+" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd",Tr=Ir+" Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho",Pr=Tr+" Chorasmian Chrs Diak Dives_Akuru Khitan_Small_Script Kits Yezi Yezidi",rn=Pr+" Cypro_Minoan Cpmn Old_Uyghur Ougr Tangsa Tnsa Toto Vithkuqi Vith",sn={9:Br,10:Ir,11:Tr,12:Pr,13:rn},Dr={};function an(e){var t=Dr[e]={binary:d(tn[e]+" "+Fr),nonBinary:{General_Category:d(Fr),Script:d(sn[e])}};t.nonBinary.Script_Extensions=t.nonBinary.Script,t.nonBinary.gc=t.nonBinary.General_Category,t.nonBinary.sc=t.nonBinary.Script,t.nonBinary.scx=t.nonBinary.Script_Extensions}for(var Et=0,Nr=[9,10,11,12,13];Et=6?"uy":"")+(t.options.ecmaVersion>=9?"s":"")+(t.options.ecmaVersion>=13?"d":""),this.unicodeProperties=Dr[t.options.ecmaVersion>=13?13:t.options.ecmaVersion],this.source="",this.flags="",this.start=0,this.switchU=!1,this.switchN=!1,this.pos=0,this.lastIntValue=0,this.lastStringValue="",this.lastAssertionIsQuantifiable=!1,this.numCapturingParens=0,this.maxBackReference=0,this.groupNames=[],this.backReferenceNames=[]};ge.prototype.reset=function(t,r,s){var n=s.indexOf("u")!==-1;this.start=t|0,this.source=r+"",this.flags=s,this.switchU=n&&this.parser.options.ecmaVersion>=6,this.switchN=n&&this.parser.options.ecmaVersion>=9},ge.prototype.raise=function(t){this.parser.raiseRecoverable(this.start,"Invalid regular expression: /"+this.source+"/: "+t)},ge.prototype.at=function(t,r){r===void 0&&(r=!1);var s=this.source,n=s.length;if(t>=n)return-1;var h=s.charCodeAt(t);if(!(r||this.switchU)||h<=55295||h>=57344||t+1>=n)return h;var c=s.charCodeAt(t+1);return c>=56320&&c<=57343?(h<<10)+c-56613888:h},ge.prototype.nextIndex=function(t,r){r===void 0&&(r=!1);var s=this.source,n=s.length;if(t>=n)return n;var h=s.charCodeAt(t),c;return!(r||this.switchU)||h<=55295||h>=57344||t+1>=n||(c=s.charCodeAt(t+1))<56320||c>57343?t+1:t+2},ge.prototype.current=function(t){return t===void 0&&(t=!1),this.at(this.pos,t)},ge.prototype.lookahead=function(t){return t===void 0&&(t=!1),this.at(this.nextIndex(this.pos,t),t)},ge.prototype.advance=function(t){t===void 0&&(t=!1),this.pos=this.nextIndex(this.pos,t)},ge.prototype.eat=function(t,r){return r===void 0&&(r=!1),this.current(r)===t?(this.advance(r),!0):!1},N.validateRegExpFlags=function(e){for(var t=e.validFlags,r=e.flags,s=0;s-1&&this.raise(e.start,"Duplicate regular expression flag")}},N.validateRegExpPattern=function(e){this.regexp_pattern(e),!e.switchN&&this.options.ecmaVersion>=9&&e.groupNames.length>0&&(e.switchN=!0,this.regexp_pattern(e))},N.regexp_pattern=function(e){e.pos=0,e.lastIntValue=0,e.lastStringValue="",e.lastAssertionIsQuantifiable=!1,e.numCapturingParens=0,e.maxBackReference=0,e.groupNames.length=0,e.backReferenceNames.length=0,this.regexp_disjunction(e),e.pos!==e.source.length&&(e.eat(41)&&e.raise("Unmatched ')'"),(e.eat(93)||e.eat(125))&&e.raise("Lone quantifier brackets")),e.maxBackReference>e.numCapturingParens&&e.raise("Invalid escape");for(var t=0,r=e.backReferenceNames;t=9&&(r=e.eat(60)),e.eat(61)||e.eat(33))return this.regexp_disjunction(e),e.eat(41)||e.raise("Unterminated group"),e.lastAssertionIsQuantifiable=!r,!0}return e.pos=t,!1},N.regexp_eatQuantifier=function(e,t){return t===void 0&&(t=!1),this.regexp_eatQuantifierPrefix(e,t)?(e.eat(63),!0):!1},N.regexp_eatQuantifierPrefix=function(e,t){return e.eat(42)||e.eat(43)||e.eat(63)||this.regexp_eatBracedQuantifier(e,t)},N.regexp_eatBracedQuantifier=function(e,t){var r=e.pos;if(e.eat(123)){var s=0,n=-1;if(this.regexp_eatDecimalDigits(e)&&(s=e.lastIntValue,e.eat(44)&&this.regexp_eatDecimalDigits(e)&&(n=e.lastIntValue),e.eat(125)))return n!==-1&&n=9?this.regexp_groupSpecifier(e):e.current()===63&&e.raise("Invalid group"),this.regexp_disjunction(e),e.eat(41))return e.numCapturingParens+=1,!0;e.raise("Unterminated group")}return!1},N.regexp_eatExtendedAtom=function(e){return e.eat(46)||this.regexp_eatReverseSolidusAtomEscape(e)||this.regexp_eatCharacterClass(e)||this.regexp_eatUncapturingGroup(e)||this.regexp_eatCapturingGroup(e)||this.regexp_eatInvalidBracedQuantifier(e)||this.regexp_eatExtendedPatternCharacter(e)},N.regexp_eatInvalidBracedQuantifier=function(e){return this.regexp_eatBracedQuantifier(e,!0)&&e.raise("Nothing to repeat"),!1},N.regexp_eatSyntaxCharacter=function(e){var t=e.current();return Or(t)?(e.lastIntValue=t,e.advance(),!0):!1};function Or(e){return e===36||e>=40&&e<=43||e===46||e===63||e>=91&&e<=94||e>=123&&e<=125}N.regexp_eatPatternCharacters=function(e){for(var t=e.pos,r=0;(r=e.current())!==-1&&!Or(r);)e.advance();return e.pos!==t},N.regexp_eatExtendedPatternCharacter=function(e){var t=e.current();return t!==-1&&t!==36&&!(t>=40&&t<=43)&&t!==46&&t!==63&&t!==91&&t!==94&&t!==124?(e.advance(),!0):!1},N.regexp_groupSpecifier=function(e){if(e.eat(63)){if(this.regexp_eatGroupName(e)){e.groupNames.indexOf(e.lastStringValue)!==-1&&e.raise("Duplicate capture group name"),e.groupNames.push(e.lastStringValue);return}e.raise("Invalid group")}},N.regexp_eatGroupName=function(e){if(e.lastStringValue="",e.eat(60)){if(this.regexp_eatRegExpIdentifierName(e)&&e.eat(62))return!0;e.raise("Invalid capture group name")}return!1},N.regexp_eatRegExpIdentifierName=function(e){if(e.lastStringValue="",this.regexp_eatRegExpIdentifierStart(e)){for(e.lastStringValue+=E(e.lastIntValue);this.regexp_eatRegExpIdentifierPart(e);)e.lastStringValue+=E(e.lastIntValue);return!0}return!1},N.regexp_eatRegExpIdentifierStart=function(e){var t=e.pos,r=this.options.ecmaVersion>=11,s=e.current(r);return e.advance(r),s===92&&this.regexp_eatRegExpUnicodeEscapeSequence(e,r)&&(s=e.lastIntValue),un(s)?(e.lastIntValue=s,!0):(e.pos=t,!1)};function un(e){return w(e,!0)||e===36||e===95}N.regexp_eatRegExpIdentifierPart=function(e){var t=e.pos,r=this.options.ecmaVersion>=11,s=e.current(r);return e.advance(r),s===92&&this.regexp_eatRegExpUnicodeEscapeSequence(e,r)&&(s=e.lastIntValue),on(s)?(e.lastIntValue=s,!0):(e.pos=t,!1)};function on(e){return G(e,!0)||e===36||e===95||e===8204||e===8205}N.regexp_eatAtomEscape=function(e){return this.regexp_eatBackReference(e)||this.regexp_eatCharacterClassEscape(e)||this.regexp_eatCharacterEscape(e)||e.switchN&&this.regexp_eatKGroupName(e)?!0:(e.switchU&&(e.current()===99&&e.raise("Invalid unicode escape"),e.raise("Invalid escape")),!1)},N.regexp_eatBackReference=function(e){var t=e.pos;if(this.regexp_eatDecimalEscape(e)){var r=e.lastIntValue;if(e.switchU)return r>e.maxBackReference&&(e.maxBackReference=r),!0;if(r<=e.numCapturingParens)return!0;e.pos=t}return!1},N.regexp_eatKGroupName=function(e){if(e.eat(107)){if(this.regexp_eatGroupName(e))return e.backReferenceNames.push(e.lastStringValue),!0;e.raise("Invalid named reference")}return!1},N.regexp_eatCharacterEscape=function(e){return this.regexp_eatControlEscape(e)||this.regexp_eatCControlLetter(e)||this.regexp_eatZero(e)||this.regexp_eatHexEscapeSequence(e)||this.regexp_eatRegExpUnicodeEscapeSequence(e,!1)||!e.switchU&&this.regexp_eatLegacyOctalEscapeSequence(e)||this.regexp_eatIdentityEscape(e)},N.regexp_eatCControlLetter=function(e){var t=e.pos;if(e.eat(99)){if(this.regexp_eatControlLetter(e))return!0;e.pos=t}return!1},N.regexp_eatZero=function(e){return e.current()===48&&!Je(e.lookahead())?(e.lastIntValue=0,e.advance(),!0):!1},N.regexp_eatControlEscape=function(e){var t=e.current();return t===116?(e.lastIntValue=9,e.advance(),!0):t===110?(e.lastIntValue=10,e.advance(),!0):t===118?(e.lastIntValue=11,e.advance(),!0):t===102?(e.lastIntValue=12,e.advance(),!0):t===114?(e.lastIntValue=13,e.advance(),!0):!1},N.regexp_eatControlLetter=function(e){var t=e.current();return Lr(t)?(e.lastIntValue=t%32,e.advance(),!0):!1};function Lr(e){return e>=65&&e<=90||e>=97&&e<=122}N.regexp_eatRegExpUnicodeEscapeSequence=function(e,t){t===void 0&&(t=!1);var r=e.pos,s=t||e.switchU;if(e.eat(117)){if(this.regexp_eatFixedHexDigits(e,4)){var n=e.lastIntValue;if(s&&n>=55296&&n<=56319){var h=e.pos;if(e.eat(92)&&e.eat(117)&&this.regexp_eatFixedHexDigits(e,4)){var c=e.lastIntValue;if(c>=56320&&c<=57343)return e.lastIntValue=(n-55296)*1024+(c-56320)+65536,!0}e.pos=h,e.lastIntValue=n}return!0}if(s&&e.eat(123)&&this.regexp_eatHexDigits(e)&&e.eat(125)&&hn(e.lastIntValue))return!0;s&&e.raise("Invalid unicode escape"),e.pos=r}return!1};function hn(e){return e>=0&&e<=1114111}N.regexp_eatIdentityEscape=function(e){if(e.switchU)return this.regexp_eatSyntaxCharacter(e)?!0:e.eat(47)?(e.lastIntValue=47,!0):!1;var t=e.current();return t!==99&&(!e.switchN||t!==107)?(e.lastIntValue=t,e.advance(),!0):!1},N.regexp_eatDecimalEscape=function(e){e.lastIntValue=0;var t=e.current();if(t>=49&&t<=57){do e.lastIntValue=10*e.lastIntValue+(t-48),e.advance();while((t=e.current())>=48&&t<=57);return!0}return!1},N.regexp_eatCharacterClassEscape=function(e){var t=e.current();if(ln(t))return e.lastIntValue=-1,e.advance(),!0;if(e.switchU&&this.options.ecmaVersion>=9&&(t===80||t===112)){if(e.lastIntValue=-1,e.advance(),e.eat(123)&&this.regexp_eatUnicodePropertyValueExpression(e)&&e.eat(125))return!0;e.raise("Invalid property name")}return!1};function ln(e){return e===100||e===68||e===115||e===83||e===119||e===87}N.regexp_eatUnicodePropertyValueExpression=function(e){var t=e.pos;if(this.regexp_eatUnicodePropertyName(e)&&e.eat(61)){var r=e.lastStringValue;if(this.regexp_eatUnicodePropertyValue(e)){var s=e.lastStringValue;return this.regexp_validateUnicodePropertyNameAndValue(e,r,s),!0}}if(e.pos=t,this.regexp_eatLoneUnicodePropertyNameOrValue(e)){var n=e.lastStringValue;return this.regexp_validateUnicodePropertyNameOrValue(e,n),!0}return!1},N.regexp_validateUnicodePropertyNameAndValue=function(e,t,r){P(e.unicodeProperties.nonBinary,t)||e.raise("Invalid property name"),e.unicodeProperties.nonBinary[t].test(r)||e.raise("Invalid property value")},N.regexp_validateUnicodePropertyNameOrValue=function(e,t){e.unicodeProperties.binary.test(t)||e.raise("Invalid property name")},N.regexp_eatUnicodePropertyName=function(e){var t=0;for(e.lastStringValue="";Vr(t=e.current());)e.lastStringValue+=E(t),e.advance();return e.lastStringValue!==""};function Vr(e){return Lr(e)||e===95}N.regexp_eatUnicodePropertyValue=function(e){var t=0;for(e.lastStringValue="";cn(t=e.current());)e.lastStringValue+=E(t),e.advance();return e.lastStringValue!==""};function cn(e){return Vr(e)||Je(e)}N.regexp_eatLoneUnicodePropertyNameOrValue=function(e){return this.regexp_eatUnicodePropertyValue(e)},N.regexp_eatCharacterClass=function(e){if(e.eat(91)){if(e.eat(94),this.regexp_classRanges(e),e.eat(93))return!0;e.raise("Unterminated character class")}return!1},N.regexp_classRanges=function(e){for(;this.regexp_eatClassAtom(e);){var t=e.lastIntValue;if(e.eat(45)&&this.regexp_eatClassAtom(e)){var r=e.lastIntValue;e.switchU&&(t===-1||r===-1)&&e.raise("Invalid character class"),t!==-1&&r!==-1&&t>r&&e.raise("Range out of order in character class")}}},N.regexp_eatClassAtom=function(e){var t=e.pos;if(e.eat(92)){if(this.regexp_eatClassEscape(e))return!0;if(e.switchU){var r=e.current();(r===99||qr(r))&&e.raise("Invalid class escape"),e.raise("Invalid escape")}e.pos=t}var s=e.current();return s!==93?(e.lastIntValue=s,e.advance(),!0):!1},N.regexp_eatClassEscape=function(e){var t=e.pos;if(e.eat(98))return e.lastIntValue=8,!0;if(e.switchU&&e.eat(45))return e.lastIntValue=45,!0;if(!e.switchU&&e.eat(99)){if(this.regexp_eatClassControlLetter(e))return!0;e.pos=t}return this.regexp_eatCharacterClassEscape(e)||this.regexp_eatCharacterEscape(e)},N.regexp_eatClassControlLetter=function(e){var t=e.current();return Je(t)||t===95?(e.lastIntValue=t%32,e.advance(),!0):!1},N.regexp_eatHexEscapeSequence=function(e){var t=e.pos;if(e.eat(120)){if(this.regexp_eatFixedHexDigits(e,2))return!0;e.switchU&&e.raise("Invalid escape"),e.pos=t}return!1},N.regexp_eatDecimalDigits=function(e){var t=e.pos,r=0;for(e.lastIntValue=0;Je(r=e.current());)e.lastIntValue=10*e.lastIntValue+(r-48),e.advance();return e.pos!==t};function Je(e){return e>=48&&e<=57}N.regexp_eatHexDigits=function(e){var t=e.pos,r=0;for(e.lastIntValue=0;Rr(r=e.current());)e.lastIntValue=16*e.lastIntValue+jr(r),e.advance();return e.pos!==t};function Rr(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function jr(e){return e>=65&&e<=70?10+(e-65):e>=97&&e<=102?10+(e-97):e-48}N.regexp_eatLegacyOctalEscapeSequence=function(e){if(this.regexp_eatOctalDigit(e)){var t=e.lastIntValue;if(this.regexp_eatOctalDigit(e)){var r=e.lastIntValue;t<=3&&this.regexp_eatOctalDigit(e)?e.lastIntValue=t*64+r*8+e.lastIntValue:e.lastIntValue=t*8+r}else e.lastIntValue=t;return!0}return!1},N.regexp_eatOctalDigit=function(e){var t=e.current();return qr(t)?(e.lastIntValue=t-48,e.advance(),!0):(e.lastIntValue=0,!1)};function qr(e){return e>=48&&e<=55}N.regexp_eatFixedHexDigits=function(e,t){var r=e.pos;e.lastIntValue=0;for(var s=0;s=this.input.length)return this.finishToken(i.eof);if(e.override)return e.override(this);this.readToken(this.fullCharCodeAtPos())},z.readToken=function(e){return w(e,this.options.ecmaVersion>=6)||e===92?this.readWord():this.getTokenFromCode(e)},z.fullCharCodeAtPos=function(){var e=this.input.charCodeAt(this.pos);if(e<=55295||e>=56320)return e;var t=this.input.charCodeAt(this.pos+1);return t<=56319||t>=57344?e:(e<<10)+t-56613888},z.skipBlockComment=function(){var e=this.options.onComment&&this.curPosition(),t=this.pos,r=this.input.indexOf("*/",this.pos+=2);if(r===-1&&this.raise(this.pos-2,"Unterminated comment"),this.pos=r+2,this.options.locations)for(var s=void 0,n=t;(s=Z(this.input,n,this.pos))>-1;)++this.curLine,n=this.lineStart=s;this.options.onComment&&this.options.onComment(!0,this.input.slice(t+2,r),t,this.pos,e,this.curPosition())},z.skipLineComment=function(e){for(var t=this.pos,r=this.options.onComment&&this.curPosition(),s=this.input.charCodeAt(this.pos+=e);this.pos8&&e<14||e>=5760&&ne.test(String.fromCharCode(e)))++this.pos;else break e}}},z.finishToken=function(e,t){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var r=this.type;this.type=e,this.value=t,this.updateContext(r)},z.readToken_dot=function(){var e=this.input.charCodeAt(this.pos+1);if(e>=48&&e<=57)return this.readNumber(!0);var t=this.input.charCodeAt(this.pos+2);return this.options.ecmaVersion>=6&&e===46&&t===46?(this.pos+=3,this.finishToken(i.ellipsis)):(++this.pos,this.finishToken(i.dot))},z.readToken_slash=function(){var e=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):e===61?this.finishOp(i.assign,2):this.finishOp(i.slash,1)},z.readToken_mult_modulo_exp=function(e){var t=this.input.charCodeAt(this.pos+1),r=1,s=e===42?i.star:i.modulo;return this.options.ecmaVersion>=7&&e===42&&t===42&&(++r,s=i.starstar,t=this.input.charCodeAt(this.pos+2)),t===61?this.finishOp(i.assign,r+1):this.finishOp(s,r)},z.readToken_pipe_amp=function(e){var t=this.input.charCodeAt(this.pos+1);if(t===e){if(this.options.ecmaVersion>=12){var r=this.input.charCodeAt(this.pos+2);if(r===61)return this.finishOp(i.assign,3)}return this.finishOp(e===124?i.logicalOR:i.logicalAND,2)}return t===61?this.finishOp(i.assign,2):this.finishOp(e===124?i.bitwiseOR:i.bitwiseAND,1)},z.readToken_caret=function(){var e=this.input.charCodeAt(this.pos+1);return e===61?this.finishOp(i.assign,2):this.finishOp(i.bitwiseXOR,1)},z.readToken_plus_min=function(e){var t=this.input.charCodeAt(this.pos+1);return t===e?t===45&&!this.inModule&&this.input.charCodeAt(this.pos+2)===62&&(this.lastTokEnd===0||S.test(this.input.slice(this.lastTokEnd,this.pos)))?(this.skipLineComment(3),this.skipSpace(),this.nextToken()):this.finishOp(i.incDec,2):t===61?this.finishOp(i.assign,2):this.finishOp(i.plusMin,1)},z.readToken_lt_gt=function(e){var t=this.input.charCodeAt(this.pos+1),r=1;return t===e?(r=e===62&&this.input.charCodeAt(this.pos+2)===62?3:2,this.input.charCodeAt(this.pos+r)===61?this.finishOp(i.assign,r+1):this.finishOp(i.bitShift,r)):t===33&&e===60&&!this.inModule&&this.input.charCodeAt(this.pos+2)===45&&this.input.charCodeAt(this.pos+3)===45?(this.skipLineComment(4),this.skipSpace(),this.nextToken()):(t===61&&(r=2),this.finishOp(i.relational,r))},z.readToken_eq_excl=function(e){var t=this.input.charCodeAt(this.pos+1);return t===61?this.finishOp(i.equality,this.input.charCodeAt(this.pos+2)===61?3:2):e===61&&t===62&&this.options.ecmaVersion>=6?(this.pos+=2,this.finishToken(i.arrow)):this.finishOp(e===61?i.eq:i.prefix,1)},z.readToken_question=function(){var e=this.options.ecmaVersion;if(e>=11){var t=this.input.charCodeAt(this.pos+1);if(t===46){var r=this.input.charCodeAt(this.pos+2);if(r<48||r>57)return this.finishOp(i.questionDot,2)}if(t===63){if(e>=12){var s=this.input.charCodeAt(this.pos+2);if(s===61)return this.finishOp(i.assign,3)}return this.finishOp(i.coalesce,2)}}return this.finishOp(i.question,1)},z.readToken_numberSign=function(){var e=this.options.ecmaVersion,t=35;if(e>=13&&(++this.pos,t=this.fullCharCodeAtPos(),w(t,!0)||t===92))return this.finishToken(i.privateId,this.readWord1());this.raise(this.pos,"Unexpected character '"+E(t)+"'")},z.getTokenFromCode=function(e){switch(e){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(i.parenL);case 41:return++this.pos,this.finishToken(i.parenR);case 59:return++this.pos,this.finishToken(i.semi);case 44:return++this.pos,this.finishToken(i.comma);case 91:return++this.pos,this.finishToken(i.bracketL);case 93:return++this.pos,this.finishToken(i.bracketR);case 123:return++this.pos,this.finishToken(i.braceL);case 125:return++this.pos,this.finishToken(i.braceR);case 58:return++this.pos,this.finishToken(i.colon);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,this.finishToken(i.backQuote);case 48:var t=this.input.charCodeAt(this.pos+1);if(t===120||t===88)return this.readRadixNumber(16);if(this.options.ecmaVersion>=6){if(t===111||t===79)return this.readRadixNumber(8);if(t===98||t===66)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(e);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo_exp(e);case 124:case 38:return this.readToken_pipe_amp(e);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(e);case 60:case 62:return this.readToken_lt_gt(e);case 61:case 33:return this.readToken_eq_excl(e);case 63:return this.readToken_question();case 126:return this.finishOp(i.prefix,1);case 35:return this.readToken_numberSign()}this.raise(this.pos,"Unexpected character '"+E(e)+"'")},z.finishOp=function(e,t){var r=this.input.slice(this.pos,this.pos+t);return this.pos+=t,this.finishToken(e,r)},z.readRegexp=function(){for(var e,t,r=this.pos;;){this.pos>=this.input.length&&this.raise(r,"Unterminated regular expression");var s=this.input.charAt(this.pos);if(S.test(s)&&this.raise(r,"Unterminated regular expression"),e)e=!1;else{if(s==="[")t=!0;else if(s==="]"&&t)t=!1;else if(s==="/"&&!t)break;e=s==="\\"}++this.pos}var n=this.input.slice(r,this.pos);++this.pos;var h=this.pos,c=this.readWord1();this.containsEsc&&this.unexpected(h);var m=this.regexpState||(this.regexpState=new ge(this));m.reset(r,n,c),this.validateRegExpFlags(m),this.validateRegExpPattern(m);var A=null;try{A=new RegExp(n,c)}catch{}return this.finishToken(i.regexp,{pattern:n,flags:c,value:A})},z.readInt=function(e,t,r){for(var s=this.options.ecmaVersion>=12&&t===void 0,n=r&&this.input.charCodeAt(this.pos)===48,h=this.pos,c=0,m=0,A=0,q=t==null?1/0:t;A=97?re=W-97+10:W>=65?re=W-65+10:W>=48&&W<=57?re=W-48:re=1/0,re>=e)break;m=W,c=c*e+re}return s&&m===95&&this.raiseRecoverable(this.pos-1,"Numeric separator is not allowed at the last of digits"),this.pos===h||t!=null&&this.pos-h!==t?null:c};function pn(e,t){return t?parseInt(e,8):parseFloat(e.replace(/_/g,""))}function Mr(e){return typeof BigInt!="function"?null:BigInt(e.replace(/_/g,""))}z.readRadixNumber=function(e){var t=this.pos;this.pos+=2;var r=this.readInt(e);return r==null&&this.raise(this.start+2,"Expected number in radix "+e),this.options.ecmaVersion>=11&&this.input.charCodeAt(this.pos)===110?(r=Mr(this.input.slice(t,this.pos)),++this.pos):w(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(i.num,r)},z.readNumber=function(e){var t=this.pos;!e&&this.readInt(10,void 0,!0)===null&&this.raise(t,"Invalid number");var r=this.pos-t>=2&&this.input.charCodeAt(t)===48;r&&this.strict&&this.raise(t,"Invalid number");var s=this.input.charCodeAt(this.pos);if(!r&&!e&&this.options.ecmaVersion>=11&&s===110){var n=Mr(this.input.slice(t,this.pos));return++this.pos,w(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(i.num,n)}r&&/[89]/.test(this.input.slice(t,this.pos))&&(r=!1),s===46&&!r&&(++this.pos,this.readInt(10),s=this.input.charCodeAt(this.pos)),(s===69||s===101)&&!r&&(s=this.input.charCodeAt(++this.pos),(s===43||s===45)&&++this.pos,this.readInt(10)===null&&this.raise(t,"Invalid number")),w(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var h=pn(this.input.slice(t,this.pos),r);return this.finishToken(i.num,h)},z.readCodePoint=function(){var e=this.input.charCodeAt(this.pos),t;if(e===123){this.options.ecmaVersion<6&&this.unexpected();var r=++this.pos;t=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,t>1114111&&this.invalidStringToken(r,"Code point out of bounds")}else t=this.readHexChar(4);return t},z.readString=function(e){for(var t="",r=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var s=this.input.charCodeAt(this.pos);if(s===e)break;s===92?(t+=this.input.slice(r,this.pos),t+=this.readEscapedChar(!1),r=this.pos):s===8232||s===8233?(this.options.ecmaVersion<10&&this.raise(this.start,"Unterminated string constant"),++this.pos,this.options.locations&&(this.curLine++,this.lineStart=this.pos)):(j(s)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return t+=this.input.slice(r,this.pos++),this.finishToken(i.string,t)};var Ur={};z.tryReadTemplateToken=function(){this.inTemplateElement=!0;try{this.readTmplToken()}catch(e){if(e===Ur)this.readInvalidTemplateToken();else throw e}this.inTemplateElement=!1},z.invalidStringToken=function(e,t){if(this.inTemplateElement&&this.options.ecmaVersion>=9)throw Ur;this.raise(e,t)},z.readTmplToken=function(){for(var e="",t=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var r=this.input.charCodeAt(this.pos);if(r===96||r===36&&this.input.charCodeAt(this.pos+1)===123)return this.pos===this.start&&(this.type===i.template||this.type===i.invalidTemplate)?r===36?(this.pos+=2,this.finishToken(i.dollarBraceL)):(++this.pos,this.finishToken(i.backQuote)):(e+=this.input.slice(t,this.pos),this.finishToken(i.template,e));if(r===92)e+=this.input.slice(t,this.pos),e+=this.readEscapedChar(!0),t=this.pos;else if(j(r)){switch(e+=this.input.slice(t,this.pos),++this.pos,r){case 13:this.input.charCodeAt(this.pos)===10&&++this.pos;case 10:e+=` +`;break;default:e+=String.fromCharCode(r);break}this.options.locations&&(++this.curLine,this.lineStart=this.pos),t=this.pos}else++this.pos}},z.readInvalidTemplateToken=function(){for(;this.pos=48&&t<=55){var s=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],n=parseInt(s,8);return n>255&&(s=s.slice(0,-1),n=parseInt(s,8)),this.pos+=s.length-1,t=this.input.charCodeAt(this.pos),(s!=="0"||t===56||t===57)&&(this.strict||e)&&this.invalidStringToken(this.pos-1-s.length,e?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(n)}return j(t)?"":String.fromCharCode(t)}},z.readHexChar=function(e){var t=this.pos,r=this.readInt(16,e);return r===null&&this.invalidStringToken(t,"Bad character escape sequence"),r},z.readWord1=function(){this.containsEsc=!1;for(var e="",t=!0,r=this.pos,s=this.options.ecmaVersion>=6;this.pos",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"}}}),Ha=$({"node_modules/acorn-jsx/index.js"(a,u){"use strict";J();var o=Hh(),l=/^[\da-fA-F]+$/,v=/^\d+$/,b=new WeakMap;function y(x){x=x.Parser.acorn||x;let R=b.get(x);if(!R){let U=x.tokTypes,D=x.TokContext,g=x.TokenType,w=new D("...",!0,!0),B={tc_oTag:w,tc_cTag:G,tc_expr:f},V={jsxName:new g("jsxName"),jsxText:new g("jsxText",{beforeExpr:!0}),jsxTagStart:new g("jsxTagStart",{startsExpr:!0}),jsxTagEnd:new g("jsxTagEnd")};V.jsxTagStart.updateContext=function(){this.context.push(f),this.context.push(w),this.exprAllowed=!1},V.jsxTagEnd.updateContext=function(k){let X=this.context.pop();X===w&&k===U.slash||X===G?(this.context.pop(),this.exprAllowed=this.curContext()===f):this.exprAllowed=!0},R={tokContexts:B,tokTypes:V},b.set(x,R)}return R}function I(x){if(!x)return x;if(x.type==="JSXIdentifier")return x.name;if(x.type==="JSXNamespacedName")return x.namespace.name+":"+x.name.name;if(x.type==="JSXMemberExpression")return I(x.object)+"."+I(x.property)}u.exports=function(x){return x=x||{},function(R){return T({allowNamespaces:x.allowNamespaces!==!1,allowNamespacedObjects:!!x.allowNamespacedObjects},R)}},Object.defineProperty(u.exports,"tokTypes",{get:function(){return y(ft()).tokTypes},configurable:!0,enumerable:!0});function T(x,R){let U=R.acorn||ft(),D=y(U),g=U.tokTypes,w=D.tokTypes,G=U.tokContexts,f=D.tokContexts.tc_oTag,B=D.tokContexts.tc_cTag,V=D.tokContexts.tc_expr,k=U.isNewLine,X=U.isIdentifierStart,O=U.isIdentifierChar;return class extends R{static get acornJsx(){return D}jsx_readToken(){let i="",S=this.pos;for(;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated JSX contents");let F=this.input.charCodeAt(this.pos);switch(F){case 60:case 123:return this.pos===this.start?F===60&&this.exprAllowed?(++this.pos,this.finishToken(w.jsxTagStart)):this.getTokenFromCode(F):(i+=this.input.slice(S,this.pos),this.finishToken(w.jsxText,i));case 38:i+=this.input.slice(S,this.pos),i+=this.jsx_readEntity(),S=this.pos;break;case 62:case 125:this.raise(this.pos,"Unexpected token `"+this.input[this.pos]+"`. Did you mean `"+(F===62?">":"}")+'` or `{"'+this.input[this.pos]+'"}`?');default:k(F)?(i+=this.input.slice(S,this.pos),i+=this.jsx_readNewLine(!0),S=this.pos):++this.pos}}}jsx_readNewLine(i){let S=this.input.charCodeAt(this.pos),F;return++this.pos,S===13&&this.input.charCodeAt(this.pos)===10?(++this.pos,F=i?` +`:`\r +`):F=String.fromCharCode(S),this.options.locations&&(++this.curLine,this.lineStart=this.pos),F}jsx_readString(i){let S="",F=++this.pos;for(;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");let j=this.input.charCodeAt(this.pos);if(j===i)break;j===38?(S+=this.input.slice(F,this.pos),S+=this.jsx_readEntity(),F=this.pos):k(j)?(S+=this.input.slice(F,this.pos),S+=this.jsx_readNewLine(!1),F=this.pos):++this.pos}return S+=this.input.slice(F,this.pos++),this.finishToken(g.string,S)}jsx_readEntity(){let i="",S=0,F,j=this.input[this.pos];j!=="&"&&this.raise(this.pos,"Entity must start with an ampersand");let Z=++this.pos;for(;this.pos")}let ee=Z.name?"Element":"Fragment";return F["opening"+ee]=Z,F["closing"+ee]=ne,F.children=j,this.type===g.relational&&this.value==="<"&&this.raise(this.start,"Adjacent JSX elements must be wrapped in an enclosing tag"),this.finishNode(F,"JSX"+ee)}jsx_parseText(){let i=this.parseLiteral(this.value);return i.type="JSXText",i}jsx_parseElement(){let i=this.start,S=this.startLoc;return this.next(),this.jsx_parseElementAt(i,S)}parseExprAtom(i){return this.type===w.jsxText?this.jsx_parseText():this.type===w.jsxTagStart?this.jsx_parseElement():super.parseExprAtom(i)}readToken(i){let S=this.curContext();if(S===V)return this.jsx_readToken();if(S===f||S===B){if(X(i))return this.jsx_readWord();if(i==62)return++this.pos,this.finishToken(w.jsxTagEnd);if((i===34||i===39)&&S==f)return this.jsx_readString(i)}return i===60&&this.exprAllowed&&this.input.charCodeAt(this.pos+1)!==33?(++this.pos,this.finishToken(w.jsxTagStart)):super.readToken(i)}updateContext(i){if(this.type==g.braceL){var S=this.curContext();S==f?this.context.push(G.b_expr):S==V?this.context.push(G.b_tmpl):super.updateContext(i),this.exprAllowed=!0}else if(this.type===g.slash&&i===w.jsxTagStart)this.context.length-=2,this.context.push(B),this.exprAllowed=!1;else return super.updateContext(i)}}}}}),Kh=$({"src/language-js/parse/acorn.js"(a,u){"use strict";J();var o=dr(),l=Ba(),v=za(),b=Ga(),y={ecmaVersion:"latest",sourceType:"module",allowReserved:!0,allowReturnOutsideFunction:!0,allowImportExportEverywhere:!0,allowAwaitOutsideFunction:!0,allowSuperOutsideMethod:!0,allowHashBang:!0,locations:!0,ranges:!0};function I(D){let{message:g,loc:w}=D;if(!w)return D;let{line:G,column:f}=w;return o(g.replace(/ \(\d+:\d+\)$/,""),{start:{line:G,column:f+1}})}var T,x=()=>{if(!T){let{Parser:D}=ft(),g=Ha();T=D.extend(g())}return T};function R(D,g){let w=x(),G=[],f=[],B=w.parse(D,Object.assign(Object.assign({},y),{},{sourceType:g,onComment:G,onToken:f}));return B.comments=G,B.tokens=f,B}function U(D,g){let w=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{result:G,error:f}=l(()=>R(D,"module"),()=>R(D,"script"));if(!G)throw I(f);return w.originalText=D,b(G,w)}u.exports=v(U)}}),Xh=$({"src/language-js/parse/utils/replace-hashbang.js"(a,u){"use strict";J();function o(l){return l.charAt(0)==="#"&&l.charAt(1)==="!"?"//"+l.slice(2):l}u.exports=o}}),Jh=$({"node_modules/espree/dist/espree.cjs"(a){"use strict";J(),Object.defineProperty(a,"__esModule",{value:!0});var u=ft(),o=Ha(),l;function v(p){return p&&typeof p=="object"&&"default"in p?p:{default:p}}function b(p){if(p&&p.__esModule)return p;var P=Object.create(null);return p&&Object.keys(p).forEach(function(_){if(_!=="default"){var d=Object.getOwnPropertyDescriptor(p,_);Object.defineProperty(P,_,d.get?d:{enumerable:!0,get:function(){return p[_]}})}}),P.default=p,Object.freeze(P)}var y=b(u),I=v(o),T=b(l),x={Boolean:"Boolean",EOF:"",Identifier:"Identifier",PrivateIdentifier:"PrivateIdentifier",Keyword:"Keyword",Null:"Null",Numeric:"Numeric",Punctuator:"Punctuator",String:"String",RegularExpression:"RegularExpression",Template:"Template",JSXIdentifier:"JSXIdentifier",JSXText:"JSXText"};function R(p,P){let _=p[0],d=p[p.length-1],E={type:x.Template,value:P.slice(_.start,d.end)};return _.loc&&(E.loc={start:_.loc.start,end:d.loc.end}),_.range&&(E.start=_.range[0],E.end=d.range[1],E.range=[E.start,E.end]),E}function U(p,P){this._acornTokTypes=p,this._tokens=[],this._curlyBrace=null,this._code=P}U.prototype={constructor:U,translate(p,P){let _=p.type,d=this._acornTokTypes;if(_===d.name)p.type=x.Identifier,p.value==="static"&&(p.type=x.Keyword),P.ecmaVersion>5&&(p.value==="yield"||p.value==="let")&&(p.type=x.Keyword);else if(_===d.privateId)p.type=x.PrivateIdentifier;else if(_===d.semi||_===d.comma||_===d.parenL||_===d.parenR||_===d.braceL||_===d.braceR||_===d.dot||_===d.bracketL||_===d.colon||_===d.question||_===d.bracketR||_===d.ellipsis||_===d.arrow||_===d.jsxTagStart||_===d.incDec||_===d.starstar||_===d.jsxTagEnd||_===d.prefix||_===d.questionDot||_.binop&&!_.keyword||_.isAssign)p.type=x.Punctuator,p.value=this._code.slice(p.start,p.end);else if(_===d.jsxName)p.type=x.JSXIdentifier;else if(_.label==="jsxText"||_===d.jsxAttrValueToken)p.type=x.JSXText;else if(_.keyword)_.keyword==="true"||_.keyword==="false"?p.type=x.Boolean:_.keyword==="null"?p.type=x.Null:p.type=x.Keyword;else if(_===d.num)p.type=x.Numeric,p.value=this._code.slice(p.start,p.end);else if(_===d.string)P.jsxAttrValueToken?(P.jsxAttrValueToken=!1,p.type=x.JSXText):p.type=x.String,p.value=this._code.slice(p.start,p.end);else if(_===d.regexp){p.type=x.RegularExpression;let E=p.value;p.regex={flags:E.flags,pattern:E.pattern},p.value=`/${E.pattern}/${E.flags}`}return p},onToken(p,P){let _=this,d=this._acornTokTypes,E=P.tokens,K=this._tokens;function H(){E.push(R(_._tokens,_._code)),_._tokens=[]}if(p.type===d.eof){this._curlyBrace&&E.push(this.translate(this._curlyBrace,P));return}if(p.type===d.backQuote){this._curlyBrace&&(E.push(this.translate(this._curlyBrace,P)),this._curlyBrace=null),K.push(p),K.length>1&&H();return}if(p.type===d.dollarBraceL){K.push(p),H();return}if(p.type===d.braceR){this._curlyBrace&&E.push(this.translate(this._curlyBrace,P)),this._curlyBrace=p;return}if(p.type===d.template||p.type===d.invalidTemplate){this._curlyBrace&&(K.push(this._curlyBrace),this._curlyBrace=null),K.push(p);return}this._curlyBrace&&(E.push(this.translate(this._curlyBrace,P)),this._curlyBrace=null),E.push(this.translate(p,P))}};var D=[3,5,6,7,8,9,10,11,12,13,14];function g(){return D[D.length-1]}function w(){return[...D]}function G(){let p=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5,P=p==="latest"?g():p;if(typeof P!="number")throw new Error(`ecmaVersion must be a number or "latest". Received value of type ${typeof p} instead.`);if(P>=2015&&(P-=2009),!D.includes(P))throw new Error("Invalid ecmaVersion.");return P}function f(){let p=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"script";if(p==="script"||p==="module")return p;if(p==="commonjs")return"script";throw new Error("Invalid sourceType.")}function B(p){let P=G(p.ecmaVersion),_=f(p.sourceType),d=p.range===!0,E=p.loc===!0;if(P!==3&&p.allowReserved)throw new Error("`allowReserved` is only supported when ecmaVersion is 3");if(typeof p.allowReserved<"u"&&typeof p.allowReserved!="boolean")throw new Error("`allowReserved`, when present, must be `true` or `false`");let K=P===3?p.allowReserved||"never":!1,H=p.ecmaFeatures||{},te=p.sourceType==="commonjs"||Boolean(H.globalReturn);if(_==="module"&&P<6)throw new Error("sourceType 'module' is not supported when ecmaVersion < 2015. Consider adding `{ ecmaVersion: 2015 }` to the parser options.");return Object.assign({},p,{ecmaVersion:P,sourceType:_,ranges:d,locations:E,allowReserved:K,allowReturnOutsideFunction:te})}var V=Symbol("espree's internal state"),k=Symbol("espree's esprimaFinishNode");function X(p,P,_,d,E,K,H){let te;p?te="Block":H.slice(_,_+2)==="#!"?te="Hashbang":te="Line";let ae={type:te,value:P};return typeof _=="number"&&(ae.start=_,ae.end=d,ae.range=[_,d]),typeof E=="object"&&(ae.loc={start:E,end:K}),ae}var O=()=>p=>{let P=Object.assign({},p.acorn.tokTypes);return p.acornJsx&&Object.assign(P,p.acornJsx.tokTypes),class extends p{constructor(d,E){(typeof d!="object"||d===null)&&(d={}),typeof E!="string"&&!(E instanceof String)&&(E=String(E));let K=d.sourceType,H=B(d),te=H.ecmaFeatures||{},ae=H.tokens===!0?new U(P,E):null,fe={originalSourceType:K||H.sourceType,tokens:ae?[]:null,comments:H.comment===!0?[]:null,impliedStrict:te.impliedStrict===!0&&H.ecmaVersion>=5,ecmaVersion:H.ecmaVersion,jsxAttrValueToken:!1,lastToken:null,templateElements:[]};super({ecmaVersion:H.ecmaVersion,sourceType:H.sourceType,ranges:H.ranges,locations:H.locations,allowReserved:H.allowReserved,allowReturnOutsideFunction:H.allowReturnOutsideFunction,onToken:Ae=>{ae&&ae.onToken(Ae,fe),Ae.type!==P.eof&&(fe.lastToken=Ae)},onComment:(Ae,dt,mt,_e,Ce,Oe)=>{if(fe.comments){let ze=X(Ae,dt,mt,_e,Ce,Oe,E);fe.comments.push(ze)}}},E),this[V]=fe}tokenize(){do this.next();while(this.type!==P.eof);this.next();let d=this[V],E=d.tokens;return d.comments&&(E.comments=d.comments),E}finishNode(){let d=super.finishNode(...arguments);return this[k](d)}finishNodeAt(){let d=super.finishNodeAt(...arguments);return this[k](d)}parse(){let d=this[V],E=super.parse();if(E.sourceType=d.originalSourceType,d.comments&&(E.comments=d.comments),d.tokens&&(E.tokens=d.tokens),E.body.length){let[K]=E.body;E.range&&(E.range[0]=K.range[0]),E.loc&&(E.loc.start=K.loc.start),E.start=K.start}return d.lastToken&&(E.range&&(E.range[1]=d.lastToken.range[1]),E.loc&&(E.loc.end=d.lastToken.loc.end),E.end=d.lastToken.end),this[V].templateElements.forEach(K=>{let te=K.tail?1:2;K.start+=-1,K.end+=te,K.range&&(K.range[0]+=-1,K.range[1]+=te),K.loc&&(K.loc.start.column+=-1,K.loc.end.column+=te)}),E}parseTopLevel(d){return this[V].impliedStrict&&(this.strict=!0),super.parseTopLevel(d)}raise(d,E){let K=p.acorn.getLineInfo(this.input,d),H=new SyntaxError(E);throw H.index=d,H.lineNumber=K.line,H.column=K.column+1,H}raiseRecoverable(d,E){this.raise(d,E)}unexpected(d){let E="Unexpected token";if(d!=null){if(this.pos=d,this.options.locations)for(;this.posthis.start&&(E+=` ${this.input.slice(this.start,this.end)}`),this.raise(this.start,E)}jsx_readString(d){let E=super.jsx_readString(d);return this.type===P.string&&(this[V].jsxAttrValueToken=!0),E}[k](d){return d.type==="TemplateElement"&&this[V].templateElements.push(d),d.type.includes("Function")&&!d.generator&&(d.generator=!1),d}}},i="9.4.1",S={_regular:null,_jsx:null,get regular(){return this._regular===null&&(this._regular=y.Parser.extend(O())),this._regular},get jsx(){return this._jsx===null&&(this._jsx=y.Parser.extend(I.default(),O())),this._jsx},get(p){return Boolean(p&&p.ecmaFeatures&&p.ecmaFeatures.jsx)?this.jsx:this.regular}};function F(p,P){let _=S.get(P);return(!P||P.tokens!==!0)&&(P=Object.assign({},P,{tokens:!0})),new _(P,p).tokenize()}function j(p,P){let _=S.get(P);return new _(P,p).parse()}var Z=i,ne=function(){return T.KEYS}(),ee=void 0,ie=g(),Ne=w();a.Syntax=ee,a.VisitorKeys=ne,a.latestEcmaVersion=ie,a.parse=j,a.supportedEcmaVersions=Ne,a.tokenize=F,a.version=Z}}),Qh=$({"src/language-js/parse/espree.js"(a,u){"use strict";J();var o=dr(),l=Ba(),v=za(),b=Xh(),y=Ga(),I={ecmaVersion:"latest",range:!0,loc:!0,comment:!0,tokens:!0,sourceType:"module",ecmaFeatures:{jsx:!0,globalReturn:!0,impliedStrict:!1}};function T(R){let{message:U,lineNumber:D,column:g}=R;return typeof D!="number"?R:o(U,{start:{line:D,column:g}})}function x(R,U){let D=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{parse:g}=Jh(),w=b(R),{result:G,error:f}=l(()=>g(w,Object.assign(Object.assign({},I),{},{sourceType:"module"})),()=>g(w,Object.assign(Object.assign({},I),{},{sourceType:"script"})));if(!G)throw T(f);return D.originalText=R,y(G,D)}u.exports=v(x)}});J();var $h=Kh(),Yh=Qh();Ka.exports={parsers:{acorn:$h,espree:Yh}}});return Zh();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-flow.js b/node_modules/prettier/parser-flow.js new file mode 100644 index 0000000..b5d224b --- /dev/null +++ b/node_modules/prettier/parser-flow.js @@ -0,0 +1,35 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.flow=e()}})(function(){"use strict";var Ne=(A0,j0)=>()=>(j0||A0((j0={exports:{}}).exports,j0),j0.exports);var Ii=Ne((Mae,in0)=>{var h_=function(A0){return A0&&A0.Math==Math&&A0};in0.exports=h_(typeof globalThis=="object"&&globalThis)||h_(typeof window=="object"&&window)||h_(typeof self=="object"&&self)||h_(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var Wc=Ne((Bae,fn0)=>{fn0.exports=function(A0){try{return!!A0()}catch{return!0}}});var ws=Ne((qae,xn0)=>{var V7e=Wc();xn0.exports=!V7e(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var BR=Ne((Uae,an0)=>{var z7e=Wc();an0.exports=!z7e(function(){var A0=function(){}.bind();return typeof A0!="function"||A0.hasOwnProperty("prototype")})});var w_=Ne((Hae,on0)=>{var K7e=BR(),k_=Function.prototype.call;on0.exports=K7e?k_.bind(k_):function(){return k_.apply(k_,arguments)}});var ln0=Ne(vn0=>{"use strict";var cn0={}.propertyIsEnumerable,sn0=Object.getOwnPropertyDescriptor,W7e=sn0&&!cn0.call({1:2},1);vn0.f=W7e?function(j0){var ur=sn0(this,j0);return!!ur&&ur.enumerable}:cn0});var qR=Ne((Yae,bn0)=>{bn0.exports=function(A0,j0){return{enumerable:!(A0&1),configurable:!(A0&2),writable:!(A0&4),value:j0}}});var Es=Ne((Vae,_n0)=>{var pn0=BR(),mn0=Function.prototype,UR=mn0.call,J7e=pn0&&mn0.bind.bind(UR,UR);_n0.exports=pn0?J7e:function(A0){return function(){return UR.apply(A0,arguments)}}});var hn0=Ne((zae,dn0)=>{var yn0=Es(),$7e=yn0({}.toString),Z7e=yn0("".slice);dn0.exports=function(A0){return Z7e($7e(A0),8,-1)}});var wn0=Ne((Kae,kn0)=>{var Q7e=Es(),rie=Wc(),eie=hn0(),HR=Object,nie=Q7e("".split);kn0.exports=rie(function(){return!HR("z").propertyIsEnumerable(0)})?function(A0){return eie(A0)=="String"?nie(A0,""):HR(A0)}:HR});var XR=Ne((Wae,En0)=>{En0.exports=function(A0){return A0==null}});var YR=Ne((Jae,Sn0)=>{var tie=XR(),uie=TypeError;Sn0.exports=function(A0){if(tie(A0))throw uie("Can't call method on "+A0);return A0}});var E_=Ne(($ae,gn0)=>{var iie=wn0(),fie=YR();gn0.exports=function(A0){return iie(fie(A0))}});var zR=Ne((Zae,Fn0)=>{var VR=typeof document=="object"&&document.all,xie=typeof VR>"u"&&VR!==void 0;Fn0.exports={all:VR,IS_HTMLDDA:xie}});var $i=Ne((Qae,On0)=>{var Tn0=zR(),aie=Tn0.all;On0.exports=Tn0.IS_HTMLDDA?function(A0){return typeof A0=="function"||A0===aie}:function(A0){return typeof A0=="function"}});var S2=Ne((roe,Nn0)=>{var In0=$i(),An0=zR(),oie=An0.all;Nn0.exports=An0.IS_HTMLDDA?function(A0){return typeof A0=="object"?A0!==null:In0(A0)||A0===oie}:function(A0){return typeof A0=="object"?A0!==null:In0(A0)}});var S_=Ne((eoe,Cn0)=>{var KR=Ii(),cie=$i(),sie=function(A0){return cie(A0)?A0:void 0};Cn0.exports=function(A0,j0){return arguments.length<2?sie(KR[A0]):KR[A0]&&KR[A0][j0]}});var Dn0=Ne((noe,Pn0)=>{var vie=Es();Pn0.exports=vie({}.isPrototypeOf)});var Rn0=Ne((toe,Ln0)=>{var lie=S_();Ln0.exports=lie("navigator","userAgent")||""});var Hn0=Ne((uoe,Un0)=>{var qn0=Ii(),WR=Rn0(),jn0=qn0.process,Gn0=qn0.Deno,Mn0=jn0&&jn0.versions||Gn0&&Gn0.version,Bn0=Mn0&&Mn0.v8,Zi,g_;Bn0&&(Zi=Bn0.split("."),g_=Zi[0]>0&&Zi[0]<4?1:+(Zi[0]+Zi[1]));!g_&&WR&&(Zi=WR.match(/Edge\/(\d+)/),(!Zi||Zi[1]>=74)&&(Zi=WR.match(/Chrome\/(\d+)/),Zi&&(g_=+Zi[1])));Un0.exports=g_});var JR=Ne((ioe,Yn0)=>{var Xn0=Hn0(),bie=Wc();Yn0.exports=!!Object.getOwnPropertySymbols&&!bie(function(){var A0=Symbol();return!String(A0)||!(Object(A0)instanceof Symbol)||!Symbol.sham&&Xn0&&Xn0<41})});var $R=Ne((foe,Vn0)=>{var pie=JR();Vn0.exports=pie&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var ZR=Ne((xoe,zn0)=>{var mie=S_(),_ie=$i(),yie=Dn0(),die=$R(),hie=Object;zn0.exports=die?function(A0){return typeof A0=="symbol"}:function(A0){var j0=mie("Symbol");return _ie(j0)&&yie(j0.prototype,hie(A0))}});var Wn0=Ne((aoe,Kn0)=>{var kie=String;Kn0.exports=function(A0){try{return kie(A0)}catch{return"Object"}}});var $n0=Ne((ooe,Jn0)=>{var wie=$i(),Eie=Wn0(),Sie=TypeError;Jn0.exports=function(A0){if(wie(A0))return A0;throw Sie(Eie(A0)+" is not a function")}});var Qn0=Ne((coe,Zn0)=>{var gie=$n0(),Fie=XR();Zn0.exports=function(A0,j0){var ur=A0[j0];return Fie(ur)?void 0:gie(ur)}});var et0=Ne((soe,rt0)=>{var QR=w_(),rj=$i(),ej=S2(),Tie=TypeError;rt0.exports=function(A0,j0){var ur,hr;if(j0==="string"&&rj(ur=A0.toString)&&!ej(hr=QR(ur,A0))||rj(ur=A0.valueOf)&&!ej(hr=QR(ur,A0))||j0!=="string"&&rj(ur=A0.toString)&&!ej(hr=QR(ur,A0)))return hr;throw Tie("Can't convert object to primitive value")}});var tt0=Ne((voe,nt0)=>{nt0.exports=!1});var F_=Ne((loe,it0)=>{var ut0=Ii(),Oie=Object.defineProperty;it0.exports=function(A0,j0){try{Oie(ut0,A0,{value:j0,configurable:!0,writable:!0})}catch{ut0[A0]=j0}return j0}});var T_=Ne((boe,xt0)=>{var Iie=Ii(),Aie=F_(),ft0="__core-js_shared__",Nie=Iie[ft0]||Aie(ft0,{});xt0.exports=Nie});var nj=Ne((poe,ot0)=>{var Cie=tt0(),at0=T_();(ot0.exports=function(A0,j0){return at0[A0]||(at0[A0]=j0!==void 0?j0:{})})("versions",[]).push({version:"3.26.1",mode:Cie?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var st0=Ne((moe,ct0)=>{var Pie=YR(),Die=Object;ct0.exports=function(A0){return Die(Pie(A0))}});var n1=Ne((_oe,vt0)=>{var Lie=Es(),Rie=st0(),jie=Lie({}.hasOwnProperty);vt0.exports=Object.hasOwn||function(j0,ur){return jie(Rie(j0),ur)}});var tj=Ne((yoe,lt0)=>{var Gie=Es(),Mie=0,Bie=Math.random(),qie=Gie(1 .toString);lt0.exports=function(A0){return"Symbol("+(A0===void 0?"":A0)+")_"+qie(++Mie+Bie,36)}});var dt0=Ne((doe,yt0)=>{var Uie=Ii(),Hie=nj(),bt0=n1(),Xie=tj(),pt0=JR(),_t0=$R(),g2=Hie("wks"),xv=Uie.Symbol,mt0=xv&&xv.for,Yie=_t0?xv:xv&&xv.withoutSetter||Xie;yt0.exports=function(A0){if(!bt0(g2,A0)||!(pt0||typeof g2[A0]=="string")){var j0="Symbol."+A0;pt0&&bt0(xv,A0)?g2[A0]=xv[A0]:_t0&&mt0?g2[A0]=mt0(j0):g2[A0]=Yie(j0)}return g2[A0]}});var Et0=Ne((hoe,wt0)=>{var Vie=w_(),ht0=S2(),kt0=ZR(),zie=Qn0(),Kie=et0(),Wie=dt0(),Jie=TypeError,$ie=Wie("toPrimitive");wt0.exports=function(A0,j0){if(!ht0(A0)||kt0(A0))return A0;var ur=zie(A0,$ie),hr;if(ur){if(j0===void 0&&(j0="default"),hr=Vie(ur,A0,j0),!ht0(hr)||kt0(hr))return hr;throw Jie("Can't convert object to primitive value")}return j0===void 0&&(j0="number"),Kie(A0,j0)}});var uj=Ne((koe,St0)=>{var Zie=Et0(),Qie=ZR();St0.exports=function(A0){var j0=Zie(A0,"string");return Qie(j0)?j0:j0+""}});var Tt0=Ne((woe,Ft0)=>{var rfe=Ii(),gt0=S2(),ij=rfe.document,efe=gt0(ij)&>0(ij.createElement);Ft0.exports=function(A0){return efe?ij.createElement(A0):{}}});var fj=Ne((Eoe,Ot0)=>{var nfe=ws(),tfe=Wc(),ufe=Tt0();Ot0.exports=!nfe&&!tfe(function(){return Object.defineProperty(ufe("div"),"a",{get:function(){return 7}}).a!=7})});var xj=Ne(At0=>{var ife=ws(),ffe=w_(),xfe=ln0(),afe=qR(),ofe=E_(),cfe=uj(),sfe=n1(),vfe=fj(),It0=Object.getOwnPropertyDescriptor;At0.f=ife?It0:function(j0,ur){if(j0=ofe(j0),ur=cfe(ur),vfe)try{return It0(j0,ur)}catch{}if(sfe(j0,ur))return afe(!ffe(xfe.f,j0,ur),j0[ur])}});var Ct0=Ne((goe,Nt0)=>{var lfe=ws(),bfe=Wc();Nt0.exports=lfe&&bfe(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var O_=Ne((Foe,Pt0)=>{var pfe=S2(),mfe=String,_fe=TypeError;Pt0.exports=function(A0){if(pfe(A0))return A0;throw _fe(mfe(A0)+" is not an object")}});var o4=Ne(Lt0=>{var yfe=ws(),dfe=fj(),hfe=Ct0(),I_=O_(),Dt0=uj(),kfe=TypeError,aj=Object.defineProperty,wfe=Object.getOwnPropertyDescriptor,oj="enumerable",cj="configurable",sj="writable";Lt0.f=yfe?hfe?function(j0,ur,hr){if(I_(j0),ur=Dt0(ur),I_(hr),typeof j0=="function"&&ur==="prototype"&&"value"in hr&&sj in hr&&!hr[sj]){var le=wfe(j0,ur);le&&le[sj]&&(j0[ur]=hr.value,hr={configurable:cj in hr?hr[cj]:le[cj],enumerable:oj in hr?hr[oj]:le[oj],writable:!1})}return aj(j0,ur,hr)}:aj:function(j0,ur,hr){if(I_(j0),ur=Dt0(ur),I_(hr),dfe)try{return aj(j0,ur,hr)}catch{}if("get"in hr||"set"in hr)throw kfe("Accessors not supported");return"value"in hr&&(j0[ur]=hr.value),j0}});var vj=Ne((Ooe,Rt0)=>{var Efe=ws(),Sfe=o4(),gfe=qR();Rt0.exports=Efe?function(A0,j0,ur){return Sfe.f(A0,j0,gfe(1,ur))}:function(A0,j0,ur){return A0[j0]=ur,A0}});var Mt0=Ne((Ioe,Gt0)=>{var lj=ws(),Ffe=n1(),jt0=Function.prototype,Tfe=lj&&Object.getOwnPropertyDescriptor,bj=Ffe(jt0,"name"),Ofe=bj&&function(){}.name==="something",Ife=bj&&(!lj||lj&&Tfe(jt0,"name").configurable);Gt0.exports={EXISTS:bj,PROPER:Ofe,CONFIGURABLE:Ife}});var qt0=Ne((Aoe,Bt0)=>{var Afe=Es(),Nfe=$i(),pj=T_(),Cfe=Afe(Function.toString);Nfe(pj.inspectSource)||(pj.inspectSource=function(A0){return Cfe(A0)});Bt0.exports=pj.inspectSource});var Xt0=Ne((Noe,Ht0)=>{var Pfe=Ii(),Dfe=$i(),Ut0=Pfe.WeakMap;Ht0.exports=Dfe(Ut0)&&/native code/.test(String(Ut0))});var zt0=Ne((Coe,Vt0)=>{var Lfe=nj(),Rfe=tj(),Yt0=Lfe("keys");Vt0.exports=function(A0){return Yt0[A0]||(Yt0[A0]=Rfe(A0))}});var mj=Ne((Poe,Kt0)=>{Kt0.exports={}});var Zt0=Ne((Doe,$t0)=>{var jfe=Xt0(),Jt0=Ii(),Gfe=S2(),Mfe=vj(),_j=n1(),yj=T_(),Bfe=zt0(),qfe=mj(),Wt0="Object already initialized",dj=Jt0.TypeError,Ufe=Jt0.WeakMap,A_,c4,N_,Hfe=function(A0){return N_(A0)?c4(A0):A_(A0,{})},Xfe=function(A0){return function(j0){var ur;if(!Gfe(j0)||(ur=c4(j0)).type!==A0)throw dj("Incompatible receiver, "+A0+" required");return ur}};jfe||yj.state?(Qi=yj.state||(yj.state=new Ufe),Qi.get=Qi.get,Qi.has=Qi.has,Qi.set=Qi.set,A_=function(A0,j0){if(Qi.has(A0))throw dj(Wt0);return j0.facade=A0,Qi.set(A0,j0),j0},c4=function(A0){return Qi.get(A0)||{}},N_=function(A0){return Qi.has(A0)}):(av=Bfe("state"),qfe[av]=!0,A_=function(A0,j0){if(_j(A0,av))throw dj(Wt0);return j0.facade=A0,Mfe(A0,av,j0),j0},c4=function(A0){return _j(A0,av)?A0[av]:{}},N_=function(A0){return _j(A0,av)});var Qi,av;$t0.exports={set:A_,get:c4,has:N_,enforce:Hfe,getterFor:Xfe}});var kj=Ne((Loe,ru0)=>{var Yfe=Wc(),Vfe=$i(),C_=n1(),hj=ws(),zfe=Mt0().CONFIGURABLE,Kfe=qt0(),Qt0=Zt0(),Wfe=Qt0.enforce,Jfe=Qt0.get,P_=Object.defineProperty,$fe=hj&&!Yfe(function(){return P_(function(){},"length",{value:8}).length!==8}),Zfe=String(String).split("String"),Qfe=ru0.exports=function(A0,j0,ur){String(j0).slice(0,7)==="Symbol("&&(j0="["+String(j0).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),ur&&ur.getter&&(j0="get "+j0),ur&&ur.setter&&(j0="set "+j0),(!C_(A0,"name")||zfe&&A0.name!==j0)&&(hj?P_(A0,"name",{value:j0,configurable:!0}):A0.name=j0),$fe&&ur&&C_(ur,"arity")&&A0.length!==ur.arity&&P_(A0,"length",{value:ur.arity});try{ur&&C_(ur,"constructor")&&ur.constructor?hj&&P_(A0,"prototype",{writable:!1}):A0.prototype&&(A0.prototype=void 0)}catch{}var hr=Wfe(A0);return C_(hr,"source")||(hr.source=Zfe.join(typeof j0=="string"?j0:"")),A0};Function.prototype.toString=Qfe(function(){return Vfe(this)&&Jfe(this).source||Kfe(this)},"toString")});var nu0=Ne((Roe,eu0)=>{var rxe=$i(),exe=o4(),nxe=kj(),txe=F_();eu0.exports=function(A0,j0,ur,hr){hr||(hr={});var le=hr.enumerable,Ve=hr.name!==void 0?hr.name:j0;if(rxe(ur)&&nxe(ur,Ve,hr),hr.global)le?A0[j0]=ur:txe(j0,ur);else{try{hr.unsafe?A0[j0]&&(le=!0):delete A0[j0]}catch{}le?A0[j0]=ur:exe.f(A0,j0,{value:ur,enumerable:!1,configurable:!hr.nonConfigurable,writable:!hr.nonWritable})}return A0}});var uu0=Ne((joe,tu0)=>{var uxe=Math.ceil,ixe=Math.floor;tu0.exports=Math.trunc||function(j0){var ur=+j0;return(ur>0?ixe:uxe)(ur)}});var wj=Ne((Goe,iu0)=>{var fxe=uu0();iu0.exports=function(A0){var j0=+A0;return j0!==j0||j0===0?0:fxe(j0)}});var xu0=Ne((Moe,fu0)=>{var xxe=wj(),axe=Math.max,oxe=Math.min;fu0.exports=function(A0,j0){var ur=xxe(A0);return ur<0?axe(ur+j0,0):oxe(ur,j0)}});var ou0=Ne((Boe,au0)=>{var cxe=wj(),sxe=Math.min;au0.exports=function(A0){return A0>0?sxe(cxe(A0),9007199254740991):0}});var su0=Ne((qoe,cu0)=>{var vxe=ou0();cu0.exports=function(A0){return vxe(A0.length)}});var bu0=Ne((Uoe,lu0)=>{var lxe=E_(),bxe=xu0(),pxe=su0(),vu0=function(A0){return function(j0,ur,hr){var le=lxe(j0),Ve=pxe(le),Le=bxe(hr,Ve),Fn;if(A0&&ur!=ur){for(;Ve>Le;)if(Fn=le[Le++],Fn!=Fn)return!0}else for(;Ve>Le;Le++)if((A0||Le in le)&&le[Le]===ur)return A0||Le||0;return!A0&&-1}};lu0.exports={includes:vu0(!0),indexOf:vu0(!1)}});var _u0=Ne((Hoe,mu0)=>{var mxe=Es(),Ej=n1(),_xe=E_(),yxe=bu0().indexOf,dxe=mj(),pu0=mxe([].push);mu0.exports=function(A0,j0){var ur=_xe(A0),hr=0,le=[],Ve;for(Ve in ur)!Ej(dxe,Ve)&&Ej(ur,Ve)&&pu0(le,Ve);for(;j0.length>hr;)Ej(ur,Ve=j0[hr++])&&(~yxe(le,Ve)||pu0(le,Ve));return le}});var du0=Ne((Xoe,yu0)=>{yu0.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var ku0=Ne(hu0=>{var hxe=_u0(),kxe=du0(),wxe=kxe.concat("length","prototype");hu0.f=Object.getOwnPropertyNames||function(j0){return hxe(j0,wxe)}});var Eu0=Ne(wu0=>{wu0.f=Object.getOwnPropertySymbols});var gu0=Ne((zoe,Su0)=>{var Exe=S_(),Sxe=Es(),gxe=ku0(),Fxe=Eu0(),Txe=O_(),Oxe=Sxe([].concat);Su0.exports=Exe("Reflect","ownKeys")||function(j0){var ur=gxe.f(Txe(j0)),hr=Fxe.f;return hr?Oxe(ur,hr(j0)):ur}});var Ou0=Ne((Koe,Tu0)=>{var Fu0=n1(),Ixe=gu0(),Axe=xj(),Nxe=o4();Tu0.exports=function(A0,j0,ur){for(var hr=Ixe(j0),le=Nxe.f,Ve=Axe.f,Le=0;Le{var Cxe=Wc(),Pxe=$i(),Dxe=/#|\.prototype\./,s4=function(A0,j0){var ur=Rxe[Lxe(A0)];return ur==Gxe?!0:ur==jxe?!1:Pxe(j0)?Cxe(j0):!!j0},Lxe=s4.normalize=function(A0){return String(A0).replace(Dxe,".").toLowerCase()},Rxe=s4.data={},jxe=s4.NATIVE="N",Gxe=s4.POLYFILL="P";Iu0.exports=s4});var Cu0=Ne((Joe,Nu0)=>{var Sj=Ii(),Mxe=xj().f,Bxe=vj(),qxe=nu0(),Uxe=F_(),Hxe=Ou0(),Xxe=Au0();Nu0.exports=function(A0,j0){var ur=A0.target,hr=A0.global,le=A0.stat,Ve,Le,Fn,gn,et,at;if(hr?Le=Sj:le?Le=Sj[ur]||Uxe(ur,{}):Le=(Sj[ur]||{}).prototype,Le)for(Fn in j0){if(et=j0[Fn],A0.dontCallGetSet?(at=Mxe(Le,Fn),gn=at&&at.value):gn=Le[Fn],Ve=Xxe(hr?Fn:ur+(le?".":"#")+Fn,A0.forced),!Ve&&gn!==void 0){if(typeof et==typeof gn)continue;Hxe(et,gn)}(A0.sham||gn&&gn.sham)&&Bxe(et,"sham",!0),qxe(Le,Fn,et,A0)}}});var Pu0=Ne(()=>{var Yxe=Cu0(),gj=Ii();Yxe({global:!0,forced:gj.globalThis!==gj},{globalThis:gj})});var Du0=Ne(()=>{Pu0()});var ju0=Ne((ece,Ru0)=>{var Lu0=kj(),Vxe=o4();Ru0.exports=function(A0,j0,ur){return ur.get&&Lu0(ur.get,j0,{getter:!0}),ur.set&&Lu0(ur.set,j0,{setter:!0}),Vxe.f(A0,j0,ur)}});var Mu0=Ne((nce,Gu0)=>{"use strict";var zxe=O_();Gu0.exports=function(){var A0=zxe(this),j0="";return A0.hasIndices&&(j0+="d"),A0.global&&(j0+="g"),A0.ignoreCase&&(j0+="i"),A0.multiline&&(j0+="m"),A0.dotAll&&(j0+="s"),A0.unicode&&(j0+="u"),A0.unicodeSets&&(j0+="v"),A0.sticky&&(j0+="y"),j0}});var Uu0=Ne(()=>{var Kxe=Ii(),Wxe=ws(),Jxe=ju0(),$xe=Mu0(),Zxe=Wc(),Bu0=Kxe.RegExp,qu0=Bu0.prototype,Qxe=Wxe&&Zxe(function(){var A0=!0;try{Bu0(".","d")}catch{A0=!1}var j0={},ur="",hr=A0?"dgimsy":"gimsy",le=function(gn,et){Object.defineProperty(j0,gn,{get:function(){return ur+=et,!0}})},Ve={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};A0&&(Ve.hasIndices="d");for(var Le in Ve)le(Le,Ve[Le]);var Fn=Object.getOwnPropertyDescriptor(qu0,"flags").get.call(j0);return Fn!==hr||ur!==hr});Qxe&&Jxe(qu0,"flags",{configurable:!0,get:$xe})});var Pae=Ne((ice,a70)=>{Du0();Uu0();var tU=Object.defineProperty,rae=Object.getOwnPropertyDescriptor,uU=Object.getOwnPropertyNames,eae=Object.prototype.hasOwnProperty,L_=(A0,j0)=>function(){return A0&&(j0=(0,A0[uU(A0)[0]])(A0=0)),j0},au=(A0,j0)=>function(){return j0||(0,A0[uU(A0)[0]])((j0={exports:{}}).exports,j0),j0.exports},iU=(A0,j0)=>{for(var ur in j0)tU(A0,ur,{get:j0[ur],enumerable:!0})},nae=(A0,j0,ur,hr)=>{if(j0&&typeof j0=="object"||typeof j0=="function")for(let le of uU(j0))!eae.call(A0,le)&&le!==ur&&tU(A0,le,{get:()=>j0[le],enumerable:!(hr=rae(j0,le))||hr.enumerable});return A0},fU=A0=>nae(tU({},"__esModule",{value:!0}),A0),Lt=L_({""(){}}),Hu0=au({"src/common/parser-create-error.js"(A0,j0){"use strict";Lt();function ur(hr,le){let Ve=new SyntaxError(hr+" ("+le.start.line+":"+le.start.column+")");return Ve.loc=le,Ve}j0.exports=ur}}),Xu0={};iU(Xu0,{EOL:()=>Ij,arch:()=>tae,cpus:()=>$u0,default:()=>n70,endianness:()=>Yu0,freemem:()=>Wu0,getNetworkInterfaces:()=>e70,hostname:()=>Vu0,loadavg:()=>zu0,networkInterfaces:()=>r70,platform:()=>uae,release:()=>Qu0,tmpDir:()=>Tj,tmpdir:()=>Oj,totalmem:()=>Ju0,type:()=>Zu0,uptime:()=>Ku0});function Yu0(){if(typeof D_>"u"){var A0=new ArrayBuffer(2),j0=new Uint8Array(A0),ur=new Uint16Array(A0);if(j0[0]=1,j0[1]=2,ur[0]===258)D_="BE";else if(ur[0]===513)D_="LE";else throw new Error("unable to figure out endianess")}return D_}function Vu0(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function zu0(){return[]}function Ku0(){return 0}function Wu0(){return Number.MAX_VALUE}function Ju0(){return Number.MAX_VALUE}function $u0(){return[]}function Zu0(){return"Browser"}function Qu0(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function r70(){}function e70(){}function tae(){return"javascript"}function uae(){return"browser"}function Tj(){return"/tmp"}var D_,Oj,Ij,n70,iae=L_({"node-modules-polyfills:os"(){Lt(),Oj=Tj,Ij=` +`,n70={EOL:Ij,tmpdir:Oj,tmpDir:Tj,networkInterfaces:r70,getNetworkInterfaces:e70,release:Qu0,type:Zu0,cpus:$u0,totalmem:Ju0,freemem:Wu0,uptime:Ku0,loadavg:zu0,hostname:Vu0,endianness:Yu0}}}),fae=au({"node-modules-polyfills-commonjs:os"(A0,j0){Lt();var ur=(iae(),fU(Xu0));if(ur&&ur.default){j0.exports=ur.default;for(let hr in ur)j0.exports[hr]=ur[hr]}else ur&&(j0.exports=ur)}}),xae=au({"node_modules/detect-newline/index.js"(A0,j0){"use strict";Lt();var ur=hr=>{if(typeof hr!="string")throw new TypeError("Expected a string");let le=hr.match(/(?:\r?\n)/g)||[];if(le.length===0)return;let Ve=le.filter(Fn=>Fn===`\r +`).length,Le=le.length-Ve;return Ve>Le?`\r +`:` +`};j0.exports=ur,j0.exports.graceful=hr=>typeof hr=="string"&&ur(hr)||` +`}}),aae=au({"node_modules/jest-docblock/build/index.js"(A0){"use strict";Lt(),Object.defineProperty(A0,"__esModule",{value:!0}),A0.extract=kn,A0.parse=rf,A0.parseWithComments=hn,A0.print=Mn,A0.strip=Qt;function j0(){let On=fae();return j0=function(){return On},On}function ur(){let On=hr(xae());return ur=function(){return On},On}function hr(On){return On&&On.__esModule?On:{default:On}}var le=/\*\/$/,Ve=/^\/\*\*?/,Le=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,Fn=/(^|\s+)\/\/([^\r\n]*)/g,gn=/^(\r?\n)+/,et=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,at=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,Zt=/(\r?\n|^) *\* ?/g,Ut=[];function kn(On){let ru=On.match(Le);return ru?ru[0].trimLeft():""}function Qt(On){let ru=On.match(Le);return ru&&ru[0]?On.substring(ru[0].length):On}function rf(On){return hn(On).pragmas}function hn(On){let ru=(0,ur().default)(On)||j0().EOL;On=On.replace(Ve,"").replace(le,"").replace(Zt,"$1");let E7="";for(;E7!==On;)E7=On,On=On.replace(et,`${ru}$1 $2${ru}`);On=On.replace(gn,"").trimRight();let Ct=Object.create(null),Ss=On.replace(at,"").replace(gn,"").trimRight(),In;for(;In=at.exec(On);){let Jc=In[2].replace(Fn,"");typeof Ct[In[1]]=="string"||Array.isArray(Ct[In[1]])?Ct[In[1]]=Ut.concat(Ct[In[1]],Jc):Ct[In[1]]=Jc}return{comments:Ss,pragmas:Ct}}function Mn(On){let{comments:ru="",pragmas:E7={}}=On,Ct=(0,ur().default)(ru)||j0().EOL,Ss="/**",In=" *",Jc=" */",Ai=Object.keys(E7),vi=Ai.map(S7=>ut(S7,E7[S7])).reduce((S7,ov)=>S7.concat(ov),[]).map(S7=>`${In} ${S7}${Ct}`).join("");if(!ru){if(Ai.length===0)return"";if(Ai.length===1&&!Array.isArray(E7[Ai[0]])){let S7=E7[Ai[0]];return`${Ss} ${ut(Ai[0],S7)[0]}${Jc}`}}let Rt=ru.split(Ct).map(S7=>`${In} ${S7}`).join(Ct)+Ct;return Ss+Ct+(ru?Rt:"")+(ru&&Ai.length?In+Ct:"")+vi+Jc}function ut(On,ru){return Ut.concat(ru).map(E7=>`@${On} ${E7}`.trim())}}}),oae=au({"src/common/end-of-line.js"(A0,j0){"use strict";Lt();function ur(Le){let Fn=Le.indexOf("\r");return Fn>=0?Le.charAt(Fn+1)===` +`?"crlf":"cr":"lf"}function hr(Le){switch(Le){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function le(Le,Fn){let gn;switch(Fn){case` +`:gn=/\n/g;break;case"\r":gn=/\r/g;break;case`\r +`:gn=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(Fn)}.`)}let et=Le.match(gn);return et?et.length:0}function Ve(Le){return Le.replace(/\r\n?/g,` +`)}j0.exports={guessEndOfLine:ur,convertEndOfLineToChars:hr,countEndOfLineChars:le,normalizeEndOfLine:Ve}}}),cae=au({"src/language-js/utils/get-shebang.js"(A0,j0){"use strict";Lt();function ur(hr){if(!hr.startsWith("#!"))return"";let le=hr.indexOf(` +`);return le===-1?hr:hr.slice(0,le)}j0.exports=ur}}),sae=au({"src/language-js/pragma.js"(A0,j0){"use strict";Lt();var{parseWithComments:ur,strip:hr,extract:le,print:Ve}=aae(),{normalizeEndOfLine:Le}=oae(),Fn=cae();function gn(Zt){let Ut=Fn(Zt);Ut&&(Zt=Zt.slice(Ut.length+1));let kn=le(Zt),{pragmas:Qt,comments:rf}=ur(kn);return{shebang:Ut,text:Zt,pragmas:Qt,comments:rf}}function et(Zt){let Ut=Object.keys(gn(Zt).pragmas);return Ut.includes("prettier")||Ut.includes("format")}function at(Zt){let{shebang:Ut,text:kn,pragmas:Qt,comments:rf}=gn(Zt),hn=hr(kn),Mn=Ve({pragmas:Object.assign({format:""},Qt),comments:rf.trimStart()});return(Ut?`${Ut} +`:"")+Le(Mn)+(hn.startsWith(` +`)?` +`:` + +`)+hn}j0.exports={hasPragma:et,insertPragma:at}}}),vae=au({"src/utils/is-non-empty-array.js"(A0,j0){"use strict";Lt();function ur(hr){return Array.isArray(hr)&&hr.length>0}j0.exports=ur}}),t70=au({"src/language-js/loc.js"(A0,j0){"use strict";Lt();var ur=vae();function hr(gn){var et,at;let Zt=gn.range?gn.range[0]:gn.start,Ut=(et=(at=gn.declaration)===null||at===void 0?void 0:at.decorators)!==null&&et!==void 0?et:gn.decorators;return ur(Ut)?Math.min(hr(Ut[0]),Zt):Zt}function le(gn){return gn.range?gn.range[1]:gn.end}function Ve(gn,et){let at=hr(gn);return Number.isInteger(at)&&at===hr(et)}function Le(gn,et){let at=le(gn);return Number.isInteger(at)&&at===le(et)}function Fn(gn,et){return Ve(gn,et)&&Le(gn,et)}j0.exports={locStart:hr,locEnd:le,hasSameLocStart:Ve,hasSameLoc:Fn}}}),lae=au({"src/language-js/parse/utils/create-parser.js"(A0,j0){"use strict";Lt();var{hasPragma:ur}=sae(),{locStart:hr,locEnd:le}=t70();function Ve(Le){return Le=typeof Le=="function"?{parse:Le}:Le,Object.assign({astFormat:"estree",hasPragma:ur,locStart:hr,locEnd:le},Le)}j0.exports=Ve}}),bae=au({"src/language-js/parse/utils/replace-hashbang.js"(A0,j0){"use strict";Lt();function ur(hr){return hr.charAt(0)==="#"&&hr.charAt(1)==="!"?"//"+hr.slice(2):hr}j0.exports=ur}}),pae=au({"src/language-js/utils/is-ts-keyword-type.js"(A0,j0){"use strict";Lt();function ur(hr){let{type:le}=hr;return le.startsWith("TS")&&le.endsWith("Keyword")}j0.exports=ur}}),mae=au({"src/language-js/utils/is-block-comment.js"(A0,j0){"use strict";Lt();var ur=new Set(["Block","CommentBlock","MultiLine"]),hr=le=>ur.has(le==null?void 0:le.type);j0.exports=hr}}),_ae=au({"src/language-js/utils/is-type-cast-comment.js"(A0,j0){"use strict";Lt();var ur=mae();function hr(le){return ur(le)&&le.value[0]==="*"&&/@(?:type|satisfies)\b/.test(le.value)}j0.exports=hr}}),yae=au({"src/utils/get-last.js"(A0,j0){"use strict";Lt();var ur=hr=>hr[hr.length-1];j0.exports=ur}}),dae=au({"src/language-js/parse/postprocess/visit-node.js"(A0,j0){"use strict";Lt();function ur(hr,le){if(Array.isArray(hr)){for(let Ve=0;Ve{Mn.leadingComments&&Mn.leadingComments.some(Ve)&&hn.add(ur(Mn))}),kn=Fn(kn,Mn=>{if(Mn.type==="ParenthesizedExpression"){let{expression:ut}=Mn;if(ut.type==="TypeCastExpression")return ut.range=Mn.range,ut;let On=ur(Mn);if(!hn.has(On))return ut.extra=Object.assign(Object.assign({},ut.extra),{},{parenthesized:!0}),ut}})}return kn=Fn(kn,hn=>{switch(hn.type){case"ChainExpression":return at(hn.expression);case"LogicalExpression":{if(Zt(hn))return Ut(hn);break}case"VariableDeclaration":{let Mn=Le(hn.declarations);Mn&&Mn.init&&rf(hn,Mn);break}case"TSParenthesizedType":return le(hn.typeAnnotation)||hn.typeAnnotation.type==="TSThisType"||(hn.typeAnnotation.range=[ur(hn),hr(hn)]),hn.typeAnnotation;case"TSTypeParameter":if(typeof hn.name=="string"){let Mn=ur(hn);hn.name={type:"Identifier",name:hn.name,range:[Mn,Mn+hn.name.length]}}break;case"ObjectExpression":if(Qt.parser==="typescript"){let Mn=hn.properties.find(ut=>ut.type==="Property"&&ut.value.type==="TSEmptyBodyFunctionExpression");Mn&&gn(Mn.value,"Unexpected token.")}break;case"SequenceExpression":{let Mn=Le(hn.expressions);hn.range=[ur(hn),Math.min(hr(Mn),hr(hn))];break}case"TopicReference":Qt.__isUsingHackPipeline=!0;break;case"ExportAllDeclaration":{let{exported:Mn}=hn;if(Qt.parser==="meriyah"&&Mn&&Mn.type==="Identifier"){let ut=Qt.originalText.slice(ur(Mn),hr(Mn));(ut.startsWith('"')||ut.startsWith("'"))&&(hn.exported=Object.assign(Object.assign({},hn.exported),{},{type:"Literal",value:hn.exported.name,raw:ut}))}break}case"PropertyDefinition":if(Qt.parser==="meriyah"&&hn.static&&!hn.computed&&!hn.key){let Mn="static",ut=ur(hn);Object.assign(hn,{static:!1,key:{type:"Identifier",name:Mn,range:[ut,ut+Mn.length]}})}break}}),kn;function rf(hn,Mn){Qt.originalText[hr(Mn)]!==";"&&(hn.range=[ur(hn),hr(Mn)])}}function at(kn){switch(kn.type){case"CallExpression":kn.type="OptionalCallExpression",kn.callee=at(kn.callee);break;case"MemberExpression":kn.type="OptionalMemberExpression",kn.object=at(kn.object);break;case"TSNonNullExpression":kn.expression=at(kn.expression);break}return kn}function Zt(kn){return kn.type==="LogicalExpression"&&kn.right.type==="LogicalExpression"&&kn.operator===kn.right.operator}function Ut(kn){return Zt(kn)?Ut({type:"LogicalExpression",operator:kn.operator,left:Ut({type:"LogicalExpression",operator:kn.operator,left:kn.left,right:kn.right.left,range:[ur(kn.left),hr(kn.right.left)]}),right:kn.right.right,range:[ur(kn),hr(kn)]}):kn}j0.exports=et}}),u70={};iU(u70,{default:()=>i70});var i70,wae=L_({"node-modules-polyfills:fs"(){Lt(),i70={}}}),Fj=au({"node-modules-polyfills-commonjs:fs"(A0,j0){Lt();var ur=(wae(),fU(u70));if(ur&&ur.default){j0.exports=ur.default;for(let hr in ur)j0.exports[hr]=ur[hr]}else ur&&(j0.exports=ur)}}),f70={};iU(f70,{ALPN_ENABLED:()=>Gq,COPYFILE_EXCL:()=>jB,COPYFILE_FICLONE:()=>MB,COPYFILE_FICLONE_FORCE:()=>qB,DH_CHECK_P_NOT_PRIME:()=>Lq,DH_CHECK_P_NOT_SAFE_PRIME:()=>Dq,DH_NOT_SUITABLE_GENERATOR:()=>jq,DH_UNABLE_TO_CHECK_GENERATOR:()=>Rq,E2BIG:()=>Dj,EACCES:()=>Lj,EADDRINUSE:()=>Rj,EADDRNOTAVAIL:()=>jj,EAFNOSUPPORT:()=>Gj,EAGAIN:()=>Mj,EALREADY:()=>Bj,EBADF:()=>qj,EBADMSG:()=>Uj,EBUSY:()=>Hj,ECANCELED:()=>Xj,ECHILD:()=>Yj,ECONNABORTED:()=>Vj,ECONNREFUSED:()=>zj,ECONNRESET:()=>Kj,EDEADLK:()=>Wj,EDESTADDRREQ:()=>Jj,EDOM:()=>$j,EDQUOT:()=>Zj,EEXIST:()=>Qj,EFAULT:()=>rG,EFBIG:()=>eG,EHOSTUNREACH:()=>nG,EIDRM:()=>tG,EILSEQ:()=>uG,EINPROGRESS:()=>iG,EINTR:()=>fG,EINVAL:()=>xG,EIO:()=>aG,EISCONN:()=>oG,EISDIR:()=>cG,ELOOP:()=>sG,EMFILE:()=>vG,EMLINK:()=>lG,EMSGSIZE:()=>bG,EMULTIHOP:()=>pG,ENAMETOOLONG:()=>mG,ENETDOWN:()=>_G,ENETRESET:()=>yG,ENETUNREACH:()=>dG,ENFILE:()=>hG,ENGINE_METHOD_ALL:()=>Cq,ENGINE_METHOD_CIPHERS:()=>Oq,ENGINE_METHOD_DH:()=>gq,ENGINE_METHOD_DIGESTS:()=>Iq,ENGINE_METHOD_DSA:()=>Sq,ENGINE_METHOD_EC:()=>Tq,ENGINE_METHOD_NONE:()=>Pq,ENGINE_METHOD_PKEY_ASN1_METHS:()=>Nq,ENGINE_METHOD_PKEY_METHS:()=>Aq,ENGINE_METHOD_RAND:()=>Fq,ENGINE_METHOD_RSA:()=>Eq,ENOBUFS:()=>kG,ENODATA:()=>wG,ENODEV:()=>EG,ENOENT:()=>SG,ENOEXEC:()=>gG,ENOLCK:()=>FG,ENOLINK:()=>TG,ENOMEM:()=>OG,ENOMSG:()=>IG,ENOPROTOOPT:()=>AG,ENOSPC:()=>NG,ENOSR:()=>CG,ENOSTR:()=>PG,ENOSYS:()=>DG,ENOTCONN:()=>LG,ENOTDIR:()=>RG,ENOTEMPTY:()=>jG,ENOTSOCK:()=>GG,ENOTSUP:()=>MG,ENOTTY:()=>BG,ENXIO:()=>qG,EOPNOTSUPP:()=>UG,EOVERFLOW:()=>HG,EPERM:()=>XG,EPIPE:()=>YG,EPROTO:()=>VG,EPROTONOSUPPORT:()=>zG,EPROTOTYPE:()=>KG,ERANGE:()=>WG,EROFS:()=>JG,ESPIPE:()=>$G,ESRCH:()=>ZG,ESTALE:()=>QG,ETIME:()=>rM,ETIMEDOUT:()=>eM,ETXTBSY:()=>nM,EWOULDBLOCK:()=>tM,EXDEV:()=>uM,F_OK:()=>CB,OPENSSL_VERSION_NUMBER:()=>UB,O_APPEND:()=>lB,O_CREAT:()=>oB,O_DIRECTORY:()=>bB,O_DSYNC:()=>_B,O_EXCL:()=>cB,O_NOCTTY:()=>sB,O_NOFOLLOW:()=>pB,O_NONBLOCK:()=>dB,O_RDONLY:()=>XM,O_RDWR:()=>VM,O_SYMLINK:()=>yB,O_SYNC:()=>mB,O_TRUNC:()=>vB,O_WRONLY:()=>YM,POINT_CONVERSION_COMPRESSED:()=>Qq,POINT_CONVERSION_HYBRID:()=>eU,POINT_CONVERSION_UNCOMPRESSED:()=>rU,PRIORITY_ABOVE_NORMAL:()=>aM,PRIORITY_BELOW_NORMAL:()=>fM,PRIORITY_HIGH:()=>oM,PRIORITY_HIGHEST:()=>cM,PRIORITY_LOW:()=>iM,PRIORITY_NORMAL:()=>xM,RSA_NO_PADDING:()=>qq,RSA_PKCS1_OAEP_PADDING:()=>Uq,RSA_PKCS1_PADDING:()=>Mq,RSA_PKCS1_PSS_PADDING:()=>Xq,RSA_PSS_SALTLEN_AUTO:()=>zq,RSA_PSS_SALTLEN_DIGEST:()=>Yq,RSA_PSS_SALTLEN_MAX_SIGN:()=>Vq,RSA_SSLV23_PADDING:()=>Bq,RSA_X931_PADDING:()=>Hq,RTLD_GLOBAL:()=>Cj,RTLD_LAZY:()=>Aj,RTLD_LOCAL:()=>Pj,RTLD_NOW:()=>Nj,R_OK:()=>PB,SIGABRT:()=>mM,SIGALRM:()=>gM,SIGBUS:()=>yM,SIGCHLD:()=>TM,SIGCONT:()=>OM,SIGFPE:()=>dM,SIGHUP:()=>sM,SIGILL:()=>bM,SIGINFO:()=>BM,SIGINT:()=>vM,SIGIO:()=>MM,SIGIOT:()=>_M,SIGKILL:()=>hM,SIGPIPE:()=>SM,SIGPROF:()=>jM,SIGQUIT:()=>lM,SIGSEGV:()=>wM,SIGSTOP:()=>IM,SIGSYS:()=>qM,SIGTERM:()=>FM,SIGTRAP:()=>pM,SIGTSTP:()=>AM,SIGTTIN:()=>NM,SIGTTOU:()=>CM,SIGURG:()=>PM,SIGUSR1:()=>kM,SIGUSR2:()=>EM,SIGVTALRM:()=>RM,SIGWINCH:()=>GM,SIGXCPU:()=>DM,SIGXFSZ:()=>LM,SSL_OP_ALL:()=>HB,SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION:()=>XB,SSL_OP_CIPHER_SERVER_PREFERENCE:()=>YB,SSL_OP_CISCO_ANYCONNECT:()=>VB,SSL_OP_COOKIE_EXCHANGE:()=>zB,SSL_OP_CRYPTOPRO_TLSEXT_BUG:()=>KB,SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS:()=>WB,SSL_OP_EPHEMERAL_RSA:()=>JB,SSL_OP_LEGACY_SERVER_CONNECT:()=>$B,SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER:()=>ZB,SSL_OP_MICROSOFT_SESS_ID_BUG:()=>QB,SSL_OP_MSIE_SSLV2_RSA_PADDING:()=>rq,SSL_OP_NETSCAPE_CA_DN_BUG:()=>eq,SSL_OP_NETSCAPE_CHALLENGE_BUG:()=>nq,SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG:()=>tq,SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG:()=>uq,SSL_OP_NO_COMPRESSION:()=>iq,SSL_OP_NO_QUERY_MTU:()=>fq,SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION:()=>xq,SSL_OP_NO_SSLv2:()=>aq,SSL_OP_NO_SSLv3:()=>oq,SSL_OP_NO_TICKET:()=>cq,SSL_OP_NO_TLSv1:()=>sq,SSL_OP_NO_TLSv1_1:()=>vq,SSL_OP_NO_TLSv1_2:()=>lq,SSL_OP_PKCS1_CHECK_1:()=>bq,SSL_OP_PKCS1_CHECK_2:()=>pq,SSL_OP_SINGLE_DH_USE:()=>mq,SSL_OP_SINGLE_ECDH_USE:()=>_q,SSL_OP_SSLEAY_080_CLIENT_DH_BUG:()=>yq,SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG:()=>dq,SSL_OP_TLS_BLOCK_PADDING_BUG:()=>hq,SSL_OP_TLS_D5_BUG:()=>kq,SSL_OP_TLS_ROLLBACK_BUG:()=>wq,S_IFBLK:()=>iB,S_IFCHR:()=>uB,S_IFDIR:()=>tB,S_IFIFO:()=>fB,S_IFLNK:()=>xB,S_IFMT:()=>eB,S_IFREG:()=>nB,S_IFSOCK:()=>aB,S_IRGRP:()=>gB,S_IROTH:()=>IB,S_IRUSR:()=>kB,S_IRWXG:()=>SB,S_IRWXO:()=>OB,S_IRWXU:()=>hB,S_IWGRP:()=>FB,S_IWOTH:()=>AB,S_IWUSR:()=>wB,S_IXGRP:()=>TB,S_IXOTH:()=>NB,S_IXUSR:()=>EB,TLS1_1_VERSION:()=>Jq,TLS1_2_VERSION:()=>$q,TLS1_3_VERSION:()=>Zq,TLS1_VERSION:()=>Wq,UV_DIRENT_BLOCK:()=>rB,UV_DIRENT_CHAR:()=>QM,UV_DIRENT_DIR:()=>WM,UV_DIRENT_FIFO:()=>$M,UV_DIRENT_FILE:()=>KM,UV_DIRENT_LINK:()=>JM,UV_DIRENT_SOCKET:()=>ZM,UV_DIRENT_UNKNOWN:()=>zM,UV_FS_COPYFILE_EXCL:()=>RB,UV_FS_COPYFILE_FICLONE:()=>GB,UV_FS_COPYFILE_FICLONE_FORCE:()=>BB,UV_FS_SYMLINK_DIR:()=>UM,UV_FS_SYMLINK_JUNCTION:()=>HM,W_OK:()=>DB,X_OK:()=>LB,default:()=>x70,defaultCipherList:()=>nU,defaultCoreCipherList:()=>Kq});var Aj,Nj,Cj,Pj,Dj,Lj,Rj,jj,Gj,Mj,Bj,qj,Uj,Hj,Xj,Yj,Vj,zj,Kj,Wj,Jj,$j,Zj,Qj,rG,eG,nG,tG,uG,iG,fG,xG,aG,oG,cG,sG,vG,lG,bG,pG,mG,_G,yG,dG,hG,kG,wG,EG,SG,gG,FG,TG,OG,IG,AG,NG,CG,PG,DG,LG,RG,jG,GG,MG,BG,qG,UG,HG,XG,YG,VG,zG,KG,WG,JG,$G,ZG,QG,rM,eM,nM,tM,uM,iM,fM,xM,aM,oM,cM,sM,vM,lM,bM,pM,mM,_M,yM,dM,hM,kM,wM,EM,SM,gM,FM,TM,OM,IM,AM,NM,CM,PM,DM,LM,RM,jM,GM,MM,BM,qM,UM,HM,XM,YM,VM,zM,KM,WM,JM,$M,ZM,QM,rB,eB,nB,tB,uB,iB,fB,xB,aB,oB,cB,sB,vB,lB,bB,pB,mB,_B,yB,dB,hB,kB,wB,EB,SB,gB,FB,TB,OB,IB,AB,NB,CB,PB,DB,LB,RB,jB,GB,MB,BB,qB,UB,HB,XB,YB,VB,zB,KB,WB,JB,$B,ZB,QB,rq,eq,nq,tq,uq,iq,fq,xq,aq,oq,cq,sq,vq,lq,bq,pq,mq,_q,yq,dq,hq,kq,wq,Eq,Sq,gq,Fq,Tq,Oq,Iq,Aq,Nq,Cq,Pq,Dq,Lq,Rq,jq,Gq,Mq,Bq,qq,Uq,Hq,Xq,Yq,Vq,zq,Kq,Wq,Jq,$q,Zq,Qq,rU,eU,nU,x70,Eae=L_({"node-modules-polyfills:constants"(){Lt(),Aj=1,Nj=2,Cj=8,Pj=4,Dj=7,Lj=13,Rj=48,jj=49,Gj=47,Mj=35,Bj=37,qj=9,Uj=94,Hj=16,Xj=89,Yj=10,Vj=53,zj=61,Kj=54,Wj=11,Jj=39,$j=33,Zj=69,Qj=17,rG=14,eG=27,nG=65,tG=90,uG=92,iG=36,fG=4,xG=22,aG=5,oG=56,cG=21,sG=62,vG=24,lG=31,bG=40,pG=95,mG=63,_G=50,yG=52,dG=51,hG=23,kG=55,wG=96,EG=19,SG=2,gG=8,FG=77,TG=97,OG=12,IG=91,AG=42,NG=28,CG=98,PG=99,DG=78,LG=57,RG=20,jG=66,GG=38,MG=45,BG=25,qG=6,UG=102,HG=84,XG=1,YG=32,VG=100,zG=43,KG=41,WG=34,JG=30,$G=29,ZG=3,QG=70,rM=101,eM=60,nM=26,tM=35,uM=18,iM=19,fM=10,xM=0,aM=-7,oM=-14,cM=-20,sM=1,vM=2,lM=3,bM=4,pM=5,mM=6,_M=6,yM=10,dM=8,hM=9,kM=30,wM=11,EM=31,SM=13,gM=14,FM=15,TM=20,OM=19,IM=17,AM=18,NM=21,CM=22,PM=16,DM=24,LM=25,RM=26,jM=27,GM=28,MM=23,BM=29,qM=12,UM=1,HM=2,XM=0,YM=1,VM=2,zM=0,KM=1,WM=2,JM=3,$M=4,ZM=5,QM=6,rB=7,eB=61440,nB=32768,tB=16384,uB=8192,iB=24576,fB=4096,xB=40960,aB=49152,oB=512,cB=2048,sB=131072,vB=1024,lB=8,bB=1048576,pB=256,mB=128,_B=4194304,yB=2097152,dB=4,hB=448,kB=256,wB=128,EB=64,SB=56,gB=32,FB=16,TB=8,OB=7,IB=4,AB=2,NB=1,CB=0,PB=4,DB=2,LB=1,RB=1,jB=1,GB=2,MB=2,BB=4,qB=4,UB=269488175,HB=2147485780,XB=262144,YB=4194304,VB=32768,zB=8192,KB=2147483648,WB=2048,JB=0,$B=4,ZB=0,QB=0,rq=0,eq=0,nq=0,tq=0,uq=0,iq=131072,fq=4096,xq=65536,aq=0,oq=33554432,cq=16384,sq=67108864,vq=268435456,lq=134217728,bq=0,pq=0,mq=0,_q=0,yq=0,dq=0,hq=0,kq=0,wq=8388608,Eq=1,Sq=2,gq=4,Fq=8,Tq=2048,Oq=64,Iq=128,Aq=512,Nq=1024,Cq=65535,Pq=0,Dq=2,Lq=1,Rq=4,jq=8,Gq=1,Mq=1,Bq=2,qq=3,Uq=4,Hq=5,Xq=6,Yq=-1,Vq=-2,zq=-2,Kq="TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA256:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!SRP:!CAMELLIA",Wq=769,Jq=770,$q=771,Zq=772,Qq=2,rU=4,eU=6,nU="TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA256:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!SRP:!CAMELLIA",x70={RTLD_LAZY:Aj,RTLD_NOW:Nj,RTLD_GLOBAL:Cj,RTLD_LOCAL:Pj,E2BIG:Dj,EACCES:Lj,EADDRINUSE:Rj,EADDRNOTAVAIL:jj,EAFNOSUPPORT:Gj,EAGAIN:Mj,EALREADY:Bj,EBADF:qj,EBADMSG:Uj,EBUSY:Hj,ECANCELED:Xj,ECHILD:Yj,ECONNABORTED:Vj,ECONNREFUSED:zj,ECONNRESET:Kj,EDEADLK:Wj,EDESTADDRREQ:Jj,EDOM:$j,EDQUOT:Zj,EEXIST:Qj,EFAULT:rG,EFBIG:eG,EHOSTUNREACH:nG,EIDRM:tG,EILSEQ:uG,EINPROGRESS:iG,EINTR:fG,EINVAL:xG,EIO:aG,EISCONN:oG,EISDIR:cG,ELOOP:sG,EMFILE:vG,EMLINK:lG,EMSGSIZE:bG,EMULTIHOP:pG,ENAMETOOLONG:mG,ENETDOWN:_G,ENETRESET:yG,ENETUNREACH:dG,ENFILE:hG,ENOBUFS:kG,ENODATA:wG,ENODEV:EG,ENOENT:SG,ENOEXEC:gG,ENOLCK:FG,ENOLINK:TG,ENOMEM:OG,ENOMSG:IG,ENOPROTOOPT:AG,ENOSPC:NG,ENOSR:CG,ENOSTR:PG,ENOSYS:DG,ENOTCONN:LG,ENOTDIR:RG,ENOTEMPTY:jG,ENOTSOCK:GG,ENOTSUP:MG,ENOTTY:BG,ENXIO:qG,EOPNOTSUPP:UG,EOVERFLOW:HG,EPERM:XG,EPIPE:YG,EPROTO:VG,EPROTONOSUPPORT:zG,EPROTOTYPE:KG,ERANGE:WG,EROFS:JG,ESPIPE:$G,ESRCH:ZG,ESTALE:QG,ETIME:rM,ETIMEDOUT:eM,ETXTBSY:nM,EWOULDBLOCK:tM,EXDEV:uM,PRIORITY_LOW:iM,PRIORITY_BELOW_NORMAL:fM,PRIORITY_NORMAL:xM,PRIORITY_ABOVE_NORMAL:aM,PRIORITY_HIGH:oM,PRIORITY_HIGHEST:cM,SIGHUP:sM,SIGINT:vM,SIGQUIT:lM,SIGILL:bM,SIGTRAP:pM,SIGABRT:mM,SIGIOT:_M,SIGBUS:yM,SIGFPE:dM,SIGKILL:hM,SIGUSR1:kM,SIGSEGV:wM,SIGUSR2:EM,SIGPIPE:SM,SIGALRM:gM,SIGTERM:FM,SIGCHLD:TM,SIGCONT:OM,SIGSTOP:IM,SIGTSTP:AM,SIGTTIN:NM,SIGTTOU:CM,SIGURG:PM,SIGXCPU:DM,SIGXFSZ:LM,SIGVTALRM:RM,SIGPROF:jM,SIGWINCH:GM,SIGIO:MM,SIGINFO:BM,SIGSYS:qM,UV_FS_SYMLINK_DIR:UM,UV_FS_SYMLINK_JUNCTION:HM,O_RDONLY:XM,O_WRONLY:YM,O_RDWR:VM,UV_DIRENT_UNKNOWN:zM,UV_DIRENT_FILE:KM,UV_DIRENT_DIR:WM,UV_DIRENT_LINK:JM,UV_DIRENT_FIFO:$M,UV_DIRENT_SOCKET:ZM,UV_DIRENT_CHAR:QM,UV_DIRENT_BLOCK:rB,S_IFMT:eB,S_IFREG:nB,S_IFDIR:tB,S_IFCHR:uB,S_IFBLK:iB,S_IFIFO:fB,S_IFLNK:xB,S_IFSOCK:aB,O_CREAT:oB,O_EXCL:cB,O_NOCTTY:sB,O_TRUNC:vB,O_APPEND:lB,O_DIRECTORY:bB,O_NOFOLLOW:pB,O_SYNC:mB,O_DSYNC:_B,O_SYMLINK:yB,O_NONBLOCK:dB,S_IRWXU:hB,S_IRUSR:kB,S_IWUSR:wB,S_IXUSR:EB,S_IRWXG:SB,S_IRGRP:gB,S_IWGRP:FB,S_IXGRP:TB,S_IRWXO:OB,S_IROTH:IB,S_IWOTH:AB,S_IXOTH:NB,F_OK:CB,R_OK:PB,W_OK:DB,X_OK:LB,UV_FS_COPYFILE_EXCL:RB,COPYFILE_EXCL:jB,UV_FS_COPYFILE_FICLONE:GB,COPYFILE_FICLONE:MB,UV_FS_COPYFILE_FICLONE_FORCE:BB,COPYFILE_FICLONE_FORCE:qB,OPENSSL_VERSION_NUMBER:UB,SSL_OP_ALL:HB,SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION:XB,SSL_OP_CIPHER_SERVER_PREFERENCE:YB,SSL_OP_CISCO_ANYCONNECT:VB,SSL_OP_COOKIE_EXCHANGE:zB,SSL_OP_CRYPTOPRO_TLSEXT_BUG:KB,SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS:WB,SSL_OP_EPHEMERAL_RSA:JB,SSL_OP_LEGACY_SERVER_CONNECT:$B,SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER:ZB,SSL_OP_MICROSOFT_SESS_ID_BUG:QB,SSL_OP_MSIE_SSLV2_RSA_PADDING:rq,SSL_OP_NETSCAPE_CA_DN_BUG:eq,SSL_OP_NETSCAPE_CHALLENGE_BUG:nq,SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG:tq,SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG:uq,SSL_OP_NO_COMPRESSION:iq,SSL_OP_NO_QUERY_MTU:fq,SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION:xq,SSL_OP_NO_SSLv2:aq,SSL_OP_NO_SSLv3:oq,SSL_OP_NO_TICKET:cq,SSL_OP_NO_TLSv1:sq,SSL_OP_NO_TLSv1_1:vq,SSL_OP_NO_TLSv1_2:lq,SSL_OP_PKCS1_CHECK_1:bq,SSL_OP_PKCS1_CHECK_2:pq,SSL_OP_SINGLE_DH_USE:mq,SSL_OP_SINGLE_ECDH_USE:_q,SSL_OP_SSLEAY_080_CLIENT_DH_BUG:yq,SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG:dq,SSL_OP_TLS_BLOCK_PADDING_BUG:hq,SSL_OP_TLS_D5_BUG:kq,SSL_OP_TLS_ROLLBACK_BUG:wq,ENGINE_METHOD_RSA:Eq,ENGINE_METHOD_DSA:Sq,ENGINE_METHOD_DH:gq,ENGINE_METHOD_RAND:Fq,ENGINE_METHOD_EC:Tq,ENGINE_METHOD_CIPHERS:Oq,ENGINE_METHOD_DIGESTS:Iq,ENGINE_METHOD_PKEY_METHS:Aq,ENGINE_METHOD_PKEY_ASN1_METHS:Nq,ENGINE_METHOD_ALL:Cq,ENGINE_METHOD_NONE:Pq,DH_CHECK_P_NOT_SAFE_PRIME:Dq,DH_CHECK_P_NOT_PRIME:Lq,DH_UNABLE_TO_CHECK_GENERATOR:Rq,DH_NOT_SUITABLE_GENERATOR:jq,ALPN_ENABLED:Gq,RSA_PKCS1_PADDING:Mq,RSA_SSLV23_PADDING:Bq,RSA_NO_PADDING:qq,RSA_PKCS1_OAEP_PADDING:Uq,RSA_X931_PADDING:Hq,RSA_PKCS1_PSS_PADDING:Xq,RSA_PSS_SALTLEN_DIGEST:Yq,RSA_PSS_SALTLEN_MAX_SIGN:Vq,RSA_PSS_SALTLEN_AUTO:zq,defaultCoreCipherList:Kq,TLS1_VERSION:Wq,TLS1_1_VERSION:Jq,TLS1_2_VERSION:$q,TLS1_3_VERSION:Zq,POINT_CONVERSION_COMPRESSED:Qq,POINT_CONVERSION_UNCOMPRESSED:rU,POINT_CONVERSION_HYBRID:eU,defaultCipherList:nU}}}),Sae=au({"node-modules-polyfills-commonjs:constants"(A0,j0){Lt();var ur=(Eae(),fU(f70));if(ur&&ur.default){j0.exports=ur.default;for(let hr in ur)j0.exports[hr]=ur[hr]}else ur&&(j0.exports=ur)}}),gae=au({"node_modules/flow-parser/flow_parser.js"(A0){Lt(),function(j0){"use strict";var ur="member_property_expression",hr=8483,le=12538,Ve="children",Le="predicate_expression",Fn="??",gn="Identifier",et=64311,at=192,Zt=11710,Ut=122654,kn=110947,Qt=67591,rf="!",hn="directive",Mn=163,ut="block",On=126553,ru=12735,E7=68096,Ct="params",Ss=93071,In=122,Jc=72767,Ai=181,vi="for_statement",Rt=128,S7="start",ov=43867,xU="_method",R_=70414,cv=">",ef="catch_body",j_=120121,aU="the end of an expression statement (`;`)",G_=124907,oU=1027,v4=126558,nf="jsx_fragment",M_=42527,B_="decorators",q_=82943,U_=71039,H_=110882,X_=67514,cU=8472,sU="update",Y_=12783,V_=12438,z_=12352,K_=8511,W_=42961,F2="method",l4=120713,tf=8191,uf="function_param",J_=67871,g7="throw",$_=11507,ff="class_extends",Z_=43470,xf="object_key_literal",Q_=71903,ry=65437,af="jsx_child",ey=43311,b4=119995,ny=67637,p4=68116,ty=66204,uy=65470,vU="<<=",iy="e",fy=67391,m4=11631,_4=69956,sv="tparams",xy=66735,ay=64217,oy=43697,lU="Invalid binary/octal ",cy=-43,sy=43255,y4="do",vy=43301,of="binding_pattern",ly=120487,cf="jsx_attribute_value_literal",d4="package",sf="interface_declaration",by=72750,py=119892,bU="tail",pU=-53,vf=111,mU=180,my=119807,_y=71959,_U=8206,yy=65613,$c="type",dy=55215,hy=-42,lf="export_default_declaration_decl",h4=72970,yU="filtered_out",ky=70416,dU=229,bf="function_this_param",hU="module",k4="try",wy=70143,Ey=125183,Sy=70412,h0="@])",pf="binary",kU="infinity",w4="private",gy=65500,E4="has_unknown_members",mf="pattern_array_rest_element",wU="Property",gs="implements",Fy=12548,EU=211,_f="if_alternate_statement",Ty=124903,Oy=43395,vv="src/parser/type_parser.ml",Iy=66915,S4=126552,Ay=120712,g4=126555,Ny=120596,o7="raw",F7=112,yf="class_declaration",df="statement",Cy=126624,Py=71235,hf="meta_property",Dy=44002,Ly=8467,kf="class_property_value",Ry=8318,wf="optional_call",jy=43761,Zc="kind",Ef="class_identifier",Gy=69955,My=66378,By=120512,qy=68220,Ht=110,Uy=123583,T2="declare",Sf="typeof_member_identifier",gf="catch_clause",Hy=11742,Xy=70831,F4=8468,Ff="for_in_assignment_pattern",SU=-32,Tf="object_",Yy=43262,Vy="mixins",Of="type_param",gU="visit_trailing_comment",zy=71839,O2="boolean",If="call",FU="expected *",Ky=43010,Wy=241,Au="expression",I2="column",Jy=43595,$y=43258,Zy=191456,Af="member_type_identifier",A2=117,Qy=43754,T4=126544,TU="Assert_failure",rd=66517,ed=42964,Nf="enum_number_member",OU="a string",nd=65855,td=119993,ud="opaque",IU=870530776,id=67711,fd=66994,Cf="enum_symbol_body",AU=185,NU=219,O4="filter",xd=43615,I4=126560,ad=19903,t1="get",od=64316,CU=`Fatal error: exception %s +`,A4="exported",PU=">=",Wu="return",N4="members",C4=256,cd=66962,sd=64279,vd=67829,DU="Enum `",LU="&&=",Pf="object_property",ld=67589,Df="pattern_object_property",Lf="template_literal_element",bd=69551,Ni=127343600,P4=70452,Rf="class_element",pd="ENOENT",md=71131,RU=200,_d=120137,yd=94098,D4=72349,jU=1328,jf="function_identifier",dd=126543,Gf="jsx_attribute_name",hd=43487,kr="@[<2>{ ",GU="ENOTEMPTY",kd=65908,wd=72191,L4=120513,Ed=92909,MU="bound",Sd=162,BU=172,R4=120070,Mf="enum_number_body",Bf="update_expression",qf="spread_element",Uf="for_in_left_declaration",j4=64319,N2="%d",gd=12703,G4=11687,qU="@,))@]",Fd=42239,Hf="type_cast",Td=42508,Xf="class_implements_interface",Od=67640,Id=605857695,UU="Cygwin",HU="buffer.ml",Ad=124908,XU="handler",Nd=66207,Cd=66963,M4=11558,YU="-=",Pn=113,Pd=113775,VU="collect_comments",B4=126540,lv="set",Yf="assignment_pattern",Nu="right",Vf="object_key_identifier",q4=120133,Dd="Invalid number ",Ld=42963,U4=12539,Rd=68023,jd=43798,ni=100,zf="pattern_literal",Kf="generic_type",zU="*",Gd=42783,Md=42890,Bd=230,H4="else",qd=70851,Ud=69289,KU="the start of a statement",X4="properties",Hd=43696,Xd=110959,Wf="declare_function",Y4=120597,Jf="object_indexer_property_type",Yd=70492,Vd=2048,C2="arguments",Xr="comments",zd=43042,Qc=107,Kd=110575,WU=161,Wd=67431,V4="line",P2="declaration",eu="static",$f="pattern_identifier",Jd=69958,JU="the",$d="Unix.Unix_error",Zd=43814,rs="annot",Qd=65786,rh=66303,eh=64967,nh=64255,th=8584,z4=120655,$U="Stack_overflow",uh=43700,Zf="syntax_opt",ZU="/static/",Qf="comprehension",ih=253,QU="Not_found",rH="+=",eH=235,fh=68680,xh=66954,ah=64324,oh=72966,nH=174,tH=-1053382366,ch="rest",rx="pattern_array_element",ex="jsx_attribute_value_expression",K4=65595,nx="pattern_array_e",uH=243,sh=43711,vh="rmdir",W4="symbol",lh=69926,J4="*dummy method*",bh=43741,T7="typeParameters",D2="const",iH=1026,fH=149,ph=12341,mh=72847,_h=66993,xH=202,Ci="false",Xt=106,yh=120076,dh=186,Pi=128,hh=125124,kh="Fatal error: exception ",$4=67593,wh=69297,Eh=44031,aH=234,Sh=92927,gh=68095,Ju=8231,tx="object_key_computed",ux="labeled_statement",ix="function_param_pattern",Z4=126590,Fh=65481,Th=43442,oH="collect_comments_opt",fx="variable_declarator",bv="_",Oh="compare: functional value",Ih=67967,pv="computed",xx="object_property_type",mt="id",Ah=126562,u1=114,cH="comment_bounds",Nh=70853,Ch=69247,ax="class_private_field",Ph=42237,Dh=72329,sH="Invalid_argument",Lh=113770,Q4=94031,Rh=120092,ox="declare_class",jh=67839,Gh=72250,vH="%ni",Mh=92879,lH="prototype",Fs="`.",cx=8287,r8=65344,Bh="&",O7="debugger",sx="type_identifier_reference",bH="Internal Error: Found private field in object props",vx="sequence",lx="call_type_args",pH=238,qh=12348,mH="++",Uh=68863,Hh=72001,Xh=70084,Yh="label",mv=-45,bx="jsx_opening_attribute",Vh=43583,e8="%F",zh=43784,Kh=113791,px="call_arguments",n8=126503,Wh=43743,$u="0",Jh=119967,t8=126538,mx="new_",_v=449540197,$h=64109,Zh=68466,Qh=177983,wt=248,_x="program",Xe="@,]@]",rk=68031,yx="function_type",dx="type_",u8=8484,ek=67382,nk=42537,tk=226,uk=66559,ik=42993,fk=64274,i8=71236,xk=120069,ak=72105,ok=126570,ck="object",sk=42959,I7="break",hx="for_of_statement",vk=43695,f8=126551,lk=66955,x8=126520,bk=66499,L2=1024,pk=67455,mk=43018,_H=198,a8=126522,kx="function_declaration",_k=73064,wx="await",yk=92728,dk=70418,hk=68119,Ex="function_rest_param",kk=42653,o8=11703,li="left",c8=70449,wk=184,Sx="declare_type_alias",gx=16777215,s8=70302,yH="/=",dH="|=",Ek=55242,Sk=126583,gk=124927,Fk=124895,Tk=72959,Ok=65497,hH="Invalid legacy octal ",es="typeof",Ik="explicit_type",Fx="statement_list",Ak=65495,Tx="class_method",v8=8526,l8=244,Nk=67861,b8=119994,p8="enum",kH=2147483647,Ck=69762,wH=208,R2="in",Pk=11702,m8=67638,EH=", characters ",Dk=70753,yv="super",Lk=92783,Rk=8304,_8=126504,Ox="import_specifier",jk=68324,Gk=101589,Mk=67646,Ix="expression_or_spread",Bk=74879,qk=43792,y8=43260,Uk=93052,SH="{",Hk=65574,Xk=125258,dv=224,Ax="jsx_element_name_member_expression",j2="instanceof",Yk=69599,Vk=43560,Nx="function_expression",d8=223,zk=72242,Kk=11498,Wk=126467,Jk=73112,gH=140,h8=70107,$k=13311,Cx="jsx_children",k8=126548,Zk=63743,w8=43471,Px="jsx_expression",Qk=69864,rw=71998,ew=72e3,E8=126591,S8=12592,Dx="type_params",nw=126578,g8=126537,wr="{ ",tw=123627,Lx="jsx_spread_attribute",Pe="@,",uw=70161,iw=187,F8=126500,Rx="label_identifier",fw=42606,jx="number_literal_type",T8=42999,xw=64310,FH=-594953737,aw=122623,O8="hasUnknownMembers",Gx="array",TH="^=",Mx="enum_string_member",ow=65536,cw=65615,ns="void",sw=65135,Z0=")",OH=138,vw=70002,G2="let",lw=70271,bw="nan",W="@[%s =@ ",pw=194559,mw=110579,Bx="binding_type_identifier",_w=42735,IH=57343,Zu="/",qx="for_in_statement_lhs",yw=43503,dw=8516,hw=66938,kw="ENOTDIR",AH="TypeParameterInstantiation",ww=69749,Ew=65381,Sw=83526,hv="number",gw=12447,NH=154,I8=70286,Fw=72160,Tw=43493,CH=206,Ux="enum_member_identifier",A8=70280,M2="function",N8=70162,Ow=255,Iw=67702,Aw=66771,Nw=70312,PH="|",Cw=93759,DH="End_of_file",Pw=43709,i1="new",LH="Failure",B2="local",Dw=101631,C8=8489,P8="with",Hx="enum_declaration",Lw=218,Rw=70457,D8=8488,Xx="member",L8=64325,jw=247,Gw=70448,Mw=69967,R8=126535,Bw=71934,Yx="import_named_specifier",qw=65312,Uw=126619,Vx="type_annotation",RH=56320,Hw=131071,Xw=120770,Yw=67002,zx="with_",Kx="statement_fork_point",jH="finalizer",Vw=12320,GH="elements",Wx="literal",zw=68607,Kw=8507,j8="each",MH="Sys_error",Ww=123535,Jw=130,Jx="bigint_literal_type",$w=64829,G8=11727,Zw=120538,$x="member_private_name",Zx="type_alias",BH="Printexc.handle_uncaught_exception",M8=126556,Qx="tagged_template",ra="pattern_object_property_literal_key",Qw=43881,B8=72192,rE=67826,eE=124910,nE=66511,ts="int_of_string",tE=43249,nr="None",qH="FunctionTypeParam",ti="name",uE=70285,c7=103,iE=120744,ea=12288,na="intersection_type",fE=11679,q8=11559,UH="callee",xE=71295,aE=70018,oE=11567,cE=42954,HH="*-/",Qu="predicate",ta="expression_statement",XH="regexp",sE=65479,YH=132,vE=11389,Bu="optional",VH=-602162310,z="@]",lE=120003,bE=72249,zH="Unexpected ",pE=73008,U8="finally",ua="toplevel_statement_list",KH="end",mE=178207,WH="&=",_E=70301,JH="%Li",yE=72161,dE=69746,hE=70460,kE=12799,H8=65535,wE="loc",EE=69375,SE=43518,$H=205,gE=65487,ia="while_",FE=183983,fa="typeof_expression",TE=-673950933,OE=42559,ZH="||",IE=124926,AE=55291,xa="jsx_element_name_identifier",aa=8239,X8="mixed",QH=136,NE=-253313196,CE=11734,Y8=67827,PE=68287,DE=119976,rX="**",J=" =",V8=888960333,LE=124902,oa="tuple_type",eX=227,RE=70726,jE=73111,z8=126602,GE=126529,ca="object_property_value_type",C0="%a",nX=", ",tX="<=",ME=69423,uX=199,K8=11695,BE=12294,W8=11711,qE=67583,iX=710,J8=126584,UE=68295,HE=72703,XE="prefix",fX=-80,$8=69415,YE=11492,q2="class",Z8=65575,A7="continue",VE=65663,xX=2047,Q8=68120,zE=71086,KE=19967,Di=782176664,WE=120779,r3=8486,bi=" ",aX="||=",oX="Undefined_recursive_module",JE=66863,cX="RestElement",e3=126634,$E=66377,ZE=74751,sa="jsx_element_name_namespaced",QE=43334,rS=66815,N7="typeAnnotation",eS=120126,va="array_element",n3=64285,sX=189,vX="**=",Yr="()",nS=8543,la="declare_module",ba="export_batch_specifier",lX="%i",bX=">>>=",tS=68029,pX="importKind",C7="extends",uS=64296,t3=43259,iS=71679,fS=64913,xS=119969,aS=94175,oS=72440,u3=65141,pa="function_",cS=43071,sS=42888,vS=69807,ou="variance",us=123,ma="import_default_specifier",mX=">>>",lS=43764,pi="pattern",bS=71947,pS=70655,kv="consequent",_X=4096,mS=183,_S=68447,yS=65473,is=255,dS=73648,_a="call_type_arg",ya=8238,hS=68899,kS=93026,Ye="@[<2>[",wS=110588,da="comment",yX=191,ha="switch_case",dX=175,ES=71942,ka="do_while",wv="constructor",SS=43587,gS=43586,wu="yield",FS=67462,hX="fd ",TS=-61,OS="target",i3=72272,U2="var",kX="impltype",f3=70108,H2="0o",IS=119972,AS=92991,x3=70441,a3=8450,NS=120074,CS=66717,wa="interface_type",o3=43880,An="%B",PS=111355,Ev=5760,DS=11630,c3=126499,LS="of",wX=">>",EX="Popping lex mode from empty stack",s3=120629,fs=108,RS=43002,SX="%=",v3=126539,jS=126502,Ea="template_literal",GS="src/parser/statement_parser.ml",MS=": Not a directory",gX="b",BS=67461,qS=11519,FX="src/parser/flow_lexer.ml",TX="Out_of_memory",US=120570,Sa=12287,HS=126534,XS="index out of bounds",YS=73029,l3="_bigarr02",b3=126571,OX="))",ga="for_statement_init",IX="supertype",Fa="class_property",p3="}",f1="this",Ta="declare_module_exports",AX="@",Oa="union_type",Li=65535,Ia="variance_opt",VS=94032,NX=222,zS=42124,Aa="this_expression",Na="jsx_element",CX="typeArguments",KS=65019,WS=125251,JS=64111,$S=8471,Ca="typeof_qualified_identifier",ZS=70497,PX="EnumDefaultedMember",Pa=8202,QS=66927,P7="switch",rg=69634,Da="unary_expression",eg=71215,DX=126,ng=67679,tg=65597,LX=207,ug=120686,m3=72163,ig=67001,fg=42962,xg=64262,X2=124,La=65279,ag=126495,RX=169,og=71944,jX=-10,_3="alternate",cg=92975,sg=65489,Y2=252,vg=67807,lg=43187,bg=68850,y3="export",pg=66383,GX="===",Ra=".",ja="type_args",MX=147,mg=92159,BX=240,Ga="jsx_element_name",_g=72283,yg=171,x1=116,dg=110587,d3=70279,hg=75075,kg=65338,Ma="function_params",wg=126627,qX=213,h3=73065,Eg=71352,k3=119970,Sg=70005,gg=12295,w3=120771,Fg=71494,Tg=11557,Og=42191,UX="flags",Ig=68437,Ag=70730,Ba="optional_indexed_access",qa="pattern_object_p",Ng=42785,Ua="nullable_type",Bn="value",Cg=12343,Pg=68415,Dg=11694,HX=221,Lg=11726,Ha="syntax",Rg=119964,XX="&&",jg=68497,Gg=73097,xs="null",E3=126523,Mg=120084,Bg=126601,qg=8454,Ug="expressions",Hg=72144,V2='"',Zr="(@[",YX=1022,VX=231,Xg=170,S3=12448,Yg=68786,g3="<",zX=931,KX="(",WX=196,JX=2048,F3="an identifier",T3=69959,Vg=68799,$X="leadingComments",zg=72969,Kg=182,Wg=100351,Xa="enum_defaulted_member",Jg=69839,$g=94026,Zg=209,ZX=">>=",Qg=131,O3=12336,s7="empty",QX=331416730,rY=204,rF=70479,eF=69487,nF=101640,tF=43123,eY="([^/]+)",I3=8319,nY=165,Ya="object_type_property_setter",tY=909,uF=15,iF=12591,br=125,fF=92735,uY="cases",xF=183969,a1="bigint",iY="Division_by_zero",aF=67071,oF=12329,A3=120004,cF=69414,N3="if",sF=126519,vF="immediately within another function.",lF=55238,bF=126498,fY="qualification",pF=66256,Er="@ }@]",z2=118,C3=11565,P3=120122,Va="pattern_object_rest_property",mF=74862,D3="'",_F=-26065557,yF=124911,Sv=119,D7=104,za="assignment",dF=8457,K2="from",hF=64321,kF=113817,wF=65629,EF=42655,Ri=102,SF=43137,gF=11502,o0=";@ ",L7=101,Ka="pattern_array_element_pattern",Wn="body",Wa="jsx_member_expression",FF=65547,Ja="jsx_attribute_value",$a="jsx_namespaced_name",L3=72967,TF=126550,gv=254,OF=43807,IF=43738,R3=126589,j3=8455,G3=126628,AF=11670,xY="*=",M3=120134,Za="conditional",aY=" : flags Open_text and Open_binary are not compatible",B3=119965,NF=69890,CF=72817,PF=164,DF=43822,q3=69744,oY="\\\\",LF=43638,RF=93047,jF="AssignmentPattern",U3=64322,GF=123190,cY=188,Qa="object_spread_property_type",MF=70783,BF=113663,sY=160,H3=42622,X3=43823,ji="init",Fv=109,qF=66503,Y3="proto",UF=74649,ro="optional_member",HF=40981,XF=120654,v="@ ",eo="enum_boolean_body",no="export_named_specifier",to="declare_interface",YF=70451,uo="pattern_object_property_computed_key",V3=-97,z3=120539,K3=64317,VF=12543,io="export_named_declaration_specifier",zF=43359,W3=126530,J3=72713,KF=113800,vY=195,WF=72367,JF=72103,$F=70278,fo="if_consequent_statement",W2=-85,$3=126496,xo="try_catch",ao="computed_key",oo="class_",ZF=173823,co="pattern_object_property_identifier_key",lY="f",so="arrow_function",Z3=8485,QF=126546,vo="enum_boolean_member",rT=94177,J2="delete",eT=232,bY="blocks",lo="pattern_array_rest_element_pattern",nT=78894,Q3=66512,tT=94111,Tv="string",Ts="test",uT=69572,iT=66463,fT=66335,xT=72348,aT=73061,o1=":",bo="enum_body",oT=110590,po="function_this_param_type",cT=215,sT=77823,pY="minus",mY=201,vT=119980,mo="private_name",_o="object_key",yo="function_param_type",_Y="<<",lT=11718,c1="as",yY="delegate",Gi="true",bT=67413,r6=70854,pT=73439,mT=43776,_T=71723,yT=11505,dT=214,hT=120628,kT=43513,ho="jsx_attribute_name_namespaced",e6=120127,n6="Map.bal",t6="any",dY="@[",hY="camlinternalMod.ml",u6=126559,qu="import",i6=70404,ko="jsx_spread_child",wT=233,ET=67897,ST=119974,Uu=8233,gT=68405,f6=239,kY="attributes",wY=173,wo="object_internal_slot_property_type",FT=71351,TT=242,OT=67643,x6="shorthand",Eo="for_in_statement",IT=126463,AT=71338,NT=69445,CT=65370,PT=73055,DT=167,LT=64911,So="pattern_object_property_pattern",EY=212,SY=197,a6=126579,RT=64286,jT="explicitType",GT=67669,MT=43866,gY="Sys_blocked_io",o6="catch",BT=123197,qT=64466,UT=65140,HT=73030,XT=69404,c6="protected",FY=8204,YT=67504,VT=193,$2=246,zT=43713,s6=120571,go="array_type",TY="%u",Fo="export_default_declaration",To="class_expression",OY="quasi",Yt="%S",KT=8525,v6=126515,WT=120485,l6=43519,b6=120745,p6=94178,JT=126588,zn=127,$T=66855,IY="@{",AY="visit_leading_comment",ZT=67742,NY=" : flags Open_rdonly and Open_wronly are not compatible",QT=120144,m6="returnType",s1=-744106340,v1=240,Oo="-",_6=8469,Os="async",y6=126521,rO=72095,d6=216,CY=" : file already exists",eO=178205,nO=8449,h6=94179,tO=42774,k6="case",uO=66965,iO=66431,PY=190,Io="declare_export_declaration",Z2="targs",Ao="type_identifier",fO=64284,xO=43013,w6=43815,No="function_body_any",aO=66966,E6=120687,oO=66939,cO=66978,DY=168,S6="public",sO=68115,vO=43712,g6=65598,F6=126547,lO=110591,Co="indexed_access",LY=12520,r7="interface",RY=`(Program not linked with -g, cannot print stack backtrace) +`,l1=-46,Po="string_literal_type",Do="import_namespace_specifier",bO=120132,T6=11735,pO=67505,O6=119893,I6="bool",Q2=1e3,mi="default",mO=236,C="",_O="exportKind",jY="trailingComments",A6="^",yO=71983,dO=8348,hO=66977,kO=65594,Lo="logical",Ro="jsx_member_expression_identifier",N6=210,GY="cooked",jo="for_of_left_declaration",Ov=63,wO=72202,v7="argument",EO=12442,SO=43645,C6=120085,gO=42539,P6=126468,MY=166,BY="Match_failure",FO=68191,Eu="src/parser/flow_ast.ml",D6=11647,Go="declare_variable",as="+",TO=71127,L6=120145,Mo="declare_export_declaration_decl",R6=64318,qY=179,Bo="class_implements",UY="!=",HY="inexact",XY="%li",YY=237,rl="a",j6=73062,OO=178,qo=65278,Uo="function_rest_param_type",IO=77711,AO=70066,NO=43714,VY=-696510241,G6=70480,CO=69748,PO=113788,DO=94207,zY=`\r +`,Ho="class_body",LO=126651,RO=68735,jO=43273,M6=119996,B6=67644,KY=224,Xo="catch_clause_pattern",Yo="boolean_literal_type",q6=126554,U6=126557,GO=113807,H6=126536,WY="%",Iv="property",MO=71956,JY="#",BO=123213,el="meta",Vo="for_of_assignment_pattern",zo="if_statement",qO=66421,UO=8505,HO=225,nl=250,XO=100343,X6="Literal",YO=42887,Av=115,$Y=";",VO=1255,zO="=",KO=126566,WO=93823,Ko="opaque_type",ZY="!==",Wo="jsx_attribute",Jo="type_annotation_hint",Mi=32768,JO=73727,QY="range",rV=245,$O="jsError",Y6=70006,ZO=43492,V6="@]}",tr="(Some ",QO=8477,eV=129,rI=71487,z6=126564,nV=` +`,eI=126514,nI=70080,$o="generic_identifier_type",tI=66811,Zo="typeof_identifier",tV="~",uI=65007,Qo="pattern_object_rest_property_pattern",iI=194,uV=1039100673,fI=66461,xI=70319,K6=11719,aI=72271,zt=-48,rc="enum_string_body",oI=70461,ec="export_named_declaration",cI=110930,sI=92862,iV="??=",vI=70440,W6="while",cu="camlinternalFormat.ml",lI=43782,fV=203,bI=173791,pI=11263,mI=1114111,_I=42969,J6=70750,nc="jsx_identifier",yI=70105,dI=43014,hI=11564,tc="typeof_type",xV="EEXIST",kI=64847,wI=71167,EI=42511,SI=72712,gI=92995,FI=43704,tl=121,uc="object_call_property_type",TI=64433,ul="operator",$6=68296,ic="class_decorator",fc=120,xc="for_of_statement_lhs",OI=11623,II=67004,AI=71999,NI=70708,CI=512,PI=110927,DI=71423,aV=32752,LI=93951,RI=12292,ac="object_type",Z6="types",jI=110580,oV=177,GI=126633,MI=12686,oc=8286,cV=144,BI=73647,sV=228,Q6=70855,b1="0x",qI=70366,UI=` +`,cc="variable_declaration",HI=65276,rp=119981,XI=71945,YI=43887,R7=105,VI=8335,zI=123565,KI=69505,WI=70187,sc="jsx_attribute_name_identifier",vc="source",lc="pattern_object_property_key",ep=65548,JI=66175,$I=92766,bc="pattern_assignment_pattern",pc="object_type_property_getter",np=8305,j7="generator",tp="for",vV="PropertyDefinition",lV="--",su=-36,ZI="mkdir",QI=68223,mc="generic_qualified_identifier_type",rA=11686,_c="jsx_closing_element",eA=43790,up=": No such file or directory",nA=69687,tA=66348,ip=72162,uA=43388,iA=72768,fA=68351,d="<2>",fp=64297,xA=125259,aA=220,zr=",@ ",bV="win32",xp=70281,yc="member_property_identifier",oA=68149,cA=68111,sA=71450,vA=43009,dc="member_property",lA=73458,_i="identifier",bA=67423,pA=66775,mA=110951,pV="Internal Error: Found object private prop",hc="super_expression",kc="jsx_opening_element",_A=177976,wc="variable_declarator_pattern",Ec="pattern_expression",Sc="jsx_member_expression_object",yA=68252,dA=77808,Nv=-835925911,gc="import_declaration",hA=55203,mV="Pervasives.do_at_exit",_V="utf8",ui="key",kA=43702,Fc="spread_property",ap=126563,wA=863850040,EA=70106,op=67592,Tc="function_expression_or_method",SA=71958,Oc="for_init_declaration",gA=71955,cp=123214,FA=68479,yV="==",TA=43019,OA=123180,sp=217,Cv="specifiers",Ic="function_body",IA=69622,vp=8487,AA=43641,dV="Unexpected token `",hV="v",NA=123135,CA=69295,lp=120093,PA=8521,bp=43642,kV=176;function o70(t,n,e,i,x){if(i<=n)for(var c=1;c<=x;c++)e[i+c]=t[n+c];else for(var c=x;c>=1;c--)e[i+c]=t[n+c];return 0}function c70(t){for(var n=[0];t!==0;){for(var e=t[1],i=1;i=e.l||e.t==2&&x>=e.c.length))e.c=t.t==4?DA(t.c,n,x):n==0&&t.c.length==x?t.c:t.c.substr(n,x),e.t=e.c.length==e.l?0:2;else if(e.t==2&&i==e.c.length)e.c+=t.t==4?DA(t.c,n,x):n==0&&t.c.length==x?t.c:t.c.substr(n,x),e.t=e.c.length==e.l?0:2;else{e.t!=4&&pp(e);var c=t.c,s=e.c;if(t.t==4)if(i<=n)for(var p=0;p=0;p--)s[i+p]=c[n+p];else{for(var y=Math.min(x,c.length-n),p=0;p>=1,t==0)return e;n+=n,i++,i==9&&n.slice(0,1)}}function Dv(t){t.t==2?t.c+=Pv(t.l-t.c.length,"\0"):t.c=DA(t.c,0,t.c.length),t.t=0}function wV(t){if(t.length<24){for(var n=0;nzn)return!1;return!0}else return!/[^\x00-\x7f]/.test(t)}function LA(t){for(var n=C,e=C,i,x,c,s,p=0,y=t.length;pCI?(e.substr(0,1),n+=e,e=C,n+=t.slice(p,T)):e+=t.slice(p,T),T==y)break;p=T}s=1,++p=55295&&s<57344)&&(s=2)):(s=3,++p1114111)&&(s=3)))))),s<4?(p-=s,e+="\uFFFD"):s>Li?e+=String.fromCharCode(55232+(s>>10),RH+(s&1023)):e+=String.fromCharCode(s),e.length>L2&&(e.substr(0,1),n+=e,e=C)}return n+e}function Ac(t,n,e){this.t=t,this.c=n,this.l=e}Ac.prototype.toString=function(){switch(this.t){case 9:return this.c;default:Dv(this);case 0:if(wV(this.c))return this.t=9,this.c;this.t=8;case 8:return this.c}},Ac.prototype.toUtf16=function(){var t=this.toString();return this.t==9?t:LA(t)},Ac.prototype.slice=function(){var t=this.t==4?this.c.slice():this.c;return new Ac(this.t,t,this.l)};function EV(t){return new Ac(0,t,t.length)}function r(t){return EV(t)}function RA(t,n){v70(t,r(n))}var Vt=[0];function vu(t){RA(Vt.Invalid_argument,t)}function SV(){vu(XS)}function Jn(t,n,e){if(e&=is,t.t!=4){if(n==t.c.length)return t.c+=String.fromCharCode(e),n+1==t.l&&(t.t=0),0;pp(t)}return t.c[n]=e,0}function p1(t,n,e){return n>>>0>=t.l&&SV(),Jn(t,n,e)}function Hu(t,n){switch(t.t&6){default:if(n>=t.c.length)return 0;case 0:return t.c.charCodeAt(n);case 4:return t.c[n]}}function os(t,n){if(t.fun)return os(t.fun,n);if(typeof t!="function")return t;var e=t.length|0;if(e===0)return t.apply(null,n);var i=n.length|0,x=e-i|0;return x==0?t.apply(null,n):x<0?os(t.apply(null,n.slice(0,e)),n.slice(e)):function(){for(var c=arguments.length==0?1:arguments.length,s=new Array(n.length+c),p=0;p>>0>=t.length-1&&il(),t}function l70(t){return isFinite(t)?Math.abs(t)>=22250738585072014e-324?0:t!=0?1:2:isNaN(t)?4:3}function Nc(t){return t.t&6&&Dv(t),t.c}var b70=Math.log2&&Math.log2(11235582092889474e291)==1020;function p70(t){if(b70)return Math.floor(Math.log2(t));var n=0;if(t==0)return-1/0;if(t>=1)for(;t>=2;)t/=2,n++;else for(;t<1;)t*=2,n--;return n}function jA(t){var n=new j0.Float32Array(1);n[0]=t;var e=new j0.Int32Array(n.buffer);return e[0]|0}var gV=Math.pow(2,-24);function FV(t){throw t}function TV(){FV(Vt.Division_by_zero)}function an(t,n,e){this.lo=t&gx,this.mi=n&gx,this.hi=e&Li}an.prototype.caml_custom="_j",an.prototype.copy=function(){return new an(this.lo,this.mi,this.hi)},an.prototype.ucompare=function(t){return this.hi>t.hi?1:this.hit.mi?1:this.mit.lo?1:this.loe?1:nt.mi?1:this.mit.lo?1:this.lo>24),e=-this.hi+(n>>24);return new an(t,n,e)},an.prototype.add=function(t){var n=this.lo+t.lo,e=this.mi+t.mi+(n>>24),i=this.hi+t.hi+(e>>24);return new an(n,e,i)},an.prototype.sub=function(t){var n=this.lo-t.lo,e=this.mi-t.mi+(n>>24),i=this.hi-t.hi+(e>>24);return new an(n,e,i)},an.prototype.mul=function(t){var n=this.lo*t.lo,e=(n*gV|0)+this.mi*t.lo+this.lo*t.mi,i=(e*gV|0)+this.hi*t.lo+this.mi*t.mi+this.lo*t.hi;return new an(n,e,i)},an.prototype.isZero=function(){return(this.lo|this.mi|this.hi)==0},an.prototype.isNeg=function(){return this.hi<<16<0},an.prototype.and=function(t){return new an(this.lo&t.lo,this.mi&t.mi,this.hi&t.hi)},an.prototype.or=function(t){return new an(this.lo|t.lo,this.mi|t.mi,this.hi|t.hi)},an.prototype.xor=function(t){return new an(this.lo^t.lo,this.mi^t.mi,this.hi^t.hi)},an.prototype.shift_left=function(t){return t=t&63,t==0?this:t<24?new an(this.lo<>24-t,this.hi<>24-t):t<48?new an(0,this.lo<>48-t):new an(0,0,this.lo<>t|this.mi<<24-t,this.mi>>t|this.hi<<24-t,this.hi>>t):t<48?new an(this.mi>>t-24|this.hi<<48-t,this.hi>>t-24,0):new an(this.hi>>t-48,0,0)},an.prototype.shift_right=function(t){if(t=t&63,t==0)return this;var n=this.hi<<16>>16;if(t<24)return new an(this.lo>>t|this.mi<<24-t,this.mi>>t|n<<24-t,this.hi<<16>>t>>>16);var e=this.hi<<16>>31;return t<48?new an(this.mi>>t-24|this.hi<<48-t,this.hi<<16>>t-24>>16,e&Li):new an(this.hi<<16>>t-32,e,e)},an.prototype.lsl1=function(){this.hi=this.hi<<1|this.mi>>23,this.mi=(this.mi<<1|this.lo>>23)&gx,this.lo=this.lo<<1&gx},an.prototype.lsr1=function(){this.lo=(this.lo>>>1|this.mi<<23)&gx,this.mi=(this.mi>>>1|this.hi<<23)&gx,this.hi=this.hi>>>1},an.prototype.udivmod=function(t){for(var n=0,e=this.copy(),i=t.copy(),x=new an(0,0,0);e.ucompare(i)>0;)n++,i.lsl1();for(;n>=0;)n--,x.lsl1(),e.ucompare(i)>=0&&(x.lo++,e=e.sub(i)),i.lsr1();return{quotient:x,modulus:e}},an.prototype.div=function(t){var n=this;t.isZero()&&TV();var e=n.hi^t.hi;n.hi&Mi&&(n=n.neg()),t.hi&Mi&&(t=t.neg());var i=n.udivmod(t).quotient;return e&Mi&&(i=i.neg()),i},an.prototype.mod=function(t){var n=this;t.isZero()&&TV();var e=n.hi;n.hi&Mi&&(n=n.neg()),t.hi&Mi&&(t=t.neg());var i=n.udivmod(t).modulus;return e&Mi&&(i=i.neg()),i},an.prototype.toInt=function(){return this.lo|this.mi<<24},an.prototype.toFloat=function(){return(this.hi<<16)*Math.pow(2,32)+this.mi*Math.pow(2,24)+this.lo},an.prototype.toArray=function(){return[this.hi>>8,this.hi&is,this.mi>>16,this.mi>>8&is,this.mi&is,this.lo>>16,this.lo>>8&is,this.lo&is]},an.prototype.lo32=function(){return this.lo|(this.mi&is)<<24},an.prototype.hi32=function(){return this.mi>>>8&Li|this.hi<<16};function mp(t,n,e){return new an(t,n,e)}function _p(t){if(!isFinite(t))return isNaN(t)?mp(1,0,aV):t>0?mp(0,0,aV):mp(0,0,65520);var n=t==0&&1/t==-1/0?Mi:t>=0?0:Mi;n&&(t=-t);var e=p70(t)+1023;e<=0?(e=0,t/=Math.pow(2,-iH)):(t/=Math.pow(2,e-oU),t<16&&(t*=2,e-=1),e==0&&(t/=2));var i=Math.pow(2,24),x=t|0;t=(t-x)*i;var c=t|0;t=(t-c)*i;var s=t|0;return x=x&uF|n|e<<4,mp(s,c,x)}function fl(t){return t.toArray()}function OV(t,n,e){if(t.write(32,n.dims.length),t.write(32,n.kind|n.layout<<8),n.caml_custom==l3)for(var i=0;i>4;if(x==xX)return n|e|i&uF?NaN:i&Mi?-1/0:1/0;var c=Math.pow(2,-24),s=(n*c+e)*c+(i&uF);return x>0?(s+=16,s*=Math.pow(2,x-oU)):s*=Math.pow(2,-iH),i&Mi&&(s=-s),s}function BA(t){for(var n=t.length,e=1,i=0;i>>24&is|(n&Li)<<8,n>>>16&Li)}function qA(t){return t.hi32()}function UA(t){return t.lo32()}var y70=l3;function Ns(t,n,e,i){this.kind=t,this.layout=n,this.dims=e,this.data=i}Ns.prototype.caml_custom=y70,Ns.prototype.offset=function(t){var n=0;if(typeof t=="number"&&(t=[t]),t instanceof Array||vu("bigarray.js: invalid offset"),this.dims.length!=t.length&&vu("Bigarray.get/set: bad number of dimensions"),this.layout==0)for(var e=0;e=this.dims[e])&&il(),n=n*this.dims[e]+t[e];else for(var e=this.dims.length-1;e>=0;e--)(t[e]<1||t[e]>this.dims[e])&&il(),n=n*this.dims[e]+(t[e]-1);return n},Ns.prototype.get=function(t){switch(this.kind){case 7:var n=this.data[t*2+0],e=this.data[t*2+1];return _70(n,e);case 10:case 11:var i=this.data[t*2+0],x=this.data[t*2+1];return[gv,i,x];default:return this.data[t]}},Ns.prototype.set=function(t,n){switch(this.kind){case 7:this.data[t*2+0]=UA(n),this.data[t*2+1]=qA(n);break;case 10:case 11:this.data[t*2+0]=n[1],this.data[t*2+1]=n[2];break;default:this.data[t]=n;break}return 0},Ns.prototype.fill=function(t){switch(this.kind){case 7:var n=UA(t),e=qA(t);if(n==e)this.data.fill(n);else for(var i=0;is)return 1;if(c!=s){if(!n)return NaN;if(c==c)return 1;if(s==s)return-1}}break;case 7:for(var x=0;xt.data[x+1])return 1;if(this.data[x]>>>0>>0)return-1;if(this.data[x]>>>0>t.data[x]>>>0)return 1}break;case 2:case 3:case 4:case 5:case 6:case 8:case 9:case 12:for(var x=0;xt.data[x])return 1}break}return 0};function Lv(t,n,e,i){this.kind=t,this.layout=n,this.dims=e,this.data=i}Lv.prototype=new Ns,Lv.prototype.offset=function(t){return typeof t!="number"&&(t instanceof Array&&t.length==1?t=t[0]:vu("Ml_Bigarray_c_1_1.offset")),(t<0||t>=this.dims[0])&&il(),t},Lv.prototype.get=function(t){return this.data[t]},Lv.prototype.set=function(t,n){return this.data[t]=n,0},Lv.prototype.fill=function(t){return this.data.fill(t),0};function AV(t,n,e,i){var x=IV(t);return BA(e)*x!=i.length&&vu("length doesn't match dims"),n==0&&e.length==1&&x==1?new Lv(t,n,e,i):new Ns(t,n,e,i)}function e7(t){RA(Vt.Failure,t)}function NV(t,n,e){var i=t.read32s();(i<0||i>16)&&e7("input_value: wrong number of bigarray dimensions");var x=t.read32s(),c=x&is,s=x>>8&1,p=[];if(e==l3)for(var y=0;y>>32-15,n=PV(n,461845907),t^=n,t=t<<13|t>>>32-13,(t+(t<<2)|0)+-430675100|0}function d70(t,n){return t=cs(t,UA(n)),t=cs(t,qA(n)),t}function DV(t,n){return d70(t,_p(n))}function LV(t){var n=BA(t.dims),e=0;switch(t.kind){case 2:case 3:case 12:n>C4&&(n=C4);var i=0,x=0;for(x=0;x+4<=t.data.length;x+=4)i=t.data[x+0]|t.data[x+1]<<8|t.data[x+2]<<16|t.data[x+3]<<24,e=cs(e,i);switch(i=0,n&3){case 3:i=t.data[x+2]<<16;case 2:i|=t.data[x+1]<<8;case 1:i|=t.data[x+0],e=cs(e,i)}break;case 4:case 5:n>Rt&&(n=Rt);var i=0,x=0;for(x=0;x+2<=t.data.length;x+=2)i=t.data[x+0]|t.data[x+1]<<16,e=cs(e,i);n&1&&(e=cs(e,t.data[x]));break;case 6:n>64&&(n=64);for(var x=0;x64&&(n=64);for(var x=0;x32&&(n=32),n*=2;for(var x=0;x64&&(n=64);for(var x=0;x32&&(n=32);for(var x=0;x0?x(n,t,i):x(t,n,i);if(i&&c!=c)return e;if(+c!=+c)return+c;if(c|0)return c|0}return e}function yp(t){return t instanceof Ac}function XA(t){return yp(t)}function GV(t){if(typeof t=="number")return Q2;if(yp(t))return Y2;if(XA(t))return 1252;if(t instanceof Array&&t[0]===t[0]>>>0&&t[0]<=Ow){var n=t[0]|0;return n==gv?0:n}else{if(t instanceof String)return LY;if(typeof t=="string")return LY;if(t instanceof Number)return Q2;if(t&&t.caml_custom)return VO;if(t&&t.compare)return 1256;if(typeof t=="function")return 1247;if(typeof t=="symbol")return 1251}return 1001}function Cc(t,n){return tn.c?1:0}function Ee(t,n){return MV(t,n)}function dp(t,n,e){for(var i=[];;){if(!(e&&t===n)){var x=GV(t);if(x==nl){t=t[1];continue}var c=GV(n);if(c==nl){n=n[1];continue}if(x!==c)return x==Q2?c==VO?jV(t,n,-1,e):-1:c==Q2?x==VO?jV(n,t,1,e):1:xn)return 1;if(t!=n){if(!e)return NaN;if(t==t)return 1;if(n==n)return-1}break;case 1001:if(tn)return 1;if(t!=n){if(!e)return NaN;if(t==t)return 1;if(n==n)return-1}break;case 1251:if(t!==n)return e?1:NaN;break;case 1252:var t=Nc(t),n=Nc(n);if(t!==n){if(tn)return 1}break;case 12520:var t=t.toString(),n=n.toString();if(t!==n){if(tn)return 1}break;case 246:case 254:default:if(t.length!=n.length)return t.length1&&i.push(t,n,1);break}}if(i.length==0)return 0;var y=i.pop();n=i.pop(),t=i.pop(),y+10)if(n==0&&(e>=t.l||t.t==2&&e>=t.c.length))i==0?(t.c=C,t.t=2):(t.c=Pv(e,String.fromCharCode(i)),t.t=e==t.l?0:2);else for(t.t!=4&&pp(t),e+=n;n0&&n===n||(t=t.replace(/_/g,C),n=+t,t.length>0&&n===n||/^[+-]?nan$/i.test(t)))return n;var e=/^ *([+-]?)0x([0-9a-f]+)\.?([0-9a-f]*)p([+-]?[0-9]+)/i.exec(t);if(e){var i=e[3].replace(/0+$/,C),x=parseInt(e[1]+e[2]+i,16),c=(e[4]|0)-4*i.length;return n=x*Math.pow(2,c),n}if(/^\+?inf(inity)?$/i.test(t))return 1/0;if(/^-inf(inity)?$/i.test(t))return-1/0;e7("float_of_string")}function YA(t){t=Nc(t);var n=t.length;n>31&&vu("format_int: format too long");for(var e={justify:as,signstyle:Oo,filler:bi,alternate:!1,base:0,signedconv:!1,width:0,uppercase:!1,sign:1,prec:-1,conv:lY},i=0;i=0&&x<=9;)e.width=e.width*10+x,i++;i--;break;case".":for(e.prec=0,i++;x=t.charCodeAt(i)-48,x>=0&&x<=9;)e.prec=e.prec*10+x,i++;i--;case"d":case"i":e.signedconv=!0;case"u":e.base=10;break;case"x":e.base=16;break;case"X":e.base=16,e.uppercase=!0;break;case"o":e.base=8;break;case"e":case"f":case"g":e.signedconv=!0,e.conv=x;break;case"E":case"F":case"G":e.signedconv=!0,e.uppercase=!0,e.conv=x.toLowerCase();break}}return e}function VA(t,n){t.uppercase&&(n=n.toUpperCase());var e=n.length;t.signedconv&&(t.sign<0||t.signstyle!=Oo)&&e++,t.alternate&&(t.base==8&&(e+=1),t.base==16&&(e+=2));var i=C;if(t.justify==as&&t.filler==bi)for(var x=e;x20?(w-=20,E/=Math.pow(10,w),E+=new Array(w+1).join($u),h>0&&(E=E+Ra+new Array(h+1).join($u)),E):E.toFixed(h)}var i,x=YA(t),c=x.prec<0?6:x.prec;if((n<0||n==0&&1/n==-1/0)&&(x.sign=-1,n=-n),isNaN(n))i=bw,x.filler=bi;else if(!isFinite(n))i="inf",x.filler=bi;else switch(x.conv){case"e":var i=n.toExponential(c),s=i.length;i.charAt(s-3)==iy&&(i=i.slice(0,s-1)+$u+i.slice(s-1));break;case"f":i=e(n,c);break;case"g":c=c||1,i=n.toExponential(c-1);var p=i.indexOf(iy),y=+i.slice(p+1);if(y<-4||n>=1e21||n.toFixed(0).length>c){for(var s=p-1;i.charAt(s)==$u;)s--;i.charAt(s)==Ra&&s--,i=i.slice(0,s+1)+i.slice(p),s=i.length,i.charAt(s-3)==iy&&(i=i.slice(0,s-1)+$u+i.slice(s-1));break}else{var T=c;if(y<0)T-=y+1,i=n.toFixed(T);else for(;i=n.toFixed(T),i.length>c+1;)T--;if(T){for(var s=i.length-1;i.charAt(s)==$u;)s--;i.charAt(s)==Ra&&s--,i=i.slice(0,s+1)}}break}return VA(x,i)}function hp(t,n){if(Nc(t)==N2)return r(C+n);var e=YA(t);n<0&&(e.signedconv?(e.sign=-1,n=-n):n>>>=0);var i=n.toString(e.base);if(e.prec>=0){e.filler=bi;var x=e.prec-i.length;x>0&&(i=Pv(x,$u)+i)}return VA(e,i)}var UV=0;function G7(){return UV++}function O70(){return 0}function HV(){return[0]}var kp=[];function Ze(t,n,e){var i=t[1],x=kp[e];if(x===void 0)for(var c=kp.length;c>1|1,nCI?(e.substr(0,1),n+=e,e=C,n+=t.slice(c,p)):e+=t.slice(c,p),p==s)break;c=p}i>6),e+=String.fromCharCode(Pi|i&Ov)):i<55296||i>=IH?e+=String.fromCharCode(KY|i>>12,Pi|i>>6&Ov,Pi|i&Ov):i>=56319||c+1==s||(x=t.charCodeAt(c+1))IH?e+="\xEF\xBF\xBD":(c++,i=(i<<10)+x-56613888,e+=String.fromCharCode(BX|i>>18,Pi|i>>12&Ov,Pi|i>>6&Ov,Pi|i&Ov)),e.length>L2&&(e.substr(0,1),n+=e,e=C)}return n+e}function A70(t){var n=9;return wV(t)||(n=8,t=I70(t)),new Ac(n,t,t.length)}function M7(t){return A70(t)}function N70(t,n,e){if(!isFinite(t))return isNaN(t)?M7(bw):M7(t>0?kU:"-infinity");var i=t==0&&1/t==-1/0?1:t>=0?0:1;i&&(t=-t);var x=0;if(t!=0)if(t<1)for(;t<1&&x>-YX;)t*=2,x--;else for(;t>=2;)t/=2,x++;var c=x<0?C:as,s=C;if(i)s=Oo;else switch(e){case 43:s=as;break;case 32:s=bi;break;default:break}if(n>=0&&n<13){var p=Math.pow(2,n*4);t=Math.round(t*p)/p}var y=t.toString(16);if(n>=0){var T=y.indexOf(Ra);if(T<0)y+=Ra+Pv(n,$u);else{var E=T+1+n;y.length>24&gx,t>>31&Li)}function P70(t){return t.toInt()}function D70(t){return+t.isNeg()}function XV(t){return t.neg()}function L70(t,n){var e=YA(t);e.signedconv&&D70(n)&&(e.sign=-1,n=XV(n));var i=C,x=wp(e.base),c="0123456789abcdef";do{var s=n.udivmod(x);n=s.quotient,i=c.charAt(P70(s.modulus))+i}while(!C70(n));if(e.prec>=0){e.filler=bi;var p=e.prec-i.length;p>0&&(i=Pv(p,$u)+i)}return VA(e,i)}function l7(t){return t.l}function nn(t){return l7(t)}function Vr(t,n){return Hu(t,n)}function R70(t,n){return t.add(n)}function j70(t,n){return t.mul(n)}function KA(t,n){return t.ucompare(n)<0}function YV(t){var n=0,e=nn(t),i=10,x=1;if(e>0)switch(Vr(t,n)){case 45:n++,x=-1;break;case 43:n++,x=1;break}if(n+1=48&&t<=57?t-48:t>=65&&t<=90?t-55:t>=97&&t<=In?t-87:-1}function Rv(t){var n=YV(t),e=n[0],i=n[1],x=n[2],c=wp(x),s=new an(gx,268435455,Li).udivmod(c).quotient,p=Vr(t,e),y=Ep(p);(y<0||y>=x)&&e7(ts);for(var T=wp(y);;)if(e++,p=Vr(t,e),p!=95){if(y=Ep(p),y<0||y>=x)break;KA(s,T)&&e7(ts),y=wp(y),T=R70(j70(c,T),y),KA(T,y)&&e7(ts)}return e!=nn(t)&&e7(ts),x==10&&KA(new an(0,0,Mi),T)&&e7(ts),i<0&&(T=XV(T)),T}function jv(t){return t.toFloat()}function Bi(t){var n=YV(t),e=n[0],i=n[1],x=n[2],c=nn(t),s=-1>>>0,p=e=x)&&e7(ts);var T=y;for(e++;e=x)break;T=x*T+y,T>s&&e7(ts)}return e!=c&&e7(ts),T=i*T,x==10&&(T|0)!=T&&e7(ts),T|0}function G70(t){return t.slice(1)}function M70(t){return!!t}function sn(t){return t.toUtf16()}function B70(t){for(var n={},e=1;e1&&i.pop();break;case".":break;default:i.push(e[x]);break}return i.unshift(n[0]),i.orig=t,i}var Y70=["E2BIG","EACCES","EAGAIN","EBADF","EBUSY","ECHILD","EDEADLK","EDOM",xV,"EFAULT","EFBIG","EINTR","EINVAL","EIO","EISDIR","EMFILE","EMLINK","ENAMETOOLONG","ENFILE","ENODEV",pd,"ENOEXEC","ENOLCK","ENOMEM","ENOSPC","ENOSYS",kw,GU,"ENOTTY","ENXIO","EPERM","EPIPE","ERANGE","EROFS","ESPIPE","ESRCH","EXDEV","EWOULDBLOCK","EINPROGRESS","EALREADY","ENOTSOCK","EDESTADDRREQ","EMSGSIZE","EPROTOTYPE","ENOPROTOOPT","EPROTONOSUPPORT","ESOCKTNOSUPPORT","EOPNOTSUPP","EPFNOSUPPORT","EAFNOSUPPORT","EADDRINUSE","EADDRNOTAVAIL","ENETDOWN","ENETUNREACH","ENETRESET","ECONNABORTED","ECONNRESET","ENOBUFS","EISCONN","ENOTCONN","ESHUTDOWN","ETOOMANYREFS","ETIMEDOUT","ECONNREFUSED","EHOSTDOWN","EHOSTUNREACH","ELOOP","EOVERFLOW"];function _1(t,n,e,i){var x=Y70.indexOf(t);x<0&&(i==null&&(i=-9999),x=[0,i]);var c=[x,M7(n||C),M7(e||C)];return c}var KV={};function y1(t){return KV[t]}function d1(t,n){throw[0,t].concat(n)}function V70(t){return new Ac(4,t,t.length)}function z70(t){t=Nc(t),ot(t+up)}function K70(t,n){return n>>>0>=t.l&&SV(),Hu(t,n)}function WV(){}function Su(t){this.data=t}Su.prototype=new WV,Su.prototype.truncate=function(t){var n=this.data;this.data=Pt(t|0),Is(n,0,this.data,0,t)},Su.prototype.length=function(){return l7(this.data)},Su.prototype.write=function(t,n,e,i){var x=this.length();if(t+i>=x){var c=Pt(t+i),s=this.data;this.data=c,Is(s,0,this.data,0,x)}return As(n,e,this.data,t,i),0},Su.prototype.read=function(t,n,e,i){var x=this.length();return Is(this.data,t,n,e,i),0},Su.prototype.read_one=function(t){return K70(this.data,t)},Su.prototype.close=function(){},Su.prototype.constructor=Su;function n7(t,n){this.content={},this.root=t,this.lookupFun=n}n7.prototype.nm=function(t){return this.root+t},n7.prototype.create_dir_if_needed=function(t){for(var n=t.split(Zu),e=C,i=0;iVt.fd_last_idx)&&(Vt.fd_last_idx=t),t}function Lae(t,n,e){for(var i={};n;){switch(n[1]){case 0:i.rdonly=1;break;case 1:i.wronly=1;break;case 2:i.append=1;break;case 3:i.create=1;break;case 4:i.truncate=1;break;case 5:i.excl=1;break;case 6:i.binary=1;break;case 7:i.text=1;break;case 8:i.nonblock=1;break}n=n[2]}i.rdonly&&i.wronly&&ot(Nc(t)+NY),i.text&&i.binary&&ot(Nc(t)+aY);var x=$70(t),c=x.device.open(x.rest,i),s=Vt.fd_last_idx?Vt.fd_last_idx:0;return gp(s+1,$V,c,i)}gp(0,$V,new Su(Pt(0))),gp(1,Q70,new Su(Pt(0))),gp(2,Z70,new Su(Pt(0)));function ri0(t){var n=Vt.fds[t];n.flags.wronly&&ot(hX+t+" is writeonly");var e=null;if(t==0&&VV()){var i=Fj();e=function(){return M7(i.readFileSync(0,_V))}}var x={file:n.file,offset:n.offset,fd:t,opened:!0,out:!1,refill:e};return Pc[x.fd]=x,x.fd}function ZV(t){var n=Vt.fds[t];n.flags.rdonly&&ot(hX+t+" is readonly");var e={file:n.file,offset:n.offset,fd:t,opened:!0,out:!0,buffer:C};return Pc[e.fd]=e,e.fd}function ei0(){for(var t=0,n=0;n>>0?t[0]:yp(t)||XA(t)?Y2:t instanceof Function||typeof t=="function"?jw:t&&t.caml_custom?Ow:Q2}function yi(t,n,e){e&&j0.toplevelReloc&&(t=j0.toplevelReloc(e)),Vt[t+1]=n,e&&(Vt[e]=n)}function ZA(t,n){return KV[Nc(t)]=n,0}function ui0(t){return t[2]=UV++,t}function ii0(t,n){return t===n?1:(t.t&6&&Dv(t),n.t&6&&Dv(n),t.c==n.c?1:0)}function qn(t,n){return ii0(t,n)}function fi0(){vu(XS)}function Ot(t,n){return n>>>0>=nn(t)&&fi0(),Vr(t,n)}function n0(t,n){return 1-qn(t,n)}function xi0(){return[0,r("js_of_ocaml")]}function ai0(){return 2147483647/4|0}function oi0(t){return 0}var ci0=j0.process&&j0.process.platform&&j0.process.platform==bV?UU:"Unix";function si0(){return[0,r(ci0),32,0]}function vi0(){FV(Vt.Not_found)}function rz(t){var n=j0,e=sn(t);if(n.process&&n.process.env&&n.process.env[e]!=null)return M7(n.process.env[e]);if(j0.jsoo_static_env&&j0.jsoo_static_env[e])return M7(j0.jsoo_static_env[e]);vi0()}function QA(t){for(var n=1;t&&t.joo_tramp;)t=t.joo_tramp.apply(null,t.joo_args),n++;return t}function Fu(t,n){return{joo_tramp:t,joo_args:n}}function N(t,n){if(typeof n=="function")return t.fun=n,0;if(n.fun)return t.fun=n.fun,0;for(var e=n.length;e--;)t[e]=n[e];return 0}function jae(t){return t}function Et(t){return t instanceof Array?t:j0.RangeError&&t instanceof j0.RangeError&&t.message&&t.message.match(/maximum call stack/i)||j0.InternalError&&t instanceof j0.InternalError&&t.message&&t.message.match(/too much recursion/i)?Vt.Stack_overflow:t instanceof j0.Error&&y1($O)?[0,y1($O),t]:[0,Vt.Failure,M7(String(t))]}function li0(t){switch(t[2]){case-8:case-11:case-12:return 1;default:return 0}}function bi0(t){var n=C;if(t[0]==0){if(n+=t[1][1],t.length==3&&t[2][0]==0&&li0(t[1]))var i=t[2],e=1;else var e=2,i=t;n+=KX;for(var x=e;xe&&(n+=nX);var c=i[x];typeof c=="number"?n+=c.toString():c instanceof Ac||typeof c=="string"?n+=V2+c.toString()+V2:n+=bv}n+=Z0}else t[0]==wt&&(n+=t[1]);return n}function ez(t){if(t instanceof Array&&(t[0]==0||t[0]==wt)){var n=y1(BH);if(n)n(t,!1);else{var e=bi0(t),i=y1(mV);i&&i(0),j0.console.error(kh+e+nV)}}else throw t}function pi0(){var t=j0;t.process&&t.process.on?t.process.on("uncaughtException",function(n,e){ez(n),t.process.exit(2)}):t.addEventListener&&t.addEventListener("error",function(n){n.error&&ez(n.error)})}pi0();function u(t,n){return t.length==1?t(n):os(t,[n])}function a(t,n,e){return t.length==2?t(n,e):os(t,[n,e])}function ir(t,n,e,i){return t.length==3?t(n,e,i):os(t,[n,e,i])}function R(t,n,e,i,x){return t.length==4?t(n,e,i,x):os(t,[n,e,i,x])}function b7(t,n,e,i,x,c){return t.length==5?t(n,e,i,x,c):os(t,[n,e,i,x,c])}function mi0(t,n,e,i,x,c,s,p){return t.length==7?t(n,e,i,x,c,s,p):os(t,[n,e,i,x,c,s,p])}var rN=[wt,r(TX),-1],nz=[wt,r(MH),-2],B7=[wt,r(LH),-3],eN=[wt,r(sH),-4],Kt=[wt,r(QU),-7],tz=[wt,r(BY),-8],uz=[wt,r($U),-9],wn=[wt,r(TU),-11],sl=[wt,r(oX),-12],iz=[0,c7],_i0=[4,0,0,0,[12,45,[4,0,0,0,0]]],nN=[0,[11,r('File "'),[2,0,[11,r('", line '),[4,0,0,0,[11,r(EH),[4,0,0,0,[12,45,[4,0,0,0,[11,r(": "),[2,0,0]]]]]]]]]],r('File "%s", line %d, characters %d-%d: %s')],fz=[0,0,[0,0,0],[0,0,0]],tN=r(""),uN=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),Bv=[0,0,0,0,1,0],xz=[0,r(Gx),r(va),r(go),r(so),r(za),r(Yf),r(Jx),r(pf),r(of),r(Bx),r(ut),r(Yo),r(I7),r(If),r(px),r(_a),r(lx),r(ef),r(gf),r(Xo),r(oo),r(Ho),r(yf),r(ic),r(Rf),r(To),r(ff),r(Ef),r(Bo),r(Xf),r(Tx),r(ax),r(Fa),r(kf),r(da),r(Qf),r(ao),r(Za),r(A7),r(O7),r(ox),r(Io),r(Mo),r(Wf),r(to),r(la),r(Ta),r(Sx),r(Go),r(ka),r(s7),r(bo),r(eo),r(vo),r(Hx),r(Xa),r(Ux),r(Mf),r(Nf),r(rc),r(Mx),r(Cf),r(ba),r(Fo),r(lf),r(ec),r(io),r(no),r(Au),r(Ix),r(ta),r(Ff),r(Uf),r(Eo),r(qx),r(Oc),r(Vo),r(jo),r(hx),r(xc),r(vi),r(ga),r(pa),r(Ic),r(No),r(kx),r(Nx),r(Tc),r(jf),r(uf),r(ix),r(yo),r(Ma),r(Ex),r(Uo),r(bf),r(po),r(yx),r(j7),r($o),r(mc),r(Kf),r(_i),r(_f),r(fo),r(zo),r(qu),r(gc),r(ma),r(Yx),r(Do),r(Ox),r(Co),r(r7),r(sf),r(wa),r(na),r(Wo),r(Gf),r(sc),r(ho),r(Ja),r(ex),r(cf),r(af),r(Cx),r(_c),r(Na),r(Ga),r(xa),r(Ax),r(sa),r(Px),r(nf),r(nc),r(Wa),r(Ro),r(Sc),r($a),r(bx),r(kc),r(Lx),r(ko),r(Rx),r(ux),r(Wx),r(Lo),r(Xx),r($x),r(dc),r(ur),r(yc),r(Af),r(hf),r(mx),r(Ua),r(jx),r(Tf),r(uc),r(Jf),r(wo),r(_o),r(tx),r(Vf),r(xf),r(Pf),r(xx),r(ca),r(Qa),r(ac),r(pc),r(Ya),r(Ko),r(wf),r(Ba),r(ro),r(pi),r(nx),r(rx),r(Ka),r(mf),r(lo),r(bc),r(Ec),r($f),r(zf),r(qa),r(Df),r(uo),r(co),r(lc),r(ra),r(So),r(Va),r(Qo),r(Qu),r(Le),r(mo),r(_x),r(Wu),r(vx),r(qf),r(Fc),r(df),r(Kx),r(Fx),r(Po),r(hc),r(P7),r(ha),r(Ha),r(Zf),r(Qx),r(Ea),r(Lf),r(Aa),r(g7),r(ua),r(xo),r(oa),r(dx),r(Zx),r(Vx),r(Jo),r(ja),r(Hf),r(Ao),r(sx),r(Of),r(Dx),r(fa),r(Zo),r(Sf),r(Ca),r(tc),r(Da),r(Oa),r(Bf),r(cc),r(fx),r(wc),r(ou),r(Ia),r(ia),r(zx),r(wu)],az=[0,r("first_leading"),r("last_trailing")],oz=[0,0];yi(11,sl,oX),yi(10,wn,TU),yi(9,[wt,r(gY),jX],gY),yi(8,uz,$U),yi(7,tz,BY),yi(6,Kt,QU),yi(5,[wt,r(iY),-6],iY),yi(4,[wt,r(DH),-5],DH),yi(3,eN,sH),yi(2,B7,LH),yi(1,nz,MH),yi(0,rN,TX);var yi0=r("output_substring"),di0=r("%.12g"),hi0=r(Ra),ki0=r(Gi),wi0=r(Ci),Ei0=r(oY),Si0=r("\\'"),gi0=r("\\b"),Fi0=r("\\t"),Ti0=r("\\n"),Oi0=r("\\r"),Ii0=r("List.iter2"),Ai0=r("tl"),Ni0=r("hd"),Ci0=r("String.blit / Bytes.blit_string"),Pi0=r("Bytes.blit"),Di0=r("String.sub / Bytes.sub"),Li0=r("Array.blit"),Ri0=r("Array.sub"),ji0=r("Map.remove_min_elt"),Gi0=[0,0,0,0],Mi0=[0,r("map.ml"),400,10],Bi0=[0,0,0],qi0=r(n6),Ui0=r(n6),Hi0=r(n6),Xi0=r(n6),Yi0=r("Stdlib.Queue.Empty"),Vi0=r("CamlinternalLazy.Undefined"),zi0=r("Buffer.add_substring/add_subbytes"),Ki0=r("Buffer.add: cannot grow buffer"),Wi0=[0,r(HU),93,2],Ji0=[0,r(HU),94,2],$i0=r("Buffer.sub"),Zi0=r("%c"),Qi0=r("%s"),rf0=r(lX),ef0=r(XY),nf0=r(vH),tf0=r(JH),uf0=r("%f"),if0=r(An),ff0=r("%{"),xf0=r("%}"),af0=r("%("),of0=r("%)"),cf0=r(C0),sf0=r("%t"),vf0=r("%?"),lf0=r("%r"),bf0=r("%_r"),pf0=[0,r(cu),850,23],mf0=[0,r(cu),814,21],_f0=[0,r(cu),815,21],yf0=[0,r(cu),818,21],df0=[0,r(cu),819,21],hf0=[0,r(cu),822,19],kf0=[0,r(cu),823,19],wf0=[0,r(cu),826,22],Ef0=[0,r(cu),827,22],Sf0=[0,r(cu),831,30],gf0=[0,r(cu),832,30],Ff0=[0,r(cu),836,26],Tf0=[0,r(cu),837,26],Of0=[0,r(cu),846,28],If0=[0,r(cu),847,28],Af0=[0,r(cu),851,23],Nf0=r(TY),Cf0=[0,r(cu),1558,4],Pf0=r("Printf: bad conversion %["),Df0=[0,r(cu),1626,39],Lf0=[0,r(cu),1649,31],Rf0=[0,r(cu),1650,31],jf0=r("Printf: bad conversion %_"),Gf0=r(IY),Mf0=r(dY),Bf0=r(IY),qf0=r(dY),Uf0=[0,[11,r("invalid box description "),[3,0,0]],r("invalid box description %S")],Hf0=r(C),Xf0=[0,0,4],Yf0=r(C),Vf0=r(gX),zf0=r("h"),Kf0=r("hov"),Wf0=r("hv"),Jf0=r(hV),$f0=r(bw),Zf0=r("neg_infinity"),Qf0=r(kU),rx0=r(Ra),ex0=r("%+nd"),nx0=r("% nd"),tx0=r("%+ni"),ux0=r("% ni"),ix0=r("%nx"),fx0=r("%#nx"),xx0=r("%nX"),ax0=r("%#nX"),ox0=r("%no"),cx0=r("%#no"),sx0=r("%nd"),vx0=r(vH),lx0=r("%nu"),bx0=r("%+ld"),px0=r("% ld"),mx0=r("%+li"),_x0=r("% li"),yx0=r("%lx"),dx0=r("%#lx"),hx0=r("%lX"),kx0=r("%#lX"),wx0=r("%lo"),Ex0=r("%#lo"),Sx0=r("%ld"),gx0=r(XY),Fx0=r("%lu"),Tx0=r("%+Ld"),Ox0=r("% Ld"),Ix0=r("%+Li"),Ax0=r("% Li"),Nx0=r("%Lx"),Cx0=r("%#Lx"),Px0=r("%LX"),Dx0=r("%#LX"),Lx0=r("%Lo"),Rx0=r("%#Lo"),jx0=r("%Ld"),Gx0=r(JH),Mx0=r("%Lu"),Bx0=r("%+d"),qx0=r("% d"),Ux0=r("%+i"),Hx0=r("% i"),Xx0=r("%x"),Yx0=r("%#x"),Vx0=r("%X"),zx0=r("%#X"),Kx0=r("%o"),Wx0=r("%#o"),Jx0=r(N2),$x0=r(lX),Zx0=r(TY),Qx0=r(z),ra0=r("@}"),ea0=r("@?"),na0=r(`@ +`),ta0=r("@."),ua0=r("@@"),ia0=r("@%"),fa0=r(AX),xa0=r("CamlinternalFormat.Type_mismatch"),aa0=r(C),oa0=[0,[11,r(nX),[2,0,[2,0,0]]],r(", %s%s")],ca0=[0,[11,r(kh),[2,0,[12,10,0]]],r(CU)],sa0=[0,[11,r("Fatal error in uncaught exception handler: exception "),[2,0,[12,10,0]]],r(`Fatal error in uncaught exception handler: exception %s +`)],va0=r("Fatal error: out of memory in uncaught exception handler"),la0=[0,[11,r(kh),[2,0,[12,10,0]]],r(CU)],ba0=[0,[2,0,[12,10,0]],r(`%s +`)],pa0=[0,[11,r(RY),0],r(RY)],ma0=r("Raised at"),_a0=r("Re-raised at"),ya0=r("Raised by primitive operation at"),da0=r("Called from"),ha0=r(" (inlined)"),ka0=r(C),wa0=[0,[2,0,[12,32,[2,0,[11,r(' in file "'),[2,0,[12,34,[2,0,[11,r(", line "),[4,0,0,0,[11,r(EH),_i0]]]]]]]]]],r('%s %s in file "%s"%s, line %d, characters %d-%d')],Ea0=[0,[2,0,[11,r(" unknown location"),0]],r("%s unknown location")],Sa0=r("Out of memory"),ga0=r("Stack overflow"),Fa0=r("Pattern matching failed"),Ta0=r("Assertion failed"),Oa0=r("Undefined recursive module"),Ia0=[0,[12,40,[2,0,[2,0,[12,41,0]]]],r("(%s%s)")],Aa0=r(C),Na0=r(C),Ca0=[0,[12,40,[2,0,[12,41,0]]],r("(%s)")],Pa0=[0,[4,0,0,0,0],r(N2)],Da0=[0,[3,0,0],r(Yt)],La0=r(bv),Ra0=[0,r(C),r(`(Cannot print locations: + bytecode executable program file not found)`),r(`(Cannot print locations: + bytecode executable program file appears to be corrupt)`),r(`(Cannot print locations: + bytecode executable program file has wrong magic number)`),r(`(Cannot print locations: + bytecode executable program file cannot be opened; + -- too many open files. Try running with OCAMLRUNPARAM=b=2)`)],ja0=[3,0,3],Ga0=r(Ra),Ma0=r(cv),Ba0=r("Flow_ast.Function.BodyBlock@ ")],zo0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Ko0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Wo0=[0,[17,0,[12,41,0]],r(h0)],Jo0=[0,[17,0,[12,41,0]],r(h0)],$o0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Function.BodyExpression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Function.BodyExpression@ ")],Zo0=[0,[17,0,[12,41,0]],r(h0)],Qo0=[0,[15,0],r(C0)],rc0=r(Yr),ec0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],nc0=r("Flow_ast.Function.id"),tc0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],uc0=r(tr),ic0=r(Z0),fc0=r(nr),xc0=[0,[17,0,0],r(z)],ac0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],oc0=r(Ct),cc0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],sc0=[0,[17,0,0],r(z)],vc0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],lc0=r(Wn),bc0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],pc0=[0,[17,0,0],r(z)],mc0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],_c0=r(Os),yc0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],dc0=[0,[9,0,0],r(An)],hc0=[0,[17,0,0],r(z)],kc0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],wc0=r(j7),Ec0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Sc0=[0,[9,0,0],r(An)],gc0=[0,[17,0,0],r(z)],Fc0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Tc0=r(Qu),Oc0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ic0=r(tr),Ac0=r(Z0),Nc0=r(nr),Cc0=[0,[17,0,0],r(z)],Pc0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Dc0=r(Wu),Lc0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Rc0=[0,[17,0,0],r(z)],jc0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Gc0=r(sv),Mc0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Bc0=r(tr),qc0=r(Z0),Uc0=r(nr),Hc0=[0,[17,0,0],r(z)],Xc0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Yc0=r(Xr),Vc0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],zc0=r(tr),Kc0=r(Z0),Wc0=r(nr),Jc0=[0,[17,0,0],r(z)],$c0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Zc0=r("sig_loc"),Qc0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],rs0=[0,[17,0,0],r(z)],es0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],ns0=[0,[15,0],r(C0)],ts0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],us0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],is0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],fs0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],xs0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],as0=r("Flow_ast.Function.Params.this_"),os0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],cs0=r(tr),ss0=r(Z0),vs0=r(nr),ls0=[0,[17,0,0],r(z)],bs0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ps0=r(Ct),ms0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_s0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],ys0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],ds0=[0,[17,0,0],r(z)],hs0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ks0=r(ch),ws0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Es0=r(tr),Ss0=r(Z0),gs0=r(nr),Fs0=[0,[17,0,0],r(z)],Ts0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Os0=r(Xr),Is0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],As0=r(tr),Ns0=r(Z0),Cs0=r(nr),Ps0=[0,[17,0,0],r(z)],Ds0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Ls0=[0,[15,0],r(C0)],Rs0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],js0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Gs0=[0,[17,0,[12,41,0]],r(h0)],Ms0=[0,[15,0],r(C0)],Bs0=r(Yr),qs0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Us0=r("Flow_ast.Function.ThisParam.annot"),Hs0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Xs0=[0,[17,0,0],r(z)],Ys0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Vs0=r(Xr),zs0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ks0=r(tr),Ws0=r(Z0),Js0=r(nr),$s0=[0,[17,0,0],r(z)],Zs0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Qs0=[0,[15,0],r(C0)],r10=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],e10=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],n10=[0,[17,0,[12,41,0]],r(h0)],t10=[0,[15,0],r(C0)],u10=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],i10=r("Flow_ast.Function.Param.argument"),f10=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],x10=[0,[17,0,0],r(z)],a10=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],o10=r(mi),c10=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],s10=r(tr),v10=r(Z0),l10=r(nr),b10=[0,[17,0,0],r(z)],p10=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],m10=[0,[15,0],r(C0)],_10=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],y10=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],d10=[0,[17,0,[12,41,0]],r(h0)],h10=[0,[15,0],r(C0)],k10=r(Yr),w10=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],E10=r("Flow_ast.Function.RestParam.argument"),S10=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],g10=[0,[17,0,0],r(z)],F10=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],T10=r(Xr),O10=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],I10=r(tr),A10=r(Z0),N10=r(nr),C10=[0,[17,0,0],r(z)],P10=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],D10=[0,[15,0],r(C0)],L10=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],R10=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],j10=[0,[17,0,[12,41,0]],r(h0)],G10=[0,[15,0],r(C0)],M10=r(Yr),B10=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],q10=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],U10=r("Flow_ast.Class.id"),H10=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],X10=r(tr),Y10=r(Z0),V10=r(nr),z10=[0,[17,0,0],r(z)],K10=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],W10=r(Wn),J10=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$10=[0,[17,0,0],r(z)],Z10=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Q10=r(sv),rv0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ev0=r(tr),nv0=r(Z0),tv0=r(nr),uv0=[0,[17,0,0],r(z)],iv0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],fv0=r(C7),xv0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],av0=r(tr),ov0=r(Z0),cv0=r(nr),sv0=[0,[17,0,0],r(z)],vv0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],lv0=r(gs),bv0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],pv0=r(tr),mv0=r(Z0),_v0=r(nr),yv0=[0,[17,0,0],r(z)],dv0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],hv0=r("class_decorators"),kv0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],wv0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Ev0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Sv0=[0,[17,0,0],r(z)],gv0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Fv0=r(Xr),Tv0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ov0=r(tr),Iv0=r(Z0),Av0=r(nr),Nv0=[0,[17,0,0],r(z)],Cv0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Pv0=[0,[15,0],r(C0)],Dv0=r(Yr),Lv0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Rv0=r("Flow_ast.Class.Decorator.expression"),jv0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Gv0=[0,[17,0,0],r(z)],Mv0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Bv0=r(Xr),qv0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Uv0=r(tr),Hv0=r(Z0),Xv0=r(nr),Yv0=[0,[17,0,0],r(z)],Vv0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],zv0=[0,[15,0],r(C0)],Kv0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Wv0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Jv0=[0,[17,0,[12,41,0]],r(h0)],$v0=[0,[15,0],r(C0)],Zv0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Class.Body.Method"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Class.Body.Method@ ")],Qv0=[0,[17,0,[12,41,0]],r(h0)],r20=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Class.Body.Property"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Class.Body.Property@ ")],e20=[0,[17,0,[12,41,0]],r(h0)],n20=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Class.Body.PrivateField"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Class.Body.PrivateField@ ")],t20=[0,[17,0,[12,41,0]],r(h0)],u20=[0,[15,0],r(C0)],i20=r(Yr),f20=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],x20=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],a20=r("Flow_ast.Class.Body.body"),o20=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],c20=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],s20=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],v20=[0,[17,0,0],r(z)],l20=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],b20=r(Xr),p20=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],m20=r(tr),_20=r(Z0),y20=r(nr),d20=[0,[17,0,0],r(z)],h20=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],k20=[0,[15,0],r(C0)],w20=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],E20=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],S20=[0,[17,0,[12,41,0]],r(h0)],g20=[0,[15,0],r(C0)],F20=r(Yr),T20=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],O20=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],I20=r("Flow_ast.Class.Implements.interfaces"),A20=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],N20=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],C20=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],P20=[0,[17,0,0],r(z)],D20=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],L20=r(Xr),R20=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],j20=r(tr),G20=r(Z0),M20=r(nr),B20=[0,[17,0,0],r(z)],q20=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],U20=[0,[15,0],r(C0)],H20=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],X20=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Y20=[0,[17,0,[12,41,0]],r(h0)],V20=[0,[15,0],r(C0)],z20=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],K20=r("Flow_ast.Class.Implements.Interface.id"),W20=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],J20=[0,[17,0,0],r(z)],$20=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Z20=r(Z2),Q20=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],rl0=r(tr),el0=r(Z0),nl0=r(nr),tl0=[0,[17,0,0],r(z)],ul0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],il0=[0,[15,0],r(C0)],fl0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],xl0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],al0=[0,[17,0,[12,41,0]],r(h0)],ol0=[0,[15,0],r(C0)],cl0=r(Yr),sl0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],vl0=r("Flow_ast.Class.Extends.expr"),ll0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],bl0=[0,[17,0,0],r(z)],pl0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ml0=r(Z2),_l0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],yl0=r(tr),dl0=r(Z0),hl0=r(nr),kl0=[0,[17,0,0],r(z)],wl0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],El0=r(Xr),Sl0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],gl0=r(tr),Fl0=r(Z0),Tl0=r(nr),Ol0=[0,[17,0,0],r(z)],Il0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Al0=[0,[15,0],r(C0)],Nl0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Cl0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Pl0=[0,[17,0,[12,41,0]],r(h0)],Dl0=[0,[15,0],r(C0)],Ll0=r(Yr),Rl0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],jl0=r("Flow_ast.Class.PrivateField.key"),Gl0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ml0=[0,[17,0,0],r(z)],Bl0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ql0=r(Bn),Ul0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Hl0=[0,[17,0,0],r(z)],Xl0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Yl0=r(rs),Vl0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],zl0=[0,[17,0,0],r(z)],Kl0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Wl0=r(eu),Jl0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$l0=[0,[9,0,0],r(An)],Zl0=[0,[17,0,0],r(z)],Ql0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],rb0=r(ou),eb0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],nb0=r(tr),tb0=r(Z0),ub0=r(nr),ib0=[0,[17,0,0],r(z)],fb0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],xb0=r(Xr),ab0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ob0=r(tr),cb0=r(Z0),sb0=r(nr),vb0=[0,[17,0,0],r(z)],lb0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],bb0=[0,[15,0],r(C0)],pb0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],mb0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],_b0=[0,[17,0,[12,41,0]],r(h0)],yb0=[0,[15,0],r(C0)],db0=r("Flow_ast.Class.Property.Uninitialized"),hb0=r("Flow_ast.Class.Property.Declared"),kb0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Class.Property.Initialized"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Class.Property.Initialized@ ")],wb0=[0,[17,0,[12,41,0]],r(h0)],Eb0=[0,[15,0],r(C0)],Sb0=r(Yr),gb0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Fb0=r("Flow_ast.Class.Property.key"),Tb0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ob0=[0,[17,0,0],r(z)],Ib0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ab0=r(Bn),Nb0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Cb0=[0,[17,0,0],r(z)],Pb0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Db0=r(rs),Lb0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Rb0=[0,[17,0,0],r(z)],jb0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Gb0=r(eu),Mb0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Bb0=[0,[9,0,0],r(An)],qb0=[0,[17,0,0],r(z)],Ub0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Hb0=r(ou),Xb0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Yb0=r(tr),Vb0=r(Z0),zb0=r(nr),Kb0=[0,[17,0,0],r(z)],Wb0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Jb0=r(Xr),$b0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Zb0=r(tr),Qb0=r(Z0),r40=r(nr),e40=[0,[17,0,0],r(z)],n40=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],t40=[0,[15,0],r(C0)],u40=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],i40=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],f40=[0,[17,0,[12,41,0]],r(h0)],x40=[0,[15,0],r(C0)],a40=r(Yr),o40=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],c40=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],s40=r("Flow_ast.Class.Method.kind"),v40=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],l40=[0,[17,0,0],r(z)],b40=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],p40=r(ui),m40=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_40=[0,[17,0,0],r(z)],y40=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],d40=r(Bn),h40=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],k40=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],w40=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],E40=[0,[17,0,[12,41,0]],r(h0)],S40=[0,[17,0,0],r(z)],g40=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],F40=r(eu),T40=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],O40=[0,[9,0,0],r(An)],I40=[0,[17,0,0],r(z)],A40=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],N40=r(B_),C40=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],P40=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],D40=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],L40=[0,[17,0,0],r(z)],R40=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],j40=r(Xr),G40=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],M40=r(tr),B40=r(Z0),q40=r(nr),U40=[0,[17,0,0],r(z)],H40=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],X40=[0,[15,0],r(C0)],Y40=r("Flow_ast.Class.Method.Constructor"),V40=r("Flow_ast.Class.Method.Method"),z40=r("Flow_ast.Class.Method.Get"),K40=r("Flow_ast.Class.Method.Set"),W40=[0,[15,0],r(C0)],J40=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],$40=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Z40=[0,[17,0,[12,41,0]],r(h0)],Q40=[0,[15,0],r(C0)],r80=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],e80=r("Flow_ast.Comment.kind"),n80=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],t80=[0,[17,0,0],r(z)],u80=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],i80=r("text"),f80=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],x80=[0,[3,0,0],r(Yt)],a80=[0,[17,0,0],r(z)],o80=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],c80=r("on_newline"),s80=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],v80=[0,[9,0,0],r(An)],l80=[0,[17,0,0],r(z)],b80=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],p80=[0,[15,0],r(C0)],m80=r("Flow_ast.Comment.Line"),_80=r("Flow_ast.Comment.Block"),y80=[0,[15,0],r(C0)],d80=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],h80=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],k80=[0,[17,0,[12,41,0]],r(h0)],w80=[0,[15,0],r(C0)],E80=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Object"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Object@ ")],S80=[0,[17,0,[12,41,0]],r(h0)],g80=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Array"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Array@ ")],F80=[0,[17,0,[12,41,0]],r(h0)],T80=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Identifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Identifier@ ")],O80=[0,[17,0,[12,41,0]],r(h0)],I80=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Expression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Expression@ ")],A80=[0,[17,0,[12,41,0]],r(h0)],N80=[0,[15,0],r(C0)],C80=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],P80=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],D80=[0,[17,0,[12,41,0]],r(h0)],L80=[0,[15,0],r(C0)],R80=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],j80=r("Flow_ast.Pattern.Identifier.name"),G80=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],M80=[0,[17,0,0],r(z)],B80=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],q80=r(rs),U80=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],H80=[0,[17,0,0],r(z)],X80=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Y80=r(Bu),V80=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],z80=[0,[9,0,0],r(An)],K80=[0,[17,0,0],r(z)],W80=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],J80=[0,[15,0],r(C0)],$80=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Z80=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Q80=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],r30=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],e30=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],n30=r("Flow_ast.Pattern.Array.elements"),t30=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],u30=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],i30=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],f30=[0,[17,0,0],r(z)],x30=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],a30=r(rs),o30=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],c30=[0,[17,0,0],r(z)],s30=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],v30=r(Xr),l30=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],b30=r(tr),p30=r(Z0),m30=r(nr),_30=[0,[17,0,0],r(z)],y30=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],d30=[0,[15,0],r(C0)],h30=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Array.Element"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Array.Element@ ")],k30=[0,[17,0,[12,41,0]],r(h0)],w30=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Array.RestElement"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Array.RestElement@ ")],E30=[0,[17,0,[12,41,0]],r(h0)],S30=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Array.Hole"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Array.Hole@ ")],g30=[0,[17,0,[12,41,0]],r(h0)],F30=[0,[15,0],r(C0)],T30=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],O30=r("Flow_ast.Pattern.Array.Element.argument"),I30=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],A30=[0,[17,0,0],r(z)],N30=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],C30=r(mi),P30=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],D30=r(tr),L30=r(Z0),R30=r(nr),j30=[0,[17,0,0],r(z)],G30=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],M30=[0,[15,0],r(C0)],B30=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],q30=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],U30=[0,[17,0,[12,41,0]],r(h0)],H30=[0,[15,0],r(C0)],X30=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Y30=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],V30=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],z30=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],K30=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],W30=r("Flow_ast.Pattern.Object.properties"),J30=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$30=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Z30=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Q30=[0,[17,0,0],r(z)],r60=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],e60=r(rs),n60=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],t60=[0,[17,0,0],r(z)],u60=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],i60=r(Xr),f60=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],x60=r(tr),a60=r(Z0),o60=r(nr),c60=[0,[17,0,0],r(z)],s60=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],v60=[0,[15,0],r(C0)],l60=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Object.Property"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Object.Property@ ")],b60=[0,[17,0,[12,41,0]],r(h0)],p60=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Object.RestElement"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Object.RestElement@ ")],m60=[0,[17,0,[12,41,0]],r(h0)],_60=[0,[15,0],r(C0)],y60=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],d60=r("Flow_ast.Pattern.Object.Property.key"),h60=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],k60=[0,[17,0,0],r(z)],w60=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],E60=r(pi),S60=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],g60=[0,[17,0,0],r(z)],F60=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],T60=r(mi),O60=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],I60=r(tr),A60=r(Z0),N60=r(nr),C60=[0,[17,0,0],r(z)],P60=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],D60=r(x6),L60=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],R60=[0,[9,0,0],r(An)],j60=[0,[17,0,0],r(z)],G60=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],M60=[0,[15,0],r(C0)],B60=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],q60=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],U60=[0,[17,0,[12,41,0]],r(h0)],H60=[0,[15,0],r(C0)],X60=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Object.Property.Literal"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Object.Property.Literal@ ")],Y60=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],V60=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],z60=[0,[17,0,[12,41,0]],r(h0)],K60=[0,[17,0,[12,41,0]],r(h0)],W60=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Object.Property.Identifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Object.Property.Identifier@ ")],J60=[0,[17,0,[12,41,0]],r(h0)],$60=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Pattern.Object.Property.Computed"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Pattern.Object.Property.Computed@ ")],Z60=[0,[17,0,[12,41,0]],r(h0)],Q60=[0,[15,0],r(C0)],rp0=r(Yr),ep0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],np0=r("Flow_ast.Pattern.RestElement.argument"),tp0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],up0=[0,[17,0,0],r(z)],ip0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],fp0=r(Xr),xp0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ap0=r(tr),op0=r(Z0),cp0=r(nr),sp0=[0,[17,0,0],r(z)],vp0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],lp0=[0,[15,0],r(C0)],bp0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],pp0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],mp0=[0,[17,0,[12,41,0]],r(h0)],_p0=[0,[15,0],r(C0)],yp0=r(Yr),dp0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],hp0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],kp0=r("Flow_ast.JSX.frag_opening_element"),wp0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ep0=[0,[17,0,0],r(z)],Sp0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],gp0=r("frag_closing_element"),Fp0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Tp0=[0,[17,0,0],r(z)],Op0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ip0=r("frag_children"),Ap0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Np0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Cp0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Pp0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Dp0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Lp0=[0,[17,0,[12,41,0]],r(h0)],Rp0=[0,[17,0,0],r(z)],jp0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Gp0=r("frag_comments"),Mp0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Bp0=r(tr),qp0=r(Z0),Up0=r(nr),Hp0=[0,[17,0,0],r(z)],Xp0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Yp0=[0,[15,0],r(C0)],Vp0=r(Yr),zp0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Kp0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Wp0=r("Flow_ast.JSX.opening_element"),Jp0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$p0=[0,[17,0,0],r(z)],Zp0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Qp0=r("closing_element"),r50=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],e50=r(tr),n50=r(Z0),t50=r(nr),u50=[0,[17,0,0],r(z)],i50=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],f50=r(Ve),x50=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],a50=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],o50=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],c50=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],s50=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],v50=[0,[17,0,[12,41,0]],r(h0)],l50=[0,[17,0,0],r(z)],b50=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],p50=r(Xr),m50=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_50=r(tr),y50=r(Z0),d50=r(nr),h50=[0,[17,0,0],r(z)],k50=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],w50=[0,[15,0],r(C0)],E50=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.Element"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.Element@ ")],S50=[0,[17,0,[12,41,0]],r(h0)],g50=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.Fragment"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.Fragment@ ")],F50=[0,[17,0,[12,41,0]],r(h0)],T50=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.ExpressionContainer"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.ExpressionContainer@ ")],O50=[0,[17,0,[12,41,0]],r(h0)],I50=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.SpreadChild"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.SpreadChild@ ")],A50=[0,[17,0,[12,41,0]],r(h0)],N50=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.Text"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.Text@ ")],C50=[0,[17,0,[12,41,0]],r(h0)],P50=[0,[15,0],r(C0)],D50=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],L50=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],R50=[0,[17,0,[12,41,0]],r(h0)],j50=[0,[15,0],r(C0)],G50=r(Yr),M50=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],B50=r("Flow_ast.JSX.SpreadChild.expression"),q50=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],U50=[0,[17,0,0],r(z)],H50=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],X50=r(Xr),Y50=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],V50=r(tr),z50=r(Z0),K50=r(nr),W50=[0,[17,0,0],r(z)],J50=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],$50=[0,[15,0],r(C0)],Z50=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Q50=r("Flow_ast.JSX.Closing.name"),rm0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],em0=[0,[17,0,0],r(z)],nm0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],tm0=[0,[15,0],r(C0)],um0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],im0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],fm0=[0,[17,0,[12,41,0]],r(h0)],xm0=[0,[15,0],r(C0)],am0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],om0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],cm0=r("Flow_ast.JSX.Opening.name"),sm0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],vm0=[0,[17,0,0],r(z)],lm0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],bm0=r("self_closing"),pm0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],mm0=[0,[9,0,0],r(An)],_m0=[0,[17,0,0],r(z)],ym0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],dm0=r(kY),hm0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],km0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],wm0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Em0=[0,[17,0,0],r(z)],Sm0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],gm0=[0,[15,0],r(C0)],Fm0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.Opening.Attribute"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.Opening.Attribute@ ")],Tm0=[0,[17,0,[12,41,0]],r(h0)],Om0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.Opening.SpreadAttribute"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.Opening.SpreadAttribute@ ")],Im0=[0,[17,0,[12,41,0]],r(h0)],Am0=[0,[15,0],r(C0)],Nm0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Cm0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Pm0=[0,[17,0,[12,41,0]],r(h0)],Dm0=[0,[15,0],r(C0)],Lm0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.Identifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.Identifier@ ")],Rm0=[0,[17,0,[12,41,0]],r(h0)],jm0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.NamespacedName"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.NamespacedName@ ")],Gm0=[0,[17,0,[12,41,0]],r(h0)],Mm0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.MemberExpression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.MemberExpression@ ")],Bm0=[0,[17,0,[12,41,0]],r(h0)],qm0=[0,[15,0],r(C0)],Um0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Hm0=r("Flow_ast.JSX.MemberExpression._object"),Xm0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ym0=[0,[17,0,0],r(z)],Vm0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],zm0=r(Iv),Km0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Wm0=[0,[17,0,0],r(z)],Jm0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],$m0=[0,[15,0],r(C0)],Zm0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.MemberExpression.Identifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.MemberExpression.Identifier@ ")],Qm0=[0,[17,0,[12,41,0]],r(h0)],r90=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.MemberExpression.MemberExpression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.MemberExpression.MemberExpression@ ")],e90=[0,[17,0,[12,41,0]],r(h0)],n90=[0,[15,0],r(C0)],t90=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],u90=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],i90=[0,[17,0,[12,41,0]],r(h0)],f90=[0,[15,0],r(C0)],x90=r(Yr),a90=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],o90=r("Flow_ast.JSX.SpreadAttribute.argument"),c90=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],s90=[0,[17,0,0],r(z)],v90=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],l90=r(Xr),b90=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],p90=r(tr),m90=r(Z0),_90=r(nr),y90=[0,[17,0,0],r(z)],d90=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],h90=[0,[15,0],r(C0)],k90=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],w90=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],E90=[0,[17,0,[12,41,0]],r(h0)],S90=[0,[15,0],r(C0)],g90=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],F90=r("Flow_ast.JSX.Attribute.name"),T90=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],O90=[0,[17,0,0],r(z)],I90=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],A90=r(Bn),N90=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],C90=r(tr),P90=r(Z0),D90=r(nr),L90=[0,[17,0,0],r(z)],R90=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],j90=[0,[15,0],r(C0)],G90=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.Attribute.Literal ("),[17,[0,r(Pe),0,0],0]]]],r("(@[<2>Flow_ast.JSX.Attribute.Literal (@,")],M90=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],B90=[0,[17,[0,r(Pe),0,0],[11,r(OX),[17,0,0]]],r(qU)],q90=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.Attribute.ExpressionContainer ("),[17,[0,r(Pe),0,0],0]]]],r("(@[<2>Flow_ast.JSX.Attribute.ExpressionContainer (@,")],U90=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],H90=[0,[17,[0,r(Pe),0,0],[11,r(OX),[17,0,0]]],r(qU)],X90=[0,[15,0],r(C0)],Y90=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.Attribute.Identifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.Attribute.Identifier@ ")],V90=[0,[17,0,[12,41,0]],r(h0)],z90=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.Attribute.NamespacedName"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.Attribute.NamespacedName@ ")],K90=[0,[17,0,[12,41,0]],r(h0)],W90=[0,[15,0],r(C0)],J90=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],$90=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Z90=[0,[17,0,[12,41,0]],r(h0)],Q90=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],r_0=r("Flow_ast.JSX.Text.value"),e_0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],n_0=[0,[3,0,0],r(Yt)],t_0=[0,[17,0,0],r(z)],u_0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],i_0=r(o7),f_0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],x_0=[0,[3,0,0],r(Yt)],a_0=[0,[17,0,0],r(z)],o_0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],c_0=[0,[15,0],r(C0)],s_0=[0,[15,0],r(C0)],v_0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.JSX.ExpressionContainer.Expression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.JSX.ExpressionContainer.Expression@ ")],l_0=[0,[17,0,[12,41,0]],r(h0)],b_0=r("Flow_ast.JSX.ExpressionContainer.EmptyExpression"),p_0=[0,[15,0],r(C0)],m_0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],__0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],y_0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],d_0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],h_0=r("Flow_ast.JSX.ExpressionContainer.expression"),k_0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],w_0=[0,[17,0,0],r(z)],E_0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],S_0=r(Xr),g_0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],F_0=r(tr),T_0=r(Z0),O_0=r(nr),I_0=[0,[17,0,0],r(z)],A_0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],N_0=[0,[15,0],r(C0)],C_0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],P_0=r("Flow_ast.JSX.NamespacedName.namespace"),D_0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],L_0=[0,[17,0,0],r(z)],R_0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],j_0=r(ti),G_0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],M_0=[0,[17,0,0],r(z)],B_0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],q_0=[0,[15,0],r(C0)],U_0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],H_0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],X_0=[0,[17,0,[12,41,0]],r(h0)],Y_0=[0,[15,0],r(C0)],V_0=r(Yr),z_0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],K_0=r("Flow_ast.JSX.Identifier.name"),W_0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],J_0=[0,[3,0,0],r(Yt)],$_0=[0,[17,0,0],r(z)],Z_0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Q_0=r(Xr),ry0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ey0=r(tr),ny0=r(Z0),ty0=r(nr),uy0=[0,[17,0,0],r(z)],iy0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],fy0=[0,[15,0],r(C0)],xy0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],ay0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],oy0=[0,[17,0,[12,41,0]],r(h0)],cy0=[0,[15,0],r(C0)],sy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Array"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Array@ ")],vy0=[0,[17,0,[12,41,0]],r(h0)],ly0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.ArrowFunction"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.ArrowFunction@ ")],by0=[0,[17,0,[12,41,0]],r(h0)],py0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Assignment"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Assignment@ ")],my0=[0,[17,0,[12,41,0]],r(h0)],_y0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Binary"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Binary@ ")],yy0=[0,[17,0,[12,41,0]],r(h0)],dy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Call"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Call@ ")],hy0=[0,[17,0,[12,41,0]],r(h0)],ky0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Class"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Class@ ")],wy0=[0,[17,0,[12,41,0]],r(h0)],Ey0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Comprehension"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Comprehension@ ")],Sy0=[0,[17,0,[12,41,0]],r(h0)],gy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Conditional"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Conditional@ ")],Fy0=[0,[17,0,[12,41,0]],r(h0)],Ty0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Function"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Function@ ")],Oy0=[0,[17,0,[12,41,0]],r(h0)],Iy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Generator"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Generator@ ")],Ay0=[0,[17,0,[12,41,0]],r(h0)],Ny0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Identifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Identifier@ ")],Cy0=[0,[17,0,[12,41,0]],r(h0)],Py0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Import"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Import@ ")],Dy0=[0,[17,0,[12,41,0]],r(h0)],Ly0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.JSXElement"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.JSXElement@ ")],Ry0=[0,[17,0,[12,41,0]],r(h0)],jy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.JSXFragment"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.JSXFragment@ ")],Gy0=[0,[17,0,[12,41,0]],r(h0)],My0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Literal"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Literal@ ")],By0=[0,[17,0,[12,41,0]],r(h0)],qy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Logical"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Logical@ ")],Uy0=[0,[17,0,[12,41,0]],r(h0)],Hy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Member"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Member@ ")],Xy0=[0,[17,0,[12,41,0]],r(h0)],Yy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.MetaProperty"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.MetaProperty@ ")],Vy0=[0,[17,0,[12,41,0]],r(h0)],zy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.New"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.New@ ")],Ky0=[0,[17,0,[12,41,0]],r(h0)],Wy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Object@ ")],Jy0=[0,[17,0,[12,41,0]],r(h0)],$y0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.OptionalCall"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.OptionalCall@ ")],Zy0=[0,[17,0,[12,41,0]],r(h0)],Qy0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.OptionalMember"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.OptionalMember@ ")],rd0=[0,[17,0,[12,41,0]],r(h0)],ed0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Sequence"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Sequence@ ")],nd0=[0,[17,0,[12,41,0]],r(h0)],td0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Super"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Super@ ")],ud0=[0,[17,0,[12,41,0]],r(h0)],id0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.TaggedTemplate"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.TaggedTemplate@ ")],fd0=[0,[17,0,[12,41,0]],r(h0)],xd0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.TemplateLiteral"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.TemplateLiteral@ ")],ad0=[0,[17,0,[12,41,0]],r(h0)],od0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.This"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.This@ ")],cd0=[0,[17,0,[12,41,0]],r(h0)],sd0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.TypeCast"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.TypeCast@ ")],vd0=[0,[17,0,[12,41,0]],r(h0)],ld0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Unary"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Unary@ ")],bd0=[0,[17,0,[12,41,0]],r(h0)],pd0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Update"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Update@ ")],md0=[0,[17,0,[12,41,0]],r(h0)],_d0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Yield"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Yield@ ")],yd0=[0,[17,0,[12,41,0]],r(h0)],dd0=[0,[15,0],r(C0)],hd0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],kd0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],wd0=[0,[17,0,[12,41,0]],r(h0)],Ed0=[0,[15,0],r(C0)],Sd0=r(Yr),gd0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Fd0=r("Flow_ast.Expression.Import.argument"),Td0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Od0=[0,[17,0,0],r(z)],Id0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ad0=r(Xr),Nd0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Cd0=r(tr),Pd0=r(Z0),Dd0=r(nr),Ld0=[0,[17,0,0],r(z)],Rd0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],jd0=[0,[15,0],r(C0)],Gd0=r(Yr),Md0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Bd0=r("Flow_ast.Expression.Super.comments"),qd0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ud0=r(tr),Hd0=r(Z0),Xd0=r(nr),Yd0=[0,[17,0,0],r(z)],Vd0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],zd0=[0,[15,0],r(C0)],Kd0=r(Yr),Wd0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Jd0=r("Flow_ast.Expression.This.comments"),$d0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Zd0=r(tr),Qd0=r(Z0),rh0=r(nr),eh0=[0,[17,0,0],r(z)],nh0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],th0=[0,[15,0],r(C0)],uh0=r(Yr),ih0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],fh0=r("Flow_ast.Expression.MetaProperty.meta"),xh0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ah0=[0,[17,0,0],r(z)],oh0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ch0=r(Iv),sh0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],vh0=[0,[17,0,0],r(z)],lh0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],bh0=r(Xr),ph0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],mh0=r(tr),_h0=r(Z0),yh0=r(nr),dh0=[0,[17,0,0],r(z)],hh0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],kh0=[0,[15,0],r(C0)],wh0=r(Yr),Eh0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Sh0=r("Flow_ast.Expression.TypeCast.expression"),gh0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Fh0=[0,[17,0,0],r(z)],Th0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Oh0=r(rs),Ih0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ah0=[0,[17,0,0],r(z)],Nh0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ch0=r(Xr),Ph0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Dh0=r(tr),Lh0=r(Z0),Rh0=r(nr),jh0=[0,[17,0,0],r(z)],Gh0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Mh0=[0,[15,0],r(C0)],Bh0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],qh0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Uh0=r("Flow_ast.Expression.Generator.blocks"),Hh0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Xh0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Yh0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Vh0=[0,[17,0,0],r(z)],zh0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Kh0=r(O4),Wh0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Jh0=r(tr),$h0=r(Z0),Zh0=r(nr),Qh0=[0,[17,0,0],r(z)],rk0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],ek0=[0,[15,0],r(C0)],nk0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],tk0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],uk0=r("Flow_ast.Expression.Comprehension.blocks"),ik0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],fk0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],xk0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],ak0=[0,[17,0,0],r(z)],ok0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ck0=r(O4),sk0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],vk0=r(tr),lk0=r(Z0),bk0=r(nr),pk0=[0,[17,0,0],r(z)],mk0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],_k0=[0,[15,0],r(C0)],yk0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],dk0=r("Flow_ast.Expression.Comprehension.Block.left"),hk0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],kk0=[0,[17,0,0],r(z)],wk0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ek0=r(Nu),Sk0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],gk0=[0,[17,0,0],r(z)],Fk0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Tk0=r(j8),Ok0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ik0=[0,[9,0,0],r(An)],Ak0=[0,[17,0,0],r(z)],Nk0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Ck0=[0,[15,0],r(C0)],Pk0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Dk0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Lk0=[0,[17,0,[12,41,0]],r(h0)],Rk0=[0,[15,0],r(C0)],jk0=r(Yr),Gk0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Mk0=r("Flow_ast.Expression.Yield.argument"),Bk0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],qk0=r(tr),Uk0=r(Z0),Hk0=r(nr),Xk0=[0,[17,0,0],r(z)],Yk0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Vk0=r(Xr),zk0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Kk0=r(tr),Wk0=r(Z0),Jk0=r(nr),$k0=[0,[17,0,0],r(z)],Zk0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Qk0=r(yY),rw0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ew0=[0,[9,0,0],r(An)],nw0=[0,[17,0,0],r(z)],tw0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],uw0=r("result_out"),iw0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],fw0=[0,[17,0,0],r(z)],xw0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],aw0=[0,[15,0],r(C0)],ow0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],cw0=r("Flow_ast.Expression.OptionalMember.member"),sw0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],vw0=[0,[17,0,0],r(z)],lw0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],bw0=r(yU),pw0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],mw0=[0,[17,0,0],r(z)],_w0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],yw0=r(Bu),dw0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],hw0=[0,[9,0,0],r(An)],kw0=[0,[17,0,0],r(z)],ww0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Ew0=[0,[15,0],r(C0)],Sw0=r(Yr),gw0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Fw0=r("Flow_ast.Expression.Member._object"),Tw0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ow0=[0,[17,0,0],r(z)],Iw0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Aw0=r(Iv),Nw0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Cw0=[0,[17,0,0],r(z)],Pw0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Dw0=r(Xr),Lw0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Rw0=r(tr),jw0=r(Z0),Gw0=r(nr),Mw0=[0,[17,0,0],r(z)],Bw0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],qw0=[0,[15,0],r(C0)],Uw0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Member.PropertyIdentifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Member.PropertyIdentifier@ ")],Hw0=[0,[17,0,[12,41,0]],r(h0)],Xw0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Member.PropertyPrivateName"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Member.PropertyPrivateName@ ")],Yw0=[0,[17,0,[12,41,0]],r(h0)],Vw0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Member.PropertyExpression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Member.PropertyExpression@ ")],zw0=[0,[17,0,[12,41,0]],r(h0)],Kw0=[0,[15,0],r(C0)],Ww0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Jw0=r("Flow_ast.Expression.OptionalCall.call"),$w0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Zw0=[0,[17,0,0],r(z)],Qw0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],rE0=r(yU),eE0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],nE0=[0,[17,0,0],r(z)],tE0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],uE0=r(Bu),iE0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],fE0=[0,[9,0,0],r(An)],xE0=[0,[17,0,0],r(z)],aE0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],oE0=[0,[15,0],r(C0)],cE0=r(Yr),sE0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],vE0=r("Flow_ast.Expression.Call.callee"),lE0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],bE0=[0,[17,0,0],r(z)],pE0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],mE0=r(Z2),_E0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],yE0=r(tr),dE0=r(Z0),hE0=r(nr),kE0=[0,[17,0,0],r(z)],wE0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],EE0=r(C2),SE0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],gE0=[0,[17,0,0],r(z)],FE0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],TE0=r(Xr),OE0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],IE0=r(tr),AE0=r(Z0),NE0=r(nr),CE0=[0,[17,0,0],r(z)],PE0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],DE0=[0,[15,0],r(C0)],LE0=r(Yr),RE0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],jE0=r("Flow_ast.Expression.New.callee"),GE0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ME0=[0,[17,0,0],r(z)],BE0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],qE0=r(Z2),UE0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],HE0=r(tr),XE0=r(Z0),YE0=r(nr),VE0=[0,[17,0,0],r(z)],zE0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],KE0=r(C2),WE0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],JE0=r(tr),$E0=r(Z0),ZE0=r(nr),QE0=[0,[17,0,0],r(z)],rS0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],eS0=r(Xr),nS0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],tS0=r(tr),uS0=r(Z0),iS0=r(nr),fS0=[0,[17,0,0],r(z)],xS0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],aS0=[0,[15,0],r(C0)],oS0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],cS0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],sS0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],vS0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],lS0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],bS0=r("Flow_ast.Expression.ArgList.arguments"),pS0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],mS0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],_S0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],yS0=[0,[17,0,0],r(z)],dS0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],hS0=r(Xr),kS0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],wS0=r(tr),ES0=r(Z0),SS0=r(nr),gS0=[0,[17,0,0],r(z)],FS0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],TS0=[0,[15,0],r(C0)],OS0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],IS0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],AS0=[0,[17,0,[12,41,0]],r(h0)],NS0=[0,[15,0],r(C0)],CS0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Expression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Expression@ ")],PS0=[0,[17,0,[12,41,0]],r(h0)],DS0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Spread"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Spread@ ")],LS0=[0,[17,0,[12,41,0]],r(h0)],RS0=[0,[15,0],r(C0)],jS0=r(Yr),GS0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],MS0=r("Flow_ast.Expression.Conditional.test"),BS0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],qS0=[0,[17,0,0],r(z)],US0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],HS0=r(kv),XS0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],YS0=[0,[17,0,0],r(z)],VS0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],zS0=r(_3),KS0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],WS0=[0,[17,0,0],r(z)],JS0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],$S0=r(Xr),ZS0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],QS0=r(tr),rg0=r(Z0),eg0=r(nr),ng0=[0,[17,0,0],r(z)],tg0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],ug0=[0,[15,0],r(C0)],ig0=r(Yr),fg0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],xg0=r("Flow_ast.Expression.Logical.operator"),ag0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],og0=[0,[17,0,0],r(z)],cg0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],sg0=r(li),vg0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],lg0=[0,[17,0,0],r(z)],bg0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],pg0=r(Nu),mg0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_g0=[0,[17,0,0],r(z)],yg0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],dg0=r(Xr),hg0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],kg0=r(tr),wg0=r(Z0),Eg0=r(nr),Sg0=[0,[17,0,0],r(z)],gg0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Fg0=[0,[15,0],r(C0)],Tg0=r("Flow_ast.Expression.Logical.Or"),Og0=r("Flow_ast.Expression.Logical.And"),Ig0=r("Flow_ast.Expression.Logical.NullishCoalesce"),Ag0=[0,[15,0],r(C0)],Ng0=r(Yr),Cg0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Pg0=r("Flow_ast.Expression.Update.operator"),Dg0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Lg0=[0,[17,0,0],r(z)],Rg0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],jg0=r(v7),Gg0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Mg0=[0,[17,0,0],r(z)],Bg0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],qg0=r(XE),Ug0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Hg0=[0,[9,0,0],r(An)],Xg0=[0,[17,0,0],r(z)],Yg0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Vg0=r(Xr),zg0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Kg0=r(tr),Wg0=r(Z0),Jg0=r(nr),$g0=[0,[17,0,0],r(z)],Zg0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Qg0=[0,[15,0],r(C0)],rF0=r("Flow_ast.Expression.Update.Decrement"),eF0=r("Flow_ast.Expression.Update.Increment"),nF0=[0,[15,0],r(C0)],tF0=r(Yr),uF0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],iF0=r("Flow_ast.Expression.Assignment.operator"),fF0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],xF0=r(tr),aF0=r(Z0),oF0=r(nr),cF0=[0,[17,0,0],r(z)],sF0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],vF0=r(li),lF0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],bF0=[0,[17,0,0],r(z)],pF0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],mF0=r(Nu),_F0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],yF0=[0,[17,0,0],r(z)],dF0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],hF0=r(Xr),kF0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],wF0=r(tr),EF0=r(Z0),SF0=r(nr),gF0=[0,[17,0,0],r(z)],FF0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],TF0=[0,[15,0],r(C0)],OF0=r("Flow_ast.Expression.Assignment.PlusAssign"),IF0=r("Flow_ast.Expression.Assignment.MinusAssign"),AF0=r("Flow_ast.Expression.Assignment.MultAssign"),NF0=r("Flow_ast.Expression.Assignment.ExpAssign"),CF0=r("Flow_ast.Expression.Assignment.DivAssign"),PF0=r("Flow_ast.Expression.Assignment.ModAssign"),DF0=r("Flow_ast.Expression.Assignment.LShiftAssign"),LF0=r("Flow_ast.Expression.Assignment.RShiftAssign"),RF0=r("Flow_ast.Expression.Assignment.RShift3Assign"),jF0=r("Flow_ast.Expression.Assignment.BitOrAssign"),GF0=r("Flow_ast.Expression.Assignment.BitXorAssign"),MF0=r("Flow_ast.Expression.Assignment.BitAndAssign"),BF0=r("Flow_ast.Expression.Assignment.NullishAssign"),qF0=r("Flow_ast.Expression.Assignment.AndAssign"),UF0=r("Flow_ast.Expression.Assignment.OrAssign"),HF0=[0,[15,0],r(C0)],XF0=r(Yr),YF0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],VF0=r("Flow_ast.Expression.Binary.operator"),zF0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],KF0=[0,[17,0,0],r(z)],WF0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],JF0=r(li),$F0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ZF0=[0,[17,0,0],r(z)],QF0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],rT0=r(Nu),eT0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],nT0=[0,[17,0,0],r(z)],tT0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],uT0=r(Xr),iT0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],fT0=r(tr),xT0=r(Z0),aT0=r(nr),oT0=[0,[17,0,0],r(z)],cT0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],sT0=[0,[15,0],r(C0)],vT0=r("Flow_ast.Expression.Binary.Equal"),lT0=r("Flow_ast.Expression.Binary.NotEqual"),bT0=r("Flow_ast.Expression.Binary.StrictEqual"),pT0=r("Flow_ast.Expression.Binary.StrictNotEqual"),mT0=r("Flow_ast.Expression.Binary.LessThan"),_T0=r("Flow_ast.Expression.Binary.LessThanEqual"),yT0=r("Flow_ast.Expression.Binary.GreaterThan"),dT0=r("Flow_ast.Expression.Binary.GreaterThanEqual"),hT0=r("Flow_ast.Expression.Binary.LShift"),kT0=r("Flow_ast.Expression.Binary.RShift"),wT0=r("Flow_ast.Expression.Binary.RShift3"),ET0=r("Flow_ast.Expression.Binary.Plus"),ST0=r("Flow_ast.Expression.Binary.Minus"),gT0=r("Flow_ast.Expression.Binary.Mult"),FT0=r("Flow_ast.Expression.Binary.Exp"),TT0=r("Flow_ast.Expression.Binary.Div"),OT0=r("Flow_ast.Expression.Binary.Mod"),IT0=r("Flow_ast.Expression.Binary.BitOr"),AT0=r("Flow_ast.Expression.Binary.Xor"),NT0=r("Flow_ast.Expression.Binary.BitAnd"),CT0=r("Flow_ast.Expression.Binary.In"),PT0=r("Flow_ast.Expression.Binary.Instanceof"),DT0=[0,[15,0],r(C0)],LT0=r(Yr),RT0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],jT0=r("Flow_ast.Expression.Unary.operator"),GT0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],MT0=[0,[17,0,0],r(z)],BT0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],qT0=r(v7),UT0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],HT0=[0,[17,0,0],r(z)],XT0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],YT0=r(Xr),VT0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],zT0=r(tr),KT0=r(Z0),WT0=r(nr),JT0=[0,[17,0,0],r(z)],$T0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],ZT0=[0,[15,0],r(C0)],QT0=r("Flow_ast.Expression.Unary.Minus"),rO0=r("Flow_ast.Expression.Unary.Plus"),eO0=r("Flow_ast.Expression.Unary.Not"),nO0=r("Flow_ast.Expression.Unary.BitNot"),tO0=r("Flow_ast.Expression.Unary.Typeof"),uO0=r("Flow_ast.Expression.Unary.Void"),iO0=r("Flow_ast.Expression.Unary.Delete"),fO0=r("Flow_ast.Expression.Unary.Await"),xO0=[0,[15,0],r(C0)],aO0=r(Yr),oO0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],cO0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],sO0=r("Flow_ast.Expression.Sequence.expressions"),vO0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],lO0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],bO0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],pO0=[0,[17,0,0],r(z)],mO0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],_O0=r(Xr),yO0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],dO0=r(tr),hO0=r(Z0),kO0=r(nr),wO0=[0,[17,0,0],r(z)],EO0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],SO0=[0,[15,0],r(C0)],gO0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],FO0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],TO0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],OO0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],IO0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],AO0=r("Flow_ast.Expression.Object.properties"),NO0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],CO0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],PO0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],DO0=[0,[17,0,0],r(z)],LO0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],RO0=r(Xr),jO0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],GO0=r(tr),MO0=r(Z0),BO0=r(nr),qO0=[0,[17,0,0],r(z)],UO0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],HO0=[0,[15,0],r(C0)],XO0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object.Property"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Object.Property@ ")],YO0=[0,[17,0,[12,41,0]],r(h0)],VO0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object.SpreadProperty"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Object.SpreadProperty@ ")],zO0=[0,[17,0,[12,41,0]],r(h0)],KO0=[0,[15,0],r(C0)],WO0=r(Yr),JO0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],$O0=r("Flow_ast.Expression.Object.SpreadProperty.argument"),ZO0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],QO0=[0,[17,0,0],r(z)],rI0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],eI0=r(Xr),nI0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],tI0=r(tr),uI0=r(Z0),iI0=r(nr),fI0=[0,[17,0,0],r(z)],xI0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],aI0=[0,[15,0],r(C0)],oI0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],cI0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],sI0=[0,[17,0,[12,41,0]],r(h0)],vI0=[0,[15,0],r(C0)],lI0=r(Yr),bI0=r(Yr),pI0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object.Property.Init {"),[17,[0,r(Pe),0,0],0]]],r("@[<2>Flow_ast.Expression.Object.Property.Init {@,")],mI0=r(ui),_I0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],yI0=[0,[17,0,0],r(z)],dI0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],hI0=r(Bn),kI0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],wI0=[0,[17,0,0],r(z)],EI0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],SI0=r(x6),gI0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],FI0=[0,[9,0,0],r(An)],TI0=[0,[17,0,0],r(z)],OI0=[0,[17,0,[12,br,0]],r(V6)],II0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object.Property.Method {"),[17,[0,r(Pe),0,0],0]]],r("@[<2>Flow_ast.Expression.Object.Property.Method {@,")],AI0=r(ui),NI0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],CI0=[0,[17,0,0],r(z)],PI0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],DI0=r(Bn),LI0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],RI0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],jI0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],GI0=[0,[17,0,[12,41,0]],r(h0)],MI0=[0,[17,0,0],r(z)],BI0=[0,[17,0,[12,br,0]],r(V6)],qI0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object.Property.Get {"),[17,[0,r(Pe),0,0],0]]],r("@[<2>Flow_ast.Expression.Object.Property.Get {@,")],UI0=r(ui),HI0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],XI0=[0,[17,0,0],r(z)],YI0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],VI0=r(Bn),zI0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],KI0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],WI0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],JI0=[0,[17,0,[12,41,0]],r(h0)],$I0=[0,[17,0,0],r(z)],ZI0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],QI0=r(Xr),rA0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],eA0=r(tr),nA0=r(Z0),tA0=r(nr),uA0=[0,[17,0,0],r(z)],iA0=[0,[17,0,[12,br,0]],r(V6)],fA0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object.Property.Set {"),[17,[0,r(Pe),0,0],0]]],r("@[<2>Flow_ast.Expression.Object.Property.Set {@,")],xA0=r(ui),aA0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],oA0=[0,[17,0,0],r(z)],cA0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],sA0=r(Bn),vA0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],lA0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],bA0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],pA0=[0,[17,0,[12,41,0]],r(h0)],mA0=[0,[17,0,0],r(z)],_A0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],yA0=r(Xr),dA0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],hA0=r(tr),kA0=r(Z0),wA0=r(nr),EA0=[0,[17,0,0],r(z)],SA0=[0,[17,0,[12,br,0]],r(V6)],gA0=[0,[15,0],r(C0)],FA0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],TA0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],OA0=[0,[17,0,[12,41,0]],r(h0)],IA0=[0,[15,0],r(C0)],AA0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object.Property.Literal"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Object.Property.Literal@ ")],NA0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],CA0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],PA0=[0,[17,0,[12,41,0]],r(h0)],DA0=[0,[17,0,[12,41,0]],r(h0)],LA0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object.Property.Identifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Object.Property.Identifier@ ")],RA0=[0,[17,0,[12,41,0]],r(h0)],jA0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object.Property.PrivateName"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Object.Property.PrivateName@ ")],GA0=[0,[17,0,[12,41,0]],r(h0)],MA0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Object.Property.Computed"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Object.Property.Computed@ ")],BA0=[0,[17,0,[12,41,0]],r(h0)],qA0=[0,[15,0],r(C0)],UA0=r(Yr),HA0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],XA0=r("Flow_ast.Expression.TaggedTemplate.tag"),YA0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],VA0=[0,[17,0,0],r(z)],zA0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],KA0=r(OY),WA0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],JA0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],$A0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],ZA0=[0,[17,0,[12,41,0]],r(h0)],QA0=[0,[17,0,0],r(z)],rN0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],eN0=r(Xr),nN0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],tN0=r(tr),uN0=r(Z0),iN0=r(nr),fN0=[0,[17,0,0],r(z)],xN0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],aN0=[0,[15,0],r(C0)],oN0=r(Yr),cN0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],sN0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],vN0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],lN0=r("Flow_ast.Expression.TemplateLiteral.quasis"),bN0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],pN0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],mN0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],_N0=[0,[17,0,0],r(z)],yN0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],dN0=r(Ug),hN0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],kN0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],wN0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],EN0=[0,[17,0,0],r(z)],SN0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],gN0=r(Xr),FN0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],TN0=r(tr),ON0=r(Z0),IN0=r(nr),AN0=[0,[17,0,0],r(z)],NN0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],CN0=[0,[15,0],r(C0)],PN0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],DN0=r("Flow_ast.Expression.TemplateLiteral.Element.value"),LN0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],RN0=[0,[17,0,0],r(z)],jN0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],GN0=r(bU),MN0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],BN0=[0,[9,0,0],r(An)],qN0=[0,[17,0,0],r(z)],UN0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],HN0=[0,[15,0],r(C0)],XN0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],YN0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],VN0=[0,[17,0,[12,41,0]],r(h0)],zN0=[0,[15,0],r(C0)],KN0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],WN0=r("Flow_ast.Expression.TemplateLiteral.Element.raw"),JN0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$N0=[0,[3,0,0],r(Yt)],ZN0=[0,[17,0,0],r(z)],QN0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],rC0=r(GY),eC0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],nC0=[0,[3,0,0],r(Yt)],tC0=[0,[17,0,0],r(z)],uC0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],iC0=[0,[15,0],r(C0)],fC0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],xC0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],aC0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],oC0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],cC0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],sC0=r("Flow_ast.Expression.Array.elements"),vC0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],lC0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],bC0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],pC0=[0,[17,0,0],r(z)],mC0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],_C0=r(Xr),yC0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],dC0=r(tr),hC0=r(Z0),kC0=r(nr),wC0=[0,[17,0,0],r(z)],EC0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],SC0=[0,[15,0],r(C0)],gC0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Array.Expression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Array.Expression@ ")],FC0=[0,[17,0,[12,41,0]],r(h0)],TC0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Array.Spread"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Array.Spread@ ")],OC0=[0,[17,0,[12,41,0]],r(h0)],IC0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.Array.Hole"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.Array.Hole@ ")],AC0=[0,[17,0,[12,41,0]],r(h0)],NC0=[0,[15,0],r(C0)],CC0=r(Yr),PC0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],DC0=r("Flow_ast.Expression.SpreadElement.argument"),LC0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],RC0=[0,[17,0,0],r(z)],jC0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],GC0=r(Xr),MC0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],BC0=r(tr),qC0=r(Z0),UC0=r(nr),HC0=[0,[17,0,0],r(z)],XC0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],YC0=[0,[15,0],r(C0)],VC0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],zC0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],KC0=[0,[17,0,[12,41,0]],r(h0)],WC0=[0,[15,0],r(C0)],JC0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],$C0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],ZC0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],QC0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],rP0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],eP0=r("Flow_ast.Expression.CallTypeArgs.arguments"),nP0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],tP0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],uP0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],iP0=[0,[17,0,0],r(z)],fP0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],xP0=r(Xr),aP0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],oP0=r(tr),cP0=r(Z0),sP0=r(nr),vP0=[0,[17,0,0],r(z)],lP0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],bP0=[0,[15,0],r(C0)],pP0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],mP0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],_P0=[0,[17,0,[12,41,0]],r(h0)],yP0=[0,[15,0],r(C0)],dP0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.CallTypeArg.Explicit"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.CallTypeArg.Explicit@ ")],hP0=[0,[17,0,[12,41,0]],r(h0)],kP0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Expression.CallTypeArg.Implicit"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Expression.CallTypeArg.Implicit@ ")],wP0=[0,[17,0,[12,41,0]],r(h0)],EP0=[0,[15,0],r(C0)],SP0=r(Yr),gP0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],FP0=r("Flow_ast.Expression.CallTypeArg.Implicit.comments"),TP0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],OP0=r(tr),IP0=r(Z0),AP0=r(nr),NP0=[0,[17,0,0],r(z)],CP0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],PP0=[0,[15,0],r(C0)],DP0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],LP0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],RP0=[0,[17,0,[12,41,0]],r(h0)],jP0=[0,[15,0],r(C0)],GP0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Block"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Block@ ")],MP0=[0,[17,0,[12,41,0]],r(h0)],BP0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Break"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Break@ ")],qP0=[0,[17,0,[12,41,0]],r(h0)],UP0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ClassDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ClassDeclaration@ ")],HP0=[0,[17,0,[12,41,0]],r(h0)],XP0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Continue"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Continue@ ")],YP0=[0,[17,0,[12,41,0]],r(h0)],VP0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Debugger"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Debugger@ ")],zP0=[0,[17,0,[12,41,0]],r(h0)],KP0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareClass"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareClass@ ")],WP0=[0,[17,0,[12,41,0]],r(h0)],JP0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareExportDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareExportDeclaration@ ")],$P0=[0,[17,0,[12,41,0]],r(h0)],ZP0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareFunction"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareFunction@ ")],QP0=[0,[17,0,[12,41,0]],r(h0)],rD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareInterface"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareInterface@ ")],eD0=[0,[17,0,[12,41,0]],r(h0)],nD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareModule"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareModule@ ")],tD0=[0,[17,0,[12,41,0]],r(h0)],uD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareModuleExports"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareModuleExports@ ")],iD0=[0,[17,0,[12,41,0]],r(h0)],fD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareTypeAlias"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareTypeAlias@ ")],xD0=[0,[17,0,[12,41,0]],r(h0)],aD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareOpaqueType"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareOpaqueType@ ")],oD0=[0,[17,0,[12,41,0]],r(h0)],cD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareVariable"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareVariable@ ")],sD0=[0,[17,0,[12,41,0]],r(h0)],vD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DoWhile"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DoWhile@ ")],lD0=[0,[17,0,[12,41,0]],r(h0)],bD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Empty"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Empty@ ")],pD0=[0,[17,0,[12,41,0]],r(h0)],mD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.EnumDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.EnumDeclaration@ ")],_D0=[0,[17,0,[12,41,0]],r(h0)],yD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ExportDefaultDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ExportDefaultDeclaration@ ")],dD0=[0,[17,0,[12,41,0]],r(h0)],hD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ExportNamedDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ExportNamedDeclaration@ ")],kD0=[0,[17,0,[12,41,0]],r(h0)],wD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Expression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Expression@ ")],ED0=[0,[17,0,[12,41,0]],r(h0)],SD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.For"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.For@ ")],gD0=[0,[17,0,[12,41,0]],r(h0)],FD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ForIn"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ForIn@ ")],TD0=[0,[17,0,[12,41,0]],r(h0)],OD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ForOf"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ForOf@ ")],ID0=[0,[17,0,[12,41,0]],r(h0)],AD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.FunctionDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.FunctionDeclaration@ ")],ND0=[0,[17,0,[12,41,0]],r(h0)],CD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.If"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.If@ ")],PD0=[0,[17,0,[12,41,0]],r(h0)],DD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ImportDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ImportDeclaration@ ")],LD0=[0,[17,0,[12,41,0]],r(h0)],RD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.InterfaceDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.InterfaceDeclaration@ ")],jD0=[0,[17,0,[12,41,0]],r(h0)],GD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Labeled"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Labeled@ ")],MD0=[0,[17,0,[12,41,0]],r(h0)],BD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Return"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Return@ ")],qD0=[0,[17,0,[12,41,0]],r(h0)],UD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Switch"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Switch@ ")],HD0=[0,[17,0,[12,41,0]],r(h0)],XD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Throw"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Throw@ ")],YD0=[0,[17,0,[12,41,0]],r(h0)],VD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.Try"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.Try@ ")],zD0=[0,[17,0,[12,41,0]],r(h0)],KD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.TypeAlias"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.TypeAlias@ ")],WD0=[0,[17,0,[12,41,0]],r(h0)],JD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.OpaqueType"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.OpaqueType@ ")],$D0=[0,[17,0,[12,41,0]],r(h0)],ZD0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.VariableDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.VariableDeclaration@ ")],QD0=[0,[17,0,[12,41,0]],r(h0)],rL0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.While"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.While@ ")],eL0=[0,[17,0,[12,41,0]],r(h0)],nL0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.With"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.With@ ")],tL0=[0,[17,0,[12,41,0]],r(h0)],uL0=[0,[15,0],r(C0)],iL0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],fL0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],xL0=[0,[17,0,[12,41,0]],r(h0)],aL0=[0,[15,0],r(C0)],oL0=r("Flow_ast.Statement.ExportValue"),cL0=r("Flow_ast.Statement.ExportType"),sL0=[0,[15,0],r(C0)],vL0=r(Yr),lL0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],bL0=r("Flow_ast.Statement.Empty.comments"),pL0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],mL0=r(tr),_L0=r(Z0),yL0=r(nr),dL0=[0,[17,0,0],r(z)],hL0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],kL0=[0,[15,0],r(C0)],wL0=r(Yr),EL0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],SL0=r("Flow_ast.Statement.Expression.expression"),gL0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],FL0=[0,[17,0,0],r(z)],TL0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],OL0=r(hn),IL0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],AL0=r(tr),NL0=[0,[3,0,0],r(Yt)],CL0=r(Z0),PL0=r(nr),DL0=[0,[17,0,0],r(z)],LL0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],RL0=r(Xr),jL0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],GL0=r(tr),ML0=r(Z0),BL0=r(nr),qL0=[0,[17,0,0],r(z)],UL0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],HL0=[0,[15,0],r(C0)],XL0=r(Yr),YL0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],VL0=r("Flow_ast.Statement.ImportDeclaration.import_kind"),zL0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],KL0=[0,[17,0,0],r(z)],WL0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],JL0=r(vc),$L0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ZL0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],QL0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],rR0=[0,[17,0,[12,41,0]],r(h0)],eR0=[0,[17,0,0],r(z)],nR0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],tR0=r(mi),uR0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],iR0=r(tr),fR0=r(Z0),xR0=r(nr),aR0=[0,[17,0,0],r(z)],oR0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],cR0=r(Cv),sR0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],vR0=r(tr),lR0=r(Z0),bR0=r(nr),pR0=[0,[17,0,0],r(z)],mR0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],_R0=r(Xr),yR0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],dR0=r(tr),hR0=r(Z0),kR0=r(nr),wR0=[0,[17,0,0],r(z)],ER0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],SR0=[0,[15,0],r(C0)],gR0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],FR0=r("Flow_ast.Statement.ImportDeclaration.kind"),TR0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],OR0=r(tr),IR0=r(Z0),AR0=r(nr),NR0=[0,[17,0,0],r(z)],CR0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],PR0=r(B2),DR0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],LR0=r(tr),RR0=r(Z0),jR0=r(nr),GR0=[0,[17,0,0],r(z)],MR0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],BR0=r("remote"),qR0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],UR0=[0,[17,0,0],r(z)],HR0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],XR0=[0,[15,0],r(C0)],YR0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],VR0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ImportDeclaration.ImportNamedSpecifiers"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ImportDeclaration.ImportNamedSpecifiers@ ")],zR0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],KR0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],WR0=[0,[17,0,[12,41,0]],r(h0)],JR0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ImportDeclaration.ImportNamespaceSpecifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ImportDeclaration.ImportNamespaceSpecifier@ ")],$R0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],ZR0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],QR0=[0,[17,0,[12,41,0]],r(h0)],rj0=[0,[17,0,[12,41,0]],r(h0)],ej0=[0,[15,0],r(C0)],nj0=r("Flow_ast.Statement.ImportDeclaration.ImportType"),tj0=r("Flow_ast.Statement.ImportDeclaration.ImportTypeof"),uj0=r("Flow_ast.Statement.ImportDeclaration.ImportValue"),ij0=[0,[15,0],r(C0)],fj0=r(Yr),xj0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],aj0=r("Flow_ast.Statement.DeclareExportDeclaration.default"),oj0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],cj0=r(tr),sj0=r(Z0),vj0=r(nr),lj0=[0,[17,0,0],r(z)],bj0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],pj0=r(P2),mj0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_j0=r(tr),yj0=r(Z0),dj0=r(nr),hj0=[0,[17,0,0],r(z)],kj0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],wj0=r(Cv),Ej0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Sj0=r(tr),gj0=r(Z0),Fj0=r(nr),Tj0=[0,[17,0,0],r(z)],Oj0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ij0=r(vc),Aj0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Nj0=r(tr),Cj0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Pj0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Dj0=[0,[17,0,[12,41,0]],r(h0)],Lj0=r(Z0),Rj0=r(nr),jj0=[0,[17,0,0],r(z)],Gj0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Mj0=r(Xr),Bj0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],qj0=r(tr),Uj0=r(Z0),Hj0=r(nr),Xj0=[0,[17,0,0],r(z)],Yj0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Vj0=[0,[15,0],r(C0)],zj0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareExportDeclaration.Variable"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareExportDeclaration.Variable@ ")],Kj0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Wj0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Jj0=[0,[17,0,[12,41,0]],r(h0)],$j0=[0,[17,0,[12,41,0]],r(h0)],Zj0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareExportDeclaration.Function"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareExportDeclaration.Function@ ")],Qj0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],rG0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],eG0=[0,[17,0,[12,41,0]],r(h0)],nG0=[0,[17,0,[12,41,0]],r(h0)],tG0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareExportDeclaration.Class"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareExportDeclaration.Class@ ")],uG0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],iG0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],fG0=[0,[17,0,[12,41,0]],r(h0)],xG0=[0,[17,0,[12,41,0]],r(h0)],aG0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareExportDeclaration.DefaultType"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareExportDeclaration.DefaultType@ ")],oG0=[0,[17,0,[12,41,0]],r(h0)],cG0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareExportDeclaration.NamedType"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareExportDeclaration.NamedType@ ")],sG0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],vG0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],lG0=[0,[17,0,[12,41,0]],r(h0)],bG0=[0,[17,0,[12,41,0]],r(h0)],pG0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareExportDeclaration.NamedOpaqueType"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareExportDeclaration.NamedOpaqueType@ ")],mG0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],_G0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],yG0=[0,[17,0,[12,41,0]],r(h0)],dG0=[0,[17,0,[12,41,0]],r(h0)],hG0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareExportDeclaration.Interface"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareExportDeclaration.Interface@ ")],kG0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],wG0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],EG0=[0,[17,0,[12,41,0]],r(h0)],SG0=[0,[17,0,[12,41,0]],r(h0)],gG0=[0,[15,0],r(C0)],FG0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ExportDefaultDeclaration.Declaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ExportDefaultDeclaration.Declaration@ ")],TG0=[0,[17,0,[12,41,0]],r(h0)],OG0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ExportDefaultDeclaration.Expression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ExportDefaultDeclaration.Expression@ ")],IG0=[0,[17,0,[12,41,0]],r(h0)],AG0=[0,[15,0],r(C0)],NG0=r(Yr),CG0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],PG0=r("Flow_ast.Statement.ExportDefaultDeclaration.default"),DG0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],LG0=[0,[17,0,0],r(z)],RG0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],jG0=r(P2),GG0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],MG0=[0,[17,0,0],r(z)],BG0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],qG0=r(Xr),UG0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],HG0=r(tr),XG0=r(Z0),YG0=r(nr),VG0=[0,[17,0,0],r(z)],zG0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],KG0=[0,[15,0],r(C0)],WG0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],JG0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ExportNamedDeclaration.ExportSpecifiers"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ExportNamedDeclaration.ExportSpecifiers@ ")],$G0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],ZG0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],QG0=[0,[17,0,[12,41,0]],r(h0)],rM0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ExportNamedDeclaration.ExportBatchSpecifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ExportNamedDeclaration.ExportBatchSpecifier@ ")],eM0=[0,[17,0,[12,41,0]],r(h0)],nM0=[0,[15,0],r(C0)],tM0=r(Yr),uM0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],iM0=r("Flow_ast.Statement.ExportNamedDeclaration.declaration"),fM0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],xM0=r(tr),aM0=r(Z0),oM0=r(nr),cM0=[0,[17,0,0],r(z)],sM0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],vM0=r(Cv),lM0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],bM0=r(tr),pM0=r(Z0),mM0=r(nr),_M0=[0,[17,0,0],r(z)],yM0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],dM0=r(vc),hM0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],kM0=r(tr),wM0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],EM0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],SM0=[0,[17,0,[12,41,0]],r(h0)],gM0=r(Z0),FM0=r(nr),TM0=[0,[17,0,0],r(z)],OM0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],IM0=r("export_kind"),AM0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],NM0=[0,[17,0,0],r(z)],CM0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],PM0=r(Xr),DM0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],LM0=r(tr),RM0=r(Z0),jM0=r(nr),GM0=[0,[17,0,0],r(z)],MM0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],BM0=[0,[15,0],r(C0)],qM0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],UM0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],HM0=r(tr),XM0=r(Z0),YM0=r(nr),VM0=[0,[17,0,[12,41,0]],r(h0)],zM0=[0,[15,0],r(C0)],KM0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],WM0=r("Flow_ast.Statement.ExportNamedDeclaration.ExportSpecifier.local"),JM0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$M0=[0,[17,0,0],r(z)],ZM0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],QM0=r(A4),rB0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],eB0=r(tr),nB0=r(Z0),tB0=r(nr),uB0=[0,[17,0,0],r(z)],iB0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],fB0=[0,[15,0],r(C0)],xB0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],aB0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],oB0=[0,[17,0,[12,41,0]],r(h0)],cB0=[0,[15,0],r(C0)],sB0=r(Yr),vB0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],lB0=r("Flow_ast.Statement.DeclareModuleExports.annot"),bB0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],pB0=[0,[17,0,0],r(z)],mB0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],_B0=r(Xr),yB0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],dB0=r(tr),hB0=r(Z0),kB0=r(nr),wB0=[0,[17,0,0],r(z)],EB0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],SB0=[0,[15,0],r(C0)],gB0=r(Yr),FB0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],TB0=r("Flow_ast.Statement.DeclareModule.id"),OB0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],IB0=[0,[17,0,0],r(z)],AB0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],NB0=r(Wn),CB0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],PB0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],DB0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],LB0=[0,[17,0,[12,41,0]],r(h0)],RB0=[0,[17,0,0],r(z)],jB0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],GB0=r(Zc),MB0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],BB0=[0,[17,0,0],r(z)],qB0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],UB0=r(Xr),HB0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],XB0=r(tr),YB0=r(Z0),VB0=r(nr),zB0=[0,[17,0,0],r(z)],KB0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],WB0=[0,[15,0],r(C0)],JB0=r("Flow_ast.Statement.DeclareModule.ES"),$B0=r("Flow_ast.Statement.DeclareModule.CommonJS"),ZB0=[0,[15,0],r(C0)],QB0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareModule.Identifier"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareModule.Identifier@ ")],rq0=[0,[17,0,[12,41,0]],r(h0)],eq0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.DeclareModule.Literal"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.DeclareModule.Literal@ ")],nq0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],tq0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],uq0=[0,[17,0,[12,41,0]],r(h0)],iq0=[0,[17,0,[12,41,0]],r(h0)],fq0=[0,[15,0],r(C0)],xq0=r(Yr),aq0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],oq0=r("Flow_ast.Statement.DeclareFunction.id"),cq0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],sq0=[0,[17,0,0],r(z)],vq0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],lq0=r(rs),bq0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],pq0=[0,[17,0,0],r(z)],mq0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],_q0=r(Qu),yq0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],dq0=r(tr),hq0=r(Z0),kq0=r(nr),wq0=[0,[17,0,0],r(z)],Eq0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Sq0=r(Xr),gq0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Fq0=r(tr),Tq0=r(Z0),Oq0=r(nr),Iq0=[0,[17,0,0],r(z)],Aq0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Nq0=[0,[15,0],r(C0)],Cq0=r(Yr),Pq0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Dq0=r("Flow_ast.Statement.DeclareVariable.id"),Lq0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Rq0=[0,[17,0,0],r(z)],jq0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Gq0=r(rs),Mq0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Bq0=[0,[17,0,0],r(z)],qq0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Uq0=r(Xr),Hq0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Xq0=r(tr),Yq0=r(Z0),Vq0=r(nr),zq0=[0,[17,0,0],r(z)],Kq0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Wq0=[0,[15,0],r(C0)],Jq0=r(Yr),$q0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Zq0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Qq0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],rU0=[0,[17,0,[12,41,0]],r(h0)],eU0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],nU0=r("Flow_ast.Statement.DeclareClass.id"),tU0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],uU0=[0,[17,0,0],r(z)],iU0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],fU0=r(sv),xU0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],aU0=r(tr),oU0=r(Z0),cU0=r(nr),sU0=[0,[17,0,0],r(z)],vU0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],lU0=r(Wn),bU0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],pU0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],mU0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],_U0=[0,[17,0,[12,41,0]],r(h0)],yU0=[0,[17,0,0],r(z)],dU0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],hU0=r(C7),kU0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],wU0=r(tr),EU0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],SU0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],gU0=[0,[17,0,[12,41,0]],r(h0)],FU0=r(Z0),TU0=r(nr),OU0=[0,[17,0,0],r(z)],IU0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],AU0=r(Vy),NU0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],CU0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],PU0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],DU0=[0,[17,0,0],r(z)],LU0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],RU0=r(gs),jU0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],GU0=r(tr),MU0=r(Z0),BU0=r(nr),qU0=[0,[17,0,0],r(z)],UU0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],HU0=r(Xr),XU0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],YU0=r(tr),VU0=r(Z0),zU0=r(nr),KU0=[0,[17,0,0],r(z)],WU0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],JU0=[0,[15,0],r(C0)],$U0=r(Yr),ZU0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],QU0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],rH0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],eH0=[0,[17,0,[12,41,0]],r(h0)],nH0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],tH0=r("Flow_ast.Statement.Interface.id"),uH0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],iH0=[0,[17,0,0],r(z)],fH0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],xH0=r(sv),aH0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],oH0=r(tr),cH0=r(Z0),sH0=r(nr),vH0=[0,[17,0,0],r(z)],lH0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],bH0=r(C7),pH0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],mH0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],_H0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],yH0=[0,[17,0,0],r(z)],dH0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],hH0=r(Wn),kH0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],wH0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],EH0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],SH0=[0,[17,0,[12,41,0]],r(h0)],gH0=[0,[17,0,0],r(z)],FH0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],TH0=r(Xr),OH0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],IH0=r(tr),AH0=r(Z0),NH0=r(nr),CH0=[0,[17,0,0],r(z)],PH0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],DH0=[0,[15,0],r(C0)],LH0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.EnumDeclaration.BooleanBody"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.EnumDeclaration.BooleanBody@ ")],RH0=[0,[17,0,[12,41,0]],r(h0)],jH0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.EnumDeclaration.NumberBody"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.EnumDeclaration.NumberBody@ ")],GH0=[0,[17,0,[12,41,0]],r(h0)],MH0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.EnumDeclaration.StringBody"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.EnumDeclaration.StringBody@ ")],BH0=[0,[17,0,[12,41,0]],r(h0)],qH0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.EnumDeclaration.SymbolBody"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.EnumDeclaration.SymbolBody@ ")],UH0=[0,[17,0,[12,41,0]],r(h0)],HH0=[0,[15,0],r(C0)],XH0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],YH0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],VH0=[0,[17,0,[12,41,0]],r(h0)],zH0=[0,[15,0],r(C0)],KH0=r(Yr),WH0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],JH0=r("Flow_ast.Statement.EnumDeclaration.id"),$H0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ZH0=[0,[17,0,0],r(z)],QH0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],rX0=r(Wn),eX0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],nX0=[0,[17,0,0],r(z)],tX0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],uX0=r(Xr),iX0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],fX0=r(tr),xX0=r(Z0),aX0=r(nr),oX0=[0,[17,0,0],r(z)],cX0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],sX0=[0,[15,0],r(C0)],vX0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],lX0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],bX0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],pX0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],mX0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],_X0=r("Flow_ast.Statement.EnumDeclaration.SymbolBody.members"),yX0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],dX0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],hX0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],kX0=[0,[17,0,0],r(z)],wX0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],EX0=r(E4),SX0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],gX0=[0,[9,0,0],r(An)],FX0=[0,[17,0,0],r(z)],TX0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],OX0=r(Xr),IX0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],AX0=r(tr),NX0=r(Z0),CX0=r(nr),PX0=[0,[17,0,0],r(z)],DX0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],LX0=[0,[15,0],r(C0)],RX0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],jX0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],GX0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.EnumDeclaration.StringBody.Defaulted"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.EnumDeclaration.StringBody.Defaulted@ ")],MX0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],BX0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],qX0=[0,[17,0,[12,41,0]],r(h0)],UX0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.EnumDeclaration.StringBody.Initialized"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.EnumDeclaration.StringBody.Initialized@ ")],HX0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],XX0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],YX0=[0,[17,0,[12,41,0]],r(h0)],VX0=[0,[15,0],r(C0)],zX0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],KX0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],WX0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],JX0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],$X0=r("Flow_ast.Statement.EnumDeclaration.StringBody.members"),ZX0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],QX0=[0,[17,0,0],r(z)],rY0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],eY0=r(Ik),nY0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],tY0=[0,[9,0,0],r(An)],uY0=[0,[17,0,0],r(z)],iY0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],fY0=r(E4),xY0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],aY0=[0,[9,0,0],r(An)],oY0=[0,[17,0,0],r(z)],cY0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],sY0=r(Xr),vY0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],lY0=r(tr),bY0=r(Z0),pY0=r(nr),mY0=[0,[17,0,0],r(z)],_Y0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],yY0=[0,[15,0],r(C0)],dY0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],hY0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],kY0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],wY0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],EY0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],SY0=r("Flow_ast.Statement.EnumDeclaration.NumberBody.members"),gY0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],FY0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],TY0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],OY0=[0,[17,0,0],r(z)],IY0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],AY0=r(Ik),NY0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],CY0=[0,[9,0,0],r(An)],PY0=[0,[17,0,0],r(z)],DY0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],LY0=r(E4),RY0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],jY0=[0,[9,0,0],r(An)],GY0=[0,[17,0,0],r(z)],MY0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],BY0=r(Xr),qY0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],UY0=r(tr),HY0=r(Z0),XY0=r(nr),YY0=[0,[17,0,0],r(z)],VY0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],zY0=[0,[15,0],r(C0)],KY0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],WY0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],JY0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],$Y0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ZY0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],QY0=r("Flow_ast.Statement.EnumDeclaration.BooleanBody.members"),rV0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],eV0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],nV0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],tV0=[0,[17,0,0],r(z)],uV0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],iV0=r(Ik),fV0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],xV0=[0,[9,0,0],r(An)],aV0=[0,[17,0,0],r(z)],oV0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],cV0=r(E4),sV0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],vV0=[0,[9,0,0],r(An)],lV0=[0,[17,0,0],r(z)],bV0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],pV0=r(Xr),mV0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_V0=r(tr),yV0=r(Z0),dV0=r(nr),hV0=[0,[17,0,0],r(z)],kV0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],wV0=[0,[15,0],r(C0)],EV0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],SV0=r("Flow_ast.Statement.EnumDeclaration.InitializedMember.id"),gV0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],FV0=[0,[17,0,0],r(z)],TV0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],OV0=r(ji),IV0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],AV0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],NV0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],CV0=[0,[17,0,[12,41,0]],r(h0)],PV0=[0,[17,0,0],r(z)],DV0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],LV0=[0,[15,0],r(C0)],RV0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],jV0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],GV0=[0,[17,0,[12,41,0]],r(h0)],MV0=[0,[15,0],r(C0)],BV0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],qV0=r("Flow_ast.Statement.EnumDeclaration.DefaultedMember.id"),UV0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],HV0=[0,[17,0,0],r(z)],XV0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],YV0=[0,[15,0],r(C0)],VV0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],zV0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],KV0=[0,[17,0,[12,41,0]],r(h0)],WV0=[0,[15,0],r(C0)],JV0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ForOf.LeftDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ForOf.LeftDeclaration@ ")],$V0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],ZV0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],QV0=[0,[17,0,[12,41,0]],r(h0)],rz0=[0,[17,0,[12,41,0]],r(h0)],ez0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ForOf.LeftPattern"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ForOf.LeftPattern@ ")],nz0=[0,[17,0,[12,41,0]],r(h0)],tz0=[0,[15,0],r(C0)],uz0=r(Yr),iz0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],fz0=r("Flow_ast.Statement.ForOf.left"),xz0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],az0=[0,[17,0,0],r(z)],oz0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],cz0=r(Nu),sz0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],vz0=[0,[17,0,0],r(z)],lz0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],bz0=r(Wn),pz0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],mz0=[0,[17,0,0],r(z)],_z0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],yz0=r(wx),dz0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],hz0=[0,[9,0,0],r(An)],kz0=[0,[17,0,0],r(z)],wz0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ez0=r(Xr),Sz0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],gz0=r(tr),Fz0=r(Z0),Tz0=r(nr),Oz0=[0,[17,0,0],r(z)],Iz0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Az0=[0,[15,0],r(C0)],Nz0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ForIn.LeftDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ForIn.LeftDeclaration@ ")],Cz0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Pz0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Dz0=[0,[17,0,[12,41,0]],r(h0)],Lz0=[0,[17,0,[12,41,0]],r(h0)],Rz0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.ForIn.LeftPattern"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.ForIn.LeftPattern@ ")],jz0=[0,[17,0,[12,41,0]],r(h0)],Gz0=[0,[15,0],r(C0)],Mz0=r(Yr),Bz0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],qz0=r("Flow_ast.Statement.ForIn.left"),Uz0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Hz0=[0,[17,0,0],r(z)],Xz0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Yz0=r(Nu),Vz0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],zz0=[0,[17,0,0],r(z)],Kz0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Wz0=r(Wn),Jz0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$z0=[0,[17,0,0],r(z)],Zz0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Qz0=r(j8),rK0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],eK0=[0,[9,0,0],r(An)],nK0=[0,[17,0,0],r(z)],tK0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],uK0=r(Xr),iK0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],fK0=r(tr),xK0=r(Z0),aK0=r(nr),oK0=[0,[17,0,0],r(z)],cK0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],sK0=[0,[15,0],r(C0)],vK0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.For.InitDeclaration"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.For.InitDeclaration@ ")],lK0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],bK0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],pK0=[0,[17,0,[12,41,0]],r(h0)],mK0=[0,[17,0,[12,41,0]],r(h0)],_K0=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Statement.For.InitExpression"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Statement.For.InitExpression@ ")],yK0=[0,[17,0,[12,41,0]],r(h0)],dK0=[0,[15,0],r(C0)],hK0=r(Yr),kK0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],wK0=r("Flow_ast.Statement.For.init"),EK0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],SK0=r(tr),gK0=r(Z0),FK0=r(nr),TK0=[0,[17,0,0],r(z)],OK0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],IK0=r(Ts),AK0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],NK0=r(tr),CK0=r(Z0),PK0=r(nr),DK0=[0,[17,0,0],r(z)],LK0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],RK0=r(sU),jK0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],GK0=r(tr),MK0=r(Z0),BK0=r(nr),qK0=[0,[17,0,0],r(z)],UK0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],HK0=r(Wn),XK0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],YK0=[0,[17,0,0],r(z)],VK0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],zK0=r(Xr),KK0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],WK0=r(tr),JK0=r(Z0),$K0=r(nr),ZK0=[0,[17,0,0],r(z)],QK0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],rW0=[0,[15,0],r(C0)],eW0=r(Yr),nW0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],tW0=r("Flow_ast.Statement.DoWhile.body"),uW0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],iW0=[0,[17,0,0],r(z)],fW0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],xW0=r(Ts),aW0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],oW0=[0,[17,0,0],r(z)],cW0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],sW0=r(Xr),vW0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],lW0=r(tr),bW0=r(Z0),pW0=r(nr),mW0=[0,[17,0,0],r(z)],_W0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],yW0=[0,[15,0],r(C0)],dW0=r(Yr),hW0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],kW0=r("Flow_ast.Statement.While.test"),wW0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],EW0=[0,[17,0,0],r(z)],SW0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],gW0=r(Wn),FW0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],TW0=[0,[17,0,0],r(z)],OW0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],IW0=r(Xr),AW0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],NW0=r(tr),CW0=r(Z0),PW0=r(nr),DW0=[0,[17,0,0],r(z)],LW0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],RW0=[0,[15,0],r(C0)],jW0=r("Flow_ast.Statement.VariableDeclaration.Var"),GW0=r("Flow_ast.Statement.VariableDeclaration.Let"),MW0=r("Flow_ast.Statement.VariableDeclaration.Const"),BW0=[0,[15,0],r(C0)],qW0=r(Yr),UW0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],HW0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],XW0=r("Flow_ast.Statement.VariableDeclaration.declarations"),YW0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],VW0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],zW0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],KW0=[0,[17,0,0],r(z)],WW0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],JW0=r(Zc),$W0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ZW0=[0,[17,0,0],r(z)],QW0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],rJ0=r(Xr),eJ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],nJ0=r(tr),tJ0=r(Z0),uJ0=r(nr),iJ0=[0,[17,0,0],r(z)],fJ0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],xJ0=[0,[15,0],r(C0)],aJ0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],oJ0=r("Flow_ast.Statement.VariableDeclaration.Declarator.id"),cJ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],sJ0=[0,[17,0,0],r(z)],vJ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],lJ0=r(ji),bJ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],pJ0=r(tr),mJ0=r(Z0),_J0=r(nr),yJ0=[0,[17,0,0],r(z)],dJ0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],hJ0=[0,[15,0],r(C0)],kJ0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],wJ0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],EJ0=[0,[17,0,[12,41,0]],r(h0)],SJ0=[0,[15,0],r(C0)],gJ0=r(Yr),FJ0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],TJ0=r("Flow_ast.Statement.Try.block"),OJ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],IJ0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],AJ0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],NJ0=[0,[17,0,[12,41,0]],r(h0)],CJ0=[0,[17,0,0],r(z)],PJ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],DJ0=r(XU),LJ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],RJ0=r(tr),jJ0=r(Z0),GJ0=r(nr),MJ0=[0,[17,0,0],r(z)],BJ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],qJ0=r(jH),UJ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],HJ0=r(tr),XJ0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],YJ0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],VJ0=[0,[17,0,[12,41,0]],r(h0)],zJ0=r(Z0),KJ0=r(nr),WJ0=[0,[17,0,0],r(z)],JJ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],$J0=r(Xr),ZJ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],QJ0=r(tr),r$0=r(Z0),e$0=r(nr),n$0=[0,[17,0,0],r(z)],t$0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],u$0=[0,[15,0],r(C0)],i$0=r(Yr),f$0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],x$0=r("Flow_ast.Statement.Try.CatchClause.param"),a$0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],o$0=r(tr),c$0=r(Z0),s$0=r(nr),v$0=[0,[17,0,0],r(z)],l$0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],b$0=r(Wn),p$0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],m$0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],_$0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],y$0=[0,[17,0,[12,41,0]],r(h0)],d$0=[0,[17,0,0],r(z)],h$0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],k$0=r(Xr),w$0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],E$0=r(tr),S$0=r(Z0),g$0=r(nr),F$0=[0,[17,0,0],r(z)],T$0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],O$0=[0,[15,0],r(C0)],I$0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],A$0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],N$0=[0,[17,0,[12,41,0]],r(h0)],C$0=[0,[15,0],r(C0)],P$0=r(Yr),D$0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],L$0=r("Flow_ast.Statement.Throw.argument"),R$0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],j$0=[0,[17,0,0],r(z)],G$0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],M$0=r(Xr),B$0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],q$0=r(tr),U$0=r(Z0),H$0=r(nr),X$0=[0,[17,0,0],r(z)],Y$0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],V$0=[0,[15,0],r(C0)],z$0=r(Yr),K$0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],W$0=r("Flow_ast.Statement.Return.argument"),J$0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$$0=r(tr),Z$0=r(Z0),Q$0=r(nr),rZ0=[0,[17,0,0],r(z)],eZ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],nZ0=r(Xr),tZ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],uZ0=r(tr),iZ0=r(Z0),fZ0=r(nr),xZ0=[0,[17,0,0],r(z)],aZ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],oZ0=r("return_out"),cZ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],sZ0=[0,[17,0,0],r(z)],vZ0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],lZ0=[0,[15,0],r(C0)],bZ0=r(Yr),pZ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],mZ0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],_Z0=r("Flow_ast.Statement.Switch.discriminant"),yZ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],dZ0=[0,[17,0,0],r(z)],hZ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],kZ0=r(uY),wZ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],EZ0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],SZ0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],gZ0=[0,[17,0,0],r(z)],FZ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],TZ0=r(Xr),OZ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],IZ0=r(tr),AZ0=r(Z0),NZ0=r(nr),CZ0=[0,[17,0,0],r(z)],PZ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],DZ0=r("exhaustive_out"),LZ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],RZ0=[0,[17,0,0],r(z)],jZ0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],GZ0=[0,[15,0],r(C0)],MZ0=r(Yr),BZ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],qZ0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],UZ0=r("Flow_ast.Statement.Switch.Case.test"),HZ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],XZ0=r(tr),YZ0=r(Z0),VZ0=r(nr),zZ0=[0,[17,0,0],r(z)],KZ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],WZ0=r(kv),JZ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$Z0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],ZZ0=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],QZ0=[0,[17,0,0],r(z)],rQ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],eQ0=r(Xr),nQ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],tQ0=r(tr),uQ0=r(Z0),iQ0=r(nr),fQ0=[0,[17,0,0],r(z)],xQ0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],aQ0=[0,[15,0],r(C0)],oQ0=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],cQ0=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],sQ0=[0,[17,0,[12,41,0]],r(h0)],vQ0=[0,[15,0],r(C0)],lQ0=r(Yr),bQ0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],pQ0=r("Flow_ast.Statement.OpaqueType.id"),mQ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_Q0=[0,[17,0,0],r(z)],yQ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],dQ0=r(sv),hQ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],kQ0=r(tr),wQ0=r(Z0),EQ0=r(nr),SQ0=[0,[17,0,0],r(z)],gQ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],FQ0=r(kX),TQ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],OQ0=r(tr),IQ0=r(Z0),AQ0=r(nr),NQ0=[0,[17,0,0],r(z)],CQ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],PQ0=r(IX),DQ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],LQ0=r(tr),RQ0=r(Z0),jQ0=r(nr),GQ0=[0,[17,0,0],r(z)],MQ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],BQ0=r(Xr),qQ0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],UQ0=r(tr),HQ0=r(Z0),XQ0=r(nr),YQ0=[0,[17,0,0],r(z)],VQ0=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],zQ0=[0,[15,0],r(C0)],KQ0=r(Yr),WQ0=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],JQ0=r("Flow_ast.Statement.TypeAlias.id"),$Q0=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ZQ0=[0,[17,0,0],r(z)],QQ0=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],r0r=r(sv),e0r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],n0r=r(tr),t0r=r(Z0),u0r=r(nr),i0r=[0,[17,0,0],r(z)],f0r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],x0r=r(Nu),a0r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],o0r=[0,[17,0,0],r(z)],c0r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],s0r=r(Xr),v0r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],l0r=r(tr),b0r=r(Z0),p0r=r(nr),m0r=[0,[17,0,0],r(z)],_0r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],y0r=[0,[15,0],r(C0)],d0r=r(Yr),h0r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],k0r=r("Flow_ast.Statement.With._object"),w0r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],E0r=[0,[17,0,0],r(z)],S0r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],g0r=r(Wn),F0r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],T0r=[0,[17,0,0],r(z)],O0r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],I0r=r(Xr),A0r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],N0r=r(tr),C0r=r(Z0),P0r=r(nr),D0r=[0,[17,0,0],r(z)],L0r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],R0r=[0,[15,0],r(C0)],j0r=r(Yr),G0r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],M0r=r("Flow_ast.Statement.Debugger.comments"),B0r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],q0r=r(tr),U0r=r(Z0),H0r=r(nr),X0r=[0,[17,0,0],r(z)],Y0r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],V0r=[0,[15,0],r(C0)],z0r=r(Yr),K0r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],W0r=r("Flow_ast.Statement.Continue.label"),J0r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$0r=r(tr),Z0r=r(Z0),Q0r=r(nr),rrr=[0,[17,0,0],r(z)],err=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],nrr=r(Xr),trr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],urr=r(tr),irr=r(Z0),frr=r(nr),xrr=[0,[17,0,0],r(z)],arr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],orr=[0,[15,0],r(C0)],crr=r(Yr),srr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],vrr=r("Flow_ast.Statement.Break.label"),lrr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],brr=r(tr),prr=r(Z0),mrr=r(nr),_rr=[0,[17,0,0],r(z)],yrr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],drr=r(Xr),hrr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],krr=r(tr),wrr=r(Z0),Err=r(nr),Srr=[0,[17,0,0],r(z)],grr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Frr=[0,[15,0],r(C0)],Trr=r(Yr),Orr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Irr=r("Flow_ast.Statement.Labeled.label"),Arr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Nrr=[0,[17,0,0],r(z)],Crr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Prr=r(Wn),Drr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Lrr=[0,[17,0,0],r(z)],Rrr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],jrr=r(Xr),Grr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Mrr=r(tr),Brr=r(Z0),qrr=r(nr),Urr=[0,[17,0,0],r(z)],Hrr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Xrr=[0,[15,0],r(C0)],Yrr=r(Yr),Vrr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],zrr=r("Flow_ast.Statement.If.test"),Krr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Wrr=[0,[17,0,0],r(z)],Jrr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],$rr=r(kv),Zrr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Qrr=[0,[17,0,0],r(z)],rer=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],eer=r(_3),ner=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ter=r(tr),uer=r(Z0),ier=r(nr),fer=[0,[17,0,0],r(z)],xer=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],aer=r(Xr),oer=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],cer=r(tr),ser=r(Z0),ver=r(nr),ler=[0,[17,0,0],r(z)],ber=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],per=[0,[15,0],r(C0)],mer=r(Yr),_er=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],yer=r("Flow_ast.Statement.If.Alternate.body"),der=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],her=[0,[17,0,0],r(z)],ker=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],wer=r(Xr),Eer=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ser=r(tr),ger=r(Z0),Fer=r(nr),Ter=[0,[17,0,0],r(z)],Oer=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Ier=[0,[15,0],r(C0)],Aer=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Ner=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Cer=[0,[17,0,[12,41,0]],r(h0)],Per=[0,[15,0],r(C0)],Der=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ler=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Rer=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],jer=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ger=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Mer=r("Flow_ast.Statement.Block.body"),Ber=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],qer=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Uer=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Her=[0,[17,0,0],r(z)],Xer=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Yer=r(Xr),Ver=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],zer=r(tr),Ker=r(Z0),Wer=r(nr),Jer=[0,[17,0,0],r(z)],$er=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Zer=[0,[15,0],r(C0)],Qer=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Predicate.Declared"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Predicate.Declared@ ")],rnr=[0,[17,0,[12,41,0]],r(h0)],enr=r("Flow_ast.Type.Predicate.Inferred"),nnr=[0,[15,0],r(C0)],tnr=r(Yr),unr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],inr=r("Flow_ast.Type.Predicate.kind"),fnr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],xnr=[0,[17,0,0],r(z)],anr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],onr=r(Xr),cnr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],snr=r(tr),vnr=r(Z0),lnr=r(nr),bnr=[0,[17,0,0],r(z)],pnr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],mnr=[0,[15,0],r(C0)],_nr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],ynr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],dnr=[0,[17,0,[12,41,0]],r(h0)],hnr=[0,[15,0],r(C0)],knr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],wnr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Enr=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Snr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],gnr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Fnr=r("Flow_ast.Type.TypeArgs.arguments"),Tnr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Onr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Inr=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Anr=[0,[17,0,0],r(z)],Nnr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Cnr=r(Xr),Pnr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Dnr=r(tr),Lnr=r(Z0),Rnr=r(nr),jnr=[0,[17,0,0],r(z)],Gnr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Mnr=[0,[15,0],r(C0)],Bnr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],qnr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Unr=[0,[17,0,[12,41,0]],r(h0)],Hnr=[0,[15,0],r(C0)],Xnr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ynr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Vnr=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],znr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Knr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Wnr=r("Flow_ast.Type.TypeParams.params"),Jnr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$nr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Znr=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Qnr=[0,[17,0,0],r(z)],rtr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],etr=r(Xr),ntr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ttr=r(tr),utr=r(Z0),itr=r(nr),ftr=[0,[17,0,0],r(z)],xtr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],atr=[0,[15,0],r(C0)],otr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],ctr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],str=[0,[17,0,[12,41,0]],r(h0)],vtr=[0,[15,0],r(C0)],ltr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],btr=r("Flow_ast.Type.TypeParam.name"),ptr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],mtr=[0,[17,0,0],r(z)],_tr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ytr=r(MU),dtr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],htr=[0,[17,0,0],r(z)],ktr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],wtr=r(ou),Etr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Str=r(tr),gtr=r(Z0),Ftr=r(nr),Ttr=[0,[17,0,0],r(z)],Otr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Itr=r(mi),Atr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ntr=r(tr),Ctr=r(Z0),Ptr=r(nr),Dtr=[0,[17,0,0],r(z)],Ltr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Rtr=[0,[15,0],r(C0)],jtr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Gtr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Mtr=[0,[17,0,[12,41,0]],r(h0)],Btr=[0,[15,0],r(C0)],qtr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Missing"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Missing@ ")],Utr=[0,[17,0,[12,41,0]],r(h0)],Htr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Available"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Available@ ")],Xtr=[0,[17,0,[12,41,0]],r(h0)],Ytr=[0,[15,0],r(C0)],Vtr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],ztr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Ktr=[0,[17,0,[12,41,0]],r(h0)],Wtr=[0,[15,0],r(C0)],Jtr=r(Yr),$tr=r(Yr),Ztr=r(Yr),Qtr=r(Yr),rur=r(Yr),eur=r(Yr),nur=r(Yr),tur=r(Yr),uur=r(Yr),iur=r(Yr),fur=r(Yr),xur=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Any"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Any@ ")],aur=r(tr),our=r(Z0),cur=r(nr),sur=[0,[17,0,[12,41,0]],r(h0)],vur=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Mixed"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Mixed@ ")],lur=r(tr),bur=r(Z0),pur=r(nr),mur=[0,[17,0,[12,41,0]],r(h0)],_ur=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Empty"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Empty@ ")],yur=r(tr),dur=r(Z0),hur=r(nr),kur=[0,[17,0,[12,41,0]],r(h0)],wur=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Void"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Void@ ")],Eur=r(tr),Sur=r(Z0),gur=r(nr),Fur=[0,[17,0,[12,41,0]],r(h0)],Tur=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Null"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Null@ ")],Our=r(tr),Iur=r(Z0),Aur=r(nr),Nur=[0,[17,0,[12,41,0]],r(h0)],Cur=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Number"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Number@ ")],Pur=r(tr),Dur=r(Z0),Lur=r(nr),Rur=[0,[17,0,[12,41,0]],r(h0)],jur=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.BigInt"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.BigInt@ ")],Gur=r(tr),Mur=r(Z0),Bur=r(nr),qur=[0,[17,0,[12,41,0]],r(h0)],Uur=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.String"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.String@ ")],Hur=r(tr),Xur=r(Z0),Yur=r(nr),Vur=[0,[17,0,[12,41,0]],r(h0)],zur=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Boolean"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Boolean@ ")],Kur=r(tr),Wur=r(Z0),Jur=r(nr),$ur=[0,[17,0,[12,41,0]],r(h0)],Zur=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Symbol"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Symbol@ ")],Qur=r(tr),r7r=r(Z0),e7r=r(nr),n7r=[0,[17,0,[12,41,0]],r(h0)],t7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Exists"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Exists@ ")],u7r=r(tr),i7r=r(Z0),f7r=r(nr),x7r=[0,[17,0,[12,41,0]],r(h0)],a7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Nullable"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Nullable@ ")],o7r=[0,[17,0,[12,41,0]],r(h0)],c7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Function"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Function@ ")],s7r=[0,[17,0,[12,41,0]],r(h0)],v7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Object"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Object@ ")],l7r=[0,[17,0,[12,41,0]],r(h0)],b7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Interface"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Interface@ ")],p7r=[0,[17,0,[12,41,0]],r(h0)],m7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Array"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Array@ ")],_7r=[0,[17,0,[12,41,0]],r(h0)],y7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Generic"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Generic@ ")],d7r=[0,[17,0,[12,41,0]],r(h0)],h7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.IndexedAccess"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.IndexedAccess@ ")],k7r=[0,[17,0,[12,41,0]],r(h0)],w7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.OptionalIndexedAccess"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.OptionalIndexedAccess@ ")],E7r=[0,[17,0,[12,41,0]],r(h0)],S7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Union"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Union@ ")],g7r=[0,[17,0,[12,41,0]],r(h0)],F7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Intersection"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Intersection@ ")],T7r=[0,[17,0,[12,41,0]],r(h0)],O7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Typeof"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Typeof@ ")],I7r=[0,[17,0,[12,41,0]],r(h0)],A7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Tuple"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Tuple@ ")],N7r=[0,[17,0,[12,41,0]],r(h0)],C7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.StringLiteral"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.StringLiteral@ ")],P7r=[0,[17,0,[12,41,0]],r(h0)],D7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.NumberLiteral"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.NumberLiteral@ ")],L7r=[0,[17,0,[12,41,0]],r(h0)],R7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.BigIntLiteral"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.BigIntLiteral@ ")],j7r=[0,[17,0,[12,41,0]],r(h0)],G7r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.BooleanLiteral"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.BooleanLiteral@ ")],M7r=[0,[17,0,[12,41,0]],r(h0)],B7r=[0,[15,0],r(C0)],q7r=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],U7r=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],H7r=[0,[17,0,[12,41,0]],r(h0)],X7r=[0,[15,0],r(C0)],Y7r=r(Yr),V7r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],z7r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],K7r=r("Flow_ast.Type.Intersection.types"),W7r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],J7r=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],$7r=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Z7r=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Q7r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],rir=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],eir=[0,[17,0,[12,41,0]],r(h0)],nir=[0,[17,0,0],r(z)],tir=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],uir=r(Xr),iir=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],fir=r(tr),xir=r(Z0),air=r(nr),oir=[0,[17,0,0],r(z)],cir=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],sir=[0,[15,0],r(C0)],vir=r(Yr),lir=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],bir=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],pir=r("Flow_ast.Type.Union.types"),mir=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_ir=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],yir=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],dir=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],hir=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],kir=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],wir=[0,[17,0,[12,41,0]],r(h0)],Eir=[0,[17,0,0],r(z)],Sir=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],gir=r(Xr),Fir=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Tir=r(tr),Oir=r(Z0),Iir=r(nr),Air=[0,[17,0,0],r(z)],Nir=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Cir=[0,[15,0],r(C0)],Pir=r(Yr),Dir=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Lir=r("Flow_ast.Type.Array.argument"),Rir=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],jir=[0,[17,0,0],r(z)],Gir=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Mir=r(Xr),Bir=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],qir=r(tr),Uir=r(Z0),Hir=r(nr),Xir=[0,[17,0,0],r(z)],Yir=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Vir=[0,[15,0],r(C0)],zir=r(Yr),Kir=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Wir=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Jir=r("Flow_ast.Type.Tuple.types"),$ir=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Zir=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Qir=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],rfr=[0,[17,0,0],r(z)],efr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],nfr=r(Xr),tfr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ufr=r(tr),ifr=r(Z0),ffr=r(nr),xfr=[0,[17,0,0],r(z)],afr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],ofr=[0,[15,0],r(C0)],cfr=r(Yr),sfr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],vfr=r("Flow_ast.Type.Typeof.argument"),lfr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],bfr=[0,[17,0,0],r(z)],pfr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],mfr=r(Xr),_fr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],yfr=r(tr),dfr=r(Z0),hfr=r(nr),kfr=[0,[17,0,0],r(z)],wfr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Efr=[0,[15,0],r(C0)],Sfr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],gfr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Ffr=[0,[17,0,[12,41,0]],r(h0)],Tfr=[0,[15,0],r(C0)],Ofr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Ifr=r("Flow_ast.Type.Typeof.Target.qualification"),Afr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Nfr=[0,[17,0,0],r(z)],Cfr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Pfr=r(mt),Dfr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Lfr=[0,[17,0,0],r(z)],Rfr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],jfr=[0,[15,0],r(C0)],Gfr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Typeof.Target.Unqualified"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Typeof.Target.Unqualified@ ")],Mfr=[0,[17,0,[12,41,0]],r(h0)],Bfr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Typeof.Target.Qualified"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Typeof.Target.Qualified@ ")],qfr=[0,[17,0,[12,41,0]],r(h0)],Ufr=[0,[15,0],r(C0)],Hfr=r(Yr),Xfr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Yfr=r("Flow_ast.Type.Nullable.argument"),Vfr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],zfr=[0,[17,0,0],r(z)],Kfr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Wfr=r(Xr),Jfr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$fr=r(tr),Zfr=r(Z0),Qfr=r(nr),rxr=[0,[17,0,0],r(z)],exr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],nxr=[0,[15,0],r(C0)],txr=r(Yr),uxr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ixr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],fxr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],xxr=[0,[17,0,[12,41,0]],r(h0)],axr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],oxr=r("Flow_ast.Type.Interface.body"),cxr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],sxr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],vxr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],lxr=[0,[17,0,[12,41,0]],r(h0)],bxr=[0,[17,0,0],r(z)],pxr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],mxr=r(C7),_xr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],yxr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],dxr=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],hxr=[0,[17,0,0],r(z)],kxr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],wxr=r(Xr),Exr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Sxr=r(tr),gxr=r(Z0),Fxr=r(nr),Txr=[0,[17,0,0],r(z)],Oxr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Ixr=[0,[15,0],r(C0)],Axr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Object.Property"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Object.Property@ ")],Nxr=[0,[17,0,[12,41,0]],r(h0)],Cxr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Object.SpreadProperty"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Object.SpreadProperty@ ")],Pxr=[0,[17,0,[12,41,0]],r(h0)],Dxr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Object.Indexer"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Object.Indexer@ ")],Lxr=[0,[17,0,[12,41,0]],r(h0)],Rxr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Object.CallProperty"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Object.CallProperty@ ")],jxr=[0,[17,0,[12,41,0]],r(h0)],Gxr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Object.InternalSlot"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Object.InternalSlot@ ")],Mxr=[0,[17,0,[12,41,0]],r(h0)],Bxr=[0,[15,0],r(C0)],qxr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Uxr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Hxr=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Xxr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Yxr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Vxr=r("Flow_ast.Type.Object.exact"),zxr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Kxr=[0,[9,0,0],r(An)],Wxr=[0,[17,0,0],r(z)],Jxr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],$xr=r(HY),Zxr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Qxr=[0,[9,0,0],r(An)],rar=[0,[17,0,0],r(z)],ear=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],nar=r(X4),tar=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],uar=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],iar=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],far=[0,[17,0,0],r(z)],xar=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],aar=r(Xr),oar=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],car=r(tr),sar=r(Z0),lar=r(nr),bar=[0,[17,0,0],r(z)],par=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],mar=[0,[15,0],r(C0)],_ar=r(Yr),yar=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],dar=r("Flow_ast.Type.Object.InternalSlot.id"),har=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],kar=[0,[17,0,0],r(z)],war=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ear=r(Bn),Sar=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],gar=[0,[17,0,0],r(z)],Far=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Tar=r(Bu),Oar=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Iar=[0,[9,0,0],r(An)],Aar=[0,[17,0,0],r(z)],Nar=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Car=r(eu),Par=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Dar=[0,[9,0,0],r(An)],Lar=[0,[17,0,0],r(z)],Rar=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],jar=r(xU),Gar=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Mar=[0,[9,0,0],r(An)],Bar=[0,[17,0,0],r(z)],qar=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Uar=r(Xr),Har=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Xar=r(tr),Yar=r(Z0),Var=r(nr),zar=[0,[17,0,0],r(z)],Kar=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],War=[0,[15,0],r(C0)],Jar=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],$ar=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Zar=[0,[17,0,[12,41,0]],r(h0)],Qar=[0,[15,0],r(C0)],ror=r(Yr),eor=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],nor=r("Flow_ast.Type.Object.CallProperty.value"),tor=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],uor=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],ior=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],xor=[0,[17,0,[12,41,0]],r(h0)],aor=[0,[17,0,0],r(z)],oor=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],cor=r(eu),sor=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],vor=[0,[9,0,0],r(An)],lor=[0,[17,0,0],r(z)],bor=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],por=r(Xr),mor=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_or=r(tr),yor=r(Z0),dor=r(nr),hor=[0,[17,0,0],r(z)],kor=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],wor=[0,[15,0],r(C0)],Eor=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Sor=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],gor=[0,[17,0,[12,41,0]],r(h0)],For=[0,[15,0],r(C0)],Tor=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Oor=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Ior=[0,[17,0,[12,41,0]],r(h0)],Aor=[0,[15,0],r(C0)],Nor=r(Yr),Cor=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Por=r("Flow_ast.Type.Object.Indexer.id"),Dor=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Lor=r(tr),Ror=r(Z0),jor=r(nr),Gor=[0,[17,0,0],r(z)],Mor=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Bor=r(ui),qor=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Uor=[0,[17,0,0],r(z)],Hor=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Xor=r(Bn),Yor=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Vor=[0,[17,0,0],r(z)],zor=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Kor=r(eu),Wor=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Jor=[0,[9,0,0],r(An)],$or=[0,[17,0,0],r(z)],Zor=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Qor=r(ou),rcr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ecr=r(tr),ncr=r(Z0),tcr=r(nr),ucr=[0,[17,0,0],r(z)],icr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],fcr=r(Xr),xcr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],acr=r(tr),ocr=r(Z0),ccr=r(nr),scr=[0,[17,0,0],r(z)],vcr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],lcr=[0,[15,0],r(C0)],bcr=r(Yr),pcr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],mcr=r("Flow_ast.Type.Object.SpreadProperty.argument"),_cr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ycr=[0,[17,0,0],r(z)],dcr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],hcr=r(Xr),kcr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],wcr=r(tr),Ecr=r(Z0),Scr=r(nr),gcr=[0,[17,0,0],r(z)],Fcr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Tcr=[0,[15,0],r(C0)],Ocr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Icr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Acr=[0,[17,0,[12,41,0]],r(h0)],Ncr=[0,[15,0],r(C0)],Ccr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Object.Property.Init"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Object.Property.Init@ ")],Pcr=[0,[17,0,[12,41,0]],r(h0)],Dcr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Object.Property.Get"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Object.Property.Get@ ")],Lcr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Rcr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],jcr=[0,[17,0,[12,41,0]],r(h0)],Gcr=[0,[17,0,[12,41,0]],r(h0)],Mcr=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Object.Property.Set"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Object.Property.Set@ ")],Bcr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],qcr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Ucr=[0,[17,0,[12,41,0]],r(h0)],Hcr=[0,[17,0,[12,41,0]],r(h0)],Xcr=[0,[15,0],r(C0)],Ycr=r(Yr),Vcr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],zcr=r("Flow_ast.Type.Object.Property.key"),Kcr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Wcr=[0,[17,0,0],r(z)],Jcr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],$cr=r(Bn),Zcr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Qcr=[0,[17,0,0],r(z)],rsr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],esr=r(Bu),nsr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],tsr=[0,[9,0,0],r(An)],usr=[0,[17,0,0],r(z)],isr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],fsr=r(eu),xsr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],asr=[0,[9,0,0],r(An)],osr=[0,[17,0,0],r(z)],csr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ssr=r(Y3),vsr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],lsr=[0,[9,0,0],r(An)],bsr=[0,[17,0,0],r(z)],psr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],msr=r(xU),_sr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ysr=[0,[9,0,0],r(An)],dsr=[0,[17,0,0],r(z)],hsr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ksr=r(ou),wsr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Esr=r(tr),Ssr=r(Z0),gsr=r(nr),Fsr=[0,[17,0,0],r(z)],Tsr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Osr=r(Xr),Isr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Asr=r(tr),Nsr=r(Z0),Csr=r(nr),Psr=[0,[17,0,0],r(z)],Dsr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Lsr=[0,[15,0],r(C0)],Rsr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],jsr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Gsr=[0,[17,0,[12,41,0]],r(h0)],Msr=[0,[15,0],r(C0)],Bsr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],qsr=r("Flow_ast.Type.OptionalIndexedAccess.indexed_access"),Usr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Hsr=[0,[17,0,0],r(z)],Xsr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ysr=r(Bu),Vsr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],zsr=[0,[9,0,0],r(An)],Ksr=[0,[17,0,0],r(z)],Wsr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Jsr=[0,[15,0],r(C0)],$sr=r(Yr),Zsr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Qsr=r("Flow_ast.Type.IndexedAccess._object"),r1r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],e1r=[0,[17,0,0],r(z)],n1r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],t1r=r("index"),u1r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],i1r=[0,[17,0,0],r(z)],f1r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],x1r=r(Xr),a1r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],o1r=r(tr),c1r=r(Z0),s1r=r(nr),v1r=[0,[17,0,0],r(z)],l1r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],b1r=[0,[15,0],r(C0)],p1r=r(Yr),m1r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],_1r=r("Flow_ast.Type.Generic.id"),y1r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],d1r=[0,[17,0,0],r(z)],h1r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],k1r=r(Z2),w1r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],E1r=r(tr),S1r=r(Z0),g1r=r(nr),F1r=[0,[17,0,0],r(z)],T1r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],O1r=r(Xr),I1r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],A1r=r(tr),N1r=r(Z0),C1r=r(nr),P1r=[0,[17,0,0],r(z)],D1r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],L1r=[0,[15,0],r(C0)],R1r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],j1r=r("Flow_ast.Type.Generic.Identifier.qualification"),G1r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],M1r=[0,[17,0,0],r(z)],B1r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],q1r=r(mt),U1r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],H1r=[0,[17,0,0],r(z)],X1r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Y1r=[0,[15,0],r(C0)],V1r=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],z1r=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],K1r=[0,[17,0,[12,41,0]],r(h0)],W1r=[0,[15,0],r(C0)],J1r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Generic.Identifier.Unqualified"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Generic.Identifier.Unqualified@ ")],$1r=[0,[17,0,[12,41,0]],r(h0)],Z1r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Type.Generic.Identifier.Qualified"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Type.Generic.Identifier.Qualified@ ")],Q1r=[0,[17,0,[12,41,0]],r(h0)],rvr=[0,[15,0],r(C0)],evr=r(Yr),nvr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],tvr=r("Flow_ast.Type.Function.tparams"),uvr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ivr=r(tr),fvr=r(Z0),xvr=r(nr),avr=[0,[17,0,0],r(z)],ovr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],cvr=r(Ct),svr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],vvr=[0,[17,0,0],r(z)],lvr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],bvr=r(Wu),pvr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],mvr=[0,[17,0,0],r(z)],_vr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],yvr=r(Xr),dvr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],hvr=r(tr),kvr=r(Z0),wvr=r(nr),Evr=[0,[17,0,0],r(z)],Svr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],gvr=[0,[15,0],r(C0)],Fvr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Tvr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],Ovr=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Ivr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Avr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Nvr=r("Flow_ast.Type.Function.Params.this_"),Cvr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Pvr=r(tr),Dvr=r(Z0),Lvr=r(nr),Rvr=[0,[17,0,0],r(z)],jvr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Gvr=r(Ct),Mvr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Bvr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],qvr=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],Uvr=[0,[17,0,0],r(z)],Hvr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Xvr=r(ch),Yvr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Vvr=r(tr),zvr=r(Z0),Kvr=r(nr),Wvr=[0,[17,0,0],r(z)],Jvr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],$vr=r(Xr),Zvr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Qvr=r(tr),r2r=r(Z0),e2r=r(nr),n2r=[0,[17,0,0],r(z)],t2r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],u2r=[0,[15,0],r(C0)],i2r=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],f2r=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],x2r=[0,[17,0,[12,41,0]],r(h0)],a2r=[0,[15,0],r(C0)],o2r=r(Yr),c2r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],s2r=r("Flow_ast.Type.Function.ThisParam.annot"),v2r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],l2r=[0,[17,0,0],r(z)],b2r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],p2r=r(Xr),m2r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_2r=r(tr),y2r=r(Z0),d2r=r(nr),h2r=[0,[17,0,0],r(z)],k2r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],w2r=[0,[15,0],r(C0)],E2r=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],S2r=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],g2r=[0,[17,0,[12,41,0]],r(h0)],F2r=[0,[15,0],r(C0)],T2r=r(Yr),O2r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],I2r=r("Flow_ast.Type.Function.RestParam.argument"),A2r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],N2r=[0,[17,0,0],r(z)],C2r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],P2r=r(Xr),D2r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],L2r=r(tr),R2r=r(Z0),j2r=r(nr),G2r=[0,[17,0,0],r(z)],M2r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],B2r=[0,[15,0],r(C0)],q2r=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],U2r=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],H2r=[0,[17,0,[12,41,0]],r(h0)],X2r=[0,[15,0],r(C0)],Y2r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],V2r=r("Flow_ast.Type.Function.Param.name"),z2r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],K2r=r(tr),W2r=r(Z0),J2r=r(nr),$2r=[0,[17,0,0],r(z)],Z2r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Q2r=r(rs),rlr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],elr=[0,[17,0,0],r(z)],nlr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],tlr=r(Bu),ulr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ilr=[0,[9,0,0],r(An)],flr=[0,[17,0,0],r(z)],xlr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],alr=[0,[15,0],r(C0)],olr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],clr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],slr=[0,[17,0,[12,41,0]],r(h0)],vlr=[0,[15,0],r(C0)],llr=r(Yr),blr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],plr=r("Flow_ast.ComputedKey.expression"),mlr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_lr=[0,[17,0,0],r(z)],ylr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],dlr=r(Xr),hlr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],klr=r(tr),wlr=r(Z0),Elr=r(nr),Slr=[0,[17,0,0],r(z)],glr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Flr=[0,[15,0],r(C0)],Tlr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Olr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Ilr=[0,[17,0,[12,41,0]],r(h0)],Alr=[0,[15,0],r(C0)],Nlr=r(Yr),Clr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Plr=r("Flow_ast.Variance.kind"),Dlr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Llr=[0,[17,0,0],r(z)],Rlr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],jlr=r(Xr),Glr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Mlr=r(tr),Blr=r(Z0),qlr=r(nr),Ulr=[0,[17,0,0],r(z)],Hlr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Xlr=[0,[15,0],r(C0)],Ylr=r("Flow_ast.Variance.Minus"),Vlr=r("Flow_ast.Variance.Plus"),zlr=[0,[15,0],r(C0)],Klr=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],Wlr=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],Jlr=[0,[17,0,[12,41,0]],r(h0)],$lr=[0,[15,0],r(C0)],Zlr=r(Yr),Qlr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],rbr=r("Flow_ast.BooleanLiteral.value"),ebr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],nbr=[0,[9,0,0],r(An)],tbr=[0,[17,0,0],r(z)],ubr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],ibr=r(Xr),fbr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],xbr=r(tr),abr=r(Z0),obr=r(nr),cbr=[0,[17,0,0],r(z)],sbr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],vbr=[0,[15,0],r(C0)],lbr=r(Yr),bbr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],pbr=r("Flow_ast.BigIntLiteral.approx_value"),mbr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],_br=[0,[8,[0,0,5],0,0,0],r(e8)],ybr=[0,[17,0,0],r(z)],dbr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],hbr=r(a1),kbr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],wbr=[0,[3,0,0],r(Yt)],Ebr=[0,[17,0,0],r(z)],Sbr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],gbr=r(Xr),Fbr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Tbr=r(tr),Obr=r(Z0),Ibr=r(nr),Abr=[0,[17,0,0],r(z)],Nbr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Cbr=[0,[15,0],r(C0)],Pbr=r(Yr),Dbr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Lbr=r("Flow_ast.NumberLiteral.value"),Rbr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],jbr=[0,[8,[0,0,5],0,0,0],r(e8)],Gbr=[0,[17,0,0],r(z)],Mbr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Bbr=r(o7),qbr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],Ubr=[0,[3,0,0],r(Yt)],Hbr=[0,[17,0,0],r(z)],Xbr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Ybr=r(Xr),Vbr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],zbr=r(tr),Kbr=r(Z0),Wbr=r(nr),Jbr=[0,[17,0,0],r(z)],$br=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Zbr=[0,[15,0],r(C0)],Qbr=r(Yr),r4r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],e4r=r("Flow_ast.StringLiteral.value"),n4r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],t4r=[0,[3,0,0],r(Yt)],u4r=[0,[17,0,0],r(z)],i4r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],f4r=r(o7),x4r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],a4r=[0,[3,0,0],r(Yt)],o4r=[0,[17,0,0],r(z)],c4r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],s4r=r(Xr),v4r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],l4r=r(tr),b4r=r(Z0),p4r=r(nr),m4r=[0,[17,0,0],r(z)],_4r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],y4r=[0,[15,0],r(C0)],d4r=r("Flow_ast.Literal.Null"),h4r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Literal.String"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Literal.String@ ")],k4r=[0,[3,0,0],r(Yt)],w4r=[0,[17,0,[12,41,0]],r(h0)],E4r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Literal.Boolean"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Literal.Boolean@ ")],S4r=[0,[9,0,0],r(An)],g4r=[0,[17,0,[12,41,0]],r(h0)],F4r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Literal.Number"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Literal.Number@ ")],T4r=[0,[8,[0,0,5],0,0,0],r(e8)],O4r=[0,[17,0,[12,41,0]],r(h0)],I4r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Literal.BigInt"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Literal.BigInt@ ")],A4r=[0,[8,[0,0,5],0,0,0],r(e8)],N4r=[0,[17,0,[12,41,0]],r(h0)],C4r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("Flow_ast.Literal.RegExp"),[17,[0,r(v),1,0],0]]]],r("(@[<2>Flow_ast.Literal.RegExp@ ")],P4r=[0,[17,0,[12,41,0]],r(h0)],D4r=[0,[15,0],r(C0)],L4r=r(Yr),R4r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],j4r=r("Flow_ast.Literal.value"),G4r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],M4r=[0,[17,0,0],r(z)],B4r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],q4r=r(o7),U4r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],H4r=[0,[3,0,0],r(Yt)],X4r=[0,[17,0,0],r(z)],Y4r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],V4r=r(Xr),z4r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],K4r=r(tr),W4r=r(Z0),J4r=r(nr),$4r=[0,[17,0,0],r(z)],Z4r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Q4r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],r8r=r("Flow_ast.Literal.RegExp.pattern"),e8r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],n8r=[0,[3,0,0],r(Yt)],t8r=[0,[17,0,0],r(z)],u8r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],i8r=r(UX),f8r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],x8r=[0,[3,0,0],r(Yt)],a8r=[0,[17,0,0],r(z)],o8r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],c8r=[0,[15,0],r(C0)],s8r=[0,[15,0],r(C0)],v8r=r(Yr),l8r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],b8r=r("Flow_ast.PrivateName.name"),p8r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],m8r=[0,[3,0,0],r(Yt)],_8r=[0,[17,0,0],r(z)],y8r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],d8r=r(Xr),h8r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],k8r=r(tr),w8r=r(Z0),E8r=r(nr),S8r=[0,[17,0,0],r(z)],g8r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],F8r=[0,[15,0],r(C0)],T8r=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],O8r=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],I8r=[0,[17,0,[12,41,0]],r(h0)],A8r=[0,[15,0],r(C0)],N8r=r(Yr),C8r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],P8r=r("Flow_ast.Identifier.name"),D8r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],L8r=[0,[3,0,0],r(Yt)],R8r=[0,[17,0,0],r(z)],j8r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],G8r=r(Xr),M8r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],B8r=r(tr),q8r=r(Z0),U8r=r(nr),H8r=[0,[17,0,0],r(z)],X8r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],Y8r=[0,[15,0],r(C0)],V8r=[0,[12,40,[18,[1,[0,0,r(C)]],0]],r(Zr)],z8r=[0,[12,44,[17,[0,r(v),1,0],0]],r(zr)],K8r=[0,[17,0,[12,41,0]],r(h0)],W8r=[0,[15,0],r(C0)],J8r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],$8r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],Z8r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],Q8r=r("Flow_ast.Syntax.leading"),r3r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],e3r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],n3r=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],t3r=[0,[17,0,0],r(z)],u3r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],i3r=r("trailing"),f3r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],x3r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,91,0]],r(Ye)],a3r=[0,[17,[0,r(Pe),0,0],[12,93,[17,0,0]]],r(Xe)],o3r=[0,[17,0,0],r(z)],c3r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],s3r=r("internal"),v3r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],l3r=[0,[17,0,0],r(z)],b3r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],p3r=[0,[0,0,0]],m3r=[0,r(Eu),21,2],_3r=[0,[0,0,0,0,0]],y3r=[0,r(Eu),32,2],d3r=[0,[0,0,0,0,0]],h3r=[0,r(Eu),43,2],k3r=[0,[0,[0,[0,0,0]],0,0,0,0]],w3r=[0,r(Eu),70,2],E3r=[0,[0,0,0]],S3r=[0,r(Eu),80,2],g3r=[0,[0,0,0]],F3r=[0,r(Eu),90,2],T3r=[0,[0,0,0]],O3r=[0,r(Eu),L7,2],I3r=[0,[0,0,0]],A3r=[0,r(Eu),Ht,2],N3r=[0,[0,0,0,0,0,0,0]],C3r=[0,r(Eu),br,2],P3r=[0,[0,0,0,0,0]],D3r=[0,r(Eu),QH,2],L3r=[0,[0,[0,[0,[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],0,0,0,0,0,0,0,0,[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0,0,0]]]],R3r=[0,r(Eu),485,2],j3r=[0,[0,[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0]],[0,[0,[0,[0,0,0,0,0]],0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],0,0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0]],[0,[0,0,0]],0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],0,0,0,0,0,0]],G3r=[0,r(Eu),YX,2],M3r=[0,[0,[0,[0,[0,[0,0,0,0,0]],0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],0,0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],0,0,[0,[0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],0,0,0,0]],B3r=[0,r(Eu),1460,2],q3r=[0,[0,[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0,0,0]],0,0,[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],0,0,0,0,0,0,0,0]],U3r=[0,r(Eu),1604,2],H3r=[0,[0,[0,[0,0,0,0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],0,0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0,0,0]],[0,[0,0,0]],0,0,0,0]],X3r=[0,r(Eu),1689,2],Y3r=[0,[0,0,0,0,0,0,0]],V3r=[0,r(Eu),1705,2],z3r=[0,[0,[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0,0,0]],[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],0,0]],K3r=[0,r(Eu),1828,2],W3r=[0,[0,[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],0,0,0,0]],J3r=[0,r(Eu),1895,2],$3r=[0,[0,0,0,0,0]],Z3r=[0,r(Eu),1907,2],Q3r=[0,[0,0,0]],r6r=[0,[0,0,0,0,0]],e6r=[0,[0,0,0,0,0]],n6r=[0,[0,[0,[0,0,0]],0,0,0,0]],t6r=[0,[0,0,0]],u6r=[0,[0,0,0]],i6r=[0,[0,0,0]],f6r=[0,[0,0,0]],x6r=[0,[0,0,0,0,0,0,0]],a6r=[0,[0,0,0,0,0]],o6r=[0,[0,[0,[0,[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],0,0,0,0,0,0,0,0,[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0,0,0]]]],c6r=[0,[0,[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0]],[0,[0,[0,[0,0,0,0,0]],0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],0,0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0]],[0,[0,0,0]],0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],0,0,0,0,0,0]],s6r=[0,[0,[0,[0,[0,[0,0,0,0,0]],0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],0,0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],0,0,[0,[0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],[0,[0,0,0]],0,0,0,0]],v6r=[0,[0,[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],[0,[0,0,0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0,0,0]],0,0,[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0]],0,0,0,0,0,0,0,0]],l6r=[0,[0,[0,[0,0,0,0,0]],[0,[0,[0,[0,0,0,0,0,0,0]],0,0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0,0,0]],[0,[0,0,0]],0,0,0,0]],b6r=[0,[0,0,0,0,0,0,0]],p6r=[0,[0,[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,[0,[0,0,0,0,0]],0,0,0,0]],[0,[0,0,0,0,0,0,0]],[0,[0,0,0,0,0]],0,0]],m6r=[0,[0,[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],[0,[0,0,0,0,0]],0,0,0,0]],_6r=[0,[0,0,0,0,0]],y6r=[0,1],d6r=[0,0],h6r=[0,2],k6r=[0,0],w6r=[0,1],E6r=[0,1],S6r=[0,1],g6r=[0,1],F6r=[0,1],T6r=[0,0,0],O6r=[0,0,0],I6r=[0,r(wu),r(zx),r(ia),r(Ia),r(ou),r(wc),r(fx),r(cc),r(Bf),r(Oa),r(Da),r(tc),r(Ca),r(Sf),r(Zo),r(fa),r(Dx),r(Of),r(sx),r(Ao),r(Hf),r(ja),r(Jo),r(Vx),r(Zx),r(dx),r(oa),r(xo),r(ua),r(g7),r(Aa),r(Lf),r(Ea),r(Qx),r(Zf),r(Ha),r(ha),r(P7),r(hc),r(Po),r(Fx),r(Kx),r(df),r(Fc),r(qf),r(vx),r(Wu),r(_x),r(mo),r(Le),r(Qu),r(Qo),r(Va),r(So),r(ra),r(lc),r(co),r(uo),r(Df),r(qa),r(zf),r($f),r(Ec),r(bc),r(lo),r(mf),r(Ka),r(rx),r(nx),r(pi),r(ro),r(Ba),r(wf),r(Ko),r(Ya),r(pc),r(ac),r(Qa),r(ca),r(xx),r(Pf),r(xf),r(Vf),r(tx),r(_o),r(wo),r(Jf),r(uc),r(Tf),r(jx),r(Ua),r(mx),r(hf),r(Af),r(yc),r(ur),r(dc),r($x),r(Xx),r(Lo),r(Wx),r(ux),r(Rx),r(ko),r(Lx),r(kc),r(bx),r($a),r(Sc),r(Ro),r(Wa),r(nc),r(nf),r(Px),r(sa),r(Ax),r(xa),r(Ga),r(Na),r(_c),r(Cx),r(af),r(cf),r(ex),r(Ja),r(ho),r(sc),r(Gf),r(Wo),r(na),r(wa),r(sf),r(r7),r(Co),r(Ox),r(Do),r(Yx),r(ma),r(gc),r(qu),r(zo),r(fo),r(_f),r(_i),r(Kf),r(mc),r($o),r(j7),r(yx),r(po),r(bf),r(Uo),r(Ex),r(Ma),r(yo),r(ix),r(uf),r(jf),r(Tc),r(Nx),r(kx),r(No),r(Ic),r(pa),r(ga),r(vi),r(xc),r(hx),r(jo),r(Vo),r(Oc),r(qx),r(Eo),r(Uf),r(Ff),r(ta),r(Ix),r(Au),r(no),r(io),r(ec),r(lf),r(Fo),r(ba),r(Cf),r(Mx),r(rc),r(Nf),r(Mf),r(Ux),r(Xa),r(Hx),r(vo),r(eo),r(bo),r(s7),r(ka),r(Go),r(Sx),r(Ta),r(la),r(to),r(Wf),r(Mo),r(Io),r(ox),r(O7),r(A7),r(Za),r(ao),r(Qf),r(da),r(kf),r(Fa),r(ax),r(Tx),r(Xf),r(Bo),r(Ef),r(ff),r(To),r(Rf),r(ic),r(yf),r(Ho),r(oo),r(Xo),r(gf),r(ef),r(lx),r(_a),r(px),r(If),r(I7),r(Yo),r(ut),r(Bx),r(of),r(pf),r(Jx),r(Yf),r(za),r(so),r(go),r(va),r(Gx),r(J4)],A6r=[0,r(df),r(ex),r(yo),r(Kf),r(If),r(zf),r(Ua),r(tx),r(Px),r(wa),r(Jo),r(P7),r(Ya),r(no),r(ic),r(_c),r(mx),r(af),r(eo),r(Ux),r(zx),r(vi),r(kc),r(jx),r($o),r(vo),r(Af),r(_i),r(Ia),r(qx),r(uo),r(Wf),r(lx),r(ix),r(ef),r(Ga),r(Cf),r(po),r(bc),r(xc),r(ha),r(Jx),r(_o),r(fo),r(Fx),r(bo),r(Lx),r(hf),r(ff),r(Fa),r(ro),r(So),r(Vf),r(Va),r(Wa),r(Xf),r(ac),r(Qu),r(Pf),r(Uo),r(yc),r(sa),r(Na),r(mc),r(ux),r(Za),r(Zx),r(Nf),r(xf),r(nc),r(Qf),r(Rx),r(Ma),r(co),r(go),r(la),r(Fo),r($x),r(nx),r(va),r(_a),r(vx),r(ou),r(Qo),r(fa),r(zo),r(pf),r(ga),r(ua),r(sc),r(Rf),r(uc),r(Ha),r(s7),r(Vo),r(Vx),r(wu),r(xo),r(Io),r(tc),r(Ka),r(_x),r(Da),r(kf),r(Mo),r(cc),r(Cx),r(ra),r(na),r(Xa),r(Ff),r(pc),r(io),r(ko),r(mf),r(Eo),r(Of),r(oa),r(wc),r(Fc),r(Dx),r(Oa),r(Bo),r(hx),r(ax),r(Lo),r(Ex),r(Bf),r(da),r(Tf),r($a),r(Yf),r(Xx),r(oo),r(To),r(Co),r(lo),r(Ba),r(Sc),r(dc),r(qu),r(Wu),r(Yo),r(Zo),r(sx),r(hc),r(Ec),r(g7),r(O7),r(_f),r(Ko),r(Ix),r(cf),r(pi),r(Nx),r(Hx),r(Ox),r(Tx),r(uf),r(Wx),r(Ja),r(j7),r(bf),r(Sf),r(Mf),r(Le),r(Ic),r(ma),r(rc),r(lf),r(Jf),r(qf),r(Do),r(ca),r(Df),r(dx),r(xx),r(Ao),r(px),r(Ta),r(Xo),r(to),r(Bx),r(Gf),r(Zf),r(yx),r(mo),r(gc),r(Ho),r(wo),r(xa),r(Ef),r(sf),r(ka),r(ja),r(Gx),r(fx),r(gf),r(Hf),r(Go),r(Ax),r(ho),r(ao),r(bx),r(qa),r(Wo),r(Uf),r(Ro),r(Ea),r(za),r($f),r(of),r(Au),r(rx),r(ta),r(kx),r(No),r(Kx),r(A7),r(jf),r(lc),r(ba),r(Sx),r(Lf),r(Qx),r(Po),r(pa),r(ec),r(Ca),r(jo),r(wf),r(ut),r(Yx),r(yf),r(nf),r(Qa),r(Tc),r(ox),r(Mx),r(I7),r(so),r(r7),r(ia),r(Oc),r(Aa),r(ur)],N6r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("File_key.LibFile"),[17,[0,r(v),1,0],0]]]],r("(@[<2>File_key.LibFile@ ")],C6r=[0,[3,0,0],r(Yt)],P6r=[0,[17,0,[12,41,0]],r(h0)],D6r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("File_key.SourceFile"),[17,[0,r(v),1,0],0]]]],r("(@[<2>File_key.SourceFile@ ")],L6r=[0,[3,0,0],r(Yt)],R6r=[0,[17,0,[12,41,0]],r(h0)],j6r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("File_key.JsonFile"),[17,[0,r(v),1,0],0]]]],r("(@[<2>File_key.JsonFile@ ")],G6r=[0,[3,0,0],r(Yt)],M6r=[0,[17,0,[12,41,0]],r(h0)],B6r=[0,[12,40,[18,[1,[0,[11,r(d),0],r(d)]],[11,r("File_key.ResourceFile"),[17,[0,r(v),1,0],0]]]],r("(@[<2>File_key.ResourceFile@ ")],q6r=[0,[3,0,0],r(Yt)],U6r=[0,[17,0,[12,41,0]],r(h0)],H6r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],X6r=r("Loc.line"),Y6r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],V6r=[0,[4,0,0,0,0],r(N2)],z6r=[0,[17,0,0],r(z)],K6r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],W6r=r(I2),J6r=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],$6r=[0,[4,0,0,0,0],r(N2)],Z6r=[0,[17,0,0],r(z)],Q6r=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],rpr=[0,[15,0],r(C0)],epr=[0,[18,[1,[0,[11,r(d),0],r(d)]],[11,r(wr),0]],r(kr)],npr=r("Loc.source"),tpr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],upr=r(tr),ipr=r(Z0),fpr=r(nr),xpr=[0,[17,0,0],r(z)],apr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],opr=r(S7),cpr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],spr=[0,[17,0,0],r(z)],vpr=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],lpr=r("_end"),bpr=[0,[18,[1,[0,0,r(C)]],[2,0,[11,r(J),[17,[0,r(v),1,0],0]]]],r(W)],ppr=[0,[17,0,0],r(z)],mpr=[0,[17,[0,r(v),1,0],[12,br,[17,0,0]]],r(Er)],_pr=[0,r(Gx),r(va),r(go),r(so),r(za),r(Yf),r(Jx),r(pf),r(of),r(Bx),r(ut),r(Yo),r(I7),r(If),r(px),r(_a),r(lx),r(ef),r(gf),r(Xo),r(oo),r(Ho),r(yf),r(ic),r(Rf),r(To),r(ff),r(Ef),r(Bo),r(Xf),r(Tx),r(ax),r(Fa),r(kf),r(da),r(Qf),r(ao),r(Za),r(A7),r(O7),r(ox),r(Io),r(Mo),r(Wf),r(to),r(la),r(Ta),r(Sx),r(Go),r(ka),r(s7),r(bo),r(eo),r(vo),r(Hx),r(Xa),r(Ux),r(Mf),r(Nf),r(rc),r(Mx),r(Cf),r(ba),r(Fo),r(lf),r(ec),r(io),r(no),r(Au),r(Ix),r(ta),r(Ff),r(Uf),r(Eo),r(qx),r(Oc),r(Vo),r(jo),r(hx),r(xc),r(vi),r(ga),r(pa),r(Ic),r(No),r(kx),r(Nx),r(Tc),r(jf),r(uf),r(ix),r(yo),r(Ma),r(Ex),r(Uo),r(bf),r(po),r(yx),r(j7),r($o),r(mc),r(Kf),r(_i),r(_f),r(fo),r(zo),r(qu),r(gc),r(ma),r(Yx),r(Do),r(Ox),r(Co),r(r7),r(sf),r(wa),r(na),r(Wo),r(Gf),r(sc),r(ho),r(Ja),r(ex),r(cf),r(af),r(Cx),r(_c),r(Na),r(Ga),r(xa),r(Ax),r(sa),r(Px),r(nf),r(nc),r(Wa),r(Ro),r(Sc),r($a),r(bx),r(kc),r(Lx),r(ko),r(Rx),r(ux),r(Wx),r(Lo),r(Xx),r($x),r(dc),r(ur),r(yc),r(Af),r(hf),r(mx),r(Ua),r(jx),r(Tf),r(uc),r(Jf),r(wo),r(_o),r(tx),r(Vf),r(xf),r(Pf),r(xx),r(ca),r(Qa),r(ac),r(pc),r(Ya),r(Ko),r(wf),r(Ba),r(ro),r(pi),r(nx),r(rx),r(Ka),r(mf),r(lo),r(bc),r(Ec),r($f),r(zf),r(qa),r(Df),r(uo),r(co),r(lc),r(ra),r(So),r(Va),r(Qo),r(Qu),r(Le),r(mo),r(_x),r(Wu),r(vx),r(qf),r(Fc),r(df),r(Kx),r(Fx),r(Po),r(hc),r(P7),r(ha),r(Ha),r(Zf),r(Qx),r(Ea),r(Lf),r(Aa),r(g7),r(ua),r(xo),r(oa),r(dx),r(Zx),r(Vx),r(Jo),r(ja),r(Hf),r(Ao),r(sx),r(Of),r(Dx),r(fa),r(Zo),r(Sf),r(Ca),r(tc),r(Da),r(Oa),r(Bf),r(cc),r(fx),r(wc),r(ou),r(Ia),r(ia),r(zx),r(wu)],ypr=[0,r(wu),r(zx),r(ia),r(Ia),r(ou),r(wc),r(fx),r(cc),r(Bf),r(Oa),r(Da),r(tc),r(Ca),r(Sf),r(Zo),r(fa),r(Dx),r(Of),r(sx),r(Ao),r(Hf),r(ja),r(Jo),r(Vx),r(Zx),r(dx),r(oa),r(xo),r(ua),r(g7),r(Aa),r(Lf),r(Ea),r(Qx),r(Zf),r(Ha),r(ha),r(P7),r(hc),r(Po),r(Fx),r(Kx),r(df),r(Fc),r(qf),r(vx),r(Wu),r(_x),r(mo),r(Le),r(Qu),r(Qo),r(Va),r(So),r(ra),r(lc),r(co),r(uo),r(Df),r(qa),r(zf),r($f),r(Ec),r(bc),r(lo),r(mf),r(Ka),r(rx),r(nx),r(pi),r(ro),r(Ba),r(wf),r(Ko),r(Ya),r(pc),r(ac),r(Qa),r(ca),r(xx),r(Pf),r(xf),r(Vf),r(tx),r(_o),r(wo),r(Jf),r(uc),r(Tf),r(jx),r(Ua),r(mx),r(hf),r(Af),r(yc),r(ur),r(dc),r($x),r(Xx),r(Lo),r(Wx),r(ux),r(Rx),r(ko),r(Lx),r(kc),r(bx),r($a),r(Sc),r(Ro),r(Wa),r(nc),r(nf),r(Px),r(sa),r(Ax),r(xa),r(Ga),r(Na),r(_c),r(Cx),r(af),r(cf),r(ex),r(Ja),r(ho),r(sc),r(Gf),r(Wo),r(na),r(wa),r(sf),r(r7),r(Co),r(Ox),r(Do),r(Yx),r(ma),r(gc),r(qu),r(zo),r(fo),r(_f),r(_i),r(Kf),r(mc),r($o),r(j7),r(yx),r(po),r(bf),r(Uo),r(Ex),r(Ma),r(yo),r(ix),r(uf),r(jf),r(Tc),r(Nx),r(kx),r(No),r(Ic),r(pa),r(ga),r(vi),r(xc),r(hx),r(jo),r(Vo),r(Oc),r(qx),r(Eo),r(Uf),r(Ff),r(ta),r(Ix),r(Au),r(no),r(io),r(ec),r(lf),r(Fo),r(ba),r(Cf),r(Mx),r(rc),r(Nf),r(Mf),r(Ux),r(Xa),r(Hx),r(vo),r(eo),r(bo),r(s7),r(ka),r(Go),r(Sx),r(Ta),r(la),r(to),r(Wf),r(Mo),r(Io),r(ox),r(O7),r(A7),r(Za),r(ao),r(Qf),r(da),r(kf),r(Fa),r(ax),r(Tx),r(Xf),r(Bo),r(Ef),r(ff),r(To),r(Rf),r(ic),r(yf),r(Ho),r(oo),r(Xo),r(gf),r(ef),r(lx),r(_a),r(px),r(If),r(I7),r(Yo),r(ut),r(Bx),r(of),r(pf),r(Jx),r(Yf),r(za),r(so),r(go),r(va),r(Gx),r(J4)],dpr=[0,r(df),r(ex),r(yo),r(Kf),r(If),r(zf),r(Ua),r(tx),r(Px),r(wa),r(Jo),r(P7),r(Ya),r(no),r(ic),r(_c),r(mx),r(af),r(eo),r(Ux),r(zx),r(vi),r(kc),r(jx),r($o),r(vo),r(Af),r(_i),r(Ia),r(qx),r(uo),r(Wf),r(lx),r(ix),r(ef),r(Ga),r(Cf),r(po),r(bc),r(xc),r(ha),r(Jx),r(_o),r(fo),r(Fx),r(bo),r(Lx),r(hf),r(ff),r(Fa),r(ro),r(So),r(Vf),r(Va),r(Wa),r(Xf),r(ac),r(Qu),r(Pf),r(Uo),r(yc),r(sa),r(Na),r(mc),r(ux),r(Za),r(Zx),r(Nf),r(xf),r(nc),r(Qf),r(Rx),r(Ma),r(co),r(go),r(la),r(Fo),r($x),r(nx),r(va),r(_a),r(vx),r(ou),r(Qo),r(fa),r(zo),r(pf),r(ga),r(ua),r(sc),r(Rf),r(uc),r(Ha),r(s7),r(Vo),r(Vx),r(wu),r(xo),r(Io),r(tc),r(Ka),r(_x),r(Da),r(kf),r(Mo),r(cc),r(Cx),r(ra),r(na),r(Xa),r(Ff),r(pc),r(io),r(ko),r(mf),r(Eo),r(Of),r(oa),r(wc),r(Fc),r(Dx),r(Oa),r(Bo),r(hx),r(ax),r(Lo),r(Ex),r(Bf),r(da),r(Tf),r($a),r(Yf),r(Xx),r(oo),r(To),r(Co),r(lo),r(Ba),r(Sc),r(dc),r(qu),r(Wu),r(Yo),r(Zo),r(sx),r(hc),r(Ec),r(g7),r(O7),r(_f),r(Ko),r(Ix),r(cf),r(pi),r(Nx),r(Hx),r(Ox),r(Tx),r(uf),r(Wx),r(Ja),r(j7),r(bf),r(Sf),r(Mf),r(Le),r(Ic),r(ma),r(rc),r(lf),r(Jf),r(qf),r(Do),r(ca),r(Df),r(dx),r(xx),r(Ao),r(px),r(Ta),r(Xo),r(to),r(Bx),r(Gf),r(Zf),r(yx),r(mo),r(gc),r(Ho),r(wo),r(xa),r(Ef),r(sf),r(ka),r(ja),r(Gx),r(fx),r(gf),r(Hf),r(Go),r(Ax),r(ho),r(ao),r(bx),r(qa),r(Wo),r(Uf),r(Ro),r(Ea),r(za),r($f),r(of),r(Au),r(rx),r(ta),r(kx),r(No),r(Kx),r(A7),r(jf),r(lc),r(ba),r(Sx),r(Lf),r(Qx),r(Po),r(pa),r(ec),r(Ca),r(jo),r(wf),r(ut),r(Yx),r(yf),r(nf),r(Qa),r(Tc),r(ox),r(Mx),r(I7),r(so),r(r7),r(ia),r(Oc),r(Aa),r(ur)],hpr=r(yV),kpr=r(UY),wpr=r(GX),Epr=r(ZY),Spr=r(g3),gpr=r(tX),Fpr=r(cv),Tpr=r(PU),Opr=r(_Y),Ipr=r(wX),Apr=r(mX),Npr=r(as),Cpr=r(Oo),Ppr=r(zU),Dpr=r(rX),Lpr=r(Zu),Rpr=r(WY),jpr=r(PH),Gpr=r(A6),Mpr=r(Bh),Bpr=r(R2),qpr=r(j2),Upr=r(rH),Hpr=r(YU),Xpr=r(xY),Ypr=r(vX),Vpr=r(yH),zpr=r(SX),Kpr=r(vU),Wpr=r(ZX),Jpr=r(bX),$pr=r(dH),Zpr=r(TH),Qpr=r(WH),r5r=r(iV),e5r=r(LU),n5r=r(aX),t5r=r("Set.remove_min_elt"),u5r=[0,[12,59,[17,[0,r(v),1,0],0]],r(o0)],i5r=[0,[18,[1,[0,[11,r(d),0],r(d)]],[12,us,0]],r("@[<2>{")],f5r=[0,[12,32,0],r(bi)],x5r=[0,[12,32,0],r(bi)],a5r=[0,[17,[0,r(Pe),0,0],[12,br,[17,0,0]]],r("@,}@]")],o5r=[0,r("src/hack_forked/utils/collections/flow_set.ml"),363,14],c5r=[0,[0,36,37],[0,48,58],[0,65,91],[0,95,96],[0,97,us],[0,Xg,yg],[0,Ai,Kg],[0,mS,wk],[0,dh,iw],[0,at,cT],[0,d6,jw],[0,wt,706],[0,iX,722],[0,736,741],[0,748,749],[0,750,751],[0,768,885],[0,886,888],[0,890,894],[0,895,896],[0,902,907],[0,908,tY],[0,910,930],[0,zX,1014],[0,1015,1154],[0,1155,1160],[0,1162,jU],[0,1329,1367],[0,1369,1370],[0,1376,1417],[0,1425,1470],[0,1471,1472],[0,1473,1475],[0,1476,1478],[0,1479,1480],[0,1488,1515],[0,1519,1523],[0,1552,1563],[0,1568,1642],[0,1646,1748],[0,1749,1757],[0,1759,1769],[0,1770,1789],[0,1791,1792],[0,1808,1867],[0,1869,1970],[0,1984,2038],[0,2042,2043],[0,2045,2046],[0,Vd,2094],[0,2112,2140],[0,2144,2155],[0,2208,2229],[0,2230,2238],[0,2259,2274],[0,2275,2404],[0,2406,2416],[0,2417,2436],[0,2437,2445],[0,2447,2449],[0,2451,2473],[0,2474,2481],[0,2482,2483],[0,2486,2490],[0,2492,2501],[0,2503,2505],[0,2507,2511],[0,2519,2520],[0,2524,2526],[0,2527,2532],[0,2534,2546],[0,2556,2557],[0,2558,2559],[0,2561,2564],[0,2565,2571],[0,2575,2577],[0,2579,2601],[0,2602,2609],[0,2610,2612],[0,2613,2615],[0,2616,2618],[0,2620,2621],[0,2622,2627],[0,2631,2633],[0,2635,2638],[0,2641,2642],[0,2649,2653],[0,2654,2655],[0,2662,2678],[0,2689,2692],[0,2693,2702],[0,2703,2706],[0,2707,2729],[0,2730,2737],[0,2738,2740],[0,2741,2746],[0,2748,2758],[0,2759,2762],[0,2763,2766],[0,2768,2769],[0,2784,2788],[0,2790,2800],[0,2809,2816],[0,2817,2820],[0,2821,2829],[0,2831,2833],[0,2835,2857],[0,2858,2865],[0,2866,2868],[0,2869,2874],[0,2876,2885],[0,2887,2889],[0,2891,2894],[0,2902,2904],[0,2908,2910],[0,2911,2916],[0,2918,2928],[0,2929,2930],[0,2946,2948],[0,2949,2955],[0,2958,2961],[0,2962,2966],[0,2969,2971],[0,2972,2973],[0,2974,2976],[0,2979,2981],[0,2984,2987],[0,2990,3002],[0,3006,3011],[0,3014,3017],[0,3018,3022],[0,3024,3025],[0,3031,3032],[0,3046,3056],[0,3072,3085],[0,3086,3089],[0,3090,3113],[0,3114,3130],[0,3133,3141],[0,3142,3145],[0,3146,3150],[0,3157,3159],[0,3160,3163],[0,3168,3172],[0,3174,3184],[0,3200,3204],[0,3205,3213],[0,3214,3217],[0,3218,3241],[0,3242,3252],[0,3253,3258],[0,3260,3269],[0,3270,3273],[0,3274,3278],[0,3285,3287],[0,3294,3295],[0,3296,3300],[0,3302,3312],[0,3313,3315],[0,3328,3332],[0,3333,3341],[0,3342,3345],[0,3346,3397],[0,3398,3401],[0,3402,3407],[0,3412,3416],[0,3423,3428],[0,3430,3440],[0,3450,3456],[0,3458,3460],[0,3461,3479],[0,3482,3506],[0,3507,3516],[0,3517,3518],[0,3520,3527],[0,3530,3531],[0,3535,3541],[0,3542,3543],[0,3544,3552],[0,3558,3568],[0,3570,3572],[0,3585,3643],[0,3648,3663],[0,3664,3674],[0,3713,3715],[0,3716,3717],[0,3718,3723],[0,3724,3748],[0,3749,3750],[0,3751,3774],[0,3776,3781],[0,3782,3783],[0,3784,3790],[0,3792,3802],[0,3804,3808],[0,3840,3841],[0,3864,3866],[0,3872,3882],[0,3893,3894],[0,3895,3896],[0,3897,3898],[0,3902,3912],[0,3913,3949],[0,3953,3973],[0,3974,3992],[0,3993,4029],[0,4038,4039],[0,_X,4170],[0,4176,4254],[0,4256,4294],[0,4295,4296],[0,4301,4302],[0,4304,4347],[0,4348,4681],[0,4682,4686],[0,4688,4695],[0,4696,4697],[0,4698,4702],[0,4704,4745],[0,4746,4750],[0,4752,4785],[0,4786,4790],[0,4792,4799],[0,4800,4801],[0,4802,4806],[0,4808,4823],[0,4824,4881],[0,4882,4886],[0,4888,4955],[0,4957,4960],[0,4969,4978],[0,4992,5008],[0,5024,5110],[0,5112,5118],[0,5121,5741],[0,5743,Ev],[0,5761,5787],[0,5792,5867],[0,5870,5881],[0,5888,5901],[0,5902,5909],[0,5920,5941],[0,5952,5972],[0,5984,5997],[0,5998,6001],[0,6002,6004],[0,6016,6100],[0,6103,6104],[0,6108,6110],[0,6112,6122],[0,6155,6158],[0,6160,6170],[0,6176,6265],[0,6272,6315],[0,6320,6390],[0,6400,6431],[0,6432,6444],[0,6448,6460],[0,6470,6510],[0,6512,6517],[0,6528,6572],[0,6576,6602],[0,6608,6619],[0,6656,6684],[0,6688,6751],[0,6752,6781],[0,6783,6794],[0,6800,6810],[0,6823,6824],[0,6832,6846],[0,6912,6988],[0,6992,7002],[0,7019,7028],[0,7040,7156],[0,7168,7224],[0,7232,7242],[0,7245,7294],[0,7296,7305],[0,7312,7355],[0,7357,7360],[0,7376,7379],[0,7380,7419],[0,7424,7674],[0,7675,7958],[0,7960,7966],[0,7968,8006],[0,8008,8014],[0,8016,8024],[0,8025,8026],[0,8027,8028],[0,8029,8030],[0,8031,8062],[0,8064,8117],[0,8118,8125],[0,8126,8127],[0,8130,8133],[0,8134,8141],[0,8144,8148],[0,8150,8156],[0,8160,8173],[0,8178,8181],[0,8182,8189],[0,FY,_U],[0,8255,8257],[0,8276,8277],[0,np,8306],[0,I3,8320],[0,8336,8349],[0,8400,8413],[0,8417,8418],[0,8421,8433],[0,a3,8451],[0,j3,8456],[0,8458,F4],[0,_6,8470],[0,cU,8478],[0,u8,Z3],[0,r3,vp],[0,D8,C8],[0,8490,8506],[0,8508,8512],[0,8517,8522],[0,v8,8527],[0,8544,8585],[0,11264,11311],[0,11312,11359],[0,11360,11493],[0,11499,11508],[0,11520,M4],[0,q8,11560],[0,C3,11566],[0,11568,11624],[0,m4,11632],[0,D6,11671],[0,11680,G4],[0,11688,K8],[0,11696,o8],[0,11704,W8],[0,11712,K6],[0,11720,G8],[0,11728,T6],[0,11736,11743],[0,11744,11776],[0,12293,12296],[0,12321,O3],[0,12337,12342],[0,12344,12349],[0,12353,12439],[0,12441,S3],[0,12449,U4],[0,12540,12544],[0,12549,S8],[0,12593,12687],[0,12704,12731],[0,12784,12800],[0,13312,19894],[0,19968,40944],[0,40960,42125],[0,42192,42238],[0,42240,42509],[0,42512,42540],[0,42560,42608],[0,42612,H3],[0,42623,42738],[0,42775,42784],[0,42786,42889],[0,42891,42944],[0,42946,42951],[0,T8,43048],[0,43072,43124],[0,43136,43206],[0,43216,43226],[0,43232,43256],[0,t3,y8],[0,43261,43310],[0,43312,43348],[0,43360,43389],[0,43392,43457],[0,w8,43482],[0,43488,l6],[0,43520,43575],[0,43584,43598],[0,43600,43610],[0,43616,43639],[0,bp,43715],[0,43739,43742],[0,43744,43760],[0,43762,43767],[0,43777,43783],[0,43785,43791],[0,43793,43799],[0,43808,w6],[0,43816,X3],[0,43824,ov],[0,43868,o3],[0,43888,44011],[0,44012,44014],[0,44016,44026],[0,44032,55204],[0,55216,55239],[0,55243,55292],[0,63744,64110],[0,64112,64218],[0,64256,64263],[0,64275,64280],[0,n3,fp],[0,64298,et],[0,64312,K3],[0,R6,j4],[0,64320,U3],[0,64323,L8],[0,64326,64434],[0,64467,64830],[0,64848,64912],[0,64914,64968],[0,65008,65020],[0,65024,65040],[0,65056,65072],[0,65075,65077],[0,65101,65104],[0,65136,u3],[0,65142,65277],[0,65296,65306],[0,65313,65339],[0,65343,r8],[0,65345,65371],[0,65382,65471],[0,65474,65480],[0,65482,65488],[0,65490,65496],[0,65498,65501],[0,ow,ep],[0,65549,Z8],[0,65576,K4],[0,65596,g6],[0,65599,65614],[0,65616,65630],[0,65664,65787],[0,65856,65909],[0,66045,66046],[0,66176,66205],[0,66208,66257],[0,66272,66273],[0,66304,66336],[0,66349,66379],[0,66384,66427],[0,66432,66462],[0,66464,66500],[0,66504,Q3],[0,66513,66518],[0,66560,66718],[0,66720,66730],[0,66736,66772],[0,66776,66812],[0,66816,66856],[0,66864,66916],[0,67072,67383],[0,67392,67414],[0,67424,67432],[0,67584,67590],[0,op,$4],[0,67594,m8],[0,67639,67641],[0,B6,67645],[0,67647,67670],[0,67680,67703],[0,67712,67743],[0,67808,Y8],[0,67828,67830],[0,67840,67862],[0,67872,67898],[0,67968,68024],[0,68030,68032],[0,E7,68100],[0,68101,68103],[0,68108,p4],[0,68117,Q8],[0,68121,68150],[0,68152,68155],[0,68159,68160],[0,68192,68221],[0,68224,68253],[0,68288,$6],[0,68297,68327],[0,68352,68406],[0,68416,68438],[0,68448,68467],[0,68480,68498],[0,68608,68681],[0,68736,68787],[0,68800,68851],[0,68864,68904],[0,68912,68922],[0,69376,69405],[0,$8,69416],[0,69424,69457],[0,69600,69623],[0,69632,69703],[0,69734,q3],[0,69759,69819],[0,69840,69865],[0,69872,69882],[0,69888,69941],[0,69942,69952],[0,_4,T3],[0,69968,70004],[0,Y6,70007],[0,70016,70085],[0,70089,70093],[0,70096,h8],[0,f3,70109],[0,70144,N8],[0,70163,70200],[0,70206,70207],[0,70272,d3],[0,A8,xp],[0,70282,I8],[0,70287,s8],[0,70303,70313],[0,70320,70379],[0,70384,70394],[0,70400,i6],[0,70405,70413],[0,70415,70417],[0,70419,x3],[0,70442,c8],[0,70450,P4],[0,70453,70458],[0,70459,70469],[0,70471,70473],[0,70475,70478],[0,G6,70481],[0,70487,70488],[0,70493,70500],[0,70502,70509],[0,70512,70517],[0,70656,70731],[0,70736,70746],[0,J6,70752],[0,70784,r6],[0,Q6,70856],[0,70864,70874],[0,71040,71094],[0,71096,71105],[0,71128,71134],[0,71168,71233],[0,i8,71237],[0,71248,71258],[0,71296,71353],[0,71360,71370],[0,71424,71451],[0,71453,71468],[0,71472,71482],[0,71680,71739],[0,71840,71914],[0,71935,71936],[0,72096,72104],[0,72106,72152],[0,72154,ip],[0,m3,72165],[0,B8,72255],[0,72263,72264],[0,i3,72346],[0,D4,72350],[0,72384,72441],[0,72704,J3],[0,72714,72759],[0,72760,72769],[0,72784,72794],[0,72818,72848],[0,72850,72872],[0,72873,72887],[0,72960,L3],[0,72968,h4],[0,72971,73015],[0,73018,73019],[0,73020,73022],[0,73023,73032],[0,73040,73050],[0,73056,j6],[0,73063,h3],[0,73066,73103],[0,73104,73106],[0,73107,73113],[0,73120,73130],[0,73440,73463],[0,73728,74650],[0,74752,74863],[0,74880,75076],[0,77824,78895],[0,82944,83527],[0,92160,92729],[0,92736,92767],[0,92768,92778],[0,92880,92910],[0,92912,92917],[0,92928,92983],[0,92992,92996],[0,93008,93018],[0,93027,93048],[0,93053,93072],[0,93760,93824],[0,93952,94027],[0,Q4,94088],[0,94095,94112],[0,94176,p6],[0,h6,94180],[0,94208,100344],[0,100352,101107],[0,110592,110879],[0,110928,110931],[0,110948,110952],[0,110960,111356],[0,113664,113771],[0,113776,113789],[0,113792,113801],[0,113808,113818],[0,113821,113823],[0,119141,119146],[0,119149,119155],[0,119163,119171],[0,119173,119180],[0,119210,119214],[0,119362,119365],[0,119808,O6],[0,119894,B3],[0,119966,119968],[0,k3,119971],[0,119973,119975],[0,119977,rp],[0,119982,b8],[0,b4,M6],[0,119997,A3],[0,120005,R4],[0,120071,120075],[0,120077,C6],[0,120086,lp],[0,120094,P3],[0,120123,e6],[0,120128,q4],[0,M3,120135],[0,120138,L6],[0,120146,120486],[0,120488,L4],[0,120514,z3],[0,120540,s6],[0,120572,Y4],[0,120598,s3],[0,120630,z4],[0,120656,E6],[0,120688,l4],[0,120714,b6],[0,120746,w3],[0,120772,120780],[0,120782,120832],[0,121344,121399],[0,121403,121453],[0,121461,121462],[0,121476,121477],[0,121499,121504],[0,121505,121520],[0,122880,122887],[0,122888,122905],[0,122907,122914],[0,122915,122917],[0,122918,122923],[0,123136,123181],[0,123184,123198],[0,123200,123210],[0,cp,123215],[0,123584,123642],[0,124928,125125],[0,125136,125143],[0,125184,125260],[0,125264,125274],[0,126464,P6],[0,126469,$3],[0,126497,c3],[0,F8,126501],[0,n8,_8],[0,126505,v6],[0,126516,x8],[0,y6,a8],[0,E3,126524],[0,W3,126531],[0,R8,H6],[0,g8,t8],[0,v3,B4],[0,126541,T4],[0,126545,F6],[0,k8,126549],[0,f8,S4],[0,On,q6],[0,g4,M8],[0,U6,v4],[0,u6,I4],[0,126561,ap],[0,z6,126565],[0,126567,b3],[0,126572,a6],[0,126580,J8],[0,126585,R3],[0,Z4,E8],[0,126592,z8],[0,126603,126620],[0,126625,G3],[0,126629,e3],[0,126635,126652],[0,131072,173783],[0,173824,177973],[0,177984,178206],[0,178208,183970],[0,183984,191457],[0,194560,195102],[0,917760,918e3]],s5r=r(O2),v5r=r(hv),l5r=r(Tv),b5r=r(W4),p5r=r("Cannot export an enum with `export type`, try `export enum E {}` or `module.exports = E;` instead."),m5r=r("Enum members are separated with `,`. Replace `;` with `,`."),_5r=r("Unexpected reserved word"),y5r=r("Unexpected reserved type"),d5r=r("Unexpected `super` outside of a class method"),h5r=r("`super()` is only valid in a class constructor"),k5r=r("Unexpected end of input"),w5r=r("Unexpected variance sigil"),E5r=r("Unexpected static modifier"),S5r=r("Unexpected proto modifier"),g5r=r("Type aliases are not allowed in untyped mode"),F5r=r("Opaque type aliases are not allowed in untyped mode"),T5r=r("Type annotations are not allowed in untyped mode"),O5r=r("Type declarations are not allowed in untyped mode"),I5r=r("Type imports are not allowed in untyped mode"),A5r=r("Type exports are not allowed in untyped mode"),N5r=r("Interfaces are not allowed in untyped mode"),C5r=r("Spreading a type is only allowed inside an object type"),P5r=r("Explicit inexact syntax must come at the end of an object type"),D5r=r("Explicit inexact syntax cannot appear inside an explicit exact object type"),L5r=r("Explicit inexact syntax can only appear inside an object type"),R5r=r("Illegal newline after throw"),j5r=r("A bigint literal must be an integer"),G5r=r("A bigint literal cannot use exponential notation"),M5r=r("Invalid regular expression"),B5r=r("Invalid regular expression: missing /"),q5r=r("Invalid left-hand side in assignment"),U5r=r("Invalid left-hand side in exponentiation expression"),H5r=r("Invalid left-hand side in for-in"),X5r=r("Invalid left-hand side in for-of"),Y5r=r("Invalid optional indexed access. Indexed access uses bracket notation. Use the format `T?.[K]`."),V5r=r("found an expression instead"),z5r=r("Expected an object pattern, array pattern, or an identifier but "),K5r=r("More than one default clause in switch statement"),W5r=r("Missing catch or finally after try"),J5r=r("Illegal continue statement"),$5r=r("Illegal break statement"),Z5r=r("Illegal return statement"),Q5r=r("Illegal Unicode escape"),rmr=r("Strict mode code may not include a with statement"),emr=r("Catch variable may not be eval or arguments in strict mode"),nmr=r("Variable name may not be eval or arguments in strict mode"),tmr=r("Parameter name eval or arguments is not allowed in strict mode"),umr=r("Strict mode function may not have duplicate parameter names"),imr=r('Illegal "use strict" directive in function with non-simple parameter list'),fmr=r("Function name may not be eval or arguments in strict mode"),xmr=r("Octal literals are not allowed in strict mode."),amr=r("Number literals with leading zeros are not allowed in strict mode."),omr=r("Delete of an unqualified identifier in strict mode."),cmr=r("Duplicate data property in object literal not allowed in strict mode"),smr=r("Object literal may not have data and accessor property with the same name"),vmr=r("Object literal may not have multiple get/set accessors with the same name"),lmr=r("`typeof` can only be used to get the type of variables."),bmr=r("Assignment to eval or arguments is not allowed in strict mode"),pmr=r("Postfix increment/decrement may not have eval or arguments operand in strict mode"),mmr=r("Prefix increment/decrement may not have eval or arguments operand in strict mode"),_mr=r("Use of future reserved word in strict mode"),ymr=r("JSX attributes must only be assigned a non-empty expression"),dmr=r("JSX value should be either an expression or a quoted JSX text"),hmr=r("Const must be initialized"),kmr=r("Destructuring assignment must be initialized"),wmr=r("Illegal newline before arrow"),Emr=r(vF),Smr=r("Async functions can only be declared at top level or "),gmr=r(vF),Fmr=r("Generators can only be declared at top level or "),Tmr=r("elements must be wrapped in an enclosing parent tag"),Omr=r("Unexpected token <. Remember, adjacent JSX "),Imr=r("Rest parameter must be final parameter of an argument list"),Amr=r("Rest element must be final element of an array pattern"),Nmr=r("Rest property must be final property of an object pattern"),Cmr=r("async is an implementation detail and isn't necessary for your declare function statement. It is sufficient for your declare function to just have a Promise return type."),Pmr=r("`declare` modifier can only appear on class fields."),Dmr=r("Unexpected token `=`. Initializers are not allowed in a `declare`."),Lmr=r("Unexpected token `=`. Initializers are not allowed in a `declare opaque type`."),Rmr=r("`declare export let` is not supported. Use `declare export var` instead."),jmr=r("`declare export const` is not supported. Use `declare export var` instead."),Gmr=r("`declare export type` is not supported. Use `export type` instead."),Mmr=r("`declare export interface` is not supported. Use `export interface` instead."),Bmr=r("`export * as` is an early-stage proposal and is not enabled by default. To enable support in the parser, use the `esproposal_export_star_as` option"),qmr=r("Found a decorator in an unsupported position."),Umr=r("Type parameter declaration needs a default, since a preceding type parameter declaration has a default."),Hmr=r("Duplicate `declare module.exports` statement!"),Xmr=r("Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module xor they are a CommonJS module."),Ymr=r("Getter should have zero parameters"),Vmr=r("Setter should have exactly one parameter"),zmr=r("`import type` or `import typeof`!"),Kmr=r("Imports within a `declare module` body must always be "),Wmr=r("The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements"),Jmr=r("Missing comma between import specifiers"),$mr=r("Missing comma between export specifiers"),Zmr=r("Malformed unicode"),Qmr=r("Classes may only have one constructor"),r9r=r("Private fields may not be deleted."),e9r=r("Private fields can only be referenced from within a class."),n9r=r("You may not access a private field through the `super` keyword."),t9r=r("Yield expression not allowed in formal parameter"),u9r=r("`await` is an invalid identifier in async functions"),i9r=r("`yield` is an invalid identifier in generators"),f9r=r("either a `let` binding pattern, or a member expression."),x9r=r("`let [` is ambiguous in this position because it is "),a9r=r("Literals cannot be used as shorthand properties."),o9r=r("Computed properties must have a value."),c9r=r("Object pattern can't contain methods"),s9r=r("A trailing comma is not permitted after the rest element"),v9r=r("An optional chain may not be used in a `new` expression."),l9r=r("Template literals may not be used in an optional chain."),b9r=r("Unexpected whitespace between `#` and identifier"),p9r=r("A type annotation is required for the `this` parameter."),m9r=r("The `this` parameter must be the first function parameter."),_9r=r("The `this` parameter cannot be optional."),y9r=r("A getter cannot have a `this` parameter."),d9r=r("A setter cannot have a `this` parameter."),h9r=r("Arrow functions cannot have a `this` parameter; arrow functions automatically bind `this` when declared."),k9r=r("Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions."),w9r=[0,[11,r("Boolean enum members need to be initialized. Use either `"),[2,0,[11,r(" = true,` or `"),[2,0,[11,r(" = false,` in enum `"),[2,0,[11,r(Fs),0]]]]]]],r("Boolean enum members need to be initialized. Use either `%s = true,` or `%s = false,` in enum `%s`.")],E9r=[0,[11,r("Enum member names need to be unique, but the name `"),[2,0,[11,r("` has already been used before in enum `"),[2,0,[11,r(Fs),0]]]]],r("Enum member names need to be unique, but the name `%s` has already been used before in enum `%s`.")],S9r=[0,[11,r(DU),[2,0,[11,r("` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers."),0]]],r("Enum `%s` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.")],g9r=[0,[11,r("Use one of `boolean`, `number`, `string`, or `symbol` in enum `"),[2,0,[11,r(Fs),0]]],r("Use one of `boolean`, `number`, `string`, or `symbol` in enum `%s`.")],F9r=[0,[11,r("Enum type `"),[2,0,[11,r("` is not valid. "),[2,0,0]]]],r("Enum type `%s` is not valid. %s")],T9r=[0,[11,r("Supplied enum type is not valid. "),[2,0,0]],r("Supplied enum type is not valid. %s")],O9r=[0,[11,r("Enum member names and initializers are separated with `=`. Replace `"),[2,0,[11,r(":` with `"),[2,0,[11,r(" =`."),0]]]]],r("Enum member names and initializers are separated with `=`. Replace `%s:` with `%s =`.")],I9r=[0,[11,r("Symbol enum members cannot be initialized. Use `"),[2,0,[11,r(",` in enum `"),[2,0,[11,r(Fs),0]]]]],r("Symbol enum members cannot be initialized. Use `%s,` in enum `%s`.")],A9r=[0,[11,r(DU),[2,0,[11,r("` has type `"),[2,0,[11,r("`, so the initializer of `"),[2,0,[11,r("` needs to be a "),[2,0,[11,r(" literal."),0]]]]]]]]],r("Enum `%s` has type `%s`, so the initializer of `%s` needs to be a %s literal.")],N9r=[0,[11,r("The enum member initializer for `"),[2,0,[11,r("` needs to be a literal (either a boolean, number, or string) in enum `"),[2,0,[11,r(Fs),0]]]]],r("The enum member initializer for `%s` needs to be a literal (either a boolean, number, or string) in enum `%s`.")],C9r=[0,[11,r("Enum member names cannot start with lowercase 'a' through 'z'. Instead of using `"),[2,0,[11,r("`, consider using `"),[2,0,[11,r("`, in enum `"),[2,0,[11,r(Fs),0]]]]]]],r("Enum member names cannot start with lowercase 'a' through 'z'. Instead of using `%s`, consider using `%s`, in enum `%s`.")],P9r=r("The `...` must come at the end of the enum body. Remove the trailing comma."),D9r=r("The `...` must come after all enum members. Move it to the end of the enum body."),L9r=[0,[11,r("Number enum members need to be initialized, e.g. `"),[2,0,[11,r(" = 1,` in enum `"),[2,0,[11,r(Fs),0]]]]],r("Number enum members need to be initialized, e.g. `%s = 1,` in enum `%s`.")],R9r=[0,[11,r("String enum members need to consistently either all use initializers, or use no initializers, in enum "),[2,0,[12,46,0]]],r("String enum members need to consistently either all use initializers, or use no initializers, in enum %s.")],j9r=[0,[11,r(zH),[2,0,0]],r("Unexpected %s")],G9r=[0,[11,r(zH),[2,0,[11,r(", expected "),[2,0,0]]]],r("Unexpected %s, expected %s")],M9r=[0,[11,r(dV),[2,0,[11,r("`. Did you mean `"),[2,0,[11,r("`?"),0]]]]],r("Unexpected token `%s`. Did you mean `%s`?")],B9r=r(D3),q9r=r("Invalid flags supplied to RegExp constructor '"),U9r=r("Remove the period."),H9r=r("Indexed access uses bracket notation."),X9r=[0,[11,r("Invalid indexed access. "),[2,0,[11,r(" Use the format `T[K]`."),0]]],r("Invalid indexed access. %s Use the format `T[K]`.")],Y9r=r(D3),V9r=r("Undefined label '"),z9r=r("' has already been declared"),K9r=r(" '"),W9r=r("Expected corresponding JSX closing tag for "),J9r=r(vF),$9r=r("In strict mode code, functions can only be declared at top level or "),Z9r=r("inside a block, or as the body of an if statement."),Q9r=r("In non-strict mode code, functions can only be declared at top level, "),r_r=[0,[11,r("Duplicate export for `"),[2,0,[12,96,0]]],r("Duplicate export for `%s`")],e_r=r("` is declared more than once."),n_r=r("Private fields may only be declared once. `#"),t_r=r("static "),u_r=r(C),i_r=r(JY),f_r=r("methods"),x_r=r("fields"),a_r=r(Fs),o_r=r(" named `"),c_r=r("Classes may not have "),s_r=r("` has not been declared."),v_r=r("Private fields must be declared before they can be referenced. `#"),l_r=[0,[11,r(dV),[2,0,[11,r("`. Parentheses are required to combine `??` with `&&` or `||` expressions."),0]]],r("Unexpected token `%s`. Parentheses are required to combine `??` with `&&` or `||` expressions.")],b_r=r("Parse_error.Error"),p_r=[0,r("src/third-party/sedlex/flow_sedlexing.ml"),v1,4],m_r=r("Flow_sedlexing.MalFormed"),__r=[0,1,0],y_r=[0,0,[0,1,0],[0,1,0]],d_r=r(JU),h_r=r("end of input"),k_r=r(rl),w_r=r("template literal part"),E_r=r(rl),S_r=r(XH),g_r=r(JU),F_r=r(rl),T_r=r(hv),O_r=r(rl),I_r=r(a1),A_r=r(rl),N_r=r(Tv),C_r=r("an"),P_r=r(_i),D_r=r(bi),L_r=[0,[11,r("token `"),[2,0,[12,96,0]]],r("token `%s`")],R_r=r(SH),j_r=r(p3),G_r=r("{|"),M_r=r("|}"),B_r=r(KX),q_r=r(Z0),U_r=r("["),H_r=r("]"),X_r=r($Y),Y_r=r(","),V_r=r(Ra),z_r=r("=>"),K_r=r("..."),W_r=r(AX),J_r=r(JY),$_r=r(M2),Z_r=r(N3),Q_r=r(R2),ryr=r(j2),eyr=r(Wu),nyr=r(P7),tyr=r(f1),uyr=r(g7),iyr=r(k4),fyr=r(U2),xyr=r(W6),ayr=r(P8),oyr=r(D2),cyr=r(G2),syr=r(xs),vyr=r(Ci),lyr=r(Gi),byr=r(I7),pyr=r(k6),myr=r(o6),_yr=r(A7),yyr=r(mi),dyr=r(y4),hyr=r(U8),kyr=r(tp),wyr=r(q2),Eyr=r(C7),Syr=r(eu),gyr=r(H4),Fyr=r(i1),Tyr=r(J2),Oyr=r(es),Iyr=r(ns),Ayr=r(p8),Nyr=r(y3),Cyr=r(qu),Pyr=r(yv),Dyr=r(gs),Lyr=r(r7),Ryr=r(d4),jyr=r(w4),Gyr=r(c6),Myr=r(S6),Byr=r(wu),qyr=r(O7),Uyr=r(T2),Hyr=r($c),Xyr=r(ud),Yyr=r(LS),Vyr=r(Os),zyr=r(wx),Kyr=r("%checks"),Wyr=r(bX),Jyr=r(ZX),$yr=r(vU),Zyr=r(TH),Qyr=r(dH),rdr=r(WH),edr=r(SX),ndr=r(yH),tdr=r(xY),udr=r(vX),idr=r(YU),fdr=r(rH),xdr=r(iV),adr=r(LU),odr=r(aX),cdr=r(zO),sdr=r("?."),vdr=r(Fn),ldr=r("?"),bdr=r(o1),pdr=r(ZH),mdr=r(XX),_dr=r(PH),ydr=r(A6),ddr=r(Bh),hdr=r(yV),kdr=r(UY),wdr=r(GX),Edr=r(ZY),Sdr=r(tX),gdr=r(PU),Fdr=r(g3),Tdr=r(cv),Odr=r(_Y),Idr=r(wX),Adr=r(mX),Ndr=r(as),Cdr=r(Oo),Pdr=r(Zu),Ddr=r(zU),Ldr=r(rX),Rdr=r(WY),jdr=r(rf),Gdr=r(tV),Mdr=r(mH),Bdr=r(lV),qdr=r(C),Udr=r(t6),Hdr=r(X8),Xdr=r(s7),Ydr=r(hv),Vdr=r(a1),zdr=r(Tv),Kdr=r(ns),Wdr=r(W4),Jdr=r(Zu),$dr=r(Zu),Zdr=r(O2),Qdr=r(I6),rhr=r("T_LCURLY"),ehr=r("T_RCURLY"),nhr=r("T_LCURLYBAR"),thr=r("T_RCURLYBAR"),uhr=r("T_LPAREN"),ihr=r("T_RPAREN"),fhr=r("T_LBRACKET"),xhr=r("T_RBRACKET"),ahr=r("T_SEMICOLON"),ohr=r("T_COMMA"),chr=r("T_PERIOD"),shr=r("T_ARROW"),vhr=r("T_ELLIPSIS"),lhr=r("T_AT"),bhr=r("T_POUND"),phr=r("T_FUNCTION"),mhr=r("T_IF"),_hr=r("T_IN"),yhr=r("T_INSTANCEOF"),dhr=r("T_RETURN"),hhr=r("T_SWITCH"),khr=r("T_THIS"),whr=r("T_THROW"),Ehr=r("T_TRY"),Shr=r("T_VAR"),ghr=r("T_WHILE"),Fhr=r("T_WITH"),Thr=r("T_CONST"),Ohr=r("T_LET"),Ihr=r("T_NULL"),Ahr=r("T_FALSE"),Nhr=r("T_TRUE"),Chr=r("T_BREAK"),Phr=r("T_CASE"),Dhr=r("T_CATCH"),Lhr=r("T_CONTINUE"),Rhr=r("T_DEFAULT"),jhr=r("T_DO"),Ghr=r("T_FINALLY"),Mhr=r("T_FOR"),Bhr=r("T_CLASS"),qhr=r("T_EXTENDS"),Uhr=r("T_STATIC"),Hhr=r("T_ELSE"),Xhr=r("T_NEW"),Yhr=r("T_DELETE"),Vhr=r("T_TYPEOF"),zhr=r("T_VOID"),Khr=r("T_ENUM"),Whr=r("T_EXPORT"),Jhr=r("T_IMPORT"),$hr=r("T_SUPER"),Zhr=r("T_IMPLEMENTS"),Qhr=r("T_INTERFACE"),rkr=r("T_PACKAGE"),ekr=r("T_PRIVATE"),nkr=r("T_PROTECTED"),tkr=r("T_PUBLIC"),ukr=r("T_YIELD"),ikr=r("T_DEBUGGER"),fkr=r("T_DECLARE"),xkr=r("T_TYPE"),akr=r("T_OPAQUE"),okr=r("T_OF"),ckr=r("T_ASYNC"),skr=r("T_AWAIT"),vkr=r("T_CHECKS"),lkr=r("T_RSHIFT3_ASSIGN"),bkr=r("T_RSHIFT_ASSIGN"),pkr=r("T_LSHIFT_ASSIGN"),mkr=r("T_BIT_XOR_ASSIGN"),_kr=r("T_BIT_OR_ASSIGN"),ykr=r("T_BIT_AND_ASSIGN"),dkr=r("T_MOD_ASSIGN"),hkr=r("T_DIV_ASSIGN"),kkr=r("T_MULT_ASSIGN"),wkr=r("T_EXP_ASSIGN"),Ekr=r("T_MINUS_ASSIGN"),Skr=r("T_PLUS_ASSIGN"),gkr=r("T_NULLISH_ASSIGN"),Fkr=r("T_AND_ASSIGN"),Tkr=r("T_OR_ASSIGN"),Okr=r("T_ASSIGN"),Ikr=r("T_PLING_PERIOD"),Akr=r("T_PLING_PLING"),Nkr=r("T_PLING"),Ckr=r("T_COLON"),Pkr=r("T_OR"),Dkr=r("T_AND"),Lkr=r("T_BIT_OR"),Rkr=r("T_BIT_XOR"),jkr=r("T_BIT_AND"),Gkr=r("T_EQUAL"),Mkr=r("T_NOT_EQUAL"),Bkr=r("T_STRICT_EQUAL"),qkr=r("T_STRICT_NOT_EQUAL"),Ukr=r("T_LESS_THAN_EQUAL"),Hkr=r("T_GREATER_THAN_EQUAL"),Xkr=r("T_LESS_THAN"),Ykr=r("T_GREATER_THAN"),Vkr=r("T_LSHIFT"),zkr=r("T_RSHIFT"),Kkr=r("T_RSHIFT3"),Wkr=r("T_PLUS"),Jkr=r("T_MINUS"),$kr=r("T_DIV"),Zkr=r("T_MULT"),Qkr=r("T_EXP"),rwr=r("T_MOD"),ewr=r("T_NOT"),nwr=r("T_BIT_NOT"),twr=r("T_INCR"),uwr=r("T_DECR"),iwr=r("T_EOF"),fwr=r("T_ANY_TYPE"),xwr=r("T_MIXED_TYPE"),awr=r("T_EMPTY_TYPE"),owr=r("T_NUMBER_TYPE"),cwr=r("T_BIGINT_TYPE"),swr=r("T_STRING_TYPE"),vwr=r("T_VOID_TYPE"),lwr=r("T_SYMBOL_TYPE"),bwr=r("T_NUMBER"),pwr=r("T_BIGINT"),mwr=r("T_STRING"),_wr=r("T_TEMPLATE_PART"),ywr=r("T_IDENTIFIER"),dwr=r("T_REGEXP"),hwr=r("T_ERROR"),kwr=r("T_JSX_IDENTIFIER"),wwr=r("T_JSX_TEXT"),Ewr=r("T_BOOLEAN_TYPE"),Swr=r("T_NUMBER_SINGLETON_TYPE"),gwr=r("T_BIGINT_SINGLETON_TYPE"),Fwr=[0,r(FX),VT,9],Twr=[0,r(FX),N6,9],Owr=r(HH),Iwr=r("*/"),Awr=r(HH),Nwr=r("unreachable line_comment"),Cwr=r("unreachable string_quote"),Pwr=r("\\"),Dwr=r("unreachable template_part"),Lwr=r("${"),Rwr=r(zY),jwr=r(zY),Gwr=r(UI),Mwr=r("unreachable regexp_class"),Bwr=r(oY),qwr=r("unreachable regexp_body"),Uwr=r(C),Hwr=r(C),Xwr=r(C),Ywr=r(C),Vwr=r("unreachable jsxtext"),zwr=r(D3),Kwr=r(V2),Wwr=r(g3),Jwr=r(cv),$wr=r(SH),Zwr=r(p3),Qwr=r("{'}'}"),rEr=r(p3),eEr=r("{'>'}"),nEr=r(cv),tEr=r(b1),uEr=r("iexcl"),iEr=r("aelig"),fEr=r("Nu"),xEr=r("Eacute"),aEr=r("Atilde"),oEr=r("'int'"),cEr=r("AElig"),sEr=r("Aacute"),vEr=r("Acirc"),lEr=r("Agrave"),bEr=r("Alpha"),pEr=r("Aring"),mEr=[0,SY],_Er=[0,913],yEr=[0,at],dEr=[0,iI],hEr=[0,VT],kEr=[0,_H],wEr=[0,8747],EEr=r("Auml"),SEr=r("Beta"),gEr=r("Ccedil"),FEr=r("Chi"),TEr=r("Dagger"),OEr=r("Delta"),IEr=r("ETH"),AEr=[0,wH],NEr=[0,916],CEr=[0,8225],PEr=[0,935],DEr=[0,uX],LEr=[0,914],REr=[0,WX],jEr=[0,vY],GEr=r("Icirc"),MEr=r("Ecirc"),BEr=r("Egrave"),qEr=r("Epsilon"),UEr=r("Eta"),HEr=r("Euml"),XEr=r("Gamma"),YEr=r("Iacute"),VEr=[0,$H],zEr=[0,915],KEr=[0,fV],WEr=[0,919],JEr=[0,917],$Er=[0,RU],ZEr=[0,xH],QEr=r("Igrave"),rSr=r("Iota"),eSr=r("Iuml"),nSr=r("Kappa"),tSr=r("Lambda"),uSr=r("Mu"),iSr=r("Ntilde"),fSr=[0,Zg],xSr=[0,924],aSr=[0,923],oSr=[0,922],cSr=[0,LX],sSr=[0,921],vSr=[0,rY],lSr=[0,CH],bSr=[0,mY],pSr=r("Sigma"),mSr=r("Otilde"),_Sr=r("OElig"),ySr=r("Oacute"),dSr=r("Ocirc"),hSr=r("Ograve"),kSr=r("Omega"),wSr=r("Omicron"),ESr=r("Oslash"),SSr=[0,d6],gSr=[0,927],FSr=[0,937],TSr=[0,N6],OSr=[0,EY],ISr=[0,EU],ASr=[0,338],NSr=r("Ouml"),CSr=r("Phi"),PSr=r("Pi"),DSr=r("Prime"),LSr=r("Psi"),RSr=r("Rho"),jSr=r("Scaron"),GSr=[0,352],MSr=[0,929],BSr=[0,936],qSr=[0,8243],USr=[0,928],HSr=[0,934],XSr=[0,dT],YSr=[0,qX],VSr=r("Uuml"),zSr=r("THORN"),KSr=r("Tau"),WSr=r("Theta"),JSr=r("Uacute"),$Sr=r("Ucirc"),ZSr=r("Ugrave"),QSr=r("Upsilon"),rgr=[0,933],egr=[0,sp],ngr=[0,NU],tgr=[0,Lw],ugr=[0,920],igr=[0,932],fgr=[0,NX],xgr=r("Xi"),agr=r("Yacute"),ogr=r("Yuml"),cgr=r("Zeta"),sgr=r("aacute"),vgr=r("acirc"),lgr=r("acute"),bgr=[0,mU],pgr=[0,tk],mgr=[0,HO],_gr=[0,918],ygr=[0,376],dgr=[0,HX],hgr=[0,926],kgr=[0,aA],wgr=[0,zX],Egr=[0,925],Sgr=r("delta"),ggr=r("cap"),Fgr=r("aring"),Tgr=r("agrave"),Ogr=r("alefsym"),Igr=r("alpha"),Agr=r("amp"),Ngr=r("and"),Cgr=r("ang"),Pgr=r("apos"),Dgr=[0,39],Lgr=[0,8736],Rgr=[0,8743],jgr=[0,38],Ggr=[0,945],Mgr=[0,8501],Bgr=[0,dv],qgr=r("asymp"),Ugr=r("atilde"),Hgr=r("auml"),Xgr=r("bdquo"),Ygr=r("beta"),Vgr=r("brvbar"),zgr=r("bull"),Kgr=[0,8226],Wgr=[0,MY],Jgr=[0,946],$gr=[0,8222],Zgr=[0,sV],Qgr=[0,eX],rFr=[0,8776],eFr=[0,dU],nFr=r("copy"),tFr=r("ccedil"),uFr=r("cedil"),iFr=r("cent"),fFr=r("chi"),xFr=r("circ"),aFr=r("clubs"),oFr=r("cong"),cFr=[0,8773],sFr=[0,9827],vFr=[0,iX],lFr=[0,967],bFr=[0,Sd],pFr=[0,wk],mFr=[0,VX],_Fr=r("crarr"),yFr=r("cup"),dFr=r("curren"),hFr=r("dArr"),kFr=r("dagger"),wFr=r("darr"),EFr=r("deg"),SFr=[0,kV],gFr=[0,8595],FFr=[0,8224],TFr=[0,8659],OFr=[0,PF],IFr=[0,8746],AFr=[0,8629],NFr=[0,RX],CFr=[0,8745],PFr=r("fnof"),DFr=r("ensp"),LFr=r("diams"),RFr=r("divide"),jFr=r("eacute"),GFr=r("ecirc"),MFr=r("egrave"),BFr=r(s7),qFr=r("emsp"),UFr=[0,8195],HFr=[0,8709],XFr=[0,eT],YFr=[0,aH],VFr=[0,wT],zFr=[0,jw],KFr=[0,9830],WFr=r("epsilon"),JFr=r("equiv"),$Fr=r("eta"),ZFr=r("eth"),QFr=r("euml"),rTr=r("euro"),eTr=r("exist"),nTr=[0,8707],tTr=[0,8364],uTr=[0,eH],iTr=[0,v1],fTr=[0,951],xTr=[0,8801],aTr=[0,949],oTr=[0,8194],cTr=r("gt"),sTr=r("forall"),vTr=r("frac12"),lTr=r("frac14"),bTr=r("frac34"),pTr=r("frasl"),mTr=r("gamma"),_Tr=r("ge"),yTr=[0,8805],dTr=[0,947],hTr=[0,8260],kTr=[0,PY],wTr=[0,cY],ETr=[0,sX],STr=[0,8704],gTr=r("hArr"),FTr=r("harr"),TTr=r("hearts"),OTr=r("hellip"),ITr=r("iacute"),ATr=r("icirc"),NTr=[0,pH],CTr=[0,YY],PTr=[0,8230],DTr=[0,9829],LTr=[0,8596],RTr=[0,8660],jTr=[0,62],GTr=[0,402],MTr=[0,948],BTr=[0,Bd],qTr=r("prime"),UTr=r("ndash"),HTr=r("le"),XTr=r("kappa"),YTr=r("igrave"),VTr=r("image"),zTr=r("infin"),KTr=r("iota"),WTr=r("iquest"),JTr=r("isin"),$Tr=r("iuml"),ZTr=[0,f6],QTr=[0,8712],rOr=[0,yX],eOr=[0,953],nOr=[0,8734],tOr=[0,8465],uOr=[0,mO],iOr=r("lArr"),fOr=r("lambda"),xOr=r("lang"),aOr=r("laquo"),oOr=r("larr"),cOr=r("lceil"),sOr=r("ldquo"),vOr=[0,8220],lOr=[0,8968],bOr=[0,8592],pOr=[0,yg],mOr=[0,10216],_Or=[0,955],yOr=[0,8656],dOr=[0,954],hOr=r("macr"),kOr=r("lfloor"),wOr=r("lowast"),EOr=r("loz"),SOr=r("lrm"),gOr=r("lsaquo"),FOr=r("lsquo"),TOr=r("lt"),OOr=[0,60],IOr=[0,8216],AOr=[0,8249],NOr=[0,_U],COr=[0,9674],POr=[0,8727],DOr=[0,8970],LOr=r("mdash"),ROr=r("micro"),jOr=r("middot"),GOr=r(pY),MOr=r("mu"),BOr=r("nabla"),qOr=r("nbsp"),UOr=[0,sY],HOr=[0,8711],XOr=[0,956],YOr=[0,8722],VOr=[0,mS],zOr=[0,Ai],KOr=[0,8212],WOr=[0,dX],JOr=[0,8804],$Or=r("or"),ZOr=r("oacute"),QOr=r("ne"),rIr=r("ni"),eIr=r("not"),nIr=r("notin"),tIr=r("nsub"),uIr=r("ntilde"),iIr=r("nu"),fIr=[0,957],xIr=[0,Wy],aIr=[0,8836],oIr=[0,8713],cIr=[0,BU],sIr=[0,8715],vIr=[0,8800],lIr=r("ocirc"),bIr=r("oelig"),pIr=r("ograve"),mIr=r("oline"),_Ir=r("omega"),yIr=r("omicron"),dIr=r("oplus"),hIr=[0,8853],kIr=[0,959],wIr=[0,969],EIr=[0,8254],SIr=[0,TT],gIr=[0,339],FIr=[0,l8],TIr=[0,uH],OIr=r("part"),IIr=r("ordf"),AIr=r("ordm"),NIr=r("oslash"),CIr=r("otilde"),PIr=r("otimes"),DIr=r("ouml"),LIr=r("para"),RIr=[0,Kg],jIr=[0,$2],GIr=[0,8855],MIr=[0,rV],BIr=[0,wt],qIr=[0,dh],UIr=[0,Xg],HIr=r("permil"),XIr=r("perp"),YIr=r("phi"),VIr=r("pi"),zIr=r("piv"),KIr=r("plusmn"),WIr=r("pound"),JIr=[0,Mn],$Ir=[0,oV],ZIr=[0,982],QIr=[0,960],rAr=[0,966],eAr=[0,8869],nAr=[0,8240],tAr=[0,8706],uAr=[0,8744],iAr=[0,8211],fAr=r("sup1"),xAr=r("rlm"),aAr=r("raquo"),oAr=r("prod"),cAr=r("prop"),sAr=r("psi"),vAr=r("quot"),lAr=r("rArr"),bAr=r("radic"),pAr=r("rang"),mAr=[0,10217],_Ar=[0,8730],yAr=[0,8658],dAr=[0,34],hAr=[0,968],kAr=[0,8733],wAr=[0,8719],EAr=r("rarr"),SAr=r("rceil"),gAr=r("rdquo"),FAr=r("real"),TAr=r("reg"),OAr=r("rfloor"),IAr=r("rho"),AAr=[0,961],NAr=[0,8971],CAr=[0,nH],PAr=[0,8476],DAr=[0,8221],LAr=[0,8969],RAr=[0,8594],jAr=[0,iw],GAr=r("sigma"),MAr=r("rsaquo"),BAr=r("rsquo"),qAr=r("sbquo"),UAr=r("scaron"),HAr=r("sdot"),XAr=r("sect"),YAr=r("shy"),VAr=[0,wY],zAr=[0,DT],KAr=[0,8901],WAr=[0,353],JAr=[0,8218],$Ar=[0,8217],ZAr=[0,8250],QAr=r("sigmaf"),rNr=r("sim"),eNr=r("spades"),nNr=r("sub"),tNr=r("sube"),uNr=r("sum"),iNr=r("sup"),fNr=[0,8835],xNr=[0,8721],aNr=[0,8838],oNr=[0,8834],cNr=[0,9824],sNr=[0,8764],vNr=[0,962],lNr=[0,963],bNr=[0,8207],pNr=r("uarr"),mNr=r("thetasym"),_Nr=r("sup2"),yNr=r("sup3"),dNr=r("supe"),hNr=r("szlig"),kNr=r("tau"),wNr=r("there4"),ENr=r("theta"),SNr=[0,952],gNr=[0,8756],FNr=[0,964],TNr=[0,d8],ONr=[0,8839],INr=[0,qY],ANr=[0,OO],NNr=r("thinsp"),CNr=r("thorn"),PNr=r("tilde"),DNr=r("times"),LNr=r("trade"),RNr=r("uArr"),jNr=r("uacute"),GNr=[0,nl],MNr=[0,8657],BNr=[0,8482],qNr=[0,cT],UNr=[0,732],HNr=[0,gv],XNr=[0,8201],YNr=[0,977],VNr=r("xi"),zNr=r("ucirc"),KNr=r("ugrave"),WNr=r("uml"),JNr=r("upsih"),$Nr=r("upsilon"),ZNr=r("uuml"),QNr=r("weierp"),rCr=[0,cU],eCr=[0,Y2],nCr=[0,965],tCr=[0,978],uCr=[0,DY],iCr=[0,249],fCr=[0,251],xCr=r("yacute"),aCr=r("yen"),oCr=r("yuml"),cCr=r("zeta"),sCr=r("zwj"),vCr=r("zwnj"),lCr=[0,FY],bCr=[0,8205],pCr=[0,950],mCr=[0,Ow],_Cr=[0,nY],yCr=[0,ih],dCr=[0,958],hCr=[0,8593],kCr=[0,AU],wCr=[0,8242],ECr=[0,WU],SCr=r($Y),gCr=r(Bh),FCr=r("unreachable jsx_child"),TCr=r("unreachable type_token wholenumber"),OCr=r("unreachable type_token wholebigint"),ICr=r("unreachable type_token floatbigint"),ACr=r("unreachable type_token scinumber"),NCr=r("unreachable type_token scibigint"),CCr=r("unreachable type_token hexnumber"),PCr=r("unreachable type_token hexbigint"),DCr=r("unreachable type_token legacyoctnumber"),LCr=r("unreachable type_token octnumber"),RCr=r("unreachable type_token octbigint"),jCr=r("unreachable type_token binnumber"),GCr=r("unreachable type_token bigbigint"),MCr=r("unreachable type_token"),BCr=r(o1),qCr=r(o1),UCr=r(FU),HCr=r(X8),XCr=r(t6),YCr=r(a1),VCr=r(I6),zCr=r(O2),KCr=r(s7),WCr=r(C7),JCr=r(Ci),$Cr=r(r7),ZCr=[9,1],QCr=[9,0],rPr=r(xs),ePr=r(hv),nPr=r(eu),tPr=r(Tv),uPr=r(W4),iPr=r(Gi),fPr=r(es),xPr=r(ns),aPr=r("unreachable template_tail"),oPr=r(p3),cPr=[0,r(C),r(C),r(C)],sPr=r("unreachable jsx_tag"),vPr=r(D3),lPr=r("unreachable regexp"),bPr=r("unreachable token wholenumber"),pPr=r("unreachable token wholebigint"),mPr=r("unreachable token floatbigint"),_Pr=r("unreachable token scinumber"),yPr=r("unreachable token scibigint"),dPr=r("unreachable token hexnumber"),hPr=r("unreachable token hexbigint"),kPr=r("unreachable token legacyoctnumber"),wPr=r("unreachable token legacynonoctnumber"),EPr=r("unreachable token octnumber"),SPr=r("unreachable token octbigint"),gPr=r("unreachable token bignumber"),FPr=r("unreachable token bigint"),TPr=r("unreachable token"),OPr=r(o1),IPr=r(o1),APr=r(FU),NPr=[6,r("#!")],CPr=r("expected ?"),PPr=r(j2),DPr=r(y4),LPr=r(D2),RPr=r(Os),jPr=r(wx),GPr=r(I7),MPr=r(k6),BPr=r(o6),qPr=r(q2),UPr=r(A7),HPr=r(O7),XPr=r(T2),YPr=r(mi),VPr=r(J2),zPr=r(tp),KPr=r(H4),WPr=r(p8),JPr=r(y3),$Pr=r(C7),ZPr=r(Ci),QPr=r(U8),rDr=r(M2),eDr=r(N3),nDr=r(gs),tDr=r(qu),uDr=r(R2),iDr=r(yv),fDr=r(d4),xDr=r(r7),aDr=r(G2),oDr=r(i1),cDr=r(xs),sDr=r(LS),vDr=r(ud),lDr=r(w4),bDr=r(c6),pDr=r(S6),mDr=r(Wu),_Dr=r(eu),yDr=r(es),dDr=r(P7),hDr=r(f1),kDr=r(g7),wDr=r(Gi),EDr=r(k4),SDr=r($c),gDr=r(U2),FDr=r(ns),TDr=r(W6),ODr=r(P8),IDr=r(wu),ADr=r("unreachable string_escape"),NDr=r($u),CDr=r(H2),PDr=r(H2),DDr=r($u),LDr=r(gX),RDr=r(lY),jDr=r("n"),GDr=r("r"),MDr=r("t"),BDr=r(hV),qDr=r(H2),UDr=r(b1),HDr=r(b1),XDr=r("unreachable id_char"),YDr=r(b1),VDr=r(b1),zDr=r("Invalid (lexer) bigint "),KDr=r("Invalid (lexer) bigint binary/octal "),WDr=r(H2),JDr=r(hH),$Dr=r(lU),ZDr=r(Dd),QDr=[10,r("token ILLEGAL")],rLr=r("\0"),eLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),nLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),tLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),uLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),iLr=r("\0\0"),fLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),xLr=r(""),aLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),oLr=r("\0"),cLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),sLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),vLr=r("\0\0\0\0"),lLr=r("\0\0\0"),bLr=r("\x07\x07"),pLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),mLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),_Lr=r(`\x07\b  +\v\f\r`),yLr=r(""),dLr=r("\0\0\0"),hLr=r("\0"),kLr=r("\0\0\0\0\0\0"),wLr=r(""),ELr=r(""),SLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),gLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),FLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),TLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),OLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),ILr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),ALr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),NLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),CLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),PLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),DLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),LLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x07\b\0\0\0\0\0\0 \x07\b"),RLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),jLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),GLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),MLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),BLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),qLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),ULr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),HLr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),XLr=r(`\x07\b +\v\x07\f\r\x1B  ! "#$%                                                                                                                                                                                                                                                         `),YLr=r(""),VLr=r(""),zLr=r("\0\0\0\0"),KLr=r(`\x07\b  +\v\f\r\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x1B\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07`),WLr=r(`\x07\b  +\v\f\r\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07`),JLr=r("\0\0"),$Lr=r(""),ZLr=r(""),QLr=r("\x07"),rRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),eRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),nRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),tRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),uRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),iRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),fRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),xRr=r("\0\0\0\0\0\0\0"),aRr=r("\x07"),oRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),cRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),sRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),vRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),lRr=r("\0"),bRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),pRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),mRr=r("\0\0"),_Rr=r("\0"),yRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),dRr=r(""),hRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),kRr=r(""),wRr=r(""),ERr=r(""),SRr=r("\0"),gRr=r("\0\0\0"),FRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),TRr=r(""),ORr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),IRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),ARr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),NRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),CRr=r("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),PRr=[0,[11,r("the identifier `"),[2,0,[12,96,0]]],r("the identifier `%s`")],DRr=[0,1],LRr=[0,1],RRr=r("@flow"),jRr=r(EX),GRr=r(EX),MRr=[0,[11,r("an identifier. When exporting a "),[2,0,[11,r(" as a named export, you must specify a "),[2,0,[11,r(" name. Did you mean `export default "),[2,0,[11,r(" ...`?"),0]]]]]]],r("an identifier. When exporting a %s as a named export, you must specify a %s name. Did you mean `export default %s ...`?")],BRr=r(F3),qRr=r("Peeking current location when not available"),URr=r(r7),HRr=r(bv),XRr=r(t6),YRr=r(a1),VRr=r(I6),zRr=r(O2),KRr=r(s7),WRr=r(C7),JRr=r(Ci),$Rr=r(X8),ZRr=r(xs),QRr=r(hv),rjr=r(eu),ejr=r(Tv),njr=r(Gi),tjr=r(es),ujr=r(ns),ijr=r(Ci),fjr=r(xs),xjr=r(Gi),ajr=r(Ci),ojr=r(xs),cjr=r(Gi),sjr=r(C2),vjr=r("eval"),ljr=r(gs),bjr=r(r7),pjr=r(d4),mjr=r(w4),_jr=r(c6),yjr=r(S6),djr=r(eu),hjr=r(wu),kjr=r(p8),wjr=r(N3),Ejr=r(mi),Sjr=r(wx),gjr=r(I7),Fjr=r(k6),Tjr=r(o6),Ojr=r(q2),Ijr=r(D2),Ajr=r(A7),Njr=r(O7),Cjr=r(J2),Pjr=r(y4),Djr=r(H4),Ljr=r(y3),Rjr=r(C7),jjr=r(U8),Gjr=r(tp),Mjr=r(M2),Bjr=r(g7),qjr=r(qu),Ujr=r(R2),Hjr=r(j2),Xjr=r(i1),Yjr=r(Wu),Vjr=r(yv),zjr=r(P7),Kjr=r(f1),Wjr=r(k4),Jjr=r(es),$jr=r(U2),Zjr=r(ns),Qjr=r(W6),rGr=r(P8),eGr=r(wu),nGr=[0,r("src/parser/parser_env.ml"),343,9],tGr=r("Internal Error: Tried to add_declared_private with outside of class scope."),uGr=r("Internal Error: `exit_class` called before a matching `enter_class`"),iGr=r(C),fGr=[0,0,0],xGr=[0,0,0],aGr=r("Parser_env.Try.Rollback"),oGr=r(C),cGr=r(C),sGr=[0,r(wu),r(zx),r(ia),r(gU),r(AY),r(Ia),r(ou),r(wc),r(fx),r(cc),r(Bf),r(Oa),r(Da),r(tc),r(Ca),r(Sf),r(Zo),r(fa),r(Dx),r(Of),r(sx),r(Ao),r(Hf),r(ja),r(Jo),r(Vx),r(Zx),r(dx),r(oa),r(xo),r(ua),r(g7),r(Aa),r(Lf),r(Ea),r(Qx),r(Zf),r(Ha),r(ha),r(P7),r(hc),r(Po),r(Fx),r(Kx),r(df),r(Fc),r(qf),r(vx),r(Wu),r(_x),r(mo),r(Le),r(Qu),r(Qo),r(Va),r(So),r(ra),r(lc),r(co),r(uo),r(Df),r(qa),r(zf),r($f),r(Ec),r(bc),r(lo),r(mf),r(Ka),r(rx),r(nx),r(pi),r(ro),r(Ba),r(wf),r(Ko),r(Ya),r(pc),r(ac),r(Qa),r(ca),r(xx),r(Pf),r(xf),r(Vf),r(tx),r(_o),r(wo),r(Jf),r(uc),r(Tf),r(jx),r(Ua),r(mx),r(hf),r(Af),r(yc),r(ur),r(dc),r($x),r(Xx),r(Lo),r(Wx),r(ux),r(Rx),r(ko),r(Lx),r(kc),r(bx),r($a),r(Sc),r(Ro),r(Wa),r(nc),r(nf),r(Px),r(sa),r(Ax),r(xa),r(Ga),r(Na),r(_c),r(Cx),r(af),r(cf),r(ex),r(Ja),r(ho),r(sc),r(Gf),r(Wo),r(na),r(wa),r(sf),r(r7),r(Co),r(Ox),r(Do),r(Yx),r(ma),r(gc),r(qu),r(zo),r(fo),r(_f),r(_i),r(Kf),r(mc),r($o),r(j7),r(yx),r(po),r(bf),r(Uo),r(Ex),r(Ma),r(yo),r(ix),r(uf),r(jf),r(Tc),r(Nx),r(kx),r(No),r(Ic),r(pa),r(ga),r(vi),r(xc),r(hx),r(jo),r(Vo),r(Oc),r(qx),r(Eo),r(Uf),r(Ff),r(ta),r(Ix),r(Au),r(no),r(io),r(ec),r(lf),r(Fo),r(ba),r(Cf),r(Mx),r(rc),r(Nf),r(Mf),r(Ux),r(Xa),r(Hx),r(vo),r(eo),r(bo),r(s7),r(ka),r(Go),r(Sx),r(Ta),r(la),r(to),r(Wf),r(Mo),r(Io),r(ox),r(O7),r(A7),r(Za),r(ao),r(Qf),r(cH),r(da),r(oH),r(VU),r(kf),r(Fa),r(ax),r(Tx),r(Xf),r(Bo),r(Ef),r(ff),r(To),r(Rf),r(ic),r(yf),r(Ho),r(oo),r(Xo),r(gf),r(ef),r(lx),r(_a),r(px),r(If),r(I7),r(Yo),r(ut),r(Bx),r(of),r(pf),r(Jx),r(Yf),r(za),r(so),r(go),r(va),r(Gx),r(J4)],vGr=[0,r(wu),r(zx),r(ia),r(Ia),r(ou),r(wc),r(fx),r(cc),r(Bf),r(Oa),r(Da),r(tc),r(Ca),r(Sf),r(Zo),r(fa),r(Dx),r(Of),r(sx),r(Ao),r(Hf),r(ja),r(Jo),r(Vx),r(Zx),r(dx),r(oa),r(xo),r(ua),r(g7),r(Aa),r(Lf),r(Ea),r(Qx),r(Zf),r(Ha),r(ha),r(P7),r(hc),r(Po),r(Fx),r(Kx),r(df),r(Fc),r(qf),r(vx),r(Wu),r(_x),r(mo),r(Le),r(Qu),r(Qo),r(Va),r(So),r(ra),r(lc),r(co),r(uo),r(Df),r(qa),r(zf),r($f),r(Ec),r(bc),r(lo),r(mf),r(Ka),r(rx),r(nx),r(pi),r(ro),r(Ba),r(wf),r(Ko),r(Ya),r(pc),r(ac),r(Qa),r(ca),r(xx),r(Pf),r(xf),r(Vf),r(tx),r(_o),r(wo),r(Jf),r(uc),r(Tf),r(jx),r(Ua),r(mx),r(hf),r(Af),r(yc),r(ur),r(dc),r($x),r(Xx),r(Lo),r(Wx),r(ux),r(Rx),r(ko),r(Lx),r(kc),r(bx),r($a),r(Sc),r(Ro),r(Wa),r(nc),r(nf),r(Px),r(sa),r(Ax),r(xa),r(Ga),r(Na),r(_c),r(Cx),r(af),r(cf),r(ex),r(Ja),r(ho),r(sc),r(Gf),r(Wo),r(na),r(wa),r(sf),r(r7),r(Co),r(Ox),r(Do),r(Yx),r(ma),r(gc),r(qu),r(zo),r(fo),r(_f),r(_i),r(Kf),r(mc),r($o),r(j7),r(yx),r(po),r(bf),r(Uo),r(Ex),r(Ma),r(yo),r(ix),r(uf),r(jf),r(Tc),r(Nx),r(kx),r(No),r(Ic),r(pa),r(ga),r(vi),r(xc),r(hx),r(jo),r(Vo),r(Oc),r(qx),r(Eo),r(Uf),r(Ff),r(ta),r(Ix),r(Au),r(no),r(io),r(ec),r(lf),r(Fo),r(ba),r(Cf),r(Mx),r(rc),r(Nf),r(Mf),r(Ux),r(Xa),r(Hx),r(vo),r(eo),r(bo),r(s7),r(ka),r(Go),r(Sx),r(Ta),r(la),r(to),r(Wf),r(Mo),r(Io),r(ox),r(O7),r(A7),r(Za),r(ao),r(Qf),r(da),r(kf),r(Fa),r(ax),r(Tx),r(Xf),r(Bo),r(Ef),r(ff),r(To),r(Rf),r(ic),r(yf),r(Ho),r(oo),r(Xo),r(gf),r(ef),r(lx),r(_a),r(px),r(If),r(I7),r(Yo),r(ut),r(Bx),r(of),r(pf),r(Jx),r(Yf),r(za),r(so),r(go),r(va),r(Gx),r(J4)],lGr=[0,r(df),r(ex),r(yo),r(Kf),r(If),r(zf),r(Ua),r(tx),r(Px),r(wa),r(Jo),r(P7),r(Ya),r(no),r(ic),r(_c),r(mx),r(af),r(eo),r(Ux),r(zx),r(vi),r(kc),r(jx),r($o),r(vo),r(Af),r(_i),r(Ia),r(qx),r(uo),r(Wf),r(lx),r(ix),r(ef),r(Ga),r(Cf),r(po),r(bc),r(xc),r(ha),r(Jx),r(_o),r(fo),r(Fx),r(bo),r(Lx),r(hf),r(ff),r(Fa),r(ro),r(So),r(Vf),r(Va),r(Wa),r(Xf),r(ac),r(Qu),r(Pf),r(Uo),r(yc),r(sa),r(Na),r(mc),r(ux),r(Za),r(Zx),r(Nf),r(xf),r(nc),r(Qf),r(Rx),r(Ma),r(co),r(go),r(la),r(Fo),r($x),r(nx),r(va),r(_a),r(vx),r(ou),r(Qo),r(fa),r(zo),r(pf),r(ga),r(ua),r(sc),r(Rf),r(uc),r(Ha),r(s7),r(Vo),r(Vx),r(wu),r(xo),r(Io),r(tc),r(Ka),r(_x),r(Da),r(kf),r(Mo),r(cc),r(Cx),r(ra),r(na),r(Xa),r(Ff),r(pc),r(io),r(ko),r(mf),r(Eo),r(Of),r(oa),r(wc),r(Fc),r(Dx),r(Oa),r(Bo),r(hx),r(ax),r(Lo),r(Ex),r(Bf),r(da),r(Tf),r($a),r(Yf),r(Xx),r(oo),r(To),r(Co),r(lo),r(Ba),r(Sc),r(dc),r(qu),r(Wu),r(Yo),r(Zo),r(sx),r(hc),r(Ec),r(g7),r(O7),r(_f),r(Ko),r(Ix),r(cf),r(pi),r(Nx),r(Hx),r(Ox),r(Tx),r(uf),r(Wx),r(Ja),r(j7),r(bf),r(Sf),r(Mf),r(Le),r(Ic),r(ma),r(rc),r(lf),r(Jf),r(qf),r(Do),r(ca),r(Df),r(dx),r(xx),r(Ao),r(px),r(Ta),r(Xo),r(to),r(Bx),r(Gf),r(Zf),r(yx),r(mo),r(gc),r(Ho),r(wo),r(xa),r(Ef),r(sf),r(ka),r(ja),r(Gx),r(fx),r(gf),r(Hf),r(Go),r(Ax),r(ho),r(ao),r(bx),r(qa),r(Wo),r(Uf),r(Ro),r(Ea),r(za),r($f),r(of),r(Au),r(rx),r(ta),r(kx),r(No),r(Kx),r(A7),r(jf),r(lc),r(ba),r(Sx),r(Lf),r(Qx),r(Po),r(pa),r(ec),r(Ca),r(jo),r(wf),r(ut),r(Yx),r(yf),r(nf),r(Qa),r(Tc),r(ox),r(Mx),r(I7),r(so),r(r7),r(ia),r(Oc),r(Aa),r(ur)],bGr=[0,r(df),r(ex),r(yo),r(Kf),r(If),r(zf),r(Ua),r(tx),r(Px),r(wa),r(Jo),r(P7),r(Ya),r(no),r(ic),r(_c),r(mx),r(af),r(eo),r(Ux),r(zx),r(vi),r(kc),r(jx),r($o),r(vo),r(Af),r(_i),r(Ia),r(AY),r(qx),r(uo),r(Wf),r(lx),r(ix),r(ef),r(Ga),r(Cf),r(po),r(bc),r(xc),r(ha),r(Jx),r(_o),r(fo),r(Fx),r(bo),r(Lx),r(hf),r(ff),r(Fa),r(ro),r(So),r(oH),r(Vf),r(Va),r(Wa),r(Xf),r(ac),r(Qu),r(Pf),r(Uo),r(yc),r(sa),r(Na),r(mc),r(ux),r(Za),r(Zx),r(Nf),r(xf),r(nc),r(Qf),r(Rx),r(Ma),r(co),r(go),r(la),r(Fo),r($x),r(nx),r(va),r(_a),r(vx),r(ou),r(Qo),r(fa),r(zo),r(pf),r(ga),r(ua),r(sc),r(Rf),r(uc),r(Ha),r(s7),r(Vo),r(Vx),r(wu),r(xo),r(Io),r(tc),r(Ka),r(_x),r(Da),r(kf),r(Mo),r(cc),r(Cx),r(ra),r(na),r(Xa),r(Ff),r(pc),r(io),r(ko),r(mf),r(Eo),r(Of),r(oa),r(wc),r(Fc),r(Dx),r(Oa),r(Bo),r(hx),r(ax),r(Lo),r(Ex),r(Bf),r(da),r(Tf),r($a),r(Yf),r(Xx),r(oo),r(To),r(Co),r(lo),r(Ba),r(Sc),r(dc),r(qu),r(Wu),r(Yo),r(Zo),r(sx),r(hc),r(Ec),r(g7),r(O7),r(_f),r(Ko),r(Ix),r(cf),r(pi),r(Nx),r(Hx),r(Ox),r(Tx),r(uf),r(Wx),r(Ja),r(j7),r(bf),r(Sf),r(Mf),r(Le),r(Ic),r(ma),r(rc),r(lf),r(Jf),r(qf),r(Do),r(ca),r(Df),r(dx),r(xx),r(Ao),r(px),r(Ta),r(Xo),r(to),r(Bx),r(Gf),r(VU),r(Zf),r(yx),r(mo),r(gc),r(Ho),r(wo),r(xa),r(Ef),r(sf),r(ka),r(ja),r(cH),r(Gx),r(fx),r(gf),r(Hf),r(gU),r(Go),r(Ax),r(ho),r(ao),r(bx),r(qa),r(Wo),r(Uf),r(Ro),r(Ea),r(za),r($f),r(of),r(Au),r(rx),r(ta),r(kx),r(No),r(Kx),r(A7),r(jf),r(lc),r(ba),r(Sx),r(Lf),r(Qx),r(Po),r(pa),r(ec),r(Ca),r(jo),r(wf),r(ut),r(Yx),r(yf),r(nf),r(Qa),r(Tc),r(ox),r(Mx),r(I7),r(so),r(r7),r(ia),r(Oc),r(Aa),r(ur)],pGr=r(V4),mGr=r(I2),_Gr=[0,[11,r("Failure while looking up "),[2,0,[11,r(". Index: "),[4,0,0,0,[11,r(". Length: "),[4,0,0,0,[12,46,0]]]]]]],r("Failure while looking up %s. Index: %d. Length: %d.")],yGr=[0,0,0,0],dGr=r("Offset_utils.Offset_lookup_failed"),hGr=r(QY),kGr=r(wE),wGr=r(jY),EGr=r($X),SGr=r($X),gGr=r(jY),FGr=r($c),TGr=r(Xr),OGr=r(Wn),IGr=r("Program"),AGr=r(Yh),NGr=r("BreakStatement"),CGr=r(Yh),PGr=r("ContinueStatement"),DGr=r("DebuggerStatement"),LGr=r(vc),RGr=r("DeclareExportAllDeclaration"),jGr=r(vc),GGr=r(Cv),MGr=r(P2),BGr=r(mi),qGr=r("DeclareExportDeclaration"),UGr=r(Zc),HGr=r(Wn),XGr=r(mt),YGr=r("DeclareModule"),VGr=r(N7),zGr=r("DeclareModuleExports"),KGr=r(Ts),WGr=r(Wn),JGr=r("DoWhileStatement"),$Gr=r("EmptyStatement"),ZGr=r(_O),QGr=r(P2),rMr=r("ExportDefaultDeclaration"),eMr=r(_O),nMr=r(A4),tMr=r(vc),uMr=r("ExportAllDeclaration"),iMr=r(_O),fMr=r(vc),xMr=r(Cv),aMr=r(P2),oMr=r("ExportNamedDeclaration"),cMr=r(hn),sMr=r(Au),vMr=r("ExpressionStatement"),lMr=r(Wn),bMr=r(sU),pMr=r(Ts),mMr=r(ji),_Mr=r("ForStatement"),yMr=r(j8),dMr=r(Wn),hMr=r(Nu),kMr=r(li),wMr=r("ForInStatement"),EMr=r(wx),SMr=r(Wn),gMr=r(Nu),FMr=r(li),TMr=r("ForOfStatement"),OMr=r(_3),IMr=r(kv),AMr=r(Ts),NMr=r("IfStatement"),CMr=r($c),PMr=r(es),DMr=r(Bn),LMr=r(pX),RMr=r(vc),jMr=r(Cv),GMr=r("ImportDeclaration"),MMr=r(Wn),BMr=r(Yh),qMr=r("LabeledStatement"),UMr=r(v7),HMr=r("ReturnStatement"),XMr=r(uY),YMr=r("discriminant"),VMr=r("SwitchStatement"),zMr=r(v7),KMr=r("ThrowStatement"),WMr=r(jH),JMr=r(XU),$Mr=r(ut),ZMr=r("TryStatement"),QMr=r(Wn),rBr=r(Ts),eBr=r("WhileStatement"),nBr=r(Wn),tBr=r(ck),uBr=r("WithStatement"),iBr=r(GH),fBr=r("ArrayExpression"),xBr=r(T7),aBr=r(m6),oBr=r(Au),cBr=r(Qu),sBr=r(j7),vBr=r(Os),lBr=r(Wn),bBr=r(Ct),pBr=r(mt),mBr=r("ArrowFunctionExpression"),_Br=r(zO),yBr=r(Nu),dBr=r(li),hBr=r(ul),kBr=r("AssignmentExpression"),wBr=r(Nu),EBr=r(li),SBr=r(ul),gBr=r("BinaryExpression"),FBr=r("CallExpression"),TBr=r(O4),OBr=r(bY),IBr=r("ComprehensionExpression"),ABr=r(_3),NBr=r(kv),CBr=r(Ts),PBr=r("ConditionalExpression"),DBr=r(O4),LBr=r(bY),RBr=r("GeneratorExpression"),jBr=r(vc),GBr=r("ImportExpression"),MBr=r(ZH),BBr=r(XX),qBr=r(Fn),UBr=r(Nu),HBr=r(li),XBr=r(ul),YBr=r("LogicalExpression"),VBr=r("MemberExpression"),zBr=r(Iv),KBr=r(el),WBr=r("MetaProperty"),JBr=r(C2),$Br=r(CX),ZBr=r(UH),QBr=r("NewExpression"),rqr=r(X4),eqr=r("ObjectExpression"),nqr=r(Bu),tqr=r("OptionalCallExpression"),uqr=r(Bu),iqr=r("OptionalMemberExpression"),fqr=r(Ug),xqr=r("SequenceExpression"),aqr=r("Super"),oqr=r("ThisExpression"),cqr=r(N7),sqr=r(Au),vqr=r("TypeCastExpression"),lqr=r(v7),bqr=r("AwaitExpression"),pqr=r(Oo),mqr=r(as),_qr=r(rf),yqr=r(tV),dqr=r(es),hqr=r(ns),kqr=r(J2),wqr=r("matched above"),Eqr=r(v7),Sqr=r(XE),gqr=r(ul),Fqr=r("UnaryExpression"),Tqr=r(lV),Oqr=r(mH),Iqr=r(XE),Aqr=r(v7),Nqr=r(ul),Cqr=r("UpdateExpression"),Pqr=r(yY),Dqr=r(v7),Lqr=r("YieldExpression"),Rqr=r("Unexpected FunctionDeclaration with BodyExpression"),jqr=r(T7),Gqr=r(m6),Mqr=r(Au),Bqr=r(Qu),qqr=r(j7),Uqr=r(Os),Hqr=r(Wn),Xqr=r(Ct),Yqr=r(mt),Vqr=r("FunctionDeclaration"),zqr=r("Unexpected FunctionExpression with BodyExpression"),Kqr=r(T7),Wqr=r(m6),Jqr=r(Au),$qr=r(Qu),Zqr=r(j7),Qqr=r(Os),rUr=r(Wn),eUr=r(Ct),nUr=r(mt),tUr=r("FunctionExpression"),uUr=r(Bu),iUr=r(N7),fUr=r(ti),xUr=r(gn),aUr=r(Bu),oUr=r(N7),cUr=r(ti),sUr=r("PrivateIdentifier"),vUr=r(Bu),lUr=r(N7),bUr=r(ti),pUr=r(gn),mUr=r(kv),_Ur=r(Ts),yUr=r("SwitchCase"),dUr=r(Wn),hUr=r("param"),kUr=r("CatchClause"),wUr=r(Wn),EUr=r("BlockStatement"),SUr=r(mt),gUr=r("DeclareVariable"),FUr=r(Qu),TUr=r(mt),OUr=r("DeclareFunction"),IUr=r(Vy),AUr=r(gs),NUr=r(C7),CUr=r(Wn),PUr=r(T7),DUr=r(mt),LUr=r("DeclareClass"),RUr=r(C7),jUr=r(Wn),GUr=r(T7),MUr=r(mt),BUr=r("DeclareInterface"),qUr=r(Bn),UUr=r($c),HUr=r(A4),XUr=r("ExportNamespaceSpecifier"),YUr=r(Nu),VUr=r(T7),zUr=r(mt),KUr=r("DeclareTypeAlias"),WUr=r(Nu),JUr=r(T7),$Ur=r(mt),ZUr=r("TypeAlias"),QUr=r("DeclareOpaqueType"),rHr=r("OpaqueType"),eHr=r(IX),nHr=r(kX),tHr=r(T7),uHr=r(mt),iHr=r("ClassDeclaration"),fHr=r("ClassExpression"),xHr=r(B_),aHr=r(gs),oHr=r("superTypeParameters"),cHr=r("superClass"),sHr=r(T7),vHr=r(Wn),lHr=r(mt),bHr=r(Au),pHr=r("Decorator"),mHr=r(T7),_Hr=r(mt),yHr=r("ClassImplements"),dHr=r(Wn),hHr=r("ClassBody"),kHr=r(wv),wHr=r(F2),EHr=r(t1),SHr=r(lv),gHr=r(B_),FHr=r(pv),THr=r(eu),OHr=r(Zc),IHr=r(Bn),AHr=r(ui),NHr=r("MethodDefinition"),CHr=r(T2),PHr=r(ou),DHr=r(eu),LHr=r(pv),RHr=r(N7),jHr=r(Bn),GHr=r(ui),MHr=r(vV),BHr=r("Internal Error: Private name found in class prop"),qHr=r(T2),UHr=r(ou),HHr=r(eu),XHr=r(pv),YHr=r(N7),VHr=r(Bn),zHr=r(ui),KHr=r(vV),WHr=r(mt),JHr=r(PX),$Hr=r(ji),ZHr=r(mt),QHr=r("EnumStringMember"),rXr=r(mt),eXr=r(PX),nXr=r(ji),tXr=r(mt),uXr=r("EnumNumberMember"),iXr=r(ji),fXr=r(mt),xXr=r("EnumBooleanMember"),aXr=r(O8),oXr=r(jT),cXr=r(N4),sXr=r("EnumBooleanBody"),vXr=r(O8),lXr=r(jT),bXr=r(N4),pXr=r("EnumNumberBody"),mXr=r(O8),_Xr=r(jT),yXr=r(N4),dXr=r("EnumStringBody"),hXr=r(O8),kXr=r(N4),wXr=r("EnumSymbolBody"),EXr=r(Wn),SXr=r(mt),gXr=r("EnumDeclaration"),FXr=r(C7),TXr=r(Wn),OXr=r(T7),IXr=r(mt),AXr=r("InterfaceDeclaration"),NXr=r(T7),CXr=r(mt),PXr=r("InterfaceExtends"),DXr=r(N7),LXr=r(X4),RXr=r("ObjectPattern"),jXr=r(N7),GXr=r(GH),MXr=r("ArrayPattern"),BXr=r(Nu),qXr=r(li),UXr=r(jF),HXr=r(N7),XXr=r(ti),YXr=r(gn),VXr=r(v7),zXr=r(cX),KXr=r(v7),WXr=r(cX),JXr=r(Nu),$Xr=r(li),ZXr=r(jF),QXr=r(ji),rYr=r(ji),eYr=r(t1),nYr=r(lv),tYr=r(bH),uYr=r(pv),iYr=r(x6),fYr=r(F2),xYr=r(Zc),aYr=r(Bn),oYr=r(ui),cYr=r(wU),sYr=r(v7),vYr=r("SpreadProperty"),lYr=r(Nu),bYr=r(li),pYr=r(jF),mYr=r(pv),_Yr=r(x6),yYr=r(F2),dYr=r(Zc),hYr=r(Bn),kYr=r(ui),wYr=r(wU),EYr=r(v7),SYr=r("SpreadElement"),gYr=r(j8),FYr=r(Nu),TYr=r(li),OYr=r("ComprehensionBlock"),IYr=r("We should not create Literal nodes for bigints"),AYr=r(UX),NYr=r(pi),CYr=r("regex"),PYr=r(o7),DYr=r(Bn),LYr=r(o7),RYr=r(Bn),jYr=r(X6),GYr=r(o7),MYr=r(Bn),BYr=r(X6),qYr=r(a1),UYr=r(Bn),HYr=r("BigIntLiteral"),XYr=r(o7),YYr=r(Bn),VYr=r(X6),zYr=r(Gi),KYr=r(Ci),WYr=r(o7),JYr=r(Bn),$Yr=r(X6),ZYr=r(Ug),QYr=r("quasis"),rVr=r("TemplateLiteral"),eVr=r(GY),nVr=r(o7),tVr=r(bU),uVr=r(Bn),iVr=r("TemplateElement"),fVr=r(OY),xVr=r("tag"),aVr=r("TaggedTemplateExpression"),oVr=r(U2),cVr=r(G2),sVr=r(D2),vVr=r(Zc),lVr=r("declarations"),bVr=r("VariableDeclaration"),pVr=r(ji),mVr=r(mt),_Vr=r("VariableDeclarator"),yVr=r(Zc),dVr=r("Variance"),hVr=r("AnyTypeAnnotation"),kVr=r("MixedTypeAnnotation"),wVr=r("EmptyTypeAnnotation"),EVr=r("VoidTypeAnnotation"),SVr=r("NullLiteralTypeAnnotation"),gVr=r("SymbolTypeAnnotation"),FVr=r("NumberTypeAnnotation"),TVr=r("BigIntTypeAnnotation"),OVr=r("StringTypeAnnotation"),IVr=r("BooleanTypeAnnotation"),AVr=r(N7),NVr=r("NullableTypeAnnotation"),CVr=r(T7),PVr=r(ch),DVr=r(m6),LVr=r(f1),RVr=r(Ct),jVr=r("FunctionTypeAnnotation"),GVr=r(Bu),MVr=r(N7),BVr=r(ti),qVr=r(qH),UVr=r(Bu),HVr=r(N7),XVr=r(ti),YVr=r(qH),VVr=[0,0,0,0,0],zVr=r("internalSlots"),KVr=r("callProperties"),WVr=r("indexers"),JVr=r(X4),$Vr=r("exact"),ZVr=r(HY),QVr=r("ObjectTypeAnnotation"),rzr=r(bH),ezr=r("There should not be computed object type property keys"),nzr=r(ji),tzr=r(t1),uzr=r(lv),izr=r(Zc),fzr=r(ou),xzr=r(Y3),azr=r(eu),ozr=r(Bu),czr=r(F2),szr=r(Bn),vzr=r(ui),lzr=r("ObjectTypeProperty"),bzr=r(v7),pzr=r("ObjectTypeSpreadProperty"),mzr=r(ou),_zr=r(eu),yzr=r(Bn),dzr=r(ui),hzr=r(mt),kzr=r("ObjectTypeIndexer"),wzr=r(eu),Ezr=r(Bn),Szr=r("ObjectTypeCallProperty"),gzr=r(Bn),Fzr=r(F2),Tzr=r(eu),Ozr=r(Bu),Izr=r(mt),Azr=r("ObjectTypeInternalSlot"),Nzr=r(Wn),Czr=r(C7),Pzr=r("InterfaceTypeAnnotation"),Dzr=r("elementType"),Lzr=r("ArrayTypeAnnotation"),Rzr=r(mt),jzr=r(fY),Gzr=r("QualifiedTypeIdentifier"),Mzr=r(T7),Bzr=r(mt),qzr=r("GenericTypeAnnotation"),Uzr=r("indexType"),Hzr=r("objectType"),Xzr=r("IndexedAccessType"),Yzr=r(Bu),Vzr=r("OptionalIndexedAccessType"),zzr=r(Z6),Kzr=r("UnionTypeAnnotation"),Wzr=r(Z6),Jzr=r("IntersectionTypeAnnotation"),$zr=r(v7),Zzr=r("TypeofTypeAnnotation"),Qzr=r(mt),rKr=r(fY),eKr=r("QualifiedTypeofIdentifier"),nKr=r(Z6),tKr=r("TupleTypeAnnotation"),uKr=r(o7),iKr=r(Bn),fKr=r("StringLiteralTypeAnnotation"),xKr=r(o7),aKr=r(Bn),oKr=r("NumberLiteralTypeAnnotation"),cKr=r(o7),sKr=r(Bn),vKr=r("BigIntLiteralTypeAnnotation"),lKr=r(Gi),bKr=r(Ci),pKr=r(o7),mKr=r(Bn),_Kr=r("BooleanLiteralTypeAnnotation"),yKr=r("ExistsTypeAnnotation"),dKr=r(N7),hKr=r("TypeAnnotation"),kKr=r(Ct),wKr=r("TypeParameterDeclaration"),EKr=r(mi),SKr=r(ou),gKr=r(MU),FKr=r(ti),TKr=r("TypeParameter"),OKr=r(Ct),IKr=r(AH),AKr=r(Ct),NKr=r(AH),CKr=r(bv),PKr=r(Ve),DKr=r("closingElement"),LKr=r("openingElement"),RKr=r("JSXElement"),jKr=r("closingFragment"),GKr=r(Ve),MKr=r("openingFragment"),BKr=r("JSXFragment"),qKr=r("selfClosing"),UKr=r(kY),HKr=r(ti),XKr=r("JSXOpeningElement"),YKr=r("JSXOpeningFragment"),VKr=r(ti),zKr=r("JSXClosingElement"),KKr=r("JSXClosingFragment"),WKr=r(Bn),JKr=r(ti),$Kr=r("JSXAttribute"),ZKr=r(v7),QKr=r("JSXSpreadAttribute"),rWr=r("JSXEmptyExpression"),eWr=r(Au),nWr=r("JSXExpressionContainer"),tWr=r(Au),uWr=r("JSXSpreadChild"),iWr=r(o7),fWr=r(Bn),xWr=r("JSXText"),aWr=r(Iv),oWr=r(ck),cWr=r("JSXMemberExpression"),sWr=r(ti),vWr=r("namespace"),lWr=r("JSXNamespacedName"),bWr=r(ti),pWr=r("JSXIdentifier"),mWr=r(A4),_Wr=r(B2),yWr=r("ExportSpecifier"),dWr=r(B2),hWr=r("ImportDefaultSpecifier"),kWr=r(B2),wWr=r("ImportNamespaceSpecifier"),EWr=r(pX),SWr=r(B2),gWr=r("imported"),FWr=r("ImportSpecifier"),TWr=r("Line"),OWr=r("Block"),IWr=r(Bn),AWr=r(Bn),NWr=r("DeclaredPredicate"),CWr=r("InferredPredicate"),PWr=r(C2),DWr=r(CX),LWr=r(UH),RWr=r(pv),jWr=r(Iv),GWr=r(ck),MWr=r("message"),BWr=r(wE),qWr=r(KH),UWr=r(S7),HWr=r(vc),XWr=r(I2),YWr=r(V4),VWr=[0,[3,0,0],r(Yt)],zWr=r(M2),KWr=r(N3),WWr=r(R2),JWr=r(j2),$Wr=r(Wu),ZWr=r(P7),QWr=r(f1),rJr=r(g7),eJr=r(k4),nJr=r(U2),tJr=r(W6),uJr=r(P8),iJr=r(D2),fJr=r(G2),xJr=r(xs),aJr=r(Ci),oJr=r(Gi),cJr=r(I7),sJr=r(k6),vJr=r(o6),lJr=r(A7),bJr=r(mi),pJr=r(y4),mJr=r(U8),_Jr=r(tp),yJr=r(q2),dJr=r(C7),hJr=r(eu),kJr=r(H4),wJr=r(i1),EJr=r(J2),SJr=r(es),gJr=r(ns),FJr=r(p8),TJr=r(y3),OJr=r(qu),IJr=r(yv),AJr=r(gs),NJr=r(r7),CJr=r(d4),PJr=r(w4),DJr=r(c6),LJr=r(S6),RJr=r(wu),jJr=r(O7),GJr=r(T2),MJr=r($c),BJr=r(ud),qJr=r(LS),UJr=r(Os),HJr=r(wx),XJr=r(t6),YJr=r(X8),VJr=r(s7),zJr=r(hv),KJr=r(a1),WJr=r(Tv),JJr=r(ns),$Jr=r(W4),ZJr=r(O2),QJr=r(I6),r$r=[0,r(F3)],e$r=r(C),n$r=[7,0],t$r=r(C),u$r=[0,1],i$r=[0,2],f$r=[0,3],x$r=[0,0],a$r=[0,0],o$r=[0,0,0,0,0],c$r=[0,r(vv),906,6],s$r=[0,r(vv),tY,6],v$r=[0,0],l$r=[0,r(vv),1012,8],b$r=r(Y3),p$r=[0,r(vv),1029,8],m$r=r("Can not have both `static` and `proto`"),_$r=r(eu),y$r=r(Y3),d$r=r(t1),h$r=r(lv),k$r=r(t1),w$r=r(wv),E$r=r(lH),S$r=[0,0,0,0],g$r=[0,[0,0,0,0,0]],F$r=r(f1),T$r=[0,r("a type")],O$r=[0,0],I$r=[0,0],A$r=[14,1],N$r=[14,0],C$r=[0,r(vv),OH,15],P$r=[0,r(vv),D7,15],D$r=[0,44],L$r=[0,44],R$r=r(M2),j$r=[0,r(C),0],G$r=[0,0,0],M$r=[0,0,0],B$r=[0,0,0],q$r=[0,41],U$r=r(Zu),H$r=r(Zu),X$r=[0,r("a regular expression")],Y$r=r(C),V$r=r(C),z$r=r(C),K$r=[0,r("src/parser/expression_parser.ml"),jU,17],W$r=[0,r("a template literal part")],J$r=[0,[0,r(C),r(C)],1],$$r=r(xs),Z$r=r(xs),Q$r=r(Gi),rZr=r(Ci),eZr=r("Invalid bigint "),nZr=r("Invalid bigint binary/octal "),tZr=r(H2),uZr=r(hH),iZr=r(Dd),fZr=r(Dd),xZr=r(lU),aZr=[0,44],oZr=[0,1],cZr=[0,1],sZr=[0,1],vZr=[0,1],lZr=[0,0],bZr=r(bv),pZr=r(bv),mZr=r(i1),_Zr=r(OS),yZr=[0,r("the identifier `target`")],dZr=[0,0],hZr=r(qu),kZr=r(el),wZr=r(el),EZr=r(yv),SZr=[0,0],gZr=[0,r("either a call or access of `super`")],FZr=r(yv),TZr=[0,0],OZr=[0,1],IZr=[0,0],AZr=[0,1],NZr=[0,0],CZr=[0,1],PZr=[0,0],DZr=[0,2],LZr=[0,3],RZr=[0,7],jZr=[0,6],GZr=[0,4],MZr=[0,5],BZr=[0,[0,17,[0,2]]],qZr=[0,[0,18,[0,3]]],UZr=[0,[0,19,[0,4]]],HZr=[0,[0,0,[0,5]]],XZr=[0,[0,1,[0,5]]],YZr=[0,[0,2,[0,5]]],VZr=[0,[0,3,[0,5]]],zZr=[0,[0,5,[0,6]]],KZr=[0,[0,7,[0,6]]],WZr=[0,[0,4,[0,6]]],JZr=[0,[0,6,[0,6]]],$Zr=[0,[0,8,[0,7]]],ZZr=[0,[0,9,[0,7]]],QZr=[0,[0,10,[0,7]]],rQr=[0,[0,11,[0,8]]],eQr=[0,[0,12,[0,8]]],nQr=[0,[0,15,[0,9]]],tQr=[0,[0,13,[0,9]]],uQr=[0,[0,14,[1,10]]],iQr=[0,[0,16,[0,9]]],fQr=[0,[0,21,[0,6]]],xQr=[0,[0,20,[0,6]]],aQr=[23,r(Fn)],oQr=[0,[0,8]],cQr=[0,[0,7]],sQr=[0,[0,6]],vQr=[0,[0,10]],lQr=[0,[0,9]],bQr=[0,[0,11]],pQr=[0,[0,5]],mQr=[0,[0,4]],_Qr=[0,[0,2]],yQr=[0,[0,3]],dQr=[0,[0,1]],hQr=[0,[0,0]],kQr=[0,[0,12]],wQr=[0,[0,13]],EQr=[0,[0,14]],SQr=[0,0],gQr=r(qu),FQr=r(i1),TQr=r(OS),OQr=r(el),IQr=r(Os),AQr=r(qu),NQr=r(i1),CQr=r(OS),PQr=r(el),DQr=r(o1),LQr=r(Ra),RQr=[17,r("JSX fragment")],jQr=[0,Ni],GQr=[1,Ni],MQr=r(C),BQr=[0,r(C)],qQr=[0,r(F3)],UQr=r(C),HQr=[0,0,0,0],XQr=[0,r("src/hack_forked/utils/collections/flow_map.ml"),717,36],YQr=[0,0,0],VQr=r(q2),zQr=[0,r(C),0],KQr=r("unexpected PrivateName in Property, expected a PrivateField"),WQr=r(wv),JQr=r(lH),$Qr=[0,0,0],ZQr=r(wv),QQr=r(wv),r0e=r(t1),e0e=r(lv),n0e=[0,1],t0e=[0,1],u0e=[0,1],i0e=r(wv),f0e=r(t1),x0e=r(lv),a0e=r(zO),o0e=r(wu),c0e=r(wx),s0e=r("Internal Error: private name found in object props"),v0e=r(pV),l0e=[0,r(F3)],b0e=r(wu),p0e=r(wx),m0e=r(wu),_0e=r(wx),y0e=r(pV),d0e=[10,r(_i)],h0e=[0,1],k0e=r(c1),w0e=r(K2),E0e=[0,r(GS),1763,21],S0e=r(K2),g0e=r(c1),F0e=[0,r("a declaration, statement or export specifiers")],T0e=[0,40],O0e=r(c1),I0e=r(K2),A0e=[0,r(C),r(C),0],N0e=[0,r(OU)],C0e=r(hU),P0e=r("exports"),D0e=[0,1],L0e=[0,1],R0e=[0,0],j0e=r(hU),G0e=[0,40],M0e=r(Vy),B0e=[0,0],q0e=[0,1],U0e=[0,83],H0e=[0,0],X0e=[0,1],Y0e=r(c1),V0e=r(c1),z0e=r(K2),K0e=r(c1),W0e=[0,r("the keyword `as`")],J0e=r(c1),$0e=r(K2),Z0e=[0,r(OU)],Q0e=[0,r("the keyword `from`")],rre=[0,r(C),r(C),0],ere=[0,r(aU)],nre=r("Label"),tre=[0,r(aU)],ure=[0,0,0],ire=[0,29],fre=[0,r(GS),431,22],xre=[0,28],are=[0,r(GS),450,22],ore=[0,0],cre=r("the token `;`"),sre=[0,0],vre=[0,0],lre=r(wx),bre=r(G2),pre=r(wu),mre=[0,r(KU)],_re=[15,[0,0]],yre=[0,r(KU)],dre=r("use strict"),hre=[0,0,0,0],kre=r(UI),wre=r("Nooo: "),Ere=r(mi),Sre=r("Parser error: No such thing as an expression pattern!"),gre=r(C),Fre=[0,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],Tre=[0,r("src/parser/parser_flow.ml"),DT,28],Ore=[0,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],Ire=r(Bn),Are=r(QY),Nre=r(I2),Cre=r(V4),Pre=r(KH),Dre=r(I2),Lre=r(V4),Rre=r(S7),jre=r(wE),Gre=r("normal"),Mre=r($c),Bre=r("jsxTag"),qre=r("jsxChild"),Ure=r("template"),Hre=r(XH),Xre=r("context"),Yre=r($c),Vre=r("use_strict"),zre=r(Z6),Kre=r("esproposal_export_star_as"),Wre=r("esproposal_decorators"),Jre=r("enums"),$re=r("Internal error: ");function jt(t){if(typeof t=="number")return 0;switch(t[0]){case 0:return[0,jt(t[1])];case 1:return[1,jt(t[1])];case 2:return[2,jt(t[1])];case 3:return[3,jt(t[1])];case 4:return[4,jt(t[1])];case 5:return[5,jt(t[1])];case 6:return[6,jt(t[1])];case 7:return[7,jt(t[1])];case 8:var n=t[1];return[8,n,jt(t[2])];case 9:var e=t[1];return[9,e,e,jt(t[3])];case 10:return[10,jt(t[1])];case 11:return[11,jt(t[1])];case 12:return[12,jt(t[1])];case 13:return[13,jt(t[1])];default:return[14,jt(t[1])]}}function t7(t,n){if(typeof t=="number")return n;switch(t[0]){case 0:return[0,t7(t[1],n)];case 1:return[1,t7(t[1],n)];case 2:return[2,t7(t[1],n)];case 3:return[3,t7(t[1],n)];case 4:return[4,t7(t[1],n)];case 5:return[5,t7(t[1],n)];case 6:return[6,t7(t[1],n)];case 7:return[7,t7(t[1],n)];case 8:var e=t[1];return[8,e,t7(t[2],n)];case 9:var i=t[2],x=t[1];return[9,x,i,t7(t[3],n)];case 10:return[10,t7(t[1],n)];case 11:return[11,t7(t[1],n)];case 12:return[12,t7(t[1],n)];case 13:return[13,t7(t[1],n)];default:return[14,t7(t[1],n)]}}function It(t,n){if(typeof t=="number")return n;switch(t[0]){case 0:return[0,It(t[1],n)];case 1:return[1,It(t[1],n)];case 2:var e=t[1];return[2,e,It(t[2],n)];case 3:var i=t[1];return[3,i,It(t[2],n)];case 4:var x=t[3],c=t[2],s=t[1];return[4,s,c,x,It(t[4],n)];case 5:var p=t[3],y=t[2],T=t[1];return[5,T,y,p,It(t[4],n)];case 6:var E=t[3],h=t[2],w=t[1];return[6,w,h,E,It(t[4],n)];case 7:var G=t[3],A=t[2],S=t[1];return[7,S,A,G,It(t[4],n)];case 8:var M=t[3],K=t[2],V=t[1];return[8,V,K,M,It(t[4],n)];case 9:var f0=t[1];return[9,f0,It(t[2],n)];case 10:return[10,It(t[1],n)];case 11:var m0=t[1];return[11,m0,It(t[2],n)];case 12:var k0=t[1];return[12,k0,It(t[2],n)];case 13:var g0=t[2],e0=t[1];return[13,e0,g0,It(t[3],n)];case 14:var x0=t[2],l=t[1];return[14,l,x0,It(t[3],n)];case 15:return[15,It(t[1],n)];case 16:return[16,It(t[1],n)];case 17:var c0=t[1];return[17,c0,It(t[2],n)];case 18:var t0=t[1];return[18,t0,It(t[2],n)];case 19:return[19,It(t[1],n)];case 20:var a0=t[2],w0=t[1];return[20,w0,a0,It(t[3],n)];case 21:var _0=t[1];return[21,_0,It(t[2],n)];case 22:return[22,It(t[1],n)];case 23:var E0=t[1];return[23,E0,It(t[2],n)];default:var X0=t[2],b=t[1];return[24,b,X0,It(t[3],n)]}}function iN(t,n,e){return t[1]===n?(t[1]=e,1):0}function ke(t){throw[0,B7,t]}function Cu(t){throw[0,eN,t]}G7(0);function Fp(t){return 0<=t?t:-t|0}var Zre=kH;function Te(t,n){var e=nn(t),i=nn(n),x=Pt(e+i|0);return As(t,0,x,0,e),As(n,0,x,e,i),x}function Qre(t){return t?ki0:wi0}function un(t,n){if(t){var e=t[1];return[0,e,un(t[2],n)]}return n}ri0(0);var ree=ZV(1),Lc=ZV(2);function eee(t){function n(e){for(var i=e;;){if(i){var x=i[2],c=i[1];try{m1(c)}catch(y){if(y=Et(y),y[1]!==nz)throw y;var s=y}var i=x;continue}return 0}}return n(ei0(0))}function vl(t,n){return JA(t,n,0,nn(n))}function cz(t){return vl(Lc,t),QV(Lc,10),m1(Lc)}var fN=[0,eee];function sz(t){for(;;){var n=fN[1],e=[0,1],i=1-iN(fN,n,function(x,c){return function(s){return iN(x,1,0)&&u(t,0),u(c,0)}}(e,n));if(!i)return i}}function xN(t){return u(fN[1],0)}ZA(r(mV),xN),oi0(0)&&sz(function(t){return O70(t)});function vz(t){return 25<(t+V3|0)>>>0?t:t+SU|0}var lz=si0(0)[1],ll=(4*ai0(0)|0)-1|0;G7(0);var nee=xi0(0);function Rc(t){for(var n=0,e=t;;){if(e){var n=n+1|0,e=e[2];continue}return n}}function bl(t){return t?t[1]:ke(Ni0)}function bz(t){return t?t[2]:ke(Ai0)}function jc(t,n){for(var e=t,i=n;;){if(e){var x=[0,e[1],i],e=e[2],i=x;continue}return i}}function de(t){return jc(t,0)}function pl(t){if(t){var n=t[1];return un(n,pl(t[2]))}return 0}function k1(t,n){if(n){var e=n[2],i=u(t,n[1]);return[0,i,k1(t,e)]}return 0}function Tp(t,n){for(var e=0,i=n;;){if(i){var x=i[2],e=[0,u(t,i[1]),e],i=x;continue}return e}}function Pu(t,n){for(var e=n;;){if(e){var i=e[2];u(t,e[1]);var e=i;continue}return 0}}function be(t,n,e){for(var i=n,x=e;;){if(x){var c=x[2],i=a(t,i,x[1]),x=c;continue}return i}}function aN(t,n,e){if(n){var i=n[1];return a(t,i,aN(t,n[2],e))}return e}function pz(t,n,e){for(var i=n,x=e;;){if(i){if(x){var c=x[2],s=i[2];a(t,i[1],x[1]);var i=s,x=c;continue}}else if(!x)return 0;return Cu(Ii0)}}function oN(t,n){for(var e=n;;){if(e){var i=e[2],x=BV(e[1],t)===0?1:0;if(x)return x;var e=i;continue}return 0}}function tee(t,n){for(var e=n;;){if(e){var i=e[1],x=e[2],c=i[2];if(BV(i[1],t)===0)return c;var e=x;continue}throw Kt}}function ml(t){var n=0;return function(e){for(var i=n,x=e;;){if(x){var c=x[2],s=x[1];if(u(t,s)){var i=[0,s,i],x=c;continue}var x=c;continue}return de(i)}}}function w1(t,n){var e=Pt(t);return T70(e,0,t,n),e}function mz(t){var n=l7(t),e=Pt(n);return Is(t,0,e,0,n),e}function _z(t,n,e){if(0<=n&&0<=e&&!((l7(t)-e|0)>>0||(c=1):65<=x&&(c=1);else{var s=0;if(x!==32)if(43<=x)switch(x+cy|0){case 5:if(i<(e+2|0)&&1>>0?33<(x+TS|0)>>>0&&(c=1):x===2&&(c=1),!c){var n=n+1|0;continue}var s=t,p=[0,0],y=l7(s)-1|0,T=0;if(!(y<0))for(var E=T;;){var h=Hu(s,E),w=0;if(32<=h){var G=h-34|0,A=0;if(58>>0?93<=G&&(A=1):56<(G-1|0)>>>0&&(w=1,A=1),!A){var S=1;w=2}}else 11<=h?h===13&&(w=1):8<=h&&(w=1);switch(w){case 0:var S=4;break;case 1:var S=2;break}p[1]=p[1]+S|0;var M=E+1|0;if(y!==E){var E=M;continue}break}if(p[1]===l7(s))var K=mz(s);else{var V=Pt(p[1]);p[1]=0;var f0=l7(s)-1|0,m0=0;if(!(f0<0))for(var k0=m0;;){var g0=Hu(s,k0),e0=0;if(35<=g0)g0===92?e0=2:zn<=g0?e0=1:e0=3;else if(32<=g0)34<=g0?e0=2:e0=3;else if(14<=g0)e0=1;else switch(g0){case 8:Jn(V,p[1],92),p[1]++,Jn(V,p[1],98);break;case 9:Jn(V,p[1],92),p[1]++,Jn(V,p[1],x1);break;case 10:Jn(V,p[1],92),p[1]++,Jn(V,p[1],Ht);break;case 13:Jn(V,p[1],92),p[1]++,Jn(V,p[1],u1);break;default:e0=1}switch(e0){case 1:Jn(V,p[1],92),p[1]++,Jn(V,p[1],48+(g0/ni|0)|0),p[1]++,Jn(V,p[1],48+((g0/10|0)%10|0)|0),p[1]++,Jn(V,p[1],48+(g0%10|0)|0);break;case 2:Jn(V,p[1],92),p[1]++,Jn(V,p[1],g0);break;case 3:Jn(V,p[1],g0);break}p[1]++;var x0=k0+1|0;if(f0!==k0){var k0=x0;continue}break}var K=V}var i=K}var l=nn(i),c0=w1(l+2|0,34);return As(i,0,c0,1,l),c0}}function Tz(t,n){var e=Fp(n),i=iz?iz[1]:70;switch(t[2]){case 0:var x=Ri;break;case 1:var x=L7;break;case 2:var x=69;break;case 3:var x=c7;break;case 4:var x=71;break;case 5:var x=i;break;case 6:var x=D7;break;case 7:var x=72;break;default:var x=70}var c=Ez(16);switch(Xv(c,37),t[1]){case 0:break;case 1:Xv(c,43);break;default:Xv(c,32)}return 8<=t[2]&&Xv(c,35),Xv(c,46),Du(c,r(C+e)),Xv(c,x),gz(c)}function Np(t,n){if(13<=t){var e=[0,0],i=nn(n)-1|0,x=0;if(!(i<0))for(var c=x;;){9<(Vr(n,c)+zt|0)>>>0||e[1]++;var s=c+1|0;if(i!==c){var c=s;continue}break}var p=e[1],y=Pt(nn(n)+((p-1|0)/3|0)|0),T=[0,0],E=function(K){return p1(y,T[1],K),T[1]++,0},h=[0,((p-1|0)%3|0)+1|0],w=nn(n)-1|0,G=0;if(!(w<0))for(var A=G;;){var S=Vr(n,A);9<(S+zt|0)>>>0||(h[1]===0&&(E(95),h[1]=3),h[1]+=-1),E(S);var M=A+1|0;if(w!==A){var A=M;continue}break}return y}return n}function oee(t,n){switch(t){case 1:var e=Bx0;break;case 2:var e=qx0;break;case 4:var e=Ux0;break;case 5:var e=Hx0;break;case 6:var e=Xx0;break;case 7:var e=Yx0;break;case 8:var e=Vx0;break;case 9:var e=zx0;break;case 10:var e=Kx0;break;case 11:var e=Wx0;break;case 0:case 13:var e=Jx0;break;case 3:case 14:var e=$x0;break;default:var e=Zx0}return Np(t,hp(e,n))}function cee(t,n){switch(t){case 1:var e=bx0;break;case 2:var e=px0;break;case 4:var e=mx0;break;case 5:var e=_x0;break;case 6:var e=yx0;break;case 7:var e=dx0;break;case 8:var e=hx0;break;case 9:var e=kx0;break;case 10:var e=wx0;break;case 11:var e=Ex0;break;case 0:case 13:var e=Sx0;break;case 3:case 14:var e=gx0;break;default:var e=Fx0}return Np(t,hp(e,n))}function see(t,n){switch(t){case 1:var e=ex0;break;case 2:var e=nx0;break;case 4:var e=tx0;break;case 5:var e=ux0;break;case 6:var e=ix0;break;case 7:var e=fx0;break;case 8:var e=xx0;break;case 9:var e=ax0;break;case 10:var e=ox0;break;case 11:var e=cx0;break;case 0:case 13:var e=sx0;break;case 3:case 14:var e=vx0;break;default:var e=lx0}return Np(t,hp(e,n))}function vee(t,n){switch(t){case 1:var e=Tx0;break;case 2:var e=Ox0;break;case 4:var e=Ix0;break;case 5:var e=Ax0;break;case 6:var e=Nx0;break;case 7:var e=Cx0;break;case 8:var e=Px0;break;case 9:var e=Dx0;break;case 10:var e=Lx0;break;case 11:var e=Rx0;break;case 0:case 13:var e=jx0;break;case 3:case 14:var e=Gx0;break;default:var e=Mx0}return Np(t,L70(e,n))}function vs(t,n,e){function i(m0){switch(t[1]){case 0:var k0=45;break;case 1:var k0=43;break;default:var k0=32}return N70(e,n,k0)}function x(m0){var k0=l70(e);return k0===3?e<0?Zf0:Qf0:4<=k0?$f0:m0}switch(t[2]){case 5:for(var c=zA(Tz(t,n),e),s=0,p=nn(c);;){if(s===p)var y=0;else{var T=Ot(c,s)+l1|0,E=0;if(23>>0?T===55&&(E=1):21<(T-1|0)>>>0&&(E=1),!E){var s=s+1|0;continue}var y=1}var h=y?c:Te(c,rx0);return x(h)}case 6:return i(0);case 7:var w=i(0),G=l7(w);if(G===0)var A=w;else{var S=Pt(G),M=G-1|0,K=0;if(!(M<0))for(var V=K;;){Jn(S,V,vz(Hu(w,V)));var f0=V+1|0;if(M!==V){var V=f0;continue}break}var A=S}return A;case 8:return x(i(0));default:return zA(Tz(t,n),e)}}function kl(t,n,e,i){for(var x=n,c=e,s=i;;){if(typeof s=="number")return u(x,c);switch(s[0]){case 0:var p=s[1];return function(or){return Xn(x,[5,c,or],p)};case 1:var y=s[1];return function(or){var _r=0;if(40<=or)if(or===92)var Ir=Ei0;else zn<=or?_r=1:_r=2;else if(32<=or)if(39<=or)var Ir=Si0;else _r=2;else if(14<=or)_r=1;else switch(or){case 8:var Ir=gi0;break;case 9:var Ir=Fi0;break;case 10:var Ir=Ti0;break;case 13:var Ir=Oi0;break;default:_r=1}switch(_r){case 1:var fe=Pt(4);Jn(fe,0,92),Jn(fe,1,48+(or/ni|0)|0),Jn(fe,2,48+((or/10|0)%10|0)|0),Jn(fe,3,48+(or%10|0)|0);var Ir=fe;break;case 2:var v0=Pt(1);Jn(v0,0,or);var Ir=v0;break}var P=nn(Ir),L=w1(P+2|0,39);return As(Ir,0,L,1,P),Xn(x,[4,c,L],y)};case 2:var T=s[2],E=s[1];return dN(x,c,T,E,function(or){return or});case 3:return dN(x,c,s[2],s[1],aee);case 4:return Cp(x,c,s[4],s[2],s[3],oee,s[1]);case 5:return Cp(x,c,s[4],s[2],s[3],cee,s[1]);case 6:return Cp(x,c,s[4],s[2],s[3],see,s[1]);case 7:return Cp(x,c,s[4],s[2],s[3],vee,s[1]);case 8:var h=s[4],w=s[3],G=s[2],A=s[1];if(typeof G=="number"){if(typeof w=="number")return w?function(or,_r){return Xn(x,[4,c,vs(A,or,_r)],h)}:function(or){return Xn(x,[4,c,vs(A,pN(A),or)],h)};var S=w[1];return function(or){return Xn(x,[4,c,vs(A,S,or)],h)}}else{if(G[0]===0){var M=G[2],K=G[1];if(typeof w=="number")return w?function(or,_r){return Xn(x,[4,c,U7(K,M,vs(A,or,_r))],h)}:function(or){return Xn(x,[4,c,U7(K,M,vs(A,pN(A),or))],h)};var V=w[1];return function(or){return Xn(x,[4,c,U7(K,M,vs(A,V,or))],h)}}var f0=G[1];if(typeof w=="number")return w?function(or,_r,Ir){return Xn(x,[4,c,U7(f0,or,vs(A,_r,Ir))],h)}:function(or,_r){return Xn(x,[4,c,U7(f0,or,vs(A,pN(A),_r))],h)};var m0=w[1];return function(or,_r){return Xn(x,[4,c,U7(f0,or,vs(A,m0,_r))],h)}}case 9:return dN(x,c,s[2],s[1],Qre);case 10:var c=[7,c],s=s[1];continue;case 11:var c=[2,c,s[1]],s=s[2];continue;case 12:var c=[3,c,s[1]],s=s[2];continue;case 13:var k0=s[3],g0=s[2],e0=Ez(16);mN(e0,g0);var x0=gz(e0);return function(or){return Xn(x,[4,c,x0],k0)};case 14:var l=s[3],c0=s[2];return function(or){var _r=or[1],Ir=_t(_r,jt(tu(c0)));if(typeof Ir[2]=="number")return Xn(x,c,It(Ir[1],l));throw Tu};case 15:var t0=s[1];return function(or,_r){return Xn(x,[6,c,function(Ir){return a(or,Ir,_r)}],t0)};case 16:var a0=s[1];return function(or){return Xn(x,[6,c,or],a0)};case 17:var c=[0,c,s[1]],s=s[2];continue;case 18:var w0=s[1];if(w0[0]===0){var _0=s[2],E0=w0[1][1],X0=0,x=function(fe,v0,P){return function(L){return Xn(v0,[1,fe,[0,L]],P)}}(c,x,_0),c=X0,s=E0;continue}var b=s[2],G0=w0[1][1],X=0,x=function(or,_r,Ir){return function(fe){return Xn(_r,[1,or,[1,fe]],Ir)}}(c,x,b),c=X,s=G0;continue;case 19:throw[0,wn,Cf0];case 20:var s0=s[3],dr=[8,c,Pf0];return function(or){return Xn(x,dr,s0)};case 21:var Ar=s[2];return function(or){return Xn(x,[4,c,hp(Nf0,or)],Ar)};case 22:var ar=s[1];return function(or){return Xn(x,[5,c,or],ar)};case 23:var W0=s[2],Lr=s[1];if(typeof Lr=="number")switch(Lr){case 0:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 1:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 2:throw[0,wn,Df0];default:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0])}else switch(Lr[0]){case 0:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 1:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 2:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 3:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 4:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 5:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 6:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 7:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 8:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);case 9:var Tr=Lr[2];return t<50?_N(t+1|0,x,c,Tr,W0):Fu(_N,[0,x,c,Tr,W0]);case 10:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0]);default:return t<50?ct(t+1|0,x,c,W0):Fu(ct,[0,x,c,W0])}default:var Hr=s[3],Or=s[1],xr=u(s[2],0);return t<50?yN(t+1|0,x,c,Hr,Or,xr):Fu(yN,[0,x,c,Hr,Or,xr])}}}function _N(t,n,e,i,x){if(typeof i=="number")return t<50?ct(t+1|0,n,e,x):Fu(ct,[0,n,e,x]);switch(i[0]){case 0:var c=i[1];return function(m0){return ii(n,e,c,x)};case 1:var s=i[1];return function(m0){return ii(n,e,s,x)};case 2:var p=i[1];return function(m0){return ii(n,e,p,x)};case 3:var y=i[1];return function(m0){return ii(n,e,y,x)};case 4:var T=i[1];return function(m0){return ii(n,e,T,x)};case 5:var E=i[1];return function(m0){return ii(n,e,E,x)};case 6:var h=i[1];return function(m0){return ii(n,e,h,x)};case 7:var w=i[1];return function(m0){return ii(n,e,w,x)};case 8:var G=i[2];return function(m0){return ii(n,e,G,x)};case 9:var A=i[3],S=i[2],M=lu(tu(i[1]),S);return function(m0){return ii(n,e,t7(M,A),x)};case 10:var K=i[1];return function(m0,k0){return ii(n,e,K,x)};case 11:var V=i[1];return function(m0){return ii(n,e,V,x)};case 12:var f0=i[1];return function(m0){return ii(n,e,f0,x)};case 13:throw[0,wn,Lf0];default:throw[0,wn,Rf0]}}function ct(t,n,e,i){var x=[8,e,jf0];return t<50?kl(t+1|0,n,x,i):Fu(kl,[0,n,x,i])}function yN(t,n,e,i,x,c){if(x){var s=x[1];return function(y){return lee(n,e,i,s,u(c,y))}}var p=[4,e,c];return t<50?kl(t+1|0,n,p,i):Fu(kl,[0,n,p,i])}function Xn(t,n,e){return QA(kl(0,t,n,e))}function ii(t,n,e,i){return QA(_N(0,t,n,e,i))}function lee(t,n,e,i,x){return QA(yN(0,t,n,e,i,x))}function dN(t,n,e,i,x){if(typeof i=="number")return function(y){return Xn(t,[4,n,u(x,y)],e)};if(i[0]===0){var c=i[2],s=i[1];return function(y){return Xn(t,[4,n,U7(s,c,u(x,y))],e)}}var p=i[1];return function(y,T){return Xn(t,[4,n,U7(p,y,u(x,T))],e)}}function Cp(t,n,e,i,x,c,s){if(typeof i=="number"){if(typeof x=="number")return x?function(G,A){return Xn(t,[4,n,Yv(G,a(c,s,A))],e)}:function(G){return Xn(t,[4,n,a(c,s,G)],e)};var p=x[1];return function(G){return Xn(t,[4,n,Yv(p,a(c,s,G))],e)}}else{if(i[0]===0){var y=i[2],T=i[1];if(typeof x=="number")return x?function(G,A){return Xn(t,[4,n,U7(T,y,Yv(G,a(c,s,A)))],e)}:function(G){return Xn(t,[4,n,U7(T,y,a(c,s,G))],e)};var E=x[1];return function(G){return Xn(t,[4,n,U7(T,y,Yv(E,a(c,s,G)))],e)}}var h=i[1];if(typeof x=="number")return x?function(G,A,S){return Xn(t,[4,n,U7(h,G,Yv(A,a(c,s,S)))],e)}:function(G,A){return Xn(t,[4,n,U7(h,G,a(c,s,A))],e)};var w=x[1];return function(G,A){return Xn(t,[4,n,U7(h,G,Yv(w,a(c,s,A)))],e)}}}function ls(t,n){for(var e=n;;){if(typeof e=="number")return 0;switch(e[0]){case 0:var i=e[1],x=Fz(e[2]);return ls(t,i),vl(t,x);case 1:var c=e[2],s=e[1];if(c[0]===0){var p=c[1];ls(t,s),vl(t,Gf0);var e=p;continue}var y=c[1];ls(t,s),vl(t,Mf0);var e=y;continue;case 6:var T=e[2];return ls(t,e[1]),u(T,t);case 7:return ls(t,e[1]),m1(t);case 8:var E=e[2];return ls(t,e[1]),Cu(E);case 2:case 4:var h=e[2];return ls(t,e[1]),vl(t,h);default:var w=e[2];return ls(t,e[1]),QV(t,w)}}}function bs(t,n){for(var e=n;;){if(typeof e=="number")return 0;switch(e[0]){case 0:var i=e[1],x=Fz(e[2]);return bs(t,i),mn(t,x);case 1:var c=e[2],s=e[1];if(c[0]===0){var p=c[1];bs(t,s),mn(t,Bf0);var e=p;continue}var y=c[1];bs(t,s),mn(t,qf0);var e=y;continue;case 6:var T=e[2];return bs(t,e[1]),mn(t,u(T,0));case 7:var e=e[1];continue;case 8:var E=e[2];return bs(t,e[1]),Cu(E);case 2:case 4:var h=e[2];return bs(t,e[1]),mn(t,h);default:var w=e[2];return bs(t,e[1]),qi(t,w)}}}function bee(t){if(qn(t,Hf0))return Xf0;var n=nn(t);function e(S){var M=Uf0[1],K=$n(C4);return u(Xn(function(V){return bs(K,V),ke(Gt(K))},0,M),t)}function i(S){for(var M=S;;){if(M===n)return M;var K=Ot(t,M);if(K!==9&&K!==32)return M;var M=M+1|0}}function x(S,M){for(var K=M;;){if(K===n||25<(Ot(t,K)+V3|0)>>>0)return K;var K=K+1|0}}function c(S,M){for(var K=M;;){if(K===n)return K;var V=Ot(t,K),f0=0;if(48<=V?58<=V||(f0=1):V===45&&(f0=1),f0){var K=K+1|0;continue}return K}}var s=i(0),p=x(s,s),y=p7(t,s,p-s|0),T=i(p),E=c(T,T);if(T===E)var h=0;else try{var w=Bi(p7(t,T,E-T|0)),h=w}catch(S){if(S=Et(S),S[1]!==B7)throw S;var h=e(0)}i(E)!==n&&e(0);var G=0;if(n0(y,Yf0)&&n0(y,Vf0))var A=n0(y,zf0)?n0(y,Kf0)?n0(y,Wf0)?n0(y,Jf0)?e(0):1:2:3:0;else G=1;if(G)var A=4;return[0,h,A]}function hN(t,n){var e=n[1],i=0;return Xn(function(x){return ls(t,x),0},i,e)}function kN(t){return hN(Lc,t)}function Qn(t){var n=t[1];return Xn(function(e){var i=$n(64);return bs(i,e),Gt(i)},0,n)}var wN=[0,0];function EN(t,n){var e=t[1+n];if(1-(typeof e=="number"?1:0)){if(h1(e)===Y2)return u(Qn(Da0),e);if(h1(e)===ih)for(var i=zA(di0,e),x=0,c=nn(i);;){if(c<=x)return Te(i,hi0);var s=Ot(i,x),p=0;if(48<=s?58<=s||(p=1):s===45&&(p=1),p){var x=x+1|0;continue}return i}return La0}return u(Qn(Pa0),e)}function Oz(t,n){if(t.length-1<=n)return aa0;var e=Oz(t,n+1|0),i=EN(t,n);return a(Qn(oa0),i,e)}function Pp(t){function n(k0){for(var g0=k0;;){if(g0){var e0=g0[2],x0=g0[1];try{var l=0,c0=u(x0,t);l=1}catch{}if(l&&c0)return[0,c0[1]];var g0=e0;continue}return 0}}var e=n(wN[1]);if(e)return e[1];if(t===rN)return Sa0;if(t===uz)return ga0;if(t[1]===tz){var i=t[2],x=i[3],c=i[2],s=i[1];return b7(Qn(nN),s,c,x,x+5|0,Fa0)}if(t[1]===wn){var p=t[2],y=p[3],T=p[2],E=p[1];return b7(Qn(nN),E,T,y,y+6|0,Ta0)}if(t[1]===sl){var h=t[2],w=h[3],G=h[2],A=h[1];return b7(Qn(nN),A,G,w,w+6|0,Oa0)}if(h1(t)===0){var S=t.length-1,M=t[1][1];if(2>>0)var K=Oz(t,2),V=EN(t,1),f0=a(Qn(Ia0),V,K);else switch(S){case 0:var f0=Aa0;break;case 1:var f0=Na0;break;default:var m0=EN(t,1),f0=u(Qn(Ca0),m0)}return Te(M,f0)}return t[1]}function SN(t,n){var e=F70(n),i=e.length-1-1|0,x=0;if(!(i<0))for(var c=x;;){var s=nu(e,c)[1+c],p=function(f0){return function(m0){return m0?f0===0?ma0:_a0:f0===0?ya0:da0}}(c);if(s[0]===0)var y=s[5],T=s[4],E=s[3],h=s[6]?ha0:ka0,w=s[2],G=s[7],A=p(s[1]),M=[0,mi0(Qn(wa0),A,G,w,h,E,T,y)];else if(s[1])var M=0;else var S=p(0),M=[0,u(Qn(Ea0),S)];if(M){var K=M[1];u(hN(t,ba0),K)}var V=c+1|0;if(i!==c){var c=V;continue}break}return 0}function Iz(t){for(;;){var n=wN[1],e=1-iN(wN,n,[0,t,n]);if(!e)return e}}var pee=Ra0.slice();function mee(t,n){var e=Pp(t);u(kN(la0),e),SN(Lc,n);var i=U70(0);if(i<0){var x=Fp(i);cz(nu(pee,x)[1+x])}return m1(Lc)}var _ee=[0];ZA(r(BH),function(t,n){try{try{var e=n?_ee:HV(0);try{xN(0)}catch{}try{var i=mee(t,e),x=i}catch(y){y=Et(y);var c=Pp(t);u(kN(ca0),c),SN(Lc,e);var s=Pp(y);u(kN(sa0),s),SN(Lc,HV(0));var x=m1(Lc)}var p=x}catch(y){if(y=Et(y),y!==rN)throw y;var p=cz(va0)}return p}catch{return 0}});var gN=[wt,to0,G7(0)],Dp=0,Az=-1;function wl(t,n){return t[13]=t[13]+n[3]|0,vN(n,t[28])}var Nz=1000000010;function FN(t,n){return ir(t[17],n,0,nn(n))}function Lp(t){return u(t[19],0)}function Cz(t,n,e){return t[9]=t[9]-n|0,FN(t,e),t[11]=0,0}function Rp(t,n){var e=n0(n,no0);return e&&Cz(t,nn(n),n)}function Vv(t,n,e){var i=n[3],x=n[2];Rp(t,n[1]),Lp(t),t[11]=1;var c=(t[6]-e|0)+x|0,s=t[8],p=s<=c?s:c;return t[10]=p,t[9]=t[6]-t[10]|0,u(t[21],t[10]),Rp(t,i)}function Pz(t,n){return Vv(t,eo0,n)}function El(t,n){var e=n[2],i=n[3];return Rp(t,n[1]),t[9]=t[9]-e|0,u(t[20],e),Rp(t,i)}function Dz(t){for(;;){var n=t[28][2],e=n?[0,n[1]]:0;if(e){var i=e[1],x=i[1],c=i[2],s=0<=x?1:0,p=i[3],y=t[13]-t[12]|0,T=s||(t[9]<=y?1:0);if(T){var E=t[28],h=E[2];if(h){if(h[2]){var w=h[2];E[1]=E[1]-1|0,E[2]=w}else sN(E);var G=0<=x?x:Nz;if(typeof c=="number")switch(c){case 0:var A=Hv(t[3]);if(A){var S=A[1][1],M=function(L,Q){if(Q){var i0=Q[1],l0=Q[2];return q70(L,i0)?[0,L,Q]:[0,i0,M(L,l0)]}return[0,L,0]};S[1]=M(t[6]-t[9]|0,S[1])}break;case 1:Uv(t[2]);break;case 2:Uv(t[3]);break;case 3:var K=Hv(t[2]);K?Pz(t,K[1][2]):Lp(t);break;case 4:if(t[10]!==(t[6]-t[9]|0)){var V=t[28],f0=V[2];if(f0){var m0=f0[1];if(f0[2]){var k0=f0[2];V[1]=V[1]-1|0,V[2]=k0;var g0=[0,m0]}else{sN(V);var g0=[0,m0]}}else var g0=0;if(g0){var e0=g0[1],x0=e0[1];t[12]=t[12]-e0[3]|0,t[9]=t[9]+x0|0}}break;default:var l=Uv(t[5]);l&&FN(t,u(t[25],l[1]))}else switch(c[0]){case 0:Cz(t,G,c[1]);break;case 1:var c0=c[2],t0=c[1],a0=c0[1],w0=c0[2],_0=Hv(t[2]);if(_0){var E0=_0[1],X0=E0[2];switch(E0[1]){case 0:El(t,t0);break;case 1:Vv(t,c0,X0);break;case 2:Vv(t,c0,X0);break;case 3:t[9]<(G+nn(a0)|0)?Vv(t,c0,X0):El(t,t0);break;case 4:t[11]||!(t[9]<(G+nn(a0)|0)||((t[6]-X0|0)+w0|0)>>0)&&Pz(t,_r)}else Lp(t)}var fe=t[9]-Wr|0,v0=Rr===1?1:t[9]>>18|0),e(Rt|(n>>>12|0)&63),e(Rt|(n>>>6|0)&63),e(Rt|n&63)):Vd<=n?(e(dv|n>>>12|0),e(Rt|(n>>>6|0)&63),e(Rt|n&63)):Rt<=n?(e(at|n>>>6|0),e(Rt|n&63)):e(n)}var qN=j0,u7=null,eK=void 0;function Bp(t){return t!==eK?1:0}var Dee=qN.Array,UN=[wt,po0,G7(0)],Lee=qN.Error;Fee(mo0,[0,UN,{}]);function nK(t){throw t}Iz(function(t){return t[1]===UN?[0,M7(t[2].toString())]:0}),Iz(function(t){return t instanceof Dee?0:[0,M7(t.toString())]});var Dr=bu(m3r,p3r),Ln=bu(y3r,_3r),qp=bu(h3r,d3r),Tl=bu(w3r,k3r),F1=bu(S3r,E3r),HN=bu(F3r,g3r),tK=bu(O3r,T3r),XN=bu(A3r,I3r),zv=bu(C3r,N3r),Up=bu(D3r,P3r),Je=bu(R3r,L3r),Xu=bu(G3r,j3r),qe=bu(B3r,M3r),YN=bu(U3r,q3r),di=bu(X3r,H3r),uu=bu(V3r,Y3r),T1=bu(K3r,z3r),Ps=bu(J3r,W3r),VN=function t(n,e,i,x){return t.fun(n,e,i,x)},uK=function t(n,e,i){return t.fun(n,e,i)},Ree=bu(Z3r,$3r);N(VN,function(t,n,e,i){u(f(e),Z8r),a(f(e),r3r,Q8r);var x=i[1];u(f(e),e3r);var c=0;be(function(y,T){y&&u(f(e),$8r);function E(h){return u(t,h)}return ir(uu[1],E,e,T),1},c,x),u(f(e),n3r),u(f(e),t3r),u(f(e),u3r),a(f(e),f3r,i3r);var s=i[2];u(f(e),x3r);var p=0;return be(function(y,T){y&&u(f(e),J8r);function E(h){return u(t,h)}return ir(uu[1],E,e,T),1},p,s),u(f(e),a3r),u(f(e),o3r),u(f(e),c3r),a(f(e),v3r,s3r),a(n,e,i[3]),u(f(e),l3r),u(f(e),b3r)}),N(uK,function(t,n,e){var i=a(VN,t,n);return a(P0(W8r),i,e)}),pu(Q3r,Dr,[0,VN,uK]);var zN=function t(n,e,i,x){return t.fun(n,e,i,x)},iK=function t(n,e,i){return t.fun(n,e,i)},Hp=function t(n,e,i){return t.fun(n,e,i)},fK=function t(n,e){return t.fun(n,e)};N(zN,function(t,n,e,i){u(f(e),V8r),a(n,e,i[1]),u(f(e),z8r);var x=i[2];return ir(Hp,function(c){return u(t,c)},e,x),u(f(e),K8r)}),N(iK,function(t,n,e){var i=a(zN,t,n);return a(P0(Y8r),i,e)}),N(Hp,function(t,n,e){u(f(n),C8r),a(f(n),D8r,P8r);var i=e[1];a(f(n),L8r,i),u(f(n),R8r),u(f(n),j8r),a(f(n),M8r,G8r);var x=e[2];if(x){g(n,B8r);var c=x[1],s=function(y,T){return g(y,N8r)},p=function(y){return u(t,y)};R(Dr[1],p,s,n,c),g(n,q8r)}else g(n,U8r);return u(f(n),H8r),u(f(n),X8r)}),N(fK,function(t,n){var e=u(Hp,t);return a(P0(A8r),e,n)}),pu(r6r,Ln,[0,zN,iK,Hp,fK]);var KN=function t(n,e,i){return t.fun(n,e,i)},xK=function t(n,e){return t.fun(n,e)},Xp=function t(n,e,i){return t.fun(n,e,i)},aK=function t(n,e){return t.fun(n,e)};N(KN,function(t,n,e){u(f(n),T8r),a(t,n,e[1]),u(f(n),O8r);var i=e[2];return ir(Xp,function(x){return u(t,x)},n,i),u(f(n),I8r)}),N(xK,function(t,n){var e=u(KN,t);return a(P0(F8r),e,n)}),N(Xp,function(t,n,e){u(f(n),l8r),a(f(n),p8r,b8r);var i=e[1];a(f(n),m8r,i),u(f(n),_8r),u(f(n),y8r),a(f(n),h8r,d8r);var x=e[2];if(x){g(n,k8r);var c=x[1],s=function(y,T){return g(y,v8r)},p=function(y){return u(t,y)};R(Dr[1],p,s,n,c),g(n,w8r)}else g(n,E8r);return u(f(n),S8r),u(f(n),g8r)}),N(aK,function(t,n){var e=u(Xp,t);return a(P0(s8r),e,n)}),pu(e6r,qp,[0,KN,xK,Xp,aK]);function oK(t,n){u(f(t),Q4r),a(f(t),e8r,r8r);var e=n[1];a(f(t),n8r,e),u(f(t),t8r),u(f(t),u8r),a(f(t),f8r,i8r);var i=n[2];return a(f(t),x8r,i),u(f(t),a8r),u(f(t),o8r)}var cK=[0,oK,function(t){return a(P0(c8r),oK,t)}],WN=function t(n,e,i){return t.fun(n,e,i)},sK=function t(n,e){return t.fun(n,e)},Yp=function t(n,e){return t.fun(n,e)},vK=function t(n){return t.fun(n)};N(WN,function(t,n,e){u(f(n),R4r),a(f(n),G4r,j4r),a(Yp,n,e[1]),u(f(n),M4r),u(f(n),B4r),a(f(n),U4r,q4r);var i=e[2];a(f(n),H4r,i),u(f(n),X4r),u(f(n),Y4r),a(f(n),z4r,V4r);var x=e[3];if(x){g(n,K4r);var c=x[1],s=function(y,T){return g(y,L4r)},p=function(y){return u(t,y)};R(Dr[1],p,s,n,c),g(n,W4r)}else g(n,J4r);return u(f(n),$4r),u(f(n),Z4r)}),N(sK,function(t,n){var e=u(WN,t);return a(P0(D4r),e,n)}),N(Yp,function(t,n){if(typeof n=="number")return g(t,d4r);switch(n[0]){case 0:u(f(t),h4r);var e=n[1];return a(f(t),k4r,e),u(f(t),w4r);case 1:u(f(t),E4r);var i=n[1];return a(f(t),S4r,i),u(f(t),g4r);case 2:u(f(t),F4r);var x=n[1];return a(f(t),T4r,x),u(f(t),O4r);case 3:u(f(t),I4r);var c=n[1];return a(f(t),A4r,c),u(f(t),N4r);default:return u(f(t),C4r),a(cK[1],t,n[1]),u(f(t),P4r)}}),N(vK,function(t){return a(P0(y4r),Yp,t)}),pu(n6r,Tl,[0,cK,WN,sK,Yp,vK]);var JN=function t(n,e,i){return t.fun(n,e,i)},lK=function t(n,e){return t.fun(n,e)};N(JN,function(t,n,e){u(f(n),r4r),a(f(n),n4r,e4r);var i=e[1];a(f(n),t4r,i),u(f(n),u4r),u(f(n),i4r),a(f(n),x4r,f4r);var x=e[2];a(f(n),a4r,x),u(f(n),o4r),u(f(n),c4r),a(f(n),v4r,s4r);var c=e[3];if(c){g(n,l4r);var s=c[1],p=function(T,E){return g(T,Qbr)},y=function(T){return u(t,T)};R(Dr[1],y,p,n,s),g(n,b4r)}else g(n,p4r);return u(f(n),m4r),u(f(n),_4r)}),N(lK,function(t,n){var e=u(JN,t);return a(P0(Zbr),e,n)}),pu(t6r,F1,[0,JN,lK]);var $N=function t(n,e,i){return t.fun(n,e,i)},bK=function t(n,e){return t.fun(n,e)};N($N,function(t,n,e){u(f(n),Dbr),a(f(n),Rbr,Lbr);var i=e[1];a(f(n),jbr,i),u(f(n),Gbr),u(f(n),Mbr),a(f(n),qbr,Bbr);var x=e[2];a(f(n),Ubr,x),u(f(n),Hbr),u(f(n),Xbr),a(f(n),Vbr,Ybr);var c=e[3];if(c){g(n,zbr);var s=c[1],p=function(T,E){return g(T,Pbr)},y=function(T){return u(t,T)};R(Dr[1],y,p,n,s),g(n,Kbr)}else g(n,Wbr);return u(f(n),Jbr),u(f(n),$br)}),N(bK,function(t,n){var e=u($N,t);return a(P0(Cbr),e,n)}),pu(u6r,HN,[0,$N,bK]);var ZN=function t(n,e,i){return t.fun(n,e,i)},pK=function t(n,e){return t.fun(n,e)};N(ZN,function(t,n,e){u(f(n),bbr),a(f(n),mbr,pbr);var i=e[1];a(f(n),_br,i),u(f(n),ybr),u(f(n),dbr),a(f(n),kbr,hbr);var x=e[2];a(f(n),wbr,x),u(f(n),Ebr),u(f(n),Sbr),a(f(n),Fbr,gbr);var c=e[3];if(c){g(n,Tbr);var s=c[1],p=function(T,E){return g(T,lbr)},y=function(T){return u(t,T)};R(Dr[1],y,p,n,s),g(n,Obr)}else g(n,Ibr);return u(f(n),Abr),u(f(n),Nbr)}),N(pK,function(t,n){var e=u(ZN,t);return a(P0(vbr),e,n)}),pu(i6r,tK,[0,ZN,pK]);var QN=function t(n,e,i){return t.fun(n,e,i)},mK=function t(n,e){return t.fun(n,e)};N(QN,function(t,n,e){u(f(n),Qlr),a(f(n),ebr,rbr);var i=e[1];a(f(n),nbr,i),u(f(n),tbr),u(f(n),ubr),a(f(n),fbr,ibr);var x=e[2];if(x){g(n,xbr);var c=x[1],s=function(y,T){return g(y,Zlr)},p=function(y){return u(t,y)};R(Dr[1],p,s,n,c),g(n,abr)}else g(n,obr);return u(f(n),cbr),u(f(n),sbr)}),N(mK,function(t,n){var e=u(QN,t);return a(P0($lr),e,n)}),pu(f6r,XN,[0,QN,mK]);var rC=function t(n,e,i){return t.fun(n,e,i)},_K=function t(n,e){return t.fun(n,e)},Vp=function t(n,e){return t.fun(n,e)},yK=function t(n){return t.fun(n)},zp=function t(n,e,i){return t.fun(n,e,i)},dK=function t(n,e){return t.fun(n,e)};N(rC,function(t,n,e){u(f(n),Klr),a(t,n,e[1]),u(f(n),Wlr);var i=e[2];return ir(zp,function(x){return u(t,x)},n,i),u(f(n),Jlr)}),N(_K,function(t,n){var e=u(rC,t);return a(P0(zlr),e,n)}),N(Vp,function(t,n){return n?g(t,Ylr):g(t,Vlr)}),N(yK,function(t){return a(P0(Xlr),Vp,t)}),N(zp,function(t,n,e){u(f(n),Clr),a(f(n),Dlr,Plr),a(Vp,n,e[1]),u(f(n),Llr),u(f(n),Rlr),a(f(n),Glr,jlr);var i=e[2];if(i){g(n,Mlr);var x=i[1],c=function(p,y){return g(p,Nlr)},s=function(p){return u(t,p)};R(Dr[1],s,c,n,x),g(n,Blr)}else g(n,qlr);return u(f(n),Ulr),u(f(n),Hlr)}),N(dK,function(t,n){var e=u(zp,t);return a(P0(Alr),e,n)}),pu(x6r,zv,[0,rC,_K,Vp,yK,zp,dK]);var eC=function t(n,e,i,x){return t.fun(n,e,i,x)},hK=function t(n,e,i){return t.fun(n,e,i)},nC=function t(n,e,i,x){return t.fun(n,e,i,x)},kK=function t(n,e,i){return t.fun(n,e,i)};N(eC,function(t,n,e,i){u(f(e),Tlr),a(t,e,i[1]),u(f(e),Olr);var x=i[2];function c(p){return u(n,p)}function s(p){return u(t,p)}return R(Up[3],s,c,e,x),u(f(e),Ilr)}),N(hK,function(t,n,e){var i=a(eC,t,n);return a(P0(Flr),i,e)}),N(nC,function(t,n,e,i){u(f(e),blr),a(f(e),mlr,plr);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(qe[31],s,c,e,x),u(f(e),_lr),u(f(e),ylr),a(f(e),hlr,dlr);var p=i[2];if(p){g(e,klr);var y=p[1],T=function(h,w){return g(h,llr)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,wlr)}else g(e,Elr);return u(f(e),Slr),u(f(e),glr)}),N(kK,function(t,n,e){var i=a(nC,t,n);return a(P0(vlr),i,e)}),pu(a6r,Up,[0,eC,hK,nC,kK]);var tC=function t(n,e,i,x){return t.fun(n,e,i,x)},wK=function t(n,e,i){return t.fun(n,e,i)},Kp=function t(n,e,i,x){return t.fun(n,e,i,x)},EK=function t(n,e,i){return t.fun(n,e,i)};N(tC,function(t,n,e,i){u(f(e),olr),a(t,e,i[1]),u(f(e),clr);var x=i[2];function c(s){return u(n,s)}return R(Kp,function(s){return u(t,s)},c,e,x),u(f(e),slr)}),N(wK,function(t,n,e){var i=a(tC,t,n);return a(P0(alr),i,e)}),N(Kp,function(t,n,e,i){u(f(e),Y2r),a(f(e),z2r,V2r);var x=i[1];if(x){g(e,K2r);var c=x[1],s=function(w){return u(n,w)},p=function(w){return u(t,w)};R(Ln[1],p,s,e,c),g(e,W2r)}else g(e,J2r);u(f(e),$2r),u(f(e),Z2r),a(f(e),rlr,Q2r);var y=i[2];function T(w){return u(n,w)}function E(w){return u(t,w)}R(Je[13],E,T,e,y),u(f(e),elr),u(f(e),nlr),a(f(e),ulr,tlr);var h=i[3];return a(f(e),ilr,h),u(f(e),flr),u(f(e),xlr)}),N(EK,function(t,n,e){var i=a(Kp,t,n);return a(P0(X2r),i,e)});var uC=[0,tC,wK,Kp,EK],iC=function t(n,e,i,x){return t.fun(n,e,i,x)},SK=function t(n,e,i){return t.fun(n,e,i)},Wp=function t(n,e,i,x){return t.fun(n,e,i,x)},gK=function t(n,e,i){return t.fun(n,e,i)};N(iC,function(t,n,e,i){u(f(e),q2r),a(t,e,i[1]),u(f(e),U2r);var x=i[2];function c(s){return u(n,s)}return R(Wp,function(s){return u(t,s)},c,e,x),u(f(e),H2r)}),N(SK,function(t,n,e){var i=a(iC,t,n);return a(P0(B2r),i,e)}),N(Wp,function(t,n,e,i){u(f(e),O2r),a(f(e),A2r,I2r);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(uC[1],s,c,e,x),u(f(e),N2r),u(f(e),C2r),a(f(e),D2r,P2r);var p=i[2];if(p){g(e,L2r);var y=p[1],T=function(h,w){return g(h,T2r)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,R2r)}else g(e,j2r);return u(f(e),G2r),u(f(e),M2r)}),N(gK,function(t,n,e){var i=a(Wp,t,n);return a(P0(F2r),i,e)});var FK=[0,iC,SK,Wp,gK],fC=function t(n,e,i,x){return t.fun(n,e,i,x)},TK=function t(n,e,i){return t.fun(n,e,i)},Jp=function t(n,e,i,x){return t.fun(n,e,i,x)},OK=function t(n,e,i){return t.fun(n,e,i)};N(fC,function(t,n,e,i){u(f(e),E2r),a(t,e,i[1]),u(f(e),S2r);var x=i[2];function c(s){return u(n,s)}return R(Jp,function(s){return u(t,s)},c,e,x),u(f(e),g2r)}),N(TK,function(t,n,e){var i=a(fC,t,n);return a(P0(w2r),i,e)}),N(Jp,function(t,n,e,i){u(f(e),c2r),a(f(e),v2r,s2r);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(Je[17],s,c,e,x),u(f(e),l2r),u(f(e),b2r),a(f(e),m2r,p2r);var p=i[2];if(p){g(e,_2r);var y=p[1],T=function(h,w){return g(h,o2r)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,y2r)}else g(e,d2r);return u(f(e),h2r),u(f(e),k2r)}),N(OK,function(t,n,e){var i=a(Jp,t,n);return a(P0(a2r),i,e)});var IK=[0,fC,TK,Jp,OK],xC=function t(n,e,i,x){return t.fun(n,e,i,x)},AK=function t(n,e,i){return t.fun(n,e,i)},$p=function t(n,e,i,x){return t.fun(n,e,i,x)},NK=function t(n,e,i){return t.fun(n,e,i)};N(xC,function(t,n,e,i){u(f(e),i2r),a(t,e,i[1]),u(f(e),f2r);var x=i[2];function c(s){return u(n,s)}return R($p,function(s){return u(t,s)},c,e,x),u(f(e),x2r)}),N(AK,function(t,n,e){var i=a(xC,t,n);return a(P0(u2r),i,e)}),N($p,function(t,n,e,i){u(f(e),Avr),a(f(e),Cvr,Nvr);var x=i[1];if(x){g(e,Pvr);var c=x[1],s=function(V){return u(n,V)},p=function(V){return u(t,V)};R(IK[1],p,s,e,c),g(e,Dvr)}else g(e,Lvr);u(f(e),Rvr),u(f(e),jvr),a(f(e),Mvr,Gvr);var y=i[2];u(f(e),Bvr);var T=0;be(function(V,f0){V&&u(f(e),Ivr);function m0(g0){return u(n,g0)}function k0(g0){return u(t,g0)}return R(uC[1],k0,m0,e,f0),1},T,y),u(f(e),qvr),u(f(e),Uvr),u(f(e),Hvr),a(f(e),Yvr,Xvr);var E=i[3];if(E){g(e,Vvr);var h=E[1],w=function(V){return u(n,V)},G=function(V){return u(t,V)};R(FK[1],G,w,e,h),g(e,zvr)}else g(e,Kvr);u(f(e),Wvr),u(f(e),Jvr),a(f(e),Zvr,$vr);var A=i[4];if(A){g(e,Qvr);var S=A[1],M=function(V,f0){u(f(V),Tvr);var m0=0;return be(function(k0,g0){k0&&u(f(V),Fvr);function e0(x0){return u(t,x0)}return ir(uu[1],e0,V,g0),1},m0,f0),u(f(V),Ovr)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,r2r)}else g(e,e2r);return u(f(e),n2r),u(f(e),t2r)}),N(NK,function(t,n,e){var i=a($p,t,n);return a(P0(gvr),i,e)});var CK=[0,xC,AK,$p,NK],aC=function t(n,e,i,x){return t.fun(n,e,i,x)},PK=function t(n,e,i){return t.fun(n,e,i)};N(aC,function(t,n,e,i){u(f(e),nvr),a(f(e),uvr,tvr);var x=i[1];if(x){g(e,ivr);var c=x[1],s=function(V){return u(n,V)},p=function(V){return u(t,V)};R(Je[22][1],p,s,e,c),g(e,fvr)}else g(e,xvr);u(f(e),avr),u(f(e),ovr),a(f(e),svr,cvr);var y=i[2];function T(V){return u(n,V)}function E(V){return u(t,V)}R(CK[1],E,T,e,y),u(f(e),vvr),u(f(e),lvr),a(f(e),pvr,bvr);var h=i[3];function w(V){return u(n,V)}function G(V){return u(t,V)}R(Je[13],G,w,e,h),u(f(e),mvr),u(f(e),_vr),a(f(e),dvr,yvr);var A=i[4];if(A){g(e,hvr);var S=A[1],M=function(V,f0){return g(V,evr)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,kvr)}else g(e,wvr);return u(f(e),Evr),u(f(e),Svr)}),N(PK,function(t,n,e){var i=a(aC,t,n);return a(P0(rvr),i,e)});var Ol=[0,uC,FK,IK,CK,aC,PK],Zp=function t(n,e,i,x){return t.fun(n,e,i,x)},DK=function t(n,e,i){return t.fun(n,e,i)},Qp=function t(n,e,i,x){return t.fun(n,e,i,x)},LK=function t(n,e,i){return t.fun(n,e,i)},r5=function t(n,e,i,x){return t.fun(n,e,i,x)},RK=function t(n,e,i){return t.fun(n,e,i)};N(Zp,function(t,n,e,i){if(i[0]===0){u(f(e),J1r);var x=i[1],c=function(T){return u(n,T)},s=function(T){return u(t,T)};return R(Ln[1],s,c,e,x),u(f(e),$1r)}u(f(e),Z1r);var p=i[1];function y(T){return u(n,T)}return R(Qp,function(T){return u(t,T)},y,e,p),u(f(e),Q1r)}),N(DK,function(t,n,e){var i=a(Zp,t,n);return a(P0(W1r),i,e)}),N(Qp,function(t,n,e,i){u(f(e),V1r),a(t,e,i[1]),u(f(e),z1r);var x=i[2];function c(s){return u(n,s)}return R(r5,function(s){return u(t,s)},c,e,x),u(f(e),K1r)}),N(LK,function(t,n,e){var i=a(Qp,t,n);return a(P0(Y1r),i,e)}),N(r5,function(t,n,e,i){u(f(e),R1r),a(f(e),G1r,j1r);var x=i[1];function c(T){return u(n,T)}R(Zp,function(T){return u(t,T)},c,e,x),u(f(e),M1r),u(f(e),B1r),a(f(e),U1r,q1r);var s=i[2];function p(T){return u(n,T)}function y(T){return u(t,T)}return R(Ln[1],y,p,e,s),u(f(e),H1r),u(f(e),X1r)}),N(RK,function(t,n,e){var i=a(r5,t,n);return a(P0(L1r),i,e)});var jK=[0,Zp,DK,Qp,LK,r5,RK],oC=function t(n,e,i,x){return t.fun(n,e,i,x)},GK=function t(n,e,i){return t.fun(n,e,i)};N(oC,function(t,n,e,i){u(f(e),m1r),a(f(e),y1r,_1r);var x=i[1];function c(S){return u(n,S)}function s(S){return u(t,S)}R(jK[1],s,c,e,x),u(f(e),d1r),u(f(e),h1r),a(f(e),w1r,k1r);var p=i[2];if(p){g(e,E1r);var y=p[1],T=function(S){return u(n,S)},E=function(S){return u(t,S)};R(Je[23][1],E,T,e,y),g(e,S1r)}else g(e,g1r);u(f(e),F1r),u(f(e),T1r),a(f(e),I1r,O1r);var h=i[3];if(h){g(e,A1r);var w=h[1],G=function(S,M){return g(S,p1r)},A=function(S){return u(t,S)};R(Dr[1],A,G,e,w),g(e,N1r)}else g(e,C1r);return u(f(e),P1r),u(f(e),D1r)}),N(GK,function(t,n,e){var i=a(oC,t,n);return a(P0(b1r),i,e)});var cC=[0,jK,oC,GK],sC=function t(n,e,i,x){return t.fun(n,e,i,x)},MK=function t(n,e,i){return t.fun(n,e,i)};N(sC,function(t,n,e,i){u(f(e),Zsr),a(f(e),r1r,Qsr);var x=i[1];function c(A){return u(n,A)}function s(A){return u(t,A)}R(Je[13],s,c,e,x),u(f(e),e1r),u(f(e),n1r),a(f(e),u1r,t1r);var p=i[2];function y(A){return u(n,A)}function T(A){return u(t,A)}R(Je[13],T,y,e,p),u(f(e),i1r),u(f(e),f1r),a(f(e),a1r,x1r);var E=i[3];if(E){g(e,o1r);var h=E[1],w=function(A,S){return g(A,$sr)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,c1r)}else g(e,s1r);return u(f(e),v1r),u(f(e),l1r)}),N(MK,function(t,n,e){var i=a(sC,t,n);return a(P0(Jsr),i,e)});var vC=[0,sC,MK],lC=function t(n,e,i,x){return t.fun(n,e,i,x)},BK=function t(n,e,i){return t.fun(n,e,i)};N(lC,function(t,n,e,i){u(f(e),Bsr),a(f(e),Usr,qsr);var x=i[1];function c(y){return u(n,y)}function s(y){return u(t,y)}R(vC[1],s,c,e,x),u(f(e),Hsr),u(f(e),Xsr),a(f(e),Vsr,Ysr);var p=i[2];return a(f(e),zsr,p),u(f(e),Ksr),u(f(e),Wsr)}),N(BK,function(t,n,e){var i=a(lC,t,n);return a(P0(Msr),i,e)});var qK=[0,lC,BK],bC=function t(n,e,i,x){return t.fun(n,e,i,x)},UK=function t(n,e,i){return t.fun(n,e,i)},e5=function t(n,e,i,x){return t.fun(n,e,i,x)},HK=function t(n,e,i){return t.fun(n,e,i)},n5=function t(n,e,i,x){return t.fun(n,e,i,x)},XK=function t(n,e,i){return t.fun(n,e,i)};N(bC,function(t,n,e,i){u(f(e),Rsr),a(t,e,i[1]),u(f(e),jsr);var x=i[2];function c(s){return u(n,s)}return R(e5,function(s){return u(t,s)},c,e,x),u(f(e),Gsr)}),N(UK,function(t,n,e){var i=a(bC,t,n);return a(P0(Lsr),i,e)}),N(e5,function(t,n,e,i){u(f(e),Vcr),a(f(e),Kcr,zcr);var x=i[1];function c(m0){return u(n,m0)}function s(m0){return u(t,m0)}R(qe[7][1][1],s,c,e,x),u(f(e),Wcr),u(f(e),Jcr),a(f(e),Zcr,$cr);var p=i[2];function y(m0){return u(n,m0)}R(n5,function(m0){return u(t,m0)},y,e,p),u(f(e),Qcr),u(f(e),rsr),a(f(e),nsr,esr);var T=i[3];a(f(e),tsr,T),u(f(e),usr),u(f(e),isr),a(f(e),xsr,fsr);var E=i[4];a(f(e),asr,E),u(f(e),osr),u(f(e),csr),a(f(e),vsr,ssr);var h=i[5];a(f(e),lsr,h),u(f(e),bsr),u(f(e),psr),a(f(e),_sr,msr);var w=i[6];a(f(e),ysr,w),u(f(e),dsr),u(f(e),hsr),a(f(e),wsr,ksr);var G=i[7];if(G){g(e,Esr);var A=G[1],S=function(m0){return u(t,m0)};ir(zv[1],S,e,A),g(e,Ssr)}else g(e,gsr);u(f(e),Fsr),u(f(e),Tsr),a(f(e),Isr,Osr);var M=i[8];if(M){g(e,Asr);var K=M[1],V=function(m0,k0){return g(m0,Ycr)},f0=function(m0){return u(t,m0)};R(Dr[1],f0,V,e,K),g(e,Nsr)}else g(e,Csr);return u(f(e),Psr),u(f(e),Dsr)}),N(HK,function(t,n,e){var i=a(e5,t,n);return a(P0(Xcr),i,e)}),N(n5,function(t,n,e,i){switch(i[0]){case 0:u(f(e),Ccr);var x=i[1],c=function(S){return u(n,S)},s=function(S){return u(t,S)};return R(Je[13],s,c,e,x),u(f(e),Pcr);case 1:var p=i[1];u(f(e),Dcr),u(f(e),Lcr),a(t,e,p[1]),u(f(e),Rcr);var y=p[2],T=function(S){return u(n,S)},E=function(S){return u(t,S)};return R(Ol[5],E,T,e,y),u(f(e),jcr),u(f(e),Gcr);default:var h=i[1];u(f(e),Mcr),u(f(e),Bcr),a(t,e,h[1]),u(f(e),qcr);var w=h[2],G=function(S){return u(n,S)},A=function(S){return u(t,S)};return R(Ol[5],A,G,e,w),u(f(e),Ucr),u(f(e),Hcr)}}),N(XK,function(t,n,e){var i=a(n5,t,n);return a(P0(Ncr),i,e)});var YK=[0,bC,UK,e5,HK,n5,XK],pC=function t(n,e,i,x){return t.fun(n,e,i,x)},VK=function t(n,e,i){return t.fun(n,e,i)},t5=function t(n,e,i,x){return t.fun(n,e,i,x)},zK=function t(n,e,i){return t.fun(n,e,i)};N(pC,function(t,n,e,i){u(f(e),Ocr),a(t,e,i[1]),u(f(e),Icr);var x=i[2];function c(s){return u(n,s)}return R(t5,function(s){return u(t,s)},c,e,x),u(f(e),Acr)}),N(VK,function(t,n,e){var i=a(pC,t,n);return a(P0(Tcr),i,e)}),N(t5,function(t,n,e,i){u(f(e),pcr),a(f(e),_cr,mcr);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(Je[13],s,c,e,x),u(f(e),ycr),u(f(e),dcr),a(f(e),kcr,hcr);var p=i[2];if(p){g(e,wcr);var y=p[1],T=function(h,w){return g(h,bcr)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,Ecr)}else g(e,Scr);return u(f(e),gcr),u(f(e),Fcr)}),N(zK,function(t,n,e){var i=a(t5,t,n);return a(P0(lcr),i,e)});var KK=[0,pC,VK,t5,zK],u5=function t(n,e,i,x){return t.fun(n,e,i,x)},WK=function t(n,e,i){return t.fun(n,e,i)},mC=function t(n,e,i,x){return t.fun(n,e,i,x)},JK=function t(n,e,i){return t.fun(n,e,i)};N(u5,function(t,n,e,i){u(f(e),Cor),a(f(e),Dor,Por);var x=i[1];if(x){g(e,Lor);var c=x[1],s=function(g0){return u(t,g0)},p=function(g0){return u(t,g0)};R(Ln[1],p,s,e,c),g(e,Ror)}else g(e,jor);u(f(e),Gor),u(f(e),Mor),a(f(e),qor,Bor);var y=i[2];function T(g0){return u(n,g0)}function E(g0){return u(t,g0)}R(Je[13],E,T,e,y),u(f(e),Uor),u(f(e),Hor),a(f(e),Yor,Xor);var h=i[3];function w(g0){return u(n,g0)}function G(g0){return u(t,g0)}R(Je[13],G,w,e,h),u(f(e),Vor),u(f(e),zor),a(f(e),Wor,Kor);var A=i[4];a(f(e),Jor,A),u(f(e),$or),u(f(e),Zor),a(f(e),rcr,Qor);var S=i[5];if(S){g(e,ecr);var M=S[1],K=function(g0){return u(t,g0)};ir(zv[1],K,e,M),g(e,ncr)}else g(e,tcr);u(f(e),ucr),u(f(e),icr),a(f(e),xcr,fcr);var V=i[6];if(V){g(e,acr);var f0=V[1],m0=function(g0,e0){return g(g0,Nor)},k0=function(g0){return u(t,g0)};R(Dr[1],k0,m0,e,f0),g(e,ocr)}else g(e,ccr);return u(f(e),scr),u(f(e),vcr)}),N(WK,function(t,n,e){var i=a(u5,t,n);return a(P0(Aor),i,e)}),N(mC,function(t,n,e,i){u(f(e),Tor),a(t,e,i[1]),u(f(e),Oor);var x=i[2];function c(s){return u(n,s)}return R(u5,function(s){return u(t,s)},c,e,x),u(f(e),Ior)}),N(JK,function(t,n,e){var i=a(mC,t,n);return a(P0(For),i,e)});var $K=[0,u5,WK,mC,JK],_C=function t(n,e,i,x){return t.fun(n,e,i,x)},ZK=function t(n,e,i){return t.fun(n,e,i)},i5=function t(n,e,i,x){return t.fun(n,e,i,x)},QK=function t(n,e,i){return t.fun(n,e,i)};N(_C,function(t,n,e,i){u(f(e),Eor),a(t,e,i[1]),u(f(e),Sor);var x=i[2];function c(s){return u(n,s)}return R(i5,function(s){return u(t,s)},c,e,x),u(f(e),gor)}),N(ZK,function(t,n,e){var i=a(_C,t,n);return a(P0(wor),i,e)}),N(i5,function(t,n,e,i){u(f(e),eor),a(f(e),tor,nor);var x=i[1];u(f(e),uor),a(t,e,x[1]),u(f(e),ior);var c=x[2];function s(G){return u(n,G)}function p(G){return u(t,G)}R(Ol[5],p,s,e,c),u(f(e),xor),u(f(e),aor),u(f(e),oor),a(f(e),sor,cor);var y=i[2];a(f(e),vor,y),u(f(e),lor),u(f(e),bor),a(f(e),mor,por);var T=i[3];if(T){g(e,_or);var E=T[1],h=function(G,A){return g(G,ror)},w=function(G){return u(t,G)};R(Dr[1],w,h,e,E),g(e,yor)}else g(e,dor);return u(f(e),hor),u(f(e),kor)}),N(QK,function(t,n,e){var i=a(i5,t,n);return a(P0(Qar),i,e)});var rW=[0,_C,ZK,i5,QK],yC=function t(n,e,i,x){return t.fun(n,e,i,x)},eW=function t(n,e,i){return t.fun(n,e,i)},f5=function t(n,e,i,x){return t.fun(n,e,i,x)},nW=function t(n,e,i){return t.fun(n,e,i)};N(yC,function(t,n,e,i){u(f(e),Jar),a(t,e,i[1]),u(f(e),$ar);var x=i[2];function c(s){return u(n,s)}return R(f5,function(s){return u(t,s)},c,e,x),u(f(e),Zar)}),N(eW,function(t,n,e){var i=a(yC,t,n);return a(P0(War),i,e)}),N(f5,function(t,n,e,i){u(f(e),yar),a(f(e),har,dar);var x=i[1];function c(K){return u(t,K)}function s(K){return u(t,K)}R(Ln[1],s,c,e,x),u(f(e),kar),u(f(e),war),a(f(e),Sar,Ear);var p=i[2];function y(K){return u(n,K)}function T(K){return u(t,K)}R(Je[13],T,y,e,p),u(f(e),gar),u(f(e),Far),a(f(e),Oar,Tar);var E=i[3];a(f(e),Iar,E),u(f(e),Aar),u(f(e),Nar),a(f(e),Par,Car);var h=i[4];a(f(e),Dar,h),u(f(e),Lar),u(f(e),Rar),a(f(e),Gar,jar);var w=i[5];a(f(e),Mar,w),u(f(e),Bar),u(f(e),qar),a(f(e),Har,Uar);var G=i[6];if(G){g(e,Xar);var A=G[1],S=function(K,V){return g(K,_ar)},M=function(K){return u(t,K)};R(Dr[1],M,S,e,A),g(e,Yar)}else g(e,Var);return u(f(e),zar),u(f(e),Kar)}),N(nW,function(t,n,e){var i=a(f5,t,n);return a(P0(mar),i,e)});var tW=[0,yC,eW,f5,nW],dC=function t(n,e,i,x){return t.fun(n,e,i,x)},uW=function t(n,e,i){return t.fun(n,e,i)},x5=function t(n,e,i,x){return t.fun(n,e,i,x)},iW=function t(n,e,i){return t.fun(n,e,i)};N(dC,function(t,n,e,i){u(f(e),Yxr),a(f(e),zxr,Vxr);var x=i[1];a(f(e),Kxr,x),u(f(e),Wxr),u(f(e),Jxr),a(f(e),Zxr,$xr);var c=i[2];a(f(e),Qxr,c),u(f(e),rar),u(f(e),ear),a(f(e),tar,nar);var s=i[3];u(f(e),uar);var p=0;be(function(w,G){w&&u(f(e),Xxr);function A(S){return u(n,S)}return R(x5,function(S){return u(t,S)},A,e,G),1},p,s),u(f(e),iar),u(f(e),far),u(f(e),xar),a(f(e),oar,aar);var y=i[4];if(y){g(e,car);var T=y[1],E=function(w,G){u(f(w),Uxr);var A=0;return be(function(S,M){S&&u(f(w),qxr);function K(V){return u(t,V)}return ir(uu[1],K,w,M),1},A,G),u(f(w),Hxr)},h=function(w){return u(t,w)};R(Dr[1],h,E,e,T),g(e,sar)}else g(e,lar);return u(f(e),bar),u(f(e),par)}),N(uW,function(t,n,e){var i=a(dC,t,n);return a(P0(Bxr),i,e)}),N(x5,function(t,n,e,i){switch(i[0]){case 0:u(f(e),Axr);var x=i[1],c=function(f0){return u(n,f0)},s=function(f0){return u(t,f0)};return R(YK[1],s,c,e,x),u(f(e),Nxr);case 1:u(f(e),Cxr);var p=i[1],y=function(f0){return u(n,f0)},T=function(f0){return u(t,f0)};return R(KK[1],T,y,e,p),u(f(e),Pxr);case 2:u(f(e),Dxr);var E=i[1],h=function(f0){return u(n,f0)},w=function(f0){return u(t,f0)};return R($K[3],w,h,e,E),u(f(e),Lxr);case 3:u(f(e),Rxr);var G=i[1],A=function(f0){return u(n,f0)},S=function(f0){return u(t,f0)};return R(rW[1],S,A,e,G),u(f(e),jxr);default:u(f(e),Gxr);var M=i[1],K=function(f0){return u(n,f0)},V=function(f0){return u(t,f0)};return R(tW[1],V,K,e,M),u(f(e),Mxr)}}),N(iW,function(t,n,e){var i=a(x5,t,n);return a(P0(Ixr),i,e)});var hC=[0,YK,KK,$K,rW,tW,dC,uW,x5,iW],kC=function t(n,e,i,x){return t.fun(n,e,i,x)},fW=function t(n,e,i){return t.fun(n,e,i)};N(kC,function(t,n,e,i){u(f(e),axr),a(f(e),cxr,oxr);var x=i[1];u(f(e),sxr),a(t,e,x[1]),u(f(e),vxr);var c=x[2];function s(A){return u(n,A)}function p(A){return u(t,A)}R(hC[6],p,s,e,c),u(f(e),lxr),u(f(e),bxr),u(f(e),pxr),a(f(e),_xr,mxr);var y=i[2];u(f(e),yxr);var T=0;be(function(A,S){A&&u(f(e),uxr),u(f(e),ixr),a(t,e,S[1]),u(f(e),fxr);var M=S[2];function K(f0){return u(n,f0)}function V(f0){return u(t,f0)}return R(cC[2],V,K,e,M),u(f(e),xxr),1},T,y),u(f(e),dxr),u(f(e),hxr),u(f(e),kxr),a(f(e),Exr,wxr);var E=i[3];if(E){g(e,Sxr);var h=E[1],w=function(A,S){return g(A,txr)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,gxr)}else g(e,Fxr);return u(f(e),Txr),u(f(e),Oxr)}),N(fW,function(t,n,e){var i=a(kC,t,n);return a(P0(nxr),i,e)});var xW=[0,kC,fW],wC=function t(n,e,i,x){return t.fun(n,e,i,x)},aW=function t(n,e,i){return t.fun(n,e,i)};N(wC,function(t,n,e,i){u(f(e),Xfr),a(f(e),Vfr,Yfr);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(Je[13],s,c,e,x),u(f(e),zfr),u(f(e),Kfr),a(f(e),Jfr,Wfr);var p=i[2];if(p){g(e,$fr);var y=p[1],T=function(h,w){return g(h,Hfr)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,Zfr)}else g(e,Qfr);return u(f(e),rxr),u(f(e),exr)}),N(aW,function(t,n,e){var i=a(wC,t,n);return a(P0(Ufr),i,e)});var oW=[0,wC,aW],a5=function t(n,e,i,x){return t.fun(n,e,i,x)},cW=function t(n,e,i){return t.fun(n,e,i)},o5=function t(n,e,i,x){return t.fun(n,e,i,x)},sW=function t(n,e,i){return t.fun(n,e,i)},c5=function t(n,e,i,x){return t.fun(n,e,i,x)},vW=function t(n,e,i){return t.fun(n,e,i)};N(a5,function(t,n,e,i){if(i[0]===0){u(f(e),Gfr);var x=i[1],c=function(T){return u(n,T)},s=function(T){return u(t,T)};return R(Ln[1],s,c,e,x),u(f(e),Mfr)}u(f(e),Bfr);var p=i[1];function y(T){return u(n,T)}return R(c5,function(T){return u(t,T)},y,e,p),u(f(e),qfr)}),N(cW,function(t,n,e){var i=a(a5,t,n);return a(P0(jfr),i,e)}),N(o5,function(t,n,e,i){u(f(e),Ofr),a(f(e),Afr,Ifr);var x=i[1];function c(T){return u(n,T)}R(a5,function(T){return u(t,T)},c,e,x),u(f(e),Nfr),u(f(e),Cfr),a(f(e),Dfr,Pfr);var s=i[2];function p(T){return u(n,T)}function y(T){return u(t,T)}return R(Ln[1],y,p,e,s),u(f(e),Lfr),u(f(e),Rfr)}),N(sW,function(t,n,e){var i=a(o5,t,n);return a(P0(Tfr),i,e)}),N(c5,function(t,n,e,i){u(f(e),Sfr),a(n,e,i[1]),u(f(e),gfr);var x=i[2];function c(s){return u(n,s)}return R(o5,function(s){return u(t,s)},c,e,x),u(f(e),Ffr)}),N(vW,function(t,n,e){var i=a(c5,t,n);return a(P0(Efr),i,e)});var lW=[0,a5,cW,o5,sW,c5,vW],EC=function t(n,e,i,x){return t.fun(n,e,i,x)},bW=function t(n,e,i){return t.fun(n,e,i)};N(EC,function(t,n,e,i){u(f(e),sfr),a(f(e),lfr,vfr);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(lW[1],s,c,e,x),u(f(e),bfr),u(f(e),pfr),a(f(e),_fr,mfr);var p=i[2];if(p){g(e,yfr);var y=p[1],T=function(h,w){return g(h,cfr)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,dfr)}else g(e,hfr);return u(f(e),kfr),u(f(e),wfr)}),N(bW,function(t,n,e){var i=a(EC,t,n);return a(P0(ofr),i,e)});var pW=[0,lW,EC,bW],SC=function t(n,e,i,x){return t.fun(n,e,i,x)},mW=function t(n,e,i){return t.fun(n,e,i)};N(SC,function(t,n,e,i){u(f(e),Wir),a(f(e),$ir,Jir);var x=i[1];u(f(e),Zir);var c=0;be(function(E,h){E&&u(f(e),Kir);function w(A){return u(n,A)}function G(A){return u(t,A)}return R(Je[13],G,w,e,h),1},c,x),u(f(e),Qir),u(f(e),rfr),u(f(e),efr),a(f(e),tfr,nfr);var s=i[2];if(s){g(e,ufr);var p=s[1],y=function(E,h){return g(E,zir)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,ifr)}else g(e,ffr);return u(f(e),xfr),u(f(e),afr)}),N(mW,function(t,n,e){var i=a(SC,t,n);return a(P0(Vir),i,e)});var _W=[0,SC,mW],gC=function t(n,e,i,x){return t.fun(n,e,i,x)},yW=function t(n,e,i){return t.fun(n,e,i)};N(gC,function(t,n,e,i){u(f(e),Dir),a(f(e),Rir,Lir);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(Je[13],s,c,e,x),u(f(e),jir),u(f(e),Gir),a(f(e),Bir,Mir);var p=i[2];if(p){g(e,qir);var y=p[1],T=function(h,w){return g(h,Pir)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,Uir)}else g(e,Hir);return u(f(e),Xir),u(f(e),Yir)}),N(yW,function(t,n,e){var i=a(gC,t,n);return a(P0(Cir),i,e)});var dW=[0,gC,yW],FC=function t(n,e,i,x){return t.fun(n,e,i,x)},hW=function t(n,e,i){return t.fun(n,e,i)};N(FC,function(t,n,e,i){u(f(e),bir),a(f(e),mir,pir);var x=i[1];u(f(e),_ir);var c=x[1];function s(K){return u(n,K)}function p(K){return u(t,K)}R(Je[13],p,s,e,c),u(f(e),yir);var y=x[2];function T(K){return u(n,K)}function E(K){return u(t,K)}R(Je[13],E,T,e,y),u(f(e),dir),u(f(e),hir);var h=x[3],w=0;be(function(K,V){K&&u(f(e),lir);function f0(k0){return u(n,k0)}function m0(k0){return u(t,k0)}return R(Je[13],m0,f0,e,V),1},w,h),u(f(e),kir),u(f(e),wir),u(f(e),Eir),u(f(e),Sir),a(f(e),Fir,gir);var G=i[2];if(G){g(e,Tir);var A=G[1],S=function(K,V){return g(K,vir)},M=function(K){return u(t,K)};R(Dr[1],M,S,e,A),g(e,Oir)}else g(e,Iir);return u(f(e),Air),u(f(e),Nir)}),N(hW,function(t,n,e){var i=a(FC,t,n);return a(P0(sir),i,e)});var kW=[0,FC,hW],TC=function t(n,e,i,x){return t.fun(n,e,i,x)},wW=function t(n,e,i){return t.fun(n,e,i)};N(TC,function(t,n,e,i){u(f(e),z7r),a(f(e),W7r,K7r);var x=i[1];u(f(e),J7r);var c=x[1];function s(K){return u(n,K)}function p(K){return u(t,K)}R(Je[13],p,s,e,c),u(f(e),$7r);var y=x[2];function T(K){return u(n,K)}function E(K){return u(t,K)}R(Je[13],E,T,e,y),u(f(e),Z7r),u(f(e),Q7r);var h=x[3],w=0;be(function(K,V){K&&u(f(e),V7r);function f0(k0){return u(n,k0)}function m0(k0){return u(t,k0)}return R(Je[13],m0,f0,e,V),1},w,h),u(f(e),rir),u(f(e),eir),u(f(e),nir),u(f(e),tir),a(f(e),iir,uir);var G=i[2];if(G){g(e,fir);var A=G[1],S=function(K,V){return g(K,Y7r)},M=function(K){return u(t,K)};R(Dr[1],M,S,e,A),g(e,xir)}else g(e,air);return u(f(e),oir),u(f(e),cir)}),N(wW,function(t,n,e){var i=a(TC,t,n);return a(P0(X7r),i,e)});var EW=[0,TC,wW],s5=function t(n,e,i,x){return t.fun(n,e,i,x)},SW=function t(n,e,i){return t.fun(n,e,i)},v5=function t(n,e,i,x){return t.fun(n,e,i,x)},gW=function t(n,e,i){return t.fun(n,e,i)},OC=function t(n,e,i,x){return t.fun(n,e,i,x)},FW=function t(n,e,i){return t.fun(n,e,i)},IC=function t(n,e,i,x){return t.fun(n,e,i,x)},TW=function t(n,e,i){return t.fun(n,e,i)};N(s5,function(t,n,e,i){u(f(e),q7r),a(n,e,i[1]),u(f(e),U7r);var x=i[2];function c(s){return u(n,s)}return R(v5,function(s){return u(t,s)},c,e,x),u(f(e),H7r)}),N(SW,function(t,n,e){var i=a(s5,t,n);return a(P0(B7r),i,e)}),N(v5,function(t,n,e,i){switch(i[0]){case 0:var x=i[1];if(u(f(e),xur),x){g(e,aur);var c=x[1],s=function(U,Y){return g(U,fur)},p=function(U){return u(t,U)};R(Dr[1],p,s,e,c),g(e,our)}else g(e,cur);return u(f(e),sur);case 1:var y=i[1];if(u(f(e),vur),y){g(e,lur);var T=y[1],E=function(U,Y){return g(U,iur)},h=function(U){return u(t,U)};R(Dr[1],h,E,e,T),g(e,bur)}else g(e,pur);return u(f(e),mur);case 2:var w=i[1];if(u(f(e),_ur),w){g(e,yur);var G=w[1],A=function(U,Y){return g(U,uur)},S=function(U){return u(t,U)};R(Dr[1],S,A,e,G),g(e,dur)}else g(e,hur);return u(f(e),kur);case 3:var M=i[1];if(u(f(e),wur),M){g(e,Eur);var K=M[1],V=function(U,Y){return g(U,tur)},f0=function(U){return u(t,U)};R(Dr[1],f0,V,e,K),g(e,Sur)}else g(e,gur);return u(f(e),Fur);case 4:var m0=i[1];if(u(f(e),Tur),m0){g(e,Our);var k0=m0[1],g0=function(U,Y){return g(U,nur)},e0=function(U){return u(t,U)};R(Dr[1],e0,g0,e,k0),g(e,Iur)}else g(e,Aur);return u(f(e),Nur);case 5:var x0=i[1];if(u(f(e),Cur),x0){g(e,Pur);var l=x0[1],c0=function(U,Y){return g(U,eur)},t0=function(U){return u(t,U)};R(Dr[1],t0,c0,e,l),g(e,Dur)}else g(e,Lur);return u(f(e),Rur);case 6:var a0=i[1];if(u(f(e),jur),a0){g(e,Gur);var w0=a0[1],_0=function(U,Y){return g(U,rur)},E0=function(U){return u(t,U)};R(Dr[1],E0,_0,e,w0),g(e,Mur)}else g(e,Bur);return u(f(e),qur);case 7:var X0=i[1];if(u(f(e),Uur),X0){g(e,Hur);var b=X0[1],G0=function(U,Y){return g(U,Qtr)},X=function(U){return u(t,U)};R(Dr[1],X,G0,e,b),g(e,Xur)}else g(e,Yur);return u(f(e),Vur);case 8:var s0=i[1];if(u(f(e),zur),s0){g(e,Kur);var dr=s0[1],Ar=function(U,Y){return g(U,Ztr)},ar=function(U){return u(t,U)};R(Dr[1],ar,Ar,e,dr),g(e,Wur)}else g(e,Jur);return u(f(e),$ur);case 9:var W0=i[1];if(u(f(e),Zur),W0){g(e,Qur);var Lr=W0[1],Tr=function(U,Y){return g(U,$tr)},Hr=function(U){return u(t,U)};R(Dr[1],Hr,Tr,e,Lr),g(e,r7r)}else g(e,e7r);return u(f(e),n7r);case 10:var Or=i[1];if(u(f(e),t7r),Or){g(e,u7r);var xr=Or[1],Rr=function(U,Y){return g(U,Jtr)},Wr=function(U){return u(t,U)};R(Dr[1],Wr,Rr,e,xr),g(e,i7r)}else g(e,f7r);return u(f(e),x7r);case 11:u(f(e),a7r);var Jr=i[1],or=function(U){return u(n,U)},_r=function(U){return u(t,U)};return R(oW[1],_r,or,e,Jr),u(f(e),o7r);case 12:u(f(e),c7r);var Ir=i[1],fe=function(U){return u(n,U)},v0=function(U){return u(t,U)};return R(Ol[5],v0,fe,e,Ir),u(f(e),s7r);case 13:u(f(e),v7r);var P=i[1],L=function(U){return u(n,U)},Q=function(U){return u(t,U)};return R(hC[6],Q,L,e,P),u(f(e),l7r);case 14:u(f(e),b7r);var i0=i[1],l0=function(U){return u(n,U)},S0=function(U){return u(t,U)};return R(xW[1],S0,l0,e,i0),u(f(e),p7r);case 15:u(f(e),m7r);var T0=i[1],rr=function(U){return u(n,U)},R0=function(U){return u(t,U)};return R(dW[1],R0,rr,e,T0),u(f(e),_7r);case 16:u(f(e),y7r);var B=i[1],Z=function(U){return u(n,U)},p0=function(U){return u(t,U)};return R(cC[2],p0,Z,e,B),u(f(e),d7r);case 17:u(f(e),h7r);var b0=i[1],O0=function(U){return u(n,U)},q0=function(U){return u(t,U)};return R(vC[1],q0,O0,e,b0),u(f(e),k7r);case 18:u(f(e),w7r);var er=i[1],yr=function(U){return u(n,U)},vr=function(U){return u(t,U)};return R(qK[1],vr,yr,e,er),u(f(e),E7r);case 19:u(f(e),S7r);var $0=i[1],Sr=function(U){return u(n,U)},Mr=function(U){return u(t,U)};return R(kW[1],Mr,Sr,e,$0),u(f(e),g7r);case 20:u(f(e),F7r);var Br=i[1],qr=function(U){return u(n,U)},jr=function(U){return u(t,U)};return R(EW[1],jr,qr,e,Br),u(f(e),T7r);case 21:u(f(e),O7r);var $r=i[1],ne=function(U){return u(n,U)},Qr=function(U){return u(t,U)};return R(pW[2],Qr,ne,e,$r),u(f(e),I7r);case 22:u(f(e),A7r);var pe=i[1],oe=function(U){return u(n,U)},me=function(U){return u(t,U)};return R(_W[1],me,oe,e,pe),u(f(e),N7r);case 23:u(f(e),C7r);var ae=i[1],ce=function(U){return u(t,U)};return ir(F1[1],ce,e,ae),u(f(e),P7r);case 24:u(f(e),D7r);var ge=i[1],H0=function(U){return u(t,U)};return ir(HN[1],H0,e,ge),u(f(e),L7r);case 25:u(f(e),R7r);var Fr=i[1],_=function(U){return u(t,U)};return ir(tK[1],_,e,Fr),u(f(e),j7r);default:u(f(e),G7r);var k=i[1],I=function(U){return u(t,U)};return ir(XN[1],I,e,k),u(f(e),M7r)}}),N(gW,function(t,n,e){var i=a(v5,t,n);return a(P0(Wtr),i,e)}),N(OC,function(t,n,e,i){u(f(e),Vtr),a(t,e,i[1]),u(f(e),ztr);var x=i[2];function c(s){return u(n,s)}return R(s5,function(s){return u(t,s)},c,e,x),u(f(e),Ktr)}),N(FW,function(t,n,e){var i=a(OC,t,n);return a(P0(Ytr),i,e)}),N(IC,function(t,n,e,i){if(i[0]===0)return u(f(e),qtr),a(n,e,i[1]),u(f(e),Utr);u(f(e),Htr);var x=i[1];function c(p){return u(n,p)}function s(p){return u(t,p)}return R(Je[17],s,c,e,x),u(f(e),Xtr)}),N(TW,function(t,n,e){var i=a(IC,t,n);return a(P0(Btr),i,e)});var AC=function t(n,e,i,x){return t.fun(n,e,i,x)},OW=function t(n,e,i){return t.fun(n,e,i)},l5=function t(n,e,i,x){return t.fun(n,e,i,x)},IW=function t(n,e,i){return t.fun(n,e,i)};N(AC,function(t,n,e,i){u(f(e),jtr),a(t,e,i[1]),u(f(e),Gtr);var x=i[2];function c(s){return u(n,s)}return R(l5,function(s){return u(t,s)},c,e,x),u(f(e),Mtr)}),N(OW,function(t,n,e){var i=a(AC,t,n);return a(P0(Rtr),i,e)}),N(l5,function(t,n,e,i){u(f(e),ltr),a(f(e),ptr,btr);var x=i[1];function c(K){return u(t,K)}function s(K){return u(t,K)}R(Ln[1],s,c,e,x),u(f(e),mtr),u(f(e),_tr),a(f(e),dtr,ytr);var p=i[2];function y(K){return u(n,K)}function T(K){return u(t,K)}R(Je[19],T,y,e,p),u(f(e),htr),u(f(e),ktr),a(f(e),Etr,wtr);var E=i[3];if(E){g(e,Str);var h=E[1],w=function(K){return u(t,K)};ir(zv[1],w,e,h),g(e,gtr)}else g(e,Ftr);u(f(e),Ttr),u(f(e),Otr),a(f(e),Atr,Itr);var G=i[4];if(G){g(e,Ntr);var A=G[1],S=function(K){return u(n,K)},M=function(K){return u(t,K)};R(Je[13],M,S,e,A),g(e,Ctr)}else g(e,Ptr);return u(f(e),Dtr),u(f(e),Ltr)}),N(IW,function(t,n,e){var i=a(l5,t,n);return a(P0(vtr),i,e)});var AW=[0,AC,OW,l5,IW],NC=function t(n,e,i,x){return t.fun(n,e,i,x)},NW=function t(n,e,i){return t.fun(n,e,i)},b5=function t(n,e,i,x){return t.fun(n,e,i,x)},CW=function t(n,e,i){return t.fun(n,e,i)};N(NC,function(t,n,e,i){u(f(e),otr),a(t,e,i[1]),u(f(e),ctr);var x=i[2];function c(s){return u(n,s)}return R(b5,function(s){return u(t,s)},c,e,x),u(f(e),str)}),N(NW,function(t,n,e){var i=a(NC,t,n);return a(P0(atr),i,e)}),N(b5,function(t,n,e,i){u(f(e),Knr),a(f(e),Jnr,Wnr);var x=i[1];u(f(e),$nr);var c=0;be(function(E,h){E&&u(f(e),znr);function w(A){return u(n,A)}function G(A){return u(t,A)}return R(AW[1],G,w,e,h),1},c,x),u(f(e),Znr),u(f(e),Qnr),u(f(e),rtr),a(f(e),ntr,etr);var s=i[2];if(s){g(e,ttr);var p=s[1],y=function(E,h){u(f(E),Ynr);var w=0;return be(function(G,A){G&&u(f(E),Xnr);function S(M){return u(t,M)}return ir(uu[1],S,E,A),1},w,h),u(f(E),Vnr)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,utr)}else g(e,itr);return u(f(e),ftr),u(f(e),xtr)}),N(CW,function(t,n,e){var i=a(b5,t,n);return a(P0(Hnr),i,e)});var CC=function t(n,e,i,x){return t.fun(n,e,i,x)},PW=function t(n,e,i){return t.fun(n,e,i)},p5=function t(n,e,i,x){return t.fun(n,e,i,x)},DW=function t(n,e,i){return t.fun(n,e,i)},jee=[0,NC,NW,b5,CW];N(CC,function(t,n,e,i){u(f(e),Bnr),a(t,e,i[1]),u(f(e),qnr);var x=i[2];function c(s){return u(n,s)}return R(p5,function(s){return u(t,s)},c,e,x),u(f(e),Unr)}),N(PW,function(t,n,e){var i=a(CC,t,n);return a(P0(Mnr),i,e)}),N(p5,function(t,n,e,i){u(f(e),gnr),a(f(e),Tnr,Fnr);var x=i[1];u(f(e),Onr);var c=0;be(function(E,h){E&&u(f(e),Snr);function w(A){return u(n,A)}function G(A){return u(t,A)}return R(Je[13],G,w,e,h),1},c,x),u(f(e),Inr),u(f(e),Anr),u(f(e),Nnr),a(f(e),Pnr,Cnr);var s=i[2];if(s){g(e,Dnr);var p=s[1],y=function(E,h){u(f(E),wnr);var w=0;return be(function(G,A){G&&u(f(E),knr);function S(M){return u(t,M)}return ir(uu[1],S,E,A),1},w,h),u(f(E),Enr)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,Lnr)}else g(e,Rnr);return u(f(e),jnr),u(f(e),Gnr)}),N(DW,function(t,n,e){var i=a(p5,t,n);return a(P0(hnr),i,e)});var PC=function t(n,e,i,x){return t.fun(n,e,i,x)},LW=function t(n,e,i){return t.fun(n,e,i)},m5=function t(n,e,i,x){return t.fun(n,e,i,x)},RW=function t(n,e,i){return t.fun(n,e,i)},_5=function t(n,e,i,x){return t.fun(n,e,i,x)},jW=function t(n,e,i){return t.fun(n,e,i)},Gee=[0,CC,PW,p5,DW];N(PC,function(t,n,e,i){u(f(e),_nr),a(t,e,i[1]),u(f(e),ynr);var x=i[2];function c(s){return u(n,s)}return R(m5,function(s){return u(t,s)},c,e,x),u(f(e),dnr)}),N(LW,function(t,n,e){var i=a(PC,t,n);return a(P0(mnr),i,e)}),N(m5,function(t,n,e,i){u(f(e),unr),a(f(e),fnr,inr);var x=i[1];function c(E){return u(n,E)}R(_5,function(E){return u(t,E)},c,e,x),u(f(e),xnr),u(f(e),anr),a(f(e),cnr,onr);var s=i[2];if(s){g(e,snr);var p=s[1],y=function(E,h){return g(E,tnr)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,vnr)}else g(e,lnr);return u(f(e),bnr),u(f(e),pnr)}),N(RW,function(t,n,e){var i=a(m5,t,n);return a(P0(nnr),i,e)}),N(_5,function(t,n,e,i){if(i){u(f(e),Qer);var x=i[1],c=function(p){return u(n,p)},s=function(p){return u(t,p)};return R(qe[31],s,c,e,x),u(f(e),rnr)}return g(e,enr)}),N(jW,function(t,n,e){var i=a(_5,t,n);return a(P0(Zer),i,e)}),pu(o6r,Je,[0,Ol,cC,vC,qK,hC,xW,oW,pW,_W,dW,kW,EW,s5,SW,v5,gW,OC,FW,IC,TW,AW,jee,Gee,[0,PC,LW,m5,RW,_5,jW]]);var DC=function t(n,e,i,x){return t.fun(n,e,i,x)},GW=function t(n,e,i){return t.fun(n,e,i)};N(DC,function(t,n,e,i){u(f(e),Ger),a(f(e),Ber,Mer);var x=i[1];u(f(e),qer);var c=0;be(function(E,h){E&&u(f(e),jer);function w(A){return u(n,A)}function G(A){return u(t,A)}return R(Xu[35],G,w,e,h),1},c,x),u(f(e),Uer),u(f(e),Her),u(f(e),Xer),a(f(e),Ver,Yer);var s=i[2];if(s){g(e,zer);var p=s[1],y=function(E,h){u(f(E),Ler);var w=0;return be(function(G,A){G&&u(f(E),Der);function S(M){return u(t,M)}return ir(uu[1],S,E,A),1},w,h),u(f(E),Rer)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,Ker)}else g(e,Wer);return u(f(e),Jer),u(f(e),$er)}),N(GW,function(t,n,e){var i=a(DC,t,n);return a(P0(Per),i,e)});var Kv=[0,DC,GW],LC=function t(n,e,i,x){return t.fun(n,e,i,x)},MW=function t(n,e,i){return t.fun(n,e,i)},y5=function t(n,e,i,x){return t.fun(n,e,i,x)},BW=function t(n,e,i){return t.fun(n,e,i)};N(LC,function(t,n,e,i){u(f(e),Aer),a(t,e,i[1]),u(f(e),Ner);var x=i[2];function c(s){return u(n,s)}return R(y5,function(s){return u(t,s)},c,e,x),u(f(e),Cer)}),N(MW,function(t,n,e){var i=a(LC,t,n);return a(P0(Ier),i,e)}),N(y5,function(t,n,e,i){u(f(e),_er),a(f(e),der,yer);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(Xu[35],s,c,e,x),u(f(e),her),u(f(e),ker),a(f(e),Eer,wer);var p=i[2];if(p){g(e,Ser);var y=p[1],T=function(h,w){return g(h,mer)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,ger)}else g(e,Fer);return u(f(e),Ter),u(f(e),Oer)}),N(BW,function(t,n,e){var i=a(y5,t,n);return a(P0(per),i,e)});var qW=[0,LC,MW,y5,BW],RC=function t(n,e,i,x){return t.fun(n,e,i,x)},UW=function t(n,e,i){return t.fun(n,e,i)};N(RC,function(t,n,e,i){u(f(e),Vrr),a(f(e),Krr,zrr);var x=i[1];function c(V){return u(n,V)}function s(V){return u(t,V)}R(qe[31],s,c,e,x),u(f(e),Wrr),u(f(e),Jrr),a(f(e),Zrr,$rr);var p=i[2];function y(V){return u(n,V)}function T(V){return u(t,V)}R(Xu[35],T,y,e,p),u(f(e),Qrr),u(f(e),rer),a(f(e),ner,eer);var E=i[3];if(E){g(e,ter);var h=E[1],w=function(V){return u(n,V)},G=function(V){return u(t,V)};R(qW[1],G,w,e,h),g(e,uer)}else g(e,ier);u(f(e),fer),u(f(e),xer),a(f(e),oer,aer);var A=i[4];if(A){g(e,cer);var S=A[1],M=function(V,f0){return g(V,Yrr)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,ser)}else g(e,ver);return u(f(e),ler),u(f(e),ber)}),N(UW,function(t,n,e){var i=a(RC,t,n);return a(P0(Xrr),i,e)});var HW=[0,qW,RC,UW],jC=function t(n,e,i,x){return t.fun(n,e,i,x)},XW=function t(n,e,i){return t.fun(n,e,i)};N(jC,function(t,n,e,i){u(f(e),Orr),a(f(e),Arr,Irr);var x=i[1];function c(A){return u(t,A)}function s(A){return u(t,A)}R(Ln[1],s,c,e,x),u(f(e),Nrr),u(f(e),Crr),a(f(e),Drr,Prr);var p=i[2];function y(A){return u(n,A)}function T(A){return u(t,A)}R(Xu[35],T,y,e,p),u(f(e),Lrr),u(f(e),Rrr),a(f(e),Grr,jrr);var E=i[3];if(E){g(e,Mrr);var h=E[1],w=function(A,S){return g(A,Trr)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,Brr)}else g(e,qrr);return u(f(e),Urr),u(f(e),Hrr)}),N(XW,function(t,n,e){var i=a(jC,t,n);return a(P0(Frr),i,e)});var YW=[0,jC,XW],GC=function t(n,e,i){return t.fun(n,e,i)},VW=function t(n,e){return t.fun(n,e)};N(GC,function(t,n,e){u(f(n),srr),a(f(n),lrr,vrr);var i=e[1];if(i){g(n,brr);var x=i[1],c=function(h){return u(t,h)},s=function(h){return u(t,h)};R(Ln[1],s,c,n,x),g(n,prr)}else g(n,mrr);u(f(n),_rr),u(f(n),yrr),a(f(n),hrr,drr);var p=e[2];if(p){g(n,krr);var y=p[1],T=function(h,w){return g(h,crr)},E=function(h){return u(t,h)};R(Dr[1],E,T,n,y),g(n,wrr)}else g(n,Err);return u(f(n),Srr),u(f(n),grr)}),N(VW,function(t,n){var e=u(GC,t);return a(P0(orr),e,n)});var zW=[0,GC,VW],MC=function t(n,e,i){return t.fun(n,e,i)},KW=function t(n,e){return t.fun(n,e)};N(MC,function(t,n,e){u(f(n),K0r),a(f(n),J0r,W0r);var i=e[1];if(i){g(n,$0r);var x=i[1],c=function(h){return u(t,h)},s=function(h){return u(t,h)};R(Ln[1],s,c,n,x),g(n,Z0r)}else g(n,Q0r);u(f(n),rrr),u(f(n),err),a(f(n),trr,nrr);var p=e[2];if(p){g(n,urr);var y=p[1],T=function(h,w){return g(h,z0r)},E=function(h){return u(t,h)};R(Dr[1],E,T,n,y),g(n,irr)}else g(n,frr);return u(f(n),xrr),u(f(n),arr)}),N(KW,function(t,n){var e=u(MC,t);return a(P0(V0r),e,n)});var WW=[0,MC,KW],BC=function t(n,e,i){return t.fun(n,e,i)},JW=function t(n,e){return t.fun(n,e)};N(BC,function(t,n,e){u(f(n),G0r),a(f(n),B0r,M0r);var i=e[1];if(i){g(n,q0r);var x=i[1],c=function(p,y){return g(p,j0r)},s=function(p){return u(t,p)};R(Dr[1],s,c,n,x),g(n,U0r)}else g(n,H0r);return u(f(n),X0r),u(f(n),Y0r)}),N(JW,function(t,n){var e=u(BC,t);return a(P0(R0r),e,n)});var $W=[0,BC,JW],qC=function t(n,e,i,x){return t.fun(n,e,i,x)},ZW=function t(n,e,i){return t.fun(n,e,i)};N(qC,function(t,n,e,i){u(f(e),h0r),a(f(e),w0r,k0r);var x=i[1];function c(A){return u(n,A)}function s(A){return u(t,A)}R(qe[31],s,c,e,x),u(f(e),E0r),u(f(e),S0r),a(f(e),F0r,g0r);var p=i[2];function y(A){return u(n,A)}function T(A){return u(t,A)}R(Xu[35],T,y,e,p),u(f(e),T0r),u(f(e),O0r),a(f(e),A0r,I0r);var E=i[3];if(E){g(e,N0r);var h=E[1],w=function(A,S){return g(A,d0r)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,C0r)}else g(e,P0r);return u(f(e),D0r),u(f(e),L0r)}),N(ZW,function(t,n,e){var i=a(qC,t,n);return a(P0(y0r),i,e)});var QW=[0,qC,ZW],UC=function t(n,e,i,x){return t.fun(n,e,i,x)},rJ=function t(n,e,i){return t.fun(n,e,i)};N(UC,function(t,n,e,i){u(f(e),WQ0),a(f(e),$Q0,JQ0);var x=i[1];function c(V){return u(n,V)}function s(V){return u(t,V)}R(Ln[1],s,c,e,x),u(f(e),ZQ0),u(f(e),QQ0),a(f(e),e0r,r0r);var p=i[2];if(p){g(e,n0r);var y=p[1],T=function(V){return u(n,V)},E=function(V){return u(t,V)};R(Je[22][1],E,T,e,y),g(e,t0r)}else g(e,u0r);u(f(e),i0r),u(f(e),f0r),a(f(e),a0r,x0r);var h=i[3];function w(V){return u(n,V)}function G(V){return u(t,V)}R(Je[13],G,w,e,h),u(f(e),o0r),u(f(e),c0r),a(f(e),v0r,s0r);var A=i[4];if(A){g(e,l0r);var S=A[1],M=function(V,f0){return g(V,KQ0)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,b0r)}else g(e,p0r);return u(f(e),m0r),u(f(e),_0r)}),N(rJ,function(t,n,e){var i=a(UC,t,n);return a(P0(zQ0),i,e)});var d5=[0,UC,rJ],HC=function t(n,e,i,x){return t.fun(n,e,i,x)},eJ=function t(n,e,i){return t.fun(n,e,i)};N(HC,function(t,n,e,i){u(f(e),bQ0),a(f(e),mQ0,pQ0);var x=i[1];function c(e0){return u(n,e0)}function s(e0){return u(t,e0)}R(Ln[1],s,c,e,x),u(f(e),_Q0),u(f(e),yQ0),a(f(e),hQ0,dQ0);var p=i[2];if(p){g(e,kQ0);var y=p[1],T=function(e0){return u(n,e0)},E=function(e0){return u(t,e0)};R(Je[22][1],E,T,e,y),g(e,wQ0)}else g(e,EQ0);u(f(e),SQ0),u(f(e),gQ0),a(f(e),TQ0,FQ0);var h=i[3];if(h){g(e,OQ0);var w=h[1],G=function(e0){return u(n,e0)},A=function(e0){return u(t,e0)};R(Je[13],A,G,e,w),g(e,IQ0)}else g(e,AQ0);u(f(e),NQ0),u(f(e),CQ0),a(f(e),DQ0,PQ0);var S=i[4];if(S){g(e,LQ0);var M=S[1],K=function(e0){return u(n,e0)},V=function(e0){return u(t,e0)};R(Je[13],V,K,e,M),g(e,RQ0)}else g(e,jQ0);u(f(e),GQ0),u(f(e),MQ0),a(f(e),qQ0,BQ0);var f0=i[5];if(f0){g(e,UQ0);var m0=f0[1],k0=function(e0,x0){return g(e0,lQ0)},g0=function(e0){return u(t,e0)};R(Dr[1],g0,k0,e,m0),g(e,HQ0)}else g(e,XQ0);return u(f(e),YQ0),u(f(e),VQ0)}),N(eJ,function(t,n,e){var i=a(HC,t,n);return a(P0(vQ0),i,e)});var h5=[0,HC,eJ],XC=function t(n,e,i,x){return t.fun(n,e,i,x)},nJ=function t(n,e,i){return t.fun(n,e,i)},k5=function t(n,e,i,x){return t.fun(n,e,i,x)},tJ=function t(n,e,i){return t.fun(n,e,i)};N(XC,function(t,n,e,i){u(f(e),oQ0),a(t,e,i[1]),u(f(e),cQ0);var x=i[2];function c(s){return u(n,s)}return R(k5,function(s){return u(t,s)},c,e,x),u(f(e),sQ0)}),N(nJ,function(t,n,e){var i=a(XC,t,n);return a(P0(aQ0),i,e)}),N(k5,function(t,n,e,i){u(f(e),qZ0),a(f(e),HZ0,UZ0);var x=i[1];if(x){g(e,XZ0);var c=x[1],s=function(A){return u(n,A)},p=function(A){return u(t,A)};R(qe[31],p,s,e,c),g(e,YZ0)}else g(e,VZ0);u(f(e),zZ0),u(f(e),KZ0),a(f(e),JZ0,WZ0);var y=i[2];u(f(e),$Z0);var T=0;be(function(A,S){A&&u(f(e),BZ0);function M(V){return u(n,V)}function K(V){return u(t,V)}return R(Xu[35],K,M,e,S),1},T,y),u(f(e),ZZ0),u(f(e),QZ0),u(f(e),rQ0),a(f(e),nQ0,eQ0);var E=i[3];if(E){g(e,tQ0);var h=E[1],w=function(A,S){return g(A,MZ0)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,uQ0)}else g(e,iQ0);return u(f(e),fQ0),u(f(e),xQ0)}),N(tJ,function(t,n,e){var i=a(k5,t,n);return a(P0(GZ0),i,e)});var uJ=[0,XC,nJ,k5,tJ],YC=function t(n,e,i,x){return t.fun(n,e,i,x)},iJ=function t(n,e,i){return t.fun(n,e,i)};N(YC,function(t,n,e,i){u(f(e),mZ0),a(f(e),yZ0,_Z0);var x=i[1];function c(G){return u(n,G)}function s(G){return u(t,G)}R(qe[31],s,c,e,x),u(f(e),dZ0),u(f(e),hZ0),a(f(e),wZ0,kZ0);var p=i[2];u(f(e),EZ0);var y=0;be(function(G,A){G&&u(f(e),pZ0);function S(K){return u(n,K)}function M(K){return u(t,K)}return R(uJ[1],M,S,e,A),1},y,p),u(f(e),SZ0),u(f(e),gZ0),u(f(e),FZ0),a(f(e),OZ0,TZ0);var T=i[3];if(T){g(e,IZ0);var E=T[1],h=function(G,A){return g(G,bZ0)},w=function(G){return u(t,G)};R(Dr[1],w,h,e,E),g(e,AZ0)}else g(e,NZ0);return u(f(e),CZ0),u(f(e),PZ0),a(f(e),LZ0,DZ0),a(n,e,i[4]),u(f(e),RZ0),u(f(e),jZ0)}),N(iJ,function(t,n,e){var i=a(YC,t,n);return a(P0(lZ0),i,e)});var fJ=[0,uJ,YC,iJ],VC=function t(n,e,i,x){return t.fun(n,e,i,x)},xJ=function t(n,e,i){return t.fun(n,e,i)};N(VC,function(t,n,e,i){u(f(e),K$0),a(f(e),J$0,W$0);var x=i[1];if(x){g(e,$$0);var c=x[1],s=function(w){return u(n,w)},p=function(w){return u(t,w)};R(qe[31],p,s,e,c),g(e,Z$0)}else g(e,Q$0);u(f(e),rZ0),u(f(e),eZ0),a(f(e),tZ0,nZ0);var y=i[2];if(y){g(e,uZ0);var T=y[1],E=function(w,G){return g(w,z$0)},h=function(w){return u(t,w)};R(Dr[1],h,E,e,T),g(e,iZ0)}else g(e,fZ0);return u(f(e),xZ0),u(f(e),aZ0),a(f(e),cZ0,oZ0),a(n,e,i[3]),u(f(e),sZ0),u(f(e),vZ0)}),N(xJ,function(t,n,e){var i=a(VC,t,n);return a(P0(V$0),i,e)});var aJ=[0,VC,xJ],zC=function t(n,e,i,x){return t.fun(n,e,i,x)},oJ=function t(n,e,i){return t.fun(n,e,i)};N(zC,function(t,n,e,i){u(f(e),D$0),a(f(e),R$0,L$0);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(qe[31],s,c,e,x),u(f(e),j$0),u(f(e),G$0),a(f(e),B$0,M$0);var p=i[2];if(p){g(e,q$0);var y=p[1],T=function(h,w){return g(h,P$0)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,U$0)}else g(e,H$0);return u(f(e),X$0),u(f(e),Y$0)}),N(oJ,function(t,n,e){var i=a(zC,t,n);return a(P0(C$0),i,e)});var cJ=[0,zC,oJ],KC=function t(n,e,i,x){return t.fun(n,e,i,x)},sJ=function t(n,e,i){return t.fun(n,e,i)},w5=function t(n,e,i,x){return t.fun(n,e,i,x)},vJ=function t(n,e,i){return t.fun(n,e,i)};N(KC,function(t,n,e,i){u(f(e),I$0),a(t,e,i[1]),u(f(e),A$0);var x=i[2];function c(s){return u(n,s)}return R(w5,function(s){return u(t,s)},c,e,x),u(f(e),N$0)}),N(sJ,function(t,n,e){var i=a(KC,t,n);return a(P0(O$0),i,e)}),N(w5,function(t,n,e,i){u(f(e),f$0),a(f(e),a$0,x$0);var x=i[1];if(x){g(e,o$0);var c=x[1],s=function(M){return u(n,M)},p=function(M){return u(t,M)};R(di[5],p,s,e,c),g(e,c$0)}else g(e,s$0);u(f(e),v$0),u(f(e),l$0),a(f(e),p$0,b$0);var y=i[2];u(f(e),m$0),a(t,e,y[1]),u(f(e),_$0);var T=y[2];function E(M){return u(n,M)}function h(M){return u(t,M)}R(Kv[1],h,E,e,T),u(f(e),y$0),u(f(e),d$0),u(f(e),h$0),a(f(e),w$0,k$0);var w=i[3];if(w){g(e,E$0);var G=w[1],A=function(M,K){return g(M,i$0)},S=function(M){return u(t,M)};R(Dr[1],S,A,e,G),g(e,S$0)}else g(e,g$0);return u(f(e),F$0),u(f(e),T$0)}),N(vJ,function(t,n,e){var i=a(w5,t,n);return a(P0(u$0),i,e)});var lJ=[0,KC,sJ,w5,vJ],WC=function t(n,e,i,x){return t.fun(n,e,i,x)},bJ=function t(n,e,i){return t.fun(n,e,i)};N(WC,function(t,n,e,i){u(f(e),FJ0),a(f(e),OJ0,TJ0);var x=i[1];u(f(e),IJ0),a(t,e,x[1]),u(f(e),AJ0);var c=x[2];function s(k0){return u(n,k0)}function p(k0){return u(t,k0)}R(Kv[1],p,s,e,c),u(f(e),NJ0),u(f(e),CJ0),u(f(e),PJ0),a(f(e),LJ0,DJ0);var y=i[2];if(y){g(e,RJ0);var T=y[1],E=function(k0){return u(n,k0)},h=function(k0){return u(t,k0)};R(lJ[1],h,E,e,T),g(e,jJ0)}else g(e,GJ0);u(f(e),MJ0),u(f(e),BJ0),a(f(e),UJ0,qJ0);var w=i[3];if(w){var G=w[1];g(e,HJ0),u(f(e),XJ0),a(t,e,G[1]),u(f(e),YJ0);var A=G[2],S=function(k0){return u(n,k0)},M=function(k0){return u(t,k0)};R(Kv[1],M,S,e,A),u(f(e),VJ0),g(e,zJ0)}else g(e,KJ0);u(f(e),WJ0),u(f(e),JJ0),a(f(e),ZJ0,$J0);var K=i[4];if(K){g(e,QJ0);var V=K[1],f0=function(k0,g0){return g(k0,gJ0)},m0=function(k0){return u(t,k0)};R(Dr[1],m0,f0,e,V),g(e,r$0)}else g(e,e$0);return u(f(e),n$0),u(f(e),t$0)}),N(bJ,function(t,n,e){var i=a(WC,t,n);return a(P0(SJ0),i,e)});var pJ=[0,lJ,WC,bJ],JC=function t(n,e,i,x){return t.fun(n,e,i,x)},mJ=function t(n,e,i){return t.fun(n,e,i)},E5=function t(n,e,i,x){return t.fun(n,e,i,x)},_J=function t(n,e,i){return t.fun(n,e,i)};N(JC,function(t,n,e,i){u(f(e),kJ0),a(t,e,i[1]),u(f(e),wJ0);var x=i[2];function c(s){return u(n,s)}return R(E5,function(s){return u(t,s)},c,e,x),u(f(e),EJ0)}),N(mJ,function(t,n,e){var i=a(JC,t,n);return a(P0(hJ0),i,e)}),N(E5,function(t,n,e,i){u(f(e),aJ0),a(f(e),cJ0,oJ0);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(di[5],s,c,e,x),u(f(e),sJ0),u(f(e),vJ0),a(f(e),bJ0,lJ0);var p=i[2];if(p){g(e,pJ0);var y=p[1],T=function(h){return u(n,h)},E=function(h){return u(t,h)};R(qe[31],E,T,e,y),g(e,mJ0)}else g(e,_J0);return u(f(e),yJ0),u(f(e),dJ0)}),N(_J,function(t,n,e){var i=a(E5,t,n);return a(P0(xJ0),i,e)});var yJ=[0,JC,mJ,E5,_J],$C=function t(n,e,i,x){return t.fun(n,e,i,x)},dJ=function t(n,e,i){return t.fun(n,e,i)},S5=function t(n,e){return t.fun(n,e)},hJ=function t(n){return t.fun(n)};N($C,function(t,n,e,i){u(f(e),HW0),a(f(e),YW0,XW0);var x=i[1];u(f(e),VW0);var c=0;be(function(E,h){E&&u(f(e),UW0);function w(A){return u(n,A)}function G(A){return u(t,A)}return R(yJ[1],G,w,e,h),1},c,x),u(f(e),zW0),u(f(e),KW0),u(f(e),WW0),a(f(e),$W0,JW0),a(S5,e,i[2]),u(f(e),ZW0),u(f(e),QW0),a(f(e),eJ0,rJ0);var s=i[3];if(s){g(e,nJ0);var p=s[1],y=function(E,h){return g(E,qW0)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,tJ0)}else g(e,uJ0);return u(f(e),iJ0),u(f(e),fJ0)}),N(dJ,function(t,n,e){var i=a($C,t,n);return a(P0(BW0),i,e)}),N(S5,function(t,n){switch(n){case 0:return g(t,jW0);case 1:return g(t,GW0);default:return g(t,MW0)}}),N(hJ,function(t){return a(P0(RW0),S5,t)});var Il=[0,yJ,$C,dJ,S5,hJ],ZC=function t(n,e,i,x){return t.fun(n,e,i,x)},kJ=function t(n,e,i){return t.fun(n,e,i)};N(ZC,function(t,n,e,i){u(f(e),hW0),a(f(e),wW0,kW0);var x=i[1];function c(A){return u(n,A)}function s(A){return u(t,A)}R(qe[31],s,c,e,x),u(f(e),EW0),u(f(e),SW0),a(f(e),FW0,gW0);var p=i[2];function y(A){return u(n,A)}function T(A){return u(t,A)}R(Xu[35],T,y,e,p),u(f(e),TW0),u(f(e),OW0),a(f(e),AW0,IW0);var E=i[3];if(E){g(e,NW0);var h=E[1],w=function(A,S){return g(A,dW0)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,CW0)}else g(e,PW0);return u(f(e),DW0),u(f(e),LW0)}),N(kJ,function(t,n,e){var i=a(ZC,t,n);return a(P0(yW0),i,e)});var wJ=[0,ZC,kJ],QC=function t(n,e,i,x){return t.fun(n,e,i,x)},EJ=function t(n,e,i){return t.fun(n,e,i)};N(QC,function(t,n,e,i){u(f(e),nW0),a(f(e),uW0,tW0);var x=i[1];function c(A){return u(n,A)}function s(A){return u(t,A)}R(Xu[35],s,c,e,x),u(f(e),iW0),u(f(e),fW0),a(f(e),aW0,xW0);var p=i[2];function y(A){return u(n,A)}function T(A){return u(t,A)}R(qe[31],T,y,e,p),u(f(e),oW0),u(f(e),cW0),a(f(e),vW0,sW0);var E=i[3];if(E){g(e,lW0);var h=E[1],w=function(A,S){return g(A,eW0)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,bW0)}else g(e,pW0);return u(f(e),mW0),u(f(e),_W0)}),N(EJ,function(t,n,e){var i=a(QC,t,n);return a(P0(rW0),i,e)});var SJ=[0,QC,EJ],rP=function t(n,e,i,x){return t.fun(n,e,i,x)},gJ=function t(n,e,i){return t.fun(n,e,i)},g5=function t(n,e,i,x){return t.fun(n,e,i,x)},FJ=function t(n,e,i){return t.fun(n,e,i)};N(rP,function(t,n,e,i){u(f(e),kK0),a(f(e),EK0,wK0);var x=i[1];if(x){g(e,SK0);var c=x[1],s=function(g0){return u(n,g0)};R(g5,function(g0){return u(t,g0)},s,e,c),g(e,gK0)}else g(e,FK0);u(f(e),TK0),u(f(e),OK0),a(f(e),AK0,IK0);var p=i[2];if(p){g(e,NK0);var y=p[1],T=function(g0){return u(n,g0)},E=function(g0){return u(t,g0)};R(qe[31],E,T,e,y),g(e,CK0)}else g(e,PK0);u(f(e),DK0),u(f(e),LK0),a(f(e),jK0,RK0);var h=i[3];if(h){g(e,GK0);var w=h[1],G=function(g0){return u(n,g0)},A=function(g0){return u(t,g0)};R(qe[31],A,G,e,w),g(e,MK0)}else g(e,BK0);u(f(e),qK0),u(f(e),UK0),a(f(e),XK0,HK0);var S=i[4];function M(g0){return u(n,g0)}function K(g0){return u(t,g0)}R(Xu[35],K,M,e,S),u(f(e),YK0),u(f(e),VK0),a(f(e),KK0,zK0);var V=i[5];if(V){g(e,WK0);var f0=V[1],m0=function(g0,e0){return g(g0,hK0)},k0=function(g0){return u(t,g0)};R(Dr[1],k0,m0,e,f0),g(e,JK0)}else g(e,$K0);return u(f(e),ZK0),u(f(e),QK0)}),N(gJ,function(t,n,e){var i=a(rP,t,n);return a(P0(dK0),i,e)}),N(g5,function(t,n,e,i){if(i[0]===0){var x=i[1];u(f(e),vK0),u(f(e),lK0),a(t,e,x[1]),u(f(e),bK0);var c=x[2],s=function(h){return u(n,h)},p=function(h){return u(t,h)};return R(Il[2],p,s,e,c),u(f(e),pK0),u(f(e),mK0)}u(f(e),_K0);var y=i[1];function T(h){return u(n,h)}function E(h){return u(t,h)}return R(qe[31],E,T,e,y),u(f(e),yK0)}),N(FJ,function(t,n,e){var i=a(g5,t,n);return a(P0(sK0),i,e)});var TJ=[0,rP,gJ,g5,FJ],eP=function t(n,e,i,x){return t.fun(n,e,i,x)},OJ=function t(n,e,i){return t.fun(n,e,i)},F5=function t(n,e,i,x){return t.fun(n,e,i,x)},IJ=function t(n,e,i){return t.fun(n,e,i)};N(eP,function(t,n,e,i){u(f(e),Bz0),a(f(e),Uz0,qz0);var x=i[1];function c(K){return u(n,K)}R(F5,function(K){return u(t,K)},c,e,x),u(f(e),Hz0),u(f(e),Xz0),a(f(e),Vz0,Yz0);var s=i[2];function p(K){return u(n,K)}function y(K){return u(t,K)}R(qe[31],y,p,e,s),u(f(e),zz0),u(f(e),Kz0),a(f(e),Jz0,Wz0);var T=i[3];function E(K){return u(n,K)}function h(K){return u(t,K)}R(Xu[35],h,E,e,T),u(f(e),$z0),u(f(e),Zz0),a(f(e),rK0,Qz0);var w=i[4];a(f(e),eK0,w),u(f(e),nK0),u(f(e),tK0),a(f(e),iK0,uK0);var G=i[5];if(G){g(e,fK0);var A=G[1],S=function(K,V){return g(K,Mz0)},M=function(K){return u(t,K)};R(Dr[1],M,S,e,A),g(e,xK0)}else g(e,aK0);return u(f(e),oK0),u(f(e),cK0)}),N(OJ,function(t,n,e){var i=a(eP,t,n);return a(P0(Gz0),i,e)}),N(F5,function(t,n,e,i){if(i[0]===0){var x=i[1];u(f(e),Nz0),u(f(e),Cz0),a(t,e,x[1]),u(f(e),Pz0);var c=x[2],s=function(h){return u(n,h)},p=function(h){return u(t,h)};return R(Il[2],p,s,e,c),u(f(e),Dz0),u(f(e),Lz0)}u(f(e),Rz0);var y=i[1];function T(h){return u(n,h)}function E(h){return u(t,h)}return R(di[5],E,T,e,y),u(f(e),jz0)}),N(IJ,function(t,n,e){var i=a(F5,t,n);return a(P0(Az0),i,e)});var AJ=[0,eP,OJ,F5,IJ],nP=function t(n,e,i,x){return t.fun(n,e,i,x)},NJ=function t(n,e,i){return t.fun(n,e,i)},T5=function t(n,e,i,x){return t.fun(n,e,i,x)},CJ=function t(n,e,i){return t.fun(n,e,i)};N(nP,function(t,n,e,i){u(f(e),iz0),a(f(e),xz0,fz0);var x=i[1];function c(K){return u(n,K)}R(T5,function(K){return u(t,K)},c,e,x),u(f(e),az0),u(f(e),oz0),a(f(e),sz0,cz0);var s=i[2];function p(K){return u(n,K)}function y(K){return u(t,K)}R(qe[31],y,p,e,s),u(f(e),vz0),u(f(e),lz0),a(f(e),pz0,bz0);var T=i[3];function E(K){return u(n,K)}function h(K){return u(t,K)}R(Xu[35],h,E,e,T),u(f(e),mz0),u(f(e),_z0),a(f(e),dz0,yz0);var w=i[4];a(f(e),hz0,w),u(f(e),kz0),u(f(e),wz0),a(f(e),Sz0,Ez0);var G=i[5];if(G){g(e,gz0);var A=G[1],S=function(K,V){return g(K,uz0)},M=function(K){return u(t,K)};R(Dr[1],M,S,e,A),g(e,Fz0)}else g(e,Tz0);return u(f(e),Oz0),u(f(e),Iz0)}),N(NJ,function(t,n,e){var i=a(nP,t,n);return a(P0(tz0),i,e)}),N(T5,function(t,n,e,i){if(i[0]===0){var x=i[1];u(f(e),JV0),u(f(e),$V0),a(t,e,x[1]),u(f(e),ZV0);var c=x[2],s=function(h){return u(n,h)},p=function(h){return u(t,h)};return R(Il[2],p,s,e,c),u(f(e),QV0),u(f(e),rz0)}u(f(e),ez0);var y=i[1];function T(h){return u(n,h)}function E(h){return u(t,h)}return R(di[5],E,T,e,y),u(f(e),nz0)}),N(CJ,function(t,n,e){var i=a(T5,t,n);return a(P0(WV0),i,e)});var PJ=[0,nP,NJ,T5,CJ],tP=function t(n,e,i){return t.fun(n,e,i)},DJ=function t(n,e){return t.fun(n,e)},O5=function t(n,e,i){return t.fun(n,e,i)},LJ=function t(n,e){return t.fun(n,e)};N(tP,function(t,n,e){u(f(n),VV0),a(t,n,e[1]),u(f(n),zV0);var i=e[2];return ir(O5,function(x){return u(t,x)},n,i),u(f(n),KV0)}),N(DJ,function(t,n){var e=u(tP,t);return a(P0(YV0),e,n)}),N(O5,function(t,n,e){u(f(n),BV0),a(f(n),UV0,qV0);var i=e[1];function x(s){return u(t,s)}function c(s){return u(t,s)}return R(Ln[1],c,x,n,i),u(f(n),HV0),u(f(n),XV0)}),N(LJ,function(t,n){var e=u(O5,t);return a(P0(MV0),e,n)});var uP=[0,tP,DJ,O5,LJ],iP=function t(n,e,i,x){return t.fun(n,e,i,x)},RJ=function t(n,e,i){return t.fun(n,e,i)},I5=function t(n,e,i,x){return t.fun(n,e,i,x)},jJ=function t(n,e,i){return t.fun(n,e,i)};N(iP,function(t,n,e,i){u(f(e),RV0),a(n,e,i[1]),u(f(e),jV0);var x=i[2];function c(s){return u(n,s)}return R(I5,function(s){return u(t,s)},c,e,x),u(f(e),GV0)}),N(RJ,function(t,n,e){var i=a(iP,t,n);return a(P0(LV0),i,e)}),N(I5,function(t,n,e,i){u(f(e),EV0),a(f(e),gV0,SV0);var x=i[1];function c(y){return u(n,y)}function s(y){return u(n,y)}R(Ln[1],s,c,e,x),u(f(e),FV0),u(f(e),TV0),a(f(e),IV0,OV0);var p=i[2];return u(f(e),AV0),a(n,e,p[1]),u(f(e),NV0),a(t,e,p[2]),u(f(e),CV0),u(f(e),PV0),u(f(e),DV0)}),N(jJ,function(t,n,e){var i=a(I5,t,n);return a(P0(wV0),i,e)});var A5=[0,iP,RJ,I5,jJ],fP=function t(n,e,i){return t.fun(n,e,i)},GJ=function t(n,e){return t.fun(n,e)};N(fP,function(t,n,e){u(f(n),ZY0),a(f(n),rV0,QY0);var i=e[1];u(f(n),eV0);var x=0;be(function(h,w){h&&u(f(n),$Y0);function G(S){return u(t,S)}function A(S){function M(K){return u(t,K)}return a(XN[1],M,S)}return R(A5[1],A,G,n,w),1},x,i),u(f(n),nV0),u(f(n),tV0),u(f(n),uV0),a(f(n),fV0,iV0);var c=e[2];a(f(n),xV0,c),u(f(n),aV0),u(f(n),oV0),a(f(n),sV0,cV0);var s=e[3];a(f(n),vV0,s),u(f(n),lV0),u(f(n),bV0),a(f(n),mV0,pV0);var p=e[4];if(p){g(n,_V0);var y=p[1],T=function(h,w){u(f(h),WY0);var G=0;return be(function(A,S){A&&u(f(h),KY0);function M(K){return u(t,K)}return ir(uu[1],M,h,S),1},G,w),u(f(h),JY0)},E=function(h){return u(t,h)};R(Dr[1],E,T,n,y),g(n,yV0)}else g(n,dV0);return u(f(n),hV0),u(f(n),kV0)}),N(GJ,function(t,n){var e=u(fP,t);return a(P0(zY0),e,n)});var MJ=[0,fP,GJ],xP=function t(n,e,i){return t.fun(n,e,i)},BJ=function t(n,e){return t.fun(n,e)};N(xP,function(t,n,e){u(f(n),EY0),a(f(n),gY0,SY0);var i=e[1];u(f(n),FY0);var x=0;be(function(h,w){h&&u(f(n),wY0);function G(S){return u(t,S)}function A(S){function M(K){return u(t,K)}return a(HN[1],M,S)}return R(A5[1],A,G,n,w),1},x,i),u(f(n),TY0),u(f(n),OY0),u(f(n),IY0),a(f(n),NY0,AY0);var c=e[2];a(f(n),CY0,c),u(f(n),PY0),u(f(n),DY0),a(f(n),RY0,LY0);var s=e[3];a(f(n),jY0,s),u(f(n),GY0),u(f(n),MY0),a(f(n),qY0,BY0);var p=e[4];if(p){g(n,UY0);var y=p[1],T=function(h,w){u(f(h),hY0);var G=0;return be(function(A,S){A&&u(f(h),dY0);function M(K){return u(t,K)}return ir(uu[1],M,h,S),1},G,w),u(f(h),kY0)},E=function(h){return u(t,h)};R(Dr[1],E,T,n,y),g(n,HY0)}else g(n,XY0);return u(f(n),YY0),u(f(n),VY0)}),N(BJ,function(t,n){var e=u(xP,t);return a(P0(yY0),e,n)});var qJ=[0,xP,BJ],aP=function t(n,e,i){return t.fun(n,e,i)},UJ=function t(n,e){return t.fun(n,e)},N5=function t(n,e,i,x){return t.fun(n,e,i,x)},HJ=function t(n,e,i){return t.fun(n,e,i)};N(aP,function(t,n,e){u(f(n),JX0),a(f(n),ZX0,$X0);var i=e[1];function x(h){return u(t,h)}R(N5,function(h){function w(G){return u(t,G)}return a(F1[1],w,h)},x,n,i),u(f(n),QX0),u(f(n),rY0),a(f(n),nY0,eY0);var c=e[2];a(f(n),tY0,c),u(f(n),uY0),u(f(n),iY0),a(f(n),xY0,fY0);var s=e[3];a(f(n),aY0,s),u(f(n),oY0),u(f(n),cY0),a(f(n),vY0,sY0);var p=e[4];if(p){g(n,lY0);var y=p[1],T=function(h,w){u(f(h),KX0);var G=0;return be(function(A,S){A&&u(f(h),zX0);function M(K){return u(t,K)}return ir(uu[1],M,h,S),1},G,w),u(f(h),WX0)},E=function(h){return u(t,h)};R(Dr[1],E,T,n,y),g(n,bY0)}else g(n,pY0);return u(f(n),mY0),u(f(n),_Y0)}),N(UJ,function(t,n){var e=u(aP,t);return a(P0(VX0),e,n)}),N(N5,function(t,n,e,i){if(i[0]===0){u(f(e),GX0),u(f(e),MX0);var x=i[1],c=0;return be(function(y,T){y&&u(f(e),jX0);function E(h){return u(n,h)}return ir(uP[1],E,e,T),1},c,x),u(f(e),BX0),u(f(e),qX0)}u(f(e),UX0),u(f(e),HX0);var s=i[1],p=0;return be(function(y,T){y&&u(f(e),RX0);function E(w){return u(n,w)}function h(w){return u(t,w)}return R(A5[1],h,E,e,T),1},p,s),u(f(e),XX0),u(f(e),YX0)}),N(HJ,function(t,n,e){var i=a(N5,t,n);return a(P0(LX0),i,e)});var XJ=[0,aP,UJ,N5,HJ],oP=function t(n,e,i){return t.fun(n,e,i)},YJ=function t(n,e){return t.fun(n,e)};N(oP,function(t,n,e){u(f(n),mX0),a(f(n),yX0,_X0);var i=e[1];u(f(n),dX0);var x=0;be(function(E,h){E&&u(f(n),pX0);function w(G){return u(t,G)}return ir(uP[1],w,n,h),1},x,i),u(f(n),hX0),u(f(n),kX0),u(f(n),wX0),a(f(n),SX0,EX0);var c=e[2];a(f(n),gX0,c),u(f(n),FX0),u(f(n),TX0),a(f(n),IX0,OX0);var s=e[3];if(s){g(n,AX0);var p=s[1],y=function(E,h){u(f(E),lX0);var w=0;return be(function(G,A){G&&u(f(E),vX0);function S(M){return u(t,M)}return ir(uu[1],S,E,A),1},w,h),u(f(E),bX0)},T=function(E){return u(t,E)};R(Dr[1],T,y,n,p),g(n,NX0)}else g(n,CX0);return u(f(n),PX0),u(f(n),DX0)}),N(YJ,function(t,n){var e=u(oP,t);return a(P0(sX0),e,n)});var VJ=[0,oP,YJ],cP=function t(n,e,i,x){return t.fun(n,e,i,x)},zJ=function t(n,e,i){return t.fun(n,e,i)},C5=function t(n,e,i){return t.fun(n,e,i)},KJ=function t(n,e){return t.fun(n,e)},P5=function t(n,e,i){return t.fun(n,e,i)},WJ=function t(n,e){return t.fun(n,e)};N(cP,function(t,n,e,i){u(f(e),WH0),a(f(e),$H0,JH0);var x=i[1];function c(w){return u(n,w)}function s(w){return u(t,w)}R(Ln[1],s,c,e,x),u(f(e),ZH0),u(f(e),QH0),a(f(e),eX0,rX0);var p=i[2];ir(C5,function(w){return u(t,w)},e,p),u(f(e),nX0),u(f(e),tX0),a(f(e),iX0,uX0);var y=i[3];if(y){g(e,fX0);var T=y[1],E=function(w,G){return g(w,KH0)},h=function(w){return u(t,w)};R(Dr[1],h,E,e,T),g(e,xX0)}else g(e,aX0);return u(f(e),oX0),u(f(e),cX0)}),N(zJ,function(t,n,e){var i=a(cP,t,n);return a(P0(zH0),i,e)}),N(C5,function(t,n,e){u(f(n),XH0),a(t,n,e[1]),u(f(n),YH0);var i=e[2];return ir(P5,function(x){return u(t,x)},n,i),u(f(n),VH0)}),N(KJ,function(t,n){var e=u(C5,t);return a(P0(HH0),e,n)}),N(P5,function(t,n,e){switch(e[0]){case 0:u(f(n),LH0);var i=e[1],x=function(h){return u(t,h)};return ir(MJ[1],x,n,i),u(f(n),RH0);case 1:u(f(n),jH0);var c=e[1],s=function(h){return u(t,h)};return ir(qJ[1],s,n,c),u(f(n),GH0);case 2:u(f(n),MH0);var p=e[1],y=function(h){return u(t,h)};return ir(XJ[1],y,n,p),u(f(n),BH0);default:u(f(n),qH0);var T=e[1],E=function(h){return u(t,h)};return ir(VJ[1],E,n,T),u(f(n),UH0)}}),N(WJ,function(t,n){var e=u(P5,t);return a(P0(DH0),e,n)});var JJ=[0,uP,A5,MJ,qJ,XJ,VJ,cP,zJ,C5,KJ,P5,WJ],sP=function t(n,e,i,x){return t.fun(n,e,i,x)},$J=function t(n,e,i){return t.fun(n,e,i)};N(sP,function(t,n,e,i){u(f(e),nH0),a(f(e),uH0,tH0);var x=i[1];function c(k0){return u(n,k0)}function s(k0){return u(t,k0)}R(Ln[1],s,c,e,x),u(f(e),iH0),u(f(e),fH0),a(f(e),aH0,xH0);var p=i[2];if(p){g(e,oH0);var y=p[1],T=function(k0){return u(n,k0)},E=function(k0){return u(t,k0)};R(Je[22][1],E,T,e,y),g(e,cH0)}else g(e,sH0);u(f(e),vH0),u(f(e),lH0),a(f(e),pH0,bH0);var h=i[3];u(f(e),mH0);var w=0;be(function(k0,g0){k0&&u(f(e),ZU0),u(f(e),QU0),a(t,e,g0[1]),u(f(e),rH0);var e0=g0[2];function x0(c0){return u(n,c0)}function l(c0){return u(t,c0)}return R(Je[2][2],l,x0,e,e0),u(f(e),eH0),1},w,h),u(f(e),_H0),u(f(e),yH0),u(f(e),dH0),a(f(e),kH0,hH0);var G=i[4];u(f(e),wH0),a(t,e,G[1]),u(f(e),EH0);var A=G[2];function S(k0){return u(n,k0)}function M(k0){return u(t,k0)}R(Je[5][6],M,S,e,A),u(f(e),SH0),u(f(e),gH0),u(f(e),FH0),a(f(e),OH0,TH0);var K=i[5];if(K){g(e,IH0);var V=K[1],f0=function(k0,g0){return g(k0,$U0)},m0=function(k0){return u(t,k0)};R(Dr[1],m0,f0,e,V),g(e,AH0)}else g(e,NH0);return u(f(e),CH0),u(f(e),PH0)}),N($J,function(t,n,e){var i=a(sP,t,n);return a(P0(JU0),i,e)});var D5=[0,sP,$J],vP=function t(n,e,i,x){return t.fun(n,e,i,x)},ZJ=function t(n,e,i){return t.fun(n,e,i)};N(vP,function(t,n,e,i){u(f(e),eU0),a(f(e),tU0,nU0);var x=i[1];function c(_0){return u(n,_0)}function s(_0){return u(t,_0)}R(Ln[1],s,c,e,x),u(f(e),uU0),u(f(e),iU0),a(f(e),xU0,fU0);var p=i[2];if(p){g(e,aU0);var y=p[1],T=function(_0){return u(n,_0)},E=function(_0){return u(t,_0)};R(Je[22][1],E,T,e,y),g(e,oU0)}else g(e,cU0);u(f(e),sU0),u(f(e),vU0),a(f(e),bU0,lU0);var h=i[3];u(f(e),pU0),a(t,e,h[1]),u(f(e),mU0);var w=h[2];function G(_0){return u(n,_0)}function A(_0){return u(t,_0)}R(Je[5][6],A,G,e,w),u(f(e),_U0),u(f(e),yU0),u(f(e),dU0),a(f(e),kU0,hU0);var S=i[4];if(S){var M=S[1];g(e,wU0),u(f(e),EU0),a(t,e,M[1]),u(f(e),SU0);var K=M[2],V=function(_0){return u(n,_0)},f0=function(_0){return u(t,_0)};R(Je[2][2],f0,V,e,K),u(f(e),gU0),g(e,FU0)}else g(e,TU0);u(f(e),OU0),u(f(e),IU0),a(f(e),NU0,AU0);var m0=i[5];u(f(e),CU0);var k0=0;be(function(_0,E0){_0&&u(f(e),$q0),u(f(e),Zq0),a(t,e,E0[1]),u(f(e),Qq0);var X0=E0[2];function b(X){return u(n,X)}function G0(X){return u(t,X)}return R(Je[2][2],G0,b,e,X0),u(f(e),rU0),1},k0,m0),u(f(e),PU0),u(f(e),DU0),u(f(e),LU0),a(f(e),jU0,RU0);var g0=i[6];if(g0){g(e,GU0);var e0=g0[1],x0=function(_0){return u(n,_0)},l=function(_0){return u(t,_0)};R(T1[5][2],l,x0,e,e0),g(e,MU0)}else g(e,BU0);u(f(e),qU0),u(f(e),UU0),a(f(e),XU0,HU0);var c0=i[7];if(c0){g(e,YU0);var t0=c0[1],a0=function(_0,E0){return g(_0,Jq0)},w0=function(_0){return u(t,_0)};R(Dr[1],w0,a0,e,t0),g(e,VU0)}else g(e,zU0);return u(f(e),KU0),u(f(e),WU0)}),N(ZJ,function(t,n,e){var i=a(vP,t,n);return a(P0(Wq0),i,e)});var lP=[0,vP,ZJ],bP=function t(n,e,i,x){return t.fun(n,e,i,x)},QJ=function t(n,e,i){return t.fun(n,e,i)};N(bP,function(t,n,e,i){u(f(e),Pq0),a(f(e),Lq0,Dq0);var x=i[1];function c(A){return u(n,A)}function s(A){return u(t,A)}R(Ln[1],s,c,e,x),u(f(e),Rq0),u(f(e),jq0),a(f(e),Mq0,Gq0);var p=i[2];function y(A){return u(n,A)}function T(A){return u(t,A)}R(Je[17],T,y,e,p),u(f(e),Bq0),u(f(e),qq0),a(f(e),Hq0,Uq0);var E=i[3];if(E){g(e,Xq0);var h=E[1],w=function(A,S){return g(A,Cq0)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,Yq0)}else g(e,Vq0);return u(f(e),zq0),u(f(e),Kq0)}),N(QJ,function(t,n,e){var i=a(bP,t,n);return a(P0(Nq0),i,e)});var pP=[0,bP,QJ],mP=function t(n,e,i,x){return t.fun(n,e,i,x)},r$=function t(n,e,i){return t.fun(n,e,i)};N(mP,function(t,n,e,i){u(f(e),aq0),a(f(e),cq0,oq0);var x=i[1];function c(V){return u(n,V)}function s(V){return u(t,V)}R(Ln[1],s,c,e,x),u(f(e),sq0),u(f(e),vq0),a(f(e),bq0,lq0);var p=i[2];function y(V){return u(n,V)}function T(V){return u(t,V)}R(Je[17],T,y,e,p),u(f(e),pq0),u(f(e),mq0),a(f(e),yq0,_q0);var E=i[3];if(E){g(e,dq0);var h=E[1],w=function(V){return u(n,V)},G=function(V){return u(t,V)};R(Je[24][1],G,w,e,h),g(e,hq0)}else g(e,kq0);u(f(e),wq0),u(f(e),Eq0),a(f(e),gq0,Sq0);var A=i[4];if(A){g(e,Fq0);var S=A[1],M=function(V,f0){return g(V,xq0)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,Tq0)}else g(e,Oq0);return u(f(e),Iq0),u(f(e),Aq0)}),N(r$,function(t,n,e){var i=a(mP,t,n);return a(P0(fq0),i,e)});var _P=[0,mP,r$],L5=function t(n,e,i,x){return t.fun(n,e,i,x)},e$=function t(n,e,i){return t.fun(n,e,i)},R5=function t(n,e){return t.fun(n,e)},n$=function t(n){return t.fun(n)},yP=function t(n,e,i,x){return t.fun(n,e,i,x)},t$=function t(n,e,i){return t.fun(n,e,i)};N(L5,function(t,n,e,i){if(i[0]===0){u(f(e),QB0);var x=i[1],c=function(E){return u(n,E)},s=function(E){return u(t,E)};return R(Ln[1],s,c,e,x),u(f(e),rq0)}var p=i[1];u(f(e),eq0),u(f(e),nq0),a(n,e,p[1]),u(f(e),tq0);var y=p[2];function T(E){return u(t,E)}return ir(F1[1],T,e,y),u(f(e),uq0),u(f(e),iq0)}),N(e$,function(t,n,e){var i=a(L5,t,n);return a(P0(ZB0),i,e)}),N(R5,function(t,n){return n?g(t,JB0):g(t,$B0)}),N(n$,function(t){return a(P0(WB0),R5,t)}),N(yP,function(t,n,e,i){u(f(e),FB0),a(f(e),OB0,TB0);var x=i[1];function c(A){return u(n,A)}R(L5,function(A){return u(t,A)},c,e,x),u(f(e),IB0),u(f(e),AB0),a(f(e),CB0,NB0);var s=i[2];u(f(e),PB0),a(t,e,s[1]),u(f(e),DB0);var p=s[2];function y(A){return u(n,A)}function T(A){return u(t,A)}R(Kv[1],T,y,e,p),u(f(e),LB0),u(f(e),RB0),u(f(e),jB0),a(f(e),MB0,GB0),a(R5,e,i[3]),u(f(e),BB0),u(f(e),qB0),a(f(e),HB0,UB0);var E=i[4];if(E){g(e,XB0);var h=E[1],w=function(A,S){return g(A,gB0)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,YB0)}else g(e,VB0);return u(f(e),zB0),u(f(e),KB0)}),N(t$,function(t,n,e){var i=a(yP,t,n);return a(P0(SB0),i,e)});var u$=[0,L5,e$,R5,n$,yP,t$],dP=function t(n,e,i,x){return t.fun(n,e,i,x)},i$=function t(n,e,i){return t.fun(n,e,i)};N(dP,function(t,n,e,i){u(f(e),vB0),a(f(e),bB0,lB0);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(Je[17],s,c,e,x),u(f(e),pB0),u(f(e),mB0),a(f(e),yB0,_B0);var p=i[2];if(p){g(e,dB0);var y=p[1],T=function(h,w){return g(h,sB0)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,hB0)}else g(e,kB0);return u(f(e),wB0),u(f(e),EB0)}),N(i$,function(t,n,e){var i=a(dP,t,n);return a(P0(cB0),i,e)});var f$=[0,dP,i$],hP=function t(n,e,i){return t.fun(n,e,i)},x$=function t(n,e){return t.fun(n,e)},j5=function t(n,e,i){return t.fun(n,e,i)},a$=function t(n,e){return t.fun(n,e)};N(hP,function(t,n,e){u(f(n),xB0),a(t,n,e[1]),u(f(n),aB0);var i=e[2];return ir(j5,function(x){return u(t,x)},n,i),u(f(n),oB0)}),N(x$,function(t,n){var e=u(hP,t);return a(P0(fB0),e,n)}),N(j5,function(t,n,e){u(f(n),KM0),a(f(n),JM0,WM0);var i=e[1];function x(E){return u(t,E)}function c(E){return u(t,E)}R(Ln[1],c,x,n,i),u(f(n),$M0),u(f(n),ZM0),a(f(n),rB0,QM0);var s=e[2];if(s){g(n,eB0);var p=s[1],y=function(E){return u(t,E)},T=function(E){return u(t,E)};R(Ln[1],T,y,n,p),g(n,nB0)}else g(n,tB0);return u(f(n),uB0),u(f(n),iB0)}),N(a$,function(t,n){var e=u(j5,t);return a(P0(zM0),e,n)});var o$=[0,hP,x$,j5,a$],kP=function t(n,e,i){return t.fun(n,e,i)},c$=function t(n,e){return t.fun(n,e)};N(kP,function(t,n,e){var i=e[2];if(u(f(n),qM0),a(t,n,e[1]),u(f(n),UM0),i){g(n,HM0);var x=i[1],c=function(p){return u(t,p)},s=function(p){return u(t,p)};R(Ln[1],s,c,n,x),g(n,XM0)}else g(n,YM0);return u(f(n),VM0)}),N(c$,function(t,n){var e=u(kP,t);return a(P0(BM0),e,n)});var s$=[0,kP,c$],wP=function t(n,e,i,x){return t.fun(n,e,i,x)},v$=function t(n,e,i){return t.fun(n,e,i)},G5=function t(n,e,i){return t.fun(n,e,i)},l$=function t(n,e){return t.fun(n,e)};N(wP,function(t,n,e,i){u(f(e),uM0),a(f(e),fM0,iM0);var x=i[1];if(x){g(e,xM0);var c=x[1],s=function(V){return u(n,V)},p=function(V){return u(t,V)};R(Xu[35],p,s,e,c),g(e,aM0)}else g(e,oM0);u(f(e),cM0),u(f(e),sM0),a(f(e),lM0,vM0);var y=i[2];if(y){g(e,bM0);var T=y[1];ir(G5,function(V){return u(t,V)},e,T),g(e,pM0)}else g(e,mM0);u(f(e),_M0),u(f(e),yM0),a(f(e),hM0,dM0);var E=i[3];if(E){var h=E[1];g(e,kM0),u(f(e),wM0),a(t,e,h[1]),u(f(e),EM0);var w=h[2],G=function(V){return u(t,V)};ir(F1[1],G,e,w),u(f(e),SM0),g(e,gM0)}else g(e,FM0);u(f(e),TM0),u(f(e),OM0),a(f(e),AM0,IM0),a(Xu[33],e,i[4]),u(f(e),NM0),u(f(e),CM0),a(f(e),DM0,PM0);var A=i[5];if(A){g(e,LM0);var S=A[1],M=function(V,f0){return g(V,tM0)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,RM0)}else g(e,jM0);return u(f(e),GM0),u(f(e),MM0)}),N(v$,function(t,n,e){var i=a(wP,t,n);return a(P0(nM0),i,e)}),N(G5,function(t,n,e){if(e[0]===0){u(f(n),JG0),u(f(n),$G0);var i=e[1],x=0;return be(function(p,y){p&&u(f(n),WG0);function T(E){return u(t,E)}return ir(o$[1],T,n,y),1},x,i),u(f(n),ZG0),u(f(n),QG0)}u(f(n),rM0);var c=e[1];function s(p){return u(t,p)}return ir(s$[1],s,n,c),u(f(n),eM0)}),N(l$,function(t,n){var e=u(G5,t);return a(P0(KG0),e,n)});var EP=[0,o$,s$,wP,v$,G5,l$],SP=function t(n,e,i,x){return t.fun(n,e,i,x)},b$=function t(n,e,i){return t.fun(n,e,i)},M5=function t(n,e,i,x){return t.fun(n,e,i,x)},p$=function t(n,e,i){return t.fun(n,e,i)};N(SP,function(t,n,e,i){u(f(e),CG0),a(f(e),DG0,PG0),a(t,e,i[1]),u(f(e),LG0),u(f(e),RG0),a(f(e),GG0,jG0);var x=i[2];function c(E){return u(n,E)}R(M5,function(E){return u(t,E)},c,e,x),u(f(e),MG0),u(f(e),BG0),a(f(e),UG0,qG0);var s=i[3];if(s){g(e,HG0);var p=s[1],y=function(E,h){return g(E,NG0)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,XG0)}else g(e,YG0);return u(f(e),VG0),u(f(e),zG0)}),N(b$,function(t,n,e){var i=a(SP,t,n);return a(P0(AG0),i,e)}),N(M5,function(t,n,e,i){if(i[0]===0){u(f(e),FG0);var x=i[1],c=function(E){return u(n,E)},s=function(E){return u(t,E)};return R(Xu[35],s,c,e,x),u(f(e),TG0)}u(f(e),OG0);var p=i[1];function y(E){return u(n,E)}function T(E){return u(t,E)}return R(qe[31],T,y,e,p),u(f(e),IG0)}),N(p$,function(t,n,e){var i=a(M5,t,n);return a(P0(gG0),i,e)});var m$=[0,SP,b$,M5,p$],B5=function t(n,e,i,x){return t.fun(n,e,i,x)},_$=function t(n,e,i){return t.fun(n,e,i)},gP=function t(n,e,i,x){return t.fun(n,e,i,x)},y$=function t(n,e,i){return t.fun(n,e,i)};N(B5,function(t,n,e,i){switch(i[0]){case 0:var x=i[1];u(f(e),zj0),u(f(e),Kj0),a(t,e,x[1]),u(f(e),Wj0);var c=x[2],s=function(E0){return u(n,E0)},p=function(E0){return u(t,E0)};return R(pP[1],p,s,e,c),u(f(e),Jj0),u(f(e),$j0);case 1:var y=i[1];u(f(e),Zj0),u(f(e),Qj0),a(t,e,y[1]),u(f(e),rG0);var T=y[2],E=function(E0){return u(n,E0)},h=function(E0){return u(t,E0)};return R(_P[1],h,E,e,T),u(f(e),eG0),u(f(e),nG0);case 2:var w=i[1];u(f(e),tG0),u(f(e),uG0),a(t,e,w[1]),u(f(e),iG0);var G=w[2],A=function(E0){return u(n,E0)},S=function(E0){return u(t,E0)};return R(lP[1],S,A,e,G),u(f(e),fG0),u(f(e),xG0);case 3:u(f(e),aG0);var M=i[1],K=function(E0){return u(n,E0)},V=function(E0){return u(t,E0)};return R(Je[13],V,K,e,M),u(f(e),oG0);case 4:var f0=i[1];u(f(e),cG0),u(f(e),sG0),a(t,e,f0[1]),u(f(e),vG0);var m0=f0[2],k0=function(E0){return u(n,E0)},g0=function(E0){return u(t,E0)};return R(d5[1],g0,k0,e,m0),u(f(e),lG0),u(f(e),bG0);case 5:var e0=i[1];u(f(e),pG0),u(f(e),mG0),a(t,e,e0[1]),u(f(e),_G0);var x0=e0[2],l=function(E0){return u(n,E0)},c0=function(E0){return u(t,E0)};return R(h5[1],c0,l,e,x0),u(f(e),yG0),u(f(e),dG0);default:var t0=i[1];u(f(e),hG0),u(f(e),kG0),a(t,e,t0[1]),u(f(e),wG0);var a0=t0[2],w0=function(E0){return u(n,E0)},_0=function(E0){return u(t,E0)};return R(D5[1],_0,w0,e,a0),u(f(e),EG0),u(f(e),SG0)}}),N(_$,function(t,n,e){var i=a(B5,t,n);return a(P0(Vj0),i,e)}),N(gP,function(t,n,e,i){u(f(e),xj0),a(f(e),oj0,aj0);var x=i[1];x?(g(e,cj0),a(t,e,x[1]),g(e,sj0)):g(e,vj0),u(f(e),lj0),u(f(e),bj0),a(f(e),mj0,pj0);var c=i[2];if(c){g(e,_j0);var s=c[1],p=function(f0){return u(n,f0)};R(B5,function(f0){return u(t,f0)},p,e,s),g(e,yj0)}else g(e,dj0);u(f(e),hj0),u(f(e),kj0),a(f(e),Ej0,wj0);var y=i[3];if(y){g(e,Sj0);var T=y[1],E=function(f0){return u(t,f0)};ir(EP[5],E,e,T),g(e,gj0)}else g(e,Fj0);u(f(e),Tj0),u(f(e),Oj0),a(f(e),Aj0,Ij0);var h=i[4];if(h){var w=h[1];g(e,Nj0),u(f(e),Cj0),a(t,e,w[1]),u(f(e),Pj0);var G=w[2],A=function(f0){return u(t,f0)};ir(F1[1],A,e,G),u(f(e),Dj0),g(e,Lj0)}else g(e,Rj0);u(f(e),jj0),u(f(e),Gj0),a(f(e),Bj0,Mj0);var S=i[5];if(S){g(e,qj0);var M=S[1],K=function(f0,m0){return g(f0,fj0)},V=function(f0){return u(t,f0)};R(Dr[1],V,K,e,M),g(e,Uj0)}else g(e,Hj0);return u(f(e),Xj0),u(f(e),Yj0)}),N(y$,function(t,n,e){var i=a(gP,t,n);return a(P0(ij0),i,e)});var d$=[0,B5,_$,gP,y$],Al=function t(n,e){return t.fun(n,e)},h$=function t(n){return t.fun(n)},q5=function t(n,e,i,x){return t.fun(n,e,i,x)},k$=function t(n,e,i){return t.fun(n,e,i)},U5=function t(n,e,i,x){return t.fun(n,e,i,x)},w$=function t(n,e,i){return t.fun(n,e,i)},FP=function t(n,e,i,x){return t.fun(n,e,i,x)},E$=function t(n,e,i){return t.fun(n,e,i)};N(Al,function(t,n){switch(n){case 0:return g(t,nj0);case 1:return g(t,tj0);default:return g(t,uj0)}}),N(h$,function(t){return a(P0(ej0),Al,t)}),N(q5,function(t,n,e,i){if(i[0]===0){u(f(e),VR0),u(f(e),zR0);var x=i[1],c=0;return be(function(E,h){E&&u(f(e),YR0);function w(G){return u(n,G)}return R(U5,function(G){return u(t,G)},w,e,h),1},c,x),u(f(e),KR0),u(f(e),WR0)}var s=i[1];u(f(e),JR0),u(f(e),$R0),a(t,e,s[1]),u(f(e),ZR0);var p=s[2];function y(E){return u(n,E)}function T(E){return u(t,E)}return R(Ln[1],T,y,e,p),u(f(e),QR0),u(f(e),rj0)}),N(k$,function(t,n,e){var i=a(q5,t,n);return a(P0(XR0),i,e)}),N(U5,function(t,n,e,i){u(f(e),gR0),a(f(e),TR0,FR0);var x=i[1];x?(g(e,OR0),a(Al,e,x[1]),g(e,IR0)):g(e,AR0),u(f(e),NR0),u(f(e),CR0),a(f(e),DR0,PR0);var c=i[2];if(c){g(e,LR0);var s=c[1],p=function(w){return u(n,w)},y=function(w){return u(t,w)};R(Ln[1],y,p,e,s),g(e,RR0)}else g(e,jR0);u(f(e),GR0),u(f(e),MR0),a(f(e),qR0,BR0);var T=i[3];function E(w){return u(n,w)}function h(w){return u(t,w)}return R(Ln[1],h,E,e,T),u(f(e),UR0),u(f(e),HR0)}),N(w$,function(t,n,e){var i=a(U5,t,n);return a(P0(SR0),i,e)}),N(FP,function(t,n,e,i){u(f(e),YL0),a(f(e),zL0,VL0),a(Al,e,i[1]),u(f(e),KL0),u(f(e),WL0),a(f(e),$L0,JL0);var x=i[2];u(f(e),ZL0),a(t,e,x[1]),u(f(e),QL0);var c=x[2];function s(V){return u(t,V)}ir(F1[1],s,e,c),u(f(e),rR0),u(f(e),eR0),u(f(e),nR0),a(f(e),uR0,tR0);var p=i[3];if(p){g(e,iR0);var y=p[1],T=function(V){return u(n,V)},E=function(V){return u(t,V)};R(Ln[1],E,T,e,y),g(e,fR0)}else g(e,xR0);u(f(e),aR0),u(f(e),oR0),a(f(e),sR0,cR0);var h=i[4];if(h){g(e,vR0);var w=h[1],G=function(V){return u(n,V)};R(q5,function(V){return u(t,V)},G,e,w),g(e,lR0)}else g(e,bR0);u(f(e),pR0),u(f(e),mR0),a(f(e),yR0,_R0);var A=i[5];if(A){g(e,dR0);var S=A[1],M=function(V,f0){return g(V,XL0)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,hR0)}else g(e,kR0);return u(f(e),wR0),u(f(e),ER0)}),N(E$,function(t,n,e){var i=a(FP,t,n);return a(P0(HL0),i,e)});var S$=[0,Al,h$,q5,k$,U5,w$,FP,E$],TP=function t(n,e,i,x){return t.fun(n,e,i,x)},g$=function t(n,e,i){return t.fun(n,e,i)};N(TP,function(t,n,e,i){u(f(e),EL0),a(f(e),gL0,SL0);var x=i[1];function c(G){return u(n,G)}function s(G){return u(t,G)}R(qe[31],s,c,e,x),u(f(e),FL0),u(f(e),TL0),a(f(e),IL0,OL0);var p=i[2];if(p){g(e,AL0);var y=p[1];a(f(e),NL0,y),g(e,CL0)}else g(e,PL0);u(f(e),DL0),u(f(e),LL0),a(f(e),jL0,RL0);var T=i[3];if(T){g(e,GL0);var E=T[1],h=function(G,A){return g(G,wL0)},w=function(G){return u(t,G)};R(Dr[1],w,h,e,E),g(e,ML0)}else g(e,BL0);return u(f(e),qL0),u(f(e),UL0)}),N(g$,function(t,n,e){var i=a(TP,t,n);return a(P0(kL0),i,e)});var F$=[0,TP,g$],OP=function t(n,e,i){return t.fun(n,e,i)},T$=function t(n,e){return t.fun(n,e)};N(OP,function(t,n,e){u(f(n),lL0),a(f(n),pL0,bL0);var i=e[1];if(i){g(n,mL0);var x=i[1],c=function(p,y){return g(p,vL0)},s=function(p){return u(t,p)};R(Dr[1],s,c,n,x),g(n,_L0)}else g(n,yL0);return u(f(n),dL0),u(f(n),hL0)}),N(T$,function(t,n){var e=u(OP,t);return a(P0(sL0),e,n)});var O$=[0,OP,T$],IP=function t(n,e){return t.fun(n,e)},I$=function t(n){return t.fun(n)},AP=function t(n,e,i,x){return t.fun(n,e,i,x)},A$=function t(n,e,i){return t.fun(n,e,i)},H5=function t(n,e,i,x){return t.fun(n,e,i,x)},N$=function t(n,e,i){return t.fun(n,e,i)};N(IP,function(t,n){return n?g(t,oL0):g(t,cL0)}),N(I$,function(t){return a(P0(aL0),IP,t)}),N(AP,function(t,n,e,i){u(f(e),iL0),a(t,e,i[1]),u(f(e),fL0);var x=i[2];function c(s){return u(n,s)}return R(H5,function(s){return u(t,s)},c,e,x),u(f(e),xL0)}),N(A$,function(t,n,e){var i=a(AP,t,n);return a(P0(uL0),i,e)}),N(H5,function(t,n,e,i){switch(i[0]){case 0:u(f(e),GP0);var x=i[1],c=function(d0){return u(n,d0)},s=function(d0){return u(t,d0)};return R(Kv[1],s,c,e,x),u(f(e),MP0);case 1:u(f(e),BP0);var p=i[1],y=function(d0){return u(t,d0)};return ir(zW[1],y,e,p),u(f(e),qP0);case 2:u(f(e),UP0);var T=i[1],E=function(d0){return u(n,d0)},h=function(d0){return u(t,d0)};return R(T1[8],h,E,e,T),u(f(e),HP0);case 3:u(f(e),XP0);var w=i[1],G=function(d0){return u(t,d0)};return ir(WW[1],G,e,w),u(f(e),YP0);case 4:u(f(e),VP0);var A=i[1],S=function(d0){return u(t,d0)};return ir($W[1],S,e,A),u(f(e),zP0);case 5:u(f(e),KP0);var M=i[1],K=function(d0){return u(n,d0)},V=function(d0){return u(t,d0)};return R(lP[1],V,K,e,M),u(f(e),WP0);case 6:u(f(e),JP0);var f0=i[1],m0=function(d0){return u(n,d0)},k0=function(d0){return u(t,d0)};return R(d$[3],k0,m0,e,f0),u(f(e),$P0);case 7:u(f(e),ZP0);var g0=i[1],e0=function(d0){return u(n,d0)},x0=function(d0){return u(t,d0)};return R(_P[1],x0,e0,e,g0),u(f(e),QP0);case 8:u(f(e),rD0);var l=i[1],c0=function(d0){return u(n,d0)},t0=function(d0){return u(t,d0)};return R(D5[1],t0,c0,e,l),u(f(e),eD0);case 9:u(f(e),nD0);var a0=i[1],w0=function(d0){return u(n,d0)},_0=function(d0){return u(t,d0)};return R(u$[5],_0,w0,e,a0),u(f(e),tD0);case 10:u(f(e),uD0);var E0=i[1],X0=function(d0){return u(n,d0)},b=function(d0){return u(t,d0)};return R(f$[1],b,X0,e,E0),u(f(e),iD0);case 11:u(f(e),fD0);var G0=i[1],X=function(d0){return u(n,d0)},s0=function(d0){return u(t,d0)};return R(d5[1],s0,X,e,G0),u(f(e),xD0);case 12:u(f(e),aD0);var dr=i[1],Ar=function(d0){return u(n,d0)},ar=function(d0){return u(t,d0)};return R(h5[1],ar,Ar,e,dr),u(f(e),oD0);case 13:u(f(e),cD0);var W0=i[1],Lr=function(d0){return u(n,d0)},Tr=function(d0){return u(t,d0)};return R(pP[1],Tr,Lr,e,W0),u(f(e),sD0);case 14:u(f(e),vD0);var Hr=i[1],Or=function(d0){return u(n,d0)},xr=function(d0){return u(t,d0)};return R(SJ[1],xr,Or,e,Hr),u(f(e),lD0);case 15:u(f(e),bD0);var Rr=i[1],Wr=function(d0){return u(t,d0)};return ir(O$[1],Wr,e,Rr),u(f(e),pD0);case 16:u(f(e),mD0);var Jr=i[1],or=function(d0){return u(n,d0)},_r=function(d0){return u(t,d0)};return R(JJ[7],_r,or,e,Jr),u(f(e),_D0);case 17:u(f(e),yD0);var Ir=i[1],fe=function(d0){return u(n,d0)},v0=function(d0){return u(t,d0)};return R(m$[1],v0,fe,e,Ir),u(f(e),dD0);case 18:u(f(e),hD0);var P=i[1],L=function(d0){return u(n,d0)},Q=function(d0){return u(t,d0)};return R(EP[3],Q,L,e,P),u(f(e),kD0);case 19:u(f(e),wD0);var i0=i[1],l0=function(d0){return u(n,d0)},S0=function(d0){return u(t,d0)};return R(F$[1],S0,l0,e,i0),u(f(e),ED0);case 20:u(f(e),SD0);var T0=i[1],rr=function(d0){return u(n,d0)},R0=function(d0){return u(t,d0)};return R(TJ[1],R0,rr,e,T0),u(f(e),gD0);case 21:u(f(e),FD0);var B=i[1],Z=function(d0){return u(n,d0)},p0=function(d0){return u(t,d0)};return R(AJ[1],p0,Z,e,B),u(f(e),TD0);case 22:u(f(e),OD0);var b0=i[1],O0=function(d0){return u(n,d0)},q0=function(d0){return u(t,d0)};return R(PJ[1],q0,O0,e,b0),u(f(e),ID0);case 23:u(f(e),AD0);var er=i[1],yr=function(d0){return u(n,d0)},vr=function(d0){return u(t,d0)};return R(Ps[5],vr,yr,e,er),u(f(e),ND0);case 24:u(f(e),CD0);var $0=i[1],Sr=function(d0){return u(n,d0)},Mr=function(d0){return u(t,d0)};return R(HW[2],Mr,Sr,e,$0),u(f(e),PD0);case 25:u(f(e),DD0);var Br=i[1],qr=function(d0){return u(n,d0)},jr=function(d0){return u(t,d0)};return R(S$[7],jr,qr,e,Br),u(f(e),LD0);case 26:u(f(e),RD0);var $r=i[1],ne=function(d0){return u(n,d0)},Qr=function(d0){return u(t,d0)};return R(D5[1],Qr,ne,e,$r),u(f(e),jD0);case 27:u(f(e),GD0);var pe=i[1],oe=function(d0){return u(n,d0)},me=function(d0){return u(t,d0)};return R(YW[1],me,oe,e,pe),u(f(e),MD0);case 28:u(f(e),BD0);var ae=i[1],ce=function(d0){return u(n,d0)},ge=function(d0){return u(t,d0)};return R(aJ[1],ge,ce,e,ae),u(f(e),qD0);case 29:u(f(e),UD0);var H0=i[1],Fr=function(d0){return u(n,d0)},_=function(d0){return u(t,d0)};return R(fJ[2],_,Fr,e,H0),u(f(e),HD0);case 30:u(f(e),XD0);var k=i[1],I=function(d0){return u(n,d0)},U=function(d0){return u(t,d0)};return R(cJ[1],U,I,e,k),u(f(e),YD0);case 31:u(f(e),VD0);var Y=i[1],y0=function(d0){return u(n,d0)},D0=function(d0){return u(t,d0)};return R(pJ[2],D0,y0,e,Y),u(f(e),zD0);case 32:u(f(e),KD0);var I0=i[1],D=function(d0){return u(n,d0)},u0=function(d0){return u(t,d0)};return R(d5[1],u0,D,e,I0),u(f(e),WD0);case 33:u(f(e),JD0);var Y0=i[1],J0=function(d0){return u(n,d0)},fr=function(d0){return u(t,d0)};return R(h5[1],fr,J0,e,Y0),u(f(e),$D0);case 34:u(f(e),ZD0);var Q0=i[1],F0=function(d0){return u(n,d0)},gr=function(d0){return u(t,d0)};return R(Il[2],gr,F0,e,Q0),u(f(e),QD0);case 35:u(f(e),rL0);var mr=i[1],Cr=function(d0){return u(n,d0)},sr=function(d0){return u(t,d0)};return R(wJ[1],sr,Cr,e,mr),u(f(e),eL0);default:u(f(e),nL0);var Pr=i[1],K0=function(d0){return u(n,d0)},Ur=function(d0){return u(t,d0)};return R(QW[1],Ur,K0,e,Pr),u(f(e),tL0)}}),N(N$,function(t,n,e){var i=a(H5,t,n);return a(P0(jP0),i,e)}),pu(c6r,Xu,[0,Kv,HW,YW,zW,WW,$W,QW,d5,h5,fJ,aJ,cJ,pJ,Il,wJ,SJ,TJ,AJ,PJ,JJ,D5,lP,pP,_P,u$,f$,EP,m$,d$,S$,F$,O$,IP,I$,AP,A$,H5,N$]);var NP=function t(n,e,i,x){return t.fun(n,e,i,x)},C$=function t(n,e,i){return t.fun(n,e,i)},X5=function t(n,e,i){return t.fun(n,e,i)},P$=function t(n,e){return t.fun(n,e)};N(NP,function(t,n,e,i){u(f(e),DP0),a(n,e,i[1]),u(f(e),LP0);var x=i[2];return ir(X5,function(c){return u(t,c)},e,x),u(f(e),RP0)}),N(C$,function(t,n,e){var i=a(NP,t,n);return a(P0(PP0),i,e)}),N(X5,function(t,n,e){u(f(n),gP0),a(f(n),TP0,FP0);var i=e[1];if(i){g(n,OP0);var x=i[1],c=function(p,y){return g(p,SP0)},s=function(p){return u(t,p)};R(Dr[1],s,c,n,x),g(n,IP0)}else g(n,AP0);return u(f(n),NP0),u(f(n),CP0)}),N(P$,function(t,n){var e=u(X5,t);return a(P0(EP0),e,n)});var D$=[0,NP,C$,X5,P$],CP=function t(n,e,i,x){return t.fun(n,e,i,x)},L$=function t(n,e,i){return t.fun(n,e,i)};N(CP,function(t,n,e,i){if(i[0]===0){u(f(e),dP0);var x=i[1],c=function(E){return u(n,E)},s=function(E){return u(t,E)};return R(Je[13],s,c,e,x),u(f(e),hP0)}u(f(e),kP0);var p=i[1];function y(E){return u(n,E)}function T(E){return u(t,E)}return R(D$[1],T,y,e,p),u(f(e),wP0)}),N(L$,function(t,n,e){var i=a(CP,t,n);return a(P0(yP0),i,e)});var R$=[0,D$,CP,L$],PP=function t(n,e,i,x){return t.fun(n,e,i,x)},j$=function t(n,e,i){return t.fun(n,e,i)},Y5=function t(n,e,i,x){return t.fun(n,e,i,x)},G$=function t(n,e,i){return t.fun(n,e,i)};N(PP,function(t,n,e,i){u(f(e),pP0),a(t,e,i[1]),u(f(e),mP0);var x=i[2];function c(s){return u(n,s)}return R(Y5,function(s){return u(t,s)},c,e,x),u(f(e),_P0)}),N(j$,function(t,n,e){var i=a(PP,t,n);return a(P0(bP0),i,e)}),N(Y5,function(t,n,e,i){u(f(e),rP0),a(f(e),nP0,eP0);var x=i[1];u(f(e),tP0);var c=0;be(function(E,h){E&&u(f(e),QC0);function w(A){return u(n,A)}function G(A){return u(t,A)}return R(R$[2],G,w,e,h),1},c,x),u(f(e),uP0),u(f(e),iP0),u(f(e),fP0),a(f(e),aP0,xP0);var s=i[2];if(s){g(e,oP0);var p=s[1],y=function(E,h){u(f(E),$C0);var w=0;return be(function(G,A){G&&u(f(E),JC0);function S(M){return u(t,M)}return ir(uu[1],S,E,A),1},w,h),u(f(E),ZC0)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,cP0)}else g(e,sP0);return u(f(e),vP0),u(f(e),lP0)}),N(G$,function(t,n,e){var i=a(Y5,t,n);return a(P0(WC0),i,e)});var DP=function t(n,e,i,x){return t.fun(n,e,i,x)},M$=function t(n,e,i){return t.fun(n,e,i)},V5=function t(n,e,i,x){return t.fun(n,e,i,x)},B$=function t(n,e,i){return t.fun(n,e,i)},Mee=[0,PP,j$,Y5,G$];N(DP,function(t,n,e,i){u(f(e),VC0),a(t,e,i[1]),u(f(e),zC0);var x=i[2];function c(s){return u(n,s)}return R(V5,function(s){return u(t,s)},c,e,x),u(f(e),KC0)}),N(M$,function(t,n,e){var i=a(DP,t,n);return a(P0(YC0),i,e)}),N(V5,function(t,n,e,i){u(f(e),PC0),a(f(e),LC0,DC0);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(qe[31],s,c,e,x),u(f(e),RC0),u(f(e),jC0),a(f(e),MC0,GC0);var p=i[2];if(p){g(e,BC0);var y=p[1],T=function(h,w){return g(h,CC0)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,qC0)}else g(e,UC0);return u(f(e),HC0),u(f(e),XC0)}),N(B$,function(t,n,e){var i=a(V5,t,n);return a(P0(NC0),i,e)});var LP=[0,DP,M$,V5,B$],z5=function t(n,e,i,x){return t.fun(n,e,i,x)},q$=function t(n,e,i){return t.fun(n,e,i)};N(z5,function(t,n,e,i){switch(i[0]){case 0:u(f(e),gC0);var x=i[1],c=function(E){return u(n,E)},s=function(E){return u(t,E)};return R(qe[31],s,c,e,x),u(f(e),FC0);case 1:u(f(e),TC0);var p=i[1],y=function(E){return u(n,E)},T=function(E){return u(t,E)};return R(LP[1],T,y,e,p),u(f(e),OC0);default:return u(f(e),IC0),a(t,e,i[1]),u(f(e),AC0)}}),N(q$,function(t,n,e){var i=a(z5,t,n);return a(P0(SC0),i,e)});var RP=function t(n,e,i,x){return t.fun(n,e,i,x)},U$=function t(n,e,i){return t.fun(n,e,i)};N(RP,function(t,n,e,i){u(f(e),cC0),a(f(e),vC0,sC0);var x=i[1];u(f(e),lC0);var c=0;be(function(E,h){E&&u(f(e),oC0);function w(G){return u(n,G)}return R(z5,function(G){return u(t,G)},w,e,h),1},c,x),u(f(e),bC0),u(f(e),pC0),u(f(e),mC0),a(f(e),yC0,_C0);var s=i[2];if(s){g(e,dC0);var p=s[1],y=function(E,h){u(f(E),xC0);var w=0;return be(function(G,A){G&&u(f(E),fC0);function S(M){return u(t,M)}return ir(uu[1],S,E,A),1},w,h),u(f(E),aC0)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,hC0)}else g(e,kC0);return u(f(e),wC0),u(f(e),EC0)}),N(U$,function(t,n,e){var i=a(RP,t,n);return a(P0(iC0),i,e)});var H$=[0,z5,q$,RP,U$],K5=function t(n,e){return t.fun(n,e)},X$=function t(n){return t.fun(n)},jP=function t(n,e,i){return t.fun(n,e,i)},Y$=function t(n,e){return t.fun(n,e)},W5=function t(n,e){return t.fun(n,e)},V$=function t(n){return t.fun(n)};N(K5,function(t,n){u(f(t),KN0),a(f(t),JN0,WN0);var e=n[1];a(f(t),$N0,e),u(f(t),ZN0),u(f(t),QN0),a(f(t),eC0,rC0);var i=n[2];return a(f(t),nC0,i),u(f(t),tC0),u(f(t),uC0)}),N(X$,function(t){return a(P0(zN0),K5,t)}),N(jP,function(t,n,e){return u(f(n),XN0),a(t,n,e[1]),u(f(n),YN0),a(W5,n,e[2]),u(f(n),VN0)}),N(Y$,function(t,n){var e=u(jP,t);return a(P0(HN0),e,n)}),N(W5,function(t,n){u(f(t),PN0),a(f(t),LN0,DN0),a(K5,t,n[1]),u(f(t),RN0),u(f(t),jN0),a(f(t),MN0,GN0);var e=n[2];return a(f(t),BN0,e),u(f(t),qN0),u(f(t),UN0)}),N(V$,function(t){return a(P0(CN0),W5,t)});var z$=[0,K5,X$,jP,Y$,W5,V$],GP=function t(n,e,i,x){return t.fun(n,e,i,x)},K$=function t(n,e,i){return t.fun(n,e,i)};N(GP,function(t,n,e,i){u(f(e),vN0),a(f(e),bN0,lN0);var x=i[1];u(f(e),pN0);var c=0;be(function(w,G){w&&u(f(e),sN0);function A(S){return u(t,S)}return ir(z$[3],A,e,G),1},c,x),u(f(e),mN0),u(f(e),_N0),u(f(e),yN0),a(f(e),hN0,dN0);var s=i[2];u(f(e),kN0);var p=0;be(function(w,G){w&&u(f(e),cN0);function A(M){return u(n,M)}function S(M){return u(t,M)}return R(qe[31],S,A,e,G),1},p,s),u(f(e),wN0),u(f(e),EN0),u(f(e),SN0),a(f(e),FN0,gN0);var y=i[3];if(y){g(e,TN0);var T=y[1],E=function(w,G){return g(w,oN0)},h=function(w){return u(t,w)};R(Dr[1],h,E,e,T),g(e,ON0)}else g(e,IN0);return u(f(e),AN0),u(f(e),NN0)}),N(K$,function(t,n,e){var i=a(GP,t,n);return a(P0(aN0),i,e)});var MP=[0,z$,GP,K$],BP=function t(n,e,i,x){return t.fun(n,e,i,x)},W$=function t(n,e,i){return t.fun(n,e,i)};N(BP,function(t,n,e,i){u(f(e),HA0),a(f(e),YA0,XA0);var x=i[1];function c(S){return u(n,S)}function s(S){return u(t,S)}R(qe[31],s,c,e,x),u(f(e),VA0),u(f(e),zA0),a(f(e),WA0,KA0);var p=i[2];u(f(e),JA0),a(t,e,p[1]),u(f(e),$A0);var y=p[2];function T(S){return u(n,S)}function E(S){return u(t,S)}R(MP[2],E,T,e,y),u(f(e),ZA0),u(f(e),QA0),u(f(e),rN0),a(f(e),nN0,eN0);var h=i[3];if(h){g(e,tN0);var w=h[1],G=function(S,M){return g(S,UA0)},A=function(S){return u(t,S)};R(Dr[1],A,G,e,w),g(e,uN0)}else g(e,iN0);return u(f(e),fN0),u(f(e),xN0)}),N(W$,function(t,n,e){var i=a(BP,t,n);return a(P0(qA0),i,e)});var J$=[0,BP,W$],O1=function t(n,e,i,x){return t.fun(n,e,i,x)},$$=function t(n,e,i){return t.fun(n,e,i)},qP=function t(n,e,i,x){return t.fun(n,e,i,x)},Z$=function t(n,e,i){return t.fun(n,e,i)},J5=function t(n,e,i,x){return t.fun(n,e,i,x)},Q$=function t(n,e,i){return t.fun(n,e,i)};N(O1,function(t,n,e,i){switch(i[0]){case 0:var x=i[1];u(f(e),AA0),u(f(e),NA0),a(n,e,x[1]),u(f(e),CA0);var c=x[2],s=function(S){return u(t,S)};return ir(Tl[2],s,e,c),u(f(e),PA0),u(f(e),DA0);case 1:u(f(e),LA0);var p=i[1],y=function(S){return u(n,S)},T=function(S){return u(t,S)};return R(Ln[1],T,y,e,p),u(f(e),RA0);case 2:u(f(e),jA0);var E=i[1],h=function(S){return u(t,S)};return ir(qp[1],h,e,E),u(f(e),GA0);default:u(f(e),MA0);var w=i[1],G=function(S){return u(n,S)},A=function(S){return u(t,S)};return R(Up[1],A,G,e,w),u(f(e),BA0)}}),N($$,function(t,n,e){var i=a(O1,t,n);return a(P0(IA0),i,e)}),N(qP,function(t,n,e,i){u(f(e),FA0),a(t,e,i[1]),u(f(e),TA0);var x=i[2];function c(s){return u(n,s)}return R(J5,function(s){return u(t,s)},c,e,x),u(f(e),OA0)}),N(Z$,function(t,n,e){var i=a(qP,t,n);return a(P0(gA0),i,e)}),N(J5,function(t,n,e,i){switch(i[0]){case 0:u(f(e),pI0),a(f(e),_I0,mI0);var x=i[1],c=function(s0){return u(n,s0)};R(O1,function(s0){return u(t,s0)},c,e,x),u(f(e),yI0),u(f(e),dI0),a(f(e),kI0,hI0);var s=i[2],p=function(s0){return u(n,s0)},y=function(s0){return u(t,s0)};R(qe[31],y,p,e,s),u(f(e),wI0),u(f(e),EI0),a(f(e),gI0,SI0);var T=i[3];return a(f(e),FI0,T),u(f(e),TI0),u(f(e),OI0);case 1:var E=i[2];u(f(e),II0),a(f(e),NI0,AI0);var h=i[1],w=function(s0){return u(n,s0)};R(O1,function(s0){return u(t,s0)},w,e,h),u(f(e),CI0),u(f(e),PI0),a(f(e),LI0,DI0),u(f(e),RI0),a(t,e,E[1]),u(f(e),jI0);var G=E[2],A=function(s0){return u(n,s0)},S=function(s0){return u(t,s0)};return R(Ps[5],S,A,e,G),u(f(e),GI0),u(f(e),MI0),u(f(e),BI0);case 2:var M=i[3],K=i[2];u(f(e),qI0),a(f(e),HI0,UI0);var V=i[1],f0=function(s0){return u(n,s0)};R(O1,function(s0){return u(t,s0)},f0,e,V),u(f(e),XI0),u(f(e),YI0),a(f(e),zI0,VI0),u(f(e),KI0),a(t,e,K[1]),u(f(e),WI0);var m0=K[2],k0=function(s0){return u(n,s0)},g0=function(s0){return u(t,s0)};if(R(Ps[5],g0,k0,e,m0),u(f(e),JI0),u(f(e),$I0),u(f(e),ZI0),a(f(e),rA0,QI0),M){g(e,eA0);var e0=M[1],x0=function(s0,dr){return g(s0,bI0)},l=function(s0){return u(t,s0)};R(Dr[1],l,x0,e,e0),g(e,nA0)}else g(e,tA0);return u(f(e),uA0),u(f(e),iA0);default:var c0=i[3],t0=i[2];u(f(e),fA0),a(f(e),aA0,xA0);var a0=i[1],w0=function(s0){return u(n,s0)};R(O1,function(s0){return u(t,s0)},w0,e,a0),u(f(e),oA0),u(f(e),cA0),a(f(e),vA0,sA0),u(f(e),lA0),a(t,e,t0[1]),u(f(e),bA0);var _0=t0[2],E0=function(s0){return u(n,s0)},X0=function(s0){return u(t,s0)};if(R(Ps[5],X0,E0,e,_0),u(f(e),pA0),u(f(e),mA0),u(f(e),_A0),a(f(e),dA0,yA0),c0){g(e,hA0);var b=c0[1],G0=function(s0,dr){return g(s0,lI0)},X=function(s0){return u(t,s0)};R(Dr[1],X,G0,e,b),g(e,kA0)}else g(e,wA0);return u(f(e),EA0),u(f(e),SA0)}}),N(Q$,function(t,n,e){var i=a(J5,t,n);return a(P0(vI0),i,e)});var rZ=[0,O1,$$,qP,Z$,J5,Q$],UP=function t(n,e,i,x){return t.fun(n,e,i,x)},eZ=function t(n,e,i){return t.fun(n,e,i)},$5=function t(n,e,i,x){return t.fun(n,e,i,x)},nZ=function t(n,e,i){return t.fun(n,e,i)};N(UP,function(t,n,e,i){u(f(e),oI0),a(t,e,i[1]),u(f(e),cI0);var x=i[2];function c(s){return u(n,s)}return R($5,function(s){return u(t,s)},c,e,x),u(f(e),sI0)}),N(eZ,function(t,n,e){var i=a(UP,t,n);return a(P0(aI0),i,e)}),N($5,function(t,n,e,i){u(f(e),JO0),a(f(e),ZO0,$O0);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(qe[31],s,c,e,x),u(f(e),QO0),u(f(e),rI0),a(f(e),nI0,eI0);var p=i[2];if(p){g(e,tI0);var y=p[1],T=function(h,w){return g(h,WO0)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,uI0)}else g(e,iI0);return u(f(e),fI0),u(f(e),xI0)}),N(nZ,function(t,n,e){var i=a($5,t,n);return a(P0(KO0),i,e)});var tZ=[0,UP,eZ,$5,nZ],Z5=function t(n,e,i,x){return t.fun(n,e,i,x)},uZ=function t(n,e,i){return t.fun(n,e,i)},HP=function t(n,e,i,x){return t.fun(n,e,i,x)},iZ=function t(n,e,i){return t.fun(n,e,i)};N(Z5,function(t,n,e,i){if(i[0]===0){u(f(e),XO0);var x=i[1],c=function(E){return u(n,E)},s=function(E){return u(t,E)};return R(rZ[3],s,c,e,x),u(f(e),YO0)}u(f(e),VO0);var p=i[1];function y(E){return u(n,E)}function T(E){return u(t,E)}return R(tZ[1],T,y,e,p),u(f(e),zO0)}),N(uZ,function(t,n,e){var i=a(Z5,t,n);return a(P0(HO0),i,e)}),N(HP,function(t,n,e,i){u(f(e),IO0),a(f(e),NO0,AO0);var x=i[1];u(f(e),CO0);var c=0;be(function(E,h){E&&u(f(e),OO0);function w(G){return u(n,G)}return R(Z5,function(G){return u(t,G)},w,e,h),1},c,x),u(f(e),PO0),u(f(e),DO0),u(f(e),LO0),a(f(e),jO0,RO0);var s=i[2];if(s){g(e,GO0);var p=s[1],y=function(E,h){u(f(E),FO0);var w=0;return be(function(G,A){G&&u(f(E),gO0);function S(M){return u(t,M)}return ir(uu[1],S,E,A),1},w,h),u(f(E),TO0)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,MO0)}else g(e,BO0);return u(f(e),qO0),u(f(e),UO0)}),N(iZ,function(t,n,e){var i=a(HP,t,n);return a(P0(SO0),i,e)});var fZ=[0,rZ,tZ,Z5,uZ,HP,iZ],XP=function t(n,e,i,x){return t.fun(n,e,i,x)},xZ=function t(n,e,i){return t.fun(n,e,i)};N(XP,function(t,n,e,i){u(f(e),cO0),a(f(e),vO0,sO0);var x=i[1];u(f(e),lO0);var c=0;be(function(E,h){E&&u(f(e),oO0);function w(A){return u(n,A)}function G(A){return u(t,A)}return R(qe[31],G,w,e,h),1},c,x),u(f(e),bO0),u(f(e),pO0),u(f(e),mO0),a(f(e),yO0,_O0);var s=i[2];if(s){g(e,dO0);var p=s[1],y=function(E,h){return g(E,aO0)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,hO0)}else g(e,kO0);return u(f(e),wO0),u(f(e),EO0)}),N(xZ,function(t,n,e){var i=a(XP,t,n);return a(P0(xO0),i,e)});var aZ=[0,XP,xZ],Q5=function t(n,e){return t.fun(n,e)},oZ=function t(n){return t.fun(n)},YP=function t(n,e,i,x){return t.fun(n,e,i,x)},cZ=function t(n,e,i){return t.fun(n,e,i)};N(Q5,function(t,n){switch(n){case 0:return g(t,QT0);case 1:return g(t,rO0);case 2:return g(t,eO0);case 3:return g(t,nO0);case 4:return g(t,tO0);case 5:return g(t,uO0);case 6:return g(t,iO0);default:return g(t,fO0)}}),N(oZ,function(t){return a(P0(ZT0),Q5,t)}),N(YP,function(t,n,e,i){u(f(e),RT0),a(f(e),GT0,jT0),a(Q5,e,i[1]),u(f(e),MT0),u(f(e),BT0),a(f(e),UT0,qT0);var x=i[2];function c(h){return u(n,h)}function s(h){return u(t,h)}R(qe[31],s,c,e,x),u(f(e),HT0),u(f(e),XT0),a(f(e),VT0,YT0);var p=i[3];if(p){g(e,zT0);var y=p[1],T=function(h,w){return g(h,LT0)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,KT0)}else g(e,WT0);return u(f(e),JT0),u(f(e),$T0)}),N(cZ,function(t,n,e){var i=a(YP,t,n);return a(P0(DT0),i,e)});var sZ=[0,Q5,oZ,YP,cZ],rm=function t(n,e){return t.fun(n,e)},vZ=function t(n){return t.fun(n)},VP=function t(n,e,i,x){return t.fun(n,e,i,x)},lZ=function t(n,e,i){return t.fun(n,e,i)};N(rm,function(t,n){switch(n){case 0:return g(t,vT0);case 1:return g(t,lT0);case 2:return g(t,bT0);case 3:return g(t,pT0);case 4:return g(t,mT0);case 5:return g(t,_T0);case 6:return g(t,yT0);case 7:return g(t,dT0);case 8:return g(t,hT0);case 9:return g(t,kT0);case 10:return g(t,wT0);case 11:return g(t,ET0);case 12:return g(t,ST0);case 13:return g(t,gT0);case 14:return g(t,FT0);case 15:return g(t,TT0);case 16:return g(t,OT0);case 17:return g(t,IT0);case 18:return g(t,AT0);case 19:return g(t,NT0);case 20:return g(t,CT0);default:return g(t,PT0)}}),N(vZ,function(t){return a(P0(sT0),rm,t)}),N(VP,function(t,n,e,i){u(f(e),YF0),a(f(e),zF0,VF0),a(rm,e,i[1]),u(f(e),KF0),u(f(e),WF0),a(f(e),$F0,JF0);var x=i[2];function c(A){return u(n,A)}function s(A){return u(t,A)}R(qe[31],s,c,e,x),u(f(e),ZF0),u(f(e),QF0),a(f(e),eT0,rT0);var p=i[3];function y(A){return u(n,A)}function T(A){return u(t,A)}R(qe[31],T,y,e,p),u(f(e),nT0),u(f(e),tT0),a(f(e),iT0,uT0);var E=i[4];if(E){g(e,fT0);var h=E[1],w=function(A,S){return g(A,XF0)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,xT0)}else g(e,aT0);return u(f(e),oT0),u(f(e),cT0)}),N(lZ,function(t,n,e){var i=a(VP,t,n);return a(P0(HF0),i,e)});var bZ=[0,rm,vZ,VP,lZ],em=function t(n,e){return t.fun(n,e)},pZ=function t(n){return t.fun(n)},zP=function t(n,e,i,x){return t.fun(n,e,i,x)},mZ=function t(n,e,i){return t.fun(n,e,i)};N(em,function(t,n){switch(n){case 0:return g(t,OF0);case 1:return g(t,IF0);case 2:return g(t,AF0);case 3:return g(t,NF0);case 4:return g(t,CF0);case 5:return g(t,PF0);case 6:return g(t,DF0);case 7:return g(t,LF0);case 8:return g(t,RF0);case 9:return g(t,jF0);case 10:return g(t,GF0);case 11:return g(t,MF0);case 12:return g(t,BF0);case 13:return g(t,qF0);default:return g(t,UF0)}}),N(pZ,function(t){return a(P0(TF0),em,t)}),N(zP,function(t,n,e,i){u(f(e),uF0),a(f(e),fF0,iF0);var x=i[1];x?(g(e,xF0),a(em,e,x[1]),g(e,aF0)):g(e,oF0),u(f(e),cF0),u(f(e),sF0),a(f(e),lF0,vF0);var c=i[2];function s(S){return u(n,S)}function p(S){return u(t,S)}R(di[5],p,s,e,c),u(f(e),bF0),u(f(e),pF0),a(f(e),_F0,mF0);var y=i[3];function T(S){return u(n,S)}function E(S){return u(t,S)}R(qe[31],E,T,e,y),u(f(e),yF0),u(f(e),dF0),a(f(e),kF0,hF0);var h=i[4];if(h){g(e,wF0);var w=h[1],G=function(S,M){return g(S,tF0)},A=function(S){return u(t,S)};R(Dr[1],A,G,e,w),g(e,EF0)}else g(e,SF0);return u(f(e),gF0),u(f(e),FF0)}),N(mZ,function(t,n,e){var i=a(zP,t,n);return a(P0(nF0),i,e)});var _Z=[0,em,pZ,zP,mZ],nm=function t(n,e){return t.fun(n,e)},yZ=function t(n){return t.fun(n)},KP=function t(n,e,i,x){return t.fun(n,e,i,x)},dZ=function t(n,e,i){return t.fun(n,e,i)};N(nm,function(t,n){return n?g(t,rF0):g(t,eF0)}),N(yZ,function(t){return a(P0(Qg0),nm,t)}),N(KP,function(t,n,e,i){u(f(e),Cg0),a(f(e),Dg0,Pg0),a(nm,e,i[1]),u(f(e),Lg0),u(f(e),Rg0),a(f(e),Gg0,jg0);var x=i[2];function c(w){return u(n,w)}function s(w){return u(t,w)}R(qe[31],s,c,e,x),u(f(e),Mg0),u(f(e),Bg0),a(f(e),Ug0,qg0);var p=i[3];a(f(e),Hg0,p),u(f(e),Xg0),u(f(e),Yg0),a(f(e),zg0,Vg0);var y=i[4];if(y){g(e,Kg0);var T=y[1],E=function(w,G){return g(w,Ng0)},h=function(w){return u(t,w)};R(Dr[1],h,E,e,T),g(e,Wg0)}else g(e,Jg0);return u(f(e),$g0),u(f(e),Zg0)}),N(dZ,function(t,n,e){var i=a(KP,t,n);return a(P0(Ag0),i,e)});var hZ=[0,nm,yZ,KP,dZ],tm=function t(n,e){return t.fun(n,e)},kZ=function t(n){return t.fun(n)},WP=function t(n,e,i,x){return t.fun(n,e,i,x)},wZ=function t(n,e,i){return t.fun(n,e,i)};N(tm,function(t,n){switch(n){case 0:return g(t,Tg0);case 1:return g(t,Og0);default:return g(t,Ig0)}}),N(kZ,function(t){return a(P0(Fg0),tm,t)}),N(WP,function(t,n,e,i){u(f(e),fg0),a(f(e),ag0,xg0),a(tm,e,i[1]),u(f(e),og0),u(f(e),cg0),a(f(e),vg0,sg0);var x=i[2];function c(A){return u(n,A)}function s(A){return u(t,A)}R(qe[31],s,c,e,x),u(f(e),lg0),u(f(e),bg0),a(f(e),mg0,pg0);var p=i[3];function y(A){return u(n,A)}function T(A){return u(t,A)}R(qe[31],T,y,e,p),u(f(e),_g0),u(f(e),yg0),a(f(e),hg0,dg0);var E=i[4];if(E){g(e,kg0);var h=E[1],w=function(A,S){return g(A,ig0)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,wg0)}else g(e,Eg0);return u(f(e),Sg0),u(f(e),gg0)}),N(wZ,function(t,n,e){var i=a(WP,t,n);return a(P0(ug0),i,e)});var EZ=[0,tm,kZ,WP,wZ],JP=function t(n,e,i,x){return t.fun(n,e,i,x)},SZ=function t(n,e,i){return t.fun(n,e,i)};N(JP,function(t,n,e,i){u(f(e),GS0),a(f(e),BS0,MS0);var x=i[1];function c(K){return u(n,K)}function s(K){return u(t,K)}R(qe[31],s,c,e,x),u(f(e),qS0),u(f(e),US0),a(f(e),XS0,HS0);var p=i[2];function y(K){return u(n,K)}function T(K){return u(t,K)}R(qe[31],T,y,e,p),u(f(e),YS0),u(f(e),VS0),a(f(e),KS0,zS0);var E=i[3];function h(K){return u(n,K)}function w(K){return u(t,K)}R(qe[31],w,h,e,E),u(f(e),WS0),u(f(e),JS0),a(f(e),ZS0,$S0);var G=i[4];if(G){g(e,QS0);var A=G[1],S=function(K,V){return g(K,jS0)},M=function(K){return u(t,K)};R(Dr[1],M,S,e,A),g(e,rg0)}else g(e,eg0);return u(f(e),ng0),u(f(e),tg0)}),N(SZ,function(t,n,e){var i=a(JP,t,n);return a(P0(RS0),i,e)});var gZ=[0,JP,SZ],um=function t(n,e,i,x){return t.fun(n,e,i,x)},FZ=function t(n,e,i){return t.fun(n,e,i)};N(um,function(t,n,e,i){if(i[0]===0){u(f(e),CS0);var x=i[1],c=function(E){return u(n,E)},s=function(E){return u(t,E)};return R(qe[31],s,c,e,x),u(f(e),PS0)}u(f(e),DS0);var p=i[1];function y(E){return u(n,E)}function T(E){return u(t,E)}return R(LP[1],T,y,e,p),u(f(e),LS0)}),N(FZ,function(t,n,e){var i=a(um,t,n);return a(P0(NS0),i,e)});var $P=function t(n,e,i,x){return t.fun(n,e,i,x)},TZ=function t(n,e,i){return t.fun(n,e,i)},im=function t(n,e,i,x){return t.fun(n,e,i,x)},OZ=function t(n,e,i){return t.fun(n,e,i)};N($P,function(t,n,e,i){u(f(e),OS0),a(t,e,i[1]),u(f(e),IS0);var x=i[2];function c(s){return u(n,s)}return R(im,function(s){return u(t,s)},c,e,x),u(f(e),AS0)}),N(TZ,function(t,n,e){var i=a($P,t,n);return a(P0(TS0),i,e)}),N(im,function(t,n,e,i){u(f(e),lS0),a(f(e),pS0,bS0);var x=i[1];u(f(e),mS0);var c=0;be(function(E,h){E&&u(f(e),vS0);function w(G){return u(n,G)}return R(um,function(G){return u(t,G)},w,e,h),1},c,x),u(f(e),_S0),u(f(e),yS0),u(f(e),dS0),a(f(e),kS0,hS0);var s=i[2];if(s){g(e,wS0);var p=s[1],y=function(E,h){u(f(E),cS0);var w=0;return be(function(G,A){G&&u(f(E),oS0);function S(M){return u(t,M)}return ir(uu[1],S,E,A),1},w,h),u(f(E),sS0)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,ES0)}else g(e,SS0);return u(f(e),gS0),u(f(e),FS0)}),N(OZ,function(t,n,e){var i=a(im,t,n);return a(P0(aS0),i,e)});var ZP=[0,$P,TZ,im,OZ],QP=function t(n,e,i,x){return t.fun(n,e,i,x)},IZ=function t(n,e,i){return t.fun(n,e,i)};N(QP,function(t,n,e,i){u(f(e),RE0),a(f(e),GE0,jE0);var x=i[1];function c(f0){return u(n,f0)}function s(f0){return u(t,f0)}R(qe[31],s,c,e,x),u(f(e),ME0),u(f(e),BE0),a(f(e),UE0,qE0);var p=i[2];if(p){g(e,HE0);var y=p[1],T=function(f0){return u(n,f0)},E=function(f0){return u(t,f0)};R(qe[2][1],E,T,e,y),g(e,XE0)}else g(e,YE0);u(f(e),VE0),u(f(e),zE0),a(f(e),WE0,KE0);var h=i[3];if(h){g(e,JE0);var w=h[1],G=function(f0){return u(n,f0)},A=function(f0){return u(t,f0)};R(ZP[1],A,G,e,w),g(e,$E0)}else g(e,ZE0);u(f(e),QE0),u(f(e),rS0),a(f(e),nS0,eS0);var S=i[4];if(S){g(e,tS0);var M=S[1],K=function(f0,m0){return g(f0,LE0)},V=function(f0){return u(t,f0)};R(Dr[1],V,K,e,M),g(e,uS0)}else g(e,iS0);return u(f(e),fS0),u(f(e),xS0)}),N(IZ,function(t,n,e){var i=a(QP,t,n);return a(P0(DE0),i,e)});var AZ=[0,QP,IZ],rD=function t(n,e,i,x){return t.fun(n,e,i,x)},NZ=function t(n,e,i){return t.fun(n,e,i)};N(rD,function(t,n,e,i){u(f(e),sE0),a(f(e),lE0,vE0);var x=i[1];function c(V){return u(n,V)}function s(V){return u(t,V)}R(qe[31],s,c,e,x),u(f(e),bE0),u(f(e),pE0),a(f(e),_E0,mE0);var p=i[2];if(p){g(e,yE0);var y=p[1],T=function(V){return u(n,V)},E=function(V){return u(t,V)};R(qe[2][1],E,T,e,y),g(e,dE0)}else g(e,hE0);u(f(e),kE0),u(f(e),wE0),a(f(e),SE0,EE0);var h=i[3];function w(V){return u(n,V)}function G(V){return u(t,V)}R(ZP[1],G,w,e,h),u(f(e),gE0),u(f(e),FE0),a(f(e),OE0,TE0);var A=i[4];if(A){g(e,IE0);var S=A[1],M=function(V,f0){return g(V,cE0)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,AE0)}else g(e,NE0);return u(f(e),CE0),u(f(e),PE0)}),N(NZ,function(t,n,e){var i=a(rD,t,n);return a(P0(oE0),i,e)});var eD=[0,rD,NZ],nD=function t(n,e,i,x){return t.fun(n,e,i,x)},CZ=function t(n,e,i){return t.fun(n,e,i)};N(nD,function(t,n,e,i){u(f(e),Ww0),a(f(e),$w0,Jw0);var x=i[1];function c(y){return u(n,y)}function s(y){return u(t,y)}R(eD[1],s,c,e,x),u(f(e),Zw0),u(f(e),Qw0),a(f(e),eE0,rE0),a(n,e,i[2]),u(f(e),nE0),u(f(e),tE0),a(f(e),iE0,uE0);var p=i[3];return a(f(e),fE0,p),u(f(e),xE0),u(f(e),aE0)}),N(CZ,function(t,n,e){var i=a(nD,t,n);return a(P0(Kw0),i,e)});var PZ=[0,nD,CZ],fm=function t(n,e,i,x){return t.fun(n,e,i,x)},DZ=function t(n,e,i){return t.fun(n,e,i)},tD=function t(n,e,i,x){return t.fun(n,e,i,x)},LZ=function t(n,e,i){return t.fun(n,e,i)};N(fm,function(t,n,e,i){switch(i[0]){case 0:u(f(e),Uw0);var x=i[1],c=function(w){return u(n,w)},s=function(w){return u(t,w)};return R(Ln[1],s,c,e,x),u(f(e),Hw0);case 1:u(f(e),Xw0);var p=i[1],y=function(w){return u(t,w)};return ir(qp[1],y,e,p),u(f(e),Yw0);default:u(f(e),Vw0);var T=i[1],E=function(w){return u(n,w)},h=function(w){return u(t,w)};return R(qe[31],h,E,e,T),u(f(e),zw0)}}),N(DZ,function(t,n,e){var i=a(fm,t,n);return a(P0(qw0),i,e)}),N(tD,function(t,n,e,i){u(f(e),gw0),a(f(e),Tw0,Fw0);var x=i[1];function c(G){return u(n,G)}function s(G){return u(t,G)}R(qe[31],s,c,e,x),u(f(e),Ow0),u(f(e),Iw0),a(f(e),Nw0,Aw0);var p=i[2];function y(G){return u(n,G)}R(fm,function(G){return u(t,G)},y,e,p),u(f(e),Cw0),u(f(e),Pw0),a(f(e),Lw0,Dw0);var T=i[3];if(T){g(e,Rw0);var E=T[1],h=function(G,A){return g(G,Sw0)},w=function(G){return u(t,G)};R(Dr[1],w,h,e,E),g(e,jw0)}else g(e,Gw0);return u(f(e),Mw0),u(f(e),Bw0)}),N(LZ,function(t,n,e){var i=a(tD,t,n);return a(P0(Ew0),i,e)});var uD=[0,fm,DZ,tD,LZ],iD=function t(n,e,i,x){return t.fun(n,e,i,x)},RZ=function t(n,e,i){return t.fun(n,e,i)};N(iD,function(t,n,e,i){u(f(e),ow0),a(f(e),sw0,cw0);var x=i[1];function c(y){return u(n,y)}function s(y){return u(t,y)}R(uD[3],s,c,e,x),u(f(e),vw0),u(f(e),lw0),a(f(e),pw0,bw0),a(n,e,i[2]),u(f(e),mw0),u(f(e),_w0),a(f(e),dw0,yw0);var p=i[3];return a(f(e),hw0,p),u(f(e),kw0),u(f(e),ww0)}),N(RZ,function(t,n,e){var i=a(iD,t,n);return a(P0(aw0),i,e)});var jZ=[0,iD,RZ],fD=function t(n,e,i,x){return t.fun(n,e,i,x)},GZ=function t(n,e,i){return t.fun(n,e,i)};N(fD,function(t,n,e,i){u(f(e),Gk0),a(f(e),Bk0,Mk0);var x=i[1];if(x){g(e,qk0);var c=x[1],s=function(G){return u(n,G)},p=function(G){return u(t,G)};R(qe[31],p,s,e,c),g(e,Uk0)}else g(e,Hk0);u(f(e),Xk0),u(f(e),Yk0),a(f(e),zk0,Vk0);var y=i[2];if(y){g(e,Kk0);var T=y[1],E=function(G,A){return g(G,jk0)},h=function(G){return u(t,G)};R(Dr[1],h,E,e,T),g(e,Wk0)}else g(e,Jk0);u(f(e),$k0),u(f(e),Zk0),a(f(e),rw0,Qk0);var w=i[3];return a(f(e),ew0,w),u(f(e),nw0),u(f(e),tw0),a(f(e),iw0,uw0),a(n,e,i[4]),u(f(e),fw0),u(f(e),xw0)}),N(GZ,function(t,n,e){var i=a(fD,t,n);return a(P0(Rk0),i,e)});var MZ=[0,fD,GZ],xD=function t(n,e,i,x){return t.fun(n,e,i,x)},BZ=function t(n,e,i){return t.fun(n,e,i)},xm=function t(n,e,i,x){return t.fun(n,e,i,x)},qZ=function t(n,e,i){return t.fun(n,e,i)};N(xD,function(t,n,e,i){u(f(e),Pk0),a(t,e,i[1]),u(f(e),Dk0);var x=i[2];function c(s){return u(n,s)}return R(xm,function(s){return u(t,s)},c,e,x),u(f(e),Lk0)}),N(BZ,function(t,n,e){var i=a(xD,t,n);return a(P0(Ck0),i,e)}),N(xm,function(t,n,e,i){u(f(e),yk0),a(f(e),hk0,dk0);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(di[5],s,c,e,x),u(f(e),kk0),u(f(e),wk0),a(f(e),Sk0,Ek0);var p=i[2];function y(h){return u(n,h)}function T(h){return u(t,h)}R(qe[31],T,y,e,p),u(f(e),gk0),u(f(e),Fk0),a(f(e),Ok0,Tk0);var E=i[3];return a(f(e),Ik0,E),u(f(e),Ak0),u(f(e),Nk0)}),N(qZ,function(t,n,e){var i=a(xm,t,n);return a(P0(_k0),i,e)});var UZ=[0,xD,BZ,xm,qZ],aD=function t(n,e,i,x){return t.fun(n,e,i,x)},HZ=function t(n,e,i){return t.fun(n,e,i)};N(aD,function(t,n,e,i){u(f(e),tk0),a(f(e),ik0,uk0);var x=i[1];u(f(e),fk0);var c=0;be(function(E,h){E&&u(f(e),nk0);function w(A){return u(n,A)}function G(A){return u(t,A)}return R(UZ[1],G,w,e,h),1},c,x),u(f(e),xk0),u(f(e),ak0),u(f(e),ok0),a(f(e),sk0,ck0);var s=i[2];if(s){g(e,vk0);var p=s[1],y=function(E){return u(n,E)},T=function(E){return u(t,E)};R(qe[31],T,y,e,p),g(e,lk0)}else g(e,bk0);return u(f(e),pk0),u(f(e),mk0)}),N(HZ,function(t,n,e){var i=a(aD,t,n);return a(P0(ek0),i,e)});var oD=[0,UZ,aD,HZ],cD=function t(n,e,i,x){return t.fun(n,e,i,x)},XZ=function t(n,e,i){return t.fun(n,e,i)};N(cD,function(t,n,e,i){u(f(e),qh0),a(f(e),Hh0,Uh0);var x=i[1];u(f(e),Xh0);var c=0;be(function(E,h){E&&u(f(e),Bh0);function w(A){return u(n,A)}function G(A){return u(t,A)}return R(oD[1][1],G,w,e,h),1},c,x),u(f(e),Yh0),u(f(e),Vh0),u(f(e),zh0),a(f(e),Wh0,Kh0);var s=i[2];if(s){g(e,Jh0);var p=s[1],y=function(E){return u(n,E)},T=function(E){return u(t,E)};R(qe[31],T,y,e,p),g(e,$h0)}else g(e,Zh0);return u(f(e),Qh0),u(f(e),rk0)}),N(XZ,function(t,n,e){var i=a(cD,t,n);return a(P0(Mh0),i,e)});var YZ=[0,cD,XZ],sD=function t(n,e,i,x){return t.fun(n,e,i,x)},VZ=function t(n,e,i){return t.fun(n,e,i)};N(sD,function(t,n,e,i){u(f(e),Eh0),a(f(e),gh0,Sh0);var x=i[1];function c(A){return u(n,A)}function s(A){return u(t,A)}R(qe[31],s,c,e,x),u(f(e),Fh0),u(f(e),Th0),a(f(e),Ih0,Oh0);var p=i[2];function y(A){return u(n,A)}function T(A){return u(t,A)}R(Je[17],T,y,e,p),u(f(e),Ah0),u(f(e),Nh0),a(f(e),Ph0,Ch0);var E=i[3];if(E){g(e,Dh0);var h=E[1],w=function(A,S){return g(A,wh0)},G=function(A){return u(t,A)};R(Dr[1],G,w,e,h),g(e,Lh0)}else g(e,Rh0);return u(f(e),jh0),u(f(e),Gh0)}),N(VZ,function(t,n,e){var i=a(sD,t,n);return a(P0(kh0),i,e)});var zZ=[0,sD,VZ],vD=function t(n,e,i){return t.fun(n,e,i)},KZ=function t(n,e){return t.fun(n,e)};N(vD,function(t,n,e){u(f(n),ih0),a(f(n),xh0,fh0);var i=e[1];function x(G){return u(t,G)}function c(G){return u(t,G)}R(Ln[1],c,x,n,i),u(f(n),ah0),u(f(n),oh0),a(f(n),sh0,ch0);var s=e[2];function p(G){return u(t,G)}function y(G){return u(t,G)}R(Ln[1],y,p,n,s),u(f(n),vh0),u(f(n),lh0),a(f(n),ph0,bh0);var T=e[3];if(T){g(n,mh0);var E=T[1],h=function(G,A){return g(G,uh0)},w=function(G){return u(t,G)};R(Dr[1],w,h,n,E),g(n,_h0)}else g(n,yh0);return u(f(n),dh0),u(f(n),hh0)}),N(KZ,function(t,n){var e=u(vD,t);return a(P0(th0),e,n)});var WZ=[0,vD,KZ],lD=function t(n,e,i){return t.fun(n,e,i)},JZ=function t(n,e){return t.fun(n,e)};N(lD,function(t,n,e){u(f(n),Wd0),a(f(n),$d0,Jd0);var i=e[1];if(i){g(n,Zd0);var x=i[1],c=function(p,y){return g(p,Kd0)},s=function(p){return u(t,p)};R(Dr[1],s,c,n,x),g(n,Qd0)}else g(n,rh0);return u(f(n),eh0),u(f(n),nh0)}),N(JZ,function(t,n){var e=u(lD,t);return a(P0(zd0),e,n)});var $Z=[0,lD,JZ],bD=function t(n,e,i){return t.fun(n,e,i)},ZZ=function t(n,e){return t.fun(n,e)};N(bD,function(t,n,e){u(f(n),Md0),a(f(n),qd0,Bd0);var i=e[1];if(i){g(n,Ud0);var x=i[1],c=function(p,y){return g(p,Gd0)},s=function(p){return u(t,p)};R(Dr[1],s,c,n,x),g(n,Hd0)}else g(n,Xd0);return u(f(n),Yd0),u(f(n),Vd0)}),N(ZZ,function(t,n){var e=u(bD,t);return a(P0(jd0),e,n)});var QZ=[0,bD,ZZ],pD=function t(n,e,i,x){return t.fun(n,e,i,x)},rQ=function t(n,e,i){return t.fun(n,e,i)};N(pD,function(t,n,e,i){u(f(e),gd0),a(f(e),Td0,Fd0);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(qe[31],s,c,e,x),u(f(e),Od0),u(f(e),Id0),a(f(e),Nd0,Ad0);var p=i[2];if(p){g(e,Cd0);var y=p[1],T=function(h,w){return g(h,Sd0)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,Pd0)}else g(e,Dd0);return u(f(e),Ld0),u(f(e),Rd0)}),N(rQ,function(t,n,e){var i=a(pD,t,n);return a(P0(Ed0),i,e)});var eQ=[0,pD,rQ],mD=function t(n,e,i,x){return t.fun(n,e,i,x)},nQ=function t(n,e,i){return t.fun(n,e,i)},am=function t(n,e,i,x){return t.fun(n,e,i,x)},tQ=function t(n,e,i){return t.fun(n,e,i)};N(mD,function(t,n,e,i){u(f(e),hd0),a(n,e,i[1]),u(f(e),kd0);var x=i[2];function c(s){return u(n,s)}return R(am,function(s){return u(t,s)},c,e,x),u(f(e),wd0)}),N(nQ,function(t,n,e){var i=a(mD,t,n);return a(P0(dd0),i,e)}),N(am,function(t,n,e,i){switch(i[0]){case 0:u(f(e),sy0);var x=i[1],c=function(Y){return u(n,Y)},s=function(Y){return u(t,Y)};return R(H$[3],s,c,e,x),u(f(e),vy0);case 1:u(f(e),ly0);var p=i[1],y=function(Y){return u(n,Y)},T=function(Y){return u(t,Y)};return R(Ps[5],T,y,e,p),u(f(e),by0);case 2:u(f(e),py0);var E=i[1],h=function(Y){return u(n,Y)},w=function(Y){return u(t,Y)};return R(_Z[3],w,h,e,E),u(f(e),my0);case 3:u(f(e),_y0);var G=i[1],A=function(Y){return u(n,Y)},S=function(Y){return u(t,Y)};return R(bZ[3],S,A,e,G),u(f(e),yy0);case 4:u(f(e),dy0);var M=i[1],K=function(Y){return u(n,Y)},V=function(Y){return u(t,Y)};return R(eD[1],V,K,e,M),u(f(e),hy0);case 5:u(f(e),ky0);var f0=i[1],m0=function(Y){return u(n,Y)},k0=function(Y){return u(t,Y)};return R(T1[8],k0,m0,e,f0),u(f(e),wy0);case 6:u(f(e),Ey0);var g0=i[1],e0=function(Y){return u(n,Y)},x0=function(Y){return u(t,Y)};return R(oD[2],x0,e0,e,g0),u(f(e),Sy0);case 7:u(f(e),gy0);var l=i[1],c0=function(Y){return u(n,Y)},t0=function(Y){return u(t,Y)};return R(gZ[1],t0,c0,e,l),u(f(e),Fy0);case 8:u(f(e),Ty0);var a0=i[1],w0=function(Y){return u(n,Y)},_0=function(Y){return u(t,Y)};return R(Ps[5],_0,w0,e,a0),u(f(e),Oy0);case 9:u(f(e),Iy0);var E0=i[1],X0=function(Y){return u(n,Y)},b=function(Y){return u(t,Y)};return R(YZ[1],b,X0,e,E0),u(f(e),Ay0);case 10:u(f(e),Ny0);var G0=i[1],X=function(Y){return u(n,Y)},s0=function(Y){return u(t,Y)};return R(Ln[1],s0,X,e,G0),u(f(e),Cy0);case 11:u(f(e),Py0);var dr=i[1],Ar=function(Y){return u(n,Y)},ar=function(Y){return u(t,Y)};return R(eQ[1],ar,Ar,e,dr),u(f(e),Dy0);case 12:u(f(e),Ly0);var W0=i[1],Lr=function(Y){return u(n,Y)},Tr=function(Y){return u(t,Y)};return R(YN[17],Tr,Lr,e,W0),u(f(e),Ry0);case 13:u(f(e),jy0);var Hr=i[1],Or=function(Y){return u(n,Y)},xr=function(Y){return u(t,Y)};return R(YN[19],xr,Or,e,Hr),u(f(e),Gy0);case 14:u(f(e),My0);var Rr=i[1],Wr=function(Y){return u(t,Y)};return ir(Tl[2],Wr,e,Rr),u(f(e),By0);case 15:u(f(e),qy0);var Jr=i[1],or=function(Y){return u(n,Y)},_r=function(Y){return u(t,Y)};return R(EZ[3],_r,or,e,Jr),u(f(e),Uy0);case 16:u(f(e),Hy0);var Ir=i[1],fe=function(Y){return u(n,Y)},v0=function(Y){return u(t,Y)};return R(uD[3],v0,fe,e,Ir),u(f(e),Xy0);case 17:u(f(e),Yy0);var P=i[1],L=function(Y){return u(t,Y)};return ir(WZ[1],L,e,P),u(f(e),Vy0);case 18:u(f(e),zy0);var Q=i[1],i0=function(Y){return u(n,Y)},l0=function(Y){return u(t,Y)};return R(AZ[1],l0,i0,e,Q),u(f(e),Ky0);case 19:u(f(e),Wy0);var S0=i[1],T0=function(Y){return u(n,Y)},rr=function(Y){return u(t,Y)};return R(fZ[5],rr,T0,e,S0),u(f(e),Jy0);case 20:u(f(e),$y0);var R0=i[1],B=function(Y){return u(n,Y)},Z=function(Y){return u(t,Y)};return R(PZ[1],Z,B,e,R0),u(f(e),Zy0);case 21:u(f(e),Qy0);var p0=i[1],b0=function(Y){return u(n,Y)},O0=function(Y){return u(t,Y)};return R(jZ[1],O0,b0,e,p0),u(f(e),rd0);case 22:u(f(e),ed0);var q0=i[1],er=function(Y){return u(n,Y)},yr=function(Y){return u(t,Y)};return R(aZ[1],yr,er,e,q0),u(f(e),nd0);case 23:u(f(e),td0);var vr=i[1],$0=function(Y){return u(t,Y)};return ir(QZ[1],$0,e,vr),u(f(e),ud0);case 24:u(f(e),id0);var Sr=i[1],Mr=function(Y){return u(n,Y)},Br=function(Y){return u(t,Y)};return R(J$[1],Br,Mr,e,Sr),u(f(e),fd0);case 25:u(f(e),xd0);var qr=i[1],jr=function(Y){return u(n,Y)},$r=function(Y){return u(t,Y)};return R(MP[2],$r,jr,e,qr),u(f(e),ad0);case 26:u(f(e),od0);var ne=i[1],Qr=function(Y){return u(t,Y)};return ir($Z[1],Qr,e,ne),u(f(e),cd0);case 27:u(f(e),sd0);var pe=i[1],oe=function(Y){return u(n,Y)},me=function(Y){return u(t,Y)};return R(zZ[1],me,oe,e,pe),u(f(e),vd0);case 28:u(f(e),ld0);var ae=i[1],ce=function(Y){return u(n,Y)},ge=function(Y){return u(t,Y)};return R(sZ[3],ge,ce,e,ae),u(f(e),bd0);case 29:u(f(e),pd0);var H0=i[1],Fr=function(Y){return u(n,Y)},_=function(Y){return u(t,Y)};return R(hZ[3],_,Fr,e,H0),u(f(e),md0);default:u(f(e),_d0);var k=i[1],I=function(Y){return u(n,Y)},U=function(Y){return u(t,Y)};return R(MZ[1],U,I,e,k),u(f(e),yd0)}}),N(tQ,function(t,n,e){var i=a(am,t,n);return a(P0(cy0),i,e)}),pu(s6r,qe,[0,R$,Mee,LP,H$,MP,J$,fZ,aZ,sZ,bZ,_Z,hZ,EZ,gZ,um,FZ,ZP,AZ,eD,PZ,uD,jZ,MZ,oD,YZ,zZ,WZ,$Z,QZ,eQ,mD,nQ,am,tQ]);var _D=function t(n,e,i,x){return t.fun(n,e,i,x)},uQ=function t(n,e,i){return t.fun(n,e,i)},om=function t(n,e,i){return t.fun(n,e,i)},iQ=function t(n,e){return t.fun(n,e)};N(_D,function(t,n,e,i){u(f(e),xy0),a(n,e,i[1]),u(f(e),ay0);var x=i[2];return ir(om,function(c){return u(t,c)},e,x),u(f(e),oy0)}),N(uQ,function(t,n,e){var i=a(_D,t,n);return a(P0(fy0),i,e)}),N(om,function(t,n,e){u(f(n),z_0),a(f(n),W_0,K_0);var i=e[1];a(f(n),J_0,i),u(f(n),$_0),u(f(n),Z_0),a(f(n),ry0,Q_0);var x=e[2];if(x){g(n,ey0);var c=x[1],s=function(y,T){return g(y,V_0)},p=function(y){return u(t,y)};R(Dr[1],p,s,n,c),g(n,ny0)}else g(n,ty0);return u(f(n),uy0),u(f(n),iy0)}),N(iQ,function(t,n){var e=u(om,t);return a(P0(Y_0),e,n)});var I1=[0,_D,uQ,om,iQ],yD=function t(n,e,i,x){return t.fun(n,e,i,x)},fQ=function t(n,e,i){return t.fun(n,e,i)},cm=function t(n,e,i,x){return t.fun(n,e,i,x)},xQ=function t(n,e,i){return t.fun(n,e,i)};N(yD,function(t,n,e,i){u(f(e),U_0),a(t,e,i[1]),u(f(e),H_0);var x=i[2];function c(s){return u(n,s)}return R(cm,function(s){return u(t,s)},c,e,x),u(f(e),X_0)}),N(fQ,function(t,n,e){var i=a(yD,t,n);return a(P0(q_0),i,e)}),N(cm,function(t,n,e,i){u(f(e),C_0),a(f(e),D_0,P_0);var x=i[1];function c(E){return u(n,E)}function s(E){return u(t,E)}R(I1[1],s,c,e,x),u(f(e),L_0),u(f(e),R_0),a(f(e),G_0,j_0);var p=i[2];function y(E){return u(n,E)}function T(E){return u(t,E)}return R(I1[1],T,y,e,p),u(f(e),M_0),u(f(e),B_0)}),N(xQ,function(t,n,e){var i=a(cm,t,n);return a(P0(N_0),i,e)});var dD=[0,yD,fQ,cm,xQ],hD=function t(n,e,i,x){return t.fun(n,e,i,x)},aQ=function t(n,e,i){return t.fun(n,e,i)},sm=function t(n,e,i,x){return t.fun(n,e,i,x)},oQ=function t(n,e,i){return t.fun(n,e,i)};N(hD,function(t,n,e,i){u(f(e),d_0),a(f(e),k_0,h_0);var x=i[1];function c(E){return u(n,E)}R(sm,function(E){return u(t,E)},c,e,x),u(f(e),w_0),u(f(e),E_0),a(f(e),g_0,S_0);var s=i[2];if(s){g(e,F_0);var p=s[1],y=function(E,h){u(f(E),__0);var w=0;return be(function(G,A){G&&u(f(E),m_0);function S(M){return u(t,M)}return ir(uu[1],S,E,A),1},w,h),u(f(E),y_0)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,T_0)}else g(e,O_0);return u(f(e),I_0),u(f(e),A_0)}),N(aQ,function(t,n,e){var i=a(hD,t,n);return a(P0(p_0),i,e)}),N(sm,function(t,n,e,i){if(i){u(f(e),v_0);var x=i[1],c=function(p){return u(n,p)},s=function(p){return u(t,p)};return R(qe[31],s,c,e,x),u(f(e),l_0)}return g(e,b_0)}),N(oQ,function(t,n,e){var i=a(sm,t,n);return a(P0(s_0),i,e)});var kD=[0,hD,aQ,sm,oQ];function cQ(t,n){u(f(t),Q90),a(f(t),e_0,r_0);var e=n[1];a(f(t),n_0,e),u(f(t),t_0),u(f(t),u_0),a(f(t),f_0,i_0);var i=n[2];return a(f(t),x_0,i),u(f(t),a_0),u(f(t),o_0)}var sQ=[0,cQ,function(t){return a(P0(c_0),cQ,t)}],wD=function t(n,e,i,x){return t.fun(n,e,i,x)},vQ=function t(n,e,i){return t.fun(n,e,i)},vm=function t(n,e,i,x){return t.fun(n,e,i,x)},lQ=function t(n,e,i){return t.fun(n,e,i)},lm=function t(n,e,i,x){return t.fun(n,e,i,x)},bQ=function t(n,e,i){return t.fun(n,e,i)},bm=function t(n,e,i,x){return t.fun(n,e,i,x)},pQ=function t(n,e,i){return t.fun(n,e,i)};N(wD,function(t,n,e,i){u(f(e),J90),a(t,e,i[1]),u(f(e),$90);var x=i[2];function c(s){return u(n,s)}return R(bm,function(s){return u(t,s)},c,e,x),u(f(e),Z90)}),N(vQ,function(t,n,e){var i=a(wD,t,n);return a(P0(W90),i,e)}),N(vm,function(t,n,e,i){if(i[0]===0){u(f(e),Y90);var x=i[1],c=function(E){return u(n,E)},s=function(E){return u(t,E)};return R(I1[1],s,c,e,x),u(f(e),V90)}u(f(e),z90);var p=i[1];function y(E){return u(n,E)}function T(E){return u(t,E)}return R(dD[1],T,y,e,p),u(f(e),K90)}),N(lQ,function(t,n,e){var i=a(vm,t,n);return a(P0(X90),i,e)}),N(lm,function(t,n,e,i){if(i[0]===0){u(f(e),G90),a(n,e,i[1]),u(f(e),M90);var x=i[2],c=function(T){return u(t,T)};return ir(Tl[2],c,e,x),u(f(e),B90)}u(f(e),q90),a(n,e,i[1]),u(f(e),U90);var s=i[2];function p(T){return u(n,T)}function y(T){return u(t,T)}return R(kD[1],y,p,e,s),u(f(e),H90)}),N(bQ,function(t,n,e){var i=a(lm,t,n);return a(P0(j90),i,e)}),N(bm,function(t,n,e,i){u(f(e),g90),a(f(e),T90,F90);var x=i[1];function c(T){return u(n,T)}R(vm,function(T){return u(t,T)},c,e,x),u(f(e),O90),u(f(e),I90),a(f(e),N90,A90);var s=i[2];if(s){g(e,C90);var p=s[1],y=function(T){return u(n,T)};R(lm,function(T){return u(t,T)},y,e,p),g(e,P90)}else g(e,D90);return u(f(e),L90),u(f(e),R90)}),N(pQ,function(t,n,e){var i=a(bm,t,n);return a(P0(S90),i,e)});var mQ=[0,wD,vQ,vm,lQ,lm,bQ,bm,pQ],ED=function t(n,e,i,x){return t.fun(n,e,i,x)},_Q=function t(n,e,i){return t.fun(n,e,i)},pm=function t(n,e,i,x){return t.fun(n,e,i,x)},yQ=function t(n,e,i){return t.fun(n,e,i)};N(ED,function(t,n,e,i){u(f(e),k90),a(t,e,i[1]),u(f(e),w90);var x=i[2];function c(s){return u(n,s)}return R(pm,function(s){return u(t,s)},c,e,x),u(f(e),E90)}),N(_Q,function(t,n,e){var i=a(ED,t,n);return a(P0(h90),i,e)}),N(pm,function(t,n,e,i){u(f(e),a90),a(f(e),c90,o90);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(qe[31],s,c,e,x),u(f(e),s90),u(f(e),v90),a(f(e),b90,l90);var p=i[2];if(p){g(e,p90);var y=p[1],T=function(h,w){return g(h,x90)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,m90)}else g(e,_90);return u(f(e),y90),u(f(e),d90)}),N(yQ,function(t,n,e){var i=a(pm,t,n);return a(P0(f90),i,e)});var dQ=[0,ED,_Q,pm,yQ],mm=function t(n,e,i,x){return t.fun(n,e,i,x)},hQ=function t(n,e,i){return t.fun(n,e,i)},_m=function t(n,e,i,x){return t.fun(n,e,i,x)},kQ=function t(n,e,i){return t.fun(n,e,i)},ym=function t(n,e,i,x){return t.fun(n,e,i,x)},wQ=function t(n,e,i){return t.fun(n,e,i)};N(mm,function(t,n,e,i){u(f(e),t90),a(t,e,i[1]),u(f(e),u90);var x=i[2];function c(s){return u(n,s)}return R(ym,function(s){return u(t,s)},c,e,x),u(f(e),i90)}),N(hQ,function(t,n,e){var i=a(mm,t,n);return a(P0(n90),i,e)}),N(_m,function(t,n,e,i){if(i[0]===0){u(f(e),Zm0);var x=i[1],c=function(T){return u(n,T)},s=function(T){return u(t,T)};return R(I1[1],s,c,e,x),u(f(e),Qm0)}u(f(e),r90);var p=i[1];function y(T){return u(n,T)}return R(mm,function(T){return u(t,T)},y,e,p),u(f(e),e90)}),N(kQ,function(t,n,e){var i=a(_m,t,n);return a(P0($m0),i,e)}),N(ym,function(t,n,e,i){u(f(e),Um0),a(f(e),Xm0,Hm0);var x=i[1];function c(T){return u(n,T)}R(_m,function(T){return u(t,T)},c,e,x),u(f(e),Ym0),u(f(e),Vm0),a(f(e),Km0,zm0);var s=i[2];function p(T){return u(n,T)}function y(T){return u(t,T)}return R(I1[1],y,p,e,s),u(f(e),Wm0),u(f(e),Jm0)}),N(wQ,function(t,n,e){var i=a(ym,t,n);return a(P0(qm0),i,e)});var EQ=[0,mm,hQ,_m,kQ,ym,wQ],Nl=function t(n,e,i,x){return t.fun(n,e,i,x)},SQ=function t(n,e,i){return t.fun(n,e,i)};N(Nl,function(t,n,e,i){switch(i[0]){case 0:u(f(e),Lm0);var x=i[1],c=function(G){return u(n,G)},s=function(G){return u(t,G)};return R(I1[1],s,c,e,x),u(f(e),Rm0);case 1:u(f(e),jm0);var p=i[1],y=function(G){return u(n,G)},T=function(G){return u(t,G)};return R(dD[1],T,y,e,p),u(f(e),Gm0);default:u(f(e),Mm0);var E=i[1],h=function(G){return u(n,G)},w=function(G){return u(t,G)};return R(EQ[1],w,h,e,E),u(f(e),Bm0)}}),N(SQ,function(t,n,e){var i=a(Nl,t,n);return a(P0(Dm0),i,e)});var SD=function t(n,e,i,x){return t.fun(n,e,i,x)},gQ=function t(n,e,i){return t.fun(n,e,i)},dm=function t(n,e,i,x){return t.fun(n,e,i,x)},FQ=function t(n,e,i){return t.fun(n,e,i)},hm=function t(n,e,i,x){return t.fun(n,e,i,x)},TQ=function t(n,e,i){return t.fun(n,e,i)};N(SD,function(t,n,e,i){u(f(e),Nm0),a(t,e,i[1]),u(f(e),Cm0);var x=i[2];function c(s){return u(n,s)}return R(hm,function(s){return u(t,s)},c,e,x),u(f(e),Pm0)}),N(gQ,function(t,n,e){var i=a(SD,t,n);return a(P0(Am0),i,e)}),N(dm,function(t,n,e,i){if(i[0]===0){u(f(e),Fm0);var x=i[1],c=function(E){return u(n,E)},s=function(E){return u(t,E)};return R(mQ[1],s,c,e,x),u(f(e),Tm0)}u(f(e),Om0);var p=i[1];function y(E){return u(n,E)}function T(E){return u(t,E)}return R(dQ[1],T,y,e,p),u(f(e),Im0)}),N(FQ,function(t,n,e){var i=a(dm,t,n);return a(P0(gm0),i,e)}),N(hm,function(t,n,e,i){u(f(e),om0),a(f(e),sm0,cm0);var x=i[1];function c(T){return u(n,T)}R(Nl,function(T){return u(t,T)},c,e,x),u(f(e),vm0),u(f(e),lm0),a(f(e),pm0,bm0);var s=i[2];a(f(e),mm0,s),u(f(e),_m0),u(f(e),ym0),a(f(e),hm0,dm0);var p=i[3];u(f(e),km0);var y=0;return be(function(T,E){T&&u(f(e),am0);function h(w){return u(n,w)}return R(dm,function(w){return u(t,w)},h,e,E),1},y,p),u(f(e),wm0),u(f(e),Em0),u(f(e),Sm0)}),N(TQ,function(t,n,e){var i=a(hm,t,n);return a(P0(xm0),i,e)});var OQ=[0,SD,gQ,dm,FQ,hm,TQ],gD=function t(n,e,i,x){return t.fun(n,e,i,x)},IQ=function t(n,e,i){return t.fun(n,e,i)},km=function t(n,e,i,x){return t.fun(n,e,i,x)},AQ=function t(n,e,i){return t.fun(n,e,i)};N(gD,function(t,n,e,i){u(f(e),um0),a(t,e,i[1]),u(f(e),im0);var x=i[2];function c(s){return u(n,s)}return R(km,function(s){return u(t,s)},c,e,x),u(f(e),fm0)}),N(IQ,function(t,n,e){var i=a(gD,t,n);return a(P0(tm0),i,e)}),N(km,function(t,n,e,i){u(f(e),Z50),a(f(e),rm0,Q50);var x=i[1];function c(s){return u(n,s)}return R(Nl,function(s){return u(t,s)},c,e,x),u(f(e),em0),u(f(e),nm0)}),N(AQ,function(t,n,e){var i=a(km,t,n);return a(P0($50),i,e)});var NQ=[0,gD,IQ,km,AQ],FD=function t(n,e,i,x){return t.fun(n,e,i,x)},CQ=function t(n,e,i){return t.fun(n,e,i)};N(FD,function(t,n,e,i){u(f(e),M50),a(f(e),q50,B50);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(qe[31],s,c,e,x),u(f(e),U50),u(f(e),H50),a(f(e),Y50,X50);var p=i[2];if(p){g(e,V50);var y=p[1],T=function(h,w){return g(h,G50)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,z50)}else g(e,K50);return u(f(e),W50),u(f(e),J50)}),N(CQ,function(t,n,e){var i=a(FD,t,n);return a(P0(j50),i,e)});var PQ=[0,FD,CQ],Cl=function t(n,e,i,x){return t.fun(n,e,i,x)},DQ=function t(n,e,i){return t.fun(n,e,i)},wm=function t(n,e,i,x){return t.fun(n,e,i,x)},LQ=function t(n,e,i){return t.fun(n,e,i)},Em=function t(n,e,i,x){return t.fun(n,e,i,x)},RQ=function t(n,e,i){return t.fun(n,e,i)},Sm=function t(n,e,i,x){return t.fun(n,e,i,x)},jQ=function t(n,e,i){return t.fun(n,e,i)};N(Cl,function(t,n,e,i){u(f(e),D50),a(t,e,i[1]),u(f(e),L50);var x=i[2];function c(s){return u(n,s)}return R(wm,function(s){return u(t,s)},c,e,x),u(f(e),R50)}),N(DQ,function(t,n,e){var i=a(Cl,t,n);return a(P0(P50),i,e)}),N(wm,function(t,n,e,i){switch(i[0]){case 0:u(f(e),E50);var x=i[1],c=function(A){return u(n,A)};return R(Em,function(A){return u(t,A)},c,e,x),u(f(e),S50);case 1:u(f(e),g50);var s=i[1],p=function(A){return u(n,A)};return R(Sm,function(A){return u(t,A)},p,e,s),u(f(e),F50);case 2:u(f(e),T50);var y=i[1],T=function(A){return u(n,A)},E=function(A){return u(t,A)};return R(kD[1],E,T,e,y),u(f(e),O50);case 3:u(f(e),I50);var h=i[1],w=function(A){return u(n,A)},G=function(A){return u(t,A)};return R(PQ[1],G,w,e,h),u(f(e),A50);default:return u(f(e),N50),a(sQ[1],e,i[1]),u(f(e),C50)}}),N(LQ,function(t,n,e){var i=a(wm,t,n);return a(P0(w50),i,e)}),N(Em,function(t,n,e,i){u(f(e),Kp0),a(f(e),Jp0,Wp0);var x=i[1];function c(V){return u(n,V)}function s(V){return u(t,V)}R(OQ[1],s,c,e,x),u(f(e),$p0),u(f(e),Zp0),a(f(e),r50,Qp0);var p=i[2];if(p){g(e,e50);var y=p[1],T=function(V){return u(n,V)},E=function(V){return u(t,V)};R(NQ[1],E,T,e,y),g(e,n50)}else g(e,t50);u(f(e),u50),u(f(e),i50),a(f(e),x50,f50);var h=i[3];u(f(e),a50),a(t,e,h[1]),u(f(e),o50),u(f(e),c50);var w=h[2],G=0;be(function(V,f0){V&&u(f(e),zp0);function m0(k0){return u(n,k0)}return R(Cl,function(k0){return u(t,k0)},m0,e,f0),1},G,w),u(f(e),s50),u(f(e),v50),u(f(e),l50),u(f(e),b50),a(f(e),m50,p50);var A=i[4];if(A){g(e,_50);var S=A[1],M=function(V,f0){return g(V,Vp0)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,y50)}else g(e,d50);return u(f(e),h50),u(f(e),k50)}),N(RQ,function(t,n,e){var i=a(Em,t,n);return a(P0(Yp0),i,e)}),N(Sm,function(t,n,e,i){u(f(e),hp0),a(f(e),wp0,kp0),a(t,e,i[1]),u(f(e),Ep0),u(f(e),Sp0),a(f(e),Fp0,gp0),a(t,e,i[2]),u(f(e),Tp0),u(f(e),Op0),a(f(e),Ap0,Ip0);var x=i[3];u(f(e),Np0),a(t,e,x[1]),u(f(e),Cp0),u(f(e),Pp0);var c=x[2],s=0;be(function(h,w){h&&u(f(e),dp0);function G(A){return u(n,A)}return R(Cl,function(A){return u(t,A)},G,e,w),1},s,c),u(f(e),Dp0),u(f(e),Lp0),u(f(e),Rp0),u(f(e),jp0),a(f(e),Mp0,Gp0);var p=i[4];if(p){g(e,Bp0);var y=p[1],T=function(h,w){return g(h,yp0)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,qp0)}else g(e,Up0);return u(f(e),Hp0),u(f(e),Xp0)}),N(jQ,function(t,n,e){var i=a(Sm,t,n);return a(P0(_p0),i,e)}),pu(v6r,YN,[0,I1,dD,kD,sQ,mQ,dQ,EQ,Nl,SQ,OQ,NQ,PQ,Cl,DQ,wm,LQ,Em,RQ,Sm,jQ]);var TD=function t(n,e,i,x){return t.fun(n,e,i,x)},GQ=function t(n,e,i){return t.fun(n,e,i)},gm=function t(n,e,i,x){return t.fun(n,e,i,x)},MQ=function t(n,e,i){return t.fun(n,e,i)};N(TD,function(t,n,e,i){u(f(e),bp0),a(t,e,i[1]),u(f(e),pp0);var x=i[2];function c(s){return u(n,s)}return R(gm,function(s){return u(t,s)},c,e,x),u(f(e),mp0)}),N(GQ,function(t,n,e){var i=a(TD,t,n);return a(P0(lp0),i,e)}),N(gm,function(t,n,e,i){u(f(e),ep0),a(f(e),tp0,np0);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(di[5],s,c,e,x),u(f(e),up0),u(f(e),ip0),a(f(e),xp0,fp0);var p=i[2];if(p){g(e,ap0);var y=p[1],T=function(h,w){return g(h,rp0)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,op0)}else g(e,cp0);return u(f(e),sp0),u(f(e),vp0)}),N(MQ,function(t,n,e){var i=a(gm,t,n);return a(P0(Q60),i,e)});var OD=[0,TD,GQ,gm,MQ],Fm=function t(n,e,i,x){return t.fun(n,e,i,x)},BQ=function t(n,e,i){return t.fun(n,e,i)},ID=function t(n,e,i,x){return t.fun(n,e,i,x)},qQ=function t(n,e,i){return t.fun(n,e,i)},Tm=function t(n,e,i,x){return t.fun(n,e,i,x)},UQ=function t(n,e,i){return t.fun(n,e,i)};N(Fm,function(t,n,e,i){switch(i[0]){case 0:var x=i[1];u(f(e),X60),u(f(e),Y60),a(t,e,x[1]),u(f(e),V60);var c=x[2],s=function(G){return u(t,G)};return ir(Tl[2],s,e,c),u(f(e),z60),u(f(e),K60);case 1:u(f(e),W60);var p=i[1],y=function(G){return u(n,G)},T=function(G){return u(t,G)};return R(Ln[1],T,y,e,p),u(f(e),J60);default:u(f(e),$60);var E=i[1],h=function(G){return u(n,G)},w=function(G){return u(t,G)};return R(Up[1],w,h,e,E),u(f(e),Z60)}}),N(BQ,function(t,n,e){var i=a(Fm,t,n);return a(P0(H60),i,e)}),N(ID,function(t,n,e,i){u(f(e),B60),a(t,e,i[1]),u(f(e),q60);var x=i[2];function c(s){return u(n,s)}return R(Tm,function(s){return u(t,s)},c,e,x),u(f(e),U60)}),N(qQ,function(t,n,e){var i=a(ID,t,n);return a(P0(M60),i,e)}),N(Tm,function(t,n,e,i){u(f(e),y60),a(f(e),h60,d60);var x=i[1];function c(A){return u(n,A)}R(Fm,function(A){return u(t,A)},c,e,x),u(f(e),k60),u(f(e),w60),a(f(e),S60,E60);var s=i[2];function p(A){return u(n,A)}function y(A){return u(t,A)}R(di[5],y,p,e,s),u(f(e),g60),u(f(e),F60),a(f(e),O60,T60);var T=i[3];if(T){g(e,I60);var E=T[1],h=function(A){return u(n,A)},w=function(A){return u(t,A)};R(qe[31],w,h,e,E),g(e,A60)}else g(e,N60);u(f(e),C60),u(f(e),P60),a(f(e),L60,D60);var G=i[4];return a(f(e),R60,G),u(f(e),j60),u(f(e),G60)}),N(UQ,function(t,n,e){var i=a(Tm,t,n);return a(P0(_60),i,e)});var HQ=[0,Fm,BQ,ID,qQ,Tm,UQ],Om=function t(n,e,i,x){return t.fun(n,e,i,x)},XQ=function t(n,e,i){return t.fun(n,e,i)},AD=function t(n,e,i,x){return t.fun(n,e,i,x)},YQ=function t(n,e,i){return t.fun(n,e,i)};N(Om,function(t,n,e,i){if(i[0]===0){u(f(e),l60);var x=i[1],c=function(E){return u(n,E)},s=function(E){return u(t,E)};return R(HQ[3],s,c,e,x),u(f(e),b60)}u(f(e),p60);var p=i[1];function y(E){return u(n,E)}function T(E){return u(t,E)}return R(OD[1],T,y,e,p),u(f(e),m60)}),N(XQ,function(t,n,e){var i=a(Om,t,n);return a(P0(v60),i,e)}),N(AD,function(t,n,e,i){u(f(e),K30),a(f(e),J30,W30);var x=i[1];u(f(e),$30);var c=0;be(function(G,A){G&&u(f(e),z30);function S(M){return u(n,M)}return R(Om,function(M){return u(t,M)},S,e,A),1},c,x),u(f(e),Z30),u(f(e),Q30),u(f(e),r60),a(f(e),n60,e60);var s=i[2];function p(G){return u(n,G)}function y(G){return u(t,G)}R(Je[19],y,p,e,s),u(f(e),t60),u(f(e),u60),a(f(e),f60,i60);var T=i[3];if(T){g(e,x60);var E=T[1],h=function(G,A){u(f(G),Y30);var S=0;return be(function(M,K){M&&u(f(G),X30);function V(f0){return u(t,f0)}return ir(uu[1],V,G,K),1},S,A),u(f(G),V30)},w=function(G){return u(t,G)};R(Dr[1],w,h,e,E),g(e,a60)}else g(e,o60);return u(f(e),c60),u(f(e),s60)}),N(YQ,function(t,n,e){var i=a(AD,t,n);return a(P0(H30),i,e)});var VQ=[0,HQ,Om,XQ,AD,YQ],ND=function t(n,e,i,x){return t.fun(n,e,i,x)},zQ=function t(n,e,i){return t.fun(n,e,i)},Im=function t(n,e,i,x){return t.fun(n,e,i,x)},KQ=function t(n,e,i){return t.fun(n,e,i)};N(ND,function(t,n,e,i){u(f(e),B30),a(t,e,i[1]),u(f(e),q30);var x=i[2];function c(s){return u(n,s)}return R(Im,function(s){return u(t,s)},c,e,x),u(f(e),U30)}),N(zQ,function(t,n,e){var i=a(ND,t,n);return a(P0(M30),i,e)}),N(Im,function(t,n,e,i){u(f(e),T30),a(f(e),I30,O30);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(di[5],s,c,e,x),u(f(e),A30),u(f(e),N30),a(f(e),P30,C30);var p=i[2];if(p){g(e,D30);var y=p[1],T=function(h){return u(n,h)},E=function(h){return u(t,h)};R(qe[31],E,T,e,y),g(e,L30)}else g(e,R30);return u(f(e),j30),u(f(e),G30)}),N(KQ,function(t,n,e){var i=a(Im,t,n);return a(P0(F30),i,e)});var WQ=[0,ND,zQ,Im,KQ],Am=function t(n,e,i,x){return t.fun(n,e,i,x)},JQ=function t(n,e,i){return t.fun(n,e,i)},CD=function t(n,e,i,x){return t.fun(n,e,i,x)},$Q=function t(n,e,i){return t.fun(n,e,i)};N(Am,function(t,n,e,i){switch(i[0]){case 0:u(f(e),h30);var x=i[1],c=function(E){return u(n,E)},s=function(E){return u(t,E)};return R(WQ[1],s,c,e,x),u(f(e),k30);case 1:u(f(e),w30);var p=i[1],y=function(E){return u(n,E)},T=function(E){return u(t,E)};return R(OD[1],T,y,e,p),u(f(e),E30);default:return u(f(e),S30),a(t,e,i[1]),u(f(e),g30)}}),N(JQ,function(t,n,e){var i=a(Am,t,n);return a(P0(d30),i,e)}),N(CD,function(t,n,e,i){u(f(e),e30),a(f(e),t30,n30);var x=i[1];u(f(e),u30);var c=0;be(function(G,A){G&&u(f(e),r30);function S(M){return u(n,M)}return R(Am,function(M){return u(t,M)},S,e,A),1},c,x),u(f(e),i30),u(f(e),f30),u(f(e),x30),a(f(e),o30,a30);var s=i[2];function p(G){return u(n,G)}function y(G){return u(t,G)}R(Je[19],y,p,e,s),u(f(e),c30),u(f(e),s30),a(f(e),l30,v30);var T=i[3];if(T){g(e,b30);var E=T[1],h=function(G,A){u(f(G),Z80);var S=0;return be(function(M,K){M&&u(f(G),$80);function V(f0){return u(t,f0)}return ir(uu[1],V,G,K),1},S,A),u(f(G),Q80)},w=function(G){return u(t,G)};R(Dr[1],w,h,e,E),g(e,p30)}else g(e,m30);return u(f(e),_30),u(f(e),y30)}),N($Q,function(t,n,e){var i=a(CD,t,n);return a(P0(J80),i,e)});var ZQ=[0,WQ,Am,JQ,CD,$Q],PD=function t(n,e,i,x){return t.fun(n,e,i,x)},QQ=function t(n,e,i){return t.fun(n,e,i)};N(PD,function(t,n,e,i){u(f(e),R80),a(f(e),G80,j80);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(Ln[1],s,c,e,x),u(f(e),M80),u(f(e),B80),a(f(e),U80,q80);var p=i[2];function y(h){return u(n,h)}function T(h){return u(t,h)}R(Je[19],T,y,e,p),u(f(e),H80),u(f(e),X80),a(f(e),V80,Y80);var E=i[3];return a(f(e),z80,E),u(f(e),K80),u(f(e),W80)}),N(QQ,function(t,n,e){var i=a(PD,t,n);return a(P0(L80),i,e)});var r00=[0,PD,QQ],DD=function t(n,e,i,x){return t.fun(n,e,i,x)},e00=function t(n,e,i){return t.fun(n,e,i)},Nm=function t(n,e,i,x){return t.fun(n,e,i,x)},n00=function t(n,e,i){return t.fun(n,e,i)};N(DD,function(t,n,e,i){u(f(e),C80),a(n,e,i[1]),u(f(e),P80);var x=i[2];function c(s){return u(n,s)}return R(Nm,function(s){return u(t,s)},c,e,x),u(f(e),D80)}),N(e00,function(t,n,e){var i=a(DD,t,n);return a(P0(N80),i,e)}),N(Nm,function(t,n,e,i){switch(i[0]){case 0:u(f(e),E80);var x=i[1],c=function(M){return u(n,M)},s=function(M){return u(t,M)};return R(VQ[4],s,c,e,x),u(f(e),S80);case 1:u(f(e),g80);var p=i[1],y=function(M){return u(n,M)},T=function(M){return u(t,M)};return R(ZQ[4],T,y,e,p),u(f(e),F80);case 2:u(f(e),T80);var E=i[1],h=function(M){return u(n,M)},w=function(M){return u(t,M)};return R(r00[1],w,h,e,E),u(f(e),O80);default:u(f(e),I80);var G=i[1],A=function(M){return u(n,M)},S=function(M){return u(t,M)};return R(qe[31],S,A,e,G),u(f(e),A80)}}),N(n00,function(t,n,e){var i=a(Nm,t,n);return a(P0(w80),i,e)}),pu(l6r,di,[0,OD,VQ,ZQ,r00,DD,e00,Nm,n00]);var LD=function t(n,e,i){return t.fun(n,e,i)},t00=function t(n,e){return t.fun(n,e)},Cm=function t(n,e){return t.fun(n,e)},u00=function t(n){return t.fun(n)},Pm=function t(n,e){return t.fun(n,e)},i00=function t(n){return t.fun(n)};N(LD,function(t,n,e){return u(f(n),d80),a(t,n,e[1]),u(f(n),h80),a(Pm,n,e[2]),u(f(n),k80)}),N(t00,function(t,n){var e=u(LD,t);return a(P0(y80),e,n)}),N(Cm,function(t,n){return n?g(t,m80):g(t,_80)}),N(u00,function(t){return a(P0(p80),Cm,t)}),N(Pm,function(t,n){u(f(t),r80),a(f(t),n80,e80),a(Cm,t,n[1]),u(f(t),t80),u(f(t),u80),a(f(t),f80,i80);var e=n[2];a(f(t),x80,e),u(f(t),a80),u(f(t),o80),a(f(t),s80,c80);var i=n[3];return a(f(t),v80,i),u(f(t),l80),u(f(t),b80)}),N(i00,function(t){return a(P0(Q40),Pm,t)}),pu(b6r,uu,[0,LD,t00,Cm,u00,Pm,i00]);var RD=function t(n,e,i,x){return t.fun(n,e,i,x)},f00=function t(n,e,i){return t.fun(n,e,i)},Dm=function t(n,e){return t.fun(n,e)},x00=function t(n){return t.fun(n)},Lm=function t(n,e,i,x){return t.fun(n,e,i,x)},a00=function t(n,e,i){return t.fun(n,e,i)};N(RD,function(t,n,e,i){u(f(e),J40),a(n,e,i[1]),u(f(e),$40);var x=i[2];function c(s){return u(n,s)}return R(Lm,function(s){return u(t,s)},c,e,x),u(f(e),Z40)}),N(f00,function(t,n,e){var i=a(RD,t,n);return a(P0(W40),i,e)}),N(Dm,function(t,n){switch(n){case 0:return g(t,Y40);case 1:return g(t,V40);case 2:return g(t,z40);default:return g(t,K40)}}),N(x00,function(t){return a(P0(X40),Dm,t)}),N(Lm,function(t,n,e,i){u(f(e),c40),a(f(e),v40,s40),a(Dm,e,i[1]),u(f(e),l40),u(f(e),b40),a(f(e),m40,p40);var x=i[2];function c(V){return u(n,V)}function s(V){return u(t,V)}R(qe[7][1][1],s,c,e,x),u(f(e),_40),u(f(e),y40),a(f(e),h40,d40);var p=i[3];u(f(e),k40),a(t,e,p[1]),u(f(e),w40);var y=p[2];function T(V){return u(n,V)}function E(V){return u(t,V)}R(Ps[5],E,T,e,y),u(f(e),E40),u(f(e),S40),u(f(e),g40),a(f(e),T40,F40);var h=i[4];a(f(e),O40,h),u(f(e),I40),u(f(e),A40),a(f(e),C40,N40);var w=i[5];u(f(e),P40);var G=0;be(function(V,f0){V&&u(f(e),o40);function m0(g0){return u(n,g0)}function k0(g0){return u(t,g0)}return R(T1[7][1],k0,m0,e,f0),1},G,w),u(f(e),D40),u(f(e),L40),u(f(e),R40),a(f(e),G40,j40);var A=i[6];if(A){g(e,M40);var S=A[1],M=function(V,f0){return g(V,a40)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,B40)}else g(e,q40);return u(f(e),U40),u(f(e),H40)}),N(a00,function(t,n,e){var i=a(Lm,t,n);return a(P0(x40),i,e)});var o00=[0,RD,f00,Dm,x00,Lm,a00],jD=function t(n,e,i,x){return t.fun(n,e,i,x)},c00=function t(n,e,i){return t.fun(n,e,i)},Rm=function t(n,e,i,x){return t.fun(n,e,i,x)},s00=function t(n,e,i){return t.fun(n,e,i)},jm=function t(n,e,i,x){return t.fun(n,e,i,x)},v00=function t(n,e,i){return t.fun(n,e,i)};N(jD,function(t,n,e,i){u(f(e),u40),a(n,e,i[1]),u(f(e),i40);var x=i[2];function c(s){return u(n,s)}return R(Rm,function(s){return u(t,s)},c,e,x),u(f(e),f40)}),N(c00,function(t,n,e){var i=a(jD,t,n);return a(P0(t40),i,e)}),N(Rm,function(t,n,e,i){u(f(e),gb0),a(f(e),Tb0,Fb0);var x=i[1];function c(m0){return u(n,m0)}function s(m0){return u(t,m0)}R(qe[7][1][1],s,c,e,x),u(f(e),Ob0),u(f(e),Ib0),a(f(e),Nb0,Ab0);var p=i[2];function y(m0){return u(n,m0)}R(jm,function(m0){return u(t,m0)},y,e,p),u(f(e),Cb0),u(f(e),Pb0),a(f(e),Lb0,Db0);var T=i[3];function E(m0){return u(n,m0)}function h(m0){return u(t,m0)}R(Je[19],h,E,e,T),u(f(e),Rb0),u(f(e),jb0),a(f(e),Mb0,Gb0);var w=i[4];a(f(e),Bb0,w),u(f(e),qb0),u(f(e),Ub0),a(f(e),Xb0,Hb0);var G=i[5];if(G){g(e,Yb0);var A=G[1],S=function(m0){return u(t,m0)};ir(zv[1],S,e,A),g(e,Vb0)}else g(e,zb0);u(f(e),Kb0),u(f(e),Wb0),a(f(e),$b0,Jb0);var M=i[6];if(M){g(e,Zb0);var K=M[1],V=function(m0,k0){return g(m0,Sb0)},f0=function(m0){return u(t,m0)};R(Dr[1],f0,V,e,K),g(e,Qb0)}else g(e,r40);return u(f(e),e40),u(f(e),n40)}),N(s00,function(t,n,e){var i=a(Rm,t,n);return a(P0(Eb0),i,e)}),N(jm,function(t,n,e,i){if(typeof i=="number")return i?g(e,db0):g(e,hb0);u(f(e),kb0);var x=i[1];function c(p){return u(n,p)}function s(p){return u(t,p)}return R(qe[31],s,c,e,x),u(f(e),wb0)}),N(v00,function(t,n,e){var i=a(jm,t,n);return a(P0(yb0),i,e)});var l00=[0,jD,c00,Rm,s00,jm,v00],GD=function t(n,e,i,x){return t.fun(n,e,i,x)},b00=function t(n,e,i){return t.fun(n,e,i)},Gm=function t(n,e,i,x){return t.fun(n,e,i,x)},p00=function t(n,e,i){return t.fun(n,e,i)};N(GD,function(t,n,e,i){u(f(e),pb0),a(n,e,i[1]),u(f(e),mb0);var x=i[2];function c(s){return u(n,s)}return R(Gm,function(s){return u(t,s)},c,e,x),u(f(e),_b0)}),N(b00,function(t,n,e){var i=a(GD,t,n);return a(P0(bb0),i,e)}),N(Gm,function(t,n,e,i){u(f(e),Rl0),a(f(e),Gl0,jl0);var x=i[1];function c(m0){return u(t,m0)}ir(qp[1],c,e,x),u(f(e),Ml0),u(f(e),Bl0),a(f(e),Ul0,ql0);var s=i[2];function p(m0){return u(n,m0)}function y(m0){return u(t,m0)}R(T1[2][5],y,p,e,s),u(f(e),Hl0),u(f(e),Xl0),a(f(e),Vl0,Yl0);var T=i[3];function E(m0){return u(n,m0)}function h(m0){return u(t,m0)}R(Je[19],h,E,e,T),u(f(e),zl0),u(f(e),Kl0),a(f(e),Jl0,Wl0);var w=i[4];a(f(e),$l0,w),u(f(e),Zl0),u(f(e),Ql0),a(f(e),eb0,rb0);var G=i[5];if(G){g(e,nb0);var A=G[1],S=function(m0){return u(t,m0)};ir(zv[1],S,e,A),g(e,tb0)}else g(e,ub0);u(f(e),ib0),u(f(e),fb0),a(f(e),ab0,xb0);var M=i[6];if(M){g(e,ob0);var K=M[1],V=function(m0,k0){return g(m0,Ll0)},f0=function(m0){return u(t,m0)};R(Dr[1],f0,V,e,K),g(e,cb0)}else g(e,sb0);return u(f(e),vb0),u(f(e),lb0)}),N(p00,function(t,n,e){var i=a(Gm,t,n);return a(P0(Dl0),i,e)});var m00=[0,GD,b00,Gm,p00],MD=function t(n,e,i,x){return t.fun(n,e,i,x)},_00=function t(n,e,i){return t.fun(n,e,i)},Mm=function t(n,e,i,x){return t.fun(n,e,i,x)},y00=function t(n,e,i){return t.fun(n,e,i)};N(MD,function(t,n,e,i){u(f(e),Nl0),a(t,e,i[1]),u(f(e),Cl0);var x=i[2];function c(s){return u(n,s)}return R(Mm,function(s){return u(t,s)},c,e,x),u(f(e),Pl0)}),N(_00,function(t,n,e){var i=a(MD,t,n);return a(P0(Al0),i,e)}),N(Mm,function(t,n,e,i){u(f(e),sl0),a(f(e),ll0,vl0);var x=i[1];function c(S){return u(n,S)}function s(S){return u(t,S)}R(qe[31],s,c,e,x),u(f(e),bl0),u(f(e),pl0),a(f(e),_l0,ml0);var p=i[2];if(p){g(e,yl0);var y=p[1],T=function(S){return u(n,S)},E=function(S){return u(t,S)};R(Je[23][1],E,T,e,y),g(e,dl0)}else g(e,hl0);u(f(e),kl0),u(f(e),wl0),a(f(e),Sl0,El0);var h=i[3];if(h){g(e,gl0);var w=h[1],G=function(S,M){return g(S,cl0)},A=function(S){return u(t,S)};R(Dr[1],A,G,e,w),g(e,Fl0)}else g(e,Tl0);return u(f(e),Ol0),u(f(e),Il0)}),N(y00,function(t,n,e){var i=a(Mm,t,n);return a(P0(ol0),i,e)});var d00=[0,MD,_00,Mm,y00],BD=function t(n,e,i,x){return t.fun(n,e,i,x)},h00=function t(n,e,i){return t.fun(n,e,i)},Bm=function t(n,e,i,x){return t.fun(n,e,i,x)},k00=function t(n,e,i){return t.fun(n,e,i)};N(BD,function(t,n,e,i){u(f(e),fl0),a(t,e,i[1]),u(f(e),xl0);var x=i[2];function c(s){return u(n,s)}return R(Bm,function(s){return u(t,s)},c,e,x),u(f(e),al0)}),N(h00,function(t,n,e){var i=a(BD,t,n);return a(P0(il0),i,e)}),N(Bm,function(t,n,e,i){u(f(e),z20),a(f(e),W20,K20);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(Ln[1],s,c,e,x),u(f(e),J20),u(f(e),$20),a(f(e),Q20,Z20);var p=i[2];if(p){g(e,rl0);var y=p[1],T=function(h){return u(n,h)},E=function(h){return u(t,h)};R(Je[23][1],E,T,e,y),g(e,el0)}else g(e,nl0);return u(f(e),tl0),u(f(e),ul0)}),N(k00,function(t,n,e){var i=a(Bm,t,n);return a(P0(V20),i,e)});var w00=[0,BD,h00,Bm,k00],qD=function t(n,e,i,x){return t.fun(n,e,i,x)},E00=function t(n,e,i){return t.fun(n,e,i)},qm=function t(n,e,i,x){return t.fun(n,e,i,x)},S00=function t(n,e,i){return t.fun(n,e,i)};N(qD,function(t,n,e,i){u(f(e),H20),a(t,e,i[1]),u(f(e),X20);var x=i[2];function c(s){return u(n,s)}return R(qm,function(s){return u(t,s)},c,e,x),u(f(e),Y20)}),N(E00,function(t,n,e){var i=a(qD,t,n);return a(P0(U20),i,e)}),N(qm,function(t,n,e,i){u(f(e),O20),a(f(e),A20,I20);var x=i[1];u(f(e),N20);var c=0;be(function(E,h){E&&u(f(e),T20);function w(A){return u(n,A)}function G(A){return u(t,A)}return R(w00[1],G,w,e,h),1},c,x),u(f(e),C20),u(f(e),P20),u(f(e),D20),a(f(e),R20,L20);var s=i[2];if(s){g(e,j20);var p=s[1],y=function(E,h){return g(E,F20)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,G20)}else g(e,M20);return u(f(e),B20),u(f(e),q20)}),N(S00,function(t,n,e){var i=a(qm,t,n);return a(P0(g20),i,e)});var g00=[0,w00,qD,E00,qm,S00],UD=function t(n,e,i,x){return t.fun(n,e,i,x)},F00=function t(n,e,i){return t.fun(n,e,i)},Um=function t(n,e,i,x){return t.fun(n,e,i,x)},T00=function t(n,e,i){return t.fun(n,e,i)},Hm=function t(n,e,i,x){return t.fun(n,e,i,x)},O00=function t(n,e,i){return t.fun(n,e,i)};N(UD,function(t,n,e,i){u(f(e),w20),a(t,e,i[1]),u(f(e),E20);var x=i[2];function c(s){return u(n,s)}return R(Um,function(s){return u(t,s)},c,e,x),u(f(e),S20)}),N(F00,function(t,n,e){var i=a(UD,t,n);return a(P0(k20),i,e)}),N(Um,function(t,n,e,i){u(f(e),x20),a(f(e),o20,a20);var x=i[1];u(f(e),c20);var c=0;be(function(E,h){E&&u(f(e),f20);function w(G){return u(n,G)}return R(Hm,function(G){return u(t,G)},w,e,h),1},c,x),u(f(e),s20),u(f(e),v20),u(f(e),l20),a(f(e),p20,b20);var s=i[2];if(s){g(e,m20);var p=s[1],y=function(E,h){return g(E,i20)},T=function(E){return u(t,E)};R(Dr[1],T,y,e,p),g(e,_20)}else g(e,y20);return u(f(e),d20),u(f(e),h20)}),N(T00,function(t,n,e){var i=a(Um,t,n);return a(P0(u20),i,e)}),N(Hm,function(t,n,e,i){switch(i[0]){case 0:u(f(e),Zv0);var x=i[1],c=function(G){return u(n,G)},s=function(G){return u(t,G)};return R(o00[1],s,c,e,x),u(f(e),Qv0);case 1:u(f(e),r20);var p=i[1],y=function(G){return u(n,G)},T=function(G){return u(t,G)};return R(l00[1],T,y,e,p),u(f(e),e20);default:u(f(e),n20);var E=i[1],h=function(G){return u(n,G)},w=function(G){return u(t,G)};return R(m00[1],w,h,e,E),u(f(e),t20)}}),N(O00,function(t,n,e){var i=a(Hm,t,n);return a(P0($v0),i,e)});var HD=function t(n,e,i,x){return t.fun(n,e,i,x)},I00=function t(n,e,i){return t.fun(n,e,i)},Xm=function t(n,e,i,x){return t.fun(n,e,i,x)},A00=function t(n,e,i){return t.fun(n,e,i)},Bee=[0,UD,F00,Um,T00,Hm,O00];N(HD,function(t,n,e,i){u(f(e),Kv0),a(t,e,i[1]),u(f(e),Wv0);var x=i[2];function c(s){return u(n,s)}return R(Xm,function(s){return u(t,s)},c,e,x),u(f(e),Jv0)}),N(I00,function(t,n,e){var i=a(HD,t,n);return a(P0(zv0),i,e)}),N(Xm,function(t,n,e,i){u(f(e),Lv0),a(f(e),jv0,Rv0);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(qe[31],s,c,e,x),u(f(e),Gv0),u(f(e),Mv0),a(f(e),qv0,Bv0);var p=i[2];if(p){g(e,Uv0);var y=p[1],T=function(h,w){return g(h,Dv0)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,Hv0)}else g(e,Xv0);return u(f(e),Yv0),u(f(e),Vv0)}),N(A00,function(t,n,e){var i=a(Xm,t,n);return a(P0(Pv0),i,e)});var N00=[0,HD,I00,Xm,A00],XD=function t(n,e,i,x){return t.fun(n,e,i,x)},C00=function t(n,e,i){return t.fun(n,e,i)};N(XD,function(t,n,e,i){u(f(e),q10),a(f(e),H10,U10);var x=i[1];if(x){g(e,X10);var c=x[1],s=function(w0){return u(n,w0)},p=function(w0){return u(t,w0)};R(Ln[1],p,s,e,c),g(e,Y10)}else g(e,V10);u(f(e),z10),u(f(e),K10),a(f(e),J10,W10);var y=i[2];function T(w0){return u(n,w0)}function E(w0){return u(t,w0)}R(T1[6][1],E,T,e,y),u(f(e),$10),u(f(e),Z10),a(f(e),rv0,Q10);var h=i[3];if(h){g(e,ev0);var w=h[1],G=function(w0){return u(n,w0)},A=function(w0){return u(t,w0)};R(Je[22][1],A,G,e,w),g(e,nv0)}else g(e,tv0);u(f(e),uv0),u(f(e),iv0),a(f(e),xv0,fv0);var S=i[4];if(S){g(e,av0);var M=S[1],K=function(w0){return u(n,w0)},V=function(w0){return u(t,w0)};R(d00[1],V,K,e,M),g(e,ov0)}else g(e,cv0);u(f(e),sv0),u(f(e),vv0),a(f(e),bv0,lv0);var f0=i[5];if(f0){g(e,pv0);var m0=f0[1],k0=function(w0){return u(n,w0)},g0=function(w0){return u(t,w0)};R(g00[2],g0,k0,e,m0),g(e,mv0)}else g(e,_v0);u(f(e),yv0),u(f(e),dv0),a(f(e),kv0,hv0);var e0=i[6];u(f(e),wv0);var x0=0;be(function(w0,_0){w0&&u(f(e),B10);function E0(b){return u(n,b)}function X0(b){return u(t,b)}return R(N00[1],X0,E0,e,_0),1},x0,e0),u(f(e),Ev0),u(f(e),Sv0),u(f(e),gv0),a(f(e),Tv0,Fv0);var l=i[7];if(l){g(e,Ov0);var c0=l[1],t0=function(w0,_0){return g(w0,M10)},a0=function(w0){return u(t,w0)};R(Dr[1],a0,t0,e,c0),g(e,Iv0)}else g(e,Av0);return u(f(e),Nv0),u(f(e),Cv0)}),N(C00,function(t,n,e){var i=a(XD,t,n);return a(P0(G10),i,e)}),pu(p6r,T1,[0,o00,l00,m00,d00,g00,Bee,N00,XD,C00]);var YD=function t(n,e,i,x){return t.fun(n,e,i,x)},P00=function t(n,e,i){return t.fun(n,e,i)},Ym=function t(n,e,i,x){return t.fun(n,e,i,x)},D00=function t(n,e,i){return t.fun(n,e,i)};N(YD,function(t,n,e,i){u(f(e),L10),a(t,e,i[1]),u(f(e),R10);var x=i[2];function c(s){return u(n,s)}return R(Ym,function(s){return u(t,s)},c,e,x),u(f(e),j10)}),N(P00,function(t,n,e){var i=a(YD,t,n);return a(P0(D10),i,e)}),N(Ym,function(t,n,e,i){u(f(e),w10),a(f(e),S10,E10);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(di[5],s,c,e,x),u(f(e),g10),u(f(e),F10),a(f(e),O10,T10);var p=i[2];if(p){g(e,I10);var y=p[1],T=function(h,w){return g(h,k10)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,A10)}else g(e,N10);return u(f(e),C10),u(f(e),P10)}),N(D00,function(t,n,e){var i=a(Ym,t,n);return a(P0(h10),i,e)});var L00=[0,YD,P00,Ym,D00],VD=function t(n,e,i,x){return t.fun(n,e,i,x)},R00=function t(n,e,i){return t.fun(n,e,i)},Vm=function t(n,e,i,x){return t.fun(n,e,i,x)},j00=function t(n,e,i){return t.fun(n,e,i)};N(VD,function(t,n,e,i){u(f(e),_10),a(t,e,i[1]),u(f(e),y10);var x=i[2];function c(s){return u(n,s)}return R(Vm,function(s){return u(t,s)},c,e,x),u(f(e),d10)}),N(R00,function(t,n,e){var i=a(VD,t,n);return a(P0(m10),i,e)}),N(Vm,function(t,n,e,i){u(f(e),u10),a(f(e),f10,i10);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(di[5],s,c,e,x),u(f(e),x10),u(f(e),a10),a(f(e),c10,o10);var p=i[2];if(p){g(e,s10);var y=p[1],T=function(h){return u(n,h)},E=function(h){return u(t,h)};R(qe[31],E,T,e,y),g(e,v10)}else g(e,l10);return u(f(e),b10),u(f(e),p10)}),N(j00,function(t,n,e){var i=a(Vm,t,n);return a(P0(t10),i,e)});var G00=[0,VD,R00,Vm,j00],zD=function t(n,e,i,x){return t.fun(n,e,i,x)},M00=function t(n,e,i){return t.fun(n,e,i)},zm=function t(n,e,i,x){return t.fun(n,e,i,x)},B00=function t(n,e,i){return t.fun(n,e,i)};N(zD,function(t,n,e,i){u(f(e),r10),a(t,e,i[1]),u(f(e),e10);var x=i[2];function c(s){return u(n,s)}return R(zm,function(s){return u(t,s)},c,e,x),u(f(e),n10)}),N(M00,function(t,n,e){var i=a(zD,t,n);return a(P0(Qs0),i,e)}),N(zm,function(t,n,e,i){u(f(e),qs0),a(f(e),Hs0,Us0);var x=i[1];function c(h){return u(n,h)}function s(h){return u(t,h)}R(Je[17],s,c,e,x),u(f(e),Xs0),u(f(e),Ys0),a(f(e),zs0,Vs0);var p=i[2];if(p){g(e,Ks0);var y=p[1],T=function(h,w){return g(h,Bs0)},E=function(h){return u(t,h)};R(Dr[1],E,T,e,y),g(e,Ws0)}else g(e,Js0);return u(f(e),$s0),u(f(e),Zs0)}),N(B00,function(t,n,e){var i=a(zm,t,n);return a(P0(Ms0),i,e)});var q00=[0,zD,M00,zm,B00],KD=function t(n,e,i,x){return t.fun(n,e,i,x)},U00=function t(n,e,i){return t.fun(n,e,i)},Km=function t(n,e,i,x){return t.fun(n,e,i,x)},H00=function t(n,e,i){return t.fun(n,e,i)};N(KD,function(t,n,e,i){u(f(e),Rs0),a(t,e,i[1]),u(f(e),js0);var x=i[2];function c(s){return u(n,s)}return R(Km,function(s){return u(t,s)},c,e,x),u(f(e),Gs0)}),N(U00,function(t,n,e){var i=a(KD,t,n);return a(P0(Ls0),i,e)}),N(Km,function(t,n,e,i){u(f(e),xs0),a(f(e),os0,as0);var x=i[1];if(x){g(e,cs0);var c=x[1],s=function(V){return u(n,V)},p=function(V){return u(t,V)};R(q00[1],p,s,e,c),g(e,ss0)}else g(e,vs0);u(f(e),ls0),u(f(e),bs0),a(f(e),ms0,ps0);var y=i[2];u(f(e),_s0);var T=0;be(function(V,f0){V&&u(f(e),fs0);function m0(g0){return u(n,g0)}function k0(g0){return u(t,g0)}return R(G00[1],k0,m0,e,f0),1},T,y),u(f(e),ys0),u(f(e),ds0),u(f(e),hs0),a(f(e),ws0,ks0);var E=i[3];if(E){g(e,Es0);var h=E[1],w=function(V){return u(n,V)},G=function(V){return u(t,V)};R(L00[1],G,w,e,h),g(e,Ss0)}else g(e,gs0);u(f(e),Fs0),u(f(e),Ts0),a(f(e),Is0,Os0);var A=i[4];if(A){g(e,As0);var S=A[1],M=function(V,f0){u(f(V),us0);var m0=0;return be(function(k0,g0){k0&&u(f(V),ts0);function e0(x0){return u(t,x0)}return ir(uu[1],e0,V,g0),1},m0,f0),u(f(V),is0)},K=function(V){return u(t,V)};R(Dr[1],K,M,e,S),g(e,Ns0)}else g(e,Cs0);return u(f(e),Ps0),u(f(e),Ds0)}),N(H00,function(t,n,e){var i=a(Km,t,n);return a(P0(ns0),i,e)});var X00=[0,KD,U00,Km,H00],WD=function t(n,e,i,x){return t.fun(n,e,i,x)},Y00=function t(n,e,i){return t.fun(n,e,i)},Wm=function t(n,e,i,x){return t.fun(n,e,i,x)},V00=function t(n,e,i){return t.fun(n,e,i)};N(WD,function(t,n,e,i){u(f(e),ec0),a(f(e),tc0,nc0);var x=i[1];if(x){g(e,uc0);var c=x[1],s=function(_0){return u(n,_0)},p=function(_0){return u(t,_0)};R(Ln[1],p,s,e,c),g(e,ic0)}else g(e,fc0);u(f(e),xc0),u(f(e),ac0),a(f(e),cc0,oc0);var y=i[2];function T(_0){return u(n,_0)}function E(_0){return u(t,_0)}R(X00[1],E,T,e,y),u(f(e),sc0),u(f(e),vc0),a(f(e),bc0,lc0);var h=i[3];function w(_0){return u(n,_0)}R(Wm,function(_0){return u(t,_0)},w,e,h),u(f(e),pc0),u(f(e),mc0),a(f(e),yc0,_c0);var G=i[4];a(f(e),dc0,G),u(f(e),hc0),u(f(e),kc0),a(f(e),Ec0,wc0);var A=i[5];a(f(e),Sc0,A),u(f(e),gc0),u(f(e),Fc0),a(f(e),Oc0,Tc0);var S=i[6];if(S){g(e,Ic0);var M=S[1],K=function(_0){return u(n,_0)},V=function(_0){return u(t,_0)};R(Je[24][1],V,K,e,M),g(e,Ac0)}else g(e,Nc0);u(f(e),Cc0),u(f(e),Pc0),a(f(e),Lc0,Dc0);var f0=i[7];function m0(_0){return u(n,_0)}function k0(_0){return u(t,_0)}R(Je[19],k0,m0,e,f0),u(f(e),Rc0),u(f(e),jc0),a(f(e),Mc0,Gc0);var g0=i[8];if(g0){g(e,Bc0);var e0=g0[1],x0=function(_0){return u(n,_0)},l=function(_0){return u(t,_0)};R(Je[22][1],l,x0,e,e0),g(e,qc0)}else g(e,Uc0);u(f(e),Hc0),u(f(e),Xc0),a(f(e),Vc0,Yc0);var c0=i[9];if(c0){g(e,zc0);var t0=c0[1],a0=function(_0,E0){return g(_0,rc0)},w0=function(_0){return u(t,_0)};R(Dr[1],w0,a0,e,t0),g(e,Kc0)}else g(e,Wc0);return u(f(e),Jc0),u(f(e),$c0),a(f(e),Qc0,Zc0),a(t,e,i[10]),u(f(e),rs0),u(f(e),es0)}),N(Y00,function(t,n,e){var i=a(WD,t,n);return a(P0(Qo0),i,e)}),N(Wm,function(t,n,e,i){if(i[0]===0){var x=i[1];u(f(e),Vo0),u(f(e),zo0),a(t,e,x[1]),u(f(e),Ko0);var c=x[2],s=function(h){return u(n,h)},p=function(h){return u(t,h)};return R(Xu[1][1],p,s,e,c),u(f(e),Wo0),u(f(e),Jo0)}u(f(e),$o0);var y=i[1];function T(h){return u(n,h)}function E(h){return u(t,h)}return R(qe[31],E,T,e,y),u(f(e),Zo0)}),N(V00,function(t,n,e){var i=a(Wm,t,n);return a(P0(Yo0),i,e)}),pu(m6r,Ps,[0,L00,G00,q00,X00,WD,Y00,Wm,V00]);var JD=function t(n,e,i,x){return t.fun(n,e,i,x)},z00=function t(n,e,i){return t.fun(n,e,i)},Jm=function t(n,e,i,x){return t.fun(n,e,i,x)},K00=function t(n,e,i){return t.fun(n,e,i)};N(JD,function(t,n,e,i){u(f(e),Uo0),a(t,e,i[1]),u(f(e),Ho0);var x=i[2];function c(s){return u(n,s)}return R(Jm,function(s){return u(t,s)},c,e,x),u(f(e),Xo0)}),N(z00,function(t,n,e){var i=a(JD,t,n);return a(P0(qo0),i,e)}),N(Jm,function(t,n,e,i){u(f(e),ko0),a(f(e),Eo0,wo0);var x=i[1];u(f(e),So0);var c=0;be(function(w,G){w&&u(f(e),ho0);function A(M){return u(n,M)}function S(M){return u(t,M)}return R(Xu[35],S,A,e,G),1},c,x),u(f(e),go0),u(f(e),Fo0),u(f(e),To0),a(f(e),Io0,Oo0);var s=i[2];if(s){g(e,Ao0);var p=s[1],y=function(w,G){return g(w,do0)},T=function(w){return u(t,w)};R(Dr[1],T,y,e,p),g(e,No0)}else g(e,Co0);u(f(e),Po0),u(f(e),Do0),a(f(e),Ro0,Lo0);var E=i[3];u(f(e),jo0);var h=0;return be(function(w,G){w&&u(f(e),yo0);function A(S){return u(t,S)}return ir(uu[1],A,e,G),1},h,E),u(f(e),Go0),u(f(e),Mo0),u(f(e),Bo0)}),N(K00,function(t,n,e){var i=a(Jm,t,n);return a(P0(_o0),i,e)}),pu(_6r,Ree,[0,JD,z00,Jm,K00]);function ze(t,n){if(n){var e=n[1],i=u(t,e);return e===i?n:[0,i]}return n}function te(t,n,e,i,x){var c=a(t,n,e);return e===c?i:u(x,c)}function ee(t,n,e,i){var x=u(t,n);return n===x?e:u(i,x)}function mu(t,n){var e=n[1];function i(x){return[0,e,x]}return te(t,e,n[2],n,i)}function Un(t,n){var e=be(function(i,x){var c=u(t,x),s=i[2],p=s||(c!==x?1:0);return[0,[0,c,i[1]],p]},O6r,n);return e[2]?de(e[1]):n}var $D=jp(A6r,function(t){var n=DN(t,I6r),e=n[1],i=n[2],x=n[3],c=n[4],s=n[5],p=n[6],y=n[7],T=n[8],E=n[9],h=n[10],w=n[11],G=n[12],A=n[13],S=n[14],M=n[15],K=n[16],V=n[17],f0=n[18],m0=n[19],k0=n[20],g0=n[21],e0=n[22],x0=n[23],l=n[24],c0=n[25],t0=n[26],a0=n[27],w0=n[28],_0=n[29],E0=n[30],X0=n[31],b=n[32],G0=n[33],X=n[34],s0=n[35],dr=n[36],Ar=n[37],ar=n[38],W0=n[39],Lr=n[40],Tr=n[41],Hr=n[42],Or=n[43],xr=n[44],Rr=n[45],Wr=n[46],Jr=n[47],or=n[49],_r=n[50],Ir=n[51],fe=n[52],v0=n[53],P=n[54],L=n[55],Q=n[56],i0=n[57],l0=n[58],S0=n[59],T0=n[60],rr=n[61],R0=n[62],B=n[63],Z=n[65],p0=n[66],b0=n[67],O0=n[68],q0=n[69],er=n[70],yr=n[71],vr=n[72],$0=n[73],Sr=n[74],Mr=n[75],Br=n[76],qr=n[77],jr=n[78],$r=n[79],ne=n[80],Qr=n[81],pe=n[82],oe=n[83],me=n[84],ae=n[85],ce=n[86],ge=n[87],H0=n[88],Fr=n[89],_=n[90],k=n[91],I=n[92],U=n[93],Y=n[94],y0=n[95],D0=n[96],I0=n[97],D=n[98],u0=n[99],Y0=n[ni],J0=n[L7],fr=n[Ri],Q0=n[c7],F0=n[D7],gr=n[R7],mr=n[Xt],Cr=n[Qc],sr=n[fs],Pr=n[Fv],K0=n[Ht],Ur=n[vf],d0=n[F7],Kr=n[Pn],re=n[u1],xe=n[Av],je=n[x1],ve=n[A2],Ie=n[z2],Me=n[Sv],Be=n[fc],fn=n[tl],Ke=n[In],Ae=n[us],xn=n[X2],Qe=n[br],yn=n[DX],on=n[zn],Ce=n[Rt],We=n[eV],rn=n[Jw],bn=n[Qg],Cn=n[YH],Hn=n[133],Sn=n[134],vt=n[135],At=n[QH],gt=n[137],Jt=n[OH],Bt=n[139],Ft=n[gH],Nt=n[141],du=n[142],Ku=n[143],lt=n[cV],xu=n[145],Mu=n[146],z7=n[MX],Yi=n[148],a7=n[fH],Yc=n[150],K7=n[151],qt=n[152],bt=n[153],U0=n[NH],L0=n[155],Re=n[156],He=n[157],he=n[158],_e=n[159],Zn=n[sY],dn=n[WU],it=n[Sd],ft=n[Mn],Rn=n[PF],nt=n[nY],ht=n[MY],tn=n[DT],cn=n[DY],tt=n[RX],Tt=n[Xg],Fi=n[yg],hs=n[BU],Iu=n[wY],Vs=n[nH],Vi=n[dX],zs=n[kV],Ks=n[oV],en=n[OO],ci=n[qY],Ws=n[mU],c2=n[Ai],B9=n[Kg],q9=n[mS],U9=n[wk],Js=n[AU],s2=n[dh],H9=n[iw],X9=n[cY],Y9=n[sX],X1=n[PY],si=n[yX],ob=n[at],cb=n[VT],sb=n[iI],V9=n[vY],z9=n[WX],K9=n[SY],vb=n[_H],W9=n[uX],J9=n[RU],$9=n[mY],Z9=n[xH],lb=n[fV],Q9=n[rY],Y1=n[$H],v2=n[CH],bb=n[LX],pb=n[wH],mb=n[Zg],Tn=n[N6],jn=n[EU],V1=n[EY],_b=n[qX],yb=n[dT],r_=n[cT],Vc=n[d6],e_=n[sp],l2=n[Lw],db=n[NU],zc=n[aA],n_=n[HX],$s=n[NX],hb=n[d8],z1=n[dv],t_=n[HO],ks=n[tk],u_=n[eX],K1=n[sV],i_=n[dU],b2=n[Bd],f_=n[VX],Zs=n[eT],kb=n[wT],Qs=n[aH],x_=n[eH],zi=n[mO],Kc=n[YY],r1=n[pH],a_=n[f6],p2=n[v1],m2=n[Wy],_2=n[TT],o_=n[uH],e1=n[l8],c_=n[rV],y2=n[$2],XL=n[48],W1=n[64];function YL(o,F,m){var O=m[2],H=m[1],$=ze(u(o[1][1+en],o),H),r0=a(o[1][1+s0],o,O);return O===r0&&H===$?m:[0,$,r0,m[3],m[4]]}function J1(o,F,m){var O=m[4],H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+Kc],o,r0),z0=ze(u(o[1][1+V],o),$),Nr=a(o[1][1+t0],o,H),Gr=a(o[1][1+s0],o,O);return r0===M0&&H===Nr&&$===z0&&O===Gr?m:[0,M0,z0,Nr,Gr]}function VL(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+en],o,$),M0=a(o[1][1+Or],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function $1(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+_r],o,$),M0=a(o[1][1+Or],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function zL(o,F,m){var O=m[2],H=O[2],$=O[1],r0=ir(o[1][1+p],o,F,$),M0=ze(u(o[1][1+en],o),H);return $===r0&&H===M0?m:[0,m[1],[0,r0,M0]]}function Ti(o,F,m){var O=m[3],H=m[2],$=m[1],r0=Un(a(o[1][1+y],o,H),$),M0=a(o[1][1+s0],o,O);return $===r0&&O===M0?m:[0,r0,H,M0]}function KL(o,F,m){var O=m[4],H=m[2],$=a(o[1][1+en],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,m[1],$,m[3],r0]}function WL(o,F,m){var O=m[3],H=m[2],$=a(o[1][1+en],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,m[1],$,r0]}function d2(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+en],o,$),M0=a(o[1][1+l],o,H),z0=a(o[1][1+s0],o,O);return r0===$&&M0===H&&z0===O?m:[0,r0,M0,z0]}function JL(o,F,m){var O=m[4],H=m[3],$=m[2],r0=m[1],M0=mu(u(o[1][1+zi],o),r0);if($)var z0=$[1],Nr=z0[1],Gr=function($t){return[0,[0,Nr,$t]]},Fe=z0[2],ye=te(u(o[1][1+K1],o),Nr,Fe,$,Gr);else var ye=$;if(H)var Dn=H[1],pn=Dn[1],xt=function($t){return[0,[0,pn,$t]]},pt=Dn[2],kt=te(u(o[1][1+zi],o),pn,pt,H,xt);else var kt=H;var Kn=a(o[1][1+s0],o,O);return r0===M0&&$===ye&&H===kt&&O===Kn?m:[0,M0,ye,kt,Kn]}function Z1(o,F,m){var O=m[2],H=m[1],$=a(o[1][1+en],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function $L(o,F,m){var O=m[1],H=a(o[1][1+s0],o,O);return O===H?m:[0,H]}function Q1(o,F){return F}function ZL(o,F,m){var O=m[3],H=m[2],$=m[1],r0=Un(u(o[1][1+b],o),$),M0=Un(u(o[1][1+en],o),H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function wb(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+en],o,$),M0=mu(u(o[1][1+G0],o),H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function QL(o,F){var m=F[2],O=m[3],H=m[2],$=m[1],r0=ze(u(o[1][1+en],o),$),M0=a(o[1][1+Tr],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?F:[0,F[1],[0,r0,M0,z0]]}function Eb(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+en],o,$),M0=Un(u(o[1][1+Ar],o),H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0,m[4]]}function rR(o,F,m){var O=m[1],H=a(o[1][1+s0],o,O);return O===H?m:[0,H]}function eR(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+en],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function h2(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+en],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function nR(o,F){return[0,a(o[1][1+Or],o,F),0]}function tR(o,F){var m=u(o[1][1+Hr],o),O=be(function(H,$){var r0=H[1],M0=u(m,$);if(M0){if(M0[2])return[0,jc(M0,r0),1];var z0=M0[1],Nr=H[2],Gr=Nr||($!==z0?1:0);return[0,[0,z0,r0],Gr]}return[0,r0,1]},T6r,F);return O[2]?de(O[1]):F}function s_(o,F){return a(o[1][1+Tr],o,F)}function uR(o,F,m){var O=m[2],H=m[1],$=Un(u(o[1][1+en],o),H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function k2(o,F,m){var O=m[2],H=m[1],$=ze(u(o[1][1+en],o),H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0,m[3]]}function iR(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+Re],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function w2(o,F){return a(o[1][1+en],o,F)}function fR(o,F){var m=F[2],O=m[2],H=m[1];if(H)var $=function(Nr){return[0,Nr]},r0=H[1],M0=ee(u(o[1][1+en],o),r0,H,$);else var M0=H;var z0=a(o[1][1+s0],o,O);return H===M0&&O===z0?F:[0,F[1],[0,M0,z0]]}function rv(o,F){return a(o[1][1+en],o,F)}function xR(o,F,m){return ir(o[1][1+er],o,F,m)}function Sb(o,F,m){return ir(o[1][1+er],o,F,m)}function aR(o,F,m){var O=m[2],H=O[2],$=O[1],r0=ir(o[1][1+Z],o,F,$),M0=a(o[1][1+s0],o,H);return r0===$&&H===M0?m:[0,m[1],[0,r0,M0]]}function gb(o,F,m){return ir(o[1][1+er],o,F,m)}function oR(o,F,m){var O=m[2],H=O[2],$=O[1],r0=ir(o[1][1+b0],o,F,$),M0=ze(u(o[1][1+en],o),H);return $===r0&&H===M0?m:[0,m[1],[0,r0,M0]]}function Fb(o,F,m){switch(m[0]){case 0:var O=function(M0){return[0,M0]},H=m[1];return ee(a(o[1][1+O0],o,F),H,m,O);case 1:var $=function(M0){return[1,M0]},r0=m[1];return ee(a(o[1][1+p0],o,F),r0,m,$);default:return m}}function cR(o,F,m){return ir(o[1][1+er],o,F,m)}function Gn(o,F,m){return ir(o[1][1+er],o,F,m)}function v_(o,F,m){var O=m[2],H=O[2],$=O[1],r0=ir(o[1][1+fe],o,F,$),M0=a(o[1][1+s0],o,H);return r0===$&&H===M0?m:[0,m[1],[0,r0,M0]]}function sR(o,F,m){return a(o[1][1+Tn],o,m)}function vR(o,F,m){return ir(o[1][1+R0],o,F,m)}function ev(o,F,m){var O=m[1];function H(r0){return[0,O,r0]}var $=m[2];return te(a(o[1][1+rr],o,F),O,$,m,H)}function Tb(o,F,m){switch(m[0]){case 0:var O=function(Nr){return[0,Nr]},H=m[1];return ee(a(o[1][1+L],o,F),H,m,O);case 1:var $=function(Nr){return[1,Nr]},r0=m[1];return ee(a(o[1][1+i0],o,F),r0,m,$);default:var M0=function(Nr){return[2,Nr]},z0=m[1];return ee(a(o[1][1+l0],o,F),z0,m,M0)}}function l_(o,F,m){var O=m[2],H=O[4],$=O[3],r0=O[2],M0=O[1],z0=ir(o[1][1+Q],o,F,M0),Nr=ir(o[1][1+P],o,F,r0),Gr=ze(u(o[1][1+en],o),$);if(H){var Fe=0;if(z0[0]===1){var ye=Nr[2];if(ye[0]===2)var pn=qn(z0[1][2][1],ye[1][1][2][1]);else Fe=1}else Fe=1;if(Fe)var Dn=M0===z0?1:0,pn=Dn&&(r0===Nr?1:0)}else var pn=H;return z0===M0&&Nr===r0&&Gr===$&&H===pn?m:[0,m[1],[0,z0,Nr,Gr,pn]]}function Ob(o,F,m){if(m[0]===0){var O=function(M0){return[0,M0]},H=m[1];return ee(a(o[1][1+S0],o,F),H,m,O)}function $(M0){return[1,M0]}var r0=m[1];return ee(a(o[1][1+v0],o,F),r0,m,$)}function lR(o,F,m,O){return ir(o[1][1+J0],o,m,O)}function b_(o,F,m){return a(o[1][1+lt],o,m)}function bR(o,F,m){var O=m[2];switch(O[0]){case 0:var H=O[1],$=H[3],r0=H[2],M0=H[1],z0=Un(a(o[1][1+T0],o,F),M0),Nr=a(o[1][1+x0],o,r0),Gr=a(o[1][1+s0],o,$),Fe=0;if(z0===M0&&Nr===r0&&Gr===$){var ye=O;Fe=1}if(!Fe)var ye=[0,[0,z0,Nr,Gr]];var Ji=ye;break;case 1:var Dn=O[1],pn=Dn[3],xt=Dn[2],pt=Dn[1],kt=Un(a(o[1][1+q0],o,F),pt),Kn=a(o[1][1+x0],o,xt),$t=a(o[1][1+s0],o,pn),W7=0;if(pn===$t&&kt===pt&&Kn===xt){var J7=O;W7=1}if(!W7)var J7=[1,[0,kt,Kn,$t]];var Ji=J7;break;case 2:var w7=O[1],$7=w7[2],Z7=w7[1],Q7=ir(o[1][1+R0],o,F,Z7),ri=a(o[1][1+x0],o,$7),ei=0;if(Z7===Q7&&$7===ri){var Wi=O;ei=1}if(!ei)var Wi=[2,[0,Q7,ri,w7[3]]];var Ji=Wi;break;default:var uv=function(fv){return[3,fv]},iv=O[1],Ji=ee(u(o[1][1+B],o),iv,O,uv)}return O===Ji?m:[0,m[1],Ji]}function p_(o,F){return ir(o[1][1+er],o,0,F)}function Ib(o,F,m){var O=F&&F[1];return ir(o[1][1+er],o,[0,O],m)}function m_(o,F){return a(o[1][1+m2],o,F)}function pR(o,F){return a(o[1][1+m2],o,F)}function __(o,F){return ir(o[1][1+r1],o,F6r,F)}function Ab(o,F,m){return ir(o[1][1+r1],o,[0,F],m)}function mR(o,F){return ir(o[1][1+r1],o,g6r,F)}function _R(o,F,m){var O=m[5],H=m[4],$=m[3],r0=m[2],M0=m[1],z0=a(o[1][1+Kc],o,M0),Nr=ze(u(o[1][1+V],o),r0),Gr=ze(u(o[1][1+t0],o),$),Fe=ze(u(o[1][1+t0],o),H),ye=a(o[1][1+s0],o,O);return M0===z0&&$===Gr&&r0===Nr&&$===Gr&&H===Fe&&O===ye?m:[0,z0,Nr,Gr,Fe,ye]}function yR(o,F){return a(o[1][1+Tn],o,F)}function Nb(o,F){return a(o[1][1+lt],o,F)}function dR(o,F){var m=F[1];function O($){return[0,m,$]}var H=F[2];return te(u(o[1][1+J0],o),m,H,F,O)}function hR(o,F){switch(F[0]){case 0:var m=function(Gr){return[0,Gr]},O=F[1];return ee(u(o[1][1+pe],o),O,F,m);case 1:var H=function(Gr){return[1,Gr]},$=F[1];return ee(u(o[1][1+oe],o),$,F,H);case 2:var r0=function(Gr){return[2,Gr]},M0=F[1];return ee(u(o[1][1+or],o),M0,F,r0);default:var z0=function(Gr){return[3,Gr]},Nr=F[1];return ee(u(o[1][1+me],o),Nr,F,z0)}}function y_(o,F){var m=F[2],O=F[1];switch(m[0]){case 0:var H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+ae],o,r0),z0=a(o[1][1+en],o,$);if(H){var Nr=0;if(M0[0]===1){var Gr=z0[2];if(Gr[0]===10)var ye=qn(M0[1][2][1],Gr[1][2][1]);else Nr=1}else Nr=1;if(Nr)var Fe=r0===M0?1:0,ye=Fe&&($===z0?1:0)}else var ye=H;return r0===M0&&$===z0&&H===ye?F:[0,O,[0,M0,z0,ye]];case 1:var Dn=m[2],pn=m[1],xt=a(o[1][1+ae],o,pn),pt=mu(u(o[1][1+_e],o),Dn);return pn===xt&&Dn===pt?F:[0,O,[1,xt,pt]];case 2:var kt=m[3],Kn=m[2],$t=m[1],W7=a(o[1][1+ae],o,$t),J7=mu(u(o[1][1+_e],o),Kn),w7=a(o[1][1+s0],o,kt);return $t===W7&&Kn===J7&&kt===w7?F:[0,O,[2,W7,J7,w7]];default:var $7=m[3],Z7=m[2],Q7=m[1],ri=a(o[1][1+ae],o,Q7),ei=mu(u(o[1][1+_e],o),Z7),Wi=a(o[1][1+s0],o,$7);return Q7===ri&&Z7===ei&&$7===Wi?F:[0,O,[3,ri,ei,Wi]]}}function kR(o,F,m){var O=m[2],H=m[1],$=Un(function(M0){if(M0[0]===0){var z0=M0[1],Nr=a(o[1][1+Qr],o,z0);return z0===Nr?M0:[0,Nr]}var Gr=M0[1],Fe=a(o[1][1+xr],o,Gr);return Gr===Fe?M0:[1,Fe]},H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function Cb(o,F,m){var O=m[4],H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+en],o,r0),z0=ze(u(o[1][1+b2],o),$),Nr=ze(u(o[1][1+Zs],o),H),Gr=a(o[1][1+s0],o,O);return r0===M0&&$===z0&&H===Nr&&O===Gr?m:[0,M0,z0,Nr,Gr]}function wR(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+lt],o,$),M0=a(o[1][1+lt],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function ER(o,F){return a(o[1][1+en],o,F)}function d_(o,F){return a(o[1][1+or],o,F)}function SR(o,F){return a(o[1][1+lt],o,F)}function E2(o,F){switch(F[0]){case 0:var m=function(z0){return[0,z0]},O=F[1];return ee(u(o[1][1+y0],o),O,F,m);case 1:var H=function(z0){return[1,z0]},$=F[1];return ee(u(o[1][1+D],o),$,F,H);default:var r0=function(z0){return[2,z0]},M0=F[1];return ee(u(o[1][1+D0],o),M0,F,r0)}}function gR(o,F,m){var O=m[1],H=ir(o[1][1+u0],o,F,O);return O===H?m:[0,H,m[2],m[3]]}function FR(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+en],o,$),M0=a(o[1][1+I0],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function TR(o,F,m){var O=m[4],H=m[3],$=m[2],r0=a(o[1][1+en],o,$),M0=a(o[1][1+en],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,m[1],r0,M0,z0]}function Pb(o,F,m){var O=m[3],H=a(o[1][1+s0],o,O);return O===H?m:[0,m[1],m[2],H]}function OR(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+Q0],o,$),M0=a(o[1][1+Or],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function IR(o,F){var m=F[2],O=m[2],H=a(o[1][1+s0],o,O);return O===H?F:[0,F[1],[0,m[1],H]]}function Db(o,F){return a(o[1][1+ve],o,F)}function AR(o,F){if(F[0]===0){var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+K0],o),O,F,m)}function H(r0){return[1,r0]}var $=F[1];return ee(u(o[1][1+Ur],o),$,F,H)}function NR(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+Pr],o,H),r0=a(o[1][1+d0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function hu(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+d0],o,H),r0=a(o[1][1+d0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function ku(o,F){return a(o[1][1+Ur],o,F)}function Oi(o,F){return a(o[1][1+sr],o,F)}function k7(o,F){return a(o[1][1+d0],o,F)}function Ki(o,F){switch(F[0]){case 0:var m=function(z0){return[0,z0]},O=F[1];return ee(u(o[1][1+ve],o),O,F,m);case 1:var H=function(z0){return[1,z0]},$=F[1];return ee(u(o[1][1+xe],o),$,F,H);default:var r0=function(z0){return[2,z0]},M0=F[1];return ee(u(o[1][1+je],o),M0,F,r0)}}function nv(o,F){var m=F[2],O=F[1],H=a(o[1][1+en],o,O),$=a(o[1][1+s0],o,m);return O===H&&m===$?F:[0,H,$]}function Lb(o,F,m){var O=m[2],H=m[1],$=a(o[1][1+s0],o,O);if(H){var r0=H[1],M0=a(o[1][1+en],o,r0);return r0===M0&&O===$?m:[0,[0,M0],$]}return O===$?m:[0,0,$]}function tv(o,F){var m=F[2],O=F[1];switch(m[0]){case 0:var H=function(ye){return[0,O,[0,ye]]},$=m[1];return te(u(o[1][1+Me],o),O,$,F,H);case 1:var r0=function(ye){return[0,O,[1,ye]]},M0=m[1];return te(u(o[1][1+Kr],o),O,M0,F,r0);case 2:var z0=function(ye){return[0,O,[2,ye]]},Nr=m[1];return te(u(o[1][1+re],o),O,Nr,F,z0);case 3:var Gr=function(ye){return[0,O,[3,ye]]},Fe=m[1];return ee(u(o[1][1+F0],o),Fe,F,Gr);default:return F}}function Rb(o,F){var m=F[2],O=Un(u(o[1][1+Ke],o),m);return m===O?F:[0,F[1],O]}function jb(o,F,m){return ir(o[1][1+J0],o,F,m)}function CR(o,F,m){return ir(o[1][1+re],o,F,m)}function Mne(o,F){if(F[0]===0){var m=F[1],O=function(z0){return[0,m,z0]},H=F[2];return te(u(o[1][1+Ae],o),m,H,F,O)}var $=F[1];function r0(z0){return[1,$,z0]}var M0=F[2];return te(u(o[1][1+xn],o),$,M0,F,r0)}function Bne(o,F){return a(o[1][1+sr],o,F)}function qne(o,F){return a(o[1][1+d0],o,F)}function Une(o,F){if(F[0]===0){var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+on],o),O,F,m)}function H(r0){return[1,r0]}var $=F[1];return ee(u(o[1][1+yn],o),$,F,H)}function Hne(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+Ce],o,H),r0=ze(u(o[1][1+Qe],o),O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function Xne(o,F,m){var O=m[2],H=m[1],$=a(o[1][1+en],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function Yne(o,F){if(F[0]===0){var m=function(z0){return[0,z0]},O=F[1];return ee(u(o[1][1+We],o),O,F,m)}var H=F[1],$=H[1];function r0(z0){return[1,[0,$,z0]]}var M0=H[2];return te(u(o[1][1+gr],o),$,M0,F,r0)}function Vne(o,F){var m=F[2][1],O=a(o[1][1+Ie],o,m);return m===O?F:[0,F[1],[0,O]]}function zne(o,F){var m=F[2],O=m[3],H=m[1],$=a(o[1][1+Ie],o,H),r0=Un(u(o[1][1+Cr],o),O);return H===$&&O===r0?F:[0,F[1],[0,$,m[2],r0]]}function Kne(o,F,m){var O=m[4],H=m[3],$=a(o[1][1+fn],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,m[1],m[2],$,r0]}function Wne(o,F,m){var O=m[4],H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+mr],o,r0),z0=ze(u(o[1][1+Be],o),$),Nr=a(o[1][1+fn],o,H),Gr=a(o[1][1+s0],o,O);return r0===M0&&$===z0&&H===Nr&&O===Gr?m:[0,M0,z0,Nr,Gr]}function Jne(o,F,m,O){var H=2<=F?a(o[1][1+R0],o,S6r):u(o[1][1+Kc],o);return u(H,O)}function $ne(o,F,m){var O=2<=F?a(o[1][1+R0],o,E6r):u(o[1][1+Kc],o);return u(O,m)}function Zne(o,F,m){var O=m[3],H=m[2],$=m[1],r0=0;if(F){var M0=0;if($)switch($[1]){case 2:break;case 0:r0=1,M0=2;break;default:M0=1}var z0=0;switch(M0){case 2:z0=1;break;case 0:if(2<=F){var Nr=0,Gr=0;z0=1}break}if(!z0)var Nr=1,Gr=0}else r0=1;if(r0)var Nr=1,Gr=1;var Fe=a(Gr?o[1][1+m0]:o[1][1+lt],o,O);if(H)var ye=Nr?u(o[1][1+Kc],o):a(o[1][1+R0],o,w6r),Dn=function(xt){return[0,xt]},pn=ee(ye,H[1],H,Dn);else var pn=H;return H===pn&&O===Fe?m:[0,$,pn,Fe]}function Qne(o,F,m){if(m[0]===0){var O=m[1],H=Un(a(o[1][1+gt],o,F),O);return O===H?m:[0,H]}var $=m[1],r0=$[1];function M0(Nr){return[1,[0,r0,Nr]]}var z0=$[2];return te(a(o[1][1+At],o,F),r0,z0,m,M0)}function rte(o,F,m){var O=m[5],H=m[4],$=m[3],r0=m[1],M0=ze(a(o[1][1+vt],o,r0),H),z0=ze(a(o[1][1+Jt],o,r0),$),Nr=a(o[1][1+s0],o,O);return H===M0&&$===z0&&O===Nr?m:[0,r0,m[2],z0,M0,Nr]}function ete(o,F,m){var O=m[4],H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+_r],o,r0),z0=ir(o[1][1+du],o,H!==0?1:0,$),Nr=u(o[1][1+Ku],o),Gr=ze(function(ye){return mu(Nr,ye)},H),Fe=a(o[1][1+s0],o,O);return r0===M0&&$===z0&&H===Gr&&O===Fe?m:[0,M0,z0,Gr,Fe]}function nte(o,F,m){var O=m[2],H=m[1],$=a(o[1][1+Or],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function tte(o,F,m){return a(o[1][1+Or],o,m)}function ute(o,F,m){var O=m[2],H=m[1],$=a(o[1][1+en],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function ite(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+en],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function fte(o,F){var m=F[2],O=m[2],H=a(o[1][1+s0],o,O);return O===H?F:[0,F[1],[0,m[1],H]]}function xte(o,F,m){return ir(o[1][1+Hn],o,F,m)}function ate(o,F,m){var O=m[5],H=m[4],$=m[3],r0=m[2],M0=m[1],z0=a(o[1][1+Kc],o,M0),Nr=ze(u(o[1][1+V],o),r0),Gr=u(o[1][1+xu],o),Fe=Un(function(pn){return mu(Gr,pn)},$),ye=mu(u(o[1][1+qr],o),H),Dn=a(o[1][1+s0],o,O);return z0===M0&&Nr===r0&&Fe===$&&ye===H&&Dn===O?m:[0,z0,Nr,Fe,ye,Dn]}function ote(o,F){return a(o[1][1+k0],o,F)}function cte(o,F){return a(o[1][1+k0],o,F)}function ste(o,F){return a(o[1][1+lt],o,F)}function vte(o,F){var m=F[2],O=m[2],H=a(o[1][1+s0],o,O);return O===H?F:[0,F[1],[0,m[1],H]]}function lte(o,F,m){return m}function bte(o,F){return ir(o[1][1+R0],o,k6r,F)}function pte(o,F){var m=F[1];function O($){return[0,m,$]}var H=F[2];return te(u(o[1][1+zi],o),m,H,F,O)}function mte(o,F){if(F[0]===0){var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+ft],o),O,F,m)}function H(r0){return[1,r0]}var $=F[1];return ee(u(o[1][1+en],o),$,F,H)}function _te(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+Re],o,H),r0=ze(u(o[1][1+en],o),O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function yte(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+l],o,H),r0=a(o[1][1+s0],o,O);return $===H&&r0===O?F:[0,F[1],[0,$,r0]]}function dte(o,F){var m=F[2],O=m[4],H=m[3],$=m[2],r0=m[1],M0=Un(u(o[1][1+He],o),$),z0=ze(u(o[1][1+bt],o),H),Nr=ze(u(o[1][1+K7],o),r0),Gr=a(o[1][1+s0],o,O);return $===M0&&H===z0&&O===Gr&&r0===Nr?F:[0,F[1],[0,Nr,M0,z0,Gr]]}function hte(o,F,m){var O=m[9],H=m[8],$=m[7],r0=m[6],M0=m[3],z0=m[2],Nr=m[1],Gr=ze(u(o[1][1+he],o),Nr),Fe=a(o[1][1+U0],o,z0),ye=a(o[1][1+x0],o,$),Dn=a(o[1][1+it],o,M0),pn=ze(u(o[1][1+Ir],o),r0),xt=ze(u(o[1][1+V],o),H),pt=a(o[1][1+s0],o,O);return Nr===Gr&&z0===Fe&&M0===Dn&&r0===pn&&$===ye&&H===xt&&O===pt?m:[0,Gr,Fe,Dn,m[4],m[5],pn,ye,xt,pt,m[10]]}function kte(o,F,m){return ir(o[1][1+Rn],o,F,m)}function wte(o,F,m){return ir(o[1][1+_e],o,F,m)}function Ete(o,F,m){return ir(o[1][1+Rn],o,F,m)}function Ste(o,F){if(F[0]===0)return F;var m=F[1],O=a(o[1][1+l],o,m);return O===m?F:[1,O]}function gte(o,F){var m=F[1];function O($){return[0,m,$]}var H=F[2];return ee(u(o[1][1+t0],o),H,F,O)}function Fte(o,F){var m=F[2],O=F[1];switch(m[0]){case 0:var H=function($e){return[0,O,[0,$e]]},$=m[1];return ee(u(o[1][1+s0],o),$,F,H);case 1:var r0=function($e){return[0,O,[1,$e]]},M0=m[1];return ee(u(o[1][1+s0],o),M0,F,r0);case 2:var z0=function($e){return[0,O,[2,$e]]},Nr=m[1];return ee(u(o[1][1+s0],o),Nr,F,z0);case 3:var Gr=function($e){return[0,O,[3,$e]]},Fe=m[1];return ee(u(o[1][1+s0],o),Fe,F,Gr);case 4:var ye=function($e){return[0,O,[4,$e]]},Dn=m[1];return ee(u(o[1][1+s0],o),Dn,F,ye);case 5:var pn=function($e){return[0,O,[5,$e]]},xt=m[1];return ee(u(o[1][1+s0],o),xt,F,pn);case 6:var pt=function($e){return[0,O,[6,$e]]},kt=m[1];return ee(u(o[1][1+s0],o),kt,F,pt);case 7:var Kn=function($e){return[0,O,[7,$e]]},$t=m[1];return ee(u(o[1][1+s0],o),$t,F,Kn);case 8:var W7=function($e){return[0,O,[8,$e]]},J7=m[1];return ee(u(o[1][1+s0],o),J7,F,W7);case 9:var w7=function($e){return[0,O,[9,$e]]},$7=m[1];return ee(u(o[1][1+s0],o),$7,F,w7);case 10:var Z7=function($e){return[0,O,[10,$e]]},Q7=m[1];return ee(u(o[1][1+s0],o),Q7,F,Z7);case 11:var ri=function($e){return[0,O,[11,$e]]},ei=m[1];return ee(u(o[1][1+k],o),ei,F,ri);case 12:var Wi=function($e){return[0,O,[12,$e]]},uv=m[1];return te(u(o[1][1+a7],o),O,uv,F,Wi);case 13:var iv=function($e){return[0,O,[13,$e]]},Ji=m[1];return te(u(o[1][1+qr],o),O,Ji,F,iv);case 14:var fv=function($e){return[0,O,[14,$e]]},Gb=m[1];return te(u(o[1][1+bn],o),O,Gb,F,fv);case 15:var Mb=function($e){return[0,O,[15,$e]]},Bb=m[1];return ee(u(o[1][1+e1],o),Bb,F,Mb);case 16:var qb=function($e){return[0,O,[16,$e]]},Ub=m[1];return te(u(o[1][1+xu],o),O,Ub,F,qb);case 17:var Hb=function($e){return[0,O,[17,$e]]},Xb=m[1];return te(u(o[1][1+Sn],o),O,Xb,F,Hb);case 18:var Yb=function($e){return[0,O,[18,$e]]},Vb=m[1];return te(u(o[1][1+vr],o),O,Vb,F,Yb);case 19:var zb=function($e){return[0,O,[19,$e]]},Kb=m[1];return te(u(o[1][1+h],o),O,Kb,F,zb);case 20:var Wb=function($e){return[0,O,[20,$e]]},Jb=m[1];return te(u(o[1][1+rn],o),O,Jb,F,Wb);case 21:var $b=function($e){return[0,O,[21,$e]]},Zb=m[1];return ee(u(o[1][1+G],o),Zb,F,$b);case 22:var Qb=function($e){return[0,O,[22,$e]]},r4=m[1];return ee(u(o[1][1+a0],o),r4,F,Qb);case 23:var e4=function($e){return[0,O,[23,$e]]},n4=m[1];return te(u(o[1][1+Lr],o),O,n4,F,e4);case 24:var t4=function($e){return[0,O,[24,$e]]},u4=m[1];return te(u(o[1][1+_],o),O,u4,F,t4);case 25:var i4=function($e){return[0,O,[25,$e]]},f4=m[1];return te(u(o[1][1+p2],o),O,f4,F,i4);default:var x4=function($e){return[0,O,[26,$e]]},a4=m[1];return te(u(o[1][1+x_],o),O,a4,F,x4)}}function Tte(o,F,m){var O=m[2],H=m[1],$=H[3],r0=H[2],M0=H[1],z0=a(o[1][1+t0],o,M0),Nr=a(o[1][1+t0],o,r0),Gr=Un(u(o[1][1+t0],o),$),Fe=a(o[1][1+s0],o,O);return z0===M0&&Nr===r0&&Gr===$&&Fe===O?m:[0,[0,z0,Nr,Gr],Fe]}function Ote(o,F,m){var O=m[2],H=m[1],$=H[3],r0=H[2],M0=H[1],z0=a(o[1][1+t0],o,M0),Nr=a(o[1][1+t0],o,r0),Gr=Un(u(o[1][1+t0],o),$),Fe=a(o[1][1+s0],o,O);return z0===M0&&Nr===r0&&Gr===$&&Fe===O?m:[0,[0,z0,Nr,Gr],Fe]}function Ite(o,F){var m=F[2],O=F[1],H=a(o[1][1+t0],o,O),$=a(o[1][1+s0],o,m);return O===H&&m===$?F:[0,H,$]}function Ate(o,F){var m=F[2],O=F[1],H=Un(u(o[1][1+t0],o),O),$=a(o[1][1+s0],o,m);return O===H&&m===$?F:[0,H,$]}function Nte(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+K],o,H),r0=a(o[1][1+S],o,O);return $===H&&r0===O?F:[0,F[1],[0,$,r0]]}function Cte(o,F){return a(o[1][1+lt],o,F)}function Pte(o,F){return a(o[1][1+lt],o,F)}function Dte(o,F){if(F[0]===0){var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+M],o),O,F,m)}function H(r0){return[1,r0]}var $=F[1];return ee(u(o[1][1+A],o),$,F,H)}function Lte(o,F){var m=F[2],O=F[1],H=a(o[1][1+K],o,O),$=a(o[1][1+s0],o,m);return O===H&&m===$?F:[0,H,$]}function Rte(o,F){var m=F[2],O=F[1],H=a(o[1][1+t0],o,O),$=a(o[1][1+s0],o,m);return O===H&&m===$?F:[0,H,$]}function jte(o,F,m){var O=m[2],H=a(o[1][1+s0],o,O);return O===H?m:[0,m[1],H]}function Gte(o,F,m){var O=m[3],H=a(o[1][1+s0],o,O);return O===H?m:[0,m[1],m[2],H]}function Mte(o,F,m){var O=m[3],H=a(o[1][1+s0],o,O);return O===H?m:[0,m[1],m[2],H]}function Bte(o,F,m){var O=m[3],H=a(o[1][1+s0],o,O);return O===H?m:[0,m[1],m[2],H]}function qte(o,F,m){var O=m[1],H=ir(o[1][1+Sn],o,F,O);return H===O?m:[0,H,m[2]]}function Ute(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+t0],o,$),M0=a(o[1][1+t0],o,H),z0=a(o[1][1+s0],o,O);return r0===$&&M0===H&&z0===O?m:[0,r0,M0,z0]}function Hte(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+z7],o,$),M0=ze(u(o[1][1+e0],o),H),z0=a(o[1][1+s0],o,O);return r0===$&&M0===H&&z0===O?m:[0,r0,M0,z0]}function Xte(o,F){var m=F[2],O=m[4],H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+x0],o,$),z0=a(o[1][1+c],o,H),Nr=ze(u(o[1][1+t0],o),O),Gr=a(o[1][1+Kc],o,r0);return Gr===r0&&M0===$&&z0===H&&Nr===O?F:[0,F[1],[0,Gr,M0,z0,Nr]]}function Yte(o,F){var m=F[2],O=m[2],H=m[1],$=Un(u(o[1][1+f0],o),H),r0=a(o[1][1+s0],o,O);return $===H&&r0===O?F:[0,F[1],[0,$,r0]]}function Vte(o,F){var m=F[2],O=m[2],H=m[1],$=Un(u(o[1][1+t0],o),H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function zte(o,F){return ze(u(o[1][1+s],o),F)}function Kte(o,F){var m=F[2],O=m[2],H=a(o[1][1+s0],o,O);return O===H?F:[0,F[1],[0,m[1],H]]}function Wte(o,F){return a(o[1][1+lt],o,F)}function Jte(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+z7],o,H),r0=a(o[1][1+Y],o,O);return $===H&&r0===O?F:[0,F[1],[0,$,r0]]}function $te(o,F){if(F[0]===0){var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+m0],o),O,F,m)}function H(r0){return[1,r0]}var $=F[1];return ee(u(o[1][1+Mu],o),$,F,H)}function Zte(o,F,m){var O=m[3],H=m[2],$=m[1],r0=u(o[1][1+xu],o),M0=Un(function(Gr){return mu(r0,Gr)},H),z0=mu(u(o[1][1+qr],o),$),Nr=a(o[1][1+s0],o,O);return M0===H&&z0===$&&O===Nr?m:[0,z0,M0,Nr]}function Qte(o,F,m){var O=m[4],H=m[3],$=Un(function(M0){switch(M0[0]){case 0:var z0=function(Kn){return[0,Kn]},Nr=M0[1];return ee(u(o[1][1+ne],o),Nr,M0,z0);case 1:var Gr=function(Kn){return[1,Kn]},Fe=M0[1];return ee(u(o[1][1+jr],o),Fe,M0,Gr);case 2:var ye=function(Kn){return[2,Kn]},Dn=M0[1];return ee(u(o[1][1+ge],o),Dn,M0,ye);case 3:var pn=function(Kn){return[3,Kn]},xt=M0[1];return ee(u(o[1][1+H0],o),xt,M0,pn);default:var pt=function(Kn){return[4,Kn]},kt=M0[1];return ee(u(o[1][1+ce],o),kt,M0,pt)}},H),r0=a(o[1][1+s0],o,O);return $===H&&O===r0?m:[0,m[1],m[2],$,r0]}function rue(o,F){var m=F[2],O=m[3],H=m[1],$=H[2],r0=H[1],M0=ir(o[1][1+a7],o,r0,$),z0=a(o[1][1+s0],o,O);return $===M0&&O===z0?F:[0,F[1],[0,[0,r0,M0],m[2],z0]]}function eue(o,F){var m=F[2],O=m[6],H=m[2],$=m[1],r0=a(o[1][1+lt],o,$),M0=a(o[1][1+t0],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?F:[0,F[1],[0,r0,M0,m[3],m[4],m[5],z0]]}function nue(o,F){var m=F[2],O=m[6],H=m[5],$=m[3],r0=m[2],M0=a(o[1][1+t0],o,r0),z0=a(o[1][1+t0],o,$),Nr=a(o[1][1+c],o,H),Gr=a(o[1][1+s0],o,O);return M0===r0&&z0===$&&Nr===H&&Gr===O?F:[0,F[1],[0,m[1],M0,z0,m[4],Nr,Gr]]}function tue(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+t0],o,H),r0=a(o[1][1+s0],o,O);return $===H&&O===r0?F:[0,F[1],[0,$,r0]]}function uue(o,F){var m=F[2],O=m[8],H=m[7],$=m[2],r0=m[1],M0=a(o[1][1+ae],o,r0),z0=a(o[1][1+$r],o,$),Nr=a(o[1][1+c],o,H),Gr=a(o[1][1+s0],o,O);return M0===r0&&z0===$&&Nr===H&&Gr===O?F:[0,F[1],[0,M0,z0,m[3],m[4],m[5],m[6],Nr,Gr]]}function iue(o,F){var m=F[1];function O($){return[0,m,$]}var H=F[2];return te(u(o[1][1+a7],o),m,H,F,O)}function fue(o,F){var m=F[1];function O($){return[0,m,$]}var H=F[2];return te(u(o[1][1+a7],o),m,H,F,O)}function xue(o,F){switch(F[0]){case 0:var m=function(z0){return[0,z0]},O=F[1];return ee(u(o[1][1+t0],o),O,F,m);case 1:var H=function(z0){return[1,z0]},$=F[1];return ee(u(o[1][1+Br],o),$,F,H);default:var r0=function(z0){return[2,z0]},M0=F[1];return ee(u(o[1][1+Mr],o),M0,F,r0)}}function aue(o,F){return a(o[1][1+lt],o,F)}function oue(o,F,m){var O=m[4],H=m[3],$=m[2],r0=$[2],M0=r0[4],z0=r0[3],Nr=r0[2],Gr=r0[1],Fe=m[1],ye=ze(u(o[1][1+Yc],o),Gr),Dn=Un(u(o[1][1+L0],o),Nr),pn=ze(u(o[1][1+qt],o),z0),xt=a(o[1][1+t0],o,H),pt=ze(u(o[1][1+V],o),Fe),kt=a(o[1][1+s0],o,O),Kn=a(o[1][1+s0],o,M0);return Dn===Nr&&pn===z0&&xt===H&&pt===Fe&&kt===O&&Kn===M0&&ye===Gr?m:[0,pt,[0,$[1],[0,ye,Dn,pn,Kn]],xt,kt]}function cue(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+l],o,H),r0=a(o[1][1+s0],o,O);return $===H&&r0===O?F:[0,F[1],[0,$,r0]]}function sue(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+L0],o,H),r0=a(o[1][1+s0],o,O);return $===H&&r0===O?F:[0,F[1],[0,$,r0]]}function vue(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+t0],o,O),r0=ze(u(o[1][1+lt],o),H);return $===O&&r0===H?F:[0,F[1],[0,r0,$,m[3]]]}function lue(o,F){var m=F[1];function O($){return[0,m,$]}var H=F[2];return te(u(o[1][1+T],o),m,H,F,O)}function bue(o,F){if(F[0]===0){var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+Fi],o),O,F,m)}function H(r0){return[1,r0]}var $=F[1];return ee(u(o[1][1+en],o),$,F,H)}function pue(o,F,m){var O=m[5],H=m[4],$=m[3],r0=m[2],M0=m[1],z0=ze(u(o[1][1+nt],o),M0),Nr=ze(u(o[1][1+_r],o),r0),Gr=ze(u(o[1][1+en],o),$),Fe=a(o[1][1+Or],o,H),ye=a(o[1][1+s0],o,O);return M0===z0&&r0===Nr&&$===Gr&&H===Fe&&O===ye?m:[0,z0,Nr,Gr,Fe,ye]}function mue(o,F){var m=F[1];function O($){return[0,m,$]}var H=F[2];return te(u(o[1][1+T],o),m,H,F,O)}function _ue(o,F){if(F[0]===0){var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+tt],o),O,F,m)}function H(r0){return[1,r0]}var $=F[1];return ee(u(o[1][1+Tt],o),$,F,H)}function yue(o,F,m){var O=m[5],H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+tn],o,r0),z0=a(o[1][1+en],o,$),Nr=a(o[1][1+Or],o,H),Gr=a(o[1][1+s0],o,O);return r0===M0&&$===z0&&H===Nr&&O===Gr?m:[0,M0,z0,Nr,m[4],Gr]}function due(o,F){var m=F[1];function O($){return[0,m,$]}var H=F[2];return te(u(o[1][1+T],o),m,H,F,O)}function hue(o,F){if(F[0]===0){var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+Vs],o),O,F,m)}function H(r0){return[1,r0]}var $=F[1];return ee(u(o[1][1+Vi],o),$,F,H)}function kue(o,F,m){var O=m[5],H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+hs],o,r0),z0=a(o[1][1+en],o,$),Nr=a(o[1][1+Or],o,H),Gr=a(o[1][1+s0],o,O);return r0===M0&&$===z0&&H===Nr&&O===Gr?m:[0,M0,z0,Nr,m[4],Gr]}function wue(o,F){if(F[0]===0){var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+en],o),O,F,m)}function H(r0){return[1,r0]}var $=F[1];return ee(u(o[1][1+Rr],o),$,F,H)}function Eue(o,F,m){var O=m[3],H=m[1],$=a(o[1][1+en],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,m[2],r0]}function Sue(o,F){if(F[0]===0){var m=F[1],O=Un(u(o[1][1+Ws],o),m);return m===O?F:[0,O]}var H=F[1],$=a(o[1][1+U9],o,H);return H===$?F:[1,$]}function gue(o,F){var m=F[2],O=ze(u(o[1][1+lt],o),m);return m===O?F:[0,F[1],O]}function Fue(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+lt],o,H),r0=ze(u(o[1][1+lt],o),O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function Tue(o,F,m){var O=m[5],H=m[2],$=m[1],r0=ze(u(o[1][1+ci],o),H),M0=ze(u(o[1][1+Or],o),$),z0=a(o[1][1+s0],o,O);return H===r0&&$===M0&&O===z0?m:[0,M0,r0,m[3],m[4],z0]}function Oue(o,F){if(F[0]===0){var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+Or],o),O,F,m)}function H(r0){return[1,r0]}var $=F[1];return ee(u(o[1][1+en],o),$,F,H)}function Iue(o,F,m){var O=m[3],H=m[2],$=a(o[1][1+B9],o,H),r0=a(o[1][1+s0],o,O);return $===H&&r0===O?m:[0,m[1],$,r0]}function Aue(o,F){return a(o[1][1+lt],o,F)}function Nue(o,F){var m=F[2],O=m[1],H=a(o[1][1+X1],o,O);return O===H?F:[0,F[1],[0,H,m[2]]]}function Cue(o,F){var m=F[2],O=m[1],H=a(o[1][1+X1],o,O);return O===H?F:[0,F[1],[0,H,m[2]]]}function Pue(o,F){var m=F[2],O=m[1],H=a(o[1][1+X1],o,O);return O===H?F:[0,F[1],[0,H,m[2]]]}function Due(o,F){var m=F[2][1],O=a(o[1][1+X1],o,m);return m===O?F:[0,F[1],[0,O]]}function Lue(o,F){var m=F[3],O=F[1],H=Un(u(o[1][1+si],o),O),$=a(o[1][1+s0],o,m);return O===H&&m===$?F:[0,H,F[2],$]}function Rue(o,F){var m=F[4],O=F[1];if(O[0]===0)var H=function(ye){return[0,ye]},$=O[1],r0=u(o[1][1+si],o),Gr=ee(function(ye){return Un(r0,ye)},$,O,H);else var M0=function(ye){return[1,ye]},z0=O[1],Nr=u(o[1][1+s2],o),Gr=ee(function(ye){return Un(Nr,ye)},z0,O,M0);var Fe=a(o[1][1+s0],o,m);return O===Gr&&m===Fe?F:[0,Gr,F[2],F[3],Fe]}function jue(o,F){var m=F[4],O=F[1],H=Un(u(o[1][1+X9],o),O),$=a(o[1][1+s0],o,m);return O===H&&m===$?F:[0,H,F[2],F[3],$]}function Gue(o,F){var m=F[4],O=F[1],H=Un(u(o[1][1+cb],o),O),$=a(o[1][1+s0],o,m);return O===H&&m===$?F:[0,H,F[2],F[3],$]}function Mue(o,F){var m=F[2],O=F[1];switch(m[0]){case 0:var H=function(ye){return[0,O,[0,ye]]},$=m[1];return ee(u(o[1][1+sb],o),$,F,H);case 1:var r0=function(ye){return[0,O,[1,ye]]},M0=m[1];return ee(u(o[1][1+Y9],o),M0,F,r0);case 2:var z0=function(ye){return[0,O,[2,ye]]},Nr=m[1];return ee(u(o[1][1+H9],o),Nr,F,z0);default:var Gr=function(ye){return[0,O,[3,ye]]},Fe=m[1];return ee(u(o[1][1+Js],o),Fe,F,Gr)}}function Bue(o,F,m){var O=m[3],H=m[2],$=m[1],r0=ir(o[1][1+R0],o,h6r,$),M0=a(o[1][1+V9],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function que(o,F,m){var O=m[1],H=a(o[1][1+s0],o,O);return O===H?m:[0,H]}function Uue(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+Or],o,$),M0=a(o[1][1+_r],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function Hue(o,F,m){var O=m[3],H=m[2],$=m[1],r0=ir(o[1][1+R0],o,d6r,$),M0=a(o[1][1+l],o,H),z0=a(o[1][1+s0],o,O);return r0===$&&M0===H&&z0===O?m:[0,r0,M0,z0]}function Xue(o,F,m){return ir(o[1][1+c0],o,F,m)}function Yue(o,F,m){var O=m[2],H=m[1],$=a(o[1][1+l],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function Vue(o,F,m){var O=m[4],H=m[2],$=mu(u(o[1][1+zi],o),H),r0=a(o[1][1+s0],o,O);return $===H&&O===r0?m:[0,m[1],$,m[3],r0]}function zue(o,F,m){return ir(o[1][1+Hn],o,F,m)}function Kue(o,F,m){var O=m[4],H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+he],o,r0),z0=a(o[1][1+l],o,$),Nr=ze(u(o[1][1+Ir],o),H),Gr=a(o[1][1+s0],o,O);return M0===r0&&z0===$&&Nr===H&&Gr===O?m:[0,M0,z0,Nr,Gr]}function Wue(o,F){switch(F[0]){case 0:var m=F[1],O=m[2],H=m[1],$=ir(o[1][1+vb],o,H,O);return $===O?F:[0,[0,H,$]];case 1:var r0=F[1],M0=r0[2],z0=r0[1],Nr=ir(o[1][1+lb],o,z0,M0);return Nr===M0?F:[1,[0,z0,Nr]];case 2:var Gr=F[1],Fe=Gr[2],ye=Gr[1],Dn=ir(o[1][1+v2],o,ye,Fe);return Dn===Fe?F:[2,[0,ye,Dn]];case 3:var pn=F[1],xt=a(o[1][1+t0],o,pn);return xt===pn?F:[3,xt];case 4:var pt=F[1],kt=pt[2],Kn=pt[1],$t=ir(o[1][1+c0],o,Kn,kt);return $t===kt?F:[4,[0,Kn,$t]];case 5:var W7=F[1],J7=W7[2],w7=W7[1],$7=ir(o[1][1+Sr],o,w7,J7);return $7===J7?F:[5,[0,w7,$7]];default:var Z7=F[1],Q7=Z7[2],ri=Z7[1],ei=ir(o[1][1+Hn],o,ri,Q7);return ei===Q7?F:[6,[0,ri,ei]]}}function Jue(o,F,m){var O=m[5],H=m[3],$=m[2],r0=ze(u(o[1][1+ci],o),H),M0=ze(u(o[1][1+Q9],o),$),z0=a(o[1][1+s0],o,O);return H===r0&&$===M0&&O===z0?m:[0,m[1],M0,r0,m[4],z0]}function $ue(o,F,m){var O=m[7],H=m[6],$=m[5],r0=m[4],M0=m[3],z0=m[2],Nr=m[1],Gr=a(o[1][1+db],o,Nr),Fe=ze(u(o[1][1+V],o),z0),ye=mu(u(o[1][1+qr],o),M0),Dn=u(o[1][1+xu],o),pn=ze(function($t){return mu(Dn,$t)},r0),xt=u(o[1][1+xu],o),pt=Un(function($t){return mu(xt,$t)},$),kt=ze(u(o[1][1+l2],o),H),Kn=a(o[1][1+s0],o,O);return Gr===Nr&&Fe===z0&&ye===M0&&pn===r0&&pt===$&&kt===H&&Kn===O?m:[0,Gr,Fe,ye,pn,pt,kt,Kn]}function Zue(o,F,m){var O=m[1],H=a(o[1][1+s0],o,O);return O===H?m:[0,H]}function Que(o,F,m){var O=m[2],H=m[1],$=ze(u(o[1][1+Q0],o),H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function r7e(o,F,m){var O=m[4],H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+_r],o,r0),z0=a(o[1][1+en],o,$),Nr=a(o[1][1+en],o,H),Gr=a(o[1][1+s0],o,O);return r0===M0&&$===z0&&H===Nr&&O===Gr?m:[0,M0,z0,Nr,Gr]}function e7e(o,F,m){return m}function n7e(o,F,m){var O=m[6],H=m[5],$=m[3],r0=m[2],M0=m[1],z0=a(o[1][1+or],o,M0),Nr=a(o[1][1+_b],o,r0),Gr=a(o[1][1+x0],o,$),Fe=a(o[1][1+c],o,H),ye=a(o[1][1+s0],o,O);return M0===z0&&r0===Nr&&Gr===$&&Fe===H&&ye===O?m:[0,z0,Nr,Gr,m[4],Fe,ye]}function t7e(o,F){if(typeof F=="number")return F;var m=F[1],O=a(o[1][1+en],o,m);return m===O?F:[0,O]}function u7e(o,F,m){var O=m[6],H=m[5],$=m[3],r0=m[2],M0=m[1],z0=a(o[1][1+ae],o,M0),Nr=a(o[1][1+_b],o,r0),Gr=a(o[1][1+x0],o,$),Fe=a(o[1][1+c],o,H),ye=a(o[1][1+s0],o,O);return M0===z0&&r0===Nr&&Gr===$&&Fe===H&&ye===O?m:[0,z0,Nr,Gr,m[4],Fe,ye]}function i7e(o,F,m){var O=m[6],H=m[5],$=m[3],r0=m[2],M0=a(o[1][1+ae],o,r0),z0=mu(u(o[1][1+_e],o),$),Nr=Un(u(o[1][1+hb],o),H),Gr=a(o[1][1+s0],o,O);return r0===M0&&$===z0&&H===Nr&&O===Gr?m:[0,m[1],M0,z0,m[4],Nr,Gr]}function f7e(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+m0],o,H),r0=ze(u(o[1][1+e0],o),O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function x7e(o,F){var m=F[2],O=m[2],H=m[1],$=Un(u(o[1][1+e_],o),H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function a7e(o,F){switch(F[0]){case 0:var m=F[1],O=m[1],H=function(pn){return[0,[0,O,pn]]},$=m[2];return te(u(o[1][1+Vc],o),O,$,F,H);case 1:var r0=F[1],M0=r0[1],z0=function(pn){return[1,[0,M0,pn]]},Nr=r0[2];return te(u(o[1][1+yb],o),M0,Nr,F,z0);default:var Gr=F[1],Fe=Gr[1],ye=function(pn){return[2,[0,Fe,pn]]},Dn=Gr[2];return te(u(o[1][1+r_],o),Fe,Dn,F,ye)}}function o7e(o,F){var m=F[2],O=m[2],H=m[1],$=a(o[1][1+en],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function c7e(o,F){var m=F[2],O=m[2],H=m[1],$=Un(u(o[1][1+$s],o),H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function s7e(o,F){return ir(o[1][1+R0],o,y6r,F)}function v7e(o,F,m){var O=m[3],H=m[2],$=m[1],r0=a(o[1][1+en],o,$),M0=ze(u(o[1][1+e0],o),H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function l7e(o,F,m){var O=m[7],H=m[6],$=m[5],r0=m[4],M0=m[3],z0=m[2],Nr=m[1],Gr=ze(u(o[1][1+db],o),Nr),Fe=a(o[1][1+t_],o,z0),ye=ze(u(o[1][1+V],o),M0),Dn=u(o[1][1+zc],o),pn=ze(function(Kn){return mu(Dn,Kn)},r0),xt=ze(u(o[1][1+l2],o),$),pt=Un(u(o[1][1+hb],o),H),kt=a(o[1][1+s0],o,O);return Nr===Gr&&z0===Fe&&r0===pn&&$===xt&&H===pt&&O===kt&&M0===ye?m:[0,Gr,Fe,ye,pn,xt,pt,kt]}function b7e(o,F,m){return ir(o[1][1+ks],o,F,m)}function p7e(o,F,m){return ir(o[1][1+ks],o,F,m)}function m7e(o,F,m){var O=m[3],H=m[2],$=m[1],r0=ze(u(o[1][1+u_],o),$),M0=a(o[1][1+i_],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,r0,M0,z0]}function _7e(o,F){return mu(u(o[1][1+zi],o),F)}function y7e(o,F){if(F[0]===0){var m=F[1],O=a(o[1][1+t0],o,m);return O===m?F:[0,O]}var H=F[1],$=H[2][1],r0=a(o[1][1+s0],o,$);return $===r0?F:[1,[0,H[1],[0,r0]]]}function d7e(o,F){var m=F[2],O=m[2],H=m[1],$=Un(u(o[1][1+f_],o),H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function h7e(o,F,m){var O=m[1],H=ir(o[1][1+kb],o,F,O);return O===H?m:[0,H,m[2],m[3]]}function k7e(o,F){var m=F[2],O=m[2],H=m[1],$=Un(u(o[1][1+Ks],o),H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?F:[0,F[1],[0,$,r0]]}function w7e(o,F,m){var O=m[4],H=m[3],$=m[2],r0=m[1],M0=a(o[1][1+en],o,r0),z0=ze(u(o[1][1+b2],o),$),Nr=a(o[1][1+Zs],o,H),Gr=a(o[1][1+s0],o,O);return r0===M0&&$===z0&&H===Nr&&O===Gr?m:[0,M0,z0,Nr,Gr]}function E7e(o,F,m){var O=m[2],H=m[1],$=ze(u(o[1][1+Q0],o),H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function S7e(o,F,m){var O=m[2],H=m[1],$=a(o[1][1+Tr],o,H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function g7e(o,F,m){var O=m[4],H=m[3],$=m[2],r0=a(o[1][1+en],o,$),M0=a(o[1][1+en],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,m[1],r0,M0,z0]}function F7e(o,F,m){var O=m[4],H=m[3],$=m[2],r0=a(o[1][1+m2],o,$),M0=a(o[1][1+en],o,H),z0=a(o[1][1+s0],o,O);return $===r0&&H===M0&&O===z0?m:[0,m[1],r0,M0,z0]}function T7e(o,F,m){return ir(o[1][1+Rn],o,F,m)}function O7e(o,F){switch(F[0]){case 0:var m=function(r0){return[0,r0]},O=F[1];return ee(u(o[1][1+en],o),O,F,m);case 1:var H=function(r0){return[1,r0]},$=F[1];return ee(u(o[1][1+Rr],o),$,F,H);default:return F}}function I7e(o,F,m){var O=m[2],H=m[1],$=Un(u(o[1][1+c_],o),H),r0=a(o[1][1+s0],o,O);return H===$&&O===r0?m:[0,$,r0]}function A7e(o,F){var m=F[2],O=F[1];switch(m[0]){case 0:var H=function(Ue){return[0,O,[0,Ue]]},$=m[1];return te(u(o[1][1+y2],o),O,$,F,H);case 1:var r0=function(Ue){return[0,O,[1,Ue]]},M0=m[1];return te(u(o[1][1+o_],o),O,M0,F,r0);case 2:var z0=function(Ue){return[0,O,[2,Ue]]},Nr=m[1];return te(u(o[1][1+_2],o),O,Nr,F,z0);case 3:var Gr=function(Ue){return[0,O,[3,Ue]]},Fe=m[1];return te(u(o[1][1+a_],o),O,Fe,F,Gr);case 4:var ye=function(Ue){return[0,O,[4,Ue]]},Dn=m[1];return te(u(o[1][1+kb],o),O,Dn,F,ye);case 5:var pn=function(Ue){return[0,O,[5,Ue]]},xt=m[1];return te(u(o[1][1+n_],o),O,xt,F,pn);case 6:var pt=function(Ue){return[0,O,[6,Ue]]},kt=m[1];return te(u(o[1][1+jn],o),O,kt,F,pt);case 7:var Kn=function(Ue){return[0,O,[7,Ue]]},$t=m[1];return te(u(o[1][1+mb],o),O,$t,F,Kn);case 8:var W7=function(Ue){return[0,O,[8,Ue]]},J7=m[1];return te(u(o[1][1+Zn],o),O,J7,F,W7);case 9:var w7=function(Ue){return[0,O,[9,Ue]]},$7=m[1];return te(u(o[1][1+Yi],o),O,$7,F,w7);case 10:var Z7=function(Ue){return[0,O,[10,Ue]]},Q7=m[1];return ee(u(o[1][1+lt],o),Q7,F,Z7);case 11:var ri=function(Ue){return[0,O,[11,Ue]]},ei=m[1];return ee(a(o[1][1+Ft],o,O),ei,F,ri);case 12:var Wi=function(Ue){return[0,O,[12,Ue]]},uv=m[1];return te(u(o[1][1+Me],o),O,uv,F,Wi);case 13:var iv=function(Ue){return[0,O,[13,Ue]]},Ji=m[1];return te(u(o[1][1+Kr],o),O,Ji,F,iv);case 14:var fv=function(Ue){return[0,O,[14,Ue]]},Gb=m[1];return te(u(o[1][1+J0],o),O,Gb,F,fv);case 15:var Mb=function(Ue){return[0,O,[15,Ue]]},Bb=m[1];return te(u(o[1][1+Y0],o),O,Bb,F,Mb);case 16:var qb=function(Ue){return[0,O,[16,Ue]]},Ub=m[1];return te(u(o[1][1+u0],o),O,Ub,F,qb);case 17:var Hb=function(Ue){return[0,O,[17,Ue]]},Xb=m[1];return te(u(o[1][1+U],o),O,Xb,F,Hb);case 18:var Yb=function(Ue){return[0,O,[18,Ue]]},Vb=m[1];return te(u(o[1][1+I],o),O,Vb,F,Yb);case 19:var zb=function(Ue){return[0,O,[19,Ue]]},Kb=m[1];return te(u(o[1][1+Fr],o),O,Kb,F,zb);case 20:var Wb=function(Ue){return[0,O,[20,Ue]]},Jb=m[1];return ee(a(o[1][1+$0],o,O),Jb,F,Wb);case 21:var $b=function(Ue){return[0,O,[21,Ue]]},Zb=m[1];return te(u(o[1][1+yr],o),O,Zb,F,$b);case 22:var Qb=function(Ue){return[0,O,[22,Ue]]},r4=m[1];return te(u(o[1][1+Wr],o),O,r4,F,Qb);case 23:var e4=function(Ue){return[0,O,[23,Ue]]},n4=m[1];return te(u(o[1][1+W0],o),O,n4,F,e4);case 24:var t4=function(Ue){return[0,O,[24,Ue]]},u4=m[1];return te(u(o[1][1+X],o),O,u4,F,t4);case 25:var i4=function(Ue){return[0,O,[25,Ue]]},f4=m[1];return te(u(o[1][1+G0],o),O,f4,F,i4);case 26:var x4=function(Ue){return[0,O,[26,Ue]]},a4=m[1];return te(u(o[1][1+X0],o),O,a4,F,x4);case 27:var $e=function(Ue){return[0,O,[27,Ue]]},PR=m[1];return te(u(o[1][1+g0],o),O,PR,F,$e);case 28:var DR=function(Ue){return[0,O,[28,Ue]]},LR=m[1];return te(u(o[1][1+w],o),O,LR,F,DR);case 29:var RR=function(Ue){return[0,O,[29,Ue]]},jR=m[1];return te(u(o[1][1+E],o),O,jR,F,RR);default:var GR=function(Ue){return[0,O,[30,Ue]]},MR=m[1];return te(u(o[1][1+e],o),O,MR,F,GR)}}function N7e(o,F){var m=F[2],O=F[1],H=Un(u(o[1][1+V1],o),O),$=Un(u(o[1][1+V1],o),m);return O===H&&m===$?F:[0,H,$,F[3]]}var C7e=8;function P7e(o,F){return F}function D7e(o,F){var m=F[2],O=F[1];switch(m[0]){case 0:var H=function(Oe){return[0,O,[0,Oe]]},$=m[1];return te(u(o[1][1+zi],o),O,$,F,H);case 1:var r0=function(Oe){return[0,O,[1,Oe]]},M0=m[1];return te(u(o[1][1+Qs],o),O,M0,F,r0);case 2:var z0=function(Oe){return[0,O,[2,Oe]]},Nr=m[1];return te(u(o[1][1+z1],o),O,Nr,F,z0);case 3:var Gr=function(Oe){return[0,O,[3,Oe]]},Fe=m[1];return te(u(o[1][1+pb],o),O,Fe,F,Gr);case 4:var ye=function(Oe){return[0,O,[4,Oe]]},Dn=m[1];return te(u(o[1][1+bb],o),O,Dn,F,ye);case 5:var pn=function(Oe){return[0,O,[5,Oe]]},xt=m[1];return te(u(o[1][1+v2],o),O,xt,F,pn);case 6:var pt=function(Oe){return[0,O,[6,Oe]]},kt=m[1];return te(u(o[1][1+Y1],o),O,kt,F,pt);case 7:var Kn=function(Oe){return[0,O,[7,Oe]]},$t=m[1];return te(u(o[1][1+lb],o),O,$t,F,Kn);case 8:var W7=function(Oe){return[0,O,[8,Oe]]},J7=m[1];return te(u(o[1][1+Z9],o),O,J7,F,W7);case 9:var w7=function(Oe){return[0,O,[9,Oe]]},$7=m[1];return te(u(o[1][1+$9],o),O,$7,F,w7);case 10:var Z7=function(Oe){return[0,O,[10,Oe]]},Q7=m[1];return te(u(o[1][1+J9],o),O,Q7,F,Z7);case 11:var ri=function(Oe){return[0,O,[11,Oe]]},ei=m[1];return te(u(o[1][1+W9],o),O,ei,F,ri);case 12:var Wi=function(Oe){return[0,O,[33,Oe]]},uv=m[1];return te(u(o[1][1+Sr],o),O,uv,F,Wi);case 13:var iv=function(Oe){return[0,O,[13,Oe]]},Ji=m[1];return te(u(o[1][1+vb],o),O,Ji,F,iv);case 14:var fv=function(Oe){return[0,O,[14,Oe]]},Gb=m[1];return te(u(o[1][1+K9],o),O,Gb,F,fv);case 15:var Mb=function(Oe){return[0,O,[15,Oe]]},Bb=m[1];return te(u(o[1][1+z9],o),O,Bb,F,Mb);case 16:var qb=function(Oe){return[0,O,[16,Oe]]},Ub=m[1];return te(u(o[1][1+ob],o),O,Ub,F,qb);case 17:var Hb=function(Oe){return[0,O,[17,Oe]]},Xb=m[1];return te(u(o[1][1+q9],o),O,Xb,F,Hb);case 18:var Yb=function(Oe){return[0,O,[18,Oe]]},Vb=m[1];return te(u(o[1][1+c2],o),O,Vb,F,Yb);case 19:var zb=function(Oe){return[0,O,[19,Oe]]},Kb=m[1];return te(u(o[1][1+zs],o),O,Kb,F,zb);case 20:var Wb=function(Oe){return[0,O,[20,Oe]]},Jb=m[1];return te(u(o[1][1+ht],o),O,Jb,F,Wb);case 21:var $b=function(Oe){return[0,O,[21,Oe]]},Zb=m[1];return te(u(o[1][1+Iu],o),O,Zb,F,$b);case 22:var Qb=function(Oe){return[0,O,[22,Oe]]},r4=m[1];return te(u(o[1][1+cn],o),O,r4,F,Qb);case 23:var e4=function(Oe){return[0,O,[23,Oe]]},n4=m[1];return te(u(o[1][1+dn],o),O,n4,F,e4);case 24:var t4=function(Oe){return[0,O,[24,Oe]]},u4=m[1];return te(u(o[1][1+Nt],o),O,u4,F,t4);case 25:var i4=function(Oe){return[0,O,[25,Oe]]},f4=m[1];return te(u(o[1][1+Bt],o),O,f4,F,i4);case 26:var x4=function(Oe){return[0,O,[26,Oe]]},a4=m[1];return te(u(o[1][1+Cn],o),O,a4,F,x4);case 27:var $e=function(Oe){return[0,O,[27,Oe]]},PR=m[1];return te(u(o[1][1+fr],o),O,PR,F,$e);case 28:var DR=function(Oe){return[0,O,[28,Oe]]},LR=m[1];return te(u(o[1][1+Jr],o),O,LR,F,DR);case 29:var RR=function(Oe){return[0,O,[29,Oe]]},jR=m[1];return te(u(o[1][1+ar],o),O,jR,F,RR);case 30:var GR=function(Oe){return[0,O,[30,Oe]]},MR=m[1];return te(u(o[1][1+E0],o),O,MR,F,GR);case 31:var Ue=function(Oe){return[0,O,[31,Oe]]},L7e=m[1];return te(u(o[1][1+w0],o),O,L7e,F,Ue);case 32:var R7e=function(Oe){return[0,O,[32,Oe]]},j7e=m[1];return te(u(o[1][1+c0],o),O,j7e,F,R7e);case 33:var G7e=function(Oe){return[0,O,[33,Oe]]},M7e=m[1];return te(u(o[1][1+Sr],o),O,M7e,F,G7e);case 34:var B7e=function(Oe){return[0,O,[34,Oe]]},q7e=m[1];return te(u(o[1][1+T],o),O,q7e,F,B7e);case 35:var U7e=function(Oe){return[0,O,[35,Oe]]},H7e=m[1];return te(u(o[1][1+x],o),O,H7e,F,U7e);default:var X7e=function(Oe){return[0,O,[36,Oe]]},Y7e=m[1];return te(u(o[1][1+i],o),O,Y7e,F,X7e)}}return BN(t,[0,XL,function(o,F){var m=F[2],O=m[3],H=m[2],$=m[1],r0=a(o[1][1+_0],o,$),M0=a(o[1][1+s0],o,H),z0=Un(u(o[1][1+V1],o),O);return $===r0&&H===M0&&O===z0?F:[0,F[1],[0,r0,M0,z0]]},Or,D7e,V1,P7e,s0,C7e,ze,dr,dr,N7e,en,A7e,y2,I7e,c_,O7e,o_,T7e,_2,F7e,a_,g7e,zi,S7e,Qs,E7e,kb,w7e,Zs,k7e,$0,h7e,b2,d7e,f_,y7e,i_,_7e,K1,m7e,z1,p7e,n_,b7e,ks,l7e,zc,v7e,db,s7e,t_,c7e,hb,o7e,$s,a7e,l2,x7e,e_,f7e,Vc,i7e,yb,u7e,_b,t7e,r_,n7e,jn,e7e,mb,r7e,pb,Que,bb,Zue,v2,$ue,Y1,Jue,Q9,Wue,lb,Kue,Z9,zue,$9,Vue,J9,Yue,W9,Xue,vb,Hue,K9,Uue,z9,que,ob,Bue,V9,Mue,sb,Gue,Y9,jue,H9,Rue,Js,Lue,si,Due,cb,Pue,X9,Cue,s2,Nue,X1,Aue,q9,Iue,B9,Oue,c2,Tue,Ws,Fue,U9,gue,ci,Sue,zs,Eue,Ks,wue,Iu,kue,hs,hue,Vs,due,cn,yue,tn,_ue,tt,mue,ht,pue,nt,bue,Fi,lue,L0,vue,qt,sue,Yc,cue,a7,oue,Q0,aue,$r,xue,Br,fue,Mr,iue,ne,uue,jr,tue,ge,nue,ce,eue,H0,rue,qr,Qte,bn,Zte,z7,$te,Mu,Jte,Y,Wte,s,Kte,c,zte,e0,Vte,V,Yte,f0,Xte,xu,Hte,Sn,Ute,vr,qte,Lr,Bte,_,Mte,p2,Gte,x_,jte,k,Rte,G,Lte,K,Dte,M,Pte,S,Cte,A,Nte,a0,Ate,e1,Ite,h,Ote,rn,Tte,t0,Fte,l,gte,x0,Ste,dn,Ete,Zn,wte,_e,kte,Rn,hte,U0,dte,K7,yte,He,_te,it,mte,ft,pte,he,bte,Yi,lte,lt,vte,k0,ste,m0,cte,Kc,ote,Hn,ate,Cn,xte,or,fte,Tn,ite,Ft,ute,du,tte,Ku,nte,Nt,ete,Bt,rte,vt,Qne,gt,Zne,Jt,$ne,At,Jne,Me,Wne,Kr,Kne,mr,zne,Be,Vne,Cr,Yne,gr,Xne,We,Hne,Ce,Une,on,qne,yn,Bne,Qe,Mne,xn,CR,Ae,jb,fn,Rb,Ke,tv,re,Lb,F0,nv,Ie,Ki,ve,k7,xe,Oi,je,ku,sr,hu,Ur,NR,Pr,AR,K0,Db,d0,IR,fr,OR,J0,Pb,Y0,TR,u0,FR,yr,gR,I0,E2,y0,SR,D,d_,D0,ER,U,wR,I,Cb,Fr,kR,Qr,y_,ae,hR,pe,dR,oe,Nb,me,yR,Sr,_R,Re,mR,p,Ab,u_,__,Vi,pR,Tt,m_,r1,Ib,m2,p_,er,bR,R0,b_,rr,lR,T0,Ob,S0,l_,Q,Tb,L,ev,i0,vR,l0,sR,v0,v_,P,Gn,fe,cR,q0,Fb,O0,oR,b0,gb,p0,aR,Z,Sb,W1,xR,B,rv,Ir,fR,_r,w2,bt,iR,Jr,k2,Wr,uR,_0,s_,Tr,tR,Hr,nR,Rr,h2,xr,eR,W0,rR,ar,Eb,Ar,QL,X,wb,G0,ZL,b,Q1,X0,$L,E0,Z1,w0,JL,g0,d2,w,WL,E,KL,T,Ti,y,zL,x,$1,i,VL,c0,J1,e,YL]),function(o,F){return Gp(F,t)}});function W00(t){switch(t[0]){case 0:return 1;case 3:return 3;default:return 2}}function J00(t,n){u(f(t),H6r),a(f(t),Y6r,X6r);var e=n[1];a(f(t),V6r,e),u(f(t),z6r),u(f(t),K6r),a(f(t),J6r,W6r);var i=n[2];return a(f(t),$6r,i),u(f(t),Z6r),u(f(t),Q6r)}var $00=function t(n,e){return t.fun(n,e)},qee=function t(n){return t.fun(n)};N($00,function(t,n){u(f(t),epr),a(f(t),tpr,npr);var e=n[1];if(e){g(t,upr);var i=e[1];switch(i[0]){case 0:u(f(t),N6r);var x=i[1];a(f(t),C6r,x),u(f(t),P6r);break;case 1:u(f(t),D6r);var c=i[1];a(f(t),L6r,c),u(f(t),R6r);break;case 2:u(f(t),j6r);var s=i[1];a(f(t),G6r,s),u(f(t),M6r);break;default:u(f(t),B6r);var p=i[1];a(f(t),q6r,p),u(f(t),U6r)}g(t,ipr)}else g(t,fpr);return u(f(t),xpr),u(f(t),apr),a(f(t),cpr,opr),J00(t,n[2]),u(f(t),spr),u(f(t),vpr),a(f(t),bpr,lpr),J00(t,n[3]),u(f(t),ppr),u(f(t),mpr)}),N(qee,function(t){return a(P0(rpr),$00,t)});function yt(t,n){return[0,t[1],t[2],n[3]]}function ms(t,n){var e=t[1]-n[1]|0;return e===0?t[2]-n[2]|0:e}function Z00(t,n){var e=n[1],i=t[1];if(i)if(e)var x=e[1],c=i[1],s=W00(x),p=W00(c)-s|0,T=p===0?Ee(c[1],x[1]):p;else var T=-1;else var y=e&&1,T=y;if(T===0){var E=ms(t[2],n[2]);return E===0?ms(t[3],n[3]):E}return T}function Wv(t,n){return Z00(t,n)===0?1:0}var ZD=function t(n,e,i){return t.fun(n,e,i)},Uee=jp(dpr,function(t){var n=DN(t,ypr)[35],e=GN(t,0,0,_pr,$D,1)[1];return Zz(t,n,function(i,x){return 0}),function(i,x){var c=Gp(x,t);return u(e,c),MN(x,c,t)}});N(ZD,function(t,n,e){var i=e[2];switch(i[0]){case 0:var x=i[1][1];return be(function(s,p){var y=p[0]===0?p[1][2][2]:p[1][2][1];return ir(ZD,t,s,y)},n,x);case 1:var c=i[1][1];return be(function(s,p){return p[0]===2?s:ir(ZD,t,s,p[1][2][1])},n,c);case 2:return a(t,n,i[1][1]);default:return n}});function Gc(t,n){return[0,n[1],[0,n[2],t]]}function Q00(t,n,e){var i=t&&t[1],x=n&&n[1];return[0,i,x,e]}function lr(t,n,e){var i=t&&t[1],x=n&&n[1];return!i&&!x?x:[0,Q00([0,i],[0,x],0)]}function _u(t,n,e,i){var x=t&&t[1],c=n&&n[1];return!x&&!c&&!e?e:[0,Q00([0,x],[0,c],e)]}function _7(t,n){if(t){if(n){var e=n[1],i=t[1],x=[0,un(i[2],e[2])];return lr([0,un(e[1],i[1])],x,0)}var c=t}else var c=n;return c}function QD(t,n){if(n){if(t){var e=n[1],i=t[1],x=i[3],c=[0,un(i[2],e[2])];return _u([0,un(e[1],i[1])],c,x,0)}var s=n[1];return _u([0,s[1]],[0,s[2]],0,0)}return t}function Jv(t,n){for(var e=t,i=n;;){if(typeof e=="number")return i;if(e[0]===0)return[0,e[1],0,i];var x=[0,e[2],e[4],i],e=e[3],i=x}}function rr0(t,n){if(t)var e=Jv(t[2],t[3]),i=function(c){return rr0(e,c)},x=[0,t[1],i];else var x=t;return x}function Hee(t){var n=Jv(t,0);return function(e){return rr0(n,e)}}function _s(t){return typeof t=="number"?0:t[0]===0?1:t[1]}function Xee(t){return[0,t]}function X7(t,n,e){var i=0;if(typeof t=="number"){if(typeof e=="number")return[0,n];e[0]===1&&(i=1)}else if(t[0]===0)typeof e!="number"&&e[0]===1&&(i=1);else{var x=t[1];if(typeof e!="number"&&e[0]===1){var c=e[1],s=c<=x?x+1|0:c+1|0;return[1,s,n,t,e]}var p=x;i=2}switch(i){case 1:var p=e[1];break;case 0:return[1,2,n,t,e]}return[1,p+1|0,n,t,e]}function Ds(t,n,e){var i=_s(t),x=_s(e),c=x<=i?i+1|0:x+1|0;return[1,c,n,t,e]}function rL(t,n){var e=n!==0?1:0;if(e){if(n!==1){var i=n>>>1|0,x=rL(t,i),c=u(t,0),s=rL(t,(n-i|0)-1|0);return[1,_s(x)+1|0,c,x,s]}var p=[0,u(t,0)]}else var p=e;return p}function hi(t,n,e){var i=_s(t),x=_s(e);if((x+2|0)>1,b0=G0(p0,W0),O0=b0[1],q0=G0(ar-p0|0,b0[2]),er=O0,yr=q0[1],vr=0,$0=q0[2];;){if(er){if(yr){var Sr=yr[2],Mr=yr[1],Br=er[2],qr=er[1],jr=a(X0,qr,Mr);if(jr===0){var er=Br,yr=Sr,vr=[0,qr,vr];continue}if(0<=jr){var yr=Sr,vr=[0,Mr,vr];continue}var er=Br,vr=[0,qr,vr];continue}var $r=jc(er,vr)}else var $r=jc(yr,vr);return[0,$r,$0]}},G0=function(ar,W0){if(ar===2){if(W0){var Lr=W0[2];if(Lr){var Tr=Lr[1],Hr=W0[1],Or=Lr[2],xr=a(X0,Hr,Tr),Rr=xr===0?[0,Hr,0]:0<=xr?[0,Tr,[0,Hr,0]]:[0,Hr,[0,Tr,0]];return[0,Rr,Or]}}}else if(ar===3&&W0){var Wr=W0[2];if(Wr){var Jr=Wr[2];if(Jr){var or=Jr[1],_r=Wr[1],Ir=W0[1],fe=Jr[2],v0=a(X0,Ir,_r);if(v0===0)var P=a(X0,_r,or),L=P===0?[0,_r,0]:0<=P?[0,or,[0,_r,0]]:[0,_r,[0,or,0]],Q=L;else if(0<=v0){var i0=a(X0,Ir,or);if(i0===0)var T0=[0,_r,[0,Ir,0]];else if(0<=i0)var l0=a(X0,_r,or),S0=l0===0?[0,_r,[0,Ir,0]]:0<=l0?[0,or,[0,_r,[0,Ir,0]]]:[0,_r,[0,or,[0,Ir,0]]],T0=S0;else var T0=[0,_r,[0,Ir,[0,or,0]]];var Q=T0}else{var rr=a(X0,_r,or);if(rr===0)var Z=[0,Ir,[0,_r,0]];else if(0<=rr)var R0=a(X0,Ir,or),B=R0===0?[0,Ir,[0,_r,0]]:0<=R0?[0,or,[0,Ir,[0,_r,0]]]:[0,Ir,[0,or,[0,_r,0]]],Z=B;else var Z=[0,Ir,[0,_r,[0,or,0]]];var Q=Z}return[0,Q,fe]}}}for(var p0=ar>>1,b0=b(p0,W0),O0=b0[1],q0=b(ar-p0|0,b0[2]),er=O0,yr=q0[1],vr=0,$0=q0[2];;){if(er){if(yr){var Sr=yr[2],Mr=yr[1],Br=er[2],qr=er[1],jr=a(X0,qr,Mr);if(jr===0){var er=Br,yr=Sr,vr=[0,qr,vr];continue}if(0>>0))switch(ar){case 0:return[0,0,W0];case 1:if(W0)return[0,[0,W0[1]],W0[2]];break;case 2:if(W0){var Lr=W0[2];if(Lr)return[0,[1,2,Lr[1],[0,W0[1]],0],Lr[2]]}break;default:if(W0){var Tr=W0[2];if(Tr){var Hr=Tr[2];if(Hr)return[0,[1,2,Tr[1],[0,W0[1]],[0,Hr[1]]],Hr[2]]}}}var Or=ar/2|0,xr=dr(Or,W0),Rr=xr[2];if(Rr){var Wr=dr((ar-Or|0)-1|0,Rr[2]),Jr=Wr[2];return[0,Ds(xr[1],Rr[1],Wr[1]),Jr]}throw[0,wn,o5r]};return dr(Rc(s0),s0)[1]}var Ar=n(E0,n(w0,n(t0,[0,l])));return n(_0[1],Ar)}return n(E0,n(w0,n(t0,[0,l])))}return n(w0,n(t0,[0,l]))}return n(t0,[0,l])}return[0,l]}return st}return[0,st,tL,i,n,Xee,x,c,s,y,T,E,h,w,G,k0,A,S,M,K,V,nL,fr0,Pl,tr0,ur0,Yee,Pl,tr0,f0,m0,Hee,g0,function(e0,x0,l){u(f(x0),i5r);var c0=fr0(l);c0&&u(f(x0),f5r);var t0=0;return be(function(a0,w0){return a0&&u(f(x0),u5r),a(e0,x0,w0),1},t0,c0),c0&&u(f(x0),x5r),u(f(x0),a5r)},rL]}var xr0=c5r.slice();function iL(t){for(var n=0,e=xr0.length-1-1|0;;){if(e>>18|0),Jn(i,x+1|0,Rt|(p>>>12|0)&63),Jn(i,x+2|0,Rt|(p>>>6|0)&63),Jn(i,x+3|0,Rt|p&63);var y=x+4|0}else{Jn(i,x,dv|p>>>12|0),Jn(i,x+1|0,Rt|(p>>>6|0)&63),Jn(i,x+2|0,Rt|p&63);var y=x+3|0}else{Jn(i,x,at|p>>>6|0),Jn(i,x+1|0,Rt|p&63);var y=x+2|0}else{Jn(i,x,p);var y=x+1|0}var x=y,c=c-1|0,s=s+1|0;continue}throw A1}return x}}function hr0(t){for(var n=nn(t),e=Gv(n,0),i=0,x=0;;){if(x>>6|0)!==2?1:0;if(E)var w=E;else var h=(y>>>6|0)!==2?1:0,w=h||((T>>>6|0)!==2?1:0);if(w)throw A1;e[1+i]=(c&7)<<18|(p&63)<<12|(y&63)<<6|T&63;var G=x+4|0}else if(dv<=c){var A=Vr(t,x+1|0),S=Vr(t,x+2|0),M=(c&15)<<12|(A&63)<<6|S&63,K=(A>>>6|0)!==2?1:0,V=K||((S>>>6|0)!==2?1:0);if(V)var m0=V;else var f0=55296<=M?1:0,m0=f0&&(M<=57088?1:0);if(m0)throw A1;e[1+i]=M;var G=x+3|0}else{var k0=Vr(t,x+1|0);if((k0>>>6|0)!==2)throw A1;e[1+i]=(c&31)<<6|k0&63;var G=x+2|0}else if(Rt<=c)s=1;else{e[1+i]=c;var G=x+1|0}if(s)throw A1;var i=i+1|0,x=G;continue}return[0,e,i,yr0,_r0,mr0,pr0,br0,lr0,vr0,sr0,cr0,or0]}}function jl(t,n,e){var i=t[6]+n|0,x=Pt(e*4|0),c=t[1];if((i+e|0)<=c.length-1)return qv(x,0,Rl(c,i,e,x));throw[0,wn,p_r]}function Se(t){var n=t[6],e=t[3]-n|0,i=Pt(e*4|0);return qv(i,0,Rl(t[1],n,e,i))}function Gl(t,n){var e=t[6],i=t[3]-e|0,x=Pt(i*4|0);return bN(n,x,0,Rl(t[1],e,i,x))}function xL(t){var n=t.length-1,e=Pt(n*4|0);return qv(e,0,Rl(t,0,n,e))}function kr0(t,n){return t[3]=t[3]-n|0,0}var wr0=0;function zee(t,n,e){return[0,t,n,__r,0,e,wr0,y_r]}function Er0(t){var n=t[2];return[0,t[1],[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],n[12]],t[3],t[4],t[5],t[6],t[7]]}function Sr0(t){return t[3][1]}function Zm(t,n){return t!==n[4]?[0,n[1],n[2],n[3],t,n[5],n[6],n[7]]:n}var aL=function t(n,e){return t.fun(n,e)},gr0=function t(n,e){return t.fun(n,e)},oL=function t(n,e){return t.fun(n,e)},cL=function t(n,e){return t.fun(n,e)},Fr0=function t(n,e){return t.fun(n,e)};N(aL,function(t,n){if(typeof t=="number"){var e=t;if(61<=e)if(92<=e)switch(e){case 92:if(typeof n=="number"&&n===92)return 1;break;case 93:if(typeof n=="number"&&n===93)return 1;break;case 94:if(typeof n=="number"&&n===94)return 1;break;case 95:if(typeof n=="number"&&n===95)return 1;break;case 96:if(typeof n=="number"&&n===96)return 1;break;case 97:if(typeof n=="number"&&n===97)return 1;break;case 98:if(typeof n=="number"&&n===98)return 1;break;case 99:if(typeof n=="number"&&n===99)return 1;break;case 100:if(typeof n=="number"&&ni===n)return 1;break;case 101:if(typeof n=="number"&&L7===n)return 1;break;case 102:if(typeof n=="number"&&Ri===n)return 1;break;case 103:if(typeof n=="number"&&c7===n)return 1;break;case 104:if(typeof n=="number"&&D7===n)return 1;break;case 105:if(typeof n=="number"&&R7===n)return 1;break;case 106:if(typeof n=="number"&&Xt===n)return 1;break;case 107:if(typeof n=="number"&&Qc===n)return 1;break;case 108:if(typeof n=="number"&&fs===n)return 1;break;case 109:if(typeof n=="number"&&Fv===n)return 1;break;case 110:if(typeof n=="number"&&Ht===n)return 1;break;case 111:if(typeof n=="number"&&vf===n)return 1;break;case 112:if(typeof n=="number"&&F7===n)return 1;break;case 113:if(typeof n=="number"&&Pn===n)return 1;break;case 114:if(typeof n=="number"&&u1===n)return 1;break;case 115:if(typeof n=="number"&&Av===n)return 1;break;case 116:if(typeof n=="number"&&x1===n)return 1;break;case 117:if(typeof n=="number"&&A2===n)return 1;break;case 118:if(typeof n=="number"&&z2===n)return 1;break;case 119:if(typeof n=="number"&&Sv===n)return 1;break;case 120:if(typeof n=="number"&&fc===n)return 1;break;default:if(typeof n=="number"&&tl<=n)return 1}else switch(e){case 61:if(typeof n=="number"&&n===61)return 1;break;case 62:if(typeof n=="number"&&n===62)return 1;break;case 63:if(typeof n=="number"&&n===63)return 1;break;case 64:if(typeof n=="number"&&n===64)return 1;break;case 65:if(typeof n=="number"&&n===65)return 1;break;case 66:if(typeof n=="number"&&n===66)return 1;break;case 67:if(typeof n=="number"&&n===67)return 1;break;case 68:if(typeof n=="number"&&n===68)return 1;break;case 69:if(typeof n=="number"&&n===69)return 1;break;case 70:if(typeof n=="number"&&n===70)return 1;break;case 71:if(typeof n=="number"&&n===71)return 1;break;case 72:if(typeof n=="number"&&n===72)return 1;break;case 73:if(typeof n=="number"&&n===73)return 1;break;case 74:if(typeof n=="number"&&n===74)return 1;break;case 75:if(typeof n=="number"&&n===75)return 1;break;case 76:if(typeof n=="number"&&n===76)return 1;break;case 77:if(typeof n=="number"&&n===77)return 1;break;case 78:if(typeof n=="number"&&n===78)return 1;break;case 79:if(typeof n=="number"&&n===79)return 1;break;case 80:if(typeof n=="number"&&n===80)return 1;break;case 81:if(typeof n=="number"&&n===81)return 1;break;case 82:if(typeof n=="number"&&n===82)return 1;break;case 83:if(typeof n=="number"&&n===83)return 1;break;case 84:if(typeof n=="number"&&n===84)return 1;break;case 85:if(typeof n=="number"&&n===85)return 1;break;case 86:if(typeof n=="number"&&n===86)return 1;break;case 87:if(typeof n=="number"&&n===87)return 1;break;case 88:if(typeof n=="number"&&n===88)return 1;break;case 89:if(typeof n=="number"&&n===89)return 1;break;case 90:if(typeof n=="number"&&n===90)return 1;break;default:if(typeof n=="number"&&n===91)return 1}else if(31<=e)switch(e){case 31:if(typeof n=="number"&&n===31)return 1;break;case 32:if(typeof n=="number"&&n===32)return 1;break;case 33:if(typeof n=="number"&&n===33)return 1;break;case 34:if(typeof n=="number"&&n===34)return 1;break;case 35:if(typeof n=="number"&&n===35)return 1;break;case 36:if(typeof n=="number"&&n===36)return 1;break;case 37:if(typeof n=="number"&&n===37)return 1;break;case 38:if(typeof n=="number"&&n===38)return 1;break;case 39:if(typeof n=="number"&&n===39)return 1;break;case 40:if(typeof n=="number"&&n===40)return 1;break;case 41:if(typeof n=="number"&&n===41)return 1;break;case 42:if(typeof n=="number"&&n===42)return 1;break;case 43:if(typeof n=="number"&&n===43)return 1;break;case 44:if(typeof n=="number"&&n===44)return 1;break;case 45:if(typeof n=="number"&&n===45)return 1;break;case 46:if(typeof n=="number"&&n===46)return 1;break;case 47:if(typeof n=="number"&&n===47)return 1;break;case 48:if(typeof n=="number"&&n===48)return 1;break;case 49:if(typeof n=="number"&&n===49)return 1;break;case 50:if(typeof n=="number"&&n===50)return 1;break;case 51:if(typeof n=="number"&&n===51)return 1;break;case 52:if(typeof n=="number"&&n===52)return 1;break;case 53:if(typeof n=="number"&&n===53)return 1;break;case 54:if(typeof n=="number"&&n===54)return 1;break;case 55:if(typeof n=="number"&&n===55)return 1;break;case 56:if(typeof n=="number"&&n===56)return 1;break;case 57:if(typeof n=="number"&&n===57)return 1;break;case 58:if(typeof n=="number"&&n===58)return 1;break;case 59:if(typeof n=="number"&&n===59)return 1;break;default:if(typeof n=="number"&&n===60)return 1}else switch(e){case 0:if(typeof n=="number"&&!n)return 1;break;case 1:if(typeof n=="number"&&n===1)return 1;break;case 2:if(typeof n=="number"&&n===2)return 1;break;case 3:if(typeof n=="number"&&n===3)return 1;break;case 4:if(typeof n=="number"&&n===4)return 1;break;case 5:if(typeof n=="number"&&n===5)return 1;break;case 6:if(typeof n=="number"&&n===6)return 1;break;case 7:if(typeof n=="number"&&n===7)return 1;break;case 8:if(typeof n=="number"&&n===8)return 1;break;case 9:if(typeof n=="number"&&n===9)return 1;break;case 10:if(typeof n=="number"&&n===10)return 1;break;case 11:if(typeof n=="number"&&n===11)return 1;break;case 12:if(typeof n=="number"&&n===12)return 1;break;case 13:if(typeof n=="number"&&n===13)return 1;break;case 14:if(typeof n=="number"&&n===14)return 1;break;case 15:if(typeof n=="number"&&n===15)return 1;break;case 16:if(typeof n=="number"&&n===16)return 1;break;case 17:if(typeof n=="number"&&n===17)return 1;break;case 18:if(typeof n=="number"&&n===18)return 1;break;case 19:if(typeof n=="number"&&n===19)return 1;break;case 20:if(typeof n=="number"&&n===20)return 1;break;case 21:if(typeof n=="number"&&n===21)return 1;break;case 22:if(typeof n=="number"&&n===22)return 1;break;case 23:if(typeof n=="number"&&n===23)return 1;break;case 24:if(typeof n=="number"&&n===24)return 1;break;case 25:if(typeof n=="number"&&n===25)return 1;break;case 26:if(typeof n=="number"&&n===26)return 1;break;case 27:if(typeof n=="number"&&n===27)return 1;break;case 28:if(typeof n=="number"&&n===28)return 1;break;case 29:if(typeof n=="number"&&n===29)return 1;break;default:if(typeof n=="number"&&n===30)return 1}}else switch(t[0]){case 0:if(typeof n!="number"&&n[0]===0){var i=n[1],x=u(u(oL,t[1]),i),c=x&&qn(t[2],n[2]);return c}break;case 1:if(typeof n!="number"&&n[0]===1){var s=n[1],p=u(u(cL,t[1]),s),y=p&&qn(t[2],n[2]);return y}break;case 2:if(typeof n!="number"&&n[0]===2){var T=n[1],E=t[1],h=Wv(E[1],T[1]),w=h&&qn(E[2],T[2]),G=w&&qn(E[3],T[3]),A=G&&(E[4]===T[4]?1:0);return A}break;case 3:if(typeof n!="number"&&n[0]===3){var S=n[1],M=t[1],K=Wv(M[1],S[1]);if(K)var V=S[2],f0=u(u(Fr0,M[2]),V);else var f0=K;var m0=f0&&(M[3]===S[3]?1:0);return m0}break;case 4:if(typeof n!="number"&&n[0]===4){var k0=Wv(t[1],n[1]),g0=k0&&qn(t[2],n[2]),e0=g0&&qn(t[3],n[3]);return e0}break;case 5:if(typeof n!="number"&&n[0]===5){var x0=Wv(t[1],n[1]),l=x0&&qn(t[2],n[2]),c0=l&&qn(t[3],n[3]);return c0}break;case 6:if(typeof n!="number"&&n[0]===6)return qn(t[1],n[1]);break;case 7:if(typeof n!="number"&&n[0]===7){var t0=qn(t[1],n[1]);return t0&&Wv(t[2],n[2])}break;case 8:if(typeof n!="number"&&n[0]===8){var a0=Wv(t[1],n[1]),w0=a0&&qn(t[2],n[2]),_0=w0&&qn(t[3],n[3]);return _0}break;case 9:if(typeof n!="number"&&n[0]===9){var E0=n[1];return u(u(gr0,t[1]),E0)}break;case 10:if(typeof n!="number"&&n[0]===10){var X0=n[1],b=u(u(oL,t[1]),X0),G0=b&&(t[2]==n[2]?1:0),X=G0&&qn(t[3],n[3]);return X}break;default:if(typeof n!="number"&&n[0]===11){var s0=n[1],dr=u(u(cL,t[1]),s0),Ar=dr&&(t[2]==n[2]?1:0),ar=Ar&&qn(t[3],n[3]);return ar}}return 0}),N(gr0,function(t,n){if(t){if(n)return 1}else if(!n)return 1;return 0}),N(oL,function(t,n){switch(t){case 0:if(!n)return 1;break;case 1:if(n===1)return 1;break;case 2:if(n===2)return 1;break;case 3:if(n===3)return 1;break;default:if(4<=n)return 1}return 0}),N(cL,function(t,n){switch(t){case 0:if(!n)return 1;break;case 1:if(n===1)return 1;break;default:if(2<=n)return 1}return 0}),N(Fr0,function(t,n){var e=qn(t[1],n[1]),i=e&&qn(t[2],n[2]),x=i&&qn(t[3],n[3]);return x});function Tr0(t){if(typeof t=="number"){var n=t;if(61<=n){if(92<=n)switch(n){case 92:return Gkr;case 93:return Mkr;case 94:return Bkr;case 95:return qkr;case 96:return Ukr;case 97:return Hkr;case 98:return Xkr;case 99:return Ykr;case 100:return Vkr;case 101:return zkr;case 102:return Kkr;case 103:return Wkr;case 104:return Jkr;case 105:return $kr;case 106:return Zkr;case 107:return Qkr;case 108:return rwr;case 109:return ewr;case 110:return nwr;case 111:return twr;case 112:return uwr;case 113:return iwr;case 114:return fwr;case 115:return xwr;case 116:return awr;case 117:return owr;case 118:return cwr;case 119:return swr;case 120:return vwr;default:return lwr}switch(n){case 61:return xkr;case 62:return akr;case 63:return okr;case 64:return ckr;case 65:return skr;case 66:return vkr;case 67:return lkr;case 68:return bkr;case 69:return pkr;case 70:return mkr;case 71:return _kr;case 72:return ykr;case 73:return dkr;case 74:return hkr;case 75:return kkr;case 76:return wkr;case 77:return Ekr;case 78:return Skr;case 79:return gkr;case 80:return Fkr;case 81:return Tkr;case 82:return Okr;case 83:return Ikr;case 84:return Akr;case 85:return Nkr;case 86:return Ckr;case 87:return Pkr;case 88:return Dkr;case 89:return Lkr;case 90:return Rkr;default:return jkr}}if(31<=n)switch(n){case 31:return Nhr;case 32:return Chr;case 33:return Phr;case 34:return Dhr;case 35:return Lhr;case 36:return Rhr;case 37:return jhr;case 38:return Ghr;case 39:return Mhr;case 40:return Bhr;case 41:return qhr;case 42:return Uhr;case 43:return Hhr;case 44:return Xhr;case 45:return Yhr;case 46:return Vhr;case 47:return zhr;case 48:return Khr;case 49:return Whr;case 50:return Jhr;case 51:return $hr;case 52:return Zhr;case 53:return Qhr;case 54:return rkr;case 55:return ekr;case 56:return nkr;case 57:return tkr;case 58:return ukr;case 59:return ikr;default:return fkr}switch(n){case 0:return rhr;case 1:return ehr;case 2:return nhr;case 3:return thr;case 4:return uhr;case 5:return ihr;case 6:return fhr;case 7:return xhr;case 8:return ahr;case 9:return ohr;case 10:return chr;case 11:return shr;case 12:return vhr;case 13:return lhr;case 14:return bhr;case 15:return phr;case 16:return mhr;case 17:return _hr;case 18:return yhr;case 19:return dhr;case 20:return hhr;case 21:return khr;case 22:return whr;case 23:return Ehr;case 24:return Shr;case 25:return ghr;case 26:return Fhr;case 27:return Thr;case 28:return Ohr;case 29:return Ihr;default:return Ahr}}else switch(t[0]){case 0:return bwr;case 1:return pwr;case 2:return mwr;case 3:return _wr;case 4:return ywr;case 5:return dwr;case 6:return hwr;case 7:return kwr;case 8:return wwr;case 9:return Ewr;case 10:return Swr;default:return gwr}}function sL(t){if(typeof t=="number"){var n=t;if(61<=n){if(92<=n)switch(n){case 92:return hdr;case 93:return kdr;case 94:return wdr;case 95:return Edr;case 96:return Sdr;case 97:return gdr;case 98:return Fdr;case 99:return Tdr;case 100:return Odr;case 101:return Idr;case 102:return Adr;case 103:return Ndr;case 104:return Cdr;case 105:return Pdr;case 106:return Ddr;case 107:return Ldr;case 108:return Rdr;case 109:return jdr;case 110:return Gdr;case 111:return Mdr;case 112:return Bdr;case 113:return qdr;case 114:return Udr;case 115:return Hdr;case 116:return Xdr;case 117:return Ydr;case 118:return Vdr;case 119:return zdr;case 120:return Kdr;default:return Wdr}switch(n){case 61:return Hyr;case 62:return Xyr;case 63:return Yyr;case 64:return Vyr;case 65:return zyr;case 66:return Kyr;case 67:return Wyr;case 68:return Jyr;case 69:return $yr;case 70:return Zyr;case 71:return Qyr;case 72:return rdr;case 73:return edr;case 74:return ndr;case 75:return tdr;case 76:return udr;case 77:return idr;case 78:return fdr;case 79:return xdr;case 80:return adr;case 81:return odr;case 82:return cdr;case 83:return sdr;case 84:return vdr;case 85:return ldr;case 86:return bdr;case 87:return pdr;case 88:return mdr;case 89:return _dr;case 90:return ydr;default:return ddr}}if(31<=n)switch(n){case 31:return lyr;case 32:return byr;case 33:return pyr;case 34:return myr;case 35:return _yr;case 36:return yyr;case 37:return dyr;case 38:return hyr;case 39:return kyr;case 40:return wyr;case 41:return Eyr;case 42:return Syr;case 43:return gyr;case 44:return Fyr;case 45:return Tyr;case 46:return Oyr;case 47:return Iyr;case 48:return Ayr;case 49:return Nyr;case 50:return Cyr;case 51:return Pyr;case 52:return Dyr;case 53:return Lyr;case 54:return Ryr;case 55:return jyr;case 56:return Gyr;case 57:return Myr;case 58:return Byr;case 59:return qyr;default:return Uyr}switch(n){case 0:return R_r;case 1:return j_r;case 2:return G_r;case 3:return M_r;case 4:return B_r;case 5:return q_r;case 6:return U_r;case 7:return H_r;case 8:return X_r;case 9:return Y_r;case 10:return V_r;case 11:return z_r;case 12:return K_r;case 13:return W_r;case 14:return J_r;case 15:return $_r;case 16:return Z_r;case 17:return Q_r;case 18:return ryr;case 19:return eyr;case 20:return nyr;case 21:return tyr;case 22:return uyr;case 23:return iyr;case 24:return fyr;case 25:return xyr;case 26:return ayr;case 27:return oyr;case 28:return cyr;case 29:return syr;default:return vyr}}else switch(t[0]){case 2:return t[1][3];case 3:return t[1][2][3];case 5:var e=Te(Jdr,t[3]);return Te($dr,Te(t[2],e));case 9:return t[1]?Zdr:Qdr;case 0:case 1:return t[2];case 6:case 7:return t[1];default:return t[3]}}function Ml(t){return u(Qn(L_r),t)}function vL(t,n){var e=t&&t[1],i=0;if(typeof n=="number")if(Pn===n)var x=d_r,c=h_r;else i=1;else switch(n[0]){case 3:var x=k_r,c=w_r;break;case 5:var x=E_r,c=S_r;break;case 6:case 9:i=1;break;case 0:case 10:var x=F_r,c=T_r;break;case 1:case 11:var x=O_r,c=I_r;break;case 2:case 8:var x=A_r,c=N_r;break;default:var x=C_r,c=P_r}if(i)var x=g_r,c=Ml(sL(n));return e?Te(x,Te(D_r,c)):c}function lL(t){return 45>>0)var i=q(t);else switch(e){case 0:var i=1;break;case 1:var i=2;break;case 2:var i=0;break;default:if(B0(t,2),Gs(j(t))===0){var x=R1(j(t));if(x===0)if(Nn(j(t))===0&&Nn(j(t))===0)var c=Nn(j(t))!==0?1:0,i=c&&q(t);else var i=q(t);else if(x===1&&Nn(j(t))===0)for(;;){var s=N1(j(t));if(s!==0){var p=s!==1?1:0,i=p&&q(t);break}}else var i=q(t)}else var i=q(t)}if(2>>0)throw[0,wn,Fwr];switch(i){case 0:continue;case 1:return 1;default:if(iL(dr0(t)))continue;return kr0(t,1),0}}}function g9(t,n){var e=n-t[3][2]|0;return[0,Sr0(t),e]}function Hl(t,n,e){var i=g9(t,e),x=g9(t,n);return[0,t[1],x,i]}function Ru(t,n){return g9(t,n[6])}function y7(t,n){return g9(t,n[3])}function rt(t,n){return Hl(t,n[6],n[3])}function Wr0(t,n){var e=0;if(typeof n=="number")e=1;else switch(n[0]){case 2:var i=n[1][1];break;case 3:return n[1][1];case 4:var i=n[1];break;case 7:var i=n[2];break;case 5:case 8:return n[1];default:e=1}return e?rt(t,t[2]):i}function ju(t,n,e){return[0,t[1],t[2],t[3],t[4],t[5],[0,[0,n,e],t[6]],t[7]]}function Jr0(t,n,e){return ju(t,n,[10,Ml(e)])}function _L(t,n,e,i){return ju(t,n,[12,e,i])}function wi(t,n){return ju(t,n,QDr)}function d7(t,n){var e=n[3],i=[0,Sr0(t)+1|0,e];return[0,t[1],t[2],i,t[4],t[5],t[6],t[7]]}function $r0(t){var n=nn(t);return n!==0&&Ht===Ot(t,n-1|0)?p7(t,0,n-1|0):t}function Ei(t,n,e,i,x){var c=[0,t[1],n,e],s=Gt(i),p=x?0:1;return[0,c,[0,p,s,t[7][3][1]>>0)var y=q(i);else switch(p){case 0:var y=2;break;case 1:for(;;){B0(i,3);var T=j(i);if(-1>>0)return ke(XDr);switch(y){case 0:var S=Qr0(c,e,i,2,0),M=S[1],K=Bi(Te(YDr,S[2])),V=0<=K?1:0,f0=V&&(K<=55295?1:0);if(f0)var k0=f0;else var m0=57344<=K?1:0,k0=m0&&(K<=mI?1:0);var g0=k0?Zr0(c,M,K):ju(c,M,37);g1(x,K);var c=g0;continue;case 1:var e0=Qr0(c,e,i,3,1),x0=Bi(Te(VDr,e0[2])),l=Zr0(c,e0[1],x0);g1(x,x0);var c=l;continue;case 2:return[0,c,Gt(x)];default:Gl(i,x);continue}}}function Dt(t,n,e){var i=wi(t,rt(t,n));return $v(n),a(e,i,n)}function j1(t,n,e){for(var i=t;;){En(e);var x=j(e);if(-1>>0)var p=q(e);else switch(s){case 0:for(;;){B0(e,3);var y=j(e);if(-1>>0){var A=wi(i,rt(i,e));return[0,A,y7(A,e)]}switch(p){case 0:var S=d7(i,e);Gl(e,n);var i=S;continue;case 1:var M=i[4]?_L(i,rt(i,e),Iwr,Owr):i;return[0,M,y7(M,e)];case 2:if(i[4])return[0,i,y7(i,e)];mn(n,Awr);continue;default:Gl(e,n);continue}}}function e2(t,n,e){for(;;){En(e);var i=j(e),x=13>>0)var c=q(e);else switch(x){case 0:var c=0;break;case 1:for(;;){B0(e,2);var s=j(e);if(-1>>0)return ke(Nwr);switch(c){case 0:return[0,t,y7(t,e)];case 1:var T=y7(t,e),E=d7(t,e),h=$m(e);return[0,E,[0,T[1],T[2]-h|0]];default:Gl(e,n);continue}}}function ee0(t,n){function e(k0){return B0(k0,3),Vu(j(k0))===0?2:q(k0)}En(n);var i=j(n),x=fc>>0)var c=q(n);else switch(x){case 1:var c=16;break;case 2:var c=15;break;case 3:B0(n,15);var c=fi(j(n))===0?15:q(n);break;case 4:B0(n,4);var c=Vu(j(n))===0?e(n):q(n);break;case 5:B0(n,11);var c=Vu(j(n))===0?e(n):q(n);break;case 7:var c=5;break;case 8:var c=6;break;case 9:var c=7;break;case 10:var c=8;break;case 11:var c=9;break;case 12:B0(n,14);var s=R1(j(n));if(s===0)var c=Nn(j(n))===0&&Nn(j(n))===0&&Nn(j(n))===0?12:q(n);else if(s===1&&Nn(j(n))===0)for(;;){var p=N1(j(n));if(p!==0){var c=p===1?13:q(n);break}}else var c=q(n);break;case 13:var c=10;break;case 14:B0(n,14);var c=Nn(j(n))===0&&Nn(j(n))===0?1:q(n);break;default:var c=0}if(16>>0)return ke(ADr);switch(c){case 1:var y=Se(n);return[0,t,y,[0,Bi(Te(NDr,y))],0];case 2:var T=Se(n),E=Bi(Te(CDr,T));return C4<=E?[0,t,T,[0,E>>>3|0,48+(E&7)|0],1]:[0,t,T,[0,E],1];case 3:var h=Se(n);return[0,t,h,[0,Bi(Te(PDr,h))],1];case 4:return[0,t,DDr,[0,0],0];case 5:return[0,t,LDr,[0,8],0];case 6:return[0,t,RDr,[0,12],0];case 7:return[0,t,jDr,[0,10],0];case 8:return[0,t,GDr,[0,13],0];case 9:return[0,t,MDr,[0,9],0];case 10:return[0,t,BDr,[0,11],0];case 11:var w=Se(n);return[0,t,w,[0,Bi(Te(qDr,w))],1];case 12:var G=Se(n);return[0,t,G,[0,Bi(Te(UDr,p7(G,1,nn(G)-1|0)))],0];case 13:var A=Se(n),S=Bi(Te(HDr,p7(A,2,nn(A)-3|0))),M=mI>>0)var E=q(c);else switch(T){case 0:var E=3;break;case 1:for(;;){B0(c,4);var h=j(c);if(-1>>0)return ke(Cwr);switch(E){case 0:var A=Se(c);if(mn(i,A),qn(n,A))return[0,s,y7(s,c),p];mn(e,A);continue;case 1:mn(i,Pwr);var S=ee0(s,c),M=S[4],K=M||p;mn(i,S[2]);var V=S[3];hz(function(w0){return g1(e,w0)},V);var s=S[1],p=K;continue;case 2:var f0=Se(c);mn(i,f0);var m0=d7(wi(s,rt(s,c)),c);return mn(e,f0),[0,m0,y7(m0,c),p];case 3:var k0=Se(c);mn(i,k0);var g0=wi(s,rt(s,c));return mn(e,k0),[0,g0,y7(g0,c),p];default:var e0=c[6],x0=c[3]-e0|0,l=Pt(x0*4|0),c0=Rl(c[1],e0,x0,l);bN(i,l,0,c0),bN(e,l,0,c0);continue}}}function te0(t,n,e,i,x){for(var c=t;;){En(x);var s=j(x),p=96>>0)var y=q(x);else switch(p){case 0:var y=0;break;case 1:for(;;){B0(x,6);var T=j(x);if(-1>>0)return ke(Dwr);switch(y){case 0:return[0,wi(c,rt(c,x)),1];case 1:return qi(i,96),[0,c,1];case 2:return mn(i,Lwr),[0,c,0];case 3:qi(e,92),qi(i,92);var A=ee0(c,x),S=A[2];mn(e,S),mn(i,S);var M=A[3];hz(function(m0){return g1(n,m0)},M);var c=A[1];continue;case 4:mn(e,Rwr),mn(i,jwr),mn(n,Gwr);var c=d7(c,x);continue;case 5:var K=Se(x);mn(e,K),mn(i,K),qi(n,10);var c=d7(c,x);continue;default:var V=Se(x);mn(e,V),mn(i,V),mn(n,V);continue}}}function Kee(t,n){function e(U0){for(;;)if(B0(U0,33),_n(j(U0))!==0)return q(U0)}function i(U0){for(;;)if(B0(U0,27),_n(j(U0))!==0)return q(U0)}function x(U0){B0(U0,26);var L0=Mt(j(U0));if(L0===0){for(;;)if(B0(U0,25),_n(j(U0))!==0)return q(U0)}return L0===1?i(U0):q(U0)}function c(U0){for(;;)if(B0(U0,27),_n(j(U0))!==0)return q(U0)}function s(U0){B0(U0,26);var L0=Mt(j(U0));if(L0===0){for(;;)if(B0(U0,25),_n(j(U0))!==0)return q(U0)}return L0===1?c(U0):q(U0)}function p(U0){r:for(;;){if(vn(j(U0))===0)for(;;){B0(U0,28);var L0=qc(j(U0));if(3>>0)return q(U0);switch(L0){case 0:return c(U0);case 1:continue;case 2:continue r;default:return s(U0)}}return q(U0)}}function y(U0){B0(U0,33);var L0=Hr0(j(U0));if(3>>0)return q(U0);switch(L0){case 0:return e(U0);case 1:var Re=P1(j(U0));if(Re===0)for(;;){B0(U0,28);var He=Qv(j(U0));if(2>>0)return q(U0);switch(He){case 0:return c(U0);case 1:continue;default:return s(U0)}}if(Re===1)for(;;){B0(U0,28);var he=qc(j(U0));if(3>>0)return q(U0);switch(he){case 0:return c(U0);case 1:continue;case 2:return p(U0);default:return s(U0)}}return q(U0);case 2:for(;;){B0(U0,28);var _e=Qv(j(U0));if(2<_e>>>0)return q(U0);switch(_e){case 0:return i(U0);case 1:continue;default:return x(U0)}}default:for(;;){B0(U0,28);var Zn=qc(j(U0));if(3>>0)return q(U0);switch(Zn){case 0:return i(U0);case 1:continue;case 2:return p(U0);default:return x(U0)}}}}function T(U0){B0(U0,31);var L0=Mt(j(U0));if(L0===0){for(;;)if(B0(U0,29),_n(j(U0))!==0)return q(U0)}return L0===1?e(U0):q(U0)}function E(U0){return B0(U0,3),zr0(j(U0))===0?3:q(U0)}function h(U0){return _9(j(U0))===0&&l9(j(U0))===0&&Yr0(j(U0))===0&&Lr0(j(U0))===0&&Rr0(j(U0))===0&&pL(j(U0))===0&&Bl(j(U0))===0&&_9(j(U0))===0&&Gs(j(U0))===0&&jr0(j(U0))===0&&Ul(j(U0))===0?3:q(U0)}function w(U0){B0(U0,34);var L0=Pr0(j(U0));if(3>>0)return q(U0);switch(L0){case 0:return e(U0);case 1:for(;;){B0(U0,34);var Re=Rs(j(U0));if(4>>0)return q(U0);switch(Re){case 0:return e(U0);case 1:continue;case 2:return y(U0);case 3:r:for(;;){if(vn(j(U0))===0)for(;;){B0(U0,34);var He=Rs(j(U0));if(4>>0)return q(U0);switch(He){case 0:return e(U0);case 1:continue;case 2:return y(U0);case 3:continue r;default:return T(U0)}}return q(U0)}default:return T(U0)}}case 2:return y(U0);default:return T(U0)}}function G(U0){for(;;)if(B0(U0,19),_n(j(U0))!==0)return q(U0)}function A(U0){B0(U0,34);var L0=Qv(j(U0));if(2>>0)return q(U0);switch(L0){case 0:return e(U0);case 1:for(;;){B0(U0,34);var Re=qc(j(U0));if(3>>0)return q(U0);switch(Re){case 0:return e(U0);case 1:continue;case 2:r:for(;;){if(vn(j(U0))===0)for(;;){B0(U0,34);var He=qc(j(U0));if(3>>0)return q(U0);switch(He){case 0:return e(U0);case 1:continue;case 2:continue r;default:return T(U0)}}return q(U0)}default:return T(U0)}}default:return T(U0)}}function S(U0){for(;;)if(B0(U0,17),_n(j(U0))!==0)return q(U0)}function M(U0){for(;;)if(B0(U0,17),_n(j(U0))!==0)return q(U0)}function K(U0){for(;;)if(B0(U0,11),_n(j(U0))!==0)return q(U0)}function V(U0){for(;;)if(B0(U0,11),_n(j(U0))!==0)return q(U0)}function f0(U0){for(;;)if(B0(U0,15),_n(j(U0))!==0)return q(U0)}function m0(U0){for(;;)if(B0(U0,15),_n(j(U0))!==0)return q(U0)}function k0(U0){for(;;)if(B0(U0,23),_n(j(U0))!==0)return q(U0)}function g0(U0){for(;;)if(B0(U0,23),_n(j(U0))!==0)return q(U0)}function e0(U0){B0(U0,32);var L0=Mt(j(U0));if(L0===0){for(;;)if(B0(U0,30),_n(j(U0))!==0)return q(U0)}return L0===1?e(U0):q(U0)}function x0(U0){r:for(;;){if(vn(j(U0))===0)for(;;){B0(U0,34);var L0=qr0(j(U0));if(4>>0)return q(U0);switch(L0){case 0:return e(U0);case 1:return A(U0);case 2:continue;case 3:continue r;default:return e0(U0)}}return q(U0)}}En(n);var l=j(n),c0=tf>>0)var t0=q(n);else switch(c0){case 0:var t0=98;break;case 1:var t0=99;break;case 2:if(B0(n,1),Mc(j(n))===0){for(;;)if(B0(n,1),Mc(j(n))!==0){var t0=q(n);break}}else var t0=q(n);break;case 3:var t0=0;break;case 4:B0(n,0);var a0=fi(j(n))!==0?1:0,t0=a0&&q(n);break;case 5:B0(n,88);var t0=Ui(j(n))===0?(B0(n,58),Ui(j(n))===0?54:q(n)):q(n);break;case 6:var t0=7;break;case 7:B0(n,95);var w0=j(n),_0=32>>0)var t0=q(n);else switch(b){case 0:B0(n,83);var t0=Ui(j(n))===0?70:q(n);break;case 1:var t0=4;break;default:var t0=69}break;case 14:B0(n,80);var G0=j(n),X=42>>0)var t0=q(n);else switch(ar){case 0:var t0=e(n);break;case 1:continue;case 2:var t0=y(n);break;case 3:r:for(;;){if(vn(j(n))===0)for(;;){B0(n,34);var W0=Rs(j(n));if(4>>0)var Lr=q(n);else switch(W0){case 0:var Lr=e(n);break;case 1:continue;case 2:var Lr=y(n);break;case 3:continue r;default:var Lr=T(n)}break}else var Lr=q(n);var t0=Lr;break}break;default:var t0=T(n)}break}else var t0=q(n);break;case 18:B0(n,93);var Tr=Dr0(j(n));if(2>>0)var t0=q(n);else switch(Tr){case 0:B0(n,2);var Hr=f9(j(n));if(2
>>0)var t0=q(n);else switch(Hr){case 0:for(;;){var Or=f9(j(n));if(2>>0)var t0=q(n);else switch(Or){case 0:continue;case 1:var t0=E(n);break;default:var t0=h(n)}break}break;case 1:var t0=E(n);break;default:var t0=h(n)}break;case 1:var t0=5;break;default:var t0=92}break;case 19:B0(n,34);var xr=mL(j(n));if(8>>0)var t0=q(n);else switch(xr){case 0:var t0=e(n);break;case 1:var t0=w(n);break;case 2:for(;;){B0(n,20);var Rr=Xr0(j(n));if(4>>0)var t0=q(n);else switch(Rr){case 0:var t0=G(n);break;case 1:var t0=A(n);break;case 2:continue;case 3:for(;;){B0(n,18);var Wr=i9(j(n));if(3>>0)var t0=q(n);else switch(Wr){case 0:var t0=S(n);break;case 1:var t0=A(n);break;case 2:continue;default:B0(n,17);var Jr=Mt(j(n));if(Jr===0){for(;;)if(B0(n,17),_n(j(n))!==0){var t0=q(n);break}}else var t0=Jr===1?S(n):q(n)}break}break;default:B0(n,19);var or=Mt(j(n));if(or===0){for(;;)if(B0(n,19),_n(j(n))!==0){var t0=q(n);break}}else var t0=or===1?G(n):q(n)}break}break;case 3:for(;;){B0(n,18);var _r=i9(j(n));if(3<_r>>>0)var t0=q(n);else switch(_r){case 0:var t0=M(n);break;case 1:var t0=A(n);break;case 2:continue;default:B0(n,17);var Ir=Mt(j(n));if(Ir===0){for(;;)if(B0(n,17),_n(j(n))!==0){var t0=q(n);break}}else var t0=Ir===1?M(n):q(n)}break}break;case 4:B0(n,33);var fe=Gr0(j(n));if(fe===0)var t0=e(n);else if(fe===1)for(;;){B0(n,12);var v0=w9(j(n));if(3>>0)var t0=q(n);else switch(v0){case 0:var t0=K(n);break;case 1:continue;case 2:r:for(;;){if(Bc(j(n))===0)for(;;){B0(n,12);var P=w9(j(n));if(3

>>0)var Q=q(n);else switch(P){case 0:var Q=V(n);break;case 1:continue;case 2:continue r;default:B0(n,10);var L=Mt(j(n));if(L===0){for(;;)if(B0(n,9),_n(j(n))!==0){var Q=q(n);break}}else var Q=L===1?V(n):q(n)}break}else var Q=q(n);var t0=Q;break}break;default:B0(n,10);var i0=Mt(j(n));if(i0===0){for(;;)if(B0(n,9),_n(j(n))!==0){var t0=q(n);break}}else var t0=i0===1?K(n):q(n)}break}else var t0=q(n);break;case 5:var t0=y(n);break;case 6:B0(n,33);var l0=Mr0(j(n));if(l0===0)var t0=e(n);else if(l0===1)for(;;){B0(n,16);var S0=h9(j(n));if(3>>0)var t0=q(n);else switch(S0){case 0:var t0=f0(n);break;case 1:continue;case 2:r:for(;;){if(Vu(j(n))===0)for(;;){B0(n,16);var T0=h9(j(n));if(3>>0)var R0=q(n);else switch(T0){case 0:var R0=m0(n);break;case 1:continue;case 2:continue r;default:B0(n,14);var rr=Mt(j(n));if(rr===0){for(;;)if(B0(n,13),_n(j(n))!==0){var R0=q(n);break}}else var R0=rr===1?m0(n):q(n)}break}else var R0=q(n);var t0=R0;break}break;default:B0(n,14);var B=Mt(j(n));if(B===0){for(;;)if(B0(n,13),_n(j(n))!==0){var t0=q(n);break}}else var t0=B===1?f0(n):q(n)}break}else var t0=q(n);break;case 7:B0(n,33);var Z=Or0(j(n));if(Z===0)var t0=e(n);else if(Z===1)for(;;){B0(n,24);var p0=E9(j(n));if(3>>0)var t0=q(n);else switch(p0){case 0:var t0=k0(n);break;case 1:continue;case 2:r:for(;;){if(Nn(j(n))===0)for(;;){B0(n,24);var b0=E9(j(n));if(3>>0)var q0=q(n);else switch(b0){case 0:var q0=g0(n);break;case 1:continue;case 2:continue r;default:B0(n,22);var O0=Mt(j(n));if(O0===0){for(;;)if(B0(n,21),_n(j(n))!==0){var q0=q(n);break}}else var q0=O0===1?g0(n):q(n)}break}else var q0=q(n);var t0=q0;break}break;default:B0(n,22);var er=Mt(j(n));if(er===0){for(;;)if(B0(n,21),_n(j(n))!==0){var t0=q(n);break}}else var t0=er===1?k0(n):q(n)}break}else var t0=q(n);break;default:var t0=e0(n)}break;case 20:B0(n,34);var yr=o9(j(n));if(5>>0)var t0=q(n);else switch(yr){case 0:var t0=e(n);break;case 1:var t0=w(n);break;case 2:for(;;){B0(n,34);var vr=o9(j(n));if(5>>0)var t0=q(n);else switch(vr){case 0:var t0=e(n);break;case 1:var t0=w(n);break;case 2:continue;case 3:var t0=y(n);break;case 4:var t0=x0(n);break;default:var t0=e0(n)}break}break;case 3:var t0=y(n);break;case 4:var t0=x0(n);break;default:var t0=e0(n)}break;case 21:var t0=46;break;case 22:var t0=44;break;case 23:B0(n,78);var $0=j(n),Sr=59<$0?61<$0?-1:Vr(tN,$0-60|0)-1|0:-1,t0=Sr===0?(B0(n,62),Ui(j(n))===0?61:q(n)):Sr===1?55:q(n);break;case 24:B0(n,90);var Mr=bL(j(n)),t0=Mr===0?(B0(n,57),Ui(j(n))===0?53:q(n)):Mr===1?91:q(n);break;case 25:B0(n,79);var Br=bL(j(n));if(Br===0)var t0=56;else if(Br===1){B0(n,66);var qr=bL(j(n)),t0=qr===0?63:qr===1?(B0(n,65),Ui(j(n))===0?64:q(n)):q(n)}else var t0=q(n);break;case 26:B0(n,50);var jr=j(n),$r=45>>0)return ke(TPr);var I=t0;if(50<=I)switch(I){case 50:return[0,t,85];case 51:return[0,t,88];case 52:return[0,t,87];case 53:return[0,t,94];case 54:return[0,t,95];case 55:return[0,t,96];case 56:return[0,t,97];case 57:return[0,t,92];case 58:return[0,t,93];case 59:return[0,t,vf];case 60:return[0,t,F7];case 61:return[0,t,69];case 62:return[0,t,ni];case 63:return[0,t,68];case 64:return[0,t,67];case 65:return[0,t,Ri];case 66:return[0,t,L7];case 67:return[0,t,78];case 68:return[0,t,77];case 69:return[0,t,75];case 70:return[0,t,76];case 71:return[0,t,73];case 72:return[0,t,72];case 73:return[0,t,71];case 74:return[0,t,70];case 75:return[0,t,79];case 76:return[0,t,80];case 77:return[0,t,81];case 78:return[0,t,98];case 79:return[0,t,99];case 80:return[0,t,c7];case 81:return[0,t,D7];case 82:return[0,t,Xt];case 83:return[0,t,Qc];case 84:return[0,t,fs];case 85:return[0,t,89];case 86:return[0,t,91];case 87:return[0,t,90];case 88:return[0,t,Fv];case 89:return[0,t,Ht];case 90:return[0,t,82];case 91:return[0,t,11];case 92:return[0,t,74];case 93:return[0,t,R7];case 94:return[0,t,13];case 95:return[0,t,14];case 96:return[2,wi(t,rt(t,n))];case 97:var U=n[6];Kr0(n);var Y=Hl(t,U,n[3]);fL(n,U);var y0=Ll(n),D0=re0(t,y0),I0=D0[2],D=Ee(I0,PPr);if(0<=D){if(!(0>>0)var _e=q(L0);else switch(Re){case 0:continue;case 1:r:for(;;){if(Bc(j(L0))===0)for(;;){var He=t9(j(L0));if(2>>0)var he=q(L0);else switch(He){case 0:continue;case 1:continue r;default:var he=0}break}else var he=q(L0);var _e=he;break}break;default:var _e=0}break}else var _e=q(L0);return _e===0?[0,U0,[1,0,Se(L0)]]:ke(FPr)});case 10:return[0,t,[1,0,Se(n)]];case 11:return Dt(t,n,function(U0,L0){if(En(L0),Ls(j(L0))===0&&s9(j(L0))===0&&Bc(j(L0))===0)for(;;){B0(L0,0);var Re=n9(j(L0));if(Re!==0){if(Re===1)r:for(;;){if(Bc(j(L0))===0)for(;;){B0(L0,0);var He=n9(j(L0));if(He!==0){if(He===1)continue r;var he=q(L0);break}}else var he=q(L0);var _e=he;break}else var _e=q(L0);break}}else var _e=q(L0);return _e===0?[0,U0,[0,0,Se(L0)]]:ke(gPr)});case 12:return[0,t,[0,0,Se(n)]];case 13:return Dt(t,n,function(U0,L0){if(En(L0),Ls(j(L0))===0&&p9(j(L0))===0&&Vu(j(L0))===0)for(;;){var Re=c9(j(L0));if(2>>0)var _e=q(L0);else switch(Re){case 0:continue;case 1:r:for(;;){if(Vu(j(L0))===0)for(;;){var He=c9(j(L0));if(2>>0)var he=q(L0);else switch(He){case 0:continue;case 1:continue r;default:var he=0}break}else var he=q(L0);var _e=he;break}break;default:var _e=0}break}else var _e=q(L0);return _e===0?[0,U0,[1,1,Se(L0)]]:ke(SPr)});case 14:return[0,t,[1,1,Se(n)]];case 15:return Dt(t,n,function(U0,L0){if(En(L0),Ls(j(L0))===0&&p9(j(L0))===0&&Vu(j(L0))===0)for(;;){B0(L0,0);var Re=a9(j(L0));if(Re!==0){if(Re===1)r:for(;;){if(Vu(j(L0))===0)for(;;){B0(L0,0);var He=a9(j(L0));if(He!==0){if(He===1)continue r;var he=q(L0);break}}else var he=q(L0);var _e=he;break}else var _e=q(L0);break}}else var _e=q(L0);return _e===0?[0,U0,[0,3,Se(L0)]]:ke(EPr)});case 16:return[0,t,[0,3,Se(n)]];case 17:return Dt(t,n,function(U0,L0){if(En(L0),Ls(j(L0))===0)for(;;){var Re=j(L0),He=47>>0)var _e=q(L0);else switch(Re){case 0:continue;case 1:r:for(;;){if(Nn(j(L0))===0)for(;;){var He=u9(j(L0));if(2>>0)var he=q(L0);else switch(He){case 0:continue;case 1:continue r;default:var he=0}break}else var he=q(L0);var _e=he;break}break;default:var _e=0}break}else var _e=q(L0);return _e===0?[0,U0,[1,2,Se(L0)]]:ke(hPr)});case 23:return Dt(t,n,function(U0,L0){if(En(L0),Ls(j(L0))===0&&Qm(j(L0))===0&&Nn(j(L0))===0)for(;;){B0(L0,0);var Re=y9(j(L0));if(Re!==0){if(Re===1)r:for(;;){if(Nn(j(L0))===0)for(;;){B0(L0,0);var He=y9(j(L0));if(He!==0){if(He===1)continue r;var he=q(L0);break}}else var he=q(L0);var _e=he;break}else var _e=q(L0);break}}else var _e=q(L0);return _e===0?[0,U0,[0,4,Se(L0)]]:ke(dPr)});case 25:return Dt(t,n,function(U0,L0){function Re(cn){for(;;){var tt=ki(j(cn));if(2>>0)return q(cn);switch(tt){case 0:continue;case 1:r:for(;;){if(vn(j(cn))===0)for(;;){var Tt=ki(j(cn));if(2>>0)return q(cn);switch(Tt){case 0:continue;case 1:continue r;default:return 0}}return q(cn)}default:return 0}}}function He(cn){for(;;){var tt=r2(j(cn));if(tt!==0){var Tt=tt!==1?1:0;return Tt&&q(cn)}}}function he(cn){var tt=S9(j(cn));if(2>>0)return q(cn);switch(tt){case 0:var Tt=P1(j(cn));return Tt===0?He(cn):Tt===1?Re(cn):q(cn);case 1:return He(cn);default:return Re(cn)}}function _e(cn){var tt=m9(j(cn));if(tt===0)for(;;){var Tt=i7(j(cn));if(2>>0)return q(cn);switch(Tt){case 0:continue;case 1:return he(cn);default:r:for(;;){if(vn(j(cn))===0)for(;;){var Fi=i7(j(cn));if(2>>0)return q(cn);switch(Fi){case 0:continue;case 1:return he(cn);default:continue r}}return q(cn)}}}return tt===1?he(cn):q(cn)}En(L0);var Zn=r9(j(L0));if(2>>0)var dn=q(L0);else switch(Zn){case 0:if(vn(j(L0))===0)for(;;){var it=i7(j(L0));if(2>>0)var dn=q(L0);else switch(it){case 0:continue;case 1:var dn=he(L0);break;default:r:for(;;){if(vn(j(L0))===0)for(;;){var ft=i7(j(L0));if(2>>0)var Rn=q(L0);else switch(ft){case 0:continue;case 1:var Rn=he(L0);break;default:continue r}break}else var Rn=q(L0);var dn=Rn;break}}break}else var dn=q(L0);break;case 1:var nt=e9(j(L0)),dn=nt===0?_e(L0):nt===1?he(L0):q(L0);break;default:for(;;){var ht=b9(j(L0));if(2>>0)var dn=q(L0);else switch(ht){case 0:var dn=_e(L0);break;case 1:continue;default:var dn=he(L0)}break}}if(dn===0){var tn=ju(U0,rt(U0,L0),23);return[0,tn,[1,2,Se(L0)]]}return ke(yPr)});case 26:var Mu=ju(t,rt(t,n),23);return[0,Mu,[1,2,Se(n)]];case 27:return Dt(t,n,function(U0,L0){function Re(tn){for(;;){B0(tn,0);var cn=js(j(tn));if(cn!==0){if(cn===1)r:for(;;){if(vn(j(tn))===0)for(;;){B0(tn,0);var tt=js(j(tn));if(tt!==0){if(tt===1)continue r;return q(tn)}}return q(tn)}return q(tn)}}}function He(tn){for(;;)if(B0(tn,0),vn(j(tn))!==0)return q(tn)}function he(tn){var cn=S9(j(tn));if(2>>0)return q(tn);switch(cn){case 0:var tt=P1(j(tn));return tt===0?He(tn):tt===1?Re(tn):q(tn);case 1:return He(tn);default:return Re(tn)}}function _e(tn){var cn=m9(j(tn));if(cn===0)for(;;){var tt=i7(j(tn));if(2>>0)return q(tn);switch(tt){case 0:continue;case 1:return he(tn);default:r:for(;;){if(vn(j(tn))===0)for(;;){var Tt=i7(j(tn));if(2>>0)return q(tn);switch(Tt){case 0:continue;case 1:return he(tn);default:continue r}}return q(tn)}}}return cn===1?he(tn):q(tn)}En(L0);var Zn=r9(j(L0));if(2>>0)var dn=q(L0);else switch(Zn){case 0:if(vn(j(L0))===0)for(;;){var it=i7(j(L0));if(2>>0)var dn=q(L0);else switch(it){case 0:continue;case 1:var dn=he(L0);break;default:r:for(;;){if(vn(j(L0))===0)for(;;){var ft=i7(j(L0));if(2>>0)var Rn=q(L0);else switch(ft){case 0:continue;case 1:var Rn=he(L0);break;default:continue r}break}else var Rn=q(L0);var dn=Rn;break}}break}else var dn=q(L0);break;case 1:var nt=e9(j(L0)),dn=nt===0?_e(L0):nt===1?he(L0):q(L0);break;default:for(;;){var ht=b9(j(L0));if(2>>0)var dn=q(L0);else switch(ht){case 0:var dn=_e(L0);break;case 1:continue;default:var dn=he(L0)}break}}return dn===0?[0,U0,[0,4,Se(L0)]]:ke(_Pr)});case 29:return Dt(t,n,function(U0,L0){function Re(nt){for(;;){var ht=ki(j(nt));if(2>>0)return q(nt);switch(ht){case 0:continue;case 1:r:for(;;){if(vn(j(nt))===0)for(;;){var tn=ki(j(nt));if(2>>0)return q(nt);switch(tn){case 0:continue;case 1:continue r;default:return 0}}return q(nt)}default:return 0}}}function He(nt){var ht=r2(j(nt));if(ht===0)return Re(nt);var tn=ht!==1?1:0;return tn&&q(nt)}En(L0);var he=r9(j(L0));if(2>>0)var _e=q(L0);else switch(he){case 0:var _e=vn(j(L0))===0?Re(L0):q(L0);break;case 1:for(;;){var Zn=L1(j(L0));if(Zn===0)var _e=He(L0);else{if(Zn===1)continue;var _e=q(L0)}break}break;default:for(;;){var dn=Uc(j(L0));if(2>>0)var _e=q(L0);else switch(dn){case 0:var _e=He(L0);break;case 1:continue;default:r:for(;;){if(vn(j(L0))===0)for(;;){var it=Uc(j(L0));if(2>>0)var ft=q(L0);else switch(it){case 0:var ft=He(L0);break;case 1:continue;default:continue r}break}else var ft=q(L0);var _e=ft;break}}break}}if(_e===0){var Rn=ju(U0,rt(U0,L0),22);return[0,Rn,[1,2,Se(L0)]]}return ke(mPr)});case 30:return Dt(t,n,function(U0,L0){En(L0);var Re=P1(j(L0));if(Re===0)for(;;){var He=r2(j(L0));if(He!==0){var he=He!==1?1:0,it=he&&q(L0);break}}else if(Re===1)for(;;){var _e=ki(j(L0));if(2<_e>>>0)var it=q(L0);else switch(_e){case 0:continue;case 1:r:for(;;){if(vn(j(L0))===0)for(;;){var Zn=ki(j(L0));if(2>>0)var dn=q(L0);else switch(Zn){case 0:continue;case 1:continue r;default:var dn=0}break}else var dn=q(L0);var it=dn;break}break;default:var it=0}break}else var it=q(L0);return it===0?[0,U0,[1,2,Se(L0)]]:ke(pPr)});case 31:var z7=ju(t,rt(t,n),22);return[0,z7,[1,2,Se(n)]];case 33:return Dt(t,n,function(U0,L0){function Re(Rn){for(;;){B0(Rn,0);var nt=js(j(Rn));if(nt!==0){if(nt===1)r:for(;;){if(vn(j(Rn))===0)for(;;){B0(Rn,0);var ht=js(j(Rn));if(ht!==0){if(ht===1)continue r;return q(Rn)}}return q(Rn)}return q(Rn)}}}function He(Rn){return B0(Rn,0),vn(j(Rn))===0?Re(Rn):q(Rn)}En(L0);var he=r9(j(L0));if(2>>0)var _e=q(L0);else switch(he){case 0:var _e=vn(j(L0))===0?Re(L0):q(L0);break;case 1:for(;;){B0(L0,0);var Zn=L1(j(L0));if(Zn===0)var _e=He(L0);else{if(Zn===1)continue;var _e=q(L0)}break}break;default:for(;;){B0(L0,0);var dn=Uc(j(L0));if(2>>0)var _e=q(L0);else switch(dn){case 0:var _e=He(L0);break;case 1:continue;default:r:for(;;){if(vn(j(L0))===0)for(;;){B0(L0,0);var it=Uc(j(L0));if(2>>0)var ft=q(L0);else switch(it){case 0:var ft=He(L0);break;case 1:continue;default:continue r}break}else var ft=q(L0);var _e=ft;break}}break}}return _e===0?[0,U0,[0,4,Se(L0)]]:ke(bPr)});case 35:var Yi=rt(t,n),a7=Se(n);return[0,t,[4,Yi,a7,a7]];case 36:return[0,t,0];case 37:return[0,t,1];case 38:return[0,t,4];case 39:return[0,t,5];case 40:return[0,t,6];case 41:return[0,t,7];case 42:return[0,t,12];case 43:return[0,t,10];case 44:return[0,t,8];case 45:return[0,t,9];case 46:return[0,t,86];case 47:$v(n),En(n);var Yc=j(n),K7=62>>0)var x=q(n);else switch(i){case 0:var x=0;break;case 1:var x=6;break;case 2:if(B0(n,2),Mc(j(n))===0){for(;;)if(B0(n,2),Mc(j(n))!==0){var x=q(n);break}}else var x=q(n);break;case 3:var x=1;break;case 4:B0(n,1);var x=fi(j(n))===0?1:q(n);break;default:B0(n,5);var c=k9(j(n)),x=c===0?4:c===1?3:q(n)}if(6>>0)return ke(lPr);switch(x){case 0:return[0,t,Pn];case 1:return[2,d7(t,n)];case 2:return[2,t];case 3:var s=Ru(t,n),p=$n(zn),y=e2(t,p,n),T=y[1];return[1,T,Ei(T,s,y[2],p,0)];case 4:var E=Ru(t,n),h=$n(zn),w=j1(t,h,n),G=w[1];return[1,G,Ei(G,E,w[2],h,1)];case 5:var A=Ru(t,n),S=$n(zn),M=t;r:for(;;){En(n);var K=j(n),V=92>>0)var f0=q(n);else switch(V){case 0:var f0=0;break;case 1:for(;;){B0(n,7);var m0=j(n);if(-1>>0)var f0=q(n);else switch(l){case 0:var f0=2;break;case 1:var f0=1;break;default:B0(n,1);var f0=fi(j(n))===0?1:q(n)}}if(7>>0)var c0=ke(qwr);else switch(f0){case 0:var c0=[0,ju(M,rt(M,n),25),Uwr];break;case 1:var c0=[0,d7(ju(M,rt(M,n),25),n),Hwr];break;case 3:var t0=Se(n),c0=[0,M,p7(t0,1,nn(t0)-1|0)];break;case 4:var c0=[0,M,Xwr];break;case 5:for(qi(S,91);;){En(n);var a0=j(n),w0=93>>0)var _0=q(n);else switch(w0){case 0:var _0=0;break;case 1:for(;;){B0(n,4);var E0=j(n);if(-1>>0)var s0=ke(Mwr);else switch(_0){case 0:var s0=M;break;case 1:mn(S,Bwr);continue;case 2:qi(S,92),qi(S,93);continue;case 3:qi(S,93);var s0=M;break;default:mn(S,Se(n));continue}var M=s0;continue r}case 6:var c0=[0,d7(ju(M,rt(M,n),25),n),Ywr];break;default:mn(S,Se(n));continue}var dr=c0[1],Ar=y7(dr,n),ar=[0,dr[1],A,Ar],W0=c0[2];return[0,dr,[5,ar,Gt(S),W0]]}default:var Lr=wi(t,rt(t,n));return[0,Lr,[6,Se(n)]]}}function yL(t,n,e,i,x){for(var c=t;;){var s=function(Cn){for(;;)if(B0(Cn,6),Nr0(j(Cn))!==0)return q(Cn)};En(x);var p=j(x),y=br>>0)var T=q(x);else switch(y){case 0:var T=1;break;case 1:var T=s(x);break;case 2:var T=2;break;case 3:B0(x,2);var T=fi(j(x))===0?2:q(x);break;case 4:var T=0;break;case 5:B0(x,6);var E=j(x),h=34>>0)return ke(Vwr);switch(T){case 0:var c0=Se(x),t0=0;switch(n){case 0:n0(c0,zwr)||(t0=1);break;case 1:n0(c0,Kwr)||(t0=1);break;default:var a0=0;if(n0(c0,Wwr)){if(!n0(c0,Jwr))return _L(c,rt(c,x),nEr,eEr);if(n0(c0,$wr)){if(!n0(c0,Zwr))return _L(c,rt(c,x),rEr,Qwr);a0=1}}if(!a0)return $v(x),c}if(t0)return c;mn(i,c0),mn(e,c0);continue;case 1:return wi(c,rt(c,x));case 2:var w0=Se(x);mn(i,w0),mn(e,w0);var c=d7(c,x);continue;case 3:var _0=Se(x),E0=p7(_0,3,nn(_0)-4|0);mn(i,_0),g1(e,Bi(Te(tEr,E0)));continue;case 4:var X0=Se(x),b=p7(X0,2,nn(X0)-3|0);mn(i,X0),g1(e,Bi(b));continue;case 5:var G0=Se(x),X=p7(G0,1,nn(G0)-2|0);mn(i,G0);var s0=Ee(X,uEr),dr=0;if(0<=s0)if(0>>0)var x=q(n);else switch(i){case 0:var x=0;break;case 1:var x=14;break;case 2:if(B0(n,2),Mc(j(n))===0){for(;;)if(B0(n,2),Mc(j(n))!==0){var x=q(n);break}}else var x=q(n);break;case 3:var x=1;break;case 4:B0(n,1);var x=fi(j(n))===0?1:q(n);break;case 5:var x=12;break;case 6:var x=13;break;case 7:var x=10;break;case 8:B0(n,6);var c=k9(j(n)),x=c===0?4:c===1?3:q(n);break;case 9:var x=9;break;case 10:var x=5;break;case 11:var x=11;break;case 12:var x=7;break;case 13:if(B0(n,14),Gs(j(n))===0){var s=R1(j(n));if(s===0)var x=Nn(j(n))===0&&Nn(j(n))===0&&Nn(j(n))===0?13:q(n);else if(s===1&&Nn(j(n))===0)for(;;){var p=N1(j(n));if(p!==0){var x=p===1?13:q(n);break}}else var x=q(n)}else var x=q(n);break;default:var x=8}if(14>>0)return ke(sPr);switch(x){case 0:return[0,t,Pn];case 1:return[2,d7(t,n)];case 2:return[2,t];case 3:var y=Ru(t,n),T=$n(zn),E=e2(t,T,n),h=E[1];return[1,h,Ei(h,y,E[2],T,0)];case 4:var w=Ru(t,n),G=$n(zn),A=j1(t,G,n),S=A[1];return[1,S,Ei(S,w,A[2],G,1)];case 5:return[0,t,98];case 6:return[0,t,R7];case 7:return[0,t,99];case 8:return[0,t,0];case 9:return[0,t,86];case 10:return[0,t,10];case 11:return[0,t,82];case 12:var M=Se(n),K=Ru(t,n),V=$n(zn),f0=$n(zn);mn(f0,M);var m0=qn(M,vPr)?0:1,k0=yL(t,m0,V,f0,n),g0=y7(k0,n);mn(f0,M);var e0=Gt(V),x0=Gt(f0);return[0,k0,[8,[0,k0[1],K,g0],e0,x0]];case 13:for(var l=n[6];;){En(n);var c0=j(n),t0=In>>0)var a0=q(n);else switch(t0){case 0:var a0=1;break;case 1:var a0=2;break;case 2:var a0=0;break;default:if(B0(n,2),Gs(j(n))===0){var w0=R1(j(n));if(w0===0)if(Nn(j(n))===0&&Nn(j(n))===0)var _0=Nn(j(n))!==0?1:0,a0=_0&&q(n);else var a0=q(n);else if(w0===1&&Nn(j(n))===0)for(;;){var E0=N1(j(n));if(E0!==0){var X0=E0!==1?1:0,a0=X0&&q(n);break}}else var a0=q(n)}else var a0=q(n)}if(2>>0)throw[0,wn,Twr];switch(a0){case 0:continue;case 1:break;default:if(iL(dr0(n)))continue;kr0(n,1)}var b=n[3];fL(n,l);var G0=Ll(n),X=Hl(t,l,b);return[0,t,[7,xL(G0),X]]}default:return[0,t,[6,Se(n)]]}}function $ee(t,n){En(n);var e=j(n);if(-1>>0)var E=q(n);else switch(T){case 0:var E=5;break;case 1:if(B0(n,1),Mc(j(n))===0){for(;;)if(B0(n,1),Mc(j(n))!==0){var E=q(n);break}}else var E=q(n);break;case 2:var E=0;break;case 3:B0(n,0);var h=fi(j(n))!==0?1:0,E=h&&q(n);break;case 4:B0(n,5);var w=k9(j(n)),E=w===0?3:w===1?2:q(n);break;default:var E=4}if(5>>0)return ke(aPr);switch(E){case 0:return[2,d7(t,n)];case 1:return[2,t];case 2:var G=Ru(t,n),A=$n(zn),S=e2(t,A,n),M=S[1];return[1,M,Ei(M,G,S[2],A,0)];case 3:var K=Ru(t,n),V=$n(zn),f0=j1(t,V,n),m0=f0[1];return[1,m0,Ei(m0,K,f0[2],V,1)];case 4:var k0=Ru(t,n),g0=$n(zn),e0=$n(zn),x0=$n(zn);mn(x0,oPr);var l=te0(t,g0,e0,x0,n),c0=l[1],t0=y7(c0,n),a0=[0,c0[1],k0,t0],w0=l[2],_0=Gt(x0),E0=Gt(e0);return[0,c0,[3,[0,a0,[0,Gt(g0),E0,_0],w0]]];default:var X0=wi(t,rt(t,n));return[0,X0,[3,[0,rt(X0,n),cPr,1]]]}}function Zee(t,n){function e(D){for(;;)if(B0(D,29),_n(j(D))!==0)return q(D)}function i(D){B0(D,27);var u0=Mt(j(D));if(u0===0){for(;;)if(B0(D,25),_n(j(D))!==0)return q(D)}return u0===1?e(D):q(D)}function x(D){for(;;)if(B0(D,23),_n(j(D))!==0)return q(D)}function c(D){B0(D,22);var u0=Mt(j(D));if(u0===0){for(;;)if(B0(D,21),_n(j(D))!==0)return q(D)}return u0===1?x(D):q(D)}function s(D){for(;;)if(B0(D,23),_n(j(D))!==0)return q(D)}function p(D){B0(D,22);var u0=Mt(j(D));if(u0===0){for(;;)if(B0(D,21),_n(j(D))!==0)return q(D)}return u0===1?s(D):q(D)}function y(D){r:for(;;){if(vn(j(D))===0)for(;;){B0(D,24);var u0=qc(j(D));if(3>>0)return q(D);switch(u0){case 0:return s(D);case 1:continue;case 2:continue r;default:return p(D)}}return q(D)}}function T(D){B0(D,29);var u0=Hr0(j(D));if(3>>0)return q(D);switch(u0){case 0:return e(D);case 1:var Y0=P1(j(D));if(Y0===0)for(;;){B0(D,24);var J0=Qv(j(D));if(2>>0)return q(D);switch(J0){case 0:return s(D);case 1:continue;default:return p(D)}}if(Y0===1)for(;;){B0(D,24);var fr=qc(j(D));if(3>>0)return q(D);switch(fr){case 0:return s(D);case 1:continue;case 2:return y(D);default:return p(D)}}return q(D);case 2:for(;;){B0(D,24);var Q0=Qv(j(D));if(2>>0)return q(D);switch(Q0){case 0:return x(D);case 1:continue;default:return c(D)}}default:for(;;){B0(D,24);var F0=qc(j(D));if(3>>0)return q(D);switch(F0){case 0:return x(D);case 1:continue;case 2:return y(D);default:return c(D)}}}}function E(D){for(;;){B0(D,30);var u0=Rs(j(D));if(4>>0)return q(D);switch(u0){case 0:return e(D);case 1:continue;case 2:return T(D);case 3:r:for(;;){if(vn(j(D))===0)for(;;){B0(D,30);var Y0=Rs(j(D));if(4>>0)return q(D);switch(Y0){case 0:return e(D);case 1:continue;case 2:return T(D);case 3:continue r;default:return i(D)}}return q(D)}default:return i(D)}}}function h(D){return vn(j(D))===0?E(D):q(D)}function w(D){for(;;)if(B0(D,19),_n(j(D))!==0)return q(D)}function G(D){for(;;)if(B0(D,19),_n(j(D))!==0)return q(D)}function A(D){B0(D,29);var u0=Or0(j(D));if(u0===0)return e(D);if(u0===1)for(;;){B0(D,20);var Y0=E9(j(D));if(3>>0)return q(D);switch(Y0){case 0:return G(D);case 1:continue;case 2:r:for(;;){if(Nn(j(D))===0)for(;;){B0(D,20);var J0=E9(j(D));if(3>>0)return q(D);switch(J0){case 0:return w(D);case 1:continue;case 2:continue r;default:B0(D,18);var fr=Mt(j(D));if(fr===0){for(;;)if(B0(D,17),_n(j(D))!==0)return q(D)}return fr===1?w(D):q(D)}}return q(D)}default:B0(D,18);var Q0=Mt(j(D));if(Q0===0){for(;;)if(B0(D,17),_n(j(D))!==0)return q(D)}return Q0===1?G(D):q(D)}}return q(D)}function S(D){for(;;)if(B0(D,13),_n(j(D))!==0)return q(D)}function M(D){for(;;)if(B0(D,13),_n(j(D))!==0)return q(D)}function K(D){B0(D,29);var u0=Mr0(j(D));if(u0===0)return e(D);if(u0===1)for(;;){B0(D,14);var Y0=h9(j(D));if(3>>0)return q(D);switch(Y0){case 0:return M(D);case 1:continue;case 2:r:for(;;){if(Vu(j(D))===0)for(;;){B0(D,14);var J0=h9(j(D));if(3>>0)return q(D);switch(J0){case 0:return S(D);case 1:continue;case 2:continue r;default:B0(D,12);var fr=Mt(j(D));if(fr===0){for(;;)if(B0(D,11),_n(j(D))!==0)return q(D)}return fr===1?S(D):q(D)}}return q(D)}default:B0(D,12);var Q0=Mt(j(D));if(Q0===0){for(;;)if(B0(D,11),_n(j(D))!==0)return q(D)}return Q0===1?M(D):q(D)}}return q(D)}function V(D){for(;;)if(B0(D,9),_n(j(D))!==0)return q(D)}function f0(D){for(;;)if(B0(D,9),_n(j(D))!==0)return q(D)}function m0(D){B0(D,29);var u0=Gr0(j(D));if(u0===0)return e(D);if(u0===1)for(;;){B0(D,10);var Y0=w9(j(D));if(3>>0)return q(D);switch(Y0){case 0:return f0(D);case 1:continue;case 2:r:for(;;){if(Bc(j(D))===0)for(;;){B0(D,10);var J0=w9(j(D));if(3>>0)return q(D);switch(J0){case 0:return V(D);case 1:continue;case 2:continue r;default:B0(D,8);var fr=Mt(j(D));if(fr===0){for(;;)if(B0(D,7),_n(j(D))!==0)return q(D)}return fr===1?V(D):q(D)}}return q(D)}default:B0(D,8);var Q0=Mt(j(D));if(Q0===0){for(;;)if(B0(D,7),_n(j(D))!==0)return q(D)}return Q0===1?f0(D):q(D)}}return q(D)}function k0(D){B0(D,28);var u0=Mt(j(D));if(u0===0){for(;;)if(B0(D,26),_n(j(D))!==0)return q(D)}return u0===1?e(D):q(D)}function g0(D){B0(D,30);var u0=Qv(j(D));if(2>>0)return q(D);switch(u0){case 0:return e(D);case 1:for(;;){B0(D,30);var Y0=qc(j(D));if(3>>0)return q(D);switch(Y0){case 0:return e(D);case 1:continue;case 2:r:for(;;){if(vn(j(D))===0)for(;;){B0(D,30);var J0=qc(j(D));if(3>>0)return q(D);switch(J0){case 0:return e(D);case 1:continue;case 2:continue r;default:return i(D)}}return q(D)}default:return i(D)}}default:return i(D)}}function e0(D){for(;;){B0(D,30);var u0=i9(j(D));if(3>>0)return q(D);switch(u0){case 0:return e(D);case 1:return g0(D);case 2:continue;default:return k0(D)}}}function x0(D){for(;;)if(B0(D,15),_n(j(D))!==0)return q(D)}function l(D){B0(D,15);var u0=Mt(j(D));if(u0===0){for(;;)if(B0(D,15),_n(j(D))!==0)return q(D)}return u0===1?x0(D):q(D)}function c0(D){for(;;){B0(D,16);var u0=Xr0(j(D));if(4>>0)return q(D);switch(u0){case 0:return x0(D);case 1:return g0(D);case 2:continue;case 3:for(;;){B0(D,15);var Y0=i9(j(D));if(3>>0)return q(D);switch(Y0){case 0:return x0(D);case 1:return g0(D);case 2:continue;default:return l(D)}}default:return l(D)}}}function t0(D){B0(D,30);var u0=Pr0(j(D));if(3>>0)return q(D);switch(u0){case 0:return e(D);case 1:for(;;){B0(D,30);var Y0=Rs(j(D));if(4>>0)return q(D);switch(Y0){case 0:return e(D);case 1:continue;case 2:return T(D);case 3:r:for(;;){if(vn(j(D))===0)for(;;){B0(D,30);var J0=Rs(j(D));if(4>>0)return q(D);switch(J0){case 0:return e(D);case 1:continue;case 2:return T(D);case 3:continue r;default:return i(D)}}return q(D)}default:return i(D)}}case 2:return T(D);default:return i(D)}}function a0(D){B0(D,30);var u0=mL(j(D));if(8>>0)return q(D);switch(u0){case 0:return e(D);case 1:return t0(D);case 2:return c0(D);case 3:return e0(D);case 4:return m0(D);case 5:return T(D);case 6:return K(D);case 7:return A(D);default:return k0(D)}}function w0(D){r:for(;;){if(vn(j(D))===0)for(;;){B0(D,30);var u0=qr0(j(D));if(4>>0)return q(D);switch(u0){case 0:return e(D);case 1:return g0(D);case 2:continue;case 3:continue r;default:return k0(D)}}return q(D)}}function _0(D){for(;;){B0(D,30);var u0=o9(j(D));if(5>>0)return q(D);switch(u0){case 0:return e(D);case 1:return t0(D);case 2:continue;case 3:return T(D);case 4:return w0(D);default:return k0(D)}}}function E0(D){return B0(D,3),zr0(j(D))===0?3:q(D)}function X0(D){return _9(j(D))===0&&l9(j(D))===0&&Yr0(j(D))===0&&Lr0(j(D))===0&&Rr0(j(D))===0&&pL(j(D))===0&&Bl(j(D))===0&&_9(j(D))===0&&Gs(j(D))===0&&jr0(j(D))===0&&Ul(j(D))===0?3:q(D)}En(n);var b=j(n),G0=tf>>0)var X=q(n);else switch(G0){case 0:var X=62;break;case 1:var X=63;break;case 2:if(B0(n,1),Mc(j(n))===0){for(;;)if(B0(n,1),Mc(j(n))!==0){var X=q(n);break}}else var X=q(n);break;case 3:var X=0;break;case 4:B0(n,0);var s0=fi(j(n))!==0?1:0,X=s0&&q(n);break;case 5:var X=6;break;case 6:var X=61;break;case 7:if(B0(n,63),Bl(j(n))===0){var dr=j(n),Ar=c7>>0)var X=q(n);else switch(Lr){case 0:for(;;){var Tr=ql(j(n));if(3>>0)var X=q(n);else switch(Tr){case 0:continue;case 1:var X=h(n);break;case 2:var X=a0(n);break;default:var X=_0(n)}break}break;case 1:var X=h(n);break;case 2:var X=a0(n);break;default:var X=_0(n)}break;case 15:B0(n,41);var Hr=L1(j(n)),X=Hr===0?lL(j(n))===0?40:q(n):Hr===1?E(n):q(n);break;case 16:B0(n,63);var Or=k9(j(n));if(Or===0){B0(n,2);var xr=f9(j(n));if(2>>0)var X=q(n);else switch(xr){case 0:for(;;){var Rr=f9(j(n));if(2>>0)var X=q(n);else switch(Rr){case 0:continue;case 1:var X=E0(n);break;default:var X=X0(n)}break}break;case 1:var X=E0(n);break;default:var X=X0(n)}}else var X=Or===1?5:q(n);break;case 17:B0(n,30);var Wr=mL(j(n));if(8>>0)var X=q(n);else switch(Wr){case 0:var X=e(n);break;case 1:var X=t0(n);break;case 2:var X=c0(n);break;case 3:var X=e0(n);break;case 4:var X=m0(n);break;case 5:var X=T(n);break;case 6:var X=K(n);break;case 7:var X=A(n);break;default:var X=k0(n)}break;case 18:B0(n,30);var Jr=o9(j(n));if(5>>0)var X=q(n);else switch(Jr){case 0:var X=e(n);break;case 1:var X=t0(n);break;case 2:var X=_0(n);break;case 3:var X=T(n);break;case 4:var X=w0(n);break;default:var X=k0(n)}break;case 19:var X=44;break;case 20:var X=42;break;case 21:var X=49;break;case 22:B0(n,51);var or=j(n),_r=61>>0)return ke(MCr);var i0=X;if(32<=i0)switch(i0){case 34:return[0,t,0];case 35:return[0,t,1];case 36:return[0,t,2];case 37:return[0,t,3];case 38:return[0,t,4];case 39:return[0,t,5];case 40:return[0,t,12];case 41:return[0,t,10];case 42:return[0,t,8];case 43:return[0,t,9];case 45:return[0,t,83];case 49:return[0,t,98];case 50:return[0,t,99];case 53:return[0,t,Xt];case 55:return[0,t,89];case 56:return[0,t,91];case 57:return[0,t,11];case 59:return[0,t,c7];case 60:return[0,t,D7];case 61:var l0=n[6];Kr0(n);var S0=Hl(t,l0,n[3]);fL(n,l0);var T0=Ll(n),rr=re0(t,T0),R0=rr[2],B=rr[1],Z=Ee(R0,HCr);if(0<=Z){if(!(0>>0)return q(F0);switch(gr){case 0:continue;case 1:r:for(;;){if(Bc(j(F0))===0)for(;;){var mr=t9(j(F0));if(2>>0)return q(F0);switch(mr){case 0:continue;case 1:continue r;default:return 0}}return q(F0)}default:return 0}}return q(F0)}return q(F0)}En(u0);var J0=D1(j(u0));if(J0===0)for(;;){var fr=C1(j(u0));if(fr!==0){var Q0=fr===1?Y0(u0):q(u0);break}}else var Q0=J0===1?Y0(u0):q(u0);return Q0===0?[0,D,Hi(0,Se(u0))]:ke(GCr)});case 8:return[0,t,Hi(0,Se(n))];case 9:return Dt(t,n,function(D,u0){function Y0(F0){if(s9(j(F0))===0){if(Bc(j(F0))===0)for(;;){B0(F0,0);var gr=n9(j(F0));if(gr!==0){if(gr===1)r:for(;;){if(Bc(j(F0))===0)for(;;){B0(F0,0);var mr=n9(j(F0));if(mr!==0){if(mr===1)continue r;return q(F0)}}return q(F0)}return q(F0)}}return q(F0)}return q(F0)}En(u0);var J0=D1(j(u0));if(J0===0)for(;;){var fr=C1(j(u0));if(fr!==0){var Q0=fr===1?Y0(u0):q(u0);break}}else var Q0=J0===1?Y0(u0):q(u0);return Q0===0?[0,D,Hc(0,Se(u0))]:ke(jCr)});case 10:return[0,t,Hc(0,Se(n))];case 11:return Dt(t,n,function(D,u0){function Y0(F0){if(p9(j(F0))===0){if(Vu(j(F0))===0)for(;;){var gr=c9(j(F0));if(2>>0)return q(F0);switch(gr){case 0:continue;case 1:r:for(;;){if(Vu(j(F0))===0)for(;;){var mr=c9(j(F0));if(2>>0)return q(F0);switch(mr){case 0:continue;case 1:continue r;default:return 0}}return q(F0)}default:return 0}}return q(F0)}return q(F0)}En(u0);var J0=D1(j(u0));if(J0===0)for(;;){var fr=C1(j(u0));if(fr!==0){var Q0=fr===1?Y0(u0):q(u0);break}}else var Q0=J0===1?Y0(u0):q(u0);return Q0===0?[0,D,Hi(1,Se(u0))]:ke(RCr)});case 12:return[0,t,Hi(1,Se(n))];case 13:return Dt(t,n,function(D,u0){function Y0(F0){if(p9(j(F0))===0){if(Vu(j(F0))===0)for(;;){B0(F0,0);var gr=a9(j(F0));if(gr!==0){if(gr===1)r:for(;;){if(Vu(j(F0))===0)for(;;){B0(F0,0);var mr=a9(j(F0));if(mr!==0){if(mr===1)continue r;return q(F0)}}return q(F0)}return q(F0)}}return q(F0)}return q(F0)}En(u0);var J0=D1(j(u0));if(J0===0)for(;;){var fr=C1(j(u0));if(fr!==0){var Q0=fr===1?Y0(u0):q(u0);break}}else var Q0=J0===1?Y0(u0):q(u0);return Q0===0?[0,D,Hc(3,Se(u0))]:ke(LCr)});case 14:return[0,t,Hc(3,Se(n))];case 15:return Dt(t,n,function(D,u0){function Y0(F0){if(Vu(j(F0))===0){for(;;)if(B0(F0,0),Vu(j(F0))!==0)return q(F0)}return q(F0)}En(u0);var J0=D1(j(u0));if(J0===0)for(;;){var fr=C1(j(u0));if(fr!==0){var Q0=fr===1?Y0(u0):q(u0);break}}else var Q0=J0===1?Y0(u0):q(u0);return Q0===0?[0,D,Hc(1,Se(u0))]:ke(DCr)});case 16:return[0,t,Hc(1,Se(n))];case 17:return Dt(t,n,function(D,u0){function Y0(F0){if(Qm(j(F0))===0){if(Nn(j(F0))===0)for(;;){var gr=u9(j(F0));if(2>>0)return q(F0);switch(gr){case 0:continue;case 1:r:for(;;){if(Nn(j(F0))===0)for(;;){var mr=u9(j(F0));if(2>>0)return q(F0);switch(mr){case 0:continue;case 1:continue r;default:return 0}}return q(F0)}default:return 0}}return q(F0)}return q(F0)}En(u0);var J0=D1(j(u0));if(J0===0)for(;;){var fr=C1(j(u0));if(fr!==0){var Q0=fr===1?Y0(u0):q(u0);break}}else var Q0=J0===1?Y0(u0):q(u0);return Q0===0?[0,D,Hi(2,Se(u0))]:ke(PCr)});case 19:return Dt(t,n,function(D,u0){function Y0(F0){if(Qm(j(F0))===0){if(Nn(j(F0))===0)for(;;){B0(F0,0);var gr=y9(j(F0));if(gr!==0){if(gr===1)r:for(;;){if(Nn(j(F0))===0)for(;;){B0(F0,0);var mr=y9(j(F0));if(mr!==0){if(mr===1)continue r;return q(F0)}}return q(F0)}return q(F0)}}return q(F0)}return q(F0)}En(u0);var J0=D1(j(u0));if(J0===0)for(;;){var fr=C1(j(u0));if(fr!==0){var Q0=fr===1?Y0(u0):q(u0);break}}else var Q0=J0===1?Y0(u0):q(u0);return Q0===0?[0,D,Hc(4,Se(u0))]:ke(CCr)});case 21:return Dt(t,n,function(D,u0){function Y0(d0){for(;;){var Kr=ki(j(d0));if(2>>0)return q(d0);switch(Kr){case 0:continue;case 1:r:for(;;){if(vn(j(d0))===0)for(;;){var re=ki(j(d0));if(2>>0)return q(d0);switch(re){case 0:continue;case 1:continue r;default:return 0}}return q(d0)}default:return 0}}}function J0(d0){for(;;){var Kr=r2(j(d0));if(Kr!==0){var re=Kr!==1?1:0;return re&&q(d0)}}}function fr(d0){var Kr=S9(j(d0));if(2>>0)return q(d0);switch(Kr){case 0:var re=P1(j(d0));return re===0?J0(d0):re===1?Y0(d0):q(d0);case 1:return J0(d0);default:return Y0(d0)}}function Q0(d0){if(vn(j(d0))===0)for(;;){var Kr=i7(j(d0));if(2>>0)return q(d0);switch(Kr){case 0:continue;case 1:return fr(d0);default:r:for(;;){if(vn(j(d0))===0)for(;;){var re=i7(j(d0));if(2>>0)return q(d0);switch(re){case 0:continue;case 1:return fr(d0);default:continue r}}return q(d0)}}}return q(d0)}function F0(d0){var Kr=m9(j(d0));if(Kr===0)for(;;){var re=i7(j(d0));if(2>>0)return q(d0);switch(re){case 0:continue;case 1:return fr(d0);default:r:for(;;){if(vn(j(d0))===0)for(;;){var xe=i7(j(d0));if(2>>0)return q(d0);switch(xe){case 0:continue;case 1:return fr(d0);default:continue r}}return q(d0)}}}return Kr===1?fr(d0):q(d0)}function gr(d0){var Kr=e9(j(d0));return Kr===0?F0(d0):Kr===1?fr(d0):q(d0)}function mr(d0){for(;;){var Kr=b9(j(d0));if(2>>0)return q(d0);switch(Kr){case 0:return F0(d0);case 1:continue;default:return fr(d0)}}}En(u0);var Cr=x9(j(u0));if(3>>0)var sr=q(u0);else switch(Cr){case 0:for(;;){var Pr=ql(j(u0));if(3>>0)var sr=q(u0);else switch(Pr){case 0:continue;case 1:var sr=Q0(u0);break;case 2:var sr=gr(u0);break;default:var sr=mr(u0)}break}break;case 1:var sr=Q0(u0);break;case 2:var sr=gr(u0);break;default:var sr=mr(u0)}if(sr===0){var K0=Se(u0),Ur=ju(D,rt(D,u0),23);return[0,Ur,Hi(2,K0)]}return ke(NCr)});case 22:var Y=Se(n),y0=ju(t,rt(t,n),23);return[0,y0,Hi(2,Y)];case 23:return Dt(t,n,function(D,u0){function Y0(K0){for(;;){B0(K0,0);var Ur=js(j(K0));if(Ur!==0){if(Ur===1)r:for(;;){if(vn(j(K0))===0)for(;;){B0(K0,0);var d0=js(j(K0));if(d0!==0){if(d0===1)continue r;return q(K0)}}return q(K0)}return q(K0)}}}function J0(K0){for(;;)if(B0(K0,0),vn(j(K0))!==0)return q(K0)}function fr(K0){var Ur=S9(j(K0));if(2>>0)return q(K0);switch(Ur){case 0:var d0=P1(j(K0));return d0===0?J0(K0):d0===1?Y0(K0):q(K0);case 1:return J0(K0);default:return Y0(K0)}}function Q0(K0){if(vn(j(K0))===0)for(;;){var Ur=i7(j(K0));if(2>>0)return q(K0);switch(Ur){case 0:continue;case 1:return fr(K0);default:r:for(;;){if(vn(j(K0))===0)for(;;){var d0=i7(j(K0));if(2>>0)return q(K0);switch(d0){case 0:continue;case 1:return fr(K0);default:continue r}}return q(K0)}}}return q(K0)}function F0(K0){var Ur=m9(j(K0));if(Ur===0)for(;;){var d0=i7(j(K0));if(2>>0)return q(K0);switch(d0){case 0:continue;case 1:return fr(K0);default:r:for(;;){if(vn(j(K0))===0)for(;;){var Kr=i7(j(K0));if(2>>0)return q(K0);switch(Kr){case 0:continue;case 1:return fr(K0);default:continue r}}return q(K0)}}}return Ur===1?fr(K0):q(K0)}function gr(K0){var Ur=e9(j(K0));return Ur===0?F0(K0):Ur===1?fr(K0):q(K0)}function mr(K0){for(;;){var Ur=b9(j(K0));if(2>>0)return q(K0);switch(Ur){case 0:return F0(K0);case 1:continue;default:return fr(K0)}}}En(u0);var Cr=x9(j(u0));if(3>>0)var sr=q(u0);else switch(Cr){case 0:for(;;){var Pr=ql(j(u0));if(3>>0)var sr=q(u0);else switch(Pr){case 0:continue;case 1:var sr=Q0(u0);break;case 2:var sr=gr(u0);break;default:var sr=mr(u0)}break}break;case 1:var sr=Q0(u0);break;case 2:var sr=gr(u0);break;default:var sr=mr(u0)}return sr===0?[0,D,Hc(4,Se(u0))]:ke(ACr)});case 25:return Dt(t,n,function(D,u0){function Y0(K0){for(;;){var Ur=ki(j(K0));if(2>>0)return q(K0);switch(Ur){case 0:continue;case 1:r:for(;;){if(vn(j(K0))===0)for(;;){var d0=ki(j(K0));if(2>>0)return q(K0);switch(d0){case 0:continue;case 1:continue r;default:return 0}}return q(K0)}default:return 0}}}function J0(K0){return vn(j(K0))===0?Y0(K0):q(K0)}function fr(K0){var Ur=r2(j(K0));if(Ur===0)return Y0(K0);var d0=Ur!==1?1:0;return d0&&q(K0)}function Q0(K0){for(;;){var Ur=L1(j(K0));if(Ur===0)return fr(K0);if(Ur!==1)return q(K0)}}function F0(K0){for(;;){var Ur=Uc(j(K0));if(2>>0)return q(K0);switch(Ur){case 0:return fr(K0);case 1:continue;default:r:for(;;){if(vn(j(K0))===0)for(;;){var d0=Uc(j(K0));if(2>>0)return q(K0);switch(d0){case 0:return fr(K0);case 1:continue;default:continue r}}return q(K0)}}}}En(u0);var gr=x9(j(u0));if(3>>0)var mr=q(u0);else switch(gr){case 0:for(;;){var Cr=ql(j(u0));if(3>>0)var mr=q(u0);else switch(Cr){case 0:continue;case 1:var mr=J0(u0);break;case 2:var mr=Q0(u0);break;default:var mr=F0(u0)}break}break;case 1:var mr=J0(u0);break;case 2:var mr=Q0(u0);break;default:var mr=F0(u0)}if(mr===0){var sr=Se(u0),Pr=ju(D,rt(D,u0),22);return[0,Pr,Hi(2,sr)]}return ke(ICr)});case 26:return Dt(t,n,function(D,u0){function Y0(mr){for(;;){var Cr=r2(j(mr));if(Cr!==0){var sr=Cr!==1?1:0;return sr&&q(mr)}}}function J0(mr){for(;;){var Cr=ki(j(mr));if(2>>0)return q(mr);switch(Cr){case 0:continue;case 1:r:for(;;){if(vn(j(mr))===0)for(;;){var sr=ki(j(mr));if(2>>0)return q(mr);switch(sr){case 0:continue;case 1:continue r;default:return 0}}return q(mr)}default:return 0}}}En(u0);var fr=j(u0),Q0=44>>0)var F0=q(u0);else switch(Q0){case 0:for(;;){var gr=Ur0(j(u0));if(2>>0)var F0=q(u0);else switch(gr){case 0:continue;case 1:var F0=Y0(u0);break;default:var F0=J0(u0)}break}break;case 1:var F0=Y0(u0);break;default:var F0=J0(u0)}return F0===0?[0,D,Hi(2,Se(u0))]:ke(OCr)});case 27:var D0=Se(n),I0=ju(t,rt(t,n),22);return[0,I0,Hi(2,D0)];case 29:return Dt(t,n,function(D,u0){function Y0(re){for(;;){B0(re,0);var xe=js(j(re));if(xe!==0){if(xe===1)r:for(;;){if(vn(j(re))===0)for(;;){B0(re,0);var je=js(j(re));if(je!==0){if(je===1)continue r;return q(re)}}return q(re)}return q(re)}}}function J0(re){return B0(re,0),vn(j(re))===0?Y0(re):q(re)}En(u0);var fr=x9(j(u0));if(3>>0)var Q0=q(u0);else switch(fr){case 0:for(;;){var F0=Ur0(j(u0));if(2>>0)var Q0=q(u0);else switch(F0){case 0:continue;case 1:for(;;){B0(u0,0);var gr=L1(j(u0)),mr=gr!==0?1:0;if(mr){if(gr===1)continue;var Q0=q(u0)}else var Q0=mr;break}break;default:for(;;){B0(u0,0);var Cr=Uc(j(u0));if(2>>0)var Q0=q(u0);else switch(Cr){case 0:var Q0=0;break;case 1:continue;default:r:for(;;){if(vn(j(u0))===0)for(;;){B0(u0,0);var sr=Uc(j(u0));if(2>>0)var Pr=q(u0);else switch(sr){case 0:var Pr=0;break;case 1:continue;default:continue r}break}else var Pr=q(u0);var Q0=Pr;break}}break}}break}break;case 1:var Q0=vn(j(u0))===0?Y0(u0):q(u0);break;case 2:for(;;){B0(u0,0);var K0=L1(j(u0));if(K0===0)var Q0=J0(u0);else{if(K0===1)continue;var Q0=q(u0)}break}break;default:for(;;){B0(u0,0);var Ur=Uc(j(u0));if(2>>0)var Q0=q(u0);else switch(Ur){case 0:var Q0=J0(u0);break;case 1:continue;default:r:for(;;){if(vn(j(u0))===0)for(;;){B0(u0,0);var d0=Uc(j(u0));if(2>>0)var Kr=q(u0);else switch(d0){case 0:var Kr=J0(u0);break;case 1:continue;default:continue r}break}else var Kr=q(u0);var Q0=Kr;break}}break}}return Q0===0?[0,D,Hc(4,Se(u0))]:ke(TCr)});case 31:return[0,t,66];case 18:case 28:return[0,t,Hi(2,Se(n))];default:return[0,t,Hc(4,Se(n))]}}function Xl(t){return function(n){for(var e=0,i=n;;){var x=a(t,i,i[2]);switch(x[0]){case 0:var c=x[2],s=x[1],p=Wr0(s,c),y=e===0?0:de(e),T=s[6];if(T===0)return[0,[0,s[1],s[2],s[3],s[4],s[5],s[6],p],[0,c,p,0,y]];var E=[0,c,p,de(T),y];return[0,[0,s[1],s[2],s[3],s[4],s[5],wr0,p],E];case 1:var h=x[2],w=x[1],e=[0,h,e],i=[0,w[1],w[2],w[3],w[4],w[5],w[6],h[1]];continue;default:var i=x[1];continue}}}}var Qee=Xl(Wee),rne=Xl(Jee),ene=Xl($ee),nne=Xl(Zee),tne=Xl(Kee),Gu=uL([0,dz]);function Yl(t,n){return[0,0,0,n,Er0(t)]}function F9(t){var n=t[4];switch(t[3]){case 0:var c0=u(tne,n);break;case 1:var c0=u(nne,n);break;case 2:var c0=u(rne,n);break;case 3:var e=y7(n,n[2]),i=$n(zn),x=$n(zn),c=n[2];En(c);var s=j(c),p=us>>0)var y=q(c);else switch(p){case 0:var y=1;break;case 1:var y=4;break;case 2:var y=0;break;case 3:B0(c,0);var T=fi(j(c))!==0?1:0,y=T&&q(c);break;case 4:var y=2;break;default:var y=3}if(4>>0)var E=ke(FCr);else switch(y){case 0:var h=Se(c);mn(x,h),mn(i,h);var w=yL(d7(n,c),2,i,x,c),G=y7(w,c),A=Gt(i),S=Gt(x),E=[0,w,[8,[0,w[1],e,G],A,S]];break;case 1:var E=[0,n,Pn];break;case 2:var E=[0,n,98];break;case 3:var E=[0,n,0];break;default:$v(c);var M=yL(n,2,i,x,c),K=y7(M,c),V=Gt(i),f0=Gt(x),E=[0,M,[8,[0,M[1],e,K],V,f0]]}var m0=E[2],k0=E[1],g0=Wr0(k0,m0),e0=k0[6];if(e0===0)var l=[0,k0,[0,m0,g0,0,0]];else var x0=[0,m0,g0,de(e0),0],l=[0,[0,k0[1],k0[2],k0[3],k0[4],k0[5],0,k0[7]],x0];var c0=l;break;case 4:var c0=u(ene,n);break;default:var c0=u(Qee,n)}var t0=c0[1],a0=Er0(t0),w0=[0,a0,c0[2]];return t[4]=t0,t[1]?t[2]=[0,w0]:t[1]=[0,w0],w0}function ue0(t){var n=t[1];return n?n[1][2]:F9(t)[2]}function une(t,n,e,i){var x=t&&t[1],c=n&&n[1];try{var s=0,p=hr0(i),y=s,T=p}catch(A){if(A=Et(A),A!==A1)throw A;var E=[0,[0,[0,e,fz[2],fz[3]],86],0],y=E,T=hr0(iGr)}var h=c?c[1]:Bv,w=zee(e,T,h[4]),G=[0,Yl(w,0)];return[0,[0,y],[0,0],Gu[1],[0,0],h[5],0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,[0,xGr],[0,w],G,[0,x],h,e,[0,0],[0,fGr]]}function n2(t){return bl(t[23][1])}function iu(t){return t[27][4]}function ue(t,n){var e=n[2];t[1][1]=[0,[0,n[1],e],t[1][1]];var i=t[22];return i&&a(i[1],t,e)}function Vl(t,n){return t[30][1]=n,0}function Ms(t,n){if(t===0)return ue0(n[25][1]);if(t===1){var e=n[25][1];e[1]||F9(e);var i=e[2];return i?i[1][2]:F9(e)[2]}throw[0,wn,nGr]}function ys(t,n){return t===n[5]?n:[0,n[1],n[2],n[3],n[4],t,n[6],n[7],n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15],n[16],n[17],n[18],n[19],n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function dL(t,n){return t===n[17]?n:[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15],n[16],t,n[18],n[19],n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function ie0(t,n){return t===n[18]?n:[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15],n[16],n[17],t,n[19],n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function fe0(t,n){return t===n[19]?n:[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15],n[16],n[17],n[18],t,n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function t2(t,n){return t===n[21]?n:[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15],n[16],n[17],n[18],n[19],n[20],t,n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function T9(t,n){return t===n[14]?n:[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],n[12],n[13],t,n[15],n[16],n[17],n[18],n[19],n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function zl(t,n){return t===n[8]?n:[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],t,n[9],n[10],n[11],n[12],n[13],n[14],n[15],n[16],n[17],n[18],n[19],n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function Kl(t,n){return t===n[12]?n:[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],t,n[13],n[14],n[15],n[16],n[17],n[18],n[19],n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function u2(t,n){return t===n[15]?n:[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],n[12],n[13],n[14],t,n[16],n[17],n[18],n[19],n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function xe0(t,n){return t===n[6]?n:[0,n[1],n[2],n[3],n[4],n[5],t,n[7],n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15],n[16],n[17],n[18],n[19],n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function ae0(t,n){return t===n[7]?n:[0,n[1],n[2],n[3],n[4],n[5],n[6],t,n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15],n[16],n[17],n[18],n[19],n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function hL(t,n){return t===n[13]?n:[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],n[12],t,n[14],n[15],n[16],n[17],n[18],n[19],n[20],n[21],n[22],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function O9(t,n){return[0,n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8],n[9],n[10],n[11],n[12],n[13],n[14],n[15],n[16],n[17],n[18],n[19],n[20],n[21],[0,t],n[23],n[24],n[25],n[26],n[27],n[28],n[29],n[30]]}function kL(t){function n(e){return ue(t,e)}return function(e){return Pu(n,e)}}function i2(t){var n=t[4][1],e=n&&[0,n[1][2]];return e}function oe0(t){var n=t[4][1],e=n&&[0,n[1][1]];return e}function ce0(t){return[0,t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15],t[16],t[17],t[18],t[19],t[20],t[21],0,t[23],t[24],t[25],t[26],t[27],t[28],t[29],t[30]]}function se0(t,n,e,i){return[0,t[1],t[2],Gu[1],t[4],t[5],0,0,0,0,0,1,t[12],t[13],t[14],t[15],t[16],e,n,t[19],i,t[21],t[22],t[23],t[24],t[25],t[26],t[27],t[28],t[29],t[30]]}function ve0(t){var n=Ee(t,wjr),e=0;if(0<=n){if(0>>0){if(!(F7<(i+1|0)>>>0))return 1}else{var x=i!==6?1:0;if(!x)return x}}return Jl(t,n)}function x2(t){return me0(0,t)}function A9(t,n){var e=Yn(t,n);if(EL(e)||wL(e)||le0(e))return 1;var i=0;if(typeof e=="number")switch(e){case 14:case 28:case 60:case 61:case 62:case 63:case 64:case 65:i=1;break}else e[0]===4&&(i=1);return i?1:0}function _e0(t,n){var e=n2(n);if(e===1){var i=Yn(t,n);return typeof i!="number"&&i[0]===4?1:0}if(e)return 0;var x=Yn(t,n);if(typeof x=="number")switch(x){case 42:case 46:case 47:return 0;case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 43:case 44:case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 65:case 114:case 115:case 116:case 117:case 118:case 119:case 120:case 121:break;default:return 0}else switch(x[0]){case 4:if(be0(x[3]))return 0;break;case 9:case 10:case 11:break;default:return 0}return 1}function M1(t){return A9(0,t)}function qs(t){var n=N0(t)===15?1:0;if(n)var e=n;else{var i=N0(t)===64?1:0;if(i){var x=Yn(1,t)===15?1:0;if(x)var c=Wl(1,t)[2][1],e=De(t)[3][1]===c?1:0;else var e=x}else var e=i}return e}function $l(t){var n=N0(t);if(typeof n=="number"){var e=0;if((n===13||n===40)&&(e=1),e)return 1}return 0}function Ge(t,n){return ue(t,[0,De(t),n])}function ye0(t,n){if(wL(n))return 2;if(EL(n))return 55;var e=vL(0,n);return t?[11,e,t[1]]:[10,e]}function St(t,n){var e=gL(n);return u(kL(n),e),Ge(n,ye0(t,N0(n)))}function N9(t){function n(e){return ue(t,[0,e[1],76])}return function(e){return Pu(n,e)}}function de0(t,n){var e=t[6]?ir(Qn(MRr),n,n,n):BRr;return St([0,e],t)}function Si(t,n){var e=t[5];return e&&Ge(t,n)}function Y7(t,n){var e=t[5];return e&&ue(t,[0,n[1],n[2]])}function B1(t,n){return ue(t,[0,n,[18,t[5]]])}function ie(t){var n=t[26][1];if(n){var e=n2(t),i=N0(t),x=[0,De(t),i,e];u(n[1],x)}var c=t[25][1],s=c[1],p=s?s[1][1]:F9(c)[1];t[24][1]=p;var y=gL(t);u(kL(t),y);var T=t[2][1],E=jc(Ms(0,t)[4],T);t[2][1]=E;var h=[0,Ms(0,t)];t[4][1]=h;var w=t[25][1];return w[2]?(w[1]=w[2],w[2]=0,0):(ue0(w),w[1]=0,0)}function fu(t,n){var e=a(aL,N0(t),n);return e&&ie(t),e}function zu(t,n){t[23][1]=[0,n,t[23][1]];var e=n2(t),i=Yl(t[24][1],e);return t[25][1]=i,0}function h7(t){var n=t[23][1],e=n?n[2]:ke(GRr);t[23][1]=e;var i=n2(t),x=Yl(t[24][1],i);return t[25][1]=x,0}function we(t){var n=De(t);if(N0(t)===9&&Jl(1,t)){var e=pr(t),i=Ms(1,t)[4],x=un(e,u(ml(function(s){return s[1][2][1]<=n[3][1]?1:0}),i));return Vl(t,[0,n[3][1]+1|0,0]),x}var c=pr(t);return Vl(t,n[3]),c}function Us(t){var n=t[4][1];if(n){var e=n[1][2],i=pr(t),x=u(ml(function(p){return p[1][2][1]<=e[3][1]?1:0}),i);Vl(t,[0,e[3][1]+1|0,0]);var c=x}else var c=n;return c}function q1(t,n){return St([0,vL(DRr,n)],t)}function V0(t,n){return 1-a(aL,N0(t),n)&&q1(t,n),ie(t)}function he0(t,n){var e=fu(t,n);return 1-e&&q1(t,n),e}function Zl(t,n){var e=N0(t),i=0;return typeof e!="number"&&e[0]===4&&qn(e[3],n)&&(i=1),i||St([0,u(Qn(PRr),n)],t),ie(t)}var Hs=[wt,aGr,G7(0)];function ine(t){var n=t[26][1];if(n){var e=kz(0),i=[0,function(s){return vN(s,e)}];t[26][1]=i;var x=[0,[0,n[1],e]]}else var x=n;return[0,t[1][1],t[2][1],t[4][1],t[23][1],t[24][1],t[30][1],x]}function ke0(t,n,e){if(e){var i=e[1],x=i[1];if(n[26][1]=[0,x],t)for(var c=i[2][2];;){if(c){var s=c[2];u(x,c[1]);var c=s;continue}return 0}var p=t}else var p=e;return p}function fne(t,n){ke0(0,t,n[7]),t[1][1]=n[1],t[2][1]=n[2],t[4][1]=n[3],t[23][1]=n[4],t[24][1]=n[5],t[30][1]=n[6];var e=n2(t),i=Yl(t[24][1],e);return t[25][1]=i,0}function xne(t,n,e){return ke0(1,t,n[7]),[0,e]}function FL(t,n){var e=ine(t);try{var i=xne(t,e,u(n,t));return i}catch(x){if(x=Et(x),x===Hs)return fne(t,e);throw x}}function we0(t,n,e){var i=FL(t,e);return i?i[1]:n}function Ql(t,n){var e=de(n);if(e){var i=e[1],x=u(t,i);return i===x?n:de([0,x,e[2]])}return n}var Ee0=jp(lGr,function(t){var n=RN(t,cGr),e=DN(t,vGr),i=e[22],x=e[26],c=e[35],s=e[77],p=e[cV],y=e[OO],T=e[sp],E=e[HO],h=e[Bd],w=e[eT],G=e[6],A=e[7],S=e[10],M=e[17],K=e[21],V=e[27],f0=e[33],m0=e[36],k0=e[46],g0=e[51],e0=e[89],x0=e[92],l=e[97],c0=e[99],t0=e[ni],a0=e[Pn],w0=e[Sv],_0=e[Jw],E0=e[Qg],X0=e[gH],b=e[MX],G0=e[fH],X=e[NH],s0=e[Sd],dr=e[PF],Ar=e[Zg],ar=e[N6],W0=e[Lw],Lr=e[aA],Tr=e[tk],Hr=e[wT],Or=e[mO],xr=e[f6],Rr=e[TT],Wr=e[l8],Jr=e[$2],or=GN(t,0,0,xz,$D,1)[1];function _r(H0,Fr,_){var k=_[2],I=k[2],U=k[1],Y=_[1];if(I){var y0=function(D){return[0,Y,[0,U,[0,D]]]},D0=I[1];return ee(u(H0[1][1+y],H0),D0,_,y0)}function I0(D){return[0,Y,[0,D,I]]}return ee(a(H0[1][1+G],H0,Fr),U,_,I0)}function Ir(H0,Fr,_){var k=_[2],I=_[1],U=I[3],Y=I[2];if(U)var y0=Ql(u(H0[1][1+x],H0),U),D0=Y;else var y0=0,D0=a(H0[1][1+x],H0,Y);var I0=a(H0[1][1+c],H0,k);return Y===D0&&U===y0&&k===I0?_:[0,[0,I[1],D0,y0],I0]}function fe(H0,Fr){var _=Fr[2],k=_[1],I=Fr[1];function U(y0){return[0,I,[0,k,y0]]}var Y=_[2];return ee(u(H0[1][1+c],H0),Y,Fr,U)}function v0(H0,Fr,_){function k(U){return[0,_[1],_[2],U]}var I=_[3];return ee(u(H0[1][1+c],H0),I,_,k)}function P(H0,Fr){function _(I){return[0,Fr[1],I]}var k=Fr[2];return ee(u(H0[1][1+c],H0),k,Fr,_)}function L(H0,Fr,_){function k(U){return[0,_[1],_[2],U]}var I=_[3];return ee(u(H0[1][1+c],H0),I,_,k)}function Q(H0,Fr,_){var k=_[2],I=_[1],U=Ql(u(H0[1][1+y],H0),I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,U,Y]}function i0(H0,Fr){var _=Fr[2],k=_[1],I=Fr[1];function U(y0){return[0,I,[0,k,y0]]}var Y=_[2];return ee(u(H0[1][1+c],H0),Y,Fr,U)}function l0(H0,Fr,_){function k(U){return[0,_[1],_[2],_[3],U]}var I=_[4];return ee(u(H0[1][1+c],H0),I,_,k)}function S0(H0,Fr,_){function k(U){return[0,_[1],U]}var I=_[2];return ee(u(H0[1][1+c],H0),I,_,k)}function T0(H0,Fr,_){var k=_[3],I=_[2],U=a(H0[1][1+l],H0,I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,_[1],U,Y]}function rr(H0,Fr,_){var k=_[4],I=_[3],U=_[2],Y=_[1],y0=a(H0[1][1+c],H0,k);if(I){var D0=ze(u(H0[1][1+w],H0),I);return I===D0&&k===y0?_:[0,_[1],_[2],D0,y0]}if(U){var I0=ze(u(H0[1][1+h],H0),U);return U===I0&&k===y0?_:[0,_[1],I0,_[3],y0]}var D=a(H0[1][1+y],H0,Y);return Y===D&&k===y0?_:[0,D,_[2],_[3],y0]}function R0(H0,Fr,_){var k=_[4],I=_[3],U=a(H0[1][1+y],H0,I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,_[1],_[2],U,Y]}function B(H0,Fr,_){function k(U){return[0,_[1],_[2],_[3],U]}var I=_[4];return ee(u(H0[1][1+c],H0),I,_,k)}function Z(H0,Fr,_){function k(U){return[0,_[1],_[2],_[3],U]}var I=_[4];return ee(u(H0[1][1+c],H0),I,_,k)}function p0(H0,Fr,_){var k=_[2],I=_[1],U=I[3],Y=I[2];if(U)var y0=Ql(u(H0[1][1+x],H0),U),D0=Y;else var y0=0,D0=a(H0[1][1+x],H0,Y);var I0=a(H0[1][1+c],H0,k);return Y===D0&&U===y0&&k===I0?_:[0,[0,I[1],D0,y0],I0]}function b0(H0,Fr,_){var k=_[3],I=_[1],U=mu(u(H0[1][1+s],H0),I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,U,_[2],Y]}function O0(H0,Fr,_){function k(U){return[0,_[1],U]}var I=_[2];return ee(u(H0[1][1+c],H0),I,_,k)}function q0(H0,Fr){if(Fr[0]===0){var _=function(D0){return[0,D0]},k=Fr[1];return ee(u(H0[1][1+p],H0),k,Fr,_)}var I=Fr[1],U=I[2],Y=U[2],y0=a(H0[1][1+p],H0,Y);return Y===y0?Fr:[1,[0,I[1],[0,U[1],y0]]]}function er(H0,Fr,_){var k=_[4],I=_[3],U=a(H0[1][1+x],H0,I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,_[1],_[2],U,Y]}function yr(H0,Fr){var _=Fr[2],k=Fr[1];function I(Y){return[0,k,[0,_[1],_[2],_[3],Y]]}var U=_[4];return ee(u(H0[1][1+c],H0),U,[0,k,_],I)}function vr(H0,Fr,_){var k=_[9],I=_[3],U=a(H0[1][1+s0],H0,I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,_[1],_[2],U,_[4],_[5],_[6],_[7],_[8],Y,_[10]]}function $0(H0,Fr,_){var k=_[4],I=_[3],U=a(H0[1][1+y],H0,I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,_[1],_[2],U,Y]}function Sr(H0,Fr){var _=Fr[2],k=_[1],I=Fr[1];function U(y0){return[0,I,[0,k,y0]]}var Y=_[2];return ee(u(H0[1][1+c],H0),Y,Fr,U)}function Mr(H0,Fr){var _=Fr[2],k=_[2],I=_[1],U=Fr[1];if(k===0){var Y=function(I0){return[0,U,[0,I0,k]]};return ee(u(H0[1][1+p],H0),I,Fr,Y)}function y0(I0){return[0,U,[0,I,I0]]}var D0=u(H0[1][1+i],H0);return ee(function(I0){return ze(D0,I0)},k,Fr,y0)}function Br(H0,Fr){var _=Fr[2],k=_[2],I=Fr[1];function U(D0){return[0,I,[0,D0,k]]}var Y=_[1],y0=u(H0[1][1+T],H0);return ee(function(D0){return Ql(y0,D0)},Y,Fr,U)}function qr(H0,Fr,_){var k=_[2];if(k===0){var I=function(D0){return[0,D0,_[2],_[3]]},U=_[1];return ee(u(H0[1][1+y],H0),U,_,I)}function Y(D0){return[0,_[1],D0,_[3]]}var y0=u(H0[1][1+i],H0);return ee(function(D0){return ze(y0,D0)},k,_,Y)}function jr(H0,Fr){var _=Fr[2],k=_[1],I=Fr[1];function U(y0){return[0,I,[0,k,y0]]}var Y=_[2];return ee(u(H0[1][1+c],H0),Y,Fr,U)}function $r(H0,Fr,_){var k=_[7],I=_[2],U=a(H0[1][1+E],H0,I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,_[1],U,_[3],_[4],_[5],_[6],Y]}function ne(H0,Fr){var _=Fr[2],k=_[1],I=Fr[1];function U(y0){return[0,I,[0,k,y0]]}var Y=_[2];return ee(u(H0[1][1+c],H0),Y,Fr,U)}function Qr(H0,Fr){var _=Fr[2],k=_[1],I=Fr[1];function U(y0){return[0,I,[0,k,y0]]}var Y=_[2];return ee(u(H0[1][1+c],H0),Y,Fr,U)}function pe(H0,Fr,_){var k=_[4],I=_[3],U=a(H0[1][1+w],H0,I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,_[1],_[2],U,Y]}function oe(H0,Fr,_){function k(U){return[0,_[1],U]}var I=_[2];return ee(u(H0[1][1+c],H0),I,_,k)}function me(H0,Fr,_){var k=_[4],I=_[3],U=a(H0[1][1+y],H0,I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,_[1],_[2],U,Y]}function ae(H0,Fr,_){var k=_[4],I=_[3],U=a(H0[1][1+y],H0,I),Y=a(H0[1][1+c],H0,k);return I===U&&k===Y?_:[0,_[1],_[2],U,Y]}function ce(H0,Fr){function _(I){return[0,Fr[1],I]}var k=Fr[2];return ee(u(H0[1][1+c],H0),k,Fr,_)}function ge(H0,Fr,_){function k(U){return[0,_[1],U]}var I=_[2];return ee(u(H0[1][1+c],H0),I,_,k)}return BN(t,[0,m0,function(H0,Fr){var _=Fr[2],k=u(ml(function(U){return ms(U[1][2],H0[1+n])<0?1:0}),_),I=Rc(k);return Rc(_)===I?Fr:[0,Fr[1],k,Fr[3]]},Jr,ge,Wr,ce,Rr,ae,xr,me,Or,oe,Hr,pe,w,Qr,h,ne,Tr,$r,E,jr,Lr,qr,W0,Br,T,Mr,ar,Sr,Ar,$0,dr,vr,X,yr,G0,er,b,q0,X0,O0,E0,b0,_0,p0,w0,Z,a0,B,t0,R0,x0,rr,c0,T0,e0,S0,s,l0,g0,i0,k0,Q,f0,L,V,P,K,v0,M,fe,S,Ir,A,_r]),function(H0,Fr,_){var k=Gp(Fr,t);return k[1+n]=_,u(or,k),MN(Fr,k,t)}});function C9(t){var n=i2(t);if(n)var e=n[1],i=pe0(t)?(Vl(t,e[3]),[0,a(Ee0[1],0,e[3])]):0,x=i;else var x=n;return[0,0,function(c,s){return x?a(s,x[1],c):c}]}function rb(t){var n=i2(t);if(n){var e=n[1];if(pe0(t)){Vl(t,e[3]);var i=Us(t),x=[0,a(Ee0[1],0,[0,e[3][1]+1|0,0])],c=i}else var x=0,c=Us(t)}else var x=0,c=0;return[0,c,function(s,p){return x?a(p,x[1],s):s}]}function Wt(t){return f7(t)?rb(t):C9(t)}function ds(t,n){var e=Wt(t);function i(x,c){return a(Ze(x,Nv,27),x,c)}return a(e[2],n,i)}function xi(t,n){if(n)var e=Wt(t),i=function(c,s){return a(Ze(c,_F,30),c,s)},x=[0,a(e[2],n[1],i)];else var x=n;return x}function a2(t,n){var e=Wt(t);function i(x,c){return a(Ze(x,-983660142,32),x,c)}return a(e[2],n,i)}function eb(t,n){var e=Wt(t);function i(x,c){return a(Ze(x,-455772979,33),x,c)}return a(e[2],n,i)}function Se0(t,n){if(n)var e=Wt(t),i=function(c,s){return a(Ze(c,FH,34),c,s)},x=[0,a(e[2],n[1],i)];else var x=n;return x}function Xi(t,n){var e=Wt(t);function i(x,c){return a(Ze(x,VY,35),x,c)}return a(e[2],n,i)}function ge0(t,n){var e=Wt(t);function i(x,c){var s=u(Ze(x,tH,37),x);return Ql(function(p){return mu(s,p)},c)}return a(e[2],n,i)}function Fe0(t,n){var e=Wt(t);function i(x,c){return a(Ze(x,-21476009,38),x,c)}return a(e[2],n,i)}jp(bGr,function(t){var n=RN(t,oGr),e=jN(sGr),i=e.length-1,x=az.length-1,c=Gv(i+x|0,0),s=i-1|0,p=0;if(!(s<0))for(var y=p;;){var T=Fl(t,nu(e,y)[1+y]);nu(c,y)[1+y]=T;var E=y+1|0;if(s!==y){var y=E;continue}break}var h=x-1|0,w=0;if(!(h<0))for(var G=w;;){var A=G+i|0,S=RN(t,nu(az,G)[1+G]);nu(c,A)[1+A]=S;var M=G+1|0;if(h!==G){var G=M;continue}break}var K=c[4],V=c[5],f0=c[d6],m0=c[sp],k0=c[ih],g0=c[gv],e0=c[38],x0=c[dT],l=c[Wy],c0=GN(t,0,0,xz,$D,1)[1];function t0(b,G0,X){return a(b[1][1+f0],b,X[2]),X}function a0(b,G0){return a(b[1][1+m0],b,G0),G0}function w0(b,G0){var X=G0[1],s0=b[1+g0];if(s0){var dr=ms(s0[1][1][2],X[2])<0?1:0,Ar=dr&&(b[1+g0]=[0,G0],0);return Ar}var ar=0<=ms(X[2],b[1+n][3])?1:0,W0=ar&&(b[1+g0]=[0,G0],0);return W0}function _0(b,G0){var X=G0[1],s0=b[1+k0];if(s0){var dr=ms(X[2],s0[1][1][2])<0?1:0,Ar=dr&&(b[1+k0]=[0,G0],0);return Ar}var ar=ms(X[2],b[1+n][2])<0?1:0,W0=ar&&(b[1+k0]=[0,G0],0);return W0}function E0(b,G0){return G0&&a(b[1][1+m0],b,G0[1])}function X0(b,G0){var X=G0[1];Pu(u(b[1][1+V],b),X);var s0=G0[2];return Pu(u(b[1][1+K],b),s0)}return BN(t,[0,x0,function(b){return[0,b[1+k0],b[1+g0]]},m0,X0,f0,E0,V,_0,K,w0,e0,a0,l,t0]),function(b,G0,X){var s0=Gp(G0,t);return s0[1+n]=X,u(c0,s0),s0[1+k0]=0,s0[1+g0]=0,MN(G0,s0,t)}});function Te0(t){return t===3?2:(4<=t,1)}function TL(t,n,e){if(e){var i=e[1],x=0;if(i===8232||Uu===i)x=1;else if(i===10)var s=6;else if(i===13)var s=5;else if(ow<=i)var s=3;else if(Vd<=i)var s=2;else var c=Rt<=i?1:0,s=c&&1;if(x)var s=7;var p=s}else var p=4;return[0,p,t]}var ane=[wt,dGr,G7(0)];function Oe0(t,n,e,i){try{var x=nu(t,n)[1+n];return x}catch(c){throw c=Et(c),c[1]===eN?[0,ane,e,ir(Qn(_Gr),i,n,t.length-1)]:c}}function P9(t,n){if(n[1]===0&&n[2]===0)return 0;var e=Oe0(t,n[1]-1|0,n,pGr);return Oe0(e,n[2],n,mGr)}var one=Ee;function cne(t,n){return a(f(t),VWr,n)}u(uL([0,one])[33],cne);function Ie0(t){var n=N0(t),e=0;if(typeof n=="number")switch(n){case 15:var i=zWr;break;case 16:var i=KWr;break;case 17:var i=WWr;break;case 18:var i=JWr;break;case 19:var i=$Wr;break;case 20:var i=ZWr;break;case 21:var i=QWr;break;case 22:var i=rJr;break;case 23:var i=eJr;break;case 24:var i=nJr;break;case 25:var i=tJr;break;case 26:var i=uJr;break;case 27:var i=iJr;break;case 28:var i=fJr;break;case 29:var i=xJr;break;case 30:var i=aJr;break;case 31:var i=oJr;break;case 32:var i=cJr;break;case 33:var i=sJr;break;case 34:var i=vJr;break;case 35:var i=lJr;break;case 36:var i=bJr;break;case 37:var i=pJr;break;case 38:var i=mJr;break;case 39:var i=_Jr;break;case 40:var i=yJr;break;case 41:var i=dJr;break;case 42:var i=hJr;break;case 43:var i=kJr;break;case 44:var i=wJr;break;case 45:var i=EJr;break;case 46:var i=SJr;break;case 47:var i=gJr;break;case 48:var i=FJr;break;case 49:var i=TJr;break;case 50:var i=OJr;break;case 51:var i=IJr;break;case 52:var i=AJr;break;case 53:var i=NJr;break;case 54:var i=CJr;break;case 55:var i=PJr;break;case 56:var i=DJr;break;case 57:var i=LJr;break;case 58:var i=RJr;break;case 59:var i=jJr;break;case 60:var i=GJr;break;case 61:var i=MJr;break;case 62:var i=BJr;break;case 63:var i=qJr;break;case 64:var i=UJr;break;case 65:var i=HJr;break;case 114:var i=XJr;break;case 115:var i=YJr;break;case 116:var i=VJr;break;case 117:var i=zJr;break;case 118:var i=KJr;break;case 119:var i=WJr;break;case 120:var i=JJr;break;case 121:var i=$Jr;break;default:e=1}else switch(n[0]){case 4:var i=n[2];break;case 9:var i=n[1]?ZJr:QJr;break;default:e=1}if(e){St(r$r,t);var i=e$r}return ie(t),i}function V7(t){var n=De(t),e=pr(t),i=Ie0(t);return[0,n,[0,i,lr([0,e],[0,we(t)],0)]]}function Ae0(t){var n=De(t),e=pr(t);V0(t,14);var i=De(t),x=Ie0(t),c=lr([0,e],[0,we(t)],0),s=yt(n,i),p=i[2],y=n[3],T=y[1]===p[1]?1:0,E=T&&(y[2]===p[2]?1:0);return 1-E&&ue(t,[0,s,L7]),[0,s,[0,x,c]]}function U1(t){var n=t[2],e=n[3]===0?1:0;if(e)for(var i=n[2];;){if(i){var x=i[1][2],c=0,s=i[2];if(x[1][2][0]===2&&!x[2]){var p=1;c=1}if(!c)var p=0;if(p){var i=s;continue}return p}return 1}return e}function nb(t){for(var n=t;;){var e=n[2];if(e[0]===27){var i=e[1][2];if(i[2][0]===23)return 1;var n=i;continue}return 0}}function cr(t,n,e){var i=t?t[1]:De(e),x=u(n,e),c=i2(e),s=c?yt(i,c[1]):i;return[0,s,x]}function OL(t,n,e){var i=cr(t,n,e),x=i[2];return[0,[0,i[1],x[1]],x[2]]}function sne(t){function n(B){var Z=De(B),p0=N0(B);if(typeof p0=="number"){if(c7===p0){var b0=pr(B);return ie(B),[0,[0,Z,[0,0,lr([0,b0],0,0)]]]}if(D7===p0){var O0=pr(B);return ie(B),[0,[0,Z,[0,1,lr([0,O0],0,0)]]]}}return 0}var e=function B(Z){return B.fun(Z)},i=function B(Z){return B.fun(Z)},x=function B(Z){return B.fun(Z)},c=function B(Z,p0,b0){return B.fun(Z,p0,b0)},s=function B(Z){return B.fun(Z)},p=function B(Z,p0,b0){return B.fun(Z,p0,b0)},y=function B(Z){return B.fun(Z)},T=function B(Z,p0){return B.fun(Z,p0)},E=function B(Z){return B.fun(Z)},h=function B(Z){return B.fun(Z)},w=function B(Z,p0,b0){return B.fun(Z,p0,b0)},G=function B(Z,p0,b0,O0){return B.fun(Z,p0,b0,O0)},A=function B(Z){return B.fun(Z)},S=function B(Z,p0){return B.fun(Z,p0)},M=function B(Z){return B.fun(Z)},K=function B(Z){return B.fun(Z)},V=function B(Z){return B.fun(Z)},f0=function B(Z){return B.fun(Z)},m0=function B(Z){return B.fun(Z)},k0=function B(Z){return B.fun(Z)},g0=function B(Z,p0){return B.fun(Z,p0)},e0=function B(Z){return B.fun(Z)},x0=function B(Z){return B.fun(Z)},l=function B(Z){return B.fun(Z)},c0=function B(Z){return B.fun(Z)},t0=function B(Z){return B.fun(Z)},a0=function B(Z){return B.fun(Z)},w0=function B(Z){return B.fun(Z)},_0=function B(Z,p0,b0,O0){return B.fun(Z,p0,b0,O0)},E0=function B(Z,p0,b0,O0){return B.fun(Z,p0,b0,O0)},X0=function B(Z){return B.fun(Z)},b=function B(Z){return B.fun(Z)},G0=function B(Z){return B.fun(Z)},X=function B(Z){return B.fun(Z)},s0=function B(Z){return B.fun(Z)},dr=function B(Z){return B.fun(Z)},Ar=function B(Z,p0){return B.fun(Z,p0)},ar=function B(Z,p0){return B.fun(Z,p0)},W0=function B(Z){return B.fun(Z)},Lr=function B(Z,p0,b0){return B.fun(Z,p0,b0)};N(e,function(B){return u(x,B)}),N(i,function(B){return 1-iu(B)&&Ge(B,12),cr(0,function(Z){return V0(Z,86),u(e,Z)},B)}),N(x,function(B){var Z=N0(B)===89?1:0;if(Z){var p0=pr(B);ie(B);var b0=p0}else var b0=Z;return ir(c,B,[0,b0],u(s,B))}),N(c,function(B,Z,p0){var b0=Z&&Z[1];if(N0(B)===89){var O0=[0,p0,0],q0=function(er){for(var yr=O0;;){var vr=N0(er);if(typeof vr=="number"&&vr===89){V0(er,89);var yr=[0,u(s,er),yr];continue}var $0=de(yr);if($0){var Sr=$0[2];if(Sr){var Mr=lr([0,b0],0,0);return[19,[0,[0,$0[1],Sr[1],Sr[2]],Mr]]}}throw[0,wn,P$r]}};return cr([0,p0[1]],q0,B)}return p0}),N(s,function(B){var Z=N0(B)===91?1:0;if(Z){var p0=pr(B);ie(B);var b0=p0}else var b0=Z;return ir(p,B,[0,b0],u(y,B))}),N(p,function(B,Z,p0){var b0=Z&&Z[1];if(N0(B)===91){var O0=[0,p0,0],q0=function(er){for(var yr=O0;;){var vr=N0(er);if(typeof vr=="number"&&vr===91){V0(er,91);var yr=[0,u(y,er),yr];continue}var $0=de(yr);if($0){var Sr=$0[2];if(Sr){var Mr=lr([0,b0],0,0);return[20,[0,[0,$0[1],Sr[1],Sr[2]],Mr]]}}throw[0,wn,C$r]}};return cr([0,p0[1]],q0,B)}return p0}),N(y,function(B){return a(T,B,u(E,B))}),N(T,function(B,Z){var p0=N0(B);if(typeof p0=="number"&&p0===11&&!B[15]){var b0=a(g0,B,Z);return R(_0,B,b0[1],0,[0,b0[1],[0,0,[0,b0,0],0,0]])}return Z}),N(E,function(B){var Z=N0(B);return typeof Z=="number"&&Z===85?cr(0,function(p0){var b0=pr(p0);V0(p0,85);var O0=lr([0,b0],0,0);return[11,[0,u(E,p0),O0]]},B):u(h,B)}),N(h,function(B){return ir(w,0,B,u(V,B))}),N(w,function(B,Z,p0){var b0=B&&B[1];if(f7(Z))return p0;var O0=N0(Z);if(typeof O0=="number"){if(O0===6)return ie(Z),R(G,b0,0,Z,p0);if(O0===10){var q0=Yn(1,Z);return typeof q0=="number"&&q0===6?(Ge(Z,A$r),V0(Z,10),V0(Z,6),R(G,b0,0,Z,p0)):(Ge(Z,N$r),p0)}if(O0===83)return ie(Z),N0(Z)!==6&&Ge(Z,30),V0(Z,6),R(G,1,1,Z,p0)}return p0}),N(G,function(B,Z,p0,b0){function O0(q0){if(!Z&&fu(q0,7))return[15,[0,b0,lr(0,[0,we(q0)],0)]];var er=u(e,q0);V0(q0,7);var yr=[0,b0,er,lr(0,[0,we(q0)],0)];return B?[18,[0,yr,Z]]:[17,yr]}return ir(w,[0,B],p0,cr([0,b0[1]],O0,p0))}),N(A,function(B){return a(S,B,a(t[13],0,B))}),N(S,function(B,Z){for(var p0=[0,Z[1],[0,Z]];;){var b0=p0[2];if(N0(B)===10&&A9(1,B)){var O0=function(vr){return function($0){return V0($0,10),[0,vr,V7($0)]}}(b0),q0=cr([0,p0[1]],O0,B),er=q0[1],p0=[0,er,[1,[0,er,q0[2]]]];continue}return b0}}),N(M,function(B){var Z=N0(B);if(typeof Z=="number"){if(Z===4){ie(B);var p0=u(M,B);return V0(B,5),p0}}else if(Z[0]===4)return[0,u(A,B)];return Ge(B,51),0}),N(K,function(B){return cr(0,function(Z){var p0=pr(Z);V0(Z,46);var b0=u(M,Z);if(b0){var O0=lr([0,p0],0,0);return[21,[0,b0[1],O0]]}return I$r},B)}),N(V,function(B){var Z=De(B),p0=N0(B),b0=0;if(typeof p0=="number")switch(p0){case 4:return u(a0,B);case 6:return u(k0,B);case 46:return u(K,B);case 53:return cr(0,function(ge){var H0=pr(ge);V0(ge,53);var Fr=u(X0,ge),_=lr([0,H0],0,0);return[14,[0,Fr[2],Fr[1],_]]},B);case 98:return u(w0,B);case 106:var O0=pr(B);return V0(B,Xt),[0,Z,[10,lr([0,O0],[0,we(B)],0)]];case 42:b0=1;break;case 0:case 2:var q0=R(E0,0,1,1,B);return[0,q0[1],[13,q0[2]]];case 30:case 31:var er=pr(B);return V0(B,p0),[0,Z,[26,[0,p0===31?1:0,lr([0,er],[0,we(B)],0)]]]}else switch(p0[0]){case 2:var yr=p0[1],vr=yr[4],$0=yr[3],Sr=yr[2],Mr=yr[1];vr&&Si(B,45);var Br=pr(B);return V0(B,[2,[0,Mr,Sr,$0,vr]]),[0,Mr,[23,[0,Sr,$0,lr([0,Br],[0,we(B)],0)]]];case 10:var qr=p0[3],jr=p0[2],$r=p0[1],ne=pr(B);V0(B,[10,$r,jr,qr]);var Qr=we(B);return $r===1&&Si(B,45),[0,Z,[24,[0,jr,qr,lr([0,ne],[0,Qr],0)]]];case 11:var pe=p0[3],oe=p0[2],me=pr(B);return V0(B,[11,p0[1],oe,pe]),[0,Z,[25,[0,oe,pe,lr([0,me],[0,we(B)],0)]]];case 4:b0=1;break}if(b0){var ae=u(dr,B);return[0,ae[1],[16,ae[2]]]}var ce=u(m0,B);return ce?[0,Z,ce[1]]:(St(T$r,B),[0,Z,O$r])}),N(f0,function(B){var Z=0;if(typeof B=="number")switch(B){case 29:case 114:case 115:case 116:case 117:case 118:case 119:case 120:case 121:Z=1;break}else B[0]===9&&(Z=1);return Z?1:0}),N(m0,function(B){var Z=pr(B),p0=N0(B);if(typeof p0=="number")switch(p0){case 29:return ie(B),[0,[4,lr([0,Z],[0,we(B)],0)]];case 114:return ie(B),[0,[0,lr([0,Z],[0,we(B)],0)]];case 115:return ie(B),[0,[1,lr([0,Z],[0,we(B)],0)]];case 116:return ie(B),[0,[2,lr([0,Z],[0,we(B)],0)]];case 117:return ie(B),[0,[5,lr([0,Z],[0,we(B)],0)]];case 118:return ie(B),[0,[6,lr([0,Z],[0,we(B)],0)]];case 119:return ie(B),[0,[7,lr([0,Z],[0,we(B)],0)]];case 120:return ie(B),[0,[3,lr([0,Z],[0,we(B)],0)]];case 121:return ie(B),[0,[9,lr([0,Z],[0,we(B)],0)]]}else if(p0[0]===9)return ie(B),[0,[8,lr([0,Z],[0,we(B)],0)]];return 0}),N(k0,function(B){return cr(0,function(Z){var p0=pr(Z);V0(Z,6);for(var b0=u2(0,Z),O0=0;;){var q0=N0(b0);if(typeof q0=="number"){var er=0;if((q0===7||Pn===q0)&&(er=1),er){var yr=de(O0);return V0(Z,7),[22,[0,yr,lr([0,p0],[0,we(Z)],0)]]}}var vr=[0,u(e,b0),O0];N0(b0)!==7&&V0(b0,9);var O0=vr}},B)}),N(g0,function(B,Z){return[0,Z[1],[0,0,Z,0]]}),N(e0,function(B){return cr(0,function(Z){zu(Z,0);var p0=a(t[13],0,Z);h7(Z),1-iu(Z)&&Ge(Z,12);var b0=fu(Z,85);return V0(Z,86),[0,[0,p0],u(e,Z),b0]},B)});function Tr(B){var Z=Yn(1,B);return typeof Z=="number"&&!(1<(Z+W2|0)>>>0)?u(e0,B):a(g0,B,u(e,B))}N(x0,function(B){var Z=0;return function(p0){for(var b0=Z,O0=p0;;){var q0=N0(B);if(typeof q0=="number")switch(q0){case 5:case 12:case 113:var er=q0===12?1:0,yr=er&&[0,cr(0,function(jr){var $r=pr(jr);V0(jr,12);var ne=lr([0,$r],0,0);return[0,Tr(jr),ne]},B)];return[0,b0,de(O0),yr,0]}else if(q0[0]===4&&!n0(q0[3],F$r)){var vr=0;if((Yn(1,B)===86||Yn(1,B)===85)&&(vr=1),vr){var $0=b0!==0?1:0,Sr=$0||(O0!==0?1:0);Sr&&Ge(B,c7);var Mr=cr(0,function($r){var ne=pr($r);ie($r),N0($r)===85&&Ge($r,D7);var Qr=lr([0,ne],0,0);return[0,u(i,$r),Qr]},B);N0(B)!==5&&V0(B,9);var b0=[0,Mr];continue}}var Br=[0,Tr(B),O0];N0(B)!==5&&V0(B,9);var O0=Br}}}),N(l,function(B){return cr(0,function(Z){var p0=pr(Z);V0(Z,4);var b0=a(x0,Z,0),O0=pr(Z);V0(Z,5);var q0=_u([0,p0],[0,we(Z)],O0,0);return[0,b0[1],b0[2],b0[3],q0]},B)}),N(c0,function(B){var Z=pr(B);V0(B,4);var p0=u2(0,B),b0=N0(p0),O0=0;if(typeof b0=="number")switch(b0){case 5:var q0=g$r;break;case 42:O0=2;break;case 12:case 113:var q0=[0,a(x0,p0,0)];break;default:O0=1}else b0[0]===4?O0=2:O0=1;switch(O0){case 1:if(u(f0,b0)){var er=Yn(1,p0),yr=0;if(typeof er=="number"&&!(1<(er+W2|0)>>>0)){var vr=[0,a(x0,p0,0)];yr=1}if(!yr)var vr=[1,u(e,p0)];var q0=vr}else var q0=[1,u(e,p0)];break;case 2:var q0=u(t0,p0);break}if(q0[0]===0)var $0=q0;else{var Sr=q0[1];if(B[15])var Mr=q0;else{var Br=N0(B),qr=0;if(typeof Br=="number")if(Br===5)var jr=Yn(1,B)===11?[0,a(x0,B,[0,a(g0,B,Sr),0])]:[1,Sr];else if(Br===9){V0(B,9);var jr=[0,a(x0,B,[0,a(g0,B,Sr),0])]}else qr=1;else qr=1;if(qr)var jr=q0;var Mr=jr}var $0=Mr}var $r=pr(B);V0(B,5);var ne=we(B);if($0[0]===0){var Qr=$0[1],pe=_u([0,Z],[0,ne],$r,0);return[0,[0,Qr[1],Qr[2],Qr[3],pe]]}return[1,ir(Lr,$0[1],Z,ne)]}),N(t0,function(B){var Z=Yn(1,B);return typeof Z=="number"&&!(1<(Z+W2|0)>>>0)?[0,a(x0,B,0)]:[1,ir(c,B,0,ir(p,B,0,a(T,B,ir(w,0,B,a(ar,B,u(b,B))))))]}),N(a0,function(B){var Z=De(B),p0=cr(0,c0,B),b0=p0[2];return b0[0]===0?R(_0,B,Z,0,[0,p0[1],b0[1]]):b0[1]}),N(w0,function(B){var Z=De(B),p0=xi(B,u(X,B));return R(_0,B,Z,p0,u(l,B))}),N(_0,function(B,Z,p0,b0){return cr([0,Z],function(O0){return V0(O0,11),[12,[0,p0,b0,u(e,O0),0]]},B)});function Hr(B,Z,p0){return cr([0,Z],function(b0){var O0=u(l,b0);return V0(b0,86),[0,p0,O0,u(e,b0),0]},B)}function Or(B,Z){var p0=N0(Z);if(typeof p0=="number"&&!(10<=p0))switch(p0){case 1:if(!B)return 0;break;case 3:if(B)return 0;break;case 8:case 9:return ie(Z)}return q1(Z,9)}function xr(B,Z){return Z&&ue(B,[0,Z[1][1],7])}function Rr(B,Z){return Z&&ue(B,[0,Z[1],9])}N(E0,function(B,Z,p0,b0){var O0=Z&&(N0(b0)===2?1:0),q0=Z&&1-O0;return cr(0,function(er){var yr=pr(er),vr=O0&&2;V0(er,vr);var $0=u2(0,er),Sr=S$r;r:for(;;){var Mr=Sr[3],Br=Sr[2],qr=Sr[1];if(B&&p0)throw[0,wn,c$r];if(q0&&!p0)throw[0,wn,s$r];var jr=De($0),$r=N0($0);if(typeof $r=="number"){var ne=0;if(13<=$r){if(Pn===$r){var Qr=[0,de(qr),Br,Mr];ne=1}}else if($r)switch($r-1|0){case 0:if(!O0){var Qr=[0,de(qr),Br,Mr];ne=1}break;case 2:if(O0){var Qr=[0,de(qr),Br,Mr];ne=1}break;case 11:if(!p0){ie($0);var pe=N0($0);if(typeof pe=="number"&&!(10<=pe))switch(pe){case 1:case 3:case 8:case 9:ue($0,[0,jr,20]),Or(O0,$0);continue}var oe=gL($0);u(kL($0),oe),ue($0,[0,jr,17]),ie($0),Or(O0,$0);continue}var me=pr($0);ie($0);var ae=N0($0),ce=0;if(typeof ae=="number"&&!(10<=ae))switch(ae){case 1:case 3:case 8:case 9:Or(O0,$0);var ge=N0($0),H0=0;if(typeof ge=="number"){var Fr=ge-1|0;if(!(2>>0))switch(Fr){case 0:if(q0){var Qr=[0,de(qr),1,me];ne=1,ce=1,H0=1}break;case 1:break;default:ue($0,[0,jr,19]);var Qr=[0,de(qr),Br,Mr];ne=1,ce=1,H0=1}}if(!H0){ue($0,[0,jr,18]);continue}break}if(!ce){var _=[1,cr([0,jr],function(K7){return function(qt){var bt=lr([0,K7],0,0);return[0,u(e,qt),bt]}}(me),$0)];Or(O0,$0);var Sr=[0,[0,_,qr],Br,Mr];continue}break}if(ne){var k=pr(er),I=un(Qr[3],k),U=O0?3:1;V0(er,U);var Y=_u([0,yr],[0,we(er)],I,0);return[0,O0,Qr[2],Qr[1],Y]}}for(var y0=B,D0=B,I0=0,D=0,u0=0,Y0=0;;){var J0=N0($0),fr=0;if(typeof J0=="number")switch(J0){case 6:Rr($0,u0);var Q0=Yn(1,$0),F0=0;if(typeof Q0=="number"&&Q0===6){xr($0,I0);var Cr=[4,cr([0,jr],function(qt,bt,U0){return function(L0){var Re=un(bt,pr(L0));V0(L0,6),V0(L0,6);var He=V7(L0);V0(L0,7),V0(L0,7);var he=N0(L0),_e=0;if(typeof he=="number"){var Zn=0;if(he!==4&&he!==98&&(Zn=1),!Zn){var dn=Hr(L0,qt,xi(L0,u(X,L0))),it=0,ft=[0,dn[1],[12,dn[2]]],Rn=1,nt=0;_e=1}}if(!_e){var ht=fu(L0,85),tn=we(L0);V0(L0,86);var it=tn,ft=u(e,L0),Rn=0,nt=ht}return[0,He,ft,nt,U0!==0?1:0,Rn,lr([0,Re],[0,it],0)]}}(jr,Y0,D),$0)];F0=1}if(!F0)var Cr=[2,cr([0,jr],function(K7,qt,bt){return function(U0){var L0=un(K7,pr(U0));V0(U0,6);var Re=Yn(1,U0)===86?1:0;if(Re){var He=V7(U0);V0(U0,86);var he=[0,He]}else var he=Re;var _e=u(e,U0);V0(U0,7);var Zn=we(U0);V0(U0,86);var dn=u(e,U0);return[0,he,_e,dn,qt!==0?1:0,bt,lr([0,L0],[0,Zn],0)]}}(Y0,D,I0),$0)];break;case 42:if(y0){if(I0===0){var gr=[0,De($0)],mr=un(Y0,pr($0));ie($0);var y0=0,D0=0,D=gr,Y0=mr;continue}throw[0,wn,l$r]}fr=1;break;case 103:case 104:if(I0===0){var y0=0,D0=0,I0=n($0);continue}fr=1;break;case 4:case 98:Rr($0,u0),xr($0,I0);var Cr=[3,cr([0,jr],function(K7,qt){return function(bt){var U0=De(bt),L0=Hr(bt,U0,xi(bt,u(X,bt)));return[0,L0,qt!==0?1:0,lr([0,K7],0,0)]}}(Y0,D),$0)];break;default:fr=1}else if(J0[0]===4&&!n0(J0[3],b$r)){if(D0){if(I0===0){var sr=[0,De($0)],Pr=un(Y0,pr($0));ie($0);var y0=0,D0=0,u0=sr,Y0=Pr;continue}throw[0,wn,p$r]}fr=1}else fr=1;if(fr){var K0=0;if(D){var Ur=D[1];if(u0){var Cr=ke(m$r);K0=1}else if(typeof J0=="number"&&!(1<(J0+W2|0)>>>0)){var d0=[0,Ur,[1,Gc(lr([0,Y0],0,0),[0,Ur,_$r])]],Kr=0,re=u0,xe=0;K0=2}}else if(u0){var je=u0[1];if(typeof J0=="number"&&!(1<(J0+W2|0)>>>0)){var d0=[0,je,[1,Gc(lr([0,Y0],0,0),[0,je,y$r])]],Kr=0,re=0,xe=D;K0=2}}var ve=0;switch(K0){case 0:var Ie=function(qt){zu(qt,0);var bt=a(t[20],0,qt);return h7(qt),bt},Me=pr($0),Be=Ie($0),fn=Be[1],Ke=Be[2],Ae=0;if(Ke[0]===1){var xn=Ke[1][2][1],Qe=0;if(n0(xn,d$r)&&n0(xn,h$r)&&(Qe=1),!Qe){var yn=N0($0),on=0;if(typeof yn=="number"){var Ce=yn-5|0;if(92>>0){if(!(94<(Ce+1|0)>>>0)){Rr($0,u0),xr($0,I0);var We=Ke;Ae=1,on=1}}else if(!(1<(Ce+fX|0)>>>0)){var d0=[0,fn,Ke],Kr=Y0,re=u0,xe=D;ve=1,Ae=2,on=1}}if(!on){Xi($0,Ke);var rn=Ie($0),bn=qn(xn,k$r),Cn=un(Y0,Me);Rr($0,u0),xr($0,I0);var Cr=[0,cr([0,jr],function(bt,U0,L0,Re,He){return function(he){var _e=L0[1],Zn=Xi(he,L0[2]),dn=Hr(he,bt,0),it=dn[2][2];if(Re){var ft=it[2],Rn=0;if(ft[1])ue(he,[0,_e,R7]),Rn=1;else{var nt=0;!ft[2]&&!ft[3]&&(Rn=1,nt=1),nt||ue(he,[0,_e,80])}}else{var ht=it[2],tn=0;if(ht[1])ue(he,[0,_e,Xt]),tn=1;else{var cn=ht[2],tt=0;if(ht[3])ue(he,[0,_e,81]);else{var Tt=0;cn&&!cn[2]&&(Tt=1),Tt||(ue(he,[0,_e,81]),tt=1)}tt||(tn=1)}}var Fi=lr([0,He],0,0),hs=0,Iu=0,Vs=0,Vi=U0!==0?1:0,zs=0,Ks=Re?[1,dn]:[2,dn];return[0,Zn,Ks,zs,Vi,Vs,Iu,hs,Fi]}}(jr,D,rn,bn,Cn),$0)];Ae=2}}}var Hn=0;switch(Ae){case 2:Hn=1;break;case 0:var Sn=Be[2],vt=N0($0),At=0;if(typeof vt=="number"){var gt=0;if(vt!==4&&vt!==98&&(gt=1),!gt){Rr($0,u0),xr($0,I0);var We=Sn;At=1}}if(!At){var Jt=D!==0?1:0,Bt=0;if(Sn[0]===1){var Ft=Sn[1],Nt=Ft[2][1],du=0;if(B){var Ku=0;!qn(w$r,Nt)&&(!Jt||!qn(E$r,Nt))&&(Ku=1),Ku||(ue($0,[0,Ft[1],[21,Nt,Jt,0,0]]),Bt=1,du=1)}}var d0=[0,fn,Sn],Kr=Y0,re=u0,xe=D;ve=1,Hn=1}break}if(!Hn)var lt=Xi($0,We),xu=Hr($0,jr,xi($0,u(X,$0))),Mu=[0,xu[1],[12,xu[2]]],z7=[0,lt,[0,Mu],0,D!==0?1:0,0,1,0,lr([0,Y0],0,0)],Cr=[0,[0,Mu[1],z7]];break;case 2:ve=1;break}if(ve){var Yi=d0[2],a7=d0[1];1-iu($0)&&Ge($0,12);var Cr=[0,cr([0,jr],function(qt,bt,U0,L0,Re,He){return function(he){var _e=fu(he,85),Zn=he0(he,86)?u(e,he):[0,He,v$r];return[0,Re,[0,Zn],_e,bt!==0?1:0,U0!==0?1:0,0,qt,lr([0,L0],0,0)]}}(I0,xe,re,Kr,Yi,a7),$0)]}}Or(O0,$0);var Sr=[0,[0,Cr,qr],Br,Mr];continue r}}},b0)}),N(X0,function(B){var Z=N0(B)===41?1:0;if(Z){V0(B,41);for(var p0=0;;){var b0=[0,u(dr,B),p0],O0=N0(B);if(typeof O0=="number"&&O0===9){V0(B,9);var p0=b0;continue}var q0=ge0(B,de(b0));break}}else var q0=Z;return[0,q0,R(E0,0,0,0,B)]}),N(b,function(B){var Z=V7(B),p0=Z[2],b0=p0[1],O0=Z[1];return be0(b0)&&ue(B,[0,O0,3]),[0,O0,[0,b0,p0[2]]]}),N(G0,function(B){return cr(0,function(Z){var p0=u(b,Z),b0=N0(Z)===86?[1,u(i,Z)]:[0,G1(Z)];return[0,p0,b0]},B)}),N(X,function(B){var Z=N0(B)===98?1:0;if(Z){1-iu(B)&&Ge(B,12);var p0=[0,cr(0,function(O0){var q0=pr(O0);V0(O0,98);for(var er=0,yr=0;;){var vr=cr(0,function(ne){return function(Qr){var pe=n(Qr),oe=u(G0,Qr),me=oe[2],ae=N0(Qr),ce=0;if(typeof ae=="number"&&ae===82){ie(Qr);var ge=1,H0=[0,u(e,Qr)];ce=1}if(!ce){ne&&ue(Qr,[0,oe[1],77]);var ge=ne,H0=0}return[0,pe,me[1],me[2],H0,ge]}}(er),O0),$0=vr[2],Sr=[0,[0,vr[1],[0,$0[2],$0[3],$0[1],$0[4]]],yr],Mr=N0(O0),Br=0;if(typeof Mr=="number"){var qr=0;if(Mr!==99&&Pn!==Mr&&(qr=1),!qr){var jr=de(Sr);Br=1}}if(!Br){if(V0(O0,9),N0(O0)!==99){var er=$0[5],yr=Sr;continue}var jr=de(Sr)}var $r=pr(O0);return V0(O0,99),[0,jr,_u([0,q0],[0,we(O0)],$r,0)]}},B)]}else var p0=Z;return p0}),N(s0,function(B){var Z=N0(B)===98?1:0,p0=Z&&[0,cr(0,function(b0){var O0=pr(b0);V0(b0,98);for(var q0=u2(0,b0),er=0;;){var yr=N0(q0);if(typeof yr=="number"){var vr=0;if((yr===99||Pn===yr)&&(vr=1),vr){var $0=de(er),Sr=pr(q0);return V0(q0,99),[0,$0,_u([0,O0],[0,we(q0)],Sr,0)]}}var Mr=[0,u(e,q0),er];N0(q0)!==99&&V0(q0,9);var er=Mr}},B)];return p0}),N(dr,function(B){return a(Ar,B,u(b,B))}),N(Ar,function(B,Z){function p0(b0){for(var O0=[0,Z[1],[0,Z]];;){var q0=O0[2],er=O0[1];if(N0(b0)===10&&_e0(1,b0)){var yr=cr([0,er],function(qr){return function(jr){return V0(jr,10),[0,qr,u(b,jr)]}}(q0),b0),vr=yr[1],O0=[0,vr,[1,[0,vr,yr[2]]]];continue}if(N0(b0)===98)var $0=Wt(b0),Sr=function(Br,qr){return a(Ze(Br,-860373976,77),Br,qr)},Mr=a($0[2],q0,Sr);else var Mr=q0;return[0,Mr,u(s0,b0),0]}}return cr([0,Z[1]],p0,B)}),N(ar,function(B,Z){var p0=a(Ar,B,Z);return[0,p0[1],[16,p0[2]]]}),N(W0,function(B){var Z=N0(B);return typeof Z=="number"&&Z===86?[1,u(i,B)]:[0,G1(B)]}),N(Lr,function(B,Z,p0){var b0=B[2];function O0(gr){return _7(gr,lr([0,Z],[0,p0],0))}switch(b0[0]){case 0:var F0=[0,O0(b0[1])];break;case 1:var F0=[1,O0(b0[1])];break;case 2:var F0=[2,O0(b0[1])];break;case 3:var F0=[3,O0(b0[1])];break;case 4:var F0=[4,O0(b0[1])];break;case 5:var F0=[5,O0(b0[1])];break;case 6:var F0=[6,O0(b0[1])];break;case 7:var F0=[7,O0(b0[1])];break;case 8:var F0=[8,O0(b0[1])];break;case 9:var F0=[9,O0(b0[1])];break;case 10:var F0=[10,O0(b0[1])];break;case 11:var q0=b0[1],er=O0(q0[2]),F0=[11,[0,q0[1],er]];break;case 12:var yr=b0[1],vr=O0(yr[4]),F0=[12,[0,yr[1],yr[2],yr[3],vr]];break;case 13:var $0=b0[1],Sr=lr([0,Z],[0,p0],0),Mr=QD($0[4],Sr),F0=[13,[0,$0[1],$0[2],$0[3],Mr]];break;case 14:var Br=b0[1],qr=O0(Br[3]),F0=[14,[0,Br[1],Br[2],qr]];break;case 15:var jr=b0[1],$r=O0(jr[2]),F0=[15,[0,jr[1],$r]];break;case 16:var ne=b0[1],Qr=O0(ne[3]),F0=[16,[0,ne[1],ne[2],Qr]];break;case 17:var pe=b0[1],oe=O0(pe[3]),F0=[17,[0,pe[1],pe[2],oe]];break;case 18:var me=b0[1],ae=me[1],ce=me[2],ge=O0(ae[3]),F0=[18,[0,[0,ae[1],ae[2],ge],ce]];break;case 19:var H0=b0[1],Fr=O0(H0[2]),F0=[19,[0,H0[1],Fr]];break;case 20:var _=b0[1],k=O0(_[2]),F0=[20,[0,_[1],k]];break;case 21:var I=b0[1],U=O0(I[2]),F0=[21,[0,I[1],U]];break;case 22:var Y=b0[1],y0=O0(Y[2]),F0=[22,[0,Y[1],y0]];break;case 23:var D0=b0[1],I0=O0(D0[3]),F0=[23,[0,D0[1],D0[2],I0]];break;case 24:var D=b0[1],u0=O0(D[3]),F0=[24,[0,D[1],D[2],u0]];break;case 25:var Y0=b0[1],J0=O0(Y0[3]),F0=[25,[0,Y0[1],Y0[2],J0]];break;default:var fr=b0[1],Q0=O0(fr[2]),F0=[26,[0,fr[1],Q0]]}return[0,B[1],F0]});function Wr(B){var Z=pr(B);if(V0(B,66),N0(B)===4){var p0=un(Z,pr(B));V0(B,4),zu(B,0);var b0=u(t[9],B);return h7(B),V0(B,5),[0,[0,b0],lr([0,p0],[0,we(B)],0)]}return[0,0,lr([0,Z],[0,we(B)],0)]}var Jr=0;function or(B){var Z=u2(0,B),p0=N0(Z);return typeof p0=="number"&&p0===66?[0,cr(Jr,Wr,Z)]:0}function _r(B){var Z=N0(B),p0=Yn(1,B);if(typeof Z=="number"&&Z===86){if(typeof p0=="number"&&p0===66){V0(B,86);var b0=or(B);return[0,[0,G1(B)],b0]}var O0=u(W0,B),q0=N0(B)===66?a2(B,O0):O0;return[0,q0,or(B)]}return[0,[0,G1(B)],0]}function Ir(B,Z){var p0=ys(1,Z);zu(p0,1);var b0=u(B,p0);return h7(p0),b0}function fe(B){return Ir(e,B)}function v0(B){return Ir(b,B)}function P(B){return Ir(X,B)}function L(B){return Ir(s0,B)}function Q(B,Z){return Ir(ir(E0,B,0,0),Z)}function i0(B){return Ir(X0,B)}function l0(B){return Ir(l,B)}function S0(B){return Ir(i,B)}function T0(B){return Ir(W0,B)}function rr(B){return Ir(or,B)}function R0(B){return Ir(_r,B)}return[0,fe,v0,P,L,function(B){return Ir(dr,B)},Q,i0,l0,S0,T0,rr,R0]}function vne(t){function n(c,s){if(s[0]===0)return s[1];var p=s[2][1];return Pu(function(y){return ue(c,y)},p),s[1]}function e(c,s,p){var y=c?c[1]:26;if(p[0]===0)var T=p[1];else{var E=p[2][2];Pu(function(A){return ue(s,A)},E);var T=p[1]}1-u(t[23],T)&&ue(s,[0,T[1],y]);var h=T[2],w=0;return h[0]===10&&Bs(h[1][2][1])&&(Y7(s,[0,T[1],52]),w=1),a(t[19],s,T)}function i(c,s){return[0,[0,c,s[1]],[0,c,s[2]]]}function x(c,s){var p=jc(c[2],s[2]);return[0,jc(c[1],s[1]),p]}return[0,n,e,B$r,i,x,function(c){var s=de(c[2]);return[0,de(c[1]),s]}]}function lne(t){function n(S){var M=N0(S);if(typeof M=="number"){var K=M-99|0,V=0;if(6>>0?K===14&&(V=1):4<(K-1|0)>>>0&&(V=1),V)return we(S)}var f0=f7(S);return f0&&Us(S)}function e(S){var M=pr(S);zu(S,0);var K=cr(0,function(f0){V0(f0,0),V0(f0,12);var m0=u(t[10],f0);return V0(f0,1),m0},S);h7(S);var V=lr([0,M],[0,n(S)],0);return[0,K[1],[0,K[2],V]]}function i(S){return N0(S)===1?0:[0,u(t[7],S)]}function x(S){var M=pr(S);zu(S,0);var K=cr(0,function(f0){V0(f0,0);var m0=i(f0);return V0(f0,1),m0},S);h7(S);var V=_u([0,M],[0,n(S)],0,0);return[0,K[1],[0,K[2],V]]}function c(S){zu(S,0);var M=cr(0,function(K){V0(K,0);var V=N0(K),f0=0;if(typeof V=="number"&&V===12){var m0=pr(K);V0(K,12);var k0=u(t[10],K),x0=[3,[0,k0,lr([0,m0],0,0)]];f0=1}if(!f0)var g0=i(K),e0=g0?0:pr(K),x0=[2,[0,g0,_u(0,0,e0,0)]];return V0(K,1),x0},S);return h7(S),[0,M[1],M[2]]}function s(S){var M=De(S),K=N0(S),V=0;if(typeof K!="number"&&K[0]===7){var f0=K[1];V=1}if(!V){St(qQr,S);var f0=UQr}var m0=pr(S);ie(S);var k0=N0(S),g0=0;if(typeof k0=="number"){var e0=k0+jX|0,x0=0;if(72>>0?e0!==76&&(x0=1):70<(e0-1|0)>>>0||(x0=1),!x0){var l=we(S);g0=1}}if(!g0)var l=n(S);return[0,M,[0,f0,lr([0,m0],[0,l],0)]]}function p(S){var M=Yn(1,S);if(typeof M=="number"){if(M===10)for(var K=cr(0,function(m0){var k0=[0,s(m0)];return V0(m0,10),[0,k0,s(m0)]},S);;){var V=N0(S);if(typeof V=="number"&&V===10){var f0=function(k0){return function(g0){return V0(g0,10),[0,[1,k0],s(g0)]}}(K),K=cr([0,K[1]],f0,S);continue}return[2,K]}if(M===86)return[1,cr(0,function(m0){var k0=s(m0);return V0(m0,86),[0,k0,s(m0)]},S)]}return[0,s(S)]}function y(S){return cr(0,function(M){var K=Yn(1,M),V=0;if(typeof K=="number"&&K===86){var f0=[1,cr(0,function(b){var G0=s(b);return V0(b,86),[0,G0,s(b)]},M)];V=1}if(!V)var f0=[0,s(M)];var m0=N0(M),k0=0;if(typeof m0=="number"&&m0===82){V0(M,82);var g0=pr(M),e0=N0(M),x0=0;if(typeof e0=="number")if(e0===0){var l=x(M),c0=l[2],t0=l[1];c0[1]||ue(M,[0,t0,56]);var a0=[0,[1,t0,c0]]}else x0=1;else if(e0[0]===8){V0(M,e0);var w0=[0,e0[2]],_0=lr([0,g0],[0,n(M)],0),a0=[0,[0,e0[1],[0,w0,e0[3],_0]]]}else x0=1;if(x0){Ge(M,57);var a0=[0,[0,De(M),[0,BQr,MQr,0]]]}var E0=a0;k0=1}if(!k0)var E0=0;return[0,f0,E0]},S)}function T(S){return cr(0,function(M){V0(M,98);var K=N0(M);if(typeof K=="number"){if(K===99)return ie(M),jQr}else if(K[0]===7)for(var V=0,f0=p(M);;){var m0=N0(M);if(typeof m0=="number"){if(m0===0){var V=[0,[1,e(M)],V];continue}}else if(m0[0]===7){var V=[0,[0,y(M)],V];continue}var k0=de(V),g0=[0,s1,[0,f0,fu(M,R7),k0]];return fu(M,99)?[0,g0]:(q1(M,99),[1,g0])}return q1(M,99),GQr},S)}function E(S){return cr(0,function(M){V0(M,98),V0(M,R7);var K=N0(M);if(typeof K=="number"){if(K===99)return ie(M),Ni}else if(K[0]===7){var V=p(M);return he0(M,99),[0,s1,[0,V]]}return q1(M,99),Ni},S)}var h=function S(M){return S.fun(M)},w=function S(M){return S.fun(M)},G=function S(M){return S.fun(M)};N(h,function(S){var M=N0(S);if(typeof M=="number"){if(M===0)return c(S)}else if(M[0]===8)return V0(S,M),[0,M[1],[4,[0,M[2],M[3]]]];var K=u(G,S),V=K[2],f0=K[1];return Ni<=V[1]?[0,f0,[1,V[2]]]:[0,f0,[0,V[2]]]});function A(S){switch(S[0]){case 0:return S[1][2][1];case 1:var M=S[1][2],K=Te(DQr,M[2][2][1]);return Te(M[1][2][1],K);default:var V=S[1][2],f0=V[1],m0=f0[0]===0?f0[1][2][1]:A([2,f0[1]]);return Te(m0,Te(LQr,V[2][2][1]))}}return N(w,function(S){var M=pr(S),K=T(S);h7(S);var V=K[2];if(V[0]===0)var f0=V[1],m0=typeof f0=="number"?0:f0[2][2],k0=m0;else var k0=1;if(k0)var g0=IU,e0=g0,x0=cr(0,function(qr){return 0},S);else{zu(S,3);for(var l=De(S),c0=0;;){var t0=i2(S),a0=N0(S),w0=0;if(typeof a0=="number"){var _0=0;if(a0===98){zu(S,2);var E0=N0(S),X0=Yn(1,S),b=0;if(typeof E0=="number"&&E0===98&&typeof X0=="number"){var G0=0;if(R7!==X0&&Pn!==X0&&(G0=1),!G0){var X=E(S),s0=X[2],dr=X[1],Ar=typeof s0=="number"?[0,Ni,dr]:[0,s1,[0,dr,s0[2]]],ar=S[23][1],W0=0;if(ar){var Lr=ar[2];if(Lr){var Tr=Lr[2];W0=1}}if(!W0)var Tr=ke(jRr);S[23][1]=Tr;var Hr=n2(S),Or=Yl(S[24][1],Hr);S[25][1]=Or;var xr=[0,de(c0),t0,Ar];b=1}}if(!b){var Rr=u(w,S),Wr=Rr[2],Jr=Rr[1],or=Ni<=Wr[1]?[0,Jr,[1,Wr[2]]]:[0,Jr,[0,Wr[2]]],c0=[0,or,c0];continue}}else if(Pn===a0){St(0,S);var xr=[0,de(c0),t0,IU]}else w0=1,_0=1;if(!_0)var _r=t0?t0[1]:l,Ir=yt(l,_r),e0=xr[3],x0=[0,Ir,xr[1]]}else w0=1;if(w0){var c0=[0,u(h,S),c0];continue}break}}var fe=we(S),v0=0;if(typeof e0!="number"){var P=e0[1],L=0;if(s1===P){var Q=e0[2],i0=K[2];if(i0[0]===0){var l0=i0[1];if(typeof l0=="number")Ge(S,RQr);else{var S0=A(l0[2][1]);n0(A(Q[2][1]),S0)&&Ge(S,[17,S0])}}var T0=Q[1]}else if(Ni===P){var rr=K[2];if(rr[0]===0){var R0=rr[1];typeof R0!="number"&&Ge(S,[17,A(R0[2][1])])}var T0=e0[2]}else L=1;if(!L){var B=T0;v0=1}}if(!v0)var B=K[1];var Z=K[2][1],p0=K[1];if(typeof Z=="number"){var b0=0,O0=lr([0,M],[0,fe],0);if(typeof e0!="number"){var q0=e0[1],er=0;if(s1===q0)var yr=e0[2][1];else if(Ni===q0)var yr=e0[2];else er=1;if(!er){var vr=yr;b0=1}}if(!b0)var vr=B;var $0=[0,Ni,[0,p0,vr,x0,O0]]}else{var Sr=0,Mr=lr([0,M],[0,fe],0);if(typeof e0!="number"&&s1===e0[1]){var Br=[0,e0[2]];Sr=1}if(!Sr)var Br=0;var $0=[0,s1,[0,[0,p0,Z[2]],Br,x0,Mr]]}return[0,yt(K[1],B),$0]}),N(G,function(S){return zu(S,2),u(w,S)}),[0,n,e,i,x,c,s,p,y,T,E,h,w,G]}function gi(t){return typeof t=="number"?0:t[0]===0?1:t[1]}function bne(t,n){return[0,t,n]}function tb(t,n,e){return[1,2,n,e,t,0]}function ub(t,n,e){return[1,2,t,n,0,e]}function Xc(t,n,e,i){var x=gi(t),c=gi(i),s=c<=x?x+1|0:c+1|0;return s===1?[0,n,e]:[1,s,n,e,t,i]}function IL(t,n){var e=n!==0?1:0;if(e){if(n!==1){var i=n>>>1|0,x=IL(t,i),c=u(t,0),s=IL(t,(n-i|0)-1|0),p=c[2],y=c[1];return[1,gi(x)+1|0,y,p,x,s]}var T=u(t,0),E=[0,T[1],T[2]]}else var E=e;return E}function D9(t,n,e,i){var x=gi(t),c=gi(i),s=c<=x?x+1|0:c+1|0;return[1,s,n,e,t,i]}function Ou(t,n,e,i){var x=gi(t),c=gi(i);if((c+2|0)>>0){if(!(F7<(Or+1|0)>>>0)){var xr=Tr[3],Rr=Tr[4],Wr=de(Tr[1][4]),Jr=de(Tr[1][3]),or=de(Tr[1][2]),_r=de(Tr[1][1]),Ir=un(Rr,pr(G0));V0(G0,1);var fe=N0(G0),v0=0;if(typeof fe=="number"){var P=0;if(fe!==1&&Pn!==fe&&(v0=1,P=1),!P)var Q=we(G0)}else v0=1;if(v0)var L=f7(G0),Q=L&&Us(G0);var i0=_u([0,Lr],[0,Q],Ir,0);if(ar)switch(ar[1]){case 0:return[0,[0,_r,1,xr,i0]];case 1:return[1,[0,or,1,xr,i0]];case 2:var l0=1;break;default:return[3,[0,Wr,xr,i0]]}else{var S0=Rc(_r),T0=Rc(or),rr=Rc(Jr),R0=Rc(Wr),B=0;if(S0===0&&T0===0){var Z=0;if(rr===0&&R0===0&&(B=1,Z=1),!Z){var l0=0;B=2}}var p0=0;switch(B){case 0:if(T0===0&&rr===0&&R0<=S0)return Pu(function(K0){return ue(G0,[0,K0[1],[0,E0,K0[2][1][2][1]]])},Wr),[0,[0,_r,0,xr,i0]];if(S0===0&&rr===0&&R0<=T0)return Pu(function(K0){return ue(G0,[0,K0[1],[8,E0,K0[2][1][2][1]]])},Wr),[1,[0,or,0,xr,i0]];ue(G0,[0,X0,[2,E0]]);break;case 1:break;default:p0=1}if(!p0)return[2,[0,a$r,0,xr,i0]]}var b0=Rc(Jr),O0=Rc(Wr);if(b0!==0){var q0=0;if(O0!==0&&(b0>>0)F7<(Sr+1|0)>>>0&&(Mr=1);else if(Sr===7){V0(G0,9);var Br=N0(G0),qr=0;if(typeof Br=="number"){var jr=0;if(Br!==1&&Pn!==Br&&(jr=1),!jr){var $r=1;qr=1}}if(!qr)var $r=0;ue(G0,[0,er,[7,$r]])}else Mr=1;Mr||($0=1)}$0||ue(G0,[0,er,n$r]);var Tr=[0,Tr[1],Tr[2],1,yr];continue}}var ne=Tr[2],Qr=Tr[1],pe=cr(x,i,G0),oe=pe[2],me=oe[1],ae=me[2][1];if(qn(ae,t$r))var ce=Tr;else{var ge=me[1],H0=oe[2],Fr=pe[1],_=Ot(ae,0),k=97<=_?1:0,I=k&&(_<=In?1:0);I&&ue(G0,[0,ge,[6,E0,ae]]),a(Gu[3],ae,ne)&&ue(G0,[0,ge,[1,E0,ae]]);var U=Tr[4],Y=Tr[3],y0=a(Gu[4],ae,ne),D0=[0,Tr[1],y0,Y,U],I0=function(Ur){return function(d0,Kr){return ar&&ar[1]!==d0?ue(G0,[0,Kr,[5,E0,ar,Ur]]):0}}(ae);if(typeof H0=="number"){var D=0;if(ar){var u0=ar[1],Y0=0;if(u0===1?ue(G0,[0,Fr,[8,E0,ae]]):u0?(D=1,Y0=1):ue(G0,[0,Fr,[0,E0,ae]]),!Y0)var J0=D0}else D=1;if(D)var J0=[0,[0,Qr[1],Qr[2],Qr[3],[0,[0,Fr,[0,me]],Qr[4]]],y0,Y,U]}else switch(H0[0]){case 0:ue(G0,[0,H0[1],[5,E0,ar,ae]]);var J0=D0;break;case 1:var fr=H0[1];I0(0,fr);var J0=[0,[0,[0,[0,Fr,[0,me,[0,fr,H0[2]]]],Qr[1]],Qr[2],Qr[3],Qr[4]],y0,Y,U];break;case 2:var Q0=H0[1];I0(1,Q0);var J0=[0,[0,Qr[1],[0,[0,Fr,[0,me,[0,Q0,H0[2]]]],Qr[2]],Qr[3],Qr[4]],y0,Y,U];break;default:var F0=H0[1];I0(2,F0);var J0=[0,[0,Qr[1],Qr[2],[0,[0,Fr,[0,me,[0,F0,H0[2]]]],Qr[3]],Qr[4]],y0,Y,U]}var ce=J0}var gr=N0(G0),mr=0;if(typeof gr=="number"){var Cr=gr-2|0,sr=0;Ht>>0?F7<(Cr+1|0)>>>0&&(sr=1):Cr===6?(Ge(G0,1),V0(G0,8)):sr=1,sr||(mr=1)}mr||V0(G0,9);var Tr=ce}},a0);return[16,[0,_0,b,lr([0,w0],0,0)]]}var s=0;function p(a0){return cr(s,c,a0)}function y(a0,w0){var _0=w0[2][1],E0=w0[1],X0=a0[1];Bs(_0)&&Y7(X0,[0,E0,41]);var b=I9(_0),G0=b||f2(_0);return G0&&Y7(X0,[0,E0,55]),[0,X0,a0[2]]}function T(a0,w0){var _0=w0[2];switch(_0[0]){case 0:return be(E,a0,_0[1][1]);case 1:return be(h,a0,_0[1][1]);case 2:var E0=_0[1][1],X0=E0[2][1],b=a0[2],G0=a0[1];a(Gu[3],X0,b)&&ue(G0,[0,E0[1],42]);var X=y([0,G0,b],E0),s0=a(Gu[4],X0,X[2]);return[0,X[1],s0];default:return ue(a0[1],[0,w0[1],31]),a0}}function E(a0,w0){if(w0[0]===0){var _0=w0[1][2],E0=_0[1],X0=E0[0]===1?y(a0,E0[1]):a0;return T(X0,_0[2])}return T(a0,w0[1][2][1])}function h(a0,w0){return w0[0]===2?a0:T(a0,w0[1][2][1])}function w(a0,w0,_0,E0){var X0=a0[5],b=U1(E0),G0=E0[2],X=G0[3],s0=ys(X0?0:w0,a0),dr=w0||X0||1-b;if(dr){if(_0){var Ar=_0[1],ar=Ar[2][1],W0=Ar[1];Bs(ar)&&Y7(s0,[0,W0,44]);var Lr=I9(ar),Tr=Lr||f2(ar);Tr&&Y7(s0,[0,W0,55])}var Hr=G0[2],Or=[0,s0,Gu[1]],xr=be(function(or,_r){return T(or,_r[2][1])},Or,Hr),Rr=X&&(T(xr,X[1][2][1]),0),Wr=Rr}else var Wr=dr;return Wr}var G=function a0(w0,_0){return a0.fun(w0,_0)};function A(a0){N0(a0)===21&&Ge(a0,c7);var w0=a(se[18],a0,41),_0=N0(a0)===82?1:0,E0=_0&&(V0(a0,82),[0,u(se[10],a0)]);return[0,w0,E0]}var S=0;N(G,function(a0,w0){var _0=N0(a0);if(typeof _0=="number"){var E0=_0-5|0,X0=0;if(7>>0?fs===E0&&(X0=1):5<(E0-1|0)>>>0&&(X0=1),X0){var b=_0===12?1:0;if(b)var G0=pr(a0),X=cr(0,function(ar){return V0(ar,12),a(se[18],ar,41)},a0),s0=lr([0,G0],0,0),dr=[0,[0,X[1],[0,X[2],s0]]];else var dr=b;return N0(a0)!==5&&Ge(a0,64),[0,de(w0),dr]}}var Ar=cr(S,A,a0);return N0(a0)!==5&&V0(a0,9),a(G,a0,[0,Ar,w0])});function M(a0,w0){function _0(X0){var b=dL(w0,ie0(a0,X0)),G0=1,X=b[10]===1?b:[0,b[1],b[2],b[3],b[4],b[5],b[6],b[7],b[8],b[9],G0,b[11],b[12],b[13],b[14],b[15],b[16],b[17],b[18],b[19],b[20],b[21],b[22],b[23],b[24],b[25],b[26],b[27],b[28],b[29],b[30]],s0=pr(X);V0(X,4);var dr=iu(X),Ar=dr&&(N0(X)===21?1:0);if(Ar){var ar=pr(X),W0=cr(0,function(or){return V0(or,21),N0(or)===86?[0,u(t[9],or)]:(Ge(or,Ri),0)},X),Lr=W0[2];if(Lr){N0(X)===9&&ie(X);var Tr=lr([0,ar],0,0),Hr=[0,[0,W0[1],[0,Lr[1],Tr]]]}else var Hr=Lr;var Or=Hr}else var Or=Ar;var xr=a(G,X,0),Rr=pr(X);V0(X,5);var Wr=_u([0,s0],[0,we(X)],Rr,0);return[0,Or,xr[1],xr[2],Wr]}var E0=0;return function(X0){return cr(E0,_0,X0)}}function K(a0,w0,_0,E0,X0){var b=se0(a0,w0,_0,X0),G0=a(se[16],E0,b);return[0,[0,G0[1]],G0[2]]}function V(a0,w0,_0){var E0=De(a0),X0=N0(a0),b=0;if(typeof X0=="number")if(c7===X0){var G0=pr(a0);ie(a0);var s0=[0,[0,E0,[0,0,lr([0,G0],0,0)]]]}else if(D7===X0){var X=pr(a0);ie(a0);var s0=[0,[0,E0,[0,1,lr([0,X],0,0)]]]}else b=1;else b=1;if(b)var s0=0;if(s0){var dr=0;if(!w0&&!_0&&(dr=1),!dr)return ue(a0,[0,s0[1][1],7]),0}return s0}function f0(a0){if(Xt===N0(a0)){var w0=pr(a0);return ie(a0),[0,1,w0]}return M$r}function m0(a0){if(N0(a0)===64&&!Jl(1,a0)){var w0=pr(a0);return ie(a0),[0,1,w0]}return G$r}function k0(a0){var w0=m0(a0),_0=w0[1],E0=w0[2],X0=cr(0,function(W0){var Lr=pr(W0);V0(W0,15);var Tr=f0(W0),Hr=Tr[1],Or=pl([0,E0,[0,Lr,[0,Tr[2],0]]]),xr=W0[7],Rr=N0(W0),Wr=0;if(xr&&typeof Rr=="number"){if(Rr===4){var Ir=0,fe=0;Wr=1}else if(Rr===98){var Jr=xi(W0,u(t[3],W0)),or=N0(W0)===4?0:[0,ds(W0,a(se[13],D$r,W0))],Ir=or,fe=Jr;Wr=1}}if(!Wr)var _r=M1(W0)?ds(W0,a(se[13],L$r,W0)):(de0(W0,R$r),[0,De(W0),j$r]),Ir=[0,_r],fe=xi(W0,u(t[3],W0));var v0=u(M(_0,Hr),W0),P=N0(W0)===86?v0:eb(W0,v0),L=u(t[12],W0),Q=L[2],i0=L[1];if(Q)var l0=Se0(W0,Q),S0=i0;else var l0=Q,S0=a2(W0,i0);return[0,Hr,fe,Ir,P,S0,l0,Or]},a0),b=X0[2],G0=b[4],X=b[3],s0=b[1],dr=K(a0,_0,s0,0,U1(G0));w(a0,dr[2],X,G0);var Ar=X0[1],ar=lr([0,b[7]],0,0);return[23,[0,X,G0,dr[1],_0,s0,b[6],b[5],b[2],ar,Ar]]}var g0=0;function e0(a0){return cr(g0,k0,a0)}function x0(a0,w0){var _0=pr(w0);V0(w0,a0);for(var E0=0,X0=0;;){var b=cr(0,function(ar){var W0=a(se[18],ar,40);if(fu(ar,82))var Lr=0,Tr=[0,u(se[10],ar)];else if(W0[2][0]===2)var Lr=0,Tr=0;else var Lr=[0,[0,W0[1],59]],Tr=0;return[0,[0,W0,Tr],Lr]},w0),G0=b[2],X=G0[2],s0=[0,[0,b[1],G0[1]],E0],dr=X?[0,X[1],X0]:X0;if(fu(w0,9)){var E0=s0,X0=dr;continue}var Ar=de(dr);return[0,de(s0),_0,Ar]}}var l=24;function c0(a0){return x0(l,a0)}function t0(a0){var w0=x0(27,T9(1,a0)),_0=w0[1],E0=w0[3],X0=de(be(function(b,G0){return G0[2][2]?b:[0,[0,G0[1],58],b]},E0,_0));return[0,_0,w0[2],X0]}return[0,m0,f0,V,M,K,w,function(a0){return x0(28,T9(1,a0))},t0,c0,e0,p]}(ln),j9=vne(se),oi=function(t){function n(P){var L=P[2];switch(L[0]){case 17:var Q=L[1],i0=Q[1][2][1];if(n0(i0,AQr)){if(!n0(i0,NQr)){var l0=n0(Q[2][2][1],CQr);if(!l0)return l0}}else{var S0=n0(Q[2][2][1],PQr);if(!S0)return S0}break;case 0:case 10:case 16:case 19:break;default:return 0}return 1}var e=t[1],i=function P(L){return P.fun(L)},x=function P(L){return P.fun(L)},c=function P(L){return P.fun(L)},s=function P(L){return P.fun(L)},p=function P(L){return P.fun(L)},y=function P(L){return P.fun(L)},T=function P(L){return P.fun(L)},E=function P(L){return P.fun(L)},h=function P(L){return P.fun(L)},w=function P(L){return P.fun(L)},G=function P(L){return P.fun(L)},A=function P(L){return P.fun(L)},S=function P(L){return P.fun(L)},M=function P(L){return P.fun(L)},K=function P(L){return P.fun(L)},V=function P(L){return P.fun(L)},f0=function P(L){return P.fun(L)},m0=function P(L,Q,i0,l0,S0){return P.fun(L,Q,i0,l0,S0)},k0=function P(L,Q,i0,l0){return P.fun(L,Q,i0,l0)},g0=function P(L){return P.fun(L)},e0=function P(L){return P.fun(L)},x0=function P(L){return P.fun(L)},l=function P(L,Q,i0,l0,S0){return P.fun(L,Q,i0,l0,S0)},c0=function P(L,Q,i0,l0){return P.fun(L,Q,i0,l0)},t0=function P(L){return P.fun(L)},a0=function P(L,Q,i0){return P.fun(L,Q,i0)},w0=function P(L){return P.fun(L)},_0=function P(L,Q,i0){return P.fun(L,Q,i0)},E0=function P(L){return P.fun(L)},X0=function P(L){return P.fun(L)},b=function P(L,Q){return P.fun(L,Q)},G0=function P(L,Q,i0,l0){return P.fun(L,Q,i0,l0)},X=function P(L){return P.fun(L)},s0=function P(L,Q,i0){return P.fun(L,Q,i0)},dr=function P(L){return P.fun(L)},Ar=function P(L){return P.fun(L)},ar=function P(L){return P.fun(L)},W0=function P(L,Q,i0){return P.fun(L,Q,i0)},Lr=t[2];function Tr(P){var L=De(P),Q=u(y,P),i0=u(p,P);if(i0){var l0=i0[1];return[0,cr([0,L],function(S0){var T0=ir(Lr,0,S0,Q);return[2,[0,l0,T0,u(x,S0),0]]},P)]}return Q}function Hr(P,L){if(typeof L=="number"){var Q=L!==55?1:0;if(!Q)return Q}throw Hs}function Or(P){var L=O9(Hr,P),Q=Tr(L),i0=N0(L);if(typeof i0=="number"){if(i0===11)throw Hs;if(i0===86){var l0=oe0(L),S0=0;if(l0){var T0=l0[1];if(typeof T0=="number"&&T0===5){var rr=1;S0=1}}if(!S0)var rr=0;if(rr)throw Hs}}if(M1(L)){if(Q[0]===0){var R0=Q[1][2];if(R0[0]===10&&!n0(R0[1][2][1],IQr)&&!f7(L))throw Hs}return Q}return Q}N(i,function(P){var L=N0(P),Q=0,i0=M1(P);if(typeof L=="number"){var l0=0;if(22<=L)if(L===58){if(P[17])return[0,u(c,P)];l0=1}else L!==98&&(l0=1);else L!==4&&!(21<=L)&&(l0=1);l0||(Q=1)}if(!Q&&!i0)return Tr(P);var S0=0;if(L===64&&iu(P)&&Yn(1,P)===98){var T0=Or,rr=ar;S0=1}if(!S0)var T0=ar,rr=Or;var R0=FL(P,rr);if(R0)return R0[1];var B=FL(P,T0);return B?B[1]:Tr(P)}),N(x,function(P){return a(e,P,u(i,P))}),N(c,function(P){return cr(0,function(L){L[10]&&Ge(L,91);var Q=pr(L),i0=De(L);V0(L,58);var l0=De(L);if(x2(L))var S0=0,T0=0;else{var rr=fu(L,Xt),R0=N0(L),B=0;if(typeof R0=="number"){var Z=0;if(R0!==86)if(10<=R0)Z=1;else switch(R0){case 0:case 2:case 3:case 4:case 6:Z=1;break}if(!Z){var p0=0;B=1}}if(!B)var p0=1;var b0=rr||p0,O0=b0&&[0,u(x,L)],S0=rr,T0=O0}var q0=T0?0:we(L),er=yt(i0,l0);return[30,[0,T0,lr([0,Q],[0,q0],0),S0,er]]},P)}),N(s,function(P){var L=P[2];switch(L[0]){case 17:var Q=L[1],i0=Q[1][2][1];if(n0(i0,gQr)){if(!n0(i0,FQr)){var l0=n0(Q[2][2][1],TQr);if(!l0)return l0}}else{var S0=n0(Q[2][2][1],OQr);if(!S0)return S0}break;case 10:case 16:break;default:return 0}return 1}),N(p,function(P){var L=N0(P),Q=0;if(typeof L=="number"){var i0=L-67|0;if(!(15>>0)){switch(i0){case 0:var l0=oQr;break;case 1:var l0=cQr;break;case 2:var l0=sQr;break;case 3:var l0=vQr;break;case 4:var l0=lQr;break;case 5:var l0=bQr;break;case 6:var l0=pQr;break;case 7:var l0=mQr;break;case 8:var l0=_Qr;break;case 9:var l0=yQr;break;case 10:var l0=dQr;break;case 11:var l0=hQr;break;case 12:var l0=kQr;break;case 13:var l0=wQr;break;case 14:var l0=EQr;break;default:var l0=SQr}var S0=l0;Q=1}}if(!Q)var S0=0;return S0!==0&&ie(P),S0}),N(y,function(P){var L=De(P),Q=u(E,P);if(N0(P)===85){ie(P);var i0=u(x,Kl(0,P));V0(P,86);var l0=cr(0,x,P),S0=yt(L,l0[1]),T0=l0[2];return[0,[0,S0,[7,[0,a(e,P,Q),i0,T0,0]]]]}return Q}),N(T,function(P){return a(e,P,u(y,P))});function xr(P,L,Q,i0,l0){var S0=a(e,P,L);return[0,[0,l0,[15,[0,i0,S0,a(e,P,Q),0]]]]}function Rr(P,L,Q,i0){for(var l0=P,S0=Q,T0=i0;;){var rr=N0(L);if(typeof rr=="number"&&rr===84){1-l0&&Ge(L,aQr),V0(L,84);var R0=cr(0,h,L),B=R0[2],Z=R0[1],p0=N0(L),b0=0;if(typeof p0=="number"&&!(1<(p0-87|0)>>>0)){Ge(L,[23,sL(p0)]);var O0=Jr(L,B,Z),q0=Wr(L,O0[2],O0[1]),er=q0[2],yr=q0[1];b0=1}if(!b0)var er=B,yr=Z;var vr=yt(T0,yr),l0=1,S0=xr(L,S0,er,2,vr),T0=vr;continue}return[0,T0,S0]}}function Wr(P,L,Q){for(var i0=L,l0=Q;;){var S0=N0(P);if(typeof S0=="number"&&S0===87){ie(P);var T0=cr(0,h,P),rr=Jr(P,T0[2],T0[1]),R0=yt(l0,rr[1]),B=Rr(0,P,xr(P,i0,rr[2],0,R0),R0),i0=B[2],l0=B[1];continue}return[0,l0,i0]}}function Jr(P,L,Q){for(var i0=L,l0=Q;;){var S0=N0(P);if(typeof S0=="number"&&S0===88){ie(P);var T0=cr(0,h,P),rr=yt(l0,T0[1]),R0=Rr(0,P,xr(P,i0,T0[2],1,rr),rr),i0=R0[2],l0=R0[1];continue}return[0,l0,i0]}}N(E,function(P){var L=cr(0,h,P),Q=L[2],i0=L[1],l0=N0(P),S0=0;if(typeof l0=="number"&&l0===84){var rr=Rr(1,P,Q,i0);S0=1}if(!S0)var T0=Jr(P,Q,i0),rr=Wr(P,T0[2],T0[1]);return rr[2]});function or(P,L,Q,i0){return[0,i0,[3,[0,Q,P,L,0]]]}N(h,function(P){var L=0;r:for(;;){var Q=cr(0,function(k){var I=u(w,k)!==0?1:0;return[0,I,u(G,Kl(0,k))]},P),i0=Q[2],l0=i0[2],S0=Q[1];if(N0(P)===98){var T0=0;l0[0]===0&&l0[1][2][0]===12?Ge(P,63):T0=1}var rr=N0(P),R0=0;if(typeof rr=="number"){var B=rr-17|0,Z=0;if(1>>0)if(72<=B)switch(B-72|0){case 0:var p0=BZr;break;case 1:var p0=qZr;break;case 2:var p0=UZr;break;case 3:var p0=HZr;break;case 4:var p0=XZr;break;case 5:var p0=YZr;break;case 6:var p0=VZr;break;case 7:var p0=zZr;break;case 8:var p0=KZr;break;case 9:var p0=WZr;break;case 10:var p0=JZr;break;case 11:var p0=$Zr;break;case 12:var p0=ZZr;break;case 13:var p0=QZr;break;case 14:var p0=rQr;break;case 15:var p0=eQr;break;case 16:var p0=nQr;break;case 17:var p0=tQr;break;case 18:var p0=uQr;break;case 19:var p0=iQr;break;default:Z=1}else Z=1;else var p0=B?fQr:P[12]?0:xQr;if(!Z){var b0=p0;R0=1}}if(!R0)var b0=0;if(b0!==0&&ie(P),!L&&!b0)return l0;if(b0){var O0=b0[1],q0=O0[1],er=i0[1],yr=er&&(q0===14?1:0);yr&&ue(P,[0,S0,27]);for(var vr=a(e,P,l0),$0=vr,Sr=[0,q0,O0[2]],Mr=S0,Br=L;;){var qr=Sr[2],jr=Sr[1];if(Br){var $r=Br[1],ne=$r[2],Qr=ne[2],pe=Qr[0]===0?Qr[1]:Qr[1]-1|0;if(qr[1]<=pe){var oe=yt($r[3],Mr),me=or($r[1],$0,ne[1],oe),$0=me,Sr=[0,jr,qr],Mr=oe,Br=Br[2];continue}}var L=[0,[0,$0,[0,jr,qr],Mr],Br];continue r}}for(var ae=a(e,P,l0),ce=S0,ge=L;;){if(ge){var H0=ge[1],Fr=yt(H0[3],ce),_=ge[2],ae=or(H0[1],ae,H0[2][1],Fr),ce=Fr,ge=_;continue}return[0,ae]}}}),N(w,function(P){var L=N0(P);if(typeof L=="number"){if(48<=L){if(c7<=L){if(!(vf<=L))switch(L-103|0){case 0:return CZr;case 1:return PZr;case 6:return DZr;case 7:return LZr}}else if(L===65&&P[18])return RZr}else if(45<=L)switch(L+mv|0){case 0:return jZr;case 1:return GZr;default:return MZr}}return 0}),N(G,function(P){var L=De(P),Q=pr(P),i0=u(w,P);if(i0){var l0=i0[1];ie(P);var S0=cr(0,A,P),T0=S0[2],rr=yt(L,S0[1]),R0=0;if(l0===6){var B=T0[2],Z=0;switch(B[0]){case 10:Y7(P,[0,rr,47]);break;case 16:B[1][2][0]===1&&ue(P,[0,rr,88]);break;default:Z=1}Z||(R0=1)}return[0,[0,rr,[28,[0,l0,T0,lr([0,Q],0,0)]]]]}var p0=N0(P),b0=0;if(typeof p0=="number")if(vf===p0)var O0=NZr;else if(F7===p0)var O0=AZr;else b0=1;else b0=1;if(b0)var O0=0;if(O0){ie(P);var q0=cr(0,A,P),er=q0[2];1-u(s,er)&&ue(P,[0,er[1],26]);var yr=er[2],vr=0;yr[0]===10&&Bs(yr[1][2][1])&&(Si(P,54),vr=1);var $0=yt(L,q0[1]),Sr=lr([0,Q],0,0);return[0,[0,$0,[29,[0,O0[1],er,1,Sr]]]]}return u(S,P)}),N(A,function(P){return a(e,P,u(G,P))}),N(S,function(P){var L=u(M,P);if(f7(P))return L;var Q=N0(P),i0=0;if(typeof Q=="number")if(vf===Q)var l0=IZr;else if(F7===Q)var l0=OZr;else i0=1;else i0=1;if(i0)var l0=0;if(l0){var S0=a(e,P,L);1-u(s,S0)&&ue(P,[0,S0[1],26]);var T0=S0[2],rr=0;T0[0]===10&&Bs(T0[1][2][1])&&(Si(P,53),rr=1);var R0=De(P);ie(P);var B=we(P),Z=yt(S0[1],R0),p0=lr(0,[0,B],0);return[0,[0,Z,[29,[0,l0[1],S0,0,p0]]]]}return L}),N(M,function(P){var L=De(P),Q=1-P[16],i0=0,l0=P[16]===0?P:[0,P[1],P[2],P[3],P[4],P[5],P[6],P[7],P[8],P[9],P[10],P[11],P[12],P[13],P[14],P[15],i0,P[17],P[18],P[19],P[20],P[21],P[22],P[23],P[24],P[25],P[26],P[27],P[28],P[29],P[30]],S0=N0(l0),T0=0;if(typeof S0=="number"){var rr=S0-44|0;if(!(7>>0)){var R0=0;switch(rr){case 0:if(Q)var B=[0,u(g0,l0)];else R0=1;break;case 6:var B=[0,u(f0,l0)];break;case 7:var B=[0,u(V,l0)];break;default:R0=1}if(!R0){var Z=B;T0=1}}}if(!T0)var Z=qs(l0)?[0,u(t0,l0)]:u(E0,l0);return b7(m0,0,0,l0,L,Z)}),N(K,function(P){return a(e,P,u(M,P))}),N(V,function(P){switch(P[21]){case 0:var L=0,Q=0;break;case 1:var L=0,Q=1;break;default:var L=1,Q=1}var i0=De(P),l0=pr(P);V0(P,51);var S0=[0,i0,[23,[0,lr([0,l0],[0,we(P)],0)]]],T0=N0(P);if(typeof T0=="number"&&!(11<=T0))switch(T0){case 4:var rr=L?S0:(ue(P,[0,i0,5]),[0,i0,[10,Gc(0,[0,i0,EZr])]]);return R(k0,SZr,P,i0,rr);case 6:case 10:var R0=Q?S0:(ue(P,[0,i0,4]),[0,i0,[10,Gc(0,[0,i0,FZr])]]);return R(k0,TZr,P,i0,R0)}return Q?St(gZr,P):ue(P,[0,i0,4]),S0}),N(f0,function(P){return cr(0,function(L){var Q=pr(L),i0=De(L);if(V0(L,50),fu(L,10)){var l0=Gc(0,[0,i0,hZr]),S0=De(L);Zl(L,kZr);var T0=Gc(0,[0,S0,wZr]);return[17,[0,l0,T0,lr([0,Q],[0,we(L)],0)]]}var rr=pr(L);V0(L,4);var R0=ir(s0,[0,rr],0,u(x,Kl(0,L)));return V0(L,5),[11,[0,R0,lr([0,Q],[0,we(L)],0)]]},P)}),N(m0,function(P,L,Q,i0,l0){var S0=P?P[1]:1,T0=L&&L[1],rr=b7(l,[0,S0],[0,T0],Q,i0,l0),R0=oe0(Q),B=0;if(R0){var Z=R0[1];if(typeof Z=="number"&&Z===83){var p0=1;B=1}}if(!B)var p0=0;function b0(vr){var $0=Wt(vr);function Sr(Br,qr){return a(Ze(Br,Di,78),Br,qr)}var Mr=a(e,vr,rr);return a($0[2],Mr,Sr)}function O0(vr,$0,Sr){var Mr=u(x0,$0),Br=Mr[1],qr=yt(i0,Br),jr=[0,Sr,vr,[0,Br,Mr[2]],0],$r=0;if(!p0&&!T0){var ne=[4,jr];$r=1}if(!$r)var ne=[20,[0,jr,qr,p0]];var Qr=T0||p0;return b7(m0,[0,S0],[0,Qr],$0,i0,[0,[0,qr,ne]])}if(Q[13])return rr;var q0=N0(Q);if(typeof q0=="number"){var er=q0-98|0;if(2>>0){if(er===-94)return O0(0,Q,b0(Q))}else if(er!==1&&iu(Q)){var yr=O9(function(vr,$0){throw Hs},Q);return we0(yr,rr,function(vr){var $0=b0(vr);return O0(u(e0,vr),vr,$0)})}}return rr}),N(k0,function(P,L,Q,i0){var l0=P?P[1]:1;return a(e,L,b7(m0,[0,l0],0,L,Q,[0,i0]))}),N(g0,function(P){return cr(0,function(L){var Q=De(L),i0=pr(L);if(V0(L,44),L[11]&&N0(L)===10){var l0=we(L);ie(L);var S0=Gc(lr([0,i0],[0,l0],0),[0,Q,mZr]),T0=N0(L);return typeof T0!="number"&&T0[0]===4&&!n0(T0[3],_Zr)?[17,[0,S0,a(se[13],0,L),0]]:(St(yZr,L),ie(L),[10,S0])}var rr=De(L),R0=N0(L),B=0;if(typeof R0=="number")if(R0===44)var Z=u(g0,L);else if(R0===51)var Z=u(V,hL(1,L));else B=1;else B=1;if(B)var Z=qs(L)?u(t0,L):u(X0,L);var p0=R(c0,dZr,hL(1,L),rr,Z),b0=N0(L),O0=0;if(typeof b0!="number"&&b0[0]===3){var q0=R(G0,L,rr,p0,b0[1]);O0=1}if(!O0)var q0=p0;var er=0;if(N0(L)!==4){var yr=0;if(iu(L)&&N0(L)===98&&(yr=1),!yr){var Sr=q0;er=1}}if(!er)var vr=Wt(L),$0=function(ne,Qr){return a(Ze(ne,Di,79),ne,Qr)},Sr=a(vr[2],q0,$0);var Mr=iu(L),Br=Mr&&we0(O9(function(ne,Qr){throw Hs},L),0,e0),qr=N0(L),jr=0;if(typeof qr=="number"&&qr===4){var $r=[0,u(x0,L)];jr=1}if(!jr)var $r=0;return[18,[0,Sr,Br,$r,lr([0,i0],0,0)]]},P)});function _r(P){var L=pr(P);V0(P,98);for(var Q=0;;){var i0=N0(P);if(typeof i0=="number"){var l0=0;if((i0===99||Pn===i0)&&(l0=1),l0){var S0=de(Q),T0=pr(P);V0(P,99);var rr=N0(P)===4?Wt(P)[1]:we(P);return[0,S0,_u([0,L],[0,rr],T0,0)]}}var R0=N0(P),B=0;if(typeof R0!="number"&&R0[0]===4&&!n0(R0[2],bZr)){var Z=De(P),p0=pr(P);Zl(P,pZr);var b0=[1,[0,Z,[0,lr([0,p0],[0,we(P)],0)]]];B=1}if(!B)var b0=[0,u(ln[1],P)];var O0=[0,b0,Q];N0(P)!==99&&V0(P,9);var Q=O0}}N(e0,function(P){zu(P,1);var L=N0(P)===98?1:0,Q=L&&[0,cr(0,_r,P)];return h7(P),Q});function Ir(P){var L=pr(P);V0(P,12);var Q=u(x,P);return[0,Q,lr([0,L],0,0)]}N(x0,function(P){return cr(0,function(L){var Q=pr(L);V0(L,4);for(var i0=0;;){var l0=N0(L);if(typeof l0=="number"){var S0=0;if((l0===5||Pn===l0)&&(S0=1),S0){var T0=de(i0),rr=pr(L);return V0(L,5),[0,T0,_u([0,Q],[0,we(L)],rr,0)]}}var R0=N0(L),B=0;if(typeof R0=="number"&&R0===12){var Z=[1,cr(0,Ir,L)];B=1}if(!B)var Z=[0,u(x,L)];var p0=[0,Z,i0];N0(L)!==5&&V0(L,9);var i0=p0}},P)}),N(l,function(P,L,Q,i0,l0){var S0=P?P[1]:1,T0=L&&L[1],rr=N0(Q),R0=0;if(typeof rr=="number")switch(rr){case 6:ie(Q);var B=0,Z=[0,T0],p0=[0,S0];R0=2;break;case 10:ie(Q);var b0=0,O0=[0,T0],q0=[0,S0];R0=1;break;case 83:1-S0&&Ge(Q,99),V0(Q,83);var er=0,yr=N0(Q);if(typeof yr=="number")switch(yr){case 4:return l0;case 6:ie(Q);var B=oZr,Z=cZr,p0=[0,S0];R0=2,er=1;break;case 98:if(iu(Q))return l0;break}else if(yr[0]===3)return Ge(Q,ni),l0;if(!er){var b0=sZr,O0=vZr,q0=[0,S0];R0=1}break}else if(rr[0]===3){T0&&Ge(Q,ni);var vr=rr[1];return b7(m0,lZr,0,Q,i0,[0,R(G0,Q,i0,a(e,Q,l0),vr)])}switch(R0){case 0:return l0;case 1:var $0=q0?S0:1,Sr=O0&&O0[1],Mr=b0&&b0[1],Br=N0(Q),qr=0;if(typeof Br=="number"&&Br===14){var jr=Ae0(Q),$r=jr[1],ne=Q[29][1],Qr=jr[2][1];if(ne){var pe=ne[1];Q[29][1]=[0,[0,pe[1],[0,[0,Qr,$r],pe[2]]],ne[2]]}else ue(Q,[0,$r,89]);var me=[1,jr],ae=$r;qr=1}if(!qr)var oe=V7(Q),me=[0,oe],ae=oe[1];var ce=yt(i0,ae),ge=0;l0[0]===0&&l0[1][2][0]===23&&me[0]===1&&(ue(Q,[0,ce,90]),ge=1);var H0=[0,a(e,Q,l0),me,0],Fr=Sr?[21,[0,H0,ce,Mr]]:[16,H0];return b7(m0,[0,$0],[0,Sr],Q,i0,[0,[0,ce,Fr]]);default:var _=p0?S0:1,k=Z&&Z[1],I=B&&B[1],U=hL(0,Q),Y=u(se[7],U),y0=De(Q);V0(Q,7);var D0=we(Q),I0=yt(i0,y0),D=lr(0,[0,D0],0),u0=[0,a(e,Q,l0),[2,Y],D],Y0=k?[21,[0,u0,I0,I]]:[16,u0];return b7(m0,[0,_],[0,k],Q,i0,[0,[0,I0,Y0]])}}),N(c0,function(P,L,Q,i0){var l0=P?P[1]:1;return a(e,L,b7(l,[0,l0],0,L,Q,[0,i0]))}),N(t0,function(P){return cr(0,function(L){var Q=u(Vn[1],L),i0=Q[1],l0=Q[2],S0=cr(0,function(q0){var er=pr(q0);V0(q0,15);var yr=u(Vn[2],q0),vr=yr[1],$0=pl([0,l0,[0,er,[0,yr[2],0]]]);if(N0(q0)===4)var Sr=0,Mr=0;else{var Br=N0(q0),qr=0;if(typeof Br=="number"){var jr=Br!==98?1:0;if(!jr){var ne=jr;qr=1}}if(!qr)var $r=dL(vr,ie0(i0,q0)),ne=[0,ds($r,a(se[13],aZr,$r))];var Sr=xi(q0,u(ln[3],q0)),Mr=ne}var Qr=t2(0,q0),pe=ir(Vn[4],i0,vr,Qr),oe=N0(Qr)===86?pe:eb(Qr,pe),me=u(ln[12],Qr),ae=me[2],ce=me[1];if(ae)var ge=Se0(Qr,ae),H0=ce;else var ge=ae,H0=a2(Qr,ce);return[0,Mr,oe,vr,ge,H0,Sr,$0]},L),T0=S0[2],rr=T0[3],R0=T0[2],B=T0[1],Z=U1(R0),p0=b7(Vn[5],L,i0,rr,1,Z);R(Vn[6],L,p0[2],B,R0);var b0=S0[1],O0=lr([0,T0[7]],0,0);return[8,[0,B,R0,p0[1],i0,rr,T0[4],T0[5],T0[6],O0,b0]]},P)}),N(a0,function(P,L,Q){switch(L){case 1:Si(P,45);try{var i0=jv(Rv(Te(tZr,Q))),l0=i0}catch(R0){if(R0=Et(R0),R0[1]!==B7)throw R0;var l0=ke(Te(uZr,Q))}break;case 2:Si(P,46);try{var S0=al(Q),l0=S0}catch(R0){if(R0=Et(R0),R0[1]!==B7)throw R0;var l0=ke(Te(iZr,Q))}break;case 4:try{var T0=al(Q),l0=T0}catch(R0){if(R0=Et(R0),R0[1]!==B7)throw R0;var l0=ke(Te(fZr,Q))}break;default:try{var rr=jv(Rv(Q)),l0=rr}catch(R0){if(R0=Et(R0),R0[1]!==B7)throw R0;var l0=ke(Te(xZr,Q))}}return V0(P,[0,L,Q]),l0}),N(w0,function(P){var L=nn(P);return L!==0&&Ht===Ot(P,L-1|0)?p7(P,0,L-1|0):P}),N(_0,function(P,L,Q){if(2<=L){var i0=u(w0,Q);try{var l0=al(i0),S0=l0}catch(Z){if(Z=Et(Z),Z[1]!==B7)throw Z;var S0=ke(Te(eZr,i0))}var T0=S0}else{var rr=u(w0,Q);try{var R0=jv(Rv(rr)),B=R0}catch(p0){if(p0=Et(p0),p0[1]!==B7)throw p0;var B=ke(Te(nZr,rr))}var T0=B}return V0(P,[1,L,Q]),T0}),N(E0,function(P){var L=De(P),Q=pr(P),i0=N0(P);if(typeof i0=="number")switch(i0){case 0:var l0=u(se[12],P);return[1,[0,l0[1],[19,l0[2]]],l0[3]];case 4:return[0,u(X,P)];case 6:var S0=cr(0,dr,P),T0=S0[2];return[1,[0,S0[1],[0,T0[1]]],T0[2]];case 21:return ie(P),[0,[0,L,[26,[0,lr([0,Q],[0,we(P)],0)]]]];case 29:return ie(P),[0,[0,L,[14,[0,0,$$r,lr([0,Q],[0,we(P)],0)]]]];case 40:return[0,u(se[22],P)];case 98:var rr=u(se[17],P),R0=rr[2],B=rr[1],Z=Ni<=R0[1]?[13,R0[2]]:[12,R0[2]];return[0,[0,B,Z]];case 30:case 31:ie(P);var p0=i0===31?1:0,b0=p0?Q$r:rZr;return[0,[0,L,[14,[0,[1,p0],b0,lr([0,Q],[0,we(P)],0)]]]];case 74:case 105:return[0,u(Ar,P)]}else switch(i0[0]){case 0:var O0=i0[2],q0=[2,ir(a0,P,i0[1],O0)];return[0,[0,L,[14,[0,q0,O0,lr([0,Q],[0,we(P)],0)]]]];case 1:var er=i0[2],yr=[3,ir(_0,P,i0[1],er)];return[0,[0,L,[14,[0,yr,er,lr([0,Q],[0,we(P)],0)]]]];case 2:var vr=i0[1];vr[4]&&Si(P,45),ie(P);var $0=[0,vr[2]],Sr=lr([0,Q],[0,we(P)],0);return[0,[0,vr[1],[14,[0,$0,vr[3],Sr]]]];case 3:var Mr=a(b,P,i0[1]);return[0,[0,Mr[1],[25,Mr[2]]]]}if(M1(P)){var Br=a(se[13],0,P);return[0,[0,Br[1],[10,Br]]]}St(0,P);var qr=0;return typeof i0!="number"&&i0[0]===6&&(ie(P),qr=1),[0,[0,L,[14,[0,0,Z$r,lr([0,Q],[0,0],0)]]]]}),N(X0,function(P){return a(e,P,u(E0,P))}),N(b,function(P,L){var Q=L[3],i0=L[2],l0=L[1],S0=pr(P);V0(P,[3,L]);var T0=[0,l0,[0,[0,i0[2],i0[1]],Q]];if(Q)var rr=0,R0=[0,T0,0],B=l0;else for(var Z=[0,T0,0],p0=0;;){var b0=u(se[7],P),O0=[0,b0,p0],q0=N0(P),er=0;if(typeof q0=="number"&&q0===1){zu(P,4);var yr=N0(P),vr=0;if(typeof yr!="number"&&yr[0]===3){var $0=yr[1],Sr=$0[3],Mr=$0[2],Br=$0[1];ie(P);var qr=[0,[0,Mr[2],Mr[1]],Sr];h7(P);var jr=[0,[0,Br,qr],Z];if(!Sr){var Z=jr,p0=O0;continue}var $r=de(O0),ne=[0,Br,de(jr),$r];er=1,vr=1}if(!vr)throw[0,wn,K$r]}if(!er){St(W$r,P);var Qr=[0,b0[1],J$r],pe=de(O0),oe=de([0,Qr,Z]),ne=[0,b0[1],oe,pe]}var rr=ne[3],R0=ne[2],B=ne[1];break}var me=we(P),ae=yt(l0,B);return[0,ae,[0,R0,rr,lr([0,S0],[0,me],0)]]}),N(G0,function(P,L,Q,i0){var l0=Wt(P);function S0(R0,B){return a(Ze(R0,Di,28),R0,B)}var T0=a(l0[2],Q,S0),rr=a(b,P,i0);return[0,yt(L,rr[1]),[24,[0,T0,rr,0]]]}),N(X,function(P){var L=pr(P),Q=cr(0,function(T0){V0(T0,4);var rr=De(T0),R0=u(x,T0),B=N0(T0),Z=0;if(typeof B=="number")if(B===9)var p0=[0,ir(W0,T0,rr,[0,R0,0])];else if(B===86)var p0=[1,[0,R0,u(ln[9],T0),0]];else Z=1;else Z=1;if(Z)var p0=[0,R0];return V0(T0,5),p0},P),i0=Q[2],l0=we(P),S0=i0[0]===0?i0[1]:[0,Q[1],[27,i0[1]]];return ir(s0,[0,L],[0,l0],S0)}),N(s0,function(P,L,Q){var i0=Q[2],l0=P&&P[1],S0=L&&L[1];function T0(We){return _7(We,lr([0,l0],[0,S0],0))}function rr(We){return QD(We,lr([0,l0],[0,S0],0))}switch(i0[0]){case 0:var R0=i0[1],B=rr(R0[2]),Ce=[0,[0,R0[1],B]];break;case 1:var Z=i0[1],p0=Z[10],b0=T0(Z[9]),Ce=[1,[0,Z[1],Z[2],Z[3],Z[4],Z[5],Z[6],Z[7],Z[8],b0,p0]];break;case 2:var O0=i0[1],q0=T0(O0[4]),Ce=[2,[0,O0[1],O0[2],O0[3],q0]];break;case 3:var er=i0[1],yr=T0(er[4]),Ce=[3,[0,er[1],er[2],er[3],yr]];break;case 4:var vr=i0[1],$0=T0(vr[4]),Ce=[4,[0,vr[1],vr[2],vr[3],$0]];break;case 5:var Sr=i0[1],Mr=T0(Sr[7]),Ce=[5,[0,Sr[1],Sr[2],Sr[3],Sr[4],Sr[5],Sr[6],Mr]];break;case 7:var Br=i0[1],qr=T0(Br[4]),Ce=[7,[0,Br[1],Br[2],Br[3],qr]];break;case 8:var jr=i0[1],$r=jr[10],ne=T0(jr[9]),Ce=[8,[0,jr[1],jr[2],jr[3],jr[4],jr[5],jr[6],jr[7],jr[8],ne,$r]];break;case 10:var Qr=i0[1],pe=Qr[2],oe=T0(pe[2]),Ce=[10,[0,Qr[1],[0,pe[1],oe]]];break;case 11:var me=i0[1],ae=T0(me[2]),Ce=[11,[0,me[1],ae]];break;case 12:var ce=i0[1],ge=T0(ce[4]),Ce=[12,[0,ce[1],ce[2],ce[3],ge]];break;case 13:var H0=i0[1],Fr=T0(H0[4]),Ce=[13,[0,H0[1],H0[2],H0[3],Fr]];break;case 14:var _=i0[1],k=T0(_[3]),Ce=[14,[0,_[1],_[2],k]];break;case 15:var I=i0[1],U=T0(I[4]),Ce=[15,[0,I[1],I[2],I[3],U]];break;case 16:var Y=i0[1],y0=T0(Y[3]),Ce=[16,[0,Y[1],Y[2],y0]];break;case 17:var D0=i0[1],I0=T0(D0[3]),Ce=[17,[0,D0[1],D0[2],I0]];break;case 18:var D=i0[1],u0=T0(D[4]),Ce=[18,[0,D[1],D[2],D[3],u0]];break;case 19:var Y0=i0[1],J0=rr(Y0[2]),Ce=[19,[0,Y0[1],J0]];break;case 20:var fr=i0[1],Q0=fr[1],F0=fr[3],gr=fr[2],mr=T0(Q0[4]),Ce=[20,[0,[0,Q0[1],Q0[2],Q0[3],mr],gr,F0]];break;case 21:var Cr=i0[1],sr=Cr[1],Pr=Cr[3],K0=Cr[2],Ur=T0(sr[3]),Ce=[21,[0,[0,sr[1],sr[2],Ur],K0,Pr]];break;case 22:var d0=i0[1],Kr=T0(d0[2]),Ce=[22,[0,d0[1],Kr]];break;case 23:var Ce=[23,[0,T0(i0[1][1])]];break;case 24:var re=i0[1],xe=T0(re[3]),Ce=[24,[0,re[1],re[2],xe]];break;case 25:var je=i0[1],ve=T0(je[3]),Ce=[25,[0,je[1],je[2],ve]];break;case 26:var Ce=[26,[0,T0(i0[1][1])]];break;case 27:var Ie=i0[1],Me=T0(Ie[3]),Ce=[27,[0,Ie[1],Ie[2],Me]];break;case 28:var Be=i0[1],fn=T0(Be[3]),Ce=[28,[0,Be[1],Be[2],fn]];break;case 29:var Ke=i0[1],Ae=T0(Ke[4]),Ce=[29,[0,Ke[1],Ke[2],Ke[3],Ae]];break;case 30:var xn=i0[1],Qe=xn[4],yn=xn[3],on=T0(xn[2]),Ce=[30,[0,xn[1],on,yn,Qe]];break;default:var Ce=i0}return[0,Q[1],Ce]}),N(dr,function(P){var L=pr(P);V0(P,6);for(var Q=[0,0,t[3]];;){var i0=Q[2],l0=Q[1],S0=N0(P);if(typeof S0=="number"){var T0=0;if(13<=S0)Pn===S0&&(T0=1);else if(7<=S0)switch(S0-7|0){case 2:var rr=De(P);ie(P);var Q=[0,[0,[2,rr],l0],i0];continue;case 5:var R0=pr(P),B=cr(0,function(Qr){ie(Qr);var pe=u(i,Qr);return pe[0]===0?[0,pe[1],t[3]]:[0,pe[1],pe[2]]},P),Z=B[2],p0=Z[2],b0=B[1],O0=lr([0,R0],0,0),q0=[1,[0,b0,[0,Z[1],O0]]],er=N0(P)===7?1:0,yr=0;if(!er&&Yn(1,P)===7){var vr=[0,p0[1],[0,[0,b0,65],p0[2]]];yr=1}if(!yr)var vr=p0;1-er&&V0(P,9);var Q=[0,[0,q0,l0],a(t[5],vr,i0)];continue;case 0:T0=1;break}if(T0){var $0=u(t[6],i0),Sr=de(l0),Mr=pr(P);return V0(P,7),[0,[0,Sr,_u([0,L],[0,we(P)],Mr,0)],$0]}}var Br=u(i,P);if(Br[0]===0)var qr=t[3],jr=Br[1];else var qr=Br[2],jr=Br[1];N0(P)!==7&&V0(P,9);var Q=[0,[0,[0,jr],l0],a(t[5],qr,i0)]}}),N(Ar,function(P){zu(P,5);var L=De(P),Q=pr(P),i0=N0(P),l0=0;if(typeof i0!="number"&&i0[0]===5){var S0=i0[3],T0=i0[2];ie(P);var rr=we(P),R0=rr,B=S0,Z=T0,p0=Te(H$r,Te(T0,Te(U$r,S0)));l0=1}if(!l0){St(X$r,P);var R0=0,B=Y$r,Z=V$r,p0=z$r}h7(P);var b0=$n(nn(B)),O0=nn(B)-1|0,q0=0;if(!(O0<0))for(var er=q0;;){var yr=Vr(B,er),vr=yr-100|0,$0=0;if(!(21>>0))switch(vr){case 0:case 3:case 5:case 9:case 15:case 17:case 21:qi(b0,yr),$0=1;break}var Sr=er+1|0;if(O0!==er){var er=Sr;continue}break}var Mr=Gt(b0);return n0(Mr,B)&&Ge(P,[13,B]),[0,L,[14,[0,[4,[0,Z,Mr]],p0,lr([0,Q],[0,R0],0)]]]});function fe(P,L){if(typeof L=="number"){var Q=0;if(61<=L){var i0=L-64|0;27>>0?i0===43&&(Q=1):25<(i0-1|0)>>>0&&(Q=1)}else{var l0=L+hy|0;17>>0?-1<=l0&&(Q=1):l0===13&&(Q=1)}if(Q)return 0}throw Hs}function v0(P){var L=N0(P);if(typeof L=="number"&&!L){var Q=a(se[16],1,P);return[0,[0,Q[1]],Q[2]]}return[0,[1,u(se[10],P)],0]}return N(ar,function(P){var L=O9(fe,P),Q=De(L);if(Yn(1,L)===11)var l0=0,S0=0;else var i0=u(Vn[1],L),l0=i0[2],S0=i0[1];var T0=cr(0,function(ne){var Qr=xi(ne,u(ln[3],ne));if(M1(ne)&&Qr===0){var pe=a(se[13],q$r,ne),oe=pe[1],me=[0,oe,[0,[0,oe,[2,[0,pe,[0,G1(ne)],0]]],0]];return[0,Qr,[0,oe,[0,0,[0,me,0],0,0]],[0,[0,oe[1],oe[3],oe[3]]],0]}var ae=ir(Vn[4],ne[18],ne[17],ne),ce=u2(1,ne),ge=u(ln[12],ce);return[0,Qr,ae,ge[1],ge[2]]},L),rr=T0[2],R0=rr[2],B=R0[2],Z=0;if(!B[1]){var p0=0;if(!B[3]&&B[2]&&(p0=1),!p0){var b0=ce0(L);Z=1}}if(!Z)var b0=L;var O0=R0[2],q0=O0[1],er=q0?(ue(b0,[0,q0[1][1],Qc]),[0,R0[1],[0,0,O0[2],O0[3],O0[4]]]):R0,yr=U1(er),vr=f7(b0),$0=vr&&(N0(b0)===11?1:0);$0&&Ge(b0,60),V0(b0,11);var Sr=se0(ce0(b0),S0,0,yr),Mr=cr(0,v0,Sr),Br=Mr[2];R(Vn[6],Sr,Br[2],0,er);var qr=yt(Q,Mr[1]),jr=T0[1],$r=lr([0,l0],0,0);return[0,[0,qr,[1,[0,0,er,Br[1],S0,0,rr[4],rr[3],rr[1],$r,jr]]]]}),N(W0,function(P,L,Q){return cr([0,L],function(i0){for(var l0=Q;;){var S0=N0(i0);if(typeof S0=="number"&&S0===9){ie(i0);var l0=[0,u(x,i0),l0];continue}return[22,[0,de(l0),0]]}},P)}),[0,x,i,T,n,K,a0,W0]}(j9),Ys=function(t){function n(e0){var x0=pr(e0);ie(e0);var l=lr([0,x0],0,0),c0=u(oi[5],e0),t0=f7(e0)?rb(e0):C9(e0);function a0(w0,_0){return a(Ze(w0,Di,80),w0,_0)}return[0,a(t0[2],c0,a0),l]}function e(e0){var x0=e0[27][2];if(x0)for(var l=0;;){var c0=N0(e0);if(typeof c0=="number"&&c0===13){var l=[0,cr(0,n,e0),l];continue}return de(l)}return x0}function i(e0,x0){var l=e0&&e0[1],c0=pr(x0),t0=N0(x0);if(typeof t0=="number")switch(t0){case 6:var a0=cr(0,function(Jr){var or=pr(Jr);V0(Jr,6);var _r=Kl(0,Jr),Ir=u(se[10],_r);return V0(Jr,7),[0,Ir,lr([0,or],[0,we(Jr)],0)]},x0),w0=a0[1];return[0,w0,[3,[0,w0,a0[2]]]];case 14:if(l){var _0=Ae0(x0),E0=x0[29][1],X0=_0[2][1];if(E0){var b=E0[1],G0=E0[2],X=b[2],s0=[0,[0,a(Gu[4],X0,b[1]),X],G0];x0[29][1]=s0}else ke(tGr);return[0,_0[1],[2,_0]]}var dr=cr(0,function(Jr){return ie(Jr),[1,V7(Jr)]},x0),Ar=dr[1];return ue(x0,[0,Ar,89]),[0,Ar,dr[2]]}else switch(t0[0]){case 0:var ar=t0[2],W0=De(x0),Lr=[2,ir(oi[6],x0,t0[1],ar)];return[0,W0,[0,[0,W0,[0,Lr,ar,lr([0,c0],[0,we(x0)],0)]]]];case 2:var Tr=t0[1],Hr=Tr[4],Or=Tr[3],xr=Tr[2],Rr=Tr[1];return Hr&&Si(x0,45),V0(x0,[2,[0,Rr,xr,Or,Hr]]),[0,Rr,[0,[0,Rr,[0,[0,xr],Or,lr([0,c0],[0,we(x0)],0)]]]]}var Wr=V7(x0);return[0,Wr[1],[1,Wr]]}function x(e0,x0,l){var c0=u(Vn[2],e0),t0=c0[1],a0=c0[2],w0=i([0,x0],e0),_0=w0[1],E0=0,X0=Xi(e0,w0[2]);return[0,X0,cr(0,function(b){var G0=t2(1,b),X=cr(0,function(Tr){var Hr=ir(Vn[4],0,0,Tr),Or=0,xr=N0(Tr)===86?Hr:eb(Tr,Hr);if(l){var Rr=xr[2],Wr=0;if(Rr[1])ue(Tr,[0,_0,R7]),Wr=1;else{var Jr=0;!Rr[2]&&!Rr[3]&&(Wr=1,Jr=1),Jr||ue(Tr,[0,_0,80])}}else{var or=xr[2];if(or[1])ue(Tr,[0,_0,Xt]);else{var _r=or[2],Ir=0;(!_r||_r[2]||or[3])&&(Ir=1),Ir&&(or[3]?ue(Tr,[0,_0,81]):ue(Tr,[0,_0,81]))}}return[0,Or,xr,a2(Tr,u(ln[10],Tr))]},G0),s0=X[2],dr=s0[2],Ar=U1(dr),ar=b7(Vn[5],G0,E0,t0,0,Ar);R(Vn[6],G0,ar[2],0,dr);var W0=X[1],Lr=lr([0,a0],0,0);return[0,0,dr,ar[1],E0,t0,0,s0[3],s0[1],Lr,W0]},e0)]}function c(e0){var x0=u(oi[2],e0);return x0[0]===0?[0,x0[1],t[3]]:[0,x0[1],x0[2]]}function s(e0,x0){switch(x0[0]){case 0:var l=x0[1],c0=l[1];return ue(e0,[0,c0,95]),[0,c0,[14,l[2]]];case 1:var t0=x0[1],a0=t0[2][1],w0=t0[1],_0=0;return SL(a0)&&n0(a0,o0e)&&n0(a0,c0e)&&(ue(e0,[0,w0,2]),_0=1),!_0&&f2(a0)&&Y7(e0,[0,w0,55]),[0,w0,[10,t0]];case 2:return ke(s0e);default:var E0=x0[1][2][1];return ue(e0,[0,E0[1],96]),E0}}function p(e0,x0,l){function c0(a0){var w0=t2(1,a0),_0=cr(0,function(dr){var Ar=xi(dr,u(ln[3],dr));if(e0)if(x0)var ar=1,W0=1;else var ar=dr[18],W0=0;else if(x0)var ar=0,W0=1;else var ar=0,W0=0;var Lr=ir(Vn[4],ar,W0,dr),Tr=N0(dr)===86?Lr:eb(dr,Lr);return[0,Ar,Tr,a2(dr,u(ln[10],dr))]},w0),E0=_0[2],X0=E0[2],b=U1(X0),G0=b7(Vn[5],w0,e0,x0,0,b);R(Vn[6],w0,G0[2],0,X0);var X=_0[1],s0=lr([0,l],0,0);return[0,0,X0,G0[1],e0,x0,0,E0[3],E0[1],s0,X]}var t0=0;return function(a0){return cr(t0,c0,a0)}}function y(e0){return V0(e0,86),c(e0)}function T(e0,x0,l,c0,t0,a0){var w0=cr([0,x0],function(E0){if(!c0&&!t0){var X0=N0(E0);if(typeof X0=="number"){var b=0;if(86<=X0){if(X0===98)b=1;else if(!(87<=X0)){var G0=y(E0);return[0,[0,l,G0[1],0],G0[2]]}}else{if(X0===82){if(l[0]===1)var X=l[1],s0=De(E0),dr=function(Rr){var Wr=pr(Rr);V0(Rr,82);var Jr=we(Rr),or=a(se[19],Rr,[0,X[1],[10,X]]),_r=u(se[10],Rr);return[2,[0,0,or,_r,lr([0,Wr],[0,Jr],0)]]},Ar=cr([0,X[1]],dr,E0),ar=[0,Ar,[0,[0,[0,s0,[10,Ml(a0e)]],0],0]];else var ar=y(E0);return[0,[0,l,ar[1],1],ar[2]]}if(!(10<=X0))switch(X0){case 4:b=1;break;case 1:case 9:var W0=[0,l,s(E0,l),1];return[0,W0,t[3]]}}if(b){var Lr=Xi(E0,l),Tr=[1,Lr,u(p(c0,t0,a0),E0)];return[0,Tr,t[3]]}}var Hr=[0,l,s(E0,l),1];return[0,Hr,t[3]]}var Or=Xi(E0,l),xr=[1,Or,u(p(c0,t0,a0),E0)];return[0,xr,t[3]]},e0),_0=w0[2];return[0,[0,[0,w0[1],_0[1]]],_0[2]]}function E(e0){var x0=cr(0,function(c0){var t0=pr(c0);V0(c0,0);for(var a0=0,w0=[0,0,t[3]];;){var _0=w0[2],E0=w0[1],X0=N0(c0);if(typeof X0=="number"){var b=0;if((X0===1||Pn===X0)&&(b=1),b){var G0=a0?[0,_0[1],[0,[0,a0[1],98],_0[2]]]:_0,X=u(t[6],G0),s0=de(E0),dr=pr(c0);return V0(c0,1),[0,[0,s0,_u([0,t0],[0,we(c0)],dr,0)],X]}}if(N0(c0)===12)var Ar=pr(c0),ar=cr(0,function(y0){return V0(y0,12),c(y0)},c0),W0=ar[2],Lr=W0[2],Tr=lr([0,Ar],0,0),Hr=[0,[1,[0,ar[1],[0,W0[1],Tr]]],Lr];else{var Or=De(c0),xr=Yn(1,c0),Rr=0;if(typeof xr=="number"){var Wr=0;if(86<=xr)xr!==98&&87<=xr&&(Wr=1);else if(xr!==82)if(10<=xr)Wr=1;else switch(xr){case 1:case 4:case 9:break;default:Wr=1}if(!Wr){var or=0,_r=0;Rr=1}}if(!Rr)var Jr=u(Vn[1],c0),or=Jr[2],_r=Jr[1];var Ir=u(Vn[2],c0),fe=Ir[1],v0=un(or,Ir[2]),P=N0(c0),L=0;if(!_r&&!fe&&typeof P!="number"&&P[0]===4){var Q=P[3],i0=0;if(n0(Q,f0e))if(n0(Q,x0e))i0=1;else{var l0=pr(c0),S0=i(0,c0)[2],T0=N0(c0),rr=0;if(typeof T0=="number"){var R0=0;if(86<=T0)T0!==98&&87<=T0&&(R0=1);else if(T0!==82)if(10<=T0)R0=1;else switch(T0){case 1:case 4:case 9:break;default:R0=1}if(!R0){var B=T(c0,Or,S0,0,0,0);rr=1}}if(!rr){Xi(c0,S0);var Z=t[3],p0=cr([0,Or],function(I0){return x(I0,0,0)},c0),b0=p0[2],O0=lr([0,l0],0,0),B=[0,[0,[0,p0[1],[3,b0[1],b0[2],O0]]],Z]}var q0=B}else{var er=pr(c0),yr=i(0,c0)[2],vr=N0(c0),$0=0;if(typeof vr=="number"){var Sr=0;if(86<=vr)vr!==98&&87<=vr&&(Sr=1);else if(vr!==82)if(10<=vr)Sr=1;else switch(vr){case 1:case 4:case 9:break;default:Sr=1}if(!Sr){var Mr=T(c0,Or,yr,0,0,0);$0=1}}if(!$0){Xi(c0,yr);var Br=t[3],qr=cr([0,Or],function(D){return x(D,0,1)},c0),jr=qr[2],$r=lr([0,er],0,0),Mr=[0,[0,[0,qr[1],[2,jr[1],jr[2],$r]]],Br]}var q0=Mr}if(!i0){var ne=q0;L=1}}if(!L)var ne=T(c0,Or,i(0,c0)[2],_r,fe,v0);var Hr=ne}var Qr=Hr[1],pe=0;if(Qr[0]===1&&N0(c0)===9){var oe=[0,De(c0)];pe=1}if(!pe)var oe=0;var me=a(t[5],Hr[2],_0),ae=N0(c0),ce=0;if(typeof ae=="number"){var ge=ae-2|0,H0=0;if(Ht>>0?F7<(ge+1|0)>>>0&&(H0=1):ge===7?ie(c0):H0=1,!H0){var Fr=me;ce=1}}if(!ce){var _=vL(LRr,9),k=ye0([0,_],N0(c0)),I=[0,De(c0),k];fu(c0,8);var Fr=a(t[4],I,me)}var a0=oe,w0=[0,[0,Qr,E0],Fr]}},e0),l=x0[2];return[0,x0[1],l[1],l[2]]}function h(e0,x0,l,c0){var t0=l[2][1],a0=l[1];if(qn(t0,i0e))return ue(e0,[0,a0,[21,t0,0,uV===c0?1:0,1]]),x0;var w0=a(R9[32],t0,x0);if(w0){var _0=w0[1],E0=0;return TE===c0?Id===_0&&(E0=1):Id===c0&&TE===_0&&(E0=1),E0||ue(e0,[0,a0,[20,t0]]),ir(R9[4],t0,QX,x0)}return ir(R9[4],t0,c0,x0)}function w(e0,x0){return cr(0,function(l){var c0=x0&&pr(l);V0(l,52);for(var t0=0;;){var a0=[0,cr(0,function(E0){var X0=u(ln[2],E0);if(N0(E0)===98)var b=Wt(E0),G0=function(s0,dr){return a(Ze(s0,Nv,81),s0,dr)},X=a(b[2],X0,G0);else var X=X0;return[0,X,u(ln[4],E0)]},l),t0],w0=N0(l);if(typeof w0=="number"&&w0===9){V0(l,9);var t0=a0;continue}var _0=de(a0);return[0,_0,lr([0,c0],0,0)]}},e0)}function G(e0,x0){return x0&&ue(e0,[0,x0[1][1],7])}function A(e0,x0){return x0&&ue(e0,[0,x0[1],68])}function S(e0,x0,l,c0,t0,a0,w0,_0,E0,X0){for(;;){var b=N0(e0),G0=0;if(typeof b=="number"){var X=b-1|0,s0=0;if(7>>0){var dr=X-81|0;if(4>>0)s0=1;else switch(dr){case 3:St(0,e0),ie(e0);continue;case 0:case 4:break;default:s0=1}}else 5<(X-1|0)>>>0||(s0=1);!s0&&!t0&&!a0&&(G0=1)}if(!G0){var Ar=N0(e0),ar=0;if(typeof Ar=="number"){var W0=0;if(Ar!==4&&Ar!==98&&(ar=1,W0=1),!W0)var Tr=0}else ar=1;if(ar)var Lr=x2(e0),Tr=Lr&&1;if(!Tr){A(e0,_0),G(e0,E0);var Hr=0;if(!w0){var Or=0;switch(c0[0]){case 0:var xr=c0[1][2][1],Rr=0;typeof xr!="number"&&xr[0]===0&&(n0(xr[1],ZQr)&&(Or=1),Rr=1),Rr||(Or=1);break;case 1:n0(c0[1][2][1],QQr)&&(Or=1);break;default:Or=1}if(!Or){var Wr=t2(2,e0),Jr=0;Hr=1}}if(!Hr)var Wr=t2(1,e0),Jr=1;var or=Xi(Wr,c0),_r=cr(0,function(S0){var T0=cr(0,function(p0){var b0=xi(p0,u(ln[3],p0));if(t0)if(a0)var O0=1,q0=1;else var O0=p0[18],q0=0;else if(a0)var O0=0,q0=1;else var O0=0,q0=0;var er=ir(Vn[4],O0,q0,p0),yr=N0(p0)===86?er:eb(p0,er),vr=yr[2],$0=vr[1],Sr=0;if($0&&Jr===0){ue(p0,[0,$0[1][1],fs]);var Mr=[0,yr[1],[0,0,vr[2],vr[3],vr[4]]];Sr=1}if(!Sr)var Mr=yr;return[0,b0,Mr,a2(p0,u(ln[10],p0))]},S0),rr=T0[2],R0=rr[2],B=U1(R0),Z=b7(Vn[5],S0,t0,a0,0,B);return R(Vn[6],S0,Z[2],0,R0),[0,0,R0,Z[1],t0,a0,0,rr[3],rr[1],0,T0[1]]},Wr),Ir=[0,Jr,or,_r,w0,l,lr([0,X0],0,0)];return[0,[0,yt(x0,_r[1]),Ir]]}}var fe=cr([0,x0],function(S0){var T0=u(ln[10],S0),rr=N0(S0);if(_0){var R0=0;if(typeof rr=="number"&&rr===82){Ge(S0,69),ie(S0);var B=0}else R0=1;if(R0)var B=0}else{var Z=0;if(typeof rr=="number"&&rr===82){ie(S0);var p0=t2(1,S0),B=[0,u(se[7],p0)]}else Z=1;if(Z)var B=1}var b0=N0(S0),O0=0;if(typeof b0=="number"&&!(9<=b0))switch(b0){case 8:ie(S0);var q0=N0(S0),er=0;if(typeof q0=="number"){var yr=0;if(q0!==1&&Pn!==q0&&(er=1,yr=1),!yr)var $0=we(S0)}else er=1;if(er)var vr=f7(S0),$0=vr&&Us(S0);var Sr=[0,c0,T0,B,$0];O0=1;break;case 4:case 6:St(0,S0);var Sr=[0,c0,T0,B,0];O0=1;break}if(!O0){var Mr=N0(S0),Br=0;if(typeof Mr=="number"){var qr=0;if(Mr!==1&&Pn!==Mr&&(Br=1,qr=1),!qr)var jr=[0,0,function(H0,Fr){return H0}]}else Br=1;if(Br)var jr=f7(S0)?rb(S0):C9(S0);if(typeof B=="number")if(T0[0]===0)var $r=function(_,k){return a(Ze(_,VY,83),_,k)},pe=B,oe=T0,me=a(jr[2],c0,$r);else var ne=function(_,k){return a(Ze(_,NE,84),_,k)},pe=B,oe=[1,a(jr[2],T0[1],ne)],me=c0;else var Qr=function(ge,H0){return a(Ze(ge,Di,85),ge,H0)},pe=[0,a(jr[2],B[1],Qr)],oe=T0,me=c0;var Sr=[0,me,oe,pe,0]}var ae=lr([0,X0],[0,Sr[4]],0);return[0,Sr[1],Sr[2],Sr[3],ae]},e0),v0=fe[2],P=v0[4],L=v0[3],Q=v0[2],i0=v0[1],l0=fe[1];return i0[0]===2?[2,[0,l0,[0,i0[1],L,Q,w0,E0,P]]]:[1,[0,l0,[0,i0,L,Q,w0,E0,P]]]}}function M(e0,x0){var l=Yn(e0,x0);if(typeof l=="number"){var c0=0;if(86<=l)(l===98||!(87<=l))&&(c0=1);else if(l===82)c0=1;else if(!(9<=l))switch(l){case 1:case 4:case 8:c0=1;break}if(c0)return 1}return 0}var K=0;function V(e0){return M(K,e0)}function f0(e0,x0,l,c0){var t0=e0&&e0[1],a0=ys(1,x0),w0=un(t0,e(a0)),_0=pr(a0);V0(a0,40);var E0=T9(1,a0),X0=N0(E0),b=0;if(l&&typeof X0=="number"){var G0=0;if(52<=X0?X0!==98&&53<=X0&&(G0=1):X0!==41&&X0&&(G0=1),!G0){var Ar=0;b=1}}if(!b)if(M1(a0))var X=a(se[13],0,E0),s0=Wt(a0),dr=function(v0,P){return a(Ze(v0,Nv,88),v0,P)},Ar=[0,a(s0[2],X,dr)];else{de0(a0,VQr);var Ar=[0,[0,De(a0),zQr]]}var ar=u(ln[3],a0);if(ar)var W0=Wt(a0),Lr=function(v0,P){return a(Ze(v0,_F,86),v0,P)},Tr=[0,a(W0[2],ar[1],Lr)];else var Tr=ar;var Hr=pr(a0),Or=fu(a0,41);if(Or)var xr=cr(0,function(v0){var P=dL(0,v0),L=u(oi[5],P);if(N0(v0)===98)var Q=Wt(v0),i0=function(T0,rr){return a(Ze(T0,Di,82),T0,rr)},l0=a(Q[2],L,i0);else var l0=L;var S0=u(ln[4],v0);return[0,l0,S0,lr([0,Hr],0,0)]},a0),Rr=xr[1],Wr=Wt(a0),Jr=function(v0,P){return ir(Ze(v0,-663447790,87),v0,Rr,P)},or=[0,[0,Rr,a(Wr[2],xr[2],Jr)]];else var or=Or;var _r=N0(a0)===52?1:0;if(_r){1-iu(a0)&&Ge(a0,16);var Ir=[0,Fe0(a0,w(a0,1))]}else var Ir=_r;var fe=cr(0,function(v0){var P=pr(v0);if(fu(v0,0)){v0[29][1]=[0,[0,Gu[1],0],v0[29][1]];for(var L=0,Q=R9[1],i0=0;;){var l0=N0(v0);if(typeof l0=="number"){var S0=l0-2|0;if(Ht>>0){if(!(F7<(S0+1|0)>>>0)){var T0=de(i0),rr=function(xu,Mu){return u(ml(function(z7){return 1-a(Gu[3],z7[1],xu)}),Mu)},R0=v0[29][1];if(R0){var B=R0[1],Z=B[1];if(R0[2]){var p0=R0[2],b0=rr(Z,B[2]),O0=bl(p0),q0=bz(p0),er=un(O0[2],b0);v0[29][1]=[0,[0,O0[1],er],q0]}else{var yr=rr(Z,B[2]);Pu(function(xu){return ue(v0,[0,xu[2],[22,xu[1]]])},yr),v0[29][1]=0}}else ke(uGr);V0(v0,1);var vr=N0(v0),$0=0;if(!c0){var Sr=0;if(typeof vr=="number"&&(vr===1||Pn===vr)&&(Sr=1),!Sr){var Mr=f7(v0);if(Mr){var Br=Us(v0);$0=1}else{var Br=Mr;$0=1}}}if(!$0)var Br=we(v0);return[0,T0,lr([0,P],[0,Br],0)]}}else if(S0===6){V0(v0,8);continue}}var qr=De(v0),jr=e(v0),$r=N0(v0),ne=0;if(typeof $r=="number"&&$r===60&&!M(1,v0)){var Qr=[0,De(v0)],pe=pr(v0);ie(v0);var oe=pe,me=Qr;ne=1}if(!ne)var oe=0,me=0;var ae=Yn(1,v0)!==4?1:0;if(ae)var ce=Yn(1,v0)!==98?1:0,ge=ce&&(N0(v0)===42?1:0);else var ge=ae;if(ge){var H0=pr(v0);ie(v0);var Fr=H0}else var Fr=ge;var _=N0(v0)===64?1:0;if(_)var k=1-M(1,v0),I=k&&1-Jl(1,v0);else var I=_;if(I){var U=pr(v0);ie(v0);var Y=U}else var Y=I;var y0=u(Vn[2],v0),D0=y0[1],I0=ir(Vn[3],v0,I,D0),D=0;if(!D0&&I0){var u0=u(Vn[2],v0),Y0=u0[2],J0=u0[1];D=1}if(!D)var Y0=y0[2],J0=D0;var fr=pl([0,oe,[0,Fr,[0,Y,[0,Y0,0]]]]),Q0=N0(v0),F0=0;if(!I&&!J0&&typeof Q0!="number"&&Q0[0]===4){var gr=Q0[3];if(n0(gr,r0e)){if(!n0(gr,e0e)){var mr=pr(v0),Cr=i(n0e,v0)[2];if(V(v0)){var Ie=S(v0,qr,jr,Cr,I,J0,ge,me,I0,fr);F0=1}else{A(v0,me),G(v0,I0),Xi(v0,Cr);var sr=un(fr,mr),Pr=cr([0,qr],function(Mu){return x(Mu,1,0)},v0),K0=Pr[2],Ur=lr([0,sr],0,0),Ie=[0,[0,Pr[1],[0,3,K0[1],K0[2],ge,jr,Ur]]];F0=1}}}else{var d0=pr(v0),Kr=i(t0e,v0)[2];if(V(v0)){var Ie=S(v0,qr,jr,Kr,I,J0,ge,me,I0,fr);F0=1}else{A(v0,me),G(v0,I0),Xi(v0,Kr);var re=un(fr,d0),xe=cr([0,qr],function(Mu){return x(Mu,1,1)},v0),je=xe[2],ve=lr([0,re],0,0),Ie=[0,[0,xe[1],[0,2,je[1],je[2],ge,jr,ve]]];F0=1}}}if(!F0)var Ie=S(v0,qr,jr,i(u0e,v0)[2],I,J0,ge,me,I0,fr);switch(Ie[0]){case 0:var Me=Ie[1],Be=Me[2];switch(Be[1]){case 0:if(Be[4])var Ft=Q,Nt=L;else{L&&ue(v0,[0,Me[1],87]);var Ft=Q,Nt=1}break;case 1:var fn=Be[2],Ke=fn[0]===2?h(v0,Q,fn[1],uV):Q,Ft=Ke,Nt=L;break;case 2:var Ae=Be[2],xn=Ae[0]===2?h(v0,Q,Ae[1],TE):Q,Ft=xn,Nt=L;break;default:var Qe=Be[2],yn=Qe[0]===2?h(v0,Q,Qe[1],Id):Q,Ft=yn,Nt=L}break;case 1:var on=Ie[1][2],Ce=on[4],We=on[1],rn=0;switch(We[0]){case 0:var bn=We[1],Cn=bn[2][1],Hn=0;if(typeof Cn!="number"&&Cn[0]===0){var vt=Cn[1],At=bn[1];rn=1,Hn=1}Hn||(rn=2);break;case 1:var Sn=We[1],vt=Sn[2][1],At=Sn[1];rn=1;break;case 2:ke(KQr);break;default:rn=2}switch(rn){case 1:var gt=qn(vt,WQr);if(gt)var Bt=gt;else var Jt=qn(vt,JQr),Bt=Jt&&Ce;Bt&&ue(v0,[0,At,[21,vt,Ce,0,0]]);break;case 2:break}var Ft=Q,Nt=L;break;default:var Ft=h(v0,Q,Ie[1][2][1],QX),Nt=L}var L=Nt,Q=Ft,i0=[0,Ie,i0]}}return q1(v0,0),$Qr},a0);return[0,Ar,fe,Tr,or,Ir,w0,lr([0,_0],0,0)]}function m0(e0,x0){return cr(0,function(l){return[2,f0([0,x0],l,l[7],0)]},e0)}function k0(e0){return[5,f0(0,e0,1,1)]}var g0=0;return[0,i,E,m0,function(e0){return cr(g0,k0,e0)},w,e]}(j9),dt=function(t){function n(_){var k=u(Vn[10],_);if(_[5])B1(_,k[1]);else{var I=k[2],U=0;if(I[0]===23){var Y=I[1],y0=k[1],D0=0;Y[4]?ue(_,[0,y0,61]):Y[5]?ue(_,[0,y0,62]):(U=1,D0=1)}else U=1}return k}function e(_,k,I){var U=I[2][1],Y=I[1];if(n0(U,lre)){if(n0(U,bre))return n0(U,pre)?f2(U)?Y7(k,[0,Y,55]):SL(U)?ue(k,[0,Y,[10,Ml(U)]]):_&&Bs(U)?Y7(k,[0,Y,_[1]]):0:k[17]?ue(k,[0,Y,2]):Y7(k,[0,Y,55]);if(k[5])return Y7(k,[0,Y,55]);var y0=k[14];return y0&&ue(k,[0,Y,[10,Ml(U)]])}var D0=k[18];return D0&&ue(k,[0,Y,2])}function i(_,k){var I=k[4],U=k[3],Y=k[2],y0=k[1];I&&Si(_,45);var D0=pr(_);return V0(_,[2,[0,y0,Y,U,I]]),[0,y0,[0,Y,U,lr([0,D0],[0,we(_)],0)]]}function x(_,k,I){var U=_?_[1]:cre,Y=k?k[1]:1,y0=N0(I);if(typeof y0=="number"){var D0=y0-2|0;if(Ht>>0){if(!(F7<(D0+1|0)>>>0)){var I0=function(Y0,J0){return Y0};return[1,[0,we(I),I0]]}}else if(D0===6){ie(I);var D=N0(I);if(typeof D=="number"){var u0=0;if((D===1||Pn===D)&&(u0=1),u0)return[0,we(I)]}return f7(I)?[0,Us(I)]:sre}}return f7(I)?[1,rb(I)]:(Y&&St([0,U],I),vre)}function c(_){var k=N0(_);if(typeof k=="number"){var I=0;if((k===1||Pn===k)&&(I=1),I){var U=function(Y,y0){return Y};return[0,we(_),U]}}return f7(_)?rb(_):C9(_)}function s(_,k,I){var U=x(0,0,k);if(U[0]===0)return[0,U[1],I];var Y=de(I);if(Y)var y0=function(D,u0){return ir(Ze(D,634872468,89),D,_,u0)},D0=a(U[1][2],Y[1],y0),I0=de([0,D0,Y[2]]);else var I0=Y;return[0,0,I0]}var p=function _(k){return _.fun(k)},y=function _(k){return _.fun(k)},T=function _(k){return _.fun(k)},E=function _(k){return _.fun(k)},h=function _(k){return _.fun(k)},w=function _(k,I){return _.fun(k,I)},G=function _(k){return _.fun(k)},A=function _(k){return _.fun(k)},S=function _(k,I,U){return _.fun(k,I,U)},M=function _(k){return _.fun(k)},K=function _(k){return _.fun(k)},V=function _(k,I){return _.fun(k,I)},f0=function _(k){return _.fun(k)},m0=function _(k){return _.fun(k)},k0=function _(k,I){return _.fun(k,I)},g0=function _(k){return _.fun(k)},e0=function _(k,I){return _.fun(k,I)},x0=function _(k){return _.fun(k)},l=function _(k,I){return _.fun(k,I)},c0=function _(k){return _.fun(k)},t0=function _(k,I){return _.fun(k,I)},a0=function _(k,I){return _.fun(k,I)},w0=function _(k,I){return _.fun(k,I)},_0=function _(k){return _.fun(k)},E0=function _(k){return _.fun(k)},X0=function _(k,I,U){return _.fun(k,I,U)},b=function _(k,I){return _.fun(k,I)},G0=function _(k,I){return _.fun(k,I)},X=function _(k){return _.fun(k)};function s0(_){var k=pr(_);V0(_,59);var I=N0(_)===8?1:0,U=I&&we(_),Y=x(0,0,_),y0=Y[0]===0?Y[1]:Y[1][1];return[4,[0,lr([0,k],[0,un(U,y0)],0)]]}var dr=0;function Ar(_){return cr(dr,s0,_)}function ar(_){var k=pr(_);V0(_,37);var I=zl(1,_),U=u(se[2],I),Y=1-_[5],y0=Y&&nb(U);y0&&B1(_,U[1]);var D0=we(_);V0(_,25);var I0=we(_);V0(_,4);var D=u(se[7],_);V0(_,5);var u0=N0(_)===8?1:0,Y0=u0&&we(_),J0=x(0,ore,_),fr=J0[0]===0?un(Y0,J0[1]):J0[1][1];return[14,[0,U,D,lr([0,k],[0,un(D0,un(I0,fr))],0)]]}var W0=0;function Lr(_){return cr(W0,ar,_)}function Tr(_,k,I){var U=I[2][1];if(U&&!U[1][2][2]){var Y=U[2];if(!Y)return Y}return ue(_,[0,I[1],k])}function Hr(_,k){var I=1-_[5],U=I&&nb(k);return U&&B1(_,k[1])}function Or(_){var k=pr(_);V0(_,39);var I=_[18],U=I&&fu(_,65),Y=un(k,pr(_));V0(_,4);var y0=lr([0,Y],0,0),D0=Kl(1,_),I0=N0(D0),D=0;if(typeof I0=="number")if(24<=I0)if(29<=I0)D=1;else switch(I0-24|0){case 0:var u0=cr(0,Vn[9],D0),Y0=u0[2],J0=lr([0,Y0[2]],0,0),Pr=Y0[3],K0=[0,[1,[0,u0[1],[0,Y0[1],0,J0]]]];break;case 3:var fr=cr(0,Vn[8],D0),Q0=fr[2],F0=lr([0,Q0[2]],0,0),Pr=Q0[3],K0=[0,[1,[0,fr[1],[0,Q0[1],2,F0]]]];break;case 4:var gr=cr(0,Vn[7],D0),mr=gr[2],Cr=lr([0,mr[2]],0,0),Pr=mr[3],K0=[0,[1,[0,gr[1],[0,mr[1],1,Cr]]]];break;default:D=1}else if(I0===8)var Pr=0,K0=0;else D=1;else D=1;if(D)var sr=T9(1,D0),Pr=0,K0=[0,[0,u(se[8],sr)]];var Ur=N0(_);if(typeof Ur=="number"){if(Ur===17){if(K0){var d0=K0[1];if(d0[0]===0)var Kr=[1,ir(t[2],xre,_,d0[1])];else{var re=d0[1];Tr(_,28,re);var Kr=[0,re]}U?V0(_,63):V0(_,17);var xe=u(se[7],_);V0(_,5);var je=zl(1,_),ve=u(se[2],je);return Hr(_,ve),[21,[0,Kr,xe,ve,0,y0]]}throw[0,wn,are]}if(Ur===63){if(K0){var Ie=K0[1];if(Ie[0]===0)var Me=[1,ir(t[2],ire,_,Ie[1])];else{var Be=Ie[1];Tr(_,29,Be);var Me=[0,Be]}V0(_,63);var fn=u(se[10],_);V0(_,5);var Ke=zl(1,_),Ae=u(se[2],Ke);return Hr(_,Ae),[22,[0,Me,fn,Ae,U,y0]]}throw[0,wn,fre]}}if(Pu(function(gt){return ue(_,gt)},Pr),U?V0(_,63):V0(_,8),K0)var xn=K0[1],Qe=xn[0]===0?[0,[1,a(t[1],_,xn[1])]]:[0,[0,xn[1]]],yn=Qe;else var yn=K0;var on=N0(_),Ce=0;if(typeof on=="number"){var We=on!==8?1:0;if(!We){var rn=We;Ce=1}}if(!Ce)var rn=[0,u(se[7],_)];V0(_,8);var bn=N0(_),Cn=0;if(typeof bn=="number"){var Hn=bn!==5?1:0;if(!Hn){var Sn=Hn;Cn=1}}if(!Cn)var Sn=[0,u(se[7],_)];V0(_,5);var vt=zl(1,_),At=u(se[2],vt);return Hr(_,At),[20,[0,yn,rn,Sn,At,y0]]}var xr=0;function Rr(_){return cr(xr,Or,_)}function Wr(_){var k=qs(_)?n(_):u(se[2],_),I=1-_[5],U=I&&nb(k);return U&&B1(_,k[1]),k}function Jr(_){var k=pr(_);V0(_,43);var I=Wr(_);return[0,I,lr([0,k],0,0)]}function or(_){var k=pr(_);V0(_,16);var I=un(k,pr(_));V0(_,4);var U=u(se[7],_);V0(_,5);var Y=Wr(_),y0=N0(_)===43?1:0,D0=y0&&[0,cr(0,Jr,_)];return[24,[0,U,Y,D0,lr([0,I],0,0)]]}var _r=0;function Ir(_){return cr(_r,or,_)}function fe(_){1-_[11]&&Ge(_,36);var k=pr(_),I=De(_);V0(_,19);var U=N0(_)===8?1:0,Y=U&&we(_),y0=0;if(N0(_)!==8&&!x2(_)){var D0=[0,u(se[7],_)];y0=1}if(!y0)var D0=0;var I0=yt(I,De(_)),D=x(0,0,_),u0=0;if(D[0]===0)var Y0=D[1];else{var J0=D[1];if(D0){var fr=function(sr,Pr){return a(Ze(sr,Di,90),sr,Pr)},Q0=[0,a(J0[2],D0[1],fr)],F0=Y;u0=1}else var Y0=J0[1]}if(!u0)var Q0=D0,F0=un(Y,Y0);return[28,[0,Q0,lr([0,k],[0,F0],0),I0]]}var v0=0;function P(_){return cr(v0,fe,_)}function L(_){var k=pr(_);V0(_,20),V0(_,4);var I=u(se[7],_);V0(_,5),V0(_,0);for(var U=ure;;){var Y=U[2],y0=N0(_);if(typeof y0=="number"){var D0=0;if((y0===1||Pn===y0)&&(D0=1),D0){var I0=de(Y);V0(_,1);var D=c(_),u0=I[1];return[29,[0,I,I0,lr([0,k],[0,D[1]],0),u0]]}}var Y0=U[1],J0=OL(0,function(Q0){return function(F0){var gr=pr(F0),mr=N0(F0),Cr=0;if(typeof mr=="number"&&mr===36){Q0&&Ge(F0,32),V0(F0,36);var sr=we(F0),Pr=0;Cr=1}if(!Cr){V0(F0,33);var sr=0,Pr=[0,u(se[7],F0)]}var K0=Q0||(Pr===0?1:0);V0(F0,86);var Ur=un(sr,c(F0)[1]);function d0(je){if(typeof je=="number"){var ve=je-1|0,Ie=0;if(32>>0?ve===35&&(Ie=1):30<(ve-1|0)>>>0&&(Ie=1),Ie)return 1}return 0}var Kr=1,re=F0[9]===1?F0:[0,F0[1],F0[2],F0[3],F0[4],F0[5],F0[6],F0[7],F0[8],Kr,F0[10],F0[11],F0[12],F0[13],F0[14],F0[15],F0[16],F0[17],F0[18],F0[19],F0[20],F0[21],F0[22],F0[23],F0[24],F0[25],F0[26],F0[27],F0[28],F0[29],F0[30]],xe=a(se[4],d0,re);return[0,[0,Pr,xe,lr([0,gr],[0,Ur],0)],K0]}}(Y0),_),U=[0,J0[2],[0,J0[1],Y]]}}var Q=0;function i0(_){return cr(Q,L,_)}function l0(_){var k=pr(_),I=De(_);V0(_,22),f7(_)&&ue(_,[0,I,21]);var U=u(se[7],_),Y=x(0,0,_);if(Y[0]===0)var D0=U,I0=Y[1];else var y0=function(D,u0){return a(Ze(D,Di,91),D,u0)},D0=a(Y[1][2],U,y0),I0=0;return[30,[0,D0,lr([0,k],[0,I0],0)]]}var S0=0;function T0(_){return cr(S0,l0,_)}function rr(_){var k=pr(_);V0(_,23);var I=u(se[15],_);if(N0(_)===34)var U=Wt(_),Y=function(sr,Pr){var K0=Pr[1];return[0,K0,ir(Ze(sr,V8,29),sr,K0,Pr[2])]},y0=a(U[2],I,Y);else var y0=I;var D0=N0(_),I0=0;if(typeof D0=="number"&&D0===34){var D=[0,cr(0,function(Pr){var K0=pr(Pr);V0(Pr,34);var Ur=we(Pr),d0=N0(Pr)===4?1:0;if(d0){V0(Pr,4);var Kr=[0,a(se[18],Pr,39)];V0(Pr,5);var re=Kr}else var re=d0;var xe=u(se[15],Pr);if(N0(Pr)===38)var Ie=xe;else var je=c(Pr),ve=function(Me,Be){var fn=Be[1];return[0,fn,ir(Ze(Me,V8,92),Me,fn,Be[2])]},Ie=a(je[2],xe,ve);return[0,re,Ie,lr([0,K0],[0,Ur],0)]},_)];I0=1}if(!I0)var D=0;var u0=N0(_),Y0=0;if(typeof u0=="number"&&u0===38){V0(_,38);var J0=u(se[15],_),fr=J0[1],Q0=c(_),F0=function(Pr,K0){return ir(Ze(Pr,V8,93),Pr,fr,K0)},gr=[0,[0,fr,a(Q0[2],J0[2],F0)]];Y0=1}if(!Y0)var gr=0;var mr=D===0?1:0,Cr=mr&&(gr===0?1:0);return Cr&&ue(_,[0,y0[1],33]),[31,[0,y0,D,gr,lr([0,k],0,0)]]}var R0=0;function B(_){return cr(R0,rr,_)}function Z(_){var k=u(Vn[9],_),I=s(0,_,k[1]),U=0,Y=k[3];Pu(function(D0){return ue(_,D0)},Y);var y0=lr([0,k[2]],[0,I[1]],0);return[34,[0,I[2],U,y0]]}var p0=0;function b0(_){return cr(p0,Z,_)}function O0(_){var k=u(Vn[8],_),I=s(2,_,k[1]),U=2,Y=k[3];Pu(function(D0){return ue(_,D0)},Y);var y0=lr([0,k[2]],[0,I[1]],0);return[34,[0,I[2],U,y0]]}var q0=0;function er(_){return cr(q0,O0,_)}function yr(_){var k=u(Vn[7],_),I=s(1,_,k[1]),U=1,Y=k[3];Pu(function(D0){return ue(_,D0)},Y);var y0=lr([0,k[2]],[0,I[1]],0);return[34,[0,I[2],U,y0]]}var vr=0;function $0(_){return cr(vr,yr,_)}function Sr(_){var k=pr(_);V0(_,25);var I=un(k,pr(_));V0(_,4);var U=u(se[7],_);V0(_,5);var Y=zl(1,_),y0=u(se[2],Y),D0=1-_[5],I0=D0&&nb(y0);return I0&&B1(_,y0[1]),[35,[0,U,y0,lr([0,I],0,0)]]}var Mr=0;function Br(_){return cr(Mr,Sr,_)}function qr(_){var k=pr(_),I=u(se[7],_),U=N0(_),Y=I[2];if(Y[0]===10&&typeof U=="number"&&U===86){var y0=Y[1],D0=y0[2][1];V0(_,86),a(Gu[3],D0,_[3])&&ue(_,[0,I[1],[16,nre,D0]]);var I0=_[30],D=_[29],u0=_[28],Y0=_[27],J0=_[26],fr=_[25],Q0=_[24],F0=_[23],gr=_[22],mr=_[21],Cr=_[20],sr=_[19],Pr=_[18],K0=_[17],Ur=_[16],d0=_[15],Kr=_[14],re=_[13],xe=_[12],je=_[11],ve=_[10],Ie=_[9],Me=_[8],Be=_[7],fn=_[6],Ke=_[5],Ae=_[4],xn=a(Gu[4],D0,_[3]),Qe=[0,_[1],_[2],xn,Ae,Ke,fn,Be,Me,Ie,ve,je,xe,re,Kr,d0,Ur,K0,Pr,sr,Cr,mr,gr,F0,Q0,fr,J0,Y0,u0,D,I0],yn=qs(Qe)?n(Qe):u(se[2],Qe);return[27,[0,y0,yn,lr([0,k],0,0)]]}var on=x(tre,0,_);if(on[0]===0)var We=I,rn=on[1];else var Ce=function(bn,Cn){return a(Ze(bn,Di,94),bn,Cn)},We=a(on[1][2],I,Ce),rn=0;return[19,[0,We,0,lr(0,[0,rn],0)]]}var jr=0;function $r(_){return cr(jr,qr,_)}function ne(_){var k=u(se[7],_),I=x(ere,0,_);if(I[0]===0)var Y=k,y0=I[1];else var U=function(sr,Pr){return a(Ze(sr,Di,95),sr,Pr)},Y=a(I[1][2],k,U),y0=0;var D0=_[19];if(D0){var I0=Y[2],D=0;if(I0[0]===14){var u0=I0[1],Y0=0,J0=u0[1];if(typeof J0!="number"&&J0[0]===0){var fr=u0[2],Q0=1>>0))switch(K0){case 21:var Ur=un(I0,pr(D0)),d0=cr(0,function(Nt){return V0(Nt,36)},D0),Kr=ae0(1,D0),re=N0(Kr),xe=0;if(typeof re=="number")if(re===15)var je=0,ve=je,Ie=[0,[1,cr(0,function(Nt){return a(e0,0,Nt)},Kr)]];else if(re===40)var ve=0,Ie=[0,[2,cr(0,u(k0,0),Kr)]];else xe=1;else xe=1;if(xe){var Me=u(ln[1],Kr),Be=x(0,0,Kr);if(Be[0]===0)var Ae=Be[1],xn=Me;else var fn=0,Ke=function(Ku,lt){return a(Ze(Ku,_v,Pn),Ku,lt)},Ae=fn,xn=a(Be[1][2],Me,Ke);var ve=Ae,Ie=[0,[3,xn]]}var Qe=lr([0,Ur],[0,ve],0);return[6,[0,[0,d0[1]],Ie,0,0,Qe]];case 0:case 9:case 12:case 13:case 25:var yn=N0(D0);if(typeof yn=="number"){var on=0;if(25<=yn)if(29<=yn){if(yn===40){var Ce=[0,[2,cr(0,u(k0,0),D0)]];on=1}}else 27<=yn&&(on=2);else if(yn===15){var Ce=[0,[1,cr(0,function(du){return a(e0,0,du)},D0)]];on=1}else 24<=yn&&(on=2);var We=0;switch(on){case 0:break;case 2:var rn=0;typeof yn=="number"?yn===27?Ge(D0,72):yn===28?Ge(D0,71):rn=1:rn=1;var Ce=[0,[0,cr(0,function(du){return a(l,du,0)},D0)]];We=1;break;default:We=1}if(We)return[6,[0,0,Ce,0,0,lr([0,I0],0,0)]]}throw[0,wn,E0e]}}var bn=N0(D0),Cn=0;typeof bn=="number"?bn===53?Ge(D0,74):bn===61?Ge(D0,73):Cn=1:Cn=1,V0(D0,0);var Hn=ir(X0,0,D0,0);V0(D0,1);var Sn=N0(D0),vt=0;if(typeof Sn!="number"&&Sn[0]===4&&!n0(Sn[3],w0e)){var At=u(E0,D0),gt=At[2],Jt=[0,At[1]];vt=1}if(!vt){a(b,D0,Hn);var Bt=x(0,0,D0),Ft=Bt[0]===0?Bt[1]:Bt[1][1],gt=Ft,Jt=0}return[6,[0,0,0,[0,[0,Hn]],Jt,lr([0,I0],[0,gt],0)]]}var U=0;return function(Y){return cr(U,I,Y)}}),[0,Rr,Ir,$0,B,Br,E,h,y,T,Ar,w0,X,M,Lr,p,G0,pe,Fr,m0,$r,K,P,i0,T0,A,b0,er]}(j9),He0=function(t){var n=function y(T,E){return y.fun(T,E)},e=function y(T,E){return y.fun(T,E)},i=function y(T,E){return y.fun(T,E)};N(n,function(y,T){for(var E=T[2],h=E[2],w=o2(y),G=0,A=E[1];;){if(A){var S=A[1];if(S[0]===0){var M=S[1],K=M[2];switch(K[0]){case 0:var V=K[2],f0=K[1];switch(f0[0]){case 0:var m0=[0,f0[1]];break;case 1:var m0=[1,f0[1]];break;case 2:var m0=ke(y0e);break;default:var m0=[2,f0[1]]}var k0=V[2],g0=0;if(k0[0]===2){var e0=k0[1];if(!e0[1]){var x0=[0,e0[3]],l=e0[2];g0=1}}if(!g0)var x0=0,l=a(i,y,V);var c0=[0,[0,[0,M[1],[0,m0,l,x0,K[3]]]],G];break;case 1:ue(y,[0,K[2][1],97]);var c0=G;break;default:ue(y,[0,K[2][1],d0e]);var c0=G}var G=c0,A=A[2];continue}var t0=S[1],a0=t0[1];if(A[2]){ue(y,[0,a0,66]);var A=A[2];continue}var w0=t0[2],_0=w0[2],G=[0,[1,[0,a0,[0,a(i,y,w0[1]),_0]]],G],A=0;continue}var E0=[0,[0,de(G),w,h]];return[0,T[1],E0]}});function x(y,T){return u(se[23],T)?[0,a(i,y,T)]:(ue(y,[0,T[1],26]),0)}N(e,function(y,T){for(var E=T[2],h=E[2],w=o2(y),G=0,A=E[1];;){if(A){var S=A[1];switch(S[0]){case 0:var M=S[1],K=M[2];if(K[0]===2){var V=K[1];if(!V[1]){var G=[0,[0,[0,M[1],[0,V[2],[0,V[3]]]]],G],A=A[2];continue}}var f0=x(y,M);if(f0)var m0=f0[1],k0=[0,[0,[0,m0[1],[0,m0,0]]],G];else var k0=G;var G=k0,A=A[2];continue;case 1:var g0=S[1],e0=g0[1];if(A[2]){ue(y,[0,e0,65]);var A=A[2];continue}var x0=g0[2],l=x(y,x0[1]),c0=l?[0,[1,[0,e0,[0,l[1],x0[2]]]],G]:G,G=c0,A=0;continue;default:var G=[0,[2,S[1]],G],A=A[2];continue}}var t0=[1,[0,de(G),w,h]];return[0,T[1],t0]}}),N(i,function(y,T){var E=T[2],h=T[1];switch(E[0]){case 0:return a(e,y,[0,h,E[1]]);case 10:var w=E[1],G=w[2][1],A=w[1],S=0;if(y[5]&&Bs(G)?ue(y,[0,A,52]):S=1,S&&1-y[5]){var M=0;if(y[17]&&qn(G,m0e)?ue(y,[0,A,93]):M=1,M){var K=y[18],V=K&&qn(G,_0e);V&&ue(y,[0,A,92])}}return[0,h,[2,[0,w,o2(y),0]]];case 19:return a(n,y,[0,h,E[1]]);default:return[0,h,[3,[0,h,E]]]}});function c(y){function T(w){var G=N0(w);return typeof G=="number"&&G===82?(V0(w,82),[0,u(se[10],w)]):0}function E(w){var G=pr(w);V0(w,0);for(var A=0,S=0,M=0;;){var K=N0(w);if(typeof K=="number"){var V=0;if((K===1||Pn===K)&&(V=1),V){S&&ue(w,[0,S[1],98]);var f0=de(M),m0=pr(w);V0(w,1);var k0=we(w),g0=N0(w)===86?[1,u(t[9],w)]:o2(w);return[0,[0,f0,g0,_u([0,G],[0,k0],m0,0)]]}}if(N0(w)===12)var e0=pr(w),x0=cr(0,function(Jr){return V0(Jr,12),p(Jr,y)},w),l=lr([0,e0],0,0),c0=[0,[1,[0,x0[1],[0,x0[2],l]]]];else{var t0=De(w),a0=a(se[20],0,w),w0=N0(w),_0=0;if(typeof w0=="number"&&w0===86){V0(w,86);var E0=cr([0,t0],function(or){var _r=p(or,y);return[0,_r,T(or)]},w),X0=E0[2],b=a0[2];switch(b[0]){case 0:var G0=[0,b[1]];break;case 1:var G0=[1,b[1]];break;case 2:var G0=ke(v0e);break;default:var G0=[2,b[1]]}var c0=[0,[0,[0,E0[1],[0,G0,X0[1],X0[2],0]]]]}else _0=1;if(_0){var X=a0[2];if(X[0]===1){var s0=X[1],dr=s0[2][1],Ar=s0[1],ar=0;SL(dr)&&n0(dr,b0e)&&n0(dr,p0e)&&(ue(w,[0,Ar,2]),ar=1),!ar&&f2(dr)&&Y7(w,[0,Ar,55]);var W0=cr([0,t0],function(or,_r){return function(Ir){var fe=[0,_r,[2,[0,or,o2(Ir),0]]];return[0,fe,T(Ir)]}}(s0,Ar),w),Lr=W0[2],c0=[0,[0,[0,W0[1],[0,[1,s0],Lr[1],Lr[2],1]]]]}else{St(l0e,w);var c0=0}}}if(c0){var Tr=c0[1],Hr=A?(ue(w,[0,Tr[1][1],66]),0):S;if(Tr[0]===0)var Rr=Hr,Wr=A;else var Or=N0(w)===9?1:0,xr=Or&&[0,De(w)],Rr=xr,Wr=1;N0(w)!==1&&V0(w,9);var A=Wr,S=Rr,M=[0,Tr,M];continue}}}var h=0;return function(w){return cr(h,E,w)}}function s(y){function T(h){var w=pr(h);V0(h,6);for(var G=0;;){var A=N0(h);if(typeof A=="number"){var S=0;if(13<=A)Pn===A&&(S=1);else if(7<=A)switch(A-7|0){case 2:var M=De(h);V0(h,9);var G=[0,[2,M],G];continue;case 5:var K=pr(h),V=cr(0,function(_0){return V0(_0,12),p(_0,y)},h),f0=V[1],m0=lr([0,K],0,0),k0=[1,[0,f0,[0,V[2],m0]]];N0(h)!==7&&(ue(h,[0,f0,65]),N0(h)===9&&ie(h));var G=[0,k0,G];continue;case 0:S=1;break}if(S){var g0=de(G),e0=pr(h);V0(h,7);var x0=N0(h)===86?[1,u(t[9],h)]:o2(h);return[1,[0,g0,x0,_u([0,w],[0,we(h)],e0,0)]]}}var l=cr(0,function(w0){var _0=p(w0,y),E0=N0(w0),X0=0;if(typeof E0=="number"&&E0===82){V0(w0,82);var b=[0,u(se[10],w0)];X0=1}if(!X0)var b=0;return[0,_0,b]},h),c0=l[2],t0=[0,[0,l[1],[0,c0[1],c0[2]]]];N0(h)!==7&&V0(h,9);var G=[0,t0,G]}}var E=0;return function(h){return cr(E,T,h)}}function p(y,T){var E=N0(y);if(typeof E=="number"){if(E===6)return u(s(T),y);if(!E)return u(c(T),y)}var h=ir(se[14],y,0,T);return[0,h[1],[2,h[2]]]}return[0,n,e,i,c,s,p]}(ln),dne=lne(se),hne=ln[9];function Xe0(t,n){var e=N0(n),i=0;if(typeof e=="number"?e===28?n[5]?Ge(n,55):n[14]&&St(0,n):e===58?n[17]?Ge(n,2):n[5]&&Ge(n,55):e===65?n[18]&&Ge(n,2):i=1:i=1,i)if(EL(e))Si(n,55);else{var x=0;if(typeof e=="number")switch(e){case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 32:case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 43:case 44:case 45:case 46:case 47:case 49:case 50:case 51:case 58:case 59:case 65:var c=1;x=1;break}else if(e[0]===4&&ve0(e[3])){var c=1;x=1}if(!x)var c=0;var s=0;if(c)var p=c;else{var y=wL(e);if(y)var p=y;else{var T=0;if(typeof e=="number")switch(e){case 29:case 30:case 31:break;default:T=1}else if(e[0]===4){var E=e[3];n0(E,ijr)&&n0(E,fjr)&&n0(E,xjr)&&(T=1)}else T=1;if(T){var h=0;s=1}else var p=1}}if(!s)var h=p;if(h)St(0,n);else{var w=0;t&&le0(e)?Si(n,t[1]):w=1}}return V7(n)}var Ye0=function t(n){return t.fun(n)},BL=function t(n,e,i){return t.fun(n,e,i)},qL=function t(n){return t.fun(n)},Ve0=function t(n,e){return t.fun(n,e)},UL=function t(n,e){return t.fun(n,e)},HL=function t(n,e){return t.fun(n,e)},G9=function t(n,e){return t.fun(n,e)},xb=function t(n,e){return t.fun(n,e)},M9=function t(n){return t.fun(n)},ze0=function t(n){return t.fun(n)},Ke0=function t(n){return t.fun(n)},We0=function t(n,e,i){return t.fun(n,e,i)},Je0=function t(n){return t.fun(n)},$e0=function t(n){return t.fun(n)},Ze0=Ys[3],kne=oi[3],wne=oi[1],Ene=oi[5],Sne=Ys[2],gne=Ys[1],Fne=Ys[4],Tne=oi[4],One=oi[6],Ine=dne[13],Ane=He0[6],Nne=He0[3];N(Ye0,function(t){var n=pr(t),e=de(n),i=5;r:for(;;){if(e)for(var x=e[2],c=e[1],s=c[2],p=c[1],y=s[2],T=0,E=nn(y);;){if(E<(T+5|0))var h=0;else{var w=qn(p7(y,T,i),RRr);if(!w){var T=T+1|0;continue}var h=w}if(!h){var e=x;continue r}t[30][1]=p[3];var G=de([0,[0,p,s],x]);break}else var G=e;if(G===0){var A=0;if(n){var S=n[1],M=S[2];if(!M[1]){var K=M[2],V=0;if(1<=nn(K)&&Ot(K,0)===42){t[30][1]=S[1][3];var f0=[0,S,0];A=1,V=1}}}if(!A)var f0=0}else var f0=G;var m0=a(Ve0,t,function(c0){return 0}),k0=De(t);V0(t,Pn);var g0=Gu[1];if(be(function(c0,t0){var a0=t0[2];switch(a0[0]){case 17:return fb(t,c0,Gc(0,[0,a0[1][1],Ere]));case 18:var w0=a0[1],_0=w0[1];if(_0){if(!w0[2]){var E0=_0[1],X0=E0[2],b=0;switch(X0[0]){case 34:var G0=X0[1][1],X=0,s0=be(function(Tr,Hr){return be(ML,Tr,[0,Hr[2][1],0])},X,G0);return be(function(Tr,Hr){return fb(t,Tr,Hr)},c0,s0);case 2:case 23:var dr=X0[1][1];if(dr)var Ar=dr[1];else b=1;break;case 16:case 26:case 32:case 33:var Ar=X0[1][1];break;default:b=1}return b?c0:fb(t,c0,Gc(0,[0,E0[1],Ar[2][1]]))}}else{var ar=w0[2];if(ar){var W0=ar[1];if(W0[0]===0){var Lr=W0[1];return be(function(Tr,Hr){var Or=Hr[2],xr=Or[2];return xr?fb(t,Tr,xr[1]):fb(t,Tr,Or[1])},c0,Lr)}return c0}}return c0;default:return c0}},g0,m0),m0)var e0=bl(de(m0))[1],x0=yt(bl(m0)[1],e0);else var x0=k0;var l=de(t[2][1]);return[0,x0,[0,m0,lr([0,f0],0,0),l]]}}),N(BL,function(t,n,e){for(var i=fe0(1,t),x=hre;;){var c=x[3],s=x[2],p=x[1],y=N0(i),T=0;if(typeof y=="number"&&Pn===y)var E=[0,i,p,s,c];else T=1;if(T)if(u(n,y))var E=[0,i,p,s,c];else{var h=0;if(typeof y=="number"||y[0]!==2)h=1;else{var w=u(e,i),G=[0,w,s],A=w[2];if(A[0]===19){var S=A[1][2];if(S){var M=qn(S[1],dre),K=M&&1-i[20];K&&ue(i,[0,w[1],43]);var V=M?ys(1,i):i,f0=[0,y,p],m0=c||M,i=V,x=[0,f0,G,m0];continue}}var E=[0,i,p,G,c]}if(h)var E=[0,i,p,s,c]}var k0=fe0(0,i),g0=de(p);return Pu(function(e0){if(typeof e0!="number"&&e0[0]===2){var x0=e0[1],l=x0[4];return l&&Y7(k0,[0,x0[1],45])}return ke(Te(wre,Te(Tr0(e0),kre)))},g0),[0,k0,E[3],c]}}),N(qL,function(t){var n=u(Ys[6],t),e=N0(t);if(typeof e=="number"){var i=e-49|0;if(!(11>>0))switch(i){case 0:return a(dt[16],n,t);case 1:u(N9(t),n);var x=Yn(1,t);if(typeof x=="number"){var c=0;if((x===4||x===10)&&(c=1),c)return u(dt[17],t)}return u(dt[18],t);case 11:if(Yn(1,t)===49)return u(N9(t),n),a(dt[12],0,t);break}}return a(xb,[0,n],t)}),N(Ve0,function(t,n){var e=ir(BL,t,n,qL),i=a(UL,n,e[1]),x=e[2];return be(function(c,s){return[0,s,c]},i,x)}),N(UL,function(t,n){for(var e=0;;){var i=N0(n);if(typeof i=="number"&&Pn===i||u(t,i))return de(e);var e=[0,u(qL,n),e]}}),N(HL,function(t,n){var e=ir(BL,n,t,function(s){return a(xb,0,s)}),i=a(G9,t,e[1]),x=e[2],c=be(function(s,p){return[0,p,s]},i,x);return[0,c,e[3]]}),N(G9,function(t,n){for(var e=0;;){var i=N0(n);if(typeof i=="number"&&Pn===i||u(t,i))return de(e);var e=[0,a(xb,0,n),e]}}),N(xb,function(t,n){var e=t&&t[1];1-$l(n)&&u(N9(n),e);var i=N0(n);if(typeof i=="number"){if(i===27)return u(dt[27],n);if(i===28)return u(dt[3],n)}if(qs(n))return u(Vn[10],n);if($l(n))return a(Ze0,n,e);if(typeof i=="number"){var x=i+zt|0;if(!(14>>0))switch(x){case 0:if(n[27][1])return u(Vn[11],n);break;case 5:return u(dt[19],n);case 12:return a(dt[11],0,n);case 13:return u(dt[25],n);case 14:return u(dt[21],n)}}return u(M9,n)}),N(M9,function(t){var n=N0(t);if(typeof n=="number")switch(n){case 0:return u(dt[7],t);case 8:return u(dt[15],t);case 19:return u(dt[22],t);case 20:return u(dt[23],t);case 22:return u(dt[24],t);case 23:return u(dt[4],t);case 24:return u(dt[26],t);case 25:return u(dt[5],t);case 26:return u(dt[6],t);case 32:return u(dt[8],t);case 35:return u(dt[9],t);case 37:return u(dt[14],t);case 39:return u(dt[1],t);case 59:return u(dt[10],t);case 113:return St(mre,t),[0,De(t),_re];case 16:case 43:return u(dt[2],t);case 1:case 5:case 7:case 9:case 10:case 11:case 12:case 17:case 18:case 33:case 34:case 36:case 38:case 41:case 42:case 49:case 83:case 86:return St(yre,t),ie(t),u(M9,t)}if(qs(t)){var e=u(Vn[10],t);return B1(t,e[1]),e}if(typeof n=="number"&&n===28&&Yn(1,t)===6){var i=Wl(1,t);return ue(t,[0,yt(De(t),i),94]),u(dt[17],t)}return M1(t)?u(dt[20],t):($l(t)&&(St(0,t),ie(t)),u(dt[17],t))}),N(ze0,function(t){var n=De(t),e=u(oi[1],t),i=N0(t);return typeof i=="number"&&i===9?ir(oi[7],t,n,[0,e,0]):e}),N(Ke0,function(t){var n=De(t),e=u(oi[2],t),i=N0(t);if(typeof i=="number"&&i===9){var x=[0,a(j9[1],t,e),0];return[0,ir(oi[7],t,n,x)]}return e}),N(We0,function(t,n,e){var i=n&&n[1];return cr(0,function(x){var c=1-i,s=Xe0([0,e],x),p=c&&(N0(x)===85?1:0);return p&&(1-iu(x)&&Ge(x,12),V0(x,85)),[0,s,u(ln[10],x),p]},t)}),N(Je0,function(t){var n=De(t),e=pr(t);V0(t,0);var i=a(G9,function(y){return y===1?1:0},t),x=i===0?1:0,c=De(t),s=x&&pr(t);V0(t,1);var p=[0,i,_u([0,e],[0,we(t)],s,0)];return[0,yt(n,c),p]}),N($e0,function(t){function n(i){var x=pr(i);V0(i,0);var c=a(HL,function(S){return S===1?1:0},i),s=c[1],p=s===0?1:0,y=p&&pr(i);V0(i,1);var T=N0(i),E=0;if(!t){var h=0;if(typeof T=="number"&&(T===1||Pn===T)&&(h=1),!h){var w=f7(i);if(w){var G=Us(i);E=1}else{var G=w;E=1}}}if(!E)var G=we(i);var A=_u([0,x],[0,G],y,0);return[0,[0,s,A],c[2]]}var e=0;return function(i){return OL(e,n,i)}}),pu(Ore,se,[0,Ye0,M9,xb,G9,HL,UL,ze0,Ke0,kne,wne,Ene,Sne,Xe0,We0,Je0,$e0,Ine,Ane,Nne,gne,Ze0,Fne,Tne,One,hne]);var Qe0=[0,0],rn0=sn;function Cne(t){function n(e,i){var x=i[2],c=i[1],s=sL(x),p=[0,[0,Ire,u(t[1],s)],0],y=P9(e,c[3]),T=[0,u(t[5],y),0],E=P9(e,c[2]),h=[0,u(t[5],E),T],w=[0,[0,Are,u(t[4],h)],p],G=[0,[0,Nre,u(t[5],c[3][2])],0],A=[0,[0,Cre,u(t[5],c[3][1])],G],S=[0,[0,Pre,u(t[3],A)],0],M=[0,[0,Dre,u(t[5],c[2][2])],0],K=[0,[0,Lre,u(t[5],c[2][1])],M],V=[0,[0,Rre,u(t[3],K)],S],f0=[0,[0,jre,u(t[3],V)],w];switch(i[3]){case 0:var m0=Gre;break;case 1:var m0=Mre;break;case 2:var m0=Bre;break;case 3:var m0=qre;break;case 4:var m0=Ure;break;default:var m0=Hre}var k0=[0,[0,Xre,u(t[1],m0)],f0],g0=Tr0(x),e0=[0,[0,Yre,u(t[1],g0)],k0];return u(t[3],e0)}return[0,n,function(e,i){var x=de(Tp(function(c){return n(e,c)},i));return u(t[4],x)}]}var Pne=M70;function H1(t){return B70(_l(t))}function yu(t){return G70(_l(t))}function Dne(t){return t}function Lne(t){return t}function en0(t,n,e){try{var i=new RegExp(sn(n),sn(e));return i}catch{return u7}}var Rne=Cne([0,rn0,Pne,H1,yu,Dne,Lne,u7,en0]),jne=[0,1],nn0=function(t){function n(E,h){return yu(de(Tp(E,h)))}function e(E,h){return h?u(E,h[1]):u7}function i(E,h){return h[0]===0?u7:u(E,h[1])}function x(E){return H1([0,[0,YWr,E[1]],[0,[0,XWr,E[2]],0]])}function c(E){var h=E[1],w=h?sn(h[1][1]):u7,G=[0,[0,qWr,x(E[3])],0];return H1([0,[0,HWr,w],[0,[0,UWr,x(E[2])],G]])}function s(E){return n(function(h){var w=h[2],G=0;if(typeof w=="number"){var A=w;if(55<=A)switch(A){case 55:var S=_mr;break;case 56:var S=ymr;break;case 57:var S=dmr;break;case 58:var S=hmr;break;case 59:var S=kmr;break;case 60:var S=wmr;break;case 61:var S=Te(Smr,Emr);break;case 62:var S=Te(Fmr,gmr);break;case 63:var S=Te(Omr,Tmr);break;case 64:var S=Imr;break;case 65:var S=Amr;break;case 66:var S=Nmr;break;case 67:var S=Cmr;break;case 68:var S=Pmr;break;case 69:var S=Dmr;break;case 70:var S=Lmr;break;case 71:var S=Rmr;break;case 72:var S=jmr;break;case 73:var S=Gmr;break;case 74:var S=Mmr;break;case 75:var S=Bmr;break;case 76:var S=qmr;break;case 77:var S=Umr;break;case 78:var S=Hmr;break;case 79:var S=Xmr;break;case 80:var S=Ymr;break;case 81:var S=Vmr;break;case 82:var S=Te(Kmr,zmr);break;case 83:var S=Wmr;break;case 84:var S=Jmr;break;case 85:var S=$mr;break;case 86:var S=Zmr;break;case 87:var S=Qmr;break;case 88:var S=r9r;break;case 89:var S=e9r;break;case 90:var S=n9r;break;case 91:var S=t9r;break;case 92:var S=u9r;break;case 93:var S=i9r;break;case 94:var S=Te(x9r,f9r);break;case 95:var S=a9r;break;case 96:var S=o9r;break;case 97:var S=c9r;break;case 98:var S=s9r;break;case 99:var S=v9r;break;case 100:var S=l9r;break;case 101:var S=b9r;break;case 102:var S=p9r;break;case 103:var S=m9r;break;case 104:var S=_9r;break;case 105:var S=y9r;break;case 106:var S=d9r;break;case 107:var S=h9r;break;default:var S=k9r}else switch(A){case 0:var S=p5r;break;case 1:var S=m5r;break;case 2:var S=_5r;break;case 3:var S=y5r;break;case 4:var S=d5r;break;case 5:var S=h5r;break;case 6:var S=k5r;break;case 7:var S=w5r;break;case 8:var S=E5r;break;case 9:var S=S5r;break;case 10:var S=g5r;break;case 11:var S=F5r;break;case 12:var S=T5r;break;case 13:var S=O5r;break;case 14:var S=I5r;break;case 15:var S=A5r;break;case 16:var S=N5r;break;case 17:var S=C5r;break;case 18:var S=P5r;break;case 19:var S=D5r;break;case 20:var S=L5r;break;case 21:var S=R5r;break;case 22:var S=j5r;break;case 23:var S=G5r;break;case 24:var S=M5r;break;case 25:var S=B5r;break;case 26:var S=q5r;break;case 27:var S=U5r;break;case 28:var S=H5r;break;case 29:var S=X5r;break;case 30:var S=Y5r;break;case 31:var S=Te(z5r,V5r);break;case 32:var S=K5r;break;case 33:var S=W5r;break;case 34:var S=J5r;break;case 35:var S=$5r;break;case 36:var S=Z5r;break;case 37:var S=Q5r;break;case 38:var S=rmr;break;case 39:var S=emr;break;case 40:var S=nmr;break;case 41:var S=tmr;break;case 42:var S=umr;break;case 43:var S=imr;break;case 44:var S=fmr;break;case 45:var S=xmr;break;case 46:var S=amr;break;case 47:var S=omr;break;case 48:var S=cmr;break;case 49:var S=smr;break;case 50:var S=vmr;break;case 51:var S=lmr;break;case 52:var S=bmr;break;case 53:var S=pmr;break;default:var S=mmr}}else switch(w[0]){case 0:var M=w[2],K=w[1],S=ir(Qn(w9r),M,M,K);break;case 1:var V=w[1],f0=w[2],S=a(Qn(E9r),f0,V);break;case 2:var m0=w[1],S=u(Qn(S9r),m0);break;case 3:var k0=w[2],g0=w[1],e0=u(Qn(g9r),g0);if(k0)var x0=k0[1],S=a(Qn(F9r),x0,e0);else var S=u(Qn(T9r),e0);break;case 4:var l=w[1],S=a(Qn(O9r),l,l);break;case 5:var c0=w[3],t0=w[2],a0=w[1];if(t0){var w0=t0[1];if(3<=w0)var S=a(Qn(I9r),c0,a0);else{switch(w0){case 0:var _0=s5r;break;case 1:var _0=v5r;break;case 2:var _0=l5r;break;default:var _0=b5r}var S=R(Qn(A9r),a0,_0,c0,_0)}}else var S=a(Qn(N9r),c0,a0);break;case 6:var E0=w[2],X0=E0;if(l7(X0)===0)var b=X0;else{var G0=mz(X0);Jn(G0,0,vz(Hu(X0,0)));var b=G0}var X=b,s0=w[1],S=ir(Qn(C9r),E0,X,s0);break;case 7:var S=w[1]?P9r:D9r;break;case 8:var dr=w[1],Ar=w[2],S=a(Qn(L9r),Ar,dr);break;case 9:var ar=w[1],S=u(Qn(R9r),ar);break;case 10:var W0=w[1],S=u(Qn(j9r),W0);break;case 11:var Lr=w[2],Tr=w[1],S=a(Qn(G9r),Tr,Lr);break;case 12:var Hr=w[2],Or=w[1],S=a(Qn(M9r),Or,Hr);break;case 13:var S=Te(q9r,Te(w[1],B9r));break;case 14:var xr=w[1]?U9r:H9r,S=u(Qn(X9r),xr);break;case 15:var S=Te(V9r,Te(w[1],Y9r));break;case 16:var Rr=Te(K9r,Te(w[2],z9r)),S=Te(w[1],Rr);break;case 17:var S=Te(W9r,w[1]);break;case 18:var S=w[1]?Te($9r,J9r):Te(Q9r,Z9r);break;case 19:var Wr=w[1],S=u(Qn(r_r),Wr);break;case 20:var S=Te(n_r,Te(w[1],e_r));break;case 21:var Jr=w[1],or=w[2]?t_r:u_r,_r=w[4]?Te(i_r,Jr):Jr,Ir=w[3]?f_r:x_r,S=Te(c_r,Te(or,Te(Ir,Te(o_r,Te(_r,a_r)))));break;case 22:var S=Te(v_r,Te(w[1],s_r));break;default:var fe=w[1],S=u(Qn(l_r),fe)}var v0=[0,[0,MWr,sn(S)],G];return H1([0,[0,BWr,c(h[1])],v0])},E)}function p(E){if(E){var h=E[1],w=[0,un(h[3],h[2])];return lr([0,h[1]],w,0)}return E}function y(E){function h(_){return n(H0,_)}function w(_,k,I,U){var Y=t[1];if(Y){if(E)var y0=E[1],D0=[0,P9(y0,k[3]),0],I0=[0,[0,hGr,yu([0,P9(y0,k[2]),D0])],0];else var I0=E;var D=un(I0,[0,[0,kGr,c(k)],0])}else var D=Y;if(I){var u0=I[1],Y0=u0[1];if(Y0){var J0=u0[2];if(J0)var fr=[0,[0,wGr,h(J0)],0],Q0=[0,[0,EGr,h(Y0)],fr];else var Q0=[0,[0,SGr,h(Y0)],0];var mr=Q0}else var F0=u0[2],gr=F0&&[0,[0,gGr,h(F0)],0],mr=gr;var Cr=mr}else var Cr=I;return H1(jc(un(D,un(Cr,[0,[0,FGr,sn(_)],0])),U))}function G(_){return n(Q,_)}function A(_){var k=_[2],I=G(k[1]),U=[0,[0,OGr,I],[0,[0,TGr,h(k[3])],0]];return w(IGr,_[1],k[2],U)}function S(_){var k=_[2];return w(xUr,_[1],k[2],[0,[0,fUr,sn(k[1])],[0,[0,iUr,u7],[0,[0,uUr,!1],0]]])}function M(_){if(_[0]===0)return S(_[1]);var k=_[1],I=k[2],U=M(I[1]),Y=[0,[0,rKr,U],[0,[0,Qzr,S(I[2])],0]];return w(eKr,k[1],0,Y)}function K(_){var k=_[2],I=k[1],U=I[0]===0?S(I[1]):K(I[1]),Y=[0,[0,jzr,U],[0,[0,Rzr,S(k[2])],0]];return w(Gzr,_[1],0,Y)}function V(_){var k=_[2],I=k[1],U=I[0]===0?S(I[1]):K(I[1]),Y=[0,[0,Bzr,U],[0,[0,Mzr,e($r,k[2])],0]];return w(qzr,_[1],k[3],Y)}function f0(_){var k=_[2],I=k[2],U=k[1],Y=_[1];if(typeof U=="number")var y0=u7;else switch(U[0]){case 0:var y0=sn(U[1]);break;case 1:var y0=!!U[1];break;case 2:var y0=U[1];break;case 3:var y0=ke(IYr);break;default:var D0=U[1],y0=en0(Y,D0[1],D0[2])}var I0=0;if(typeof U!="number"&&U[0]===4){var D=U[1],u0=[0,[0,CYr,H1([0,[0,NYr,sn(D[1])],[0,[0,AYr,sn(D[2])],0]])],0],Y0=[0,[0,DYr,y0],[0,[0,PYr,sn(I)],u0]];I0=1}if(!I0)var Y0=[0,[0,RYr,y0],[0,[0,LYr,sn(I)],0]];return w(jYr,Y,k[3],Y0)}function m0(_){var k=[0,[0,Uzr,g0(_[2])],0];return[0,[0,Hzr,g0(_[1])],k]}function k0(_,k){var I=k[2],U=[0,[0,GVr,!!I[3]],0],Y=[0,[0,MVr,g0(I[2])],U],y0=[0,[0,BVr,e(S,I[1])],Y];return w(qVr,k[1],_,y0)}function g0(_){var k=_[2],I=_[1];switch(k[0]){case 0:return w(hVr,I,k[1],0);case 1:return w(kVr,I,k[1],0);case 2:return w(wVr,I,k[1],0);case 3:return w(EVr,I,k[1],0);case 4:return w(SVr,I,k[1],0);case 5:return w(FVr,I,k[1],0);case 6:return w(TVr,I,k[1],0);case 7:return w(OVr,I,k[1],0);case 8:return w(IVr,I,k[1],0);case 9:return w(gVr,I,k[1],0);case 10:return w(yKr,I,k[1],0);case 11:var U=k[1],Y=[0,[0,AVr,g0(U[1])],0];return w(NVr,I,U[2],Y);case 12:return e0([0,I,k[1]]);case 13:return x0(1,[0,I,k[1]]);case 14:var y0=k[1],D0=[0,[0,Nzr,x0(0,y0[1])],0],I0=[0,[0,Czr,n(fe,y0[2])],D0];return w(Pzr,I,y0[3],I0);case 15:var D=k[1],u0=[0,[0,Dzr,g0(D[1])],0];return w(Lzr,I,D[2],u0);case 16:return V([0,I,k[1]]);case 17:var Y0=k[1],J0=m0(Y0);return w(Xzr,I,Y0[3],J0);case 18:var fr=k[1],Q0=fr[1],F0=[0,[0,Yzr,!!fr[2]],0],gr=un(m0(Q0),F0);return w(Vzr,I,Q0[3],gr);case 19:var mr=k[1],Cr=mr[1],sr=[0,[0,zzr,n(g0,[0,Cr[1],[0,Cr[2],Cr[3]]])],0];return w(Kzr,I,mr[2],sr);case 20:var Pr=k[1],K0=Pr[1],Ur=[0,[0,Wzr,n(g0,[0,K0[1],[0,K0[2],K0[3]]])],0];return w(Jzr,I,Pr[2],Ur);case 21:var d0=k[1],Kr=[0,[0,$zr,M(d0[1])],0];return w(Zzr,I,d0[2],Kr);case 22:var re=k[1],xe=[0,[0,nKr,n(g0,re[1])],0];return w(tKr,I,re[2],xe);case 23:var je=k[1];return w(fKr,I,je[3],[0,[0,iKr,sn(je[1])],[0,[0,uKr,sn(je[2])],0]]);case 24:var ve=k[1];return w(oKr,I,ve[3],[0,[0,aKr,ve[1]],[0,[0,xKr,sn(ve[2])],0]]);case 25:var Ie=k[1];return w(vKr,I,Ie[3],[0,[0,sKr,u7],[0,[0,cKr,sn(Ie[2])],0]]);default:var Me=k[1],Be=Me[1],fn=0,Ke=Be?lKr:bKr;return w(_Kr,I,Me[2],[0,[0,mKr,!!Be],[0,[0,pKr,sn(Ke)],fn]])}}function e0(_){var k=_[2],I=k[2][2],U=k[4],Y=_7(p(I[4]),U),y0=[0,[0,CVr,e(qr,k[1])],0],D0=[0,[0,PVr,e(Mr,I[3])],y0],I0=[0,[0,DVr,g0(k[3])],D0],D=[0,[0,LVr,e(Br,I[1])],I0],u0=I[2],Y0=[0,[0,RVr,n(function(J0){return k0(0,J0)},u0)],D];return w(jVr,_[1],Y,Y0)}function x0(_,k){var I=k[2],U=I[3],Y=be(function(fr,Q0){var F0=fr[4],gr=fr[3],mr=fr[2],Cr=fr[1];switch(Q0[0]){case 0:var sr=Q0[1],Pr=sr[2],K0=Pr[2],Ur=Pr[1];switch(Ur[0]){case 0:var d0=f0(Ur[1]);break;case 1:var d0=S(Ur[1]);break;case 2:var d0=ke(rzr);break;default:var d0=ke(ezr)}switch(K0[0]){case 0:var xe=nzr,je=g0(K0[1]);break;case 1:var Kr=K0[1],xe=tzr,je=e0([0,Kr[1],Kr[2]]);break;default:var re=K0[1],xe=uzr,je=e0([0,re[1],re[2]])}var ve=[0,[0,izr,sn(xe)],0],Ie=[0,[0,fzr,e(Sr,Pr[7])],ve];return[0,[0,w(lzr,sr[1],Pr[8],[0,[0,vzr,d0],[0,[0,szr,je],[0,[0,czr,!!Pr[6]],[0,[0,ozr,!!Pr[3]],[0,[0,azr,!!Pr[4]],[0,[0,xzr,!!Pr[5]],Ie]]]]]]),Cr],mr,gr,F0];case 1:var Me=Q0[1],Be=Me[2],fn=[0,[0,bzr,g0(Be[1])],0];return[0,[0,w(pzr,Me[1],Be[2],fn),Cr],mr,gr,F0];case 2:var Ke=Q0[1],Ae=Ke[2],xn=[0,[0,mzr,e(Sr,Ae[5])],0],Qe=[0,[0,_zr,!!Ae[4]],xn],yn=[0,[0,yzr,g0(Ae[3])],Qe],on=[0,[0,dzr,g0(Ae[2])],yn],Ce=[0,[0,hzr,e(S,Ae[1])],on];return[0,Cr,[0,w(kzr,Ke[1],Ae[6],Ce),mr],gr,F0];case 3:var We=Q0[1],rn=We[2],bn=[0,[0,wzr,!!rn[2]],0],Cn=[0,[0,Ezr,e0(rn[1])],bn];return[0,Cr,mr,[0,w(Szr,We[1],rn[3],Cn),gr],F0];default:var Hn=Q0[1],Sn=Hn[2],vt=[0,[0,gzr,g0(Sn[2])],0],At=[0,[0,Ozr,!!Sn[3]],[0,[0,Tzr,!!Sn[4]],[0,[0,Fzr,!!Sn[5]],vt]]],gt=[0,[0,Izr,S(Sn[1])],At];return[0,Cr,mr,gr,[0,w(Azr,Hn[1],Sn[6],gt),F0]]}},VVr,U),y0=[0,[0,zVr,yu(de(Y[4]))],0],D0=[0,[0,KVr,yu(de(Y[3]))],y0],I0=[0,[0,WVr,yu(de(Y[2]))],D0],D=[0,[0,JVr,yu(de(Y[1]))],I0],u0=[0,[0,$Vr,!!I[1]],D],Y0=_?[0,[0,ZVr,!!I[2]],u0]:u0,J0=p(I[4]);return w(QVr,k[1],J0,Y0)}function l(_){var k=[0,[0,dKr,g0(_[2])],0];return w(hKr,_[1],0,k)}function c0(_){var k=_[2];switch(k[2]){case 0:var I=oVr;break;case 1:var I=cVr;break;default:var I=sVr}var U=[0,[0,vVr,sn(I)],0],Y=[0,[0,lVr,n($0,k[1])],U];return w(bVr,_[1],k[3],Y)}function t0(_){var k=_[2];return w(VYr,_[1],k[3],[0,[0,YYr,sn(k[1])],[0,[0,XYr,sn(k[2])],0]])}function a0(_){var k=_[2],I=[0,[0,XXr,f1],[0,[0,HXr,l(k[1])],0]];return w(YXr,_[1],k[2],I)}function w0(_,k){var I=k[1][2],U=[0,[0,vUr,!!k[3]],0],Y=[0,[0,lUr,i(l,k[2])],U];return w(pUr,_,I[2],[0,[0,bUr,sn(I[1])],Y])}function _0(_){var k=_[2];return w(sUr,_[1],k[2],[0,[0,cUr,sn(k[1])],[0,[0,oUr,u7],[0,[0,aUr,!1],0]]])}function E0(_){return n(q0,_[2][1])}function X0(_){var k=_[2],I=[0,[0,jKr,w(KKr,k[2],0,0)],0],U=[0,[0,GKr,n(ae,k[3][2])],I],Y=[0,[0,MKr,w(YKr,k[1],0,0)],U];return w(BKr,_[1],k[4],Y)}function b(_){var k=_[2];return w(pWr,_[1],k[2],[0,[0,bWr,sn(k[1])],0])}function G0(_){var k=_[2],I=[0,[0,sWr,b(k[2])],0],U=[0,[0,vWr,b(k[1])],I];return w(lWr,_[1],0,U)}function X(_){var k=_[2],I=k[1],U=I[0]===0?b(I[1]):X(I[1]),Y=[0,[0,oWr,U],[0,[0,aWr,b(k[2])],0]];return w(cWr,_[1],0,Y)}function s0(_){switch(_[0]){case 0:return b(_[1]);case 1:return G0(_[1]);default:return X(_[1])}}function dr(_){var k=_[2],I=[0,[0,PKr,n(ae,k[3][2])],0],U=[0,[0,DKr,e(oe,k[2])],I],Y=k[1],y0=Y[2],D0=[0,[0,qKr,!!y0[2]],0],I0=[0,[0,UKr,n(pe,y0[3])],D0],D=[0,[0,HKr,s0(y0[1])],I0],u0=[0,[0,LKr,w(XKr,Y[1],0,D)],U];return w(RKr,_[1],k[4],u0)}function Ar(_){var k=_[2],I=[0,[0,ZYr,n(xr,k[2])],0],U=[0,[0,QYr,n(vr,k[1])],I];return w(rVr,_[1],k[3],U)}function ar(_,k){var I=k[2],U=I[7],Y=I[5],y0=I[4];if(y0)var D0=y0[1][2],I0=_7(D0[3],U),D=I0,u0=D0[2],Y0=[0,D0[1]];else var D=U,u0=0,Y0=0;if(Y)var J0=Y[1][2],fr=_7(J0[2],D),Q0=fr,F0=n(T0,J0[1]);else var Q0=D,F0=yu(0);var gr=[0,[0,aHr,F0],[0,[0,xHr,n(S0,I[6])],0]],mr=[0,[0,oHr,e($r,u0)],gr],Cr=[0,[0,cHr,e(xr,Y0)],mr],sr=[0,[0,sHr,e(qr,I[3])],Cr],Pr=I[2],K0=Pr[2],Ur=[0,[0,dHr,n(rr,K0[1])],0],d0=[0,[0,vHr,w(hHr,Pr[1],K0[2],Ur)],sr],Kr=[0,[0,lHr,e(S,I[1])],d0];return w(_,k[1],Q0,Kr)}function W0(_){var k=_[2],I=[0,[0,wUr,G(k[1])],0],U=p(k[2]);return w(EUr,_[1],U,I)}function Lr(_){var k=_[2];switch(k[0]){case 0:var I=0,U=S(k[1]);break;case 1:var I=0,U=_0(k[1]);break;default:var I=1,U=xr(k[1])}return[0,[0,GWr,xr(_[1])],[0,[0,jWr,U],[0,[0,RWr,!!I],0]]]}function Tr(_){var k=[0,[0,PWr,E0(_[3])],0],I=[0,[0,DWr,e(ne,_[2])],k];return[0,[0,LWr,xr(_[1])],I]}function Hr(_){var k=_[2],I=k[3],U=k[2],Y=k[1];if(I){var y0=I[1],D0=y0[2],I0=[0,[0,VXr,Or(D0[1])],0],D=w(zXr,y0[1],D0[2],I0),u0=de([0,D,Tp(R0,U)]),Y0=Y?[0,a0(Y[1]),u0]:u0;return yu(Y0)}var J0=k1(R0,U),fr=Y?[0,a0(Y[1]),J0]:J0;return yu(fr)}function Or(_){var k=_[2],I=_[1];switch(k[0]){case 0:var U=k[1],Y=[0,[0,DXr,i(l,U[2])],0],y0=[0,[0,LXr,n(b0,U[1])],Y];return w(RXr,I,p(U[3]),y0);case 1:var D0=k[1],I0=[0,[0,jXr,i(l,D0[2])],0],D=[0,[0,GXr,n(Z,D0[1])],I0];return w(MXr,I,p(D0[3]),D);case 2:return w0(I,k[1]);default:return xr(k[1])}}function xr(_){var k=_[2],I=_[1];switch(k[0]){case 0:var U=k[1],Y=[0,[0,iBr,n(er,U[1])],0];return w(fBr,I,p(U[2]),Y);case 1:var y0=k[1],D0=y0[7],I0=y0[3],D=y0[2];if(I0[0]===0)var u0=0,Y0=W0(I0[1]);else var u0=1,Y0=xr(I0[1]);var J0=D0[0]===0?0:[0,D0[1]],fr=y0[9],Q0=_7(p(D[2][4]),fr),F0=[0,[0,xBr,e(qr,y0[8])],0],gr=[0,[0,oBr,!!u0],[0,[0,aBr,e(l,J0)],F0]],mr=[0,[0,sBr,!1],[0,[0,cBr,e(Fr,y0[6])],gr]],Cr=[0,[0,lBr,Y0],[0,[0,vBr,!!y0[4]],mr]];return w(mBr,I,Q0,[0,[0,pBr,u7],[0,[0,bBr,Hr(D)],Cr]]);case 2:var sr=k[1],Pr=sr[1];if(Pr){switch(Pr[1]){case 0:var K0=Upr;break;case 1:var K0=Hpr;break;case 2:var K0=Xpr;break;case 3:var K0=Ypr;break;case 4:var K0=Vpr;break;case 5:var K0=zpr;break;case 6:var K0=Kpr;break;case 7:var K0=Wpr;break;case 8:var K0=Jpr;break;case 9:var K0=$pr;break;case 10:var K0=Zpr;break;case 11:var K0=Qpr;break;case 12:var K0=r5r;break;case 13:var K0=e5r;break;default:var K0=n5r}var Ur=K0}else var Ur=_Br;var d0=[0,[0,yBr,xr(sr[3])],0],Kr=[0,[0,dBr,Or(sr[2])],d0];return w(kBr,I,sr[4],[0,[0,hBr,sn(Ur)],Kr]);case 3:var re=k[1],xe=[0,[0,wBr,xr(re[3])],0],je=[0,[0,EBr,xr(re[2])],xe];switch(re[1]){case 0:var ve=hpr;break;case 1:var ve=kpr;break;case 2:var ve=wpr;break;case 3:var ve=Epr;break;case 4:var ve=Spr;break;case 5:var ve=gpr;break;case 6:var ve=Fpr;break;case 7:var ve=Tpr;break;case 8:var ve=Opr;break;case 9:var ve=Ipr;break;case 10:var ve=Apr;break;case 11:var ve=Npr;break;case 12:var ve=Cpr;break;case 13:var ve=Ppr;break;case 14:var ve=Dpr;break;case 15:var ve=Lpr;break;case 16:var ve=Rpr;break;case 17:var ve=jpr;break;case 18:var ve=Gpr;break;case 19:var ve=Mpr;break;case 20:var ve=Bpr;break;default:var ve=qpr}return w(gBr,I,re[4],[0,[0,SBr,sn(ve)],je]);case 4:var Ie=k[1],Me=Ie[4],Be=_7(p(Ie[3][2][2]),Me);return w(FBr,I,Be,Tr(Ie));case 5:return ar(fHr,[0,I,k[1]]);case 6:var fn=k[1],Ke=[0,[0,TBr,e(xr,fn[2])],0];return w(IBr,I,0,[0,[0,OBr,n(yr,fn[1])],Ke]);case 7:var Ae=k[1],xn=[0,[0,ABr,xr(Ae[3])],0],Qe=[0,[0,NBr,xr(Ae[2])],xn],yn=[0,[0,CBr,xr(Ae[1])],Qe];return w(PBr,I,Ae[4],yn);case 8:return Rr([0,I,k[1]]);case 9:var on=k[1],Ce=[0,[0,DBr,e(xr,on[2])],0];return w(RBr,I,0,[0,[0,LBr,n(yr,on[1])],Ce]);case 10:return S(k[1]);case 11:var We=k[1],rn=[0,[0,jBr,xr(We[1])],0];return w(GBr,I,We[2],rn);case 12:return dr([0,I,k[1]]);case 13:return X0([0,I,k[1]]);case 14:var bn=k[1],Cn=bn[1];return typeof Cn!="number"&&Cn[0]===3?w(HYr,I,bn[3],[0,[0,UYr,u7],[0,[0,qYr,sn(bn[2])],0]]):f0([0,I,bn]);case 15:var Hn=k[1];switch(Hn[1]){case 0:var Sn=MBr;break;case 1:var Sn=BBr;break;default:var Sn=qBr}var vt=[0,[0,UBr,xr(Hn[3])],0],At=[0,[0,HBr,xr(Hn[2])],vt];return w(YBr,I,Hn[4],[0,[0,XBr,sn(Sn)],At]);case 16:var gt=k[1],Jt=Lr(gt);return w(VBr,I,gt[3],Jt);case 17:var Bt=k[1],Ft=[0,[0,zBr,S(Bt[2])],0],Nt=[0,[0,KBr,S(Bt[1])],Ft];return w(WBr,I,Bt[3],Nt);case 18:var du=k[1],Ku=du[4],lt=du[3];if(lt)var xu=lt[1],Mu=_7(p(xu[2][2]),Ku),z7=Mu,Yi=E0(xu);else var z7=Ku,Yi=yu(0);var a7=[0,[0,$Br,e(ne,du[2])],[0,[0,JBr,Yi],0]];return w(QBr,I,z7,[0,[0,ZBr,xr(du[1])],a7]);case 19:var Yc=k[1],K7=[0,[0,rqr,n(p0,Yc[1])],0];return w(eqr,I,p(Yc[2]),K7);case 20:var qt=k[1],bt=qt[1],U0=bt[4],L0=_7(p(bt[3][2][2]),U0),Re=[0,[0,nqr,!!qt[3]],0];return w(tqr,I,L0,un(Tr(bt),Re));case 21:var He=k[1],he=He[1],_e=[0,[0,uqr,!!He[3]],0],Zn=un(Lr(he),_e);return w(iqr,I,he[3],Zn);case 22:var dn=k[1],it=[0,[0,fqr,n(xr,dn[1])],0];return w(xqr,I,dn[2],it);case 23:return w(aqr,I,k[1][1],0);case 24:var ft=k[1],Rn=[0,[0,fVr,Ar(ft[2])],0],nt=[0,[0,xVr,xr(ft[1])],Rn];return w(aVr,I,ft[3],nt);case 25:return Ar([0,I,k[1]]);case 26:return w(oqr,I,k[1][1],0);case 27:var ht=k[1],tn=[0,[0,cqr,l(ht[2])],0],cn=[0,[0,sqr,xr(ht[1])],tn];return w(vqr,I,ht[3],cn);case 28:var tt=k[1],Tt=tt[3],Fi=tt[2],hs=tt[1];if(7<=hs)return w(bqr,I,Tt,[0,[0,lqr,xr(Fi)],0]);switch(hs){case 0:var Iu=pqr;break;case 1:var Iu=mqr;break;case 2:var Iu=_qr;break;case 3:var Iu=yqr;break;case 4:var Iu=dqr;break;case 5:var Iu=hqr;break;case 6:var Iu=kqr;break;default:var Iu=ke(wqr)}var Vs=[0,[0,Sqr,!0],[0,[0,Eqr,xr(Fi)],0]];return w(Fqr,I,Tt,[0,[0,gqr,sn(Iu)],Vs]);case 29:var Vi=k[1],zs=Vi[1]?Tqr:Oqr,Ks=[0,[0,Iqr,!!Vi[3]],0],en=[0,[0,Aqr,xr(Vi[2])],Ks];return w(Cqr,I,Vi[4],[0,[0,Nqr,sn(zs)],en]);default:var ci=k[1],Ws=[0,[0,Pqr,!!ci[3]],0],c2=[0,[0,Dqr,e(xr,ci[1])],Ws];return w(Lqr,I,ci[2],c2)}}function Rr(_){var k=_[2],I=k[7],U=k[3],Y=k[2],y0=U[0]===0?U[1]:ke(zqr),D0=I[0]===0?0:[0,I[1]],I0=k[9],D=_7(p(Y[2][4]),I0),u0=[0,[0,Kqr,e(qr,k[8])],0],Y0=[0,[0,Jqr,!1],[0,[0,Wqr,e(l,D0)],u0]],J0=[0,[0,$qr,e(Fr,k[6])],Y0],fr=[0,[0,Qqr,!!k[4]],[0,[0,Zqr,!!k[5]],J0]],Q0=[0,[0,rUr,W0(y0)],fr],F0=[0,[0,eUr,Hr(Y)],Q0],gr=[0,[0,nUr,e(S,k[1])],F0];return w(tUr,_[1],D,gr)}function Wr(_){var k=_[2],I=[0,[0,FXr,n(fe,k[3])],0],U=[0,[0,TXr,x0(0,k[4])],I],Y=[0,[0,OXr,e(qr,k[2])],U],y0=[0,[0,IXr,S(k[1])],Y];return w(AXr,_[1],k[5],y0)}function Jr(_,k){var I=k[2],U=_?QUr:rHr,Y=[0,[0,eHr,e(g0,I[4])],0],y0=[0,[0,nHr,e(g0,I[3])],Y],D0=[0,[0,tHr,e(qr,I[2])],y0],I0=[0,[0,uHr,S(I[1])],D0];return w(U,k[1],I[5],I0)}function or(_){var k=_[2],I=[0,[0,WUr,g0(k[3])],0],U=[0,[0,JUr,e(qr,k[2])],I],Y=[0,[0,$Ur,S(k[1])],U];return w(ZUr,_[1],k[4],Y)}function _r(_){if(_){var k=_[1];if(k[0]===0)return n(ge,k[1]);var I=k[1],U=I[2];if(U){var Y=[0,[0,HUr,S(U[1])],0];return yu([0,w(XUr,I[1],0,Y),0])}return yu(0)}return yu(0)}function Ir(_){return _?qUr:UUr}function fe(_){var k=_[2],I=k[1],U=I[0]===0?S(I[1]):K(I[1]),Y=[0,[0,CXr,U],[0,[0,NXr,e($r,k[2])],0]];return w(PXr,_[1],k[3],Y)}function v0(_){var k=_[2],I=k[6],U=k[4],Y=yu(U?[0,fe(U[1]),0]:0),y0=I?n(T0,I[1][2][1]):yu(0),D0=[0,[0,NUr,Y],[0,[0,AUr,y0],[0,[0,IUr,n(fe,k[5])],0]]],I0=[0,[0,CUr,x0(0,k[3])],D0],D=[0,[0,PUr,e(qr,k[2])],I0],u0=[0,[0,DUr,S(k[1])],D];return w(LUr,_[1],k[7],u0)}function P(_){var k=_[2],I=k[2],U=k[1],Y=yt(U[1],I[1]),y0=[0,[0,FUr,e(Fr,k[3])],0],D0=[0,[0,TUr,w0(Y,[0,U,[1,I],0])],y0];return w(OUr,_[1],k[4],D0)}function L(_){var k=_[2],I=k[2],U=k[1],Y=[0,[0,SUr,w0(yt(U[1],I[1]),[0,U,[1,I],0])],0];return w(gUr,_[1],k[3],Y)}function Q(_){var k=_[2],I=_[1];switch(k[0]){case 0:return W0([0,I,k[1]]);case 1:var U=k[1],Y=[0,[0,AGr,e(S,U[1])],0];return w(NGr,I,U[2],Y);case 2:return ar(iHr,[0,I,k[1]]);case 3:var y0=k[1],D0=[0,[0,CGr,e(S,y0[1])],0];return w(PGr,I,y0[2],D0);case 4:return w(DGr,I,k[1][1],0);case 5:return v0([0,I,k[1]]);case 6:var I0=k[1],D=I0[5],u0=I0[4],Y0=I0[3],J0=I0[2];if(Y0){var fr=Y0[1];if(fr[0]!==0&&!fr[1][2])return w(RGr,I,D,[0,[0,LGr,e(t0,u0)],0])}if(J0){var Q0=J0[1];switch(Q0[0]){case 0:var F0=L(Q0[1]);break;case 1:var F0=P(Q0[1]);break;case 2:var F0=v0(Q0[1]);break;case 3:var F0=g0(Q0[1]);break;case 4:var F0=or(Q0[1]);break;case 5:var F0=Jr(1,Q0[1]);break;default:var F0=Wr(Q0[1])}var gr=F0}else var gr=u7;var mr=[0,[0,jGr,e(t0,u0)],0],Cr=[0,[0,MGr,gr],[0,[0,GGr,_r(Y0)],mr]],sr=I0[1],Pr=sr&&1;return w(qGr,I,D,[0,[0,BGr,!!Pr],Cr]);case 7:return P([0,I,k[1]]);case 8:var K0=k[1],Ur=[0,[0,RUr,n(fe,K0[3])],0],d0=[0,[0,jUr,x0(0,K0[4])],Ur],Kr=[0,[0,GUr,e(qr,K0[2])],d0],re=[0,[0,MUr,S(K0[1])],Kr];return w(BUr,I,K0[5],re);case 9:var xe=k[1],je=xe[1],ve=je[0]===0?S(je[1]):t0(je[1]),Ie=0,Me=xe[3]?"ES":"CommonJS",Be=[0,[0,XGr,ve],[0,[0,HGr,W0(xe[2])],[0,[0,UGr,Me],Ie]]];return w(YGr,I,xe[4],Be);case 10:var fn=k[1],Ke=[0,[0,VGr,l(fn[1])],0];return w(zGr,I,fn[2],Ke);case 11:var Ae=k[1],xn=[0,[0,YUr,g0(Ae[3])],0],Qe=[0,[0,VUr,e(qr,Ae[2])],xn],yn=[0,[0,zUr,S(Ae[1])],Qe];return w(KUr,I,Ae[4],yn);case 12:return Jr(1,[0,I,k[1]]);case 13:return L([0,I,k[1]]);case 14:var on=k[1],Ce=[0,[0,KGr,xr(on[2])],0],We=[0,[0,WGr,Q(on[1])],Ce];return w(JGr,I,on[3],We);case 15:return w($Gr,I,k[1][1],0);case 16:var rn=k[1],bn=rn[2],Cn=bn[2],Hn=bn[1];switch(Cn[0]){case 0:var Sn=Cn[1],vt=[0,[0,oXr,!!Sn[2]],[0,[0,aXr,!!Sn[3]],0]],At=Sn[1],gt=[0,[0,cXr,n(function(hu){var ku=hu[2],Oi=ku[2],k7=Oi[2],Ki=k7[1],nv=0,Lb=Ki?zYr:KYr,tv=[0,[0,iXr,w($Yr,Oi[1],k7[2],[0,[0,JYr,!!Ki],[0,[0,WYr,sn(Lb)],0]])],nv],Rb=[0,[0,fXr,S(ku[1])],tv];return w(xXr,hu[1],0,Rb)},At)],vt],bt=w(sXr,Hn,p(Sn[4]),gt);break;case 1:var Jt=Cn[1],Bt=[0,[0,lXr,!!Jt[2]],[0,[0,vXr,!!Jt[3]],0]],Ft=Jt[1],Nt=[0,[0,bXr,n(function(hu){var ku=hu[2],Oi=ku[2],k7=Oi[2],Ki=[0,[0,nXr,w(BYr,Oi[1],k7[3],[0,[0,MYr,k7[1]],[0,[0,GYr,sn(k7[2])],0]])],0],nv=[0,[0,tXr,S(ku[1])],Ki];return w(uXr,hu[1],0,nv)},Ft)],Bt],bt=w(pXr,Hn,p(Jt[4]),Nt);break;case 2:var du=Cn[1],Ku=du[1];if(Ku[0]===0)var lt=Ku[1],Mu=k1(function(hu){var ku=[0,[0,rXr,S(hu[2][1])],0];return w(eXr,hu[1],0,ku)},lt);else var xu=Ku[1],Mu=k1(function(hu){var ku=hu[2],Oi=[0,[0,$Hr,t0(ku[2])],0],k7=[0,[0,ZHr,S(ku[1])],Oi];return w(QHr,hu[1],0,k7)},xu);var z7=[0,[0,_Xr,!!du[2]],[0,[0,mXr,!!du[3]],0]],Yi=[0,[0,yXr,yu(Mu)],z7],bt=w(dXr,Hn,p(du[4]),Yi);break;default:var a7=Cn[1],Yc=[0,[0,hXr,!!a7[2]],0],K7=a7[1],qt=[0,[0,kXr,n(function(hu){var ku=[0,[0,WHr,S(hu[2][1])],0];return w(JHr,hu[1],0,ku)},K7)],Yc],bt=w(wXr,Hn,p(a7[3]),qt)}var U0=[0,[0,SXr,S(rn[1])],[0,[0,EXr,bt],0]];return w(gXr,I,rn[3],U0);case 17:var L0=k[1],Re=L0[2],He=Re[0]===0?Q(Re[1]):xr(Re[1]),he=[0,[0,QGr,He],[0,[0,ZGr,sn(Ir(1))],0]];return w(rMr,I,L0[3],he);case 18:var _e=k[1],Zn=_e[5],dn=_e[4],it=_e[3],ft=_e[2];if(ft){var Rn=ft[1];if(Rn[0]!==0){var nt=[0,[0,eMr,sn(Ir(dn))],0],ht=[0,[0,nMr,e(S,Rn[1][2])],nt];return w(uMr,I,Zn,[0,[0,tMr,e(t0,it)],ht])}}var tn=[0,[0,iMr,sn(Ir(dn))],0],cn=[0,[0,fMr,e(t0,it)],tn],tt=[0,[0,xMr,_r(ft)],cn];return w(oMr,I,Zn,[0,[0,aMr,e(Q,_e[1])],tt]);case 19:var Tt=k[1],Fi=[0,[0,cMr,e(rn0,Tt[2])],0],hs=[0,[0,sMr,xr(Tt[1])],Fi];return w(vMr,I,Tt[3],hs);case 20:var Iu=k[1],Vs=function(hu){return hu[0]===0?c0(hu[1]):xr(hu[1])},Vi=[0,[0,lMr,Q(Iu[4])],0],zs=[0,[0,bMr,e(xr,Iu[3])],Vi],Ks=[0,[0,pMr,e(xr,Iu[2])],zs],en=[0,[0,mMr,e(Vs,Iu[1])],Ks];return w(_Mr,I,Iu[5],en);case 21:var ci=k[1],Ws=ci[1],c2=Ws[0]===0?c0(Ws[1]):Or(Ws[1]),B9=[0,[0,yMr,!!ci[4]],0],q9=[0,[0,dMr,Q(ci[3])],B9],U9=[0,[0,kMr,c2],[0,[0,hMr,xr(ci[2])],q9]];return w(wMr,I,ci[5],U9);case 22:var Js=k[1],s2=Js[1],H9=s2[0]===0?c0(s2[1]):Or(s2[1]),X9=[0,[0,EMr,!!Js[4]],0],Y9=[0,[0,SMr,Q(Js[3])],X9],X1=[0,[0,FMr,H9],[0,[0,gMr,xr(Js[2])],Y9]];return w(TMr,I,Js[5],X1);case 23:var si=k[1],ob=si[7],cb=si[3],sb=si[2],V9=cb[0]===0?cb[1]:ke(Rqr),z9=ob[0]===0?0:[0,ob[1]],K9=si[9],vb=_7(p(sb[2][4]),K9),W9=[0,[0,jqr,e(qr,si[8])],0],J9=[0,[0,Mqr,!1],[0,[0,Gqr,e(l,z9)],W9]],$9=[0,[0,Bqr,e(Fr,si[6])],J9],Z9=[0,[0,Uqr,!!si[4]],[0,[0,qqr,!!si[5]],$9]],lb=[0,[0,Hqr,W0(V9)],Z9],Q9=[0,[0,Xqr,Hr(sb)],lb];return w(Vqr,I,vb,[0,[0,Yqr,e(S,si[1])],Q9]);case 24:var Y1=k[1],v2=Y1[3];if(v2){var bb=v2[1][2],pb=bb[2],mb=bb[1],Tn=mb[2],jn=function(ku){return _7(ku,pb)};switch(Tn[0]){case 0:var V1=Tn[1],_b=QD(V1[2],pb),Gn=[0,[0,V1[1],_b]];break;case 1:var yb=Tn[1],r_=jn(yb[2]),Gn=[1,[0,yb[1],r_]];break;case 2:var Vc=Tn[1],e_=jn(Vc[7]),Gn=[2,[0,Vc[1],Vc[2],Vc[3],Vc[4],Vc[5],Vc[6],e_]];break;case 3:var l2=Tn[1],db=jn(l2[2]),Gn=[3,[0,l2[1],db]];break;case 4:var Gn=[4,[0,jn(Tn[1][1])]];break;case 5:var zc=Tn[1],n_=jn(zc[7]),Gn=[5,[0,zc[1],zc[2],zc[3],zc[4],zc[5],zc[6],n_]];break;case 6:var $s=Tn[1],hb=jn($s[5]),Gn=[6,[0,$s[1],$s[2],$s[3],$s[4],hb]];break;case 7:var z1=Tn[1],t_=jn(z1[4]),Gn=[7,[0,z1[1],z1[2],z1[3],t_]];break;case 8:var ks=Tn[1],u_=jn(ks[5]),Gn=[8,[0,ks[1],ks[2],ks[3],ks[4],u_]];break;case 9:var K1=Tn[1],i_=jn(K1[4]),Gn=[9,[0,K1[1],K1[2],K1[3],i_]];break;case 10:var b2=Tn[1],f_=jn(b2[2]),Gn=[10,[0,b2[1],f_]];break;case 11:var Zs=Tn[1],kb=jn(Zs[4]),Gn=[11,[0,Zs[1],Zs[2],Zs[3],kb]];break;case 12:var Qs=Tn[1],x_=jn(Qs[5]),Gn=[12,[0,Qs[1],Qs[2],Qs[3],Qs[4],x_]];break;case 13:var zi=Tn[1],Kc=jn(zi[3]),Gn=[13,[0,zi[1],zi[2],Kc]];break;case 14:var r1=Tn[1],a_=jn(r1[3]),Gn=[14,[0,r1[1],r1[2],a_]];break;case 15:var Gn=[15,[0,jn(Tn[1][1])]];break;case 16:var p2=Tn[1],m2=jn(p2[3]),Gn=[16,[0,p2[1],p2[2],m2]];break;case 17:var _2=Tn[1],o_=jn(_2[3]),Gn=[17,[0,_2[1],_2[2],o_]];break;case 18:var e1=Tn[1],c_=jn(e1[5]),Gn=[18,[0,e1[1],e1[2],e1[3],e1[4],c_]];break;case 19:var y2=Tn[1],XL=jn(y2[3]),Gn=[19,[0,y2[1],y2[2],XL]];break;case 20:var W1=Tn[1],YL=jn(W1[5]),Gn=[20,[0,W1[1],W1[2],W1[3],W1[4],YL]];break;case 21:var J1=Tn[1],VL=jn(J1[5]),Gn=[21,[0,J1[1],J1[2],J1[3],J1[4],VL]];break;case 22:var $1=Tn[1],zL=jn($1[5]),Gn=[22,[0,$1[1],$1[2],$1[3],$1[4],zL]];break;case 23:var Ti=Tn[1],KL=Ti[10],WL=jn(Ti[9]),Gn=[23,[0,Ti[1],Ti[2],Ti[3],Ti[4],Ti[5],Ti[6],Ti[7],Ti[8],WL,KL]];break;case 24:var d2=Tn[1],JL=jn(d2[4]),Gn=[24,[0,d2[1],d2[2],d2[3],JL]];break;case 25:var Z1=Tn[1],$L=jn(Z1[5]),Gn=[25,[0,Z1[1],Z1[2],Z1[3],Z1[4],$L]];break;case 26:var Q1=Tn[1],ZL=jn(Q1[5]),Gn=[26,[0,Q1[1],Q1[2],Q1[3],Q1[4],ZL]];break;case 27:var wb=Tn[1],QL=jn(wb[3]),Gn=[27,[0,wb[1],wb[2],QL]];break;case 28:var Eb=Tn[1],rR=Eb[3],eR=jn(Eb[2]),Gn=[28,[0,Eb[1],eR,rR]];break;case 29:var h2=Tn[1],nR=h2[4],tR=jn(h2[3]),Gn=[29,[0,h2[1],h2[2],tR,nR]];break;case 30:var s_=Tn[1],uR=jn(s_[2]),Gn=[30,[0,s_[1],uR]];break;case 31:var k2=Tn[1],iR=jn(k2[4]),Gn=[31,[0,k2[1],k2[2],k2[3],iR]];break;case 32:var w2=Tn[1],fR=jn(w2[4]),Gn=[32,[0,w2[1],w2[2],w2[3],fR]];break;case 33:var rv=Tn[1],xR=jn(rv[5]),Gn=[33,[0,rv[1],rv[2],rv[3],rv[4],xR]];break;case 34:var Sb=Tn[1],aR=jn(Sb[3]),Gn=[34,[0,Sb[1],Sb[2],aR]];break;case 35:var gb=Tn[1],oR=jn(gb[3]),Gn=[35,[0,gb[1],gb[2],oR]];break;default:var Fb=Tn[1],cR=jn(Fb[3]),Gn=[36,[0,Fb[1],Fb[2],cR]]}var v_=Q([0,mb[1],Gn])}else var v_=u7;var sR=[0,[0,IMr,Q(Y1[2])],[0,[0,OMr,v_],0]],vR=[0,[0,AMr,xr(Y1[1])],sR];return w(NMr,I,Y1[4],vR);case 25:var ev=k[1],Tb=ev[4],l_=ev[3];if(Tb){var Ob=Tb[1];if(Ob[0]===0)var lR=Ob[1],p_=k1(function(ku){var Oi=ku[1],k7=ku[3],Ki=ku[2],nv=Ki?yt(k7[1],Ki[1][1]):k7[1],Lb=Ki?Ki[1]:k7,tv=0,Rb=0;if(Oi)switch(Oi[1]){case 0:var jb=$c;break;case 1:var jb=es;break;default:tv=1}else tv=1;if(tv)var jb=u7;var CR=[0,[0,SWr,S(Lb)],[0,[0,EWr,jb],Rb]];return w(FWr,nv,0,[0,[0,gWr,S(k7)],CR])},lR);else var b_=Ob[1],bR=[0,[0,kWr,S(b_[2])],0],p_=[0,w(wWr,b_[1],0,bR),0];var Ib=p_}else var Ib=Tb;if(l_)var m_=l_[1],pR=[0,[0,dWr,S(m_)],0],__=[0,w(hWr,m_[1],0,pR),Ib];else var __=Ib;switch(ev[1]){case 0:var Ab=CMr;break;case 1:var Ab=PMr;break;default:var Ab=DMr}var mR=[0,[0,LMr,sn(Ab)],0],_R=[0,[0,RMr,t0(ev[2])],mR],yR=[0,[0,jMr,yu(__)],_R];return w(GMr,I,ev[5],yR);case 26:return Wr([0,I,k[1]]);case 27:var Nb=k[1],dR=[0,[0,MMr,Q(Nb[2])],0],hR=[0,[0,BMr,S(Nb[1])],dR];return w(qMr,I,Nb[3],hR);case 28:var y_=k[1],kR=[0,[0,UMr,e(xr,y_[1])],0];return w(HMr,I,y_[2],kR);case 29:var Cb=k[1],wR=[0,[0,XMr,n(i0,Cb[2])],0],ER=[0,[0,YMr,xr(Cb[1])],wR];return w(VMr,I,Cb[3],ER);case 30:var d_=k[1],SR=[0,[0,zMr,xr(d_[1])],0];return w(KMr,I,d_[2],SR);case 31:var E2=k[1],gR=[0,[0,WMr,e(W0,E2[3])],0],FR=[0,[0,JMr,e(l0,E2[2])],gR],TR=[0,[0,$Mr,W0(E2[1])],FR];return w(ZMr,I,E2[4],TR);case 32:return or([0,I,k[1]]);case 33:return Jr(0,[0,I,k[1]]);case 34:return c0([0,I,k[1]]);case 35:var Pb=k[1],OR=[0,[0,QMr,Q(Pb[2])],0],IR=[0,[0,rBr,xr(Pb[1])],OR];return w(eBr,I,Pb[3],IR);default:var Db=k[1],AR=[0,[0,nBr,Q(Db[2])],0],NR=[0,[0,tBr,xr(Db[1])],AR];return w(uBr,I,Db[3],NR)}}function i0(_){var k=_[2],I=[0,[0,mUr,n(Q,k[2])],0],U=[0,[0,_Ur,e(xr,k[1])],I];return w(yUr,_[1],k[3],U)}function l0(_){var k=_[2],I=[0,[0,dUr,W0(k[2])],0],U=[0,[0,hUr,e(Or,k[1])],I];return w(kUr,_[1],k[3],U)}function S0(_){var k=_[2],I=[0,[0,bHr,xr(k[1])],0];return w(pHr,_[1],k[2],I)}function T0(_){var k=_[2],I=[0,[0,mHr,e($r,k[2])],0],U=[0,[0,_Hr,S(k[1])],I];return w(yHr,_[1],0,U)}function rr(_){switch(_[0]){case 0:var k=_[1],I=k[2],U=I[6],Y=I[2];switch(Y[0]){case 0:var I0=U,D=0,u0=f0(Y[1]);break;case 1:var I0=U,D=0,u0=S(Y[1]);break;case 2:var I0=U,D=0,u0=_0(Y[1]);break;default:var y0=Y[1][2],D0=_7(y0[2],U),I0=D0,D=1,u0=xr(y0[1])}switch(I[1]){case 0:var Y0=kHr;break;case 1:var Y0=wHr;break;case 2:var Y0=EHr;break;default:var Y0=SHr}var J0=[0,[0,FHr,!!D],[0,[0,gHr,n(S0,I[5])],0]],fr=[0,[0,OHr,sn(Y0)],[0,[0,THr,!!I[4]],J0]],Q0=[0,[0,AHr,u0],[0,[0,IHr,Rr(I[3])],fr]];return w(NHr,k[1],I0,Q0);case 1:var F0=_[1],gr=F0[2],mr=gr[6],Cr=gr[2],sr=gr[1];switch(sr[0]){case 0:var d0=mr,Kr=0,re=f0(sr[1]);break;case 1:var d0=mr,Kr=0,re=S(sr[1]);break;case 2:var Pr=ke(BHr),d0=Pr[3],Kr=Pr[2],re=Pr[1];break;default:var K0=sr[1][2],Ur=_7(K0[2],mr),d0=Ur,Kr=1,re=xr(K0[1])}if(typeof Cr=="number")if(Cr)var xe=0,je=0;else var xe=1,je=0;else var xe=0,je=[0,Cr[1]];var ve=xe&&[0,[0,qHr,!!xe],0],Ie=[0,[0,UHr,e(Sr,gr[5])],0],Me=[0,[0,XHr,!!Kr],[0,[0,HHr,!!gr[4]],Ie]],Be=[0,[0,YHr,i(l,gr[3])],Me],fn=un([0,[0,zHr,re],[0,[0,VHr,e(xr,je)],Be]],ve);return w(KHr,F0[1],d0,fn);default:var Ke=_[1],Ae=Ke[2],xn=Ae[2];if(typeof xn=="number")if(xn)var Qe=0,yn=0;else var Qe=1,yn=0;else var Qe=0,yn=[0,xn[1]];var on=Qe&&[0,[0,CHr,!!Qe],0],Ce=[0,[0,PHr,e(Sr,Ae[5])],0],We=[0,[0,LHr,!1],[0,[0,DHr,!!Ae[4]],Ce]],rn=[0,[0,RHr,i(l,Ae[3])],We],bn=[0,[0,jHr,e(xr,yn)],rn],Cn=un([0,[0,GHr,_0(Ae[1])],bn],on);return w(MHr,Ke[1],Ae[6],Cn)}}function R0(_){var k=_[2],I=k[2],U=k[1];if(I){var Y=[0,[0,BXr,xr(I[1])],0],y0=[0,[0,qXr,Or(U)],Y];return w(UXr,_[1],0,y0)}return Or(U)}function B(_,k){var I=[0,[0,KXr,Or(k[1])],0];return w(WXr,_,k[2],I)}function Z(_){switch(_[0]){case 0:var k=_[1],I=k[2],U=I[2],Y=I[1];if(U){var y0=[0,[0,JXr,xr(U[1])],0],D0=[0,[0,$Xr,Or(Y)],y0];return w(ZXr,k[1],0,D0)}return Or(Y);case 1:var I0=_[1];return B(I0[1],I0[2]);default:return u7}}function p0(_){if(_[0]===0){var k=_[1],I=k[2];switch(I[0]){case 0:var U=xr(I[2]),Y0=0,J0=I[3],fr=0,Q0=QXr,F0=U,gr=I[1];break;case 1:var Y=I[2],y0=Rr([0,Y[1],Y[2]]),Y0=0,J0=0,fr=1,Q0=rYr,F0=y0,gr=I[1];break;case 2:var D0=I[2],I0=Rr([0,D0[1],D0[2]]),Y0=I[3],J0=0,fr=0,Q0=eYr,F0=I0,gr=I[1];break;default:var D=I[2],u0=Rr([0,D[1],D[2]]),Y0=I[3],J0=0,fr=0,Q0=nYr,F0=u0,gr=I[1]}switch(gr[0]){case 0:var Pr=Y0,K0=0,Ur=f0(gr[1]);break;case 1:var Pr=Y0,K0=0,Ur=S(gr[1]);break;case 2:var mr=ke(tYr),Pr=mr[3],K0=mr[2],Ur=mr[1];break;default:var Cr=gr[1][2],sr=_7(Cr[2],Y0),Pr=sr,K0=1,Ur=xr(Cr[1])}return w(cYr,k[1],Pr,[0,[0,oYr,Ur],[0,[0,aYr,F0],[0,[0,xYr,sn(Q0)],[0,[0,fYr,!!fr],[0,[0,iYr,!!J0],[0,[0,uYr,!!K0],0]]]]]])}var d0=_[1],Kr=d0[2],re=[0,[0,sYr,xr(Kr[1])],0];return w(vYr,d0[1],Kr[2],re)}function b0(_){if(_[0]===0){var k=_[1],I=k[2],U=I[3],Y=I[2],y0=I[1];switch(y0[0]){case 0:var D=0,u0=0,Y0=f0(y0[1]);break;case 1:var D=0,u0=0,Y0=S(y0[1]);break;default:var D0=y0[1][2],I0=xr(D0[1]),D=D0[2],u0=1,Y0=I0}if(U)var J0=U[1],fr=yt(Y[1],J0[1]),Q0=[0,[0,lYr,xr(J0)],0],F0=w(pYr,fr,0,[0,[0,bYr,Or(Y)],Q0]);else var F0=Or(Y);return w(wYr,k[1],D,[0,[0,kYr,Y0],[0,[0,hYr,F0],[0,[0,dYr,ji],[0,[0,yYr,!1],[0,[0,_Yr,!!I[4]],[0,[0,mYr,!!u0],0]]]]]])}var gr=_[1];return B(gr[1],gr[2])}function O0(_){var k=_[2],I=[0,[0,EYr,xr(k[1])],0];return w(SYr,_[1],k[2],I)}function q0(_){return _[0]===0?xr(_[1]):O0(_[1])}function er(_){switch(_[0]){case 0:return xr(_[1]);case 1:return O0(_[1]);default:return u7}}function yr(_){var k=_[2],I=[0,[0,gYr,!!k[3]],0],U=[0,[0,FYr,xr(k[2])],I],Y=[0,[0,TYr,Or(k[1])],U];return w(OYr,_[1],0,Y)}function vr(_){var k=_[2],I=k[1],U=H1([0,[0,nVr,sn(I[1])],[0,[0,eVr,sn(I[2])],0]]);return w(iVr,_[1],0,[0,[0,uVr,U],[0,[0,tVr,!!k[2]],0]])}function $0(_){var k=_[2],I=[0,[0,pVr,e(xr,k[2])],0],U=[0,[0,mVr,Or(k[1])],I];return w(_Vr,_[1],0,U)}function Sr(_){var k=_[2],I=k[1]?pY:"plus";return w(dVr,_[1],k[2],[0,[0,yVr,I],0])}function Mr(_){var k=_[2];return k0(k[2],k[1])}function Br(_){var k=_[2],I=[0,[0,HVr,g0(k[1][2])],[0,[0,UVr,!1],0]],U=[0,[0,XVr,e(S,0)],I];return w(YVr,_[1],k[2],U)}function qr(_){var k=_[2],I=[0,[0,kKr,n(jr,k[1])],0],U=p(k[2]);return w(wKr,_[1],U,I)}function jr(_){var k=_[2],I=k[1][2],U=[0,[0,EKr,e(g0,k[4])],0],Y=[0,[0,SKr,e(Sr,k[3])],U],y0=[0,[0,gKr,i(l,k[2])],Y];return w(TKr,_[1],I[2],[0,[0,FKr,sn(I[1])],y0])}function $r(_){var k=_[2],I=[0,[0,OKr,n(g0,k[1])],0],U=p(k[2]);return w(IKr,_[1],U,I)}function ne(_){var k=_[2],I=[0,[0,AKr,n(Qr,k[1])],0],U=p(k[2]);return w(NKr,_[1],U,I)}function Qr(_){if(_[0]===0)return g0(_[1]);var k=_[1],I=k[1],U=k[2][1];return V([0,I,[0,[0,Gc(0,[0,I,CKr])],0,U]])}function pe(_){if(_[0]===0){var k=_[1],I=k[2],U=I[1],Y=U[0]===0?b(U[1]):G0(U[1]),y0=[0,[0,JKr,Y],[0,[0,WKr,e(ce,I[2])],0]];return w($Kr,k[1],0,y0)}var D0=_[1],I0=D0[2],D=[0,[0,ZKr,xr(I0[1])],0];return w(QKr,D0[1],I0[2],D)}function oe(_){var k=[0,[0,VKr,s0(_[2][1])],0];return w(zKr,_[1],0,k)}function me(_){var k=_[2],I=k[1],U=_[1],Y=I?xr(I[1]):w(rWr,[0,U[1],[0,U[2][1],U[2][2]+1|0],[0,U[3][1],U[3][2]-1|0]],0,0);return w(nWr,U,p(k[2]),[0,[0,eWr,Y],0])}function ae(_){var k=_[2],I=_[1];switch(k[0]){case 0:return dr([0,I,k[1]]);case 1:return X0([0,I,k[1]]);case 2:return me([0,I,k[1]]);case 3:var U=k[1],Y=[0,[0,tWr,xr(U[1])],0];return w(uWr,I,U[2],Y);default:var y0=k[1];return w(xWr,I,0,[0,[0,fWr,sn(y0[1])],[0,[0,iWr,sn(y0[2])],0]])}}function ce(_){return _[0]===0?f0([0,_[1],_[2]]):me([0,_[1],_[2]])}function ge(_){var k=_[2],I=k[2],U=k[1],Y=S(I?I[1]:U),y0=[0,[0,_Wr,S(U)],[0,[0,mWr,Y],0]];return w(yWr,_[1],0,y0)}function H0(_){var k=_[2];if(k[1])var I=k[2],U=TWr;else var I=k[2],U=OWr;return w(U,_[1],0,[0,[0,IWr,sn(I)],0])}function Fr(_){var k=_[2],I=k[1];if(I)var U=[0,[0,AWr,xr(I[1])],0],Y=NWr;else var U=0,Y=CWr;return w(Y,_[1],k[2],U)}return[0,A,xr]}function T(E){return y(E)[1]}return[0,T,function(E){return y(E)[2]},s]}(jne);function ab(t,n,e){var i=n[e];return Bp(i)?i|0:t}function Gne(t,n){var e=qV(n,eK)?{}:n,i=M7(t),x=ab(Bv[5],e,Vre),c=ab(Bv[4],e,zre),s=ab(Bv[3],e,Kre),p=ab(Bv[2],e,Wre),y=[0,[0,ab(Bv[1],e,Jre),p,s,c,x]],T=e.tokens,E=Bp(T),h=E&&T|0,w=e.comments,G=Bp(w)?w|0:1,A=e.all_comments,S=Bp(A)?A|0:1,M=[0,0],K=h&&[0,function(b0){return M[1]=[0,b0,M[1]],0}],V=[0,y],f0=[0,K],m0=oz?oz[1]:1,k0=f0&&f0[1],g0=V&&V[1],e0=[0,g0],x0=[0,k0],l=0,c0=x0&&x0[1],t0=e0&&e0[1],a0=une([0,c0],[0,t0],l,i),w0=u(se[1],a0),_0=de(a0[1][1]),E0=[0,GL[1],0],X0=de(be(function(b0,O0){var q0=b0[2],er=b0[1];return a(GL[3],O0,er)?[0,er,q0]:[0,a(GL[4],O0,er),[0,O0,q0]]},E0,_0)[2]);if(X0&&m0)throw[0,Vee,X0[1],X0[2]];Qe0[1]=0;for(var b=nn(i)-0|0,G0=i,X=0,s0=0;;){if(s0===b)var dr=X;else{var Ar=Hu(G0,s0),ar=0;if(0<=Ar&&!(zn>>0)throw[0,wn,bo0];switch(Or){case 0:var Rr=Hu(G0,s0);break;case 1:var Rr=(Hu(G0,s0)&31)<<6|Hu(G0,s0+1|0)&63;break;case 2:var Rr=(Hu(G0,s0)&15)<<12|(Hu(G0,s0+1|0)&63)<<6|Hu(G0,s0+2|0)&63;break;default:var Rr=(Hu(G0,s0)&7)<<18|(Hu(G0,s0+1|0)&63)<<12|(Hu(G0,s0+2|0)&63)<<6|Hu(G0,s0+3|0)&63}var X=TL(X,s0,[0,Rr]),s0=xr;continue}var dr=TL(X,s0,0)}for(var Wr=yGr,Jr=de([0,6,dr]);;){var or=Wr[3],_r=Wr[2],Ir=Wr[1];if(Jr){var fe=Jr[1];if(fe===5){var v0=Jr[2];if(v0&&v0[1]===6){var P=_l(de([0,Ir,_r])),Wr=[0,Ir+2|0,0,[0,P,or]],Jr=v0[2];continue}}else if(!(6<=fe)){var L=Jr[2],Wr=[0,Ir+Te0(fe)|0,[0,Ir,_r],or],Jr=L;continue}var Q=_l(de([0,Ir,_r])),i0=Jr[2],Wr=[0,Ir+Te0(fe)|0,0,[0,Q,or]],Jr=i0;continue}var l0=_l(de(or));if(G)var T0=w0;else var S0=u(Uee[1],0),T0=a(Ze(S0,-201766268,25),S0,w0);if(S)var R0=T0;else var rr=T0[2],R0=[0,T0[1],[0,rr[1],rr[2],0]];var B=a(nn0[1],[0,l0],R0),Z=un(X0,Qe0[1]);if(B.errors=u(nn0[3],Z),h){var p0=M[1];B.tokens=yu(Tp(u(Rne[1],l0),p0))}return B}}}if(typeof A0<"u")var tn0=A0;else{var un0={};qN.flow=un0;var tn0=un0}tn0.parse=function(t,n){try{var e=Gne(t,n);return e}catch(i){return i=Et(i),i[1]===UN?u(nK,i[2]):u(nK,new Lee(sn(Te($re,Pp(i)))))}},xN(0)}(globalThis)}});Lt();var Fae=Hu0(),Tae=lae(),Oae=bae(),Iae=kae(),Aae={comments:!1,enums:!0,esproposal_decorators:!0,esproposal_export_star_as:!0,tokens:!0};function Nae(A0){let{message:j0,loc:{start:ur,end:hr}}=A0;return Fae(j0,{start:{line:ur.line,column:ur.column+1},end:{line:hr.line,column:hr.column+1}})}function Cae(A0,j0){let ur=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{parse:hr}=gae(),le=hr(Oae(A0),Aae),[Ve]=le.errors;if(Ve)throw Nae(Ve);return ur.originalText=A0,Iae(le,ur)}a70.exports={parsers:{flow:Tae(Cae)}}});return Pae();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-glimmer.js b/node_modules/prettier/parser-glimmer.js new file mode 100644 index 0000000..f15be29 --- /dev/null +++ b/node_modules/prettier/parser-glimmer.js @@ -0,0 +1,27 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.glimmer=e()}})(function(){"use strict";var it=(t,f)=>()=>(f||t((f={exports:{}}).exports,f),f.exports);var Zt=it((nr,$e)=>{var xe=Object.getOwnPropertyNames,st=(t,f)=>function(){return t&&(f=(0,t[xe(t)[0]])(t=0)),f},I=(t,f)=>function(){return f||(0,t[xe(t)[0]])((f={exports:{}}).exports,f),f.exports},F=st({""(){}}),at=I({"node_modules/lines-and-columns/build/index.cjs"(t){"use strict";F(),t.__esModule=!0,t.LinesAndColumns=void 0;var f=` +`,h="\r",d=function(){function c(o){this.length=o.length;for(var e=[0],r=0;rthis.length)return null;for(var e=0,r=this.offsets;r[e+1]<=o;)e++;var a=o-r[e];return{line:e,column:a}},c.prototype.indexForLocation=function(o){var e=o.line,r=o.column;return e<0||e>=this.offsets.length||r<0||r>this.lengthOfLine(e)?null:this.offsets[e]+r},c.prototype.lengthOfLine=function(o){var e=this.offsets[o],r=o===this.offsets.length-1?this.length:this.offsets[o+1];return r-e},c}();t.LinesAndColumns=d}}),ut=I({"src/common/parser-create-error.js"(t,f){"use strict";F();function h(d,c){let o=new SyntaxError(d+" ("+c.start.line+":"+c.start.column+")");return o.loc=c,o}f.exports=h}}),ot=I({"src/language-handlebars/loc.js"(t,f){"use strict";F();function h(c){return c.loc.start.offset}function d(c){return c.loc.end.offset}f.exports={locStart:h,locEnd:d}}}),fe=I({"node_modules/@glimmer/env/dist/commonjs/es5/index.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0});var f=t.DEBUG=!1,h=t.CI=!1}}),lt=I({"node_modules/@glimmer/util/dist/commonjs/es2017/lib/array-utils.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.emptyArray=h,t.isEmptyArray=o,t.EMPTY_NUMBER_ARRAY=t.EMPTY_STRING_ARRAY=t.EMPTY_ARRAY=void 0;var f=Object.freeze([]);t.EMPTY_ARRAY=f;function h(){return f}var d=h();t.EMPTY_STRING_ARRAY=d;var c=h();t.EMPTY_NUMBER_ARRAY=c;function o(e){return e===f}}}),Pe=I({"node_modules/@glimmer/util/dist/commonjs/es2017/lib/assert.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.debugAssert=h,t.prodAssert=d,t.deprecate=c,t.default=void 0;var f=X();function h(e,r){if(!e)throw new Error(r||"assertion failure")}function d(){}function c(e){f.LOCAL_LOGGER.warn(`DEPRECATION: ${e}`)}var o=h;t.default=o}}),ct=I({"node_modules/@glimmer/util/dist/commonjs/es2017/lib/collections.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.dict=f,t.isDict=h,t.isObject=d,t.StackImpl=void 0;function f(){return Object.create(null)}function h(o){return o!=null}function d(o){return typeof o=="function"||typeof o=="object"&&o!==null}var c=class{constructor(){let o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.current=null,this.stack=o}get size(){return this.stack.length}push(o){this.current=o,this.stack.push(o)}pop(){let o=this.stack.pop(),e=this.stack.length;return this.current=e===0?null:this.stack[e-1],o===void 0?null:o}nth(o){let e=this.stack.length;return e0&&arguments[0]!==void 0?arguments[0]:"unreachable";return new Error(i)}function p(i){throw new Error(`Exhausted ${i}`)}var n=function(){for(var i=arguments.length,l=new Array(i),b=0;b1?c-1:0),e=1;e=0}function d(l){return l>3}function c(){for(var l=arguments.length,b=new Array(l),P=0;P=-536870912}function e(l){return l&-536870913}function r(l){return l|536870912}function a(l){return~l}function p(l){return~l}function n(l){return l}function s(l){return l}function u(l){return l|=0,l<0?e(l):a(l)}function i(l){return l|=0,l>-536870913?p(l):r(l)}[1,2,3].forEach(l=>l),[1,-1].forEach(l=>i(u(l)))}}),gt=I({"node_modules/@glimmer/util/dist/commonjs/es2017/lib/template.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.unwrapHandle=f,t.unwrapTemplate=h,t.extractHandle=d,t.isOkHandle=c,t.isErrHandle=o;function f(e){if(typeof e=="number")return e;{let r=e.errors[0];throw new Error(`Compile Error: ${r.problem} @ ${r.span.start}..${r.span.end}`)}}function h(e){if(e.result==="error")throw new Error(`Compile Error: ${e.problem} @ ${e.span.start}..${e.span.end}`);return e}function d(e){return typeof e=="number"?e:e.handle}function c(e){return typeof e=="number"}function o(e){return typeof e=="number"}}}),bt=I({"node_modules/@glimmer/util/dist/commonjs/es2017/lib/weak-set.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var f=typeof WeakSet=="function"?WeakSet:class{constructor(){this._map=new WeakMap}add(d){return this._map.set(d,!0),this}delete(d){return this._map.delete(d)}has(d){return this._map.has(d)}};t.default=f}}),vt=I({"node_modules/@glimmer/util/dist/commonjs/es2017/lib/simple-cast.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.castToSimple=h,t.castToBrowser=d,t.checkNode=r;var f=me();function h(p){return o(p)||e(p),p}function d(p,n){if(p==null)return null;if(typeof document===void 0)throw new Error("Attempted to cast to a browser node in a non-browser context");if(o(p))return p;if(p.ownerDocument!==document)throw new Error("Attempted to cast to a browser node with a node that was not created from this document");return r(p,n)}function c(p,n){return new Error(`cannot cast a ${p} into ${n}`)}function o(p){return p.nodeType===9}function e(p){return p.nodeType===1}function r(p,n){let s=!1;if(p!==null)if(typeof n=="string")s=a(p,n);else if(Array.isArray(n))s=n.some(u=>a(p,u));else throw(0,f.unreachable)();if(s)return p;throw c(`SimpleElement(${p})`,n)}function a(p,n){switch(n){case"NODE":return!0;case"HTML":return p instanceof HTMLElement;case"SVG":return p instanceof SVGElement;case"ELEMENT":return p instanceof Element;default:if(n.toUpperCase()===n)throw new Error("BUG: this code is missing handling for a generic node type");return p instanceof Element&&p.tagName.toLowerCase()===n}}}}),yt=I({"node_modules/@glimmer/util/dist/commonjs/es2017/lib/present.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.isPresent=f,t.ifPresent=h,t.toPresentOption=d,t.assertPresent=c,t.mapPresent=o;function f(e){return e.length>0}function h(e,r,a){return f(e)?r(e):a()}function d(e){return f(e)?e:null}function c(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"unexpected empty list";if(!f(e))throw new Error(r)}function o(e,r){if(e===null)return null;let a=[];for(let p of e)a.push(r(p));return a}}}),At=I({"node_modules/@glimmer/util/dist/commonjs/es2017/lib/untouchable-this.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.default=d;var f=fe(),h=me();function d(c){let o=null;if(f.DEBUG&&h.HAS_NATIVE_PROXY){let e=r=>{throw new Error(`You accessed \`this.${String(r)}\` from a function passed to the ${c}, but the function itself was not bound to a valid \`this\` context. Consider updating to use a bound function (for instance, use an arrow function, \`() => {}\`).`)};o=new Proxy({},{get(r,a){e(a)},set(r,a){return e(a),!1},has(r,a){return e(a),!1}})}return o}}}),Et=I({"node_modules/@glimmer/util/dist/commonjs/es2017/lib/debug-to-string.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var f=fe(),h;if(f.DEBUG){let c=r=>{let a=r.name;if(a===void 0){let p=Function.prototype.toString.call(r).match(/function (\w+)\s*\(/);a=p&&p[1]||""}return a.replace(/^bound /,"")},o=r=>{let a,p;return r.constructor&&typeof r.constructor=="function"&&(p=c(r.constructor)),"toString"in r&&r.toString!==Object.prototype.toString&&r.toString!==Function.prototype.toString&&(a=r.toString()),a&&a.match(/<.*:ember\d+>/)&&p&&p[0]!=="_"&&p.length>2&&p!=="Class"?a.replace(/<.*:/,`<${p}:`):a||p},e=r=>String(r);h=r=>typeof r=="function"?c(r)||"(unknown function)":typeof r=="object"&&r!==null?o(r)||"(unknown object)":e(r)}var d=h;t.default=d}}),_t=I({"node_modules/@glimmer/util/dist/commonjs/es2017/lib/debug-steps.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.logStep=t.verifySteps=t.endTestSteps=t.beginTestSteps=void 0;var f=d(Pe()),h=me();function d(a){return a&&a.__esModule?a:{default:a}}var c;t.beginTestSteps=c;var o;t.endTestSteps=o;var e;t.verifySteps=e;var r;t.logStep=r}}),X=I({"node_modules/@glimmer/util/dist/commonjs/es2017/index.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0});var f={LOCAL_LOGGER:!0,LOGGER:!0,assertNever:!0,assert:!0,deprecate:!0,dict:!0,isDict:!0,isObject:!0,Stack:!0,isSerializationFirstNode:!0,SERIALIZATION_FIRST_NODE_STRING:!0,assign:!0,fillNulls:!0,values:!0,_WeakSet:!0,castToSimple:!0,castToBrowser:!0,checkNode:!0,intern:!0,buildUntouchableThis:!0,debugToString:!0,beginTestSteps:!0,endTestSteps:!0,logStep:!0,verifySteps:!0};t.assertNever=x,Object.defineProperty(t,"assert",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(t,"deprecate",{enumerable:!0,get:function(){return d.deprecate}}),Object.defineProperty(t,"dict",{enumerable:!0,get:function(){return c.dict}}),Object.defineProperty(t,"isDict",{enumerable:!0,get:function(){return c.isDict}}),Object.defineProperty(t,"isObject",{enumerable:!0,get:function(){return c.isObject}}),Object.defineProperty(t,"Stack",{enumerable:!0,get:function(){return c.StackImpl}}),Object.defineProperty(t,"isSerializationFirstNode",{enumerable:!0,get:function(){return e.isSerializationFirstNode}}),Object.defineProperty(t,"SERIALIZATION_FIRST_NODE_STRING",{enumerable:!0,get:function(){return e.SERIALIZATION_FIRST_NODE_STRING}}),Object.defineProperty(t,"assign",{enumerable:!0,get:function(){return r.assign}}),Object.defineProperty(t,"fillNulls",{enumerable:!0,get:function(){return r.fillNulls}}),Object.defineProperty(t,"values",{enumerable:!0,get:function(){return r.values}}),Object.defineProperty(t,"_WeakSet",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"castToSimple",{enumerable:!0,get:function(){return i.castToSimple}}),Object.defineProperty(t,"castToBrowser",{enumerable:!0,get:function(){return i.castToBrowser}}),Object.defineProperty(t,"checkNode",{enumerable:!0,get:function(){return i.checkNode}}),Object.defineProperty(t,"intern",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"buildUntouchableThis",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"debugToString",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"beginTestSteps",{enumerable:!0,get:function(){return v.beginTestSteps}}),Object.defineProperty(t,"endTestSteps",{enumerable:!0,get:function(){return v.endTestSteps}}),Object.defineProperty(t,"logStep",{enumerable:!0,get:function(){return v.logStep}}),Object.defineProperty(t,"verifySteps",{enumerable:!0,get:function(){return v.verifySteps}}),t.LOGGER=t.LOCAL_LOGGER=void 0;var h=lt();Object.keys(h).forEach(function(w){w==="default"||w==="__esModule"||Object.prototype.hasOwnProperty.call(f,w)||Object.defineProperty(t,w,{enumerable:!0,get:function(){return h[w]}})});var d=g(Pe()),c=ct(),o=ht();Object.keys(o).forEach(function(w){w==="default"||w==="__esModule"||Object.prototype.hasOwnProperty.call(f,w)||Object.defineProperty(t,w,{enumerable:!0,get:function(){return o[w]}})});var e=dt(),r=pt(),a=me();Object.keys(a).forEach(function(w){w==="default"||w==="__esModule"||Object.prototype.hasOwnProperty.call(f,w)||Object.defineProperty(t,w,{enumerable:!0,get:function(){return a[w]}})});var p=ft();Object.keys(p).forEach(function(w){w==="default"||w==="__esModule"||Object.prototype.hasOwnProperty.call(f,w)||Object.defineProperty(t,w,{enumerable:!0,get:function(){return p[w]}})});var n=mt();Object.keys(n).forEach(function(w){w==="default"||w==="__esModule"||Object.prototype.hasOwnProperty.call(f,w)||Object.defineProperty(t,w,{enumerable:!0,get:function(){return n[w]}})});var s=gt();Object.keys(s).forEach(function(w){w==="default"||w==="__esModule"||Object.prototype.hasOwnProperty.call(f,w)||Object.defineProperty(t,w,{enumerable:!0,get:function(){return s[w]}})});var u=_(bt()),i=vt(),l=yt();Object.keys(l).forEach(function(w){w==="default"||w==="__esModule"||Object.prototype.hasOwnProperty.call(f,w)||Object.defineProperty(t,w,{enumerable:!0,get:function(){return l[w]}})});var b=_(je()),P=_(At()),E=_(Et()),v=_t();function _(w){return w&&w.__esModule?w:{default:w}}function y(){if(typeof WeakMap!="function")return null;var w=new WeakMap;return y=function(){return w},w}function g(w){if(w&&w.__esModule)return w;if(w===null||typeof w!="object"&&typeof w!="function")return{default:w};var H=y();if(H&&H.has(w))return H.get(w);var m={},C=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var S in w)if(Object.prototype.hasOwnProperty.call(w,S)){var R=C?Object.getOwnPropertyDescriptor(w,S):null;R&&(R.get||R.set)?Object.defineProperty(m,S,R):m[S]=w[S]}return m.default=w,H&&H.set(w,m),m}var L=console;t.LOCAL_LOGGER=L;var j=console;t.LOGGER=j;function x(w){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"unexpected unreachable branch";throw j.log("unreachable",w),j.log(`${H} :: ${JSON.stringify(w)} (${w})`),new Error("code reached unreachable")}}}),ge=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/source/location.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.isLocatedWithPositionsArray=a,t.isLocatedWithPositions=p,t.BROKEN_LOCATION=t.NON_EXISTENT_LOCATION=t.TEMPORARY_LOCATION=t.SYNTHETIC=t.SYNTHETIC_LOCATION=t.UNKNOWN_POSITION=void 0;var f=X(),h=Object.freeze({line:1,column:0});t.UNKNOWN_POSITION=h;var d=Object.freeze({source:"(synthetic)",start:h,end:h});t.SYNTHETIC_LOCATION=d;var c=d;t.SYNTHETIC=c;var o=Object.freeze({source:"(temporary)",start:h,end:h});t.TEMPORARY_LOCATION=o;var e=Object.freeze({source:"(nonexistent)",start:h,end:h});t.NON_EXISTENT_LOCATION=e;var r=Object.freeze({source:"(broken)",start:h,end:h});t.BROKEN_LOCATION=r;function a(n){return(0,f.isPresent)(n)&&n.every(p)}function p(n){return n.loc!==void 0}}}),le=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/source/slice.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.SourceSlice=void 0;var f=ue(),h=class{constructor(d){this.loc=d.loc,this.chars=d.chars}static synthetic(d){let c=f.SourceSpan.synthetic(d);return new h({loc:c,chars:d})}static load(d,c){return new h({loc:f.SourceSpan.load(d,c[1]),chars:c[0]})}getString(){return this.chars}serialize(){return[this.chars,this.loc.serialize()]}};t.SourceSlice=h}}),Me=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/source/loc/match.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.match=e,t.IsInvisible=t.MatchAny=void 0;var f=X(),h="MATCH_ANY";t.MatchAny=h;var d="IS_INVISIBLE";t.IsInvisible=d;var c=class{constructor(p){this._whens=p}first(p){for(let n of this._whens){let s=n.match(p);if((0,f.isPresent)(s))return s[0]}return null}},o=class{constructor(){this._map=new Map}get(p,n){let s=this._map.get(p);return s||(s=n(),this._map.set(p,s),s)}add(p,n){this._map.set(p,n)}match(p){let n=a(p),s=[],u=this._map.get(n),i=this._map.get(h);return u&&s.push(u),i&&s.push(i),s}};function e(p){return p(new r).check()}var r=class{constructor(){this._whens=new o}check(){return(p,n)=>this.matchFor(p.kind,n.kind)(p,n)}matchFor(p,n){let s=this._whens.match(p);return new c(s).first(n)}when(p,n,s){return this._whens.get(p,()=>new o).add(n,s),this}};function a(p){switch(p){case"Broken":case"InternalsSynthetic":case"NonExistent":return d;default:return p}}}}),He=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/source/loc/offset.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.InvisiblePosition=t.HbsPosition=t.CharPosition=t.SourceOffset=t.BROKEN=void 0;var f=ge(),h=Me(),d=Ve(),c="BROKEN";t.BROKEN=c;var o=class{constructor(n){this.data=n}static forHbsPos(n,s){return new r(n,s,null).wrap()}static broken(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:f.UNKNOWN_POSITION;return new a("Broken",n).wrap()}get offset(){let n=this.data.toCharPos();return n===null?null:n.offset}eql(n){return p(this.data,n.data)}until(n){return(0,d.span)(this.data,n.data)}move(n){let s=this.data.toCharPos();if(s===null)return o.broken();{let u=s.offset+n;return s.source.check(u)?new e(s.source,u).wrap():o.broken()}}collapsed(){return(0,d.span)(this.data,this.data)}toJSON(){return this.data.toJSON()}};t.SourceOffset=o;var e=class{constructor(n,s){this.source=n,this.charPos=s,this.kind="CharPosition",this._locPos=null}toCharPos(){return this}toJSON(){let n=this.toHbsPos();return n===null?f.UNKNOWN_POSITION:n.toJSON()}wrap(){return new o(this)}get offset(){return this.charPos}toHbsPos(){let n=this._locPos;if(n===null){let s=this.source.hbsPosFor(this.charPos);s===null?this._locPos=n=c:this._locPos=n=new r(this.source,s,this.charPos)}return n===c?null:n}};t.CharPosition=e;var r=class{constructor(n,s){let u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;this.source=n,this.hbsPos=s,this.kind="HbsPosition",this._charPos=u===null?null:new e(n,u)}toCharPos(){let n=this._charPos;if(n===null){let s=this.source.charPosFor(this.hbsPos);s===null?this._charPos=n=c:this._charPos=n=new e(this.source,s)}return n===c?null:n}toJSON(){return this.hbsPos}wrap(){return new o(this)}toHbsPos(){return this}};t.HbsPosition=r;var a=class{constructor(n,s){this.kind=n,this.pos=s}toCharPos(){return null}toJSON(){return this.pos}wrap(){return new o(this)}get offset(){return null}};t.InvisiblePosition=a;var p=(0,h.match)(n=>n.when("HbsPosition","HbsPosition",(s,u)=>{let{hbsPos:i}=s,{hbsPos:l}=u;return i.column===l.column&&i.line===l.line}).when("CharPosition","CharPosition",(s,u)=>{let{charPos:i}=s,{charPos:l}=u;return i===l}).when("CharPosition","HbsPosition",(s,u)=>{let{offset:i}=s;var l;return i===((l=u.toCharPos())===null||l===void 0?void 0:l.offset)}).when("HbsPosition","CharPosition",(s,u)=>{let{offset:i}=u;var l;return((l=s.toCharPos())===null||l===void 0?void 0:l.offset)===i}).when(h.MatchAny,h.MatchAny,()=>!1))}}),Ve=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/source/loc/span.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.span=t.HbsSpan=t.SourceSpan=void 0;var f=fe(),h=X(),d=ge(),c=le(),o=Me(),e=He(),r=class{constructor(u){this.data=u,this.isInvisible=u.kind!=="CharPosition"&&u.kind!=="HbsPosition"}static get NON_EXISTENT(){return new n("NonExistent",d.NON_EXISTENT_LOCATION).wrap()}static load(u,i){if(typeof i=="number")return r.forCharPositions(u,i,i);if(typeof i=="string")return r.synthetic(i);if(Array.isArray(i))return r.forCharPositions(u,i[0],i[1]);if(i==="NonExistent")return r.NON_EXISTENT;if(i==="Broken")return r.broken(d.BROKEN_LOCATION);(0,h.assertNever)(i)}static forHbsLoc(u,i){let l=new e.HbsPosition(u,i.start),b=new e.HbsPosition(u,i.end);return new p(u,{start:l,end:b},i).wrap()}static forCharPositions(u,i,l){let b=new e.CharPosition(u,i),P=new e.CharPosition(u,l);return new a(u,{start:b,end:P}).wrap()}static synthetic(u){return new n("InternalsSynthetic",d.NON_EXISTENT_LOCATION,u).wrap()}static broken(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:d.BROKEN_LOCATION;return new n("Broken",u).wrap()}getStart(){return this.data.getStart().wrap()}getEnd(){return this.data.getEnd().wrap()}get loc(){let u=this.data.toHbsSpan();return u===null?d.BROKEN_LOCATION:u.toHbsLoc()}get module(){return this.data.getModule()}get startPosition(){return this.loc.start}get endPosition(){return this.loc.end}toJSON(){return this.loc}withStart(u){return s(u.data,this.data.getEnd())}withEnd(u){return s(this.data.getStart(),u.data)}asString(){return this.data.asString()}toSlice(u){let i=this.data.asString();return f.DEBUG&&u!==void 0&&i!==u&&console.warn(`unexpectedly found ${JSON.stringify(i)} when slicing source, but expected ${JSON.stringify(u)}`),new c.SourceSlice({loc:this,chars:u||i})}get start(){return this.loc.start}set start(u){this.data.locDidUpdate({start:u})}get end(){return this.loc.end}set end(u){this.data.locDidUpdate({end:u})}get source(){return this.module}collapse(u){switch(u){case"start":return this.getStart().collapsed();case"end":return this.getEnd().collapsed()}}extend(u){return s(this.data.getStart(),u.data.getEnd())}serialize(){return this.data.serialize()}slice(u){let{skipStart:i=0,skipEnd:l=0}=u;return s(this.getStart().move(i).data,this.getEnd().move(-l).data)}sliceStartChars(u){let{skipStart:i=0,chars:l}=u;return s(this.getStart().move(i).data,this.getStart().move(i+l).data)}sliceEndChars(u){let{skipEnd:i=0,chars:l}=u;return s(this.getEnd().move(i-l).data,this.getStart().move(-i).data)}};t.SourceSpan=r;var a=class{constructor(u,i){this.source=u,this.charPositions=i,this.kind="CharPosition",this._locPosSpan=null}wrap(){return new r(this)}asString(){return this.source.slice(this.charPositions.start.charPos,this.charPositions.end.charPos)}getModule(){return this.source.module}getStart(){return this.charPositions.start}getEnd(){return this.charPositions.end}locDidUpdate(){}toHbsSpan(){let u=this._locPosSpan;if(u===null){let i=this.charPositions.start.toHbsPos(),l=this.charPositions.end.toHbsPos();i===null||l===null?u=this._locPosSpan=e.BROKEN:u=this._locPosSpan=new p(this.source,{start:i,end:l})}return u===e.BROKEN?null:u}serialize(){let{start:{charPos:u},end:{charPos:i}}=this.charPositions;return u===i?u:[u,i]}toCharPosSpan(){return this}},p=class{constructor(u,i){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;this.source=u,this.hbsPositions=i,this.kind="HbsPosition",this._charPosSpan=null,this._providedHbsLoc=l}serialize(){let u=this.toCharPosSpan();return u===null?"Broken":u.wrap().serialize()}wrap(){return new r(this)}updateProvided(u,i){this._providedHbsLoc&&(this._providedHbsLoc[i]=u),this._charPosSpan=null,this._providedHbsLoc={start:u,end:u}}locDidUpdate(u){let{start:i,end:l}=u;i!==void 0&&(this.updateProvided(i,"start"),this.hbsPositions.start=new e.HbsPosition(this.source,i,null)),l!==void 0&&(this.updateProvided(l,"end"),this.hbsPositions.end=new e.HbsPosition(this.source,l,null))}asString(){let u=this.toCharPosSpan();return u===null?"":u.asString()}getModule(){return this.source.module}getStart(){return this.hbsPositions.start}getEnd(){return this.hbsPositions.end}toHbsLoc(){return{start:this.hbsPositions.start.hbsPos,end:this.hbsPositions.end.hbsPos}}toHbsSpan(){return this}toCharPosSpan(){let u=this._charPosSpan;if(u===null){let i=this.hbsPositions.start.toCharPos(),l=this.hbsPositions.end.toCharPos();if(i&&l)u=this._charPosSpan=new a(this.source,{start:i,end:l});else return u=this._charPosSpan=e.BROKEN,null}return u===e.BROKEN?null:u}};t.HbsSpan=p;var n=class{constructor(u,i){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;this.kind=u,this.loc=i,this.string=l}serialize(){switch(this.kind){case"Broken":case"NonExistent":return this.kind;case"InternalsSynthetic":return this.string||""}}wrap(){return new r(this)}asString(){return this.string||""}locDidUpdate(u){let{start:i,end:l}=u;i!==void 0&&(this.loc.start=i),l!==void 0&&(this.loc.end=l)}getModule(){return"an unknown module"}getStart(){return new e.InvisiblePosition(this.kind,this.loc.start)}getEnd(){return new e.InvisiblePosition(this.kind,this.loc.end)}toCharPosSpan(){return this}toHbsSpan(){return null}toHbsLoc(){return d.BROKEN_LOCATION}},s=(0,o.match)(u=>u.when("HbsPosition","HbsPosition",(i,l)=>new p(i.source,{start:i,end:l}).wrap()).when("CharPosition","CharPosition",(i,l)=>new a(i.source,{start:i,end:l}).wrap()).when("CharPosition","HbsPosition",(i,l)=>{let b=l.toCharPos();return b===null?new n("Broken",d.BROKEN_LOCATION).wrap():s(i,b)}).when("HbsPosition","CharPosition",(i,l)=>{let b=i.toCharPos();return b===null?new n("Broken",d.BROKEN_LOCATION).wrap():s(b,l)}).when(o.IsInvisible,o.MatchAny,i=>new n(i.kind,d.BROKEN_LOCATION).wrap()).when(o.MatchAny,o.IsInvisible,(i,l)=>new n(l.kind,d.BROKEN_LOCATION).wrap()));t.span=s}}),ue=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/source/span.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"SourceSpan",{enumerable:!0,get:function(){return f.SourceSpan}}),Object.defineProperty(t,"SourceOffset",{enumerable:!0,get:function(){return h.SourceOffset}});var f=Ve(),h=He()}}),De=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/source/source.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.Source=void 0;var f=fe(),h=X(),d=ue(),c=class{constructor(o){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"an unknown module";this.source=o,this.module=e}check(o){return o>=0&&o<=this.source.length}slice(o,e){return this.source.slice(o,e)}offsetFor(o,e){return d.SourceOffset.forHbsPos(this,{line:o,column:e})}spanFor(o){let{start:e,end:r}=o;return d.SourceSpan.forHbsLoc(this,{start:{line:e.line,column:e.column},end:{line:r.line,column:r.column}})}hbsPosFor(o){let e=0,r=0;if(o>this.source.length)return null;for(;;){let a=this.source.indexOf(` +`,r);if(o<=a||a===-1)return{line:e+1,column:o-r};e+=1,r=a+1}}charPosFor(o){let{line:e,column:r}=o,p=this.source.length,n=0,s=0;for(;;){if(s>=p)return p;let u=this.source.indexOf(` +`,s);if(u===-1&&(u=this.source.length),n===e-1){if(s+r>u)return u;if(f.DEBUG){let i=this.hbsPosFor(s+r)}return s+r}else{if(u===-1)return 0;n+=1,s=u+1}}}};t.Source=c}}),we=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v1/legacy-interop.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.PathExpressionImplV1=void 0;var f=h(ke());function h(c){return c&&c.__esModule?c:{default:c}}var d=class{constructor(c,o,e,r){this.original=c,this.loc=r,this.type="PathExpression",this.this=!1,this.data=!1,this._head=void 0;let a=e.slice();o.type==="ThisHead"?this.this=!0:o.type==="AtHead"?(this.data=!0,a.unshift(o.name.slice(1))):a.unshift(o.name),this.parts=a}get head(){if(this._head)return this._head;let c;this.this?c="this":this.data?c=`@${this.parts[0]}`:c=this.parts[0];let o=this.loc.collapse("start").sliceStartChars({chars:c.length}).loc;return this._head=f.default.head(c,o)}get tail(){return this.this?this.parts:this.parts.slice(1)}};t.PathExpressionImplV1=d}}),ke=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v1/public-builders.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var f=X(),h=ge(),d=De(),c=ue(),o=we(),e;function r(){return e||(e=new d.Source("","(synthetic)")),e}function a(T,N,k,B,O,q){return typeof T=="string"&&(T=m(T)),{type:"MustacheStatement",path:T,params:N||[],hash:k||S([]),escaped:!B,trusting:!!B,loc:U(O||null),strip:q||{open:!1,close:!1}}}function p(T,N,k,B,O,q,z,A,Q){let D,$;return B.type==="Template"?D=(0,f.assign)({},B,{type:"Block"}):D=B,O!=null&&O.type==="Template"?$=(0,f.assign)({},O,{type:"Block"}):$=O,{type:"BlockStatement",path:m(T),params:N||[],hash:k||S([]),program:D||null,inverse:$||null,loc:U(q||null),openStrip:z||{open:!1,close:!1},inverseStrip:A||{open:!1,close:!1},closeStrip:Q||{open:!1,close:!1}}}function n(T,N,k,B){return{type:"ElementModifierStatement",path:m(T),params:N||[],hash:k||S([]),loc:U(B||null)}}function s(T,N,k,B,O){return{type:"PartialStatement",name:T,params:N||[],hash:k||S([]),indent:B||"",strip:{open:!1,close:!1},loc:U(O||null)}}function u(T,N){return{type:"CommentStatement",value:T,loc:U(N||null)}}function i(T,N){return{type:"MustacheCommentStatement",value:T,loc:U(N||null)}}function l(T,N){if(!(0,f.isPresent)(T))throw new Error("b.concat requires at least one part");return{type:"ConcatStatement",parts:T||[],loc:U(N||null)}}function b(T){let N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{attrs:k,blockParams:B,modifiers:O,comments:q,children:z,loc:A}=N,Q,D=!1;return typeof T=="object"?(D=T.selfClosing,Q=T.name):T.slice(-1)==="/"?(Q=T.slice(0,-1),D=!0):Q=T,{type:"ElementNode",tag:Q,selfClosing:D,attributes:k||[],blockParams:B||[],modifiers:O||[],comments:q||[],children:z||[],loc:U(A||null)}}function P(T,N,k){return{type:"AttrNode",name:T,value:N,loc:U(k||null)}}function E(T,N){return{type:"TextNode",chars:T||"",loc:U(N||null)}}function v(T,N,k,B){return{type:"SubExpression",path:m(T),params:N||[],hash:k||S([]),loc:U(B||null)}}function _(T){switch(T.type){case"AtHead":return{original:T.name,parts:[T.name]};case"ThisHead":return{original:"this",parts:[]};case"VarHead":return{original:T.name,parts:[T.name]}}}function y(T,N){let[k,...B]=T.split("."),O;return k==="this"?O={type:"ThisHead",loc:U(N||null)}:k[0]==="@"?O={type:"AtHead",name:k,loc:U(N||null)}:O={type:"VarHead",name:k,loc:U(N||null)},{head:O,tail:B}}function g(T){return{type:"ThisHead",loc:U(T||null)}}function L(T,N){return{type:"AtHead",name:T,loc:U(N||null)}}function j(T,N){return{type:"VarHead",name:T,loc:U(N||null)}}function x(T,N){return T[0]==="@"?L(T,N):T==="this"?g(N):j(T,N)}function w(T,N){return{type:"NamedBlockName",name:T,loc:U(N||null)}}function H(T,N,k){let{original:B,parts:O}=_(T),q=[...O,...N],z=[...B,...q].join(".");return new o.PathExpressionImplV1(z,T,N,U(k||null))}function m(T,N){if(typeof T!="string"){if("type"in T)return T;{let{head:O,tail:q}=y(T.head,c.SourceSpan.broken()),{original:z}=_(O);return new o.PathExpressionImplV1([z,...q].join("."),O,q,U(N||null))}}let{head:k,tail:B}=y(T,c.SourceSpan.broken());return new o.PathExpressionImplV1(T,k,B,U(N||null))}function C(T,N,k){return{type:T,value:N,original:N,loc:U(k||null)}}function S(T,N){return{type:"Hash",pairs:T||[],loc:U(N||null)}}function R(T,N,k){return{type:"HashPair",key:T,value:N,loc:U(k||null)}}function M(T,N,k){return{type:"Template",body:T||[],blockParams:N||[],loc:U(k||null)}}function V(T,N){let k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,B=arguments.length>3?arguments[3]:void 0;return{type:"Block",body:T||[],blockParams:N||[],chained:k,loc:U(B||null)}}function G(T,N,k){return{type:"Template",body:T||[],blockParams:N||[],loc:U(k||null)}}function K(T,N){return{line:T,column:N}}function U(){for(var T=arguments.length,N=new Array(T),k=0;k1&&arguments[1]!==void 0?arguments[1]:!1;this.ambiguity=e,this.isAngleBracket=r}static namespaced(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return new d({namespaces:[e],fallback:!1},r)}static fallback(){return new d({namespaces:[],fallback:!0})}static append(e){let{invoke:r}=e;return new d({namespaces:["Component","Helper"],fallback:!r})}static trustingAppend(e){let{invoke:r}=e;return new d({namespaces:["Helper"],fallback:!r})}static attr(){return new d({namespaces:["Helper"],fallback:!0})}resolution(){if(this.ambiguity.namespaces.length===0)return 31;if(this.ambiguity.namespaces.length===1){if(this.ambiguity.fallback)return 36;switch(this.ambiguity.namespaces[0]){case"Helper":return 37;case"Modifier":return 38;case"Component":return 39}}else return this.ambiguity.fallback?34:35}serialize(){return this.ambiguity.namespaces.length===0?"Loose":this.ambiguity.namespaces.length===1?this.ambiguity.fallback?["ambiguous","Attr"]:["ns",this.ambiguity.namespaces[0]]:this.ambiguity.fallback?["ambiguous","Append"]:["ambiguous","Invoke"]}};t.LooseModeResolution=d;var c=d.fallback();t.ARGUMENT_RESOLUTION=c;function o(e){if(typeof e=="string")switch(e){case"Loose":return d.fallback();case"Strict":return h}switch(e[0]){case"ambiguous":switch(e[1]){case"Append":return d.append({invoke:!1});case"Attr":return d.attr();case"Invoke":return d.append({invoke:!0})}case"ns":return d.namespaced(e[1])}}}}),ne=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/objects/node.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.node=h;var f=X();function h(d){if(d!==void 0){let c=d;return{fields(){return class{constructor(o){this.type=c,(0,f.assign)(this,o)}}}}}else return{fields(){return class{constructor(c){(0,f.assign)(this,c)}}}}}}}),be=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/objects/args.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.NamedArgument=t.NamedArguments=t.PositionalArguments=t.Args=void 0;var f=ne(),h=class extends(0,f.node)().fields(){static empty(e){return new h({loc:e,positional:d.empty(e),named:c.empty(e)})}static named(e){return new h({loc:e.loc,positional:d.empty(e.loc.collapse("end")),named:e})}nth(e){return this.positional.nth(e)}get(e){return this.named.get(e)}isEmpty(){return this.positional.isEmpty()&&this.named.isEmpty()}};t.Args=h;var d=class extends(0,f.node)().fields(){static empty(e){return new d({loc:e,exprs:[]})}get size(){return this.exprs.length}nth(e){return this.exprs[e]||null}isEmpty(){return this.exprs.length===0}};t.PositionalArguments=d;var c=class extends(0,f.node)().fields(){static empty(e){return new c({loc:e,entries:[]})}get size(){return this.entries.length}get(e){let r=this.entries.filter(a=>a.name.chars===e)[0];return r?r.value:null}isEmpty(){return this.entries.length===0}};t.NamedArguments=c;var o=class{constructor(e){this.loc=e.name.loc.extend(e.value.loc),this.name=e.name,this.value=e.value}};t.NamedArgument=o}}),Dt=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/objects/attr-block.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.ElementModifier=t.ComponentArg=t.SplatAttr=t.HtmlAttr=void 0;var f=be(),h=ne(),d=class extends(0,h.node)("HtmlAttr").fields(){};t.HtmlAttr=d;var c=class extends(0,h.node)("SplatAttr").fields(){};t.SplatAttr=c;var o=class extends(0,h.node)().fields(){toNamedArgument(){return new f.NamedArgument({name:this.name,value:this.value})}};t.ComponentArg=o;var e=class extends(0,h.node)("ElementModifier").fields(){};t.ElementModifier=e}}),wt=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/objects/base.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0})}}),ce=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/source/span-list.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.loc=d,t.hasSpan=c,t.maybeLoc=o,t.SpanList=void 0;var f=ue(),h=class{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this._span=e}static range(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:f.SourceSpan.NON_EXISTENT;return new h(e.map(d)).getRangeOffset(r)}add(e){this._span.push(e)}getRangeOffset(e){if(this._span.length===0)return e;{let r=this._span[0],a=this._span[this._span.length-1];return r.extend(a)}}};t.SpanList=h;function d(e){if(Array.isArray(e)){let r=e[0],a=e[e.length-1];return d(r).extend(d(a))}else return e instanceof f.SourceSpan?e:e.loc}function c(e){return!(Array.isArray(e)&&e.length===0)}function o(e,r){return c(e)?d(e):r}}}),kt=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/objects/content.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.SimpleElement=t.InvokeComponent=t.InvokeBlock=t.AppendContent=t.HtmlComment=t.HtmlText=t.GlimmerComment=void 0;var f=ce(),h=be(),d=ne(),c=class extends(0,d.node)("GlimmerComment").fields(){};t.GlimmerComment=c;var o=class extends(0,d.node)("HtmlText").fields(){};t.HtmlText=o;var e=class extends(0,d.node)("HtmlComment").fields(){};t.HtmlComment=e;var r=class extends(0,d.node)("AppendContent").fields(){get callee(){return this.value.type==="Call"?this.value.callee:this.value}get args(){return this.value.type==="Call"?this.value.args:h.Args.empty(this.value.loc.collapse("end"))}};t.AppendContent=r;var a=class extends(0,d.node)("InvokeBlock").fields(){};t.InvokeBlock=a;var p=class extends(0,d.node)("InvokeComponent").fields(){get args(){let s=this.componentArgs.map(u=>u.toNamedArgument());return h.Args.named(new h.NamedArguments({loc:f.SpanList.range(s,this.callee.loc.collapse("end")),entries:s}))}};t.InvokeComponent=p;var n=class extends(0,d.node)("SimpleElement").fields(){get args(){let s=this.componentArgs.map(u=>u.toNamedArgument());return h.Args.named(new h.NamedArguments({loc:f.SpanList.range(s,this.tag.loc.collapse("end")),entries:s}))}};t.SimpleElement=n}}),Tt=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/objects/expr.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.isLiteral=c,t.InterpolateExpression=t.DeprecatedCallExpression=t.CallExpression=t.PathExpression=t.LiteralExpression=void 0;var f=le(),h=ne(),d=class extends(0,h.node)("Literal").fields(){toSlice(){return new f.SourceSlice({loc:this.loc,chars:this.value})}};t.LiteralExpression=d;function c(p,n){return p.type==="Literal"?n===void 0?!0:n==="null"?p.value===null:typeof p.value===n:!1}var o=class extends(0,h.node)("Path").fields(){};t.PathExpression=o;var e=class extends(0,h.node)("Call").fields(){};t.CallExpression=e;var r=class extends(0,h.node)("DeprecatedCall").fields(){};t.DeprecatedCallExpression=r;var a=class extends(0,h.node)("Interpolate").fields(){};t.InterpolateExpression=a}}),Bt=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/objects/refs.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.FreeVarReference=t.LocalVarReference=t.ArgReference=t.ThisReference=void 0;var f=ne(),h=class extends(0,f.node)("This").fields(){};t.ThisReference=h;var d=class extends(0,f.node)("Arg").fields(){};t.ArgReference=d;var c=class extends(0,f.node)("Local").fields(){};t.LocalVarReference=c;var o=class extends(0,f.node)("Free").fields(){};t.FreeVarReference=o}}),Ot=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/objects/internal-node.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.NamedBlock=t.NamedBlocks=t.Block=t.Template=void 0;var f=ce(),h=be(),d=ne(),c=class extends(0,d.node)().fields(){};t.Template=c;var o=class extends(0,d.node)().fields(){};t.Block=o;var e=class extends(0,d.node)().fields(){get(a){return this.blocks.filter(p=>p.name.chars===a)[0]||null}};t.NamedBlocks=e;var r=class extends(0,d.node)().fields(){get args(){let a=this.componentArgs.map(p=>p.toNamedArgument());return h.Args.named(new h.NamedArguments({loc:f.SpanList.range(a,this.name.loc.collapse("end")),entries:a}))}};t.NamedBlock=r}}),ve=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/api.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0});var f=Pt();Object.keys(f).forEach(function(n){n==="default"||n==="__esModule"||Object.defineProperty(t,n,{enumerable:!0,get:function(){return f[n]}})});var h=ne();Object.keys(h).forEach(function(n){n==="default"||n==="__esModule"||Object.defineProperty(t,n,{enumerable:!0,get:function(){return h[n]}})});var d=be();Object.keys(d).forEach(function(n){n==="default"||n==="__esModule"||Object.defineProperty(t,n,{enumerable:!0,get:function(){return d[n]}})});var c=Dt();Object.keys(c).forEach(function(n){n==="default"||n==="__esModule"||Object.defineProperty(t,n,{enumerable:!0,get:function(){return c[n]}})});var o=wt();Object.keys(o).forEach(function(n){n==="default"||n==="__esModule"||Object.defineProperty(t,n,{enumerable:!0,get:function(){return o[n]}})});var e=kt();Object.keys(e).forEach(function(n){n==="default"||n==="__esModule"||Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[n]}})});var r=Tt();Object.keys(r).forEach(function(n){n==="default"||n==="__esModule"||Object.defineProperty(t,n,{enumerable:!0,get:function(){return r[n]}})});var a=Bt();Object.keys(a).forEach(function(n){n==="default"||n==="__esModule"||Object.defineProperty(t,n,{enumerable:!0,get:function(){return a[n]}})});var p=Ot();Object.keys(p).forEach(function(n){n==="default"||n==="__esModule"||Object.defineProperty(t,n,{enumerable:!0,get:function(){return p[n]}})})}}),Ue=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/generation/util.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.escapeAttrValue=r,t.escapeText=a,t.sortByLoc=p;var f=/[\xA0"&]/,h=new RegExp(f.source,"g"),d=/[\xA0&<>]/,c=new RegExp(d.source,"g");function o(n){switch(n.charCodeAt(0)){case 160:return" ";case 34:return""";case 38:return"&";default:return n}}function e(n){switch(n.charCodeAt(0)){case 160:return" ";case 38:return"&";case 60:return"<";case 62:return">";default:return n}}function r(n){return f.test(n)?n.replace(h,o):n}function a(n){return d.test(n)?n.replace(c,e):n}function p(n,s){return n.loc.isInvisible||s.loc.isInvisible?0:n.loc.startPosition.line{h[e]=!0});var c=/\S/,o=class{constructor(e){this.buffer="",this.options=e}handledByOverride(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(this.options.override!==void 0){let a=this.options.override(e,this.options);if(typeof a=="string")return r&&a!==""&&c.test(a[0])&&(a=` ${a}`),this.buffer+=a,!0}return!1}Node(e){switch(e.type){case"MustacheStatement":case"BlockStatement":case"PartialStatement":case"MustacheCommentStatement":case"CommentStatement":case"TextNode":case"ElementNode":case"AttrNode":case"Block":case"Template":return this.TopLevelStatement(e);case"StringLiteral":case"BooleanLiteral":case"NumberLiteral":case"UndefinedLiteral":case"NullLiteral":case"PathExpression":case"SubExpression":return this.Expression(e);case"Program":return this.Block(e);case"ConcatStatement":return this.ConcatStatement(e);case"Hash":return this.Hash(e);case"HashPair":return this.HashPair(e);case"ElementModifierStatement":return this.ElementModifierStatement(e)}}Expression(e){switch(e.type){case"StringLiteral":case"BooleanLiteral":case"NumberLiteral":case"UndefinedLiteral":case"NullLiteral":return this.Literal(e);case"PathExpression":return this.PathExpression(e);case"SubExpression":return this.SubExpression(e)}}Literal(e){switch(e.type){case"StringLiteral":return this.StringLiteral(e);case"BooleanLiteral":return this.BooleanLiteral(e);case"NumberLiteral":return this.NumberLiteral(e);case"UndefinedLiteral":return this.UndefinedLiteral(e);case"NullLiteral":return this.NullLiteral(e)}}TopLevelStatement(e){switch(e.type){case"MustacheStatement":return this.MustacheStatement(e);case"BlockStatement":return this.BlockStatement(e);case"PartialStatement":return this.PartialStatement(e);case"MustacheCommentStatement":return this.MustacheCommentStatement(e);case"CommentStatement":return this.CommentStatement(e);case"TextNode":return this.TextNode(e);case"ElementNode":return this.ElementNode(e);case"Block":case"Template":return this.Block(e);case"AttrNode":return this.AttrNode(e)}}Block(e){if(e.chained){let r=e.body[0];r.chained=!0}this.handledByOverride(e)||this.TopLevelStatements(e.body)}TopLevelStatements(e){e.forEach(r=>this.TopLevelStatement(r))}ElementNode(e){this.handledByOverride(e)||(this.OpenElementNode(e),this.TopLevelStatements(e.children),this.CloseElementNode(e))}OpenElementNode(e){this.buffer+=`<${e.tag}`;let r=[...e.attributes,...e.modifiers,...e.comments].sort(f.sortByLoc);for(let a of r)switch(this.buffer+=" ",a.type){case"AttrNode":this.AttrNode(a);break;case"ElementModifierStatement":this.ElementModifierStatement(a);break;case"MustacheCommentStatement":this.MustacheCommentStatement(a);break}e.blockParams.length&&this.BlockParams(e.blockParams),e.selfClosing&&(this.buffer+=" /"),this.buffer+=">"}CloseElementNode(e){e.selfClosing||h[e.tag.toLowerCase()]||(this.buffer+=``)}AttrNode(e){if(this.handledByOverride(e))return;let{name:r,value:a}=e;this.buffer+=r,(a.type!=="TextNode"||a.chars.length>0)&&(this.buffer+="=",this.AttrNodeValue(a))}AttrNodeValue(e){e.type==="TextNode"?(this.buffer+='"',this.TextNode(e,!0),this.buffer+='"'):this.Node(e)}TextNode(e,r){this.handledByOverride(e)||(this.options.entityEncoding==="raw"?this.buffer+=e.chars:r?this.buffer+=(0,f.escapeAttrValue)(e.chars):this.buffer+=(0,f.escapeText)(e.chars))}MustacheStatement(e){this.handledByOverride(e)||(this.buffer+=e.escaped?"{{":"{{{",e.strip.open&&(this.buffer+="~"),this.Expression(e.path),this.Params(e.params),this.Hash(e.hash),e.strip.close&&(this.buffer+="~"),this.buffer+=e.escaped?"}}":"}}}")}BlockStatement(e){this.handledByOverride(e)||(e.chained?(this.buffer+=e.inverseStrip.open?"{{~":"{{",this.buffer+="else "):this.buffer+=e.openStrip.open?"{{~#":"{{#",this.Expression(e.path),this.Params(e.params),this.Hash(e.hash),e.program.blockParams.length&&this.BlockParams(e.program.blockParams),e.chained?this.buffer+=e.inverseStrip.close?"~}}":"}}":this.buffer+=e.openStrip.close?"~}}":"}}",this.Block(e.program),e.inverse&&(e.inverse.chained||(this.buffer+=e.inverseStrip.open?"{{~":"{{",this.buffer+="else",this.buffer+=e.inverseStrip.close?"~}}":"}}"),this.Block(e.inverse)),e.chained||(this.buffer+=e.closeStrip.open?"{{~/":"{{/",this.Expression(e.path),this.buffer+=e.closeStrip.close?"~}}":"}}"))}BlockParams(e){this.buffer+=` as |${e.join(" ")}|`}PartialStatement(e){this.handledByOverride(e)||(this.buffer+="{{>",this.Expression(e.name),this.Params(e.params),this.Hash(e.hash),this.buffer+="}}")}ConcatStatement(e){this.handledByOverride(e)||(this.buffer+='"',e.parts.forEach(r=>{r.type==="TextNode"?this.TextNode(r,!0):this.Node(r)}),this.buffer+='"')}MustacheCommentStatement(e){this.handledByOverride(e)||(this.buffer+=`{{!--${e.value}--}}`)}ElementModifierStatement(e){this.handledByOverride(e)||(this.buffer+="{{",this.Expression(e.path),this.Params(e.params),this.Hash(e.hash),this.buffer+="}}")}CommentStatement(e){this.handledByOverride(e)||(this.buffer+=``)}PathExpression(e){this.handledByOverride(e)||(this.buffer+=e.original)}SubExpression(e){this.handledByOverride(e)||(this.buffer+="(",this.Expression(e.path),this.Params(e.params),this.Hash(e.hash),this.buffer+=")")}Params(e){e.length&&e.forEach(r=>{this.buffer+=" ",this.Expression(r)})}Hash(e){this.handledByOverride(e,!0)||e.pairs.forEach(r=>{this.buffer+=" ",this.HashPair(r)})}HashPair(e){this.handledByOverride(e)||(this.buffer+=e.key,this.buffer+="=",this.Node(e.value))}StringLiteral(e){this.handledByOverride(e)||(this.buffer+=JSON.stringify(e.value))}BooleanLiteral(e){this.handledByOverride(e)||(this.buffer+=e.value)}NumberLiteral(e){this.handledByOverride(e)||(this.buffer+=e.value)}UndefinedLiteral(e){this.handledByOverride(e)||(this.buffer+="undefined")}NullLiteral(e){this.handledByOverride(e)||(this.buffer+="null")}print(e){let{options:r}=this;if(r.override){let a=r.override(e,r);if(a!==void 0)return a}return this.buffer="",this.Node(e),this.buffer}};t.default=o}}),Be=I({"node_modules/@handlebars/parser/dist/cjs/exception.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0});var f=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function h(d,c){var o=c&&c.loc,e,r,a,p;o&&(e=o.start.line,r=o.end.line,a=o.start.column,p=o.end.column,d+=" - "+e+":"+a);for(var n=Error.prototype.constructor.call(this,d),s=0;s"u"&&(Y.yylloc={});var Ee=Y.yylloc;A.push(Ee);var rt=Y.options&&Y.options.ranges;typeof ie.yy.parseError=="function"?this.parseError=ie.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function $t(te){O.length=O.length-2*te,z.length=z.length-te,A.length=A.length-te}e:var nt=function(){var te;return te=Y.lex()||Re,typeof te!="number"&&(te=B.symbols_[te]||te),te};for(var J,_e,se,ee,er,Se,ae={},de,re,qe,pe;;){if(se=O[O.length-1],this.defaultActions[se]?ee=this.defaultActions[se]:((J===null||typeof J>"u")&&(J=nt()),ee=Q[se]&&Q[se][J]),typeof ee>"u"||!ee.length||!ee[0]){var Ce="";pe=[];for(de in Q[se])this.terminals_[de]&&de>et&&pe.push("'"+this.terminals_[de]+"'");Y.showPosition?Ce="Parse error on line "+($+1)+`: +`+Y.showPosition()+` +Expecting `+pe.join(", ")+", got '"+(this.terminals_[J]||J)+"'":Ce="Parse error on line "+($+1)+": Unexpected "+(J==Re?"end of input":"'"+(this.terminals_[J]||J)+"'"),this.parseError(Ce,{text:Y.match,token:this.terminals_[J]||J,line:Y.yylineno,loc:Ee,expected:pe})}if(ee[0]instanceof Array&&ee.length>1)throw new Error("Parse Error: multiple actions possible at state: "+se+", token: "+J);switch(ee[0]){case 1:O.push(J),z.push(Y.yytext),A.push(Y.yylloc),O.push(ee[1]),J=null,_e?(J=_e,_e=null):(oe=Y.yyleng,D=Y.yytext,$=Y.yylineno,Ee=Y.yylloc,Ie>0&&Ie--);break;case 2:if(re=this.productions_[ee[1]][1],ae.$=z[z.length-re],ae._$={first_line:A[A.length-(re||1)].first_line,last_line:A[A.length-1].last_line,first_column:A[A.length-(re||1)].first_column,last_column:A[A.length-1].last_column},rt&&(ae._$.range=[A[A.length-(re||1)].range[0],A[A.length-1].range[1]]),Se=this.performAction.apply(ae,[D,oe,$,ie.yy,ee[1],z,A].concat(tt)),typeof Se<"u")return Se;re&&(O=O.slice(0,-1*re*2),z=z.slice(0,-1*re),A=A.slice(0,-1*re)),O.push(this.productions_[ee[1]][0]),z.push(ae.$),A.push(ae._$),qe=Q[O[O.length-2]][O[O.length-1]],O.push(qe);break;case 3:return!0}}return!0}},W=function(){var N={EOF:1,parseError:function(B,O){if(this.yy.parser)this.yy.parser.parseError(B,O);else throw new Error(B)},setInput:function(k,B){return this.yy=B||this.yy||{},this._input=k,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var k=this._input[0];this.yytext+=k,this.yyleng++,this.offset++,this.match+=k,this.matched+=k;var B=k.match(/(?:\r\n?|\n).*/g);return B?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),k},unput:function(k){var B=k.length,O=k.split(/(?:\r\n?|\n)/g);this._input=k+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-B),this.offset-=B;var q=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),O.length-1&&(this.yylineno-=O.length-1);var z=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:O?(O.length===q.length?this.yylloc.first_column:0)+q[q.length-O.length].length-O[0].length:this.yylloc.first_column-B},this.options.ranges&&(this.yylloc.range=[z[0],z[0]+this.yyleng-B]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(k){this.unput(this.match.slice(k))},pastInput:function(){var k=this.matched.substr(0,this.matched.length-this.match.length);return(k.length>20?"...":"")+k.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var k=this.match;return k.length<20&&(k+=this._input.substr(0,20-k.length)),(k.substr(0,20)+(k.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var k=this.pastInput(),B=new Array(k.length+1).join("-");return k+this.upcomingInput()+` +`+B+"^"},test_match:function(k,B){var O,q,z;if(this.options.backtrack_lexer&&(z={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(z.yylloc.range=this.yylloc.range.slice(0))),q=k[0].match(/(?:\r\n?|\n).*/g),q&&(this.yylineno+=q.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:q?q[q.length-1].length-q[q.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+k[0].length},this.yytext+=k[0],this.match+=k[0],this.matches=k,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(k[0].length),this.matched+=k[0],O=this.performAction.call(this,this.yy,this,B,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),O)return O;if(this._backtrack){for(var A in z)this[A]=z[A];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var k,B,O,q;this._more||(this.yytext="",this.match="");for(var z=this._currentRules(),A=0;AB[0].length)){if(B=O,q=A,this.options.backtrack_lexer){if(k=this.test_match(O,z[A]),k!==!1)return k;if(this._backtrack){B=!1;continue}else return!1}else if(!this.options.flex)break}return B?(k=this.test_match(B,z[q]),k!==!1?k:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var B=this.next();return B||this.lex()},begin:function(B){this.conditionStack.push(B)},popState:function(){var B=this.conditionStack.length-1;return B>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(B){return B=this.conditionStack.length-1-Math.abs(B||0),B>=0?this.conditionStack[B]:"INITIAL"},pushState:function(B){this.begin(B)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(B,O,q,z){function A(D,$){return O.yytext=O.yytext.substring(D,O.yyleng-$+D)}var Q=z;switch(q){case 0:if(O.yytext.slice(-2)==="\\\\"?(A(0,1),this.begin("mu")):O.yytext.slice(-1)==="\\"?(A(0,1),this.begin("emu")):this.begin("mu"),O.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;break;case 3:return this.begin("raw"),15;break;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(A(5,9),18);case 5:return 15;case 6:return this.popState(),14;break;case 7:return 64;case 8:return 67;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;break;case 11:return 56;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;break;case 16:return this.popState(),44;break;case 17:return 34;case 18:return 39;case 19:return 52;case 20:return 48;case 21:this.unput(O.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;break;case 23:return 48;case 24:return 72;case 25:return 71;case 26:return 71;case 27:return 86;case 28:break;case 29:return this.popState(),55;break;case 30:return this.popState(),33;break;case 31:return O.yytext=A(1,2).replace(/\\"/g,'"'),79;break;case 32:return O.yytext=A(1,2).replace(/\\'/g,"'"),79;break;case 33:return 84;case 34:return 81;case 35:return 81;case 36:return 82;case 37:return 83;case 38:return 80;case 39:return 74;case 40:return 76;case 41:return 71;case 42:return O.yytext=O.yytext.replace(/\\([\\\]])/g,"$1"),71;break;case 43:return"INVALID";case 44:return 5}},rules:[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],conditions:{mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}}};return N}();Z.lexer=W;function T(){this.yy={}}return T.prototype=Z,Z.Parser=T,new T}();t.default=f}}),Nt=I({"node_modules/@handlebars/parser/dist/cjs/printer.js"(t){"use strict";F();var f=t&&t.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(t,"__esModule",{value:!0}),t.PrintVisitor=t.print=void 0;var h=f(Oe());function d(o){return new c().accept(o)}t.print=d;function c(){this.padding=0}t.PrintVisitor=c,c.prototype=new h.default,c.prototype.pad=function(o){for(var e="",r=0,a=this.padding;r "+e+" }}")},c.prototype.PartialBlockStatement=function(o){var e="PARTIAL BLOCK:"+o.name.original;return o.params[0]&&(e+=" "+this.accept(o.params[0])),o.hash&&(e+=" "+this.accept(o.hash)),e+=" "+this.pad("PROGRAM:"),this.padding++,e+=this.accept(o.program),this.padding--,this.pad("{{> "+e+" }}")},c.prototype.ContentStatement=function(o){return this.pad("CONTENT[ '"+o.value+"' ]")},c.prototype.CommentStatement=function(o){return this.pad("{{! '"+o.value+"' }}")},c.prototype.SubExpression=function(o){for(var e=o.params,r=[],a,p=0,n=e.length;p0)throw new h.default("Invalid path: "+E,{loc:P});L===".."&&_++}else v.push(L)}return{type:"PathExpression",data:l,depth:_,parts:v,original:E,loc:P}}t.preparePath=a;function p(l,b,P,E,v,_){var y=E.charAt(3)||E.charAt(2),g=y!=="{"&&y!=="&",L=/\*/.test(E);return{type:L?"Decorator":"MustacheStatement",path:l,params:b,hash:P,escaped:g,strip:v,loc:this.locInfo(_)}}t.prepareMustache=p;function n(l,b,P,E){d(l,P),E=this.locInfo(E);var v={type:"Program",body:b,strip:{},loc:E};return{type:"BlockStatement",path:l.path,params:l.params,hash:l.hash,program:v,openStrip:{},inverseStrip:{},closeStrip:{},loc:E}}t.prepareRawBlock=n;function s(l,b,P,E,v,_){E&&E.path&&d(l,E);var y=/\*/.test(l.open);b.blockParams=l.blockParams;var g,L;if(P){if(y)throw new h.default("Unexpected inverse block on decorator",P);P.chain&&(P.program.body[0].closeStrip=E.strip),L=P.strip,g=P.program}return v&&(v=g,g=b,b=v),{type:y?"DecoratorBlock":"BlockStatement",path:l.path,params:l.params,hash:l.hash,program:b,inverse:g,openStrip:l.strip,inverseStrip:L,closeStrip:E&&E.strip,loc:this.locInfo(_)}}t.prepareBlock=s;function u(l,b){if(!b&&l.length){var P=l[0].loc,E=l[l.length-1].loc;P&&E&&(b={source:P.source,start:{line:P.start.line,column:P.start.column},end:{line:E.end.line,column:E.end.column}})}return{type:"Program",body:l,strip:{},loc:b}}t.prepareProgram=u;function i(l,b,P,E){return d(l,P),{type:"PartialBlockStatement",name:l.path,params:l.params,hash:l.hash,program:b,openStrip:l.strip,closeStrip:P&&P.strip,loc:this.locInfo(E)}}t.preparePartialBlock=i}}),Ft=I({"node_modules/@handlebars/parser/dist/cjs/parse.js"(t){"use strict";F();var f=t&&t.__createBinding||(Object.create?function(u,i,l,b){b===void 0&&(b=l),Object.defineProperty(u,b,{enumerable:!0,get:function(){return i[l]}})}:function(u,i,l,b){b===void 0&&(b=l),u[b]=i[l]}),h=t&&t.__setModuleDefault||(Object.create?function(u,i){Object.defineProperty(u,"default",{enumerable:!0,value:i})}:function(u,i){u.default=i}),d=t&&t.__importStar||function(u){if(u&&u.__esModule)return u;var i={};if(u!=null)for(var l in u)l!=="default"&&Object.prototype.hasOwnProperty.call(u,l)&&f(i,u,l);return h(i,u),i},c=t&&t.__importDefault||function(u){return u&&u.__esModule?u:{default:u}};Object.defineProperty(t,"__esModule",{value:!0}),t.parse=t.parseWithoutProcessing=void 0;var o=c(Ge()),e=c(ze()),r=d(Lt()),a={};for(p in r)Object.prototype.hasOwnProperty.call(r,p)&&(a[p]=r[p]);var p;function n(u,i){if(u.type==="Program")return u;o.default.yy=a,o.default.yy.locInfo=function(b){return new r.SourceLocation(i&&i.srcName,b)};var l=o.default.parse(u);return l}t.parseWithoutProcessing=n;function s(u,i){var l=n(u,i),b=new e.default(i);return b.accept(l)}t.parse=s}}),It=I({"node_modules/@handlebars/parser/dist/cjs/index.js"(t){"use strict";F();var f=t&&t.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(t,"__esModule",{value:!0}),t.parseWithoutProcessing=t.parse=t.PrintVisitor=t.print=t.Exception=t.parser=t.WhitespaceControl=t.Visitor=void 0;var h=Oe();Object.defineProperty(t,"Visitor",{enumerable:!0,get:function(){return f(h).default}});var d=ze();Object.defineProperty(t,"WhitespaceControl",{enumerable:!0,get:function(){return f(d).default}});var c=Ge();Object.defineProperty(t,"parser",{enumerable:!0,get:function(){return f(c).default}});var o=Be();Object.defineProperty(t,"Exception",{enumerable:!0,get:function(){return f(o).default}});var e=Nt();Object.defineProperty(t,"print",{enumerable:!0,get:function(){return e.print}}),Object.defineProperty(t,"PrintVisitor",{enumerable:!0,get:function(){return e.PrintVisitor}});var r=Ft();Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return r.parse}}),Object.defineProperty(t,"parseWithoutProcessing",{enumerable:!0,get:function(){return r.parseWithoutProcessing}})}}),Ke=I({"node_modules/simple-html-tokenizer/dist/simple-html-tokenizer.js"(t,f){F(),function(h,d){typeof t=="object"&&typeof f<"u"?d(t):typeof define=="function"&&define.amd?define(["exports"],d):d(h.HTML5Tokenizer={})}(t,function(h){"use strict";var d={Aacute:"\xC1",aacute:"\xE1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223E",acd:"\u223F",acE:"\u223E\u0333",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",Acy:"\u0410",acy:"\u0430",AElig:"\xC6",aelig:"\xE6",af:"\u2061",Afr:"\u{1D504}",afr:"\u{1D51E}",Agrave:"\xC0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03B1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2A3F",amp:"&",AMP:"&",andand:"\u2A55",And:"\u2A53",and:"\u2227",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angmsd:"\u2221",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",Aogon:"\u0104",aogon:"\u0105",Aopf:"\u{1D538}",aopf:"\u{1D552}",apacir:"\u2A6F",ap:"\u2248",apE:"\u2A70",ape:"\u224A",apid:"\u224B",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224A",Aring:"\xC5",aring:"\xE5",Ascr:"\u{1D49C}",ascr:"\u{1D4B6}",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224D",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",Backslash:"\u2216",Barv:"\u2AE7",barvee:"\u22BD",barwed:"\u2305",Barwed:"\u2306",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",Because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",Bernoullis:"\u212C",Beta:"\u0392",beta:"\u03B2",beth:"\u2136",between:"\u226C",Bfr:"\u{1D505}",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bNot:"\u2AED",bnot:"\u2310",Bopf:"\u{1D539}",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxbox:"\u29C9",boxdl:"\u2510",boxdL:"\u2555",boxDl:"\u2556",boxDL:"\u2557",boxdr:"\u250C",boxdR:"\u2552",boxDr:"\u2553",boxDR:"\u2554",boxh:"\u2500",boxH:"\u2550",boxhd:"\u252C",boxHd:"\u2564",boxhD:"\u2565",boxHD:"\u2566",boxhu:"\u2534",boxHu:"\u2567",boxhU:"\u2568",boxHU:"\u2569",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxul:"\u2518",boxuL:"\u255B",boxUl:"\u255C",boxUL:"\u255D",boxur:"\u2514",boxuR:"\u2558",boxUr:"\u2559",boxUR:"\u255A",boxv:"\u2502",boxV:"\u2551",boxvh:"\u253C",boxvH:"\u256A",boxVh:"\u256B",boxVH:"\u256C",boxvl:"\u2524",boxvL:"\u2561",boxVl:"\u2562",boxVL:"\u2563",boxvr:"\u251C",boxvR:"\u255E",boxVr:"\u255F",boxVR:"\u2560",bprime:"\u2035",breve:"\u02D8",Breve:"\u02D8",brvbar:"\xA6",bscr:"\u{1D4B7}",Bscr:"\u212C",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsolb:"\u29C5",bsol:"\\",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",Bumpeq:"\u224E",bumpeq:"\u224F",Cacute:"\u0106",cacute:"\u0107",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",cap:"\u2229",Cap:"\u22D2",capcup:"\u2A47",capdot:"\u2A40",CapitalDifferentialD:"\u2145",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",Cayleys:"\u212D",ccaps:"\u2A4D",Ccaron:"\u010C",ccaron:"\u010D",Ccedil:"\xC7",ccedil:"\xE7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2A4C",ccupssm:"\u2A50",Cdot:"\u010A",cdot:"\u010B",cedil:"\xB8",Cedilla:"\xB8",cemptyv:"\u29B2",cent:"\xA2",centerdot:"\xB7",CenterDot:"\xB7",cfr:"\u{1D520}",Cfr:"\u212D",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03A7",chi:"\u03C7",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",CircleDot:"\u2299",circledR:"\xAE",circledS:"\u24C8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cir:"\u25CB",cirE:"\u29C3",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",colon:":",Colon:"\u2237",Colone:"\u2A74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",Congruent:"\u2261",conint:"\u222E",Conint:"\u222F",ContourIntegral:"\u222E",copf:"\u{1D554}",Copf:"\u2102",coprod:"\u2210",Coproduct:"\u2210",copy:"\xA9",COPY:"\xA9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21B5",cross:"\u2717",Cross:"\u2A2F",Cscr:"\u{1D49E}",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cupbrcap:"\u2A48",cupcap:"\u2A46",CupCap:"\u224D",cup:"\u222A",Cup:"\u22D3",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dagger:"\u2020",Dagger:"\u2021",daleth:"\u2138",darr:"\u2193",Darr:"\u21A1",dArr:"\u21D3",dash:"\u2010",Dashv:"\u2AE4",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",Dcaron:"\u010E",dcaron:"\u010F",Dcy:"\u0414",dcy:"\u0434",ddagger:"\u2021",ddarr:"\u21CA",DD:"\u2145",dd:"\u2146",DDotrahd:"\u2911",ddotseq:"\u2A77",deg:"\xB0",Del:"\u2207",Delta:"\u0394",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",Dfr:"\u{1D507}",dfr:"\u{1D521}",dHar:"\u2965",dharl:"\u21C3",dharr:"\u21C2",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",diam:"\u22C4",diamond:"\u22C4",Diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",DifferentialD:"\u2146",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",Dopf:"\u{1D53B}",dopf:"\u{1D555}",Dot:"\xA8",dot:"\u02D9",DotDot:"\u20DC",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrowBar:"\u2913",downarrow:"\u2193",DownArrow:"\u2193",Downarrow:"\u21D3",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVectorBar:"\u2956",DownLeftVector:"\u21BD",DownRightTeeVector:"\u295F",DownRightVectorBar:"\u2957",DownRightVector:"\u21C1",DownTeeArrow:"\u21A7",DownTee:"\u22A4",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",Dscr:"\u{1D49F}",dscr:"\u{1D4B9}",DScy:"\u0405",dscy:"\u0455",dsol:"\u29F6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",DZcy:"\u040F",dzcy:"\u045F",dzigrarr:"\u27FF",Eacute:"\xC9",eacute:"\xE9",easter:"\u2A6E",Ecaron:"\u011A",ecaron:"\u011B",Ecirc:"\xCA",ecirc:"\xEA",ecir:"\u2256",ecolon:"\u2255",Ecy:"\u042D",ecy:"\u044D",eDDot:"\u2A77",Edot:"\u0116",edot:"\u0117",eDot:"\u2251",ee:"\u2147",efDot:"\u2252",Efr:"\u{1D508}",efr:"\u{1D522}",eg:"\u2A9A",Egrave:"\xC8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",Element:"\u2208",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25FB",emptyv:"\u2205",EmptyVerySmallSquare:"\u25AB",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",ENG:"\u014A",eng:"\u014B",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\u{1D53C}",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",Equal:"\u2A75",equals:"=",EqualTilde:"\u2242",equest:"\u225F",Equilibrium:"\u21CC",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erarr:"\u2971",erDot:"\u2253",escr:"\u212F",Escr:"\u2130",esdot:"\u2250",Esim:"\u2A73",esim:"\u2242",Eta:"\u0397",eta:"\u03B7",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",exponentiale:"\u2147",ExponentialE:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",Ffr:"\u{1D509}",ffr:"\u{1D523}",filig:"\uFB01",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",Fopf:"\u{1D53D}",fopf:"\u{1D557}",forall:"\u2200",ForAll:"\u2200",fork:"\u22D4",forkv:"\u2AD9",Fouriertrf:"\u2131",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",Fscr:"\u2131",gacute:"\u01F5",Gamma:"\u0393",gamma:"\u03B3",Gammad:"\u03DC",gammad:"\u03DD",gap:"\u2A86",Gbreve:"\u011E",gbreve:"\u011F",Gcedil:"\u0122",Gcirc:"\u011C",gcirc:"\u011D",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",ge:"\u2265",gE:"\u2267",gEl:"\u2A8C",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",gescc:"\u2AA9",ges:"\u2A7E",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",Gfr:"\u{1D50A}",gfr:"\u{1D524}",gg:"\u226B",Gg:"\u22D9",ggg:"\u22D9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gla:"\u2AA5",gl:"\u2277",glE:"\u2A92",glj:"\u2AA4",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gnE:"\u2269",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",Gopf:"\u{1D53E}",gopf:"\u{1D558}",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",gtcc:"\u2AA7",gtcir:"\u2A7A",gt:">",GT:">",Gt:"\u226B",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",Hacek:"\u02C7",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",HARDcy:"\u042A",hardcy:"\u044A",harrcir:"\u2948",harr:"\u2194",hArr:"\u21D4",harrw:"\u21AD",Hat:"^",hbar:"\u210F",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",Hfr:"\u210C",HilbertSpace:"\u210B",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",Hopf:"\u210D",horbar:"\u2015",HorizontalLine:"\u2500",hscr:"\u{1D4BD}",Hscr:"\u210B",hslash:"\u210F",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224E",HumpEqual:"\u224F",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xCD",iacute:"\xED",ic:"\u2063",Icirc:"\xCE",icirc:"\xEE",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",Ifr:"\u2111",Igrave:"\xCC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Imacr:"\u012A",imacr:"\u012B",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",Im:"\u2111",imof:"\u22B7",imped:"\u01B5",Implies:"\u21D2",incare:"\u2105",in:"\u2208",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",intcal:"\u22BA",int:"\u222B",Int:"\u222C",integers:"\u2124",Integral:"\u222B",intercal:"\u22BA",Intersection:"\u22C2",intlarhk:"\u2A17",intprod:"\u2A3C",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012E",iogon:"\u012F",Iopf:"\u{1D540}",iopf:"\u{1D55A}",Iota:"\u0399",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",iscr:"\u{1D4BE}",Iscr:"\u2110",isin:"\u2208",isindot:"\u22F5",isinE:"\u22F9",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xCF",iuml:"\xEF",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\u{1D50D}",jfr:"\u{1D527}",jmath:"\u0237",Jopf:"\u{1D541}",jopf:"\u{1D55B}",Jscr:"\u{1D4A5}",jscr:"\u{1D4BF}",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041A",kcy:"\u043A",Kfr:"\u{1D50E}",kfr:"\u{1D528}",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040C",kjcy:"\u045C",Kopf:"\u{1D542}",kopf:"\u{1D55C}",Kscr:"\u{1D4A6}",kscr:"\u{1D4C0}",lAarr:"\u21DA",Lacute:"\u0139",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",Lambda:"\u039B",lambda:"\u03BB",lang:"\u27E8",Lang:"\u27EA",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",Laplacetrf:"\u2112",laquo:"\xAB",larrb:"\u21E4",larrbfs:"\u291F",larr:"\u2190",Larr:"\u219E",lArr:"\u21D0",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",latail:"\u2919",lAtail:"\u291B",lat:"\u2AAB",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lBarr:"\u290E",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",Lcaron:"\u013D",lcaron:"\u013E",Lcedil:"\u013B",lcedil:"\u013C",lceil:"\u2308",lcub:"{",Lcy:"\u041B",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",lE:"\u2266",LeftAngleBracket:"\u27E8",LeftArrowBar:"\u21E4",leftarrow:"\u2190",LeftArrow:"\u2190",Leftarrow:"\u21D0",LeftArrowRightArrow:"\u21C6",leftarrowtail:"\u21A2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVectorBar:"\u2959",LeftDownVector:"\u21C3",LeftFloor:"\u230A",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",LeftRightArrow:"\u2194",Leftrightarrow:"\u21D4",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",LeftRightVector:"\u294E",LeftTeeArrow:"\u21A4",LeftTee:"\u22A3",LeftTeeVector:"\u295A",leftthreetimes:"\u22CB",LeftTriangleBar:"\u29CF",LeftTriangle:"\u22B2",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVectorBar:"\u2958",LeftUpVector:"\u21BF",LeftVectorBar:"\u2952",LeftVector:"\u21BC",lEg:"\u2A8B",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",lescc:"\u2AA8",les:"\u2A7D",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2AA1",lesssim:"\u2272",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",lfisht:"\u297C",lfloor:"\u230A",Lfr:"\u{1D50F}",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lHar:"\u2962",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",llarr:"\u21C7",ll:"\u226A",Ll:"\u22D8",llcorner:"\u231E",Lleftarrow:"\u21DA",llhard:"\u296B",lltri:"\u25FA",Lmidot:"\u013F",lmidot:"\u0140",lmoustache:"\u23B0",lmoust:"\u23B0",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lnE:"\u2268",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",LongLeftArrow:"\u27F5",Longleftarrow:"\u27F8",longleftrightarrow:"\u27F7",LongLeftRightArrow:"\u27F7",Longleftrightarrow:"\u27FA",longmapsto:"\u27FC",longrightarrow:"\u27F6",LongRightArrow:"\u27F6",Longrightarrow:"\u27F9",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",Lopf:"\u{1D543}",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",Lscr:"\u2112",lsh:"\u21B0",Lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",Lstrok:"\u0141",lstrok:"\u0142",ltcc:"\u2AA6",ltcir:"\u2A79",lt:"<",LT:"<",Lt:"\u226A",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",ltrPar:"\u2996",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",Mcy:"\u041C",mcy:"\u043C",mdash:"\u2014",mDDot:"\u223A",measuredangle:"\u2221",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",midast:"*",midcir:"\u2AF0",mid:"\u2223",middot:"\xB7",minusb:"\u229F",minus:"\u2212",minusd:"\u2238",minusdu:"\u2A2A",MinusPlus:"\u2213",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",Mopf:"\u{1D544}",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",Mscr:"\u2133",mstpos:"\u223E",Mu:"\u039C",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natural:"\u266E",naturals:"\u2115",natur:"\u266E",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",Ncy:"\u041D",ncy:"\u043D",ndash:"\u2013",nearhk:"\u2924",nearr:"\u2197",neArr:"\u21D7",nearrow:"\u2197",ne:"\u2260",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,nexist:"\u2204",nexists:"\u2204",Nfr:"\u{1D511}",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",nGg:"\u22D9\u0338",ngsim:"\u2275",nGt:"\u226B\u20D2",ngt:"\u226F",ngtr:"\u226F",nGtv:"\u226B\u0338",nharr:"\u21AE",nhArr:"\u21CE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",NJcy:"\u040A",njcy:"\u045A",nlarr:"\u219A",nlArr:"\u21CD",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nleftarrow:"\u219A",nLeftarrow:"\u21CD",nleftrightarrow:"\u21AE",nLeftrightarrow:"\u21CE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nLl:"\u22D8\u0338",nlsim:"\u2274",nLt:"\u226A\u20D2",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nLtv:"\u226A\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xA0",nopf:"\u{1D55F}",Nopf:"\u2115",Not:"\u2AEC",not:"\xAC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",notin:"\u2209",notindot:"\u22F5\u0338",notinE:"\u22F9\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangle:"\u22EB",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",nparallel:"\u2226",npar:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",nprec:"\u2280",npreceq:"\u2AAF\u0338",npre:"\u2AAF\u0338",nrarrc:"\u2933\u0338",nrarr:"\u219B",nrArr:"\u21CF",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nRightarrow:"\u21CF",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",Nscr:"\u{1D4A9}",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",Ntilde:"\xD1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",Nu:"\u039D",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvDash:"\u22AD",nVdash:"\u22AE",nVDash:"\u22AF",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvHarr:"\u2904",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwarhk:"\u2923",nwarr:"\u2196",nwArr:"\u21D6",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xD3",oacute:"\xF3",oast:"\u229B",Ocirc:"\xD4",ocirc:"\xF4",ocir:"\u229A",Ocy:"\u041E",ocy:"\u043E",odash:"\u229D",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29BF",Ofr:"\u{1D512}",ofr:"\u{1D52C}",ogon:"\u02DB",Ograve:"\xD2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",Omacr:"\u014C",omacr:"\u014D",Omega:"\u03A9",omega:"\u03C9",Omicron:"\u039F",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",Oopf:"\u{1D546}",oopf:"\u{1D560}",opar:"\u29B7",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",operp:"\u29B9",oplus:"\u2295",orarr:"\u21BB",Or:"\u2A54",or:"\u2228",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oS:"\u24C8",Oscr:"\u{1D4AA}",oscr:"\u2134",Oslash:"\xD8",oslash:"\xF8",osol:"\u2298",Otilde:"\xD5",otilde:"\xF5",otimesas:"\u2A36",Otimes:"\u2A37",otimes:"\u2297",Ouml:"\xD6",ouml:"\xF6",ovbar:"\u233D",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",para:"\xB6",parallel:"\u2225",par:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",PartialD:"\u2202",Pcy:"\u041F",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",Pfr:"\u{1D513}",pfr:"\u{1D52D}",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",Pi:"\u03A0",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plus:"+",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",PlusMinus:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",Poincareplane:"\u210C",pointint:"\u2A15",popf:"\u{1D561}",Popf:"\u2119",pound:"\xA3",prap:"\u2AB7",Pr:"\u2ABB",pr:"\u227A",prcue:"\u227C",precapprox:"\u2AB7",prec:"\u227A",preccurlyeq:"\u227C",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",pre:"\u2AAF",prE:"\u2AB3",precsim:"\u227E",prime:"\u2032",Prime:"\u2033",primes:"\u2119",prnap:"\u2AB9",prnE:"\u2AB5",prnsim:"\u22E8",prod:"\u220F",Product:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",Proportional:"\u221D",Proportion:"\u2237",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",Pscr:"\u{1D4AB}",pscr:"\u{1D4C5}",Psi:"\u03A8",psi:"\u03C8",puncsp:"\u2008",Qfr:"\u{1D514}",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",Qopf:"\u211A",qprime:"\u2057",Qscr:"\u{1D4AC}",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quot:'"',QUOT:'"',rAarr:"\u21DB",race:"\u223D\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",Rang:"\u27EB",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarr:"\u2192",Rarr:"\u21A0",rArr:"\u21D2",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",rAtail:"\u291C",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rBarr:"\u290F",RBarr:"\u2910",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",Re:"\u211C",rect:"\u25AD",reg:"\xAE",REG:"\xAE",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",Rfr:"\u211C",rHar:"\u2964",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",RightAngleBracket:"\u27E9",RightArrowBar:"\u21E5",rightarrow:"\u2192",RightArrow:"\u2192",Rightarrow:"\u21D2",RightArrowLeftArrow:"\u21C4",rightarrowtail:"\u21A3",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVectorBar:"\u2955",RightDownVector:"\u21C2",RightFloor:"\u230B",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",RightTeeArrow:"\u21A6",RightTee:"\u22A2",RightTeeVector:"\u295B",rightthreetimes:"\u22CC",RightTriangleBar:"\u29D0",RightTriangle:"\u22B3",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVectorBar:"\u2954",RightUpVector:"\u21BE",RightVectorBar:"\u2953",RightVector:"\u21C0",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoustache:"\u23B1",rmoust:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",Ropf:"\u211D",roplus:"\u2A2E",rotimes:"\u2A35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",Rrightarrow:"\u21DB",rsaquo:"\u203A",rscr:"\u{1D4C7}",Rscr:"\u211B",rsh:"\u21B1",Rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",RuleDelayed:"\u29F4",ruluhar:"\u2968",rx:"\u211E",Sacute:"\u015A",sacute:"\u015B",sbquo:"\u201A",scap:"\u2AB8",Scaron:"\u0160",scaron:"\u0161",Sc:"\u2ABC",sc:"\u227B",sccue:"\u227D",sce:"\u2AB0",scE:"\u2AB4",Scedil:"\u015E",scedil:"\u015F",Scirc:"\u015C",scirc:"\u015D",scnap:"\u2ABA",scnE:"\u2AB6",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",Scy:"\u0421",scy:"\u0441",sdotb:"\u22A1",sdot:"\u22C5",sdote:"\u2A66",searhk:"\u2925",searr:"\u2198",seArr:"\u21D8",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\u{1D516}",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xAD",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",SOFTcy:"\u042C",softcy:"\u044C",solbar:"\u233F",solb:"\u29C4",sol:"/",Sopf:"\u{1D54A}",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",Sqrt:"\u221A",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",square:"\u25A1",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25AA",squ:"\u25A1",squf:"\u25AA",srarr:"\u2192",Sscr:"\u{1D4AE}",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",Star:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",Sub:"\u22D0",subdot:"\u2ABD",subE:"\u2AC5",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",Subset:"\u22D0",subseteq:"\u2286",subseteqq:"\u2AC5",SubsetEqual:"\u2286",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succapprox:"\u2AB8",succ:"\u227B",succcurlyeq:"\u227D",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",SuchThat:"\u220B",sum:"\u2211",Sum:"\u2211",sung:"\u266A",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",sup:"\u2283",Sup:"\u22D1",supdot:"\u2ABE",supdsub:"\u2AD8",supE:"\u2AC6",supe:"\u2287",supedot:"\u2AC4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",Supset:"\u22D1",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swarhk:"\u2926",swarr:"\u2199",swArr:"\u21D9",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",Tab:" ",target:"\u2316",Tau:"\u03A4",tau:"\u03C4",tbrk:"\u23B4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",Tfr:"\u{1D517}",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",Therefore:"\u2234",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",THORN:"\xDE",thorn:"\xFE",tilde:"\u02DC",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",timesbar:"\u2A31",timesb:"\u22A0",times:"\xD7",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",topbot:"\u2336",topcir:"\u2AF1",top:"\u22A4",Topf:"\u{1D54B}",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",TRADE:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",TripleDot:"\u20DB",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",Tscr:"\u{1D4AF}",tscr:"\u{1D4C9}",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040B",tshcy:"\u045B",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Uacute:"\xDA",uacute:"\xFA",uarr:"\u2191",Uarr:"\u219F",uArr:"\u21D1",Uarrocir:"\u2949",Ubrcy:"\u040E",ubrcy:"\u045E",Ubreve:"\u016C",ubreve:"\u016D",Ucirc:"\xDB",ucirc:"\xFB",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21C5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",Ufr:"\u{1D518}",ufr:"\u{1D532}",Ugrave:"\xD9",ugrave:"\xF9",uHar:"\u2963",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",Umacr:"\u016A",umacr:"\u016B",uml:"\xA8",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",uogon:"\u0173",Uopf:"\u{1D54C}",uopf:"\u{1D566}",UpArrowBar:"\u2912",uparrow:"\u2191",UpArrow:"\u2191",Uparrow:"\u21D1",UpArrowDownArrow:"\u21C5",updownarrow:"\u2195",UpDownArrow:"\u2195",Updownarrow:"\u21D5",UpEquilibrium:"\u296E",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",upsi:"\u03C5",Upsi:"\u03D2",upsih:"\u03D2",Upsilon:"\u03A5",upsilon:"\u03C5",UpTeeArrow:"\u21A5",UpTee:"\u22A5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",Uring:"\u016E",uring:"\u016F",urtri:"\u25F9",Uscr:"\u{1D4B0}",uscr:"\u{1D4CA}",utdot:"\u22F0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",Uuml:"\xDC",uuml:"\xFC",uwangle:"\u29A7",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",vArr:"\u21D5",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vBar:"\u2AE8",Vbar:"\u2AEB",vBarv:"\u2AE9",Vcy:"\u0412",vcy:"\u0432",vdash:"\u22A2",vDash:"\u22A8",Vdash:"\u22A9",VDash:"\u22AB",Vdashl:"\u2AE6",veebar:"\u22BB",vee:"\u2228",Vee:"\u22C1",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",Verbar:"\u2016",vert:"|",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",Vopf:"\u{1D54D}",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",Vscr:"\u{1D4B1}",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",Vvdash:"\u22AA",vzigzag:"\u299A",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",Wedge:"\u22C0",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\u{1D51A}",wfr:"\u{1D534}",Wopf:"\u{1D54E}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\u{1D4B2}",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",Xfr:"\u{1D51B}",xfr:"\u{1D535}",xharr:"\u27F7",xhArr:"\u27FA",Xi:"\u039E",xi:"\u03BE",xlarr:"\u27F5",xlArr:"\u27F8",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",Xopf:"\u{1D54F}",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrarr:"\u27F6",xrArr:"\u27F9",Xscr:"\u{1D4B3}",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",Yacute:"\xDD",yacute:"\xFD",YAcy:"\u042F",yacy:"\u044F",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042B",ycy:"\u044B",yen:"\xA5",Yfr:"\u{1D51C}",yfr:"\u{1D536}",YIcy:"\u0407",yicy:"\u0457",Yopf:"\u{1D550}",yopf:"\u{1D56A}",Yscr:"\u{1D4B4}",yscr:"\u{1D4CE}",YUcy:"\u042E",yucy:"\u044E",yuml:"\xFF",Yuml:"\u0178",Zacute:"\u0179",zacute:"\u017A",Zcaron:"\u017D",zcaron:"\u017E",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017B",zdot:"\u017C",zeetrf:"\u2128",ZeroWidthSpace:"\u200B",Zeta:"\u0396",zeta:"\u03B6",zfr:"\u{1D537}",Zfr:"\u2128",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",Zopf:"\u2124",Zscr:"\u{1D4B5}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"},c=/^#[xX]([A-Fa-f0-9]+)$/,o=/^#([0-9]+)$/,e=/^([A-Za-z0-9]+)$/,r=function(){function E(v){this.named=v}return E.prototype.parse=function(v){if(v){var _=v.match(c);if(_)return String.fromCharCode(parseInt(_[1],16));if(_=v.match(o),_)return String.fromCharCode(parseInt(_[1],10));if(_=v.match(e),_)return this.named[_[1]]}},E}(),a=/[\t\n\f ]/,p=/[A-Za-z]/,n=/\r\n?/g;function s(E){return a.test(E)}function u(E){return p.test(E)}function i(E){return E.replace(n,` +`)}var l=function(){function E(v,_,y){y===void 0&&(y="precompile"),this.delegate=v,this.entityParser=_,this.mode=y,this.state="beforeData",this.line=-1,this.column=-1,this.input="",this.index=-1,this.tagNameBuffer="",this.states={beforeData:function(){var g=this.peek();if(g==="<"&&!this.isIgnoredEndTag())this.transitionTo("tagOpen"),this.markTagStart(),this.consume();else{if(this.mode==="precompile"&&g===` +`){var L=this.tagNameBuffer.toLowerCase();(L==="pre"||L==="textarea")&&this.consume()}this.transitionTo("data"),this.delegate.beginData()}},data:function(){var g=this.peek(),L=this.tagNameBuffer;g==="<"&&!this.isIgnoredEndTag()?(this.delegate.finishData(),this.transitionTo("tagOpen"),this.markTagStart(),this.consume()):g==="&"&&L!=="script"&&L!=="style"?(this.consume(),this.delegate.appendToData(this.consumeCharRef()||"&")):(this.consume(),this.delegate.appendToData(g))},tagOpen:function(){var g=this.consume();g==="!"?this.transitionTo("markupDeclarationOpen"):g==="/"?this.transitionTo("endTagOpen"):(g==="@"||g===":"||u(g))&&(this.transitionTo("tagName"),this.tagNameBuffer="",this.delegate.beginStartTag(),this.appendToTagName(g))},markupDeclarationOpen:function(){var g=this.consume();if(g==="-"&&this.peek()==="-")this.consume(),this.transitionTo("commentStart"),this.delegate.beginComment();else{var L=g.toUpperCase()+this.input.substring(this.index,this.index+6).toUpperCase();L==="DOCTYPE"&&(this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.transitionTo("doctype"),this.delegate.beginDoctype&&this.delegate.beginDoctype())}},doctype:function(){var g=this.consume();s(g)&&this.transitionTo("beforeDoctypeName")},beforeDoctypeName:function(){var g=this.consume();s(g)||(this.transitionTo("doctypeName"),this.delegate.appendToDoctypeName&&this.delegate.appendToDoctypeName(g.toLowerCase()))},doctypeName:function(){var g=this.consume();s(g)?this.transitionTo("afterDoctypeName"):g===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeName&&this.delegate.appendToDoctypeName(g.toLowerCase())},afterDoctypeName:function(){var g=this.consume();if(!s(g))if(g===">")this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData");else{var L=g.toUpperCase()+this.input.substring(this.index,this.index+5).toUpperCase(),j=L.toUpperCase()==="PUBLIC",x=L.toUpperCase()==="SYSTEM";(j||x)&&(this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.consume()),j?this.transitionTo("afterDoctypePublicKeyword"):x&&this.transitionTo("afterDoctypeSystemKeyword")}},afterDoctypePublicKeyword:function(){var g=this.peek();s(g)?(this.transitionTo("beforeDoctypePublicIdentifier"),this.consume()):g==='"'?(this.transitionTo("doctypePublicIdentifierDoubleQuoted"),this.consume()):g==="'"?(this.transitionTo("doctypePublicIdentifierSingleQuoted"),this.consume()):g===">"&&(this.consume(),this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData"))},doctypePublicIdentifierDoubleQuoted:function(){var g=this.consume();g==='"'?this.transitionTo("afterDoctypePublicIdentifier"):g===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypePublicIdentifier&&this.delegate.appendToDoctypePublicIdentifier(g)},doctypePublicIdentifierSingleQuoted:function(){var g=this.consume();g==="'"?this.transitionTo("afterDoctypePublicIdentifier"):g===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypePublicIdentifier&&this.delegate.appendToDoctypePublicIdentifier(g)},afterDoctypePublicIdentifier:function(){var g=this.consume();s(g)?this.transitionTo("betweenDoctypePublicAndSystemIdentifiers"):g===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):g==='"'?this.transitionTo("doctypeSystemIdentifierDoubleQuoted"):g==="'"&&this.transitionTo("doctypeSystemIdentifierSingleQuoted")},betweenDoctypePublicAndSystemIdentifiers:function(){var g=this.consume();s(g)||(g===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):g==='"'?this.transitionTo("doctypeSystemIdentifierDoubleQuoted"):g==="'"&&this.transitionTo("doctypeSystemIdentifierSingleQuoted"))},doctypeSystemIdentifierDoubleQuoted:function(){var g=this.consume();g==='"'?this.transitionTo("afterDoctypeSystemIdentifier"):g===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeSystemIdentifier&&this.delegate.appendToDoctypeSystemIdentifier(g)},doctypeSystemIdentifierSingleQuoted:function(){var g=this.consume();g==="'"?this.transitionTo("afterDoctypeSystemIdentifier"):g===">"?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeSystemIdentifier&&this.delegate.appendToDoctypeSystemIdentifier(g)},afterDoctypeSystemIdentifier:function(){var g=this.consume();s(g)||g===">"&&(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData"))},commentStart:function(){var g=this.consume();g==="-"?this.transitionTo("commentStartDash"):g===">"?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData(g),this.transitionTo("comment"))},commentStartDash:function(){var g=this.consume();g==="-"?this.transitionTo("commentEnd"):g===">"?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData("-"),this.transitionTo("comment"))},comment:function(){var g=this.consume();g==="-"?this.transitionTo("commentEndDash"):this.delegate.appendToCommentData(g)},commentEndDash:function(){var g=this.consume();g==="-"?this.transitionTo("commentEnd"):(this.delegate.appendToCommentData("-"+g),this.transitionTo("comment"))},commentEnd:function(){var g=this.consume();g===">"?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData("--"+g),this.transitionTo("comment"))},tagName:function(){var g=this.consume();s(g)?this.transitionTo("beforeAttributeName"):g==="/"?this.transitionTo("selfClosingStartTag"):g===">"?(this.delegate.finishTag(),this.transitionTo("beforeData")):this.appendToTagName(g)},endTagName:function(){var g=this.consume();s(g)?(this.transitionTo("beforeAttributeName"),this.tagNameBuffer=""):g==="/"?(this.transitionTo("selfClosingStartTag"),this.tagNameBuffer=""):g===">"?(this.delegate.finishTag(),this.transitionTo("beforeData"),this.tagNameBuffer=""):this.appendToTagName(g)},beforeAttributeName:function(){var g=this.peek();if(s(g)){this.consume();return}else g==="/"?(this.transitionTo("selfClosingStartTag"),this.consume()):g===">"?(this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):g==="="?(this.delegate.reportSyntaxError("attribute name cannot start with equals sign"),this.transitionTo("attributeName"),this.delegate.beginAttribute(),this.consume(),this.delegate.appendToAttributeName(g)):(this.transitionTo("attributeName"),this.delegate.beginAttribute())},attributeName:function(){var g=this.peek();s(g)?(this.transitionTo("afterAttributeName"),this.consume()):g==="/"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):g==="="?(this.transitionTo("beforeAttributeValue"),this.consume()):g===">"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):g==='"'||g==="'"||g==="<"?(this.delegate.reportSyntaxError(g+" is not a valid character within attribute names"),this.consume(),this.delegate.appendToAttributeName(g)):(this.consume(),this.delegate.appendToAttributeName(g))},afterAttributeName:function(){var g=this.peek();if(s(g)){this.consume();return}else g==="/"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):g==="="?(this.consume(),this.transitionTo("beforeAttributeValue")):g===">"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.transitionTo("attributeName"),this.delegate.beginAttribute(),this.consume(),this.delegate.appendToAttributeName(g))},beforeAttributeValue:function(){var g=this.peek();s(g)?this.consume():g==='"'?(this.transitionTo("attributeValueDoubleQuoted"),this.delegate.beginAttributeValue(!0),this.consume()):g==="'"?(this.transitionTo("attributeValueSingleQuoted"),this.delegate.beginAttributeValue(!0),this.consume()):g===">"?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.transitionTo("attributeValueUnquoted"),this.delegate.beginAttributeValue(!1),this.consume(),this.delegate.appendToAttributeValue(g))},attributeValueDoubleQuoted:function(){var g=this.consume();g==='"'?(this.delegate.finishAttributeValue(),this.transitionTo("afterAttributeValueQuoted")):g==="&"?this.delegate.appendToAttributeValue(this.consumeCharRef()||"&"):this.delegate.appendToAttributeValue(g)},attributeValueSingleQuoted:function(){var g=this.consume();g==="'"?(this.delegate.finishAttributeValue(),this.transitionTo("afterAttributeValueQuoted")):g==="&"?this.delegate.appendToAttributeValue(this.consumeCharRef()||"&"):this.delegate.appendToAttributeValue(g)},attributeValueUnquoted:function(){var g=this.peek();s(g)?(this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("beforeAttributeName")):g==="/"?(this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):g==="&"?(this.consume(),this.delegate.appendToAttributeValue(this.consumeCharRef()||"&")):g===">"?(this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.consume(),this.delegate.appendToAttributeValue(g))},afterAttributeValueQuoted:function(){var g=this.peek();s(g)?(this.consume(),this.transitionTo("beforeAttributeName")):g==="/"?(this.consume(),this.transitionTo("selfClosingStartTag")):g===">"?(this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):this.transitionTo("beforeAttributeName")},selfClosingStartTag:function(){var g=this.peek();g===">"?(this.consume(),this.delegate.markTagAsSelfClosing(),this.delegate.finishTag(),this.transitionTo("beforeData")):this.transitionTo("beforeAttributeName")},endTagOpen:function(){var g=this.consume();(g==="@"||g===":"||u(g))&&(this.transitionTo("endTagName"),this.tagNameBuffer="",this.delegate.beginEndTag(),this.appendToTagName(g))}},this.reset()}return E.prototype.reset=function(){this.transitionTo("beforeData"),this.input="",this.tagNameBuffer="",this.index=0,this.line=1,this.column=0,this.delegate.reset()},E.prototype.transitionTo=function(v){this.state=v},E.prototype.tokenize=function(v){this.reset(),this.tokenizePart(v),this.tokenizeEOF()},E.prototype.tokenizePart=function(v){for(this.input+=i(v);this.index"||v==="style"&&this.input.substring(this.index,this.index+8)!==""||v==="script"&&this.input.substring(this.index,this.index+9)!=="<\/script>"},E}(),b=function(){function E(v,_){_===void 0&&(_={}),this.options=_,this.token=null,this.startLine=1,this.startColumn=0,this.tokens=[],this.tokenizer=new l(this,v,_.mode),this._currentAttribute=void 0}return E.prototype.tokenize=function(v){return this.tokens=[],this.tokenizer.tokenize(v),this.tokens},E.prototype.tokenizePart=function(v){return this.tokens=[],this.tokenizer.tokenizePart(v),this.tokens},E.prototype.tokenizeEOF=function(){return this.tokens=[],this.tokenizer.tokenizeEOF(),this.tokens[0]},E.prototype.reset=function(){this.token=null,this.startLine=1,this.startColumn=0},E.prototype.current=function(){var v=this.token;if(v===null)throw new Error("token was unexpectedly null");if(arguments.length===0)return v;for(var _=0;_1&&arguments[1]!==void 0?arguments[1]:{entityEncoding:"transformed"};return c?new f.default(o).print(c):""}}}),he=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/syntax-error.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.generateSyntaxError=f;function f(h,d){let{module:c,loc:o}=d,{line:e,column:r}=o.start,a=d.asString(),p=a?` + +| +| ${a.split(` +`).join(` +| `)} +| + +`:"",n=new Error(`${h}: ${p}(error occurred in '${c}' @ line ${e} : column ${r})`);return n.name="SyntaxError",n.location=d,n.code=a,n}}}),Rt=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v1/visitor-keys.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var f=X(),h={Program:(0,f.tuple)("body"),Template:(0,f.tuple)("body"),Block:(0,f.tuple)("body"),MustacheStatement:(0,f.tuple)("path","params","hash"),BlockStatement:(0,f.tuple)("path","params","hash","program","inverse"),ElementModifierStatement:(0,f.tuple)("path","params","hash"),PartialStatement:(0,f.tuple)("name","params","hash"),CommentStatement:(0,f.tuple)(),MustacheCommentStatement:(0,f.tuple)(),ElementNode:(0,f.tuple)("attributes","modifiers","children","comments"),AttrNode:(0,f.tuple)("value"),TextNode:(0,f.tuple)(),ConcatStatement:(0,f.tuple)("parts"),SubExpression:(0,f.tuple)("path","params","hash"),PathExpression:(0,f.tuple)(),PathHead:(0,f.tuple)(),StringLiteral:(0,f.tuple)(),BooleanLiteral:(0,f.tuple)(),NumberLiteral:(0,f.tuple)(),NullLiteral:(0,f.tuple)(),UndefinedLiteral:(0,f.tuple)(),Hash:(0,f.tuple)("pairs"),HashPair:(0,f.tuple)("value"),NamedBlock:(0,f.tuple)("attributes","modifiers","children","comments"),SimpleElement:(0,f.tuple)("attributes","modifiers","children","comments"),Component:(0,f.tuple)("head","attributes","modifiers","children","comments")},d=h;t.default=d}}),Ye=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/traversal/errors.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.cannotRemoveNode=d,t.cannotReplaceNode=c,t.cannotReplaceOrRemoveInKeyHandlerYet=o,t.default=void 0;var f=function(){e.prototype=Object.create(Error.prototype),e.prototype.constructor=e;function e(r,a,p,n){let s=Error.call(this,r);this.key=n,this.message=r,this.node=a,this.parent=p,this.stack=s.stack}return e}(),h=f;t.default=h;function d(e,r,a){return new f("Cannot remove a node unless it is part of an array",e,r,a)}function c(e,r,a){return new f("Cannot replace a node with multiple nodes unless it is part of an array",e,r,a)}function o(e,r){return new f("Replacing and removing in key handlers is not yet supported.",e,null,r)}}}),Qe=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/traversal/path.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var f=class{constructor(d){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;this.node=d,this.parent=c,this.parentKey=o}get parentNode(){return this.parent?this.parent.node:null}parents(){return{[Symbol.iterator]:()=>new h(this)}}};t.default=f;var h=class{constructor(d){this.path=d}next(){return this.path.parent?(this.path=this.path.parent,{done:!1,value:this.path}):{done:!0,value:null}}}}}),Ne=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/traversal/traverse.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.default=E;var f=X(),h=o(Rt()),d=Ye(),c=o(Qe());function o(v){return v&&v.__esModule?v:{default:v}}function e(v){return typeof v=="function"?v:v.enter}function r(v){if(typeof v!="function")return v.exit}function a(v,_){let y=typeof v!="function"?v.keys:void 0;if(y===void 0)return;let g=y[_];return g!==void 0?g:y.All}function p(v,_){if((_==="Template"||_==="Block")&&v.Program)return v.Program;let y=v[_];return y!==void 0?y:v.All}function n(v,_){let{node:y,parent:g,parentKey:L}=_,j=p(v,y.type),x,w;j!==void 0&&(x=e(j),w=r(j));let H;if(x!==void 0&&(H=x(y,_)),H!=null)if(JSON.stringify(y)===JSON.stringify(H))H=void 0;else{if(Array.isArray(H))return l(v,H,g,L),H;{let m=new c.default(H,g,L);return n(v,m)||H}}if(H===void 0){let m=h.default[y.type];for(let C=0;C@\[-\^`\{-~]/;function d(s){let u=c(s);u&&(s.blockParams=u)}function c(s){let u=s.attributes.length,i=[];for(let b=0;b0&&i[i.length-1].charAt(0)==="|")throw(0,f.generateSyntaxError)("Block parameters must be preceded by the `as` keyword, detected block parameters without `as`",s.loc);if(l!==-1&&u>l&&i[l+1].charAt(0)==="|"){let b=i.slice(l).join(" ");if(b.charAt(b.length-1)!=="|"||b.match(/\|/g).length!==2)throw(0,f.generateSyntaxError)("Invalid block parameters syntax, '"+b+"'",s.loc);let P=[];for(let E=l+1;E1&&arguments[1]!==void 0?arguments[1]:new h.EntityParser(h.HTML5NamedCharRefs),e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"precompile";this.elementStack=[],this.currentAttribute=null,this.currentNode=null,this.source=c,this.lines=c.source.split(/(?:\r\n?|\n)/g),this.tokenizer=new h.EventedTokenizer(this,o,e)}offset(){let{line:c,column:o}=this.tokenizer;return this.source.offsetFor(c,o)}pos(c){let{line:o,column:e}=c;return this.source.offsetFor(o,e)}finish(c){return(0,f.assign)({},c,{loc:c.loc.until(this.offset())})}get currentAttr(){return this.currentAttribute}get currentTag(){return this.currentNode}get currentStartTag(){return this.currentNode}get currentEndTag(){return this.currentNode}get currentComment(){return this.currentNode}get currentData(){return this.currentNode}acceptTemplate(c){return this[c.type](c)}acceptNode(c){return this[c.type](c)}currentElement(){return this.elementStack[this.elementStack.length-1]}sourceForNode(c,o){let e=c.loc.start.line-1,r=e-1,a=c.loc.start.column,p=[],n,s,u;for(o?(s=o.loc.end.line-1,u=o.loc.end.column):(s=c.loc.end.line-1,u=c.loc.end.column);ri.acceptNode(_)):[],E=P.length>0?P[P.length-1].loc:b.loc,v=l.hash?i.Hash(l.hash):{type:"Hash",pairs:[],loc:i.source.spanFor(E).collapse("end")};return{path:b,params:P,hash:v}}function u(i,l){let{path:b,params:P,hash:E,loc:v}=l;if((0,c.isHBSLiteral)(b)){let y=`{{${(0,c.printLiteral)(b)}}}`,g=`<${i.name} ... ${y} ...`;throw(0,d.generateSyntaxError)(`In ${g}, ${y} is not a valid modifier`,l.loc)}let _=e.default.elementModifier({path:b,params:P,hash:E,loc:v});i.modifiers.push(_)}}}),Fe=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser/tokenizer-event-handlers.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.preprocess=_,t.TokenizerEventHandlers=void 0;var f=X(),h=It(),d=Ke(),c=b(We()),o=Te(),e=De(),r=ue(),a=he(),p=b(Ne()),n=b(Je()),s=ye(),u=b(Le()),i=b(ke()),l=xt();function b(y){return y&&y.__esModule?y:{default:y}}var P=class extends l.HandlebarsNodeVisitors{constructor(){super(...arguments),this.tagOpenLine=0,this.tagOpenColumn=0}reset(){this.currentNode=null}beginComment(){this.currentNode=u.default.comment("",this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn))}appendToCommentData(y){this.currentComment.value+=y}finishComment(){(0,s.appendChild)(this.currentElement(),this.finish(this.currentComment))}beginData(){this.currentNode=u.default.text({chars:"",loc:this.offset().collapsed()})}appendToData(y){this.currentData.chars+=y}finishData(){this.currentData.loc=this.currentData.loc.withEnd(this.offset()),(0,s.appendChild)(this.currentElement(),this.currentData)}tagOpen(){this.tagOpenLine=this.tokenizer.line,this.tagOpenColumn=this.tokenizer.column}beginStartTag(){this.currentNode={type:"StartTag",name:"",attributes:[],modifiers:[],comments:[],selfClosing:!1,loc:this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn)}}beginEndTag(){this.currentNode={type:"EndTag",name:"",attributes:[],modifiers:[],comments:[],selfClosing:!1,loc:this.source.offsetFor(this.tagOpenLine,this.tagOpenColumn)}}finishTag(){let y=this.finish(this.currentTag);if(y.type==="StartTag"){if(this.finishStartTag(),y.name===":")throw(0,a.generateSyntaxError)("Invalid named block named detected, you may have created a named block without a name, or you may have began your name with a number. Named blocks must have names that are at least one character long, and begin with a lower case letter",this.source.spanFor({start:this.currentTag.loc.toJSON(),end:this.offset().toJSON()}));(o.voidMap[y.name]||y.selfClosing)&&this.finishEndTag(!0)}else y.type==="EndTag"&&this.finishEndTag(!1)}finishStartTag(){let{name:y,attributes:g,modifiers:L,comments:j,selfClosing:x,loc:w}=this.finish(this.currentStartTag),H=u.default.element({tag:y,selfClosing:x,attrs:g,modifiers:L,comments:j,children:[],blockParams:[],loc:w});this.elementStack.push(H)}finishEndTag(y){let g=this.finish(this.currentTag),L=this.elementStack.pop(),j=this.currentElement();this.validateEndTag(g,L,y),L.loc=L.loc.withEnd(this.offset()),(0,s.parseElementBlockParams)(L),(0,s.appendChild)(j,L)}markTagAsSelfClosing(){this.currentTag.selfClosing=!0}appendToTagName(y){this.currentTag.name+=y}beginAttribute(){let y=this.offset();this.currentAttribute={name:"",parts:[],currentPart:null,isQuoted:!1,isDynamic:!1,start:y,valueSpan:y.collapsed()}}appendToAttributeName(y){this.currentAttr.name+=y}beginAttributeValue(y){this.currentAttr.isQuoted=y,this.startTextPart(),this.currentAttr.valueSpan=this.offset().collapsed()}appendToAttributeValue(y){let g=this.currentAttr.parts,L=g[g.length-1],j=this.currentAttr.currentPart;if(j)j.chars+=y,j.loc=j.loc.withEnd(this.offset());else{let x=this.offset();y===` +`?x=L?L.loc.getEnd():this.currentAttr.valueSpan.getStart():x=x.move(-1),this.currentAttr.currentPart=u.default.text({chars:y,loc:x.collapsed()})}}finishAttributeValue(){this.finalizeTextPart();let y=this.currentTag,g=this.offset();if(y.type==="EndTag")throw(0,a.generateSyntaxError)("Invalid end tag: closing tag must not have attributes",this.source.spanFor({start:y.loc.toJSON(),end:g.toJSON()}));let{name:L,parts:j,start:x,isQuoted:w,isDynamic:H,valueSpan:m}=this.currentAttr,C=this.assembleAttributeValue(j,w,H,x.until(g));C.loc=m.withEnd(g);let S=u.default.attr({name:L,value:C,loc:x.until(g)});this.currentStartTag.attributes.push(S)}reportSyntaxError(y){throw(0,a.generateSyntaxError)(y,this.offset().collapsed())}assembleConcatenatedValue(y){for(let j=0;j elements do not need end tags. You should remove it`:g.tag===void 0?j=`Closing tag without an open tag`:g.tag!==y.name&&(j=`Closing tag did not match last open tag <${g.tag}> (on line ${g.loc.startPosition.line})`),j)throw(0,a.generateSyntaxError)(j,y.loc)}assembleAttributeValue(y,g,L,j){if(L){if(g)return this.assembleConcatenatedValue(y);if(y.length===1||y.length===2&&y[1].type==="TextNode"&&y[1].chars==="/")return y[0];throw(0,a.generateSyntaxError)("An unquoted attribute value must be a string or a mustache, preceded by whitespace or a '=' character, and followed by whitespace, a '>' character, or '/>'",j)}else return y.length>0?y[0]:u.default.text({chars:"",loc:j})}};t.TokenizerEventHandlers=P;var E={parse:_,builders:i.default,print:c.default,traverse:p.default,Walker:n.default},v=class extends d.EntityParser{constructor(){super({})}parse(){}};function _(y){let g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var L,j,x;let w=g.mode||"precompile",H,m;typeof y=="string"?(H=new e.Source(y,(L=g.meta)===null||L===void 0?void 0:L.moduleName),w==="codemod"?m=(0,h.parseWithoutProcessing)(y,g.parseOptions):m=(0,h.parse)(y,g.parseOptions)):y instanceof e.Source?(H=y,w==="codemod"?m=(0,h.parseWithoutProcessing)(y.source,g.parseOptions):m=(0,h.parse)(y.source,g.parseOptions)):(H=new e.Source("",(j=g.meta)===null||j===void 0?void 0:j.moduleName),m=y);let C;w==="codemod"&&(C=new v);let S=r.SourceSpan.forCharPositions(H,0,H.source.length);m.loc={source:"(program)",start:S.startPosition,end:S.endPosition};let R=new P(H,C,w).acceptTemplate(m);if(g.strictMode&&(R.blockParams=(x=g.locals)!==null&&x!==void 0?x:[]),g&&g.plugins&&g.plugins.ast)for(let M=0,V=g.plugins.ast.length;Mthis.allocate(a));return new o(this,e,r)}};t.SymbolTable=d;var c=class extends d{constructor(e,r){super(),this.templateLocals=e,this.customizeComponentName=r,this.symbols=[],this.upvars=[],this.size=1,this.named=(0,f.dict)(),this.blocks=(0,f.dict)(),this.usedTemplateLocals=[],this._hasEval=!1}getUsedTemplateLocals(){return this.usedTemplateLocals}setHasEval(){this._hasEval=!0}get hasEval(){return this._hasEval}has(e){return this.templateLocals.indexOf(e)!==-1}get(e){let r=this.usedTemplateLocals.indexOf(e);return r!==-1?[r,!0]:(r=this.usedTemplateLocals.length,this.usedTemplateLocals.push(e),[r,!0])}getLocalsMap(){return(0,f.dict)()}getEvalInfo(){let e=this.getLocalsMap();return Object.keys(e).map(r=>e[r])}allocateFree(e,r){r.resolution()===39&&r.isAngleBracket&&(0,h.isUpperCase)(e)&&(e=this.customizeComponentName(e));let a=this.upvars.indexOf(e);return a!==-1||(a=this.upvars.length,this.upvars.push(e)),a}allocateNamed(e){let r=this.named[e];return r||(r=this.named[e]=this.allocate(e)),r}allocateBlock(e){e==="inverse"&&(e="else");let r=this.blocks[e];return r||(r=this.blocks[e]=this.allocate(`&${e}`)),r}allocate(e){return this.symbols.push(e),this.size++}};t.ProgramSymbolTable=c;var o=class extends d{constructor(e,r,a){super(),this.parent=e,this.symbols=r,this.slots=a}get locals(){return this.symbols}has(e){return this.symbols.indexOf(e)!==-1||this.parent.has(e)}get(e){let r=this.symbols.indexOf(e);return r===-1?this.parent.get(e):[this.slots[r],!1]}getLocalsMap(){let e=this.parent.getLocalsMap();return this.symbols.forEach(r=>e[r]=this.get(r)[0]),e}getEvalInfo(){let e=this.getLocalsMap();return Object.keys(e).map(r=>e[r])}setHasEval(){this.parent.setHasEval()}allocateFree(e,r){return this.parent.allocateFree(e,r)}allocateNamed(e){return this.parent.allocateNamed(e)}allocateBlock(e){return this.parent.allocateBlock(e)}allocate(e){return this.parent.allocate(e)}};t.BlockSymbolTable=o}}),jt=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/builders.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.BuildElement=t.Builder=void 0;var f=X(),h=le(),d=ce(),c=e(ve());function o(){if(typeof WeakMap!="function")return null;var n=new WeakMap;return o=function(){return n},n}function e(n){if(n&&n.__esModule)return n;if(n===null||typeof n!="object"&&typeof n!="function")return{default:n};var s=o();if(s&&s.has(n))return s.get(n);var u={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var l in n)if(Object.prototype.hasOwnProperty.call(n,l)){var b=i?Object.getOwnPropertyDescriptor(n,l):null;b&&(b.get||b.set)?Object.defineProperty(u,l,b):u[l]=n[l]}return u.default=n,s&&s.set(n,u),u}var r=function(n,s){var u={};for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&s.indexOf(i)<0&&(u[i]=n[i]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var l=0,i=Object.getOwnPropertySymbols(n);l0||i.hash.pairs.length>0}}}),Ht=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/v2-a/normalize.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.normalize=P,t.BlockContext=void 0;var f=X(),h=b(Te()),d=Fe(),c=le(),o=ce(),e=Xe(),r=he(),a=ye(),p=b(Le()),n=l(ve()),s=jt(),u=Mt();function i(){if(typeof WeakMap!="function")return null;var m=new WeakMap;return i=function(){return m},m}function l(m){if(m&&m.__esModule)return m;if(m===null||typeof m!="object"&&typeof m!="function")return{default:m};var C=i();if(C&&C.has(m))return C.get(m);var S={},R=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var M in m)if(Object.prototype.hasOwnProperty.call(m,M)){var V=R?Object.getOwnPropertyDescriptor(m,M):null;V&&(V.get||V.set)?Object.defineProperty(S,M,V):S[M]=m[M]}return S.default=m,C&&C.set(m,S),S}function b(m){return m&&m.__esModule?m:{default:m}}function P(m){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var S;let R=(0,d.preprocess)(m,C),M=(0,f.assign)({strictMode:!1,locals:[]},C),V=e.SymbolTable.top(M.locals,(S=C.customizeComponentName)!==null&&S!==void 0?S:W=>W),G=new E(m,M,V),K=new _(G),U=new L(G.loc(R.loc),R.body.map(W=>K.normalize(W)),G).assertTemplate(V),Z=V.getUsedTemplateLocals();return[U,Z]}var E=class{constructor(m,C,S){this.source=m,this.options=C,this.table=S,this.builder=new s.Builder}get strict(){return this.options.strictMode||!1}loc(m){return this.source.spanFor(m)}resolutionFor(m,C){if(this.strict)return{resolution:n.STRICT_RESOLUTION};if(this.isFreeVar(m)){let S=C(m);return S===null?{resolution:"error",path:w(m),head:H(m)}:{resolution:S}}else return{resolution:n.STRICT_RESOLUTION}}isFreeVar(m){return m.type==="PathExpression"?m.head.type!=="VarHead"?!1:!this.table.has(m.head.name):m.path.type==="PathExpression"?this.isFreeVar(m.path):!1}hasBinding(m){return this.table.has(m)}child(m){return new E(this.source,this.options,this.table.child(m))}customizeComponentName(m){return this.options.customizeComponentName?this.options.customizeComponentName(m):m}};t.BlockContext=E;var v=class{constructor(m){this.block=m}normalize(m,C){switch(m.type){case"NullLiteral":case"BooleanLiteral":case"NumberLiteral":case"StringLiteral":case"UndefinedLiteral":return this.block.builder.literal(m.value,this.block.loc(m.loc));case"PathExpression":return this.path(m,C);case"SubExpression":{let S=this.block.resolutionFor(m,u.SexpSyntaxContext);if(S.resolution==="error")throw(0,r.generateSyntaxError)(`You attempted to invoke a path (\`${S.path}\`) but ${S.head} was not in scope`,m.loc);return this.block.builder.sexp(this.callParts(m,S.resolution),this.block.loc(m.loc))}}}path(m,C){let S=this.block.loc(m.head.loc),R=[],M=S;for(let V of m.tail)M=M.sliceStartChars({chars:V.length,skipStart:1}),R.push(new c.SourceSlice({loc:M,chars:V}));return this.block.builder.path(this.ref(m.head,C),R,this.block.loc(m.loc))}callParts(m,C){let{path:S,params:R,hash:M}=m,V=this.normalize(S,C),G=R.map(N=>this.normalize(N,n.ARGUMENT_RESOLUTION)),K=o.SpanList.range(G,V.loc.collapse("end")),U=this.block.loc(M.loc),Z=o.SpanList.range([K,U]),W=this.block.builder.positional(R.map(N=>this.normalize(N,n.ARGUMENT_RESOLUTION)),K),T=this.block.builder.named(M.pairs.map(N=>this.namedArgument(N)),this.block.loc(M.loc));return{callee:V,args:this.block.builder.args(W,T,Z)}}namedArgument(m){let S=this.block.loc(m.loc).sliceStartChars({chars:m.key.length});return this.block.builder.namedArgument(new c.SourceSlice({chars:m.key,loc:S}),this.normalize(m.value,n.ARGUMENT_RESOLUTION))}ref(m,C){let{block:S}=this,{builder:R,table:M}=S,V=S.loc(m.loc);switch(m.type){case"ThisHead":return R.self(V);case"AtHead":{let G=M.allocateNamed(m.name);return R.at(m.name,G,V)}case"VarHead":if(S.hasBinding(m.name)){let[G,K]=M.get(m.name);return S.builder.localVar(m.name,G,K,V)}else{let G=S.strict?n.STRICT_RESOLUTION:C,K=S.table.allocateFree(m.name,G);return S.builder.freeVar({name:m.name,context:G,symbol:K,loc:V})}}}},_=class{constructor(m){this.block=m}normalize(m){switch(m.type){case"PartialStatement":throw new Error("Handlebars partial syntax ({{> ...}}) is not allowed in Glimmer");case"BlockStatement":return this.BlockStatement(m);case"ElementNode":return new y(this.block).ElementNode(m);case"MustacheStatement":return this.MustacheStatement(m);case"MustacheCommentStatement":return this.MustacheCommentStatement(m);case"CommentStatement":{let C=this.block.loc(m.loc);return new n.HtmlComment({loc:C,text:C.slice({skipStart:4,skipEnd:3}).toSlice(m.value)})}case"TextNode":return new n.HtmlText({loc:this.block.loc(m.loc),chars:m.chars})}}MustacheCommentStatement(m){let C=this.block.loc(m.loc),S;return C.asString().slice(0,5)==="{{!--"?S=C.slice({skipStart:5,skipEnd:4}):S=C.slice({skipStart:3,skipEnd:2}),new n.GlimmerComment({loc:C,text:S.toSlice(m.value)})}MustacheStatement(m){let{escaped:C}=m,S=this.block.loc(m.loc),R=this.expr.callParts({path:m.path,params:m.params,hash:m.hash},(0,u.AppendSyntaxContext)(m)),M=R.args.isEmpty()?R.callee:this.block.builder.sexp(R,S);return this.block.builder.append({table:this.block.table,trusting:!C,value:M},S)}BlockStatement(m){let{program:C,inverse:S}=m,R=this.block.loc(m.loc),M=this.block.resolutionFor(m,u.BlockSyntaxContext);if(M.resolution==="error")throw(0,r.generateSyntaxError)(`You attempted to invoke a path (\`{{#${M.path}}}\`) but ${M.head} was not in scope`,R);let V=this.expr.callParts(m,M.resolution);return this.block.builder.blockStatement((0,f.assign)({symbols:this.block.table,program:this.Block(C),inverse:S?this.Block(S):null},V),R)}Block(m){let{body:C,loc:S,blockParams:R}=m,M=this.block.child(R),V=new _(M);return new j(this.block.loc(S),C.map(G=>V.normalize(G)),this.block).assertBlock(M.table)}get expr(){return new v(this.block)}},y=class{constructor(m){this.ctx=m}ElementNode(m){let{tag:C,selfClosing:S,comments:R}=m,M=this.ctx.loc(m.loc),[V,...G]=C.split("."),K=this.classifyTag(V,G,m.loc),U=m.attributes.filter(A=>A.name[0]!=="@").map(A=>this.attr(A)),Z=m.attributes.filter(A=>A.name[0]==="@").map(A=>this.arg(A)),W=m.modifiers.map(A=>this.modifier(A)),T=this.ctx.child(m.blockParams),N=new _(T),k=m.children.map(A=>N.normalize(A)),B=this.ctx.builder.element({selfClosing:S,attrs:U,componentArgs:Z,modifiers:W,comments:R.map(A=>new _(this.ctx).MustacheCommentStatement(A))}),O=new x(B,M,k,this.ctx),z=this.ctx.loc(m.loc).sliceStartChars({chars:C.length,skipStart:1});if(K==="ElementHead")return C[0]===":"?O.assertNamedBlock(z.slice({skipStart:1}).toSlice(C.slice(1)),T.table):O.assertElement(z.toSlice(C),m.blockParams.length>0);if(m.selfClosing)return B.selfClosingComponent(K,M);{let A=O.assertComponent(C,T.table,m.blockParams.length>0);return B.componentWithNamedBlocks(K,A,M)}}modifier(m){let C=this.ctx.resolutionFor(m,u.ModifierSyntaxContext);if(C.resolution==="error")throw(0,r.generateSyntaxError)(`You attempted to invoke a path (\`{{#${C.path}}}\`) as a modifier, but ${C.head} was not in scope. Try adding \`this\` to the beginning of the path`,m.loc);let S=this.expr.callParts(m,C.resolution);return this.ctx.builder.modifier(S,this.ctx.loc(m.loc))}mustacheAttr(m){let C=this.ctx.builder.sexp(this.expr.callParts(m,(0,u.AttrValueSyntaxContext)(m)),this.ctx.loc(m.loc));return C.args.isEmpty()?C.callee:C}attrPart(m){switch(m.type){case"MustacheStatement":return{expr:this.mustacheAttr(m),trusting:!m.escaped};case"TextNode":return{expr:this.ctx.builder.literal(m.chars,this.ctx.loc(m.loc)),trusting:!0}}}attrValue(m){switch(m.type){case"ConcatStatement":{let C=m.parts.map(S=>this.attrPart(S).expr);return{expr:this.ctx.builder.interpolate(C,this.ctx.loc(m.loc)),trusting:!1}}default:return this.attrPart(m)}}attr(m){if(m.name==="...attributes")return this.ctx.builder.splatAttr(this.ctx.table.allocateBlock("attrs"),this.ctx.loc(m.loc));let C=this.ctx.loc(m.loc),S=C.sliceStartChars({chars:m.name.length}).toSlice(m.name),R=this.attrValue(m.value);return this.ctx.builder.attr({name:S,value:R.expr,trusting:R.trusting},C)}maybeDeprecatedCall(m,C){if(this.ctx.strict||C.type!=="MustacheStatement")return null;let{path:S}=C;if(S.type!=="PathExpression"||S.head.type!=="VarHead")return null;let{name:R}=S.head;if(R==="has-block"||R==="has-block-params"||this.ctx.hasBinding(R)||S.tail.length!==0||C.params.length!==0||C.hash.pairs.length!==0)return null;let M=n.LooseModeResolution.attr(),V=this.ctx.builder.freeVar({name:R,context:M,symbol:this.ctx.table.allocateFree(R,M),loc:S.loc});return{expr:this.ctx.builder.deprecatedCall(m,V,C.loc),trusting:!1}}arg(m){let C=this.ctx.loc(m.loc),S=C.sliceStartChars({chars:m.name.length}).toSlice(m.name),R=this.maybeDeprecatedCall(S,m.value)||this.attrValue(m.value);return this.ctx.builder.arg({name:S,value:R.expr,trusting:R.trusting},C)}classifyTag(m,C,S){let R=(0,a.isUpperCase)(m),M=m[0]==="@"||m==="this"||this.ctx.hasBinding(m);if(this.ctx.strict&&!M){if(R)throw(0,r.generateSyntaxError)(`Attempted to invoke a component that was not in scope in a strict mode template, \`<${m}>\`. If you wanted to create an element with that name, convert it to lowercase - \`<${m.toLowerCase()}>\``,S);return"ElementHead"}let V=M||R,G=S.sliceStartChars({skipStart:1,chars:m.length}),K=C.reduce((W,T)=>W+1+T.length,0),U=G.getEnd().move(K),Z=G.withEnd(U);if(V){let W=p.default.path({head:p.default.head(m,G),tail:C,loc:Z}),T=this.ctx.resolutionFor(W,u.ComponentSyntaxContext);if(T.resolution==="error")throw(0,r.generateSyntaxError)(`You attempted to invoke a path (\`<${T.path}>\`) but ${T.head} was not in scope`,S);return new v(this.ctx).normalize(W,T.resolution)}if(C.length>0)throw(0,r.generateSyntaxError)(`You used ${m}.${C.join(".")} as a tag name, but ${m} is not in scope`,S);return"ElementHead"}get expr(){return new v(this.ctx)}},g=class{constructor(m,C,S){this.loc=m,this.children=C,this.block=S,this.namedBlocks=C.filter(R=>R instanceof n.NamedBlock),this.hasSemanticContent=Boolean(C.filter(R=>{if(R instanceof n.NamedBlock)return!1;switch(R.type){case"GlimmerComment":case"HtmlComment":return!1;case"HtmlText":return!/^\s*$/.exec(R.chars);default:return!0}}).length),this.nonBlockChildren=C.filter(R=>!(R instanceof n.NamedBlock))}},L=class extends g{assertTemplate(m){if((0,f.isPresent)(this.namedBlocks))throw(0,r.generateSyntaxError)("Unexpected named block at the top-level of a template",this.loc);return this.block.builder.template(m,this.nonBlockChildren,this.block.loc(this.loc))}},j=class extends g{assertBlock(m){if((0,f.isPresent)(this.namedBlocks))throw(0,r.generateSyntaxError)("Unexpected named block nested in a normal block",this.loc);return this.block.builder.block(m,this.nonBlockChildren,this.loc)}},x=class extends g{constructor(m,C,S,R){super(C,S,R),this.el=m}assertNamedBlock(m,C){if(this.el.base.selfClosing)throw(0,r.generateSyntaxError)(`<:${m.chars}/> is not a valid named block: named blocks cannot be self-closing`,this.loc);if((0,f.isPresent)(this.namedBlocks))throw(0,r.generateSyntaxError)(`Unexpected named block inside <:${m.chars}> named block: named blocks cannot contain nested named blocks`,this.loc);if(!(0,a.isLowerCase)(m.chars))throw(0,r.generateSyntaxError)(`<:${m.chars}> is not a valid named block, and named blocks must begin with a lowercase letter`,this.loc);if(this.el.base.attrs.length>0||this.el.base.componentArgs.length>0||this.el.base.modifiers.length>0)throw(0,r.generateSyntaxError)(`named block <:${m.chars}> cannot have attributes, arguments, or modifiers`,this.loc);let S=o.SpanList.range(this.nonBlockChildren,this.loc);return this.block.builder.namedBlock(m,this.block.builder.block(C,this.nonBlockChildren,S),this.loc)}assertElement(m,C){if(C)throw(0,r.generateSyntaxError)(`Unexpected block params in <${m}>: simple elements cannot have block params`,this.loc);if((0,f.isPresent)(this.namedBlocks)){let S=this.namedBlocks.map(R=>R.name);if(S.length===1)throw(0,r.generateSyntaxError)(`Unexpected named block <:foo> inside <${m.chars}> HTML element`,this.loc);{let R=S.map(M=>`<:${M.chars}>`).join(", ");throw(0,r.generateSyntaxError)(`Unexpected named blocks inside <${m.chars}> HTML element (${R})`,this.loc)}}return this.el.simple(m,this.nonBlockChildren,this.loc)}assertComponent(m,C,S){if((0,f.isPresent)(this.namedBlocks)&&this.hasSemanticContent)throw(0,r.generateSyntaxError)(`Unexpected content inside <${m}> component invocation: when using named blocks, the tag cannot contain other content`,this.loc);if((0,f.isPresent)(this.namedBlocks)){if(S)throw(0,r.generateSyntaxError)(`Unexpected block params list on <${m}> component invocation: when passing named blocks, the invocation tag cannot take block params`,this.loc);let R=new Set;for(let M of this.namedBlocks){let V=M.name.chars;if(R.has(V))throw(0,r.generateSyntaxError)(`Component had two named blocks with the same name, \`<:${V}>\`. Only one block with a given name may be passed`,this.loc);if(V==="inverse"&&R.has("else")||V==="else"&&R.has("inverse"))throw(0,r.generateSyntaxError)("Component has both <:else> and <:inverse> block. <:inverse> is an alias for <:else>",this.loc);R.add(V)}return this.namedBlocks}else return[this.block.builder.namedBlock(c.SourceSlice.synthetic("default"),this.block.builder.block(C,this.nonBlockChildren,this.loc),this.loc)]}};function w(m){return m.type!=="PathExpression"&&m.path.type==="PathExpression"?w(m.path):new h.default({entityEncoding:"raw"}).print(m)}function H(m){if(m.type==="PathExpression")switch(m.head.type){case"AtHead":case"VarHead":return m.head.name;case"ThisHead":return"this"}else return m.path.type==="PathExpression"?H(m.path):new h.default({entityEncoding:"raw"}).print(m)}}}),Ze=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/keywords.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.isKeyword=f,t.KEYWORDS_TYPES=void 0;function f(d){return d in h}var h={component:["Call","Append","Block"],debugger:["Append"],"each-in":["Block"],each:["Block"],"has-block-params":["Call","Append"],"has-block":["Call","Append"],helper:["Call","Append"],if:["Call","Append","Block"],"in-element":["Block"],let:["Block"],"link-to":["Append","Block"],log:["Call","Append"],modifier:["Call"],mount:["Append"],mut:["Call","Append"],outlet:["Append"],"query-params":["Call"],readonly:["Call","Append"],unbound:["Call","Append"],unless:["Call","Append","Block"],with:["Block"],yield:["Append"]};t.KEYWORDS_TYPES=h}}),Vt=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/get-template-locals.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),t.getTemplateLocals=r;var f=Ze(),h=Fe(),d=c(Ne());function c(a){return a&&a.__esModule?a:{default:a}}function o(a,p,n){if(a.type==="PathExpression"){if(a.head.type==="AtHead"||a.head.type==="ThisHead")return;let s=a.head.name;if(p.indexOf(s)===-1)return s}else if(a.type==="ElementNode"){let{tag:s}=a,u=s.charAt(0);return u===":"||u==="@"||!n.includeHtmlElements&&s.indexOf(".")===-1&&s.toLowerCase()===s||s.substr(0,5)==="this."||p.indexOf(s)!==-1?void 0:s}}function e(a,p,n,s){let u=o(p,n,s);(Array.isArray(u)?u:[u]).forEach(i=>{i!==void 0&&i[0]!=="@"&&a.add(i.split(".")[0])})}function r(a){let p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{includeHtmlElements:!1,includeKeywords:!1},n=(0,h.preprocess)(a),s=new Set,u=[];(0,d.default)(n,{Block:{enter(l){let{blockParams:b}=l;b.forEach(P=>{u.push(P)})},exit(l){let{blockParams:b}=l;b.forEach(()=>{u.pop()})}},ElementNode:{enter(l){l.blockParams.forEach(b=>{u.push(b)}),e(s,l,u,p)},exit(l){let{blockParams:b}=l;b.forEach(()=>{u.pop()})}},PathExpression(l){e(s,l,u,p)}});let i=[];return s.forEach(l=>i.push(l)),p!=null&&p.includeKeywords||(i=i.filter(l=>!(0,f.isKeyword)(l))),i}}}),Ut=I({"node_modules/@glimmer/syntax/dist/commonjs/es2017/index.js"(t){"use strict";F(),Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Source",{enumerable:!0,get:function(){return f.Source}}),Object.defineProperty(t,"builders",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"normalize",{enumerable:!0,get:function(){return o.normalize}}),Object.defineProperty(t,"SymbolTable",{enumerable:!0,get:function(){return e.SymbolTable}}),Object.defineProperty(t,"BlockSymbolTable",{enumerable:!0,get:function(){return e.BlockSymbolTable}}),Object.defineProperty(t,"ProgramSymbolTable",{enumerable:!0,get:function(){return e.ProgramSymbolTable}}),Object.defineProperty(t,"generateSyntaxError",{enumerable:!0,get:function(){return r.generateSyntaxError}}),Object.defineProperty(t,"preprocess",{enumerable:!0,get:function(){return a.preprocess}}),Object.defineProperty(t,"print",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"sortByLoc",{enumerable:!0,get:function(){return n.sortByLoc}}),Object.defineProperty(t,"Walker",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"Path",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"traverse",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"cannotRemoveNode",{enumerable:!0,get:function(){return i.cannotRemoveNode}}),Object.defineProperty(t,"cannotReplaceNode",{enumerable:!0,get:function(){return i.cannotReplaceNode}}),Object.defineProperty(t,"WalkerPath",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"isKeyword",{enumerable:!0,get:function(){return b.isKeyword}}),Object.defineProperty(t,"KEYWORDS_TYPES",{enumerable:!0,get:function(){return b.KEYWORDS_TYPES}}),Object.defineProperty(t,"getTemplateLocals",{enumerable:!0,get:function(){return P.getTemplateLocals}}),Object.defineProperty(t,"SourceSlice",{enumerable:!0,get:function(){return E.SourceSlice}}),Object.defineProperty(t,"SourceSpan",{enumerable:!0,get:function(){return v.SourceSpan}}),Object.defineProperty(t,"SpanList",{enumerable:!0,get:function(){return _.SpanList}}),Object.defineProperty(t,"maybeLoc",{enumerable:!0,get:function(){return _.maybeLoc}}),Object.defineProperty(t,"loc",{enumerable:!0,get:function(){return _.loc}}),Object.defineProperty(t,"hasSpan",{enumerable:!0,get:function(){return _.hasSpan}}),Object.defineProperty(t,"node",{enumerable:!0,get:function(){return y.node}}),t.ASTv2=t.AST=t.ASTv1=void 0;var f=De(),h=j(ke()),d=L(Ct());t.ASTv1=d,t.AST=d;var c=L(ve());t.ASTv2=c;var o=Ht(),e=Xe(),r=he(),a=Fe(),p=j(We()),n=Ue(),s=j(Je()),u=j(Ne()),i=Ye(),l=j(Qe()),b=Ze(),P=Vt(),E=le(),v=ue(),_=ce(),y=ne();function g(){if(typeof WeakMap!="function")return null;var x=new WeakMap;return g=function(){return x},x}function L(x){if(x&&x.__esModule)return x;if(x===null||typeof x!="object"&&typeof x!="function")return{default:x};var w=g();if(w&&w.has(x))return w.get(x);var H={},m=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in x)if(Object.prototype.hasOwnProperty.call(x,C)){var S=m?Object.getOwnPropertyDescriptor(x,C):null;S&&(S.get||S.set)?Object.defineProperty(H,C,S):H[C]=x[C]}return H.default=x,w&&w.set(x,H),H}function j(x){return x&&x.__esModule?x:{default:x}}}});F();var{LinesAndColumns:zt}=at(),Gt=ut(),{locStart:Kt,locEnd:Wt}=ot();function Yt(){return{name:"addBackslash",visitor:{All(t){var f;let h=(f=t.children)!==null&&f!==void 0?f:t.body;if(h)for(let d=0;d{let{line:c,column:o}=d;return f.indexForLocation({line:c-1,column:o})};return()=>({name:"addOffset",visitor:{All(d){let{start:c,end:o}=d.loc;c.offset=h(c),o.offset=h(o)}}})}function Jt(t){let{preprocess:f}=Ut(),h;try{h=f(t,{mode:"codemod",plugins:{ast:[Yt,Qt(t)]}})}catch(d){let c=Xt(d);throw c?Gt(d.message,c):d}return h}function Xt(t){let{location:f,hash:h}=t;if(f){let{start:d,end:c}=f;return typeof c.line!="number"?{start:d}:f}if(h){let{loc:{last_line:d,last_column:c}}=h;return{start:{line:d,column:c+1}}}}$e.exports={parsers:{glimmer:{parse:Jt,astFormat:"glimmer",locStart:Kt,locEnd:Wt}}}});return Zt();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-graphql.js b/node_modules/prettier/parser-graphql.js new file mode 100644 index 0000000..c64f682 --- /dev/null +++ b/node_modules/prettier/parser-graphql.js @@ -0,0 +1,15 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.graphql=e()}})(function(){"use strict";var oe=(a,d)=>()=>(d||a((d={exports:{}}).exports,d),d.exports);var be=oe((Ce,ae)=>{var H=Object.getOwnPropertyNames,se=(a,d)=>function(){return a&&(d=(0,a[H(a)[0]])(a=0)),d},L=(a,d)=>function(){return d||(0,a[H(a)[0]])((d={exports:{}}).exports,d),d.exports},K=se({""(){}}),ce=L({"src/common/parser-create-error.js"(a,d){"use strict";K();function i(c,r){let _=new SyntaxError(c+" ("+r.start.line+":"+r.start.column+")");return _.loc=r,_}d.exports=i}}),ue=L({"src/utils/try-combinations.js"(a,d){"use strict";K();function i(){let c;for(var r=arguments.length,_=new Array(r),E=0;E120){for(var t=Math.floor(s/80),u=s%80,y=[],f=0;f"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function e(f){return Function.toString.call(f).indexOf("[native code]")!==-1}function n(f,m){return n=Object.setPrototypeOf||function(h,l){return h.__proto__=l,h},n(f,m)}function t(f){return t=Object.setPrototypeOf?Object.getPrototypeOf:function(o){return o.__proto__||Object.getPrototypeOf(o)},t(f)}var u=function(f){N(o,f);var m=g(o);function o(h,l,T,S,x,b,M){var U,V,q,G,C;k(this,o),C=m.call(this,h);var R=Array.isArray(l)?l.length!==0?l:void 0:l?[l]:void 0,Y=T;if(!Y&&R){var J;Y=(J=R[0].loc)===null||J===void 0?void 0:J.source}var F=S;!F&&R&&(F=R.reduce(function(w,P){return P.loc&&w.push(P.loc.start),w},[])),F&&F.length===0&&(F=void 0);var B;S&&T?B=S.map(function(w){return(0,r.getLocation)(T,w)}):R&&(B=R.reduce(function(w,P){return P.loc&&w.push((0,r.getLocation)(P.loc.source,P.loc.start)),w},[]));var j=M;if(j==null&&b!=null){var Q=b.extensions;(0,i.default)(Q)&&(j=Q)}return Object.defineProperties(v(C),{name:{value:"GraphQLError"},message:{value:h,enumerable:!0,writable:!0},locations:{value:(U=B)!==null&&U!==void 0?U:void 0,enumerable:B!=null},path:{value:x!=null?x:void 0,enumerable:x!=null},nodes:{value:R!=null?R:void 0},source:{value:(V=Y)!==null&&V!==void 0?V:void 0},positions:{value:(q=F)!==null&&q!==void 0?q:void 0},originalError:{value:b},extensions:{value:(G=j)!==null&&G!==void 0?G:void 0,enumerable:j!=null}}),b!=null&&b.stack?(Object.defineProperty(v(C),"stack",{value:b.stack,writable:!0,configurable:!0}),D(C)):(Error.captureStackTrace?Error.captureStackTrace(v(C),o):Object.defineProperty(v(C),"stack",{value:Error().stack,writable:!0,configurable:!0}),C)}return A(o,[{key:"toString",value:function(){return y(this)}},{key:c.SYMBOL_TO_STRING_TAG,get:function(){return"Object"}}]),o}(I(Error));a.GraphQLError=u;function y(f){var m=f.message;if(f.nodes)for(var o=0,h=f.nodes;o",EOF:"",BANG:"!",DOLLAR:"$",AMP:"&",PAREN_L:"(",PAREN_R:")",SPREAD:"...",COLON:":",EQUALS:"=",AT:"@",BRACKET_L:"[",BRACKET_R:"]",BRACE_L:"{",PIPE:"|",BRACE_R:"}",NAME:"Name",INT:"Int",FLOAT:"Float",STRING:"String",BLOCK_STRING:"BlockString",COMMENT:"Comment"});a.TokenKind=d}}),re=L({"node_modules/graphql/jsutils/inspect.js"(a){"use strict";K(),Object.defineProperty(a,"__esModule",{value:!0}),a.default=E;var d=i(ee());function i(v){return v&&v.__esModule?v:{default:v}}function c(v){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?c=function(s){return typeof s}:c=function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s},c(v)}var r=10,_=2;function E(v){return k(v,[])}function k(v,I){switch(c(v)){case"string":return JSON.stringify(v);case"function":return v.name?"[function ".concat(v.name,"]"):"[function]";case"object":return v===null?"null":O(v,I);default:return String(v)}}function O(v,I){if(I.indexOf(v)!==-1)return"[Circular]";var s=[].concat(I,[v]),p=g(v);if(p!==void 0){var e=p.call(v);if(e!==v)return typeof e=="string"?e:k(e,s)}else if(Array.isArray(v))return N(v,s);return A(v,s)}function A(v,I){var s=Object.keys(v);if(s.length===0)return"{}";if(I.length>_)return"["+D(v)+"]";var p=s.map(function(e){var n=k(v[e],I);return e+": "+n});return"{ "+p.join(", ")+" }"}function N(v,I){if(v.length===0)return"[]";if(I.length>_)return"[Array]";for(var s=Math.min(r,v.length),p=v.length-s,e=[],n=0;n1&&e.push("... ".concat(p," more items")),"["+e.join(", ")+"]"}function g(v){var I=v[String(d.default)];if(typeof I=="function")return I;if(typeof v.inspect=="function")return v.inspect}function D(v){var I=Object.prototype.toString.call(v).replace(/^\[object /,"").replace(/]$/,"");if(I==="Object"&&typeof v.constructor=="function"){var s=v.constructor.name;if(typeof s=="string"&&s!=="")return s}return I}}}),_e=L({"node_modules/graphql/jsutils/devAssert.js"(a){"use strict";K(),Object.defineProperty(a,"__esModule",{value:!0}),a.default=d;function d(i,c){var r=Boolean(i);if(!r)throw new Error(c)}}}),Ee=L({"node_modules/graphql/jsutils/instanceOf.js"(a){"use strict";K(),Object.defineProperty(a,"__esModule",{value:!0}),a.default=void 0;var d=i(re());function i(r){return r&&r.__esModule?r:{default:r}}var c=function(_,E){return _ instanceof E};a.default=c}}),me=L({"node_modules/graphql/language/source.js"(a){"use strict";K(),Object.defineProperty(a,"__esModule",{value:!0}),a.isSource=A,a.Source=void 0;var d=z(),i=_(re()),c=_(_e()),r=_(Ee());function _(N){return N&&N.__esModule?N:{default:N}}function E(N,g){for(var D=0;D1&&arguments[1]!==void 0?arguments[1]:"GraphQL request",v=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{line:1,column:1};typeof g=="string"||(0,c.default)(0,"Body must be a string. Received: ".concat((0,i.default)(g),".")),this.body=g,this.name=D,this.locationOffset=v,this.locationOffset.line>0||(0,c.default)(0,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||(0,c.default)(0,"column in locationOffset is 1-indexed and must be positive.")}return k(N,[{key:d.SYMBOL_TO_STRING_TAG,get:function(){return"Source"}}]),N}();a.Source=O;function A(N){return(0,r.default)(N,O)}}}),ye=L({"node_modules/graphql/language/directiveLocation.js"(a){"use strict";K(),Object.defineProperty(a,"__esModule",{value:!0}),a.DirectiveLocation=void 0;var d=Object.freeze({QUERY:"QUERY",MUTATION:"MUTATION",SUBSCRIPTION:"SUBSCRIPTION",FIELD:"FIELD",FRAGMENT_DEFINITION:"FRAGMENT_DEFINITION",FRAGMENT_SPREAD:"FRAGMENT_SPREAD",INLINE_FRAGMENT:"INLINE_FRAGMENT",VARIABLE_DEFINITION:"VARIABLE_DEFINITION",SCHEMA:"SCHEMA",SCALAR:"SCALAR",OBJECT:"OBJECT",FIELD_DEFINITION:"FIELD_DEFINITION",ARGUMENT_DEFINITION:"ARGUMENT_DEFINITION",INTERFACE:"INTERFACE",UNION:"UNION",ENUM:"ENUM",ENUM_VALUE:"ENUM_VALUE",INPUT_OBJECT:"INPUT_OBJECT",INPUT_FIELD_DEFINITION:"INPUT_FIELD_DEFINITION"});a.DirectiveLocation=d}}),ke=L({"node_modules/graphql/language/blockString.js"(a){"use strict";K(),Object.defineProperty(a,"__esModule",{value:!0}),a.dedentBlockStringValue=d,a.getBlockStringIndentation=c,a.printBlockString=r;function d(_){var E=_.split(/\r\n|[\n\r]/g),k=c(_);if(k!==0)for(var O=1;OA&&i(E[N-1]);)--N;return E.slice(A,N).join(` +`)}function i(_){for(var E=0;E<_.length;++E)if(_[E]!==" "&&_[E]!==" ")return!1;return!0}function c(_){for(var E,k=!0,O=!0,A=0,N=null,g=0;g<_.length;++g)switch(_.charCodeAt(g)){case 13:_.charCodeAt(g+1)===10&&++g;case 10:k=!1,O=!0,A=0;break;case 9:case 32:++A;break;default:O&&!k&&(N===null||A1&&arguments[1]!==void 0?arguments[1]:"",k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,O=_.indexOf(` +`)===-1,A=_[0]===" "||_[0]===" ",N=_[_.length-1]==='"',g=_[_.length-1]==="\\",D=!O||N||g||k,v="";return D&&!(O&&A)&&(v+=` +`+E),v+=E?_.replace(/\n/g,` +`+E):_,D&&(v+=` +`),'"""'+v.replace(/"""/g,'\\"""')+'"""'}}}),Ne=L({"node_modules/graphql/language/lexer.js"(a){"use strict";K(),Object.defineProperty(a,"__esModule",{value:!0}),a.isPunctuatorTokenKind=E,a.Lexer=void 0;var d=Z(),i=te(),c=ne(),r=ke(),_=function(){function t(y){var f=new i.Token(c.TokenKind.SOF,0,0,0,0,null);this.source=y,this.lastToken=f,this.token=f,this.line=1,this.lineStart=0}var u=t.prototype;return u.advance=function(){this.lastToken=this.token;var f=this.token=this.lookahead();return f},u.lookahead=function(){var f=this.token;if(f.kind!==c.TokenKind.EOF)do{var m;f=(m=f.next)!==null&&m!==void 0?m:f.next=O(this,f)}while(f.kind===c.TokenKind.COMMENT);return f},t}();a.Lexer=_;function E(t){return t===c.TokenKind.BANG||t===c.TokenKind.DOLLAR||t===c.TokenKind.AMP||t===c.TokenKind.PAREN_L||t===c.TokenKind.PAREN_R||t===c.TokenKind.SPREAD||t===c.TokenKind.COLON||t===c.TokenKind.EQUALS||t===c.TokenKind.AT||t===c.TokenKind.BRACKET_L||t===c.TokenKind.BRACKET_R||t===c.TokenKind.BRACE_L||t===c.TokenKind.PIPE||t===c.TokenKind.BRACE_R}function k(t){return isNaN(t)?c.TokenKind.EOF:t<127?JSON.stringify(String.fromCharCode(t)):'"\\u'.concat(("00"+t.toString(16).toUpperCase()).slice(-4),'"')}function O(t,u){for(var y=t.source,f=y.body,m=f.length,o=u.end;o31||h===9));return new i.Token(c.TokenKind.COMMENT,u,l,y,f,m,o.slice(u+1,l))}function g(t,u,y,f,m,o){var h=t.body,l=y,T=u,S=!1;if(l===45&&(l=h.charCodeAt(++T)),l===48){if(l=h.charCodeAt(++T),l>=48&&l<=57)throw(0,d.syntaxError)(t,T,"Invalid number, unexpected digit after 0: ".concat(k(l),"."))}else T=D(t,T,l),l=h.charCodeAt(T);if(l===46&&(S=!0,l=h.charCodeAt(++T),T=D(t,T,l),l=h.charCodeAt(T)),(l===69||l===101)&&(S=!0,l=h.charCodeAt(++T),(l===43||l===45)&&(l=h.charCodeAt(++T)),T=D(t,T,l),l=h.charCodeAt(T)),l===46||n(l))throw(0,d.syntaxError)(t,T,"Invalid number, expected digit but got: ".concat(k(l),"."));return new i.Token(S?c.TokenKind.FLOAT:c.TokenKind.INT,u,T,f,m,o,h.slice(u,T))}function D(t,u,y){var f=t.body,m=u,o=y;if(o>=48&&o<=57){do o=f.charCodeAt(++m);while(o>=48&&o<=57);return m}throw(0,d.syntaxError)(t,m,"Invalid number, expected digit but got: ".concat(k(o),"."))}function v(t,u,y,f,m){for(var o=t.body,h=u+1,l=h,T=0,S="";h=48&&t<=57?t-48:t>=65&&t<=70?t-55:t>=97&&t<=102?t-87:-1}function e(t,u,y,f,m){for(var o=t.body,h=o.length,l=u+1,T=0;l!==h&&!isNaN(T=o.charCodeAt(l))&&(T===95||T>=48&&T<=57||T>=65&&T<=90||T>=97&&T<=122);)++l;return new i.Token(c.TokenKind.NAME,u,l,y,f,m,o.slice(u,l))}function n(t){return t===95||t>=65&&t<=90||t>=97&&t<=122}}}),Oe=L({"node_modules/graphql/language/parser.js"(a){"use strict";K(),Object.defineProperty(a,"__esModule",{value:!0}),a.parse=O,a.parseValue=A,a.parseType=N,a.Parser=void 0;var d=Z(),i=he(),c=te(),r=ne(),_=me(),E=ye(),k=Ne();function O(I,s){var p=new g(I,s);return p.parseDocument()}function A(I,s){var p=new g(I,s);p.expectToken(r.TokenKind.SOF);var e=p.parseValueLiteral(!1);return p.expectToken(r.TokenKind.EOF),e}function N(I,s){var p=new g(I,s);p.expectToken(r.TokenKind.SOF);var e=p.parseTypeReference();return p.expectToken(r.TokenKind.EOF),e}var g=function(){function I(p,e){var n=(0,_.isSource)(p)?p:new _.Source(p);this._lexer=new k.Lexer(n),this._options=e}var s=I.prototype;return s.parseName=function(){var e=this.expectToken(r.TokenKind.NAME);return{kind:i.Kind.NAME,value:e.value,loc:this.loc(e)}},s.parseDocument=function(){var e=this._lexer.token;return{kind:i.Kind.DOCUMENT,definitions:this.many(r.TokenKind.SOF,this.parseDefinition,r.TokenKind.EOF),loc:this.loc(e)}},s.parseDefinition=function(){if(this.peek(r.TokenKind.NAME))switch(this._lexer.token.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"schema":case"scalar":case"type":case"interface":case"union":case"enum":case"input":case"directive":return this.parseTypeSystemDefinition();case"extend":return this.parseTypeSystemExtension()}else{if(this.peek(r.TokenKind.BRACE_L))return this.parseOperationDefinition();if(this.peekDescription())return this.parseTypeSystemDefinition()}throw this.unexpected()},s.parseOperationDefinition=function(){var e=this._lexer.token;if(this.peek(r.TokenKind.BRACE_L))return{kind:i.Kind.OPERATION_DEFINITION,operation:"query",name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet(),loc:this.loc(e)};var n=this.parseOperationType(),t;return this.peek(r.TokenKind.NAME)&&(t=this.parseName()),{kind:i.Kind.OPERATION_DEFINITION,operation:n,name:t,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(e)}},s.parseOperationType=function(){var e=this.expectToken(r.TokenKind.NAME);switch(e.value){case"query":return"query";case"mutation":return"mutation";case"subscription":return"subscription"}throw this.unexpected(e)},s.parseVariableDefinitions=function(){return this.optionalMany(r.TokenKind.PAREN_L,this.parseVariableDefinition,r.TokenKind.PAREN_R)},s.parseVariableDefinition=function(){var e=this._lexer.token;return{kind:i.Kind.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(r.TokenKind.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(r.TokenKind.EQUALS)?this.parseValueLiteral(!0):void 0,directives:this.parseDirectives(!0),loc:this.loc(e)}},s.parseVariable=function(){var e=this._lexer.token;return this.expectToken(r.TokenKind.DOLLAR),{kind:i.Kind.VARIABLE,name:this.parseName(),loc:this.loc(e)}},s.parseSelectionSet=function(){var e=this._lexer.token;return{kind:i.Kind.SELECTION_SET,selections:this.many(r.TokenKind.BRACE_L,this.parseSelection,r.TokenKind.BRACE_R),loc:this.loc(e)}},s.parseSelection=function(){return this.peek(r.TokenKind.SPREAD)?this.parseFragment():this.parseField()},s.parseField=function(){var e=this._lexer.token,n=this.parseName(),t,u;return this.expectOptionalToken(r.TokenKind.COLON)?(t=n,u=this.parseName()):u=n,{kind:i.Kind.FIELD,alias:t,name:u,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(r.TokenKind.BRACE_L)?this.parseSelectionSet():void 0,loc:this.loc(e)}},s.parseArguments=function(e){var n=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(r.TokenKind.PAREN_L,n,r.TokenKind.PAREN_R)},s.parseArgument=function(){var e=this._lexer.token,n=this.parseName();return this.expectToken(r.TokenKind.COLON),{kind:i.Kind.ARGUMENT,name:n,value:this.parseValueLiteral(!1),loc:this.loc(e)}},s.parseConstArgument=function(){var e=this._lexer.token;return{kind:i.Kind.ARGUMENT,name:this.parseName(),value:(this.expectToken(r.TokenKind.COLON),this.parseValueLiteral(!0)),loc:this.loc(e)}},s.parseFragment=function(){var e=this._lexer.token;this.expectToken(r.TokenKind.SPREAD);var n=this.expectOptionalKeyword("on");return!n&&this.peek(r.TokenKind.NAME)?{kind:i.Kind.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1),loc:this.loc(e)}:{kind:i.Kind.INLINE_FRAGMENT,typeCondition:n?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(e)}},s.parseFragmentDefinition=function(){var e,n=this._lexer.token;return this.expectKeyword("fragment"),((e=this._options)===null||e===void 0?void 0:e.experimentalFragmentVariables)===!0?{kind:i.Kind.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(n)}:{kind:i.Kind.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(n)}},s.parseFragmentName=function(){if(this._lexer.token.value==="on")throw this.unexpected();return this.parseName()},s.parseValueLiteral=function(e){var n=this._lexer.token;switch(n.kind){case r.TokenKind.BRACKET_L:return this.parseList(e);case r.TokenKind.BRACE_L:return this.parseObject(e);case r.TokenKind.INT:return this._lexer.advance(),{kind:i.Kind.INT,value:n.value,loc:this.loc(n)};case r.TokenKind.FLOAT:return this._lexer.advance(),{kind:i.Kind.FLOAT,value:n.value,loc:this.loc(n)};case r.TokenKind.STRING:case r.TokenKind.BLOCK_STRING:return this.parseStringLiteral();case r.TokenKind.NAME:switch(this._lexer.advance(),n.value){case"true":return{kind:i.Kind.BOOLEAN,value:!0,loc:this.loc(n)};case"false":return{kind:i.Kind.BOOLEAN,value:!1,loc:this.loc(n)};case"null":return{kind:i.Kind.NULL,loc:this.loc(n)};default:return{kind:i.Kind.ENUM,value:n.value,loc:this.loc(n)}}case r.TokenKind.DOLLAR:if(!e)return this.parseVariable();break}throw this.unexpected()},s.parseStringLiteral=function(){var e=this._lexer.token;return this._lexer.advance(),{kind:i.Kind.STRING,value:e.value,block:e.kind===r.TokenKind.BLOCK_STRING,loc:this.loc(e)}},s.parseList=function(e){var n=this,t=this._lexer.token,u=function(){return n.parseValueLiteral(e)};return{kind:i.Kind.LIST,values:this.any(r.TokenKind.BRACKET_L,u,r.TokenKind.BRACKET_R),loc:this.loc(t)}},s.parseObject=function(e){var n=this,t=this._lexer.token,u=function(){return n.parseObjectField(e)};return{kind:i.Kind.OBJECT,fields:this.any(r.TokenKind.BRACE_L,u,r.TokenKind.BRACE_R),loc:this.loc(t)}},s.parseObjectField=function(e){var n=this._lexer.token,t=this.parseName();return this.expectToken(r.TokenKind.COLON),{kind:i.Kind.OBJECT_FIELD,name:t,value:this.parseValueLiteral(e),loc:this.loc(n)}},s.parseDirectives=function(e){for(var n=[];this.peek(r.TokenKind.AT);)n.push(this.parseDirective(e));return n},s.parseDirective=function(e){var n=this._lexer.token;return this.expectToken(r.TokenKind.AT),{kind:i.Kind.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e),loc:this.loc(n)}},s.parseTypeReference=function(){var e=this._lexer.token,n;return this.expectOptionalToken(r.TokenKind.BRACKET_L)?(n=this.parseTypeReference(),this.expectToken(r.TokenKind.BRACKET_R),n={kind:i.Kind.LIST_TYPE,type:n,loc:this.loc(e)}):n=this.parseNamedType(),this.expectOptionalToken(r.TokenKind.BANG)?{kind:i.Kind.NON_NULL_TYPE,type:n,loc:this.loc(e)}:n},s.parseNamedType=function(){var e=this._lexer.token;return{kind:i.Kind.NAMED_TYPE,name:this.parseName(),loc:this.loc(e)}},s.parseTypeSystemDefinition=function(){var e=this.peekDescription()?this._lexer.lookahead():this._lexer.token;if(e.kind===r.TokenKind.NAME)switch(e.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}throw this.unexpected(e)},s.peekDescription=function(){return this.peek(r.TokenKind.STRING)||this.peek(r.TokenKind.BLOCK_STRING)},s.parseDescription=function(){if(this.peekDescription())return this.parseStringLiteral()},s.parseSchemaDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("schema");var t=this.parseDirectives(!0),u=this.many(r.TokenKind.BRACE_L,this.parseOperationTypeDefinition,r.TokenKind.BRACE_R);return{kind:i.Kind.SCHEMA_DEFINITION,description:n,directives:t,operationTypes:u,loc:this.loc(e)}},s.parseOperationTypeDefinition=function(){var e=this._lexer.token,n=this.parseOperationType();this.expectToken(r.TokenKind.COLON);var t=this.parseNamedType();return{kind:i.Kind.OPERATION_TYPE_DEFINITION,operation:n,type:t,loc:this.loc(e)}},s.parseScalarTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("scalar");var t=this.parseName(),u=this.parseDirectives(!0);return{kind:i.Kind.SCALAR_TYPE_DEFINITION,description:n,name:t,directives:u,loc:this.loc(e)}},s.parseObjectTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("type");var t=this.parseName(),u=this.parseImplementsInterfaces(),y=this.parseDirectives(!0),f=this.parseFieldsDefinition();return{kind:i.Kind.OBJECT_TYPE_DEFINITION,description:n,name:t,interfaces:u,directives:y,fields:f,loc:this.loc(e)}},s.parseImplementsInterfaces=function(){var e;if(!this.expectOptionalKeyword("implements"))return[];if(((e=this._options)===null||e===void 0?void 0:e.allowLegacySDLImplementsInterfaces)===!0){var n=[];this.expectOptionalToken(r.TokenKind.AMP);do n.push(this.parseNamedType());while(this.expectOptionalToken(r.TokenKind.AMP)||this.peek(r.TokenKind.NAME));return n}return this.delimitedMany(r.TokenKind.AMP,this.parseNamedType)},s.parseFieldsDefinition=function(){var e;return((e=this._options)===null||e===void 0?void 0:e.allowLegacySDLEmptyFields)===!0&&this.peek(r.TokenKind.BRACE_L)&&this._lexer.lookahead().kind===r.TokenKind.BRACE_R?(this._lexer.advance(),this._lexer.advance(),[]):this.optionalMany(r.TokenKind.BRACE_L,this.parseFieldDefinition,r.TokenKind.BRACE_R)},s.parseFieldDefinition=function(){var e=this._lexer.token,n=this.parseDescription(),t=this.parseName(),u=this.parseArgumentDefs();this.expectToken(r.TokenKind.COLON);var y=this.parseTypeReference(),f=this.parseDirectives(!0);return{kind:i.Kind.FIELD_DEFINITION,description:n,name:t,arguments:u,type:y,directives:f,loc:this.loc(e)}},s.parseArgumentDefs=function(){return this.optionalMany(r.TokenKind.PAREN_L,this.parseInputValueDef,r.TokenKind.PAREN_R)},s.parseInputValueDef=function(){var e=this._lexer.token,n=this.parseDescription(),t=this.parseName();this.expectToken(r.TokenKind.COLON);var u=this.parseTypeReference(),y;this.expectOptionalToken(r.TokenKind.EQUALS)&&(y=this.parseValueLiteral(!0));var f=this.parseDirectives(!0);return{kind:i.Kind.INPUT_VALUE_DEFINITION,description:n,name:t,type:u,defaultValue:y,directives:f,loc:this.loc(e)}},s.parseInterfaceTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("interface");var t=this.parseName(),u=this.parseImplementsInterfaces(),y=this.parseDirectives(!0),f=this.parseFieldsDefinition();return{kind:i.Kind.INTERFACE_TYPE_DEFINITION,description:n,name:t,interfaces:u,directives:y,fields:f,loc:this.loc(e)}},s.parseUnionTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("union");var t=this.parseName(),u=this.parseDirectives(!0),y=this.parseUnionMemberTypes();return{kind:i.Kind.UNION_TYPE_DEFINITION,description:n,name:t,directives:u,types:y,loc:this.loc(e)}},s.parseUnionMemberTypes=function(){return this.expectOptionalToken(r.TokenKind.EQUALS)?this.delimitedMany(r.TokenKind.PIPE,this.parseNamedType):[]},s.parseEnumTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("enum");var t=this.parseName(),u=this.parseDirectives(!0),y=this.parseEnumValuesDefinition();return{kind:i.Kind.ENUM_TYPE_DEFINITION,description:n,name:t,directives:u,values:y,loc:this.loc(e)}},s.parseEnumValuesDefinition=function(){return this.optionalMany(r.TokenKind.BRACE_L,this.parseEnumValueDefinition,r.TokenKind.BRACE_R)},s.parseEnumValueDefinition=function(){var e=this._lexer.token,n=this.parseDescription(),t=this.parseName(),u=this.parseDirectives(!0);return{kind:i.Kind.ENUM_VALUE_DEFINITION,description:n,name:t,directives:u,loc:this.loc(e)}},s.parseInputObjectTypeDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("input");var t=this.parseName(),u=this.parseDirectives(!0),y=this.parseInputFieldsDefinition();return{kind:i.Kind.INPUT_OBJECT_TYPE_DEFINITION,description:n,name:t,directives:u,fields:y,loc:this.loc(e)}},s.parseInputFieldsDefinition=function(){return this.optionalMany(r.TokenKind.BRACE_L,this.parseInputValueDef,r.TokenKind.BRACE_R)},s.parseTypeSystemExtension=function(){var e=this._lexer.lookahead();if(e.kind===r.TokenKind.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)},s.parseSchemaExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");var n=this.parseDirectives(!0),t=this.optionalMany(r.TokenKind.BRACE_L,this.parseOperationTypeDefinition,r.TokenKind.BRACE_R);if(n.length===0&&t.length===0)throw this.unexpected();return{kind:i.Kind.SCHEMA_EXTENSION,directives:n,operationTypes:t,loc:this.loc(e)}},s.parseScalarTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");var n=this.parseName(),t=this.parseDirectives(!0);if(t.length===0)throw this.unexpected();return{kind:i.Kind.SCALAR_TYPE_EXTENSION,name:n,directives:t,loc:this.loc(e)}},s.parseObjectTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");var n=this.parseName(),t=this.parseImplementsInterfaces(),u=this.parseDirectives(!0),y=this.parseFieldsDefinition();if(t.length===0&&u.length===0&&y.length===0)throw this.unexpected();return{kind:i.Kind.OBJECT_TYPE_EXTENSION,name:n,interfaces:t,directives:u,fields:y,loc:this.loc(e)}},s.parseInterfaceTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");var n=this.parseName(),t=this.parseImplementsInterfaces(),u=this.parseDirectives(!0),y=this.parseFieldsDefinition();if(t.length===0&&u.length===0&&y.length===0)throw this.unexpected();return{kind:i.Kind.INTERFACE_TYPE_EXTENSION,name:n,interfaces:t,directives:u,fields:y,loc:this.loc(e)}},s.parseUnionTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");var n=this.parseName(),t=this.parseDirectives(!0),u=this.parseUnionMemberTypes();if(t.length===0&&u.length===0)throw this.unexpected();return{kind:i.Kind.UNION_TYPE_EXTENSION,name:n,directives:t,types:u,loc:this.loc(e)}},s.parseEnumTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");var n=this.parseName(),t=this.parseDirectives(!0),u=this.parseEnumValuesDefinition();if(t.length===0&&u.length===0)throw this.unexpected();return{kind:i.Kind.ENUM_TYPE_EXTENSION,name:n,directives:t,values:u,loc:this.loc(e)}},s.parseInputObjectTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");var n=this.parseName(),t=this.parseDirectives(!0),u=this.parseInputFieldsDefinition();if(t.length===0&&u.length===0)throw this.unexpected();return{kind:i.Kind.INPUT_OBJECT_TYPE_EXTENSION,name:n,directives:t,fields:u,loc:this.loc(e)}},s.parseDirectiveDefinition=function(){var e=this._lexer.token,n=this.parseDescription();this.expectKeyword("directive"),this.expectToken(r.TokenKind.AT);var t=this.parseName(),u=this.parseArgumentDefs(),y=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");var f=this.parseDirectiveLocations();return{kind:i.Kind.DIRECTIVE_DEFINITION,description:n,name:t,arguments:u,repeatable:y,locations:f,loc:this.loc(e)}},s.parseDirectiveLocations=function(){return this.delimitedMany(r.TokenKind.PIPE,this.parseDirectiveLocation)},s.parseDirectiveLocation=function(){var e=this._lexer.token,n=this.parseName();if(E.DirectiveLocation[n.value]!==void 0)return n;throw this.unexpected(e)},s.loc=function(e){var n;if(((n=this._options)===null||n===void 0?void 0:n.noLocation)!==!0)return new c.Location(e,this._lexer.lastToken,this._lexer.source)},s.peek=function(e){return this._lexer.token.kind===e},s.expectToken=function(e){var n=this._lexer.token;if(n.kind===e)return this._lexer.advance(),n;throw(0,d.syntaxError)(this._lexer.source,n.start,"Expected ".concat(v(e),", found ").concat(D(n),"."))},s.expectOptionalToken=function(e){var n=this._lexer.token;if(n.kind===e)return this._lexer.advance(),n},s.expectKeyword=function(e){var n=this._lexer.token;if(n.kind===r.TokenKind.NAME&&n.value===e)this._lexer.advance();else throw(0,d.syntaxError)(this._lexer.source,n.start,'Expected "'.concat(e,'", found ').concat(D(n),"."))},s.expectOptionalKeyword=function(e){var n=this._lexer.token;return n.kind===r.TokenKind.NAME&&n.value===e?(this._lexer.advance(),!0):!1},s.unexpected=function(e){var n=e!=null?e:this._lexer.token;return(0,d.syntaxError)(this._lexer.source,n.start,"Unexpected ".concat(D(n),"."))},s.any=function(e,n,t){this.expectToken(e);for(var u=[];!this.expectOptionalToken(t);)u.push(n.call(this));return u},s.optionalMany=function(e,n,t){if(this.expectOptionalToken(e)){var u=[];do u.push(n.call(this));while(!this.expectOptionalToken(t));return u}return[]},s.many=function(e,n,t){this.expectToken(e);var u=[];do u.push(n.call(this));while(!this.expectOptionalToken(t));return u},s.delimitedMany=function(e,n){this.expectOptionalToken(e);var t=[];do t.push(n.call(this));while(this.expectOptionalToken(e));return t},I}();a.Parser=g;function D(I){var s=I.value;return v(I.kind)+(s!=null?' "'.concat(s,'"'):"")}function v(I){return(0,k.isPunctuatorTokenKind)(I)?'"'.concat(I,'"'):I}}});K();var Ie=ce(),ge=ue(),{hasPragma:Se}=le(),{locStart:Ae,locEnd:De}=pe();function Ke(a){let d=[],{startToken:i}=a.loc,{next:c}=i;for(;c.kind!=="";)c.kind==="Comment"&&(Object.assign(c,{column:c.column-1}),d.push(c)),c=c.next;return d}function ie(a){if(a&&typeof a=="object"){delete a.startToken,delete a.endToken,delete a.prev,delete a.next;for(let d in a)ie(a[d])}return a}var X={allowLegacySDLImplementsInterfaces:!1,experimentalFragmentVariables:!0};function Le(a){let{GraphQLError:d}=W();if(a instanceof d){let{message:i,locations:[c]}=a;return Ie(i,{start:c})}return a}function xe(a){let{parse:d}=Oe(),{result:i,error:c}=ge(()=>d(a,Object.assign({},X)),()=>d(a,Object.assign(Object.assign({},X),{},{allowLegacySDLImplementsInterfaces:!0})));if(!i)throw Le(c);return i.comments=Ke(i),ie(i),i}ae.exports={parsers:{graphql:{parse:xe,astFormat:"graphql",hasPragma:Se,locStart:Ae,locEnd:De}}}});return be();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-html.js b/node_modules/prettier/parser-html.js new file mode 100644 index 0000000..214b4e4 --- /dev/null +++ b/node_modules/prettier/parser-html.js @@ -0,0 +1,36 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.html=e()}})(function(){"use strict";var S=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var ee=S((cc,Kr)=>{var Ne=function(e){return e&&e.Math==Math&&e};Kr.exports=Ne(typeof globalThis=="object"&&globalThis)||Ne(typeof window=="object"&&window)||Ne(typeof self=="object"&&self)||Ne(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var se=S((hc,Jr)=>{Jr.exports=function(e){try{return!!e()}catch{return!0}}});var ae=S((pc,Zr)=>{var qs=se();Zr.exports=!qs(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var Oe=S((fc,eu)=>{var Is=se();eu.exports=!Is(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")})});var De=S((dc,ru)=>{var Rs=Oe(),qe=Function.prototype.call;ru.exports=Rs?qe.bind(qe):function(){return qe.apply(qe,arguments)}});var su=S(nu=>{"use strict";var uu={}.propertyIsEnumerable,tu=Object.getOwnPropertyDescriptor,xs=tu&&!uu.call({1:2},1);nu.f=xs?function(r){var u=tu(this,r);return!!u&&u.enumerable}:uu});var Ie=S((Cc,iu)=>{iu.exports=function(e,r){return{enumerable:!(e&1),configurable:!(e&2),writable:!(e&4),value:r}}});var re=S((mc,Du)=>{var au=Oe(),ou=Function.prototype,er=ou.call,Ps=au&&ou.bind.bind(er,er);Du.exports=au?Ps:function(e){return function(){return er.apply(e,arguments)}}});var me=S((gc,cu)=>{var lu=re(),ks=lu({}.toString),Ls=lu("".slice);cu.exports=function(e){return Ls(ks(e),8,-1)}});var pu=S((Fc,hu)=>{var $s=re(),Ms=se(),js=me(),rr=Object,Us=$s("".split);hu.exports=Ms(function(){return!rr("z").propertyIsEnumerable(0)})?function(e){return js(e)=="String"?Us(e,""):rr(e)}:rr});var Re=S((Ac,fu)=>{fu.exports=function(e){return e==null}});var ur=S((vc,du)=>{var Gs=Re(),Vs=TypeError;du.exports=function(e){if(Gs(e))throw Vs("Can't call method on "+e);return e}});var xe=S((_c,Eu)=>{var Xs=pu(),Hs=ur();Eu.exports=function(e){return Xs(Hs(e))}});var nr=S((Sc,Cu)=>{var tr=typeof document=="object"&&document.all,zs=typeof tr>"u"&&tr!==void 0;Cu.exports={all:tr,IS_HTMLDDA:zs}});var Y=S((yc,gu)=>{var mu=nr(),Ws=mu.all;gu.exports=mu.IS_HTMLDDA?function(e){return typeof e=="function"||e===Ws}:function(e){return typeof e=="function"}});var le=S((Tc,vu)=>{var Fu=Y(),Au=nr(),Ys=Au.all;vu.exports=Au.IS_HTMLDDA?function(e){return typeof e=="object"?e!==null:Fu(e)||e===Ys}:function(e){return typeof e=="object"?e!==null:Fu(e)}});var ge=S((Bc,_u)=>{var sr=ee(),Qs=Y(),Ks=function(e){return Qs(e)?e:void 0};_u.exports=function(e,r){return arguments.length<2?Ks(sr[e]):sr[e]&&sr[e][r]}});var ir=S((bc,Su)=>{var Js=re();Su.exports=Js({}.isPrototypeOf)});var Tu=S((wc,yu)=>{var Zs=ge();yu.exports=Zs("navigator","userAgent")||""});var Iu=S((Nc,qu)=>{var Ou=ee(),ar=Tu(),Bu=Ou.process,bu=Ou.Deno,wu=Bu&&Bu.versions||bu&&bu.version,Nu=wu&&wu.v8,ue,Pe;Nu&&(ue=Nu.split("."),Pe=ue[0]>0&&ue[0]<4?1:+(ue[0]+ue[1]));!Pe&&ar&&(ue=ar.match(/Edge\/(\d+)/),(!ue||ue[1]>=74)&&(ue=ar.match(/Chrome\/(\d+)/),ue&&(Pe=+ue[1])));qu.exports=Pe});var or=S((Oc,xu)=>{var Ru=Iu(),ei=se();xu.exports=!!Object.getOwnPropertySymbols&&!ei(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&Ru&&Ru<41})});var Dr=S((qc,Pu)=>{var ri=or();Pu.exports=ri&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var lr=S((Ic,ku)=>{var ui=ge(),ti=Y(),ni=ir(),si=Dr(),ii=Object;ku.exports=si?function(e){return typeof e=="symbol"}:function(e){var r=ui("Symbol");return ti(r)&&ni(r.prototype,ii(e))}});var ke=S((Rc,Lu)=>{var ai=String;Lu.exports=function(e){try{return ai(e)}catch{return"Object"}}});var Fe=S((xc,$u)=>{var oi=Y(),Di=ke(),li=TypeError;$u.exports=function(e){if(oi(e))return e;throw li(Di(e)+" is not a function")}});var Le=S((Pc,Mu)=>{var ci=Fe(),hi=Re();Mu.exports=function(e,r){var u=e[r];return hi(u)?void 0:ci(u)}});var Uu=S((kc,ju)=>{var cr=De(),hr=Y(),pr=le(),pi=TypeError;ju.exports=function(e,r){var u,n;if(r==="string"&&hr(u=e.toString)&&!pr(n=cr(u,e))||hr(u=e.valueOf)&&!pr(n=cr(u,e))||r!=="string"&&hr(u=e.toString)&&!pr(n=cr(u,e)))return n;throw pi("Can't convert object to primitive value")}});var Vu=S((Lc,Gu)=>{Gu.exports=!1});var $e=S(($c,Hu)=>{var Xu=ee(),fi=Object.defineProperty;Hu.exports=function(e,r){try{fi(Xu,e,{value:r,configurable:!0,writable:!0})}catch{Xu[e]=r}return r}});var Me=S((Mc,Wu)=>{var di=ee(),Ei=$e(),zu="__core-js_shared__",Ci=di[zu]||Ei(zu,{});Wu.exports=Ci});var fr=S((jc,Qu)=>{var mi=Vu(),Yu=Me();(Qu.exports=function(e,r){return Yu[e]||(Yu[e]=r!==void 0?r:{})})("versions",[]).push({version:"3.26.1",mode:mi?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var dr=S((Uc,Ku)=>{var gi=ur(),Fi=Object;Ku.exports=function(e){return Fi(gi(e))}});var oe=S((Gc,Ju)=>{var Ai=re(),vi=dr(),_i=Ai({}.hasOwnProperty);Ju.exports=Object.hasOwn||function(r,u){return _i(vi(r),u)}});var Er=S((Vc,Zu)=>{var Si=re(),yi=0,Ti=Math.random(),Bi=Si(1 .toString);Zu.exports=function(e){return"Symbol("+(e===void 0?"":e)+")_"+Bi(++yi+Ti,36)}});var he=S((Xc,nt)=>{var bi=ee(),wi=fr(),et=oe(),Ni=Er(),rt=or(),tt=Dr(),fe=wi("wks"),ce=bi.Symbol,ut=ce&&ce.for,Oi=tt?ce:ce&&ce.withoutSetter||Ni;nt.exports=function(e){if(!et(fe,e)||!(rt||typeof fe[e]=="string")){var r="Symbol."+e;rt&&et(ce,e)?fe[e]=ce[e]:tt&&ut?fe[e]=ut(r):fe[e]=Oi(r)}return fe[e]}});var ot=S((Hc,at)=>{var qi=De(),st=le(),it=lr(),Ii=Le(),Ri=Uu(),xi=he(),Pi=TypeError,ki=xi("toPrimitive");at.exports=function(e,r){if(!st(e)||it(e))return e;var u=Ii(e,ki),n;if(u){if(r===void 0&&(r="default"),n=qi(u,e,r),!st(n)||it(n))return n;throw Pi("Can't convert object to primitive value")}return r===void 0&&(r="number"),Ri(e,r)}});var je=S((zc,Dt)=>{var Li=ot(),$i=lr();Dt.exports=function(e){var r=Li(e,"string");return $i(r)?r:r+""}});var ht=S((Wc,ct)=>{var Mi=ee(),lt=le(),Cr=Mi.document,ji=lt(Cr)&<(Cr.createElement);ct.exports=function(e){return ji?Cr.createElement(e):{}}});var mr=S((Yc,pt)=>{var Ui=ae(),Gi=se(),Vi=ht();pt.exports=!Ui&&!Gi(function(){return Object.defineProperty(Vi("div"),"a",{get:function(){return 7}}).a!=7})});var gr=S(dt=>{var Xi=ae(),Hi=De(),zi=su(),Wi=Ie(),Yi=xe(),Qi=je(),Ki=oe(),Ji=mr(),ft=Object.getOwnPropertyDescriptor;dt.f=Xi?ft:function(r,u){if(r=Yi(r),u=Qi(u),Ji)try{return ft(r,u)}catch{}if(Ki(r,u))return Wi(!Hi(zi.f,r,u),r[u])}});var Ct=S((Kc,Et)=>{var Zi=ae(),ea=se();Et.exports=Zi&&ea(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var de=S((Jc,mt)=>{var ra=le(),ua=String,ta=TypeError;mt.exports=function(e){if(ra(e))return e;throw ta(ua(e)+" is not an object")}});var Ae=S(Ft=>{var na=ae(),sa=mr(),ia=Ct(),Ue=de(),gt=je(),aa=TypeError,Fr=Object.defineProperty,oa=Object.getOwnPropertyDescriptor,Ar="enumerable",vr="configurable",_r="writable";Ft.f=na?ia?function(r,u,n){if(Ue(r),u=gt(u),Ue(n),typeof r=="function"&&u==="prototype"&&"value"in n&&_r in n&&!n[_r]){var D=oa(r,u);D&&D[_r]&&(r[u]=n.value,n={configurable:vr in n?n[vr]:D[vr],enumerable:Ar in n?n[Ar]:D[Ar],writable:!1})}return Fr(r,u,n)}:Fr:function(r,u,n){if(Ue(r),u=gt(u),Ue(n),sa)try{return Fr(r,u,n)}catch{}if("get"in n||"set"in n)throw aa("Accessors not supported");return"value"in n&&(r[u]=n.value),r}});var Sr=S((e2,At)=>{var Da=ae(),la=Ae(),ca=Ie();At.exports=Da?function(e,r,u){return la.f(e,r,ca(1,u))}:function(e,r,u){return e[r]=u,e}});var St=S((r2,_t)=>{var yr=ae(),ha=oe(),vt=Function.prototype,pa=yr&&Object.getOwnPropertyDescriptor,Tr=ha(vt,"name"),fa=Tr&&function(){}.name==="something",da=Tr&&(!yr||yr&&pa(vt,"name").configurable);_t.exports={EXISTS:Tr,PROPER:fa,CONFIGURABLE:da}});var br=S((u2,yt)=>{var Ea=re(),Ca=Y(),Br=Me(),ma=Ea(Function.toString);Ca(Br.inspectSource)||(Br.inspectSource=function(e){return ma(e)});yt.exports=Br.inspectSource});var bt=S((t2,Bt)=>{var ga=ee(),Fa=Y(),Tt=ga.WeakMap;Bt.exports=Fa(Tt)&&/native code/.test(String(Tt))});var Ot=S((n2,Nt)=>{var Aa=fr(),va=Er(),wt=Aa("keys");Nt.exports=function(e){return wt[e]||(wt[e]=va(e))}});var wr=S((s2,qt)=>{qt.exports={}});var Pt=S((i2,xt)=>{var _a=bt(),Rt=ee(),Sa=le(),ya=Sr(),Nr=oe(),Or=Me(),Ta=Ot(),Ba=wr(),It="Object already initialized",qr=Rt.TypeError,ba=Rt.WeakMap,Ge,ve,Ve,wa=function(e){return Ve(e)?ve(e):Ge(e,{})},Na=function(e){return function(r){var u;if(!Sa(r)||(u=ve(r)).type!==e)throw qr("Incompatible receiver, "+e+" required");return u}};_a||Or.state?(te=Or.state||(Or.state=new ba),te.get=te.get,te.has=te.has,te.set=te.set,Ge=function(e,r){if(te.has(e))throw qr(It);return r.facade=e,te.set(e,r),r},ve=function(e){return te.get(e)||{}},Ve=function(e){return te.has(e)}):(pe=Ta("state"),Ba[pe]=!0,Ge=function(e,r){if(Nr(e,pe))throw qr(It);return r.facade=e,ya(e,pe,r),r},ve=function(e){return Nr(e,pe)?e[pe]:{}},Ve=function(e){return Nr(e,pe)});var te,pe;xt.exports={set:Ge,get:ve,has:Ve,enforce:wa,getterFor:Na}});var $t=S((a2,Lt)=>{var Oa=se(),qa=Y(),Xe=oe(),Ir=ae(),Ia=St().CONFIGURABLE,Ra=br(),kt=Pt(),xa=kt.enforce,Pa=kt.get,He=Object.defineProperty,ka=Ir&&!Oa(function(){return He(function(){},"length",{value:8}).length!==8}),La=String(String).split("String"),$a=Lt.exports=function(e,r,u){String(r).slice(0,7)==="Symbol("&&(r="["+String(r).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),u&&u.getter&&(r="get "+r),u&&u.setter&&(r="set "+r),(!Xe(e,"name")||Ia&&e.name!==r)&&(Ir?He(e,"name",{value:r,configurable:!0}):e.name=r),ka&&u&&Xe(u,"arity")&&e.length!==u.arity&&He(e,"length",{value:u.arity});try{u&&Xe(u,"constructor")&&u.constructor?Ir&&He(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch{}var n=xa(e);return Xe(n,"source")||(n.source=La.join(typeof r=="string"?r:"")),e};Function.prototype.toString=$a(function(){return qa(this)&&Pa(this).source||Ra(this)},"toString")});var jt=S((o2,Mt)=>{var Ma=Y(),ja=Ae(),Ua=$t(),Ga=$e();Mt.exports=function(e,r,u,n){n||(n={});var D=n.enumerable,s=n.name!==void 0?n.name:r;if(Ma(u)&&Ua(u,s,n),n.global)D?e[r]=u:Ga(r,u);else{try{n.unsafe?e[r]&&(D=!0):delete e[r]}catch{}D?e[r]=u:ja.f(e,r,{value:u,enumerable:!1,configurable:!n.nonConfigurable,writable:!n.nonWritable})}return e}});var Gt=S((D2,Ut)=>{var Va=Math.ceil,Xa=Math.floor;Ut.exports=Math.trunc||function(r){var u=+r;return(u>0?Xa:Va)(u)}});var Rr=S((l2,Vt)=>{var Ha=Gt();Vt.exports=function(e){var r=+e;return r!==r||r===0?0:Ha(r)}});var Ht=S((c2,Xt)=>{var za=Rr(),Wa=Math.max,Ya=Math.min;Xt.exports=function(e,r){var u=za(e);return u<0?Wa(u+r,0):Ya(u,r)}});var Wt=S((h2,zt)=>{var Qa=Rr(),Ka=Math.min;zt.exports=function(e){return e>0?Ka(Qa(e),9007199254740991):0}});var _e=S((p2,Yt)=>{var Ja=Wt();Yt.exports=function(e){return Ja(e.length)}});var Jt=S((f2,Kt)=>{var Za=xe(),eo=Ht(),ro=_e(),Qt=function(e){return function(r,u,n){var D=Za(r),s=ro(D),i=eo(n,s),f;if(e&&u!=u){for(;s>i;)if(f=D[i++],f!=f)return!0}else for(;s>i;i++)if((e||i in D)&&D[i]===u)return e||i||0;return!e&&-1}};Kt.exports={includes:Qt(!0),indexOf:Qt(!1)}});var rn=S((d2,en)=>{var uo=re(),xr=oe(),to=xe(),no=Jt().indexOf,so=wr(),Zt=uo([].push);en.exports=function(e,r){var u=to(e),n=0,D=[],s;for(s in u)!xr(so,s)&&xr(u,s)&&Zt(D,s);for(;r.length>n;)xr(u,s=r[n++])&&(~no(D,s)||Zt(D,s));return D}});var tn=S((E2,un)=>{un.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var sn=S(nn=>{var io=rn(),ao=tn(),oo=ao.concat("length","prototype");nn.f=Object.getOwnPropertyNames||function(r){return io(r,oo)}});var on=S(an=>{an.f=Object.getOwnPropertySymbols});var ln=S((g2,Dn)=>{var Do=ge(),lo=re(),co=sn(),ho=on(),po=de(),fo=lo([].concat);Dn.exports=Do("Reflect","ownKeys")||function(r){var u=co.f(po(r)),n=ho.f;return n?fo(u,n(r)):u}});var pn=S((F2,hn)=>{var cn=oe(),Eo=ln(),Co=gr(),mo=Ae();hn.exports=function(e,r,u){for(var n=Eo(r),D=mo.f,s=Co.f,i=0;i{var go=se(),Fo=Y(),Ao=/#|\.prototype\./,Se=function(e,r){var u=_o[vo(e)];return u==yo?!0:u==So?!1:Fo(r)?go(r):!!r},vo=Se.normalize=function(e){return String(e).replace(Ao,".").toLowerCase()},_o=Se.data={},So=Se.NATIVE="N",yo=Se.POLYFILL="P";fn.exports=Se});var ze=S((v2,En)=>{var Pr=ee(),To=gr().f,Bo=Sr(),bo=jt(),wo=$e(),No=pn(),Oo=dn();En.exports=function(e,r){var u=e.target,n=e.global,D=e.stat,s,i,f,c,F,a;if(n?i=Pr:D?i=Pr[u]||wo(u,{}):i=(Pr[u]||{}).prototype,i)for(f in r){if(F=r[f],e.dontCallGetSet?(a=To(i,f),c=a&&a.value):c=i[f],s=Oo(n?f:u+(D?".":"#")+f,e.forced),!s&&c!==void 0){if(typeof F==typeof c)continue;No(F,c)}(e.sham||c&&c.sham)&&Bo(F,"sham",!0),bo(i,f,F,e)}}});var Cn=S(()=>{var qo=ze(),kr=ee();qo({global:!0,forced:kr.globalThis!==kr},{globalThis:kr})});var mn=S(()=>{Cn()});var Lr=S((B2,gn)=>{var Io=me();gn.exports=Array.isArray||function(r){return Io(r)=="Array"}});var An=S((b2,Fn)=>{var Ro=TypeError,xo=9007199254740991;Fn.exports=function(e){if(e>xo)throw Ro("Maximum allowed index exceeded");return e}});var _n=S((w2,vn)=>{var Po=me(),ko=re();vn.exports=function(e){if(Po(e)==="Function")return ko(e)}});var $r=S((N2,yn)=>{var Sn=_n(),Lo=Fe(),$o=Oe(),Mo=Sn(Sn.bind);yn.exports=function(e,r){return Lo(e),r===void 0?e:$o?Mo(e,r):function(){return e.apply(r,arguments)}}});var bn=S((O2,Bn)=>{"use strict";var jo=Lr(),Uo=_e(),Go=An(),Vo=$r(),Tn=function(e,r,u,n,D,s,i,f){for(var c=D,F=0,a=i?Vo(i,f):!1,l,h;F0&&jo(l)?(h=Uo(l),c=Tn(e,r,l,h,c,s-1)-1):(Go(c+1),e[c]=l),c++),F++;return c};Bn.exports=Tn});var On=S((q2,Nn)=>{var Xo=he(),Ho=Xo("toStringTag"),wn={};wn[Ho]="z";Nn.exports=String(wn)==="[object z]"});var Mr=S((I2,qn)=>{var zo=On(),Wo=Y(),We=me(),Yo=he(),Qo=Yo("toStringTag"),Ko=Object,Jo=We(function(){return arguments}())=="Arguments",Zo=function(e,r){try{return e[r]}catch{}};qn.exports=zo?We:function(e){var r,u,n;return e===void 0?"Undefined":e===null?"Null":typeof(u=Zo(r=Ko(e),Qo))=="string"?u:Jo?We(r):(n=We(r))=="Object"&&Wo(r.callee)?"Arguments":n}});var Ln=S((R2,kn)=>{var eD=re(),rD=se(),In=Y(),uD=Mr(),tD=ge(),nD=br(),Rn=function(){},sD=[],xn=tD("Reflect","construct"),jr=/^\s*(?:class|function)\b/,iD=eD(jr.exec),aD=!jr.exec(Rn),ye=function(r){if(!In(r))return!1;try{return xn(Rn,sD,r),!0}catch{return!1}},Pn=function(r){if(!In(r))return!1;switch(uD(r)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return aD||!!iD(jr,nD(r))}catch{return!0}};Pn.sham=!0;kn.exports=!xn||rD(function(){var e;return ye(ye.call)||!ye(Object)||!ye(function(){e=!0})||e})?Pn:ye});var Un=S((x2,jn)=>{var $n=Lr(),oD=Ln(),DD=le(),lD=he(),cD=lD("species"),Mn=Array;jn.exports=function(e){var r;return $n(e)&&(r=e.constructor,oD(r)&&(r===Mn||$n(r.prototype))?r=void 0:DD(r)&&(r=r[cD],r===null&&(r=void 0))),r===void 0?Mn:r}});var Vn=S((P2,Gn)=>{var hD=Un();Gn.exports=function(e,r){return new(hD(e))(r===0?0:r)}});var Xn=S(()=>{"use strict";var pD=ze(),fD=bn(),dD=Fe(),ED=dr(),CD=_e(),mD=Vn();pD({target:"Array",proto:!0},{flatMap:function(r){var u=ED(this),n=CD(u),D;return dD(r),D=mD(u,0),D.length=fD(D,u,u,n,0,1,r,arguments.length>1?arguments[1]:void 0),D}})});var Ur=S(($2,Hn)=>{Hn.exports={}});var Wn=S((M2,zn)=>{var gD=he(),FD=Ur(),AD=gD("iterator"),vD=Array.prototype;zn.exports=function(e){return e!==void 0&&(FD.Array===e||vD[AD]===e)}});var Gr=S((j2,Qn)=>{var _D=Mr(),Yn=Le(),SD=Re(),yD=Ur(),TD=he(),BD=TD("iterator");Qn.exports=function(e){if(!SD(e))return Yn(e,BD)||Yn(e,"@@iterator")||yD[_D(e)]}});var Jn=S((U2,Kn)=>{var bD=De(),wD=Fe(),ND=de(),OD=ke(),qD=Gr(),ID=TypeError;Kn.exports=function(e,r){var u=arguments.length<2?qD(e):r;if(wD(u))return ND(bD(u,e));throw ID(OD(e)+" is not iterable")}});var rs=S((G2,es)=>{var RD=De(),Zn=de(),xD=Le();es.exports=function(e,r,u){var n,D;Zn(e);try{if(n=xD(e,"return"),!n){if(r==="throw")throw u;return u}n=RD(n,e)}catch(s){D=!0,n=s}if(r==="throw")throw u;if(D)throw n;return Zn(n),u}});var is=S((V2,ss)=>{var PD=$r(),kD=De(),LD=de(),$D=ke(),MD=Wn(),jD=_e(),us=ir(),UD=Jn(),GD=Gr(),ts=rs(),VD=TypeError,Ye=function(e,r){this.stopped=e,this.result=r},ns=Ye.prototype;ss.exports=function(e,r,u){var n=u&&u.that,D=!!(u&&u.AS_ENTRIES),s=!!(u&&u.IS_RECORD),i=!!(u&&u.IS_ITERATOR),f=!!(u&&u.INTERRUPTED),c=PD(r,n),F,a,l,h,C,d,m,T=function(g){return F&&ts(F,"normal",g),new Ye(!0,g)},w=function(g){return D?(LD(g),f?c(g[0],g[1],T):c(g[0],g[1])):f?c(g,T):c(g)};if(s)F=e.iterator;else if(i)F=e;else{if(a=GD(e),!a)throw VD($D(e)+" is not iterable");if(MD(a)){for(l=0,h=jD(e);h>l;l++)if(C=w(e[l]),C&&us(ns,C))return C;return new Ye(!1)}F=UD(e,a)}for(d=s?e.next:F.next;!(m=kD(d,F)).done;){try{C=w(m.value)}catch(g){ts(F,"throw",g)}if(typeof C=="object"&&C&&us(ns,C))return C}return new Ye(!1)}});var os=S((X2,as)=>{"use strict";var XD=je(),HD=Ae(),zD=Ie();as.exports=function(e,r,u){var n=XD(r);n in e?HD.f(e,n,zD(0,u)):e[n]=u}});var Ds=S(()=>{var WD=ze(),YD=is(),QD=os();WD({target:"Object",stat:!0},{fromEntries:function(r){var u={};return YD(r,function(n,D){QD(u,n,D)},{AS_ENTRIES:!0}),u}})});var Dc=S((W2,Os)=>{var KD=["cliName","cliCategory","cliDescription"];function JD(e,r){if(e==null)return{};var u=ZD(e,r),n,D;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(D=0;D=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function ZD(e,r){if(e==null)return{};var u={},n=Object.keys(e),D,s;for(s=0;s=0)&&(u[D]=e[D]);return u}mn();Xn();Ds();var el=Object.create,Je=Object.defineProperty,rl=Object.getOwnPropertyDescriptor,Xr=Object.getOwnPropertyNames,ul=Object.getPrototypeOf,tl=Object.prototype.hasOwnProperty,Ee=(e,r)=>function(){return e&&(r=(0,e[Xr(e)[0]])(e=0)),r},I=(e,r)=>function(){return r||(0,e[Xr(e)[0]])((r={exports:{}}).exports,r),r.exports},ps=(e,r)=>{for(var u in r)Je(e,u,{get:r[u],enumerable:!0})},fs=(e,r,u,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let D of Xr(r))!tl.call(e,D)&&D!==u&&Je(e,D,{get:()=>r[D],enumerable:!(n=rl(r,D))||n.enumerable});return e},nl=(e,r,u)=>(u=e!=null?el(ul(e)):{},fs(r||!e||!e.__esModule?Je(u,"default",{value:e,enumerable:!0}):u,e)),ds=e=>fs(Je({},"__esModule",{value:!0}),e),Te,q=Ee({""(){Te={env:{},argv:[]}}}),Es=I({"node_modules/angular-html-parser/lib/compiler/src/chars.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0}),e.$EOF=0,e.$BSPACE=8,e.$TAB=9,e.$LF=10,e.$VTAB=11,e.$FF=12,e.$CR=13,e.$SPACE=32,e.$BANG=33,e.$DQ=34,e.$HASH=35,e.$$=36,e.$PERCENT=37,e.$AMPERSAND=38,e.$SQ=39,e.$LPAREN=40,e.$RPAREN=41,e.$STAR=42,e.$PLUS=43,e.$COMMA=44,e.$MINUS=45,e.$PERIOD=46,e.$SLASH=47,e.$COLON=58,e.$SEMICOLON=59,e.$LT=60,e.$EQ=61,e.$GT=62,e.$QUESTION=63,e.$0=48,e.$7=55,e.$9=57,e.$A=65,e.$E=69,e.$F=70,e.$X=88,e.$Z=90,e.$LBRACKET=91,e.$BACKSLASH=92,e.$RBRACKET=93,e.$CARET=94,e.$_=95,e.$a=97,e.$b=98,e.$e=101,e.$f=102,e.$n=110,e.$r=114,e.$t=116,e.$u=117,e.$v=118,e.$x=120,e.$z=122,e.$LBRACE=123,e.$BAR=124,e.$RBRACE=125,e.$NBSP=160,e.$PIPE=124,e.$TILDA=126,e.$AT=64,e.$BT=96;function r(f){return f>=e.$TAB&&f<=e.$SPACE||f==e.$NBSP}e.isWhitespace=r;function u(f){return e.$0<=f&&f<=e.$9}e.isDigit=u;function n(f){return f>=e.$a&&f<=e.$z||f>=e.$A&&f<=e.$Z}e.isAsciiLetter=n;function D(f){return f>=e.$a&&f<=e.$f||f>=e.$A&&f<=e.$F||u(f)}e.isAsciiHexDigit=D;function s(f){return f===e.$LF||f===e.$CR}e.isNewLine=s;function i(f){return e.$0<=f&&f<=e.$7}e.isOctalDigit=i}}),sl=I({"node_modules/angular-html-parser/lib/compiler/src/aot/static_symbol.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=class{constructor(n,D,s){this.filePath=n,this.name=D,this.members=s}assertNoMembers(){if(this.members.length)throw new Error(`Illegal state: symbol without members expected, but got ${JSON.stringify(this)}.`)}};e.StaticSymbol=r;var u=class{constructor(){this.cache=new Map}get(n,D,s){s=s||[];let i=s.length?`.${s.join(".")}`:"",f=`"${n}".${D}${i}`,c=this.cache.get(f);return c||(c=new r(n,D,s),this.cache.set(f,c)),c}};e.StaticSymbolCache=u}}),il=I({"node_modules/angular-html-parser/lib/compiler/src/util.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=/-+([a-z0-9])/g;function u(o){return o.replace(r,function(){for(var E=arguments.length,p=new Array(E),A=0;Ai(p,this,E))}visitStringMap(o,E){let p={};return Object.keys(o).forEach(A=>{p[A]=i(o[A],this,E)}),p}visitPrimitive(o,E){return o}visitOther(o,E){return o}};e.ValueTransformer=F,e.SyncAsync={assertSync:o=>{if(_(o))throw new Error("Illegal state: value cannot be a promise");return o},then:(o,E)=>_(o)?o.then(E):E(o),all:o=>o.some(_)?Promise.all(o):o};function a(o){throw new Error(`Internal Error: ${o}`)}e.error=a;function l(o,E){let p=Error(o);return p[h]=!0,E&&(p[C]=E),p}e.syntaxError=l;var h="ngSyntaxError",C="ngParseErrors";function d(o){return o[h]}e.isSyntaxError=d;function m(o){return o[C]||[]}e.getParseErrors=m;function T(o){return o.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")}e.escapeRegExp=T;var w=Object.getPrototypeOf({});function g(o){return typeof o=="object"&&o!==null&&Object.getPrototypeOf(o)===w}function N(o){let E="";for(let p=0;p=55296&&A<=56319&&o.length>p+1){let P=o.charCodeAt(p+1);P>=56320&&P<=57343&&(p++,A=(A-55296<<10)+P-56320+65536)}A<=127?E+=String.fromCharCode(A):A<=2047?E+=String.fromCharCode(A>>6&31|192,A&63|128):A<=65535?E+=String.fromCharCode(A>>12|224,A>>6&63|128,A&63|128):A<=2097151&&(E+=String.fromCharCode(A>>18&7|240,A>>12&63|128,A>>6&63|128,A&63|128))}return E}e.utf8Encode=N;function R(o){if(typeof o=="string")return o;if(o instanceof Array)return"["+o.map(R).join(", ")+"]";if(o==null)return""+o;if(o.overriddenName)return`${o.overriddenName}`;if(o.name)return`${o.name}`;if(!o.toString)return"object";let E=o.toString();if(E==null)return""+E;let p=E.indexOf(` +`);return p===-1?E:E.substring(0,p)}e.stringify=R;function j(o){return typeof o=="function"&&o.hasOwnProperty("__forward_ref__")?o():o}e.resolveForwardRef=j;function _(o){return!!o&&typeof o.then=="function"}e.isPromise=_;var O=class{constructor(o){this.full=o;let E=o.split(".");this.major=E[0],this.minor=E[1],this.patch=E.slice(2).join(".")}};e.Version=O;var x=typeof window<"u"&&window,k=typeof self<"u"&&typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&self,$=typeof globalThis<"u"&&globalThis,t=$||x||k;e.global=t}}),al=I({"node_modules/angular-html-parser/lib/compiler/src/compile_metadata.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=sl(),u=il(),n=/^(?:(?:\[([^\]]+)\])|(?:\(([^\)]+)\)))|(\@[-\w]+)$/;function D(p){return p.replace(/\W/g,"_")}e.sanitizeIdentifier=D;var s=0;function i(p){if(!p||!p.reference)return null;let A=p.reference;if(A instanceof r.StaticSymbol)return A.name;if(A.__anonymousType)return A.__anonymousType;let P=u.stringify(A);return P.indexOf("(")>=0?(P=`anonymous_${s++}`,A.__anonymousType=P):P=D(P),P}e.identifierName=i;function f(p){let A=p.reference;return A instanceof r.StaticSymbol?A.filePath:`./${u.stringify(A)}`}e.identifierModuleUrl=f;function c(p,A){return`View_${i({reference:p})}_${A}`}e.viewClassName=c;function F(p){return`RenderType_${i({reference:p})}`}e.rendererTypeName=F;function a(p){return`HostView_${i({reference:p})}`}e.hostViewClassName=a;function l(p){return`${i({reference:p})}NgFactory`}e.componentFactoryName=l;var h;(function(p){p[p.Pipe=0]="Pipe",p[p.Directive=1]="Directive",p[p.NgModule=2]="NgModule",p[p.Injectable=3]="Injectable"})(h=e.CompileSummaryKind||(e.CompileSummaryKind={}));function C(p){return p.value!=null?D(p.value):i(p.identifier)}e.tokenName=C;function d(p){return p.identifier!=null?p.identifier.reference:p.value}e.tokenReference=d;var m=class{constructor(){let{moduleUrl:p,styles:A,styleUrls:P}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.moduleUrl=p||null,this.styles=_(A),this.styleUrls=_(P)}};e.CompileStylesheetMetadata=m;var T=class{constructor(p){let{encapsulation:A,template:P,templateUrl:M,htmlAst:z,styles:V,styleUrls:X,externalStylesheets:H,animations:Q,ngContentSelectors:K,interpolation:J,isInline:v,preserveWhitespaces:y}=p;if(this.encapsulation=A,this.template=P,this.templateUrl=M,this.htmlAst=z,this.styles=_(V),this.styleUrls=_(X),this.externalStylesheets=_(H),this.animations=Q?x(Q):[],this.ngContentSelectors=K||[],J&&J.length!=2)throw new Error("'interpolation' should have a start and an end symbol.");this.interpolation=J,this.isInline=v,this.preserveWhitespaces=y}toSummary(){return{ngContentSelectors:this.ngContentSelectors,encapsulation:this.encapsulation,styles:this.styles,animations:this.animations}}};e.CompileTemplateMetadata=T;var w=class{static create(p){let{isHost:A,type:P,isComponent:M,selector:z,exportAs:V,changeDetection:X,inputs:H,outputs:Q,host:K,providers:J,viewProviders:v,queries:y,guards:B,viewQueries:b,entryComponents:L,template:U,componentViewType:G,rendererType:W,componentFactory:ne}=p,be={},we={},Wr={};K!=null&&Object.keys(K).forEach(Z=>{let ie=K[Z],Ce=Z.match(n);Ce===null?Wr[Z]=ie:Ce[1]!=null?we[Ce[1]]=ie:Ce[2]!=null&&(be[Ce[2]]=ie)});let Yr={};H!=null&&H.forEach(Z=>{let ie=u.splitAtColon(Z,[Z,Z]);Yr[ie[0]]=ie[1]});let Qr={};return Q!=null&&Q.forEach(Z=>{let ie=u.splitAtColon(Z,[Z,Z]);Qr[ie[0]]=ie[1]}),new w({isHost:A,type:P,isComponent:!!M,selector:z,exportAs:V,changeDetection:X,inputs:Yr,outputs:Qr,hostListeners:be,hostProperties:we,hostAttributes:Wr,providers:J,viewProviders:v,queries:y,guards:B,viewQueries:b,entryComponents:L,template:U,componentViewType:G,rendererType:W,componentFactory:ne})}constructor(p){let{isHost:A,type:P,isComponent:M,selector:z,exportAs:V,changeDetection:X,inputs:H,outputs:Q,hostListeners:K,hostProperties:J,hostAttributes:v,providers:y,viewProviders:B,queries:b,guards:L,viewQueries:U,entryComponents:G,template:W,componentViewType:ne,rendererType:be,componentFactory:we}=p;this.isHost=!!A,this.type=P,this.isComponent=M,this.selector=z,this.exportAs=V,this.changeDetection=X,this.inputs=H,this.outputs=Q,this.hostListeners=K,this.hostProperties=J,this.hostAttributes=v,this.providers=_(y),this.viewProviders=_(B),this.queries=_(b),this.guards=L,this.viewQueries=_(U),this.entryComponents=_(G),this.template=W,this.componentViewType=ne,this.rendererType=be,this.componentFactory=we}toSummary(){return{summaryKind:h.Directive,type:this.type,isComponent:this.isComponent,selector:this.selector,exportAs:this.exportAs,inputs:this.inputs,outputs:this.outputs,hostListeners:this.hostListeners,hostProperties:this.hostProperties,hostAttributes:this.hostAttributes,providers:this.providers,viewProviders:this.viewProviders,queries:this.queries,guards:this.guards,viewQueries:this.viewQueries,entryComponents:this.entryComponents,changeDetection:this.changeDetection,template:this.template&&this.template.toSummary(),componentViewType:this.componentViewType,rendererType:this.rendererType,componentFactory:this.componentFactory}}};e.CompileDirectiveMetadata=w;var g=class{constructor(p){let{type:A,name:P,pure:M}=p;this.type=A,this.name=P,this.pure=!!M}toSummary(){return{summaryKind:h.Pipe,type:this.type,name:this.name,pure:this.pure}}};e.CompilePipeMetadata=g;var N=class{};e.CompileShallowModuleMetadata=N;var R=class{constructor(p){let{type:A,providers:P,declaredDirectives:M,exportedDirectives:z,declaredPipes:V,exportedPipes:X,entryComponents:H,bootstrapComponents:Q,importedModules:K,exportedModules:J,schemas:v,transitiveModule:y,id:B}=p;this.type=A||null,this.declaredDirectives=_(M),this.exportedDirectives=_(z),this.declaredPipes=_(V),this.exportedPipes=_(X),this.providers=_(P),this.entryComponents=_(H),this.bootstrapComponents=_(Q),this.importedModules=_(K),this.exportedModules=_(J),this.schemas=_(v),this.id=B||null,this.transitiveModule=y||null}toSummary(){let p=this.transitiveModule;return{summaryKind:h.NgModule,type:this.type,entryComponents:p.entryComponents,providers:p.providers,modules:p.modules,exportedDirectives:p.exportedDirectives,exportedPipes:p.exportedPipes}}};e.CompileNgModuleMetadata=R;var j=class{constructor(){this.directivesSet=new Set,this.directives=[],this.exportedDirectivesSet=new Set,this.exportedDirectives=[],this.pipesSet=new Set,this.pipes=[],this.exportedPipesSet=new Set,this.exportedPipes=[],this.modulesSet=new Set,this.modules=[],this.entryComponentsSet=new Set,this.entryComponents=[],this.providers=[]}addProvider(p,A){this.providers.push({provider:p,module:A})}addDirective(p){this.directivesSet.has(p.reference)||(this.directivesSet.add(p.reference),this.directives.push(p))}addExportedDirective(p){this.exportedDirectivesSet.has(p.reference)||(this.exportedDirectivesSet.add(p.reference),this.exportedDirectives.push(p))}addPipe(p){this.pipesSet.has(p.reference)||(this.pipesSet.add(p.reference),this.pipes.push(p))}addExportedPipe(p){this.exportedPipesSet.has(p.reference)||(this.exportedPipesSet.add(p.reference),this.exportedPipes.push(p))}addModule(p){this.modulesSet.has(p.reference)||(this.modulesSet.add(p.reference),this.modules.push(p))}addEntryComponent(p){this.entryComponentsSet.has(p.componentType)||(this.entryComponentsSet.add(p.componentType),this.entryComponents.push(p))}};e.TransitiveCompileNgModuleMetadata=j;function _(p){return p||[]}var O=class{constructor(p,A){let{useClass:P,useValue:M,useExisting:z,useFactory:V,deps:X,multi:H}=A;this.token=p,this.useClass=P||null,this.useValue=M,this.useExisting=z,this.useFactory=V||null,this.dependencies=X||null,this.multi=!!H}};e.ProviderMeta=O;function x(p){return p.reduce((A,P)=>{let M=Array.isArray(P)?x(P):P;return A.concat(M)},[])}e.flatten=x;function k(p){return p.replace(/(\w+:\/\/[\w:-]+)?(\/+)?/,"ng:///")}function $(p,A,P){let M;return P.isInline?A.type.reference instanceof r.StaticSymbol?M=`${A.type.reference.filePath}.${A.type.reference.name}.html`:M=`${i(p)}/${i(A.type)}.html`:M=P.templateUrl,A.type.reference instanceof r.StaticSymbol?M:k(M)}e.templateSourceUrl=$;function t(p,A){let P=p.moduleUrl.split(/\/\\/g),M=P[P.length-1];return k(`css/${A}${M}.ngstyle.js`)}e.sharedStylesheetJitUrl=t;function o(p){return k(`${i(p.type)}/module.ngfactory.js`)}e.ngModuleJitUrl=o;function E(p,A){return k(`${i(p)}/${i(A.type)}.ngfactory.js`)}e.templateJitUrl=E}}),Be=I({"node_modules/angular-html-parser/lib/compiler/src/parse_util.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=Es(),u=al(),n=class{constructor(a,l,h,C){this.file=a,this.offset=l,this.line=h,this.col=C}toString(){return this.offset!=null?`${this.file.url}@${this.line}:${this.col}`:this.file.url}moveBy(a){let l=this.file.content,h=l.length,C=this.offset,d=this.line,m=this.col;for(;C>0&&a<0;)if(C--,a++,l.charCodeAt(C)==r.$LF){d--;let w=l.substr(0,C-1).lastIndexOf(String.fromCharCode(r.$LF));m=w>0?C-w:C}else m--;for(;C0;){let T=l.charCodeAt(C);C++,a--,T==r.$LF?(d++,m=0):m++}return new n(this.file,C,d,m)}getContext(a,l){let h=this.file.content,C=this.offset;if(C!=null){C>h.length-1&&(C=h.length-1);let d=C,m=0,T=0;for(;m0&&(C--,m++,!(h[C]==` +`&&++T==l)););for(m=0,T=0;m2&&arguments[2]!==void 0?arguments[2]:null;this.start=a,this.end=l,this.details=h}toString(){return this.start.file.content.substring(this.start.offset,this.end.offset)}};e.ParseSourceSpan=s,e.EMPTY_PARSE_LOCATION=new n(new D("",""),0,0,0),e.EMPTY_SOURCE_SPAN=new s(e.EMPTY_PARSE_LOCATION,e.EMPTY_PARSE_LOCATION);var i;(function(a){a[a.WARNING=0]="WARNING",a[a.ERROR=1]="ERROR"})(i=e.ParseErrorLevel||(e.ParseErrorLevel={}));var f=class{constructor(a,l){let h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:i.ERROR;this.span=a,this.msg=l,this.level=h}contextualMessage(){let a=this.span.start.getContext(100,3);return a?`${this.msg} ("${a.before}[${i[this.level]} ->]${a.after}")`:this.msg}toString(){let a=this.span.details?`, ${this.span.details}`:"";return`${this.contextualMessage()}: ${this.span.start}${a}`}};e.ParseError=f;function c(a,l){let h=u.identifierModuleUrl(l),C=h!=null?`in ${a} ${u.identifierName(l)} in ${h}`:`in ${a} ${u.identifierName(l)}`,d=new D("",C);return new s(new n(d,-1,-1,-1),new n(d,-1,-1,-1))}e.typeSourceSpan=c;function F(a,l,h){let C=`in ${a} ${l} in ${h}`,d=new D("",C);return new s(new n(d,-1,-1,-1),new n(d,-1,-1,-1))}e.r3JitTypeSourceSpan=F}}),ol=I({"src/utils/front-matter/parse.js"(e,r){"use strict";q();var u=new RegExp("^(?-{3}|\\+{3})(?[^\\n]*)\\n(?:|(?.*?)\\n)(?\\k|\\.{3})[^\\S\\n]*(?:\\n|$)","s");function n(D){let s=D.match(u);if(!s)return{content:D};let{startDelimiter:i,language:f,value:c="",endDelimiter:F}=s.groups,a=f.trim()||"yaml";if(i==="+++"&&(a="toml"),a!=="yaml"&&i!==F)return{content:D};let[l]=s;return{frontMatter:{type:"front-matter",lang:a,value:c,startDelimiter:i,endDelimiter:F,raw:l.replace(/\n$/,"")},content:l.replace(/[^\n]/g," ")+D.slice(l.length)}}r.exports=n}}),Cs=I({"src/utils/get-last.js"(e,r){"use strict";q();var u=n=>n[n.length-1];r.exports=u}}),Dl=I({"src/common/parser-create-error.js"(e,r){"use strict";q();function u(n,D){let s=new SyntaxError(n+" ("+D.start.line+":"+D.start.column+")");return s.loc=D,s}r.exports=u}}),ms={};ps(ms,{default:()=>ll});function ll(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var cl=Ee({"node_modules/escape-string-regexp/index.js"(){q()}}),gs=I({"node_modules/semver/internal/debug.js"(e,r){q();var u=typeof Te=="object"&&Te.env&&Te.env.NODE_DEBUG&&/\bsemver\b/i.test(Te.env.NODE_DEBUG)?function(){for(var n=arguments.length,D=new Array(n),s=0;s{};r.exports=u}}),Fs=I({"node_modules/semver/internal/constants.js"(e,r){q();var u="2.0.0",n=256,D=Number.MAX_SAFE_INTEGER||9007199254740991,s=16;r.exports={SEMVER_SPEC_VERSION:u,MAX_LENGTH:n,MAX_SAFE_INTEGER:D,MAX_SAFE_COMPONENT_LENGTH:s}}}),hl=I({"node_modules/semver/internal/re.js"(e,r){q();var{MAX_SAFE_COMPONENT_LENGTH:u}=Fs(),n=gs();e=r.exports={};var D=e.re=[],s=e.src=[],i=e.t={},f=0,c=(F,a,l)=>{let h=f++;n(F,h,a),i[F]=h,s[h]=a,D[h]=new RegExp(a,l?"g":void 0)};c("NUMERICIDENTIFIER","0|[1-9]\\d*"),c("NUMERICIDENTIFIERLOOSE","[0-9]+"),c("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),c("MAINVERSION",`(${s[i.NUMERICIDENTIFIER]})\\.(${s[i.NUMERICIDENTIFIER]})\\.(${s[i.NUMERICIDENTIFIER]})`),c("MAINVERSIONLOOSE",`(${s[i.NUMERICIDENTIFIERLOOSE]})\\.(${s[i.NUMERICIDENTIFIERLOOSE]})\\.(${s[i.NUMERICIDENTIFIERLOOSE]})`),c("PRERELEASEIDENTIFIER",`(?:${s[i.NUMERICIDENTIFIER]}|${s[i.NONNUMERICIDENTIFIER]})`),c("PRERELEASEIDENTIFIERLOOSE",`(?:${s[i.NUMERICIDENTIFIERLOOSE]}|${s[i.NONNUMERICIDENTIFIER]})`),c("PRERELEASE",`(?:-(${s[i.PRERELEASEIDENTIFIER]}(?:\\.${s[i.PRERELEASEIDENTIFIER]})*))`),c("PRERELEASELOOSE",`(?:-?(${s[i.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${s[i.PRERELEASEIDENTIFIERLOOSE]})*))`),c("BUILDIDENTIFIER","[0-9A-Za-z-]+"),c("BUILD",`(?:\\+(${s[i.BUILDIDENTIFIER]}(?:\\.${s[i.BUILDIDENTIFIER]})*))`),c("FULLPLAIN",`v?${s[i.MAINVERSION]}${s[i.PRERELEASE]}?${s[i.BUILD]}?`),c("FULL",`^${s[i.FULLPLAIN]}$`),c("LOOSEPLAIN",`[v=\\s]*${s[i.MAINVERSIONLOOSE]}${s[i.PRERELEASELOOSE]}?${s[i.BUILD]}?`),c("LOOSE",`^${s[i.LOOSEPLAIN]}$`),c("GTLT","((?:<|>)?=?)"),c("XRANGEIDENTIFIERLOOSE",`${s[i.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),c("XRANGEIDENTIFIER",`${s[i.NUMERICIDENTIFIER]}|x|X|\\*`),c("XRANGEPLAIN",`[v=\\s]*(${s[i.XRANGEIDENTIFIER]})(?:\\.(${s[i.XRANGEIDENTIFIER]})(?:\\.(${s[i.XRANGEIDENTIFIER]})(?:${s[i.PRERELEASE]})?${s[i.BUILD]}?)?)?`),c("XRANGEPLAINLOOSE",`[v=\\s]*(${s[i.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[i.XRANGEIDENTIFIERLOOSE]})(?:\\.(${s[i.XRANGEIDENTIFIERLOOSE]})(?:${s[i.PRERELEASELOOSE]})?${s[i.BUILD]}?)?)?`),c("XRANGE",`^${s[i.GTLT]}\\s*${s[i.XRANGEPLAIN]}$`),c("XRANGELOOSE",`^${s[i.GTLT]}\\s*${s[i.XRANGEPLAINLOOSE]}$`),c("COERCE",`(^|[^\\d])(\\d{1,${u}})(?:\\.(\\d{1,${u}}))?(?:\\.(\\d{1,${u}}))?(?:$|[^\\d])`),c("COERCERTL",s[i.COERCE],!0),c("LONETILDE","(?:~>?)"),c("TILDETRIM",`(\\s*)${s[i.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",c("TILDE",`^${s[i.LONETILDE]}${s[i.XRANGEPLAIN]}$`),c("TILDELOOSE",`^${s[i.LONETILDE]}${s[i.XRANGEPLAINLOOSE]}$`),c("LONECARET","(?:\\^)"),c("CARETTRIM",`(\\s*)${s[i.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",c("CARET",`^${s[i.LONECARET]}${s[i.XRANGEPLAIN]}$`),c("CARETLOOSE",`^${s[i.LONECARET]}${s[i.XRANGEPLAINLOOSE]}$`),c("COMPARATORLOOSE",`^${s[i.GTLT]}\\s*(${s[i.LOOSEPLAIN]})$|^$`),c("COMPARATOR",`^${s[i.GTLT]}\\s*(${s[i.FULLPLAIN]})$|^$`),c("COMPARATORTRIM",`(\\s*)${s[i.GTLT]}\\s*(${s[i.LOOSEPLAIN]}|${s[i.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",c("HYPHENRANGE",`^\\s*(${s[i.XRANGEPLAIN]})\\s+-\\s+(${s[i.XRANGEPLAIN]})\\s*$`),c("HYPHENRANGELOOSE",`^\\s*(${s[i.XRANGEPLAINLOOSE]})\\s+-\\s+(${s[i.XRANGEPLAINLOOSE]})\\s*$`),c("STAR","(<|>)?=?\\s*\\*"),c("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),c("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}}),pl=I({"node_modules/semver/internal/parse-options.js"(e,r){q();var u=["includePrerelease","loose","rtl"],n=D=>D?typeof D!="object"?{loose:!0}:u.filter(s=>D[s]).reduce((s,i)=>(s[i]=!0,s),{}):{};r.exports=n}}),fl=I({"node_modules/semver/internal/identifiers.js"(e,r){q();var u=/^[0-9]+$/,n=(s,i)=>{let f=u.test(s),c=u.test(i);return f&&c&&(s=+s,i=+i),s===i?0:f&&!c?-1:c&&!f?1:sn(i,s);r.exports={compareIdentifiers:n,rcompareIdentifiers:D}}}),dl=I({"node_modules/semver/classes/semver.js"(e,r){q();var u=gs(),{MAX_LENGTH:n,MAX_SAFE_INTEGER:D}=Fs(),{re:s,t:i}=hl(),f=pl(),{compareIdentifiers:c}=fl(),F=class{constructor(a,l){if(l=f(l),a instanceof F){if(a.loose===!!l.loose&&a.includePrerelease===!!l.includePrerelease)return a;a=a.version}else if(typeof a!="string")throw new TypeError(`Invalid Version: ${a}`);if(a.length>n)throw new TypeError(`version is longer than ${n} characters`);u("SemVer",a,l),this.options=l,this.loose=!!l.loose,this.includePrerelease=!!l.includePrerelease;let h=a.trim().match(l.loose?s[i.LOOSE]:s[i.FULL]);if(!h)throw new TypeError(`Invalid Version: ${a}`);if(this.raw=a,this.major=+h[1],this.minor=+h[2],this.patch=+h[3],this.major>D||this.major<0)throw new TypeError("Invalid major version");if(this.minor>D||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>D||this.patch<0)throw new TypeError("Invalid patch version");h[4]?this.prerelease=h[4].split(".").map(C=>{if(/^[0-9]+$/.test(C)){let d=+C;if(d>=0&&d=0;)typeof this.prerelease[h]=="number"&&(this.prerelease[h]++,h=-2);h===-1&&this.prerelease.push(0)}l&&(c(this.prerelease[0],l)===0?isNaN(this.prerelease[1])&&(this.prerelease=[l,0]):this.prerelease=[l,0]);break;default:throw new Error(`invalid increment argument: ${a}`)}return this.format(),this.raw=this.version,this}};r.exports=F}}),Hr=I({"node_modules/semver/functions/compare.js"(e,r){q();var u=dl(),n=(D,s,i)=>new u(D,i).compare(new u(s,i));r.exports=n}}),El=I({"node_modules/semver/functions/lt.js"(e,r){q();var u=Hr(),n=(D,s,i)=>u(D,s,i)<0;r.exports=n}}),Cl=I({"node_modules/semver/functions/gte.js"(e,r){q();var u=Hr(),n=(D,s,i)=>u(D,s,i)>=0;r.exports=n}}),ml=I({"src/utils/arrayify.js"(e,r){"use strict";q(),r.exports=(u,n)=>Object.entries(u).map(D=>{let[s,i]=D;return Object.assign({[n]:s},i)})}}),gl=I({"package.json"(e,r){r.exports={version:"2.8.8"}}}),Fl=I({"node_modules/outdent/lib/index.js"(e,r){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0}),e.outdent=void 0;function u(){for(var g=[],N=0;Ntypeof l=="string"||typeof l=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",since:"1.16.0",description:"JavaScript"},{value:"babel-flow",since:"1.16.0",description:"Flow"},{value:"babel-ts",since:"2.0.0",description:"TypeScript"},{value:"typescript",since:"1.4.0",description:"TypeScript"},{value:"acorn",since:"2.6.0",description:"JavaScript"},{value:"espree",since:"2.2.0",description:"JavaScript"},{value:"meriyah",since:"2.2.0",description:"JavaScript"},{value:"css",since:"1.7.1",description:"CSS"},{value:"less",since:"1.7.1",description:"Less"},{value:"scss",since:"1.7.1",description:"SCSS"},{value:"json",since:"1.5.0",description:"JSON"},{value:"json5",since:"1.13.0",description:"JSON5"},{value:"json-stringify",since:"1.13.0",description:"JSON.stringify"},{value:"graphql",since:"1.5.0",description:"GraphQL"},{value:"markdown",since:"1.8.0",description:"Markdown"},{value:"mdx",since:"1.15.0",description:"MDX"},{value:"vue",since:"1.10.0",description:"Vue"},{value:"yaml",since:"1.14.0",description:"YAML"},{value:"glimmer",since:"2.3.0",description:"Ember / Handlebars"},{value:"html",since:"1.15.0",description:"HTML"},{value:"angular",since:"1.15.0",description:"Angular"},{value:"lwc",since:"1.17.0",description:"Lightning Web Components"}]},plugins:{since:"1.10.0",type:"path",array:!0,default:[{value:[]}],category:c,description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:l=>typeof l=="string"||typeof l=="object",cliName:"plugin",cliCategory:n},pluginSearchDirs:{since:"1.13.0",type:"path",array:!0,default:[{value:[]}],category:c,description:u` + Custom directory that contains prettier plugins in node_modules subdirectory. + Overrides default behavior when plugins are searched relatively to the location of Prettier. + Multiple values are accepted. + `,exception:l=>typeof l=="string"||typeof l=="object",cliName:"plugin-search-dir",cliCategory:n},printWidth:{since:"0.0.0",category:c,type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},rangeEnd:{since:"1.4.0",category:F,type:"int",default:Number.POSITIVE_INFINITY,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:u` + Format code ending at a given character offset (exclusive). + The range will extend forwards to the end of the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:D},rangeStart:{since:"1.4.0",category:F,type:"int",default:0,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:u` + Format code starting at a given character offset. + The range will extend backwards to the start of the first line containing the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:D},requirePragma:{since:"1.7.0",category:F,type:"boolean",default:!1,description:u` + Require either '@prettier' or '@format' to be present in the file's first docblock comment + in order for it to be formatted. + `,cliCategory:i},tabWidth:{type:"int",category:c,default:2,description:"Number of spaces per indentation level.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},useTabs:{since:"1.0.0",category:c,type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{since:"2.1.0",category:c,type:"choice",default:[{since:"2.1.0",value:"auto"}],description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};r.exports={CATEGORY_CONFIG:n,CATEGORY_EDITOR:D,CATEGORY_FORMAT:s,CATEGORY_OTHER:i,CATEGORY_OUTPUT:f,CATEGORY_GLOBAL:c,CATEGORY_SPECIAL:F,options:a}}}),vl=I({"src/main/support.js"(e,r){"use strict";q();var u={compare:Hr(),lt:El(),gte:Cl()},n=ml(),D=gl().version,s=Al().options;function i(){let{plugins:c=[],showUnreleased:F=!1,showDeprecated:a=!1,showInternal:l=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},h=D.split("-",1)[0],C=c.flatMap(g=>g.languages||[]).filter(m),d=n(Object.assign({},...c.map(g=>{let{options:N}=g;return N}),s),"name").filter(g=>m(g)&&T(g)).sort((g,N)=>g.name===N.name?0:g.name{g=Object.assign({},g),Array.isArray(g.default)&&(g.default=g.default.length===1?g.default[0].value:g.default.filter(m).sort((R,j)=>u.compare(j.since,R.since))[0].value),Array.isArray(g.choices)&&(g.choices=g.choices.filter(R=>m(R)&&T(R)),g.name==="parser"&&f(g,C,c));let N=Object.fromEntries(c.filter(R=>R.defaultOptions&&R.defaultOptions[g.name]!==void 0).map(R=>[R.name,R.defaultOptions[g.name]]));return Object.assign(Object.assign({},g),{},{pluginDefaults:N})});return{languages:C,options:d};function m(g){return F||!("since"in g)||g.since&&u.gte(h,g.since)}function T(g){return a||!("deprecated"in g)||g.deprecated&&u.lt(h,g.deprecated)}function w(g){if(l)return g;let{cliName:N,cliCategory:R,cliDescription:j}=g;return JD(g,KD)}}function f(c,F,a){let l=new Set(c.choices.map(h=>h.value));for(let h of F)if(h.parsers){for(let C of h.parsers)if(!l.has(C)){l.add(C);let d=a.find(T=>T.parsers&&T.parsers[C]),m=h.name;d&&d.name&&(m+=` (plugin: ${d.name})`),c.choices.push({value:C,description:m})}}}r.exports={getSupportInfo:i}}}),_l=I({"src/utils/is-non-empty-array.js"(e,r){"use strict";q();function u(n){return Array.isArray(n)&&n.length>0}r.exports=u}});function Sl(){let{onlyFirst:e=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=["[\\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(r,e?void 0:"g")}var yl=Ee({"node_modules/strip-ansi/node_modules/ansi-regex/index.js"(){q()}});function Tl(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Sl(),"")}var Bl=Ee({"node_modules/strip-ansi/index.js"(){q(),yl()}});function bl(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var wl=Ee({"node_modules/is-fullwidth-code-point/index.js"(){q()}}),Nl=I({"node_modules/emoji-regex/index.js"(e,r){"use strict";q(),r.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\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])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\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\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\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-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*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\u26A7\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-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\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[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}}}),As={};ps(As,{default:()=>Ol});function Ol(e){if(typeof e!="string"||e.length===0||(e=Tl(e),e.length===0))return 0;e=e.replace((0,vs.default)()," ");let r=0;for(let u=0;u=127&&n<=159||n>=768&&n<=879||(n>65535&&u++,r+=bl(n)?2:1)}return r}var vs,ql=Ee({"node_modules/string-width/index.js"(){q(),Bl(),wl(),vs=nl(Nl())}}),Il=I({"src/utils/get-string-width.js"(e,r){"use strict";q();var u=(ql(),ds(As)).default,n=/[^\x20-\x7F]/;function D(s){return s?n.test(s)?u(s):s.length:0}r.exports=D}}),zr=I({"src/utils/text/skip.js"(e,r){"use strict";q();function u(f){return(c,F,a)=>{let l=a&&a.backwards;if(F===!1)return!1;let{length:h}=c,C=F;for(;C>=0&&Cv[v.length-2];function T(v){return(y,B,b)=>{let L=b&&b.backwards;if(B===!1)return!1;let{length:U}=y,G=B;for(;G>=0&&G2&&arguments[2]!==void 0?arguments[2]:{},b=c(v,B.backwards?y-1:y,B),L=C(v,b,B);return b!==L}function g(v,y,B){for(let b=y;b2&&arguments[2]!==void 0?arguments[2]:{};return c(v,B.backwards?y-1:y,B)!==y}function k(v,y){let B=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,b=0;for(let L=B;Lne?U:L}return G}function o(v,y){let B=v.slice(1,-1),b=y.parser==="json"||y.parser==="json5"&&y.quoteProps==="preserve"&&!y.singleQuote?'"':y.__isInHtmlAttribute?"'":t(B,y.singleQuote?"'":'"').quote;return E(B,b,!(y.parser==="css"||y.parser==="less"||y.parser==="scss"||y.__embeddedInHtml))}function E(v,y,B){let b=y==='"'?"'":'"',L=/\\(.)|(["'])/gs,U=v.replace(L,(G,W,ne)=>W===b?W:ne===y?"\\"+ne:ne||(B&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(W)?W:"\\"+W));return y+U+y}function p(v){return v.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(\d)/,"$1$2$3").replace(/^([+-]?[\d.]+)e[+-]?0+$/,"$1").replace(/^([+-])?\./,"$10.").replace(/(\.\d+?)0+(?=e|$)/,"$1").replace(/\.(?=e|$)/,"")}function A(v,y){let B=v.match(new RegExp(`(${u(y)})+`,"g"));return B===null?0:B.reduce((b,L)=>Math.max(b,L.length/y.length),0)}function P(v,y){let B=v.match(new RegExp(`(${u(y)})+`,"g"));if(B===null)return 0;let b=new Map,L=0;for(let U of B){let G=U.length/y.length;b.set(G,!0),G>L&&(L=G)}for(let U=1;U{let{name:U}=L;return U.toLowerCase()===v})||B.find(L=>{let{aliases:U}=L;return Array.isArray(U)&&U.includes(v)})||B.find(L=>{let{extensions:U}=L;return Array.isArray(U)&&U.includes(`.${v}`)});return b&&b.parsers[0]}function Q(v){return v&&v.type==="front-matter"}function K(v){let y=new WeakMap;return function(B){return y.has(B)||y.set(B,Symbol(v)),y.get(B)}}function J(v){let y=v.type||v.kind||"(unknown type)",B=String(v.name||v.id&&(typeof v.id=="object"?v.id.name:v.id)||v.key&&(typeof v.key=="object"?v.key.name:v.key)||v.value&&(typeof v.value=="object"?"":String(v.value))||v.operator||"");return B.length>20&&(B=B.slice(0,19)+"\u2026"),y+(B?" "+B:"")}r.exports={inferParserByLanguage:H,getStringWidth:i,getMaxContinuousCount:A,getMinNotPresentContinuousCount:P,getPenultimate:m,getLast:n,getNextNonSpaceNonCommentCharacterIndexWithStartIndex:d,getNextNonSpaceNonCommentCharacterIndex:_,getNextNonSpaceNonCommentCharacter:O,skip:T,skipWhitespace:f,skipSpaces:c,skipToLineEnd:F,skipEverythingButNewLine:a,skipInlineComment:l,skipTrailingComment:h,skipNewline:C,isNextLineEmptyAfterIndex:R,isNextLineEmpty:j,isPreviousLineEmpty:N,hasNewline:w,hasNewlineInRange:g,hasSpaces:x,getAlignmentSize:k,getIndentSize:$,getPreferredQuote:t,printString:o,printNumber:p,makeString:E,addLeadingComment:z,addDanglingComment:V,addTrailingComment:X,isFrontMatterNode:Q,isNonEmptyArray:s,createGroupIdMapper:K}}}),Pl=I({"vendors/html-tag-names.json"(e,r){r.exports={htmlTagNames:["a","abbr","acronym","address","applet","area","article","aside","audio","b","base","basefont","bdi","bdo","bgsound","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","command","content","data","datalist","dd","del","details","dfn","dialog","dir","div","dl","dt","element","em","embed","fieldset","figcaption","figure","font","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","image","img","input","ins","isindex","kbd","keygen","label","legend","li","link","listing","main","map","mark","marquee","math","menu","menuitem","meta","meter","multicol","nav","nextid","nobr","noembed","noframes","noscript","object","ol","optgroup","option","output","p","param","picture","plaintext","pre","progress","q","rb","rbc","rp","rt","rtc","ruby","s","samp","script","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","tt","u","ul","var","video","wbr","xmp"]}}}),Ts=I({"src/language-html/utils/array-to-map.js"(e,r){"use strict";q();function u(n){let D=Object.create(null);for(let s of n)D[s]=!0;return D}r.exports=u}}),kl=I({"src/language-html/utils/html-tag-names.js"(e,r){"use strict";q();var{htmlTagNames:u}=Pl(),n=Ts(),D=n(u);r.exports=D}}),Ll=I({"vendors/html-element-attributes.json"(e,r){r.exports={htmlElementAttributes:{"*":["accesskey","autocapitalize","autofocus","class","contenteditable","dir","draggable","enterkeyhint","hidden","id","inputmode","is","itemid","itemprop","itemref","itemscope","itemtype","lang","nonce","slot","spellcheck","style","tabindex","title","translate"],a:["charset","coords","download","href","hreflang","name","ping","referrerpolicy","rel","rev","shape","target","type"],applet:["align","alt","archive","code","codebase","height","hspace","name","object","vspace","width"],area:["alt","coords","download","href","hreflang","nohref","ping","referrerpolicy","rel","shape","target","type"],audio:["autoplay","controls","crossorigin","loop","muted","preload","src"],base:["href","target"],basefont:["color","face","size"],blockquote:["cite"],body:["alink","background","bgcolor","link","text","vlink"],br:["clear"],button:["disabled","form","formaction","formenctype","formmethod","formnovalidate","formtarget","name","type","value"],canvas:["height","width"],caption:["align"],col:["align","char","charoff","span","valign","width"],colgroup:["align","char","charoff","span","valign","width"],data:["value"],del:["cite","datetime"],details:["open"],dialog:["open"],dir:["compact"],div:["align"],dl:["compact"],embed:["height","src","type","width"],fieldset:["disabled","form","name"],font:["color","face","size"],form:["accept","accept-charset","action","autocomplete","enctype","method","name","novalidate","target"],frame:["frameborder","longdesc","marginheight","marginwidth","name","noresize","scrolling","src"],frameset:["cols","rows"],h1:["align"],h2:["align"],h3:["align"],h4:["align"],h5:["align"],h6:["align"],head:["profile"],hr:["align","noshade","size","width"],html:["manifest","version"],iframe:["align","allow","allowfullscreen","allowpaymentrequest","allowusermedia","frameborder","height","loading","longdesc","marginheight","marginwidth","name","referrerpolicy","sandbox","scrolling","src","srcdoc","width"],img:["align","alt","border","crossorigin","decoding","height","hspace","ismap","loading","longdesc","name","referrerpolicy","sizes","src","srcset","usemap","vspace","width"],input:["accept","align","alt","autocomplete","checked","dirname","disabled","form","formaction","formenctype","formmethod","formnovalidate","formtarget","height","ismap","list","max","maxlength","min","minlength","multiple","name","pattern","placeholder","readonly","required","size","src","step","type","usemap","value","width"],ins:["cite","datetime"],isindex:["prompt"],label:["for","form"],legend:["align"],li:["type","value"],link:["as","charset","color","crossorigin","disabled","href","hreflang","imagesizes","imagesrcset","integrity","media","referrerpolicy","rel","rev","sizes","target","type"],map:["name"],menu:["compact"],meta:["charset","content","http-equiv","media","name","scheme"],meter:["high","low","max","min","optimum","value"],object:["align","archive","border","classid","codebase","codetype","data","declare","form","height","hspace","name","standby","type","typemustmatch","usemap","vspace","width"],ol:["compact","reversed","start","type"],optgroup:["disabled","label"],option:["disabled","label","selected","value"],output:["for","form","name"],p:["align"],param:["name","type","value","valuetype"],pre:["width"],progress:["max","value"],q:["cite"],script:["async","charset","crossorigin","defer","integrity","language","nomodule","referrerpolicy","src","type"],select:["autocomplete","disabled","form","multiple","name","required","size"],slot:["name"],source:["height","media","sizes","src","srcset","type","width"],style:["media","type"],table:["align","bgcolor","border","cellpadding","cellspacing","frame","rules","summary","width"],tbody:["align","char","charoff","valign"],td:["abbr","align","axis","bgcolor","char","charoff","colspan","headers","height","nowrap","rowspan","scope","valign","width"],textarea:["autocomplete","cols","dirname","disabled","form","maxlength","minlength","name","placeholder","readonly","required","rows","wrap"],tfoot:["align","char","charoff","valign"],th:["abbr","align","axis","bgcolor","char","charoff","colspan","headers","height","nowrap","rowspan","scope","valign","width"],thead:["align","char","charoff","valign"],time:["datetime"],tr:["align","bgcolor","char","charoff","valign"],track:["default","kind","label","src","srclang"],ul:["compact","type"],video:["autoplay","controls","crossorigin","height","loop","muted","playsinline","poster","preload","src","width"]}}}}),$l=I({"src/language-html/utils/map-object.js"(e,r){"use strict";q();function u(n,D){let s=Object.create(null);for(let[i,f]of Object.entries(n))s[i]=D(f,i);return s}r.exports=u}}),Ml=I({"src/language-html/utils/html-elements-attributes.js"(e,r){"use strict";q();var{htmlElementAttributes:u}=Ll(),n=$l(),D=Ts(),s=n(u,D);r.exports=s}}),jl=I({"src/language-html/utils/is-unknown-namespace.js"(e,r){"use strict";q();function u(n){return n.type==="element"&&!n.hasExplicitNamespace&&!["html","svg"].includes(n.namespace)}r.exports=u}}),Ul=I({"src/language-html/pragma.js"(e,r){"use strict";q();function u(D){return/^\s*/.test(D)}function n(D){return` + +`+D.replace(/^\s*\n/,"")}r.exports={hasPragma:u,insertPragma:n}}}),Gl=I({"src/language-html/ast.js"(e,r){"use strict";q();var u={attrs:!0,children:!0},n=new Set(["parent"]),D=class{constructor(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};for(let f of new Set([...n,...Object.keys(i)]))this.setProperty(f,i[f])}setProperty(i,f){if(this[i]!==f){if(i in u&&(f=f.map(c=>this.createChild(c))),!n.has(i)){this[i]=f;return}Object.defineProperty(this,i,{value:f,enumerable:!1,configurable:!0})}}map(i){let f;for(let c in u){let F=this[c];if(F){let a=s(F,l=>l.map(i));f!==F&&(f||(f=new D({parent:this.parent})),f.setProperty(c,a))}}if(f)for(let c in this)c in u||(f[c]=this[c]);return i(f||this)}walk(i){for(let f in u){let c=this[f];if(c)for(let F=0;F[i.fullName,i.value]))}};function s(i,f){let c=i.map(f);return c.some((F,a)=>F!==i[a])?c:i}r.exports={Node:D}}}),Vl=I({"src/language-html/conditional-comment.js"(e,r){"use strict";q();var{ParseSourceSpan:u}=Be(),n=[{regex:/^(\[if([^\]]*)]>)(.*?){try{return[!0,F(C,m).children]}catch{return[!1,[{type:"text",value:C,sourceSpan:new u(m,T)}]]}})();return{type:"ieConditionalComment",complete:w,children:g,condition:h.trim().replace(/\s+/g," "),sourceSpan:c.sourceSpan,startSourceSpan:new u(c.sourceSpan.start,m),endSourceSpan:new u(T,c.sourceSpan.end)}}function i(c,F,a){let[,l]=a;return{type:"ieConditionalStartComment",condition:l.trim().replace(/\s+/g," "),sourceSpan:c.sourceSpan}}function f(c){return{type:"ieConditionalEndComment",sourceSpan:c.sourceSpan}}r.exports={parseIeConditionalComment:D}}}),Xl=I({"src/language-html/loc.js"(e,r){"use strict";q();function u(D){return D.sourceSpan.start.offset}function n(D){return D.sourceSpan.end.offset}r.exports={locStart:u,locEnd:n}}}),Ze=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/tags.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r;(function(c){c[c.RAW_TEXT=0]="RAW_TEXT",c[c.ESCAPABLE_RAW_TEXT=1]="ESCAPABLE_RAW_TEXT",c[c.PARSABLE_DATA=2]="PARSABLE_DATA"})(r=e.TagContentType||(e.TagContentType={}));function u(c){if(c[0]!=":")return[null,c];let F=c.indexOf(":",1);if(F==-1)throw new Error(`Unsupported format "${c}" expecting ":namespace:name"`);return[c.slice(1,F),c.slice(F+1)]}e.splitNsName=u;function n(c){return u(c)[1]==="ng-container"}e.isNgContainer=n;function D(c){return u(c)[1]==="ng-content"}e.isNgContent=D;function s(c){return u(c)[1]==="ng-template"}e.isNgTemplate=s;function i(c){return c===null?null:u(c)[0]}e.getNsPrefix=i;function f(c,F){return c?`:${c}:${F}`:F}e.mergeNsAndName=f,e.NAMED_ENTITIES={Aacute:"\xC1",aacute:"\xE1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223E",acd:"\u223F",acE:"\u223E\u0333",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",Acy:"\u0410",acy:"\u0430",AElig:"\xC6",aelig:"\xE6",af:"\u2061",Afr:"\u{1D504}",afr:"\u{1D51E}",Agrave:"\xC0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03B1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2A3F",AMP:"&",amp:"&",And:"\u2A53",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",Aogon:"\u0104",aogon:"\u0105",Aopf:"\u{1D538}",aopf:"\u{1D552}",ap:"\u2248",apacir:"\u2A6F",apE:"\u2A70",ape:"\u224A",apid:"\u224B",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224A",Aring:"\xC5",aring:"\xE5",Ascr:"\u{1D49C}",ascr:"\u{1D4B6}",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224D",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",Backslash:"\u2216",Barv:"\u2AE7",barvee:"\u22BD",Barwed:"\u2306",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",Because:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",Bernoullis:"\u212C",Beta:"\u0392",beta:"\u03B2",beth:"\u2136",between:"\u226C",Bfr:"\u{1D505}",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bNot:"\u2AED",bnot:"\u2310",Bopf:"\u{1D539}",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxbox:"\u29C9",boxDL:"\u2557",boxDl:"\u2556",boxdL:"\u2555",boxdl:"\u2510",boxDR:"\u2554",boxDr:"\u2553",boxdR:"\u2552",boxdr:"\u250C",boxH:"\u2550",boxh:"\u2500",boxHD:"\u2566",boxHd:"\u2564",boxhD:"\u2565",boxhd:"\u252C",boxHU:"\u2569",boxHu:"\u2567",boxhU:"\u2568",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxUL:"\u255D",boxUl:"\u255C",boxuL:"\u255B",boxul:"\u2518",boxUR:"\u255A",boxUr:"\u2559",boxuR:"\u2558",boxur:"\u2514",boxV:"\u2551",boxv:"\u2502",boxVH:"\u256C",boxVh:"\u256B",boxvH:"\u256A",boxvh:"\u253C",boxVL:"\u2563",boxVl:"\u2562",boxvL:"\u2561",boxvl:"\u2524",boxVR:"\u2560",boxVr:"\u255F",boxvR:"\u255E",boxvr:"\u251C",bprime:"\u2035",Breve:"\u02D8",breve:"\u02D8",brvbar:"\xA6",Bscr:"\u212C",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",Bumpeq:"\u224E",bumpeq:"\u224F",Cacute:"\u0106",cacute:"\u0107",Cap:"\u22D2",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",CapitalDifferentialD:"\u2145",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",Cayleys:"\u212D",ccaps:"\u2A4D",Ccaron:"\u010C",ccaron:"\u010D",Ccedil:"\xC7",ccedil:"\xE7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2A4C",ccupssm:"\u2A50",Cdot:"\u010A",cdot:"\u010B",cedil:"\xB8",Cedilla:"\xB8",cemptyv:"\u29B2",cent:"\xA2",CenterDot:"\xB7",centerdot:"\xB7",Cfr:"\u212D",cfr:"\u{1D520}",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03A7",chi:"\u03C7",cir:"\u25CB",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",CircleDot:"\u2299",circledR:"\xAE",circledS:"\u24C8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cirE:"\u29C3",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",Colon:"\u2237",colon:":",Colone:"\u2A74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",Congruent:"\u2261",Conint:"\u222F",conint:"\u222E",ContourIntegral:"\u222E",Copf:"\u2102",copf:"\u{1D554}",coprod:"\u2210",Coproduct:"\u2210",COPY:"\xA9",copy:"\xA9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21B5",Cross:"\u2A2F",cross:"\u2717",Cscr:"\u{1D49E}",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",Cup:"\u22D3",cup:"\u222A",cupbrcap:"\u2A48",CupCap:"\u224D",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",Dagger:"\u2021",dagger:"\u2020",daleth:"\u2138",Darr:"\u21A1",dArr:"\u21D3",darr:"\u2193",dash:"\u2010",Dashv:"\u2AE4",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",Dcaron:"\u010E",dcaron:"\u010F",Dcy:"\u0414",dcy:"\u0434",DD:"\u2145",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",DDotrahd:"\u2911",ddotseq:"\u2A77",deg:"\xB0",Del:"\u2207",Delta:"\u0394",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",Dfr:"\u{1D507}",dfr:"\u{1D521}",dHar:"\u2965",dharl:"\u21C3",dharr:"\u21C2",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",diam:"\u22C4",Diamond:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",DifferentialD:"\u2146",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",Dopf:"\u{1D53B}",dopf:"\u{1D555}",Dot:"\xA8",dot:"\u02D9",DotDot:"\u20DC",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",Downarrow:"\u21D3",downarrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",Dscr:"\u{1D49F}",dscr:"\u{1D4B9}",DScy:"\u0405",dscy:"\u0455",dsol:"\u29F6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",DZcy:"\u040F",dzcy:"\u045F",dzigrarr:"\u27FF",Eacute:"\xC9",eacute:"\xE9",easter:"\u2A6E",Ecaron:"\u011A",ecaron:"\u011B",ecir:"\u2256",Ecirc:"\xCA",ecirc:"\xEA",ecolon:"\u2255",Ecy:"\u042D",ecy:"\u044D",eDDot:"\u2A77",Edot:"\u0116",eDot:"\u2251",edot:"\u0117",ee:"\u2147",efDot:"\u2252",Efr:"\u{1D508}",efr:"\u{1D522}",eg:"\u2A9A",Egrave:"\xC8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",Element:"\u2208",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25FB",emptyv:"\u2205",EmptyVerySmallSquare:"\u25AB",emsp:"\u2003",emsp13:"\u2004",emsp14:"\u2005",ENG:"\u014A",eng:"\u014B",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\u{1D53C}",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",Equal:"\u2A75",equals:"=",EqualTilde:"\u2242",equest:"\u225F",Equilibrium:"\u21CC",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erarr:"\u2971",erDot:"\u2253",Escr:"\u2130",escr:"\u212F",esdot:"\u2250",Esim:"\u2A73",esim:"\u2242",Eta:"\u0397",eta:"\u03B7",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",ExponentialE:"\u2147",exponentiale:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",Ffr:"\u{1D509}",ffr:"\u{1D523}",filig:"\uFB01",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",Fopf:"\u{1D53D}",fopf:"\u{1D557}",ForAll:"\u2200",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",Fouriertrf:"\u2131",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",Fscr:"\u2131",fscr:"\u{1D4BB}",gacute:"\u01F5",Gamma:"\u0393",gamma:"\u03B3",Gammad:"\u03DC",gammad:"\u03DD",gap:"\u2A86",Gbreve:"\u011E",gbreve:"\u011F",Gcedil:"\u0122",Gcirc:"\u011C",gcirc:"\u011D",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",gE:"\u2267",ge:"\u2265",gEl:"\u2A8C",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",Gfr:"\u{1D50A}",gfr:"\u{1D524}",Gg:"\u22D9",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gl:"\u2277",gla:"\u2AA5",glE:"\u2A92",glj:"\u2AA4",gnap:"\u2A8A",gnapprox:"\u2A8A",gnE:"\u2269",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",Gopf:"\u{1D53E}",gopf:"\u{1D558}",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",GT:">",Gt:"\u226B",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",Hacek:"\u02C7",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",HARDcy:"\u042A",hardcy:"\u044A",hArr:"\u21D4",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",Hat:"^",hbar:"\u210F",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",Hfr:"\u210C",hfr:"\u{1D525}",HilbertSpace:"\u210B",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",Hopf:"\u210D",hopf:"\u{1D559}",horbar:"\u2015",HorizontalLine:"\u2500",Hscr:"\u210B",hscr:"\u{1D4BD}",hslash:"\u210F",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224E",HumpEqual:"\u224F",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xCD",iacute:"\xED",ic:"\u2063",Icirc:"\xCE",icirc:"\xEE",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",Ifr:"\u2111",ifr:"\u{1D526}",Igrave:"\xCC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Im:"\u2111",Imacr:"\u012A",imacr:"\u012B",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",Implies:"\u21D2",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",Int:"\u222C",int:"\u222B",intcal:"\u22BA",integers:"\u2124",Integral:"\u222B",intercal:"\u22BA",Intersection:"\u22C2",intlarhk:"\u2A17",intprod:"\u2A3C",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012E",iogon:"\u012F",Iopf:"\u{1D540}",iopf:"\u{1D55A}",Iota:"\u0399",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",Iscr:"\u2110",iscr:"\u{1D4BE}",isin:"\u2208",isindot:"\u22F5",isinE:"\u22F9",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xCF",iuml:"\xEF",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\u{1D50D}",jfr:"\u{1D527}",jmath:"\u0237",Jopf:"\u{1D541}",jopf:"\u{1D55B}",Jscr:"\u{1D4A5}",jscr:"\u{1D4BF}",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041A",kcy:"\u043A",Kfr:"\u{1D50E}",kfr:"\u{1D528}",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040C",kjcy:"\u045C",Kopf:"\u{1D542}",kopf:"\u{1D55C}",Kscr:"\u{1D4A6}",kscr:"\u{1D4C0}",lAarr:"\u21DA",Lacute:"\u0139",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",Lambda:"\u039B",lambda:"\u03BB",Lang:"\u27EA",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",Laplacetrf:"\u2112",laquo:"\xAB",Larr:"\u219E",lArr:"\u21D0",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",lAtail:"\u291B",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lBarr:"\u290E",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",Lcaron:"\u013D",lcaron:"\u013E",Lcedil:"\u013B",lcedil:"\u013C",lceil:"\u2308",lcub:"{",Lcy:"\u041B",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",lE:"\u2266",le:"\u2264",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",Leftarrow:"\u21D0",leftarrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",leftarrowtail:"\u21A2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",LeftRightArrow:"\u2194",Leftrightarrow:"\u21D4",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",leftthreetimes:"\u22CB",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",lEg:"\u2A8B",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2AA1",lesssim:"\u2272",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",lfisht:"\u297C",lfloor:"\u230A",Lfr:"\u{1D50F}",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lHar:"\u2962",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",Ll:"\u22D8",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",Lleftarrow:"\u21DA",llhard:"\u296B",lltri:"\u25FA",Lmidot:"\u013F",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnap:"\u2A89",lnapprox:"\u2A89",lnE:"\u2268",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",LongLeftArrow:"\u27F5",Longleftarrow:"\u27F8",longleftarrow:"\u27F5",LongLeftRightArrow:"\u27F7",Longleftrightarrow:"\u27FA",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",LongRightArrow:"\u27F6",Longrightarrow:"\u27F9",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",Lopf:"\u{1D543}",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",Lscr:"\u2112",lscr:"\u{1D4C1}",Lsh:"\u21B0",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",Lstrok:"\u0141",lstrok:"\u0142",LT:"<",Lt:"\u226A",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",ltrPar:"\u2996",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",Mcy:"\u041C",mcy:"\u043C",mdash:"\u2014",mDDot:"\u223A",measuredangle:"\u2221",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",MinusPlus:"\u2213",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",Mopf:"\u{1D544}",mopf:"\u{1D55E}",mp:"\u2213",Mscr:"\u2133",mscr:"\u{1D4C2}",mstpos:"\u223E",Mu:"\u039C",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",Ncy:"\u041D",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",nearhk:"\u2924",neArr:"\u21D7",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,nexist:"\u2204",nexists:"\u2204",Nfr:"\u{1D511}",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",nGg:"\u22D9\u0338",ngsim:"\u2275",nGt:"\u226B\u20D2",ngt:"\u226F",ngtr:"\u226F",nGtv:"\u226B\u0338",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",NJcy:"\u040A",njcy:"\u045A",nlArr:"\u21CD",nlarr:"\u219A",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nLeftarrow:"\u21CD",nleftarrow:"\u219A",nLeftrightarrow:"\u21CE",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nLl:"\u22D8\u0338",nlsim:"\u2274",nLt:"\u226A\u20D2",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nLtv:"\u226A\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",nopf:"\u{1D55F}",Not:"\u2AEC",not:"\xAC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",notin:"\u2209",notindot:"\u22F5\u0338",notinE:"\u22F9\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nRightarrow:"\u21CF",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",Nscr:"\u{1D4A9}",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",Ntilde:"\xD1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",Nu:"\u039D",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224D\u20D2",nVDash:"\u22AF",nVdash:"\u22AE",nvDash:"\u22AD",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvHarr:"\u2904",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwarhk:"\u2923",nwArr:"\u21D6",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xD3",oacute:"\xF3",oast:"\u229B",ocir:"\u229A",Ocirc:"\xD4",ocirc:"\xF4",Ocy:"\u041E",ocy:"\u043E",odash:"\u229D",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29BF",Ofr:"\u{1D512}",ofr:"\u{1D52C}",ogon:"\u02DB",Ograve:"\xD2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",Omacr:"\u014C",omacr:"\u014D",Omega:"\u03A9",omega:"\u03C9",Omicron:"\u039F",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",Oopf:"\u{1D546}",oopf:"\u{1D560}",opar:"\u29B7",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",operp:"\u29B9",oplus:"\u2295",Or:"\u2A54",or:"\u2228",orarr:"\u21BB",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oS:"\u24C8",Oscr:"\u{1D4AA}",oscr:"\u2134",Oslash:"\xD8",oslash:"\xF8",osol:"\u2298",Otilde:"\xD5",otilde:"\xF5",Otimes:"\u2A37",otimes:"\u2297",otimesas:"\u2A36",Ouml:"\xD6",ouml:"\xF6",ovbar:"\u233D",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",par:"\u2225",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",PartialD:"\u2202",Pcy:"\u041F",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",Pfr:"\u{1D513}",pfr:"\u{1D52D}",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",Pi:"\u03A0",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",PlusMinus:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",Poincareplane:"\u210C",pointint:"\u2A15",Popf:"\u2119",popf:"\u{1D561}",pound:"\xA3",Pr:"\u2ABB",pr:"\u227A",prap:"\u2AB7",prcue:"\u227C",prE:"\u2AB3",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",Prime:"\u2033",prime:"\u2032",primes:"\u2119",prnap:"\u2AB9",prnE:"\u2AB5",prnsim:"\u22E8",prod:"\u220F",Product:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",Proportion:"\u2237",Proportional:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",Pscr:"\u{1D4AB}",pscr:"\u{1D4C5}",Psi:"\u03A8",psi:"\u03C8",puncsp:"\u2008",Qfr:"\u{1D514}",qfr:"\u{1D52E}",qint:"\u2A0C",Qopf:"\u211A",qopf:"\u{1D562}",qprime:"\u2057",Qscr:"\u{1D4AC}",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",QUOT:'"',quot:'"',rAarr:"\u21DB",race:"\u223D\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",Rang:"\u27EB",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",Rarr:"\u21A0",rArr:"\u21D2",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21A3",rarrw:"\u219D",rAtail:"\u291C",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",RBarr:"\u2910",rBarr:"\u290F",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",Re:"\u211C",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",REG:"\xAE",reg:"\xAE",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",rfisht:"\u297D",rfloor:"\u230B",Rfr:"\u211C",rfr:"\u{1D52F}",rHar:"\u2964",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",Rightarrow:"\u21D2",rightarrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",rightarrowtail:"\u21A3",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",rightthreetimes:"\u22CC",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",Ropf:"\u211D",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",Rrightarrow:"\u21DB",rsaquo:"\u203A",Rscr:"\u211B",rscr:"\u{1D4C7}",Rsh:"\u21B1",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",RuleDelayed:"\u29F4",ruluhar:"\u2968",rx:"\u211E",Sacute:"\u015A",sacute:"\u015B",sbquo:"\u201A",Sc:"\u2ABC",sc:"\u227B",scap:"\u2AB8",Scaron:"\u0160",scaron:"\u0161",sccue:"\u227D",scE:"\u2AB4",sce:"\u2AB0",Scedil:"\u015E",scedil:"\u015F",Scirc:"\u015C",scirc:"\u015D",scnap:"\u2ABA",scnE:"\u2AB6",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",Scy:"\u0421",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",searhk:"\u2925",seArr:"\u21D8",searr:"\u2198",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\u{1D516}",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xAD",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",SOFTcy:"\u042C",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",Sopf:"\u{1D54A}",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",Sqrt:"\u221A",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",Square:"\u25A1",square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",Sscr:"\u{1D4AE}",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",Star:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",Sub:"\u22D0",sub:"\u2282",subdot:"\u2ABD",subE:"\u2AC5",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",Subset:"\u22D0",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",SubsetEqual:"\u2286",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",SuchThat:"\u220B",Sum:"\u2211",sum:"\u2211",sung:"\u266A",Sup:"\u22D1",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supdot:"\u2ABE",supdsub:"\u2AD8",supE:"\u2AC6",supe:"\u2287",supedot:"\u2AC4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",Supset:"\u22D1",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swarhk:"\u2926",swArr:"\u21D9",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",Tab:" ",target:"\u2316",Tau:"\u03A4",tau:"\u03C4",tbrk:"\u23B4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",Tfr:"\u{1D517}",tfr:"\u{1D531}",there4:"\u2234",Therefore:"\u2234",therefore:"\u2234",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",ThickSpace:"\u205F\u200A",thinsp:"\u2009",ThinSpace:"\u2009",thkap:"\u2248",thksim:"\u223C",THORN:"\xDE",thorn:"\xFE",Tilde:"\u223C",tilde:"\u02DC",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",Topf:"\u{1D54B}",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",TRADE:"\u2122",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",TripleDot:"\u20DB",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",Tscr:"\u{1D4AF}",tscr:"\u{1D4C9}",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040B",tshcy:"\u045B",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Uacute:"\xDA",uacute:"\xFA",Uarr:"\u219F",uArr:"\u21D1",uarr:"\u2191",Uarrocir:"\u2949",Ubrcy:"\u040E",ubrcy:"\u045E",Ubreve:"\u016C",ubreve:"\u016D",Ucirc:"\xDB",ucirc:"\xFB",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21C5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",Ufr:"\u{1D518}",ufr:"\u{1D532}",Ugrave:"\xD9",ugrave:"\xF9",uHar:"\u2963",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",Umacr:"\u016A",umacr:"\u016B",uml:"\xA8",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",uogon:"\u0173",Uopf:"\u{1D54C}",uopf:"\u{1D566}",UpArrow:"\u2191",Uparrow:"\u21D1",uparrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",Updownarrow:"\u21D5",updownarrow:"\u2195",UpEquilibrium:"\u296E",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",upsi:"\u03C5",upsih:"\u03D2",Upsilon:"\u03A5",upsilon:"\u03C5",UpTee:"\u22A5",UpTeeArrow:"\u21A5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",Uring:"\u016E",uring:"\u016F",urtri:"\u25F9",Uscr:"\u{1D4B0}",uscr:"\u{1D4CA}",utdot:"\u22F0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",Uuml:"\xDC",uuml:"\xFC",uwangle:"\u29A7",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",vArr:"\u21D5",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",Vbar:"\u2AEB",vBar:"\u2AE8",vBarv:"\u2AE9",Vcy:"\u0412",vcy:"\u0432",VDash:"\u22AB",Vdash:"\u22A9",vDash:"\u22A8",vdash:"\u22A2",Vdashl:"\u2AE6",Vee:"\u22C1",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",Verbar:"\u2016",verbar:"|",Vert:"\u2016",vert:"|",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",Vopf:"\u{1D54D}",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",Vscr:"\u{1D4B1}",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",Vvdash:"\u22AA",vzigzag:"\u299A",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2A5F",Wedge:"\u22C0",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\u{1D51A}",wfr:"\u{1D534}",Wopf:"\u{1D54E}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\u{1D4B2}",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",Xfr:"\u{1D51B}",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",Xi:"\u039E",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",Xopf:"\u{1D54F}",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",Xscr:"\u{1D4B3}",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",Yacute:"\xDD",yacute:"\xFD",YAcy:"\u042F",yacy:"\u044F",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042B",ycy:"\u044B",yen:"\xA5",Yfr:"\u{1D51C}",yfr:"\u{1D536}",YIcy:"\u0407",yicy:"\u0457",Yopf:"\u{1D550}",yopf:"\u{1D56A}",Yscr:"\u{1D4B4}",yscr:"\u{1D4CE}",YUcy:"\u042E",yucy:"\u044E",Yuml:"\u0178",yuml:"\xFF",Zacute:"\u0179",zacute:"\u017A",Zcaron:"\u017D",zcaron:"\u017E",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017B",zdot:"\u017C",zeetrf:"\u2128",ZeroWidthSpace:"\u200B",Zeta:"\u0396",zeta:"\u03B6",Zfr:"\u2128",zfr:"\u{1D537}",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21DD",Zopf:"\u2124",zopf:"\u{1D56B}",Zscr:"\u{1D4B5}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"},e.NGSP_UNICODE="\uE500",e.NAMED_ENTITIES.ngsp=e.NGSP_UNICODE}}),Bs=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/html_tags.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ze(),u=class{constructor(){let{closedByChildren:i,implicitNamespacePrefix:f,contentType:c=r.TagContentType.PARSABLE_DATA,closedByParent:F=!1,isVoid:a=!1,ignoreFirstLf:l=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.closedByChildren={},this.closedByParent=!1,this.canSelfClose=!1,i&&i.length>0&&i.forEach(h=>this.closedByChildren[h]=!0),this.isVoid=a,this.closedByParent=F||a,this.implicitNamespacePrefix=f||null,this.contentType=c,this.ignoreFirstLf=l}isClosedByChild(i){return this.isVoid||i.toLowerCase()in this.closedByChildren}};e.HtmlTagDefinition=u;var n,D;function s(i){return D||(n=new u,D={base:new u({isVoid:!0}),meta:new u({isVoid:!0}),area:new u({isVoid:!0}),embed:new u({isVoid:!0}),link:new u({isVoid:!0}),img:new u({isVoid:!0}),input:new u({isVoid:!0}),param:new u({isVoid:!0}),hr:new u({isVoid:!0}),br:new u({isVoid:!0}),source:new u({isVoid:!0}),track:new u({isVoid:!0}),wbr:new u({isVoid:!0}),p:new u({closedByChildren:["address","article","aside","blockquote","div","dl","fieldset","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","main","nav","ol","p","pre","section","table","ul"],closedByParent:!0}),thead:new u({closedByChildren:["tbody","tfoot"]}),tbody:new u({closedByChildren:["tbody","tfoot"],closedByParent:!0}),tfoot:new u({closedByChildren:["tbody"],closedByParent:!0}),tr:new u({closedByChildren:["tr"],closedByParent:!0}),td:new u({closedByChildren:["td","th"],closedByParent:!0}),th:new u({closedByChildren:["td","th"],closedByParent:!0}),col:new u({isVoid:!0}),svg:new u({implicitNamespacePrefix:"svg"}),math:new u({implicitNamespacePrefix:"math"}),li:new u({closedByChildren:["li"],closedByParent:!0}),dt:new u({closedByChildren:["dt","dd"]}),dd:new u({closedByChildren:["dt","dd"],closedByParent:!0}),rb:new u({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),rt:new u({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),rtc:new u({closedByChildren:["rb","rtc","rp"],closedByParent:!0}),rp:new u({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),optgroup:new u({closedByChildren:["optgroup"],closedByParent:!0}),option:new u({closedByChildren:["option","optgroup"],closedByParent:!0}),pre:new u({ignoreFirstLf:!0}),listing:new u({ignoreFirstLf:!0}),style:new u({contentType:r.TagContentType.RAW_TEXT}),script:new u({contentType:r.TagContentType.RAW_TEXT}),title:new u({contentType:r.TagContentType.ESCAPABLE_RAW_TEXT}),textarea:new u({contentType:r.TagContentType.ESCAPABLE_RAW_TEXT,ignoreFirstLf:!0})}),D[i]||n}e.getHtmlTagDefinition=s}}),Hl=I({"node_modules/angular-html-parser/lib/compiler/src/ast_path.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=class{constructor(u){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1;this.path=u,this.position=n}get empty(){return!this.path||!this.path.length}get head(){return this.path[0]}get tail(){return this.path[this.path.length-1]}parentOf(u){return u&&this.path[this.path.indexOf(u)-1]}childOf(u){return this.path[this.path.indexOf(u)+1]}first(u){for(let n=this.path.length-1;n>=0;n--){let D=this.path[n];if(D instanceof u)return D}}push(u){this.path.push(u)}pop(){return this.path.pop()}};e.AstPath=r}}),bs=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/ast.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=Hl(),u=class{constructor(d,m,T){this.value=d,this.sourceSpan=m,this.i18n=T,this.type="text"}visit(d,m){return d.visitText(this,m)}};e.Text=u;var n=class{constructor(d,m){this.value=d,this.sourceSpan=m,this.type="cdata"}visit(d,m){return d.visitCdata(this,m)}};e.CDATA=n;var D=class{constructor(d,m,T,w,g,N){this.switchValue=d,this.type=m,this.cases=T,this.sourceSpan=w,this.switchValueSourceSpan=g,this.i18n=N}visit(d,m){return d.visitExpansion(this,m)}};e.Expansion=D;var s=class{constructor(d,m,T,w,g){this.value=d,this.expression=m,this.sourceSpan=T,this.valueSourceSpan=w,this.expSourceSpan=g}visit(d,m){return d.visitExpansionCase(this,m)}};e.ExpansionCase=s;var i=class{constructor(d,m,T){let w=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,g=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,N=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null;this.name=d,this.value=m,this.sourceSpan=T,this.valueSpan=w,this.nameSpan=g,this.i18n=N,this.type="attribute"}visit(d,m){return d.visitAttribute(this,m)}};e.Attribute=i;var f=class{constructor(d,m,T,w){let g=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,N=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,R=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,j=arguments.length>7&&arguments[7]!==void 0?arguments[7]:null;this.name=d,this.attrs=m,this.children=T,this.sourceSpan=w,this.startSourceSpan=g,this.endSourceSpan=N,this.nameSpan=R,this.i18n=j,this.type="element"}visit(d,m){return d.visitElement(this,m)}};e.Element=f;var c=class{constructor(d,m){this.value=d,this.sourceSpan=m,this.type="comment"}visit(d,m){return d.visitComment(this,m)}};e.Comment=c;var F=class{constructor(d,m){this.value=d,this.sourceSpan=m,this.type="docType"}visit(d,m){return d.visitDocType(this,m)}};e.DocType=F;function a(d,m){let T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,w=[],g=d.visit?N=>d.visit(N,T)||N.visit(d,T):N=>N.visit(d,T);return m.forEach(N=>{let R=g(N);R&&w.push(R)}),w}e.visitAll=a;var l=class{constructor(){}visitElement(d,m){this.visitChildren(m,T=>{T(d.attrs),T(d.children)})}visitAttribute(d,m){}visitText(d,m){}visitCdata(d,m){}visitComment(d,m){}visitDocType(d,m){}visitExpansion(d,m){return this.visitChildren(m,T=>{T(d.cases)})}visitExpansionCase(d,m){}visitChildren(d,m){let T=[],w=this;function g(N){N&&T.push(a(w,N,d))}return m(g),Array.prototype.concat.apply([],T)}};e.RecursiveVisitor=l;function h(d){let m=d.sourceSpan.start.offset,T=d.sourceSpan.end.offset;return d instanceof f&&(d.endSourceSpan?T=d.endSourceSpan.end.offset:d.children&&d.children.length&&(T=h(d.children[d.children.length-1]).end)),{start:m,end:T}}function C(d,m){let T=[],w=new class extends l{visit(g,N){let R=h(g);if(R.start<=m&&m]/,/^[{}]$/,/&(#|[a-z])/i,/^\/\//];function n(D,s){if(s!=null&&!(Array.isArray(s)&&s.length==2))throw new Error(`Expected '${D}' to be an array, [start, end].`);if(s!=null){let i=s[0],f=s[1];u.forEach(c=>{if(c.test(i)||c.test(f))throw new Error(`['${i}', '${f}'] contains unusable interpolation symbol.`)})}}e.assertInterpolationSymbols=n}}),Wl=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/interpolation_config.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=zl(),u=class{constructor(n,D){this.start=n,this.end=D}static fromArray(n){return n?(r.assertInterpolationSymbols("interpolation",n),new u(n[0],n[1])):e.DEFAULT_INTERPOLATION_CONFIG}};e.InterpolationConfig=u,e.DEFAULT_INTERPOLATION_CONFIG=new u("{{","}}")}}),Yl=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/lexer.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=Es(),u=Be(),n=Wl(),D=Ze(),s;(function(t){t[t.TAG_OPEN_START=0]="TAG_OPEN_START",t[t.TAG_OPEN_END=1]="TAG_OPEN_END",t[t.TAG_OPEN_END_VOID=2]="TAG_OPEN_END_VOID",t[t.TAG_CLOSE=3]="TAG_CLOSE",t[t.TEXT=4]="TEXT",t[t.ESCAPABLE_RAW_TEXT=5]="ESCAPABLE_RAW_TEXT",t[t.RAW_TEXT=6]="RAW_TEXT",t[t.COMMENT_START=7]="COMMENT_START",t[t.COMMENT_END=8]="COMMENT_END",t[t.CDATA_START=9]="CDATA_START",t[t.CDATA_END=10]="CDATA_END",t[t.ATTR_NAME=11]="ATTR_NAME",t[t.ATTR_QUOTE=12]="ATTR_QUOTE",t[t.ATTR_VALUE=13]="ATTR_VALUE",t[t.DOC_TYPE_START=14]="DOC_TYPE_START",t[t.DOC_TYPE_END=15]="DOC_TYPE_END",t[t.EXPANSION_FORM_START=16]="EXPANSION_FORM_START",t[t.EXPANSION_CASE_VALUE=17]="EXPANSION_CASE_VALUE",t[t.EXPANSION_CASE_EXP_START=18]="EXPANSION_CASE_EXP_START",t[t.EXPANSION_CASE_EXP_END=19]="EXPANSION_CASE_EXP_END",t[t.EXPANSION_FORM_END=20]="EXPANSION_FORM_END",t[t.EOF=21]="EOF"})(s=e.TokenType||(e.TokenType={}));var i=class{constructor(t,o,E){this.type=t,this.parts=o,this.sourceSpan=E}};e.Token=i;var f=class extends u.ParseError{constructor(t,o,E){super(E,t),this.tokenType=o}};e.TokenError=f;var c=class{constructor(t,o){this.tokens=t,this.errors=o}};e.TokenizeResult=c;function F(t,o,E){let p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return new d(new u.ParseSourceFile(t,o),E,p).tokenize()}e.tokenize=F;var a=/\r\n?/g;function l(t){return`Unexpected character "${t===r.$EOF?"EOF":String.fromCharCode(t)}"`}function h(t){return`Unknown entity "${t}" - use the "&#;" or "&#x;" syntax`}var C=class{constructor(t){this.error=t}},d=class{constructor(t,o,E){this._getTagContentType=o,this._currentTokenStart=null,this._currentTokenType=null,this._expansionCaseStack=[],this._inInterpolation=!1,this._fullNameStack=[],this.tokens=[],this.errors=[],this._tokenizeIcu=E.tokenizeExpansionForms||!1,this._interpolationConfig=E.interpolationConfig||n.DEFAULT_INTERPOLATION_CONFIG,this._leadingTriviaCodePoints=E.leadingTriviaChars&&E.leadingTriviaChars.map(A=>A.codePointAt(0)||0),this._canSelfClose=E.canSelfClose||!1,this._allowHtmComponentClosingTags=E.allowHtmComponentClosingTags||!1;let p=E.range||{endPos:t.content.length,startPos:0,startLine:0,startCol:0};this._cursor=E.escapedString?new k(t,p):new x(t,p);try{this._cursor.init()}catch(A){this.handleError(A)}}_processCarriageReturns(t){return t.replace(a,` +`)}tokenize(){for(;this._cursor.peek()!==r.$EOF;){let t=this._cursor.clone();try{if(this._attemptCharCode(r.$LT))if(this._attemptCharCode(r.$BANG))this._attemptStr("[CDATA[")?this._consumeCdata(t):this._attemptStr("--")?this._consumeComment(t):this._attemptStrCaseInsensitive("doctype")?this._consumeDocType(t):this._consumeBogusComment(t);else if(this._attemptCharCode(r.$SLASH))this._consumeTagClose(t);else{let o=this._cursor.clone();this._attemptCharCode(r.$QUESTION)?(this._cursor=o,this._consumeBogusComment(t)):this._consumeTagOpen(t)}else this._tokenizeIcu&&this._tokenizeExpansionForm()||this._consumeText()}catch(o){this.handleError(o)}}return this._beginToken(s.EOF),this._endToken([]),new c(O(this.tokens),this.errors)}_tokenizeExpansionForm(){if(this.isExpansionFormStart())return this._consumeExpansionFormStart(),!0;if(R(this._cursor.peek())&&this._isInExpansionForm())return this._consumeExpansionCaseStart(),!0;if(this._cursor.peek()===r.$RBRACE){if(this._isInExpansionCase())return this._consumeExpansionCaseEnd(),!0;if(this._isInExpansionForm())return this._consumeExpansionFormEnd(),!0}return!1}_beginToken(t){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._cursor.clone();this._currentTokenStart=o,this._currentTokenType=t}_endToken(t){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this._cursor.clone();if(this._currentTokenStart===null)throw new f("Programming error - attempted to end a token when there was no start to the token",this._currentTokenType,this._cursor.getSpan(o));if(this._currentTokenType===null)throw new f("Programming error - attempted to end a token which has no token type",null,this._cursor.getSpan(this._currentTokenStart));let E=new i(this._currentTokenType,t,this._cursor.getSpan(this._currentTokenStart,this._leadingTriviaCodePoints));return this.tokens.push(E),this._currentTokenStart=null,this._currentTokenType=null,E}_createError(t,o){this._isInExpansionForm()&&(t+=` (Do you have an unescaped "{" in your template? Use "{{ '{' }}") to escape it.)`);let E=new f(t,this._currentTokenType,o);return this._currentTokenStart=null,this._currentTokenType=null,new C(E)}handleError(t){if(t instanceof $&&(t=this._createError(t.msg,this._cursor.getSpan(t.cursor))),t instanceof C)this.errors.push(t.error);else throw t}_attemptCharCode(t){return this._cursor.peek()===t?(this._cursor.advance(),!0):!1}_attemptCharCodeCaseInsensitive(t){return j(this._cursor.peek(),t)?(this._cursor.advance(),!0):!1}_requireCharCode(t){let o=this._cursor.clone();if(!this._attemptCharCode(t))throw this._createError(l(this._cursor.peek()),this._cursor.getSpan(o))}_attemptStr(t){let o=t.length;if(this._cursor.charsLeft()this._attemptStr("-->")),this._beginToken(s.COMMENT_END),this._requireStr("-->"),this._endToken([])}_consumeBogusComment(t){this._beginToken(s.COMMENT_START,t),this._endToken([]),this._consumeRawText(!1,()=>this._cursor.peek()===r.$GT),this._beginToken(s.COMMENT_END),this._cursor.advance(),this._endToken([])}_consumeCdata(t){this._beginToken(s.CDATA_START,t),this._endToken([]),this._consumeRawText(!1,()=>this._attemptStr("]]>")),this._beginToken(s.CDATA_END),this._requireStr("]]>"),this._endToken([])}_consumeDocType(t){this._beginToken(s.DOC_TYPE_START,t),this._endToken([]),this._consumeRawText(!1,()=>this._cursor.peek()===r.$GT),this._beginToken(s.DOC_TYPE_END),this._cursor.advance(),this._endToken([])}_consumePrefixAndName(){let t=this._cursor.clone(),o="";for(;this._cursor.peek()!==r.$COLON&&!w(this._cursor.peek());)this._cursor.advance();let E;this._cursor.peek()===r.$COLON?(o=this._cursor.getChars(t),this._cursor.advance(),E=this._cursor.clone()):E=t,this._requireCharCodeUntilFn(T,o===""?0:1);let p=this._cursor.getChars(E);return[o,p]}_consumeTagOpen(t){let o,E,p,A=this.tokens.length,P=this._cursor.clone(),M=[];try{if(!r.isAsciiLetter(this._cursor.peek()))throw this._createError(l(this._cursor.peek()),this._cursor.getSpan(t));for(p=this._consumeTagOpenStart(t),E=p.parts[0],o=p.parts[1],this._attemptCharCodeUntilFn(m);this._cursor.peek()!==r.$SLASH&&this._cursor.peek()!==r.$GT;){let[V,X]=this._consumeAttributeName();if(this._attemptCharCodeUntilFn(m),this._attemptCharCode(r.$EQ)){this._attemptCharCodeUntilFn(m);let H=this._consumeAttributeValue();M.push({prefix:V,name:X,value:H})}else M.push({prefix:V,name:X});this._attemptCharCodeUntilFn(m)}this._consumeTagOpenEnd()}catch(V){if(V instanceof C){this._cursor=P,p&&(this.tokens.length=A),this._beginToken(s.TEXT,t),this._endToken(["<"]);return}throw V}if(this._canSelfClose&&this.tokens[this.tokens.length-1].type===s.TAG_OPEN_END_VOID)return;let z=this._getTagContentType(o,E,this._fullNameStack.length>0,M);this._handleFullNameStackForTagOpen(E,o),z===D.TagContentType.RAW_TEXT?this._consumeRawTextWithTagClose(E,o,!1):z===D.TagContentType.ESCAPABLE_RAW_TEXT&&this._consumeRawTextWithTagClose(E,o,!0)}_consumeRawTextWithTagClose(t,o,E){let p=this._consumeRawText(E,()=>!this._attemptCharCode(r.$LT)||!this._attemptCharCode(r.$SLASH)||(this._attemptCharCodeUntilFn(m),!this._attemptStrCaseInsensitive(t?`${t}:${o}`:o))?!1:(this._attemptCharCodeUntilFn(m),this._attemptCharCode(r.$GT)));this._beginToken(s.TAG_CLOSE),this._requireCharCodeUntilFn(A=>A===r.$GT,3),this._cursor.advance(),this._endToken([t,o]),this._handleFullNameStackForTagClose(t,o)}_consumeTagOpenStart(t){this._beginToken(s.TAG_OPEN_START,t);let o=this._consumePrefixAndName();return this._endToken(o)}_consumeAttributeName(){let t=this._cursor.peek();if(t===r.$SQ||t===r.$DQ)throw this._createError(l(t),this._cursor.getSpan());this._beginToken(s.ATTR_NAME);let o=this._consumePrefixAndName();return this._endToken(o),o}_consumeAttributeValue(){let t;if(this._cursor.peek()===r.$SQ||this._cursor.peek()===r.$DQ){this._beginToken(s.ATTR_QUOTE);let o=this._cursor.peek();this._cursor.advance(),this._endToken([String.fromCodePoint(o)]),this._beginToken(s.ATTR_VALUE);let E=[];for(;this._cursor.peek()!==o;)E.push(this._readChar(!0));t=this._processCarriageReturns(E.join("")),this._endToken([t]),this._beginToken(s.ATTR_QUOTE),this._cursor.advance(),this._endToken([String.fromCodePoint(o)])}else{this._beginToken(s.ATTR_VALUE);let o=this._cursor.clone();this._requireCharCodeUntilFn(T,1),t=this._processCarriageReturns(this._cursor.getChars(o)),this._endToken([t])}return t}_consumeTagOpenEnd(){let t=this._attemptCharCode(r.$SLASH)?s.TAG_OPEN_END_VOID:s.TAG_OPEN_END;this._beginToken(t),this._requireCharCode(r.$GT),this._endToken([])}_consumeTagClose(t){if(this._beginToken(s.TAG_CLOSE,t),this._attemptCharCodeUntilFn(m),this._allowHtmComponentClosingTags&&this._attemptCharCode(r.$SLASH))this._attemptCharCodeUntilFn(m),this._requireCharCode(r.$GT),this._endToken([]);else{let[o,E]=this._consumePrefixAndName();this._attemptCharCodeUntilFn(m),this._requireCharCode(r.$GT),this._endToken([o,E]),this._handleFullNameStackForTagClose(o,E)}}_consumeExpansionFormStart(){this._beginToken(s.EXPANSION_FORM_START),this._requireCharCode(r.$LBRACE),this._endToken([]),this._expansionCaseStack.push(s.EXPANSION_FORM_START),this._beginToken(s.RAW_TEXT);let t=this._readUntil(r.$COMMA);this._endToken([t]),this._requireCharCode(r.$COMMA),this._attemptCharCodeUntilFn(m),this._beginToken(s.RAW_TEXT);let o=this._readUntil(r.$COMMA);this._endToken([o]),this._requireCharCode(r.$COMMA),this._attemptCharCodeUntilFn(m)}_consumeExpansionCaseStart(){this._beginToken(s.EXPANSION_CASE_VALUE);let t=this._readUntil(r.$LBRACE).trim();this._endToken([t]),this._attemptCharCodeUntilFn(m),this._beginToken(s.EXPANSION_CASE_EXP_START),this._requireCharCode(r.$LBRACE),this._endToken([]),this._attemptCharCodeUntilFn(m),this._expansionCaseStack.push(s.EXPANSION_CASE_EXP_START)}_consumeExpansionCaseEnd(){this._beginToken(s.EXPANSION_CASE_EXP_END),this._requireCharCode(r.$RBRACE),this._endToken([]),this._attemptCharCodeUntilFn(m),this._expansionCaseStack.pop()}_consumeExpansionFormEnd(){this._beginToken(s.EXPANSION_FORM_END),this._requireCharCode(r.$RBRACE),this._endToken([]),this._expansionCaseStack.pop()}_consumeText(){let t=this._cursor.clone();this._beginToken(s.TEXT,t);let o=[];do this._interpolationConfig&&this._attemptStr(this._interpolationConfig.start)?(o.push(this._interpolationConfig.start),this._inInterpolation=!0):this._interpolationConfig&&this._inInterpolation&&this._attemptStr(this._interpolationConfig.end)?(o.push(this._interpolationConfig.end),this._inInterpolation=!1):o.push(this._readChar(!0));while(!this._isTextEnd());this._endToken([this._processCarriageReturns(o.join(""))])}_isTextEnd(){return!!(this._cursor.peek()===r.$LT||this._cursor.peek()===r.$EOF||this._tokenizeIcu&&!this._inInterpolation&&(this.isExpansionFormStart()||this._cursor.peek()===r.$RBRACE&&this._isInExpansionCase()))}_readUntil(t){let o=this._cursor.clone();return this._attemptUntilChar(t),this._cursor.getChars(o)}_isInExpansionCase(){return this._expansionCaseStack.length>0&&this._expansionCaseStack[this._expansionCaseStack.length-1]===s.EXPANSION_CASE_EXP_START}_isInExpansionForm(){return this._expansionCaseStack.length>0&&this._expansionCaseStack[this._expansionCaseStack.length-1]===s.EXPANSION_FORM_START}isExpansionFormStart(){if(this._cursor.peek()!==r.$LBRACE)return!1;if(this._interpolationConfig){let t=this._cursor.clone(),o=this._attemptStr(this._interpolationConfig.start);return this._cursor=t,!o}return!0}_handleFullNameStackForTagOpen(t,o){let E=D.mergeNsAndName(t,o);(this._fullNameStack.length===0||this._fullNameStack[this._fullNameStack.length-1]===E)&&this._fullNameStack.push(E)}_handleFullNameStackForTagClose(t,o){let E=D.mergeNsAndName(t,o);this._fullNameStack.length!==0&&this._fullNameStack[this._fullNameStack.length-1]===E&&this._fullNameStack.pop()}};function m(t){return!r.isWhitespace(t)||t===r.$EOF}function T(t){return r.isWhitespace(t)||t===r.$GT||t===r.$SLASH||t===r.$SQ||t===r.$DQ||t===r.$EQ}function w(t){return(tr.$9)}function g(t){return t==r.$SEMICOLON||t==r.$EOF||!r.isAsciiHexDigit(t)}function N(t){return t==r.$SEMICOLON||t==r.$EOF||!r.isAsciiLetter(t)}function R(t){return t===r.$EQ||r.isAsciiLetter(t)||r.isDigit(t)}function j(t,o){return _(t)==_(o)}function _(t){return t>=r.$a&&t<=r.$z?t-r.$a+r.$A:t}function O(t){let o=[],E;for(let p=0;p0&&o.indexOf(t.peek())!==-1;)t.advance();return new u.ParseSourceSpan(new u.ParseLocation(t.file,t.state.offset,t.state.line,t.state.column),new u.ParseLocation(this.file,this.state.offset,this.state.line,this.state.column))}getChars(t){return this.input.substring(t.state.offset,this.state.offset)}charAt(t){return this.input.charCodeAt(t)}advanceState(t){if(t.offset>=this.end)throw this.state=t,new $('Unexpected character "EOF"',this);let o=this.charAt(t.offset);o===r.$LF?(t.line++,t.column=0):r.isNewLine(o)||t.column++,t.offset++,this.updatePeek(t)}updatePeek(t){t.peek=t.offset>=this.end?r.$EOF:this.charAt(t.offset)}},k=class extends x{constructor(t,o){t instanceof k?(super(t),this.internalState=Object.assign({},t.internalState)):(super(t,o),this.internalState=this.state)}advance(){this.state=this.internalState,super.advance(),this.processEscapeSequence()}init(){super.init(),this.processEscapeSequence()}clone(){return new k(this)}getChars(t){let o=t.clone(),E="";for(;o.internalState.offsetthis.internalState.peek;if(t()===r.$BACKSLASH)if(this.internalState=Object.assign({},this.state),this.advanceState(this.internalState),t()===r.$n)this.state.peek=r.$LF;else if(t()===r.$r)this.state.peek=r.$CR;else if(t()===r.$v)this.state.peek=r.$VTAB;else if(t()===r.$t)this.state.peek=r.$TAB;else if(t()===r.$b)this.state.peek=r.$BSPACE;else if(t()===r.$f)this.state.peek=r.$FF;else if(t()===r.$u)if(this.advanceState(this.internalState),t()===r.$LBRACE){this.advanceState(this.internalState);let o=this.clone(),E=0;for(;t()!==r.$RBRACE;)this.advanceState(this.internalState),E++;this.state.peek=this.decodeHexDigits(o,E)}else{let o=this.clone();this.advanceState(this.internalState),this.advanceState(this.internalState),this.advanceState(this.internalState),this.state.peek=this.decodeHexDigits(o,4)}else if(t()===r.$x){this.advanceState(this.internalState);let o=this.clone();this.advanceState(this.internalState),this.state.peek=this.decodeHexDigits(o,2)}else if(r.isOctalDigit(t())){let o="",E=0,p=this.clone();for(;r.isOctalDigit(t())&&E<3;)p=this.clone(),o+=String.fromCodePoint(t()),this.advanceState(this.internalState),E++;this.state.peek=parseInt(o,8),this.internalState=p.internalState}else r.isNewLine(this.internalState.peek)?(this.advanceState(this.internalState),this.state=this.internalState):this.state.peek=this.internalState.peek}decodeHexDigits(t,o){let E=this.input.substr(t.internalState.offset,o),p=parseInt(E,16);if(isNaN(p))throw t.state=t.internalState,new $("Invalid hexadecimal escape sequence",t);return p}},$=class{constructor(t,o){this.msg=t,this.cursor=o}};e.CursorError=$}}),ls=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/parser.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=Be(),u=bs(),n=Yl(),D=Ze(),s=class extends r.ParseError{constructor(a,l,h){super(l,h),this.elementName=a}static create(a,l,h){return new s(a,l,h)}};e.TreeError=s;var i=class{constructor(a,l){this.rootNodes=a,this.errors=l}};e.ParseTreeResult=i;var f=class{constructor(a){this.getTagDefinition=a}parse(a,l,h){let C=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,d=arguments.length>4?arguments[4]:void 0,m=x=>function(k){for(var $=arguments.length,t=new Array($>1?$-1:0),o=1;o<$;o++)t[o-1]=arguments[o];return x(k.toLowerCase(),...t)},T=C?this.getTagDefinition:m(this.getTagDefinition),w=x=>T(x).contentType,g=C?d:m(d),N=d?(x,k,$,t)=>{let o=g(x,k,$,t);return o!==void 0?o:w(x)}:w,R=n.tokenize(a,l,N,h),j=h&&h.canSelfClose||!1,_=h&&h.allowHtmComponentClosingTags||!1,O=new c(R.tokens,T,j,_,C).build();return new i(O.rootNodes,R.errors.concat(O.errors))}};e.Parser=f;var c=class{constructor(a,l,h,C,d){this.tokens=a,this.getTagDefinition=l,this.canSelfClose=h,this.allowHtmComponentClosingTags=C,this.isTagNameCaseSensitive=d,this._index=-1,this._rootNodes=[],this._errors=[],this._elementStack=[],this._advance()}build(){for(;this._peek.type!==n.TokenType.EOF;)this._peek.type===n.TokenType.TAG_OPEN_START?this._consumeStartTag(this._advance()):this._peek.type===n.TokenType.TAG_CLOSE?(this._closeVoidElement(),this._consumeEndTag(this._advance())):this._peek.type===n.TokenType.CDATA_START?(this._closeVoidElement(),this._consumeCdata(this._advance())):this._peek.type===n.TokenType.COMMENT_START?(this._closeVoidElement(),this._consumeComment(this._advance())):this._peek.type===n.TokenType.TEXT||this._peek.type===n.TokenType.RAW_TEXT||this._peek.type===n.TokenType.ESCAPABLE_RAW_TEXT?(this._closeVoidElement(),this._consumeText(this._advance())):this._peek.type===n.TokenType.EXPANSION_FORM_START?this._consumeExpansion(this._advance()):this._peek.type===n.TokenType.DOC_TYPE_START?this._consumeDocType(this._advance()):this._advance();return new i(this._rootNodes,this._errors)}_advance(){let a=this._peek;return this._index0)return this._errors=this._errors.concat(d.errors),null;let m=new r.ParseSourceSpan(a.sourceSpan.start,C.sourceSpan.end),T=new r.ParseSourceSpan(l.sourceSpan.start,C.sourceSpan.end);return new u.ExpansionCase(a.parts[0],d.rootNodes,m,a.sourceSpan,T)}_collectExpansionExpTokens(a){let l=[],h=[n.TokenType.EXPANSION_CASE_EXP_START];for(;;){if((this._peek.type===n.TokenType.EXPANSION_FORM_START||this._peek.type===n.TokenType.EXPANSION_CASE_EXP_START)&&h.push(this._peek.type),this._peek.type===n.TokenType.EXPANSION_CASE_EXP_END)if(F(h,n.TokenType.EXPANSION_CASE_EXP_START)){if(h.pop(),h.length==0)return l}else return this._errors.push(s.create(null,a.sourceSpan,"Invalid ICU message. Missing '}'.")),null;if(this._peek.type===n.TokenType.EXPANSION_FORM_END)if(F(h,n.TokenType.EXPANSION_FORM_START))h.pop();else return this._errors.push(s.create(null,a.sourceSpan,"Invalid ICU message. Missing '}'.")),null;if(this._peek.type===n.TokenType.EOF)return this._errors.push(s.create(null,a.sourceSpan,"Invalid ICU message. Missing '}'.")),null;l.push(this._advance())}}_getText(a){let l=a.parts[0];if(l.length>0&&l[0]==` +`){let h=this._getParentElement();h!=null&&h.children.length==0&&this.getTagDefinition(h.name).ignoreFirstLf&&(l=l.substring(1))}return l}_consumeText(a){let l=this._getText(a);l.length>0&&this._addToParent(new u.Text(l,a.sourceSpan))}_closeVoidElement(){let a=this._getParentElement();a&&this.getTagDefinition(a.name).isVoid&&this._elementStack.pop()}_consumeStartTag(a){let l=a.parts[0],h=a.parts[1],C=[];for(;this._peek.type===n.TokenType.ATTR_NAME;)C.push(this._consumeAttr(this._advance()));let d=this._getElementFullName(l,h,this._getParentElement()),m=!1;if(this._peek.type===n.TokenType.TAG_OPEN_END_VOID){this._advance(),m=!0;let R=this.getTagDefinition(d);this.canSelfClose||R.canSelfClose||D.getNsPrefix(d)!==null||R.isVoid||this._errors.push(s.create(d,a.sourceSpan,`Only void and foreign elements can be self closed "${a.parts[1]}"`))}else this._peek.type===n.TokenType.TAG_OPEN_END&&(this._advance(),m=!1);let T=this._peek.sourceSpan.start,w=new r.ParseSourceSpan(a.sourceSpan.start,T),g=new r.ParseSourceSpan(a.sourceSpan.start.moveBy(1),a.sourceSpan.end),N=new u.Element(d,C,[],w,w,void 0,g);this._pushElement(N),m&&(this._popElement(d),N.endSourceSpan=w)}_pushElement(a){let l=this._getParentElement();l&&this.getTagDefinition(l.name).isClosedByChild(a.name)&&this._elementStack.pop(),this._addToParent(a),this._elementStack.push(a)}_consumeEndTag(a){let l=this.allowHtmComponentClosingTags&&a.parts.length===0?null:this._getElementFullName(a.parts[0],a.parts[1],this._getParentElement());if(this._getParentElement()&&(this._getParentElement().endSourceSpan=a.sourceSpan),l&&this.getTagDefinition(l).isVoid)this._errors.push(s.create(l,a.sourceSpan,`Void elements do not have end tags "${a.parts[1]}"`));else if(!this._popElement(l)){let h=`Unexpected closing tag "${l}". It may happen when the tag has already been closed by another tag. For more info see https://www.w3.org/TR/html5/syntax.html#closing-elements-that-have-implied-end-tags`;this._errors.push(s.create(l,a.sourceSpan,h))}}_popElement(a){for(let l=this._elementStack.length-1;l>=0;l--){let h=this._elementStack[l];if(!a||(D.getNsPrefix(h.name)?h.name==a:h.name.toLowerCase()==a.toLowerCase()))return this._elementStack.splice(l,this._elementStack.length-l),!0;if(!this.getTagDefinition(h.name).closedByParent)return!1}return!1}_consumeAttr(a){let l=D.mergeNsAndName(a.parts[0],a.parts[1]),h=a.sourceSpan.end,C="",d,m;if(this._peek.type===n.TokenType.ATTR_QUOTE&&(m=this._advance().sourceSpan.start),this._peek.type===n.TokenType.ATTR_VALUE){let T=this._advance();C=T.parts[0],h=T.sourceSpan.end,d=T.sourceSpan}return this._peek.type===n.TokenType.ATTR_QUOTE&&(h=this._advance().sourceSpan.end,d=new r.ParseSourceSpan(m,h)),new u.Attribute(l,C,new r.ParseSourceSpan(a.sourceSpan.start,h),d,a.sourceSpan)}_getParentElement(){return this._elementStack.length>0?this._elementStack[this._elementStack.length-1]:null}_getParentElementSkippingContainers(){let a=null;for(let l=this._elementStack.length-1;l>=0;l--){if(!D.isNgContainer(this._elementStack[l].name))return{parent:this._elementStack[l],container:a};a=this._elementStack[l]}return{parent:null,container:a}}_addToParent(a){let l=this._getParentElement();l!=null?l.children.push(a):this._rootNodes.push(a)}_insertBeforeContainer(a,l,h){if(!l)this._addToParent(h),this._elementStack.push(h);else{if(a){let C=a.children.indexOf(l);a.children[C]=h}else this._rootNodes.push(h);h.children.push(l),this._elementStack.splice(this._elementStack.indexOf(l),0,h)}}_getElementFullName(a,l,h){return a===""&&(a=this.getTagDefinition(l).implicitNamespacePrefix||"",a===""&&h!=null&&(a=D.getNsPrefix(h.name))),D.mergeNsAndName(a,l)}};function F(a,l){return a.length>0&&a[a.length-1]===l}}}),Ql=I({"node_modules/angular-html-parser/lib/compiler/src/ml_parser/html_parser.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=Bs(),u=ls(),n=ls();e.ParseTreeResult=n.ParseTreeResult,e.TreeError=n.TreeError;var D=class extends u.Parser{constructor(){super(r.getHtmlTagDefinition)}parse(s,i,f){let c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,F=arguments.length>4?arguments[4]:void 0;return super.parse(s,i,f,c,F)}};e.HtmlParser=D}}),ws=I({"node_modules/angular-html-parser/lib/angular-html-parser/src/index.js"(e){"use strict";q(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ql(),u=Ze();e.TagContentType=u.TagContentType;var n=null,D=()=>(n||(n=new r.HtmlParser),n);function s(i){let f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{canSelfClose:c=!1,allowHtmComponentClosingTags:F=!1,isTagNameCaseSensitive:a=!1,getTagContentType:l}=f;return D().parse(i,"angular-html-parser",{tokenizeExpansionForms:!1,interpolationConfig:void 0,canSelfClose:c,allowHtmComponentClosingTags:F},a,l)}e.parse=s}});q();var{ParseSourceSpan:Qe,ParseLocation:cs,ParseSourceFile:Kl}=Be(),Jl=ol(),Zl=Cs(),ec=Dl(),{inferParserByLanguage:rc}=xl(),uc=kl(),Vr=Ml(),hs=jl(),{hasPragma:tc}=Ul(),{Node:nc}=Gl(),{parseIeConditionalComment:sc}=Vl(),{locStart:ic,locEnd:ac}=Xl();function oc(e,r,u){let{canSelfClose:n,normalizeTagName:D,normalizeAttributeName:s,allowHtmComponentClosingTags:i,isTagNameCaseSensitive:f,getTagContentType:c}=r,F=ws(),{RecursiveVisitor:a,visitAll:l}=bs(),{ParseSourceSpan:h}=Be(),{getHtmlTagDefinition:C}=Bs(),{rootNodes:d,errors:m}=F.parse(e,{canSelfClose:n,allowHtmComponentClosingTags:i,isTagNameCaseSensitive:f,getTagContentType:c});if(u.parser==="vue")if(d.some(O=>O.type==="docType"&&O.value==="html"||O.type==="element"&&O.name.toLowerCase()==="html")){n=!0,D=!0,s=!0,i=!0,f=!1;let O=F.parse(e,{canSelfClose:n,allowHtmComponentClosingTags:i,isTagNameCaseSensitive:f});d=O.rootNodes,m=O.errors}else{let O=x=>{if(!x||x.type!=="element"||x.name!=="template")return!1;let k=x.attrs.find(t=>t.name==="lang"),$=k&&k.value;return!$||rc($,u)==="html"};if(d.some(O)){let x,k=()=>F.parse(e,{canSelfClose:n,allowHtmComponentClosingTags:i,isTagNameCaseSensitive:f}),$=()=>x||(x=k()),t=o=>$().rootNodes.find(E=>{let{startSourceSpan:p}=E;return p&&p.start.offset===o.startSourceSpan.start.offset});for(let o=0;o0){let{msg:_,span:{start:O,end:x}}=m[0];throw ec(_,{start:{line:O.line+1,column:O.col+1},end:{line:x.line+1,column:x.col+1}})}let T=_=>{let O=_.name.startsWith(":")?_.name.slice(1).split(":")[0]:null,x=_.nameSpan.toString(),k=O!==null&&x.startsWith(`${O}:`),$=k?x.slice(O.length+1):x;_.name=$,_.namespace=O,_.hasExplicitNamespace=k},w=_=>{switch(_.type){case"element":T(_);for(let O of _.attrs)T(O),O.valueSpan?(O.value=O.valueSpan.toString(),/["']/.test(O.value[0])&&(O.value=O.value.slice(1,-1))):O.value=null;break;case"comment":_.value=_.sourceSpan.toString().slice(4,-3);break;case"text":_.value=_.sourceSpan.toString();break}},g=(_,O)=>{let x=_.toLowerCase();return O(x)?x:_},N=_=>{if(_.type==="element"&&(D&&(!_.namespace||_.namespace===_.tagDefinition.implicitNamespacePrefix||hs(_))&&(_.name=g(_.name,O=>O in uc)),s)){let O=Vr[_.name]||Object.create(null);for(let x of _.attrs)x.namespace||(x.name=g(x.name,k=>_.name in Vr&&(k in Vr["*"]||k in O)))}},R=_=>{_.sourceSpan&&_.endSourceSpan&&(_.sourceSpan=new h(_.sourceSpan.start,_.endSourceSpan.end))},j=_=>{if(_.type==="element"){let O=C(f?_.name:_.name.toLowerCase());!_.namespace||_.namespace===O.implicitNamespacePrefix||hs(_)?_.tagDefinition=O:_.tagDefinition=C("")}};return l(new class extends a{visit(_){w(_),j(_),N(_),R(_)}},d),d}function Ns(e,r,u){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,{frontMatter:D,content:s}=n?Jl(e):{frontMatter:null,content:e},i=new Kl(e,r.filepath),f=new cs(i,0,0,0),c=f.moveBy(e.length),F={type:"root",sourceSpan:new Qe(f,c),children:oc(s,u,r)};if(D){let h=new cs(i,0,0,0),C=h.moveBy(D.raw.length);D.sourceSpan=new Qe(h,C),F.children.unshift(D)}let a=new nc(F),l=(h,C)=>{let{offset:d}=C,m=e.slice(0,d).replace(/[^\n\r]/g," "),w=Ns(m+h,r,u,!1);w.sourceSpan=new Qe(C,Zl(w.children).sourceSpan.end);let g=w.children[0];return g.length===d?w.children.shift():(g.sourceSpan=new Qe(g.sourceSpan.start.moveBy(d),g.sourceSpan.end),g.value=g.value.slice(d)),w};return a.walk(h=>{if(h.type==="comment"){let C=sc(h,l);C&&h.parent.replaceChild(h,C)}}),a}function Ke(){let{name:e,canSelfClose:r=!1,normalizeTagName:u=!1,normalizeAttributeName:n=!1,allowHtmComponentClosingTags:D=!1,isTagNameCaseSensitive:s=!1,getTagContentType:i}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return{parse:(f,c,F)=>Ns(f,Object.assign({parser:e},F),{canSelfClose:r,normalizeTagName:u,normalizeAttributeName:n,allowHtmComponentClosingTags:D,isTagNameCaseSensitive:s,getTagContentType:i}),hasPragma:tc,astFormat:"html",locStart:ic,locEnd:ac}}Os.exports={parsers:{html:Ke({name:"html",canSelfClose:!0,normalizeTagName:!0,normalizeAttributeName:!0,allowHtmComponentClosingTags:!0}),angular:Ke({name:"angular",canSelfClose:!0}),vue:Ke({name:"vue",canSelfClose:!0,isTagNameCaseSensitive:!0,getTagContentType:(e,r,u,n)=>{if(e.toLowerCase()!=="html"&&!u&&(e!=="template"||n.some(D=>{let{name:s,value:i}=D;return s==="lang"&&i!=="html"&&i!==""&&i!==void 0})))return ws().TagContentType.RAW_TEXT}}),lwc:Ke({name:"lwc"})}}});return Dc();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-markdown.js b/node_modules/prettier/parser-markdown.js new file mode 100644 index 0000000..a4ec23c --- /dev/null +++ b/node_modules/prettier/parser-markdown.js @@ -0,0 +1,76 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.markdown=e()}})(function(){"use strict";var $=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports);var Fe=$((nf,yu)=>{var tr=function(e){return e&&e.Math==Math&&e};yu.exports=tr(typeof globalThis=="object"&&globalThis)||tr(typeof window=="object"&&window)||tr(typeof self=="object"&&self)||tr(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var Ae=$((af,wu)=>{wu.exports=function(e){try{return!!e()}catch{return!0}}});var Be=$((of,Bu)=>{var fa=Ae();Bu.exports=!fa(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var nr=$((sf,ku)=>{var pa=Ae();ku.exports=!pa(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")})});var Oe=$((cf,qu)=>{var da=nr(),ir=Function.prototype.call;qu.exports=da?ir.bind(ir):function(){return ir.apply(ir,arguments)}});var Su=$(Iu=>{"use strict";var _u={}.propertyIsEnumerable,Ou=Object.getOwnPropertyDescriptor,ha=Ou&&!_u.call({1:2},1);Iu.f=ha?function(r){var u=Ou(this,r);return!!u&&u.enumerable}:_u});var ar=$((Df,Tu)=>{Tu.exports=function(e,r){return{enumerable:!(e&1),configurable:!(e&2),writable:!(e&4),value:r}}});var ve=$((ff,Ru)=>{var Nu=nr(),Lu=Function.prototype,wr=Lu.call,va=Nu&&Lu.bind.bind(wr,wr);Ru.exports=Nu?va:function(e){return function(){return wr.apply(e,arguments)}}});var Ve=$((pf,Pu)=>{var ju=ve(),ma=ju({}.toString),Ea=ju("".slice);Pu.exports=function(e){return Ea(ma(e),8,-1)}});var zu=$((df,Mu)=>{var Ca=ve(),ga=Ae(),Fa=Ve(),Br=Object,Aa=Ca("".split);Mu.exports=ga(function(){return!Br("z").propertyIsEnumerable(0)})?function(e){return Fa(e)=="String"?Aa(e,""):Br(e)}:Br});var or=$((hf,$u)=>{$u.exports=function(e){return e==null}});var kr=$((vf,Uu)=>{var xa=or(),ba=TypeError;Uu.exports=function(e){if(xa(e))throw ba("Can't call method on "+e);return e}});var sr=$((mf,Gu)=>{var ya=zu(),wa=kr();Gu.exports=function(e){return ya(wa(e))}});var _r=$((Ef,Vu)=>{var qr=typeof document=="object"&&document.all,Ba=typeof qr>"u"&&qr!==void 0;Vu.exports={all:qr,IS_HTMLDDA:Ba}});var de=$((Cf,Xu)=>{var Hu=_r(),ka=Hu.all;Xu.exports=Hu.IS_HTMLDDA?function(e){return typeof e=="function"||e===ka}:function(e){return typeof e=="function"}});var Ie=$((gf,Yu)=>{var Wu=de(),Ku=_r(),qa=Ku.all;Yu.exports=Ku.IS_HTMLDDA?function(e){return typeof e=="object"?e!==null:Wu(e)||e===qa}:function(e){return typeof e=="object"?e!==null:Wu(e)}});var He=$((Ff,Ju)=>{var Or=Fe(),_a=de(),Oa=function(e){return _a(e)?e:void 0};Ju.exports=function(e,r){return arguments.length<2?Oa(Or[e]):Or[e]&&Or[e][r]}});var Ir=$((Af,Zu)=>{var Ia=ve();Zu.exports=Ia({}.isPrototypeOf)});var et=$((xf,Qu)=>{var Sa=He();Qu.exports=Sa("navigator","userAgent")||""});var ot=$((bf,at)=>{var it=Fe(),Sr=et(),rt=it.process,ut=it.Deno,tt=rt&&rt.versions||ut&&ut.version,nt=tt&&tt.v8,me,cr;nt&&(me=nt.split("."),cr=me[0]>0&&me[0]<4?1:+(me[0]+me[1]));!cr&&Sr&&(me=Sr.match(/Edge\/(\d+)/),(!me||me[1]>=74)&&(me=Sr.match(/Chrome\/(\d+)/),me&&(cr=+me[1])));at.exports=cr});var Tr=$((yf,ct)=>{var st=ot(),Ta=Ae();ct.exports=!!Object.getOwnPropertySymbols&&!Ta(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&st&&st<41})});var Nr=$((wf,lt)=>{var Na=Tr();lt.exports=Na&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Lr=$((Bf,Dt)=>{var La=He(),Ra=de(),ja=Ir(),Pa=Nr(),Ma=Object;Dt.exports=Pa?function(e){return typeof e=="symbol"}:function(e){var r=La("Symbol");return Ra(r)&&ja(r.prototype,Ma(e))}});var lr=$((kf,ft)=>{var za=String;ft.exports=function(e){try{return za(e)}catch{return"Object"}}});var Xe=$((qf,pt)=>{var $a=de(),Ua=lr(),Ga=TypeError;pt.exports=function(e){if($a(e))return e;throw Ga(Ua(e)+" is not a function")}});var Dr=$((_f,dt)=>{var Va=Xe(),Ha=or();dt.exports=function(e,r){var u=e[r];return Ha(u)?void 0:Va(u)}});var vt=$((Of,ht)=>{var Rr=Oe(),jr=de(),Pr=Ie(),Xa=TypeError;ht.exports=function(e,r){var u,t;if(r==="string"&&jr(u=e.toString)&&!Pr(t=Rr(u,e))||jr(u=e.valueOf)&&!Pr(t=Rr(u,e))||r!=="string"&&jr(u=e.toString)&&!Pr(t=Rr(u,e)))return t;throw Xa("Can't convert object to primitive value")}});var Et=$((If,mt)=>{mt.exports=!1});var fr=$((Sf,gt)=>{var Ct=Fe(),Wa=Object.defineProperty;gt.exports=function(e,r){try{Wa(Ct,e,{value:r,configurable:!0,writable:!0})}catch{Ct[e]=r}return r}});var pr=$((Tf,At)=>{var Ka=Fe(),Ya=fr(),Ft="__core-js_shared__",Ja=Ka[Ft]||Ya(Ft,{});At.exports=Ja});var Mr=$((Nf,bt)=>{var Za=Et(),xt=pr();(bt.exports=function(e,r){return xt[e]||(xt[e]=r!==void 0?r:{})})("versions",[]).push({version:"3.26.1",mode:Za?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var zr=$((Lf,yt)=>{var Qa=kr(),eo=Object;yt.exports=function(e){return eo(Qa(e))}});var ke=$((Rf,wt)=>{var ro=ve(),uo=zr(),to=ro({}.hasOwnProperty);wt.exports=Object.hasOwn||function(r,u){return to(uo(r),u)}});var $r=$((jf,Bt)=>{var no=ve(),io=0,ao=Math.random(),oo=no(1 .toString);Bt.exports=function(e){return"Symbol("+(e===void 0?"":e)+")_"+oo(++io+ao,36)}});var Te=$((Pf,It)=>{var so=Fe(),co=Mr(),kt=ke(),lo=$r(),qt=Tr(),Ot=Nr(),Le=co("wks"),Se=so.Symbol,_t=Se&&Se.for,Do=Ot?Se:Se&&Se.withoutSetter||lo;It.exports=function(e){if(!kt(Le,e)||!(qt||typeof Le[e]=="string")){var r="Symbol."+e;qt&&kt(Se,e)?Le[e]=Se[e]:Ot&&_t?Le[e]=_t(r):Le[e]=Do(r)}return Le[e]}});var Lt=$((Mf,Nt)=>{var fo=Oe(),St=Ie(),Tt=Lr(),po=Dr(),ho=vt(),vo=Te(),mo=TypeError,Eo=vo("toPrimitive");Nt.exports=function(e,r){if(!St(e)||Tt(e))return e;var u=po(e,Eo),t;if(u){if(r===void 0&&(r="default"),t=fo(u,e,r),!St(t)||Tt(t))return t;throw mo("Can't convert object to primitive value")}return r===void 0&&(r="number"),ho(e,r)}});var dr=$((zf,Rt)=>{var Co=Lt(),go=Lr();Rt.exports=function(e){var r=Co(e,"string");return go(r)?r:r+""}});var Mt=$(($f,Pt)=>{var Fo=Fe(),jt=Ie(),Ur=Fo.document,Ao=jt(Ur)&&jt(Ur.createElement);Pt.exports=function(e){return Ao?Ur.createElement(e):{}}});var Gr=$((Uf,zt)=>{var xo=Be(),bo=Ae(),yo=Mt();zt.exports=!xo&&!bo(function(){return Object.defineProperty(yo("div"),"a",{get:function(){return 7}}).a!=7})});var Vr=$(Ut=>{var wo=Be(),Bo=Oe(),ko=Su(),qo=ar(),_o=sr(),Oo=dr(),Io=ke(),So=Gr(),$t=Object.getOwnPropertyDescriptor;Ut.f=wo?$t:function(r,u){if(r=_o(r),u=Oo(u),So)try{return $t(r,u)}catch{}if(Io(r,u))return qo(!Bo(ko.f,r,u),r[u])}});var Vt=$((Vf,Gt)=>{var To=Be(),No=Ae();Gt.exports=To&&No(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Re=$((Hf,Ht)=>{var Lo=Ie(),Ro=String,jo=TypeError;Ht.exports=function(e){if(Lo(e))return e;throw jo(Ro(e)+" is not an object")}});var We=$(Wt=>{var Po=Be(),Mo=Gr(),zo=Vt(),hr=Re(),Xt=dr(),$o=TypeError,Hr=Object.defineProperty,Uo=Object.getOwnPropertyDescriptor,Xr="enumerable",Wr="configurable",Kr="writable";Wt.f=Po?zo?function(r,u,t){if(hr(r),u=Xt(u),hr(t),typeof r=="function"&&u==="prototype"&&"value"in t&&Kr in t&&!t[Kr]){var a=Uo(r,u);a&&a[Kr]&&(r[u]=t.value,t={configurable:Wr in t?t[Wr]:a[Wr],enumerable:Xr in t?t[Xr]:a[Xr],writable:!1})}return Hr(r,u,t)}:Hr:function(r,u,t){if(hr(r),u=Xt(u),hr(t),Mo)try{return Hr(r,u,t)}catch{}if("get"in t||"set"in t)throw $o("Accessors not supported");return"value"in t&&(r[u]=t.value),r}});var Yr=$((Wf,Kt)=>{var Go=Be(),Vo=We(),Ho=ar();Kt.exports=Go?function(e,r,u){return Vo.f(e,r,Ho(1,u))}:function(e,r,u){return e[r]=u,e}});var Zt=$((Kf,Jt)=>{var Jr=Be(),Xo=ke(),Yt=Function.prototype,Wo=Jr&&Object.getOwnPropertyDescriptor,Zr=Xo(Yt,"name"),Ko=Zr&&function(){}.name==="something",Yo=Zr&&(!Jr||Jr&&Wo(Yt,"name").configurable);Jt.exports={EXISTS:Zr,PROPER:Ko,CONFIGURABLE:Yo}});var eu=$((Yf,Qt)=>{var Jo=ve(),Zo=de(),Qr=pr(),Qo=Jo(Function.toString);Zo(Qr.inspectSource)||(Qr.inspectSource=function(e){return Qo(e)});Qt.exports=Qr.inspectSource});var un=$((Jf,rn)=>{var es=Fe(),rs=de(),en=es.WeakMap;rn.exports=rs(en)&&/native code/.test(String(en))});var an=$((Zf,nn)=>{var us=Mr(),ts=$r(),tn=us("keys");nn.exports=function(e){return tn[e]||(tn[e]=ts(e))}});var ru=$((Qf,on)=>{on.exports={}});var Dn=$((ep,ln)=>{var ns=un(),cn=Fe(),is=Ie(),as=Yr(),uu=ke(),tu=pr(),os=an(),ss=ru(),sn="Object already initialized",nu=cn.TypeError,cs=cn.WeakMap,vr,Ke,mr,ls=function(e){return mr(e)?Ke(e):vr(e,{})},Ds=function(e){return function(r){var u;if(!is(r)||(u=Ke(r)).type!==e)throw nu("Incompatible receiver, "+e+" required");return u}};ns||tu.state?(Ee=tu.state||(tu.state=new cs),Ee.get=Ee.get,Ee.has=Ee.has,Ee.set=Ee.set,vr=function(e,r){if(Ee.has(e))throw nu(sn);return r.facade=e,Ee.set(e,r),r},Ke=function(e){return Ee.get(e)||{}},mr=function(e){return Ee.has(e)}):(Ne=os("state"),ss[Ne]=!0,vr=function(e,r){if(uu(e,Ne))throw nu(sn);return r.facade=e,as(e,Ne,r),r},Ke=function(e){return uu(e,Ne)?e[Ne]:{}},mr=function(e){return uu(e,Ne)});var Ee,Ne;ln.exports={set:vr,get:Ke,has:mr,enforce:ls,getterFor:Ds}});var dn=$((rp,pn)=>{var fs=Ae(),ps=de(),Er=ke(),iu=Be(),ds=Zt().CONFIGURABLE,hs=eu(),fn=Dn(),vs=fn.enforce,ms=fn.get,Cr=Object.defineProperty,Es=iu&&!fs(function(){return Cr(function(){},"length",{value:8}).length!==8}),Cs=String(String).split("String"),gs=pn.exports=function(e,r,u){String(r).slice(0,7)==="Symbol("&&(r="["+String(r).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),u&&u.getter&&(r="get "+r),u&&u.setter&&(r="set "+r),(!Er(e,"name")||ds&&e.name!==r)&&(iu?Cr(e,"name",{value:r,configurable:!0}):e.name=r),Es&&u&&Er(u,"arity")&&e.length!==u.arity&&Cr(e,"length",{value:u.arity});try{u&&Er(u,"constructor")&&u.constructor?iu&&Cr(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch{}var t=vs(e);return Er(t,"source")||(t.source=Cs.join(typeof r=="string"?r:"")),e};Function.prototype.toString=gs(function(){return ps(this)&&ms(this).source||hs(this)},"toString")});var vn=$((up,hn)=>{var Fs=de(),As=We(),xs=dn(),bs=fr();hn.exports=function(e,r,u,t){t||(t={});var a=t.enumerable,n=t.name!==void 0?t.name:r;if(Fs(u)&&xs(u,n,t),t.global)a?e[r]=u:bs(r,u);else{try{t.unsafe?e[r]&&(a=!0):delete e[r]}catch{}a?e[r]=u:As.f(e,r,{value:u,enumerable:!1,configurable:!t.nonConfigurable,writable:!t.nonWritable})}return e}});var En=$((tp,mn)=>{var ys=Math.ceil,ws=Math.floor;mn.exports=Math.trunc||function(r){var u=+r;return(u>0?ws:ys)(u)}});var au=$((np,Cn)=>{var Bs=En();Cn.exports=function(e){var r=+e;return r!==r||r===0?0:Bs(r)}});var Fn=$((ip,gn)=>{var ks=au(),qs=Math.max,_s=Math.min;gn.exports=function(e,r){var u=ks(e);return u<0?qs(u+r,0):_s(u,r)}});var xn=$((ap,An)=>{var Os=au(),Is=Math.min;An.exports=function(e){return e>0?Is(Os(e),9007199254740991):0}});var Ye=$((op,bn)=>{var Ss=xn();bn.exports=function(e){return Ss(e.length)}});var Bn=$((sp,wn)=>{var Ts=sr(),Ns=Fn(),Ls=Ye(),yn=function(e){return function(r,u,t){var a=Ts(r),n=Ls(a),s=Ns(t,n),c;if(e&&u!=u){for(;n>s;)if(c=a[s++],c!=c)return!0}else for(;n>s;s++)if((e||s in a)&&a[s]===u)return e||s||0;return!e&&-1}};wn.exports={includes:yn(!0),indexOf:yn(!1)}});var _n=$((cp,qn)=>{var Rs=ve(),ou=ke(),js=sr(),Ps=Bn().indexOf,Ms=ru(),kn=Rs([].push);qn.exports=function(e,r){var u=js(e),t=0,a=[],n;for(n in u)!ou(Ms,n)&&ou(u,n)&&kn(a,n);for(;r.length>t;)ou(u,n=r[t++])&&(~Ps(a,n)||kn(a,n));return a}});var In=$((lp,On)=>{On.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var Tn=$(Sn=>{var zs=_n(),$s=In(),Us=$s.concat("length","prototype");Sn.f=Object.getOwnPropertyNames||function(r){return zs(r,Us)}});var Ln=$(Nn=>{Nn.f=Object.getOwnPropertySymbols});var jn=$((pp,Rn)=>{var Gs=He(),Vs=ve(),Hs=Tn(),Xs=Ln(),Ws=Re(),Ks=Vs([].concat);Rn.exports=Gs("Reflect","ownKeys")||function(r){var u=Hs.f(Ws(r)),t=Xs.f;return t?Ks(u,t(r)):u}});var zn=$((dp,Mn)=>{var Pn=ke(),Ys=jn(),Js=Vr(),Zs=We();Mn.exports=function(e,r,u){for(var t=Ys(r),a=Zs.f,n=Js.f,s=0;s{var Qs=Ae(),ec=de(),rc=/#|\.prototype\./,Je=function(e,r){var u=tc[uc(e)];return u==ic?!0:u==nc?!1:ec(r)?Qs(r):!!r},uc=Je.normalize=function(e){return String(e).replace(rc,".").toLowerCase()},tc=Je.data={},nc=Je.NATIVE="N",ic=Je.POLYFILL="P";$n.exports=Je});var cu=$((vp,Gn)=>{var su=Fe(),ac=Vr().f,oc=Yr(),sc=vn(),cc=fr(),lc=zn(),Dc=Un();Gn.exports=function(e,r){var u=e.target,t=e.global,a=e.stat,n,s,c,i,D,o;if(t?s=su:a?s=su[u]||cc(u,{}):s=(su[u]||{}).prototype,s)for(c in r){if(D=r[c],e.dontCallGetSet?(o=ac(s,c),i=o&&o.value):i=s[c],n=Dc(t?c:u+(a?".":"#")+c,e.forced),!n&&i!==void 0){if(typeof D==typeof i)continue;lc(D,i)}(e.sham||i&&i.sham)&&oc(D,"sham",!0),sc(s,c,D,e)}}});var lu=$((mp,Vn)=>{var fc=Ve();Vn.exports=Array.isArray||function(r){return fc(r)=="Array"}});var Xn=$((Ep,Hn)=>{var pc=TypeError,dc=9007199254740991;Hn.exports=function(e){if(e>dc)throw pc("Maximum allowed index exceeded");return e}});var Kn=$((Cp,Wn)=>{var hc=Ve(),vc=ve();Wn.exports=function(e){if(hc(e)==="Function")return vc(e)}});var Du=$((gp,Jn)=>{var Yn=Kn(),mc=Xe(),Ec=nr(),Cc=Yn(Yn.bind);Jn.exports=function(e,r){return mc(e),r===void 0?e:Ec?Cc(e,r):function(){return e.apply(r,arguments)}}});var ei=$((Fp,Qn)=>{"use strict";var gc=lu(),Fc=Ye(),Ac=Xn(),xc=Du(),Zn=function(e,r,u,t,a,n,s,c){for(var i=a,D=0,o=s?xc(s,c):!1,l,d;D0&&gc(l)?(d=Fc(l),i=Zn(e,r,l,d,i,n-1)-1):(Ac(i+1),e[i]=l),i++),D++;return i};Qn.exports=Zn});var ti=$((Ap,ui)=>{var bc=Te(),yc=bc("toStringTag"),ri={};ri[yc]="z";ui.exports=String(ri)==="[object z]"});var fu=$((xp,ni)=>{var wc=ti(),Bc=de(),gr=Ve(),kc=Te(),qc=kc("toStringTag"),_c=Object,Oc=gr(function(){return arguments}())=="Arguments",Ic=function(e,r){try{return e[r]}catch{}};ni.exports=wc?gr:function(e){var r,u,t;return e===void 0?"Undefined":e===null?"Null":typeof(u=Ic(r=_c(e),qc))=="string"?u:Oc?gr(r):(t=gr(r))=="Object"&&Bc(r.callee)?"Arguments":t}});var li=$((bp,ci)=>{var Sc=ve(),Tc=Ae(),ii=de(),Nc=fu(),Lc=He(),Rc=eu(),ai=function(){},jc=[],oi=Lc("Reflect","construct"),pu=/^\s*(?:class|function)\b/,Pc=Sc(pu.exec),Mc=!pu.exec(ai),Ze=function(r){if(!ii(r))return!1;try{return oi(ai,jc,r),!0}catch{return!1}},si=function(r){if(!ii(r))return!1;switch(Nc(r)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Mc||!!Pc(pu,Rc(r))}catch{return!0}};si.sham=!0;ci.exports=!oi||Tc(function(){var e;return Ze(Ze.call)||!Ze(Object)||!Ze(function(){e=!0})||e})?si:Ze});var di=$((yp,pi)=>{var Di=lu(),zc=li(),$c=Ie(),Uc=Te(),Gc=Uc("species"),fi=Array;pi.exports=function(e){var r;return Di(e)&&(r=e.constructor,zc(r)&&(r===fi||Di(r.prototype))?r=void 0:$c(r)&&(r=r[Gc],r===null&&(r=void 0))),r===void 0?fi:r}});var vi=$((wp,hi)=>{var Vc=di();hi.exports=function(e,r){return new(Vc(e))(r===0?0:r)}});var mi=$(()=>{"use strict";var Hc=cu(),Xc=ei(),Wc=Xe(),Kc=zr(),Yc=Ye(),Jc=vi();Hc({target:"Array",proto:!0},{flatMap:function(r){var u=Kc(this),t=Yc(u),a;return Wc(r),a=Jc(u,0),a.length=Xc(a,u,u,t,0,1,r,arguments.length>1?arguments[1]:void 0),a}})});var du=$((qp,Ei)=>{Ei.exports={}});var gi=$((_p,Ci)=>{var Zc=Te(),Qc=du(),el=Zc("iterator"),rl=Array.prototype;Ci.exports=function(e){return e!==void 0&&(Qc.Array===e||rl[el]===e)}});var hu=$((Op,Ai)=>{var ul=fu(),Fi=Dr(),tl=or(),nl=du(),il=Te(),al=il("iterator");Ai.exports=function(e){if(!tl(e))return Fi(e,al)||Fi(e,"@@iterator")||nl[ul(e)]}});var bi=$((Ip,xi)=>{var ol=Oe(),sl=Xe(),cl=Re(),ll=lr(),Dl=hu(),fl=TypeError;xi.exports=function(e,r){var u=arguments.length<2?Dl(e):r;if(sl(u))return cl(ol(u,e));throw fl(ll(e)+" is not iterable")}});var Bi=$((Sp,wi)=>{var pl=Oe(),yi=Re(),dl=Dr();wi.exports=function(e,r,u){var t,a;yi(e);try{if(t=dl(e,"return"),!t){if(r==="throw")throw u;return u}t=pl(t,e)}catch(n){a=!0,t=n}if(r==="throw")throw u;if(a)throw t;return yi(t),u}});var Ii=$((Tp,Oi)=>{var hl=Du(),vl=Oe(),ml=Re(),El=lr(),Cl=gi(),gl=Ye(),ki=Ir(),Fl=bi(),Al=hu(),qi=Bi(),xl=TypeError,Fr=function(e,r){this.stopped=e,this.result=r},_i=Fr.prototype;Oi.exports=function(e,r,u){var t=u&&u.that,a=!!(u&&u.AS_ENTRIES),n=!!(u&&u.IS_RECORD),s=!!(u&&u.IS_ITERATOR),c=!!(u&&u.INTERRUPTED),i=hl(r,t),D,o,l,d,p,g,F,E=function(f){return D&&qi(D,"normal",f),new Fr(!0,f)},b=function(f){return a?(ml(f),c?i(f[0],f[1],E):i(f[0],f[1])):c?i(f,E):i(f)};if(n)D=e.iterator;else if(s)D=e;else{if(o=Al(e),!o)throw xl(El(e)+" is not iterable");if(Cl(o)){for(l=0,d=gl(e);d>l;l++)if(p=b(e[l]),p&&ki(_i,p))return p;return new Fr(!1)}D=Fl(e,o)}for(g=n?e.next:D.next;!(F=vl(g,D)).done;){try{p=b(F.value)}catch(f){qi(D,"throw",f)}if(typeof p=="object"&&p&&ki(_i,p))return p}return new Fr(!1)}});var Ti=$((Np,Si)=>{"use strict";var bl=dr(),yl=We(),wl=ar();Si.exports=function(e,r,u){var t=bl(r);t in e?yl.f(e,t,wl(0,u)):e[t]=u}});var Ni=$(()=>{var Bl=cu(),kl=Ii(),ql=Ti();Bl({target:"Object",stat:!0},{fromEntries:function(r){var u={};return kl(r,function(t,a){ql(u,t,a)},{AS_ENTRIES:!0}),u}})});var uf=$((jp,la)=>{var _l=["cliName","cliCategory","cliDescription"];function Ol(e,r){if(e==null)return{};var u=Il(e,r),t,a;if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0)&&Object.prototype.propertyIsEnumerable.call(e,t)&&(u[t]=e[t])}return u}function Il(e,r){if(e==null)return{};var u={},t=Object.keys(e),a,n;for(n=0;n=0)&&(u[a]=e[a]);return u}mi();Ni();var Sl=Object.create,Ar=Object.defineProperty,Tl=Object.getOwnPropertyDescriptor,vu=Object.getOwnPropertyNames,Nl=Object.getPrototypeOf,Ll=Object.prototype.hasOwnProperty,je=(e,r)=>function(){return e&&(r=(0,e[vu(e)[0]])(e=0)),r},S=(e,r)=>function(){return r||(0,e[vu(e)[0]])((r={exports:{}}).exports,r),r.exports},Pi=(e,r)=>{for(var u in r)Ar(e,u,{get:r[u],enumerable:!0})},Mi=(e,r,u,t)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of vu(r))!Ll.call(e,a)&&a!==u&&Ar(e,a,{get:()=>r[a],enumerable:!(t=Tl(r,a))||t.enumerable});return e},Rl=(e,r,u)=>(u=e!=null?Sl(Nl(e)):{},Mi(r||!e||!e.__esModule?Ar(u,"default",{value:e,enumerable:!0}):u,e)),zi=e=>Mi(Ar({},"__esModule",{value:!0}),e),Qe,I=je({""(){Qe={env:{},argv:[]}}}),Pe=S({"node_modules/xtend/immutable.js"(e,r){I(),r.exports=t;var u=Object.prototype.hasOwnProperty;function t(){for(var a={},n=0;n-1&&DD)return{line:o+1,column:D-(n[o-1]||0)+1,offset:D}}return{}}function i(D){var o=D&&D.line,l=D&&D.column,d;return!isNaN(o)&&!isNaN(l)&&o-1 in n&&(d=(n[o-2]||0)+l-1||0),d>-1&&d",Iacute:"\xCD",Icirc:"\xCE",Igrave:"\xCC",Iuml:"\xCF",LT:"<",Ntilde:"\xD1",Oacute:"\xD3",Ocirc:"\xD4",Ograve:"\xD2",Oslash:"\xD8",Otilde:"\xD5",Ouml:"\xD6",QUOT:'"',REG:"\xAE",THORN:"\xDE",Uacute:"\xDA",Ucirc:"\xDB",Ugrave:"\xD9",Uuml:"\xDC",Yacute:"\xDD",aacute:"\xE1",acirc:"\xE2",acute:"\xB4",aelig:"\xE6",agrave:"\xE0",amp:"&",aring:"\xE5",atilde:"\xE3",auml:"\xE4",brvbar:"\xA6",ccedil:"\xE7",cedil:"\xB8",cent:"\xA2",copy:"\xA9",curren:"\xA4",deg:"\xB0",divide:"\xF7",eacute:"\xE9",ecirc:"\xEA",egrave:"\xE8",eth:"\xF0",euml:"\xEB",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE",gt:">",iacute:"\xED",icirc:"\xEE",iexcl:"\xA1",igrave:"\xEC",iquest:"\xBF",iuml:"\xEF",laquo:"\xAB",lt:"<",macr:"\xAF",micro:"\xB5",middot:"\xB7",nbsp:"\xA0",not:"\xAC",ntilde:"\xF1",oacute:"\xF3",ocirc:"\xF4",ograve:"\xF2",ordf:"\xAA",ordm:"\xBA",oslash:"\xF8",otilde:"\xF5",ouml:"\xF6",para:"\xB6",plusmn:"\xB1",pound:"\xA3",quot:'"',raquo:"\xBB",reg:"\xAE",sect:"\xA7",shy:"\xAD",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",szlig:"\xDF",thorn:"\xFE",times:"\xD7",uacute:"\xFA",ucirc:"\xFB",ugrave:"\xF9",uml:"\xA8",uuml:"\xFC",yacute:"\xFD",yen:"\xA5",yuml:"\xFF"}}}),Gl=S({"node_modules/character-reference-invalid/index.json"(e,r){r.exports={0:"\uFFFD",128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"}}}),Me=S({"node_modules/is-decimal/index.js"(e,r){"use strict";I(),r.exports=u;function u(t){var a=typeof t=="string"?t.charCodeAt(0):t;return a>=48&&a<=57}}}),Vl=S({"node_modules/is-hexadecimal/index.js"(e,r){"use strict";I(),r.exports=u;function u(t){var a=typeof t=="string"?t.charCodeAt(0):t;return a>=97&&a<=102||a>=65&&a<=70||a>=48&&a<=57}}}),er=S({"node_modules/is-alphabetical/index.js"(e,r){"use strict";I(),r.exports=u;function u(t){var a=typeof t=="string"?t.charCodeAt(0):t;return a>=97&&a<=122||a>=65&&a<=90}}}),Hl=S({"node_modules/is-alphanumerical/index.js"(e,r){"use strict";I();var u=er(),t=Me();r.exports=a;function a(n){return u(n)||t(n)}}}),Xl=S({"node_modules/character-entities/index.json"(e,r){r.exports={AEli:"\xC6",AElig:"\xC6",AM:"&",AMP:"&",Aacut:"\xC1",Aacute:"\xC1",Abreve:"\u0102",Acir:"\xC2",Acirc:"\xC2",Acy:"\u0410",Afr:"\u{1D504}",Agrav:"\xC0",Agrave:"\xC0",Alpha:"\u0391",Amacr:"\u0100",And:"\u2A53",Aogon:"\u0104",Aopf:"\u{1D538}",ApplyFunction:"\u2061",Arin:"\xC5",Aring:"\xC5",Ascr:"\u{1D49C}",Assign:"\u2254",Atild:"\xC3",Atilde:"\xC3",Aum:"\xC4",Auml:"\xC4",Backslash:"\u2216",Barv:"\u2AE7",Barwed:"\u2306",Bcy:"\u0411",Because:"\u2235",Bernoullis:"\u212C",Beta:"\u0392",Bfr:"\u{1D505}",Bopf:"\u{1D539}",Breve:"\u02D8",Bscr:"\u212C",Bumpeq:"\u224E",CHcy:"\u0427",COP:"\xA9",COPY:"\xA9",Cacute:"\u0106",Cap:"\u22D2",CapitalDifferentialD:"\u2145",Cayleys:"\u212D",Ccaron:"\u010C",Ccedi:"\xC7",Ccedil:"\xC7",Ccirc:"\u0108",Cconint:"\u2230",Cdot:"\u010A",Cedilla:"\xB8",CenterDot:"\xB7",Cfr:"\u212D",Chi:"\u03A7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",Colon:"\u2237",Colone:"\u2A74",Congruent:"\u2261",Conint:"\u222F",ContourIntegral:"\u222E",Copf:"\u2102",Coproduct:"\u2210",CounterClockwiseContourIntegral:"\u2233",Cross:"\u2A2F",Cscr:"\u{1D49E}",Cup:"\u22D3",CupCap:"\u224D",DD:"\u2145",DDotrahd:"\u2911",DJcy:"\u0402",DScy:"\u0405",DZcy:"\u040F",Dagger:"\u2021",Darr:"\u21A1",Dashv:"\u2AE4",Dcaron:"\u010E",Dcy:"\u0414",Del:"\u2207",Delta:"\u0394",Dfr:"\u{1D507}",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",Diamond:"\u22C4",DifferentialD:"\u2146",Dopf:"\u{1D53B}",Dot:"\xA8",DotDot:"\u20DC",DotEqual:"\u2250",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",Downarrow:"\u21D3",Dscr:"\u{1D49F}",Dstrok:"\u0110",ENG:"\u014A",ET:"\xD0",ETH:"\xD0",Eacut:"\xC9",Eacute:"\xC9",Ecaron:"\u011A",Ecir:"\xCA",Ecirc:"\xCA",Ecy:"\u042D",Edot:"\u0116",Efr:"\u{1D508}",Egrav:"\xC8",Egrave:"\xC8",Element:"\u2208",Emacr:"\u0112",EmptySmallSquare:"\u25FB",EmptyVerySmallSquare:"\u25AB",Eogon:"\u0118",Eopf:"\u{1D53C}",Epsilon:"\u0395",Equal:"\u2A75",EqualTilde:"\u2242",Equilibrium:"\u21CC",Escr:"\u2130",Esim:"\u2A73",Eta:"\u0397",Eum:"\xCB",Euml:"\xCB",Exists:"\u2203",ExponentialE:"\u2147",Fcy:"\u0424",Ffr:"\u{1D509}",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",Fopf:"\u{1D53D}",ForAll:"\u2200",Fouriertrf:"\u2131",Fscr:"\u2131",GJcy:"\u0403",G:">",GT:">",Gamma:"\u0393",Gammad:"\u03DC",Gbreve:"\u011E",Gcedil:"\u0122",Gcirc:"\u011C",Gcy:"\u0413",Gdot:"\u0120",Gfr:"\u{1D50A}",Gg:"\u22D9",Gopf:"\u{1D53E}",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",Gt:"\u226B",HARDcy:"\u042A",Hacek:"\u02C7",Hat:"^",Hcirc:"\u0124",Hfr:"\u210C",HilbertSpace:"\u210B",Hopf:"\u210D",HorizontalLine:"\u2500",Hscr:"\u210B",Hstrok:"\u0126",HumpDownHump:"\u224E",HumpEqual:"\u224F",IEcy:"\u0415",IJlig:"\u0132",IOcy:"\u0401",Iacut:"\xCD",Iacute:"\xCD",Icir:"\xCE",Icirc:"\xCE",Icy:"\u0418",Idot:"\u0130",Ifr:"\u2111",Igrav:"\xCC",Igrave:"\xCC",Im:"\u2111",Imacr:"\u012A",ImaginaryI:"\u2148",Implies:"\u21D2",Int:"\u222C",Integral:"\u222B",Intersection:"\u22C2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Iogon:"\u012E",Iopf:"\u{1D540}",Iota:"\u0399",Iscr:"\u2110",Itilde:"\u0128",Iukcy:"\u0406",Ium:"\xCF",Iuml:"\xCF",Jcirc:"\u0134",Jcy:"\u0419",Jfr:"\u{1D50D}",Jopf:"\u{1D541}",Jscr:"\u{1D4A5}",Jsercy:"\u0408",Jukcy:"\u0404",KHcy:"\u0425",KJcy:"\u040C",Kappa:"\u039A",Kcedil:"\u0136",Kcy:"\u041A",Kfr:"\u{1D50E}",Kopf:"\u{1D542}",Kscr:"\u{1D4A6}",LJcy:"\u0409",L:"<",LT:"<",Lacute:"\u0139",Lambda:"\u039B",Lang:"\u27EA",Laplacetrf:"\u2112",Larr:"\u219E",Lcaron:"\u013D",Lcedil:"\u013B",Lcy:"\u041B",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",LeftRightArrow:"\u2194",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",Leftarrow:"\u21D0",Leftrightarrow:"\u21D4",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",LessLess:"\u2AA1",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",Lfr:"\u{1D50F}",Ll:"\u22D8",Lleftarrow:"\u21DA",Lmidot:"\u013F",LongLeftArrow:"\u27F5",LongLeftRightArrow:"\u27F7",LongRightArrow:"\u27F6",Longleftarrow:"\u27F8",Longleftrightarrow:"\u27FA",Longrightarrow:"\u27F9",Lopf:"\u{1D543}",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",Lscr:"\u2112",Lsh:"\u21B0",Lstrok:"\u0141",Lt:"\u226A",Map:"\u2905",Mcy:"\u041C",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",MinusPlus:"\u2213",Mopf:"\u{1D544}",Mscr:"\u2133",Mu:"\u039C",NJcy:"\u040A",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041D",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,Nfr:"\u{1D511}",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",Not:"\u2AEC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",Nscr:"\u{1D4A9}",Ntild:"\xD1",Ntilde:"\xD1",Nu:"\u039D",OElig:"\u0152",Oacut:"\xD3",Oacute:"\xD3",Ocir:"\xD4",Ocirc:"\xD4",Ocy:"\u041E",Odblac:"\u0150",Ofr:"\u{1D512}",Ograv:"\xD2",Ograve:"\xD2",Omacr:"\u014C",Omega:"\u03A9",Omicron:"\u039F",Oopf:"\u{1D546}",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",Or:"\u2A54",Oscr:"\u{1D4AA}",Oslas:"\xD8",Oslash:"\xD8",Otild:"\xD5",Otilde:"\xD5",Otimes:"\u2A37",Oum:"\xD6",Ouml:"\xD6",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",PartialD:"\u2202",Pcy:"\u041F",Pfr:"\u{1D513}",Phi:"\u03A6",Pi:"\u03A0",PlusMinus:"\xB1",Poincareplane:"\u210C",Popf:"\u2119",Pr:"\u2ABB",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",Prime:"\u2033",Product:"\u220F",Proportion:"\u2237",Proportional:"\u221D",Pscr:"\u{1D4AB}",Psi:"\u03A8",QUO:'"',QUOT:'"',Qfr:"\u{1D514}",Qopf:"\u211A",Qscr:"\u{1D4AC}",RBarr:"\u2910",RE:"\xAE",REG:"\xAE",Racute:"\u0154",Rang:"\u27EB",Rarr:"\u21A0",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",Re:"\u211C",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",Rfr:"\u211C",Rho:"\u03A1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",Rightarrow:"\u21D2",Ropf:"\u211D",RoundImplies:"\u2970",Rrightarrow:"\u21DB",Rscr:"\u211B",Rsh:"\u21B1",RuleDelayed:"\u29F4",SHCHcy:"\u0429",SHcy:"\u0428",SOFTcy:"\u042C",Sacute:"\u015A",Sc:"\u2ABC",Scaron:"\u0160",Scedil:"\u015E",Scirc:"\u015C",Scy:"\u0421",Sfr:"\u{1D516}",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",Sigma:"\u03A3",SmallCircle:"\u2218",Sopf:"\u{1D54A}",Sqrt:"\u221A",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Sscr:"\u{1D4AE}",Star:"\u22C6",Sub:"\u22D0",Subset:"\u22D0",SubsetEqual:"\u2286",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",SuchThat:"\u220B",Sum:"\u2211",Sup:"\u22D1",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22D1",THOR:"\xDE",THORN:"\xDE",TRADE:"\u2122",TSHcy:"\u040B",TScy:"\u0426",Tab:" ",Tau:"\u03A4",Tcaron:"\u0164",Tcedil:"\u0162",Tcy:"\u0422",Tfr:"\u{1D517}",Therefore:"\u2234",Theta:"\u0398",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",Topf:"\u{1D54B}",TripleDot:"\u20DB",Tscr:"\u{1D4AF}",Tstrok:"\u0166",Uacut:"\xDA",Uacute:"\xDA",Uarr:"\u219F",Uarrocir:"\u2949",Ubrcy:"\u040E",Ubreve:"\u016C",Ucir:"\xDB",Ucirc:"\xDB",Ucy:"\u0423",Udblac:"\u0170",Ufr:"\u{1D518}",Ugrav:"\xD9",Ugrave:"\xD9",Umacr:"\u016A",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",Uopf:"\u{1D54C}",UpArrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",UpEquilibrium:"\u296E",UpTee:"\u22A5",UpTeeArrow:"\u21A5",Uparrow:"\u21D1",Updownarrow:"\u21D5",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",Upsilon:"\u03A5",Uring:"\u016E",Uscr:"\u{1D4B0}",Utilde:"\u0168",Uum:"\xDC",Uuml:"\xDC",VDash:"\u22AB",Vbar:"\u2AEB",Vcy:"\u0412",Vdash:"\u22A9",Vdashl:"\u2AE6",Vee:"\u22C1",Verbar:"\u2016",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",Vopf:"\u{1D54D}",Vscr:"\u{1D4B1}",Vvdash:"\u22AA",Wcirc:"\u0174",Wedge:"\u22C0",Wfr:"\u{1D51A}",Wopf:"\u{1D54E}",Wscr:"\u{1D4B2}",Xfr:"\u{1D51B}",Xi:"\u039E",Xopf:"\u{1D54F}",Xscr:"\u{1D4B3}",YAcy:"\u042F",YIcy:"\u0407",YUcy:"\u042E",Yacut:"\xDD",Yacute:"\xDD",Ycirc:"\u0176",Ycy:"\u042B",Yfr:"\u{1D51C}",Yopf:"\u{1D550}",Yscr:"\u{1D4B4}",Yuml:"\u0178",ZHcy:"\u0416",Zacute:"\u0179",Zcaron:"\u017D",Zcy:"\u0417",Zdot:"\u017B",ZeroWidthSpace:"\u200B",Zeta:"\u0396",Zfr:"\u2128",Zopf:"\u2124",Zscr:"\u{1D4B5}",aacut:"\xE1",aacute:"\xE1",abreve:"\u0103",ac:"\u223E",acE:"\u223E\u0333",acd:"\u223F",acir:"\xE2",acirc:"\xE2",acut:"\xB4",acute:"\xB4",acy:"\u0430",aeli:"\xE6",aelig:"\xE6",af:"\u2061",afr:"\u{1D51E}",agrav:"\xE0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",alpha:"\u03B1",amacr:"\u0101",amalg:"\u2A3F",am:"&",amp:"&",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",aogon:"\u0105",aopf:"\u{1D552}",ap:"\u2248",apE:"\u2A70",apacir:"\u2A6F",ape:"\u224A",apid:"\u224B",apos:"'",approx:"\u2248",approxeq:"\u224A",arin:"\xE5",aring:"\xE5",ascr:"\u{1D4B6}",ast:"*",asymp:"\u2248",asympeq:"\u224D",atild:"\xE3",atilde:"\xE3",aum:"\xE4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",bNot:"\u2AED",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",barvee:"\u22BD",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",beta:"\u03B2",beth:"\u2136",between:"\u226C",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bnot:"\u2310",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxDL:"\u2557",boxDR:"\u2554",boxDl:"\u2556",boxDr:"\u2553",boxH:"\u2550",boxHD:"\u2566",boxHU:"\u2569",boxHd:"\u2564",boxHu:"\u2567",boxUL:"\u255D",boxUR:"\u255A",boxUl:"\u255C",boxUr:"\u2559",boxV:"\u2551",boxVH:"\u256C",boxVL:"\u2563",boxVR:"\u2560",boxVh:"\u256B",boxVl:"\u2562",boxVr:"\u255F",boxbox:"\u29C9",boxdL:"\u2555",boxdR:"\u2552",boxdl:"\u2510",boxdr:"\u250C",boxh:"\u2500",boxhD:"\u2565",boxhU:"\u2568",boxhd:"\u252C",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxuL:"\u255B",boxuR:"\u2558",boxul:"\u2518",boxur:"\u2514",boxv:"\u2502",boxvH:"\u256A",boxvL:"\u2561",boxvR:"\u255E",boxvh:"\u253C",boxvl:"\u2524",boxvr:"\u251C",bprime:"\u2035",breve:"\u02D8",brvba:"\xA6",brvbar:"\xA6",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",bumpeq:"\u224F",cacute:"\u0107",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",ccaps:"\u2A4D",ccaron:"\u010D",ccedi:"\xE7",ccedil:"\xE7",ccirc:"\u0109",ccups:"\u2A4C",ccupssm:"\u2A50",cdot:"\u010B",cedi:"\xB8",cedil:"\xB8",cemptyv:"\u29B2",cen:"\xA2",cent:"\xA2",centerdot:"\xB7",cfr:"\u{1D520}",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",chi:"\u03C7",cir:"\u25CB",cirE:"\u29C3",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledR:"\xAE",circledS:"\u24C8",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",clubs:"\u2663",clubsuit:"\u2663",colon:":",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",conint:"\u222E",copf:"\u{1D554}",coprod:"\u2210",cop:"\xA9",copy:"\xA9",copysr:"\u2117",crarr:"\u21B5",cross:"\u2717",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cup:"\u222A",cupbrcap:"\u2A48",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curre:"\xA4",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dArr:"\u21D3",dHar:"\u2965",dagger:"\u2020",daleth:"\u2138",darr:"\u2193",dash:"\u2010",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",dcaron:"\u010F",dcy:"\u0434",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",ddotseq:"\u2A77",de:"\xB0",deg:"\xB0",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",dfr:"\u{1D521}",dharl:"\u21C3",dharr:"\u21C2",diam:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divid:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",dopf:"\u{1D555}",dot:"\u02D9",doteq:"\u2250",doteqdot:"\u2251",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",downarrow:"\u2193",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",dscr:"\u{1D4B9}",dscy:"\u0455",dsol:"\u29F6",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",dzcy:"\u045F",dzigrarr:"\u27FF",eDDot:"\u2A77",eDot:"\u2251",eacut:"\xE9",eacute:"\xE9",easter:"\u2A6E",ecaron:"\u011B",ecir:"\xEA",ecirc:"\xEA",ecolon:"\u2255",ecy:"\u044D",edot:"\u0117",ee:"\u2147",efDot:"\u2252",efr:"\u{1D522}",eg:"\u2A9A",egrav:"\xE8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",eng:"\u014B",ensp:"\u2002",eogon:"\u0119",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",equals:"=",equest:"\u225F",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erDot:"\u2253",erarr:"\u2971",escr:"\u212F",esdot:"\u2250",esim:"\u2242",eta:"\u03B7",et:"\xF0",eth:"\xF0",eum:"\xEB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",expectation:"\u2130",exponentiale:"\u2147",fallingdotseq:"\u2252",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",ffr:"\u{1D523}",filig:"\uFB01",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",fopf:"\u{1D557}",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",fpartint:"\u2A0D",frac1:"\xBC",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac3:"\xBE",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",gE:"\u2267",gEl:"\u2A8C",gacute:"\u01F5",gamma:"\u03B3",gammad:"\u03DD",gap:"\u2A86",gbreve:"\u011F",gcirc:"\u011D",gcy:"\u0433",gdot:"\u0121",ge:"\u2265",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",gfr:"\u{1D524}",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",gjcy:"\u0453",gl:"\u2277",glE:"\u2A92",gla:"\u2AA5",glj:"\u2AA4",gnE:"\u2269",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",gopf:"\u{1D558}",grave:"`",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",g:">",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",hArr:"\u21D4",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",hardcy:"\u044A",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",hbar:"\u210F",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",horbar:"\u2015",hscr:"\u{1D4BD}",hslash:"\u210F",hstrok:"\u0127",hybull:"\u2043",hyphen:"\u2010",iacut:"\xED",iacute:"\xED",ic:"\u2063",icir:"\xEE",icirc:"\xEE",icy:"\u0438",iecy:"\u0435",iexc:"\xA1",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",igrav:"\xEC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",ijlig:"\u0133",imacr:"\u012B",image:"\u2111",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",int:"\u222B",intcal:"\u22BA",integers:"\u2124",intercal:"\u22BA",intlarhk:"\u2A17",intprod:"\u2A3C",iocy:"\u0451",iogon:"\u012F",iopf:"\u{1D55A}",iota:"\u03B9",iprod:"\u2A3C",iques:"\xBF",iquest:"\xBF",iscr:"\u{1D4BE}",isin:"\u2208",isinE:"\u22F9",isindot:"\u22F5",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",itilde:"\u0129",iukcy:"\u0456",ium:"\xEF",iuml:"\xEF",jcirc:"\u0135",jcy:"\u0439",jfr:"\u{1D527}",jmath:"\u0237",jopf:"\u{1D55B}",jscr:"\u{1D4BF}",jsercy:"\u0458",jukcy:"\u0454",kappa:"\u03BA",kappav:"\u03F0",kcedil:"\u0137",kcy:"\u043A",kfr:"\u{1D528}",kgreen:"\u0138",khcy:"\u0445",kjcy:"\u045C",kopf:"\u{1D55C}",kscr:"\u{1D4C0}",lAarr:"\u21DA",lArr:"\u21D0",lAtail:"\u291B",lBarr:"\u290E",lE:"\u2266",lEg:"\u2A8B",lHar:"\u2962",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",lambda:"\u03BB",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",laqu:"\xAB",laquo:"\xAB",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",lcaron:"\u013E",lcedil:"\u013C",lceil:"\u2308",lcub:"{",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",leftarrow:"\u2190",leftarrowtail:"\u21A2",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",leftthreetimes:"\u22CB",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",lessgtr:"\u2276",lesssim:"\u2272",lfisht:"\u297C",lfloor:"\u230A",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",ljcy:"\u0459",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",llhard:"\u296B",lltri:"\u25FA",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnE:"\u2268",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",lstrok:"\u0142",l:"<",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltrPar:"\u2996",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",mDDot:"\u223A",mac:"\xAF",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",mcy:"\u043C",mdash:"\u2014",measuredangle:"\u2221",mfr:"\u{1D52A}",mho:"\u2127",micr:"\xB5",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middo:"\xB7",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",mstpos:"\u223E",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nGg:"\u22D9\u0338",nGt:"\u226B\u20D2",nGtv:"\u226B\u0338",nLeftarrow:"\u21CD",nLeftrightarrow:"\u21CE",nLl:"\u22D8\u0338",nLt:"\u226A\u20D2",nLtv:"\u226A\u0338",nRightarrow:"\u21CF",nVDash:"\u22AF",nVdash:"\u22AE",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbs:"\xA0",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",neArr:"\u21D7",nearhk:"\u2924",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",ngsim:"\u2275",ngt:"\u226F",ngtr:"\u226F",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",njcy:"\u045A",nlArr:"\u21CD",nlE:"\u2266\u0338",nlarr:"\u219A",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nlsim:"\u2274",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nmid:"\u2224",nopf:"\u{1D55F}",no:"\xAC",not:"\xAC",notin:"\u2209",notinE:"\u22F9\u0338",notindot:"\u22F5\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",ntild:"\xF1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvDash:"\u22AD",nvHarr:"\u2904",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwArr:"\u21D6",nwarhk:"\u2923",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",oS:"\u24C8",oacut:"\xF3",oacute:"\xF3",oast:"\u229B",ocir:"\xF4",ocirc:"\xF4",ocy:"\u043E",odash:"\u229D",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",oelig:"\u0153",ofcir:"\u29BF",ofr:"\u{1D52C}",ogon:"\u02DB",ograv:"\xF2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",omacr:"\u014D",omega:"\u03C9",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",oopf:"\u{1D560}",opar:"\u29B7",operp:"\u29B9",oplus:"\u2295",or:"\u2228",orarr:"\u21BB",ord:"\xBA",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oscr:"\u2134",oslas:"\xF8",oslash:"\xF8",osol:"\u2298",otild:"\xF5",otilde:"\xF5",otimes:"\u2297",otimesas:"\u2A36",oum:"\xF6",ouml:"\xF6",ovbar:"\u233D",par:"\xB6",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",pfr:"\u{1D52D}",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",plusm:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",pointint:"\u2A15",popf:"\u{1D561}",poun:"\xA3",pound:"\xA3",pr:"\u227A",prE:"\u2AB3",prap:"\u2AB7",prcue:"\u227C",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",prime:"\u2032",primes:"\u2119",prnE:"\u2AB5",prnap:"\u2AB9",prnsim:"\u22E8",prod:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",pscr:"\u{1D4C5}",psi:"\u03C8",puncsp:"\u2008",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",qprime:"\u2057",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quo:'"',quot:'"',rAarr:"\u21DB",rArr:"\u21D2",rAtail:"\u291C",rBarr:"\u290F",rHar:"\u2964",race:"\u223D\u0331",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raqu:"\xBB",raquo:"\xBB",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",re:"\xAE",reg:"\xAE",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",rho:"\u03C1",rhov:"\u03F1",rightarrow:"\u2192",rightarrowtail:"\u21A3",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",rightthreetimes:"\u22CC",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",rsaquo:"\u203A",rscr:"\u{1D4C7}",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",ruluhar:"\u2968",rx:"\u211E",sacute:"\u015B",sbquo:"\u201A",sc:"\u227B",scE:"\u2AB4",scap:"\u2AB8",scaron:"\u0161",sccue:"\u227D",sce:"\u2AB0",scedil:"\u015F",scirc:"\u015D",scnE:"\u2AB6",scnap:"\u2ABA",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",seArr:"\u21D8",searhk:"\u2925",searr:"\u2198",searrow:"\u2198",sec:"\xA7",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",shchcy:"\u0449",shcy:"\u0448",shortmid:"\u2223",shortparallel:"\u2225",sh:"\xAD",shy:"\xAD",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",square:"\u25A1",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",subE:"\u2AC5",subdot:"\u2ABD",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",sum:"\u2211",sung:"\u266A",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supE:"\u2AC6",supdot:"\u2ABE",supdsub:"\u2AD8",supe:"\u2287",supedot:"\u2AC4",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swArr:"\u21D9",swarhk:"\u2926",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szli:"\xDF",szlig:"\xDF",target:"\u2316",tau:"\u03C4",tbrk:"\u23B4",tcaron:"\u0165",tcedil:"\u0163",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",thor:"\xFE",thorn:"\xFE",tilde:"\u02DC",time:"\xD7",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",tscr:"\u{1D4C9}",tscy:"\u0446",tshcy:"\u045B",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",uArr:"\u21D1",uHar:"\u2963",uacut:"\xFA",uacute:"\xFA",uarr:"\u2191",ubrcy:"\u045E",ubreve:"\u016D",ucir:"\xFB",ucirc:"\xFB",ucy:"\u0443",udarr:"\u21C5",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",ufr:"\u{1D532}",ugrav:"\xF9",ugrave:"\xF9",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",umacr:"\u016B",um:"\xA8",uml:"\xA8",uogon:"\u0173",uopf:"\u{1D566}",uparrow:"\u2191",updownarrow:"\u2195",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",upsi:"\u03C5",upsih:"\u03D2",upsilon:"\u03C5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",uring:"\u016F",urtri:"\u25F9",uscr:"\u{1D4CA}",utdot:"\u22F0",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",uum:"\xFC",uuml:"\xFC",uwangle:"\u29A7",vArr:"\u21D5",vBar:"\u2AE8",vBarv:"\u2AE9",vDash:"\u22A8",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vcy:"\u0432",vdash:"\u22A2",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",vert:"|",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",vzigzag:"\u299A",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",wfr:"\u{1D534}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",yacut:"\xFD",yacute:"\xFD",yacy:"\u044F",ycirc:"\u0177",ycy:"\u044B",ye:"\xA5",yen:"\xA5",yfr:"\u{1D536}",yicy:"\u0457",yopf:"\u{1D56A}",yscr:"\u{1D4CE}",yucy:"\u044E",yum:"\xFF",yuml:"\xFF",zacute:"\u017A",zcaron:"\u017E",zcy:"\u0437",zdot:"\u017C",zeetrf:"\u2128",zeta:"\u03B6",zfr:"\u{1D537}",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}}}),Wl=S({"node_modules/parse-entities/decode-entity.js"(e,r){"use strict";I();var u=Xl();r.exports=a;var t={}.hasOwnProperty;function a(n){return t.call(u,n)?u[n]:!1}}}),xr=S({"node_modules/parse-entities/index.js"(e,r){"use strict";I();var u=Ul(),t=Gl(),a=Me(),n=Vl(),s=Hl(),c=Wl();r.exports=J;var i={}.hasOwnProperty,D=String.fromCharCode,o=Function.prototype,l={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},d=9,p=10,g=12,F=32,E=38,b=59,f=60,x=61,v=35,h=88,m=120,C=65533,w="named",q="hexadecimal",L="decimal",B={};B[q]=16,B[L]=10;var O={};O[w]=s,O[L]=a,O[q]=n;var T=1,P=2,A=3,j=4,H=5,G=6,X=7,R={};R[T]="Named character references must be terminated by a semicolon",R[P]="Numeric character references must be terminated by a semicolon",R[A]="Named character references cannot be empty",R[j]="Numeric character references cannot be empty",R[H]="Named character references must be known",R[G]="Numeric character references cannot be disallowed",R[X]="Numeric character references cannot be outside the permissible Unicode range";function J(k,y){var _={},N,V;y||(y={});for(V in l)N=y[V],_[V]=N==null?l[V]:N;return(_.position.indent||_.position.start)&&(_.indent=_.position.indent||[],_.position=_.position.start),z(k,_)}function z(k,y){var _=y.additional,N=y.nonTerminated,V=y.text,W=y.reference,K=y.warning,ee=y.textContext,Y=y.referenceContext,ue=y.warningContext,le=y.position,ce=y.indent||[],te=k.length,Z=0,Q=-1,De=le.column||1,ye=le.line||1,fe="",he=[],ae,pe,ne,re,we,oe,ie,Ce,rr,br,qe,$e,_e,xe,Fu,Ue,ur,ge,se;for(typeof _=="string"&&(_=_.charCodeAt(0)),Ue=Ge(),Ce=K?Da:o,Z--,te++;++Z65535&&(oe-=65536,br+=D(oe>>>10|55296),oe=56320|oe&1023),oe=br+D(oe))):xe!==w&&Ce(j,ge)),oe?(Au(),Ue=Ge(),Z=se-1,De+=se-_e+1,he.push(oe),ur=Ge(),ur.offset++,W&&W.call(Y,oe,{start:Ue,end:ur},k.slice(_e-1,se)),Ue=ur):(re=k.slice(_e-1,se),fe+=re,De+=re.length,Z=se-1)}else we===10&&(ye++,Q++,De=0),we===we?(fe+=D(we),De++):Au();return he.join("");function Ge(){return{line:ye,column:De,offset:Z+(le.offset||0)}}function Da(xu,bu){var yr=Ge();yr.column+=bu,yr.offset+=bu,K.call(ue,R[xu],yr,xu)}function Au(){fe&&(he.push(fe),V&&V.call(ee,fe,{start:Ue,end:Ge()}),fe="")}}function M(k){return k>=55296&&k<=57343||k>1114111}function U(k){return k>=1&&k<=8||k===11||k>=13&&k<=31||k>=127&&k<=159||k>=64976&&k<=65007||(k&65535)===65535||(k&65535)===65534}}}),Kl=S({"node_modules/remark-parse/lib/decode.js"(e,r){"use strict";I();var u=Pe(),t=xr();r.exports=a;function a(n){return c.raw=i,c;function s(o){for(var l=n.offset,d=o.line,p=[];++d&&d in l;)p.push((l[d]||0)+1);return{start:o,indent:p}}function c(o,l,d){t(o,{position:s(l),warning:D,text:d,reference:d,textContext:n,referenceContext:n})}function i(o,l,d){return t(o,u(d,{position:s(l),warning:D}))}function D(o,l,d){d!==3&&n.file.message(o,l)}}}}),Yl=S({"node_modules/remark-parse/lib/tokenizer.js"(e,r){"use strict";I(),r.exports=u;function u(s){return c;function c(i,D){var o=this,l=o.offset,d=[],p=o[s+"Methods"],g=o[s+"Tokenizers"],F=D.line,E=D.column,b,f,x,v,h,m;if(!i)return d;for(P.now=q,P.file=o.file,C("");i;){for(b=-1,f=p.length,h=!1;++b"],t=u.concat(["~","|"]),a=t.concat([` +`,'"',"$","%","&","'",",","/",":",";","<","=","?","@","^"]);n.default=u,n.gfm=t,n.commonmark=a;function n(s){var c=s||{};return c.commonmark?a:c.gfm?t:u}}}),Zl=S({"node_modules/remark-parse/lib/block-elements.js"(e,r){"use strict";I(),r.exports=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","legend","li","link","main","menu","menuitem","meta","nav","noframes","ol","optgroup","option","p","param","pre","section","source","title","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]}}),$i=S({"node_modules/remark-parse/lib/defaults.js"(e,r){"use strict";I(),r.exports={position:!0,gfm:!0,commonmark:!1,pedantic:!1,blocks:Zl()}}}),Ql=S({"node_modules/remark-parse/lib/set-options.js"(e,r){"use strict";I();var u=Pe(),t=Jl(),a=$i();r.exports=n;function n(s){var c=this,i=c.options,D,o;if(s==null)s={};else if(typeof s=="object")s=u(s);else throw new Error("Invalid value `"+s+"` for setting `options`");for(D in a){if(o=s[D],o==null&&(o=i[D]),D!=="blocks"&&typeof o!="boolean"||D==="blocks"&&typeof o!="object")throw new Error("Invalid value `"+o+"` for setting `options."+D+"`");s[D]=o}return c.options=s,c.escape=t(s),c}}}),eD=S({"node_modules/unist-util-is/convert.js"(e,r){"use strict";I(),r.exports=u;function u(c){if(c==null)return s;if(typeof c=="string")return n(c);if(typeof c=="object")return"length"in c?a(c):t(c);if(typeof c=="function")return c;throw new Error("Expected function, string, or object as test")}function t(c){return i;function i(D){var o;for(o in c)if(D[o]!==c[o])return!1;return!0}}function a(c){for(var i=[],D=-1;++D":""))+")"),h;function h(){var m=f.concat(E),C=[],w,q;if((!o||g(E,b,f[f.length-1]||null))&&(C=i(l(E,f)),C[0]===s))return C;if(E.children&&C[0]!==n)for(q=(d?E.children.length:-1)+p;q>-1&&q"u")t=n,u="";else if(u.length>=c)return u.substr(0,c);for(;c>u.length&&s>1;)s&1&&(u+=n),s>>=1,n+=n;return u+=n,u=u.substr(0,c),u}}}),Ui=S({"node_modules/trim-trailing-lines/index.js"(e,r){"use strict";I(),r.exports=u;function u(t){return String(t).replace(/\n+$/,"")}}}),oD=S({"node_modules/remark-parse/lib/tokenize/code-indented.js"(e,r){"use strict";I();var u=mu(),t=Ui();r.exports=D;var a=` +`,n=" ",s=" ",c=4,i=u(s,c);function D(o,l,d){for(var p=-1,g=l.length,F="",E="",b="",f="",x,v,h;++p=i)){for(w="";Es)&&!(!v||!d&&D.charAt(g+1)===n)){for(p=D.length+1,x="";++g=i&&(!E||E===t)?(F+=x,d?!0:o(F)({type:"thematicBreak"})):void 0}}}),Gi=S({"node_modules/remark-parse/lib/util/get-indentation.js"(e,r){"use strict";I(),r.exports=s;var u=" ",t=" ",a=1,n=4;function s(c){for(var i=0,D=0,o=c.charAt(i),l={},d,p=0;o===u||o===t;){for(d=o===u?n:a,D+=d,d>1&&(D=Math.floor(D/d)*d);p0&&E.indent=Q.indent&&(ne=!0),y=T.charAt(R),K=null,!ne){if(y===i||y===o||y===l)K=y,R++,M++;else{for(U="";R=Q.indent||M>f),W=!1,R=V;if(Y=T.slice(V,N),ee=V===R?Y:T.slice(R,N),(K===i||K===D||K===l)&&G.thematicBreak.call(A,O,Y,!0))break;if(ue=le,le=!W&&!u(ee).length,ne&&Q)Q.value=Q.value.concat(Z,Y),te=te.concat(Z,Y),Z=[];else if(W)Z.length!==0&&(fe=!0,Q.value.push(""),Q.trail=Z.concat()),Q={value:[Y],indent:M,trail:[]},ce.push(Q),te=te.concat(Z,Y),Z=[];else if(le){if(ue&&!j)break;Z.push(Y)}else{if(ue||c(X,G,A,[O,Y,!0]))break;Q.value=Q.value.concat(Z,Y),te=te.concat(Z,Y),Z=[]}R=N+1}for(he=O(te.join(g)).reset({type:"list",ordered:k,start:z,spread:fe,children:[]}),De=A.enterList(),ye=A.enterBlock(),R=-1,J=ce.length;++R=c){b--;break}f+=h}for(x="",v="";++b`\\u0000-\\u0020]+",t="'[^']*'",a='"[^"]*"',n="(?:"+u+"|"+t+"|"+a+")",s="(?:\\s+"+r+"(?:\\s*=\\s*"+n+")?)",c="<[A-Za-z][A-Za-z0-9\\-]*"+s+"*\\s*\\/?>",i="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",D="|",o="<[?].*?[?]>",l="]*>",d="";e.openCloseTag=new RegExp("^(?:"+c+"|"+i+")"),e.tag=new RegExp("^(?:"+c+"|"+i+"|"+D+"|"+o+"|"+l+"|"+d+")")}}),hD=S({"node_modules/remark-parse/lib/tokenize/html-block.js"(e,r){"use strict";I();var u=Vi().openCloseTag;r.exports=x;var t=" ",a=" ",n=` +`,s="<",c=/^<(script|pre|style)(?=(\s|>|$))/i,i=/<\/(script|pre|style)>/i,D=/^/,l=/^<\?/,d=/\?>/,p=/^/,F=/^/,b=/^$/,f=new RegExp(u.source+"\\s*$");function x(v,h,m){for(var C=this,w=C.options.blocks.join("|"),q=new RegExp("^|$))","i"),L=h.length,B=0,O,T,P,A,j,H,G,X=[[c,i,!0],[D,o,!0],[l,d,!0],[p,g,!0],[F,E,!0],[q,b,!0],[f,b,!1]];BM){if(X1&&(O?(C+=B.slice(0,-1),B=B.charAt(B.length-1)):(C+=B,B="")),H=E.now(),E(C)({type:"tableCell",children:x.tokenizeInline(A,H)},w)),E(B+O),B="",A=""):(B&&(A+=B,B=""),A+=O,O===i&&v!==q-2&&(A+=R.charAt(v+1),v++)),j=!1,v++}G||E(a+h)}return z}}}}}),CD=S({"node_modules/remark-parse/lib/tokenize/paragraph.js"(e,r){"use strict";I();var u=ze(),t=Ui(),a=Eu();r.exports=D;var n=" ",s=` +`,c=" ",i=4;function D(o,l,d){for(var p=this,g=p.options,F=g.commonmark,E=p.blockTokenizers,b=p.interruptParagraph,f=l.indexOf(s),x=l.length,v,h,m,C,w;f=i&&m!==s){f=l.indexOf(s,f+1);continue}}if(h=l.slice(f+1),a(b,E,p,[o,h,!0]))break;if(v=f,f=l.indexOf(s,f+1),f!==-1&&u(l.slice(v,f))===""){f=v;break}}return h=l.slice(0,f),d?!0:(w=o.now(),h=t(h),o(h)({type:"paragraph",children:p.tokenizeInline(h,w)}))}}}),gD=S({"node_modules/remark-parse/lib/locate/escape.js"(e,r){"use strict";I(),r.exports=u;function u(t,a){return t.indexOf("\\",a)}}}),FD=S({"node_modules/remark-parse/lib/tokenize/escape.js"(e,r){"use strict";I();var u=gD();r.exports=n,n.locator=u;var t=` +`,a="\\";function n(s,c,i){var D=this,o,l;if(c.charAt(0)===a&&(o=c.charAt(1),D.escape.indexOf(o)!==-1))return i?!0:(o===t?l={type:"break"}:l={type:"text",value:o},s(a+o)(l))}}}),Xi=S({"node_modules/remark-parse/lib/locate/tag.js"(e,r){"use strict";I(),r.exports=u;function u(t,a){return t.indexOf("<",a)}}}),AD=S({"node_modules/remark-parse/lib/tokenize/auto-link.js"(e,r){"use strict";I();var u=be(),t=xr(),a=Xi();r.exports=l,l.locator=a,l.notInLink=!0;var n="<",s=">",c="@",i="/",D="mailto:",o=D.length;function l(d,p,g){var F=this,E="",b=p.length,f=0,x="",v=!1,h="",m,C,w,q,L;if(p.charAt(0)===n){for(f++,E=n;fk;)R=J+z.lastIndexOf(m),z=q.slice(J,R),y--;if(q.charCodeAt(R-1)===E&&(R--,n(q.charCodeAt(R-1)))){for(U=R-2;n(q.charCodeAt(U));)U--;q.charCodeAt(U)===D&&(R=U)}return _=q.slice(0,R),V=t(_,{nonTerminated:!1}),j&&(V="http://"+V),W=B.enterLink(),B.inlineTokenizers={text:T.text},N=B.tokenizeInline(_,w.now()),B.inlineTokenizers=T,W(),w(_)({type:"link",title:null,url:V,children:N})}}}}}),wD=S({"node_modules/remark-parse/lib/locate/email.js"(e,r){"use strict";I();var u=Me(),t=er(),a=43,n=45,s=46,c=95;r.exports=i;function i(o,l){var d=this,p,g;if(!this.options.gfm||(p=o.indexOf("@",l),p===-1))return-1;if(g=p,g===l||!D(o.charCodeAt(g-1)))return i.call(d,o,p+1);for(;g>l&&D(o.charCodeAt(g-1));)g--;return g}function D(o){return u(o)||t(o)||o===a||o===n||o===s||o===c}}}),BD=S({"node_modules/remark-parse/lib/tokenize/email.js"(e,r){"use strict";I();var u=xr(),t=Me(),a=er(),n=wD();r.exports=l,l.locator=n,l.notInLink=!0;var s=43,c=45,i=46,D=64,o=95;function l(d,p,g){var F=this,E=F.options.gfm,b=F.inlineTokenizers,f=0,x=p.length,v=-1,h,m,C,w;if(E){for(h=p.charCodeAt(f);t(h)||a(h)||h===s||h===c||h===i||h===o;)h=p.charCodeAt(++f);if(f!==0&&h===D){for(f++;f/i;function l(d,p,g){var F=this,E=p.length,b,f;if(!(p.charAt(0)!==n||E<3)&&(b=p.charAt(1),!(!u(b)&&b!==s&&b!==c&&b!==i)&&(f=p.match(a),!!f)))return g?!0:(f=f[0],!F.inLink&&D.test(f)?F.inLink=!0:F.inLink&&o.test(f)&&(F.inLink=!1),d(f)({type:"html",value:f}))}}}),Wi=S({"node_modules/remark-parse/lib/locate/link.js"(e,r){"use strict";I(),r.exports=u;function u(t,a){var n=t.indexOf("[",a),s=t.indexOf("![",a);return s===-1||n=T&&(T=0):T=O}else if(C===p)m++,j+=f.charAt(m);else if((!T||L)&&C===d)M++;else if((!T||L)&&C===g)if(M)M--;else{if(f.charAt(m+1)!==i)return;j+=i,B=!0,m++;break}U+=j,j="",m++}if(B){for(X=U,h+=U+j,m++;m2&&(F===a||F===t)&&(E===a||E===t)){for(l++,o--;la&&t.charAt(n-1)===" ";)n--;return n}}}),zD=S({"node_modules/remark-parse/lib/tokenize/break.js"(e,r){"use strict";I();var u=MD();r.exports=s,s.locator=u;var t=" ",a=` +`,n=2;function s(c,i,D){for(var o=i.length,l=-1,d="",p;++l"u"||u.call(l,g)},i=function(l,d){a&&d.name==="__proto__"?a(l,d.name,{enumerable:!0,configurable:!0,value:d.newValue,writable:!0}):l[d.name]=d.newValue},D=function(l,d){if(d==="__proto__")if(u.call(l,d)){if(n)return n(l,d).value}else return;return l[d]};r.exports=function o(){var l,d,p,g,F,E,b=arguments[0],f=1,x=arguments.length,v=!1;for(typeof b=="boolean"&&(v=b,b=arguments[1]||{},f=2),(b==null||typeof b!="object"&&typeof b!="function")&&(b={});f{if(Object.prototype.toString.call(u)!=="[object Object]")return!1;let t=Object.getPrototypeOf(u);return t===null||t===Object.prototype}}}),WD=S({"node_modules/trough/wrap.js"(e,r){"use strict";I();var u=[].slice;r.exports=t;function t(a,n){var s;return c;function c(){var o=u.call(arguments,0),l=a.length>o.length,d;l&&o.push(i);try{d=a.apply(null,o)}catch(p){if(l&&s)throw p;return i(p)}l||(d&&typeof d.then=="function"?d.then(D,i):d instanceof Error?i(d):D(d))}function i(){s||(s=!0,n.apply(null,arguments))}function D(o){i(null,o)}}}}),KD=S({"node_modules/trough/index.js"(e,r){"use strict";I();var u=WD();r.exports=a,a.wrap=u;var t=[].slice;function a(){var n=[],s={};return s.run=c,s.use=i,s;function c(){var D=-1,o=t.call(arguments,0,-1),l=arguments[arguments.length-1];if(typeof l!="function")throw new Error("Expected function as last argument, not "+l);d.apply(null,[null].concat(o));function d(p){var g=n[++D],F=t.call(arguments,0),E=F.slice(1),b=o.length,f=-1;if(p){l(p);return}for(;++fi.length){for(;d--;)if(i.charCodeAt(d)===47){if(g){o=d+1;break}}else l<0&&(g=!0,l=d+1);return l<0?"":i.slice(o,l)}if(D===i)return"";for(p=-1,F=D.length-1;d--;)if(i.charCodeAt(d)===47){if(g){o=d+1;break}}else p<0&&(g=!0,p=d+1),F>-1&&(i.charCodeAt(d)===D.charCodeAt(F--)?F<0&&(l=d):(F=-1,l=p));return o===l?l=p:l<0&&(l=i.length),i.slice(o,l)}function u(i){var D,o,l;if(c(i),!i.length)return".";for(D=-1,l=i.length;--l;)if(i.charCodeAt(l)===47){if(o){D=l;break}}else o||(o=!0);return D<0?i.charCodeAt(0)===47?"/":".":D===1&&i.charCodeAt(0)===47?"//":i.slice(0,D)}function t(i){var D=-1,o=0,l=-1,d=0,p,g,F;for(c(i),F=i.length;F--;){if(g=i.charCodeAt(F),g===47){if(p){o=F+1;break}continue}l<0&&(p=!0,l=F+1),g===46?D<0?D=F:d!==1&&(d=1):D>-1&&(d=-1)}return D<0||l<0||d===0||d===1&&D===l-1&&D===o+1?"":i.slice(D,l)}function a(){for(var i=-1,D;++i2){if(E=o.lastIndexOf("/"),E!==o.length-1){E<0?(o="",l=0):(o=o.slice(0,E),l=o.length-1-o.lastIndexOf("/")),d=g,p=0;continue}}else if(o.length){o="",l=0,d=g,p=0;continue}}D&&(o=o.length?o+"/..":"..",l=2)}else o.length?o+="/"+i.slice(d+1,g):o=i.slice(d+1,g),l=g-d-1;d=g,p=0}else F===46&&p>-1?p++:p=-1}return o}function c(i){if(typeof i!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(i))}}}),QD=S({"node_modules/vfile/lib/minproc.browser.js"(e){"use strict";I(),e.cwd=r;function r(){return"/"}}}),e2=S({"node_modules/vfile/lib/core.js"(e,r){"use strict";I();var u=ZD(),t=QD(),a=Ki();r.exports=c;var n={}.hasOwnProperty,s=["history","path","basename","stem","extname","dirname"];c.prototype.toString=f,Object.defineProperty(c.prototype,"path",{get:i,set:D}),Object.defineProperty(c.prototype,"dirname",{get:o,set:l}),Object.defineProperty(c.prototype,"basename",{get:d,set:p}),Object.defineProperty(c.prototype,"extname",{get:g,set:F}),Object.defineProperty(c.prototype,"stem",{get:E,set:b});function c(m){var C,w;if(!m)m={};else if(typeof m=="string"||a(m))m={contents:m};else if("message"in m&&"messages"in m)return m;if(!(this instanceof c))return new c(m);for(this.data={},this.messages=[],this.history=[],this.cwd=t.cwd(),w=-1;++w-1)throw new Error("`extname` cannot contain multiple dots")}this.path=u.join(this.dirname,this.stem+(m||""))}function E(){return typeof this.path=="string"?u.basename(this.path,this.extname):void 0}function b(m){v(m,"stem"),x(m,"stem"),this.path=u.join(this.dirname||"",m+(this.extname||""))}function f(m){return(this.contents||"").toString(m)}function x(m,C){if(m&&m.indexOf(u.sep)>-1)throw new Error("`"+C+"` cannot be a path: did not expect `"+u.sep+"`")}function v(m,C){if(!m)throw new Error("`"+C+"` cannot be empty")}function h(m,C){if(!m)throw new Error("Setting `"+C+"` requires `path` to be set too")}}}),r2=S({"node_modules/vfile/lib/index.js"(e,r){"use strict";I();var u=JD(),t=e2();r.exports=t,t.prototype.message=a,t.prototype.info=s,t.prototype.fail=n;function a(c,i,D){var o=new u(c,i,D);return this.path&&(o.name=this.path+":"+o.name,o.file=this.path),o.fatal=!1,this.messages.push(o),o}function n(){var c=this.message.apply(this,arguments);throw c.fatal=!0,c}function s(){var c=this.message.apply(this,arguments);return c.fatal=null,c}}}),u2=S({"node_modules/vfile/index.js"(e,r){"use strict";I(),r.exports=r2()}}),t2=S({"node_modules/unified/index.js"(e,r){"use strict";I();var u=VD(),t=Ki(),a=HD(),n=XD(),s=KD(),c=u2();r.exports=g().freeze();var i=[].slice,D={}.hasOwnProperty,o=s().use(l).use(d).use(p);function l(m,C){C.tree=m.parse(C.file)}function d(m,C,w){m.run(C.tree,C.file,q);function q(L,B,O){L?w(L):(C.tree=B,C.file=O,w())}}function p(m,C){var w=m.stringify(C.tree,C.file);w==null||(typeof w=="string"||t(w)?C.file.contents=w:C.file.result=w)}function g(){var m=[],C=s(),w={},q=-1,L;return B.data=T,B.freeze=O,B.attachers=m,B.use=P,B.parse=j,B.stringify=X,B.run=H,B.runSync=G,B.process=R,B.processSync=J,B;function B(){for(var z=g(),M=-1;++Mc)&&(!w||T===n)){A=L-1,L++,w&&L++,j=L;break}}else O===i&&(L++,T=h.charCodeAt(L+1));L++}if(j!==void 0)return m?!0:(H=h.slice(P,A+1),v(h.slice(0,j))({type:"inlineMath",value:H,data:{hName:"span",hProperties:{className:D.concat(w&&F.inlineMathDouble?[o]:[])},hChildren:[{type:"text",value:H}]}}))}}}}function p(g){let F=g.prototype;F.visitors.inlineMath=E;function E(b){let f="$";return(b.data&&b.data.hProperties&&b.data.hProperties.className||[]).includes(o)&&(f="$$"),f+b.value+f}}}}),i2=S({"node_modules/remark-math/block.js"(e,r){I();var u=Yi();r.exports=o;var t=10,a=32,n=36,s=` +`,c="$",i=2,D=["math","math-display"];function o(){let p=this.Parser,g=this.Compiler;u.isRemarkParser(p)&&l(p),u.isRemarkCompiler(g)&&d(g)}function l(p){let g=p.prototype,F=g.blockMethods,E=g.interruptParagraph,b=g.interruptList,f=g.interruptBlockquote;g.blockTokenizers.math=x,F.splice(F.indexOf("fencedCode")+1,0,"math"),E.splice(E.indexOf("fencedCode")+1,0,["math"]),b.splice(b.indexOf("fencedCode")+1,0,["math"]),f.splice(f.indexOf("fencedCode")+1,0,["math"]);function x(v,h,m){var C=h.length,w=0;let q,L,B,O,T,P,A,j,H,G,X;for(;wG&&h.charCodeAt(O-1)===a;)O--;for(;O>G&&h.charCodeAt(O-1)===n;)H++,O--;for(P<=H&&h.indexOf(c,G)===O&&(j=!0,X=O);G<=X&&G-wG&&h.charCodeAt(X-1)===a;)X--;if((!j||G!==X)&&L.push(h.slice(G,X)),j)break;w=B+1,B=h.indexOf(s,w+1),B=B===-1?C:B}return L=L.join(` +`),v(h.slice(0,B))({type:"math",value:L,data:{hName:"div",hProperties:{className:D.concat()},hChildren:[{type:"text",value:L}]}})}}}}function d(p){let g=p.prototype;g.visitors.math=F;function F(E){return`$$ +`+E.value+` +$$`}}}}),a2=S({"node_modules/remark-math/index.js"(e,r){I();var u=n2(),t=i2();r.exports=a;function a(n){var s=n||{};t.call(this,s),u.call(this,s)}}}),o2=S({"node_modules/remark-footnotes/index.js"(e,r){"use strict";I(),r.exports=g;var u=9,t=10,a=32,n=33,s=58,c=91,i=92,D=93,o=94,l=96,d=4,p=1024;function g(h){var m=this.Parser,C=this.Compiler;F(m)&&b(m,h),E(C)&&f(C)}function F(h){return Boolean(h&&h.prototype&&h.prototype.blockTokenizers)}function E(h){return Boolean(h&&h.prototype&&h.prototype.visitors)}function b(h,m){for(var C=m||{},w=h.prototype,q=w.blockTokenizers,L=w.inlineTokenizers,B=w.blockMethods,O=w.inlineMethods,T=q.definition,P=L.reference,A=[],j=-1,H=B.length,G;++jd&&(ae=void 0,pe=Y);else{if(ae0&&(re=ne[ee-1],re.contentStart===re.contentEnd);)ee--;for(De=y(_.slice(0,re.contentEnd));++Y-{3}|\\+{3})(?[^\\n]*)\\n(?:|(?.*?)\\n)(?\\k|\\.{3})[^\\S\\n]*(?:\\n|$)","s");function t(a){let n=a.match(u);if(!n)return{content:a};let{startDelimiter:s,language:c,value:i="",endDelimiter:D}=n.groups,o=c.trim()||"yaml";if(s==="+++"&&(o="toml"),o!=="yaml"&&s!==D)return{content:a};let[l]=n;return{frontMatter:{type:"front-matter",lang:o,value:i,startDelimiter:s,endDelimiter:D,raw:l.replace(/\n$/,"")},content:l.replace(/[^\n]/g," ")+a.slice(l.length)}}r.exports=t}}),s2=S({"src/language-markdown/pragma.js"(e,r){"use strict";I();var u=Ji(),t=["format","prettier"];function a(n){let s=`@(${t.join("|")})`,c=new RegExp([``,`{\\s*\\/\\*\\s*${s}\\s*\\*\\/\\s*}`,``].join("|"),"m"),i=n.match(c);return(i==null?void 0:i.index)===0}r.exports={startWithPragma:a,hasPragma:n=>a(u(n).content.trimStart()),insertPragma:n=>{let s=u(n),c=``;return s.frontMatter?`${s.frontMatter.raw} + +${c} + +${s.content}`:`${c} + +${s.content}`}}}}),Zi=S({"src/language-markdown/loc.js"(e,r){"use strict";I();function u(a){return a.position.start.offset}function t(a){return a.position.end.offset}r.exports={locStart:u,locEnd:t}}}),Qi=S({"src/language-markdown/mdx.js"(e,r){"use strict";I();var u=/^import\s/,t=/^export\s/,a="[a-z][a-z0-9]*(\\.[a-z][a-z0-9]*)*|",n=/|/,s=/^{\s*\/\*(.*)\*\/\s*}/,c=` + +`,i=p=>u.test(p),D=p=>t.test(p),o=(p,g)=>{let F=g.indexOf(c),E=g.slice(0,F);if(D(E)||i(E))return p(E)({type:D(E)?"export":"import",value:E})},l=(p,g)=>{let F=s.exec(g);if(F)return p(F[0])({type:"esComment",value:F[1].trim()})};o.locator=p=>D(p)||i(p)?-1:1,l.locator=(p,g)=>p.indexOf("{",g);function d(){let{Parser:p}=this,{blockTokenizers:g,blockMethods:F,inlineTokenizers:E,inlineMethods:b}=p.prototype;g.esSyntax=o,E.esComment=l,F.splice(F.indexOf("paragraph"),0,"esSyntax"),b.splice(b.indexOf("text"),0,"esComment")}r.exports={esSyntax:d,BLOCKS_REGEX:a,COMMENT_REGEX:n}}}),ea={};Pi(ea,{default:()=>c2});function c2(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var l2=je({"node_modules/escape-string-regexp/index.js"(){I()}}),D2=S({"src/utils/get-last.js"(e,r){"use strict";I();var u=t=>t[t.length-1];r.exports=u}}),ra=S({"node_modules/semver/internal/debug.js"(e,r){I();var u=typeof Qe=="object"&&Qe.env&&Qe.env.NODE_DEBUG&&/\bsemver\b/i.test(Qe.env.NODE_DEBUG)?function(){for(var t=arguments.length,a=new Array(t),n=0;n{};r.exports=u}}),ua=S({"node_modules/semver/internal/constants.js"(e,r){I();var u="2.0.0",t=256,a=Number.MAX_SAFE_INTEGER||9007199254740991,n=16;r.exports={SEMVER_SPEC_VERSION:u,MAX_LENGTH:t,MAX_SAFE_INTEGER:a,MAX_SAFE_COMPONENT_LENGTH:n}}}),f2=S({"node_modules/semver/internal/re.js"(e,r){I();var{MAX_SAFE_COMPONENT_LENGTH:u}=ua(),t=ra();e=r.exports={};var a=e.re=[],n=e.src=[],s=e.t={},c=0,i=(D,o,l)=>{let d=c++;t(D,d,o),s[D]=d,n[d]=o,a[d]=new RegExp(o,l?"g":void 0)};i("NUMERICIDENTIFIER","0|[1-9]\\d*"),i("NUMERICIDENTIFIERLOOSE","[0-9]+"),i("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),i("MAINVERSION",`(${n[s.NUMERICIDENTIFIER]})\\.(${n[s.NUMERICIDENTIFIER]})\\.(${n[s.NUMERICIDENTIFIER]})`),i("MAINVERSIONLOOSE",`(${n[s.NUMERICIDENTIFIERLOOSE]})\\.(${n[s.NUMERICIDENTIFIERLOOSE]})\\.(${n[s.NUMERICIDENTIFIERLOOSE]})`),i("PRERELEASEIDENTIFIER",`(?:${n[s.NUMERICIDENTIFIER]}|${n[s.NONNUMERICIDENTIFIER]})`),i("PRERELEASEIDENTIFIERLOOSE",`(?:${n[s.NUMERICIDENTIFIERLOOSE]}|${n[s.NONNUMERICIDENTIFIER]})`),i("PRERELEASE",`(?:-(${n[s.PRERELEASEIDENTIFIER]}(?:\\.${n[s.PRERELEASEIDENTIFIER]})*))`),i("PRERELEASELOOSE",`(?:-?(${n[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${n[s.PRERELEASEIDENTIFIERLOOSE]})*))`),i("BUILDIDENTIFIER","[0-9A-Za-z-]+"),i("BUILD",`(?:\\+(${n[s.BUILDIDENTIFIER]}(?:\\.${n[s.BUILDIDENTIFIER]})*))`),i("FULLPLAIN",`v?${n[s.MAINVERSION]}${n[s.PRERELEASE]}?${n[s.BUILD]}?`),i("FULL",`^${n[s.FULLPLAIN]}$`),i("LOOSEPLAIN",`[v=\\s]*${n[s.MAINVERSIONLOOSE]}${n[s.PRERELEASELOOSE]}?${n[s.BUILD]}?`),i("LOOSE",`^${n[s.LOOSEPLAIN]}$`),i("GTLT","((?:<|>)?=?)"),i("XRANGEIDENTIFIERLOOSE",`${n[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),i("XRANGEIDENTIFIER",`${n[s.NUMERICIDENTIFIER]}|x|X|\\*`),i("XRANGEPLAIN",`[v=\\s]*(${n[s.XRANGEIDENTIFIER]})(?:\\.(${n[s.XRANGEIDENTIFIER]})(?:\\.(${n[s.XRANGEIDENTIFIER]})(?:${n[s.PRERELEASE]})?${n[s.BUILD]}?)?)?`),i("XRANGEPLAINLOOSE",`[v=\\s]*(${n[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[s.XRANGEIDENTIFIERLOOSE]})(?:${n[s.PRERELEASELOOSE]})?${n[s.BUILD]}?)?)?`),i("XRANGE",`^${n[s.GTLT]}\\s*${n[s.XRANGEPLAIN]}$`),i("XRANGELOOSE",`^${n[s.GTLT]}\\s*${n[s.XRANGEPLAINLOOSE]}$`),i("COERCE",`(^|[^\\d])(\\d{1,${u}})(?:\\.(\\d{1,${u}}))?(?:\\.(\\d{1,${u}}))?(?:$|[^\\d])`),i("COERCERTL",n[s.COERCE],!0),i("LONETILDE","(?:~>?)"),i("TILDETRIM",`(\\s*)${n[s.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",i("TILDE",`^${n[s.LONETILDE]}${n[s.XRANGEPLAIN]}$`),i("TILDELOOSE",`^${n[s.LONETILDE]}${n[s.XRANGEPLAINLOOSE]}$`),i("LONECARET","(?:\\^)"),i("CARETTRIM",`(\\s*)${n[s.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",i("CARET",`^${n[s.LONECARET]}${n[s.XRANGEPLAIN]}$`),i("CARETLOOSE",`^${n[s.LONECARET]}${n[s.XRANGEPLAINLOOSE]}$`),i("COMPARATORLOOSE",`^${n[s.GTLT]}\\s*(${n[s.LOOSEPLAIN]})$|^$`),i("COMPARATOR",`^${n[s.GTLT]}\\s*(${n[s.FULLPLAIN]})$|^$`),i("COMPARATORTRIM",`(\\s*)${n[s.GTLT]}\\s*(${n[s.LOOSEPLAIN]}|${n[s.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",i("HYPHENRANGE",`^\\s*(${n[s.XRANGEPLAIN]})\\s+-\\s+(${n[s.XRANGEPLAIN]})\\s*$`),i("HYPHENRANGELOOSE",`^\\s*(${n[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${n[s.XRANGEPLAINLOOSE]})\\s*$`),i("STAR","(<|>)?=?\\s*\\*"),i("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),i("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}}),p2=S({"node_modules/semver/internal/parse-options.js"(e,r){I();var u=["includePrerelease","loose","rtl"],t=a=>a?typeof a!="object"?{loose:!0}:u.filter(n=>a[n]).reduce((n,s)=>(n[s]=!0,n),{}):{};r.exports=t}}),d2=S({"node_modules/semver/internal/identifiers.js"(e,r){I();var u=/^[0-9]+$/,t=(n,s)=>{let c=u.test(n),i=u.test(s);return c&&i&&(n=+n,s=+s),n===s?0:c&&!i?-1:i&&!c?1:nt(s,n);r.exports={compareIdentifiers:t,rcompareIdentifiers:a}}}),h2=S({"node_modules/semver/classes/semver.js"(e,r){I();var u=ra(),{MAX_LENGTH:t,MAX_SAFE_INTEGER:a}=ua(),{re:n,t:s}=f2(),c=p2(),{compareIdentifiers:i}=d2(),D=class{constructor(o,l){if(l=c(l),o instanceof D){if(o.loose===!!l.loose&&o.includePrerelease===!!l.includePrerelease)return o;o=o.version}else if(typeof o!="string")throw new TypeError(`Invalid Version: ${o}`);if(o.length>t)throw new TypeError(`version is longer than ${t} characters`);u("SemVer",o,l),this.options=l,this.loose=!!l.loose,this.includePrerelease=!!l.includePrerelease;let d=o.trim().match(l.loose?n[s.LOOSE]:n[s.FULL]);if(!d)throw new TypeError(`Invalid Version: ${o}`);if(this.raw=o,this.major=+d[1],this.minor=+d[2],this.patch=+d[3],this.major>a||this.major<0)throw new TypeError("Invalid major version");if(this.minor>a||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>a||this.patch<0)throw new TypeError("Invalid patch version");d[4]?this.prerelease=d[4].split(".").map(p=>{if(/^[0-9]+$/.test(p)){let g=+p;if(g>=0&&g=0;)typeof this.prerelease[d]=="number"&&(this.prerelease[d]++,d=-2);d===-1&&this.prerelease.push(0)}l&&(i(this.prerelease[0],l)===0?isNaN(this.prerelease[1])&&(this.prerelease=[l,0]):this.prerelease=[l,0]);break;default:throw new Error(`invalid increment argument: ${o}`)}return this.format(),this.raw=this.version,this}};r.exports=D}}),Cu=S({"node_modules/semver/functions/compare.js"(e,r){I();var u=h2(),t=(a,n,s)=>new u(a,s).compare(new u(n,s));r.exports=t}}),v2=S({"node_modules/semver/functions/lt.js"(e,r){I();var u=Cu(),t=(a,n,s)=>u(a,n,s)<0;r.exports=t}}),m2=S({"node_modules/semver/functions/gte.js"(e,r){I();var u=Cu(),t=(a,n,s)=>u(a,n,s)>=0;r.exports=t}}),E2=S({"src/utils/arrayify.js"(e,r){"use strict";I(),r.exports=(u,t)=>Object.entries(u).map(a=>{let[n,s]=a;return Object.assign({[t]:n},s)})}}),C2=S({"package.json"(e,r){r.exports={version:"2.8.8"}}}),g2=S({"node_modules/outdent/lib/index.js"(e,r){"use strict";I(),Object.defineProperty(e,"__esModule",{value:!0}),e.outdent=void 0;function u(){for(var f=[],x=0;xtypeof l=="string"||typeof l=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",since:"1.16.0",description:"JavaScript"},{value:"babel-flow",since:"1.16.0",description:"Flow"},{value:"babel-ts",since:"2.0.0",description:"TypeScript"},{value:"typescript",since:"1.4.0",description:"TypeScript"},{value:"acorn",since:"2.6.0",description:"JavaScript"},{value:"espree",since:"2.2.0",description:"JavaScript"},{value:"meriyah",since:"2.2.0",description:"JavaScript"},{value:"css",since:"1.7.1",description:"CSS"},{value:"less",since:"1.7.1",description:"Less"},{value:"scss",since:"1.7.1",description:"SCSS"},{value:"json",since:"1.5.0",description:"JSON"},{value:"json5",since:"1.13.0",description:"JSON5"},{value:"json-stringify",since:"1.13.0",description:"JSON.stringify"},{value:"graphql",since:"1.5.0",description:"GraphQL"},{value:"markdown",since:"1.8.0",description:"Markdown"},{value:"mdx",since:"1.15.0",description:"MDX"},{value:"vue",since:"1.10.0",description:"Vue"},{value:"yaml",since:"1.14.0",description:"YAML"},{value:"glimmer",since:"2.3.0",description:"Ember / Handlebars"},{value:"html",since:"1.15.0",description:"HTML"},{value:"angular",since:"1.15.0",description:"Angular"},{value:"lwc",since:"1.17.0",description:"Lightning Web Components"}]},plugins:{since:"1.10.0",type:"path",array:!0,default:[{value:[]}],category:i,description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:l=>typeof l=="string"||typeof l=="object",cliName:"plugin",cliCategory:t},pluginSearchDirs:{since:"1.13.0",type:"path",array:!0,default:[{value:[]}],category:i,description:u` + Custom directory that contains prettier plugins in node_modules subdirectory. + Overrides default behavior when plugins are searched relatively to the location of Prettier. + Multiple values are accepted. + `,exception:l=>typeof l=="string"||typeof l=="object",cliName:"plugin-search-dir",cliCategory:t},printWidth:{since:"0.0.0",category:i,type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},rangeEnd:{since:"1.4.0",category:D,type:"int",default:Number.POSITIVE_INFINITY,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:u` + Format code ending at a given character offset (exclusive). + The range will extend forwards to the end of the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:a},rangeStart:{since:"1.4.0",category:D,type:"int",default:0,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:u` + Format code starting at a given character offset. + The range will extend backwards to the start of the first line containing the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:a},requirePragma:{since:"1.7.0",category:D,type:"boolean",default:!1,description:u` + Require either '@prettier' or '@format' to be present in the file's first docblock comment + in order for it to be formatted. + `,cliCategory:s},tabWidth:{type:"int",category:i,default:2,description:"Number of spaces per indentation level.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},useTabs:{since:"1.0.0",category:i,type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{since:"2.1.0",category:i,type:"choice",default:[{since:"2.1.0",value:"auto"}],description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};r.exports={CATEGORY_CONFIG:t,CATEGORY_EDITOR:a,CATEGORY_FORMAT:n,CATEGORY_OTHER:s,CATEGORY_OUTPUT:c,CATEGORY_GLOBAL:i,CATEGORY_SPECIAL:D,options:o}}}),A2=S({"src/main/support.js"(e,r){"use strict";I();var u={compare:Cu(),lt:v2(),gte:m2()},t=E2(),a=C2().version,n=F2().options;function s(){let{plugins:i=[],showUnreleased:D=!1,showDeprecated:o=!1,showInternal:l=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},d=a.split("-",1)[0],p=i.flatMap(f=>f.languages||[]).filter(F),g=t(Object.assign({},...i.map(f=>{let{options:x}=f;return x}),n),"name").filter(f=>F(f)&&E(f)).sort((f,x)=>f.name===x.name?0:f.name{f=Object.assign({},f),Array.isArray(f.default)&&(f.default=f.default.length===1?f.default[0].value:f.default.filter(F).sort((v,h)=>u.compare(h.since,v.since))[0].value),Array.isArray(f.choices)&&(f.choices=f.choices.filter(v=>F(v)&&E(v)),f.name==="parser"&&c(f,p,i));let x=Object.fromEntries(i.filter(v=>v.defaultOptions&&v.defaultOptions[f.name]!==void 0).map(v=>[v.name,v.defaultOptions[f.name]]));return Object.assign(Object.assign({},f),{},{pluginDefaults:x})});return{languages:p,options:g};function F(f){return D||!("since"in f)||f.since&&u.gte(d,f.since)}function E(f){return o||!("deprecated"in f)||f.deprecated&&u.lt(d,f.deprecated)}function b(f){if(l)return f;let{cliName:x,cliCategory:v,cliDescription:h}=f;return Ol(f,_l)}}function c(i,D,o){let l=new Set(i.choices.map(d=>d.value));for(let d of D)if(d.parsers){for(let p of d.parsers)if(!l.has(p)){l.add(p);let g=o.find(E=>E.parsers&&E.parsers[p]),F=d.name;g&&g.name&&(F+=` (plugin: ${g.name})`),i.choices.push({value:p,description:F})}}}r.exports={getSupportInfo:s}}}),x2=S({"src/utils/is-non-empty-array.js"(e,r){"use strict";I();function u(t){return Array.isArray(t)&&t.length>0}r.exports=u}});function b2(){let{onlyFirst:e=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=["[\\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(r,e?void 0:"g")}var y2=je({"node_modules/strip-ansi/node_modules/ansi-regex/index.js"(){I()}});function w2(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(b2(),"")}var B2=je({"node_modules/strip-ansi/index.js"(){I(),y2()}});function k2(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var q2=je({"node_modules/is-fullwidth-code-point/index.js"(){I()}}),_2=S({"node_modules/emoji-regex/index.js"(e,r){"use strict";I(),r.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\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])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\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\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\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-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*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\u26A7\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-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\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[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}}}),ta={};Pi(ta,{default:()=>O2});function O2(e){if(typeof e!="string"||e.length===0||(e=w2(e),e.length===0))return 0;e=e.replace((0,na.default)()," ");let r=0;for(let u=0;u=127&&t<=159||t>=768&&t<=879||(t>65535&&u++,r+=k2(t)?2:1)}return r}var na,I2=je({"node_modules/string-width/index.js"(){I(),B2(),q2(),na=Rl(_2())}}),S2=S({"src/utils/get-string-width.js"(e,r){"use strict";I();var u=(I2(),zi(ta)).default,t=/[^\x20-\x7F]/;function a(n){return n?t.test(n)?u(n):n.length:0}r.exports=a}}),gu=S({"src/utils/text/skip.js"(e,r){"use strict";I();function u(c){return(i,D,o)=>{let l=o&&o.backwards;if(D===!1)return!1;let{length:d}=i,p=D;for(;p>=0&&pk[k.length-2];function E(k){return(y,_,N)=>{let V=N&&N.backwards;if(_===!1)return!1;let{length:W}=y,K=_;for(;K>=0&&K2&&arguments[2]!==void 0?arguments[2]:{},N=i(k,_.backwards?y-1:y,_),V=p(k,N,_);return N!==V}function f(k,y,_){for(let N=y;N<_;++N)if(k.charAt(N)===` +`)return!0;return!1}function x(k,y,_){let N=_(y)-1;N=i(k,N,{backwards:!0}),N=p(k,N,{backwards:!0}),N=i(k,N,{backwards:!0});let V=p(k,N,{backwards:!0});return N!==V}function v(k,y){let _=null,N=y;for(;N!==_;)_=N,N=D(k,N),N=l(k,N),N=i(k,N);return N=d(k,N),N=p(k,N),N!==!1&&b(k,N)}function h(k,y,_){return v(k,_(y))}function m(k,y,_){return g(k,_(y))}function C(k,y,_){return k.charAt(m(k,y,_))}function w(k,y){let _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return i(k,_.backwards?y-1:y,_)!==y}function q(k,y){let _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,N=0;for(let V=_;VY?W:V}return K}function O(k,y){let _=k.slice(1,-1),N=y.parser==="json"||y.parser==="json5"&&y.quoteProps==="preserve"&&!y.singleQuote?'"':y.__isInHtmlAttribute?"'":B(_,y.singleQuote?"'":'"').quote;return T(_,N,!(y.parser==="css"||y.parser==="less"||y.parser==="scss"||y.__embeddedInHtml))}function T(k,y,_){let N=y==='"'?"'":'"',V=/\\(.)|(["'])/gs,W=k.replace(V,(K,ee,Y)=>ee===N?ee:Y===y?"\\"+Y:Y||(_&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(ee)?ee:"\\"+ee));return y+W+y}function P(k){return k.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(\d)/,"$1$2$3").replace(/^([+-]?[\d.]+)e[+-]?0+$/,"$1").replace(/^([+-])?\./,"$10.").replace(/(\.\d+?)0+(?=e|$)/,"$1").replace(/\.(?=e|$)/,"")}function A(k,y){let _=k.match(new RegExp(`(${u(y)})+`,"g"));return _===null?0:_.reduce((N,V)=>Math.max(N,V.length/y.length),0)}function j(k,y){let _=k.match(new RegExp(`(${u(y)})+`,"g"));if(_===null)return 0;let N=new Map,V=0;for(let W of _){let K=W.length/y.length;N.set(K,!0),K>V&&(V=K)}for(let W=1;W{let{name:W}=V;return W.toLowerCase()===k})||_.find(V=>{let{aliases:W}=V;return Array.isArray(W)&&W.includes(k)})||_.find(V=>{let{extensions:W}=V;return Array.isArray(W)&&W.includes(`.${k}`)});return N&&N.parsers[0]}function z(k){return k&&k.type==="front-matter"}function M(k){let y=new WeakMap;return function(_){return y.has(_)||y.set(_,Symbol(k)),y.get(_)}}function U(k){let y=k.type||k.kind||"(unknown type)",_=String(k.name||k.id&&(typeof k.id=="object"?k.id.name:k.id)||k.key&&(typeof k.key=="object"?k.key.name:k.key)||k.value&&(typeof k.value=="object"?"":String(k.value))||k.operator||"");return _.length>20&&(_=_.slice(0,19)+"\u2026"),y+(_?" "+_:"")}r.exports={inferParserByLanguage:J,getStringWidth:s,getMaxContinuousCount:A,getMinNotPresentContinuousCount:j,getPenultimate:F,getLast:t,getNextNonSpaceNonCommentCharacterIndexWithStartIndex:g,getNextNonSpaceNonCommentCharacterIndex:m,getNextNonSpaceNonCommentCharacter:C,skip:E,skipWhitespace:c,skipSpaces:i,skipToLineEnd:D,skipEverythingButNewLine:o,skipInlineComment:l,skipTrailingComment:d,skipNewline:p,isNextLineEmptyAfterIndex:v,isNextLineEmpty:h,isPreviousLineEmpty:x,hasNewline:b,hasNewlineInRange:f,hasSpaces:w,getAlignmentSize:q,getIndentSize:L,getPreferredQuote:B,printString:O,printNumber:P,makeString:T,addLeadingComment:G,addDanglingComment:X,addTrailingComment:R,isFrontMatterNode:z,isNonEmptyArray:n,createGroupIdMapper:M}}}),L2=S({"src/language-markdown/constants.evaluate.js"(e,r){r.exports={cjkPattern:"(?:[\\u02ea-\\u02eb\\u1100-\\u11ff\\u2e80-\\u2e99\\u2e9b-\\u2ef3\\u2f00-\\u2fd5\\u2ff0-\\u303f\\u3041-\\u3096\\u3099-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312f\\u3131-\\u318e\\u3190-\\u3191\\u3196-\\u31ba\\u31c0-\\u31e3\\u31f0-\\u321e\\u322a-\\u3247\\u3260-\\u327e\\u328a-\\u32b0\\u32c0-\\u32cb\\u32d0-\\u3370\\u337b-\\u337f\\u33e0-\\u33fe\\u3400-\\u4db5\\u4e00-\\u9fef\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufe10-\\ufe1f\\ufe30-\\ufe6f\\uff00-\\uffef]|[\\ud840-\\ud868\\ud86a-\\ud86c\\ud86f-\\ud872\\ud874-\\ud879][\\udc00-\\udfff]|\\ud82c[\\udc00-\\udd1e\\udd50-\\udd52\\udd64-\\udd67]|\\ud83c[\\ude00\\ude50-\\ude51]|\\ud869[\\udc00-\\uded6\\udf00-\\udfff]|\\ud86d[\\udc00-\\udf34\\udf40-\\udfff]|\\ud86e[\\udc00-\\udc1d\\udc20-\\udfff]|\\ud873[\\udc00-\\udea1\\udeb0-\\udfff]|\\ud87a[\\udc00-\\udfe0]|\\ud87e[\\udc00-\\ude1d])(?:[\\ufe00-\\ufe0f]|\\udb40[\\udd00-\\uddef])?",kPattern:"[\\u1100-\\u11ff\\u3001-\\u3003\\u3008-\\u3011\\u3013-\\u301f\\u302e-\\u3030\\u3037\\u30fb\\u3131-\\u318e\\u3200-\\u321e\\u3260-\\u327e\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\ufe45-\\ufe46\\uff61-\\uff65\\uffa0-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc]",punctuationPattern:"[\\u0021-\\u002f\\u003a-\\u0040\\u005b-\\u0060\\u007b-\\u007e\\u00a1\\u00a7\\u00ab\\u00b6-\\u00b7\\u00bb\\u00bf\\u037e\\u0387\\u055a-\\u055f\\u0589-\\u058a\\u05be\\u05c0\\u05c3\\u05c6\\u05f3-\\u05f4\\u0609-\\u060a\\u060c-\\u060d\\u061b\\u061e-\\u061f\\u066a-\\u066d\\u06d4\\u0700-\\u070d\\u07f7-\\u07f9\\u0830-\\u083e\\u085e\\u0964-\\u0965\\u0970\\u09fd\\u0a76\\u0af0\\u0c77\\u0c84\\u0df4\\u0e4f\\u0e5a-\\u0e5b\\u0f04-\\u0f12\\u0f14\\u0f3a-\\u0f3d\\u0f85\\u0fd0-\\u0fd4\\u0fd9-\\u0fda\\u104a-\\u104f\\u10fb\\u1360-\\u1368\\u1400\\u166e\\u169b-\\u169c\\u16eb-\\u16ed\\u1735-\\u1736\\u17d4-\\u17d6\\u17d8-\\u17da\\u1800-\\u180a\\u1944-\\u1945\\u1a1e-\\u1a1f\\u1aa0-\\u1aa6\\u1aa8-\\u1aad\\u1b5a-\\u1b60\\u1bfc-\\u1bff\\u1c3b-\\u1c3f\\u1c7e-\\u1c7f\\u1cc0-\\u1cc7\\u1cd3\\u2010-\\u2027\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205e\\u207d-\\u207e\\u208d-\\u208e\\u2308-\\u230b\\u2329-\\u232a\\u2768-\\u2775\\u27c5-\\u27c6\\u27e6-\\u27ef\\u2983-\\u2998\\u29d8-\\u29db\\u29fc-\\u29fd\\u2cf9-\\u2cfc\\u2cfe-\\u2cff\\u2d70\\u2e00-\\u2e2e\\u2e30-\\u2e4f\\u3001-\\u3003\\u3008-\\u3011\\u3014-\\u301f\\u3030\\u303d\\u30a0\\u30fb\\ua4fe-\\ua4ff\\ua60d-\\ua60f\\ua673\\ua67e\\ua6f2-\\ua6f7\\ua874-\\ua877\\ua8ce-\\ua8cf\\ua8f8-\\ua8fa\\ua8fc\\ua92e-\\ua92f\\ua95f\\ua9c1-\\ua9cd\\ua9de-\\ua9df\\uaa5c-\\uaa5f\\uaade-\\uaadf\\uaaf0-\\uaaf1\\uabeb\\ufd3e-\\ufd3f\\ufe10-\\ufe19\\ufe30-\\ufe52\\ufe54-\\ufe61\\ufe63\\ufe68\\ufe6a-\\ufe6b\\uff01-\\uff03\\uff05-\\uff0a\\uff0c-\\uff0f\\uff1a-\\uff1b\\uff1f-\\uff20\\uff3b-\\uff3d\\uff3f\\uff5b\\uff5d\\uff5f-\\uff65]|\\ud800[\\udd00-\\udd02\\udf9f\\udfd0]|\\ud801[\\udd6f]|\\ud802[\\udc57\\udd1f\\udd3f\\ude50-\\ude58\\ude7f\\udef0-\\udef6\\udf39-\\udf3f\\udf99-\\udf9c]|\\ud803[\\udf55-\\udf59]|\\ud804[\\udc47-\\udc4d\\udcbb-\\udcbc\\udcbe-\\udcc1\\udd40-\\udd43\\udd74-\\udd75\\uddc5-\\uddc8\\uddcd\\udddb\\udddd-\\udddf\\ude38-\\ude3d\\udea9]|\\ud805[\\udc4b-\\udc4f\\udc5b\\udc5d\\udcc6\\uddc1-\\uddd7\\ude41-\\ude43\\ude60-\\ude6c\\udf3c-\\udf3e]|\\ud806[\\udc3b\\udde2\\ude3f-\\ude46\\ude9a-\\ude9c\\ude9e-\\udea2]|\\ud807[\\udc41-\\udc45\\udc70-\\udc71\\udef7-\\udef8\\udfff]|\\ud809[\\udc70-\\udc74]|\\ud81a[\\ude6e-\\ude6f\\udef5\\udf37-\\udf3b\\udf44]|\\ud81b[\\ude97-\\ude9a\\udfe2]|\\ud82f[\\udc9f]|\\ud836[\\ude87-\\ude8b]|\\ud83a[\\udd5e-\\udd5f]"}}}),R2=S({"src/language-markdown/utils.js"(e,r){"use strict";I();var{getLast:u}=N2(),{locStart:t,locEnd:a}=Zi(),{cjkPattern:n,kPattern:s,punctuationPattern:c}=L2(),i=["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"],D=[...i,"tableCell","paragraph","heading"],o=new RegExp(s),l=new RegExp(c);function d(f,x){let v="non-cjk",h="cj-letter",m="k-letter",C="cjk-punctuation",w=[],q=(x.proseWrap==="preserve"?f:f.replace(new RegExp(`(${n}) +(${n})`,"g"),"$1$2")).split(/([\t\n ]+)/);for(let[B,O]of q.entries()){if(B%2===1){w.push({type:"whitespace",value:/\n/.test(O)?` +`:" "});continue}if((B===0||B===q.length-1)&&O==="")continue;let T=O.split(new RegExp(`(${n})`));for(let[P,A]of T.entries())if(!((P===0||P===T.length-1)&&A==="")){if(P%2===0){A!==""&&L({type:"word",value:A,kind:v,hasLeadingPunctuation:l.test(A[0]),hasTrailingPunctuation:l.test(u(A))});continue}L(l.test(A)?{type:"word",value:A,kind:C,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0}:{type:"word",value:A,kind:o.test(A)?m:h,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return w;function L(B){let O=u(w);O&&O.type==="word"&&(O.kind===v&&B.kind===h&&!O.hasTrailingPunctuation||O.kind===h&&B.kind===v&&!B.hasLeadingPunctuation?w.push({type:"whitespace",value:" "}):!T(v,C)&&![O.value,B.value].some(P=>/\u3000/.test(P))&&w.push({type:"whitespace",value:""})),w.push(B);function T(P,A){return O.kind===P&&B.kind===A||O.kind===A&&B.kind===P}}}function p(f,x){let[,v,h,m]=x.slice(f.position.start.offset,f.position.end.offset).match(/^\s*(\d+)(\.|\))(\s*)/);return{numberText:v,marker:h,leadingSpaces:m}}function g(f,x){if(!f.ordered||f.children.length<2)return!1;let v=Number(p(f.children[0],x.originalText).numberText),h=Number(p(f.children[1],x.originalText).numberText);if(v===0&&f.children.length>2){let m=Number(p(f.children[2],x.originalText).numberText);return h===1&&m===1}return h===1}function F(f,x){let{value:v}=f;return f.position.end.offset===x.length&&v.endsWith(` +`)&&x.endsWith(` +`)?v.slice(0,-1):v}function E(f,x){return function v(h,m,C){let w=Object.assign({},x(h,m,C));return w.children&&(w.children=w.children.map((q,L)=>v(q,L,[w,...C]))),w}(f,null,[])}function b(f){if((f==null?void 0:f.type)!=="link"||f.children.length!==1)return!1;let[x]=f.children;return t(f)===t(x)&&a(f)===a(x)}r.exports={mapAst:E,splitText:d,punctuationPattern:c,getFencedCodeBlockValue:F,getOrderedListItemInfo:p,hasGitDiffFriendlyOrderedList:g,INLINE_NODE_TYPES:i,INLINE_NODE_WRAPPER_TYPES:D,isAutolink:b}}}),j2=S({"src/language-markdown/unified-plugins/html-to-jsx.js"(e,r){"use strict";I();var u=Qi(),{mapAst:t,INLINE_NODE_WRAPPER_TYPES:a}=R2();function n(){return s=>t(s,(c,i,D)=>{let[o]=D;return c.type!=="html"||u.COMMENT_REGEX.test(c.value)||a.includes(o.type)?c:Object.assign(Object.assign({},c),{},{type:"jsx"})})}r.exports=n}}),P2=S({"src/language-markdown/unified-plugins/front-matter.js"(e,r){"use strict";I();var u=Ji();function t(){let a=this.Parser.prototype;a.blockMethods=["frontMatter",...a.blockMethods],a.blockTokenizers.frontMatter=n;function n(s,c){let i=u(c);if(i.frontMatter)return s(i.frontMatter.raw)(i.frontMatter)}n.onlyAtStart=!0}r.exports=t}}),M2=S({"src/language-markdown/unified-plugins/liquid.js"(e,r){"use strict";I();function u(){let t=this.Parser.prototype,a=t.inlineMethods;a.splice(a.indexOf("text"),0,"liquid"),t.inlineTokenizers.liquid=n;function n(s,c){let i=c.match(/^({%.*?%}|{{.*?}})/s);if(i)return s(i[0])({type:"liquidNode",value:i[0]})}n.locator=function(s,c){return s.indexOf("{",c)}}r.exports=u}}),z2=S({"src/language-markdown/unified-plugins/wiki-link.js"(e,r){"use strict";I();function u(){let t="wikiLink",a=/^\[\[(?.+?)]]/s,n=this.Parser.prototype,s=n.inlineMethods;s.splice(s.indexOf("link"),0,t),n.inlineTokenizers.wikiLink=c;function c(i,D){let o=a.exec(D);if(o){let l=o.groups.linkContents.trim();return i(o[0])({type:t,value:l})}}c.locator=function(i,D){return i.indexOf("[",D)}}r.exports=u}}),$2=S({"src/language-markdown/unified-plugins/loose-items.js"(e,r){"use strict";I();function u(){let t=this.Parser.prototype,a=t.blockTokenizers.list;function n(s,c,i){return c.type==="listItem"&&(c.loose=c.spread||s.charAt(s.length-1)===` +`,c.loose&&(i.loose=!0)),c}t.blockTokenizers.list=function(c,i,D){function o(l){let d=c(l);function p(g,F){return d(n(l,g,F),F)}return p.reset=function(g,F){return d.reset(n(l,g,F),F)},p}return o.now=c.now,a.call(this,o,i,D)}}r.exports=u}});I();var U2=GD(),G2=t2(),V2=a2(),H2=o2(),X2=s2(),{locStart:W2,locEnd:K2}=Zi(),Li=Qi(),Y2=j2(),J2=P2(),Z2=M2(),Q2=z2(),ef=$2();function sa(e){let{isMDX:r}=e;return u=>{let t=G2().use(U2,Object.assign({commonmark:!0},r&&{blocks:[Li.BLOCKS_REGEX]})).use(H2).use(J2).use(V2).use(r?Li.esSyntax:Ri).use(Z2).use(r?Y2:Ri).use(Q2).use(ef);return t.runSync(t.parse(u))}}function Ri(e){return e}var ca={astFormat:"mdast",hasPragma:X2.hasPragma,locStart:W2,locEnd:K2},ji=Object.assign(Object.assign({},ca),{},{parse:sa({isMDX:!1})}),rf=Object.assign(Object.assign({},ca),{},{parse:sa({isMDX:!0})});la.exports={parsers:{remark:ji,markdown:ji,mdx:rf}}});return uf();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-meriyah.js b/node_modules/prettier/parser-meriyah.js new file mode 100644 index 0000000..ece1f8d --- /dev/null +++ b/node_modules/prettier/parser-meriyah.js @@ -0,0 +1,19 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.meriyah=e()}})(function(){"use strict";var B=(a,g)=>()=>(g||a((g={exports:{}}).exports,g),g.exports);var k2=B((X3,Fu)=>{var A1=function(a){return a&&a.Math==Math&&a};Fu.exports=A1(typeof globalThis=="object"&&globalThis)||A1(typeof window=="object"&&window)||A1(typeof self=="object"&&self)||A1(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var D2=B((z3,Lu)=>{Lu.exports=function(a){try{return!!a()}catch{return!0}}});var S2=B((W3,Ou)=>{var uo=D2();Ou.exports=!uo(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var ue=B((K3,Tu)=>{var io=D2();Tu.exports=!io(function(){var a=function(){}.bind();return typeof a!="function"||a.hasOwnProperty("prototype")})});var E1=B((Y3,Iu)=>{var no=ue(),P1=Function.prototype.call;Iu.exports=no?P1.bind(P1):function(){return P1.apply(P1,arguments)}});var ju=B(Nu=>{"use strict";var Ru={}.propertyIsEnumerable,Vu=Object.getOwnPropertyDescriptor,to=Vu&&!Ru.call({1:2},1);Nu.f=to?function(g){var b=Vu(this,g);return!!b&&b.enumerable}:Ru});var ie=B((Q3,_u)=>{_u.exports=function(a,g){return{enumerable:!(a&1),configurable:!(a&2),writable:!(a&4),value:g}}});var F2=B((G3,Ju)=>{var Mu=ue(),Uu=Function.prototype,ne=Uu.call,oo=Mu&&Uu.bind.bind(ne,ne);Ju.exports=Mu?oo:function(a){return function(){return ne.apply(a,arguments)}}});var Xu=B((x3,Hu)=>{var $u=F2(),lo=$u({}.toString),fo=$u("".slice);Hu.exports=function(a){return fo(lo(a),8,-1)}});var Wu=B((p3,zu)=>{var co=F2(),so=D2(),ao=Xu(),te=Object,go=co("".split);zu.exports=so(function(){return!te("z").propertyIsEnumerable(0)})?function(a){return ao(a)=="String"?go(a,""):te(a)}:te});var oe=B((e6,Ku)=>{Ku.exports=function(a){return a==null}});var le=B((u6,Yu)=>{var ho=oe(),mo=TypeError;Yu.exports=function(a){if(ho(a))throw mo("Can't call method on "+a);return a}});var C1=B((i6,Zu)=>{var bo=Wu(),ko=le();Zu.exports=function(a){return bo(ko(a))}});var ce=B((n6,Qu)=>{var fe=typeof document=="object"&&document.all,ro=typeof fe>"u"&&fe!==void 0;Qu.exports={all:fe,IS_HTMLDDA:ro}});var A2=B((t6,xu)=>{var Gu=ce(),vo=Gu.all;xu.exports=Gu.IS_HTMLDDA?function(a){return typeof a=="function"||a===vo}:function(a){return typeof a=="function"}});var Z2=B((o6,ui)=>{var pu=A2(),ei=ce(),yo=ei.all;ui.exports=ei.IS_HTMLDDA?function(a){return typeof a=="object"?a!==null:pu(a)||a===yo}:function(a){return typeof a=="object"?a!==null:pu(a)}});var D1=B((l6,ii)=>{var se=k2(),Ao=A2(),Po=function(a){return Ao(a)?a:void 0};ii.exports=function(a,g){return arguments.length<2?Po(se[a]):se[a]&&se[a][g]}});var ti=B((f6,ni)=>{var Eo=F2();ni.exports=Eo({}.isPrototypeOf)});var li=B((c6,oi)=>{var Co=D1();oi.exports=Co("navigator","userAgent")||""});var hi=B((s6,gi)=>{var di=k2(),ae=li(),fi=di.process,ci=di.Deno,si=fi&&fi.versions||ci&&ci.version,ai=si&&si.v8,P2,w1;ai&&(P2=ai.split("."),w1=P2[0]>0&&P2[0]<4?1:+(P2[0]+P2[1]));!w1&&ae&&(P2=ae.match(/Edge\/(\d+)/),(!P2||P2[1]>=74)&&(P2=ae.match(/Chrome\/(\d+)/),P2&&(w1=+P2[1])));gi.exports=w1});var de=B((a6,bi)=>{var mi=hi(),Do=D2();bi.exports=!!Object.getOwnPropertySymbols&&!Do(function(){var a=Symbol();return!String(a)||!(Object(a)instanceof Symbol)||!Symbol.sham&&mi&&mi<41})});var ge=B((d6,ki)=>{var wo=de();ki.exports=wo&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var he=B((g6,ri)=>{var qo=D1(),Bo=A2(),So=ti(),Fo=ge(),Lo=Object;ri.exports=Fo?function(a){return typeof a=="symbol"}:function(a){var g=qo("Symbol");return Bo(g)&&So(g.prototype,Lo(a))}});var yi=B((h6,vi)=>{var Oo=String;vi.exports=function(a){try{return Oo(a)}catch{return"Object"}}});var Pi=B((m6,Ai)=>{var To=A2(),Io=yi(),Ro=TypeError;Ai.exports=function(a){if(To(a))return a;throw Ro(Io(a)+" is not a function")}});var Ci=B((b6,Ei)=>{var Vo=Pi(),No=oe();Ei.exports=function(a,g){var b=a[g];return No(b)?void 0:Vo(b)}});var wi=B((k6,Di)=>{var me=E1(),be=A2(),ke=Z2(),jo=TypeError;Di.exports=function(a,g){var b,f;if(g==="string"&&be(b=a.toString)&&!ke(f=me(b,a))||be(b=a.valueOf)&&!ke(f=me(b,a))||g!=="string"&&be(b=a.toString)&&!ke(f=me(b,a)))return f;throw jo("Can't convert object to primitive value")}});var Bi=B((r6,qi)=>{qi.exports=!1});var q1=B((v6,Fi)=>{var Si=k2(),_o=Object.defineProperty;Fi.exports=function(a,g){try{_o(Si,a,{value:g,configurable:!0,writable:!0})}catch{Si[a]=g}return g}});var B1=B((y6,Oi)=>{var Mo=k2(),Uo=q1(),Li="__core-js_shared__",Jo=Mo[Li]||Uo(Li,{});Oi.exports=Jo});var re=B((A6,Ii)=>{var $o=Bi(),Ti=B1();(Ii.exports=function(a,g){return Ti[a]||(Ti[a]=g!==void 0?g:{})})("versions",[]).push({version:"3.26.1",mode:$o?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var Vi=B((P6,Ri)=>{var Ho=le(),Xo=Object;Ri.exports=function(a){return Xo(Ho(a))}});var R2=B((E6,Ni)=>{var zo=F2(),Wo=Vi(),Ko=zo({}.hasOwnProperty);Ni.exports=Object.hasOwn||function(g,b){return Ko(Wo(g),b)}});var ve=B((C6,ji)=>{var Yo=F2(),Zo=0,Qo=Math.random(),Go=Yo(1 .toString);ji.exports=function(a){return"Symbol("+(a===void 0?"":a)+")_"+Go(++Zo+Qo,36)}});var Hi=B((D6,$i)=>{var xo=k2(),po=re(),_i=R2(),el=ve(),Mi=de(),Ji=ge(),Q2=po("wks"),$2=xo.Symbol,Ui=$2&&$2.for,ul=Ji?$2:$2&&$2.withoutSetter||el;$i.exports=function(a){if(!_i(Q2,a)||!(Mi||typeof Q2[a]=="string")){var g="Symbol."+a;Mi&&_i($2,a)?Q2[a]=$2[a]:Ji&&Ui?Q2[a]=Ui(g):Q2[a]=ul(g)}return Q2[a]}});var Ki=B((w6,Wi)=>{var il=E1(),Xi=Z2(),zi=he(),nl=Ci(),tl=wi(),ol=Hi(),ll=TypeError,fl=ol("toPrimitive");Wi.exports=function(a,g){if(!Xi(a)||zi(a))return a;var b=nl(a,fl),f;if(b){if(g===void 0&&(g="default"),f=il(b,a,g),!Xi(f)||zi(f))return f;throw ll("Can't convert object to primitive value")}return g===void 0&&(g="number"),tl(a,g)}});var ye=B((q6,Yi)=>{var cl=Ki(),sl=he();Yi.exports=function(a){var g=cl(a,"string");return sl(g)?g:g+""}});var Gi=B((B6,Qi)=>{var al=k2(),Zi=Z2(),Ae=al.document,dl=Zi(Ae)&&Zi(Ae.createElement);Qi.exports=function(a){return dl?Ae.createElement(a):{}}});var Pe=B((S6,xi)=>{var gl=S2(),hl=D2(),ml=Gi();xi.exports=!gl&&!hl(function(){return Object.defineProperty(ml("div"),"a",{get:function(){return 7}}).a!=7})});var Ee=B(en=>{var bl=S2(),kl=E1(),rl=ju(),vl=ie(),yl=C1(),Al=ye(),Pl=R2(),El=Pe(),pi=Object.getOwnPropertyDescriptor;en.f=bl?pi:function(g,b){if(g=yl(g),b=Al(b),El)try{return pi(g,b)}catch{}if(Pl(g,b))return vl(!kl(rl.f,g,b),g[b])}});var nn=B((L6,un)=>{var Cl=S2(),Dl=D2();un.exports=Cl&&Dl(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var S1=B((O6,tn)=>{var wl=Z2(),ql=String,Bl=TypeError;tn.exports=function(a){if(wl(a))return a;throw Bl(ql(a)+" is not an object")}});var u1=B(ln=>{var Sl=S2(),Fl=Pe(),Ll=nn(),F1=S1(),on=ye(),Ol=TypeError,Ce=Object.defineProperty,Tl=Object.getOwnPropertyDescriptor,De="enumerable",we="configurable",qe="writable";ln.f=Sl?Ll?function(g,b,f){if(F1(g),b=on(b),F1(f),typeof g=="function"&&b==="prototype"&&"value"in f&&qe in f&&!f[qe]){var A=Tl(g,b);A&&A[qe]&&(g[b]=f.value,f={configurable:we in f?f[we]:A[we],enumerable:De in f?f[De]:A[De],writable:!1})}return Ce(g,b,f)}:Ce:function(g,b,f){if(F1(g),b=on(b),F1(f),Fl)try{return Ce(g,b,f)}catch{}if("get"in f||"set"in f)throw Ol("Accessors not supported");return"value"in f&&(g[b]=f.value),g}});var Be=B((I6,fn)=>{var Il=S2(),Rl=u1(),Vl=ie();fn.exports=Il?function(a,g,b){return Rl.f(a,g,Vl(1,b))}:function(a,g,b){return a[g]=b,a}});var an=B((R6,sn)=>{var Se=S2(),Nl=R2(),cn=Function.prototype,jl=Se&&Object.getOwnPropertyDescriptor,Fe=Nl(cn,"name"),_l=Fe&&function(){}.name==="something",Ml=Fe&&(!Se||Se&&jl(cn,"name").configurable);sn.exports={EXISTS:Fe,PROPER:_l,CONFIGURABLE:Ml}});var gn=B((V6,dn)=>{var Ul=F2(),Jl=A2(),Le=B1(),$l=Ul(Function.toString);Jl(Le.inspectSource)||(Le.inspectSource=function(a){return $l(a)});dn.exports=Le.inspectSource});var bn=B((N6,mn)=>{var Hl=k2(),Xl=A2(),hn=Hl.WeakMap;mn.exports=Xl(hn)&&/native code/.test(String(hn))});var vn=B((j6,rn)=>{var zl=re(),Wl=ve(),kn=zl("keys");rn.exports=function(a){return kn[a]||(kn[a]=Wl(a))}});var Oe=B((_6,yn)=>{yn.exports={}});var Cn=B((M6,En)=>{var Kl=bn(),Pn=k2(),Yl=Z2(),Zl=Be(),Te=R2(),Ie=B1(),Ql=vn(),Gl=Oe(),An="Object already initialized",Re=Pn.TypeError,xl=Pn.WeakMap,L1,i1,O1,pl=function(a){return O1(a)?i1(a):L1(a,{})},e4=function(a){return function(g){var b;if(!Yl(g)||(b=i1(g)).type!==a)throw Re("Incompatible receiver, "+a+" required");return b}};Kl||Ie.state?(E2=Ie.state||(Ie.state=new xl),E2.get=E2.get,E2.has=E2.has,E2.set=E2.set,L1=function(a,g){if(E2.has(a))throw Re(An);return g.facade=a,E2.set(a,g),g},i1=function(a){return E2.get(a)||{}},O1=function(a){return E2.has(a)}):(H2=Ql("state"),Gl[H2]=!0,L1=function(a,g){if(Te(a,H2))throw Re(An);return g.facade=a,Zl(a,H2,g),g},i1=function(a){return Te(a,H2)?a[H2]:{}},O1=function(a){return Te(a,H2)});var E2,H2;En.exports={set:L1,get:i1,has:O1,enforce:pl,getterFor:e4}});var Ne=B((U6,wn)=>{var u4=D2(),i4=A2(),T1=R2(),Ve=S2(),n4=an().CONFIGURABLE,t4=gn(),Dn=Cn(),o4=Dn.enforce,l4=Dn.get,I1=Object.defineProperty,f4=Ve&&!u4(function(){return I1(function(){},"length",{value:8}).length!==8}),c4=String(String).split("String"),s4=wn.exports=function(a,g,b){String(g).slice(0,7)==="Symbol("&&(g="["+String(g).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),b&&b.getter&&(g="get "+g),b&&b.setter&&(g="set "+g),(!T1(a,"name")||n4&&a.name!==g)&&(Ve?I1(a,"name",{value:g,configurable:!0}):a.name=g),f4&&b&&T1(b,"arity")&&a.length!==b.arity&&I1(a,"length",{value:b.arity});try{b&&T1(b,"constructor")&&b.constructor?Ve&&I1(a,"prototype",{writable:!1}):a.prototype&&(a.prototype=void 0)}catch{}var f=o4(a);return T1(f,"source")||(f.source=c4.join(typeof g=="string"?g:"")),a};Function.prototype.toString=s4(function(){return i4(this)&&l4(this).source||t4(this)},"toString")});var Bn=B((J6,qn)=>{var a4=A2(),d4=u1(),g4=Ne(),h4=q1();qn.exports=function(a,g,b,f){f||(f={});var A=f.enumerable,L=f.name!==void 0?f.name:g;if(a4(b)&&g4(b,L,f),f.global)A?a[g]=b:h4(g,b);else{try{f.unsafe?a[g]&&(A=!0):delete a[g]}catch{}A?a[g]=b:d4.f(a,g,{value:b,enumerable:!1,configurable:!f.nonConfigurable,writable:!f.nonWritable})}return a}});var Fn=B(($6,Sn)=>{var m4=Math.ceil,b4=Math.floor;Sn.exports=Math.trunc||function(g){var b=+g;return(b>0?b4:m4)(b)}});var je=B((H6,Ln)=>{var k4=Fn();Ln.exports=function(a){var g=+a;return g!==g||g===0?0:k4(g)}});var Tn=B((X6,On)=>{var r4=je(),v4=Math.max,y4=Math.min;On.exports=function(a,g){var b=r4(a);return b<0?v4(b+g,0):y4(b,g)}});var Rn=B((z6,In)=>{var A4=je(),P4=Math.min;In.exports=function(a){return a>0?P4(A4(a),9007199254740991):0}});var Nn=B((W6,Vn)=>{var E4=Rn();Vn.exports=function(a){return E4(a.length)}});var Mn=B((K6,_n)=>{var C4=C1(),D4=Tn(),w4=Nn(),jn=function(a){return function(g,b,f){var A=C4(g),L=w4(A),S=D4(f,L),V;if(a&&b!=b){for(;L>S;)if(V=A[S++],V!=V)return!0}else for(;L>S;S++)if((a||S in A)&&A[S]===b)return a||S||0;return!a&&-1}};_n.exports={includes:jn(!0),indexOf:jn(!1)}});var $n=B((Y6,Jn)=>{var q4=F2(),_e=R2(),B4=C1(),S4=Mn().indexOf,F4=Oe(),Un=q4([].push);Jn.exports=function(a,g){var b=B4(a),f=0,A=[],L;for(L in b)!_e(F4,L)&&_e(b,L)&&Un(A,L);for(;g.length>f;)_e(b,L=g[f++])&&(~S4(A,L)||Un(A,L));return A}});var Xn=B((Z6,Hn)=>{Hn.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var Wn=B(zn=>{var L4=$n(),O4=Xn(),T4=O4.concat("length","prototype");zn.f=Object.getOwnPropertyNames||function(g){return L4(g,T4)}});var Yn=B(Kn=>{Kn.f=Object.getOwnPropertySymbols});var Qn=B((x6,Zn)=>{var I4=D1(),R4=F2(),V4=Wn(),N4=Yn(),j4=S1(),_4=R4([].concat);Zn.exports=I4("Reflect","ownKeys")||function(g){var b=V4.f(j4(g)),f=N4.f;return f?_4(b,f(g)):b}});var pn=B((p6,xn)=>{var Gn=R2(),M4=Qn(),U4=Ee(),J4=u1();xn.exports=function(a,g,b){for(var f=M4(g),A=J4.f,L=U4.f,S=0;S{var $4=D2(),H4=A2(),X4=/#|\.prototype\./,n1=function(a,g){var b=W4[z4(a)];return b==Y4?!0:b==K4?!1:H4(g)?$4(g):!!g},z4=n1.normalize=function(a){return String(a).replace(X4,".").toLowerCase()},W4=n1.data={},K4=n1.NATIVE="N",Y4=n1.POLYFILL="P";e0.exports=n1});var n0=B((uf,i0)=>{var Me=k2(),Z4=Ee().f,Q4=Be(),G4=Bn(),x4=q1(),p4=pn(),e3=u0();i0.exports=function(a,g){var b=a.target,f=a.global,A=a.stat,L,S,V,r,X,Y;if(f?S=Me:A?S=Me[b]||x4(b,{}):S=(Me[b]||{}).prototype,S)for(V in g){if(X=g[V],a.dontCallGetSet?(Y=Z4(S,V),r=Y&&Y.value):r=S[V],L=e3(f?V:b+(A?".":"#")+V,a.forced),!L&&r!==void 0){if(typeof X==typeof r)continue;p4(X,r)}(a.sham||r&&r.sham)&&Q4(X,"sham",!0),G4(S,V,X,a)}}});var t0=B(()=>{var u3=n0(),Ue=k2();u3({global:!0,forced:Ue.globalThis!==Ue},{globalThis:Ue})});var o0=B(()=>{t0()});var c0=B((ff,f0)=>{var l0=Ne(),i3=u1();f0.exports=function(a,g,b){return b.get&&l0(b.get,g,{getter:!0}),b.set&&l0(b.set,g,{setter:!0}),i3.f(a,g,b)}});var a0=B((cf,s0)=>{"use strict";var n3=S1();s0.exports=function(){var a=n3(this),g="";return a.hasIndices&&(g+="d"),a.global&&(g+="g"),a.ignoreCase&&(g+="i"),a.multiline&&(g+="m"),a.dotAll&&(g+="s"),a.unicode&&(g+="u"),a.unicodeSets&&(g+="v"),a.sticky&&(g+="y"),g}});var h0=B(()=>{var t3=k2(),o3=S2(),l3=c0(),f3=a0(),c3=D2(),d0=t3.RegExp,g0=d0.prototype,s3=o3&&c3(function(){var a=!0;try{d0(".","d")}catch{a=!1}var g={},b="",f=a?"dgimsy":"gimsy",A=function(r,X){Object.defineProperty(g,r,{get:function(){return b+=X,!0}})},L={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};a&&(L.hasIndices="d");for(var S in L)A(S,L[S]);var V=Object.getOwnPropertyDescriptor(g0,"flags").get.call(g);return V!==f||b!==f});s3&&l3(g0,"flags",{configurable:!0,get:f3})});var $3=B((df,O0)=>{o0();h0();var Xe=Object.defineProperty,a3=Object.getOwnPropertyDescriptor,ze=Object.getOwnPropertyNames,d3=Object.prototype.hasOwnProperty,b0=(a,g)=>function(){return a&&(g=(0,a[ze(a)[0]])(a=0)),g},t2=(a,g)=>function(){return g||(0,a[ze(a)[0]])((g={exports:{}}).exports,g),g.exports},g3=(a,g)=>{for(var b in g)Xe(a,b,{get:g[b],enumerable:!0})},h3=(a,g,b,f)=>{if(g&&typeof g=="object"||typeof g=="function")for(let A of ze(g))!d3.call(a,A)&&A!==b&&Xe(a,A,{get:()=>g[A],enumerable:!(f=a3(g,A))||f.enumerable});return a},m3=a=>h3(Xe({},"__esModule",{value:!0}),a),n2=b0({""(){}}),k0=t2({"src/common/parser-create-error.js"(a,g){"use strict";n2();function b(f,A){let L=new SyntaxError(f+" ("+A.start.line+":"+A.start.column+")");return L.loc=A,L}g.exports=b}}),b3=t2({"src/utils/try-combinations.js"(a,g){"use strict";n2();function b(){let f;for(var A=arguments.length,L=new Array(A),S=0;SHe,arch:()=>k3,cpus:()=>D0,default:()=>F0,endianness:()=>v0,freemem:()=>E0,getNetworkInterfaces:()=>S0,hostname:()=>y0,loadavg:()=>A0,networkInterfaces:()=>B0,platform:()=>r3,release:()=>q0,tmpDir:()=>Je,tmpdir:()=>$e,totalmem:()=>C0,type:()=>w0,uptime:()=>P0});function v0(){if(typeof R1>"u"){var a=new ArrayBuffer(2),g=new Uint8Array(a),b=new Uint16Array(a);if(g[0]=1,g[1]=2,b[0]===258)R1="BE";else if(b[0]===513)R1="LE";else throw new Error("unable to figure out endianess")}return R1}function y0(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function A0(){return[]}function P0(){return 0}function E0(){return Number.MAX_VALUE}function C0(){return Number.MAX_VALUE}function D0(){return[]}function w0(){return"Browser"}function q0(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function B0(){}function S0(){}function k3(){return"javascript"}function r3(){return"browser"}function Je(){return"/tmp"}var R1,$e,He,F0,v3=b0({"node-modules-polyfills:os"(){n2(),$e=Je,He=` +`,F0={EOL:He,tmpdir:$e,tmpDir:Je,networkInterfaces:B0,getNetworkInterfaces:S0,release:q0,type:w0,cpus:D0,totalmem:C0,freemem:E0,uptime:P0,loadavg:A0,hostname:y0,endianness:v0}}}),y3=t2({"node-modules-polyfills-commonjs:os"(a,g){n2();var b=(v3(),m3(r0));if(b&&b.default){g.exports=b.default;for(let f in b)g.exports[f]=b[f]}else b&&(g.exports=b)}}),A3=t2({"node_modules/detect-newline/index.js"(a,g){"use strict";n2();var b=f=>{if(typeof f!="string")throw new TypeError("Expected a string");let A=f.match(/(?:\r?\n)/g)||[];if(A.length===0)return;let L=A.filter(V=>V===`\r +`).length,S=A.length-L;return L>S?`\r +`:` +`};g.exports=b,g.exports.graceful=f=>typeof f=="string"&&b(f)||` +`}}),P3=t2({"node_modules/jest-docblock/build/index.js"(a){"use strict";n2(),Object.defineProperty(a,"__esModule",{value:!0}),a.extract=T,a.parse=w2,a.parseWithComments=C,a.print=J,a.strip=z;function g(){let U=y3();return g=function(){return U},U}function b(){let U=f(A3());return b=function(){return U},U}function f(U){return U&&U.__esModule?U:{default:U}}var A=/\*\/$/,L=/^\/\*\*?/,S=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,V=/(^|\s+)\/\/([^\r\n]*)/g,r=/^(\r?\n)+/,X=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,Y=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,G=/(\r?\n|^) *\* ?/g,u2=[];function T(U){let e2=U.match(S);return e2?e2[0].trimLeft():""}function z(U){let e2=U.match(S);return e2&&e2[0]?U.substring(e2[0].length):U}function w2(U){return C(U).pragmas}function C(U){let e2=(0,b().default)(U)||g().EOL;U=U.replace(L,"").replace(A,"").replace(G,"$1");let g2="";for(;g2!==U;)g2=U,U=U.replace(X,`${e2}$1 $2${e2}`);U=U.replace(r,"").trimRight();let l2=Object.create(null),V2=U.replace(Y,"").replace(r,"").trimRight(),f2;for(;f2=Y.exec(U);){let N2=f2[2].replace(V,"");typeof l2[f2[1]]=="string"||Array.isArray(l2[f2[1]])?l2[f2[1]]=u2.concat(l2[f2[1]],N2):l2[f2[1]]=N2}return{comments:V2,pragmas:l2}}function J(U){let{comments:e2="",pragmas:g2={}}=U,l2=(0,b().default)(e2)||g().EOL,V2="/**",f2=" *",N2=" */",q2=Object.keys(g2),V1=q2.map(a2=>p(a2,g2[a2])).reduce((a2,t1)=>a2.concat(t1),[]).map(a2=>`${f2} ${a2}${l2}`).join("");if(!e2){if(q2.length===0)return"";if(q2.length===1&&!Array.isArray(g2[q2[0]])){let a2=g2[q2[0]];return`${V2} ${p(q2[0],a2)[0]}${N2}`}}let N1=e2.split(l2).map(a2=>`${f2} ${a2}`).join(l2)+l2;return V2+l2+(e2?N1:"")+(e2&&q2.length?f2+l2:"")+V1+N2}function p(U,e2){return u2.concat(e2).map(g2=>`@${U} ${g2}`.trim())}}}),E3=t2({"src/common/end-of-line.js"(a,g){"use strict";n2();function b(S){let V=S.indexOf("\r");return V>=0?S.charAt(V+1)===` +`?"crlf":"cr":"lf"}function f(S){switch(S){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function A(S,V){let r;switch(V){case` +`:r=/\n/g;break;case"\r":r=/\r/g;break;case`\r +`:r=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(V)}.`)}let X=S.match(r);return X?X.length:0}function L(S){return S.replace(/\r\n?/g,` +`)}g.exports={guessEndOfLine:b,convertEndOfLineToChars:f,countEndOfLineChars:A,normalizeEndOfLine:L}}}),C3=t2({"src/language-js/utils/get-shebang.js"(a,g){"use strict";n2();function b(f){if(!f.startsWith("#!"))return"";let A=f.indexOf(` +`);return A===-1?f:f.slice(0,A)}g.exports=b}}),D3=t2({"src/language-js/pragma.js"(a,g){"use strict";n2();var{parseWithComments:b,strip:f,extract:A,print:L}=P3(),{normalizeEndOfLine:S}=E3(),V=C3();function r(G){let u2=V(G);u2&&(G=G.slice(u2.length+1));let T=A(G),{pragmas:z,comments:w2}=b(T);return{shebang:u2,text:G,pragmas:z,comments:w2}}function X(G){let u2=Object.keys(r(G).pragmas);return u2.includes("prettier")||u2.includes("format")}function Y(G){let{shebang:u2,text:T,pragmas:z,comments:w2}=r(G),C=f(T),J=L({pragmas:Object.assign({format:""},z),comments:w2.trimStart()});return(u2?`${u2} +`:"")+S(J)+(C.startsWith(` +`)?` +`:` + +`)+C}g.exports={hasPragma:X,insertPragma:Y}}}),w3=t2({"src/utils/is-non-empty-array.js"(a,g){"use strict";n2();function b(f){return Array.isArray(f)&&f.length>0}g.exports=b}}),L0=t2({"src/language-js/loc.js"(a,g){"use strict";n2();var b=w3();function f(r){var X,Y;let G=r.range?r.range[0]:r.start,u2=(X=(Y=r.declaration)===null||Y===void 0?void 0:Y.decorators)!==null&&X!==void 0?X:r.decorators;return b(u2)?Math.min(f(u2[0]),G):G}function A(r){return r.range?r.range[1]:r.end}function L(r,X){let Y=f(r);return Number.isInteger(Y)&&Y===f(X)}function S(r,X){let Y=A(r);return Number.isInteger(Y)&&Y===A(X)}function V(r,X){return L(r,X)&&S(r,X)}g.exports={locStart:f,locEnd:A,hasSameLocStart:L,hasSameLoc:V}}}),q3=t2({"src/language-js/parse/utils/create-parser.js"(a,g){"use strict";n2();var{hasPragma:b}=D3(),{locStart:f,locEnd:A}=L0();function L(S){return S=typeof S=="function"?{parse:S}:S,Object.assign({astFormat:"estree",hasPragma:b,locStart:f,locEnd:A},S)}g.exports=L}}),B3=t2({"src/language-js/utils/is-ts-keyword-type.js"(a,g){"use strict";n2();function b(f){let{type:A}=f;return A.startsWith("TS")&&A.endsWith("Keyword")}g.exports=b}}),S3=t2({"src/language-js/utils/is-block-comment.js"(a,g){"use strict";n2();var b=new Set(["Block","CommentBlock","MultiLine"]),f=A=>b.has(A==null?void 0:A.type);g.exports=f}}),F3=t2({"src/language-js/utils/is-type-cast-comment.js"(a,g){"use strict";n2();var b=S3();function f(A){return b(A)&&A.value[0]==="*"&&/@(?:type|satisfies)\b/.test(A.value)}g.exports=f}}),L3=t2({"src/utils/get-last.js"(a,g){"use strict";n2();var b=f=>f[f.length-1];g.exports=b}}),O3=t2({"src/language-js/parse/postprocess/visit-node.js"(a,g){"use strict";n2();function b(f,A){if(Array.isArray(f)){for(let L=0;L{J.leadingComments&&J.leadingComments.some(L)&&C.add(b(J))}),T=V(T,J=>{if(J.type==="ParenthesizedExpression"){let{expression:p}=J;if(p.type==="TypeCastExpression")return p.range=J.range,p;let U=b(J);if(!C.has(U))return p.extra=Object.assign(Object.assign({},p.extra),{},{parenthesized:!0}),p}})}return T=V(T,C=>{switch(C.type){case"ChainExpression":return Y(C.expression);case"LogicalExpression":{if(G(C))return u2(C);break}case"VariableDeclaration":{let J=S(C.declarations);J&&J.init&&w2(C,J);break}case"TSParenthesizedType":return A(C.typeAnnotation)||C.typeAnnotation.type==="TSThisType"||(C.typeAnnotation.range=[b(C),f(C)]),C.typeAnnotation;case"TSTypeParameter":if(typeof C.name=="string"){let J=b(C);C.name={type:"Identifier",name:C.name,range:[J,J+C.name.length]}}break;case"ObjectExpression":if(z.parser==="typescript"){let J=C.properties.find(p=>p.type==="Property"&&p.value.type==="TSEmptyBodyFunctionExpression");J&&r(J.value,"Unexpected token.")}break;case"SequenceExpression":{let J=S(C.expressions);C.range=[b(C),Math.min(f(J),f(C))];break}case"TopicReference":z.__isUsingHackPipeline=!0;break;case"ExportAllDeclaration":{let{exported:J}=C;if(z.parser==="meriyah"&&J&&J.type==="Identifier"){let p=z.originalText.slice(b(J),f(J));(p.startsWith('"')||p.startsWith("'"))&&(C.exported=Object.assign(Object.assign({},C.exported),{},{type:"Literal",value:C.exported.name,raw:p}))}break}case"PropertyDefinition":if(z.parser==="meriyah"&&C.static&&!C.computed&&!C.key){let J="static",p=b(C);Object.assign(C,{static:!1,key:{type:"Identifier",name:J,range:[p,p+J.length]}})}break}}),T;function w2(C,J){z.originalText[f(J)]!==";"&&(C.range=[b(C),f(J)])}}function Y(T){switch(T.type){case"CallExpression":T.type="OptionalCallExpression",T.callee=Y(T.callee);break;case"MemberExpression":T.type="OptionalMemberExpression",T.object=Y(T.object);break;case"TSNonNullExpression":T.expression=Y(T.expression);break}return T}function G(T){return T.type==="LogicalExpression"&&T.right.type==="LogicalExpression"&&T.operator===T.right.operator}function u2(T){return G(T)?u2({type:"LogicalExpression",operator:T.operator,left:u2({type:"LogicalExpression",operator:T.operator,left:T.left,right:T.right.left,range:[b(T.left),f(T.right.left)]}),right:T.right.right,range:[b(T),f(T)]}):T}g.exports=X}}),R3=t2({"node_modules/meriyah/dist/meriyah.cjs"(a){"use strict";n2(),Object.defineProperty(a,"__esModule",{value:!0});var g={[0]:"Unexpected token",[28]:"Unexpected token: '%0'",[1]:"Octal escape sequences are not allowed in strict mode",[2]:"Octal escape sequences are not allowed in template strings",[3]:"Unexpected token `#`",[4]:"Illegal Unicode escape sequence",[5]:"Invalid code point %0",[6]:"Invalid hexadecimal escape sequence",[8]:"Octal literals are not allowed in strict mode",[7]:"Decimal integer literals with a leading zero are forbidden in strict mode",[9]:"Expected number in radix %0",[145]:"Invalid left-hand side assignment to a destructible right-hand side",[10]:"Non-number found after exponent indicator",[11]:"Invalid BigIntLiteral",[12]:"No identifiers allowed directly after numeric literal",[13]:"Escapes \\8 or \\9 are not syntactically valid escapes",[14]:"Unterminated string literal",[15]:"Unterminated template literal",[16]:"Multiline comment was not closed properly",[17]:"The identifier contained dynamic unicode escape that was not closed",[18]:"Illegal character '%0'",[19]:"Missing hexadecimal digits",[20]:"Invalid implicit octal",[21]:"Invalid line break in string literal",[22]:"Only unicode escapes are legal in identifier names",[23]:"Expected '%0'",[24]:"Invalid left-hand side in assignment",[25]:"Invalid left-hand side in async arrow",[26]:'Calls to super must be in the "constructor" method of a class expression or class declaration that has a superclass',[27]:"Member access on super must be in a method",[29]:"Await expression not allowed in formal parameter",[30]:"Yield expression not allowed in formal parameter",[92]:"Unexpected token: 'escaped keyword'",[31]:"Unary expressions as the left operand of an exponentiation expression must be disambiguated with parentheses",[119]:"Async functions can only be declared at the top level or inside a block",[32]:"Unterminated regular expression",[33]:"Unexpected regular expression flag",[34]:"Duplicate regular expression flag '%0'",[35]:"%0 functions must have exactly %1 argument%2",[36]:"Setter function argument must not be a rest parameter",[37]:"%0 declaration must have a name in this context",[38]:"Function name may not contain any reserved words or be eval or arguments in strict mode",[39]:"The rest operator is missing an argument",[40]:"A getter cannot be a generator",[41]:"A computed property name must be followed by a colon or paren",[130]:"Object literal keys that are strings or numbers must be a method or have a colon",[43]:"Found `* async x(){}` but this should be `async * x(){}`",[42]:"Getters and setters can not be generators",[44]:"'%0' can not be generator method",[45]:"No line break is allowed after '=>'",[46]:"The left-hand side of the arrow can only be destructed through assignment",[47]:"The binding declaration is not destructible",[48]:"Async arrow can not be followed by new expression",[49]:"Classes may not have a static property named 'prototype'",[50]:"Class constructor may not be a %0",[51]:"Duplicate constructor method in class",[52]:"Invalid increment/decrement operand",[53]:"Invalid use of `new` keyword on an increment/decrement expression",[54]:"`=>` is an invalid assignment target",[55]:"Rest element may not have a trailing comma",[56]:"Missing initializer in %0 declaration",[57]:"'for-%0' loop head declarations can not have an initializer",[58]:"Invalid left-hand side in for-%0 loop: Must have a single binding",[59]:"Invalid shorthand property initializer",[60]:"Property name __proto__ appears more than once in object literal",[61]:"Let is disallowed as a lexically bound name",[62]:"Invalid use of '%0' inside new expression",[63]:"Illegal 'use strict' directive in function with non-simple parameter list",[64]:'Identifier "let" disallowed as left-hand side expression in strict mode',[65]:"Illegal continue statement",[66]:"Illegal break statement",[67]:"Cannot have `let[...]` as a var name in strict mode",[68]:"Invalid destructuring assignment target",[69]:"Rest parameter may not have a default initializer",[70]:"The rest argument must the be last parameter",[71]:"Invalid rest argument",[73]:"In strict mode code, functions can only be declared at top level or inside a block",[74]:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement",[75]:"Without web compatibility enabled functions can not be declared at top level, inside a block, or as the body of an if statement",[76]:"Class declaration can't appear in single-statement context",[77]:"Invalid left-hand side in for-%0",[78]:"Invalid assignment in for-%0",[79]:"for await (... of ...) is only valid in async functions and async generators",[80]:"The first token after the template expression should be a continuation of the template",[82]:"`let` declaration not allowed here and `let` cannot be a regular var name in strict mode",[81]:"`let \n [` is a restricted production at the start of a statement",[83]:"Catch clause requires exactly one parameter, not more (and no trailing comma)",[84]:"Catch clause parameter does not support default values",[85]:"Missing catch or finally after try",[86]:"More than one default clause in switch statement",[87]:"Illegal newline after throw",[88]:"Strict mode code may not include a with statement",[89]:"Illegal return statement",[90]:"The left hand side of the for-header binding declaration is not destructible",[91]:"new.target only allowed within functions",[93]:"'#' not followed by identifier",[99]:"Invalid keyword",[98]:"Can not use 'let' as a class name",[97]:"'A lexical declaration can't define a 'let' binding",[96]:"Can not use `let` as variable name in strict mode",[94]:"'%0' may not be used as an identifier in this context",[95]:"Await is only valid in async functions",[100]:"The %0 keyword can only be used with the module goal",[101]:"Unicode codepoint must not be greater than 0x10FFFF",[102]:"%0 source must be string",[103]:"Only a identifier can be used to indicate alias",[104]:"Only '*' or '{...}' can be imported after default",[105]:"Trailing decorator may be followed by method",[106]:"Decorators can't be used with a constructor",[108]:"HTML comments are only allowed with web compatibility (Annex B)",[109]:"The identifier 'let' must not be in expression position in strict mode",[110]:"Cannot assign to `eval` and `arguments` in strict mode",[111]:"The left-hand side of a for-of loop may not start with 'let'",[112]:"Block body arrows can not be immediately invoked without a group",[113]:"Block body arrows can not be immediately accessed without a group",[114]:"Unexpected strict mode reserved word",[115]:"Unexpected eval or arguments in strict mode",[116]:"Decorators must not be followed by a semicolon",[117]:"Calling delete on expression not allowed in strict mode",[118]:"Pattern can not have a tail",[120]:"Can not have a `yield` expression on the left side of a ternary",[121]:"An arrow function can not have a postfix update operator",[122]:"Invalid object literal key character after generator star",[123]:"Private fields can not be deleted",[125]:"Classes may not have a field called constructor",[124]:"Classes may not have a private element named constructor",[126]:"A class field initializer may not contain arguments",[127]:"Generators can only be declared at the top level or inside a block",[128]:"Async methods are a restricted production and cannot have a newline following it",[129]:"Unexpected character after object literal property name",[131]:"Invalid key token",[132]:"Label '%0' has already been declared",[133]:"continue statement must be nested within an iteration statement",[134]:"Undefined label '%0'",[135]:"Trailing comma is disallowed inside import(...) arguments",[136]:"import() requires exactly one argument",[137]:"Cannot use new with import(...)",[138]:"... is not allowed in import()",[139]:"Expected '=>'",[140]:"Duplicate binding '%0'",[141]:"Cannot export a duplicate name '%0'",[144]:"Duplicate %0 for-binding",[142]:"Exported binding '%0' needs to refer to a top-level declared variable",[143]:"Unexpected private field",[147]:"Numeric separators are not allowed at the end of numeric literals",[146]:"Only one underscore is allowed as numeric separator",[148]:"JSX value should be either an expression or a quoted JSX text",[149]:"Expected corresponding JSX closing tag for %0",[150]:"Adjacent JSX elements must be wrapped in an enclosing tag",[151]:"JSX attributes must only be assigned a non-empty 'expression'",[152]:"'%0' has already been declared",[153]:"'%0' shadowed a catch clause binding",[154]:"Dot property must be an identifier",[155]:"Encountered invalid input after spread/rest argument",[156]:"Catch without try",[157]:"Finally without try",[158]:"Expected corresponding closing tag for JSX fragment",[159]:"Coalescing and logical operators used together in the same expression must be disambiguated with parentheses",[160]:"Invalid tagged template on optional chain",[161]:"Invalid optional chain from super property",[162]:"Invalid optional chain from new expression",[163]:'Cannot use "import.meta" outside a module',[164]:"Leading decorators must be attached to a class declaration"},b=class extends SyntaxError{constructor(e,u,i,n){for(var t=arguments.length,o=new Array(t>4?t-4:0),l=4;lo[m]);super(`${c}`),this.index=e,this.line=u,this.column=i,this.description=c,this.loc={line:u,column:i}}};function f(e,u){for(var i=arguments.length,n=new Array(i>2?i-2:0),t=2;t4?t-4:0),l=4;l{let i=new Uint32Array(104448),n=0,t=0;for(;n<3540;){let o=e[n++];if(o<0)t-=o;else{let l=e[n++];o&2&&(l=u[l]),o&1?i.fill(l,t,t+=e[n++]):i[t++]=l}}return i})([-1,2,24,2,25,2,5,-1,0,77595648,3,44,2,3,0,14,2,57,2,58,3,0,3,0,3168796671,0,4294956992,2,1,2,0,2,59,3,0,4,0,4294966523,3,0,4,2,16,2,60,2,0,0,4294836735,0,3221225471,0,4294901942,2,61,0,134152192,3,0,2,0,4294951935,3,0,2,0,2683305983,0,2684354047,2,17,2,0,0,4294961151,3,0,2,2,19,2,0,0,608174079,2,0,2,131,2,6,2,56,-1,2,37,0,4294443263,2,1,3,0,3,0,4294901711,2,39,0,4089839103,0,2961209759,0,1342439375,0,4294543342,0,3547201023,0,1577204103,0,4194240,0,4294688750,2,2,0,80831,0,4261478351,0,4294549486,2,2,0,2967484831,0,196559,0,3594373100,0,3288319768,0,8469959,2,194,2,3,0,3825204735,0,123747807,0,65487,0,4294828015,0,4092591615,0,1080049119,0,458703,2,3,2,0,0,2163244511,0,4227923919,0,4236247022,2,66,0,4284449919,0,851904,2,4,2,11,0,67076095,-1,2,67,0,1073741743,0,4093591391,-1,0,50331649,0,3265266687,2,32,0,4294844415,0,4278190047,2,18,2,129,-1,3,0,2,2,21,2,0,2,9,2,0,2,14,2,15,3,0,10,2,69,2,0,2,70,2,71,2,72,2,0,2,73,2,0,2,10,0,261632,2,23,3,0,2,2,12,2,4,3,0,18,2,74,2,5,3,0,2,2,75,0,2088959,2,27,2,8,0,909311,3,0,2,0,814743551,2,41,0,67057664,3,0,2,2,40,2,0,2,28,2,0,2,29,2,7,0,268374015,2,26,2,49,2,0,2,76,0,134153215,-1,2,6,2,0,2,7,0,2684354559,0,67044351,0,3221160064,0,1,-1,3,0,2,2,42,0,1046528,3,0,3,2,8,2,0,2,51,0,4294960127,2,9,2,38,2,10,0,4294377472,2,11,3,0,7,0,4227858431,3,0,8,2,12,2,0,2,78,2,9,2,0,2,79,2,80,2,81,-1,2,124,0,1048577,2,82,2,13,-1,2,13,0,131042,2,83,2,84,2,85,2,0,2,33,-83,2,0,2,53,2,7,3,0,4,0,1046559,2,0,2,14,2,0,0,2147516671,2,20,3,86,2,2,0,-16,2,87,0,524222462,2,4,2,0,0,4269801471,2,4,2,0,2,15,2,77,2,16,3,0,2,2,47,2,0,-1,2,17,-16,3,0,206,-2,3,0,655,2,18,3,0,36,2,68,-1,2,17,2,9,3,0,8,2,89,2,121,2,0,0,3220242431,3,0,3,2,19,2,90,2,91,3,0,2,2,92,2,0,2,93,2,94,2,0,0,4351,2,0,2,8,3,0,2,0,67043391,0,3909091327,2,0,2,22,2,8,2,18,3,0,2,0,67076097,2,7,2,0,2,20,0,67059711,0,4236247039,3,0,2,0,939524103,0,8191999,2,97,2,98,2,15,2,21,3,0,3,0,67057663,3,0,349,2,99,2,100,2,6,-264,3,0,11,2,22,3,0,2,2,31,-1,0,3774349439,2,101,2,102,3,0,2,2,19,2,103,3,0,10,2,9,2,17,2,0,2,45,2,0,2,30,2,104,2,23,0,1638399,2,172,2,105,3,0,3,2,18,2,24,2,25,2,5,2,26,2,0,2,7,2,106,-1,2,107,2,108,2,109,-1,3,0,3,2,11,-2,2,0,2,27,-3,2,150,-4,2,18,2,0,2,35,0,1,2,0,2,62,2,28,2,11,2,9,2,0,2,110,-1,3,0,4,2,9,2,21,2,111,2,6,2,0,2,112,2,0,2,48,-4,3,0,9,2,20,2,29,2,30,-4,2,113,2,114,2,29,2,20,2,7,-2,2,115,2,29,2,31,-2,2,0,2,116,-2,0,4277137519,0,2269118463,-1,3,18,2,-1,2,32,2,36,2,0,3,29,2,2,34,2,19,-3,3,0,2,2,33,-1,2,0,2,34,2,0,2,34,2,0,2,46,-10,2,0,0,203775,-2,2,18,2,43,2,35,-2,2,17,2,117,2,20,3,0,2,2,36,0,2147549120,2,0,2,11,2,17,2,135,2,0,2,37,2,52,0,5242879,3,0,2,0,402644511,-1,2,120,0,1090519039,-2,2,122,2,38,2,0,0,67045375,2,39,0,4226678271,0,3766565279,0,2039759,-4,3,0,2,0,3288270847,0,3,3,0,2,0,67043519,-5,2,0,0,4282384383,0,1056964609,-1,3,0,2,0,67043345,-1,2,0,2,40,2,41,-1,2,10,2,42,-6,2,0,2,11,-3,3,0,2,0,2147484671,2,125,0,4190109695,2,50,-2,2,126,0,4244635647,0,27,2,0,2,7,2,43,2,0,2,63,-1,2,0,2,40,-8,2,54,2,44,0,67043329,2,127,2,45,0,8388351,-2,2,128,0,3028287487,2,46,2,130,0,33259519,2,41,-9,2,20,-5,2,64,-2,3,0,28,2,31,-3,3,0,3,2,47,3,0,6,2,48,-85,3,0,33,2,47,-126,3,0,18,2,36,-269,3,0,17,2,40,2,7,2,41,-2,2,17,2,49,2,0,2,20,2,50,2,132,2,23,-21,3,0,2,-4,3,0,2,0,4294936575,2,0,0,4294934783,-2,0,196635,3,0,191,2,51,3,0,38,2,29,-1,2,33,-279,3,0,8,2,7,-1,2,133,2,52,3,0,11,2,6,-72,3,0,3,2,134,0,1677656575,-166,0,4161266656,0,4071,0,15360,-4,0,28,-13,3,0,2,2,37,2,0,2,136,2,137,2,55,2,0,2,138,2,139,2,140,3,0,10,2,141,2,142,2,15,3,37,2,3,53,2,3,54,2,0,4294954999,2,0,-16,2,0,2,88,2,0,0,2105343,0,4160749584,0,65534,-42,0,4194303871,0,2011,-6,2,0,0,1073684479,0,17407,-11,2,0,2,31,-40,3,0,6,0,8323103,-1,3,0,2,2,42,-37,2,55,2,144,2,145,2,146,2,147,2,148,-105,2,24,-32,3,0,1334,2,9,-1,3,0,129,2,27,3,0,6,2,9,3,0,180,2,149,3,0,233,0,1,-96,3,0,16,2,9,-47,3,0,154,2,56,-22381,3,0,7,2,23,-6130,3,5,2,-1,0,69207040,3,44,2,3,0,14,2,57,2,58,-3,0,3168731136,0,4294956864,2,1,2,0,2,59,3,0,4,0,4294966275,3,0,4,2,16,2,60,2,0,2,33,-1,2,17,2,61,-1,2,0,2,56,0,4294885376,3,0,2,0,3145727,0,2617294944,0,4294770688,2,23,2,62,3,0,2,0,131135,2,95,0,70256639,0,71303167,0,272,2,40,2,56,-1,2,37,2,30,-1,2,96,2,63,0,4278255616,0,4294836227,0,4294549473,0,600178175,0,2952806400,0,268632067,0,4294543328,0,57540095,0,1577058304,0,1835008,0,4294688736,2,65,2,64,0,33554435,2,123,2,65,2,151,0,131075,0,3594373096,0,67094296,2,64,-1,0,4294828e3,0,603979263,2,160,0,3,0,4294828001,0,602930687,2,183,0,393219,0,4294828016,0,671088639,0,2154840064,0,4227858435,0,4236247008,2,66,2,36,-1,2,4,0,917503,2,36,-1,2,67,0,537788335,0,4026531935,-1,0,1,-1,2,32,2,68,0,7936,-3,2,0,0,2147485695,0,1010761728,0,4292984930,0,16387,2,0,2,14,2,15,3,0,10,2,69,2,0,2,70,2,71,2,72,2,0,2,73,2,0,2,11,-1,2,23,3,0,2,2,12,2,4,3,0,18,2,74,2,5,3,0,2,2,75,0,253951,3,19,2,0,122879,2,0,2,8,0,276824064,-2,3,0,2,2,40,2,0,0,4294903295,2,0,2,29,2,7,-1,2,17,2,49,2,0,2,76,2,41,-1,2,20,2,0,2,27,-2,0,128,-2,2,77,2,8,0,4064,-1,2,119,0,4227907585,2,0,2,118,2,0,2,48,2,173,2,9,2,38,2,10,-1,0,74440192,3,0,6,-2,3,0,8,2,12,2,0,2,78,2,9,2,0,2,79,2,80,2,81,-3,2,82,2,13,-3,2,83,2,84,2,85,2,0,2,33,-83,2,0,2,53,2,7,3,0,4,0,817183,2,0,2,14,2,0,0,33023,2,20,3,86,2,-17,2,87,0,524157950,2,4,2,0,2,88,2,4,2,0,2,15,2,77,2,16,3,0,2,2,47,2,0,-1,2,17,-16,3,0,206,-2,3,0,655,2,18,3,0,36,2,68,-1,2,17,2,9,3,0,8,2,89,0,3072,2,0,0,2147516415,2,9,3,0,2,2,23,2,90,2,91,3,0,2,2,92,2,0,2,93,2,94,0,4294965179,0,7,2,0,2,8,2,91,2,8,-1,0,1761345536,2,95,0,4294901823,2,36,2,18,2,96,2,34,2,166,0,2080440287,2,0,2,33,2,143,0,3296722943,2,0,0,1046675455,0,939524101,0,1837055,2,97,2,98,2,15,2,21,3,0,3,0,7,3,0,349,2,99,2,100,2,6,-264,3,0,11,2,22,3,0,2,2,31,-1,0,2700607615,2,101,2,102,3,0,2,2,19,2,103,3,0,10,2,9,2,17,2,0,2,45,2,0,2,30,2,104,-3,2,105,3,0,3,2,18,-1,3,5,2,2,26,2,0,2,7,2,106,-1,2,107,2,108,2,109,-1,3,0,3,2,11,-2,2,0,2,27,-8,2,18,2,0,2,35,-1,2,0,2,62,2,28,2,29,2,9,2,0,2,110,-1,3,0,4,2,9,2,17,2,111,2,6,2,0,2,112,2,0,2,48,-4,3,0,9,2,20,2,29,2,30,-4,2,113,2,114,2,29,2,20,2,7,-2,2,115,2,29,2,31,-2,2,0,2,116,-2,0,4277075969,2,29,-1,3,18,2,-1,2,32,2,117,2,0,3,29,2,2,34,2,19,-3,3,0,2,2,33,-1,2,0,2,34,2,0,2,34,2,0,2,48,-10,2,0,0,197631,-2,2,18,2,43,2,118,-2,2,17,2,117,2,20,2,119,2,51,-2,2,119,2,23,2,17,2,33,2,119,2,36,0,4294901904,0,4718591,2,119,2,34,0,335544350,-1,2,120,2,121,-2,2,122,2,38,2,7,-1,2,123,2,65,0,3758161920,0,3,-4,2,0,2,27,0,2147485568,0,3,2,0,2,23,0,176,-5,2,0,2,47,2,186,-1,2,0,2,23,2,197,-1,2,0,0,16779263,-2,2,11,-7,2,0,2,121,-3,3,0,2,2,124,2,125,0,2147549183,0,2,-2,2,126,2,35,0,10,0,4294965249,0,67633151,0,4026597376,2,0,0,536871935,-1,2,0,2,40,-8,2,54,2,47,0,1,2,127,2,23,-3,2,128,2,35,2,129,2,130,0,16778239,-10,2,34,-5,2,64,-2,3,0,28,2,31,-3,3,0,3,2,47,3,0,6,2,48,-85,3,0,33,2,47,-126,3,0,18,2,36,-269,3,0,17,2,40,2,7,-3,2,17,2,131,2,0,2,23,2,48,2,132,2,23,-21,3,0,2,-4,3,0,2,0,67583,-1,2,103,-2,0,11,3,0,191,2,51,3,0,38,2,29,-1,2,33,-279,3,0,8,2,7,-1,2,133,2,52,3,0,11,2,6,-72,3,0,3,2,134,2,135,-187,3,0,2,2,37,2,0,2,136,2,137,2,55,2,0,2,138,2,139,2,140,3,0,10,2,141,2,142,2,15,3,37,2,3,53,2,3,54,2,2,143,-73,2,0,0,1065361407,0,16384,-11,2,0,2,121,-40,3,0,6,2,117,-1,3,0,2,0,2063,-37,2,55,2,144,2,145,2,146,2,147,2,148,-138,3,0,1334,2,9,-1,3,0,129,2,27,3,0,6,2,9,3,0,180,2,149,3,0,233,0,1,-96,3,0,16,2,9,-47,3,0,154,2,56,-28517,2,0,0,1,-1,2,124,2,0,0,8193,-21,2,193,0,10255,0,4,-11,2,64,2,171,-1,0,71680,-1,2,161,0,4292900864,0,805306431,-5,2,150,-1,2,157,-1,0,6144,-2,2,127,-1,2,154,-1,0,2147532800,2,151,2,165,2,0,2,164,0,524032,0,4,-4,2,190,0,205128192,0,1333757536,0,2147483696,0,423953,0,747766272,0,2717763192,0,4286578751,0,278545,2,152,0,4294886464,0,33292336,0,417809,2,152,0,1327482464,0,4278190128,0,700594195,0,1006647527,0,4286497336,0,4160749631,2,153,0,469762560,0,4171219488,0,8323120,2,153,0,202375680,0,3214918176,0,4294508592,2,153,-1,0,983584,0,48,0,58720273,0,3489923072,0,10517376,0,4293066815,0,1,0,2013265920,2,177,2,0,0,2089,0,3221225552,0,201375904,2,0,-2,0,256,0,122880,0,16777216,2,150,0,4160757760,2,0,-6,2,167,-11,0,3263218176,-1,0,49664,0,2160197632,0,8388802,-1,0,12713984,-1,2,154,2,159,2,178,-2,2,162,-20,0,3758096385,-2,2,155,0,4292878336,2,90,2,169,0,4294057984,-2,2,163,2,156,2,175,-2,2,155,-1,2,182,-1,2,170,2,124,0,4026593280,0,14,0,4292919296,-1,2,158,0,939588608,-1,0,805306368,-1,2,124,0,1610612736,2,156,2,157,2,4,2,0,-2,2,158,2,159,-3,0,267386880,-1,2,160,0,7168,-1,0,65024,2,154,2,161,2,179,-7,2,168,-8,2,162,-1,0,1426112704,2,163,-1,2,164,0,271581216,0,2149777408,2,23,2,161,2,124,0,851967,2,180,-1,2,23,2,181,-4,2,158,-20,2,195,2,165,-56,0,3145728,2,185,-4,2,166,2,124,-4,0,32505856,-1,2,167,-1,0,2147385088,2,90,1,2155905152,2,-3,2,103,2,0,2,168,-2,2,169,-6,2,170,0,4026597375,0,1,-1,0,1,-1,2,171,-3,2,117,2,64,-2,2,166,-2,2,176,2,124,-878,2,159,-36,2,172,-1,2,201,-10,2,188,-5,2,174,-6,0,4294965251,2,27,-1,2,173,-1,2,174,-2,0,4227874752,-3,0,2146435072,2,159,-2,0,1006649344,2,124,-1,2,90,0,201375744,-3,0,134217720,2,90,0,4286677377,0,32896,-1,2,158,-3,2,175,-349,2,176,0,1920,2,177,3,0,264,-11,2,157,-2,2,178,2,0,0,520617856,0,2692743168,0,36,-3,0,524284,-11,2,23,-1,2,187,-1,2,184,0,3221291007,2,178,-1,2,202,0,2158720,-3,2,159,0,1,-4,2,124,0,3808625411,0,3489628288,2,200,0,1207959680,0,3221274624,2,0,-3,2,179,0,120,0,7340032,-2,2,180,2,4,2,23,2,163,3,0,4,2,159,-1,2,181,2,177,-1,0,8176,2,182,2,179,2,183,-1,0,4290773232,2,0,-4,2,163,2,189,0,15728640,2,177,-1,2,161,-1,0,4294934512,3,0,4,-9,2,90,2,170,2,184,3,0,4,0,704,0,1849688064,2,185,-1,2,124,0,4294901887,2,0,0,130547712,0,1879048192,2,199,3,0,2,-1,2,186,2,187,-1,0,17829776,0,2025848832,0,4261477888,-2,2,0,-1,0,4286580608,-1,0,29360128,2,192,0,16252928,0,3791388672,2,38,3,0,2,-2,2,196,2,0,-1,2,103,-1,0,66584576,-1,2,191,3,0,9,2,124,-1,0,4294755328,3,0,2,-1,2,161,2,178,3,0,2,2,23,2,188,2,90,-2,0,245760,0,2147418112,-1,2,150,2,203,0,4227923456,-1,2,164,2,161,2,90,-3,0,4292870145,0,262144,2,124,3,0,2,0,1073758848,2,189,-1,0,4227921920,2,190,0,68289024,0,528402016,0,4292927536,3,0,4,-2,0,268435456,2,91,-2,2,191,3,0,5,-1,2,192,2,163,2,0,-2,0,4227923936,2,62,-1,2,155,2,95,2,0,2,154,2,158,3,0,6,-1,2,177,3,0,3,-2,0,2146959360,0,9440640,0,104857600,0,4227923840,3,0,2,0,768,2,193,2,77,-2,2,161,-2,2,119,-1,2,155,3,0,8,0,512,0,8388608,2,194,2,172,2,187,0,4286578944,3,0,2,0,1152,0,1266679808,2,191,0,576,0,4261707776,2,95,3,0,9,2,155,3,0,5,2,16,-1,0,2147221504,-28,2,178,3,0,3,-3,0,4292902912,-6,2,96,3,0,85,-33,0,4294934528,3,0,126,-18,2,195,3,0,269,-17,2,155,2,124,2,198,3,0,2,2,23,0,4290822144,-2,0,67174336,0,520093700,2,17,3,0,21,-2,2,179,3,0,3,-2,0,30720,-1,0,32512,3,0,2,0,4294770656,-191,2,174,-38,2,170,2,0,2,196,3,0,279,-8,2,124,2,0,0,4294508543,0,65295,-11,2,177,3,0,72,-3,0,3758159872,0,201391616,3,0,155,-7,2,170,-1,0,384,-1,0,133693440,-3,2,196,-2,2,26,3,0,4,2,169,-2,2,90,2,155,3,0,4,-2,2,164,-1,2,150,0,335552923,2,197,-1,0,538974272,0,2214592512,0,132e3,-10,0,192,-8,0,12288,-21,0,134213632,0,4294901761,3,0,42,0,100663424,0,4294965284,3,0,6,-1,0,3221282816,2,198,3,0,11,-1,2,199,3,0,40,-6,0,4286578784,2,0,-2,0,1006694400,3,0,24,2,35,-1,2,94,3,0,2,0,1,2,163,3,0,6,2,197,0,4110942569,0,1432950139,0,2701658217,0,4026532864,0,4026532881,2,0,2,45,3,0,8,-1,2,158,-2,2,169,0,98304,0,65537,2,170,-5,0,4294950912,2,0,2,118,0,65528,2,177,0,4294770176,2,26,3,0,4,-30,2,174,0,3758153728,-3,2,169,-2,2,155,2,188,2,158,-1,2,191,-1,2,161,0,4294754304,3,0,2,-3,0,33554432,-2,2,200,-3,2,169,0,4175478784,2,201,0,4286643712,0,4286644216,2,0,-4,2,202,-1,2,165,0,4227923967,3,0,32,-1334,2,163,2,0,-129,2,94,-6,2,163,-180,2,203,-233,2,4,3,0,96,-16,2,163,3,0,47,-154,2,165,3,0,22381,-7,2,17,3,0,6128],[4294967295,4294967291,4092460543,4294828031,4294967294,134217726,268435455,2147483647,1048575,1073741823,3892314111,134217727,1061158911,536805376,4294910143,4160749567,4294901759,4294901760,536870911,262143,8388607,4294902783,4294918143,65535,67043328,2281701374,4294967232,2097151,4294903807,4194303,255,67108863,4294967039,511,524287,131071,127,4292870143,4294902271,4294549487,33554431,1023,67047423,4294901888,4286578687,4294770687,67043583,32767,15,2047999,67043343,16777215,4294902e3,4294934527,4294966783,4294967279,2047,262083,20511,4290772991,41943039,493567,4294959104,603979775,65536,602799615,805044223,4294965206,8191,1031749119,4294917631,2134769663,4286578493,4282253311,4294942719,33540095,4294905855,4294967264,2868854591,1608515583,265232348,534519807,2147614720,1060109444,4093640016,17376,2139062143,224,4169138175,4294909951,4286578688,4294967292,4294965759,2044,4292870144,4294966272,4294967280,8289918,4294934399,4294901775,4294965375,1602223615,4294967259,4294443008,268369920,4292804608,486341884,4294963199,3087007615,1073692671,4128527,4279238655,4294902015,4294966591,2445279231,3670015,3238002687,31,63,4294967288,4294705151,4095,3221208447,4294549472,2147483648,4285526655,4294966527,4294705152,4294966143,64,4294966719,16383,3774873592,458752,536807423,67043839,3758096383,3959414372,3755993023,2080374783,4294835295,4294967103,4160749565,4087,184024726,2862017156,1593309078,268434431,268434414,4294901763,536870912,2952790016,202506752,139264,402653184,4261412864,4227922944,49152,61440,3758096384,117440512,65280,3233808384,3221225472,2097152,4294965248,32768,57152,67108864,4293918720,4290772992,25165824,57344,4227915776,4278190080,4227907584,65520,4026531840,4227858432,4160749568,3758129152,4294836224,63488,1073741824,4294967040,4194304,251658240,196608,4294963200,64512,417808,4227923712,12582912,50331648,65472,4294967168,4294966784,16,4294917120,2080374784,4096,65408,524288,65532]);function r(e){return e.column++,e.currentChar=e.source.charCodeAt(++e.index)}function X(e,u){if((u&64512)!==55296)return 0;let i=e.source.charCodeAt(e.index+1);return(i&64512)!==56320?0:(u=e.currentChar=65536+((u&1023)<<10)+(i&1023),V[(u>>>5)+0]>>>u&31&1||f(e,18,T(u)),e.index++,e.column++,1)}function Y(e,u){e.currentChar=e.source.charCodeAt(++e.index),e.flags|=1,u&4||(e.column=0,e.line++)}function G(e){e.flags|=1,e.currentChar=e.source.charCodeAt(++e.index),e.column=0,e.line++}function u2(e){return e===160||e===65279||e===133||e===5760||e>=8192&&e<=8203||e===8239||e===8287||e===12288||e===8201||e===65519}function T(e){return e<=65535?String.fromCharCode(e):String.fromCharCode(e>>>10)+String.fromCharCode(e&1023)}function z(e){return e<65?e-48:e-65+10&15}function w2(e){switch(e){case 134283266:return"NumericLiteral";case 134283267:return"StringLiteral";case 86021:case 86022:return"BooleanLiteral";case 86023:return"NullLiteral";case 65540:return"RegularExpression";case 67174408:case 67174409:case 132:return"TemplateLiteral";default:return(e&143360)===143360?"Identifier":(e&4096)===4096?"Keyword":"Punctuator"}}var C=[0,0,0,0,0,0,0,0,0,0,1032,0,0,2056,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8192,0,3,0,0,8192,0,0,0,256,0,33024,0,0,242,242,114,114,114,114,114,114,594,594,0,0,16384,0,0,0,0,67,67,67,67,67,67,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,1,0,0,4099,0,71,71,71,71,71,71,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,16384,0,0,0,0],J=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0],p=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0];function U(e){return e<=127?J[e]:V[(e>>>5)+34816]>>>e&31&1}function e2(e){return e<=127?p[e]:V[(e>>>5)+0]>>>e&31&1||e===8204||e===8205}var g2=["SingleLine","MultiLine","HTMLOpen","HTMLClose","HashbangComment"];function l2(e){let u=e.source;e.currentChar===35&&u.charCodeAt(e.index+1)===33&&(r(e),r(e),f2(e,u,0,4,e.tokenPos,e.linePos,e.colPos))}function V2(e,u,i,n,t,o,l,c){return n&2048&&f(e,0),f2(e,u,i,t,o,l,c)}function f2(e,u,i,n,t,o,l){let{index:c}=e;for(e.tokenPos=e.index,e.linePos=e.line,e.colPos=e.column;e.index=e.source.length)return f(e,32)}let t=e.index-1,o=0,l=e.currentChar,{index:c}=e;for(;e2(l);){switch(l){case 103:o&2&&f(e,34,"g"),o|=2;break;case 105:o&1&&f(e,34,"i"),o|=1;break;case 109:o&4&&f(e,34,"m"),o|=4;break;case 117:o&16&&f(e,34,"g"),o|=16;break;case 121:o&8&&f(e,34,"y"),o|=8;break;case 115:o&32&&f(e,34,"s"),o|=32;break;default:f(e,33)}l=r(e)}let s=e.source.slice(c,e.index),m=e.source.slice(i,t);return e.tokenRegExp={pattern:m,flags:s},u&512&&(e.tokenRaw=e.source.slice(e.tokenPos,e.index)),e.tokenValue=V1(e,m,s),65540}function V1(e,u,i){try{return new RegExp(u,i)}catch{f(e,32)}}function N1(e,u,i){let{index:n}=e,t="",o=r(e),l=e.index;for(;!(C[o]&8);){if(o===i)return t+=e.source.slice(l,e.index),r(e),u&512&&(e.tokenRaw=e.source.slice(n,e.index)),e.tokenValue=t,134283267;if((o&8)===8&&o===92){if(t+=e.source.slice(l,e.index),o=r(e),o<127||o===8232||o===8233){let c=a2(e,u,o);c>=0?t+=T(c):t1(e,c,0)}else t+=T(o);l=e.index+1}e.index>=e.end&&f(e,14),o=r(e)}f(e,14)}function a2(e,u,i){switch(i){case 98:return 8;case 102:return 12;case 114:return 13;case 110:return 10;case 116:return 9;case 118:return 11;case 13:if(e.index1114111)return-5;return e.currentChar<1||e.currentChar!==125?-4:t}else{if(!(C[n]&64))return-4;let t=e.source.charCodeAt(e.index+1);if(!(C[t]&64))return-4;let o=e.source.charCodeAt(e.index+2);if(!(C[o]&64))return-4;let l=e.source.charCodeAt(e.index+3);return C[l]&64?(e.index+=3,e.column+=3,e.currentChar=e.source.charCodeAt(e.index),z(n)<<12|z(t)<<8|z(o)<<4|z(l)):-4}}case 56:case 57:if(!(u&256))return-3;default:return i}}function t1(e,u,i){switch(u){case-1:return;case-2:f(e,i?2:1);case-3:f(e,13);case-4:f(e,6);case-5:f(e,101)}}function We(e,u){let{index:i}=e,n=67174409,t="",o=r(e);for(;o!==96;){if(o===36&&e.source.charCodeAt(e.index+1)===123){r(e),n=67174408;break}else if((o&8)===8&&o===92)if(o=r(e),o>126)t+=T(o);else{let l=a2(e,u|1024,o);if(l>=0)t+=T(l);else if(l!==-1&&u&65536){t=void 0,o=T0(e,o),o<0&&(n=67174408);break}else t1(e,l,1)}else e.index=e.end&&f(e,15),o=r(e)}return r(e),e.tokenValue=t,e.tokenRaw=e.source.slice(i+1,e.index-(n===67174409?1:2)),n}function T0(e,u){for(;u!==96;){switch(u){case 36:{let i=e.index+1;if(i=e.end&&f(e,15),u=r(e)}return u}function I0(e,u){return e.index>=e.end&&f(e,0),e.index--,e.column--,We(e,u)}function Ke(e,u,i){let n=e.currentChar,t=0,o=9,l=i&64?0:1,c=0,s=0;if(i&64)t="."+o1(e,n),n=e.currentChar,n===110&&f(e,11);else{if(n===48)if(n=r(e),(n|32)===120){for(i=136,n=r(e);C[n]&4160;){if(n===95){s||f(e,146),s=0,n=r(e);continue}s=1,t=t*16+z(n),c++,n=r(e)}(c<1||!s)&&f(e,c<1?19:147)}else if((n|32)===111){for(i=132,n=r(e);C[n]&4128;){if(n===95){s||f(e,146),s=0,n=r(e);continue}s=1,t=t*8+(n-48),c++,n=r(e)}(c<1||!s)&&f(e,c<1?0:147)}else if((n|32)===98){for(i=130,n=r(e);C[n]&4224;){if(n===95){s||f(e,146),s=0,n=r(e);continue}s=1,t=t*2+(n-48),c++,n=r(e)}(c<1||!s)&&f(e,c<1?0:147)}else if(C[n]&32)for(u&1024&&f(e,1),i=1;C[n]&16;){if(C[n]&512){i=32,l=0;break}t=t*8+(n-48),n=r(e)}else C[n]&512?(u&1024&&f(e,1),e.flags|=64,i=32):n===95&&f(e,0);if(i&48){if(l){for(;o>=0&&C[n]&4112;){if(n===95){n=r(e),(n===95||i&32)&&S(e.index,e.line,e.index+1,146),s=1;continue}s=0,t=10*t+(n-48),n=r(e),--o}if(s&&S(e.index,e.line,e.index+1,147),o>=0&&!U(n)&&n!==46)return e.tokenValue=t,u&512&&(e.tokenRaw=e.source.slice(e.tokenPos,e.index)),134283266}t+=o1(e,n),n=e.currentChar,n===46&&(r(e)===95&&f(e,0),i=64,t+="."+o1(e,e.currentChar),n=e.currentChar)}}let m=e.index,k=0;if(n===110&&i&128)k=1,n=r(e);else if((n|32)===101){n=r(e),C[n]&256&&(n=r(e));let{index:h}=e;(C[n]&16)<1&&f(e,10),t+=e.source.substring(m,h)+o1(e,n),n=e.currentChar}return(e.index","(","{",".","...","}",")",";",",","[","]",":","?","'",'"',"","++","--","=","<<=",">>=",">>>=","**=","+=","-=","*=","/=","%=","^=","|=","&=","||=","&&=","??=","typeof","delete","void","!","~","+","-","in","instanceof","*","%","/","**","&&","||","===","!==","==","!=","<=",">=","<",">","<<",">>",">>>","&","|","^","var","let","const","break","case","catch","class","continue","debugger","default","do","else","export","extends","finally","for","function","if","import","new","return","super","switch","this","throw","try","while","with","implements","interface","package","private","protected","public","static","yield","as","async","await","constructor","get","set","from","of","enum","eval","arguments","escaped keyword","escaped future reserved keyword","reserved if strict","#","BigIntLiteral","??","?.","WhiteSpace","Illegal","LineTerminator","PrivateField","Template","@","target","meta","LineFeed","Escaped","JSXText"],Ye=Object.create(null,{this:{value:86113},function:{value:86106},if:{value:20571},return:{value:20574},var:{value:86090},else:{value:20565},for:{value:20569},new:{value:86109},in:{value:8738868},typeof:{value:16863277},while:{value:20580},case:{value:20558},break:{value:20557},try:{value:20579},catch:{value:20559},delete:{value:16863278},throw:{value:86114},switch:{value:86112},continue:{value:20561},default:{value:20563},instanceof:{value:8476725},do:{value:20564},void:{value:16863279},finally:{value:20568},async:{value:209007},await:{value:209008},class:{value:86096},const:{value:86092},constructor:{value:12401},debugger:{value:20562},export:{value:20566},extends:{value:20567},false:{value:86021},from:{value:12404},get:{value:12402},implements:{value:36966},import:{value:86108},interface:{value:36967},let:{value:241739},null:{value:86023},of:{value:274549},package:{value:36968},private:{value:36969},protected:{value:36970},public:{value:36971},set:{value:12403},static:{value:36972},super:{value:86111},true:{value:86022},with:{value:20581},yield:{value:241773},enum:{value:86134},eval:{value:537079927},as:{value:77934},arguments:{value:537079928},target:{value:143494},meta:{value:143495}});function Ze(e,u,i){for(;p[r(e)];);return e.tokenValue=e.source.slice(e.tokenPos,e.index),e.currentChar!==92&&e.currentChar<126?Ye[e.tokenValue]||208897:j1(e,u,0,i)}function R0(e,u){let i=Qe(e);return e2(i)||f(e,4),e.tokenValue=T(i),j1(e,u,1,C[i]&4)}function j1(e,u,i,n){let t=e.index;for(;e.index=2&&o<=11){let l=Ye[e.tokenValue];return l===void 0?208897:i?u&1024?l===209008&&!(u&4196352)?l:l===36972||(l&36864)===36864?122:121:u&1073741824&&!(u&8192)&&(l&20480)===20480?l:l===241773?u&1073741824?143483:u&2097152?121:l:l===209007&&u&1073741824?143483:(l&36864)===36864||l===209008&&!(u&4194304)?l:121:l}return 208897}function V0(e){return U(r(e))||f(e,93),131}function Qe(e){return e.source.charCodeAt(e.index+1)!==117&&f(e,4),e.currentChar=e.source.charCodeAt(e.index+=2),N0(e)}function N0(e){let u=0,i=e.currentChar;if(i===123){let l=e.index-2;for(;C[r(e)]&64;)u=u<<4|z(e.currentChar),u>1114111&&S(l,e.line,e.index+1,101);return e.currentChar!==125&&S(l,e.line,e.index-1,6),r(e),u}C[i]&64||f(e,6);let n=e.source.charCodeAt(e.index+1);C[n]&64||f(e,6);let t=e.source.charCodeAt(e.index+2);C[t]&64||f(e,6);let o=e.source.charCodeAt(e.index+3);return C[o]&64||f(e,6),u=z(i)<<12|z(n)<<8|z(t)<<4|z(o),e.currentChar=e.source.charCodeAt(e.index+=4),u}var Ge=[129,129,129,129,129,129,129,129,129,128,136,128,128,130,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,128,16842800,134283267,131,208897,8457015,8455751,134283267,67174411,16,8457014,25233970,18,25233971,67108877,8457016,134283266,134283266,134283266,134283266,134283266,134283266,134283266,134283266,134283266,134283266,21,1074790417,8456258,1077936157,8456259,22,133,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,208897,69271571,137,20,8455497,208897,132,4096,4096,4096,4096,4096,4096,4096,208897,4096,208897,208897,4096,208897,4096,208897,4096,208897,4096,4096,4096,208897,4096,4096,208897,4096,4096,2162700,8455240,1074790415,16842801,129];function E(e,u){if(e.flags=(e.flags|1)^1,e.startPos=e.index,e.startColumn=e.column,e.startLine=e.line,e.token=xe(e,u,0),e.onToken&&e.token!==1048576){let i={start:{line:e.linePos,column:e.colPos},end:{line:e.line,column:e.column}};e.onToken(w2(e.token),e.tokenPos,e.index,i)}}function xe(e,u,i){let n=e.index===0,t=e.source,o=e.index,l=e.line,c=e.column;for(;e.index=e.end)return 8457014;let d=e.currentChar;return d===61?(r(e),4194340):d!==42?8457014:r(e)!==61?8457273:(r(e),4194337)}case 8455497:return r(e)!==61?8455497:(r(e),4194343);case 25233970:{r(e);let d=e.currentChar;return d===43?(r(e),33619995):d===61?(r(e),4194338):25233970}case 25233971:{r(e);let d=e.currentChar;if(d===45){if(r(e),(i&1||n)&&e.currentChar===62){u&256||f(e,108),r(e),i=V2(e,t,i,u,3,o,l,c),o=e.tokenPos,l=e.linePos,c=e.colPos;continue}return 33619996}return d===61?(r(e),4194339):25233971}case 8457016:{if(r(e),e.index=48&&h<=57)return Ke(e,u,80);if(h===46){let d=e.index+1;if(d=48&&d<=57)))return r(e),67108991}return 22}}}else{if((s^8232)<=1){i=i&-5|1,G(e);continue}if((s&64512)===55296||V[(s>>>5)+34816]>>>s&31&1)return(s&64512)===56320&&(s=(s&1023)<<10|s&1023|65536,V[(s>>>5)+0]>>>s&31&1||f(e,18,T(s)),e.index++,e.currentChar=s),e.column++,e.tokenValue="",j1(e,u,0,0);if(u2(s)){r(e);continue}f(e,18,T(s))}}return 1048576}var j0={AElig:"\xC6",AMP:"&",Aacute:"\xC1",Abreve:"\u0102",Acirc:"\xC2",Acy:"\u0410",Afr:"\u{1D504}",Agrave:"\xC0",Alpha:"\u0391",Amacr:"\u0100",And:"\u2A53",Aogon:"\u0104",Aopf:"\u{1D538}",ApplyFunction:"\u2061",Aring:"\xC5",Ascr:"\u{1D49C}",Assign:"\u2254",Atilde:"\xC3",Auml:"\xC4",Backslash:"\u2216",Barv:"\u2AE7",Barwed:"\u2306",Bcy:"\u0411",Because:"\u2235",Bernoullis:"\u212C",Beta:"\u0392",Bfr:"\u{1D505}",Bopf:"\u{1D539}",Breve:"\u02D8",Bscr:"\u212C",Bumpeq:"\u224E",CHcy:"\u0427",COPY:"\xA9",Cacute:"\u0106",Cap:"\u22D2",CapitalDifferentialD:"\u2145",Cayleys:"\u212D",Ccaron:"\u010C",Ccedil:"\xC7",Ccirc:"\u0108",Cconint:"\u2230",Cdot:"\u010A",Cedilla:"\xB8",CenterDot:"\xB7",Cfr:"\u212D",Chi:"\u03A7",CircleDot:"\u2299",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",Colon:"\u2237",Colone:"\u2A74",Congruent:"\u2261",Conint:"\u222F",ContourIntegral:"\u222E",Copf:"\u2102",Coproduct:"\u2210",CounterClockwiseContourIntegral:"\u2233",Cross:"\u2A2F",Cscr:"\u{1D49E}",Cup:"\u22D3",CupCap:"\u224D",DD:"\u2145",DDotrahd:"\u2911",DJcy:"\u0402",DScy:"\u0405",DZcy:"\u040F",Dagger:"\u2021",Darr:"\u21A1",Dashv:"\u2AE4",Dcaron:"\u010E",Dcy:"\u0414",Del:"\u2207",Delta:"\u0394",Dfr:"\u{1D507}",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",Diamond:"\u22C4",DifferentialD:"\u2146",Dopf:"\u{1D53B}",Dot:"\xA8",DotDot:"\u20DC",DotEqual:"\u2250",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",Downarrow:"\u21D3",Dscr:"\u{1D49F}",Dstrok:"\u0110",ENG:"\u014A",ETH:"\xD0",Eacute:"\xC9",Ecaron:"\u011A",Ecirc:"\xCA",Ecy:"\u042D",Edot:"\u0116",Efr:"\u{1D508}",Egrave:"\xC8",Element:"\u2208",Emacr:"\u0112",EmptySmallSquare:"\u25FB",EmptyVerySmallSquare:"\u25AB",Eogon:"\u0118",Eopf:"\u{1D53C}",Epsilon:"\u0395",Equal:"\u2A75",EqualTilde:"\u2242",Equilibrium:"\u21CC",Escr:"\u2130",Esim:"\u2A73",Eta:"\u0397",Euml:"\xCB",Exists:"\u2203",ExponentialE:"\u2147",Fcy:"\u0424",Ffr:"\u{1D509}",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",Fopf:"\u{1D53D}",ForAll:"\u2200",Fouriertrf:"\u2131",Fscr:"\u2131",GJcy:"\u0403",GT:">",Gamma:"\u0393",Gammad:"\u03DC",Gbreve:"\u011E",Gcedil:"\u0122",Gcirc:"\u011C",Gcy:"\u0413",Gdot:"\u0120",Gfr:"\u{1D50A}",Gg:"\u22D9",Gopf:"\u{1D53E}",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",Gt:"\u226B",HARDcy:"\u042A",Hacek:"\u02C7",Hat:"^",Hcirc:"\u0124",Hfr:"\u210C",HilbertSpace:"\u210B",Hopf:"\u210D",HorizontalLine:"\u2500",Hscr:"\u210B",Hstrok:"\u0126",HumpDownHump:"\u224E",HumpEqual:"\u224F",IEcy:"\u0415",IJlig:"\u0132",IOcy:"\u0401",Iacute:"\xCD",Icirc:"\xCE",Icy:"\u0418",Idot:"\u0130",Ifr:"\u2111",Igrave:"\xCC",Im:"\u2111",Imacr:"\u012A",ImaginaryI:"\u2148",Implies:"\u21D2",Int:"\u222C",Integral:"\u222B",Intersection:"\u22C2",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",Iogon:"\u012E",Iopf:"\u{1D540}",Iota:"\u0399",Iscr:"\u2110",Itilde:"\u0128",Iukcy:"\u0406",Iuml:"\xCF",Jcirc:"\u0134",Jcy:"\u0419",Jfr:"\u{1D50D}",Jopf:"\u{1D541}",Jscr:"\u{1D4A5}",Jsercy:"\u0408",Jukcy:"\u0404",KHcy:"\u0425",KJcy:"\u040C",Kappa:"\u039A",Kcedil:"\u0136",Kcy:"\u041A",Kfr:"\u{1D50E}",Kopf:"\u{1D542}",Kscr:"\u{1D4A6}",LJcy:"\u0409",LT:"<",Lacute:"\u0139",Lambda:"\u039B",Lang:"\u27EA",Laplacetrf:"\u2112",Larr:"\u219E",Lcaron:"\u013D",Lcedil:"\u013B",Lcy:"\u041B",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",LeftRightArrow:"\u2194",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",Leftarrow:"\u21D0",Leftrightarrow:"\u21D4",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",LessLess:"\u2AA1",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",Lfr:"\u{1D50F}",Ll:"\u22D8",Lleftarrow:"\u21DA",Lmidot:"\u013F",LongLeftArrow:"\u27F5",LongLeftRightArrow:"\u27F7",LongRightArrow:"\u27F6",Longleftarrow:"\u27F8",Longleftrightarrow:"\u27FA",Longrightarrow:"\u27F9",Lopf:"\u{1D543}",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",Lscr:"\u2112",Lsh:"\u21B0",Lstrok:"\u0141",Lt:"\u226A",Map:"\u2905",Mcy:"\u041C",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",MinusPlus:"\u2213",Mopf:"\u{1D544}",Mscr:"\u2133",Mu:"\u039C",NJcy:"\u040A",Nacute:"\u0143",Ncaron:"\u0147",Ncedil:"\u0145",Ncy:"\u041D",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,Nfr:"\u{1D511}",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",Not:"\u2AEC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",Nscr:"\u{1D4A9}",Ntilde:"\xD1",Nu:"\u039D",OElig:"\u0152",Oacute:"\xD3",Ocirc:"\xD4",Ocy:"\u041E",Odblac:"\u0150",Ofr:"\u{1D512}",Ograve:"\xD2",Omacr:"\u014C",Omega:"\u03A9",Omicron:"\u039F",Oopf:"\u{1D546}",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",Or:"\u2A54",Oscr:"\u{1D4AA}",Oslash:"\xD8",Otilde:"\xD5",Otimes:"\u2A37",Ouml:"\xD6",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",PartialD:"\u2202",Pcy:"\u041F",Pfr:"\u{1D513}",Phi:"\u03A6",Pi:"\u03A0",PlusMinus:"\xB1",Poincareplane:"\u210C",Popf:"\u2119",Pr:"\u2ABB",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",Prime:"\u2033",Product:"\u220F",Proportion:"\u2237",Proportional:"\u221D",Pscr:"\u{1D4AB}",Psi:"\u03A8",QUOT:'"',Qfr:"\u{1D514}",Qopf:"\u211A",Qscr:"\u{1D4AC}",RBarr:"\u2910",REG:"\xAE",Racute:"\u0154",Rang:"\u27EB",Rarr:"\u21A0",Rarrtl:"\u2916",Rcaron:"\u0158",Rcedil:"\u0156",Rcy:"\u0420",Re:"\u211C",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",Rfr:"\u211C",Rho:"\u03A1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",Rightarrow:"\u21D2",Ropf:"\u211D",RoundImplies:"\u2970",Rrightarrow:"\u21DB",Rscr:"\u211B",Rsh:"\u21B1",RuleDelayed:"\u29F4",SHCHcy:"\u0429",SHcy:"\u0428",SOFTcy:"\u042C",Sacute:"\u015A",Sc:"\u2ABC",Scaron:"\u0160",Scedil:"\u015E",Scirc:"\u015C",Scy:"\u0421",Sfr:"\u{1D516}",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",Sigma:"\u03A3",SmallCircle:"\u2218",Sopf:"\u{1D54A}",Sqrt:"\u221A",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",Sscr:"\u{1D4AE}",Star:"\u22C6",Sub:"\u22D0",Subset:"\u22D0",SubsetEqual:"\u2286",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",SuchThat:"\u220B",Sum:"\u2211",Sup:"\u22D1",Superset:"\u2283",SupersetEqual:"\u2287",Supset:"\u22D1",THORN:"\xDE",TRADE:"\u2122",TSHcy:"\u040B",TScy:"\u0426",Tab:" ",Tau:"\u03A4",Tcaron:"\u0164",Tcedil:"\u0162",Tcy:"\u0422",Tfr:"\u{1D517}",Therefore:"\u2234",Theta:"\u0398",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",Topf:"\u{1D54B}",TripleDot:"\u20DB",Tscr:"\u{1D4AF}",Tstrok:"\u0166",Uacute:"\xDA",Uarr:"\u219F",Uarrocir:"\u2949",Ubrcy:"\u040E",Ubreve:"\u016C",Ucirc:"\xDB",Ucy:"\u0423",Udblac:"\u0170",Ufr:"\u{1D518}",Ugrave:"\xD9",Umacr:"\u016A",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",Uopf:"\u{1D54C}",UpArrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",UpEquilibrium:"\u296E",UpTee:"\u22A5",UpTeeArrow:"\u21A5",Uparrow:"\u21D1",Updownarrow:"\u21D5",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",Upsilon:"\u03A5",Uring:"\u016E",Uscr:"\u{1D4B0}",Utilde:"\u0168",Uuml:"\xDC",VDash:"\u22AB",Vbar:"\u2AEB",Vcy:"\u0412",Vdash:"\u22A9",Vdashl:"\u2AE6",Vee:"\u22C1",Verbar:"\u2016",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",Vopf:"\u{1D54D}",Vscr:"\u{1D4B1}",Vvdash:"\u22AA",Wcirc:"\u0174",Wedge:"\u22C0",Wfr:"\u{1D51A}",Wopf:"\u{1D54E}",Wscr:"\u{1D4B2}",Xfr:"\u{1D51B}",Xi:"\u039E",Xopf:"\u{1D54F}",Xscr:"\u{1D4B3}",YAcy:"\u042F",YIcy:"\u0407",YUcy:"\u042E",Yacute:"\xDD",Ycirc:"\u0176",Ycy:"\u042B",Yfr:"\u{1D51C}",Yopf:"\u{1D550}",Yscr:"\u{1D4B4}",Yuml:"\u0178",ZHcy:"\u0416",Zacute:"\u0179",Zcaron:"\u017D",Zcy:"\u0417",Zdot:"\u017B",ZeroWidthSpace:"\u200B",Zeta:"\u0396",Zfr:"\u2128",Zopf:"\u2124",Zscr:"\u{1D4B5}",aacute:"\xE1",abreve:"\u0103",ac:"\u223E",acE:"\u223E\u0333",acd:"\u223F",acirc:"\xE2",acute:"\xB4",acy:"\u0430",aelig:"\xE6",af:"\u2061",afr:"\u{1D51E}",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",alpha:"\u03B1",amacr:"\u0101",amalg:"\u2A3F",amp:"&",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",aogon:"\u0105",aopf:"\u{1D552}",ap:"\u2248",apE:"\u2A70",apacir:"\u2A6F",ape:"\u224A",apid:"\u224B",apos:"'",approx:"\u2248",approxeq:"\u224A",aring:"\xE5",ascr:"\u{1D4B6}",ast:"*",asymp:"\u2248",asympeq:"\u224D",atilde:"\xE3",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",bNot:"\u2AED",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",barvee:"\u22BD",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",beta:"\u03B2",beth:"\u2136",between:"\u226C",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bnot:"\u2310",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxDL:"\u2557",boxDR:"\u2554",boxDl:"\u2556",boxDr:"\u2553",boxH:"\u2550",boxHD:"\u2566",boxHU:"\u2569",boxHd:"\u2564",boxHu:"\u2567",boxUL:"\u255D",boxUR:"\u255A",boxUl:"\u255C",boxUr:"\u2559",boxV:"\u2551",boxVH:"\u256C",boxVL:"\u2563",boxVR:"\u2560",boxVh:"\u256B",boxVl:"\u2562",boxVr:"\u255F",boxbox:"\u29C9",boxdL:"\u2555",boxdR:"\u2552",boxdl:"\u2510",boxdr:"\u250C",boxh:"\u2500",boxhD:"\u2565",boxhU:"\u2568",boxhd:"\u252C",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxuL:"\u255B",boxuR:"\u2558",boxul:"\u2518",boxur:"\u2514",boxv:"\u2502",boxvH:"\u256A",boxvL:"\u2561",boxvR:"\u255E",boxvh:"\u253C",boxvl:"\u2524",boxvr:"\u251C",bprime:"\u2035",breve:"\u02D8",brvbar:"\xA6",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",bumpeq:"\u224F",cacute:"\u0107",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",ccaps:"\u2A4D",ccaron:"\u010D",ccedil:"\xE7",ccirc:"\u0109",ccups:"\u2A4C",ccupssm:"\u2A50",cdot:"\u010B",cedil:"\xB8",cemptyv:"\u29B2",cent:"\xA2",centerdot:"\xB7",cfr:"\u{1D520}",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",chi:"\u03C7",cir:"\u25CB",cirE:"\u29C3",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledR:"\xAE",circledS:"\u24C8",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",clubs:"\u2663",clubsuit:"\u2663",colon:":",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",conint:"\u222E",copf:"\u{1D554}",coprod:"\u2210",copy:"\xA9",copysr:"\u2117",crarr:"\u21B5",cross:"\u2717",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cup:"\u222A",cupbrcap:"\u2A48",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dArr:"\u21D3",dHar:"\u2965",dagger:"\u2020",daleth:"\u2138",darr:"\u2193",dash:"\u2010",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",dcaron:"\u010F",dcy:"\u0434",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",ddotseq:"\u2A77",deg:"\xB0",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",dfr:"\u{1D521}",dharl:"\u21C3",dharr:"\u21C2",diam:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",dopf:"\u{1D555}",dot:"\u02D9",doteq:"\u2250",doteqdot:"\u2251",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",downarrow:"\u2193",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",dscr:"\u{1D4B9}",dscy:"\u0455",dsol:"\u29F6",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",dzcy:"\u045F",dzigrarr:"\u27FF",eDDot:"\u2A77",eDot:"\u2251",eacute:"\xE9",easter:"\u2A6E",ecaron:"\u011B",ecir:"\u2256",ecirc:"\xEA",ecolon:"\u2255",ecy:"\u044D",edot:"\u0117",ee:"\u2147",efDot:"\u2252",efr:"\u{1D522}",eg:"\u2A9A",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",eng:"\u014B",ensp:"\u2002",eogon:"\u0119",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",equals:"=",equest:"\u225F",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erDot:"\u2253",erarr:"\u2971",escr:"\u212F",esdot:"\u2250",esim:"\u2242",eta:"\u03B7",eth:"\xF0",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",expectation:"\u2130",exponentiale:"\u2147",fallingdotseq:"\u2252",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",ffr:"\u{1D523}",filig:"\uFB01",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",fopf:"\u{1D557}",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",gE:"\u2267",gEl:"\u2A8C",gacute:"\u01F5",gamma:"\u03B3",gammad:"\u03DD",gap:"\u2A86",gbreve:"\u011F",gcirc:"\u011D",gcy:"\u0433",gdot:"\u0121",ge:"\u2265",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",gfr:"\u{1D524}",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",gjcy:"\u0453",gl:"\u2277",glE:"\u2A92",gla:"\u2AA5",glj:"\u2AA4",gnE:"\u2269",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",gopf:"\u{1D558}",grave:"`",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",hArr:"\u21D4",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",hardcy:"\u044A",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",hbar:"\u210F",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",horbar:"\u2015",hscr:"\u{1D4BD}",hslash:"\u210F",hstrok:"\u0127",hybull:"\u2043",hyphen:"\u2010",iacute:"\xED",ic:"\u2063",icirc:"\xEE",icy:"\u0438",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",ijlig:"\u0133",imacr:"\u012B",image:"\u2111",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",int:"\u222B",intcal:"\u22BA",integers:"\u2124",intercal:"\u22BA",intlarhk:"\u2A17",intprod:"\u2A3C",iocy:"\u0451",iogon:"\u012F",iopf:"\u{1D55A}",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",iscr:"\u{1D4BE}",isin:"\u2208",isinE:"\u22F9",isindot:"\u22F5",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",itilde:"\u0129",iukcy:"\u0456",iuml:"\xEF",jcirc:"\u0135",jcy:"\u0439",jfr:"\u{1D527}",jmath:"\u0237",jopf:"\u{1D55B}",jscr:"\u{1D4BF}",jsercy:"\u0458",jukcy:"\u0454",kappa:"\u03BA",kappav:"\u03F0",kcedil:"\u0137",kcy:"\u043A",kfr:"\u{1D528}",kgreen:"\u0138",khcy:"\u0445",kjcy:"\u045C",kopf:"\u{1D55C}",kscr:"\u{1D4C0}",lAarr:"\u21DA",lArr:"\u21D0",lAtail:"\u291B",lBarr:"\u290E",lE:"\u2266",lEg:"\u2A8B",lHar:"\u2962",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",lambda:"\u03BB",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",laquo:"\xAB",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",lcaron:"\u013E",lcedil:"\u013C",lceil:"\u2308",lcub:"{",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",leftarrow:"\u2190",leftarrowtail:"\u21A2",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",leftthreetimes:"\u22CB",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",lessgtr:"\u2276",lesssim:"\u2272",lfisht:"\u297C",lfloor:"\u230A",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",ljcy:"\u0459",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",llhard:"\u296B",lltri:"\u25FA",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnE:"\u2268",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",lstrok:"\u0142",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltrPar:"\u2996",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",mDDot:"\u223A",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",mcy:"\u043C",mdash:"\u2014",measuredangle:"\u2221",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",mstpos:"\u223E",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nGg:"\u22D9\u0338",nGt:"\u226B\u20D2",nGtv:"\u226B\u0338",nLeftarrow:"\u21CD",nLeftrightarrow:"\u21CE",nLl:"\u22D8\u0338",nLt:"\u226A\u20D2",nLtv:"\u226A\u0338",nRightarrow:"\u21CF",nVDash:"\u22AF",nVdash:"\u22AE",nabla:"\u2207",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",ncaron:"\u0148",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",neArr:"\u21D7",nearhk:"\u2924",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",nexist:"\u2204",nexists:"\u2204",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",ngsim:"\u2275",ngt:"\u226F",ngtr:"\u226F",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",njcy:"\u045A",nlArr:"\u21CD",nlE:"\u2266\u0338",nlarr:"\u219A",nldr:"\u2025",nle:"\u2270",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nlsim:"\u2274",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nmid:"\u2224",nopf:"\u{1D55F}",not:"\xAC",notin:"\u2209",notinE:"\u22F9\u0338",notindot:"\u22F5\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvDash:"\u22AD",nvHarr:"\u2904",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwArr:"\u21D6",nwarhk:"\u2923",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",oS:"\u24C8",oacute:"\xF3",oast:"\u229B",ocir:"\u229A",ocirc:"\xF4",ocy:"\u043E",odash:"\u229D",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",oelig:"\u0153",ofcir:"\u29BF",ofr:"\u{1D52C}",ogon:"\u02DB",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",omacr:"\u014D",omega:"\u03C9",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",oopf:"\u{1D560}",opar:"\u29B7",operp:"\u29B9",oplus:"\u2295",or:"\u2228",orarr:"\u21BB",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oscr:"\u2134",oslash:"\xF8",osol:"\u2298",otilde:"\xF5",otimes:"\u2297",otimesas:"\u2A36",ouml:"\xF6",ovbar:"\u233D",par:"\u2225",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",pfr:"\u{1D52D}",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",pointint:"\u2A15",popf:"\u{1D561}",pound:"\xA3",pr:"\u227A",prE:"\u2AB3",prap:"\u2AB7",prcue:"\u227C",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",prime:"\u2032",primes:"\u2119",prnE:"\u2AB5",prnap:"\u2AB9",prnsim:"\u22E8",prod:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",pscr:"\u{1D4C5}",psi:"\u03C8",puncsp:"\u2008",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",qprime:"\u2057",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quot:'"',rAarr:"\u21DB",rArr:"\u21D2",rAtail:"\u291C",rBarr:"\u290F",rHar:"\u2964",race:"\u223D\u0331",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",rcaron:"\u0159",rcedil:"\u0157",rceil:"\u2309",rcub:"}",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",reg:"\xAE",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",rho:"\u03C1",rhov:"\u03F1",rightarrow:"\u2192",rightarrowtail:"\u21A3",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",rightthreetimes:"\u22CC",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",rsaquo:"\u203A",rscr:"\u{1D4C7}",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",ruluhar:"\u2968",rx:"\u211E",sacute:"\u015B",sbquo:"\u201A",sc:"\u227B",scE:"\u2AB4",scap:"\u2AB8",scaron:"\u0161",sccue:"\u227D",sce:"\u2AB0",scedil:"\u015F",scirc:"\u015D",scnE:"\u2AB6",scnap:"\u2ABA",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",seArr:"\u21D8",searhk:"\u2925",searr:"\u2198",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",shchcy:"\u0449",shcy:"\u0448",shortmid:"\u2223",shortparallel:"\u2225",shy:"\xAD",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",square:"\u25A1",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",subE:"\u2AC5",subdot:"\u2ABD",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",sum:"\u2211",sung:"\u266A",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",sup:"\u2283",supE:"\u2AC6",supdot:"\u2ABE",supdsub:"\u2AD8",supe:"\u2287",supedot:"\u2AC4",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swArr:"\u21D9",swarhk:"\u2926",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",target:"\u2316",tau:"\u03C4",tbrk:"\u23B4",tcaron:"\u0165",tcedil:"\u0163",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",thorn:"\xFE",tilde:"\u02DC",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",tscr:"\u{1D4C9}",tscy:"\u0446",tshcy:"\u045B",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",uArr:"\u21D1",uHar:"\u2963",uacute:"\xFA",uarr:"\u2191",ubrcy:"\u045E",ubreve:"\u016D",ucirc:"\xFB",ucy:"\u0443",udarr:"\u21C5",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",ufr:"\u{1D532}",ugrave:"\xF9",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",umacr:"\u016B",uml:"\xA8",uogon:"\u0173",uopf:"\u{1D566}",uparrow:"\u2191",updownarrow:"\u2195",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",upsi:"\u03C5",upsih:"\u03D2",upsilon:"\u03C5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",uring:"\u016F",urtri:"\u25F9",uscr:"\u{1D4CA}",utdot:"\u22F0",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",uuml:"\xFC",uwangle:"\u29A7",vArr:"\u21D5",vBar:"\u2AE8",vBarv:"\u2AE9",vDash:"\u22A8",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vcy:"\u0432",vdash:"\u22A2",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",vert:"|",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",vzigzag:"\u299A",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",wfr:"\u{1D534}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",yacute:"\xFD",yacy:"\u044F",ycirc:"\u0177",ycy:"\u044B",yen:"\xA5",yfr:"\u{1D536}",yicy:"\u0457",yopf:"\u{1D56A}",yscr:"\u{1D4CE}",yucy:"\u044E",yuml:"\xFF",zacute:"\u017A",zcaron:"\u017E",zcy:"\u0437",zdot:"\u017C",zeetrf:"\u2128",zeta:"\u03B6",zfr:"\u{1D537}",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"},pe={0:65533,128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376};function _0(e){return e.replace(/&(?:[a-zA-Z]+|#[xX][\da-fA-F]+|#\d+);/g,u=>{if(u.charAt(1)==="#"){let i=u.charAt(2),n=i==="X"||i==="x"?parseInt(u.slice(3),16):parseInt(u.slice(2),10);return M0(n)}return j0[u.slice(1,-1)]||u})}function M0(e){return e>=55296&&e<=57343||e>1114111?"\uFFFD":(e in pe&&(e=pe[e]),String.fromCodePoint(e))}function U0(e,u){return e.startPos=e.tokenPos=e.index,e.startColumn=e.colPos=e.column,e.startLine=e.linePos=e.line,e.token=C[e.currentChar]&8192?J0(e,u):xe(e,u,0),e.token}function J0(e,u){let i=e.currentChar,n=r(e),t=e.index;for(;n!==i;)e.index>=e.end&&f(e,14),n=r(e);return n!==i&&f(e,14),e.tokenValue=e.source.slice(t,e.index),r(e),u&512&&(e.tokenRaw=e.source.slice(e.tokenPos,e.index)),134283267}function j2(e,u){if(e.startPos=e.tokenPos=e.index,e.startColumn=e.colPos=e.column,e.startLine=e.linePos=e.line,e.index>=e.end)return e.token=1048576;switch(Ge[e.source.charCodeAt(e.index)]){case 8456258:{r(e),e.currentChar===47?(r(e),e.token=25):e.token=8456258;break}case 2162700:{r(e),e.token=2162700;break}default:{let n=0;for(;e.index2?o-2:0),c=2;c1&&t&32&&e.token&262144&&f(e,58,Z[e.token&255]),l}function cu(e,u,i,n,t){let{token:o,tokenPos:l,linePos:c,colPos:s}=e,m=null,k=Du(e,u,i,n,t,l,c,s);return e.token===1077936157?(E(e,u|32768),m=K(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos),(t&32||(o&2097152)<1)&&(e.token===274549||e.token===8738868&&(o&2097152||(n&4)<1||u&1024))&&L(l,e.line,e.index-3,57,e.token===274549?"of":"in")):(n&16||(o&2097152)>0)&&(e.token&262144)!==262144&&f(e,56,n&16?"const":"destructuring"),v(e,u,l,c,s,{type:"VariableDeclarator",id:k,init:m})}function gt(e,u,i,n,t,o,l){E(e,u);let c=(u&4194304)>0&&M(e,u,209008);q(e,u|32768,67174411),i&&(i=i2(i,1));let s=null,m=null,k=0,h=null,d=e.token===86090||e.token===241739||e.token===86092,y,{token:w,tokenPos:D,linePos:F,colPos:O}=e;if(d?w===241739?(h=$(e,u,0),e.token&2240512?(e.token===8738868?u&1024&&f(e,64):h=v(e,u,D,F,O,{type:"VariableDeclaration",kind:"let",declarations:z2(e,u|134217728,i,8,32)}),e.assignable=1):u&1024?f(e,64):(d=!1,e.assignable=1,h=H(e,u,h,0,0,D,F,O),e.token===274549&&f(e,111))):(E(e,u),h=v(e,u,D,F,O,w===86090?{type:"VariableDeclaration",kind:"var",declarations:z2(e,u|134217728,i,4,32)}:{type:"VariableDeclaration",kind:"const",declarations:z2(e,u|134217728,i,16,32)}),e.assignable=1):w===1074790417?c&&f(e,79):(w&2097152)===2097152?(h=w===2162700?b2(e,u,void 0,1,0,0,2,32,D,F,O):m2(e,u,void 0,1,0,0,2,32,D,F,O),k=e.destructible,u&256&&k&64&&f(e,60),e.assignable=k&16?2:1,h=H(e,u|134217728,h,0,0,e.tokenPos,e.linePos,e.colPos)):h=h2(e,u|134217728,1,0,1,D,F,O),(e.token&262144)===262144){if(e.token===274549){e.assignable&2&&f(e,77,c?"await":"of"),r2(e,h),E(e,u|32768),y=K(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos),q(e,u|32768,16);let I=p2(e,u,i,n);return v(e,u,t,o,l,{type:"ForOfStatement",left:h,right:y,body:I,await:c})}e.assignable&2&&f(e,77,"in"),r2(e,h),E(e,u|32768),c&&f(e,79),y=o2(e,u,0,1,e.tokenPos,e.linePos,e.colPos),q(e,u|32768,16);let x=p2(e,u,i,n);return v(e,u,t,o,l,{type:"ForInStatement",body:x,left:h,right:y})}c&&f(e,79),d||(k&8&&e.token!==1077936157&&f(e,77,"loop"),h=Q(e,u|134217728,0,0,D,F,O,h)),e.token===18&&(h=O2(e,u,0,e.tokenPos,e.linePos,e.colPos,h)),q(e,u|32768,1074790417),e.token!==1074790417&&(s=o2(e,u,0,1,e.tokenPos,e.linePos,e.colPos)),q(e,u|32768,1074790417),e.token!==16&&(m=o2(e,u,0,1,e.tokenPos,e.linePos,e.colPos)),q(e,u|32768,16);let N=p2(e,u,i,n);return v(e,u,t,o,l,{type:"ForStatement",init:h,test:s,update:m,body:N})}function su(e,u,i){return J1(u,e.token)||f(e,114),(e.token&537079808)===537079808&&f(e,115),i&&L2(e,u,i,e.tokenValue,8,0),$(e,u,0)}function ht(e,u,i){let n=e.tokenPos,t=e.linePos,o=e.colPos;E(e,u);let l=null,{tokenPos:c,linePos:s,colPos:m}=e,k=[];if(e.token===134283267)l=c2(e,u);else{if(e.token&143360){let h=su(e,u,i);if(k=[v(e,u,c,s,m,{type:"ImportDefaultSpecifier",local:h})],M(e,u,18))switch(e.token){case 8457014:k.push(au(e,u,i));break;case 2162700:du(e,u,i,k);break;default:f(e,104)}}else switch(e.token){case 8457014:k=[au(e,u,i)];break;case 2162700:du(e,u,i,k);break;case 67174411:return hu(e,u,n,t,o);case 67108877:return gu(e,u,n,t,o);default:f(e,28,Z[e.token&255])}l=mt(e,u)}return s2(e,u|32768),v(e,u,n,t,o,{type:"ImportDeclaration",specifiers:k,source:l})}function au(e,u,i){let{tokenPos:n,linePos:t,colPos:o}=e;return E(e,u),q(e,u,77934),(e.token&134217728)===134217728&&L(n,e.line,e.index,28,Z[e.token&255]),v(e,u,n,t,o,{type:"ImportNamespaceSpecifier",local:su(e,u,i)})}function mt(e,u){return M(e,u,12404),e.token!==134283267&&f(e,102,"Import"),c2(e,u)}function du(e,u,i,n){for(E(e,u);e.token&143360;){let{token:t,tokenValue:o,tokenPos:l,linePos:c,colPos:s}=e,m=$(e,u,0),k;M(e,u,77934)?((e.token&134217728)===134217728||e.token===18?f(e,103):l1(e,u,16,e.token,0),o=e.tokenValue,k=$(e,u,0)):(l1(e,u,16,t,0),k=m),i&&L2(e,u,i,o,8,0),n.push(v(e,u,l,c,s,{type:"ImportSpecifier",local:k,imported:m})),e.token!==1074790415&&q(e,u,18)}return q(e,u,1074790415),n}function gu(e,u,i,n,t){let o=bu(e,u,v(e,u,i,n,t,{type:"Identifier",name:"import"}),i,n,t);return o=H(e,u,o,0,0,i,n,t),o=Q(e,u,0,0,i,n,t,o),X2(e,u,o,i,n,t)}function hu(e,u,i,n,t){let o=ku(e,u,0,i,n,t);return o=H(e,u,o,0,0,i,n,t),X2(e,u,o,i,n,t)}function bt(e,u,i){let n=e.tokenPos,t=e.linePos,o=e.colPos;E(e,u|32768);let l=[],c=null,s=null,m;if(M(e,u|32768,20563)){switch(e.token){case 86106:{c=I2(e,u,i,4,1,1,0,e.tokenPos,e.linePos,e.colPos);break}case 133:case 86096:c=x1(e,u,i,1,e.tokenPos,e.linePos,e.colPos);break;case 209007:let{tokenPos:k,linePos:h,colPos:d}=e;c=$(e,u,0);let{flags:y}=e;(y&1)<1&&(e.token===86106?c=I2(e,u,i,4,1,1,1,k,h,d):e.token===67174411?(c=G1(e,u,c,1,1,0,y,k,h,d),c=H(e,u,c,0,0,k,h,d),c=Q(e,u,0,0,k,h,d,c)):e.token&143360&&(i&&(i=c1(e,u,e.tokenValue)),c=$(e,u,0),c=e1(e,u,i,[c],1,k,h,d)));break;default:c=K(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos),s2(e,u|32768)}return i&&M2(e,"default"),v(e,u,n,t,o,{type:"ExportDefaultDeclaration",declaration:c})}switch(e.token){case 8457014:{E(e,u);let y=null;return M(e,u,77934)&&(i&&M2(e,e.tokenValue),y=$(e,u,0)),q(e,u,12404),e.token!==134283267&&f(e,102,"Export"),s=c2(e,u),s2(e,u|32768),v(e,u,n,t,o,{type:"ExportAllDeclaration",source:s,exported:y})}case 2162700:{E(e,u);let y=[],w=[];for(;e.token&143360;){let{tokenPos:D,tokenValue:F,linePos:O,colPos:N}=e,x=$(e,u,0),I;e.token===77934?(E(e,u),(e.token&134217728)===134217728&&f(e,103),i&&(y.push(e.tokenValue),w.push(F)),I=$(e,u,0)):(i&&(y.push(e.tokenValue),w.push(e.tokenValue)),I=x),l.push(v(e,u,D,O,N,{type:"ExportSpecifier",local:x,exported:I})),e.token!==1074790415&&q(e,u,18)}if(q(e,u,1074790415),M(e,u,12404))e.token!==134283267&&f(e,102,"Export"),s=c2(e,u);else if(i){let D=0,F=y.length;for(;D0)&8738868,k,h;for(e.assignable=2;e.token&8454144&&(k=e.token,h=k&3840,(k&524288&&c&268435456||c&524288&&k&268435456)&&f(e,159),!(h+((k===8457273)<<8)-((m===k)<<12)<=l));)E(e,u|32768),s=v(e,u,n,t,o,{type:k&524288||k&268435456?"LogicalExpression":"BinaryExpression",left:s,right:T2(e,u,i,e.tokenPos,e.linePos,e.colPos,h,k,h2(e,u,0,i,1,e.tokenPos,e.linePos,e.colPos)),operator:Z[k&255]});return e.token===1077936157&&f(e,24),s}function kt(e,u,i,n,t,o,l){i||f(e,0);let c=e.token;E(e,u|32768);let s=h2(e,u,0,l,1,e.tokenPos,e.linePos,e.colPos);return e.token===8457273&&f(e,31),u&1024&&c===16863278&&(s.type==="Identifier"?f(e,117):$0(s)&&f(e,123)),e.assignable=2,v(e,u,n,t,o,{type:"UnaryExpression",operator:Z[c&255],argument:s,prefix:!0})}function rt(e,u,i,n,t,o,l,c,s,m){let{token:k}=e,h=$(e,u,o),{flags:d}=e;if((d&1)<1){if(e.token===86106)return vu(e,u,1,i,c,s,m);if((e.token&143360)===143360)return n||f(e,0),Pu(e,u,t,c,s,m)}return!l&&e.token===67174411?G1(e,u,h,t,1,0,d,c,s,m):e.token===10?($1(e,u,k,1),l&&f(e,48),h1(e,u,e.tokenValue,h,l,t,0,c,s,m)):h}function vt(e,u,i,n,t,o,l){if(i&&(e.destructible|=256),u&2097152){E(e,u|32768),u&8388608&&f(e,30),n||f(e,24),e.token===22&&f(e,120);let c=null,s=!1;return(e.flags&1)<1&&(s=M(e,u|32768,8457014),(e.token&77824||s)&&(c=K(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos))),e.assignable=2,v(e,u,t,o,l,{type:"YieldExpression",argument:c,delegate:s})}return u&1024&&f(e,94,"yield"),Q1(e,u,t,o,l)}function yt(e,u,i,n,t,o,l){if(n&&(e.destructible|=128),u&4194304||u&2048&&u&8192){i&&f(e,0),u&8388608&&L(e.index,e.line,e.index,29),E(e,u|32768);let c=h2(e,u,0,0,1,e.tokenPos,e.linePos,e.colPos);return e.token===8457273&&f(e,31),e.assignable=2,v(e,u,t,o,l,{type:"AwaitExpression",argument:c})}return u&2048&&f(e,95),Q1(e,u,t,o,l)}function d1(e,u,i,n,t,o){let{tokenPos:l,linePos:c,colPos:s}=e;q(e,u|32768,2162700);let m=[],k=u;if(e.token!==1074790415){for(;e.token===134283267;){let{index:h,tokenPos:d,tokenValue:y,token:w}=e,D=c2(e,u);eu(e,h,d,y)&&(u|=1024,e.flags&128&&L(e.index,e.line,e.tokenPos,63),e.flags&64&&L(e.index,e.line,e.tokenPos,8)),m.push(z1(e,u,D,w,d,e.linePos,e.colPos))}u&1024&&(t&&((t&537079808)===537079808&&f(e,115),(t&36864)===36864&&f(e,38)),e.flags&512&&f(e,115),e.flags&256&&f(e,114)),u&64&&i&&o!==void 0&&(k&1024)<1&&(u&8192)<1&&A(o)}for(e.flags=(e.flags|512|256|64)^832,e.destructible=(e.destructible|256)^256;e.token!==1074790415;)m.push(G2(e,u,i,4,{}));return q(e,n&24?u|32768:u,1074790415),e.flags&=-193,e.token===1077936157&&f(e,24),v(e,u,l,c,s,{type:"BlockStatement",body:m})}function At(e,u,i,n,t){switch(E(e,u),e.token){case 67108991:f(e,161);case 67174411:{(u&524288)<1&&f(e,26),u&16384&&f(e,27),e.assignable=2;break}case 69271571:case 67108877:{(u&262144)<1&&f(e,27),u&16384&&f(e,27),e.assignable=1;break}default:f(e,28,"super")}return v(e,u,i,n,t,{type:"Super"})}function h2(e,u,i,n,t,o,l,c){let s=d2(e,u,2,0,i,0,n,t,o,l,c);return H(e,u,s,n,0,o,l,c)}function Pt(e,u,i,n,t,o){e.assignable&2&&f(e,52);let{token:l}=e;return E(e,u),e.assignable=2,v(e,u,n,t,o,{type:"UpdateExpression",argument:i,operator:Z[l&255],prefix:!1})}function H(e,u,i,n,t,o,l,c){if((e.token&33619968)===33619968&&(e.flags&1)<1)i=Pt(e,u,i,o,l,c);else if((e.token&67108864)===67108864){switch(u=(u|134217728)^134217728,e.token){case 67108877:{E(e,(u|1073741824|8192)^8192),e.assignable=1;let s=mu(e,u);i=v(e,u,o,l,c,{type:"MemberExpression",object:i,computed:!1,property:s});break}case 69271571:{let s=!1;(e.flags&2048)===2048&&(s=!0,e.flags=(e.flags|2048)^2048),E(e,u|32768);let{tokenPos:m,linePos:k,colPos:h}=e,d=o2(e,u,n,1,m,k,h);q(e,u,20),e.assignable=1,i=v(e,u,o,l,c,{type:"MemberExpression",object:i,computed:!0,property:d}),s&&(e.flags|=2048);break}case 67174411:{if((e.flags&1024)===1024)return e.flags=(e.flags|1024)^1024,i;let s=!1;(e.flags&2048)===2048&&(s=!0,e.flags=(e.flags|2048)^2048);let m=Z1(e,u,n);e.assignable=2,i=v(e,u,o,l,c,{type:"CallExpression",callee:i,arguments:m}),s&&(e.flags|=2048);break}case 67108991:{E(e,(u|1073741824|8192)^8192),e.flags|=2048,e.assignable=2,i=Et(e,u,i,o,l,c);break}default:(e.flags&2048)===2048&&f(e,160),e.assignable=2,i=v(e,u,o,l,c,{type:"TaggedTemplateExpression",tag:i,quasi:e.token===67174408?Y1(e,u|65536):K1(e,u,e.tokenPos,e.linePos,e.colPos)})}i=H(e,u,i,0,1,o,l,c)}return t===0&&(e.flags&2048)===2048&&(e.flags=(e.flags|2048)^2048,i=v(e,u,o,l,c,{type:"ChainExpression",expression:i})),i}function Et(e,u,i,n,t,o){let l=!1,c;if((e.token===69271571||e.token===67174411)&&(e.flags&2048)===2048&&(l=!0,e.flags=(e.flags|2048)^2048),e.token===69271571){E(e,u|32768);let{tokenPos:s,linePos:m,colPos:k}=e,h=o2(e,u,0,1,s,m,k);q(e,u,20),e.assignable=2,c=v(e,u,n,t,o,{type:"MemberExpression",object:i,computed:!0,optional:!0,property:h})}else if(e.token===67174411){let s=Z1(e,u,0);e.assignable=2,c=v(e,u,n,t,o,{type:"CallExpression",callee:i,arguments:s,optional:!0})}else{(e.token&143360)<1&&f(e,154);let s=$(e,u,0);e.assignable=2,c=v(e,u,n,t,o,{type:"MemberExpression",object:i,computed:!1,optional:!0,property:s})}return l&&(e.flags|=2048),c}function mu(e,u){return(e.token&143360)<1&&e.token!==131&&f(e,154),u&1&&e.token===131?r1(e,u,e.tokenPos,e.linePos,e.colPos):$(e,u,0)}function Ct(e,u,i,n,t,o,l){i&&f(e,53),n||f(e,0);let{token:c}=e;E(e,u|32768);let s=h2(e,u,0,0,1,e.tokenPos,e.linePos,e.colPos);return e.assignable&2&&f(e,52),e.assignable=2,v(e,u,t,o,l,{type:"UpdateExpression",argument:s,operator:Z[c&255],prefix:!0})}function d2(e,u,i,n,t,o,l,c,s,m,k){if((e.token&143360)===143360){switch(e.token){case 209008:return yt(e,u,n,l,s,m,k);case 241773:return vt(e,u,l,t,s,m,k);case 209007:return rt(e,u,l,c,t,o,n,s,m,k)}let{token:h,tokenValue:d}=e,y=$(e,u|65536,o);return e.token===10?(c||f(e,0),$1(e,u,h,1),h1(e,u,d,y,n,t,0,s,m,k)):(u&16384&&h===537079928&&f(e,126),h===241739&&(u&1024&&f(e,109),i&24&&f(e,97)),e.assignable=u&1024&&(h&537079808)===537079808?2:1,y)}if((e.token&134217728)===134217728)return c2(e,u);switch(e.token){case 33619995:case 33619996:return Ct(e,u,n,c,s,m,k);case 16863278:case 16842800:case 16842801:case 25233970:case 25233971:case 16863277:case 16863279:return kt(e,u,c,s,m,k,l);case 86106:return vu(e,u,0,l,s,m,k);case 2162700:return Ft(e,u,t?0:1,l,s,m,k);case 69271571:return St(e,u,t?0:1,l,s,m,k);case 67174411:return Ot(e,u,t,1,0,s,m,k);case 86021:case 86022:case 86023:return qt(e,u,s,m,k);case 86113:return Bt(e,u);case 65540:return Rt(e,u,s,m,k);case 133:case 86096:return Vt(e,u,l,s,m,k);case 86111:return At(e,u,s,m,k);case 67174409:return K1(e,u,s,m,k);case 67174408:return Y1(e,u);case 86109:return Tt(e,u,l,s,m,k);case 134283389:return ru(e,u,s,m,k);case 131:return r1(e,u,s,m,k);case 86108:return Dt(e,u,n,l,s,m,k);case 8456258:if(u&16)return ee(e,u,1,s,m,k);default:if(J1(u,e.token))return Q1(e,u,s,m,k);f(e,28,Z[e.token&255])}}function Dt(e,u,i,n,t,o,l){let c=$(e,u,0);return e.token===67108877?bu(e,u,c,t,o,l):(i&&f(e,137),c=ku(e,u,n,t,o,l),e.assignable=2,H(e,u,c,n,0,t,o,l))}function bu(e,u,i,n,t,o){return u&2048||f(e,163),E(e,u),e.token!==143495&&e.tokenValue!=="meta"&&f(e,28,Z[e.token&255]),e.assignable=2,v(e,u,n,t,o,{type:"MetaProperty",meta:i,property:$(e,u,0)})}function ku(e,u,i,n,t,o){q(e,u|32768,67174411),e.token===14&&f(e,138);let l=K(e,u,1,0,i,e.tokenPos,e.linePos,e.colPos);return q(e,u,16),v(e,u,n,t,o,{type:"ImportExpression",source:l})}function ru(e,u,i,n,t){let{tokenRaw:o,tokenValue:l}=e;return E(e,u),e.assignable=2,v(e,u,i,n,t,u&512?{type:"Literal",value:l,bigint:o.slice(0,-1),raw:o}:{type:"Literal",value:l,bigint:o.slice(0,-1)})}function K1(e,u,i,n,t){e.assignable=2;let{tokenValue:o,tokenRaw:l,tokenPos:c,linePos:s,colPos:m}=e;q(e,u,67174409);let k=[g1(e,u,o,l,c,s,m,!0)];return v(e,u,i,n,t,{type:"TemplateLiteral",expressions:[],quasis:k})}function Y1(e,u){u=(u|134217728)^134217728;let{tokenValue:i,tokenRaw:n,tokenPos:t,linePos:o,colPos:l}=e;q(e,u|32768,67174408);let c=[g1(e,u,i,n,t,o,l,!1)],s=[o2(e,u,0,1,e.tokenPos,e.linePos,e.colPos)];for(e.token!==1074790415&&f(e,80);(e.token=I0(e,u))!==67174409;){let{tokenValue:m,tokenRaw:k,tokenPos:h,linePos:d,colPos:y}=e;q(e,u|32768,67174408),c.push(g1(e,u,m,k,h,d,y,!1)),s.push(o2(e,u,0,1,e.tokenPos,e.linePos,e.colPos)),e.token!==1074790415&&f(e,80)}{let{tokenValue:m,tokenRaw:k,tokenPos:h,linePos:d,colPos:y}=e;q(e,u,67174409),c.push(g1(e,u,m,k,h,d,y,!0))}return v(e,u,t,o,l,{type:"TemplateLiteral",expressions:s,quasis:c})}function g1(e,u,i,n,t,o,l,c){let s=v(e,u,t,o,l,{type:"TemplateElement",value:{cooked:i,raw:n},tail:c}),m=c?1:2;return u&2&&(s.start+=1,s.range[0]+=1,s.end-=m,s.range[1]-=m),u&4&&(s.loc.start.column+=1,s.loc.end.column-=m),s}function wt(e,u,i,n,t){u=(u|134217728)^134217728,q(e,u|32768,14);let o=K(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos);return e.assignable=1,v(e,u,i,n,t,{type:"SpreadElement",argument:o})}function Z1(e,u,i){E(e,u|32768);let n=[];if(e.token===16)return E(e,u),n;for(;e.token!==16&&(e.token===14?n.push(wt(e,u,e.tokenPos,e.linePos,e.colPos)):n.push(K(e,u,1,0,i,e.tokenPos,e.linePos,e.colPos)),!(e.token!==18||(E(e,u|32768),e.token===16))););return q(e,u,16),n}function $(e,u,i){let{tokenValue:n,tokenPos:t,linePos:o,colPos:l}=e;return E(e,u),v(e,u,t,o,l,u&268435456?{type:"Identifier",name:n,pattern:i===1}:{type:"Identifier",name:n})}function c2(e,u){let{tokenValue:i,tokenRaw:n,tokenPos:t,linePos:o,colPos:l}=e;return e.token===134283389?ru(e,u,t,o,l):(E(e,u),e.assignable=2,v(e,u,t,o,l,u&512?{type:"Literal",value:i,raw:n}:{type:"Literal",value:i}))}function qt(e,u,i,n,t){let o=Z[e.token&255],l=e.token===86023?null:o==="true";return E(e,u),e.assignable=2,v(e,u,i,n,t,u&512?{type:"Literal",value:l,raw:o}:{type:"Literal",value:l})}function Bt(e,u){let{tokenPos:i,linePos:n,colPos:t}=e;return E(e,u),e.assignable=2,v(e,u,i,n,t,{type:"ThisExpression"})}function I2(e,u,i,n,t,o,l,c,s,m){E(e,u|32768);let k=t?M1(e,u,8457014):0,h=null,d,y=i?_2():void 0;if(e.token===67174411)(o&1)<1&&f(e,37,"Function");else{let F=n&4&&((u&8192)<1||(u&2048)<1)?4:64;uu(e,u|(u&3072)<<11,e.token),i&&(F&4?tu(e,u,i,e.tokenValue,F):L2(e,u,i,e.tokenValue,F,n),y=i2(y,256),o&&o&2&&M2(e,e.tokenValue)),d=e.token,e.token&143360?h=$(e,u,0):f(e,28,Z[e.token&255])}u=(u|32243712)^32243712|67108864|l*2+k<<21|(k?0:1073741824),i&&(y=i2(y,512));let w=Au(e,u|8388608,y,0,1),D=d1(e,(u|8192|4096|131072)^143360,i?i2(y,128):y,8,d,i?y.scopeError:void 0);return v(e,u,c,s,m,{type:"FunctionDeclaration",id:h,params:w,body:D,async:l===1,generator:k===1})}function vu(e,u,i,n,t,o,l){E(e,u|32768);let c=M1(e,u,8457014),s=i*2+c<<21,m=null,k,h=u&64?_2():void 0;(e.token&176128)>0&&(uu(e,(u|32243712)^32243712|s,e.token),h&&(h=i2(h,256)),k=e.token,m=$(e,u,0)),u=(u|32243712)^32243712|67108864|s|(c?0:1073741824),h&&(h=i2(h,512));let d=Au(e,u|8388608,h,n,1),y=d1(e,u&-134377473,h&&i2(h,128),0,k,void 0);return e.assignable=2,v(e,u,t,o,l,{type:"FunctionExpression",id:m,params:d,body:y,async:i===1,generator:c===1})}function St(e,u,i,n,t,o,l){let c=m2(e,u,void 0,i,n,0,2,0,t,o,l);return u&256&&e.destructible&64&&f(e,60),e.destructible&8&&f(e,59),c}function m2(e,u,i,n,t,o,l,c,s,m,k){E(e,u|32768);let h=[],d=0;for(u=(u|134217728)^134217728;e.token!==20;)if(M(e,u|32768,18))h.push(null);else{let w,{token:D,tokenPos:F,linePos:O,colPos:N,tokenValue:x}=e;if(D&143360)if(w=d2(e,u,l,0,1,0,t,1,F,O,N),e.token===1077936157){e.assignable&2&&f(e,24),E(e,u|32768),i&&B2(e,u,i,x,l,c);let I=K(e,u,1,1,t,e.tokenPos,e.linePos,e.colPos);w=v(e,u,F,O,N,o?{type:"AssignmentPattern",left:w,right:I}:{type:"AssignmentExpression",operator:"=",left:w,right:I}),d|=e.destructible&256?256:0|e.destructible&128?128:0}else e.token===18||e.token===20?(e.assignable&2?d|=16:i&&B2(e,u,i,x,l,c),d|=e.destructible&256?256:0|e.destructible&128?128:0):(d|=l&1?32:(l&2)<1?16:0,w=H(e,u,w,t,0,F,O,N),e.token!==18&&e.token!==20?(e.token!==1077936157&&(d|=16),w=Q(e,u,t,o,F,O,N,w)):e.token!==1077936157&&(d|=e.assignable&2?16:32));else D&2097152?(w=e.token===2162700?b2(e,u,i,0,t,o,l,c,F,O,N):m2(e,u,i,0,t,o,l,c,F,O,N),d|=e.destructible,e.assignable=e.destructible&16?2:1,e.token===18||e.token===20?e.assignable&2&&(d|=16):e.destructible&8?f(e,68):(w=H(e,u,w,t,0,F,O,N),d=e.assignable&2?16:0,e.token!==18&&e.token!==20?w=Q(e,u,t,o,F,O,N,w):e.token!==1077936157&&(d|=e.assignable&2?16:32))):D===14?(w=W2(e,u,i,20,l,c,0,t,o,F,O,N),d|=e.destructible,e.token!==18&&e.token!==20&&f(e,28,Z[e.token&255])):(w=h2(e,u,1,0,1,F,O,N),e.token!==18&&e.token!==20?(w=Q(e,u,t,o,F,O,N,w),(l&3)<1&&D===67174411&&(d|=16)):e.assignable&2?d|=16:D===67174411&&(d|=e.assignable&1&&l&3?32:16));if(h.push(w),M(e,u|32768,18)){if(e.token===20)break}else break}q(e,u,20);let y=v(e,u,s,m,k,{type:o?"ArrayPattern":"ArrayExpression",elements:h});return!n&&e.token&4194304?yu(e,u,d,t,o,s,m,k,y):(e.destructible=d,y)}function yu(e,u,i,n,t,o,l,c,s){e.token!==1077936157&&f(e,24),E(e,u|32768),i&16&&f(e,24),t||r2(e,s);let{tokenPos:m,linePos:k,colPos:h}=e,d=K(e,u,1,1,n,m,k,h);return e.destructible=(i|64|8)^72|(e.destructible&128?128:0)|(e.destructible&256?256:0),v(e,u,o,l,c,t?{type:"AssignmentPattern",left:s,right:d}:{type:"AssignmentExpression",left:s,operator:"=",right:d})}function W2(e,u,i,n,t,o,l,c,s,m,k,h){E(e,u|32768);let d=null,y=0,{token:w,tokenValue:D,tokenPos:F,linePos:O,colPos:N}=e;if(w&143360)e.assignable=1,d=d2(e,u,t,0,1,0,c,1,F,O,N),w=e.token,d=H(e,u,d,c,0,F,O,N),e.token!==18&&e.token!==n&&(e.assignable&2&&e.token===1077936157&&f(e,68),y|=16,d=Q(e,u,c,s,F,O,N,d)),e.assignable&2?y|=16:w===n||w===18?i&&B2(e,u,i,D,t,o):y|=32,y|=e.destructible&128?128:0;else if(w===n)f(e,39);else if(w&2097152)d=e.token===2162700?b2(e,u,i,1,c,s,t,o,F,O,N):m2(e,u,i,1,c,s,t,o,F,O,N),w=e.token,w!==1077936157&&w!==n&&w!==18?(e.destructible&8&&f(e,68),d=H(e,u,d,c,0,F,O,N),y|=e.assignable&2?16:0,(e.token&4194304)===4194304?(e.token!==1077936157&&(y|=16),d=Q(e,u,c,s,F,O,N,d)):((e.token&8454144)===8454144&&(d=T2(e,u,1,F,O,N,4,w,d)),M(e,u|32768,22)&&(d=U2(e,u,d,F,O,N)),y|=e.assignable&2?16:32)):y|=n===1074790415&&w!==1077936157?16:e.destructible;else{y|=32,d=h2(e,u,1,c,1,e.tokenPos,e.linePos,e.colPos);let{token:x,tokenPos:I,linePos:W,colPos:P}=e;return x===1077936157&&x!==n&&x!==18?(e.assignable&2&&f(e,24),d=Q(e,u,c,s,I,W,P,d),y|=16):(x===18?y|=16:x!==n&&(d=Q(e,u,c,s,I,W,P,d)),y|=e.assignable&1?32:16),e.destructible=y,e.token!==n&&e.token!==18&&f(e,155),v(e,u,m,k,h,{type:s?"RestElement":"SpreadElement",argument:d})}if(e.token!==n)if(t&1&&(y|=l?16:32),M(e,u|32768,1077936157)){y&16&&f(e,24),r2(e,d);let x=K(e,u,1,1,c,e.tokenPos,e.linePos,e.colPos);d=v(e,u,F,O,N,s?{type:"AssignmentPattern",left:d,right:x}:{type:"AssignmentExpression",left:d,operator:"=",right:x}),y=16}else y|=16;return e.destructible=y,v(e,u,m,k,h,{type:s?"RestElement":"SpreadElement",argument:d})}function v2(e,u,i,n,t,o,l){let c=(i&64)<1?31981568:14680064;u=(u|c)^c|(i&88)<<18|100925440;let s=u&64?i2(_2(),512):void 0,m=Lt(e,u|8388608,s,i,1,n);s&&(s=i2(s,128));let k=d1(e,u&-134230017,s,0,void 0,void 0);return v(e,u,t,o,l,{type:"FunctionExpression",params:m,body:k,async:(i&16)>0,generator:(i&8)>0,id:null})}function Ft(e,u,i,n,t,o,l){let c=b2(e,u,void 0,i,n,0,2,0,t,o,l);return u&256&&e.destructible&64&&f(e,60),e.destructible&8&&f(e,59),c}function b2(e,u,i,n,t,o,l,c,s,m,k){E(e,u);let h=[],d=0,y=0;for(u=(u|134217728)^134217728;e.token!==1074790415;){let{token:D,tokenValue:F,linePos:O,colPos:N,tokenPos:x}=e;if(D===14)h.push(W2(e,u,i,1074790415,l,c,0,t,o,x,O,N));else{let I=0,W=null,P,y2=e.token;if(e.token&143360||e.token===121)if(W=$(e,u,0),e.token===18||e.token===1074790415||e.token===1077936157)if(I|=4,u&1024&&(D&537079808)===537079808?d|=16:l1(e,u,l,D,0),i&&B2(e,u,i,F,l,c),M(e,u|32768,1077936157)){d|=8;let R=K(e,u,1,1,t,e.tokenPos,e.linePos,e.colPos);d|=e.destructible&256?256:0|e.destructible&128?128:0,P=v(e,u,x,O,N,{type:"AssignmentPattern",left:u&-2147483648?Object.assign({},W):W,right:R})}else d|=(D===209008?128:0)|(D===121?16:0),P=u&-2147483648?Object.assign({},W):W;else if(M(e,u|32768,21)){let{tokenPos:R,linePos:_,colPos:j}=e;if(F==="__proto__"&&y++,e.token&143360){let J2=e.token,Y2=e.tokenValue;d|=y2===121?16:0,P=d2(e,u,l,0,1,0,t,1,R,_,j);let{token:C2}=e;P=H(e,u,P,t,0,R,_,j),e.token===18||e.token===1074790415?C2===1077936157||C2===1074790415||C2===18?(d|=e.destructible&128?128:0,e.assignable&2?d|=16:i&&(J2&143360)===143360&&B2(e,u,i,Y2,l,c)):d|=e.assignable&1?32:16:(e.token&4194304)===4194304?(e.assignable&2?d|=16:C2!==1077936157?d|=32:i&&B2(e,u,i,Y2,l,c),P=Q(e,u,t,o,R,_,j,P)):(d|=16,(e.token&8454144)===8454144&&(P=T2(e,u,1,R,_,j,4,C2,P)),M(e,u|32768,22)&&(P=U2(e,u,P,R,_,j)))}else(e.token&2097152)===2097152?(P=e.token===69271571?m2(e,u,i,0,t,o,l,c,R,_,j):b2(e,u,i,0,t,o,l,c,R,_,j),d=e.destructible,e.assignable=d&16?2:1,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):e.destructible&8?f(e,68):(P=H(e,u,P,t,0,R,_,j),d=e.assignable&2?16:0,(e.token&4194304)===4194304?P=a1(e,u,t,o,R,_,j,P):((e.token&8454144)===8454144&&(P=T2(e,u,1,R,_,j,4,D,P)),M(e,u|32768,22)&&(P=U2(e,u,P,R,_,j)),d|=e.assignable&2?16:32))):(P=h2(e,u,1,t,1,R,_,j),d|=e.assignable&1?32:16,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):(P=H(e,u,P,t,0,R,_,j),d=e.assignable&2?16:0,e.token!==18&&D!==1074790415&&(e.token!==1077936157&&(d|=16),P=Q(e,u,t,o,R,_,j,P))))}else e.token===69271571?(d|=16,D===209007&&(I|=16),I|=(D===12402?256:D===12403?512:1)|2,W=K2(e,u,t),d|=e.assignable,P=v2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):e.token&143360?(d|=16,D===121&&f(e,92),D===209007&&(e.flags&1&&f(e,128),I|=16),W=$(e,u,0),I|=D===12402?256:D===12403?512:1,P=v2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):e.token===67174411?(d|=16,I|=1,P=v2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):e.token===8457014?(d|=16,D===12402||D===12403?f(e,40):D===143483&&f(e,92),E(e,u),I|=9|(D===209007?16:0),e.token&143360?W=$(e,u,0):(e.token&134217728)===134217728?W=c2(e,u):e.token===69271571?(I|=2,W=K2(e,u,t),d|=e.assignable):f(e,28,Z[e.token&255]),P=v2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):(e.token&134217728)===134217728?(D===209007&&(I|=16),I|=D===12402?256:D===12403?512:1,d|=16,W=c2(e,u),P=v2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):f(e,129);else if((e.token&134217728)===134217728)if(W=c2(e,u),e.token===21){q(e,u|32768,21);let{tokenPos:R,linePos:_,colPos:j}=e;if(F==="__proto__"&&y++,e.token&143360){P=d2(e,u,l,0,1,0,t,1,R,_,j);let{token:J2,tokenValue:Y2}=e;P=H(e,u,P,t,0,R,_,j),e.token===18||e.token===1074790415?J2===1077936157||J2===1074790415||J2===18?e.assignable&2?d|=16:i&&B2(e,u,i,Y2,l,c):d|=e.assignable&1?32:16:e.token===1077936157?(e.assignable&2&&(d|=16),P=Q(e,u,t,o,R,_,j,P)):(d|=16,P=Q(e,u,t,o,R,_,j,P))}else(e.token&2097152)===2097152?(P=e.token===69271571?m2(e,u,i,0,t,o,l,c,R,_,j):b2(e,u,i,0,t,o,l,c,R,_,j),d=e.destructible,e.assignable=d&16?2:1,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):(e.destructible&8)!==8&&(P=H(e,u,P,t,0,R,_,j),d=e.assignable&2?16:0,(e.token&4194304)===4194304?P=a1(e,u,t,o,R,_,j,P):((e.token&8454144)===8454144&&(P=T2(e,u,1,R,_,j,4,D,P)),M(e,u|32768,22)&&(P=U2(e,u,P,R,_,j)),d|=e.assignable&2?16:32))):(P=h2(e,u,1,0,1,R,_,j),d|=e.assignable&1?32:16,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):(P=H(e,u,P,t,0,R,_,j),d=e.assignable&1?0:16,e.token!==18&&e.token!==1074790415&&(e.token!==1077936157&&(d|=16),P=Q(e,u,t,o,R,_,j,P))))}else e.token===67174411?(I|=1,P=v2(e,u,I,t,e.tokenPos,e.linePos,e.colPos),d=e.assignable|16):f(e,130);else if(e.token===69271571)if(W=K2(e,u,t),d|=e.destructible&256?256:0,I|=2,e.token===21){E(e,u|32768);let{tokenPos:R,linePos:_,colPos:j,tokenValue:J2,token:Y2}=e;if(e.token&143360){P=d2(e,u,l,0,1,0,t,1,R,_,j);let{token:C2}=e;P=H(e,u,P,t,0,R,_,j),(e.token&4194304)===4194304?(d|=e.assignable&2?16:C2===1077936157?0:32,P=a1(e,u,t,o,R,_,j,P)):e.token===18||e.token===1074790415?C2===1077936157||C2===1074790415||C2===18?e.assignable&2?d|=16:i&&(Y2&143360)===143360&&B2(e,u,i,J2,l,c):d|=e.assignable&1?32:16:(d|=16,P=Q(e,u,t,o,R,_,j,P))}else(e.token&2097152)===2097152?(P=e.token===69271571?m2(e,u,i,0,t,o,l,c,R,_,j):b2(e,u,i,0,t,o,l,c,R,_,j),d=e.destructible,e.assignable=d&16?2:1,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):d&8?f(e,59):(P=H(e,u,P,t,0,R,_,j),d=e.assignable&2?d|16:0,(e.token&4194304)===4194304?(e.token!==1077936157&&(d|=16),P=a1(e,u,t,o,R,_,j,P)):((e.token&8454144)===8454144&&(P=T2(e,u,1,R,_,j,4,D,P)),M(e,u|32768,22)&&(P=U2(e,u,P,R,_,j)),d|=e.assignable&2?16:32))):(P=h2(e,u,1,0,1,R,_,j),d|=e.assignable&1?32:16,e.token===18||e.token===1074790415?e.assignable&2&&(d|=16):(P=H(e,u,P,t,0,R,_,j),d=e.assignable&1?0:16,e.token!==18&&e.token!==1074790415&&(e.token!==1077936157&&(d|=16),P=Q(e,u,t,o,R,_,j,P))))}else e.token===67174411?(I|=1,P=v2(e,u,I,t,e.tokenPos,O,N),d=16):f(e,41);else if(D===8457014)if(q(e,u|32768,8457014),I|=8,e.token&143360){let{token:R,line:_,index:j}=e;W=$(e,u,0),I|=1,e.token===67174411?(d|=16,P=v2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):L(j,_,j,R===209007?43:R===12402||e.token===12403?42:44,Z[R&255])}else(e.token&134217728)===134217728?(d|=16,W=c2(e,u),I|=1,P=v2(e,u,I,t,x,O,N)):e.token===69271571?(d|=16,I|=3,W=K2(e,u,t),P=v2(e,u,I,t,e.tokenPos,e.linePos,e.colPos)):f(e,122);else f(e,28,Z[D&255]);d|=e.destructible&128?128:0,e.destructible=d,h.push(v(e,u,x,O,N,{type:"Property",key:W,value:P,kind:I&768?I&512?"set":"get":"init",computed:(I&2)>0,method:(I&1)>0,shorthand:(I&4)>0}))}if(d|=e.destructible,e.token!==18)break;E(e,u)}q(e,u,1074790415),y>1&&(d|=64);let w=v(e,u,s,m,k,{type:o?"ObjectPattern":"ObjectExpression",properties:h});return!n&&e.token&4194304?yu(e,u,d,t,o,s,m,k,w):(e.destructible=d,w)}function Lt(e,u,i,n,t,o){q(e,u,67174411);let l=[];if(e.flags=(e.flags|128)^128,e.token===16)return n&512&&f(e,35,"Setter","one",""),E(e,u),l;n&256&&f(e,35,"Getter","no","s"),n&512&&e.token===14&&f(e,36),u=(u|134217728)^134217728;let c=0,s=0;for(;e.token!==18;){let m=null,{tokenPos:k,linePos:h,colPos:d}=e;if(e.token&143360?((u&1024)<1&&((e.token&36864)===36864&&(e.flags|=256),(e.token&537079808)===537079808&&(e.flags|=512)),m=p1(e,u,i,n|1,0,k,h,d)):(e.token===2162700?m=b2(e,u,i,1,o,1,t,0,k,h,d):e.token===69271571?m=m2(e,u,i,1,o,1,t,0,k,h,d):e.token===14&&(m=W2(e,u,i,16,t,0,0,o,1,k,h,d)),s=1,e.destructible&48&&f(e,47)),e.token===1077936157){E(e,u|32768),s=1;let y=K(e,u,1,1,0,e.tokenPos,e.linePos,e.colPos);m=v(e,u,k,h,d,{type:"AssignmentPattern",left:m,right:y})}if(c++,l.push(m),!M(e,u,18)||e.token===16)break}return n&512&&c!==1&&f(e,35,"Setter","one",""),i&&i.scopeError!==void 0&&A(i.scopeError),s&&(e.flags|=128),q(e,u,16),l}function K2(e,u,i){E(e,u|32768);let n=K(e,(u|134217728)^134217728,1,0,i,e.tokenPos,e.linePos,e.colPos);return q(e,u,20),n}function Ot(e,u,i,n,t,o,l,c){e.flags=(e.flags|128)^128;let{tokenPos:s,linePos:m,colPos:k}=e;E(e,u|32768|1073741824);let h=u&64?i2(_2(),1024):void 0;if(u=(u|134217728)^134217728,M(e,u,16))return m1(e,u,h,[],i,0,o,l,c);let d=0;e.destructible&=-385;let y,w=[],D=0,F=0,{tokenPos:O,linePos:N,colPos:x}=e;for(e.assignable=1;e.token!==16;){let{token:I,tokenPos:W,linePos:P,colPos:y2}=e;if(I&143360)h&&L2(e,u,h,e.tokenValue,1,0),y=d2(e,u,n,0,1,0,1,1,W,P,y2),e.token===16||e.token===18?e.assignable&2?(d|=16,F=1):((I&537079808)===537079808||(I&36864)===36864)&&(F=1):(e.token===1077936157?F=1:d|=16,y=H(e,u,y,1,0,W,P,y2),e.token!==16&&e.token!==18&&(y=Q(e,u,1,0,W,P,y2,y)));else if((I&2097152)===2097152)y=I===2162700?b2(e,u|1073741824,h,0,1,0,n,t,W,P,y2):m2(e,u|1073741824,h,0,1,0,n,t,W,P,y2),d|=e.destructible,F=1,e.assignable=2,e.token!==16&&e.token!==18&&(d&8&&f(e,118),y=H(e,u,y,0,0,W,P,y2),d|=16,e.token!==16&&e.token!==18&&(y=Q(e,u,0,0,W,P,y2,y)));else if(I===14){y=W2(e,u,h,16,n,t,0,1,0,W,P,y2),e.destructible&16&&f(e,71),F=1,D&&(e.token===16||e.token===18)&&w.push(y),d|=8;break}else{if(d|=16,y=K(e,u,1,0,1,W,P,y2),D&&(e.token===16||e.token===18)&&w.push(y),e.token===18&&(D||(D=1,w=[y])),D){for(;M(e,u|32768,18);)w.push(K(e,u,1,0,1,e.tokenPos,e.linePos,e.colPos));e.assignable=2,y=v(e,u,O,N,x,{type:"SequenceExpression",expressions:w})}return q(e,u,16),e.destructible=d,y}if(D&&(e.token===16||e.token===18)&&w.push(y),!M(e,u|32768,18))break;if(D||(D=1,w=[y]),e.token===16){d|=8;break}}return D&&(e.assignable=2,y=v(e,u,O,N,x,{type:"SequenceExpression",expressions:w})),q(e,u,16),d&16&&d&8&&f(e,145),d|=e.destructible&256?256:0|e.destructible&128?128:0,e.token===10?(d&48&&f(e,46),u&4196352&&d&128&&f(e,29),u&2098176&&d&256&&f(e,30),F&&(e.flags|=128),m1(e,u,h,D?w:[y],i,0,o,l,c)):(d&8&&f(e,139),e.destructible=(e.destructible|256)^256|d,u&128?v(e,u,s,m,k,{type:"ParenthesizedExpression",expression:y}):y)}function Q1(e,u,i,n,t){let{tokenValue:o}=e,l=$(e,u,0);if(e.assignable=1,e.token===10){let c;return u&64&&(c=c1(e,u,o)),e.flags=(e.flags|128)^128,e1(e,u,c,[l],0,i,n,t)}return l}function h1(e,u,i,n,t,o,l,c,s,m){o||f(e,54),t&&f(e,48),e.flags&=-129;let k=u&64?c1(e,u,i):void 0;return e1(e,u,k,[n],l,c,s,m)}function m1(e,u,i,n,t,o,l,c,s){t||f(e,54);for(let m=0;m0&&e.tokenValue==="constructor"&&f(e,106),e.token===1074790415&&f(e,105),M(e,u,1074790417)){d>0&&f(e,116);continue}k.push(Cu(e,u,n,i,t,h,0,l,e.tokenPos,e.linePos,e.colPos))}return q(e,o&8?u|32768:u,1074790415),v(e,u,c,s,m,{type:"ClassBody",body:k})}function Cu(e,u,i,n,t,o,l,c,s,m,k){let h=l?32:0,d=null,{token:y,tokenPos:w,linePos:D,colPos:F}=e;if(y&176128)switch(d=$(e,u,0),y){case 36972:if(!l&&e.token!==67174411)return Cu(e,u,i,n,t,o,1,c,s,m,k);break;case 209007:if(e.token!==67174411&&(e.flags&1)<1){if(u&1&&(e.token&1073741824)===1073741824)return v1(e,u,d,h,o,w,D,F);h|=16|(M1(e,u,8457014)?8:0)}break;case 12402:if(e.token!==67174411){if(u&1&&(e.token&1073741824)===1073741824)return v1(e,u,d,h,o,w,D,F);h|=256}break;case 12403:if(e.token!==67174411){if(u&1&&(e.token&1073741824)===1073741824)return v1(e,u,d,h,o,w,D,F);h|=512}break}else y===69271571?(h|=2,d=K2(e,n,c)):(y&134217728)===134217728?d=c2(e,u):y===8457014?(h|=8,E(e,u)):u&1&&e.token===131?(h|=4096,d=r1(e,u|16384,w,D,F)):u&1&&(e.token&1073741824)===1073741824?h|=128:y===122?(d=$(e,u,0),e.token!==67174411&&f(e,28,Z[e.token&255])):f(e,28,Z[e.token&255]);if(h&792&&(e.token&143360?d=$(e,u,0):(e.token&134217728)===134217728?d=c2(e,u):e.token===69271571?(h|=2,d=K2(e,u,0)):e.token===122?d=$(e,u,0):u&1&&e.token===131?(h|=4096,d=r1(e,u,w,D,F)):f(e,131)),(h&2)<1&&(e.tokenValue==="constructor"?((e.token&1073741824)===1073741824?f(e,125):(h&32)<1&&e.token===67174411&&(h&920?f(e,50,"accessor"):(u&524288)<1&&(e.flags&32?f(e,51):e.flags|=32)),h|=64):(h&4096)<1&&h&824&&e.tokenValue==="prototype"&&f(e,49)),u&1&&e.token!==67174411)return v1(e,u,d,h,o,w,D,F);let O=v2(e,u,h,c,e.tokenPos,e.linePos,e.colPos);return v(e,u,s,m,k,u&1?{type:"MethodDefinition",kind:(h&32)<1&&h&64?"constructor":h&256?"get":h&512?"set":"method",static:(h&32)>0,computed:(h&2)>0,key:d,decorators:o,value:O}:{type:"MethodDefinition",kind:(h&32)<1&&h&64?"constructor":h&256?"get":h&512?"set":"method",static:(h&32)>0,computed:(h&2)>0,key:d,value:O})}function r1(e,u,i,n,t){E(e,u);let{tokenValue:o}=e;return o==="constructor"&&f(e,124),E(e,u),v(e,u,i,n,t,{type:"PrivateIdentifier",name:o})}function v1(e,u,i,n,t,o,l,c){let s=null;if(n&8&&f(e,0),e.token===1077936157){E(e,u|32768);let{tokenPos:m,linePos:k,colPos:h}=e;e.token===537079928&&f(e,115),s=d2(e,u|16384,2,0,1,0,0,1,m,k,h),(e.token&1073741824)!==1073741824&&(s=H(e,u|16384,s,0,0,m,k,h),s=Q(e,u|16384,0,0,m,k,h,s),e.token===18&&(s=O2(e,u,0,o,l,c,s)))}return v(e,u,o,l,c,{type:"PropertyDefinition",key:i,value:s,static:(n&32)>0,computed:(n&2)>0,decorators:t})}function Du(e,u,i,n,t,o,l,c){if(e.token&143360)return p1(e,u,i,n,t,o,l,c);(e.token&2097152)!==2097152&&f(e,28,Z[e.token&255]);let s=e.token===69271571?m2(e,u,i,1,0,1,n,t,o,l,c):b2(e,u,i,1,0,1,n,t,o,l,c);return e.destructible&16&&f(e,47),e.destructible&32&&f(e,47),s}function p1(e,u,i,n,t,o,l,c){let{tokenValue:s,token:m}=e;return u&1024&&((m&537079808)===537079808?f(e,115):(m&36864)===36864&&f(e,114)),(m&20480)===20480&&f(e,99),u&2099200&&m===241773&&f(e,30),m===241739&&n&24&&f(e,97),u&4196352&&m===209008&&f(e,95),E(e,u),i&&B2(e,u,i,s,n,t),v(e,u,o,l,c,{type:"Identifier",name:s})}function ee(e,u,i,n,t,o){if(E(e,u),e.token===8456259)return v(e,u,n,t,o,{type:"JSXFragment",openingFragment:jt(e,u,n,t,o),children:wu(e,u),closingFragment:Mt(e,u,i,e.tokenPos,e.linePos,e.colPos)});let l=null,c=[],s=$t(e,u,i,n,t,o);if(!s.selfClosing){c=wu(e,u),l=_t(e,u,i,e.tokenPos,e.linePos,e.colPos);let m=f1(l.name);f1(s.name)!==m&&f(e,149,m)}return v(e,u,n,t,o,{type:"JSXElement",children:c,openingElement:s,closingElement:l})}function jt(e,u,i,n,t){return j2(e,u),v(e,u,i,n,t,{type:"JSXOpeningFragment"})}function _t(e,u,i,n,t,o){q(e,u,25);let l=qu(e,u,e.tokenPos,e.linePos,e.colPos);return i?q(e,u,8456259):e.token=j2(e,u),v(e,u,n,t,o,{type:"JSXClosingElement",name:l})}function Mt(e,u,i,n,t,o){return q(e,u,25),q(e,u,8456259),v(e,u,n,t,o,{type:"JSXClosingFragment"})}function wu(e,u){let i=[];for(;e.token!==25;)e.index=e.tokenPos=e.startPos,e.column=e.colPos=e.startColumn,e.line=e.linePos=e.startLine,j2(e,u),i.push(Ut(e,u,e.tokenPos,e.linePos,e.colPos));return i}function Ut(e,u,i,n,t){if(e.token===138)return Jt(e,u,i,n,t);if(e.token===2162700)return Su(e,u,0,0,i,n,t);if(e.token===8456258)return ee(e,u,0,i,n,t);f(e,0)}function Jt(e,u,i,n,t){j2(e,u);let o={type:"JSXText",value:e.tokenValue};return u&512&&(o.raw=e.tokenRaw),v(e,u,i,n,t,o)}function $t(e,u,i,n,t,o){(e.token&143360)!==143360&&(e.token&4096)!==4096&&f(e,0);let l=qu(e,u,e.tokenPos,e.linePos,e.colPos),c=Xt(e,u),s=e.token===8457016;return e.token===8456259?j2(e,u):(q(e,u,8457016),i?q(e,u,8456259):j2(e,u)),v(e,u,n,t,o,{type:"JSXOpeningElement",name:l,attributes:c,selfClosing:s})}function qu(e,u,i,n,t){_1(e);let o=y1(e,u,i,n,t);if(e.token===21)return Bu(e,u,o,i,n,t);for(;M(e,u,67108877);)_1(e),o=Ht(e,u,o,i,n,t);return o}function Ht(e,u,i,n,t,o){let l=y1(e,u,e.tokenPos,e.linePos,e.colPos);return v(e,u,n,t,o,{type:"JSXMemberExpression",object:i,property:l})}function Xt(e,u){let i=[];for(;e.token!==8457016&&e.token!==8456259&&e.token!==1048576;)i.push(Wt(e,u,e.tokenPos,e.linePos,e.colPos));return i}function zt(e,u,i,n,t){E(e,u),q(e,u,14);let o=K(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos);return q(e,u,1074790415),v(e,u,i,n,t,{type:"JSXSpreadAttribute",argument:o})}function Wt(e,u,i,n,t){if(e.token===2162700)return zt(e,u,i,n,t);_1(e);let o=null,l=y1(e,u,i,n,t);if(e.token===21&&(l=Bu(e,u,l,i,n,t)),e.token===1077936157){let c=U0(e,u),{tokenPos:s,linePos:m,colPos:k}=e;switch(c){case 134283267:o=c2(e,u);break;case 8456258:o=ee(e,u,1,s,m,k);break;case 2162700:o=Su(e,u,1,1,s,m,k);break;default:f(e,148)}}return v(e,u,i,n,t,{type:"JSXAttribute",value:o,name:l})}function Bu(e,u,i,n,t,o){q(e,u,21);let l=y1(e,u,e.tokenPos,e.linePos,e.colPos);return v(e,u,n,t,o,{type:"JSXNamespacedName",namespace:i,name:l})}function Su(e,u,i,n,t,o,l){E(e,u|32768);let{tokenPos:c,linePos:s,colPos:m}=e;if(e.token===14)return Kt(e,u,c,s,m);let k=null;return e.token===1074790415?(n&&f(e,151),k=Yt(e,u,e.startPos,e.startLine,e.startColumn)):k=K(e,u,1,0,0,c,s,m),i?q(e,u,1074790415):j2(e,u),v(e,u,t,o,l,{type:"JSXExpressionContainer",expression:k})}function Kt(e,u,i,n,t){q(e,u,14);let o=K(e,u,1,0,0,e.tokenPos,e.linePos,e.colPos);return q(e,u,1074790415),v(e,u,i,n,t,{type:"JSXSpreadChild",expression:o})}function Yt(e,u,i,n,t){return e.startPos=e.tokenPos,e.startLine=e.linePos,e.startColumn=e.colPos,v(e,u,i,n,t,{type:"JSXEmptyExpression"})}function y1(e,u,i,n,t){let{tokenValue:o}=e;return E(e,u),v(e,u,i,n,t,{type:"JSXIdentifier",name:o})}var Zt=Object.freeze({__proto__:null}),Qt="4.2.1",Gt=Qt;function xt(e,u){return H1(e,u,0)}function pt(e,u){return H1(e,u,3072)}function eo(e,u){return H1(e,u,0)}a.ESTree=Zt,a.parse=eo,a.parseModule=pt,a.parseScript=xt,a.version=Gt}});n2();var V3=k0(),N3=b3(),j3=q3(),_3=I3(),M3={module:!0,next:!0,ranges:!0,webcompat:!0,loc:!0,raw:!0,directives:!0,globalReturn:!0,impliedStrict:!1,preserveParens:!1,lexical:!1,identifierPattern:!1,jsx:!0,specDeviation:!0,uniqueKeyInPattern:!1};function m0(a,g){let{parse:b}=R3(),f=[],A=[],L=b(a,Object.assign(Object.assign({},M3),{},{module:g,onComment:f,onToken:A}));return L.comments=f,L.tokens=A,L}function U3(a){let{message:g,line:b,column:f}=a,A=(g.match(/^\[(?\d+):(?\d+)]: (?.*)$/)||{}).groups;return A&&(g=A.message,typeof b!="number"&&(b=Number(A.line),f=Number(A.column))),typeof b!="number"?a:V3(g,{start:{line:b,column:f}})}function J3(a,g){let b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{result:f,error:A}=N3(()=>m0(a,!0),()=>m0(a,!1));if(!f)throw U3(A);return b.originalText=a,_3(f,b)}O0.exports={parsers:{meriyah:j3(J3)}}});return $3();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-postcss.js b/node_modules/prettier/parser-postcss.js new file mode 100644 index 0000000..52e109f --- /dev/null +++ b/node_modules/prettier/parser-postcss.js @@ -0,0 +1,76 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.postcss=e()}})(function(){"use strict";var U=(e,n)=>()=>(n||e((n={exports:{}}).exports,n),n.exports);var pe=U((wp,Gt)=>{var er=function(e){return e&&e.Math==Math&&e};Gt.exports=er(typeof globalThis=="object"&&globalThis)||er(typeof window=="object"&&window)||er(typeof self=="object"&&self)||er(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var be=U((_p,Ht)=>{Ht.exports=function(e){try{return!!e()}catch{return!0}}});var Oe=U((bp,Jt)=>{var _a=be();Jt.exports=!_a(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var Tr=U((xp,Kt)=>{var ba=be();Kt.exports=!ba(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")})});var tr=U((Sp,Qt)=>{var xa=Tr(),rr=Function.prototype.call;Qt.exports=xa?rr.bind(rr):function(){return rr.apply(rr,arguments)}});var en=U(Zt=>{"use strict";var Yt={}.propertyIsEnumerable,Xt=Object.getOwnPropertyDescriptor,Sa=Xt&&!Yt.call({1:2},1);Zt.f=Sa?function(n){var i=Xt(this,n);return!!i&&i.enumerable}:Yt});var Er=U((Op,rn)=>{rn.exports=function(e,n){return{enumerable:!(e&1),configurable:!(e&2),writable:!(e&4),value:n}}});var xe=U((Tp,sn)=>{var tn=Tr(),nn=Function.prototype,qr=nn.call,ka=tn&&nn.bind.bind(qr,qr);sn.exports=tn?ka:function(e){return function(){return qr.apply(e,arguments)}}});var un=U((Ep,an)=>{var on=xe(),Oa=on({}.toString),Ta=on("".slice);an.exports=function(e){return Ta(Oa(e),8,-1)}});var ln=U((qp,cn)=>{var Ea=xe(),qa=be(),Aa=un(),Ar=Object,Pa=Ea("".split);cn.exports=qa(function(){return!Ar("z").propertyIsEnumerable(0)})?function(e){return Aa(e)=="String"?Pa(e,""):Ar(e)}:Ar});var Pr=U((Ap,fn)=>{fn.exports=function(e){return e==null}});var Ir=U((Pp,pn)=>{var Ia=Pr(),Ra=TypeError;pn.exports=function(e){if(Ia(e))throw Ra("Can't call method on "+e);return e}});var nr=U((Ip,hn)=>{var Ca=ln(),Na=Ir();hn.exports=function(e){return Ca(Na(e))}});var Cr=U((Rp,dn)=>{var Rr=typeof document=="object"&&document.all,ja=typeof Rr>"u"&&Rr!==void 0;dn.exports={all:Rr,IS_HTMLDDA:ja}});var he=U((Cp,mn)=>{var vn=Cr(),Ma=vn.all;mn.exports=vn.IS_HTMLDDA?function(e){return typeof e=="function"||e===Ma}:function(e){return typeof e=="function"}});var Me=U((Np,wn)=>{var gn=he(),yn=Cr(),Da=yn.all;wn.exports=yn.IS_HTMLDDA?function(e){return typeof e=="object"?e!==null:gn(e)||e===Da}:function(e){return typeof e=="object"?e!==null:gn(e)}});var ir=U((jp,_n)=>{var Nr=pe(),La=he(),za=function(e){return La(e)?e:void 0};_n.exports=function(e,n){return arguments.length<2?za(Nr[e]):Nr[e]&&Nr[e][n]}});var xn=U((Mp,bn)=>{var Ba=xe();bn.exports=Ba({}.isPrototypeOf)});var kn=U((Dp,Sn)=>{var Fa=ir();Sn.exports=Fa("navigator","userAgent")||""});var In=U((Lp,Pn)=>{var An=pe(),jr=kn(),On=An.process,Tn=An.Deno,En=On&&On.versions||Tn&&Tn.version,qn=En&&En.v8,de,sr;qn&&(de=qn.split("."),sr=de[0]>0&&de[0]<4?1:+(de[0]+de[1]));!sr&&jr&&(de=jr.match(/Edge\/(\d+)/),(!de||de[1]>=74)&&(de=jr.match(/Chrome\/(\d+)/),de&&(sr=+de[1])));Pn.exports=sr});var Mr=U((zp,Cn)=>{var Rn=In(),Ua=be();Cn.exports=!!Object.getOwnPropertySymbols&&!Ua(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&Rn&&Rn<41})});var Dr=U((Bp,Nn)=>{var $a=Mr();Nn.exports=$a&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Lr=U((Fp,jn)=>{var Wa=ir(),Va=he(),Ga=xn(),Ha=Dr(),Ja=Object;jn.exports=Ha?function(e){return typeof e=="symbol"}:function(e){var n=Wa("Symbol");return Va(n)&&Ga(n.prototype,Ja(e))}});var Dn=U((Up,Mn)=>{var Ka=String;Mn.exports=function(e){try{return Ka(e)}catch{return"Object"}}});var zn=U(($p,Ln)=>{var Qa=he(),Ya=Dn(),Xa=TypeError;Ln.exports=function(e){if(Qa(e))return e;throw Xa(Ya(e)+" is not a function")}});var Fn=U((Wp,Bn)=>{var Za=zn(),eu=Pr();Bn.exports=function(e,n){var i=e[n];return eu(i)?void 0:Za(i)}});var $n=U((Vp,Un)=>{var zr=tr(),Br=he(),Fr=Me(),ru=TypeError;Un.exports=function(e,n){var i,u;if(n==="string"&&Br(i=e.toString)&&!Fr(u=zr(i,e))||Br(i=e.valueOf)&&!Fr(u=zr(i,e))||n!=="string"&&Br(i=e.toString)&&!Fr(u=zr(i,e)))return u;throw ru("Can't convert object to primitive value")}});var Vn=U((Gp,Wn)=>{Wn.exports=!1});var or=U((Hp,Hn)=>{var Gn=pe(),tu=Object.defineProperty;Hn.exports=function(e,n){try{tu(Gn,e,{value:n,configurable:!0,writable:!0})}catch{Gn[e]=n}return n}});var ar=U((Jp,Kn)=>{var nu=pe(),iu=or(),Jn="__core-js_shared__",su=nu[Jn]||iu(Jn,{});Kn.exports=su});var Ur=U((Kp,Yn)=>{var ou=Vn(),Qn=ar();(Yn.exports=function(e,n){return Qn[e]||(Qn[e]=n!==void 0?n:{})})("versions",[]).push({version:"3.26.1",mode:ou?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var Zn=U((Qp,Xn)=>{var au=Ir(),uu=Object;Xn.exports=function(e){return uu(au(e))}});var Te=U((Yp,ei)=>{var cu=xe(),lu=Zn(),fu=cu({}.hasOwnProperty);ei.exports=Object.hasOwn||function(n,i){return fu(lu(n),i)}});var $r=U((Xp,ri)=>{var pu=xe(),hu=0,du=Math.random(),vu=pu(1 .toString);ri.exports=function(e){return"Symbol("+(e===void 0?"":e)+")_"+vu(++hu+du,36)}});var ai=U((Zp,oi)=>{var mu=pe(),gu=Ur(),ti=Te(),yu=$r(),ni=Mr(),si=Dr(),De=gu("wks"),Ee=mu.Symbol,ii=Ee&&Ee.for,wu=si?Ee:Ee&&Ee.withoutSetter||yu;oi.exports=function(e){if(!ti(De,e)||!(ni||typeof De[e]=="string")){var n="Symbol."+e;ni&&ti(Ee,e)?De[e]=Ee[e]:si&&ii?De[e]=ii(n):De[e]=wu(n)}return De[e]}});var fi=U((eh,li)=>{var _u=tr(),ui=Me(),ci=Lr(),bu=Fn(),xu=$n(),Su=ai(),ku=TypeError,Ou=Su("toPrimitive");li.exports=function(e,n){if(!ui(e)||ci(e))return e;var i=bu(e,Ou),u;if(i){if(n===void 0&&(n="default"),u=_u(i,e,n),!ui(u)||ci(u))return u;throw ku("Can't convert object to primitive value")}return n===void 0&&(n="number"),xu(e,n)}});var Wr=U((rh,pi)=>{var Tu=fi(),Eu=Lr();pi.exports=function(e){var n=Tu(e,"string");return Eu(n)?n:n+""}});var vi=U((th,di)=>{var qu=pe(),hi=Me(),Vr=qu.document,Au=hi(Vr)&&hi(Vr.createElement);di.exports=function(e){return Au?Vr.createElement(e):{}}});var Gr=U((nh,mi)=>{var Pu=Oe(),Iu=be(),Ru=vi();mi.exports=!Pu&&!Iu(function(){return Object.defineProperty(Ru("div"),"a",{get:function(){return 7}}).a!=7})});var Hr=U(yi=>{var Cu=Oe(),Nu=tr(),ju=en(),Mu=Er(),Du=nr(),Lu=Wr(),zu=Te(),Bu=Gr(),gi=Object.getOwnPropertyDescriptor;yi.f=Cu?gi:function(n,i){if(n=Du(n),i=Lu(i),Bu)try{return gi(n,i)}catch{}if(zu(n,i))return Mu(!Nu(ju.f,n,i),n[i])}});var _i=U((sh,wi)=>{var Fu=Oe(),Uu=be();wi.exports=Fu&&Uu(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Jr=U((oh,bi)=>{var $u=Me(),Wu=String,Vu=TypeError;bi.exports=function(e){if($u(e))return e;throw Vu(Wu(e)+" is not an object")}});var cr=U(Si=>{var Gu=Oe(),Hu=Gr(),Ju=_i(),ur=Jr(),xi=Wr(),Ku=TypeError,Kr=Object.defineProperty,Qu=Object.getOwnPropertyDescriptor,Qr="enumerable",Yr="configurable",Xr="writable";Si.f=Gu?Ju?function(n,i,u){if(ur(n),i=xi(i),ur(u),typeof n=="function"&&i==="prototype"&&"value"in u&&Xr in u&&!u[Xr]){var o=Qu(n,i);o&&o[Xr]&&(n[i]=u.value,u={configurable:Yr in u?u[Yr]:o[Yr],enumerable:Qr in u?u[Qr]:o[Qr],writable:!1})}return Kr(n,i,u)}:Kr:function(n,i,u){if(ur(n),i=xi(i),ur(u),Hu)try{return Kr(n,i,u)}catch{}if("get"in u||"set"in u)throw Ku("Accessors not supported");return"value"in u&&(n[i]=u.value),n}});var Zr=U((uh,ki)=>{var Yu=Oe(),Xu=cr(),Zu=Er();ki.exports=Yu?function(e,n,i){return Xu.f(e,n,Zu(1,i))}:function(e,n,i){return e[n]=i,e}});var Ei=U((ch,Ti)=>{var et=Oe(),ec=Te(),Oi=Function.prototype,rc=et&&Object.getOwnPropertyDescriptor,rt=ec(Oi,"name"),tc=rt&&function(){}.name==="something",nc=rt&&(!et||et&&rc(Oi,"name").configurable);Ti.exports={EXISTS:rt,PROPER:tc,CONFIGURABLE:nc}});var Ai=U((lh,qi)=>{var ic=xe(),sc=he(),tt=ar(),oc=ic(Function.toString);sc(tt.inspectSource)||(tt.inspectSource=function(e){return oc(e)});qi.exports=tt.inspectSource});var Ri=U((fh,Ii)=>{var ac=pe(),uc=he(),Pi=ac.WeakMap;Ii.exports=uc(Pi)&&/native code/.test(String(Pi))});var ji=U((ph,Ni)=>{var cc=Ur(),lc=$r(),Ci=cc("keys");Ni.exports=function(e){return Ci[e]||(Ci[e]=lc(e))}});var nt=U((hh,Mi)=>{Mi.exports={}});var Bi=U((dh,zi)=>{var fc=Ri(),Li=pe(),pc=Me(),hc=Zr(),it=Te(),st=ar(),dc=ji(),vc=nt(),Di="Object already initialized",ot=Li.TypeError,mc=Li.WeakMap,lr,Fe,fr,gc=function(e){return fr(e)?Fe(e):lr(e,{})},yc=function(e){return function(n){var i;if(!pc(n)||(i=Fe(n)).type!==e)throw ot("Incompatible receiver, "+e+" required");return i}};fc||st.state?(ve=st.state||(st.state=new mc),ve.get=ve.get,ve.has=ve.has,ve.set=ve.set,lr=function(e,n){if(ve.has(e))throw ot(Di);return n.facade=e,ve.set(e,n),n},Fe=function(e){return ve.get(e)||{}},fr=function(e){return ve.has(e)}):(qe=dc("state"),vc[qe]=!0,lr=function(e,n){if(it(e,qe))throw ot(Di);return n.facade=e,hc(e,qe,n),n},Fe=function(e){return it(e,qe)?e[qe]:{}},fr=function(e){return it(e,qe)});var ve,qe;zi.exports={set:lr,get:Fe,has:fr,enforce:gc,getterFor:yc}});var $i=U((vh,Ui)=>{var wc=be(),_c=he(),pr=Te(),at=Oe(),bc=Ei().CONFIGURABLE,xc=Ai(),Fi=Bi(),Sc=Fi.enforce,kc=Fi.get,hr=Object.defineProperty,Oc=at&&!wc(function(){return hr(function(){},"length",{value:8}).length!==8}),Tc=String(String).split("String"),Ec=Ui.exports=function(e,n,i){String(n).slice(0,7)==="Symbol("&&(n="["+String(n).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),i&&i.getter&&(n="get "+n),i&&i.setter&&(n="set "+n),(!pr(e,"name")||bc&&e.name!==n)&&(at?hr(e,"name",{value:n,configurable:!0}):e.name=n),Oc&&i&&pr(i,"arity")&&e.length!==i.arity&&hr(e,"length",{value:i.arity});try{i&&pr(i,"constructor")&&i.constructor?at&&hr(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch{}var u=Sc(e);return pr(u,"source")||(u.source=Tc.join(typeof n=="string"?n:"")),e};Function.prototype.toString=Ec(function(){return _c(this)&&kc(this).source||xc(this)},"toString")});var Vi=U((mh,Wi)=>{var qc=he(),Ac=cr(),Pc=$i(),Ic=or();Wi.exports=function(e,n,i,u){u||(u={});var o=u.enumerable,h=u.name!==void 0?u.name:n;if(qc(i)&&Pc(i,h,u),u.global)o?e[n]=i:Ic(n,i);else{try{u.unsafe?e[n]&&(o=!0):delete e[n]}catch{}o?e[n]=i:Ac.f(e,n,{value:i,enumerable:!1,configurable:!u.nonConfigurable,writable:!u.nonWritable})}return e}});var Hi=U((gh,Gi)=>{var Rc=Math.ceil,Cc=Math.floor;Gi.exports=Math.trunc||function(n){var i=+n;return(i>0?Cc:Rc)(i)}});var ut=U((yh,Ji)=>{var Nc=Hi();Ji.exports=function(e){var n=+e;return n!==n||n===0?0:Nc(n)}});var Qi=U((wh,Ki)=>{var jc=ut(),Mc=Math.max,Dc=Math.min;Ki.exports=function(e,n){var i=jc(e);return i<0?Mc(i+n,0):Dc(i,n)}});var Xi=U((_h,Yi)=>{var Lc=ut(),zc=Math.min;Yi.exports=function(e){return e>0?zc(Lc(e),9007199254740991):0}});var es=U((bh,Zi)=>{var Bc=Xi();Zi.exports=function(e){return Bc(e.length)}});var ns=U((xh,ts)=>{var Fc=nr(),Uc=Qi(),$c=es(),rs=function(e){return function(n,i,u){var o=Fc(n),h=$c(o),l=Uc(u,h),p;if(e&&i!=i){for(;h>l;)if(p=o[l++],p!=p)return!0}else for(;h>l;l++)if((e||l in o)&&o[l]===i)return e||l||0;return!e&&-1}};ts.exports={includes:rs(!0),indexOf:rs(!1)}});var os=U((Sh,ss)=>{var Wc=xe(),ct=Te(),Vc=nr(),Gc=ns().indexOf,Hc=nt(),is=Wc([].push);ss.exports=function(e,n){var i=Vc(e),u=0,o=[],h;for(h in i)!ct(Hc,h)&&ct(i,h)&&is(o,h);for(;n.length>u;)ct(i,h=n[u++])&&(~Gc(o,h)||is(o,h));return o}});var us=U((kh,as)=>{as.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var ls=U(cs=>{var Jc=os(),Kc=us(),Qc=Kc.concat("length","prototype");cs.f=Object.getOwnPropertyNames||function(n){return Jc(n,Qc)}});var ps=U(fs=>{fs.f=Object.getOwnPropertySymbols});var ds=U((Eh,hs)=>{var Yc=ir(),Xc=xe(),Zc=ls(),el=ps(),rl=Jr(),tl=Xc([].concat);hs.exports=Yc("Reflect","ownKeys")||function(n){var i=Zc.f(rl(n)),u=el.f;return u?tl(i,u(n)):i}});var gs=U((qh,ms)=>{var vs=Te(),nl=ds(),il=Hr(),sl=cr();ms.exports=function(e,n,i){for(var u=nl(n),o=sl.f,h=il.f,l=0;l{var ol=be(),al=he(),ul=/#|\.prototype\./,Ue=function(e,n){var i=ll[cl(e)];return i==pl?!0:i==fl?!1:al(n)?ol(n):!!n},cl=Ue.normalize=function(e){return String(e).replace(ul,".").toLowerCase()},ll=Ue.data={},fl=Ue.NATIVE="N",pl=Ue.POLYFILL="P";ys.exports=Ue});var bs=U((Ph,_s)=>{var lt=pe(),hl=Hr().f,dl=Zr(),vl=Vi(),ml=or(),gl=gs(),yl=ws();_s.exports=function(e,n){var i=e.target,u=e.global,o=e.stat,h,l,p,m,c,t;if(u?l=lt:o?l=lt[i]||ml(i,{}):l=(lt[i]||{}).prototype,l)for(p in n){if(c=n[p],e.dontCallGetSet?(t=hl(l,p),m=t&&t.value):m=l[p],h=yl(u?p:i+(o?".":"#")+p,e.forced),!h&&m!==void 0){if(typeof c==typeof m)continue;gl(c,m)}(e.sham||m&&m.sham)&&dl(c,"sham",!0),vl(l,p,c,e)}}});var xs=U(()=>{var wl=bs(),ft=pe();wl({global:!0,forced:ft.globalThis!==ft},{globalThis:ft})});var Ss=U(()=>{xs()});var gp=U((Fh,wa)=>{Ss();var Et=Object.defineProperty,_l=Object.getOwnPropertyDescriptor,qt=Object.getOwnPropertyNames,bl=Object.prototype.hasOwnProperty,Le=(e,n)=>function(){return e&&(n=(0,e[qt(e)[0]])(e=0)),n},P=(e,n)=>function(){return n||(0,e[qt(e)[0]])((n={exports:{}}).exports,n),n.exports},At=(e,n)=>{for(var i in n)Et(e,i,{get:n[i],enumerable:!0})},xl=(e,n,i,u)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of qt(n))!bl.call(e,o)&&o!==i&&Et(e,o,{get:()=>n[o],enumerable:!(u=_l(n,o))||u.enumerable});return e},Pt=e=>xl(Et({},"__esModule",{value:!0}),e),A=Le({""(){}}),Sl=P({"src/common/parser-create-error.js"(e,n){"use strict";A();function i(u,o){let h=new SyntaxError(u+" ("+o.start.line+":"+o.start.column+")");return h.loc=o,h}n.exports=i}}),Us=P({"src/utils/get-last.js"(e,n){"use strict";A();var i=u=>u[u.length-1];n.exports=i}}),$s=P({"src/utils/front-matter/parse.js"(e,n){"use strict";A();var i=new RegExp("^(?-{3}|\\+{3})(?[^\\n]*)\\n(?:|(?.*?)\\n)(?\\k|\\.{3})[^\\S\\n]*(?:\\n|$)","s");function u(o){let h=o.match(i);if(!h)return{content:o};let{startDelimiter:l,language:p,value:m="",endDelimiter:c}=h.groups,t=p.trim()||"yaml";if(l==="+++"&&(t="toml"),t!=="yaml"&&l!==c)return{content:o};let[r]=h;return{frontMatter:{type:"front-matter",lang:t,value:m,startDelimiter:l,endDelimiter:c,raw:r.replace(/\n$/,"")},content:r.replace(/[^\n]/g," ")+o.slice(r.length)}}n.exports=u}}),Ws={};At(Ws,{EOL:()=>bt,arch:()=>kl,cpus:()=>Ys,default:()=>to,endianness:()=>Vs,freemem:()=>Ks,getNetworkInterfaces:()=>ro,hostname:()=>Gs,loadavg:()=>Hs,networkInterfaces:()=>eo,platform:()=>Ol,release:()=>Zs,tmpDir:()=>wt,tmpdir:()=>_t,totalmem:()=>Qs,type:()=>Xs,uptime:()=>Js});function Vs(){if(typeof dr>"u"){var e=new ArrayBuffer(2),n=new Uint8Array(e),i=new Uint16Array(e);if(n[0]=1,n[1]=2,i[0]===258)dr="BE";else if(i[0]===513)dr="LE";else throw new Error("unable to figure out endianess")}return dr}function Gs(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function Hs(){return[]}function Js(){return 0}function Ks(){return Number.MAX_VALUE}function Qs(){return Number.MAX_VALUE}function Ys(){return[]}function Xs(){return"Browser"}function Zs(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function eo(){}function ro(){}function kl(){return"javascript"}function Ol(){return"browser"}function wt(){return"/tmp"}var dr,_t,bt,to,Tl=Le({"node-modules-polyfills:os"(){A(),_t=wt,bt=` +`,to={EOL:bt,tmpdir:_t,tmpDir:wt,networkInterfaces:eo,getNetworkInterfaces:ro,release:Zs,type:Xs,cpus:Ys,totalmem:Qs,freemem:Ks,uptime:Js,loadavg:Hs,hostname:Gs,endianness:Vs}}}),El=P({"node-modules-polyfills-commonjs:os"(e,n){A();var i=(Tl(),Pt(Ws));if(i&&i.default){n.exports=i.default;for(let u in i)n.exports[u]=i[u]}else i&&(n.exports=i)}}),ql=P({"node_modules/detect-newline/index.js"(e,n){"use strict";A();var i=u=>{if(typeof u!="string")throw new TypeError("Expected a string");let o=u.match(/(?:\r?\n)/g)||[];if(o.length===0)return;let h=o.filter(p=>p===`\r +`).length,l=o.length-h;return h>l?`\r +`:` +`};n.exports=i,n.exports.graceful=u=>typeof u=="string"&&i(u)||` +`}}),Al=P({"node_modules/jest-docblock/build/index.js"(e){"use strict";A(),Object.defineProperty(e,"__esModule",{value:!0}),e.extract=s,e.parse=g,e.parseWithComments=v,e.print=y,e.strip=f;function n(){let d=El();return n=function(){return d},d}function i(){let d=u(ql());return i=function(){return d},d}function u(d){return d&&d.__esModule?d:{default:d}}var o=/\*\/$/,h=/^\/\*\*?/,l=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,p=/(^|\s+)\/\/([^\r\n]*)/g,m=/^(\r?\n)+/,c=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,t=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,r=/(\r?\n|^) *\* ?/g,a=[];function s(d){let _=d.match(l);return _?_[0].trimLeft():""}function f(d){let _=d.match(l);return _&&_[0]?d.substring(_[0].length):d}function g(d){return v(d).pragmas}function v(d){let _=(0,i().default)(d)||n().EOL;d=d.replace(h,"").replace(o,"").replace(r,"$1");let k="";for(;k!==d;)k=d,d=d.replace(c,`${_}$1 $2${_}`);d=d.replace(m,"").trimRight();let x=Object.create(null),N=d.replace(t,"").replace(m,"").trimRight(),I;for(;I=t.exec(d);){let W=I[2].replace(p,"");typeof x[I[1]]=="string"||Array.isArray(x[I[1]])?x[I[1]]=a.concat(x[I[1]],W):x[I[1]]=W}return{comments:N,pragmas:x}}function y(d){let{comments:_="",pragmas:k={}}=d,x=(0,i().default)(_)||n().EOL,N="/**",I=" *",W=" */",$=Object.keys(k),H=$.map(V=>w(V,k[V])).reduce((V,B)=>V.concat(B),[]).map(V=>`${I} ${V}${x}`).join("");if(!_){if($.length===0)return"";if($.length===1&&!Array.isArray(k[$[0]])){let V=k[$[0]];return`${N} ${w($[0],V)[0]}${W}`}}let D=_.split(x).map(V=>`${I} ${V}`).join(x)+x;return N+x+(_?D:"")+(_&&$.length?I+x:"")+H+W}function w(d,_){return a.concat(_).map(k=>`@${d} ${k}`.trim())}}}),Pl=P({"src/common/end-of-line.js"(e,n){"use strict";A();function i(l){let p=l.indexOf("\r");return p>=0?l.charAt(p+1)===` +`?"crlf":"cr":"lf"}function u(l){switch(l){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function o(l,p){let m;switch(p){case` +`:m=/\n/g;break;case"\r":m=/\r/g;break;case`\r +`:m=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(p)}.`)}let c=l.match(m);return c?c.length:0}function h(l){return l.replace(/\r\n?/g,` +`)}n.exports={guessEndOfLine:i,convertEndOfLineToChars:u,countEndOfLineChars:o,normalizeEndOfLine:h}}}),Il=P({"src/language-js/utils/get-shebang.js"(e,n){"use strict";A();function i(u){if(!u.startsWith("#!"))return"";let o=u.indexOf(` +`);return o===-1?u:u.slice(0,o)}n.exports=i}}),Rl=P({"src/language-js/pragma.js"(e,n){"use strict";A();var{parseWithComments:i,strip:u,extract:o,print:h}=Al(),{normalizeEndOfLine:l}=Pl(),p=Il();function m(r){let a=p(r);a&&(r=r.slice(a.length+1));let s=o(r),{pragmas:f,comments:g}=i(s);return{shebang:a,text:r,pragmas:f,comments:g}}function c(r){let a=Object.keys(m(r).pragmas);return a.includes("prettier")||a.includes("format")}function t(r){let{shebang:a,text:s,pragmas:f,comments:g}=m(r),v=u(s),y=h({pragmas:Object.assign({format:""},f),comments:g.trimStart()});return(a?`${a} +`:"")+l(y)+(v.startsWith(` +`)?` +`:` + +`)+v}n.exports={hasPragma:c,insertPragma:t}}}),Cl=P({"src/language-css/pragma.js"(e,n){"use strict";A();var i=Rl(),u=$s();function o(l){return i.hasPragma(u(l).content)}function h(l){let{frontMatter:p,content:m}=u(l);return(p?p.raw+` + +`:"")+i.insertPragma(m)}n.exports={hasPragma:o,insertPragma:h}}}),Nl=P({"src/utils/text/skip.js"(e,n){"use strict";A();function i(p){return(m,c,t)=>{let r=t&&t.backwards;if(c===!1)return!1;let{length:a}=m,s=c;for(;s>=0&&s0}n.exports=i}}),Dl=P({"src/language-css/utils/has-scss-interpolation.js"(e,n){"use strict";A();var i=Ml();function u(o){if(i(o)){for(let h=o.length-1;h>0;h--)if(o[h].type==="word"&&o[h].value==="{"&&o[h-1].type==="word"&&o[h-1].value.endsWith("#"))return!0}return!1}n.exports=u}}),Ll=P({"src/language-css/utils/has-string-or-function.js"(e,n){"use strict";A();function i(u){return u.some(o=>o.type==="string"||o.type==="func")}n.exports=i}}),zl=P({"src/language-css/utils/is-less-parser.js"(e,n){"use strict";A();function i(u){return u.parser==="css"||u.parser==="less"}n.exports=i}}),Bl=P({"src/language-css/utils/is-scss.js"(e,n){"use strict";A();function i(u,o){return u==="less"||u==="scss"?u==="scss":/(?:\w\s*:\s*[^:}]+|#){|@import[^\n]+(?:url|,)/.test(o)}n.exports=i}}),Fl=P({"src/language-css/utils/is-scss-nested-property-node.js"(e,n){"use strict";A();function i(u){return u.selector?u.selector.replace(/\/\*.*?\*\//,"").replace(/\/\/.*\n/,"").trim().endsWith(":"):!1}n.exports=i}}),Ul=P({"src/language-css/utils/is-scss-variable.js"(e,n){"use strict";A();function i(u){return Boolean((u==null?void 0:u.type)==="word"&&u.value.startsWith("$"))}n.exports=i}}),$l=P({"src/language-css/utils/stringify-node.js"(e,n){"use strict";A();function i(u){var o,h,l;if(u.groups){var p,m,c;let y=((p=u.open)===null||p===void 0?void 0:p.value)||"",w=u.groups.map(_=>i(_)).join(((m=u.groups[0])===null||m===void 0?void 0:m.type)==="comma_group"?",":""),d=((c=u.close)===null||c===void 0?void 0:c.value)||"";return y+w+d}let t=((o=u.raws)===null||o===void 0?void 0:o.before)||"",r=((h=u.raws)===null||h===void 0?void 0:h.quote)||"",a=u.type==="atword"?"@":"",s=u.value||"",f=u.unit||"",g=u.group?i(u.group):"",v=((l=u.raws)===null||l===void 0?void 0:l.after)||"";return t+r+a+s+r+f+g+v}n.exports=i}}),Wl=P({"src/language-css/utils/is-module-rule-name.js"(e,n){"use strict";A();var i=new Set(["import","use","forward"]);function u(o){return i.has(o)}n.exports=u}}),we=P({"node_modules/postcss-values-parser/lib/node.js"(e,n){"use strict";A();var i=function(u,o){let h=new u.constructor;for(let l in u){if(!u.hasOwnProperty(l))continue;let p=u[l],m=typeof p;l==="parent"&&m==="object"?o&&(h[l]=o):l==="source"?h[l]=p:p instanceof Array?h[l]=p.map(c=>i(c,h)):l!=="before"&&l!=="after"&&l!=="between"&&l!=="semicolon"&&(m==="object"&&p!==null&&(p=i(p)),h[l]=p)}return h};n.exports=class{constructor(o){o=o||{},this.raws={before:"",after:""};for(let h in o)this[h]=o[h]}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}toString(){return[this.raws.before,String(this.value),this.raws.after].join("")}clone(o){o=o||{};let h=i(this);for(let l in o)h[l]=o[l];return h}cloneBefore(o){o=o||{};let h=this.clone(o);return this.parent.insertBefore(this,h),h}cloneAfter(o){o=o||{};let h=this.clone(o);return this.parent.insertAfter(this,h),h}replaceWith(){let o=Array.prototype.slice.call(arguments);if(this.parent){for(let h of o)this.parent.insertBefore(this,h);this.remove()}return this}moveTo(o){return this.cleanRaws(this.root()===o.root()),this.remove(),o.append(this),this}moveBefore(o){return this.cleanRaws(this.root()===o.root()),this.remove(),o.parent.insertBefore(o,this),this}moveAfter(o){return this.cleanRaws(this.root()===o.root()),this.remove(),o.parent.insertAfter(o,this),this}next(){let o=this.parent.index(this);return this.parent.nodes[o+1]}prev(){let o=this.parent.index(this);return this.parent.nodes[o-1]}toJSON(){let o={};for(let h in this){if(!this.hasOwnProperty(h)||h==="parent")continue;let l=this[h];l instanceof Array?o[h]=l.map(p=>typeof p=="object"&&p.toJSON?p.toJSON():p):typeof l=="object"&&l.toJSON?o[h]=l.toJSON():o[h]=l}return o}root(){let o=this;for(;o.parent;)o=o.parent;return o}cleanRaws(o){delete this.raws.before,delete this.raws.after,o||delete this.raws.between}positionInside(o){let h=this.toString(),l=this.source.start.column,p=this.source.start.line;for(let m=0;m{let p=o(h,l);return p!==!1&&h.walk&&(p=h.walk(o)),p})}walkType(o,h){if(!o||!h)throw new Error("Parameters {type} and {callback} are required.");let l=typeof o=="function";return this.walk((p,m)=>{if(l&&p instanceof o||!l&&p.type===o)return h.call(this,p,m)})}append(o){return o.parent=this,this.nodes.push(o),this}prepend(o){return o.parent=this,this.nodes.unshift(o),this}cleanRaws(o){if(super.cleanRaws(o),this.nodes)for(let h of this.nodes)h.cleanRaws(o)}insertAfter(o,h){let l=this.index(o),p;this.nodes.splice(l+1,0,h);for(let m in this.indexes)p=this.indexes[m],l<=p&&(this.indexes[m]=p+this.nodes.length);return this}insertBefore(o,h){let l=this.index(o),p;this.nodes.splice(l,0,h);for(let m in this.indexes)p=this.indexes[m],l<=p&&(this.indexes[m]=p+this.nodes.length);return this}removeChild(o){o=this.index(o),this.nodes[o].parent=void 0,this.nodes.splice(o,1);let h;for(let l in this.indexes)h=this.indexes[l],h>=o&&(this.indexes[l]=h-1);return this}removeAll(){for(let o of this.nodes)o.parent=void 0;return this.nodes=[],this}every(o){return this.nodes.every(o)}some(o){return this.nodes.some(o)}index(o){return typeof o=="number"?o:this.nodes.indexOf(o)}get first(){if(this.nodes)return this.nodes[0]}get last(){if(this.nodes)return this.nodes[this.nodes.length-1]}toString(){let o=this.nodes.map(String).join("");return this.value&&(o=this.value+o),this.raws.before&&(o=this.raws.before+o),this.raws.after&&(o+=this.raws.after),o}};u.registerWalker=o=>{let h="walk"+o.name;h.lastIndexOf("s")!==h.length-1&&(h+="s"),!u.prototype[h]&&(u.prototype[h]=function(l){return this.walkType(o,l)})},n.exports=u}}),Vl=P({"node_modules/postcss-values-parser/lib/root.js"(e,n){"use strict";A();var i=ae();n.exports=class extends i{constructor(o){super(o),this.type="root"}}}}),io=P({"node_modules/postcss-values-parser/lib/value.js"(e,n){"use strict";A();var i=ae();n.exports=class extends i{constructor(o){super(o),this.type="value",this.unbalanced=0}}}}),so=P({"node_modules/postcss-values-parser/lib/atword.js"(e,n){"use strict";A();var i=ae(),u=class extends i{constructor(o){super(o),this.type="atword"}toString(){let o=this.quoted?this.raws.quote:"";return[this.raws.before,"@",String.prototype.toString.call(this.value),this.raws.after].join("")}};i.registerWalker(u),n.exports=u}}),oo=P({"node_modules/postcss-values-parser/lib/colon.js"(e,n){"use strict";A();var i=ae(),u=we(),o=class extends u{constructor(h){super(h),this.type="colon"}};i.registerWalker(o),n.exports=o}}),ao=P({"node_modules/postcss-values-parser/lib/comma.js"(e,n){"use strict";A();var i=ae(),u=we(),o=class extends u{constructor(h){super(h),this.type="comma"}};i.registerWalker(o),n.exports=o}}),uo=P({"node_modules/postcss-values-parser/lib/comment.js"(e,n){"use strict";A();var i=ae(),u=we(),o=class extends u{constructor(h){super(h),this.type="comment",this.inline=Object(h).inline||!1}toString(){return[this.raws.before,this.inline?"//":"/*",String(this.value),this.inline?"":"*/",this.raws.after].join("")}};i.registerWalker(o),n.exports=o}}),co=P({"node_modules/postcss-values-parser/lib/function.js"(e,n){"use strict";A();var i=ae(),u=class extends i{constructor(o){super(o),this.type="func",this.unbalanced=-1}};i.registerWalker(u),n.exports=u}}),lo=P({"node_modules/postcss-values-parser/lib/number.js"(e,n){"use strict";A();var i=ae(),u=we(),o=class extends u{constructor(h){super(h),this.type="number",this.unit=Object(h).unit||""}toString(){return[this.raws.before,String(this.value),this.unit,this.raws.after].join("")}};i.registerWalker(o),n.exports=o}}),fo=P({"node_modules/postcss-values-parser/lib/operator.js"(e,n){"use strict";A();var i=ae(),u=we(),o=class extends u{constructor(h){super(h),this.type="operator"}};i.registerWalker(o),n.exports=o}}),po=P({"node_modules/postcss-values-parser/lib/paren.js"(e,n){"use strict";A();var i=ae(),u=we(),o=class extends u{constructor(h){super(h),this.type="paren",this.parenType=""}};i.registerWalker(o),n.exports=o}}),ho=P({"node_modules/postcss-values-parser/lib/string.js"(e,n){"use strict";A();var i=ae(),u=we(),o=class extends u{constructor(h){super(h),this.type="string"}toString(){let h=this.quoted?this.raws.quote:"";return[this.raws.before,h,this.value+"",h,this.raws.after].join("")}};i.registerWalker(o),n.exports=o}}),vo=P({"node_modules/postcss-values-parser/lib/word.js"(e,n){"use strict";A();var i=ae(),u=we(),o=class extends u{constructor(h){super(h),this.type="word"}};i.registerWalker(o),n.exports=o}}),mo=P({"node_modules/postcss-values-parser/lib/unicode-range.js"(e,n){"use strict";A();var i=ae(),u=we(),o=class extends u{constructor(h){super(h),this.type="unicode-range"}};i.registerWalker(o),n.exports=o}});function go(){throw new Error("setTimeout has not been defined")}function yo(){throw new Error("clearTimeout has not been defined")}function wo(e){if(Se===setTimeout)return setTimeout(e,0);if((Se===go||!Se)&&setTimeout)return Se=setTimeout,setTimeout(e,0);try{return Se(e,0)}catch{try{return Se.call(null,e,0)}catch{return Se.call(this,e,0)}}}function Gl(e){if(ke===clearTimeout)return clearTimeout(e);if((ke===yo||!ke)&&clearTimeout)return ke=clearTimeout,clearTimeout(e);try{return ke(e)}catch{try{return ke.call(null,e)}catch{return ke.call(this,e)}}}function Hl(){!Ne||!Ce||(Ne=!1,Ce.length?me=Ce.concat(me):We=-1,me.length&&_o())}function _o(){if(!Ne){var e=wo(Hl);Ne=!0;for(var n=me.length;n;){for(Ce=me,me=[];++We1)for(var i=1;iMt,debuglog:()=>Oo,default:()=>No,deprecate:()=>Rt,format:()=>wr,inherits:()=>It,inspect:()=>ye,isArray:()=>Ct,isBoolean:()=>_r,isBuffer:()=>Ao,isDate:()=>gr,isError:()=>He,isFunction:()=>Je,isNull:()=>Ke,isNullOrUndefined:()=>To,isNumber:()=>Nt,isObject:()=>je,isPrimitive:()=>qo,isRegExp:()=>Ge,isString:()=>Qe,isSymbol:()=>Eo,isUndefined:()=>ge,log:()=>Po});function wr(e){if(!Qe(e)){for(var n=[],i=0;i=o)return p;switch(p){case"%s":return String(u[i++]);case"%d":return Number(u[i++]);case"%j":try{return JSON.stringify(u[i++])}catch{return"[Circular]"}default:return p}}),l=u[i];i=3&&(i.depth=arguments[2]),arguments.length>=4&&(i.colors=arguments[3]),_r(n)?i.showHidden=n:n&&Mt(i,n),ge(i.showHidden)&&(i.showHidden=!1),ge(i.depth)&&(i.depth=2),ge(i.colors)&&(i.colors=!1),ge(i.customInspect)&&(i.customInspect=!0),i.colors&&(i.stylize=nf),mr(i,e,i.depth)}function nf(e,n){var i=ye.styles[n];return i?"\x1B["+ye.colors[i][0]+"m"+e+"\x1B["+ye.colors[i][1]+"m":e}function sf(e,n){return e}function of(e){var n={};return e.forEach(function(i,u){n[i]=!0}),n}function mr(e,n,i){if(e.customInspect&&n&&Je(n.inspect)&&n.inspect!==ye&&!(n.constructor&&n.constructor.prototype===n)){var u=n.inspect(i,e);return Qe(u)||(u=mr(e,u,i)),u}var o=af(e,n);if(o)return o;var h=Object.keys(n),l=of(h);if(e.showHidden&&(h=Object.getOwnPropertyNames(n)),He(n)&&(h.indexOf("message")>=0||h.indexOf("description")>=0))return ht(n);if(h.length===0){if(Je(n)){var p=n.name?": "+n.name:"";return e.stylize("[Function"+p+"]","special")}if(Ge(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(gr(n))return e.stylize(Date.prototype.toString.call(n),"date");if(He(n))return ht(n)}var m="",c=!1,t=["{","}"];if(Ct(n)&&(c=!0,t=["[","]"]),Je(n)){var r=n.name?": "+n.name:"";m=" [Function"+r+"]"}if(Ge(n)&&(m=" "+RegExp.prototype.toString.call(n)),gr(n)&&(m=" "+Date.prototype.toUTCString.call(n)),He(n)&&(m=" "+ht(n)),h.length===0&&(!c||n.length==0))return t[0]+m+t[1];if(i<0)return Ge(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special");e.seen.push(n);var a;return c?a=uf(e,n,i,l,h):a=h.map(function(s){return xt(e,n,i,l,s,c)}),e.seen.pop(),cf(a,m,t)}function af(e,n){if(ge(n))return e.stylize("undefined","undefined");if(Qe(n)){var i="'"+JSON.stringify(n).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(i,"string")}if(Nt(n))return e.stylize(""+n,"number");if(_r(n))return e.stylize(""+n,"boolean");if(Ke(n))return e.stylize("null","null")}function ht(e){return"["+Error.prototype.toString.call(e)+"]"}function uf(e,n,i,u,o){for(var h=[],l=0,p=n.length;l-1&&(h?p=p.split(` +`).map(function(c){return" "+c}).join(` +`).substr(2):p=` +`+p.split(` +`).map(function(c){return" "+c}).join(` +`))):p=e.stylize("[Circular]","special")),ge(l)){if(h&&o.match(/^\d+$/))return p;l=JSON.stringify(""+o),l.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(l=l.substr(1,l.length-2),l=e.stylize(l,"name")):(l=l.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),l=e.stylize(l,"string"))}return l+": "+p}function cf(e,n,i){var u=0,o=e.reduce(function(h,l){return u++,l.indexOf(` +`)>=0&&u++,h+l.replace(/\u001b\[\d\d?m/g,"").length+1},0);return o>60?i[0]+(n===""?"":n+` + `)+" "+e.join(`, + `)+" "+i[1]:i[0]+n+" "+e.join(", ")+" "+i[1]}function Ct(e){return Array.isArray(e)}function _r(e){return typeof e=="boolean"}function Ke(e){return e===null}function To(e){return e==null}function Nt(e){return typeof e=="number"}function Qe(e){return typeof e=="string"}function Eo(e){return typeof e=="symbol"}function ge(e){return e===void 0}function Ge(e){return je(e)&&jt(e)==="[object RegExp]"}function je(e){return typeof e=="object"&&e!==null}function gr(e){return je(e)&&jt(e)==="[object Date]"}function He(e){return je(e)&&(jt(e)==="[object Error]"||e instanceof Error)}function Je(e){return typeof e=="function"}function qo(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e>"u"}function Ao(e){return Buffer.isBuffer(e)}function jt(e){return Object.prototype.toString.call(e)}function dt(e){return e<10?"0"+e.toString(10):e.toString(10)}function lf(){var e=new Date,n=[dt(e.getHours()),dt(e.getMinutes()),dt(e.getSeconds())].join(":");return[e.getDate(),Co[e.getMonth()],n].join(" ")}function Po(){console.log("%s - %s",lf(),wr.apply(null,arguments))}function Mt(e,n){if(!n||!je(n))return e;for(var i=Object.keys(n),u=i.length;u--;)e[i[u]]=n[i[u]];return e}function Io(e,n){return Object.prototype.hasOwnProperty.call(e,n)}var Ro,$e,vt,Co,No,ff=Le({"node-modules-polyfills:util"(){A(),rf(),tf(),Ro=/%[sdj%]/g,$e={},ye.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},ye.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},Co=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],No={inherits:It,_extend:Mt,log:Po,isBuffer:Ao,isPrimitive:qo,isFunction:Je,isError:He,isDate:gr,isObject:je,isRegExp:Ge,isUndefined:ge,isSymbol:Eo,isString:Qe,isNumber:Nt,isNullOrUndefined:To,isNull:Ke,isBoolean:_r,isArray:Ct,inspect:ye,deprecate:Rt,format:wr,debuglog:Oo}}}),pf=P({"node-modules-polyfills-commonjs:util"(e,n){A();var i=(ff(),Pt(ko));if(i&&i.default){n.exports=i.default;for(let u in i)n.exports[u]=i[u]}else i&&(n.exports=i)}}),hf=P({"node_modules/postcss-values-parser/lib/errors/TokenizeError.js"(e,n){"use strict";A();var i=class extends Error{constructor(u){super(u),this.name=this.constructor.name,this.message=u||"An error ocurred while tokzenizing.",typeof Error.captureStackTrace=="function"?Error.captureStackTrace(this,this.constructor):this.stack=new Error(u).stack}};n.exports=i}}),df=P({"node_modules/postcss-values-parser/lib/tokenize.js"(e,n){"use strict";A();var i="{".charCodeAt(0),u="}".charCodeAt(0),o="(".charCodeAt(0),h=")".charCodeAt(0),l="'".charCodeAt(0),p='"'.charCodeAt(0),m="\\".charCodeAt(0),c="/".charCodeAt(0),t=".".charCodeAt(0),r=",".charCodeAt(0),a=":".charCodeAt(0),s="*".charCodeAt(0),f="-".charCodeAt(0),g="+".charCodeAt(0),v="#".charCodeAt(0),y=` +`.charCodeAt(0),w=" ".charCodeAt(0),d="\f".charCodeAt(0),_=" ".charCodeAt(0),k="\r".charCodeAt(0),x="@".charCodeAt(0),N="e".charCodeAt(0),I="E".charCodeAt(0),W="0".charCodeAt(0),$="9".charCodeAt(0),H="u".charCodeAt(0),D="U".charCodeAt(0),V=/[ \n\t\r\{\(\)'"\\;,/]/g,B=/[ \n\t\r\(\)\{\}\*:;@!&'"\+\|~>,\[\]\\]|\/(?=\*)/g,O=/[ \n\t\r\(\)\{\}\*:;@!&'"\-\+\|~>,\[\]\\]|\//g,j=/^[a-z0-9]/i,C=/^[a-f0-9?\-]/i,R=pf(),X=hf();n.exports=function(Q,K){K=K||{};let J=[],M=Q.valueOf(),Y=M.length,G=-1,E=1,S=0,b=0,L=null,q,T,F,z,ee,te,ue,le,re,ne,oe,ie;function ce(Ze){let _e=R.format("Unclosed %s at line: %d, column: %d, token: %d",Ze,E,S-G,S);throw new X(_e)}function fe(){let Ze=R.format("Syntax error at line: %d, column: %d, token: %d",E,S-G,S);throw new X(Ze)}for(;S0&&J[J.length-1][0]==="word"&&J[J.length-1][1]==="url",J.push(["(","(",E,S-G,E,T-G,S]);break;case h:b--,L=L&&b>0,J.push([")",")",E,S-G,E,T-G,S]);break;case l:case p:F=q===l?"'":'"',T=S;do for(ne=!1,T=M.indexOf(F,T+1),T===-1&&ce("quote",F),oe=T;M.charCodeAt(oe-1)===m;)oe-=1,ne=!ne;while(ne);J.push(["string",M.slice(S,T+1),E,S-G,E,T-G,S]),S=T;break;case x:V.lastIndex=S+1,V.test(M),V.lastIndex===0?T=M.length-1:T=V.lastIndex-2,J.push(["atword",M.slice(S,T+1),E,S-G,E,T-G,S]),S=T;break;case m:T=S,q=M.charCodeAt(T+1),ue&&q!==c&&q!==w&&q!==y&&q!==_&&q!==k&&q!==d&&(T+=1),J.push(["word",M.slice(S,T+1),E,S-G,E,T-G,S]),S=T;break;case g:case f:case s:T=S+1,ie=M.slice(S+1,T+1);let Ze=M.slice(S-1,S);if(q===f&&ie.charCodeAt(0)===f){T++,J.push(["word",M.slice(S,T),E,S-G,E,T-G,S]),S=T-1;break}J.push(["operator",M.slice(S,T),E,S-G,E,T-G,S]),S=T-1;break;default:if(q===c&&(M.charCodeAt(S+1)===s||K.loose&&!L&&M.charCodeAt(S+1)===c)){if(M.charCodeAt(S+1)===s)T=M.indexOf("*/",S+2)+1,T===0&&ce("comment","*/");else{let Be=M.indexOf(` +`,S+2);T=Be!==-1?Be-1:Y}te=M.slice(S,T+1),z=te.split(` +`),ee=z.length-1,ee>0?(le=E+ee,re=T-z[ee].length):(le=E,re=G),J.push(["comment",te,E,S-G,le,T-re,S]),G=re,E=le,S=T}else if(q===v&&!j.test(M.slice(S+1,S+2)))T=S+1,J.push(["#",M.slice(S,T),E,S-G,E,T-G,S]),S=T-1;else if((q===H||q===D)&&M.charCodeAt(S+1)===g){T=S+2;do T+=1,q=M.charCodeAt(T);while(T=W&&q<=$&&(_e=O),_e.lastIndex=S+1,_e.test(M),_e.lastIndex===0?T=M.length-1:T=_e.lastIndex-2,_e===O||q===t){let Be=M.charCodeAt(T),Wt=M.charCodeAt(T+1),Vt=M.charCodeAt(T+2);(Be===N||Be===I)&&(Wt===f||Wt===g)&&Vt>=W&&Vt<=$&&(O.lastIndex=T+2,O.test(M),O.lastIndex===0?T=M.length-1:T=O.lastIndex-2)}J.push(["word",M.slice(S,T+1),E,S-G,E,T-G,S]),S=T}break}S++}return J}}}),jo=P({"node_modules/flatten/index.js"(e,n){A(),n.exports=function(u,o){if(o=typeof o=="number"?o:1/0,!o)return Array.isArray(u)?u.map(function(l){return l}):u;return h(u,1);function h(l,p){return l.reduce(function(m,c){return Array.isArray(c)&&px-N)}n.exports=class{constructor(x,N){let I={loose:!1};this.cache=[],this.input=x,this.options=Object.assign({},I,N),this.position=0,this.unbalanced=0,this.root=new i;let W=new u;this.root.append(W),this.current=W,this.tokens=g(x,this.options)}parse(){return this.loop()}colon(){let x=this.currToken;this.newNode(new h({value:x[1],source:{start:{line:x[2],column:x[3]},end:{line:x[4],column:x[5]}},sourceIndex:x[6]})),this.position++}comma(){let x=this.currToken;this.newNode(new l({value:x[1],source:{start:{line:x[2],column:x[3]},end:{line:x[4],column:x[5]}},sourceIndex:x[6]})),this.position++}comment(){let x=!1,N=this.currToken[1].replace(/\/\*|\*\//g,""),I;this.options.loose&&N.startsWith("//")&&(N=N.substring(2),x=!0),I=new p({value:N,inline:x,source:{start:{line:this.currToken[2],column:this.currToken[3]},end:{line:this.currToken[4],column:this.currToken[5]}},sourceIndex:this.currToken[6]}),this.newNode(I),this.position++}error(x,N){throw new d(x+` at line: ${N[2]}, column ${N[3]}`)}loop(){for(;this.position0&&(this.current.type==="func"&&this.current.value==="calc"?this.prevToken[0]!=="space"&&this.prevToken[0]!=="("?this.error("Syntax Error",this.currToken):this.nextToken[0]!=="space"&&this.nextToken[0]!=="word"?this.error("Syntax Error",this.currToken):this.nextToken[0]==="word"&&this.current.last.type!=="operator"&&this.current.last.value!=="("&&this.error("Syntax Error",this.currToken):(this.nextToken[0]==="space"||this.nextToken[0]==="operator"||this.prevToken[0]==="operator")&&this.error("Syntax Error",this.currToken)),this.options.loose){if((!this.current.nodes.length||this.current.last&&this.current.last.type==="operator")&&this.nextToken[0]==="word")return this.word()}else if(this.nextToken[0]==="word")return this.word()}return N=new t({value:this.currToken[1],source:{start:{line:this.currToken[2],column:this.currToken[3]},end:{line:this.currToken[2],column:this.currToken[3]}},sourceIndex:this.currToken[4]}),this.position++,this.newNode(N)}parseTokens(){switch(this.currToken[0]){case"space":this.space();break;case"colon":this.colon();break;case"comma":this.comma();break;case"comment":this.comment();break;case"(":this.parenOpen();break;case")":this.parenClose();break;case"atword":case"word":this.word();break;case"operator":this.operator();break;case"string":this.string();break;case"unicoderange":this.unicodeRange();break;default:this.word();break}}parenOpen(){let x=1,N=this.position+1,I=this.currToken,W;for(;N=this.tokens.length-1&&!this.current.unbalanced)&&(this.current.unbalanced--,this.current.unbalanced<0&&this.error("Expected opening parenthesis",x),!this.current.unbalanced&&this.cache.length&&(this.current=this.cache.pop()))}space(){let x=this.currToken;this.position===this.tokens.length-1||this.nextToken[0]===","||this.nextToken[0]===")"?(this.current.last.raws.after+=x[1],this.position++):(this.spaces=x[1],this.position++)}unicodeRange(){let x=this.currToken;this.newNode(new f({value:x[1],source:{start:{line:x[2],column:x[3]},end:{line:x[4],column:x[5]}},sourceIndex:x[6]})),this.position++}splitWord(){let x=this.nextToken,N=this.currToken[1],I=/^[\+\-]?((\d+(\.\d*)?)|(\.\d+))([eE][\+\-]?\d+)?/,W=/^(?!\#([a-z0-9]+))[\#\{\}]/gi,$,H;if(!W.test(N))for(;x&&x[0]==="word";){this.position++;let D=this.currToken[1];N+=D,x=this.nextToken}$=y(N,"@"),H=_(w(v([[0],$]))),H.forEach((D,V)=>{let B=H[V+1]||N.length,O=N.slice(D,B),j;if(~$.indexOf(D))j=new o({value:O.slice(1),source:{start:{line:this.currToken[2],column:this.currToken[3]+D},end:{line:this.currToken[4],column:this.currToken[3]+(B-1)}},sourceIndex:this.currToken[6]+H[V]});else if(I.test(this.currToken[1])){let C=O.replace(I,"");j=new c({value:O.replace(C,""),source:{start:{line:this.currToken[2],column:this.currToken[3]+D},end:{line:this.currToken[4],column:this.currToken[3]+(B-1)}},sourceIndex:this.currToken[6]+H[V],unit:C})}else j=new(x&&x[0]==="("?m:s)({value:O,source:{start:{line:this.currToken[2],column:this.currToken[3]+D},end:{line:this.currToken[4],column:this.currToken[3]+(B-1)}},sourceIndex:this.currToken[6]+H[V]}),j.type==="word"?(j.isHex=/^#(.+)/.test(O),j.isColor=/^#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i.test(O)):this.cache.push(this.current);this.newNode(j)}),this.position++}string(){let x=this.currToken,N=this.currToken[1],I=/^(\"|\')/,W=I.test(N),$="",H;W&&($=N.match(I)[0],N=N.slice(1,N.length-1)),H=new a({value:N,source:{start:{line:x[2],column:x[3]},end:{line:x[4],column:x[5]}},sourceIndex:x[6],quoted:W}),H.raws.quote=$,this.newNode(H),this.position++}word(){return this.splitWord()}newNode(x){return this.spaces&&(x.raws.before+=this.spaces,this.spaces=""),this.current.append(x)}get currToken(){return this.tokens[this.position]}get nextToken(){return this.tokens[this.position+1]}get prevToken(){return this.tokens[this.position-1]}}}}),gf=P({"node_modules/postcss-values-parser/lib/index.js"(e,n){"use strict";A();var i=mf(),u=so(),o=oo(),h=ao(),l=uo(),p=co(),m=lo(),c=fo(),t=po(),r=ho(),a=mo(),s=io(),f=vo(),g=function(v,y){return new i(v,y)};g.atword=function(v){return new u(v)},g.colon=function(v){return new o(Object.assign({value:":"},v))},g.comma=function(v){return new h(Object.assign({value:","},v))},g.comment=function(v){return new l(v)},g.func=function(v){return new p(v)},g.number=function(v){return new m(v)},g.operator=function(v){return new c(v)},g.paren=function(v){return new t(Object.assign({value:"("},v))},g.string=function(v){return new r(Object.assign({quote:"'"},v))},g.value=function(v){return new s(v)},g.word=function(v){return new f(v)},g.unicodeRange=function(v){return new a(v)},n.exports=g}}),ze=P({"node_modules/postcss-selector-parser/dist/selectors/node.js"(e,n){"use strict";A(),e.__esModule=!0;var i=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(l){return typeof l}:function(l){return l&&typeof Symbol=="function"&&l.constructor===Symbol&&l!==Symbol.prototype?"symbol":typeof l};function u(l,p){if(!(l instanceof p))throw new TypeError("Cannot call a class as a function")}var o=function l(p,m){if((typeof p>"u"?"undefined":i(p))!=="object")return p;var c=new p.constructor;for(var t in p)if(p.hasOwnProperty(t)){var r=p[t],a=typeof r>"u"?"undefined":i(r);t==="parent"&&a==="object"?m&&(c[t]=m):r instanceof Array?c[t]=r.map(function(s){return l(s,c)}):c[t]=l(r,c)}return c},h=function(){function l(){var p=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};u(this,l);for(var m in p)this[m]=p[m];var c=p.spaces;c=c===void 0?{}:c;var t=c.before,r=t===void 0?"":t,a=c.after,s=a===void 0?"":a;this.spaces={before:r,after:s}}return l.prototype.remove=function(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this},l.prototype.replaceWith=function(){if(this.parent){for(var m in arguments)this.parent.insertBefore(this,arguments[m]);this.remove()}return this},l.prototype.next=function(){return this.parent.at(this.parent.index(this)+1)},l.prototype.prev=function(){return this.parent.at(this.parent.index(this)-1)},l.prototype.clone=function(){var m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},c=o(this);for(var t in m)c[t]=m[t];return c},l.prototype.toString=function(){return[this.spaces.before,String(this.value),this.spaces.after].join("")},l}();e.default=h,n.exports=e.default}}),se=P({"node_modules/postcss-selector-parser/dist/selectors/types.js"(e){"use strict";A(),e.__esModule=!0;var n=e.TAG="tag",i=e.STRING="string",u=e.SELECTOR="selector",o=e.ROOT="root",h=e.PSEUDO="pseudo",l=e.NESTING="nesting",p=e.ID="id",m=e.COMMENT="comment",c=e.COMBINATOR="combinator",t=e.CLASS="class",r=e.ATTRIBUTE="attribute",a=e.UNIVERSAL="universal"}}),Dt=P({"node_modules/postcss-selector-parser/dist/selectors/container.js"(e,n){"use strict";A(),e.__esModule=!0;var i=function(){function s(f,g){for(var v=0;v=v&&(this.indexes[w]=y-1);return this},f.prototype.removeAll=function(){for(var w=this.nodes,v=Array.isArray(w),y=0,w=v?w:w[Symbol.iterator]();;){var d;if(v){if(y>=w.length)break;d=w[y++]}else{if(y=w.next(),y.done)break;d=y.value}var _=d;_.parent=void 0}return this.nodes=[],this},f.prototype.empty=function(){return this.removeAll()},f.prototype.insertAfter=function(v,y){var w=this.index(v);this.nodes.splice(w+1,0,y);var d=void 0;for(var _ in this.indexes)d=this.indexes[_],w<=d&&(this.indexes[_]=d+this.nodes.length);return this},f.prototype.insertBefore=function(v,y){var w=this.index(v);this.nodes.splice(w,0,y);var d=void 0;for(var _ in this.indexes)d=this.indexes[_],w<=d&&(this.indexes[_]=d+this.nodes.length);return this},f.prototype.each=function(v){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach++;var y=this.lastEach;if(this.indexes[y]=0,!!this.length){for(var w=void 0,d=void 0;this.indexes[y],\[\]\\]|\/(?=\*)/g;function H(D){for(var V=[],B=D.css.valueOf(),O=void 0,j=void 0,C=void 0,R=void 0,X=void 0,Z=void 0,Q=void 0,K=void 0,J=void 0,M=void 0,Y=void 0,G=B.length,E=-1,S=1,b=0,L=function(T,F){if(D.safe)B+=F,j=B.length-1;else throw D.error("Unclosed "+T,S,b-E,b)};b0?(K=S+X,J=j-R[X].length):(K=S,J=E),V.push(["comment",Z,S,b-E,K,j-J,b]),E=J,S=K,b=j):($.lastIndex=b+1,$.test(B),$.lastIndex===0?j=B.length-1:j=$.lastIndex-2,V.push(["word",B.slice(b,j+1),S,b-E,S,j-E,b]),b=j);break}b++}return V}n.exports=e.default}}),_f=P({"node_modules/postcss-selector-parser/dist/parser.js"(e,n){"use strict";A(),e.__esModule=!0;var i=function(){function E(S,b){for(var L=0;L1?(F[0]===""&&(F[0]=!0),z.attribute=this.parseValue(F[2]),z.namespace=this.parseNamespace(F[0])):z.attribute=this.parseValue(T[0]),L=new $.default(z),T[2]){var ee=T[2].split(/(\s+i\s*?)$/),te=ee[0].trim();L.value=this.lossy?te:ee[0],ee[1]&&(L.insensitive=!0,this.lossy||(L.raws.insensitive=ee[1])),L.quoted=te[0]==="'"||te[0]==='"',L.raws.unquoted=L.quoted?te.slice(1,-1):te}this.newNode(L),this.position++},E.prototype.combinator=function(){if(this.currToken[1]==="|")return this.namespace();for(var b=new B.default({value:"",source:{start:{line:this.currToken[2],column:this.currToken[3]},end:{line:this.currToken[2],column:this.currToken[3]}},sourceIndex:this.currToken[4]});this.position1&&b.nextToken&&b.nextToken[0]==="("&&b.error("Misplaced parenthesis.")})}else this.error('Unexpected "'+this.currToken[0]+'" found.')},E.prototype.space=function(){var b=this.currToken;this.position===0||this.prevToken[0]===","||this.prevToken[0]==="("?(this.spaces=this.parseSpace(b[1]),this.position++):this.position===this.tokens.length-1||this.nextToken[0]===","||this.nextToken[0]===")"?(this.current.last.spaces.after=this.parseSpace(b[1]),this.position++):this.combinator()},E.prototype.string=function(){var b=this.currToken;this.newNode(new x.default({value:this.currToken[1],source:{start:{line:b[2],column:b[3]},end:{line:b[4],column:b[5]}},sourceIndex:b[6]})),this.position++},E.prototype.universal=function(b){var L=this.nextToken;if(L&&L[1]==="|")return this.position++,this.namespace();this.newNode(new D.default({value:this.currToken[1],source:{start:{line:this.currToken[2],column:this.currToken[3]},end:{line:this.currToken[2],column:this.currToken[3]}},sourceIndex:this.currToken[4]}),b),this.position++},E.prototype.splitWord=function(b,L){for(var q=this,T=this.nextToken,F=this.currToken[1];T&&T[0]==="word";){this.position++;var z=this.currToken[1];if(F+=z,z.lastIndexOf("\\")===z.length-1){var ee=this.nextToken;ee&&ee[0]==="space"&&(F+=this.parseSpace(ee[1]," "),this.position++)}T=this.nextToken}var te=(0,l.default)(F,"."),ue=(0,l.default)(F,"#"),le=(0,l.default)(F,"#{");le.length&&(ue=ue.filter(function(ne){return!~le.indexOf(ne)}));var re=(0,R.default)((0,m.default)((0,o.default)([[0],te,ue])));re.forEach(function(ne,oe){var ie=re[oe+1]||F.length,ce=F.slice(ne,ie);if(oe===0&&L)return L.call(q,ce,re.length);var fe=void 0;~te.indexOf(ne)?fe=new f.default({value:ce.slice(1),source:{start:{line:q.currToken[2],column:q.currToken[3]+ne},end:{line:q.currToken[4],column:q.currToken[3]+(ie-1)}},sourceIndex:q.currToken[6]+re[oe]}):~ue.indexOf(ne)?fe=new w.default({value:ce.slice(1),source:{start:{line:q.currToken[2],column:q.currToken[3]+ne},end:{line:q.currToken[4],column:q.currToken[3]+(ie-1)}},sourceIndex:q.currToken[6]+re[oe]}):fe=new _.default({value:ce,source:{start:{line:q.currToken[2],column:q.currToken[3]+ne},end:{line:q.currToken[4],column:q.currToken[3]+(ie-1)}},sourceIndex:q.currToken[6]+re[oe]}),q.newNode(fe,b)}),this.position++},E.prototype.word=function(b){var L=this.nextToken;return L&&L[1]==="|"?(this.position++,this.namespace()):this.splitWord(b)},E.prototype.loop=function(){for(;this.position1&&arguments[1]!==void 0?arguments[1]:{},a=new o.default({css:t,error:function(f){throw new Error(f)},options:r});return this.res=a,this.func(a),this},i(m,[{key:"result",get:function(){return String(this.res)}}]),m}();e.default=p,n.exports=e.default}}),xf=P({"node_modules/postcss-selector-parser/dist/index.js"(e,n){"use strict";A(),e.__esModule=!0;var i=bf(),u=O(i),o=Go(),h=O(o),l=Bo(),p=O(l),m=Jo(),c=O(m),t=Fo(),r=O(t),a=Uo(),s=O(a),f=Ko(),g=O(f),v=Vo(),y=O(v),w=Lo(),d=O(w),_=zo(),k=O(_),x=Wo(),N=O(x),I=$o(),W=O(I),$=Ho(),H=O($),D=se(),V=B(D);function B(C){if(C&&C.__esModule)return C;var R={};if(C!=null)for(var X in C)Object.prototype.hasOwnProperty.call(C,X)&&(R[X]=C[X]);return R.default=C,R}function O(C){return C&&C.__esModule?C:{default:C}}var j=function(R){return new u.default(R)};j.attribute=function(C){return new h.default(C)},j.className=function(C){return new p.default(C)},j.combinator=function(C){return new c.default(C)},j.comment=function(C){return new r.default(C)},j.id=function(C){return new s.default(C)},j.nesting=function(C){return new g.default(C)},j.pseudo=function(C){return new y.default(C)},j.root=function(C){return new d.default(C)},j.selector=function(C){return new k.default(C)},j.string=function(C){return new N.default(C)},j.tag=function(C){return new W.default(C)},j.universal=function(C){return new H.default(C)},Object.keys(V).forEach(function(C){C!=="__esModule"&&(j[C]=V[C])}),e.default=j,n.exports=e.default}}),Qo=P({"node_modules/postcss-media-query-parser/dist/nodes/Node.js"(e){"use strict";A(),Object.defineProperty(e,"__esModule",{value:!0});function n(i){this.after=i.after,this.before=i.before,this.type=i.type,this.value=i.value,this.sourceIndex=i.sourceIndex}e.default=n}}),Yo=P({"node_modules/postcss-media-query-parser/dist/nodes/Container.js"(e){"use strict";A(),Object.defineProperty(e,"__esModule",{value:!0});var n=Qo(),i=u(n);function u(h){return h&&h.__esModule?h:{default:h}}function o(h){var l=this;this.constructor(h),this.nodes=h.nodes,this.after===void 0&&(this.after=this.nodes.length>0?this.nodes[this.nodes.length-1].after:""),this.before===void 0&&(this.before=this.nodes.length>0?this.nodes[0].before:""),this.sourceIndex===void 0&&(this.sourceIndex=this.before.length),this.nodes.forEach(function(p){p.parent=l})}o.prototype=Object.create(i.default.prototype),o.constructor=i.default,o.prototype.walk=function(l,p){for(var m=typeof l=="string"||l instanceof RegExp,c=m?p:l,t=typeof l=="string"?new RegExp(l):l,r=0;r0&&(r[w-1].after=f.before),f.type===void 0){if(w>0){if(r[w-1].type==="media-feature-expression"){f.type="keyword";continue}if(r[w-1].value==="not"||r[w-1].value==="only"){f.type="media-type";continue}if(r[w-1].value==="and"){f.type="media-feature-expression";continue}r[w-1].type==="media-type"&&(r[w+1]?f.type=r[w+1].type==="media-feature-expression"?"keyword":"media-feature-expression":f.type="media-feature-expression")}if(w===0){if(!r[w+1]){f.type="media-type";continue}if(r[w+1]&&(r[w+1].type==="media-feature-expression"||r[w+1].type==="keyword")){f.type="media-type";continue}if(r[w+2]){if(r[w+2].type==="media-feature-expression"){f.type="media-type",r[w+1].type="keyword";continue}if(r[w+2].type==="keyword"){f.type="keyword",r[w+1].type="media-type";continue}}if(r[w+3]&&r[w+3].type==="media-feature-expression"){f.type="keyword",r[w+1].type="media-type",r[w+2].type="keyword";continue}}}return r}function m(c){var t=[],r=0,a=0,s=/^(\s*)url\s*\(/.exec(c);if(s!==null){for(var f=s[0].length,g=1;g>0;){var v=c[f];v==="("&&g++,v===")"&&g--,f++}t.unshift(new i.default({type:"url",value:c.substring(0,f).trim(),sourceIndex:s[1].length,before:s[1],after:/^(\s*)/.exec(c.substring(f))[1]})),r=f}for(var y=r;yna,default:()=>sa,delimiter:()=>kt,dirname:()=>ta,extname:()=>ia,isAbsolute:()=>zt,join:()=>ea,normalize:()=>Lt,relative:()=>ra,resolve:()=>yr,sep:()=>St});function Zo(e,n){for(var i=0,u=e.length-1;u>=0;u--){var o=e[u];o==="."?e.splice(u,1):o===".."?(e.splice(u,1),i++):i&&(e.splice(u,1),i--)}if(n)for(;i--;i)e.unshift("..");return e}function yr(){for(var e="",n=!1,i=arguments.length-1;i>=-1&&!n;i--){var u=i>=0?arguments[i]:"/";if(typeof u!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!u)continue;e=u+"/"+e,n=u.charAt(0)==="/"}return e=Zo(Bt(e.split("/"),function(o){return!!o}),!n).join("/"),(n?"/":"")+e||"."}function Lt(e){var n=zt(e),i=oa(e,-1)==="/";return e=Zo(Bt(e.split("/"),function(u){return!!u}),!n).join("/"),!e&&!n&&(e="."),e&&i&&(e+="/"),(n?"/":"")+e}function zt(e){return e.charAt(0)==="/"}function ea(){var e=Array.prototype.slice.call(arguments,0);return Lt(Bt(e,function(n,i){if(typeof n!="string")throw new TypeError("Arguments to path.join must be strings");return n}).join("/"))}function ra(e,n){e=yr(e).substr(1),n=yr(n).substr(1);function i(c){for(var t=0;t=0&&c[r]==="";r--);return t>r?[]:c.slice(t,r-t+1)}for(var u=i(e.split("/")),o=i(n.split("/")),h=Math.min(u.length,o.length),l=h,p=0;p"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}function t(g){return Function.toString.call(g).indexOf("[native code]")!==-1}function r(g,v){return r=Object.setPrototypeOf||function(w,d){return w.__proto__=d,w},r(g,v)}function a(g){return a=Object.setPrototypeOf?Object.getPrototypeOf:function(y){return y.__proto__||Object.getPrototypeOf(y)},a(g)}var s=function(g){l(v,g);function v(w,d,_,k,x,N){var I;return I=g.call(this,w)||this,I.name="CssSyntaxError",I.reason=w,x&&(I.file=x),k&&(I.source=k),N&&(I.plugin=N),typeof d<"u"&&typeof _<"u"&&(I.line=d,I.column=_),I.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(h(I),v),I}var y=v.prototype;return y.setMessage=function(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason},y.showSourceCode=function(d){var _=this;if(!this.source)return"";var k=this.source;u.default&&(typeof d>"u"&&(d=i.default.isColorSupported),d&&(k=(0,u.default)(k)));var x=k.split(/\r?\n/),N=Math.max(this.line-3,0),I=Math.min(this.line+2,x.length),W=String(I).length;function $(D){return d&&i.default.red?i.default.red(i.default.bold(D)):D}function H(D){return d&&i.default.gray?i.default.gray(D):D}return x.slice(N,I).map(function(D,V){var B=N+1+V,O=" "+(" "+B).slice(-W)+" | ";if(B===_.line){var j=H(O.replace(/\d/g," "))+D.slice(0,_.column-1).replace(/[^\t]/g," ");return $(">")+H(O)+D+` + `+j+$("^")}return" "+H(O)+D}).join(` +`)},y.toString=function(){var d=this.showSourceCode();return d&&(d=` + +`+d+` +`),this.name+": "+this.message+d},v}(p(Error)),f=s;e.default=f,n.exports=e.default}}),Af=P({"node_modules/postcss/lib/previous-map.js"(e,n){A(),n.exports=class{}}}),xr=P({"node_modules/postcss/lib/input.js"(e,n){"use strict";A(),e.__esModule=!0,e.default=void 0;var i=h(Tf()),u=h(aa()),o=h(Af());function h(r){return r&&r.__esModule?r:{default:r}}function l(r,a){for(var s=0;s"u"||typeof s=="object"&&!s.toString)throw new Error("PostCSS received "+s+" instead of CSS string");this.css=s.toString(),this.css[0]==="\uFEFF"||this.css[0]==="\uFFFE"?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,f.from&&(/^\w+:\/\//.test(f.from)||i.default.isAbsolute(f.from)?this.file=f.from:this.file=i.default.resolve(f.from));var g=new o.default(this.css,f);if(g.text){this.map=g;var v=g.consumer().file;!this.file&&v&&(this.file=this.mapResolve(v))}this.file||(m+=1,this.id=""),this.map&&(this.map.file=this.from)}var a=r.prototype;return a.error=function(f,g,v,y){y===void 0&&(y={});var w,d=this.origin(g,v);return d?w=new u.default(f,d.line,d.column,d.source,d.file,y.plugin):w=new u.default(f,g,v,this.css,this.file,y.plugin),w.input={line:g,column:v,source:this.css},this.file&&(w.input.file=this.file),w},a.origin=function(f,g){if(!this.map)return!1;var v=this.map.consumer(),y=v.originalPositionFor({line:f,column:g});if(!y.source)return!1;var w={file:this.mapResolve(y.source),line:y.line,column:y.column},d=v.sourceContentFor(y.source);return d&&(w.source=d),w},a.mapResolve=function(f){return/^\w+:\/\//.test(f)?f:i.default.resolve(this.map.consumer().sourceRoot||".",f)},p(r,[{key:"from",get:function(){return this.file||this.id}}]),r}(),t=c;e.default=t,n.exports=e.default}}),Sr=P({"node_modules/postcss/lib/stringifier.js"(e,n){"use strict";A(),e.__esModule=!0,e.default=void 0;var i={colon:": ",indent:" ",beforeDecl:` +`,beforeRule:` +`,beforeOpen:" ",beforeClose:` +`,beforeComment:` +`,after:` +`,emptyBody:"",commentLeft:" ",commentRight:" ",semicolon:!1};function u(l){return l[0].toUpperCase()+l.slice(1)}var o=function(){function l(m){this.builder=m}var p=l.prototype;return p.stringify=function(c,t){this[c.type](c,t)},p.root=function(c){this.body(c),c.raws.after&&this.builder(c.raws.after)},p.comment=function(c){var t=this.raw(c,"left","commentLeft"),r=this.raw(c,"right","commentRight");this.builder("/*"+t+c.text+r+"*/",c)},p.decl=function(c,t){var r=this.raw(c,"between","colon"),a=c.prop+r+this.rawValue(c,"value");c.important&&(a+=c.raws.important||" !important"),t&&(a+=";"),this.builder(a,c)},p.rule=function(c){this.block(c,this.rawValue(c,"selector")),c.raws.ownSemicolon&&this.builder(c.raws.ownSemicolon,c,"end")},p.atrule=function(c,t){var r="@"+c.name,a=c.params?this.rawValue(c,"params"):"";if(typeof c.raws.afterName<"u"?r+=c.raws.afterName:a&&(r+=" "),c.nodes)this.block(c,r+a);else{var s=(c.raws.between||"")+(t?";":"");this.builder(r+a+s,c)}},p.body=function(c){for(var t=c.nodes.length-1;t>0&&c.nodes[t].type==="comment";)t-=1;for(var r=this.raw(c,"semicolon"),a=0;a"u"&&(a=i[r]),f.rawCache[r]=a,a},p.rawSemicolon=function(c){var t;return c.walk(function(r){if(r.nodes&&r.nodes.length&&r.last.type==="decl"&&(t=r.raws.semicolon,typeof t<"u"))return!1}),t},p.rawEmptyBody=function(c){var t;return c.walk(function(r){if(r.nodes&&r.nodes.length===0&&(t=r.raws.after,typeof t<"u"))return!1}),t},p.rawIndent=function(c){if(c.raws.indent)return c.raws.indent;var t;return c.walk(function(r){var a=r.parent;if(a&&a!==c&&a.parent&&a.parent===c&&typeof r.raws.before<"u"){var s=r.raws.before.split(` +`);return t=s[s.length-1],t=t.replace(/[^\s]/g,""),!1}}),t},p.rawBeforeComment=function(c,t){var r;return c.walkComments(function(a){if(typeof a.raws.before<"u")return r=a.raws.before,r.indexOf(` +`)!==-1&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(t,null,"beforeDecl"):r&&(r=r.replace(/[^\s]/g,"")),r},p.rawBeforeDecl=function(c,t){var r;return c.walkDecls(function(a){if(typeof a.raws.before<"u")return r=a.raws.before,r.indexOf(` +`)!==-1&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(t,null,"beforeRule"):r&&(r=r.replace(/[^\s]/g,"")),r},p.rawBeforeRule=function(c){var t;return c.walk(function(r){if(r.nodes&&(r.parent!==c||c.first!==r)&&typeof r.raws.before<"u")return t=r.raws.before,t.indexOf(` +`)!==-1&&(t=t.replace(/[^\n]+$/,"")),!1}),t&&(t=t.replace(/[^\s]/g,"")),t},p.rawBeforeClose=function(c){var t;return c.walk(function(r){if(r.nodes&&r.nodes.length>0&&typeof r.raws.after<"u")return t=r.raws.after,t.indexOf(` +`)!==-1&&(t=t.replace(/[^\n]+$/,"")),!1}),t&&(t=t.replace(/[^\s]/g,"")),t},p.rawBeforeOpen=function(c){var t;return c.walk(function(r){if(r.type!=="decl"&&(t=r.raws.between,typeof t<"u"))return!1}),t},p.rawColon=function(c){var t;return c.walkDecls(function(r){if(typeof r.raws.between<"u")return t=r.raws.between.replace(/[^\s:]/g,""),!1}),t},p.beforeAfter=function(c,t){var r;c.type==="decl"?r=this.raw(c,null,"beforeDecl"):c.type==="comment"?r=this.raw(c,null,"beforeComment"):t==="before"?r=this.raw(c,null,"beforeRule"):r=this.raw(c,null,"beforeClose");for(var a=c.parent,s=0;a&&a.type!=="root";)s+=1,a=a.parent;if(r.indexOf(` +`)!==-1){var f=this.raw(c,null,"indent");if(f.length)for(var g=0;g=S}function ue(re){if(F.length)return F.pop();if(!(q>=S)){var ne=re?re.ignoreUnclosed:!1;switch(B=D.charCodeAt(q),(B===l||B===m||B===t&&D.charCodeAt(q+1)!==l)&&(b=q,L+=1),B){case l:case p:case c:case t:case m:O=q;do O+=1,B=D.charCodeAt(O),B===l&&(b=O,L+=1);while(B===p||B===l||B===c||B===t||B===m);E=["space",D.slice(q,O)],q=O-1;break;case r:case a:case g:case v:case d:case y:case f:var oe=String.fromCharCode(B);E=[oe,oe,L,q-b];break;case s:if(Y=T.length?T.pop()[1]:"",G=D.charCodeAt(q+1),Y==="url"&&G!==i&&G!==u&&G!==p&&G!==l&&G!==c&&G!==m&&G!==t){O=q;do{if(J=!1,O=D.indexOf(")",O+1),O===-1)if(V||ne){O=q;break}else ee("bracket");for(M=O;D.charCodeAt(M-1)===o;)M-=1,J=!J}while(J);E=["brackets",D.slice(q,O+1),L,q-b,L,O-b],q=O}else O=D.indexOf(")",q+1),X=D.slice(q,O+1),O===-1||N.test(X)?E=["(","(",L,q-b]:(E=["brackets",X,L,q-b,L,O-b],q=O);break;case i:case u:j=B===i?"'":'"',O=q;do{if(J=!1,O=D.indexOf(j,O+1),O===-1)if(V||ne){O=q+1;break}else ee("string");for(M=O;D.charCodeAt(M-1)===o;)M-=1,J=!J}while(J);X=D.slice(q,O+1),C=X.split(` +`),R=C.length-1,R>0?(Q=L+R,K=O-C[R].length):(Q=L,K=b),E=["string",D.slice(q,O+1),L,q-b,Q,O-K],b=K,L=Q,q=O;break;case _:k.lastIndex=q+1,k.test(D),k.lastIndex===0?O=D.length-1:O=k.lastIndex-2,E=["at-word",D.slice(q,O+1),L,q-b,L,O-b],q=O;break;case o:for(O=q,Z=!0;D.charCodeAt(O+1)===o;)O+=1,Z=!Z;if(B=D.charCodeAt(O+1),Z&&B!==h&&B!==p&&B!==l&&B!==c&&B!==t&&B!==m&&(O+=1,I.test(D.charAt(O)))){for(;I.test(D.charAt(O+1));)O+=1;D.charCodeAt(O+1)===p&&(O+=1)}E=["word",D.slice(q,O+1),L,q-b,L,O-b],q=O;break;default:B===h&&D.charCodeAt(q+1)===w?(O=D.indexOf("*/",q+2)+1,O===0&&(V||ne?O=D.length:ee("comment")),X=D.slice(q,O+1),C=X.split(` +`),R=C.length-1,R>0?(Q=L+R,K=O-C[R].length):(Q=L,K=b),E=["comment",X,L,q-b,Q,O-K],b=K,L=Q,q=O):(x.lastIndex=q+1,x.test(D),x.lastIndex===0?O=D.length-1:O=x.lastIndex-2,E=["word",D.slice(q,O+1),L,q-b,L,O-b],T.push(E),q=O);break}return q++,E}}function le(re){F.push(re)}return{back:le,nextToken:ue,endOfFile:te,position:z}}n.exports=e.default}}),la=P({"node_modules/postcss/lib/parse.js"(e,n){"use strict";A(),e.__esModule=!0,e.default=void 0;var i=o($t()),u=o(xr());function o(p){return p&&p.__esModule?p:{default:p}}function h(p,m){var c=new u.default(p,m),t=new i.default(c);try{t.parse()}catch(r){throw r}return t.root}var l=h;e.default=l,n.exports=e.default}}),Pf=P({"node_modules/postcss/lib/list.js"(e,n){"use strict";A(),e.__esModule=!0,e.default=void 0;var i={split:function(h,l,p){for(var m=[],c="",t=!1,r=0,a=!1,s=!1,f=0;f0&&(r-=1):r===0&&l.indexOf(g)!==-1&&(t=!0),t?(c!==""&&m.push(c.trim()),c="",t=!1):c+=g}return(p||c!=="")&&m.push(c.trim()),m},space:function(h){var l=[" ",` +`," "];return i.split(h,l)},comma:function(h){return i.split(h,[","],!0)}},u=i;e.default=u,n.exports=e.default}}),fa=P({"node_modules/postcss/lib/rule.js"(e,n){"use strict";A(),e.__esModule=!0,e.default=void 0;var i=o(Or()),u=o(Pf());function o(t){return t&&t.__esModule?t:{default:t}}function h(t,r){for(var a=0;a"u"||g[Symbol.iterator]==null){if(Array.isArray(g)||(y=p(g))||v&&g&&typeof g.length=="number"){y&&(g=y);var w=0;return function(){return w>=g.length?{done:!0}:{done:!1,value:g[w++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}return y=g[Symbol.iterator](),y.next.bind(y)}function p(g,v){if(g){if(typeof g=="string")return m(g,v);var y=Object.prototype.toString.call(g).slice(8,-1);if(y==="Object"&&g.constructor&&(y=g.constructor.name),y==="Map"||y==="Set")return Array.from(g);if(y==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(y))return m(g,v)}}function m(g,v){(v==null||v>g.length)&&(v=g.length);for(var y=0,w=new Array(v);y=d&&(this.indexes[k]=_-1);return this},y.removeAll=function(){for(var d=l(this.nodes),_;!(_=d()).done;){var k=_.value;k.parent=void 0}return this.nodes=[],this},y.replaceValues=function(d,_,k){return k||(k=_,_={}),this.walkDecls(function(x){_.props&&_.props.indexOf(x.prop)===-1||_.fast&&x.value.indexOf(_.fast)===-1||(x.value=x.value.replace(d,k))}),this},y.every=function(d){return this.nodes.every(d)},y.some=function(d){return this.nodes.some(d)},y.index=function(d){return typeof d=="number"?d:this.nodes.indexOf(d)},y.normalize=function(d,_){var k=this;if(typeof d=="string"){var x=la();d=a(x(d).nodes)}else if(Array.isArray(d)){d=d.slice(0);for(var N=l(d),I;!(I=N()).done;){var W=I.value;W.parent&&W.parent.removeChild(W,"ignore")}}else if(d.type==="root"){d=d.nodes.slice(0);for(var $=l(d),H;!(H=$()).done;){var D=H.value;D.parent&&D.parent.removeChild(D,"ignore")}}else if(d.type)d=[d];else if(d.prop){if(typeof d.value>"u")throw new Error("Value field is missed in node creation");typeof d.value!="string"&&(d.value=String(d.value)),d=[new i.default(d)]}else if(d.selector){var V=fa();d=[new V(d)]}else if(d.name){var B=pa();d=[new B(d)]}else if(d.text)d=[new u.default(d)];else throw new Error("Unknown node type in node creation");var O=d.map(function(j){return j.parent&&j.parent.removeChild(j),typeof j.raws.before>"u"&&_&&typeof _.raws.before<"u"&&(j.raws.before=_.raws.before.replace(/[^\s]/g,"")),j.parent=k,j});return O},t(v,[{key:"first",get:function(){if(this.nodes)return this.nodes[0]}},{key:"last",get:function(){if(this.nodes)return this.nodes[this.nodes.length-1]}}]),v}(o.default),f=s;e.default=f,n.exports=e.default}}),pa=P({"node_modules/postcss/lib/at-rule.js"(e,n){"use strict";A(),e.__esModule=!0,e.default=void 0;var i=u(Or());function u(p){return p&&p.__esModule?p:{default:p}}function o(p,m){p.prototype=Object.create(m.prototype),p.prototype.constructor=p,p.__proto__=m}var h=function(p){o(m,p);function m(t){var r;return r=p.call(this,t)||this,r.type="atrule",r}var c=m.prototype;return c.append=function(){var r;this.nodes||(this.nodes=[]);for(var a=arguments.length,s=new Array(a),f=0;f"u"||v[Symbol.iterator]==null){if(Array.isArray(v)||(w=c(v))||y&&v&&typeof v.length=="number"){w&&(v=w);var d=0;return function(){return d>=v.length?{done:!0}:{done:!1,value:v[d++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}return w=v[Symbol.iterator](),w.next.bind(w)}function c(v,y){if(v){if(typeof v=="string")return t(v,y);var w=Object.prototype.toString.call(v).slice(8,-1);if(w==="Object"&&v.constructor&&(w=v.constructor.name),w==="Map"||w==="Set")return Array.from(v);if(w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w))return t(v,y)}}function t(v,y){(y==null||y>v.length)&&(y=v.length);for(var w=0,d=new Array(y);w"u"&&(_.map={}),_.map.inline||(_.map.inline=!1),_.map.prev=d.map);else{var x=l.default;_.syntax&&(x=_.syntax.parse),_.parser&&(x=_.parser),x.parse&&(x=x.parse);try{k=x(d,_)}catch(N){this.error=N}}this.result=new h.default(w,k,_)}var y=v.prototype;return y.warnings=function(){return this.sync().warnings()},y.toString=function(){return this.css},y.then=function(d,_){return this.async().then(d,_)},y.catch=function(d){return this.async().catch(d)},y.finally=function(d){return this.async().then(d,d)},y.handleError=function(d,_){try{if(this.error=d,d.name==="CssSyntaxError"&&!d.plugin)d.plugin=_.postcssPlugin,d.setMessage();else if(_.postcssVersion&&!1)var k,x,N,I,W}catch($){console&&console.error&&console.error($)}},y.asyncTick=function(d,_){var k=this;if(this.plugin>=this.processor.plugins.length)return this.processed=!0,d();try{var x=this.processor.plugins[this.plugin],N=this.run(x);this.plugin+=1,s(N)?N.then(function(){k.asyncTick(d,_)}).catch(function(I){k.handleError(I,x),k.processed=!0,_(I)}):this.asyncTick(d,_)}catch(I){this.processed=!0,_(I)}},y.async=function(){var d=this;return this.processed?new Promise(function(_,k){d.error?k(d.error):_(d.stringify())}):this.processing?this.processing:(this.processing=new Promise(function(_,k){if(d.error)return k(d.error);d.plugin=0,d.asyncTick(_,k)}).then(function(){return d.processed=!0,d.stringify()}),this.processing)},y.sync=function(){if(this.processed)return this.result;if(this.processed=!0,this.processing)throw new Error("Use process(css).then(cb) to work with async plugins");if(this.error)throw this.error;for(var d=m(this.result.processor.plugins),_;!(_=d()).done;){var k=_.value,x=this.run(k);if(s(x))throw new Error("Use process(css).then(cb) to work with async plugins")}return this.result},y.run=function(d){this.result.lastPlugin=d;try{return d(this.result.root,this.result)}catch(_){throw this.handleError(_,d),_}},y.stringify=function(){if(this.stringified)return this.result;this.stringified=!0,this.sync();var d=this.result.opts,_=u.default;d.syntax&&(_=d.syntax.stringify),d.stringifier&&(_=d.stringifier),_.stringify&&(_=_.stringify);var k=new i.default(_,this.result.root,this.result.opts),x=k.generate();return this.result.css=x[0],this.result.map=x[1],this.result},a(v,[{key:"processor",get:function(){return this.result.processor}},{key:"opts",get:function(){return this.result.opts}},{key:"css",get:function(){return this.stringify().css}},{key:"content",get:function(){return this.stringify().content}},{key:"map",get:function(){return this.stringify().map}},{key:"root",get:function(){return this.sync().root}},{key:"messages",get:function(){return this.sync().messages}}]),v}(),g=f;e.default=g,n.exports=e.default}}),jf=P({"node_modules/postcss/lib/processor.js"(e,n){"use strict";A(),e.__esModule=!0,e.default=void 0;var i=u(ha());function u(c){return c&&c.__esModule?c:{default:c}}function o(c,t){var r;if(typeof Symbol>"u"||c[Symbol.iterator]==null){if(Array.isArray(c)||(r=h(c))||t&&c&&typeof c.length=="number"){r&&(c=r);var a=0;return function(){return a>=c.length?{done:!0}:{done:!1,value:c[a++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}return r=c[Symbol.iterator](),r.next.bind(r)}function h(c,t){if(c){if(typeof c=="string")return l(c,t);var r=Object.prototype.toString.call(c).slice(8,-1);if(r==="Object"&&c.constructor&&(r=c.constructor.name),r==="Map"||r==="Set")return Array.from(c);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return l(c,t)}}function l(c,t){(t==null||t>c.length)&&(t=c.length);for(var r=0,a=new Array(t);r"u"||t[Symbol.iterator]==null){if(Array.isArray(t)||(a=h(t))||r&&t&&typeof t.length=="number"){a&&(t=a);var s=0;return function(){return s>=t.length?{done:!0}:{done:!1,value:t[s++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}return a=t[Symbol.iterator](),a.next.bind(a)}function h(t,r){if(t){if(typeof t=="string")return l(t,r);var a=Object.prototype.toString.call(t).slice(8,-1);if(a==="Object"&&t.constructor&&(a=t.constructor.name),a==="Map"||a==="Set")return Array.from(t);if(a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return l(t,r)}}function l(t,r){(r==null||r>t.length)&&(r=t.length);for(var a=0,s=new Array(r);a1&&(this.nodes[1].raws.before=this.nodes[v].raws.before),t.prototype.removeChild.call(this,f)},a.normalize=function(f,g,v){var y=t.prototype.normalize.call(this,f);if(g){if(v==="prepend")this.nodes.length>1?g.raws.before=this.nodes[1].raws.before:delete g.raws.before;else if(this.first!==g)for(var w=o(y),d;!(d=w()).done;){var _=d.value;_.raws.before=g.raws.before}}return y},a.toResult=function(f){f===void 0&&(f={});var g=ha(),v=jf(),y=new g(new v,this,f);return y.stringify()},r}(i.default),c=m;e.default=c,n.exports=e.default}}),$t=P({"node_modules/postcss/lib/parser.js"(e,n){"use strict";A(),e.__esModule=!0,e.default=void 0;var i=m(ca()),u=m(Ut()),o=m(kr()),h=m(pa()),l=m(Mf()),p=m(fa());function m(t){return t&&t.__esModule?t:{default:t}}var c=function(){function t(a){this.input=a,this.root=new l.default,this.current=this.root,this.spaces="",this.semicolon=!1,this.createTokenizer(),this.root.source={input:a,start:{line:1,column:1}}}var r=t.prototype;return r.createTokenizer=function(){this.tokenizer=(0,u.default)(this.input)},r.parse=function(){for(var s;!this.tokenizer.endOfFile();)switch(s=this.tokenizer.nextToken(),s[0]){case"space":this.spaces+=s[1];break;case";":this.freeSemicolon(s);break;case"}":this.end(s);break;case"comment":this.comment(s);break;case"at-word":this.atrule(s);break;case"{":this.emptyRule(s);break;default:this.other(s);break}this.endFile()},r.comment=function(s){var f=new o.default;this.init(f,s[2],s[3]),f.source.end={line:s[4],column:s[5]};var g=s[1].slice(2,-2);if(/^\s*$/.test(g))f.text="",f.raws.left=g,f.raws.right="";else{var v=g.match(/^(\s*)([^]*[^\s])(\s*)$/);f.text=v[2],f.raws.left=v[1],f.raws.right=v[3]}},r.emptyRule=function(s){var f=new p.default;this.init(f,s[2],s[3]),f.selector="",f.raws.between="",this.current=f},r.other=function(s){for(var f=!1,g=null,v=!1,y=null,w=[],d=[],_=s;_;){if(g=_[0],d.push(_),g==="("||g==="[")y||(y=_),w.push(g==="("?")":"]");else if(w.length===0)if(g===";")if(v){this.decl(d);return}else break;else if(g==="{"){this.rule(d);return}else if(g==="}"){this.tokenizer.back(d.pop()),f=!0;break}else g===":"&&(v=!0);else g===w[w.length-1]&&(w.pop(),w.length===0&&(y=null));_=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(f=!0),w.length>0&&this.unclosedBracket(y),f&&v){for(;d.length&&(_=d[d.length-1][0],!(_!=="space"&&_!=="comment"));)this.tokenizer.back(d.pop());this.decl(d)}else this.unknownWord(d)},r.rule=function(s){s.pop();var f=new p.default;this.init(f,s[0][2],s[0][3]),f.raws.between=this.spacesAndCommentsFromEnd(s),this.raw(f,"selector",s),this.current=f},r.decl=function(s){var f=new i.default;this.init(f);var g=s[s.length-1];for(g[0]===";"&&(this.semicolon=!0,s.pop()),g[4]?f.source.end={line:g[4],column:g[5]}:f.source.end={line:g[2],column:g[3]};s[0][0]!=="word";)s.length===1&&this.unknownWord(s),f.raws.before+=s.shift()[1];for(f.source.start={line:s[0][2],column:s[0][3]},f.prop="";s.length;){var v=s[0][0];if(v===":"||v==="space"||v==="comment")break;f.prop+=s.shift()[1]}f.raws.between="";for(var y;s.length;)if(y=s.shift(),y[0]===":"){f.raws.between+=y[1];break}else y[0]==="word"&&/\w/.test(y[1])&&this.unknownWord([y]),f.raws.between+=y[1];(f.prop[0]==="_"||f.prop[0]==="*")&&(f.raws.before+=f.prop[0],f.prop=f.prop.slice(1)),f.raws.between+=this.spacesAndCommentsFromStart(s),this.precheckMissedSemicolon(s);for(var w=s.length-1;w>0;w--){if(y=s[w],y[1].toLowerCase()==="!important"){f.important=!0;var d=this.stringFrom(s,w);d=this.spacesFromEnd(s)+d,d!==" !important"&&(f.raws.important=d);break}else if(y[1].toLowerCase()==="important"){for(var _=s.slice(0),k="",x=w;x>0;x--){var N=_[x][0];if(k.trim().indexOf("!")===0&&N!=="space")break;k=_.pop()[1]+k}k.trim().indexOf("!")===0&&(f.important=!0,f.raws.important=k,s=_)}if(y[0]!=="space"&&y[0]!=="comment")break}this.raw(f,"value",s),f.value.indexOf(":")!==-1&&this.checkMissedSemicolon(s)},r.atrule=function(s){var f=new h.default;f.name=s[1].slice(1),f.name===""&&this.unnamedAtrule(f,s),this.init(f,s[2],s[3]);for(var g,v,y=!1,w=!1,d=[];!this.tokenizer.endOfFile();){if(s=this.tokenizer.nextToken(),s[0]===";"){f.source.end={line:s[2],column:s[3]},this.semicolon=!0;break}else if(s[0]==="{"){w=!0;break}else if(s[0]==="}"){if(d.length>0){for(v=d.length-1,g=d[v];g&&g[0]==="space";)g=d[--v];g&&(f.source.end={line:g[4],column:g[5]})}this.end(s);break}else d.push(s);if(this.tokenizer.endOfFile()){y=!0;break}}f.raws.between=this.spacesAndCommentsFromEnd(d),d.length?(f.raws.afterName=this.spacesAndCommentsFromStart(d),this.raw(f,"params",d),y&&(s=d[d.length-1],f.source.end={line:s[4],column:s[5]},this.spaces=f.raws.between,f.raws.between="")):(f.raws.afterName="",f.params=""),w&&(f.nodes=[],this.current=f)},r.end=function(s){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end={line:s[2],column:s[3]},this.current=this.current.parent):this.unexpectedClose(s)},r.endFile=function(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces},r.freeSemicolon=function(s){if(this.spaces+=s[1],this.current.nodes){var f=this.current.nodes[this.current.nodes.length-1];f&&f.type==="rule"&&!f.raws.ownSemicolon&&(f.raws.ownSemicolon=this.spaces,this.spaces="")}},r.init=function(s,f,g){this.current.push(s),s.source={start:{line:f,column:g},input:this.input},s.raws.before=this.spaces,this.spaces="",s.type!=="comment"&&(this.semicolon=!1)},r.raw=function(s,f,g){for(var v,y,w=g.length,d="",_=!0,k,x,N=/^([.|#])?([\w])+/i,I=0;I=0&&(v=s[y],!(v[0]!=="space"&&(g+=1,g===2)));y--);throw this.input.error("Missed semicolon",v[2],v[3])}},t}();e.default=c,n.exports=e.default}}),Df=P({"node_modules/postcss-less/lib/nodes/inline-comment.js"(e,n){A();var i=Ut(),u=xr();n.exports={isInlineComment(o){if(o[0]==="word"&&o[1].slice(0,2)==="//"){let h=o,l=[],p;for(;o;){if(/\r?\n/.test(o[1])){if(/['"].*\r?\n/.test(o[1])){l.push(o[1].substring(0,o[1].indexOf(` +`)));let c=o[1].substring(o[1].indexOf(` +`));c+=this.input.css.valueOf().substring(this.tokenizer.position()),this.input=new u(c),this.tokenizer=i(this.input)}else this.tokenizer.back(o);break}l.push(o[1]),p=o,o=this.tokenizer.nextToken({ignoreUnclosed:!0})}let m=["comment",l.join(""),h[2],h[3],p[2],p[3]];return this.inlineComment(m),!0}else if(o[1]==="/"){let h=this.tokenizer.nextToken({ignoreUnclosed:!0});if(h[0]==="comment"&&/^\/\*/.test(h[1]))return h[0]="word",h[1]=h[1].slice(1),o[1]="//",this.tokenizer.back(h),n.exports.isInlineComment.bind(this)(o)}return!1}}}}),Lf=P({"node_modules/postcss-less/lib/nodes/interpolation.js"(e,n){A(),n.exports={interpolation(i){let u=i,o=[i],h=["word","{","}"];if(i=this.tokenizer.nextToken(),u[1].length>1||i[0]!=="{")return this.tokenizer.back(i),!1;for(;i&&h.includes(i[0]);)o.push(i),i=this.tokenizer.nextToken();let l=o.map(r=>r[1]);[u]=o;let p=o.pop(),m=[u[2],u[3]],c=[p[4]||p[2],p[5]||p[3]],t=["word",l.join("")].concat(m,c);return this.tokenizer.back(i),this.tokenizer.back(t),!0}}}}),zf=P({"node_modules/postcss-less/lib/nodes/mixin.js"(e,n){A();var i=/^#[0-9a-fA-F]{6}$|^#[0-9a-fA-F]{3}$/,u=/\.[0-9]/,o=h=>{let[,l]=h,[p]=l;return(p==="."||p==="#")&&i.test(l)===!1&&u.test(l)===!1};n.exports={isMixinToken:o}}}),Bf=P({"node_modules/postcss-less/lib/nodes/import.js"(e,n){A();var i=Ut(),u=/^url\((.+)\)/;n.exports=o=>{let{name:h,params:l=""}=o;if(h==="import"&&l.length){o.import=!0;let p=i({css:l});for(o.filename=l.replace(u,"$1");!p.endOfFile();){let[m,c]=p.nextToken();if(m==="word"&&c==="url")return;if(m==="brackets"){o.options=c,o.filename=l.replace(c,"").trim();break}}}}}}),Ff=P({"node_modules/postcss-less/lib/nodes/variable.js"(e,n){A();var i=/:$/,u=/^:(\s+)?/;n.exports=o=>{let{name:h,params:l=""}=o;if(o.name.slice(-1)===":"){if(i.test(h)){let[p]=h.match(i);o.name=h.replace(p,""),o.raws.afterName=p+(o.raws.afterName||""),o.variable=!0,o.value=o.params}if(u.test(l)){let[p]=l.match(u);o.value=l.replace(p,""),o.raws.afterName=(o.raws.afterName||"")+p,o.variable=!0}}}}}),Uf=P({"node_modules/postcss-less/lib/LessParser.js"(e,n){A();var i=kr(),u=$t(),{isInlineComment:o}=Df(),{interpolation:h}=Lf(),{isMixinToken:l}=zf(),p=Bf(),m=Ff(),c=/(!\s*important)$/i;n.exports=class extends u{constructor(){super(...arguments),this.lastNode=null}atrule(r){h.bind(this)(r)||(super.atrule(r),p(this.lastNode),m(this.lastNode))}decl(){super.decl(...arguments),/extend\(.+\)/i.test(this.lastNode.value)&&(this.lastNode.extend=!0)}each(r){r[0][1]=` ${r[0][1]}`;let a=r.findIndex(y=>y[0]==="("),s=r.reverse().find(y=>y[0]===")"),f=r.reverse().indexOf(s),v=r.splice(a,f).map(y=>y[1]).join("");for(let y of r.reverse())this.tokenizer.back(y);this.atrule(this.tokenizer.nextToken()),this.lastNode.function=!0,this.lastNode.params=v}init(r,a,s){super.init(r,a,s),this.lastNode=r}inlineComment(r){let a=new i,s=r[1].slice(2);if(this.init(a,r[2],r[3]),a.source.end={line:r[4],column:r[5]},a.inline=!0,a.raws.begin="//",/^\s*$/.test(s))a.text="",a.raws.left=s,a.raws.right="";else{let f=s.match(/^(\s*)([^]*[^\s])(\s*)$/);[,a.raws.left,a.text,a.raws.right]=f}}mixin(r){let[a]=r,s=a[1].slice(0,1),f=r.findIndex(d=>d[0]==="brackets"),g=r.findIndex(d=>d[0]==="("),v="";if((f<0||f>3)&&g>0){let d=r.reduce((V,B,O)=>B[0]===")"?O:V),k=r.slice(g,d+g).map(V=>V[1]).join(""),[x]=r.slice(g),N=[x[2],x[3]],[I]=r.slice(d,d+1),W=[I[2],I[3]],$=["brackets",k].concat(N,W),H=r.slice(0,g),D=r.slice(d+1);r=H,r.push($),r=r.concat(D)}let y=[];for(let d of r)if((d[1]==="!"||y.length)&&y.push(d),d[1]==="important")break;if(y.length){let[d]=y,_=r.indexOf(d),k=y[y.length-1],x=[d[2],d[3]],N=[k[4],k[5]],W=["word",y.map($=>$[1]).join("")].concat(x,N);r.splice(_,y.length,W)}let w=r.findIndex(d=>c.test(d[1]));w>0&&([,v]=r[w],r.splice(w,1));for(let d of r.reverse())this.tokenizer.back(d);this.atrule(this.tokenizer.nextToken()),this.lastNode.mixin=!0,this.lastNode.raws.identifier=s,v&&(this.lastNode.important=!0,this.lastNode.raws.important=v)}other(r){o.bind(this)(r)||super.other(r)}rule(r){let a=r[r.length-1],s=r[r.length-2];if(s[0]==="at-word"&&a[0]==="{"&&(this.tokenizer.back(a),h.bind(this)(s))){let g=this.tokenizer.nextToken();r=r.slice(0,r.length-2).concat([g]);for(let v of r.reverse())this.tokenizer.back(v);return}super.rule(r),/:extend\(.+\)/i.test(this.lastNode.selector)&&(this.lastNode.extend=!0)}unknownWord(r){let[a]=r;if(r[0][1]==="each"&&r[1][0]==="("){this.each(r);return}if(l(a)){this.mixin(r);return}super.unknownWord(r)}}}}),$f=P({"node_modules/postcss-less/lib/LessStringifier.js"(e,n){A();var i=Sr();n.exports=class extends i{atrule(o,h){if(!o.mixin&&!o.variable&&!o.function){super.atrule(o,h);return}let p=`${o.function?"":o.raws.identifier||"@"}${o.name}`,m=o.params?this.rawValue(o,"params"):"",c=o.raws.important||"";if(o.variable&&(m=o.value),typeof o.raws.afterName<"u"?p+=o.raws.afterName:m&&(p+=" "),o.nodes)this.block(o,p+m+c);else{let t=(o.raws.between||"")+c+(h?";":"");this.builder(p+m+t,o)}}comment(o){if(o.inline){let h=this.raw(o,"left","commentLeft"),l=this.raw(o,"right","commentRight");this.builder(`//${h}${o.text}${l}`,o)}else super.comment(o)}}}}),Wf=P({"node_modules/postcss-less/lib/index.js"(e,n){A();var i=xr(),u=Uf(),o=$f();n.exports={parse(h,l){let p=new i(h,l),m=new u(p);return m.parse(),m.root},stringify(h,l){new o(l).stringify(h)},nodeToString(h){let l="";return n.exports.stringify(h,p=>{l+=p}),l}}}}),Vf=P({"node_modules/postcss-scss/lib/scss-stringifier.js"(e,n){"use strict";A();function i(h,l){h.prototype=Object.create(l.prototype),h.prototype.constructor=h,h.__proto__=l}var u=Sr(),o=function(h){i(l,h);function l(){return h.apply(this,arguments)||this}var p=l.prototype;return p.comment=function(c){var t=this.raw(c,"left","commentLeft"),r=this.raw(c,"right","commentRight");if(c.raws.inline){var a=c.raws.text||c.text;this.builder("//"+t+a+r,c)}else this.builder("/*"+t+c.text+r+"*/",c)},p.decl=function(c,t){if(!c.isNested)h.prototype.decl.call(this,c,t);else{var r=this.raw(c,"between","colon"),a=c.prop+r+this.rawValue(c,"value");c.important&&(a+=c.raws.important||" !important"),this.builder(a+"{",c,"start");var s;c.nodes&&c.nodes.length?(this.body(c),s=this.raw(c,"after")):s=this.raw(c,"after","emptyBody"),s&&this.builder(s),this.builder("}",c,"end")}},p.rawValue=function(c,t){var r=c[t],a=c.raws[t];return a&&a.value===r?a.scss?a.scss:a.raw:r},l}(u);n.exports=o}}),Gf=P({"node_modules/postcss-scss/lib/scss-stringify.js"(e,n){"use strict";A();var i=Vf();n.exports=function(o,h){var l=new i(h);l.stringify(o)}}}),Hf=P({"node_modules/postcss-scss/lib/nested-declaration.js"(e,n){"use strict";A();function i(h,l){h.prototype=Object.create(l.prototype),h.prototype.constructor=h,h.__proto__=l}var u=Or(),o=function(h){i(l,h);function l(p){var m;return m=h.call(this,p)||this,m.type="decl",m.isNested=!0,m.nodes||(m.nodes=[]),m}return l}(u);n.exports=o}}),Jf=P({"node_modules/postcss-scss/lib/scss-tokenize.js"(e,n){"use strict";A();var i="'".charCodeAt(0),u='"'.charCodeAt(0),o="\\".charCodeAt(0),h="/".charCodeAt(0),l=` +`.charCodeAt(0),p=" ".charCodeAt(0),m="\f".charCodeAt(0),c=" ".charCodeAt(0),t="\r".charCodeAt(0),r="[".charCodeAt(0),a="]".charCodeAt(0),s="(".charCodeAt(0),f=")".charCodeAt(0),g="{".charCodeAt(0),v="}".charCodeAt(0),y=";".charCodeAt(0),w="*".charCodeAt(0),d=":".charCodeAt(0),_="@".charCodeAt(0),k=",".charCodeAt(0),x="#".charCodeAt(0),N=/[ \n\t\r\f{}()'"\\;/[\]#]/g,I=/[ \n\t\r\f(){}:;@!'"\\\][#]|\/(?=\*)/g,W=/.[\\/("'\n]/,$=/[a-f0-9]/i,H=/[\r\f\n]/g;n.exports=function(V,B){B===void 0&&(B={});var O=V.css.valueOf(),j=B.ignoreErrors,C,R,X,Z,Q,K,J,M,Y,G,E,S,b,L,q=O.length,T=-1,F=1,z=0,ee=[],te=[];function ue(ie){throw V.error("Unclosed "+ie,F,z-T)}function le(){return te.length===0&&z>=q}function re(){for(var ie=1,ce=!1,fe=!1;ie>0;)R+=1,O.length<=R&&ue("interpolation"),C=O.charCodeAt(R),S=O.charCodeAt(R+1),ce?!fe&&C===ce?(ce=!1,fe=!1):C===o?fe=!G:fe&&(fe=!1):C===i||C===u?ce=C:C===v?ie-=1:C===x&&S===g&&(ie+=1)}function ne(){if(te.length)return te.pop();if(!(z>=q)){switch(C=O.charCodeAt(z),(C===l||C===m||C===t&&O.charCodeAt(z+1)!==l)&&(T=z,F+=1),C){case l:case p:case c:case t:case m:R=z;do R+=1,C=O.charCodeAt(R),C===l&&(T=R,F+=1);while(C===p||C===l||C===c||C===t||C===m);b=["space",O.slice(z,R)],z=R-1;break;case r:b=["[","[",F,z-T];break;case a:b=["]","]",F,z-T];break;case g:b=["{","{",F,z-T];break;case v:b=["}","}",F,z-T];break;case k:b=["word",",",F,z-T,F,z-T+1];break;case d:b=[":",":",F,z-T];break;case y:b=[";",";",F,z-T];break;case s:if(E=ee.length?ee.pop()[1]:"",S=O.charCodeAt(z+1),E==="url"&&S!==i&&S!==u){for(L=1,G=!1,R=z+1;R<=O.length-1;){if(S=O.charCodeAt(R),S===o)G=!G;else if(S===s)L+=1;else if(S===f&&(L-=1,L===0))break;R+=1}K=O.slice(z,R+1),Z=K.split(` +`),Q=Z.length-1,Q>0?(M=F+Q,Y=R-Z[Q].length):(M=F,Y=T),b=["brackets",K,F,z-T,M,R-Y],T=Y,F=M,z=R}else R=O.indexOf(")",z+1),K=O.slice(z,R+1),R===-1||W.test(K)?b=["(","(",F,z-T]:(b=["brackets",K,F,z-T,F,R-T],z=R);break;case f:b=[")",")",F,z-T];break;case i:case u:for(X=C,R=z,G=!1;R0?(M=F+Q,Y=R-Z[Q].length):(M=F,Y=T),b=["string",O.slice(z,R+1),F,z-T,M,R-Y],T=Y,F=M,z=R;break;case _:N.lastIndex=z+1,N.test(O),N.lastIndex===0?R=O.length-1:R=N.lastIndex-2,b=["at-word",O.slice(z,R+1),F,z-T,F,R-T],z=R;break;case o:for(R=z,J=!0;O.charCodeAt(R+1)===o;)R+=1,J=!J;if(C=O.charCodeAt(R+1),J&&C!==h&&C!==p&&C!==l&&C!==c&&C!==t&&C!==m&&(R+=1,$.test(O.charAt(R)))){for(;$.test(O.charAt(R+1));)R+=1;O.charCodeAt(R+1)===p&&(R+=1)}b=["word",O.slice(z,R+1),F,z-T,F,R-T],z=R;break;default:S=O.charCodeAt(z+1),C===x&&S===g?(R=z,re(),K=O.slice(z,R+1),Z=K.split(` +`),Q=Z.length-1,Q>0?(M=F+Q,Y=R-Z[Q].length):(M=F,Y=T),b=["word",K,F,z-T,M,R-Y],T=Y,F=M,z=R):C===h&&S===w?(R=O.indexOf("*/",z+2)+1,R===0&&(j?R=O.length:ue("comment")),K=O.slice(z,R+1),Z=K.split(` +`),Q=Z.length-1,Q>0?(M=F+Q,Y=R-Z[Q].length):(M=F,Y=T),b=["comment",K,F,z-T,M,R-Y],T=Y,F=M,z=R):C===h&&S===h?(H.lastIndex=z+1,H.test(O),H.lastIndex===0?R=O.length-1:R=H.lastIndex-2,K=O.slice(z,R+1),b=["comment",K,F,z-T,F,R-T,"inline"],z=R):(I.lastIndex=z+1,I.test(O),I.lastIndex===0?R=O.length-1:R=I.lastIndex-2,b=["word",O.slice(z,R+1),F,z-T,F,R-T],ee.push(b),z=R);break}return z++,b}}function oe(ie){te.push(ie)}return{back:oe,nextToken:ne,endOfFile:le}}}}),Kf=P({"node_modules/postcss-scss/lib/scss-parser.js"(e,n){"use strict";A();function i(m,c){m.prototype=Object.create(c.prototype),m.prototype.constructor=m,m.__proto__=c}var u=kr(),o=$t(),h=Hf(),l=Jf(),p=function(m){i(c,m);function c(){return m.apply(this,arguments)||this}var t=c.prototype;return t.createTokenizer=function(){this.tokenizer=l(this.input)},t.rule=function(a){for(var s=!1,f=0,g="",w=a,v=Array.isArray(w),y=0,w=v?w:w[Symbol.iterator]();;){var d;if(v){if(y>=w.length)break;d=w[y++]}else{if(y=w.next(),y.done)break;d=y.value}var _=d;if(s)_[0]!=="comment"&&_[0]!=="{"&&(g+=_[1]);else{if(_[0]==="space"&&_[1].indexOf(` +`)!==-1)break;_[0]==="("?f+=1:_[0]===")"?f-=1:f===0&&_[0]===":"&&(s=!0)}}if(!s||g.trim()===""||/^[a-zA-Z-:#]/.test(g))m.prototype.rule.call(this,a);else{a.pop();var k=new h;this.init(k);var x=a[a.length-1];for(x[4]?k.source.end={line:x[4],column:x[5]}:k.source.end={line:x[2],column:x[3]};a[0][0]!=="word";)k.raws.before+=a.shift()[1];for(k.source.start={line:a[0][2],column:a[0][3]},k.prop="";a.length;){var N=a[0][0];if(N===":"||N==="space"||N==="comment")break;k.prop+=a.shift()[1]}k.raws.between="";for(var I;a.length;)if(I=a.shift(),I[0]===":"){k.raws.between+=I[1];break}else k.raws.between+=I[1];(k.prop[0]==="_"||k.prop[0]==="*")&&(k.raws.before+=k.prop[0],k.prop=k.prop.slice(1)),k.raws.between+=this.spacesAndCommentsFromStart(a),this.precheckMissedSemicolon(a);for(var W=a.length-1;W>0;W--){if(I=a[W],I[1]==="!important"){k.important=!0;var $=this.stringFrom(a,W);$=this.spacesFromEnd(a)+$,$!==" !important"&&(k.raws.important=$);break}else if(I[1]==="important"){for(var H=a.slice(0),D="",V=W;V>0;V--){var B=H[V][0];if(D.trim().indexOf("!")===0&&B!=="space")break;D=H.pop()[1]+D}D.trim().indexOf("!")===0&&(k.important=!0,k.raws.important=D,a=H)}if(I[0]!=="space"&&I[0]!=="comment")break}this.raw(k,"value",a),k.value.indexOf(":")!==-1&&this.checkMissedSemicolon(a),this.current=k}},t.comment=function(a){if(a[6]==="inline"){var s=new u;this.init(s,a[2],a[3]),s.raws.inline=!0,s.source.end={line:a[4],column:a[5]};var f=a[1].slice(2);if(/^\s*$/.test(f))s.text="",s.raws.left=f,s.raws.right="";else{var g=f.match(/^(\s*)([^]*[^\s])(\s*)$/),v=g[2].replace(/(\*\/|\/\*)/g,"*//*");s.text=v,s.raws.left=g[1],s.raws.right=g[3],s.raws.text=g[2]}}else m.prototype.comment.call(this,a)},t.raw=function(a,s,f){if(m.prototype.raw.call(this,a,s,f),a.raws[s]){var g=a.raws[s].raw;a.raws[s].raw=f.reduce(function(v,y){if(y[0]==="comment"&&y[6]==="inline"){var w=y[1].slice(2).replace(/(\*\/|\/\*)/g,"*//*");return v+"/*"+w+"*/"}else return v+y[1]},""),g!==a.raws[s].raw&&(a.raws[s].scss=g)}},c}(o);n.exports=p}}),Qf=P({"node_modules/postcss-scss/lib/scss-parse.js"(e,n){"use strict";A();var i=xr(),u=Kf();n.exports=function(h,l){var p=new i(h,l),m=new u(p);return m.parse(),m.root}}}),Yf=P({"node_modules/postcss-scss/lib/scss-syntax.js"(e,n){"use strict";A();var i=Gf(),u=Qf();n.exports={parse:u,stringify:i}}});A();var Xf=Sl(),mt=Us(),Zf=$s(),{hasPragma:ep}=Cl(),{locStart:rp,locEnd:tp}=no(),{calculateLoc:np,replaceQuotesInInlineComments:ip}=no(),sp=Dl(),op=Ll(),gt=zl(),da=Bl(),ap=Fl(),up=Ul(),cp=$l(),lp=Wl(),fp=e=>{for(;e.parent;)e=e.parent;return e};function pp(e,n){let{nodes:i}=e,u={open:null,close:null,groups:[],type:"paren_group"},o=[u],h=u,l={groups:[],type:"comma_group"},p=[l];for(let m=0;m0&&u.groups.push(l),u.close=c,p.length===1)throw new Error("Unbalanced parenthesis");p.pop(),l=mt(p),l.groups.push(u),o.pop(),u=mt(o)}else c.type==="comma"?(u.groups.push(l),l={groups:[],type:"comma_group"},p[p.length-1]=l):l.groups.push(c)}return l.groups.length>0&&u.groups.push(l),h}function vr(e){return e.type==="paren_group"&&!e.open&&!e.close&&e.groups.length===1||e.type==="comma_group"&&e.groups.length===1?vr(e.groups[0]):e.type==="paren_group"||e.type==="comma_group"?Object.assign(Object.assign({},e),{},{groups:e.groups.map(vr)}):e}function Xe(e,n,i){if(e&&typeof e=="object"){delete e.parent;for(let u in e)Xe(e[u],n,i),u==="type"&&typeof e[u]=="string"&&!e[u].startsWith(n)&&(!i||!i.test(e[u]))&&(e[u]=n+e[u])}return e}function va(e){if(e&&typeof e=="object"){delete e.parent;for(let n in e)va(e[n]);!Array.isArray(e)&&e.value&&!e.type&&(e.type="unknown")}return e}function ma(e,n){if(e&&typeof e=="object"){for(let i in e)i!=="parent"&&(ma(e[i],n),i==="nodes"&&(e.group=vr(pp(e,n)),delete e[i]));delete e.parent}return e}function Pe(e,n){let i=gf(),u=null;try{u=i(e,{loose:!0}).parse()}catch{return{type:"value-unknown",value:e}}u.text=e;let o=ma(u,n);return Xe(o,"value-",/^selector-/)}function Re(e){if(/\/\/|\/\*/.test(e))return{type:"selector-unknown",value:e.trim()};let n=xf(),i=null;try{n(u=>{i=u}).process(e)}catch{return{type:"selector-unknown",value:e}}return Xe(i,"selector-")}function hp(e){let n=kf().default,i=null;try{i=n(e)}catch{return{type:"selector-unknown",value:e}}return Xe(va(i),"media-")}var dp=/(\s*)(!default).*$/,vp=/(\s*)(!global).*$/;function ga(e,n){if(e&&typeof e=="object"){delete e.parent;for(let m in e)ga(e[m],n);if(!e.type)return e;e.raws||(e.raws={});let h="";if(typeof e.selector=="string"){var i;h=e.raws.selector?(i=e.raws.selector.scss)!==null&&i!==void 0?i:e.raws.selector.raw:e.selector,e.raws.between&&e.raws.between.trim().length>0&&(h+=e.raws.between),e.raws.selector=h}let l="";if(typeof e.value=="string"){var u;l=e.raws.value?(u=e.raws.value.scss)!==null&&u!==void 0?u:e.raws.value.raw:e.value,l=l.trim(),e.raws.value=l}let p="";if(typeof e.params=="string"){var o;p=e.raws.params?(o=e.raws.params.scss)!==null&&o!==void 0?o:e.raws.params.raw:e.params,e.raws.afterName&&e.raws.afterName.trim().length>0&&(p=e.raws.afterName+p),e.raws.between&&e.raws.between.trim().length>0&&(p=p+e.raws.between),p=p.trim(),e.raws.params=p}if(h.trim().length>0)return h.startsWith("@")&&h.endsWith(":")?e:e.mixin?(e.selector=Pe(h,n),e):(ap(e)&&(e.isSCSSNesterProperty=!0),e.selector=Re(h),e);if(l.length>0){let m=l.match(dp);m&&(l=l.slice(0,m.index),e.scssDefault=!0,m[0].trim()!=="!default"&&(e.raws.scssDefault=m[0]));let c=l.match(vp);if(c&&(l=l.slice(0,c.index),e.scssGlobal=!0,c[0].trim()!=="!global"&&(e.raws.scssGlobal=c[0])),l.startsWith("progid:"))return{type:"value-unknown",value:l};e.value=Pe(l,n)}if(gt(n)&&e.type==="css-decl"&&l.startsWith("extend(")&&(e.extend||(e.extend=e.raws.between===":"),e.extend&&!e.selector&&(delete e.value,e.selector=Re(l.slice(7,-1)))),e.type==="css-atrule"){if(gt(n)){if(e.mixin){let m=e.raws.identifier+e.name+e.raws.afterName+e.raws.params;return e.selector=Re(m),delete e.params,e}if(e.function)return e}if(n.parser==="css"&&e.name==="custom-selector"){let m=e.params.match(/:--\S+\s+/)[0].trim();return e.customSelector=m,e.selector=Re(e.params.slice(m.length).trim()),delete e.params,e}if(gt(n)){if(e.name.includes(":")&&!e.params){e.variable=!0;let m=e.name.split(":");e.name=m[0],e.value=Pe(m.slice(1).join(":"),n)}if(!["page","nest","keyframes"].includes(e.name)&&e.params&&e.params[0]===":"){e.variable=!0;let m=e.params.slice(1);m&&(e.value=Pe(m,n)),e.raws.afterName+=":"}if(e.variable)return delete e.params,e.value||delete e.value,e}}if(e.type==="css-atrule"&&p.length>0){let{name:m}=e,c=e.name.toLowerCase();return m==="warn"||m==="error"?(e.params={type:"media-unknown",value:p},e):m==="extend"||m==="nest"?(e.selector=Re(p),delete e.params,e):m==="at-root"?(/^\(\s*(?:without|with)\s*:.+\)$/s.test(p)?e.params=Pe(p,n):(e.selector=Re(p),delete e.params),e):lp(c)?(e.import=!0,delete e.filename,e.params=Pe(p,n),e):["namespace","supports","if","else","for","each","while","debug","mixin","include","function","return","define-mixin","add-mixin"].includes(m)?(p=p.replace(/(\$\S+?)(\s+)?\.{3}/,"$1...$2"),p=p.replace(/^(?!if)(\S+)(\s+)\(/,"$1($2"),e.value=Pe(p,n),delete e.params,e):["media","custom-media"].includes(c)?p.includes("#{")?{type:"media-unknown",value:p}:(e.params=hp(p),e):(e.params=p,e)}}return e}function ya(e,n,i){let u=Zf(n),{frontMatter:o}=u;n=u.content;let h;try{h=e(n)}catch(l){let{name:p,reason:m,line:c,column:t}=l;throw typeof c!="number"?l:Xf(`${p}: ${m}`,{start:{line:c,column:t}})}return h=ga(Xe(h,"css-"),i),np(h,n),o&&(o.source={startOffset:0,endOffset:o.raw.length},h.nodes.unshift(o)),h}function mp(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=da(i.parser,e)?[Tt,Ot]:[Ot,Tt],h;for(let l of o)try{return l(e,n,i)}catch(p){h=h||p}if(h)throw h}function Ot(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},u=Wf();return ya(o=>u.parse(ip(o)),e,i)}function Tt(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{parse:u}=Yf();return ya(u,e,i)}var yt={astFormat:"postcss",hasPragma:ep,locStart:rp,locEnd:tp};wa.exports={parsers:{css:Object.assign(Object.assign({},yt),{},{parse:mp}),less:Object.assign(Object.assign({},yt),{},{parse:Ot}),scss:Object.assign(Object.assign({},yt),{},{parse:Tt})}}});return gp();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-typescript.js b/node_modules/prettier/parser-typescript.js new file mode 100644 index 0000000..1f207b1 --- /dev/null +++ b/node_modules/prettier/parser-typescript.js @@ -0,0 +1,49 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.typescript=e()}})(function(){"use strict";var dt=(a,_)=>()=>(_||a((_={exports:{}}).exports,_),_.exports);var Mi=dt((dH,J7)=>{var Yh=function(a){return a&&a.Math==Math&&a};J7.exports=Yh(typeof globalThis=="object"&&globalThis)||Yh(typeof window=="object"&&window)||Yh(typeof self=="object"&&self)||Yh(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var Ha=dt((mH,F7)=>{F7.exports=function(a){try{return!!a()}catch{return!0}}});var As=dt((hH,B7)=>{var tq=Ha();B7.exports=!tq(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var p6=dt((gH,q7)=>{var rq=Ha();q7.exports=!rq(function(){var a=function(){}.bind();return typeof a!="function"||a.hasOwnProperty("prototype")})});var Zh=dt((yH,U7)=>{var nq=p6(),Qh=Function.prototype.call;U7.exports=nq?Qh.bind(Qh):function(){return Qh.apply(Qh,arguments)}});var H7=dt(V7=>{"use strict";var z7={}.propertyIsEnumerable,W7=Object.getOwnPropertyDescriptor,iq=W7&&!z7.call({1:2},1);V7.f=iq?function(_){var v=W7(this,_);return!!v&&v.enumerable}:z7});var f6=dt((bH,G7)=>{G7.exports=function(a,_){return{enumerable:!(a&1),configurable:!(a&2),writable:!(a&4),value:_}}});var Ps=dt((TH,X7)=>{var $7=p6(),K7=Function.prototype,d6=K7.call,aq=$7&&K7.bind.bind(d6,d6);X7.exports=$7?aq:function(a){return function(){return d6.apply(a,arguments)}}});var Z7=dt((SH,Q7)=>{var Y7=Ps(),sq=Y7({}.toString),oq=Y7("".slice);Q7.exports=function(a){return oq(sq(a),8,-1)}});var tw=dt((xH,ew)=>{var _q=Ps(),cq=Ha(),lq=Z7(),m6=Object,uq=_q("".split);ew.exports=cq(function(){return!m6("z").propertyIsEnumerable(0)})?function(a){return lq(a)=="String"?uq(a,""):m6(a)}:m6});var h6=dt((EH,rw)=>{rw.exports=function(a){return a==null}});var g6=dt((wH,nw)=>{var pq=h6(),fq=TypeError;nw.exports=function(a){if(pq(a))throw fq("Can't call method on "+a);return a}});var e1=dt((CH,iw)=>{var dq=tw(),mq=g6();iw.exports=function(a){return dq(mq(a))}});var v6=dt((AH,aw)=>{var y6=typeof document=="object"&&document.all,hq=typeof y6>"u"&&y6!==void 0;aw.exports={all:y6,IS_HTMLDDA:hq}});var aa=dt((PH,ow)=>{var sw=v6(),gq=sw.all;ow.exports=sw.IS_HTMLDDA?function(a){return typeof a=="function"||a===gq}:function(a){return typeof a=="function"}});var Jc=dt((DH,lw)=>{var _w=aa(),cw=v6(),yq=cw.all;lw.exports=cw.IS_HTMLDDA?function(a){return typeof a=="object"?a!==null:_w(a)||a===yq}:function(a){return typeof a=="object"?a!==null:_w(a)}});var t1=dt((kH,uw)=>{var b6=Mi(),vq=aa(),bq=function(a){return vq(a)?a:void 0};uw.exports=function(a,_){return arguments.length<2?bq(b6[a]):b6[a]&&b6[a][_]}});var fw=dt((IH,pw)=>{var Tq=Ps();pw.exports=Tq({}.isPrototypeOf)});var mw=dt((NH,dw)=>{var Sq=t1();dw.exports=Sq("navigator","userAgent")||""});var Sw=dt((OH,Tw)=>{var bw=Mi(),T6=mw(),hw=bw.process,gw=bw.Deno,yw=hw&&hw.versions||gw&&gw.version,vw=yw&&yw.v8,sa,r1;vw&&(sa=vw.split("."),r1=sa[0]>0&&sa[0]<4?1:+(sa[0]+sa[1]));!r1&&T6&&(sa=T6.match(/Edge\/(\d+)/),(!sa||sa[1]>=74)&&(sa=T6.match(/Chrome\/(\d+)/),sa&&(r1=+sa[1])));Tw.exports=r1});var S6=dt((MH,Ew)=>{var xw=Sw(),xq=Ha();Ew.exports=!!Object.getOwnPropertySymbols&&!xq(function(){var a=Symbol();return!String(a)||!(Object(a)instanceof Symbol)||!Symbol.sham&&xw&&xw<41})});var x6=dt((LH,ww)=>{var Eq=S6();ww.exports=Eq&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var E6=dt((RH,Cw)=>{var wq=t1(),Cq=aa(),Aq=fw(),Pq=x6(),Dq=Object;Cw.exports=Pq?function(a){return typeof a=="symbol"}:function(a){var _=wq("Symbol");return Cq(_)&&Aq(_.prototype,Dq(a))}});var Pw=dt((jH,Aw)=>{var kq=String;Aw.exports=function(a){try{return kq(a)}catch{return"Object"}}});var kw=dt((JH,Dw)=>{var Iq=aa(),Nq=Pw(),Oq=TypeError;Dw.exports=function(a){if(Iq(a))return a;throw Oq(Nq(a)+" is not a function")}});var Nw=dt((FH,Iw)=>{var Mq=kw(),Lq=h6();Iw.exports=function(a,_){var v=a[_];return Lq(v)?void 0:Mq(v)}});var Mw=dt((BH,Ow)=>{var w6=Zh(),C6=aa(),A6=Jc(),Rq=TypeError;Ow.exports=function(a,_){var v,h;if(_==="string"&&C6(v=a.toString)&&!A6(h=w6(v,a))||C6(v=a.valueOf)&&!A6(h=w6(v,a))||_!=="string"&&C6(v=a.toString)&&!A6(h=w6(v,a)))return h;throw Rq("Can't convert object to primitive value")}});var Rw=dt((qH,Lw)=>{Lw.exports=!1});var n1=dt((UH,Jw)=>{var jw=Mi(),jq=Object.defineProperty;Jw.exports=function(a,_){try{jq(jw,a,{value:_,configurable:!0,writable:!0})}catch{jw[a]=_}return _}});var i1=dt((zH,Bw)=>{var Jq=Mi(),Fq=n1(),Fw="__core-js_shared__",Bq=Jq[Fw]||Fq(Fw,{});Bw.exports=Bq});var P6=dt((WH,Uw)=>{var qq=Rw(),qw=i1();(Uw.exports=function(a,_){return qw[a]||(qw[a]=_!==void 0?_:{})})("versions",[]).push({version:"3.26.1",mode:qq?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var Ww=dt((VH,zw)=>{var Uq=g6(),zq=Object;zw.exports=function(a){return zq(Uq(a))}});var oo=dt((HH,Vw)=>{var Wq=Ps(),Vq=Ww(),Hq=Wq({}.hasOwnProperty);Vw.exports=Object.hasOwn||function(_,v){return Hq(Vq(_),v)}});var D6=dt((GH,Hw)=>{var Gq=Ps(),$q=0,Kq=Math.random(),Xq=Gq(1 .toString);Hw.exports=function(a){return"Symbol("+(a===void 0?"":a)+")_"+Xq(++$q+Kq,36)}});var Qw=dt(($H,Yw)=>{var Yq=Mi(),Qq=P6(),Gw=oo(),Zq=D6(),$w=S6(),Xw=x6(),Fc=Qq("wks"),p_=Yq.Symbol,Kw=p_&&p_.for,eU=Xw?p_:p_&&p_.withoutSetter||Zq;Yw.exports=function(a){if(!Gw(Fc,a)||!($w||typeof Fc[a]=="string")){var _="Symbol."+a;$w&&Gw(p_,a)?Fc[a]=p_[a]:Xw&&Kw?Fc[a]=Kw(_):Fc[a]=eU(_)}return Fc[a]}});var rC=dt((KH,tC)=>{var tU=Zh(),Zw=Jc(),eC=E6(),rU=Nw(),nU=Mw(),iU=Qw(),aU=TypeError,sU=iU("toPrimitive");tC.exports=function(a,_){if(!Zw(a)||eC(a))return a;var v=rU(a,sU),h;if(v){if(_===void 0&&(_="default"),h=tU(v,a,_),!Zw(h)||eC(h))return h;throw aU("Can't convert object to primitive value")}return _===void 0&&(_="number"),nU(a,_)}});var k6=dt((XH,nC)=>{var oU=rC(),_U=E6();nC.exports=function(a){var _=oU(a,"string");return _U(_)?_:_+""}});var sC=dt((YH,aC)=>{var cU=Mi(),iC=Jc(),I6=cU.document,lU=iC(I6)&&iC(I6.createElement);aC.exports=function(a){return lU?I6.createElement(a):{}}});var N6=dt((QH,oC)=>{var uU=As(),pU=Ha(),fU=sC();oC.exports=!uU&&!pU(function(){return Object.defineProperty(fU("div"),"a",{get:function(){return 7}}).a!=7})});var O6=dt(cC=>{var dU=As(),mU=Zh(),hU=H7(),gU=f6(),yU=e1(),vU=k6(),bU=oo(),TU=N6(),_C=Object.getOwnPropertyDescriptor;cC.f=dU?_C:function(_,v){if(_=yU(_),v=vU(v),TU)try{return _C(_,v)}catch{}if(bU(_,v))return gU(!mU(hU.f,_,v),_[v])}});var uC=dt((eG,lC)=>{var SU=As(),xU=Ha();lC.exports=SU&&xU(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var a1=dt((tG,pC)=>{var EU=Jc(),wU=String,CU=TypeError;pC.exports=function(a){if(EU(a))return a;throw CU(wU(a)+" is not an object")}});var dp=dt(dC=>{var AU=As(),PU=N6(),DU=uC(),s1=a1(),fC=k6(),kU=TypeError,M6=Object.defineProperty,IU=Object.getOwnPropertyDescriptor,L6="enumerable",R6="configurable",j6="writable";dC.f=AU?DU?function(_,v,h){if(s1(_),v=fC(v),s1(h),typeof _=="function"&&v==="prototype"&&"value"in h&&j6 in h&&!h[j6]){var D=IU(_,v);D&&D[j6]&&(_[v]=h.value,h={configurable:R6 in h?h[R6]:D[R6],enumerable:L6 in h?h[L6]:D[L6],writable:!1})}return M6(_,v,h)}:M6:function(_,v,h){if(s1(_),v=fC(v),s1(h),PU)try{return M6(_,v,h)}catch{}if("get"in h||"set"in h)throw kU("Accessors not supported");return"value"in h&&(_[v]=h.value),_}});var J6=dt((nG,mC)=>{var NU=As(),OU=dp(),MU=f6();mC.exports=NU?function(a,_,v){return OU.f(a,_,MU(1,v))}:function(a,_,v){return a[_]=v,a}});var yC=dt((iG,gC)=>{var F6=As(),LU=oo(),hC=Function.prototype,RU=F6&&Object.getOwnPropertyDescriptor,B6=LU(hC,"name"),jU=B6&&function(){}.name==="something",JU=B6&&(!F6||F6&&RU(hC,"name").configurable);gC.exports={EXISTS:B6,PROPER:jU,CONFIGURABLE:JU}});var bC=dt((aG,vC)=>{var FU=Ps(),BU=aa(),q6=i1(),qU=FU(Function.toString);BU(q6.inspectSource)||(q6.inspectSource=function(a){return qU(a)});vC.exports=q6.inspectSource});var xC=dt((sG,SC)=>{var UU=Mi(),zU=aa(),TC=UU.WeakMap;SC.exports=zU(TC)&&/native code/.test(String(TC))});var CC=dt((oG,wC)=>{var WU=P6(),VU=D6(),EC=WU("keys");wC.exports=function(a){return EC[a]||(EC[a]=VU(a))}});var U6=dt((_G,AC)=>{AC.exports={}});var IC=dt((cG,kC)=>{var HU=xC(),DC=Mi(),GU=Jc(),$U=J6(),z6=oo(),W6=i1(),KU=CC(),XU=U6(),PC="Object already initialized",V6=DC.TypeError,YU=DC.WeakMap,o1,mp,_1,QU=function(a){return _1(a)?mp(a):o1(a,{})},ZU=function(a){return function(_){var v;if(!GU(_)||(v=mp(_)).type!==a)throw V6("Incompatible receiver, "+a+" required");return v}};HU||W6.state?(oa=W6.state||(W6.state=new YU),oa.get=oa.get,oa.has=oa.has,oa.set=oa.set,o1=function(a,_){if(oa.has(a))throw V6(PC);return _.facade=a,oa.set(a,_),_},mp=function(a){return oa.get(a)||{}},_1=function(a){return oa.has(a)}):(f_=KU("state"),XU[f_]=!0,o1=function(a,_){if(z6(a,f_))throw V6(PC);return _.facade=a,$U(a,f_,_),_},mp=function(a){return z6(a,f_)?a[f_]:{}},_1=function(a){return z6(a,f_)});var oa,f_;kC.exports={set:o1,get:mp,has:_1,enforce:QU,getterFor:ZU}});var G6=dt((lG,OC)=>{var ez=Ha(),tz=aa(),c1=oo(),H6=As(),rz=yC().CONFIGURABLE,nz=bC(),NC=IC(),iz=NC.enforce,az=NC.get,l1=Object.defineProperty,sz=H6&&!ez(function(){return l1(function(){},"length",{value:8}).length!==8}),oz=String(String).split("String"),_z=OC.exports=function(a,_,v){String(_).slice(0,7)==="Symbol("&&(_="["+String(_).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),v&&v.getter&&(_="get "+_),v&&v.setter&&(_="set "+_),(!c1(a,"name")||rz&&a.name!==_)&&(H6?l1(a,"name",{value:_,configurable:!0}):a.name=_),sz&&v&&c1(v,"arity")&&a.length!==v.arity&&l1(a,"length",{value:v.arity});try{v&&c1(v,"constructor")&&v.constructor?H6&&l1(a,"prototype",{writable:!1}):a.prototype&&(a.prototype=void 0)}catch{}var h=iz(a);return c1(h,"source")||(h.source=oz.join(typeof _=="string"?_:"")),a};Function.prototype.toString=_z(function(){return tz(this)&&az(this).source||nz(this)},"toString")});var LC=dt((uG,MC)=>{var cz=aa(),lz=dp(),uz=G6(),pz=n1();MC.exports=function(a,_,v,h){h||(h={});var D=h.enumerable,P=h.name!==void 0?h.name:_;if(cz(v)&&uz(v,P,h),h.global)D?a[_]=v:pz(_,v);else{try{h.unsafe?a[_]&&(D=!0):delete a[_]}catch{}D?a[_]=v:lz.f(a,_,{value:v,enumerable:!1,configurable:!h.nonConfigurable,writable:!h.nonWritable})}return a}});var jC=dt((pG,RC)=>{var fz=Math.ceil,dz=Math.floor;RC.exports=Math.trunc||function(_){var v=+_;return(v>0?dz:fz)(v)}});var $6=dt((fG,JC)=>{var mz=jC();JC.exports=function(a){var _=+a;return _!==_||_===0?0:mz(_)}});var BC=dt((dG,FC)=>{var hz=$6(),gz=Math.max,yz=Math.min;FC.exports=function(a,_){var v=hz(a);return v<0?gz(v+_,0):yz(v,_)}});var UC=dt((mG,qC)=>{var vz=$6(),bz=Math.min;qC.exports=function(a){return a>0?bz(vz(a),9007199254740991):0}});var WC=dt((hG,zC)=>{var Tz=UC();zC.exports=function(a){return Tz(a.length)}});var GC=dt((gG,HC)=>{var Sz=e1(),xz=BC(),Ez=WC(),VC=function(a){return function(_,v,h){var D=Sz(_),P=Ez(D),y=xz(h,P),m;if(a&&v!=v){for(;P>y;)if(m=D[y++],m!=m)return!0}else for(;P>y;y++)if((a||y in D)&&D[y]===v)return a||y||0;return!a&&-1}};HC.exports={includes:VC(!0),indexOf:VC(!1)}});var XC=dt((yG,KC)=>{var wz=Ps(),K6=oo(),Cz=e1(),Az=GC().indexOf,Pz=U6(),$C=wz([].push);KC.exports=function(a,_){var v=Cz(a),h=0,D=[],P;for(P in v)!K6(Pz,P)&&K6(v,P)&&$C(D,P);for(;_.length>h;)K6(v,P=_[h++])&&(~Az(D,P)||$C(D,P));return D}});var QC=dt((vG,YC)=>{YC.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var e9=dt(ZC=>{var Dz=XC(),kz=QC(),Iz=kz.concat("length","prototype");ZC.f=Object.getOwnPropertyNames||function(_){return Dz(_,Iz)}});var r9=dt(t9=>{t9.f=Object.getOwnPropertySymbols});var i9=dt((SG,n9)=>{var Nz=t1(),Oz=Ps(),Mz=e9(),Lz=r9(),Rz=a1(),jz=Oz([].concat);n9.exports=Nz("Reflect","ownKeys")||function(_){var v=Mz.f(Rz(_)),h=Lz.f;return h?jz(v,h(_)):v}});var o9=dt((xG,s9)=>{var a9=oo(),Jz=i9(),Fz=O6(),Bz=dp();s9.exports=function(a,_,v){for(var h=Jz(_),D=Bz.f,P=Fz.f,y=0;y{var qz=Ha(),Uz=aa(),zz=/#|\.prototype\./,hp=function(a,_){var v=Vz[Wz(a)];return v==Gz?!0:v==Hz?!1:Uz(_)?qz(_):!!_},Wz=hp.normalize=function(a){return String(a).replace(zz,".").toLowerCase()},Vz=hp.data={},Hz=hp.NATIVE="N",Gz=hp.POLYFILL="P";_9.exports=hp});var u9=dt((wG,l9)=>{var X6=Mi(),$z=O6().f,Kz=J6(),Xz=LC(),Yz=n1(),Qz=o9(),Zz=c9();l9.exports=function(a,_){var v=a.target,h=a.global,D=a.stat,P,y,m,C,d,E;if(h?y=X6:D?y=X6[v]||Yz(v,{}):y=(X6[v]||{}).prototype,y)for(m in _){if(d=_[m],a.dontCallGetSet?(E=$z(y,m),C=E&&E.value):C=y[m],P=Zz(h?m:v+(D?".":"#")+m,a.forced),!P&&C!==void 0){if(typeof d==typeof C)continue;Qz(d,C)}(a.sham||C&&C.sham)&&Kz(d,"sham",!0),Xz(y,m,d,a)}}});var p9=dt(()=>{var eW=u9(),Y6=Mi();eW({global:!0,forced:Y6.globalThis!==Y6},{globalThis:Y6})});var f9=dt(()=>{p9()});var h9=dt((kG,m9)=>{var d9=G6(),tW=dp();m9.exports=function(a,_,v){return v.get&&d9(v.get,_,{getter:!0}),v.set&&d9(v.set,_,{setter:!0}),tW.f(a,_,v)}});var y9=dt((IG,g9)=>{"use strict";var rW=a1();g9.exports=function(){var a=rW(this),_="";return a.hasIndices&&(_+="d"),a.global&&(_+="g"),a.ignoreCase&&(_+="i"),a.multiline&&(_+="m"),a.dotAll&&(_+="s"),a.unicode&&(_+="u"),a.unicodeSets&&(_+="v"),a.sticky&&(_+="y"),_}});var T9=dt(()=>{var nW=Mi(),iW=As(),aW=h9(),sW=y9(),oW=Ha(),v9=nW.RegExp,b9=v9.prototype,_W=iW&&oW(function(){var a=!0;try{v9(".","d")}catch{a=!1}var _={},v="",h=a?"dgimsy":"gimsy",D=function(C,d){Object.defineProperty(_,C,{get:function(){return v+=d,!0}})},P={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};a&&(P.hasIndices="d");for(var y in P)D(y,P[y]);var m=Object.getOwnPropertyDescriptor(b9,"flags").get.call(_);return m!==h||v!==h});_W&&aW(b9,"flags",{configurable:!0,get:sW})});var uH=dt((MG,v5)=>{f9();T9();var iT=Object.defineProperty,cW=Object.getOwnPropertyDescriptor,aT=Object.getOwnPropertyNames,lW=Object.prototype.hasOwnProperty,yp=(a,_)=>function(){return a&&(_=(0,a[aT(a)[0]])(a=0)),_},Oe=(a,_)=>function(){return _||(0,a[aT(a)[0]])((_={exports:{}}).exports,_),_.exports},m1=(a,_)=>{for(var v in _)iT(a,v,{get:_[v],enumerable:!0})},uW=(a,_,v,h)=>{if(_&&typeof _=="object"||typeof _=="function")for(let D of aT(_))!lW.call(a,D)&&D!==v&&iT(a,D,{get:()=>_[D],enumerable:!(h=cW(_,D))||h.enumerable});return a},Li=a=>uW(iT({},"__esModule",{value:!0}),a),cn,De=yp({""(){cn={env:{},argv:[]}}}),w9=Oe({"src/common/parser-create-error.js"(a,_){"use strict";De();function v(h,D){let P=new SyntaxError(h+" ("+D.start.line+":"+D.start.column+")");return P.loc=D,P}_.exports=v}}),pW=Oe({"src/utils/try-combinations.js"(a,_){"use strict";De();function v(){let h;for(var D=arguments.length,P=new Array(D),y=0;yeT,arch:()=>fW,cpus:()=>O9,default:()=>J9,endianness:()=>A9,freemem:()=>I9,getNetworkInterfaces:()=>j9,hostname:()=>P9,loadavg:()=>D9,networkInterfaces:()=>R9,platform:()=>dW,release:()=>L9,tmpDir:()=>Q6,tmpdir:()=>Z6,totalmem:()=>N9,type:()=>M9,uptime:()=>k9});function A9(){if(typeof u1>"u"){var a=new ArrayBuffer(2),_=new Uint8Array(a),v=new Uint16Array(a);if(_[0]=1,_[1]=2,v[0]===258)u1="BE";else if(v[0]===513)u1="LE";else throw new Error("unable to figure out endianess")}return u1}function P9(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function D9(){return[]}function k9(){return 0}function I9(){return Number.MAX_VALUE}function N9(){return Number.MAX_VALUE}function O9(){return[]}function M9(){return"Browser"}function L9(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function R9(){}function j9(){}function fW(){return"javascript"}function dW(){return"browser"}function Q6(){return"/tmp"}var u1,Z6,eT,J9,mW=yp({"node-modules-polyfills:os"(){De(),Z6=Q6,eT=` +`,J9={EOL:eT,tmpdir:Z6,tmpDir:Q6,networkInterfaces:R9,getNetworkInterfaces:j9,release:L9,type:M9,cpus:O9,totalmem:N9,freemem:I9,uptime:k9,loadavg:D9,hostname:P9,endianness:A9}}}),hW=Oe({"node-modules-polyfills-commonjs:os"(a,_){De();var v=(mW(),Li(C9));if(v&&v.default){_.exports=v.default;for(let h in v)_.exports[h]=v[h]}else v&&(_.exports=v)}}),gW=Oe({"node_modules/detect-newline/index.js"(a,_){"use strict";De();var v=h=>{if(typeof h!="string")throw new TypeError("Expected a string");let D=h.match(/(?:\r?\n)/g)||[];if(D.length===0)return;let P=D.filter(m=>m===`\r +`).length,y=D.length-P;return P>y?`\r +`:` +`};_.exports=v,_.exports.graceful=h=>typeof h=="string"&&v(h)||` +`}}),yW=Oe({"node_modules/jest-docblock/build/index.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.extract=M,a.parse=W,a.parseWithComments=K,a.print=ce,a.strip=q;function _(){let me=hW();return _=function(){return me},me}function v(){let me=h(gW());return v=function(){return me},me}function h(me){return me&&me.__esModule?me:{default:me}}var D=/\*\/$/,P=/^\/\*\*?/,y=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,m=/(^|\s+)\/\/([^\r\n]*)/g,C=/^(\r?\n)+/,d=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,E=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,I=/(\r?\n|^) *\* ?/g,c=[];function M(me){let Ae=me.match(y);return Ae?Ae[0].trimLeft():""}function q(me){let Ae=me.match(y);return Ae&&Ae[0]?me.substring(Ae[0].length):me}function W(me){return K(me).pragmas}function K(me){let Ae=(0,v().default)(me)||_().EOL;me=me.replace(P,"").replace(D,"").replace(I,"$1");let te="";for(;te!==me;)te=me,me=me.replace(d,`${Ae}$1 $2${Ae}`);me=me.replace(C,"").trimRight();let he=Object.create(null),Pe=me.replace(E,"").replace(C,"").trimRight(),R;for(;R=E.exec(me);){let pe=R[2].replace(m,"");typeof he[R[1]]=="string"||Array.isArray(he[R[1]])?he[R[1]]=c.concat(he[R[1]],pe):he[R[1]]=pe}return{comments:Pe,pragmas:he}}function ce(me){let{comments:Ae="",pragmas:te={}}=me,he=(0,v().default)(Ae)||_().EOL,Pe="/**",R=" *",pe=" */",ke=Object.keys(te),Je=ke.map(ee=>Ie(ee,te[ee])).reduce((ee,je)=>ee.concat(je),[]).map(ee=>`${R} ${ee}${he}`).join("");if(!Ae){if(ke.length===0)return"";if(ke.length===1&&!Array.isArray(te[ke[0]])){let ee=te[ke[0]];return`${Pe} ${Ie(ke[0],ee)[0]}${pe}`}}let Xe=Ae.split(he).map(ee=>`${R} ${ee}`).join(he)+he;return Pe+he+(Ae?Xe:"")+(Ae&&ke.length?R+he:"")+Je+pe}function Ie(me,Ae){return c.concat(Ae).map(te=>`@${me} ${te}`.trim())}}}),vW=Oe({"src/common/end-of-line.js"(a,_){"use strict";De();function v(y){let m=y.indexOf("\r");return m>=0?y.charAt(m+1)===` +`?"crlf":"cr":"lf"}function h(y){switch(y){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function D(y,m){let C;switch(m){case` +`:C=/\n/g;break;case"\r":C=/\r/g;break;case`\r +`:C=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(m)}.`)}let d=y.match(C);return d?d.length:0}function P(y){return y.replace(/\r\n?/g,` +`)}_.exports={guessEndOfLine:v,convertEndOfLineToChars:h,countEndOfLineChars:D,normalizeEndOfLine:P}}}),bW=Oe({"src/language-js/utils/get-shebang.js"(a,_){"use strict";De();function v(h){if(!h.startsWith("#!"))return"";let D=h.indexOf(` +`);return D===-1?h:h.slice(0,D)}_.exports=v}}),TW=Oe({"src/language-js/pragma.js"(a,_){"use strict";De();var{parseWithComments:v,strip:h,extract:D,print:P}=yW(),{normalizeEndOfLine:y}=vW(),m=bW();function C(I){let c=m(I);c&&(I=I.slice(c.length+1));let M=D(I),{pragmas:q,comments:W}=v(M);return{shebang:c,text:I,pragmas:q,comments:W}}function d(I){let c=Object.keys(C(I).pragmas);return c.includes("prettier")||c.includes("format")}function E(I){let{shebang:c,text:M,pragmas:q,comments:W}=C(I),K=h(M),ce=P({pragmas:Object.assign({format:""},q),comments:W.trimStart()});return(c?`${c} +`:"")+y(ce)+(K.startsWith(` +`)?` +`:` + +`)+K}_.exports={hasPragma:d,insertPragma:E}}}),F9=Oe({"src/utils/is-non-empty-array.js"(a,_){"use strict";De();function v(h){return Array.isArray(h)&&h.length>0}_.exports=v}}),B9=Oe({"src/language-js/loc.js"(a,_){"use strict";De();var v=F9();function h(C){var d,E;let I=C.range?C.range[0]:C.start,c=(d=(E=C.declaration)===null||E===void 0?void 0:E.decorators)!==null&&d!==void 0?d:C.decorators;return v(c)?Math.min(h(c[0]),I):I}function D(C){return C.range?C.range[1]:C.end}function P(C,d){let E=h(C);return Number.isInteger(E)&&E===h(d)}function y(C,d){let E=D(C);return Number.isInteger(E)&&E===D(d)}function m(C,d){return P(C,d)&&y(C,d)}_.exports={locStart:h,locEnd:D,hasSameLocStart:P,hasSameLoc:m}}}),SW=Oe({"src/language-js/parse/utils/create-parser.js"(a,_){"use strict";De();var{hasPragma:v}=TW(),{locStart:h,locEnd:D}=B9();function P(y){return y=typeof y=="function"?{parse:y}:y,Object.assign({astFormat:"estree",hasPragma:v,locStart:h,locEnd:D},y)}_.exports=P}}),xW=Oe({"src/language-js/parse/utils/replace-hashbang.js"(a,_){"use strict";De();function v(h){return h.charAt(0)==="#"&&h.charAt(1)==="!"?"//"+h.slice(2):h}_.exports=v}}),EW=Oe({"src/language-js/utils/is-ts-keyword-type.js"(a,_){"use strict";De();function v(h){let{type:D}=h;return D.startsWith("TS")&&D.endsWith("Keyword")}_.exports=v}}),wW=Oe({"src/language-js/utils/is-block-comment.js"(a,_){"use strict";De();var v=new Set(["Block","CommentBlock","MultiLine"]),h=D=>v.has(D==null?void 0:D.type);_.exports=h}}),CW=Oe({"src/language-js/utils/is-type-cast-comment.js"(a,_){"use strict";De();var v=wW();function h(D){return v(D)&&D.value[0]==="*"&&/@(?:type|satisfies)\b/.test(D.value)}_.exports=h}}),AW=Oe({"src/utils/get-last.js"(a,_){"use strict";De();var v=h=>h[h.length-1];_.exports=v}}),q9=Oe({"src/language-js/parse/postprocess/visit-node.js"(a,_){"use strict";De();function v(h,D){if(Array.isArray(h)){for(let P=0;P{ce.leadingComments&&ce.leadingComments.some(P)&&K.add(v(ce))}),M=m(M,ce=>{if(ce.type==="ParenthesizedExpression"){let{expression:Ie}=ce;if(Ie.type==="TypeCastExpression")return Ie.range=ce.range,Ie;let me=v(ce);if(!K.has(me))return Ie.extra=Object.assign(Object.assign({},Ie.extra),{},{parenthesized:!0}),Ie}})}return M=m(M,K=>{switch(K.type){case"ChainExpression":return E(K.expression);case"LogicalExpression":{if(I(K))return c(K);break}case"VariableDeclaration":{let ce=y(K.declarations);ce&&ce.init&&W(K,ce);break}case"TSParenthesizedType":return D(K.typeAnnotation)||K.typeAnnotation.type==="TSThisType"||(K.typeAnnotation.range=[v(K),h(K)]),K.typeAnnotation;case"TSTypeParameter":if(typeof K.name=="string"){let ce=v(K);K.name={type:"Identifier",name:K.name,range:[ce,ce+K.name.length]}}break;case"ObjectExpression":if(q.parser==="typescript"){let ce=K.properties.find(Ie=>Ie.type==="Property"&&Ie.value.type==="TSEmptyBodyFunctionExpression");ce&&C(ce.value,"Unexpected token.")}break;case"SequenceExpression":{let ce=y(K.expressions);K.range=[v(K),Math.min(h(ce),h(K))];break}case"TopicReference":q.__isUsingHackPipeline=!0;break;case"ExportAllDeclaration":{let{exported:ce}=K;if(q.parser==="meriyah"&&ce&&ce.type==="Identifier"){let Ie=q.originalText.slice(v(ce),h(ce));(Ie.startsWith('"')||Ie.startsWith("'"))&&(K.exported=Object.assign(Object.assign({},K.exported),{},{type:"Literal",value:K.exported.name,raw:Ie}))}break}case"PropertyDefinition":if(q.parser==="meriyah"&&K.static&&!K.computed&&!K.key){let ce="static",Ie=v(K);Object.assign(K,{static:!1,key:{type:"Identifier",name:ce,range:[Ie,Ie+ce.length]}})}break}}),M;function W(K,ce){q.originalText[h(ce)]!==";"&&(K.range=[v(K),h(ce)])}}function E(M){switch(M.type){case"CallExpression":M.type="OptionalCallExpression",M.callee=E(M.callee);break;case"MemberExpression":M.type="OptionalMemberExpression",M.object=E(M.object);break;case"TSNonNullExpression":M.expression=E(M.expression);break}return M}function I(M){return M.type==="LogicalExpression"&&M.right.type==="LogicalExpression"&&M.operator===M.right.operator}function c(M){return I(M)?c({type:"LogicalExpression",operator:M.operator,left:c({type:"LogicalExpression",operator:M.operator,left:M.left,right:M.right.left,range:[v(M.left),h(M.right.left)]}),right:M.right.right,range:[v(M),h(M)]}):M}_.exports=d}}),vr=Oe({"node_modules/typescript/lib/typescript.js"(a,_){De();var v=Object.defineProperty,h=Object.getOwnPropertyNames,D=(e,t)=>function(){return e&&(t=(0,e[h(e)[0]])(e=0)),t},P=(e,t)=>function(){return t||(0,e[h(e)[0]])((t={exports:{}}).exports,t),t.exports},y=(e,t)=>{for(var r in t)v(e,r,{get:t[r],enumerable:!0})},m,C,d,E=D({"src/compiler/corePublic.ts"(){"use strict";m="5.0",C="5.0.2",d=(e=>(e[e.LessThan=-1]="LessThan",e[e.EqualTo=0]="EqualTo",e[e.GreaterThan=1]="GreaterThan",e))(d||{})}});function I(e){return e?e.length:0}function c(e,t){if(e)for(let r=0;r=0;r--){let s=t(e[r],r);if(s)return s}}function q(e,t){if(e!==void 0)for(let r=0;r=0;s--){let f=e[s];if(t(f,s))return f}}function he(e,t,r){if(e===void 0)return-1;for(let s=r!=null?r:0;s=0;s--)if(t(e[s],s))return s;return-1}function R(e,t){for(let r=0;r2&&arguments[2]!==void 0?arguments[2]:fa;if(e){for(let s of e)if(r(s,t))return!0}return!1}function ke(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:fa;return e.length===t.length&&e.every((s,f)=>r(s,t[f]))}function Je(e,t,r){for(let s=r||0;s{let x=t(f,s);if(x!==void 0){let[w,A]=x;w!==void 0&&A!==void 0&&r.set(w,A)}}),r}function la(e,t,r){if(e.has(t))return e.get(t);let s=r();return e.set(t,s),s}function ua(e,t){return e.has(t)?!1:(e.add(t),!0)}function*Ka(e){yield e}function co(e,t,r){let s;if(e){s=[];let f=e.length,x,w,A=0,g=0;for(;A{let[x,w]=t(f,s);r.set(x,w)}),r}function Ke(e,t){if(e)if(t){for(let r of e)if(t(r))return!0}else return e.length>0;return!1}function Et(e,t,r){let s;for(let f=0;fe[w])}function Uc(e,t){let r=[];for(let s of e)qn(r,s,t);return r}function ji(e,t,r){return e.length===0?[]:e.length===1?e.slice():r?m_(e,t,r):Uc(e,t)}function lo(e,t){if(e.length===0)return Bt;let r=e[0],s=[r];for(let f=1;f0&&(f&=-2),f&2&&s(x,g)>0&&(f&=-3),x=g}return f}function Hc(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:fa;if(!e||!t)return e===t;if(e.length!==t.length)return!1;for(let s=0;s0&&Y.assertGreaterThanOrEqual(r(t[x],t[x-1]),0);t:for(let w=f;fw&&Y.assertGreaterThanOrEqual(r(e[f],e[f-1]),0),r(t[x],e[f])){case-1:s.push(t[x]);continue e;case 0:continue e;case 1:continue t}}return s}function tr(e,t){return t===void 0?e:e===void 0?[t]:(e.push(t),e)}function $c(e,t){return e===void 0?t:t===void 0?e:ir(e)?ir(t)?Ft(e,t):tr(e,t):ir(t)?tr(t,e):[e,t]}function po(e,t){return t<0?e.length+t:t}function jr(e,t,r,s){if(t===void 0||t.length===0)return e;if(e===void 0)return t.slice(r,s);r=r===void 0?0:po(t,r),s=s===void 0?t.length:po(t,s);for(let f=r;fr(e[s],e[f])||Vr(s,f))}function Is(e,t){return e.length===0?e:e.slice().sort(t)}function*y_(e){for(let t=e.length-1;t>=0;t--)yield e[t]}function Ns(e,t){let r=Wr(e);return ks(e,r,t),r.map(s=>e[s])}function Kc(e,t,r,s){for(;r>1),g=r(e[A],A);switch(s(g,t)){case-1:x=A+1;break;case 0:return A;case 1:w=A-1;break}}return~x}function Qa(e,t,r,s,f){if(e&&e.length>0){let x=e.length;if(x>0){let w=s===void 0||s<0?0:s,A=f===void 0||w+f>x-1?x-1:w+f,g;for(arguments.length<=2?(g=e[w],w++):g=r;w<=A;)g=t(g,e[w],w),w++;return g}}return r}function Jr(e,t){return ni.call(e,t)}function Qc(e,t){return ni.call(e,t)?e[t]:void 0}function ho(e){let t=[];for(let r in e)ni.call(e,r)&&t.push(r);return t}function T_(e){let t=[];do{let r=Object.getOwnPropertyNames(e);for(let s of r)qn(t,s)}while(e=Object.getPrototypeOf(e));return t}function go(e){let t=[];for(let r in e)ni.call(e,r)&&t.push(e[r]);return t}function yo(e,t){let r=new Array(e);for(let s=0;s1?t-1:0),s=1;s2&&arguments[2]!==void 0?arguments[2]:fa;if(e===t)return!0;if(!e||!t)return!1;for(let s in e)if(ni.call(e,s)&&(!ni.call(t,s)||!r(e[s],t[s])))return!1;for(let s in t)if(ni.call(t,s)&&!ni.call(e,s))return!1;return!0}function Zc(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:rr,s=new Map;for(let f of e){let x=t(f);x!==void 0&&s.set(x,r(f))}return s}function Os(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:rr,s=[];for(let f of e)s[t(f)]=r(f);return s}function bo(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:rr,s=Be();for(let f of e)s.add(t(f),r(f));return s}function el(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:rr;return Za(bo(e,t).values(),r)}function x_(e,t){var r;let s={};if(e)for(let f of e){let x=`${t(f)}`;((r=s[x])!=null?r:s[x]=[]).push(f)}return s}function E_(e){let t={};for(let r in e)ni.call(e,r)&&(t[r]=e[r]);return t}function S(e,t){let r={};for(let s in t)ni.call(t,s)&&(r[s]=t[s]);for(let s in e)ni.call(e,s)&&(r[s]=e[s]);return r}function H(e,t){for(let r in t)ni.call(t,r)&&(e[r]=t[r])}function le(e,t){return t?t.bind(e):void 0}function Be(){let e=new Map;return e.add=rt,e.remove=ut,e}function rt(e,t){let r=this.get(e);return r?r.push(t):this.set(e,r=[t]),r}function ut(e,t){let r=this.get(e);r&&(bT(r,t),r.length||this.delete(e))}function Ht(){return Be()}function Fr(e){let t=(e==null?void 0:e.slice())||[],r=0;function s(){return r===t.length}function f(){t.push(...arguments)}function x(){if(s())throw new Error("Queue is empty");let w=t[r];if(t[r]=void 0,r++,r>100&&r>t.length>>1){let A=t.length-r;t.copyWithin(0,r),t.length=A,r=0}return w}return{enqueue:f,dequeue:x,isEmpty:s}}function Cr(e,t){let r=new Map,s=0;function*f(){for(let w of r.values())ir(w)?yield*w:yield w}let x={has(w){let A=e(w);if(!r.has(A))return!1;let g=r.get(A);if(!ir(g))return t(g,w);for(let B of g)if(t(B,w))return!0;return!1},add(w){let A=e(w);if(r.has(A)){let g=r.get(A);if(ir(g))pe(g,w,t)||(g.push(w),s++);else{let B=g;t(B,w)||(r.set(A,[B,w]),s++)}}else r.set(A,w),s++;return this},delete(w){let A=e(w);if(!r.has(A))return!1;let g=r.get(A);if(ir(g)){for(let B=0;Bf(),[Symbol.toStringTag]:r[Symbol.toStringTag]};return x}function ir(e){return Array.isArray(e)}function en(e){return ir(e)?e:[e]}function Ji(e){return typeof e=="string"}function gi(e){return typeof e=="number"}function ln(e,t){return e!==void 0&&t(e)?e:void 0}function ti(e,t){return e!==void 0&&t(e)?e:Y.fail(`Invalid cast. The supplied value ${e} did not pass the test '${Y.getFunctionName(t)}'.`)}function yn(e){}function w_(){return!1}function vp(){return!0}function C1(){}function rr(e){return e}function bp(e){return e.toLowerCase()}function Tp(e){return G1.test(e)?e.replace(G1,bp):e}function A1(){throw new Error("Not implemented")}function tl(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function An(e){let t=new Map;return r=>{let s=`${typeof r}:${r}`,f=t.get(s);return f===void 0&&!t.has(s)&&(f=e(r),t.set(s,f)),f}}function P1(e){let t=new WeakMap;return r=>{let s=t.get(r);return s===void 0&&!t.has(r)&&(s=e(r),t.set(r,s)),s}}function D1(e,t){return function(){for(var r=arguments.length,s=new Array(r),f=0;fQa(x,(A,g)=>g(A),w)}else return s?x=>s(r(t(e(x)))):r?x=>r(t(e(x))):t?x=>t(e(x)):e?x=>e(x):x=>x}function fa(e,t){return e===t}function Ms(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function To(e,t){return fa(e,t)}function Sp(e,t){return e===t?0:e===void 0?-1:t===void 0?1:et(r,s)===-1?r:s)}function C_(e,t){return e===t?0:e===void 0?-1:t===void 0?1:(e=e.toUpperCase(),t=t.toUpperCase(),et?1:0)}function O1(e,t){return e===t?0:e===void 0?-1:t===void 0?1:(e=e.toLowerCase(),t=t.toLowerCase(),et?1:0)}function ri(e,t){return Sp(e,t)}function rl(e){return e?C_:ri}function M1(){return Ap}function xp(e){Ap!==e&&(Ap=e,K1=void 0)}function L1(e,t){return(K1||(K1=AT(Ap)))(e,t)}function R1(e,t,r,s){return e===t?0:e===void 0?-1:t===void 0?1:s(e[r],t[r])}function j1(e,t){return Vr(e?1:0,t?1:0)}function Ep(e,t,r){let s=Math.max(2,Math.floor(e.length*.34)),f=Math.floor(e.length*.4)+1,x;for(let w of t){let A=r(w);if(A!==void 0&&Math.abs(A.length-e.length)<=s){if(A===e||A.length<3&&A.toLowerCase()!==e.toLowerCase())continue;let g=J1(e,A,f-.1);if(g===void 0)continue;Y.assert(gr?A-r:1),N=Math.floor(t.length>r+A?r+A:t.length);f[0]=A;let X=A;for(let $=1;$r)return;let F=s;s=f,f=F}let w=s[t.length];return w>r?void 0:w}function es(e,t){let r=e.length-t.length;return r>=0&&e.indexOf(t,r)===r}function F1(e,t){return es(e,t)?e.slice(0,e.length-t.length):e}function B1(e,t){return es(e,t)?e.slice(0,e.length-t.length):void 0}function Fi(e,t){return e.indexOf(t)!==-1}function q1(e){let t=e.length;for(let r=t-1;r>0;r--){let s=e.charCodeAt(r);if(s>=48&&s<=57)do--r,s=e.charCodeAt(r);while(r>0&&s>=48&&s<=57);else if(r>4&&(s===110||s===78)){if(--r,s=e.charCodeAt(r),s!==105&&s!==73||(--r,s=e.charCodeAt(r),s!==109&&s!==77))break;--r,s=e.charCodeAt(r)}else break;if(s!==45&&s!==46)break;t=r}return t===e.length?e:e.slice(0,t)}function J(e,t){for(let r=0;rr===t)}function b5(e,t){for(let r=0;rf&&(f=w.prefix.length,s=x)}return s}function Pn(e,t){return e.lastIndexOf(t,0)===0}function x5(e,t){return Pn(e,t)?e.substr(t.length):e}function ST(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:rr;return Pn(r(e),r(t))?e.substring(t.length):void 0}function z1(e,t){let{prefix:r,suffix:s}=e;return t.length>=r.length+s.length&&Pn(t,r)&&es(t,s)}function E5(e,t){return r=>e(r)&&t(r)}function W1(){for(var e=arguments.length,t=new Array(e),r=0;r2&&arguments[2]!==void 0?arguments[2]:" ";return t<=e.length?e:r.repeat(t-e.length)+e}function k5(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:" ";return t<=e.length?e:e+r.repeat(t-e.length)}function I5(e,t){if(e){let r=e.length,s=0;for(;s=0&&os(e.charCodeAt(t));)t--;return e.slice(0,t+1)}function M5(){return typeof cn<"u"&&cn.nextTick&&!cn.browser&&typeof _=="object"}var Bt,V1,ET,H1,wT,ni,CT,G1,$1,AT,K1,Ap,Pp,X1,nl,L5=D({"src/compiler/core.ts"(){"use strict";nn(),Bt=[],V1=new Map,ET=new Set,H1=(e=>(e[e.None=0]="None",e[e.CaseSensitive=1]="CaseSensitive",e[e.CaseInsensitive=2]="CaseInsensitive",e[e.Both=3]="Both",e))(H1||{}),wT=Array.prototype.at?(e,t)=>e==null?void 0:e.at(t):(e,t)=>{if(e&&(t=po(e,t),t(e[e.None=0]="None",e[e.Normal=1]="Normal",e[e.Aggressive=2]="Aggressive",e[e.VeryAggressive=3]="VeryAggressive",e))($1||{}),AT=(()=>{let e,t,r=A();return g;function s(B,N,X){if(B===N)return 0;if(B===void 0)return-1;if(N===void 0)return 1;let F=X(B,N);return F<0?-1:F>0?1:0}function f(B){let N=new Intl.Collator(B,{usage:"sort",sensitivity:"variant"}).compare;return(X,F)=>s(X,F,N)}function x(B){if(B!==void 0)return w();return(X,F)=>s(X,F,N);function N(X,F){return X.localeCompare(F)}}function w(){return(X,F)=>s(X,F,B);function B(X,F){return N(X.toUpperCase(),F.toUpperCase())||N(X,F)}function N(X,F){return XF?1:0}}function A(){return typeof Intl=="object"&&typeof Intl.Collator=="function"?f:typeof String.prototype.localeCompare=="function"&&typeof String.prototype.toLocaleUpperCase=="function"&&"a".localeCompare("B")<0?x:w}function g(B){return B===void 0?e||(e=r(B)):B==="en-US"?t||(t=r(B)):r(B)}})(),Pp=String.prototype.trim?e=>e.trim():e=>X1(nl(e)),X1=String.prototype.trimEnd?e=>e.trimEnd():O5,nl=String.prototype.trimStart?e=>e.trimStart():e=>e.replace(/^\s+/g,"")}}),Y1,Y,PT=D({"src/compiler/debug.ts"(){"use strict";nn(),nn(),Y1=(e=>(e[e.Off=0]="Off",e[e.Error=1]="Error",e[e.Warning=2]="Warning",e[e.Info=3]="Info",e[e.Verbose=4]="Verbose",e))(Y1||{}),(e=>{let t=0;e.currentLogLevel=2,e.isDebugging=!1;function r(ue){return e.currentLogLevel<=ue}e.shouldLog=r;function s(ue,He){e.loggingHost&&r(ue)&&e.loggingHost.log(ue,He)}function f(ue){s(3,ue)}e.log=f,(ue=>{function He(zt){s(1,zt)}ue.error=He;function _t(zt){s(2,zt)}ue.warn=_t;function ft(zt){s(3,zt)}ue.log=ft;function Kt(zt){s(4,zt)}ue.trace=Kt})(f=e.log||(e.log={}));let x={};function w(){return t}e.getAssertionLevel=w;function A(ue){let He=t;if(t=ue,ue>He)for(let _t of ho(x)){let ft=x[_t];ft!==void 0&&e[_t]!==ft.assertion&&ue>=ft.level&&(e[_t]=ft,x[_t]=void 0)}}e.setAssertionLevel=A;function g(ue){return t>=ue}e.shouldAssert=g;function B(ue,He){return g(ue)?!0:(x[He]={level:ue,assertion:e[He]},e[He]=yn,!1)}function N(ue,He){debugger;let _t=new Error(ue?`Debug Failure. ${ue}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(_t,He||N),_t}e.fail=N;function X(ue,He,_t){return N(`${He||"Unexpected node."}\r +Node ${mr(ue.kind)} was unexpected.`,_t||X)}e.failBadSyntaxKind=X;function F(ue,He,_t,ft){ue||(He=He?`False expression: ${He}`:"False expression.",_t&&(He+=`\r +Verbose Debug Information: `+(typeof _t=="string"?_t:_t())),N(He,ft||F))}e.assert=F;function $(ue,He,_t,ft,Kt){if(ue!==He){let zt=_t?ft?`${_t} ${ft}`:_t:"";N(`Expected ${ue} === ${He}. ${zt}`,Kt||$)}}e.assertEqual=$;function ae(ue,He,_t,ft){ue>=He&&N(`Expected ${ue} < ${He}. ${_t||""}`,ft||ae)}e.assertLessThan=ae;function Te(ue,He,_t){ue>He&&N(`Expected ${ue} <= ${He}`,_t||Te)}e.assertLessThanOrEqual=Te;function Se(ue,He,_t){ue= ${He}`,_t||Se)}e.assertGreaterThanOrEqual=Se;function Ye(ue,He,_t){ue==null&&N(He,_t||Ye)}e.assertIsDefined=Ye;function Ne(ue,He,_t){return Ye(ue,He,_t||Ne),ue}e.checkDefined=Ne;function oe(ue,He,_t){for(let ft of ue)Ye(ft,He,_t||oe)}e.assertEachIsDefined=oe;function Ve(ue,He,_t){return oe(ue,He,_t||Ve),ue}e.checkEachDefined=Ve;function pt(ue){let He=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Illegal value:",_t=arguments.length>2?arguments[2]:void 0,ft=typeof ue=="object"&&Jr(ue,"kind")&&Jr(ue,"pos")?"SyntaxKind: "+mr(ue.kind):JSON.stringify(ue);return N(`${He} ${ft}`,_t||pt)}e.assertNever=pt;function Gt(ue,He,_t,ft){B(1,"assertEachNode")&&F(He===void 0||me(ue,He),_t||"Unexpected node.",()=>`Node array did not pass test '${pn(He)}'.`,ft||Gt)}e.assertEachNode=Gt;function Nt(ue,He,_t,ft){B(1,"assertNode")&&F(ue!==void 0&&(He===void 0||He(ue)),_t||"Unexpected node.",()=>`Node ${mr(ue==null?void 0:ue.kind)} did not pass test '${pn(He)}'.`,ft||Nt)}e.assertNode=Nt;function Xt(ue,He,_t,ft){B(1,"assertNotNode")&&F(ue===void 0||He===void 0||!He(ue),_t||"Unexpected node.",()=>`Node ${mr(ue.kind)} should not have passed test '${pn(He)}'.`,ft||Xt)}e.assertNotNode=Xt;function er(ue,He,_t,ft){B(1,"assertOptionalNode")&&F(He===void 0||ue===void 0||He(ue),_t||"Unexpected node.",()=>`Node ${mr(ue==null?void 0:ue.kind)} did not pass test '${pn(He)}'.`,ft||er)}e.assertOptionalNode=er;function Tn(ue,He,_t,ft){B(1,"assertOptionalToken")&&F(He===void 0||ue===void 0||ue.kind===He,_t||"Unexpected node.",()=>`Node ${mr(ue==null?void 0:ue.kind)} was not a '${mr(He)}' token.`,ft||Tn)}e.assertOptionalToken=Tn;function Hr(ue,He,_t){B(1,"assertMissingNode")&&F(ue===void 0,He||"Unexpected node.",()=>`Node ${mr(ue.kind)} was unexpected'.`,_t||Hr)}e.assertMissingNode=Hr;function Gi(ue){}e.type=Gi;function pn(ue){if(typeof ue!="function")return"";if(Jr(ue,"name"))return ue.name;{let He=Function.prototype.toString.call(ue),_t=/^function\s+([\w\$]+)\s*\(/.exec(He);return _t?_t[1]:""}}e.getFunctionName=pn;function fn(ue){return`{ name: ${dl(ue.escapedName)}; flags: ${Sn(ue.flags)}; declarations: ${Ze(ue.declarations,He=>mr(He.kind))} }`}e.formatSymbol=fn;function Ut(){let ue=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,He=arguments.length>1?arguments[1]:void 0,_t=arguments.length>2?arguments[2]:void 0,ft=an(He);if(ue===0)return ft.length>0&&ft[0][0]===0?ft[0][1]:"0";if(_t){let Kt=[],zt=ue;for(let[xe,Le]of ft){if(xe>ue)break;xe!==0&&xe&ue&&(Kt.push(Le),zt&=~xe)}if(zt===0)return Kt.join("|")}else for(let[Kt,zt]of ft)if(Kt===ue)return zt;return ue.toString()}e.formatEnum=Ut;let kn=new Map;function an(ue){let He=kn.get(ue);if(He)return He;let _t=[];for(let Kt in ue){let zt=ue[Kt];typeof zt=="number"&&_t.push([zt,Kt])}let ft=Ns(_t,(Kt,zt)=>Vr(Kt[0],zt[0]));return kn.set(ue,ft),ft}function mr(ue){return Ut(ue,Np,!1)}e.formatSyntaxKind=mr;function $i(ue){return Ut(ue,zp,!1)}e.formatSnippetKind=$i;function dn(ue){return Ut(ue,Op,!0)}e.formatNodeFlags=dn;function Ur(ue){return Ut(ue,Mp,!0)}e.formatModifierFlags=Ur;function Gr(ue){return Ut(ue,Up,!0)}e.formatTransformFlags=Gr;function _r(ue){return Ut(ue,Wp,!0)}e.formatEmitFlags=_r;function Sn(ue){return Ut(ue,jp,!0)}e.formatSymbolFlags=Sn;function In(ue){return Ut(ue,Jp,!0)}e.formatTypeFlags=In;function pr(ue){return Ut(ue,Bp,!0)}e.formatSignatureFlags=pr;function Zt(ue){return Ut(ue,Fp,!0)}e.formatObjectFlags=Zt;function Or(ue){return Ut(ue,il,!0)}e.formatFlowFlags=Or;function Nn(ue){return Ut(ue,Lp,!0)}e.formatRelationComparisonResult=Nn;function ar(ue){return Ut(ue,CheckMode,!0)}e.formatCheckMode=ar;function oi(ue){return Ut(ue,SignatureCheckMode,!0)}e.formatSignatureCheckMode=oi;function cr(ue){return Ut(ue,TypeFacts,!0)}e.formatTypeFacts=cr;let $r=!1,hr;function On(ue){"__debugFlowFlags"in ue||Object.defineProperties(ue,{__tsDebuggerDisplay:{value(){let He=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",_t=this.flags&~(2048-1);return`${He}${_t?` (${Or(_t)})`:""}`}},__debugFlowFlags:{get(){return Ut(this.flags,il,!0)}},__debugToString:{value(){return St(this)}}})}function nr(ue){$r&&(typeof Object.setPrototypeOf=="function"?(hr||(hr=Object.create(Object.prototype),On(hr)),Object.setPrototypeOf(ue,hr)):On(ue))}e.attachFlowNodeDebugInfo=nr;let br;function Kr(ue){"__tsDebuggerDisplay"in ue||Object.defineProperties(ue,{__tsDebuggerDisplay:{value(He){return He=String(He).replace(/(?:,[\s\w\d_]+:[^,]+)+\]$/,"]"),`NodeArray ${He}`}}})}function wa(ue){$r&&(typeof Object.setPrototypeOf=="function"?(br||(br=Object.create(Array.prototype),Kr(br)),Object.setPrototypeOf(ue,br)):Kr(ue))}e.attachNodeArrayDebugInfo=wa;function $n(){if($r)return;let ue=new WeakMap,He=new WeakMap;Object.defineProperties(lr.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){let ft=this.flags&33554432?"TransientSymbol":"Symbol",Kt=this.flags&-33554433;return`${ft} '${rf(this)}'${Kt?` (${Sn(Kt)})`:""}`}},__debugFlags:{get(){return Sn(this.flags)}}}),Object.defineProperties(lr.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){let ft=this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&67359327?`IntrinsicType ${this.intrinsicName}`:this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",Kt=this.flags&524288?this.objectFlags&-1344:0;return`${ft}${this.symbol?` '${rf(this.symbol)}'`:""}${Kt?` (${Zt(Kt)})`:""}`}},__debugFlags:{get(){return In(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?Zt(this.objectFlags):""}},__debugTypeToString:{value(){let ft=ue.get(this);return ft===void 0&&(ft=this.checker.typeToString(this),ue.set(this,ft)),ft}}}),Object.defineProperties(lr.getSignatureConstructor().prototype,{__debugFlags:{get(){return pr(this.flags)}},__debugSignatureToString:{value(){var ft;return(ft=this.checker)==null?void 0:ft.signatureToString(this)}}});let _t=[lr.getNodeConstructor(),lr.getIdentifierConstructor(),lr.getTokenConstructor(),lr.getSourceFileConstructor()];for(let ft of _t)Jr(ft.prototype,"__debugKind")||Object.defineProperties(ft.prototype,{__tsDebuggerDisplay:{value(){return`${cs(this)?"GeneratedIdentifier":yt(this)?`Identifier '${qr(this)}'`:vn(this)?`PrivateIdentifier '${qr(this)}'`:Gn(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:zs(this)?`NumericLiteral ${this.text}`:Uv(this)?`BigIntLiteral ${this.text}n`:Fo(this)?"TypeParameterDeclaration":Vs(this)?"ParameterDeclaration":nc(this)?"ConstructorDeclaration":Gl(this)?"GetAccessorDeclaration":ic(this)?"SetAccessorDeclaration":Vv(this)?"CallSignatureDeclaration":R8(this)?"ConstructSignatureDeclaration":Hv(this)?"IndexSignatureDeclaration":j8(this)?"TypePredicateNode":ac(this)?"TypeReferenceNode":$l(this)?"FunctionTypeNode":Gv(this)?"ConstructorTypeNode":J8(this)?"TypeQueryNode":id(this)?"TypeLiteralNode":F8(this)?"ArrayTypeNode":B8(this)?"TupleTypeNode":q8(this)?"OptionalTypeNode":U8(this)?"RestTypeNode":z8(this)?"UnionTypeNode":W8(this)?"IntersectionTypeNode":V8(this)?"ConditionalTypeNode":H8(this)?"InferTypeNode":Kv(this)?"ParenthesizedTypeNode":Xv(this)?"ThisTypeNode":G8(this)?"TypeOperatorNode":$8(this)?"IndexedAccessTypeNode":K8(this)?"MappedTypeNode":Yv(this)?"LiteralTypeNode":$v(this)?"NamedTupleMember":Kl(this)?"ImportTypeNode":mr(this.kind)}${this.flags?` (${dn(this.flags)})`:""}`}},__debugKind:{get(){return mr(this.kind)}},__debugNodeFlags:{get(){return dn(this.flags)}},__debugModifierFlags:{get(){return Ur(Y4(this))}},__debugTransformFlags:{get(){return Gr(this.transformFlags)}},__debugIsParseTreeNode:{get(){return pl(this)}},__debugEmitFlags:{get(){return _r(xi(this))}},__debugGetText:{value(Kt){if(fs(this))return"";let zt=He.get(this);if(zt===void 0){let xe=fl(this),Le=xe&&Si(xe);zt=Le?No(Le,xe,Kt):"",He.set(this,zt)}return zt}}});$r=!0}e.enableDebugInfo=$n;function Ki(ue){let He=ue&7,_t=He===0?"in out":He===3?"[bivariant]":He===2?"in":He===1?"out":He===4?"[independent]":"";return ue&8?_t+=" (unmeasurable)":ue&16&&(_t+=" (unreliable)"),_t}e.formatVariance=Ki;class Mn{__debugToString(){var He;switch(this.kind){case 3:return((He=this.debugInfo)==null?void 0:He.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return ce(this.sources,this.targets||Ze(this.sources,()=>"any"),(_t,ft)=>`${_t.__debugTypeToString()} -> ${typeof ft=="string"?ft:ft.__debugTypeToString()}`).join(", ");case 2:return ce(this.sources,this.targets,(_t,ft)=>`${_t.__debugTypeToString()} -> ${ft().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(` +`).join(` + `)} +m2: ${this.mapper2.__debugToString().split(` +`).join(` + `)}`;default:return pt(this)}}}e.DebugTypeMapper=Mn;function _i(ue){return e.isDebugging?Object.setPrototypeOf(ue,Mn.prototype):ue}e.attachDebugPrototypeIfDebug=_i;function Ca(ue){return console.log(St(ue))}e.printControlFlowGraph=Ca;function St(ue){let He=-1;function _t(U){return U.id||(U.id=He,He--),U.id}let ft;(U=>{U.lr="\u2500",U.ud="\u2502",U.dr="\u256D",U.dl="\u256E",U.ul="\u256F",U.ur="\u2570",U.udr="\u251C",U.udl="\u2524",U.dlr="\u252C",U.ulr="\u2534",U.udlr="\u256B"})(ft||(ft={}));let Kt;(U=>{U[U.None=0]="None",U[U.Up=1]="Up",U[U.Down=2]="Down",U[U.Left=4]="Left",U[U.Right=8]="Right",U[U.UpDown=3]="UpDown",U[U.LeftRight=12]="LeftRight",U[U.UpLeft=5]="UpLeft",U[U.UpRight=9]="UpRight",U[U.DownLeft=6]="DownLeft",U[U.DownRight=10]="DownRight",U[U.UpDownLeft=7]="UpDownLeft",U[U.UpDownRight=11]="UpDownRight",U[U.UpLeftRight=13]="UpLeftRight",U[U.DownLeftRight=14]="DownLeftRight",U[U.UpDownLeftRight=15]="UpDownLeftRight",U[U.NoChildren=16]="NoChildren"})(Kt||(Kt={}));let zt=2032,xe=882,Le=Object.create(null),Re=[],ot=[],Ct=Aa(ue,new Set);for(let U of Re)U.text=xn(U.flowNode,U.circular),$s(U);let Mt=li(Ct),It=Yi(Mt);return Qi(Ct,0),Dt();function Mr(U){return!!(U.flags&128)}function gr(U){return!!(U.flags&12)&&!!U.antecedents}function Ln(U){return!!(U.flags&zt)}function ys(U){return!!(U.flags&xe)}function ci(U){let L=[];for(let fe of U.edges)fe.source===U&&L.push(fe.target);return L}function Xi(U){let L=[];for(let fe of U.edges)fe.target===U&&L.push(fe.source);return L}function Aa(U,L){let fe=_t(U),T=Le[fe];if(T&&L.has(U))return T.circular=!0,T={id:-1,flowNode:U,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},Re.push(T),T;if(L.add(U),!T)if(Le[fe]=T={id:fe,flowNode:U,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},Re.push(T),gr(U))for(let it of U.antecedents)vs(T,it,L);else Ln(U)&&vs(T,U.antecedent,L);return L.delete(U),T}function vs(U,L,fe){let T=Aa(L,fe),it={source:U,target:T};ot.push(it),U.edges.push(it),T.edges.push(it)}function $s(U){if(U.level!==-1)return U.level;let L=0;for(let fe of Xi(U))L=Math.max(L,$s(fe)+1);return U.level=L}function li(U){let L=0;for(let fe of ci(U))L=Math.max(L,li(fe));return L+1}function Yi(U){let L=Z(Array(U),0);for(let fe of Re)L[fe.level]=Math.max(L[fe.level],fe.text.length);return L}function Qi(U,L){if(U.lane===-1){U.lane=L,U.endLane=L;let fe=ci(U);for(let T=0;T0&&L++;let it=fe[T];Qi(it,L),it.endLane>U.endLane&&(L=it.endLane)}U.endLane=L}}function bs(U){if(U&2)return"Start";if(U&4)return"Branch";if(U&8)return"Loop";if(U&16)return"Assignment";if(U&32)return"True";if(U&64)return"False";if(U&128)return"SwitchClause";if(U&256)return"ArrayMutation";if(U&512)return"Call";if(U&1024)return"ReduceLabel";if(U&1)return"Unreachable";throw new Error}function Ai(U){let L=Si(U);return No(L,U,!1)}function xn(U,L){let fe=bs(U.flags);if(L&&(fe=`${fe}#${_t(U)}`),ys(U))U.node&&(fe+=` (${Ai(U.node)})`);else if(Mr(U)){let T=[];for(let it=U.clauseStart;itMath.max(_e,Ge.lane),0)+1,fe=Z(Array(L),""),T=It.map(()=>Array(L)),it=It.map(()=>Z(Array(L),0));for(let _e of Re){T[_e.level][_e.lane]=_e;let Ge=ci(_e);for(let jt=0;jt0&&($t|=1),jt0&&($t|=1),jt0?it[_e-1][Ge]:0,jt=Ge>0?it[_e][Ge-1]:0,Yt=it[_e][Ge];Yt||(bt&8&&(Yt|=12),jt&2&&(Yt|=3),it[_e][Ge]=Yt)}for(let _e=0;_e0?U.repeat(L):"";let fe="";for(;fe.length{},j5=()=>{},J5=()=>{},ts=Date.now,F5=()=>{},Dp=new Proxy(()=>{},{get:()=>Dp});function DT(e){var t;if(Q1){let r=(t=Z1.get(e))!=null?t:0;Z1.set(e,r+1),Ip.set(e,ts()),kp==null||kp.mark(e),typeof onProfilerEvent=="function"&&onProfilerEvent(e)}}function B5(e,t,r){var s,f;if(Q1){let x=(s=r!==void 0?Ip.get(r):void 0)!=null?s:ts(),w=(f=t!==void 0?Ip.get(t):void 0)!=null?f:kT,A=eg.get(e)||0;eg.set(e,A+(x-w)),kp==null||kp.measure(e,t,r)}}var kp,q5,Q1,kT,Ip,Z1,eg,pH=D({"src/compiler/performance.ts"(){"use strict";nn(),q5={enter:yn,exit:yn},Q1=!1,kT=ts(),Ip=new Map,Z1=new Map,eg=new Map}}),IT=()=>{},U5=()=>{},rs;function z5(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=qp[e.category];return t?r.toLowerCase():r}var Np,Op,Mp,tg,Lp,rg,ng,il,ig,Rp,ag,sg,og,_g,cg,lg,ug,pg,fg,dg,mg,hg,gg,yg,vg,jp,bg,Tg,Sg,xg,Jp,Fp,Eg,wg,Cg,Ag,Pg,Bp,Dg,kg,Ig,Ng,Og,Mg,qp,Lg,Rg,jg,Jg,Fg,Bg,qg,Ug,zg,Wg,Vg,Hg,Gg,$g,Kg,Up,zp,Wp,Xg,Yg,Qg,Zg,ey,ty,ry,ny,Vp,NT=D({"src/compiler/types.ts"(){"use strict";Np=(e=>(e[e.Unknown=0]="Unknown",e[e.EndOfFileToken=1]="EndOfFileToken",e[e.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",e[e.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",e[e.NewLineTrivia=4]="NewLineTrivia",e[e.WhitespaceTrivia=5]="WhitespaceTrivia",e[e.ShebangTrivia=6]="ShebangTrivia",e[e.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",e[e.NumericLiteral=8]="NumericLiteral",e[e.BigIntLiteral=9]="BigIntLiteral",e[e.StringLiteral=10]="StringLiteral",e[e.JsxText=11]="JsxText",e[e.JsxTextAllWhiteSpaces=12]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=13]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=14]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=15]="TemplateHead",e[e.TemplateMiddle=16]="TemplateMiddle",e[e.TemplateTail=17]="TemplateTail",e[e.OpenBraceToken=18]="OpenBraceToken",e[e.CloseBraceToken=19]="CloseBraceToken",e[e.OpenParenToken=20]="OpenParenToken",e[e.CloseParenToken=21]="CloseParenToken",e[e.OpenBracketToken=22]="OpenBracketToken",e[e.CloseBracketToken=23]="CloseBracketToken",e[e.DotToken=24]="DotToken",e[e.DotDotDotToken=25]="DotDotDotToken",e[e.SemicolonToken=26]="SemicolonToken",e[e.CommaToken=27]="CommaToken",e[e.QuestionDotToken=28]="QuestionDotToken",e[e.LessThanToken=29]="LessThanToken",e[e.LessThanSlashToken=30]="LessThanSlashToken",e[e.GreaterThanToken=31]="GreaterThanToken",e[e.LessThanEqualsToken=32]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=33]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=34]="EqualsEqualsToken",e[e.ExclamationEqualsToken=35]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=36]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=37]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=38]="EqualsGreaterThanToken",e[e.PlusToken=39]="PlusToken",e[e.MinusToken=40]="MinusToken",e[e.AsteriskToken=41]="AsteriskToken",e[e.AsteriskAsteriskToken=42]="AsteriskAsteriskToken",e[e.SlashToken=43]="SlashToken",e[e.PercentToken=44]="PercentToken",e[e.PlusPlusToken=45]="PlusPlusToken",e[e.MinusMinusToken=46]="MinusMinusToken",e[e.LessThanLessThanToken=47]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=48]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=49]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=50]="AmpersandToken",e[e.BarToken=51]="BarToken",e[e.CaretToken=52]="CaretToken",e[e.ExclamationToken=53]="ExclamationToken",e[e.TildeToken=54]="TildeToken",e[e.AmpersandAmpersandToken=55]="AmpersandAmpersandToken",e[e.BarBarToken=56]="BarBarToken",e[e.QuestionToken=57]="QuestionToken",e[e.ColonToken=58]="ColonToken",e[e.AtToken=59]="AtToken",e[e.QuestionQuestionToken=60]="QuestionQuestionToken",e[e.BacktickToken=61]="BacktickToken",e[e.HashToken=62]="HashToken",e[e.EqualsToken=63]="EqualsToken",e[e.PlusEqualsToken=64]="PlusEqualsToken",e[e.MinusEqualsToken=65]="MinusEqualsToken",e[e.AsteriskEqualsToken=66]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=67]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=68]="SlashEqualsToken",e[e.PercentEqualsToken=69]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=70]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=71]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=73]="AmpersandEqualsToken",e[e.BarEqualsToken=74]="BarEqualsToken",e[e.BarBarEqualsToken=75]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=76]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=77]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=78]="CaretEqualsToken",e[e.Identifier=79]="Identifier",e[e.PrivateIdentifier=80]="PrivateIdentifier",e[e.BreakKeyword=81]="BreakKeyword",e[e.CaseKeyword=82]="CaseKeyword",e[e.CatchKeyword=83]="CatchKeyword",e[e.ClassKeyword=84]="ClassKeyword",e[e.ConstKeyword=85]="ConstKeyword",e[e.ContinueKeyword=86]="ContinueKeyword",e[e.DebuggerKeyword=87]="DebuggerKeyword",e[e.DefaultKeyword=88]="DefaultKeyword",e[e.DeleteKeyword=89]="DeleteKeyword",e[e.DoKeyword=90]="DoKeyword",e[e.ElseKeyword=91]="ElseKeyword",e[e.EnumKeyword=92]="EnumKeyword",e[e.ExportKeyword=93]="ExportKeyword",e[e.ExtendsKeyword=94]="ExtendsKeyword",e[e.FalseKeyword=95]="FalseKeyword",e[e.FinallyKeyword=96]="FinallyKeyword",e[e.ForKeyword=97]="ForKeyword",e[e.FunctionKeyword=98]="FunctionKeyword",e[e.IfKeyword=99]="IfKeyword",e[e.ImportKeyword=100]="ImportKeyword",e[e.InKeyword=101]="InKeyword",e[e.InstanceOfKeyword=102]="InstanceOfKeyword",e[e.NewKeyword=103]="NewKeyword",e[e.NullKeyword=104]="NullKeyword",e[e.ReturnKeyword=105]="ReturnKeyword",e[e.SuperKeyword=106]="SuperKeyword",e[e.SwitchKeyword=107]="SwitchKeyword",e[e.ThisKeyword=108]="ThisKeyword",e[e.ThrowKeyword=109]="ThrowKeyword",e[e.TrueKeyword=110]="TrueKeyword",e[e.TryKeyword=111]="TryKeyword",e[e.TypeOfKeyword=112]="TypeOfKeyword",e[e.VarKeyword=113]="VarKeyword",e[e.VoidKeyword=114]="VoidKeyword",e[e.WhileKeyword=115]="WhileKeyword",e[e.WithKeyword=116]="WithKeyword",e[e.ImplementsKeyword=117]="ImplementsKeyword",e[e.InterfaceKeyword=118]="InterfaceKeyword",e[e.LetKeyword=119]="LetKeyword",e[e.PackageKeyword=120]="PackageKeyword",e[e.PrivateKeyword=121]="PrivateKeyword",e[e.ProtectedKeyword=122]="ProtectedKeyword",e[e.PublicKeyword=123]="PublicKeyword",e[e.StaticKeyword=124]="StaticKeyword",e[e.YieldKeyword=125]="YieldKeyword",e[e.AbstractKeyword=126]="AbstractKeyword",e[e.AccessorKeyword=127]="AccessorKeyword",e[e.AsKeyword=128]="AsKeyword",e[e.AssertsKeyword=129]="AssertsKeyword",e[e.AssertKeyword=130]="AssertKeyword",e[e.AnyKeyword=131]="AnyKeyword",e[e.AsyncKeyword=132]="AsyncKeyword",e[e.AwaitKeyword=133]="AwaitKeyword",e[e.BooleanKeyword=134]="BooleanKeyword",e[e.ConstructorKeyword=135]="ConstructorKeyword",e[e.DeclareKeyword=136]="DeclareKeyword",e[e.GetKeyword=137]="GetKeyword",e[e.InferKeyword=138]="InferKeyword",e[e.IntrinsicKeyword=139]="IntrinsicKeyword",e[e.IsKeyword=140]="IsKeyword",e[e.KeyOfKeyword=141]="KeyOfKeyword",e[e.ModuleKeyword=142]="ModuleKeyword",e[e.NamespaceKeyword=143]="NamespaceKeyword",e[e.NeverKeyword=144]="NeverKeyword",e[e.OutKeyword=145]="OutKeyword",e[e.ReadonlyKeyword=146]="ReadonlyKeyword",e[e.RequireKeyword=147]="RequireKeyword",e[e.NumberKeyword=148]="NumberKeyword",e[e.ObjectKeyword=149]="ObjectKeyword",e[e.SatisfiesKeyword=150]="SatisfiesKeyword",e[e.SetKeyword=151]="SetKeyword",e[e.StringKeyword=152]="StringKeyword",e[e.SymbolKeyword=153]="SymbolKeyword",e[e.TypeKeyword=154]="TypeKeyword",e[e.UndefinedKeyword=155]="UndefinedKeyword",e[e.UniqueKeyword=156]="UniqueKeyword",e[e.UnknownKeyword=157]="UnknownKeyword",e[e.FromKeyword=158]="FromKeyword",e[e.GlobalKeyword=159]="GlobalKeyword",e[e.BigIntKeyword=160]="BigIntKeyword",e[e.OverrideKeyword=161]="OverrideKeyword",e[e.OfKeyword=162]="OfKeyword",e[e.QualifiedName=163]="QualifiedName",e[e.ComputedPropertyName=164]="ComputedPropertyName",e[e.TypeParameter=165]="TypeParameter",e[e.Parameter=166]="Parameter",e[e.Decorator=167]="Decorator",e[e.PropertySignature=168]="PropertySignature",e[e.PropertyDeclaration=169]="PropertyDeclaration",e[e.MethodSignature=170]="MethodSignature",e[e.MethodDeclaration=171]="MethodDeclaration",e[e.ClassStaticBlockDeclaration=172]="ClassStaticBlockDeclaration",e[e.Constructor=173]="Constructor",e[e.GetAccessor=174]="GetAccessor",e[e.SetAccessor=175]="SetAccessor",e[e.CallSignature=176]="CallSignature",e[e.ConstructSignature=177]="ConstructSignature",e[e.IndexSignature=178]="IndexSignature",e[e.TypePredicate=179]="TypePredicate",e[e.TypeReference=180]="TypeReference",e[e.FunctionType=181]="FunctionType",e[e.ConstructorType=182]="ConstructorType",e[e.TypeQuery=183]="TypeQuery",e[e.TypeLiteral=184]="TypeLiteral",e[e.ArrayType=185]="ArrayType",e[e.TupleType=186]="TupleType",e[e.OptionalType=187]="OptionalType",e[e.RestType=188]="RestType",e[e.UnionType=189]="UnionType",e[e.IntersectionType=190]="IntersectionType",e[e.ConditionalType=191]="ConditionalType",e[e.InferType=192]="InferType",e[e.ParenthesizedType=193]="ParenthesizedType",e[e.ThisType=194]="ThisType",e[e.TypeOperator=195]="TypeOperator",e[e.IndexedAccessType=196]="IndexedAccessType",e[e.MappedType=197]="MappedType",e[e.LiteralType=198]="LiteralType",e[e.NamedTupleMember=199]="NamedTupleMember",e[e.TemplateLiteralType=200]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=201]="TemplateLiteralTypeSpan",e[e.ImportType=202]="ImportType",e[e.ObjectBindingPattern=203]="ObjectBindingPattern",e[e.ArrayBindingPattern=204]="ArrayBindingPattern",e[e.BindingElement=205]="BindingElement",e[e.ArrayLiteralExpression=206]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=207]="ObjectLiteralExpression",e[e.PropertyAccessExpression=208]="PropertyAccessExpression",e[e.ElementAccessExpression=209]="ElementAccessExpression",e[e.CallExpression=210]="CallExpression",e[e.NewExpression=211]="NewExpression",e[e.TaggedTemplateExpression=212]="TaggedTemplateExpression",e[e.TypeAssertionExpression=213]="TypeAssertionExpression",e[e.ParenthesizedExpression=214]="ParenthesizedExpression",e[e.FunctionExpression=215]="FunctionExpression",e[e.ArrowFunction=216]="ArrowFunction",e[e.DeleteExpression=217]="DeleteExpression",e[e.TypeOfExpression=218]="TypeOfExpression",e[e.VoidExpression=219]="VoidExpression",e[e.AwaitExpression=220]="AwaitExpression",e[e.PrefixUnaryExpression=221]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=222]="PostfixUnaryExpression",e[e.BinaryExpression=223]="BinaryExpression",e[e.ConditionalExpression=224]="ConditionalExpression",e[e.TemplateExpression=225]="TemplateExpression",e[e.YieldExpression=226]="YieldExpression",e[e.SpreadElement=227]="SpreadElement",e[e.ClassExpression=228]="ClassExpression",e[e.OmittedExpression=229]="OmittedExpression",e[e.ExpressionWithTypeArguments=230]="ExpressionWithTypeArguments",e[e.AsExpression=231]="AsExpression",e[e.NonNullExpression=232]="NonNullExpression",e[e.MetaProperty=233]="MetaProperty",e[e.SyntheticExpression=234]="SyntheticExpression",e[e.SatisfiesExpression=235]="SatisfiesExpression",e[e.TemplateSpan=236]="TemplateSpan",e[e.SemicolonClassElement=237]="SemicolonClassElement",e[e.Block=238]="Block",e[e.EmptyStatement=239]="EmptyStatement",e[e.VariableStatement=240]="VariableStatement",e[e.ExpressionStatement=241]="ExpressionStatement",e[e.IfStatement=242]="IfStatement",e[e.DoStatement=243]="DoStatement",e[e.WhileStatement=244]="WhileStatement",e[e.ForStatement=245]="ForStatement",e[e.ForInStatement=246]="ForInStatement",e[e.ForOfStatement=247]="ForOfStatement",e[e.ContinueStatement=248]="ContinueStatement",e[e.BreakStatement=249]="BreakStatement",e[e.ReturnStatement=250]="ReturnStatement",e[e.WithStatement=251]="WithStatement",e[e.SwitchStatement=252]="SwitchStatement",e[e.LabeledStatement=253]="LabeledStatement",e[e.ThrowStatement=254]="ThrowStatement",e[e.TryStatement=255]="TryStatement",e[e.DebuggerStatement=256]="DebuggerStatement",e[e.VariableDeclaration=257]="VariableDeclaration",e[e.VariableDeclarationList=258]="VariableDeclarationList",e[e.FunctionDeclaration=259]="FunctionDeclaration",e[e.ClassDeclaration=260]="ClassDeclaration",e[e.InterfaceDeclaration=261]="InterfaceDeclaration",e[e.TypeAliasDeclaration=262]="TypeAliasDeclaration",e[e.EnumDeclaration=263]="EnumDeclaration",e[e.ModuleDeclaration=264]="ModuleDeclaration",e[e.ModuleBlock=265]="ModuleBlock",e[e.CaseBlock=266]="CaseBlock",e[e.NamespaceExportDeclaration=267]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=268]="ImportEqualsDeclaration",e[e.ImportDeclaration=269]="ImportDeclaration",e[e.ImportClause=270]="ImportClause",e[e.NamespaceImport=271]="NamespaceImport",e[e.NamedImports=272]="NamedImports",e[e.ImportSpecifier=273]="ImportSpecifier",e[e.ExportAssignment=274]="ExportAssignment",e[e.ExportDeclaration=275]="ExportDeclaration",e[e.NamedExports=276]="NamedExports",e[e.NamespaceExport=277]="NamespaceExport",e[e.ExportSpecifier=278]="ExportSpecifier",e[e.MissingDeclaration=279]="MissingDeclaration",e[e.ExternalModuleReference=280]="ExternalModuleReference",e[e.JsxElement=281]="JsxElement",e[e.JsxSelfClosingElement=282]="JsxSelfClosingElement",e[e.JsxOpeningElement=283]="JsxOpeningElement",e[e.JsxClosingElement=284]="JsxClosingElement",e[e.JsxFragment=285]="JsxFragment",e[e.JsxOpeningFragment=286]="JsxOpeningFragment",e[e.JsxClosingFragment=287]="JsxClosingFragment",e[e.JsxAttribute=288]="JsxAttribute",e[e.JsxAttributes=289]="JsxAttributes",e[e.JsxSpreadAttribute=290]="JsxSpreadAttribute",e[e.JsxExpression=291]="JsxExpression",e[e.CaseClause=292]="CaseClause",e[e.DefaultClause=293]="DefaultClause",e[e.HeritageClause=294]="HeritageClause",e[e.CatchClause=295]="CatchClause",e[e.AssertClause=296]="AssertClause",e[e.AssertEntry=297]="AssertEntry",e[e.ImportTypeAssertionContainer=298]="ImportTypeAssertionContainer",e[e.PropertyAssignment=299]="PropertyAssignment",e[e.ShorthandPropertyAssignment=300]="ShorthandPropertyAssignment",e[e.SpreadAssignment=301]="SpreadAssignment",e[e.EnumMember=302]="EnumMember",e[e.UnparsedPrologue=303]="UnparsedPrologue",e[e.UnparsedPrepend=304]="UnparsedPrepend",e[e.UnparsedText=305]="UnparsedText",e[e.UnparsedInternalText=306]="UnparsedInternalText",e[e.UnparsedSyntheticReference=307]="UnparsedSyntheticReference",e[e.SourceFile=308]="SourceFile",e[e.Bundle=309]="Bundle",e[e.UnparsedSource=310]="UnparsedSource",e[e.InputFiles=311]="InputFiles",e[e.JSDocTypeExpression=312]="JSDocTypeExpression",e[e.JSDocNameReference=313]="JSDocNameReference",e[e.JSDocMemberName=314]="JSDocMemberName",e[e.JSDocAllType=315]="JSDocAllType",e[e.JSDocUnknownType=316]="JSDocUnknownType",e[e.JSDocNullableType=317]="JSDocNullableType",e[e.JSDocNonNullableType=318]="JSDocNonNullableType",e[e.JSDocOptionalType=319]="JSDocOptionalType",e[e.JSDocFunctionType=320]="JSDocFunctionType",e[e.JSDocVariadicType=321]="JSDocVariadicType",e[e.JSDocNamepathType=322]="JSDocNamepathType",e[e.JSDoc=323]="JSDoc",e[e.JSDocComment=323]="JSDocComment",e[e.JSDocText=324]="JSDocText",e[e.JSDocTypeLiteral=325]="JSDocTypeLiteral",e[e.JSDocSignature=326]="JSDocSignature",e[e.JSDocLink=327]="JSDocLink",e[e.JSDocLinkCode=328]="JSDocLinkCode",e[e.JSDocLinkPlain=329]="JSDocLinkPlain",e[e.JSDocTag=330]="JSDocTag",e[e.JSDocAugmentsTag=331]="JSDocAugmentsTag",e[e.JSDocImplementsTag=332]="JSDocImplementsTag",e[e.JSDocAuthorTag=333]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=334]="JSDocDeprecatedTag",e[e.JSDocClassTag=335]="JSDocClassTag",e[e.JSDocPublicTag=336]="JSDocPublicTag",e[e.JSDocPrivateTag=337]="JSDocPrivateTag",e[e.JSDocProtectedTag=338]="JSDocProtectedTag",e[e.JSDocReadonlyTag=339]="JSDocReadonlyTag",e[e.JSDocOverrideTag=340]="JSDocOverrideTag",e[e.JSDocCallbackTag=341]="JSDocCallbackTag",e[e.JSDocOverloadTag=342]="JSDocOverloadTag",e[e.JSDocEnumTag=343]="JSDocEnumTag",e[e.JSDocParameterTag=344]="JSDocParameterTag",e[e.JSDocReturnTag=345]="JSDocReturnTag",e[e.JSDocThisTag=346]="JSDocThisTag",e[e.JSDocTypeTag=347]="JSDocTypeTag",e[e.JSDocTemplateTag=348]="JSDocTemplateTag",e[e.JSDocTypedefTag=349]="JSDocTypedefTag",e[e.JSDocSeeTag=350]="JSDocSeeTag",e[e.JSDocPropertyTag=351]="JSDocPropertyTag",e[e.JSDocThrowsTag=352]="JSDocThrowsTag",e[e.JSDocSatisfiesTag=353]="JSDocSatisfiesTag",e[e.SyntaxList=354]="SyntaxList",e[e.NotEmittedStatement=355]="NotEmittedStatement",e[e.PartiallyEmittedExpression=356]="PartiallyEmittedExpression",e[e.CommaListExpression=357]="CommaListExpression",e[e.MergeDeclarationMarker=358]="MergeDeclarationMarker",e[e.EndOfDeclarationMarker=359]="EndOfDeclarationMarker",e[e.SyntheticReferenceExpression=360]="SyntheticReferenceExpression",e[e.Count=361]="Count",e[e.FirstAssignment=63]="FirstAssignment",e[e.LastAssignment=78]="LastAssignment",e[e.FirstCompoundAssignment=64]="FirstCompoundAssignment",e[e.LastCompoundAssignment=78]="LastCompoundAssignment",e[e.FirstReservedWord=81]="FirstReservedWord",e[e.LastReservedWord=116]="LastReservedWord",e[e.FirstKeyword=81]="FirstKeyword",e[e.LastKeyword=162]="LastKeyword",e[e.FirstFutureReservedWord=117]="FirstFutureReservedWord",e[e.LastFutureReservedWord=125]="LastFutureReservedWord",e[e.FirstTypeNode=179]="FirstTypeNode",e[e.LastTypeNode=202]="LastTypeNode",e[e.FirstPunctuation=18]="FirstPunctuation",e[e.LastPunctuation=78]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=162]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=8]="FirstLiteralToken",e[e.LastLiteralToken=14]="LastLiteralToken",e[e.FirstTemplateToken=14]="FirstTemplateToken",e[e.LastTemplateToken=17]="LastTemplateToken",e[e.FirstBinaryOperator=29]="FirstBinaryOperator",e[e.LastBinaryOperator=78]="LastBinaryOperator",e[e.FirstStatement=240]="FirstStatement",e[e.LastStatement=256]="LastStatement",e[e.FirstNode=163]="FirstNode",e[e.FirstJSDocNode=312]="FirstJSDocNode",e[e.LastJSDocNode=353]="LastJSDocNode",e[e.FirstJSDocTagNode=330]="FirstJSDocTagNode",e[e.LastJSDocTagNode=353]="LastJSDocTagNode",e[e.FirstContextualKeyword=126]="FirstContextualKeyword",e[e.LastContextualKeyword=162]="LastContextualKeyword",e))(Np||{}),Op=(e=>(e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.NestedNamespace=4]="NestedNamespace",e[e.Synthesized=8]="Synthesized",e[e.Namespace=16]="Namespace",e[e.OptionalChain=32]="OptionalChain",e[e.ExportContext=64]="ExportContext",e[e.ContainsThis=128]="ContainsThis",e[e.HasImplicitReturn=256]="HasImplicitReturn",e[e.HasExplicitReturn=512]="HasExplicitReturn",e[e.GlobalAugmentation=1024]="GlobalAugmentation",e[e.HasAsyncFunctions=2048]="HasAsyncFunctions",e[e.DisallowInContext=4096]="DisallowInContext",e[e.YieldContext=8192]="YieldContext",e[e.DecoratorContext=16384]="DecoratorContext",e[e.AwaitContext=32768]="AwaitContext",e[e.DisallowConditionalTypesContext=65536]="DisallowConditionalTypesContext",e[e.ThisNodeHasError=131072]="ThisNodeHasError",e[e.JavaScriptFile=262144]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=524288]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=1048576]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=2097152]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=4194304]="PossiblyContainsImportMeta",e[e.JSDoc=8388608]="JSDoc",e[e.Ambient=16777216]="Ambient",e[e.InWithStatement=33554432]="InWithStatement",e[e.JsonFile=67108864]="JsonFile",e[e.TypeCached=134217728]="TypeCached",e[e.Deprecated=268435456]="Deprecated",e[e.BlockScoped=3]="BlockScoped",e[e.ReachabilityCheckFlags=768]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=2816]="ReachabilityAndEmitFlags",e[e.ContextFlags=50720768]="ContextFlags",e[e.TypeExcludesFlags=40960]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=6291456]="PermanentlySetIncrementalFlags",e[e.IdentifierHasExtendedUnicodeEscape=128]="IdentifierHasExtendedUnicodeEscape",e[e.IdentifierIsInJSDocNamespace=2048]="IdentifierIsInJSDocNamespace",e))(Op||{}),Mp=(e=>(e[e.None=0]="None",e[e.Export=1]="Export",e[e.Ambient=2]="Ambient",e[e.Public=4]="Public",e[e.Private=8]="Private",e[e.Protected=16]="Protected",e[e.Static=32]="Static",e[e.Readonly=64]="Readonly",e[e.Accessor=128]="Accessor",e[e.Abstract=256]="Abstract",e[e.Async=512]="Async",e[e.Default=1024]="Default",e[e.Const=2048]="Const",e[e.HasComputedJSDocModifiers=4096]="HasComputedJSDocModifiers",e[e.Deprecated=8192]="Deprecated",e[e.Override=16384]="Override",e[e.In=32768]="In",e[e.Out=65536]="Out",e[e.Decorator=131072]="Decorator",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=28]="AccessibilityModifier",e[e.ParameterPropertyModifier=16476]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=24]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=117086]="TypeScriptModifier",e[e.ExportDefault=1025]="ExportDefault",e[e.All=258047]="All",e[e.Modifier=126975]="Modifier",e))(Mp||{}),tg=(e=>(e[e.None=0]="None",e[e.IntrinsicNamedElement=1]="IntrinsicNamedElement",e[e.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",e[e.IntrinsicElement=3]="IntrinsicElement",e))(tg||{}),Lp=(e=>(e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.Reported=4]="Reported",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e))(Lp||{}),rg=(e=>(e[e.None=0]="None",e[e.Auto=1]="Auto",e[e.Loop=2]="Loop",e[e.Unique=3]="Unique",e[e.Node=4]="Node",e[e.KindMask=7]="KindMask",e[e.ReservedInNestedScopes=8]="ReservedInNestedScopes",e[e.Optimistic=16]="Optimistic",e[e.FileLevel=32]="FileLevel",e[e.AllowNameSubstitution=64]="AllowNameSubstitution",e))(rg||{}),ng=(e=>(e[e.None=0]="None",e[e.PrecedingLineBreak=1]="PrecedingLineBreak",e[e.PrecedingJSDocComment=2]="PrecedingJSDocComment",e[e.Unterminated=4]="Unterminated",e[e.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",e[e.Scientific=16]="Scientific",e[e.Octal=32]="Octal",e[e.HexSpecifier=64]="HexSpecifier",e[e.BinarySpecifier=128]="BinarySpecifier",e[e.OctalSpecifier=256]="OctalSpecifier",e[e.ContainsSeparator=512]="ContainsSeparator",e[e.UnicodeEscape=1024]="UnicodeEscape",e[e.ContainsInvalidEscape=2048]="ContainsInvalidEscape",e[e.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",e[e.NumericLiteralFlags=1008]="NumericLiteralFlags",e[e.TemplateLiteralLikeFlags=2048]="TemplateLiteralLikeFlags",e))(ng||{}),il=(e=>(e[e.Unreachable=1]="Unreachable",e[e.Start=2]="Start",e[e.BranchLabel=4]="BranchLabel",e[e.LoopLabel=8]="LoopLabel",e[e.Assignment=16]="Assignment",e[e.TrueCondition=32]="TrueCondition",e[e.FalseCondition=64]="FalseCondition",e[e.SwitchClause=128]="SwitchClause",e[e.ArrayMutation=256]="ArrayMutation",e[e.Call=512]="Call",e[e.ReduceLabel=1024]="ReduceLabel",e[e.Referenced=2048]="Referenced",e[e.Shared=4096]="Shared",e[e.Label=12]="Label",e[e.Condition=96]="Condition",e))(il||{}),ig=(e=>(e[e.ExpectError=0]="ExpectError",e[e.Ignore=1]="Ignore",e))(ig||{}),Rp=class{},ag=(e=>(e[e.RootFile=0]="RootFile",e[e.SourceFromProjectReference=1]="SourceFromProjectReference",e[e.OutputFromProjectReference=2]="OutputFromProjectReference",e[e.Import=3]="Import",e[e.ReferenceFile=4]="ReferenceFile",e[e.TypeReferenceDirective=5]="TypeReferenceDirective",e[e.LibFile=6]="LibFile",e[e.LibReferenceDirective=7]="LibReferenceDirective",e[e.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",e))(ag||{}),sg=(e=>(e[e.FilePreprocessingReferencedDiagnostic=0]="FilePreprocessingReferencedDiagnostic",e[e.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",e[e.ResolutionDiagnostics=2]="ResolutionDiagnostics",e))(sg||{}),og=(e=>(e[e.Js=0]="Js",e[e.Dts=1]="Dts",e))(og||{}),_g=(e=>(e[e.Not=0]="Not",e[e.SafeModules=1]="SafeModules",e[e.Completely=2]="Completely",e))(_g||{}),cg=(e=>(e[e.Success=0]="Success",e[e.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",e[e.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",e[e.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",e[e.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",e))(cg||{}),lg=(e=>(e[e.Ok=0]="Ok",e[e.NeedsOverride=1]="NeedsOverride",e[e.HasInvalidOverride=2]="HasInvalidOverride",e))(lg||{}),ug=(e=>(e[e.None=0]="None",e[e.Literal=1]="Literal",e[e.Subtype=2]="Subtype",e))(ug||{}),pg=(e=>(e[e.None=0]="None",e[e.Signature=1]="Signature",e[e.NoConstraints=2]="NoConstraints",e[e.Completions=4]="Completions",e[e.SkipBindingPatterns=8]="SkipBindingPatterns",e))(pg||{}),fg=(e=>(e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.OmitThisParameter=33554432]="OmitThisParameter",e[e.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",e[e.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",e[e.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",e[e.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",e[e.AllowEmptyTuple=524288]="AllowEmptyTuple",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",e[e.WriteComputedProps=1073741824]="WriteComputedProps",e[e.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",e[e.DoNotIncludeSymbolChain=134217728]="DoNotIncludeSymbolChain",e[e.IgnoreErrors=70221824]="IgnoreErrors",e[e.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.InInitialEntityName=16777216]="InInitialEntityName",e))(fg||{}),dg=(e=>(e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.OmitThisParameter=33554432]="OmitThisParameter",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AddUndefined=131072]="AddUndefined",e[e.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",e[e.InArrayType=524288]="InArrayType",e[e.InElementType=2097152]="InElementType",e[e.InFirstTypeArgument=4194304]="InFirstTypeArgument",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.NodeBuilderFlagsMask=848330091]="NodeBuilderFlagsMask",e))(dg||{}),mg=(e=>(e[e.None=0]="None",e[e.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",e[e.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",e[e.AllowAnyNodeKind=4]="AllowAnyNodeKind",e[e.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",e[e.WriteComputedProps=16]="WriteComputedProps",e[e.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",e))(mg||{}),hg=(e=>(e[e.Accessible=0]="Accessible",e[e.NotAccessible=1]="NotAccessible",e[e.CannotBeNamed=2]="CannotBeNamed",e))(hg||{}),gg=(e=>(e[e.UnionOrIntersection=0]="UnionOrIntersection",e[e.Spread=1]="Spread",e))(gg||{}),yg=(e=>(e[e.This=0]="This",e[e.Identifier=1]="Identifier",e[e.AssertsThis=2]="AssertsThis",e[e.AssertsIdentifier=3]="AssertsIdentifier",e))(yg||{}),vg=(e=>(e[e.Unknown=0]="Unknown",e[e.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",e[e.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",e[e.NumberLikeType=3]="NumberLikeType",e[e.BigIntLikeType=4]="BigIntLikeType",e[e.StringLikeType=5]="StringLikeType",e[e.BooleanType=6]="BooleanType",e[e.ArrayLikeType=7]="ArrayLikeType",e[e.ESSymbolType=8]="ESSymbolType",e[e.Promise=9]="Promise",e[e.TypeWithCallSignature=10]="TypeWithCallSignature",e[e.ObjectType=11]="ObjectType",e))(vg||{}),jp=(e=>(e[e.None=0]="None",e[e.FunctionScopedVariable=1]="FunctionScopedVariable",e[e.BlockScopedVariable=2]="BlockScopedVariable",e[e.Property=4]="Property",e[e.EnumMember=8]="EnumMember",e[e.Function=16]="Function",e[e.Class=32]="Class",e[e.Interface=64]="Interface",e[e.ConstEnum=128]="ConstEnum",e[e.RegularEnum=256]="RegularEnum",e[e.ValueModule=512]="ValueModule",e[e.NamespaceModule=1024]="NamespaceModule",e[e.TypeLiteral=2048]="TypeLiteral",e[e.ObjectLiteral=4096]="ObjectLiteral",e[e.Method=8192]="Method",e[e.Constructor=16384]="Constructor",e[e.GetAccessor=32768]="GetAccessor",e[e.SetAccessor=65536]="SetAccessor",e[e.Signature=131072]="Signature",e[e.TypeParameter=262144]="TypeParameter",e[e.TypeAlias=524288]="TypeAlias",e[e.ExportValue=1048576]="ExportValue",e[e.Alias=2097152]="Alias",e[e.Prototype=4194304]="Prototype",e[e.ExportStar=8388608]="ExportStar",e[e.Optional=16777216]="Optional",e[e.Transient=33554432]="Transient",e[e.Assignment=67108864]="Assignment",e[e.ModuleExports=134217728]="ModuleExports",e[e.All=67108863]="All",e[e.Enum=384]="Enum",e[e.Variable=3]="Variable",e[e.Value=111551]="Value",e[e.Type=788968]="Type",e[e.Namespace=1920]="Namespace",e[e.Module=1536]="Module",e[e.Accessor=98304]="Accessor",e[e.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",e[e.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",e[e.ParameterExcludes=111551]="ParameterExcludes",e[e.PropertyExcludes=0]="PropertyExcludes",e[e.EnumMemberExcludes=900095]="EnumMemberExcludes",e[e.FunctionExcludes=110991]="FunctionExcludes",e[e.ClassExcludes=899503]="ClassExcludes",e[e.InterfaceExcludes=788872]="InterfaceExcludes",e[e.RegularEnumExcludes=899327]="RegularEnumExcludes",e[e.ConstEnumExcludes=899967]="ConstEnumExcludes",e[e.ValueModuleExcludes=110735]="ValueModuleExcludes",e[e.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",e[e.MethodExcludes=103359]="MethodExcludes",e[e.GetAccessorExcludes=46015]="GetAccessorExcludes",e[e.SetAccessorExcludes=78783]="SetAccessorExcludes",e[e.AccessorExcludes=13247]="AccessorExcludes",e[e.TypeParameterExcludes=526824]="TypeParameterExcludes",e[e.TypeAliasExcludes=788968]="TypeAliasExcludes",e[e.AliasExcludes=2097152]="AliasExcludes",e[e.ModuleMember=2623475]="ModuleMember",e[e.ExportHasLocal=944]="ExportHasLocal",e[e.BlockScoped=418]="BlockScoped",e[e.PropertyOrAccessor=98308]="PropertyOrAccessor",e[e.ClassMember=106500]="ClassMember",e[e.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",e[e.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",e[e.Classifiable=2885600]="Classifiable",e[e.LateBindingContainer=6256]="LateBindingContainer",e))(jp||{}),bg=(e=>(e[e.Numeric=0]="Numeric",e[e.Literal=1]="Literal",e))(bg||{}),Tg=(e=>(e[e.None=0]="None",e[e.Instantiated=1]="Instantiated",e[e.SyntheticProperty=2]="SyntheticProperty",e[e.SyntheticMethod=4]="SyntheticMethod",e[e.Readonly=8]="Readonly",e[e.ReadPartial=16]="ReadPartial",e[e.WritePartial=32]="WritePartial",e[e.HasNonUniformType=64]="HasNonUniformType",e[e.HasLiteralType=128]="HasLiteralType",e[e.ContainsPublic=256]="ContainsPublic",e[e.ContainsProtected=512]="ContainsProtected",e[e.ContainsPrivate=1024]="ContainsPrivate",e[e.ContainsStatic=2048]="ContainsStatic",e[e.Late=4096]="Late",e[e.ReverseMapped=8192]="ReverseMapped",e[e.OptionalParameter=16384]="OptionalParameter",e[e.RestParameter=32768]="RestParameter",e[e.DeferredType=65536]="DeferredType",e[e.HasNeverType=131072]="HasNeverType",e[e.Mapped=262144]="Mapped",e[e.StripOptional=524288]="StripOptional",e[e.Unresolved=1048576]="Unresolved",e[e.Synthetic=6]="Synthetic",e[e.Discriminant=192]="Discriminant",e[e.Partial=48]="Partial",e))(Tg||{}),Sg=(e=>(e.Call="__call",e.Constructor="__constructor",e.New="__new",e.Index="__index",e.ExportStar="__export",e.Global="__global",e.Missing="__missing",e.Type="__type",e.Object="__object",e.JSXAttributes="__jsxAttributes",e.Class="__class",e.Function="__function",e.Computed="__computed",e.Resolving="__resolving__",e.ExportEquals="export=",e.Default="default",e.This="this",e))(Sg||{}),xg=(e=>(e[e.None=0]="None",e[e.TypeChecked=1]="TypeChecked",e[e.LexicalThis=2]="LexicalThis",e[e.CaptureThis=4]="CaptureThis",e[e.CaptureNewTarget=8]="CaptureNewTarget",e[e.SuperInstance=16]="SuperInstance",e[e.SuperStatic=32]="SuperStatic",e[e.ContextChecked=64]="ContextChecked",e[e.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",e[e.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",e[e.CaptureArguments=512]="CaptureArguments",e[e.EnumValuesComputed=1024]="EnumValuesComputed",e[e.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",e[e.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",e[e.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",e[e.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",e[e.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",e[e.ClassWithBodyScopedClassBinding=65536]="ClassWithBodyScopedClassBinding",e[e.BodyScopedClassBinding=131072]="BodyScopedClassBinding",e[e.NeedsLoopOutParameter=262144]="NeedsLoopOutParameter",e[e.AssignmentsMarked=524288]="AssignmentsMarked",e[e.ClassWithConstructorReference=1048576]="ClassWithConstructorReference",e[e.ConstructorReferenceInClass=2097152]="ConstructorReferenceInClass",e[e.ContainsClassWithPrivateIdentifiers=4194304]="ContainsClassWithPrivateIdentifiers",e[e.ContainsSuperPropertyInStaticInitializer=8388608]="ContainsSuperPropertyInStaticInitializer",e[e.InCheckIdentifier=16777216]="InCheckIdentifier",e))(xg||{}),Jp=(e=>(e[e.Any=1]="Any",e[e.Unknown=2]="Unknown",e[e.String=4]="String",e[e.Number=8]="Number",e[e.Boolean=16]="Boolean",e[e.Enum=32]="Enum",e[e.BigInt=64]="BigInt",e[e.StringLiteral=128]="StringLiteral",e[e.NumberLiteral=256]="NumberLiteral",e[e.BooleanLiteral=512]="BooleanLiteral",e[e.EnumLiteral=1024]="EnumLiteral",e[e.BigIntLiteral=2048]="BigIntLiteral",e[e.ESSymbol=4096]="ESSymbol",e[e.UniqueESSymbol=8192]="UniqueESSymbol",e[e.Void=16384]="Void",e[e.Undefined=32768]="Undefined",e[e.Null=65536]="Null",e[e.Never=131072]="Never",e[e.TypeParameter=262144]="TypeParameter",e[e.Object=524288]="Object",e[e.Union=1048576]="Union",e[e.Intersection=2097152]="Intersection",e[e.Index=4194304]="Index",e[e.IndexedAccess=8388608]="IndexedAccess",e[e.Conditional=16777216]="Conditional",e[e.Substitution=33554432]="Substitution",e[e.NonPrimitive=67108864]="NonPrimitive",e[e.TemplateLiteral=134217728]="TemplateLiteral",e[e.StringMapping=268435456]="StringMapping",e[e.AnyOrUnknown=3]="AnyOrUnknown",e[e.Nullable=98304]="Nullable",e[e.Literal=2944]="Literal",e[e.Unit=109472]="Unit",e[e.Freshable=2976]="Freshable",e[e.StringOrNumberLiteral=384]="StringOrNumberLiteral",e[e.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",e[e.DefinitelyFalsy=117632]="DefinitelyFalsy",e[e.PossiblyFalsy=117724]="PossiblyFalsy",e[e.Intrinsic=67359327]="Intrinsic",e[e.Primitive=134348796]="Primitive",e[e.StringLike=402653316]="StringLike",e[e.NumberLike=296]="NumberLike",e[e.BigIntLike=2112]="BigIntLike",e[e.BooleanLike=528]="BooleanLike",e[e.EnumLike=1056]="EnumLike",e[e.ESSymbolLike=12288]="ESSymbolLike",e[e.VoidLike=49152]="VoidLike",e[e.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",e[e.DisjointDomains=469892092]="DisjointDomains",e[e.UnionOrIntersection=3145728]="UnionOrIntersection",e[e.StructuredType=3670016]="StructuredType",e[e.TypeVariable=8650752]="TypeVariable",e[e.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",e[e.InstantiablePrimitive=406847488]="InstantiablePrimitive",e[e.Instantiable=465829888]="Instantiable",e[e.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",e[e.ObjectFlagsType=3899393]="ObjectFlagsType",e[e.Simplifiable=25165824]="Simplifiable",e[e.Singleton=67358815]="Singleton",e[e.Narrowable=536624127]="Narrowable",e[e.IncludesMask=205258751]="IncludesMask",e[e.IncludesMissingType=262144]="IncludesMissingType",e[e.IncludesNonWideningType=4194304]="IncludesNonWideningType",e[e.IncludesWildcard=8388608]="IncludesWildcard",e[e.IncludesEmptyObject=16777216]="IncludesEmptyObject",e[e.IncludesInstantiable=33554432]="IncludesInstantiable",e[e.NotPrimitiveUnion=36323363]="NotPrimitiveUnion",e))(Jp||{}),Fp=(e=>(e[e.None=0]="None",e[e.Class=1]="Class",e[e.Interface=2]="Interface",e[e.Reference=4]="Reference",e[e.Tuple=8]="Tuple",e[e.Anonymous=16]="Anonymous",e[e.Mapped=32]="Mapped",e[e.Instantiated=64]="Instantiated",e[e.ObjectLiteral=128]="ObjectLiteral",e[e.EvolvingArray=256]="EvolvingArray",e[e.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",e[e.ReverseMapped=1024]="ReverseMapped",e[e.JsxAttributes=2048]="JsxAttributes",e[e.JSLiteral=4096]="JSLiteral",e[e.FreshLiteral=8192]="FreshLiteral",e[e.ArrayLiteral=16384]="ArrayLiteral",e[e.PrimitiveUnion=32768]="PrimitiveUnion",e[e.ContainsWideningType=65536]="ContainsWideningType",e[e.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",e[e.NonInferrableType=262144]="NonInferrableType",e[e.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",e[e.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",e[e.ClassOrInterface=3]="ClassOrInterface",e[e.RequiresWidening=196608]="RequiresWidening",e[e.PropagatingFlags=458752]="PropagatingFlags",e[e.ObjectTypeKindMask=1343]="ObjectTypeKindMask",e[e.ContainsSpread=2097152]="ContainsSpread",e[e.ObjectRestType=4194304]="ObjectRestType",e[e.InstantiationExpressionType=8388608]="InstantiationExpressionType",e[e.IsClassInstanceClone=16777216]="IsClassInstanceClone",e[e.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",e[e.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",e[e.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",e[e.IsGenericObjectType=4194304]="IsGenericObjectType",e[e.IsGenericIndexType=8388608]="IsGenericIndexType",e[e.IsGenericType=12582912]="IsGenericType",e[e.ContainsIntersections=16777216]="ContainsIntersections",e[e.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",e[e.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",e[e.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",e[e.IsNeverIntersection=33554432]="IsNeverIntersection",e))(Fp||{}),Eg=(e=>(e[e.Invariant=0]="Invariant",e[e.Covariant=1]="Covariant",e[e.Contravariant=2]="Contravariant",e[e.Bivariant=3]="Bivariant",e[e.Independent=4]="Independent",e[e.VarianceMask=7]="VarianceMask",e[e.Unmeasurable=8]="Unmeasurable",e[e.Unreliable=16]="Unreliable",e[e.AllowsStructuralFallback=24]="AllowsStructuralFallback",e))(Eg||{}),wg=(e=>(e[e.Required=1]="Required",e[e.Optional=2]="Optional",e[e.Rest=4]="Rest",e[e.Variadic=8]="Variadic",e[e.Fixed=3]="Fixed",e[e.Variable=12]="Variable",e[e.NonRequired=14]="NonRequired",e[e.NonRest=11]="NonRest",e))(wg||{}),Cg=(e=>(e[e.None=0]="None",e[e.IncludeUndefined=1]="IncludeUndefined",e[e.NoIndexSignatures=2]="NoIndexSignatures",e[e.Writing=4]="Writing",e[e.CacheSymbol=8]="CacheSymbol",e[e.NoTupleBoundsCheck=16]="NoTupleBoundsCheck",e[e.ExpressionPosition=32]="ExpressionPosition",e[e.ReportDeprecated=64]="ReportDeprecated",e[e.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",e[e.Contextual=256]="Contextual",e[e.Persistent=1]="Persistent",e))(Cg||{}),Ag=(e=>(e[e.Component=0]="Component",e[e.Function=1]="Function",e[e.Mixed=2]="Mixed",e))(Ag||{}),Pg=(e=>(e[e.Call=0]="Call",e[e.Construct=1]="Construct",e))(Pg||{}),Bp=(e=>(e[e.None=0]="None",e[e.HasRestParameter=1]="HasRestParameter",e[e.HasLiteralTypes=2]="HasLiteralTypes",e[e.Abstract=4]="Abstract",e[e.IsInnerCallChain=8]="IsInnerCallChain",e[e.IsOuterCallChain=16]="IsOuterCallChain",e[e.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",e[e.PropagatingFlags=39]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags",e))(Bp||{}),Dg=(e=>(e[e.String=0]="String",e[e.Number=1]="Number",e))(Dg||{}),kg=(e=>(e[e.Simple=0]="Simple",e[e.Array=1]="Array",e[e.Deferred=2]="Deferred",e[e.Function=3]="Function",e[e.Composite=4]="Composite",e[e.Merged=5]="Merged",e))(kg||{}),Ig=(e=>(e[e.None=0]="None",e[e.NakedTypeVariable=1]="NakedTypeVariable",e[e.SpeculativeTuple=2]="SpeculativeTuple",e[e.SubstituteSource=4]="SubstituteSource",e[e.HomomorphicMappedType=8]="HomomorphicMappedType",e[e.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",e[e.MappedTypeConstraint=32]="MappedTypeConstraint",e[e.ContravariantConditional=64]="ContravariantConditional",e[e.ReturnType=128]="ReturnType",e[e.LiteralKeyof=256]="LiteralKeyof",e[e.NoConstraints=512]="NoConstraints",e[e.AlwaysStrict=1024]="AlwaysStrict",e[e.MaxValue=2048]="MaxValue",e[e.PriorityImpliesCombination=416]="PriorityImpliesCombination",e[e.Circularity=-1]="Circularity",e))(Ig||{}),Ng=(e=>(e[e.None=0]="None",e[e.NoDefault=1]="NoDefault",e[e.AnyDefault=2]="AnyDefault",e[e.SkippedGenericFunction=4]="SkippedGenericFunction",e))(Ng||{}),Og=(e=>(e[e.False=0]="False",e[e.Unknown=1]="Unknown",e[e.Maybe=3]="Maybe",e[e.True=-1]="True",e))(Og||{}),Mg=(e=>(e[e.None=0]="None",e[e.ExportsProperty=1]="ExportsProperty",e[e.ModuleExports=2]="ModuleExports",e[e.PrototypeProperty=3]="PrototypeProperty",e[e.ThisProperty=4]="ThisProperty",e[e.Property=5]="Property",e[e.Prototype=6]="Prototype",e[e.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",e[e.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",e[e.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",e))(Mg||{}),qp=(e=>(e[e.Warning=0]="Warning",e[e.Error=1]="Error",e[e.Suggestion=2]="Suggestion",e[e.Message=3]="Message",e))(qp||{}),Lg=(e=>(e[e.Classic=1]="Classic",e[e.NodeJs=2]="NodeJs",e[e.Node10=2]="Node10",e[e.Node16=3]="Node16",e[e.NodeNext=99]="NodeNext",e[e.Bundler=100]="Bundler",e))(Lg||{}),Rg=(e=>(e[e.Legacy=1]="Legacy",e[e.Auto=2]="Auto",e[e.Force=3]="Force",e))(Rg||{}),jg=(e=>(e[e.FixedPollingInterval=0]="FixedPollingInterval",e[e.PriorityPollingInterval=1]="PriorityPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.FixedChunkSizePolling=3]="FixedChunkSizePolling",e[e.UseFsEvents=4]="UseFsEvents",e[e.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",e))(jg||{}),Jg=(e=>(e[e.UseFsEvents=0]="UseFsEvents",e[e.FixedPollingInterval=1]="FixedPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.FixedChunkSizePolling=3]="FixedChunkSizePolling",e))(Jg||{}),Fg=(e=>(e[e.FixedInterval=0]="FixedInterval",e[e.PriorityInterval=1]="PriorityInterval",e[e.DynamicPriority=2]="DynamicPriority",e[e.FixedChunkSize=3]="FixedChunkSize",e))(Fg||{}),Bg=(e=>(e[e.None=0]="None",e[e.CommonJS=1]="CommonJS",e[e.AMD=2]="AMD",e[e.UMD=3]="UMD",e[e.System=4]="System",e[e.ES2015=5]="ES2015",e[e.ES2020=6]="ES2020",e[e.ES2022=7]="ES2022",e[e.ESNext=99]="ESNext",e[e.Node16=100]="Node16",e[e.NodeNext=199]="NodeNext",e))(Bg||{}),qg=(e=>(e[e.None=0]="None",e[e.Preserve=1]="Preserve",e[e.React=2]="React",e[e.ReactNative=3]="ReactNative",e[e.ReactJSX=4]="ReactJSX",e[e.ReactJSXDev=5]="ReactJSXDev",e))(qg||{}),Ug=(e=>(e[e.Remove=0]="Remove",e[e.Preserve=1]="Preserve",e[e.Error=2]="Error",e))(Ug||{}),zg=(e=>(e[e.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",e[e.LineFeed=1]="LineFeed",e))(zg||{}),Wg=(e=>(e[e.Unknown=0]="Unknown",e[e.JS=1]="JS",e[e.JSX=2]="JSX",e[e.TS=3]="TS",e[e.TSX=4]="TSX",e[e.External=5]="External",e[e.JSON=6]="JSON",e[e.Deferred=7]="Deferred",e))(Wg||{}),Vg=(e=>(e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ES2021=8]="ES2021",e[e.ES2022=9]="ES2022",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(Vg||{}),Hg=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(Hg||{}),Gg=(e=>(e[e.None=0]="None",e[e.Recursive=1]="Recursive",e))(Gg||{}),$g=(e=>(e[e.nullCharacter=0]="nullCharacter",e[e.maxAsciiCharacter=127]="maxAsciiCharacter",e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.lineSeparator=8232]="lineSeparator",e[e.paragraphSeparator=8233]="paragraphSeparator",e[e.nextLine=133]="nextLine",e[e.space=32]="space",e[e.nonBreakingSpace=160]="nonBreakingSpace",e[e.enQuad=8192]="enQuad",e[e.emQuad=8193]="emQuad",e[e.enSpace=8194]="enSpace",e[e.emSpace=8195]="emSpace",e[e.threePerEmSpace=8196]="threePerEmSpace",e[e.fourPerEmSpace=8197]="fourPerEmSpace",e[e.sixPerEmSpace=8198]="sixPerEmSpace",e[e.figureSpace=8199]="figureSpace",e[e.punctuationSpace=8200]="punctuationSpace",e[e.thinSpace=8201]="thinSpace",e[e.hairSpace=8202]="hairSpace",e[e.zeroWidthSpace=8203]="zeroWidthSpace",e[e.narrowNoBreakSpace=8239]="narrowNoBreakSpace",e[e.ideographicSpace=12288]="ideographicSpace",e[e.mathematicalSpace=8287]="mathematicalSpace",e[e.ogham=5760]="ogham",e[e._=95]="_",e[e.$=36]="$",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.ampersand=38]="ampersand",e[e.asterisk=42]="asterisk",e[e.at=64]="at",e[e.backslash=92]="backslash",e[e.backtick=96]="backtick",e[e.bar=124]="bar",e[e.caret=94]="caret",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.closeParen=41]="closeParen",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.equals=61]="equals",e[e.exclamation=33]="exclamation",e[e.greaterThan=62]="greaterThan",e[e.hash=35]="hash",e[e.lessThan=60]="lessThan",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.openParen=40]="openParen",e[e.percent=37]="percent",e[e.plus=43]="plus",e[e.question=63]="question",e[e.semicolon=59]="semicolon",e[e.singleQuote=39]="singleQuote",e[e.slash=47]="slash",e[e.tilde=126]="tilde",e[e.backspace=8]="backspace",e[e.formFeed=12]="formFeed",e[e.byteOrderMark=65279]="byteOrderMark",e[e.tab=9]="tab",e[e.verticalTab=11]="verticalTab",e))($g||{}),Kg=(e=>(e.Ts=".ts",e.Tsx=".tsx",e.Dts=".d.ts",e.Js=".js",e.Jsx=".jsx",e.Json=".json",e.TsBuildInfo=".tsbuildinfo",e.Mjs=".mjs",e.Mts=".mts",e.Dmts=".d.mts",e.Cjs=".cjs",e.Cts=".cts",e.Dcts=".d.cts",e))(Kg||{}),Up=(e=>(e[e.None=0]="None",e[e.ContainsTypeScript=1]="ContainsTypeScript",e[e.ContainsJsx=2]="ContainsJsx",e[e.ContainsESNext=4]="ContainsESNext",e[e.ContainsES2022=8]="ContainsES2022",e[e.ContainsES2021=16]="ContainsES2021",e[e.ContainsES2020=32]="ContainsES2020",e[e.ContainsES2019=64]="ContainsES2019",e[e.ContainsES2018=128]="ContainsES2018",e[e.ContainsES2017=256]="ContainsES2017",e[e.ContainsES2016=512]="ContainsES2016",e[e.ContainsES2015=1024]="ContainsES2015",e[e.ContainsGenerator=2048]="ContainsGenerator",e[e.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",e[e.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",e[e.ContainsLexicalThis=16384]="ContainsLexicalThis",e[e.ContainsRestOrSpread=32768]="ContainsRestOrSpread",e[e.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",e[e.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",e[e.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",e[e.ContainsBindingPattern=524288]="ContainsBindingPattern",e[e.ContainsYield=1048576]="ContainsYield",e[e.ContainsAwait=2097152]="ContainsAwait",e[e.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",e[e.ContainsDynamicImport=8388608]="ContainsDynamicImport",e[e.ContainsClassFields=16777216]="ContainsClassFields",e[e.ContainsDecorators=33554432]="ContainsDecorators",e[e.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",e[e.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",e[e.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",e[e.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",e[e.HasComputedFlags=-2147483648]="HasComputedFlags",e[e.AssertTypeScript=1]="AssertTypeScript",e[e.AssertJsx=2]="AssertJsx",e[e.AssertESNext=4]="AssertESNext",e[e.AssertES2022=8]="AssertES2022",e[e.AssertES2021=16]="AssertES2021",e[e.AssertES2020=32]="AssertES2020",e[e.AssertES2019=64]="AssertES2019",e[e.AssertES2018=128]="AssertES2018",e[e.AssertES2017=256]="AssertES2017",e[e.AssertES2016=512]="AssertES2016",e[e.AssertES2015=1024]="AssertES2015",e[e.AssertGenerator=2048]="AssertGenerator",e[e.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",e[e.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",e[e.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",e[e.NodeExcludes=-2147483648]="NodeExcludes",e[e.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",e[e.FunctionExcludes=-1937940480]="FunctionExcludes",e[e.ConstructorExcludes=-1937948672]="ConstructorExcludes",e[e.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",e[e.PropertyExcludes=-2013249536]="PropertyExcludes",e[e.ClassExcludes=-2147344384]="ClassExcludes",e[e.ModuleExcludes=-1941676032]="ModuleExcludes",e[e.TypeExcludes=-2]="TypeExcludes",e[e.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",e[e.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",e[e.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",e[e.ParameterExcludes=-2147483648]="ParameterExcludes",e[e.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",e[e.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",e[e.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",e[e.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",e))(Up||{}),zp=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(zp||{}),Wp=(e=>(e[e.None=0]="None",e[e.SingleLine=1]="SingleLine",e[e.MultiLine=2]="MultiLine",e[e.AdviseOnEmitNode=4]="AdviseOnEmitNode",e[e.NoSubstitution=8]="NoSubstitution",e[e.CapturesThis=16]="CapturesThis",e[e.NoLeadingSourceMap=32]="NoLeadingSourceMap",e[e.NoTrailingSourceMap=64]="NoTrailingSourceMap",e[e.NoSourceMap=96]="NoSourceMap",e[e.NoNestedSourceMaps=128]="NoNestedSourceMaps",e[e.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",e[e.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",e[e.NoTokenSourceMaps=768]="NoTokenSourceMaps",e[e.NoLeadingComments=1024]="NoLeadingComments",e[e.NoTrailingComments=2048]="NoTrailingComments",e[e.NoComments=3072]="NoComments",e[e.NoNestedComments=4096]="NoNestedComments",e[e.HelperName=8192]="HelperName",e[e.ExportName=16384]="ExportName",e[e.LocalName=32768]="LocalName",e[e.InternalName=65536]="InternalName",e[e.Indented=131072]="Indented",e[e.NoIndentation=262144]="NoIndentation",e[e.AsyncFunctionBody=524288]="AsyncFunctionBody",e[e.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",e[e.CustomPrologue=2097152]="CustomPrologue",e[e.NoHoisting=4194304]="NoHoisting",e[e.HasEndOfDeclarationMarker=8388608]="HasEndOfDeclarationMarker",e[e.Iterator=16777216]="Iterator",e[e.NoAsciiEscaping=33554432]="NoAsciiEscaping",e))(Wp||{}),Xg=(e=>(e[e.None=0]="None",e[e.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",e[e.NeverApplyImportHelper=2]="NeverApplyImportHelper",e[e.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",e[e.Immutable=8]="Immutable",e[e.IndirectCall=16]="IndirectCall",e[e.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",e))(Xg||{}),Yg=(e=>(e[e.Extends=1]="Extends",e[e.Assign=2]="Assign",e[e.Rest=4]="Rest",e[e.Decorate=8]="Decorate",e[e.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",e[e.Metadata=16]="Metadata",e[e.Param=32]="Param",e[e.Awaiter=64]="Awaiter",e[e.Generator=128]="Generator",e[e.Values=256]="Values",e[e.Read=512]="Read",e[e.SpreadArray=1024]="SpreadArray",e[e.Await=2048]="Await",e[e.AsyncGenerator=4096]="AsyncGenerator",e[e.AsyncDelegator=8192]="AsyncDelegator",e[e.AsyncValues=16384]="AsyncValues",e[e.ExportStar=32768]="ExportStar",e[e.ImportStar=65536]="ImportStar",e[e.ImportDefault=131072]="ImportDefault",e[e.MakeTemplateObject=262144]="MakeTemplateObject",e[e.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",e[e.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",e[e.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",e[e.CreateBinding=4194304]="CreateBinding",e[e.SetFunctionName=8388608]="SetFunctionName",e[e.PropKey=16777216]="PropKey",e[e.FirstEmitHelper=1]="FirstEmitHelper",e[e.LastEmitHelper=16777216]="LastEmitHelper",e[e.ForOfIncludes=256]="ForOfIncludes",e[e.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",e[e.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",e[e.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",e[e.SpreadIncludes=1536]="SpreadIncludes",e))(Yg||{}),Qg=(e=>(e[e.SourceFile=0]="SourceFile",e[e.Expression=1]="Expression",e[e.IdentifierName=2]="IdentifierName",e[e.MappedTypeParameter=3]="MappedTypeParameter",e[e.Unspecified=4]="Unspecified",e[e.EmbeddedStatement=5]="EmbeddedStatement",e[e.JsxAttributeValue=6]="JsxAttributeValue",e))(Qg||{}),Zg=(e=>(e[e.Parentheses=1]="Parentheses",e[e.TypeAssertions=2]="TypeAssertions",e[e.NonNullAssertions=4]="NonNullAssertions",e[e.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",e[e.Assertions=6]="Assertions",e[e.All=15]="All",e[e.ExcludeJSDocTypeAssertion=16]="ExcludeJSDocTypeAssertion",e))(Zg||{}),ey=(e=>(e[e.None=0]="None",e[e.InParameters=1]="InParameters",e[e.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",e))(ey||{}),ty=(e=>(e.Prologue="prologue",e.EmitHelpers="emitHelpers",e.NoDefaultLib="no-default-lib",e.Reference="reference",e.Type="type",e.TypeResolutionModeRequire="type-require",e.TypeResolutionModeImport="type-import",e.Lib="lib",e.Prepend="prepend",e.Text="text",e.Internal="internal",e))(ty||{}),ry=(e=>(e[e.None=0]="None",e[e.SingleLine=0]="SingleLine",e[e.MultiLine=1]="MultiLine",e[e.PreserveLines=2]="PreserveLines",e[e.LinesMask=3]="LinesMask",e[e.NotDelimited=0]="NotDelimited",e[e.BarDelimited=4]="BarDelimited",e[e.AmpersandDelimited=8]="AmpersandDelimited",e[e.CommaDelimited=16]="CommaDelimited",e[e.AsteriskDelimited=32]="AsteriskDelimited",e[e.DelimitersMask=60]="DelimitersMask",e[e.AllowTrailingComma=64]="AllowTrailingComma",e[e.Indented=128]="Indented",e[e.SpaceBetweenBraces=256]="SpaceBetweenBraces",e[e.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",e[e.Braces=1024]="Braces",e[e.Parenthesis=2048]="Parenthesis",e[e.AngleBrackets=4096]="AngleBrackets",e[e.SquareBrackets=8192]="SquareBrackets",e[e.BracketsMask=15360]="BracketsMask",e[e.OptionalIfUndefined=16384]="OptionalIfUndefined",e[e.OptionalIfEmpty=32768]="OptionalIfEmpty",e[e.Optional=49152]="Optional",e[e.PreferNewLine=65536]="PreferNewLine",e[e.NoTrailingNewLine=131072]="NoTrailingNewLine",e[e.NoInterveningComments=262144]="NoInterveningComments",e[e.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",e[e.SingleElement=1048576]="SingleElement",e[e.SpaceAfterList=2097152]="SpaceAfterList",e[e.Modifiers=2359808]="Modifiers",e[e.HeritageClauses=512]="HeritageClauses",e[e.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",e[e.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",e[e.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",e[e.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",e[e.UnionTypeConstituents=516]="UnionTypeConstituents",e[e.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",e[e.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",e[e.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",e[e.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",e[e.ImportClauseEntries=526226]="ImportClauseEntries",e[e.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",e[e.CommaListElements=528]="CommaListElements",e[e.CallExpressionArguments=2576]="CallExpressionArguments",e[e.NewExpressionArguments=18960]="NewExpressionArguments",e[e.TemplateExpressionSpans=262144]="TemplateExpressionSpans",e[e.SingleLineBlockStatements=768]="SingleLineBlockStatements",e[e.MultiLineBlockStatements=129]="MultiLineBlockStatements",e[e.VariableDeclarationList=528]="VariableDeclarationList",e[e.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",e[e.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",e[e.ClassHeritageClauses=0]="ClassHeritageClauses",e[e.ClassMembers=129]="ClassMembers",e[e.InterfaceMembers=129]="InterfaceMembers",e[e.EnumMembers=145]="EnumMembers",e[e.CaseBlockClauses=129]="CaseBlockClauses",e[e.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",e[e.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",e[e.JsxElementAttributes=262656]="JsxElementAttributes",e[e.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",e[e.HeritageClauseTypes=528]="HeritageClauseTypes",e[e.SourceFileStatements=131073]="SourceFileStatements",e[e.Decorators=2146305]="Decorators",e[e.TypeArguments=53776]="TypeArguments",e[e.TypeParameters=53776]="TypeParameters",e[e.Parameters=2576]="Parameters",e[e.IndexSignatureParameters=8848]="IndexSignatureParameters",e[e.JSDocComment=33]="JSDocComment",e))(ry||{}),ny=(e=>(e[e.None=0]="None",e[e.TripleSlashXML=1]="TripleSlashXML",e[e.SingleLine=2]="SingleLine",e[e.MultiLine=4]="MultiLine",e[e.All=7]="All",e[e.Default=7]="Default",e))(ny||{}),Vp={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}}}}),W5=()=>{},iy;function ay(e){return e===47||e===92}function V5(e){return al(e)<0}function A_(e){return al(e)>0}function H5(e){let t=al(e);return t>0&&t===e.length}function sy(e){return al(e)!==0}function So(e){return/^\.\.?($|[\\/])/.test(e)}function G5(e){return!sy(e)&&!So(e)}function OT(e){return Fi(sl(e),".")}function ns(e,t){return e.length>t.length&&es(e,t)}function da(e,t){for(let r of t)if(ns(e,r))return!0;return!1}function Hp(e){return e.length>0&&ay(e.charCodeAt(e.length-1))}function MT(e){return e>=97&&e<=122||e>=65&&e<=90}function $5(e,t){let r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){let s=e.charCodeAt(t+2);if(s===97||s===65)return t+3}return-1}function al(e){if(!e)return 0;let t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;let s=e.indexOf(t===47?zn:py,2);return s<0?e.length:s+1}if(MT(t)&&e.charCodeAt(1)===58){let s=e.charCodeAt(2);if(s===47||s===92)return 3;if(e.length===2)return 2}let r=e.indexOf(fy);if(r!==-1){let s=r+fy.length,f=e.indexOf(zn,s);if(f!==-1){let x=e.slice(0,r),w=e.slice(s,f);if(x==="file"&&(w===""||w==="localhost")&&MT(e.charCodeAt(f+1))){let A=$5(e,f+2);if(A!==-1){if(e.charCodeAt(A)===47)return~(A+1);if(A===e.length)return~A}}return~(f+1)}return~e.length}return 0}function Bi(e){let t=al(e);return t<0?~t:t}function ma(e){e=Eo(e);let t=Bi(e);return t===e.length?e:(e=P_(e),e.slice(0,Math.max(t,e.lastIndexOf(zn))))}function sl(e,t,r){if(e=Eo(e),Bi(e)===e.length)return"";e=P_(e);let f=e.slice(Math.max(Bi(e),e.lastIndexOf(zn)+1)),x=t!==void 0&&r!==void 0?Gp(f,t,r):void 0;return x?f.slice(0,f.length-x.length):f}function LT(e,t,r){if(Pn(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){let s=e.slice(e.length-t.length);if(r(s,t))return s}}function K5(e,t,r){if(typeof t=="string")return LT(e,t,r)||"";for(let s of t){let f=LT(e,s,r);if(f)return f}return""}function Gp(e,t,r){if(t)return K5(P_(e),t,r?Ms:To);let s=sl(e),f=s.lastIndexOf(".");return f>=0?s.substring(f):""}function X5(e,t){let r=e.substring(0,t),s=e.substring(t).split(zn);return s.length&&!Cn(s)&&s.pop(),[r,...s]}function qi(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return e=tn(t,e),X5(e,Bi(e))}function xo(e){return e.length===0?"":(e[0]&&wo(e[0]))+e.slice(1).join(zn)}function Eo(e){return e.indexOf("\\")!==-1?e.replace(BT,zn):e}function is(e){if(!Ke(e))return[];let t=[e[0]];for(let r=1;r1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(s)}}return t}function tn(e){e&&(e=Eo(e));for(var t=arguments.length,r=new Array(t>1?t-1:0),s=1;s1?t-1:0),s=1;s0==Bi(t)>0,"Paths must either both be absolute or both be relative");let x=ly(e,t,(typeof r=="boolean"?r:!1)?Ms:To,typeof r=="function"?r:rr);return xo(x)}function nA(e,t,r){return A_(e)?uy(t,e,t,r,!1):e}function iA(e,t,r){return _y(JT(ma(e),t,r))}function uy(e,t,r,s,f){let x=ly(oy(r,e),oy(r,t),To,s),w=x[0];if(f&&A_(w)){let A=w.charAt(0)===zn?"file://":"file:///";x[0]=A+w}return xo(x)}function FT(e,t){for(;;){let r=t(e);if(r!==void 0)return r;let s=ma(e);if(s===e)return;e=s}}function aA(e){return es(e,"/node_modules")}var zn,py,fy,BT,ol,sA=D({"src/compiler/path.ts"(){"use strict";nn(),zn="/",py="\\",fy="://",BT=/\\/g,ol=/(?:\/\/)|(?:^|\/)\.\.?(?:$|\/)/}});function i(e,t,r,s,f,x,w){return{code:e,category:t,key:r,message:s,reportsUnnecessary:f,elidedInCompatabilityPyramid:x,reportsDeprecated:w}}var ve,oA=D({"src/compiler/diagnosticInformationMap.generated.ts"(){"use strict";NT(),ve={Unterminated_string_literal:i(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:i(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:i(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:i(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:i(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:i(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:i(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:i(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:i(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:i(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:i(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:i(1015,1,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:i(1016,1,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:i(1017,1,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:i(1018,1,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:i(1019,1,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:i(1020,1,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:i(1021,1,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:i(1022,1,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:i(1024,1,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:i(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:i(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:i(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:i(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:i(1031,1,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:i(1034,1,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:i(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:i(1036,1,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:i(1038,1,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:i(1039,1,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:i(1040,1,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:i(1042,1,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:i(1044,1,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:i(1046,1,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:i(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:i(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:i(1049,1,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:i(1051,1,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:i(1052,1,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:i(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:i(1054,1,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:i(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Prom_1055","Type '{0}' is not a valid async function return type in ES5/ES3 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:i(1056,1,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:i(1058,1,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:i(1059,1,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:i(1060,1,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:i(1061,1,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:i(1062,1,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:i(1063,1,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:i(1064,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise type. Did you mean to write 'Promise<{0}>'?"),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:i(1066,1,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:i(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:i(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:i(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:i(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:i(1079,1,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:i(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:i(1085,1,"Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0_1085","Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '{0}'."),_0_modifier_cannot_appear_on_a_constructor_declaration:i(1089,1,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:i(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:i(1091,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:i(1092,1,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:i(1093,1,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:i(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:i(1095,1,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:i(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:i(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:i(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:i(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:i(1100,1,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:i(1101,1,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:i(1102,1,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:i(1103,1,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:i(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:i(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:i(1106,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:i(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:i(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:i(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:i(1110,1,"Type_expected_1110","Type expected."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:i(1113,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:i(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:i(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:i(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:i(1117,1,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:i(1118,1,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:i(1119,1,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:i(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_in_strict_mode:i(1121,1,"Octal_literals_are_not_allowed_in_strict_mode_1121","Octal literals are not allowed in strict mode."),Variable_declaration_list_cannot_be_empty:i(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:i(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:i(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:i(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:i(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:i(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:i(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:i(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:i(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:i(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:i(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:i(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:i(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:i(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:i(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:i(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:i(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:i(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:i(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:i(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:i(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:i(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:i(1147,1,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:i(1148,1,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:i(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),const_declarations_must_be_initialized:i(1155,1,"const_declarations_must_be_initialized_1155","'const' declarations must be initialized."),const_declarations_can_only_be_declared_inside_a_block:i(1156,1,"const_declarations_can_only_be_declared_inside_a_block_1156","'const' declarations can only be declared inside a block."),let_declarations_can_only_be_declared_inside_a_block:i(1157,1,"let_declarations_can_only_be_declared_inside_a_block_1157","'let' declarations can only be declared inside a block."),Unterminated_template_literal:i(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:i(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:i(1162,1,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:i(1163,1,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:i(1164,1,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:i(1165,1,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:i(1166,1,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:i(1168,1,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:i(1169,1,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:i(1170,1,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:i(1171,1,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:i(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:i(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:i(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:i(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:i(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:i(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:i(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:i(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:i(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:i(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:i(1182,1,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:i(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:i(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:i(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:i(1186,1,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:i(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:i(1188,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:i(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:i(1190,1,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:i(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:i(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:i(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:i(1194,1,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:i(1195,1,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:i(1196,1,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:i(1197,1,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:i(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:i(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:i(1200,1,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:i(1202,1,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202",`Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:i(1203,1,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_0_is_enabled_requires_using_export_type:i(1205,1,"Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205","Re-exporting a type when '{0}' is enabled requires using 'export type'."),Decorators_are_not_valid_here:i(1206,1,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:i(1207,1,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:i(1209,1,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:i(1210,1,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:i(1211,1,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:i(1212,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:i(1213,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:i(1214,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:i(1215,1,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:i(1216,1,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:i(1218,1,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Generators_are_not_allowed_in_an_ambient_context:i(1221,1,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:i(1222,1,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:i(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:i(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:i(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:i(1226,1,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:i(1227,1,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:i(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:i(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:i(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:i(1231,1,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:i(1232,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:i(1233,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:i(1234,1,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:i(1235,1,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:i(1236,1,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:i(1237,1,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:i(1238,1,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:i(1239,1,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:i(1240,1,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:i(1241,1,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:i(1242,1,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:i(1243,1,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:i(1244,1,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:i(1245,1,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:i(1246,1,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:i(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:i(1248,1,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:i(1249,1,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5:i(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:i(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_d_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:i(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Modules are automatically in strict mode."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:i(1254,1,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:i(1255,1,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:i(1257,1,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:i(1258,1,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:i(1259,1,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:i(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:i(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:i(1262,1,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:i(1263,1,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:i(1264,1,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:i(1265,1,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:i(1266,1,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:i(1267,1,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:i(1268,1,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled:i(1269,1,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269","Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),Decorator_function_return_type_0_is_not_assignable_to_type_1:i(1270,1,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:i(1271,1,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:i(1272,1,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:i(1273,1,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:i(1274,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:i(1275,1,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:i(1276,1,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class:i(1277,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277","'{0}' modifier can only appear on a type parameter of a function, method or class"),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:i(1278,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278","The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:i(1279,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279","The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement:i(1280,1,"Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280","Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead:i(1281,1,"Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281","Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:i(1282,1,"An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282","An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:i(1283,1,"An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283","An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:i(1284,1,"An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284","An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:i(1285,1,"An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285","An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:i(1286,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled_1286","ESM syntax is not allowed in a CommonJS module when 'verbatimModuleSyntax' is enabled."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:i(1287,1,"A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287","A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:i(1288,1,"An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288","An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),with_statements_are_not_allowed_in_an_async_function_block:i(1300,1,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:i(1308,1,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:i(1309,1,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:i(1312,1,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:i(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:i(1314,1,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:i(1315,1,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:i(1316,1,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:i(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:i(1318,1,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:i(1319,1,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:i(1320,1,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:i(1321,1,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:i(1322,1,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext:i(1323,1,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nodenext:i(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nod_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', or 'nodenext'."),Argument_of_dynamic_import_cannot_be_spread_element:i(1325,1,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:i(1326,1,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:i(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:i(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:i(1329,1,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:i(1330,1,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:i(1331,1,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:i(1332,1,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:i(1333,1,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:i(1334,1,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:i(1335,1,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:i(1337,1,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:i(1338,1,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:i(1339,1,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:i(1340,1,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:i(1341,1,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext:i(1343,1,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', or 'nodenext'."),A_label_is_not_allowed_here:i(1344,1,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:i(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:i(1346,1,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:i(1347,1,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:i(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:i(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:i(1350,3,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:i(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:i(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:i(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:i(1354,1,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:i(1355,1,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:i(1356,1,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:i(1357,1,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:i(1358,1,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:i(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:i(1360,1,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:i(1361,1,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:i(1362,1,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:i(1363,1,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:i(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:i(1365,3,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:i(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:i(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:i(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:i(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error:i(1371,1,"This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set__1371","This import is never used as a value and must use 'import type' because 'importsNotUsedAsValues' is set to 'error'."),Convert_to_type_only_import:i(1373,3,"Convert_to_type_only_import_1373","Convert to type-only import"),Convert_all_imports_not_used_as_a_value_to_type_only_imports:i(1374,3,"Convert_all_imports_not_used_as_a_value_to_type_only_imports_1374","Convert all imports not used as a value to type-only imports"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:i(1375,1,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:i(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:i(1377,3,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_or_nodenext_and_the_target_option_is_set_to_es2017_or_higher:i(1378,1,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', or 'nodenext', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:i(1379,1,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:i(1380,1,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:i(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:i(1382,1,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:i(1385,1,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:i(1386,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:i(1387,1,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:i(1388,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:i(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:i(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:i(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:i(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:i(1394,3,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:i(1395,3,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:i(1396,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:i(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:i(1398,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:i(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:i(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:i(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:i(1402,3,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:i(1403,3,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:i(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:i(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:i(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:i(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:i(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:i(1409,3,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:i(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:i(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:i(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:i(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:i(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:i(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:i(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:i(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:i(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:i(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:i(1420,3,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:i(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:i(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:i(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:i(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:i(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:i(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:i(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:i(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:i(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:i(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:i(1431,1,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_or_nodenext_and_the_target_option_is_set_to_es2017_or_higher:i(1432,1,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', or 'nodenext', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:i(1433,1,"Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433","Neither decorators nor modifiers may be applied to 'this' parameters."),Unexpected_keyword_or_identifier:i(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:i(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:i(1436,1,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:i(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:i(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:i(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:i(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:i(1441,1,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:i(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:i(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedModules_are_both_enabled:i(1444,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedMod_1444","'{0}' is a type and must be imported using a type-only import when 'preserveValueImports' and 'isolatedModules' are both enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedModules_are_both_enabled:i(1446,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_preserveVa_1446","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'preserveValueImports' and 'isolatedModules' are both enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:i(1448,1,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:i(1449,3,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_assertion_as_arguments:i(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_assertion_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional assertion as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:i(1451,1,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_assertions_are_only_supported_when_moduleResolution_is_node16_or_nodenext:i(1452,1,"resolution_mode_assertions_are_only_supported_when_moduleResolution_is_node16_or_nodenext_1452","'resolution-mode' assertions are only supported when `moduleResolution` is `node16` or `nodenext`."),resolution_mode_should_be_either_require_or_import:i(1453,1,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:i(1454,1,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:i(1455,1,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:i(1456,1,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:i(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:i(1458,3,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",`File is ECMAScript module because '{0}' has field "type" with value "module"`),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:i(1459,3,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",`File is CommonJS module because '{0}' has field "type" whose value is not "module"`),File_is_CommonJS_module_because_0_does_not_have_field_type:i(1460,3,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460",`File is CommonJS module because '{0}' does not have field "type"`),File_is_CommonJS_module_because_package_json_was_not_found:i(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:i(1470,1,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:i(1471,1,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:i(1472,1,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:i(1473,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:i(1474,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:i(1475,3,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:i(1476,3,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:i(1477,1,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:i(1478,1,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:i(1479,1,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479",`The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:i(1480,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:i(1481,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481",`To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:i(1482,3,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:i(1483,3,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:i(1484,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484","'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:i(1485,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),Decorator_used_before_export_here:i(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),The_types_of_0_are_incompatible_between_these_types:i(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:i(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:i(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:i(2203,1,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:i(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:i(2205,1,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:i(2206,1,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:i(2207,1,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:i(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:i(2209,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:i(2210,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:i(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:i(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:i(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:i(2301,1,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:i(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:i(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:i(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:i(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:i(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:i(2307,1,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:i(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:i(2309,1,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:i(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:i(2311,1,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:i(2312,1,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:i(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:i(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:i(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:i(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:i(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:i(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:i(2319,1,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:i(2320,1,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:i(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:i(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:i(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:i(2324,1,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:i(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:i(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:i(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:i(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:i(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:i(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:i(2331,1,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:i(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_constructor_arguments:i(2333,1,"this_cannot_be_referenced_in_constructor_arguments_2333","'this' cannot be referenced in constructor arguments."),this_cannot_be_referenced_in_a_static_property_initializer:i(2334,1,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:i(2335,1,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:i(2336,1,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:i(2337,1,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:i(2338,1,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:i(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:i(2340,1,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:i(2341,1,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:i(2343,1,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:i(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:i(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Call_target_does_not_contain_any_signatures:i(2346,1,"Call_target_does_not_contain_any_signatures_2346","Call target does not contain any signatures."),Untyped_function_calls_may_not_accept_type_arguments:i(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:i(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:i(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:i(2350,1,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:i(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:i(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:i(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:i(2354,1,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value:i(2355,1,"A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'void' nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:i(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:i(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:i(2358,1,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type:i(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_F_2359","The right-hand side of an 'instanceof' expression must be of type 'any' or of a type assignable to the 'Function' interface type."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:i(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:i(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:i(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:i(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:i(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:i(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:i(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:i(2369,1,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:i(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:i(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:i(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:i(2373,1,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:i(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:i(2375,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:i(2376,1,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:i(2377,1,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:i(2378,1,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:i(2379,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),The_return_type_of_a_get_accessor_must_be_assignable_to_its_set_accessor_type:i(2380,1,"The_return_type_of_a_get_accessor_must_be_assignable_to_its_set_accessor_type_2380","The return type of a 'get' accessor must be assignable to its 'set' accessor type"),Overload_signatures_must_all_be_exported_or_non_exported:i(2383,1,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:i(2384,1,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:i(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:i(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:i(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:i(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:i(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:i(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:i(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:i(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:i(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:i(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:i(2395,1,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:i(2396,1,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:i(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:i(2398,1,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:i(2399,1,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:i(2400,1,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:i(2401,1,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:i(2402,1,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:i(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:i(2404,1,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:i(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:i(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:i(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:i(2408,1,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:i(2409,1,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:i(2410,1,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:i(2412,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:i(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:i(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:i(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:i(2415,1,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:i(2416,1,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:i(2417,1,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:i(2418,1,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:i(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:i(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:i(2422,1,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:i(2423,1,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:i(2425,1,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:i(2426,1,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:i(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:i(2428,1,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:i(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:i(2431,1,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:i(2432,1,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:i(2433,1,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:i(2434,1,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:i(2435,1,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:i(2436,1,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:i(2437,1,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:i(2438,1,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:i(2439,1,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:i(2440,1,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:i(2441,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:i(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:i(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:i(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:i(2445,1,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:i(2446,1,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:i(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:i(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:i(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:i(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:i(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:i(2452,1,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:i(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:i(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:i(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:i(2458,1,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:i(2459,1,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:i(2460,1,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:i(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:i(2462,1,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:i(2463,1,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:i(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:i(2465,1,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:i(2466,1,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:i(2467,1,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:i(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:i(2469,1,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:i(2472,1,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:i(2473,1,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_must_be_constant_expressions:i(2474,1,"const_enum_member_initializers_must_be_constant_expressions_2474","const enum member initializers must be constant expressions."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:i(2475,1,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:i(2476,1,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:i(2477,1,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:i(2478,1,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:i(2480,1,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:i(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:i(2483,1,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:i(2484,1,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:i(2487,1,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:i(2488,1,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:i(2489,1,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:i(2490,1,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:i(2491,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:i(2492,1,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:i(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:i(2494,1,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:i(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression:i(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_stand_2496","The 'arguments' object cannot be referenced in an arrow function in ES3 and ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:i(2497,1,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:i(2498,1,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:i(2499,1,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:i(2500,1,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:i(2501,1,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:i(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:i(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:i(2504,1,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:i(2505,1,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:i(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:i(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:i(2508,1,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:i(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:i(2510,1,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:i(2511,1,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:i(2512,1,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:i(2513,1,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:i(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:i(2515,1,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member '{1}' from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:i(2516,1,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:i(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:i(2518,1,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:i(2519,1,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:i(2520,1,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method:i(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_usi_2522","The 'arguments' object cannot be referenced in an async function or method in ES3 and ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:i(2523,1,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:i(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value:i(2525,1,"Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value_2525","Initializer provides no value for this binding element and the binding element has no default value."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:i(2526,1,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:i(2527,1,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:i(2528,1,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:i(2529,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:i(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:i(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:i(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:i(2533,1,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:i(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Type_0_cannot_be_used_to_index_type_1:i(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:i(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:i(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:i(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:i(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:i(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:i(2543,1,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:i(2544,1,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:i(2545,1,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:i(2547,1,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:i(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:i(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:i(2550,1,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:i(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:i(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:i(2553,1,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:i(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:i(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:i(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:i(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:i(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:i(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:i(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:i(2562,1,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:i(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:i(2564,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:i(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:i(2566,1,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:i(2567,1,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:i(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:i(2570,1,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:i(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:i(2574,1,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:i(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:i(2576,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:i(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:i(2578,1,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:i(2580,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:i(2581,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:i(2582,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:i(2583,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:i(2584,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:i(2585,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:i(2588,1,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:i(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:i(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:i(2591,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:i(2592,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:i(2593,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:i(2594,1,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:i(2595,1,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:i(2596,1,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:i(2597,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:i(2598,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:i(2602,1,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:i(2603,1,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:i(2604,1,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:i(2606,1,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:i(2607,1,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:i(2608,1,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:i(2609,1,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:i(2610,1,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:i(2611,1,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:i(2612,1,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:i(2613,1,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:i(2614,1,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:i(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:i(2616,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:i(2617,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:i(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:i(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:i(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:i(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:i(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:i(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:i(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:i(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:i(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:i(2628,1,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:i(2629,1,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:i(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:i(2631,1,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:i(2632,1,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:i(2633,1,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:i(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:i(2635,1,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:i(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:i(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:i(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:i(2649,1,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:i(2651,1,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:i(2652,1,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:i(2653,1,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),JSX_expressions_must_have_one_parent_element:i(2657,1,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:i(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:i(2659,1,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:i(2660,1,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:i(2661,1,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:i(2662,1,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:i(2663,1,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:i(2664,1,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:i(2665,1,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:i(2666,1,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:i(2667,1,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:i(2668,1,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:i(2669,1,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:i(2670,1,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:i(2671,1,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:i(2672,1,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:i(2673,1,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:i(2674,1,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:i(2675,1,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:i(2676,1,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:i(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:i(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:i(2679,1,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:i(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:i(2681,1,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:i(2683,1,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:i(2684,1,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:i(2685,1,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:i(2686,1,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:i(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:i(2688,1,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:i(2689,1,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:i(2690,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:i(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:i(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:i(2694,1,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:i(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:i(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:i(2697,1,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:i(2698,1,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:i(2699,1,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:i(2700,1,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:i(2701,1,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:i(2702,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:i(2703,1,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:i(2704,1,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:i(2705,1,"An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_de_2705","An async function or method in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:i(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:i(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:i(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:i(2709,1,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:i(2710,1,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:i(2711,1,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:i(2712,1,"A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declarat_2712","A dynamic import call in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:i(2713,1,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713",`Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:i(2714,1,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:i(2715,1,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:i(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:i(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:i(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:i(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:i(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:i(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:i(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:i(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:i(2724,1,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:i(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:i(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:i(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:i(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:i(2729,1,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:i(2730,1,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:i(2731,1,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:i(2732,1,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:i(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:i(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:i(2735,1,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:i(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:i(2737,1,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:i(2738,3,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:i(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:i(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:i(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:i(2742,1,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:i(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:i(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:i(2745,1,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:i(2746,1,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:i(2747,1,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_0_is_enabled:i(2748,1,"Cannot_access_ambient_const_enums_when_0_is_enabled_2748","Cannot access ambient const enums when '{0}' is enabled."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:i(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:i(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:i(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:i(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:i(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:i(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:i(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:i(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:i(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:i(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:i(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:i(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:i(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:i(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:i(2763,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:i(2764,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:i(2765,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:i(2766,1,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:i(2767,1,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:i(2768,1,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:i(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:i(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:i(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:i(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:i(2773,1,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:i(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:i(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:i(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:i(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:i(2778,1,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:i(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:i(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:i(2781,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:i(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:i(2783,1,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:i(2784,1,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:i(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:i(2786,1,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:i(2787,1,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:i(2788,1,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:i(2789,1,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:i(2790,1,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:i(2791,1,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:i(2792,1,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:i(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:i(2794,1,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:i(2795,1,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:i(2796,1,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:i(2797,1,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:i(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:i(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:i(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:i(2801,1,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:i(2802,1,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:i(2803,1,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:i(2804,1,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:i(2806,1,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:i(2807,1,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:i(2808,1,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:i(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:i(2810,1,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:i(2811,1,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:i(2812,1,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:i(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:i(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers:i(2815,1,"arguments_cannot_be_referenced_in_property_initializers_2815","'arguments' cannot be referenced in property initializers."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:i(2816,1,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:i(2817,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:i(2818,1,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:i(2819,1,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:i(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_or_nodenext:i(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_or_nodenext_2821","Import assertions are only supported when the '--module' option is set to 'esnext' or 'nodenext'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:i(2822,1,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Cannot_find_namespace_0_Did_you_mean_1:i(2833,1,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:i(2834,1,"Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in EcmaScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:i(2835,1,"Relative_import_paths_need_explicit_file_extensions_in_EcmaScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in EcmaScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_transpile_to_commonjs_require_calls:i(2836,1,"Import_assertions_are_not_allowed_on_statements_that_transpile_to_commonjs_require_calls_2836","Import assertions are not allowed on statements that transpile to commonjs 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:i(2837,1,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:i(2838,1,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:i(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_an_interface_can_only_extend_named_types_and_classes:i(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_an_interface_can_only_extend_named_types_and_clas_2840","An interface cannot extend a primitive type like '{0}'; an interface can only extend named types and classes"),The_type_of_this_expression_cannot_be_named_without_a_resolution_mode_assertion_which_is_an_unstable_feature_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:i(2841,1,"The_type_of_this_expression_cannot_be_named_without_a_resolution_mode_assertion_which_is_an_unstable_2841","The type of this expression cannot be named without a 'resolution-mode' assertion, which is an unstable feature. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:i(2842,1,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:i(2843,1,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:i(2844,1,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:i(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead:i(2846,1,"A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846","A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),Import_declaration_0_is_using_private_name_1:i(4e3,1,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:i(4002,1,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:i(4004,1,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:i(4006,1,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:i(4008,1,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:i(4010,1,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:i(4012,1,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:i(4014,1,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:i(4016,1,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:i(4019,1,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:i(4020,1,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:i(4021,1,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:i(4022,1,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4023,1,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:i(4024,1,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:i(4025,1,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4026,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:i(4027,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:i(4028,1,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4029,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:i(4030,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:i(4031,1,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4032,1,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:i(4033,1,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4034,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:i(4035,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4036,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:i(4037,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4038,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4039,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:i(4040,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4041,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4042,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:i(4043,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:i(4044,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:i(4045,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:i(4046,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:i(4047,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:i(4048,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:i(4049,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:i(4050,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:i(4051,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:i(4052,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:i(4053,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:i(4054,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:i(4055,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:i(4056,1,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:i(4057,1,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:i(4058,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:i(4059,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:i(4060,1,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4061,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4062,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:i(4063,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4064,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:i(4065,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4066,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:i(4067,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4068,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4069,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:i(4070,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4071,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:i(4072,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:i(4073,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4074,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:i(4075,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4076,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:i(4077,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:i(4078,1,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:i(4081,1,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:i(4082,1,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:i(4083,1,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:i(4084,1,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1:i(4085,1,"Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085","Extends clause for inferred type '{0}' has or is using private name '{1}'."),Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict:i(4090,1,"Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_librar_4090","Conflicting definitions for '{0}' found at '{1}' and '{2}'. Consider installing a specific version of this library to resolve the conflict."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4091,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:i(4092,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_class_expression_may_not_be_private_or_protected:i(4094,1,"Property_0_of_exported_class_expression_may_not_be_private_or_protected_4094","Property '{0}' of exported class expression may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4095,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:i(4096,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:i(4097,1,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4098,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:i(4099,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:i(4100,1,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:i(4101,1,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:i(4102,1,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:i(4103,1,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:i(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:i(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:i(4106,1,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:i(4107,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:i(4108,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:i(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:i(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:i(4111,1,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:i(4112,1,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:i(4113,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:i(4114,1,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:i(4115,1,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:i(4116,1,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:i(4117,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:i(4118,1,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:i(4119,1,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:i(4120,1,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:i(4121,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:i(4122,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:i(4123,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:i(4124,1,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),resolution_mode_assertions_are_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:i(4125,1,"resolution_mode_assertions_are_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_wi_4125","'resolution-mode' assertions are unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),The_current_host_does_not_support_the_0_option:i(5001,1,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:i(5009,1,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:i(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:i(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:i(5014,1,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:i(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:i(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:i(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:i(5033,1,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:i(5042,1,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:i(5047,1,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_cannot_be_specified_when_option_target_is_ES3:i(5048,1,"Option_0_cannot_be_specified_when_option_target_is_ES3_5048","Option '{0}' cannot be specified when option 'target' is 'ES3'."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:i(5051,1,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:i(5052,1,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:i(5053,1,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:i(5054,1,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:i(5055,1,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:i(5056,1,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:i(5057,1,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:i(5058,1,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:i(5059,1,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:i(5061,1,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:i(5062,1,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:i(5063,1,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:i(5064,1,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:i(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:i(5066,1,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:i(5067,1,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:i(5068,1,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:i(5069,1,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic:i(5070,1,"Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070","Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext:i(5071,1,"Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_5071","Option '--resolveJsonModule' can only be specified when module code generation is 'commonjs', 'amd', 'es2015' or 'esNext'."),Unknown_build_option_0:i(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:i(5073,1,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:i(5074,1,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:i(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:i(5076,1,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:i(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:i(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:i(5079,1,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:i(5080,1,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:i(5081,1,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:i(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:i(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),Tuple_members_must_all_have_names_or_all_not_have_names:i(5084,1,"Tuple_members_must_all_have_names_or_all_not_have_names_5084","Tuple members must all have names or all not have names."),A_tuple_member_cannot_be_both_optional_and_rest:i(5085,1,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:i(5086,1,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:i(5087,1,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:i(5088,1,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:i(5089,1,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:i(5090,1,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled:i(5091,1,"Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),The_root_value_of_a_0_file_must_be_an_object:i(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:i(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:i(5094,1,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_0_can_only_be_used_when_module_is_set_to_es2015_or_later:i(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:i(5096,1,"Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096","Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled:i(5097,1,"An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097","An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler:i(5098,1,"Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098","Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error:i(5101,1,"Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101",`Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),Option_0_has_been_removed_Please_remove_it_from_your_configuration:i(5102,1,"Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102","Option '{0}' has been removed. Please remove it from your configuration."),Invalid_value_for_ignoreDeprecations:i(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:i(5104,1,"Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104","Option '{0}' is redundant and cannot be specified with option '{1}'."),Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System:i(5105,1,"Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105","Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),Use_0_instead:i(5106,3,"Use_0_instead_5106","Use '{0}' instead."),Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error:i(5107,1,"Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107",`Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '"ignoreDeprecations": "{3}"' to silence this error.`),Option_0_1_has_been_removed_Please_remove_it_from_your_configuration:i(5108,1,"Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108","Option '{0}={1}' has been removed. Please remove it from your configuration."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:i(6e3,3,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:i(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:i(6002,3,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:i(6004,3,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:i(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:i(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:i(6007,3,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:i(6008,3,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:i(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:i(6010,3,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:i(6011,3,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:i(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:i(6013,3,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:i(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:i(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:i(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:i(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:i(6019,3,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:i(6020,3,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:i(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:i(6024,3,"options_6024","options"),file:i(6025,3,"file_6025","file"),Examples_Colon_0:i(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:i(6027,3,"Options_Colon_6027","Options:"),Version_0:i(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:i(6030,3,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:i(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:i(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:i(6034,3,"KIND_6034","KIND"),FILE:i(6035,3,"FILE_6035","FILE"),VERSION:i(6036,3,"VERSION_6036","VERSION"),LOCATION:i(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:i(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:i(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:i(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:i(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:i(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:i(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:i(6045,1,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:i(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:i(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form or -. For example '{0}' or '{1}'."),Unable_to_open_file_0:i(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:i(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:i(6052,3,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:i(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:i(6054,1,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:i(6055,3,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:i(6056,3,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:i(6058,3,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:i(6059,1,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:i(6060,3,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:i(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:i(6064,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:i(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:i(6066,3,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:i(6070,3,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:i(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:i(6072,3,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:i(6073,3,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:i(6074,3,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:i(6075,3,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:i(6076,3,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:i(6077,3,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:i(6078,3,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:i(6079,3,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:i(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),File_0_has_an_unsupported_extension_so_skipping_it:i(6081,3,"File_0_has_an_unsupported_extension_so_skipping_it_6081","File '{0}' has an unsupported extension, so skipping it."),Only_amd_and_system_modules_are_supported_alongside_0:i(6082,1,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:i(6083,3,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:i(6084,3,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:i(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:i(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:i(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:i(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:i(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:i(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:i(6091,3,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:i(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:i(6093,3,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:i(6094,3,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1:i(6095,3,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095","Loading module as file / folder, candidate module location '{0}', target file types: {1}."),File_0_does_not_exist:i(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:i(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_types_Colon_1:i(6098,3,"Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098","Loading module '{0}' from 'node_modules' folder, target file types: {1}."),Found_package_json_at_0:i(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:i(6100,3,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:i(6101,3,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:i(6102,3,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:i(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:i(6105,3,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:i(6106,3,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:i(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:i(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:i(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:i(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:i(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:i(6112,3,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:i(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:i(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:i(6115,3,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:i(6116,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:i(6119,3,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:i(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:i(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:i(6122,3,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:i(6123,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:i(6124,3,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:i(6125,3,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:i(6126,3,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:i(6127,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:i(6128,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:i(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:i(6131,1,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:i(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:i(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:i(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:i(6135,3,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:i(6136,3,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:i(6137,1,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:i(6138,1,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:i(6139,3,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:i(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:i(6141,3,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:i(6142,1,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:i(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified:i(6145,3,"Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified_6145","Module '{0}' was resolved as ambient module declared in '{1}' since this file was not modified."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:i(6146,3,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:i(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:i(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:i(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:i(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:i(6151,3,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:i(6152,3,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:i(6153,3,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:i(6154,3,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:i(6155,3,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:i(6156,3,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:i(6157,3,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:i(6158,3,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:i(6159,3,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:i(6160,3,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:i(6161,3,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:i(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:i(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Do_not_truncate_error_messages:i(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:i(6166,3,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:i(6167,3,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:i(6168,3,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:i(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:i(6170,3,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:i(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3:i(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'."),Enable_all_strict_type_checking_options:i(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:i(6182,3,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:i(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:i(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:i(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:i(6187,3,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:i(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:i(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:i(6191,3,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:i(6192,1,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:i(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:i(6194,3,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:i(6195,3,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:i(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:i(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:i(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:i(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:i(6200,1,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:i(6201,3,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:i(6202,1,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:i(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:i(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:i(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:i(6206,3,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:i(6207,3,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:i(6208,3,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:i(6209,3,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:i(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:i(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:i(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:i(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:i(6214,3,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:i(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:i(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:i(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:i(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:i(6219,3,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:i(6220,3,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:i(6221,3,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:i(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:i(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:i(6224,3,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:i(6225,3,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:i(6226,3,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:i(6227,3,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:i(6229,1,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:i(6230,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:i(6231,1,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:i(6232,1,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:i(6233,1,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:i(6234,1,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:i(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:i(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:i(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:i(6238,1,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:i(6239,3,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:i(6240,3,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:i(6241,3,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:i(6242,3,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:i(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:i(6244,3,"Modules_6244","Modules"),File_Management:i(6245,3,"File_Management_6245","File Management"),Emit:i(6246,3,"Emit_6246","Emit"),JavaScript_Support:i(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:i(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:i(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:i(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:i(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:i(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:i(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:i(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:i(6255,3,"Projects_6255","Projects"),Output_Formatting:i(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:i(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:i(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_1:i(6259,3,"Found_1_error_in_1_6259","Found 1 error in {1}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:i(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:i(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),File_name_0_has_a_1_extension_looking_up_2_instead:i(6262,3,"File_name_0_has_a_1_extension_looking_up_2_instead_6262","File name '{0}' has a '{1}' extension - looking up '{2}' instead."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:i(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present:i(6264,3,"Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264","Enable importing files with any extension, provided a declaration file is present."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:i(6270,3,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:i(6271,3,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:i(6272,3,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:i(6273,3,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:i(6274,3,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:i(6275,3,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:i(6276,3,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update:i(6277,3,"Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277","Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings:i(6278,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278",`There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),Enable_project_compilation:i(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:i(6304,1,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:i(6305,1,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:i(6306,1,"Referenced_project_0_must_have_setting_composite_Colon_true_6306",`Referenced project '{0}' must have setting "composite": true.`),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:i(6307,1,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Cannot_prepend_project_0_because_it_does_not_have_outFile_set:i(6308,1,"Cannot_prepend_project_0_because_it_does_not_have_outFile_set_6308","Cannot prepend project '{0}' because it does not have 'outFile' set"),Output_file_0_from_project_1_does_not_exist:i(6309,1,"Output_file_0_from_project_1_does_not_exist_6309","Output file '{0}' from project '{1}' does not exist"),Referenced_project_0_may_not_disable_emit:i(6310,1,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:i(6350,3,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:i(6351,3,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:i(6352,3,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:i(6353,3,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:i(6354,3,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:i(6355,3,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:i(6356,3,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:i(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:i(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:i(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:i(6361,3,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:i(6362,3,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:i(6363,3,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:i(6364,3,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:i(6365,3,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:i(6367,3,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:i(6369,1,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:i(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:i(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed:i(6372,3,"Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed_6372","Project '{0}' is out of date because output of its dependency '{1}' has changed"),Updating_output_of_project_0:i(6373,3,"Updating_output_of_project_0_6373","Updating output of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:i(6374,3,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),A_non_dry_build_would_update_output_of_project_0:i(6375,3,"A_non_dry_build_would_update_output_of_project_0_6375","A non-dry build would update output of project '{0}'"),Cannot_update_output_of_project_0_because_there_was_error_reading_file_1:i(6376,3,"Cannot_update_output_of_project_0_because_there_was_error_reading_file_1_6376","Cannot update output of project '{0}' because there was error reading file '{1}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:i(6377,1,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:i(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:i(6380,3,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:i(6381,3,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:i(6382,3,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:i(6383,3,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:i(6384,3,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:i(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:i(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:i(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:i(6388,3,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:i(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:i(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:i(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:i(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:i(6393,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:i(6394,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:i(6395,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:i(6396,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:i(6397,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:i(6398,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:i(6399,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:i(6400,3,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:i(6401,3,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:i(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:i(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:i(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:i(6405,3,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions:i(6406,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406","Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set:i(6407,3,"Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407","Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),Use_the_package_json_exports_field_when_resolving_package_imports:i(6408,3,"Use_the_package_json_exports_field_when_resolving_package_imports_6408","Use the package.json 'exports' field when resolving package imports."),Use_the_package_json_imports_field_when_resolving_imports:i(6409,3,"Use_the_package_json_imports_field_when_resolving_imports_6409","Use the package.json 'imports' field when resolving imports."),Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports:i(6410,3,"Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410","Conditions to set in addition to the resolver-specific defaults when resolving imports."),true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false:i(6411,3,"true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411","`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more:i(6412,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412","Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),Entering_conditional_exports:i(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:i(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:i(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:i(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:i(6500,3,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:i(6501,3,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:i(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:i(6503,3,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:i(6504,1,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:i(6505,3,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:i(6506,3,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these_files:i(6600,3,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:i(6601,3,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:i(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:i(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:i(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:i(6605,3,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:i(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:i(6607,3,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:i(6608,3,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:i(6609,3,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:i(6611,3,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:i(6612,3,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:i(6613,3,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:i(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:i(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:i(6616,3,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:i(6617,3,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:i(6618,3,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:i(6619,3,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:i(6620,3,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:i(6621,3,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:i(6622,3,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:i(6623,3,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:i(6624,3,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:i(6625,3,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:i(6626,3,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:i(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:i(6628,3,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:i(6629,3,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_legacy_experimental_decorators:i(6630,3,"Enable_experimental_support_for_legacy_experimental_decorators_6630","Enable experimental support for legacy experimental decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:i(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:i(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:i(6633,3,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:i(6634,3,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:i(6635,3,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:i(6636,3,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:i(6637,3,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:i(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:i(6639,3,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:i(6641,3,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:i(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:i(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:i(6644,3,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:i(6645,3,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:i(6646,3,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:i(6647,3,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:i(6648,3,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:i(6649,3,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:i(6650,3,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:i(6651,3,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:i(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:i(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:i(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:i(6655,3,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:i(6656,3,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:i(6657,3,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:i(6658,3,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:i(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:i(6660,3,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:i(6661,3,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:i(6662,3,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:i(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:i(6664,3,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:i(6665,3,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:i(6666,3,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:i(6667,3,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:i(6668,3,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:i(6669,3,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:i(6670,3,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:i(6671,3,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:i(6672,3,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:i(6673,3,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:i(6674,3,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:i(6675,3,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:i(6676,3,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:i(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:i(6678,3,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:i(6679,3,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:i(6680,3,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:i(6681,3,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:i(6682,3,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:i(6683,3,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:i(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:i(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:i(6686,3,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:i(6687,3,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:i(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:i(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:i(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:i(6691,3,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:i(6692,3,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:i(6693,3,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:i(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:i(6695,3,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:i(6697,3,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:i(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:i(6699,3,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:i(6700,3,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:i(6701,3,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:i(6702,3,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:i(6703,3,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:i(6704,3,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:i(6705,3,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:i(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:i(6707,3,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:i(6709,3,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:i(6710,3,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:i(6711,3,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:i(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:i(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:i(6714,3,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:i(6715,3,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:i(6717,3,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:i(6718,3,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Default_catch_clause_variables_as_unknown_instead_of_any:i(6803,3,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting:i(6804,3,"Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804","Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),one_of_Colon:i(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:i(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:i(6902,3,"type_Colon_6902","type:"),default_Colon:i(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:i(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:i(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:i(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:i(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:i(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:i(6909,3,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:i(69010,3,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:i(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:i(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:i(6913,3,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:i(6914,3,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:i(6915,3,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:i(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:i(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:i(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:i(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:i(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:i(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:i(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:i(6923,3,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:i(6924,3,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:i(6925,3,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:i(6926,3,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:i(6927,3,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:i(6928,3,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:i(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:i(6930,3,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:i(6931,1,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:i(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:i(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:i(7008,1,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:i(7009,1,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:i(7010,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:i(7011,1,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation:i(7012,1,"This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012","This overload implicitly returns the type '{0}' because it lacks a return type annotation."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:i(7013,1,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:i(7014,1,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:i(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:i(7016,1,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:i(7017,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:i(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:i(7019,1,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:i(7020,1,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:i(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:i(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:i(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:i(7025,1,"Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_retu_7025","Generator implicitly has yield type '{0}' because it does not yield any values. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:i(7026,1,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:i(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:i(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:i(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:i(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:i(7031,1,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:i(7032,1,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:i(7033,1,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:i(7034,1,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:i(7035,1,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:i(7036,1,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:i(7037,3,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:i(7038,3,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:i(7039,1,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:i(7040,1,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:i(7041,1,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:i(7042,1,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:i(7043,2,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:i(7044,2,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:i(7045,2,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:i(7046,2,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:i(7047,2,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:i(7048,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:i(7049,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:i(7050,2,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:i(7051,1,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:i(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:i(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:i(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:i(7055,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:i(7056,1,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:i(7057,1,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:i(7058,1,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:i(7059,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:i(7060,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:i(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:i(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:i(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:i(8002,1,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:i(8003,1,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:i(8004,1,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:i(8005,1,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:i(8006,1,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:i(8008,1,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:i(8009,1,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:i(8010,1,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:i(8011,1,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:i(8012,1,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:i(8013,1,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:i(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:i(8017,1,"Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0_8017","Octal literal types must use ES2015 syntax. Use the syntax '{0}'."),Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0:i(8018,1,"Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0_8018","Octal literals are not allowed in enums members initializer. Use the syntax '{0}'."),Report_errors_in_js_files:i(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:i(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:i(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:i(8022,1,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:i(8023,1,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:i(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:i(8025,1,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:i(8026,1,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:i(8027,1,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:i(8028,1,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:i(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:i(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:i(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:i(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:i(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:i(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:i(8035,1,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:i(8036,1,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:i(8037,1,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export:i(8038,1,"Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038","Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:i(9005,1,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:i(9006,1,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:i(17e3,1,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:i(17001,1,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:i(17002,1,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:i(17004,1,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:i(17005,1,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:i(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:i(17007,1,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:i(17008,1,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:i(17009,1,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:i(17010,1,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:i(17011,1,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:i(17012,1,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:i(17013,1,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:i(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:i(17015,1,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:i(17016,1,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:i(17017,1,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:i(17018,1,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:i(17019,1,"_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019","'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:i(17020,1,"_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020","'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),Circularity_detected_while_resolving_configuration_Colon_0:i(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:i(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:i(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:i(80001,2,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:i(80002,2,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:i(80003,2,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:i(80004,2,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:i(80005,2,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:i(80006,2,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:i(80007,2,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:i(80008,2,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),Add_missing_super_call:i(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:i(90002,3,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:i(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:i(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:i(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:i(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:i(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:i(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:i(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:i(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:i(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:i(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:i(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:i(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:i(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:i(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:i(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:i(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:i(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:i(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:i(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:i(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:i(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:i(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:i(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:i(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:i(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:i(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:i(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:i(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:i(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:i(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:i(90037,3,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:i(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:i(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:i(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:i(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:i(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:i(90055,3,"Remove_type_from_import_declaration_from_0_90055",`Remove 'type' from import declaration from "{0}"`),Remove_type_from_import_of_0_from_1:i(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:i(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:i(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:i(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:i(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Convert_function_to_an_ES2015_class:i(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:i(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:i(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:i(95005,3,"Extract_function_95005","Extract function"),Extract_constant:i(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:i(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:i(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:i(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:i(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:i(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:i(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:i(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:i(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:i(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:i(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:i(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:i(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:i(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:i(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:i(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:i(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:i(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:i(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:i(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:i(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:i(95028,3,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:i(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:i(95030,3,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:i(95031,3,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:i(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:i(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:i(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:i(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:i(95036,3,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:i(95037,3,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:i(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:i(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:i(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:i(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:i(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:i(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:i(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:i(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:i(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:i(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:i(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:i(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:i(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:i(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:i(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:i(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:i(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:i(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:i(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:i(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:i(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:i(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:i(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:i(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:i(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:i(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:i(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:i(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:i(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:i(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:i(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:i(95069,3,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:i(95070,3,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:i(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:i(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:i(95073,3,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:i(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:i(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:i(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:i(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:i(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:i(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:i(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:i(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:i(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:i(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:i(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:i(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:i(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:i(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:i(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:i(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:i(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:i(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:i(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:i(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:i(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:i(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:i(95097,3,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:i(95098,3,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:i(95099,3,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:i(95100,3,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:i(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:i(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:i(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:i(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:i(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:i(95108,3,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:i(95109,3,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:i(95110,3,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:i(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:i(95112,3,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:i(95113,3,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:i(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:i(95115,3,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:i(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:i(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:i(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:i(95119,3,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:i(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:i(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:i(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:i(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:i(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:i(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:i(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:i(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:i(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:i(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:i(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:i(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:i(95132,3,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:i(95133,3,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:i(95134,3,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:i(95135,3,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:i(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:i(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:i(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:i(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:i(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:i(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:i(95142,3,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:i(95143,3,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:i(95144,3,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:i(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:i(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:i(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:i(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:i(95149,3,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:i(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:i(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:i(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:i(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenation:i(95154,3,"Can_only_convert_string_concatenation_95154","Can only convert string concatenation"),Selection_is_not_a_valid_statement_or_statements:i(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:i(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:i(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:i(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:i(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:i(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:i(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:i(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:i(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:i(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:i(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:i(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:i(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:i(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:i(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:i(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:i(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:i(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:i(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:i(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:i(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:i(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:i(18006,1,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:i(18007,1,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:i(18009,1,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:i(18010,1,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:i(18011,1,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:i(18012,1,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:i(18013,1,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:i(18014,1,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:i(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:i(18016,1,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:i(18017,1,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:i(18018,1,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:i(18019,1,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:i(18024,1,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:i(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:i(18027,1,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:i(18028,1,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:i(18029,1,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:i(18030,1,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:i(18031,1,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:i(18032,1,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values:i(18033,1,"Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033","Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:i(18034,3,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:i(18035,1,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:i(18036,1,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),Await_expression_cannot_be_used_inside_a_class_static_block:i(18037,1,"Await_expression_cannot_be_used_inside_a_class_static_block_18037","Await expression cannot be used inside a class static block."),For_await_loops_cannot_be_used_inside_a_class_static_block:i(18038,1,"For_await_loops_cannot_be_used_inside_a_class_static_block_18038","'For await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:i(18039,1,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:i(18041,1,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:i(18042,1,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:i(18043,1,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:i(18044,3,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:i(18045,1,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:i(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:i(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:i(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:i(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:i(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),Compiler_option_0_cannot_be_given_an_empty_string:i(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string.")}}});function fr(e){return e>=79}function qT(e){return e===31||fr(e)}function D_(e,t){if(e=2?D_(e,ZT):t===1?D_(e,YT):D_(e,KT)}function _A(e,t){return t>=2?D_(e,eS):t===1?D_(e,QT):D_(e,XT)}function cA(e){let t=[];return e.forEach((r,s)=>{t[r]=s}),t}function Br(e){return nS[e]}function _l(e){return Ty.get(e)}function Kp(e){let t=[],r=0,s=0;for(;r127&&un(f)&&(t.push(s),s=r);break}}return t.push(s),t}function lA(e,t,r,s){return e.getPositionOfLineAndCharacter?e.getPositionOfLineAndCharacter(t,r,s):dy(ss(e),t,r,e.text,s)}function dy(e,t,r,s,f){(t<0||t>=e.length)&&(f?t=t<0?0:t>=e.length?e.length-1:t:Y.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${s!==void 0?ke(e,Kp(s)):"unknown"}`));let x=e[t]+r;return f?x>e[t+1]?e[t+1]:typeof s=="string"&&x>s.length?s.length:x:(t=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function un(e){return e===10||e===13||e===8232||e===8233}function O_(e){return e>=48&&e<=57}function Xp(e){return O_(e)||e>=65&&e<=70||e>=97&&e<=102}function uA(e){return e<=1114111}function hy(e){return e>=48&&e<=55}function pA(e,t){let r=e.charCodeAt(t);switch(r){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return t===0;default:return r>127}}function Ar(e,t,r,s,f){if(hs(t))return t;let x=!1;for(;;){let w=e.charCodeAt(t);switch(w){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,r)return t;x=!!f;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(s)break;if(e.charCodeAt(t+1)===47){for(t+=2;t127&&os(w)){t++;continue}break}return t}}function Co(e,t){if(Y.assert(t>=0),t===0||un(e.charCodeAt(t-1))){let r=e.charCodeAt(t);if(t+ll=0&&r127&&os(ae)){X&&un(ae)&&(N=!0),r++;continue}break e}}return X&&($=f(A,g,B,N,x,$)),$}function fA(e,t,r,s){return Yp(!1,e,t,!1,r,s)}function dA(e,t,r,s){return Yp(!1,e,t,!0,r,s)}function zT(e,t,r,s,f){return Yp(!0,e,t,!1,r,s,f)}function WT(e,t,r,s,f){return Yp(!0,e,t,!0,r,s,f)}function VT(e,t,r,s,f){let x=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[];return x.push({kind:r,pos:e,end:t,hasTrailingNewLine:s}),x}function Ao(e,t){return zT(e,t,VT,void 0,void 0)}function HT(e,t){return WT(e,t,VT,void 0,void 0)}function GT(e){let t=Qp.exec(e);if(t)return t[0]}function Wn(e,t){return e>=65&&e<=90||e>=97&&e<=122||e===36||e===95||e>127&&UT(e,t)}function Rs(e,t,r){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===36||e===95||(r===1?e===45||e===58:!1)||e>127&&_A(e,t)}function vy(e,t,r){let s=ii(e,0);if(!Wn(s,t))return!1;for(let f=yi(s);f2&&arguments[2]!==void 0?arguments[2]:0,s=arguments.length>3?arguments[3]:void 0,f=arguments.length>4?arguments[4]:void 0,x=arguments.length>5?arguments[5]:void 0,w=arguments.length>6?arguments[6]:void 0;var A=s,g,B,N,X,F,$,ae,Te,Se=0;ue(A,x,w);var Ye={getStartPos:()=>N,getTextPos:()=>g,getToken:()=>F,getTokenPos:()=>X,getTokenText:()=>A.substring(X,g),getTokenValue:()=>$,hasUnicodeEscape:()=>(ae&1024)!==0,hasExtendedUnicodeEscape:()=>(ae&8)!==0,hasPrecedingLineBreak:()=>(ae&1)!==0,hasPrecedingJSDocComment:()=>(ae&2)!==0,isIdentifier:()=>F===79||F>116,isReservedWord:()=>F>=81&&F<=116,isUnterminated:()=>(ae&4)!==0,getCommentDirectives:()=>Te,getNumericLiteralFlags:()=>ae&1008,getTokenFlags:()=>ae,reScanGreaterToken:Sn,reScanAsteriskEqualsToken:In,reScanSlashToken:pr,reScanTemplateToken:Nn,reScanTemplateHeadOrNoSubstitutionTemplate:ar,scanJsxIdentifier:nr,scanJsxAttributeValue:br,reScanJsxAttributeValue:Kr,reScanJsxToken:oi,reScanLessThanToken:cr,reScanHashToken:$r,reScanQuestionToken:hr,reScanInvalidIdentifier:Gr,scanJsxToken:On,scanJsDocToken:wa,scan:Ur,getText:Ca,clearCommentDirectives:St,setText:ue,setScriptTarget:_t,setLanguageVariant:ft,setOnError:He,setTextPos:Kt,setInJSDocType:zt,tryScan:_i,lookAhead:Mn,scanRange:Ki};return Y.isDebugging&&Object.defineProperty(Ye,"__debugShowCurrentPositionInText",{get:()=>{let xe=Ye.getText();return xe.slice(0,Ye.getStartPos())+"\u2551"+xe.slice(Ye.getStartPos())}}),Ye;function Ne(xe){let Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:g,Re=arguments.length>2?arguments[2]:void 0;if(f){let ot=g;g=Le,f(xe,Re||0),g=ot}}function oe(){let xe=g,Le=!1,Re=!1,ot="";for(;;){let Ct=A.charCodeAt(g);if(Ct===95){ae|=512,Le?(Le=!1,Re=!0,ot+=A.substring(xe,g)):Ne(Re?ve.Multiple_consecutive_numeric_separators_are_not_permitted:ve.Numeric_separators_are_not_allowed_here,g,1),g++,xe=g;continue}if(O_(Ct)){Le=!0,Re=!1,g++;continue}break}return A.charCodeAt(g-1)===95&&Ne(ve.Numeric_separators_are_not_allowed_here,g-1,1),ot+A.substring(xe,g)}function Ve(){let xe=g,Le=oe(),Re,ot;A.charCodeAt(g)===46&&(g++,Re=oe());let Ct=g;if(A.charCodeAt(g)===69||A.charCodeAt(g)===101){g++,ae|=16,(A.charCodeAt(g)===43||A.charCodeAt(g)===45)&&g++;let It=g,Mr=oe();Mr?(ot=A.substring(Ct,It)+Mr,Ct=g):Ne(ve.Digit_expected)}let Mt;if(ae&512?(Mt=Le,Re&&(Mt+="."+Re),ot&&(Mt+=ot)):Mt=A.substring(xe,Ct),Re!==void 0||ae&16)return pt(xe,Re===void 0&&!!(ae&16)),{type:8,value:""+ +Mt};{$=Mt;let It=dn();return pt(xe),{type:It,value:$}}}function pt(xe,Le){if(!Wn(ii(A,g),e))return;let Re=g,{length:ot}=an();ot===1&&A[Re]==="n"?Ne(Le?ve.A_bigint_literal_cannot_use_exponential_notation:ve.A_bigint_literal_must_be_an_integer,xe,Re-xe+1):(Ne(ve.An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal,Re,ot),g=Re)}function Gt(){let xe=g;for(;hy(A.charCodeAt(g));)g++;return+A.substring(xe,g)}function Nt(xe,Le){let Re=er(xe,!1,Le);return Re?parseInt(Re,16):-1}function Xt(xe,Le){return er(xe,!0,Le)}function er(xe,Le,Re){let ot=[],Ct=!1,Mt=!1;for(;ot.length=65&&It<=70)It+=97-65;else if(!(It>=48&&It<=57||It>=97&&It<=102))break;ot.push(It),g++,Mt=!1}return ot.length0&&arguments[0]!==void 0?arguments[0]:!1,Le=A.charCodeAt(g);g++;let Re="",ot=g;for(;;){if(g>=B){Re+=A.substring(ot,g),ae|=4,Ne(ve.Unterminated_string_literal);break}let Ct=A.charCodeAt(g);if(Ct===Le){Re+=A.substring(ot,g),g++;break}if(Ct===92&&!xe){Re+=A.substring(ot,g),Re+=Gi(),ot=g;continue}if(un(Ct)&&!xe){Re+=A.substring(ot,g),ae|=4,Ne(ve.Unterminated_string_literal);break}g++}return Re}function Hr(xe){let Le=A.charCodeAt(g)===96;g++;let Re=g,ot="",Ct;for(;;){if(g>=B){ot+=A.substring(Re,g),ae|=4,Ne(ve.Unterminated_template_literal),Ct=Le?14:17;break}let Mt=A.charCodeAt(g);if(Mt===96){ot+=A.substring(Re,g),g++,Ct=Le?14:17;break}if(Mt===36&&g+1=B)return Ne(ve.Unexpected_end_of_text),"";let Re=A.charCodeAt(g);switch(g++,Re){case 48:return xe&&g=0?String.fromCharCode(Le):(Ne(ve.Hexadecimal_digit_expected),"")}function fn(){let xe=Xt(1,!1),Le=xe?parseInt(xe,16):-1,Re=!1;return Le<0?(Ne(ve.Hexadecimal_digit_expected),Re=!0):Le>1114111&&(Ne(ve.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive),Re=!0),g>=B?(Ne(ve.Unexpected_end_of_text),Re=!0):A.charCodeAt(g)===125?g++:(Ne(ve.Unterminated_Unicode_escape_sequence),Re=!0),Re?"":by(Le)}function Ut(){if(g+5=0&&Rs(Re,e)){g+=3,ae|=8,xe+=fn(),Le=g;continue}if(Re=Ut(),!(Re>=0&&Rs(Re,e)))break;ae|=1024,xe+=A.substring(Le,g),xe+=by(Re),g+=6,Le=g}else break}return xe+=A.substring(Le,g),xe}function mr(){let xe=$.length;if(xe>=2&&xe<=12){let Le=$.charCodeAt(0);if(Le>=97&&Le<=122){let Re=$T.get($);if(Re!==void 0)return F=Re}}return F=79}function $i(xe){let Le="",Re=!1,ot=!1;for(;;){let Ct=A.charCodeAt(g);if(Ct===95){ae|=512,Re?(Re=!1,ot=!0):Ne(ot?ve.Multiple_consecutive_numeric_separators_are_not_permitted:ve.Numeric_separators_are_not_allowed_here,g,1),g++;continue}if(Re=!0,!O_(Ct)||Ct-48>=xe)break;Le+=A[g],g++,ot=!1}return A.charCodeAt(g-1)===95&&Ne(ve.Numeric_separators_are_not_allowed_here,g-1,1),Le}function dn(){return A.charCodeAt(g)===110?($+="n",ae&384&&($=Hf($)+"n"),g++,9):($=""+(ae&128?parseInt($.slice(2),2):ae&256?parseInt($.slice(2),8):+$),8)}function Ur(){N=g,ae=0;let xe=!1;for(;;){if(X=g,g>=B)return F=1;let Le=ii(A,g);if(Le===35&&g===0&&gy(A,g)){if(g=yy(A,g),t)continue;return F=6}switch(Le){case 10:case 13:if(ae|=1,t){g++;continue}else return Le===13&&g+1=0&&Wn(Re,e))return g+=3,ae|=8,$=fn()+an(),F=mr();let ot=Ut();return ot>=0&&Wn(ot,e)?(g+=6,ae|=1024,$=String.fromCharCode(ot)+an(),F=mr()):(Ne(ve.Invalid_character),g++,F=0);case 35:if(g!==0&&A[g+1]==="!")return Ne(ve.can_only_be_used_at_the_start_of_a_file),g++,F=0;let Ct=ii(A,g+1);if(Ct===92){g++;let Mr=kn();if(Mr>=0&&Wn(Mr,e))return g+=3,ae|=8,$="#"+fn()+an(),F=80;let gr=Ut();if(gr>=0&&Wn(gr,e))return g+=6,ae|=1024,$="#"+String.fromCharCode(gr)+an(),F=80;g--}return Wn(Ct,e)?(g++,_r(Ct,e)):($="#",Ne(ve.Invalid_character,g++,yi(Le))),F=80;default:let Mt=_r(Le,e);if(Mt)return F=Mt;if(N_(Le)){g+=yi(Le);continue}else if(un(Le)){ae|=1,g+=yi(Le);continue}let It=yi(Le);return Ne(ve.Invalid_character,g,It),g+=It,F=0}}}function Gr(){Y.assert(F===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),g=X=N,ae=0;let xe=ii(A,g),Le=_r(xe,99);return Le?F=Le:(g+=yi(xe),F)}function _r(xe,Le){let Re=xe;if(Wn(Re,Le)){for(g+=yi(Re);g0&&arguments[0]!==void 0?arguments[0]:!0;return g=X=N,F=On(xe)}function cr(){return F===47?(g=X+1,F=29):F}function $r(){return F===80?(g=X+1,F=62):F}function hr(){return Y.assert(F===60,"'reScanQuestionToken' should only be called on a '??'"),g=X+1,F=57}function On(){let xe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;if(N=X=g,g>=B)return F=1;let Le=A.charCodeAt(g);if(Le===60)return A.charCodeAt(g+1)===47?(g+=2,F=30):(g++,F=29);if(Le===123)return g++,F=18;let Re=0;for(;g0)break;os(Le)||(Re=g)}g++}return $=A.substring(N,g),Re===-1?12:11}function nr(){if(fr(F)){let xe=!1;for(;g=B)return F=1;let xe=ii(A,g);switch(g+=yi(xe),xe){case 9:case 11:case 12:case 32:for(;g=0&&Wn(Le,e))return g+=3,ae|=8,$=fn()+an(),F=mr();let Re=Ut();return Re>=0&&Wn(Re,e)?(g+=6,ae|=1024,$=String.fromCharCode(Re)+an(),F=mr()):(g++,F=0)}if(Wn(xe,e)){let Le=xe;for(;g=0),g=xe,N=xe,X=xe,F=0,$=void 0,ae=0}function zt(xe){Se+=xe?1:-1}}function yi(e){return e>=65536?2:1}function mA(e){if(Y.assert(0<=e&&e<=1114111),e<=65535)return String.fromCharCode(e);let t=Math.floor((e-65536)/1024)+55296,r=(e-65536)%1024+56320;return String.fromCharCode(t,r)}function by(e){return iS(e)}var cl,$T,Ty,KT,XT,YT,QT,ZT,eS,tS,rS,nS,ll,Qp,ii,iS,hA=D({"src/compiler/scanner.ts"(){"use strict";nn(),cl={abstract:126,accessor:127,any:131,as:128,asserts:129,assert:130,bigint:160,boolean:134,break:81,case:82,catch:83,class:84,continue:86,const:85,constructor:135,debugger:87,declare:136,default:88,delete:89,do:90,else:91,enum:92,export:93,extends:94,false:95,finally:96,for:97,from:158,function:98,get:137,if:99,implements:117,import:100,in:101,infer:138,instanceof:102,interface:118,intrinsic:139,is:140,keyof:141,let:119,module:142,namespace:143,never:144,new:103,null:104,number:148,object:149,package:120,private:121,protected:122,public:123,override:161,out:145,readonly:146,require:147,global:159,return:105,satisfies:150,set:151,static:124,string:152,super:106,switch:107,symbol:153,this:108,throw:109,true:110,try:111,type:154,typeof:112,undefined:155,unique:156,unknown:157,var:113,void:114,while:115,with:116,yield:125,async:132,await:133,of:162},$T=new Map(Object.entries(cl)),Ty=new Map(Object.entries(Object.assign(Object.assign({},cl),{},{"{":18,"}":19,"(":20,")":21,"[":22,"]":23,".":24,"...":25,";":26,",":27,"<":29,">":31,"<=":32,">=":33,"==":34,"!=":35,"===":36,"!==":37,"=>":38,"+":39,"-":40,"**":42,"*":41,"/":43,"%":44,"++":45,"--":46,"<<":47,">":48,">>>":49,"&":50,"|":51,"^":52,"!":53,"~":54,"&&":55,"||":56,"?":57,"??":60,"?.":28,":":58,"=":63,"+=":64,"-=":65,"*=":66,"**=":67,"/=":68,"%=":69,"<<=":70,">>=":71,">>>=":72,"&=":73,"|=":74,"^=":78,"||=":75,"&&=":76,"??=":77,"@":59,"#":62,"`":61}))),KT=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1569,1594,1600,1610,1649,1747,1749,1749,1765,1766,1786,1788,1808,1808,1810,1836,1920,1957,2309,2361,2365,2365,2384,2384,2392,2401,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2784,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2877,2877,2908,2909,2911,2913,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3294,3294,3296,3297,3333,3340,3342,3344,3346,3368,3370,3385,3424,3425,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3946,3976,3979,4096,4129,4131,4135,4137,4138,4176,4181,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6067,6176,6263,6272,6312,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8319,8319,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12329,12337,12341,12344,12346,12353,12436,12445,12446,12449,12538,12540,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65138,65140,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],XT=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,768,846,864,866,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1155,1158,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1425,1441,1443,1465,1467,1469,1471,1471,1473,1474,1476,1476,1488,1514,1520,1522,1569,1594,1600,1621,1632,1641,1648,1747,1749,1756,1759,1768,1770,1773,1776,1788,1808,1836,1840,1866,1920,1968,2305,2307,2309,2361,2364,2381,2384,2388,2392,2403,2406,2415,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2524,2525,2527,2531,2534,2545,2562,2562,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2649,2652,2654,2654,2662,2676,2689,2691,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2784,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2876,2883,2887,2888,2891,2893,2902,2903,2908,2909,2911,2913,2918,2927,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3006,3010,3014,3016,3018,3021,3031,3031,3047,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3134,3140,3142,3144,3146,3149,3157,3158,3168,3169,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3262,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3297,3302,3311,3330,3331,3333,3340,3342,3344,3346,3368,3370,3385,3390,3395,3398,3400,3402,3405,3415,3415,3424,3425,3430,3439,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3805,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3946,3953,3972,3974,3979,3984,3991,3993,4028,4038,4038,4096,4129,4131,4135,4137,4138,4140,4146,4150,4153,4160,4169,4176,4185,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,4969,4977,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6099,6112,6121,6160,6169,6176,6263,6272,6313,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8319,8319,8400,8412,8417,8417,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12335,12337,12341,12344,12346,12353,12436,12441,12442,12445,12446,12449,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65056,65059,65075,65076,65101,65103,65136,65138,65140,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500],YT=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],QT=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],ZT=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2208,2228,2230,2237,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42943,42946,42950,42999,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69376,69404,69415,69415,69424,69445,69600,69622,69635,69687,69763,69807,69840,69864,69891,69926,69956,69956,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70751,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71680,71723,71840,71903,71935,71935,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72384,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,123136,123180,123191,123197,123214,123214,123584,123627,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101],eS=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2208,2228,2230,2237,2259,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3162,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3328,3331,3333,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7673,7675,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42943,42946,42950,42999,43047,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69376,69404,69415,69415,69424,69456,69600,69622,69632,69702,69734,69743,69759,69818,69840,69864,69872,69881,69888,69940,69942,69951,69956,69958,69968,70003,70006,70006,70016,70084,70089,70092,70096,70106,70108,70108,70144,70161,70163,70199,70206,70206,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70751,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71680,71738,71840,71913,71935,71935,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72384,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92768,92777,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,123136,123180,123184,123197,123200,123209,123214,123214,123584,123641,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101,917760,917999],tS=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,rS=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,nS=cA(Ty),ll=7,Qp=/^#!.*/,ii=String.prototype.codePointAt?(e,t)=>e.codePointAt(t):function(t,r){let s=t.length;if(r<0||r>=s)return;let f=t.charCodeAt(r);if(f>=55296&&f<=56319&&s>r+1){let x=t.charCodeAt(r+1);if(x>=56320&&x<=57343)return(f-55296)*1024+x-56320+65536}return f},iS=String.fromCodePoint?e=>String.fromCodePoint(e):mA}});function gA(e){return So(e)||A_(e)}function yA(e){return uo(e,av)}function aS(e){switch(Uf(e)){case 99:return"lib.esnext.full.d.ts";case 9:return"lib.es2022.full.d.ts";case 8:return"lib.es2021.full.d.ts";case 7:return"lib.es2020.full.d.ts";case 6:return"lib.es2019.full.d.ts";case 5:return"lib.es2018.full.d.ts";case 4:return"lib.es2017.full.d.ts";case 3:return"lib.es2016.full.d.ts";case 2:return"lib.es6.d.ts";default:return"lib.d.ts"}}function Ir(e){return e.start+e.length}function sS(e){return e.length===0}function vA(e,t){return t>=e.start&&t=e.pos&&t<=e.end}function TA(e,t){return t.start>=e.start&&Ir(t)<=Ir(e)}function SA(e,t){return oS(e,t)!==void 0}function oS(e,t){let r=_S(e,t);return r&&r.length===0?void 0:r}function xA(e,t){return Sy(e.start,e.length,t.start,t.length)}function EA(e,t,r){return Sy(e.start,e.length,t,r)}function Sy(e,t,r,s){let f=e+t,x=r+s;return r<=f&&x>=e}function wA(e,t){return t<=Ir(e)&&t>=e.start}function _S(e,t){let r=Math.max(e.start,t.start),s=Math.min(Ir(e),Ir(t));return r<=s?ha(r,s):void 0}function L_(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function ha(e,t){return L_(e,t-e)}function R_(e){return L_(e.span.start,e.newLength)}function cS(e){return sS(e.span)&&e.newLength===0}function Zp(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}function CA(e){if(e.length===0)return Vy;if(e.length===1)return e[0];let t=e[0],r=t.span.start,s=Ir(t.span),f=r+t.newLength;for(let x=1;xt.flags)}function DA(e,t,r){let s=e.toLowerCase(),f=/^([a-z]+)([_\-]([a-z]+))?$/.exec(s);if(!f){r&&r.push(Ol(ve.Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1,"en","ja-jp"));return}let x=f[1],w=f[3];pe(Hy,s)&&!A(x,w,r)&&A(x,void 0,r),xp(e);function A(g,B,N){let X=Un(t.getExecutingFilePath()),F=ma(X),$=tn(F,g);if(B&&($=$+"-"+B),$=t.resolvePath(tn($,"diagnosticMessages.generated.json")),!t.fileExists($))return!1;let ae="";try{ae=t.readFile($)}catch{return N&&N.push(Ol(ve.Unable_to_open_file_0,$)),!1}try{yx(JSON.parse(ae))}catch{return N&&N.push(Ol(ve.Corrupted_locale_file_0,$)),!1}return!0}}function ul(e,t){if(e)for(;e.original!==void 0;)e=e.original;return!e||!t||t(e)?e:void 0}function zi(e,t){for(;e;){let r=t(e);if(r==="quit")return;if(r)return e;e=e.parent}}function pl(e){return(e.flags&8)===0}function fl(e,t){if(e===void 0||pl(e))return e;for(e=e.original;e;){if(pl(e))return!t||t(e)?e:void 0;e=e.original}}function vi(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}function dl(e){let t=e;return t.length>=3&&t.charCodeAt(0)===95&&t.charCodeAt(1)===95&&t.charCodeAt(2)===95?t.substr(1):t}function qr(e){return dl(e.escapedText)}function dS(e){let t=_l(e.escapedText);return t?ln(t,ba):void 0}function rf(e){return e.valueDeclaration&&zS(e.valueDeclaration)?qr(e.valueDeclaration.name):dl(e.escapedName)}function mS(e){let t=e.parent.parent;if(t){if(ko(t))return nf(t);switch(t.kind){case 240:if(t.declarationList&&t.declarationList.declarations[0])return nf(t.declarationList.declarations[0]);break;case 241:let r=t.expression;switch(r.kind===223&&r.operatorToken.kind===63&&(r=r.left),r.kind){case 208:return r.name;case 209:let s=r.argumentExpression;if(yt(s))return s}break;case 214:return nf(t.expression);case 253:{if(ko(t.statement)||mf(t.statement))return nf(t.statement);break}}}}function nf(e){let t=ml(e);return t&&yt(t)?t:void 0}function hS(e,t){return!!(af(e)&&yt(e.name)&&qr(e.name)===qr(t)||zo(e)&&Ke(e.declarationList.declarations,r=>hS(r,t)))}function gS(e){return e.name||mS(e)}function af(e){return!!e.name}function Ey(e){switch(e.kind){case 79:return e;case 351:case 344:{let{name:r}=e;if(r.kind===163)return r.right;break}case 210:case 223:{let r=e;switch(ps(r)){case 1:case 4:case 5:case 3:return Cf(r.left);case 7:case 8:case 9:return r.arguments[1];default:return}}case 349:return gS(e);case 343:return mS(e);case 274:{let{expression:r}=e;return yt(r)?r:void 0}case 209:let t=e;if(x0(t))return t.argumentExpression}return e.name}function ml(e){if(e!==void 0)return Ey(e)||(ad(e)||sd(e)||_d(e)?yS(e):void 0)}function yS(e){if(e.parent){if(lc(e.parent)||Xl(e.parent))return e.parent.name;if(ur(e.parent)&&e===e.parent.right){if(yt(e.parent.left))return e.parent.left;if(Lo(e.parent.left))return Cf(e.parent.left)}else if(Vi(e.parent)&&yt(e.parent.name))return e.parent.name}else return}function kA(e){if(Il(e))return ee(e.modifiers,zl)}function sf(e){if(rn(e,126975))return ee(e.modifiers,Oy)}function vS(e,t){if(e.name)if(yt(e.name)){let r=e.name.escapedText;return j_(e.parent,t).filter(s=>pc(s)&&yt(s.name)&&s.name.escapedText===r)}else{let r=e.parent.parameters.indexOf(e);Y.assert(r>-1,"Parameters should always be in their parents' parameter list");let s=j_(e.parent,t).filter(pc);if(rGo(s)&&s.typeParameters.some(f=>f.name.escapedText===r))}function SS(e){return TS(e,!1)}function xS(e){return TS(e,!0)}function IA(e){return!!Nr(e,pc)}function ES(e){return Nr(e,md)}function wS(e){return MS(e,hE)}function NA(e){return Nr(e,pE)}function OA(e){return Nr(e,d2)}function CS(e){return Nr(e,d2,!0)}function MA(e){return Nr(e,m2)}function AS(e){return Nr(e,m2,!0)}function LA(e){return Nr(e,h2)}function PS(e){return Nr(e,h2,!0)}function RA(e){return Nr(e,g2)}function DS(e){return Nr(e,g2,!0)}function kS(e){return Nr(e,fE,!0)}function jA(e){return Nr(e,v2)}function IS(e){return Nr(e,v2,!0)}function JA(e){return Nr(e,dE)}function FA(e){return Nr(e,mE)}function NS(e){return Nr(e,b2)}function BA(e){return Nr(e,Go)}function wy(e){return Nr(e,T2)}function _f(e){let t=Nr(e,au);if(t&&t.typeExpression&&t.typeExpression.type)return t}function cf(e){let t=Nr(e,au);return!t&&Vs(e)&&(t=Ae(of(e),r=>!!r.typeExpression)),t&&t.typeExpression&&t.typeExpression.type}function OS(e){let t=NS(e);if(t&&t.typeExpression)return t.typeExpression.type;let r=_f(e);if(r&&r.typeExpression){let s=r.typeExpression.type;if(id(s)){let f=Ae(s.members,Vv);return f&&f.type}if($l(s)||dd(s))return s.type}}function j_(e,t){var r,s;if(!Af(e))return Bt;let f=(r=e.jsDoc)==null?void 0:r.jsDocCache;if(f===void 0||t){let x=r4(e,t);Y.assert(x.length<2||x[0]!==x[1]),f=ne(x,w=>Ho(w)?w.tags:w),t||((s=e.jsDoc)!=null||(e.jsDoc=[]),e.jsDoc.jsDocCache=f)}return f}function hl(e){return j_(e,!1)}function qA(e){return j_(e,!0)}function Nr(e,t,r){return Ae(j_(e,r),t)}function MS(e,t){return hl(e).filter(t)}function UA(e,t){return hl(e).filter(r=>r.kind===t)}function zA(e){return typeof e=="string"?e:e==null?void 0:e.map(t=>t.kind===324?t.text:WA(t)).join("")}function WA(e){let t=e.kind===327?"link":e.kind===328?"linkcode":"linkplain",r=e.name?ls(e.name):"",s=e.name&&e.text.startsWith("://")?"":" ";return`{@${t} ${r}${s}${e.text}}`}function VA(e){if(iu(e)){if(y2(e.parent)){let t=P0(e.parent);if(t&&I(t.tags))return ne(t.tags,r=>Go(r)?r.typeParameters:void 0)}return Bt}if(Cl(e))return Y.assert(e.parent.kind===323),ne(e.parent.tags,t=>Go(t)?t.typeParameters:void 0);if(e.typeParameters||IE(e)&&e.typeParameters)return e.typeParameters;if(Pr(e)){let t=F4(e);if(t.length)return t;let r=cf(e);if(r&&$l(r)&&r.typeParameters)return r.typeParameters}return Bt}function HA(e){return e.constraint?e.constraint:Go(e.parent)&&e===e.parent.typeParameters[0]?e.parent.constraint:void 0}function js(e){return e.kind===79||e.kind===80}function GA(e){return e.kind===175||e.kind===174}function LS(e){return bn(e)&&!!(e.flags&32)}function RS(e){return gs(e)&&!!(e.flags&32)}function Cy(e){return sc(e)&&!!(e.flags&32)}function Ay(e){let t=e.kind;return!!(e.flags&32)&&(t===208||t===209||t===210||t===232)}function Py(e){return Ay(e)&&!Uo(e)&&!!e.questionDotToken}function $A(e){return Py(e.parent)&&e.parent.expression===e}function KA(e){return!Ay(e.parent)||Py(e.parent)||e!==e.parent.expression}function XA(e){return e.kind===223&&e.operatorToken.kind===60}function jS(e){return ac(e)&&yt(e.typeName)&&e.typeName.escapedText==="const"&&!e.typeArguments}function lf(e){return $o(e,8)}function JS(e){return Uo(e)&&!!(e.flags&32)}function YA(e){return e.kind===249||e.kind===248}function QA(e){return e.kind===277||e.kind===276}function FS(e){switch(e.kind){case 305:case 306:return!0;default:return!1}}function ZA(e){return FS(e)||e.kind===303||e.kind===307}function Dy(e){return e.kind===351||e.kind===344}function eP(e){return gl(e.kind)}function gl(e){return e>=163}function BS(e){return e>=0&&e<=162}function tP(e){return BS(e.kind)}function _s(e){return Jr(e,"pos")&&Jr(e,"end")}function ky(e){return 8<=e&&e<=14}function Iy(e){return ky(e.kind)}function rP(e){switch(e.kind){case 207:case 206:case 13:case 215:case 228:return!0}return!1}function yl(e){return 14<=e&&e<=17}function nP(e){return yl(e.kind)}function iP(e){let t=e.kind;return t===16||t===17}function aP(e){return nE(e)||aE(e)}function qS(e){switch(e.kind){case 273:return e.isTypeOnly||e.parent.parent.isTypeOnly;case 271:return e.parent.isTypeOnly;case 270:case 268:return e.isTypeOnly}return!1}function US(e){switch(e.kind){case 278:return e.isTypeOnly||e.parent.parent.isTypeOnly;case 275:return e.isTypeOnly&&!!e.moduleSpecifier&&!e.exportClause;case 277:return e.parent.isTypeOnly}return!1}function sP(e){return qS(e)||US(e)}function oP(e){return Gn(e)||yt(e)}function _P(e){return e.kind===10||yl(e.kind)}function cs(e){var t;return yt(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function Ny(e){var t;return vn(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function zS(e){return(Bo(e)||Ly(e))&&vn(e.name)}function cP(e){return bn(e)&&vn(e.name)}function Wi(e){switch(e){case 126:case 127:case 132:case 85:case 136:case 88:case 93:case 101:case 123:case 121:case 122:case 146:case 124:case 145:case 161:return!0}return!1}function WS(e){return!!(Q0(e)&16476)}function VS(e){return WS(e)||e===124||e===161||e===127}function Oy(e){return Wi(e.kind)}function lP(e){let t=e.kind;return t===163||t===79}function vl(e){let t=e.kind;return t===79||t===80||t===10||t===8||t===164}function uP(e){let t=e.kind;return t===79||t===203||t===204}function ga(e){return!!e&&My(e.kind)}function uf(e){return!!e&&(My(e.kind)||Hl(e))}function HS(e){return e&&GS(e.kind)}function pP(e){return e.kind===110||e.kind===95}function GS(e){switch(e){case 259:case 171:case 173:case 174:case 175:case 215:case 216:return!0;default:return!1}}function My(e){switch(e){case 170:case 176:case 326:case 177:case 178:case 181:case 320:case 182:return!0;default:return GS(e)}}function fP(e){return wi(e)||rE(e)||Ql(e)&&ga(e.parent)}function Js(e){let t=e.kind;return t===173||t===169||t===171||t===174||t===175||t===178||t===172||t===237}function bi(e){return e&&(e.kind===260||e.kind===228)}function pf(e){return e&&(e.kind===174||e.kind===175)}function $S(e){return Bo(e)&&H4(e)}function Ly(e){switch(e.kind){case 171:case 174:case 175:return!0;default:return!1}}function dP(e){switch(e.kind){case 171:case 174:case 175:case 169:return!0;default:return!1}}function ff(e){return Oy(e)||zl(e)}function Ry(e){let t=e.kind;return t===177||t===176||t===168||t===170||t===178||t===174||t===175}function mP(e){return Ry(e)||Js(e)}function jy(e){let t=e.kind;return t===299||t===300||t===301||t===171||t===174||t===175}function Jy(e){return hx(e.kind)}function hP(e){switch(e.kind){case 181:case 182:return!0}return!1}function df(e){if(e){let t=e.kind;return t===204||t===203}return!1}function KS(e){let t=e.kind;return t===206||t===207}function gP(e){let t=e.kind;return t===205||t===229}function Fy(e){switch(e.kind){case 257:case 166:case 205:return!0}return!1}function yP(e){return Vi(e)||Vs(e)||YS(e)||ZS(e)}function vP(e){return XS(e)||QS(e)}function XS(e){switch(e.kind){case 203:case 207:return!0}return!1}function YS(e){switch(e.kind){case 205:case 299:case 300:case 301:return!0}return!1}function QS(e){switch(e.kind){case 204:case 206:return!0}return!1}function ZS(e){switch(e.kind){case 205:case 229:case 227:case 206:case 207:case 79:case 208:case 209:return!0}return ms(e,!0)}function bP(e){let t=e.kind;return t===208||t===163||t===202}function TP(e){let t=e.kind;return t===208||t===163}function SP(e){switch(e.kind){case 283:case 282:case 210:case 211:case 212:case 167:return!0;default:return!1}}function xP(e){return e.kind===210||e.kind===211}function EP(e){let t=e.kind;return t===225||t===14}function Do(e){return e3(lf(e).kind)}function e3(e){switch(e){case 208:case 209:case 211:case 210:case 281:case 282:case 285:case 212:case 206:case 214:case 207:case 228:case 215:case 79:case 80:case 13:case 8:case 9:case 10:case 14:case 225:case 95:case 104:case 108:case 110:case 106:case 232:case 230:case 233:case 100:case 279:return!0;default:return!1}}function t3(e){return r3(lf(e).kind)}function r3(e){switch(e){case 221:case 222:case 217:case 218:case 219:case 220:case 213:return!0;default:return e3(e)}}function wP(e){switch(e.kind){case 222:return!0;case 221:return e.operator===45||e.operator===46;default:return!1}}function CP(e){switch(e.kind){case 104:case 110:case 95:case 221:return!0;default:return Iy(e)}}function mf(e){return AP(lf(e).kind)}function AP(e){switch(e){case 224:case 226:case 216:case 223:case 227:case 231:case 229:case 357:case 356:case 235:return!0;default:return r3(e)}}function PP(e){let t=e.kind;return t===213||t===231}function DP(e){return c2(e)||Z8(e)}function n3(e,t){switch(e.kind){case 245:case 246:case 247:case 243:case 244:return!0;case 253:return t&&n3(e.statement,t)}return!1}function i3(e){return Vo(e)||cc(e)}function kP(e){return Ke(e,i3)}function IP(e){return!bf(e)&&!Vo(e)&&!rn(e,1)&&!yf(e)}function NP(e){return bf(e)||Vo(e)||rn(e,1)}function OP(e){return e.kind===246||e.kind===247}function MP(e){return Ql(e)||mf(e)}function LP(e){return Ql(e)}function RP(e){return r2(e)||mf(e)}function jP(e){let t=e.kind;return t===265||t===264||t===79}function JP(e){let t=e.kind;return t===265||t===264}function FP(e){let t=e.kind;return t===79||t===264}function BP(e){let t=e.kind;return t===272||t===271}function qP(e){return e.kind===264||e.kind===263}function UP(e){switch(e.kind){case 216:case 223:case 205:case 210:case 176:case 260:case 228:case 172:case 173:case 182:case 177:case 209:case 263:case 302:case 274:case 275:case 278:case 259:case 215:case 181:case 174:case 79:case 270:case 268:case 273:case 178:case 261:case 341:case 343:case 320:case 344:case 351:case 326:case 349:case 325:case 288:case 289:case 290:case 197:case 171:case 170:case 264:case 199:case 277:case 267:case 271:case 211:case 14:case 8:case 207:case 166:case 208:case 299:case 169:case 168:case 175:case 300:case 308:case 301:case 10:case 262:case 184:case 165:case 257:return!0;default:return!1}}function zP(e){switch(e.kind){case 216:case 238:case 176:case 266:case 295:case 172:case 191:case 173:case 182:case 177:case 245:case 246:case 247:case 259:case 215:case 181:case 174:case 178:case 341:case 343:case 320:case 326:case 349:case 197:case 171:case 170:case 264:case 175:case 308:case 262:return!0;default:return!1}}function WP(e){return e===216||e===205||e===260||e===228||e===172||e===173||e===263||e===302||e===278||e===259||e===215||e===174||e===270||e===268||e===273||e===261||e===288||e===171||e===170||e===264||e===267||e===271||e===277||e===166||e===299||e===169||e===168||e===175||e===300||e===262||e===165||e===257||e===349||e===341||e===351}function By(e){return e===259||e===279||e===260||e===261||e===262||e===263||e===264||e===269||e===268||e===275||e===274||e===267}function qy(e){return e===249||e===248||e===256||e===243||e===241||e===239||e===246||e===247||e===245||e===242||e===253||e===250||e===252||e===254||e===255||e===240||e===244||e===251||e===355||e===359||e===358}function ko(e){return e.kind===165?e.parent&&e.parent.kind!==348||Pr(e):WP(e.kind)}function VP(e){return By(e.kind)}function HP(e){return qy(e.kind)}function a3(e){let t=e.kind;return qy(t)||By(t)||GP(e)}function GP(e){return e.kind!==238||e.parent!==void 0&&(e.parent.kind===255||e.parent.kind===295)?!1:!O3(e)}function s3(e){let t=e.kind;return qy(t)||By(t)||t===238}function $P(e){let t=e.kind;return t===280||t===163||t===79}function KP(e){let t=e.kind;return t===108||t===79||t===208}function o3(e){let t=e.kind;return t===281||t===291||t===282||t===11||t===285}function XP(e){let t=e.kind;return t===288||t===290}function YP(e){let t=e.kind;return t===10||t===291}function _3(e){let t=e.kind;return t===283||t===282}function QP(e){let t=e.kind;return t===292||t===293}function Uy(e){return e.kind>=312&&e.kind<=353}function c3(e){return e.kind===323||e.kind===322||e.kind===324||Sl(e)||zy(e)||f2(e)||iu(e)}function zy(e){return e.kind>=330&&e.kind<=353}function bl(e){return e.kind===175}function Tl(e){return e.kind===174}function ya(e){if(!Af(e))return!1;let{jsDoc:t}=e;return!!t&&t.length>0}function ZP(e){return!!e.type}function l3(e){return!!e.initializer}function eD(e){switch(e.kind){case 257:case 166:case 205:case 169:case 299:case 302:return!0;default:return!1}}function Wy(e){return e.kind===288||e.kind===290||jy(e)}function tD(e){return e.kind===180||e.kind===230}function rD(e){let t=Gy;for(let r of e){if(!r.length)continue;let s=0;for(;sr.kind===t)}function oD(e){let t=new Map;if(e)for(let r of e)t.set(r.escapedName,r);return t}function $y(e){return(e.flags&33554432)!==0}function _D(){var e="";let t=r=>e+=r;return{getText:()=>e,write:t,rawWrite:t,writeKeyword:t,writeOperator:t,writePunctuation:t,writeSpace:t,writeStringLiteral:t,writeLiteral:t,writeParameter:t,writeProperty:t,writeSymbol:(r,s)=>t(r),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&os(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:yn,decreaseIndent:yn,clear:()=>e=""}}function cD(e,t){return e.configFilePath!==t.configFilePath||p3(e,t)}function p3(e,t){return J_(e,t,moduleResolutionOptionDeclarations)}function lD(e,t){return J_(e,t,optionsAffectingProgramStructure)}function J_(e,t,r){return e!==t&&r.some(s=>!gv(uv(e,s),uv(t,s)))}function uD(e,t){for(;;){let r=t(e);if(r==="quit")return;if(r!==void 0)return r;if(wi(e))return;e=e.parent}}function pD(e,t){let r=e.entries();for(let[s,f]of r){let x=t(f,s);if(x)return x}}function fD(e,t){let r=e.keys();for(let s of r){let f=t(s);if(f)return f}}function dD(e,t){e.forEach((r,s)=>{t.set(s,r)})}function mD(e){let t=Z_.getText();try{return e(Z_),Z_.getText()}finally{Z_.clear(),Z_.writeKeyword(t)}}function hf(e){return e.end-e.pos}function hD(e,t,r){var s,f;return(f=(s=e==null?void 0:e.resolvedModules)==null?void 0:s.get(t,r))==null?void 0:f.resolvedModule}function gD(e,t,r,s){e.resolvedModules||(e.resolvedModules=createModeAwareCache()),e.resolvedModules.set(t,s,r)}function yD(e,t,r,s){e.resolvedTypeReferenceDirectiveNames||(e.resolvedTypeReferenceDirectiveNames=createModeAwareCache()),e.resolvedTypeReferenceDirectiveNames.set(t,s,r)}function vD(e,t,r){var s,f;return(f=(s=e==null?void 0:e.resolvedTypeReferenceDirectiveNames)==null?void 0:s.get(t,r))==null?void 0:f.resolvedTypeReferenceDirective}function bD(e,t){return e.path===t.path&&!e.prepend==!t.prepend&&!e.circular==!t.circular}function TD(e,t){return e===t||e.resolvedModule===t.resolvedModule||!!e.resolvedModule&&!!t.resolvedModule&&e.resolvedModule.isExternalLibraryImport===t.resolvedModule.isExternalLibraryImport&&e.resolvedModule.extension===t.resolvedModule.extension&&e.resolvedModule.resolvedFileName===t.resolvedModule.resolvedFileName&&e.resolvedModule.originalPath===t.resolvedModule.originalPath&&SD(e.resolvedModule.packageId,t.resolvedModule.packageId)}function SD(e,t){return e===t||!!e&&!!t&&e.name===t.name&&e.subModuleName===t.subModuleName&&e.version===t.version}function f3(e){let{name:t,subModuleName:r}=e;return r?`${t}/${r}`:t}function xD(e){return`${f3(e)}@${e.version}`}function ED(e,t){return e===t||e.resolvedTypeReferenceDirective===t.resolvedTypeReferenceDirective||!!e.resolvedTypeReferenceDirective&&!!t.resolvedTypeReferenceDirective&&e.resolvedTypeReferenceDirective.resolvedFileName===t.resolvedTypeReferenceDirective.resolvedFileName&&!!e.resolvedTypeReferenceDirective.primary==!!t.resolvedTypeReferenceDirective.primary&&e.resolvedTypeReferenceDirective.originalPath===t.resolvedTypeReferenceDirective.originalPath}function wD(e,t,r,s,f,x){Y.assert(e.length===r.length);for(let w=0;w=0),ss(t)[e]}function ID(e){let t=Si(e),r=Ls(t,e.pos);return`${t.fileName}(${r.line+1},${r.character+1})`}function d3(e,t){Y.assert(e>=0);let r=ss(t),s=e,f=t.text;if(s+1===r.length)return f.length-1;{let x=r[s],w=r[s+1]-1;for(Y.assert(un(f.charCodeAt(w)));x<=w&&un(f.charCodeAt(w));)w--;return w}}function m3(e,t,r){return!(r&&r(t))&&!e.identifiers.has(t)}function va(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function xl(e){return!va(e)}function ND(e,t){return Fo(e)?t===e.expression:Hl(e)?t===e.modifiers:Wl(e)?t===e.initializer:Bo(e)?t===e.questionToken&&$S(e):lc(e)?t===e.modifiers||t===e.questionToken||t===e.exclamationToken||F_(e.modifiers,t,ff):nu(e)?t===e.equalsToken||t===e.modifiers||t===e.questionToken||t===e.exclamationToken||F_(e.modifiers,t,ff):Vl(e)?t===e.exclamationToken:nc(e)?t===e.typeParameters||t===e.type||F_(e.typeParameters,t,Fo):Gl(e)?t===e.typeParameters||F_(e.typeParameters,t,Fo):ic(e)?t===e.typeParameters||t===e.type||F_(e.typeParameters,t,Fo):a2(e)?t===e.modifiers||F_(e.modifiers,t,ff):!1}function F_(e,t,r){return!e||ir(t)||!r(t)?!1:pe(e,t)}function h3(e,t,r){if(t===void 0||t.length===0)return e;let s=0;for(;s[`${Ls(e,w.range.end).line}`,w])),s=new Map;return{getUnusedExpectations:f,markUsed:x};function f(){return Za(r.entries()).filter(w=>{let[A,g]=w;return g.type===0&&!s.get(A)}).map(w=>{let[A,g]=w;return g})}function x(w){return r.has(`${w}`)?(s.set(`${w}`,!0),!0):!1}}function Io(e,t,r){return va(e)?e.pos:Uy(e)||e.kind===11?Ar((t||Si(e)).text,e.pos,!1,!0):r&&ya(e)?Io(e.jsDoc[0],t):e.kind===354&&e._children.length>0?Io(e._children[0],t,r):Ar((t||Si(e)).text,e.pos,!1,!1,q3(e))}function FD(e,t){let r=!va(e)&&fc(e)?te(e.modifiers,zl):void 0;return r?Ar((t||Si(e)).text,r.end):Io(e,t)}function No(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return B_(e.text,t,r)}function BD(e){return!!zi(e,lE)}function b3(e){return!!(cc(e)&&e.exportClause&&ld(e.exportClause)&&e.exportClause.name.escapedText==="default")}function B_(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(va(t))return"";let s=e.substring(r?t.pos:Ar(e,t.pos),t.end);return BD(t)&&(s=s.split(/\r\n|\n|\r/).map(f=>nl(f.replace(/^\s*\*/,""))).join(` +`)),s}function gf(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return No(Si(e),e,t)}function qD(e){return e.pos}function UD(e,t){return Ya(e,t,qD,Vr)}function xi(e){let t=e.emitNode;return t&&t.flags||0}function zD(e){let t=e.emitNode;return t&&t.internalFlags||0}function WD(e,t,r){var s;if(t&&VD(e,r))return No(t,e);switch(e.kind){case 10:{let f=r&2?A4:r&1||xi(e)&33554432?Nf:Of;return e.singleQuote?"'"+f(e.text,39)+"'":'"'+f(e.text,34)+'"'}case 14:case 15:case 16:case 17:{let f=r&1||xi(e)&33554432?Nf:Of,x=(s=e.rawText)!=null?s:SN(f(e.text,96));switch(e.kind){case 14:return"`"+x+"`";case 15:return"`"+x+"${";case 16:return"}"+x+"${";case 17:return"}"+x+"`"}break}case 8:case 9:return e.text;case 13:return r&4&&e.isUnterminated?e.text+(e.text.charCodeAt(e.text.length-1)===92?" /":"/"):e.text}return Y.fail(`Literal kind '${e.kind}' not accounted for.`)}function VD(e,t){return fs(e)||!e.parent||t&4&&e.isUnterminated?!1:zs(e)&&e.numericLiteralFlags&512?!!(t&8):!Uv(e)}function HD(e){return Ji(e)?'"'+Of(e)+'"':""+e}function GD(e){return sl(e).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function $D(e){return(tf(e)&3)!==0||T3(e)}function T3(e){let t=If(e);return t.kind===257&&t.parent.kind===295}function yf(e){return Ea(e)&&(e.name.kind===10||vf(e))}function KD(e){return Ea(e)&&e.name.kind===10}function XD(e){return Ea(e)&&Gn(e.name)}function S3(e){return Ea(e)||yt(e)}function YD(e){return QD(e.valueDeclaration)}function QD(e){return!!e&&e.kind===264&&!e.body}function ZD(e){return e.kind===308||e.kind===264||uf(e)}function vf(e){return!!(e.flags&1024)}function Xy(e){return yf(e)&&x3(e)}function x3(e){switch(e.parent.kind){case 308:return Qo(e.parent);case 265:return yf(e.parent.parent)&&wi(e.parent.parent.parent)&&!Qo(e.parent.parent.parent)}return!1}function E3(e){var t;return(t=e.declarations)==null?void 0:t.find(r=>!Xy(r)&&!(Ea(r)&&vf(r)))}function ek(e){return e===1||e===100||e===199}function Yy(e,t){return Qo(e)||zf(t)||ek(Ei(t))&&!!e.commonJsModuleIndicator}function tk(e,t){switch(e.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return e.isDeclarationFile?!1:lv(t,"alwaysStrict")||SE(e.statements)?!0:Qo(e)||zf(t)?Ei(t)>=5?!0:!t.noImplicitUseStrict:!1}function rk(e){return!!(e.flags&16777216)||rn(e,2)}function w3(e,t){switch(e.kind){case 308:case 266:case 295:case 264:case 245:case 246:case 247:case 173:case 171:case 174:case 175:case 259:case 215:case 216:case 169:case 172:return!0;case 238:return!uf(t)}return!1}function nk(e){switch(Y.type(e),e.kind){case 341:case 349:case 326:return!0;default:return C3(e)}}function C3(e){switch(Y.type(e),e.kind){case 176:case 177:case 170:case 178:case 181:case 182:case 320:case 260:case 228:case 261:case 262:case 348:case 259:case 171:case 173:case 174:case 175:case 215:case 216:return!0;default:return!1}}function Qy(e){switch(e.kind){case 269:case 268:return!0;default:return!1}}function ik(e){return Qy(e)||Ef(e)}function ak(e){switch(e.kind){case 269:case 268:case 240:case 260:case 259:case 264:case 262:case 261:case 263:return!0;default:return!1}}function sk(e){return bf(e)||Ea(e)||Kl(e)||s0(e)}function bf(e){return Qy(e)||cc(e)}function Zy(e){return zi(e.parent,t=>w3(t,t.parent))}function ok(e,t){let r=Zy(e);for(;r;)t(r),r=Zy(r)}function A3(e){return!e||hf(e)===0?"(Missing)":gf(e)}function _k(e){return e.declaration?A3(e.declaration.parameters[0].name):void 0}function ck(e){return e.kind===164&&!Ta(e.expression)}function e0(e){var t;switch(e.kind){case 79:case 80:return(t=e.emitNode)!=null&&t.autoGenerate?void 0:e.escapedText;case 10:case 8:case 14:return vi(e.text);case 164:return Ta(e.expression)?vi(e.expression.text):void 0;default:return Y.assertNever(e)}}function lk(e){return Y.checkDefined(e0(e))}function ls(e){switch(e.kind){case 108:return"this";case 80:case 79:return hf(e)===0?qr(e):gf(e);case 163:return ls(e.left)+"."+ls(e.right);case 208:return yt(e.name)||vn(e.name)?ls(e.expression)+"."+ls(e.name):Y.assertNever(e.name);case 314:return ls(e.left)+ls(e.right);default:return Y.assertNever(e)}}function uk(e,t,r,s,f,x){let w=Si(e);return P3(w,e,t,r,s,f,x)}function pk(e,t,r,s,f,x,w){let A=Ar(e.text,t.pos);return iv(e,A,t.end-A,r,s,f,x,w)}function P3(e,t,r,s,f,x,w){let A=i0(e,t);return iv(e,A.start,A.length,r,s,f,x,w)}function fk(e,t,r,s){let f=i0(e,t);return r0(e,f.start,f.length,r,s)}function dk(e,t,r,s){let f=Ar(e.text,t.pos);return r0(e,f,t.end-f,r,s)}function t0(e,t,r){Y.assertGreaterThanOrEqual(t,0),Y.assertGreaterThanOrEqual(r,0),e&&(Y.assertLessThanOrEqual(t,e.text.length),Y.assertLessThanOrEqual(t+r,e.text.length))}function r0(e,t,r,s,f){return t0(e,t,r),{file:e,start:t,length:r,code:s.code,category:s.category,messageText:s.next?s:s.messageText,relatedInformation:f}}function mk(e,t,r){return{file:e,start:0,length:0,code:t.code,category:t.category,messageText:t.next?t:t.messageText,relatedInformation:r}}function hk(e){return typeof e.messageText=="string"?{code:e.code,category:e.category,messageText:e.messageText,next:e.next}:e.messageText}function gk(e,t,r){return{file:e,start:t.pos,length:t.end-t.pos,code:r.code,category:r.category,messageText:r.message}}function n0(e,t){let r=Po(e.languageVersion,!0,e.languageVariant,e.text,void 0,t);r.scan();let s=r.getTokenPos();return ha(s,r.getTextPos())}function yk(e,t){let r=Po(e.languageVersion,!0,e.languageVariant,e.text,void 0,t);return r.scan(),r.getToken()}function vk(e,t){let r=Ar(e.text,t.pos);if(t.body&&t.body.kind===238){let{line:s}=Ls(e,t.body.pos),{line:f}=Ls(e,t.body.end);if(s0?t.statements[0].pos:t.end;return ha(w,A)}if(r===void 0)return n0(e,t.pos);Y.assert(!Ho(r));let s=va(r),f=s||td(t)?r.pos:Ar(e.text,r.pos);return s?(Y.assert(f===r.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),Y.assert(f===r.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(Y.assert(f>=r.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),Y.assert(f<=r.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),ha(f,r.end)}function bk(e){return(e.externalModuleIndicator||e.commonJsModuleIndicator)!==void 0}function a0(e){return e.scriptKind===6}function Tk(e){return!!(ef(e)&2048)}function Sk(e){return!!(ef(e)&64&&!lS(e,e.parent))}function D3(e){return!!(tf(e)&2)}function xk(e){return!!(tf(e)&1)}function Ek(e){return e.kind===210&&e.expression.kind===106}function s0(e){return e.kind===210&&e.expression.kind===100}function o0(e){return t2(e)&&e.keywordToken===100&&e.name.escapedText==="meta"}function k3(e){return Kl(e)&&Yv(e.argument)&&Gn(e.argument.literal)}function us(e){return e.kind===241&&e.expression.kind===10}function Tf(e){return!!(xi(e)&2097152)}function _0(e){return Tf(e)&&Wo(e)}function wk(e){return yt(e.name)&&!e.initializer}function c0(e){return Tf(e)&&zo(e)&&me(e.declarationList.declarations,wk)}function Ck(e,t){return e.kind!==11?Ao(t.text,e.pos):void 0}function I3(e,t){let r=e.kind===166||e.kind===165||e.kind===215||e.kind===216||e.kind===214||e.kind===257||e.kind===278?Ft(HT(t,e.pos),Ao(t,e.pos)):Ao(t,e.pos);return ee(r,s=>t.charCodeAt(s.pos+1)===42&&t.charCodeAt(s.pos+2)===42&&t.charCodeAt(s.pos+3)!==47)}function l0(e){if(179<=e.kind&&e.kind<=202)return!0;switch(e.kind){case 131:case 157:case 148:case 160:case 152:case 134:case 153:case 149:case 155:case 144:return!0;case 114:return e.parent.kind!==219;case 230:return ru(e.parent)&&!Z0(e);case 165:return e.parent.kind===197||e.parent.kind===192;case 79:(e.parent.kind===163&&e.parent.right===e||e.parent.kind===208&&e.parent.name===e)&&(e=e.parent),Y.assert(e.kind===79||e.kind===163||e.kind===208,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 163:case 208:case 108:{let{parent:t}=e;if(t.kind===183)return!1;if(t.kind===202)return!t.isTypeOf;if(179<=t.kind&&t.kind<=202)return!0;switch(t.kind){case 230:return ru(t.parent)&&!Z0(t);case 165:return e===t.constraint;case 348:return e===t.constraint;case 169:case 168:case 166:case 257:return e===t.type;case 259:case 215:case 216:case 173:case 171:case 170:case 174:case 175:return e===t.type;case 176:case 177:case 178:return e===t.type;case 213:return e===t.type;case 210:case 211:return pe(t.typeArguments,e);case 212:return!1}}}return!1}function Ak(e,t){for(;e;){if(e.kind===t)return!0;e=e.parent}return!1}function Pk(e,t){return r(e);function r(s){switch(s.kind){case 250:return t(s);case 266:case 238:case 242:case 243:case 244:case 245:case 246:case 247:case 251:case 252:case 292:case 293:case 253:case 255:case 295:return xr(s,r)}}}function Dk(e,t){return r(e);function r(s){switch(s.kind){case 226:t(s);let f=s.expression;f&&r(f);return;case 263:case 261:case 264:case 262:return;default:if(ga(s)){if(s.name&&s.name.kind===164){r(s.name.expression);return}}else l0(s)||xr(s,r)}}}function kk(e){return e&&e.kind===185?e.elementType:e&&e.kind===180?Xa(e.typeArguments):void 0}function Ik(e){switch(e.kind){case 261:case 260:case 228:case 184:return e.members;case 207:return e.properties}}function u0(e){if(e)switch(e.kind){case 205:case 302:case 166:case 299:case 169:case 168:case 300:case 257:return!0}return!1}function Nk(e){return u0(e)||pf(e)}function N3(e){return e.parent.kind===258&&e.parent.parent.kind===240}function Ok(e){return Pr(e)?Hs(e.parent)&&ur(e.parent.parent)&&ps(e.parent.parent)===2||p0(e.parent):!1}function p0(e){return Pr(e)?ur(e)&&ps(e)===1:!1}function Mk(e){return(Vi(e)?D3(e)&&yt(e.name)&&N3(e):Bo(e)?$0(e)&&Lf(e):Wl(e)&&$0(e))||p0(e)}function Lk(e){switch(e.kind){case 171:case 170:case 173:case 174:case 175:case 259:case 215:return!0}return!1}function Rk(e,t){for(;;){if(t&&t(e),e.statement.kind!==253)return e.statement;e=e.statement}}function O3(e){return e&&e.kind===238&&ga(e.parent)}function jk(e){return e&&e.kind===171&&e.parent.kind===207}function Jk(e){return(e.kind===171||e.kind===174||e.kind===175)&&(e.parent.kind===207||e.parent.kind===228)}function Fk(e){return e&&e.kind===1}function Bk(e){return e&&e.kind===0}function f0(e,t,r){return e.properties.filter(s=>{if(s.kind===299){let f=e0(s.name);return t===f||!!r&&r===f}return!1})}function qk(e,t,r){return q(f0(e,t),s=>Yl(s.initializer)?Ae(s.initializer.elements,f=>Gn(f)&&f.text===r):void 0)}function M3(e){if(e&&e.statements.length){let t=e.statements[0].expression;return ln(t,Hs)}}function Uk(e,t,r){return q(L3(e,t),s=>Yl(s.initializer)?Ae(s.initializer.elements,f=>Gn(f)&&f.text===r):void 0)}function L3(e,t){let r=M3(e);return r?f0(r,t):Bt}function zk(e){return zi(e.parent,ga)}function Wk(e){return zi(e.parent,HS)}function Vk(e){return zi(e.parent,bi)}function Hk(e){return zi(e.parent,t=>bi(t)||ga(t)?"quit":Hl(t))}function Gk(e){return zi(e.parent,uf)}function d0(e,t,r){for(Y.assert(e.kind!==308);;){if(e=e.parent,!e)return Y.fail();switch(e.kind){case 164:if(r&&bi(e.parent.parent))return e;e=e.parent.parent;break;case 167:e.parent.kind===166&&Js(e.parent.parent)?e=e.parent.parent:Js(e.parent)&&(e=e.parent);break;case 216:if(!t)continue;case 259:case 215:case 264:case 172:case 169:case 168:case 171:case 170:case 173:case 174:case 175:case 176:case 177:case 178:case 263:case 308:return e}}}function $k(e){switch(e.kind){case 216:case 259:case 215:case 169:return!0;case 238:switch(e.parent.kind){case 173:case 171:case 174:case 175:return!0;default:return!1}default:return!1}}function Kk(e){yt(e)&&(_c(e.parent)||Wo(e.parent))&&e.parent.name===e&&(e=e.parent);let t=d0(e,!0,!1);return wi(t)}function Xk(e){let t=d0(e,!1,!1);if(t)switch(t.kind){case 173:case 259:case 215:return t}}function Yk(e,t){for(;;){if(e=e.parent,!e)return;switch(e.kind){case 164:e=e.parent;break;case 259:case 215:case 216:if(!t)continue;case 169:case 168:case 171:case 170:case 173:case 174:case 175:case 172:return e;case 167:e.parent.kind===166&&Js(e.parent.parent)?e=e.parent.parent:Js(e.parent)&&(e=e.parent);break}}}function Qk(e){if(e.kind===215||e.kind===216){let t=e,r=e.parent;for(;r.kind===214;)t=r,r=r.parent;if(r.kind===210&&r.expression===t)return r}}function Zk(e){return e.kind===106||Sf(e)}function Sf(e){let t=e.kind;return(t===208||t===209)&&e.expression.kind===106}function eI(e){let t=e.kind;return(t===208||t===209)&&e.expression.kind===108}function tI(e){var t;return!!e&&Vi(e)&&((t=e.initializer)==null?void 0:t.kind)===108}function rI(e){return!!e&&(nu(e)||lc(e))&&ur(e.parent.parent)&&e.parent.parent.operatorToken.kind===63&&e.parent.parent.right.kind===108}function nI(e){switch(e.kind){case 180:return e.typeName;case 230:return Bs(e.expression)?e.expression:void 0;case 79:case 163:return e}}function iI(e){switch(e.kind){case 212:return e.tag;case 283:case 282:return e.tagName;default:return e.expression}}function R3(e,t,r,s){if(e&&af(t)&&vn(t.name))return!1;switch(t.kind){case 260:return!0;case 228:return!e;case 169:return r!==void 0&&(e?_c(r):bi(r)&&!W4(t)&&!V4(t));case 174:case 175:case 171:return t.body!==void 0&&r!==void 0&&(e?_c(r):bi(r));case 166:return e?r!==void 0&&r.body!==void 0&&(r.kind===173||r.kind===171||r.kind===175)&&j4(r)!==t&&s!==void 0&&s.kind===260:!1}return!1}function q_(e,t,r,s){return Il(t)&&R3(e,t,r,s)}function m0(e,t,r,s){return q_(e,t,r,s)||h0(e,t,r)}function h0(e,t,r){switch(t.kind){case 260:return Ke(t.members,s=>m0(e,s,t,r));case 228:return!e&&Ke(t.members,s=>m0(e,s,t,r));case 171:case 175:case 173:return Ke(t.parameters,s=>q_(e,s,t,r));default:return!1}}function aI(e,t){if(q_(e,t))return!0;let r=R4(t);return!!r&&h0(e,r,t)}function sI(e,t,r){let s;if(pf(t)){let{firstAccessor:f,secondAccessor:x,setAccessor:w}=W0(r.members,t),A=Il(f)?f:x&&Il(x)?x:void 0;if(!A||t!==A)return!1;s=w==null?void 0:w.parameters}else Vl(t)&&(s=t.parameters);if(q_(e,t,r))return!0;if(s){for(let f of s)if(!kl(f)&&q_(e,f,t,r))return!0}return!1}function j3(e){if(e.textSourceNode){switch(e.textSourceNode.kind){case 10:return j3(e.textSourceNode);case 14:return e.text===""}return!1}return e.text===""}function xf(e){let{parent:t}=e;return t.kind===283||t.kind===282||t.kind===284?t.tagName===e:!1}function g0(e){switch(e.kind){case 106:case 104:case 110:case 95:case 13:case 206:case 207:case 208:case 209:case 210:case 211:case 212:case 231:case 213:case 235:case 232:case 214:case 215:case 228:case 216:case 219:case 217:case 218:case 221:case 222:case 223:case 224:case 227:case 225:case 229:case 281:case 282:case 285:case 226:case 220:case 233:return!0;case 230:return!ru(e.parent)&&!md(e.parent);case 163:for(;e.parent.kind===163;)e=e.parent;return e.parent.kind===183||Sl(e.parent)||fd(e.parent)||uc(e.parent)||xf(e);case 314:for(;uc(e.parent);)e=e.parent;return e.parent.kind===183||Sl(e.parent)||fd(e.parent)||uc(e.parent)||xf(e);case 80:return ur(e.parent)&&e.parent.left===e&&e.parent.operatorToken.kind===101;case 79:if(e.parent.kind===183||Sl(e.parent)||fd(e.parent)||uc(e.parent)||xf(e))return!0;case 8:case 9:case 10:case 14:case 108:return J3(e);default:return!1}}function J3(e){let{parent:t}=e;switch(t.kind){case 257:case 166:case 169:case 168:case 302:case 299:case 205:return t.initializer===e;case 241:case 242:case 243:case 244:case 250:case 251:case 252:case 292:case 254:return t.expression===e;case 245:let r=t;return r.initializer===e&&r.initializer.kind!==258||r.condition===e||r.incrementor===e;case 246:case 247:let s=t;return s.initializer===e&&s.initializer.kind!==258||s.expression===e;case 213:case 231:return e===t.expression;case 236:return e===t.expression;case 164:return e===t.expression;case 167:case 291:case 290:case 301:return!0;case 230:return t.expression===e&&!l0(t);case 300:return t.objectAssignmentInitializer===e;case 235:return e===t.expression;default:return g0(t)}}function F3(e){for(;e.kind===163||e.kind===79;)e=e.parent;return e.kind===183}function oI(e){return ld(e)&&!!e.parent.moduleSpecifier}function B3(e){return e.kind===268&&e.moduleReference.kind===280}function _I(e){return Y.assert(B3(e)),e.moduleReference.expression}function cI(e){return Ef(e)&&rv(e.initializer).arguments[0]}function lI(e){return e.kind===268&&e.moduleReference.kind!==280}function y0(e){return Pr(e)}function uI(e){return!Pr(e)}function Pr(e){return!!e&&!!(e.flags&262144)}function pI(e){return!!e&&!!(e.flags&67108864)}function fI(e){return!a0(e)}function q3(e){return!!e&&!!(e.flags&8388608)}function dI(e){return ac(e)&&yt(e.typeName)&&e.typeName.escapedText==="Object"&&e.typeArguments&&e.typeArguments.length===2&&(e.typeArguments[0].kind===152||e.typeArguments[0].kind===148)}function El(e,t){if(e.kind!==210)return!1;let{expression:r,arguments:s}=e;if(r.kind!==79||r.escapedText!=="require"||s.length!==1)return!1;let f=s[0];return!t||Ti(f)}function U3(e){return z3(e,!1)}function Ef(e){return z3(e,!0)}function mI(e){return Xl(e)&&Ef(e.parent.parent)}function z3(e,t){return Vi(e)&&!!e.initializer&&El(t?rv(e.initializer):e.initializer,!0)}function W3(e){return zo(e)&&e.declarationList.declarations.length>0&&me(e.declarationList.declarations,t=>U3(t))}function hI(e){return e===39||e===34}function gI(e,t){return No(t,e).charCodeAt(0)===34}function v0(e){return ur(e)||Lo(e)||yt(e)||sc(e)}function V3(e){return Pr(e)&&e.initializer&&ur(e.initializer)&&(e.initializer.operatorToken.kind===56||e.initializer.operatorToken.kind===60)&&e.name&&Bs(e.name)&&z_(e.name,e.initializer.left)?e.initializer.right:e.initializer}function yI(e){let t=V3(e);return t&&U_(t,Nl(e.name))}function vI(e,t){return c(e.properties,r=>lc(r)&&yt(r.name)&&r.name.escapedText==="value"&&r.initializer&&U_(r.initializer,t))}function bI(e){if(e&&e.parent&&ur(e.parent)&&e.parent.operatorToken.kind===63){let t=Nl(e.parent.left);return U_(e.parent.right,t)||TI(e.parent.left,e.parent.right,t)}if(e&&sc(e)&&S0(e)){let t=vI(e.arguments[2],e.arguments[1].text==="prototype");if(t)return t}}function U_(e,t){if(sc(e)){let r=Pl(e.expression);return r.kind===215||r.kind===216?e:void 0}if(e.kind===215||e.kind===228||e.kind===216||Hs(e)&&(e.properties.length===0||t))return e}function TI(e,t,r){let s=ur(t)&&(t.operatorToken.kind===56||t.operatorToken.kind===60)&&U_(t.right,r);if(s&&z_(e,t.left))return s}function SI(e){let t=Vi(e.parent)?e.parent.name:ur(e.parent)&&e.parent.operatorToken.kind===63?e.parent.left:void 0;return t&&U_(e.right,Nl(t))&&Bs(t)&&z_(t,e.left)}function xI(e){if(ur(e.parent)){let t=(e.parent.operatorToken.kind===56||e.parent.operatorToken.kind===60)&&ur(e.parent.parent)?e.parent.parent:e.parent;if(t.operatorToken.kind===63&&yt(t.left))return t.left}else if(Vi(e.parent))return e.parent.name}function z_(e,t){return L0(e)&&L0(t)?kf(e)===kf(t):js(e)&&wf(t)&&(t.expression.kind===108||yt(t.expression)&&(t.expression.escapedText==="window"||t.expression.escapedText==="self"||t.expression.escapedText==="global"))?z_(e,$3(t)):wf(e)&&wf(t)?Fs(e)===Fs(t)&&z_(e.expression,t.expression):!1}function b0(e){for(;ms(e,!0);)e=e.right;return e}function H3(e){return yt(e)&&e.escapedText==="exports"}function G3(e){return yt(e)&&e.escapedText==="module"}function T0(e){return(bn(e)||wl(e))&&G3(e.expression)&&Fs(e)==="exports"}function ps(e){let t=EI(e);return t===5||Pr(e)?t:0}function S0(e){return I(e.arguments)===3&&bn(e.expression)&&yt(e.expression.expression)&&qr(e.expression.expression)==="Object"&&qr(e.expression.name)==="defineProperty"&&Ta(e.arguments[1])&&V_(e.arguments[0],!0)}function wf(e){return bn(e)||wl(e)}function wl(e){return gs(e)&&Ta(e.argumentExpression)}function W_(e,t){return bn(e)&&(!t&&e.expression.kind===108||yt(e.name)&&V_(e.expression,!0))||x0(e,t)}function x0(e,t){return wl(e)&&(!t&&e.expression.kind===108||Bs(e.expression)||W_(e.expression,!0))}function V_(e,t){return Bs(e)||W_(e,t)}function $3(e){return bn(e)?e.name:e.argumentExpression}function EI(e){if(sc(e)){if(!S0(e))return 0;let t=e.arguments[0];return H3(t)||T0(t)?8:W_(t)&&Fs(t)==="prototype"?9:7}return e.operatorToken.kind!==63||!Lo(e.left)||wI(b0(e))?0:V_(e.left.expression,!0)&&Fs(e.left)==="prototype"&&Hs(X3(e))?6:K3(e.left)}function wI(e){return Qv(e)&&zs(e.expression)&&e.expression.text==="0"}function Cf(e){if(bn(e))return e.name;let t=Pl(e.argumentExpression);return zs(t)||Ti(t)?t:e}function Fs(e){let t=Cf(e);if(t){if(yt(t))return t.escapedText;if(Ti(t)||zs(t))return vi(t.text)}}function K3(e){if(e.expression.kind===108)return 4;if(T0(e))return 2;if(V_(e.expression,!0)){if(Nl(e.expression))return 3;let t=e;for(;!yt(t.expression);)t=t.expression;let r=t.expression;if((r.escapedText==="exports"||r.escapedText==="module"&&Fs(t)==="exports")&&W_(e))return 1;if(V_(e,!0)||gs(e)&&M0(e))return 5}return 0}function X3(e){for(;ur(e.right);)e=e.right;return e.right}function CI(e){return ur(e)&&ps(e)===3}function AI(e){return Pr(e)&&e.parent&&e.parent.kind===241&&(!gs(e)||wl(e))&&!!_f(e.parent)}function PI(e,t){let{valueDeclaration:r}=e;(!r||!(t.flags&16777216&&!Pr(t)&&!(r.flags&16777216))&&v0(r)&&!v0(t)||r.kind!==t.kind&&S3(r))&&(e.valueDeclaration=t)}function DI(e){if(!e||!e.valueDeclaration)return!1;let t=e.valueDeclaration;return t.kind===259||Vi(t)&&t.initializer&&ga(t.initializer)}function kI(e){var t,r;switch(e.kind){case 257:case 205:return(t=zi(e.initializer,s=>El(s,!0)))==null?void 0:t.arguments[0];case 269:return ln(e.moduleSpecifier,Ti);case 268:return ln((r=ln(e.moduleReference,ud))==null?void 0:r.expression,Ti);case 270:case 277:return ln(e.parent.moduleSpecifier,Ti);case 271:case 278:return ln(e.parent.parent.moduleSpecifier,Ti);case 273:return ln(e.parent.parent.parent.moduleSpecifier,Ti);default:Y.assertNever(e)}}function II(e){return Y3(e)||Y.failBadSyntaxKind(e.parent)}function Y3(e){switch(e.parent.kind){case 269:case 275:return e.parent;case 280:return e.parent.parent;case 210:return s0(e.parent)||El(e.parent,!1)?e.parent:void 0;case 198:return Y.assert(Gn(e)),ln(e.parent.parent,Kl);default:return}}function E0(e){switch(e.kind){case 269:case 275:return e.moduleSpecifier;case 268:return e.moduleReference.kind===280?e.moduleReference.expression:void 0;case 202:return k3(e)?e.argument.literal:void 0;case 210:return e.arguments[0];case 264:return e.name.kind===10?e.name:void 0;default:return Y.assertNever(e)}}function Q3(e){switch(e.kind){case 269:return e.importClause&&ln(e.importClause.namedBindings,_2);case 268:return e;case 275:return e.exportClause&&ln(e.exportClause,ld);default:return Y.assertNever(e)}}function Z3(e){return e.kind===269&&!!e.importClause&&!!e.importClause.name}function NI(e,t){if(e.name){let r=t(e);if(r)return r}if(e.namedBindings){let r=_2(e.namedBindings)?t(e.namedBindings):c(e.namedBindings.elements,t);if(r)return r}}function OI(e){if(e)switch(e.kind){case 166:case 171:case 170:case 300:case 299:case 169:case 168:return e.questionToken!==void 0}return!1}function MI(e){let t=dd(e)?pa(e.parameters):void 0,r=ln(t&&t.name,yt);return!!r&&r.escapedText==="new"}function Cl(e){return e.kind===349||e.kind===341||e.kind===343}function LI(e){return Cl(e)||n2(e)}function RI(e){return Zl(e)&&ur(e.expression)&&e.expression.operatorToken.kind===63?b0(e.expression):void 0}function e4(e){return Zl(e)&&ur(e.expression)&&ps(e.expression)!==0&&ur(e.expression.right)&&(e.expression.right.operatorToken.kind===56||e.expression.right.operatorToken.kind===60)?e.expression.right.right:void 0}function w0(e){switch(e.kind){case 240:let t=Al(e);return t&&t.initializer;case 169:return e.initializer;case 299:return e.initializer}}function Al(e){return zo(e)?pa(e.declarationList.declarations):void 0}function t4(e){return Ea(e)&&e.body&&e.body.kind===264?e.body:void 0}function jI(e){if(e.kind>=240&&e.kind<=256)return!0;switch(e.kind){case 79:case 108:case 106:case 163:case 233:case 209:case 208:case 205:case 215:case 216:case 171:case 174:case 175:return!0;default:return!1}}function Af(e){switch(e.kind){case 216:case 223:case 238:case 249:case 176:case 292:case 260:case 228:case 172:case 173:case 182:case 177:case 248:case 256:case 243:case 209:case 239:case 1:case 263:case 302:case 274:case 275:case 278:case 241:case 246:case 247:case 245:case 259:case 215:case 181:case 174:case 79:case 242:case 269:case 268:case 178:case 261:case 320:case 326:case 253:case 171:case 170:case 264:case 199:case 267:case 207:case 166:case 214:case 208:case 299:case 169:case 168:case 250:case 175:case 300:case 301:case 252:case 254:case 255:case 262:case 165:case 257:case 240:case 244:case 251:return!0;default:return!1}}function r4(e,t){let r;u0(e)&&l3(e)&&ya(e.initializer)&&(r=jr(r,n4(e,Zn(e.initializer.jsDoc))));let s=e;for(;s&&s.parent;){if(ya(s)&&(r=jr(r,n4(e,Zn(s.jsDoc)))),s.kind===166){r=jr(r,(t?bS:of)(s));break}if(s.kind===165){r=jr(r,(t?xS:SS)(s));break}s=a4(s)}return r||Bt}function n4(e,t){if(Ho(t)){let r=ee(t.tags,s=>i4(e,s));return t.tags===r?[t]:r}return i4(e,t)?[t]:void 0}function i4(e,t){return!(au(t)||T2(t))||!t.parent||!Ho(t.parent)||!qo(t.parent.parent)||t.parent.parent===e}function a4(e){let t=e.parent;if(t.kind===299||t.kind===274||t.kind===169||t.kind===241&&e.kind===208||t.kind===250||t4(t)||ur(e)&&e.operatorToken.kind===63)return t;if(t.parent&&(Al(t.parent)===e||ur(t)&&t.operatorToken.kind===63))return t.parent;if(t.parent&&t.parent.parent&&(Al(t.parent.parent)||w0(t.parent.parent)===e||e4(t.parent.parent)))return t.parent.parent}function JI(e){if(e.symbol)return e.symbol;if(!yt(e.name))return;let t=e.name.escapedText,r=C0(e);if(!r)return;let s=Ae(r.parameters,f=>f.name.kind===79&&f.name.escapedText===t);return s&&s.symbol}function FI(e){if(Ho(e.parent)&&e.parent.tags){let t=Ae(e.parent.tags,Cl);if(t)return t}return C0(e)}function C0(e){let t=A0(e);if(t)return Wl(t)&&t.type&&ga(t.type)?t.type:ga(t)?t:void 0}function A0(e){let t=s4(e);if(t)return e4(t)||RI(t)||w0(t)||Al(t)||t4(t)||t}function s4(e){let t=P0(e);if(!t)return;let r=t.parent;if(r&&r.jsDoc&&t===Cn(r.jsDoc))return r}function P0(e){return zi(e.parent,Ho)}function BI(e){let t=e.name.escapedText,{typeParameters:r}=e.parent.parent.parent;return r&&Ae(r,s=>s.name.escapedText===t)}function qI(e){return!!e.typeArguments}function o4(e){let t=e.parent;for(;;){switch(t.kind){case 223:let r=t.operatorToken.kind;return G_(r)&&t.left===e?r===63||jf(r)?1:2:0;case 221:case 222:let s=t.operator;return s===45||s===46?2:0;case 246:case 247:return t.initializer===e?1:0;case 214:case 206:case 227:case 232:e=t;break;case 301:e=t.parent;break;case 300:if(t.name!==e)return 0;e=t.parent;break;case 299:if(t.name===e)return 0;e=t.parent;break;default:return 0}t=e.parent}}function UI(e){return o4(e)!==0}function zI(e){switch(e.kind){case 238:case 240:case 251:case 242:case 252:case 266:case 292:case 293:case 253:case 245:case 246:case 247:case 243:case 244:case 255:case 295:return!0}return!1}function WI(e){return ad(e)||sd(e)||Ly(e)||Wo(e)||nc(e)}function _4(e,t){for(;e&&e.kind===t;)e=e.parent;return e}function VI(e){return _4(e,193)}function D0(e){return _4(e,214)}function HI(e){let t;for(;e&&e.kind===193;)t=e,e=e.parent;return[t,e]}function GI(e){for(;Kv(e);)e=e.type;return e}function Pl(e,t){return $o(e,t?17:1)}function $I(e){return e.kind!==208&&e.kind!==209?!1:(e=D0(e.parent),e&&e.kind===217)}function KI(e,t){for(;e;){if(e===t)return!0;e=e.parent}return!1}function c4(e){return!wi(e)&&!df(e)&&ko(e.parent)&&e.parent.name===e}function XI(e){let t=e.parent;switch(e.kind){case 10:case 14:case 8:if(Ws(t))return t.parent;case 79:if(ko(t))return t.name===e?t:void 0;if(rc(t)){let r=t.parent;return pc(r)&&r.name===t?r:void 0}else{let r=t.parent;return ur(r)&&ps(r)!==0&&(r.left.symbol||r.symbol)&&ml(r)===e?r:void 0}case 80:return ko(t)&&t.name===e?t:void 0;default:return}}function l4(e){return Ta(e)&&e.parent.kind===164&&ko(e.parent.parent)}function YI(e){let t=e.parent;switch(t.kind){case 169:case 168:case 171:case 170:case 174:case 175:case 302:case 299:case 208:return t.name===e;case 163:return t.right===e;case 205:case 273:return t.propertyName===e;case 278:case 288:case 282:case 283:case 284:return!0}return!1}function QI(e){return e.kind===268||e.kind===267||e.kind===270&&e.name||e.kind===271||e.kind===277||e.kind===273||e.kind===278||e.kind===274&&I0(e)?!0:Pr(e)&&(ur(e)&&ps(e)===2&&I0(e)||bn(e)&&ur(e.parent)&&e.parent.left===e&&e.parent.operatorToken.kind===63&&k0(e.parent.right))}function u4(e){switch(e.parent.kind){case 270:case 273:case 271:case 278:case 274:case 268:case 277:return e.parent;case 163:do e=e.parent;while(e.parent.kind===163);return u4(e)}}function k0(e){return Bs(e)||_d(e)}function I0(e){let t=p4(e);return k0(t)}function p4(e){return Vo(e)?e.expression:e.right}function ZI(e){return e.kind===300?e.name:e.kind===299?e.initializer:e.parent.right}function f4(e){let t=d4(e);if(t&&Pr(e)){let r=ES(e);if(r)return r.class}return t}function d4(e){let t=Pf(e.heritageClauses,94);return t&&t.types.length>0?t.types[0]:void 0}function m4(e){if(Pr(e))return wS(e).map(t=>t.class);{let t=Pf(e.heritageClauses,117);return t==null?void 0:t.types}}function h4(e){return eu(e)?g4(e)||Bt:bi(e)&&Ft(Cp(f4(e)),m4(e))||Bt}function g4(e){let t=Pf(e.heritageClauses,94);return t?t.types:void 0}function Pf(e,t){if(e){for(let r of e)if(r.token===t)return r}}function eN(e,t){for(;e;){if(e.kind===t)return e;e=e.parent}}function ba(e){return 81<=e&&e<=162}function N0(e){return 126<=e&&e<=162}function y4(e){return ba(e)&&!N0(e)}function tN(e){return 117<=e&&e<=125}function rN(e){let t=_l(e);return t!==void 0&&y4(t)}function nN(e){let t=_l(e);return t!==void 0&&ba(t)}function iN(e){let t=dS(e);return!!t&&!N0(t)}function aN(e){return 2<=e&&e<=7}function sN(e){if(!e)return 4;let t=0;switch(e.kind){case 259:case 215:case 171:e.asteriskToken&&(t|=1);case 216:rn(e,512)&&(t|=2);break}return e.body||(t|=4),t}function oN(e){switch(e.kind){case 259:case 215:case 216:case 171:return e.body!==void 0&&e.asteriskToken===void 0&&rn(e,512)}return!1}function Ta(e){return Ti(e)||zs(e)}function O0(e){return od(e)&&(e.operator===39||e.operator===40)&&zs(e.operand)}function v4(e){let t=ml(e);return!!t&&M0(t)}function M0(e){if(!(e.kind===164||e.kind===209))return!1;let t=gs(e)?Pl(e.argumentExpression):e.expression;return!Ta(t)&&!O0(t)}function Df(e){switch(e.kind){case 79:case 80:return e.escapedText;case 10:case 8:return vi(e.text);case 164:let t=e.expression;return Ta(t)?vi(t.text):O0(t)?t.operator===40?Br(t.operator)+t.operand.text:t.operand.text:void 0;default:return Y.assertNever(e)}}function L0(e){switch(e.kind){case 79:case 10:case 14:case 8:return!0;default:return!1}}function kf(e){return js(e)?qr(e):e.text}function b4(e){return js(e)?e.escapedText:vi(e.text)}function _N(e){return`__@${getSymbolId(e)}@${e.escapedName}`}function cN(e,t){return`__#${getSymbolId(e)}@${t}`}function lN(e){return Pn(e.escapedName,"__@")}function uN(e){return Pn(e.escapedName,"__#")}function pN(e){return e.kind===79&&e.escapedText==="Symbol"}function T4(e){return yt(e)?qr(e)==="__proto__":Gn(e)&&e.text==="__proto__"}function H_(e,t){switch(e=$o(e),e.kind){case 228:case 215:if(e.name)return!1;break;case 216:break;default:return!1}return typeof t=="function"?t(e):!0}function S4(e){switch(e.kind){case 299:return!T4(e.name);case 300:return!!e.objectAssignmentInitializer;case 257:return yt(e.name)&&!!e.initializer;case 166:return yt(e.name)&&!!e.initializer&&!e.dotDotDotToken;case 205:return yt(e.name)&&!!e.initializer&&!e.dotDotDotToken;case 169:return!!e.initializer;case 223:switch(e.operatorToken.kind){case 63:case 76:case 75:case 77:return yt(e.left)}break;case 274:return!0}return!1}function fN(e,t){if(!S4(e))return!1;switch(e.kind){case 299:return H_(e.initializer,t);case 300:return H_(e.objectAssignmentInitializer,t);case 257:case 166:case 205:case 169:return H_(e.initializer,t);case 223:return H_(e.right,t);case 274:return H_(e.expression,t)}}function dN(e){return e.escapedText==="push"||e.escapedText==="unshift"}function mN(e){return If(e).kind===166}function If(e){for(;e.kind===205;)e=e.parent.parent;return e}function hN(e){let t=e.kind;return t===173||t===215||t===259||t===216||t===171||t===174||t===175||t===264||t===308}function fs(e){return hs(e.pos)||hs(e.end)}function gN(e){return fl(e,wi)||e}function yN(e){let t=R0(e),r=e.kind===211&&e.arguments!==void 0;return x4(e.kind,t,r)}function x4(e,t,r){switch(e){case 211:return r?0:1;case 221:case 218:case 219:case 217:case 220:case 224:case 226:return 1;case 223:switch(t){case 42:case 63:case 64:case 65:case 67:case 66:case 68:case 69:case 70:case 71:case 72:case 73:case 78:case 74:case 75:case 76:case 77:return 1}}return 0}function vN(e){let t=R0(e),r=e.kind===211&&e.arguments!==void 0;return E4(e.kind,t,r)}function R0(e){return e.kind===223?e.operatorToken.kind:e.kind===221||e.kind===222?e.operator:e.kind}function E4(e,t,r){switch(e){case 357:return 0;case 227:return 1;case 226:return 2;case 224:return 4;case 223:switch(t){case 27:return 0;case 63:case 64:case 65:case 67:case 66:case 68:case 69:case 70:case 71:case 72:case 73:case 78:case 74:case 75:case 76:case 77:return 3;default:return Dl(t)}case 213:case 232:case 221:case 218:case 219:case 217:case 220:return 16;case 222:return 17;case 210:return 18;case 211:return r?19:18;case 212:case 208:case 209:case 233:return 19;case 231:case 235:return 11;case 108:case 106:case 79:case 80:case 104:case 110:case 95:case 8:case 9:case 10:case 206:case 207:case 215:case 216:case 228:case 13:case 14:case 225:case 214:case 229:case 281:case 282:case 285:return 20;default:return-1}}function Dl(e){switch(e){case 60:return 4;case 56:return 5;case 55:return 6;case 51:return 7;case 52:return 8;case 50:return 9;case 34:case 35:case 36:case 37:return 10;case 29:case 31:case 32:case 33:case 102:case 101:case 128:case 150:return 11;case 47:case 48:case 49:return 12;case 39:case 40:return 13;case 41:case 43:case 44:return 14;case 42:return 15}return-1}function bN(e){return ee(e,t=>{switch(t.kind){case 291:return!!t.expression;case 11:return!t.containsOnlyTriviaWhiteSpaces;default:return!0}})}function TN(){let e=[],t=[],r=new Map,s=!1;return{add:x,lookup:f,getGlobalDiagnostics:w,getDiagnostics:A};function f(g){let B;if(g.file?B=r.get(g.file.fileName):B=e,!B)return;let N=Ya(B,g,rr,qf);if(N>=0)return B[N]}function x(g){let B;g.file?(B=r.get(g.file.fileName),B||(B=[],r.set(g.file.fileName,B),Qn(t,g.file.fileName,ri))):(s&&(s=!1,e=e.slice()),B=e),Qn(B,g,qf)}function w(){return s=!0,e}function A(g){if(g)return r.get(g)||[];let B=ge(t,N=>r.get(N));return e.length&&B.unshift(...e),B}}function SN(e){return e.replace(s8,"\\${")}function w4(e){return e&&!!(k8(e)?e.templateFlags:e.head.templateFlags||Ke(e.templateSpans,t=>!!t.literal.templateFlags))}function C4(e){return"\\u"+("0000"+e.toString(16).toUpperCase()).slice(-4)}function xN(e,t,r){if(e.charCodeAt(0)===0){let s=r.charCodeAt(t+e.length);return s>=48&&s<=57?"\\x00":"\\0"}return l8.get(e)||C4(e.charCodeAt(0))}function Nf(e,t){let r=t===96?c8:t===39?_8:o8;return e.replace(r,xN)}function Of(e,t){return e=Nf(e,t),Cv.test(e)?e.replace(Cv,r=>C4(r.charCodeAt(0))):e}function EN(e){return"&#x"+e.toString(16).toUpperCase()+";"}function wN(e){return e.charCodeAt(0)===0?"�":f8.get(e)||EN(e.charCodeAt(0))}function A4(e,t){let r=t===39?p8:u8;return e.replace(r,wN)}function CN(e){let t=e.length;return t>=2&&e.charCodeAt(0)===e.charCodeAt(t-1)&&AN(e.charCodeAt(0))?e.substring(1,t-1):e}function AN(e){return e===39||e===34||e===96}function P4(e){let t=e.charCodeAt(0);return t>=97&&t<=122||Fi(e,"-")||Fi(e,":")}function j0(e){let t=jo[1];for(let r=jo.length;r<=e;r++)jo.push(jo[r-1]+t);return jo[e]}function Oo(){return jo[1].length}function PN(){return Fi(C,"-dev")||Fi(C,"-insiders")}function DN(e){var t,r,s,f,x,w=!1;function A(Se){let Ye=Kp(Se);Ye.length>1?(f=f+Ye.length-1,x=t.length-Se.length+Zn(Ye),s=x-t.length===0):s=!1}function g(Se){Se&&Se.length&&(s&&(Se=j0(r)+Se,s=!1),t+=Se,A(Se))}function B(Se){Se&&(w=!1),g(Se)}function N(Se){Se&&(w=!0),g(Se)}function X(){t="",r=0,s=!0,f=0,x=0,w=!1}function F(Se){Se!==void 0&&(t+=Se,A(Se),w=!1)}function $(Se){Se&&Se.length&&B(Se)}function ae(Se){(!s||Se)&&(t+=e,f++,x=t.length,s=!0,w=!1)}function Te(){return s?t.length:t.length+e.length}return X(),{write:B,rawWrite:F,writeLiteral:$,writeLine:ae,increaseIndent:()=>{r++},decreaseIndent:()=>{r--},getIndent:()=>r,getTextPos:()=>t.length,getLine:()=>f,getColumn:()=>s?r*Oo():t.length-x,getText:()=>t,isAtStartOfLine:()=>s,hasTrailingComment:()=>w,hasTrailingWhitespace:()=>!!t.length&&os(t.charCodeAt(t.length-1)),clear:X,writeKeyword:B,writeOperator:B,writeParameter:B,writeProperty:B,writePunctuation:B,writeSpace:B,writeStringLiteral:B,writeSymbol:(Se,Ye)=>B(Se),writeTrailingSemicolon:B,writeComment:N,getTextPosWithWriteLine:Te}}function kN(e){let t=!1;function r(){t&&(e.writeTrailingSemicolon(";"),t=!1)}return Object.assign(Object.assign({},e),{},{writeTrailingSemicolon(){t=!0},writeLiteral(s){r(),e.writeLiteral(s)},writeStringLiteral(s){r(),e.writeStringLiteral(s)},writeSymbol(s,f){r(),e.writeSymbol(s,f)},writePunctuation(s){r(),e.writePunctuation(s)},writeKeyword(s){r(),e.writeKeyword(s)},writeOperator(s){r(),e.writeOperator(s)},writeParameter(s){r(),e.writeParameter(s)},writeSpace(s){r(),e.writeSpace(s)},writeProperty(s){r(),e.writeProperty(s)},writeComment(s){r(),e.writeComment(s)},writeLine(){r(),e.writeLine()},increaseIndent(){r(),e.increaseIndent()},decreaseIndent(){r(),e.decreaseIndent()}})}function J0(e){return e.useCaseSensitiveFileNames?e.useCaseSensitiveFileNames():!1}function D4(e){return wp(J0(e))}function k4(e,t,r){return t.moduleName||F0(e,t.fileName,r&&r.fileName)}function I4(e,t){return e.getCanonicalFileName(as(t,e.getCurrentDirectory()))}function IN(e,t,r){let s=t.getExternalModuleFileFromDeclaration(r);if(!s||s.isDeclarationFile)return;let f=E0(r);if(!(f&&Ti(f)&&!So(f.text)&&I4(e,s.path).indexOf(I4(e,wo(e.getCommonSourceDirectory())))===-1))return k4(e,s)}function F0(e,t,r){let s=g=>e.getCanonicalFileName(g),f=Ui(r?ma(r):e.getCommonSourceDirectory(),e.getCurrentDirectory(),s),x=as(t,e.getCurrentDirectory()),w=uy(f,x,f,s,!1),A=Ll(w);return r?_y(A):A}function NN(e,t,r){let s=t.getCompilerOptions(),f;return s.outDir?f=Ll(M4(e,t,s.outDir)):f=Ll(e),f+r}function ON(e,t){return N4(e,t.getCompilerOptions(),t.getCurrentDirectory(),t.getCommonSourceDirectory(),r=>t.getCanonicalFileName(r))}function N4(e,t,r,s,f){let x=t.declarationDir||t.outDir,w=x?U0(e,x,r,s,f):e,A=O4(w);return Ll(w)+A}function O4(e){return da(e,[".mjs",".mts"])?".d.mts":da(e,[".cjs",".cts"])?".d.cts":da(e,[".json"])?".d.json.ts":".d.ts"}function MN(e){return da(e,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:da(e,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:da(e,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function B0(e){return e.outFile||e.out}function LN(e,t){var r,s;if(e.paths)return(s=e.baseUrl)!=null?s:Y.checkDefined(e.pathsBasePath||((r=t.getCurrentDirectory)==null?void 0:r.call(t)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function RN(e,t,r){let s=e.getCompilerOptions();if(B0(s)){let f=Ei(s),x=s.emitDeclarationOnly||f===2||f===4;return ee(e.getSourceFiles(),w=>(x||!Qo(w))&&q0(w,e,r))}else{let f=t===void 0?e.getSourceFiles():[t];return ee(f,x=>q0(x,e,r))}}function q0(e,t,r){return!(t.getCompilerOptions().noEmitForJsFiles&&y0(e))&&!e.isDeclarationFile&&!t.isSourceFileFromExternalLibrary(e)&&(r||!(a0(e)&&t.getResolvedProjectReferenceToRedirect(e.fileName))&&!t.isSourceOfProjectReferenceRedirect(e.fileName))}function M4(e,t,r){return U0(e,r,t.getCurrentDirectory(),t.getCommonSourceDirectory(),s=>t.getCanonicalFileName(s))}function U0(e,t,r,s,f){let x=as(e,r);return x=f(x).indexOf(f(s))===0?x.substring(s.length):x,tn(t,x)}function jN(e,t,r,s,f,x,w){e.writeFile(r,s,f,A=>{t.add(Ol(ve.Could_not_write_file_0_Colon_1,r,A))},x,w)}function L4(e,t,r){if(e.length>Bi(e)&&!r(e)){let s=ma(e);L4(s,t,r),t(e)}}function JN(e,t,r,s,f,x){try{s(e,t,r)}catch{L4(ma(Un(e)),f,x),s(e,t,r)}}function FN(e,t){let r=ss(e);return k_(r,t)}function ds(e,t){return k_(e,t)}function R4(e){return Ae(e.members,t=>nc(t)&&xl(t.body))}function z0(e){if(e&&e.parameters.length>0){let t=e.parameters.length===2&&kl(e.parameters[0]);return e.parameters[t?1:0]}}function BN(e){let t=z0(e);return t&&t.type}function j4(e){if(e.parameters.length&&!iu(e)){let t=e.parameters[0];if(kl(t))return t}}function kl(e){return Mf(e.name)}function Mf(e){return!!e&&e.kind===79&&J4(e)}function qN(e){if(!Mf(e))return!1;for(;rc(e.parent)&&e.parent.left===e;)e=e.parent;return e.parent.kind===183}function J4(e){return e.escapedText==="this"}function W0(e,t){let r,s,f,x;return v4(t)?(r=t,t.kind===174?f=t:t.kind===175?x=t:Y.fail("Accessor has wrong kind")):c(e,w=>{if(pf(w)&&G0(w)===G0(t)){let A=Df(w.name),g=Df(t.name);A===g&&(r?s||(s=w):r=w,w.kind===174&&!f&&(f=w),w.kind===175&&!x&&(x=w))}}),{firstAccessor:r,secondAccessor:s,getAccessor:f,setAccessor:x}}function V0(e){if(!Pr(e)&&Wo(e))return;let t=e.type;return t||!Pr(e)?t:Dy(e)?e.typeExpression&&e.typeExpression.type:cf(e)}function UN(e){return e.type}function zN(e){return iu(e)?e.type&&e.type.typeExpression&&e.type.typeExpression.type:e.type||(Pr(e)?OS(e):void 0)}function F4(e){return ne(hl(e),t=>WN(t)?t.typeParameters:void 0)}function WN(e){return Go(e)&&!(e.parent.kind===323&&(e.parent.tags.some(Cl)||e.parent.tags.some(y2)))}function VN(e){let t=z0(e);return t&&V0(t)}function B4(e,t,r,s){q4(e,t,r.pos,s)}function q4(e,t,r,s){s&&s.length&&r!==s[0].pos&&ds(e,r)!==ds(e,s[0].pos)&&t.writeLine()}function HN(e,t,r,s){r!==s&&ds(e,r)!==ds(e,s)&&t.writeLine()}function U4(e,t,r,s,f,x,w,A){if(s&&s.length>0){f&&r.writeSpace(" ");let g=!1;for(let B of s)g&&(r.writeSpace(" "),g=!1),A(e,t,r,B.pos,B.end,w),B.hasTrailingNewLine?r.writeLine():g=!0;g&&x&&r.writeSpace(" ")}}function GN(e,t,r,s,f,x,w){let A,g;if(w?f.pos===0&&(A=ee(Ao(e,f.pos),B)):A=Ao(e,f.pos),A){let N=[],X;for(let F of A){if(X){let $=ds(t,X.end);if(ds(t,F.pos)>=$+2)break}N.push(F),X=F}if(N.length){let F=ds(t,Zn(N).end);ds(t,Ar(e,f.pos))>=F+2&&(B4(t,r,f,A),U4(e,t,r,N,!1,!0,x,s),g={nodePos:f.pos,detachedCommentEndPos:Zn(N).end})}}return g;function B(N){return v3(e,N.pos)}}function $N(e,t,r,s,f,x){if(e.charCodeAt(s+1)===42){let w=my(t,s),A=t.length,g;for(let B=s,N=w.line;B0){let ae=$%Oo(),Te=j0(($-ae)/Oo());for(r.rawWrite(Te);ae;)r.rawWrite(" "),ae--}else r.rawWrite("")}KN(e,f,r,x,B,X),B=X}}else r.writeComment(e.substring(s,f))}function KN(e,t,r,s,f,x){let w=Math.min(t,x-1),A=Pp(e.substring(f,w));A?(r.writeComment(A),w!==t&&r.writeLine()):r.rawWrite(s)}function z4(e,t,r){let s=0;for(;t=0&&e.kind<=162?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=Y0(e)|536870912),t&&!(e.modifierFlagsCache&4096)&&(r||Pr(e))&&e.parent&&(e.modifierFlagsCache|=X4(e)|4096),e.modifierFlagsCache&-536875009)}function Rf(e){return K0(e,!0)}function K4(e){return K0(e,!0,!0)}function X0(e){return K0(e,!1)}function X4(e){let t=0;return e.parent&&!Vs(e)&&(Pr(e)&&(CS(e)&&(t|=4),AS(e)&&(t|=8),PS(e)&&(t|=16),DS(e)&&(t|=64),kS(e)&&(t|=16384)),IS(e)&&(t|=8192)),t}function Y4(e){return Y0(e)|X4(e)}function Y0(e){let t=fc(e)?Vn(e.modifiers):0;return(e.flags&4||e.kind===79&&e.flags&2048)&&(t|=1),t}function Vn(e){let t=0;if(e)for(let r of e)t|=Q0(r.kind);return t}function Q0(e){switch(e){case 124:return 32;case 123:return 4;case 122:return 16;case 121:return 8;case 126:return 256;case 127:return 128;case 93:return 1;case 136:return 2;case 85:return 2048;case 88:return 1024;case 132:return 512;case 146:return 64;case 161:return 16384;case 101:return 32768;case 145:return 65536;case 167:return 131072}return 0}function Q4(e){return e===56||e===55}function ZN(e){return Q4(e)||e===53}function jf(e){return e===75||e===76||e===77}function eO(e){return ur(e)&&jf(e.operatorToken.kind)}function Z4(e){return Q4(e)||e===60}function tO(e){return ur(e)&&Z4(e.operatorToken.kind)}function G_(e){return e>=63&&e<=78}function ex(e){let t=tx(e);return t&&!t.isImplements?t.class:void 0}function tx(e){if(e2(e)){if(ru(e.parent)&&bi(e.parent.parent))return{class:e.parent.parent,isImplements:e.parent.token===117};if(md(e.parent)){let t=A0(e.parent);if(t&&bi(t))return{class:t,isImplements:!1}}}}function ms(e,t){return ur(e)&&(t?e.operatorToken.kind===63:G_(e.operatorToken.kind))&&Do(e.left)}function rO(e){return ms(e.parent)&&e.parent.left===e}function nO(e){if(ms(e,!0)){let t=e.left.kind;return t===207||t===206}return!1}function Z0(e){return ex(e)!==void 0}function Bs(e){return e.kind===79||rx(e)}function iO(e){switch(e.kind){case 79:return e;case 163:do e=e.left;while(e.kind!==79);return e;case 208:do e=e.expression;while(e.kind!==79);return e}}function ev(e){return e.kind===79||e.kind===108||e.kind===106||e.kind===233||e.kind===208&&ev(e.expression)||e.kind===214&&ev(e.expression)}function rx(e){return bn(e)&&yt(e.name)&&Bs(e.expression)}function tv(e){if(bn(e)){let t=tv(e.expression);if(t!==void 0)return t+"."+ls(e.name)}else if(gs(e)){let t=tv(e.expression);if(t!==void 0&&vl(e.argumentExpression))return t+"."+Df(e.argumentExpression)}else if(yt(e))return dl(e.escapedText)}function Nl(e){return W_(e)&&Fs(e)==="prototype"}function aO(e){return e.parent.kind===163&&e.parent.right===e||e.parent.kind===208&&e.parent.name===e}function nx(e){return bn(e.parent)&&e.parent.name===e||gs(e.parent)&&e.parent.argumentExpression===e}function sO(e){return rc(e.parent)&&e.parent.right===e||bn(e.parent)&&e.parent.name===e||uc(e.parent)&&e.parent.right===e}function oO(e){return e.kind===207&&e.properties.length===0}function _O(e){return e.kind===206&&e.elements.length===0}function cO(e){if(!(!lO(e)||!e.declarations)){for(let t of e.declarations)if(t.localSymbol)return t.localSymbol}}function lO(e){return e&&I(e.declarations)>0&&rn(e.declarations[0],1024)}function uO(e){return Ae(y8,t=>ns(e,t))}function pO(e){let t=[],r=e.length;for(let s=0;s>6|192),t.push(f&63|128)):f<65536?(t.push(f>>12|224),t.push(f>>6&63|128),t.push(f&63|128)):f<131072?(t.push(f>>18|240),t.push(f>>12&63|128),t.push(f>>6&63|128),t.push(f&63|128)):Y.assert(!1,"Unexpected code point")}return t}function ix(e){let t="",r=pO(e),s=0,f=r.length,x,w,A,g;for(;s>2,w=(r[s]&3)<<4|r[s+1]>>4,A=(r[s+1]&15)<<2|r[s+2]>>6,g=r[s+2]&63,s+1>=f?A=g=64:s+2>=f&&(g=64),t+=xa.charAt(x)+xa.charAt(w)+xa.charAt(A)+xa.charAt(g),s+=3;return t}function fO(e){let t="",r=0,s=e.length;for(;r>4&3,N=(w&15)<<4|A>>2&15,X=(A&3)<<6|g&63;N===0&&A!==0?s.push(B):X===0&&g!==0?s.push(B,N):s.push(B,N,X),f+=4}return fO(s)}function ax(e,t){let r=Ji(t)?t:t.readFile(e);if(!r)return;let s=parseConfigFileTextToJson(e,r);return s.error?void 0:s.config}function hO(e,t){return ax(e,t)||{}}function sx(e,t){return!t.directoryExists||t.directoryExists(e)}function ox(e){switch(e.newLine){case 0:return d8;case 1:case void 0:return m8}}function Jf(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e;return Y.assert(t>=e||t===-1),{pos:e,end:t}}function gO(e,t){return Jf(e.pos,t)}function Ff(e,t){return Jf(t,e.end)}function _x(e){let t=fc(e)?te(e.modifiers,zl):void 0;return t&&!hs(t.end)?Ff(e,t.end):e}function yO(e){if(Bo(e)||Vl(e))return Ff(e,e.name.pos);let t=fc(e)?Cn(e.modifiers):void 0;return t&&!hs(t.end)?Ff(e,t.end):_x(e)}function vO(e){return e.pos===e.end}function bO(e,t){return Jf(e,e+Br(t).length)}function TO(e,t){return cx(e,e,t)}function SO(e,t,r){return $_(K_(e,r,!1),K_(t,r,!1),r)}function xO(e,t,r){return $_(e.end,t.end,r)}function cx(e,t,r){return $_(K_(e,r,!1),t.end,r)}function EO(e,t,r){return $_(e.end,K_(t,r,!1),r)}function wO(e,t,r,s){let f=K_(t,r,s);return I_(r,e.end,f)}function CO(e,t,r){return I_(r,e.end,t.end)}function AO(e,t){return!$_(e.pos,e.end,t)}function $_(e,t,r){return I_(r,e,t)===0}function K_(e,t,r){return hs(e.pos)?-1:Ar(t.text,e.pos,!1,r)}function PO(e,t,r,s){let f=Ar(r.text,e,!1,s),x=kO(f,t,r);return I_(r,x!=null?x:t,f)}function DO(e,t,r,s){let f=Ar(r.text,e,!1,s);return I_(r,e,Math.min(t,f))}function kO(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2?arguments[2]:void 0;for(;e-- >t;)if(!os(r.text.charCodeAt(e)))return e}function IO(e){let t=fl(e);if(t)switch(t.parent.kind){case 263:case 264:return t===t.parent.name}return!1}function NO(e){return ee(e.declarations,lx)}function lx(e){return Vi(e)&&e.initializer!==void 0}function OO(e){return e.watch&&Jr(e,"watch")}function MO(e){e.close()}function ux(e){return e.flags&33554432?e.links.checkFlags:0}function LO(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(e.valueDeclaration){let r=t&&e.declarations&&Ae(e.declarations,ic)||e.flags&32768&&Ae(e.declarations,Gl)||e.valueDeclaration,s=ef(r);return e.parent&&e.parent.flags&32?s:s&-29}if(ux(e)&6){let r=e.links.checkFlags,s=r&1024?8:r&256?4:16,f=r&2048?32:0;return s|f}return e.flags&4194304?36:0}function RO(e,t){return e.flags&2097152?t.getAliasedSymbol(e):e}function jO(e){return e.exportSymbol?e.exportSymbol.flags|e.flags:e.flags}function JO(e){return Mo(e)===1}function FO(e){return Mo(e)!==0}function Mo(e){let{parent:t}=e;if(!t)return 0;switch(t.kind){case 214:return Mo(t);case 222:case 221:let{operator:s}=t;return s===45||s===46?r():0;case 223:let{left:f,operatorToken:x}=t;return f===e&&G_(x.kind)?x.kind===63?1:r():0;case 208:return t.name!==e?0:Mo(t);case 299:{let w=Mo(t.parent);return e===t.name?BO(w):w}case 300:return e===t.objectAssignmentInitializer?0:Mo(t.parent);case 206:return Mo(t);default:return 0}function r(){return t.parent&&D0(t.parent).kind===241?1:2}}function BO(e){switch(e){case 0:return 1;case 1:return 0;case 2:return 2;default:return Y.assertNever(e)}}function px(e,t){if(!e||!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let r in e)if(typeof e[r]=="object"){if(!px(e[r],t[r]))return!1}else if(typeof e[r]!="function"&&e[r]!==t[r])return!1;return!0}function qO(e,t){e.forEach(t),e.clear()}function fx(e,t,r){let{onDeleteValue:s,onExistingValue:f}=r;e.forEach((x,w)=>{let A=t.get(w);A===void 0?(e.delete(w),s(x,w)):f&&f(x,A,w)})}function UO(e,t,r){fx(e,t,r);let{createNewValue:s}=r;t.forEach((f,x)=>{e.has(x)||e.set(x,s(x,f))})}function zO(e){if(e.flags&32){let t=dx(e);return!!t&&rn(t,256)}return!1}function dx(e){var t;return(t=e.declarations)==null?void 0:t.find(bi)}function Bf(e){return e.flags&3899393?e.objectFlags:0}function WO(e,t){return!!FT(e,r=>t(r)?!0:void 0)}function VO(e){return!!e&&!!e.declarations&&!!e.declarations[0]&&a2(e.declarations[0])}function HO(e){let{moduleSpecifier:t}=e;return Gn(t)?t.text:gf(t)}function mx(e){let t;return xr(e,r=>{xl(r)&&(t=r)},r=>{for(let s=r.length-1;s>=0;s--)if(xl(r[s])){t=r[s];break}}),t}function GO(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return e.has(t)?!1:(e.set(t,r),!0)}function $O(e){return bi(e)||eu(e)||id(e)}function hx(e){return e>=179&&e<=202||e===131||e===157||e===148||e===160||e===149||e===134||e===152||e===153||e===114||e===155||e===144||e===139||e===230||e===315||e===316||e===317||e===318||e===319||e===320||e===321}function Lo(e){return e.kind===208||e.kind===209}function KO(e){return e.kind===208?e.name:(Y.assert(e.kind===209),e.argumentExpression)}function XO(e){switch(e.kind){case"text":case"internal":return!0;default:return!1}}function YO(e){return e.kind===272||e.kind===276}function rv(e){for(;Lo(e);)e=e.expression;return e}function QO(e,t){if(Lo(e.parent)&&nx(e))return r(e.parent);function r(s){if(s.kind===208){let f=t(s.name);if(f!==void 0)return f}else if(s.kind===209)if(yt(s.argumentExpression)||Ti(s.argumentExpression)){let f=t(s.argumentExpression);if(f!==void 0)return f}else return;if(Lo(s.expression))return r(s.expression);if(yt(s.expression))return t(s.expression)}}function ZO(e,t){for(;;){switch(e.kind){case 222:e=e.operand;continue;case 223:e=e.left;continue;case 224:e=e.condition;continue;case 212:e=e.tag;continue;case 210:if(t)return e;case 231:case 209:case 208:case 232:case 356:case 235:e=e.expression;continue}return e}}function eM(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.isAssigned=void 0,this.links=void 0}function tM(e,t){this.flags=t,(Y.isDebugging||rs)&&(this.checker=e)}function rM(e,t){this.flags=t,Y.isDebugging&&(this.checker=e)}function nv(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function nM(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function iM(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function aM(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(s=>s)}function sM(e){Av.push(e),e(lr)}function gx(e){Object.assign(lr,e),c(Av,t=>t(lr))}function X_(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return e.replace(/{(\d+)}/g,(s,f)=>""+Y.checkDefined(t[+f+r]))}function yx(e){jl=e}function vx(e){!jl&&e&&(jl=e())}function Y_(e){return jl&&jl[e.key]||e.message}function Ro(e,t,r,s){t0(void 0,t,r);let f=Y_(s);return arguments.length>4&&(f=X_(f,arguments,4)),{file:void 0,start:t,length:r,messageText:f,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary,fileName:e}}function oM(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function bx(e,t){let r=t.fileName||"",s=t.text.length;Y.assertEqual(e.fileName,r),Y.assertLessThanOrEqual(e.start,s),Y.assertLessThanOrEqual(e.start+e.length,s);let f={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){f.relatedInformation=[];for(let x of e.relatedInformation)oM(x)&&x.fileName===r?(Y.assertLessThanOrEqual(x.start,s),Y.assertLessThanOrEqual(x.start+x.length,s),f.relatedInformation.push(bx(x,t))):f.relatedInformation.push(x)}return f}function qs(e,t){let r=[];for(let s of e)r.push(bx(s,t));return r}function iv(e,t,r,s){t0(e,t,r);let f=Y_(s);return arguments.length>4&&(f=X_(f,arguments,4)),{file:e,start:t,length:r,messageText:f,category:s.category,code:s.code,reportsUnnecessary:s.reportsUnnecessary,reportsDeprecated:s.reportsDeprecated}}function _M(e,t){let r=Y_(t);return arguments.length>2&&(r=X_(r,arguments,2)),r}function Ol(e){let t=Y_(e);return arguments.length>1&&(t=X_(t,arguments,1)),{file:void 0,start:void 0,length:void 0,messageText:t,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated}}function cM(e,t){return{file:void 0,start:void 0,length:void 0,code:e.code,category:e.category,messageText:e.next?e:e.messageText,relatedInformation:t}}function lM(e,t){let r=Y_(t);return arguments.length>2&&(r=X_(r,arguments,2)),{messageText:r,category:t.category,code:t.code,next:e===void 0||Array.isArray(e)?e:[e]}}function uM(e,t){let r=e;for(;r.next;)r=r.next[0];r.next=[t]}function Tx(e){return e.file?e.file.path:void 0}function av(e,t){return qf(e,t)||pM(e,t)||0}function qf(e,t){return ri(Tx(e),Tx(t))||Vr(e.start,t.start)||Vr(e.length,t.length)||Vr(e.code,t.code)||Sx(e.messageText,t.messageText)||0}function pM(e,t){return!e.relatedInformation&&!t.relatedInformation?0:e.relatedInformation&&t.relatedInformation?Vr(e.relatedInformation.length,t.relatedInformation.length)||c(e.relatedInformation,(r,s)=>{let f=t.relatedInformation[s];return av(r,f)})||0:e.relatedInformation?-1:1}function Sx(e,t){if(typeof e=="string"&&typeof t=="string")return ri(e,t);if(typeof e=="string")return-1;if(typeof t=="string")return 1;let r=ri(e.messageText,t.messageText);if(r)return r;if(!e.next&&!t.next)return 0;if(!e.next)return-1;if(!t.next)return 1;let s=Math.min(e.next.length,t.next.length);for(let f=0;ft.next.length?1:0}function sv(e){return e===4||e===2||e===1||e===6?1:0}function xx(e){if(e.transformFlags&2)return _3(e)||pd(e)?e:xr(e,xx)}function fM(e){return e.isDeclarationFile?void 0:xx(e)}function dM(e){return(e.impliedNodeFormat===99||da(e.fileName,[".cjs",".cts",".mjs",".mts"]))&&!e.isDeclarationFile?!0:void 0}function Ex(e){switch(wx(e)){case 3:return f=>{f.externalModuleIndicator=ou(f)||!f.isDeclarationFile||void 0};case 1:return f=>{f.externalModuleIndicator=ou(f)};case 2:let t=[ou];(e.jsx===4||e.jsx===5)&&t.push(fM),t.push(dM);let r=W1(...t);return f=>void(f.externalModuleIndicator=r(f))}}function Uf(e){var t;return(t=e.target)!=null?t:e.module===100&&9||e.module===199&&99||1}function Ei(e){return typeof e.module=="number"?e.module:Uf(e)>=2?5:1}function mM(e){return e>=5&&e<=99}function Ml(e){let t=e.moduleResolution;if(t===void 0)switch(Ei(e)){case 1:t=2;break;case 100:t=3;break;case 199:t=99;break;default:t=1;break}return t}function wx(e){return e.moduleDetection||(Ei(e)===100||Ei(e)===199?3:2)}function hM(e){switch(Ei(e)){case 1:case 2:case 5:case 6:case 7:case 99:case 100:case 199:return!0;default:return!1}}function zf(e){return!!(e.isolatedModules||e.verbatimModuleSyntax)}function gM(e){return e.verbatimModuleSyntax||e.isolatedModules&&e.preserveValueImports}function yM(e){return e.allowUnreachableCode===!1}function vM(e){return e.allowUnusedLabels===!1}function bM(e){return!!(cv(e)&&e.declarationMap)}function ov(e){if(e.esModuleInterop!==void 0)return e.esModuleInterop;switch(Ei(e)){case 100:case 199:return!0}}function TM(e){return e.allowSyntheticDefaultImports!==void 0?e.allowSyntheticDefaultImports:ov(e)||Ei(e)===4||Ml(e)===100}function _v(e){return e>=3&&e<=99||e===100}function SM(e){let t=Ml(e);if(!_v(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}function xM(e){let t=Ml(e);if(!_v(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}function Cx(e){return e.resolveJsonModule!==void 0?e.resolveJsonModule:Ml(e)===100}function cv(e){return!!(e.declaration||e.composite)}function EM(e){return!!(e.preserveConstEnums||zf(e))}function wM(e){return!!(e.incremental||e.composite)}function lv(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function Ax(e){return e.allowJs===void 0?!!e.checkJs:e.allowJs}function CM(e){return e.useDefineForClassFields===void 0?Uf(e)>=9:e.useDefineForClassFields}function AM(e,t){return J_(t,e,semanticDiagnosticsOptionDeclarations)}function PM(e,t){return J_(t,e,affectsEmitOptionDeclarations)}function DM(e,t){return J_(t,e,affectsDeclarationPathOptionDeclarations)}function uv(e,t){return t.strictFlag?lv(e,t.name):e[t.name]}function kM(e){let t=e.jsx;return t===2||t===4||t===5}function IM(e,t){let r=t==null?void 0:t.pragmas.get("jsximportsource"),s=ir(r)?r[r.length-1]:r;return e.jsx===4||e.jsx===5||e.jsxImportSource||s?(s==null?void 0:s.arguments.factory)||e.jsxImportSource||"react":void 0}function NM(e,t){return e?`${e}/${t.jsx===5?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function OM(e){let t=!1;for(let r=0;rf,getSymlinkedDirectories:()=>r,getSymlinkedDirectoriesByRealpath:()=>s,setSymlinkedFile:(A,g)=>(f||(f=new Map)).set(A,g),setSymlinkedDirectory:(A,g)=>{let B=Ui(A,e,t);Hx(B)||(B=wo(B),g!==!1&&!(r!=null&&r.has(B))&&(s||(s=Be())).add(wo(g.realPath),A),(r||(r=new Map)).set(B,g))},setSymlinksFromResolutions(A,g){var B,N;Y.assert(!x),x=!0;for(let X of A)(B=X.resolvedModules)==null||B.forEach(F=>w(this,F.resolvedModule)),(N=X.resolvedTypeReferenceDirectiveNames)==null||N.forEach(F=>w(this,F.resolvedTypeReferenceDirective));g.forEach(X=>w(this,X.resolvedTypeReferenceDirective))},hasProcessedResolutions:()=>x};function w(A,g){if(!g||!g.originalPath||!g.resolvedFileName)return;let{resolvedFileName:B,originalPath:N}=g;A.setSymlinkedFile(Ui(N,e,t),B);let[X,F]=LM(B,N,e,t)||Bt;X&&F&&A.setSymlinkedDirectory(F,{real:X,realPath:Ui(X,e,t)})}}function LM(e,t,r,s){let f=qi(as(e,r)),x=qi(as(t,r)),w=!1;for(;f.length>=2&&x.length>=2&&!Px(f[f.length-2],s)&&!Px(x[x.length-2],s)&&s(f[f.length-1])===s(x[x.length-1]);)f.pop(),x.pop(),w=!0;return w?[xo(f),xo(x)]:void 0}function Px(e,t){return e!==void 0&&(t(e)==="node_modules"||Pn(e,"@"))}function RM(e){return ay(e.charCodeAt(0))?e.slice(1):void 0}function jM(e,t,r){let s=ST(e,t,r);return s===void 0?void 0:RM(s)}function JM(e){return e.replace(Xf,FM)}function FM(e){return"\\"+e}function Wf(e,t,r){let s=pv(e,t,r);return!s||!s.length?void 0:`^(${s.map(w=>`(${w})`).join("|")})${r==="exclude"?"($|/)":"$"}`}function pv(e,t,r){if(!(e===void 0||e.length===0))return ne(e,s=>s&&kx(s,t,r,Nv[r]))}function Dx(e){return!/[.*?]/.test(e)}function BM(e,t,r){let s=e&&kx(e,t,r,Nv[r]);return s&&`^(${s})${r==="exclude"?"($|/)":"$"}`}function kx(e,t,r,s){let{singleAsteriskRegexFragment:f,doubleAsteriskRegexFragment:x,replaceWildcardCharacter:w}=s,A="",g=!1,B=$p(e,t),N=Zn(B);if(r!=="exclude"&&N==="**")return;B[0]=P_(B[0]),Dx(N)&&B.push("**","*");let X=0;for(let F of B){if(F==="**")A+=x;else if(r==="directories"&&(A+="(",X++),g&&(A+=zn),r!=="exclude"){let $="";F.charCodeAt(0)===42?($+="([^./]"+f+")?",F=F.substr(1)):F.charCodeAt(0)===63&&($+="[^./]",F=F.substr(1)),$+=F.replace(Xf,w),$!==F&&(A+=Yf),A+=$}else A+=F.replace(Xf,w);g=!0}for(;X>0;)A+=")?",X--;return A}function fv(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function Ix(e,t,r,s,f){e=Un(e),f=Un(f);let x=tn(f,e);return{includeFilePatterns:Ze(pv(r,x,"files"),w=>`^${w}$`),includeFilePattern:Wf(r,x,"files"),includeDirectoryPattern:Wf(r,x,"directories"),excludePattern:Wf(t,x,"exclude"),basePaths:UM(e,r,s)}}function Vf(e,t){return new RegExp(e,t?"":"i")}function qM(e,t,r,s,f,x,w,A,g){e=Un(e),x=Un(x);let B=Ix(e,r,s,f,x),N=B.includeFilePatterns&&B.includeFilePatterns.map(Ye=>Vf(Ye,f)),X=B.includeDirectoryPattern&&Vf(B.includeDirectoryPattern,f),F=B.excludePattern&&Vf(B.excludePattern,f),$=N?N.map(()=>[]):[[]],ae=new Map,Te=wp(f);for(let Ye of B.basePaths)Se(Ye,tn(x,Ye),w);return ct($);function Se(Ye,Ne,oe){let Ve=Te(g(Ne));if(ae.has(Ve))return;ae.set(Ve,!0);let{files:pt,directories:Gt}=A(Ye);for(let Nt of Is(pt,ri)){let Xt=tn(Ye,Nt),er=tn(Ne,Nt);if(!(t&&!da(Xt,t))&&!(F&&F.test(er)))if(!N)$[0].push(Xt);else{let Tn=he(N,Hr=>Hr.test(er));Tn!==-1&&$[Tn].push(Xt)}}if(!(oe!==void 0&&(oe--,oe===0)))for(let Nt of Is(Gt,ri)){let Xt=tn(Ye,Nt),er=tn(Ne,Nt);(!X||X.test(er))&&(!F||!F.test(er))&&Se(Xt,er,oe)}}}function UM(e,t,r){let s=[e];if(t){let f=[];for(let x of t){let w=A_(x)?x:Un(tn(e,x));f.push(zM(w))}f.sort(rl(!r));for(let x of f)me(s,w=>!jT(w,x,e,!r))&&s.push(x)}return s}function zM(e){let t=Je(e,h8);return t<0?OT(e)?P_(ma(e)):e:e.substring(0,e.lastIndexOf(zn,t))}function Nx(e,t){return t||Ox(e)||3}function Ox(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".js":case".cjs":case".mjs":return 1;case".jsx":return 2;case".ts":case".cts":case".mts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}function Mx(e,t){let r=e&&Ax(e);if(!t||t.length===0)return r?Jl:Jo;let s=r?Jl:Jo,f=ct(s);return[...s,...qt(t,w=>w.scriptKind===7||r&&WM(w.scriptKind)&&f.indexOf(w.extension)===-1?[w.extension]:void 0)]}function Lx(e,t){return!e||!Cx(e)?t:t===Jl?v8:t===Jo?g8:[...t,[".json"]]}function WM(e){return e===1||e===2}function dv(e){return Ke(Lv,t=>ns(e,t))}function mv(e){return Ke(Ov,t=>ns(e,t))}function Rx(e){let{imports:t}=e,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:W1(dv,mv);return q(t,s=>{let{text:f}=s;return So(f)?r(f):void 0})||!1}function VM(e,t,r,s){if(e==="js"||t===99)return shouldAllowImportingTsExtension(r)&&f()!==2?3:2;if(e==="minimal")return 0;if(e==="index")return 1;if(!shouldAllowImportingTsExtension(r))return Rx(s)?2:0;return f();function f(){let x=!1,w=s.imports.length?s.imports.map(A=>A.text):y0(s)?HM(s).map(A=>A.arguments[0].text):Bt;for(let A of w)if(So(A)){if(mv(A))return 3;dv(A)&&(x=!0)}return x?2:0}}function HM(e){let t=0,r;for(let s of e.statements){if(t>3)break;W3(s)?r=Ft(r,s.declarationList.declarations.map(f=>f.initializer)):Zl(s)&&El(s.expression,!0)?r=tr(r,s.expression):t++}return r||Bt}function GM(e,t,r){if(!e)return!1;let s=Mx(t,r);for(let f of ct(Lx(t,s)))if(ns(e,f))return!0;return!1}function jx(e){let t=e.match(/\//g);return t?t.length:0}function $M(e,t){return Vr(jx(e),jx(t))}function Ll(e){for(let t of Qf){let r=Jx(e,t);if(r!==void 0)return r}return e}function Jx(e,t){return ns(e,t)?Fx(e,t):void 0}function Fx(e,t){return e.substring(0,e.length-t.length)}function KM(e,t){return RT(e,t,Qf,!1)}function Bx(e){let t=e.indexOf("*");return t===-1?e:e.indexOf("*",t+1)!==-1?void 0:{prefix:e.substr(0,t),suffix:e.substr(t+1)}}function XM(e){return qt(ho(e),t=>Bx(t))}function hs(e){return!(e>=0)}function qx(e){return e===".ts"||e===".tsx"||e===".d.ts"||e===".cts"||e===".mts"||e===".d.mts"||e===".d.cts"||Pn(e,".d.")&&es(e,".ts")}function YM(e){return qx(e)||e===".json"}function QM(e){let t=hv(e);return t!==void 0?t:Y.fail(`File ${e} has unknown extension.`)}function ZM(e){return hv(e)!==void 0}function hv(e){return Ae(Qf,t=>ns(e,t))}function eL(e,t){return e.checkJsDirective?e.checkJsDirective.enabled:t.checkJs}function tL(e,t){let r=[];for(let s of e){if(s===t)return t;Ji(s)||r.push(s)}return TT(r,s=>s,t)}function rL(e,t){let r=e.indexOf(t);return Y.assert(r!==-1),e.slice(r)}function Rl(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),s=1;ss&&(s=x)}return{min:r,max:s}}function iL(e){return{pos:Io(e),end:e.end}}function aL(e,t){let r=t.pos-1,s=Math.min(e.text.length,Ar(e.text,t.end)+1);return{pos:r,end:s}}function sL(e,t,r){return t.skipLibCheck&&e.isDeclarationFile||t.skipDefaultLibCheck&&e.hasNoDefaultLib||r.isSourceOfProjectReferenceRedirect(e.fileName)}function gv(e,t){return e===t||typeof e=="object"&&e!==null&&typeof t=="object"&&t!==null&&S_(e,t,gv)}function Hf(e){let t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:let B=e.length-1,N=0;for(;e.charCodeAt(N)===48;)N++;return e.slice(N,B)||"0"}let r=2,s=e.length-1,f=(s-r)*t,x=new Uint16Array((f>>>4)+(f&15?1:0));for(let B=s-1,N=0;B>=r;B--,N+=t){let X=N>>>4,F=e.charCodeAt(B),ae=(F<=57?F-48:10+F-(F<=70?65:97))<<(N&15);x[X]|=ae;let Te=ae>>>16;Te&&(x[X+1]|=Te)}let w="",A=x.length-1,g=!0;for(;g;){let B=0;g=!1;for(let N=A;N>=0;N--){let X=B<<16|x[N],F=X/10|0;x[N]=F,B=X-F*10,F&&!g&&(A=N,g=!0)}w=B+w}return w}function yv(e){let{negative:t,base10Value:r}=e;return(t&&r!=="0"?"-":"")+r}function oL(e){if(zx(e,!1))return Ux(e)}function Ux(e){let t=e.startsWith("-"),r=Hf(`${t?e.slice(1):e}n`);return{negative:t,base10Value:r}}function zx(e,t){if(e==="")return!1;let r=Po(99,!1),s=!0;r.setOnError(()=>s=!1),r.setText(e+"n");let f=r.scan(),x=f===40;x&&(f=r.scan());let w=r.getTokenFlags();return s&&f===9&&r.getTextPos()===e.length+1&&!(w&512)&&(!t||e===yv({negative:x,base10Value:Hf(r.getTokenValue())}))}function _L(e){return!!(e.flags&16777216)||F3(e)||uL(e)||lL(e)||!(g0(e)||cL(e))}function cL(e){return yt(e)&&nu(e.parent)&&e.parent.name===e}function lL(e){for(;e.kind===79||e.kind===208;)e=e.parent;if(e.kind!==164)return!1;if(rn(e.parent,256))return!0;let t=e.parent.parent.kind;return t===261||t===184}function uL(e){if(e.kind!==79)return!1;let t=zi(e.parent,r=>{switch(r.kind){case 294:return!0;case 208:case 230:return!1;default:return"quit"}});return(t==null?void 0:t.token)===117||(t==null?void 0:t.parent.kind)===261}function pL(e){return ac(e)&&yt(e.typeName)}function fL(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fa;if(e.length<2)return!0;let r=e[0];for(let s=1,f=e.length;sFi(e,t))}function yL(e){if(!e.parent)return;switch(e.kind){case 165:let{parent:r}=e;return r.kind===192?void 0:r.typeParameters;case 166:return e.parent.parameters;case 201:return e.parent.templateSpans;case 236:return e.parent.templateSpans;case 167:{let{parent:s}=e;return ME(s)?s.modifiers:void 0}case 294:return e.parent.heritageClauses}let{parent:t}=e;if(zy(e))return f2(e.parent)?void 0:e.parent.tags;switch(t.kind){case 184:case 261:return Ry(e)?t.members:void 0;case 189:case 190:return t.types;case 186:case 206:case 357:case 272:case 276:return t.elements;case 207:case 289:return t.properties;case 210:case 211:return Jy(e)?t.typeArguments:t.expression===e?void 0:t.arguments;case 281:case 285:return o3(e)?t.children:void 0;case 283:case 282:return Jy(e)?t.typeArguments:void 0;case 238:case 292:case 293:case 265:return t.statements;case 266:return t.clauses;case 260:case 228:return Js(e)?t.members:void 0;case 263:return cE(e)?t.members:void 0;case 308:return t.statements}}function vL(e){if(!e.typeParameters){if(Ke(e.parameters,t=>!V0(t)))return!0;if(e.kind!==216){let t=pa(e.parameters);if(!(t&&kl(t)))return!0}}return!1}function bL(e){return e==="Infinity"||e==="-Infinity"||e==="NaN"}function Gx(e){return e.kind===257&&e.parent.kind===295}function TL(e){let t=e.valueDeclaration&&If(e.valueDeclaration);return!!t&&(Vs(t)||Gx(t))}function SL(e){return e.kind===215||e.kind===216}function xL(e){return e.replace(/\$/gm,()=>"\\$")}function $x(e){return(+e).toString()===e}function EL(e,t,r,s){return vy(e,t)?si.createIdentifier(e):!s&&$x(e)&&+e>=0?si.createNumericLiteral(+e):si.createStringLiteral(e,!!r)}function Kx(e){return!!(e.flags&262144&&e.isThisType)}function wL(e){let t=0,r=0,s=0,f=0,x;(B=>{B[B.BeforeNodeModules=0]="BeforeNodeModules",B[B.NodeModules=1]="NodeModules",B[B.Scope=2]="Scope",B[B.PackageContent=3]="PackageContent"})(x||(x={}));let w=0,A=0,g=0;for(;A>=0;)switch(w=A,A=e.indexOf("/",w+1),g){case 0:e.indexOf(nodeModulesPathPart,w)===w&&(t=w,r=A,g=1);break;case 1:case 2:g===1&&e.charAt(w+1)==="@"?g=2:(s=A,g=3);break;case 3:e.indexOf(nodeModulesPathPart,w)===w?g=1:g=3;break}return f=w,g>1?{topLevelNodeModulesIndex:t,topLevelPackageNameIndex:r,packageRootIndex:s,fileNameIndex:f}:void 0}function CL(e){var t;return e.kind===344?(t=e.typeExpression)==null?void 0:t.type:e.type}function Xx(e){switch(e.kind){case 165:case 260:case 261:case 262:case 263:case 349:case 341:case 343:return!0;case 270:return e.isTypeOnly;case 273:case 278:return e.parent.parent.isTypeOnly;default:return!1}}function AL(e){return i2(e)||zo(e)||Wo(e)||_c(e)||eu(e)||Xx(e)||Ea(e)&&!Xy(e)&&!vf(e)}function Yx(e){if(!Dy(e))return!1;let{isBracketed:t,typeExpression:r}=e;return t||!!r&&r.type.kind===319}function PL(e,t){if(e.length===0)return!1;let r=e.charCodeAt(0);return r===35?e.length>1&&Wn(e.charCodeAt(1),t):Wn(r,t)}function Qx(e){var t;return((t=getSnippetElement(e))==null?void 0:t.kind)===0}function Zx(e){return Pr(e)&&(e.type&&e.type.kind===319||of(e).some(t=>{let{isBracketed:r,typeExpression:s}=t;return r||!!s&&s.type.kind===319}))}function DL(e){switch(e.kind){case 169:case 168:return!!e.questionToken;case 166:return!!e.questionToken||Zx(e);case 351:case 344:return Yx(e);default:return!1}}function kL(e){let t=e.kind;return(t===208||t===209)&&Uo(e.expression)}function IL(e){return Pr(e)&&qo(e)&&ya(e)&&!!wy(e)}function NL(e){return Y.checkDefined(e8(e))}function e8(e){let t=wy(e);return t&&t.typeExpression&&t.typeExpression.type}var t8,Kf,r8,n8,Z_,vv,bv,i8,Tv,a8,Sv,xv,Ev,wv,s8,o8,_8,c8,l8,Cv,u8,p8,f8,jo,xa,d8,m8,lr,Av,jl,Xf,h8,Pv,Yf,Dv,kv,Iv,Nv,Jo,Ov,g8,y8,Mv,Lv,Jl,v8,Rv,b8,jv,Qf,T8,OL=D({"src/compiler/utilities.ts"(){"use strict";nn(),t8=[],Kf="tslib",r8=160,n8=1e6,Z_=_D(),vv=(e=>(e[e.None=0]="None",e[e.NeverAsciiEscape=1]="NeverAsciiEscape",e[e.JsxAttributeEscape=2]="JsxAttributeEscape",e[e.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",e[e.AllowNumericSeparator=8]="AllowNumericSeparator",e))(vv||{}),bv=/^(\/\/\/\s*/,i8=/^(\/\/\/\s*/,Tv=/^(\/\/\/\s*/,a8=/^(\/\/\/\s*/,Sv=(e=>(e[e.None=0]="None",e[e.Definite=1]="Definite",e[e.Compound=2]="Compound",e))(Sv||{}),xv=(e=>(e[e.Normal=0]="Normal",e[e.Generator=1]="Generator",e[e.Async=2]="Async",e[e.Invalid=4]="Invalid",e[e.AsyncGenerator=3]="AsyncGenerator",e))(xv||{}),Ev=(e=>(e[e.Left=0]="Left",e[e.Right=1]="Right",e))(Ev||{}),wv=(e=>(e[e.Comma=0]="Comma",e[e.Spread=1]="Spread",e[e.Yield=2]="Yield",e[e.Assignment=3]="Assignment",e[e.Conditional=4]="Conditional",e[e.Coalesce=4]="Coalesce",e[e.LogicalOR=5]="LogicalOR",e[e.LogicalAND=6]="LogicalAND",e[e.BitwiseOR=7]="BitwiseOR",e[e.BitwiseXOR=8]="BitwiseXOR",e[e.BitwiseAND=9]="BitwiseAND",e[e.Equality=10]="Equality",e[e.Relational=11]="Relational",e[e.Shift=12]="Shift",e[e.Additive=13]="Additive",e[e.Multiplicative=14]="Multiplicative",e[e.Exponentiation=15]="Exponentiation",e[e.Unary=16]="Unary",e[e.Update=17]="Update",e[e.LeftHandSide=18]="LeftHandSide",e[e.Member=19]="Member",e[e.Primary=20]="Primary",e[e.Highest=20]="Highest",e[e.Lowest=0]="Lowest",e[e.Invalid=-1]="Invalid",e))(wv||{}),s8=/\$\{/g,o8=/[\\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,_8=/[\\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,c8=/\r\n|[\\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/g,l8=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"})),Cv=/[^\u0000-\u007F]/g,u8=/[\"\u0000-\u001f\u2028\u2029\u0085]/g,p8=/[\'\u0000-\u001f\u2028\u2029\u0085]/g,f8=new Map(Object.entries({'"':""","'":"'"})),jo=[""," "],xa="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",d8=`\r +`,m8=` +`,lr={getNodeConstructor:()=>nv,getTokenConstructor:()=>nM,getIdentifierConstructor:()=>iM,getPrivateIdentifierConstructor:()=>nv,getSourceFileConstructor:()=>nv,getSymbolConstructor:()=>eM,getTypeConstructor:()=>tM,getSignatureConstructor:()=>rM,getSourceMapSourceConstructor:()=>aM},Av=[],Xf=/[^\w\s\/]/g,h8=[42,63],Pv=["node_modules","bower_components","jspm_packages"],Yf=`(?!(${Pv.join("|")})(/|$))`,Dv={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${Yf}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>fv(e,Dv.singleAsteriskRegexFragment)},kv={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${Yf}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>fv(e,kv.singleAsteriskRegexFragment)},Iv={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:e=>fv(e,Iv.singleAsteriskRegexFragment)},Nv={files:Dv,directories:kv,exclude:Iv},Jo=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],Ov=ct(Jo),g8=[...Jo,[".json"]],y8=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx",".cts",".mts"],Mv=[[".js",".jsx"],[".mjs"],[".cjs"]],Lv=ct(Mv),Jl=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],v8=[...Jl,[".json"]],Rv=[".d.ts",".d.cts",".d.mts"],b8=[".ts",".cts",".mts",".tsx"],jv=(e=>(e[e.Minimal=0]="Minimal",e[e.Index=1]="Index",e[e.JsExtension=2]="JsExtension",e[e.TsExtension=3]="TsExtension",e))(jv||{}),Qf=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"],T8={files:Bt,directories:Bt}}});function S8(){let e,t,r,s,f;return{createBaseSourceFileNode:x,createBaseIdentifierNode:w,createBasePrivateIdentifierNode:A,createBaseTokenNode:g,createBaseNode:B};function x(N){return new(f||(f=lr.getSourceFileConstructor()))(N,-1,-1)}function w(N){return new(r||(r=lr.getIdentifierConstructor()))(N,-1,-1)}function A(N){return new(s||(s=lr.getPrivateIdentifierConstructor()))(N,-1,-1)}function g(N){return new(t||(t=lr.getTokenConstructor()))(N,-1,-1)}function B(N){return new(e||(e=lr.getNodeConstructor()))(N,-1,-1)}}var ML=D({"src/compiler/factory/baseNodeFactory.ts"(){"use strict";nn()}}),Jv,LL=D({"src/compiler/factory/parenthesizerRules.ts"(){"use strict";nn(),Jv={getParenthesizeLeftSideOfBinaryForOperator:e=>rr,getParenthesizeRightSideOfBinaryForOperator:e=>rr,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,r)=>r,parenthesizeExpressionOfComputedPropertyName:rr,parenthesizeConditionOfConditionalExpression:rr,parenthesizeBranchOfConditionalExpression:rr,parenthesizeExpressionOfExportDefault:rr,parenthesizeExpressionOfNew:e=>ti(e,Do),parenthesizeLeftSideOfAccess:e=>ti(e,Do),parenthesizeOperandOfPostfixUnary:e=>ti(e,Do),parenthesizeOperandOfPrefixUnary:e=>ti(e,t3),parenthesizeExpressionsOfCommaDelimitedList:e=>ti(e,_s),parenthesizeExpressionForDisallowedComma:rr,parenthesizeExpressionOfExpressionStatement:rr,parenthesizeConciseBodyOfArrowFunction:rr,parenthesizeCheckTypeOfConditionalType:rr,parenthesizeExtendsTypeOfConditionalType:rr,parenthesizeConstituentTypesOfUnionType:e=>ti(e,_s),parenthesizeConstituentTypeOfUnionType:rr,parenthesizeConstituentTypesOfIntersectionType:e=>ti(e,_s),parenthesizeConstituentTypeOfIntersectionType:rr,parenthesizeOperandOfTypeOperator:rr,parenthesizeOperandOfReadonlyTypeOperator:rr,parenthesizeNonArrayTypeOfPostfixType:rr,parenthesizeElementTypesOfTupleType:e=>ti(e,_s),parenthesizeElementTypeOfTupleType:rr,parenthesizeTypeOfOptionalType:rr,parenthesizeTypeArguments:e=>e&&ti(e,_s),parenthesizeLeadingTypeArgument:rr}}}),RL=()=>{},x8=()=>new Proxy({},{get:()=>()=>{}});function jL(e){Bv.push(e)}function Zf(e,t){let r=e&8?JL:FL,s=tl(()=>e&1?Jv:createParenthesizerRules(Ye)),f=tl(()=>e&2?nullNodeConverters:x8(Ye)),x=An(n=>(o,l)=>xu(o,n,l)),w=An(n=>o=>Tu(n,o)),A=An(n=>o=>Su(o,n)),g=An(n=>()=>db(n)),B=An(n=>o=>Ac(n,o)),N=An(n=>(o,l)=>mb(n,o,l)),X=An(n=>(o,l)=>Km(n,o,l)),F=An(n=>(o,l)=>Xm(n,o,l)),$=An(n=>(o,l)=>ph(n,o,l)),ae=An(n=>(o,l,p)=>Cb(n,o,l,p)),Te=An(n=>(o,l,p)=>fh(n,o,l,p)),Se=An(n=>(o,l,p,k)=>Ab(n,o,l,p,k)),Ye={get parenthesizer(){return s()},get converters(){return f()},baseFactory:t,flags:e,createNodeArray:Ne,createNumericLiteral:Gt,createBigIntLiteral:Nt,createStringLiteral:er,createStringLiteralFromNode:Tn,createRegularExpressionLiteral:Hr,createLiteralLikeNode:Gi,createIdentifier:Ut,createTempVariable:kn,createLoopVariable:an,createUniqueName:mr,getGeneratedNameForNode:$i,createPrivateIdentifier:Ur,createUniquePrivateName:_r,getGeneratedPrivateNameForNode:Sn,createToken:pr,createSuper:Zt,createThis:Or,createNull:Nn,createTrue:ar,createFalse:oi,createModifier:cr,createModifiersFromModifierFlags:$r,createQualifiedName:hr,updateQualifiedName:On,createComputedPropertyName:nr,updateComputedPropertyName:br,createTypeParameterDeclaration:Kr,updateTypeParameterDeclaration:wa,createParameterDeclaration:$n,updateParameterDeclaration:Ki,createDecorator:Mn,updateDecorator:_i,createPropertySignature:Ca,updatePropertySignature:St,createPropertyDeclaration:He,updatePropertyDeclaration:_t,createMethodSignature:ft,updateMethodSignature:Kt,createMethodDeclaration:zt,updateMethodDeclaration:xe,createConstructorDeclaration:Mt,updateConstructorDeclaration:It,createGetAccessorDeclaration:gr,updateGetAccessorDeclaration:Ln,createSetAccessorDeclaration:ci,updateSetAccessorDeclaration:Xi,createCallSignature:vs,updateCallSignature:$s,createConstructSignature:li,updateConstructSignature:Yi,createIndexSignature:Qi,updateIndexSignature:bs,createClassStaticBlockDeclaration:Re,updateClassStaticBlockDeclaration:ot,createTemplateLiteralTypeSpan:Ai,updateTemplateLiteralTypeSpan:xn,createKeywordTypeNode:Dt,createTypePredicateNode:Pi,updateTypePredicateNode:Z,createTypeReferenceNode:ie,updateTypeReferenceNode:U,createFunctionTypeNode:L,updateFunctionTypeNode:fe,createConstructorTypeNode:it,updateConstructorTypeNode:Ge,createTypeQueryNode:Yt,updateTypeQueryNode:$t,createTypeLiteralNode:Wt,updateTypeLiteralNode:Xr,createArrayTypeNode:Dr,updateArrayTypeNode:Lr,createTupleTypeNode:yr,updateTupleTypeNode:Rn,createNamedTupleMember:wt,updateNamedTupleMember:Tr,createOptionalTypeNode:Tt,updateOptionalTypeNode:kt,createRestTypeNode:de,updateRestTypeNode:jn,createUnionTypeNode:e_,updateUnionTypeNode:mc,createIntersectionTypeNode:Da,updateIntersectionTypeNode:Ts,createConditionalTypeNode:Ot,updateConditionalTypeNode:dr,createInferTypeNode:Dd,updateInferTypeNode:ea,createImportTypeNode:Id,updateImportTypeNode:ka,createParenthesizedType:t_,updateParenthesizedType:En,createThisTypeNode:Er,createTypeOperatorNode:Q,updateTypeOperatorNode:Jn,createIndexedAccessTypeNode:Ia,updateIndexedAccessTypeNode:Ss,createMappedTypeNode:hc,updateMappedTypeNode:wr,createLiteralTypeNode:zr,updateLiteralTypeNode:xs,createTemplateLiteralType:kd,updateTemplateLiteralType:sn,createObjectBindingPattern:Nd,updateObjectBindingPattern:R2,createArrayBindingPattern:Es,updateArrayBindingPattern:j2,createBindingElement:gc,updateBindingElement:Ks,createArrayLiteralExpression:uu,updateArrayLiteralExpression:Od,createObjectLiteralExpression:r_,updateObjectLiteralExpression:J2,createPropertyAccessExpression:e&4?(n,o)=>setEmitFlags(ta(n,o),262144):ta,updatePropertyAccessExpression:Ld,createPropertyAccessChain:e&4?(n,o,l)=>setEmitFlags(Xs(n,o,l),262144):Xs,updatePropertyAccessChain:Rd,createElementAccessExpression:pu,updateElementAccessExpression:F2,createElementAccessChain:fu,updateElementAccessChain:jd,createCallExpression:Na,updateCallExpression:B2,createCallChain:du,updateCallChain:Kn,createNewExpression:vc,updateNewExpression:mu,createTaggedTemplateExpression:hu,updateTaggedTemplateExpression:q2,createTypeAssertion:Fd,updateTypeAssertion:Bd,createParenthesizedExpression:gu,updateParenthesizedExpression:qd,createFunctionExpression:yu,updateFunctionExpression:Ud,createArrowFunction:vu,updateArrowFunction:zd,createDeleteExpression:bu,updateDeleteExpression:U2,createTypeOfExpression:mn,updateTypeOfExpression:z2,createVoidExpression:ui,updateVoidExpression:W2,createAwaitExpression:Oa,updateAwaitExpression:Ys,createPrefixUnaryExpression:Tu,updatePrefixUnaryExpression:bc,createPostfixUnaryExpression:Su,updatePostfixUnaryExpression:Wd,createBinaryExpression:xu,updateBinaryExpression:V2,createConditionalExpression:Eu,updateConditionalExpression:H2,createTemplateExpression:Di,updateTemplateExpression:Hd,createTemplateHead:Sc,createTemplateMiddle:Cu,createTemplateTail:G2,createNoSubstitutionTemplateLiteral:$d,createTemplateLiteralLikeNode:Qs,createYieldExpression:Kd,updateYieldExpression:$2,createSpreadElement:Xd,updateSpreadElement:K2,createClassExpression:Yd,updateClassExpression:xc,createOmittedExpression:X2,createExpressionWithTypeArguments:Qd,updateExpressionWithTypeArguments:Xn,createAsExpression:Ec,updateAsExpression:Zd,createNonNullExpression:em,updateNonNullExpression:Au,createSatisfiesExpression:tm,updateSatisfiesExpression:Pu,createNonNullChain:pi,updateNonNullChain:rm,createMetaProperty:wc,updateMetaProperty:ra,createTemplateSpan:i_,updateTemplateSpan:nm,createSemicolonClassElement:im,createBlock:Zs,updateBlock:am,createVariableStatement:sm,updateVariableStatement:om,createEmptyStatement:Du,createExpressionStatement:a_,updateExpressionStatement:Y2,createIfStatement:ku,updateIfStatement:Q2,createDoStatement:Iu,updateDoStatement:Z2,createWhileStatement:_m,updateWhileStatement:eb,createForStatement:Nu,updateForStatement:cm,createForInStatement:lm,updateForInStatement:tb,createForOfStatement:um,updateForOfStatement:rb,createContinueStatement:pm,updateContinueStatement:fm,createBreakStatement:Ou,updateBreakStatement:dm,createReturnStatement:mm,updateReturnStatement:nb,createWithStatement:Mu,updateWithStatement:hm,createSwitchStatement:Lu,updateSwitchStatement:eo,createLabeledStatement:gm,updateLabeledStatement:ym,createThrowStatement:vm,updateThrowStatement:ib,createTryStatement:bm,updateTryStatement:ab,createDebuggerStatement:Tm,createVariableDeclaration:Cc,updateVariableDeclaration:Sm,createVariableDeclarationList:Ru,updateVariableDeclarationList:sb,createFunctionDeclaration:xm,updateFunctionDeclaration:ju,createClassDeclaration:Em,updateClassDeclaration:Ju,createInterfaceDeclaration:wm,updateInterfaceDeclaration:Cm,createTypeAliasDeclaration:sr,updateTypeAliasDeclaration:Ma,createEnumDeclaration:Fu,updateEnumDeclaration:La,createModuleDeclaration:Am,updateModuleDeclaration:Sr,createModuleBlock:Ra,updateModuleBlock:Yr,createCaseBlock:Pm,updateCaseBlock:_b,createNamespaceExportDeclaration:Dm,updateNamespaceExportDeclaration:km,createImportEqualsDeclaration:Im,updateImportEqualsDeclaration:Nm,createImportDeclaration:Om,updateImportDeclaration:Mm,createImportClause:Lm,updateImportClause:Rm,createAssertClause:Bu,updateAssertClause:lb,createAssertEntry:s_,updateAssertEntry:jm,createImportTypeAssertionContainer:qu,updateImportTypeAssertionContainer:Jm,createNamespaceImport:Fm,updateNamespaceImport:Uu,createNamespaceExport:Bm,updateNamespaceExport:qm,createNamedImports:Um,updateNamedImports:ub,createImportSpecifier:zm,updateImportSpecifier:pb,createExportAssignment:zu,updateExportAssignment:Wu,createExportDeclaration:na,updateExportDeclaration:Wm,createNamedExports:to,updateNamedExports:Hm,createExportSpecifier:Vu,updateExportSpecifier:o_,createMissingDeclaration:fb,createExternalModuleReference:Gm,updateExternalModuleReference:$m,get createJSDocAllType(){return g(315)},get createJSDocUnknownType(){return g(316)},get createJSDocNonNullableType(){return X(318)},get updateJSDocNonNullableType(){return F(318)},get createJSDocNullableType(){return X(317)},get updateJSDocNullableType(){return F(317)},get createJSDocOptionalType(){return B(319)},get updateJSDocOptionalType(){return N(319)},get createJSDocVariadicType(){return B(321)},get updateJSDocVariadicType(){return N(321)},get createJSDocNamepathType(){return B(322)},get updateJSDocNamepathType(){return N(322)},createJSDocFunctionType:Ym,updateJSDocFunctionType:hb,createJSDocTypeLiteral:Qm,updateJSDocTypeLiteral:gb,createJSDocTypeExpression:Zm,updateJSDocTypeExpression:yb,createJSDocSignature:eh,updateJSDocSignature:Hu,createJSDocTemplateTag:__,updateJSDocTemplateTag:Gu,createJSDocTypedefTag:$u,updateJSDocTypedefTag:th,createJSDocParameterTag:Pc,updateJSDocParameterTag:vb,createJSDocPropertyTag:Ku,updateJSDocPropertyTag:bb,createJSDocCallbackTag:rh,updateJSDocCallbackTag:nh,createJSDocOverloadTag:ih,updateJSDocOverloadTag:ah,createJSDocAugmentsTag:sh,updateJSDocAugmentsTag:Xu,createJSDocImplementsTag:Yu,updateJSDocImplementsTag:wb,createJSDocSeeTag:ro,updateJSDocSeeTag:Tb,createJSDocNameReference:ws,updateJSDocNameReference:Dc,createJSDocMemberName:oh,updateJSDocMemberName:Sb,createJSDocLink:_h,updateJSDocLink:xb,createJSDocLinkCode:ch,updateJSDocLinkCode:lh,createJSDocLinkPlain:uh,updateJSDocLinkPlain:Eb,get createJSDocTypeTag(){return Te(347)},get updateJSDocTypeTag(){return Se(347)},get createJSDocReturnTag(){return Te(345)},get updateJSDocReturnTag(){return Se(345)},get createJSDocThisTag(){return Te(346)},get updateJSDocThisTag(){return Se(346)},get createJSDocAuthorTag(){return $(333)},get updateJSDocAuthorTag(){return ae(333)},get createJSDocClassTag(){return $(335)},get updateJSDocClassTag(){return ae(335)},get createJSDocPublicTag(){return $(336)},get updateJSDocPublicTag(){return ae(336)},get createJSDocPrivateTag(){return $(337)},get updateJSDocPrivateTag(){return ae(337)},get createJSDocProtectedTag(){return $(338)},get updateJSDocProtectedTag(){return ae(338)},get createJSDocReadonlyTag(){return $(339)},get updateJSDocReadonlyTag(){return ae(339)},get createJSDocOverrideTag(){return $(340)},get updateJSDocOverrideTag(){return ae(340)},get createJSDocDeprecatedTag(){return $(334)},get updateJSDocDeprecatedTag(){return ae(334)},get createJSDocThrowsTag(){return Te(352)},get updateJSDocThrowsTag(){return Se(352)},get createJSDocSatisfiesTag(){return Te(353)},get updateJSDocSatisfiesTag(){return Se(353)},createJSDocEnumTag:mh,updateJSDocEnumTag:Db,createJSDocUnknownTag:dh,updateJSDocUnknownTag:Pb,createJSDocText:hh,updateJSDocText:Qu,createJSDocComment:gh,updateJSDocComment:yh,createJsxElement:Zu,updateJsxElement:kb,createJsxSelfClosingElement:c_,updateJsxSelfClosingElement:vh,createJsxOpeningElement:bh,updateJsxOpeningElement:Ib,createJsxClosingElement:on,updateJsxClosingElement:Th,createJsxFragment:ep,createJsxText:l_,updateJsxText:Ob,createJsxOpeningFragment:kc,createJsxJsxClosingFragment:Mb,updateJsxFragment:Nb,createJsxAttribute:Sh,updateJsxAttribute:Lb,createJsxAttributes:xh,updateJsxAttributes:tp,createJsxSpreadAttribute:no,updateJsxSpreadAttribute:Rb,createJsxExpression:Ic,updateJsxExpression:Eh,createCaseClause:wh,updateCaseClause:rp,createDefaultClause:np,updateDefaultClause:jb,createHeritageClause:Ch,updateHeritageClause:Ah,createCatchClause:ip,updateCatchClause:Ph,createPropertyAssignment:Fa,updatePropertyAssignment:Jb,createShorthandPropertyAssignment:Dh,updateShorthandPropertyAssignment:Bb,createSpreadAssignment:ap,updateSpreadAssignment:ki,createEnumMember:sp,updateEnumMember:qb,createSourceFile:Ub,updateSourceFile:Mh,createRedirectedSourceFile:Ih,createBundle:Lh,updateBundle:Wb,createUnparsedSource:Nc,createUnparsedPrologue:Vb,createUnparsedPrepend:Hb,createUnparsedTextLike:Gb,createUnparsedSyntheticReference:$b,createInputFiles:Kb,createSyntheticExpression:Rh,createSyntaxList:jh,createNotEmittedStatement:Jh,createPartiallyEmittedExpression:Fh,updatePartiallyEmittedExpression:Bh,createCommaListExpression:Mc,updateCommaListExpression:Xb,createEndOfDeclarationMarker:Yb,createMergeDeclarationMarker:Qb,createSyntheticReferenceExpression:Uh,updateSyntheticReferenceExpression:_p,cloneNode:cp,get createComma(){return x(27)},get createAssignment(){return x(63)},get createLogicalOr(){return x(56)},get createLogicalAnd(){return x(55)},get createBitwiseOr(){return x(51)},get createBitwiseXor(){return x(52)},get createBitwiseAnd(){return x(50)},get createStrictEquality(){return x(36)},get createStrictInequality(){return x(37)},get createEquality(){return x(34)},get createInequality(){return x(35)},get createLessThan(){return x(29)},get createLessThanEquals(){return x(32)},get createGreaterThan(){return x(31)},get createGreaterThanEquals(){return x(33)},get createLeftShift(){return x(47)},get createRightShift(){return x(48)},get createUnsignedRightShift(){return x(49)},get createAdd(){return x(39)},get createSubtract(){return x(40)},get createMultiply(){return x(41)},get createDivide(){return x(43)},get createModulo(){return x(44)},get createExponent(){return x(42)},get createPrefixPlus(){return w(39)},get createPrefixMinus(){return w(40)},get createPrefixIncrement(){return w(45)},get createPrefixDecrement(){return w(46)},get createBitwiseNot(){return w(54)},get createLogicalNot(){return w(53)},get createPostfixIncrement(){return A(45)},get createPostfixDecrement(){return A(46)},createImmediatelyInvokedFunctionExpression:n6,createImmediatelyInvokedArrowFunction:Lc,createVoidZero:Rc,createExportDefault:zh,createExternalModuleExport:i6,createTypeCheck:a6,createMethodCall:Ba,createGlobalMethodCall:io,createFunctionBindCall:s6,createFunctionCallCall:o6,createFunctionApplyCall:_6,createArraySliceCall:Wh,createArrayConcatCall:Vh,createObjectDefinePropertyCall:u,createObjectGetOwnPropertyDescriptorCall:b,createReflectGetCall:O,createReflectSetCall:j,createPropertyDescriptor:re,createCallBinding:Jt,createAssignmentTargetWrapper:Lt,inlineExpressions:At,getInternalName:Fn,getLocalName:di,getExportName:Ii,getDeclarationName:_n,getNamespaceMemberName:qa,getExternalModuleOrNamespaceExportName:Hh,restoreOuterExpressions:We,restoreEnclosingLabel:$e,createUseStrictPrologue:wn,copyPrologue:lp,copyStandardPrologue:Ua,copyCustomPrologue:up,ensureUseStrict:Qr,liftToBlock:jc,mergeLexicalEnvironment:$h,updateModifiers:Kh};return c(Bv,n=>n(Ye)),Ye;function Ne(n,o){if(n===void 0||n===Bt)n=[];else if(_s(n)){if(o===void 0||n.hasTrailingComma===o)return n.transformFlags===void 0&&E8(n),Y.attachNodeArrayDebugInfo(n),n;let k=n.slice();return k.pos=n.pos,k.end=n.end,k.hasTrailingComma=o,k.transformFlags=n.transformFlags,Y.attachNodeArrayDebugInfo(k),k}let l=n.length,p=l>=1&&l<=4?n.slice():n;return p.pos=-1,p.end=-1,p.hasTrailingComma=!!o,p.transformFlags=0,E8(p),Y.attachNodeArrayDebugInfo(p),p}function oe(n){return t.createBaseNode(n)}function Ve(n){let o=oe(n);return o.symbol=void 0,o.localSymbol=void 0,o}function pt(n,o){return n!==o&&(n.typeArguments=o.typeArguments),r(n,o)}function Gt(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=Ve(8);return l.text=typeof n=="number"?n+"":n,l.numericLiteralFlags=o,o&384&&(l.transformFlags|=1024),l}function Nt(n){let o=In(9);return o.text=typeof n=="string"?n:yv(n)+"n",o.transformFlags|=4,o}function Xt(n,o){let l=Ve(10);return l.text=n,l.singleQuote=o,l}function er(n,o,l){let p=Xt(n,o);return p.hasExtendedUnicodeEscape=l,l&&(p.transformFlags|=1024),p}function Tn(n){let o=Xt(kf(n),void 0);return o.textSourceNode=n,o}function Hr(n){let o=In(13);return o.text=n,o}function Gi(n,o){switch(n){case 8:return Gt(o,0);case 9:return Nt(o);case 10:return er(o,void 0);case 11:return l_(o,!1);case 12:return l_(o,!0);case 13:return Hr(o);case 14:return Qs(n,o,void 0,0)}}function pn(n){let o=t.createBaseIdentifierNode(79);return o.escapedText=n,o.jsDoc=void 0,o.flowNode=void 0,o.symbol=void 0,o}function fn(n,o,l,p){let k=pn(vi(n));return setIdentifierAutoGenerate(k,{flags:o,id:Bl,prefix:l,suffix:p}),Bl++,k}function Ut(n,o,l){o===void 0&&n&&(o=_l(n)),o===79&&(o=void 0);let p=pn(vi(n));return l&&(p.flags|=128),p.escapedText==="await"&&(p.transformFlags|=67108864),p.flags&128&&(p.transformFlags|=1024),p}function kn(n,o,l,p){let k=1;o&&(k|=8);let V=fn("",k,l,p);return n&&n(V),V}function an(n){let o=2;return n&&(o|=8),fn("",o,void 0,void 0)}function mr(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;return Y.assert(!(o&7),"Argument out of range: flags"),Y.assert((o&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),fn(n,3|o,l,p)}function $i(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;Y.assert(!(o&7),"Argument out of range: flags");let k=n?js(n)?bd(!1,l,n,p,qr):`generated@${getNodeId(n)}`:"";(l||p)&&(o|=16);let V=fn(k,4|o,l,p);return V.original=n,V}function dn(n){let o=t.createBasePrivateIdentifierNode(80);return o.escapedText=n,o.transformFlags|=16777216,o}function Ur(n){return Pn(n,"#")||Y.fail("First character of private identifier must be #: "+n),dn(vi(n))}function Gr(n,o,l,p){let k=dn(vi(n));return setIdentifierAutoGenerate(k,{flags:o,id:Bl,prefix:l,suffix:p}),Bl++,k}function _r(n,o,l){n&&!Pn(n,"#")&&Y.fail("First character of private identifier must be #: "+n);let p=8|(n?3:1);return Gr(n!=null?n:"",p,o,l)}function Sn(n,o,l){let p=js(n)?bd(!0,o,n,l,qr):`#generated@${getNodeId(n)}`,V=Gr(p,4|(o||l?16:0),o,l);return V.original=n,V}function In(n){return t.createBaseTokenNode(n)}function pr(n){Y.assert(n>=0&&n<=162,"Invalid token"),Y.assert(n<=14||n>=17,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),Y.assert(n<=8||n>=14,"Invalid token. Use 'createLiteralLikeNode' to create literals."),Y.assert(n!==79,"Invalid token. Use 'createIdentifier' to create identifiers");let o=In(n),l=0;switch(n){case 132:l=384;break;case 123:case 121:case 122:case 146:case 126:case 136:case 85:case 131:case 148:case 160:case 144:case 149:case 101:case 145:case 161:case 152:case 134:case 153:case 114:case 157:case 155:l=1;break;case 106:l=134218752,o.flowNode=void 0;break;case 124:l=1024;break;case 127:l=16777216;break;case 108:l=16384,o.flowNode=void 0;break}return l&&(o.transformFlags|=l),o}function Zt(){return pr(106)}function Or(){return pr(108)}function Nn(){return pr(104)}function ar(){return pr(110)}function oi(){return pr(95)}function cr(n){return pr(n)}function $r(n){let o=[];return n&1&&o.push(cr(93)),n&2&&o.push(cr(136)),n&1024&&o.push(cr(88)),n&2048&&o.push(cr(85)),n&4&&o.push(cr(123)),n&8&&o.push(cr(121)),n&16&&o.push(cr(122)),n&256&&o.push(cr(126)),n&32&&o.push(cr(124)),n&16384&&o.push(cr(161)),n&64&&o.push(cr(146)),n&128&&o.push(cr(127)),n&512&&o.push(cr(132)),n&32768&&o.push(cr(101)),n&65536&&o.push(cr(145)),o.length?o:void 0}function hr(n,o){let l=oe(163);return l.left=n,l.right=Qt(o),l.transformFlags|=ye(l.left)|ec(l.right),l.flowNode=void 0,l}function On(n,o,l){return n.left!==o||n.right!==l?r(hr(o,l),n):n}function nr(n){let o=oe(164);return o.expression=s().parenthesizeExpressionOfComputedPropertyName(n),o.transformFlags|=ye(o.expression)|1024|131072,o}function br(n,o){return n.expression!==o?r(nr(o),n):n}function Kr(n,o,l,p){let k=Ve(165);return k.modifiers=xt(n),k.name=Qt(o),k.constraint=l,k.default=p,k.transformFlags=1,k.expression=void 0,k.jsDoc=void 0,k}function wa(n,o,l,p,k){return n.modifiers!==o||n.name!==l||n.constraint!==p||n.default!==k?r(Kr(o,l,p,k),n):n}function $n(n,o,l,p,k,V){var we,et;let ht=Ve(166);return ht.modifiers=xt(n),ht.dotDotDotToken=o,ht.name=Qt(l),ht.questionToken=p,ht.type=k,ht.initializer=Wa(V),Mf(ht.name)?ht.transformFlags=1:ht.transformFlags=gt(ht.modifiers)|ye(ht.dotDotDotToken)|ai(ht.name)|ye(ht.questionToken)|ye(ht.initializer)|(((we=ht.questionToken)!=null?we:ht.type)?1:0)|(((et=ht.dotDotDotToken)!=null?et:ht.initializer)?1024:0)|(Vn(ht.modifiers)&16476?8192:0),ht.jsDoc=void 0,ht}function Ki(n,o,l,p,k,V,we){return n.modifiers!==o||n.dotDotDotToken!==l||n.name!==p||n.questionToken!==k||n.type!==V||n.initializer!==we?r($n(o,l,p,k,V,we),n):n}function Mn(n){let o=oe(167);return o.expression=s().parenthesizeLeftSideOfAccess(n,!1),o.transformFlags|=ye(o.expression)|1|8192|33554432,o}function _i(n,o){return n.expression!==o?r(Mn(o),n):n}function Ca(n,o,l,p){let k=Ve(168);return k.modifiers=xt(n),k.name=Qt(o),k.type=p,k.questionToken=l,k.transformFlags=1,k.initializer=void 0,k.jsDoc=void 0,k}function St(n,o,l,p,k){return n.modifiers!==o||n.name!==l||n.questionToken!==p||n.type!==k?ue(Ca(o,l,p,k),n):n}function ue(n,o){return n!==o&&(n.initializer=o.initializer),r(n,o)}function He(n,o,l,p,k){let V=Ve(169);V.modifiers=xt(n),V.name=Qt(o),V.questionToken=l&&ql(l)?l:void 0,V.exclamationToken=l&&rd(l)?l:void 0,V.type=p,V.initializer=Wa(k);let we=V.flags&16777216||Vn(V.modifiers)&2;return V.transformFlags=gt(V.modifiers)|ai(V.name)|ye(V.initializer)|(we||V.questionToken||V.exclamationToken||V.type?1:0)|(Ws(V.name)||Vn(V.modifiers)&32&&V.initializer?8192:0)|16777216,V.jsDoc=void 0,V}function _t(n,o,l,p,k,V){return n.modifiers!==o||n.name!==l||n.questionToken!==(p!==void 0&&ql(p)?p:void 0)||n.exclamationToken!==(p!==void 0&&rd(p)?p:void 0)||n.type!==k||n.initializer!==V?r(He(o,l,p,k,V),n):n}function ft(n,o,l,p,k,V){let we=Ve(170);return we.modifiers=xt(n),we.name=Qt(o),we.questionToken=l,we.typeParameters=xt(p),we.parameters=xt(k),we.type=V,we.transformFlags=1,we.jsDoc=void 0,we.locals=void 0,we.nextContainer=void 0,we.typeArguments=void 0,we}function Kt(n,o,l,p,k,V,we){return n.modifiers!==o||n.name!==l||n.questionToken!==p||n.typeParameters!==k||n.parameters!==V||n.type!==we?pt(ft(o,l,p,k,V,we),n):n}function zt(n,o,l,p,k,V,we,et){let ht=Ve(171);if(ht.modifiers=xt(n),ht.asteriskToken=o,ht.name=Qt(l),ht.questionToken=p,ht.exclamationToken=void 0,ht.typeParameters=xt(k),ht.parameters=Ne(V),ht.type=we,ht.body=et,!ht.body)ht.transformFlags=1;else{let hn=Vn(ht.modifiers)&512,Ni=!!ht.asteriskToken,ia=hn&&Ni;ht.transformFlags=gt(ht.modifiers)|ye(ht.asteriskToken)|ai(ht.name)|ye(ht.questionToken)|gt(ht.typeParameters)|gt(ht.parameters)|ye(ht.type)|ye(ht.body)&-67108865|(ia?128:hn?256:Ni?2048:0)|(ht.questionToken||ht.typeParameters||ht.type?1:0)|1024}return ht.typeArguments=void 0,ht.jsDoc=void 0,ht.locals=void 0,ht.nextContainer=void 0,ht.flowNode=void 0,ht.endFlowNode=void 0,ht.returnFlowNode=void 0,ht}function xe(n,o,l,p,k,V,we,et,ht){return n.modifiers!==o||n.asteriskToken!==l||n.name!==p||n.questionToken!==k||n.typeParameters!==V||n.parameters!==we||n.type!==et||n.body!==ht?Le(zt(o,l,p,k,V,we,et,ht),n):n}function Le(n,o){return n!==o&&(n.exclamationToken=o.exclamationToken),r(n,o)}function Re(n){let o=Ve(172);return o.body=n,o.transformFlags=ye(n)|16777216,o.modifiers=void 0,o.jsDoc=void 0,o.locals=void 0,o.nextContainer=void 0,o.endFlowNode=void 0,o.returnFlowNode=void 0,o}function ot(n,o){return n.body!==o?Ct(Re(o),n):n}function Ct(n,o){return n!==o&&(n.modifiers=o.modifiers),r(n,o)}function Mt(n,o,l){let p=Ve(173);return p.modifiers=xt(n),p.parameters=Ne(o),p.body=l,p.transformFlags=gt(p.modifiers)|gt(p.parameters)|ye(p.body)&-67108865|1024,p.typeParameters=void 0,p.type=void 0,p.typeArguments=void 0,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.endFlowNode=void 0,p.returnFlowNode=void 0,p}function It(n,o,l,p){return n.modifiers!==o||n.parameters!==l||n.body!==p?Mr(Mt(o,l,p),n):n}function Mr(n,o){return n!==o&&(n.typeParameters=o.typeParameters,n.type=o.type),pt(n,o)}function gr(n,o,l,p,k){let V=Ve(174);return V.modifiers=xt(n),V.name=Qt(o),V.parameters=Ne(l),V.type=p,V.body=k,V.body?V.transformFlags=gt(V.modifiers)|ai(V.name)|gt(V.parameters)|ye(V.type)|ye(V.body)&-67108865|(V.type?1:0):V.transformFlags=1,V.typeArguments=void 0,V.typeParameters=void 0,V.jsDoc=void 0,V.locals=void 0,V.nextContainer=void 0,V.flowNode=void 0,V.endFlowNode=void 0,V.returnFlowNode=void 0,V}function Ln(n,o,l,p,k,V){return n.modifiers!==o||n.name!==l||n.parameters!==p||n.type!==k||n.body!==V?ys(gr(o,l,p,k,V),n):n}function ys(n,o){return n!==o&&(n.typeParameters=o.typeParameters),pt(n,o)}function ci(n,o,l,p){let k=Ve(175);return k.modifiers=xt(n),k.name=Qt(o),k.parameters=Ne(l),k.body=p,k.body?k.transformFlags=gt(k.modifiers)|ai(k.name)|gt(k.parameters)|ye(k.body)&-67108865|(k.type?1:0):k.transformFlags=1,k.typeArguments=void 0,k.typeParameters=void 0,k.type=void 0,k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k.flowNode=void 0,k.endFlowNode=void 0,k.returnFlowNode=void 0,k}function Xi(n,o,l,p,k){return n.modifiers!==o||n.name!==l||n.parameters!==p||n.body!==k?Aa(ci(o,l,p,k),n):n}function Aa(n,o){return n!==o&&(n.typeParameters=o.typeParameters,n.type=o.type),pt(n,o)}function vs(n,o,l){let p=Ve(176);return p.typeParameters=xt(n),p.parameters=xt(o),p.type=l,p.transformFlags=1,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.typeArguments=void 0,p}function $s(n,o,l,p){return n.typeParameters!==o||n.parameters!==l||n.type!==p?pt(vs(o,l,p),n):n}function li(n,o,l){let p=Ve(177);return p.typeParameters=xt(n),p.parameters=xt(o),p.type=l,p.transformFlags=1,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.typeArguments=void 0,p}function Yi(n,o,l,p){return n.typeParameters!==o||n.parameters!==l||n.type!==p?pt(li(o,l,p),n):n}function Qi(n,o,l){let p=Ve(178);return p.modifiers=xt(n),p.parameters=xt(o),p.type=l,p.transformFlags=1,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.typeArguments=void 0,p}function bs(n,o,l,p){return n.parameters!==l||n.type!==p||n.modifiers!==o?pt(Qi(o,l,p),n):n}function Ai(n,o){let l=oe(201);return l.type=n,l.literal=o,l.transformFlags=1,l}function xn(n,o,l){return n.type!==o||n.literal!==l?r(Ai(o,l),n):n}function Dt(n){return pr(n)}function Pi(n,o,l){let p=oe(179);return p.assertsModifier=n,p.parameterName=Qt(o),p.type=l,p.transformFlags=1,p}function Z(n,o,l,p){return n.assertsModifier!==o||n.parameterName!==l||n.type!==p?r(Pi(o,l,p),n):n}function ie(n,o){let l=oe(180);return l.typeName=Qt(n),l.typeArguments=o&&s().parenthesizeTypeArguments(Ne(o)),l.transformFlags=1,l}function U(n,o,l){return n.typeName!==o||n.typeArguments!==l?r(ie(o,l),n):n}function L(n,o,l){let p=Ve(181);return p.typeParameters=xt(n),p.parameters=xt(o),p.type=l,p.transformFlags=1,p.modifiers=void 0,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.typeArguments=void 0,p}function fe(n,o,l,p){return n.typeParameters!==o||n.parameters!==l||n.type!==p?T(L(o,l,p),n):n}function T(n,o){return n!==o&&(n.modifiers=o.modifiers),pt(n,o)}function it(){return arguments.length===4?mt(...arguments):arguments.length===3?_e(...arguments):Y.fail("Incorrect number of arguments specified.")}function mt(n,o,l,p){let k=Ve(182);return k.modifiers=xt(n),k.typeParameters=xt(o),k.parameters=xt(l),k.type=p,k.transformFlags=1,k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k.typeArguments=void 0,k}function _e(n,o,l){return mt(void 0,n,o,l)}function Ge(){return arguments.length===5?bt(...arguments):arguments.length===4?jt(...arguments):Y.fail("Incorrect number of arguments specified.")}function bt(n,o,l,p,k){return n.modifiers!==o||n.typeParameters!==l||n.parameters!==p||n.type!==k?pt(it(o,l,p,k),n):n}function jt(n,o,l,p){return bt(n,n.modifiers,o,l,p)}function Yt(n,o){let l=oe(183);return l.exprName=n,l.typeArguments=o&&s().parenthesizeTypeArguments(o),l.transformFlags=1,l}function $t(n,o,l){return n.exprName!==o||n.typeArguments!==l?r(Yt(o,l),n):n}function Wt(n){let o=Ve(184);return o.members=Ne(n),o.transformFlags=1,o}function Xr(n,o){return n.members!==o?r(Wt(o),n):n}function Dr(n){let o=oe(185);return o.elementType=s().parenthesizeNonArrayTypeOfPostfixType(n),o.transformFlags=1,o}function Lr(n,o){return n.elementType!==o?r(Dr(o),n):n}function yr(n){let o=oe(186);return o.elements=Ne(s().parenthesizeElementTypesOfTupleType(n)),o.transformFlags=1,o}function Rn(n,o){return n.elements!==o?r(yr(o),n):n}function wt(n,o,l,p){let k=Ve(199);return k.dotDotDotToken=n,k.name=o,k.questionToken=l,k.type=p,k.transformFlags=1,k.jsDoc=void 0,k}function Tr(n,o,l,p,k){return n.dotDotDotToken!==o||n.name!==l||n.questionToken!==p||n.type!==k?r(wt(o,l,p,k),n):n}function Tt(n){let o=oe(187);return o.type=s().parenthesizeTypeOfOptionalType(n),o.transformFlags=1,o}function kt(n,o){return n.type!==o?r(Tt(o),n):n}function de(n){let o=oe(188);return o.type=n,o.transformFlags=1,o}function jn(n,o){return n.type!==o?r(de(o),n):n}function Zi(n,o,l){let p=oe(n);return p.types=Ye.createNodeArray(l(o)),p.transformFlags=1,p}function Pa(n,o,l){return n.types!==o?r(Zi(n.kind,o,l),n):n}function e_(n){return Zi(189,n,s().parenthesizeConstituentTypesOfUnionType)}function mc(n,o){return Pa(n,o,s().parenthesizeConstituentTypesOfUnionType)}function Da(n){return Zi(190,n,s().parenthesizeConstituentTypesOfIntersectionType)}function Ts(n,o){return Pa(n,o,s().parenthesizeConstituentTypesOfIntersectionType)}function Ot(n,o,l,p){let k=oe(191);return k.checkType=s().parenthesizeCheckTypeOfConditionalType(n),k.extendsType=s().parenthesizeExtendsTypeOfConditionalType(o),k.trueType=l,k.falseType=p,k.transformFlags=1,k.locals=void 0,k.nextContainer=void 0,k}function dr(n,o,l,p,k){return n.checkType!==o||n.extendsType!==l||n.trueType!==p||n.falseType!==k?r(Ot(o,l,p,k),n):n}function Dd(n){let o=oe(192);return o.typeParameter=n,o.transformFlags=1,o}function ea(n,o){return n.typeParameter!==o?r(Dd(o),n):n}function kd(n,o){let l=oe(200);return l.head=n,l.templateSpans=Ne(o),l.transformFlags=1,l}function sn(n,o,l){return n.head!==o||n.templateSpans!==l?r(kd(o,l),n):n}function Id(n,o,l,p){let k=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1,V=oe(202);return V.argument=n,V.assertions=o,V.qualifier=l,V.typeArguments=p&&s().parenthesizeTypeArguments(p),V.isTypeOf=k,V.transformFlags=1,V}function ka(n,o,l,p,k){let V=arguments.length>5&&arguments[5]!==void 0?arguments[5]:n.isTypeOf;return n.argument!==o||n.assertions!==l||n.qualifier!==p||n.typeArguments!==k||n.isTypeOf!==V?r(Id(o,l,p,k,V),n):n}function t_(n){let o=oe(193);return o.type=n,o.transformFlags=1,o}function En(n,o){return n.type!==o?r(t_(o),n):n}function Er(){let n=oe(194);return n.transformFlags=1,n}function Q(n,o){let l=oe(195);return l.operator=n,l.type=n===146?s().parenthesizeOperandOfReadonlyTypeOperator(o):s().parenthesizeOperandOfTypeOperator(o),l.transformFlags=1,l}function Jn(n,o){return n.type!==o?r(Q(n.operator,o),n):n}function Ia(n,o){let l=oe(196);return l.objectType=s().parenthesizeNonArrayTypeOfPostfixType(n),l.indexType=o,l.transformFlags=1,l}function Ss(n,o,l){return n.objectType!==o||n.indexType!==l?r(Ia(o,l),n):n}function hc(n,o,l,p,k,V){let we=Ve(197);return we.readonlyToken=n,we.typeParameter=o,we.nameType=l,we.questionToken=p,we.type=k,we.members=V&&Ne(V),we.transformFlags=1,we.locals=void 0,we.nextContainer=void 0,we}function wr(n,o,l,p,k,V,we){return n.readonlyToken!==o||n.typeParameter!==l||n.nameType!==p||n.questionToken!==k||n.type!==V||n.members!==we?r(hc(o,l,p,k,V,we),n):n}function zr(n){let o=oe(198);return o.literal=n,o.transformFlags=1,o}function xs(n,o){return n.literal!==o?r(zr(o),n):n}function Nd(n){let o=oe(203);return o.elements=Ne(n),o.transformFlags|=gt(o.elements)|1024|524288,o.transformFlags&32768&&(o.transformFlags|=65664),o}function R2(n,o){return n.elements!==o?r(Nd(o),n):n}function Es(n){let o=oe(204);return o.elements=Ne(n),o.transformFlags|=gt(o.elements)|1024|524288,o}function j2(n,o){return n.elements!==o?r(Es(o),n):n}function gc(n,o,l,p){let k=Ve(205);return k.dotDotDotToken=n,k.propertyName=Qt(o),k.name=Qt(l),k.initializer=Wa(p),k.transformFlags|=ye(k.dotDotDotToken)|ai(k.propertyName)|ai(k.name)|ye(k.initializer)|(k.dotDotDotToken?32768:0)|1024,k.flowNode=void 0,k}function Ks(n,o,l,p,k){return n.propertyName!==l||n.dotDotDotToken!==o||n.name!==p||n.initializer!==k?r(gc(o,l,p,k),n):n}function uu(n,o){let l=oe(206),p=n&&Cn(n),k=Ne(n,p&&cd(p)?!0:void 0);return l.elements=s().parenthesizeExpressionsOfCommaDelimitedList(k),l.multiLine=o,l.transformFlags|=gt(l.elements),l}function Od(n,o){return n.elements!==o?r(uu(o,n.multiLine),n):n}function r_(n,o){let l=Ve(207);return l.properties=Ne(n),l.multiLine=o,l.transformFlags|=gt(l.properties),l.jsDoc=void 0,l}function J2(n,o){return n.properties!==o?r(r_(o,n.multiLine),n):n}function Md(n,o,l){let p=Ve(208);return p.expression=n,p.questionDotToken=o,p.name=l,p.transformFlags=ye(p.expression)|ye(p.questionDotToken)|(yt(p.name)?ec(p.name):ye(p.name)|536870912),p.jsDoc=void 0,p.flowNode=void 0,p}function ta(n,o){let l=Md(s().parenthesizeLeftSideOfAccess(n,!1),void 0,Qt(o));return nd(n)&&(l.transformFlags|=384),l}function Ld(n,o,l){return LS(n)?Rd(n,o,n.questionDotToken,ti(l,yt)):n.expression!==o||n.name!==l?r(ta(o,l),n):n}function Xs(n,o,l){let p=Md(s().parenthesizeLeftSideOfAccess(n,!0),o,Qt(l));return p.flags|=32,p.transformFlags|=32,p}function Rd(n,o,l,p){return Y.assert(!!(n.flags&32),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),n.expression!==o||n.questionDotToken!==l||n.name!==p?r(Xs(o,l,p),n):n}function yc(n,o,l){let p=Ve(209);return p.expression=n,p.questionDotToken=o,p.argumentExpression=l,p.transformFlags|=ye(p.expression)|ye(p.questionDotToken)|ye(p.argumentExpression),p.jsDoc=void 0,p.flowNode=void 0,p}function pu(n,o){let l=yc(s().parenthesizeLeftSideOfAccess(n,!1),void 0,za(o));return nd(n)&&(l.transformFlags|=384),l}function F2(n,o,l){return RS(n)?jd(n,o,n.questionDotToken,l):n.expression!==o||n.argumentExpression!==l?r(pu(o,l),n):n}function fu(n,o,l){let p=yc(s().parenthesizeLeftSideOfAccess(n,!0),o,za(l));return p.flags|=32,p.transformFlags|=32,p}function jd(n,o,l,p){return Y.assert(!!(n.flags&32),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),n.expression!==o||n.questionDotToken!==l||n.argumentExpression!==p?r(fu(o,l,p),n):n}function Jd(n,o,l,p){let k=Ve(210);return k.expression=n,k.questionDotToken=o,k.typeArguments=l,k.arguments=p,k.transformFlags|=ye(k.expression)|ye(k.questionDotToken)|gt(k.typeArguments)|gt(k.arguments),k.typeArguments&&(k.transformFlags|=1),Sf(k.expression)&&(k.transformFlags|=16384),k}function Na(n,o,l){let p=Jd(s().parenthesizeLeftSideOfAccess(n,!1),void 0,xt(o),s().parenthesizeExpressionsOfCommaDelimitedList(Ne(l)));return M8(p.expression)&&(p.transformFlags|=8388608),p}function B2(n,o,l,p){return Cy(n)?Kn(n,o,n.questionDotToken,l,p):n.expression!==o||n.typeArguments!==l||n.arguments!==p?r(Na(o,l,p),n):n}function du(n,o,l,p){let k=Jd(s().parenthesizeLeftSideOfAccess(n,!0),o,xt(l),s().parenthesizeExpressionsOfCommaDelimitedList(Ne(p)));return k.flags|=32,k.transformFlags|=32,k}function Kn(n,o,l,p,k){return Y.assert(!!(n.flags&32),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),n.expression!==o||n.questionDotToken!==l||n.typeArguments!==p||n.arguments!==k?r(du(o,l,p,k),n):n}function vc(n,o,l){let p=Ve(211);return p.expression=s().parenthesizeExpressionOfNew(n),p.typeArguments=xt(o),p.arguments=l?s().parenthesizeExpressionsOfCommaDelimitedList(l):void 0,p.transformFlags|=ye(p.expression)|gt(p.typeArguments)|gt(p.arguments)|32,p.typeArguments&&(p.transformFlags|=1),p}function mu(n,o,l,p){return n.expression!==o||n.typeArguments!==l||n.arguments!==p?r(vc(o,l,p),n):n}function hu(n,o,l){let p=oe(212);return p.tag=s().parenthesizeLeftSideOfAccess(n,!1),p.typeArguments=xt(o),p.template=l,p.transformFlags|=ye(p.tag)|gt(p.typeArguments)|ye(p.template)|1024,p.typeArguments&&(p.transformFlags|=1),w4(p.template)&&(p.transformFlags|=128),p}function q2(n,o,l,p){return n.tag!==o||n.typeArguments!==l||n.template!==p?r(hu(o,l,p),n):n}function Fd(n,o){let l=oe(213);return l.expression=s().parenthesizeOperandOfPrefixUnary(o),l.type=n,l.transformFlags|=ye(l.expression)|ye(l.type)|1,l}function Bd(n,o,l){return n.type!==o||n.expression!==l?r(Fd(o,l),n):n}function gu(n){let o=oe(214);return o.expression=n,o.transformFlags=ye(o.expression),o.jsDoc=void 0,o}function qd(n,o){return n.expression!==o?r(gu(o),n):n}function yu(n,o,l,p,k,V,we){let et=Ve(215);et.modifiers=xt(n),et.asteriskToken=o,et.name=Qt(l),et.typeParameters=xt(p),et.parameters=Ne(k),et.type=V,et.body=we;let ht=Vn(et.modifiers)&512,hn=!!et.asteriskToken,Ni=ht&&hn;return et.transformFlags=gt(et.modifiers)|ye(et.asteriskToken)|ai(et.name)|gt(et.typeParameters)|gt(et.parameters)|ye(et.type)|ye(et.body)&-67108865|(Ni?128:ht?256:hn?2048:0)|(et.typeParameters||et.type?1:0)|4194304,et.typeArguments=void 0,et.jsDoc=void 0,et.locals=void 0,et.nextContainer=void 0,et.flowNode=void 0,et.endFlowNode=void 0,et.returnFlowNode=void 0,et}function Ud(n,o,l,p,k,V,we,et){return n.name!==p||n.modifiers!==o||n.asteriskToken!==l||n.typeParameters!==k||n.parameters!==V||n.type!==we||n.body!==et?pt(yu(o,l,p,k,V,we,et),n):n}function vu(n,o,l,p,k,V){let we=Ve(216);we.modifiers=xt(n),we.typeParameters=xt(o),we.parameters=Ne(l),we.type=p,we.equalsGreaterThanToken=k!=null?k:pr(38),we.body=s().parenthesizeConciseBodyOfArrowFunction(V);let et=Vn(we.modifiers)&512;return we.transformFlags=gt(we.modifiers)|gt(we.typeParameters)|gt(we.parameters)|ye(we.type)|ye(we.equalsGreaterThanToken)|ye(we.body)&-67108865|(we.typeParameters||we.type?1:0)|(et?16640:0)|1024,we.typeArguments=void 0,we.jsDoc=void 0,we.locals=void 0,we.nextContainer=void 0,we.flowNode=void 0,we.endFlowNode=void 0,we.returnFlowNode=void 0,we}function zd(n,o,l,p,k,V,we){return n.modifiers!==o||n.typeParameters!==l||n.parameters!==p||n.type!==k||n.equalsGreaterThanToken!==V||n.body!==we?pt(vu(o,l,p,k,V,we),n):n}function bu(n){let o=oe(217);return o.expression=s().parenthesizeOperandOfPrefixUnary(n),o.transformFlags|=ye(o.expression),o}function U2(n,o){return n.expression!==o?r(bu(o),n):n}function mn(n){let o=oe(218);return o.expression=s().parenthesizeOperandOfPrefixUnary(n),o.transformFlags|=ye(o.expression),o}function z2(n,o){return n.expression!==o?r(mn(o),n):n}function ui(n){let o=oe(219);return o.expression=s().parenthesizeOperandOfPrefixUnary(n),o.transformFlags|=ye(o.expression),o}function W2(n,o){return n.expression!==o?r(ui(o),n):n}function Oa(n){let o=oe(220);return o.expression=s().parenthesizeOperandOfPrefixUnary(n),o.transformFlags|=ye(o.expression)|256|128|2097152,o}function Ys(n,o){return n.expression!==o?r(Oa(o),n):n}function Tu(n,o){let l=oe(221);return l.operator=n,l.operand=s().parenthesizeOperandOfPrefixUnary(o),l.transformFlags|=ye(l.operand),(n===45||n===46)&&yt(l.operand)&&!cs(l.operand)&&!E2(l.operand)&&(l.transformFlags|=268435456),l}function bc(n,o){return n.operand!==o?r(Tu(n.operator,o),n):n}function Su(n,o){let l=oe(222);return l.operator=o,l.operand=s().parenthesizeOperandOfPostfixUnary(n),l.transformFlags|=ye(l.operand),yt(l.operand)&&!cs(l.operand)&&!E2(l.operand)&&(l.transformFlags|=268435456),l}function Wd(n,o){return n.operand!==o?r(Su(o,n.operator),n):n}function xu(n,o,l){let p=Ve(223),k=c6(o),V=k.kind;return p.left=s().parenthesizeLeftSideOfBinary(V,n),p.operatorToken=k,p.right=s().parenthesizeRightSideOfBinary(V,p.left,l),p.transformFlags|=ye(p.left)|ye(p.operatorToken)|ye(p.right),V===60?p.transformFlags|=32:V===63?Hs(p.left)?p.transformFlags|=5248|Vd(p.left):Yl(p.left)&&(p.transformFlags|=5120|Vd(p.left)):V===42||V===67?p.transformFlags|=512:jf(V)&&(p.transformFlags|=16),V===101&&vn(p.left)&&(p.transformFlags|=536870912),p.jsDoc=void 0,p}function Vd(n){return A2(n)?65536:0}function V2(n,o,l,p){return n.left!==o||n.operatorToken!==l||n.right!==p?r(xu(o,l,p),n):n}function Eu(n,o,l,p,k){let V=oe(224);return V.condition=s().parenthesizeConditionOfConditionalExpression(n),V.questionToken=o!=null?o:pr(57),V.whenTrue=s().parenthesizeBranchOfConditionalExpression(l),V.colonToken=p!=null?p:pr(58),V.whenFalse=s().parenthesizeBranchOfConditionalExpression(k),V.transformFlags|=ye(V.condition)|ye(V.questionToken)|ye(V.whenTrue)|ye(V.colonToken)|ye(V.whenFalse),V}function H2(n,o,l,p,k,V){return n.condition!==o||n.questionToken!==l||n.whenTrue!==p||n.colonToken!==k||n.whenFalse!==V?r(Eu(o,l,p,k,V),n):n}function Di(n,o){let l=oe(225);return l.head=n,l.templateSpans=Ne(o),l.transformFlags|=ye(l.head)|gt(l.templateSpans)|1024,l}function Hd(n,o,l){return n.head!==o||n.templateSpans!==l?r(Di(o,l),n):n}function Tc(n,o,l){let p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;Y.assert(!(p&-2049),"Unsupported template flags.");let k;if(l!==void 0&&l!==o&&(k=BL(n,l),typeof k=="object"))return Y.fail("Invalid raw text");if(o===void 0){if(k===void 0)return Y.fail("Arguments 'text' and 'rawText' may not both be undefined.");o=k}else k!==void 0&&Y.assert(o===k,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return o}function Gd(n){let o=1024;return n&&(o|=128),o}function n_(n,o,l,p){let k=In(n);return k.text=o,k.rawText=l,k.templateFlags=p&2048,k.transformFlags=Gd(k.templateFlags),k}function wu(n,o,l,p){let k=Ve(n);return k.text=o,k.rawText=l,k.templateFlags=p&2048,k.transformFlags=Gd(k.templateFlags),k}function Qs(n,o,l,p){return n===14?wu(n,o,l,p):n_(n,o,l,p)}function Sc(n,o,l){return n=Tc(15,n,o,l),Qs(15,n,o,l)}function Cu(n,o,l){return n=Tc(15,n,o,l),Qs(16,n,o,l)}function G2(n,o,l){return n=Tc(15,n,o,l),Qs(17,n,o,l)}function $d(n,o,l){return n=Tc(15,n,o,l),wu(14,n,o,l)}function Kd(n,o){Y.assert(!n||!!o,"A `YieldExpression` with an asteriskToken must have an expression.");let l=oe(226);return l.expression=o&&s().parenthesizeExpressionForDisallowedComma(o),l.asteriskToken=n,l.transformFlags|=ye(l.expression)|ye(l.asteriskToken)|1024|128|1048576,l}function $2(n,o,l){return n.expression!==l||n.asteriskToken!==o?r(Kd(o,l),n):n}function Xd(n){let o=oe(227);return o.expression=s().parenthesizeExpressionForDisallowedComma(n),o.transformFlags|=ye(o.expression)|1024|32768,o}function K2(n,o){return n.expression!==o?r(Xd(o),n):n}function Yd(n,o,l,p,k){let V=Ve(228);return V.modifiers=xt(n),V.name=Qt(o),V.typeParameters=xt(l),V.heritageClauses=xt(p),V.members=Ne(k),V.transformFlags|=gt(V.modifiers)|ai(V.name)|gt(V.typeParameters)|gt(V.heritageClauses)|gt(V.members)|(V.typeParameters?1:0)|1024,V.jsDoc=void 0,V}function xc(n,o,l,p,k,V){return n.modifiers!==o||n.name!==l||n.typeParameters!==p||n.heritageClauses!==k||n.members!==V?r(Yd(o,l,p,k,V),n):n}function X2(){return oe(229)}function Qd(n,o){let l=oe(230);return l.expression=s().parenthesizeLeftSideOfAccess(n,!1),l.typeArguments=o&&s().parenthesizeTypeArguments(o),l.transformFlags|=ye(l.expression)|gt(l.typeArguments)|1024,l}function Xn(n,o,l){return n.expression!==o||n.typeArguments!==l?r(Qd(o,l),n):n}function Ec(n,o){let l=oe(231);return l.expression=n,l.type=o,l.transformFlags|=ye(l.expression)|ye(l.type)|1,l}function Zd(n,o,l){return n.expression!==o||n.type!==l?r(Ec(o,l),n):n}function em(n){let o=oe(232);return o.expression=s().parenthesizeLeftSideOfAccess(n,!1),o.transformFlags|=ye(o.expression)|1,o}function Au(n,o){return JS(n)?rm(n,o):n.expression!==o?r(em(o),n):n}function tm(n,o){let l=oe(235);return l.expression=n,l.type=o,l.transformFlags|=ye(l.expression)|ye(l.type)|1,l}function Pu(n,o,l){return n.expression!==o||n.type!==l?r(tm(o,l),n):n}function pi(n){let o=oe(232);return o.flags|=32,o.expression=s().parenthesizeLeftSideOfAccess(n,!0),o.transformFlags|=ye(o.expression)|1,o}function rm(n,o){return Y.assert(!!(n.flags&32),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),n.expression!==o?r(pi(o),n):n}function wc(n,o){let l=oe(233);switch(l.keywordToken=n,l.name=o,l.transformFlags|=ye(l.name),n){case 103:l.transformFlags|=1024;break;case 100:l.transformFlags|=4;break;default:return Y.assertNever(n)}return l.flowNode=void 0,l}function ra(n,o){return n.name!==o?r(wc(n.keywordToken,o),n):n}function i_(n,o){let l=oe(236);return l.expression=n,l.literal=o,l.transformFlags|=ye(l.expression)|ye(l.literal)|1024,l}function nm(n,o,l){return n.expression!==o||n.literal!==l?r(i_(o,l),n):n}function im(){let n=oe(237);return n.transformFlags|=1024,n}function Zs(n,o){let l=oe(238);return l.statements=Ne(n),l.multiLine=o,l.transformFlags|=gt(l.statements),l.jsDoc=void 0,l.locals=void 0,l.nextContainer=void 0,l}function am(n,o){return n.statements!==o?r(Zs(o,n.multiLine),n):n}function sm(n,o){let l=oe(240);return l.modifiers=xt(n),l.declarationList=ir(o)?Ru(o):o,l.transformFlags|=gt(l.modifiers)|ye(l.declarationList),Vn(l.modifiers)&2&&(l.transformFlags=1),l.jsDoc=void 0,l.flowNode=void 0,l}function om(n,o,l){return n.modifiers!==o||n.declarationList!==l?r(sm(o,l),n):n}function Du(){let n=oe(239);return n.jsDoc=void 0,n}function a_(n){let o=oe(241);return o.expression=s().parenthesizeExpressionOfExpressionStatement(n),o.transformFlags|=ye(o.expression),o.jsDoc=void 0,o.flowNode=void 0,o}function Y2(n,o){return n.expression!==o?r(a_(o),n):n}function ku(n,o,l){let p=oe(242);return p.expression=n,p.thenStatement=Yn(o),p.elseStatement=Yn(l),p.transformFlags|=ye(p.expression)|ye(p.thenStatement)|ye(p.elseStatement),p.jsDoc=void 0,p.flowNode=void 0,p}function Q2(n,o,l,p){return n.expression!==o||n.thenStatement!==l||n.elseStatement!==p?r(ku(o,l,p),n):n}function Iu(n,o){let l=oe(243);return l.statement=Yn(n),l.expression=o,l.transformFlags|=ye(l.statement)|ye(l.expression),l.jsDoc=void 0,l.flowNode=void 0,l}function Z2(n,o,l){return n.statement!==o||n.expression!==l?r(Iu(o,l),n):n}function _m(n,o){let l=oe(244);return l.expression=n,l.statement=Yn(o),l.transformFlags|=ye(l.expression)|ye(l.statement),l.jsDoc=void 0,l.flowNode=void 0,l}function eb(n,o,l){return n.expression!==o||n.statement!==l?r(_m(o,l),n):n}function Nu(n,o,l,p){let k=oe(245);return k.initializer=n,k.condition=o,k.incrementor=l,k.statement=Yn(p),k.transformFlags|=ye(k.initializer)|ye(k.condition)|ye(k.incrementor)|ye(k.statement),k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k.flowNode=void 0,k}function cm(n,o,l,p,k){return n.initializer!==o||n.condition!==l||n.incrementor!==p||n.statement!==k?r(Nu(o,l,p,k),n):n}function lm(n,o,l){let p=oe(246);return p.initializer=n,p.expression=o,p.statement=Yn(l),p.transformFlags|=ye(p.initializer)|ye(p.expression)|ye(p.statement),p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p.flowNode=void 0,p}function tb(n,o,l,p){return n.initializer!==o||n.expression!==l||n.statement!==p?r(lm(o,l,p),n):n}function um(n,o,l,p){let k=oe(247);return k.awaitModifier=n,k.initializer=o,k.expression=s().parenthesizeExpressionForDisallowedComma(l),k.statement=Yn(p),k.transformFlags|=ye(k.awaitModifier)|ye(k.initializer)|ye(k.expression)|ye(k.statement)|1024,n&&(k.transformFlags|=128),k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k.flowNode=void 0,k}function rb(n,o,l,p,k){return n.awaitModifier!==o||n.initializer!==l||n.expression!==p||n.statement!==k?r(um(o,l,p,k),n):n}function pm(n){let o=oe(248);return o.label=Qt(n),o.transformFlags|=ye(o.label)|4194304,o.jsDoc=void 0,o.flowNode=void 0,o}function fm(n,o){return n.label!==o?r(pm(o),n):n}function Ou(n){let o=oe(249);return o.label=Qt(n),o.transformFlags|=ye(o.label)|4194304,o.jsDoc=void 0,o.flowNode=void 0,o}function dm(n,o){return n.label!==o?r(Ou(o),n):n}function mm(n){let o=oe(250);return o.expression=n,o.transformFlags|=ye(o.expression)|128|4194304,o.jsDoc=void 0,o.flowNode=void 0,o}function nb(n,o){return n.expression!==o?r(mm(o),n):n}function Mu(n,o){let l=oe(251);return l.expression=n,l.statement=Yn(o),l.transformFlags|=ye(l.expression)|ye(l.statement),l.jsDoc=void 0,l.flowNode=void 0,l}function hm(n,o,l){return n.expression!==o||n.statement!==l?r(Mu(o,l),n):n}function Lu(n,o){let l=oe(252);return l.expression=s().parenthesizeExpressionForDisallowedComma(n),l.caseBlock=o,l.transformFlags|=ye(l.expression)|ye(l.caseBlock),l.jsDoc=void 0,l.flowNode=void 0,l.possiblyExhaustive=!1,l}function eo(n,o,l){return n.expression!==o||n.caseBlock!==l?r(Lu(o,l),n):n}function gm(n,o){let l=oe(253);return l.label=Qt(n),l.statement=Yn(o),l.transformFlags|=ye(l.label)|ye(l.statement),l.jsDoc=void 0,l.flowNode=void 0,l}function ym(n,o,l){return n.label!==o||n.statement!==l?r(gm(o,l),n):n}function vm(n){let o=oe(254);return o.expression=n,o.transformFlags|=ye(o.expression),o.jsDoc=void 0,o.flowNode=void 0,o}function ib(n,o){return n.expression!==o?r(vm(o),n):n}function bm(n,o,l){let p=oe(255);return p.tryBlock=n,p.catchClause=o,p.finallyBlock=l,p.transformFlags|=ye(p.tryBlock)|ye(p.catchClause)|ye(p.finallyBlock),p.jsDoc=void 0,p.flowNode=void 0,p}function ab(n,o,l,p){return n.tryBlock!==o||n.catchClause!==l||n.finallyBlock!==p?r(bm(o,l,p),n):n}function Tm(){let n=oe(256);return n.jsDoc=void 0,n.flowNode=void 0,n}function Cc(n,o,l,p){var k;let V=Ve(257);return V.name=Qt(n),V.exclamationToken=o,V.type=l,V.initializer=Wa(p),V.transformFlags|=ai(V.name)|ye(V.initializer)|(((k=V.exclamationToken)!=null?k:V.type)?1:0),V.jsDoc=void 0,V}function Sm(n,o,l,p,k){return n.name!==o||n.type!==p||n.exclamationToken!==l||n.initializer!==k?r(Cc(o,l,p,k),n):n}function Ru(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=oe(258);return l.flags|=o&3,l.declarations=Ne(n),l.transformFlags|=gt(l.declarations)|4194304,o&3&&(l.transformFlags|=263168),l}function sb(n,o){return n.declarations!==o?r(Ru(o,n.flags),n):n}function xm(n,o,l,p,k,V,we){let et=Ve(259);if(et.modifiers=xt(n),et.asteriskToken=o,et.name=Qt(l),et.typeParameters=xt(p),et.parameters=Ne(k),et.type=V,et.body=we,!et.body||Vn(et.modifiers)&2)et.transformFlags=1;else{let ht=Vn(et.modifiers)&512,hn=!!et.asteriskToken,Ni=ht&&hn;et.transformFlags=gt(et.modifiers)|ye(et.asteriskToken)|ai(et.name)|gt(et.typeParameters)|gt(et.parameters)|ye(et.type)|ye(et.body)&-67108865|(Ni?128:ht?256:hn?2048:0)|(et.typeParameters||et.type?1:0)|4194304}return et.typeArguments=void 0,et.jsDoc=void 0,et.locals=void 0,et.nextContainer=void 0,et.endFlowNode=void 0,et.returnFlowNode=void 0,et}function ju(n,o,l,p,k,V,we,et){return n.modifiers!==o||n.asteriskToken!==l||n.name!==p||n.typeParameters!==k||n.parameters!==V||n.type!==we||n.body!==et?ob(xm(o,l,p,k,V,we,et),n):n}function ob(n,o){return n!==o&&n.modifiers===o.modifiers&&(n.modifiers=o.modifiers),pt(n,o)}function Em(n,o,l,p,k){let V=Ve(260);return V.modifiers=xt(n),V.name=Qt(o),V.typeParameters=xt(l),V.heritageClauses=xt(p),V.members=Ne(k),Vn(V.modifiers)&2?V.transformFlags=1:(V.transformFlags|=gt(V.modifiers)|ai(V.name)|gt(V.typeParameters)|gt(V.heritageClauses)|gt(V.members)|(V.typeParameters?1:0)|1024,V.transformFlags&8192&&(V.transformFlags|=1)),V.jsDoc=void 0,V}function Ju(n,o,l,p,k,V){return n.modifiers!==o||n.name!==l||n.typeParameters!==p||n.heritageClauses!==k||n.members!==V?r(Em(o,l,p,k,V),n):n}function wm(n,o,l,p,k){let V=Ve(261);return V.modifiers=xt(n),V.name=Qt(o),V.typeParameters=xt(l),V.heritageClauses=xt(p),V.members=Ne(k),V.transformFlags=1,V.jsDoc=void 0,V}function Cm(n,o,l,p,k,V){return n.modifiers!==o||n.name!==l||n.typeParameters!==p||n.heritageClauses!==k||n.members!==V?r(wm(o,l,p,k,V),n):n}function sr(n,o,l,p){let k=Ve(262);return k.modifiers=xt(n),k.name=Qt(o),k.typeParameters=xt(l),k.type=p,k.transformFlags=1,k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k}function Ma(n,o,l,p,k){return n.modifiers!==o||n.name!==l||n.typeParameters!==p||n.type!==k?r(sr(o,l,p,k),n):n}function Fu(n,o,l){let p=Ve(263);return p.modifiers=xt(n),p.name=Qt(o),p.members=Ne(l),p.transformFlags|=gt(p.modifiers)|ye(p.name)|gt(p.members)|1,p.transformFlags&=-67108865,p.jsDoc=void 0,p}function La(n,o,l,p){return n.modifiers!==o||n.name!==l||n.members!==p?r(Fu(o,l,p),n):n}function Am(n,o,l){let p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,k=Ve(264);return k.modifiers=xt(n),k.flags|=p&1044,k.name=o,k.body=l,Vn(k.modifiers)&2?k.transformFlags=1:k.transformFlags|=gt(k.modifiers)|ye(k.name)|ye(k.body)|1,k.transformFlags&=-67108865,k.jsDoc=void 0,k.locals=void 0,k.nextContainer=void 0,k}function Sr(n,o,l,p){return n.modifiers!==o||n.name!==l||n.body!==p?r(Am(o,l,p,n.flags),n):n}function Ra(n){let o=oe(265);return o.statements=Ne(n),o.transformFlags|=gt(o.statements),o.jsDoc=void 0,o}function Yr(n,o){return n.statements!==o?r(Ra(o),n):n}function Pm(n){let o=oe(266);return o.clauses=Ne(n),o.transformFlags|=gt(o.clauses),o.locals=void 0,o.nextContainer=void 0,o}function _b(n,o){return n.clauses!==o?r(Pm(o),n):n}function Dm(n){let o=Ve(267);return o.name=Qt(n),o.transformFlags|=ec(o.name)|1,o.modifiers=void 0,o.jsDoc=void 0,o}function km(n,o){return n.name!==o?cb(Dm(o),n):n}function cb(n,o){return n!==o&&(n.modifiers=o.modifiers),r(n,o)}function Im(n,o,l,p){let k=Ve(268);return k.modifiers=xt(n),k.name=Qt(l),k.isTypeOnly=o,k.moduleReference=p,k.transformFlags|=gt(k.modifiers)|ec(k.name)|ye(k.moduleReference),ud(k.moduleReference)||(k.transformFlags|=1),k.transformFlags&=-67108865,k.jsDoc=void 0,k}function Nm(n,o,l,p,k){return n.modifiers!==o||n.isTypeOnly!==l||n.name!==p||n.moduleReference!==k?r(Im(o,l,p,k),n):n}function Om(n,o,l,p){let k=oe(269);return k.modifiers=xt(n),k.importClause=o,k.moduleSpecifier=l,k.assertClause=p,k.transformFlags|=ye(k.importClause)|ye(k.moduleSpecifier),k.transformFlags&=-67108865,k.jsDoc=void 0,k}function Mm(n,o,l,p,k){return n.modifiers!==o||n.importClause!==l||n.moduleSpecifier!==p||n.assertClause!==k?r(Om(o,l,p,k),n):n}function Lm(n,o,l){let p=Ve(270);return p.isTypeOnly=n,p.name=o,p.namedBindings=l,p.transformFlags|=ye(p.name)|ye(p.namedBindings),n&&(p.transformFlags|=1),p.transformFlags&=-67108865,p}function Rm(n,o,l,p){return n.isTypeOnly!==o||n.name!==l||n.namedBindings!==p?r(Lm(o,l,p),n):n}function Bu(n,o){let l=oe(296);return l.elements=Ne(n),l.multiLine=o,l.transformFlags|=4,l}function lb(n,o,l){return n.elements!==o||n.multiLine!==l?r(Bu(o,l),n):n}function s_(n,o){let l=oe(297);return l.name=n,l.value=o,l.transformFlags|=4,l}function jm(n,o,l){return n.name!==o||n.value!==l?r(s_(o,l),n):n}function qu(n,o){let l=oe(298);return l.assertClause=n,l.multiLine=o,l}function Jm(n,o,l){return n.assertClause!==o||n.multiLine!==l?r(qu(o,l),n):n}function Fm(n){let o=Ve(271);return o.name=n,o.transformFlags|=ye(o.name),o.transformFlags&=-67108865,o}function Uu(n,o){return n.name!==o?r(Fm(o),n):n}function Bm(n){let o=Ve(277);return o.name=n,o.transformFlags|=ye(o.name)|4,o.transformFlags&=-67108865,o}function qm(n,o){return n.name!==o?r(Bm(o),n):n}function Um(n){let o=oe(272);return o.elements=Ne(n),o.transformFlags|=gt(o.elements),o.transformFlags&=-67108865,o}function ub(n,o){return n.elements!==o?r(Um(o),n):n}function zm(n,o,l){let p=Ve(273);return p.isTypeOnly=n,p.propertyName=o,p.name=l,p.transformFlags|=ye(p.propertyName)|ye(p.name),p.transformFlags&=-67108865,p}function pb(n,o,l,p){return n.isTypeOnly!==o||n.propertyName!==l||n.name!==p?r(zm(o,l,p),n):n}function zu(n,o,l){let p=Ve(274);return p.modifiers=xt(n),p.isExportEquals=o,p.expression=o?s().parenthesizeRightSideOfBinary(63,void 0,l):s().parenthesizeExpressionOfExportDefault(l),p.transformFlags|=gt(p.modifiers)|ye(p.expression),p.transformFlags&=-67108865,p.jsDoc=void 0,p}function Wu(n,o,l){return n.modifiers!==o||n.expression!==l?r(zu(o,n.isExportEquals,l),n):n}function na(n,o,l,p,k){let V=Ve(275);return V.modifiers=xt(n),V.isTypeOnly=o,V.exportClause=l,V.moduleSpecifier=p,V.assertClause=k,V.transformFlags|=gt(V.modifiers)|ye(V.exportClause)|ye(V.moduleSpecifier),V.transformFlags&=-67108865,V.jsDoc=void 0,V}function Wm(n,o,l,p,k,V){return n.modifiers!==o||n.isTypeOnly!==l||n.exportClause!==p||n.moduleSpecifier!==k||n.assertClause!==V?Vm(na(o,l,p,k,V),n):n}function Vm(n,o){return n!==o&&n.modifiers===o.modifiers&&(n.modifiers=o.modifiers),r(n,o)}function to(n){let o=oe(276);return o.elements=Ne(n),o.transformFlags|=gt(o.elements),o.transformFlags&=-67108865,o}function Hm(n,o){return n.elements!==o?r(to(o),n):n}function Vu(n,o,l){let p=oe(278);return p.isTypeOnly=n,p.propertyName=Qt(o),p.name=Qt(l),p.transformFlags|=ye(p.propertyName)|ye(p.name),p.transformFlags&=-67108865,p.jsDoc=void 0,p}function o_(n,o,l,p){return n.isTypeOnly!==o||n.propertyName!==l||n.name!==p?r(Vu(o,l,p),n):n}function fb(){let n=Ve(279);return n.jsDoc=void 0,n}function Gm(n){let o=oe(280);return o.expression=n,o.transformFlags|=ye(o.expression),o.transformFlags&=-67108865,o}function $m(n,o){return n.expression!==o?r(Gm(o),n):n}function db(n){return oe(n)}function Km(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,p=Ac(n,l?o&&s().parenthesizeNonArrayTypeOfPostfixType(o):o);return p.postfix=l,p}function Ac(n,o){let l=oe(n);return l.type=o,l}function Xm(n,o,l){return o.type!==l?r(Km(n,l,o.postfix),o):o}function mb(n,o,l){return o.type!==l?r(Ac(n,l),o):o}function Ym(n,o){let l=Ve(320);return l.parameters=xt(n),l.type=o,l.transformFlags=gt(l.parameters)|(l.type?1:0),l.jsDoc=void 0,l.locals=void 0,l.nextContainer=void 0,l.typeArguments=void 0,l}function hb(n,o,l){return n.parameters!==o||n.type!==l?r(Ym(o,l),n):n}function Qm(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,l=Ve(325);return l.jsDocPropertyTags=xt(n),l.isArrayType=o,l}function gb(n,o,l){return n.jsDocPropertyTags!==o||n.isArrayType!==l?r(Qm(o,l),n):n}function Zm(n){let o=oe(312);return o.type=n,o}function yb(n,o){return n.type!==o?r(Zm(o),n):n}function eh(n,o,l){let p=Ve(326);return p.typeParameters=xt(n),p.parameters=Ne(o),p.type=l,p.jsDoc=void 0,p.locals=void 0,p.nextContainer=void 0,p}function Hu(n,o,l,p){return n.typeParameters!==o||n.parameters!==l||n.type!==p?r(eh(o,l,p),n):n}function fi(n){let o=ed(n.kind);return n.tagName.escapedText===vi(o)?n.tagName:Ut(o)}function ja(n,o,l){let p=oe(n);return p.tagName=o,p.comment=l,p}function Ja(n,o,l){let p=Ve(n);return p.tagName=o,p.comment=l,p}function __(n,o,l,p){let k=ja(348,n!=null?n:Ut("template"),p);return k.constraint=o,k.typeParameters=Ne(l),k}function Gu(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0;return n.tagName!==o||n.constraint!==l||n.typeParameters!==p||n.comment!==k?r(__(o,l,p,k),n):n}function $u(n,o,l,p){let k=Ja(349,n!=null?n:Ut("typedef"),p);return k.typeExpression=o,k.fullName=l,k.name=w2(l),k.locals=void 0,k.nextContainer=void 0,k}function th(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0;return n.tagName!==o||n.typeExpression!==l||n.fullName!==p||n.comment!==k?r($u(o,l,p,k),n):n}function Pc(n,o,l,p,k,V){let we=Ja(344,n!=null?n:Ut("param"),V);return we.typeExpression=p,we.name=o,we.isNameFirst=!!k,we.isBracketed=l,we}function vb(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0,V=arguments.length>5?arguments[5]:void 0,we=arguments.length>6?arguments[6]:void 0;return n.tagName!==o||n.name!==l||n.isBracketed!==p||n.typeExpression!==k||n.isNameFirst!==V||n.comment!==we?r(Pc(o,l,p,k,V,we),n):n}function Ku(n,o,l,p,k,V){let we=Ja(351,n!=null?n:Ut("prop"),V);return we.typeExpression=p,we.name=o,we.isNameFirst=!!k,we.isBracketed=l,we}function bb(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0,V=arguments.length>5?arguments[5]:void 0,we=arguments.length>6?arguments[6]:void 0;return n.tagName!==o||n.name!==l||n.isBracketed!==p||n.typeExpression!==k||n.isNameFirst!==V||n.comment!==we?r(Ku(o,l,p,k,V,we),n):n}function rh(n,o,l,p){let k=Ja(341,n!=null?n:Ut("callback"),p);return k.typeExpression=o,k.fullName=l,k.name=w2(l),k.locals=void 0,k.nextContainer=void 0,k}function nh(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0;return n.tagName!==o||n.typeExpression!==l||n.fullName!==p||n.comment!==k?r(rh(o,l,p,k),n):n}function ih(n,o,l){let p=ja(342,n!=null?n:Ut("overload"),l);return p.typeExpression=o,p}function ah(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;return n.tagName!==o||n.typeExpression!==l||n.comment!==p?r(ih(o,l,p),n):n}function sh(n,o,l){let p=ja(331,n!=null?n:Ut("augments"),l);return p.class=o,p}function Xu(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;return n.tagName!==o||n.class!==l||n.comment!==p?r(sh(o,l,p),n):n}function Yu(n,o,l){let p=ja(332,n!=null?n:Ut("implements"),l);return p.class=o,p}function ro(n,o,l){let p=ja(350,n!=null?n:Ut("see"),l);return p.name=o,p}function Tb(n,o,l,p){return n.tagName!==o||n.name!==l||n.comment!==p?r(ro(o,l,p),n):n}function ws(n){let o=oe(313);return o.name=n,o}function Dc(n,o){return n.name!==o?r(ws(o),n):n}function oh(n,o){let l=oe(314);return l.left=n,l.right=o,l.transformFlags|=ye(l.left)|ye(l.right),l}function Sb(n,o,l){return n.left!==o||n.right!==l?r(oh(o,l),n):n}function _h(n,o){let l=oe(327);return l.name=n,l.text=o,l}function xb(n,o,l){return n.name!==o?r(_h(o,l),n):n}function ch(n,o){let l=oe(328);return l.name=n,l.text=o,l}function lh(n,o,l){return n.name!==o?r(ch(o,l),n):n}function uh(n,o){let l=oe(329);return l.name=n,l.text=o,l}function Eb(n,o,l){return n.name!==o?r(uh(o,l),n):n}function wb(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;return n.tagName!==o||n.class!==l||n.comment!==p?r(Yu(o,l,p),n):n}function ph(n,o,l){return ja(n,o!=null?o:Ut(ed(n)),l)}function Cb(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:fi(o),p=arguments.length>3?arguments[3]:void 0;return o.tagName!==l||o.comment!==p?r(ph(n,l,p),o):o}function fh(n,o,l,p){let k=ja(n,o!=null?o:Ut(ed(n)),p);return k.typeExpression=l,k}function Ab(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:fi(o),p=arguments.length>3?arguments[3]:void 0,k=arguments.length>4?arguments[4]:void 0;return o.tagName!==l||o.typeExpression!==p||o.comment!==k?r(fh(n,l,p,k),o):o}function dh(n,o){return ja(330,n,o)}function Pb(n,o,l){return n.tagName!==o||n.comment!==l?r(dh(o,l),n):n}function mh(n,o,l){let p=Ja(343,n!=null?n:Ut(ed(343)),l);return p.typeExpression=o,p.locals=void 0,p.nextContainer=void 0,p}function Db(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fi(n),l=arguments.length>2?arguments[2]:void 0,p=arguments.length>3?arguments[3]:void 0;return n.tagName!==o||n.typeExpression!==l||n.comment!==p?r(mh(o,l,p),n):n}function hh(n){let o=oe(324);return o.text=n,o}function Qu(n,o){return n.text!==o?r(hh(o),n):n}function gh(n,o){let l=oe(323);return l.comment=n,l.tags=xt(o),l}function yh(n,o,l){return n.comment!==o||n.tags!==l?r(gh(o,l),n):n}function Zu(n,o,l){let p=oe(281);return p.openingElement=n,p.children=Ne(o),p.closingElement=l,p.transformFlags|=ye(p.openingElement)|gt(p.children)|ye(p.closingElement)|2,p}function kb(n,o,l,p){return n.openingElement!==o||n.children!==l||n.closingElement!==p?r(Zu(o,l,p),n):n}function c_(n,o,l){let p=oe(282);return p.tagName=n,p.typeArguments=xt(o),p.attributes=l,p.transformFlags|=ye(p.tagName)|gt(p.typeArguments)|ye(p.attributes)|2,p.typeArguments&&(p.transformFlags|=1),p}function vh(n,o,l,p){return n.tagName!==o||n.typeArguments!==l||n.attributes!==p?r(c_(o,l,p),n):n}function bh(n,o,l){let p=oe(283);return p.tagName=n,p.typeArguments=xt(o),p.attributes=l,p.transformFlags|=ye(p.tagName)|gt(p.typeArguments)|ye(p.attributes)|2,o&&(p.transformFlags|=1),p}function Ib(n,o,l,p){return n.tagName!==o||n.typeArguments!==l||n.attributes!==p?r(bh(o,l,p),n):n}function on(n){let o=oe(284);return o.tagName=n,o.transformFlags|=ye(o.tagName)|2,o}function Th(n,o){return n.tagName!==o?r(on(o),n):n}function ep(n,o,l){let p=oe(285);return p.openingFragment=n,p.children=Ne(o),p.closingFragment=l,p.transformFlags|=ye(p.openingFragment)|gt(p.children)|ye(p.closingFragment)|2,p}function Nb(n,o,l,p){return n.openingFragment!==o||n.children!==l||n.closingFragment!==p?r(ep(o,l,p),n):n}function l_(n,o){let l=oe(11);return l.text=n,l.containsOnlyTriviaWhiteSpaces=!!o,l.transformFlags|=2,l}function Ob(n,o,l){return n.text!==o||n.containsOnlyTriviaWhiteSpaces!==l?r(l_(o,l),n):n}function kc(){let n=oe(286);return n.transformFlags|=2,n}function Mb(){let n=oe(287);return n.transformFlags|=2,n}function Sh(n,o){let l=Ve(288);return l.name=n,l.initializer=o,l.transformFlags|=ye(l.name)|ye(l.initializer)|2,l}function Lb(n,o,l){return n.name!==o||n.initializer!==l?r(Sh(o,l),n):n}function xh(n){let o=Ve(289);return o.properties=Ne(n),o.transformFlags|=gt(o.properties)|2,o}function tp(n,o){return n.properties!==o?r(xh(o),n):n}function no(n){let o=oe(290);return o.expression=n,o.transformFlags|=ye(o.expression)|2,o}function Rb(n,o){return n.expression!==o?r(no(o),n):n}function Ic(n,o){let l=oe(291);return l.dotDotDotToken=n,l.expression=o,l.transformFlags|=ye(l.dotDotDotToken)|ye(l.expression)|2,l}function Eh(n,o){return n.expression!==o?r(Ic(n.dotDotDotToken,o),n):n}function wh(n,o){let l=oe(292);return l.expression=s().parenthesizeExpressionForDisallowedComma(n),l.statements=Ne(o),l.transformFlags|=ye(l.expression)|gt(l.statements),l.jsDoc=void 0,l}function rp(n,o,l){return n.expression!==o||n.statements!==l?r(wh(o,l),n):n}function np(n){let o=oe(293);return o.statements=Ne(n),o.transformFlags=gt(o.statements),o}function jb(n,o){return n.statements!==o?r(np(o),n):n}function Ch(n,o){let l=oe(294);switch(l.token=n,l.types=Ne(o),l.transformFlags|=gt(l.types),n){case 94:l.transformFlags|=1024;break;case 117:l.transformFlags|=1;break;default:return Y.assertNever(n)}return l}function Ah(n,o){return n.types!==o?r(Ch(n.token,o),n):n}function ip(n,o){let l=oe(295);return l.variableDeclaration=Xh(n),l.block=o,l.transformFlags|=ye(l.variableDeclaration)|ye(l.block)|(n?0:64),l.locals=void 0,l.nextContainer=void 0,l}function Ph(n,o,l){return n.variableDeclaration!==o||n.block!==l?r(ip(o,l),n):n}function Fa(n,o){let l=Ve(299);return l.name=Qt(n),l.initializer=s().parenthesizeExpressionForDisallowedComma(o),l.transformFlags|=ai(l.name)|ye(l.initializer),l.modifiers=void 0,l.questionToken=void 0,l.exclamationToken=void 0,l.jsDoc=void 0,l}function Jb(n,o,l){return n.name!==o||n.initializer!==l?Fb(Fa(o,l),n):n}function Fb(n,o){return n!==o&&(n.modifiers=o.modifiers,n.questionToken=o.questionToken,n.exclamationToken=o.exclamationToken),r(n,o)}function Dh(n,o){let l=Ve(300);return l.name=Qt(n),l.objectAssignmentInitializer=o&&s().parenthesizeExpressionForDisallowedComma(o),l.transformFlags|=ec(l.name)|ye(l.objectAssignmentInitializer)|1024,l.equalsToken=void 0,l.modifiers=void 0,l.questionToken=void 0,l.exclamationToken=void 0,l.jsDoc=void 0,l}function Bb(n,o,l){return n.name!==o||n.objectAssignmentInitializer!==l?kh(Dh(o,l),n):n}function kh(n,o){return n!==o&&(n.modifiers=o.modifiers,n.questionToken=o.questionToken,n.exclamationToken=o.exclamationToken,n.equalsToken=o.equalsToken),r(n,o)}function ap(n){let o=Ve(301);return o.expression=s().parenthesizeExpressionForDisallowedComma(n),o.transformFlags|=ye(o.expression)|128|65536,o.jsDoc=void 0,o}function ki(n,o){return n.expression!==o?r(ap(o),n):n}function sp(n,o){let l=Ve(302);return l.name=Qt(n),l.initializer=o&&s().parenthesizeExpressionForDisallowedComma(o),l.transformFlags|=ye(l.name)|ye(l.initializer)|1,l.jsDoc=void 0,l}function qb(n,o,l){return n.name!==o||n.initializer!==l?r(sp(o,l),n):n}function Ub(n,o,l){let p=t.createBaseSourceFileNode(308);return p.statements=Ne(n),p.endOfFileToken=o,p.flags|=l,p.text="",p.fileName="",p.path="",p.resolvedPath="",p.originalFileName="",p.languageVersion=0,p.languageVariant=0,p.scriptKind=0,p.isDeclarationFile=!1,p.hasNoDefaultLib=!1,p.transformFlags|=gt(p.statements)|ye(p.endOfFileToken),p.locals=void 0,p.nextContainer=void 0,p.endFlowNode=void 0,p.nodeCount=0,p.identifierCount=0,p.symbolCount=0,p.parseDiagnostics=void 0,p.bindDiagnostics=void 0,p.bindSuggestionDiagnostics=void 0,p.lineMap=void 0,p.externalModuleIndicator=void 0,p.setExternalModuleIndicator=void 0,p.pragmas=void 0,p.checkJsDirective=void 0,p.referencedFiles=void 0,p.typeReferenceDirectives=void 0,p.libReferenceDirectives=void 0,p.amdDependencies=void 0,p.commentDirectives=void 0,p.identifiers=void 0,p.packageJsonLocations=void 0,p.packageJsonScope=void 0,p.imports=void 0,p.moduleAugmentations=void 0,p.ambientModuleNames=void 0,p.resolvedModules=void 0,p.classifiableNames=void 0,p.impliedNodeFormat=void 0,p}function Ih(n){let o=Object.create(n.redirectTarget);return Object.defineProperties(o,{id:{get(){return this.redirectInfo.redirectTarget.id},set(l){this.redirectInfo.redirectTarget.id=l}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(l){this.redirectInfo.redirectTarget.symbol=l}}}),o.redirectInfo=n,o}function Nh(n){let o=Ih(n.redirectInfo);return o.flags|=n.flags&-9,o.fileName=n.fileName,o.path=n.path,o.resolvedPath=n.resolvedPath,o.originalFileName=n.originalFileName,o.packageJsonLocations=n.packageJsonLocations,o.packageJsonScope=n.packageJsonScope,o.emitNode=void 0,o}function op(n){let o=t.createBaseSourceFileNode(308);o.flags|=n.flags&-9;for(let l in n)if(!(Jr(o,l)||!Jr(n,l))){if(l==="emitNode"){o.emitNode=void 0;continue}o[l]=n[l]}return o}function Oh(n){let o=n.redirectInfo?Nh(n):op(n);return Dn(o,n),o}function zb(n,o,l,p,k,V,we){let et=Oh(n);return et.statements=Ne(o),et.isDeclarationFile=l,et.referencedFiles=p,et.typeReferenceDirectives=k,et.hasNoDefaultLib=V,et.libReferenceDirectives=we,et.transformFlags=gt(et.statements)|ye(et.endOfFileToken),et}function Mh(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:n.isDeclarationFile,p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:n.referencedFiles,k=arguments.length>4&&arguments[4]!==void 0?arguments[4]:n.typeReferenceDirectives,V=arguments.length>5&&arguments[5]!==void 0?arguments[5]:n.hasNoDefaultLib,we=arguments.length>6&&arguments[6]!==void 0?arguments[6]:n.libReferenceDirectives;return n.statements!==o||n.isDeclarationFile!==l||n.referencedFiles!==p||n.typeReferenceDirectives!==k||n.hasNoDefaultLib!==V||n.libReferenceDirectives!==we?r(zb(n,o,l,p,k,V,we),n):n}function Lh(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Bt,l=oe(309);return l.prepends=o,l.sourceFiles=n,l.syntheticFileReferences=void 0,l.syntheticTypeReferences=void 0,l.syntheticLibReferences=void 0,l.hasNoDefaultLib=void 0,l}function Wb(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Bt;return n.sourceFiles!==o||n.prepends!==l?r(Lh(o,l),n):n}function Nc(n,o,l){let p=oe(310);return p.prologues=n,p.syntheticReferences=o,p.texts=l,p.fileName="",p.text="",p.referencedFiles=Bt,p.libReferenceDirectives=Bt,p.getLineAndCharacterOfPosition=k=>Ls(p,k),p}function Oc(n,o){let l=oe(n);return l.data=o,l}function Vb(n){return Oc(303,n)}function Hb(n,o){let l=Oc(304,n);return l.texts=o,l}function Gb(n,o){return Oc(o?306:305,n)}function $b(n){let o=oe(307);return o.data=n.data,o.section=n,o}function Kb(){let n=oe(311);return n.javascriptText="",n.declarationText="",n}function Rh(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,l=arguments.length>2?arguments[2]:void 0,p=oe(234);return p.type=n,p.isSpread=o,p.tupleNameSource=l,p}function jh(n){let o=oe(354);return o._children=n,o}function Jh(n){let o=oe(355);return o.original=n,Rt(o,n),o}function Fh(n,o){let l=oe(356);return l.expression=n,l.original=o,l.transformFlags|=ye(l.expression)|1,Rt(l,o),l}function Bh(n,o){return n.expression!==o?r(Fh(o,n.original),n):n}function qh(n){if(fs(n)&&!pl(n)&&!n.original&&!n.emitNode&&!n.id){if(oc(n))return n.elements;if(ur(n)&&I8(n.operatorToken))return[n.left,n.right]}return n}function Mc(n){let o=oe(357);return o.elements=Ne(at(n,qh)),o.transformFlags|=gt(o.elements),o}function Xb(n,o){return n.elements!==o?r(Mc(o),n):n}function Yb(n){let o=oe(359);return o.emitNode={},o.original=n,o}function Qb(n){let o=oe(358);return o.emitNode={},o.original=n,o}function Uh(n,o){let l=oe(360);return l.expression=n,l.thisArg=o,l.transformFlags|=ye(l.expression)|ye(l.thisArg),l}function _p(n,o,l){return n.expression!==o||n.thisArg!==l?r(Uh(o,l),n):n}function Zb(n){let o=pn(n.escapedText);return o.flags|=n.flags&-9,o.transformFlags=n.transformFlags,Dn(o,n),setIdentifierAutoGenerate(o,Object.assign({},n.emitNode.autoGenerate)),o}function e6(n){let o=pn(n.escapedText);o.flags|=n.flags&-9,o.jsDoc=n.jsDoc,o.flowNode=n.flowNode,o.symbol=n.symbol,o.transformFlags=n.transformFlags,Dn(o,n);let l=getIdentifierTypeArguments(n);return l&&setIdentifierTypeArguments(o,l),o}function t6(n){let o=dn(n.escapedText);return o.flags|=n.flags&-9,o.transformFlags=n.transformFlags,Dn(o,n),setIdentifierAutoGenerate(o,Object.assign({},n.emitNode.autoGenerate)),o}function r6(n){let o=dn(n.escapedText);return o.flags|=n.flags&-9,o.transformFlags=n.transformFlags,Dn(o,n),o}function cp(n){if(n===void 0)return n;if(wi(n))return Oh(n);if(cs(n))return Zb(n);if(yt(n))return e6(n);if(Ny(n))return t6(n);if(vn(n))return r6(n);let o=gl(n.kind)?t.createBaseNode(n.kind):t.createBaseTokenNode(n.kind);o.flags|=n.flags&-9,o.transformFlags=n.transformFlags,Dn(o,n);for(let l in n)Jr(o,l)||!Jr(n,l)||(o[l]=n[l]);return o}function n6(n,o,l){return Na(yu(void 0,void 0,void 0,void 0,o?[o]:[],void 0,Zs(n,!0)),void 0,l?[l]:[])}function Lc(n,o,l){return Na(vu(void 0,void 0,o?[o]:[],void 0,void 0,Zs(n,!0)),void 0,l?[l]:[])}function Rc(){return ui(Gt("0"))}function zh(n){return zu(void 0,!1,n)}function i6(n){return na(void 0,!1,to([Vu(!1,void 0,n)]))}function a6(n,o){return o==="undefined"?Ye.createStrictEquality(n,Rc()):Ye.createStrictEquality(mn(n),er(o))}function Ba(n,o,l){return Cy(n)?du(Xs(n,void 0,o),void 0,void 0,l):Na(ta(n,o),void 0,l)}function s6(n,o,l){return Ba(n,"bind",[o,...l])}function o6(n,o,l){return Ba(n,"call",[o,...l])}function _6(n,o,l){return Ba(n,"apply",[o,l])}function io(n,o,l){return Ba(Ut(n),o,l)}function Wh(n,o){return Ba(n,"slice",o===void 0?[]:[za(o)])}function Vh(n,o){return Ba(n,"concat",o)}function u(n,o,l){return io("Object","defineProperty",[n,za(o),l])}function b(n,o){return io("Object","getOwnPropertyDescriptor",[n,za(o)])}function O(n,o,l){return io("Reflect","get",l?[n,o,l]:[n,o])}function j(n,o,l,p){return io("Reflect","set",p?[n,o,l,p]:[n,o,l])}function z(n,o,l){return l?(n.push(Fa(o,l)),!0):!1}function re(n,o){let l=[];z(l,"enumerable",za(n.enumerable)),z(l,"configurable",za(n.configurable));let p=z(l,"writable",za(n.writable));p=z(l,"value",n.value)||p;let k=z(l,"get",n.get);return k=z(l,"set",n.set)||k,Y.assert(!(p&&k),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),r_(l,!o)}function Ee(n,o){switch(n.kind){case 214:return qd(n,o);case 213:return Bd(n,n.type,o);case 231:return Zd(n,o,n.type);case 235:return Pu(n,o,n.type);case 232:return Au(n,o);case 356:return Bh(n,o)}}function qe(n){return qo(n)&&fs(n)&&fs(getSourceMapRange(n))&&fs(getCommentRange(n))&&!Ke(getSyntheticLeadingComments(n))&&!Ke(getSyntheticTrailingComments(n))}function We(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:15;return n&&yd(n,l)&&!qe(n)?Ee(n,We(n.expression,o)):o}function $e(n,o,l){if(!o)return n;let p=ym(o,o.label,tE(o.statement)?$e(n,o.statement):n);return l&&l(o),p}function lt(n,o){let l=Pl(n);switch(l.kind){case 79:return o;case 108:case 8:case 9:case 10:return!1;case 206:return l.elements.length!==0;case 207:return l.properties.length>0;default:return!0}}function Jt(n,o,l){let p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,k=$o(n,15),V,we;return Sf(k)?(V=Or(),we=k):nd(k)?(V=Or(),we=l!==void 0&&l<2?Rt(Ut("_super"),k):k):xi(k)&8192?(V=Rc(),we=s().parenthesizeLeftSideOfAccess(k,!1)):bn(k)?lt(k.expression,p)?(V=kn(o),we=ta(Rt(Ye.createAssignment(V,k.expression),k.expression),k.name),Rt(we,k)):(V=k.expression,we=k):gs(k)?lt(k.expression,p)?(V=kn(o),we=pu(Rt(Ye.createAssignment(V,k.expression),k.expression),k.argumentExpression),Rt(we,k)):(V=k.expression,we=k):(V=Rc(),we=s().parenthesizeLeftSideOfAccess(n,!1)),{target:we,thisArg:V}}function Lt(n,o){return ta(gu(r_([ci(void 0,"value",[$n(void 0,void 0,n,void 0,void 0,void 0)],Zs([a_(o)]))])),"value")}function At(n){return n.length>10?Mc(n):Qa(n,Ye.createComma)}function kr(n,o,l){let p=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,k=ml(n);if(k&&yt(k)&&!cs(k)){let V=Sa(Rt(cp(k),k),k.parent);return p|=xi(k),l||(p|=96),o||(p|=3072),p&&setEmitFlags(V,p),V}return $i(n)}function Fn(n,o,l){return kr(n,o,l,98304)}function di(n,o,l){return kr(n,o,l,32768)}function Ii(n,o,l){return kr(n,o,l,16384)}function _n(n,o,l){return kr(n,o,l)}function qa(n,o,l,p){let k=ta(n,fs(o)?o:cp(o));Rt(k,o);let V=0;return p||(V|=96),l||(V|=3072),V&&setEmitFlags(k,V),k}function Hh(n,o,l,p){return n&&rn(o,1)?qa(n,kr(o),l,p):Ii(o,l,p)}function lp(n,o,l,p){let k=Ua(n,o,0,l);return up(n,o,k,p)}function Gh(n){return Gn(n.expression)&&n.expression.text==="use strict"}function wn(){return vd(a_(er("use strict")))}function Ua(n,o){let l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,p=arguments.length>3?arguments[3]:void 0;Y.assert(o.length===0,"Prologue directives should be at the first statement in the target statements array");let k=!1,V=n.length;for(;l4&&arguments[4]!==void 0?arguments[4]:vp,V=n.length;for(;l!==void 0&&let&&hn.splice(k,0,...o.slice(et,ht)),et>we&&hn.splice(p,0,...o.slice(we,et)),we>V&&hn.splice(l,0,...o.slice(V,we)),V>0)if(l===0)hn.splice(0,0,...o.slice(0,V));else{let Ni=new Map;for(let ia=0;ia=0;ia--){let Oi=o[ia];Ni.has(Oi.expression.text)||hn.unshift(Oi)}}return _s(n)?Rt(Ne(hn,n.hasTrailingComma),n):n}function Kh(n,o){var l;let p;return typeof o=="number"?p=$r(o):p=o,Fo(n)?wa(n,p,n.name,n.constraint,n.default):Vs(n)?Ki(n,p,n.dotDotDotToken,n.name,n.questionToken,n.type,n.initializer):Gv(n)?bt(n,p,n.typeParameters,n.parameters,n.type):Wl(n)?St(n,p,n.name,n.questionToken,n.type):Bo(n)?_t(n,p,n.name,(l=n.questionToken)!=null?l:n.exclamationToken,n.type,n.initializer):L8(n)?Kt(n,p,n.name,n.questionToken,n.typeParameters,n.parameters,n.type):Vl(n)?xe(n,p,n.asteriskToken,n.name,n.questionToken,n.typeParameters,n.parameters,n.type,n.body):nc(n)?It(n,p,n.parameters,n.body):Gl(n)?Ln(n,p,n.name,n.parameters,n.type,n.body):ic(n)?Xi(n,p,n.name,n.parameters,n.body):Hv(n)?bs(n,p,n.parameters,n.type):ad(n)?Ud(n,p,n.asteriskToken,n.name,n.typeParameters,n.parameters,n.type,n.body):sd(n)?zd(n,p,n.typeParameters,n.parameters,n.type,n.equalsGreaterThanToken,n.body):_d(n)?xc(n,p,n.name,n.typeParameters,n.heritageClauses,n.members):zo(n)?om(n,p,n.declarationList):Wo(n)?ju(n,p,n.asteriskToken,n.name,n.typeParameters,n.parameters,n.type,n.body):_c(n)?Ju(n,p,n.name,n.typeParameters,n.heritageClauses,n.members):eu(n)?Cm(n,p,n.name,n.typeParameters,n.heritageClauses,n.members):n2(n)?Ma(n,p,n.name,n.typeParameters,n.type):i2(n)?La(n,p,n.name,n.members):Ea(n)?Sr(n,p,n.name,n.body):s2(n)?Nm(n,p,n.isTypeOnly,n.name,n.moduleReference):o2(n)?Mm(n,p,n.importClause,n.moduleSpecifier,n.assertClause):Vo(n)?Wu(n,p,n.expression):cc(n)?Wm(n,p,n.isTypeOnly,n.exportClause,n.moduleSpecifier,n.assertClause):Y.assertNever(n)}function xt(n){return n?Ne(n):void 0}function Qt(n){return typeof n=="string"?Ut(n):n}function za(n){return typeof n=="string"?er(n):typeof n=="number"?Gt(n):typeof n=="boolean"?n?ar():oi():n}function Wa(n){return n&&s().parenthesizeExpressionForDisallowedComma(n)}function c6(n){return typeof n=="number"?pr(n):n}function Yn(n){return n&&c2(n)?Rt(Dn(Du(),n),n):n}function Xh(n){return typeof n=="string"||n&&!Vi(n)?Cc(n,void 0,void 0,void 0):n}}function JL(e,t){return e!==t&&Rt(e,t),e}function FL(e,t){return e!==t&&(Dn(e,t),Rt(e,t)),e}function ed(e){switch(e){case 347:return"type";case 345:return"returns";case 346:return"this";case 343:return"enum";case 333:return"author";case 335:return"class";case 336:return"public";case 337:return"private";case 338:return"protected";case 339:return"readonly";case 340:return"override";case 348:return"template";case 349:return"typedef";case 344:return"param";case 351:return"prop";case 341:return"callback";case 342:return"overload";case 331:return"augments";case 332:return"implements";default:return Y.fail(`Unsupported kind: ${Y.formatSyntaxKind(e)}`)}}function BL(e,t){switch(Hn||(Hn=Po(99,!1,0)),e){case 14:Hn.setText("`"+t+"`");break;case 15:Hn.setText("`"+t+"${");break;case 16:Hn.setText("}"+t+"${");break;case 17:Hn.setText("}"+t+"`");break}let r=Hn.scan();if(r===19&&(r=Hn.reScanTemplateToken(!1)),Hn.isUnterminated())return Hn.setText(void 0),qv;let s;switch(r){case 14:case 15:case 16:case 17:s=Hn.getTokenValue();break}return s===void 0||Hn.scan()!==1?(Hn.setText(void 0),qv):(Hn.setText(void 0),s)}function ai(e){return e&&yt(e)?ec(e):ye(e)}function ec(e){return ye(e)&-67108865}function qL(e,t){return t|e.transformFlags&134234112}function ye(e){if(!e)return 0;let t=e.transformFlags&~w8(e.kind);return af(e)&&vl(e.name)?qL(e.name,t):t}function gt(e){return e?e.transformFlags:0}function E8(e){let t=0;for(let r of e)t|=ye(r);e.transformFlags=t}function w8(e){if(e>=179&&e<=202)return-2;switch(e){case 210:case 211:case 206:return-2147450880;case 264:return-1941676032;case 166:return-2147483648;case 216:return-2072174592;case 215:case 259:return-1937940480;case 258:return-2146893824;case 260:case 228:return-2147344384;case 173:return-1937948672;case 169:return-2013249536;case 171:case 174:case 175:return-2005057536;case 131:case 148:case 160:case 144:case 152:case 149:case 134:case 153:case 114:case 165:case 168:case 170:case 176:case 177:case 178:case 261:case 262:return-2;case 207:return-2147278848;case 295:return-2147418112;case 203:case 204:return-2147450880;case 213:case 235:case 231:case 356:case 214:case 106:return-2147483648;case 208:case 209:return-2147483648;default:return-2147483648}}function Fl(e){return e.flags|=8,e}function UL(e,t,r){let s,f,x,w,A,g,B,N,X,F;Ji(e)?(x="",w=e,A=e.length,g=t,B=r):(Y.assert(t==="js"||t==="dts"),x=(t==="js"?e.javascriptPath:e.declarationPath)||"",g=t==="js"?e.javascriptMapPath:e.declarationMapPath,N=()=>t==="js"?e.javascriptText:e.declarationText,X=()=>t==="js"?e.javascriptMapText:e.declarationMapText,A=()=>N().length,e.buildInfo&&e.buildInfo.bundle&&(Y.assert(r===void 0||typeof r=="boolean"),s=r,f=t==="js"?e.buildInfo.bundle.js:e.buildInfo.bundle.dts,F=e.oldFileOfCurrentEmit));let $=F?WL(Y.checkDefined(f)):zL(f,s,A);return $.fileName=x,$.sourceMapPath=g,$.oldFileOfCurrentEmit=F,N&&X?(Object.defineProperty($,"text",{get:N}),Object.defineProperty($,"sourceMapText",{get:X})):(Y.assert(!F),$.text=w!=null?w:"",$.sourceMapText=B),$}function zL(e,t,r){let s,f,x,w,A,g,B,N;for(let F of e?e.sections:Bt)switch(F.kind){case"prologue":s=tr(s,Rt(si.createUnparsedPrologue(F.data),F));break;case"emitHelpers":f=tr(f,getAllUnscopedEmitHelpers().get(F.data));break;case"no-default-lib":N=!0;break;case"reference":x=tr(x,{pos:-1,end:-1,fileName:F.data});break;case"type":w=tr(w,{pos:-1,end:-1,fileName:F.data});break;case"type-import":w=tr(w,{pos:-1,end:-1,fileName:F.data,resolutionMode:99});break;case"type-require":w=tr(w,{pos:-1,end:-1,fileName:F.data,resolutionMode:1});break;case"lib":A=tr(A,{pos:-1,end:-1,fileName:F.data});break;case"prepend":let $;for(let ae of F.texts)(!t||ae.kind!=="internal")&&($=tr($,Rt(si.createUnparsedTextLike(ae.data,ae.kind==="internal"),ae)));g=jr(g,$),B=tr(B,si.createUnparsedPrepend(F.data,$!=null?$:Bt));break;case"internal":if(t){B||(B=[]);break}case"text":B=tr(B,Rt(si.createUnparsedTextLike(F.data,F.kind==="internal"),F));break;default:Y.assertNever(F)}if(!B){let F=si.createUnparsedTextLike(void 0,!1);$f(F,0,typeof r=="function"?r():r),B=[F]}let X=dc.createUnparsedSource(s!=null?s:Bt,void 0,B);return Q_(s,X),Q_(B,X),Q_(g,X),X.hasNoDefaultLib=N,X.helpers=f,X.referencedFiles=x||Bt,X.typeReferenceDirectives=w,X.libReferenceDirectives=A||Bt,X}function WL(e){let t,r;for(let f of e.sections)switch(f.kind){case"internal":case"text":t=tr(t,Rt(si.createUnparsedTextLike(f.data,f.kind==="internal"),f));break;case"no-default-lib":case"reference":case"type":case"type-import":case"type-require":case"lib":r=tr(r,Rt(si.createUnparsedSyntheticReference(f),f));break;case"prologue":case"emitHelpers":case"prepend":break;default:Y.assertNever(f)}let s=si.createUnparsedSource(Bt,r,t!=null?t:Bt);return Q_(r,s),Q_(t,s),s.helpers=Ze(e.sources&&e.sources.helpers,f=>getAllUnscopedEmitHelpers().get(f)),s}function VL(e,t,r,s,f,x){return Ji(e)?A8(void 0,e,r,s,void 0,t,f,x):C8(e,t,r,s,f,x)}function C8(e,t,r,s,f,x,w,A){let g=dc.createInputFiles();g.javascriptPath=t,g.javascriptMapPath=r,g.declarationPath=s,g.declarationMapPath=f,g.buildInfoPath=x;let B=new Map,N=ae=>{if(ae===void 0)return;let Te=B.get(ae);return Te===void 0&&(Te=e(ae),B.set(ae,Te!==void 0?Te:!1)),Te!==!1?Te:void 0},X=ae=>{let Te=N(ae);return Te!==void 0?Te:`/* Input file ${ae} was missing */\r +`},F;return Object.defineProperties(g,{javascriptText:{get:()=>X(t)},javascriptMapText:{get:()=>N(r)},declarationText:{get:()=>X(Y.checkDefined(s))},declarationMapText:{get:()=>N(f)},buildInfo:{get:()=>{var ae,Te;if(F===void 0&&x)if(w!=null&&w.getBuildInfo)F=(ae=w.getBuildInfo(x,A.configFilePath))!=null?ae:!1;else{let Se=N(x);F=Se!==void 0&&(Te=getBuildInfo(x,Se))!=null?Te:!1}return F||void 0}}}),g}function A8(e,t,r,s,f,x,w,A,g,B,N){let X=dc.createInputFiles();return X.javascriptPath=e,X.javascriptText=t,X.javascriptMapPath=r,X.javascriptMapText=s,X.declarationPath=f,X.declarationText=x,X.declarationMapPath=w,X.declarationMapText=A,X.buildInfoPath=g,X.buildInfo=B,X.oldFileOfCurrentEmit=N,X}function HL(e,t,r){return new(D8||(D8=lr.getSourceMapSourceConstructor()))(e,t,r)}function Dn(e,t){if(e.original=t,t){let r=t.emitNode;r&&(e.emitNode=GL(r,e.emitNode))}return e}function GL(e,t){let{flags:r,internalFlags:s,leadingComments:f,trailingComments:x,commentRange:w,sourceMapRange:A,tokenSourceMapRanges:g,constantValue:B,helpers:N,startsOnNewLine:X,snippetElement:F}=e;if(t||(t={}),f&&(t.leadingComments=jr(f.slice(),t.leadingComments)),x&&(t.trailingComments=jr(x.slice(),t.trailingComments)),r&&(t.flags=r),s&&(t.internalFlags=s&-9),w&&(t.commentRange=w),A&&(t.sourceMapRange=A),g&&(t.tokenSourceMapRanges=$L(g,t.tokenSourceMapRanges)),B!==void 0&&(t.constantValue=B),N)for(let $ of N)t.helpers=g_(t.helpers,$);return X!==void 0&&(t.startsOnNewLine=X),F!==void 0&&(t.snippetElement=F),t}function $L(e,t){t||(t=[]);for(let r in e)t[r]=e[r];return t}var Bl,Fv,Bv,Hn,qv,tc,P8,si,D8,KL=D({"src/compiler/factory/nodeFactory.ts"(){"use strict";nn(),Bl=0,Fv=(e=>(e[e.None=0]="None",e[e.NoParenthesizerRules=1]="NoParenthesizerRules",e[e.NoNodeConverters=2]="NoNodeConverters",e[e.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",e[e.NoOriginalNode=8]="NoOriginalNode",e))(Fv||{}),Bv=[],qv={},tc=S8(),P8={createBaseSourceFileNode:e=>Fl(tc.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>Fl(tc.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>Fl(tc.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>Fl(tc.createBaseTokenNode(e)),createBaseNode:e=>Fl(tc.createBaseNode(e))},si=Zf(4,P8)}}),XL=()=>{},YL=()=>{};function zs(e){return e.kind===8}function Uv(e){return e.kind===9}function Gn(e){return e.kind===10}function td(e){return e.kind===11}function QL(e){return e.kind===13}function k8(e){return e.kind===14}function ZL(e){return e.kind===15}function eR(e){return e.kind===16}function tR(e){return e.kind===17}function rR(e){return e.kind===25}function I8(e){return e.kind===27}function zv(e){return e.kind===39}function Wv(e){return e.kind===40}function nR(e){return e.kind===41}function rd(e){return e.kind===53}function ql(e){return e.kind===57}function iR(e){return e.kind===58}function aR(e){return e.kind===28}function sR(e){return e.kind===38}function yt(e){return e.kind===79}function vn(e){return e.kind===80}function N8(e){return e.kind===93}function oR(e){return e.kind===88}function Ul(e){return e.kind===132}function _R(e){return e.kind===129}function cR(e){return e.kind===133}function O8(e){return e.kind===146}function lR(e){return e.kind===124}function uR(e){return e.kind===126}function pR(e){return e.kind===161}function fR(e){return e.kind===127}function nd(e){return e.kind===106}function M8(e){return e.kind===100}function dR(e){return e.kind===82}function rc(e){return e.kind===163}function Ws(e){return e.kind===164}function Fo(e){return e.kind===165}function Vs(e){return e.kind===166}function zl(e){return e.kind===167}function Wl(e){return e.kind===168}function Bo(e){return e.kind===169}function L8(e){return e.kind===170}function Vl(e){return e.kind===171}function Hl(e){return e.kind===172}function nc(e){return e.kind===173}function Gl(e){return e.kind===174}function ic(e){return e.kind===175}function Vv(e){return e.kind===176}function R8(e){return e.kind===177}function Hv(e){return e.kind===178}function j8(e){return e.kind===179}function ac(e){return e.kind===180}function $l(e){return e.kind===181}function Gv(e){return e.kind===182}function J8(e){return e.kind===183}function id(e){return e.kind===184}function F8(e){return e.kind===185}function B8(e){return e.kind===186}function $v(e){return e.kind===199}function q8(e){return e.kind===187}function U8(e){return e.kind===188}function z8(e){return e.kind===189}function W8(e){return e.kind===190}function V8(e){return e.kind===191}function H8(e){return e.kind===192}function Kv(e){return e.kind===193}function Xv(e){return e.kind===194}function G8(e){return e.kind===195}function $8(e){return e.kind===196}function K8(e){return e.kind===197}function Yv(e){return e.kind===198}function Kl(e){return e.kind===202}function mR(e){return e.kind===201}function hR(e){return e.kind===200}function gR(e){return e.kind===203}function yR(e){return e.kind===204}function Xl(e){return e.kind===205}function Yl(e){return e.kind===206}function Hs(e){return e.kind===207}function bn(e){return e.kind===208}function gs(e){return e.kind===209}function sc(e){return e.kind===210}function X8(e){return e.kind===211}function Y8(e){return e.kind===212}function vR(e){return e.kind===213}function qo(e){return e.kind===214}function ad(e){return e.kind===215}function sd(e){return e.kind===216}function bR(e){return e.kind===217}function TR(e){return e.kind===218}function Qv(e){return e.kind===219}function SR(e){return e.kind===220}function od(e){return e.kind===221}function Q8(e){return e.kind===222}function ur(e){return e.kind===223}function xR(e){return e.kind===224}function ER(e){return e.kind===225}function wR(e){return e.kind===226}function Zv(e){return e.kind===227}function _d(e){return e.kind===228}function cd(e){return e.kind===229}function e2(e){return e.kind===230}function CR(e){return e.kind===231}function AR(e){return e.kind===235}function Uo(e){return e.kind===232}function t2(e){return e.kind===233}function PR(e){return e.kind===234}function Z8(e){return e.kind===356}function oc(e){return e.kind===357}function DR(e){return e.kind===236}function kR(e){return e.kind===237}function Ql(e){return e.kind===238}function zo(e){return e.kind===240}function IR(e){return e.kind===239}function Zl(e){return e.kind===241}function NR(e){return e.kind===242}function OR(e){return e.kind===243}function MR(e){return e.kind===244}function eE(e){return e.kind===245}function LR(e){return e.kind===246}function RR(e){return e.kind===247}function jR(e){return e.kind===248}function JR(e){return e.kind===249}function FR(e){return e.kind===250}function BR(e){return e.kind===251}function qR(e){return e.kind===252}function tE(e){return e.kind===253}function UR(e){return e.kind===254}function zR(e){return e.kind===255}function WR(e){return e.kind===256}function Vi(e){return e.kind===257}function r2(e){return e.kind===258}function Wo(e){return e.kind===259}function _c(e){return e.kind===260}function eu(e){return e.kind===261}function n2(e){return e.kind===262}function i2(e){return e.kind===263}function Ea(e){return e.kind===264}function rE(e){return e.kind===265}function VR(e){return e.kind===266}function a2(e){return e.kind===267}function s2(e){return e.kind===268}function o2(e){return e.kind===269}function HR(e){return e.kind===270}function GR(e){return e.kind===298}function $R(e){return e.kind===296}function KR(e){return e.kind===297}function _2(e){return e.kind===271}function ld(e){return e.kind===277}function XR(e){return e.kind===272}function nE(e){return e.kind===273}function Vo(e){return e.kind===274}function cc(e){return e.kind===275}function iE(e){return e.kind===276}function aE(e){return e.kind===278}function YR(e){return e.kind===279}function c2(e){return e.kind===355}function QR(e){return e.kind===360}function ZR(e){return e.kind===358}function ej(e){return e.kind===359}function ud(e){return e.kind===280}function l2(e){return e.kind===281}function tj(e){return e.kind===282}function tu(e){return e.kind===283}function sE(e){return e.kind===284}function pd(e){return e.kind===285}function u2(e){return e.kind===286}function rj(e){return e.kind===287}function nj(e){return e.kind===288}function p2(e){return e.kind===289}function ij(e){return e.kind===290}function aj(e){return e.kind===291}function sj(e){return e.kind===292}function oE(e){return e.kind===293}function ru(e){return e.kind===294}function oj(e){return e.kind===295}function lc(e){return e.kind===299}function nu(e){return e.kind===300}function _E(e){return e.kind===301}function cE(e){return e.kind===302}function _j(e){return e.kind===304}function wi(e){return e.kind===308}function cj(e){return e.kind===309}function lj(e){return e.kind===310}function lE(e){return e.kind===312}function fd(e){return e.kind===313}function uc(e){return e.kind===314}function uj(e){return e.kind===327}function pj(e){return e.kind===328}function fj(e){return e.kind===329}function dj(e){return e.kind===315}function mj(e){return e.kind===316}function uE(e){return e.kind===317}function hj(e){return e.kind===318}function gj(e){return e.kind===319}function dd(e){return e.kind===320}function yj(e){return e.kind===321}function vj(e){return e.kind===322}function Ho(e){return e.kind===323}function f2(e){return e.kind===325}function iu(e){return e.kind===326}function md(e){return e.kind===331}function bj(e){return e.kind===333}function pE(e){return e.kind===335}function Tj(e){return e.kind===341}function d2(e){return e.kind===336}function m2(e){return e.kind===337}function h2(e){return e.kind===338}function g2(e){return e.kind===339}function fE(e){return e.kind===340}function y2(e){return e.kind===342}function v2(e){return e.kind===334}function Sj(e){return e.kind===350}function dE(e){return e.kind===343}function pc(e){return e.kind===344}function b2(e){return e.kind===345}function mE(e){return e.kind===346}function au(e){return e.kind===347}function Go(e){return e.kind===348}function xj(e){return e.kind===349}function Ej(e){return e.kind===330}function wj(e){return e.kind===351}function hE(e){return e.kind===332}function T2(e){return e.kind===353}function Cj(e){return e.kind===352}function Aj(e){return e.kind===354}var Pj=D({"src/compiler/factory/nodeTests.ts"(){"use strict";nn()}});function Dj(e){return e.createExportDeclaration(void 0,!1,e.createNamedExports([]),void 0)}function hd(e,t,r,s){if(Ws(r))return Rt(e.createElementAccessExpression(t,r.expression),s);{let f=Rt(js(r)?e.createPropertyAccessExpression(t,r):e.createElementAccessExpression(t,r),r);return addEmitFlags(f,128),f}}function S2(e,t){let r=dc.createIdentifier(e||"React");return Sa(r,fl(t)),r}function x2(e,t,r){if(rc(t)){let s=x2(e,t.left,r),f=e.createIdentifier(qr(t.right));return f.escapedText=t.right.escapedText,e.createPropertyAccessExpression(s,f)}else return S2(qr(t),r)}function gE(e,t,r,s){return t?x2(e,t,s):e.createPropertyAccessExpression(S2(r,s),"createElement")}function kj(e,t,r,s){return t?x2(e,t,s):e.createPropertyAccessExpression(S2(r,s),"Fragment")}function Ij(e,t,r,s,f,x){let w=[r];if(s&&w.push(s),f&&f.length>0)if(s||w.push(e.createNull()),f.length>1)for(let A of f)vd(A),w.push(A);else w.push(f[0]);return Rt(e.createCallExpression(t,void 0,w),x)}function Nj(e,t,r,s,f,x,w){let g=[kj(e,r,s,x),e.createNull()];if(f&&f.length>0)if(f.length>1)for(let B of f)vd(B),g.push(B);else g.push(f[0]);return Rt(e.createCallExpression(gE(e,t,s,x),void 0,g),w)}function Oj(e,t,r){if(r2(t)){let s=fo(t.declarations),f=e.updateVariableDeclaration(s,s.name,void 0,void 0,r);return Rt(e.createVariableStatement(void 0,e.updateVariableDeclarationList(t,[f])),t)}else{let s=Rt(e.createAssignment(t,r),t);return Rt(e.createExpressionStatement(s),t)}}function Mj(e,t,r){return Ql(t)?e.updateBlock(t,Rt(e.createNodeArray([r,...t.statements]),t.statements)):e.createBlock(e.createNodeArray([t,r]),!0)}function yE(e,t){if(rc(t)){let r=yE(e,t.left),s=Sa(Rt(e.cloneNode(t.right),t.right),t.right.parent);return Rt(e.createPropertyAccessExpression(r,s),t)}else return Sa(Rt(e.cloneNode(t),t),t.parent)}function vE(e,t){return yt(t)?e.createStringLiteralFromNode(t):Ws(t)?Sa(Rt(e.cloneNode(t.expression),t.expression),t.expression.parent):Sa(Rt(e.cloneNode(t),t),t.parent)}function Lj(e,t,r,s,f){let{firstAccessor:x,getAccessor:w,setAccessor:A}=W0(t,r);if(r===x)return Rt(e.createObjectDefinePropertyCall(s,vE(e,r.name),e.createPropertyDescriptor({enumerable:e.createFalse(),configurable:!0,get:w&&Rt(Dn(e.createFunctionExpression(sf(w),void 0,void 0,void 0,w.parameters,void 0,w.body),w),w),set:A&&Rt(Dn(e.createFunctionExpression(sf(A),void 0,void 0,void 0,A.parameters,void 0,A.body),A),A)},!f)),x)}function Rj(e,t,r){return Dn(Rt(e.createAssignment(hd(e,r,t.name,t.name),t.initializer),t),t)}function jj(e,t,r){return Dn(Rt(e.createAssignment(hd(e,r,t.name,t.name),e.cloneNode(t.name)),t),t)}function Jj(e,t,r){return Dn(Rt(e.createAssignment(hd(e,r,t.name,t.name),Dn(Rt(e.createFunctionExpression(sf(t),t.asteriskToken,void 0,void 0,t.parameters,void 0,t.body),t),t)),t),t)}function Fj(e,t,r,s){switch(r.name&&vn(r.name)&&Y.failBadSyntaxKind(r.name,"Private identifiers are not allowed in object literals."),r.kind){case 174:case 175:return Lj(e,t.properties,r,s,!!t.multiLine);case 299:return Rj(e,r,s);case 300:return jj(e,r,s);case 171:return Jj(e,r,s)}}function Bj(e,t,r,s,f){let x=t.operator;Y.assert(x===45||x===46,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");let w=e.createTempVariable(s);r=e.createAssignment(w,r),Rt(r,t.operand);let A=od(t)?e.createPrefixUnaryExpression(x,w):e.createPostfixUnaryExpression(w,x);return Rt(A,t),f&&(A=e.createAssignment(f,A),Rt(A,t)),r=e.createComma(r,A),Rt(r,t),Q8(t)&&(r=e.createComma(r,w),Rt(r,t)),r}function qj(e){return(xi(e)&65536)!==0}function E2(e){return(xi(e)&32768)!==0}function Uj(e){return(xi(e)&16384)!==0}function bE(e){return Gn(e.expression)&&e.expression.text==="use strict"}function TE(e){for(let t of e)if(us(t)){if(bE(t))return t}else break}function SE(e){let t=pa(e);return t!==void 0&&us(t)&&bE(t)}function gd(e){return e.kind===223&&e.operatorToken.kind===27}function zj(e){return gd(e)||oc(e)}function xE(e){return qo(e)&&Pr(e)&&!!_f(e)}function Wj(e){let t=cf(e);return Y.assertIsDefined(t),t}function yd(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:15;switch(e.kind){case 214:return t&16&&xE(e)?!1:(t&1)!==0;case 213:case 231:case 230:case 235:return(t&2)!==0;case 232:return(t&4)!==0;case 356:return(t&8)!==0}return!1}function $o(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:15;for(;yd(e,t);)e=e.expression;return e}function Vj(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:15,r=e.parent;for(;yd(r,t);)r=r.parent,Y.assert(r);return r}function Hj(e){return $o(e,6)}function vd(e){return setStartsOnNewLine(e,!0)}function EE(e){let t=ul(e,wi),r=t&&t.emitNode;return r&&r.externalHelpersModuleName}function Gj(e){let t=ul(e,wi),r=t&&t.emitNode;return!!r&&(!!r.externalHelpersModuleName||!!r.externalHelpers)}function $j(e,t,r,s,f,x,w){if(s.importHelpers&&Yy(r,s)){let A,g=Ei(s);if(g>=5&&g<=99||r.impliedNodeFormat===99){let B=getEmitHelpers(r);if(B){let N=[];for(let X of B)if(!X.scoped){let F=X.importName;F&&qn(N,F)}if(Ke(N)){N.sort(ri),A=e.createNamedImports(Ze(N,$=>m3(r,$)?e.createImportSpecifier(!1,void 0,e.createIdentifier($)):e.createImportSpecifier(!1,e.createIdentifier($),t.getUnscopedHelperName($))));let X=ul(r,wi),F=getOrCreateEmitNode(X);F.externalHelpers=!0}}}else{let B=wE(e,r,s,f,x||w);B&&(A=e.createNamespaceImport(B))}if(A){let B=e.createImportDeclaration(void 0,e.createImportClause(!1,void 0,A),e.createStringLiteral(Kf),void 0);return addInternalEmitFlags(B,2),B}}}function wE(e,t,r,s,f){if(r.importHelpers&&Yy(t,r)){let x=EE(t);if(x)return x;let w=Ei(r),A=(s||ov(r)&&f)&&w!==4&&(w<5||t.impliedNodeFormat===1);if(!A){let g=getEmitHelpers(t);if(g){for(let B of g)if(!B.scoped){A=!0;break}}}if(A){let g=ul(t,wi),B=getOrCreateEmitNode(g);return B.externalHelpersModuleName||(B.externalHelpersModuleName=e.createUniqueName(Kf))}}}function Kj(e,t,r){let s=Q3(t);if(s&&!Z3(t)&&!b3(t)){let f=s.name;return cs(f)?f:e.createIdentifier(No(r,f)||qr(f))}if(t.kind===269&&t.importClause||t.kind===275&&t.moduleSpecifier)return e.getGeneratedNameForNode(t)}function Xj(e,t,r,s,f,x){let w=E0(t);if(w&&Gn(w))return Qj(t,s,e,f,x)||Yj(e,w,r)||e.cloneNode(w)}function Yj(e,t,r){let s=r.renamedDependencies&&r.renamedDependencies.get(t.text);return s?e.createStringLiteral(s):void 0}function CE(e,t,r,s){if(t){if(t.moduleName)return e.createStringLiteral(t.moduleName);if(!t.isDeclarationFile&&B0(s))return e.createStringLiteral(F0(r,t.fileName))}}function Qj(e,t,r,s,f){return CE(r,s.getExternalModuleFileFromDeclaration(e),t,f)}function AE(e){if(Fy(e))return e.initializer;if(lc(e)){let t=e.initializer;return ms(t,!0)?t.right:void 0}if(nu(e))return e.objectAssignmentInitializer;if(ms(e,!0))return e.right;if(Zv(e))return AE(e.expression)}function Ko(e){if(Fy(e))return e.name;if(jy(e)){switch(e.kind){case 299:return Ko(e.initializer);case 300:return e.name;case 301:return Ko(e.expression)}return}return ms(e,!0)?Ko(e.left):Zv(e)?Ko(e.expression):e}function Zj(e){switch(e.kind){case 166:case 205:return e.dotDotDotToken;case 227:case 301:return e}}function eJ(e){let t=PE(e);return Y.assert(!!t||_E(e),"Invalid property name for binding element."),t}function PE(e){switch(e.kind){case 205:if(e.propertyName){let r=e.propertyName;return vn(r)?Y.failBadSyntaxKind(r):Ws(r)&&DE(r.expression)?r.expression:r}break;case 299:if(e.name){let r=e.name;return vn(r)?Y.failBadSyntaxKind(r):Ws(r)&&DE(r.expression)?r.expression:r}break;case 301:return e.name&&vn(e.name)?Y.failBadSyntaxKind(e.name):e.name}let t=Ko(e);if(t&&vl(t))return t}function DE(e){let t=e.kind;return t===10||t===8}function kE(e){switch(e.kind){case 203:case 204:case 206:return e.elements;case 207:return e.properties}}function w2(e){if(e){let t=e;for(;;){if(yt(t)||!t.body)return yt(t)?t:t.name;t=t.body}}}function tJ(e){let t=e.kind;return t===173||t===175}function IE(e){let t=e.kind;return t===173||t===174||t===175}function rJ(e){let t=e.kind;return t===299||t===300||t===259||t===173||t===178||t===172||t===279||t===240||t===261||t===262||t===263||t===264||t===268||t===269||t===267||t===275||t===274}function nJ(e){let t=e.kind;return t===172||t===299||t===300||t===279||t===267}function iJ(e){return ql(e)||rd(e)}function aJ(e){return yt(e)||Xv(e)}function sJ(e){return O8(e)||zv(e)||Wv(e)}function oJ(e){return ql(e)||zv(e)||Wv(e)}function _J(e){return yt(e)||Gn(e)}function cJ(e){let t=e.kind;return t===104||t===110||t===95||Iy(e)||od(e)}function lJ(e){return e===42}function uJ(e){return e===41||e===43||e===44}function pJ(e){return lJ(e)||uJ(e)}function fJ(e){return e===39||e===40}function dJ(e){return fJ(e)||pJ(e)}function mJ(e){return e===47||e===48||e===49}function hJ(e){return mJ(e)||dJ(e)}function gJ(e){return e===29||e===32||e===31||e===33||e===102||e===101}function yJ(e){return gJ(e)||hJ(e)}function vJ(e){return e===34||e===36||e===35||e===37}function bJ(e){return vJ(e)||yJ(e)}function TJ(e){return e===50||e===51||e===52}function SJ(e){return TJ(e)||bJ(e)}function xJ(e){return e===55||e===56}function EJ(e){return xJ(e)||SJ(e)}function wJ(e){return e===60||EJ(e)||G_(e)}function CJ(e){return wJ(e)||e===27}function AJ(e){return CJ(e.kind)}function PJ(e,t,r,s,f,x){let w=new OE(e,t,r,s,f,x);return A;function A(g,B){let N={value:void 0},X=[Td.enter],F=[g],$=[void 0],ae=0;for(;X[ae]!==Td.done;)ae=X[ae](w,ae,X,F,$,N,B);return Y.assertEqual(ae,0),N.value}}function NE(e){return e===93||e===88}function DJ(e){let t=e.kind;return NE(t)}function kJ(e){let t=e.kind;return Wi(t)&&!NE(t)}function IJ(e,t){if(t!==void 0)return t.length===0?t:Rt(e.createNodeArray([],t.hasTrailingComma),t)}function NJ(e){var t;let r=e.emitNode.autoGenerate;if(r.flags&4){let s=r.id,f=e,x=f.original;for(;x;){f=x;let w=(t=f.emitNode)==null?void 0:t.autoGenerate;if(js(f)&&(w===void 0||w.flags&4&&w.id!==s))break;x=f.original}return f}return e}function C2(e,t){return typeof e=="object"?bd(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function OJ(e,t){return typeof e=="string"?e:MJ(e,Y.checkDefined(t))}function MJ(e,t){return Ny(e)?t(e).slice(1):cs(e)?t(e):vn(e)?e.escapedText.slice(1):qr(e)}function bd(e,t,r,s,f){return t=C2(t,f),s=C2(s,f),r=OJ(r,f),`${e?"#":""}${t}${r}${s}`}function LJ(e,t,r,s){return e.updatePropertyDeclaration(t,r,e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage"),void 0,void 0,s)}function RJ(e,t,r,s){return e.createGetAccessorDeclaration(r,s,[],void 0,e.createBlock([e.createReturnStatement(e.createPropertyAccessExpression(e.createThis(),e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage")))]))}function jJ(e,t,r,s){return e.createSetAccessorDeclaration(r,s,[e.createParameterDeclaration(void 0,void 0,"value")],e.createBlock([e.createExpressionStatement(e.createAssignment(e.createPropertyAccessExpression(e.createThis(),e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage")),e.createIdentifier("value")))]))}function JJ(e){let t=e.expression;for(;;){if(t=$o(t),oc(t)){t=Zn(t.elements);continue}if(gd(t)){t=t.right;continue}if(ms(t,!0)&&cs(t.left))return t;break}}function FJ(e){return qo(e)&&fs(e)&&!e.emitNode}function su(e,t){if(FJ(e))su(e.expression,t);else if(gd(e))su(e.left,t),su(e.right,t);else if(oc(e))for(let r of e.elements)su(r,t);else t.push(e)}function BJ(e){let t=[];return su(e,t),t}function A2(e){if(e.transformFlags&65536)return!0;if(e.transformFlags&128)for(let t of kE(e)){let r=Ko(t);if(r&&KS(r)&&(r.transformFlags&65536||r.transformFlags&128&&A2(r)))return!0}return!1}var Td,OE,qJ=D({"src/compiler/factory/utilities.ts"(){"use strict";nn(),(e=>{function t(N,X,F,$,ae,Te,Se){let Ye=X>0?ae[X-1]:void 0;return Y.assertEqual(F[X],t),ae[X]=N.onEnter($[X],Ye,Se),F[X]=A(N,t),X}e.enter=t;function r(N,X,F,$,ae,Te,Se){Y.assertEqual(F[X],r),Y.assertIsDefined(N.onLeft),F[X]=A(N,r);let Ye=N.onLeft($[X].left,ae[X],$[X]);return Ye?(B(X,$,Ye),g(X,F,$,ae,Ye)):X}e.left=r;function s(N,X,F,$,ae,Te,Se){return Y.assertEqual(F[X],s),Y.assertIsDefined(N.onOperator),F[X]=A(N,s),N.onOperator($[X].operatorToken,ae[X],$[X]),X}e.operator=s;function f(N,X,F,$,ae,Te,Se){Y.assertEqual(F[X],f),Y.assertIsDefined(N.onRight),F[X]=A(N,f);let Ye=N.onRight($[X].right,ae[X],$[X]);return Ye?(B(X,$,Ye),g(X,F,$,ae,Ye)):X}e.right=f;function x(N,X,F,$,ae,Te,Se){Y.assertEqual(F[X],x),F[X]=A(N,x);let Ye=N.onExit($[X],ae[X]);if(X>0){if(X--,N.foldState){let Ne=F[X]===x?"right":"left";ae[X]=N.foldState(ae[X],Ye,Ne)}}else Te.value=Ye;return X}e.exit=x;function w(N,X,F,$,ae,Te,Se){return Y.assertEqual(F[X],w),X}e.done=w;function A(N,X){switch(X){case t:if(N.onLeft)return r;case r:if(N.onOperator)return s;case s:if(N.onRight)return f;case f:return x;case x:return w;case w:return w;default:Y.fail("Invalid state")}}e.nextState=A;function g(N,X,F,$,ae){return N++,X[N]=t,F[N]=ae,$[N]=void 0,N}function B(N,X,F){if(Y.shouldAssert(2))for(;N>=0;)Y.assert(X[N]!==F,"Circular traversal detected."),N--}})(Td||(Td={})),OE=class{constructor(e,t,r,s,f,x){this.onEnter=e,this.onLeft=t,this.onOperator=r,this.onRight=s,this.onExit=f,this.foldState=x}}}});function Rt(e,t){return t?Us(e,t.pos,t.end):e}function fc(e){let t=e.kind;return t===165||t===166||t===168||t===169||t===170||t===171||t===173||t===174||t===175||t===178||t===182||t===215||t===216||t===228||t===240||t===259||t===260||t===261||t===262||t===263||t===264||t===268||t===269||t===274||t===275}function ME(e){let t=e.kind;return t===166||t===169||t===171||t===174||t===175||t===228||t===260}var UJ=D({"src/compiler/factory/utilitiesPublic.ts"(){"use strict";nn()}});function G(e,t){return t&&e(t)}function ze(e,t,r){if(r){if(t)return t(r);for(let s of r){let f=e(s);if(f)return f}}}function LE(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}function ou(e){return c(e.statements,zJ)||WJ(e)}function zJ(e){return fc(e)&&VJ(e,93)||s2(e)&&ud(e.moduleReference)||o2(e)||Vo(e)||cc(e)?e:void 0}function WJ(e){return e.flags&4194304?RE(e):void 0}function RE(e){return HJ(e)?e:xr(e,RE)}function VJ(e,t){return Ke(e.modifiers,r=>r.kind===t)}function HJ(e){return t2(e)&&e.keywordToken===100&&e.name.escapedText==="meta"}function jE(e,t,r){return ze(t,r,e.typeParameters)||ze(t,r,e.parameters)||G(t,e.type)}function JE(e,t,r){return ze(t,r,e.types)}function FE(e,t,r){return G(t,e.type)}function BE(e,t,r){return ze(t,r,e.elements)}function qE(e,t,r){return G(t,e.expression)||G(t,e.questionDotToken)||ze(t,r,e.typeArguments)||ze(t,r,e.arguments)}function UE(e,t,r){return ze(t,r,e.statements)}function zE(e,t,r){return G(t,e.label)}function WE(e,t,r){return ze(t,r,e.modifiers)||G(t,e.name)||ze(t,r,e.typeParameters)||ze(t,r,e.heritageClauses)||ze(t,r,e.members)}function VE(e,t,r){return ze(t,r,e.elements)}function HE(e,t,r){return G(t,e.propertyName)||G(t,e.name)}function GE(e,t,r){return G(t,e.tagName)||ze(t,r,e.typeArguments)||G(t,e.attributes)}function Xo(e,t,r){return G(t,e.type)}function $E(e,t,r){return G(t,e.tagName)||(e.isNameFirst?G(t,e.name)||G(t,e.typeExpression):G(t,e.typeExpression)||G(t,e.name))||(typeof e.comment=="string"?void 0:ze(t,r,e.comment))}function Yo(e,t,r){return G(t,e.tagName)||G(t,e.typeExpression)||(typeof e.comment=="string"?void 0:ze(t,r,e.comment))}function P2(e,t,r){return G(t,e.name)}function Gs(e,t,r){return G(t,e.tagName)||(typeof e.comment=="string"?void 0:ze(t,r,e.comment))}function GJ(e,t,r){return G(t,e.expression)}function xr(e,t,r){if(e===void 0||e.kind<=162)return;let s=o7[e.kind];return s===void 0?void 0:s(e,t,r)}function D2(e,t,r){let s=KE(e),f=[];for(;f.length=0;--A)s.push(x[A]),f.push(w)}else{let A=t(x,w);if(A){if(A==="skip")continue;return A}if(x.kind>=163)for(let g of KE(x))s.push(g),f.push(x)}}}function KE(e){let t=[];return xr(e,r,r),t;function r(s){t.unshift(s)}}function XE(e){e.externalModuleIndicator=ou(e)}function YE(e,t,r){let s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,f=arguments.length>4?arguments[4]:void 0;var x,w;(x=rs)==null||x.push(rs.Phase.Parse,"createSourceFile",{path:e},!0),DT("beforeParse");let A;Dp.logStartParseSourceFile(e);let{languageVersion:g,setExternalModuleIndicator:B,impliedNodeFormat:N}=typeof r=="object"?r:{languageVersion:r};if(g===100)A=Ci.parseSourceFile(e,t,g,void 0,s,6,yn);else{let X=N===void 0?B:F=>(F.impliedNodeFormat=N,(B||XE)(F));A=Ci.parseSourceFile(e,t,g,void 0,s,f,X)}return Dp.logStopParseSourceFile(),DT("afterParse"),B5("Parse","beforeParse","afterParse"),(w=rs)==null||w.pop(),A}function $J(e,t){return Ci.parseIsolatedEntityName(e,t)}function KJ(e,t){return Ci.parseJsonText(e,t)}function Qo(e){return e.externalModuleIndicator!==void 0}function k2(e,t,r){let s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,f=Sd.updateSourceFile(e,t,r,s);return f.flags|=e.flags&6291456,f}function XJ(e,t,r){let s=Ci.JSDocParser.parseIsolatedJSDocComment(e,t,r);return s&&s.jsDoc&&Ci.fixupParentReferences(s.jsDoc),s}function YJ(e,t,r){return Ci.JSDocParser.parseJSDocTypeExpressionForTests(e,t,r)}function QE(e){return da(e,Rv)||ns(e,".ts")&&Fi(sl(e),".d.")}function QJ(e,t,r,s){if(e){if(e==="import")return 99;if(e==="require")return 1;s(t,r-t,ve.resolution_mode_should_be_either_require_or_import)}}function ZE(e,t){let r=[];for(let s of Ao(t,0)||Bt){let f=t.substring(s.pos,s.end);eF(r,s,f)}e.pragmas=new Map;for(let s of r){if(e.pragmas.has(s.name)){let f=e.pragmas.get(s.name);f instanceof Array?f.push(s.args):e.pragmas.set(s.name,[f,s.args]);continue}e.pragmas.set(s.name,s.args)}}function e7(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((r,s)=>{switch(s){case"reference":{let f=e.referencedFiles,x=e.typeReferenceDirectives,w=e.libReferenceDirectives;c(en(r),A=>{let{types:g,lib:B,path:N,["resolution-mode"]:X}=A.arguments;if(A.arguments["no-default-lib"])e.hasNoDefaultLib=!0;else if(g){let F=QJ(X,g.pos,g.end,t);x.push(Object.assign({pos:g.pos,end:g.end,fileName:g.value},F?{resolutionMode:F}:{}))}else B?w.push({pos:B.pos,end:B.end,fileName:B.value}):N?f.push({pos:N.pos,end:N.end,fileName:N.value}):t(A.range.pos,A.range.end-A.range.pos,ve.Invalid_reference_directive_syntax)});break}case"amd-dependency":{e.amdDependencies=Ze(en(r),f=>({name:f.arguments.name,path:f.arguments.path}));break}case"amd-module":{if(r instanceof Array)for(let f of r)e.moduleName&&t(f.range.pos,f.range.end-f.range.pos,ve.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=f.arguments.name;else e.moduleName=r.arguments.name;break}case"ts-nocheck":case"ts-check":{c(en(r),f=>{(!e.checkJsDirective||f.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:s==="ts-check",end:f.range.end,pos:f.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:Y.fail("Unhandled pragma kind")}})}function ZJ(e){if(xd.has(e))return xd.get(e);let t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return xd.set(e,t),t}function eF(e,t,r){let s=t.kind===2&&_7.exec(r);if(s){let x=s[1].toLowerCase(),w=Vp[x];if(!w||!(w.kind&1))return;if(w.args){let A={};for(let g of w.args){let N=ZJ(g.name).exec(r);if(!N&&!g.optional)return;if(N){let X=N[2]||N[3];if(g.captureSpan){let F=t.pos+N.index+N[1].length+1;A[g.name]={value:X,pos:F,end:F+X.length}}else A[g.name]=X}}e.push({name:x,args:{arguments:A,range:t}})}else e.push({name:x,args:{arguments:{},range:t}});return}let f=t.kind===2&&c7.exec(r);if(f)return t7(e,t,2,f);if(t.kind===3){let x=/@(\S+)(\s+.*)?$/gim,w;for(;w=x.exec(r);)t7(e,t,4,w)}}function t7(e,t,r,s){if(!s)return;let f=s[1].toLowerCase(),x=Vp[f];if(!x||!(x.kind&r))return;let w=s[2],A=tF(x,w);A!=="fail"&&e.push({name:f,args:{arguments:A,range:t}})}function tF(e,t){if(!t)return{};if(!e.args)return{};let r=Pp(t).split(/\s+/),s={};for(let f=0;fnew(s7||(s7=lr.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(i7||(i7=lr.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(a7||(a7=lr.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(n7||(n7=lr.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(r7||(r7=lr.getNodeConstructor()))(e,-1,-1)},dc=Zf(1,I2),o7={[163]:function(t,r,s){return G(r,t.left)||G(r,t.right)},[165]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.constraint)||G(r,t.default)||G(r,t.expression)},[300]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.questionToken)||G(r,t.exclamationToken)||G(r,t.equalsToken)||G(r,t.objectAssignmentInitializer)},[301]:function(t,r,s){return G(r,t.expression)},[166]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.dotDotDotToken)||G(r,t.name)||G(r,t.questionToken)||G(r,t.type)||G(r,t.initializer)},[169]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.questionToken)||G(r,t.exclamationToken)||G(r,t.type)||G(r,t.initializer)},[168]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.questionToken)||G(r,t.type)||G(r,t.initializer)},[299]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.questionToken)||G(r,t.exclamationToken)||G(r,t.initializer)},[257]:function(t,r,s){return G(r,t.name)||G(r,t.exclamationToken)||G(r,t.type)||G(r,t.initializer)},[205]:function(t,r,s){return G(r,t.dotDotDotToken)||G(r,t.propertyName)||G(r,t.name)||G(r,t.initializer)},[178]:function(t,r,s){return ze(r,s,t.modifiers)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)},[182]:function(t,r,s){return ze(r,s,t.modifiers)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)},[181]:function(t,r,s){return ze(r,s,t.modifiers)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)},[176]:jE,[177]:jE,[171]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.asteriskToken)||G(r,t.name)||G(r,t.questionToken)||G(r,t.exclamationToken)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[170]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.questionToken)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)},[173]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[174]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[175]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[259]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.asteriskToken)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[215]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.asteriskToken)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.body)},[216]:function(t,r,s){return ze(r,s,t.modifiers)||ze(r,s,t.typeParameters)||ze(r,s,t.parameters)||G(r,t.type)||G(r,t.equalsGreaterThanToken)||G(r,t.body)},[172]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.body)},[180]:function(t,r,s){return G(r,t.typeName)||ze(r,s,t.typeArguments)},[179]:function(t,r,s){return G(r,t.assertsModifier)||G(r,t.parameterName)||G(r,t.type)},[183]:function(t,r,s){return G(r,t.exprName)||ze(r,s,t.typeArguments)},[184]:function(t,r,s){return ze(r,s,t.members)},[185]:function(t,r,s){return G(r,t.elementType)},[186]:function(t,r,s){return ze(r,s,t.elements)},[189]:JE,[190]:JE,[191]:function(t,r,s){return G(r,t.checkType)||G(r,t.extendsType)||G(r,t.trueType)||G(r,t.falseType)},[192]:function(t,r,s){return G(r,t.typeParameter)},[202]:function(t,r,s){return G(r,t.argument)||G(r,t.assertions)||G(r,t.qualifier)||ze(r,s,t.typeArguments)},[298]:function(t,r,s){return G(r,t.assertClause)},[193]:FE,[195]:FE,[196]:function(t,r,s){return G(r,t.objectType)||G(r,t.indexType)},[197]:function(t,r,s){return G(r,t.readonlyToken)||G(r,t.typeParameter)||G(r,t.nameType)||G(r,t.questionToken)||G(r,t.type)||ze(r,s,t.members)},[198]:function(t,r,s){return G(r,t.literal)},[199]:function(t,r,s){return G(r,t.dotDotDotToken)||G(r,t.name)||G(r,t.questionToken)||G(r,t.type)},[203]:BE,[204]:BE,[206]:function(t,r,s){return ze(r,s,t.elements)},[207]:function(t,r,s){return ze(r,s,t.properties)},[208]:function(t,r,s){return G(r,t.expression)||G(r,t.questionDotToken)||G(r,t.name)},[209]:function(t,r,s){return G(r,t.expression)||G(r,t.questionDotToken)||G(r,t.argumentExpression)},[210]:qE,[211]:qE,[212]:function(t,r,s){return G(r,t.tag)||G(r,t.questionDotToken)||ze(r,s,t.typeArguments)||G(r,t.template)},[213]:function(t,r,s){return G(r,t.type)||G(r,t.expression)},[214]:function(t,r,s){return G(r,t.expression)},[217]:function(t,r,s){return G(r,t.expression)},[218]:function(t,r,s){return G(r,t.expression)},[219]:function(t,r,s){return G(r,t.expression)},[221]:function(t,r,s){return G(r,t.operand)},[226]:function(t,r,s){return G(r,t.asteriskToken)||G(r,t.expression)},[220]:function(t,r,s){return G(r,t.expression)},[222]:function(t,r,s){return G(r,t.operand)},[223]:function(t,r,s){return G(r,t.left)||G(r,t.operatorToken)||G(r,t.right)},[231]:function(t,r,s){return G(r,t.expression)||G(r,t.type)},[232]:function(t,r,s){return G(r,t.expression)},[235]:function(t,r,s){return G(r,t.expression)||G(r,t.type)},[233]:function(t,r,s){return G(r,t.name)},[224]:function(t,r,s){return G(r,t.condition)||G(r,t.questionToken)||G(r,t.whenTrue)||G(r,t.colonToken)||G(r,t.whenFalse)},[227]:function(t,r,s){return G(r,t.expression)},[238]:UE,[265]:UE,[308]:function(t,r,s){return ze(r,s,t.statements)||G(r,t.endOfFileToken)},[240]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.declarationList)},[258]:function(t,r,s){return ze(r,s,t.declarations)},[241]:function(t,r,s){return G(r,t.expression)},[242]:function(t,r,s){return G(r,t.expression)||G(r,t.thenStatement)||G(r,t.elseStatement)},[243]:function(t,r,s){return G(r,t.statement)||G(r,t.expression)},[244]:function(t,r,s){return G(r,t.expression)||G(r,t.statement)},[245]:function(t,r,s){return G(r,t.initializer)||G(r,t.condition)||G(r,t.incrementor)||G(r,t.statement)},[246]:function(t,r,s){return G(r,t.initializer)||G(r,t.expression)||G(r,t.statement)},[247]:function(t,r,s){return G(r,t.awaitModifier)||G(r,t.initializer)||G(r,t.expression)||G(r,t.statement)},[248]:zE,[249]:zE,[250]:function(t,r,s){return G(r,t.expression)},[251]:function(t,r,s){return G(r,t.expression)||G(r,t.statement)},[252]:function(t,r,s){return G(r,t.expression)||G(r,t.caseBlock)},[266]:function(t,r,s){return ze(r,s,t.clauses)},[292]:function(t,r,s){return G(r,t.expression)||ze(r,s,t.statements)},[293]:function(t,r,s){return ze(r,s,t.statements)},[253]:function(t,r,s){return G(r,t.label)||G(r,t.statement)},[254]:function(t,r,s){return G(r,t.expression)},[255]:function(t,r,s){return G(r,t.tryBlock)||G(r,t.catchClause)||G(r,t.finallyBlock)},[295]:function(t,r,s){return G(r,t.variableDeclaration)||G(r,t.block)},[167]:function(t,r,s){return G(r,t.expression)},[260]:WE,[228]:WE,[261]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.typeParameters)||ze(r,s,t.heritageClauses)||ze(r,s,t.members)},[262]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.typeParameters)||G(r,t.type)},[263]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||ze(r,s,t.members)},[302]:function(t,r,s){return G(r,t.name)||G(r,t.initializer)},[264]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.body)},[268]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)||G(r,t.moduleReference)},[269]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.importClause)||G(r,t.moduleSpecifier)||G(r,t.assertClause)},[270]:function(t,r,s){return G(r,t.name)||G(r,t.namedBindings)},[296]:function(t,r,s){return ze(r,s,t.elements)},[297]:function(t,r,s){return G(r,t.name)||G(r,t.value)},[267]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.name)},[271]:function(t,r,s){return G(r,t.name)},[277]:function(t,r,s){return G(r,t.name)},[272]:VE,[276]:VE,[275]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.exportClause)||G(r,t.moduleSpecifier)||G(r,t.assertClause)},[273]:HE,[278]:HE,[274]:function(t,r,s){return ze(r,s,t.modifiers)||G(r,t.expression)},[225]:function(t,r,s){return G(r,t.head)||ze(r,s,t.templateSpans)},[236]:function(t,r,s){return G(r,t.expression)||G(r,t.literal)},[200]:function(t,r,s){return G(r,t.head)||ze(r,s,t.templateSpans)},[201]:function(t,r,s){return G(r,t.type)||G(r,t.literal)},[164]:function(t,r,s){return G(r,t.expression)},[294]:function(t,r,s){return ze(r,s,t.types)},[230]:function(t,r,s){return G(r,t.expression)||ze(r,s,t.typeArguments)},[280]:function(t,r,s){return G(r,t.expression)},[279]:function(t,r,s){return ze(r,s,t.modifiers)},[357]:function(t,r,s){return ze(r,s,t.elements)},[281]:function(t,r,s){return G(r,t.openingElement)||ze(r,s,t.children)||G(r,t.closingElement)},[285]:function(t,r,s){return G(r,t.openingFragment)||ze(r,s,t.children)||G(r,t.closingFragment)},[282]:GE,[283]:GE,[289]:function(t,r,s){return ze(r,s,t.properties)},[288]:function(t,r,s){return G(r,t.name)||G(r,t.initializer)},[290]:function(t,r,s){return G(r,t.expression)},[291]:function(t,r,s){return G(r,t.dotDotDotToken)||G(r,t.expression)},[284]:function(t,r,s){return G(r,t.tagName)},[187]:Xo,[188]:Xo,[312]:Xo,[318]:Xo,[317]:Xo,[319]:Xo,[321]:Xo,[320]:function(t,r,s){return ze(r,s,t.parameters)||G(r,t.type)},[323]:function(t,r,s){return(typeof t.comment=="string"?void 0:ze(r,s,t.comment))||ze(r,s,t.tags)},[350]:function(t,r,s){return G(r,t.tagName)||G(r,t.name)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[313]:function(t,r,s){return G(r,t.name)},[314]:function(t,r,s){return G(r,t.left)||G(r,t.right)},[344]:$E,[351]:$E,[333]:function(t,r,s){return G(r,t.tagName)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[332]:function(t,r,s){return G(r,t.tagName)||G(r,t.class)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[331]:function(t,r,s){return G(r,t.tagName)||G(r,t.class)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[348]:function(t,r,s){return G(r,t.tagName)||G(r,t.constraint)||ze(r,s,t.typeParameters)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[349]:function(t,r,s){return G(r,t.tagName)||(t.typeExpression&&t.typeExpression.kind===312?G(r,t.typeExpression)||G(r,t.fullName)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment)):G(r,t.fullName)||G(r,t.typeExpression)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment)))},[341]:function(t,r,s){return G(r,t.tagName)||G(r,t.fullName)||G(r,t.typeExpression)||(typeof t.comment=="string"?void 0:ze(r,s,t.comment))},[345]:Yo,[347]:Yo,[346]:Yo,[343]:Yo,[353]:Yo,[352]:Yo,[342]:Yo,[326]:function(t,r,s){return c(t.typeParameters,r)||c(t.parameters,r)||G(r,t.type)},[327]:P2,[328]:P2,[329]:P2,[325]:function(t,r,s){return c(t.jsDocPropertyTags,r)},[330]:Gs,[335]:Gs,[336]:Gs,[337]:Gs,[338]:Gs,[339]:Gs,[334]:Gs,[340]:Gs,[356]:GJ},(e=>{var t=Po(99,!0),r=20480,s,f,x,w,A;function g(u){return oi++,u}var B={createBaseSourceFileNode:u=>g(new A(u,0,0)),createBaseIdentifierNode:u=>g(new x(u,0,0)),createBasePrivateIdentifierNode:u=>g(new w(u,0,0)),createBaseTokenNode:u=>g(new f(u,0,0)),createBaseNode:u=>g(new s(u,0,0))},N=Zf(11,B),{createNodeArray:X,createNumericLiteral:F,createStringLiteral:$,createLiteralLikeNode:ae,createIdentifier:Te,createPrivateIdentifier:Se,createToken:Ye,createArrayLiteralExpression:Ne,createObjectLiteralExpression:oe,createPropertyAccessExpression:Ve,createPropertyAccessChain:pt,createElementAccessExpression:Gt,createElementAccessChain:Nt,createCallExpression:Xt,createCallChain:er,createNewExpression:Tn,createParenthesizedExpression:Hr,createBlock:Gi,createVariableStatement:pn,createExpressionStatement:fn,createIfStatement:Ut,createWhileStatement:kn,createForStatement:an,createForOfStatement:mr,createVariableDeclaration:$i,createVariableDeclarationList:dn}=N,Ur,Gr,_r,Sn,In,pr,Zt,Or,Nn,ar,oi,cr,$r,hr,On,nr,br=!0,Kr=!1;function wa(u,b,O,j){let z=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1,re=arguments.length>5?arguments[5]:void 0,Ee=arguments.length>6?arguments[6]:void 0;var qe;if(re=Nx(u,re),re===6){let $e=Ki(u,b,O,j,z);return convertToObjectWorker($e,(qe=$e.statements[0])==null?void 0:qe.expression,$e.parseDiagnostics,!1,void 0,void 0),$e.referencedFiles=Bt,$e.typeReferenceDirectives=Bt,$e.libReferenceDirectives=Bt,$e.amdDependencies=Bt,$e.hasNoDefaultLib=!1,$e.pragmas=V1,$e}Mn(u,b,O,j,re);let We=Ca(O,z,re,Ee||XE);return _i(),We}e.parseSourceFile=wa;function $n(u,b){Mn("",u,b,void 0,1),_e();let O=Ys(!0),j=T()===1&&!Zt.length;return _i(),j?O:void 0}e.parseIsolatedEntityName=$n;function Ki(u,b){let O=arguments.length>2&&arguments[2]!==void 0?arguments[2]:2,j=arguments.length>3?arguments[3]:void 0,z=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;Mn(u,b,O,j,6),Gr=nr,_e();let re=L(),Ee,qe;if(T()===1)Ee=Er([],re,re),qe=sn();else{let lt;for(;T()!==1;){let At;switch(T()){case 22:At=ah();break;case 110:case 95:case 104:At=sn();break;case 40:wt(()=>_e()===8&&_e()!==58)?At=qm():At=Xu();break;case 8:case 10:if(wt(()=>_e()!==58)){At=Di();break}default:At=Xu();break}lt&&ir(lt)?lt.push(At):lt?lt=[lt,At]:(lt=At,T()!==1&&Dt(ve.Unexpected_token))}let Jt=ir(lt)?Q(Ne(lt),re):Y.checkDefined(lt),Lt=fn(Jt);Q(Lt,re),Ee=Er([Lt],re),qe=ea(1,ve.Unexpected_token)}let We=Kt(u,2,6,!1,Ee,qe,Gr,yn);z&&ft(We),We.nodeCount=oi,We.identifierCount=$r,We.identifiers=cr,We.parseDiagnostics=qs(Zt,We),Or&&(We.jsDocDiagnostics=qs(Or,We));let $e=We;return _i(),$e}e.parseJsonText=Ki;function Mn(u,b,O,j,z){switch(s=lr.getNodeConstructor(),f=lr.getTokenConstructor(),x=lr.getIdentifierConstructor(),w=lr.getPrivateIdentifierConstructor(),A=lr.getSourceFileConstructor(),Ur=Un(u),_r=b,Sn=O,Nn=j,In=z,pr=sv(z),Zt=[],hr=0,cr=new Map,$r=0,oi=0,Gr=0,br=!0,In){case 1:case 2:nr=262144;break;case 6:nr=67371008;break;default:nr=0;break}Kr=!1,t.setText(_r),t.setOnError(U),t.setScriptTarget(Sn),t.setLanguageVariant(pr)}function _i(){t.clearCommentDirectives(),t.setText(""),t.setOnError(void 0),_r=void 0,Sn=void 0,Nn=void 0,In=void 0,pr=void 0,Gr=0,Zt=void 0,Or=void 0,hr=0,cr=void 0,On=void 0,br=!0}function Ca(u,b,O,j){let z=QE(Ur);z&&(nr|=16777216),Gr=nr,_e();let re=Kn(0,on);Y.assert(T()===1);let Ee=He(sn()),qe=Kt(Ur,u,O,z,re,Ee,Gr,j);return ZE(qe,_r),e7(qe,We),qe.commentDirectives=t.getCommentDirectives(),qe.nodeCount=oi,qe.identifierCount=$r,qe.identifiers=cr,qe.parseDiagnostics=qs(Zt,qe),Or&&(qe.jsDocDiagnostics=qs(Or,qe)),b&&ft(qe),qe;function We($e,lt,Jt){Zt.push(Ro(Ur,$e,lt,Jt))}}function St(u,b){return b?He(u):u}let ue=!1;function He(u){Y.assert(!u.jsDoc);let b=qt(I3(u,_r),O=>Vh.parseJSDocComment(u,O.pos,O.end-O.pos));return b.length&&(u.jsDoc=b),ue&&(ue=!1,u.flags|=268435456),u}function _t(u){let b=Nn,O=Sd.createSyntaxCursor(u);Nn={currentNode:lt};let j=[],z=Zt;Zt=[];let re=0,Ee=We(u.statements,0);for(;Ee!==-1;){let Jt=u.statements[re],Lt=u.statements[Ee];jr(j,u.statements,re,Ee),re=$e(u.statements,Ee);let At=he(z,Fn=>Fn.start>=Jt.pos),kr=At>=0?he(z,Fn=>Fn.start>=Lt.pos,At):-1;At>=0&&jr(Zt,z,At,kr>=0?kr:void 0),Rn(()=>{let Fn=nr;for(nr|=32768,t.setTextPos(Lt.pos),_e();T()!==1;){let di=t.getStartPos(),Ii=vc(0,on);if(j.push(Ii),di===t.getStartPos()&&_e(),re>=0){let _n=u.statements[re];if(Ii.end===_n.pos)break;Ii.end>_n.pos&&(re=$e(u.statements,re+1))}}nr=Fn},2),Ee=re>=0?We(u.statements,re):-1}if(re>=0){let Jt=u.statements[re];jr(j,u.statements,re);let Lt=he(z,At=>At.start>=Jt.pos);Lt>=0&&jr(Zt,z,Lt)}return Nn=b,N.updateSourceFile(u,Rt(X(j),u.statements));function qe(Jt){return!(Jt.flags&32768)&&!!(Jt.transformFlags&67108864)}function We(Jt,Lt){for(let At=Lt;At116}function kt(){return T()===79?!0:T()===125&&Yi()||T()===133&&xn()?!1:T()>116}function de(u,b){let O=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return T()===u?(O&&_e(),!0):(b?Dt(b):Dt(ve._0_expected,Br(u)),!1)}let jn=Object.keys(cl).filter(u=>u.length>2);function Zi(u){var b;if(Y8(u)){Z(Ar(_r,u.template.pos),u.template.end,ve.Module_declaration_names_may_only_use_or_quoted_strings);return}let O=yt(u)?qr(u):void 0;if(!O||!vy(O,Sn)){Dt(ve._0_expected,Br(26));return}let j=Ar(_r,u.pos);switch(O){case"const":case"let":case"var":Z(j,u.end,ve.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Pa(ve.Interface_name_cannot_be_0,ve.Interface_must_be_given_a_name,18);return;case"is":Z(j,t.getTextPos(),ve.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Pa(ve.Namespace_name_cannot_be_0,ve.Namespace_must_be_given_a_name,18);return;case"type":Pa(ve.Type_alias_name_cannot_be_0,ve.Type_alias_must_be_given_a_name,63);return}let z=(b=Ep(O,jn,re=>re))!=null?b:e_(O);if(z){Z(j,u.end,ve.Unknown_keyword_or_identifier_Did_you_mean_0,z);return}T()!==0&&Z(j,u.end,ve.Unexpected_keyword_or_identifier)}function Pa(u,b,O){T()===O?Dt(b):Dt(u,t.getTokenValue())}function e_(u){for(let b of jn)if(u.length>b.length+2&&Pn(u,b))return`${b} ${u.slice(b.length)}`}function mc(u,b,O){if(T()===59&&!t.hasPrecedingLineBreak()){Dt(ve.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(T()===20){Dt(ve.Cannot_start_a_function_call_in_a_type_annotation),_e();return}if(b&&!ka()){O?Dt(ve._0_expected,Br(26)):Dt(ve.Expected_for_property_initializer);return}if(!t_()){if(O){Dt(ve._0_expected,Br(26));return}Zi(u)}}function Da(u){return T()===u?(Ge(),!0):(Dt(ve._0_expected,Br(u)),!1)}function Ts(u,b,O,j){if(T()===b){_e();return}let z=Dt(ve._0_expected,Br(b));O&&z&&Rl(z,Ro(Ur,j,1,ve.The_parser_expected_to_find_a_1_to_match_the_0_token_here,Br(u),Br(b)))}function Ot(u){return T()===u?(_e(),!0):!1}function dr(u){if(T()===u)return sn()}function Dd(u){if(T()===u)return Id()}function ea(u,b,O){return dr(u)||Jn(u,!1,b||ve._0_expected,O||Br(u))}function kd(u){return Dd(u)||Jn(u,!1,ve._0_expected,Br(u))}function sn(){let u=L(),b=T();return _e(),Q(Ye(b),u)}function Id(){let u=L(),b=T();return Ge(),Q(Ye(b),u)}function ka(){return T()===26?!0:T()===19||T()===1||t.hasPrecedingLineBreak()}function t_(){return ka()?(T()===26&&_e(),!0):!1}function En(){return t_()||de(26)}function Er(u,b,O,j){let z=X(u,j);return Us(z,b,O!=null?O:t.getStartPos()),z}function Q(u,b,O){return Us(u,b,O!=null?O:t.getStartPos()),nr&&(u.flags|=nr),Kr&&(Kr=!1,u.flags|=131072),u}function Jn(u,b,O,j){b?Pi(t.getStartPos(),0,O,j):O&&Dt(O,j);let z=L(),re=u===79?Te("",void 0):yl(u)?N.createTemplateLiteralLikeNode(u,"","",void 0):u===8?F("",void 0):u===10?$("",void 0):u===279?N.createMissingDeclaration():Ye(u);return Q(re,z)}function Ia(u){let b=cr.get(u);return b===void 0&&cr.set(u,b=u),b}function Ss(u,b,O){if(u){$r++;let qe=L(),We=T(),$e=Ia(t.getTokenValue()),lt=t.hasExtendedUnicodeEscape();return it(),Q(Te($e,We,lt),qe)}if(T()===80)return Dt(O||ve.Private_identifiers_are_not_allowed_outside_class_bodies),Ss(!0);if(T()===0&&t.tryScan(()=>t.reScanInvalidIdentifier()===79))return Ss(!0);$r++;let j=T()===1,z=t.isReservedWord(),re=t.getTokenText(),Ee=z?ve.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:ve.Identifier_expected;return Jn(79,j,b||Ee,re)}function hc(u){return Ss(Tt(),void 0,u)}function wr(u,b){return Ss(kt(),u,b)}function zr(u){return Ss(fr(T()),u)}function xs(){return fr(T())||T()===10||T()===8}function Nd(){return fr(T())||T()===10}function R2(u){if(T()===10||T()===8){let b=Di();return b.text=Ia(b.text),b}return u&&T()===22?j2():T()===80?gc():zr()}function Es(){return R2(!0)}function j2(){let u=L();de(22);let b=It(Sr);return de(23),Q(N.createComputedPropertyName(b),u)}function gc(){let u=L(),b=Se(Ia(t.getTokenValue()));return _e(),Q(b,u)}function Ks(u){return T()===u&&Tr(Od)}function uu(){return _e(),t.hasPrecedingLineBreak()?!1:ta()}function Od(){switch(T()){case 85:return _e()===92;case 93:return _e(),T()===88?wt(Ld):T()===154?wt(J2):r_();case 88:return Ld();case 124:case 137:case 151:return _e(),ta();default:return uu()}}function r_(){return T()===59||T()!==41&&T()!==128&&T()!==18&&ta()}function J2(){return _e(),r_()}function Md(){return Wi(T())&&Tr(Od)}function ta(){return T()===22||T()===18||T()===41||T()===25||xs()}function Ld(){return _e(),T()===84||T()===98||T()===118||T()===59||T()===126&&wt(gh)||T()===132&&wt(yh)}function Xs(u,b){if(mu(u))return!0;switch(u){case 0:case 1:case 3:return!(T()===26&&b)&&vh();case 2:return T()===82||T()===88;case 4:return wt(om);case 5:return wt(Jb)||T()===26&&!b;case 6:return T()===22||xs();case 12:switch(T()){case 22:case 41:case 25:case 24:return!0;default:return xs()}case 18:return xs();case 9:return T()===22||T()===25||xs();case 24:return Nd();case 7:return T()===18?wt(Rd):b?kt()&&!fu():Fu()&&!fu();case 8:return tp();case 10:return T()===27||T()===25||tp();case 19:return T()===101||T()===85||kt();case 15:switch(T()){case 27:case 24:return!0}case 11:return T()===25||La();case 16:return Ec(!1);case 17:return Ec(!0);case 20:case 21:return T()===27||eo();case 22:return Oc();case 23:return fr(T());case 13:return fr(T())||T()===18;case 14:return!0}return Y.fail("Non-exhaustive case in 'isListElement'.")}function Rd(){if(Y.assert(T()===18),_e()===19){let u=_e();return u===27||u===18||u===94||u===117}return!0}function yc(){return _e(),kt()}function pu(){return _e(),fr(T())}function F2(){return _e(),qT(T())}function fu(){return T()===117||T()===94?wt(jd):!1}function jd(){return _e(),La()}function Jd(){return _e(),eo()}function Na(u){if(T()===1)return!0;switch(u){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return T()===19;case 3:return T()===19||T()===82||T()===88;case 7:return T()===18||T()===94||T()===117;case 8:return B2();case 19:return T()===31||T()===20||T()===18||T()===94||T()===117;case 11:return T()===21||T()===26;case 15:case 21:case 10:return T()===23;case 17:case 16:case 18:return T()===21||T()===23;case 20:return T()!==27;case 22:return T()===18||T()===19;case 13:return T()===31||T()===43;case 14:return T()===29&&wt(Xb);default:return!1}}function B2(){return!!(ka()||jm(T())||T()===38)}function du(){for(let u=0;u<25;u++)if(hr&1<=0)}function z2(u){return u===6?ve.An_enum_member_name_must_be_followed_by_a_or:void 0}function ui(){let u=Er([],L());return u.isMissingList=!0,u}function W2(u){return!!u.isMissingList}function Oa(u,b,O,j){if(de(O)){let z=mn(u,b);return de(j),z}return ui()}function Ys(u,b){let O=L(),j=u?zr(b):wr(b);for(;Ot(24)&&T()!==29;)j=Q(N.createQualifiedName(j,bc(u,!1)),O);return j}function Tu(u,b){return Q(N.createQualifiedName(u,b),u.pos)}function bc(u,b){if(t.hasPrecedingLineBreak()&&fr(T())&&wt(Qu))return Jn(79,!0,ve.Identifier_expected);if(T()===80){let O=gc();return b?O:Jn(79,!0,ve.Identifier_expected)}return u?zr():wr()}function Su(u){let b=L(),O=[],j;do j=H2(u),O.push(j);while(j.literal.kind===16);return Er(O,b)}function Wd(u){let b=L();return Q(N.createTemplateExpression(Hd(u),Su(u)),b)}function xu(){let u=L();return Q(N.createTemplateLiteralType(Hd(!1),Vd()),u)}function Vd(){let u=L(),b=[],O;do O=V2(),b.push(O);while(O.literal.kind===16);return Er(b,u)}function V2(){let u=L();return Q(N.createTemplateLiteralTypeSpan(sr(),Eu(!1)),u)}function Eu(u){return T()===19?(Yt(u),Tc()):ea(17,ve._0_expected,Br(19))}function H2(u){let b=L();return Q(N.createTemplateSpan(It(Sr),Eu(u)),b)}function Di(){return n_(T())}function Hd(u){u&&$t();let b=n_(T());return Y.assert(b.kind===15,"Template head has wrong token kind"),b}function Tc(){let u=n_(T());return Y.assert(u.kind===16||u.kind===17,"Template fragment has wrong token kind"),u}function Gd(u){let b=u===14||u===17,O=t.getTokenText();return O.substring(1,O.length-(t.isUnterminated()?0:b?1:2))}function n_(u){let b=L(),O=yl(u)?N.createTemplateLiteralLikeNode(u,t.getTokenValue(),Gd(u),t.getTokenFlags()&2048):u===8?F(t.getTokenValue(),t.getNumericLiteralFlags()):u===10?$(t.getTokenValue(),void 0,t.hasExtendedUnicodeEscape()):ky(u)?ae(u,t.getTokenValue()):Y.fail();return t.hasExtendedUnicodeEscape()&&(O.hasExtendedUnicodeEscape=!0),t.isUnterminated()&&(O.isUnterminated=!0),_e(),Q(O,b)}function wu(){return Ys(!0,ve.Type_expected)}function Qs(){if(!t.hasPrecedingLineBreak()&&Wt()===29)return Oa(20,sr,29,31)}function Sc(){let u=L();return Q(N.createTypeReferenceNode(wu(),Qs()),u)}function Cu(u){switch(u.kind){case 180:return va(u.typeName);case 181:case 182:{let{parameters:b,type:O}=u;return W2(b)||Cu(O)}case 193:return Cu(u.type);default:return!1}}function G2(u){return _e(),Q(N.createTypePredicateNode(void 0,u,sr()),u.pos)}function $d(){let u=L();return _e(),Q(N.createThisTypeNode(),u)}function Kd(){let u=L();return _e(),Q(N.createJSDocAllType(),u)}function $2(){let u=L();return _e(),Q(N.createJSDocNonNullableType(Lu(),!1),u)}function Xd(){let u=L();return _e(),T()===27||T()===19||T()===21||T()===31||T()===63||T()===51?Q(N.createJSDocUnknownType(),u):Q(N.createJSDocNullableType(sr(),!1),u)}function K2(){let u=L(),b=fe();if(wt(qh)){_e();let O=ra(36),j=pi(58,!1);return St(Q(N.createJSDocFunctionType(O,j),u),b)}return Q(N.createTypeReferenceNode(zr(),void 0),u)}function Yd(){let u=L(),b;return(T()===108||T()===103)&&(b=zr(),de(58)),Q(N.createParameterDeclaration(void 0,void 0,b,void 0,xc(),void 0),u)}function xc(){t.setInJSDocType(!0);let u=L();if(Ot(142)){let j=N.createJSDocNamepathType(void 0);e:for(;;)switch(T()){case 19:case 1:case 27:case 5:break e;default:Ge()}return t.setInJSDocType(!1),Q(j,u)}let b=Ot(25),O=Ju();return t.setInJSDocType(!1),b&&(O=Q(N.createJSDocVariadicType(O),u)),T()===63?(_e(),Q(N.createJSDocOptionalType(O),u)):O}function X2(){let u=L();de(112);let b=Ys(!0),O=t.hasPrecedingLineBreak()?void 0:Nc();return Q(N.createTypeQueryNode(b,O),u)}function Qd(){let u=L(),b=ki(!1,!0),O=wr(),j,z;Ot(94)&&(eo()||!La()?j=sr():z=Wu());let re=Ot(63)?sr():void 0,Ee=N.createTypeParameterDeclaration(b,O,j,re);return Ee.expression=z,Q(Ee,u)}function Xn(){if(T()===29)return Oa(19,Qd,29,31)}function Ec(u){return T()===25||tp()||Wi(T())||T()===59||eo(!u)}function Zd(u){let b=no(ve.Private_identifiers_cannot_be_used_as_parameters);return hf(b)===0&&!Ke(u)&&Wi(T())&&_e(),b}function em(){return Tt()||T()===22||T()===18}function Au(u){return Pu(u)}function tm(u){return Pu(u,!1)}function Pu(u){let b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,O=L(),j=fe(),z=u?Xi(()=>ki(!0)):Aa(()=>ki(!0));if(T()===108){let We=N.createParameterDeclaration(z,void 0,Ss(!0),void 0,Ma(),void 0),$e=pa(z);return $e&&ie($e,ve.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),St(Q(We,O),j)}let re=br;br=!1;let Ee=dr(25);if(!b&&!em())return;let qe=St(Q(N.createParameterDeclaration(z,Ee,Zd(z),dr(57),Ma(),Ra()),O),j);return br=re,qe}function pi(u,b){if(rm(u,b))return gr(Ju)}function rm(u,b){return u===38?(de(u),!0):Ot(58)?!0:b&&T()===38?(Dt(ve._0_expected,Br(58)),_e(),!0):!1}function wc(u,b){let O=Yi(),j=xn();Le(!!(u&1)),ot(!!(u&2));let z=u&32?mn(17,Yd):mn(16,()=>b?Au(j):tm(j));return Le(O),ot(j),z}function ra(u){if(!de(20))return ui();let b=wc(u,!0);return de(21),b}function i_(){Ot(27)||En()}function nm(u){let b=L(),O=fe();u===177&&de(103);let j=Xn(),z=ra(4),re=pi(58,!0);i_();let Ee=u===176?N.createCallSignature(j,z,re):N.createConstructSignature(j,z,re);return St(Q(Ee,b),O)}function im(){return T()===22&&wt(Zs)}function Zs(){if(_e(),T()===25||T()===23)return!0;if(Wi(T())){if(_e(),kt())return!0}else if(kt())_e();else return!1;return T()===58||T()===27?!0:T()!==57?!1:(_e(),T()===58||T()===27||T()===23)}function am(u,b,O){let j=Oa(16,()=>Au(!1),22,23),z=Ma();i_();let re=N.createIndexSignature(O,j,z);return St(Q(re,u),b)}function sm(u,b,O){let j=Es(),z=dr(57),re;if(T()===20||T()===29){let Ee=Xn(),qe=ra(4),We=pi(58,!0);re=N.createMethodSignature(O,j,z,Ee,qe,We)}else{let Ee=Ma();re=N.createPropertySignature(O,j,z,Ee),T()===63&&(re.initializer=Ra())}return i_(),St(Q(re,u),b)}function om(){if(T()===20||T()===29||T()===137||T()===151)return!0;let u=!1;for(;Wi(T());)u=!0,_e();return T()===22?!0:(xs()&&(u=!0,_e()),u?T()===20||T()===29||T()===57||T()===58||T()===27||ka():!1)}function Du(){if(T()===20||T()===29)return nm(176);if(T()===103&&wt(a_))return nm(177);let u=L(),b=fe(),O=ki(!1);return Ks(137)?Fa(u,b,O,174,4):Ks(151)?Fa(u,b,O,175,4):im()?am(u,b,O):sm(u,b,O)}function a_(){return _e(),T()===20||T()===29}function Y2(){return _e()===24}function ku(){switch(_e()){case 20:case 29:case 24:return!0}return!1}function Q2(){let u=L();return Q(N.createTypeLiteralNode(Iu()),u)}function Iu(){let u;return de(18)?(u=Kn(4,Du),de(19)):u=ui(),u}function Z2(){return _e(),T()===39||T()===40?_e()===146:(T()===146&&_e(),T()===22&&yc()&&_e()===101)}function _m(){let u=L(),b=zr();de(101);let O=sr();return Q(N.createTypeParameterDeclaration(void 0,b,O,void 0),u)}function eb(){let u=L();de(18);let b;(T()===146||T()===39||T()===40)&&(b=sn(),b.kind!==146&&de(146)),de(22);let O=_m(),j=Ot(128)?sr():void 0;de(23);let z;(T()===57||T()===39||T()===40)&&(z=sn(),z.kind!==57&&de(57));let re=Ma();En();let Ee=Kn(4,Du);return de(19),Q(N.createMappedTypeNode(b,O,j,z,re,Ee),u)}function Nu(){let u=L();if(Ot(25))return Q(N.createRestTypeNode(sr()),u);let b=sr();if(uE(b)&&b.pos===b.type.pos){let O=N.createOptionalTypeNode(b.type);return Rt(O,b),O.flags=b.flags,O}return b}function cm(){return _e()===58||T()===57&&_e()===58}function lm(){return T()===25?fr(_e())&&cm():fr(T())&&cm()}function tb(){if(wt(lm)){let u=L(),b=fe(),O=dr(25),j=zr(),z=dr(57);de(58);let re=Nu(),Ee=N.createNamedTupleMember(O,j,z,re);return St(Q(Ee,u),b)}return Nu()}function um(){let u=L();return Q(N.createTupleTypeNode(Oa(21,tb,22,23)),u)}function rb(){let u=L();de(20);let b=sr();return de(21),Q(N.createParenthesizedType(b),u)}function pm(){let u;if(T()===126){let b=L();_e();let O=Q(Ye(126),b);u=Er([O],b)}return u}function fm(){let u=L(),b=fe(),O=pm(),j=Ot(103);Y.assert(!O||j,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");let z=Xn(),re=ra(4),Ee=pi(38,!1),qe=j?N.createConstructorTypeNode(O,z,re,Ee):N.createFunctionTypeNode(z,re,Ee);return St(Q(qe,u),b)}function Ou(){let u=sn();return T()===24?void 0:u}function dm(u){let b=L();u&&_e();let O=T()===110||T()===95||T()===104?sn():n_(T());return u&&(O=Q(N.createPrefixUnaryExpression(40,O),b)),Q(N.createLiteralTypeNode(O),b)}function mm(){return _e(),T()===100}function nb(){let u=L(),b=t.getTokenPos();de(18);let O=t.hasPrecedingLineBreak();de(130),de(58);let j=_p(!0);if(!de(19)){let z=Cn(Zt);z&&z.code===ve._0_expected.code&&Rl(z,Ro(Ur,b,1,ve.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return Q(N.createImportTypeAssertionContainer(j,O),u)}function Mu(){Gr|=2097152;let u=L(),b=Ot(112);de(100),de(20);let O=sr(),j;Ot(27)&&(j=nb()),de(21);let z=Ot(24)?wu():void 0,re=Qs();return Q(N.createImportTypeNode(O,j,z,re,b),u)}function hm(){return _e(),T()===8||T()===9}function Lu(){switch(T()){case 131:case 157:case 152:case 148:case 160:case 153:case 134:case 155:case 144:case 149:return Tr(Ou)||Sc();case 66:t.reScanAsteriskEqualsToken();case 41:return Kd();case 60:t.reScanQuestionToken();case 57:return Xd();case 98:return K2();case 53:return $2();case 14:case 10:case 8:case 9:case 110:case 95:case 104:return dm();case 40:return wt(hm)?dm(!0):Sc();case 114:return sn();case 108:{let u=$d();return T()===140&&!t.hasPrecedingLineBreak()?G2(u):u}case 112:return wt(mm)?Mu():X2();case 18:return wt(Z2)?eb():Q2();case 22:return um();case 20:return rb();case 100:return Mu();case 129:return wt(Qu)?Cm():Sc();case 15:return xu();default:return Sc()}}function eo(u){switch(T()){case 131:case 157:case 152:case 148:case 160:case 134:case 146:case 153:case 156:case 114:case 155:case 104:case 108:case 112:case 144:case 18:case 22:case 29:case 51:case 50:case 103:case 10:case 8:case 9:case 110:case 95:case 149:case 41:case 57:case 53:case 25:case 138:case 100:case 129:case 14:case 15:return!0;case 98:return!u;case 40:return!u&&wt(hm);case 20:return!u&&wt(gm);default:return kt()}}function gm(){return _e(),T()===21||Ec(!1)||eo()}function ym(){let u=L(),b=Lu();for(;!t.hasPrecedingLineBreak();)switch(T()){case 53:_e(),b=Q(N.createJSDocNonNullableType(b,!0),u);break;case 57:if(wt(Jd))return b;_e(),b=Q(N.createJSDocNullableType(b,!0),u);break;case 22:if(de(22),eo()){let O=sr();de(23),b=Q(N.createIndexedAccessTypeNode(b,O),u)}else de(23),b=Q(N.createArrayTypeNode(b),u);break;default:return b}return b}function vm(u){let b=L();return de(u),Q(N.createTypeOperatorNode(u,Tm()),b)}function ib(){if(Ot(94)){let u=Ln(sr);if(bs()||T()!==57)return u}}function bm(){let u=L(),b=wr(),O=Tr(ib),j=N.createTypeParameterDeclaration(void 0,b,O);return Q(j,u)}function ab(){let u=L();return de(138),Q(N.createInferTypeNode(bm()),u)}function Tm(){let u=T();switch(u){case 141:case 156:case 146:return vm(u);case 138:return ab()}return gr(ym)}function Cc(u){if(ju()){let b=fm(),O;return $l(b)?O=u?ve.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:ve.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:O=u?ve.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:ve.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,ie(b,O),b}}function Sm(u,b,O){let j=L(),z=u===51,re=Ot(u),Ee=re&&Cc(z)||b();if(T()===u||re){let qe=[Ee];for(;Ot(u);)qe.push(Cc(z)||b());Ee=Q(O(Er(qe,j)),j)}return Ee}function Ru(){return Sm(50,Tm,N.createIntersectionTypeNode)}function sb(){return Sm(51,Ru,N.createUnionTypeNode)}function xm(){return _e(),T()===103}function ju(){return T()===29||T()===20&&wt(Em)?!0:T()===103||T()===126&&wt(xm)}function ob(){if(Wi(T())&&ki(!1),kt()||T()===108)return _e(),!0;if(T()===22||T()===18){let u=Zt.length;return no(),u===Zt.length}return!1}function Em(){return _e(),!!(T()===21||T()===25||ob()&&(T()===58||T()===27||T()===57||T()===63||T()===21&&(_e(),T()===38)))}function Ju(){let u=L(),b=kt()&&Tr(wm),O=sr();return b?Q(N.createTypePredicateNode(void 0,b,O),u):O}function wm(){let u=wr();if(T()===140&&!t.hasPrecedingLineBreak())return _e(),u}function Cm(){let u=L(),b=ea(129),O=T()===108?$d():wr(),j=Ot(140)?sr():void 0;return Q(N.createTypePredicateNode(b,O,j),u)}function sr(){if(nr&40960)return Ct(40960,sr);if(ju())return fm();let u=L(),b=sb();if(!bs()&&!t.hasPrecedingLineBreak()&&Ot(94)){let O=Ln(sr);de(57);let j=gr(sr);de(58);let z=gr(sr);return Q(N.createConditionalTypeNode(b,O,j,z),u)}return b}function Ma(){return Ot(58)?sr():void 0}function Fu(){switch(T()){case 108:case 106:case 104:case 110:case 95:case 8:case 9:case 10:case 14:case 15:case 20:case 22:case 18:case 98:case 84:case 103:case 43:case 68:case 79:return!0;case 100:return wt(ku);default:return kt()}}function La(){if(Fu())return!0;switch(T()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 45:case 46:case 29:case 133:case 125:case 80:case 59:return!0;default:return Jm()?!0:kt()}}function Am(){return T()!==18&&T()!==98&&T()!==84&&T()!==59&&La()}function Sr(){let u=Ai();u&&Re(!1);let b=L(),O=Yr(!0),j;for(;j=dr(27);)O=Uu(O,j,Yr(!0),b);return u&&Re(!0),O}function Ra(){return Ot(63)?Yr(!0):void 0}function Yr(u){if(Pm())return Dm();let b=cb(u)||Mm(u);if(b)return b;let O=L(),j=s_(0);return j.kind===79&&T()===38?km(O,j,u,void 0):Do(j)&&G_(bt())?Uu(j,sn(),Yr(u),O):lb(j,O,u)}function Pm(){return T()===125?Yi()?!0:wt(Zu):!1}function _b(){return _e(),!t.hasPrecedingLineBreak()&&kt()}function Dm(){let u=L();return _e(),!t.hasPrecedingLineBreak()&&(T()===41||La())?Q(N.createYieldExpression(dr(41),Yr(!0)),u):Q(N.createYieldExpression(void 0,void 0),u)}function km(u,b,O,j){Y.assert(T()===38,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");let z=N.createParameterDeclaration(void 0,void 0,b,void 0,void 0,void 0);Q(z,b.pos);let re=Er([z],z.pos,z.end),Ee=ea(38),qe=Bu(!!j,O),We=N.createArrowFunction(j,void 0,re,void 0,Ee,qe);return He(Q(We,u))}function cb(u){let b=Im();if(b!==0)return b===1?Rm(!0,!0):Tr(()=>Om(u))}function Im(){return T()===20||T()===29||T()===132?wt(Nm):T()===38?1:0}function Nm(){if(T()===132&&(_e(),t.hasPrecedingLineBreak()||T()!==20&&T()!==29))return 0;let u=T(),b=_e();if(u===20){if(b===21)switch(_e()){case 38:case 58:case 18:return 1;default:return 0}if(b===22||b===18)return 2;if(b===25)return 1;if(Wi(b)&&b!==132&&wt(yc))return _e()===128?0:1;if(!kt()&&b!==108)return 0;switch(_e()){case 58:return 1;case 57:return _e(),T()===58||T()===27||T()===63||T()===21?1:0;case 27:case 63:case 21:return 2}return 0}else return Y.assert(u===29),!kt()&&T()!==85?0:pr===1?wt(()=>{Ot(85);let j=_e();if(j===94)switch(_e()){case 63:case 31:case 43:return!1;default:return!0}else if(j===27||j===63)return!0;return!1})?1:0:2}function Om(u){let b=t.getTokenPos();if(On!=null&&On.has(b))return;let O=Rm(!1,u);return O||(On||(On=new Set)).add(b),O}function Mm(u){if(T()===132&&wt(Lm)===1){let b=L(),O=sp(),j=s_(0);return km(b,j,u,O)}}function Lm(){if(T()===132){if(_e(),t.hasPrecedingLineBreak()||T()===38)return 0;let u=s_(0);if(!t.hasPrecedingLineBreak()&&u.kind===79&&T()===38)return 1}return 0}function Rm(u,b){let O=L(),j=fe(),z=sp(),re=Ke(z,Ul)?2:0,Ee=Xn(),qe;if(de(20)){if(u)qe=wc(re,u);else{let di=wc(re,u);if(!di)return;qe=di}if(!de(21)&&!u)return}else{if(!u)return;qe=ui()}let We=T()===58,$e=pi(58,!1);if($e&&!u&&Cu($e))return;let lt=$e;for(;(lt==null?void 0:lt.kind)===193;)lt=lt.type;let Jt=lt&&dd(lt);if(!u&&T()!==38&&(Jt||T()!==18))return;let Lt=T(),At=ea(38),kr=Lt===38||Lt===18?Bu(Ke(z,Ul),b):wr();if(!b&&We&&T()!==58)return;let Fn=N.createArrowFunction(z,Ee,qe,$e,At,kr);return St(Q(Fn,O),j)}function Bu(u,b){if(T()===18)return Dc(u?2:0);if(T()!==26&&T()!==98&&T()!==84&&vh()&&!Am())return Dc(16|(u?2:0));let O=br;br=!1;let j=u?Xi(()=>Yr(b)):Aa(()=>Yr(b));return br=O,j}function lb(u,b,O){let j=dr(57);if(!j)return u;let z;return Q(N.createConditionalExpression(u,j,Ct(r,()=>Yr(!1)),z=ea(58),xl(z)?Yr(O):Jn(79,!1,ve._0_expected,Br(58))),b)}function s_(u){let b=L(),O=Wu();return qu(u,O,b)}function jm(u){return u===101||u===162}function qu(u,b,O){for(;;){bt();let j=Dl(T());if(!(T()===42?j>=u:j>u)||T()===101&&Qi())break;if(T()===128||T()===150){if(t.hasPrecedingLineBreak())break;{let re=T();_e(),b=re===150?Fm(b,sr()):Bm(b,sr())}}else b=Uu(b,sn(),s_(j),O)}return b}function Jm(){return Qi()&&T()===101?!1:Dl(T())>0}function Fm(u,b){return Q(N.createSatisfiesExpression(u,b),u.pos)}function Uu(u,b,O,j){return Q(N.createBinaryExpression(u,b,O),j)}function Bm(u,b){return Q(N.createAsExpression(u,b),u.pos)}function qm(){let u=L();return Q(N.createPrefixUnaryExpression(T(),mt(na)),u)}function Um(){let u=L();return Q(N.createDeleteExpression(mt(na)),u)}function ub(){let u=L();return Q(N.createTypeOfExpression(mt(na)),u)}function zm(){let u=L();return Q(N.createVoidExpression(mt(na)),u)}function pb(){return T()===133?xn()?!0:wt(Zu):!1}function zu(){let u=L();return Q(N.createAwaitExpression(mt(na)),u)}function Wu(){if(Wm()){let O=L(),j=Vm();return T()===42?qu(Dl(T()),j,O):j}let u=T(),b=na();if(T()===42){let O=Ar(_r,b.pos),{end:j}=b;b.kind===213?Z(O,j,ve.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):Z(O,j,ve.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,Br(u))}return b}function na(){switch(T()){case 39:case 40:case 54:case 53:return qm();case 89:return Um();case 112:return ub();case 114:return zm();case 29:return pr===1?o_(!0):Zm();case 133:if(pb())return zu();default:return Vm()}}function Wm(){switch(T()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 133:return!1;case 29:if(pr!==1)return!1;default:return!0}}function Vm(){if(T()===45||T()===46){let b=L();return Q(N.createPrefixUnaryExpression(T(),mt(to)),b)}else if(pr===1&&T()===29&&wt(F2))return o_(!0);let u=to();if(Y.assert(Do(u)),(T()===45||T()===46)&&!t.hasPrecedingLineBreak()){let b=T();return _e(),Q(N.createPostfixUnaryExpression(u,b),u.pos)}return u}function to(){let u=L(),b;return T()===100?wt(a_)?(Gr|=2097152,b=sn()):wt(Y2)?(_e(),_e(),b=Q(N.createMetaProperty(100,zr()),u),Gr|=4194304):b=Hm():b=T()===106?Vu():Hm(),$u(u,b)}function Hm(){let u=L(),b=Ku();return Ja(u,b,!0)}function Vu(){let u=L(),b=sn();if(T()===29){let O=L(),j=Tr(Pc);j!==void 0&&(Z(O,L(),ve.super_may_not_use_type_arguments),__()||(b=N.createExpressionWithTypeArguments(b,j)))}return T()===20||T()===24||T()===22?b:(ea(24,ve.super_must_be_followed_by_an_argument_list_or_member_access),Q(Ve(b,bc(!0,!0)),u))}function o_(u,b,O){let j=L(),z=Km(u),re;if(z.kind===283){let Ee=$m(z),qe,We=Ee[Ee.length-1];if((We==null?void 0:We.kind)===281&&!Hi(We.openingElement.tagName,We.closingElement.tagName)&&Hi(z.tagName,We.closingElement.tagName)){let $e=We.children.end,lt=Q(N.createJsxElement(We.openingElement,We.children,Q(N.createJsxClosingElement(Q(Te(""),$e,$e)),$e,$e)),We.openingElement.pos,$e);Ee=Er([...Ee.slice(0,Ee.length-1),lt],Ee.pos,$e),qe=We.closingElement}else qe=Qm(z,u),Hi(z.tagName,qe.tagName)||(O&&tu(O)&&Hi(qe.tagName,O.tagName)?ie(z.tagName,ve.JSX_element_0_has_no_corresponding_closing_tag,B_(_r,z.tagName)):ie(qe.tagName,ve.Expected_corresponding_JSX_closing_tag_for_0,B_(_r,z.tagName)));re=Q(N.createJsxElement(z,Ee,qe),j)}else z.kind===286?re=Q(N.createJsxFragment(z,$m(z),gb(u)),j):(Y.assert(z.kind===282),re=z);if(u&&T()===29){let Ee=typeof b>"u"?re.pos:b,qe=Tr(()=>o_(!0,Ee));if(qe){let We=Jn(27,!1);return $f(We,qe.pos,0),Z(Ar(_r,Ee),qe.end,ve.JSX_expressions_must_have_one_parent_element),Q(N.createBinaryExpression(re,We,qe),j)}}return re}function fb(){let u=L(),b=N.createJsxText(t.getTokenValue(),ar===12);return ar=t.scanJsxToken(),Q(b,u)}function Gm(u,b){switch(b){case 1:if(u2(u))ie(u,ve.JSX_fragment_has_no_corresponding_closing_tag);else{let O=u.tagName,j=Ar(_r,O.pos);Z(j,O.end,ve.JSX_element_0_has_no_corresponding_closing_tag,B_(_r,u.tagName))}return;case 30:case 7:return;case 11:case 12:return fb();case 18:return Xm(!1);case 29:return o_(!1,void 0,u);default:return Y.assertNever(b)}}function $m(u){let b=[],O=L(),j=hr;for(hr|=1<<14;;){let z=Gm(u,ar=t.reScanJsxToken());if(!z||(b.push(z),tu(u)&&(z==null?void 0:z.kind)===281&&!Hi(z.openingElement.tagName,z.closingElement.tagName)&&Hi(u.tagName,z.closingElement.tagName)))break}return hr=j,Er(b,O)}function db(){let u=L();return Q(N.createJsxAttributes(Kn(13,mb)),u)}function Km(u){let b=L();if(de(29),T()===31)return Lr(),Q(N.createJsxOpeningFragment(),b);let O=Ac(),j=nr&262144?void 0:Nc(),z=db(),re;return T()===31?(Lr(),re=N.createJsxOpeningElement(O,j,z)):(de(43),de(31,void 0,!1)&&(u?_e():Lr()),re=N.createJsxSelfClosingElement(O,j,z)),Q(re,b)}function Ac(){let u=L();Dr();let b=T()===108?sn():zr();for(;Ot(24);)b=Q(Ve(b,bc(!0,!1)),u);return b}function Xm(u){let b=L();if(!de(18))return;let O,j;return T()!==19&&(O=dr(25),j=Sr()),u?de(19):de(19,void 0,!1)&&Lr(),Q(N.createJsxExpression(O,j),b)}function mb(){if(T()===18)return hb();Dr();let u=L();return Q(N.createJsxAttribute(zr(),Ym()),u)}function Ym(){if(T()===63){if(yr()===10)return Di();if(T()===18)return Xm(!0);if(T()===29)return o_(!0);Dt(ve.or_JSX_element_expected)}}function hb(){let u=L();de(18),de(25);let b=Sr();return de(19),Q(N.createJsxSpreadAttribute(b),u)}function Qm(u,b){let O=L();de(30);let j=Ac();return de(31,void 0,!1)&&(b||!Hi(u.tagName,j)?_e():Lr()),Q(N.createJsxClosingElement(j),O)}function gb(u){let b=L();return de(30),de(31,ve.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(u?_e():Lr()),Q(N.createJsxJsxClosingFragment(),b)}function Zm(){Y.assert(pr!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");let u=L();de(29);let b=sr();de(31);let O=na();return Q(N.createTypeAssertion(b,O),u)}function yb(){return _e(),fr(T())||T()===22||__()}function eh(){return T()===28&&wt(yb)}function Hu(u){if(u.flags&32)return!0;if(Uo(u)){let b=u.expression;for(;Uo(b)&&!(b.flags&32);)b=b.expression;if(b.flags&32){for(;Uo(u);)u.flags|=32,u=u.expression;return!0}}return!1}function fi(u,b,O){let j=bc(!0,!0),z=O||Hu(b),re=z?pt(b,O,j):Ve(b,j);if(z&&vn(re.name)&&ie(re.name,ve.An_optional_chain_cannot_contain_private_identifiers),e2(b)&&b.typeArguments){let Ee=b.typeArguments.pos-1,qe=Ar(_r,b.typeArguments.end)+1;Z(Ee,qe,ve.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return Q(re,u)}function ja(u,b,O){let j;if(T()===23)j=Jn(79,!0,ve.An_element_access_expression_should_take_an_argument);else{let re=It(Sr);Ta(re)&&(re.text=Ia(re.text)),j=re}de(23);let z=O||Hu(b)?Nt(b,O,j):Gt(b,j);return Q(z,u)}function Ja(u,b,O){for(;;){let j,z=!1;if(O&&eh()?(j=ea(28),z=fr(T())):z=Ot(24),z){b=fi(u,b,j);continue}if((j||!Ai())&&Ot(22)){b=ja(u,b,j);continue}if(__()){b=!j&&b.kind===230?Gu(u,b.expression,j,b.typeArguments):Gu(u,b,j,void 0);continue}if(!j){if(T()===53&&!t.hasPrecedingLineBreak()){_e(),b=Q(N.createNonNullExpression(b),u);continue}let re=Tr(Pc);if(re){b=Q(N.createExpressionWithTypeArguments(b,re),u);continue}}return b}}function __(){return T()===14||T()===15}function Gu(u,b,O,j){let z=N.createTaggedTemplateExpression(b,j,T()===14?($t(),Di()):Wd(!0));return(O||b.flags&32)&&(z.flags|=32),z.questionDotToken=O,Q(z,u)}function $u(u,b){for(;;){b=Ja(u,b,!0);let O,j=dr(28);if(j&&(O=Tr(Pc),__())){b=Gu(u,b,j,O);continue}if(O||T()===20){!j&&b.kind===230&&(O=b.typeArguments,b=b.expression);let z=th(),re=j||Hu(b)?er(b,j,O,z):Xt(b,O,z);b=Q(re,u);continue}if(j){let z=Jn(79,!1,ve.Identifier_expected);b=Q(pt(b,j,z),u)}break}return b}function th(){de(20);let u=mn(11,ih);return de(21),u}function Pc(){if(nr&262144||Wt()!==29)return;_e();let u=mn(20,sr);if(bt()===31)return _e(),u&&vb()?u:void 0}function vb(){switch(T()){case 20:case 14:case 15:return!0;case 29:case 31:case 39:case 40:return!1}return t.hasPrecedingLineBreak()||Jm()||!La()}function Ku(){switch(T()){case 8:case 9:case 10:case 14:return Di();case 108:case 106:case 104:case 110:case 95:return sn();case 20:return bb();case 22:return ah();case 18:return Xu();case 132:if(!wt(yh))break;return Yu();case 59:return Ub();case 84:return Ih();case 98:return Yu();case 103:return Tb();case 43:case 68:if(jt()===13)return Di();break;case 15:return Wd(!1);case 80:return gc()}return wr(ve.Expression_expected)}function bb(){let u=L(),b=fe();de(20);let O=It(Sr);return de(21),St(Q(Hr(O),u),b)}function rh(){let u=L();de(25);let b=Yr(!0);return Q(N.createSpreadElement(b),u)}function nh(){return T()===25?rh():T()===27?Q(N.createOmittedExpression(),L()):Yr(!0)}function ih(){return Ct(r,nh)}function ah(){let u=L(),b=t.getTokenPos(),O=de(22),j=t.hasPrecedingLineBreak(),z=mn(15,nh);return Ts(22,23,O,b),Q(Ne(z,j),u)}function sh(){let u=L(),b=fe();if(dr(25)){let lt=Yr(!0);return St(Q(N.createSpreadAssignment(lt),u),b)}let O=ki(!0);if(Ks(137))return Fa(u,b,O,174,0);if(Ks(151))return Fa(u,b,O,175,0);let j=dr(41),z=kt(),re=Es(),Ee=dr(57),qe=dr(53);if(j||T()===20||T()===29)return Ah(u,b,O,j,re,Ee,qe);let We;if(z&&T()!==58){let lt=dr(63),Jt=lt?It(()=>Yr(!0)):void 0;We=N.createShorthandPropertyAssignment(re,Jt),We.equalsToken=lt}else{de(58);let lt=It(()=>Yr(!0));We=N.createPropertyAssignment(re,lt)}return We.modifiers=O,We.questionToken=Ee,We.exclamationToken=qe,St(Q(We,u),b)}function Xu(){let u=L(),b=t.getTokenPos(),O=de(18),j=t.hasPrecedingLineBreak(),z=mn(12,sh,!0);return Ts(18,19,O,b),Q(oe(z,j),u)}function Yu(){let u=Ai();Re(!1);let b=L(),O=fe(),j=ki(!1);de(98);let z=dr(41),re=z?1:0,Ee=Ke(j,Ul)?2:0,qe=re&&Ee?vs(ro):re?ys(ro):Ee?Xi(ro):ro(),We=Xn(),$e=ra(re|Ee),lt=pi(58,!1),Jt=Dc(re|Ee);Re(u);let Lt=N.createFunctionExpression(j,z,qe,We,$e,lt,Jt);return St(Q(Lt,b),O)}function ro(){return Tt()?hc():void 0}function Tb(){let u=L();if(de(103),Ot(24)){let re=zr();return Q(N.createMetaProperty(103,re),u)}let b=L(),O=Ja(b,Ku(),!1),j;O.kind===230&&(j=O.typeArguments,O=O.expression),T()===28&&Dt(ve.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,B_(_r,O));let z=T()===20?th():void 0;return Q(Tn(O,j,z),u)}function ws(u,b){let O=L(),j=fe(),z=t.getTokenPos(),re=de(18,b);if(re||u){let Ee=t.hasPrecedingLineBreak(),qe=Kn(1,on);Ts(18,19,re,z);let We=St(Q(Gi(qe,Ee),O),j);return T()===63&&(Dt(ve.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),_e()),We}else{let Ee=ui();return St(Q(Gi(Ee,void 0),O),j)}}function Dc(u,b){let O=Yi();Le(!!(u&1));let j=xn();ot(!!(u&2));let z=br;br=!1;let re=Ai();re&&Re(!1);let Ee=ws(!!(u&16),b);return re&&Re(!0),br=z,Le(O),ot(j),Ee}function oh(){let u=L(),b=fe();return de(26),St(Q(N.createEmptyStatement(),u),b)}function Sb(){let u=L(),b=fe();de(99);let O=t.getTokenPos(),j=de(20),z=It(Sr);Ts(20,21,j,O);let re=on(),Ee=Ot(91)?on():void 0;return St(Q(Ut(z,re,Ee),u),b)}function _h(){let u=L(),b=fe();de(90);let O=on();de(115);let j=t.getTokenPos(),z=de(20),re=It(Sr);return Ts(20,21,z,j),Ot(26),St(Q(N.createDoStatement(O,re),u),b)}function xb(){let u=L(),b=fe();de(115);let O=t.getTokenPos(),j=de(20),z=It(Sr);Ts(20,21,j,O);let re=on();return St(Q(kn(z,re),u),b)}function ch(){let u=L(),b=fe();de(97);let O=dr(133);de(20);let j;T()!==26&&(T()===113||T()===119||T()===85?j=Eh(!0):j=Mr(Sr));let z;if(O?de(162):Ot(162)){let re=It(()=>Yr(!0));de(21),z=mr(O,j,re,on())}else if(Ot(101)){let re=It(Sr);de(21),z=N.createForInStatement(j,re,on())}else{de(26);let re=T()!==26&&T()!==21?It(Sr):void 0;de(26);let Ee=T()!==21?It(Sr):void 0;de(21),z=an(j,re,Ee,on())}return St(Q(z,u),b)}function lh(u){let b=L(),O=fe();de(u===249?81:86);let j=ka()?void 0:wr();En();let z=u===249?N.createBreakStatement(j):N.createContinueStatement(j);return St(Q(z,b),O)}function uh(){let u=L(),b=fe();de(105);let O=ka()?void 0:It(Sr);return En(),St(Q(N.createReturnStatement(O),u),b)}function Eb(){let u=L(),b=fe();de(116);let O=t.getTokenPos(),j=de(20),z=It(Sr);Ts(20,21,j,O);let re=Mt(33554432,on);return St(Q(N.createWithStatement(z,re),u),b)}function wb(){let u=L(),b=fe();de(82);let O=It(Sr);de(58);let j=Kn(3,on);return St(Q(N.createCaseClause(O,j),u),b)}function ph(){let u=L();de(88),de(58);let b=Kn(3,on);return Q(N.createDefaultClause(b),u)}function Cb(){return T()===82?wb():ph()}function fh(){let u=L();de(18);let b=Kn(2,Cb);return de(19),Q(N.createCaseBlock(b),u)}function Ab(){let u=L(),b=fe();de(107),de(20);let O=It(Sr);de(21);let j=fh();return St(Q(N.createSwitchStatement(O,j),u),b)}function dh(){let u=L(),b=fe();de(109);let O=t.hasPrecedingLineBreak()?void 0:It(Sr);return O===void 0&&($r++,O=Q(Te(""),L())),t_()||Zi(O),St(Q(N.createThrowStatement(O),u),b)}function Pb(){let u=L(),b=fe();de(111);let O=ws(!1),j=T()===83?mh():void 0,z;return(!j||T()===96)&&(de(96,ve.catch_or_finally_expected),z=ws(!1)),St(Q(N.createTryStatement(O,j,z),u),b)}function mh(){let u=L();de(83);let b;Ot(20)?(b=Ic(),de(21)):b=void 0;let O=ws(!1);return Q(N.createCatchClause(b,O),u)}function Db(){let u=L(),b=fe();return de(87),En(),St(Q(N.createDebuggerStatement(),u),b)}function hh(){let u=L(),b=fe(),O,j=T()===20,z=It(Sr);return yt(z)&&Ot(58)?O=N.createLabeledStatement(z,on()):(t_()||Zi(z),O=fn(z),j&&(b=!1)),St(Q(O,u),b)}function Qu(){return _e(),fr(T())&&!t.hasPrecedingLineBreak()}function gh(){return _e(),T()===84&&!t.hasPrecedingLineBreak()}function yh(){return _e(),T()===98&&!t.hasPrecedingLineBreak()}function Zu(){return _e(),(fr(T())||T()===8||T()===9||T()===10)&&!t.hasPrecedingLineBreak()}function kb(){for(;;)switch(T()){case 113:case 119:case 85:case 98:case 84:case 92:return!0;case 118:case 154:return _b();case 142:case 143:return Ob();case 126:case 127:case 132:case 136:case 121:case 122:case 123:case 146:if(_e(),t.hasPrecedingLineBreak())return!1;continue;case 159:return _e(),T()===18||T()===79||T()===93;case 100:return _e(),T()===10||T()===41||T()===18||fr(T());case 93:let u=_e();if(u===154&&(u=wt(_e)),u===63||u===41||u===18||u===88||u===128||u===59)return!0;continue;case 124:_e();continue;default:return!1}}function c_(){return wt(kb)}function vh(){switch(T()){case 59:case 26:case 18:case 113:case 119:case 98:case 84:case 92:case 99:case 90:case 115:case 97:case 86:case 81:case 105:case 116:case 107:case 109:case 111:case 87:case 83:case 96:return!0;case 100:return c_()||wt(ku);case 85:case 93:return c_();case 132:case 136:case 118:case 142:case 143:case 154:case 159:return!0;case 127:case 123:case 121:case 122:case 124:case 146:return c_()||!wt(Qu);default:return La()}}function bh(){return _e(),Tt()||T()===18||T()===22}function Ib(){return wt(bh)}function on(){switch(T()){case 26:return oh();case 18:return ws(!1);case 113:return rp(L(),fe(),void 0);case 119:if(Ib())return rp(L(),fe(),void 0);break;case 98:return np(L(),fe(),void 0);case 84:return Nh(L(),fe(),void 0);case 99:return Sb();case 90:return _h();case 115:return xb();case 97:return ch();case 86:return lh(248);case 81:return lh(249);case 105:return uh();case 116:return Eb();case 107:return Ab();case 109:return dh();case 111:case 83:case 96:return Pb();case 87:return Db();case 59:return ep();case 132:case 118:case 154:case 142:case 143:case 136:case 85:case 92:case 93:case 100:case 121:case 122:case 123:case 126:case 127:case 124:case 146:case 159:if(c_())return ep();break}return hh()}function Th(u){return u.kind===136}function ep(){let u=L(),b=fe(),O=ki(!0);if(Ke(O,Th)){let z=Nb(u);if(z)return z;for(let re of O)re.flags|=16777216;return Mt(16777216,()=>l_(u,b,O))}else return l_(u,b,O)}function Nb(u){return Mt(16777216,()=>{let b=mu(hr,u);if(b)return hu(b)})}function l_(u,b,O){switch(T()){case 113:case 119:case 85:return rp(u,b,O);case 98:return np(u,b,O);case 84:return Nh(u,b,O);case 118:return Hb(u,b,O);case 154:return Gb(u,b,O);case 92:return Kb(u,b,O);case 159:case 142:case 143:return Fh(u,b,O);case 100:return Qb(u,b,O);case 93:switch(_e(),T()){case 88:case 63:return _6(u,b,O);case 128:return Yb(u,b,O);default:return o6(u,b,O)}default:if(O){let j=Jn(279,!0,ve.Declaration_expected);return Gf(j,u),j.modifiers=O,j}return}}function Ob(){return _e(),!t.hasPrecedingLineBreak()&&(kt()||T()===10)}function kc(u,b){if(T()!==18){if(u&4){i_();return}if(ka()){En();return}}return Dc(u,b)}function Mb(){let u=L();if(T()===27)return Q(N.createOmittedExpression(),u);let b=dr(25),O=no(),j=Ra();return Q(N.createBindingElement(b,void 0,O,j),u)}function Sh(){let u=L(),b=dr(25),O=Tt(),j=Es(),z;O&&T()!==58?(z=j,j=void 0):(de(58),z=no());let re=Ra();return Q(N.createBindingElement(b,j,z,re),u)}function Lb(){let u=L();de(18);let b=mn(9,Sh);return de(19),Q(N.createObjectBindingPattern(b),u)}function xh(){let u=L();de(22);let b=mn(10,Mb);return de(23),Q(N.createArrayBindingPattern(b),u)}function tp(){return T()===18||T()===22||T()===80||Tt()}function no(u){return T()===22?xh():T()===18?Lb():hc(u)}function Rb(){return Ic(!0)}function Ic(u){let b=L(),O=fe(),j=no(ve.Private_identifiers_are_not_allowed_in_variable_declarations),z;u&&j.kind===79&&T()===53&&!t.hasPrecedingLineBreak()&&(z=sn());let re=Ma(),Ee=jm(T())?void 0:Ra(),qe=$i(j,z,re,Ee);return St(Q(qe,b),O)}function Eh(u){let b=L(),O=0;switch(T()){case 113:break;case 119:O|=1;break;case 85:O|=2;break;default:Y.fail()}_e();let j;if(T()===162&&wt(wh))j=ui();else{let z=Qi();xe(u),j=mn(8,u?Ic:Rb),xe(z)}return Q(dn(j,O),b)}function wh(){return yc()&&_e()===21}function rp(u,b,O){let j=Eh(!1);En();let z=pn(O,j);return St(Q(z,u),b)}function np(u,b,O){let j=xn(),z=Vn(O);de(98);let re=dr(41),Ee=z&1024?ro():hc(),qe=re?1:0,We=z&512?2:0,$e=Xn();z&1&&ot(!0);let lt=ra(qe|We),Jt=pi(58,!1),Lt=kc(qe|We,ve.or_expected);ot(j);let At=N.createFunctionDeclaration(O,re,Ee,$e,lt,Jt,Lt);return St(Q(At,u),b)}function jb(){if(T()===135)return de(135);if(T()===10&&wt(_e)===20)return Tr(()=>{let u=Di();return u.text==="constructor"?u:void 0})}function Ch(u,b,O){return Tr(()=>{if(jb()){let j=Xn(),z=ra(0),re=pi(58,!1),Ee=kc(0,ve.or_expected),qe=N.createConstructorDeclaration(O,z,Ee);return qe.typeParameters=j,qe.type=re,St(Q(qe,u),b)}})}function Ah(u,b,O,j,z,re,Ee,qe){let We=j?1:0,$e=Ke(O,Ul)?2:0,lt=Xn(),Jt=ra(We|$e),Lt=pi(58,!1),At=kc(We|$e,qe),kr=N.createMethodDeclaration(O,j,z,re,lt,Jt,Lt,At);return kr.exclamationToken=Ee,St(Q(kr,u),b)}function ip(u,b,O,j,z){let re=!z&&!t.hasPrecedingLineBreak()?dr(53):void 0,Ee=Ma(),qe=Ct(45056,Ra);mc(j,Ee,qe);let We=N.createPropertyDeclaration(O,j,z||re,Ee,qe);return St(Q(We,u),b)}function Ph(u,b,O){let j=dr(41),z=Es(),re=dr(57);return j||T()===20||T()===29?Ah(u,b,O,j,z,re,void 0,ve.or_expected):ip(u,b,O,z,re)}function Fa(u,b,O,j,z){let re=Es(),Ee=Xn(),qe=ra(0),We=pi(58,!1),$e=kc(z),lt=j===174?N.createGetAccessorDeclaration(O,re,qe,We,$e):N.createSetAccessorDeclaration(O,re,qe,$e);return lt.typeParameters=Ee,ic(lt)&&(lt.type=We),St(Q(lt,u),b)}function Jb(){let u;if(T()===59)return!0;for(;Wi(T());){if(u=T(),VS(u))return!0;_e()}if(T()===41||(xs()&&(u=T(),_e()),T()===22))return!0;if(u!==void 0){if(!ba(u)||u===151||u===137)return!0;switch(T()){case 20:case 29:case 53:case 58:case 63:case 57:return!0;default:return ka()}}return!1}function Fb(u,b,O){ea(124);let j=Dh(),z=St(Q(N.createClassStaticBlockDeclaration(j),u),b);return z.modifiers=O,z}function Dh(){let u=Yi(),b=xn();Le(!1),ot(!0);let O=ws(!1);return Le(u),ot(b),O}function Bb(){if(xn()&&T()===133){let u=L(),b=wr(ve.Expression_expected);_e();let O=Ja(u,b,!0);return $u(u,O)}return to()}function kh(){let u=L();if(!Ot(59))return;let b=ci(Bb);return Q(N.createDecorator(b),u)}function ap(u,b,O){let j=L(),z=T();if(T()===85&&b){if(!Tr(uu))return}else{if(O&&T()===124&&wt(Mc))return;if(u&&T()===124)return;if(!Md())return}return Q(Ye(z),j)}function ki(u,b,O){let j=L(),z,re,Ee,qe=!1,We=!1,$e=!1;if(u&&T()===59)for(;re=kh();)z=tr(z,re);for(;Ee=ap(qe,b,O);)Ee.kind===124&&(qe=!0),z=tr(z,Ee),We=!0;if(We&&u&&T()===59)for(;re=kh();)z=tr(z,re),$e=!0;if($e)for(;Ee=ap(qe,b,O);)Ee.kind===124&&(qe=!0),z=tr(z,Ee);return z&&Er(z,j)}function sp(){let u;if(T()===132){let b=L();_e();let O=Q(Ye(132),b);u=Er([O],b)}return u}function qb(){let u=L();if(T()===26)return _e(),Q(N.createSemicolonClassElement(),u);let b=fe(),O=ki(!0,!0,!0);if(T()===124&&wt(Mc))return Fb(u,b,O);if(Ks(137))return Fa(u,b,O,174,0);if(Ks(151))return Fa(u,b,O,175,0);if(T()===135||T()===10){let j=Ch(u,b,O);if(j)return j}if(im())return am(u,b,O);if(fr(T())||T()===10||T()===8||T()===41||T()===22)if(Ke(O,Th)){for(let z of O)z.flags|=16777216;return Mt(16777216,()=>Ph(u,b,O))}else return Ph(u,b,O);if(O){let j=Jn(79,!0,ve.Declaration_expected);return ip(u,b,O,j,void 0)}return Y.fail("Should not have attempted to parse class member declaration.")}function Ub(){let u=L(),b=fe(),O=ki(!0);if(T()===84)return op(u,b,O,228);let j=Jn(279,!0,ve.Expression_expected);return Gf(j,u),j.modifiers=O,j}function Ih(){return op(L(),fe(),void 0,228)}function Nh(u,b,O){return op(u,b,O,260)}function op(u,b,O,j){let z=xn();de(84);let re=Oh(),Ee=Xn();Ke(O,N8)&&ot(!0);let qe=Mh(),We;de(18)?(We=Vb(),de(19)):We=ui(),ot(z);let $e=j===260?N.createClassDeclaration(O,re,Ee,qe,We):N.createClassExpression(O,re,Ee,qe,We);return St(Q($e,u),b)}function Oh(){return Tt()&&!zb()?Ss(Tt()):void 0}function zb(){return T()===117&&wt(pu)}function Mh(){if(Oc())return Kn(22,Lh)}function Lh(){let u=L(),b=T();Y.assert(b===94||b===117),_e();let O=mn(7,Wb);return Q(N.createHeritageClause(b,O),u)}function Wb(){let u=L(),b=to();if(b.kind===230)return b;let O=Nc();return Q(N.createExpressionWithTypeArguments(b,O),u)}function Nc(){return T()===29?Oa(20,sr,29,31):void 0}function Oc(){return T()===94||T()===117}function Vb(){return Kn(5,qb)}function Hb(u,b,O){de(118);let j=wr(),z=Xn(),re=Mh(),Ee=Iu(),qe=N.createInterfaceDeclaration(O,j,z,re,Ee);return St(Q(qe,u),b)}function Gb(u,b,O){de(154);let j=wr(),z=Xn();de(63);let re=T()===139&&Tr(Ou)||sr();En();let Ee=N.createTypeAliasDeclaration(O,j,z,re);return St(Q(Ee,u),b)}function $b(){let u=L(),b=fe(),O=Es(),j=It(Ra);return St(Q(N.createEnumMember(O,j),u),b)}function Kb(u,b,O){de(92);let j=wr(),z;de(18)?(z=$s(()=>mn(6,$b)),de(19)):z=ui();let re=N.createEnumDeclaration(O,j,z);return St(Q(re,u),b)}function Rh(){let u=L(),b;return de(18)?(b=Kn(1,on),de(19)):b=ui(),Q(N.createModuleBlock(b),u)}function jh(u,b,O,j){let z=j&16,re=wr(),Ee=Ot(24)?jh(L(),!1,void 0,4|z):Rh(),qe=N.createModuleDeclaration(O,re,Ee,j);return St(Q(qe,u),b)}function Jh(u,b,O){let j=0,z;T()===159?(z=wr(),j|=1024):(z=Di(),z.text=Ia(z.text));let re;T()===18?re=Rh():En();let Ee=N.createModuleDeclaration(O,z,re,j);return St(Q(Ee,u),b)}function Fh(u,b,O){let j=0;if(T()===159)return Jh(u,b,O);if(Ot(143))j|=16;else if(de(142),T()===10)return Jh(u,b,O);return jh(u,b,O,j)}function Bh(){return T()===147&&wt(qh)}function qh(){return _e()===20}function Mc(){return _e()===18}function Xb(){return _e()===43}function Yb(u,b,O){de(128),de(143);let j=wr();En();let z=N.createNamespaceExportDeclaration(j);return z.modifiers=O,St(Q(z,u),b)}function Qb(u,b,O){de(100);let j=t.getStartPos(),z;kt()&&(z=wr());let re=!1;if(T()!==158&&(z==null?void 0:z.escapedText)==="type"&&(kt()||Zb())&&(re=!0,z=kt()?wr():void 0),z&&!e6())return t6(u,b,O,z,re);let Ee;(z||T()===41||T()===18)&&(Ee=r6(z,j,re),de(158));let qe=Lc(),We;T()===130&&!t.hasPrecedingLineBreak()&&(We=_p()),En();let $e=N.createImportDeclaration(O,Ee,qe,We);return St(Q($e,u),b)}function Uh(){let u=L(),b=fr(T())?zr():n_(10);de(58);let O=Yr(!0);return Q(N.createAssertEntry(b,O),u)}function _p(u){let b=L();u||de(130);let O=t.getTokenPos();if(de(18)){let j=t.hasPrecedingLineBreak(),z=mn(24,Uh,!0);if(!de(19)){let re=Cn(Zt);re&&re.code===ve._0_expected.code&&Rl(re,Ro(Ur,O,1,ve.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return Q(N.createAssertClause(z,j),b)}else{let j=Er([],L(),void 0,!1);return Q(N.createAssertClause(j,!1),b)}}function Zb(){return T()===41||T()===18}function e6(){return T()===27||T()===158}function t6(u,b,O,j,z){de(63);let re=cp();En();let Ee=N.createImportEqualsDeclaration(O,z,j,re);return St(Q(Ee,u),b)}function r6(u,b,O){let j;return(!u||Ot(27))&&(j=T()===41?Rc():zh(272)),Q(N.createImportClause(O,u,j),b)}function cp(){return Bh()?n6():Ys(!1)}function n6(){let u=L();de(147),de(20);let b=Lc();return de(21),Q(N.createExternalModuleReference(b),u)}function Lc(){if(T()===10){let u=Di();return u.text=Ia(u.text),u}else return Sr()}function Rc(){let u=L();de(41),de(128);let b=wr();return Q(N.createNamespaceImport(b),u)}function zh(u){let b=L(),O=u===272?N.createNamedImports(Oa(23,a6,18,19)):N.createNamedExports(Oa(23,i6,18,19));return Q(O,b)}function i6(){let u=fe();return St(Ba(278),u)}function a6(){return Ba(273)}function Ba(u){let b=L(),O=ba(T())&&!kt(),j=t.getTokenPos(),z=t.getTextPos(),re=!1,Ee,qe=!0,We=zr();if(We.escapedText==="type")if(T()===128){let Jt=zr();if(T()===128){let Lt=zr();fr(T())?(re=!0,Ee=Jt,We=lt(),qe=!1):(Ee=We,We=Lt,qe=!1)}else fr(T())?(Ee=We,qe=!1,We=lt()):(re=!0,We=Jt)}else fr(T())&&(re=!0,We=lt());qe&&T()===128&&(Ee=We,de(128),We=lt()),u===273&&O&&Z(j,z,ve.Identifier_expected);let $e=u===273?N.createImportSpecifier(re,Ee,We):N.createExportSpecifier(re,Ee,We);return Q($e,b);function lt(){return O=ba(T())&&!kt(),j=t.getTokenPos(),z=t.getTextPos(),zr()}}function s6(u){return Q(N.createNamespaceExport(zr()),u)}function o6(u,b,O){let j=xn();ot(!0);let z,re,Ee,qe=Ot(154),We=L();Ot(41)?(Ot(128)&&(z=s6(We)),de(158),re=Lc()):(z=zh(276),(T()===158||T()===10&&!t.hasPrecedingLineBreak())&&(de(158),re=Lc())),re&&T()===130&&!t.hasPrecedingLineBreak()&&(Ee=_p()),En(),ot(j);let $e=N.createExportDeclaration(O,qe,z,re,Ee);return St(Q($e,u),b)}function _6(u,b,O){let j=xn();ot(!0);let z;Ot(63)?z=!0:de(88);let re=Yr(!0);En(),ot(j);let Ee=N.createExportAssignment(O,z,re);return St(Q(Ee,u),b)}let io;(u=>{u[u.SourceElements=0]="SourceElements",u[u.BlockStatements=1]="BlockStatements",u[u.SwitchClauses=2]="SwitchClauses",u[u.SwitchClauseStatements=3]="SwitchClauseStatements",u[u.TypeMembers=4]="TypeMembers",u[u.ClassMembers=5]="ClassMembers",u[u.EnumMembers=6]="EnumMembers",u[u.HeritageClauseElement=7]="HeritageClauseElement",u[u.VariableDeclarations=8]="VariableDeclarations",u[u.ObjectBindingElements=9]="ObjectBindingElements",u[u.ArrayBindingElements=10]="ArrayBindingElements",u[u.ArgumentExpressions=11]="ArgumentExpressions",u[u.ObjectLiteralMembers=12]="ObjectLiteralMembers",u[u.JsxAttributes=13]="JsxAttributes",u[u.JsxChildren=14]="JsxChildren",u[u.ArrayLiteralMembers=15]="ArrayLiteralMembers",u[u.Parameters=16]="Parameters",u[u.JSDocParameters=17]="JSDocParameters",u[u.RestProperties=18]="RestProperties",u[u.TypeParameters=19]="TypeParameters",u[u.TypeArguments=20]="TypeArguments",u[u.TupleElementTypes=21]="TupleElementTypes",u[u.HeritageClauses=22]="HeritageClauses",u[u.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",u[u.AssertEntries=24]="AssertEntries",u[u.Count=25]="Count"})(io||(io={}));let Wh;(u=>{u[u.False=0]="False",u[u.True=1]="True",u[u.Unknown=2]="Unknown"})(Wh||(Wh={}));let Vh;(u=>{function b($e,lt,Jt){Mn("file.js",$e,99,void 0,1),t.setText($e,lt,Jt),ar=t.scan();let Lt=O(),At=Kt("file.js",99,1,!1,[],Ye(1),0,yn),kr=qs(Zt,At);return Or&&(At.jsDocDiagnostics=qs(Or,At)),_i(),Lt?{jsDocTypeExpression:Lt,diagnostics:kr}:void 0}u.parseJSDocTypeExpressionForTests=b;function O($e){let lt=L(),Jt=($e?Ot:de)(18),Lt=Mt(8388608,xc);(!$e||Jt)&&Da(19);let At=N.createJSDocTypeExpression(Lt);return ft(At),Q(At,lt)}u.parseJSDocTypeExpression=O;function j(){let $e=L(),lt=Ot(18),Jt=L(),Lt=Ys(!1);for(;T()===80;)Xr(),Ge(),Lt=Q(N.createJSDocMemberName(Lt,wr()),Jt);lt&&Da(19);let At=N.createJSDocNameReference(Lt);return ft(At),Q(At,$e)}u.parseJSDocNameReference=j;function z($e,lt,Jt){Mn("",$e,99,void 0,1);let Lt=Mt(8388608,()=>We(lt,Jt)),kr=qs(Zt,{languageVariant:0,text:$e});return _i(),Lt?{jsDoc:Lt,diagnostics:kr}:void 0}u.parseIsolatedJSDocComment=z;function re($e,lt,Jt){let Lt=ar,At=Zt.length,kr=Kr,Fn=Mt(8388608,()=>We(lt,Jt));return Sa(Fn,$e),nr&262144&&(Or||(Or=[]),Or.push(...Zt)),ar=Lt,Zt.length=At,Kr=kr,Fn}u.parseJSDocComment=re;let Ee;($e=>{$e[$e.BeginningOfLine=0]="BeginningOfLine",$e[$e.SawAsterisk=1]="SawAsterisk",$e[$e.SavingComments=2]="SavingComments",$e[$e.SavingBackticks=3]="SavingBackticks"})(Ee||(Ee={}));let qe;($e=>{$e[$e.Property=1]="Property",$e[$e.Parameter=2]="Parameter",$e[$e.CallbackParameter=4]="CallbackParameter"})(qe||(qe={}));function We(){let $e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,lt=arguments.length>1?arguments[1]:void 0,Jt=_r,Lt=lt===void 0?Jt.length:$e+lt;if(lt=Lt-$e,Y.assert($e>=0),Y.assert($e<=Lt),Y.assert(Lt<=Jt.length),!LE(Jt,$e))return;let At,kr,Fn,di,Ii,_n=[],qa=[];return t.scanRange($e+3,lt-5,()=>{let se=1,Me,Ce=$e-(Jt.lastIndexOf(` +`,$e)+1)+4;function Ue(vt){Me||(Me=Ce),_n.push(vt),Ce+=vt.length}for(Ge();u_(5););u_(4)&&(se=0,Ce=0);e:for(;;){switch(T()){case 59:se===0||se===1?(lp(_n),Ii||(Ii=L()),za(up(Ce)),se=0,Me=void 0):Ue(t.getTokenText());break;case 4:_n.push(t.getTokenText()),se=0,Ce=0;break;case 41:let vt=t.getTokenText();se===1||se===2?(se=2,Ue(vt)):(se=1,Ce+=vt.length);break;case 5:let Vt=t.getTokenText();se===2?_n.push(Vt):Me!==void 0&&Ce+Vt.length>Me&&_n.push(Vt.slice(Me-Ce)),Ce+=Vt.length;break;case 1:break e;case 18:se=2;let Rr=t.getStartPos(),gn=t.getTextPos()-1,mi=$h(gn);if(mi){di||Hh(_n),qa.push(Q(N.createJSDocText(_n.join("")),di!=null?di:$e,Rr)),qa.push(mi),_n=[],di=t.getTextPos();break}default:se=2,Ue(t.getTokenText());break}Ge()}lp(_n),qa.length&&_n.length&&qa.push(Q(N.createJSDocText(_n.join("")),di!=null?di:$e,Ii)),qa.length&&At&&Y.assertIsDefined(Ii,"having parsed tags implies that the end of the comment span should be set");let Qe=At&&Er(At,kr,Fn);return Q(N.createJSDocComment(qa.length?Er(qa,$e,Ii):_n.length?_n.join(""):void 0,Qe),$e,Lt)});function Hh(se){for(;se.length&&(se[0]===` +`||se[0]==="\r");)se.shift()}function lp(se){for(;se.length&&se[se.length-1].trim()==="";)se.pop()}function Gh(){for(;;){if(Ge(),T()===1)return!0;if(!(T()===5||T()===4))return!1}}function wn(){if(!((T()===5||T()===4)&&wt(Gh)))for(;T()===5||T()===4;)Ge()}function Ua(){if((T()===5||T()===4)&&wt(Gh))return"";let se=t.hasPrecedingLineBreak(),Me=!1,Ce="";for(;se&&T()===41||T()===5||T()===4;)Ce+=t.getTokenText(),T()===4?(se=!0,Me=!0,Ce=""):T()===41&&(se=!1),Ge();return Me?Ce:""}function up(se){Y.assert(T()===59);let Me=t.getTokenPos();Ge();let Ce=ao(void 0),Ue=Ua(),Qe;switch(Ce.escapedText){case"author":Qe=V(Me,Ce,se,Ue);break;case"implements":Qe=et(Me,Ce,se,Ue);break;case"augments":case"extends":Qe=ht(Me,Ce,se,Ue);break;case"class":case"constructor":Qe=Oi(Me,N.createJSDocClassTag,Ce,se,Ue);break;case"public":Qe=Oi(Me,N.createJSDocPublicTag,Ce,se,Ue);break;case"private":Qe=Oi(Me,N.createJSDocPrivateTag,Ce,se,Ue);break;case"protected":Qe=Oi(Me,N.createJSDocProtectedTag,Ce,se,Ue);break;case"readonly":Qe=Oi(Me,N.createJSDocReadonlyTag,Ce,se,Ue);break;case"override":Qe=Oi(Me,N.createJSDocOverrideTag,Ce,se,Ue);break;case"deprecated":ue=!0,Qe=Oi(Me,N.createJSDocDeprecatedTag,Ce,se,Ue);break;case"this":Qe=qB(Me,Ce,se,Ue);break;case"enum":Qe=UB(Me,Ce,se,Ue);break;case"arg":case"argument":case"param":return Xh(Me,Ce,2,se);case"return":case"returns":Qe=o(Me,Ce,se,Ue);break;case"template":Qe=QB(Me,Ce,se,Ue);break;case"type":Qe=l(Me,Ce,se,Ue);break;case"typedef":Qe=zB(Me,Ce,se,Ue);break;case"callback":Qe=VB(Me,Ce,se,Ue);break;case"overload":Qe=HB(Me,Ce,se,Ue);break;case"satisfies":Qe=hn(Me,Ce,se,Ue);break;case"see":Qe=p(Me,Ce,se,Ue);break;case"exception":case"throws":Qe=k(Me,Ce,se,Ue);break;default:Qe=Qt(Me,Ce,se,Ue);break}return Qe}function Qr(se,Me,Ce,Ue){return Ue||(Ce+=Me-se),jc(Ce,Ue.slice(Ce))}function jc(se,Me){let Ce=L(),Ue=[],Qe=[],vt,Vt=0,Rr=!0,gn;function mi(hi){gn||(gn=se),Ue.push(hi),se+=hi.length}Me!==void 0&&(Me!==""&&mi(Me),Vt=1);let Va=T();e:for(;;){switch(Va){case 4:Vt=0,Ue.push(t.getTokenText()),se=0;break;case 59:if(Vt===3||Vt===2&&(!Rr||wt(Cs))){Ue.push(t.getTokenText());break}t.setTextPos(t.getTextPos()-1);case 1:break e;case 5:if(Vt===2||Vt===3)mi(t.getTokenText());else{let so=t.getTokenText();gn!==void 0&&se+so.length>gn&&Ue.push(so.slice(gn-se)),se+=so.length}break;case 18:Vt=2;let hi=t.getStartPos(),pp=t.getTextPos()-1,fp=$h(pp);fp?(Qe.push(Q(N.createJSDocText(Ue.join("")),vt!=null?vt:Ce,hi)),Qe.push(fp),Ue=[],vt=t.getTextPos()):mi(t.getTokenText());break;case 61:Vt===3?Vt=2:Vt=3,mi(t.getTokenText());break;case 41:if(Vt===0){Vt=1,se+=1;break}default:Vt!==3&&(Vt=2),mi(t.getTokenText());break}Rr=T()===5,Va=Ge()}if(Hh(Ue),lp(Ue),Qe.length)return Ue.length&&Qe.push(Q(N.createJSDocText(Ue.join("")),vt!=null?vt:Ce)),Er(Qe,Ce,t.getTextPos());if(Ue.length)return Ue.join("")}function Cs(){let se=Ge();return se===5||se===4}function $h(se){let Me=Tr(Kh);if(!Me)return;Ge(),wn();let Ce=L(),Ue=fr(T())?Ys(!0):void 0;if(Ue)for(;T()===80;)Xr(),Ge(),Ue=Q(N.createJSDocMemberName(Ue,wr()),Ce);let Qe=[];for(;T()!==19&&T()!==4&&T()!==1;)Qe.push(t.getTokenText()),Ge();let vt=Me==="link"?N.createJSDocLink:Me==="linkcode"?N.createJSDocLinkCode:N.createJSDocLinkPlain;return Q(vt(Ue,Qe.join("")),se,t.getTextPos())}function Kh(){if(Ua(),T()===18&&Ge()===59&&fr(Ge())){let se=t.getTokenValue();if(xt(se))return se}}function xt(se){return se==="link"||se==="linkcode"||se==="linkplain"}function Qt(se,Me,Ce,Ue){return Q(N.createJSDocUnknownTag(Me,Qr(se,L(),Ce,Ue)),se)}function za(se){se&&(At?At.push(se):(At=[se],kr=se.pos),Fn=se.end)}function Wa(){return Ua(),T()===18?O():void 0}function c6(){let se=u_(22);se&&wn();let Me=u_(61),Ce=ZB();return Me&&kd(61),se&&(wn(),dr(63)&&Sr(),de(23)),{name:Ce,isBracketed:se}}function Yn(se){switch(se.kind){case 149:return!0;case 185:return Yn(se.elementType);default:return ac(se)&&yt(se.typeName)&&se.typeName.escapedText==="Object"&&!se.typeArguments}}function Xh(se,Me,Ce,Ue){let Qe=Wa(),vt=!Qe;Ua();let{name:Vt,isBracketed:Rr}=c6(),gn=Ua();vt&&!wt(Kh)&&(Qe=Wa());let mi=Qr(se,L(),Ue,gn),Va=Ce!==4&&n(Qe,Vt,Ce,Ue);Va&&(Qe=Va,vt=!0);let hi=Ce===1?N.createJSDocPropertyTag(Me,Vt,Rr,Qe,vt,mi):N.createJSDocParameterTag(Me,Vt,Rr,Qe,vt,mi);return Q(hi,se)}function n(se,Me,Ce,Ue){if(se&&Yn(se.type)){let Qe=L(),vt,Vt;for(;vt=Tr(()=>u6(Ce,Ue,Me));)(vt.kind===344||vt.kind===351)&&(Vt=tr(Vt,vt));if(Vt){let Rr=Q(N.createJSDocTypeLiteral(Vt,se.type.kind===185),Qe);return Q(N.createJSDocTypeExpression(Rr),Qe)}}}function o(se,Me,Ce,Ue){Ke(At,b2)&&Z(Me.pos,t.getTokenPos(),ve._0_tag_already_specified,Me.escapedText);let Qe=Wa();return Q(N.createJSDocReturnTag(Me,Qe,Qr(se,L(),Ce,Ue)),se)}function l(se,Me,Ce,Ue){Ke(At,au)&&Z(Me.pos,t.getTokenPos(),ve._0_tag_already_specified,Me.escapedText);let Qe=O(!0),vt=Ce!==void 0&&Ue!==void 0?Qr(se,L(),Ce,Ue):void 0;return Q(N.createJSDocTypeTag(Me,Qe,vt),se)}function p(se,Me,Ce,Ue){let vt=T()===22||wt(()=>Ge()===59&&fr(Ge())&&xt(t.getTokenValue()))?void 0:j(),Vt=Ce!==void 0&&Ue!==void 0?Qr(se,L(),Ce,Ue):void 0;return Q(N.createJSDocSeeTag(Me,vt,Vt),se)}function k(se,Me,Ce,Ue){let Qe=Wa(),vt=Qr(se,L(),Ce,Ue);return Q(N.createJSDocThrowsTag(Me,Qe,vt),se)}function V(se,Me,Ce,Ue){let Qe=L(),vt=we(),Vt=t.getStartPos(),Rr=Qr(se,Vt,Ce,Ue);Rr||(Vt=t.getStartPos());let gn=typeof Rr!="string"?Er(Ft([Q(vt,Qe,Vt)],Rr),Qe):vt.text+Rr;return Q(N.createJSDocAuthorTag(Me,gn),se)}function we(){let se=[],Me=!1,Ce=t.getToken();for(;Ce!==1&&Ce!==4;){if(Ce===29)Me=!0;else{if(Ce===59&&!Me)break;if(Ce===31&&Me){se.push(t.getTokenText()),t.setTextPos(t.getTokenPos()+1);break}}se.push(t.getTokenText()),Ce=Ge()}return N.createJSDocText(se.join(""))}function et(se,Me,Ce,Ue){let Qe=Ni();return Q(N.createJSDocImplementsTag(Me,Qe,Qr(se,L(),Ce,Ue)),se)}function ht(se,Me,Ce,Ue){let Qe=Ni();return Q(N.createJSDocAugmentsTag(Me,Qe,Qr(se,L(),Ce,Ue)),se)}function hn(se,Me,Ce,Ue){let Qe=O(!1),vt=Ce!==void 0&&Ue!==void 0?Qr(se,L(),Ce,Ue):void 0;return Q(N.createJSDocSatisfiesTag(Me,Qe,vt),se)}function Ni(){let se=Ot(18),Me=L(),Ce=ia(),Ue=Nc(),Qe=N.createExpressionWithTypeArguments(Ce,Ue),vt=Q(Qe,Me);return se&&de(19),vt}function ia(){let se=L(),Me=ao();for(;Ot(24);){let Ce=ao();Me=Q(Ve(Me,Ce),se)}return Me}function Oi(se,Me,Ce,Ue,Qe){return Q(Me(Ce,Qr(se,L(),Ue,Qe)),se)}function qB(se,Me,Ce,Ue){let Qe=O(!0);return wn(),Q(N.createJSDocThisTag(Me,Qe,Qr(se,L(),Ce,Ue)),se)}function UB(se,Me,Ce,Ue){let Qe=O(!0);return wn(),Q(N.createJSDocEnumTag(Me,Qe,Qr(se,L(),Ce,Ue)),se)}function zB(se,Me,Ce,Ue){var Qe;let vt=Wa();Ua();let Vt=l6();wn();let Rr=jc(Ce),gn;if(!vt||Yn(vt.type)){let Va,hi,pp,fp=!1;for(;Va=Tr(()=>$B(Ce));)if(fp=!0,Va.kind===347)if(hi){let so=Dt(ve.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);so&&Rl(so,Ro(Ur,0,0,ve.The_tag_was_first_specified_here));break}else hi=Va;else pp=tr(pp,Va);if(fp){let so=vt&&vt.type.kind===185,eq=N.createJSDocTypeLiteral(pp,so);vt=hi&&hi.typeExpression&&!Yn(hi.typeExpression.type)?hi.typeExpression:Q(eq,se),gn=vt.end}}gn=gn||Rr!==void 0?L():((Qe=Vt!=null?Vt:vt)!=null?Qe:Me).end,Rr||(Rr=Qr(se,gn,Ce,Ue));let mi=N.createJSDocTypedefTag(Me,vt,Vt,Rr);return Q(mi,se,gn)}function l6(se){let Me=t.getTokenPos();if(!fr(T()))return;let Ce=ao();if(Ot(24)){let Ue=l6(!0),Qe=N.createModuleDeclaration(void 0,Ce,Ue,se?4:void 0);return Q(Qe,Me)}return se&&(Ce.flags|=2048),Ce}function WB(se){let Me=L(),Ce,Ue;for(;Ce=Tr(()=>u6(4,se));)Ue=tr(Ue,Ce);return Er(Ue||[],Me)}function j7(se,Me){let Ce=WB(Me),Ue=Tr(()=>{if(u_(59)){let Qe=up(Me);if(Qe&&Qe.kind===345)return Qe}});return Q(N.createJSDocSignature(void 0,Ce,Ue),se)}function VB(se,Me,Ce,Ue){let Qe=l6();wn();let vt=jc(Ce),Vt=j7(se,Ce);vt||(vt=Qr(se,L(),Ce,Ue));let Rr=vt!==void 0?L():Vt.end;return Q(N.createJSDocCallbackTag(Me,Vt,Qe,vt),se,Rr)}function HB(se,Me,Ce,Ue){wn();let Qe=jc(Ce),vt=j7(se,Ce);Qe||(Qe=Qr(se,L(),Ce,Ue));let Vt=Qe!==void 0?L():vt.end;return Q(N.createJSDocOverloadTag(Me,vt,Qe),se,Vt)}function GB(se,Me){for(;!yt(se)||!yt(Me);)if(!yt(se)&&!yt(Me)&&se.right.escapedText===Me.right.escapedText)se=se.left,Me=Me.left;else return!1;return se.escapedText===Me.escapedText}function $B(se){return u6(1,se)}function u6(se,Me,Ce){let Ue=!0,Qe=!1;for(;;)switch(Ge()){case 59:if(Ue){let vt=KB(se,Me);return vt&&(vt.kind===344||vt.kind===351)&&se!==4&&Ce&&(yt(vt.name)||!GB(Ce,vt.name.left))?!1:vt}Qe=!1;break;case 4:Ue=!0,Qe=!1;break;case 41:Qe&&(Ue=!1),Qe=!0;break;case 79:Ue=!1;break;case 1:return!1}}function KB(se,Me){Y.assert(T()===59);let Ce=t.getStartPos();Ge();let Ue=ao();wn();let Qe;switch(Ue.escapedText){case"type":return se===1&&l(Ce,Ue);case"prop":case"property":Qe=1;break;case"arg":case"argument":case"param":Qe=6;break;default:return!1}return se&Qe?Xh(Ce,Ue,se,Me):!1}function XB(){let se=L(),Me=u_(22);Me&&wn();let Ce=ao(ve.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces),Ue;if(Me&&(wn(),de(63),Ue=Mt(8388608,xc),de(23)),!va(Ce))return Q(N.createTypeParameterDeclaration(void 0,Ce,void 0,Ue),se)}function YB(){let se=L(),Me=[];do{wn();let Ce=XB();Ce!==void 0&&Me.push(Ce),Ua()}while(u_(27));return Er(Me,se)}function QB(se,Me,Ce,Ue){let Qe=T()===18?O():void 0,vt=YB();return Q(N.createJSDocTemplateTag(Me,Qe,vt,Qr(se,L(),Ce,Ue)),se)}function u_(se){return T()===se?(Ge(),!0):!1}function ZB(){let se=ao();for(Ot(22)&&de(23);Ot(24);){let Me=ao();Ot(22)&&de(23),se=Tu(se,Me)}return se}function ao(se){if(!fr(T()))return Jn(79,!se,se||ve.Identifier_expected);$r++;let Me=t.getTokenPos(),Ce=t.getTextPos(),Ue=T(),Qe=Ia(t.getTokenValue()),vt=Q(Te(Qe,Ue),Me,Ce);return Ge(),vt}}})(Vh=e.JSDocParser||(e.JSDocParser={}))})(Ci||(Ci={})),(e=>{function t($,ae,Te,Se){if(Se=Se||Y.shouldAssert(2),N($,ae,Te,Se),cS(Te))return $;if($.statements.length===0)return Ci.parseSourceFile($.fileName,ae,$.languageVersion,void 0,!0,$.scriptKind,$.setExternalModuleIndicator);let Ye=$;Y.assert(!Ye.hasBeenIncrementallyParsed),Ye.hasBeenIncrementallyParsed=!0,Ci.fixupParentReferences(Ye);let Ne=$.text,oe=X($),Ve=g($,Te);N($,ae,Ve,Se),Y.assert(Ve.span.start<=Te.span.start),Y.assert(Ir(Ve.span)===Ir(Te.span)),Y.assert(Ir(R_(Ve))===Ir(R_(Te)));let pt=R_(Ve).length-Ve.span.length;A(Ye,Ve.span.start,Ir(Ve.span),Ir(R_(Ve)),pt,Ne,ae,Se);let Gt=Ci.parseSourceFile($.fileName,ae,$.languageVersion,oe,!0,$.scriptKind,$.setExternalModuleIndicator);return Gt.commentDirectives=r($.commentDirectives,Gt.commentDirectives,Ve.span.start,Ir(Ve.span),pt,Ne,ae,Se),Gt.impliedNodeFormat=$.impliedNodeFormat,Gt}e.updateSourceFile=t;function r($,ae,Te,Se,Ye,Ne,oe,Ve){if(!$)return ae;let pt,Gt=!1;for(let Xt of $){let{range:er,type:Tn}=Xt;if(er.endSe){Nt();let Hr={range:{pos:er.pos+Ye,end:er.end+Ye},type:Tn};pt=tr(pt,Hr),Ve&&Y.assert(Ne.substring(er.pos,er.end)===oe.substring(Hr.range.pos,Hr.range.end))}}return Nt(),pt;function Nt(){Gt||(Gt=!0,pt?ae&&pt.push(...ae):pt=ae)}}function s($,ae,Te,Se,Ye,Ne){ae?Ve($):oe($);return;function oe(pt){let Gt="";if(Ne&&f(pt)&&(Gt=Se.substring(pt.pos,pt.end)),pt._children&&(pt._children=void 0),Us(pt,pt.pos+Te,pt.end+Te),Ne&&f(pt)&&Y.assert(Gt===Ye.substring(pt.pos,pt.end)),xr(pt,oe,Ve),ya(pt))for(let Nt of pt.jsDoc)oe(Nt);w(pt,Ne)}function Ve(pt){pt._children=void 0,Us(pt,pt.pos+Te,pt.end+Te);for(let Gt of pt)oe(Gt)}}function f($){switch($.kind){case 10:case 8:case 79:return!0}return!1}function x($,ae,Te,Se,Ye){Y.assert($.end>=ae,"Adjusting an element that was entirely before the change range"),Y.assert($.pos<=Te,"Adjusting an element that was entirely after the change range"),Y.assert($.pos<=$.end);let Ne=Math.min($.pos,Se),oe=$.end>=Te?$.end+Ye:Math.min($.end,Se);Y.assert(Ne<=oe),$.parent&&(Y.assertGreaterThanOrEqual(Ne,$.parent.pos),Y.assertLessThanOrEqual(oe,$.parent.end)),Us($,Ne,oe)}function w($,ae){if(ae){let Te=$.pos,Se=Ye=>{Y.assert(Ye.pos>=Te),Te=Ye.end};if(ya($))for(let Ye of $.jsDoc)Se(Ye);xr($,Se),Y.assert(Te<=$.end)}}function A($,ae,Te,Se,Ye,Ne,oe,Ve){pt($);return;function pt(Nt){if(Y.assert(Nt.pos<=Nt.end),Nt.pos>Te){s(Nt,!1,Ye,Ne,oe,Ve);return}let Xt=Nt.end;if(Xt>=ae){if(Nt.intersectsChange=!0,Nt._children=void 0,x(Nt,ae,Te,Se,Ye),xr(Nt,pt,Gt),ya(Nt))for(let er of Nt.jsDoc)pt(er);w(Nt,Ve);return}Y.assert(XtTe){s(Nt,!0,Ye,Ne,oe,Ve);return}let Xt=Nt.end;if(Xt>=ae){Nt.intersectsChange=!0,Nt._children=void 0,x(Nt,ae,Te,Se,Ye);for(let er of Nt)pt(er);return}Y.assert(Xt0&&oe<=1;oe++){let Ve=B($,Se);Y.assert(Ve.pos<=Se);let pt=Ve.pos;Se=Math.max(0,pt-1)}let Ye=ha(Se,Ir(ae.span)),Ne=ae.newLength+(ae.span.start-Se);return Zp(Ye,Ne)}function B($,ae){let Te=$,Se;if(xr($,Ne),Se){let oe=Ye(Se);oe.pos>Te.pos&&(Te=oe)}return Te;function Ye(oe){for(;;){let Ve=mx(oe);if(Ve)oe=Ve;else return oe}}function Ne(oe){if(!va(oe))if(oe.pos<=ae){if(oe.pos>=Te.pos&&(Te=oe),aeae),!0}}function N($,ae,Te,Se){let Ye=$.text;if(Te&&(Y.assert(Ye.length-Te.span.length+Te.newLength===ae.length),Se||Y.shouldAssert(3))){let Ne=Ye.substr(0,Te.span.start),oe=ae.substr(0,Te.span.start);Y.assert(Ne===oe);let Ve=Ye.substring(Ir(Te.span),Ye.length),pt=ae.substring(Ir(R_(Te)),ae.length);Y.assert(Ve===pt)}}function X($){let ae=$.statements,Te=0;Y.assert(Te=Gt.pos&&oe=Gt.pos&&oe{$[$.Value=-1]="Value"})(F||(F={}))})(Sd||(Sd={})),xd=new Map,_7=/^\/\/\/\s*<(\S+)\s.*?\/>/im,c7=/^\/\/\/?\s*@(\S+)\s*(.*)\s*$/im}}),nF=()=>{},iF=()=>{},aF=()=>{},sF=()=>{},oF=()=>{},_F=()=>{},cF=()=>{},lF=()=>{},uF=()=>{},pF=()=>{},fF=()=>{},dF=()=>{},mF=()=>{},hF=()=>{},gF=()=>{},yF=()=>{},vF=()=>{},bF=()=>{},TF=()=>{},SF=()=>{},xF=()=>{},EF=()=>{},wF=()=>{},CF=()=>{},AF=()=>{},PF=()=>{},DF=()=>{},kF=()=>{},IF=()=>{},NF=()=>{},OF=()=>{},MF=()=>{},LF=()=>{},RF=()=>{},jF=()=>{},JF=()=>{},FF=()=>{},BF=()=>{},qF=()=>{},UF=()=>{},zF=()=>{},WF=()=>{},VF=()=>{},HF=()=>{},GF=()=>{},$F=()=>{},nn=D({"src/compiler/_namespaces/ts.ts"(){"use strict";E(),L5(),PT(),R5(),j5(),F5(),U5(),NT(),W5(),sA(),oA(),hA(),iD(),OL(),ML(),LL(),RL(),KL(),XL(),YL(),Pj(),qJ(),UJ(),rF(),nF(),iF(),aF(),sF(),_F(),cF(),lF(),uF(),pF(),fF(),dF(),mF(),hF(),gF(),yF(),vF(),bF(),TF(),SF(),xF(),EF(),wF(),CF(),AF(),PF(),DF(),kF(),IF(),NF(),OF(),MF(),LF(),RF(),jF(),JF(),FF(),BF(),qF(),UF(),zF(),WF(),VF(),HF(),GF(),$F(),oF(),IT()}}),l7=()=>{},KF=()=>{},u7=()=>{},Zo,u7=()=>{PT(),Zo=Po(99,!0)},XF=()=>{},YF=()=>{},QF=()=>{},ZF=()=>{},eB=()=>{},tB=()=>{},rB=()=>{},nB=()=>{},iB=()=>{},aB=()=>{},p7=()=>{},f7=()=>{};function d7(e,t,r,s){let f=gl(e)?new wd(e,t,r):e===79?new Ad(79,t,r):e===80?new Pd(80,t,r):new O2(e,t,r);return f.parent=s,f.flags=s.flags&50720768,f}function sB(e,t){if(!gl(e.kind))return Bt;let r=[];if(c3(e))return e.forEachChild(w=>{r.push(w)}),r;Zo.setText((t||e.getSourceFile()).text);let s=e.pos,f=w=>{_u(r,s,w.pos,e),r.push(w),s=w.end},x=w=>{_u(r,s,w.pos,e),r.push(oB(w,e)),s=w.end};return c(e.jsDoc,f),s=e.pos,e.forEachChild(f,x),_u(r,s,e.end,e),Zo.setText(void 0),r}function _u(e,t,r,s){for(Zo.setTextPos(t);tt.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function Ed(e,t){if(!e)return Bt;let r=ts_JsDoc_exports.getJsDocTagsFromDeclarations(e,t);if(t&&(r.length===0||e.some(m7))){let s=new Set;for(let f of e){let x=h7(t,f,w=>{var A;if(!s.has(w))return s.add(w),f.kind===174||f.kind===175?w.getContextualJsDocTags(f,t):((A=w.declarations)==null?void 0:A.length)===1?w.getJsDocTags():void 0});x&&(r=[...x,...r])}}return r}function cu(e,t){if(!e)return Bt;let r=ts_JsDoc_exports.getJsDocCommentsFromDeclarations(e,t);if(t&&(r.length===0||e.some(m7))){let s=new Set;for(let f of e){let x=h7(t,f,w=>{if(!s.has(w))return s.add(w),f.kind===174||f.kind===175?w.getContextualDocumentationComment(f,t):w.getDocumentationComment(t)});x&&(r=r.length===0?x.slice():x.concat(lineBreakPart(),r))}}return r}function h7(e,t,r){var s;let f=((s=t.parent)==null?void 0:s.kind)===173?t.parent.parent:t.parent;if(!f)return;let x=Lf(t);return q(h4(f),w=>{let A=e.getTypeAtLocation(w),g=x&&A.symbol?e.getTypeOfSymbol(A.symbol):A,B=e.getPropertyOfType(g,t.symbol.name);return B?r(B):void 0})}function _B(){return{getNodeConstructor:()=>wd,getTokenConstructor:()=>O2,getIdentifierConstructor:()=>Ad,getPrivateIdentifierConstructor:()=>Pd,getSourceFileConstructor:()=>P7,getSymbolConstructor:()=>w7,getTypeConstructor:()=>C7,getSignatureConstructor:()=>A7,getSourceMapSourceConstructor:()=>D7}}function lu(e){let t=!0;for(let s in e)if(Jr(e,s)&&!g7(s)){t=!1;break}if(t)return e;let r={};for(let s in e)if(Jr(e,s)){let f=g7(s)?s:s.charAt(0).toLowerCase()+s.substr(1);r[f]=e[s]}return r}function g7(e){return!e.length||e.charAt(0)===e.charAt(0).toLowerCase()}function cB(e){return e?Ze(e,t=>t.text).join(""):""}function y7(){return{target:1,jsx:1}}function v7(){return ts_codefix_exports.getSupportedErrorCodes()}function b7(e,t,r){e.version=r,e.scriptSnapshot=t}function N2(e,t,r,s,f,x){let w=YE(e,getSnapshotText(t),r,f,x);return b7(w,t,s),w}function T7(e,t,r,s,f){if(s&&r!==e.version){let w,A=s.span.start!==0?e.text.substr(0,s.span.start):"",g=Ir(s.span)!==e.text.length?e.text.substr(Ir(s.span)):"";if(s.newLength===0)w=A&&g?A+g:A||g;else{let N=t.getText(s.span.start,s.span.start+s.newLength);w=A&&g?A+N+g:A?A+N:N+g}let B=k2(e,w,s,f);return b7(B,t,r),B.nameTable=void 0,e!==B&&e.scriptSnapshot&&(e.scriptSnapshot.dispose&&e.scriptSnapshot.dispose(),e.scriptSnapshot=void 0),B}let x={languageVersion:e.languageVersion,impliedNodeFormat:e.impliedNodeFormat,setExternalModuleIndicator:e.setExternalModuleIndicator};return N2(e.fileName,t,x,r,!0,e.scriptKind)}function lB(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:createDocumentRegistry(e.useCaseSensitiveFileNames&&e.useCaseSensitiveFileNames(),e.getCurrentDirectory()),r=arguments.length>2?arguments[2]:void 0;var s;let f;r===void 0?f=0:typeof r=="boolean"?f=r?2:0:f=r;let x=new k7(e),w,A,g=0,B=e.getCancellationToken?new N7(e.getCancellationToken()):I7,N=e.getCurrentDirectory();vx((s=e.getLocalizedDiagnosticMessages)==null?void 0:s.bind(e));function X(Z){e.log&&e.log(Z)}let F=J0(e),$=wp(F),ae=getSourceMapper({useCaseSensitiveFileNames:()=>F,getCurrentDirectory:()=>N,getProgram:Ye,fileExists:le(e,e.fileExists),readFile:le(e,e.readFile),getDocumentPositionMapper:le(e,e.getDocumentPositionMapper),getSourceFileLike:le(e,e.getSourceFileLike),log:X});function Te(Z){let ie=w.getSourceFile(Z);if(!ie){let U=new Error(`Could not find source file: '${Z}'.`);throw U.ProgramFiles=w.getSourceFiles().map(L=>L.fileName),U}return ie}function Se(){var Z,ie,U;if(Y.assert(f!==2),e.getProjectVersion){let Tt=e.getProjectVersion();if(Tt){if(A===Tt&&!((Z=e.hasChangedAutomaticTypeDirectiveNames)!=null&&Z.call(e)))return;A=Tt}}let L=e.getTypeRootsVersion?e.getTypeRootsVersion():0;g!==L&&(X("TypeRoots version has changed; provide new program"),w=void 0,g=L);let fe=e.getScriptFileNames().slice(),T=e.getCompilationSettings()||y7(),it=e.hasInvalidatedResolutions||w_,mt=le(e,e.hasChangedAutomaticTypeDirectiveNames),_e=(ie=e.getProjectReferences)==null?void 0:ie.call(e),Ge,bt={getSourceFile:wt,getSourceFileByPath:Tr,getCancellationToken:()=>B,getCanonicalFileName:$,useCaseSensitiveFileNames:()=>F,getNewLine:()=>ox(T),getDefaultLibFileName:Tt=>e.getDefaultLibFileName(Tt),writeFile:yn,getCurrentDirectory:()=>N,fileExists:Tt=>e.fileExists(Tt),readFile:Tt=>e.readFile&&e.readFile(Tt),getSymlinkCache:le(e,e.getSymlinkCache),realpath:le(e,e.realpath),directoryExists:Tt=>sx(Tt,e),getDirectories:Tt=>e.getDirectories?e.getDirectories(Tt):[],readDirectory:(Tt,kt,de,jn,Zi)=>(Y.checkDefined(e.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),e.readDirectory(Tt,kt,de,jn,Zi)),onReleaseOldSourceFile:Rn,onReleaseParsedCommandLine:yr,hasInvalidatedResolutions:it,hasChangedAutomaticTypeDirectiveNames:mt,trace:le(e,e.trace),resolveModuleNames:le(e,e.resolveModuleNames),getModuleResolutionCache:le(e,e.getModuleResolutionCache),createHash:le(e,e.createHash),resolveTypeReferenceDirectives:le(e,e.resolveTypeReferenceDirectives),resolveModuleNameLiterals:le(e,e.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:le(e,e.resolveTypeReferenceDirectiveReferences),useSourceOfProjectReferenceRedirect:le(e,e.useSourceOfProjectReferenceRedirect),getParsedCommandLine:Dr},jt=bt.getSourceFile,{getSourceFileWithCache:Yt}=changeCompilerHostLikeToUseCache(bt,Tt=>Ui(Tt,N,$),function(){for(var Tt=arguments.length,kt=new Array(Tt),de=0;debt.fileExists(Tt),readFile:Tt=>bt.readFile(Tt),readDirectory:function(){return bt.readDirectory(...arguments)},trace:bt.trace,getCurrentDirectory:bt.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:yn},Wt=t.getKeyForCompilationSettings(T);if(isProgramUptoDate(w,fe,T,(Tt,kt)=>e.getScriptVersion(kt),Tt=>bt.fileExists(Tt),it,mt,Dr,_e))return;let Xr={rootNames:fe,options:T,host:bt,oldProgram:w,projectReferences:_e};w=createProgram(Xr),bt=void 0,Ge=void 0,ae.clearCache(),w.getTypeChecker();return;function Dr(Tt){let kt=Ui(Tt,N,$),de=Ge==null?void 0:Ge.get(kt);if(de!==void 0)return de||void 0;let jn=e.getParsedCommandLine?e.getParsedCommandLine(Tt):Lr(Tt);return(Ge||(Ge=new Map)).set(kt,jn||!1),jn}function Lr(Tt){let kt=wt(Tt,100);if(kt)return kt.path=Ui(Tt,N,$),kt.resolvedPath=kt.path,kt.originalFileName=kt.fileName,parseJsonSourceFileConfigFileContent(kt,$t,as(ma(Tt),N),void 0,as(Tt,N))}function yr(Tt,kt,de){var jn;e.getParsedCommandLine?(jn=e.onReleaseParsedCommandLine)==null||jn.call(e,Tt,kt,de):kt&&Rn(kt.sourceFile,de)}function Rn(Tt,kt){let de=t.getKeyForCompilationSettings(kt);t.releaseDocumentWithKey(Tt.resolvedPath,de,Tt.scriptKind,Tt.impliedNodeFormat)}function wt(Tt,kt,de,jn){return Tr(Tt,Ui(Tt,N,$),kt,de,jn)}function Tr(Tt,kt,de,jn,Zi){Y.assert(bt,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");let Pa=e.getScriptSnapshot(Tt);if(!Pa)return;let e_=getScriptKind(Tt,e),mc=e.getScriptVersion(Tt);if(!Zi){let Da=w&&w.getSourceFileByPath(kt);if(Da){if(e_===Da.scriptKind)return t.updateDocumentWithKey(Tt,kt,e,Wt,Pa,mc,e_,de);t.releaseDocumentWithKey(Da.resolvedPath,t.getKeyForCompilationSettings(w.getCompilerOptions()),Da.scriptKind,Da.impliedNodeFormat)}}return t.acquireDocumentWithKey(Tt,kt,e,Wt,Pa,mc,e_,de)}}function Ye(){if(f===2){Y.assert(w===void 0);return}return Se(),w}function Ne(){var Z;return(Z=e.getPackageJsonAutoImportProvider)==null?void 0:Z.call(e)}function oe(Z,ie){let U=w.getTypeChecker(),L=fe();if(!L)return!1;for(let it of Z)for(let mt of it.references){let _e=T(mt);if(Y.assertIsDefined(_e),ie.has(mt)||ts_FindAllReferences_exports.isDeclarationOfSymbol(_e,L)){ie.add(mt),mt.isDefinition=!0;let Ge=getMappedDocumentSpan(mt,ae,le(e,e.fileExists));Ge&&ie.add(Ge)}else mt.isDefinition=!1}return!0;function fe(){for(let it of Z)for(let mt of it.references){if(ie.has(mt)){let Ge=T(mt);return Y.assertIsDefined(Ge),U.getSymbolAtLocation(Ge)}let _e=getMappedDocumentSpan(mt,ae,le(e,e.fileExists));if(_e&&ie.has(_e)){let Ge=T(_e);if(Ge)return U.getSymbolAtLocation(Ge)}}}function T(it){let mt=w.getSourceFile(it.fileName);if(!mt)return;let _e=getTouchingPropertyName(mt,it.textSpan.start);return ts_FindAllReferences_exports.Core.getAdjustedNode(_e,{use:ts_FindAllReferences_exports.FindReferencesUse.References})}}function Ve(){w=void 0}function pt(){if(w){let Z=t.getKeyForCompilationSettings(w.getCompilerOptions());c(w.getSourceFiles(),ie=>t.releaseDocumentWithKey(ie.resolvedPath,Z,ie.scriptKind,ie.impliedNodeFormat)),w=void 0}e=void 0}function Gt(Z){return Se(),w.getSyntacticDiagnostics(Te(Z),B).slice()}function Nt(Z){Se();let ie=Te(Z),U=w.getSemanticDiagnostics(ie,B);if(!cv(w.getCompilerOptions()))return U.slice();let L=w.getDeclarationDiagnostics(ie,B);return[...U,...L]}function Xt(Z){return Se(),computeSuggestionDiagnostics(Te(Z),w,B)}function er(){return Se(),[...w.getOptionsDiagnostics(B),...w.getGlobalDiagnostics(B)]}function Tn(Z,ie){let U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:emptyOptions,L=arguments.length>3?arguments[3]:void 0,fe=Object.assign(Object.assign({},U),{},{includeCompletionsForModuleExports:U.includeCompletionsForModuleExports||U.includeExternalModuleExports,includeCompletionsWithInsertText:U.includeCompletionsWithInsertText||U.includeInsertTextCompletions});return Se(),ts_Completions_exports.getCompletionsAtPosition(e,w,X,Te(Z),ie,fe,U.triggerCharacter,U.triggerKind,B,L&&ts_formatting_exports.getFormatContext(L,e),U.includeSymbol)}function Hr(Z,ie,U,L,fe){let T=arguments.length>5&&arguments[5]!==void 0?arguments[5]:emptyOptions,it=arguments.length>6?arguments[6]:void 0;return Se(),ts_Completions_exports.getCompletionEntryDetails(w,X,Te(Z),ie,{name:U,source:fe,data:it},e,L&&ts_formatting_exports.getFormatContext(L,e),T,B)}function Gi(Z,ie,U,L){let fe=arguments.length>4&&arguments[4]!==void 0?arguments[4]:emptyOptions;return Se(),ts_Completions_exports.getCompletionEntrySymbol(w,X,Te(Z),ie,{name:U,source:L},e,fe)}function pn(Z,ie){Se();let U=Te(Z),L=getTouchingPropertyName(U,ie);if(L===U)return;let fe=w.getTypeChecker(),T=fn(L),it=mB(T,fe);if(!it||fe.isUnknownSymbol(it)){let jt=Ut(U,T,ie)?fe.getTypeAtLocation(T):void 0;return jt&&{kind:"",kindModifiers:"",textSpan:createTextSpanFromNode(T,U),displayParts:fe.runWithCancellationToken(B,Yt=>typeToDisplayParts(Yt,jt,getContainerNode(T))),documentation:jt.symbol?jt.symbol.getDocumentationComment(fe):void 0,tags:jt.symbol?jt.symbol.getJsDocTags(fe):void 0}}let{symbolKind:mt,displayParts:_e,documentation:Ge,tags:bt}=fe.runWithCancellationToken(B,jt=>ts_SymbolDisplay_exports.getSymbolDisplayPartsDocumentationAndSymbolKind(jt,it,U,getContainerNode(T),T));return{kind:mt,kindModifiers:ts_SymbolDisplay_exports.getSymbolModifiers(fe,it),textSpan:createTextSpanFromNode(T,U),displayParts:_e,documentation:Ge,tags:bt}}function fn(Z){return X8(Z.parent)&&Z.pos===Z.parent.pos?Z.parent.expression:$v(Z.parent)&&Z.pos===Z.parent.pos||o0(Z.parent)&&Z.parent.name===Z?Z.parent:Z}function Ut(Z,ie,U){switch(ie.kind){case 79:return!isLabelName(ie)&&!isTagName(ie)&&!jS(ie.parent);case 208:case 163:return!isInComment(Z,U);case 108:case 194:case 106:case 199:return!0;case 233:return o0(ie);default:return!1}}function kn(Z,ie,U,L){return Se(),ts_GoToDefinition_exports.getDefinitionAtPosition(w,Te(Z),ie,U,L)}function an(Z,ie){return Se(),ts_GoToDefinition_exports.getDefinitionAndBoundSpan(w,Te(Z),ie)}function mr(Z,ie){return Se(),ts_GoToDefinition_exports.getTypeDefinitionAtPosition(w.getTypeChecker(),Te(Z),ie)}function $i(Z,ie){return Se(),ts_FindAllReferences_exports.getImplementationsAtPosition(w,B,w.getSourceFiles(),Te(Z),ie)}function dn(Z,ie){return ne(Ur(Z,ie,[Z]),U=>U.highlightSpans.map(L=>Object.assign(Object.assign({fileName:U.fileName,textSpan:L.textSpan,isWriteAccess:L.kind==="writtenReference"},L.isInString&&{isInString:!0}),L.contextSpan&&{contextSpan:L.contextSpan})))}function Ur(Z,ie,U){let L=Un(Z);Y.assert(U.some(it=>Un(it)===L)),Se();let fe=qt(U,it=>w.getSourceFile(it)),T=Te(Z);return DocumentHighlights.getDocumentHighlights(w,B,T,ie,fe)}function Gr(Z,ie,U,L,fe){Se();let T=Te(Z),it=getAdjustedRenameLocation(getTouchingPropertyName(T,ie));if(ts_Rename_exports.nodeIsEligibleForRename(it))if(yt(it)&&(tu(it.parent)||sE(it.parent))&&P4(it.escapedText)){let{openingElement:mt,closingElement:_e}=it.parent.parent;return[mt,_e].map(Ge=>{let bt=createTextSpanFromNode(Ge.tagName,T);return Object.assign({fileName:T.fileName,textSpan:bt},ts_FindAllReferences_exports.toContextSpan(bt,T,Ge.parent))})}else return Sn(it,ie,{findInStrings:U,findInComments:L,providePrefixAndSuffixTextForRename:fe,use:ts_FindAllReferences_exports.FindReferencesUse.Rename},(mt,_e,Ge)=>ts_FindAllReferences_exports.toRenameLocation(mt,_e,Ge,fe||!1))}function _r(Z,ie){return Se(),Sn(getTouchingPropertyName(Te(Z),ie),ie,{use:ts_FindAllReferences_exports.FindReferencesUse.References},ts_FindAllReferences_exports.toReferenceEntry)}function Sn(Z,ie,U,L){Se();let fe=U&&U.use===ts_FindAllReferences_exports.FindReferencesUse.Rename?w.getSourceFiles().filter(T=>!w.isSourceFileDefaultLibrary(T)):w.getSourceFiles();return ts_FindAllReferences_exports.findReferenceOrRenameEntries(w,B,fe,Z,ie,U,L)}function In(Z,ie){return Se(),ts_FindAllReferences_exports.findReferencedSymbols(w,B,w.getSourceFiles(),Te(Z),ie)}function pr(Z){return Se(),ts_FindAllReferences_exports.Core.getReferencesForFileName(Z,w,w.getSourceFiles()).map(ts_FindAllReferences_exports.toReferenceEntry)}function Zt(Z,ie,U){let L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;Se();let fe=U?[Te(U)]:w.getSourceFiles();return getNavigateToItems(fe,w.getTypeChecker(),B,Z,ie,L)}function Or(Z,ie,U){Se();let L=Te(Z),fe=e.getCustomTransformers&&e.getCustomTransformers();return getFileEmitOutput(w,L,!!ie,B,fe,U)}function Nn(Z,ie){let{triggerReason:U}=arguments.length>2&&arguments[2]!==void 0?arguments[2]:emptyOptions;Se();let L=Te(Z);return ts_SignatureHelp_exports.getSignatureHelpItems(w,L,ie,U,B)}function ar(Z){return x.getCurrentSourceFile(Z)}function oi(Z,ie,U){let L=x.getCurrentSourceFile(Z),fe=getTouchingPropertyName(L,ie);if(fe===L)return;switch(fe.kind){case 208:case 163:case 10:case 95:case 110:case 104:case 106:case 108:case 194:case 79:break;default:return}let T=fe;for(;;)if(isRightSideOfPropertyAccess(T)||isRightSideOfQualifiedName(T))T=T.parent;else if(isNameOfModuleDeclaration(T))if(T.parent.parent.kind===264&&T.parent.parent.body===T.parent)T=T.parent.parent.name;else break;else break;return ha(T.getStart(),fe.getEnd())}function cr(Z,ie){let U=x.getCurrentSourceFile(Z);return ts_BreakpointResolver_exports.spanInSourceFileAtLocation(U,ie)}function $r(Z){return getNavigationBarItems(x.getCurrentSourceFile(Z),B)}function hr(Z){return getNavigationTree(x.getCurrentSourceFile(Z),B)}function On(Z,ie,U){return Se(),(U||"original")==="2020"?ts_classifier_exports.v2020.getSemanticClassifications(w,B,Te(Z),ie):getSemanticClassifications(w.getTypeChecker(),B,Te(Z),w.getClassifiableNames(),ie)}function nr(Z,ie,U){return Se(),(U||"original")==="original"?getEncodedSemanticClassifications(w.getTypeChecker(),B,Te(Z),w.getClassifiableNames(),ie):ts_classifier_exports.v2020.getEncodedSemanticClassifications(w,B,Te(Z),ie)}function br(Z,ie){return getSyntacticClassifications(B,x.getCurrentSourceFile(Z),ie)}function Kr(Z,ie){return getEncodedSyntacticClassifications(B,x.getCurrentSourceFile(Z),ie)}function wa(Z){let ie=x.getCurrentSourceFile(Z);return ts_OutliningElementsCollector_exports.collectElements(ie,B)}let $n=new Map(Object.entries({[18]:19,[20]:21,[22]:23,[31]:29}));$n.forEach((Z,ie)=>$n.set(Z.toString(),Number(ie)));function Ki(Z,ie){let U=x.getCurrentSourceFile(Z),L=getTouchingToken(U,ie),fe=L.getStart(U)===ie?$n.get(L.kind.toString()):void 0,T=fe&&findChildOfKind(L.parent,fe,U);return T?[createTextSpanFromNode(L,U),createTextSpanFromNode(T,U)].sort((it,mt)=>it.start-mt.start):Bt}function Mn(Z,ie,U){let L=ts(),fe=lu(U),T=x.getCurrentSourceFile(Z);X("getIndentationAtPosition: getCurrentSourceFile: "+(ts()-L)),L=ts();let it=ts_formatting_exports.SmartIndenter.getIndentation(ie,T,fe);return X("getIndentationAtPosition: computeIndentation : "+(ts()-L)),it}function _i(Z,ie,U,L){let fe=x.getCurrentSourceFile(Z);return ts_formatting_exports.formatSelection(ie,U,fe,ts_formatting_exports.getFormatContext(lu(L),e))}function Ca(Z,ie){return ts_formatting_exports.formatDocument(x.getCurrentSourceFile(Z),ts_formatting_exports.getFormatContext(lu(ie),e))}function St(Z,ie,U,L){let fe=x.getCurrentSourceFile(Z),T=ts_formatting_exports.getFormatContext(lu(L),e);if(!isInComment(fe,ie))switch(U){case"{":return ts_formatting_exports.formatOnOpeningCurly(ie,fe,T);case"}":return ts_formatting_exports.formatOnClosingCurly(ie,fe,T);case";":return ts_formatting_exports.formatOnSemicolon(ie,fe,T);case` +`:return ts_formatting_exports.formatOnEnter(ie,fe,T)}return[]}function ue(Z,ie,U,L,fe){let T=arguments.length>5&&arguments[5]!==void 0?arguments[5]:emptyOptions;Se();let it=Te(Z),mt=ha(ie,U),_e=ts_formatting_exports.getFormatContext(fe,e);return ne(ji(L,fa,Vr),Ge=>(B.throwIfCancellationRequested(),ts_codefix_exports.getFixes({errorCode:Ge,sourceFile:it,span:mt,program:w,host:e,cancellationToken:B,formatContext:_e,preferences:T})))}function He(Z,ie,U){let L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:emptyOptions;Se(),Y.assert(Z.type==="file");let fe=Te(Z.fileName),T=ts_formatting_exports.getFormatContext(U,e);return ts_codefix_exports.getAllFixes({fixId:ie,sourceFile:fe,program:w,host:e,cancellationToken:B,formatContext:T,preferences:L})}function _t(Z,ie){let U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:emptyOptions;var L;Se(),Y.assert(Z.type==="file");let fe=Te(Z.fileName),T=ts_formatting_exports.getFormatContext(ie,e),it=(L=Z.mode)!=null?L:Z.skipDestructiveCodeActions?"SortAndCombine":"All";return ts_OrganizeImports_exports.organizeImports(fe,T,e,w,U,it)}function ft(Z,ie,U){let L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:emptyOptions;return getEditsForFileRename(Ye(),Z,ie,e,ts_formatting_exports.getFormatContext(U,e),L,ae)}function Kt(Z,ie){let U=typeof Z=="string"?ie:Z;return ir(U)?Promise.all(U.map(L=>zt(L))):zt(U)}function zt(Z){let ie=U=>Ui(U,N,$);return Y.assertEqual(Z.type,"install package"),e.installPackage?e.installPackage({fileName:ie(Z.file),packageName:Z.packageName}):Promise.reject("Host does not implement `installPackage`")}function xe(Z,ie,U,L){let fe=L?ts_formatting_exports.getFormatContext(L,e).options:void 0;return ts_JsDoc_exports.getDocCommentTemplateAtPosition(getNewLineOrDefaultFromHost(e,fe),x.getCurrentSourceFile(Z),ie,U)}function Le(Z,ie,U){if(U===60)return!1;let L=x.getCurrentSourceFile(Z);if(isInString(L,ie))return!1;if(isInsideJsxElementOrAttribute(L,ie))return U===123;if(isInTemplateString(L,ie))return!1;switch(U){case 39:case 34:case 96:return!isInComment(L,ie)}return!0}function Re(Z,ie){let U=x.getCurrentSourceFile(Z),L=findPrecedingToken(ie,U);if(!L)return;let fe=L.kind===31&&tu(L.parent)?L.parent.parent:td(L)&&l2(L.parent)?L.parent:void 0;if(fe&&gr(fe))return{newText:``};let T=L.kind===31&&u2(L.parent)?L.parent.parent:td(L)&&pd(L.parent)?L.parent:void 0;if(T&&Ln(T))return{newText:""}}function ot(Z,ie){return{lineStarts:Z.getLineStarts(),firstLine:Z.getLineAndCharacterOfPosition(ie.pos).line,lastLine:Z.getLineAndCharacterOfPosition(ie.end).line}}function Ct(Z,ie,U){let L=x.getCurrentSourceFile(Z),fe=[],{lineStarts:T,firstLine:it,lastLine:mt}=ot(L,ie),_e=U||!1,Ge=Number.MAX_VALUE,bt=new Map,jt=new RegExp(/\S/),Yt=isInsideJsxElement(L,T[it]),$t=Yt?"{/*":"//";for(let Wt=it;Wt<=mt;Wt++){let Xr=L.text.substring(T[Wt],L.getLineEndOfPosition(T[Wt])),Dr=jt.exec(Xr);Dr&&(Ge=Math.min(Ge,Dr.index),bt.set(Wt.toString(),Dr.index),Xr.substr(Dr.index,$t.length)!==$t&&(_e=U===void 0||U))}for(let Wt=it;Wt<=mt;Wt++){if(it!==mt&&T[Wt]===ie.end)continue;let Xr=bt.get(Wt.toString());Xr!==void 0&&(Yt?fe.push.apply(fe,Mt(Z,{pos:T[Wt]+Ge,end:L.getLineEndOfPosition(T[Wt])},_e,Yt)):_e?fe.push({newText:$t,span:{length:0,start:T[Wt]+Ge}}):L.text.substr(T[Wt]+Xr,$t.length)===$t&&fe.push({newText:"",span:{length:$t.length,start:T[Wt]+Xr}}))}return fe}function Mt(Z,ie,U,L){var fe;let T=x.getCurrentSourceFile(Z),it=[],{text:mt}=T,_e=!1,Ge=U||!1,bt=[],{pos:jt}=ie,Yt=L!==void 0?L:isInsideJsxElement(T,jt),$t=Yt?"{/*":"/*",Wt=Yt?"*/}":"*/",Xr=Yt?"\\{\\/\\*":"\\/\\*",Dr=Yt?"\\*\\/\\}":"\\*\\/";for(;jt<=ie.end;){let Lr=mt.substr(jt,$t.length)===$t?$t.length:0,yr=isInComment(T,jt+Lr);if(yr)Yt&&(yr.pos--,yr.end++),bt.push(yr.pos),yr.kind===3&&bt.push(yr.end),_e=!0,jt=yr.end+1;else{let Rn=mt.substring(jt,ie.end).search(`(${Xr})|(${Dr})`);Ge=U!==void 0?U:Ge||!isTextWhiteSpaceLike(mt,jt,Rn===-1?ie.end:jt+Rn),jt=Rn===-1?ie.end+1:jt+Rn+Wt.length}}if(Ge||!_e){((fe=isInComment(T,ie.pos))==null?void 0:fe.kind)!==2&&Qn(bt,ie.pos,Vr),Qn(bt,ie.end,Vr);let Lr=bt[0];mt.substr(Lr,$t.length)!==$t&&it.push({newText:$t,span:{length:0,start:Lr}});for(let yr=1;yr0?Lr-Wt.length:0,Rn=mt.substr(yr,Wt.length)===Wt?Wt.length:0;it.push({newText:"",span:{length:$t.length,start:Lr-Rn}})}return it}function It(Z,ie){let U=x.getCurrentSourceFile(Z),{firstLine:L,lastLine:fe}=ot(U,ie);return L===fe&&ie.pos!==ie.end?Mt(Z,ie,!0):Ct(Z,ie,!0)}function Mr(Z,ie){let U=x.getCurrentSourceFile(Z),L=[],{pos:fe}=ie,{end:T}=ie;fe===T&&(T+=isInsideJsxElement(U,fe)?2:1);for(let it=fe;it<=T;it++){let mt=isInComment(U,it);if(mt){switch(mt.kind){case 2:L.push.apply(L,Ct(Z,{end:mt.end,pos:mt.pos+1},!1));break;case 3:L.push.apply(L,Mt(Z,{end:mt.end,pos:mt.pos+1},!1))}it=mt.end+1}}return L}function gr(Z){let{openingElement:ie,closingElement:U,parent:L}=Z;return!Hi(ie.tagName,U.tagName)||l2(L)&&Hi(ie.tagName,L.openingElement.tagName)&&gr(L)}function Ln(Z){let{closingFragment:ie,parent:U}=Z;return!!(ie.flags&131072)||pd(U)&&Ln(U)}function ys(Z,ie,U){let L=x.getCurrentSourceFile(Z),fe=ts_formatting_exports.getRangeOfEnclosingComment(L,ie);return fe&&(!U||fe.kind===3)?createTextSpanFromRange(fe):void 0}function ci(Z,ie){Se();let U=Te(Z);B.throwIfCancellationRequested();let L=U.text,fe=[];if(ie.length>0&&!_e(U.fileName)){let Ge=it(),bt;for(;bt=Ge.exec(L);){B.throwIfCancellationRequested();let jt=3;Y.assert(bt.length===ie.length+jt);let Yt=bt[1],$t=bt.index+Yt.length;if(!isInComment(U,$t))continue;let Wt;for(let Dr=0;Dr"("+T(yr.text)+")").join("|")+")",Wt=/(?:$|\*\/)/.source,Xr=/(?:.*?)/.source,Dr="("+$t+Xr+")",Lr=Yt+Dr+Wt;return new RegExp(Lr,"gim")}function mt(Ge){return Ge>=97&&Ge<=122||Ge>=65&&Ge<=90||Ge>=48&&Ge<=57}function _e(Ge){return Fi(Ge,"/node_modules/")}}function Xi(Z,ie,U){return Se(),ts_Rename_exports.getRenameInfo(w,Te(Z),ie,U||{})}function Aa(Z,ie,U,L,fe,T){let[it,mt]=typeof ie=="number"?[ie,void 0]:[ie.pos,ie.end];return{file:Z,startPosition:it,endPosition:mt,program:Ye(),host:e,formatContext:ts_formatting_exports.getFormatContext(L,e),cancellationToken:B,preferences:U,triggerReason:fe,kind:T}}function vs(Z,ie,U){return{file:Z,program:Ye(),host:e,span:ie,preferences:U,cancellationToken:B}}function $s(Z,ie){return ts_SmartSelectionRange_exports.getSmartSelectionRange(ie,x.getCurrentSourceFile(Z))}function li(Z,ie){let U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:emptyOptions,L=arguments.length>3?arguments[3]:void 0,fe=arguments.length>4?arguments[4]:void 0;Se();let T=Te(Z);return ts_refactor_exports.getApplicableRefactors(Aa(T,ie,U,emptyOptions,L,fe))}function Yi(Z,ie,U,L,fe){let T=arguments.length>5&&arguments[5]!==void 0?arguments[5]:emptyOptions;Se();let it=Te(Z);return ts_refactor_exports.getEditsForRefactor(Aa(it,U,T,ie),L,fe)}function Qi(Z,ie){return ie===0?{line:0,character:0}:ae.toLineColumnOffset(Z,ie)}function bs(Z,ie){Se();let U=ts_CallHierarchy_exports.resolveCallHierarchyDeclaration(w,getTouchingPropertyName(Te(Z),ie));return U&&mapOneOrMany(U,L=>ts_CallHierarchy_exports.createCallHierarchyItem(w,L))}function Ai(Z,ie){Se();let U=Te(Z),L=firstOrOnly(ts_CallHierarchy_exports.resolveCallHierarchyDeclaration(w,ie===0?U:getTouchingPropertyName(U,ie)));return L?ts_CallHierarchy_exports.getIncomingCalls(w,L,B):[]}function xn(Z,ie){Se();let U=Te(Z),L=firstOrOnly(ts_CallHierarchy_exports.resolveCallHierarchyDeclaration(w,ie===0?U:getTouchingPropertyName(U,ie)));return L?ts_CallHierarchy_exports.getOutgoingCalls(w,L):[]}function Dt(Z,ie){let U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:emptyOptions;Se();let L=Te(Z);return ts_InlayHints_exports.provideInlayHints(vs(L,ie,U))}let Pi={dispose:pt,cleanupSemanticCache:Ve,getSyntacticDiagnostics:Gt,getSemanticDiagnostics:Nt,getSuggestionDiagnostics:Xt,getCompilerOptionsDiagnostics:er,getSyntacticClassifications:br,getSemanticClassifications:On,getEncodedSyntacticClassifications:Kr,getEncodedSemanticClassifications:nr,getCompletionsAtPosition:Tn,getCompletionEntryDetails:Hr,getCompletionEntrySymbol:Gi,getSignatureHelpItems:Nn,getQuickInfoAtPosition:pn,getDefinitionAtPosition:kn,getDefinitionAndBoundSpan:an,getImplementationAtPosition:$i,getTypeDefinitionAtPosition:mr,getReferencesAtPosition:_r,findReferences:In,getFileReferences:pr,getOccurrencesAtPosition:dn,getDocumentHighlights:Ur,getNameOrDottedNameSpan:oi,getBreakpointStatementAtPosition:cr,getNavigateToItems:Zt,getRenameInfo:Xi,getSmartSelectionRange:$s,findRenameLocations:Gr,getNavigationBarItems:$r,getNavigationTree:hr,getOutliningSpans:wa,getTodoComments:ci,getBraceMatchingAtPosition:Ki,getIndentationAtPosition:Mn,getFormattingEditsForRange:_i,getFormattingEditsForDocument:Ca,getFormattingEditsAfterKeystroke:St,getDocCommentTemplateAtPosition:xe,isValidBraceCompletionAtPosition:Le,getJsxClosingTagAtPosition:Re,getSpanOfEnclosingComment:ys,getCodeFixesAtPosition:ue,getCombinedCodeFix:He,applyCodeActionCommand:Kt,organizeImports:_t,getEditsForFileRename:ft,getEmitOutput:Or,getNonBoundSourceFile:ar,getProgram:Ye,getCurrentProgram:()=>w,getAutoImportProvider:Ne,updateIsDefinitionOfReferencedSymbols:oe,getApplicableRefactors:li,getEditsForRefactor:Yi,toLineColumnOffset:Qi,getSourceMapper:()=>ae,clearSourceMapperCache:()=>ae.clearCache(),prepareCallHierarchy:bs,provideCallHierarchyIncomingCalls:Ai,provideCallHierarchyOutgoingCalls:xn,toggleLineComment:Ct,toggleMultilineComment:Mt,commentSelection:It,uncommentSelection:Mr,provideInlayHints:Dt,getSupportedCodeFixes:v7};switch(f){case 0:break;case 1:M2.forEach(Z=>Pi[Z]=()=>{throw new Error(`LanguageService Operation: ${Z} not allowed in LanguageServiceMode.PartialSemantic`)});break;case 2:M7.forEach(Z=>Pi[Z]=()=>{throw new Error(`LanguageService Operation: ${Z} not allowed in LanguageServiceMode.Syntactic`)});break;default:Y.assertNever(f)}return Pi}function uB(e){return e.nameTable||pB(e),e.nameTable}function pB(e){let t=e.nameTable=new Map;e.forEachChild(function r(s){if(yt(s)&&!isTagName(s)&&s.escapedText||Ta(s)&&fB(s)){let f=b4(s);t.set(f,t.get(f)===void 0?s.pos:-1)}else if(vn(s)){let f=s.escapedText;t.set(f,t.get(f)===void 0?s.pos:-1)}if(xr(s,r),ya(s))for(let f of s.jsDoc)xr(f,r)})}function fB(e){return c4(e)||e.parent.kind===280||hB(e)||l4(e)}function S7(e){let t=dB(e);return t&&(Hs(t.parent)||p2(t.parent))?t:void 0}function dB(e){switch(e.kind){case 10:case 14:case 8:if(e.parent.kind===164)return Wy(e.parent.parent)?e.parent.parent:void 0;case 79:return Wy(e.parent)&&(e.parent.parent.kind===207||e.parent.parent.kind===289)&&e.parent.name===e?e.parent:void 0}}function mB(e,t){let r=S7(e);if(r){let s=t.getContextualType(r.parent),f=s&&x7(r,t,s,!1);if(f&&f.length===1)return fo(f)}return t.getSymbolAtLocation(e)}function x7(e,t,r,s){let f=getNameFromPropertyName(e.name);if(!f)return Bt;if(!r.isUnion()){let w=r.getProperty(f);return w?[w]:Bt}let x=qt(r.types,w=>(Hs(e.parent)||p2(e.parent))&&t.isTypeInvalidDueToUnionDiscriminant(w,e.parent)?void 0:w.getProperty(f));if(s&&(x.length===0||x.length===r.types.length)){let w=r.getProperty(f);if(w)return[w]}return x.length===0?qt(r.types,w=>w.getProperty(f)):x}function hB(e){return e&&e.parent&&e.parent.kind===209&&e.parent.argumentExpression===e}function gB(e){if(iy)return tn(ma(Un(iy.getExecutingFilePath())),aS(e));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}var E7,wd,Cd,w7,O2,Ad,Pd,C7,A7,P7,D7,k7,I7,N7,O7,M2,M7,yB=D({"src/services/services.ts"(){"use strict";L2(),L2(),p7(),f7(),E7="0.8",wd=class{constructor(e,t,r){this.pos=t,this.end=r,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.kind=e}assertHasRealPosition(e){Y.assert(!hs(this.pos)&&!hs(this.end),e||"Node must have a real position for this operation")}getSourceFile(){return Si(this)}getStart(e,t){return this.assertHasRealPosition(),Io(this,e,t)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(e){return this.assertHasRealPosition(),this.getEnd()-this.getStart(e)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(e){return this.assertHasRealPosition(),this.getStart(e)-this.pos}getFullText(e){return this.assertHasRealPosition(),(e||this.getSourceFile()).text.substring(this.pos,this.end)}getText(e){return this.assertHasRealPosition(),e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())}getChildCount(e){return this.getChildren(e).length}getChildAt(e,t){return this.getChildren(t)[e]}getChildren(e){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),this._children||(this._children=sB(this,e))}getFirstToken(e){this.assertHasRealPosition();let t=this.getChildren(e);if(!t.length)return;let r=Ae(t,s=>s.kind<312||s.kind>353);return r.kind<163?r:r.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();let t=this.getChildren(e),r=Cn(t);if(r)return r.kind<163?r:r.getLastToken(e)}forEachChild(e,t){return xr(this,e,t)}},Cd=class{constructor(e,t){this.pos=e,this.end=t,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0}getSourceFile(){return Si(this)}getStart(e,t){return Io(this,e,t)}getFullStart(){return this.pos}getEnd(){return this.end}getWidth(e){return this.getEnd()-this.getStart(e)}getFullWidth(){return this.end-this.pos}getLeadingTriviaWidth(e){return this.getStart(e)-this.pos}getFullText(e){return(e||this.getSourceFile()).text.substring(this.pos,this.end)}getText(e){return e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())}getChildCount(){return this.getChildren().length}getChildAt(e){return this.getChildren()[e]}getChildren(){return this.kind===1&&this.jsDoc||Bt}getFirstToken(){}getLastToken(){}forEachChild(){}},w7=class{constructor(e,t){this.id=0,this.mergeId=0,this.flags=e,this.escapedName=t}getFlags(){return this.flags}get name(){return rf(this)}getEscapedName(){return this.escapedName}getName(){return this.name}getDeclarations(){return this.declarations}getDocumentationComment(e){if(!this.documentationComment)if(this.documentationComment=Bt,!this.declarations&&$y(this)&&this.links.target&&$y(this.links.target)&&this.links.target.links.tupleLabelDeclaration){let t=this.links.target.links.tupleLabelDeclaration;this.documentationComment=cu([t],e)}else this.documentationComment=cu(this.declarations,e);return this.documentationComment}getContextualDocumentationComment(e,t){if(e){if(Tl(e)&&(this.contextualGetAccessorDocumentationComment||(this.contextualGetAccessorDocumentationComment=cu(ee(this.declarations,Tl),t)),I(this.contextualGetAccessorDocumentationComment)))return this.contextualGetAccessorDocumentationComment;if(bl(e)&&(this.contextualSetAccessorDocumentationComment||(this.contextualSetAccessorDocumentationComment=cu(ee(this.declarations,bl),t)),I(this.contextualSetAccessorDocumentationComment)))return this.contextualSetAccessorDocumentationComment}return this.getDocumentationComment(t)}getJsDocTags(e){return this.tags===void 0&&(this.tags=Ed(this.declarations,e)),this.tags}getContextualJsDocTags(e,t){if(e){if(Tl(e)&&(this.contextualGetAccessorTags||(this.contextualGetAccessorTags=Ed(ee(this.declarations,Tl),t)),I(this.contextualGetAccessorTags)))return this.contextualGetAccessorTags;if(bl(e)&&(this.contextualSetAccessorTags||(this.contextualSetAccessorTags=Ed(ee(this.declarations,bl),t)),I(this.contextualSetAccessorTags)))return this.contextualSetAccessorTags}return this.getJsDocTags(t)}},O2=class extends Cd{constructor(e,t,r){super(t,r),this.kind=e}},Ad=class extends Cd{constructor(e,t,r){super(t,r),this.kind=79}get text(){return qr(this)}},Ad.prototype.kind=79,Pd=class extends Cd{constructor(e,t,r){super(t,r),this.kind=80}get text(){return qr(this)}},Pd.prototype.kind=80,C7=class{constructor(e,t){this.checker=e,this.flags=t}getFlags(){return this.flags}getSymbol(){return this.symbol}getProperties(){return this.checker.getPropertiesOfType(this)}getProperty(e){return this.checker.getPropertyOfType(this,e)}getApparentProperties(){return this.checker.getAugmentedPropertiesOfType(this)}getCallSignatures(){return this.checker.getSignaturesOfType(this,0)}getConstructSignatures(){return this.checker.getSignaturesOfType(this,1)}getStringIndexType(){return this.checker.getIndexTypeOfType(this,0)}getNumberIndexType(){return this.checker.getIndexTypeOfType(this,1)}getBaseTypes(){return this.isClassOrInterface()?this.checker.getBaseTypes(this):void 0}isNullableType(){return this.checker.isNullableType(this)}getNonNullableType(){return this.checker.getNonNullableType(this)}getNonOptionalType(){return this.checker.getNonOptionalType(this)}getConstraint(){return this.checker.getBaseConstraintOfType(this)}getDefault(){return this.checker.getDefaultFromTypeParameter(this)}isUnion(){return!!(this.flags&1048576)}isIntersection(){return!!(this.flags&2097152)}isUnionOrIntersection(){return!!(this.flags&3145728)}isLiteral(){return!!(this.flags&2432)}isStringLiteral(){return!!(this.flags&128)}isNumberLiteral(){return!!(this.flags&256)}isTypeParameter(){return!!(this.flags&262144)}isClassOrInterface(){return!!(Bf(this)&3)}isClass(){return!!(Bf(this)&1)}isIndexType(){return!!(this.flags&4194304)}get typeArguments(){if(Bf(this)&4)return this.checker.getTypeArguments(this)}},A7=class{constructor(e,t){this.checker=e,this.flags=t}getDeclaration(){return this.declaration}getTypeParameters(){return this.typeParameters}getParameters(){return this.parameters}getReturnType(){return this.checker.getReturnTypeOfSignature(this)}getTypeParameterAtPosition(e){let t=this.checker.getParameterType(this,e);if(t.isIndexType()&&Kx(t.type)){let r=t.type.getConstraint();if(r)return this.checker.getIndexType(r)}return t}getDocumentationComment(){return this.documentationComment||(this.documentationComment=cu(Cp(this.declaration),this.checker))}getJsDocTags(){return this.jsDocTags||(this.jsDocTags=Ed(Cp(this.declaration),this.checker))}},P7=class extends wd{constructor(e,t,r){super(e,t,r),this.kind=308}update(e,t){return k2(this,e,t)}getLineAndCharacterOfPosition(e){return Ls(this,e)}getLineStarts(){return ss(this)}getPositionOfLineAndCharacter(e,t,r){return dy(ss(this),e,t,this.text,r)}getLineEndOfPosition(e){let{line:t}=this.getLineAndCharacterOfPosition(e),r=this.getLineStarts(),s;t+1>=r.length&&(s=this.getEnd()),s||(s=r[t+1]-1);let f=this.getFullText();return f[s]===` +`&&f[s-1]==="\r"?s-1:s}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){let e=Be();return this.forEachChild(f),e;function t(x){let w=s(x);w&&e.add(w,x)}function r(x){let w=e.get(x);return w||e.set(x,w=[]),w}function s(x){let w=Ey(x);return w&&(Ws(w)&&bn(w.expression)?w.expression.name.text:vl(w)?getNameFromPropertyName(w):void 0)}function f(x){switch(x.kind){case 259:case 215:case 171:case 170:let w=x,A=s(w);if(A){let N=r(A),X=Cn(N);X&&w.parent===X.parent&&w.symbol===X.symbol?w.body&&!X.body&&(N[N.length-1]=w):N.push(w)}xr(x,f);break;case 260:case 228:case 261:case 262:case 263:case 264:case 268:case 278:case 273:case 270:case 271:case 174:case 175:case 184:t(x),xr(x,f);break;case 166:if(!rn(x,16476))break;case 257:case 205:{let N=x;if(df(N.name)){xr(N.name,f);break}N.initializer&&f(N.initializer)}case 302:case 169:case 168:t(x);break;case 275:let g=x;g.exportClause&&(iE(g.exportClause)?c(g.exportClause.elements,f):f(g.exportClause.name));break;case 269:let B=x.importClause;B&&(B.name&&t(B.name),B.namedBindings&&(B.namedBindings.kind===271?t(B.namedBindings):c(B.namedBindings.elements,f)));break;case 223:ps(x)!==0&&t(x);default:xr(x,f)}}}},D7=class{constructor(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r}getLineAndCharacterOfPosition(e){return Ls(this,e)}},k7=class{constructor(e){this.host=e}getCurrentSourceFile(e){var t,r,s,f,x,w,A,g;let B=this.host.getScriptSnapshot(e);if(!B)throw new Error("Could not find file: '"+e+"'.");let N=getScriptKind(e,this.host),X=this.host.getScriptVersion(e),F;if(this.currentFileName!==e){let $={languageVersion:99,impliedNodeFormat:getImpliedNodeFormatForFile(Ui(e,this.host.getCurrentDirectory(),((s=(r=(t=this.host).getCompilerHost)==null?void 0:r.call(t))==null?void 0:s.getCanonicalFileName)||D4(this.host)),(g=(A=(w=(x=(f=this.host).getCompilerHost)==null?void 0:x.call(f))==null?void 0:w.getModuleResolutionCache)==null?void 0:A.call(w))==null?void 0:g.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:Ex(this.host.getCompilationSettings())};F=N2(e,B,$,X,!0,N)}else if(this.currentFileVersion!==X){let $=B.getChangeRange(this.currentFileScriptSnapshot);F=T7(this.currentSourceFile,B,X,$)}return F&&(this.currentFileVersion=X,this.currentFileName=e,this.currentFileScriptSnapshot=B,this.currentSourceFile=F),this.currentSourceFile}},I7={isCancellationRequested:w_,throwIfCancellationRequested:yn},N7=class{constructor(e){this.cancellationToken=e}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var e;if(this.isCancellationRequested())throw(e=rs)==null||e.instant(rs.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new Rp}},O7=class{constructor(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:20;this.hostCancellationToken=e,this.throttleWaitMilliseconds=t,this.lastCancellationCheckTime=0}isCancellationRequested(){let e=ts();return Math.abs(e-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=e,this.hostCancellationToken.isCancellationRequested()):!1}throwIfCancellationRequested(){var e;if(this.isCancellationRequested())throw(e=rs)==null||e.instant(rs.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new Rp}},M2=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes"],M7=[...M2,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getOccurrencesAtPosition","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors"],gx(_B())}}),vB=()=>{},bB=()=>{},TB=()=>{},SB=()=>{},xB=()=>{},EB=()=>{},wB=()=>{},CB=()=>{},AB=()=>{},PB=()=>{},DB=()=>{},kB=()=>{},IB=()=>{},NB=()=>{},OB=()=>{},MB=()=>{},LB=()=>{},RB=()=>{},jB=()=>{},JB=()=>{},L2=D({"src/services/_namespaces/ts.ts"(){"use strict";nn(),l7(),KF(),u7(),XF(),YF(),QF(),ZF(),eB(),tB(),rB(),nB(),iB(),aB(),yB(),vB(),bB(),TB(),SB(),xB(),EB(),wB(),CB(),AB(),PB(),DB(),p7(),f7(),kB(),IB(),NB(),OB(),MB(),LB(),RB(),jB(),JB()}}),FB=()=>{},L7={};y(L7,{ANONYMOUS:()=>ANONYMOUS,AccessFlags:()=>Cg,AssertionLevel:()=>$1,AssignmentDeclarationKind:()=>Mg,AssignmentKind:()=>Sv,Associativity:()=>Ev,BreakpointResolver:()=>ts_BreakpointResolver_exports,BuilderFileEmit:()=>BuilderFileEmit,BuilderProgramKind:()=>BuilderProgramKind,BuilderState:()=>BuilderState,BundleFileSectionKind:()=>ty,CallHierarchy:()=>ts_CallHierarchy_exports,CharacterCodes:()=>$g,CheckFlags:()=>Tg,CheckMode:()=>CheckMode,ClassificationType:()=>ClassificationType,ClassificationTypeNames:()=>ClassificationTypeNames,CommentDirectiveType:()=>ig,Comparison:()=>d,CompletionInfoFlags:()=>CompletionInfoFlags,CompletionTriggerKind:()=>CompletionTriggerKind,Completions:()=>ts_Completions_exports,ConfigFileProgramReloadLevel:()=>ConfigFileProgramReloadLevel,ContextFlags:()=>pg,CoreServicesShimHostAdapter:()=>CoreServicesShimHostAdapter,Debug:()=>Y,DiagnosticCategory:()=>qp,Diagnostics:()=>ve,DocumentHighlights:()=>DocumentHighlights,ElementFlags:()=>wg,EmitFlags:()=>Wp,EmitHint:()=>Qg,EmitOnly:()=>og,EndOfLineState:()=>EndOfLineState,EnumKind:()=>bg,ExitStatus:()=>cg,ExportKind:()=>ExportKind,Extension:()=>Kg,ExternalEmitHelpers:()=>Yg,FileIncludeKind:()=>ag,FilePreprocessingDiagnosticsKind:()=>sg,FileSystemEntryKind:()=>FileSystemEntryKind,FileWatcherEventKind:()=>FileWatcherEventKind,FindAllReferences:()=>ts_FindAllReferences_exports,FlattenLevel:()=>FlattenLevel,FlowFlags:()=>il,ForegroundColorEscapeSequences:()=>ForegroundColorEscapeSequences,FunctionFlags:()=>xv,GeneratedIdentifierFlags:()=>rg,GetLiteralTextFlags:()=>vv,GoToDefinition:()=>ts_GoToDefinition_exports,HighlightSpanKind:()=>HighlightSpanKind,ImportKind:()=>ImportKind,ImportsNotUsedAsValues:()=>Ug,IndentStyle:()=>IndentStyle,IndexKind:()=>Dg,InferenceFlags:()=>Ng,InferencePriority:()=>Ig,InlayHintKind:()=>InlayHintKind,InlayHints:()=>ts_InlayHints_exports,InternalEmitFlags:()=>Xg,InternalSymbolName:()=>Sg,InvalidatedProjectKind:()=>InvalidatedProjectKind,JsDoc:()=>ts_JsDoc_exports,JsTyping:()=>ts_JsTyping_exports,JsxEmit:()=>qg,JsxFlags:()=>tg,JsxReferenceKind:()=>Ag,LanguageServiceMode:()=>LanguageServiceMode,LanguageServiceShimHostAdapter:()=>LanguageServiceShimHostAdapter,LanguageVariant:()=>Hg,LexicalEnvironmentFlags:()=>ey,ListFormat:()=>ry,LogLevel:()=>Y1,MemberOverrideStatus:()=>lg,ModifierFlags:()=>Mp,ModuleDetectionKind:()=>Rg,ModuleInstanceState:()=>ModuleInstanceState,ModuleKind:()=>Bg,ModuleResolutionKind:()=>Lg,ModuleSpecifierEnding:()=>jv,NavigateTo:()=>ts_NavigateTo_exports,NavigationBar:()=>ts_NavigationBar_exports,NewLineKind:()=>zg,NodeBuilderFlags:()=>fg,NodeCheckFlags:()=>xg,NodeFactoryFlags:()=>Fv,NodeFlags:()=>Op,NodeResolutionFeatures:()=>NodeResolutionFeatures,ObjectFlags:()=>Fp,OperationCanceledException:()=>Rp,OperatorPrecedence:()=>wv,OrganizeImports:()=>ts_OrganizeImports_exports,OrganizeImportsMode:()=>OrganizeImportsMode,OuterExpressionKinds:()=>Zg,OutliningElementsCollector:()=>ts_OutliningElementsCollector_exports,OutliningSpanKind:()=>OutliningSpanKind,OutputFileType:()=>OutputFileType,PackageJsonAutoImportPreference:()=>PackageJsonAutoImportPreference,PackageJsonDependencyGroup:()=>PackageJsonDependencyGroup,PatternMatchKind:()=>PatternMatchKind,PollingInterval:()=>PollingInterval,PollingWatchKind:()=>Fg,PragmaKindFlags:()=>ny,PrivateIdentifierKind:()=>PrivateIdentifierKind,ProcessLevel:()=>ProcessLevel,QuotePreference:()=>QuotePreference,RelationComparisonResult:()=>Lp,Rename:()=>ts_Rename_exports,ScriptElementKind:()=>ScriptElementKind,ScriptElementKindModifier:()=>ScriptElementKindModifier,ScriptKind:()=>Wg,ScriptSnapshot:()=>ScriptSnapshot,ScriptTarget:()=>Vg,SemanticClassificationFormat:()=>SemanticClassificationFormat,SemanticMeaning:()=>SemanticMeaning,SemicolonPreference:()=>SemicolonPreference,SignatureCheckMode:()=>SignatureCheckMode,SignatureFlags:()=>Bp,SignatureHelp:()=>ts_SignatureHelp_exports,SignatureKind:()=>Pg,SmartSelectionRange:()=>ts_SmartSelectionRange_exports,SnippetKind:()=>zp,SortKind:()=>H1,StructureIsReused:()=>_g,SymbolAccessibility:()=>hg,SymbolDisplay:()=>ts_SymbolDisplay_exports,SymbolDisplayPartKind:()=>SymbolDisplayPartKind,SymbolFlags:()=>jp,SymbolFormatFlags:()=>mg,SyntaxKind:()=>Np,SyntheticSymbolKind:()=>gg,Ternary:()=>Og,ThrottledCancellationToken:()=>O7,TokenClass:()=>TokenClass,TokenFlags:()=>ng,TransformFlags:()=>Up,TypeFacts:()=>TypeFacts,TypeFlags:()=>Jp,TypeFormatFlags:()=>dg,TypeMapKind:()=>kg,TypePredicateKind:()=>yg,TypeReferenceSerializationKind:()=>vg,TypeScriptServicesFactory:()=>TypeScriptServicesFactory,UnionReduction:()=>ug,UpToDateStatusType:()=>UpToDateStatusType,VarianceFlags:()=>Eg,Version:()=>Version,VersionRange:()=>VersionRange,WatchDirectoryFlags:()=>Gg,WatchDirectoryKind:()=>Jg,WatchFileKind:()=>jg,WatchLogLevel:()=>WatchLogLevel,WatchType:()=>WatchType,accessPrivateIdentifier:()=>accessPrivateIdentifier,addEmitFlags:()=>addEmitFlags,addEmitHelper:()=>addEmitHelper,addEmitHelpers:()=>addEmitHelpers,addInternalEmitFlags:()=>addInternalEmitFlags,addNodeFactoryPatcher:()=>jL,addObjectAllocatorPatcher:()=>sM,addRange:()=>jr,addRelatedInfo:()=>Rl,addSyntheticLeadingComment:()=>addSyntheticLeadingComment,addSyntheticTrailingComment:()=>addSyntheticTrailingComment,addToSeen:()=>GO,advancedAsyncSuperHelper:()=>advancedAsyncSuperHelper,affectsDeclarationPathOptionDeclarations:()=>affectsDeclarationPathOptionDeclarations,affectsEmitOptionDeclarations:()=>affectsEmitOptionDeclarations,allKeysStartWithDot:()=>allKeysStartWithDot,altDirectorySeparator:()=>py,and:()=>E5,append:()=>tr,appendIfUnique:()=>g_,arrayFrom:()=>Za,arrayIsEqualTo:()=>Hc,arrayIsHomogeneous:()=>fL,arrayIsSorted:()=>Wc,arrayOf:()=>yo,arrayReverseIterator:()=>y_,arrayToMap:()=>Zc,arrayToMultiMap:()=>bo,arrayToNumericMap:()=>Os,arraysEqual:()=>ke,assertType:()=>C5,assign:()=>vo,assignHelper:()=>assignHelper,asyncDelegator:()=>asyncDelegator,asyncGeneratorHelper:()=>asyncGeneratorHelper,asyncSuperHelper:()=>asyncSuperHelper,asyncValues:()=>asyncValues,attachFileToDiagnostics:()=>qs,awaitHelper:()=>awaitHelper,awaiterHelper:()=>awaiterHelper,base64decode:()=>mO,base64encode:()=>dO,binarySearch:()=>Ya,binarySearchKey:()=>b_,bindSourceFile:()=>bindSourceFile,breakIntoCharacterSpans:()=>breakIntoCharacterSpans,breakIntoWordSpans:()=>breakIntoWordSpans,buildLinkParts:()=>buildLinkParts,buildOpts:()=>buildOpts,buildOverload:()=>buildOverload,bundlerModuleNameResolver:()=>bundlerModuleNameResolver,canBeConvertedToAsync:()=>canBeConvertedToAsync,canHaveDecorators:()=>ME,canHaveExportModifier:()=>AL,canHaveFlowNode:()=>jI,canHaveIllegalDecorators:()=>rJ,canHaveIllegalModifiers:()=>nJ,canHaveIllegalType:()=>tJ,canHaveIllegalTypeParameters:()=>IE,canHaveJSDoc:()=>Af,canHaveLocals:()=>zP,canHaveModifiers:()=>fc,canHaveSymbol:()=>UP,canJsonReportNoInputFiles:()=>canJsonReportNoInputFiles,canProduceDiagnostics:()=>canProduceDiagnostics,canUsePropertyAccess:()=>PL,canWatchDirectoryOrFile:()=>canWatchDirectoryOrFile,cartesianProduct:()=>P5,cast:()=>ti,chainBundle:()=>chainBundle,chainDiagnosticMessages:()=>lM,changeAnyExtension:()=>RT,changeCompilerHostLikeToUseCache:()=>changeCompilerHostLikeToUseCache,changeExtension:()=>KM,changesAffectModuleResolution:()=>cD,changesAffectingProgramStructure:()=>lD,childIsDecorated:()=>h0,classElementOrClassElementParameterIsDecorated:()=>sI,classOrConstructorParameterIsDecorated:()=>aI,classPrivateFieldGetHelper:()=>classPrivateFieldGetHelper,classPrivateFieldInHelper:()=>classPrivateFieldInHelper,classPrivateFieldSetHelper:()=>classPrivateFieldSetHelper,classicNameResolver:()=>classicNameResolver,classifier:()=>ts_classifier_exports,cleanExtendedConfigCache:()=>cleanExtendedConfigCache,clear:()=>nt,clearMap:()=>qO,clearSharedExtendedConfigFileWatcher:()=>clearSharedExtendedConfigFileWatcher,climbPastPropertyAccess:()=>climbPastPropertyAccess,climbPastPropertyOrElementAccess:()=>climbPastPropertyOrElementAccess,clone:()=>E_,cloneCompilerOptions:()=>cloneCompilerOptions,closeFileWatcher:()=>MO,closeFileWatcherOf:()=>closeFileWatcherOf,codefix:()=>ts_codefix_exports,collapseTextChangeRangesAcrossMultipleVersions:()=>CA,collectExternalModuleInfo:()=>collectExternalModuleInfo,combine:()=>$c,combinePaths:()=>tn,commentPragmas:()=>Vp,commonOptionsWithBuild:()=>commonOptionsWithBuild,commonPackageFolders:()=>Pv,compact:()=>Gc,compareBooleans:()=>j1,compareDataObjects:()=>px,compareDiagnostics:()=>av,compareDiagnosticsSkipRelatedInformation:()=>qf,compareEmitHelpers:()=>compareEmitHelpers,compareNumberOfDirectorySeparators:()=>$M,comparePaths:()=>tA,comparePathsCaseInsensitive:()=>eA,comparePathsCaseSensitive:()=>Z5,comparePatternKeys:()=>comparePatternKeys,compareProperties:()=>R1,compareStringsCaseInsensitive:()=>C_,compareStringsCaseInsensitiveEslintCompatible:()=>O1,compareStringsCaseSensitive:()=>ri,compareStringsCaseSensitiveUI:()=>L1,compareTextSpans:()=>I1,compareValues:()=>Vr,compileOnSaveCommandLineOption:()=>compileOnSaveCommandLineOption,compilerOptionsAffectDeclarationPath:()=>DM,compilerOptionsAffectEmit:()=>PM,compilerOptionsAffectSemanticDiagnostics:()=>AM,compilerOptionsDidYouMeanDiagnostics:()=>compilerOptionsDidYouMeanDiagnostics,compilerOptionsIndicateEsModules:()=>compilerOptionsIndicateEsModules,compose:()=>k1,computeCommonSourceDirectoryOfFilenames:()=>computeCommonSourceDirectoryOfFilenames,computeLineAndCharacterOfPosition:()=>my,computeLineOfPosition:()=>k_,computeLineStarts:()=>Kp,computePositionOfLineAndCharacter:()=>dy,computeSignature:()=>computeSignature,computeSignatureWithDiagnostics:()=>computeSignatureWithDiagnostics,computeSuggestionDiagnostics:()=>computeSuggestionDiagnostics,concatenate:()=>Ft,concatenateDiagnosticMessageChains:()=>uM,consumesNodeCoreModules:()=>consumesNodeCoreModules,contains:()=>pe,containsIgnoredPath:()=>Hx,containsObjectRestOrSpread:()=>A2,containsParseError:()=>Ky,containsPath:()=>jT,convertCompilerOptionsForTelemetry:()=>convertCompilerOptionsForTelemetry,convertCompilerOptionsFromJson:()=>convertCompilerOptionsFromJson,convertJsonOption:()=>convertJsonOption,convertToBase64:()=>ix,convertToObject:()=>convertToObject,convertToObjectWorker:()=>convertToObjectWorker,convertToOptionsWithAbsolutePaths:()=>convertToOptionsWithAbsolutePaths,convertToRelativePath:()=>nA,convertToTSConfig:()=>convertToTSConfig,convertTypeAcquisitionFromJson:()=>convertTypeAcquisitionFromJson,copyComments:()=>copyComments,copyEntries:()=>dD,copyLeadingComments:()=>copyLeadingComments,copyProperties:()=>H,copyTrailingAsLeadingComments:()=>copyTrailingAsLeadingComments,copyTrailingComments:()=>copyTrailingComments,couldStartTrivia:()=>pA,countWhere:()=>Xe,createAbstractBuilder:()=>createAbstractBuilder,createAccessorPropertyBackingField:()=>LJ,createAccessorPropertyGetRedirector:()=>RJ,createAccessorPropertySetRedirector:()=>jJ,createBaseNodeFactory:()=>S8,createBinaryExpressionTrampoline:()=>PJ,createBindingHelper:()=>createBindingHelper,createBuildInfo:()=>createBuildInfo,createBuilderProgram:()=>createBuilderProgram,createBuilderProgramUsingProgramBuildInfo:()=>createBuilderProgramUsingProgramBuildInfo,createBuilderStatusReporter:()=>createBuilderStatusReporter,createCacheWithRedirects:()=>createCacheWithRedirects,createCacheableExportInfoMap:()=>createCacheableExportInfoMap,createCachedDirectoryStructureHost:()=>createCachedDirectoryStructureHost,createClassifier:()=>createClassifier,createCommentDirectivesMap:()=>JD,createCompilerDiagnostic:()=>Ol,createCompilerDiagnosticForInvalidCustomType:()=>createCompilerDiagnosticForInvalidCustomType,createCompilerDiagnosticFromMessageChain:()=>cM,createCompilerHost:()=>createCompilerHost,createCompilerHostFromProgramHost:()=>createCompilerHostFromProgramHost,createCompilerHostWorker:()=>createCompilerHostWorker,createDetachedDiagnostic:()=>Ro,createDiagnosticCollection:()=>TN,createDiagnosticForFileFromMessageChain:()=>mk,createDiagnosticForNode:()=>uk,createDiagnosticForNodeArray:()=>pk,createDiagnosticForNodeArrayFromMessageChain:()=>dk,createDiagnosticForNodeFromMessageChain:()=>fk,createDiagnosticForNodeInSourceFile:()=>P3,createDiagnosticForRange:()=>gk,createDiagnosticMessageChainFromDiagnostic:()=>hk,createDiagnosticReporter:()=>createDiagnosticReporter,createDocumentPositionMapper:()=>createDocumentPositionMapper,createDocumentRegistry:()=>createDocumentRegistry,createDocumentRegistryInternal:()=>createDocumentRegistryInternal,createEmitAndSemanticDiagnosticsBuilderProgram:()=>createEmitAndSemanticDiagnosticsBuilderProgram,createEmitHelperFactory:()=>createEmitHelperFactory,createEmptyExports:()=>Dj,createExpressionForJsxElement:()=>Ij,createExpressionForJsxFragment:()=>Nj,createExpressionForObjectLiteralElementLike:()=>Fj,createExpressionForPropertyName:()=>vE,createExpressionFromEntityName:()=>yE,createExternalHelpersImportDeclarationIfNeeded:()=>$j,createFileDiagnostic:()=>iv,createFileDiagnosticFromMessageChain:()=>r0,createForOfBindingStatement:()=>Oj,createGetCanonicalFileName:()=>wp,createGetSourceFile:()=>createGetSourceFile,createGetSymbolAccessibilityDiagnosticForNode:()=>createGetSymbolAccessibilityDiagnosticForNode,createGetSymbolAccessibilityDiagnosticForNodeName:()=>createGetSymbolAccessibilityDiagnosticForNodeName,createGetSymbolWalker:()=>createGetSymbolWalker,createIncrementalCompilerHost:()=>createIncrementalCompilerHost,createIncrementalProgram:()=>createIncrementalProgram,createInputFiles:()=>VL,createInputFilesWithFilePaths:()=>C8,createInputFilesWithFileTexts:()=>A8,createJsxFactoryExpression:()=>gE,createLanguageService:()=>lB,createLanguageServiceSourceFile:()=>N2,createMemberAccessForPropertyName:()=>hd,createModeAwareCache:()=>createModeAwareCache,createModeAwareCacheKey:()=>createModeAwareCacheKey,createModuleResolutionCache:()=>createModuleResolutionCache,createModuleResolutionLoader:()=>createModuleResolutionLoader,createModuleSpecifierResolutionHost:()=>createModuleSpecifierResolutionHost,createMultiMap:()=>Be,createNodeConverters:()=>x8,createNodeFactory:()=>Zf,createOptionNameMap:()=>createOptionNameMap,createOverload:()=>createOverload,createPackageJsonImportFilter:()=>createPackageJsonImportFilter,createPackageJsonInfo:()=>createPackageJsonInfo,createParenthesizerRules:()=>createParenthesizerRules,createPatternMatcher:()=>createPatternMatcher,createPrependNodes:()=>createPrependNodes,createPrinter:()=>createPrinter,createPrinterWithDefaults:()=>createPrinterWithDefaults,createPrinterWithRemoveComments:()=>createPrinterWithRemoveComments,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>createPrinterWithRemoveCommentsNeverAsciiEscape,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>createPrinterWithRemoveCommentsOmitTrailingSemicolon,createProgram:()=>createProgram,createProgramHost:()=>createProgramHost,createPropertyNameNodeForIdentifierOrLiteral:()=>EL,createQueue:()=>Fr,createRange:()=>Jf,createRedirectedBuilderProgram:()=>createRedirectedBuilderProgram,createResolutionCache:()=>createResolutionCache,createRuntimeTypeSerializer:()=>createRuntimeTypeSerializer,createScanner:()=>Po,createSemanticDiagnosticsBuilderProgram:()=>createSemanticDiagnosticsBuilderProgram,createSet:()=>Cr,createSolutionBuilder:()=>createSolutionBuilder,createSolutionBuilderHost:()=>createSolutionBuilderHost,createSolutionBuilderWithWatch:()=>createSolutionBuilderWithWatch,createSolutionBuilderWithWatchHost:()=>createSolutionBuilderWithWatchHost,createSortedArray:()=>zc,createSourceFile:()=>YE,createSourceMapGenerator:()=>createSourceMapGenerator,createSourceMapSource:()=>HL,createSuperAccessVariableStatement:()=>createSuperAccessVariableStatement,createSymbolTable:()=>oD,createSymlinkCache:()=>MM,createSystemWatchFunctions:()=>createSystemWatchFunctions,createTextChange:()=>createTextChange,createTextChangeFromStartLength:()=>createTextChangeFromStartLength,createTextChangeRange:()=>Zp,createTextRangeFromNode:()=>createTextRangeFromNode,createTextRangeFromSpan:()=>createTextRangeFromSpan,createTextSpan:()=>L_,createTextSpanFromBounds:()=>ha,createTextSpanFromNode:()=>createTextSpanFromNode,createTextSpanFromRange:()=>createTextSpanFromRange,createTextSpanFromStringLiteralLikeContent:()=>createTextSpanFromStringLiteralLikeContent,createTextWriter:()=>DN,createTokenRange:()=>bO,createTypeChecker:()=>createTypeChecker,createTypeReferenceDirectiveResolutionCache:()=>createTypeReferenceDirectiveResolutionCache,createTypeReferenceResolutionLoader:()=>createTypeReferenceResolutionLoader,createUnderscoreEscapedMultiMap:()=>Ht,createUnparsedSourceFile:()=>UL,createWatchCompilerHost:()=>createWatchCompilerHost2,createWatchCompilerHostOfConfigFile:()=>createWatchCompilerHostOfConfigFile,createWatchCompilerHostOfFilesAndCompilerOptions:()=>createWatchCompilerHostOfFilesAndCompilerOptions,createWatchFactory:()=>createWatchFactory,createWatchHost:()=>createWatchHost,createWatchProgram:()=>createWatchProgram,createWatchStatusReporter:()=>createWatchStatusReporter,createWriteFileMeasuringIO:()=>createWriteFileMeasuringIO,declarationNameToString:()=>A3,decodeMappings:()=>decodeMappings,decodedTextSpanIntersectsWith:()=>Sy,decorateHelper:()=>decorateHelper,deduplicate:()=>ji,defaultIncludeSpec:()=>defaultIncludeSpec,defaultInitCompilerOptions:()=>defaultInitCompilerOptions,defaultMaximumTruncationLength:()=>r8,detectSortCaseSensitivity:()=>Vc,diagnosticCategoryName:()=>z5,diagnosticToString:()=>diagnosticToString,directoryProbablyExists:()=>sx,directorySeparator:()=>zn,displayPart:()=>displayPart,displayPartsToString:()=>cB,disposeEmitNodes:()=>disposeEmitNodes,documentSpansEqual:()=>documentSpansEqual,dumpTracingLegend:()=>dumpTracingLegend,elementAt:()=>wT,elideNodes:()=>IJ,emitComments:()=>U4,emitDetachedComments:()=>GN,emitFiles:()=>emitFiles,emitFilesAndReportErrors:()=>emitFilesAndReportErrors,emitFilesAndReportErrorsAndGetExitStatus:()=>emitFilesAndReportErrorsAndGetExitStatus,emitModuleKindIsNonNodeESM:()=>mM,emitNewLineBeforeLeadingCommentOfPosition:()=>HN,emitNewLineBeforeLeadingComments:()=>B4,emitNewLineBeforeLeadingCommentsOfPosition:()=>q4,emitSkippedWithNoDiagnostics:()=>emitSkippedWithNoDiagnostics,emitUsingBuildInfo:()=>emitUsingBuildInfo,emptyArray:()=>Bt,emptyFileSystemEntries:()=>T8,emptyMap:()=>V1,emptyOptions:()=>emptyOptions,emptySet:()=>ET,endsWith:()=>es,ensurePathIsNonModuleName:()=>_y,ensureScriptKind:()=>Nx,ensureTrailingDirectorySeparator:()=>wo,entityNameToString:()=>ls,enumerateInsertsAndDeletes:()=>A5,equalOwnProperties:()=>S_,equateStringsCaseInsensitive:()=>Ms,equateStringsCaseSensitive:()=>To,equateValues:()=>fa,esDecorateHelper:()=>esDecorateHelper,escapeJsxAttributeString:()=>A4,escapeLeadingUnderscores:()=>vi,escapeNonAsciiString:()=>Of,escapeSnippetText:()=>xL,escapeString:()=>Nf,every:()=>me,expandPreOrPostfixIncrementOrDecrementExpression:()=>Bj,explainFiles:()=>explainFiles,explainIfFileIsRedirectAndImpliedFormat:()=>explainIfFileIsRedirectAndImpliedFormat,exportAssignmentIsAlias:()=>I0,exportStarHelper:()=>exportStarHelper,expressionResultIsUnused:()=>gL,extend:()=>S,extendsHelper:()=>extendsHelper,extensionFromPath:()=>QM,extensionIsTS:()=>qx,externalHelpersModuleNameText:()=>Kf,factory:()=>si,fileExtensionIs:()=>ns,fileExtensionIsOneOf:()=>da,fileIncludeReasonToDiagnostics:()=>fileIncludeReasonToDiagnostics,filter:()=>ee,filterMutate:()=>je,filterSemanticDiagnostics:()=>filterSemanticDiagnostics,find:()=>Ae,findAncestor:()=>zi,findBestPatternMatch:()=>TT,findChildOfKind:()=>findChildOfKind,findComputedPropertyNameCacheAssignment:()=>JJ,findConfigFile:()=>findConfigFile,findContainingList:()=>findContainingList,findDiagnosticForNode:()=>findDiagnosticForNode,findFirstNonJsxWhitespaceToken:()=>findFirstNonJsxWhitespaceToken,findIndex:()=>he,findLast:()=>te,findLastIndex:()=>Pe,findListItemInfo:()=>findListItemInfo,findMap:()=>R,findModifier:()=>findModifier,findNextToken:()=>findNextToken,findPackageJson:()=>findPackageJson,findPackageJsons:()=>findPackageJsons,findPrecedingMatchingToken:()=>findPrecedingMatchingToken,findPrecedingToken:()=>findPrecedingToken,findSuperStatementIndex:()=>findSuperStatementIndex,findTokenOnLeftOfPosition:()=>findTokenOnLeftOfPosition,findUseStrictPrologue:()=>TE,first:()=>fo,firstDefined:()=>q,firstDefinedIterator:()=>W,firstIterator:()=>v_,firstOrOnly:()=>firstOrOnly,firstOrUndefined:()=>pa,firstOrUndefinedIterator:()=>Xc,fixupCompilerOptions:()=>fixupCompilerOptions,flatMap:()=>ne,flatMapIterator:()=>Fe,flatMapToMutable:()=>ge,flatten:()=>ct,flattenCommaList:()=>BJ,flattenDestructuringAssignment:()=>flattenDestructuringAssignment,flattenDestructuringBinding:()=>flattenDestructuringBinding,flattenDiagnosticMessageText:()=>flattenDiagnosticMessageText,forEach:()=>c,forEachAncestor:()=>uD,forEachAncestorDirectory:()=>FT,forEachChild:()=>xr,forEachChildRecursively:()=>D2,forEachEmittedFile:()=>forEachEmittedFile,forEachEnclosingBlockScopeContainer:()=>ok,forEachEntry:()=>pD,forEachExternalModuleToImportFrom:()=>forEachExternalModuleToImportFrom,forEachImportClauseDeclaration:()=>NI,forEachKey:()=>fD,forEachLeadingCommentRange:()=>fA,forEachNameInAccessChainWalkingLeft:()=>QO,forEachResolvedProjectReference:()=>forEachResolvedProjectReference,forEachReturnStatement:()=>Pk,forEachRight:()=>M,forEachTrailingCommentRange:()=>dA,forEachUnique:()=>forEachUnique,forEachYieldExpression:()=>Dk,forSomeAncestorDirectory:()=>WO,formatColorAndReset:()=>formatColorAndReset,formatDiagnostic:()=>formatDiagnostic,formatDiagnostics:()=>formatDiagnostics,formatDiagnosticsWithColorAndContext:()=>formatDiagnosticsWithColorAndContext,formatGeneratedName:()=>bd,formatGeneratedNamePart:()=>C2,formatLocation:()=>formatLocation,formatMessage:()=>_M,formatStringFromArgs:()=>X_,formatting:()=>ts_formatting_exports,fullTripleSlashAMDReferencePathRegEx:()=>Tv,fullTripleSlashReferencePathRegEx:()=>bv,generateDjb2Hash:()=>generateDjb2Hash,generateTSConfig:()=>generateTSConfig,generatorHelper:()=>generatorHelper,getAdjustedReferenceLocation:()=>getAdjustedReferenceLocation,getAdjustedRenameLocation:()=>getAdjustedRenameLocation,getAliasDeclarationFromName:()=>u4,getAllAccessorDeclarations:()=>W0,getAllDecoratorsOfClass:()=>getAllDecoratorsOfClass,getAllDecoratorsOfClassElement:()=>getAllDecoratorsOfClassElement,getAllJSDocTags:()=>MS,getAllJSDocTagsOfKind:()=>UA,getAllKeys:()=>T_,getAllProjectOutputs:()=>getAllProjectOutputs,getAllSuperTypeNodes:()=>h4,getAllUnscopedEmitHelpers:()=>getAllUnscopedEmitHelpers,getAllowJSCompilerOption:()=>Ax,getAllowSyntheticDefaultImports:()=>TM,getAncestor:()=>eN,getAnyExtensionFromPath:()=>Gp,getAreDeclarationMapsEnabled:()=>bM,getAssignedExpandoInitializer:()=>bI,getAssignedName:()=>yS,getAssignmentDeclarationKind:()=>ps,getAssignmentDeclarationPropertyAccessKind:()=>K3,getAssignmentTargetKind:()=>o4,getAutomaticTypeDirectiveNames:()=>getAutomaticTypeDirectiveNames,getBaseFileName:()=>sl,getBinaryOperatorPrecedence:()=>Dl,getBuildInfo:()=>getBuildInfo,getBuildInfoFileVersionMap:()=>getBuildInfoFileVersionMap,getBuildInfoText:()=>getBuildInfoText,getBuildOrderFromAnyBuildOrder:()=>getBuildOrderFromAnyBuildOrder,getBuilderCreationParameters:()=>getBuilderCreationParameters,getBuilderFileEmit:()=>getBuilderFileEmit,getCheckFlags:()=>ux,getClassExtendsHeritageElement:()=>d4,getClassLikeDeclarationOfSymbol:()=>dx,getCombinedLocalAndExportSymbolFlags:()=>jO,getCombinedModifierFlags:()=>ef,getCombinedNodeFlags:()=>tf,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>PA,getCommentRange:()=>getCommentRange,getCommonSourceDirectory:()=>getCommonSourceDirectory,getCommonSourceDirectoryOfConfig:()=>getCommonSourceDirectoryOfConfig,getCompilerOptionValue:()=>uv,getCompilerOptionsDiffValue:()=>getCompilerOptionsDiffValue,getConditions:()=>getConditions,getConfigFileParsingDiagnostics:()=>getConfigFileParsingDiagnostics,getConstantValue:()=>getConstantValue,getContainerNode:()=>getContainerNode,getContainingClass:()=>Vk,getContainingClassStaticBlock:()=>Hk,getContainingFunction:()=>zk,getContainingFunctionDeclaration:()=>Wk,getContainingFunctionOrClassStaticBlock:()=>Gk,getContainingNodeArray:()=>yL,getContainingObjectLiteralElement:()=>S7,getContextualTypeFromParent:()=>getContextualTypeFromParent,getContextualTypeFromParentOrAncestorTypeNode:()=>getContextualTypeFromParentOrAncestorTypeNode,getCurrentTime:()=>getCurrentTime,getDeclarationDiagnostics:()=>getDeclarationDiagnostics,getDeclarationEmitExtensionForPath:()=>O4,getDeclarationEmitOutputFilePath:()=>ON,getDeclarationEmitOutputFilePathWorker:()=>N4,getDeclarationFromName:()=>XI,getDeclarationModifierFlagsFromSymbol:()=>LO,getDeclarationOfKind:()=>aD,getDeclarationsOfKind:()=>sD,getDeclaredExpandoInitializer:()=>yI,getDecorators:()=>kA,getDefaultCompilerOptions:()=>y7,getDefaultExportInfoWorker:()=>getDefaultExportInfoWorker,getDefaultFormatCodeSettings:()=>getDefaultFormatCodeSettings,getDefaultLibFileName:()=>aS,getDefaultLibFilePath:()=>gB,getDefaultLikeExportInfo:()=>getDefaultLikeExportInfo,getDiagnosticText:()=>getDiagnosticText,getDiagnosticsWithinSpan:()=>getDiagnosticsWithinSpan,getDirectoryPath:()=>ma,getDocumentPositionMapper:()=>getDocumentPositionMapper,getESModuleInterop:()=>ov,getEditsForFileRename:()=>getEditsForFileRename,getEffectiveBaseTypeNode:()=>f4,getEffectiveConstraintOfTypeParameter:()=>HA,getEffectiveContainerForJSDocTemplateTag:()=>FI,getEffectiveImplementsTypeNodes:()=>m4,getEffectiveInitializer:()=>V3,getEffectiveJSDocHost:()=>A0,getEffectiveModifierFlags:()=>Rf,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>K4,getEffectiveModifierFlagsNoCache:()=>Y4,getEffectiveReturnTypeNode:()=>zN,getEffectiveSetAccessorTypeAnnotationNode:()=>VN,getEffectiveTypeAnnotationNode:()=>V0,getEffectiveTypeParameterDeclarations:()=>VA,getEffectiveTypeRoots:()=>getEffectiveTypeRoots,getElementOrPropertyAccessArgumentExpressionOrName:()=>Cf,getElementOrPropertyAccessName:()=>Fs,getElementsOfBindingOrAssignmentPattern:()=>kE,getEmitDeclarations:()=>cv,getEmitFlags:()=>xi,getEmitHelpers:()=>getEmitHelpers,getEmitModuleDetectionKind:()=>wx,getEmitModuleKind:()=>Ei,getEmitModuleResolutionKind:()=>Ml,getEmitScriptTarget:()=>Uf,getEnclosingBlockScopeContainer:()=>Zy,getEncodedSemanticClassifications:()=>getEncodedSemanticClassifications,getEncodedSyntacticClassifications:()=>getEncodedSyntacticClassifications,getEndLinePosition:()=>d3,getEntityNameFromTypeNode:()=>nI,getEntrypointsFromPackageJsonInfo:()=>getEntrypointsFromPackageJsonInfo,getErrorCountForSummary:()=>getErrorCountForSummary,getErrorSpanForNode:()=>i0,getErrorSummaryText:()=>getErrorSummaryText,getEscapedTextOfIdentifierOrLiteral:()=>b4,getExpandoInitializer:()=>U_,getExportAssignmentExpression:()=>p4,getExportInfoMap:()=>getExportInfoMap,getExportNeedsImportStarHelper:()=>getExportNeedsImportStarHelper,getExpressionAssociativity:()=>yN,getExpressionPrecedence:()=>vN,getExternalHelpersModuleName:()=>EE,getExternalModuleImportEqualsDeclarationExpression:()=>_I,getExternalModuleName:()=>E0,getExternalModuleNameFromDeclaration:()=>IN,getExternalModuleNameFromPath:()=>F0,getExternalModuleNameLiteral:()=>Xj,getExternalModuleRequireArgument:()=>cI,getFallbackOptions:()=>getFallbackOptions,getFileEmitOutput:()=>getFileEmitOutput,getFileMatcherPatterns:()=>Ix,getFileNamesFromConfigSpecs:()=>getFileNamesFromConfigSpecs,getFileWatcherEventKind:()=>getFileWatcherEventKind,getFilesInErrorForSummary:()=>getFilesInErrorForSummary,getFirstConstructorWithBody:()=>R4,getFirstIdentifier:()=>iO,getFirstNonSpaceCharacterPosition:()=>getFirstNonSpaceCharacterPosition,getFirstProjectOutput:()=>getFirstProjectOutput,getFixableErrorSpanExpression:()=>getFixableErrorSpanExpression,getFormatCodeSettingsForWriting:()=>getFormatCodeSettingsForWriting,getFullWidth:()=>hf,getFunctionFlags:()=>sN,getHeritageClause:()=>Pf,getHostSignatureFromJSDoc:()=>C0,getIdentifierAutoGenerate:()=>getIdentifierAutoGenerate,getIdentifierGeneratedImportReference:()=>getIdentifierGeneratedImportReference,getIdentifierTypeArguments:()=>getIdentifierTypeArguments,getImmediatelyInvokedFunctionExpression:()=>Qk,getImpliedNodeFormatForFile:()=>getImpliedNodeFormatForFile,getImpliedNodeFormatForFileWorker:()=>getImpliedNodeFormatForFileWorker,getImportNeedsImportDefaultHelper:()=>getImportNeedsImportDefaultHelper,getImportNeedsImportStarHelper:()=>getImportNeedsImportStarHelper,getIndentSize:()=>Oo,getIndentString:()=>j0,getInitializedVariables:()=>NO,getInitializerOfBinaryExpression:()=>X3,getInitializerOfBindingOrAssignmentElement:()=>AE,getInterfaceBaseTypeNodes:()=>g4,getInternalEmitFlags:()=>zD,getInvokedExpression:()=>iI,getIsolatedModules:()=>zf,getJSDocAugmentsTag:()=>ES,getJSDocClassTag:()=>NA,getJSDocCommentRanges:()=>I3,getJSDocCommentsAndTags:()=>r4,getJSDocDeprecatedTag:()=>jA,getJSDocDeprecatedTagNoCache:()=>IS,getJSDocEnumTag:()=>JA,getJSDocHost:()=>s4,getJSDocImplementsTags:()=>wS,getJSDocOverrideTagNoCache:()=>kS,getJSDocParameterTags:()=>of,getJSDocParameterTagsNoCache:()=>bS,getJSDocPrivateTag:()=>MA,getJSDocPrivateTagNoCache:()=>AS,getJSDocProtectedTag:()=>LA,getJSDocProtectedTagNoCache:()=>PS,getJSDocPublicTag:()=>OA,getJSDocPublicTagNoCache:()=>CS,getJSDocReadonlyTag:()=>RA,getJSDocReadonlyTagNoCache:()=>DS,getJSDocReturnTag:()=>NS,getJSDocReturnType:()=>OS,getJSDocRoot:()=>P0,getJSDocSatisfiesExpressionType:()=>NL,getJSDocSatisfiesTag:()=>wy,getJSDocTags:()=>hl,getJSDocTagsNoCache:()=>qA,getJSDocTemplateTag:()=>BA,getJSDocThisTag:()=>FA,getJSDocType:()=>cf,getJSDocTypeAliasName:()=>w2,getJSDocTypeAssertionType:()=>Wj,getJSDocTypeParameterDeclarations:()=>F4,getJSDocTypeParameterTags:()=>SS,getJSDocTypeParameterTagsNoCache:()=>xS,getJSDocTypeTag:()=>_f,getJSXImplicitImportBase:()=>IM,getJSXRuntimeImport:()=>NM,getJSXTransformEnabled:()=>kM,getKeyForCompilerOptions:()=>getKeyForCompilerOptions,getLanguageVariant:()=>sv,getLastChild:()=>mx,getLeadingCommentRanges:()=>Ao,getLeadingCommentRangesOfNode:()=>Ck,getLeftmostAccessExpression:()=>rv,getLeftmostExpression:()=>ZO,getLineAndCharacterOfPosition:()=>Ls,getLineInfo:()=>getLineInfo,getLineOfLocalPosition:()=>FN,getLineOfLocalPositionFromLineMap:()=>ds,getLineStartPositionForPosition:()=>getLineStartPositionForPosition,getLineStarts:()=>ss,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>DO,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>PO,getLinesBetweenPositions:()=>I_,getLinesBetweenRangeEndAndRangeStart:()=>wO,getLinesBetweenRangeEndPositions:()=>CO,getLiteralText:()=>WD,getLocalNameForExternalImport:()=>Kj,getLocalSymbolForExportDefault:()=>cO,getLocaleSpecificMessage:()=>Y_,getLocaleTimeString:()=>getLocaleTimeString,getMappedContextSpan:()=>getMappedContextSpan,getMappedDocumentSpan:()=>getMappedDocumentSpan,getMappedLocation:()=>getMappedLocation,getMatchedFileSpec:()=>getMatchedFileSpec,getMatchedIncludeSpec:()=>getMatchedIncludeSpec,getMeaningFromDeclaration:()=>getMeaningFromDeclaration,getMeaningFromLocation:()=>getMeaningFromLocation,getMembersOfDeclaration:()=>Ik,getModeForFileReference:()=>getModeForFileReference,getModeForResolutionAtIndex:()=>getModeForResolutionAtIndex,getModeForUsageLocation:()=>getModeForUsageLocation,getModifiedTime:()=>getModifiedTime,getModifiers:()=>sf,getModuleInstanceState:()=>getModuleInstanceState,getModuleNameStringLiteralAt:()=>getModuleNameStringLiteralAt,getModuleSpecifierEndingPreference:()=>VM,getModuleSpecifierResolverHost:()=>getModuleSpecifierResolverHost,getNameForExportedSymbol:()=>getNameForExportedSymbol,getNameFromIndexInfo:()=>_k,getNameFromPropertyName:()=>getNameFromPropertyName,getNameOfAccessExpression:()=>KO,getNameOfCompilerOptionValue:()=>getNameOfCompilerOptionValue,getNameOfDeclaration:()=>ml,getNameOfExpando:()=>xI,getNameOfJSDocTypedef:()=>gS,getNameOrArgument:()=>$3,getNameTable:()=>uB,getNamesForExportedSymbol:()=>getNamesForExportedSymbol,getNamespaceDeclarationNode:()=>Q3,getNewLineCharacter:()=>ox,getNewLineKind:()=>getNewLineKind,getNewLineOrDefaultFromHost:()=>getNewLineOrDefaultFromHost,getNewTargetContainer:()=>Xk,getNextJSDocCommentLocation:()=>a4,getNodeForGeneratedName:()=>NJ,getNodeId:()=>getNodeId,getNodeKind:()=>getNodeKind,getNodeModifiers:()=>getNodeModifiers,getNodeModulePathParts:()=>wL,getNonAssignedNameOfDeclaration:()=>Ey,getNonAssignmentOperatorForCompoundAssignment:()=>getNonAssignmentOperatorForCompoundAssignment,getNonAugmentationDeclaration:()=>E3,getNonDecoratorTokenPosOfNode:()=>FD,getNormalizedAbsolutePath:()=>as,getNormalizedAbsolutePathWithoutRoot:()=>Q5,getNormalizedPathComponents:()=>$p,getObjectFlags:()=>Bf,getOperator:()=>R0,getOperatorAssociativity:()=>x4,getOperatorPrecedence:()=>E4,getOptionFromName:()=>getOptionFromName,getOptionsNameMap:()=>getOptionsNameMap,getOrCreateEmitNode:()=>getOrCreateEmitNode,getOrCreateExternalHelpersModuleNameIfNeeded:()=>wE,getOrUpdate:()=>la,getOriginalNode:()=>ul,getOriginalNodeId:()=>getOriginalNodeId,getOriginalSourceFile:()=>gN,getOutputDeclarationFileName:()=>getOutputDeclarationFileName,getOutputExtension:()=>getOutputExtension,getOutputFileNames:()=>getOutputFileNames,getOutputPathsFor:()=>getOutputPathsFor,getOutputPathsForBundle:()=>getOutputPathsForBundle,getOwnEmitOutputFilePath:()=>NN,getOwnKeys:()=>ho,getOwnValues:()=>go,getPackageJsonInfo:()=>getPackageJsonInfo,getPackageJsonTypesVersionsPaths:()=>getPackageJsonTypesVersionsPaths,getPackageJsonsVisibleToFile:()=>getPackageJsonsVisibleToFile,getPackageNameFromTypesPackageName:()=>getPackageNameFromTypesPackageName,getPackageScopeForPath:()=>getPackageScopeForPath,getParameterSymbolFromJSDoc:()=>JI,getParameterTypeNode:()=>CL,getParentNodeInSpan:()=>getParentNodeInSpan,getParseTreeNode:()=>fl,getParsedCommandLineOfConfigFile:()=>getParsedCommandLineOfConfigFile,getPathComponents:()=>qi,getPathComponentsRelativeTo:()=>ly,getPathFromPathComponents:()=>xo,getPathUpdater:()=>getPathUpdater,getPathsBasePath:()=>LN,getPatternFromSpec:()=>BM,getPendingEmitKind:()=>getPendingEmitKind,getPositionOfLineAndCharacter:()=>lA,getPossibleGenericSignatures:()=>getPossibleGenericSignatures,getPossibleOriginalInputExtensionForExtension:()=>MN,getPossibleTypeArgumentsInfo:()=>getPossibleTypeArgumentsInfo,getPreEmitDiagnostics:()=>getPreEmitDiagnostics,getPrecedingNonSpaceCharacterPosition:()=>getPrecedingNonSpaceCharacterPosition,getPrivateIdentifier:()=>getPrivateIdentifier,getProperties:()=>getProperties,getProperty:()=>Qc,getPropertyArrayElementValue:()=>qk,getPropertyAssignment:()=>f0,getPropertyAssignmentAliasLikeExpression:()=>ZI,getPropertyNameForPropertyNameNode:()=>Df,getPropertyNameForUniqueESSymbol:()=>_N,getPropertyNameOfBindingOrAssignmentElement:()=>eJ,getPropertySymbolFromBindingElement:()=>getPropertySymbolFromBindingElement,getPropertySymbolsFromContextualType:()=>x7,getQuoteFromPreference:()=>getQuoteFromPreference,getQuotePreference:()=>getQuotePreference,getRangesWhere:()=>Et,getRefactorContextSpan:()=>getRefactorContextSpan,getReferencedFileLocation:()=>getReferencedFileLocation,getRegexFromPattern:()=>Vf,getRegularExpressionForWildcard:()=>Wf,getRegularExpressionsForWildcards:()=>pv,getRelativePathFromDirectory:()=>JT,getRelativePathFromFile:()=>iA,getRelativePathToDirectoryOrUrl:()=>uy,getRenameLocation:()=>getRenameLocation,getReplacementSpanForContextToken:()=>getReplacementSpanForContextToken,getResolutionDiagnostic:()=>getResolutionDiagnostic,getResolutionModeOverrideForClause:()=>getResolutionModeOverrideForClause,getResolveJsonModule:()=>Cx,getResolvePackageJsonExports:()=>SM,getResolvePackageJsonImports:()=>xM,getResolvedExternalModuleName:()=>k4,getResolvedModule:()=>hD,getResolvedTypeReferenceDirective:()=>vD,getRestIndicatorOfBindingOrAssignmentElement:()=>Zj,getRestParameterElementType:()=>kk,getRightMostAssignedExpression:()=>b0,getRootDeclaration:()=>If,getRootLength:()=>Bi,getScriptKind:()=>getScriptKind,getScriptKindFromFileName:()=>Ox,getScriptTargetFeatures:()=>getScriptTargetFeatures,getSelectedEffectiveModifierFlags:()=>G4,getSelectedSyntacticModifierFlags:()=>$4,getSemanticClassifications:()=>getSemanticClassifications,getSemanticJsxChildren:()=>bN,getSetAccessorTypeAnnotationNode:()=>BN,getSetAccessorValueParameter:()=>z0,getSetExternalModuleIndicator:()=>Ex,getShebang:()=>GT,getSingleInitializerOfVariableStatementOrPropertyDeclaration:()=>w0,getSingleVariableOfVariableStatement:()=>Al,getSnapshotText:()=>getSnapshotText,getSnippetElement:()=>getSnippetElement,getSourceFileOfModule:()=>AD,getSourceFileOfNode:()=>Si,getSourceFilePathInNewDir:()=>M4,getSourceFilePathInNewDirWorker:()=>U0,getSourceFileVersionAsHashFromText:()=>getSourceFileVersionAsHashFromText,getSourceFilesToEmit:()=>RN,getSourceMapRange:()=>getSourceMapRange,getSourceMapper:()=>getSourceMapper,getSourceTextOfNodeFromSourceFile:()=>No,getSpanOfTokenAtPosition:()=>n0,getSpellingSuggestion:()=>Ep,getStartPositionOfLine:()=>kD,getStartPositionOfRange:()=>K_,getStartsOnNewLine:()=>getStartsOnNewLine,getStaticPropertiesAndClassStaticBlock:()=>getStaticPropertiesAndClassStaticBlock,getStrictOptionValue:()=>lv,getStringComparer:()=>rl,getSuperCallFromStatement:()=>getSuperCallFromStatement,getSuperContainer:()=>Yk,getSupportedCodeFixes:()=>v7,getSupportedExtensions:()=>Mx,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>Lx,getSwitchedType:()=>getSwitchedType,getSymbolId:()=>getSymbolId,getSymbolNameForPrivateIdentifier:()=>cN,getSymbolTarget:()=>getSymbolTarget,getSyntacticClassifications:()=>getSyntacticClassifications,getSyntacticModifierFlags:()=>X0,getSyntacticModifierFlagsNoCache:()=>Y0,getSynthesizedDeepClone:()=>getSynthesizedDeepClone,getSynthesizedDeepCloneWithReplacements:()=>getSynthesizedDeepCloneWithReplacements,getSynthesizedDeepClones:()=>getSynthesizedDeepClones,getSynthesizedDeepClonesWithReplacements:()=>getSynthesizedDeepClonesWithReplacements,getSyntheticLeadingComments:()=>getSyntheticLeadingComments,getSyntheticTrailingComments:()=>getSyntheticTrailingComments,getTargetLabel:()=>getTargetLabel,getTargetOfBindingOrAssignmentElement:()=>Ko,getTemporaryModuleResolutionState:()=>getTemporaryModuleResolutionState,getTextOfConstantValue:()=>HD,getTextOfIdentifierOrLiteral:()=>kf,getTextOfJSDocComment:()=>zA,getTextOfNode:()=>gf,getTextOfNodeFromSourceText:()=>B_,getTextOfPropertyName:()=>lk,getThisContainer:()=>d0,getThisParameter:()=>j4,getTokenAtPosition:()=>getTokenAtPosition,getTokenPosOfNode:()=>Io,getTokenSourceMapRange:()=>getTokenSourceMapRange,getTouchingPropertyName:()=>getTouchingPropertyName,getTouchingToken:()=>getTouchingToken,getTrailingCommentRanges:()=>HT,getTrailingSemicolonDeferringWriter:()=>kN,getTransformFlagsSubtreeExclusions:()=>w8,getTransformers:()=>getTransformers,getTsBuildInfoEmitOutputFilePath:()=>getTsBuildInfoEmitOutputFilePath,getTsConfigObjectLiteralExpression:()=>M3,getTsConfigPropArray:()=>L3,getTsConfigPropArrayElementValue:()=>Uk,getTypeAnnotationNode:()=>UN,getTypeArgumentOrTypeParameterList:()=>getTypeArgumentOrTypeParameterList,getTypeKeywordOfTypeOnlyImport:()=>getTypeKeywordOfTypeOnlyImport,getTypeNode:()=>getTypeNode,getTypeNodeIfAccessible:()=>getTypeNodeIfAccessible,getTypeParameterFromJsDoc:()=>BI,getTypeParameterOwner:()=>AA,getTypesPackageName:()=>getTypesPackageName,getUILocale:()=>M1,getUniqueName:()=>getUniqueName,getUniqueSymbolId:()=>getUniqueSymbolId,getUseDefineForClassFields:()=>CM,getWatchErrorSummaryDiagnosticMessage:()=>getWatchErrorSummaryDiagnosticMessage,getWatchFactory:()=>getWatchFactory,group:()=>el,groupBy:()=>x_,guessIndentation:()=>rD,handleNoEmitOptions:()=>handleNoEmitOptions,hasAbstractModifier:()=>W4,hasAccessorModifier:()=>H4,hasAmbientModifier:()=>V4,hasChangesInResolutions:()=>wD,hasChildOfKind:()=>hasChildOfKind,hasContextSensitiveParameters:()=>vL,hasDecorators:()=>Il,hasDocComment:()=>hasDocComment,hasDynamicName:()=>v4,hasEffectiveModifier:()=>H0,hasEffectiveModifiers:()=>XN,hasEffectiveReadonlyModifier:()=>$0,hasExtension:()=>OT,hasIndexSignature:()=>hasIndexSignature,hasInitializer:()=>l3,hasInvalidEscape:()=>w4,hasJSDocNodes:()=>ya,hasJSDocParameterTags:()=>IA,hasJSFileExtension:()=>dv,hasJsonModuleEmitEnabled:()=>hM,hasOnlyExpressionInitializer:()=>eD,hasOverrideModifier:()=>QN,hasPossibleExternalModuleReference:()=>sk,hasProperty:()=>Jr,hasPropertyAccessExpressionWithName:()=>hasPropertyAccessExpressionWithName,hasQuestionToken:()=>OI,hasRecordedExternalHelpers:()=>Gj,hasRestParameter:()=>nD,hasScopeMarker:()=>kP,hasStaticModifier:()=>Lf,hasSyntacticModifier:()=>rn,hasSyntacticModifiers:()=>YN,hasTSFileExtension:()=>mv,hasTabstop:()=>Qx,hasTrailingDirectorySeparator:()=>Hp,hasType:()=>ZP,hasTypeArguments:()=>qI,hasZeroOrOneAsteriskCharacter:()=>OM,helperString:()=>helperString,hostGetCanonicalFileName:()=>D4,hostUsesCaseSensitiveFileNames:()=>J0,idText:()=>qr,identifierIsThisKeyword:()=>J4,identifierToKeywordKind:()=>dS,identity:()=>rr,identitySourceMapConsumer:()=>identitySourceMapConsumer,ignoreSourceNewlines:()=>ignoreSourceNewlines,ignoredPaths:()=>ignoredPaths,importDefaultHelper:()=>importDefaultHelper,importFromModuleSpecifier:()=>II,importNameElisionDisabled:()=>gM,importStarHelper:()=>importStarHelper,indexOfAnyCharCode:()=>Je,indexOfNode:()=>UD,indicesOf:()=>Wr,inferredTypesContainingFile:()=>inferredTypesContainingFile,insertImports:()=>insertImports,insertLeadingStatement:()=>Mj,insertSorted:()=>Qn,insertStatementAfterCustomPrologue:()=>RD,insertStatementAfterStandardPrologue:()=>LD,insertStatementsAfterCustomPrologue:()=>MD,insertStatementsAfterStandardPrologue:()=>OD,intersperse:()=>Ie,introducesArgumentsExoticObject:()=>Lk,inverseJsxOptionMap:()=>inverseJsxOptionMap,isAbstractConstructorSymbol:()=>zO,isAbstractModifier:()=>uR,isAccessExpression:()=>Lo,isAccessibilityModifier:()=>isAccessibilityModifier,isAccessor:()=>pf,isAccessorModifier:()=>fR,isAliasSymbolDeclaration:()=>QI,isAliasableExpression:()=>k0,isAmbientModule:()=>yf,isAmbientPropertyDeclaration:()=>rk,isAnonymousFunctionDefinition:()=>H_,isAnyDirectorySeparator:()=>ay,isAnyImportOrBareOrAccessedRequire:()=>ik,isAnyImportOrReExport:()=>bf,isAnyImportSyntax:()=>Qy,isAnySupportedFileExtension:()=>ZM,isApplicableVersionedTypesKey:()=>isApplicableVersionedTypesKey,isArgumentExpressionOfElementAccess:()=>isArgumentExpressionOfElementAccess,isArray:()=>ir,isArrayBindingElement:()=>gP,isArrayBindingOrAssignmentElement:()=>ZS,isArrayBindingOrAssignmentPattern:()=>QS,isArrayBindingPattern:()=>yR,isArrayLiteralExpression:()=>Yl,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>isArrayLiteralOrObjectLiteralDestructuringPattern,isArrayTypeNode:()=>F8,isArrowFunction:()=>sd,isAsExpression:()=>CR,isAssertClause:()=>$R,isAssertEntry:()=>KR,isAssertionExpression:()=>PP,isAssertionKey:()=>oP,isAssertsKeyword:()=>_R,isAssignmentDeclaration:()=>v0,isAssignmentExpression:()=>ms,isAssignmentOperator:()=>G_,isAssignmentPattern:()=>KS,isAssignmentTarget:()=>UI,isAsteriskToken:()=>nR,isAsyncFunction:()=>oN,isAsyncModifier:()=>Ul,isAutoAccessorPropertyDeclaration:()=>$S,isAwaitExpression:()=>SR,isAwaitKeyword:()=>cR,isBigIntLiteral:()=>Uv,isBinaryExpression:()=>ur,isBinaryOperatorToken:()=>AJ,isBindableObjectDefinePropertyCall:()=>S0,isBindableStaticAccessExpression:()=>W_,isBindableStaticElementAccessExpression:()=>x0,isBindableStaticNameExpression:()=>V_,isBindingElement:()=>Xl,isBindingElementOfBareOrAccessedRequire:()=>mI,isBindingName:()=>uP,isBindingOrAssignmentElement:()=>yP,isBindingOrAssignmentPattern:()=>vP,isBindingPattern:()=>df,isBlock:()=>Ql,isBlockOrCatchScoped:()=>$D,isBlockScope:()=>w3,isBlockScopedContainerTopLevel:()=>ZD,isBooleanLiteral:()=>pP,isBreakOrContinueStatement:()=>YA,isBreakStatement:()=>JR,isBuildInfoFile:()=>isBuildInfoFile,isBuilderProgram:()=>isBuilderProgram2,isBundle:()=>cj,isBundleFileTextLike:()=>XO,isCallChain:()=>Cy,isCallExpression:()=>sc,isCallExpressionTarget:()=>isCallExpressionTarget,isCallLikeExpression:()=>SP,isCallOrNewExpression:()=>xP,isCallOrNewExpressionTarget:()=>isCallOrNewExpressionTarget,isCallSignatureDeclaration:()=>Vv,isCallToHelper:()=>isCallToHelper,isCaseBlock:()=>VR,isCaseClause:()=>sj,isCaseKeyword:()=>dR,isCaseOrDefaultClause:()=>QP,isCatchClause:()=>oj,isCatchClauseVariableDeclaration:()=>Gx,isCatchClauseVariableDeclarationOrBindingElement:()=>T3,isCheckJsEnabledForFile:()=>eL,isChildOfNodeWithKind:()=>Ak,isCircularBuildOrder:()=>isCircularBuildOrder,isClassDeclaration:()=>_c,isClassElement:()=>Js,isClassExpression:()=>_d,isClassLike:()=>bi,isClassMemberModifier:()=>VS,isClassOrTypeElement:()=>mP,isClassStaticBlockDeclaration:()=>Hl,isCollapsedRange:()=>vO,isColonToken:()=>iR,isCommaExpression:()=>gd,isCommaListExpression:()=>oc,isCommaSequence:()=>zj,isCommaToken:()=>I8,isComment:()=>isComment,isCommonJsExportPropertyAssignment:()=>p0,isCommonJsExportedExpression:()=>Ok,isCompoundAssignment:()=>isCompoundAssignment,isComputedNonLiteralName:()=>ck,isComputedPropertyName:()=>Ws,isConciseBody:()=>MP,isConditionalExpression:()=>xR,isConditionalTypeNode:()=>V8,isConstTypeReference:()=>jS,isConstructSignatureDeclaration:()=>R8,isConstructorDeclaration:()=>nc,isConstructorTypeNode:()=>Gv,isContextualKeyword:()=>N0,isContinueStatement:()=>jR,isCustomPrologue:()=>Tf,isDebuggerStatement:()=>WR,isDeclaration:()=>ko,isDeclarationBindingElement:()=>Fy,isDeclarationFileName:()=>QE,isDeclarationName:()=>c4,isDeclarationNameOfEnumOrNamespace:()=>IO,isDeclarationReadonly:()=>Sk,isDeclarationStatement:()=>VP,isDeclarationWithTypeParameterChildren:()=>C3,isDeclarationWithTypeParameters:()=>nk,isDecorator:()=>zl,isDecoratorTarget:()=>isDecoratorTarget,isDefaultClause:()=>oE,isDefaultImport:()=>Z3,isDefaultModifier:()=>oR,isDefaultedExpandoInitializer:()=>SI,isDeleteExpression:()=>bR,isDeleteTarget:()=>$I,isDeprecatedDeclaration:()=>isDeprecatedDeclaration,isDestructuringAssignment:()=>nO,isDiagnosticWithLocation:()=>isDiagnosticWithLocation,isDiskPathRoot:()=>H5,isDoStatement:()=>OR,isDotDotDotToken:()=>rR,isDottedName:()=>ev,isDynamicName:()=>M0,isESSymbolIdentifier:()=>pN,isEffectiveExternalModule:()=>Yy,isEffectiveModuleDeclaration:()=>S3,isEffectiveStrictModeSourceFile:()=>tk,isElementAccessChain:()=>RS,isElementAccessExpression:()=>gs,isEmittedFileOfProgram:()=>isEmittedFileOfProgram,isEmptyArrayLiteral:()=>_O,isEmptyBindingElement:()=>pS,isEmptyBindingPattern:()=>uS,isEmptyObjectLiteral:()=>oO,isEmptyStatement:()=>IR,isEmptyStringLiteral:()=>j3,isEndOfDeclarationMarker:()=>ej,isEntityName:()=>lP,isEntityNameExpression:()=>Bs,isEnumConst:()=>Tk,isEnumDeclaration:()=>i2,isEnumMember:()=>cE,isEqualityOperatorKind:()=>isEqualityOperatorKind,isEqualsGreaterThanToken:()=>sR,isExclamationToken:()=>rd,isExcludedFile:()=>isExcludedFile,isExclusivelyTypeOnlyImportOrExport:()=>isExclusivelyTypeOnlyImportOrExport,isExportAssignment:()=>Vo,isExportDeclaration:()=>cc,isExportModifier:()=>N8,isExportName:()=>Uj,isExportNamespaceAsDefaultDeclaration:()=>b3,isExportOrDefaultModifier:()=>DJ,isExportSpecifier:()=>aE,isExportsIdentifier:()=>H3,isExportsOrModuleExportsOrAlias:()=>isExportsOrModuleExportsOrAlias,isExpression:()=>mf,isExpressionNode:()=>g0,isExpressionOfExternalModuleImportEqualsDeclaration:()=>isExpressionOfExternalModuleImportEqualsDeclaration,isExpressionOfOptionalChainRoot:()=>$A,isExpressionStatement:()=>Zl,isExpressionWithTypeArguments:()=>e2,isExpressionWithTypeArgumentsInClassExtendsClause:()=>Z0,isExternalModule:()=>Qo,isExternalModuleAugmentation:()=>Xy,isExternalModuleImportEqualsDeclaration:()=>B3,isExternalModuleIndicator:()=>NP,isExternalModuleNameRelative:()=>gA,isExternalModuleReference:()=>ud,isExternalModuleSymbol:()=>isExternalModuleSymbol,isExternalOrCommonJsModule:()=>bk,isFileLevelUniqueName:()=>m3,isFileProbablyExternalModule:()=>ou,isFirstDeclarationOfSymbolParameter:()=>isFirstDeclarationOfSymbolParameter,isFixablePromiseHandler:()=>isFixablePromiseHandler,isForInOrOfStatement:()=>OP,isForInStatement:()=>LR,isForInitializer:()=>RP,isForOfStatement:()=>RR,isForStatement:()=>eE,isFunctionBlock:()=>O3,isFunctionBody:()=>LP,isFunctionDeclaration:()=>Wo,isFunctionExpression:()=>ad,isFunctionExpressionOrArrowFunction:()=>SL,isFunctionLike:()=>ga,isFunctionLikeDeclaration:()=>HS,isFunctionLikeKind:()=>My,isFunctionLikeOrClassStaticBlockDeclaration:()=>uf,isFunctionOrConstructorTypeNode:()=>hP,isFunctionOrModuleBlock:()=>fP,isFunctionSymbol:()=>DI,isFunctionTypeNode:()=>$l,isFutureReservedKeyword:()=>tN,isGeneratedIdentifier:()=>cs,isGeneratedPrivateIdentifier:()=>Ny,isGetAccessor:()=>Tl,isGetAccessorDeclaration:()=>Gl,isGetOrSetAccessorDeclaration:()=>GA,isGlobalDeclaration:()=>isGlobalDeclaration,isGlobalScopeAugmentation:()=>vf,isGrammarError:()=>ND,isHeritageClause:()=>ru,isHoistedFunction:()=>_0,isHoistedVariableStatement:()=>c0,isIdentifier:()=>yt,isIdentifierANonContextualKeyword:()=>iN,isIdentifierName:()=>YI,isIdentifierOrThisTypeNode:()=>aJ,isIdentifierPart:()=>Rs,isIdentifierStart:()=>Wn,isIdentifierText:()=>vy,isIdentifierTypePredicate:()=>Fk,isIdentifierTypeReference:()=>pL,isIfStatement:()=>NR,isIgnoredFileFromWildCardWatching:()=>isIgnoredFileFromWildCardWatching,isImplicitGlob:()=>Dx,isImportCall:()=>s0,isImportClause:()=>HR,isImportDeclaration:()=>o2,isImportEqualsDeclaration:()=>s2,isImportKeyword:()=>M8,isImportMeta:()=>o0,isImportOrExportSpecifier:()=>aP,isImportOrExportSpecifierName:()=>isImportOrExportSpecifierName,isImportSpecifier:()=>nE,isImportTypeAssertionContainer:()=>GR,isImportTypeNode:()=>Kl,isImportableFile:()=>isImportableFile,isInComment:()=>isInComment,isInExpressionContext:()=>J3,isInJSDoc:()=>q3,isInJSFile:()=>Pr,isInJSXText:()=>isInJSXText,isInJsonFile:()=>pI,isInNonReferenceComment:()=>isInNonReferenceComment,isInReferenceComment:()=>isInReferenceComment,isInRightSideOfInternalImportEqualsDeclaration:()=>isInRightSideOfInternalImportEqualsDeclaration,isInString:()=>isInString,isInTemplateString:()=>isInTemplateString,isInTopLevelContext:()=>Kk,isIncrementalCompilation:()=>wM,isIndexSignatureDeclaration:()=>Hv,isIndexedAccessTypeNode:()=>$8,isInferTypeNode:()=>H8,isInfinityOrNaNString:()=>bL,isInitializedProperty:()=>isInitializedProperty,isInitializedVariable:()=>lx,isInsideJsxElement:()=>isInsideJsxElement,isInsideJsxElementOrAttribute:()=>isInsideJsxElementOrAttribute,isInsideNodeModules:()=>isInsideNodeModules,isInsideTemplateLiteral:()=>isInsideTemplateLiteral,isInstantiatedModule:()=>isInstantiatedModule,isInterfaceDeclaration:()=>eu,isInternalDeclaration:()=>isInternalDeclaration,isInternalModuleImportEqualsDeclaration:()=>lI,isInternalName:()=>qj,isIntersectionTypeNode:()=>W8,isIntrinsicJsxName:()=>P4,isIterationStatement:()=>n3,isJSDoc:()=>Ho,isJSDocAllType:()=>dj,isJSDocAugmentsTag:()=>md,isJSDocAuthorTag:()=>bj,isJSDocCallbackTag:()=>Tj,isJSDocClassTag:()=>pE,isJSDocCommentContainingNode:()=>c3,isJSDocConstructSignature:()=>MI,isJSDocDeprecatedTag:()=>v2,isJSDocEnumTag:()=>dE,isJSDocFunctionType:()=>dd,isJSDocImplementsTag:()=>hE,isJSDocIndexSignature:()=>dI,isJSDocLikeText:()=>LE,isJSDocLink:()=>uj,isJSDocLinkCode:()=>pj,isJSDocLinkLike:()=>Sl,isJSDocLinkPlain:()=>fj,isJSDocMemberName:()=>uc,isJSDocNameReference:()=>fd,isJSDocNamepathType:()=>vj,isJSDocNamespaceBody:()=>FP,isJSDocNode:()=>Uy,isJSDocNonNullableType:()=>hj,isJSDocNullableType:()=>uE,isJSDocOptionalParameter:()=>Zx,isJSDocOptionalType:()=>gj,isJSDocOverloadTag:()=>y2,isJSDocOverrideTag:()=>fE,isJSDocParameterTag:()=>pc,isJSDocPrivateTag:()=>m2,isJSDocPropertyLikeTag:()=>Dy,isJSDocPropertyTag:()=>wj,isJSDocProtectedTag:()=>h2,isJSDocPublicTag:()=>d2,isJSDocReadonlyTag:()=>g2,isJSDocReturnTag:()=>b2,isJSDocSatisfiesExpression:()=>IL,isJSDocSatisfiesTag:()=>T2,isJSDocSeeTag:()=>Sj,isJSDocSignature:()=>iu,isJSDocTag:()=>zy,isJSDocTemplateTag:()=>Go,isJSDocThisTag:()=>mE,isJSDocThrowsTag:()=>Cj,isJSDocTypeAlias:()=>Cl,isJSDocTypeAssertion:()=>xE,isJSDocTypeExpression:()=>lE,isJSDocTypeLiteral:()=>f2,isJSDocTypeTag:()=>au,isJSDocTypedefTag:()=>xj,isJSDocUnknownTag:()=>Ej,isJSDocUnknownType:()=>mj,isJSDocVariadicType:()=>yj,isJSXTagName:()=>xf,isJsonEqual:()=>gv,isJsonSourceFile:()=>a0,isJsxAttribute:()=>nj,isJsxAttributeLike:()=>XP,isJsxAttributes:()=>p2,isJsxChild:()=>o3,isJsxClosingElement:()=>sE,isJsxClosingFragment:()=>rj,isJsxElement:()=>l2,isJsxExpression:()=>aj,isJsxFragment:()=>pd,isJsxOpeningElement:()=>tu,isJsxOpeningFragment:()=>u2,isJsxOpeningLikeElement:()=>_3,isJsxOpeningLikeElementTagName:()=>isJsxOpeningLikeElementTagName,isJsxSelfClosingElement:()=>tj,isJsxSpreadAttribute:()=>ij,isJsxTagNameExpression:()=>KP,isJsxText:()=>td,isJumpStatementTarget:()=>isJumpStatementTarget,isKeyword:()=>ba,isKnownSymbol:()=>lN,isLabelName:()=>isLabelName,isLabelOfLabeledStatement:()=>isLabelOfLabeledStatement,isLabeledStatement:()=>tE,isLateVisibilityPaintedStatement:()=>ak,isLeftHandSideExpression:()=>Do,isLeftHandSideOfAssignment:()=>rO,isLet:()=>xk,isLineBreak:()=>un,isLiteralComputedPropertyDeclarationName:()=>l4,isLiteralExpression:()=>Iy,isLiteralExpressionOfObject:()=>rP,isLiteralImportTypeNode:()=>k3,isLiteralKind:()=>ky,isLiteralLikeAccess:()=>wf,isLiteralLikeElementAccess:()=>wl,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>isLiteralNameOfPropertyDeclarationOrIndexAccess,isLiteralTypeLikeExpression:()=>cJ,isLiteralTypeLiteral:()=>CP,isLiteralTypeNode:()=>Yv,isLocalName:()=>E2,isLogicalOperator:()=>ZN,isLogicalOrCoalescingAssignmentExpression:()=>eO,isLogicalOrCoalescingAssignmentOperator:()=>jf,isLogicalOrCoalescingBinaryExpression:()=>tO,isLogicalOrCoalescingBinaryOperator:()=>Z4,isMappedTypeNode:()=>K8,isMemberName:()=>js,isMergeDeclarationMarker:()=>ZR,isMetaProperty:()=>t2,isMethodDeclaration:()=>Vl,isMethodOrAccessor:()=>Ly,isMethodSignature:()=>L8,isMinusToken:()=>Wv,isMissingDeclaration:()=>YR,isModifier:()=>Oy,isModifierKind:()=>Wi,isModifierLike:()=>ff,isModuleAugmentationExternal:()=>x3,isModuleBlock:()=>rE,isModuleBody:()=>jP,isModuleDeclaration:()=>Ea,isModuleExportsAccessExpression:()=>T0,isModuleIdentifier:()=>G3,isModuleName:()=>_J,isModuleOrEnumDeclaration:()=>qP,isModuleReference:()=>$P,isModuleSpecifierLike:()=>isModuleSpecifierLike,isModuleWithStringLiteralName:()=>KD,isNameOfFunctionDeclaration:()=>isNameOfFunctionDeclaration,isNameOfModuleDeclaration:()=>isNameOfModuleDeclaration,isNamedClassElement:()=>dP,isNamedDeclaration:()=>af,isNamedEvaluation:()=>fN,isNamedEvaluationSource:()=>S4,isNamedExportBindings:()=>QA,isNamedExports:()=>iE,isNamedImportBindings:()=>BP,isNamedImports:()=>XR,isNamedImportsOrExports:()=>YO,isNamedTupleMember:()=>$v,isNamespaceBody:()=>JP,isNamespaceExport:()=>ld,isNamespaceExportDeclaration:()=>a2,isNamespaceImport:()=>_2,isNamespaceReexportDeclaration:()=>oI,isNewExpression:()=>X8,isNewExpressionTarget:()=>isNewExpressionTarget,isNightly:()=>PN,isNoSubstitutionTemplateLiteral:()=>k8,isNode:()=>eP,isNodeArray:()=>_s,isNodeArrayMultiLine:()=>AO,isNodeDescendantOf:()=>KI,isNodeKind:()=>gl,isNodeLikeSystem:()=>M5,isNodeModulesDirectory:()=>aA,isNodeWithPossibleHoistedDeclaration:()=>zI,isNonContextualKeyword:()=>y4,isNonExportDefaultModifier:()=>kJ,isNonGlobalAmbientModule:()=>XD,isNonGlobalDeclaration:()=>isNonGlobalDeclaration,isNonNullAccess:()=>kL,isNonNullChain:()=>JS,isNonNullExpression:()=>Uo,isNonStaticMethodOrAccessorWithPrivateName:()=>isNonStaticMethodOrAccessorWithPrivateName,isNotEmittedOrPartiallyEmittedNode:()=>DP,isNotEmittedStatement:()=>c2,isNullishCoalesce:()=>XA,isNumber:()=>gi,isNumericLiteral:()=>zs,isNumericLiteralName:()=>$x,isObjectBindingElementWithoutPropertyName:()=>isObjectBindingElementWithoutPropertyName,isObjectBindingOrAssignmentElement:()=>YS,isObjectBindingOrAssignmentPattern:()=>XS,isObjectBindingPattern:()=>gR,isObjectLiteralElement:()=>Wy,isObjectLiteralElementLike:()=>jy,isObjectLiteralExpression:()=>Hs,isObjectLiteralMethod:()=>jk,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Jk,isObjectTypeDeclaration:()=>$O,isOctalDigit:()=>hy,isOmittedExpression:()=>cd,isOptionalChain:()=>Ay,isOptionalChainRoot:()=>Py,isOptionalDeclaration:()=>DL,isOptionalJSDocPropertyLikeTag:()=>Yx,isOptionalTypeNode:()=>q8,isOuterExpression:()=>yd,isOutermostOptionalChain:()=>KA,isOverrideModifier:()=>pR,isPackedArrayLiteral:()=>hL,isParameter:()=>Vs,isParameterDeclaration:()=>mN,isParameterOrCatchClauseVariable:()=>TL,isParameterPropertyDeclaration:()=>lS,isParameterPropertyModifier:()=>WS,isParenthesizedExpression:()=>qo,isParenthesizedTypeNode:()=>Kv,isParseTreeNode:()=>pl,isPartOfTypeNode:()=>l0,isPartOfTypeQuery:()=>F3,isPartiallyEmittedExpression:()=>Z8,isPatternMatch:()=>z1,isPinnedComment:()=>v3,isPlainJsFile:()=>PD,isPlusToken:()=>zv,isPossiblyTypeArgumentPosition:()=>isPossiblyTypeArgumentPosition,isPostfixUnaryExpression:()=>Q8,isPrefixUnaryExpression:()=>od,isPrivateIdentifier:()=>vn,isPrivateIdentifierClassElementDeclaration:()=>zS,isPrivateIdentifierPropertyAccessExpression:()=>cP,isPrivateIdentifierSymbol:()=>uN,isProgramBundleEmitBuildInfo:()=>isProgramBundleEmitBuildInfo,isProgramUptoDate:()=>isProgramUptoDate,isPrologueDirective:()=>us,isPropertyAccessChain:()=>LS,isPropertyAccessEntityNameExpression:()=>rx,isPropertyAccessExpression:()=>bn,isPropertyAccessOrQualifiedName:()=>TP,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>bP,isPropertyAssignment:()=>lc,isPropertyDeclaration:()=>Bo,isPropertyName:()=>vl,isPropertyNameLiteral:()=>L0,isPropertySignature:()=>Wl,isProtoSetter:()=>T4,isPrototypeAccess:()=>Nl,isPrototypePropertyAssignment:()=>CI,isPunctuation:()=>isPunctuation,isPushOrUnshiftIdentifier:()=>dN,isQualifiedName:()=>rc,isQuestionDotToken:()=>aR,isQuestionOrExclamationToken:()=>iJ,isQuestionOrPlusOrMinusToken:()=>oJ,isQuestionToken:()=>ql,isRawSourceMap:()=>isRawSourceMap,isReadonlyKeyword:()=>O8,isReadonlyKeywordOrPlusOrMinusToken:()=>sJ,isRecognizedTripleSlashComment:()=>jD,isReferenceFileLocation:()=>isReferenceFileLocation,isReferencedFile:()=>isReferencedFile,isRegularExpressionLiteral:()=>QL,isRequireCall:()=>El,isRequireVariableStatement:()=>W3,isRestParameter:()=>u3,isRestTypeNode:()=>U8,isReturnStatement:()=>FR,isReturnStatementWithFixablePromiseHandler:()=>isReturnStatementWithFixablePromiseHandler,isRightSideOfAccessExpression:()=>nx,isRightSideOfPropertyAccess:()=>isRightSideOfPropertyAccess,isRightSideOfQualifiedName:()=>isRightSideOfQualifiedName,isRightSideOfQualifiedNameOrPropertyAccess:()=>aO,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>sO,isRootedDiskPath:()=>A_,isSameEntityName:()=>z_,isSatisfiesExpression:()=>AR,isScopeMarker:()=>i3,isSemicolonClassElement:()=>kR,isSetAccessor:()=>bl,isSetAccessorDeclaration:()=>ic,isShebangTrivia:()=>gy,isShorthandAmbientModuleSymbol:()=>YD,isShorthandPropertyAssignment:()=>nu,isSignedNumericLiteral:()=>O0,isSimpleCopiableExpression:()=>isSimpleCopiableExpression,isSimpleInlineableExpression:()=>isSimpleInlineableExpression,isSingleOrDoubleQuote:()=>hI,isSourceFile:()=>wi,isSourceFileFromLibrary:()=>isSourceFileFromLibrary,isSourceFileJS:()=>y0,isSourceFileNotJS:()=>uI,isSourceFileNotJson:()=>fI,isSourceMapping:()=>isSourceMapping,isSpecialPropertyDeclaration:()=>AI,isSpreadAssignment:()=>_E,isSpreadElement:()=>Zv,isStatement:()=>a3,isStatementButNotDeclaration:()=>HP,isStatementOrBlock:()=>s3,isStatementWithLocals:()=>DD,isStatic:()=>G0,isStaticModifier:()=>lR,isString:()=>Ji,isStringAKeyword:()=>nN,isStringANonContextualKeyword:()=>rN,isStringAndEmptyAnonymousObjectIntersection:()=>isStringAndEmptyAnonymousObjectIntersection,isStringDoubleQuoted:()=>gI,isStringLiteral:()=>Gn,isStringLiteralLike:()=>Ti,isStringLiteralOrJsxExpression:()=>YP,isStringLiteralOrTemplate:()=>isStringLiteralOrTemplate,isStringOrNumericLiteralLike:()=>Ta,isStringOrRegularExpressionOrTemplateLiteral:()=>isStringOrRegularExpressionOrTemplateLiteral,isStringTextContainingNode:()=>_P,isSuperCall:()=>Ek,isSuperKeyword:()=>nd,isSuperOrSuperProperty:()=>Zk,isSuperProperty:()=>Sf,isSupportedSourceFileName:()=>GM,isSwitchStatement:()=>qR,isSyntaxList:()=>Aj,isSyntheticExpression:()=>PR,isSyntheticReference:()=>QR,isTagName:()=>isTagName,isTaggedTemplateExpression:()=>Y8,isTaggedTemplateTag:()=>isTaggedTemplateTag,isTemplateExpression:()=>ER,isTemplateHead:()=>ZL,isTemplateLiteral:()=>EP,isTemplateLiteralKind:()=>yl,isTemplateLiteralToken:()=>nP,isTemplateLiteralTypeNode:()=>hR,isTemplateLiteralTypeSpan:()=>mR,isTemplateMiddle:()=>eR,isTemplateMiddleOrTemplateTail:()=>iP,isTemplateSpan:()=>DR,isTemplateTail:()=>tR,isTextWhiteSpaceLike:()=>isTextWhiteSpaceLike,isThis:()=>isThis,isThisContainerOrFunctionBlock:()=>$k,isThisIdentifier:()=>Mf,isThisInTypeQuery:()=>qN,isThisInitializedDeclaration:()=>tI,isThisInitializedObjectBindingExpression:()=>rI,isThisProperty:()=>eI,isThisTypeNode:()=>Xv,isThisTypeParameter:()=>Kx,isThisTypePredicate:()=>Bk,isThrowStatement:()=>UR,isToken:()=>tP,isTokenKind:()=>BS,isTraceEnabled:()=>isTraceEnabled,isTransientSymbol:()=>$y,isTrivia:()=>aN,isTryStatement:()=>zR,isTupleTypeNode:()=>B8,isTypeAlias:()=>LI,isTypeAliasDeclaration:()=>n2,isTypeAssertionExpression:()=>vR,isTypeDeclaration:()=>Xx,isTypeElement:()=>Ry,isTypeKeyword:()=>isTypeKeyword,isTypeKeywordToken:()=>isTypeKeywordToken,isTypeKeywordTokenOrIdentifier:()=>isTypeKeywordTokenOrIdentifier,isTypeLiteralNode:()=>id,isTypeNode:()=>Jy,isTypeNodeKind:()=>hx,isTypeOfExpression:()=>TR,isTypeOnlyExportDeclaration:()=>US,isTypeOnlyImportDeclaration:()=>qS,isTypeOnlyImportOrExportDeclaration:()=>sP,isTypeOperatorNode:()=>G8,isTypeParameterDeclaration:()=>Fo,isTypePredicateNode:()=>j8,isTypeQueryNode:()=>J8,isTypeReferenceNode:()=>ac,isTypeReferenceType:()=>tD,isUMDExportSymbol:()=>VO,isUnaryExpression:()=>t3,isUnaryExpressionWithWrite:()=>wP,isUnicodeIdentifierStart:()=>UT,isUnionTypeNode:()=>z8,isUnparsedNode:()=>ZA,isUnparsedPrepend:()=>_j,isUnparsedSource:()=>lj,isUnparsedTextLike:()=>FS,isUrl:()=>V5,isValidBigIntString:()=>zx,isValidESSymbolDeclaration:()=>Mk,isValidTypeOnlyAliasUseSite:()=>_L,isValueSignatureDeclaration:()=>WI,isVarConst:()=>D3,isVariableDeclaration:()=>Vi,isVariableDeclarationInVariableStatement:()=>N3,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>Ef,isVariableDeclarationInitializedToRequire:()=>U3,isVariableDeclarationList:()=>r2,isVariableLike:()=>u0,isVariableLikeOrAccessor:()=>Nk,isVariableStatement:()=>zo,isVoidExpression:()=>Qv,isWatchSet:()=>OO,isWhileStatement:()=>MR,isWhiteSpaceLike:()=>os,isWhiteSpaceSingleLine:()=>N_,isWithStatement:()=>BR,isWriteAccess:()=>FO,isWriteOnlyAccess:()=>JO,isYieldExpression:()=>wR,jsxModeNeedsExplicitImport:()=>jsxModeNeedsExplicitImport,keywordPart:()=>keywordPart,last:()=>Zn,lastOrUndefined:()=>Cn,length:()=>I,libMap:()=>libMap,libs:()=>libs,lineBreakPart:()=>lineBreakPart,linkNamePart:()=>linkNamePart,linkPart:()=>linkPart,linkTextPart:()=>linkTextPart,listFiles:()=>listFiles,loadModuleFromGlobalCache:()=>loadModuleFromGlobalCache,loadWithModeAwareCache:()=>loadWithModeAwareCache,makeIdentifierFromModuleName:()=>GD,makeImport:()=>makeImport,makeImportIfNecessary:()=>makeImportIfNecessary,makeStringLiteral:()=>makeStringLiteral,mangleScopedPackageName:()=>mangleScopedPackageName,map:()=>Ze,mapAllOrFail:()=>Pt,mapDefined:()=>qt,mapDefinedEntries:()=>Ri,mapDefinedIterator:()=>Zr,mapEntries:()=>be,mapIterator:()=>st,mapOneOrMany:()=>mapOneOrMany,mapToDisplayParts:()=>mapToDisplayParts,matchFiles:()=>qM,matchPatternOrExact:()=>tL,matchedText:()=>S5,matchesExclude:()=>matchesExclude,maybeBind:()=>le,maybeSetLocalizedDiagnosticMessages:()=>vx,memoize:()=>tl,memoizeCached:()=>D1,memoizeOne:()=>An,memoizeWeak:()=>P1,metadataHelper:()=>metadataHelper,min:()=>N1,minAndMax:()=>nL,missingFileModifiedTime:()=>missingFileModifiedTime,modifierToFlag:()=>Q0,modifiersToFlags:()=>Vn,moduleOptionDeclaration:()=>moduleOptionDeclaration,moduleResolutionIsEqualTo:()=>TD,moduleResolutionNameAndModeGetter:()=>moduleResolutionNameAndModeGetter,moduleResolutionOptionDeclarations:()=>moduleResolutionOptionDeclarations,moduleResolutionSupportsPackageJsonExportsAndImports:()=>_v,moduleResolutionUsesNodeModules:()=>moduleResolutionUsesNodeModules,moduleSpecifiers:()=>ts_moduleSpecifiers_exports,moveEmitHelpers:()=>moveEmitHelpers,moveRangeEnd:()=>gO,moveRangePastDecorators:()=>_x,moveRangePastModifiers:()=>yO,moveRangePos:()=>Ff,moveSyntheticComments:()=>moveSyntheticComments,mutateMap:()=>UO,mutateMapSkippingNewValues:()=>fx,needsParentheses:()=>needsParentheses,needsScopeMarker:()=>IP,newCaseClauseTracker:()=>newCaseClauseTracker,newPrivateEnvironment:()=>newPrivateEnvironment,noEmitNotification:()=>noEmitNotification,noEmitSubstitution:()=>noEmitSubstitution,noTransformers:()=>noTransformers,noTruncationMaximumTruncationLength:()=>n8,nodeCanBeDecorated:()=>R3,nodeHasName:()=>hS,nodeIsDecorated:()=>q_,nodeIsMissing:()=>va,nodeIsPresent:()=>xl,nodeIsSynthesized:()=>fs,nodeModuleNameResolver:()=>nodeModuleNameResolver,nodeModulesPathPart:()=>nodeModulesPathPart,nodeNextJsonConfigResolver:()=>nodeNextJsonConfigResolver,nodeOrChildIsDecorated:()=>m0,nodeOverlapsWithStartEnd:()=>nodeOverlapsWithStartEnd,nodePosToString:()=>ID,nodeSeenTracker:()=>nodeSeenTracker,nodeStartsNewLexicalEnvironment:()=>hN,nodeToDisplayParts:()=>nodeToDisplayParts,noop:()=>yn,noopFileWatcher:()=>noopFileWatcher,noopPush:()=>CT,normalizePath:()=>Un,normalizeSlashes:()=>Eo,not:()=>w5,notImplemented:()=>A1,notImplementedResolver:()=>notImplementedResolver,nullNodeConverters:()=>nullNodeConverters,nullParenthesizerRules:()=>Jv,nullTransformationContext:()=>nullTransformationContext,objectAllocator:()=>lr,operatorPart:()=>operatorPart,optionDeclarations:()=>optionDeclarations,optionMapToObject:()=>optionMapToObject,optionsAffectingProgramStructure:()=>optionsAffectingProgramStructure,optionsForBuild:()=>optionsForBuild,optionsForWatch:()=>optionsForWatch,optionsHaveChanges:()=>J_,optionsHaveModuleResolutionChanges:()=>p3,or:()=>W1,orderedRemoveItem:()=>J,orderedRemoveItemAt:()=>vT,outFile:()=>B0,packageIdToPackageName:()=>f3,packageIdToString:()=>xD,padLeft:()=>D5,padRight:()=>k5,paramHelper:()=>paramHelper,parameterIsThisKeyword:()=>kl,parameterNamePart:()=>parameterNamePart,parseBaseNodeFactory:()=>I2,parseBigInt:()=>oL,parseBuildCommand:()=>parseBuildCommand,parseCommandLine:()=>parseCommandLine,parseCommandLineWorker:()=>parseCommandLineWorker,parseConfigFileTextToJson:()=>parseConfigFileTextToJson,parseConfigFileWithSystem:()=>parseConfigFileWithSystem,parseConfigHostFromCompilerHostLike:()=>parseConfigHostFromCompilerHostLike,parseCustomTypeOption:()=>parseCustomTypeOption,parseIsolatedEntityName:()=>$J,parseIsolatedJSDocComment:()=>XJ,parseJSDocTypeExpressionForTests:()=>YJ,parseJsonConfigFileContent:()=>parseJsonConfigFileContent,parseJsonSourceFileConfigFileContent:()=>parseJsonSourceFileConfigFileContent,parseJsonText:()=>KJ,parseListTypeOption:()=>parseListTypeOption,parseNodeFactory:()=>dc,parseNodeModuleFromPath:()=>parseNodeModuleFromPath,parsePackageName:()=>parsePackageName,parsePseudoBigInt:()=>Hf,parseValidBigInt:()=>Ux,patchWriteFileEnsuringDirectory:()=>patchWriteFileEnsuringDirectory,pathContainsNodeModules:()=>pathContainsNodeModules,pathIsAbsolute:()=>sy,pathIsBareSpecifier:()=>G5,pathIsRelative:()=>So,patternText:()=>T5,perfLogger:()=>Dp,performIncrementalCompilation:()=>performIncrementalCompilation,performance:()=>ts_performance_exports,plainJSErrors:()=>plainJSErrors,positionBelongsToNode:()=>positionBelongsToNode,positionIsASICandidate:()=>positionIsASICandidate,positionIsSynthesized:()=>hs,positionsAreOnSameLine:()=>$_,preProcessFile:()=>preProcessFile,probablyUsesSemicolons:()=>probablyUsesSemicolons,processCommentPragmas:()=>ZE,processPragmasIntoFields:()=>e7,processTaggedTemplateExpression:()=>processTaggedTemplateExpression,programContainsEsModules:()=>programContainsEsModules,programContainsModules:()=>programContainsModules,projectReferenceIsEqualTo:()=>bD,propKeyHelper:()=>propKeyHelper,propertyNamePart:()=>propertyNamePart,pseudoBigIntToString:()=>yv,punctuationPart:()=>punctuationPart,pushIfUnique:()=>qn,quote:()=>quote,quotePreferenceFromString:()=>quotePreferenceFromString,rangeContainsPosition:()=>rangeContainsPosition,rangeContainsPositionExclusive:()=>rangeContainsPositionExclusive,rangeContainsRange:()=>rangeContainsRange,rangeContainsRangeExclusive:()=>rangeContainsRangeExclusive,rangeContainsStartEnd:()=>rangeContainsStartEnd,rangeEndIsOnSameLineAsRangeStart:()=>EO,rangeEndPositionsAreOnSameLine:()=>xO,rangeEquals:()=>Kc,rangeIsOnSingleLine:()=>TO,rangeOfNode:()=>iL,rangeOfTypeParameters:()=>aL,rangeOverlapsWithStartEnd:()=>rangeOverlapsWithStartEnd,rangeStartIsOnSameLineAsRangeEnd:()=>cx,rangeStartPositionsAreOnSameLine:()=>SO,readBuilderProgram:()=>readBuilderProgram,readConfigFile:()=>readConfigFile,readHelper:()=>readHelper,readJson:()=>hO,readJsonConfigFile:()=>readJsonConfigFile,readJsonOrUndefined:()=>ax,realizeDiagnostics:()=>realizeDiagnostics,reduceEachLeadingCommentRange:()=>zT,reduceEachTrailingCommentRange:()=>WT,reduceLeft:()=>Qa,reduceLeftIterator:()=>K,reducePathComponents:()=>is,refactor:()=>ts_refactor_exports,regExpEscape:()=>JM,relativeComplement:()=>h_,removeAllComments:()=>removeAllComments,removeEmitHelper:()=>removeEmitHelper,removeExtension:()=>Fx,removeFileExtension:()=>Ll,removeIgnoredPath:()=>removeIgnoredPath,removeMinAndVersionNumbers:()=>q1,removeOptionality:()=>removeOptionality,removePrefix:()=>x5,removeSuffix:()=>F1,removeTrailingDirectorySeparator:()=>P_,repeatString:()=>repeatString,replaceElement:()=>ei,resolutionExtensionIsTSOrJson:()=>YM,resolveConfigFileProjectName:()=>resolveConfigFileProjectName,resolveJSModule:()=>resolveJSModule,resolveModuleName:()=>resolveModuleName,resolveModuleNameFromCache:()=>resolveModuleNameFromCache,resolvePackageNameToPackageJson:()=>resolvePackageNameToPackageJson,resolvePath:()=>oy,resolveProjectReferencePath:()=>resolveProjectReferencePath,resolveTripleslashReference:()=>resolveTripleslashReference,resolveTypeReferenceDirective:()=>resolveTypeReferenceDirective,resolvingEmptyArray:()=>t8,restHelper:()=>restHelper,returnFalse:()=>w_,returnNoopFileWatcher:()=>returnNoopFileWatcher,returnTrue:()=>vp,returnUndefined:()=>C1,returnsPromise:()=>returnsPromise,runInitializersHelper:()=>runInitializersHelper,sameFlatMap:()=>at,sameMap:()=>tt,sameMapping:()=>sameMapping,scanShebangTrivia:()=>yy,scanTokenAtPosition:()=>yk,scanner:()=>Zo,screenStartingMessageCodes:()=>screenStartingMessageCodes,semanticDiagnosticsOptionDeclarations:()=>semanticDiagnosticsOptionDeclarations,serializeCompilerOptions:()=>serializeCompilerOptions,server:()=>ts_server_exports,servicesVersion:()=>E7,setCommentRange:()=>setCommentRange,setConfigFileInOptions:()=>setConfigFileInOptions,setConstantValue:()=>setConstantValue,setEachParent:()=>Q_,setEmitFlags:()=>setEmitFlags,setFunctionNameHelper:()=>setFunctionNameHelper,setGetSourceFileAsHashVersioned:()=>setGetSourceFileAsHashVersioned,setIdentifierAutoGenerate:()=>setIdentifierAutoGenerate,setIdentifierGeneratedImportReference:()=>setIdentifierGeneratedImportReference,setIdentifierTypeArguments:()=>setIdentifierTypeArguments,setInternalEmitFlags:()=>setInternalEmitFlags,setLocalizedDiagnosticMessages:()=>yx,setModuleDefaultHelper:()=>setModuleDefaultHelper,setNodeFlags:()=>dL,setObjectAllocator:()=>gx,setOriginalNode:()=>Dn,setParent:()=>Sa,setParentRecursive:()=>Vx,setPrivateIdentifier:()=>setPrivateIdentifier,setResolvedModule:()=>gD,setResolvedTypeReferenceDirective:()=>yD,setSnippetElement:()=>setSnippetElement,setSourceMapRange:()=>setSourceMapRange,setStackTraceLimit:()=>setStackTraceLimit,setStartsOnNewLine:()=>setStartsOnNewLine,setSyntheticLeadingComments:()=>setSyntheticLeadingComments,setSyntheticTrailingComments:()=>setSyntheticTrailingComments,setSys:()=>setSys,setSysLog:()=>setSysLog,setTextRange:()=>Rt,setTextRangeEnd:()=>Wx,setTextRangePos:()=>Gf,setTextRangePosEnd:()=>Us,setTextRangePosWidth:()=>$f,setTokenSourceMapRange:()=>setTokenSourceMapRange,setTypeNode:()=>setTypeNode,setUILocale:()=>xp,setValueDeclaration:()=>PI,shouldAllowImportingTsExtension:()=>shouldAllowImportingTsExtension,shouldPreserveConstEnums:()=>EM,shouldUseUriStyleNodeCoreModules:()=>shouldUseUriStyleNodeCoreModules,showModuleSpecifier:()=>HO,signatureHasLiteralTypes:()=>signatureHasLiteralTypes,signatureHasRestParameter:()=>signatureHasRestParameter,signatureToDisplayParts:()=>signatureToDisplayParts,single:()=>Yc,singleElementArray:()=>Cp,singleIterator:()=>Ka,singleOrMany:()=>mo,singleOrUndefined:()=>Xa,skipAlias:()=>RO,skipAssertions:()=>Hj,skipConstraint:()=>skipConstraint,skipOuterExpressions:()=>$o,skipParentheses:()=>Pl,skipPartiallyEmittedExpressions:()=>lf,skipTrivia:()=>Ar,skipTypeChecking:()=>sL,skipTypeParentheses:()=>GI,skipWhile:()=>N5,sliceAfter:()=>rL,some:()=>Ke,sort:()=>Is,sortAndDeduplicate:()=>uo,sortAndDeduplicateDiagnostics:()=>yA,sourceFileAffectingCompilerOptions:()=>sourceFileAffectingCompilerOptions,sourceFileMayBeEmitted:()=>q0,sourceMapCommentRegExp:()=>sourceMapCommentRegExp,sourceMapCommentRegExpDontCareLineStart:()=>sourceMapCommentRegExpDontCareLineStart,spacePart:()=>spacePart,spanMap:()=>co,spreadArrayHelper:()=>spreadArrayHelper,stableSort:()=>Ns,startEndContainsRange:()=>startEndContainsRange,startEndOverlapsWithStartEnd:()=>startEndOverlapsWithStartEnd,startOnNewLine:()=>vd,startTracing:()=>startTracing,startsWith:()=>Pn,startsWithDirectory:()=>rA,startsWithUnderscore:()=>startsWithUnderscore,startsWithUseStrict:()=>SE,stringContains:()=>Fi,stringContainsAt:()=>stringContainsAt,stringToToken:()=>_l,stripQuotes:()=>CN,supportedDeclarationExtensions:()=>Rv,supportedJSExtensions:()=>Mv,supportedJSExtensionsFlat:()=>Lv,supportedLocaleDirectories:()=>Hy,supportedTSExtensions:()=>Jo,supportedTSExtensionsFlat:()=>Ov,supportedTSImplementationExtensions:()=>b8,suppressLeadingAndTrailingTrivia:()=>suppressLeadingAndTrailingTrivia,suppressLeadingTrivia:()=>suppressLeadingTrivia,suppressTrailingTrivia:()=>suppressTrailingTrivia,symbolEscapedNameNoDefault:()=>symbolEscapedNameNoDefault,symbolName:()=>rf,symbolNameNoDefault:()=>symbolNameNoDefault,symbolPart:()=>symbolPart,symbolToDisplayParts:()=>symbolToDisplayParts,syntaxMayBeASICandidate:()=>syntaxMayBeASICandidate,syntaxRequiresTrailingSemicolonOrASI:()=>syntaxRequiresTrailingSemicolonOrASI,sys:()=>iy,sysLog:()=>sysLog,tagNamesAreEquivalent:()=>Hi,takeWhile:()=>I5,targetOptionDeclaration:()=>targetOptionDeclaration,templateObjectHelper:()=>templateObjectHelper,testFormatSettings:()=>testFormatSettings,textChangeRangeIsUnchanged:()=>cS,textChangeRangeNewSpan:()=>R_,textChanges:()=>ts_textChanges_exports,textOrKeywordPart:()=>textOrKeywordPart,textPart:()=>textPart,textRangeContainsPositionInclusive:()=>bA,textSpanContainsPosition:()=>vA,textSpanContainsTextSpan:()=>TA,textSpanEnd:()=>Ir,textSpanIntersection:()=>_S,textSpanIntersectsWith:()=>EA,textSpanIntersectsWithPosition:()=>wA,textSpanIntersectsWithTextSpan:()=>xA,textSpanIsEmpty:()=>sS,textSpanOverlap:()=>oS,textSpanOverlapsWith:()=>SA,textSpansEqual:()=>textSpansEqual,textToKeywordObj:()=>cl,timestamp:()=>ts,toArray:()=>en,toBuilderFileEmit:()=>toBuilderFileEmit,toBuilderStateFileInfoForMultiEmit:()=>toBuilderStateFileInfoForMultiEmit,toEditorSettings:()=>lu,toFileNameLowerCase:()=>Tp,toLowerCase:()=>bp,toPath:()=>Ui,toProgramEmitPending:()=>toProgramEmitPending,tokenIsIdentifierOrKeyword:()=>fr,tokenIsIdentifierOrKeywordOrGreaterThan:()=>qT,tokenToString:()=>Br,trace:()=>trace,tracing:()=>rs,tracingEnabled:()=>tracingEnabled,transform:()=>transform,transformClassFields:()=>transformClassFields,transformDeclarations:()=>transformDeclarations,transformECMAScriptModule:()=>transformECMAScriptModule,transformES2015:()=>transformES2015,transformES2016:()=>transformES2016,transformES2017:()=>transformES2017,transformES2018:()=>transformES2018,transformES2019:()=>transformES2019,transformES2020:()=>transformES2020,transformES2021:()=>transformES2021,transformES5:()=>transformES5,transformESDecorators:()=>transformESDecorators,transformESNext:()=>transformESNext,transformGenerators:()=>transformGenerators,transformJsx:()=>transformJsx,transformLegacyDecorators:()=>transformLegacyDecorators,transformModule:()=>transformModule,transformNodeModule:()=>transformNodeModule,transformNodes:()=>transformNodes,transformSystemModule:()=>transformSystemModule,transformTypeScript:()=>transformTypeScript,transpile:()=>transpile,transpileModule:()=>transpileModule,transpileOptionValueCompilerOptions:()=>transpileOptionValueCompilerOptions,trimString:()=>Pp,trimStringEnd:()=>X1,trimStringStart:()=>nl,tryAddToSet:()=>ua,tryAndIgnoreErrors:()=>tryAndIgnoreErrors,tryCast:()=>ln,tryDirectoryExists:()=>tryDirectoryExists,tryExtractTSExtension:()=>uO,tryFileExists:()=>tryFileExists,tryGetClassExtendingExpressionWithTypeArguments:()=>ex,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>tx,tryGetDirectories:()=>tryGetDirectories,tryGetExtensionFromPath:()=>hv,tryGetImportFromModuleSpecifier:()=>Y3,tryGetJSDocSatisfiesTypeNode:()=>e8,tryGetModuleNameFromFile:()=>CE,tryGetModuleSpecifierFromDeclaration:()=>kI,tryGetNativePerformanceHooks:()=>J5,tryGetPropertyAccessOrIdentifierToString:()=>tv,tryGetPropertyNameOfBindingOrAssignmentElement:()=>PE,tryGetSourceMappingURL:()=>tryGetSourceMappingURL,tryGetTextOfPropertyName:()=>e0,tryIOAndConsumeErrors:()=>tryIOAndConsumeErrors,tryParsePattern:()=>Bx,tryParsePatterns:()=>XM,tryParseRawSourceMap:()=>tryParseRawSourceMap,tryReadDirectory:()=>tryReadDirectory,tryReadFile:()=>tryReadFile,tryRemoveDirectoryPrefix:()=>jM,tryRemoveExtension:()=>Jx,tryRemovePrefix:()=>ST,tryRemoveSuffix:()=>B1,typeAcquisitionDeclarations:()=>typeAcquisitionDeclarations,typeAliasNamePart:()=>typeAliasNamePart,typeDirectiveIsEqualTo:()=>ED,typeKeywords:()=>typeKeywords,typeParameterNamePart:()=>typeParameterNamePart,typeReferenceResolutionNameAndModeGetter:()=>typeReferenceResolutionNameAndModeGetter,typeToDisplayParts:()=>typeToDisplayParts,unchangedPollThresholds:()=>unchangedPollThresholds,unchangedTextChangeRange:()=>Vy,unescapeLeadingUnderscores:()=>dl,unmangleScopedPackageName:()=>unmangleScopedPackageName,unorderedRemoveItem:()=>bT,unorderedRemoveItemAt:()=>U1,unreachableCodeIsError:()=>yM,unusedLabelIsError:()=>vM,unwrapInnermostStatementOfLabel:()=>Rk,updateErrorForNoInputFiles:()=>updateErrorForNoInputFiles,updateLanguageServiceSourceFile:()=>T7,updateMissingFilePathsWatch:()=>updateMissingFilePathsWatch,updatePackageJsonWatch:()=>updatePackageJsonWatch,updateResolutionField:()=>updateResolutionField,updateSharedExtendedConfigFileWatcher:()=>updateSharedExtendedConfigFileWatcher,updateSourceFile:()=>k2,updateWatchingWildcardDirectories:()=>updateWatchingWildcardDirectories,usesExtensionsOnImports:()=>Rx,usingSingleLineStringWriter:()=>mD,utf16EncodeAsString:()=>by,validateLocaleAndSetLanguage:()=>DA,valuesHelper:()=>valuesHelper,version:()=>C,versionMajorMinor:()=>m,visitArray:()=>visitArray,visitCommaListElements:()=>visitCommaListElements,visitEachChild:()=>visitEachChild,visitFunctionBody:()=>visitFunctionBody,visitIterationBody:()=>visitIterationBody,visitLexicalEnvironment:()=>visitLexicalEnvironment,visitNode:()=>visitNode,visitNodes:()=>visitNodes2,visitParameterList:()=>visitParameterList,walkUpBindingElementsAndPatterns:()=>fS,walkUpLexicalEnvironments:()=>walkUpLexicalEnvironments,walkUpOuterExpressions:()=>Vj,walkUpParenthesizedExpressions:()=>D0,walkUpParenthesizedTypes:()=>VI,walkUpParenthesizedTypesAndGetParentAndChild:()=>HI,whitespaceOrMapCommentRegExp:()=>whitespaceOrMapCommentRegExp,writeCommentRange:()=>$N,writeFile:()=>jN,writeFileEnsuringDirectories:()=>JN,zipToModeAwareCache:()=>zipToModeAwareCache,zipWith:()=>ce});var R7=D({"src/typescript/_namespaces/ts.ts"(){"use strict";nn(),l7(),L2(),FB()}}),BB=P({"src/typescript/typescript.ts"(e,t){R7(),R7(),typeof console<"u"&&(Y.loggingHost={log(r,s){switch(r){case 1:return console.error(s);case 2:return console.warn(s);case 3:return console.log(s);case 4:return console.log(s)}}}),t.exports=L7}});_.exports=BB()}}),DW=Oe({"src/language-js/parse/postprocess/typescript.js"(a,_){"use strict";De();var v=F9(),h=q9(),D=U9(),P={AbstractKeyword:126,SourceFile:308,PropertyDeclaration:169};function y(c){for(;c&&c.kind!==P.SourceFile;)c=c.parent;return c}function m(c,M){let q=y(c),[W,K]=[c.getStart(),c.end].map(ce=>{let{line:Ie,character:me}=q.getLineAndCharacterOfPosition(ce);return{line:Ie+1,column:me}});D({loc:{start:W,end:K}},M)}function C(c){let M=vr();return[!0,!1].some(q=>M.nodeCanBeDecorated(q,c,c.parent,c.parent.parent))}function d(c){let{modifiers:M}=c;if(!v(M))return;let q=vr(),{SyntaxKind:W}=q;for(let K of M)q.isDecorator(K)&&!C(c)&&(c.kind===W.MethodDeclaration&&!q.nodeIsPresent(c.body)&&m(K,"A decorator can only decorate a method implementation, not an overload."),m(K,"Decorators are not valid here."))}function E(c,M){c.kind!==P.PropertyDeclaration||c.modifiers&&!c.modifiers.some(q=>q.kind===P.AbstractKeyword)||c.initializer&&M.value===null&&D(M,"Abstract property cannot have an initializer")}function I(c,M){if(!/@|abstract/.test(M.originalText))return;let{esTreeNodeToTSNodeMap:q,tsNodeToESTreeNodeMap:W}=c;h(c.ast,K=>{let ce=q.get(K);if(!ce)return;let Ie=W.get(ce);Ie===K&&(d(ce),E(ce,Ie))})}_.exports={throwErrorForInvalidNodes:I}}}),Ga=Oe({"scripts/build/shims/debug.cjs"(a,_){"use strict";De(),_.exports=()=>()=>{}}}),h1=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/constants.js"(a,_){De();var v="2.0.0",h=256,D=Number.MAX_SAFE_INTEGER||9007199254740991,P=16;_.exports={SEMVER_SPEC_VERSION:v,MAX_LENGTH:h,MAX_SAFE_INTEGER:D,MAX_SAFE_COMPONENT_LENGTH:P}}}),g1=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/debug.js"(a,_){De();var v=typeof cn=="object"&&cn.env&&cn.env.NODE_DEBUG&&/\bsemver\b/i.test(cn.env.NODE_DEBUG)?function(){for(var h=arguments.length,D=new Array(h),P=0;P{};_.exports=v}}),Bc=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/re.js"(a,_){De();var{MAX_SAFE_COMPONENT_LENGTH:v}=h1(),h=g1();a=_.exports={};var D=a.re=[],P=a.src=[],y=a.t={},m=0,C=(d,E,I)=>{let c=m++;h(d,c,E),y[d]=c,P[c]=E,D[c]=new RegExp(E,I?"g":void 0)};C("NUMERICIDENTIFIER","0|[1-9]\\d*"),C("NUMERICIDENTIFIERLOOSE","[0-9]+"),C("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),C("MAINVERSION",`(${P[y.NUMERICIDENTIFIER]})\\.(${P[y.NUMERICIDENTIFIER]})\\.(${P[y.NUMERICIDENTIFIER]})`),C("MAINVERSIONLOOSE",`(${P[y.NUMERICIDENTIFIERLOOSE]})\\.(${P[y.NUMERICIDENTIFIERLOOSE]})\\.(${P[y.NUMERICIDENTIFIERLOOSE]})`),C("PRERELEASEIDENTIFIER",`(?:${P[y.NUMERICIDENTIFIER]}|${P[y.NONNUMERICIDENTIFIER]})`),C("PRERELEASEIDENTIFIERLOOSE",`(?:${P[y.NUMERICIDENTIFIERLOOSE]}|${P[y.NONNUMERICIDENTIFIER]})`),C("PRERELEASE",`(?:-(${P[y.PRERELEASEIDENTIFIER]}(?:\\.${P[y.PRERELEASEIDENTIFIER]})*))`),C("PRERELEASELOOSE",`(?:-?(${P[y.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${P[y.PRERELEASEIDENTIFIERLOOSE]})*))`),C("BUILDIDENTIFIER","[0-9A-Za-z-]+"),C("BUILD",`(?:\\+(${P[y.BUILDIDENTIFIER]}(?:\\.${P[y.BUILDIDENTIFIER]})*))`),C("FULLPLAIN",`v?${P[y.MAINVERSION]}${P[y.PRERELEASE]}?${P[y.BUILD]}?`),C("FULL",`^${P[y.FULLPLAIN]}$`),C("LOOSEPLAIN",`[v=\\s]*${P[y.MAINVERSIONLOOSE]}${P[y.PRERELEASELOOSE]}?${P[y.BUILD]}?`),C("LOOSE",`^${P[y.LOOSEPLAIN]}$`),C("GTLT","((?:<|>)?=?)"),C("XRANGEIDENTIFIERLOOSE",`${P[y.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),C("XRANGEIDENTIFIER",`${P[y.NUMERICIDENTIFIER]}|x|X|\\*`),C("XRANGEPLAIN",`[v=\\s]*(${P[y.XRANGEIDENTIFIER]})(?:\\.(${P[y.XRANGEIDENTIFIER]})(?:\\.(${P[y.XRANGEIDENTIFIER]})(?:${P[y.PRERELEASE]})?${P[y.BUILD]}?)?)?`),C("XRANGEPLAINLOOSE",`[v=\\s]*(${P[y.XRANGEIDENTIFIERLOOSE]})(?:\\.(${P[y.XRANGEIDENTIFIERLOOSE]})(?:\\.(${P[y.XRANGEIDENTIFIERLOOSE]})(?:${P[y.PRERELEASELOOSE]})?${P[y.BUILD]}?)?)?`),C("XRANGE",`^${P[y.GTLT]}\\s*${P[y.XRANGEPLAIN]}$`),C("XRANGELOOSE",`^${P[y.GTLT]}\\s*${P[y.XRANGEPLAINLOOSE]}$`),C("COERCE",`(^|[^\\d])(\\d{1,${v}})(?:\\.(\\d{1,${v}}))?(?:\\.(\\d{1,${v}}))?(?:$|[^\\d])`),C("COERCERTL",P[y.COERCE],!0),C("LONETILDE","(?:~>?)"),C("TILDETRIM",`(\\s*)${P[y.LONETILDE]}\\s+`,!0),a.tildeTrimReplace="$1~",C("TILDE",`^${P[y.LONETILDE]}${P[y.XRANGEPLAIN]}$`),C("TILDELOOSE",`^${P[y.LONETILDE]}${P[y.XRANGEPLAINLOOSE]}$`),C("LONECARET","(?:\\^)"),C("CARETTRIM",`(\\s*)${P[y.LONECARET]}\\s+`,!0),a.caretTrimReplace="$1^",C("CARET",`^${P[y.LONECARET]}${P[y.XRANGEPLAIN]}$`),C("CARETLOOSE",`^${P[y.LONECARET]}${P[y.XRANGEPLAINLOOSE]}$`),C("COMPARATORLOOSE",`^${P[y.GTLT]}\\s*(${P[y.LOOSEPLAIN]})$|^$`),C("COMPARATOR",`^${P[y.GTLT]}\\s*(${P[y.FULLPLAIN]})$|^$`),C("COMPARATORTRIM",`(\\s*)${P[y.GTLT]}\\s*(${P[y.LOOSEPLAIN]}|${P[y.XRANGEPLAIN]})`,!0),a.comparatorTrimReplace="$1$2$3",C("HYPHENRANGE",`^\\s*(${P[y.XRANGEPLAIN]})\\s+-\\s+(${P[y.XRANGEPLAIN]})\\s*$`),C("HYPHENRANGELOOSE",`^\\s*(${P[y.XRANGEPLAINLOOSE]})\\s+-\\s+(${P[y.XRANGEPLAINLOOSE]})\\s*$`),C("STAR","(<|>)?=?\\s*\\*"),C("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),C("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}}),y1=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/parse-options.js"(a,_){De();var v=["includePrerelease","loose","rtl"],h=D=>D?typeof D!="object"?{loose:!0}:v.filter(P=>D[P]).reduce((P,y)=>(P[y]=!0,P),{}):{};_.exports=h}}),z9=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/internal/identifiers.js"(a,_){De();var v=/^[0-9]+$/,h=(P,y)=>{let m=v.test(P),C=v.test(y);return m&&C&&(P=+P,y=+y),P===y?0:m&&!C?-1:C&&!m?1:Ph(y,P);_.exports={compareIdentifiers:h,rcompareIdentifiers:D}}}),Bn=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/semver.js"(a,_){De();var v=g1(),{MAX_LENGTH:h,MAX_SAFE_INTEGER:D}=h1(),{re:P,t:y}=Bc(),m=y1(),{compareIdentifiers:C}=z9(),d=class{constructor(E,I){if(I=m(I),E instanceof d){if(E.loose===!!I.loose&&E.includePrerelease===!!I.includePrerelease)return E;E=E.version}else if(typeof E!="string")throw new TypeError(`Invalid Version: ${E}`);if(E.length>h)throw new TypeError(`version is longer than ${h} characters`);v("SemVer",E,I),this.options=I,this.loose=!!I.loose,this.includePrerelease=!!I.includePrerelease;let c=E.trim().match(I.loose?P[y.LOOSE]:P[y.FULL]);if(!c)throw new TypeError(`Invalid Version: ${E}`);if(this.raw=E,this.major=+c[1],this.minor=+c[2],this.patch=+c[3],this.major>D||this.major<0)throw new TypeError("Invalid major version");if(this.minor>D||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>D||this.patch<0)throw new TypeError("Invalid patch version");c[4]?this.prerelease=c[4].split(".").map(M=>{if(/^[0-9]+$/.test(M)){let q=+M;if(q>=0&&q=0;)typeof this.prerelease[c]=="number"&&(this.prerelease[c]++,c=-2);c===-1&&this.prerelease.push(0)}I&&(C(this.prerelease[0],I)===0?isNaN(this.prerelease[1])&&(this.prerelease=[I,0]):this.prerelease=[I,0]);break;default:throw new Error(`invalid increment argument: ${E}`)}return this.format(),this.raw=this.version,this}};_.exports=d}}),qc=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/parse.js"(a,_){De();var{MAX_LENGTH:v}=h1(),{re:h,t:D}=Bc(),P=Bn(),y=y1(),m=(C,d)=>{if(d=y(d),C instanceof P)return C;if(typeof C!="string"||C.length>v||!(d.loose?h[D.LOOSE]:h[D.FULL]).test(C))return null;try{return new P(C,d)}catch{return null}};_.exports=m}}),kW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/valid.js"(a,_){De();var v=qc(),h=(D,P)=>{let y=v(D,P);return y?y.version:null};_.exports=h}}),IW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/clean.js"(a,_){De();var v=qc(),h=(D,P)=>{let y=v(D.trim().replace(/^[=v]+/,""),P);return y?y.version:null};_.exports=h}}),NW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/inc.js"(a,_){De();var v=Bn(),h=(D,P,y,m)=>{typeof y=="string"&&(m=y,y=void 0);try{return new v(D instanceof v?D.version:D,y).inc(P,m).version}catch{return null}};_.exports=h}}),_a=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare.js"(a,_){De();var v=Bn(),h=(D,P,y)=>new v(D,y).compare(new v(P,y));_.exports=h}}),sT=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/eq.js"(a,_){De();var v=_a(),h=(D,P,y)=>v(D,P,y)===0;_.exports=h}}),OW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/diff.js"(a,_){De();var v=qc(),h=sT(),D=(P,y)=>{if(h(P,y))return null;{let m=v(P),C=v(y),d=m.prerelease.length||C.prerelease.length,E=d?"pre":"",I=d?"prerelease":"";for(let c in m)if((c==="major"||c==="minor"||c==="patch")&&m[c]!==C[c])return E+c;return I}};_.exports=D}}),MW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/major.js"(a,_){De();var v=Bn(),h=(D,P)=>new v(D,P).major;_.exports=h}}),LW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/minor.js"(a,_){De();var v=Bn(),h=(D,P)=>new v(D,P).minor;_.exports=h}}),RW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/patch.js"(a,_){De();var v=Bn(),h=(D,P)=>new v(D,P).patch;_.exports=h}}),jW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/prerelease.js"(a,_){De();var v=qc(),h=(D,P)=>{let y=v(D,P);return y&&y.prerelease.length?y.prerelease:null};_.exports=h}}),JW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/rcompare.js"(a,_){De();var v=_a(),h=(D,P,y)=>v(P,D,y);_.exports=h}}),FW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare-loose.js"(a,_){De();var v=_a(),h=(D,P)=>v(D,P,!0);_.exports=h}}),oT=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/compare-build.js"(a,_){De();var v=Bn(),h=(D,P,y)=>{let m=new v(D,y),C=new v(P,y);return m.compare(C)||m.compareBuild(C)};_.exports=h}}),BW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/sort.js"(a,_){De();var v=oT(),h=(D,P)=>D.sort((y,m)=>v(y,m,P));_.exports=h}}),qW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/rsort.js"(a,_){De();var v=oT(),h=(D,P)=>D.sort((y,m)=>v(m,y,P));_.exports=h}}),v1=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/gt.js"(a,_){De();var v=_a(),h=(D,P,y)=>v(D,P,y)>0;_.exports=h}}),_T=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/lt.js"(a,_){De();var v=_a(),h=(D,P,y)=>v(D,P,y)<0;_.exports=h}}),W9=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/neq.js"(a,_){De();var v=_a(),h=(D,P,y)=>v(D,P,y)!==0;_.exports=h}}),cT=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/gte.js"(a,_){De();var v=_a(),h=(D,P,y)=>v(D,P,y)>=0;_.exports=h}}),lT=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/lte.js"(a,_){De();var v=_a(),h=(D,P,y)=>v(D,P,y)<=0;_.exports=h}}),V9=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/cmp.js"(a,_){De();var v=sT(),h=W9(),D=v1(),P=cT(),y=_T(),m=lT(),C=(d,E,I,c)=>{switch(E){case"===":return typeof d=="object"&&(d=d.version),typeof I=="object"&&(I=I.version),d===I;case"!==":return typeof d=="object"&&(d=d.version),typeof I=="object"&&(I=I.version),d!==I;case"":case"=":case"==":return v(d,I,c);case"!=":return h(d,I,c);case">":return D(d,I,c);case">=":return P(d,I,c);case"<":return y(d,I,c);case"<=":return m(d,I,c);default:throw new TypeError(`Invalid operator: ${E}`)}};_.exports=C}}),UW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/coerce.js"(a,_){De();var v=Bn(),h=qc(),{re:D,t:P}=Bc(),y=(m,C)=>{if(m instanceof v)return m;if(typeof m=="number"&&(m=String(m)),typeof m!="string")return null;C=C||{};let d=null;if(!C.rtl)d=m.match(D[P.COERCE]);else{let E;for(;(E=D[P.COERCERTL].exec(m))&&(!d||d.index+d[0].length!==m.length);)(!d||E.index+E[0].length!==d.index+d[0].length)&&(d=E),D[P.COERCERTL].lastIndex=E.index+E[1].length+E[2].length;D[P.COERCERTL].lastIndex=-1}return d===null?null:h(`${d[2]}.${d[3]||"0"}.${d[4]||"0"}`,C)};_.exports=y}}),zW=Oe({"node_modules/yallist/iterator.js"(a,_){"use strict";De(),_.exports=function(v){v.prototype[Symbol.iterator]=function*(){for(let h=this.head;h;h=h.next)yield h.value}}}}),WW=Oe({"node_modules/yallist/yallist.js"(a,_){"use strict";De(),_.exports=v,v.Node=y,v.create=v;function v(m){var C=this;if(C instanceof v||(C=new v),C.tail=null,C.head=null,C.length=0,m&&typeof m.forEach=="function")m.forEach(function(I){C.push(I)});else if(arguments.length>0)for(var d=0,E=arguments.length;d1)d=C;else if(this.head)E=this.head.next,d=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var I=0;E!==null;I++)d=m(d,E.value,I),E=E.next;return d},v.prototype.reduceReverse=function(m,C){var d,E=this.tail;if(arguments.length>1)d=C;else if(this.tail)E=this.tail.prev,d=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var I=this.length-1;E!==null;I--)d=m(d,E.value,I),E=E.prev;return d},v.prototype.toArray=function(){for(var m=new Array(this.length),C=0,d=this.head;d!==null;C++)m[C]=d.value,d=d.next;return m},v.prototype.toArrayReverse=function(){for(var m=new Array(this.length),C=0,d=this.tail;d!==null;C++)m[C]=d.value,d=d.prev;return m},v.prototype.slice=function(m,C){C=C||this.length,C<0&&(C+=this.length),m=m||0,m<0&&(m+=this.length);var d=new v;if(Cthis.length&&(C=this.length);for(var E=0,I=this.head;I!==null&&Ethis.length&&(C=this.length);for(var E=this.length,I=this.tail;I!==null&&E>C;E--)I=I.prev;for(;I!==null&&E>m;E--,I=I.prev)d.push(I.value);return d},v.prototype.splice=function(m,C){m>this.length&&(m=this.length-1),m<0&&(m=this.length+m);for(var d=0,E=this.head;E!==null&&d1,q=class{constructor(te){if(typeof te=="number"&&(te={max:te}),te||(te={}),te.max&&(typeof te.max!="number"||te.max<0))throw new TypeError("max must be a non-negative number");let he=this[h]=te.max||1/0,Pe=te.length||M;if(this[P]=typeof Pe!="function"?M:Pe,this[y]=te.stale||!1,te.maxAge&&typeof te.maxAge!="number")throw new TypeError("maxAge must be a number");this[m]=te.maxAge||0,this[C]=te.dispose,this[d]=te.noDisposeOnSet||!1,this[c]=te.updateAgeOnGet||!1,this.reset()}set max(te){if(typeof te!="number"||te<0)throw new TypeError("max must be a non-negative number");this[h]=te||1/0,ce(this)}get max(){return this[h]}set allowStale(te){this[y]=!!te}get allowStale(){return this[y]}set maxAge(te){if(typeof te!="number")throw new TypeError("maxAge must be a non-negative number");this[m]=te,ce(this)}get maxAge(){return this[m]}set lengthCalculator(te){typeof te!="function"&&(te=M),te!==this[P]&&(this[P]=te,this[D]=0,this[E].forEach(he=>{he.length=this[P](he.value,he.key),this[D]+=he.length})),ce(this)}get lengthCalculator(){return this[P]}get length(){return this[D]}get itemCount(){return this[E].length}rforEach(te,he){he=he||this;for(let Pe=this[E].tail;Pe!==null;){let R=Pe.prev;Ae(this,te,Pe,he),Pe=R}}forEach(te,he){he=he||this;for(let Pe=this[E].head;Pe!==null;){let R=Pe.next;Ae(this,te,Pe,he),Pe=R}}keys(){return this[E].toArray().map(te=>te.key)}values(){return this[E].toArray().map(te=>te.value)}reset(){this[C]&&this[E]&&this[E].length&&this[E].forEach(te=>this[C](te.key,te.value)),this[I]=new Map,this[E]=new v,this[D]=0}dump(){return this[E].map(te=>K(this,te)?!1:{k:te.key,v:te.value,e:te.now+(te.maxAge||0)}).toArray().filter(te=>te)}dumpLru(){return this[E]}set(te,he,Pe){if(Pe=Pe||this[m],Pe&&typeof Pe!="number")throw new TypeError("maxAge must be a number");let R=Pe?Date.now():0,pe=this[P](he,te);if(this[I].has(te)){if(pe>this[h])return Ie(this,this[I].get(te)),!1;let Xe=this[I].get(te).value;return this[C]&&(this[d]||this[C](te,Xe.value)),Xe.now=R,Xe.maxAge=Pe,Xe.value=he,this[D]+=pe-Xe.length,Xe.length=pe,this.get(te),ce(this),!0}let ke=new me(te,he,pe,R,Pe);return ke.length>this[h]?(this[C]&&this[C](te,he),!1):(this[D]+=ke.length,this[E].unshift(ke),this[I].set(te,this[E].head),ce(this),!0)}has(te){if(!this[I].has(te))return!1;let he=this[I].get(te).value;return!K(this,he)}get(te){return W(this,te,!0)}peek(te){return W(this,te,!1)}pop(){let te=this[E].tail;return te?(Ie(this,te),te.value):null}del(te){Ie(this,this[I].get(te))}load(te){this.reset();let he=Date.now();for(let Pe=te.length-1;Pe>=0;Pe--){let R=te[Pe],pe=R.e||0;if(pe===0)this.set(R.k,R.v);else{let ke=pe-he;ke>0&&this.set(R.k,R.v,ke)}}}prune(){this[I].forEach((te,he)=>W(this,he,!1))}},W=(te,he,Pe)=>{let R=te[I].get(he);if(R){let pe=R.value;if(K(te,pe)){if(Ie(te,R),!te[y])return}else Pe&&(te[c]&&(R.value.now=Date.now()),te[E].unshiftNode(R));return pe.value}},K=(te,he)=>{if(!he||!he.maxAge&&!te[m])return!1;let Pe=Date.now()-he.now;return he.maxAge?Pe>he.maxAge:te[m]&&Pe>te[m]},ce=te=>{if(te[D]>te[h])for(let he=te[E].tail;te[D]>te[h]&&he!==null;){let Pe=he.prev;Ie(te,he),he=Pe}},Ie=(te,he)=>{if(he){let Pe=he.value;te[C]&&te[C](Pe.key,Pe.value),te[D]-=Pe.length,te[I].delete(Pe.key),te[E].removeNode(he)}},me=class{constructor(te,he,Pe,R,pe){this.key=te,this.value=he,this.length=Pe,this.now=R,this.maxAge=pe||0}},Ae=(te,he,Pe,R)=>{let pe=Pe.value;K(te,pe)&&(Ie(te,Pe),te[y]||(pe=void 0)),pe&&he.call(R,pe.value,pe.key,te)};_.exports=q}}),ca=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/range.js"(a,_){De();var v=class{constructor(ee,je){if(je=P(je),ee instanceof v)return ee.loose===!!je.loose&&ee.includePrerelease===!!je.includePrerelease?ee:new v(ee.raw,je);if(ee instanceof y)return this.raw=ee.value,this.set=[[ee]],this.format(),this;if(this.options=je,this.loose=!!je.loose,this.includePrerelease=!!je.includePrerelease,this.raw=ee,this.set=ee.split("||").map(nt=>this.parseRange(nt.trim())).filter(nt=>nt.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${ee}`);if(this.set.length>1){let nt=this.set[0];if(this.set=this.set.filter(Ze=>!q(Ze[0])),this.set.length===0)this.set=[nt];else if(this.set.length>1){for(let Ze of this.set)if(Ze.length===1&&W(Ze[0])){this.set=[Ze];break}}}this.format()}format(){return this.range=this.set.map(ee=>ee.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(ee){ee=ee.trim();let nt=`parseRange:${Object.keys(this.options).join(",")}:${ee}`,Ze=D.get(nt);if(Ze)return Ze;let st=this.options.loose,tt=st?d[E.HYPHENRANGELOOSE]:d[E.HYPHENRANGE];ee=ee.replace(tt,Je(this.options.includePrerelease)),m("hyphen replace",ee),ee=ee.replace(d[E.COMPARATORTRIM],I),m("comparator trim",ee),ee=ee.replace(d[E.TILDETRIM],c),ee=ee.replace(d[E.CARETTRIM],M),ee=ee.split(/\s+/).join(" ");let ct=ee.split(" ").map(at=>ce(at,this.options)).join(" ").split(/\s+/).map(at=>ke(at,this.options));st&&(ct=ct.filter(at=>(m("loose invalid filter",at,this.options),!!at.match(d[E.COMPARATORLOOSE])))),m("range list",ct);let ne=new Map,ge=ct.map(at=>new y(at,this.options));for(let at of ge){if(q(at))return[at];ne.set(at.value,at)}ne.size>1&&ne.has("")&&ne.delete("");let Fe=[...ne.values()];return D.set(nt,Fe),Fe}intersects(ee,je){if(!(ee instanceof v))throw new TypeError("a Range is required");return this.set.some(nt=>K(nt,je)&&ee.set.some(Ze=>K(Ze,je)&&nt.every(st=>Ze.every(tt=>st.intersects(tt,je)))))}test(ee){if(!ee)return!1;if(typeof ee=="string")try{ee=new C(ee,this.options)}catch{return!1}for(let je=0;jeee.value==="<0.0.0-0",W=ee=>ee.value==="",K=(ee,je)=>{let nt=!0,Ze=ee.slice(),st=Ze.pop();for(;nt&&Ze.length;)nt=Ze.every(tt=>st.intersects(tt,je)),st=Ze.pop();return nt},ce=(ee,je)=>(m("comp",ee,je),ee=te(ee,je),m("caret",ee),ee=me(ee,je),m("tildes",ee),ee=Pe(ee,je),m("xrange",ee),ee=pe(ee,je),m("stars",ee),ee),Ie=ee=>!ee||ee.toLowerCase()==="x"||ee==="*",me=(ee,je)=>ee.trim().split(/\s+/).map(nt=>Ae(nt,je)).join(" "),Ae=(ee,je)=>{let nt=je.loose?d[E.TILDELOOSE]:d[E.TILDE];return ee.replace(nt,(Ze,st,tt,ct,ne)=>{m("tilde",ee,Ze,st,tt,ct,ne);let ge;return Ie(st)?ge="":Ie(tt)?ge=`>=${st}.0.0 <${+st+1}.0.0-0`:Ie(ct)?ge=`>=${st}.${tt}.0 <${st}.${+tt+1}.0-0`:ne?(m("replaceTilde pr",ne),ge=`>=${st}.${tt}.${ct}-${ne} <${st}.${+tt+1}.0-0`):ge=`>=${st}.${tt}.${ct} <${st}.${+tt+1}.0-0`,m("tilde return",ge),ge})},te=(ee,je)=>ee.trim().split(/\s+/).map(nt=>he(nt,je)).join(" "),he=(ee,je)=>{m("caret",ee,je);let nt=je.loose?d[E.CARETLOOSE]:d[E.CARET],Ze=je.includePrerelease?"-0":"";return ee.replace(nt,(st,tt,ct,ne,ge)=>{m("caret",ee,st,tt,ct,ne,ge);let Fe;return Ie(tt)?Fe="":Ie(ct)?Fe=`>=${tt}.0.0${Ze} <${+tt+1}.0.0-0`:Ie(ne)?tt==="0"?Fe=`>=${tt}.${ct}.0${Ze} <${tt}.${+ct+1}.0-0`:Fe=`>=${tt}.${ct}.0${Ze} <${+tt+1}.0.0-0`:ge?(m("replaceCaret pr",ge),tt==="0"?ct==="0"?Fe=`>=${tt}.${ct}.${ne}-${ge} <${tt}.${ct}.${+ne+1}-0`:Fe=`>=${tt}.${ct}.${ne}-${ge} <${tt}.${+ct+1}.0-0`:Fe=`>=${tt}.${ct}.${ne}-${ge} <${+tt+1}.0.0-0`):(m("no pr"),tt==="0"?ct==="0"?Fe=`>=${tt}.${ct}.${ne}${Ze} <${tt}.${ct}.${+ne+1}-0`:Fe=`>=${tt}.${ct}.${ne}${Ze} <${tt}.${+ct+1}.0-0`:Fe=`>=${tt}.${ct}.${ne} <${+tt+1}.0.0-0`),m("caret return",Fe),Fe})},Pe=(ee,je)=>(m("replaceXRanges",ee,je),ee.split(/\s+/).map(nt=>R(nt,je)).join(" ")),R=(ee,je)=>{ee=ee.trim();let nt=je.loose?d[E.XRANGELOOSE]:d[E.XRANGE];return ee.replace(nt,(Ze,st,tt,ct,ne,ge)=>{m("xRange",ee,Ze,st,tt,ct,ne,ge);let Fe=Ie(tt),at=Fe||Ie(ct),Pt=at||Ie(ne),qt=Pt;return st==="="&&qt&&(st=""),ge=je.includePrerelease?"-0":"",Fe?st===">"||st==="<"?Ze="<0.0.0-0":Ze="*":st&&qt?(at&&(ct=0),ne=0,st===">"?(st=">=",at?(tt=+tt+1,ct=0,ne=0):(ct=+ct+1,ne=0)):st==="<="&&(st="<",at?tt=+tt+1:ct=+ct+1),st==="<"&&(ge="-0"),Ze=`${st+tt}.${ct}.${ne}${ge}`):at?Ze=`>=${tt}.0.0${ge} <${+tt+1}.0.0-0`:Pt&&(Ze=`>=${tt}.${ct}.0${ge} <${tt}.${+ct+1}.0-0`),m("xRange return",Ze),Ze})},pe=(ee,je)=>(m("replaceStars",ee,je),ee.trim().replace(d[E.STAR],"")),ke=(ee,je)=>(m("replaceGTE0",ee,je),ee.trim().replace(d[je.includePrerelease?E.GTE0PRE:E.GTE0],"")),Je=ee=>(je,nt,Ze,st,tt,ct,ne,ge,Fe,at,Pt,qt,Zr)=>(Ie(Ze)?nt="":Ie(st)?nt=`>=${Ze}.0.0${ee?"-0":""}`:Ie(tt)?nt=`>=${Ze}.${st}.0${ee?"-0":""}`:ct?nt=`>=${nt}`:nt=`>=${nt}${ee?"-0":""}`,Ie(Fe)?ge="":Ie(at)?ge=`<${+Fe+1}.0.0-0`:Ie(Pt)?ge=`<${Fe}.${+at+1}.0-0`:qt?ge=`<=${Fe}.${at}.${Pt}-${qt}`:ee?ge=`<${Fe}.${at}.${+Pt+1}-0`:ge=`<=${ge}`,`${nt} ${ge}`.trim()),Xe=(ee,je,nt)=>{for(let Ze=0;Ze0){let st=ee[Ze].semver;if(st.major===je.major&&st.minor===je.minor&&st.patch===je.patch)return!0}return!1}return!0}}}),b1=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/classes/comparator.js"(a,_){De();var v=Symbol("SemVer ANY"),h=class{static get ANY(){return v}constructor(I,c){if(c=D(c),I instanceof h){if(I.loose===!!c.loose)return I;I=I.value}C("comparator",I,c),this.options=c,this.loose=!!c.loose,this.parse(I),this.semver===v?this.value="":this.value=this.operator+this.semver.version,C("comp",this)}parse(I){let c=this.options.loose?P[y.COMPARATORLOOSE]:P[y.COMPARATOR],M=I.match(c);if(!M)throw new TypeError(`Invalid comparator: ${I}`);this.operator=M[1]!==void 0?M[1]:"",this.operator==="="&&(this.operator=""),M[2]?this.semver=new d(M[2],this.options.loose):this.semver=v}toString(){return this.value}test(I){if(C("Comparator.test",I,this.options.loose),this.semver===v||I===v)return!0;if(typeof I=="string")try{I=new d(I,this.options)}catch{return!1}return m(I,this.operator,this.semver,this.options)}intersects(I,c){if(!(I instanceof h))throw new TypeError("a Comparator is required");if((!c||typeof c!="object")&&(c={loose:!!c,includePrerelease:!1}),this.operator==="")return this.value===""?!0:new E(I.value,c).test(this.value);if(I.operator==="")return I.value===""?!0:new E(this.value,c).test(I.semver);let M=(this.operator===">="||this.operator===">")&&(I.operator===">="||I.operator===">"),q=(this.operator==="<="||this.operator==="<")&&(I.operator==="<="||I.operator==="<"),W=this.semver.version===I.semver.version,K=(this.operator===">="||this.operator==="<=")&&(I.operator===">="||I.operator==="<="),ce=m(this.semver,"<",I.semver,c)&&(this.operator===">="||this.operator===">")&&(I.operator==="<="||I.operator==="<"),Ie=m(this.semver,">",I.semver,c)&&(this.operator==="<="||this.operator==="<")&&(I.operator===">="||I.operator===">");return M||q||W&&K||ce||Ie}};_.exports=h;var D=y1(),{re:P,t:y}=Bc(),m=V9(),C=g1(),d=Bn(),E=ca()}}),T1=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/functions/satisfies.js"(a,_){De();var v=ca(),h=(D,P,y)=>{try{P=new v(P,y)}catch{return!1}return P.test(D)};_.exports=h}}),HW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/to-comparators.js"(a,_){De();var v=ca(),h=(D,P)=>new v(D,P).set.map(y=>y.map(m=>m.value).join(" ").trim().split(" "));_.exports=h}}),GW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/max-satisfying.js"(a,_){De();var v=Bn(),h=ca(),D=(P,y,m)=>{let C=null,d=null,E=null;try{E=new h(y,m)}catch{return null}return P.forEach(I=>{E.test(I)&&(!C||d.compare(I)===-1)&&(C=I,d=new v(C,m))}),C};_.exports=D}}),$W=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-satisfying.js"(a,_){De();var v=Bn(),h=ca(),D=(P,y,m)=>{let C=null,d=null,E=null;try{E=new h(y,m)}catch{return null}return P.forEach(I=>{E.test(I)&&(!C||d.compare(I)===1)&&(C=I,d=new v(C,m))}),C};_.exports=D}}),KW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/min-version.js"(a,_){De();var v=Bn(),h=ca(),D=v1(),P=(y,m)=>{y=new h(y,m);let C=new v("0.0.0");if(y.test(C)||(C=new v("0.0.0-0"),y.test(C)))return C;C=null;for(let d=0;d{let M=new v(c.semver.version);switch(c.operator){case">":M.prerelease.length===0?M.patch++:M.prerelease.push(0),M.raw=M.format();case"":case">=":(!I||D(M,I))&&(I=M);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${c.operator}`)}}),I&&(!C||D(C,I))&&(C=I)}return C&&y.test(C)?C:null};_.exports=P}}),XW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/valid.js"(a,_){De();var v=ca(),h=(D,P)=>{try{return new v(D,P).range||"*"}catch{return null}};_.exports=h}}),uT=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/outside.js"(a,_){De();var v=Bn(),h=b1(),{ANY:D}=h,P=ca(),y=T1(),m=v1(),C=_T(),d=lT(),E=cT(),I=(c,M,q,W)=>{c=new v(c,W),M=new P(M,W);let K,ce,Ie,me,Ae;switch(q){case">":K=m,ce=d,Ie=C,me=">",Ae=">=";break;case"<":K=C,ce=E,Ie=m,me="<",Ae="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(y(c,M,W))return!1;for(let te=0;te{pe.semver===D&&(pe=new h(">=0.0.0")),Pe=Pe||pe,R=R||pe,K(pe.semver,Pe.semver,W)?Pe=pe:Ie(pe.semver,R.semver,W)&&(R=pe)}),Pe.operator===me||Pe.operator===Ae||(!R.operator||R.operator===me)&&ce(c,R.semver))return!1;if(R.operator===Ae&&Ie(c,R.semver))return!1}return!0};_.exports=I}}),YW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/gtr.js"(a,_){De();var v=uT(),h=(D,P,y)=>v(D,P,">",y);_.exports=h}}),QW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/ltr.js"(a,_){De();var v=uT(),h=(D,P,y)=>v(D,P,"<",y);_.exports=h}}),ZW=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/intersects.js"(a,_){De();var v=ca(),h=(D,P,y)=>(D=new v(D,y),P=new v(P,y),D.intersects(P));_.exports=h}}),eV=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/ranges/simplify.js"(a,_){De();var v=T1(),h=_a();_.exports=(D,P,y)=>{let m=[],C=null,d=null,E=D.sort((q,W)=>h(q,W,y));for(let q of E)v(q,P,y)?(d=q,C||(C=q)):(d&&m.push([C,d]),d=null,C=null);C&&m.push([C,null]);let I=[];for(let[q,W]of m)q===W?I.push(q):!W&&q===E[0]?I.push("*"):W?q===E[0]?I.push(`<=${W}`):I.push(`${q} - ${W}`):I.push(`>=${q}`);let c=I.join(" || "),M=typeof P.raw=="string"?P.raw:String(P);return c.length2&&arguments[2]!==void 0?arguments[2]:{};if(I===c)return!0;I=new v(I,M),c=new v(c,M);let q=!1;e:for(let W of I.set){for(let K of c.set){let ce=C(W,K,M);if(q=q||ce!==null,ce)continue e}if(q)return!1}return!0},C=(I,c,M)=>{if(I===c)return!0;if(I.length===1&&I[0].semver===D){if(c.length===1&&c[0].semver===D)return!0;M.includePrerelease?I=[new h(">=0.0.0-0")]:I=[new h(">=0.0.0")]}if(c.length===1&&c[0].semver===D){if(M.includePrerelease)return!0;c=[new h(">=0.0.0")]}let q=new Set,W,K;for(let R of I)R.operator===">"||R.operator===">="?W=d(W,R,M):R.operator==="<"||R.operator==="<="?K=E(K,R,M):q.add(R.semver);if(q.size>1)return null;let ce;if(W&&K){if(ce=y(W.semver,K.semver,M),ce>0)return null;if(ce===0&&(W.operator!==">="||K.operator!=="<="))return null}for(let R of q){if(W&&!P(R,String(W),M)||K&&!P(R,String(K),M))return null;for(let pe of c)if(!P(R,String(pe),M))return!1;return!0}let Ie,me,Ae,te,he=K&&!M.includePrerelease&&K.semver.prerelease.length?K.semver:!1,Pe=W&&!M.includePrerelease&&W.semver.prerelease.length?W.semver:!1;he&&he.prerelease.length===1&&K.operator==="<"&&he.prerelease[0]===0&&(he=!1);for(let R of c){if(te=te||R.operator===">"||R.operator===">=",Ae=Ae||R.operator==="<"||R.operator==="<=",W){if(Pe&&R.semver.prerelease&&R.semver.prerelease.length&&R.semver.major===Pe.major&&R.semver.minor===Pe.minor&&R.semver.patch===Pe.patch&&(Pe=!1),R.operator===">"||R.operator===">="){if(Ie=d(W,R,M),Ie===R&&Ie!==W)return!1}else if(W.operator===">="&&!P(W.semver,String(R),M))return!1}if(K){if(he&&R.semver.prerelease&&R.semver.prerelease.length&&R.semver.major===he.major&&R.semver.minor===he.minor&&R.semver.patch===he.patch&&(he=!1),R.operator==="<"||R.operator==="<="){if(me=E(K,R,M),me===R&&me!==K)return!1}else if(K.operator==="<="&&!P(K.semver,String(R),M))return!1}if(!R.operator&&(K||W)&&ce!==0)return!1}return!(W&&Ae&&!K&&ce!==0||K&&te&&!W&&ce!==0||Pe||he)},d=(I,c,M)=>{if(!I)return c;let q=y(I.semver,c.semver,M);return q>0?I:q<0||c.operator===">"&&I.operator===">="?c:I},E=(I,c,M)=>{if(!I)return c;let q=y(I.semver,c.semver,M);return q<0?I:q>0||c.operator==="<"&&I.operator==="<="?c:I};_.exports=m}}),pT=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/semver/index.js"(a,_){De();var v=Bc(),h=h1(),D=Bn(),P=z9(),y=qc(),m=kW(),C=IW(),d=NW(),E=OW(),I=MW(),c=LW(),M=RW(),q=jW(),W=_a(),K=JW(),ce=FW(),Ie=oT(),me=BW(),Ae=qW(),te=v1(),he=_T(),Pe=sT(),R=W9(),pe=cT(),ke=lT(),Je=V9(),Xe=UW(),ee=b1(),je=ca(),nt=T1(),Ze=HW(),st=GW(),tt=$W(),ct=KW(),ne=XW(),ge=uT(),Fe=YW(),at=QW(),Pt=ZW(),qt=eV(),Zr=tV();_.exports={parse:y,valid:m,clean:C,inc:d,diff:E,major:I,minor:c,patch:M,prerelease:q,compare:W,rcompare:K,compareLoose:ce,compareBuild:Ie,sort:me,rsort:Ae,gt:te,lt:he,eq:Pe,neq:R,gte:pe,lte:ke,cmp:Je,coerce:Xe,Comparator:ee,Range:je,satisfies:nt,toComparators:Ze,maxSatisfying:st,minSatisfying:tt,minVersion:ct,validRange:ne,outside:ge,gtr:Fe,ltr:at,intersects:Pt,simplifyRange:qt,subset:Zr,SemVer:D,re:v.re,src:v.src,tokens:v.t,SEMVER_SPEC_VERSION:h.SEMVER_SPEC_VERSION,compareIdentifiers:P.compareIdentifiers,rcompareIdentifiers:P.rcompareIdentifiers}}}),S1=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/version-check.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(C,d,E,I){I===void 0&&(I=E);var c=Object.getOwnPropertyDescriptor(d,E);(!c||("get"in c?!d.__esModule:c.writable||c.configurable))&&(c={enumerable:!0,get:function(){return d[E]}}),Object.defineProperty(C,I,c)}:function(C,d,E,I){I===void 0&&(I=E),C[I]=d[E]}),v=a&&a.__setModuleDefault||(Object.create?function(C,d){Object.defineProperty(C,"default",{enumerable:!0,value:d})}:function(C,d){C.default=d}),h=a&&a.__importStar||function(C){if(C&&C.__esModule)return C;var d={};if(C!=null)for(var E in C)E!=="default"&&Object.prototype.hasOwnProperty.call(C,E)&&_(d,C,E);return v(d,C),d};Object.defineProperty(a,"__esModule",{value:!0}),a.typescriptVersionIsAtLeast=void 0;var D=h(pT()),P=h(vr()),y=["3.7","3.8","3.9","4.0","4.1","4.2","4.3","4.4","4.5","4.6","4.7","4.8","4.9","5.0"],m={};a.typescriptVersionIsAtLeast=m;for(let C of y)m[C]=!0}}),fT=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/getModifiers.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(d,E,I,c){c===void 0&&(c=I);var M=Object.getOwnPropertyDescriptor(E,I);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[I]}}),Object.defineProperty(d,c,M)}:function(d,E,I,c){c===void 0&&(c=I),d[c]=E[I]}),v=a&&a.__setModuleDefault||(Object.create?function(d,E){Object.defineProperty(d,"default",{enumerable:!0,value:E})}:function(d,E){d.default=E}),h=a&&a.__importStar||function(d){if(d&&d.__esModule)return d;var E={};if(d!=null)for(var I in d)I!=="default"&&Object.prototype.hasOwnProperty.call(d,I)&&_(E,d,I);return v(E,d),E};Object.defineProperty(a,"__esModule",{value:!0}),a.getDecorators=a.getModifiers=void 0;var D=h(vr()),P=S1(),y=P.typescriptVersionIsAtLeast["4.8"];function m(d){var E;if(d!=null){if(y){if(D.canHaveModifiers(d)){let I=D.getModifiers(d);return I?Array.from(I):void 0}return}return(E=d.modifiers)===null||E===void 0?void 0:E.filter(I=>!D.isDecorator(I))}}a.getModifiers=m;function C(d){var E;if(d!=null){if(y){if(D.canHaveDecorators(d)){let I=D.getDecorators(d);return I?Array.from(I):void 0}return}return(E=d.decorators)===null||E===void 0?void 0:E.filter(D.isDecorator)}}a.getDecorators=C}}),rV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.xhtmlEntities=void 0,a.xhtmlEntities={quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"}}}),H9=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types/dist/generated/ast-spec.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.AST_TOKEN_TYPES=a.AST_NODE_TYPES=void 0;var _;(function(h){h.AccessorProperty="AccessorProperty",h.ArrayExpression="ArrayExpression",h.ArrayPattern="ArrayPattern",h.ArrowFunctionExpression="ArrowFunctionExpression",h.AssignmentExpression="AssignmentExpression",h.AssignmentPattern="AssignmentPattern",h.AwaitExpression="AwaitExpression",h.BinaryExpression="BinaryExpression",h.BlockStatement="BlockStatement",h.BreakStatement="BreakStatement",h.CallExpression="CallExpression",h.CatchClause="CatchClause",h.ChainExpression="ChainExpression",h.ClassBody="ClassBody",h.ClassDeclaration="ClassDeclaration",h.ClassExpression="ClassExpression",h.ConditionalExpression="ConditionalExpression",h.ContinueStatement="ContinueStatement",h.DebuggerStatement="DebuggerStatement",h.Decorator="Decorator",h.DoWhileStatement="DoWhileStatement",h.EmptyStatement="EmptyStatement",h.ExportAllDeclaration="ExportAllDeclaration",h.ExportDefaultDeclaration="ExportDefaultDeclaration",h.ExportNamedDeclaration="ExportNamedDeclaration",h.ExportSpecifier="ExportSpecifier",h.ExpressionStatement="ExpressionStatement",h.ForInStatement="ForInStatement",h.ForOfStatement="ForOfStatement",h.ForStatement="ForStatement",h.FunctionDeclaration="FunctionDeclaration",h.FunctionExpression="FunctionExpression",h.Identifier="Identifier",h.IfStatement="IfStatement",h.ImportAttribute="ImportAttribute",h.ImportDeclaration="ImportDeclaration",h.ImportDefaultSpecifier="ImportDefaultSpecifier",h.ImportExpression="ImportExpression",h.ImportNamespaceSpecifier="ImportNamespaceSpecifier",h.ImportSpecifier="ImportSpecifier",h.JSXAttribute="JSXAttribute",h.JSXClosingElement="JSXClosingElement",h.JSXClosingFragment="JSXClosingFragment",h.JSXElement="JSXElement",h.JSXEmptyExpression="JSXEmptyExpression",h.JSXExpressionContainer="JSXExpressionContainer",h.JSXFragment="JSXFragment",h.JSXIdentifier="JSXIdentifier",h.JSXMemberExpression="JSXMemberExpression",h.JSXNamespacedName="JSXNamespacedName",h.JSXOpeningElement="JSXOpeningElement",h.JSXOpeningFragment="JSXOpeningFragment",h.JSXSpreadAttribute="JSXSpreadAttribute",h.JSXSpreadChild="JSXSpreadChild",h.JSXText="JSXText",h.LabeledStatement="LabeledStatement",h.Literal="Literal",h.LogicalExpression="LogicalExpression",h.MemberExpression="MemberExpression",h.MetaProperty="MetaProperty",h.MethodDefinition="MethodDefinition",h.NewExpression="NewExpression",h.ObjectExpression="ObjectExpression",h.ObjectPattern="ObjectPattern",h.PrivateIdentifier="PrivateIdentifier",h.Program="Program",h.Property="Property",h.PropertyDefinition="PropertyDefinition",h.RestElement="RestElement",h.ReturnStatement="ReturnStatement",h.SequenceExpression="SequenceExpression",h.SpreadElement="SpreadElement",h.StaticBlock="StaticBlock",h.Super="Super",h.SwitchCase="SwitchCase",h.SwitchStatement="SwitchStatement",h.TaggedTemplateExpression="TaggedTemplateExpression",h.TemplateElement="TemplateElement",h.TemplateLiteral="TemplateLiteral",h.ThisExpression="ThisExpression",h.ThrowStatement="ThrowStatement",h.TryStatement="TryStatement",h.UnaryExpression="UnaryExpression",h.UpdateExpression="UpdateExpression",h.VariableDeclaration="VariableDeclaration",h.VariableDeclarator="VariableDeclarator",h.WhileStatement="WhileStatement",h.WithStatement="WithStatement",h.YieldExpression="YieldExpression",h.TSAbstractAccessorProperty="TSAbstractAccessorProperty",h.TSAbstractKeyword="TSAbstractKeyword",h.TSAbstractMethodDefinition="TSAbstractMethodDefinition",h.TSAbstractPropertyDefinition="TSAbstractPropertyDefinition",h.TSAnyKeyword="TSAnyKeyword",h.TSArrayType="TSArrayType",h.TSAsExpression="TSAsExpression",h.TSAsyncKeyword="TSAsyncKeyword",h.TSBigIntKeyword="TSBigIntKeyword",h.TSBooleanKeyword="TSBooleanKeyword",h.TSCallSignatureDeclaration="TSCallSignatureDeclaration",h.TSClassImplements="TSClassImplements",h.TSConditionalType="TSConditionalType",h.TSConstructorType="TSConstructorType",h.TSConstructSignatureDeclaration="TSConstructSignatureDeclaration",h.TSDeclareFunction="TSDeclareFunction",h.TSDeclareKeyword="TSDeclareKeyword",h.TSEmptyBodyFunctionExpression="TSEmptyBodyFunctionExpression",h.TSEnumDeclaration="TSEnumDeclaration",h.TSEnumMember="TSEnumMember",h.TSExportAssignment="TSExportAssignment",h.TSExportKeyword="TSExportKeyword",h.TSExternalModuleReference="TSExternalModuleReference",h.TSFunctionType="TSFunctionType",h.TSInstantiationExpression="TSInstantiationExpression",h.TSImportEqualsDeclaration="TSImportEqualsDeclaration",h.TSImportType="TSImportType",h.TSIndexedAccessType="TSIndexedAccessType",h.TSIndexSignature="TSIndexSignature",h.TSInferType="TSInferType",h.TSInterfaceBody="TSInterfaceBody",h.TSInterfaceDeclaration="TSInterfaceDeclaration",h.TSInterfaceHeritage="TSInterfaceHeritage",h.TSIntersectionType="TSIntersectionType",h.TSIntrinsicKeyword="TSIntrinsicKeyword",h.TSLiteralType="TSLiteralType",h.TSMappedType="TSMappedType",h.TSMethodSignature="TSMethodSignature",h.TSModuleBlock="TSModuleBlock",h.TSModuleDeclaration="TSModuleDeclaration",h.TSNamedTupleMember="TSNamedTupleMember",h.TSNamespaceExportDeclaration="TSNamespaceExportDeclaration",h.TSNeverKeyword="TSNeverKeyword",h.TSNonNullExpression="TSNonNullExpression",h.TSNullKeyword="TSNullKeyword",h.TSNumberKeyword="TSNumberKeyword",h.TSObjectKeyword="TSObjectKeyword",h.TSOptionalType="TSOptionalType",h.TSParameterProperty="TSParameterProperty",h.TSPrivateKeyword="TSPrivateKeyword",h.TSPropertySignature="TSPropertySignature",h.TSProtectedKeyword="TSProtectedKeyword",h.TSPublicKeyword="TSPublicKeyword",h.TSQualifiedName="TSQualifiedName",h.TSReadonlyKeyword="TSReadonlyKeyword",h.TSRestType="TSRestType",h.TSSatisfiesExpression="TSSatisfiesExpression",h.TSStaticKeyword="TSStaticKeyword",h.TSStringKeyword="TSStringKeyword",h.TSSymbolKeyword="TSSymbolKeyword",h.TSTemplateLiteralType="TSTemplateLiteralType",h.TSThisType="TSThisType",h.TSTupleType="TSTupleType",h.TSTypeAliasDeclaration="TSTypeAliasDeclaration",h.TSTypeAnnotation="TSTypeAnnotation",h.TSTypeAssertion="TSTypeAssertion",h.TSTypeLiteral="TSTypeLiteral",h.TSTypeOperator="TSTypeOperator",h.TSTypeParameter="TSTypeParameter",h.TSTypeParameterDeclaration="TSTypeParameterDeclaration",h.TSTypeParameterInstantiation="TSTypeParameterInstantiation",h.TSTypePredicate="TSTypePredicate",h.TSTypeQuery="TSTypeQuery",h.TSTypeReference="TSTypeReference",h.TSUndefinedKeyword="TSUndefinedKeyword",h.TSUnionType="TSUnionType",h.TSUnknownKeyword="TSUnknownKeyword",h.TSVoidKeyword="TSVoidKeyword"})(_=a.AST_NODE_TYPES||(a.AST_NODE_TYPES={}));var v;(function(h){h.Boolean="Boolean",h.Identifier="Identifier",h.JSXIdentifier="JSXIdentifier",h.JSXText="JSXText",h.Keyword="Keyword",h.Null="Null",h.Numeric="Numeric",h.Punctuator="Punctuator",h.RegularExpression="RegularExpression",h.String="String",h.Template="Template",h.Block="Block",h.Line="Line"})(v=a.AST_TOKEN_TYPES||(a.AST_TOKEN_TYPES={}))}}),nV=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types/dist/lib.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0})}}),iV=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types/dist/parser-options.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0})}}),aV=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types/dist/ts-estree.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(D,P,y,m){m===void 0&&(m=y);var C=Object.getOwnPropertyDescriptor(P,y);(!C||("get"in C?!P.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return P[y]}}),Object.defineProperty(D,m,C)}:function(D,P,y,m){m===void 0&&(m=y),D[m]=P[y]}),v=a&&a.__setModuleDefault||(Object.create?function(D,P){Object.defineProperty(D,"default",{enumerable:!0,value:P})}:function(D,P){D.default=P}),h=a&&a.__importStar||function(D){if(D&&D.__esModule)return D;var P={};if(D!=null)for(var y in D)y!=="default"&&Object.prototype.hasOwnProperty.call(D,y)&&_(P,D,y);return v(P,D),P};Object.defineProperty(a,"__esModule",{value:!0}),a.TSESTree=void 0,a.TSESTree=h(H9())}}),sV=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/types/dist/index.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(D,P,y,m){m===void 0&&(m=y);var C=Object.getOwnPropertyDescriptor(P,y);(!C||("get"in C?!P.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return P[y]}}),Object.defineProperty(D,m,C)}:function(D,P,y,m){m===void 0&&(m=y),D[m]=P[y]}),v=a&&a.__exportStar||function(D,P){for(var y in D)y!=="default"&&!Object.prototype.hasOwnProperty.call(P,y)&&_(P,D,y)};Object.defineProperty(a,"__esModule",{value:!0}),a.AST_TOKEN_TYPES=a.AST_NODE_TYPES=void 0;var h=H9();Object.defineProperty(a,"AST_NODE_TYPES",{enumerable:!0,get:function(){return h.AST_NODE_TYPES}}),Object.defineProperty(a,"AST_TOKEN_TYPES",{enumerable:!0,get:function(){return h.AST_TOKEN_TYPES}}),v(nV(),a),v(iV(),a),v(aV(),a)}}),oV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0})}}),_V=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0})}}),x1=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(D,P,y,m){m===void 0&&(m=y);var C=Object.getOwnPropertyDescriptor(P,y);(!C||("get"in C?!P.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return P[y]}}),Object.defineProperty(D,m,C)}:function(D,P,y,m){m===void 0&&(m=y),D[m]=P[y]}),v=a&&a.__exportStar||function(D,P){for(var y in D)y!=="default"&&!Object.prototype.hasOwnProperty.call(P,y)&&_(P,D,y)};Object.defineProperty(a,"__esModule",{value:!0}),a.TSESTree=a.AST_TOKEN_TYPES=a.AST_NODE_TYPES=void 0;var h=sV();Object.defineProperty(a,"AST_NODE_TYPES",{enumerable:!0,get:function(){return h.AST_NODE_TYPES}}),Object.defineProperty(a,"AST_TOKEN_TYPES",{enumerable:!0,get:function(){return h.AST_TOKEN_TYPES}}),Object.defineProperty(a,"TSESTree",{enumerable:!0,get:function(){return h.TSESTree}}),v(oV(),a),v(_V(),a)}}),E1=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(be,Ke,Et,Ft){Ft===void 0&&(Ft=Et);var or=Object.getOwnPropertyDescriptor(Ke,Et);(!or||("get"in or?!Ke.__esModule:or.writable||or.configurable))&&(or={enumerable:!0,get:function(){return Ke[Et]}}),Object.defineProperty(be,Ft,or)}:function(be,Ke,Et,Ft){Ft===void 0&&(Ft=Et),be[Ft]=Ke[Et]}),v=a&&a.__setModuleDefault||(Object.create?function(be,Ke){Object.defineProperty(be,"default",{enumerable:!0,value:Ke})}:function(be,Ke){be.default=Ke}),h=a&&a.__importStar||function(be){if(be&&be.__esModule)return be;var Ke={};if(be!=null)for(var Et in be)Et!=="default"&&Object.prototype.hasOwnProperty.call(be,Et)&&_(Ke,be,Et);return v(Ke,be),Ke};Object.defineProperty(a,"__esModule",{value:!0}),a.isThisInTypeQuery=a.isThisIdentifier=a.identifierIsThisKeyword=a.firstDefined=a.nodeHasTokens=a.createError=a.TSError=a.convertTokens=a.convertToken=a.getTokenType=a.isChildUnwrappableOptionalChain=a.isChainExpression=a.isOptional=a.isComputedProperty=a.unescapeStringLiteralText=a.hasJSXAncestor=a.findFirstMatchingAncestor=a.findNextToken=a.getTSNodeAccessibility=a.getDeclarationKind=a.isJSXToken=a.isToken=a.getRange=a.canContainDirective=a.getLocFor=a.getLineAndCharacterFor=a.getBinaryExpressionType=a.isJSDocComment=a.isComment=a.isComma=a.getLastModifier=a.hasModifier=a.isESTreeClassMember=a.getTextForTokenKind=a.isLogicalOperator=a.isAssignmentOperator=void 0;var D=h(vr()),P=fT(),y=rV(),m=x1(),C=S1(),d=C.typescriptVersionIsAtLeast["5.0"],E=D.SyntaxKind,I=[E.BarBarToken,E.AmpersandAmpersandToken,E.QuestionQuestionToken];function c(be){return be.kind>=E.FirstAssignment&&be.kind<=E.LastAssignment}a.isAssignmentOperator=c;function M(be){return I.includes(be.kind)}a.isLogicalOperator=M;function q(be){return D.tokenToString(be)}a.getTextForTokenKind=q;function W(be){return be.kind!==E.SemicolonClassElement}a.isESTreeClassMember=W;function K(be,Ke){let Et=(0,P.getModifiers)(Ke);return(Et==null?void 0:Et.some(Ft=>Ft.kind===be))===!0}a.hasModifier=K;function ce(be){var Ke;let Et=(0,P.getModifiers)(be);return Et==null?null:(Ke=Et[Et.length-1])!==null&&Ke!==void 0?Ke:null}a.getLastModifier=ce;function Ie(be){return be.kind===E.CommaToken}a.isComma=Ie;function me(be){return be.kind===E.SingleLineCommentTrivia||be.kind===E.MultiLineCommentTrivia}a.isComment=me;function Ae(be){return be.kind===E.JSDocComment}a.isJSDocComment=Ae;function te(be){return c(be)?m.AST_NODE_TYPES.AssignmentExpression:M(be)?m.AST_NODE_TYPES.LogicalExpression:m.AST_NODE_TYPES.BinaryExpression}a.getBinaryExpressionType=te;function he(be,Ke){let Et=Ke.getLineAndCharacterOfPosition(be);return{line:Et.line+1,column:Et.character}}a.getLineAndCharacterFor=he;function Pe(be,Ke,Et){return{start:he(be,Et),end:he(Ke,Et)}}a.getLocFor=Pe;function R(be){if(be.kind===D.SyntaxKind.Block)switch(be.parent.kind){case D.SyntaxKind.Constructor:case D.SyntaxKind.GetAccessor:case D.SyntaxKind.SetAccessor:case D.SyntaxKind.ArrowFunction:case D.SyntaxKind.FunctionExpression:case D.SyntaxKind.FunctionDeclaration:case D.SyntaxKind.MethodDeclaration:return!0;default:return!1}return!0}a.canContainDirective=R;function pe(be,Ke){return[be.getStart(Ke),be.getEnd()]}a.getRange=pe;function ke(be){return be.kind>=E.FirstToken&&be.kind<=E.LastToken}a.isToken=ke;function Je(be){return be.kind>=E.JsxElement&&be.kind<=E.JsxAttribute}a.isJSXToken=Je;function Xe(be){return be.flags&D.NodeFlags.Let?"let":be.flags&D.NodeFlags.Const?"const":"var"}a.getDeclarationKind=Xe;function ee(be){let Ke=(0,P.getModifiers)(be);if(Ke==null)return null;for(let Et of Ke)switch(Et.kind){case E.PublicKeyword:return"public";case E.ProtectedKeyword:return"protected";case E.PrivateKeyword:return"private";default:break}return null}a.getTSNodeAccessibility=ee;function je(be,Ke,Et){return Ft(Ke);function Ft(or){return D.isToken(or)&&or.pos===be.end?or:la(or.getChildren(Et),Wr=>(Wr.pos<=be.pos&&Wr.end>be.end||Wr.pos===be.end)&&Ri(Wr,Et)?Ft(Wr):void 0)}}a.findNextToken=je;function nt(be,Ke){for(;be;){if(Ke(be))return be;be=be.parent}}a.findFirstMatchingAncestor=nt;function Ze(be){return!!nt(be,Je)}a.hasJSXAncestor=Ze;function st(be){return be.replace(/&(?:#\d+|#x[\da-fA-F]+|[0-9a-zA-Z]+);/g,Ke=>{let Et=Ke.slice(1,-1);if(Et[0]==="#"){let Ft=Et[1]==="x"?parseInt(Et.slice(2),16):parseInt(Et.slice(1),10);return Ft>1114111?Ke:String.fromCodePoint(Ft)}return y.xhtmlEntities[Et]||Ke})}a.unescapeStringLiteralText=st;function tt(be){return be.kind===E.ComputedPropertyName}a.isComputedProperty=tt;function ct(be){return be.questionToken?be.questionToken.kind===E.QuestionToken:!1}a.isOptional=ct;function ne(be){return be.type===m.AST_NODE_TYPES.ChainExpression}a.isChainExpression=ne;function ge(be,Ke){return ne(Ke)&&be.expression.kind!==D.SyntaxKind.ParenthesizedExpression}a.isChildUnwrappableOptionalChain=ge;function Fe(be){let Ke;if(d&&be.kind===E.Identifier?Ke=D.identifierToKeywordKind(be):"originalKeywordKind"in be&&(Ke=be.originalKeywordKind),Ke)return Ke===E.NullKeyword?m.AST_TOKEN_TYPES.Null:Ke>=E.FirstFutureReservedWord&&Ke<=E.LastKeyword?m.AST_TOKEN_TYPES.Identifier:m.AST_TOKEN_TYPES.Keyword;if(be.kind>=E.FirstKeyword&&be.kind<=E.LastFutureReservedWord)return be.kind===E.FalseKeyword||be.kind===E.TrueKeyword?m.AST_TOKEN_TYPES.Boolean:m.AST_TOKEN_TYPES.Keyword;if(be.kind>=E.FirstPunctuation&&be.kind<=E.LastPunctuation)return m.AST_TOKEN_TYPES.Punctuator;if(be.kind>=E.NoSubstitutionTemplateLiteral&&be.kind<=E.TemplateTail)return m.AST_TOKEN_TYPES.Template;switch(be.kind){case E.NumericLiteral:return m.AST_TOKEN_TYPES.Numeric;case E.JsxText:return m.AST_TOKEN_TYPES.JSXText;case E.StringLiteral:return be.parent&&(be.parent.kind===E.JsxAttribute||be.parent.kind===E.JsxElement)?m.AST_TOKEN_TYPES.JSXText:m.AST_TOKEN_TYPES.String;case E.RegularExpressionLiteral:return m.AST_TOKEN_TYPES.RegularExpression;case E.Identifier:case E.ConstructorKeyword:case E.GetKeyword:case E.SetKeyword:default:}return be.parent&&be.kind===E.Identifier&&(Je(be.parent)||be.parent.kind===E.PropertyAccessExpression&&Ze(be))?m.AST_TOKEN_TYPES.JSXIdentifier:m.AST_TOKEN_TYPES.Identifier}a.getTokenType=Fe;function at(be,Ke){let Et=be.kind===E.JsxText?be.getFullStart():be.getStart(Ke),Ft=be.getEnd(),or=Ke.text.slice(Et,Ft),Wr=Fe(be);return Wr===m.AST_TOKEN_TYPES.RegularExpression?{type:Wr,value:or,range:[Et,Ft],loc:Pe(Et,Ft,Ke),regex:{pattern:or.slice(1,or.lastIndexOf("/")),flags:or.slice(or.lastIndexOf("/")+1)}}:{type:Wr,value:or,range:[Et,Ft],loc:Pe(Et,Ft,Ke)}}a.convertToken=at;function Pt(be){let Ke=[];function Et(Ft){if(!(me(Ft)||Ae(Ft)))if(ke(Ft)&&Ft.kind!==E.EndOfFileToken){let or=at(Ft,be);or&&Ke.push(or)}else Ft.getChildren(be).forEach(Et)}return Et(be),Ke}a.convertTokens=Pt;var qt=class extends Error{constructor(be,Ke,Et,Ft,or){super(be),this.fileName=Ke,this.index=Et,this.lineNumber=Ft,this.column=or,Object.defineProperty(this,"name",{value:new.target.name,enumerable:!1,configurable:!0})}};a.TSError=qt;function Zr(be,Ke,Et){let Ft=be.getLineAndCharacterOfPosition(Ke);return new qt(Et,be.fileName,Ke,Ft.line+1,Ft.character)}a.createError=Zr;function Ri(be,Ke){return be.kind===E.EndOfFileToken?!!be.jsDoc:be.getWidth(Ke)!==0}a.nodeHasTokens=Ri;function la(be,Ke){if(be!==void 0)for(let Et=0;Et{let K=this.convertChild(W);if(q)if(K!=null&&K.expression&&D.isExpressionStatement(W)&&D.isStringLiteral(W.expression)){let ce=K.expression.raw;return K.directive=ce.slice(1,-1),K}else q=!1;return K}).filter(W=>W)}convertTypeArgumentsToTypeParameters(c,M){let q=(0,y.findNextToken)(c,this.ast,this.ast);return this.createNode(M,{type:m.AST_NODE_TYPES.TSTypeParameterInstantiation,range:[c.pos-1,q.end],params:c.map(W=>this.convertType(W))})}convertTSTypeParametersToTypeParametersDeclaration(c){let M=(0,y.findNextToken)(c,this.ast,this.ast);return{type:m.AST_NODE_TYPES.TSTypeParameterDeclaration,range:[c.pos-1,M.end],loc:(0,y.getLocFor)(c.pos-1,M.end,this.ast),params:c.map(q=>this.convertType(q))}}convertParameters(c){return c!=null&&c.length?c.map(M=>{let q=this.convertChild(M),W=(0,P.getDecorators)(M);return W!=null&&W.length&&(q.decorators=W.map(K=>this.convertChild(K))),q}):[]}convertChainExpression(c,M){let{child:q,isOptional:W}=(()=>c.type===m.AST_NODE_TYPES.MemberExpression?{child:c.object,isOptional:c.optional}:c.type===m.AST_NODE_TYPES.CallExpression?{child:c.callee,isOptional:c.optional}:{child:c.expression,isOptional:!1})(),K=(0,y.isChildUnwrappableOptionalChain)(M,q);if(!K&&!W)return c;if(K&&(0,y.isChainExpression)(q)){let ce=q.expression;c.type===m.AST_NODE_TYPES.MemberExpression?c.object=ce:c.type===m.AST_NODE_TYPES.CallExpression?c.callee=ce:c.expression=ce}return this.createNode(M,{type:m.AST_NODE_TYPES.ChainExpression,expression:c})}deeplyCopy(c){if(c.kind===D.SyntaxKind.JSDocFunctionType)throw(0,y.createError)(this.ast,c.pos,"JSDoc types can only be used inside documentation comments.");let M=`TS${d[c.kind]}`;if(this.options.errorOnUnknownASTType&&!m.AST_NODE_TYPES[M])throw new Error(`Unknown AST_NODE_TYPE: "${M}"`);let q=this.createNode(c,{type:M});"type"in c&&(q.typeAnnotation=c.type&&"kind"in c.type&&D.isTypeNode(c.type)?this.convertTypeAnnotation(c.type,c):null),"typeArguments"in c&&(q.typeParameters=c.typeArguments&&"pos"in c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):null),"typeParameters"in c&&(q.typeParameters=c.typeParameters&&"pos"in c.typeParameters?this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters):null);let W=(0,P.getDecorators)(c);W!=null&&W.length&&(q.decorators=W.map(ce=>this.convertChild(ce)));let K=new Set(["_children","decorators","end","flags","illegalDecorators","heritageClauses","locals","localSymbol","jsDoc","kind","modifierFlagsCache","modifiers","nextContainer","parent","pos","symbol","transformFlags","type","typeArguments","typeParameters"]);return Object.entries(c).filter(ce=>{let[Ie]=ce;return!K.has(Ie)}).forEach(ce=>{let[Ie,me]=ce;Array.isArray(me)?q[Ie]=me.map(Ae=>this.convertChild(Ae)):me&&typeof me=="object"&&me.kind?q[Ie]=this.convertChild(me):q[Ie]=me}),q}convertJSXIdentifier(c){let M=this.createNode(c,{type:m.AST_NODE_TYPES.JSXIdentifier,name:c.getText()});return this.registerTSNodeInNodeMap(c,M),M}convertJSXNamespaceOrIdentifier(c){let M=c.getText(),q=M.indexOf(":");if(q>0){let W=(0,y.getRange)(c,this.ast),K=this.createNode(c,{type:m.AST_NODE_TYPES.JSXNamespacedName,namespace:this.createNode(c,{type:m.AST_NODE_TYPES.JSXIdentifier,name:M.slice(0,q),range:[W[0],W[0]+q]}),name:this.createNode(c,{type:m.AST_NODE_TYPES.JSXIdentifier,name:M.slice(q+1),range:[W[0]+q+1,W[1]]}),range:W});return this.registerTSNodeInNodeMap(c,K),K}return this.convertJSXIdentifier(c)}convertJSXTagName(c,M){let q;switch(c.kind){case d.PropertyAccessExpression:if(c.name.kind===d.PrivateIdentifier)throw new Error("Non-private identifier expected.");q=this.createNode(c,{type:m.AST_NODE_TYPES.JSXMemberExpression,object:this.convertJSXTagName(c.expression,M),property:this.convertJSXIdentifier(c.name)});break;case d.ThisKeyword:case d.Identifier:default:return this.convertJSXNamespaceOrIdentifier(c)}return this.registerTSNodeInNodeMap(c,q),q}convertMethodSignature(c){let M=this.createNode(c,{type:m.AST_NODE_TYPES.TSMethodSignature,computed:(0,y.isComputedProperty)(c.name),key:this.convertChild(c.name),params:this.convertParameters(c.parameters),kind:(()=>{switch(c.kind){case d.GetAccessor:return"get";case d.SetAccessor:return"set";case d.MethodSignature:return"method"}})()});(0,y.isOptional)(c)&&(M.optional=!0),c.type&&(M.returnType=this.convertTypeAnnotation(c.type,c)),(0,y.hasModifier)(d.ReadonlyKeyword,c)&&(M.readonly=!0),c.typeParameters&&(M.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters));let q=(0,y.getTSNodeAccessibility)(c);return q&&(M.accessibility=q),(0,y.hasModifier)(d.ExportKeyword,c)&&(M.export=!0),(0,y.hasModifier)(d.StaticKeyword,c)&&(M.static=!0),M}convertAssertClasue(c){return c===void 0?[]:c.elements.map(M=>this.convertChild(M))}applyModifiersToResult(c,M){if(!M)return;let q=[];for(let W of M)switch(W.kind){case d.ExportKeyword:case d.DefaultKeyword:break;case d.ConstKeyword:c.const=!0;break;case d.DeclareKeyword:c.declare=!0;break;default:q.push(this.convertChild(W));break}q.length>0&&(c.modifiers=q)}fixParentLocation(c,M){M[0]c.range[1]&&(c.range[1]=M[1],c.loc.end=(0,y.getLineAndCharacterFor)(c.range[1],this.ast))}assertModuleSpecifier(c,M){var q;if(!M&&c.moduleSpecifier==null)throw(0,y.createError)(this.ast,c.pos,"Module specifier must be a string literal.");if(c.moduleSpecifier&&((q=c.moduleSpecifier)===null||q===void 0?void 0:q.kind)!==d.StringLiteral)throw(0,y.createError)(this.ast,c.moduleSpecifier.pos,"Module specifier must be a string literal.")}convertNode(c,M){var q,W,K,ce,Ie,me,Ae,te,he,Pe;switch(c.kind){case d.SourceFile:return this.createNode(c,{type:m.AST_NODE_TYPES.Program,body:this.convertBodyExpressions(c.statements,c),sourceType:c.externalModuleIndicator?"module":"script",range:[c.getStart(this.ast),c.endOfFileToken.end]});case d.Block:return this.createNode(c,{type:m.AST_NODE_TYPES.BlockStatement,body:this.convertBodyExpressions(c.statements,c)});case d.Identifier:return(0,y.isThisInTypeQuery)(c)?this.createNode(c,{type:m.AST_NODE_TYPES.ThisExpression}):this.createNode(c,{type:m.AST_NODE_TYPES.Identifier,name:c.text});case d.PrivateIdentifier:return this.createNode(c,{type:m.AST_NODE_TYPES.PrivateIdentifier,name:c.text.slice(1)});case d.WithStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.WithStatement,object:this.convertChild(c.expression),body:this.convertChild(c.statement)});case d.ReturnStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ReturnStatement,argument:this.convertChild(c.expression)});case d.LabeledStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.LabeledStatement,label:this.convertChild(c.label),body:this.convertChild(c.statement)});case d.ContinueStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ContinueStatement,label:this.convertChild(c.label)});case d.BreakStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.BreakStatement,label:this.convertChild(c.label)});case d.IfStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.IfStatement,test:this.convertChild(c.expression),consequent:this.convertChild(c.thenStatement),alternate:this.convertChild(c.elseStatement)});case d.SwitchStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.SwitchStatement,discriminant:this.convertChild(c.expression),cases:c.caseBlock.clauses.map(R=>this.convertChild(R))});case d.CaseClause:case d.DefaultClause:return this.createNode(c,{type:m.AST_NODE_TYPES.SwitchCase,test:c.kind===d.CaseClause?this.convertChild(c.expression):null,consequent:c.statements.map(R=>this.convertChild(R))});case d.ThrowStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ThrowStatement,argument:this.convertChild(c.expression)});case d.TryStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.TryStatement,block:this.convertChild(c.tryBlock),handler:this.convertChild(c.catchClause),finalizer:this.convertChild(c.finallyBlock)});case d.CatchClause:return this.createNode(c,{type:m.AST_NODE_TYPES.CatchClause,param:c.variableDeclaration?this.convertBindingNameWithTypeAnnotation(c.variableDeclaration.name,c.variableDeclaration.type):null,body:this.convertChild(c.block)});case d.WhileStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.WhileStatement,test:this.convertChild(c.expression),body:this.convertChild(c.statement)});case d.DoStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.DoWhileStatement,test:this.convertChild(c.expression),body:this.convertChild(c.statement)});case d.ForStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ForStatement,init:this.convertChild(c.initializer),test:this.convertChild(c.condition),update:this.convertChild(c.incrementor),body:this.convertChild(c.statement)});case d.ForInStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ForInStatement,left:this.convertPattern(c.initializer),right:this.convertChild(c.expression),body:this.convertChild(c.statement)});case d.ForOfStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ForOfStatement,left:this.convertPattern(c.initializer),right:this.convertChild(c.expression),body:this.convertChild(c.statement),await:Boolean(c.awaitModifier&&c.awaitModifier.kind===d.AwaitKeyword)});case d.FunctionDeclaration:{let R=(0,y.hasModifier)(d.DeclareKeyword,c),pe=this.createNode(c,{type:R||!c.body?m.AST_NODE_TYPES.TSDeclareFunction:m.AST_NODE_TYPES.FunctionDeclaration,id:this.convertChild(c.name),generator:!!c.asteriskToken,expression:!1,async:(0,y.hasModifier)(d.AsyncKeyword,c),params:this.convertParameters(c.parameters),body:this.convertChild(c.body)||void 0});return c.type&&(pe.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(pe.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),R&&(pe.declare=!0),this.fixExports(c,pe)}case d.VariableDeclaration:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.VariableDeclarator,id:this.convertBindingNameWithTypeAnnotation(c.name,c.type,c),init:this.convertChild(c.initializer)});return c.exclamationToken&&(R.definite=!0),R}case d.VariableStatement:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.VariableDeclaration,declarations:c.declarationList.declarations.map(pe=>this.convertChild(pe)),kind:(0,y.getDeclarationKind)(c.declarationList)});return(0,y.hasModifier)(d.DeclareKeyword,c)&&(R.declare=!0),this.fixExports(c,R)}case d.VariableDeclarationList:return this.createNode(c,{type:m.AST_NODE_TYPES.VariableDeclaration,declarations:c.declarations.map(R=>this.convertChild(R)),kind:(0,y.getDeclarationKind)(c)});case d.ExpressionStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.ExpressionStatement,expression:this.convertChild(c.expression)});case d.ThisKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES.ThisExpression});case d.ArrayLiteralExpression:return this.allowPattern?this.createNode(c,{type:m.AST_NODE_TYPES.ArrayPattern,elements:c.elements.map(R=>this.convertPattern(R))}):this.createNode(c,{type:m.AST_NODE_TYPES.ArrayExpression,elements:c.elements.map(R=>this.convertChild(R))});case d.ObjectLiteralExpression:return this.allowPattern?this.createNode(c,{type:m.AST_NODE_TYPES.ObjectPattern,properties:c.properties.map(R=>this.convertPattern(R))}):this.createNode(c,{type:m.AST_NODE_TYPES.ObjectExpression,properties:c.properties.map(R=>this.convertChild(R))});case d.PropertyAssignment:return this.createNode(c,{type:m.AST_NODE_TYPES.Property,key:this.convertChild(c.name),value:this.converter(c.initializer,c,this.inTypeMode,this.allowPattern),computed:(0,y.isComputedProperty)(c.name),method:!1,shorthand:!1,kind:"init"});case d.ShorthandPropertyAssignment:return c.objectAssignmentInitializer?this.createNode(c,{type:m.AST_NODE_TYPES.Property,key:this.convertChild(c.name),value:this.createNode(c,{type:m.AST_NODE_TYPES.AssignmentPattern,left:this.convertPattern(c.name),right:this.convertChild(c.objectAssignmentInitializer)}),computed:!1,method:!1,shorthand:!0,kind:"init"}):this.createNode(c,{type:m.AST_NODE_TYPES.Property,key:this.convertChild(c.name),value:this.convertChild(c.name),computed:!1,method:!1,shorthand:!0,kind:"init"});case d.ComputedPropertyName:return this.convertChild(c.expression);case d.PropertyDeclaration:{let R=(0,y.hasModifier)(d.AbstractKeyword,c),pe=(0,y.hasModifier)(d.AccessorKeyword,c),ke=(()=>pe?R?m.AST_NODE_TYPES.TSAbstractAccessorProperty:m.AST_NODE_TYPES.AccessorProperty:R?m.AST_NODE_TYPES.TSAbstractPropertyDefinition:m.AST_NODE_TYPES.PropertyDefinition)(),Je=this.createNode(c,{type:ke,key:this.convertChild(c.name),value:R?null:this.convertChild(c.initializer),computed:(0,y.isComputedProperty)(c.name),static:(0,y.hasModifier)(d.StaticKeyword,c),readonly:(0,y.hasModifier)(d.ReadonlyKeyword,c)||void 0,declare:(0,y.hasModifier)(d.DeclareKeyword,c),override:(0,y.hasModifier)(d.OverrideKeyword,c)});c.type&&(Je.typeAnnotation=this.convertTypeAnnotation(c.type,c));let Xe=(0,P.getDecorators)(c);Xe&&(Je.decorators=Xe.map(je=>this.convertChild(je)));let ee=(0,y.getTSNodeAccessibility)(c);return ee&&(Je.accessibility=ee),(c.name.kind===d.Identifier||c.name.kind===d.ComputedPropertyName||c.name.kind===d.PrivateIdentifier)&&c.questionToken&&(Je.optional=!0),c.exclamationToken&&(Je.definite=!0),Je.key.type===m.AST_NODE_TYPES.Literal&&c.questionToken&&(Je.optional=!0),Je}case d.GetAccessor:case d.SetAccessor:if(c.parent.kind===d.InterfaceDeclaration||c.parent.kind===d.TypeLiteral)return this.convertMethodSignature(c);case d.MethodDeclaration:{let R=this.createNode(c,{type:c.body?m.AST_NODE_TYPES.FunctionExpression:m.AST_NODE_TYPES.TSEmptyBodyFunctionExpression,id:null,generator:!!c.asteriskToken,expression:!1,async:(0,y.hasModifier)(d.AsyncKeyword,c),body:this.convertChild(c.body),range:[c.parameters.pos-1,c.end],params:[]});c.type&&(R.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(R.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters),this.fixParentLocation(R,R.typeParameters.range));let pe;if(M.kind===d.ObjectLiteralExpression)R.params=c.parameters.map(ke=>this.convertChild(ke)),pe=this.createNode(c,{type:m.AST_NODE_TYPES.Property,key:this.convertChild(c.name),value:R,computed:(0,y.isComputedProperty)(c.name),method:c.kind===d.MethodDeclaration,shorthand:!1,kind:"init"});else{R.params=this.convertParameters(c.parameters);let ke=(0,y.hasModifier)(d.AbstractKeyword,c)?m.AST_NODE_TYPES.TSAbstractMethodDefinition:m.AST_NODE_TYPES.MethodDefinition;pe=this.createNode(c,{type:ke,key:this.convertChild(c.name),value:R,computed:(0,y.isComputedProperty)(c.name),static:(0,y.hasModifier)(d.StaticKeyword,c),kind:"method",override:(0,y.hasModifier)(d.OverrideKeyword,c)});let Je=(0,P.getDecorators)(c);Je&&(pe.decorators=Je.map(ee=>this.convertChild(ee)));let Xe=(0,y.getTSNodeAccessibility)(c);Xe&&(pe.accessibility=Xe)}return c.questionToken&&(pe.optional=!0),c.kind===d.GetAccessor?pe.kind="get":c.kind===d.SetAccessor?pe.kind="set":!pe.static&&c.name.kind===d.StringLiteral&&c.name.text==="constructor"&&pe.type!==m.AST_NODE_TYPES.Property&&(pe.kind="constructor"),pe}case d.Constructor:{let R=(0,y.getLastModifier)(c),pe=R&&(0,y.findNextToken)(R,c,this.ast)||c.getFirstToken(),ke=this.createNode(c,{type:c.body?m.AST_NODE_TYPES.FunctionExpression:m.AST_NODE_TYPES.TSEmptyBodyFunctionExpression,id:null,params:this.convertParameters(c.parameters),generator:!1,expression:!1,async:!1,body:this.convertChild(c.body),range:[c.parameters.pos-1,c.end]});c.typeParameters&&(ke.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters),this.fixParentLocation(ke,ke.typeParameters.range)),c.type&&(ke.returnType=this.convertTypeAnnotation(c.type,c));let Je=this.createNode(c,{type:m.AST_NODE_TYPES.Identifier,name:"constructor",range:[pe.getStart(this.ast),pe.end]}),Xe=(0,y.hasModifier)(d.StaticKeyword,c),ee=this.createNode(c,{type:(0,y.hasModifier)(d.AbstractKeyword,c)?m.AST_NODE_TYPES.TSAbstractMethodDefinition:m.AST_NODE_TYPES.MethodDefinition,key:Je,value:ke,computed:!1,static:Xe,kind:Xe?"method":"constructor",override:!1}),je=(0,y.getTSNodeAccessibility)(c);return je&&(ee.accessibility=je),ee}case d.FunctionExpression:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.FunctionExpression,id:this.convertChild(c.name),generator:!!c.asteriskToken,params:this.convertParameters(c.parameters),body:this.convertChild(c.body),async:(0,y.hasModifier)(d.AsyncKeyword,c),expression:!1});return c.type&&(R.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(R.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),R}case d.SuperKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES.Super});case d.ArrayBindingPattern:return this.createNode(c,{type:m.AST_NODE_TYPES.ArrayPattern,elements:c.elements.map(R=>this.convertPattern(R))});case d.OmittedExpression:return null;case d.ObjectBindingPattern:return this.createNode(c,{type:m.AST_NODE_TYPES.ObjectPattern,properties:c.elements.map(R=>this.convertPattern(R))});case d.BindingElement:if(M.kind===d.ArrayBindingPattern){let R=this.convertChild(c.name,M);return c.initializer?this.createNode(c,{type:m.AST_NODE_TYPES.AssignmentPattern,left:R,right:this.convertChild(c.initializer)}):c.dotDotDotToken?this.createNode(c,{type:m.AST_NODE_TYPES.RestElement,argument:R}):R}else{let R;return c.dotDotDotToken?R=this.createNode(c,{type:m.AST_NODE_TYPES.RestElement,argument:this.convertChild((q=c.propertyName)!==null&&q!==void 0?q:c.name)}):R=this.createNode(c,{type:m.AST_NODE_TYPES.Property,key:this.convertChild((W=c.propertyName)!==null&&W!==void 0?W:c.name),value:this.convertChild(c.name),computed:Boolean(c.propertyName&&c.propertyName.kind===d.ComputedPropertyName),method:!1,shorthand:!c.propertyName,kind:"init"}),c.initializer&&(R.value=this.createNode(c,{type:m.AST_NODE_TYPES.AssignmentPattern,left:this.convertChild(c.name),right:this.convertChild(c.initializer),range:[c.name.getStart(this.ast),c.initializer.end]})),R}case d.ArrowFunction:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.ArrowFunctionExpression,generator:!1,id:null,params:this.convertParameters(c.parameters),body:this.convertChild(c.body),async:(0,y.hasModifier)(d.AsyncKeyword,c),expression:c.body.kind!==d.Block});return c.type&&(R.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(R.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),R}case d.YieldExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.YieldExpression,delegate:!!c.asteriskToken,argument:this.convertChild(c.expression)});case d.AwaitExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.AwaitExpression,argument:this.convertChild(c.expression)});case d.NoSubstitutionTemplateLiteral:return this.createNode(c,{type:m.AST_NODE_TYPES.TemplateLiteral,quasis:[this.createNode(c,{type:m.AST_NODE_TYPES.TemplateElement,value:{raw:this.ast.text.slice(c.getStart(this.ast)+1,c.end-1),cooked:c.text},tail:!0})],expressions:[]});case d.TemplateExpression:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TemplateLiteral,quasis:[this.convertChild(c.head)],expressions:[]});return c.templateSpans.forEach(pe=>{R.expressions.push(this.convertChild(pe.expression)),R.quasis.push(this.convertChild(pe.literal))}),R}case d.TaggedTemplateExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.TaggedTemplateExpression,typeParameters:c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):void 0,tag:this.convertChild(c.tag),quasi:this.convertChild(c.template)});case d.TemplateHead:case d.TemplateMiddle:case d.TemplateTail:{let R=c.kind===d.TemplateTail;return this.createNode(c,{type:m.AST_NODE_TYPES.TemplateElement,value:{raw:this.ast.text.slice(c.getStart(this.ast)+1,c.end-(R?1:2)),cooked:c.text},tail:R})}case d.SpreadAssignment:case d.SpreadElement:return this.allowPattern?this.createNode(c,{type:m.AST_NODE_TYPES.RestElement,argument:this.convertPattern(c.expression)}):this.createNode(c,{type:m.AST_NODE_TYPES.SpreadElement,argument:this.convertChild(c.expression)});case d.Parameter:{let R,pe;return c.dotDotDotToken?R=pe=this.createNode(c,{type:m.AST_NODE_TYPES.RestElement,argument:this.convertChild(c.name)}):c.initializer?(R=this.convertChild(c.name),pe=this.createNode(c,{type:m.AST_NODE_TYPES.AssignmentPattern,left:R,right:this.convertChild(c.initializer)}),(0,P.getModifiers)(c)&&(pe.range[0]=R.range[0],pe.loc=(0,y.getLocFor)(pe.range[0],pe.range[1],this.ast))):R=pe=this.convertChild(c.name,M),c.type&&(R.typeAnnotation=this.convertTypeAnnotation(c.type,c),this.fixParentLocation(R,R.typeAnnotation.range)),c.questionToken&&(c.questionToken.end>R.range[1]&&(R.range[1]=c.questionToken.end,R.loc.end=(0,y.getLineAndCharacterFor)(R.range[1],this.ast)),R.optional=!0),(0,P.getModifiers)(c)?this.createNode(c,{type:m.AST_NODE_TYPES.TSParameterProperty,accessibility:(K=(0,y.getTSNodeAccessibility)(c))!==null&&K!==void 0?K:void 0,readonly:(0,y.hasModifier)(d.ReadonlyKeyword,c)||void 0,static:(0,y.hasModifier)(d.StaticKeyword,c)||void 0,export:(0,y.hasModifier)(d.ExportKeyword,c)||void 0,override:(0,y.hasModifier)(d.OverrideKeyword,c)||void 0,parameter:pe}):pe}case d.ClassDeclaration:case d.ClassExpression:{let R=(ce=c.heritageClauses)!==null&&ce!==void 0?ce:[],pe=c.kind===d.ClassDeclaration?m.AST_NODE_TYPES.ClassDeclaration:m.AST_NODE_TYPES.ClassExpression,ke=R.find(nt=>nt.token===d.ExtendsKeyword),Je=R.find(nt=>nt.token===d.ImplementsKeyword),Xe=this.createNode(c,{type:pe,id:this.convertChild(c.name),body:this.createNode(c,{type:m.AST_NODE_TYPES.ClassBody,body:[],range:[c.members.pos-1,c.end]}),superClass:ke!=null&&ke.types[0]?this.convertChild(ke.types[0].expression):null});if(ke){if(ke.types.length>1)throw(0,y.createError)(this.ast,ke.types[1].pos,"Classes can only extend a single class.");!((Ie=ke.types[0])===null||Ie===void 0)&&Ie.typeArguments&&(Xe.superTypeParameters=this.convertTypeArgumentsToTypeParameters(ke.types[0].typeArguments,ke.types[0]))}c.typeParameters&&(Xe.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),Je&&(Xe.implements=Je.types.map(nt=>this.convertChild(nt))),(0,y.hasModifier)(d.AbstractKeyword,c)&&(Xe.abstract=!0),(0,y.hasModifier)(d.DeclareKeyword,c)&&(Xe.declare=!0);let ee=(0,P.getDecorators)(c);ee&&(Xe.decorators=ee.map(nt=>this.convertChild(nt)));let je=c.members.filter(y.isESTreeClassMember);return je.length&&(Xe.body.body=je.map(nt=>this.convertChild(nt))),this.fixExports(c,Xe)}case d.ModuleBlock:return this.createNode(c,{type:m.AST_NODE_TYPES.TSModuleBlock,body:this.convertBodyExpressions(c.statements,c)});case d.ImportDeclaration:{this.assertModuleSpecifier(c,!1);let R=this.createNode(c,{type:m.AST_NODE_TYPES.ImportDeclaration,source:this.convertChild(c.moduleSpecifier),specifiers:[],importKind:"value",assertions:this.convertAssertClasue(c.assertClause)});if(c.importClause&&(c.importClause.isTypeOnly&&(R.importKind="type"),c.importClause.name&&R.specifiers.push(this.convertChild(c.importClause)),c.importClause.namedBindings))switch(c.importClause.namedBindings.kind){case d.NamespaceImport:R.specifiers.push(this.convertChild(c.importClause.namedBindings));break;case d.NamedImports:R.specifiers=R.specifiers.concat(c.importClause.namedBindings.elements.map(pe=>this.convertChild(pe)));break}return R}case d.NamespaceImport:return this.createNode(c,{type:m.AST_NODE_TYPES.ImportNamespaceSpecifier,local:this.convertChild(c.name)});case d.ImportSpecifier:return this.createNode(c,{type:m.AST_NODE_TYPES.ImportSpecifier,local:this.convertChild(c.name),imported:this.convertChild((me=c.propertyName)!==null&&me!==void 0?me:c.name),importKind:c.isTypeOnly?"type":"value"});case d.ImportClause:{let R=this.convertChild(c.name);return this.createNode(c,{type:m.AST_NODE_TYPES.ImportDefaultSpecifier,local:R,range:R.range})}case d.ExportDeclaration:return((Ae=c.exportClause)===null||Ae===void 0?void 0:Ae.kind)===d.NamedExports?(this.assertModuleSpecifier(c,!0),this.createNode(c,{type:m.AST_NODE_TYPES.ExportNamedDeclaration,source:this.convertChild(c.moduleSpecifier),specifiers:c.exportClause.elements.map(R=>this.convertChild(R)),exportKind:c.isTypeOnly?"type":"value",declaration:null,assertions:this.convertAssertClasue(c.assertClause)})):(this.assertModuleSpecifier(c,!1),this.createNode(c,{type:m.AST_NODE_TYPES.ExportAllDeclaration,source:this.convertChild(c.moduleSpecifier),exportKind:c.isTypeOnly?"type":"value",exported:c.exportClause&&c.exportClause.kind===d.NamespaceExport?this.convertChild(c.exportClause.name):null,assertions:this.convertAssertClasue(c.assertClause)}));case d.ExportSpecifier:return this.createNode(c,{type:m.AST_NODE_TYPES.ExportSpecifier,local:this.convertChild((te=c.propertyName)!==null&&te!==void 0?te:c.name),exported:this.convertChild(c.name),exportKind:c.isTypeOnly?"type":"value"});case d.ExportAssignment:return c.isExportEquals?this.createNode(c,{type:m.AST_NODE_TYPES.TSExportAssignment,expression:this.convertChild(c.expression)}):this.createNode(c,{type:m.AST_NODE_TYPES.ExportDefaultDeclaration,declaration:this.convertChild(c.expression),exportKind:"value"});case d.PrefixUnaryExpression:case d.PostfixUnaryExpression:{let R=(0,y.getTextForTokenKind)(c.operator);return R==="++"||R==="--"?this.createNode(c,{type:m.AST_NODE_TYPES.UpdateExpression,operator:R,prefix:c.kind===d.PrefixUnaryExpression,argument:this.convertChild(c.operand)}):this.createNode(c,{type:m.AST_NODE_TYPES.UnaryExpression,operator:R,prefix:c.kind===d.PrefixUnaryExpression,argument:this.convertChild(c.operand)})}case d.DeleteExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.UnaryExpression,operator:"delete",prefix:!0,argument:this.convertChild(c.expression)});case d.VoidExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.UnaryExpression,operator:"void",prefix:!0,argument:this.convertChild(c.expression)});case d.TypeOfExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.UnaryExpression,operator:"typeof",prefix:!0,argument:this.convertChild(c.expression)});case d.TypeOperator:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeOperator,operator:(0,y.getTextForTokenKind)(c.operator),typeAnnotation:this.convertChild(c.type)});case d.BinaryExpression:if((0,y.isComma)(c.operatorToken)){let R=this.createNode(c,{type:m.AST_NODE_TYPES.SequenceExpression,expressions:[]}),pe=this.convertChild(c.left);return pe.type===m.AST_NODE_TYPES.SequenceExpression&&c.left.kind!==d.ParenthesizedExpression?R.expressions=R.expressions.concat(pe.expressions):R.expressions.push(pe),R.expressions.push(this.convertChild(c.right)),R}else{let R=(0,y.getBinaryExpressionType)(c.operatorToken);return this.allowPattern&&R===m.AST_NODE_TYPES.AssignmentExpression?this.createNode(c,{type:m.AST_NODE_TYPES.AssignmentPattern,left:this.convertPattern(c.left,c),right:this.convertChild(c.right)}):this.createNode(c,{type:R,operator:(0,y.getTextForTokenKind)(c.operatorToken.kind),left:this.converter(c.left,c,this.inTypeMode,R===m.AST_NODE_TYPES.AssignmentExpression),right:this.convertChild(c.right)})}case d.PropertyAccessExpression:{let R=this.convertChild(c.expression),pe=this.convertChild(c.name),ke=!1,Je=this.createNode(c,{type:m.AST_NODE_TYPES.MemberExpression,object:R,property:pe,computed:ke,optional:c.questionDotToken!==void 0});return this.convertChainExpression(Je,c)}case d.ElementAccessExpression:{let R=this.convertChild(c.expression),pe=this.convertChild(c.argumentExpression),ke=!0,Je=this.createNode(c,{type:m.AST_NODE_TYPES.MemberExpression,object:R,property:pe,computed:ke,optional:c.questionDotToken!==void 0});return this.convertChainExpression(Je,c)}case d.CallExpression:{if(c.expression.kind===d.ImportKeyword){if(c.arguments.length!==1&&c.arguments.length!==2)throw(0,y.createError)(this.ast,c.arguments.pos,"Dynamic import requires exactly one or two arguments.");return this.createNode(c,{type:m.AST_NODE_TYPES.ImportExpression,source:this.convertChild(c.arguments[0]),attributes:c.arguments[1]?this.convertChild(c.arguments[1]):null})}let R=this.convertChild(c.expression),pe=c.arguments.map(Je=>this.convertChild(Je)),ke=this.createNode(c,{type:m.AST_NODE_TYPES.CallExpression,callee:R,arguments:pe,optional:c.questionDotToken!==void 0});return c.typeArguments&&(ke.typeParameters=this.convertTypeArgumentsToTypeParameters(c.typeArguments,c)),this.convertChainExpression(ke,c)}case d.NewExpression:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.NewExpression,callee:this.convertChild(c.expression),arguments:c.arguments?c.arguments.map(pe=>this.convertChild(pe)):[]});return c.typeArguments&&(R.typeParameters=this.convertTypeArgumentsToTypeParameters(c.typeArguments,c)),R}case d.ConditionalExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.ConditionalExpression,test:this.convertChild(c.condition),consequent:this.convertChild(c.whenTrue),alternate:this.convertChild(c.whenFalse)});case d.MetaProperty:return this.createNode(c,{type:m.AST_NODE_TYPES.MetaProperty,meta:this.createNode(c.getFirstToken(),{type:m.AST_NODE_TYPES.Identifier,name:(0,y.getTextForTokenKind)(c.keywordToken)}),property:this.convertChild(c.name)});case d.Decorator:return this.createNode(c,{type:m.AST_NODE_TYPES.Decorator,expression:this.convertChild(c.expression)});case d.StringLiteral:return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:M.kind===d.JsxAttribute?(0,y.unescapeStringLiteralText)(c.text):c.text,raw:c.getText()});case d.NumericLiteral:return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:Number(c.text),raw:c.getText()});case d.BigIntLiteral:{let R=(0,y.getRange)(c,this.ast),pe=this.ast.text.slice(R[0],R[1]),ke=pe.slice(0,-1).replace(/_/g,""),Je=typeof BigInt<"u"?BigInt(ke):null;return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,raw:pe,value:Je,bigint:Je==null?ke:String(Je),range:R})}case d.RegularExpressionLiteral:{let R=c.text.slice(1,c.text.lastIndexOf("/")),pe=c.text.slice(c.text.lastIndexOf("/")+1),ke=null;try{ke=new RegExp(R,pe)}catch{ke=null}return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:ke,raw:c.text,regex:{pattern:R,flags:pe}})}case d.TrueKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:!0,raw:"true"});case d.FalseKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:!1,raw:"false"});case d.NullKeyword:return!C.typescriptVersionIsAtLeast["4.0"]&&this.inTypeMode?this.createNode(c,{type:m.AST_NODE_TYPES.TSNullKeyword}):this.createNode(c,{type:m.AST_NODE_TYPES.Literal,value:null,raw:"null"});case d.EmptyStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.EmptyStatement});case d.DebuggerStatement:return this.createNode(c,{type:m.AST_NODE_TYPES.DebuggerStatement});case d.JsxElement:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXElement,openingElement:this.convertChild(c.openingElement),closingElement:this.convertChild(c.closingElement),children:c.children.map(R=>this.convertChild(R))});case d.JsxFragment:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXFragment,openingFragment:this.convertChild(c.openingFragment),closingFragment:this.convertChild(c.closingFragment),children:c.children.map(R=>this.convertChild(R))});case d.JsxSelfClosingElement:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXElement,openingElement:this.createNode(c,{type:m.AST_NODE_TYPES.JSXOpeningElement,typeParameters:c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):void 0,selfClosing:!0,name:this.convertJSXTagName(c.tagName,c),attributes:c.attributes.properties.map(R=>this.convertChild(R)),range:(0,y.getRange)(c,this.ast)}),closingElement:null,children:[]});case d.JsxOpeningElement:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXOpeningElement,typeParameters:c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):void 0,selfClosing:!1,name:this.convertJSXTagName(c.tagName,c),attributes:c.attributes.properties.map(R=>this.convertChild(R))});case d.JsxClosingElement:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXClosingElement,name:this.convertJSXTagName(c.tagName,c)});case d.JsxOpeningFragment:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXOpeningFragment});case d.JsxClosingFragment:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXClosingFragment});case d.JsxExpression:{let R=c.expression?this.convertChild(c.expression):this.createNode(c,{type:m.AST_NODE_TYPES.JSXEmptyExpression,range:[c.getStart(this.ast)+1,c.getEnd()-1]});return c.dotDotDotToken?this.createNode(c,{type:m.AST_NODE_TYPES.JSXSpreadChild,expression:R}):this.createNode(c,{type:m.AST_NODE_TYPES.JSXExpressionContainer,expression:R})}case d.JsxAttribute:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXAttribute,name:this.convertJSXNamespaceOrIdentifier(c.name),value:this.convertChild(c.initializer)});case d.JsxText:{let R=c.getFullStart(),pe=c.getEnd(),ke=this.ast.text.slice(R,pe);return this.createNode(c,{type:m.AST_NODE_TYPES.JSXText,value:(0,y.unescapeStringLiteralText)(ke),raw:ke,range:[R,pe]})}case d.JsxSpreadAttribute:return this.createNode(c,{type:m.AST_NODE_TYPES.JSXSpreadAttribute,argument:this.convertChild(c.expression)});case d.QualifiedName:return this.createNode(c,{type:m.AST_NODE_TYPES.TSQualifiedName,left:this.convertChild(c.left),right:this.convertChild(c.right)});case d.TypeReference:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeReference,typeName:this.convertType(c.typeName),typeParameters:c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):void 0});case d.TypeParameter:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeParameter,name:this.convertType(c.name),constraint:c.constraint?this.convertType(c.constraint):void 0,default:c.default?this.convertType(c.default):void 0,in:(0,y.hasModifier)(d.InKeyword,c),out:(0,y.hasModifier)(d.OutKeyword,c),const:(0,y.hasModifier)(d.ConstKeyword,c)});case d.ThisType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSThisType});case d.AnyKeyword:case d.BigIntKeyword:case d.BooleanKeyword:case d.NeverKeyword:case d.NumberKeyword:case d.ObjectKeyword:case d.StringKeyword:case d.SymbolKeyword:case d.UnknownKeyword:case d.VoidKeyword:case d.UndefinedKeyword:case d.IntrinsicKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES[`TS${d[c.kind]}`]});case d.NonNullExpression:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSNonNullExpression,expression:this.convertChild(c.expression)});return this.convertChainExpression(R,c)}case d.TypeLiteral:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeLiteral,members:c.members.map(R=>this.convertChild(R))});case d.ArrayType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSArrayType,elementType:this.convertType(c.elementType)});case d.IndexedAccessType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSIndexedAccessType,objectType:this.convertType(c.objectType),indexType:this.convertType(c.indexType)});case d.ConditionalType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSConditionalType,checkType:this.convertType(c.checkType),extendsType:this.convertType(c.extendsType),trueType:this.convertType(c.trueType),falseType:this.convertType(c.falseType)});case d.TypeQuery:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeQuery,exprName:this.convertType(c.exprName),typeParameters:c.typeArguments&&this.convertTypeArgumentsToTypeParameters(c.typeArguments,c)});case d.MappedType:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSMappedType,typeParameter:this.convertType(c.typeParameter),nameType:(he=this.convertType(c.nameType))!==null&&he!==void 0?he:null});return c.readonlyToken&&(c.readonlyToken.kind===d.ReadonlyKeyword?R.readonly=!0:R.readonly=(0,y.getTextForTokenKind)(c.readonlyToken.kind)),c.questionToken&&(c.questionToken.kind===d.QuestionToken?R.optional=!0:R.optional=(0,y.getTextForTokenKind)(c.questionToken.kind)),c.type&&(R.typeAnnotation=this.convertType(c.type)),R}case d.ParenthesizedExpression:return this.convertChild(c.expression,M);case d.TypeAliasDeclaration:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeAliasDeclaration,id:this.convertChild(c.name),typeAnnotation:this.convertType(c.type)});return(0,y.hasModifier)(d.DeclareKeyword,c)&&(R.declare=!0),c.typeParameters&&(R.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),this.fixExports(c,R)}case d.MethodSignature:return this.convertMethodSignature(c);case d.PropertySignature:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSPropertySignature,optional:(0,y.isOptional)(c)||void 0,computed:(0,y.isComputedProperty)(c.name),key:this.convertChild(c.name),typeAnnotation:c.type?this.convertTypeAnnotation(c.type,c):void 0,initializer:this.convertChild(c.initializer)||void 0,readonly:(0,y.hasModifier)(d.ReadonlyKeyword,c)||void 0,static:(0,y.hasModifier)(d.StaticKeyword,c)||void 0,export:(0,y.hasModifier)(d.ExportKeyword,c)||void 0}),pe=(0,y.getTSNodeAccessibility)(c);return pe&&(R.accessibility=pe),R}case d.IndexSignature:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSIndexSignature,parameters:c.parameters.map(ke=>this.convertChild(ke))});c.type&&(R.typeAnnotation=this.convertTypeAnnotation(c.type,c)),(0,y.hasModifier)(d.ReadonlyKeyword,c)&&(R.readonly=!0);let pe=(0,y.getTSNodeAccessibility)(c);return pe&&(R.accessibility=pe),(0,y.hasModifier)(d.ExportKeyword,c)&&(R.export=!0),(0,y.hasModifier)(d.StaticKeyword,c)&&(R.static=!0),R}case d.ConstructorType:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSConstructorType,params:this.convertParameters(c.parameters),abstract:(0,y.hasModifier)(d.AbstractKeyword,c)});return c.type&&(R.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(R.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),R}case d.FunctionType:case d.ConstructSignature:case d.CallSignature:{let R=c.kind===d.ConstructSignature?m.AST_NODE_TYPES.TSConstructSignatureDeclaration:c.kind===d.CallSignature?m.AST_NODE_TYPES.TSCallSignatureDeclaration:m.AST_NODE_TYPES.TSFunctionType,pe=this.createNode(c,{type:R,params:this.convertParameters(c.parameters)});return c.type&&(pe.returnType=this.convertTypeAnnotation(c.type,c)),c.typeParameters&&(pe.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),pe}case d.ExpressionWithTypeArguments:{let R=M.kind,pe=R===d.InterfaceDeclaration?m.AST_NODE_TYPES.TSInterfaceHeritage:R===d.HeritageClause?m.AST_NODE_TYPES.TSClassImplements:m.AST_NODE_TYPES.TSInstantiationExpression,ke=this.createNode(c,{type:pe,expression:this.convertChild(c.expression)});return c.typeArguments&&(ke.typeParameters=this.convertTypeArgumentsToTypeParameters(c.typeArguments,c)),ke}case d.InterfaceDeclaration:{let R=(Pe=c.heritageClauses)!==null&&Pe!==void 0?Pe:[],pe=this.createNode(c,{type:m.AST_NODE_TYPES.TSInterfaceDeclaration,body:this.createNode(c,{type:m.AST_NODE_TYPES.TSInterfaceBody,body:c.members.map(ke=>this.convertChild(ke)),range:[c.members.pos-1,c.end]}),id:this.convertChild(c.name)});if(c.typeParameters&&(pe.typeParameters=this.convertTSTypeParametersToTypeParametersDeclaration(c.typeParameters)),R.length>0){let ke=[],Je=[];for(let Xe of R)if(Xe.token===d.ExtendsKeyword)for(let ee of Xe.types)ke.push(this.convertChild(ee,c));else for(let ee of Xe.types)Je.push(this.convertChild(ee,c));ke.length&&(pe.extends=ke),Je.length&&(pe.implements=Je)}return(0,y.hasModifier)(d.AbstractKeyword,c)&&(pe.abstract=!0),(0,y.hasModifier)(d.DeclareKeyword,c)&&(pe.declare=!0),this.fixExports(c,pe)}case d.TypePredicate:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSTypePredicate,asserts:c.assertsModifier!==void 0,parameterName:this.convertChild(c.parameterName),typeAnnotation:null});return c.type&&(R.typeAnnotation=this.convertTypeAnnotation(c.type,c),R.typeAnnotation.loc=R.typeAnnotation.typeAnnotation.loc,R.typeAnnotation.range=R.typeAnnotation.typeAnnotation.range),R}case d.ImportType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSImportType,isTypeOf:!!c.isTypeOf,parameter:this.convertChild(c.argument),qualifier:this.convertChild(c.qualifier),typeParameters:c.typeArguments?this.convertTypeArgumentsToTypeParameters(c.typeArguments,c):null});case d.EnumDeclaration:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSEnumDeclaration,id:this.convertChild(c.name),members:c.members.map(pe=>this.convertChild(pe))});return this.applyModifiersToResult(R,(0,P.getModifiers)(c)),this.fixExports(c,R)}case d.EnumMember:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSEnumMember,id:this.convertChild(c.name)});return c.initializer&&(R.initializer=this.convertChild(c.initializer)),c.name.kind===D.SyntaxKind.ComputedPropertyName&&(R.computed=!0),R}case d.ModuleDeclaration:{let R=this.createNode(c,Object.assign({type:m.AST_NODE_TYPES.TSModuleDeclaration},(()=>{let pe=this.convertChild(c.name),ke=this.convertChild(c.body);if(c.flags&D.NodeFlags.GlobalAugmentation){if(ke==null||ke.type===m.AST_NODE_TYPES.TSModuleDeclaration)throw new Error("Expected a valid module body");if(pe.type!==m.AST_NODE_TYPES.Identifier)throw new Error("global module augmentation must have an Identifier id");return{kind:"global",id:pe,body:ke,global:!0}}else if(c.flags&D.NodeFlags.Namespace){if(ke==null)throw new Error("Expected a module body");if(pe.type!==m.AST_NODE_TYPES.Identifier)throw new Error("`namespace`s must have an Identifier id");return{kind:"namespace",id:pe,body:ke}}else return Object.assign({kind:"module",id:pe},ke!=null?{body:ke}:{})})()));return this.applyModifiersToResult(R,(0,P.getModifiers)(c)),this.fixExports(c,R)}case d.ParenthesizedType:return this.convertType(c.type);case d.UnionType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSUnionType,types:c.types.map(R=>this.convertType(R))});case d.IntersectionType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSIntersectionType,types:c.types.map(R=>this.convertType(R))});case d.AsExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.TSAsExpression,expression:this.convertChild(c.expression),typeAnnotation:this.convertType(c.type)});case d.InferType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSInferType,typeParameter:this.convertType(c.typeParameter)});case d.LiteralType:return C.typescriptVersionIsAtLeast["4.0"]&&c.literal.kind===d.NullKeyword?this.createNode(c.literal,{type:m.AST_NODE_TYPES.TSNullKeyword}):this.createNode(c,{type:m.AST_NODE_TYPES.TSLiteralType,literal:this.convertType(c.literal)});case d.TypeAssertionExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.TSTypeAssertion,typeAnnotation:this.convertType(c.type),expression:this.convertChild(c.expression)});case d.ImportEqualsDeclaration:return this.createNode(c,{type:m.AST_NODE_TYPES.TSImportEqualsDeclaration,id:this.convertChild(c.name),moduleReference:this.convertChild(c.moduleReference),importKind:c.isTypeOnly?"type":"value",isExport:(0,y.hasModifier)(d.ExportKeyword,c)});case d.ExternalModuleReference:return this.createNode(c,{type:m.AST_NODE_TYPES.TSExternalModuleReference,expression:this.convertChild(c.expression)});case d.NamespaceExportDeclaration:return this.createNode(c,{type:m.AST_NODE_TYPES.TSNamespaceExportDeclaration,id:this.convertChild(c.name)});case d.AbstractKeyword:return this.createNode(c,{type:m.AST_NODE_TYPES.TSAbstractKeyword});case d.TupleType:{let R="elementTypes"in c?c.elementTypes.map(pe=>this.convertType(pe)):c.elements.map(pe=>this.convertType(pe));return this.createNode(c,{type:m.AST_NODE_TYPES.TSTupleType,elementTypes:R})}case d.NamedTupleMember:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSNamedTupleMember,elementType:this.convertType(c.type,c),label:this.convertChild(c.name,c),optional:c.questionToken!=null});return c.dotDotDotToken?(R.range[0]=R.label.range[0],R.loc.start=R.label.loc.start,this.createNode(c,{type:m.AST_NODE_TYPES.TSRestType,typeAnnotation:R})):R}case d.OptionalType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSOptionalType,typeAnnotation:this.convertType(c.type)});case d.RestType:return this.createNode(c,{type:m.AST_NODE_TYPES.TSRestType,typeAnnotation:this.convertType(c.type)});case d.TemplateLiteralType:{let R=this.createNode(c,{type:m.AST_NODE_TYPES.TSTemplateLiteralType,quasis:[this.convertChild(c.head)],types:[]});return c.templateSpans.forEach(pe=>{R.types.push(this.convertChild(pe.type)),R.quasis.push(this.convertChild(pe.literal))}),R}case d.ClassStaticBlockDeclaration:return this.createNode(c,{type:m.AST_NODE_TYPES.StaticBlock,body:this.convertBodyExpressions(c.body.statements,c)});case d.AssertEntry:return this.createNode(c,{type:m.AST_NODE_TYPES.ImportAttribute,key:this.convertChild(c.name),value:this.convertChild(c.value)});case d.SatisfiesExpression:return this.createNode(c,{type:m.AST_NODE_TYPES.TSSatisfiesExpression,expression:this.convertChild(c.expression),typeAnnotation:this.convertChild(c.type)});default:return this.deeplyCopy(c)}}};a.Converter=I}}),$a={};m1($a,{__assign:()=>f1,__asyncDelegator:()=>TV,__asyncGenerator:()=>bV,__asyncValues:()=>SV,__await:()=>gp,__awaiter:()=>dV,__classPrivateFieldGet:()=>CV,__classPrivateFieldSet:()=>AV,__createBinding:()=>hV,__decorate:()=>uV,__exportStar:()=>gV,__extends:()=>cV,__generator:()=>mV,__importDefault:()=>wV,__importStar:()=>EV,__makeTemplateObject:()=>xV,__metadata:()=>fV,__param:()=>pV,__read:()=>$9,__rest:()=>lV,__spread:()=>yV,__spreadArrays:()=>vV,__values:()=>tT});function cV(a,_){p1(a,_);function v(){this.constructor=a}a.prototype=_===null?Object.create(_):(v.prototype=_.prototype,new v)}function lV(a,_){var v={};for(var h in a)Object.prototype.hasOwnProperty.call(a,h)&&_.indexOf(h)<0&&(v[h]=a[h]);if(a!=null&&typeof Object.getOwnPropertySymbols=="function")for(var D=0,h=Object.getOwnPropertySymbols(a);D=0;m--)(y=a[m])&&(P=(D<3?y(P):D>3?y(_,v,P):y(_,v))||P);return D>3&&P&&Object.defineProperty(_,v,P),P}function pV(a,_){return function(v,h){_(v,h,a)}}function fV(a,_){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(a,_)}function dV(a,_,v,h){function D(P){return P instanceof v?P:new v(function(y){y(P)})}return new(v||(v=Promise))(function(P,y){function m(E){try{d(h.next(E))}catch(I){y(I)}}function C(E){try{d(h.throw(E))}catch(I){y(I)}}function d(E){E.done?P(E.value):D(E.value).then(m,C)}d((h=h.apply(a,_||[])).next())})}function mV(a,_){var v={label:0,sent:function(){if(P[0]&1)throw P[1];return P[1]},trys:[],ops:[]},h,D,P,y;return y={next:m(0),throw:m(1),return:m(2)},typeof Symbol=="function"&&(y[Symbol.iterator]=function(){return this}),y;function m(d){return function(E){return C([d,E])}}function C(d){if(h)throw new TypeError("Generator is already executing.");for(;v;)try{if(h=1,D&&(P=d[0]&2?D.return:d[0]?D.throw||((P=D.return)&&P.call(D),0):D.next)&&!(P=P.call(D,d[1])).done)return P;switch(D=0,P&&(d=[d[0]&2,P.value]),d[0]){case 0:case 1:P=d;break;case 4:return v.label++,{value:d[1],done:!1};case 5:v.label++,D=d[1],d=[0];continue;case 7:d=v.ops.pop(),v.trys.pop();continue;default:if(P=v.trys,!(P=P.length>0&&P[P.length-1])&&(d[0]===6||d[0]===2)){v=0;continue}if(d[0]===3&&(!P||d[1]>P[0]&&d[1]=a.length&&(a=void 0),{value:a&&a[h++],done:!a}}};throw new TypeError(_?"Object is not iterable.":"Symbol.iterator is not defined.")}function $9(a,_){var v=typeof Symbol=="function"&&a[Symbol.iterator];if(!v)return a;var h=v.call(a),D,P=[],y;try{for(;(_===void 0||_-- >0)&&!(D=h.next()).done;)P.push(D.value)}catch(m){y={error:m}}finally{try{D&&!D.done&&(v=h.return)&&v.call(h)}finally{if(y)throw y.error}}return P}function yV(){for(var a=[],_=0;_1||m(c,M)})})}function m(c,M){try{C(h[c](M))}catch(q){I(P[0][3],q)}}function C(c){c.value instanceof gp?Promise.resolve(c.value.v).then(d,E):I(P[0][2],c)}function d(c){m("next",c)}function E(c){m("throw",c)}function I(c,M){c(M),P.shift(),P.length&&m(P[0][0],P[0][1])}}function TV(a){var _,v;return _={},h("next"),h("throw",function(D){throw D}),h("return"),_[Symbol.iterator]=function(){return this},_;function h(D,P){_[D]=a[D]?function(y){return(v=!v)?{value:gp(a[D](y)),done:D==="return"}:P?P(y):y}:P}}function SV(a){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var _=a[Symbol.asyncIterator],v;return _?_.call(a):(a=typeof tT=="function"?tT(a):a[Symbol.iterator](),v={},h("next"),h("throw"),h("return"),v[Symbol.asyncIterator]=function(){return this},v);function h(P){v[P]=a[P]&&function(y){return new Promise(function(m,C){y=a[P](y),D(m,C,y.done,y.value)})}}function D(P,y,m,C){Promise.resolve(C).then(function(d){P({value:d,done:m})},y)}}function xV(a,_){return Object.defineProperty?Object.defineProperty(a,"raw",{value:_}):a.raw=_,a}function EV(a){if(a&&a.__esModule)return a;var _={};if(a!=null)for(var v in a)Object.hasOwnProperty.call(a,v)&&(_[v]=a[v]);return _.default=a,_}function wV(a){return a&&a.__esModule?a:{default:a}}function CV(a,_){if(!_.has(a))throw new TypeError("attempted to get private field on non-instance");return _.get(a)}function AV(a,_,v){if(!_.has(a))throw new TypeError("attempted to set private field on non-instance");return _.set(a,v),v}var p1,f1,Ds=yp({"node_modules/tslib/tslib.es6.js"(){De(),p1=function(a,_){return p1=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(v,h){v.__proto__=h}||function(v,h){for(var D in h)h.hasOwnProperty(D)&&(v[D]=h[D])},p1(a,_)},f1=function(){return f1=Object.assign||function(_){for(var v,h=1,D=arguments.length;h=_.SyntaxKind.FirstLiteralToken&&J.kind<=_.SyntaxKind.LastLiteralToken}a.isLiteralExpression=Jr;function Qc(J){return J.kind===_.SyntaxKind.LiteralType}a.isLiteralTypeNode=Qc;function ho(J){return J.kind===_.SyntaxKind.MappedType}a.isMappedTypeNode=ho;function T_(J){return J.kind===_.SyntaxKind.MetaProperty}a.isMetaProperty=T_;function go(J){return J.kind===_.SyntaxKind.MethodDeclaration}a.isMethodDeclaration=go;function yo(J){return J.kind===_.SyntaxKind.MethodSignature}a.isMethodSignature=yo;function Za(J){return J.kind===_.SyntaxKind.ModuleBlock}a.isModuleBlock=Za;function vo(J){return J.kind===_.SyntaxKind.ModuleDeclaration}a.isModuleDeclaration=vo;function S_(J){return J.kind===_.SyntaxKind.NamedExports}a.isNamedExports=S_;function Zc(J){return J.kind===_.SyntaxKind.NamedImports}a.isNamedImports=Zc;function Os(J){return vo(J)&&J.name.kind===_.SyntaxKind.Identifier&&J.body!==void 0&&(J.body.kind===_.SyntaxKind.ModuleBlock||Os(J.body))}a.isNamespaceDeclaration=Os;function bo(J){return J.kind===_.SyntaxKind.NamespaceImport}a.isNamespaceImport=bo;function el(J){return J.kind===_.SyntaxKind.NamespaceExportDeclaration}a.isNamespaceExportDeclaration=el;function x_(J){return J.kind===_.SyntaxKind.NewExpression}a.isNewExpression=x_;function E_(J){return J.kind===_.SyntaxKind.NonNullExpression}a.isNonNullExpression=E_;function S(J){return J.kind===_.SyntaxKind.NoSubstitutionTemplateLiteral}a.isNoSubstitutionTemplateLiteral=S;function H(J){return J.kind===_.SyntaxKind.NullKeyword}a.isNullLiteral=H;function le(J){return J.kind===_.SyntaxKind.NumericLiteral}a.isNumericLiteral=le;function Be(J){switch(J.kind){case _.SyntaxKind.StringLiteral:case _.SyntaxKind.NumericLiteral:case _.SyntaxKind.NoSubstitutionTemplateLiteral:return!0;default:return!1}}a.isNumericOrStringLikeLiteral=Be;function rt(J){return J.kind===_.SyntaxKind.ObjectBindingPattern}a.isObjectBindingPattern=rt;function ut(J){return J.kind===_.SyntaxKind.ObjectLiteralExpression}a.isObjectLiteralExpression=ut;function Ht(J){return J.kind===_.SyntaxKind.OmittedExpression}a.isOmittedExpression=Ht;function Fr(J){return J.kind===_.SyntaxKind.Parameter}a.isParameterDeclaration=Fr;function Cr(J){return J.kind===_.SyntaxKind.ParenthesizedExpression}a.isParenthesizedExpression=Cr;function ir(J){return J.kind===_.SyntaxKind.ParenthesizedType}a.isParenthesizedTypeNode=ir;function en(J){return J.kind===_.SyntaxKind.PostfixUnaryExpression}a.isPostfixUnaryExpression=en;function Ji(J){return J.kind===_.SyntaxKind.PrefixUnaryExpression}a.isPrefixUnaryExpression=Ji;function gi(J){return J.kind===_.SyntaxKind.PropertyAccessExpression}a.isPropertyAccessExpression=gi;function ln(J){return J.kind===_.SyntaxKind.PropertyAssignment}a.isPropertyAssignment=ln;function ti(J){return J.kind===_.SyntaxKind.PropertyDeclaration}a.isPropertyDeclaration=ti;function yn(J){return J.kind===_.SyntaxKind.PropertySignature}a.isPropertySignature=yn;function w_(J){return J.kind===_.SyntaxKind.QualifiedName}a.isQualifiedName=w_;function vp(J){return J.kind===_.SyntaxKind.RegularExpressionLiteral}a.isRegularExpressionLiteral=vp;function C1(J){return J.kind===_.SyntaxKind.ReturnStatement}a.isReturnStatement=C1;function rr(J){return J.kind===_.SyntaxKind.SetAccessor}a.isSetAccessorDeclaration=rr;function bp(J){return J.kind===_.SyntaxKind.ShorthandPropertyAssignment}a.isShorthandPropertyAssignment=bp;function Tp(J){return J.parameters!==void 0}a.isSignatureDeclaration=Tp;function A1(J){return J.kind===_.SyntaxKind.SourceFile}a.isSourceFile=A1;function tl(J){return J.kind===_.SyntaxKind.SpreadAssignment}a.isSpreadAssignment=tl;function An(J){return J.kind===_.SyntaxKind.SpreadElement}a.isSpreadElement=An;function P1(J){return J.kind===_.SyntaxKind.StringLiteral}a.isStringLiteral=P1;function D1(J){return J.kind===_.SyntaxKind.SwitchStatement}a.isSwitchStatement=D1;function k1(J){return J.kind===_.SyntaxKind.SyntaxList}a.isSyntaxList=k1;function fa(J){return J.kind===_.SyntaxKind.TaggedTemplateExpression}a.isTaggedTemplateExpression=fa;function Ms(J){return J.kind===_.SyntaxKind.TemplateExpression}a.isTemplateExpression=Ms;function To(J){return J.kind===_.SyntaxKind.TemplateExpression||J.kind===_.SyntaxKind.NoSubstitutionTemplateLiteral}a.isTemplateLiteral=To;function Sp(J){return J.kind===_.SyntaxKind.StringLiteral||J.kind===_.SyntaxKind.NoSubstitutionTemplateLiteral}a.isTextualLiteral=Sp;function Vr(J){return J.kind===_.SyntaxKind.ThrowStatement}a.isThrowStatement=Vr;function I1(J){return J.kind===_.SyntaxKind.TryStatement}a.isTryStatement=I1;function N1(J){return J.kind===_.SyntaxKind.TupleType}a.isTupleTypeNode=N1;function C_(J){return J.kind===_.SyntaxKind.TypeAliasDeclaration}a.isTypeAliasDeclaration=C_;function O1(J){return J.kind===_.SyntaxKind.TypeAssertionExpression}a.isTypeAssertion=O1;function ri(J){return J.kind===_.SyntaxKind.TypeLiteral}a.isTypeLiteralNode=ri;function rl(J){return J.kind===_.SyntaxKind.TypeOfExpression}a.isTypeOfExpression=rl;function M1(J){return J.kind===_.SyntaxKind.TypeOperator}a.isTypeOperatorNode=M1;function xp(J){return J.kind===_.SyntaxKind.TypeParameter}a.isTypeParameterDeclaration=xp;function L1(J){return J.kind===_.SyntaxKind.TypePredicate}a.isTypePredicateNode=L1;function R1(J){return J.kind===_.SyntaxKind.TypeReference}a.isTypeReferenceNode=R1;function j1(J){return J.kind===_.SyntaxKind.TypeQuery}a.isTypeQueryNode=j1;function Ep(J){return J.kind===_.SyntaxKind.UnionType}a.isUnionTypeNode=Ep;function J1(J){return J.kind===_.SyntaxKind.VariableDeclaration}a.isVariableDeclaration=J1;function es(J){return J.kind===_.SyntaxKind.VariableStatement}a.isVariableStatement=es;function F1(J){return J.kind===_.SyntaxKind.VariableDeclarationList}a.isVariableDeclarationList=F1;function B1(J){return J.kind===_.SyntaxKind.VoidExpression}a.isVoidExpression=B1;function Fi(J){return J.kind===_.SyntaxKind.WhileStatement}a.isWhileStatement=Fi;function q1(J){return J.kind===_.SyntaxKind.WithStatement}a.isWithStatement=q1}}),DV=Oe({"node_modules/tsutils/typeguard/2.9/node.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.isImportTypeNode=void 0;var _=(Ds(),Li($a));_.__exportStar(PV(),a);var v=vr();function h(D){return D.kind===v.SyntaxKind.ImportType}a.isImportTypeNode=h}}),kV=Oe({"node_modules/tsutils/typeguard/3.0/node.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.isSyntheticExpression=a.isRestTypeNode=a.isOptionalTypeNode=void 0;var _=(Ds(),Li($a));_.__exportStar(DV(),a);var v=vr();function h(y){return y.kind===v.SyntaxKind.OptionalType}a.isOptionalTypeNode=h;function D(y){return y.kind===v.SyntaxKind.RestType}a.isRestTypeNode=D;function P(y){return y.kind===v.SyntaxKind.SyntheticExpression}a.isSyntheticExpression=P}}),K9=Oe({"node_modules/tsutils/typeguard/3.2/node.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.isBigIntLiteral=void 0;var _=(Ds(),Li($a));_.__exportStar(kV(),a);var v=vr();function h(D){return D.kind===v.SyntaxKind.BigIntLiteral}a.isBigIntLiteral=h}}),X9=Oe({"node_modules/tsutils/typeguard/node.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0});var _=(Ds(),Li($a));_.__exportStar(K9(),a)}}),IV=Oe({"node_modules/tsutils/typeguard/2.8/type.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.isUniqueESSymbolType=a.isUnionType=a.isUnionOrIntersectionType=a.isTypeVariable=a.isTypeReference=a.isTypeParameter=a.isSubstitutionType=a.isObjectType=a.isLiteralType=a.isIntersectionType=a.isInterfaceType=a.isInstantiableType=a.isIndexedAccessype=a.isIndexedAccessType=a.isGenericType=a.isEnumType=a.isConditionalType=void 0;var _=vr();function v(me){return(me.flags&_.TypeFlags.Conditional)!==0}a.isConditionalType=v;function h(me){return(me.flags&_.TypeFlags.Enum)!==0}a.isEnumType=h;function D(me){return(me.flags&_.TypeFlags.Object)!==0&&(me.objectFlags&_.ObjectFlags.ClassOrInterface)!==0&&(me.objectFlags&_.ObjectFlags.Reference)!==0}a.isGenericType=D;function P(me){return(me.flags&_.TypeFlags.IndexedAccess)!==0}a.isIndexedAccessType=P;function y(me){return(me.flags&_.TypeFlags.Index)!==0}a.isIndexedAccessype=y;function m(me){return(me.flags&_.TypeFlags.Instantiable)!==0}a.isInstantiableType=m;function C(me){return(me.flags&_.TypeFlags.Object)!==0&&(me.objectFlags&_.ObjectFlags.ClassOrInterface)!==0}a.isInterfaceType=C;function d(me){return(me.flags&_.TypeFlags.Intersection)!==0}a.isIntersectionType=d;function E(me){return(me.flags&(_.TypeFlags.StringOrNumberLiteral|_.TypeFlags.BigIntLiteral))!==0}a.isLiteralType=E;function I(me){return(me.flags&_.TypeFlags.Object)!==0}a.isObjectType=I;function c(me){return(me.flags&_.TypeFlags.Substitution)!==0}a.isSubstitutionType=c;function M(me){return(me.flags&_.TypeFlags.TypeParameter)!==0}a.isTypeParameter=M;function q(me){return(me.flags&_.TypeFlags.Object)!==0&&(me.objectFlags&_.ObjectFlags.Reference)!==0}a.isTypeReference=q;function W(me){return(me.flags&_.TypeFlags.TypeVariable)!==0}a.isTypeVariable=W;function K(me){return(me.flags&_.TypeFlags.UnionOrIntersection)!==0}a.isUnionOrIntersectionType=K;function ce(me){return(me.flags&_.TypeFlags.Union)!==0}a.isUnionType=ce;function Ie(me){return(me.flags&_.TypeFlags.UniqueESSymbol)!==0}a.isUniqueESSymbolType=Ie}}),S9=Oe({"node_modules/tsutils/typeguard/2.9/type.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0});var _=(Ds(),Li($a));_.__exportStar(IV(),a)}}),NV=Oe({"node_modules/tsutils/typeguard/3.0/type.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.isTupleTypeReference=a.isTupleType=void 0;var _=(Ds(),Li($a));_.__exportStar(S9(),a);var v=vr(),h=S9();function D(y){return(y.flags&v.TypeFlags.Object&&y.objectFlags&v.ObjectFlags.Tuple)!==0}a.isTupleType=D;function P(y){return h.isTypeReference(y)&&D(y.target)}a.isTupleTypeReference=P}}),Y9=Oe({"node_modules/tsutils/typeguard/3.2/type.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0});var _=(Ds(),Li($a));_.__exportStar(NV(),a)}}),OV=Oe({"node_modules/tsutils/typeguard/3.2/index.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0});var _=(Ds(),Li($a));_.__exportStar(K9(),a),_.__exportStar(Y9(),a)}}),MV=Oe({"node_modules/tsutils/typeguard/type.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0});var _=(Ds(),Li($a));_.__exportStar(Y9(),a)}}),LV=Oe({"node_modules/tsutils/util/type.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.getBaseClassMemberOfClassElement=a.getIteratorYieldResultFromIteratorResult=a.getInstanceTypeOfClassLikeDeclaration=a.getConstructorTypeOfClassLikeDeclaration=a.getSymbolOfClassLikeDeclaration=a.getPropertyNameFromType=a.symbolHasReadonlyDeclaration=a.isPropertyReadonlyInType=a.getWellKnownSymbolPropertyOfType=a.getPropertyOfType=a.isBooleanLiteralType=a.isFalsyType=a.isThenableType=a.someTypePart=a.intersectionTypeParts=a.unionTypeParts=a.getCallSignaturesOfType=a.isTypeAssignableToString=a.isTypeAssignableToNumber=a.isOptionalChainingUndefinedMarkerType=a.removeOptionalChainingUndefinedMarkerType=a.removeOptionalityFromType=a.isEmptyObjectType=void 0;var _=vr(),v=MV(),h=Q9(),D=X9();function P(ne){if(v.isObjectType(ne)&&ne.objectFlags&_.ObjectFlags.Anonymous&&ne.getProperties().length===0&&ne.getCallSignatures().length===0&&ne.getConstructSignatures().length===0&&ne.getStringIndexType()===void 0&&ne.getNumberIndexType()===void 0){let ge=ne.getBaseTypes();return ge===void 0||ge.every(P)}return!1}a.isEmptyObjectType=P;function y(ne,ge){if(!m(ge,_.TypeFlags.Undefined))return ge;let Fe=m(ge,_.TypeFlags.Null);return ge=ne.getNonNullableType(ge),Fe?ne.getNullableType(ge,_.TypeFlags.Null):ge}a.removeOptionalityFromType=y;function m(ne,ge){for(let Fe of q(ne))if(h.isTypeFlagSet(Fe,ge))return!0;return!1}function C(ne,ge){if(!v.isUnionType(ge))return d(ne,ge)?ge.getNonNullableType():ge;let Fe=0,at=!1;for(let Pt of ge.types)d(ne,Pt)?at=!0:Fe|=Pt.flags;return at?ne.getNullableType(ge.getNonNullableType(),Fe):ge}a.removeOptionalChainingUndefinedMarkerType=C;function d(ne,ge){return h.isTypeFlagSet(ge,_.TypeFlags.Undefined)&&ne.getNullableType(ge.getNonNullableType(),_.TypeFlags.Undefined)!==ge}a.isOptionalChainingUndefinedMarkerType=d;function E(ne,ge){return c(ne,ge,_.TypeFlags.NumberLike)}a.isTypeAssignableToNumber=E;function I(ne,ge){return c(ne,ge,_.TypeFlags.StringLike)}a.isTypeAssignableToString=I;function c(ne,ge,Fe){Fe|=_.TypeFlags.Any;let at;return function Pt(qt){if(v.isTypeParameter(qt)&&qt.symbol!==void 0&&qt.symbol.declarations!==void 0){if(at===void 0)at=new Set([qt]);else if(!at.has(qt))at.add(qt);else return!1;let Zr=qt.symbol.declarations[0];return Zr.constraint===void 0?!0:Pt(ne.getTypeFromTypeNode(Zr.constraint))}return v.isUnionType(qt)?qt.types.every(Pt):v.isIntersectionType(qt)?qt.types.some(Pt):h.isTypeFlagSet(qt,Fe)}(ge)}function M(ne){if(v.isUnionType(ne)){let ge=[];for(let Fe of ne.types)ge.push(...M(Fe));return ge}if(v.isIntersectionType(ne)){let ge;for(let Fe of ne.types){let at=M(Fe);if(at.length!==0){if(ge!==void 0)return[];ge=at}}return ge===void 0?[]:ge}return ne.getCallSignatures()}a.getCallSignaturesOfType=M;function q(ne){return v.isUnionType(ne)?ne.types:[ne]}a.unionTypeParts=q;function W(ne){return v.isIntersectionType(ne)?ne.types:[ne]}a.intersectionTypeParts=W;function K(ne,ge,Fe){return ge(ne)?ne.types.some(Fe):Fe(ne)}a.someTypePart=K;function ce(ne,ge){let Fe=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ne.getTypeAtLocation(ge);for(let at of q(ne.getApparentType(Fe))){let Pt=at.getProperty("then");if(Pt===void 0)continue;let qt=ne.getTypeOfSymbolAtLocation(Pt,ge);for(let Zr of q(qt))for(let Ri of Zr.getCallSignatures())if(Ri.parameters.length!==0&&Ie(ne,Ri.parameters[0],ge))return!0}return!1}a.isThenableType=ce;function Ie(ne,ge,Fe){let at=ne.getApparentType(ne.getTypeOfSymbolAtLocation(ge,Fe));if(ge.valueDeclaration.dotDotDotToken&&(at=at.getNumberIndexType(),at===void 0))return!1;for(let Pt of q(at))if(Pt.getCallSignatures().length!==0)return!0;return!1}function me(ne){return ne.flags&(_.TypeFlags.Undefined|_.TypeFlags.Null|_.TypeFlags.Void)?!0:v.isLiteralType(ne)?!ne.value:Ae(ne,!1)}a.isFalsyType=me;function Ae(ne,ge){return h.isTypeFlagSet(ne,_.TypeFlags.BooleanLiteral)&&ne.intrinsicName===(ge?"true":"false")}a.isBooleanLiteralType=Ae;function te(ne,ge){return ge.startsWith("__")?ne.getProperties().find(Fe=>Fe.escapedName===ge):ne.getProperty(ge)}a.getPropertyOfType=te;function he(ne,ge,Fe){let at="__@"+ge;for(let Pt of ne.getProperties()){if(!Pt.name.startsWith(at))continue;let qt=Fe.getApparentType(Fe.getTypeAtLocation(Pt.valueDeclaration.name.expression)).symbol;if(Pt.escapedName===Pe(Fe,qt,ge))return Pt}}a.getWellKnownSymbolPropertyOfType=he;function Pe(ne,ge,Fe){let at=ge&&ne.getTypeOfSymbolAtLocation(ge,ge.valueDeclaration).getProperty(Fe),Pt=at&&ne.getTypeOfSymbolAtLocation(at,at.valueDeclaration);return Pt&&v.isUniqueESSymbolType(Pt)?Pt.escapedName:"__@"+Fe}function R(ne,ge,Fe){let at=!1,Pt=!1;for(let qt of q(ne))if(te(qt,ge)===void 0){let Zr=(h.isNumericPropertyName(ge)?Fe.getIndexInfoOfType(qt,_.IndexKind.Number):void 0)||Fe.getIndexInfoOfType(qt,_.IndexKind.String);if(Zr!==void 0&&Zr.isReadonly){if(at)return!0;Pt=!0}}else{if(Pt||pe(qt,ge,Fe))return!0;at=!0}return!1}a.isPropertyReadonlyInType=R;function pe(ne,ge,Fe){return K(ne,v.isIntersectionType,at=>{let Pt=te(at,ge);if(Pt===void 0)return!1;if(Pt.flags&_.SymbolFlags.Transient){if(/^(?:[1-9]\d*|0)$/.test(ge)&&v.isTupleTypeReference(at))return at.target.readonly;switch(ke(at,ge,Fe)){case!0:return!0;case!1:return!1;default:}}return h.isSymbolFlagSet(Pt,_.SymbolFlags.ValueModule)||Je(Pt,Fe)})}function ke(ne,ge,Fe){if(!v.isObjectType(ne)||!h.isObjectFlagSet(ne,_.ObjectFlags.Mapped))return;let at=ne.symbol.declarations[0];return at.readonlyToken!==void 0&&!/^__@[^@]+$/.test(ge)?at.readonlyToken.kind!==_.SyntaxKind.MinusToken:R(ne.modifiersType,ge,Fe)}function Je(ne,ge){return(ne.flags&_.SymbolFlags.Accessor)===_.SymbolFlags.GetAccessor||ne.declarations!==void 0&&ne.declarations.some(Fe=>h.isModifierFlagSet(Fe,_.ModifierFlags.Readonly)||D.isVariableDeclaration(Fe)&&h.isNodeFlagSet(Fe.parent,_.NodeFlags.Const)||D.isCallExpression(Fe)&&h.isReadonlyAssignmentDeclaration(Fe,ge)||D.isEnumMember(Fe)||(D.isPropertyAssignment(Fe)||D.isShorthandPropertyAssignment(Fe))&&h.isInConstContext(Fe.parent))}a.symbolHasReadonlyDeclaration=Je;function Xe(ne){if(ne.flags&(_.TypeFlags.StringLiteral|_.TypeFlags.NumberLiteral)){let ge=String(ne.value);return{displayName:ge,symbolName:_.escapeLeadingUnderscores(ge)}}if(v.isUniqueESSymbolType(ne))return{displayName:`[${ne.symbol?`${ee(ne.symbol)?"Symbol.":""}${ne.symbol.name}`:ne.escapedName.replace(/^__@|@\d+$/g,"")}]`,symbolName:ne.escapedName}}a.getPropertyNameFromType=Xe;function ee(ne){return h.isSymbolFlagSet(ne,_.SymbolFlags.Property)&&ne.valueDeclaration!==void 0&&D.isInterfaceDeclaration(ne.valueDeclaration.parent)&&ne.valueDeclaration.parent.name.text==="SymbolConstructor"&&je(ne.valueDeclaration.parent)}function je(ne){return h.isNodeFlagSet(ne.parent,_.NodeFlags.GlobalAugmentation)||D.isSourceFile(ne.parent)&&!_.isExternalModule(ne.parent)}function nt(ne,ge){var Fe;return ge.getSymbolAtLocation((Fe=ne.name)!==null&&Fe!==void 0?Fe:h.getChildOfKind(ne,_.SyntaxKind.ClassKeyword))}a.getSymbolOfClassLikeDeclaration=nt;function Ze(ne,ge){return ne.kind===_.SyntaxKind.ClassExpression?ge.getTypeAtLocation(ne):ge.getTypeOfSymbolAtLocation(nt(ne,ge),ne)}a.getConstructorTypeOfClassLikeDeclaration=Ze;function st(ne,ge){return ne.kind===_.SyntaxKind.ClassDeclaration?ge.getTypeAtLocation(ne):ge.getDeclaredTypeOfSymbol(nt(ne,ge))}a.getInstanceTypeOfClassLikeDeclaration=st;function tt(ne,ge,Fe){return v.isUnionType(ne)&&ne.types.find(at=>{let Pt=at.getProperty("done");return Pt!==void 0&&Ae(y(Fe,Fe.getTypeOfSymbolAtLocation(Pt,ge)),!1)})||ne}a.getIteratorYieldResultFromIteratorResult=tt;function ct(ne,ge){if(!D.isClassLikeDeclaration(ne.parent))return;let Fe=h.getBaseOfClassLikeExpression(ne.parent);if(Fe===void 0)return;let at=h.getSingleLateBoundPropertyNameOfPropertyName(ne.name,ge);if(at===void 0)return;let Pt=ge.getTypeAtLocation(h.hasModifier(ne.modifiers,_.SyntaxKind.StaticKeyword)?Fe.expression:Fe);return te(Pt,at.symbolName)}a.getBaseClassMemberOfClassElement=ct}}),Q9=Oe({"node_modules/tsutils/util/util.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.isValidIdentifier=a.getLineBreakStyle=a.getLineRanges=a.forEachComment=a.forEachTokenWithTrivia=a.forEachToken=a.isFunctionWithBody=a.hasOwnThisReference=a.isBlockScopeBoundary=a.isFunctionScopeBoundary=a.isTypeScopeBoundary=a.isScopeBoundary=a.ScopeBoundarySelector=a.ScopeBoundary=a.isInSingleStatementContext=a.isBlockScopedDeclarationStatement=a.isBlockScopedVariableDeclaration=a.isBlockScopedVariableDeclarationList=a.getVariableDeclarationKind=a.VariableDeclarationKind=a.forEachDeclaredVariable=a.forEachDestructuringIdentifier=a.getPropertyName=a.getWrappedNodeAtPosition=a.getAstNodeAtPosition=a.commentText=a.isPositionInComment=a.getCommentAtPosition=a.getTokenAtPosition=a.getNextToken=a.getPreviousToken=a.getNextStatement=a.getPreviousStatement=a.isModifierFlagSet=a.isObjectFlagSet=a.isSymbolFlagSet=a.isTypeFlagSet=a.isNodeFlagSet=a.hasAccessModifier=a.isParameterProperty=a.hasModifier=a.getModifier=a.isThisParameter=a.isKeywordKind=a.isJsDocKind=a.isTypeNodeKind=a.isAssignmentKind=a.isNodeKind=a.isTokenKind=a.getChildOfKind=void 0,a.getBaseOfClassLikeExpression=a.hasExhaustiveCaseClauses=a.formatPseudoBigInt=a.unwrapParentheses=a.getSingleLateBoundPropertyNameOfPropertyName=a.getLateBoundPropertyNamesOfPropertyName=a.getLateBoundPropertyNames=a.getPropertyNameOfWellKnownSymbol=a.isWellKnownSymbolLiterally=a.isBindableObjectDefinePropertyCall=a.isReadonlyAssignmentDeclaration=a.isInConstContext=a.isConstAssertion=a.getTsCheckDirective=a.getCheckJsDirective=a.isAmbientModule=a.isCompilerOptionEnabled=a.isStrictCompilerOptionEnabled=a.getIIFE=a.isAmbientModuleBlock=a.isStatementInAmbientContext=a.findImportLikeNodes=a.findImports=a.ImportKind=a.parseJsDocOfNode=a.getJsDoc=a.canHaveJsDoc=a.isReassignmentTarget=a.getAccessKind=a.AccessKind=a.isExpressionValueUsed=a.getDeclarationOfBindingElement=a.hasSideEffects=a.SideEffectOptions=a.isSameLine=a.isNumericPropertyName=a.isValidJsxIdentifier=a.isValidNumericLiteral=a.isValidPropertyName=a.isValidPropertyAccess=void 0;var _=vr(),v=X9(),h=OV(),D=LV();function P(S,H,le){for(let Be of S.getChildren(le))if(Be.kind===H)return Be}a.getChildOfKind=P;function y(S){return S>=_.SyntaxKind.FirstToken&&S<=_.SyntaxKind.LastToken}a.isTokenKind=y;function m(S){return S>=_.SyntaxKind.FirstNode}a.isNodeKind=m;function C(S){return S>=_.SyntaxKind.FirstAssignment&&S<=_.SyntaxKind.LastAssignment}a.isAssignmentKind=C;function d(S){return S>=_.SyntaxKind.FirstTypeNode&&S<=_.SyntaxKind.LastTypeNode}a.isTypeNodeKind=d;function E(S){return S>=_.SyntaxKind.FirstJSDocNode&&S<=_.SyntaxKind.LastJSDocNode}a.isJsDocKind=E;function I(S){return S>=_.SyntaxKind.FirstKeyword&&S<=_.SyntaxKind.LastKeyword}a.isKeywordKind=I;function c(S){return S.name.kind===_.SyntaxKind.Identifier&&S.name.originalKeywordKind===_.SyntaxKind.ThisKeyword}a.isThisParameter=c;function M(S,H){if(S.modifiers!==void 0){for(let le of S.modifiers)if(le.kind===H)return le}}a.getModifier=M;function q(S){if(S===void 0)return!1;for(var H=arguments.length,le=new Array(H>1?H-1:0),Be=1;Be0)return H.statements[le-1]}}a.getPreviousStatement=Ae;function te(S){let H=S.parent;if(v.isBlockLike(H)){let le=H.statements.indexOf(S);if(le=S.end))return y(S.kind)?S:pe(S,H,le!=null?le:S.getSourceFile(),Be===!0)}a.getTokenAtPosition=R;function pe(S,H,le,Be){if(!Be&&(S=je(S,H),y(S.kind)))return S;e:for(;;){for(let rt of S.getChildren(le))if(rt.end>H&&(Be||rt.kind!==_.SyntaxKind.JSDocComment)){if(y(rt.kind))return rt;S=rt;continue e}return}}function ke(S,H){let le=arguments.length>2&&arguments[2]!==void 0?arguments[2]:S,Be=R(le,H,S);if(Be===void 0||Be.kind===_.SyntaxKind.JsxText||H>=Be.end-(_.tokenToString(Be.kind)||"").length)return;let rt=Be.pos===0?(_.getShebang(S.text)||"").length:Be.pos;return rt!==0&&_.forEachTrailingCommentRange(S.text,rt,Je,H)||_.forEachLeadingCommentRange(S.text,rt,Je,H)}a.getCommentAtPosition=ke;function Je(S,H,le,Be,rt){return rt>=S&&rtH||S.end<=H)){for(;m(S.kind);){let le=_.forEachChild(S,Be=>Be.pos<=H&&Be.end>H?Be:void 0);if(le===void 0)break;S=le}return S}}a.getAstNodeAtPosition=je;function nt(S,H){if(S.node.pos>H||S.node.end<=H)return;e:for(;;){for(let le of S.children){if(le.node.pos>H)return S;if(le.node.end>H){S=le;continue e}}return S}}a.getWrappedNodeAtPosition=nt;function Ze(S){if(S.kind===_.SyntaxKind.ComputedPropertyName){let H=Os(S.expression);if(v.isPrefixUnaryExpression(H)){let le=!1;switch(H.operator){case _.SyntaxKind.MinusToken:le=!0;case _.SyntaxKind.PlusToken:return v.isNumericLiteral(H.operand)?`${le?"-":""}${H.operand.text}`:h.isBigIntLiteral(H.operand)?`${le?"-":""}${H.operand.text.slice(0,-1)}`:void 0;default:return}}return h.isBigIntLiteral(H)?H.text.slice(0,-1):v.isNumericOrStringLikeLiteral(H)?H.text:void 0}return S.kind===_.SyntaxKind.PrivateIdentifier?void 0:S.text}a.getPropertyName=Ze;function st(S,H){for(let le of S.elements){if(le.kind!==_.SyntaxKind.BindingElement)continue;let Be;if(le.name.kind===_.SyntaxKind.Identifier?Be=H(le):Be=st(le.name,H),Be)return Be}}a.forEachDestructuringIdentifier=st;function tt(S,H){for(let le of S.declarations){let Be;if(le.name.kind===_.SyntaxKind.Identifier?Be=H(le):Be=st(le.name,H),Be)return Be}}a.forEachDeclaredVariable=tt;var ct;(function(S){S[S.Var=0]="Var",S[S.Let=1]="Let",S[S.Const=2]="Const"})(ct=a.VariableDeclarationKind||(a.VariableDeclarationKind={}));function ne(S){return S.flags&_.NodeFlags.Let?1:S.flags&_.NodeFlags.Const?2:0}a.getVariableDeclarationKind=ne;function ge(S){return(S.flags&_.NodeFlags.BlockScoped)!==0}a.isBlockScopedVariableDeclarationList=ge;function Fe(S){let H=S.parent;return H.kind===_.SyntaxKind.CatchClause||ge(H)}a.isBlockScopedVariableDeclaration=Fe;function at(S){switch(S.kind){case _.SyntaxKind.VariableStatement:return ge(S.declarationList);case _.SyntaxKind.ClassDeclaration:case _.SyntaxKind.EnumDeclaration:case _.SyntaxKind.InterfaceDeclaration:case _.SyntaxKind.TypeAliasDeclaration:return!0;default:return!1}}a.isBlockScopedDeclarationStatement=at;function Pt(S){switch(S.parent.kind){case _.SyntaxKind.ForStatement:case _.SyntaxKind.ForInStatement:case _.SyntaxKind.ForOfStatement:case _.SyntaxKind.WhileStatement:case _.SyntaxKind.DoStatement:case _.SyntaxKind.IfStatement:case _.SyntaxKind.WithStatement:case _.SyntaxKind.LabeledStatement:return!0;default:return!1}}a.isInSingleStatementContext=Pt;var qt;(function(S){S[S.None=0]="None",S[S.Function=1]="Function",S[S.Block=2]="Block",S[S.Type=4]="Type",S[S.ConditionalType=8]="ConditionalType"})(qt=a.ScopeBoundary||(a.ScopeBoundary={}));var Zr;(function(S){S[S.Function=1]="Function",S[S.Block=3]="Block",S[S.Type=7]="Type",S[S.InferType=8]="InferType"})(Zr=a.ScopeBoundarySelector||(a.ScopeBoundarySelector={}));function Ri(S){return ua(S)||Ka(S)||la(S)}a.isScopeBoundary=Ri;function la(S){switch(S.kind){case _.SyntaxKind.InterfaceDeclaration:case _.SyntaxKind.TypeAliasDeclaration:case _.SyntaxKind.MappedType:return 4;case _.SyntaxKind.ConditionalType:return 8;default:return 0}}a.isTypeScopeBoundary=la;function ua(S){switch(S.kind){case _.SyntaxKind.FunctionExpression:case _.SyntaxKind.ArrowFunction:case _.SyntaxKind.Constructor:case _.SyntaxKind.ModuleDeclaration:case _.SyntaxKind.ClassDeclaration:case _.SyntaxKind.ClassExpression:case _.SyntaxKind.EnumDeclaration:case _.SyntaxKind.MethodDeclaration:case _.SyntaxKind.FunctionDeclaration:case _.SyntaxKind.GetAccessor:case _.SyntaxKind.SetAccessor:case _.SyntaxKind.MethodSignature:case _.SyntaxKind.CallSignature:case _.SyntaxKind.ConstructSignature:case _.SyntaxKind.ConstructorType:case _.SyntaxKind.FunctionType:return 1;case _.SyntaxKind.SourceFile:return _.isExternalModule(S)?1:0;default:return 0}}a.isFunctionScopeBoundary=ua;function Ka(S){switch(S.kind){case _.SyntaxKind.Block:let H=S.parent;return H.kind!==_.SyntaxKind.CatchClause&&(H.kind===_.SyntaxKind.SourceFile||!ua(H))?2:0;case _.SyntaxKind.ForStatement:case _.SyntaxKind.ForInStatement:case _.SyntaxKind.ForOfStatement:case _.SyntaxKind.CaseBlock:case _.SyntaxKind.CatchClause:case _.SyntaxKind.WithStatement:return 2;default:return 0}}a.isBlockScopeBoundary=Ka;function co(S){switch(S.kind){case _.SyntaxKind.ClassDeclaration:case _.SyntaxKind.ClassExpression:case _.SyntaxKind.FunctionExpression:return!0;case _.SyntaxKind.FunctionDeclaration:return S.body!==void 0;case _.SyntaxKind.MethodDeclaration:case _.SyntaxKind.GetAccessor:case _.SyntaxKind.SetAccessor:return S.parent.kind===_.SyntaxKind.ObjectLiteralExpression;default:return!1}}a.hasOwnThisReference=co;function be(S){switch(S.kind){case _.SyntaxKind.GetAccessor:case _.SyntaxKind.SetAccessor:case _.SyntaxKind.FunctionDeclaration:case _.SyntaxKind.MethodDeclaration:case _.SyntaxKind.Constructor:return S.body!==void 0;case _.SyntaxKind.FunctionExpression:case _.SyntaxKind.ArrowFunction:return!0;default:return!1}}a.isFunctionWithBody=be;function Ke(S,H){let le=arguments.length>2&&arguments[2]!==void 0?arguments[2]:S.getSourceFile(),Be=[];for(;;){if(y(S.kind))H(S);else if(S.kind!==_.SyntaxKind.JSDocComment){let rt=S.getChildren(le);if(rt.length===1){S=rt[0];continue}for(let ut=rt.length-1;ut>=0;--ut)Be.push(rt[ut])}if(Be.length===0)break;S=Be.pop()}}a.forEachToken=Ke;function Et(S,H){let le=arguments.length>2&&arguments[2]!==void 0?arguments[2]:S.getSourceFile(),Be=le.text,rt=_.createScanner(le.languageVersion,!1,le.languageVariant,Be);return Ke(S,ut=>{let Ht=ut.kind===_.SyntaxKind.JsxText||ut.pos===ut.end?ut.pos:ut.getStart(le);if(Ht!==ut.pos){rt.setTextPos(ut.pos);let Fr=rt.scan(),Cr=rt.getTokenPos();for(;Cr2&&arguments[2]!==void 0?arguments[2]:S.getSourceFile(),Be=le.text,rt=le.languageVariant!==_.LanguageVariant.JSX;return Ke(S,Ht=>{if(Ht.pos!==Ht.end&&(Ht.kind!==_.SyntaxKind.JsxText&&_.forEachLeadingCommentRange(Be,Ht.pos===0?(_.getShebang(Be)||"").length:Ht.pos,ut),rt||or(Ht)))return _.forEachTrailingCommentRange(Be,Ht.end,ut)},le);function ut(Ht,Fr,Cr){H(Be,{pos:Ht,end:Fr,kind:Cr})}}a.forEachComment=Ft;function or(S){switch(S.kind){case _.SyntaxKind.CloseBraceToken:return S.parent.kind!==_.SyntaxKind.JsxExpression||!Wr(S.parent.parent);case _.SyntaxKind.GreaterThanToken:switch(S.parent.kind){case _.SyntaxKind.JsxOpeningElement:return S.end!==S.parent.end;case _.SyntaxKind.JsxOpeningFragment:return!1;case _.SyntaxKind.JsxSelfClosingElement:return S.end!==S.parent.end||!Wr(S.parent.parent);case _.SyntaxKind.JsxClosingElement:case _.SyntaxKind.JsxClosingFragment:return!Wr(S.parent.parent.parent)}}return!0}function Wr(S){return S.kind===_.SyntaxKind.JsxElement||S.kind===_.SyntaxKind.JsxFragment}function m_(S){let H=S.getLineStarts(),le=[],Be=H.length,rt=S.text,ut=0;for(let Ht=1;Htut&&_.isLineBreak(rt.charCodeAt(Cr-1));--Cr);le.push({pos:ut,end:Fr,contentLength:Cr-ut}),ut=Fr}return le.push({pos:ut,end:S.end,contentLength:S.end-ut}),le}a.getLineRanges=m_;function Uc(S){let H=S.getLineStarts();return H.length===1||H[1]<2||S.text[H[1]-2]!=="\r"?` +`:`\r +`}a.getLineBreakStyle=Uc;var ji;function lo(S,H){return ji===void 0?ji=_.createScanner(H,!1,void 0,S):(ji.setScriptTarget(H),ji.setText(S)),ji.scan(),ji}function zc(S){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_.ScriptTarget.Latest,le=lo(S,H);return le.isIdentifier()&&le.getTextPos()===S.length&&le.getTokenPos()===0}a.isValidIdentifier=zc;function Qn(S){return S>=65536?2:1}function uo(S){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_.ScriptTarget.Latest;if(S.length===0)return!1;let le=S.codePointAt(0);if(!_.isIdentifierStart(le,H))return!1;for(let Be=Qn(le);Be1&&arguments[1]!==void 0?arguments[1]:_.ScriptTarget.Latest;if(uo(S,H))return!0;let le=lo(S,H);return le.getTextPos()===S.length&&le.getToken()===_.SyntaxKind.NumericLiteral&&le.getTokenValue()===S}a.isValidPropertyName=Wc;function Vc(S){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_.ScriptTarget.Latest,le=lo(S,H);return le.getToken()===_.SyntaxKind.NumericLiteral&&le.getTextPos()===S.length&&le.getTokenPos()===0}a.isValidNumericLiteral=Vc;function Hc(S){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_.ScriptTarget.Latest;if(S.length===0)return!1;let le=!1,Be=S.codePointAt(0);if(!_.isIdentifierStart(Be,H))return!1;for(let rt=Qn(Be);rt2&&arguments[2]!==void 0?arguments[2]:S.getSourceFile();if(y_(S)&&S.kind!==_.SyntaxKind.EndOfFileToken){let Be=Ns(S,le);if(Be.length!==0||!H)return Be}return pa(S,S.getStart(le),le,H)}a.parseJsDocOfNode=Kc;function pa(S,H,le,Be){let rt=_[Be&&h_(le,S.pos,H)?"forEachTrailingCommentRange":"forEachLeadingCommentRange"](le.text,S.pos,(en,Ji,gi)=>gi===_.SyntaxKind.MultiLineCommentTrivia&&le.text[en+2]==="*"?{pos:en}:void 0);if(rt===void 0)return[];let ut=rt.pos,Ht=le.text.slice(ut,H),Fr=_.createSourceFile("jsdoc.ts",`${Ht}var a;`,le.languageVersion),Cr=Ns(Fr.statements[0],Fr);for(let en of Cr)ir(en,S);return Cr;function ir(en,Ji){return en.pos+=ut,en.end+=ut,en.parent=Ji,_.forEachChild(en,gi=>ir(gi,en),gi=>{gi.pos+=ut,gi.end+=ut;for(let ln of gi)ir(ln,en)})}}var Xc;(function(S){S[S.ImportDeclaration=1]="ImportDeclaration",S[S.ImportEquals=2]="ImportEquals",S[S.ExportFrom=4]="ExportFrom",S[S.DynamicImport=8]="DynamicImport",S[S.Require=16]="Require",S[S.ImportType=32]="ImportType",S[S.All=63]="All",S[S.AllImports=59]="AllImports",S[S.AllStaticImports=3]="AllStaticImports",S[S.AllImportExpressions=24]="AllImportExpressions",S[S.AllRequireLike=18]="AllRequireLike",S[S.AllNestedImports=56]="AllNestedImports",S[S.AllTopLevelImports=7]="AllTopLevelImports"})(Xc=a.ImportKind||(a.ImportKind={}));function fo(S,H){let le=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,Be=[];for(let ut of v_(S,H,le))switch(ut.kind){case _.SyntaxKind.ImportDeclaration:rt(ut.moduleSpecifier);break;case _.SyntaxKind.ImportEqualsDeclaration:rt(ut.moduleReference.expression);break;case _.SyntaxKind.ExportDeclaration:rt(ut.moduleSpecifier);break;case _.SyntaxKind.CallExpression:rt(ut.arguments[0]);break;case _.SyntaxKind.ImportType:v.isLiteralTypeNode(ut.argument)&&rt(ut.argument.literal);break;default:throw new Error("unexpected node")}return Be;function rt(ut){v.isTextualLiteral(ut)&&Be.push(ut)}}a.findImports=fo;function v_(S,H){let le=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return new Cn(S,H,le).find()}a.findImportLikeNodes=v_;var Cn=class{constructor(S,H,le){this._sourceFile=S,this._options=H,this._ignoreFileName=le,this._result=[]}find(){return this._sourceFile.isDeclarationFile&&(this._options&=-25),this._options&7&&this._findImports(this._sourceFile.statements),this._options&56&&this._findNestedImports(),this._result}_findImports(S){for(let H of S)v.isImportDeclaration(H)?this._options&1&&this._result.push(H):v.isImportEqualsDeclaration(H)?this._options&2&&H.moduleReference.kind===_.SyntaxKind.ExternalModuleReference&&this._result.push(H):v.isExportDeclaration(H)?H.moduleSpecifier!==void 0&&this._options&4&&this._result.push(H):v.isModuleDeclaration(H)&&this._findImportsInModule(H)}_findImportsInModule(S){if(S.body!==void 0){if(S.body.kind===_.SyntaxKind.ModuleDeclaration)return this._findImportsInModule(S.body);this._findImports(S.body.statements)}}_findNestedImports(){let S=this._ignoreFileName||(this._sourceFile.flags&_.NodeFlags.JavaScriptFile)!==0,H,le;if((this._options&56)===16){if(!S)return;H=/\brequire\s*[1&&this._result.push(rt.parent)}}else rt.kind===_.SyntaxKind.Identifier&&rt.end-7===Be.index&&rt.parent.kind===_.SyntaxKind.CallExpression&&rt.parent.expression===rt&&rt.parent.arguments.length===1&&this._result.push(rt.parent)}}};function Zn(S){for(;S.flags&_.NodeFlags.NestedNamespace;)S=S.parent;return q(S.modifiers,_.SyntaxKind.DeclareKeyword)||Xa(S.parent)}a.isStatementInAmbientContext=Zn;function Xa(S){for(;S.kind===_.SyntaxKind.ModuleBlock;){do S=S.parent;while(S.flags&_.NodeFlags.NestedNamespace);if(q(S.modifiers,_.SyntaxKind.DeclareKeyword))return!0;S=S.parent}return!1}a.isAmbientModuleBlock=Xa;function Yc(S){let H=S.parent;for(;H.kind===_.SyntaxKind.ParenthesizedExpression;)H=H.parent;return v.isCallExpression(H)&&S.end<=H.expression.end?H:void 0}a.getIIFE=Yc;function mo(S,H){return(S.strict?S[H]!==!1:S[H]===!0)&&(H!=="strictPropertyInitialization"||mo(S,"strictNullChecks"))}a.isStrictCompilerOptionEnabled=mo;function ei(S,H){switch(H){case"stripInternal":case"declarationMap":case"emitDeclarationOnly":return S[H]===!0&&ei(S,"declaration");case"declaration":return S.declaration||ei(S,"composite");case"incremental":return S.incremental===void 0?ei(S,"composite"):S.incremental;case"skipDefaultLibCheck":return S.skipDefaultLibCheck||ei(S,"skipLibCheck");case"suppressImplicitAnyIndexErrors":return S.suppressImplicitAnyIndexErrors===!0&&ei(S,"noImplicitAny");case"allowSyntheticDefaultImports":return S.allowSyntheticDefaultImports!==void 0?S.allowSyntheticDefaultImports:ei(S,"esModuleInterop")||S.module===_.ModuleKind.System;case"noUncheckedIndexedAccess":return S.noUncheckedIndexedAccess===!0&&ei(S,"strictNullChecks");case"allowJs":return S.allowJs===void 0?ei(S,"checkJs"):S.allowJs;case"noImplicitAny":case"noImplicitThis":case"strictNullChecks":case"strictFunctionTypes":case"strictPropertyInitialization":case"alwaysStrict":case"strictBindCallApply":return mo(S,H)}return S[H]===!0}a.isCompilerOptionEnabled=ei;function Ya(S){return S.name.kind===_.SyntaxKind.StringLiteral||(S.flags&_.NodeFlags.GlobalAugmentation)!==0}a.isAmbientModule=Ya;function b_(S){return Qa(S)}a.getCheckJsDirective=b_;function Qa(S){let H;return _.forEachLeadingCommentRange(S,(_.getShebang(S)||"").length,(le,Be,rt)=>{if(rt===_.SyntaxKind.SingleLineCommentTrivia){let ut=S.slice(le,Be),Ht=/^\/{2,3}\s*@ts-(no)?check(?:\s|$)/i.exec(ut);Ht!==null&&(H={pos:le,end:Be,enabled:Ht[1]===void 0})}}),H}a.getTsCheckDirective=Qa;function Jr(S){return v.isTypeReferenceNode(S.type)&&S.type.typeName.kind===_.SyntaxKind.Identifier&&S.type.typeName.escapedText==="const"}a.isConstAssertion=Jr;function Qc(S){let H=S;for(;;){let le=H.parent;e:switch(le.kind){case _.SyntaxKind.TypeAssertionExpression:case _.SyntaxKind.AsExpression:return Jr(le);case _.SyntaxKind.PrefixUnaryExpression:if(H.kind!==_.SyntaxKind.NumericLiteral)return!1;switch(le.operator){case _.SyntaxKind.PlusToken:case _.SyntaxKind.MinusToken:H=le;break e;default:return!1}case _.SyntaxKind.PropertyAssignment:if(le.initializer!==H)return!1;H=le.parent;break;case _.SyntaxKind.ShorthandPropertyAssignment:H=le.parent;break;case _.SyntaxKind.ParenthesizedExpression:case _.SyntaxKind.ArrayLiteralExpression:case _.SyntaxKind.ObjectLiteralExpression:case _.SyntaxKind.TemplateExpression:H=le;break;default:return!1}}}a.isInConstContext=Qc;function ho(S,H){if(!T_(S))return!1;let le=H.getTypeAtLocation(S.arguments[2]);if(le.getProperty("value")===void 0)return le.getProperty("set")===void 0;let Be=le.getProperty("writable");if(Be===void 0)return!1;let rt=Be.valueDeclaration!==void 0&&v.isPropertyAssignment(Be.valueDeclaration)?H.getTypeAtLocation(Be.valueDeclaration.initializer):H.getTypeOfSymbolAtLocation(Be,S.arguments[2]);return D.isBooleanLiteralType(rt,!1)}a.isReadonlyAssignmentDeclaration=ho;function T_(S){return S.arguments.length===3&&v.isEntityNameExpression(S.arguments[0])&&v.isNumericOrStringLikeLiteral(S.arguments[1])&&v.isPropertyAccessExpression(S.expression)&&S.expression.name.escapedText==="defineProperty"&&v.isIdentifier(S.expression.expression)&&S.expression.expression.escapedText==="Object"}a.isBindableObjectDefinePropertyCall=T_;function go(S){return _.isPropertyAccessExpression(S)&&_.isIdentifier(S.expression)&&S.expression.escapedText==="Symbol"}a.isWellKnownSymbolLiterally=go;function yo(S){return{displayName:`[Symbol.${S.name.text}]`,symbolName:"__@"+S.name.text}}a.getPropertyNameOfWellKnownSymbol=yo;var Za=(S=>{let[H,le]=S;return H<"4"||H==="4"&&le<"3"})(_.versionMajorMinor.split("."));function vo(S,H){let le={known:!0,names:[]};if(S=Os(S),Za&&go(S))le.names.push(yo(S));else{let Be=H.getTypeAtLocation(S);for(let rt of D.unionTypeParts(H.getBaseConstraintOfType(Be)||Be)){let ut=D.getPropertyNameFromType(rt);ut?le.names.push(ut):le.known=!1}}return le}a.getLateBoundPropertyNames=vo;function S_(S,H){let le=Ze(S);return le!==void 0?{known:!0,names:[{displayName:le,symbolName:_.escapeLeadingUnderscores(le)}]}:S.kind===_.SyntaxKind.PrivateIdentifier?{known:!0,names:[{displayName:S.text,symbolName:H.getSymbolAtLocation(S).escapedName}]}:vo(S.expression,H)}a.getLateBoundPropertyNamesOfPropertyName=S_;function Zc(S,H){let le=Ze(S);if(le!==void 0)return{displayName:le,symbolName:_.escapeLeadingUnderscores(le)};if(S.kind===_.SyntaxKind.PrivateIdentifier)return{displayName:S.text,symbolName:H.getSymbolAtLocation(S).escapedName};let{expression:Be}=S;return Za&&go(Be)?yo(Be):D.getPropertyNameFromType(H.getTypeAtLocation(Be))}a.getSingleLateBoundPropertyNameOfPropertyName=Zc;function Os(S){for(;S.kind===_.SyntaxKind.ParenthesizedExpression;)S=S.expression;return S}a.unwrapParentheses=Os;function bo(S){return`${S.negative?"-":""}${S.base10Value}n`}a.formatPseudoBigInt=bo;function el(S,H){let le=S.caseBlock.clauses.filter(v.isCaseClause);if(le.length===0)return!1;let Be=D.unionTypeParts(H.getTypeAtLocation(S.expression));if(Be.length>le.length)return!1;let rt=new Set(Be.map(x_));if(rt.has(void 0))return!1;let ut=new Set;for(let Ht of le){let Fr=H.getTypeAtLocation(Ht.expression);if(a.isTypeFlagSet(Fr,_.TypeFlags.Never))continue;let Cr=x_(Fr);if(rt.has(Cr))ut.add(Cr);else if(Cr!=="null"&&Cr!=="undefined")return!1}return rt.size===ut.size}a.hasExhaustiveCaseClauses=el;function x_(S){if(a.isTypeFlagSet(S,_.TypeFlags.Null))return"null";if(a.isTypeFlagSet(S,_.TypeFlags.Undefined))return"undefined";if(a.isTypeFlagSet(S,_.TypeFlags.NumberLiteral))return`${a.isTypeFlagSet(S,_.TypeFlags.EnumLiteral)?"enum:":""}${S.value}`;if(a.isTypeFlagSet(S,_.TypeFlags.StringLiteral))return`${a.isTypeFlagSet(S,_.TypeFlags.EnumLiteral)?"enum:":""}string:${S.value}`;if(a.isTypeFlagSet(S,_.TypeFlags.BigIntLiteral))return bo(S.value);if(h.isUniqueESSymbolType(S))return S.escapedName;if(D.isBooleanLiteralType(S,!0))return"true";if(D.isBooleanLiteralType(S,!1))return"false"}function E_(S){var H;if(((H=S.heritageClauses)===null||H===void 0?void 0:H[0].token)===_.SyntaxKind.ExtendsKeyword)return S.heritageClauses[0].types[0]}a.getBaseOfClassLikeExpression=E_}}),RV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(d,E,I,c){c===void 0&&(c=I);var M=Object.getOwnPropertyDescriptor(E,I);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[I]}}),Object.defineProperty(d,c,M)}:function(d,E,I,c){c===void 0&&(c=I),d[c]=E[I]}),v=a&&a.__setModuleDefault||(Object.create?function(d,E){Object.defineProperty(d,"default",{enumerable:!0,value:E})}:function(d,E){d.default=E}),h=a&&a.__importStar||function(d){if(d&&d.__esModule)return d;var E={};if(d!=null)for(var I in d)I!=="default"&&Object.prototype.hasOwnProperty.call(d,I)&&_(E,d,I);return v(E,d),E};Object.defineProperty(a,"__esModule",{value:!0}),a.convertComments=void 0;var D=Q9(),P=h(vr()),y=E1(),m=x1();function C(d,E){let I=[];return(0,D.forEachComment)(d,(c,M)=>{let q=M.kind===P.SyntaxKind.SingleLineCommentTrivia?m.AST_TOKEN_TYPES.Line:m.AST_TOKEN_TYPES.Block,W=[M.pos,M.end],K=(0,y.getLocFor)(W[0],W[1],d),ce=W[0]+2,Ie=M.kind===P.SyntaxKind.SingleLineCommentTrivia?W[1]-ce:W[1]-ce-2;I.push({type:q,value:E.slice(ce,ce+Ie),range:W,loc:K})},d),I}a.convertComments=C}}),Z9=Oe({"node_modules/eslint-visitor-keys/dist/eslint-visitor-keys.cjs"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0});var _={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExportAllDeclaration:["exported","source"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source"],ExportSpecifier:["exported","local"],ExpressionStatement:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportExpression:["source"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","attributes"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXClosingFragment:[],JSXOpeningFragment:[],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],PropertyDefinition:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],StaticBlock:["body"],Super:[],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],YieldExpression:["argument"]},v=Object.keys(_);for(let m of v)Object.freeze(_[m]);Object.freeze(_);var h=new Set(["parent","leadingComments","trailingComments"]);function D(m){return!h.has(m)&&m[0]!=="_"}function P(m){return Object.keys(m).filter(D)}function y(m){let C=Object.assign({},_);for(let d of Object.keys(m))if(Object.prototype.hasOwnProperty.call(C,d)){let E=new Set(m[d]);for(let I of C[d])E.add(I);C[d]=Object.freeze(Array.from(E))}else C[d]=Object.freeze(Array.from(m[d]));return Object.freeze(C)}a.KEYS=_,a.getKeys=P,a.unionWith=y}}),jV=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/visitor-keys/dist/get-keys.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.getKeys=void 0;var _=Z9(),v=_.getKeys;a.getKeys=v}}),JV=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/visitor-keys/dist/visitor-keys.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(C,d,E,I){I===void 0&&(I=E);var c=Object.getOwnPropertyDescriptor(d,E);(!c||("get"in c?!d.__esModule:c.writable||c.configurable))&&(c={enumerable:!0,get:function(){return d[E]}}),Object.defineProperty(C,I,c)}:function(C,d,E,I){I===void 0&&(I=E),C[I]=d[E]}),v=a&&a.__setModuleDefault||(Object.create?function(C,d){Object.defineProperty(C,"default",{enumerable:!0,value:d})}:function(C,d){C.default=d}),h=a&&a.__importStar||function(C){if(C&&C.__esModule)return C;var d={};if(C!=null)for(var E in C)E!=="default"&&Object.prototype.hasOwnProperty.call(C,E)&&_(d,C,E);return v(d,C),d};Object.defineProperty(a,"__esModule",{value:!0}),a.visitorKeys=void 0;var D=h(Z9()),P=(()=>{let C=["typeParameters","params","returnType"],d=[...C,"body"],E=["decorators","key","typeAnnotation"];return{AnonymousFunction:d,Function:["id",...d],FunctionType:C,ClassDeclaration:["decorators","id","typeParameters","superClass","superTypeParameters","implements","body"],AbstractPropertyDefinition:["decorators","key","typeAnnotation"],PropertyDefinition:[...E,"value"],TypeAssertion:["expression","typeAnnotation"]}})(),y={AccessorProperty:P.PropertyDefinition,ArrayPattern:["decorators","elements","typeAnnotation"],ArrowFunctionExpression:P.AnonymousFunction,AssignmentPattern:["decorators","left","right","typeAnnotation"],CallExpression:["callee","typeParameters","arguments"],ClassDeclaration:P.ClassDeclaration,ClassExpression:P.ClassDeclaration,Decorator:["expression"],ExportAllDeclaration:["exported","source","assertions"],ExportNamedDeclaration:["declaration","specifiers","source","assertions"],FunctionDeclaration:P.Function,FunctionExpression:P.Function,Identifier:["decorators","typeAnnotation"],ImportAttribute:["key","value"],ImportDeclaration:["specifiers","source","assertions"],ImportExpression:["source","attributes"],JSXClosingFragment:[],JSXOpeningElement:["name","typeParameters","attributes"],JSXOpeningFragment:[],JSXSpreadChild:["expression"],MethodDefinition:["decorators","key","value","typeParameters"],NewExpression:["callee","typeParameters","arguments"],ObjectPattern:["decorators","properties","typeAnnotation"],PropertyDefinition:P.PropertyDefinition,RestElement:["decorators","argument","typeAnnotation"],StaticBlock:["body"],TaggedTemplateExpression:["tag","typeParameters","quasi"],TSAbstractAccessorProperty:P.AbstractPropertyDefinition,TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:P.AbstractPropertyDefinition,TSAnyKeyword:[],TSArrayType:["elementType"],TSAsExpression:P.TypeAssertion,TSAsyncKeyword:[],TSBigIntKeyword:[],TSBooleanKeyword:[],TSCallSignatureDeclaration:P.FunctionType,TSClassImplements:["expression","typeParameters"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSConstructorType:P.FunctionType,TSConstructSignatureDeclaration:P.FunctionType,TSDeclareFunction:P.Function,TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id",...P.FunctionType],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSExportAssignment:["expression"],TSExportKeyword:[],TSExternalModuleReference:["expression"],TSFunctionType:P.FunctionType,TSImportEqualsDeclaration:["id","moduleReference"],TSImportType:["parameter","qualifier","typeParameters"],TSIndexedAccessType:["indexType","objectType"],TSIndexSignature:["parameters","typeAnnotation"],TSInferType:["typeParameter"],TSInstantiationExpression:["expression","typeParameters"],TSInterfaceBody:["body"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceHeritage:["expression","typeParameters"],TSIntersectionType:["types"],TSIntrinsicKeyword:[],TSLiteralType:["literal"],TSMappedType:["nameType","typeParameter","typeAnnotation"],TSMethodSignature:["typeParameters","key","params","returnType"],TSModuleBlock:["body"],TSModuleDeclaration:["id","body"],TSNamedTupleMember:["label","elementType"],TSNamespaceExportDeclaration:["id"],TSNeverKeyword:[],TSNonNullExpression:["expression"],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSOptionalType:["typeAnnotation"],TSParameterProperty:["decorators","parameter"],TSPrivateKeyword:[],TSPropertySignature:["typeAnnotation","key","initializer"],TSProtectedKeyword:[],TSPublicKeyword:[],TSQualifiedName:["left","right"],TSReadonlyKeyword:[],TSRestType:["typeAnnotation"],TSSatisfiesExpression:["typeAnnotation","expression"],TSStaticKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSTemplateLiteralType:["quasis","types"],TSThisType:[],TSTupleType:["elementTypes"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSTypeAnnotation:["typeAnnotation"],TSTypeAssertion:P.TypeAssertion,TSTypeLiteral:["members"],TSTypeOperator:["typeAnnotation"],TSTypeParameter:["name","constraint","default"],TSTypeParameterDeclaration:["params"],TSTypeParameterInstantiation:["params"],TSTypePredicate:["typeAnnotation","parameterName"],TSTypeQuery:["exprName","typeParameters"],TSTypeReference:["typeName","typeParameters"],TSUndefinedKeyword:[],TSUnionType:["types"],TSUnknownKeyword:[],TSVoidKeyword:[]},m=D.unionWith(y);a.visitorKeys=m}}),e5=Oe({"node_modules/@typescript-eslint/typescript-estree/node_modules/@typescript-eslint/visitor-keys/dist/index.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.visitorKeys=a.getKeys=void 0;var _=jV();Object.defineProperty(a,"getKeys",{enumerable:!0,get:function(){return _.getKeys}});var v=JV();Object.defineProperty(a,"visitorKeys",{enumerable:!0,get:function(){return v.visitorKeys}})}}),t5=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.simpleTraverse=void 0;var _=e5();function v(y){return y!=null&&typeof y=="object"&&typeof y.type=="string"}function h(y,m){let C=y[m.type];return C!=null?C:[]}var D=class{constructor(y){let m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.allVisitorKeys=_.visitorKeys,this.selectors=y,this.setParentPointers=m}traverse(y,m){if(!v(y))return;this.setParentPointers&&(y.parent=m),"enter"in this.selectors?this.selectors.enter(y,m):y.type in this.selectors&&this.selectors[y.type](y,m);let C=h(this.allVisitorKeys,y);if(!(C.length<1))for(let d of C){let E=y[d];if(Array.isArray(E))for(let I of E)this.traverse(I,y);else this.traverse(E,y)}}};function P(y,m){let C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;new D(m,C).traverse(y,void 0)}a.simpleTraverse=P}}),FV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.astConverter=void 0;var _=G9(),v=RV(),h=E1(),D=t5();function P(y,m,C){let{parseDiagnostics:d}=y;if(d.length)throw(0,_.convertError)(d[0]);let E=new _.Converter(y,{errorOnUnknownASTType:m.errorOnUnknownASTType||!1,shouldPreserveNodeMaps:C}),I=E.convertProgram();(!m.range||!m.loc)&&(0,D.simpleTraverse)(I,{enter:M=>{m.range||delete M.range,m.loc||delete M.loc}}),m.tokens&&(I.tokens=(0,h.convertTokens)(y)),m.comment&&(I.comments=(0,v.convertComments)(y,m.code));let c=E.getASTMaps();return{estree:I,astMaps:c}}a.astConverter=P}}),r5={};m1(r5,{basename:()=>o5,default:()=>c5,delimiter:()=>nT,dirname:()=>s5,extname:()=>_5,isAbsolute:()=>mT,join:()=>i5,normalize:()=>dT,relative:()=>a5,resolve:()=>d1,sep:()=>rT});function n5(a,_){for(var v=0,h=a.length-1;h>=0;h--){var D=a[h];D==="."?a.splice(h,1):D===".."?(a.splice(h,1),v++):v&&(a.splice(h,1),v--)}if(_)for(;v--;v)a.unshift("..");return a}function d1(){for(var a="",_=!1,v=arguments.length-1;v>=-1&&!_;v--){var h=v>=0?arguments[v]:"/";if(typeof h!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!h)continue;a=h+"/"+a,_=h.charAt(0)==="/"}return a=n5(hT(a.split("/"),function(D){return!!D}),!_).join("/"),(_?"/":"")+a||"."}function dT(a){var _=mT(a),v=l5(a,-1)==="/";return a=n5(hT(a.split("/"),function(h){return!!h}),!_).join("/"),!a&&!_&&(a="."),a&&v&&(a+="/"),(_?"/":"")+a}function mT(a){return a.charAt(0)==="/"}function i5(){var a=Array.prototype.slice.call(arguments,0);return dT(hT(a,function(_,v){if(typeof _!="string")throw new TypeError("Arguments to path.join must be strings");return _}).join("/"))}function a5(a,_){a=d1(a).substr(1),_=d1(_).substr(1);function v(d){for(var E=0;E=0&&d[I]==="";I--);return E>I?[]:d.slice(E,I-E+1)}for(var h=v(a.split("/")),D=v(_.split("/")),P=Math.min(h.length,D.length),y=P,m=0;mAe:Ae=>Ae.toLowerCase();function c(Ae){let te=P.default.normalize(Ae);return te.endsWith(P.default.sep)&&(te=te.slice(0,-1)),I(te)}a.getCanonicalFileName=c;function M(Ae,te){return P.default.isAbsolute(Ae)?Ae:P.default.join(te||"/prettier-security-dirname-placeholder",Ae)}a.ensureAbsolutePath=M;function q(Ae){return P.default.dirname(Ae)}a.canonicalDirname=q;var W=[y.Extension.Dts,y.Extension.Dcts,y.Extension.Dmts];function K(Ae){var te;return Ae?(te=W.find(he=>Ae.endsWith(he)))!==null&&te!==void 0?te:P.default.extname(Ae):null}function ce(Ae,te){let he=Ae.getSourceFile(te.filePath),Pe=K(te.filePath),R=K(he==null?void 0:he.fileName);if(Pe===R)return he&&{ast:he,program:Ae}}a.getAstFromProgram=ce;function Ie(Ae){let te;try{throw new Error("Dynamic require is not supported")}catch{let Pe=["Could not find the provided parserOptions.moduleResolver.","Hint: use an absolute path if you are not in control over where the ESLint instance runs."];throw new Error(Pe.join(` +`))}return te}a.getModuleResolver=Ie;function me(Ae){var te;return!((te=y.sys)===null||te===void 0)&&te.createHash?y.sys.createHash(Ae):Ae}a.createHash=me}}),qV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/createDefaultProgram.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(I,c,M,q){q===void 0&&(q=M);var W=Object.getOwnPropertyDescriptor(c,M);(!W||("get"in W?!c.__esModule:W.writable||W.configurable))&&(W={enumerable:!0,get:function(){return c[M]}}),Object.defineProperty(I,q,W)}:function(I,c,M,q){q===void 0&&(q=M),I[q]=c[M]}),v=a&&a.__setModuleDefault||(Object.create?function(I,c){Object.defineProperty(I,"default",{enumerable:!0,value:c})}:function(I,c){I.default=c}),h=a&&a.__importStar||function(I){if(I&&I.__esModule)return I;var c={};if(I!=null)for(var M in I)M!=="default"&&Object.prototype.hasOwnProperty.call(I,M)&&_(c,I,M);return v(c,I),c},D=a&&a.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(a,"__esModule",{value:!0}),a.createDefaultProgram=void 0;var P=D(Ga()),y=D(_o()),m=h(vr()),C=d_(),d=(0,P.default)("typescript-eslint:typescript-estree:createDefaultProgram");function E(I){var c;if(d("Getting default program for: %s",I.filePath||"unnamed file"),((c=I.projects)===null||c===void 0?void 0:c.length)!==1)return;let M=I.projects[0],q=m.getParsedCommandLineOfConfigFile(M,(0,C.createDefaultCompilerOptionsFromExtra)(I),Object.assign(Object.assign({},m.sys),{onUnRecoverableConfigFileDiagnostic:()=>{}}));if(!q)return;let W=m.createCompilerHost(q.options,!0);I.moduleResolver&&(W.resolveModuleNames=(0,C.getModuleResolver)(I.moduleResolver).resolveModuleNames);let K=W.readFile;W.readFile=me=>y.default.normalize(me)===y.default.normalize(I.filePath)?I.code:K(me);let ce=m.createProgram([I.filePath],q.options,W),Ie=ce.getSourceFile(I.filePath);return Ie&&{ast:Ie,program:ce}}a.createDefaultProgram=E}}),gT=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/getScriptKind.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(d,E,I,c){c===void 0&&(c=I);var M=Object.getOwnPropertyDescriptor(E,I);(!M||("get"in M?!E.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return E[I]}}),Object.defineProperty(d,c,M)}:function(d,E,I,c){c===void 0&&(c=I),d[c]=E[I]}),v=a&&a.__setModuleDefault||(Object.create?function(d,E){Object.defineProperty(d,"default",{enumerable:!0,value:E})}:function(d,E){d.default=E}),h=a&&a.__importStar||function(d){if(d&&d.__esModule)return d;var E={};if(d!=null)for(var I in d)I!=="default"&&Object.prototype.hasOwnProperty.call(d,I)&&_(E,d,I);return v(E,d),E},D=a&&a.__importDefault||function(d){return d&&d.__esModule?d:{default:d}};Object.defineProperty(a,"__esModule",{value:!0}),a.getLanguageVariant=a.getScriptKind=void 0;var P=D(_o()),y=h(vr());function m(d,E){switch(P.default.extname(d).toLowerCase()){case y.Extension.Js:case y.Extension.Cjs:case y.Extension.Mjs:return y.ScriptKind.JS;case y.Extension.Jsx:return y.ScriptKind.JSX;case y.Extension.Ts:case y.Extension.Cts:case y.Extension.Mts:return y.ScriptKind.TS;case y.Extension.Tsx:return y.ScriptKind.TSX;case y.Extension.Json:return y.ScriptKind.JSON;default:return E?y.ScriptKind.TSX:y.ScriptKind.TS}}a.getScriptKind=m;function C(d){switch(d){case y.ScriptKind.TSX:case y.ScriptKind.JSX:case y.ScriptKind.JS:case y.ScriptKind.JSON:return y.LanguageVariant.JSX;default:return y.LanguageVariant.Standard}}a.getLanguageVariant=C}}),UV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(I,c,M,q){q===void 0&&(q=M);var W=Object.getOwnPropertyDescriptor(c,M);(!W||("get"in W?!c.__esModule:W.writable||W.configurable))&&(W={enumerable:!0,get:function(){return c[M]}}),Object.defineProperty(I,q,W)}:function(I,c,M,q){q===void 0&&(q=M),I[q]=c[M]}),v=a&&a.__setModuleDefault||(Object.create?function(I,c){Object.defineProperty(I,"default",{enumerable:!0,value:c})}:function(I,c){I.default=c}),h=a&&a.__importStar||function(I){if(I&&I.__esModule)return I;var c={};if(I!=null)for(var M in I)M!=="default"&&Object.prototype.hasOwnProperty.call(I,M)&&_(c,I,M);return v(c,I),c},D=a&&a.__importDefault||function(I){return I&&I.__esModule?I:{default:I}};Object.defineProperty(a,"__esModule",{value:!0}),a.createIsolatedProgram=void 0;var P=D(Ga()),y=h(vr()),m=gT(),C=d_(),d=(0,P.default)("typescript-eslint:typescript-estree:createIsolatedProgram");function E(I){d("Getting isolated program in %s mode for: %s",I.jsx?"TSX":"TS",I.filePath);let c={fileExists(){return!0},getCanonicalFileName(){return I.filePath},getCurrentDirectory(){return""},getDirectories(){return[]},getDefaultLibFileName(){return"lib.d.ts"},getNewLine(){return` +`},getSourceFile(W){return y.createSourceFile(W,I.code,y.ScriptTarget.Latest,!0,(0,m.getScriptKind)(I.filePath,I.jsx))},readFile(){},useCaseSensitiveFileNames(){return!0},writeFile(){return null}},M=y.createProgram([I.filePath],Object.assign({noResolve:!0,target:y.ScriptTarget.Latest,jsx:I.jsx?y.JsxEmit.Preserve:void 0},(0,C.createDefaultCompilerOptionsFromExtra)(I)),c),q=M.getSourceFile(I.filePath);if(!q)throw new Error("Expected an ast to be returned for the single-file isolated program.");return{ast:q,program:M}}a.createIsolatedProgram=E}}),zV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/describeFilePath.js"(a){"use strict";De();var _=a&&a.__importDefault||function(D){return D&&D.__esModule?D:{default:D}};Object.defineProperty(a,"__esModule",{value:!0}),a.describeFilePath=void 0;var v=_(_o());function h(D,P){let y=v.default.relative(P,D);return y&&!y.startsWith("..")&&!v.default.isAbsolute(y)?`/${y}`:/^[(\w+:)\\/~]/.test(D)||/\.\.[/\\]\.\./.test(y)?D:`/${y}`}a.describeFilePath=h}}),u5={};m1(u5,{default:()=>p5});var p5,WV=yp({"node-modules-polyfills:fs"(){De(),p5={}}}),yT=Oe({"node-modules-polyfills-commonjs:fs"(a,_){De();var v=(WV(),Li(u5));if(v&&v.default){_.exports=v.default;for(let h in v)_.exports[h]=v[h]}else v&&(_.exports=v)}}),f5=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(Je,Xe,ee,je){je===void 0&&(je=ee);var nt=Object.getOwnPropertyDescriptor(Xe,ee);(!nt||("get"in nt?!Xe.__esModule:nt.writable||nt.configurable))&&(nt={enumerable:!0,get:function(){return Xe[ee]}}),Object.defineProperty(Je,je,nt)}:function(Je,Xe,ee,je){je===void 0&&(je=ee),Je[je]=Xe[ee]}),v=a&&a.__setModuleDefault||(Object.create?function(Je,Xe){Object.defineProperty(Je,"default",{enumerable:!0,value:Xe})}:function(Je,Xe){Je.default=Xe}),h=a&&a.__importStar||function(Je){if(Je&&Je.__esModule)return Je;var Xe={};if(Je!=null)for(var ee in Je)ee!=="default"&&Object.prototype.hasOwnProperty.call(Je,ee)&&_(Xe,Je,ee);return v(Xe,Je),Xe},D=a&&a.__importDefault||function(Je){return Je&&Je.__esModule?Je:{default:Je}};Object.defineProperty(a,"__esModule",{value:!0}),a.getWatchProgramsForProjects=a.clearWatchCaches=void 0;var P=D(Ga()),y=D(yT()),m=D(pT()),C=h(vr()),d=d_(),E=(0,P.default)("typescript-eslint:typescript-estree:createWatchProgram"),I=new Map,c=new Map,M=new Map,q=new Map,W=new Map,K=new Map;function ce(){I.clear(),c.clear(),M.clear(),K.clear(),q.clear(),W.clear()}a.clearWatchCaches=ce;function Ie(Je){return(Xe,ee)=>{let je=(0,d.getCanonicalFileName)(Xe),nt=(()=>{let Ze=Je.get(je);return Ze||(Ze=new Set,Je.set(je,Ze)),Ze})();return nt.add(ee),{close:()=>{nt.delete(ee)}}}}var me={code:"",filePath:""};function Ae(Je){throw new Error(C.flattenDiagnosticMessageText(Je.messageText,C.sys.newLine))}function te(Je,Xe,ee){let je=ee.EXPERIMENTAL_useSourceOfProjectReferenceRedirect?new Set(Xe.getSourceFiles().map(nt=>(0,d.getCanonicalFileName)(nt.fileName))):new Set(Xe.getRootFileNames().map(nt=>(0,d.getCanonicalFileName)(nt)));return q.set(Je,je),je}function he(Je){let Xe=(0,d.getCanonicalFileName)(Je.filePath),ee=[];me.code=Je.code,me.filePath=Xe;let je=c.get(Xe),nt=(0,d.createHash)(Je.code);K.get(Xe)!==nt&&je&&je.size>0&&je.forEach(st=>st(Xe,C.FileWatcherEventKind.Changed));let Ze=new Set(Je.projects);for(let[st,tt]of I.entries()){if(!Ze.has(st))continue;let ct=q.get(st),ne=null;if(ct||(ne=tt.getProgram().getProgram(),ct=te(st,ne,Je)),ct.has(Xe))return E("Found existing program for file. %s",Xe),ne=ne!=null?ne:tt.getProgram().getProgram(),ne.getTypeChecker(),[ne]}E("File did not belong to any existing programs, moving to create/update. %s",Xe);for(let st of Je.projects){let tt=I.get(st);if(tt){let Fe=ke(tt,Xe,st);if(!Fe)continue;if(Fe.getTypeChecker(),te(st,Fe,Je).has(Xe))return E("Found updated program for file. %s",Xe),[Fe];ee.push(Fe);continue}let ct=R(st,Je);I.set(st,ct);let ne=ct.getProgram().getProgram();if(ne.getTypeChecker(),te(st,ne,Je).has(Xe))return E("Found program for file. %s",Xe),[ne];ee.push(ne)}return ee}a.getWatchProgramsForProjects=he;var Pe=m.default.satisfies(C.version,">=3.9.0-beta",{includePrerelease:!0});function R(Je,Xe){E("Creating watch program for %s.",Je);let ee=C.createWatchCompilerHost(Je,(0,d.createDefaultCompilerOptionsFromExtra)(Xe),C.sys,C.createAbstractBuilder,Ae,()=>{});Xe.moduleResolver&&(ee.resolveModuleNames=(0,d.getModuleResolver)(Xe.moduleResolver).resolveModuleNames);let je=ee.readFile;ee.readFile=(tt,ct)=>{let ne=(0,d.getCanonicalFileName)(tt),ge=ne===me.filePath?me.code:je(ne,ct);return ge!==void 0&&K.set(ne,(0,d.createHash)(ge)),ge},ee.onUnRecoverableConfigFileDiagnostic=Ae,ee.afterProgramCreate=tt=>{let ct=tt.getConfigFileParsingDiagnostics().filter(ne=>ne.category===C.DiagnosticCategory.Error&&ne.code!==18003);ct.length>0&&Ae(ct[0])},ee.watchFile=Ie(c),ee.watchDirectory=Ie(M);let nt=ee.onCachedDirectoryStructureHostCreate;ee.onCachedDirectoryStructureHostCreate=tt=>{let ct=tt.readDirectory;tt.readDirectory=(ne,ge,Fe,at,Pt)=>ct(ne,ge?ge.concat(Xe.extraFileExtensions):void 0,Fe,at,Pt),nt(tt)},ee.extraFileExtensions=Xe.extraFileExtensions.map(tt=>({extension:tt,isMixedContent:!0,scriptKind:C.ScriptKind.Deferred})),ee.trace=E,ee.useSourceOfProjectReferenceRedirect=()=>Xe.EXPERIMENTAL_useSourceOfProjectReferenceRedirect;let Ze;Pe?(ee.setTimeout=void 0,ee.clearTimeout=void 0):(E("Running without timeout fix"),ee.setTimeout=function(tt,ct){for(var ne=arguments.length,ge=new Array(ne>2?ne-2:0),Fe=2;Fe{Ze=void 0});let st=C.createWatchProgram(ee);if(!Pe){let tt=st.getProgram;st.getProgram=()=>(Ze&&Ze(),Ze=void 0,tt.call(st))}return st}function pe(Je){let ee=y.default.statSync(Je).mtimeMs,je=W.get(Je);return W.set(Je,ee),je===void 0?!1:Math.abs(je-ee)>Number.EPSILON}function ke(Je,Xe,ee){let je=Je.getProgram().getProgram();if(cn.env.TSESTREE_NO_INVALIDATION==="true")return je;pe(ee)&&(E("tsconfig has changed - triggering program update. %s",ee),c.get(ee).forEach(at=>at(ee,C.FileWatcherEventKind.Changed)),q.delete(ee));let nt=je.getSourceFile(Xe);if(nt)return je;E("File was not found in program - triggering folder update. %s",Xe);let Ze=(0,d.canonicalDirname)(Xe),st=null,tt=Ze,ct=!1;for(;st!==tt;){st=tt;let at=M.get(st);at&&(at.forEach(Pt=>{Ze!==st&&Pt(Ze,C.FileWatcherEventKind.Changed),Pt(st,C.FileWatcherEventKind.Changed)}),ct=!0),tt=(0,d.canonicalDirname)(st)}if(!ct)return E("No callback found for file, not part of this program. %s",Xe),null;if(q.delete(ee),je=Je.getProgram().getProgram(),nt=je.getSourceFile(Xe),nt)return je;E("File was still not found in program after directory update - checking file deletions. %s",Xe);let ge=je.getRootFileNames().find(at=>!y.default.existsSync(at));if(!ge)return null;let Fe=c.get((0,d.getCanonicalFileName)(ge));return Fe?(E("Marking file as deleted. %s",ge),Fe.forEach(at=>at(ge,C.FileWatcherEventKind.Deleted)),q.delete(ee),je=Je.getProgram().getProgram(),nt=je.getSourceFile(Xe),nt?je:(E("File was still not found in program after deletion check, assuming it is not part of this program. %s",Xe),null)):(E("Could not find watch callbacks for root file. %s",ge),je)}}}),VV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(W,K,ce,Ie){Ie===void 0&&(Ie=ce);var me=Object.getOwnPropertyDescriptor(K,ce);(!me||("get"in me?!K.__esModule:me.writable||me.configurable))&&(me={enumerable:!0,get:function(){return K[ce]}}),Object.defineProperty(W,Ie,me)}:function(W,K,ce,Ie){Ie===void 0&&(Ie=ce),W[Ie]=K[ce]}),v=a&&a.__setModuleDefault||(Object.create?function(W,K){Object.defineProperty(W,"default",{enumerable:!0,value:K})}:function(W,K){W.default=K}),h=a&&a.__importStar||function(W){if(W&&W.__esModule)return W;var K={};if(W!=null)for(var ce in W)ce!=="default"&&Object.prototype.hasOwnProperty.call(W,ce)&&_(K,W,ce);return v(K,W),K},D=a&&a.__importDefault||function(W){return W&&W.__esModule?W:{default:W}};Object.defineProperty(a,"__esModule",{value:!0}),a.createProjectProgram=void 0;var P=D(Ga()),y=D(_o()),m=h(vr()),C=E1(),d=zV(),E=f5(),I=d_(),c=(0,P.default)("typescript-eslint:typescript-estree:createProjectProgram"),M=[m.Extension.Ts,m.Extension.Tsx,m.Extension.Js,m.Extension.Jsx,m.Extension.Mjs,m.Extension.Mts,m.Extension.Cjs,m.Extension.Cts];function q(W){c("Creating project program for: %s",W.filePath);let K=(0,E.getWatchProgramsForProjects)(W),ce=(0,C.firstDefined)(K,ke=>(0,I.getAstFromProgram)(ke,W));if(ce||W.createDefaultProgram)return ce;let Ie=ke=>(0,d.describeFilePath)(ke,W.tsconfigRootDir),me=(0,d.describeFilePath)(W.filePath,W.tsconfigRootDir),Ae=W.projects.map(Ie),te=Ae.length===1?Ae[0]:` +${Ae.map(ke=>`- ${ke}`).join(` +`)}`,he=[`ESLint was configured to run on \`${me}\` using \`parserOptions.project\`: ${te}`],Pe=!1,R=W.extraFileExtensions||[];R.forEach(ke=>{ke.startsWith(".")||he.push(`Found unexpected extension \`${ke}\` specified with the \`parserOptions.extraFileExtensions\` option. Did you mean \`.${ke}\`?`),M.includes(ke)&&he.push(`You unnecessarily included the extension \`${ke}\` with the \`parserOptions.extraFileExtensions\` option. This extension is already handled by the parser by default.`)});let pe=y.default.extname(W.filePath);if(!M.includes(pe)){let ke=`The extension for the file (\`${pe}\`) is non-standard`;R.length>0?R.includes(pe)||(he.push(`${ke}. It should be added to your existing \`parserOptions.extraFileExtensions\`.`),Pe=!0):(he.push(`${ke}. You should add \`parserOptions.extraFileExtensions\` to your config.`),Pe=!0)}if(!Pe){let[ke,Je]=W.projects.length===1?["that TSConfig does not","that TSConfig"]:["none of those TSConfigs","one of those TSConfigs"];he.push(`However, ${ke} include this file. Either:`,"- Change ESLint's list of included files to not include this file",`- Change ${Je} to include this file`,"- Create a new TSConfig that includes this file and include it in your parserOptions.project","See the typescript-eslint docs for more info: https://typescript-eslint.io/linting/troubleshooting#i-get-errors-telling-me-eslint-was-configured-to-run--however-that-tsconfig-does-not--none-of-those-tsconfigs-include-this-file")}throw new Error(he.join(` +`))}a.createProjectProgram=q}}),HV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(E,I,c,M){M===void 0&&(M=c);var q=Object.getOwnPropertyDescriptor(I,c);(!q||("get"in q?!I.__esModule:q.writable||q.configurable))&&(q={enumerable:!0,get:function(){return I[c]}}),Object.defineProperty(E,M,q)}:function(E,I,c,M){M===void 0&&(M=c),E[M]=I[c]}),v=a&&a.__setModuleDefault||(Object.create?function(E,I){Object.defineProperty(E,"default",{enumerable:!0,value:I})}:function(E,I){E.default=I}),h=a&&a.__importStar||function(E){if(E&&E.__esModule)return E;var I={};if(E!=null)for(var c in E)c!=="default"&&Object.prototype.hasOwnProperty.call(E,c)&&_(I,E,c);return v(I,E),I},D=a&&a.__importDefault||function(E){return E&&E.__esModule?E:{default:E}};Object.defineProperty(a,"__esModule",{value:!0}),a.createSourceFile=void 0;var P=D(Ga()),y=h(vr()),m=gT(),C=(0,P.default)("typescript-eslint:typescript-estree:createSourceFile");function d(E){return C("Getting AST without type information in %s mode for: %s",E.jsx?"TSX":"TS",E.filePath),y.createSourceFile(E.filePath,E.code,y.ScriptTarget.Latest,!0,(0,m.getScriptKind)(E.filePath,E.jsx))}a.createSourceFile=d}}),d5=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/create-program/useProvidedPrograms.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(q,W,K,ce){ce===void 0&&(ce=K);var Ie=Object.getOwnPropertyDescriptor(W,K);(!Ie||("get"in Ie?!W.__esModule:Ie.writable||Ie.configurable))&&(Ie={enumerable:!0,get:function(){return W[K]}}),Object.defineProperty(q,ce,Ie)}:function(q,W,K,ce){ce===void 0&&(ce=K),q[ce]=W[K]}),v=a&&a.__setModuleDefault||(Object.create?function(q,W){Object.defineProperty(q,"default",{enumerable:!0,value:W})}:function(q,W){q.default=W}),h=a&&a.__importStar||function(q){if(q&&q.__esModule)return q;var W={};if(q!=null)for(var K in q)K!=="default"&&Object.prototype.hasOwnProperty.call(q,K)&&_(W,q,K);return v(W,q),W},D=a&&a.__importDefault||function(q){return q&&q.__esModule?q:{default:q}};Object.defineProperty(a,"__esModule",{value:!0}),a.createProgramFromConfigFile=a.useProvidedPrograms=void 0;var P=D(Ga()),y=h(yT()),m=h(_o()),C=h(vr()),d=d_(),E=(0,P.default)("typescript-eslint:typescript-estree:useProvidedProgram");function I(q,W){E("Retrieving ast for %s from provided program instance(s)",W.filePath);let K;for(let ce of q)if(K=(0,d.getAstFromProgram)(ce,W),K)break;if(!K){let Ie=['"parserOptions.programs" has been provided for @typescript-eslint/parser.',`The file was not found in any of the provided program instance(s): ${m.relative(W.tsconfigRootDir||"/prettier-security-dirname-placeholder",W.filePath)}`];throw new Error(Ie.join(` +`))}return K.program.getTypeChecker(),K}a.useProvidedPrograms=I;function c(q,W){if(C.sys===void 0)throw new Error("`createProgramFromConfigFile` is only supported in a Node-like environment.");let ce=C.getParsedCommandLineOfConfigFile(q,d.CORE_COMPILER_OPTIONS,{onUnRecoverableConfigFileDiagnostic:me=>{throw new Error(M([me]))},fileExists:y.existsSync,getCurrentDirectory:()=>W&&m.resolve(W)||"/prettier-security-dirname-placeholder",readDirectory:C.sys.readDirectory,readFile:me=>y.readFileSync(me,"utf-8"),useCaseSensitiveFileNames:C.sys.useCaseSensitiveFileNames});if(ce.errors.length)throw new Error(M(ce.errors));let Ie=C.createCompilerHost(ce.options,!0);return C.createProgram(ce.fileNames,ce.options,Ie)}a.createProgramFromConfigFile=c;function M(q){return C.formatDiagnostics(q,{getCanonicalFileName:W=>W,getCurrentDirectory:cn.cwd,getNewLine:()=>` +`})}}}),m5=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/ExpiringCache.js"(a){"use strict";De();var _=a&&a.__classPrivateFieldSet||function(m,C,d,E,I){if(E==="m")throw new TypeError("Private method is not writable");if(E==="a"&&!I)throw new TypeError("Private accessor was defined without a setter");if(typeof C=="function"?m!==C||!I:!C.has(m))throw new TypeError("Cannot write private member to an object whose class did not declare it");return E==="a"?I.call(m,d):I?I.value=d:C.set(m,d),d},v=a&&a.__classPrivateFieldGet||function(m,C,d,E){if(d==="a"&&!E)throw new TypeError("Private accessor was defined without a getter");if(typeof C=="function"?m!==C||!E:!C.has(m))throw new TypeError("Cannot read private member from an object whose class did not declare it");return d==="m"?E:d==="a"?E.call(m):E?E.value:C.get(m)},h,D;Object.defineProperty(a,"__esModule",{value:!0}),a.ExpiringCache=a.DEFAULT_TSCONFIG_CACHE_DURATION_SECONDS=void 0,a.DEFAULT_TSCONFIG_CACHE_DURATION_SECONDS=30;var P=[0,0],y=class{constructor(m){h.set(this,void 0),D.set(this,new Map),_(this,h,m,"f")}set(m,C){return v(this,D,"f").set(m,{value:C,lastSeen:v(this,h,"f")==="Infinity"?P:cn.hrtime()}),this}get(m){let C=v(this,D,"f").get(m);if((C==null?void 0:C.value)!=null){if(v(this,h,"f")==="Infinity"||cn.hrtime(C.lastSeen)[0]1&&M.length>=E.tsconfigRootDir.length);throw new Error(`project was set to \`true\` but couldn't find any tsconfig.json relative to '${E.filePath}' within '${E.tsconfigRootDir}'.`)}a.getProjectConfigFiles=d}}),$V=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/inferSingleRun.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.inferSingleRun=void 0;var _=_o();function v(h){return(h==null?void 0:h.project)==null||(h==null?void 0:h.programs)!=null||cn.env.TSESTREE_SINGLE_RUN==="false"?!1:!!(cn.env.TSESTREE_SINGLE_RUN==="true"||h!=null&&h.allowAutomaticSingleRunInference&&(cn.env.CI==="true"||cn.argv[1].endsWith((0,_.normalize)("node_modules/.bin/eslint"))))}a.inferSingleRun=v}}),KV=Oe({"node_modules/is-extglob/index.js"(a,_){De(),_.exports=function(h){if(typeof h!="string"||h==="")return!1;for(var D;D=/(\\).|([@?!+*]\(.*\))/g.exec(h);){if(D[2])return!0;h=h.slice(D.index+D[0].length)}return!1}}}),XV=Oe({"node_modules/is-glob/index.js"(a,_){De();var v=KV(),h={"{":"}","(":")","[":"]"},D=function(y){if(y[0]==="!")return!0;for(var m=0,C=-2,d=-2,E=-2,I=-2,c=-2;mm&&(c===-1||c>d||(c=y.indexOf("\\",m),c===-1||c>d)))||E!==-1&&y[m]==="{"&&y[m+1]!=="}"&&(E=y.indexOf("}",m),E>m&&(c=y.indexOf("\\",m),c===-1||c>E))||I!==-1&&y[m]==="("&&y[m+1]==="?"&&/[:!=]/.test(y[m+2])&&y[m+3]!==")"&&(I=y.indexOf(")",m),I>m&&(c=y.indexOf("\\",m),c===-1||c>I))||C!==-1&&y[m]==="("&&y[m+1]!=="|"&&(CC&&(c=y.indexOf("\\",C),c===-1||c>I))))return!0;if(y[m]==="\\"){var M=y[m+1];m+=2;var q=h[M];if(q){var W=y.indexOf(q,m);W!==-1&&(m=W+1)}if(y[m]==="!")return!0}else m++}return!1},P=function(y){if(y[0]==="!")return!0;for(var m=0;m(typeof pe=="string"&&R.push(pe),R),[]).map(R=>R.startsWith("!")?R:`!${R}`),me=I({project:ce,projectFolderIgnoreList:Ie,tsconfigRootDir:M.tsconfigRootDir});if(C==null)C=new y.ExpiringCache(M.singleRun?"Infinity":(K=(W=M.cacheLifetime)===null||W===void 0?void 0:W.glob)!==null&&K!==void 0?K:y.DEFAULT_TSCONFIG_CACHE_DURATION_SECONDS);else{let R=C.get(me);if(R)return R}let Ae=ce.filter(R=>!(0,D.default)(R)),te=ce.filter(R=>(0,D.default)(R)),he=new Set(Ae.concat(te.length===0?[]:(0,h.sync)([...te,...Ie],{cwd:M.tsconfigRootDir})).map(R=>(0,P.getCanonicalFileName)((0,P.ensureAbsolutePath)(R,M.tsconfigRootDir))));m("parserOptions.project (excluding ignored) matched projects: %s",he);let Pe=Array.from(he);return C.set(me,Pe),Pe}a.resolveProjectList=E;function I(M){let{project:q,projectFolderIgnoreList:W,tsconfigRootDir:K}=M,ce={tsconfigRootDir:K,project:q,projectFolderIgnoreList:[...W].sort()};return(0,P.createHash)(JSON.stringify(ce))}function c(){C==null||C.clear(),C=null}a.clearGlobResolutionCache=c}}),YV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(M,q,W,K){K===void 0&&(K=W);var ce=Object.getOwnPropertyDescriptor(q,W);(!ce||("get"in ce?!q.__esModule:ce.writable||ce.configurable))&&(ce={enumerable:!0,get:function(){return q[W]}}),Object.defineProperty(M,K,ce)}:function(M,q,W,K){K===void 0&&(K=W),M[K]=q[W]}),v=a&&a.__setModuleDefault||(Object.create?function(M,q){Object.defineProperty(M,"default",{enumerable:!0,value:q})}:function(M,q){M.default=q}),h=a&&a.__importStar||function(M){if(M&&M.__esModule)return M;var q={};if(M!=null)for(var W in M)W!=="default"&&Object.prototype.hasOwnProperty.call(M,W)&&_(q,M,W);return v(q,M),q},D=a&&a.__importDefault||function(M){return M&&M.__esModule?M:{default:M}};Object.defineProperty(a,"__esModule",{value:!0}),a.warnAboutTSVersion=void 0;var P=D(pT()),y=h(vr()),m=">=3.3.1 <5.1.0",C=["5.0.1-rc"],d=y.version,E=P.default.satisfies(d,[m].concat(C).join(" || ")),I=!1;function c(M){var q;if(!E&&!I){if(typeof cn>"u"?!1:(q=cn.stdout)===null||q===void 0?void 0:q.isTTY){let K="=============",ce=[K,"WARNING: You are currently running a version of TypeScript which is not officially supported by @typescript-eslint/typescript-estree.","You may find that it works just fine, or you may not.",`SUPPORTED TYPESCRIPT VERSIONS: ${m}`,`YOUR TYPESCRIPT VERSION: ${d}`,"Please only submit bug reports when using the officially supported version.",K];M.log(ce.join(` + +`))}I=!0}}a.warnAboutTSVersion=c}}),g5=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/createParseSettings.js"(a){"use strict";De();var _=a&&a.__importDefault||function(W){return W&&W.__esModule?W:{default:W}};Object.defineProperty(a,"__esModule",{value:!0}),a.clearTSConfigMatchCache=a.createParseSettings=void 0;var v=_(Ga()),h=d_(),D=m5(),P=GV(),y=$V(),m=h5(),C=YV(),d=(0,v.default)("typescript-eslint:typescript-estree:parser:parseSettings:createParseSettings"),E;function I(W){let K=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var ce,Ie,me;let Ae=(0,y.inferSingleRun)(K),te=typeof K.tsconfigRootDir=="string"?K.tsconfigRootDir:"/prettier-security-dirname-placeholder",he={code:M(W),comment:K.comment===!0,comments:[],createDefaultProgram:K.createDefaultProgram===!0,debugLevel:K.debugLevel===!0?new Set(["typescript-eslint"]):Array.isArray(K.debugLevel)?new Set(K.debugLevel):new Set,errorOnTypeScriptSyntacticAndSemanticIssues:!1,errorOnUnknownASTType:K.errorOnUnknownASTType===!0,EXPERIMENTAL_useSourceOfProjectReferenceRedirect:K.EXPERIMENTAL_useSourceOfProjectReferenceRedirect===!0,extraFileExtensions:Array.isArray(K.extraFileExtensions)&&K.extraFileExtensions.every(Pe=>typeof Pe=="string")?K.extraFileExtensions:[],filePath:(0,h.ensureAbsolutePath)(typeof K.filePath=="string"&&K.filePath!==""?K.filePath:q(K.jsx),te),jsx:K.jsx===!0,loc:K.loc===!0,log:typeof K.loggerFn=="function"?K.loggerFn:K.loggerFn===!1?()=>{}:console.log,moduleResolver:(ce=K.moduleResolver)!==null&&ce!==void 0?ce:"",preserveNodeMaps:K.preserveNodeMaps!==!1,programs:Array.isArray(K.programs)?K.programs:null,projects:[],range:K.range===!0,singleRun:Ae,tokens:K.tokens===!0?[]:null,tsconfigMatchCache:E!=null?E:E=new D.ExpiringCache(Ae?"Infinity":(me=(Ie=K.cacheLifetime)===null||Ie===void 0?void 0:Ie.glob)!==null&&me!==void 0?me:D.DEFAULT_TSCONFIG_CACHE_DURATION_SECONDS),tsconfigRootDir:te};if(he.debugLevel.size>0){let Pe=[];he.debugLevel.has("typescript-eslint")&&Pe.push("typescript-eslint:*"),(he.debugLevel.has("eslint")||v.default.enabled("eslint:*,-eslint:code-path"))&&Pe.push("eslint:*,-eslint:code-path"),v.default.enable(Pe.join(","))}if(Array.isArray(K.programs)){if(!K.programs.length)throw new Error("You have set parserOptions.programs to an empty array. This will cause all files to not be found in existing programs. Either provide one or more existing TypeScript Program instances in the array, or remove the parserOptions.programs setting.");d("parserOptions.programs was provided, so parserOptions.project will be ignored.")}return he.programs||(he.projects=(0,m.resolveProjectList)({cacheLifetime:K.cacheLifetime,project:(0,P.getProjectConfigFiles)(he,K.project),projectFolderIgnoreList:K.projectFolderIgnoreList,singleRun:he.singleRun,tsconfigRootDir:te})),(0,C.warnAboutTSVersion)(he),he}a.createParseSettings=I;function c(){E==null||E.clear()}a.clearTSConfigMatchCache=c;function M(W){return typeof W!="string"?String(W):W}function q(W){return W?"estree.tsx":"estree.ts"}}}),QV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.getFirstSemanticOrSyntacticError=void 0;var _=vr();function v(P,y){try{let m=h(P.getSyntacticDiagnostics(y));if(m.length)return D(m[0]);let C=h(P.getSemanticDiagnostics(y));return C.length?D(C[0]):void 0}catch(m){console.warn(`Warning From TSC: "${m.message}`);return}}a.getFirstSemanticOrSyntacticError=v;function h(P){return P.filter(y=>{switch(y.code){case 1013:case 1014:case 1044:case 1045:case 1048:case 1049:case 1070:case 1071:case 1085:case 1090:case 1096:case 1097:case 1098:case 1099:case 1117:case 1121:case 1123:case 1141:case 1162:case 1164:case 1172:case 1173:case 1175:case 1176:case 1190:case 1196:case 1200:case 1206:case 1211:case 1242:case 1246:case 1255:case 1308:case 2364:case 2369:case 2452:case 2462:case 8017:case 17012:case 17013:return!0}return!1})}function D(P){return Object.assign(Object.assign({},P),{message:(0,_.flattenDiagnosticMessageText)(P.messageText,_.sys.newLine)})}}}),y5=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/parser.js"(a){"use strict";De();var _=a&&a.__importDefault||function(he){return he&&he.__esModule?he:{default:he}};Object.defineProperty(a,"__esModule",{value:!0}),a.clearParseAndGenerateServicesCalls=a.clearProgramCache=a.parseWithNodeMaps=a.parseAndGenerateServices=a.parse=void 0;var v=_(Ga()),h=FV(),D=G9(),P=qV(),y=UV(),m=VV(),C=HV(),d=d5(),E=g5(),I=QV(),c=(0,v.default)("typescript-eslint:typescript-estree:parser"),M=new Map;function q(){M.clear()}a.clearProgramCache=q;function W(he,Pe){return he.programs&&(0,d.useProvidedPrograms)(he.programs,he)||Pe&&(0,m.createProjectProgram)(he)||Pe&&he.createDefaultProgram&&(0,P.createDefaultProgram)(he)||(0,y.createIsolatedProgram)(he)}function K(he,Pe){let{ast:R}=ce(he,Pe,!1);return R}a.parse=K;function ce(he,Pe,R){let pe=(0,E.createParseSettings)(he,Pe);if(Pe!=null&&Pe.errorOnTypeScriptSyntacticAndSemanticIssues)throw new Error('"errorOnTypeScriptSyntacticAndSemanticIssues" is only supported for parseAndGenerateServices()');let ke=(0,C.createSourceFile)(pe),{estree:Je,astMaps:Xe}=(0,h.astConverter)(ke,pe,R);return{ast:Je,esTreeNodeToTSNodeMap:Xe.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:Xe.tsNodeToESTreeNodeMap}}function Ie(he,Pe){return ce(he,Pe,!0)}a.parseWithNodeMaps=Ie;var me={};function Ae(){me={}}a.clearParseAndGenerateServicesCalls=Ae;function te(he,Pe){var R,pe;let ke=(0,E.createParseSettings)(he,Pe);Pe!==void 0&&typeof Pe.errorOnTypeScriptSyntacticAndSemanticIssues=="boolean"&&Pe.errorOnTypeScriptSyntacticAndSemanticIssues&&(ke.errorOnTypeScriptSyntacticAndSemanticIssues=!0),ke.singleRun&&!ke.programs&&((R=ke.projects)===null||R===void 0?void 0:R.length)>0&&(ke.programs={*[Symbol.iterator](){for(let st of ke.projects){let tt=M.get(st);if(tt)yield tt;else{c("Detected single-run/CLI usage, creating Program once ahead of time for project: %s",st);let ct=(0,d.createProgramFromConfigFile)(st);M.set(st,ct),yield ct}}}});let Je=ke.programs!=null||((pe=ke.projects)===null||pe===void 0?void 0:pe.length)>0;ke.singleRun&&Pe.filePath&&(me[Pe.filePath]=(me[Pe.filePath]||0)+1);let{ast:Xe,program:ee}=ke.singleRun&&Pe.filePath&&me[Pe.filePath]>1?(0,y.createIsolatedProgram)(ke):W(ke,Je),je=typeof ke.preserveNodeMaps=="boolean"?ke.preserveNodeMaps:!0,{estree:nt,astMaps:Ze}=(0,h.astConverter)(Xe,ke,je);if(ee&&ke.errorOnTypeScriptSyntacticAndSemanticIssues){let st=(0,I.getFirstSemanticOrSyntacticError)(ee,Xe);if(st)throw(0,D.convertError)(st)}return{ast:nt,services:{hasFullTypeInformation:Je,program:ee,esTreeNodeToTSNodeMap:Ze.esTreeNodeToTSNodeMap,tsNodeToESTreeNodeMap:Ze.tsNodeToESTreeNodeMap}}}a.parseAndGenerateServices=te}}),ZV=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/clear-caches.js"(a){"use strict";De(),Object.defineProperty(a,"__esModule",{value:!0}),a.clearProgramCache=a.clearCaches=void 0;var _=f5(),v=y5(),h=g5(),D=h5();function P(){(0,v.clearProgramCache)(),(0,_.clearWatchCaches)(),(0,h.clearTSConfigMatchCache)(),(0,D.clearGlobCache)()}a.clearCaches=P,a.clearProgramCache=P}}),eH=Oe({"node_modules/@typescript-eslint/typescript-estree/package.json"(a,_){_.exports={name:"@typescript-eslint/typescript-estree",version:"5.55.0",description:"A parser that converts TypeScript source code into an ESTree compatible form",main:"dist/index.js",types:"dist/index.d.ts",files:["dist","_ts3.4","README.md","LICENSE"],engines:{node:"^12.22.0 || ^14.17.0 || >=16.0.0"},repository:{type:"git",url:"https://github.com/typescript-eslint/typescript-eslint.git",directory:"packages/typescript-estree"},bugs:{url:"https://github.com/typescript-eslint/typescript-eslint/issues"},license:"BSD-2-Clause",keywords:["ast","estree","ecmascript","javascript","typescript","parser","syntax"],scripts:{build:"tsc -b tsconfig.build.json",postbuild:"downlevel-dts dist _ts3.4/dist",clean:"tsc -b tsconfig.build.json --clean",postclean:"rimraf dist && rimraf _ts3.4 && rimraf coverage",format:'prettier --write "./**/*.{ts,mts,cts,tsx,js,mjs,cjs,jsx,json,md,css}" --ignore-path ../../.prettierignore',lint:"nx lint",test:"jest --coverage",typecheck:"tsc -p tsconfig.json --noEmit"},dependencies:{"@typescript-eslint/types":"5.55.0","@typescript-eslint/visitor-keys":"5.55.0",debug:"^4.3.4",globby:"^11.1.0","is-glob":"^4.0.3",semver:"^7.3.7",tsutils:"^3.21.0"},devDependencies:{"@babel/code-frame":"*","@babel/parser":"*","@types/babel__code-frame":"*","@types/debug":"*","@types/glob":"*","@types/is-glob":"*","@types/semver":"*","@types/tmp":"*",glob:"*","jest-specific-snapshot":"*","make-dir":"*",tmp:"*",typescript:"*"},peerDependenciesMeta:{typescript:{optional:!0}},funding:{type:"opencollective",url:"https://opencollective.com/typescript-eslint"},typesVersions:{"<3.8":{"*":["_ts3.4/*"]}},gitHead:"877d73327fca3bdbe7e170e8b3a906d090a6de37"}}}),tH=Oe({"node_modules/@typescript-eslint/typescript-estree/dist/index.js"(a){"use strict";De();var _=a&&a.__createBinding||(Object.create?function(C,d,E,I){I===void 0&&(I=E);var c=Object.getOwnPropertyDescriptor(d,E);(!c||("get"in c?!d.__esModule:c.writable||c.configurable))&&(c={enumerable:!0,get:function(){return d[E]}}),Object.defineProperty(C,I,c)}:function(C,d,E,I){I===void 0&&(I=E),C[I]=d[E]}),v=a&&a.__exportStar||function(C,d){for(var E in C)E!=="default"&&!Object.prototype.hasOwnProperty.call(d,E)&&_(d,C,E)};Object.defineProperty(a,"__esModule",{value:!0}),a.version=a.visitorKeys=a.typescriptVersionIsAtLeast=a.createProgram=a.simpleTraverse=a.parseWithNodeMaps=a.parseAndGenerateServices=a.parse=void 0;var h=y5();Object.defineProperty(a,"parse",{enumerable:!0,get:function(){return h.parse}}),Object.defineProperty(a,"parseAndGenerateServices",{enumerable:!0,get:function(){return h.parseAndGenerateServices}}),Object.defineProperty(a,"parseWithNodeMaps",{enumerable:!0,get:function(){return h.parseWithNodeMaps}});var D=t5();Object.defineProperty(a,"simpleTraverse",{enumerable:!0,get:function(){return D.simpleTraverse}}),v(x1(),a);var P=d5();Object.defineProperty(a,"createProgram",{enumerable:!0,get:function(){return P.createProgramFromConfigFile}}),v(gT(),a);var y=S1();Object.defineProperty(a,"typescriptVersionIsAtLeast",{enumerable:!0,get:function(){return y.typescriptVersionIsAtLeast}}),v(fT(),a),v(ZV(),a);var m=e5();Object.defineProperty(a,"visitorKeys",{enumerable:!0,get:function(){return m.visitorKeys}}),a.version=eH().version}});De();var rH=w9(),nH=pW(),iH=SW(),aH=xW(),sH=PW(),{throwErrorForInvalidNodes:oH}=DW(),E9={loc:!0,range:!0,comment:!0,jsx:!0,tokens:!0,loggerFn:!1,project:[]};function _H(a){let{message:_,lineNumber:v,column:h}=a;return typeof v!="number"?a:rH(_,{start:{line:v,column:h+1}})}function cH(a,_){let v=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},h=aH(a),D=lH(a),{parseWithNodeMaps:P}=tH(),{result:y,error:m}=nH(()=>P(h,Object.assign(Object.assign({},E9),{},{jsx:D})),()=>P(h,Object.assign(Object.assign({},E9),{},{jsx:!D})));if(!y)throw _H(m);return v.originalText=a,oH(y,v),sH(y.ast,v)}function lH(a){return new RegExp(["(?:^[^\"'`]*)"].join(""),"m").test(a)}v5.exports={parsers:{typescript:iH(cH)}}});return uH();}); \ No newline at end of file diff --git a/node_modules/prettier/parser-yaml.js b/node_modules/prettier/parser-yaml.js new file mode 100644 index 0000000..f9b10a7 --- /dev/null +++ b/node_modules/prettier/parser-yaml.js @@ -0,0 +1,150 @@ +(function(e){if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var i=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};i.prettierPlugins=i.prettierPlugins||{},i.prettierPlugins.yaml=e()}})(function(){"use strict";var yt=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var ln=yt((un,at)=>{var Ye=Object.defineProperty,bt=Object.getOwnPropertyDescriptor,De=Object.getOwnPropertyNames,wt=Object.prototype.hasOwnProperty,Ke=(n,e)=>function(){return n&&(e=(0,n[De(n)[0]])(n=0)),e},D=(n,e)=>function(){return e||(0,n[De(n)[0]])((e={exports:{}}).exports,e),e.exports},St=(n,e)=>{for(var r in e)Ye(n,r,{get:e[r],enumerable:!0})},Et=(n,e,r,c)=>{if(e&&typeof e=="object"||typeof e=="function")for(let h of De(e))!wt.call(n,h)&&h!==r&&Ye(n,h,{get:()=>e[h],enumerable:!(c=bt(e,h))||c.enumerable});return n},se=n=>Et(Ye({},"__esModule",{value:!0}),n),Te,Y=Ke({""(){Te={env:{},argv:[]}}}),Mt=D({"src/common/parser-create-error.js"(n,e){"use strict";Y();function r(c,h){let d=new SyntaxError(c+" ("+h.start.line+":"+h.start.column+")");return d.loc=h,d}e.exports=r}}),Ot=D({"src/language-yaml/pragma.js"(n,e){"use strict";Y();function r(d){return/^\s*@(?:prettier|format)\s*$/.test(d)}function c(d){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/.test(d)}function h(d){return`# @format + +${d}`}e.exports={isPragma:r,hasPragma:c,insertPragma:h}}}),Lt=D({"src/language-yaml/loc.js"(n,e){"use strict";Y();function r(h){return h.position.start.offset}function c(h){return h.position.end.offset}e.exports={locStart:r,locEnd:c}}}),te={};St(te,{__assign:()=>qe,__asyncDelegator:()=>Yt,__asyncGenerator:()=>jt,__asyncValues:()=>Dt,__await:()=>Ce,__awaiter:()=>Pt,__classPrivateFieldGet:()=>Qt,__classPrivateFieldSet:()=>Ut,__createBinding:()=>Rt,__decorate:()=>Tt,__exportStar:()=>qt,__extends:()=>At,__generator:()=>It,__importDefault:()=>Vt,__importStar:()=>Wt,__makeTemplateObject:()=>Ft,__metadata:()=>kt,__param:()=>Ct,__read:()=>Je,__rest:()=>Nt,__spread:()=>$t,__spreadArrays:()=>Bt,__values:()=>je});function At(n,e){Re(n,e);function r(){this.constructor=n}n.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}function Nt(n,e){var r={};for(var c in n)Object.prototype.hasOwnProperty.call(n,c)&&e.indexOf(c)<0&&(r[c]=n[c]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var h=0,c=Object.getOwnPropertySymbols(n);h=0;E--)(y=n[E])&&(d=(h<3?y(d):h>3?y(e,r,d):y(e,r))||d);return h>3&&d&&Object.defineProperty(e,r,d),d}function Ct(n,e){return function(r,c){e(r,c,n)}}function kt(n,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(n,e)}function Pt(n,e,r,c){function h(d){return d instanceof r?d:new r(function(y){y(d)})}return new(r||(r=Promise))(function(d,y){function E(M){try{S(c.next(M))}catch(T){y(T)}}function I(M){try{S(c.throw(M))}catch(T){y(T)}}function S(M){M.done?d(M.value):h(M.value).then(E,I)}S((c=c.apply(n,e||[])).next())})}function It(n,e){var r={label:0,sent:function(){if(d[0]&1)throw d[1];return d[1]},trys:[],ops:[]},c,h,d,y;return y={next:E(0),throw:E(1),return:E(2)},typeof Symbol=="function"&&(y[Symbol.iterator]=function(){return this}),y;function E(S){return function(M){return I([S,M])}}function I(S){if(c)throw new TypeError("Generator is already executing.");for(;r;)try{if(c=1,h&&(d=S[0]&2?h.return:S[0]?h.throw||((d=h.return)&&d.call(h),0):h.next)&&!(d=d.call(h,S[1])).done)return d;switch(h=0,d&&(S=[S[0]&2,d.value]),S[0]){case 0:case 1:d=S;break;case 4:return r.label++,{value:S[1],done:!1};case 5:r.label++,h=S[1],S=[0];continue;case 7:S=r.ops.pop(),r.trys.pop();continue;default:if(d=r.trys,!(d=d.length>0&&d[d.length-1])&&(S[0]===6||S[0]===2)){r=0;continue}if(S[0]===3&&(!d||S[1]>d[0]&&S[1]=n.length&&(n=void 0),{value:n&&n[c++],done:!n}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Je(n,e){var r=typeof Symbol=="function"&&n[Symbol.iterator];if(!r)return n;var c=r.call(n),h,d=[],y;try{for(;(e===void 0||e-- >0)&&!(h=c.next()).done;)d.push(h.value)}catch(E){y={error:E}}finally{try{h&&!h.done&&(r=c.return)&&r.call(c)}finally{if(y)throw y.error}}return d}function $t(){for(var n=[],e=0;e1||E(P,C)})})}function E(P,C){try{I(c[P](C))}catch(q){T(d[0][3],q)}}function I(P){P.value instanceof Ce?Promise.resolve(P.value.v).then(S,M):T(d[0][2],P)}function S(P){E("next",P)}function M(P){E("throw",P)}function T(P,C){P(C),d.shift(),d.length&&E(d[0][0],d[0][1])}}function Yt(n){var e,r;return e={},c("next"),c("throw",function(h){throw h}),c("return"),e[Symbol.iterator]=function(){return this},e;function c(h,d){e[h]=n[h]?function(y){return(r=!r)?{value:Ce(n[h](y)),done:h==="return"}:d?d(y):y}:d}}function Dt(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=n[Symbol.asyncIterator],r;return e?e.call(n):(n=typeof je=="function"?je(n):n[Symbol.iterator](),r={},c("next"),c("throw"),c("return"),r[Symbol.asyncIterator]=function(){return this},r);function c(d){r[d]=n[d]&&function(y){return new Promise(function(E,I){y=n[d](y),h(E,I,y.done,y.value)})}}function h(d,y,E,I){Promise.resolve(I).then(function(S){d({value:S,done:E})},y)}}function Ft(n,e){return Object.defineProperty?Object.defineProperty(n,"raw",{value:e}):n.raw=e,n}function Wt(n){if(n&&n.__esModule)return n;var e={};if(n!=null)for(var r in n)Object.hasOwnProperty.call(n,r)&&(e[r]=n[r]);return e.default=n,e}function Vt(n){return n&&n.__esModule?n:{default:n}}function Qt(n,e){if(!e.has(n))throw new TypeError("attempted to get private field on non-instance");return e.get(n)}function Ut(n,e,r){if(!e.has(n))throw new TypeError("attempted to set private field on non-instance");return e.set(n,r),r}var Re,qe,ie=Ke({"node_modules/tslib/tslib.es6.js"(){Y(),Re=function(n,e){return Re=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,c){r.__proto__=c}||function(r,c){for(var h in c)c.hasOwnProperty(h)&&(r[h]=c[h])},Re(n,e)},qe=function(){return qe=Object.assign||function(e){for(var r,c=1,h=arguments.length;cthis.string.length)return null;for(var y=0,E=this.offsets;E[y+1]<=d;)y++;var I=d-E[y];return{line:y,column:I}},h.prototype.indexForLocation=function(d){var y=d.line,E=d.column;return y<0||y>=this.offsets.length||E<0||E>this.lengthOfLine(y)?null:this.offsets[y]+E},h.prototype.lengthOfLine=function(d){var y=this.offsets[d],E=d===this.offsets.length-1?this.string.length:this.offsets[d+1];return E-y},h}();n.LinesAndColumns=c,n.default=c}}),Jt=D({"node_modules/yaml-unist-parser/lib/utils/define-parents.js"(n){"use strict";Y(),n.__esModule=!0;function e(r,c){c===void 0&&(c=null),"children"in r&&r.children.forEach(function(h){return e(h,r)}),"anchor"in r&&r.anchor&&e(r.anchor,r),"tag"in r&&r.tag&&e(r.tag,r),"leadingComments"in r&&r.leadingComments.forEach(function(h){return e(h,r)}),"middleComments"in r&&r.middleComments.forEach(function(h){return e(h,r)}),"indicatorComment"in r&&r.indicatorComment&&e(r.indicatorComment,r),"trailingComment"in r&&r.trailingComment&&e(r.trailingComment,r),"endComments"in r&&r.endComments.forEach(function(h){return e(h,r)}),Object.defineProperty(r,"_parent",{value:c,enumerable:!1})}n.defineParents=e}}),Fe=D({"node_modules/yaml-unist-parser/lib/utils/get-point-text.js"(n){"use strict";Y(),n.__esModule=!0;function e(r){return r.line+":"+r.column}n.getPointText=e}}),xt=D({"node_modules/yaml-unist-parser/lib/attach.js"(n){"use strict";Y(),n.__esModule=!0;var e=Jt(),r=Fe();function c(S){e.defineParents(S);var M=h(S),T=S.children.slice();S.comments.sort(function(P,C){return P.position.start.offset-C.position.end.offset}).filter(function(P){return!P._parent}).forEach(function(P){for(;T.length>1&&P.position.start.line>T[0].position.end.line;)T.shift();y(P,M,T[0])})}n.attachComments=c;function h(S){for(var M=Array.from(new Array(S.position.end.line),function(){return{}}),T=0,P=S.comments;T1&&M.type!=="document"&&M.type!=="documentHead"){var C=M.position.end,q=S[C.line-1].trailingAttachableNode;(!q||C.column>=q.position.end.column)&&(S[C.line-1].trailingAttachableNode=M)}if(M.type!=="root"&&M.type!=="document"&&M.type!=="documentHead"&&M.type!=="documentBody")for(var R=M.position,T=R.start,C=R.end,B=[C.line].concat(T.line===C.line?[]:T.line),U=0,f=B;U=t.position.end.column)&&(S[i-1].trailingNode=M)}"children"in M&&M.children.forEach(function(s){d(S,s)})}}function y(S,M,T){var P=S.position.start.line,C=M[P-1].trailingAttachableNode;if(C){if(C.trailingComment)throw new Error("Unexpected multiple trailing comment at "+r.getPointText(S.position.start));e.defineParents(S,C),C.trailingComment=S;return}for(var q=P;q>=T.position.start.line;q--){var R=M[q-1].trailingNode,B=void 0;if(R)B=R;else if(q!==P&&M[q-1].comment)B=M[q-1].comment._parent;else continue;if((B.type==="sequence"||B.type==="mapping")&&(B=B.children[0]),B.type==="mappingItem"){var U=B.children,f=U[0],i=U[1];B=I(f)?f:i}for(;;){if(E(B,S)){e.defineParents(S,B),B.endComments.push(S);return}if(!B._parent)break;B=B._parent}break}for(var q=P+1;q<=T.position.end.line;q++){var t=M[q-1].leadingAttachableNode;if(t){e.defineParents(S,t),t.leadingComments.push(S);return}}var s=T.children[1];e.defineParents(S,s),s.endComments.push(S)}function E(S,M){if(S.position.start.offsetM.position.end.offset)switch(S.type){case"flowMapping":case"flowSequence":return S.children.length===0||M.position.start.line>S.children[S.children.length-1].position.end.line}if(M.position.end.offsetS.position.start.column;case"mappingKey":case"mappingValue":return M.position.start.column>S._parent.position.start.column&&(S.children.length===0||S.children.length===1&&S.children[0].type!=="blockFolded"&&S.children[0].type!=="blockLiteral")&&(S.type==="mappingValue"||I(S));default:return!1}}function I(S){return S.position.start!==S.position.end&&(S.children.length===0||S.position.start.offset!==S.children[0].position.start.offset)}}}),me=D({"node_modules/yaml-unist-parser/lib/factories/node.js"(n){"use strict";Y(),n.__esModule=!0;function e(r,c){return{type:r,position:c}}n.createNode=e}}),Ht=D({"node_modules/yaml-unist-parser/lib/factories/root.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=me();function c(h,d,y){return e.__assign(e.__assign({},r.createNode("root",h)),{children:d,comments:y})}n.createRoot=c}}),Gt=D({"node_modules/yaml-unist-parser/lib/preprocess.js"(n){"use strict";Y(),n.__esModule=!0;function e(r){switch(r.type){case"DOCUMENT":for(var c=r.contents.length-1;c>=0;c--)r.contents[c].type==="BLANK_LINE"?r.contents.splice(c,1):e(r.contents[c]);for(var c=r.directives.length-1;c>=0;c--)r.directives[c].type==="BLANK_LINE"&&r.directives.splice(c,1);break;case"FLOW_MAP":case"FLOW_SEQ":case"MAP":case"SEQ":for(var c=r.items.length-1;c>=0;c--){var h=r.items[c];"char"in h||(h.type==="BLANK_LINE"?r.items.splice(c,1):e(h))}break;case"MAP_KEY":case"MAP_VALUE":case"SEQ_ITEM":r.node&&e(r.node);break;case"ALIAS":case"BLANK_LINE":case"BLOCK_FOLDED":case"BLOCK_LITERAL":case"COMMENT":case"DIRECTIVE":case"PLAIN":case"QUOTE_DOUBLE":case"QUOTE_SINGLE":break;default:throw new Error("Unexpected node type "+JSON.stringify(r.type))}}n.removeCstBlankLine=e}}),Oe=D({"node_modules/yaml-unist-parser/lib/factories/leading-comment-attachable.js"(n){"use strict";Y(),n.__esModule=!0;function e(){return{leadingComments:[]}}n.createLeadingCommentAttachable=e}}),$e=D({"node_modules/yaml-unist-parser/lib/factories/trailing-comment-attachable.js"(n){"use strict";Y(),n.__esModule=!0;function e(r){return r===void 0&&(r=null),{trailingComment:r}}n.createTrailingCommentAttachable=e}}),Se=D({"node_modules/yaml-unist-parser/lib/factories/comment-attachable.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=Oe(),c=$e();function h(){return e.__assign(e.__assign({},r.createLeadingCommentAttachable()),c.createTrailingCommentAttachable())}n.createCommentAttachable=h}}),zt=D({"node_modules/yaml-unist-parser/lib/factories/alias.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=Se(),c=me();function h(d,y,E){return e.__assign(e.__assign(e.__assign(e.__assign({},c.createNode("alias",d)),r.createCommentAttachable()),y),{value:E})}n.createAlias=h}}),Zt=D({"node_modules/yaml-unist-parser/lib/transforms/alias.js"(n){"use strict";Y(),n.__esModule=!0;var e=zt();function r(c,h){var d=c.cstNode;return e.createAlias(h.transformRange({origStart:d.valueRange.origStart-1,origEnd:d.valueRange.origEnd}),h.transformContent(c),d.rawValue)}n.transformAlias=r}}),Xt=D({"node_modules/yaml-unist-parser/lib/factories/block-folded.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te));function r(c){return e.__assign(e.__assign({},c),{type:"blockFolded"})}n.createBlockFolded=r}}),er=D({"node_modules/yaml-unist-parser/lib/factories/block-value.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=Oe(),c=me();function h(d,y,E,I,S,M){return e.__assign(e.__assign(e.__assign(e.__assign({},c.createNode("blockValue",d)),r.createLeadingCommentAttachable()),y),{chomping:E,indent:I,value:S,indicatorComment:M})}n.createBlockValue=h}}),xe=D({"node_modules/yaml-unist-parser/lib/constants.js"(n){"use strict";Y(),n.__esModule=!0;var e;(function(r){r.Tag="!",r.Anchor="&",r.Comment="#"})(e=n.PropLeadingCharacter||(n.PropLeadingCharacter={}))}}),tr=D({"node_modules/yaml-unist-parser/lib/factories/anchor.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=me();function c(h,d){return e.__assign(e.__assign({},r.createNode("anchor",h)),{value:d})}n.createAnchor=c}}),We=D({"node_modules/yaml-unist-parser/lib/factories/comment.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=me();function c(h,d){return e.__assign(e.__assign({},r.createNode("comment",h)),{value:d})}n.createComment=c}}),rr=D({"node_modules/yaml-unist-parser/lib/factories/content.js"(n){"use strict";Y(),n.__esModule=!0;function e(r,c,h){return{anchor:c,tag:r,middleComments:h}}n.createContent=e}}),nr=D({"node_modules/yaml-unist-parser/lib/factories/tag.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=me();function c(h,d){return e.__assign(e.__assign({},r.createNode("tag",h)),{value:d})}n.createTag=c}}),He=D({"node_modules/yaml-unist-parser/lib/transforms/content.js"(n){"use strict";Y(),n.__esModule=!0;var e=xe(),r=tr(),c=We(),h=rr(),d=nr();function y(E,I,S){S===void 0&&(S=function(){return!1});for(var M=E.cstNode,T=[],P=null,C=null,q=null,R=0,B=M.props;R=0;U--){var f=S.contents[U];if(f.type==="COMMENT"){var i=M.transformNode(f);T&&T.line===i.position.start.line?R.unshift(i):B?P.unshift(i):i.position.start.offset>=S.valueRange.origEnd?q.unshift(i):P.unshift(i)}else B=!0}if(q.length>1)throw new Error("Unexpected multiple document trailing comments at "+d.getPointText(q[1].position.start));if(R.length>1)throw new Error("Unexpected multiple documentHead trailing comments at "+d.getPointText(R[1].position.start));return{comments:P,endComments:C,documentTrailingComment:c.getLast(q)||null,documentHeadTrailingComment:c.getLast(R)||null}}function I(S,M,T){var P=h.getMatchIndex(T.text.slice(S.valueRange.origEnd),/^\.\.\./),C=P===-1?S.valueRange.origEnd:Math.max(0,S.valueRange.origEnd-1);T.text[C-1]==="\r"&&C--;var q=T.transformRange({origStart:M!==null?M.position.start.offset:C,origEnd:C}),R=P===-1?q.end:T.transformOffset(S.valueRange.origEnd+3);return{position:q,documentEndPoint:R}}}}),dr=D({"node_modules/yaml-unist-parser/lib/factories/document-head.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=Ee(),c=me(),h=$e();function d(y,E,I,S){return e.__assign(e.__assign(e.__assign(e.__assign({},c.createNode("documentHead",y)),r.createEndCommentAttachable(I)),h.createTrailingCommentAttachable(S)),{children:E})}n.createDocumentHead=d}}),hr=D({"node_modules/yaml-unist-parser/lib/transforms/document-head.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=dr(),c=ze();function h(E,I){var S,M=E.cstNode,T=d(M,I),P=T.directives,C=T.comments,q=T.endComments,R=y(M,P,I),B=R.position,U=R.endMarkerPoint;(S=I.comments).push.apply(S,e.__spreadArrays(C,q));var f=function(i){return i&&I.comments.push(i),r.createDocumentHead(B,P,q,i)};return{createDocumentHeadWithTrailingComment:f,documentHeadEndMarkerPoint:U}}n.transformDocumentHead=h;function d(E,I){for(var S=[],M=[],T=[],P=!1,C=E.directives.length-1;C>=0;C--){var q=I.transformNode(E.directives[C]);q.type==="comment"?P?M.unshift(q):T.unshift(q):(P=!0,S.unshift(q))}return{directives:S,comments:M,endComments:T}}function y(E,I,S){var M=c.getMatchIndex(S.text.slice(0,E.valueRange.origStart),/---\s*$/);M>0&&!/[\r\n]/.test(S.text[M-1])&&(M=-1);var T=M===-1?{origStart:E.valueRange.origStart,origEnd:E.valueRange.origStart}:{origStart:M,origEnd:M+3};return I.length!==0&&(T.origStart=I[0].position.start.offset),{position:S.transformRange(T),endMarkerPoint:M===-1?null:S.transformOffset(M)}}}}),gr=D({"node_modules/yaml-unist-parser/lib/transforms/document.js"(n){"use strict";Y(),n.__esModule=!0;var e=ur(),r=Le(),c=mr(),h=hr();function d(y,E){var I=h.transformDocumentHead(y,E),S=I.createDocumentHeadWithTrailingComment,M=I.documentHeadEndMarkerPoint,T=c.transformDocumentBody(y,E,M),P=T.documentBody,C=T.documentEndPoint,q=T.documentTrailingComment,R=T.documentHeadTrailingComment,B=S(R);return q&&E.comments.push(q),e.createDocument(r.createPosition(B.position.start,C),B,P,q)}n.transformDocument=d}}),Ze=D({"node_modules/yaml-unist-parser/lib/factories/flow-collection.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=Se(),c=Ee(),h=me();function d(y,E,I){return e.__assign(e.__assign(e.__assign(e.__assign(e.__assign({},h.createNode("flowCollection",y)),r.createCommentAttachable()),c.createEndCommentAttachable()),E),{children:I})}n.createFlowCollection=d}}),pr=D({"node_modules/yaml-unist-parser/lib/factories/flow-mapping.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=Ze();function c(h,d,y){return e.__assign(e.__assign({},r.createFlowCollection(h,d,y)),{type:"flowMapping"})}n.createFlowMapping=c}}),Xe=D({"node_modules/yaml-unist-parser/lib/factories/flow-mapping-item.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=Oe(),c=me();function h(d,y,E){return e.__assign(e.__assign(e.__assign({},c.createNode("flowMappingItem",d)),r.createLeadingCommentAttachable()),{children:[y,E]})}n.createFlowMappingItem=h}}),Be=D({"node_modules/yaml-unist-parser/lib/utils/extract-comments.js"(n){"use strict";Y(),n.__esModule=!0;function e(r,c){for(var h=[],d=0,y=r;d=0;d--)if(h.test(r[d]))return d;return-1}n.findLastCharIndex=e}}),Nr=D({"node_modules/yaml-unist-parser/lib/transforms/plain.js"(n){"use strict";Y(),n.__esModule=!0;var e=Lr(),r=Ar();function c(h,d){var y=h.cstNode;return e.createPlain(d.transformRange({origStart:y.valueRange.origStart,origEnd:r.findLastCharIndex(d.text,y.valueRange.origEnd-1,/\S/)+1}),d.transformContent(h),y.strValue)}n.transformPlain=c}}),Tr=D({"node_modules/yaml-unist-parser/lib/factories/quote-double.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te));function r(c){return e.__assign(e.__assign({},c),{type:"quoteDouble"})}n.createQuoteDouble=r}}),Cr=D({"node_modules/yaml-unist-parser/lib/factories/quote-value.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=Se(),c=me();function h(d,y,E){return e.__assign(e.__assign(e.__assign(e.__assign({},c.createNode("quoteValue",d)),y),r.createCommentAttachable()),{value:E})}n.createQuoteValue=h}}),nt=D({"node_modules/yaml-unist-parser/lib/transforms/quote-value.js"(n){"use strict";Y(),n.__esModule=!0;var e=Cr();function r(c,h){var d=c.cstNode;return e.createQuoteValue(h.transformRange(d.valueRange),h.transformContent(c),d.strValue)}n.transformAstQuoteValue=r}}),kr=D({"node_modules/yaml-unist-parser/lib/transforms/quote-double.js"(n){"use strict";Y(),n.__esModule=!0;var e=Tr(),r=nt();function c(h,d){return e.createQuoteDouble(r.transformAstQuoteValue(h,d))}n.transformQuoteDouble=c}}),Pr=D({"node_modules/yaml-unist-parser/lib/factories/quote-single.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te));function r(c){return e.__assign(e.__assign({},c),{type:"quoteSingle"})}n.createQuoteSingle=r}}),Ir=D({"node_modules/yaml-unist-parser/lib/transforms/quote-single.js"(n){"use strict";Y(),n.__esModule=!0;var e=Pr(),r=nt();function c(h,d){return e.createQuoteSingle(r.transformAstQuoteValue(h,d))}n.transformQuoteSingle=c}}),Rr=D({"node_modules/yaml-unist-parser/lib/factories/sequence.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=Ee(),c=Oe(),h=me();function d(y,E,I){return e.__assign(e.__assign(e.__assign(e.__assign(e.__assign({},h.createNode("sequence",y)),c.createLeadingCommentAttachable()),r.createEndCommentAttachable()),E),{children:I})}n.createSequence=d}}),qr=D({"node_modules/yaml-unist-parser/lib/factories/sequence-item.js"(n){"use strict";Y(),n.__esModule=!0;var e=(ie(),se(te)),r=Se(),c=Ee(),h=me();function d(y,E){return e.__assign(e.__assign(e.__assign(e.__assign({},h.createNode("sequenceItem",y)),r.createCommentAttachable()),c.createEndCommentAttachable()),{children:E?[E]:[]})}n.createSequenceItem=d}}),$r=D({"node_modules/yaml-unist-parser/lib/transforms/seq.js"(n){"use strict";Y(),n.__esModule=!0;var e=Le(),r=Rr(),c=qr(),h=Be(),d=Ve(),y=Ae();function E(I,S){var M=h.extractComments(I.cstNode.items,S),T=M.map(function(P,C){d.extractPropComments(P,S);var q=S.transformNode(I.items[C]);return c.createSequenceItem(e.createPosition(S.transformOffset(P.valueRange.origStart),q===null?S.transformOffset(P.valueRange.origStart+1):q.position.end),q)});return r.createSequence(e.createPosition(T[0].position.start,y.getLast(T).position.end),S.transformContent(I),T)}n.transformSeq=E}}),Br=D({"node_modules/yaml-unist-parser/lib/transform.js"(n){"use strict";Y(),n.__esModule=!0;var e=Zt(),r=sr(),c=ar(),h=or(),d=cr(),y=gr(),E=yr(),I=Sr(),S=Or(),M=Nr(),T=kr(),P=Ir(),C=$r();function q(R,B){if(R===null||R.type===void 0&&R.value===null)return null;switch(R.type){case"ALIAS":return e.transformAlias(R,B);case"BLOCK_FOLDED":return r.transformBlockFolded(R,B);case"BLOCK_LITERAL":return c.transformBlockLiteral(R,B);case"COMMENT":return h.transformComment(R,B);case"DIRECTIVE":return d.transformDirective(R,B);case"DOCUMENT":return y.transformDocument(R,B);case"FLOW_MAP":return E.transformFlowMap(R,B);case"FLOW_SEQ":return I.transformFlowSeq(R,B);case"MAP":return S.transformMap(R,B);case"PLAIN":return M.transformPlain(R,B);case"QUOTE_DOUBLE":return T.transformQuoteDouble(R,B);case"QUOTE_SINGLE":return P.transformQuoteSingle(R,B);case"SEQ":return C.transformSeq(R,B);default:throw new Error("Unexpected node type "+R.type)}}n.transformNode=q}}),jr=D({"node_modules/yaml-unist-parser/lib/factories/error.js"(n){"use strict";Y(),n.__esModule=!0;function e(r,c,h){var d=new SyntaxError(r);return d.name="YAMLSyntaxError",d.source=c,d.position=h,d}n.createError=e}}),Yr=D({"node_modules/yaml-unist-parser/lib/transforms/error.js"(n){"use strict";Y(),n.__esModule=!0;var e=jr();function r(c,h){var d=c.source.range||c.source.valueRange;return e.createError(c.message,h.text,h.transformRange(d))}n.transformError=r}}),Dr=D({"node_modules/yaml-unist-parser/lib/factories/point.js"(n){"use strict";Y(),n.__esModule=!0;function e(r,c,h){return{offset:r,line:c,column:h}}n.createPoint=e}}),Fr=D({"node_modules/yaml-unist-parser/lib/transforms/offset.js"(n){"use strict";Y(),n.__esModule=!0;var e=Dr();function r(c,h){c<0?c=0:c>h.text.length&&(c=h.text.length);var d=h.locator.locationForIndex(c);return e.createPoint(c,d.line+1,d.column+1)}n.transformOffset=r}}),Wr=D({"node_modules/yaml-unist-parser/lib/transforms/range.js"(n){"use strict";Y(),n.__esModule=!0;var e=Le();function r(c,h){return e.createPosition(h.transformOffset(c.origStart),h.transformOffset(c.origEnd))}n.transformRange=r}}),Vr=D({"node_modules/yaml-unist-parser/lib/utils/add-orig-range.js"(n){"use strict";Y(),n.__esModule=!0;var e=!0;function r(y){if(!y.setOrigRanges()){var E=function(I){if(h(I))return I.origStart=I.start,I.origEnd=I.end,e;if(d(I))return I.origOffset=I.offset,e};y.forEach(function(I){return c(I,E)})}}n.addOrigRange=r;function c(y,E){if(!(!y||typeof y!="object")&&E(y)!==e)for(var I=0,S=Object.keys(y);IM.offset}}}),Me=D({"node_modules/yaml/dist/PlainValue-ec8e588e.js"(n){"use strict";Y();var e={ANCHOR:"&",COMMENT:"#",TAG:"!",DIRECTIVES_END:"-",DOCUMENT_END:"."},r={ALIAS:"ALIAS",BLANK_LINE:"BLANK_LINE",BLOCK_FOLDED:"BLOCK_FOLDED",BLOCK_LITERAL:"BLOCK_LITERAL",COMMENT:"COMMENT",DIRECTIVE:"DIRECTIVE",DOCUMENT:"DOCUMENT",FLOW_MAP:"FLOW_MAP",FLOW_SEQ:"FLOW_SEQ",MAP:"MAP",MAP_KEY:"MAP_KEY",MAP_VALUE:"MAP_VALUE",PLAIN:"PLAIN",QUOTE_DOUBLE:"QUOTE_DOUBLE",QUOTE_SINGLE:"QUOTE_SINGLE",SEQ:"SEQ",SEQ_ITEM:"SEQ_ITEM"},c="tag:yaml.org,2002:",h={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function d(i){let t=[0],s=i.indexOf(` +`);for(;s!==-1;)s+=1,t.push(s),s=i.indexOf(` +`,s);return t}function y(i){let t,s;return typeof i=="string"?(t=d(i),s=i):(Array.isArray(i)&&(i=i[0]),i&&i.context&&(i.lineStarts||(i.lineStarts=d(i.context.src)),t=i.lineStarts,s=i.context.src)),{lineStarts:t,src:s}}function E(i,t){if(typeof i!="number"||i<0)return null;let{lineStarts:s,src:a}=y(t);if(!s||!a||i>a.length)return null;for(let g=0;g=1)||i>s.length)return null;let m=s[i-1],g=s[i];for(;g&&g>m&&a[g-1]===` +`;)--g;return a.slice(m,g)}function S(i,t){let{start:s,end:a}=i,m=arguments.length>2&&arguments[2]!==void 0?arguments[2]:80,g=I(s.line,t);if(!g)return null;let{col:u}=s;if(g.length>m)if(u<=m-10)g=g.substr(0,m-1)+"\u2026";else{let K=Math.round(m/2);g.length>u+K&&(g=g.substr(0,u+K-1)+"\u2026"),u-=g.length-m,g="\u2026"+g.substr(1-m)}let p=1,L="";a&&(a.line===s.line&&u+(a.col-s.col)<=m+1?p=a.col-s.col:(p=Math.min(g.length+1,m)-u,L="\u2026"));let k=u>1?" ".repeat(u-1):"",$="^".repeat(p);return`${g} +${k}${$}${L}`}var M=class{static copy(i){return new M(i.start,i.end)}constructor(i,t){this.start=i,this.end=t||i}isEmpty(){return typeof this.start!="number"||!this.end||this.end<=this.start}setOrigRange(i,t){let{start:s,end:a}=this;if(i.length===0||a<=i[0])return this.origStart=s,this.origEnd=a,t;let m=t;for(;ms);)++m;this.origStart=s+m;let g=m;for(;m=a);)++m;return this.origEnd=a+m,g}},T=class{static addStringTerminator(i,t,s){if(s[s.length-1]===` +`)return s;let a=T.endOfWhiteSpace(i,t);return a>=i.length||i[a]===` +`?s+` +`:s}static atDocumentBoundary(i,t,s){let a=i[t];if(!a)return!0;let m=i[t-1];if(m&&m!==` +`)return!1;if(s){if(a!==s)return!1}else if(a!==e.DIRECTIVES_END&&a!==e.DOCUMENT_END)return!1;let g=i[t+1],u=i[t+2];if(g!==a||u!==a)return!1;let p=i[t+3];return!p||p===` +`||p===" "||p===" "}static endOfIdentifier(i,t){let s=i[t],a=s==="<",m=a?[` +`," "," ",">"]:[` +`," "," ","[","]","{","}",","];for(;s&&m.indexOf(s)===-1;)s=i[t+=1];return a&&s===">"&&(t+=1),t}static endOfIndent(i,t){let s=i[t];for(;s===" ";)s=i[t+=1];return t}static endOfLine(i,t){let s=i[t];for(;s&&s!==` +`;)s=i[t+=1];return t}static endOfWhiteSpace(i,t){let s=i[t];for(;s===" "||s===" ";)s=i[t+=1];return t}static startOfLine(i,t){let s=i[t-1];if(s===` +`)return t;for(;s&&s!==` +`;)s=i[t-=1];return t+1}static endOfBlockIndent(i,t,s){let a=T.endOfIndent(i,s);if(a>s+t)return a;{let m=T.endOfWhiteSpace(i,a),g=i[m];if(!g||g===` +`)return m}return null}static atBlank(i,t,s){let a=i[t];return a===` +`||a===" "||a===" "||s&&!a}static nextNodeIsIndented(i,t,s){return!i||t<0?!1:t>0?!0:s&&i==="-"}static normalizeOffset(i,t){let s=i[t];return s?s!==` +`&&i[t-1]===` +`?t-1:T.endOfWhiteSpace(i,t):t}static foldNewline(i,t,s){let a=0,m=!1,g="",u=i[t+1];for(;u===" "||u===" "||u===` +`;){switch(u){case` +`:a=0,t+=1,g+=` +`;break;case" ":a<=s&&(m=!0),t=T.endOfWhiteSpace(i,t+2)-1;break;case" ":a+=1,t+=1;break}u=i[t+1]}return g||(g=" "),u&&a<=s&&(m=!0),{fold:g,offset:t,error:m}}constructor(i,t,s){Object.defineProperty(this,"context",{value:s||null,writable:!0}),this.error=null,this.range=null,this.valueRange=null,this.props=t||[],this.type=i,this.value=null}getPropValue(i,t,s){if(!this.context)return null;let{src:a}=this.context,m=this.props[i];return m&&a[m.start]===t?a.slice(m.start+(s?1:0),m.end):null}get anchor(){for(let i=0;i0?i.join(` +`):null}commentHasRequiredWhitespace(i){let{src:t}=this.context;if(this.header&&i===this.header.end||!this.valueRange)return!1;let{end:s}=this.valueRange;return i!==s||T.atBlank(t,s-1)}get hasComment(){if(this.context){let{src:i}=this.context;for(let t=0;ts.setOrigRange(i,t)),t}toString(){let{context:{src:i},range:t,value:s}=this;if(s!=null)return s;let a=i.slice(t.start,t.end);return T.addStringTerminator(i,t.end,a)}},P=class extends Error{constructor(i,t,s){if(!s||!(t instanceof T))throw new Error(`Invalid arguments for new ${i}`);super(),this.name=i,this.message=s,this.source=t}makePretty(){if(!this.source)return;this.nodeType=this.source.type;let i=this.source.context&&this.source.context.root;if(typeof this.offset=="number"){this.range=new M(this.offset,this.offset+1);let t=i&&E(this.offset,i);if(t){let s={line:t.line,col:t.col+1};this.linePos={start:t,end:s}}delete this.offset}else this.range=this.source.range,this.linePos=this.source.rangeAsLinePos;if(this.linePos){let{line:t,col:s}=this.linePos.start;this.message+=` at line ${t}, column ${s}`;let a=i&&S(this.linePos,i);a&&(this.message+=`: + +${a} +`)}delete this.source}},C=class extends P{constructor(i,t){super("YAMLReferenceError",i,t)}},q=class extends P{constructor(i,t){super("YAMLSemanticError",i,t)}},R=class extends P{constructor(i,t){super("YAMLSyntaxError",i,t)}},B=class extends P{constructor(i,t){super("YAMLWarning",i,t)}};function U(i,t,s){return t in i?Object.defineProperty(i,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):i[t]=s,i}var f=class extends T{static endOfLine(i,t,s){let a=i[t],m=t;for(;a&&a!==` +`&&!(s&&(a==="["||a==="]"||a==="{"||a==="}"||a===","));){let g=i[m+1];if(a===":"&&(!g||g===` +`||g===" "||g===" "||s&&g===",")||(a===" "||a===" ")&&g==="#")break;m+=1,a=g}return m}get strValue(){if(!this.valueRange||!this.context)return null;let{start:i,end:t}=this.valueRange,{src:s}=this.context,a=s[t-1];for(;iL?s.slice(L,u+1):p)}else m+=p}let g=s[i];switch(g){case" ":{let u="Plain value cannot start with a tab character";return{errors:[new q(this,u)],str:m}}case"@":case"`":{let u=`Plain value cannot start with reserved character ${g}`;return{errors:[new q(this,u)],str:m}}default:return m}}parseBlockValue(i){let{indent:t,inFlow:s,src:a}=this.context,m=i,g=i;for(let u=a[m];u===` +`&&!T.atDocumentBoundary(a,m+1);u=a[m]){let p=T.endOfBlockIndent(a,t,m+1);if(p===null||a[p]==="#")break;a[p]===` +`?m=p:(g=f.endOfLine(a,p,s),m=g)}return this.valueRange.isEmpty()&&(this.valueRange.start=i),this.valueRange.end=g,g}parse(i,t){this.context=i;let{inFlow:s,src:a}=i,m=t,g=a[m];return g&&g!=="#"&&g!==` +`&&(m=f.endOfLine(a,t,s)),this.valueRange=new M(t,m),m=T.endOfWhiteSpace(a,m),m=this.parseComment(m),(!this.hasComment||this.valueRange.isEmpty())&&(m=this.parseBlockValue(m)),m}};n.Char=e,n.Node=T,n.PlainValue=f,n.Range=M,n.Type=r,n.YAMLError=P,n.YAMLReferenceError=C,n.YAMLSemanticError=q,n.YAMLSyntaxError=R,n.YAMLWarning=B,n._defineProperty=U,n.defaultTagPrefix=c,n.defaultTags=h}}),Jr=D({"node_modules/yaml/dist/parse-cst.js"(n){"use strict";Y();var e=Me(),r=class extends e.Node{constructor(){super(e.Type.BLANK_LINE)}get includesTrailingLines(){return!0}parse(f,i){return this.context=f,this.range=new e.Range(i,i+1),i+1}},c=class extends e.Node{constructor(f,i){super(f,i),this.node=null}get includesTrailingLines(){return!!this.node&&this.node.includesTrailingLines}parse(f,i){this.context=f;let{parseNode:t,src:s}=f,{atLineStart:a,lineStart:m}=f;!a&&this.type===e.Type.SEQ_ITEM&&(this.error=new e.YAMLSemanticError(this,"Sequence items must not have preceding content on the same line"));let g=a?i-m:f.indent,u=e.Node.endOfWhiteSpace(s,i+1),p=s[u],L=p==="#",k=[],$=null;for(;p===` +`||p==="#";){if(p==="#"){let V=e.Node.endOfLine(s,u+1);k.push(new e.Range(u,V)),u=V}else{a=!0,m=u+1;let V=e.Node.endOfWhiteSpace(s,m);s[V]===` +`&&k.length===0&&($=new r,m=$.parse({src:s},m)),u=e.Node.endOfIndent(s,m)}p=s[u]}if(e.Node.nextNodeIsIndented(p,u-(m+g),this.type!==e.Type.SEQ_ITEM)?this.node=t({atLineStart:a,inCollection:!1,indent:g,lineStart:m,parent:this},u):p&&m>i+1&&(u=m-1),this.node){if($){let V=f.parent.items||f.parent.contents;V&&V.push($)}k.length&&Array.prototype.push.apply(this.props,k),u=this.node.range.end}else if(L){let V=k[0];this.props.push(V),u=V.end}else u=e.Node.endOfLine(s,i+1);let K=this.node?this.node.valueRange.end:u;return this.valueRange=new e.Range(i,K),u}setOrigRanges(f,i){return i=super.setOrigRanges(f,i),this.node?this.node.setOrigRanges(f,i):i}toString(){let{context:{src:f},node:i,range:t,value:s}=this;if(s!=null)return s;let a=i?f.slice(t.start,i.range.start)+String(i):f.slice(t.start,t.end);return e.Node.addStringTerminator(f,t.end,a)}},h=class extends e.Node{constructor(){super(e.Type.COMMENT)}parse(f,i){this.context=f;let t=this.parseComment(i);return this.range=new e.Range(i,t),t}};function d(f){let i=f;for(;i instanceof c;)i=i.node;if(!(i instanceof y))return null;let t=i.items.length,s=-1;for(let g=t-1;g>=0;--g){let u=i.items[g];if(u.type===e.Type.COMMENT){let{indent:p,lineStart:L}=u.context;if(p>0&&u.range.start>=L+p)break;s=g}else if(u.type===e.Type.BLANK_LINE)s=g;else break}if(s===-1)return null;let a=i.items.splice(s,t-s),m=a[0].range.start;for(;i.range.end=m,i.valueRange&&i.valueRange.end>m&&(i.valueRange.end=m),i!==f;)i=i.context.parent;return a}var y=class extends e.Node{static nextContentHasIndent(f,i,t){let s=e.Node.endOfLine(f,i)+1;i=e.Node.endOfWhiteSpace(f,s);let a=f[i];return a?i>=s+t?!0:a!=="#"&&a!==` +`?!1:y.nextContentHasIndent(f,i,t):!1}constructor(f){super(f.type===e.Type.SEQ_ITEM?e.Type.SEQ:e.Type.MAP);for(let t=f.props.length-1;t>=0;--t)if(f.props[t].start0}parse(f,i){this.context=f;let{parseNode:t,src:s}=f,a=e.Node.startOfLine(s,i),m=this.items[0];m.context.parent=this,this.valueRange=e.Range.copy(m.valueRange);let g=m.range.start-m.context.lineStart,u=i;u=e.Node.normalizeOffset(s,u);let p=s[u],L=e.Node.endOfWhiteSpace(s,a)===u,k=!1;for(;p;){for(;p===` +`||p==="#";){if(L&&p===` +`&&!k){let V=new r;if(u=V.parse({src:s},u),this.valueRange.end=u,u>=s.length){p=null;break}this.items.push(V),u-=1}else if(p==="#"){if(u=s.length){p=null;break}}if(a=u+1,u=e.Node.endOfIndent(s,a),e.Node.atBlank(s,u)){let V=e.Node.endOfWhiteSpace(s,u),z=s[V];(!z||z===` +`||z==="#")&&(u=V)}p=s[u],L=!0}if(!p)break;if(u!==a+g&&(L||p!==":")){if(ui&&(u=a);break}else if(!this.error){let V="All collection items must start at the same column";this.error=new e.YAMLSyntaxError(this,V)}}if(m.type===e.Type.SEQ_ITEM){if(p!=="-"){a>i&&(u=a);break}}else if(p==="-"&&!this.error){let V=s[u+1];if(!V||V===` +`||V===" "||V===" "){let z="A collection cannot be both a mapping and a sequence";this.error=new e.YAMLSyntaxError(this,z)}}let $=t({atLineStart:L,inCollection:!0,indent:g,lineStart:a,parent:this},u);if(!$)return u;if(this.items.push($),this.valueRange.end=$.valueRange.end,u=e.Node.normalizeOffset(s,$.range.end),p=s[u],L=!1,k=$.includesTrailingLines,p){let V=u-1,z=s[V];for(;z===" "||z===" ";)z=s[--V];z===` +`&&(a=V+1,L=!0)}let K=d($);K&&Array.prototype.push.apply(this.items,K)}return u}setOrigRanges(f,i){return i=super.setOrigRanges(f,i),this.items.forEach(t=>{i=t.setOrigRanges(f,i)}),i}toString(){let{context:{src:f},items:i,range:t,value:s}=this;if(s!=null)return s;let a=f.slice(t.start,i[0].range.start)+String(i[0]);for(let m=1;m0&&(this.contents=this.directives,this.directives=[]),a}return i[a]?(this.directivesEndMarker=new e.Range(a,a+3),a+3):(s?this.error=new e.YAMLSemanticError(this,"Missing directives-end indicator line"):this.directives.length>0&&(this.contents=this.directives,this.directives=[]),a)}parseContents(f){let{parseNode:i,src:t}=this.context;this.contents||(this.contents=[]);let s=f;for(;t[s-1]==="-";)s-=1;let a=e.Node.endOfWhiteSpace(t,f),m=s===f;for(this.valueRange=new e.Range(a);!e.Node.atDocumentBoundary(t,a,e.Char.DOCUMENT_END);){switch(t[a]){case` +`:if(m){let g=new r;a=g.parse({src:t},a),a{i=t.setOrigRanges(f,i)}),this.directivesEndMarker&&(i=this.directivesEndMarker.setOrigRange(f,i)),this.contents.forEach(t=>{i=t.setOrigRanges(f,i)}),this.documentEndMarker&&(i=this.documentEndMarker.setOrigRange(f,i)),i}toString(){let{contents:f,directives:i,value:t}=this;if(t!=null)return t;let s=i.join("");return f.length>0&&((i.length>0||f[0].type===e.Type.COMMENT)&&(s+=`--- +`),s+=f.join("")),s[s.length-1]!==` +`&&(s+=` +`),s}},S=class extends e.Node{parse(f,i){this.context=f;let{src:t}=f,s=e.Node.endOfIdentifier(t,i+1);return this.valueRange=new e.Range(i+1,s),s=e.Node.endOfWhiteSpace(t,s),s=this.parseComment(s),s}},M={CLIP:"CLIP",KEEP:"KEEP",STRIP:"STRIP"},T=class extends e.Node{constructor(f,i){super(f,i),this.blockIndent=null,this.chomping=M.CLIP,this.header=null}get includesTrailingLines(){return this.chomping===M.KEEP}get strValue(){if(!this.valueRange||!this.context)return null;let{start:f,end:i}=this.valueRange,{indent:t,src:s}=this.context;if(this.valueRange.isEmpty())return"";let a=null,m=s[i-1];for(;m===` +`||m===" "||m===" ";){if(i-=1,i<=f){if(this.chomping===M.KEEP)break;return""}m===` +`&&(a=i),m=s[i-1]}let g=i+1;a&&(this.chomping===M.KEEP?(g=a,i=this.valueRange.end):i=a);let u=t+this.blockIndent,p=this.type===e.Type.BLOCK_FOLDED,L=!0,k="",$="",K=!1;for(let V=f;Vg&&(g=k);t[p]===` +`?a=p:a=m=e.Node.endOfLine(t,p)}return this.chomping!==M.KEEP&&(a=t[m]?m+1:m),this.valueRange=new e.Range(f+1,a),a}parse(f,i){this.context=f;let{src:t}=f,s=this.parseBlockHeader(i);return s=e.Node.endOfWhiteSpace(t,s),s=this.parseComment(s),s=this.parseBlockValue(s),s}setOrigRanges(f,i){return i=super.setOrigRanges(f,i),this.header?this.header.setOrigRange(f,i):i}},P=class extends e.Node{constructor(f,i){super(f,i),this.items=null}prevNodeIsJsonLike(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.items.length,i=this.items[f-1];return!!i&&(i.jsonLike||i.type===e.Type.COMMENT&&this.prevNodeIsJsonLike(f-1))}parse(f,i){this.context=f;let{parseNode:t,src:s}=f,{indent:a,lineStart:m}=f,g=s[i];this.items=[{char:g,offset:i}];let u=e.Node.endOfWhiteSpace(s,i+1);for(g=s[u];g&&g!=="]"&&g!=="}";){switch(g){case` +`:{m=u+1;let p=e.Node.endOfWhiteSpace(s,m);if(s[p]===` +`){let L=new r;m=L.parse({src:s},m),this.items.push(L)}if(u=e.Node.endOfIndent(s,m),u<=m+a&&(g=s[u],u{if(t instanceof e.Node)i=t.setOrigRanges(f,i);else if(f.length===0)t.origOffset=t.offset;else{let s=i;for(;st.offset);)++s;t.origOffset=t.offset+s,i=s}}),i}toString(){let{context:{src:f},items:i,range:t,value:s}=this;if(s!=null)return s;let a=i.filter(u=>u instanceof e.Node),m="",g=t.start;return a.forEach(u=>{let p=f.slice(g,u.range.start);g=u.range.end,m+=p+String(u),m[m.length-1]===` +`&&f[g-1]!==` +`&&f[g]===` +`&&(g+=1)}),m+=f.slice(g,t.end),e.Node.addStringTerminator(f,t.end,m)}},C=class extends e.Node{static endOfQuote(f,i){let t=f[i];for(;t&&t!=='"';)i+=t==="\\"?2:1,t=f[i];return i+1}get strValue(){if(!this.valueRange||!this.context)return null;let f=[],{start:i,end:t}=this.valueRange,{indent:s,src:a}=this.context;a[t-1]!=='"'&&f.push(new e.YAMLSyntaxError(this,'Missing closing "quote'));let m="";for(let g=i+1;gp?a.slice(p,g+1):u)}else m+=u}return f.length>0?{errors:f,str:m}:m}parseCharCode(f,i,t){let{src:s}=this.context,a=s.substr(f,i),g=a.length===i&&/^[0-9a-fA-F]+$/.test(a)?parseInt(a,16):NaN;return isNaN(g)?(t.push(new e.YAMLSyntaxError(this,`Invalid escape sequence ${s.substr(f-2,i+2)}`)),s.substr(f-2,i+2)):String.fromCodePoint(g)}parse(f,i){this.context=f;let{src:t}=f,s=C.endOfQuote(t,i+1);return this.valueRange=new e.Range(i,s),s=e.Node.endOfWhiteSpace(t,s),s=this.parseComment(s),s}},q=class extends e.Node{static endOfQuote(f,i){let t=f[i];for(;t;)if(t==="'"){if(f[i+1]!=="'")break;t=f[i+=2]}else t=f[i+=1];return i+1}get strValue(){if(!this.valueRange||!this.context)return null;let f=[],{start:i,end:t}=this.valueRange,{indent:s,src:a}=this.context;a[t-1]!=="'"&&f.push(new e.YAMLSyntaxError(this,"Missing closing 'quote"));let m="";for(let g=i+1;gp?a.slice(p,g+1):u)}else m+=u}return f.length>0?{errors:f,str:m}:m}parse(f,i){this.context=f;let{src:t}=f,s=q.endOfQuote(t,i+1);return this.valueRange=new e.Range(i,s),s=e.Node.endOfWhiteSpace(t,s),s=this.parseComment(s),s}};function R(f,i){switch(f){case e.Type.ALIAS:return new S(f,i);case e.Type.BLOCK_FOLDED:case e.Type.BLOCK_LITERAL:return new T(f,i);case e.Type.FLOW_MAP:case e.Type.FLOW_SEQ:return new P(f,i);case e.Type.MAP_KEY:case e.Type.MAP_VALUE:case e.Type.SEQ_ITEM:return new c(f,i);case e.Type.COMMENT:case e.Type.PLAIN:return new e.PlainValue(f,i);case e.Type.QUOTE_DOUBLE:return new C(f,i);case e.Type.QUOTE_SINGLE:return new q(f,i);default:return null}}var B=class{static parseType(f,i,t){switch(f[i]){case"*":return e.Type.ALIAS;case">":return e.Type.BLOCK_FOLDED;case"|":return e.Type.BLOCK_LITERAL;case"{":return e.Type.FLOW_MAP;case"[":return e.Type.FLOW_SEQ;case"?":return!t&&e.Node.atBlank(f,i+1,!0)?e.Type.MAP_KEY:e.Type.PLAIN;case":":return!t&&e.Node.atBlank(f,i+1,!0)?e.Type.MAP_VALUE:e.Type.PLAIN;case"-":return!t&&e.Node.atBlank(f,i+1,!0)?e.Type.SEQ_ITEM:e.Type.PLAIN;case'"':return e.Type.QUOTE_DOUBLE;case"'":return e.Type.QUOTE_SINGLE;default:return e.Type.PLAIN}}constructor(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},{atLineStart:i,inCollection:t,inFlow:s,indent:a,lineStart:m,parent:g}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};e._defineProperty(this,"parseNode",(u,p)=>{if(e.Node.atDocumentBoundary(this.src,p))return null;let L=new B(this,u),{props:k,type:$,valueStart:K}=L.parseProps(p),V=R($,k),z=V.parse(L,K);if(V.range=new e.Range(p,z),z<=p&&(V.error=new Error("Node#parse consumed no characters"),V.error.parseEnd=z,V.error.source=V,V.range.end=p+1),L.nodeStartsCollection(V)){!V.error&&!L.atLineStart&&L.parent.type===e.Type.DOCUMENT&&(V.error=new e.YAMLSyntaxError(V,"Block collection must not have preceding content here (e.g. directives-end indicator)"));let ae=new y(V);return z=ae.parse(new B(L),z),ae.range=new e.Range(p,z),ae}return V}),this.atLineStart=i!=null?i:f.atLineStart||!1,this.inCollection=t!=null?t:f.inCollection||!1,this.inFlow=s!=null?s:f.inFlow||!1,this.indent=a!=null?a:f.indent,this.lineStart=m!=null?m:f.lineStart,this.parent=g!=null?g:f.parent||{},this.root=f.root,this.src=f.src}nodeStartsCollection(f){let{inCollection:i,inFlow:t,src:s}=this;if(i||t)return!1;if(f instanceof c)return!0;let a=f.range.end;return s[a]===` +`||s[a-1]===` +`?!1:(a=e.Node.endOfWhiteSpace(s,a),s[a]===":")}parseProps(f){let{inFlow:i,parent:t,src:s}=this,a=[],m=!1;f=this.atLineStart?e.Node.endOfIndent(s,f):e.Node.endOfWhiteSpace(s,f);let g=s[f];for(;g===e.Char.ANCHOR||g===e.Char.COMMENT||g===e.Char.TAG||g===` +`;){if(g===` +`){let p=f,L;do L=p+1,p=e.Node.endOfIndent(s,L);while(s[p]===` +`);let k=p-(L+this.indent),$=t.type===e.Type.SEQ_ITEM&&t.context.atLineStart;if(s[p]!=="#"&&!e.Node.nextNodeIsIndented(s[p],k,!$))break;this.atLineStart=!0,this.lineStart=L,m=!1,f=p}else if(g===e.Char.COMMENT){let p=e.Node.endOfLine(s,f+1);a.push(new e.Range(f,p)),f=p}else{let p=e.Node.endOfIdentifier(s,f+1);g===e.Char.TAG&&s[p]===","&&/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(s.slice(f+1,p+13))&&(p=e.Node.endOfIdentifier(s,p+5)),a.push(new e.Range(f,p)),m=!0,f=e.Node.endOfWhiteSpace(s,p)}g=s[f]}m&&g===":"&&e.Node.atBlank(s,f+1,!0)&&(f-=1);let u=B.parseType(s,f,i);return{props:a,type:u,valueStart:f}}};function U(f){let i=[];f.indexOf("\r")!==-1&&(f=f.replace(/\r\n?/g,(a,m)=>(a.length>1&&i.push(m),` +`)));let t=[],s=0;do{let a=new I,m=new B({src:f});s=a.parse(m,s),t.push(a)}while(s{if(i.length===0)return!1;for(let m=1;mt.join(`... +`),t}n.parse=U}}),ke=D({"node_modules/yaml/dist/resolveSeq-d03cb037.js"(n){"use strict";Y();var e=Me();function r(o,l,_){return _?`#${_.replace(/[\s\S]^/gm,`$&${l}#`)} +${l}${o}`:o}function c(o,l,_){return _?_.indexOf(` +`)===-1?`${o} #${_}`:`${o} +`+_.replace(/^/gm,`${l||""}#`):o}var h=class{};function d(o,l,_){if(Array.isArray(o))return o.map((v,b)=>d(v,String(b),_));if(o&&typeof o.toJSON=="function"){let v=_&&_.anchors&&_.anchors.get(o);v&&(_.onCreate=w=>{v.res=w,delete _.onCreate});let b=o.toJSON(l,_);return v&&_.onCreate&&_.onCreate(b),b}return(!_||!_.keep)&&typeof o=="bigint"?Number(o):o}var y=class extends h{constructor(o){super(),this.value=o}toJSON(o,l){return l&&l.keep?this.value:d(this.value,o,l)}toString(){return String(this.value)}};function E(o,l,_){let v=_;for(let b=l.length-1;b>=0;--b){let w=l[b];if(Number.isInteger(w)&&w>=0){let A=[];A[w]=v,v=A}else{let A={};Object.defineProperty(A,w,{value:v,writable:!0,enumerable:!0,configurable:!0}),v=A}}return o.createNode(v,!1)}var I=o=>o==null||typeof o=="object"&&o[Symbol.iterator]().next().done,S=class extends h{constructor(o){super(),e._defineProperty(this,"items",[]),this.schema=o}addIn(o,l){if(I(o))this.add(l);else{let[_,...v]=o,b=this.get(_,!0);if(b instanceof S)b.addIn(v,l);else if(b===void 0&&this.schema)this.set(_,E(this.schema,v,l));else throw new Error(`Expected YAML collection at ${_}. Remaining path: ${v}`)}}deleteIn(o){let[l,..._]=o;if(_.length===0)return this.delete(l);let v=this.get(l,!0);if(v instanceof S)return v.deleteIn(_);throw new Error(`Expected YAML collection at ${l}. Remaining path: ${_}`)}getIn(o,l){let[_,...v]=o,b=this.get(_,!0);return v.length===0?!l&&b instanceof y?b.value:b:b instanceof S?b.getIn(v,l):void 0}hasAllNullValues(){return this.items.every(o=>{if(!o||o.type!=="PAIR")return!1;let l=o.value;return l==null||l instanceof y&&l.value==null&&!l.commentBefore&&!l.comment&&!l.tag})}hasIn(o){let[l,..._]=o;if(_.length===0)return this.has(l);let v=this.get(l,!0);return v instanceof S?v.hasIn(_):!1}setIn(o,l){let[_,...v]=o;if(v.length===0)this.set(_,l);else{let b=this.get(_,!0);if(b instanceof S)b.setIn(v,l);else if(b===void 0&&this.schema)this.set(_,E(this.schema,v,l));else throw new Error(`Expected YAML collection at ${_}. Remaining path: ${v}`)}}toJSON(){return null}toString(o,l,_,v){let{blockItem:b,flowChars:w,isMap:A,itemIndent:N}=l,{indent:j,indentStep:F,stringify:Q}=o,H=this.type===e.Type.FLOW_MAP||this.type===e.Type.FLOW_SEQ||o.inFlow;H&&(N+=F);let oe=A&&this.hasAllNullValues();o=Object.assign({},o,{allNullValues:oe,indent:N,inFlow:H,type:null});let le=!1,Z=!1,ee=this.items.reduce((de,ne,he)=>{let ce;ne&&(!le&&ne.spaceBefore&&de.push({type:"comment",str:""}),ne.commentBefore&&ne.commentBefore.match(/^.*$/gm).forEach(Ie=>{de.push({type:"comment",str:`#${Ie}`})}),ne.comment&&(ce=ne.comment),H&&(!le&&ne.spaceBefore||ne.commentBefore||ne.comment||ne.key&&(ne.key.commentBefore||ne.key.comment)||ne.value&&(ne.value.commentBefore||ne.value.comment))&&(Z=!0)),le=!1;let fe=Q(ne,o,()=>ce=null,()=>le=!0);return H&&!Z&&fe.includes(` +`)&&(Z=!0),H&&hece.str);if(Z||he.reduce((ce,fe)=>ce+fe.length+2,2)>S.maxFlowStringSingleLineLength){X=de;for(let ce of he)X+=ce?` +${F}${j}${ce}`:` +`;X+=` +${j}${ne}`}else X=`${de} ${he.join(" ")} ${ne}`}else{let de=ee.map(b);X=de.shift();for(let ne of de)X+=ne?` +${j}${ne}`:` +`}return this.comment?(X+=` +`+this.comment.replace(/^/gm,`${j}#`),_&&_()):le&&v&&v(),X}};e._defineProperty(S,"maxFlowStringSingleLineLength",60);function M(o){let l=o instanceof y?o.value:o;return l&&typeof l=="string"&&(l=Number(l)),Number.isInteger(l)&&l>=0?l:null}var T=class extends S{add(o){this.items.push(o)}delete(o){let l=M(o);return typeof l!="number"?!1:this.items.splice(l,1).length>0}get(o,l){let _=M(o);if(typeof _!="number")return;let v=this.items[_];return!l&&v instanceof y?v.value:v}has(o){let l=M(o);return typeof l=="number"&&lv.type==="comment"?v.str:`- ${v.str}`,flowChars:{start:"[",end:"]"},isMap:!1,itemIndent:(o.indent||"")+" "},l,_):JSON.stringify(this)}},P=(o,l,_)=>l===null?"":typeof l!="object"?String(l):o instanceof h&&_&&_.doc?o.toString({anchors:Object.create(null),doc:_.doc,indent:"",indentStep:_.indentStep,inFlow:!0,inStringifyKey:!0,stringify:_.stringify}):JSON.stringify(l),C=class extends h{constructor(o){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;super(),this.key=o,this.value=l,this.type=C.Type.PAIR}get commentBefore(){return this.key instanceof h?this.key.commentBefore:void 0}set commentBefore(o){if(this.key==null&&(this.key=new y(null)),this.key instanceof h)this.key.commentBefore=o;else{let l="Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.";throw new Error(l)}}addToJSMap(o,l){let _=d(this.key,"",o);if(l instanceof Map){let v=d(this.value,_,o);l.set(_,v)}else if(l instanceof Set)l.add(_);else{let v=P(this.key,_,o),b=d(this.value,v,o);v in l?Object.defineProperty(l,v,{value:b,writable:!0,enumerable:!0,configurable:!0}):l[v]=b}return l}toJSON(o,l){let _=l&&l.mapAsMap?new Map:{};return this.addToJSMap(l,_)}toString(o,l,_){if(!o||!o.doc)return JSON.stringify(this);let{indent:v,indentSeq:b,simpleKeys:w}=o.doc.options,{key:A,value:N}=this,j=A instanceof h&&A.comment;if(w){if(j)throw new Error("With simple keys, key nodes cannot have comments");if(A instanceof S){let ce="With simple keys, collection cannot be used as a key value";throw new Error(ce)}}let F=!w&&(!A||j||(A instanceof h?A instanceof S||A.type===e.Type.BLOCK_FOLDED||A.type===e.Type.BLOCK_LITERAL:typeof A=="object")),{doc:Q,indent:H,indentStep:oe,stringify:le}=o;o=Object.assign({},o,{implicitKey:!F,indent:H+oe});let Z=!1,ee=le(A,o,()=>j=null,()=>Z=!0);if(ee=c(ee,o.indent,j),!F&&ee.length>1024){if(w)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");F=!0}if(o.allNullValues&&!w)return this.comment?(ee=c(ee,o.indent,this.comment),l&&l()):Z&&!j&&_&&_(),o.inFlow&&!F?ee:`? ${ee}`;ee=F?`? ${ee} +${H}:`:`${ee}:`,this.comment&&(ee=c(ee,o.indent,this.comment),l&&l());let X="",de=null;if(N instanceof h){if(N.spaceBefore&&(X=` +`),N.commentBefore){let ce=N.commentBefore.replace(/^/gm,`${o.indent}#`);X+=` +${ce}`}de=N.comment}else N&&typeof N=="object"&&(N=Q.schema.createNode(N,!0));o.implicitKey=!1,!F&&!this.comment&&N instanceof y&&(o.indentAtStart=ee.length+1),Z=!1,!b&&v>=2&&!o.inFlow&&!F&&N instanceof T&&N.type!==e.Type.FLOW_SEQ&&!N.tag&&!Q.anchors.getName(N)&&(o.indent=o.indent.substr(2));let ne=le(N,o,()=>de=null,()=>Z=!0),he=" ";return X||this.comment?he=`${X} +${o.indent}`:!F&&N instanceof S?(!(ne[0]==="["||ne[0]==="{")||ne.includes(` +`))&&(he=` +${o.indent}`):ne[0]===` +`&&(he=""),Z&&!de&&_&&_(),c(ee+he+ne,o.indent,de)}};e._defineProperty(C,"Type",{PAIR:"PAIR",MERGE_PAIR:"MERGE_PAIR"});var q=(o,l)=>{if(o instanceof R){let _=l.get(o.source);return _.count*_.aliasCount}else if(o instanceof S){let _=0;for(let v of o.items){let b=q(v,l);b>_&&(_=b)}return _}else if(o instanceof C){let _=q(o.key,l),v=q(o.value,l);return Math.max(_,v)}return 1},R=class extends h{static stringify(o,l){let{range:_,source:v}=o,{anchors:b,doc:w,implicitKey:A,inStringifyKey:N}=l,j=Object.keys(b).find(Q=>b[Q]===v);if(!j&&N&&(j=w.anchors.getName(v)||w.anchors.newName()),j)return`*${j}${A?" ":""}`;let F=w.anchors.getName(v)?"Alias node must be after source node":"Source node not found for alias node";throw new Error(`${F} [${_}]`)}constructor(o){super(),this.source=o,this.type=e.Type.ALIAS}set tag(o){throw new Error("Alias nodes cannot have tags")}toJSON(o,l){if(!l)return d(this.source,o,l);let{anchors:_,maxAliasCount:v}=l,b=_.get(this.source);if(!b||b.res===void 0){let w="This should not happen: Alias anchor was not resolved?";throw this.cstNode?new e.YAMLReferenceError(this.cstNode,w):new ReferenceError(w)}if(v>=0&&(b.count+=1,b.aliasCount===0&&(b.aliasCount=q(this.source,_)),b.count*b.aliasCount>v)){let w="Excessive alias count indicates a resource exhaustion attack";throw this.cstNode?new e.YAMLReferenceError(this.cstNode,w):new ReferenceError(w)}return b.res}toString(o){return R.stringify(this,o)}};e._defineProperty(R,"default",!0);function B(o,l){let _=l instanceof y?l.value:l;for(let v of o)if(v instanceof C&&(v.key===l||v.key===_||v.key&&v.key.value===_))return v}var U=class extends S{add(o,l){o?o instanceof C||(o=new C(o.key||o,o.value)):o=new C(o);let _=B(this.items,o.key),v=this.schema&&this.schema.sortMapEntries;if(_)if(l)_.value=o.value;else throw new Error(`Key ${o.key} already set`);else if(v){let b=this.items.findIndex(w=>v(o,w)<0);b===-1?this.items.push(o):this.items.splice(b,0,o)}else this.items.push(o)}delete(o){let l=B(this.items,o);return l?this.items.splice(this.items.indexOf(l),1).length>0:!1}get(o,l){let _=B(this.items,o),v=_&&_.value;return!l&&v instanceof y?v.value:v}has(o){return!!B(this.items,o)}set(o,l){this.add(new C(o,l),!0)}toJSON(o,l,_){let v=_?new _:l&&l.mapAsMap?new Map:{};l&&l.onCreate&&l.onCreate(v);for(let b of this.items)b.addToJSMap(l,v);return v}toString(o,l,_){if(!o)return JSON.stringify(this);for(let v of this.items)if(!(v instanceof C))throw new Error(`Map items must all be pairs; found ${JSON.stringify(v)} instead`);return super.toString(o,{blockItem:v=>v.str,flowChars:{start:"{",end:"}"},isMap:!0,itemIndent:o.indent||""},l,_)}},f="<<",i=class extends C{constructor(o){if(o instanceof C){let l=o.value;l instanceof T||(l=new T,l.items.push(o.value),l.range=o.value.range),super(o.key,l),this.range=o.range}else super(new y(f),new T);this.type=C.Type.MERGE_PAIR}addToJSMap(o,l){for(let{source:_}of this.value.items){if(!(_ instanceof U))throw new Error("Merge sources must be maps");let v=_.toJSON(null,o,Map);for(let[b,w]of v)l instanceof Map?l.has(b)||l.set(b,w):l instanceof Set?l.add(b):Object.prototype.hasOwnProperty.call(l,b)||Object.defineProperty(l,b,{value:w,writable:!0,enumerable:!0,configurable:!0})}return l}toString(o,l){let _=this.value;if(_.items.length>1)return super.toString(o,l);this.value=_.items[0];let v=super.toString(o,l);return this.value=_,v}},t={defaultType:e.Type.BLOCK_LITERAL,lineWidth:76},s={trueStr:"true",falseStr:"false"},a={asBigInt:!1},m={nullStr:"null"},g={defaultType:e.Type.PLAIN,doubleQuoted:{jsonEncoding:!1,minMultiLineLength:40},fold:{lineWidth:80,minContentWidth:20}};function u(o,l,_){for(let{format:v,test:b,resolve:w}of l)if(b){let A=o.match(b);if(A){let N=w.apply(null,A);return N instanceof y||(N=new y(N)),v&&(N.format=v),N}}return _&&(o=_(o)),new y(o)}var p="flow",L="block",k="quoted",$=(o,l)=>{let _=o[l+1];for(;_===" "||_===" ";){do _=o[l+=1];while(_&&_!==` +`);_=o[l+1]}return l};function K(o,l,_,v){let{indentAtStart:b,lineWidth:w=80,minContentWidth:A=20,onFold:N,onOverflow:j}=v;if(!w||w<0)return o;let F=Math.max(1+A,1+w-l.length);if(o.length<=F)return o;let Q=[],H={},oe=w-l.length;typeof b=="number"&&(b>w-Math.max(2,A)?Q.push(0):oe=w-b);let le,Z,ee=!1,X=-1,de=-1,ne=-1;_===L&&(X=$(o,X),X!==-1&&(oe=X+F));for(let ce;ce=o[X+=1];){if(_===k&&ce==="\\"){switch(de=X,o[X+1]){case"x":X+=3;break;case"u":X+=5;break;case"U":X+=9;break;default:X+=1}ne=X}if(ce===` +`)_===L&&(X=$(o,X)),oe=X+F,le=void 0;else{if(ce===" "&&Z&&Z!==" "&&Z!==` +`&&Z!==" "){let fe=o[X+1];fe&&fe!==" "&&fe!==` +`&&fe!==" "&&(le=X)}if(X>=oe)if(le)Q.push(le),oe=le+F,le=void 0;else if(_===k){for(;Z===" "||Z===" ";)Z=ce,ce=o[X+=1],ee=!0;let fe=X>ne+1?X-2:de-1;if(H[fe])return o;Q.push(fe),H[fe]=!0,oe=fe+F,le=void 0}else ee=!0}Z=ce}if(ee&&j&&j(),Q.length===0)return o;N&&N();let he=o.slice(0,Q[0]);for(let ce=0;ce{let{indentAtStart:l}=o;return l?Object.assign({indentAtStart:l},g.fold):g.fold},z=o=>/^(%|---|\.\.\.)/m.test(o);function ae(o,l,_){if(!l||l<0)return!1;let v=l-_,b=o.length;if(b<=v)return!1;for(let w=0,A=0;wv)return!0;if(A=w+1,b-A<=v)return!1}return!0}function ue(o,l){let{implicitKey:_}=l,{jsonEncoding:v,minMultiLineLength:b}=g.doubleQuoted,w=JSON.stringify(o);if(v)return w;let A=l.indent||(z(o)?" ":""),N="",j=0;for(let F=0,Q=w[F];Q;Q=w[++F])if(Q===" "&&w[F+1]==="\\"&&w[F+2]==="n"&&(N+=w.slice(j,F)+"\\ ",F+=1,j=F,Q="\\"),Q==="\\")switch(w[F+1]){case"u":{N+=w.slice(j,F);let H=w.substr(F+2,4);switch(H){case"0000":N+="\\0";break;case"0007":N+="\\a";break;case"000b":N+="\\v";break;case"001b":N+="\\e";break;case"0085":N+="\\N";break;case"00a0":N+="\\_";break;case"2028":N+="\\L";break;case"2029":N+="\\P";break;default:H.substr(0,2)==="00"?N+="\\x"+H.substr(2):N+=w.substr(F,6)}F+=5,j=F+1}break;case"n":if(_||w[F+2]==='"'||w.length";if(!A)return Q+` +`;let H="",oe="";if(A=A.replace(/[\n\t ]*$/,Z=>{let ee=Z.indexOf(` +`);return ee===-1?Q+="-":(A===Z||ee!==Z.length-1)&&(Q+="+",v&&v()),oe=Z.replace(/\n$/,""),""}).replace(/^[\n ]*/,Z=>{Z.indexOf(" ")!==-1&&(Q+=j);let ee=Z.match(/ +$/);return ee?(H=Z.slice(0,-ee[0].length),ee[0]):(H=Z,"")}),oe&&(oe=oe.replace(/\n+(?!\n|$)/g,`$&${N}`)),H&&(H=H.replace(/\n+/g,`$&${N}`)),b&&(Q+=" #"+b.replace(/ ?[\r\n]+/g," "),_&&_()),!A)return`${Q}${j} +${N}${oe}`;if(F)return A=A.replace(/\n+/g,`$&${N}`),`${Q} +${N}${H}${A}${oe}`;A=A.replace(/\n+/g,` +$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${N}`);let le=K(`${H}${A}${oe}`,N,L,g.fold);return`${Q} +${N}${le}`}function O(o,l,_,v){let{comment:b,type:w,value:A}=o,{actualString:N,implicitKey:j,indent:F,inFlow:Q}=l;if(j&&/[\n[\]{},]/.test(A)||Q&&/[[\]{},]/.test(A))return ue(A,l);if(!A||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(A))return j||Q||A.indexOf(` +`)===-1?A.indexOf('"')!==-1&&A.indexOf("'")===-1?pe(A,l):ue(A,l):ge(o,l,_,v);if(!j&&!Q&&w!==e.Type.PLAIN&&A.indexOf(` +`)!==-1)return ge(o,l,_,v);if(F===""&&z(A))return l.forceBlockIndent=!0,ge(o,l,_,v);let H=A.replace(/\n+/g,`$& +${F}`);if(N){let{tags:le}=l.doc.schema;if(typeof u(H,le,le.scalarFallback).value!="string")return ue(A,l)}let oe=j?H:K(H,F,p,V(l));return b&&!Q&&(oe.indexOf(` +`)!==-1||b.indexOf(` +`)!==-1)?(_&&_(),r(oe,F,b)):oe}function W(o,l,_,v){let{defaultType:b}=g,{implicitKey:w,inFlow:A}=l,{type:N,value:j}=o;typeof j!="string"&&(j=String(j),o=Object.assign({},o,{value:j}));let F=H=>{switch(H){case e.Type.BLOCK_FOLDED:case e.Type.BLOCK_LITERAL:return ge(o,l,_,v);case e.Type.QUOTE_DOUBLE:return ue(j,l);case e.Type.QUOTE_SINGLE:return pe(j,l);case e.Type.PLAIN:return O(o,l,_,v);default:return null}};(N!==e.Type.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(j)||(w||A)&&(N===e.Type.BLOCK_FOLDED||N===e.Type.BLOCK_LITERAL))&&(N=e.Type.QUOTE_DOUBLE);let Q=F(N);if(Q===null&&(Q=F(b),Q===null))throw new Error(`Unsupported default string type ${b}`);return Q}function J(o){let{format:l,minFractionDigits:_,tag:v,value:b}=o;if(typeof b=="bigint")return String(b);if(!isFinite(b))return isNaN(b)?".nan":b<0?"-.inf":".inf";let w=JSON.stringify(b);if(!l&&_&&(!v||v==="tag:yaml.org,2002:float")&&/^\d/.test(w)){let A=w.indexOf(".");A<0&&(A=w.length,w+=".");let N=_-(w.length-A-1);for(;N-- >0;)w+="0"}return w}function x(o,l){let _,v;switch(l.type){case e.Type.FLOW_MAP:_="}",v="flow map";break;case e.Type.FLOW_SEQ:_="]",v="flow sequence";break;default:o.push(new e.YAMLSemanticError(l,"Not a flow collection!?"));return}let b;for(let w=l.items.length-1;w>=0;--w){let A=l.items[w];if(!A||A.type!==e.Type.COMMENT){b=A;break}}if(b&&b.char!==_){let w=`Expected ${v} to end with ${_}`,A;typeof b.offset=="number"?(A=new e.YAMLSemanticError(l,w),A.offset=b.offset+1):(A=new e.YAMLSemanticError(b,w),b.range&&b.range.end&&(A.offset=b.range.end-b.range.start)),o.push(A)}}function G(o,l){let _=l.context.src[l.range.start-1];if(_!==` +`&&_!==" "&&_!==" "){let v="Comments must be separated from other tokens by white space characters";o.push(new e.YAMLSemanticError(l,v))}}function re(o,l){let _=String(l),v=_.substr(0,8)+"..."+_.substr(-8);return new e.YAMLSemanticError(o,`The "${v}" key is too long`)}function _e(o,l){for(let{afterKey:_,before:v,comment:b}of l){let w=o.items[v];w?(_&&w.value&&(w=w.value),b===void 0?(_||!w.commentBefore)&&(w.spaceBefore=!0):w.commentBefore?w.commentBefore+=` +`+b:w.commentBefore=b):b!==void 0&&(o.comment?o.comment+=` +`+b:o.comment=b)}}function ye(o,l){let _=l.strValue;return _?typeof _=="string"?_:(_.errors.forEach(v=>{v.source||(v.source=l),o.errors.push(v)}),_.str):""}function be(o,l){let{handle:_,suffix:v}=l.tag,b=o.tagPrefixes.find(w=>w.handle===_);if(!b){let w=o.getDefaults().tagPrefixes;if(w&&(b=w.find(A=>A.handle===_)),!b)throw new e.YAMLSemanticError(l,`The ${_} tag handle is non-default and was not declared.`)}if(!v)throw new e.YAMLSemanticError(l,`The ${_} tag has no suffix.`);if(_==="!"&&(o.version||o.options.version)==="1.0"){if(v[0]==="^")return o.warnings.push(new e.YAMLWarning(l,"YAML 1.0 ^ tag expansion is not supported")),v;if(/[:/]/.test(v)){let w=v.match(/^([a-z0-9-]+)\/(.*)/i);return w?`tag:${w[1]}.yaml.org,2002:${w[2]}`:`tag:${v}`}}return b.prefix+decodeURIComponent(v)}function ve(o,l){let{tag:_,type:v}=l,b=!1;if(_){let{handle:w,suffix:A,verbatim:N}=_;if(N){if(N!=="!"&&N!=="!!")return N;let j=`Verbatim tags aren't resolved, so ${N} is invalid.`;o.errors.push(new e.YAMLSemanticError(l,j))}else if(w==="!"&&!A)b=!0;else try{return be(o,l)}catch(j){o.errors.push(j)}}switch(v){case e.Type.BLOCK_FOLDED:case e.Type.BLOCK_LITERAL:case e.Type.QUOTE_DOUBLE:case e.Type.QUOTE_SINGLE:return e.defaultTags.STR;case e.Type.FLOW_MAP:case e.Type.MAP:return e.defaultTags.MAP;case e.Type.FLOW_SEQ:case e.Type.SEQ:return e.defaultTags.SEQ;case e.Type.PLAIN:return b?e.defaultTags.STR:null;default:return null}}function Ne(o,l,_){let{tags:v}=o.schema,b=[];for(let A of v)if(A.tag===_)if(A.test)b.push(A);else{let N=A.resolve(o,l);return N instanceof S?N:new y(N)}let w=ye(o,l);return typeof w=="string"&&b.length>0?u(w,b,v.scalarFallback):null}function Pe(o){let{type:l}=o;switch(l){case e.Type.FLOW_MAP:case e.Type.MAP:return e.defaultTags.MAP;case e.Type.FLOW_SEQ:case e.Type.SEQ:return e.defaultTags.SEQ;default:return e.defaultTags.STR}}function ot(o,l,_){try{let v=Ne(o,l,_);if(v)return _&&l.tag&&(v.tag=_),v}catch(v){return v.source||(v.source=l),o.errors.push(v),null}try{let v=Pe(l);if(!v)throw new Error(`The tag ${_} is unavailable`);let b=`The tag ${_} is unavailable, falling back to ${v}`;o.warnings.push(new e.YAMLWarning(l,b));let w=Ne(o,l,v);return w.tag=_,w}catch(v){let b=new e.YAMLReferenceError(l,v.message);return b.stack=v.stack,o.errors.push(b),null}}var lt=o=>{if(!o)return!1;let{type:l}=o;return l===e.Type.MAP_KEY||l===e.Type.MAP_VALUE||l===e.Type.SEQ_ITEM};function ct(o,l){let _={before:[],after:[]},v=!1,b=!1,w=lt(l.context.parent)?l.context.parent.props.concat(l.props):l.props;for(let{start:A,end:N}of w)switch(l.context.src[A]){case e.Char.COMMENT:{if(!l.commentHasRequiredWhitespace(A)){let H="Comments must be separated from other tokens by white space characters";o.push(new e.YAMLSemanticError(l,H))}let{header:j,valueRange:F}=l;(F&&(A>F.start||j&&A>j.start)?_.after:_.before).push(l.context.src.slice(A+1,N));break}case e.Char.ANCHOR:if(v){let j="A node can have at most one anchor";o.push(new e.YAMLSemanticError(l,j))}v=!0;break;case e.Char.TAG:if(b){let j="A node can have at most one tag";o.push(new e.YAMLSemanticError(l,j))}b=!0;break}return{comments:_,hasAnchor:v,hasTag:b}}function ut(o,l){let{anchors:_,errors:v,schema:b}=o;if(l.type===e.Type.ALIAS){let A=l.rawValue,N=_.getNode(A);if(!N){let F=`Aliased anchor not found: ${A}`;return v.push(new e.YAMLReferenceError(l,F)),null}let j=new R(N);return _._cstAliases.push(j),j}let w=ve(o,l);if(w)return ot(o,l,w);if(l.type!==e.Type.PLAIN){let A=`Failed to resolve ${l.type} node here`;return v.push(new e.YAMLSyntaxError(l,A)),null}try{let A=ye(o,l);return u(A,b.tags,b.tags.scalarFallback)}catch(A){return A.source||(A.source=l),v.push(A),null}}function we(o,l){if(!l)return null;l.error&&o.errors.push(l.error);let{comments:_,hasAnchor:v,hasTag:b}=ct(o.errors,l);if(v){let{anchors:A}=o,N=l.anchor,j=A.getNode(N);j&&(A.map[A.newName(N)]=j),A.map[N]=l}if(l.type===e.Type.ALIAS&&(v||b)){let A="An alias node must not specify any properties";o.errors.push(new e.YAMLSemanticError(l,A))}let w=ut(o,l);if(w){w.range=[l.range.start,l.range.end],o.options.keepCstNodes&&(w.cstNode=l),o.options.keepNodeTypes&&(w.type=l.type);let A=_.before.join(` +`);A&&(w.commentBefore=w.commentBefore?`${w.commentBefore} +${A}`:A);let N=_.after.join(` +`);N&&(w.comment=w.comment?`${w.comment} +${N}`:N)}return l.resolved=w}function ft(o,l){if(l.type!==e.Type.MAP&&l.type!==e.Type.FLOW_MAP){let A=`A ${l.type} node cannot be resolved as a mapping`;return o.errors.push(new e.YAMLSyntaxError(l,A)),null}let{comments:_,items:v}=l.type===e.Type.FLOW_MAP?gt(o,l):ht(o,l),b=new U;b.items=v,_e(b,_);let w=!1;for(let A=0;A{if(Q instanceof R){let{type:H}=Q.source;return H===e.Type.MAP||H===e.Type.FLOW_MAP?!1:F="Merge nodes aliases can only point to maps"}return F="Merge nodes can only have Alias nodes as values"}),F&&o.errors.push(new e.YAMLSemanticError(l,F))}else for(let j=A+1;j{let{context:{lineStart:l,node:_,src:v},props:b}=o;if(b.length===0)return!1;let{start:w}=b[0];if(_&&w>_.valueRange.start||v[w]!==e.Char.COMMENT)return!1;for(let A=l;A0){j=new e.PlainValue(e.Type.PLAIN,[]),j.context={parent:N,src:N.context.src};let Q=N.range.start+1;if(j.range={start:Q,end:Q},j.valueRange={start:Q,end:Q},typeof N.range.origStart=="number"){let H=N.range.origStart+1;j.range.origStart=j.range.origEnd=H,j.valueRange.origStart=j.valueRange.origEnd=H}}let F=new C(b,we(o,j));dt(N,F),v.push(F),b&&typeof w=="number"&&N.range.start>w+1024&&o.errors.push(re(l,b)),b=void 0,w=null}break;default:b!==void 0&&v.push(new C(b)),b=we(o,N),w=N.range.start,N.error&&o.errors.push(N.error);e:for(let j=A+1;;++j){let F=l.items[j];switch(F&&F.type){case e.Type.BLANK_LINE:case e.Type.COMMENT:continue e;case e.Type.MAP_VALUE:break e;default:{let Q="Implicit map keys need to be followed by map values";o.errors.push(new e.YAMLSemanticError(N,Q));break e}}}if(N.valueRangeContainsNewline){let j="Implicit map keys need to be on a single line";o.errors.push(new e.YAMLSemanticError(N,j))}}}return b!==void 0&&v.push(new C(b)),{comments:_,items:v}}function gt(o,l){let _=[],v=[],b,w=!1,A="{";for(let N=0;Nw instanceof C&&w.key instanceof S)){let w="Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this.";o.warnings.push(new e.YAMLWarning(l,w))}return l.resolved=b,b}function _t(o,l){let _=[],v=[];for(let b=0;bA+1024&&o.errors.push(re(l,w));let{src:Z}=j.context;for(let ee=A;eeu instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve:(u,p)=>{let L=r.resolveString(u,p);if(typeof Buffer=="function")return Buffer.from(L,"base64");if(typeof atob=="function"){let k=atob(L.replace(/[\n\r]/g,"")),$=new Uint8Array(k.length);for(let K=0;K{let{comment:$,type:K,value:V}=u,z;if(typeof Buffer=="function")z=V instanceof Buffer?V.toString("base64"):Buffer.from(V.buffer).toString("base64");else if(typeof btoa=="function"){let ae="";for(let ue=0;ue1){let V="Each pair must have its own sequence indicator";throw new e.YAMLSemanticError(p,V)}let K=$.items[0]||new r.Pair;$.commentBefore&&(K.commentBefore=K.commentBefore?`${$.commentBefore} +${K.commentBefore}`:$.commentBefore),$.comment&&(K.comment=K.comment?`${$.comment} +${K.comment}`:$.comment),$=K}L.items[k]=$ instanceof r.Pair?$:new r.Pair($)}}return L}function d(u,p,L){let k=new r.YAMLSeq(u);k.tag="tag:yaml.org,2002:pairs";for(let $ of p){let K,V;if(Array.isArray($))if($.length===2)K=$[0],V=$[1];else throw new TypeError(`Expected [key, value] tuple: ${$}`);else if($&&$ instanceof Object){let ae=Object.keys($);if(ae.length===1)K=ae[0],V=$[K];else throw new TypeError(`Expected { key: value } tuple: ${$}`)}else K=$;let z=u.createPair(K,V,L);k.items.push(z)}return k}var y={default:!1,tag:"tag:yaml.org,2002:pairs",resolve:h,createNode:d},E=class extends r.YAMLSeq{constructor(){super(),e._defineProperty(this,"add",r.YAMLMap.prototype.add.bind(this)),e._defineProperty(this,"delete",r.YAMLMap.prototype.delete.bind(this)),e._defineProperty(this,"get",r.YAMLMap.prototype.get.bind(this)),e._defineProperty(this,"has",r.YAMLMap.prototype.has.bind(this)),e._defineProperty(this,"set",r.YAMLMap.prototype.set.bind(this)),this.tag=E.tag}toJSON(u,p){let L=new Map;p&&p.onCreate&&p.onCreate(L);for(let k of this.items){let $,K;if(k instanceof r.Pair?($=r.toJSON(k.key,"",p),K=r.toJSON(k.value,$,p)):$=r.toJSON(k,"",p),L.has($))throw new Error("Ordered maps must not include duplicate keys");L.set($,K)}return L}};e._defineProperty(E,"tag","tag:yaml.org,2002:omap");function I(u,p){let L=h(u,p),k=[];for(let{key:$}of L.items)if($ instanceof r.Scalar)if(k.includes($.value)){let K="Ordered maps must not include duplicate keys";throw new e.YAMLSemanticError(p,K)}else k.push($.value);return Object.assign(new E,L)}function S(u,p,L){let k=d(u,p,L),$=new E;return $.items=k.items,$}var M={identify:u=>u instanceof Map,nodeClass:E,default:!1,tag:"tag:yaml.org,2002:omap",resolve:I,createNode:S},T=class extends r.YAMLMap{constructor(){super(),this.tag=T.tag}add(u){let p=u instanceof r.Pair?u:new r.Pair(u);r.findPair(this.items,p.key)||this.items.push(p)}get(u,p){let L=r.findPair(this.items,u);return!p&&L instanceof r.Pair?L.key instanceof r.Scalar?L.key.value:L.key:L}set(u,p){if(typeof p!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof p}`);let L=r.findPair(this.items,u);L&&!p?this.items.splice(this.items.indexOf(L),1):!L&&p&&this.items.push(new r.Pair(u))}toJSON(u,p){return super.toJSON(u,p,Set)}toString(u,p,L){if(!u)return JSON.stringify(this);if(this.hasAllNullValues())return super.toString(u,p,L);throw new Error("Set items must all have null values")}};e._defineProperty(T,"tag","tag:yaml.org,2002:set");function P(u,p){let L=r.resolveMap(u,p);if(!L.hasAllNullValues())throw new e.YAMLSemanticError(p,"Set items must all have null values");return Object.assign(new T,L)}function C(u,p,L){let k=new T;for(let $ of p)k.items.push(u.createPair($,null,L));return k}var q={identify:u=>u instanceof Set,nodeClass:T,default:!1,tag:"tag:yaml.org,2002:set",resolve:P,createNode:C},R=(u,p)=>{let L=p.split(":").reduce((k,$)=>k*60+Number($),0);return u==="-"?-L:L},B=u=>{let{value:p}=u;if(isNaN(p)||!isFinite(p))return r.stringifyNumber(p);let L="";p<0&&(L="-",p=Math.abs(p));let k=[p%60];return p<60?k.unshift(0):(p=Math.round((p-k[0])/60),k.unshift(p%60),p>=60&&(p=Math.round((p-k[0])/60),k.unshift(p))),L+k.map($=>$<10?"0"+String($):String($)).join(":").replace(/000000\d*$/,"")},U={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,resolve:(u,p,L)=>R(p,L.replace(/_/g,"")),stringify:B},f={identify:u=>typeof u=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,resolve:(u,p,L)=>R(p,L.replace(/_/g,"")),stringify:B},i={identify:u=>u instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"),resolve:(u,p,L,k,$,K,V,z,ae)=>{z&&(z=(z+"00").substr(1,3));let ue=Date.UTC(p,L-1,k,$||0,K||0,V||0,z||0);if(ae&&ae!=="Z"){let pe=R(ae[0],ae.slice(1));Math.abs(pe)<30&&(pe*=60),ue-=6e4*pe}return new Date(ue)},stringify:u=>{let{value:p}=u;return p.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")}};function t(u){let p=typeof Te<"u"&&Te.env||{};return u?typeof YAML_SILENCE_DEPRECATION_WARNINGS<"u"?!YAML_SILENCE_DEPRECATION_WARNINGS:!p.YAML_SILENCE_DEPRECATION_WARNINGS:typeof YAML_SILENCE_WARNINGS<"u"?!YAML_SILENCE_WARNINGS:!p.YAML_SILENCE_WARNINGS}function s(u,p){if(t(!1)){let L=typeof Te<"u"&&Te.emitWarning;L?L(u,p):console.warn(p?`${p}: ${u}`:u)}}function a(u){if(t(!0)){let p=u.replace(/.*yaml[/\\]/i,"").replace(/\.js$/,"").replace(/\\/g,"/");s(`The endpoint 'yaml/${p}' will be removed in a future release.`,"DeprecationWarning")}}var m={};function g(u,p){if(!m[u]&&t(!0)){m[u]=!0;let L=`The option '${u}' will be removed in a future release`;L+=p?`, use '${p}' instead.`:".",s(L,"DeprecationWarning")}}n.binary=c,n.floatTime=f,n.intTime=U,n.omap=M,n.pairs=y,n.set=q,n.timestamp=i,n.warn=s,n.warnFileDeprecation=a,n.warnOptionDeprecation=g}}),it=D({"node_modules/yaml/dist/Schema-88e323a7.js"(n){"use strict";Y();var e=Me(),r=ke(),c=st();function h(O,W,J){let x=new r.YAMLMap(O);if(W instanceof Map)for(let[G,re]of W)x.items.push(O.createPair(G,re,J));else if(W&&typeof W=="object")for(let G of Object.keys(W))x.items.push(O.createPair(G,W[G],J));return typeof O.sortMapEntries=="function"&&x.items.sort(O.sortMapEntries),x}var d={createNode:h,default:!0,nodeClass:r.YAMLMap,tag:"tag:yaml.org,2002:map",resolve:r.resolveMap};function y(O,W,J){let x=new r.YAMLSeq(O);if(W&&W[Symbol.iterator])for(let G of W){let re=O.createNode(G,J.wrapScalars,null,J);x.items.push(re)}return x}var E={createNode:y,default:!0,nodeClass:r.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve:r.resolveSeq},I={identify:O=>typeof O=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify(O,W,J,x){return W=Object.assign({actualString:!0},W),r.stringifyString(O,W,J,x)},options:r.strOptions},S=[d,E,I],M=O=>typeof O=="bigint"||Number.isInteger(O),T=(O,W,J)=>r.intOptions.asBigInt?BigInt(O):parseInt(W,J);function P(O,W,J){let{value:x}=O;return M(x)&&x>=0?J+x.toString(W):r.stringifyNumber(O)}var C={identify:O=>O==null,createNode:(O,W,J)=>J.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},q={identify:O=>typeof O=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:O=>O[0]==="t"||O[0]==="T",options:r.boolOptions,stringify:O=>{let{value:W}=O;return W?r.boolOptions.trueStr:r.boolOptions.falseStr}},R={identify:O=>M(O)&&O>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o([0-7]+)$/,resolve:(O,W)=>T(O,W,8),options:r.intOptions,stringify:O=>P(O,8,"0o")},B={identify:M,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:O=>T(O,O,10),options:r.intOptions,stringify:r.stringifyNumber},U={identify:O=>M(O)&&O>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x([0-9a-fA-F]+)$/,resolve:(O,W)=>T(O,W,16),options:r.intOptions,stringify:O=>P(O,16,"0x")},f={identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(O,W)=>W?NaN:O[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},i={identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:O=>parseFloat(O),stringify:O=>{let{value:W}=O;return Number(W).toExponential()}},t={identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,resolve(O,W,J){let x=W||J,G=new r.Scalar(parseFloat(O));return x&&x[x.length-1]==="0"&&(G.minFractionDigits=x.length),G},stringify:r.stringifyNumber},s=S.concat([C,q,R,B,U,f,i,t]),a=O=>typeof O=="bigint"||Number.isInteger(O),m=O=>{let{value:W}=O;return JSON.stringify(W)},g=[d,E,{identify:O=>typeof O=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:r.resolveString,stringify:m},{identify:O=>O==null,createNode:(O,W,J)=>J.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:m},{identify:O=>typeof O=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:O=>O==="true",stringify:m},{identify:a,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:O=>r.intOptions.asBigInt?BigInt(O):parseInt(O,10),stringify:O=>{let{value:W}=O;return a(W)?W.toString():JSON.stringify(W)}},{identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:O=>parseFloat(O),stringify:m}];g.scalarFallback=O=>{throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(O)}`)};var u=O=>{let{value:W}=O;return W?r.boolOptions.trueStr:r.boolOptions.falseStr},p=O=>typeof O=="bigint"||Number.isInteger(O);function L(O,W,J){let x=W.replace(/_/g,"");if(r.intOptions.asBigInt){switch(J){case 2:x=`0b${x}`;break;case 8:x=`0o${x}`;break;case 16:x=`0x${x}`;break}let re=BigInt(x);return O==="-"?BigInt(-1)*re:re}let G=parseInt(x,J);return O==="-"?-1*G:G}function k(O,W,J){let{value:x}=O;if(p(x)){let G=x.toString(W);return x<0?"-"+J+G.substr(1):J+G}return r.stringifyNumber(O)}var $=S.concat([{identify:O=>O==null,createNode:(O,W,J)=>J.wrapScalars?new r.Scalar(null):null,default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>null,options:r.nullOptions,stringify:()=>r.nullOptions.nullStr},{identify:O=>typeof O=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>!0,options:r.boolOptions,stringify:u},{identify:O=>typeof O=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,resolve:()=>!1,options:r.boolOptions,stringify:u},{identify:p,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^([-+]?)0b([0-1_]+)$/,resolve:(O,W,J)=>L(W,J,2),stringify:O=>k(O,2,"0b")},{identify:p,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^([-+]?)0([0-7_]+)$/,resolve:(O,W,J)=>L(W,J,8),stringify:O=>k(O,8,"0")},{identify:p,default:!0,tag:"tag:yaml.org,2002:int",test:/^([-+]?)([0-9][0-9_]*)$/,resolve:(O,W,J)=>L(W,J,10),stringify:r.stringifyNumber},{identify:p,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^([-+]?)0x([0-9a-fA-F_]+)$/,resolve:(O,W,J)=>L(W,J,16),stringify:O=>k(O,16,"0x")},{identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:(O,W)=>W?NaN:O[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:r.stringifyNumber},{identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:O=>parseFloat(O.replace(/_/g,"")),stringify:O=>{let{value:W}=O;return Number(W).toExponential()}},{identify:O=>typeof O=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,resolve(O,W){let J=new r.Scalar(parseFloat(O.replace(/_/g,"")));if(W){let x=W.replace(/_/g,"");x[x.length-1]==="0"&&(J.minFractionDigits=x.length)}return J},stringify:r.stringifyNumber}],c.binary,c.omap,c.pairs,c.set,c.intTime,c.floatTime,c.timestamp),K={core:s,failsafe:S,json:g,yaml11:$},V={binary:c.binary,bool:q,float:t,floatExp:i,floatNaN:f,floatTime:c.floatTime,int:B,intHex:U,intOct:R,intTime:c.intTime,map:d,null:C,omap:c.omap,pairs:c.pairs,seq:E,set:c.set,timestamp:c.timestamp};function z(O,W,J){if(W){let x=J.filter(re=>re.tag===W),G=x.find(re=>!re.format)||x[0];if(!G)throw new Error(`Tag ${W} not found`);return G}return J.find(x=>(x.identify&&x.identify(O)||x.class&&O instanceof x.class)&&!x.format)}function ae(O,W,J){if(O instanceof r.Node)return O;let{defaultPrefix:x,onTagObj:G,prevObjects:re,schema:_e,wrapScalars:ye}=J;W&&W.startsWith("!!")&&(W=x+W.slice(2));let be=z(O,W,_e.tags);if(!be){if(typeof O.toJSON=="function"&&(O=O.toJSON()),!O||typeof O!="object")return ye?new r.Scalar(O):O;be=O instanceof Map?d:O[Symbol.iterator]?E:d}G&&(G(be),delete J.onTagObj);let ve={value:void 0,node:void 0};if(O&&typeof O=="object"&&re){let Ne=re.get(O);if(Ne){let Pe=new r.Alias(Ne);return J.aliasNodes.push(Pe),Pe}ve.value=O,re.set(O,ve)}return ve.node=be.createNode?be.createNode(J.schema,O,J):ye?new r.Scalar(O):O,W&&ve.node instanceof r.Node&&(ve.node.tag=W),ve.node}function ue(O,W,J,x){let G=O[x.replace(/\W/g,"")];if(!G){let re=Object.keys(O).map(_e=>JSON.stringify(_e)).join(", ");throw new Error(`Unknown schema "${x}"; use one of ${re}`)}if(Array.isArray(J))for(let re of J)G=G.concat(re);else typeof J=="function"&&(G=J(G.slice()));for(let re=0;reJSON.stringify(ve)).join(", ");throw new Error(`Unknown custom tag "${_e}"; use one of ${be}`)}G[re]=ye}}return G}var pe=(O,W)=>O.keyW.key?1:0,ge=class{constructor(O){let{customTags:W,merge:J,schema:x,sortMapEntries:G,tags:re}=O;this.merge=!!J,this.name=x,this.sortMapEntries=G===!0?pe:G||null,!W&&re&&c.warnOptionDeprecation("tags","customTags"),this.tags=ue(K,V,W||re,x)}createNode(O,W,J,x){let G={defaultPrefix:ge.defaultPrefix,schema:this,wrapScalars:W},re=x?Object.assign(x,G):G;return ae(O,J,re)}createPair(O,W,J){J||(J={wrapScalars:!0});let x=this.createNode(O,J.wrapScalars,null,J),G=this.createNode(W,J.wrapScalars,null,J);return new r.Pair(x,G)}};e._defineProperty(ge,"defaultPrefix",e.defaultTagPrefix),e._defineProperty(ge,"defaultTags",e.defaultTags),n.Schema=ge}}),xr=D({"node_modules/yaml/dist/Document-9b4560a1.js"(n){"use strict";Y();var e=Me(),r=ke(),c=it(),h={anchorPrefix:"a",customTags:null,indent:2,indentSeq:!0,keepCstNodes:!1,keepNodeTypes:!0,keepBlobsInJSON:!0,mapAsMap:!1,maxAliasCount:100,prettyErrors:!1,simpleKeys:!1,version:"1.2"},d={get binary(){return r.binaryOptions},set binary(t){Object.assign(r.binaryOptions,t)},get bool(){return r.boolOptions},set bool(t){Object.assign(r.boolOptions,t)},get int(){return r.intOptions},set int(t){Object.assign(r.intOptions,t)},get null(){return r.nullOptions},set null(t){Object.assign(r.nullOptions,t)},get str(){return r.strOptions},set str(t){Object.assign(r.strOptions,t)}},y={"1.0":{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:e.defaultTagPrefix},{handle:"!!",prefix:"tag:private.yaml.org,2002:"}]},1.1:{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:e.defaultTagPrefix}]},1.2:{schema:"core",merge:!1,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:e.defaultTagPrefix}]}};function E(t,s){if((t.version||t.options.version)==="1.0"){let g=s.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);if(g)return"!"+g[1];let u=s.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);return u?`!${u[1]}/${u[2]}`:`!${s.replace(/^tag:/,"")}`}let a=t.tagPrefixes.find(g=>s.indexOf(g.prefix)===0);if(!a){let g=t.getDefaults().tagPrefixes;a=g&&g.find(u=>s.indexOf(u.prefix)===0)}if(!a)return s[0]==="!"?s:`!<${s}>`;let m=s.substr(a.prefix.length).replace(/[!,[\]{}]/g,g=>({"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"})[g]);return a.handle+m}function I(t,s){if(s instanceof r.Alias)return r.Alias;if(s.tag){let g=t.filter(u=>u.tag===s.tag);if(g.length>0)return g.find(u=>u.format===s.format)||g[0]}let a,m;if(s instanceof r.Scalar){m=s.value;let g=t.filter(u=>u.identify&&u.identify(m)||u.class&&m instanceof u.class);a=g.find(u=>u.format===s.format)||g.find(u=>!u.format)}else m=s,a=t.find(g=>g.nodeClass&&m instanceof g.nodeClass);if(!a){let g=m&&m.constructor?m.constructor.name:typeof m;throw new Error(`Tag not resolved for ${g} value`)}return a}function S(t,s,a){let{anchors:m,doc:g}=a,u=[],p=g.anchors.getName(t);return p&&(m[p]=t,u.push(`&${p}`)),t.tag?u.push(E(g,t.tag)):s.default||u.push(E(g,s.tag)),u.join(" ")}function M(t,s,a,m){let{anchors:g,schema:u}=s.doc,p;if(!(t instanceof r.Node)){let $={aliasNodes:[],onTagObj:K=>p=K,prevObjects:new Map};t=u.createNode(t,!0,null,$);for(let K of $.aliasNodes){K.source=K.source.node;let V=g.getName(K.source);V||(V=g.newName(),g.map[V]=K.source)}}if(t instanceof r.Pair)return t.toString(s,a,m);p||(p=I(u.tags,t));let L=S(t,p,s);L.length>0&&(s.indentAtStart=(s.indentAtStart||0)+L.length+1);let k=typeof p.stringify=="function"?p.stringify(t,s,a,m):t instanceof r.Scalar?r.stringifyString(t,s,a,m):t.toString(s,a,m);return L?t instanceof r.Scalar||k[0]==="{"||k[0]==="["?`${L} ${k}`:`${L} +${s.indent}${k}`:k}var T=class{static validAnchorNode(t){return t instanceof r.Scalar||t instanceof r.YAMLSeq||t instanceof r.YAMLMap}constructor(t){e._defineProperty(this,"map",Object.create(null)),this.prefix=t}createAlias(t,s){return this.setAnchor(t,s),new r.Alias(t)}createMergePair(){let t=new r.Merge;for(var s=arguments.length,a=new Array(s),m=0;m{if(g instanceof r.Alias){if(g.source instanceof r.YAMLMap)return g}else if(g instanceof r.YAMLMap)return this.createAlias(g);throw new Error("Merge sources must be Map nodes or their Aliases")}),t}getName(t){let{map:s}=this;return Object.keys(s).find(a=>s[a]===t)}getNames(){return Object.keys(this.map)}getNode(t){return this.map[t]}newName(t){t||(t=this.prefix);let s=Object.keys(this.map);for(let a=1;;++a){let m=`${t}${a}`;if(!s.includes(m))return m}}resolveNodes(){let{map:t,_cstAliases:s}=this;Object.keys(t).forEach(a=>{t[a]=t[a].resolved}),s.forEach(a=>{a.source=a.source.resolved}),delete this._cstAliases}setAnchor(t,s){if(t!=null&&!T.validAnchorNode(t))throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");if(s&&/[\x00-\x19\s,[\]{}]/.test(s))throw new Error("Anchor names must not contain whitespace or control characters");let{map:a}=this,m=t&&Object.keys(a).find(g=>a[g]===t);if(m)if(s)m!==s&&(delete a[m],a[s]=t);else return m;else{if(!s){if(!t)return null;s=this.newName()}a[s]=t}return s}},P=(t,s)=>{if(t&&typeof t=="object"){let{tag:a}=t;t instanceof r.Collection?(a&&(s[a]=!0),t.items.forEach(m=>P(m,s))):t instanceof r.Pair?(P(t.key,s),P(t.value,s)):t instanceof r.Scalar&&a&&(s[a]=!0)}return s},C=t=>Object.keys(P(t,{}));function q(t,s){let a={before:[],after:[]},m,g=!1;for(let u of s)if(u.valueRange){if(m!==void 0){let L="Document contains trailing content not separated by a ... or --- line";t.errors.push(new e.YAMLSyntaxError(u,L));break}let p=r.resolveNode(t,u);g&&(p.spaceBefore=!0,g=!1),m=p}else u.comment!==null?(m===void 0?a.before:a.after).push(u.comment):u.type===e.Type.BLANK_LINE&&(g=!0,m===void 0&&a.before.length>0&&!t.commentBefore&&(t.commentBefore=a.before.join(` +`),a.before=[]));if(t.contents=m||null,!m)t.comment=a.before.concat(a.after).join(` +`)||null;else{let u=a.before.join(` +`);if(u){let p=m instanceof r.Collection&&m.items[0]?m.items[0]:m;p.commentBefore=p.commentBefore?`${u} +${p.commentBefore}`:u}t.comment=a.after.join(` +`)||null}}function R(t,s){let{tagPrefixes:a}=t,[m,g]=s.parameters;if(!m||!g){let u="Insufficient parameters given for %TAG directive";throw new e.YAMLSemanticError(s,u)}if(a.some(u=>u.handle===m)){let u="The %TAG directive must only be given at most once per handle in the same document.";throw new e.YAMLSemanticError(s,u)}return{handle:m,prefix:g}}function B(t,s){let[a]=s.parameters;if(s.name==="YAML:1.0"&&(a="1.0"),!a){let m="Insufficient parameters given for %YAML directive";throw new e.YAMLSemanticError(s,m)}if(!y[a]){let g=`Document will be parsed as YAML ${t.version||t.options.version} rather than YAML ${a}`;t.warnings.push(new e.YAMLWarning(s,g))}return a}function U(t,s,a){let m=[],g=!1;for(let u of s){let{comment:p,name:L}=u;switch(L){case"TAG":try{t.tagPrefixes.push(R(t,u))}catch(k){t.errors.push(k)}g=!0;break;case"YAML":case"YAML:1.0":if(t.version){let k="The %YAML directive must only be given at most once per document.";t.errors.push(new e.YAMLSemanticError(u,k))}try{t.version=B(t,u)}catch(k){t.errors.push(k)}g=!0;break;default:if(L){let k=`YAML only supports %TAG and %YAML directives, and not %${L}`;t.warnings.push(new e.YAMLWarning(u,k))}}p&&m.push(p)}if(a&&!g&&(t.version||a.version||t.options.version)==="1.1"){let u=p=>{let{handle:L,prefix:k}=p;return{handle:L,prefix:k}};t.tagPrefixes=a.tagPrefixes.map(u),t.version=a.version}t.commentBefore=m.join(` +`)||null}function f(t){if(t instanceof r.Collection)return!0;throw new Error("Expected a YAML collection as document contents")}var i=class{constructor(t){this.anchors=new T(t.anchorPrefix),this.commentBefore=null,this.comment=null,this.contents=null,this.directivesEndMarker=null,this.errors=[],this.options=t,this.schema=null,this.tagPrefixes=[],this.version=null,this.warnings=[]}add(t){return f(this.contents),this.contents.add(t)}addIn(t,s){f(this.contents),this.contents.addIn(t,s)}delete(t){return f(this.contents),this.contents.delete(t)}deleteIn(t){return r.isEmptyPath(t)?this.contents==null?!1:(this.contents=null,!0):(f(this.contents),this.contents.deleteIn(t))}getDefaults(){return i.defaults[this.version]||i.defaults[this.options.version]||{}}get(t,s){return this.contents instanceof r.Collection?this.contents.get(t,s):void 0}getIn(t,s){return r.isEmptyPath(t)?!s&&this.contents instanceof r.Scalar?this.contents.value:this.contents:this.contents instanceof r.Collection?this.contents.getIn(t,s):void 0}has(t){return this.contents instanceof r.Collection?this.contents.has(t):!1}hasIn(t){return r.isEmptyPath(t)?this.contents!==void 0:this.contents instanceof r.Collection?this.contents.hasIn(t):!1}set(t,s){f(this.contents),this.contents.set(t,s)}setIn(t,s){r.isEmptyPath(t)?this.contents=s:(f(this.contents),this.contents.setIn(t,s))}setSchema(t,s){if(!t&&!s&&this.schema)return;typeof t=="number"&&(t=t.toFixed(1)),t==="1.0"||t==="1.1"||t==="1.2"?(this.version?this.version=t:this.options.version=t,delete this.options.schema):t&&typeof t=="string"&&(this.options.schema=t),Array.isArray(s)&&(this.options.customTags=s);let a=Object.assign({},this.getDefaults(),this.options);this.schema=new c.Schema(a)}parse(t,s){this.options.keepCstNodes&&(this.cstNode=t),this.options.keepNodeTypes&&(this.type="DOCUMENT");let{directives:a=[],contents:m=[],directivesEndMarker:g,error:u,valueRange:p}=t;if(u&&(u.source||(u.source=this),this.errors.push(u)),U(this,a,s),g&&(this.directivesEndMarker=!0),this.range=p?[p.start,p.end]:null,this.setSchema(),this.anchors._cstAliases=[],q(this,m),this.anchors.resolveNodes(),this.options.prettyErrors){for(let L of this.errors)L instanceof e.YAMLError&&L.makePretty();for(let L of this.warnings)L instanceof e.YAMLError&&L.makePretty()}return this}listNonDefaultTags(){return C(this.contents).filter(t=>t.indexOf(c.Schema.defaultPrefix)!==0)}setTagPrefix(t,s){if(t[0]!=="!"||t[t.length-1]!=="!")throw new Error("Handle must start and end with !");if(s){let a=this.tagPrefixes.find(m=>m.handle===t);a?a.prefix=s:this.tagPrefixes.push({handle:t,prefix:s})}else this.tagPrefixes=this.tagPrefixes.filter(a=>a.handle!==t)}toJSON(t,s){let{keepBlobsInJSON:a,mapAsMap:m,maxAliasCount:g}=this.options,u=a&&(typeof t!="string"||!(this.contents instanceof r.Scalar)),p={doc:this,indentStep:" ",keep:u,mapAsMap:u&&!!m,maxAliasCount:g,stringify:M},L=Object.keys(this.anchors.map);L.length>0&&(p.anchors=new Map(L.map($=>[this.anchors.map[$],{alias:[],aliasCount:0,count:1}])));let k=r.toJSON(this.contents,t,p);if(typeof s=="function"&&p.anchors)for(let{count:$,res:K}of p.anchors.values())s(K,$);return k}toString(){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");let t=this.options.indent;if(!Number.isInteger(t)||t<=0){let L=JSON.stringify(t);throw new Error(`"indent" option must be a positive integer, not ${L}`)}this.setSchema();let s=[],a=!1;if(this.version){let L="%YAML 1.2";this.schema.name==="yaml-1.1"&&(this.version==="1.0"?L="%YAML:1.0":this.version==="1.1"&&(L="%YAML 1.1")),s.push(L),a=!0}let m=this.listNonDefaultTags();this.tagPrefixes.forEach(L=>{let{handle:k,prefix:$}=L;m.some(K=>K.indexOf($)===0)&&(s.push(`%TAG ${k} ${$}`),a=!0)}),(a||this.directivesEndMarker)&&s.push("---"),this.commentBefore&&((a||!this.directivesEndMarker)&&s.unshift(""),s.unshift(this.commentBefore.replace(/^/gm,"#")));let g={anchors:Object.create(null),doc:this,indent:"",indentStep:" ".repeat(t),stringify:M},u=!1,p=null;if(this.contents){this.contents instanceof r.Node&&(this.contents.spaceBefore&&(a||this.directivesEndMarker)&&s.push(""),this.contents.commentBefore&&s.push(this.contents.commentBefore.replace(/^/gm,"#")),g.forceBlockIndent=!!this.comment,p=this.contents.comment);let L=p?null:()=>u=!0,k=M(this.contents,g,()=>p=null,L);s.push(r.addComment(k,"",p))}else this.contents!==void 0&&s.push(M(this.contents,g));return this.comment&&((!u||p)&&s[s.length-1]!==""&&s.push(""),s.push(this.comment.replace(/^/gm,"#"))),s.join(` +`)+` +`}};e._defineProperty(i,"defaults",y),n.Document=i,n.defaultOptions=h,n.scalarOptions=d}}),Hr=D({"node_modules/yaml/dist/index.js"(n){"use strict";Y();var e=Jr(),r=xr(),c=it(),h=Me(),d=st();ke();function y(C){let q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,R=arguments.length>2?arguments[2]:void 0;R===void 0&&typeof q=="string"&&(R=q,q=!0);let B=Object.assign({},r.Document.defaults[r.defaultOptions.version],r.defaultOptions);return new c.Schema(B).createNode(C,q,R)}var E=class extends r.Document{constructor(C){super(Object.assign({},r.defaultOptions,C))}};function I(C,q){let R=[],B;for(let U of e.parse(C)){let f=new E(q);f.parse(U,B),R.push(f),B=f}return R}function S(C,q){let R=e.parse(C),B=new E(q).parse(R[0]);if(R.length>1){let U="Source contains multiple documents; please use YAML.parseAllDocuments()";B.errors.unshift(new h.YAMLSemanticError(R[1],U))}return B}function M(C,q){let R=S(C,q);if(R.warnings.forEach(B=>d.warn(B)),R.errors.length>0)throw R.errors[0];return R.toJSON()}function T(C,q){let R=new E(q);return R.contents=C,String(R)}var P={createNode:y,defaultOptions:r.defaultOptions,Document:E,parse:M,parseAllDocuments:I,parseCST:e.parse,parseDocument:S,scalarOptions:r.scalarOptions,stringify:T};n.YAML=P}}),Ue=D({"node_modules/yaml/index.js"(n,e){Y(),e.exports=Hr().YAML}}),Gr=D({"node_modules/yaml/dist/util.js"(n){"use strict";Y();var e=ke(),r=Me();n.findPair=e.findPair,n.parseMap=e.resolveMap,n.parseSeq=e.resolveSeq,n.stringifyNumber=e.stringifyNumber,n.stringifyString=e.stringifyString,n.toJSON=e.toJSON,n.Type=r.Type,n.YAMLError=r.YAMLError,n.YAMLReferenceError=r.YAMLReferenceError,n.YAMLSemanticError=r.YAMLSemanticError,n.YAMLSyntaxError=r.YAMLSyntaxError,n.YAMLWarning=r.YAMLWarning}}),zr=D({"node_modules/yaml/util.js"(n){Y();var e=Gr();n.findPair=e.findPair,n.toJSON=e.toJSON,n.parseMap=e.parseMap,n.parseSeq=e.parseSeq,n.stringifyNumber=e.stringifyNumber,n.stringifyString=e.stringifyString,n.Type=e.Type,n.YAMLError=e.YAMLError,n.YAMLReferenceError=e.YAMLReferenceError,n.YAMLSemanticError=e.YAMLSemanticError,n.YAMLSyntaxError=e.YAMLSyntaxError,n.YAMLWarning=e.YAMLWarning}}),Zr=D({"node_modules/yaml-unist-parser/lib/yaml.js"(n){"use strict";Y(),n.__esModule=!0;var e=Ue();n.Document=e.Document;var r=Ue();n.parseCST=r.parseCST;var c=zr();n.YAMLError=c.YAMLError,n.YAMLSyntaxError=c.YAMLSyntaxError,n.YAMLSemanticError=c.YAMLSemanticError}}),Xr=D({"node_modules/yaml-unist-parser/lib/parse.js"(n){"use strict";Y(),n.__esModule=!0;var e=Kt(),r=xt(),c=Ht(),h=Gt(),d=Br(),y=He(),E=Yr(),I=Fr(),S=Wr(),M=Vr(),T=Qr(),P=Kr(),C=Zr();function q(R){var B=C.parseCST(R);M.addOrigRange(B);for(var U=B.map(function(k){return new C.Document({merge:!1,keepCstNodes:!0}).parse(k)}),f=new e.default(R),i=[],t={text:R,locator:f,comments:i,transformOffset:function(k){return I.transformOffset(k,t)},transformRange:function(k){return S.transformRange(k,t)},transformNode:function(k){return d.transformNode(k,t)},transformContent:function(k){return y.transformContent(k,t)}},s=0,a=U;s()=>(r||e((r={exports:{}}).exports,r),r.exports);var pt=xe((r0,pu)=>{var ir=function(e){return e&&e.Math==Math&&e};pu.exports=ir(typeof globalThis=="object"&&globalThis)||ir(typeof window=="object"&&window)||ir(typeof self=="object"&&self)||ir(typeof global=="object"&&global)||function(){return this}()||Function("return this")()});var Dt=xe((n0,fu)=>{fu.exports=function(e){try{return!!e()}catch{return!0}}});var yt=xe((u0,Du)=>{var Mo=Dt();Du.exports=!Mo(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var ar=xe((s0,mu)=>{var Ro=Dt();mu.exports=!Ro(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")})});var At=xe((i0,du)=>{var $o=ar(),or=Function.prototype.call;du.exports=$o?or.bind(or):function(){return or.apply(or,arguments)}});var vu=xe(hu=>{"use strict";var gu={}.propertyIsEnumerable,yu=Object.getOwnPropertyDescriptor,Vo=yu&&!gu.call({1:2},1);hu.f=Vo?function(r){var t=yu(this,r);return!!t&&t.enumerable}:gu});var lr=xe((o0,Cu)=>{Cu.exports=function(e,r){return{enumerable:!(e&1),configurable:!(e&2),writable:!(e&4),value:r}}});var mt=xe((l0,Au)=>{var Eu=ar(),Fu=Function.prototype,Wr=Fu.call,Wo=Eu&&Fu.bind.bind(Wr,Wr);Au.exports=Eu?Wo:function(e){return function(){return Wr.apply(e,arguments)}}});var Vt=xe((c0,xu)=>{var Su=mt(),Ho=Su({}.toString),Go=Su("".slice);xu.exports=function(e){return Go(Ho(e),8,-1)}});var Tu=xe((p0,bu)=>{var Uo=mt(),Jo=Dt(),zo=Vt(),Hr=Object,Xo=Uo("".split);bu.exports=Jo(function(){return!Hr("z").propertyIsEnumerable(0)})?function(e){return zo(e)=="String"?Xo(e,""):Hr(e)}:Hr});var cr=xe((f0,Bu)=>{Bu.exports=function(e){return e==null}});var Gr=xe((D0,Nu)=>{var Ko=cr(),Yo=TypeError;Nu.exports=function(e){if(Ko(e))throw Yo("Can't call method on "+e);return e}});var pr=xe((m0,wu)=>{var Qo=Tu(),Zo=Gr();wu.exports=function(e){return Qo(Zo(e))}});var Jr=xe((d0,_u)=>{var Ur=typeof document=="object"&&document.all,el=typeof Ur>"u"&&Ur!==void 0;_u.exports={all:Ur,IS_HTMLDDA:el}});var ot=xe((g0,Iu)=>{var Pu=Jr(),tl=Pu.all;Iu.exports=Pu.IS_HTMLDDA?function(e){return typeof e=="function"||e===tl}:function(e){return typeof e=="function"}});var St=xe((y0,Ou)=>{var ku=ot(),Lu=Jr(),rl=Lu.all;Ou.exports=Lu.IS_HTMLDDA?function(e){return typeof e=="object"?e!==null:ku(e)||e===rl}:function(e){return typeof e=="object"?e!==null:ku(e)}});var Wt=xe((h0,ju)=>{var zr=pt(),nl=ot(),ul=function(e){return nl(e)?e:void 0};ju.exports=function(e,r){return arguments.length<2?ul(zr[e]):zr[e]&&zr[e][r]}});var Xr=xe((v0,qu)=>{var sl=mt();qu.exports=sl({}.isPrototypeOf)});var Ru=xe((C0,Mu)=>{var il=Wt();Mu.exports=il("navigator","userAgent")||""});var Ju=xe((E0,Uu)=>{var Gu=pt(),Kr=Ru(),$u=Gu.process,Vu=Gu.Deno,Wu=$u&&$u.versions||Vu&&Vu.version,Hu=Wu&&Wu.v8,dt,fr;Hu&&(dt=Hu.split("."),fr=dt[0]>0&&dt[0]<4?1:+(dt[0]+dt[1]));!fr&&Kr&&(dt=Kr.match(/Edge\/(\d+)/),(!dt||dt[1]>=74)&&(dt=Kr.match(/Chrome\/(\d+)/),dt&&(fr=+dt[1])));Uu.exports=fr});var Yr=xe((F0,Xu)=>{var zu=Ju(),al=Dt();Xu.exports=!!Object.getOwnPropertySymbols&&!al(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&zu&&zu<41})});var Qr=xe((A0,Ku)=>{var ol=Yr();Ku.exports=ol&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Zr=xe((S0,Yu)=>{var ll=Wt(),cl=ot(),pl=Xr(),fl=Qr(),Dl=Object;Yu.exports=fl?function(e){return typeof e=="symbol"}:function(e){var r=ll("Symbol");return cl(r)&&pl(r.prototype,Dl(e))}});var Dr=xe((x0,Qu)=>{var ml=String;Qu.exports=function(e){try{return ml(e)}catch{return"Object"}}});var Ht=xe((b0,Zu)=>{var dl=ot(),gl=Dr(),yl=TypeError;Zu.exports=function(e){if(dl(e))return e;throw yl(gl(e)+" is not a function")}});var mr=xe((T0,es)=>{var hl=Ht(),vl=cr();es.exports=function(e,r){var t=e[r];return vl(t)?void 0:hl(t)}});var rs=xe((B0,ts)=>{var en=At(),tn=ot(),rn=St(),Cl=TypeError;ts.exports=function(e,r){var t,s;if(r==="string"&&tn(t=e.toString)&&!rn(s=en(t,e))||tn(t=e.valueOf)&&!rn(s=en(t,e))||r!=="string"&&tn(t=e.toString)&&!rn(s=en(t,e)))return s;throw Cl("Can't convert object to primitive value")}});var us=xe((N0,ns)=>{ns.exports=!1});var dr=xe((w0,is)=>{var ss=pt(),El=Object.defineProperty;is.exports=function(e,r){try{El(ss,e,{value:r,configurable:!0,writable:!0})}catch{ss[e]=r}return r}});var gr=xe((_0,os)=>{var Fl=pt(),Al=dr(),as="__core-js_shared__",Sl=Fl[as]||Al(as,{});os.exports=Sl});var nn=xe((P0,cs)=>{var xl=us(),ls=gr();(cs.exports=function(e,r){return ls[e]||(ls[e]=r!==void 0?r:{})})("versions",[]).push({version:"3.26.1",mode:xl?"pure":"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})});var yr=xe((I0,ps)=>{var bl=Gr(),Tl=Object;ps.exports=function(e){return Tl(bl(e))}});var Ct=xe((k0,fs)=>{var Bl=mt(),Nl=yr(),wl=Bl({}.hasOwnProperty);fs.exports=Object.hasOwn||function(r,t){return wl(Nl(r),t)}});var un=xe((L0,Ds)=>{var _l=mt(),Pl=0,Il=Math.random(),kl=_l(1 .toString);Ds.exports=function(e){return"Symbol("+(e===void 0?"":e)+")_"+kl(++Pl+Il,36)}});var bt=xe((O0,hs)=>{var Ll=pt(),Ol=nn(),ms=Ct(),jl=un(),ds=Yr(),ys=Qr(),It=Ol("wks"),xt=Ll.Symbol,gs=xt&&xt.for,ql=ys?xt:xt&&xt.withoutSetter||jl;hs.exports=function(e){if(!ms(It,e)||!(ds||typeof It[e]=="string")){var r="Symbol."+e;ds&&ms(xt,e)?It[e]=xt[e]:ys&&gs?It[e]=gs(r):It[e]=ql(r)}return It[e]}});var Fs=xe((j0,Es)=>{var Ml=At(),vs=St(),Cs=Zr(),Rl=mr(),$l=rs(),Vl=bt(),Wl=TypeError,Hl=Vl("toPrimitive");Es.exports=function(e,r){if(!vs(e)||Cs(e))return e;var t=Rl(e,Hl),s;if(t){if(r===void 0&&(r="default"),s=Ml(t,e,r),!vs(s)||Cs(s))return s;throw Wl("Can't convert object to primitive value")}return r===void 0&&(r="number"),$l(e,r)}});var hr=xe((q0,As)=>{var Gl=Fs(),Ul=Zr();As.exports=function(e){var r=Gl(e,"string");return Ul(r)?r:r+""}});var bs=xe((M0,xs)=>{var Jl=pt(),Ss=St(),sn=Jl.document,zl=Ss(sn)&&Ss(sn.createElement);xs.exports=function(e){return zl?sn.createElement(e):{}}});var an=xe((R0,Ts)=>{var Xl=yt(),Kl=Dt(),Yl=bs();Ts.exports=!Xl&&!Kl(function(){return Object.defineProperty(Yl("div"),"a",{get:function(){return 7}}).a!=7})});var on=xe(Ns=>{var Ql=yt(),Zl=At(),ec=vu(),tc=lr(),rc=pr(),nc=hr(),uc=Ct(),sc=an(),Bs=Object.getOwnPropertyDescriptor;Ns.f=Ql?Bs:function(r,t){if(r=rc(r),t=nc(t),sc)try{return Bs(r,t)}catch{}if(uc(r,t))return tc(!Zl(ec.f,r,t),r[t])}});var _s=xe((V0,ws)=>{var ic=yt(),ac=Dt();ws.exports=ic&&ac(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var Tt=xe((W0,Ps)=>{var oc=St(),lc=String,cc=TypeError;Ps.exports=function(e){if(oc(e))return e;throw cc(lc(e)+" is not an object")}});var kt=xe(ks=>{var pc=yt(),fc=an(),Dc=_s(),vr=Tt(),Is=hr(),mc=TypeError,ln=Object.defineProperty,dc=Object.getOwnPropertyDescriptor,cn="enumerable",pn="configurable",fn="writable";ks.f=pc?Dc?function(r,t,s){if(vr(r),t=Is(t),vr(s),typeof r=="function"&&t==="prototype"&&"value"in s&&fn in s&&!s[fn]){var a=dc(r,t);a&&a[fn]&&(r[t]=s.value,s={configurable:pn in s?s[pn]:a[pn],enumerable:cn in s?s[cn]:a[cn],writable:!1})}return ln(r,t,s)}:ln:function(r,t,s){if(vr(r),t=Is(t),vr(s),fc)try{return ln(r,t,s)}catch{}if("get"in s||"set"in s)throw mc("Accessors not supported");return"value"in s&&(r[t]=s.value),r}});var Dn=xe((G0,Ls)=>{var gc=yt(),yc=kt(),hc=lr();Ls.exports=gc?function(e,r,t){return yc.f(e,r,hc(1,t))}:function(e,r,t){return e[r]=t,e}});var qs=xe((U0,js)=>{var mn=yt(),vc=Ct(),Os=Function.prototype,Cc=mn&&Object.getOwnPropertyDescriptor,dn=vc(Os,"name"),Ec=dn&&function(){}.name==="something",Fc=dn&&(!mn||mn&&Cc(Os,"name").configurable);js.exports={EXISTS:dn,PROPER:Ec,CONFIGURABLE:Fc}});var yn=xe((J0,Ms)=>{var Ac=mt(),Sc=ot(),gn=gr(),xc=Ac(Function.toString);Sc(gn.inspectSource)||(gn.inspectSource=function(e){return xc(e)});Ms.exports=gn.inspectSource});var Vs=xe((z0,$s)=>{var bc=pt(),Tc=ot(),Rs=bc.WeakMap;$s.exports=Tc(Rs)&&/native code/.test(String(Rs))});var Gs=xe((X0,Hs)=>{var Bc=nn(),Nc=un(),Ws=Bc("keys");Hs.exports=function(e){return Ws[e]||(Ws[e]=Nc(e))}});var hn=xe((K0,Us)=>{Us.exports={}});var Ks=xe((Y0,Xs)=>{var wc=Vs(),zs=pt(),_c=St(),Pc=Dn(),vn=Ct(),Cn=gr(),Ic=Gs(),kc=hn(),Js="Object already initialized",En=zs.TypeError,Lc=zs.WeakMap,Cr,Gt,Er,Oc=function(e){return Er(e)?Gt(e):Cr(e,{})},jc=function(e){return function(r){var t;if(!_c(r)||(t=Gt(r)).type!==e)throw En("Incompatible receiver, "+e+" required");return t}};wc||Cn.state?(gt=Cn.state||(Cn.state=new Lc),gt.get=gt.get,gt.has=gt.has,gt.set=gt.set,Cr=function(e,r){if(gt.has(e))throw En(Js);return r.facade=e,gt.set(e,r),r},Gt=function(e){return gt.get(e)||{}},Er=function(e){return gt.has(e)}):(Bt=Ic("state"),kc[Bt]=!0,Cr=function(e,r){if(vn(e,Bt))throw En(Js);return r.facade=e,Pc(e,Bt,r),r},Gt=function(e){return vn(e,Bt)?e[Bt]:{}},Er=function(e){return vn(e,Bt)});var gt,Bt;Xs.exports={set:Cr,get:Gt,has:Er,enforce:Oc,getterFor:jc}});var An=xe((Q0,Qs)=>{var qc=Dt(),Mc=ot(),Fr=Ct(),Fn=yt(),Rc=qs().CONFIGURABLE,$c=yn(),Ys=Ks(),Vc=Ys.enforce,Wc=Ys.get,Ar=Object.defineProperty,Hc=Fn&&!qc(function(){return Ar(function(){},"length",{value:8}).length!==8}),Gc=String(String).split("String"),Uc=Qs.exports=function(e,r,t){String(r).slice(0,7)==="Symbol("&&(r="["+String(r).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),t&&t.getter&&(r="get "+r),t&&t.setter&&(r="set "+r),(!Fr(e,"name")||Rc&&e.name!==r)&&(Fn?Ar(e,"name",{value:r,configurable:!0}):e.name=r),Hc&&t&&Fr(t,"arity")&&e.length!==t.arity&&Ar(e,"length",{value:t.arity});try{t&&Fr(t,"constructor")&&t.constructor?Fn&&Ar(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch{}var s=Vc(e);return Fr(s,"source")||(s.source=Gc.join(typeof r=="string"?r:"")),e};Function.prototype.toString=Uc(function(){return Mc(this)&&Wc(this).source||$c(this)},"toString")});var ei=xe((Z0,Zs)=>{var Jc=ot(),zc=kt(),Xc=An(),Kc=dr();Zs.exports=function(e,r,t,s){s||(s={});var a=s.enumerable,n=s.name!==void 0?s.name:r;if(Jc(t)&&Xc(t,n,s),s.global)a?e[r]=t:Kc(r,t);else{try{s.unsafe?e[r]&&(a=!0):delete e[r]}catch{}a?e[r]=t:zc.f(e,r,{value:t,enumerable:!1,configurable:!s.nonConfigurable,writable:!s.nonWritable})}return e}});var ri=xe((ey,ti)=>{var Yc=Math.ceil,Qc=Math.floor;ti.exports=Math.trunc||function(r){var t=+r;return(t>0?Qc:Yc)(t)}});var Sr=xe((ty,ni)=>{var Zc=ri();ni.exports=function(e){var r=+e;return r!==r||r===0?0:Zc(r)}});var si=xe((ry,ui)=>{var ep=Sr(),tp=Math.max,rp=Math.min;ui.exports=function(e,r){var t=ep(e);return t<0?tp(t+r,0):rp(t,r)}});var ai=xe((ny,ii)=>{var np=Sr(),up=Math.min;ii.exports=function(e){return e>0?up(np(e),9007199254740991):0}});var Lt=xe((uy,oi)=>{var sp=ai();oi.exports=function(e){return sp(e.length)}});var pi=xe((sy,ci)=>{var ip=pr(),ap=si(),op=Lt(),li=function(e){return function(r,t,s){var a=ip(r),n=op(a),u=ap(s,n),i;if(e&&t!=t){for(;n>u;)if(i=a[u++],i!=i)return!0}else for(;n>u;u++)if((e||u in a)&&a[u]===t)return e||u||0;return!e&&-1}};ci.exports={includes:li(!0),indexOf:li(!1)}});var mi=xe((iy,Di)=>{var lp=mt(),Sn=Ct(),cp=pr(),pp=pi().indexOf,fp=hn(),fi=lp([].push);Di.exports=function(e,r){var t=cp(e),s=0,a=[],n;for(n in t)!Sn(fp,n)&&Sn(t,n)&&fi(a,n);for(;r.length>s;)Sn(t,n=r[s++])&&(~pp(a,n)||fi(a,n));return a}});var gi=xe((ay,di)=>{di.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var hi=xe(yi=>{var Dp=mi(),mp=gi(),dp=mp.concat("length","prototype");yi.f=Object.getOwnPropertyNames||function(r){return Dp(r,dp)}});var Ci=xe(vi=>{vi.f=Object.getOwnPropertySymbols});var Fi=xe((cy,Ei)=>{var gp=Wt(),yp=mt(),hp=hi(),vp=Ci(),Cp=Tt(),Ep=yp([].concat);Ei.exports=gp("Reflect","ownKeys")||function(r){var t=hp.f(Cp(r)),s=vp.f;return s?Ep(t,s(r)):t}});var xi=xe((py,Si)=>{var Ai=Ct(),Fp=Fi(),Ap=on(),Sp=kt();Si.exports=function(e,r,t){for(var s=Fp(r),a=Sp.f,n=Ap.f,u=0;u{var xp=Dt(),bp=ot(),Tp=/#|\.prototype\./,Ut=function(e,r){var t=Np[Bp(e)];return t==_p?!0:t==wp?!1:bp(r)?xp(r):!!r},Bp=Ut.normalize=function(e){return String(e).replace(Tp,".").toLowerCase()},Np=Ut.data={},wp=Ut.NATIVE="N",_p=Ut.POLYFILL="P";bi.exports=Ut});var Jt=xe((Dy,Bi)=>{var xn=pt(),Pp=on().f,Ip=Dn(),kp=ei(),Lp=dr(),Op=xi(),jp=Ti();Bi.exports=function(e,r){var t=e.target,s=e.global,a=e.stat,n,u,i,l,p,y;if(s?u=xn:a?u=xn[t]||Lp(t,{}):u=(xn[t]||{}).prototype,u)for(i in r){if(p=r[i],e.dontCallGetSet?(y=Pp(u,i),l=y&&y.value):l=u[i],n=jp(s?i:t+(a?".":"#")+i,e.forced),!n&&l!==void 0){if(typeof p==typeof l)continue;Op(p,l)}(e.sham||l&&l.sham)&&Ip(p,"sham",!0),kp(u,i,p,e)}}});var bn=xe((my,Ni)=>{var qp=Vt();Ni.exports=Array.isArray||function(r){return qp(r)=="Array"}});var _i=xe((dy,wi)=>{var Mp=TypeError,Rp=9007199254740991;wi.exports=function(e){if(e>Rp)throw Mp("Maximum allowed index exceeded");return e}});var Ii=xe((gy,Pi)=>{var $p=Vt(),Vp=mt();Pi.exports=function(e){if($p(e)==="Function")return Vp(e)}});var Tn=xe((yy,Li)=>{var ki=Ii(),Wp=Ht(),Hp=ar(),Gp=ki(ki.bind);Li.exports=function(e,r){return Wp(e),r===void 0?e:Hp?Gp(e,r):function(){return e.apply(r,arguments)}}});var Bn=xe((hy,ji)=>{"use strict";var Up=bn(),Jp=Lt(),zp=_i(),Xp=Tn(),Oi=function(e,r,t,s,a,n,u,i){for(var l=a,p=0,y=u?Xp(u,i):!1,h,g;p0&&Up(h)?(g=Jp(h),l=Oi(e,r,h,g,l,n-1)-1):(zp(l+1),e[l]=h),l++),p++;return l};ji.exports=Oi});var Ri=xe((vy,Mi)=>{var Kp=bt(),Yp=Kp("toStringTag"),qi={};qi[Yp]="z";Mi.exports=String(qi)==="[object z]"});var Nn=xe((Cy,$i)=>{var Qp=Ri(),Zp=ot(),xr=Vt(),ef=bt(),tf=ef("toStringTag"),rf=Object,nf=xr(function(){return arguments}())=="Arguments",uf=function(e,r){try{return e[r]}catch{}};$i.exports=Qp?xr:function(e){var r,t,s;return e===void 0?"Undefined":e===null?"Null":typeof(t=uf(r=rf(e),tf))=="string"?t:nf?xr(r):(s=xr(r))=="Object"&&Zp(r.callee)?"Arguments":s}});var Ji=xe((Ey,Ui)=>{var sf=mt(),af=Dt(),Vi=ot(),of=Nn(),lf=Wt(),cf=yn(),Wi=function(){},pf=[],Hi=lf("Reflect","construct"),wn=/^\s*(?:class|function)\b/,ff=sf(wn.exec),Df=!wn.exec(Wi),zt=function(r){if(!Vi(r))return!1;try{return Hi(Wi,pf,r),!0}catch{return!1}},Gi=function(r){if(!Vi(r))return!1;switch(of(r)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Df||!!ff(wn,cf(r))}catch{return!0}};Gi.sham=!0;Ui.exports=!Hi||af(function(){var e;return zt(zt.call)||!zt(Object)||!zt(function(){e=!0})||e})?Gi:zt});var Yi=xe((Fy,Ki)=>{var zi=bn(),mf=Ji(),df=St(),gf=bt(),yf=gf("species"),Xi=Array;Ki.exports=function(e){var r;return zi(e)&&(r=e.constructor,mf(r)&&(r===Xi||zi(r.prototype))?r=void 0:df(r)&&(r=r[yf],r===null&&(r=void 0))),r===void 0?Xi:r}});var _n=xe((Ay,Qi)=>{var hf=Yi();Qi.exports=function(e,r){return new(hf(e))(r===0?0:r)}});var Zi=xe(()=>{"use strict";var vf=Jt(),Cf=Bn(),Ef=Ht(),Ff=yr(),Af=Lt(),Sf=_n();vf({target:"Array",proto:!0},{flatMap:function(r){var t=Ff(this),s=Af(t),a;return Ef(r),a=Sf(t,0),a.length=Cf(a,t,t,s,0,1,r,arguments.length>1?arguments[1]:void 0),a}})});var Pn=xe((by,ea)=>{ea.exports={}});var ra=xe((Ty,ta)=>{var xf=bt(),bf=Pn(),Tf=xf("iterator"),Bf=Array.prototype;ta.exports=function(e){return e!==void 0&&(bf.Array===e||Bf[Tf]===e)}});var In=xe((By,ua)=>{var Nf=Nn(),na=mr(),wf=cr(),_f=Pn(),Pf=bt(),If=Pf("iterator");ua.exports=function(e){if(!wf(e))return na(e,If)||na(e,"@@iterator")||_f[Nf(e)]}});var ia=xe((Ny,sa)=>{var kf=At(),Lf=Ht(),Of=Tt(),jf=Dr(),qf=In(),Mf=TypeError;sa.exports=function(e,r){var t=arguments.length<2?qf(e):r;if(Lf(t))return Of(kf(t,e));throw Mf(jf(e)+" is not iterable")}});var la=xe((wy,oa)=>{var Rf=At(),aa=Tt(),$f=mr();oa.exports=function(e,r,t){var s,a;aa(e);try{if(s=$f(e,"return"),!s){if(r==="throw")throw t;return t}s=Rf(s,e)}catch(n){a=!0,s=n}if(r==="throw")throw t;if(a)throw s;return aa(s),t}});var ma=xe((_y,Da)=>{var Vf=Tn(),Wf=At(),Hf=Tt(),Gf=Dr(),Uf=ra(),Jf=Lt(),ca=Xr(),zf=ia(),Xf=In(),pa=la(),Kf=TypeError,br=function(e,r){this.stopped=e,this.result=r},fa=br.prototype;Da.exports=function(e,r,t){var s=t&&t.that,a=!!(t&&t.AS_ENTRIES),n=!!(t&&t.IS_RECORD),u=!!(t&&t.IS_ITERATOR),i=!!(t&&t.INTERRUPTED),l=Vf(r,s),p,y,h,g,c,f,F,_=function(E){return p&&pa(p,"normal",E),new br(!0,E)},w=function(E){return a?(Hf(E),i?l(E[0],E[1],_):l(E[0],E[1])):i?l(E,_):l(E)};if(n)p=e.iterator;else if(u)p=e;else{if(y=Xf(e),!y)throw Kf(Gf(e)+" is not iterable");if(Uf(y)){for(h=0,g=Jf(e);g>h;h++)if(c=w(e[h]),c&&ca(fa,c))return c;return new br(!1)}p=zf(e,y)}for(f=n?e.next:p.next;!(F=Wf(f,p)).done;){try{c=w(F.value)}catch(E){pa(p,"throw",E)}if(typeof c=="object"&&c&&ca(fa,c))return c}return new br(!1)}});var ga=xe((Py,da)=>{"use strict";var Yf=hr(),Qf=kt(),Zf=lr();da.exports=function(e,r,t){var s=Yf(r);s in e?Qf.f(e,s,Zf(0,t)):e[s]=t}});var ya=xe(()=>{var eD=Jt(),tD=ma(),rD=ga();eD({target:"Object",stat:!0},{fromEntries:function(r){var t={};return tD(r,function(s,a){rD(t,s,a)},{AS_ENTRIES:!0}),t}})});var Ca=xe((Ly,va)=>{var ha=An(),nD=kt();va.exports=function(e,r,t){return t.get&&ha(t.get,r,{getter:!0}),t.set&&ha(t.set,r,{setter:!0}),nD.f(e,r,t)}});var Fa=xe((Oy,Ea)=>{"use strict";var uD=Tt();Ea.exports=function(){var e=uD(this),r="";return e.hasIndices&&(r+="d"),e.global&&(r+="g"),e.ignoreCase&&(r+="i"),e.multiline&&(r+="m"),e.dotAll&&(r+="s"),e.unicode&&(r+="u"),e.unicodeSets&&(r+="v"),e.sticky&&(r+="y"),r}});var xa=xe(()=>{var sD=pt(),iD=yt(),aD=Ca(),oD=Fa(),lD=Dt(),Aa=sD.RegExp,Sa=Aa.prototype,cD=iD&&lD(function(){var e=!0;try{Aa(".","d")}catch{e=!1}var r={},t="",s=e?"dgimsy":"gimsy",a=function(l,p){Object.defineProperty(r,l,{get:function(){return t+=p,!0}})},n={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};e&&(n.hasIndices="d");for(var u in n)a(u,n[u]);var i=Object.getOwnPropertyDescriptor(Sa,"flags").get.call(r);return i!==s||t!==s});cD&&aD(Sa,"flags",{configurable:!0,get:oD})});var ba=xe(()=>{var pD=Jt(),kn=pt();pD({global:!0,forced:kn.globalThis!==kn},{globalThis:kn})});var Ta=xe(()=>{ba()});var Ba=xe(()=>{"use strict";var fD=Jt(),DD=Bn(),mD=yr(),dD=Lt(),gD=Sr(),yD=_n();fD({target:"Array",proto:!0},{flat:function(){var r=arguments.length?arguments[0]:void 0,t=mD(this),s=dD(t),a=yD(t,0);return a.length=DD(a,t,t,s,0,r===void 0?1:gD(r)),a}})});var e0=xe((Uy,jo)=>{var hD=["cliName","cliCategory","cliDescription"],vD=["_"],CD=["languageId"];function Hn(e,r){if(e==null)return{};var t=ED(e,r),s,a;if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0)&&Object.prototype.propertyIsEnumerable.call(e,s)&&(t[s]=e[s])}return t}function ED(e,r){if(e==null)return{};var t={},s=Object.keys(e),a,n;for(n=0;n=0)&&(t[a]=e[a]);return t}Zi();ya();xa();Ta();Ba();var FD=Object.create,_r=Object.defineProperty,AD=Object.getOwnPropertyDescriptor,Gn=Object.getOwnPropertyNames,SD=Object.getPrototypeOf,xD=Object.prototype.hasOwnProperty,ht=(e,r)=>function(){return e&&(r=(0,e[Gn(e)[0]])(e=0)),r},te=(e,r)=>function(){return r||(0,e[Gn(e)[0]])((r={exports:{}}).exports,r),r.exports},Kt=(e,r)=>{for(var t in r)_r(e,t,{get:r[t],enumerable:!0})},Pa=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of Gn(r))!xD.call(e,a)&&a!==t&&_r(e,a,{get:()=>r[a],enumerable:!(s=AD(r,a))||s.enumerable});return e},bD=(e,r,t)=>(t=e!=null?FD(SD(e)):{},Pa(r||!e||!e.__esModule?_r(t,"default",{value:e,enumerable:!0}):t,e)),ft=e=>Pa(_r({},"__esModule",{value:!0}),e),wt,ne=ht({""(){wt={env:{},argv:[]}}}),Ia=te({"package.json"(e,r){r.exports={version:"2.8.8"}}}),TD=te({"node_modules/diff/lib/diff/base.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;function r(){}r.prototype={diff:function(n,u){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},l=i.callback;typeof i=="function"&&(l=i,i={}),this.options=i;var p=this;function y(N){return l?(setTimeout(function(){l(void 0,N)},0),!0):N}n=this.castInput(n),u=this.castInput(u),n=this.removeEmpty(this.tokenize(n)),u=this.removeEmpty(this.tokenize(u));var h=u.length,g=n.length,c=1,f=h+g,F=[{newPos:-1,components:[]}],_=this.extractCommon(F[0],u,n,0);if(F[0].newPos+1>=h&&_+1>=g)return y([{value:this.join(u),count:u.length}]);function w(){for(var N=-1*c;N<=c;N+=2){var x=void 0,I=F[N-1],P=F[N+1],$=(P?P.newPos:0)-N;I&&(F[N-1]=void 0);var D=I&&I.newPos+1=h&&$+1>=g)return y(t(p,x.components,u,n,p.useLongestToken));F[N]=x}c++}if(l)(function N(){setTimeout(function(){if(c>f)return l();w()||N()},0)})();else for(;c<=f;){var E=w();if(E)return E}},pushComponent:function(n,u,i){var l=n[n.length-1];l&&l.added===u&&l.removed===i?n[n.length-1]={count:l.count+1,added:u,removed:i}:n.push({count:1,added:u,removed:i})},extractCommon:function(n,u,i,l){for(var p=u.length,y=i.length,h=n.newPos,g=h-l,c=0;h+1w.length?N:w}),c.value=a.join(f)}else c.value=a.join(u.slice(h,h+c.count));h+=c.count,c.added||(g+=c.count)}}var _=n[y-1];return y>1&&typeof _.value=="string"&&(_.added||_.removed)&&a.equals("",_.value)&&(n[y-2].value+=_.value,n.pop()),n}function s(a){return{newPos:a.newPos,components:a.components.slice(0)}}}}),BD=te({"node_modules/diff/lib/diff/array.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.diffArrays=a,e.arrayDiff=void 0;var r=t(TD());function t(n){return n&&n.__esModule?n:{default:n}}var s=new r.default;e.arrayDiff=s,s.tokenize=function(n){return n.slice()},s.join=s.removeEmpty=function(n){return n};function a(n,u,i){return s.diff(n,u,i)}}}),Un=te({"src/document/doc-builders.js"(e,r){"use strict";ne();function t(C){return{type:"concat",parts:C}}function s(C){return{type:"indent",contents:C}}function a(C,o){return{type:"align",contents:o,n:C}}function n(C){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return{type:"group",id:o.id,contents:C,break:Boolean(o.shouldBreak),expandedStates:o.expandedStates}}function u(C){return a(Number.NEGATIVE_INFINITY,C)}function i(C){return a({type:"root"},C)}function l(C){return a(-1,C)}function p(C,o){return n(C[0],Object.assign(Object.assign({},o),{},{expandedStates:C}))}function y(C){return{type:"fill",parts:C}}function h(C,o){let d=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return{type:"if-break",breakContents:C,flatContents:o,groupId:d.groupId}}function g(C,o){return{type:"indent-if-break",contents:C,groupId:o.groupId,negate:o.negate}}function c(C){return{type:"line-suffix",contents:C}}var f={type:"line-suffix-boundary"},F={type:"break-parent"},_={type:"trim"},w={type:"line",hard:!0},E={type:"line",hard:!0,literal:!0},N={type:"line"},x={type:"line",soft:!0},I=t([w,F]),P=t([E,F]),$={type:"cursor",placeholder:Symbol("cursor")};function D(C,o){let d=[];for(let v=0;v0){for(let S=0;S=0?u.charAt(i+1)===` +`?"crlf":"cr":"lf"}function s(u){switch(u){case"cr":return"\r";case"crlf":return`\r +`;default:return` +`}}function a(u,i){let l;switch(i){case` +`:l=/\n/g;break;case"\r":l=/\r/g;break;case`\r +`:l=/\r\n/g;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(i)}.`)}let p=u.match(l);return p?p.length:0}function n(u){return u.replace(/\r\n?/g,` +`)}r.exports={guessEndOfLine:t,convertEndOfLineToChars:s,countEndOfLineChars:a,normalizeEndOfLine:n}}}),lt=te({"src/utils/get-last.js"(e,r){"use strict";ne();var t=s=>s[s.length-1];r.exports=t}});function ND(){let{onlyFirst:e=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=["[\\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(r,e?void 0:"g")}var wD=ht({"node_modules/strip-ansi/node_modules/ansi-regex/index.js"(){ne()}});function _D(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(ND(),"")}var PD=ht({"node_modules/strip-ansi/index.js"(){ne(),wD()}});function ID(e){return Number.isInteger(e)?e>=4352&&(e<=4447||e===9001||e===9002||11904<=e&&e<=12871&&e!==12351||12880<=e&&e<=19903||19968<=e&&e<=42182||43360<=e&&e<=43388||44032<=e&&e<=55203||63744<=e&&e<=64255||65040<=e&&e<=65049||65072<=e&&e<=65131||65281<=e&&e<=65376||65504<=e&&e<=65510||110592<=e&&e<=110593||127488<=e&&e<=127569||131072<=e&&e<=262141):!1}var kD=ht({"node_modules/is-fullwidth-code-point/index.js"(){ne()}}),LD=te({"node_modules/emoji-regex/index.js"(e,r){"use strict";ne(),r.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\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])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\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\uDF7C\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\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\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\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\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-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*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\u26A7\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-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\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[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}}}),ka={};Kt(ka,{default:()=>OD});function OD(e){if(typeof e!="string"||e.length===0||(e=_D(e),e.length===0))return 0;e=e.replace((0,La.default)()," ");let r=0;for(let t=0;t=127&&s<=159||s>=768&&s<=879||(s>65535&&t++,r+=ID(s)?2:1)}return r}var La,jD=ht({"node_modules/string-width/index.js"(){ne(),PD(),kD(),La=bD(LD())}}),Oa=te({"src/utils/get-string-width.js"(e,r){"use strict";ne();var t=(jD(),ft(ka)).default,s=/[^\x20-\x7F]/;function a(n){return n?s.test(n)?t(n):n.length:0}r.exports=a}}),Yt=te({"src/document/doc-utils.js"(e,r){"use strict";ne();var t=lt(),{literalline:s,join:a}=Un(),n=o=>Array.isArray(o)||o&&o.type==="concat",u=o=>{if(Array.isArray(o))return o;if(o.type!=="concat"&&o.type!=="fill")throw new Error("Expect doc type to be `concat` or `fill`.");return o.parts},i={};function l(o,d,v,S){let b=[o];for(;b.length>0;){let B=b.pop();if(B===i){v(b.pop());continue}if(v&&b.push(B,i),!d||d(B)!==!1)if(n(B)||B.type==="fill"){let k=u(B);for(let M=k.length,R=M-1;R>=0;--R)b.push(k[R])}else if(B.type==="if-break")B.flatContents&&b.push(B.flatContents),B.breakContents&&b.push(B.breakContents);else if(B.type==="group"&&B.expandedStates)if(S)for(let k=B.expandedStates.length,M=k-1;M>=0;--M)b.push(B.expandedStates[M]);else b.push(B.contents);else B.contents&&b.push(B.contents)}}function p(o,d){let v=new Map;return S(o);function S(B){if(v.has(B))return v.get(B);let k=b(B);return v.set(B,k),k}function b(B){if(Array.isArray(B))return d(B.map(S));if(B.type==="concat"||B.type==="fill"){let k=B.parts.map(S);return d(Object.assign(Object.assign({},B),{},{parts:k}))}if(B.type==="if-break"){let k=B.breakContents&&S(B.breakContents),M=B.flatContents&&S(B.flatContents);return d(Object.assign(Object.assign({},B),{},{breakContents:k,flatContents:M}))}if(B.type==="group"&&B.expandedStates){let k=B.expandedStates.map(S),M=k[0];return d(Object.assign(Object.assign({},B),{},{contents:M,expandedStates:k}))}if(B.contents){let k=S(B.contents);return d(Object.assign(Object.assign({},B),{},{contents:k}))}return d(B)}}function y(o,d,v){let S=v,b=!1;function B(k){let M=d(k);if(M!==void 0&&(b=!0,S=M),b)return!1}return l(o,B),S}function h(o){if(o.type==="group"&&o.break||o.type==="line"&&o.hard||o.type==="break-parent")return!0}function g(o){return y(o,h,!1)}function c(o){if(o.length>0){let d=t(o);!d.expandedStates&&!d.break&&(d.break="propagated")}return null}function f(o){let d=new Set,v=[];function S(B){if(B.type==="break-parent"&&c(v),B.type==="group"){if(v.push(B),d.has(B))return!1;d.add(B)}}function b(B){B.type==="group"&&v.pop().break&&c(v)}l(o,S,b,!0)}function F(o){return o.type==="line"&&!o.hard?o.soft?"":" ":o.type==="if-break"?o.flatContents||"":o}function _(o){return p(o,F)}var w=(o,d)=>o&&o.type==="line"&&o.hard&&d&&d.type==="break-parent";function E(o){if(!o)return o;if(n(o)||o.type==="fill"){let d=u(o);for(;d.length>1&&w(...d.slice(-2));)d.length-=2;if(d.length>0){let v=E(t(d));d[d.length-1]=v}return Array.isArray(o)?d:Object.assign(Object.assign({},o),{},{parts:d})}switch(o.type){case"align":case"indent":case"indent-if-break":case"group":case"line-suffix":case"label":{let d=E(o.contents);return Object.assign(Object.assign({},o),{},{contents:d})}case"if-break":{let d=E(o.breakContents),v=E(o.flatContents);return Object.assign(Object.assign({},o),{},{breakContents:d,flatContents:v})}}return o}function N(o){return E(I(o))}function x(o){switch(o.type){case"fill":if(o.parts.every(v=>v===""))return"";break;case"group":if(!o.contents&&!o.id&&!o.break&&!o.expandedStates)return"";if(o.contents.type==="group"&&o.contents.id===o.id&&o.contents.break===o.break&&o.contents.expandedStates===o.expandedStates)return o.contents;break;case"align":case"indent":case"indent-if-break":case"line-suffix":if(!o.contents)return"";break;case"if-break":if(!o.flatContents&&!o.breakContents)return"";break}if(!n(o))return o;let d=[];for(let v of u(o)){if(!v)continue;let[S,...b]=n(v)?u(v):[v];typeof S=="string"&&typeof t(d)=="string"?d[d.length-1]+=S:d.push(S),d.push(...b)}return d.length===0?"":d.length===1?d[0]:Array.isArray(o)?d:Object.assign(Object.assign({},o),{},{parts:d})}function I(o){return p(o,d=>x(d))}function P(o){let d=[],v=o.filter(Boolean);for(;v.length>0;){let S=v.shift();if(S){if(n(S)){v.unshift(...u(S));continue}if(d.length>0&&typeof t(d)=="string"&&typeof S=="string"){d[d.length-1]+=S;continue}d.push(S)}}return d}function $(o){return p(o,d=>Array.isArray(d)?P(d):d.parts?Object.assign(Object.assign({},d),{},{parts:P(d.parts)}):d)}function D(o){return p(o,d=>typeof d=="string"&&d.includes(` +`)?T(d):d)}function T(o){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:s;return a(d,o.split(` +`)).parts}function m(o){if(o.type==="line")return!0}function C(o){return y(o,m,!1)}r.exports={isConcat:n,getDocParts:u,willBreak:g,traverseDoc:l,findInDoc:y,mapDoc:p,propagateBreaks:f,removeLines:_,stripTrailingHardline:N,normalizeParts:P,normalizeDoc:$,cleanDoc:I,replaceTextEndOfLine:T,replaceEndOfLine:D,canBreak:C}}}),qD=te({"src/document/doc-printer.js"(e,r){"use strict";ne();var{convertEndOfLineToChars:t}=Jn(),s=lt(),a=Oa(),{fill:n,cursor:u,indent:i}=Un(),{isConcat:l,getDocParts:p}=Yt(),y,h=1,g=2;function c(){return{value:"",length:0,queue:[]}}function f(x,I){return _(x,{type:"indent"},I)}function F(x,I,P){return I===Number.NEGATIVE_INFINITY?x.root||c():I<0?_(x,{type:"dedent"},P):I?I.type==="root"?Object.assign(Object.assign({},x),{},{root:x}):_(x,{type:typeof I=="string"?"stringAlign":"numberAlign",n:I},P):x}function _(x,I,P){let $=I.type==="dedent"?x.queue.slice(0,-1):[...x.queue,I],D="",T=0,m=0,C=0;for(let k of $)switch(k.type){case"indent":v(),P.useTabs?o(1):d(P.tabWidth);break;case"stringAlign":v(),D+=k.n,T+=k.n.length;break;case"numberAlign":m+=1,C+=k.n;break;default:throw new Error(`Unexpected type '${k.type}'`)}return b(),Object.assign(Object.assign({},x),{},{value:D,length:T,queue:$});function o(k){D+=" ".repeat(k),T+=P.tabWidth*k}function d(k){D+=" ".repeat(k),T+=k}function v(){P.useTabs?S():b()}function S(){m>0&&o(m),B()}function b(){C>0&&d(C),B()}function B(){m=0,C=0}}function w(x){if(x.length===0)return 0;let I=0;for(;x.length>0&&typeof s(x)=="string"&&/^[\t ]*$/.test(s(x));)I+=x.pop().length;if(x.length>0&&typeof s(x)=="string"){let P=s(x).replace(/[\t ]*$/,"");I+=s(x).length-P.length,x[x.length-1]=P}return I}function E(x,I,P,$,D){let T=I.length,m=[x],C=[];for(;P>=0;){if(m.length===0){if(T===0)return!0;m.push(I[--T]);continue}let{mode:o,doc:d}=m.pop();if(typeof d=="string")C.push(d),P-=a(d);else if(l(d)||d.type==="fill"){let v=p(d);for(let S=v.length-1;S>=0;S--)m.push({mode:o,doc:v[S]})}else switch(d.type){case"indent":case"align":case"indent-if-break":case"label":m.push({mode:o,doc:d.contents});break;case"trim":P+=w(C);break;case"group":{if(D&&d.break)return!1;let v=d.break?h:o,S=d.expandedStates&&v===h?s(d.expandedStates):d.contents;m.push({mode:v,doc:S});break}case"if-break":{let S=(d.groupId?y[d.groupId]||g:o)===h?d.breakContents:d.flatContents;S&&m.push({mode:o,doc:S});break}case"line":if(o===h||d.hard)return!0;d.soft||(C.push(" "),P--);break;case"line-suffix":$=!0;break;case"line-suffix-boundary":if($)return!1;break}}return!1}function N(x,I){y={};let P=I.printWidth,$=t(I.endOfLine),D=0,T=[{ind:c(),mode:h,doc:x}],m=[],C=!1,o=[];for(;T.length>0;){let{ind:v,mode:S,doc:b}=T.pop();if(typeof b=="string"){let B=$!==` +`?b.replace(/\n/g,$):b;m.push(B),D+=a(B)}else if(l(b)){let B=p(b);for(let k=B.length-1;k>=0;k--)T.push({ind:v,mode:S,doc:B[k]})}else switch(b.type){case"cursor":m.push(u.placeholder);break;case"indent":T.push({ind:f(v,I),mode:S,doc:b.contents});break;case"align":T.push({ind:F(v,b.n,I),mode:S,doc:b.contents});break;case"trim":D-=w(m);break;case"group":switch(S){case g:if(!C){T.push({ind:v,mode:b.break?h:g,doc:b.contents});break}case h:{C=!1;let B={ind:v,mode:g,doc:b.contents},k=P-D,M=o.length>0;if(!b.break&&E(B,T,k,M))T.push(B);else if(b.expandedStates){let R=s(b.expandedStates);if(b.break){T.push({ind:v,mode:h,doc:R});break}else for(let q=1;q=b.expandedStates.length){T.push({ind:v,mode:h,doc:R});break}else{let J=b.expandedStates[q],L={ind:v,mode:g,doc:J};if(E(L,T,k,M)){T.push(L);break}}}else T.push({ind:v,mode:h,doc:b.contents});break}}b.id&&(y[b.id]=s(T).mode);break;case"fill":{let B=P-D,{parts:k}=b;if(k.length===0)break;let[M,R]=k,q={ind:v,mode:g,doc:M},J={ind:v,mode:h,doc:M},L=E(q,[],B,o.length>0,!0);if(k.length===1){L?T.push(q):T.push(J);break}let Q={ind:v,mode:g,doc:R},V={ind:v,mode:h,doc:R};if(k.length===2){L?T.push(Q,q):T.push(V,J);break}k.splice(0,2);let j={ind:v,mode:S,doc:n(k)},Y=k[0];E({ind:v,mode:g,doc:[M,R,Y]},[],B,o.length>0,!0)?T.push(j,Q,q):L?T.push(j,V,q):T.push(j,V,J);break}case"if-break":case"indent-if-break":{let B=b.groupId?y[b.groupId]:S;if(B===h){let k=b.type==="if-break"?b.breakContents:b.negate?b.contents:i(b.contents);k&&T.push({ind:v,mode:S,doc:k})}if(B===g){let k=b.type==="if-break"?b.flatContents:b.negate?i(b.contents):b.contents;k&&T.push({ind:v,mode:S,doc:k})}break}case"line-suffix":o.push({ind:v,mode:S,doc:b.contents});break;case"line-suffix-boundary":o.length>0&&T.push({ind:v,mode:S,doc:{type:"line",hard:!0}});break;case"line":switch(S){case g:if(b.hard)C=!0;else{b.soft||(m.push(" "),D+=1);break}case h:if(o.length>0){T.push({ind:v,mode:S,doc:b},...o.reverse()),o.length=0;break}b.literal?v.root?(m.push($,v.root.value),D=v.root.length):(m.push($),D=0):(D-=w(m),m.push($+v.value),D=v.length);break}break;case"label":T.push({ind:v,mode:S,doc:b.contents});break;default:}T.length===0&&o.length>0&&(T.push(...o.reverse()),o.length=0)}let d=m.indexOf(u.placeholder);if(d!==-1){let v=m.indexOf(u.placeholder,d+1),S=m.slice(0,d).join(""),b=m.slice(d+1,v).join(""),B=m.slice(v+1).join("");return{formatted:S+b+B,cursorNodeStart:S.length,cursorNodeText:b}}return{formatted:m.join("")}}r.exports={printDocToString:N}}}),MD=te({"src/document/doc-debug.js"(e,r){"use strict";ne();var{isConcat:t,getDocParts:s}=Yt();function a(u){if(!u)return"";if(t(u)){let i=[];for(let l of s(u))if(t(l))i.push(...a(l).parts);else{let p=a(l);p!==""&&i.push(p)}return{type:"concat",parts:i}}return u.type==="if-break"?Object.assign(Object.assign({},u),{},{breakContents:a(u.breakContents),flatContents:a(u.flatContents)}):u.type==="group"?Object.assign(Object.assign({},u),{},{contents:a(u.contents),expandedStates:u.expandedStates&&u.expandedStates.map(a)}):u.type==="fill"?{type:"fill",parts:u.parts.map(a)}:u.contents?Object.assign(Object.assign({},u),{},{contents:a(u.contents)}):u}function n(u){let i=Object.create(null),l=new Set;return p(a(u));function p(h,g,c){if(typeof h=="string")return JSON.stringify(h);if(t(h)){let f=s(h).map(p).filter(Boolean);return f.length===1?f[0]:`[${f.join(", ")}]`}if(h.type==="line"){let f=Array.isArray(c)&&c[g+1]&&c[g+1].type==="break-parent";return h.literal?f?"literalline":"literallineWithoutBreakParent":h.hard?f?"hardline":"hardlineWithoutBreakParent":h.soft?"softline":"line"}if(h.type==="break-parent")return Array.isArray(c)&&c[g-1]&&c[g-1].type==="line"&&c[g-1].hard?void 0:"breakParent";if(h.type==="trim")return"trim";if(h.type==="indent")return"indent("+p(h.contents)+")";if(h.type==="align")return h.n===Number.NEGATIVE_INFINITY?"dedentToRoot("+p(h.contents)+")":h.n<0?"dedent("+p(h.contents)+")":h.n.type==="root"?"markAsRoot("+p(h.contents)+")":"align("+JSON.stringify(h.n)+", "+p(h.contents)+")";if(h.type==="if-break")return"ifBreak("+p(h.breakContents)+(h.flatContents?", "+p(h.flatContents):"")+(h.groupId?(h.flatContents?"":', ""')+`, { groupId: ${y(h.groupId)} }`:"")+")";if(h.type==="indent-if-break"){let f=[];h.negate&&f.push("negate: true"),h.groupId&&f.push(`groupId: ${y(h.groupId)}`);let F=f.length>0?`, { ${f.join(", ")} }`:"";return`indentIfBreak(${p(h.contents)}${F})`}if(h.type==="group"){let f=[];h.break&&h.break!=="propagated"&&f.push("shouldBreak: true"),h.id&&f.push(`id: ${y(h.id)}`);let F=f.length>0?`, { ${f.join(", ")} }`:"";return h.expandedStates?`conditionalGroup([${h.expandedStates.map(_=>p(_)).join(",")}]${F})`:`group(${p(h.contents)}${F})`}if(h.type==="fill")return`fill([${h.parts.map(f=>p(f)).join(", ")}])`;if(h.type==="line-suffix")return"lineSuffix("+p(h.contents)+")";if(h.type==="line-suffix-boundary")return"lineSuffixBoundary";if(h.type==="label")return`label(${JSON.stringify(h.label)}, ${p(h.contents)})`;throw new Error("Unknown doc type "+h.type)}function y(h){if(typeof h!="symbol")return JSON.stringify(String(h));if(h in i)return i[h];let g=String(h).slice(7,-1)||"symbol";for(let c=0;;c++){let f=g+(c>0?` #${c}`:"");if(!l.has(f))return l.add(f),i[h]=`Symbol.for(${JSON.stringify(f)})`}}}r.exports={printDocToDebug:n}}}),qe=te({"src/document/index.js"(e,r){"use strict";ne(),r.exports={builders:Un(),printer:qD(),utils:Yt(),debug:MD()}}}),ja={};Kt(ja,{default:()=>RD});function RD(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var $D=ht({"node_modules/escape-string-regexp/index.js"(){ne()}}),qa=te({"node_modules/semver/internal/debug.js"(e,r){ne();var t=typeof wt=="object"&&wt.env&&wt.env.NODE_DEBUG&&/\bsemver\b/i.test(wt.env.NODE_DEBUG)?function(){for(var s=arguments.length,a=new Array(s),n=0;n{};r.exports=t}}),Ma=te({"node_modules/semver/internal/constants.js"(e,r){ne();var t="2.0.0",s=256,a=Number.MAX_SAFE_INTEGER||9007199254740991,n=16;r.exports={SEMVER_SPEC_VERSION:t,MAX_LENGTH:s,MAX_SAFE_INTEGER:a,MAX_SAFE_COMPONENT_LENGTH:n}}}),VD=te({"node_modules/semver/internal/re.js"(e,r){ne();var{MAX_SAFE_COMPONENT_LENGTH:t}=Ma(),s=qa();e=r.exports={};var a=e.re=[],n=e.src=[],u=e.t={},i=0,l=(p,y,h)=>{let g=i++;s(p,g,y),u[p]=g,n[g]=y,a[g]=new RegExp(y,h?"g":void 0)};l("NUMERICIDENTIFIER","0|[1-9]\\d*"),l("NUMERICIDENTIFIERLOOSE","[0-9]+"),l("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),l("MAINVERSION",`(${n[u.NUMERICIDENTIFIER]})\\.(${n[u.NUMERICIDENTIFIER]})\\.(${n[u.NUMERICIDENTIFIER]})`),l("MAINVERSIONLOOSE",`(${n[u.NUMERICIDENTIFIERLOOSE]})\\.(${n[u.NUMERICIDENTIFIERLOOSE]})\\.(${n[u.NUMERICIDENTIFIERLOOSE]})`),l("PRERELEASEIDENTIFIER",`(?:${n[u.NUMERICIDENTIFIER]}|${n[u.NONNUMERICIDENTIFIER]})`),l("PRERELEASEIDENTIFIERLOOSE",`(?:${n[u.NUMERICIDENTIFIERLOOSE]}|${n[u.NONNUMERICIDENTIFIER]})`),l("PRERELEASE",`(?:-(${n[u.PRERELEASEIDENTIFIER]}(?:\\.${n[u.PRERELEASEIDENTIFIER]})*))`),l("PRERELEASELOOSE",`(?:-?(${n[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${n[u.PRERELEASEIDENTIFIERLOOSE]})*))`),l("BUILDIDENTIFIER","[0-9A-Za-z-]+"),l("BUILD",`(?:\\+(${n[u.BUILDIDENTIFIER]}(?:\\.${n[u.BUILDIDENTIFIER]})*))`),l("FULLPLAIN",`v?${n[u.MAINVERSION]}${n[u.PRERELEASE]}?${n[u.BUILD]}?`),l("FULL",`^${n[u.FULLPLAIN]}$`),l("LOOSEPLAIN",`[v=\\s]*${n[u.MAINVERSIONLOOSE]}${n[u.PRERELEASELOOSE]}?${n[u.BUILD]}?`),l("LOOSE",`^${n[u.LOOSEPLAIN]}$`),l("GTLT","((?:<|>)?=?)"),l("XRANGEIDENTIFIERLOOSE",`${n[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),l("XRANGEIDENTIFIER",`${n[u.NUMERICIDENTIFIER]}|x|X|\\*`),l("XRANGEPLAIN",`[v=\\s]*(${n[u.XRANGEIDENTIFIER]})(?:\\.(${n[u.XRANGEIDENTIFIER]})(?:\\.(${n[u.XRANGEIDENTIFIER]})(?:${n[u.PRERELEASE]})?${n[u.BUILD]}?)?)?`),l("XRANGEPLAINLOOSE",`[v=\\s]*(${n[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${n[u.XRANGEIDENTIFIERLOOSE]})(?:${n[u.PRERELEASELOOSE]})?${n[u.BUILD]}?)?)?`),l("XRANGE",`^${n[u.GTLT]}\\s*${n[u.XRANGEPLAIN]}$`),l("XRANGELOOSE",`^${n[u.GTLT]}\\s*${n[u.XRANGEPLAINLOOSE]}$`),l("COERCE",`(^|[^\\d])(\\d{1,${t}})(?:\\.(\\d{1,${t}}))?(?:\\.(\\d{1,${t}}))?(?:$|[^\\d])`),l("COERCERTL",n[u.COERCE],!0),l("LONETILDE","(?:~>?)"),l("TILDETRIM",`(\\s*)${n[u.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",l("TILDE",`^${n[u.LONETILDE]}${n[u.XRANGEPLAIN]}$`),l("TILDELOOSE",`^${n[u.LONETILDE]}${n[u.XRANGEPLAINLOOSE]}$`),l("LONECARET","(?:\\^)"),l("CARETTRIM",`(\\s*)${n[u.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",l("CARET",`^${n[u.LONECARET]}${n[u.XRANGEPLAIN]}$`),l("CARETLOOSE",`^${n[u.LONECARET]}${n[u.XRANGEPLAINLOOSE]}$`),l("COMPARATORLOOSE",`^${n[u.GTLT]}\\s*(${n[u.LOOSEPLAIN]})$|^$`),l("COMPARATOR",`^${n[u.GTLT]}\\s*(${n[u.FULLPLAIN]})$|^$`),l("COMPARATORTRIM",`(\\s*)${n[u.GTLT]}\\s*(${n[u.LOOSEPLAIN]}|${n[u.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",l("HYPHENRANGE",`^\\s*(${n[u.XRANGEPLAIN]})\\s+-\\s+(${n[u.XRANGEPLAIN]})\\s*$`),l("HYPHENRANGELOOSE",`^\\s*(${n[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${n[u.XRANGEPLAINLOOSE]})\\s*$`),l("STAR","(<|>)?=?\\s*\\*"),l("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),l("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")}}),WD=te({"node_modules/semver/internal/parse-options.js"(e,r){ne();var t=["includePrerelease","loose","rtl"],s=a=>a?typeof a!="object"?{loose:!0}:t.filter(n=>a[n]).reduce((n,u)=>(n[u]=!0,n),{}):{};r.exports=s}}),HD=te({"node_modules/semver/internal/identifiers.js"(e,r){ne();var t=/^[0-9]+$/,s=(n,u)=>{let i=t.test(n),l=t.test(u);return i&&l&&(n=+n,u=+u),n===u?0:i&&!l?-1:l&&!i?1:ns(u,n);r.exports={compareIdentifiers:s,rcompareIdentifiers:a}}}),GD=te({"node_modules/semver/classes/semver.js"(e,r){ne();var t=qa(),{MAX_LENGTH:s,MAX_SAFE_INTEGER:a}=Ma(),{re:n,t:u}=VD(),i=WD(),{compareIdentifiers:l}=HD(),p=class{constructor(y,h){if(h=i(h),y instanceof p){if(y.loose===!!h.loose&&y.includePrerelease===!!h.includePrerelease)return y;y=y.version}else if(typeof y!="string")throw new TypeError(`Invalid Version: ${y}`);if(y.length>s)throw new TypeError(`version is longer than ${s} characters`);t("SemVer",y,h),this.options=h,this.loose=!!h.loose,this.includePrerelease=!!h.includePrerelease;let g=y.trim().match(h.loose?n[u.LOOSE]:n[u.FULL]);if(!g)throw new TypeError(`Invalid Version: ${y}`);if(this.raw=y,this.major=+g[1],this.minor=+g[2],this.patch=+g[3],this.major>a||this.major<0)throw new TypeError("Invalid major version");if(this.minor>a||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>a||this.patch<0)throw new TypeError("Invalid patch version");g[4]?this.prerelease=g[4].split(".").map(c=>{if(/^[0-9]+$/.test(c)){let f=+c;if(f>=0&&f=0;)typeof this.prerelease[g]=="number"&&(this.prerelease[g]++,g=-2);g===-1&&this.prerelease.push(0)}h&&(l(this.prerelease[0],h)===0?isNaN(this.prerelease[1])&&(this.prerelease=[h,0]):this.prerelease=[h,0]);break;default:throw new Error(`invalid increment argument: ${y}`)}return this.format(),this.raw=this.version,this}};r.exports=p}}),zn=te({"node_modules/semver/functions/compare.js"(e,r){ne();var t=GD(),s=(a,n,u)=>new t(a,u).compare(new t(n,u));r.exports=s}}),UD=te({"node_modules/semver/functions/lt.js"(e,r){ne();var t=zn(),s=(a,n,u)=>t(a,n,u)<0;r.exports=s}}),JD=te({"node_modules/semver/functions/gte.js"(e,r){ne();var t=zn(),s=(a,n,u)=>t(a,n,u)>=0;r.exports=s}}),zD=te({"src/utils/arrayify.js"(e,r){"use strict";ne(),r.exports=(t,s)=>Object.entries(t).map(a=>{let[n,u]=a;return Object.assign({[s]:n},u)})}}),XD=te({"node_modules/outdent/lib/index.js"(e,r){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.outdent=void 0;function t(){for(var E=[],N=0;Ntypeof h=="string"||typeof h=="function",choices:[{value:"flow",description:"Flow"},{value:"babel",since:"1.16.0",description:"JavaScript"},{value:"babel-flow",since:"1.16.0",description:"Flow"},{value:"babel-ts",since:"2.0.0",description:"TypeScript"},{value:"typescript",since:"1.4.0",description:"TypeScript"},{value:"acorn",since:"2.6.0",description:"JavaScript"},{value:"espree",since:"2.2.0",description:"JavaScript"},{value:"meriyah",since:"2.2.0",description:"JavaScript"},{value:"css",since:"1.7.1",description:"CSS"},{value:"less",since:"1.7.1",description:"Less"},{value:"scss",since:"1.7.1",description:"SCSS"},{value:"json",since:"1.5.0",description:"JSON"},{value:"json5",since:"1.13.0",description:"JSON5"},{value:"json-stringify",since:"1.13.0",description:"JSON.stringify"},{value:"graphql",since:"1.5.0",description:"GraphQL"},{value:"markdown",since:"1.8.0",description:"Markdown"},{value:"mdx",since:"1.15.0",description:"MDX"},{value:"vue",since:"1.10.0",description:"Vue"},{value:"yaml",since:"1.14.0",description:"YAML"},{value:"glimmer",since:"2.3.0",description:"Ember / Handlebars"},{value:"html",since:"1.15.0",description:"HTML"},{value:"angular",since:"1.15.0",description:"Angular"},{value:"lwc",since:"1.17.0",description:"Lightning Web Components"}]},plugins:{since:"1.10.0",type:"path",array:!0,default:[{value:[]}],category:l,description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:h=>typeof h=="string"||typeof h=="object",cliName:"plugin",cliCategory:s},pluginSearchDirs:{since:"1.13.0",type:"path",array:!0,default:[{value:[]}],category:l,description:t` + Custom directory that contains prettier plugins in node_modules subdirectory. + Overrides default behavior when plugins are searched relatively to the location of Prettier. + Multiple values are accepted. + `,exception:h=>typeof h=="string"||typeof h=="object",cliName:"plugin-search-dir",cliCategory:s},printWidth:{since:"0.0.0",category:l,type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},rangeEnd:{since:"1.4.0",category:p,type:"int",default:Number.POSITIVE_INFINITY,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:t` + Format code ending at a given character offset (exclusive). + The range will extend forwards to the end of the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:a},rangeStart:{since:"1.4.0",category:p,type:"int",default:0,range:{start:0,end:Number.POSITIVE_INFINITY,step:1},description:t` + Format code starting at a given character offset. + The range will extend backwards to the start of the first line containing the selected statement. + This option cannot be used with --cursor-offset. + `,cliCategory:a},requirePragma:{since:"1.7.0",category:p,type:"boolean",default:!1,description:t` + Require either '@prettier' or '@format' to be present in the file's first docblock comment + in order for it to be formatted. + `,cliCategory:u},tabWidth:{type:"int",category:l,default:2,description:"Number of spaces per indentation level.",range:{start:0,end:Number.POSITIVE_INFINITY,step:1}},useTabs:{since:"1.0.0",category:l,type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{since:"2.1.0",category:l,type:"choice",default:[{since:"2.1.0",value:"auto"}],description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}};r.exports={CATEGORY_CONFIG:s,CATEGORY_EDITOR:a,CATEGORY_FORMAT:n,CATEGORY_OTHER:u,CATEGORY_OUTPUT:i,CATEGORY_GLOBAL:l,CATEGORY_SPECIAL:p,options:y}}}),Xn=te({"src/main/support.js"(e,r){"use strict";ne();var t={compare:zn(),lt:UD(),gte:JD()},s=zD(),a=Ia().version,n=KD().options;function u(){let{plugins:l=[],showUnreleased:p=!1,showDeprecated:y=!1,showInternal:h=!1}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},g=a.split("-",1)[0],c=l.flatMap(E=>E.languages||[]).filter(F),f=s(Object.assign({},...l.map(E=>{let{options:N}=E;return N}),n),"name").filter(E=>F(E)&&_(E)).sort((E,N)=>E.name===N.name?0:E.name{E=Object.assign({},E),Array.isArray(E.default)&&(E.default=E.default.length===1?E.default[0].value:E.default.filter(F).sort((x,I)=>t.compare(I.since,x.since))[0].value),Array.isArray(E.choices)&&(E.choices=E.choices.filter(x=>F(x)&&_(x)),E.name==="parser"&&i(E,c,l));let N=Object.fromEntries(l.filter(x=>x.defaultOptions&&x.defaultOptions[E.name]!==void 0).map(x=>[x.name,x.defaultOptions[E.name]]));return Object.assign(Object.assign({},E),{},{pluginDefaults:N})});return{languages:c,options:f};function F(E){return p||!("since"in E)||E.since&&t.gte(g,E.since)}function _(E){return y||!("deprecated"in E)||E.deprecated&&t.lt(g,E.deprecated)}function w(E){if(h)return E;let{cliName:N,cliCategory:x,cliDescription:I}=E;return Hn(E,hD)}}function i(l,p,y){let h=new Set(l.choices.map(g=>g.value));for(let g of p)if(g.parsers){for(let c of g.parsers)if(!h.has(c)){h.add(c);let f=y.find(_=>_.parsers&&_.parsers[c]),F=g.name;f&&f.name&&(F+=` (plugin: ${f.name})`),l.choices.push({value:c,description:F})}}}r.exports={getSupportInfo:u}}}),Kn=te({"src/utils/is-non-empty-array.js"(e,r){"use strict";ne();function t(s){return Array.isArray(s)&&s.length>0}r.exports=t}}),Pr=te({"src/utils/text/skip.js"(e,r){"use strict";ne();function t(i){return(l,p,y)=>{let h=y&&y.backwards;if(p===!1)return!1;let{length:g}=l,c=p;for(;c>=0&&cV[V.length-2];function _(V){return(j,Y,ie)=>{let ee=ie&&ie.backwards;if(Y===!1)return!1;let{length:ce}=j,W=Y;for(;W>=0&&W2&&arguments[2]!==void 0?arguments[2]:{},ie=l(V,Y.backwards?j-1:j,Y),ee=c(V,ie,Y);return ie!==ee}function E(V,j,Y){for(let ie=j;ie2&&arguments[2]!==void 0?arguments[2]:{};return l(V,Y.backwards?j-1:j,Y)!==j}function T(V,j){let Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,ie=0;for(let ee=Y;eede?ce:ee}return W}function o(V,j){let Y=V.slice(1,-1),ie=j.parser==="json"||j.parser==="json5"&&j.quoteProps==="preserve"&&!j.singleQuote?'"':j.__isInHtmlAttribute?"'":C(Y,j.singleQuote?"'":'"').quote;return d(Y,ie,!(j.parser==="css"||j.parser==="less"||j.parser==="scss"||j.__embeddedInHtml))}function d(V,j,Y){let ie=j==='"'?"'":'"',ee=/\\(.)|(["'])/gs,ce=V.replace(ee,(W,K,de)=>K===ie?K:de===j?"\\"+de:de||(Y&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/.test(K)?K:"\\"+K));return j+ce+j}function v(V){return V.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(\d)/,"$1$2$3").replace(/^([+-]?[\d.]+)e[+-]?0+$/,"$1").replace(/^([+-])?\./,"$10.").replace(/(\.\d+?)0+(?=e|$)/,"$1").replace(/\.(?=e|$)/,"")}function S(V,j){let Y=V.match(new RegExp(`(${t(j)})+`,"g"));return Y===null?0:Y.reduce((ie,ee)=>Math.max(ie,ee.length/j.length),0)}function b(V,j){let Y=V.match(new RegExp(`(${t(j)})+`,"g"));if(Y===null)return 0;let ie=new Map,ee=0;for(let ce of Y){let W=ce.length/j.length;ie.set(W,!0),W>ee&&(ee=W)}for(let ce=1;ce{let{name:ce}=ee;return ce.toLowerCase()===V})||Y.find(ee=>{let{aliases:ce}=ee;return Array.isArray(ce)&&ce.includes(V)})||Y.find(ee=>{let{extensions:ce}=ee;return Array.isArray(ce)&&ce.includes(`.${V}`)});return ie&&ie.parsers[0]}function J(V){return V&&V.type==="front-matter"}function L(V){let j=new WeakMap;return function(Y){return j.has(Y)||j.set(Y,Symbol(V)),j.get(Y)}}function Q(V){let j=V.type||V.kind||"(unknown type)",Y=String(V.name||V.id&&(typeof V.id=="object"?V.id.name:V.id)||V.key&&(typeof V.key=="object"?V.key.name:V.key)||V.value&&(typeof V.value=="object"?"":String(V.value))||V.operator||"");return Y.length>20&&(Y=Y.slice(0,19)+"\u2026"),j+(Y?" "+Y:"")}r.exports={inferParserByLanguage:q,getStringWidth:u,getMaxContinuousCount:S,getMinNotPresentContinuousCount:b,getPenultimate:F,getLast:s,getNextNonSpaceNonCommentCharacterIndexWithStartIndex:f,getNextNonSpaceNonCommentCharacterIndex:P,getNextNonSpaceNonCommentCharacter:$,skip:_,skipWhitespace:i,skipSpaces:l,skipToLineEnd:p,skipEverythingButNewLine:y,skipInlineComment:h,skipTrailingComment:g,skipNewline:c,isNextLineEmptyAfterIndex:x,isNextLineEmpty:I,isPreviousLineEmpty:N,hasNewline:w,hasNewlineInRange:E,hasSpaces:D,getAlignmentSize:T,getIndentSize:m,getPreferredQuote:C,printString:o,printNumber:v,makeString:d,addLeadingComment:k,addDanglingComment:M,addTrailingComment:R,isFrontMatterNode:J,isNonEmptyArray:n,createGroupIdMapper:L}}}),Wa={};Kt(Wa,{basename:()=>za,default:()=>Ka,delimiter:()=>Mn,dirname:()=>Ja,extname:()=>Xa,isAbsolute:()=>Qn,join:()=>Ga,normalize:()=>Yn,relative:()=>Ua,resolve:()=>wr,sep:()=>qn});function Ha(e,r){for(var t=0,s=e.length-1;s>=0;s--){var a=e[s];a==="."?e.splice(s,1):a===".."?(e.splice(s,1),t++):t&&(e.splice(s,1),t--)}if(r)for(;t--;t)e.unshift("..");return e}function wr(){for(var e="",r=!1,t=arguments.length-1;t>=-1&&!r;t--){var s=t>=0?arguments[t]:"/";if(typeof s!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!s)continue;e=s+"/"+e,r=s.charAt(0)==="/"}return e=Ha(Zn(e.split("/"),function(a){return!!a}),!r).join("/"),(r?"/":"")+e||"."}function Yn(e){var r=Qn(e),t=Ya(e,-1)==="/";return e=Ha(Zn(e.split("/"),function(s){return!!s}),!r).join("/"),!e&&!r&&(e="."),e&&t&&(e+="/"),(r?"/":"")+e}function Qn(e){return e.charAt(0)==="/"}function Ga(){var e=Array.prototype.slice.call(arguments,0);return Yn(Zn(e,function(r,t){if(typeof r!="string")throw new TypeError("Arguments to path.join must be strings");return r}).join("/"))}function Ua(e,r){e=wr(e).substr(1),r=wr(r).substr(1);function t(p){for(var y=0;y=0&&p[h]==="";h--);return y>h?[]:p.slice(y,h-y+1)}for(var s=t(e.split("/")),a=t(r.split("/")),n=Math.min(s.length,a.length),u=n,i=0;iNr,__asyncDelegator:()=>fm,__asyncGenerator:()=>pm,__asyncValues:()=>Dm,__await:()=>Xt,__awaiter:()=>sm,__classPrivateFieldGet:()=>ym,__classPrivateFieldSet:()=>hm,__createBinding:()=>am,__decorate:()=>rm,__exportStar:()=>om,__extends:()=>em,__generator:()=>im,__importDefault:()=>gm,__importStar:()=>dm,__makeTemplateObject:()=>mm,__metadata:()=>um,__param:()=>nm,__read:()=>Qa,__rest:()=>tm,__spread:()=>lm,__spreadArrays:()=>cm,__values:()=>Rn});function em(e,r){Br(e,r);function t(){this.constructor=e}e.prototype=r===null?Object.create(r):(t.prototype=r.prototype,new t)}function tm(e,r){var t={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&r.indexOf(s)<0&&(t[s]=e[s]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,s=Object.getOwnPropertySymbols(e);a=0;i--)(u=e[i])&&(n=(a<3?u(n):a>3?u(r,t,n):u(r,t))||n);return a>3&&n&&Object.defineProperty(r,t,n),n}function nm(e,r){return function(t,s){r(t,s,e)}}function um(e,r){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,r)}function sm(e,r,t,s){function a(n){return n instanceof t?n:new t(function(u){u(n)})}return new(t||(t=Promise))(function(n,u){function i(y){try{p(s.next(y))}catch(h){u(h)}}function l(y){try{p(s.throw(y))}catch(h){u(h)}}function p(y){y.done?n(y.value):a(y.value).then(i,l)}p((s=s.apply(e,r||[])).next())})}function im(e,r){var t={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},s,a,n,u;return u={next:i(0),throw:i(1),return:i(2)},typeof Symbol=="function"&&(u[Symbol.iterator]=function(){return this}),u;function i(p){return function(y){return l([p,y])}}function l(p){if(s)throw new TypeError("Generator is already executing.");for(;t;)try{if(s=1,a&&(n=p[0]&2?a.return:p[0]?a.throw||((n=a.return)&&n.call(a),0):a.next)&&!(n=n.call(a,p[1])).done)return n;switch(a=0,n&&(p=[p[0]&2,n.value]),p[0]){case 0:case 1:n=p;break;case 4:return t.label++,{value:p[1],done:!1};case 5:t.label++,a=p[1],p=[0];continue;case 7:p=t.ops.pop(),t.trys.pop();continue;default:if(n=t.trys,!(n=n.length>0&&n[n.length-1])&&(p[0]===6||p[0]===2)){t=0;continue}if(p[0]===3&&(!n||p[1]>n[0]&&p[1]=e.length&&(e=void 0),{value:e&&e[s++],done:!e}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")}function Qa(e,r){var t=typeof Symbol=="function"&&e[Symbol.iterator];if(!t)return e;var s=t.call(e),a,n=[],u;try{for(;(r===void 0||r-- >0)&&!(a=s.next()).done;)n.push(a.value)}catch(i){u={error:i}}finally{try{a&&!a.done&&(t=s.return)&&t.call(s)}finally{if(u)throw u.error}}return n}function lm(){for(var e=[],r=0;r1||i(g,c)})})}function i(g,c){try{l(s[g](c))}catch(f){h(n[0][3],f)}}function l(g){g.value instanceof Xt?Promise.resolve(g.value.v).then(p,y):h(n[0][2],g)}function p(g){i("next",g)}function y(g){i("throw",g)}function h(g,c){g(c),n.shift(),n.length&&i(n[0][0],n[0][1])}}function fm(e){var r,t;return r={},s("next"),s("throw",function(a){throw a}),s("return"),r[Symbol.iterator]=function(){return this},r;function s(a,n){r[a]=e[a]?function(u){return(t=!t)?{value:Xt(e[a](u)),done:a==="return"}:n?n(u):u}:n}}function Dm(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=e[Symbol.asyncIterator],t;return r?r.call(e):(e=typeof Rn=="function"?Rn(e):e[Symbol.iterator](),t={},s("next"),s("throw"),s("return"),t[Symbol.asyncIterator]=function(){return this},t);function s(n){t[n]=e[n]&&function(u){return new Promise(function(i,l){u=e[n](u),a(i,l,u.done,u.value)})}}function a(n,u,i,l){Promise.resolve(l).then(function(p){n({value:p,done:i})},u)}}function mm(e,r){return Object.defineProperty?Object.defineProperty(e,"raw",{value:r}):e.raw=r,e}function dm(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var t in e)Object.hasOwnProperty.call(e,t)&&(r[t]=e[t]);return r.default=e,r}function gm(e){return e&&e.__esModule?e:{default:e}}function ym(e,r){if(!r.has(e))throw new TypeError("attempted to get private field on non-instance");return r.get(e)}function hm(e,r,t){if(!r.has(e))throw new TypeError("attempted to set private field on non-instance");return r.set(e,t),t}var Br,Nr,Et=ht({"node_modules/tslib/tslib.es6.js"(){ne(),Br=function(e,r){return Br=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,s){t.__proto__=s}||function(t,s){for(var a in s)s.hasOwnProperty(a)&&(t[a]=s[a])},Br(e,r)},Nr=function(){return Nr=Object.assign||function(r){for(var t,s=1,a=arguments.length;s/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(r)?r:JSON.stringify(r),value(r){if(r===null||typeof r!="object")return JSON.stringify(r);if(Array.isArray(r))return`[${r.map(s=>e.apiDescriptor.value(s)).join(", ")}]`;let t=Object.keys(r);return t.length===0?"{}":`{ ${t.map(s=>`${e.apiDescriptor.key(s)}: ${e.apiDescriptor.value(r[s])}`).join(", ")} }`},pair:r=>{let{key:t,value:s}=r;return e.apiDescriptor.value({[t]:s})}}}}),vm=te({"node_modules/vnopts/lib/descriptors/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(Za(),e)}}),kr=te({"scripts/build/shims/chalk.cjs"(e,r){"use strict";ne();var t=s=>s;t.grey=t,t.red=t,t.bold=t,t.yellow=t,t.blue=t,t.default=t,r.exports=t}}),eo=te({"node_modules/vnopts/lib/handlers/deprecated/common.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=kr();e.commonDeprecatedHandler=(t,s,a)=>{let{descriptor:n}=a,u=[`${r.default.yellow(typeof t=="string"?n.key(t):n.pair(t))} is deprecated`];return s&&u.push(`we now treat it as ${r.default.blue(typeof s=="string"?n.key(s):n.pair(s))}`),u.join("; ")+"."}}}),Cm=te({"node_modules/vnopts/lib/handlers/deprecated/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(eo(),e)}}),Em=te({"node_modules/vnopts/lib/handlers/invalid/common.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=kr();e.commonInvalidHandler=(t,s,a)=>[`Invalid ${r.default.red(a.descriptor.key(t))} value.`,`Expected ${r.default.blue(a.schemas[t].expected(a))},`,`but received ${r.default.red(a.descriptor.value(s))}.`].join(" ")}}),to=te({"node_modules/vnopts/lib/handlers/invalid/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(Em(),e)}}),Fm=te({"node_modules/vnopts/node_modules/leven/index.js"(e,r){"use strict";ne();var t=[],s=[];r.exports=function(a,n){if(a===n)return 0;var u=a;a.length>n.length&&(a=n,n=u);var i=a.length,l=n.length;if(i===0)return l;if(l===0)return i;for(;i>0&&a.charCodeAt(~-i)===n.charCodeAt(~-l);)i--,l--;if(i===0)return l;for(var p=0;ph?c>h?h+1:c:c>g?g+1:c;return h}}}),ro=te({"node_modules/vnopts/lib/handlers/unknown/leven.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=kr(),t=Fm();e.levenUnknownHandler=(s,a,n)=>{let{descriptor:u,logger:i,schemas:l}=n,p=[`Ignored unknown option ${r.default.yellow(u.pair({key:s,value:a}))}.`],y=Object.keys(l).sort().find(h=>t(s,h)<3);y&&p.push(`Did you mean ${r.default.blue(u.key(y))}?`),i.warn(p.join(" "))}}}),Am=te({"node_modules/vnopts/lib/handlers/unknown/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(ro(),e)}}),Sm=te({"node_modules/vnopts/lib/handlers/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(Cm(),e),r.__exportStar(to(),e),r.__exportStar(Am(),e)}}),Ft=te({"node_modules/vnopts/lib/schema.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"];function t(n,u){let i=new n(u),l=Object.create(i);for(let p of r)p in u&&(l[p]=a(u[p],i,s.prototype[p].length));return l}e.createSchema=t;var s=class{constructor(n){this.name=n.name}static create(n){return t(this,n)}default(n){}expected(n){return"nothing"}validate(n,u){return!1}deprecated(n,u){return!1}forward(n,u){}redirect(n,u){}overlap(n,u,i){return n}preprocess(n,u){return n}postprocess(n,u){return n}};e.Schema=s;function a(n,u,i){return typeof n=="function"?function(){for(var l=arguments.length,p=new Array(l),y=0;yn}}}),xm=te({"node_modules/vnopts/lib/schemas/alias.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=class extends r.Schema{constructor(s){super(s),this._sourceName=s.sourceName}expected(s){return s.schemas[this._sourceName].expected(s)}validate(s,a){return a.schemas[this._sourceName].validate(s,a)}redirect(s,a){return this._sourceName}};e.AliasSchema=t}}),bm=te({"node_modules/vnopts/lib/schemas/any.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=class extends r.Schema{expected(){return"anything"}validate(){return!0}};e.AnySchema=t}}),Tm=te({"node_modules/vnopts/lib/schemas/array.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt)),t=Ft(),s=class extends t.Schema{constructor(n){var{valueSchema:u,name:i=u.name}=n,l=r.__rest(n,["valueSchema","name"]);super(Object.assign({},l,{name:i})),this._valueSchema=u}expected(n){return`an array of ${this._valueSchema.expected(n)}`}validate(n,u){if(!Array.isArray(n))return!1;let i=[];for(let l of n){let p=u.normalizeValidateResult(this._valueSchema.validate(l,u),l);p!==!0&&i.push(p.value)}return i.length===0?!0:{value:i}}deprecated(n,u){let i=[];for(let l of n){let p=u.normalizeDeprecatedResult(this._valueSchema.deprecated(l,u),l);p!==!1&&i.push(...p.map(y=>{let{value:h}=y;return{value:[h]}}))}return i}forward(n,u){let i=[];for(let l of n){let p=u.normalizeForwardResult(this._valueSchema.forward(l,u),l);i.push(...p.map(a))}return i}redirect(n,u){let i=[],l=[];for(let p of n){let y=u.normalizeRedirectResult(this._valueSchema.redirect(p,u),p);"remain"in y&&i.push(y.remain),l.push(...y.redirect.map(a))}return i.length===0?{redirect:l}:{redirect:l,remain:i}}overlap(n,u){return n.concat(u)}};e.ArraySchema=s;function a(n){let{from:u,to:i}=n;return{from:[u],to:i}}}}),Bm=te({"node_modules/vnopts/lib/schemas/boolean.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=class extends r.Schema{expected(){return"true or false"}validate(s){return typeof s=="boolean"}};e.BooleanSchema=t}}),eu=te({"node_modules/vnopts/lib/utils.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});function r(c,f){let F=Object.create(null);for(let _ of c){let w=_[f];if(F[w])throw new Error(`Duplicate ${f} ${JSON.stringify(w)}`);F[w]=_}return F}e.recordFromArray=r;function t(c,f){let F=new Map;for(let _ of c){let w=_[f];if(F.has(w))throw new Error(`Duplicate ${f} ${JSON.stringify(w)}`);F.set(w,_)}return F}e.mapFromArray=t;function s(){let c=Object.create(null);return f=>{let F=JSON.stringify(f);return c[F]?!0:(c[F]=!0,!1)}}e.createAutoChecklist=s;function a(c,f){let F=[],_=[];for(let w of c)f(w)?F.push(w):_.push(w);return[F,_]}e.partition=a;function n(c){return c===Math.floor(c)}e.isInt=n;function u(c,f){if(c===f)return 0;let F=typeof c,_=typeof f,w=["undefined","object","boolean","number","string"];return F!==_?w.indexOf(F)-w.indexOf(_):F!=="string"?Number(c)-Number(f):c.localeCompare(f)}e.comparePrimitive=u;function i(c){return c===void 0?{}:c}e.normalizeDefaultResult=i;function l(c,f){return c===!0?!0:c===!1?{value:f}:c}e.normalizeValidateResult=l;function p(c,f){let F=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return c===!1?!1:c===!0?F?!0:[{value:f}]:"value"in c?[c]:c.length===0?!1:c}e.normalizeDeprecatedResult=p;function y(c,f){return typeof c=="string"||"key"in c?{from:f,to:c}:"from"in c?{from:c.from,to:c.to}:{from:f,to:c.to}}e.normalizeTransferResult=y;function h(c,f){return c===void 0?[]:Array.isArray(c)?c.map(F=>y(F,f)):[y(c,f)]}e.normalizeForwardResult=h;function g(c,f){let F=h(typeof c=="object"&&"redirect"in c?c.redirect:c,f);return F.length===0?{remain:f,redirect:F}:typeof c=="object"&&"remain"in c?{remain:c.remain,redirect:F}:{redirect:F}}e.normalizeRedirectResult=g}}),Nm=te({"node_modules/vnopts/lib/schemas/choice.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=eu(),s=class extends r.Schema{constructor(a){super(a),this._choices=t.mapFromArray(a.choices.map(n=>n&&typeof n=="object"?n:{value:n}),"value")}expected(a){let{descriptor:n}=a,u=Array.from(this._choices.keys()).map(p=>this._choices.get(p)).filter(p=>!p.deprecated).map(p=>p.value).sort(t.comparePrimitive).map(n.value),i=u.slice(0,-2),l=u.slice(-2);return i.concat(l.join(" or ")).join(", ")}validate(a){return this._choices.has(a)}deprecated(a){let n=this._choices.get(a);return n&&n.deprecated?{value:a}:!1}forward(a){let n=this._choices.get(a);return n?n.forward:void 0}redirect(a){let n=this._choices.get(a);return n?n.redirect:void 0}};e.ChoiceSchema=s}}),no=te({"node_modules/vnopts/lib/schemas/number.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=class extends r.Schema{expected(){return"a number"}validate(s,a){return typeof s=="number"}};e.NumberSchema=t}}),wm=te({"node_modules/vnopts/lib/schemas/integer.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=eu(),t=no(),s=class extends t.NumberSchema{expected(){return"an integer"}validate(a,n){return n.normalizeValidateResult(super.validate(a,n),a)===!0&&r.isInt(a)}};e.IntegerSchema=s}}),_m=te({"node_modules/vnopts/lib/schemas/string.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Ft(),t=class extends r.Schema{expected(){return"a string"}validate(s){return typeof s=="string"}};e.StringSchema=t}}),Pm=te({"node_modules/vnopts/lib/schemas/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(xm(),e),r.__exportStar(bm(),e),r.__exportStar(Tm(),e),r.__exportStar(Bm(),e),r.__exportStar(Nm(),e),r.__exportStar(wm(),e),r.__exportStar(no(),e),r.__exportStar(_m(),e)}}),Im=te({"node_modules/vnopts/lib/defaults.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Za(),t=eo(),s=to(),a=ro();e.defaultDescriptor=r.apiDescriptor,e.defaultUnknownHandler=a.levenUnknownHandler,e.defaultInvalidHandler=s.commonInvalidHandler,e.defaultDeprecatedHandler=t.commonDeprecatedHandler}}),km=te({"node_modules/vnopts/lib/normalize.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Im(),t=eu();e.normalize=(a,n,u)=>new s(n,u).normalize(a);var s=class{constructor(a,n){let{logger:u=console,descriptor:i=r.defaultDescriptor,unknown:l=r.defaultUnknownHandler,invalid:p=r.defaultInvalidHandler,deprecated:y=r.defaultDeprecatedHandler}=n||{};this._utils={descriptor:i,logger:u||{warn:()=>{}},schemas:t.recordFromArray(a,"name"),normalizeDefaultResult:t.normalizeDefaultResult,normalizeDeprecatedResult:t.normalizeDeprecatedResult,normalizeForwardResult:t.normalizeForwardResult,normalizeRedirectResult:t.normalizeRedirectResult,normalizeValidateResult:t.normalizeValidateResult},this._unknownHandler=l,this._invalidHandler=p,this._deprecatedHandler=y,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=t.createAutoChecklist()}normalize(a){let n={},u=[a],i=()=>{for(;u.length!==0;){let l=u.shift(),p=this._applyNormalization(l,n);u.push(...p)}};i();for(let l of Object.keys(this._utils.schemas)){let p=this._utils.schemas[l];if(!(l in n)){let y=t.normalizeDefaultResult(p.default(this._utils));"value"in y&&u.push({[l]:y.value})}}i();for(let l of Object.keys(this._utils.schemas)){let p=this._utils.schemas[l];l in n&&(n[l]=p.postprocess(n[l],this._utils))}return n}_applyNormalization(a,n){let u=[],[i,l]=t.partition(Object.keys(a),p=>p in this._utils.schemas);for(let p of i){let y=this._utils.schemas[p],h=y.preprocess(a[p],this._utils),g=t.normalizeValidateResult(y.validate(h,this._utils),h);if(g!==!0){let{value:w}=g,E=this._invalidHandler(p,w,this._utils);throw typeof E=="string"?new Error(E):E}let c=w=>{let{from:E,to:N}=w;u.push(typeof N=="string"?{[N]:E}:{[N.key]:N.value})},f=w=>{let{value:E,redirectTo:N}=w,x=t.normalizeDeprecatedResult(y.deprecated(E,this._utils),h,!0);if(x!==!1)if(x===!0)this._hasDeprecationWarned(p)||this._utils.logger.warn(this._deprecatedHandler(p,N,this._utils));else for(let{value:I}of x){let P={key:p,value:I};if(!this._hasDeprecationWarned(P)){let $=typeof N=="string"?{key:N,value:I}:N;this._utils.logger.warn(this._deprecatedHandler(P,$,this._utils))}}};t.normalizeForwardResult(y.forward(h,this._utils),h).forEach(c);let _=t.normalizeRedirectResult(y.redirect(h,this._utils),h);if(_.redirect.forEach(c),"remain"in _){let w=_.remain;n[p]=p in n?y.overlap(n[p],w,this._utils):w,f({value:w})}for(let{from:w,to:E}of _.redirect)f({value:w,redirectTo:E})}for(let p of l){let y=a[p],h=this._unknownHandler(p,y,this._utils);if(h)for(let g of Object.keys(h)){let c={[g]:h[g]};g in this._utils.schemas?u.push(c):Object.assign(n,c)}}return u}};e.Normalizer=s}}),Lm=te({"node_modules/vnopts/lib/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=(Et(),ft(vt));r.__exportStar(vm(),e),r.__exportStar(Sm(),e),r.__exportStar(Pm(),e),r.__exportStar(km(),e),r.__exportStar(Ft(),e)}}),Om=te({"src/main/options-normalizer.js"(e,r){"use strict";ne();var t=Lm(),s=lt(),a={key:g=>g.length===1?`-${g}`:`--${g}`,value:g=>t.apiDescriptor.value(g),pair:g=>{let{key:c,value:f}=g;return f===!1?`--no-${c}`:f===!0?a.key(c):f===""?`${a.key(c)} without an argument`:`${a.key(c)}=${f}`}},n=g=>{let{colorsModule:c,levenshteinDistance:f}=g;return class extends t.ChoiceSchema{constructor(_){let{name:w,flags:E}=_;super({name:w,choices:E}),this._flags=[...E].sort()}preprocess(_,w){if(typeof _=="string"&&_.length>0&&!this._flags.includes(_)){let E=this._flags.find(N=>f(N,_)<3);if(E)return w.logger.warn([`Unknown flag ${c.yellow(w.descriptor.value(_))},`,`did you mean ${c.blue(w.descriptor.value(E))}?`].join(" ")),E}return _}expected(){return"a flag"}}},u;function i(g,c){let{logger:f=!1,isCLI:F=!1,passThrough:_=!1,colorsModule:w=null,levenshteinDistance:E=null}=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},N=_?Array.isArray(_)?(T,m)=>_.includes(T)?{[T]:m}:void 0:(T,m)=>({[T]:m}):(T,m,C)=>{let o=C.schemas,{_:d}=o,v=Hn(o,vD);return t.levenUnknownHandler(T,m,Object.assign(Object.assign({},C),{},{schemas:v}))},x=F?a:t.apiDescriptor,I=l(c,{isCLI:F,colorsModule:w,levenshteinDistance:E}),P=new t.Normalizer(I,{logger:f,unknown:N,descriptor:x}),$=f!==!1;$&&u&&(P._hasDeprecationWarned=u);let D=P.normalize(g);return $&&(u=P._hasDeprecationWarned),F&&D["plugin-search"]===!1&&(D["plugin-search-dir"]=!1),D}function l(g,c){let{isCLI:f,colorsModule:F,levenshteinDistance:_}=c,w=[];f&&w.push(t.AnySchema.create({name:"_"}));for(let E of g)w.push(p(E,{isCLI:f,optionInfos:g,colorsModule:F,levenshteinDistance:_})),E.alias&&f&&w.push(t.AliasSchema.create({name:E.alias,sourceName:E.name}));return w}function p(g,c){let{isCLI:f,optionInfos:F,colorsModule:_,levenshteinDistance:w}=c,{name:E}=g;if(E==="plugin-search-dir"||E==="pluginSearchDirs")return t.AnySchema.create({name:E,preprocess(P){return P===!1||(P=Array.isArray(P)?P:[P]),P},validate(P){return P===!1?!0:P.every($=>typeof $=="string")},expected(){return"false or paths to plugin search dir"}});let N={name:E},x,I={};switch(g.type){case"int":x=t.IntegerSchema,f&&(N.preprocess=Number);break;case"string":x=t.StringSchema;break;case"choice":x=t.ChoiceSchema,N.choices=g.choices.map(P=>typeof P=="object"&&P.redirect?Object.assign(Object.assign({},P),{},{redirect:{to:{key:g.name,value:P.redirect}}}):P);break;case"boolean":x=t.BooleanSchema;break;case"flag":x=n({colorsModule:_,levenshteinDistance:w}),N.flags=F.flatMap(P=>[P.alias,P.description&&P.name,P.oppositeDescription&&`no-${P.name}`].filter(Boolean));break;case"path":x=t.StringSchema;break;default:throw new Error(`Unexpected type ${g.type}`)}if(g.exception?N.validate=(P,$,D)=>g.exception(P)||$.validate(P,D):N.validate=(P,$,D)=>P===void 0||$.validate(P,D),g.redirect&&(I.redirect=P=>P?{to:{key:g.redirect.option,value:g.redirect.value}}:void 0),g.deprecated&&(I.deprecated=!0),f&&!g.array){let P=N.preprocess||($=>$);N.preprocess=($,D,T)=>D.preprocess(P(Array.isArray($)?s($):$),T)}return g.array?t.ArraySchema.create(Object.assign(Object.assign(Object.assign({},f?{preprocess:P=>Array.isArray(P)?P:[P]}:{}),I),{},{valueSchema:x.create(N)})):x.create(Object.assign(Object.assign({},N),I))}function y(g,c,f){return i(g,c,f)}function h(g,c,f){return i(g,c,Object.assign({isCLI:!0},f))}r.exports={normalizeApiOptions:y,normalizeCliOptions:h}}}),ut=te({"src/language-js/loc.js"(e,r){"use strict";ne();var t=Kn();function s(l){var p,y;let h=l.range?l.range[0]:l.start,g=(p=(y=l.declaration)===null||y===void 0?void 0:y.decorators)!==null&&p!==void 0?p:l.decorators;return t(g)?Math.min(s(g[0]),h):h}function a(l){return l.range?l.range[1]:l.end}function n(l,p){let y=s(l);return Number.isInteger(y)&&y===s(p)}function u(l,p){let y=a(l);return Number.isInteger(y)&&y===a(p)}function i(l,p){return n(l,p)&&u(l,p)}r.exports={locStart:s,locEnd:a,hasSameLocStart:n,hasSameLoc:i}}}),jm=te({"src/main/load-parser.js"(e,r){ne(),r.exports=()=>{}}}),qm=te({"scripts/build/shims/babel-highlight.cjs"(e,r){"use strict";ne();var t=kr(),s={shouldHighlight:()=>!1,getChalk:()=>t};r.exports=s}}),Mm=te({"node_modules/@babel/code-frame/lib/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.codeFrameColumns=u,e.default=i;var r=qm(),t=!1;function s(l){return{gutter:l.grey,marker:l.red.bold,message:l.red.bold}}var a=/\r\n|[\n\r\u2028\u2029]/;function n(l,p,y){let h=Object.assign({column:0,line:-1},l.start),g=Object.assign({},h,l.end),{linesAbove:c=2,linesBelow:f=3}=y||{},F=h.line,_=h.column,w=g.line,E=g.column,N=Math.max(F-(c+1),0),x=Math.min(p.length,w+f);F===-1&&(N=0),w===-1&&(x=p.length);let I=w-F,P={};if(I)for(let $=0;$<=I;$++){let D=$+F;if(!_)P[D]=!0;else if($===0){let T=p[D-1].length;P[D]=[_,T-_+1]}else if($===I)P[D]=[0,E];else{let T=p[D-$].length;P[D]=[0,T]}}else _===E?_?P[F]=[_,0]:P[F]=!0:P[F]=[_,E-_];return{start:N,end:x,markerLines:P}}function u(l,p){let y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},h=(y.highlightCode||y.forceColor)&&(0,r.shouldHighlight)(y),g=(0,r.getChalk)(y),c=s(g),f=($,D)=>h?$(D):D,F=l.split(a),{start:_,end:w,markerLines:E}=n(p,F,y),N=p.start&&typeof p.start.column=="number",x=String(w).length,P=(h?(0,r.default)(l,y):l).split(a,w).slice(_,w).map(($,D)=>{let T=_+1+D,C=` ${` ${T}`.slice(-x)} |`,o=E[T],d=!E[T+1];if(o){let v="";if(Array.isArray(o)){let S=$.slice(0,Math.max(o[0]-1,0)).replace(/[^\t]/g," "),b=o[1]||1;v=[` + `,f(c.gutter,C.replace(/\d/g," "))," ",S,f(c.marker,"^").repeat(b)].join(""),d&&y.message&&(v+=" "+f(c.message,y.message))}return[f(c.marker,">"),f(c.gutter,C),$.length>0?` ${$}`:"",v].join("")}else return` ${f(c.gutter,C)}${$.length>0?` ${$}`:""}`}).join(` +`);return y.message&&!N&&(P=`${" ".repeat(x+1)}${y.message} +${P}`),h?g.reset(P):P}function i(l,p,y){let h=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};if(!t){t=!0;let c="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(wt.emitWarning)wt.emitWarning(c,"DeprecationWarning");else{let f=new Error(c);f.name="DeprecationWarning",console.warn(new Error(c))}}return y=Math.max(y,0),u(l,{start:{column:y,line:p}},h)}}}),tu=te({"src/main/parser.js"(e,r){"use strict";ne();var{ConfigError:t}=Qt(),s=ut(),a=jm(),{locStart:n,locEnd:u}=s,i=Object.getOwnPropertyNames,l=Object.getOwnPropertyDescriptor;function p(g){let c={};for(let f of g.plugins)if(f.parsers)for(let F of i(f.parsers))Object.defineProperty(c,F,l(f.parsers,F));return c}function y(g){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p(g);if(typeof g.parser=="function")return{parse:g.parser,astFormat:"estree",locStart:n,locEnd:u};if(typeof g.parser=="string"){if(Object.prototype.hasOwnProperty.call(c,g.parser))return c[g.parser];throw new t(`Couldn't resolve parser "${g.parser}". Parsers must be explicitly added to the standalone bundle.`)}}function h(g,c){let f=p(c),F=Object.defineProperties({},Object.fromEntries(Object.keys(f).map(w=>[w,{enumerable:!0,get(){return f[w].parse}}]))),_=y(c,f);try{return _.preprocess&&(g=_.preprocess(g,c)),{text:g,ast:_.parse(g,F,c)}}catch(w){let{loc:E}=w;if(E){let{codeFrameColumns:N}=Mm();throw w.codeFrame=N(g,E,{highlightCode:!0}),w.message+=` +`+w.codeFrame,w}throw w}}r.exports={parse:h,resolveParser:y}}}),uo=te({"src/main/options.js"(e,r){"use strict";ne();var t=ZD(),{UndefinedParserError:s}=Qt(),{getSupportInfo:a}=Xn(),n=Om(),{resolveParser:u}=tu(),i={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null};function l(h){let g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},c=Object.assign({},h),f=a({plugins:h.plugins,showUnreleased:!0,showDeprecated:!0}).options,F=Object.assign(Object.assign({},i),Object.fromEntries(f.filter(x=>x.default!==void 0).map(x=>[x.name,x.default])));if(!c.parser){if(!c.filepath)(g.logger||console).warn("No parser and no filepath given, using 'babel' the parser now but this will throw an error in the future. Please specify a parser or a filepath so one can be inferred."),c.parser="babel";else if(c.parser=y(c.filepath,c.plugins),!c.parser)throw new s(`No parser could be inferred for file: ${c.filepath}`)}let _=u(n.normalizeApiOptions(c,[f.find(x=>x.name==="parser")],{passThrough:!0,logger:!1}));c.astFormat=_.astFormat,c.locEnd=_.locEnd,c.locStart=_.locStart;let w=p(c);c.printer=w.printers[c.astFormat];let E=Object.fromEntries(f.filter(x=>x.pluginDefaults&&x.pluginDefaults[w.name]!==void 0).map(x=>[x.name,x.pluginDefaults[w.name]])),N=Object.assign(Object.assign({},F),E);for(let[x,I]of Object.entries(N))(c[x]===null||c[x]===void 0)&&(c[x]=I);return c.parser==="json"&&(c.trailingComma="none"),n.normalizeApiOptions(c,f,Object.assign({passThrough:Object.keys(i)},g))}function p(h){let{astFormat:g}=h;if(!g)throw new Error("getPlugin() requires astFormat to be set");let c=h.plugins.find(f=>f.printers&&f.printers[g]);if(!c)throw new Error(`Couldn't find plugin for AST format "${g}"`);return c}function y(h,g){let c=t.basename(h).toLowerCase(),F=a({plugins:g}).languages.filter(_=>_.since!==null).find(_=>_.extensions&&_.extensions.some(w=>c.endsWith(w))||_.filenames&&_.filenames.some(w=>w.toLowerCase()===c));return F&&F.parsers[0]}r.exports={normalize:l,hiddenDefaults:i,inferParser:y}}}),Rm=te({"src/main/massage-ast.js"(e,r){"use strict";ne();function t(s,a,n){if(Array.isArray(s))return s.map(p=>t(p,a,n)).filter(Boolean);if(!s||typeof s!="object")return s;let u=a.printer.massageAstNode,i;u&&u.ignoredProperties?i=u.ignoredProperties:i=new Set;let l={};for(let[p,y]of Object.entries(s))!i.has(p)&&typeof y!="function"&&(l[p]=t(y,a,s));if(u){let p=u(s,l,n);if(p===null)return;if(p)return p}return l}r.exports=t}}),Zt=te({"scripts/build/shims/assert.cjs"(e,r){"use strict";ne();var t=()=>{};t.ok=t,t.strictEqual=t,r.exports=t}}),et=te({"src/main/comments.js"(e,r){"use strict";ne();var t=Zt(),{builders:{line:s,hardline:a,breakParent:n,indent:u,lineSuffix:i,join:l,cursor:p}}=qe(),{hasNewline:y,skipNewline:h,skipSpaces:g,isPreviousLineEmpty:c,addLeadingComment:f,addDanglingComment:F,addTrailingComment:_}=Ue(),w=new WeakMap;function E(k,M,R){if(!k)return;let{printer:q,locStart:J,locEnd:L}=M;if(R){if(q.canAttachComment&&q.canAttachComment(k)){let V;for(V=R.length-1;V>=0&&!(J(R[V])<=J(k)&&L(R[V])<=L(k));--V);R.splice(V+1,0,k);return}}else if(w.has(k))return w.get(k);let Q=q.getCommentChildNodes&&q.getCommentChildNodes(k,M)||typeof k=="object"&&Object.entries(k).filter(V=>{let[j]=V;return j!=="enclosingNode"&&j!=="precedingNode"&&j!=="followingNode"&&j!=="tokens"&&j!=="comments"&&j!=="parent"}).map(V=>{let[,j]=V;return j});if(Q){R||(R=[],w.set(k,R));for(let V of Q)E(V,M,R);return R}}function N(k,M,R,q){let{locStart:J,locEnd:L}=R,Q=J(M),V=L(M),j=E(k,R),Y,ie,ee=0,ce=j.length;for(;ee>1,K=j[W],de=J(K),ue=L(K);if(de<=Q&&V<=ue)return N(K,M,R,K);if(ue<=Q){Y=K,ee=W+1;continue}if(V<=de){ie=K,ce=W;continue}throw new Error("Comment location overlaps with node location")}if(q&&q.type==="TemplateLiteral"){let{quasis:W}=q,K=C(W,M,R);Y&&C(W,Y,R)!==K&&(Y=null),ie&&C(W,ie,R)!==K&&(ie=null)}return{enclosingNode:q,precedingNode:Y,followingNode:ie}}var x=()=>!1;function I(k,M,R,q){if(!Array.isArray(k))return;let J=[],{locStart:L,locEnd:Q,printer:{handleComments:V={}}}=q,{avoidAstMutation:j,ownLine:Y=x,endOfLine:ie=x,remaining:ee=x}=V,ce=k.map((W,K)=>Object.assign(Object.assign({},N(M,W,q)),{},{comment:W,text:R,options:q,ast:M,isLastComment:k.length-1===K}));for(let[W,K]of ce.entries()){let{comment:de,precedingNode:ue,enclosingNode:Fe,followingNode:z,text:U,options:Z,ast:se,isLastComment:fe}=K;if(Z.parser==="json"||Z.parser==="json5"||Z.parser==="__js_expression"||Z.parser==="__vue_expression"||Z.parser==="__vue_ts_expression"){if(L(de)-L(se)<=0){f(se,de);continue}if(Q(de)-Q(se)>=0){_(se,de);continue}}let ge;if(j?ge=[K]:(de.enclosingNode=Fe,de.precedingNode=ue,de.followingNode=z,ge=[de,U,Z,se,fe]),$(U,Z,ce,W))de.placement="ownLine",Y(...ge)||(z?f(z,de):ue?_(ue,de):F(Fe||se,de));else if(D(U,Z,ce,W))de.placement="endOfLine",ie(...ge)||(ue?_(ue,de):z?f(z,de):F(Fe||se,de));else if(de.placement="remaining",!ee(...ge))if(ue&&z){let he=J.length;he>0&&J[he-1].followingNode!==z&&T(J,U,Z),J.push(K)}else ue?_(ue,de):z?f(z,de):F(Fe||se,de)}if(T(J,R,q),!j)for(let W of k)delete W.precedingNode,delete W.enclosingNode,delete W.followingNode}var P=k=>!/[\S\n\u2028\u2029]/.test(k);function $(k,M,R,q){let{comment:J,precedingNode:L}=R[q],{locStart:Q,locEnd:V}=M,j=Q(J);if(L)for(let Y=q-1;Y>=0;Y--){let{comment:ie,precedingNode:ee}=R[Y];if(ee!==L||!P(k.slice(V(ie),j)))break;j=Q(ie)}return y(k,j,{backwards:!0})}function D(k,M,R,q){let{comment:J,followingNode:L}=R[q],{locStart:Q,locEnd:V}=M,j=V(J);if(L)for(let Y=q+1;Y0;--Y){let{comment:ie,precedingNode:ee,followingNode:ce}=k[Y-1];t.strictEqual(ee,J),t.strictEqual(ce,L);let W=M.slice(R.locEnd(ie),j);if(V.test(W))j=R.locStart(ie);else break}for(let[ie,{comment:ee}]of k.entries())ie1&&ie.comments.sort((ee,ce)=>R.locStart(ee)-R.locStart(ce));k.length=0}function m(k,M){let R=k.getValue();return R.printed=!0,M.printer.printComment(k,M)}function C(k,M,R){let q=R.locStart(M)-1;for(let J=1;J{let Q=k.getValue();!Q.leading&&!Q.trailing&&(!q||q(Q))&&J.push(m(k,M))},"comments"),J.length===0)?"":R?l(a,J):u([a,l(a,J)])}function S(k,M,R){let q=k.getValue();if(!q)return{};let J=q.comments||[];R&&(J=J.filter(j=>!R.has(j)));let L=q===M.cursorNode;if(J.length===0){let j=L?p:"";return{leading:j,trailing:j}}let Q=[],V=[];return k.each(()=>{let j=k.getValue();if(R&&R.has(j))return;let{leading:Y,trailing:ie}=j;Y?Q.push(o(k,M)):ie&&V.push(d(k,M))},"comments"),L&&(Q.unshift(p),V.push(p)),{leading:Q,trailing:V}}function b(k,M,R,q){let{leading:J,trailing:L}=S(k,R,q);return!J&&!L?M:[J,M,L]}function B(k){if(k)for(let M of k){if(!M.printed)throw new Error('Comment "'+M.value.trim()+'" was not printed. Please report this error!');delete M.printed}}r.exports={attach:I,printComments:b,printCommentsSeparately:S,printDanglingComments:v,getSortedChildNodes:E,ensureAllCommentsPrinted:B}}}),$m=te({"src/common/ast-path.js"(e,r){"use strict";ne();var t=lt();function s(u,i){let l=a(u.stack,i);return l===-1?null:u.stack[l]}function a(u,i){for(let l=u.length-1;l>=0;l-=2){let p=u[l];if(p&&!Array.isArray(p)&&--i<0)return l}return-1}var n=class{constructor(u){this.stack=[u]}getName(){let{stack:u}=this,{length:i}=u;return i>1?u[i-2]:null}getValue(){return t(this.stack)}getNode(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;return s(this,u)}getParentNode(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;return s(this,u+1)}call(u){let{stack:i}=this,{length:l}=i,p=t(i);for(var y=arguments.length,h=new Array(y>1?y-1:0),g=1;g1&&arguments[1]!==void 0?arguments[1]:0,l=a(this.stack,i+1),p=this.stack.splice(l+1),y=u(this);return this.stack.push(...p),y}each(u){let{stack:i}=this,{length:l}=i,p=t(i);for(var y=arguments.length,h=new Array(y>1?y-1:0),g=1;g1?l-1:0),y=1;y{i[g]=u(h,g,c)},...p),i}try(u){let{stack:i}=this,l=[...i];try{return u()}finally{i.length=0,i.push(...l)}}match(){let u=this.stack.length-1,i=null,l=this.stack[u--];for(var p=arguments.length,y=new Array(p),h=0;hu(h,g,p,y,c),p)}function u(i,l,p,y){let{stripTrailingHardline:h=!1}=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{},g=s(Object.assign(Object.assign(Object.assign({},p),l),{},{parentParser:p.parser,originalText:i}),{passThrough:!0}),c=tu().parse(i,g),{ast:f}=c;i=c.text;let F=f.comments;delete f.comments,a.attach(F,f,i,g),g[Symbol.for("comments")]=F||[],g[Symbol.for("tokens")]=f.tokens||[];let _=y(f,g);return a.ensureAllCommentsPrinted(F),h?typeof _=="string"?_.replace(/(?:\r?\n)*$/,""):t(_):_}r.exports={printSubtree:n}}}),Wm=te({"src/main/ast-to-doc.js"(e,r){"use strict";ne();var t=$m(),{builders:{hardline:s,addAlignmentToDoc:a},utils:{propagateBreaks:n}}=qe(),{printComments:u}=et(),i=Vm();function l(h,g){let c=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,{printer:f}=g;f.preprocess&&(h=f.preprocess(h,g));let F=new Map,_=new t(h),w=E();return c>0&&(w=a([s,w],c,g.tabWidth)),n(w),w;function E(x,I){return x===void 0||x===_?N(I):Array.isArray(x)?_.call(()=>N(I),...x):_.call(()=>N(I),x)}function N(x){let I=_.getValue(),P=I&&typeof I=="object"&&x===void 0;if(P&&F.has(I))return F.get(I);let $=y(_,g,E,x);return P&&F.set(I,$),$}}function p(h,g){let{originalText:c,[Symbol.for("comments")]:f,locStart:F,locEnd:_}=g,w=F(h),E=_(h),N=new Set;for(let x of f)F(x)>=w&&_(x)<=E&&(x.printed=!0,N.add(x));return{doc:c.slice(w,E),printedComments:N}}function y(h,g,c,f){let F=h.getValue(),{printer:_}=g,w,E;if(_.hasPrettierIgnore&&_.hasPrettierIgnore(h))({doc:w,printedComments:E}=p(F,g));else{if(F)try{w=i.printSubtree(h,c,g,l)}catch(N){if(globalThis.PRETTIER_DEBUG)throw N}w||(w=_.print(h,g,c,f))}return(!_.willPrintOwnComments||!_.willPrintOwnComments(h,g))&&(w=u(h,w,g,E)),w}r.exports=l}}),Hm=te({"src/main/range-util.js"(e,r){"use strict";ne();var t=Zt(),s=et(),a=f=>{let{parser:F}=f;return F==="json"||F==="json5"||F==="json-stringify"};function n(f,F){let _=[f.node,...f.parentNodes],w=new Set([F.node,...F.parentNodes]);return _.find(E=>y.has(E.type)&&w.has(E))}function u(f){let F=f.length-1;for(;;){let _=f[F];if(_&&(_.type==="Program"||_.type==="File"))F--;else break}return f.slice(0,F+1)}function i(f,F,_){let{locStart:w,locEnd:E}=_,N=f.node,x=F.node;if(N===x)return{startNode:N,endNode:x};let I=w(f.node);for(let $ of u(F.parentNodes))if(w($)>=I)x=$;else break;let P=E(F.node);for(let $ of u(f.parentNodes)){if(E($)<=P)N=$;else break;if(N===x)break}return{startNode:N,endNode:x}}function l(f,F,_,w){let E=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],N=arguments.length>5?arguments[5]:void 0,{locStart:x,locEnd:I}=_,P=x(f),$=I(f);if(!(F>$||Fw);let I=f.slice(w,E).search(/\S/),P=I===-1;if(!P)for(w+=I;E>w&&!/\S/.test(f[E-1]);--E);let $=l(_,w,F,(C,o)=>g(F,C,o),[],"rangeStart"),D=P?$:l(_,E,F,C=>g(F,C),[],"rangeEnd");if(!$||!D)return{rangeStart:0,rangeEnd:0};let T,m;if(a(F)){let C=n($,D);T=C,m=C}else({startNode:T,endNode:m}=i($,D,F));return{rangeStart:Math.min(N(T),N(m)),rangeEnd:Math.max(x(T),x(m))}}r.exports={calculateRange:c,findNodeAtOffset:l}}}),Gm=te({"src/main/core.js"(e,r){"use strict";ne();var{diffArrays:t}=BD(),{printer:{printDocToString:s},debug:{printDocToDebug:a}}=qe(),{getAlignmentSize:n}=Ue(),{guessEndOfLine:u,convertEndOfLineToChars:i,countEndOfLineChars:l,normalizeEndOfLine:p}=Jn(),y=uo().normalize,h=Rm(),g=et(),c=tu(),f=Wm(),F=Hm(),_="\uFEFF",w=Symbol("cursor");function E(m,C,o){let d=C.comments;return d&&(delete C.comments,g.attach(d,C,m,o)),o[Symbol.for("comments")]=d||[],o[Symbol.for("tokens")]=C.tokens||[],o.originalText=m,d}function N(m,C){let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;if(!m||m.trim().length===0)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:d,text:v}=c.parse(m,C);if(C.cursorOffset>=0){let k=F.findNodeAtOffset(d,C.cursorOffset,C);k&&k.node&&(C.cursorNode=k.node)}let S=E(v,d,C),b=f(d,C,o),B=s(b,C);if(g.ensureAllCommentsPrinted(S),o>0){let k=B.formatted.trim();B.cursorNodeStart!==void 0&&(B.cursorNodeStart-=B.formatted.indexOf(k)),B.formatted=k+i(C.endOfLine)}if(C.cursorOffset>=0){let k,M,R,q,J;if(C.cursorNode&&B.cursorNodeText?(k=C.locStart(C.cursorNode),M=v.slice(k,C.locEnd(C.cursorNode)),R=C.cursorOffset-k,q=B.cursorNodeStart,J=B.cursorNodeText):(k=0,M=v,R=C.cursorOffset,q=0,J=B.formatted),M===J)return{formatted:B.formatted,cursorOffset:q+R,comments:S};let L=[...M];L.splice(R,0,w);let Q=[...J],V=t(L,Q),j=q;for(let Y of V)if(Y.removed){if(Y.value.includes(w))break}else j+=Y.count;return{formatted:B.formatted,cursorOffset:j,comments:S}}return{formatted:B.formatted,cursorOffset:-1,comments:S}}function x(m,C){let{ast:o,text:d}=c.parse(m,C),{rangeStart:v,rangeEnd:S}=F.calculateRange(d,C,o),b=d.slice(v,S),B=Math.min(v,d.lastIndexOf(` +`,v)+1),k=d.slice(B,v).match(/^\s*/)[0],M=n(k,C.tabWidth),R=N(b,Object.assign(Object.assign({},C),{},{rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:C.cursorOffset>v&&C.cursorOffset<=S?C.cursorOffset-v:-1,endOfLine:"lf"}),M),q=R.formatted.trimEnd(),{cursorOffset:J}=C;J>S?J+=q.length-b.length:R.cursorOffset>=0&&(J=R.cursorOffset+v);let L=d.slice(0,v)+q+d.slice(S);if(C.endOfLine!=="lf"){let Q=i(C.endOfLine);J>=0&&Q===`\r +`&&(J+=l(L.slice(0,J),` +`)),L=L.replace(/\n/g,Q)}return{formatted:L,cursorOffset:J,comments:R.comments}}function I(m,C,o){return typeof C!="number"||Number.isNaN(C)||C<0||C>m.length?o:C}function P(m,C){let{cursorOffset:o,rangeStart:d,rangeEnd:v}=C;return o=I(m,o,-1),d=I(m,d,0),v=I(m,v,m.length),Object.assign(Object.assign({},C),{},{cursorOffset:o,rangeStart:d,rangeEnd:v})}function $(m,C){let{cursorOffset:o,rangeStart:d,rangeEnd:v,endOfLine:S}=P(m,C),b=m.charAt(0)===_;if(b&&(m=m.slice(1),o--,d--,v--),S==="auto"&&(S=u(m)),m.includes("\r")){let B=k=>l(m.slice(0,Math.max(k,0)),`\r +`);o-=B(o),d-=B(d),v-=B(v),m=p(m)}return{hasBOM:b,text:m,options:P(m,Object.assign(Object.assign({},C),{},{cursorOffset:o,rangeStart:d,rangeEnd:v,endOfLine:S}))}}function D(m,C){let o=c.resolveParser(C);return!o.hasPragma||o.hasPragma(m)}function T(m,C){let{hasBOM:o,text:d,options:v}=$(m,y(C));if(v.rangeStart>=v.rangeEnd&&d!==""||v.requirePragma&&!D(d,v))return{formatted:m,cursorOffset:C.cursorOffset,comments:[]};let S;return v.rangeStart>0||v.rangeEnd=0&&S.cursorOffset++),S}r.exports={formatWithCursor:T,parse(m,C,o){let{text:d,options:v}=$(m,y(C)),S=c.parse(d,v);return o&&(S.ast=h(S.ast,v)),S},formatAST(m,C){C=y(C);let o=f(m,C);return s(o,C)},formatDoc(m,C){return T(a(m),Object.assign(Object.assign({},C),{},{parser:"__js_expression"})).formatted},printToDoc(m,C){C=y(C);let{ast:o,text:d}=c.parse(m,C);return E(d,o,C),f(o,C)},printDocToString(m,C){return s(m,y(C))}}}}),Um=te({"src/common/util-shared.js"(e,r){"use strict";ne();var{getMaxContinuousCount:t,getStringWidth:s,getAlignmentSize:a,getIndentSize:n,skip:u,skipWhitespace:i,skipSpaces:l,skipNewline:p,skipToLineEnd:y,skipEverythingButNewLine:h,skipInlineComment:g,skipTrailingComment:c,hasNewline:f,hasNewlineInRange:F,hasSpaces:_,isNextLineEmpty:w,isNextLineEmptyAfterIndex:E,isPreviousLineEmpty:N,getNextNonSpaceNonCommentCharacterIndex:x,makeString:I,addLeadingComment:P,addDanglingComment:$,addTrailingComment:D}=Ue();r.exports={getMaxContinuousCount:t,getStringWidth:s,getAlignmentSize:a,getIndentSize:n,skip:u,skipWhitespace:i,skipSpaces:l,skipNewline:p,skipToLineEnd:y,skipEverythingButNewLine:h,skipInlineComment:g,skipTrailingComment:c,hasNewline:f,hasNewlineInRange:F,hasSpaces:_,isNextLineEmpty:w,isNextLineEmptyAfterIndex:E,isPreviousLineEmpty:N,getNextNonSpaceNonCommentCharacterIndex:x,makeString:I,addLeadingComment:P,addDanglingComment:$,addTrailingComment:D}}}),_t=te({"src/utils/create-language.js"(e,r){"use strict";ne(),r.exports=function(t,s){let{languageId:a}=t,n=Hn(t,CD);return Object.assign(Object.assign({linguistLanguageId:a},n),s(t))}}}),Jm=te({"node_modules/esutils/lib/ast.js"(e,r){ne(),function(){"use strict";function t(l){if(l==null)return!1;switch(l.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"Literal":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":return!0}return!1}function s(l){if(l==null)return!1;switch(l.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0}return!1}function a(l){if(l==null)return!1;switch(l.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":return!0}return!1}function n(l){return a(l)||l!=null&&l.type==="FunctionDeclaration"}function u(l){switch(l.type){case"IfStatement":return l.alternate!=null?l.alternate:l.consequent;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return l.body}return null}function i(l){var p;if(l.type!=="IfStatement"||l.alternate==null)return!1;p=l.consequent;do{if(p.type==="IfStatement"&&p.alternate==null)return!0;p=u(p)}while(p);return!1}r.exports={isExpression:t,isStatement:a,isIterationStatement:s,isSourceElement:n,isProblematicIfStatement:i,trailingStatement:u}}()}}),so=te({"node_modules/esutils/lib/code.js"(e,r){ne(),function(){"use strict";var t,s,a,n,u,i;s={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/},t={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/};function l(E){return 48<=E&&E<=57}function p(E){return 48<=E&&E<=57||97<=E&&E<=102||65<=E&&E<=70}function y(E){return E>=48&&E<=55}a=[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];function h(E){return E===32||E===9||E===11||E===12||E===160||E>=5760&&a.indexOf(E)>=0}function g(E){return E===10||E===13||E===8232||E===8233}function c(E){if(E<=65535)return String.fromCharCode(E);var N=String.fromCharCode(Math.floor((E-65536)/1024)+55296),x=String.fromCharCode((E-65536)%1024+56320);return N+x}for(n=new Array(128),i=0;i<128;++i)n[i]=i>=97&&i<=122||i>=65&&i<=90||i===36||i===95;for(u=new Array(128),i=0;i<128;++i)u[i]=i>=97&&i<=122||i>=65&&i<=90||i>=48&&i<=57||i===36||i===95;function f(E){return E<128?n[E]:s.NonAsciiIdentifierStart.test(c(E))}function F(E){return E<128?u[E]:s.NonAsciiIdentifierPart.test(c(E))}function _(E){return E<128?n[E]:t.NonAsciiIdentifierStart.test(c(E))}function w(E){return E<128?u[E]:t.NonAsciiIdentifierPart.test(c(E))}r.exports={isDecimalDigit:l,isHexDigit:p,isOctalDigit:y,isWhiteSpace:h,isLineTerminator:g,isIdentifierStartES5:f,isIdentifierPartES5:F,isIdentifierStartES6:_,isIdentifierPartES6:w}}()}}),zm=te({"node_modules/esutils/lib/keyword.js"(e,r){ne(),function(){"use strict";var t=so();function s(f){switch(f){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"let":return!0;default:return!1}}function a(f,F){return!F&&f==="yield"?!1:n(f,F)}function n(f,F){if(F&&s(f))return!0;switch(f.length){case 2:return f==="if"||f==="in"||f==="do";case 3:return f==="var"||f==="for"||f==="new"||f==="try";case 4:return f==="this"||f==="else"||f==="case"||f==="void"||f==="with"||f==="enum";case 5:return f==="while"||f==="break"||f==="catch"||f==="throw"||f==="const"||f==="yield"||f==="class"||f==="super";case 6:return f==="return"||f==="typeof"||f==="delete"||f==="switch"||f==="export"||f==="import";case 7:return f==="default"||f==="finally"||f==="extends";case 8:return f==="function"||f==="continue"||f==="debugger";case 10:return f==="instanceof";default:return!1}}function u(f,F){return f==="null"||f==="true"||f==="false"||a(f,F)}function i(f,F){return f==="null"||f==="true"||f==="false"||n(f,F)}function l(f){return f==="eval"||f==="arguments"}function p(f){var F,_,w;if(f.length===0||(w=f.charCodeAt(0),!t.isIdentifierStartES5(w)))return!1;for(F=1,_=f.length;F<_;++F)if(w=f.charCodeAt(F),!t.isIdentifierPartES5(w))return!1;return!0}function y(f,F){return(f-55296)*1024+(F-56320)+65536}function h(f){var F,_,w,E,N;if(f.length===0)return!1;for(N=t.isIdentifierStartES6,F=0,_=f.length;F<_;++F){if(w=f.charCodeAt(F),55296<=w&&w<=56319){if(++F,F>=_||(E=f.charCodeAt(F),!(56320<=E&&E<=57343)))return!1;w=y(w,E)}if(!N(w))return!1;N=t.isIdentifierPartES6}return!0}function g(f,F){return p(f)&&!u(f,F)}function c(f,F){return h(f)&&!i(f,F)}r.exports={isKeywordES5:a,isKeywordES6:n,isReservedWordES5:u,isReservedWordES6:i,isRestrictedWord:l,isIdentifierNameES5:p,isIdentifierNameES6:h,isIdentifierES5:g,isIdentifierES6:c}}()}}),Xm=te({"node_modules/esutils/lib/utils.js"(e){ne(),function(){"use strict";e.ast=Jm(),e.code=so(),e.keyword=zm()}()}}),Pt=te({"src/language-js/utils/is-block-comment.js"(e,r){"use strict";ne();var t=new Set(["Block","CommentBlock","MultiLine"]),s=a=>t.has(a==null?void 0:a.type);r.exports=s}}),Km=te({"src/language-js/utils/is-node-matches.js"(e,r){"use strict";ne();function t(a,n){let u=n.split(".");for(let i=u.length-1;i>=0;i--){let l=u[i];if(i===0)return a.type==="Identifier"&&a.name===l;if(a.type!=="MemberExpression"||a.optional||a.computed||a.property.type!=="Identifier"||a.property.name!==l)return!1;a=a.object}}function s(a,n){return n.some(u=>t(a,u))}r.exports=s}}),Ke=te({"src/language-js/utils/index.js"(e,r){"use strict";ne();var t=Xm().keyword.isIdentifierNameES5,{getLast:s,hasNewline:a,skipWhitespace:n,isNonEmptyArray:u,isNextLineEmptyAfterIndex:i,getStringWidth:l}=Ue(),{locStart:p,locEnd:y,hasSameLocStart:h}=ut(),g=Pt(),c=Km(),f="(?:(?=.)\\s)",F=new RegExp(`^${f}*:`),_=new RegExp(`^${f}*::`);function w(O){var me,_e;return((me=O.extra)===null||me===void 0?void 0:me.parenthesized)&&g((_e=O.trailingComments)===null||_e===void 0?void 0:_e[0])&&F.test(O.trailingComments[0].value)}function E(O){let me=O==null?void 0:O[0];return g(me)&&_.test(me.value)}function N(O,me){if(!O||typeof O!="object")return!1;if(Array.isArray(O))return O.some(He=>N(He,me));let _e=me(O);return typeof _e=="boolean"?_e:Object.values(O).some(He=>N(He,me))}function x(O){return O.type==="AssignmentExpression"||O.type==="BinaryExpression"||O.type==="LogicalExpression"||O.type==="NGPipeExpression"||O.type==="ConditionalExpression"||de(O)||ue(O)||O.type==="SequenceExpression"||O.type==="TaggedTemplateExpression"||O.type==="BindExpression"||O.type==="UpdateExpression"&&!O.prefix||st(O)||O.type==="TSNonNullExpression"}function I(O){var me,_e,He,Ge,it,Qe;return O.expressions?O.expressions[0]:(me=(_e=(He=(Ge=(it=(Qe=O.left)!==null&&Qe!==void 0?Qe:O.test)!==null&&it!==void 0?it:O.callee)!==null&&Ge!==void 0?Ge:O.object)!==null&&He!==void 0?He:O.tag)!==null&&_e!==void 0?_e:O.argument)!==null&&me!==void 0?me:O.expression}function P(O,me){if(me.expressions)return["expressions",0];if(me.left)return["left"];if(me.test)return["test"];if(me.object)return["object"];if(me.callee)return["callee"];if(me.tag)return["tag"];if(me.argument)return["argument"];if(me.expression)return["expression"];throw new Error("Unexpected node has no left side.")}function $(O){return O=new Set(O),me=>O.has(me==null?void 0:me.type)}var D=$(["Line","CommentLine","SingleLine","HashbangComment","HTMLOpen","HTMLClose"]),T=$(["ExportDefaultDeclaration","ExportDefaultSpecifier","DeclareExportDeclaration","ExportNamedDeclaration","ExportAllDeclaration"]);function m(O){let me=O.getParentNode();return O.getName()==="declaration"&&T(me)?me:null}var C=$(["BooleanLiteral","DirectiveLiteral","Literal","NullLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","RegExpLiteral","StringLiteral","TemplateLiteral","TSTypeLiteral","JSXText"]);function o(O){return O.type==="NumericLiteral"||O.type==="Literal"&&typeof O.value=="number"}function d(O){return O.type==="UnaryExpression"&&(O.operator==="+"||O.operator==="-")&&o(O.argument)}function v(O){return O.type==="StringLiteral"||O.type==="Literal"&&typeof O.value=="string"}var S=$(["ObjectTypeAnnotation","TSTypeLiteral","TSMappedType"]),b=$(["FunctionExpression","ArrowFunctionExpression"]);function B(O){return O.type==="FunctionExpression"||O.type==="ArrowFunctionExpression"&&O.body.type==="BlockStatement"}function k(O){return de(O)&&O.callee.type==="Identifier"&&["async","inject","fakeAsync","waitForAsync"].includes(O.callee.name)}var M=$(["JSXElement","JSXFragment"]);function R(O,me){if(O.parentParser!=="markdown"&&O.parentParser!=="mdx")return!1;let _e=me.getNode();if(!_e.expression||!M(_e.expression))return!1;let He=me.getParentNode();return He.type==="Program"&&He.body.length===1}function q(O){return O.kind==="get"||O.kind==="set"}function J(O){return q(O)||h(O,O.value)}function L(O){return(O.type==="ObjectTypeProperty"||O.type==="ObjectTypeInternalSlot")&&O.value.type==="FunctionTypeAnnotation"&&!O.static&&!J(O)}function Q(O){return(O.type==="TypeAnnotation"||O.type==="TSTypeAnnotation")&&O.typeAnnotation.type==="FunctionTypeAnnotation"&&!O.static&&!h(O,O.typeAnnotation)}var V=$(["BinaryExpression","LogicalExpression","NGPipeExpression"]);function j(O){return ue(O)||O.type==="BindExpression"&&Boolean(O.object)}var Y=new Set(["AnyTypeAnnotation","TSAnyKeyword","NullLiteralTypeAnnotation","TSNullKeyword","ThisTypeAnnotation","TSThisType","NumberTypeAnnotation","TSNumberKeyword","VoidTypeAnnotation","TSVoidKeyword","BooleanTypeAnnotation","TSBooleanKeyword","BigIntTypeAnnotation","TSBigIntKeyword","SymbolTypeAnnotation","TSSymbolKeyword","StringTypeAnnotation","TSStringKeyword","BooleanLiteralTypeAnnotation","StringLiteralTypeAnnotation","BigIntLiteralTypeAnnotation","NumberLiteralTypeAnnotation","TSLiteralType","TSTemplateLiteralType","EmptyTypeAnnotation","MixedTypeAnnotation","TSNeverKeyword","TSObjectKeyword","TSUndefinedKeyword","TSUnknownKeyword"]);function ie(O){return O?!!((O.type==="GenericTypeAnnotation"||O.type==="TSTypeReference")&&!O.typeParameters||Y.has(O.type)):!1}function ee(O){let me=/^(?:before|after)(?:Each|All)$/;return O.callee.type==="Identifier"&&me.test(O.callee.name)&&O.arguments.length===1}var ce=["it","it.only","it.skip","describe","describe.only","describe.skip","test","test.only","test.skip","test.step","test.describe","test.describe.only","test.describe.parallel","test.describe.parallel.only","test.describe.serial","test.describe.serial.only","skip","xit","xdescribe","xtest","fit","fdescribe","ftest"];function W(O){return c(O,ce)}function K(O,me){if(O.type!=="CallExpression")return!1;if(O.arguments.length===1){if(k(O)&&me&&K(me))return b(O.arguments[0]);if(ee(O))return k(O.arguments[0])}else if((O.arguments.length===2||O.arguments.length===3)&&(O.arguments[0].type==="TemplateLiteral"||v(O.arguments[0]))&&W(O.callee))return O.arguments[2]&&!o(O.arguments[2])?!1:(O.arguments.length===2?b(O.arguments[1]):B(O.arguments[1])&&ve(O.arguments[1]).length<=1)||k(O.arguments[1]);return!1}var de=$(["CallExpression","OptionalCallExpression"]),ue=$(["MemberExpression","OptionalMemberExpression"]);function Fe(O){let me="expressions";O.type==="TSTemplateLiteralType"&&(me="types");let _e=O[me];return _e.length===0?!1:_e.every(He=>{if(Me(He))return!1;if(He.type==="Identifier"||He.type==="ThisExpression")return!0;if(ue(He)){let Ge=He;for(;ue(Ge);)if(Ge.property.type!=="Identifier"&&Ge.property.type!=="Literal"&&Ge.property.type!=="StringLiteral"&&Ge.property.type!=="NumericLiteral"||(Ge=Ge.object,Me(Ge)))return!1;return Ge.type==="Identifier"||Ge.type==="ThisExpression"}return!1})}function z(O,me){return O==="+"||O==="-"?O+me:me}function U(O,me){let _e=p(me),He=n(O,y(me));return He!==!1&&O.slice(_e,_e+2)==="/*"&&O.slice(He,He+2)==="*/"}function Z(O,me){return M(me)?Oe(me):Me(me,Te.Leading,_e=>a(O,y(_e)))}function se(O,me){return me.parser!=="json"&&v(O.key)&&oe(O.key).slice(1,-1)===O.key.value&&(t(O.key.value)&&!(me.parser==="babel-ts"&&O.type==="ClassProperty"||me.parser==="typescript"&&O.type==="PropertyDefinition")||fe(O.key.value)&&String(Number(O.key.value))===O.key.value&&(me.parser==="babel"||me.parser==="acorn"||me.parser==="espree"||me.parser==="meriyah"||me.parser==="__babel_estree"))}function fe(O){return/^(?:\d+|\d+\.\d+)$/.test(O)}function ge(O,me){let _e=/^[fx]?(?:describe|it|test)$/;return me.type==="TaggedTemplateExpression"&&me.quasi===O&&me.tag.type==="MemberExpression"&&me.tag.property.type==="Identifier"&&me.tag.property.name==="each"&&(me.tag.object.type==="Identifier"&&_e.test(me.tag.object.name)||me.tag.object.type==="MemberExpression"&&me.tag.object.property.type==="Identifier"&&(me.tag.object.property.name==="only"||me.tag.object.property.name==="skip")&&me.tag.object.object.type==="Identifier"&&_e.test(me.tag.object.object.name))}function he(O){return O.quasis.some(me=>me.value.raw.includes(` +`))}function we(O,me){return(O.type==="TemplateLiteral"&&he(O)||O.type==="TaggedTemplateExpression"&&he(O.quasi))&&!a(me,p(O),{backwards:!0})}function ke(O){if(!Me(O))return!1;let me=s(ae(O,Te.Dangling));return me&&!g(me)}function Re(O){if(O.length<=1)return!1;let me=0;for(let _e of O)if(b(_e)){if(me+=1,me>1)return!0}else if(de(_e)){for(let He of _e.arguments)if(b(He))return!0}return!1}function Ne(O){let me=O.getValue(),_e=O.getParentNode();return de(me)&&de(_e)&&_e.callee===me&&me.arguments.length>_e.arguments.length&&_e.arguments.length>0}function Pe(O,me){if(me>=2)return!1;let _e=Qe=>Pe(Qe,me+1),He=O.type==="Literal"&&"regex"in O&&O.regex.pattern||O.type==="RegExpLiteral"&&O.pattern;if(He&&l(He)>5)return!1;if(O.type==="Literal"||O.type==="BigIntLiteral"||O.type==="DecimalLiteral"||O.type==="BooleanLiteral"||O.type==="NullLiteral"||O.type==="NumericLiteral"||O.type==="RegExpLiteral"||O.type==="StringLiteral"||O.type==="Identifier"||O.type==="ThisExpression"||O.type==="Super"||O.type==="PrivateName"||O.type==="PrivateIdentifier"||O.type==="ArgumentPlaceholder"||O.type==="Import")return!0;if(O.type==="TemplateLiteral")return O.quasis.every(Qe=>!Qe.value.raw.includes(` +`))&&O.expressions.every(_e);if(O.type==="ObjectExpression")return O.properties.every(Qe=>!Qe.computed&&(Qe.shorthand||Qe.value&&_e(Qe.value)));if(O.type==="ArrayExpression")return O.elements.every(Qe=>Qe===null||_e(Qe));if(tt(O))return(O.type==="ImportExpression"||Pe(O.callee,me))&&Ye(O).every(_e);if(ue(O))return Pe(O.object,me)&&Pe(O.property,me);let Ge={"!":!0,"-":!0,"+":!0,"~":!0};if(O.type==="UnaryExpression"&&Ge[O.operator])return Pe(O.argument,me);let it={"++":!0,"--":!0};return O.type==="UpdateExpression"&&it[O.operator]?Pe(O.argument,me):O.type==="TSNonNullExpression"?Pe(O.expression,me):!1}function oe(O){var me,_e;return(me=(_e=O.extra)===null||_e===void 0?void 0:_e.raw)!==null&&me!==void 0?me:O.raw}function H(O){return O}function pe(O){return O.filepath&&/\.tsx$/i.test(O.filepath)}function X(O){let me=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"es5";return O.trailingComma==="es5"&&me==="es5"||O.trailingComma==="all"&&(me==="all"||me==="es5")}function le(O,me){switch(O.type){case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":case"NGPipeExpression":return le(O.left,me);case"MemberExpression":case"OptionalMemberExpression":return le(O.object,me);case"TaggedTemplateExpression":return O.tag.type==="FunctionExpression"?!1:le(O.tag,me);case"CallExpression":case"OptionalCallExpression":return O.callee.type==="FunctionExpression"?!1:le(O.callee,me);case"ConditionalExpression":return le(O.test,me);case"UpdateExpression":return!O.prefix&&le(O.argument,me);case"BindExpression":return O.object&&le(O.object,me);case"SequenceExpression":return le(O.expressions[0],me);case"TSSatisfiesExpression":case"TSAsExpression":case"TSNonNullExpression":return le(O.expression,me);default:return me(O)}}var Ae={"==":!0,"!=":!0,"===":!0,"!==":!0},Ee={"*":!0,"/":!0,"%":!0},De={">>":!0,">>>":!0,"<<":!0};function A(O,me){return!(re(me)!==re(O)||O==="**"||Ae[O]&&Ae[me]||me==="%"&&Ee[O]||O==="%"&&Ee[me]||me!==O&&Ee[me]&&Ee[O]||De[O]&&De[me])}var G=new Map([["|>"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].flatMap((O,me)=>O.map(_e=>[_e,me])));function re(O){return G.get(O)}function ye(O){return Boolean(De[O])||O==="|"||O==="^"||O==="&"}function Ce(O){var me;if(O.rest)return!0;let _e=ve(O);return((me=s(_e))===null||me===void 0?void 0:me.type)==="RestElement"}var Be=new WeakMap;function ve(O){if(Be.has(O))return Be.get(O);let me=[];return O.this&&me.push(O.this),Array.isArray(O.parameters)?me.push(...O.parameters):Array.isArray(O.params)&&me.push(...O.params),O.rest&&me.push(O.rest),Be.set(O,me),me}function ze(O,me){let _e=O.getValue(),He=0,Ge=it=>me(it,He++);_e.this&&O.call(Ge,"this"),Array.isArray(_e.parameters)?O.each(Ge,"parameters"):Array.isArray(_e.params)&&O.each(Ge,"params"),_e.rest&&O.call(Ge,"rest")}var be=new WeakMap;function Ye(O){if(be.has(O))return be.get(O);let me=O.arguments;return O.type==="ImportExpression"&&(me=[O.source],O.attributes&&me.push(O.attributes)),be.set(O,me),me}function Se(O,me){let _e=O.getValue();_e.type==="ImportExpression"?(O.call(He=>me(He,0),"source"),_e.attributes&&O.call(He=>me(He,1),"attributes")):O.each(me,"arguments")}function Ie(O){return O.value.trim()==="prettier-ignore"&&!O.unignore}function Oe(O){return O&&(O.prettierIgnore||Me(O,Te.PrettierIgnore))}function Je(O){let me=O.getValue();return Oe(me)}var Te={Leading:1<<1,Trailing:1<<2,Dangling:1<<3,Block:1<<4,Line:1<<5,PrettierIgnore:1<<6,First:1<<7,Last:1<<8},je=(O,me)=>{if(typeof O=="function"&&(me=O,O=0),O||me)return(_e,He,Ge)=>!(O&Te.Leading&&!_e.leading||O&Te.Trailing&&!_e.trailing||O&Te.Dangling&&(_e.leading||_e.trailing)||O&Te.Block&&!g(_e)||O&Te.Line&&!D(_e)||O&Te.First&&He!==0||O&Te.Last&&He!==Ge.length-1||O&Te.PrettierIgnore&&!Ie(_e)||me&&!me(_e))};function Me(O,me,_e){if(!u(O==null?void 0:O.comments))return!1;let He=je(me,_e);return He?O.comments.some(He):!0}function ae(O,me,_e){if(!Array.isArray(O==null?void 0:O.comments))return[];let He=je(me,_e);return He?O.comments.filter(He):O.comments}var nt=(O,me)=>{let{originalText:_e}=me;return i(_e,y(O))};function tt(O){return de(O)||O.type==="NewExpression"||O.type==="ImportExpression"}function Ve(O){return O&&(O.type==="ObjectProperty"||O.type==="Property"&&!O.method&&O.kind==="init")}function We(O){return Boolean(O.__isUsingHackPipeline)}var Xe=Symbol("ifWithoutBlockAndSameLineComment");function st(O){return O.type==="TSAsExpression"||O.type==="TSSatisfiesExpression"}r.exports={getFunctionParameters:ve,iterateFunctionParametersPath:ze,getCallArguments:Ye,iterateCallArgumentsPath:Se,hasRestParameter:Ce,getLeftSide:I,getLeftSidePathName:P,getParentExportDeclaration:m,getTypeScriptMappedTypeModifier:z,hasFlowAnnotationComment:E,hasFlowShorthandAnnotationComment:w,hasLeadingOwnLineComment:Z,hasNakedLeftSide:x,hasNode:N,hasIgnoreComment:Je,hasNodeIgnoreComment:Oe,identity:H,isBinaryish:V,isCallLikeExpression:tt,isEnabledHackPipeline:We,isLineComment:D,isPrettierIgnoreComment:Ie,isCallExpression:de,isMemberExpression:ue,isExportDeclaration:T,isFlowAnnotationComment:U,isFunctionCompositionArgs:Re,isFunctionNotation:J,isFunctionOrArrowExpression:b,isGetterOrSetter:q,isJestEachTemplateLiteral:ge,isJsxNode:M,isLiteral:C,isLongCurriedCallExpression:Ne,isSimpleCallArgument:Pe,isMemberish:j,isNumericLiteral:o,isSignedNumericLiteral:d,isObjectProperty:Ve,isObjectType:S,isObjectTypePropertyAFunction:L,isSimpleType:ie,isSimpleNumber:fe,isSimpleTemplateLiteral:Fe,isStringLiteral:v,isStringPropSafeToUnquote:se,isTemplateOnItsOwnLine:we,isTestCall:K,isTheOnlyJsxElementInMarkdown:R,isTSXFile:pe,isTypeAnnotationAFunction:Q,isNextLineEmpty:nt,needsHardlineAfterDanglingComment:ke,rawText:oe,shouldPrintComma:X,isBitwiseOperator:ye,shouldFlatten:A,startsWithNoLookaheadToken:le,getPrecedence:re,hasComment:Me,getComments:ae,CommentCheckFlags:Te,markerForIfWithoutBlockAndSameLineComment:Xe,isTSTypeExpression:st}}}),jt=te({"src/language-js/print/template-literal.js"(e,r){"use strict";ne();var t=lt(),{getStringWidth:s,getIndentSize:a}=Ue(),{builders:{join:n,hardline:u,softline:i,group:l,indent:p,align:y,lineSuffixBoundary:h,addAlignmentToDoc:g},printer:{printDocToString:c},utils:{mapDoc:f}}=qe(),{isBinaryish:F,isJestEachTemplateLiteral:_,isSimpleTemplateLiteral:w,hasComment:E,isMemberExpression:N,isTSTypeExpression:x}=Ke();function I(C,o,d){let v=C.getValue();if(v.type==="TemplateLiteral"&&_(v,C.getParentNode())){let R=P(C,d,o);if(R)return R}let b="expressions";v.type==="TSTemplateLiteralType"&&(b="types");let B=[],k=C.map(o,b),M=w(v);return M&&(k=k.map(R=>c(R,Object.assign(Object.assign({},d),{},{printWidth:Number.POSITIVE_INFINITY})).formatted)),B.push(h,"`"),C.each(R=>{let q=R.getName();if(B.push(o()),q1||S.some(b=>b.length>0)){o.__inJestEach=!0;let b=C.map(d,"expressions");o.__inJestEach=!1;let B=[],k=b.map(L=>"${"+c(L,Object.assign(Object.assign({},o),{},{printWidth:Number.POSITIVE_INFINITY,endOfLine:"lf"})).formatted+"}"),M=[{hasLineBreak:!1,cells:[]}];for(let L=1;LL.cells.length)),q=Array.from({length:R}).fill(0),J=[{cells:S},...M.filter(L=>L.cells.length>0)];for(let{cells:L}of J.filter(Q=>!Q.hasLineBreak))for(let[Q,V]of L.entries())q[Q]=Math.max(q[Q],s(V));return B.push(h,"`",p([u,n(u,J.map(L=>n(" | ",L.cells.map((Q,V)=>L.hasLineBreak?Q:Q+" ".repeat(q[V]-s(Q))))))]),u,"`"),B}}function $(C,o){let d=C.getValue(),v=o();return E(d)&&(v=l([p([i,v]),i])),["${",v,h,"}"]}function D(C,o){return C.map(d=>$(d,o),"expressions")}function T(C,o){return f(C,d=>typeof d=="string"?o?d.replace(/(\\*)`/g,"$1$1\\`"):m(d):d)}function m(C){return C.replace(/([\\`]|\${)/g,"\\$1")}r.exports={printTemplateLiteral:I,printTemplateExpressions:D,escapeTemplateCharacters:T,uncookTemplateElementValue:m}}}),Ym=te({"src/language-js/embed/markdown.js"(e,r){"use strict";ne();var{builders:{indent:t,softline:s,literalline:a,dedentToRoot:n}}=qe(),{escapeTemplateCharacters:u}=jt();function i(p,y,h){let c=p.getValue().quasis[0].value.raw.replace(/((?:\\\\)*)\\`/g,(w,E)=>"\\".repeat(E.length/2)+"`"),f=l(c),F=f!=="";F&&(c=c.replace(new RegExp(`^${f}`,"gm"),""));let _=u(h(c,{parser:"markdown",__inJsTemplate:!0},{stripTrailingHardline:!0}),!0);return["`",F?t([s,_]):[a,n(_)],s,"`"]}function l(p){let y=p.match(/^([^\S\n]*)\S/m);return y===null?"":y[1]}r.exports=i}}),Qm=te({"src/language-js/embed/css.js"(e,r){"use strict";ne();var{isNonEmptyArray:t}=Ue(),{builders:{indent:s,hardline:a,softline:n},utils:{mapDoc:u,replaceEndOfLine:i,cleanDoc:l}}=qe(),{printTemplateExpressions:p}=jt();function y(c,f,F){let _=c.getValue(),w=_.quasis.map(P=>P.value.raw),E=0,N=w.reduce((P,$,D)=>D===0?$:P+"@prettier-placeholder-"+E+++"-id"+$,""),x=F(N,{parser:"scss"},{stripTrailingHardline:!0}),I=p(c,f);return h(x,_,I)}function h(c,f,F){if(f.quasis.length===1&&!f.quasis[0].value.raw.trim())return"``";let w=g(c,F);if(!w)throw new Error("Couldn't insert all the expressions");return["`",s([a,w]),n,"`"]}function g(c,f){if(!t(f))return c;let F=0,_=u(l(c),w=>typeof w!="string"||!w.includes("@prettier-placeholder")?w:w.split(/@prettier-placeholder-(\d+)-id/).map((E,N)=>N%2===0?i(E):(F++,f[E])));return f.length===F?_:null}r.exports=y}}),Zm=te({"src/language-js/embed/graphql.js"(e,r){"use strict";ne();var{builders:{indent:t,join:s,hardline:a}}=qe(),{escapeTemplateCharacters:n,printTemplateExpressions:u}=jt();function i(p,y,h){let g=p.getValue(),c=g.quasis.length;if(c===1&&g.quasis[0].value.raw.trim()==="")return"``";let f=u(p,y),F=[];for(let _=0;_2&&I[0].trim()===""&&I[1].trim()==="",T=P>2&&I[P-1].trim()===""&&I[P-2].trim()==="",m=I.every(o=>/^\s*(?:#[^\n\r]*)?$/.test(o));if(!N&&/#[^\n\r]*$/.test(I[P-1]))return null;let C=null;m?C=l(I):C=h(x,{parser:"graphql"},{stripTrailingHardline:!0}),C?(C=n(C,!1),!E&&D&&F.push(""),F.push(C),!N&&T&&F.push("")):!E&&!N&&D&&F.push(""),$&&F.push($)}return["`",t([a,s(a,F)]),a,"`"]}function l(p){let y=[],h=!1,g=p.map(c=>c.trim());for(let[c,f]of g.entries())f!==""&&(g[c-1]===""&&h?y.push([a,f]):y.push(f),h=!0);return y.length===0?null:s(a,y)}r.exports=i}}),ed=te({"src/language-js/embed/html.js"(e,r){"use strict";ne();var{builders:{indent:t,line:s,hardline:a,group:n},utils:{mapDoc:u}}=qe(),{printTemplateExpressions:i,uncookTemplateElementValue:l}=jt(),p=0;function y(h,g,c,f,F){let{parser:_}=F,w=h.getValue(),E=p;p=p+1>>>0;let N=d=>`PRETTIER_HTML_PLACEHOLDER_${d}_${E}_IN_JS`,x=w.quasis.map((d,v,S)=>v===S.length-1?d.value.cooked:d.value.cooked+N(v)).join(""),I=i(h,g);if(I.length===0&&x.trim().length===0)return"``";let P=new RegExp(N("(\\d+)"),"g"),$=0,D=c(x,{parser:_,__onHtmlRoot(d){$=d.children.length}},{stripTrailingHardline:!0}),T=u(D,d=>{if(typeof d!="string")return d;let v=[],S=d.split(P);for(let b=0;b1?t(n(T)):n(T),C,"`"])}r.exports=y}}),td=te({"src/language-js/embed.js"(e,r){"use strict";ne();var{hasComment:t,CommentCheckFlags:s,isObjectProperty:a}=Ke(),n=Ym(),u=Qm(),i=Zm(),l=ed();function p(D){if(g(D)||_(D)||w(D)||c(D))return"css";if(x(D))return"graphql";if(P(D))return"html";if(f(D))return"angular";if(h(D))return"markdown"}function y(D,T,m,C){let o=D.getValue();if(o.type!=="TemplateLiteral"||$(o))return;let d=p(D);if(d){if(d==="markdown")return n(D,T,m);if(d==="css")return u(D,T,m);if(d==="graphql")return i(D,T,m);if(d==="html"||d==="angular")return l(D,T,m,C,{parser:d})}}function h(D){let T=D.getValue(),m=D.getParentNode();return m&&m.type==="TaggedTemplateExpression"&&T.quasis.length===1&&m.tag.type==="Identifier"&&(m.tag.name==="md"||m.tag.name==="markdown")}function g(D){let T=D.getValue(),m=D.getParentNode(),C=D.getParentNode(1);return C&&T.quasis&&m.type==="JSXExpressionContainer"&&C.type==="JSXElement"&&C.openingElement.name.name==="style"&&C.openingElement.attributes.some(o=>o.name.name==="jsx")||m&&m.type==="TaggedTemplateExpression"&&m.tag.type==="Identifier"&&m.tag.name==="css"||m&&m.type==="TaggedTemplateExpression"&&m.tag.type==="MemberExpression"&&m.tag.object.name==="css"&&(m.tag.property.name==="global"||m.tag.property.name==="resolve")}function c(D){return D.match(T=>T.type==="TemplateLiteral",(T,m)=>T.type==="ArrayExpression"&&m==="elements",(T,m)=>a(T)&&T.key.type==="Identifier"&&T.key.name==="styles"&&m==="value",...F)}function f(D){return D.match(T=>T.type==="TemplateLiteral",(T,m)=>a(T)&&T.key.type==="Identifier"&&T.key.name==="template"&&m==="value",...F)}var F=[(D,T)=>D.type==="ObjectExpression"&&T==="properties",(D,T)=>D.type==="CallExpression"&&D.callee.type==="Identifier"&&D.callee.name==="Component"&&T==="arguments",(D,T)=>D.type==="Decorator"&&T==="expression"];function _(D){let T=D.getParentNode();if(!T||T.type!=="TaggedTemplateExpression")return!1;let m=T.tag.type==="ParenthesizedExpression"?T.tag.expression:T.tag;switch(m.type){case"MemberExpression":return E(m.object)||N(m);case"CallExpression":return E(m.callee)||m.callee.type==="MemberExpression"&&(m.callee.object.type==="MemberExpression"&&(E(m.callee.object.object)||N(m.callee.object))||m.callee.object.type==="CallExpression"&&E(m.callee.object.callee));case"Identifier":return m.name==="css";default:return!1}}function w(D){let T=D.getParentNode(),m=D.getParentNode(1);return m&&T.type==="JSXExpressionContainer"&&m.type==="JSXAttribute"&&m.name.type==="JSXIdentifier"&&m.name.name==="css"}function E(D){return D.type==="Identifier"&&D.name==="styled"}function N(D){return/^[A-Z]/.test(D.object.name)&&D.property.name==="extend"}function x(D){let T=D.getValue(),m=D.getParentNode();return I(T,"GraphQL")||m&&(m.type==="TaggedTemplateExpression"&&(m.tag.type==="MemberExpression"&&m.tag.object.name==="graphql"&&m.tag.property.name==="experimental"||m.tag.type==="Identifier"&&(m.tag.name==="gql"||m.tag.name==="graphql"))||m.type==="CallExpression"&&m.callee.type==="Identifier"&&m.callee.name==="graphql")}function I(D,T){return t(D,s.Block|s.Leading,m=>{let{value:C}=m;return C===` ${T} `})}function P(D){return I(D.getValue(),"HTML")||D.match(T=>T.type==="TemplateLiteral",(T,m)=>T.type==="TaggedTemplateExpression"&&T.tag.type==="Identifier"&&T.tag.name==="html"&&m==="quasi")}function $(D){let{quasis:T}=D;return T.some(m=>{let{value:{cooked:C}}=m;return C===null})}r.exports=y}}),rd=te({"src/language-js/clean.js"(e,r){"use strict";ne();var t=Pt(),s=new Set(["range","raw","comments","leadingComments","trailingComments","innerComments","extra","start","end","loc","flags","errors","tokens"]),a=u=>{for(let i of u.quasis)delete i.value};function n(u,i,l){if(u.type==="Program"&&delete i.sourceType,(u.type==="BigIntLiteral"||u.type==="BigIntLiteralTypeAnnotation")&&i.value&&(i.value=i.value.toLowerCase()),(u.type==="BigIntLiteral"||u.type==="Literal")&&i.bigint&&(i.bigint=i.bigint.toLowerCase()),u.type==="DecimalLiteral"&&(i.value=Number(i.value)),u.type==="Literal"&&i.decimal&&(i.decimal=Number(i.decimal)),u.type==="EmptyStatement"||u.type==="JSXText"||u.type==="JSXExpressionContainer"&&(u.expression.type==="Literal"||u.expression.type==="StringLiteral")&&u.expression.value===" ")return null;if((u.type==="Property"||u.type==="ObjectProperty"||u.type==="MethodDefinition"||u.type==="ClassProperty"||u.type==="ClassMethod"||u.type==="PropertyDefinition"||u.type==="TSDeclareMethod"||u.type==="TSPropertySignature"||u.type==="ObjectTypeProperty")&&typeof u.key=="object"&&u.key&&(u.key.type==="Literal"||u.key.type==="NumericLiteral"||u.key.type==="StringLiteral"||u.key.type==="Identifier")&&delete i.key,u.type==="JSXElement"&&u.openingElement.name.name==="style"&&u.openingElement.attributes.some(h=>h.name.name==="jsx"))for(let{type:h,expression:g}of i.children)h==="JSXExpressionContainer"&&g.type==="TemplateLiteral"&&a(g);u.type==="JSXAttribute"&&u.name.name==="css"&&u.value.type==="JSXExpressionContainer"&&u.value.expression.type==="TemplateLiteral"&&a(i.value.expression),u.type==="JSXAttribute"&&u.value&&u.value.type==="Literal"&&/["']|"|'/.test(u.value.value)&&(i.value.value=i.value.value.replace(/["']|"|'/g,'"'));let p=u.expression||u.callee;if(u.type==="Decorator"&&p.type==="CallExpression"&&p.callee.name==="Component"&&p.arguments.length===1){let h=u.expression.arguments[0].properties;for(let[g,c]of i.expression.arguments[0].properties.entries())switch(h[g].key.name){case"styles":c.value.type==="ArrayExpression"&&a(c.value.elements[0]);break;case"template":c.value.type==="TemplateLiteral"&&a(c.value);break}}if(u.type==="TaggedTemplateExpression"&&(u.tag.type==="MemberExpression"||u.tag.type==="Identifier"&&(u.tag.name==="gql"||u.tag.name==="graphql"||u.tag.name==="css"||u.tag.name==="md"||u.tag.name==="markdown"||u.tag.name==="html")||u.tag.type==="CallExpression")&&a(i.quasi),u.type==="TemplateLiteral"){var y;(((y=u.leadingComments)===null||y===void 0?void 0:y.some(g=>t(g)&&["GraphQL","HTML"].some(c=>g.value===` ${c} `)))||l.type==="CallExpression"&&l.callee.name==="graphql"||!u.leadingComments)&&a(i)}if(u.type==="InterpreterDirective"&&(i.value=i.value.trimEnd()),(u.type==="TSIntersectionType"||u.type==="TSUnionType")&&u.types.length===1)return i.types[0]}n.ignoredProperties=s,r.exports=n}}),io={};Kt(io,{EOL:()=>Wn,arch:()=>nd,cpus:()=>Do,default:()=>vo,endianness:()=>ao,freemem:()=>po,getNetworkInterfaces:()=>ho,hostname:()=>oo,loadavg:()=>lo,networkInterfaces:()=>yo,platform:()=>ud,release:()=>go,tmpDir:()=>$n,tmpdir:()=>Vn,totalmem:()=>fo,type:()=>mo,uptime:()=>co});function ao(){if(typeof Tr>"u"){var e=new ArrayBuffer(2),r=new Uint8Array(e),t=new Uint16Array(e);if(r[0]=1,r[1]=2,t[0]===258)Tr="BE";else if(t[0]===513)Tr="LE";else throw new Error("unable to figure out endianess")}return Tr}function oo(){return typeof globalThis.location<"u"?globalThis.location.hostname:""}function lo(){return[]}function co(){return 0}function po(){return Number.MAX_VALUE}function fo(){return Number.MAX_VALUE}function Do(){return[]}function mo(){return"Browser"}function go(){return typeof globalThis.navigator<"u"?globalThis.navigator.appVersion:""}function yo(){}function ho(){}function nd(){return"javascript"}function ud(){return"browser"}function $n(){return"/tmp"}var Tr,Vn,Wn,vo,sd=ht({"node-modules-polyfills:os"(){ne(),Vn=$n,Wn=` +`,vo={EOL:Wn,tmpdir:Vn,tmpDir:$n,networkInterfaces:yo,getNetworkInterfaces:ho,release:go,type:mo,cpus:Do,totalmem:fo,freemem:po,uptime:co,loadavg:lo,hostname:oo,endianness:ao}}}),id=te({"node-modules-polyfills-commonjs:os"(e,r){ne();var t=(sd(),ft(io));if(t&&t.default){r.exports=t.default;for(let s in t)r.exports[s]=t[s]}else t&&(r.exports=t)}}),ad=te({"node_modules/detect-newline/index.js"(e,r){"use strict";ne();var t=s=>{if(typeof s!="string")throw new TypeError("Expected a string");let a=s.match(/(?:\r?\n)/g)||[];if(a.length===0)return;let n=a.filter(i=>i===`\r +`).length,u=a.length-n;return n>u?`\r +`:` +`};r.exports=t,r.exports.graceful=s=>typeof s=="string"&&t(s)||` +`}}),od=te({"node_modules/jest-docblock/build/index.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.extract=c,e.parse=F,e.parseWithComments=_,e.print=w,e.strip=f;function r(){let N=id();return r=function(){return N},N}function t(){let N=s(ad());return t=function(){return N},N}function s(N){return N&&N.__esModule?N:{default:N}}var a=/\*\/$/,n=/^\/\*\*?/,u=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,i=/(^|\s+)\/\/([^\r\n]*)/g,l=/^(\r?\n)+/,p=/(?:^|\r?\n) *(@[^\r\n]*?) *\r?\n *(?![^@\r\n]*\/\/[^]*)([^@\r\n\s][^@\r\n]+?) *\r?\n/g,y=/(?:^|\r?\n) *@(\S+) *([^\r\n]*)/g,h=/(\r?\n|^) *\* ?/g,g=[];function c(N){let x=N.match(u);return x?x[0].trimLeft():""}function f(N){let x=N.match(u);return x&&x[0]?N.substring(x[0].length):N}function F(N){return _(N).pragmas}function _(N){let x=(0,t().default)(N)||r().EOL;N=N.replace(n,"").replace(a,"").replace(h,"$1");let I="";for(;I!==N;)I=N,N=N.replace(p,`${x}$1 $2${x}`);N=N.replace(l,"").trimRight();let P=Object.create(null),$=N.replace(y,"").replace(l,"").trimRight(),D;for(;D=y.exec(N);){let T=D[2].replace(i,"");typeof P[D[1]]=="string"||Array.isArray(P[D[1]])?P[D[1]]=g.concat(P[D[1]],T):P[D[1]]=T}return{comments:$,pragmas:P}}function w(N){let{comments:x="",pragmas:I={}}=N,P=(0,t().default)(x)||r().EOL,$="/**",D=" *",T=" */",m=Object.keys(I),C=m.map(d=>E(d,I[d])).reduce((d,v)=>d.concat(v),[]).map(d=>`${D} ${d}${P}`).join("");if(!x){if(m.length===0)return"";if(m.length===1&&!Array.isArray(I[m[0]])){let d=I[m[0]];return`${$} ${E(m[0],d)[0]}${T}`}}let o=x.split(P).map(d=>`${D} ${d}`).join(P)+P;return $+P+(x?o:"")+(x&&m.length?D+P:"")+C+T}function E(N,x){return g.concat(x).map(I=>`@${N} ${I}`.trim())}}}),ld=te({"src/language-js/utils/get-shebang.js"(e,r){"use strict";ne();function t(s){if(!s.startsWith("#!"))return"";let a=s.indexOf(` +`);return a===-1?s:s.slice(0,a)}r.exports=t}}),Co=te({"src/language-js/pragma.js"(e,r){"use strict";ne();var{parseWithComments:t,strip:s,extract:a,print:n}=od(),{normalizeEndOfLine:u}=Jn(),i=ld();function l(h){let g=i(h);g&&(h=h.slice(g.length+1));let c=a(h),{pragmas:f,comments:F}=t(c);return{shebang:g,text:h,pragmas:f,comments:F}}function p(h){let g=Object.keys(l(h).pragmas);return g.includes("prettier")||g.includes("format")}function y(h){let{shebang:g,text:c,pragmas:f,comments:F}=l(h),_=s(c),w=n({pragmas:Object.assign({format:""},f),comments:F.trimStart()});return(g?`${g} +`:"")+u(w)+(_.startsWith(` +`)?` +`:` + +`)+_}r.exports={hasPragma:p,insertPragma:y}}}),cd=te({"src/language-js/utils/is-type-cast-comment.js"(e,r){"use strict";ne();var t=Pt();function s(a){return t(a)&&a.value[0]==="*"&&/@(?:type|satisfies)\b/.test(a.value)}r.exports=s}}),Eo=te({"src/language-js/comments.js"(e,r){"use strict";ne();var{getLast:t,hasNewline:s,getNextNonSpaceNonCommentCharacterIndexWithStartIndex:a,getNextNonSpaceNonCommentCharacter:n,hasNewlineInRange:u,addLeadingComment:i,addTrailingComment:l,addDanglingComment:p,getNextNonSpaceNonCommentCharacterIndex:y,isNonEmptyArray:h}=Ue(),{getFunctionParameters:g,isPrettierIgnoreComment:c,isJsxNode:f,hasFlowShorthandAnnotationComment:F,hasFlowAnnotationComment:_,hasIgnoreComment:w,isCallLikeExpression:E,getCallArguments:N,isCallExpression:x,isMemberExpression:I,isObjectProperty:P,isLineComment:$,getComments:D,CommentCheckFlags:T,markerForIfWithoutBlockAndSameLineComment:m}=Ke(),{locStart:C,locEnd:o}=ut(),d=Pt(),v=cd();function S(De){return[H,Fe,Q,q,J,L,ie,he,se,ge,we,ke,ce,z,U].some(A=>A(De))}function b(De){return[R,Fe,V,we,q,J,L,ie,z,Z,fe,ge,Pe,U,X].some(A=>A(De))}function B(De){return[H,q,J,j,ue,ce,ge,de,K,pe,U,oe].some(A=>A(De))}function k(De,A){let G=(De.body||De.properties).find(re=>{let{type:ye}=re;return ye!=="EmptyStatement"});G?i(G,A):p(De,A)}function M(De,A){De.type==="BlockStatement"?k(De,A):i(De,A)}function R(De){let{comment:A,followingNode:G}=De;return G&&v(A)?(i(G,A),!0):!1}function q(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye,text:Ce}=De;if((re==null?void 0:re.type)!=="IfStatement"||!ye)return!1;if(n(Ce,A,o)===")")return l(G,A),!0;if(G===re.consequent&&ye===re.alternate){if(G.type==="BlockStatement")l(G,A);else{let ve=A.type==="SingleLine"||A.loc.start.line===A.loc.end.line,ze=A.loc.start.line===G.loc.start.line;ve&&ze?p(G,A,m):p(re,A)}return!0}return ye.type==="BlockStatement"?(k(ye,A),!0):ye.type==="IfStatement"?(M(ye.consequent,A),!0):re.consequent===ye?(i(ye,A),!0):!1}function J(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye,text:Ce}=De;return(re==null?void 0:re.type)!=="WhileStatement"||!ye?!1:n(Ce,A,o)===")"?(l(G,A),!0):ye.type==="BlockStatement"?(k(ye,A),!0):re.body===ye?(i(ye,A),!0):!1}function L(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye}=De;return(re==null?void 0:re.type)!=="TryStatement"&&(re==null?void 0:re.type)!=="CatchClause"||!ye?!1:re.type==="CatchClause"&&G?(l(G,A),!0):ye.type==="BlockStatement"?(k(ye,A),!0):ye.type==="TryStatement"?(M(ye.finalizer,A),!0):ye.type==="CatchClause"?(M(ye.body,A),!0):!1}function Q(De){let{comment:A,enclosingNode:G,followingNode:re}=De;return I(G)&&(re==null?void 0:re.type)==="Identifier"?(i(G,A),!0):!1}function V(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye,text:Ce}=De,Be=G&&!u(Ce,o(G),C(A));return(!G||!Be)&&((re==null?void 0:re.type)==="ConditionalExpression"||(re==null?void 0:re.type)==="TSConditionalType")&&ye?(i(ye,A),!0):!1}function j(De){let{comment:A,precedingNode:G,enclosingNode:re}=De;return P(re)&&re.shorthand&&re.key===G&&re.value.type==="AssignmentPattern"?(l(re.value.left,A),!0):!1}var Y=new Set(["ClassDeclaration","ClassExpression","DeclareClass","DeclareInterface","InterfaceDeclaration","TSInterfaceDeclaration"]);function ie(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye}=De;if(Y.has(re==null?void 0:re.type)){if(h(re.decorators)&&!(ye&&ye.type==="Decorator"))return l(t(re.decorators),A),!0;if(re.body&&ye===re.body)return k(re.body,A),!0;if(ye){if(re.superClass&&ye===re.superClass&&G&&(G===re.id||G===re.typeParameters))return l(G,A),!0;for(let Ce of["implements","extends","mixins"])if(re[Ce]&&ye===re[Ce][0])return G&&(G===re.id||G===re.typeParameters||G===re.superClass)?l(G,A):p(re,A,Ce),!0}}return!1}var ee=new Set(["ClassMethod","ClassProperty","PropertyDefinition","TSAbstractPropertyDefinition","TSAbstractMethodDefinition","TSDeclareMethod","MethodDefinition","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty"]);function ce(De){let{comment:A,precedingNode:G,enclosingNode:re,text:ye}=De;return re&&G&&n(ye,A,o)==="("&&(re.type==="Property"||re.type==="TSDeclareMethod"||re.type==="TSAbstractMethodDefinition")&&G.type==="Identifier"&&re.key===G&&n(ye,G,o)!==":"||(G==null?void 0:G.type)==="Decorator"&&ee.has(re==null?void 0:re.type)?(l(G,A),!0):!1}var W=new Set(["FunctionDeclaration","FunctionExpression","ClassMethod","MethodDefinition","ObjectMethod"]);function K(De){let{comment:A,precedingNode:G,enclosingNode:re,text:ye}=De;return n(ye,A,o)!=="("?!1:G&&W.has(re==null?void 0:re.type)?(l(G,A),!0):!1}function de(De){let{comment:A,enclosingNode:G,text:re}=De;if((G==null?void 0:G.type)!=="ArrowFunctionExpression")return!1;let ye=y(re,A,o);return ye!==!1&&re.slice(ye,ye+2)==="=>"?(p(G,A),!0):!1}function ue(De){let{comment:A,enclosingNode:G,text:re}=De;return n(re,A,o)!==")"?!1:G&&(le(G)&&g(G).length===0||E(G)&&N(G).length===0)?(p(G,A),!0):((G==null?void 0:G.type)==="MethodDefinition"||(G==null?void 0:G.type)==="TSAbstractMethodDefinition")&&g(G.value).length===0?(p(G.value,A),!0):!1}function Fe(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye,text:Ce}=De;if((G==null?void 0:G.type)==="FunctionTypeParam"&&(re==null?void 0:re.type)==="FunctionTypeAnnotation"&&(ye==null?void 0:ye.type)!=="FunctionTypeParam"||((G==null?void 0:G.type)==="Identifier"||(G==null?void 0:G.type)==="AssignmentPattern")&&re&&le(re)&&n(Ce,A,o)===")")return l(G,A),!0;if((re==null?void 0:re.type)==="FunctionDeclaration"&&(ye==null?void 0:ye.type)==="BlockStatement"){let Be=(()=>{let ve=g(re);if(ve.length>0)return a(Ce,o(t(ve)));let ze=a(Ce,o(re.id));return ze!==!1&&a(Ce,ze+1)})();if(C(A)>Be)return k(ye,A),!0}return!1}function z(De){let{comment:A,enclosingNode:G}=De;return(G==null?void 0:G.type)==="LabeledStatement"?(i(G,A),!0):!1}function U(De){let{comment:A,enclosingNode:G}=De;return((G==null?void 0:G.type)==="ContinueStatement"||(G==null?void 0:G.type)==="BreakStatement")&&!G.label?(l(G,A),!0):!1}function Z(De){let{comment:A,precedingNode:G,enclosingNode:re}=De;return x(re)&&G&&re.callee===G&&re.arguments.length>0?(i(re.arguments[0],A),!0):!1}function se(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye}=De;return(re==null?void 0:re.type)==="UnionTypeAnnotation"||(re==null?void 0:re.type)==="TSUnionType"?(c(A)&&(ye.prettierIgnore=!0,A.unignore=!0),G?(l(G,A),!0):!1):(((ye==null?void 0:ye.type)==="UnionTypeAnnotation"||(ye==null?void 0:ye.type)==="TSUnionType")&&c(A)&&(ye.types[0].prettierIgnore=!0,A.unignore=!0),!1)}function fe(De){let{comment:A,enclosingNode:G}=De;return P(G)?(i(G,A),!0):!1}function ge(De){let{comment:A,enclosingNode:G,followingNode:re,ast:ye,isLastComment:Ce}=De;return ye&&ye.body&&ye.body.length===0?(Ce?p(ye,A):i(ye,A),!0):(G==null?void 0:G.type)==="Program"&&(G==null?void 0:G.body.length)===0&&!h(G.directives)?(Ce?p(G,A):i(G,A),!0):(re==null?void 0:re.type)==="Program"&&(re==null?void 0:re.body.length)===0&&(G==null?void 0:G.type)==="ModuleExpression"?(p(re,A),!0):!1}function he(De){let{comment:A,enclosingNode:G}=De;return(G==null?void 0:G.type)==="ForInStatement"||(G==null?void 0:G.type)==="ForOfStatement"?(i(G,A),!0):!1}function we(De){let{comment:A,precedingNode:G,enclosingNode:re,text:ye}=De;if((re==null?void 0:re.type)==="ImportSpecifier"||(re==null?void 0:re.type)==="ExportSpecifier")return i(re,A),!0;let Ce=(G==null?void 0:G.type)==="ImportSpecifier"&&(re==null?void 0:re.type)==="ImportDeclaration",Be=(G==null?void 0:G.type)==="ExportSpecifier"&&(re==null?void 0:re.type)==="ExportNamedDeclaration";return(Ce||Be)&&s(ye,o(A))?(l(G,A),!0):!1}function ke(De){let{comment:A,enclosingNode:G}=De;return(G==null?void 0:G.type)==="AssignmentPattern"?(i(G,A),!0):!1}var Re=new Set(["VariableDeclarator","AssignmentExpression","TypeAlias","TSTypeAliasDeclaration"]),Ne=new Set(["ObjectExpression","ArrayExpression","TemplateLiteral","TaggedTemplateExpression","ObjectTypeAnnotation","TSTypeLiteral"]);function Pe(De){let{comment:A,enclosingNode:G,followingNode:re}=De;return Re.has(G==null?void 0:G.type)&&re&&(Ne.has(re.type)||d(A))?(i(re,A),!0):!1}function oe(De){let{comment:A,enclosingNode:G,followingNode:re,text:ye}=De;return!re&&((G==null?void 0:G.type)==="TSMethodSignature"||(G==null?void 0:G.type)==="TSDeclareFunction"||(G==null?void 0:G.type)==="TSAbstractMethodDefinition")&&n(ye,A,o)===";"?(l(G,A),!0):!1}function H(De){let{comment:A,enclosingNode:G,followingNode:re}=De;if(c(A)&&(G==null?void 0:G.type)==="TSMappedType"&&(re==null?void 0:re.type)==="TSTypeParameter"&&re.constraint)return G.prettierIgnore=!0,A.unignore=!0,!0}function pe(De){let{comment:A,precedingNode:G,enclosingNode:re,followingNode:ye}=De;return(re==null?void 0:re.type)!=="TSMappedType"?!1:(ye==null?void 0:ye.type)==="TSTypeParameter"&&ye.name?(i(ye.name,A),!0):(G==null?void 0:G.type)==="TSTypeParameter"&&G.constraint?(l(G.constraint,A),!0):!1}function X(De){let{comment:A,enclosingNode:G,followingNode:re}=De;return!G||G.type!=="SwitchCase"||G.test||!re||re!==G.consequent[0]?!1:(re.type==="BlockStatement"&&$(A)?k(re,A):p(G,A),!0)}function le(De){return De.type==="ArrowFunctionExpression"||De.type==="FunctionExpression"||De.type==="FunctionDeclaration"||De.type==="ObjectMethod"||De.type==="ClassMethod"||De.type==="TSDeclareFunction"||De.type==="TSCallSignatureDeclaration"||De.type==="TSConstructSignatureDeclaration"||De.type==="TSMethodSignature"||De.type==="TSConstructorType"||De.type==="TSFunctionType"||De.type==="TSDeclareMethod"}function Ae(De,A){if((A.parser==="typescript"||A.parser==="flow"||A.parser==="acorn"||A.parser==="espree"||A.parser==="meriyah"||A.parser==="__babel_estree")&&De.type==="MethodDefinition"&&De.value&&De.value.type==="FunctionExpression"&&g(De.value).length===0&&!De.value.returnType&&!h(De.value.typeParameters)&&De.value.body)return[...De.decorators||[],De.key,De.value.body]}function Ee(De){let A=De.getValue(),G=De.getParentNode(),re=ye=>_(D(ye,T.Leading))||_(D(ye,T.Trailing));return(A&&(f(A)||F(A)||x(G)&&re(A))||G&&(G.type==="JSXSpreadAttribute"||G.type==="JSXSpreadChild"||G.type==="UnionTypeAnnotation"||G.type==="TSUnionType"||(G.type==="ClassDeclaration"||G.type==="ClassExpression")&&G.superClass===A))&&(!w(De)||G.type==="UnionTypeAnnotation"||G.type==="TSUnionType")}r.exports={handleOwnLineComment:S,handleEndOfLineComment:b,handleRemainingComment:B,getCommentChildNodes:Ae,willPrintOwnComments:Ee}}}),qt=te({"src/language-js/needs-parens.js"(e,r){"use strict";ne();var t=lt(),s=Kn(),{getFunctionParameters:a,getLeftSidePathName:n,hasFlowShorthandAnnotationComment:u,hasNakedLeftSide:i,hasNode:l,isBitwiseOperator:p,startsWithNoLookaheadToken:y,shouldFlatten:h,getPrecedence:g,isCallExpression:c,isMemberExpression:f,isObjectProperty:F,isTSTypeExpression:_}=Ke();function w(D,T){let m=D.getParentNode();if(!m)return!1;let C=D.getName(),o=D.getNode();if(T.__isInHtmlInterpolation&&!T.bracketSpacing&&I(o)&&P(D))return!0;if(E(o))return!1;if(T.parser!=="flow"&&u(D.getValue()))return!0;if(o.type==="Identifier"){if(o.extra&&o.extra.parenthesized&&/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/.test(o.name)||C==="left"&&(o.name==="async"&&!m.await||o.name==="let")&&m.type==="ForOfStatement")return!0;if(o.name==="let"){var d;let S=(d=D.findAncestor(b=>b.type==="ForOfStatement"))===null||d===void 0?void 0:d.left;if(S&&y(S,b=>b===o))return!0}if(C==="object"&&o.name==="let"&&m.type==="MemberExpression"&&m.computed&&!m.optional){let S=D.findAncestor(B=>B.type==="ExpressionStatement"||B.type==="ForStatement"||B.type==="ForInStatement"),b=S?S.type==="ExpressionStatement"?S.expression:S.type==="ForStatement"?S.init:S.left:void 0;if(b&&y(b,B=>B===o))return!0}return!1}if(o.type==="ObjectExpression"||o.type==="FunctionExpression"||o.type==="ClassExpression"||o.type==="DoExpression"){var v;let S=(v=D.findAncestor(b=>b.type==="ExpressionStatement"))===null||v===void 0?void 0:v.expression;if(S&&y(S,b=>b===o))return!0}switch(m.type){case"ParenthesizedExpression":return!1;case"ClassDeclaration":case"ClassExpression":{if(C==="superClass"&&(o.type==="ArrowFunctionExpression"||o.type==="AssignmentExpression"||o.type==="AwaitExpression"||o.type==="BinaryExpression"||o.type==="ConditionalExpression"||o.type==="LogicalExpression"||o.type==="NewExpression"||o.type==="ObjectExpression"||o.type==="SequenceExpression"||o.type==="TaggedTemplateExpression"||o.type==="UnaryExpression"||o.type==="UpdateExpression"||o.type==="YieldExpression"||o.type==="TSNonNullExpression"))return!0;break}case"ExportDefaultDeclaration":return $(D,T)||o.type==="SequenceExpression";case"Decorator":{if(C==="expression"){if(f(o)&&o.computed)return!0;let S=!1,b=!1,B=o;for(;B;)switch(B.type){case"MemberExpression":b=!0,B=B.object;break;case"CallExpression":if(b||S)return T.parser!=="typescript";S=!0,B=B.callee;break;case"Identifier":return!1;case"TaggedTemplateExpression":return T.parser!=="typescript";default:return!0}return!0}break}case"ArrowFunctionExpression":{if(C==="body"&&o.type!=="SequenceExpression"&&y(o,S=>S.type==="ObjectExpression"))return!0;break}}switch(o.type){case"UpdateExpression":if(m.type==="UnaryExpression")return o.prefix&&(o.operator==="++"&&m.operator==="+"||o.operator==="--"&&m.operator==="-");case"UnaryExpression":switch(m.type){case"UnaryExpression":return o.operator===m.operator&&(o.operator==="+"||o.operator==="-");case"BindExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return C==="object";case"TaggedTemplateExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return C==="callee";case"BinaryExpression":return C==="left"&&m.operator==="**";case"TSNonNullExpression":return!0;default:return!1}case"BinaryExpression":{if(m.type==="UpdateExpression"||o.operator==="in"&&N(D))return!0;if(o.operator==="|>"&&o.extra&&o.extra.parenthesized){let S=D.getParentNode(1);if(S.type==="BinaryExpression"&&S.operator==="|>")return!0}}case"TSTypeAssertion":case"TSAsExpression":case"TSSatisfiesExpression":case"LogicalExpression":switch(m.type){case"TSSatisfiesExpression":case"TSAsExpression":return!_(o);case"ConditionalExpression":return _(o);case"CallExpression":case"NewExpression":case"OptionalCallExpression":return C==="callee";case"ClassExpression":case"ClassDeclaration":return C==="superClass";case"TSTypeAssertion":case"TaggedTemplateExpression":case"UnaryExpression":case"JSXSpreadAttribute":case"SpreadElement":case"SpreadProperty":case"BindExpression":case"AwaitExpression":case"TSNonNullExpression":case"UpdateExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return C==="object";case"AssignmentExpression":case"AssignmentPattern":return C==="left"&&(o.type==="TSTypeAssertion"||_(o));case"LogicalExpression":if(o.type==="LogicalExpression")return m.operator!==o.operator;case"BinaryExpression":{let{operator:S,type:b}=o;if(!S&&b!=="TSTypeAssertion")return!0;let B=g(S),k=m.operator,M=g(k);return M>B||C==="right"&&M===B||M===B&&!h(k,S)?!0:M");default:return!1}case"TSConditionalType":case"TSFunctionType":case"TSConstructorType":if(C==="extendsType"&&m.type==="TSConditionalType"){if(o.type==="TSConditionalType")return!0;let{typeAnnotation:S}=o.returnType||o.typeAnnotation;if(S.type==="TSTypePredicate"&&S.typeAnnotation&&(S=S.typeAnnotation.typeAnnotation),S.type==="TSInferType"&&S.typeParameter.constraint)return!0}if(C==="checkType"&&m.type==="TSConditionalType")return!0;case"TSUnionType":case"TSIntersectionType":if((m.type==="TSUnionType"||m.type==="TSIntersectionType")&&m.types.length>1&&(!o.types||o.types.length>1))return!0;case"TSInferType":if(o.type==="TSInferType"&&m.type==="TSRestType")return!1;case"TSTypeOperator":return m.type==="TSArrayType"||m.type==="TSOptionalType"||m.type==="TSRestType"||C==="objectType"&&m.type==="TSIndexedAccessType"||m.type==="TSTypeOperator"||m.type==="TSTypeAnnotation"&&D.getParentNode(1).type.startsWith("TSJSDoc");case"TSTypeQuery":return C==="objectType"&&m.type==="TSIndexedAccessType"||C==="elementType"&&m.type==="TSArrayType";case"TypeofTypeAnnotation":return C==="objectType"&&(m.type==="IndexedAccessType"||m.type==="OptionalIndexedAccessType")||C==="elementType"&&m.type==="ArrayTypeAnnotation";case"ArrayTypeAnnotation":return m.type==="NullableTypeAnnotation";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return m.type==="ArrayTypeAnnotation"||m.type==="NullableTypeAnnotation"||m.type==="IntersectionTypeAnnotation"||m.type==="UnionTypeAnnotation"||C==="objectType"&&(m.type==="IndexedAccessType"||m.type==="OptionalIndexedAccessType");case"NullableTypeAnnotation":return m.type==="ArrayTypeAnnotation"||C==="objectType"&&(m.type==="IndexedAccessType"||m.type==="OptionalIndexedAccessType");case"FunctionTypeAnnotation":{let S=m.type==="NullableTypeAnnotation"?D.getParentNode(1):m;return S.type==="UnionTypeAnnotation"||S.type==="IntersectionTypeAnnotation"||S.type==="ArrayTypeAnnotation"||C==="objectType"&&(S.type==="IndexedAccessType"||S.type==="OptionalIndexedAccessType")||S.type==="NullableTypeAnnotation"||m.type==="FunctionTypeParam"&&m.name===null&&a(o).some(b=>b.typeAnnotation&&b.typeAnnotation.type==="NullableTypeAnnotation")}case"OptionalIndexedAccessType":return C==="objectType"&&m.type==="IndexedAccessType";case"StringLiteral":case"NumericLiteral":case"Literal":if(typeof o.value=="string"&&m.type==="ExpressionStatement"&&!m.directive){let S=D.getParentNode(1);return S.type==="Program"||S.type==="BlockStatement"}return C==="object"&&m.type==="MemberExpression"&&typeof o.value=="number";case"AssignmentExpression":{let S=D.getParentNode(1);return C==="body"&&m.type==="ArrowFunctionExpression"?!0:C==="key"&&(m.type==="ClassProperty"||m.type==="PropertyDefinition")&&m.computed||(C==="init"||C==="update")&&m.type==="ForStatement"?!1:m.type==="ExpressionStatement"?o.left.type==="ObjectPattern":!(C==="key"&&m.type==="TSPropertySignature"||m.type==="AssignmentExpression"||m.type==="SequenceExpression"&&S&&S.type==="ForStatement"&&(S.init===m||S.update===m)||C==="value"&&m.type==="Property"&&S&&S.type==="ObjectPattern"&&S.properties.includes(m)||m.type==="NGChainedExpression")}case"ConditionalExpression":switch(m.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":case"NGPipeExpression":case"ExportDefaultDeclaration":case"AwaitExpression":case"JSXSpreadAttribute":case"TSTypeAssertion":case"TypeCastExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return C==="callee";case"ConditionalExpression":return C==="test";case"MemberExpression":case"OptionalMemberExpression":return C==="object";default:return!1}case"FunctionExpression":switch(m.type){case"NewExpression":case"CallExpression":case"OptionalCallExpression":return C==="callee";case"TaggedTemplateExpression":return!0;default:return!1}case"ArrowFunctionExpression":switch(m.type){case"BinaryExpression":return m.operator!=="|>"||o.extra&&o.extra.parenthesized;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return C==="callee";case"MemberExpression":case"OptionalMemberExpression":return C==="object";case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"BindExpression":case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"AwaitExpression":case"TSTypeAssertion":return!0;case"ConditionalExpression":return C==="test";default:return!1}case"ClassExpression":if(s(o.decorators))return!0;switch(m.type){case"NewExpression":return C==="callee";default:return!1}case"OptionalMemberExpression":case"OptionalCallExpression":{let S=D.getParentNode(1);if(C==="object"&&m.type==="MemberExpression"||C==="callee"&&(m.type==="CallExpression"||m.type==="NewExpression")||m.type==="TSNonNullExpression"&&S.type==="MemberExpression"&&S.object===m)return!0}case"CallExpression":case"MemberExpression":case"TaggedTemplateExpression":case"TSNonNullExpression":if(C==="callee"&&(m.type==="BindExpression"||m.type==="NewExpression")){let S=o;for(;S;)switch(S.type){case"CallExpression":case"OptionalCallExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":case"BindExpression":S=S.object;break;case"TaggedTemplateExpression":S=S.tag;break;case"TSNonNullExpression":S=S.expression;break;default:return!1}}return!1;case"BindExpression":return C==="callee"&&(m.type==="BindExpression"||m.type==="NewExpression")||C==="object"&&f(m);case"NGPipeExpression":return!(m.type==="NGRoot"||m.type==="NGMicrosyntaxExpression"||m.type==="ObjectProperty"&&!(o.extra&&o.extra.parenthesized)||m.type==="ArrayExpression"||c(m)&&m.arguments[C]===o||C==="right"&&m.type==="NGPipeExpression"||C==="property"&&m.type==="MemberExpression"||m.type==="AssignmentExpression");case"JSXFragment":case"JSXElement":return C==="callee"||C==="left"&&m.type==="BinaryExpression"&&m.operator==="<"||m.type!=="ArrayExpression"&&m.type!=="ArrowFunctionExpression"&&m.type!=="AssignmentExpression"&&m.type!=="AssignmentPattern"&&m.type!=="BinaryExpression"&&m.type!=="NewExpression"&&m.type!=="ConditionalExpression"&&m.type!=="ExpressionStatement"&&m.type!=="JsExpressionRoot"&&m.type!=="JSXAttribute"&&m.type!=="JSXElement"&&m.type!=="JSXExpressionContainer"&&m.type!=="JSXFragment"&&m.type!=="LogicalExpression"&&!c(m)&&!F(m)&&m.type!=="ReturnStatement"&&m.type!=="ThrowStatement"&&m.type!=="TypeCastExpression"&&m.type!=="VariableDeclarator"&&m.type!=="YieldExpression";case"TypeAnnotation":return C==="returnType"&&m.type==="ArrowFunctionExpression"&&x(o)}return!1}function E(D){return D.type==="BlockStatement"||D.type==="BreakStatement"||D.type==="ClassBody"||D.type==="ClassDeclaration"||D.type==="ClassMethod"||D.type==="ClassProperty"||D.type==="PropertyDefinition"||D.type==="ClassPrivateProperty"||D.type==="ContinueStatement"||D.type==="DebuggerStatement"||D.type==="DeclareClass"||D.type==="DeclareExportAllDeclaration"||D.type==="DeclareExportDeclaration"||D.type==="DeclareFunction"||D.type==="DeclareInterface"||D.type==="DeclareModule"||D.type==="DeclareModuleExports"||D.type==="DeclareVariable"||D.type==="DoWhileStatement"||D.type==="EnumDeclaration"||D.type==="ExportAllDeclaration"||D.type==="ExportDefaultDeclaration"||D.type==="ExportNamedDeclaration"||D.type==="ExpressionStatement"||D.type==="ForInStatement"||D.type==="ForOfStatement"||D.type==="ForStatement"||D.type==="FunctionDeclaration"||D.type==="IfStatement"||D.type==="ImportDeclaration"||D.type==="InterfaceDeclaration"||D.type==="LabeledStatement"||D.type==="MethodDefinition"||D.type==="ReturnStatement"||D.type==="SwitchStatement"||D.type==="ThrowStatement"||D.type==="TryStatement"||D.type==="TSDeclareFunction"||D.type==="TSEnumDeclaration"||D.type==="TSImportEqualsDeclaration"||D.type==="TSInterfaceDeclaration"||D.type==="TSModuleDeclaration"||D.type==="TSNamespaceExportDeclaration"||D.type==="TypeAlias"||D.type==="VariableDeclaration"||D.type==="WhileStatement"||D.type==="WithStatement"}function N(D){let T=0,m=D.getValue();for(;m;){let C=D.getParentNode(T++);if(C&&C.type==="ForStatement"&&C.init===m)return!0;m=C}return!1}function x(D){return l(D,T=>T.type==="ObjectTypeAnnotation"&&l(T,m=>m.type==="FunctionTypeAnnotation"||void 0)||void 0)}function I(D){switch(D.type){case"ObjectExpression":return!0;default:return!1}}function P(D){let T=D.getValue(),m=D.getParentNode(),C=D.getName();switch(m.type){case"NGPipeExpression":if(typeof C=="number"&&m.arguments[C]===T&&m.arguments.length-1===C)return D.callParent(P);break;case"ObjectProperty":if(C==="value"){let o=D.getParentNode(1);return t(o.properties)===m}break;case"BinaryExpression":case"LogicalExpression":if(C==="right")return D.callParent(P);break;case"ConditionalExpression":if(C==="alternate")return D.callParent(P);break;case"UnaryExpression":if(m.prefix)return D.callParent(P);break}return!1}function $(D,T){let m=D.getValue(),C=D.getParentNode();return m.type==="FunctionExpression"||m.type==="ClassExpression"?C.type==="ExportDefaultDeclaration"||!w(D,T):!i(m)||C.type!=="ExportDefaultDeclaration"&&w(D,T)?!1:D.call(o=>$(o,T),...n(D,m))}r.exports=w}}),Fo=te({"src/language-js/print-preprocess.js"(e,r){"use strict";ne();function t(s,a){switch(a.parser){case"json":case"json5":case"json-stringify":case"__js_expression":case"__vue_expression":case"__vue_ts_expression":return Object.assign(Object.assign({},s),{},{type:a.parser.startsWith("__")?"JsExpressionRoot":"JsonRoot",node:s,comments:[],rootMarker:a.rootMarker});default:return s}}r.exports=t}}),pd=te({"src/language-js/print/html-binding.js"(e,r){"use strict";ne();var{builders:{join:t,line:s,group:a,softline:n,indent:u}}=qe();function i(p,y,h){let g=p.getValue();if(y.__onHtmlBindingRoot&&p.getName()===null&&y.__onHtmlBindingRoot(g,y),g.type==="File"){if(y.__isVueForBindingLeft)return p.call(c=>{let f=t([",",s],c.map(h,"params")),{params:F}=c.getValue();return F.length===1?f:["(",u([n,a(f)]),n,")"]},"program","body",0);if(y.__isVueBindings)return p.call(c=>t([",",s],c.map(h,"params")),"program","body",0)}}function l(p){switch(p.type){case"MemberExpression":switch(p.property.type){case"Identifier":case"NumericLiteral":case"StringLiteral":return l(p.object)}return!1;case"Identifier":return!0;default:return!1}}r.exports={isVueEventBindingExpression:l,printHtmlBinding:i}}}),ru=te({"src/language-js/print/binaryish.js"(e,r){"use strict";ne();var{printComments:t}=et(),{getLast:s}=Ue(),{builders:{join:a,line:n,softline:u,group:i,indent:l,align:p,indentIfBreak:y},utils:{cleanDoc:h,getDocParts:g,isConcat:c}}=qe(),{hasLeadingOwnLineComment:f,isBinaryish:F,isJsxNode:_,shouldFlatten:w,hasComment:E,CommentCheckFlags:N,isCallExpression:x,isMemberExpression:I,isObjectProperty:P,isEnabledHackPipeline:$}=Ke(),D=0;function T(o,d,v){let S=o.getValue(),b=o.getParentNode(),B=o.getParentNode(1),k=S!==b.body&&(b.type==="IfStatement"||b.type==="WhileStatement"||b.type==="SwitchStatement"||b.type==="DoWhileStatement"),M=$(d)&&S.operator==="|>",R=m(o,v,d,!1,k);if(k)return R;if(M)return i(R);if(x(b)&&b.callee===S||b.type==="UnaryExpression"||I(b)&&!b.computed)return i([l([u,...R]),u]);let q=b.type==="ReturnStatement"||b.type==="ThrowStatement"||b.type==="JSXExpressionContainer"&&B.type==="JSXAttribute"||S.operator!=="|"&&b.type==="JsExpressionRoot"||S.type!=="NGPipeExpression"&&(b.type==="NGRoot"&&d.parser==="__ng_binding"||b.type==="NGMicrosyntaxExpression"&&B.type==="NGMicrosyntax"&&B.body.length===1)||S===b.body&&b.type==="ArrowFunctionExpression"||S!==b.body&&b.type==="ForStatement"||b.type==="ConditionalExpression"&&B.type!=="ReturnStatement"&&B.type!=="ThrowStatement"&&!x(B)||b.type==="TemplateLiteral",J=b.type==="AssignmentExpression"||b.type==="VariableDeclarator"||b.type==="ClassProperty"||b.type==="PropertyDefinition"||b.type==="TSAbstractPropertyDefinition"||b.type==="ClassPrivateProperty"||P(b),L=F(S.left)&&w(S.operator,S.left.operator);if(q||C(S)&&!L||!C(S)&&J)return i(R);if(R.length===0)return"";let Q=_(S.right),V=R.findIndex(W=>typeof W!="string"&&!Array.isArray(W)&&W.type==="group"),j=R.slice(0,V===-1?1:V+1),Y=R.slice(j.length,Q?-1:void 0),ie=Symbol("logicalChain-"+ ++D),ee=i([...j,l(Y)],{id:ie});if(!Q)return ee;let ce=s(R);return i([ee,y(ce,{groupId:ie})])}function m(o,d,v,S,b){let B=o.getValue();if(!F(B))return[i(d())];let k=[];w(B.operator,B.left.operator)?k=o.call(Y=>m(Y,d,v,!0,b),"left"):k.push(i(d("left")));let M=C(B),R=(B.operator==="|>"||B.type==="NGPipeExpression"||B.operator==="|"&&v.parser==="__vue_expression")&&!f(v.originalText,B.right),q=B.type==="NGPipeExpression"?"|":B.operator,J=B.type==="NGPipeExpression"&&B.arguments.length>0?i(l([n,": ",a([n,": "],o.map(d,"arguments").map(Y=>p(2,i(Y))))])):"",L;if(M)L=[q," ",d("right"),J];else{let ie=$(v)&&q==="|>"?o.call(ee=>m(ee,d,v,!0,b),"right"):d("right");L=[R?n:"",q,R?" ":n,ie,J]}let Q=o.getParentNode(),V=E(B.left,N.Trailing|N.Line),j=V||!(b&&B.type==="LogicalExpression")&&Q.type!==B.type&&B.left.type!==B.type&&B.right.type!==B.type;if(k.push(R?"":" ",j?i(L,{shouldBreak:V}):L),S&&E(B)){let Y=h(t(o,k,v));return c(Y)||Y.type==="fill"?g(Y):[Y]}return k}function C(o){return o.type!=="LogicalExpression"?!1:!!(o.right.type==="ObjectExpression"&&o.right.properties.length>0||o.right.type==="ArrayExpression"&&o.right.elements.length>0||_(o.right))}r.exports={printBinaryishExpression:T,shouldInlineLogicalExpression:C}}}),fd=te({"src/language-js/print/angular.js"(e,r){"use strict";ne();var{builders:{join:t,line:s,group:a}}=qe(),{hasNode:n,hasComment:u,getComments:i}=Ke(),{printBinaryishExpression:l}=ru();function p(g,c,f){let F=g.getValue();if(F.type.startsWith("NG"))switch(F.type){case"NGRoot":return[f("node"),u(F.node)?" //"+i(F.node)[0].value.trimEnd():""];case"NGPipeExpression":return l(g,c,f);case"NGChainedExpression":return a(t([";",s],g.map(_=>h(_)?f():["(",f(),")"],"expressions")));case"NGEmptyExpression":return"";case"NGQuotedExpression":return[F.prefix,": ",F.value.trim()];case"NGMicrosyntax":return g.map((_,w)=>[w===0?"":y(_.getValue(),w,F)?" ":[";",s],f()],"body");case"NGMicrosyntaxKey":return/^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/i.test(F.name)?F.name:JSON.stringify(F.name);case"NGMicrosyntaxExpression":return[f("expression"),F.alias===null?"":[" as ",f("alias")]];case"NGMicrosyntaxKeyedExpression":{let _=g.getName(),w=g.getParentNode(),E=y(F,_,w)||(_===1&&(F.key.name==="then"||F.key.name==="else")||_===2&&F.key.name==="else"&&w.body[_-1].type==="NGMicrosyntaxKeyedExpression"&&w.body[_-1].key.name==="then")&&w.body[0].type==="NGMicrosyntaxExpression";return[f("key"),E?" ":": ",f("expression")]}case"NGMicrosyntaxLet":return["let ",f("key"),F.value===null?"":[" = ",f("value")]];case"NGMicrosyntaxAs":return[f("key")," as ",f("alias")];default:throw new Error(`Unknown Angular node type: ${JSON.stringify(F.type)}.`)}}function y(g,c,f){return g.type==="NGMicrosyntaxKeyedExpression"&&g.key.name==="of"&&c===1&&f.body[0].type==="NGMicrosyntaxLet"&&f.body[0].value===null}function h(g){return n(g.getValue(),c=>{switch(c.type){case void 0:return!1;case"CallExpression":case"OptionalCallExpression":case"AssignmentExpression":return!0}})}r.exports={printAngular:p}}}),Dd=te({"src/language-js/print/jsx.js"(e,r){"use strict";ne();var{printComments:t,printDanglingComments:s,printCommentsSeparately:a}=et(),{builders:{line:n,hardline:u,softline:i,group:l,indent:p,conditionalGroup:y,fill:h,ifBreak:g,lineSuffixBoundary:c,join:f},utils:{willBreak:F}}=qe(),{getLast:_,getPreferredQuote:w}=Ue(),{isJsxNode:E,rawText:N,isCallExpression:x,isStringLiteral:I,isBinaryish:P,hasComment:$,CommentCheckFlags:D,hasNodeIgnoreComment:T}=Ke(),m=qt(),{willPrintOwnComments:C}=Eo(),o=U=>U===""||U===n||U===u||U===i;function d(U,Z,se){let fe=U.getValue();if(fe.type==="JSXElement"&&de(fe))return[se("openingElement"),se("closingElement")];let ge=fe.type==="JSXElement"?se("openingElement"):se("openingFragment"),he=fe.type==="JSXElement"?se("closingElement"):se("closingFragment");if(fe.children.length===1&&fe.children[0].type==="JSXExpressionContainer"&&(fe.children[0].expression.type==="TemplateLiteral"||fe.children[0].expression.type==="TaggedTemplateExpression"))return[ge,...U.map(se,"children"),he];fe.children=fe.children.map(A=>Fe(A)?{type:"JSXText",value:" ",raw:" "}:A);let we=fe.children.some(E),ke=fe.children.filter(A=>A.type==="JSXExpressionContainer").length>1,Re=fe.type==="JSXElement"&&fe.openingElement.attributes.length>1,Ne=F(ge)||we||Re||ke,Pe=U.getParentNode().rootMarker==="mdx",oe=Z.singleQuote?"{' '}":'{" "}',H=Pe?" ":g([oe,i]," "),pe=fe.openingElement&&fe.openingElement.name&&fe.openingElement.name.name==="fbt",X=v(U,Z,se,H,pe),le=fe.children.some(A=>ue(A));for(let A=X.length-2;A>=0;A--){let G=X[A]===""&&X[A+1]==="",re=X[A]===u&&X[A+1]===""&&X[A+2]===u,ye=(X[A]===i||X[A]===u)&&X[A+1]===""&&X[A+2]===H,Ce=X[A]===H&&X[A+1]===""&&(X[A+2]===i||X[A+2]===u),Be=X[A]===H&&X[A+1]===""&&X[A+2]===H,ve=X[A]===i&&X[A+1]===""&&X[A+2]===u||X[A]===u&&X[A+1]===""&&X[A+2]===i;re&&le||G||ye||Be||ve?X.splice(A,2):Ce&&X.splice(A+1,2)}for(;X.length>0&&o(_(X));)X.pop();for(;X.length>1&&o(X[0])&&o(X[1]);)X.shift(),X.shift();let Ae=[];for(let[A,G]of X.entries()){if(G===H){if(A===1&&X[A-1]===""){if(X.length===2){Ae.push(oe);continue}Ae.push([oe,u]);continue}else if(A===X.length-1){Ae.push(oe);continue}else if(X[A-1]===""&&X[A-2]===u){Ae.push(oe);continue}}Ae.push(G),F(G)&&(Ne=!0)}let Ee=le?h(Ae):l(Ae,{shouldBreak:!0});if(Pe)return Ee;let De=l([ge,p([u,Ee]),u,he]);return Ne?De:y([l([ge,...X,he]),De])}function v(U,Z,se,fe,ge){let he=[];return U.each((we,ke,Re)=>{let Ne=we.getValue();if(Ne.type==="JSXText"){let Pe=N(Ne);if(ue(Ne)){let oe=Pe.split(ce);if(oe[0]===""){if(he.push(""),oe.shift(),/\n/.test(oe[0])){let pe=Re[ke+1];he.push(b(ge,oe[1],Ne,pe))}else he.push(fe);oe.shift()}let H;if(_(oe)===""&&(oe.pop(),H=oe.pop()),oe.length===0)return;for(let[pe,X]of oe.entries())pe%2===1?he.push(n):he.push(X);if(H!==void 0)if(/\n/.test(H)){let pe=Re[ke+1];he.push(b(ge,_(he),Ne,pe))}else he.push(fe);else{let pe=Re[ke+1];he.push(S(ge,_(he),Ne,pe))}}else/\n/.test(Pe)?Pe.match(/\n/g).length>1&&he.push("",u):he.push("",fe)}else{let Pe=se();he.push(Pe);let oe=Re[ke+1];if(oe&&ue(oe)){let pe=K(N(oe)).split(ce)[0];he.push(S(ge,pe,Ne,oe))}else he.push(u)}},"children"),he}function S(U,Z,se,fe){return U?"":se.type==="JSXElement"&&!se.closingElement||fe&&fe.type==="JSXElement"&&!fe.closingElement?Z.length===1?i:u:i}function b(U,Z,se,fe){return U?u:Z.length===1?se.type==="JSXElement"&&!se.closingElement||fe&&fe.type==="JSXElement"&&!fe.closingElement?u:i:u}function B(U,Z,se){let fe=U.getParentNode();if(!fe||{ArrayExpression:!0,JSXAttribute:!0,JSXElement:!0,JSXExpressionContainer:!0,JSXFragment:!0,ExpressionStatement:!0,CallExpression:!0,OptionalCallExpression:!0,ConditionalExpression:!0,JsExpressionRoot:!0}[fe.type])return Z;let he=U.match(void 0,ke=>ke.type==="ArrowFunctionExpression",x,ke=>ke.type==="JSXExpressionContainer"),we=m(U,se);return l([we?"":g("("),p([i,Z]),i,we?"":g(")")],{shouldBreak:he})}function k(U,Z,se){let fe=U.getValue(),ge=[];if(ge.push(se("name")),fe.value){let he;if(I(fe.value)){let ke=N(fe.value).slice(1,-1).replace(/'/g,"'").replace(/"/g,'"'),{escaped:Re,quote:Ne,regex:Pe}=w(ke,Z.jsxSingleQuote?"'":'"');ke=ke.replace(Pe,Re);let{leading:oe,trailing:H}=U.call(()=>a(U,Z),"value");he=[oe,Ne,ke,Ne,H]}else he=se("value");ge.push("=",he)}return ge}function M(U,Z,se){let fe=U.getValue(),ge=(he,we)=>he.type==="JSXEmptyExpression"||!$(he)&&(he.type==="ArrayExpression"||he.type==="ObjectExpression"||he.type==="ArrowFunctionExpression"||he.type==="AwaitExpression"&&(ge(he.argument,he)||he.argument.type==="JSXElement")||x(he)||he.type==="FunctionExpression"||he.type==="TemplateLiteral"||he.type==="TaggedTemplateExpression"||he.type==="DoExpression"||E(we)&&(he.type==="ConditionalExpression"||P(he)));return ge(fe.expression,U.getParentNode(0))?l(["{",se("expression"),c,"}"]):l(["{",p([i,se("expression")]),i,c,"}"])}function R(U,Z,se){let fe=U.getValue(),ge=fe.name&&$(fe.name)||fe.typeParameters&&$(fe.typeParameters);if(fe.selfClosing&&fe.attributes.length===0&&!ge)return["<",se("name"),se("typeParameters")," />"];if(fe.attributes&&fe.attributes.length===1&&fe.attributes[0].value&&I(fe.attributes[0].value)&&!fe.attributes[0].value.value.includes(` +`)&&!ge&&!$(fe.attributes[0]))return l(["<",se("name"),se("typeParameters")," ",...U.map(se,"attributes"),fe.selfClosing?" />":">"]);let he=fe.attributes&&fe.attributes.some(ke=>ke.value&&I(ke.value)&&ke.value.value.includes(` +`)),we=Z.singleAttributePerLine&&fe.attributes.length>1?u:n;return l(["<",se("name"),se("typeParameters"),p(U.map(()=>[we,se()],"attributes")),...q(fe,Z,ge)],{shouldBreak:he})}function q(U,Z,se){return U.selfClosing?[n,"/>"]:J(U,Z,se)?[">"]:[i,">"]}function J(U,Z,se){let fe=U.attributes.length>0&&$(_(U.attributes),D.Trailing);return U.attributes.length===0&&!se||(Z.bracketSameLine||Z.jsxBracketSameLine)&&(!se||U.attributes.length>0)&&!fe}function L(U,Z,se){let fe=U.getValue(),ge=[];ge.push(""),ge}function Q(U,Z){let se=U.getValue(),fe=$(se),ge=$(se,D.Line),he=se.type==="JSXOpeningFragment";return[he?"<":""]}function V(U,Z,se){let fe=t(U,d(U,Z,se),Z);return B(U,fe,Z)}function j(U,Z){let se=U.getValue(),fe=$(se,D.Line);return[s(U,Z,!fe),fe?u:""]}function Y(U,Z,se){let fe=U.getValue();return["{",U.call(ge=>{let he=["...",se()],we=ge.getValue();return!$(we)||!C(ge)?he:[p([i,t(ge,he,Z)]),i]},fe.type==="JSXSpreadAttribute"?"argument":"expression"),"}"]}function ie(U,Z,se){let fe=U.getValue();if(fe.type.startsWith("JSX"))switch(fe.type){case"JSXAttribute":return k(U,Z,se);case"JSXIdentifier":return String(fe.name);case"JSXNamespacedName":return f(":",[se("namespace"),se("name")]);case"JSXMemberExpression":return f(".",[se("object"),se("property")]);case"JSXSpreadAttribute":return Y(U,Z,se);case"JSXSpreadChild":return Y(U,Z,se);case"JSXExpressionContainer":return M(U,Z,se);case"JSXFragment":case"JSXElement":return V(U,Z,se);case"JSXOpeningElement":return R(U,Z,se);case"JSXClosingElement":return L(U,Z,se);case"JSXOpeningFragment":case"JSXClosingFragment":return Q(U,Z);case"JSXEmptyExpression":return j(U,Z);case"JSXText":throw new Error("JSXText should be handled by JSXElement");default:throw new Error(`Unknown JSX node type: ${JSON.stringify(fe.type)}.`)}}var ee=` +\r `,ce=new RegExp("(["+ee+"]+)"),W=new RegExp("[^"+ee+"]"),K=U=>U.replace(new RegExp("(?:^"+ce.source+"|"+ce.source+"$)"),"");function de(U){if(U.children.length===0)return!0;if(U.children.length>1)return!1;let Z=U.children[0];return Z.type==="JSXText"&&!ue(Z)}function ue(U){return U.type==="JSXText"&&(W.test(N(U))||!/\n/.test(N(U)))}function Fe(U){return U.type==="JSXExpressionContainer"&&I(U.expression)&&U.expression.value===" "&&!$(U.expression)}function z(U){let Z=U.getValue(),se=U.getParentNode();if(!se||!Z||!E(Z)||!E(se))return!1;let fe=se.children.indexOf(Z),ge=null;for(let he=fe;he>0;he--){let we=se.children[he-1];if(!(we.type==="JSXText"&&!ue(we))){ge=we;break}}return ge&&ge.type==="JSXExpressionContainer"&&ge.expression.type==="JSXEmptyExpression"&&T(ge.expression)}r.exports={hasJsxIgnoreComment:z,printJsx:ie}}}),ct=te({"src/language-js/print/misc.js"(e,r){"use strict";ne();var{isNonEmptyArray:t}=Ue(),{builders:{indent:s,join:a,line:n}}=qe(),{isFlowAnnotationComment:u}=Ke();function i(_){let w=_.getValue();return!w.optional||w.type==="Identifier"&&w===_.getParentNode().key?"":w.type==="OptionalCallExpression"||w.type==="OptionalMemberExpression"&&w.computed?"?.":"?"}function l(_){return _.getValue().definite||_.match(void 0,(w,E)=>E==="id"&&w.type==="VariableDeclarator"&&w.definite)?"!":""}function p(_,w,E){let N=_.getValue();return N.typeArguments?E("typeArguments"):N.typeParameters?E("typeParameters"):""}function y(_,w,E){let N=_.getValue();if(!N.typeAnnotation)return"";let x=_.getParentNode(),I=x.type==="DeclareFunction"&&x.id===N;return u(w.originalText,N.typeAnnotation)?[" /*: ",E("typeAnnotation")," */"]:[I?"":": ",E("typeAnnotation")]}function h(_,w,E){return["::",E("callee")]}function g(_,w,E){let N=_.getValue();return t(N.modifiers)?[a(" ",_.map(E,"modifiers"))," "]:""}function c(_,w,E){return _.type==="EmptyStatement"?";":_.type==="BlockStatement"||E?[" ",w]:s([n,w])}function f(_,w,E){return["...",E("argument"),y(_,w,E)]}function F(_,w){let E=_.slice(1,-1);if(E.includes('"')||E.includes("'"))return _;let N=w.singleQuote?"'":'"';return N+E+N}r.exports={printOptionalToken:i,printDefiniteToken:l,printFunctionTypeParameters:p,printBindExpressionCallee:h,printTypeScriptModifiers:g,printTypeAnnotation:y,printRestSpread:f,adjustClause:c,printDirective:F}}}),er=te({"src/language-js/print/array.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{builders:{line:s,softline:a,hardline:n,group:u,indent:i,ifBreak:l,fill:p}}=qe(),{getLast:y,hasNewline:h}=Ue(),{shouldPrintComma:g,hasComment:c,CommentCheckFlags:f,isNextLineEmpty:F,isNumericLiteral:_,isSignedNumericLiteral:w}=Ke(),{locStart:E}=ut(),{printOptionalToken:N,printTypeAnnotation:x}=ct();function I(T,m,C){let o=T.getValue(),d=[],v=o.type==="TupleExpression"?"#[":"[",S="]";if(o.elements.length===0)c(o,f.Dangling)?d.push(u([v,t(T,m),a,S])):d.push(v,S);else{let b=y(o.elements),B=!(b&&b.type==="RestElement"),k=b===null,M=Symbol("array"),R=!m.__inJestEach&&o.elements.length>1&&o.elements.every((L,Q,V)=>{let j=L&&L.type;if(j!=="ArrayExpression"&&j!=="ObjectExpression")return!1;let Y=V[Q+1];if(Y&&j!==Y.type)return!1;let ie=j==="ArrayExpression"?"elements":"properties";return L[ie]&&L[ie].length>1}),q=P(o,m),J=B?k?",":g(m)?q?l(",","",{groupId:M}):l(","):"":"";d.push(u([v,i([a,q?D(T,m,C,J):[$(T,m,"elements",C),J],t(T,m,!0)]),a,S],{shouldBreak:R,id:M}))}return d.push(N(T),x(T,m,C)),d}function P(T,m){return T.elements.length>1&&T.elements.every(C=>C&&(_(C)||w(C)&&!c(C.argument))&&!c(C,f.Trailing|f.Line,o=>!h(m.originalText,E(o),{backwards:!0})))}function $(T,m,C,o){let d=[],v=[];return T.each(S=>{d.push(v,u(o())),v=[",",s],S.getValue()&&F(S.getValue(),m)&&v.push(a)},C),d}function D(T,m,C,o){let d=[];return T.each((v,S,b)=>{let B=S===b.length-1;d.push([C(),B?o:","]),B||d.push(F(v.getValue(),m)?[n,n]:c(b[S+1],f.Leading|f.Line)?n:s)},"elements"),p(d)}r.exports={printArray:I,printArrayItems:$,isConciselyPrintedArray:P}}}),Ao=te({"src/language-js/print/call-arguments.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{getLast:s,getPenultimate:a}=Ue(),{getFunctionParameters:n,hasComment:u,CommentCheckFlags:i,isFunctionCompositionArgs:l,isJsxNode:p,isLongCurriedCallExpression:y,shouldPrintComma:h,getCallArguments:g,iterateCallArgumentsPath:c,isNextLineEmpty:f,isCallExpression:F,isStringLiteral:_,isObjectProperty:w,isTSTypeExpression:E}=Ke(),{builders:{line:N,hardline:x,softline:I,group:P,indent:$,conditionalGroup:D,ifBreak:T,breakParent:m},utils:{willBreak:C}}=qe(),{ArgExpansionBailout:o}=Qt(),{isConciselyPrintedArray:d}=er();function v(q,J,L){let Q=q.getValue(),V=Q.type==="ImportExpression",j=g(Q);if(j.length===0)return["(",t(q,J,!0),")"];if(k(j))return["(",L(["arguments",0]),", ",L(["arguments",1]),")"];let Y=!1,ie=!1,ee=j.length-1,ce=[];c(q,(z,U)=>{let Z=z.getNode(),se=[L()];U===ee||(f(Z,J)?(U===0&&(ie=!0),Y=!0,se.push(",",x,x)):se.push(",",N)),ce.push(se)});let W=!(V||Q.callee&&Q.callee.type==="Import")&&h(J,"all")?",":"";function K(){return P(["(",$([N,...ce]),W,N,")"],{shouldBreak:!0})}if(Y||q.getParentNode().type!=="Decorator"&&l(j))return K();let de=B(j),ue=b(j,J);if(de||ue){if(de?ce.slice(1).some(C):ce.slice(0,-1).some(C))return K();let z=[];try{q.try(()=>{c(q,(U,Z)=>{de&&Z===0&&(z=[[L([],{expandFirstArg:!0}),ce.length>1?",":"",ie?x:N,ie?x:""],...ce.slice(1)]),ue&&Z===ee&&(z=[...ce.slice(0,-1),L([],{expandLastArg:!0})])})})}catch(U){if(U instanceof o)return K();throw U}return[ce.some(C)?m:"",D([["(",...z,")"],de?["(",P(z[0],{shouldBreak:!0}),...z.slice(1),")"]:["(",...ce.slice(0,-1),P(s(z),{shouldBreak:!0}),")"],K()])]}let Fe=["(",$([I,...ce]),T(W),I,")"];return y(q)?Fe:P(Fe,{shouldBreak:ce.some(C)||Y})}function S(q){let J=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return q.type==="ObjectExpression"&&(q.properties.length>0||u(q))||q.type==="ArrayExpression"&&(q.elements.length>0||u(q))||q.type==="TSTypeAssertion"&&S(q.expression)||E(q)&&S(q.expression)||q.type==="FunctionExpression"||q.type==="ArrowFunctionExpression"&&(!q.returnType||!q.returnType.typeAnnotation||q.returnType.typeAnnotation.type!=="TSTypeReference"||M(q.body))&&(q.body.type==="BlockStatement"||q.body.type==="ArrowFunctionExpression"&&S(q.body,!0)||q.body.type==="ObjectExpression"||q.body.type==="ArrayExpression"||!J&&(F(q.body)||q.body.type==="ConditionalExpression")||p(q.body))||q.type==="DoExpression"||q.type==="ModuleExpression"}function b(q,J){let L=s(q),Q=a(q);return!u(L,i.Leading)&&!u(L,i.Trailing)&&S(L)&&(!Q||Q.type!==L.type)&&(q.length!==2||Q.type!=="ArrowFunctionExpression"||L.type!=="ArrayExpression")&&!(q.length>1&&L.type==="ArrayExpression"&&d(L,J))}function B(q){if(q.length!==2)return!1;let[J,L]=q;return J.type==="ModuleExpression"&&R(L)?!0:!u(J)&&(J.type==="FunctionExpression"||J.type==="ArrowFunctionExpression"&&J.body.type==="BlockStatement")&&L.type!=="FunctionExpression"&&L.type!=="ArrowFunctionExpression"&&L.type!=="ConditionalExpression"&&!S(L)}function k(q){return q.length===2&&q[0].type==="ArrowFunctionExpression"&&n(q[0]).length===0&&q[0].body.type==="BlockStatement"&&q[1].type==="ArrayExpression"&&!q.some(J=>u(J))}function M(q){return q.type==="BlockStatement"&&(q.body.some(J=>J.type!=="EmptyStatement")||u(q,i.Dangling))}function R(q){return q.type==="ObjectExpression"&&q.properties.length===1&&w(q.properties[0])&&q.properties[0].key.type==="Identifier"&&q.properties[0].key.name==="type"&&_(q.properties[0].value)&&q.properties[0].value.value==="module"}r.exports=v}}),So=te({"src/language-js/print/member.js"(e,r){"use strict";ne();var{builders:{softline:t,group:s,indent:a,label:n}}=qe(),{isNumericLiteral:u,isMemberExpression:i,isCallExpression:l}=Ke(),{printOptionalToken:p}=ct();function y(g,c,f){let F=g.getValue(),_=g.getParentNode(),w,E=0;do w=g.getParentNode(E),E++;while(w&&(i(w)||w.type==="TSNonNullExpression"));let N=f("object"),x=h(g,c,f),I=w&&(w.type==="NewExpression"||w.type==="BindExpression"||w.type==="AssignmentExpression"&&w.left.type!=="Identifier")||F.computed||F.object.type==="Identifier"&&F.property.type==="Identifier"&&!i(_)||(_.type==="AssignmentExpression"||_.type==="VariableDeclarator")&&(l(F.object)&&F.object.arguments.length>0||F.object.type==="TSNonNullExpression"&&l(F.object.expression)&&F.object.expression.arguments.length>0||N.label==="member-chain");return n(N.label==="member-chain"?"member-chain":"member",[N,I?x:s(a([t,x]))])}function h(g,c,f){let F=f("property"),_=g.getValue(),w=p(g);return _.computed?!_.property||u(_.property)?[w,"[",F,"]"]:s([w,"[",a([t,F]),t,"]"]):[w,".",F]}r.exports={printMemberExpression:y,printMemberLookup:h}}}),md=te({"src/language-js/print/member-chain.js"(e,r){"use strict";ne();var{printComments:t}=et(),{getLast:s,isNextLineEmptyAfterIndex:a,getNextNonSpaceNonCommentCharacterIndex:n}=Ue(),u=qt(),{isCallExpression:i,isMemberExpression:l,isFunctionOrArrowExpression:p,isLongCurriedCallExpression:y,isMemberish:h,isNumericLiteral:g,isSimpleCallArgument:c,hasComment:f,CommentCheckFlags:F,isNextLineEmpty:_}=Ke(),{locEnd:w}=ut(),{builders:{join:E,hardline:N,group:x,indent:I,conditionalGroup:P,breakParent:$,label:D},utils:{willBreak:T}}=qe(),m=Ao(),{printMemberLookup:C}=So(),{printOptionalToken:o,printFunctionTypeParameters:d,printBindExpressionCallee:v}=ct();function S(b,B,k){let M=b.getParentNode(),R=!M||M.type==="ExpressionStatement",q=[];function J(Ne){let{originalText:Pe}=B,oe=n(Pe,Ne,w);return Pe.charAt(oe)===")"?oe!==!1&&a(Pe,oe+1):_(Ne,B)}function L(Ne){let Pe=Ne.getValue();i(Pe)&&(h(Pe.callee)||i(Pe.callee))?(q.unshift({node:Pe,printed:[t(Ne,[o(Ne),d(Ne,B,k),m(Ne,B,k)],B),J(Pe)?N:""]}),Ne.call(oe=>L(oe),"callee")):h(Pe)?(q.unshift({node:Pe,needsParens:u(Ne,B),printed:t(Ne,l(Pe)?C(Ne,B,k):v(Ne,B,k),B)}),Ne.call(oe=>L(oe),"object")):Pe.type==="TSNonNullExpression"?(q.unshift({node:Pe,printed:t(Ne,"!",B)}),Ne.call(oe=>L(oe),"expression")):q.unshift({node:Pe,printed:k()})}let Q=b.getValue();q.unshift({node:Q,printed:[o(b),d(b,B,k),m(b,B,k)]}),Q.callee&&b.call(Ne=>L(Ne),"callee");let V=[],j=[q[0]],Y=1;for(;Y0&&V.push(j);function ee(Ne){return/^[A-Z]|^[$_]+$/.test(Ne)}function ce(Ne){return Ne.length<=B.tabWidth}function W(Ne){let Pe=Ne[1].length>0&&Ne[1][0].node.computed;if(Ne[0].length===1){let H=Ne[0][0].node;return H.type==="ThisExpression"||H.type==="Identifier"&&(ee(H.name)||R&&ce(H.name)||Pe)}let oe=s(Ne[0]).node;return l(oe)&&oe.property.type==="Identifier"&&(ee(oe.property.name)||Pe)}let K=V.length>=2&&!f(V[1][0].node)&&W(V);function de(Ne){let Pe=Ne.map(oe=>oe.printed);return Ne.length>0&&s(Ne).needsParens?["(",...Pe,")"]:Pe}function ue(Ne){return Ne.length===0?"":I(x([N,E(N,Ne.map(de))]))}let Fe=V.map(de),z=Fe,U=K?3:2,Z=V.flat(),se=Z.slice(1,-1).some(Ne=>f(Ne.node,F.Leading))||Z.slice(0,-1).some(Ne=>f(Ne.node,F.Trailing))||V[U]&&f(V[U][0].node,F.Leading);if(V.length<=U&&!se)return y(b)?z:x(z);let fe=s(V[K?1:0]).node,ge=!i(fe)&&J(fe),he=[de(V[0]),K?V.slice(1,2).map(de):"",ge?N:"",ue(V.slice(K?2:1))],we=q.map(Ne=>{let{node:Pe}=Ne;return Pe}).filter(i);function ke(){let Ne=s(s(V)).node,Pe=s(Fe);return i(Ne)&&T(Pe)&&we.slice(0,-1).some(oe=>oe.arguments.some(p))}let Re;return se||we.length>2&&we.some(Ne=>!Ne.arguments.every(Pe=>c(Pe,0)))||Fe.slice(0,-1).some(T)||ke()?Re=x(he):Re=[T(z)||ge?$:"",P([z,he])],D("member-chain",Re)}r.exports=S}}),xo=te({"src/language-js/print/call-expression.js"(e,r){"use strict";ne();var{builders:{join:t,group:s}}=qe(),a=qt(),{getCallArguments:n,hasFlowAnnotationComment:u,isCallExpression:i,isMemberish:l,isStringLiteral:p,isTemplateOnItsOwnLine:y,isTestCall:h,iterateCallArgumentsPath:g}=Ke(),c=md(),f=Ao(),{printOptionalToken:F,printFunctionTypeParameters:_}=ct();function w(N,x,I){let P=N.getValue(),$=N.getParentNode(),D=P.type==="NewExpression",T=P.type==="ImportExpression",m=F(N),C=n(P);if(C.length>0&&(!T&&!D&&E(P,$)||C.length===1&&y(C[0],x.originalText)||!D&&h(P,$))){let v=[];return g(N,()=>{v.push(I())}),[D?"new ":"",I("callee"),m,_(N,x,I),"(",t(", ",v),")"]}let o=(x.parser==="babel"||x.parser==="babel-flow")&&P.callee&&P.callee.type==="Identifier"&&u(P.callee.trailingComments);if(o&&(P.callee.trailingComments[0].printed=!0),!T&&!D&&l(P.callee)&&!N.call(v=>a(v,x),"callee"))return c(N,x,I);let d=[D?"new ":"",T?"import":I("callee"),m,o?`/*:: ${P.callee.trailingComments[0].value.slice(2).trim()} */`:"",_(N,x,I),f(N,x,I)];return T||i(P.callee)?s(d):d}function E(N,x){if(N.callee.type!=="Identifier")return!1;if(N.callee.name==="require")return!0;if(N.callee.name==="define"){let I=n(N);return x.type==="ExpressionStatement"&&(I.length===1||I.length===2&&I[0].type==="ArrayExpression"||I.length===3&&p(I[0])&&I[1].type==="ArrayExpression")}return!1}r.exports={printCallExpression:w}}}),tr=te({"src/language-js/print/assignment.js"(e,r){"use strict";ne();var{isNonEmptyArray:t,getStringWidth:s}=Ue(),{builders:{line:a,group:n,indent:u,indentIfBreak:i,lineSuffixBoundary:l},utils:{cleanDoc:p,willBreak:y,canBreak:h}}=qe(),{hasLeadingOwnLineComment:g,isBinaryish:c,isStringLiteral:f,isLiteral:F,isNumericLiteral:_,isCallExpression:w,isMemberExpression:E,getCallArguments:N,rawText:x,hasComment:I,isSignedNumericLiteral:P,isObjectProperty:$}=Ke(),{shouldInlineLogicalExpression:D}=ru(),{printCallExpression:T}=xo();function m(W,K,de,ue,Fe,z){let U=d(W,K,de,ue,z),Z=de(z,{assignmentLayout:U});switch(U){case"break-after-operator":return n([n(ue),Fe,n(u([a,Z]))]);case"never-break-after-operator":return n([n(ue),Fe," ",Z]);case"fluid":{let se=Symbol("assignment");return n([n(ue),Fe,n(u(a),{id:se}),l,i(Z,{groupId:se})])}case"break-lhs":return n([ue,Fe," ",n(Z)]);case"chain":return[n(ue),Fe,a,Z];case"chain-tail":return[n(ue),Fe,u([a,Z])];case"chain-tail-arrow-chain":return[n(ue),Fe,Z];case"only-left":return ue}}function C(W,K,de){let ue=W.getValue();return m(W,K,de,de("left"),[" ",ue.operator],"right")}function o(W,K,de){return m(W,K,de,de("id")," =","init")}function d(W,K,de,ue,Fe){let z=W.getValue(),U=z[Fe];if(!U)return"only-left";let Z=!b(U);if(W.match(b,B,he=>!Z||he.type!=="ExpressionStatement"&&he.type!=="VariableDeclaration"))return Z?U.type==="ArrowFunctionExpression"&&U.body.type==="ArrowFunctionExpression"?"chain-tail-arrow-chain":"chain-tail":"chain";if(!Z&&b(U.right)||g(K.originalText,U))return"break-after-operator";if(U.type==="CallExpression"&&U.callee.name==="require"||K.parser==="json5"||K.parser==="json")return"never-break-after-operator";if(S(z)||k(z)||q(z)||J(z)&&h(ue))return"break-lhs";let ge=ie(z,ue,K);return W.call(()=>v(W,K,de,ge),Fe)?"break-after-operator":ge||U.type==="TemplateLiteral"||U.type==="TaggedTemplateExpression"||U.type==="BooleanLiteral"||_(U)||U.type==="ClassExpression"?"never-break-after-operator":"fluid"}function v(W,K,de,ue){let Fe=W.getValue();if(c(Fe)&&!D(Fe))return!0;switch(Fe.type){case"StringLiteralTypeAnnotation":case"SequenceExpression":return!0;case"ConditionalExpression":{let{test:Z}=Fe;return c(Z)&&!D(Z)}case"ClassExpression":return t(Fe.decorators)}if(ue)return!1;let z=Fe,U=[];for(;;)if(z.type==="UnaryExpression")z=z.argument,U.push("argument");else if(z.type==="TSNonNullExpression")z=z.expression,U.push("expression");else break;return!!(f(z)||W.call(()=>V(W,K,de),...U))}function S(W){if(B(W)){let K=W.left||W.id;return K.type==="ObjectPattern"&&K.properties.length>2&&K.properties.some(de=>$(de)&&(!de.shorthand||de.value&&de.value.type==="AssignmentPattern"))}return!1}function b(W){return W.type==="AssignmentExpression"}function B(W){return b(W)||W.type==="VariableDeclarator"}function k(W){let K=M(W);if(t(K)){let de=W.type==="TSTypeAliasDeclaration"?"constraint":"bound";if(K.length>1&&K.some(ue=>ue[de]||ue.default))return!0}return!1}function M(W){return R(W)&&W.typeParameters&&W.typeParameters.params?W.typeParameters.params:null}function R(W){return W.type==="TSTypeAliasDeclaration"||W.type==="TypeAlias"}function q(W){if(W.type!=="VariableDeclarator")return!1;let{typeAnnotation:K}=W.id;if(!K||!K.typeAnnotation)return!1;let de=L(K.typeAnnotation);return t(de)&&de.length>1&&de.some(ue=>t(L(ue))||ue.type==="TSConditionalType")}function J(W){return W.type==="VariableDeclarator"&&W.init&&W.init.type==="ArrowFunctionExpression"}function L(W){return Q(W)&&W.typeParameters&&W.typeParameters.params?W.typeParameters.params:null}function Q(W){return W.type==="TSTypeReference"||W.type==="GenericTypeAnnotation"}function V(W,K,de){let ue=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,Fe=W.getValue(),z=()=>V(W,K,de,!0);if(Fe.type==="TSNonNullExpression")return W.call(z,"expression");if(w(Fe)){if(T(W,K,de).label==="member-chain")return!1;let Z=N(Fe);return!(Z.length===0||Z.length===1&&Y(Z[0],K))||ee(Fe,de)?!1:W.call(z,"callee")}return E(Fe)?W.call(z,"object"):ue&&(Fe.type==="Identifier"||Fe.type==="ThisExpression")}var j=.25;function Y(W,K){let{printWidth:de}=K;if(I(W))return!1;let ue=de*j;if(W.type==="ThisExpression"||W.type==="Identifier"&&W.name.length<=ue||P(W)&&!I(W.argument))return!0;let Fe=W.type==="Literal"&&"regex"in W&&W.regex.pattern||W.type==="RegExpLiteral"&&W.pattern;return Fe?Fe.length<=ue:f(W)?x(W).length<=ue:W.type==="TemplateLiteral"?W.expressions.length===0&&W.quasis[0].value.raw.length<=ue&&!W.quasis[0].value.raw.includes(` +`):F(W)}function ie(W,K,de){if(!$(W))return!1;K=p(K);let ue=3;return typeof K=="string"&&s(K)1)return!0;if(de.length===1){let Fe=de[0];if(Fe.type==="TSUnionType"||Fe.type==="UnionTypeAnnotation"||Fe.type==="TSIntersectionType"||Fe.type==="IntersectionTypeAnnotation"||Fe.type==="TSTypeLiteral"||Fe.type==="ObjectTypeAnnotation")return!0}let ue=W.typeParameters?"typeParameters":"typeArguments";if(y(K(ue)))return!0}return!1}function ce(W){return W.typeParameters&&W.typeParameters.params||W.typeArguments&&W.typeArguments.params}r.exports={printVariableDeclarator:o,printAssignmentExpression:C,printAssignment:m,isArrowFunctionVariableDeclarator:J}}}),Lr=te({"src/language-js/print/function-parameters.js"(e,r){"use strict";ne();var{getNextNonSpaceNonCommentCharacter:t}=Ue(),{printDanglingComments:s}=et(),{builders:{line:a,hardline:n,softline:u,group:i,indent:l,ifBreak:p},utils:{removeLines:y,willBreak:h}}=qe(),{getFunctionParameters:g,iterateFunctionParametersPath:c,isSimpleType:f,isTestCall:F,isTypeAnnotationAFunction:_,isObjectType:w,isObjectTypePropertyAFunction:E,hasRestParameter:N,shouldPrintComma:x,hasComment:I,isNextLineEmpty:P}=Ke(),{locEnd:$}=ut(),{ArgExpansionBailout:D}=Qt(),{printFunctionTypeParameters:T}=ct();function m(v,S,b,B,k){let M=v.getValue(),R=g(M),q=k?T(v,b,S):"";if(R.length===0)return[q,"(",s(v,b,!0,ie=>t(b.originalText,ie,$)===")"),")"];let J=v.getParentNode(),L=F(J),Q=C(M),V=[];if(c(v,(ie,ee)=>{let ce=ee===R.length-1;ce&&M.rest&&V.push("..."),V.push(S()),!ce&&(V.push(","),L||Q?V.push(" "):P(R[ee],b)?V.push(n,n):V.push(a))}),B){if(h(q)||h(V))throw new D;return i([y(q),"(",y(V),")"])}let j=R.every(ie=>!ie.decorators);return Q&&j?[q,"(",...V,")"]:L?[q,"(",...V,")"]:(E(J)||_(J)||J.type==="TypeAlias"||J.type==="UnionTypeAnnotation"||J.type==="TSUnionType"||J.type==="IntersectionTypeAnnotation"||J.type==="FunctionTypeAnnotation"&&J.returnType===M)&&R.length===1&&R[0].name===null&&M.this!==R[0]&&R[0].typeAnnotation&&M.typeParameters===null&&f(R[0].typeAnnotation)&&!M.rest?b.arrowParens==="always"?["(",...V,")"]:V:[q,"(",l([u,...V]),p(!N(M)&&x(b,"all")?",":""),u,")"]}function C(v){if(!v)return!1;let S=g(v);if(S.length!==1)return!1;let[b]=S;return!I(b)&&(b.type==="ObjectPattern"||b.type==="ArrayPattern"||b.type==="Identifier"&&b.typeAnnotation&&(b.typeAnnotation.type==="TypeAnnotation"||b.typeAnnotation.type==="TSTypeAnnotation")&&w(b.typeAnnotation.typeAnnotation)||b.type==="FunctionTypeParam"&&w(b.typeAnnotation)||b.type==="AssignmentPattern"&&(b.left.type==="ObjectPattern"||b.left.type==="ArrayPattern")&&(b.right.type==="Identifier"||b.right.type==="ObjectExpression"&&b.right.properties.length===0||b.right.type==="ArrayExpression"&&b.right.elements.length===0))}function o(v){let S;return v.returnType?(S=v.returnType,S.typeAnnotation&&(S=S.typeAnnotation)):v.typeAnnotation&&(S=v.typeAnnotation),S}function d(v,S){let b=o(v);if(!b)return!1;let B=v.typeParameters&&v.typeParameters.params;if(B){if(B.length>1)return!1;if(B.length===1){let k=B[0];if(k.constraint||k.default)return!1}}return g(v).length===1&&(w(b)||h(S))}r.exports={printFunctionParameters:m,shouldHugFunctionParameters:C,shouldGroupFunctionParameters:d}}}),Or=te({"src/language-js/print/type-annotation.js"(e,r){"use strict";ne();var{printComments:t,printDanglingComments:s}=et(),{isNonEmptyArray:a}=Ue(),{builders:{group:n,join:u,line:i,softline:l,indent:p,align:y,ifBreak:h}}=qe(),g=qt(),{locStart:c}=ut(),{isSimpleType:f,isObjectType:F,hasLeadingOwnLineComment:_,isObjectTypePropertyAFunction:w,shouldPrintComma:E}=Ke(),{printAssignment:N}=tr(),{printFunctionParameters:x,shouldGroupFunctionParameters:I}=Lr(),{printArrayItems:P}=er();function $(b){if(f(b)||F(b))return!0;if(b.type==="UnionTypeAnnotation"||b.type==="TSUnionType"){let B=b.types.filter(M=>M.type==="VoidTypeAnnotation"||M.type==="TSVoidKeyword"||M.type==="NullLiteralTypeAnnotation"||M.type==="TSNullKeyword").length,k=b.types.some(M=>M.type==="ObjectTypeAnnotation"||M.type==="TSTypeLiteral"||M.type==="GenericTypeAnnotation"||M.type==="TSTypeReference");if(b.types.length-1===B&&k)return!0}return!1}function D(b,B,k){let M=B.semi?";":"",R=b.getValue(),q=[];return q.push("opaque type ",k("id"),k("typeParameters")),R.supertype&&q.push(": ",k("supertype")),R.impltype&&q.push(" = ",k("impltype")),q.push(M),q}function T(b,B,k){let M=B.semi?";":"",R=b.getValue(),q=[];R.declare&&q.push("declare "),q.push("type ",k("id"),k("typeParameters"));let J=R.type==="TSTypeAliasDeclaration"?"typeAnnotation":"right";return[N(b,B,k,q," =",J),M]}function m(b,B,k){let M=b.getValue(),R=b.map(k,"types"),q=[],J=!1;for(let L=0;L1&&(J=!0),q.push(" & ",L>1?p(R[L]):R[L]));return n(q)}function C(b,B,k){let M=b.getValue(),R=b.getParentNode(),q=R.type!=="TypeParameterInstantiation"&&R.type!=="TSTypeParameterInstantiation"&&R.type!=="GenericTypeAnnotation"&&R.type!=="TSTypeReference"&&R.type!=="TSTypeAssertion"&&R.type!=="TupleTypeAnnotation"&&R.type!=="TSTupleType"&&!(R.type==="FunctionTypeParam"&&!R.name&&b.getParentNode(1).this!==R)&&!((R.type==="TypeAlias"||R.type==="VariableDeclarator"||R.type==="TSTypeAliasDeclaration")&&_(B.originalText,M)),J=$(M),L=b.map(j=>{let Y=k();return J||(Y=y(2,Y)),t(j,Y,B)},"types");if(J)return u(" | ",L);let Q=q&&!_(B.originalText,M),V=[h([Q?i:"","| "]),u([i,"| "],L)];return g(b,B)?n([p(V),l]):R.type==="TupleTypeAnnotation"&&R.types.length>1||R.type==="TSTupleType"&&R.elementTypes.length>1?n([p([h(["(",l]),V]),l,h(")")]):n(q?p(V):V)}function o(b,B,k){let M=b.getValue(),R=[],q=b.getParentNode(0),J=b.getParentNode(1),L=b.getParentNode(2),Q=M.type==="TSFunctionType"||!((q.type==="ObjectTypeProperty"||q.type==="ObjectTypeInternalSlot")&&!q.variance&&!q.optional&&c(q)===c(M)||q.type==="ObjectTypeCallProperty"||L&&L.type==="DeclareFunction"),V=Q&&(q.type==="TypeAnnotation"||q.type==="TSTypeAnnotation"),j=V&&Q&&(q.type==="TypeAnnotation"||q.type==="TSTypeAnnotation")&&J.type==="ArrowFunctionExpression";w(q)&&(Q=!0,V=!0),j&&R.push("(");let Y=x(b,k,B,!1,!0),ie=M.returnType||M.predicate||M.typeAnnotation?[Q?" => ":": ",k("returnType"),k("predicate"),k("typeAnnotation")]:"",ee=I(M,ie);return R.push(ee?n(Y):Y),ie&&R.push(ie),j&&R.push(")"),n(R)}function d(b,B,k){let M=b.getValue(),R=M.type==="TSTupleType"?"elementTypes":"types",q=M[R],J=a(q),L=J?l:"";return n(["[",p([L,P(b,B,R,k)]),h(J&&E(B,"all")?",":""),s(b,B,!0),L,"]"])}function v(b,B,k){let M=b.getValue(),R=M.type==="OptionalIndexedAccessType"&&M.optional?"?.[":"[";return[k("objectType"),R,k("indexType"),"]"]}function S(b,B,k){let M=b.getValue();return[M.postfix?"":k,B("typeAnnotation"),M.postfix?k:""]}r.exports={printOpaqueType:D,printTypeAlias:T,printIntersectionType:m,printUnionType:C,printFunctionType:o,printTupleType:d,printIndexedAccessType:v,shouldHugType:$,printJSDocType:S}}}),jr=te({"src/language-js/print/type-parameters.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{builders:{join:s,line:a,hardline:n,softline:u,group:i,indent:l,ifBreak:p}}=qe(),{isTestCall:y,hasComment:h,CommentCheckFlags:g,isTSXFile:c,shouldPrintComma:f,getFunctionParameters:F,isObjectType:_,getTypeScriptMappedTypeModifier:w}=Ke(),{createGroupIdMapper:E}=Ue(),{shouldHugType:N}=Or(),{isArrowFunctionVariableDeclarator:x}=tr(),I=E("typeParameters");function P(T,m,C,o){let d=T.getValue();if(!d[o])return"";if(!Array.isArray(d[o]))return C(o);let v=T.getNode(2),S=v&&y(v),b=T.match(M=>!(M[o].length===1&&_(M[o][0])),void 0,(M,R)=>R==="typeAnnotation",M=>M.type==="Identifier",x);if(d[o].length===0||!b&&(S||d[o].length===1&&(d[o][0].type==="NullableTypeAnnotation"||N(d[o][0]))))return["<",s(", ",T.map(C,o)),$(T,m),">"];let k=d.type==="TSTypeParameterInstantiation"?"":F(d).length===1&&c(m)&&!d[o][0].constraint&&T.getParentNode().type==="ArrowFunctionExpression"?",":f(m,"all")?p(","):"";return i(["<",l([u,s([",",a],T.map(C,o))]),k,u,">"],{id:I(d)})}function $(T,m){let C=T.getValue();if(!h(C,g.Dangling))return"";let o=!h(C,g.Line),d=t(T,m,o);return o?d:[d,n]}function D(T,m,C){let o=T.getValue(),d=[o.type==="TSTypeParameter"&&o.const?"const ":""],v=T.getParentNode();return v.type==="TSMappedType"?(v.readonly&&d.push(w(v.readonly,"readonly")," "),d.push("[",C("name")),o.constraint&&d.push(" in ",C("constraint")),v.nameType&&d.push(" as ",T.callParent(()=>C("nameType"))),d.push("]"),d):(o.variance&&d.push(C("variance")),o.in&&d.push("in "),o.out&&d.push("out "),d.push(C("name")),o.bound&&d.push(": ",C("bound")),o.constraint&&d.push(" extends ",C("constraint")),o.default&&d.push(" = ",C("default")),d)}r.exports={printTypeParameter:D,printTypeParameters:P,getTypeParametersGroupId:I}}}),rr=te({"src/language-js/print/property.js"(e,r){"use strict";ne();var{printComments:t}=et(),{printString:s,printNumber:a}=Ue(),{isNumericLiteral:n,isSimpleNumber:u,isStringLiteral:i,isStringPropSafeToUnquote:l,rawText:p}=Ke(),{printAssignment:y}=tr(),h=new WeakMap;function g(f,F,_){let w=f.getNode();if(w.computed)return["[",_("key"),"]"];let E=f.getParentNode(),{key:N}=w;if(F.quoteProps==="consistent"&&!h.has(E)){let x=(E.properties||E.body||E.members).some(I=>!I.computed&&I.key&&i(I.key)&&!l(I,F));h.set(E,x)}if((N.type==="Identifier"||n(N)&&u(a(p(N)))&&String(N.value)===a(p(N))&&!(F.parser==="typescript"||F.parser==="babel-ts"))&&(F.parser==="json"||F.quoteProps==="consistent"&&h.get(E))){let x=s(JSON.stringify(N.type==="Identifier"?N.name:N.value.toString()),F);return f.call(I=>t(I,x,F),"key")}return l(w,F)&&(F.quoteProps==="as-needed"||F.quoteProps==="consistent"&&!h.get(E))?f.call(x=>t(x,/^\d/.test(N.value)?a(N.value):N.value,F),"key"):_("key")}function c(f,F,_){return f.getValue().shorthand?_("value"):y(f,F,_,g(f,F,_),":","value")}r.exports={printProperty:c,printPropertyKey:g}}}),qr=te({"src/language-js/print/function.js"(e,r){"use strict";ne();var t=Zt(),{printDanglingComments:s,printCommentsSeparately:a}=et(),n=lt(),{getNextNonSpaceNonCommentCharacterIndex:u}=Ue(),{builders:{line:i,softline:l,group:p,indent:y,ifBreak:h,hardline:g,join:c,indentIfBreak:f},utils:{removeLines:F,willBreak:_}}=qe(),{ArgExpansionBailout:w}=Qt(),{getFunctionParameters:E,hasLeadingOwnLineComment:N,isFlowAnnotationComment:x,isJsxNode:I,isTemplateOnItsOwnLine:P,shouldPrintComma:$,startsWithNoLookaheadToken:D,isBinaryish:T,isLineComment:m,hasComment:C,getComments:o,CommentCheckFlags:d,isCallLikeExpression:v,isCallExpression:S,getCallArguments:b,hasNakedLeftSide:B,getLeftSide:k}=Ke(),{locEnd:M}=ut(),{printFunctionParameters:R,shouldGroupFunctionParameters:q}=Lr(),{printPropertyKey:J}=rr(),{printFunctionTypeParameters:L}=ct();function Q(U,Z,se,fe){let ge=U.getValue(),he=!1;if((ge.type==="FunctionDeclaration"||ge.type==="FunctionExpression")&&fe&&fe.expandLastArg){let Pe=U.getParentNode();S(Pe)&&b(Pe).length>1&&(he=!0)}let we=[];ge.type==="TSDeclareFunction"&&ge.declare&&we.push("declare "),ge.async&&we.push("async "),ge.generator?we.push("function* "):we.push("function "),ge.id&&we.push(Z("id"));let ke=R(U,Z,se,he),Re=K(U,Z,se),Ne=q(ge,Re);return we.push(L(U,se,Z),p([Ne?p(ke):ke,Re]),ge.body?" ":"",Z("body")),se.semi&&(ge.declare||!ge.body)&&we.push(";"),we}function V(U,Z,se){let fe=U.getNode(),{kind:ge}=fe,he=fe.value||fe,we=[];return!ge||ge==="init"||ge==="method"||ge==="constructor"?he.async&&we.push("async "):(t.ok(ge==="get"||ge==="set"),we.push(ge," ")),he.generator&&we.push("*"),we.push(J(U,Z,se),fe.optional||fe.key.optional?"?":""),fe===he?we.push(j(U,Z,se)):he.type==="FunctionExpression"?we.push(U.call(ke=>j(ke,Z,se),"value")):we.push(se("value")),we}function j(U,Z,se){let fe=U.getNode(),ge=R(U,se,Z),he=K(U,se,Z),we=q(fe,he),ke=[L(U,Z,se),p([we?p(ge):ge,he])];return fe.body?ke.push(" ",se("body")):ke.push(Z.semi?";":""),ke}function Y(U,Z,se,fe){let ge=U.getValue(),he=[];if(ge.async&&he.push("async "),W(U,Z))he.push(se(["params",0]));else{let ke=fe&&(fe.expandLastArg||fe.expandFirstArg),Re=K(U,se,Z);if(ke){if(_(Re))throw new w;Re=p(F(Re))}he.push(p([R(U,se,Z,ke,!0),Re]))}let we=s(U,Z,!0,ke=>{let Re=u(Z.originalText,ke,M);return Re!==!1&&Z.originalText.slice(Re,Re+2)==="=>"});return we&&he.push(" ",we),he}function ie(U,Z,se,fe,ge,he){let we=U.getName(),ke=U.getParentNode(),Re=v(ke)&&we==="callee",Ne=Boolean(Z&&Z.assignmentLayout),Pe=he.body.type!=="BlockStatement"&&he.body.type!=="ObjectExpression"&&he.body.type!=="SequenceExpression",oe=Re&&Pe||Z&&Z.assignmentLayout==="chain-tail-arrow-chain",H=Symbol("arrow-chain");return he.body.type==="SequenceExpression"&&(ge=p(["(",y([l,ge]),l,")"])),p([p(y([Re||Ne?l:"",p(c([" =>",i],se),{shouldBreak:fe})]),{id:H,shouldBreak:oe})," =>",f(Pe?y([i,ge]):[" ",ge],{groupId:H}),Re?h(l,"",{groupId:H}):""])}function ee(U,Z,se,fe){let ge=U.getValue(),he=[],we=[],ke=!1;if(function H(){let pe=Y(U,Z,se,fe);if(he.length===0)he.push(pe);else{let{leading:X,trailing:le}=a(U,Z);he.push([X,pe]),we.unshift(le)}ke=ke||ge.returnType&&E(ge).length>0||ge.typeParameters||E(ge).some(X=>X.type!=="Identifier"),ge.body.type!=="ArrowFunctionExpression"||fe&&fe.expandLastArg?we.unshift(se("body",fe)):(ge=ge.body,U.call(H,"body"))}(),he.length>1)return ie(U,fe,he,ke,we,ge);let Re=he;if(Re.push(" =>"),!N(Z.originalText,ge.body)&&(ge.body.type==="ArrayExpression"||ge.body.type==="ObjectExpression"||ge.body.type==="BlockStatement"||I(ge.body)||P(ge.body,Z.originalText)||ge.body.type==="ArrowFunctionExpression"||ge.body.type==="DoExpression"))return p([...Re," ",we]);if(ge.body.type==="SequenceExpression")return p([...Re,p([" (",y([l,we]),l,")"])]);let Ne=(fe&&fe.expandLastArg||U.getParentNode().type==="JSXExpressionContainer")&&!C(ge),Pe=fe&&fe.expandLastArg&&$(Z,"all"),oe=ge.body.type==="ConditionalExpression"&&!D(ge.body,H=>H.type==="ObjectExpression");return p([...Re,p([y([i,oe?h("","("):"",we,oe?h("",")"):""]),Ne?[h(Pe?",":""),l]:""])])}function ce(U){let Z=E(U);return Z.length===1&&!U.typeParameters&&!C(U,d.Dangling)&&Z[0].type==="Identifier"&&!Z[0].typeAnnotation&&!C(Z[0])&&!Z[0].optional&&!U.predicate&&!U.returnType}function W(U,Z){if(Z.arrowParens==="always")return!1;if(Z.arrowParens==="avoid"){let se=U.getValue();return ce(se)}return!1}function K(U,Z,se){let fe=U.getValue(),ge=Z("returnType");if(fe.returnType&&x(se.originalText,fe.returnType))return[" /*: ",ge," */"];let he=[ge];return fe.returnType&&fe.returnType.typeAnnotation&&he.unshift(": "),fe.predicate&&he.push(fe.returnType?" ":": ",Z("predicate")),he}function de(U,Z,se){let fe=U.getValue(),ge=Z.semi?";":"",he=[];fe.argument&&(z(Z,fe.argument)?he.push([" (",y([g,se("argument")]),g,")"]):T(fe.argument)||fe.argument.type==="SequenceExpression"?he.push(p([h(" ("," "),y([l,se("argument")]),l,h(")")])):he.push(" ",se("argument")));let we=o(fe),ke=n(we),Re=ke&&m(ke);return Re&&he.push(ge),C(fe,d.Dangling)&&he.push(" ",s(U,Z,!0)),Re||he.push(ge),he}function ue(U,Z,se){return["return",de(U,Z,se)]}function Fe(U,Z,se){return["throw",de(U,Z,se)]}function z(U,Z){if(N(U.originalText,Z))return!0;if(B(Z)){let se=Z,fe;for(;fe=k(se);)if(se=fe,N(U.originalText,se))return!0}return!1}r.exports={printFunction:Q,printArrowFunction:ee,printMethod:V,printReturnStatement:ue,printThrowStatement:Fe,printMethodInternal:j,shouldPrintParamsWithoutParens:W}}}),nu=te({"src/language-js/print/decorators.js"(e,r){"use strict";ne();var{isNonEmptyArray:t,hasNewline:s}=Ue(),{builders:{line:a,hardline:n,join:u,breakParent:i,group:l}}=qe(),{locStart:p,locEnd:y}=ut(),{getParentExportDeclaration:h}=Ke();function g(w,E,N){let x=w.getValue();return l([u(a,w.map(N,"decorators")),F(x,E)?n:a])}function c(w,E,N){return[u(n,w.map(N,"declaration","decorators")),n]}function f(w,E,N){let x=w.getValue(),{decorators:I}=x;if(!t(I)||_(w.getParentNode()))return;let P=x.type==="ClassExpression"||x.type==="ClassDeclaration"||F(x,E);return[h(w)?n:P?i:"",u(a,w.map(N,"decorators")),a]}function F(w,E){return w.decorators.some(N=>s(E.originalText,y(N)))}function _(w){if(w.type!=="ExportDefaultDeclaration"&&w.type!=="ExportNamedDeclaration"&&w.type!=="DeclareExportDeclaration")return!1;let E=w.declaration&&w.declaration.decorators;return t(E)&&p(w)===p(E[0])}r.exports={printDecorators:f,printClassMemberDecorators:g,printDecoratorsBeforeExport:c,hasDecoratorsBeforeExport:_}}}),nr=te({"src/language-js/print/class.js"(e,r){"use strict";ne();var{isNonEmptyArray:t,createGroupIdMapper:s}=Ue(),{printComments:a,printDanglingComments:n}=et(),{builders:{join:u,line:i,hardline:l,softline:p,group:y,indent:h,ifBreak:g}}=qe(),{hasComment:c,CommentCheckFlags:f}=Ke(),{getTypeParametersGroupId:F}=jr(),{printMethod:_}=qr(),{printOptionalToken:w,printTypeAnnotation:E,printDefiniteToken:N}=ct(),{printPropertyKey:x}=rr(),{printAssignment:I}=tr(),{printClassMemberDecorators:P}=nu();function $(b,B,k){let M=b.getValue(),R=[];M.declare&&R.push("declare "),M.abstract&&R.push("abstract "),R.push("class");let q=M.id&&c(M.id,f.Trailing)||M.typeParameters&&c(M.typeParameters,f.Trailing)||M.superClass&&c(M.superClass)||t(M.extends)||t(M.mixins)||t(M.implements),J=[],L=[];if(M.id&&J.push(" ",k("id")),J.push(k("typeParameters")),M.superClass){let Q=[d(b,B,k),k("superTypeParameters")],V=b.call(j=>["extends ",a(j,Q,B)],"superClass");q?L.push(i,y(V)):L.push(" ",V)}else L.push(o(b,B,k,"extends"));if(L.push(o(b,B,k,"mixins"),o(b,B,k,"implements")),q){let Q;C(M)?Q=[...J,h(L)]:Q=h([...J,L]),R.push(y(Q,{id:D(M)}))}else R.push(...J,...L);return R.push(" ",k("body")),R}var D=s("heritageGroup");function T(b){return g(l,"",{groupId:D(b)})}function m(b){return["superClass","extends","mixins","implements"].filter(B=>Boolean(b[B])).length>1}function C(b){return b.typeParameters&&!c(b.typeParameters,f.Trailing|f.Line)&&!m(b)}function o(b,B,k,M){let R=b.getValue();if(!t(R[M]))return"";let q=n(b,B,!0,J=>{let{marker:L}=J;return L===M});return[C(R)?g(" ",i,{groupId:F(R.typeParameters)}):i,q,q&&l,M,y(h([i,u([",",i],b.map(k,M))]))]}function d(b,B,k){let M=k("superClass");return b.getParentNode().type==="AssignmentExpression"?y(g(["(",h([p,M]),p,")"],M)):M}function v(b,B,k){let M=b.getValue(),R=[];return t(M.decorators)&&R.push(P(b,B,k)),M.accessibility&&R.push(M.accessibility+" "),M.readonly&&R.push("readonly "),M.declare&&R.push("declare "),M.static&&R.push("static "),(M.type==="TSAbstractMethodDefinition"||M.abstract)&&R.push("abstract "),M.override&&R.push("override "),R.push(_(b,B,k)),R}function S(b,B,k){let M=b.getValue(),R=[],q=B.semi?";":"";return t(M.decorators)&&R.push(P(b,B,k)),M.accessibility&&R.push(M.accessibility+" "),M.declare&&R.push("declare "),M.static&&R.push("static "),(M.type==="TSAbstractPropertyDefinition"||M.type==="TSAbstractAccessorProperty"||M.abstract)&&R.push("abstract "),M.override&&R.push("override "),M.readonly&&R.push("readonly "),M.variance&&R.push(k("variance")),(M.type==="ClassAccessorProperty"||M.type==="AccessorProperty"||M.type==="TSAbstractAccessorProperty")&&R.push("accessor "),R.push(x(b,B,k),w(b),N(b),E(b,B,k)),[I(b,B,k,R," =","value"),q]}r.exports={printClass:$,printClassMethod:v,printClassProperty:S,printHardlineAfterHeritage:T}}}),bo=te({"src/language-js/print/interface.js"(e,r){"use strict";ne();var{isNonEmptyArray:t}=Ue(),{builders:{join:s,line:a,group:n,indent:u,ifBreak:i}}=qe(),{hasComment:l,identity:p,CommentCheckFlags:y}=Ke(),{getTypeParametersGroupId:h}=jr(),{printTypeScriptModifiers:g}=ct();function c(f,F,_){let w=f.getValue(),E=[];w.declare&&E.push("declare "),w.type==="TSInterfaceDeclaration"&&E.push(w.abstract?"abstract ":"",g(f,F,_)),E.push("interface");let N=[],x=[];w.type!=="InterfaceTypeAnnotation"&&N.push(" ",_("id"),_("typeParameters"));let I=w.typeParameters&&!l(w.typeParameters,y.Trailing|y.Line);return t(w.extends)&&x.push(I?i(" ",a,{groupId:h(w.typeParameters)}):a,"extends ",(w.extends.length===1?p:u)(s([",",a],f.map(_,"extends")))),w.id&&l(w.id,y.Trailing)||t(w.extends)?I?E.push(n([...N,u(x)])):E.push(n(u([...N,...x]))):E.push(...N,...x),E.push(" ",_("body")),n(E)}r.exports={printInterface:c}}}),To=te({"src/language-js/print/module.js"(e,r){"use strict";ne();var{isNonEmptyArray:t}=Ue(),{builders:{softline:s,group:a,indent:n,join:u,line:i,ifBreak:l,hardline:p}}=qe(),{printDanglingComments:y}=et(),{hasComment:h,CommentCheckFlags:g,shouldPrintComma:c,needsHardlineAfterDanglingComment:f,isStringLiteral:F,rawText:_}=Ke(),{locStart:w,hasSameLoc:E}=ut(),{hasDecoratorsBeforeExport:N,printDecoratorsBeforeExport:x}=nu();function I(S,b,B){let k=S.getValue(),M=b.semi?";":"",R=[],{importKind:q}=k;return R.push("import"),q&&q!=="value"&&R.push(" ",q),R.push(m(S,b,B),T(S,b,B),o(S,b,B),M),R}function P(S,b,B){let k=S.getValue(),M=[];N(k)&&M.push(x(S,b,B));let{type:R,exportKind:q,declaration:J}=k;return M.push("export"),(k.default||R==="ExportDefaultDeclaration")&&M.push(" default"),h(k,g.Dangling)&&(M.push(" ",y(S,b,!0)),f(k)&&M.push(p)),J?M.push(" ",B("declaration")):M.push(q==="type"?" type":"",m(S,b,B),T(S,b,B),o(S,b,B)),D(k,b)&&M.push(";"),M}function $(S,b,B){let k=S.getValue(),M=b.semi?";":"",R=[],{exportKind:q,exported:J}=k;return R.push("export"),q==="type"&&R.push(" type"),R.push(" *"),J&&R.push(" as ",B("exported")),R.push(T(S,b,B),o(S,b,B),M),R}function D(S,b){if(!b.semi)return!1;let{type:B,declaration:k}=S,M=S.default||B==="ExportDefaultDeclaration";if(!k)return!0;let{type:R}=k;return!!(M&&R!=="ClassDeclaration"&&R!=="FunctionDeclaration"&&R!=="TSInterfaceDeclaration"&&R!=="DeclareClass"&&R!=="DeclareFunction"&&R!=="TSDeclareFunction"&&R!=="EnumDeclaration")}function T(S,b,B){let k=S.getValue();if(!k.source)return"";let M=[];return C(k,b)||M.push(" from"),M.push(" ",B("source")),M}function m(S,b,B){let k=S.getValue();if(C(k,b))return"";let M=[" "];if(t(k.specifiers)){let R=[],q=[];S.each(()=>{let J=S.getValue().type;if(J==="ExportNamespaceSpecifier"||J==="ExportDefaultSpecifier"||J==="ImportNamespaceSpecifier"||J==="ImportDefaultSpecifier")R.push(B());else if(J==="ExportSpecifier"||J==="ImportSpecifier")q.push(B());else throw new Error(`Unknown specifier type ${JSON.stringify(J)}`)},"specifiers"),M.push(u(", ",R)),q.length>0&&(R.length>0&&M.push(", "),q.length>1||R.length>0||k.specifiers.some(L=>h(L))?M.push(a(["{",n([b.bracketSpacing?i:s,u([",",i],q)]),l(c(b)?",":""),b.bracketSpacing?i:s,"}"])):M.push(["{",b.bracketSpacing?" ":"",...q,b.bracketSpacing?" ":"","}"]))}else M.push("{}");return M}function C(S,b){let{type:B,importKind:k,source:M,specifiers:R}=S;return B!=="ImportDeclaration"||t(R)||k==="type"?!1:!/{\s*}/.test(b.originalText.slice(w(S),w(M)))}function o(S,b,B){let k=S.getNode();return t(k.assertions)?[" assert {",b.bracketSpacing?" ":"",u(", ",S.map(B,"assertions")),b.bracketSpacing?" ":"","}"]:""}function d(S,b,B){let k=S.getNode(),{type:M}=k,R=[],q=M==="ImportSpecifier"?k.importKind:k.exportKind;q&&q!=="value"&&R.push(q," ");let J=M.startsWith("Import"),L=J?"imported":"local",Q=J?"local":"exported",V=k[L],j=k[Q],Y="",ie="";return M==="ExportNamespaceSpecifier"||M==="ImportNamespaceSpecifier"?Y="*":V&&(Y=B(L)),j&&!v(k)&&(ie=B(Q)),R.push(Y,Y&&ie?" as ":"",ie),R}function v(S){if(S.type!=="ImportSpecifier"&&S.type!=="ExportSpecifier")return!1;let{local:b,[S.type==="ImportSpecifier"?"imported":"exported"]:B}=S;if(b.type!==B.type||!E(b,B))return!1;if(F(b))return b.value===B.value&&_(b)===_(B);switch(b.type){case"Identifier":return b.name===B.name;default:return!1}}r.exports={printImportDeclaration:I,printExportDeclaration:P,printExportAllDeclaration:$,printModuleSpecifier:d}}}),uu=te({"src/language-js/print/object.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{builders:{line:s,softline:a,group:n,indent:u,ifBreak:i,hardline:l}}=qe(),{getLast:p,hasNewlineInRange:y,hasNewline:h,isNonEmptyArray:g}=Ue(),{shouldPrintComma:c,hasComment:f,getComments:F,CommentCheckFlags:_,isNextLineEmpty:w}=Ke(),{locStart:E,locEnd:N}=ut(),{printOptionalToken:x,printTypeAnnotation:I}=ct(),{shouldHugFunctionParameters:P}=Lr(),{shouldHugType:$}=Or(),{printHardlineAfterHeritage:D}=nr();function T(m,C,o){let d=C.semi?";":"",v=m.getValue(),S;v.type==="TSTypeLiteral"?S="members":v.type==="TSInterfaceBody"?S="body":S="properties";let b=v.type==="ObjectTypeAnnotation",B=[S];b&&B.push("indexers","callProperties","internalSlots");let k=B.map(W=>v[W][0]).sort((W,K)=>E(W)-E(K))[0],M=m.getParentNode(0),R=b&&M&&(M.type==="InterfaceDeclaration"||M.type==="DeclareInterface"||M.type==="DeclareClass")&&m.getName()==="body",q=v.type==="TSInterfaceBody"||R||v.type==="ObjectPattern"&&M.type!=="FunctionDeclaration"&&M.type!=="FunctionExpression"&&M.type!=="ArrowFunctionExpression"&&M.type!=="ObjectMethod"&&M.type!=="ClassMethod"&&M.type!=="ClassPrivateMethod"&&M.type!=="AssignmentPattern"&&M.type!=="CatchClause"&&v.properties.some(W=>W.value&&(W.value.type==="ObjectPattern"||W.value.type==="ArrayPattern"))||v.type!=="ObjectPattern"&&k&&y(C.originalText,E(v),E(k)),J=R?";":v.type==="TSInterfaceBody"||v.type==="TSTypeLiteral"?i(d,";"):",",L=v.type==="RecordExpression"?"#{":v.exact?"{|":"{",Q=v.exact?"|}":"}",V=[];for(let W of B)m.each(K=>{let de=K.getValue();V.push({node:de,printed:o(),loc:E(de)})},W);B.length>1&&V.sort((W,K)=>W.loc-K.loc);let j=[],Y=V.map(W=>{let K=[...j,n(W.printed)];return j=[J,s],(W.node.type==="TSPropertySignature"||W.node.type==="TSMethodSignature"||W.node.type==="TSConstructSignatureDeclaration")&&f(W.node,_.PrettierIgnore)&&j.shift(),w(W.node,C)&&j.push(l),K});if(v.inexact){let W;if(f(v,_.Dangling)){let K=f(v,_.Line);W=[t(m,C,!0),K||h(C.originalText,N(p(F(v))))?l:s,"..."]}else W=["..."];Y.push([...j,...W])}let ie=p(v[S]),ee=!(v.inexact||ie&&ie.type==="RestElement"||ie&&(ie.type==="TSPropertySignature"||ie.type==="TSCallSignatureDeclaration"||ie.type==="TSMethodSignature"||ie.type==="TSConstructSignatureDeclaration")&&f(ie,_.PrettierIgnore)),ce;if(Y.length===0){if(!f(v,_.Dangling))return[L,Q,I(m,C,o)];ce=n([L,t(m,C),a,Q,x(m),I(m,C,o)])}else ce=[R&&g(v.properties)?D(M):"",L,u([C.bracketSpacing?s:a,...Y]),i(ee&&(J!==","||c(C))?J:""),C.bracketSpacing?s:a,Q,x(m),I(m,C,o)];return m.match(W=>W.type==="ObjectPattern"&&!W.decorators,(W,K,de)=>P(W)&&(K==="params"||K==="parameters"||K==="this"||K==="rest")&&de===0)||m.match($,(W,K)=>K==="typeAnnotation",(W,K)=>K==="typeAnnotation",(W,K,de)=>P(W)&&(K==="params"||K==="parameters"||K==="this"||K==="rest")&&de===0)||!q&&m.match(W=>W.type==="ObjectPattern",W=>W.type==="AssignmentExpression"||W.type==="VariableDeclarator")?ce:n(ce,{shouldBreak:q})}r.exports={printObject:T}}}),dd=te({"src/language-js/print/flow.js"(e,r){"use strict";ne();var t=Zt(),{printDanglingComments:s}=et(),{printString:a,printNumber:n}=Ue(),{builders:{hardline:u,softline:i,group:l,indent:p}}=qe(),{getParentExportDeclaration:y,isFunctionNotation:h,isGetterOrSetter:g,rawText:c,shouldPrintComma:f}=Ke(),{locStart:F,locEnd:_}=ut(),{replaceTextEndOfLine:w}=Yt(),{printClass:E}=nr(),{printOpaqueType:N,printTypeAlias:x,printIntersectionType:I,printUnionType:P,printFunctionType:$,printTupleType:D,printIndexedAccessType:T}=Or(),{printInterface:m}=bo(),{printTypeParameter:C,printTypeParameters:o}=jr(),{printExportDeclaration:d,printExportAllDeclaration:v}=To(),{printArrayItems:S}=er(),{printObject:b}=uu(),{printPropertyKey:B}=rr(),{printOptionalToken:k,printTypeAnnotation:M,printRestSpread:R}=ct();function q(L,Q,V){let j=L.getValue(),Y=Q.semi?";":"",ie=[];switch(j.type){case"DeclareClass":return J(L,E(L,Q,V));case"DeclareFunction":return J(L,["function ",V("id"),j.predicate?" ":"",V("predicate"),Y]);case"DeclareModule":return J(L,["module ",V("id")," ",V("body")]);case"DeclareModuleExports":return J(L,["module.exports",": ",V("typeAnnotation"),Y]);case"DeclareVariable":return J(L,["var ",V("id"),Y]);case"DeclareOpaqueType":return J(L,N(L,Q,V));case"DeclareInterface":return J(L,m(L,Q,V));case"DeclareTypeAlias":return J(L,x(L,Q,V));case"DeclareExportDeclaration":return J(L,d(L,Q,V));case"DeclareExportAllDeclaration":return J(L,v(L,Q,V));case"OpaqueType":return N(L,Q,V);case"TypeAlias":return x(L,Q,V);case"IntersectionTypeAnnotation":return I(L,Q,V);case"UnionTypeAnnotation":return P(L,Q,V);case"FunctionTypeAnnotation":return $(L,Q,V);case"TupleTypeAnnotation":return D(L,Q,V);case"GenericTypeAnnotation":return[V("id"),o(L,Q,V,"typeParameters")];case"IndexedAccessType":case"OptionalIndexedAccessType":return T(L,Q,V);case"TypeAnnotation":return V("typeAnnotation");case"TypeParameter":return C(L,Q,V);case"TypeofTypeAnnotation":return["typeof ",V("argument")];case"ExistsTypeAnnotation":return"*";case"EmptyTypeAnnotation":return"empty";case"MixedTypeAnnotation":return"mixed";case"ArrayTypeAnnotation":return[V("elementType"),"[]"];case"BooleanLiteralTypeAnnotation":return String(j.value);case"EnumDeclaration":return["enum ",V("id")," ",V("body")];case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":{if(j.type==="EnumSymbolBody"||j.explicitType){let ee=null;switch(j.type){case"EnumBooleanBody":ee="boolean";break;case"EnumNumberBody":ee="number";break;case"EnumStringBody":ee="string";break;case"EnumSymbolBody":ee="symbol";break}ie.push("of ",ee," ")}if(j.members.length===0&&!j.hasUnknownMembers)ie.push(l(["{",s(L,Q),i,"}"]));else{let ee=j.members.length>0?[u,S(L,Q,"members",V),j.hasUnknownMembers||f(Q)?",":""]:[];ie.push(l(["{",p([...ee,...j.hasUnknownMembers?[u,"..."]:[]]),s(L,Q,!0),u,"}"]))}return ie}case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":return[V("id")," = ",typeof j.init=="object"?V("init"):String(j.init)];case"EnumDefaultedMember":return V("id");case"FunctionTypeParam":{let ee=j.name?V("name"):L.getParentNode().this===j?"this":"";return[ee,k(L),ee?": ":"",V("typeAnnotation")]}case"InterfaceDeclaration":case"InterfaceTypeAnnotation":return m(L,Q,V);case"ClassImplements":case"InterfaceExtends":return[V("id"),V("typeParameters")];case"NullableTypeAnnotation":return["?",V("typeAnnotation")];case"Variance":{let{kind:ee}=j;return t.ok(ee==="plus"||ee==="minus"),ee==="plus"?"+":"-"}case"ObjectTypeCallProperty":return j.static&&ie.push("static "),ie.push(V("value")),ie;case"ObjectTypeIndexer":return[j.static?"static ":"",j.variance?V("variance"):"","[",V("id"),j.id?": ":"",V("key"),"]: ",V("value")];case"ObjectTypeProperty":{let ee="";return j.proto?ee="proto ":j.static&&(ee="static "),[ee,g(j)?j.kind+" ":"",j.variance?V("variance"):"",B(L,Q,V),k(L),h(j)?"":": ",V("value")]}case"ObjectTypeAnnotation":return b(L,Q,V);case"ObjectTypeInternalSlot":return[j.static?"static ":"","[[",V("id"),"]]",k(L),j.method?"":": ",V("value")];case"ObjectTypeSpreadProperty":return R(L,Q,V);case"QualifiedTypeofIdentifier":case"QualifiedTypeIdentifier":return[V("qualification"),".",V("id")];case"StringLiteralTypeAnnotation":return w(a(c(j),Q));case"NumberLiteralTypeAnnotation":t.strictEqual(typeof j.value,"number");case"BigIntLiteralTypeAnnotation":return j.extra?n(j.extra.raw):n(j.raw);case"TypeCastExpression":return["(",V("expression"),M(L,Q,V),")"];case"TypeParameterDeclaration":case"TypeParameterInstantiation":{let ee=o(L,Q,V,"params");if(Q.parser==="flow"){let ce=F(j),W=_(j),K=Q.originalText.lastIndexOf("/*",ce),de=Q.originalText.indexOf("*/",W);if(K!==-1&&de!==-1){let ue=Q.originalText.slice(K+2,de).trim();if(ue.startsWith("::")&&!ue.includes("/*")&&!ue.includes("*/"))return["/*:: ",ee," */"]}}return ee}case"InferredPredicate":return"%checks";case"DeclaredPredicate":return["%checks(",V("value"),")"];case"AnyTypeAnnotation":return"any";case"BooleanTypeAnnotation":return"boolean";case"BigIntTypeAnnotation":return"bigint";case"NullLiteralTypeAnnotation":return"null";case"NumberTypeAnnotation":return"number";case"SymbolTypeAnnotation":return"symbol";case"StringTypeAnnotation":return"string";case"VoidTypeAnnotation":return"void";case"ThisTypeAnnotation":return"this";case"Node":case"Printable":case"SourceLocation":case"Position":case"Statement":case"Function":case"Pattern":case"Expression":case"Declaration":case"Specifier":case"NamedSpecifier":case"Comment":case"MemberTypeAnnotation":case"Type":throw new Error("unprintable type: "+JSON.stringify(j.type))}}function J(L,Q){let V=y(L);return V?(t.strictEqual(V.type,"DeclareExportDeclaration"),Q):["declare ",Q]}r.exports={printFlow:q}}}),gd=te({"src/language-js/utils/is-ts-keyword-type.js"(e,r){"use strict";ne();function t(s){let{type:a}=s;return a.startsWith("TS")&&a.endsWith("Keyword")}r.exports=t}}),Bo=te({"src/language-js/print/ternary.js"(e,r){"use strict";ne();var{hasNewlineInRange:t}=Ue(),{isJsxNode:s,getComments:a,isCallExpression:n,isMemberExpression:u,isTSTypeExpression:i}=Ke(),{locStart:l,locEnd:p}=ut(),y=Pt(),{builders:{line:h,softline:g,group:c,indent:f,align:F,ifBreak:_,dedent:w,breakParent:E}}=qe();function N(D){let T=[D];for(let m=0;mR[ue]===C),J=R.type===C.type&&!q,L,Q,V=0;do Q=L||C,L=D.getParentNode(V),V++;while(L&&L.type===C.type&&S.every(ue=>L[ue]!==Q));let j=L||R,Y=Q;if(o&&(s(C[S[0]])||s(b)||s(B)||N(Y))){M=!0,J=!0;let ue=z=>[_("("),f([g,z]),g,_(")")],Fe=z=>z.type==="NullLiteral"||z.type==="Literal"&&z.value===null||z.type==="Identifier"&&z.name==="undefined";k.push(" ? ",Fe(b)?m(d):ue(m(d))," : ",B.type===C.type||Fe(B)?m(v):ue(m(v)))}else{let ue=[h,"? ",b.type===C.type?_("","("):"",F(2,m(d)),b.type===C.type?_("",")"):"",h,": ",B.type===C.type?m(v):F(2,m(v))];k.push(R.type!==C.type||R[v]===C||q?ue:T.useTabs?w(f(ue)):F(Math.max(0,T.tabWidth-2),ue))}let ee=[...S.map(ue=>a(C[ue])),a(b),a(B)].flat().some(ue=>y(ue)&&t(T.originalText,l(ue),p(ue))),ce=ue=>R===j?c(ue,{shouldBreak:ee}):ee?[ue,E]:ue,W=!M&&(u(R)||R.type==="NGPipeExpression"&&R.left===C)&&!R.computed,K=P(D),de=ce([x(D,T,m),J?k:f(k),o&&W&&!K?g:""]);return q||K?c([f([g,de]),g]):de}r.exports={printTernary:$}}}),No=te({"src/language-js/print/statement.js"(e,r){"use strict";ne();var{builders:{hardline:t}}=qe(),s=qt(),{getLeftSidePathName:a,hasNakedLeftSide:n,isJsxNode:u,isTheOnlyJsxElementInMarkdown:i,hasComment:l,CommentCheckFlags:p,isNextLineEmpty:y}=Ke(),{shouldPrintParamsWithoutParens:h}=qr();function g(x,I,P,$){let D=x.getValue(),T=[],m=D.type==="ClassBody",C=c(D[$]);return x.each((o,d,v)=>{let S=o.getValue();if(S.type==="EmptyStatement")return;let b=P();!I.semi&&!m&&!i(I,o)&&f(o,I)?l(S,p.Leading)?T.push(P([],{needsSemi:!0})):T.push(";",b):T.push(b),!I.semi&&m&&E(S)&&N(S,v[d+1])&&T.push(";"),S!==C&&(T.push(t),y(S,I)&&T.push(t))},$),T}function c(x){for(let I=x.length-1;I>=0;I--){let P=x[I];if(P.type!=="EmptyStatement")return P}}function f(x,I){return x.getNode().type!=="ExpressionStatement"?!1:x.call($=>F($,I),"expression")}function F(x,I){let P=x.getValue();switch(P.type){case"ParenthesizedExpression":case"TypeCastExpression":case"ArrayExpression":case"ArrayPattern":case"TemplateLiteral":case"TemplateElement":case"RegExpLiteral":return!0;case"ArrowFunctionExpression":{if(!h(x,I))return!0;break}case"UnaryExpression":{let{prefix:$,operator:D}=P;if($&&(D==="+"||D==="-"))return!0;break}case"BindExpression":{if(!P.object)return!0;break}case"Literal":{if(P.regex)return!0;break}default:if(u(P))return!0}return s(x,I)?!0:n(P)?x.call($=>F($,I),...a(x,P)):!1}function _(x,I,P){return g(x,I,P,"body")}function w(x,I,P){return g(x,I,P,"consequent")}var E=x=>{let{type:I}=x;return I==="ClassProperty"||I==="PropertyDefinition"||I==="ClassPrivateProperty"||I==="ClassAccessorProperty"||I==="AccessorProperty"||I==="TSAbstractPropertyDefinition"||I==="TSAbstractAccessorProperty"};function N(x,I){let{type:P,name:$}=x.key;if(!x.computed&&P==="Identifier"&&($==="static"||$==="get"||$==="set"||$==="accessor")&&!x.value&&!x.typeAnnotation)return!0;if(!I||I.static||I.accessibility)return!1;if(!I.computed){let D=I.key&&I.key.name;if(D==="in"||D==="instanceof")return!0}if(E(I)&&I.variance&&!I.static&&!I.declare)return!0;switch(I.type){case"ClassProperty":case"PropertyDefinition":case"TSAbstractPropertyDefinition":return I.computed;case"MethodDefinition":case"TSAbstractMethodDefinition":case"ClassMethod":case"ClassPrivateMethod":{if((I.value?I.value.async:I.async)||I.kind==="get"||I.kind==="set")return!1;let T=I.value?I.value.generator:I.generator;return!!(I.computed||T)}case"TSIndexSignature":return!0}return!1}r.exports={printBody:_,printSwitchCaseConsequent:w}}}),wo=te({"src/language-js/print/block.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{isNonEmptyArray:s}=Ue(),{builders:{hardline:a,indent:n}}=qe(),{hasComment:u,CommentCheckFlags:i,isNextLineEmpty:l}=Ke(),{printHardlineAfterHeritage:p}=nr(),{printBody:y}=No();function h(c,f,F){let _=c.getValue(),w=[];if(_.type==="StaticBlock"&&w.push("static "),_.type==="ClassBody"&&s(_.body)){let N=c.getParentNode();w.push(p(N))}w.push("{");let E=g(c,f,F);if(E)w.push(n([a,E]),a);else{let N=c.getParentNode(),x=c.getParentNode(1);N.type==="ArrowFunctionExpression"||N.type==="FunctionExpression"||N.type==="FunctionDeclaration"||N.type==="ObjectMethod"||N.type==="ClassMethod"||N.type==="ClassPrivateMethod"||N.type==="ForStatement"||N.type==="WhileStatement"||N.type==="DoWhileStatement"||N.type==="DoExpression"||N.type==="CatchClause"&&!x.finalizer||N.type==="TSModuleDeclaration"||N.type==="TSDeclareFunction"||_.type==="StaticBlock"||_.type==="ClassBody"||w.push(a)}return w.push("}"),w}function g(c,f,F){let _=c.getValue(),w=s(_.directives),E=_.body.some(I=>I.type!=="EmptyStatement"),N=u(_,i.Dangling);if(!w&&!E&&!N)return"";let x=[];if(w&&c.each((I,P,$)=>{x.push(F()),(P<$.length-1||E||N)&&(x.push(a),l(I.getValue(),f)&&x.push(a))},"directives"),E&&x.push(y(c,f,F)),N&&x.push(t(c,f,!0)),_.type==="Program"){let I=c.getParentNode();(!I||I.type!=="ModuleExpression")&&x.push(a)}return x}r.exports={printBlock:h,printBlockBody:g}}}),yd=te({"src/language-js/print/typescript.js"(e,r){"use strict";ne();var{printDanglingComments:t}=et(),{hasNewlineInRange:s}=Ue(),{builders:{join:a,line:n,hardline:u,softline:i,group:l,indent:p,conditionalGroup:y,ifBreak:h}}=qe(),{isStringLiteral:g,getTypeScriptMappedTypeModifier:c,shouldPrintComma:f,isCallExpression:F,isMemberExpression:_}=Ke(),w=gd(),{locStart:E,locEnd:N}=ut(),{printOptionalToken:x,printTypeScriptModifiers:I}=ct(),{printTernary:P}=Bo(),{printFunctionParameters:$,shouldGroupFunctionParameters:D}=Lr(),{printTemplateLiteral:T}=jt(),{printArrayItems:m}=er(),{printObject:C}=uu(),{printClassProperty:o,printClassMethod:d}=nr(),{printTypeParameter:v,printTypeParameters:S}=jr(),{printPropertyKey:b}=rr(),{printFunction:B,printMethodInternal:k}=qr(),{printInterface:M}=bo(),{printBlock:R}=wo(),{printTypeAlias:q,printIntersectionType:J,printUnionType:L,printFunctionType:Q,printTupleType:V,printIndexedAccessType:j,printJSDocType:Y}=Or();function ie(ee,ce,W){let K=ee.getValue();if(!K.type.startsWith("TS"))return;if(w(K))return K.type.slice(2,-7).toLowerCase();let de=ce.semi?";":"",ue=[];switch(K.type){case"TSThisType":return"this";case"TSTypeAssertion":{let Fe=!(K.expression.type==="ArrayExpression"||K.expression.type==="ObjectExpression"),z=l(["<",p([i,W("typeAnnotation")]),i,">"]),U=[h("("),p([i,W("expression")]),i,h(")")];return Fe?y([[z,W("expression")],[z,l(U,{shouldBreak:!0})],[z,W("expression")]]):l([z,W("expression")])}case"TSDeclareFunction":return B(ee,W,ce);case"TSExportAssignment":return["export = ",W("expression"),de];case"TSModuleBlock":return R(ee,ce,W);case"TSInterfaceBody":case"TSTypeLiteral":return C(ee,ce,W);case"TSTypeAliasDeclaration":return q(ee,ce,W);case"TSQualifiedName":return a(".",[W("left"),W("right")]);case"TSAbstractMethodDefinition":case"TSDeclareMethod":return d(ee,ce,W);case"TSAbstractAccessorProperty":case"TSAbstractPropertyDefinition":return o(ee,ce,W);case"TSInterfaceHeritage":case"TSExpressionWithTypeArguments":return ue.push(W("expression")),K.typeParameters&&ue.push(W("typeParameters")),ue;case"TSTemplateLiteralType":return T(ee,W,ce);case"TSNamedTupleMember":return[W("label"),K.optional?"?":"",": ",W("elementType")];case"TSRestType":return["...",W("typeAnnotation")];case"TSOptionalType":return[W("typeAnnotation"),"?"];case"TSInterfaceDeclaration":return M(ee,ce,W);case"TSClassImplements":return[W("expression"),W("typeParameters")];case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return S(ee,ce,W,"params");case"TSTypeParameter":return v(ee,ce,W);case"TSSatisfiesExpression":case"TSAsExpression":{let Fe=K.type==="TSAsExpression"?"as":"satisfies";ue.push(W("expression"),` ${Fe} `,W("typeAnnotation"));let z=ee.getParentNode();return F(z)&&z.callee===K||_(z)&&z.object===K?l([p([i,...ue]),i]):ue}case"TSArrayType":return[W("elementType"),"[]"];case"TSPropertySignature":return K.readonly&&ue.push("readonly "),ue.push(b(ee,ce,W),x(ee)),K.typeAnnotation&&ue.push(": ",W("typeAnnotation")),K.initializer&&ue.push(" = ",W("initializer")),ue;case"TSParameterProperty":return K.accessibility&&ue.push(K.accessibility+" "),K.export&&ue.push("export "),K.static&&ue.push("static "),K.override&&ue.push("override "),K.readonly&&ue.push("readonly "),ue.push(W("parameter")),ue;case"TSTypeQuery":return["typeof ",W("exprName"),W("typeParameters")];case"TSIndexSignature":{let Fe=ee.getParentNode(),z=K.parameters.length>1?h(f(ce)?",":""):"",U=l([p([i,a([", ",i],ee.map(W,"parameters"))]),z,i]);return[K.export?"export ":"",K.accessibility?[K.accessibility," "]:"",K.static?"static ":"",K.readonly?"readonly ":"",K.declare?"declare ":"","[",K.parameters?U:"",K.typeAnnotation?"]: ":"]",K.typeAnnotation?W("typeAnnotation"):"",Fe.type==="ClassBody"?de:""]}case"TSTypePredicate":return[K.asserts?"asserts ":"",W("parameterName"),K.typeAnnotation?[" is ",W("typeAnnotation")]:""];case"TSNonNullExpression":return[W("expression"),"!"];case"TSImportType":return[K.isTypeOf?"typeof ":"","import(",W(K.parameter?"parameter":"argument"),")",K.qualifier?[".",W("qualifier")]:"",S(ee,ce,W,"typeParameters")];case"TSLiteralType":return W("literal");case"TSIndexedAccessType":return j(ee,ce,W);case"TSConstructSignatureDeclaration":case"TSCallSignatureDeclaration":case"TSConstructorType":{if(K.type==="TSConstructorType"&&K.abstract&&ue.push("abstract "),K.type!=="TSCallSignatureDeclaration"&&ue.push("new "),ue.push(l($(ee,W,ce,!1,!0))),K.returnType||K.typeAnnotation){let Fe=K.type==="TSConstructorType";ue.push(Fe?" => ":": ",W("returnType"),W("typeAnnotation"))}return ue}case"TSTypeOperator":return[K.operator," ",W("typeAnnotation")];case"TSMappedType":{let Fe=s(ce.originalText,E(K),N(K));return l(["{",p([ce.bracketSpacing?n:i,W("typeParameter"),K.optional?c(K.optional,"?"):"",K.typeAnnotation?": ":"",W("typeAnnotation"),h(de)]),t(ee,ce,!0),ce.bracketSpacing?n:i,"}"],{shouldBreak:Fe})}case"TSMethodSignature":{let Fe=K.kind&&K.kind!=="method"?`${K.kind} `:"";ue.push(K.accessibility?[K.accessibility," "]:"",Fe,K.export?"export ":"",K.static?"static ":"",K.readonly?"readonly ":"",K.abstract?"abstract ":"",K.declare?"declare ":"",K.computed?"[":"",W("key"),K.computed?"]":"",x(ee));let z=$(ee,W,ce,!1,!0),U=K.returnType?"returnType":"typeAnnotation",Z=K[U],se=Z?W(U):"",fe=D(K,se);return ue.push(fe?l(z):z),Z&&ue.push(": ",l(se)),l(ue)}case"TSNamespaceExportDeclaration":return ue.push("export as namespace ",W("id")),ce.semi&&ue.push(";"),l(ue);case"TSEnumDeclaration":return K.declare&&ue.push("declare "),K.modifiers&&ue.push(I(ee,ce,W)),K.const&&ue.push("const "),ue.push("enum ",W("id")," "),K.members.length===0?ue.push(l(["{",t(ee,ce),i,"}"])):ue.push(l(["{",p([u,m(ee,ce,"members",W),f(ce,"es5")?",":""]),t(ee,ce,!0),u,"}"])),ue;case"TSEnumMember":return K.computed?ue.push("[",W("id"),"]"):ue.push(W("id")),K.initializer&&ue.push(" = ",W("initializer")),ue;case"TSImportEqualsDeclaration":return K.isExport&&ue.push("export "),ue.push("import "),K.importKind&&K.importKind!=="value"&&ue.push(K.importKind," "),ue.push(W("id")," = ",W("moduleReference")),ce.semi&&ue.push(";"),l(ue);case"TSExternalModuleReference":return["require(",W("expression"),")"];case"TSModuleDeclaration":{let Fe=ee.getParentNode(),z=g(K.id),U=Fe.type==="TSModuleDeclaration",Z=K.body&&K.body.type==="TSModuleDeclaration";if(U)ue.push(".");else{K.declare&&ue.push("declare "),ue.push(I(ee,ce,W));let se=ce.originalText.slice(E(K),E(K.id));K.id.type==="Identifier"&&K.id.name==="global"&&!/namespace|module/.test(se)||ue.push(z||/(?:^|\s)module(?:\s|$)/.test(se)?"module ":"namespace ")}return ue.push(W("id")),Z?ue.push(W("body")):K.body?ue.push(" ",l(W("body"))):ue.push(de),ue}case"TSConditionalType":return P(ee,ce,W);case"TSInferType":return["infer"," ",W("typeParameter")];case"TSIntersectionType":return J(ee,ce,W);case"TSUnionType":return L(ee,ce,W);case"TSFunctionType":return Q(ee,ce,W);case"TSTupleType":return V(ee,ce,W);case"TSTypeReference":return[W("typeName"),S(ee,ce,W,"typeParameters")];case"TSTypeAnnotation":return W("typeAnnotation");case"TSEmptyBodyFunctionExpression":return k(ee,ce,W);case"TSJSDocAllType":return"*";case"TSJSDocUnknownType":return"?";case"TSJSDocNullableType":return Y(ee,W,"?");case"TSJSDocNonNullableType":return Y(ee,W,"!");case"TSInstantiationExpression":return[W("expression"),W("typeParameters")];default:throw new Error(`Unknown TypeScript node type: ${JSON.stringify(K.type)}.`)}}r.exports={printTypescript:ie}}}),hd=te({"src/language-js/print/comment.js"(e,r){"use strict";ne();var{hasNewline:t}=Ue(),{builders:{join:s,hardline:a},utils:{replaceTextEndOfLine:n}}=qe(),{isLineComment:u}=Ke(),{locStart:i,locEnd:l}=ut(),p=Pt();function y(c,f){let F=c.getValue();if(u(F))return f.originalText.slice(i(F),l(F)).trimEnd();if(p(F)){if(h(F)){let E=g(F);return F.trailing&&!t(f.originalText,i(F),{backwards:!0})?[a,E]:E}let _=l(F),w=f.originalText.slice(_-3,_)==="*-/";return["/*",n(F.value),w?"*-/":"*/"]}throw new Error("Not a comment: "+JSON.stringify(F))}function h(c){let f=`*${c.value}*`.split(` +`);return f.length>1&&f.every(F=>F.trim()[0]==="*")}function g(c){let f=c.value.split(` +`);return["/*",s(a,f.map((F,_)=>_===0?F.trimEnd():" "+(_{let{marker:Je}=Oe;return Je===C});return[ve("expression"),x(Be,Ce)?"":Ye,Ie?[" ",Ie]:""]}case"ParenthesizedExpression":return!E(be.expression)&&(be.expression.type==="ObjectExpression"||be.expression.type==="ArrayExpression")?["(",ve("expression"),")"]:l(["(",p([i,ve("expression")]),i,")"]);case"AssignmentExpression":return oe(Ce,Be,ve);case"VariableDeclarator":return Pe(Ce,Be,ve);case"BinaryExpression":case"LogicalExpression":return H(Ce,Be,ve);case"AssignmentPattern":return[ve("left")," = ",ve("right")];case"OptionalMemberExpression":case"MemberExpression":return X(Ce,Be,ve);case"MetaProperty":return[ve("meta"),".",ve("property")];case"BindExpression":return be.object&&Se.push(ve("object")),Se.push(l(p([i,L(Ce,Be,ve)]))),Se;case"Identifier":return[be.name,J(Ce),Y(Ce),Q(Ce,Be,ve)];case"V8IntrinsicIdentifier":return["%",be.name];case"SpreadElement":case"SpreadElementPattern":case"SpreadProperty":case"SpreadPropertyPattern":case"RestElement":return j(Ce,Be,ve);case"FunctionDeclaration":case"FunctionExpression":return ge(Ce,ve,Be,ze);case"ArrowFunctionExpression":return he(Ce,Be,ve,ze);case"YieldExpression":return Se.push("yield"),be.delegate&&Se.push("*"),be.argument&&Se.push(" ",ve("argument")),Se;case"AwaitExpression":{if(Se.push("await"),be.argument){Se.push(" ",ve("argument"));let Ie=Ce.getParentNode();if(T(Ie)&&Ie.callee===be||m(Ie)&&Ie.object===be){Se=[p([i,...Se]),i];let Oe=Ce.findAncestor(Je=>Je.type==="AwaitExpression"||Je.type==="BlockStatement");if(!Oe||Oe.type!=="AwaitExpression")return l(Se)}}return Se}case"ExportDefaultDeclaration":case"ExportNamedDeclaration":return ce(Ce,Be,ve);case"ExportAllDeclaration":return W(Ce,Be,ve);case"ImportDeclaration":return ee(Ce,Be,ve);case"ImportSpecifier":case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ExportNamespaceSpecifier":case"ImportDefaultSpecifier":case"ExportDefaultSpecifier":return K(Ce,Be,ve);case"ImportAttribute":return[ve("key"),": ",ve("value")];case"Import":return"import";case"BlockStatement":case"StaticBlock":case"ClassBody":return le(Ce,Be,ve);case"ThrowStatement":return Re(Ce,Be,ve);case"ReturnStatement":return ke(Ce,Be,ve);case"NewExpression":case"ImportExpression":case"OptionalCallExpression":case"CallExpression":return Ne(Ce,Be,ve);case"ObjectExpression":case"ObjectPattern":case"RecordExpression":return z(Ce,Be,ve);case"ObjectProperty":case"Property":return be.method||be.kind==="get"||be.kind==="set"?we(Ce,Be,ve):fe(Ce,Be,ve);case"ObjectMethod":return we(Ce,Be,ve);case"Decorator":return["@",ve("expression")];case"ArrayExpression":case"ArrayPattern":case"TupleExpression":return Fe(Ce,Be,ve);case"SequenceExpression":{let Ie=Ce.getParentNode(0);if(Ie.type==="ExpressionStatement"||Ie.type==="ForStatement"){let Oe=[];return Ce.each((Je,Te)=>{Te===0?Oe.push(ve()):Oe.push(",",p([n,ve()]))},"expressions"),l(Oe)}return l(a([",",n],Ce.map(ve,"expressions")))}case"ThisExpression":return"this";case"Super":return"super";case"Directive":return[ve("value"),Ye];case"DirectiveLiteral":return ie(be.extra.raw,Be);case"UnaryExpression":return Se.push(be.operator),/[a-z]$/.test(be.operator)&&Se.push(" "),E(be.argument)?Se.push(l(["(",p([i,ve("argument")]),i,")"])):Se.push(ve("argument")),Se;case"UpdateExpression":return Se.push(ve("argument"),be.operator),be.prefix&&Se.reverse(),Se;case"ConditionalExpression":return de(Ce,Be,ve);case"VariableDeclaration":{let Ie=Ce.map(ve,"declarations"),Oe=Ce.getParentNode(),Je=Oe.type==="ForStatement"||Oe.type==="ForInStatement"||Oe.type==="ForOfStatement",Te=be.declarations.some(Me=>Me.init),je;return Ie.length===1&&!E(be.declarations[0])?je=Ie[0]:Ie.length>0&&(je=p(Ie[0])),Se=[be.declare?"declare ":"",be.kind,je?[" ",je]:"",p(Ie.slice(1).map(Me=>[",",Te&&!Je?u:n,Me]))],Je&&Oe.body!==be||Se.push(Ye),l(Se)}case"WithStatement":return l(["with (",ve("object"),")",V(be.body,ve("body"))]);case"IfStatement":{let Ie=V(be.consequent,ve("consequent")),Oe=l(["if (",l([p([i,ve("test")]),i]),")",Ie]);if(Se.push(Oe),be.alternate){let Je=E(be.consequent,N.Trailing|N.Line)||$(be),Te=be.consequent.type==="BlockStatement"&&!Je;Se.push(Te?" ":u),E(be,N.Dangling)&&Se.push(t(Ce,Be,!0),Je?u:" "),Se.push("else",l(V(be.alternate,ve("alternate"),be.alternate.type==="IfStatement")))}return Se}case"ForStatement":{let Ie=V(be.body,ve("body")),Oe=t(Ce,Be,!0),Je=Oe?[Oe,i]:"";return!be.init&&!be.test&&!be.update?[Je,l(["for (;;)",Ie])]:[Je,l(["for (",l([p([i,ve("init"),";",n,ve("test"),";",n,ve("update")]),i]),")",Ie])]}case"WhileStatement":return l(["while (",l([p([i,ve("test")]),i]),")",V(be.body,ve("body"))]);case"ForInStatement":return l(["for (",ve("left")," in ",ve("right"),")",V(be.body,ve("body"))]);case"ForOfStatement":return l(["for",be.await?" await":""," (",ve("left")," of ",ve("right"),")",V(be.body,ve("body"))]);case"DoWhileStatement":{let Ie=V(be.body,ve("body"));return Se=[l(["do",Ie])],be.body.type==="BlockStatement"?Se.push(" "):Se.push(u),Se.push("while (",l([p([i,ve("test")]),i]),")",Ye),Se}case"DoExpression":return[be.async?"async ":"","do ",ve("body")];case"BreakStatement":return Se.push("break"),be.label&&Se.push(" ",ve("label")),Se.push(Ye),Se;case"ContinueStatement":return Se.push("continue"),be.label&&Se.push(" ",ve("label")),Se.push(Ye),Se;case"LabeledStatement":return be.body.type==="EmptyStatement"?[ve("label"),":;"]:[ve("label"),": ",ve("body")];case"TryStatement":return["try ",ve("block"),be.handler?[" ",ve("handler")]:"",be.finalizer?[" finally ",ve("finalizer")]:""];case"CatchClause":if(be.param){let Ie=E(be.param,Je=>!v(Je)||Je.leading&&s(Be.originalText,d(Je))||Je.trailing&&s(Be.originalText,o(Je),{backwards:!0})),Oe=ve("param");return["catch ",Ie?["(",p([i,Oe]),i,") "]:["(",Oe,") "],ve("body")]}return["catch ",ve("body")];case"SwitchStatement":return[l(["switch (",p([i,ve("discriminant")]),i,")"])," {",be.cases.length>0?p([u,a(u,Ce.map((Ie,Oe,Je)=>{let Te=Ie.getValue();return[ve(),Oe!==Je.length-1&&P(Te,Be)?u:""]},"cases"))]):"",u,"}"];case"SwitchCase":{be.test?Se.push("case ",ve("test"),":"):Se.push("default:"),E(be,N.Dangling)&&Se.push(" ",t(Ce,Be,!0));let Ie=be.consequent.filter(Oe=>Oe.type!=="EmptyStatement");if(Ie.length>0){let Oe=pe(Ce,Be,ve);Se.push(Ie.length===1&&Ie[0].type==="BlockStatement"?[" ",Oe]:p([u,Oe]))}return Se}case"DebuggerStatement":return["debugger",Ye];case"ClassDeclaration":case"ClassExpression":return U(Ce,Be,ve);case"ClassMethod":case"ClassPrivateMethod":case"MethodDefinition":return Z(Ce,Be,ve);case"ClassProperty":case"PropertyDefinition":case"ClassPrivateProperty":case"ClassAccessorProperty":case"AccessorProperty":return se(Ce,Be,ve);case"TemplateElement":return y(be.value.raw);case"TemplateLiteral":return ue(Ce,ve,Be);case"TaggedTemplateExpression":return[ve("tag"),ve("typeParameters"),ve("quasi")];case"PrivateIdentifier":return["#",ve("name")];case"PrivateName":return["#",ve("id")];case"InterpreterDirective":return Se.push("#!",be.value,u),P(be,Be)&&Se.push(u),Se;case"TopicReference":return"%";case"ArgumentPlaceholder":return"?";case"ModuleExpression":{Se.push("module {");let Ie=ve("body");return Ie&&Se.push(p([u,Ie]),u),Se.push("}"),Se}default:throw new Error("unknown type: "+JSON.stringify(be.type))}}function ye(Ce){return Ce.type&&!v(Ce)&&!I(Ce)&&Ce.type!=="EmptyStatement"&&Ce.type!=="TemplateElement"&&Ce.type!=="Import"&&Ce.type!=="TSEmptyBodyFunctionExpression"}r.exports={preprocess:_,print:G,embed:h,insertPragma:c,massageAstNode:g,hasPrettierIgnore(Ce){return D(Ce)||M(Ce)},willPrintOwnComments:f.willPrintOwnComments,canAttachComment:ye,printComment:Ee,isBlockComment:v,handleComments:{avoidAstMutation:!0,ownLine:f.handleOwnLineComment,endOfLine:f.handleEndOfLineComment,remaining:f.handleRemainingComment},getCommentChildNodes:f.getCommentChildNodes}}}),Ed=te({"src/language-js/printer-estree-json.js"(e,r){"use strict";ne();var{builders:{hardline:t,indent:s,join:a}}=qe(),n=Fo();function u(y,h,g){let c=y.getValue();switch(c.type){case"JsonRoot":return[g("node"),t];case"ArrayExpression":{if(c.elements.length===0)return"[]";let f=y.map(()=>y.getValue()===null?"null":g(),"elements");return["[",s([t,a([",",t],f)]),t,"]"]}case"ObjectExpression":return c.properties.length===0?"{}":["{",s([t,a([",",t],y.map(g,"properties"))]),t,"}"];case"ObjectProperty":return[g("key"),": ",g("value")];case"UnaryExpression":return[c.operator==="+"?"":c.operator,g("argument")];case"NullLiteral":return"null";case"BooleanLiteral":return c.value?"true":"false";case"StringLiteral":return JSON.stringify(c.value);case"NumericLiteral":return i(y)?JSON.stringify(String(c.value)):JSON.stringify(c.value);case"Identifier":return i(y)?JSON.stringify(c.name):c.name;case"TemplateLiteral":return g(["quasis",0]);case"TemplateElement":return JSON.stringify(c.value.cooked);default:throw new Error("unknown type: "+JSON.stringify(c.type))}}function i(y){return y.getName()==="key"&&y.getParentNode().type==="ObjectProperty"}var l=new Set(["start","end","extra","loc","comments","leadingComments","trailingComments","innerComments","errors","range","tokens"]);function p(y,h){let{type:g}=y;if(g==="ObjectProperty"){let{key:c}=y;c.type==="Identifier"?h.key={type:"StringLiteral",value:c.name}:c.type==="NumericLiteral"&&(h.key={type:"StringLiteral",value:String(c.value)});return}if(g==="UnaryExpression"&&y.operator==="+")return h.argument;if(g==="ArrayExpression"){for(let[c,f]of y.elements.entries())f===null&&h.elements.splice(c,0,{type:"NullLiteral"});return}if(g==="TemplateLiteral")return{type:"StringLiteral",value:y.quasis[0].value.cooked}}p.ignoredProperties=l,r.exports={preprocess:n,print:u,massageAstNode:p}}}),Mt=te({"src/common/common-options.js"(e,r){"use strict";ne();var t="Common";r.exports={bracketSpacing:{since:"0.0.0",category:t,type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},singleQuote:{since:"0.0.0",category:t,type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{since:"1.8.2",category:t,type:"choice",default:[{since:"1.8.2",value:!0},{since:"1.9.0",value:"preserve"}],description:"How to wrap prose.",choices:[{since:"1.9.0",value:"always",description:"Wrap prose if it exceeds the print width."},{since:"1.9.0",value:"never",description:"Do not wrap prose."},{since:"1.9.0",value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{since:"2.4.0",category:t,type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{since:"2.6.0",category:t,type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}}}}),Fd=te({"src/language-js/options.js"(e,r){"use strict";ne();var t=Mt(),s="JavaScript";r.exports={arrowParens:{since:"1.9.0",category:s,type:"choice",default:[{since:"1.9.0",value:"avoid"},{since:"2.0.0",value:"always"}],description:"Include parentheses around a sole arrow function parameter.",choices:[{value:"always",description:"Always include parens. Example: `(x) => x`"},{value:"avoid",description:"Omit parens when possible. Example: `x => x`"}]},bracketSameLine:t.bracketSameLine,bracketSpacing:t.bracketSpacing,jsxBracketSameLine:{since:"0.17.0",category:s,type:"boolean",description:"Put > on the last line instead of at a new line.",deprecated:"2.4.0"},semi:{since:"1.0.0",category:s,type:"boolean",default:!0,description:"Print semicolons.",oppositeDescription:"Do not print semicolons, except at the beginning of lines which may need them."},singleQuote:t.singleQuote,jsxSingleQuote:{since:"1.15.0",category:s,type:"boolean",default:!1,description:"Use single quotes in JSX."},quoteProps:{since:"1.17.0",category:s,type:"choice",default:"as-needed",description:"Change when properties in objects are quoted.",choices:[{value:"as-needed",description:"Only add quotes around object properties where required."},{value:"consistent",description:"If at least one property in an object requires quotes, quote all properties."},{value:"preserve",description:"Respect the input use of quotes in object properties."}]},trailingComma:{since:"0.0.0",category:s,type:"choice",default:[{since:"0.0.0",value:!1},{since:"0.19.0",value:"none"},{since:"2.0.0",value:"es5"}],description:"Print trailing commas wherever possible when multi-line.",choices:[{value:"es5",description:"Trailing commas where valid in ES5 (objects, arrays, etc.)"},{value:"none",description:"No trailing commas."},{value:"all",description:"Trailing commas wherever possible (including function arguments)."}]},singleAttributePerLine:t.singleAttributePerLine}}}),Ad=te({"src/language-js/parse/parsers.js"(){ne()}}),Ln=te({"node_modules/linguist-languages/data/JavaScript.json"(e,r){r.exports={name:"JavaScript",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:["js","node"],extensions:[".js","._js",".bones",".cjs",".es",".es6",".frag",".gs",".jake",".javascript",".jsb",".jscad",".jsfl",".jslib",".jsm",".jspre",".jss",".jsx",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib"],filenames:["Jakefile"],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell"],languageId:183}}}),Sd=te({"node_modules/linguist-languages/data/TypeScript.json"(e,r){r.exports={name:"TypeScript",type:"programming",color:"#3178c6",aliases:["ts"],interpreters:["deno","ts-node"],extensions:[".ts",".cts",".mts"],tmScope:"source.ts",aceMode:"typescript",codemirrorMode:"javascript",codemirrorMimeType:"application/typescript",languageId:378}}}),xd=te({"node_modules/linguist-languages/data/TSX.json"(e,r){r.exports={name:"TSX",type:"programming",color:"#3178c6",group:"TypeScript",extensions:[".tsx"],tmScope:"source.tsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",languageId:94901924}}}),wa=te({"node_modules/linguist-languages/data/JSON.json"(e,r){r.exports={name:"JSON",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".json",".4DForm",".4DProject",".avsc",".geojson",".gltf",".har",".ice",".JSON-tmLanguage",".jsonl",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","Pipfile.lock","composer.lock","mcmod.info"],languageId:174}}}),bd=te({"node_modules/linguist-languages/data/JSON with Comments.json"(e,r){r.exports={name:"JSON with Comments",type:"data",color:"#292929",group:"JSON",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",aliases:["jsonc"],extensions:[".jsonc",".code-snippets",".sublime-build",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"],filenames:[".babelrc",".devcontainer.json",".eslintrc.json",".jscsrc",".jshintrc",".jslintrc","api-extractor.json","devcontainer.json","jsconfig.json","language-configuration.json","tsconfig.json","tslint.json"],languageId:423}}}),Td=te({"node_modules/linguist-languages/data/JSON5.json"(e,r){r.exports={name:"JSON5",type:"data",color:"#267CB9",extensions:[".json5"],tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"application/json",languageId:175}}}),Bd=te({"src/language-js/index.js"(e,r){"use strict";ne();var t=_t(),s=Cd(),a=Ed(),n=Fd(),u=Ad(),i=[t(Ln(),p=>({since:"0.0.0",parsers:["babel","acorn","espree","meriyah","babel-flow","babel-ts","flow","typescript"],vscodeLanguageIds:["javascript","mongo"],interpreters:[...p.interpreters,"zx"],extensions:[...p.extensions.filter(y=>y!==".jsx"),".wxs"]})),t(Ln(),()=>({name:"Flow",since:"0.0.0",parsers:["flow","babel-flow"],vscodeLanguageIds:["javascript"],aliases:[],filenames:[],extensions:[".js.flow"]})),t(Ln(),()=>({name:"JSX",since:"0.0.0",parsers:["babel","babel-flow","babel-ts","flow","typescript","espree","meriyah"],vscodeLanguageIds:["javascriptreact"],aliases:void 0,filenames:void 0,extensions:[".jsx"],group:"JavaScript",interpreters:void 0,tmScope:"source.js.jsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",color:void 0})),t(Sd(),()=>({since:"1.4.0",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescript"]})),t(xd(),()=>({since:"1.4.0",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescriptreact"]})),t(wa(),()=>({name:"JSON.stringify",since:"1.13.0",parsers:["json-stringify"],vscodeLanguageIds:["json"],extensions:[".importmap"],filenames:["package.json","package-lock.json","composer.json"]})),t(wa(),p=>({since:"1.5.0",parsers:["json"],vscodeLanguageIds:["json"],extensions:p.extensions.filter(y=>y!==".jsonl")})),t(bd(),p=>({since:"1.5.0",parsers:["json"],vscodeLanguageIds:["jsonc"],filenames:[...p.filenames,".eslintrc",".swcrc"]})),t(Td(),()=>({since:"1.13.0",parsers:["json5"],vscodeLanguageIds:["json5"]}))],l={estree:s,"estree-json":a};r.exports={languages:i,options:n,printers:l,parsers:u}}}),Nd=te({"src/language-css/clean.js"(e,r){"use strict";ne();var{isFrontMatterNode:t}=Ue(),s=lt(),a=new Set(["raw","raws","sourceIndex","source","before","after","trailingComma"]);function n(i,l,p){if(t(i)&&i.lang==="yaml"&&delete l.value,i.type==="css-comment"&&p.type==="css-root"&&p.nodes.length>0&&((p.nodes[0]===i||t(p.nodes[0])&&p.nodes[1]===i)&&(delete l.text,/^\*\s*@(?:format|prettier)\s*$/.test(i.text))||p.type==="css-root"&&s(p.nodes)===i))return null;if(i.type==="value-root"&&delete l.text,(i.type==="media-query"||i.type==="media-query-list"||i.type==="media-feature-expression")&&delete l.value,i.type==="css-rule"&&delete l.params,i.type==="selector-combinator"&&(l.value=l.value.replace(/\s+/g," ")),i.type==="media-feature"&&(l.value=l.value.replace(/ /g,"")),(i.type==="value-word"&&(i.isColor&&i.isHex||["initial","inherit","unset","revert"].includes(l.value.replace().toLowerCase()))||i.type==="media-feature"||i.type==="selector-root-invalid"||i.type==="selector-pseudo")&&(l.value=l.value.toLowerCase()),i.type==="css-decl"&&(l.prop=l.prop.toLowerCase()),(i.type==="css-atrule"||i.type==="css-import")&&(l.name=l.name.toLowerCase()),i.type==="value-number"&&(l.unit=l.unit.toLowerCase()),(i.type==="media-feature"||i.type==="media-keyword"||i.type==="media-type"||i.type==="media-unknown"||i.type==="media-url"||i.type==="media-value"||i.type==="selector-attribute"||i.type==="selector-string"||i.type==="selector-class"||i.type==="selector-combinator"||i.type==="value-string")&&l.value&&(l.value=u(l.value)),i.type==="selector-attribute"&&(l.attribute=l.attribute.trim(),l.namespace&&typeof l.namespace=="string"&&(l.namespace=l.namespace.trim(),l.namespace.length===0&&(l.namespace=!0)),l.value&&(l.value=l.value.trim().replace(/^["']|["']$/g,""),delete l.quoted)),(i.type==="media-value"||i.type==="media-type"||i.type==="value-number"||i.type==="selector-root-invalid"||i.type==="selector-class"||i.type==="selector-combinator"||i.type==="selector-tag")&&l.value&&(l.value=l.value.replace(/([\d+.Ee-]+)([A-Za-z]*)/g,(y,h,g)=>{let c=Number(h);return Number.isNaN(c)?y:c+g.toLowerCase()})),i.type==="selector-tag"){let y=i.value.toLowerCase();["from","to"].includes(y)&&(l.value=y)}if(i.type==="css-atrule"&&i.name.toLowerCase()==="supports"&&delete l.value,i.type==="selector-unknown"&&delete l.value,i.type==="value-comma_group"){let y=i.groups.findIndex(h=>h.type==="value-number"&&h.unit==="...");y!==-1&&(l.groups[y].unit="",l.groups.splice(y+1,0,{type:"value-word",value:"...",isColor:!1,isHex:!1}))}if(i.type==="value-comma_group"&&i.groups.some(y=>y.type==="value-atword"&&y.value.endsWith("[")||y.type==="value-word"&&y.value.startsWith("]")))return{type:"value-atword",value:i.groups.map(y=>y.value).join(""),group:{open:null,close:null,groups:[],type:"value-paren_group"}}}n.ignoredProperties=a;function u(i){return i.replace(/'/g,'"').replace(/\\([^\dA-Fa-f])/g,"$1")}r.exports=n}}),su=te({"src/utils/front-matter/print.js"(e,r){"use strict";ne();var{builders:{hardline:t,markAsRoot:s}}=qe();function a(n,u){if(n.lang==="yaml"){let i=n.value.trim(),l=i?u(i,{parser:"yaml"},{stripTrailingHardline:!0}):"";return s([n.startDelimiter,t,l,l?t:"",n.endDelimiter])}}r.exports=a}}),wd=te({"src/language-css/embed.js"(e,r){"use strict";ne();var{builders:{hardline:t}}=qe(),s=su();function a(n,u,i){let l=n.getValue();if(l.type==="front-matter"){let p=s(l,i);return p?[p,t]:""}}r.exports=a}}),_o=te({"src/utils/front-matter/parse.js"(e,r){"use strict";ne();var t=new RegExp("^(?-{3}|\\+{3})(?[^\\n]*)\\n(?:|(?.*?)\\n)(?\\k|\\.{3})[^\\S\\n]*(?:\\n|$)","s");function s(a){let n=a.match(t);if(!n)return{content:a};let{startDelimiter:u,language:i,value:l="",endDelimiter:p}=n.groups,y=i.trim()||"yaml";if(u==="+++"&&(y="toml"),y!=="yaml"&&u!==p)return{content:a};let[h]=n;return{frontMatter:{type:"front-matter",lang:y,value:l,startDelimiter:u,endDelimiter:p,raw:h.replace(/\n$/,"")},content:h.replace(/[^\n]/g," ")+a.slice(h.length)}}r.exports=s}}),_d=te({"src/language-css/pragma.js"(e,r){"use strict";ne();var t=Co(),s=_o();function a(u){return t.hasPragma(s(u).content)}function n(u){let{frontMatter:i,content:l}=s(u);return(i?i.raw+` + +`:"")+t.insertPragma(l)}r.exports={hasPragma:a,insertPragma:n}}}),Pd=te({"src/language-css/utils/index.js"(e,r){"use strict";ne();var t=new Set(["red","green","blue","alpha","a","rgb","hue","h","saturation","s","lightness","l","whiteness","w","blackness","b","tint","shade","blend","blenda","contrast","hsl","hsla","hwb","hwba"]);function s(z,U){let Z=Array.isArray(U)?U:[U],se=-1,fe;for(;fe=z.getParentNode(++se);)if(Z.includes(fe.type))return se;return-1}function a(z,U){let Z=s(z,U);return Z===-1?null:z.getParentNode(Z)}function n(z){var U;let Z=a(z,"css-decl");return Z==null||(U=Z.prop)===null||U===void 0?void 0:U.toLowerCase()}var u=new Set(["initial","inherit","unset","revert"]);function i(z){return u.has(z.toLowerCase())}function l(z,U){let Z=a(z,"css-atrule");return(Z==null?void 0:Z.name)&&Z.name.toLowerCase().endsWith("keyframes")&&["from","to"].includes(U.toLowerCase())}function p(z){return z.includes("$")||z.includes("@")||z.includes("#")||z.startsWith("%")||z.startsWith("--")||z.startsWith(":--")||z.includes("(")&&z.includes(")")?z:z.toLowerCase()}function y(z,U){var Z;let se=a(z,"value-func");return(se==null||(Z=se.value)===null||Z===void 0?void 0:Z.toLowerCase())===U}function h(z){var U;let Z=a(z,"css-rule"),se=Z==null||(U=Z.raws)===null||U===void 0?void 0:U.selector;return se&&(se.startsWith(":import")||se.startsWith(":export"))}function g(z,U){let Z=Array.isArray(U)?U:[U],se=a(z,"css-atrule");return se&&Z.includes(se.name.toLowerCase())}function c(z){let U=z.getValue(),Z=a(z,"css-atrule");return(Z==null?void 0:Z.name)==="import"&&U.groups[0].value==="url"&&U.groups.length===2}function f(z){return z.type==="value-func"&&z.value.toLowerCase()==="url"}function F(z,U){var Z;let se=(Z=z.getParentNode())===null||Z===void 0?void 0:Z.nodes;return se&&se.indexOf(U)===se.length-1}function _(z){let{selector:U}=z;return U?typeof U=="string"&&/^@.+:.*$/.test(U)||U.value&&/^@.+:.*$/.test(U.value):!1}function w(z){return z.type==="value-word"&&["from","through","end"].includes(z.value)}function E(z){return z.type==="value-word"&&["and","or","not"].includes(z.value)}function N(z){return z.type==="value-word"&&z.value==="in"}function x(z){return z.type==="value-operator"&&z.value==="*"}function I(z){return z.type==="value-operator"&&z.value==="/"}function P(z){return z.type==="value-operator"&&z.value==="+"}function $(z){return z.type==="value-operator"&&z.value==="-"}function D(z){return z.type==="value-operator"&&z.value==="%"}function T(z){return x(z)||I(z)||P(z)||$(z)||D(z)}function m(z){return z.type==="value-word"&&["==","!="].includes(z.value)}function C(z){return z.type==="value-word"&&["<",">","<=",">="].includes(z.value)}function o(z){return z.type==="css-atrule"&&["if","else","for","each","while"].includes(z.name)}function d(z){var U;return((U=z.raws)===null||U===void 0?void 0:U.params)&&/^\(\s*\)$/.test(z.raws.params)}function v(z){return z.name.startsWith("prettier-placeholder")}function S(z){return z.prop.startsWith("@prettier-placeholder")}function b(z,U){return z.value==="$$"&&z.type==="value-func"&&(U==null?void 0:U.type)==="value-word"&&!U.raws.before}function B(z){var U,Z;return((U=z.value)===null||U===void 0?void 0:U.type)==="value-root"&&((Z=z.value.group)===null||Z===void 0?void 0:Z.type)==="value-value"&&z.prop.toLowerCase()==="composes"}function k(z){var U,Z,se;return((U=z.value)===null||U===void 0||(Z=U.group)===null||Z===void 0||(se=Z.group)===null||se===void 0?void 0:se.type)==="value-paren_group"&&z.value.group.group.open!==null&&z.value.group.group.close!==null}function M(z){var U;return((U=z.raws)===null||U===void 0?void 0:U.before)===""}function R(z){var U,Z;return z.type==="value-comma_group"&&((U=z.groups)===null||U===void 0||(Z=U[1])===null||Z===void 0?void 0:Z.type)==="value-colon"}function q(z){var U;return z.type==="value-paren_group"&&((U=z.groups)===null||U===void 0?void 0:U[0])&&R(z.groups[0])}function J(z){var U;let Z=z.getValue();if(Z.groups.length===0)return!1;let se=z.getParentNode(1);if(!q(Z)&&!(se&&q(se)))return!1;let fe=a(z,"css-decl");return!!(fe!=null&&(U=fe.prop)!==null&&U!==void 0&&U.startsWith("$")||q(se)||se.type==="value-func")}function L(z){return z.type==="value-comment"&&z.inline}function Q(z){return z.type==="value-word"&&z.value==="#"}function V(z){return z.type==="value-word"&&z.value==="{"}function j(z){return z.type==="value-word"&&z.value==="}"}function Y(z){return["value-word","value-atword"].includes(z.type)}function ie(z){return(z==null?void 0:z.type)==="value-colon"}function ee(z,U){if(!R(U))return!1;let{groups:Z}=U,se=Z.indexOf(z);return se===-1?!1:ie(Z[se+1])}function ce(z){return z.value&&["not","and","or"].includes(z.value.toLowerCase())}function W(z){return z.type!=="value-func"?!1:t.has(z.value.toLowerCase())}function K(z){return/\/\//.test(z.split(/[\n\r]/).pop())}function de(z){return(z==null?void 0:z.type)==="value-atword"&&z.value.startsWith("prettier-placeholder-")}function ue(z,U){var Z,se;if(((Z=z.open)===null||Z===void 0?void 0:Z.value)!=="("||((se=z.close)===null||se===void 0?void 0:se.value)!==")"||z.groups.some(fe=>fe.type!=="value-comma_group"))return!1;if(U.type==="value-comma_group"){let fe=U.groups.indexOf(z)-1,ge=U.groups[fe];if((ge==null?void 0:ge.type)==="value-word"&&ge.value==="with")return!0}return!1}function Fe(z){var U,Z;return z.type==="value-paren_group"&&((U=z.open)===null||U===void 0?void 0:U.value)==="("&&((Z=z.close)===null||Z===void 0?void 0:Z.value)===")"}r.exports={getAncestorCounter:s,getAncestorNode:a,getPropOfDeclNode:n,maybeToLowerCase:p,insideValueFunctionNode:y,insideICSSRuleNode:h,insideAtRuleNode:g,insideURLFunctionInImportAtRuleNode:c,isKeyframeAtRuleKeywords:l,isWideKeywords:i,isLastNode:F,isSCSSControlDirectiveNode:o,isDetachedRulesetDeclarationNode:_,isRelationalOperatorNode:C,isEqualityOperatorNode:m,isMultiplicationNode:x,isDivisionNode:I,isAdditionNode:P,isSubtractionNode:$,isModuloNode:D,isMathOperatorNode:T,isEachKeywordNode:N,isForKeywordNode:w,isURLFunctionNode:f,isIfElseKeywordNode:E,hasComposesNode:B,hasParensAroundNode:k,hasEmptyRawBefore:M,isDetachedRulesetCallNode:d,isTemplatePlaceholderNode:v,isTemplatePropNode:S,isPostcssSimpleVarNode:b,isKeyValuePairNode:R,isKeyValuePairInParenGroupNode:q,isKeyInValuePairNode:ee,isSCSSMapItemNode:J,isInlineValueCommentNode:L,isHashNode:Q,isLeftCurlyBraceNode:V,isRightCurlyBraceNode:j,isWordNode:Y,isColonNode:ie,isMediaAndSupportsKeywords:ce,isColorAdjusterFuncNode:W,lastLineHasInlineComment:K,isAtWordPlaceholderNode:de,isConfigurationNode:ue,isParenGroupNode:Fe}}}),Id=te({"src/utils/line-column-to-index.js"(e,r){"use strict";ne(),r.exports=function(t,s){let a=0;for(let n=0;n0?h:""]}case"css-comment":{let Ve=ae.inline||ae.raws.inline,We=je.originalText.slice(Ae(ae),Ee(ae));return Ve?We.trimEnd():We}case"css-rule":return[Me("selector"),ae.important?" !important":"",ae.nodes?[ae.selector&&ae.selector.type==="selector-unknown"&&H(ae.selector.value)?y:" ","{",ae.nodes.length>0?F([h,Ce(Te,je,Me)]):"",h,"}",M(ae)?";":""]:";"];case"css-decl":{let Ve=Te.getParentNode(),{between:We}=ae.raws,Xe=We.trim(),st=Xe===":",O=W(ae)?N(Me("value")):Me("value");return!st&&H(Xe)&&(O=F([h,_(O)])),[ae.raws.before.replace(/[\s;]/g,""),Ve.type==="css-atrule"&&Ve.variable||o(Te)?ae.prop:m(ae.prop),Xe.startsWith("//")?" ":"",Xe,ae.extend?"":" ",De(je)&&ae.extend&&ae.selector?["extend(",Me("selector"),")"]:"",O,ae.raws.important?ae.raws.important.replace(/\s*!\s*important/i," !important"):ae.important?" !important":"",ae.raws.scssDefault?ae.raws.scssDefault.replace(/\s*!default/i," !default"):ae.scssDefault?" !default":"",ae.raws.scssGlobal?ae.raws.scssGlobal.replace(/\s*!global/i," !global"):ae.scssGlobal?" !global":"",ae.nodes?[" {",F([g,Ce(Te,je,Me)]),g,"}"]:Z(ae)&&!Ve.raws.semicolon&&je.originalText[Ee(ae)-1]!==";"?"":je.__isHTMLStyleAttribute&&B(Te,ae)?w(";"):";"]}case"css-atrule":{let Ve=Te.getParentNode(),We=U(ae)&&!Ve.raws.semicolon&&je.originalText[Ee(ae)-1]!==";";if(De(je)){if(ae.mixin)return[Me("selector"),ae.important?" !important":"",We?"":";"];if(ae.function)return[ae.name,Me("params"),We?"":";"];if(ae.variable)return["@",ae.name,": ",ae.value?Me("value"):"",ae.raws.between.trim()?ae.raws.between.trim()+" ":"",ae.nodes?["{",F([ae.nodes.length>0?g:"",Ce(Te,je,Me)]),g,"}"]:"",We?"":";"]}return["@",z(ae)||ae.name.endsWith(":")?ae.name:m(ae.name),ae.params?[z(ae)?"":U(ae)?ae.raws.afterName===""?"":ae.name.endsWith(":")?" ":/^\s*\n\s*\n/.test(ae.raws.afterName)?[h,h]:/^\s*\n/.test(ae.raws.afterName)?h:" ":" ",Me("params")]:"",ae.selector?F([" ",Me("selector")]):"",ae.value?c([" ",Me("value"),k(ae)?K(ae)?" ":y:""]):ae.name==="else"?" ":"",ae.nodes?[k(ae)?"":ae.selector&&!ae.selector.nodes&&typeof ae.selector.value=="string"&&H(ae.selector.value)||!ae.selector&&typeof ae.params=="string"&&H(ae.params)?y:" ","{",F([ae.nodes.length>0?g:"",Ce(Te,je,Me)]),g,"}"]:We?"":";"]}case"media-query-list":{let Ve=[];return Te.each(We=>{let Xe=We.getValue();Xe.type==="media-query"&&Xe.value===""||Ve.push(Me())},"nodes"),c(F(p(y,Ve)))}case"media-query":return[p(" ",Te.map(Me,"nodes")),B(Te,ae)?"":","];case"media-type":return Oe(Se(ae.value,je));case"media-feature-expression":return ae.nodes?["(",...Te.map(Me,"nodes"),")"]:ae.value;case"media-feature":return m(Se(ae.value.replace(/ +/g," "),je));case"media-colon":return[ae.value," "];case"media-value":return Oe(Se(ae.value,je));case"media-keyword":return Se(ae.value,je);case"media-url":return Se(ae.value.replace(/^url\(\s+/gi,"url(").replace(/\s+\)$/g,")"),je);case"media-unknown":return ae.value;case"selector-root":return c([d(Te,"custom-selector")?[D(Te,"css-atrule").customSelector,y]:"",p([",",d(Te,["extend","custom-selector","nest"])?y:h],Te.map(Me,"nodes"))]);case"selector-selector":return c(F(Te.map(Me,"nodes")));case"selector-comment":return ae.value;case"selector-string":return Se(ae.value,je);case"selector-tag":{let Ve=Te.getParentNode(),We=Ve&&Ve.nodes.indexOf(ae),Xe=We&&Ve.nodes[We-1];return[ae.namespace?[ae.namespace===!0?"":ae.namespace.trim(),"|"]:"",Xe.type==="selector-nesting"?ae.value:Oe(S(Te,ae.value)?ae.value.toLowerCase():ae.value)]}case"selector-id":return["#",ae.value];case"selector-class":return[".",Oe(Se(ae.value,je))];case"selector-attribute":{var nt;return["[",ae.namespace?[ae.namespace===!0?"":ae.namespace.trim(),"|"]:"",ae.attribute.trim(),(nt=ae.operator)!==null&&nt!==void 0?nt:"",ae.value?Ie(Se(ae.value.trim(),je),je):"",ae.insensitive?" i":"","]"]}case"selector-combinator":{if(ae.value==="+"||ae.value===">"||ae.value==="~"||ae.value===">>>"){let Xe=Te.getParentNode();return[Xe.type==="selector-selector"&&Xe.nodes[0]===ae?"":y,ae.value,B(Te,ae)?"":" "]}let Ve=ae.value.trim().startsWith("(")?y:"",We=Oe(Se(ae.value.trim(),je))||y;return[Ve,We]}case"selector-universal":return[ae.namespace?[ae.namespace===!0?"":ae.namespace.trim(),"|"]:"",ae.value];case"selector-pseudo":return[m(ae.value),l(ae.nodes)?c(["(",F([g,p([",",y],Te.map(Me,"nodes"))]),g,")"]):""];case"selector-nesting":return ae.value;case"selector-unknown":{let Ve=D(Te,"css-rule");if(Ve&&Ve.isSCSSNesterProperty)return Oe(Se(m(ae.value),je));let We=Te.getParentNode();if(We.raws&&We.raws.selector){let st=Ae(We),O=st+We.raws.selector.length;return je.originalText.slice(st,O).trim()}let Xe=Te.getParentNode(1);if(We.type==="value-paren_group"&&Xe&&Xe.type==="value-func"&&Xe.value==="selector"){let st=Ee(We.open)+1,O=Ae(We.close),me=je.originalText.slice(st,O).trim();return H(me)?[E,me]:me}return ae.value}case"value-value":case"value-root":return Me("group");case"value-comment":return je.originalText.slice(Ae(ae),Ee(ae));case"value-comma_group":{let Ve=Te.getParentNode(),We=Te.getParentNode(1),Xe=T(Te),st=Xe&&Ve.type==="value-value"&&(Xe==="grid"||Xe.startsWith("grid-template")),O=D(Te,"css-atrule"),me=O&&k(O),_e=ae.groups.some(at=>ge(at)),He=Te.map(Me,"groups"),Ge=[],it=C(Te,"url"),Qe=!1,rt=!1;for(let at=0;atVr:$r!==-1?Qe=!0:Vr!==-1&&(Qe=!1)}if(Qe||Ne(Le)||Ne($e)||Le.type==="value-atword"&&(Le.value===""||Le.value.endsWith("["))||$e.type==="value-word"&&$e.value.startsWith("]")||Le.value==="~"||Le.value&&Le.value.includes("\\")&&$e&&$e.type!=="value-comment"||Ze&&Ze.value&&Ze.value.indexOf("\\")===Ze.value.length-1&&Le.type==="value-operator"&&Le.value==="/"||Le.value==="\\"||se(Le,$e)||he(Le)||we(Le)||ke($e)||we($e)&&de($e)||ke(Le)&&de($e)||Le.value==="--"&&he($e))continue;let Rr=j(Le),ou=j($e);if((Rr&&he($e)||ou&&ke(Le))&&de($e)||!Ze&&L(Le)||C(Te,"calc")&&(Q(Le)||Q($e)||V(Le)||V($e))&&de($e))continue;let qo=(Q(Le)||V(Le))&&at===0&&($e.type==="value-number"||$e.isHex)&&We&&oe(We)&&!de($e),lu=sr&&sr.type==="value-func"||sr&&Re(sr)||Le.type==="value-func"||Re(Le),cu=$e.type==="value-func"||Re($e)||Ze&&Ze.type==="value-func"||Ze&&Re(Ze);if(!(!(J($e)||J(Le))&&!C(Te,"calc")&&!qo&&(L($e)&&!lu||L(Le)&&!cu||Q($e)&&!lu||Q(Le)&&!cu||V($e)||V(Le))&&(de($e)||Rr&&(!Ze||Ze&&j(Ze))))&&!((je.parser==="scss"||je.parser==="less")&&Rr&&Le.value==="-"&&le($e)&&Ee(Le)===Ae($e.open)&&$e.open.value==="(")){if(ge(Le)){if(Ve.type==="value-paren_group"){Ge.push(_(h));continue}Ge.push(h);continue}if(me&&(q($e)||R($e)||ce($e)||Y(Le)||ie(Le))){Ge.push(" ");continue}if(O&&O.name.toLowerCase()==="namespace"){Ge.push(" ");continue}if(st){Le.source&&$e.source&&Le.source.start.line!==$e.source.start.line?(Ge.push(h),rt=!0):Ge.push(" ");continue}if(ou){Ge.push(" ");continue}if(!($e&&$e.value==="...")&&!(pe(Le)&&pe($e)&&Ee(Le)===Ae($e))){if(pe(Le)&&le($e)&&Ee(Le)===Ae($e.open)){Ge.push(g);continue}if(Le.value==="with"&&le($e)){Ge.push(" ");continue}(tt=Le.value)!==null&&tt!==void 0&&tt.endsWith("#")&&$e.value==="{"&&le($e.group)||Ge.push(y)}}}return _e&&Ge.push(E),rt&&Ge.unshift(h),me?c(F(Ge)):v(Te)?c(f(Ge)):c(F(f(Ge)))}case"value-paren_group":{let Ve=Te.getParentNode();if(Ve&&ee(Ve)&&(ae.groups.length===1||ae.groups.length>0&&ae.groups[0].type==="value-comma_group"&&ae.groups[0].groups.length>0&&ae.groups[0].groups[0].type==="value-word"&&ae.groups[0].groups[0].value.startsWith("data:")))return[ae.open?Me("open"):"",p(",",Te.map(Me,"groups")),ae.close?Me("close"):""];if(!ae.open){let it=Te.map(Me,"groups"),Qe=[];for(let rt=0;rt{let rt=it.getValue(),at=Qe===ae.groups.length-1,Ze=[Me(),at?"":","];if(ue(rt)&&rt.type==="value-comma_group"&&rt.groups&&rt.groups[0].type!=="value-paren_group"&&rt.groups[2]&&rt.groups[2].type==="value-paren_group"){let Le=x(Ze[0].contents.contents);Le[1]=c(Le[1]),Ze=[c(_(Ze))]}if(!at&&rt.type==="value-comma_group"&&l(rt.groups)){let Le=t(rt.groups);!Le.source&&Le.close&&(Le=Le.close),Le.source&&i(je.originalText,Le,Ee)&&Ze.push(h)}return Ze},"groups"))]),w(!st&&A(je.parser,je.originalText)&&We&&re(je)?",":""),g,ae.close?Me("close"):""],{shouldBreak:_e});return He?_(Ge):Ge}case"value-func":return[ae.value,d(Te,"supports")&&Pe(ae)?" ":"",Me("group")];case"value-paren":return ae.value;case"value-number":return[Je(ae.value),G(ae.unit)];case"value-operator":return ae.value;case"value-word":return ae.isColor&&ae.isHex||b(ae.value)?ae.value.toLowerCase():ae.value;case"value-colon":{let Ve=Te.getParentNode(),We=Ve&&Ve.groups.indexOf(ae),Xe=We&&Ve.groups[We-1];return[ae.value,Xe&&typeof Xe.value=="string"&&t(Xe.value)==="\\"||C(Te,"url")?"":y]}case"value-comma":return[ae.value," "];case"value-string":return a(ae.raws.quote+ae.value+ae.raws.quote,je);case"value-atword":return["@",ae.value];case"value-unicode-range":return ae.value;case"value-unknown":return ae.value;default:throw new Error(`Unknown postcss type ${JSON.stringify(ae.type)}`)}}function Ce(Te,je,Me){let ae=[];return Te.each((nt,tt,Ve)=>{let We=Ve[tt-1];if(We&&We.type==="css-comment"&&We.text.trim()==="prettier-ignore"){let Xe=nt.getValue();ae.push(je.originalText.slice(Ae(Xe),Ee(Xe)))}else ae.push(Me());tt!==Ve.length-1&&(Ve[tt+1].type==="css-comment"&&!n(je.originalText,Ae(Ve[tt+1]),{backwards:!0})&&!u(Ve[tt])||Ve[tt+1].type==="css-atrule"&&Ve[tt+1].name==="else"&&Ve[tt].type!=="css-comment"?ae.push(" "):(ae.push(je.__isHTMLStyleAttribute?y:h),i(je.originalText,nt.getValue(),Ee)&&!u(Ve[tt])&&ae.push(h)))},"nodes"),ae}var Be=/(["'])(?:(?!\1)[^\\]|\\.)*\1/gs,ve=/(?:\d*\.\d+|\d+\.?)(?:[Ee][+-]?\d+)?/g,ze=/[A-Za-z]+/g,be=/[$@]?[A-Z_a-z\u0080-\uFFFF][\w\u0080-\uFFFF-]*/g,Ye=new RegExp(Be.source+`|(${be.source})?(${ve.source})(${ze.source})?`,"g");function Se(Te,je){return Te.replace(Be,Me=>a(Me,je))}function Ie(Te,je){let Me=je.singleQuote?"'":'"';return Te.includes('"')||Te.includes("'")?Te:Me+Te+Me}function Oe(Te){return Te.replace(Ye,(je,Me,ae,nt,tt)=>!ae&&nt?Je(nt)+m(tt||""):je)}function Je(Te){return s(Te).replace(/\.0(?=$|e)/,"")}r.exports={print:ye,embed:P,insertPragma:$,massageAstNode:I}}}),Rd=te({"src/language-css/options.js"(e,r){"use strict";ne();var t=Mt();r.exports={singleQuote:t.singleQuote}}}),$d=te({"src/language-css/parsers.js"(){ne()}}),Vd=te({"node_modules/linguist-languages/data/CSS.json"(e,r){r.exports={name:"CSS",type:"markup",tmScope:"source.css",aceMode:"css",codemirrorMode:"css",codemirrorMimeType:"text/css",color:"#563d7c",extensions:[".css"],languageId:50}}}),Wd=te({"node_modules/linguist-languages/data/PostCSS.json"(e,r){r.exports={name:"PostCSS",type:"markup",color:"#dc3a0c",tmScope:"source.postcss",group:"CSS",extensions:[".pcss",".postcss"],aceMode:"text",languageId:262764437}}}),Hd=te({"node_modules/linguist-languages/data/Less.json"(e,r){r.exports={name:"Less",type:"markup",color:"#1d365d",aliases:["less-css"],extensions:[".less"],tmScope:"source.css.less",aceMode:"less",codemirrorMode:"css",codemirrorMimeType:"text/css",languageId:198}}}),Gd=te({"node_modules/linguist-languages/data/SCSS.json"(e,r){r.exports={name:"SCSS",type:"markup",color:"#c6538c",tmScope:"source.css.scss",aceMode:"scss",codemirrorMode:"css",codemirrorMimeType:"text/x-scss",extensions:[".scss"],languageId:329}}}),Ud=te({"src/language-css/index.js"(e,r){"use strict";ne();var t=_t(),s=Md(),a=Rd(),n=$d(),u=[t(Vd(),l=>({since:"1.4.0",parsers:["css"],vscodeLanguageIds:["css"],extensions:[...l.extensions,".wxss"]})),t(Wd(),()=>({since:"1.4.0",parsers:["css"],vscodeLanguageIds:["postcss"]})),t(Hd(),()=>({since:"1.4.0",parsers:["less"],vscodeLanguageIds:["less"]})),t(Gd(),()=>({since:"1.4.0",parsers:["scss"],vscodeLanguageIds:["scss"]}))],i={postcss:s};r.exports={languages:u,options:a,printers:i,parsers:n}}}),Jd=te({"src/language-handlebars/loc.js"(e,r){"use strict";ne();function t(a){return a.loc.start.offset}function s(a){return a.loc.end.offset}r.exports={locStart:t,locEnd:s}}}),zd=te({"src/language-handlebars/clean.js"(e,r){"use strict";ne();function t(s,a){if(s.type==="TextNode"){let n=s.chars.trim();if(!n)return null;a.chars=n.replace(/[\t\n\f\r ]+/g," ")}s.type==="AttrNode"&&s.name.toLowerCase()==="class"&&delete a.value}t.ignoredProperties=new Set(["loc","selfClosing"]),r.exports=t}}),Xd=te({"src/language-handlebars/html-void-elements.evaluate.js"(e,r){r.exports=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]}}),Kd=te({"src/language-handlebars/utils.js"(e,r){"use strict";ne();var t=lt(),s=Xd();function a(x){let I=x.getValue(),P=x.getParentNode(0);return!!(g(x,["ElementNode"])&&t(P.children)===I||g(x,["Block"])&&t(P.body)===I)}function n(x){return x.toUpperCase()===x}function u(x){return h(x,["ElementNode"])&&typeof x.tag=="string"&&!x.tag.startsWith(":")&&(n(x.tag[0])||x.tag.includes("."))}var i=new Set(s);function l(x){return i.has(x.toLowerCase())&&!n(x[0])}function p(x){return x.selfClosing===!0||l(x.tag)||u(x)&&x.children.every(I=>y(I))}function y(x){return h(x,["TextNode"])&&!/\S/.test(x.chars)}function h(x,I){return x&&I.includes(x.type)}function g(x,I){let P=x.getParentNode(0);return h(P,I)}function c(x,I){let P=_(x);return h(P,I)}function f(x,I){let P=w(x);return h(P,I)}function F(x,I){var P,$,D,T;let m=x.getValue(),C=(P=x.getParentNode(0))!==null&&P!==void 0?P:{},o=($=(D=(T=C.children)!==null&&T!==void 0?T:C.body)!==null&&D!==void 0?D:C.parts)!==null&&$!==void 0?$:[],d=o.indexOf(m);return d!==-1&&o[d+I]}function _(x){let I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;return F(x,-I)}function w(x){return F(x,1)}function E(x){return h(x,["MustacheCommentStatement"])&&typeof x.value=="string"&&x.value.trim()==="prettier-ignore"}function N(x){let I=x.getValue(),P=_(x,2);return E(I)||E(P)}r.exports={getNextNode:w,getPreviousNode:_,hasPrettierIgnore:N,isLastNodeOfSiblings:a,isNextNodeOfSomeType:f,isNodeOfSomeType:h,isParentOfSomeType:g,isPreviousNodeOfSomeType:c,isVoid:p,isWhitespaceNode:y}}}),Yd=te({"src/language-handlebars/printer-glimmer.js"(e,r){"use strict";ne();var{builders:{dedent:t,fill:s,group:a,hardline:n,ifBreak:u,indent:i,join:l,line:p,softline:y},utils:{getDocParts:h,replaceTextEndOfLine:g}}=qe(),{getPreferredQuote:c,isNonEmptyArray:f}=Ue(),{locStart:F,locEnd:_}=Jd(),w=zd(),{getNextNode:E,getPreviousNode:N,hasPrettierIgnore:x,isLastNodeOfSiblings:I,isNextNodeOfSomeType:P,isNodeOfSomeType:$,isParentOfSomeType:D,isPreviousNodeOfSomeType:T,isVoid:m,isWhitespaceNode:C}=Kd(),o=2;function d(H,pe,X){let le=H.getValue();if(!le)return"";if(x(H))return pe.originalText.slice(F(le),_(le));let Ae=pe.singleQuote?"'":'"';switch(le.type){case"Block":case"Program":case"Template":return a(H.map(X,"body"));case"ElementNode":{let Ee=a(S(H,X)),De=pe.htmlWhitespaceSensitivity==="ignore"&&P(H,["ElementNode"])?y:"";if(m(le))return[Ee,De];let A=[""];return le.children.length===0?[Ee,i(A),De]:pe.htmlWhitespaceSensitivity==="ignore"?[Ee,i(b(H,pe,X)),n,i(A),De]:[Ee,i(a(b(H,pe,X))),i(A),De]}case"BlockStatement":{let Ee=H.getParentNode(1);return Ee&&Ee.inverse&&Ee.inverse.body.length===1&&Ee.inverse.body[0]===le&&Ee.inverse.body[0].path.parts[0]===Ee.path.parts[0]?[ie(H,X,Ee.inverse.body[0].path.parts[0]),de(H,X,pe),ue(H,X,pe)]:[j(H,X),a([de(H,X,pe),ue(H,X,pe),ee(H,X,pe)])]}case"ElementModifierStatement":return a(["{{",Re(H,X),"}}"]);case"MustacheStatement":return a([k(le),Re(H,X),M(le)]);case"SubExpression":return a(["(",ke(H,X),y,")"]);case"AttrNode":{let Ee=le.value.type==="TextNode";if(Ee&&le.value.chars===""&&F(le.value)===_(le.value))return le.name;let A=Ee?c(le.value.chars,Ae).quote:le.value.type==="ConcatStatement"?c(le.value.parts.filter(re=>re.type==="TextNode").map(re=>re.chars).join(""),Ae).quote:"",G=X("value");return[le.name,"=",A,le.name==="class"&&A?a(i(G)):G,A]}case"ConcatStatement":return H.map(X,"parts");case"Hash":return l(p,H.map(X,"pairs"));case"HashPair":return[le.key,"=",X("value")];case"TextNode":{let Ee=le.chars.replace(/{{/g,"\\{{"),De=U(H);if(De){if(De==="class"){let Ye=Ee.trim().split(/\s+/).join(" "),Se=!1,Ie=!1;return D(H,["ConcatStatement"])&&(T(H,["MustacheStatement"])&&/^\s/.test(Ee)&&(Se=!0),P(H,["MustacheStatement"])&&/\s$/.test(Ee)&&Ye!==""&&(Ie=!0)),[Se?p:"",Ye,Ie?p:""]}return g(Ee)}let G=/^[\t\n\f\r ]*$/.test(Ee),re=!N(H),ye=!E(H);if(pe.htmlWhitespaceSensitivity!=="ignore"){let Ye=/^[\t\n\f\r ]*/,Se=/[\t\n\f\r ]*$/,Ie=ye&&D(H,["Template"]),Oe=re&&D(H,["Template"]);if(G){if(Oe||Ie)return"";let ae=[p],nt=Z(Ee);return nt&&(ae=ge(nt)),I(H)&&(ae=ae.map(tt=>t(tt))),ae}let[Je]=Ee.match(Ye),[Te]=Ee.match(Se),je=[];if(Je){je=[p];let ae=Z(Je);ae&&(je=ge(ae)),Ee=Ee.replace(Ye,"")}let Me=[];if(Te){if(!Ie){Me=[p];let ae=Z(Te);ae&&(Me=ge(ae)),I(H)&&(Me=Me.map(nt=>t(nt)))}Ee=Ee.replace(Se,"")}return[...je,s(Fe(Ee)),...Me]}let Ce=Z(Ee),Be=se(Ee),ve=fe(Ee);if((re||ye)&&G&&D(H,["Block","ElementNode","Template"]))return"";G&&Ce?(Be=Math.min(Ce,o),ve=0):(P(H,["BlockStatement","ElementNode"])&&(ve=Math.max(ve,1)),T(H,["BlockStatement","ElementNode"])&&(Be=Math.max(Be,1)));let ze="",be="";return ve===0&&P(H,["MustacheStatement"])&&(be=" "),Be===0&&T(H,["MustacheStatement"])&&(ze=" "),re&&(Be=0,ze=""),ye&&(ve=0,be=""),Ee=Ee.replace(/^[\t\n\f\r ]+/g,ze).replace(/[\t\n\f\r ]+$/,be),[...ge(Be),s(Fe(Ee)),...ge(ve)]}case"MustacheCommentStatement":{let Ee=F(le),De=_(le),A=pe.originalText.charAt(Ee+2)==="~",G=pe.originalText.charAt(De-3)==="~",re=le.value.includes("}}")?"--":"";return["{{",A?"~":"","!",re,le.value,re,G?"~":"","}}"]}case"PathExpression":return le.original;case"BooleanLiteral":return String(le.value);case"CommentStatement":return[""];case"StringLiteral":{if(we(H)){let Ee=pe.singleQuote?'"':"'";return he(le.value,Ee)}return he(le.value,Ae)}case"NumberLiteral":return String(le.value);case"UndefinedLiteral":return"undefined";case"NullLiteral":return"null";default:throw new Error("unknown glimmer type: "+JSON.stringify(le.type))}}function v(H,pe){return F(H)-F(pe)}function S(H,pe){let X=H.getValue(),le=["attributes","modifiers","comments"].filter(Ee=>f(X[Ee])),Ae=le.flatMap(Ee=>X[Ee]).sort(v);for(let Ee of le)H.each(De=>{let A=Ae.indexOf(De.getValue());Ae.splice(A,1,[p,pe()])},Ee);return f(X.blockParams)&&Ae.push(p,oe(X)),["<",X.tag,i(Ae),B(X)]}function b(H,pe,X){let Ae=H.getValue().children.every(Ee=>C(Ee));return pe.htmlWhitespaceSensitivity==="ignore"&&Ae?"":H.map((Ee,De)=>{let A=X();return De===0&&pe.htmlWhitespaceSensitivity==="ignore"?[y,A]:A},"children")}function B(H){return m(H)?u([y,"/>"],[" />",y]):u([y,">"],">")}function k(H){let pe=H.escaped===!1?"{{{":"{{",X=H.strip&&H.strip.open?"~":"";return[pe,X]}function M(H){let pe=H.escaped===!1?"}}}":"}}";return[H.strip&&H.strip.close?"~":"",pe]}function R(H){let pe=k(H),X=H.openStrip.open?"~":"";return[pe,X,"#"]}function q(H){let pe=M(H);return[H.openStrip.close?"~":"",pe]}function J(H){let pe=k(H),X=H.closeStrip.open?"~":"";return[pe,X,"/"]}function L(H){let pe=M(H);return[H.closeStrip.close?"~":"",pe]}function Q(H){let pe=k(H),X=H.inverseStrip.open?"~":"";return[pe,X]}function V(H){let pe=M(H);return[H.inverseStrip.close?"~":"",pe]}function j(H,pe){let X=H.getValue(),le=[],Ae=Pe(H,pe);return Ae&&le.push(a(Ae)),f(X.program.blockParams)&&le.push(oe(X.program)),a([R(X),Ne(H,pe),le.length>0?i([p,l(p,le)]):"",y,q(X)])}function Y(H,pe){return[pe.htmlWhitespaceSensitivity==="ignore"?n:"",Q(H),"else",V(H)]}function ie(H,pe,X){let le=H.getValue(),Ae=H.getParentNode(1);return a([Q(Ae),["else"," ",X],i([p,a(Pe(H,pe)),...f(le.program.blockParams)?[p,oe(le.program)]:[]]),y,V(Ae)])}function ee(H,pe,X){let le=H.getValue();return X.htmlWhitespaceSensitivity==="ignore"?[ce(le)?y:n,J(le),pe("path"),L(le)]:[J(le),pe("path"),L(le)]}function ce(H){return $(H,["BlockStatement"])&&H.program.body.every(pe=>C(pe))}function W(H){return K(H)&&H.inverse.body.length===1&&$(H.inverse.body[0],["BlockStatement"])&&H.inverse.body[0].path.parts[0]===H.path.parts[0]}function K(H){return $(H,["BlockStatement"])&&H.inverse}function de(H,pe,X){let le=H.getValue();if(ce(le))return"";let Ae=pe("program");return X.htmlWhitespaceSensitivity==="ignore"?i([n,Ae]):i(Ae)}function ue(H,pe,X){let le=H.getValue(),Ae=pe("inverse"),Ee=X.htmlWhitespaceSensitivity==="ignore"?[n,Ae]:Ae;return W(le)?Ee:K(le)?[Y(le,X),i(Ee)]:""}function Fe(H){return h(l(p,z(H)))}function z(H){return H.split(/[\t\n\f\r ]+/)}function U(H){for(let pe=0;pe<2;pe++){let X=H.getParentNode(pe);if(X&&X.type==="AttrNode")return X.name.toLowerCase()}}function Z(H){return H=typeof H=="string"?H:"",H.split(` +`).length-1}function se(H){H=typeof H=="string"?H:"";let pe=(H.match(/^([^\S\n\r]*[\n\r])+/g)||[])[0]||"";return Z(pe)}function fe(H){H=typeof H=="string"?H:"";let pe=(H.match(/([\n\r][^\S\n\r]*)+$/g)||[])[0]||"";return Z(pe)}function ge(){let H=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;return Array.from({length:Math.min(H,o)}).fill(n)}function he(H,pe){let{quote:X,regex:le}=c(H,pe);return[X,H.replace(le,`\\${X}`),X]}function we(H){let pe=0,X=H.getParentNode(pe);for(;X&&$(X,["SubExpression"]);)pe++,X=H.getParentNode(pe);return!!(X&&$(H.getParentNode(pe+1),["ConcatStatement"])&&$(H.getParentNode(pe+2),["AttrNode"]))}function ke(H,pe){let X=Ne(H,pe),le=Pe(H,pe);return le?i([X,p,a(le)]):X}function Re(H,pe){let X=Ne(H,pe),le=Pe(H,pe);return le?[i([X,p,le]),y]:X}function Ne(H,pe){return pe("path")}function Pe(H,pe){let X=H.getValue(),le=[];if(X.params.length>0){let Ae=H.map(pe,"params");le.push(...Ae)}if(X.hash&&X.hash.pairs.length>0){let Ae=pe("hash");le.push(Ae)}return le.length===0?"":l(p,le)}function oe(H){return["as |",H.blockParams.join(" "),"|"]}r.exports={print:d,massageAstNode:w}}}),Qd=te({"src/language-handlebars/parsers.js"(){ne()}}),Zd=te({"node_modules/linguist-languages/data/Handlebars.json"(e,r){r.exports={name:"Handlebars",type:"markup",color:"#f7931e",aliases:["hbs","htmlbars"],extensions:[".handlebars",".hbs"],tmScope:"text.html.handlebars",aceMode:"handlebars",languageId:155}}}),eg=te({"src/language-handlebars/index.js"(e,r){"use strict";ne();var t=_t(),s=Yd(),a=Qd(),n=[t(Zd(),()=>({since:"2.3.0",parsers:["glimmer"],vscodeLanguageIds:["handlebars"]}))],u={glimmer:s};r.exports={languages:n,printers:u,parsers:a}}}),tg=te({"src/language-graphql/pragma.js"(e,r){"use strict";ne();function t(a){return/^\s*#[^\S\n]*@(?:format|prettier)\s*(?:\n|$)/.test(a)}function s(a){return`# @format + +`+a}r.exports={hasPragma:t,insertPragma:s}}}),rg=te({"src/language-graphql/loc.js"(e,r){"use strict";ne();function t(a){return typeof a.start=="number"?a.start:a.loc&&a.loc.start}function s(a){return typeof a.end=="number"?a.end:a.loc&&a.loc.end}r.exports={locStart:t,locEnd:s}}}),ng=te({"src/language-graphql/printer-graphql.js"(e,r){"use strict";ne();var{builders:{join:t,hardline:s,line:a,softline:n,group:u,indent:i,ifBreak:l}}=qe(),{isNextLineEmpty:p,isNonEmptyArray:y}=Ue(),{insertPragma:h}=tg(),{locStart:g,locEnd:c}=rg();function f(P,$,D){let T=P.getValue();if(!T)return"";if(typeof T=="string")return T;switch(T.kind){case"Document":{let m=[];return P.each((C,o,d)=>{m.push(D()),o!==d.length-1&&(m.push(s),p($.originalText,C.getValue(),c)&&m.push(s))},"definitions"),[...m,s]}case"OperationDefinition":{let m=$.originalText[g(T)]!=="{",C=Boolean(T.name);return[m?T.operation:"",m&&C?[" ",D("name")]:"",m&&!C&&y(T.variableDefinitions)?" ":"",y(T.variableDefinitions)?u(["(",i([n,t([l("",", "),n],P.map(D,"variableDefinitions"))]),n,")"]):"",F(P,D,T),T.selectionSet?!m&&!C?"":" ":"",D("selectionSet")]}case"FragmentDefinition":return["fragment ",D("name"),y(T.variableDefinitions)?u(["(",i([n,t([l("",", "),n],P.map(D,"variableDefinitions"))]),n,")"]):""," on ",D("typeCondition"),F(P,D,T)," ",D("selectionSet")];case"SelectionSet":return["{",i([s,t(s,_(P,$,D,"selections"))]),s,"}"];case"Field":return u([T.alias?[D("alias"),": "]:"",D("name"),T.arguments.length>0?u(["(",i([n,t([l("",", "),n],_(P,$,D,"arguments"))]),n,")"]):"",F(P,D,T),T.selectionSet?" ":"",D("selectionSet")]);case"Name":return T.value;case"StringValue":{if(T.block){let m=T.value.replace(/"""/g,"\\$&").split(` +`);return m.length===1&&(m[0]=m[0].trim()),m.every(C=>C==="")&&(m.length=0),t(s,['"""',...m,'"""'])}return['"',T.value.replace(/["\\]/g,"\\$&").replace(/\n/g,"\\n"),'"']}case"IntValue":case"FloatValue":case"EnumValue":return T.value;case"BooleanValue":return T.value?"true":"false";case"NullValue":return"null";case"Variable":return["$",D("name")];case"ListValue":return u(["[",i([n,t([l("",", "),n],P.map(D,"values"))]),n,"]"]);case"ObjectValue":return u(["{",$.bracketSpacing&&T.fields.length>0?" ":"",i([n,t([l("",", "),n],P.map(D,"fields"))]),n,l("",$.bracketSpacing&&T.fields.length>0?" ":""),"}"]);case"ObjectField":case"Argument":return[D("name"),": ",D("value")];case"Directive":return["@",D("name"),T.arguments.length>0?u(["(",i([n,t([l("",", "),n],_(P,$,D,"arguments"))]),n,")"]):""];case"NamedType":return D("name");case"VariableDefinition":return[D("variable"),": ",D("type"),T.defaultValue?[" = ",D("defaultValue")]:"",F(P,D,T)];case"ObjectTypeExtension":case"ObjectTypeDefinition":return[D("description"),T.description?s:"",T.kind==="ObjectTypeExtension"?"extend ":"","type ",D("name"),T.interfaces.length>0?[" implements ",...N(P,$,D)]:"",F(P,D,T),T.fields.length>0?[" {",i([s,t(s,_(P,$,D,"fields"))]),s,"}"]:""];case"FieldDefinition":return[D("description"),T.description?s:"",D("name"),T.arguments.length>0?u(["(",i([n,t([l("",", "),n],_(P,$,D,"arguments"))]),n,")"]):"",": ",D("type"),F(P,D,T)];case"DirectiveDefinition":return[D("description"),T.description?s:"","directive ","@",D("name"),T.arguments.length>0?u(["(",i([n,t([l("",", "),n],_(P,$,D,"arguments"))]),n,")"]):"",T.repeatable?" repeatable":""," on ",t(" | ",P.map(D,"locations"))];case"EnumTypeExtension":case"EnumTypeDefinition":return[D("description"),T.description?s:"",T.kind==="EnumTypeExtension"?"extend ":"","enum ",D("name"),F(P,D,T),T.values.length>0?[" {",i([s,t(s,_(P,$,D,"values"))]),s,"}"]:""];case"EnumValueDefinition":return[D("description"),T.description?s:"",D("name"),F(P,D,T)];case"InputValueDefinition":return[D("description"),T.description?T.description.block?s:a:"",D("name"),": ",D("type"),T.defaultValue?[" = ",D("defaultValue")]:"",F(P,D,T)];case"InputObjectTypeExtension":case"InputObjectTypeDefinition":return[D("description"),T.description?s:"",T.kind==="InputObjectTypeExtension"?"extend ":"","input ",D("name"),F(P,D,T),T.fields.length>0?[" {",i([s,t(s,_(P,$,D,"fields"))]),s,"}"]:""];case"SchemaExtension":return["extend schema",F(P,D,T),...T.operationTypes.length>0?[" {",i([s,t(s,_(P,$,D,"operationTypes"))]),s,"}"]:[]];case"SchemaDefinition":return[D("description"),T.description?s:"","schema",F(P,D,T)," {",T.operationTypes.length>0?i([s,t(s,_(P,$,D,"operationTypes"))]):"",s,"}"];case"OperationTypeDefinition":return[D("operation"),": ",D("type")];case"InterfaceTypeExtension":case"InterfaceTypeDefinition":return[D("description"),T.description?s:"",T.kind==="InterfaceTypeExtension"?"extend ":"","interface ",D("name"),T.interfaces.length>0?[" implements ",...N(P,$,D)]:"",F(P,D,T),T.fields.length>0?[" {",i([s,t(s,_(P,$,D,"fields"))]),s,"}"]:""];case"FragmentSpread":return["...",D("name"),F(P,D,T)];case"InlineFragment":return["...",T.typeCondition?[" on ",D("typeCondition")]:"",F(P,D,T)," ",D("selectionSet")];case"UnionTypeExtension":case"UnionTypeDefinition":return u([D("description"),T.description?s:"",u([T.kind==="UnionTypeExtension"?"extend ":"","union ",D("name"),F(P,D,T),T.types.length>0?[" =",l(""," "),i([l([a," "]),t([a,"| "],P.map(D,"types"))])]:""])]);case"ScalarTypeExtension":case"ScalarTypeDefinition":return[D("description"),T.description?s:"",T.kind==="ScalarTypeExtension"?"extend ":"","scalar ",D("name"),F(P,D,T)];case"NonNullType":return[D("type"),"!"];case"ListType":return["[",D("type"),"]"];default:throw new Error("unknown graphql type: "+JSON.stringify(T.kind))}}function F(P,$,D){if(D.directives.length===0)return"";let T=t(a,P.map($,"directives"));return D.kind==="FragmentDefinition"||D.kind==="OperationDefinition"?u([a,T]):[" ",u(i([n,T]))]}function _(P,$,D,T){return P.map((m,C,o)=>{let d=D();return CD(d),"interfaces");for(let d=0;dT.value.trim()==="prettier-ignore")}r.exports={print:f,massageAstNode:x,hasPrettierIgnore:I,insertPragma:h,printComment:E,canAttachComment:w}}}),ug=te({"src/language-graphql/options.js"(e,r){"use strict";ne();var t=Mt();r.exports={bracketSpacing:t.bracketSpacing}}}),sg=te({"src/language-graphql/parsers.js"(){ne()}}),ig=te({"node_modules/linguist-languages/data/GraphQL.json"(e,r){r.exports={name:"GraphQL",type:"data",color:"#e10098",extensions:[".graphql",".gql",".graphqls"],tmScope:"source.graphql",aceMode:"text",languageId:139}}}),ag=te({"src/language-graphql/index.js"(e,r){"use strict";ne();var t=_t(),s=ng(),a=ug(),n=sg(),u=[t(ig(),()=>({since:"1.5.0",parsers:["graphql"],vscodeLanguageIds:["graphql"]}))],i={graphql:s};r.exports={languages:u,options:a,printers:i,parsers:n}}}),Po=te({"node_modules/collapse-white-space/index.js"(e,r){"use strict";ne(),r.exports=t;function t(s){return String(s).replace(/\s+/g," ")}}}),Io=te({"src/language-markdown/loc.js"(e,r){"use strict";ne();function t(a){return a.position.start.offset}function s(a){return a.position.end.offset}r.exports={locStart:t,locEnd:s}}}),og=te({"src/language-markdown/constants.evaluate.js"(e,r){r.exports={cjkPattern:"(?:[\\u02ea-\\u02eb\\u1100-\\u11ff\\u2e80-\\u2e99\\u2e9b-\\u2ef3\\u2f00-\\u2fd5\\u2ff0-\\u303f\\u3041-\\u3096\\u3099-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312f\\u3131-\\u318e\\u3190-\\u3191\\u3196-\\u31ba\\u31c0-\\u31e3\\u31f0-\\u321e\\u322a-\\u3247\\u3260-\\u327e\\u328a-\\u32b0\\u32c0-\\u32cb\\u32d0-\\u3370\\u337b-\\u337f\\u33e0-\\u33fe\\u3400-\\u4db5\\u4e00-\\u9fef\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufe10-\\ufe1f\\ufe30-\\ufe6f\\uff00-\\uffef]|[\\ud840-\\ud868\\ud86a-\\ud86c\\ud86f-\\ud872\\ud874-\\ud879][\\udc00-\\udfff]|\\ud82c[\\udc00-\\udd1e\\udd50-\\udd52\\udd64-\\udd67]|\\ud83c[\\ude00\\ude50-\\ude51]|\\ud869[\\udc00-\\uded6\\udf00-\\udfff]|\\ud86d[\\udc00-\\udf34\\udf40-\\udfff]|\\ud86e[\\udc00-\\udc1d\\udc20-\\udfff]|\\ud873[\\udc00-\\udea1\\udeb0-\\udfff]|\\ud87a[\\udc00-\\udfe0]|\\ud87e[\\udc00-\\ude1d])(?:[\\ufe00-\\ufe0f]|\\udb40[\\udd00-\\uddef])?",kPattern:"[\\u1100-\\u11ff\\u3001-\\u3003\\u3008-\\u3011\\u3013-\\u301f\\u302e-\\u3030\\u3037\\u30fb\\u3131-\\u318e\\u3200-\\u321e\\u3260-\\u327e\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\ufe45-\\ufe46\\uff61-\\uff65\\uffa0-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc]",punctuationPattern:"[\\u0021-\\u002f\\u003a-\\u0040\\u005b-\\u0060\\u007b-\\u007e\\u00a1\\u00a7\\u00ab\\u00b6-\\u00b7\\u00bb\\u00bf\\u037e\\u0387\\u055a-\\u055f\\u0589-\\u058a\\u05be\\u05c0\\u05c3\\u05c6\\u05f3-\\u05f4\\u0609-\\u060a\\u060c-\\u060d\\u061b\\u061e-\\u061f\\u066a-\\u066d\\u06d4\\u0700-\\u070d\\u07f7-\\u07f9\\u0830-\\u083e\\u085e\\u0964-\\u0965\\u0970\\u09fd\\u0a76\\u0af0\\u0c77\\u0c84\\u0df4\\u0e4f\\u0e5a-\\u0e5b\\u0f04-\\u0f12\\u0f14\\u0f3a-\\u0f3d\\u0f85\\u0fd0-\\u0fd4\\u0fd9-\\u0fda\\u104a-\\u104f\\u10fb\\u1360-\\u1368\\u1400\\u166e\\u169b-\\u169c\\u16eb-\\u16ed\\u1735-\\u1736\\u17d4-\\u17d6\\u17d8-\\u17da\\u1800-\\u180a\\u1944-\\u1945\\u1a1e-\\u1a1f\\u1aa0-\\u1aa6\\u1aa8-\\u1aad\\u1b5a-\\u1b60\\u1bfc-\\u1bff\\u1c3b-\\u1c3f\\u1c7e-\\u1c7f\\u1cc0-\\u1cc7\\u1cd3\\u2010-\\u2027\\u2030-\\u2043\\u2045-\\u2051\\u2053-\\u205e\\u207d-\\u207e\\u208d-\\u208e\\u2308-\\u230b\\u2329-\\u232a\\u2768-\\u2775\\u27c5-\\u27c6\\u27e6-\\u27ef\\u2983-\\u2998\\u29d8-\\u29db\\u29fc-\\u29fd\\u2cf9-\\u2cfc\\u2cfe-\\u2cff\\u2d70\\u2e00-\\u2e2e\\u2e30-\\u2e4f\\u3001-\\u3003\\u3008-\\u3011\\u3014-\\u301f\\u3030\\u303d\\u30a0\\u30fb\\ua4fe-\\ua4ff\\ua60d-\\ua60f\\ua673\\ua67e\\ua6f2-\\ua6f7\\ua874-\\ua877\\ua8ce-\\ua8cf\\ua8f8-\\ua8fa\\ua8fc\\ua92e-\\ua92f\\ua95f\\ua9c1-\\ua9cd\\ua9de-\\ua9df\\uaa5c-\\uaa5f\\uaade-\\uaadf\\uaaf0-\\uaaf1\\uabeb\\ufd3e-\\ufd3f\\ufe10-\\ufe19\\ufe30-\\ufe52\\ufe54-\\ufe61\\ufe63\\ufe68\\ufe6a-\\ufe6b\\uff01-\\uff03\\uff05-\\uff0a\\uff0c-\\uff0f\\uff1a-\\uff1b\\uff1f-\\uff20\\uff3b-\\uff3d\\uff3f\\uff5b\\uff5d\\uff5f-\\uff65]|\\ud800[\\udd00-\\udd02\\udf9f\\udfd0]|\\ud801[\\udd6f]|\\ud802[\\udc57\\udd1f\\udd3f\\ude50-\\ude58\\ude7f\\udef0-\\udef6\\udf39-\\udf3f\\udf99-\\udf9c]|\\ud803[\\udf55-\\udf59]|\\ud804[\\udc47-\\udc4d\\udcbb-\\udcbc\\udcbe-\\udcc1\\udd40-\\udd43\\udd74-\\udd75\\uddc5-\\uddc8\\uddcd\\udddb\\udddd-\\udddf\\ude38-\\ude3d\\udea9]|\\ud805[\\udc4b-\\udc4f\\udc5b\\udc5d\\udcc6\\uddc1-\\uddd7\\ude41-\\ude43\\ude60-\\ude6c\\udf3c-\\udf3e]|\\ud806[\\udc3b\\udde2\\ude3f-\\ude46\\ude9a-\\ude9c\\ude9e-\\udea2]|\\ud807[\\udc41-\\udc45\\udc70-\\udc71\\udef7-\\udef8\\udfff]|\\ud809[\\udc70-\\udc74]|\\ud81a[\\ude6e-\\ude6f\\udef5\\udf37-\\udf3b\\udf44]|\\ud81b[\\ude97-\\ude9a\\udfe2]|\\ud82f[\\udc9f]|\\ud836[\\ude87-\\ude8b]|\\ud83a[\\udd5e-\\udd5f]"}}}),iu=te({"src/language-markdown/utils.js"(e,r){"use strict";ne();var{getLast:t}=Ue(),{locStart:s,locEnd:a}=Io(),{cjkPattern:n,kPattern:u,punctuationPattern:i}=og(),l=["liquidNode","inlineCode","emphasis","esComment","strong","delete","wikiLink","link","linkReference","image","imageReference","footnote","footnoteReference","sentence","whitespace","word","break","inlineMath"],p=[...l,"tableCell","paragraph","heading"],y=new RegExp(u),h=new RegExp(i);function g(E,N){let x="non-cjk",I="cj-letter",P="k-letter",$="cjk-punctuation",D=[],T=(N.proseWrap==="preserve"?E:E.replace(new RegExp(`(${n}) +(${n})`,"g"),"$1$2")).split(/([\t\n ]+)/);for(let[C,o]of T.entries()){if(C%2===1){D.push({type:"whitespace",value:/\n/.test(o)?` +`:" "});continue}if((C===0||C===T.length-1)&&o==="")continue;let d=o.split(new RegExp(`(${n})`));for(let[v,S]of d.entries())if(!((v===0||v===d.length-1)&&S==="")){if(v%2===0){S!==""&&m({type:"word",value:S,kind:x,hasLeadingPunctuation:h.test(S[0]),hasTrailingPunctuation:h.test(t(S))});continue}m(h.test(S)?{type:"word",value:S,kind:$,hasLeadingPunctuation:!0,hasTrailingPunctuation:!0}:{type:"word",value:S,kind:y.test(S)?P:I,hasLeadingPunctuation:!1,hasTrailingPunctuation:!1})}}return D;function m(C){let o=t(D);o&&o.type==="word"&&(o.kind===x&&C.kind===I&&!o.hasTrailingPunctuation||o.kind===I&&C.kind===x&&!C.hasLeadingPunctuation?D.push({type:"whitespace",value:" "}):!d(x,$)&&![o.value,C.value].some(v=>/\u3000/.test(v))&&D.push({type:"whitespace",value:""})),D.push(C);function d(v,S){return o.kind===v&&C.kind===S||o.kind===S&&C.kind===v}}}function c(E,N){let[,x,I,P]=N.slice(E.position.start.offset,E.position.end.offset).match(/^\s*(\d+)(\.|\))(\s*)/);return{numberText:x,marker:I,leadingSpaces:P}}function f(E,N){if(!E.ordered||E.children.length<2)return!1;let x=Number(c(E.children[0],N.originalText).numberText),I=Number(c(E.children[1],N.originalText).numberText);if(x===0&&E.children.length>2){let P=Number(c(E.children[2],N.originalText).numberText);return I===1&&P===1}return I===1}function F(E,N){let{value:x}=E;return E.position.end.offset===N.length&&x.endsWith(` +`)&&N.endsWith(` +`)?x.slice(0,-1):x}function _(E,N){return function x(I,P,$){let D=Object.assign({},N(I,P,$));return D.children&&(D.children=D.children.map((T,m)=>x(T,m,[D,...$]))),D}(E,null,[])}function w(E){if((E==null?void 0:E.type)!=="link"||E.children.length!==1)return!1;let[N]=E.children;return s(E)===s(N)&&a(E)===a(N)}r.exports={mapAst:_,splitText:g,punctuationPattern:i,getFencedCodeBlockValue:F,getOrderedListItemInfo:c,hasGitDiffFriendlyOrderedList:f,INLINE_NODE_TYPES:l,INLINE_NODE_WRAPPER_TYPES:p,isAutolink:w}}}),lg=te({"src/language-markdown/embed.js"(e,r){"use strict";ne();var{inferParserByLanguage:t,getMaxContinuousCount:s}=Ue(),{builders:{hardline:a,markAsRoot:n},utils:{replaceEndOfLine:u}}=qe(),i=su(),{getFencedCodeBlockValue:l}=iu();function p(y,h,g,c){let f=y.getValue();if(f.type==="code"&&f.lang!==null){let F=t(f.lang,c);if(F){let _=c.__inJsTemplate?"~":"`",w=_.repeat(Math.max(3,s(f.value,_)+1)),E={parser:F};f.lang==="tsx"&&(E.filepath="dummy.tsx");let N=g(l(f,c.originalText),E,{stripTrailingHardline:!0});return n([w,f.lang,f.meta?" "+f.meta:"",a,u(N),a,w])}}switch(f.type){case"front-matter":return i(f,g);case"importExport":return[g(f.value,{parser:"babel"},{stripTrailingHardline:!0}),a];case"jsx":return g(`<$>${f.value}`,{parser:"__js_expression",rootMarker:"mdx"},{stripTrailingHardline:!0})}return null}r.exports=p}}),ko=te({"src/language-markdown/pragma.js"(e,r){"use strict";ne();var t=_o(),s=["format","prettier"];function a(n){let u=`@(${s.join("|")})`,i=new RegExp([``,`{\\s*\\/\\*\\s*${u}\\s*\\*\\/\\s*}`,``].join("|"),"m"),l=n.match(i);return(l==null?void 0:l.index)===0}r.exports={startWithPragma:a,hasPragma:n=>a(t(n).content.trimStart()),insertPragma:n=>{let u=t(n),i=``;return u.frontMatter?`${u.frontMatter.raw} + +${i} + +${u.content}`:`${i} + +${u.content}`}}}}),cg=te({"src/language-markdown/print-preprocess.js"(e,r){"use strict";ne();var t=lt(),{getOrderedListItemInfo:s,mapAst:a,splitText:n}=iu(),u=/^.$/su;function i(w,E){return w=y(w,E),w=c(w),w=p(w,E),w=F(w,E),w=_(w,E),w=f(w,E),w=l(w),w=h(w),w}function l(w){return a(w,E=>E.type!=="import"&&E.type!=="export"?E:Object.assign(Object.assign({},E),{},{type:"importExport"}))}function p(w,E){return a(w,N=>N.type!=="inlineCode"||E.proseWrap==="preserve"?N:Object.assign(Object.assign({},N),{},{value:N.value.replace(/\s+/g," ")}))}function y(w,E){return a(w,N=>N.type!=="text"||N.value==="*"||N.value==="_"||!u.test(N.value)||N.position.end.offset-N.position.start.offset===N.value.length?N:Object.assign(Object.assign({},N),{},{value:E.originalText.slice(N.position.start.offset,N.position.end.offset)}))}function h(w){return g(w,(E,N)=>E.type==="importExport"&&N.type==="importExport",(E,N)=>({type:"importExport",value:E.value+` + +`+N.value,position:{start:E.position.start,end:N.position.end}}))}function g(w,E,N){return a(w,x=>{if(!x.children)return x;let I=x.children.reduce((P,$)=>{let D=t(P);return D&&E(D,$)?P.splice(-1,1,N(D,$)):P.push($),P},[]);return Object.assign(Object.assign({},x),{},{children:I})})}function c(w){return g(w,(E,N)=>E.type==="text"&&N.type==="text",(E,N)=>({type:"text",value:E.value+N.value,position:{start:E.position.start,end:N.position.end}}))}function f(w,E){return a(w,(N,x,I)=>{let[P]=I;if(N.type!=="text")return N;let{value:$}=N;return P.type==="paragraph"&&(x===0&&($=$.trimStart()),x===P.children.length-1&&($=$.trimEnd())),{type:"sentence",position:N.position,children:n($,E)}})}function F(w,E){return a(w,(N,x,I)=>{if(N.type==="code"){let P=/^\n?(?: {4,}|\t)/.test(E.originalText.slice(N.position.start.offset,N.position.end.offset));if(N.isIndented=P,P)for(let $=0;${if(I.type==="list"&&I.children.length>0){for(let D=0;D<$.length;D++){let T=$[D];if(T.type==="list"&&!T.isAligned)return I.isAligned=!1,I}I.isAligned=x(I)}return I});function N(I){return I.children.length===0?-1:I.children[0].position.start.column-1}function x(I){if(!I.ordered)return!0;let[P,$]=I.children;if(s(P,E.originalText).leadingSpaces.length>1)return!0;let T=N(P);if(T===-1)return!1;if(I.children.length===1)return T%E.tabWidth===0;let m=N($);return T!==m?!1:T%E.tabWidth===0?!0:s($,E.originalText).leadingSpaces.length>1}}r.exports=i}}),pg=te({"src/language-markdown/clean.js"(e,r){"use strict";ne();var t=Po(),{isFrontMatterNode:s}=Ue(),{startWithPragma:a}=ko(),n=new Set(["position","raw"]);function u(i,l,p){if((i.type==="front-matter"||i.type==="code"||i.type==="yaml"||i.type==="import"||i.type==="export"||i.type==="jsx")&&delete l.value,i.type==="list"&&delete l.isAligned,(i.type==="list"||i.type==="listItem")&&(delete l.spread,delete l.loose),i.type==="text"||(i.type==="inlineCode"&&(l.value=i.value.replace(/[\t\n ]+/g," ")),i.type==="wikiLink"&&(l.value=i.value.trim().replace(/[\t\n]+/g," ")),(i.type==="definition"||i.type==="linkReference"||i.type==="imageReference")&&(l.label=t(i.label)),(i.type==="definition"||i.type==="link"||i.type==="image")&&i.title&&(l.title=i.title.replace(/\\(["')])/g,"$1")),p&&p.type==="root"&&p.children.length>0&&(p.children[0]===i||s(p.children[0])&&p.children[1]===i)&&i.type==="html"&&a(i.value)))return null}u.ignoredProperties=n,r.exports=u}}),fg=te({"src/language-markdown/printer-markdown.js"(e,r){"use strict";ne();var t=Po(),{getLast:s,getMinNotPresentContinuousCount:a,getMaxContinuousCount:n,getStringWidth:u,isNonEmptyArray:i}=Ue(),{builders:{breakParent:l,join:p,line:y,literalline:h,markAsRoot:g,hardline:c,softline:f,ifBreak:F,fill:_,align:w,indent:E,group:N,hardlineWithoutBreakParent:x},utils:{normalizeDoc:I,replaceTextEndOfLine:P},printer:{printDocToString:$}}=qe(),D=lg(),{insertPragma:T}=ko(),{locStart:m,locEnd:C}=Io(),o=cg(),d=pg(),{getFencedCodeBlockValue:v,hasGitDiffFriendlyOrderedList:S,splitText:b,punctuationPattern:B,INLINE_NODE_TYPES:k,INLINE_NODE_WRAPPER_TYPES:M,isAutolink:R}=iu(),q=new Set(["importExport"]),J=["heading","tableCell","link","wikiLink"],L=new Set(["listItem","definition","footnoteDefinition"]);function Q(oe,H,pe){let X=oe.getValue();if(ge(oe))return b(H.originalText.slice(X.position.start.offset,X.position.end.offset),H).map(le=>le.type==="word"?le.value:le.value===""?"":W(oe,le.value,H));switch(X.type){case"front-matter":return H.originalText.slice(X.position.start.offset,X.position.end.offset);case"root":return X.children.length===0?"":[I(de(oe,H,pe)),q.has(z(X).type)?"":c];case"paragraph":return ue(oe,H,pe,{postprocessor:_});case"sentence":return ue(oe,H,pe);case"word":{let le=X.value.replace(/\*/g,"\\$&").replace(new RegExp([`(^|${B})(_+)`,`(_+)(${B}|$)`].join("|"),"g"),(De,A,G,re,ye)=>(G?`${A}${G}`:`${re}${ye}`).replace(/_/g,"\\_")),Ae=(De,A,G)=>De.type==="sentence"&&G===0,Ee=(De,A,G)=>R(De.children[G-1]);return le!==X.value&&(oe.match(void 0,Ae,Ee)||oe.match(void 0,Ae,(De,A,G)=>De.type==="emphasis"&&G===0,Ee))&&(le=le.replace(/^(\\?[*_])+/,De=>De.replace(/\\/g,""))),le}case"whitespace":{let le=oe.getParentNode(),Ae=le.children.indexOf(X),Ee=le.children[Ae+1],De=Ee&&/^>|^(?:[*+-]|#{1,6}|\d+[).])$/.test(Ee.value)?"never":H.proseWrap;return W(oe,X.value,{proseWrap:De})}case"emphasis":{let le;if(R(X.children[0]))le=H.originalText[X.position.start.offset];else{let Ae=oe.getParentNode(),Ee=Ae.children.indexOf(X),De=Ae.children[Ee-1],A=Ae.children[Ee+1];le=De&&De.type==="sentence"&&De.children.length>0&&s(De.children).type==="word"&&!s(De.children).hasTrailingPunctuation||A&&A.type==="sentence"&&A.children.length>0&&A.children[0].type==="word"&&!A.children[0].hasLeadingPunctuation||ce(oe,"emphasis")?"*":"_"}return[le,ue(oe,H,pe),le]}case"strong":return["**",ue(oe,H,pe),"**"];case"delete":return["~~",ue(oe,H,pe),"~~"];case"inlineCode":{let le=a(X.value,"`"),Ae="`".repeat(le||1),Ee=le&&!/^\s/.test(X.value)?" ":"";return[Ae,Ee,X.value,Ee,Ae]}case"wikiLink":{let le="";return H.proseWrap==="preserve"?le=X.value:le=X.value.replace(/[\t\n]+/g," "),["[[",le,"]]"]}case"link":switch(H.originalText[X.position.start.offset]){case"<":{let le="mailto:";return["<",X.url.startsWith(le)&&H.originalText.slice(X.position.start.offset+1,X.position.start.offset+1+le.length)!==le?X.url.slice(le.length):X.url,">"]}case"[":return["[",ue(oe,H,pe),"](",he(X.url,")"),we(X.title,H),")"];default:return H.originalText.slice(X.position.start.offset,X.position.end.offset)}case"image":return["![",X.alt||"","](",he(X.url,")"),we(X.title,H),")"];case"blockquote":return["> ",w("> ",ue(oe,H,pe))];case"heading":return["#".repeat(X.depth)+" ",ue(oe,H,pe)];case"code":{if(X.isIndented){let Ee=" ".repeat(4);return w(Ee,[Ee,...P(X.value,c)])}let le=H.__inJsTemplate?"~":"`",Ae=le.repeat(Math.max(3,n(X.value,le)+1));return[Ae,X.lang||"",X.meta?" "+X.meta:"",c,...P(v(X,H.originalText),c),c,Ae]}case"html":{let le=oe.getParentNode(),Ae=le.type==="root"&&s(le.children)===X?X.value.trimEnd():X.value,Ee=/^$/s.test(Ae);return P(Ae,Ee?c:g(h))}case"list":{let le=Y(X,oe.getParentNode()),Ae=S(X,H);return ue(oe,H,pe,{processor:(Ee,De)=>{let A=re(),G=Ee.getValue();if(G.children.length===2&&G.children[1].type==="html"&&G.children[0].position.start.column!==G.children[1].position.start.column)return[A,V(Ee,H,pe,A)];return[A,w(" ".repeat(A.length),V(Ee,H,pe,A))];function re(){let ye=X.ordered?(De===0?X.start:Ae?1:X.start+De)+(le%2===0?". ":") "):le%2===0?"- ":"* ";return X.isAligned||X.hasIndentedCodeblock?j(ye,H):ye}}})}case"thematicBreak":{let le=ee(oe,"list");return le===-1?"---":Y(oe.getParentNode(le),oe.getParentNode(le+1))%2===0?"***":"---"}case"linkReference":return["[",ue(oe,H,pe),"]",X.referenceType==="full"?Ne(X):X.referenceType==="collapsed"?"[]":""];case"imageReference":switch(X.referenceType){case"full":return["![",X.alt||"","]",Ne(X)];default:return["![",X.alt,"]",X.referenceType==="collapsed"?"[]":""]}case"definition":{let le=H.proseWrap==="always"?y:" ";return N([Ne(X),":",E([le,he(X.url),X.title===null?"":[le,we(X.title,H,!1)]])])}case"footnote":return["[^",ue(oe,H,pe),"]"];case"footnoteReference":return Pe(X);case"footnoteDefinition":{let le=oe.getParentNode().children[oe.getName()+1],Ae=X.children.length===1&&X.children[0].type==="paragraph"&&(H.proseWrap==="never"||H.proseWrap==="preserve"&&X.children[0].position.start.line===X.children[0].position.end.line);return[Pe(X),": ",Ae?ue(oe,H,pe):N([w(" ".repeat(4),ue(oe,H,pe,{processor:(Ee,De)=>De===0?N([f,pe()]):pe()})),le&&le.type==="footnoteDefinition"?f:""])]}case"table":return K(oe,H,pe);case"tableCell":return ue(oe,H,pe);case"break":return/\s/.test(H.originalText[X.position.start.offset])?[" ",g(h)]:["\\",c];case"liquidNode":return P(X.value,c);case"importExport":return[X.value,c];case"esComment":return["{/* ",X.value," */}"];case"jsx":return X.value;case"math":return["$$",c,X.value?[...P(X.value,c),c]:"","$$"];case"inlineMath":return H.originalText.slice(m(X),C(X));case"tableRow":case"listItem":default:throw new Error(`Unknown markdown type ${JSON.stringify(X.type)}`)}}function V(oe,H,pe,X){let le=oe.getValue(),Ae=le.checked===null?"":le.checked?"[x] ":"[ ] ";return[Ae,ue(oe,H,pe,{processor:(Ee,De)=>{if(De===0&&Ee.getValue().type!=="list")return w(" ".repeat(Ae.length),pe());let A=" ".repeat(ke(H.tabWidth-X.length,0,3));return[A,w(A,pe())]}})]}function j(oe,H){let pe=X();return oe+" ".repeat(pe>=4?0:pe);function X(){let le=oe.length%H.tabWidth;return le===0?0:H.tabWidth-le}}function Y(oe,H){return ie(oe,H,pe=>pe.ordered===oe.ordered)}function ie(oe,H,pe){let X=-1;for(let le of H.children)if(le.type===oe.type&&pe(le)?X++:X=-1,le===oe)return X}function ee(oe,H){let pe=Array.isArray(H)?H:[H],X=-1,le;for(;le=oe.getParentNode(++X);)if(pe.includes(le.type))return X;return-1}function ce(oe,H){let pe=ee(oe,H);return pe===-1?null:oe.getParentNode(pe)}function W(oe,H,pe){if(pe.proseWrap==="preserve"&&H===` +`)return c;let X=pe.proseWrap==="always"&&!ce(oe,J);return H!==""?X?y:" ":X?f:""}function K(oe,H,pe){let X=oe.getValue(),le=[],Ae=oe.map(ye=>ye.map((Ce,Be)=>{let ve=$(pe(),H).formatted,ze=u(ve);return le[Be]=Math.max(le[Be]||3,ze),{text:ve,width:ze}},"children"),"children"),Ee=A(!1);if(H.proseWrap!=="never")return[l,Ee];let De=A(!0);return[l,N(F(De,Ee))];function A(ye){let Ce=[re(Ae[0],ye),G(ye)];return Ae.length>1&&Ce.push(p(x,Ae.slice(1).map(Be=>re(Be,ye)))),p(x,Ce)}function G(ye){return`| ${le.map((Be,ve)=>{let ze=X.align[ve],be=ze==="center"||ze==="left"?":":"-",Ye=ze==="center"||ze==="right"?":":"-",Se=ye?"-":"-".repeat(Be-2);return`${be}${Se}${Ye}`}).join(" | ")} |`}function re(ye,Ce){return`| ${ye.map((ve,ze)=>{let{text:be,width:Ye}=ve;if(Ce)return be;let Se=le[ze]-Ye,Ie=X.align[ze],Oe=0;Ie==="right"?Oe=Se:Ie==="center"&&(Oe=Math.floor(Se/2));let Je=Se-Oe;return`${" ".repeat(Oe)}${be}${" ".repeat(Je)}`}).join(" | ")} |`}}function de(oe,H,pe){let X=[],le=null,{children:Ae}=oe.getValue();for(let[Ee,De]of Ae.entries())switch(U(De)){case"start":le===null&&(le={index:Ee,offset:De.position.end.offset});break;case"end":le!==null&&(X.push({start:le,end:{index:Ee,offset:De.position.start.offset}}),le=null);break;default:break}return ue(oe,H,pe,{processor:(Ee,De)=>{if(X.length>0){let A=X[0];if(De===A.start.index)return[Fe(Ae[A.start.index]),H.originalText.slice(A.start.offset,A.end.offset),Fe(Ae[A.end.index])];if(A.start.index3&&arguments[3]!==void 0?arguments[3]:{},{postprocessor:le}=X,Ae=X.processor||(()=>pe()),Ee=oe.getValue(),De=[],A;return oe.each((G,re)=>{let ye=G.getValue(),Ce=Ae(G,re);if(Ce!==!1){let Be={parts:De,prevNode:A,parentNode:Ee,options:H};Z(ye,Be)&&(De.push(c),A&&q.has(A.type)||(se(ye,Be)||fe(ye,Be))&&De.push(c),fe(ye,Be)&&De.push(c)),De.push(Ce),A=ye}},"children"),le?le(De):De}function Fe(oe){if(oe.type==="html")return oe.value;if(oe.type==="paragraph"&&Array.isArray(oe.children)&&oe.children.length===1&&oe.children[0].type==="esComment")return["{/* ",oe.children[0].value," */}"]}function z(oe){let H=oe;for(;i(H.children);)H=s(H.children);return H}function U(oe){let H;if(oe.type==="html")H=oe.value.match(/^$/);else{let pe;oe.type==="esComment"?pe=oe:oe.type==="paragraph"&&oe.children.length===1&&oe.children[0].type==="esComment"&&(pe=oe.children[0]),pe&&(H=pe.value.match(/^prettier-ignore(?:-(start|end))?$/))}return H?H[1]||"next":!1}function Z(oe,H){let pe=H.parts.length===0,X=k.includes(oe.type),le=oe.type==="html"&&M.includes(H.parentNode.type);return!pe&&!X&&!le}function se(oe,H){var pe,X,le;let Ee=(H.prevNode&&H.prevNode.type)===oe.type&&L.has(oe.type),De=H.parentNode.type==="listItem"&&!H.parentNode.loose,A=((pe=H.prevNode)===null||pe===void 0?void 0:pe.type)==="listItem"&&H.prevNode.loose,G=U(H.prevNode)==="next",re=oe.type==="html"&&((X=H.prevNode)===null||X===void 0?void 0:X.type)==="html"&&H.prevNode.position.end.line+1===oe.position.start.line,ye=oe.type==="html"&&H.parentNode.type==="listItem"&&((le=H.prevNode)===null||le===void 0?void 0:le.type)==="paragraph"&&H.prevNode.position.end.line+1===oe.position.start.line;return A||!(Ee||De||G||re||ye)}function fe(oe,H){let pe=H.prevNode&&H.prevNode.type==="list",X=oe.type==="code"&&oe.isIndented;return pe&&X}function ge(oe){let H=ce(oe,["linkReference","imageReference"]);return H&&(H.type!=="linkReference"||H.referenceType!=="full")}function he(oe){let H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],pe=[" ",...Array.isArray(H)?H:[H]];return new RegExp(pe.map(X=>`\\${X}`).join("|")).test(oe)?`<${oe}>`:oe}function we(oe,H){let pe=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!oe)return"";if(pe)return" "+we(oe,H,!1);if(oe=oe.replace(/\\(["')])/g,"$1"),oe.includes('"')&&oe.includes("'")&&!oe.includes(")"))return`(${oe})`;let X=oe.split("'").length-1,le=oe.split('"').length-1,Ae=X>le?'"':le>X||H.singleQuote?"'":'"';return oe=oe.replace(/\\/,"\\\\"),oe=oe.replace(new RegExp(`(${Ae})`,"g"),"\\$1"),`${Ae}${oe}${Ae}`}function ke(oe,H,pe){return oepe?pe:oe}function Re(oe){let H=Number(oe.getName());if(H===0)return!1;let pe=oe.getParentNode().children[H-1];return U(pe)==="next"}function Ne(oe){return`[${t(oe.label)}]`}function Pe(oe){return`[^${oe.label}]`}r.exports={preprocess:o,print:Q,embed:D,massageAstNode:d,hasPrettierIgnore:Re,insertPragma:T}}}),Dg=te({"src/language-markdown/options.js"(e,r){"use strict";ne();var t=Mt();r.exports={proseWrap:t.proseWrap,singleQuote:t.singleQuote}}}),mg=te({"src/language-markdown/parsers.js"(){ne()}}),_a=te({"node_modules/linguist-languages/data/Markdown.json"(e,r){r.exports={name:"Markdown",type:"prose",color:"#083fa1",aliases:["pandoc"],aceMode:"markdown",codemirrorMode:"gfm",codemirrorMimeType:"text/x-gfm",wrap:!0,extensions:[".md",".livemd",".markdown",".mdown",".mdwn",".mdx",".mkd",".mkdn",".mkdown",".ronn",".scd",".workbook"],filenames:["contents.lr"],tmScope:"source.gfm",languageId:222}}}),dg=te({"src/language-markdown/index.js"(e,r){"use strict";ne();var t=_t(),s=fg(),a=Dg(),n=mg(),u=[t(_a(),l=>({since:"1.8.0",parsers:["markdown"],vscodeLanguageIds:["markdown"],filenames:[...l.filenames,"README"],extensions:l.extensions.filter(p=>p!==".mdx")})),t(_a(),()=>({name:"MDX",since:"1.15.0",parsers:["mdx"],vscodeLanguageIds:["mdx"],filenames:[],extensions:[".mdx"]}))],i={mdast:s};r.exports={languages:u,options:a,printers:i,parsers:n}}}),gg=te({"src/language-html/clean.js"(e,r){"use strict";ne();var{isFrontMatterNode:t}=Ue(),s=new Set(["sourceSpan","startSourceSpan","endSourceSpan","nameSpan","valueSpan"]);function a(n,u){if(n.type==="text"||n.type==="comment"||t(n)||n.type==="yaml"||n.type==="toml")return null;n.type==="attribute"&&delete u.value,n.type==="docType"&&delete u.value}a.ignoredProperties=s,r.exports=a}}),yg=te({"src/language-html/constants.evaluate.js"(e,r){r.exports={CSS_DISPLAY_TAGS:{area:"none",base:"none",basefont:"none",datalist:"none",head:"none",link:"none",meta:"none",noembed:"none",noframes:"none",param:"block",rp:"none",script:"block",source:"block",style:"none",template:"inline",track:"block",title:"none",html:"block",body:"block",address:"block",blockquote:"block",center:"block",div:"block",figure:"block",figcaption:"block",footer:"block",form:"block",header:"block",hr:"block",legend:"block",listing:"block",main:"block",p:"block",plaintext:"block",pre:"block",xmp:"block",slot:"contents",ruby:"ruby",rt:"ruby-text",article:"block",aside:"block",h1:"block",h2:"block",h3:"block",h4:"block",h5:"block",h6:"block",hgroup:"block",nav:"block",section:"block",dir:"block",dd:"block",dl:"block",dt:"block",ol:"block",ul:"block",li:"list-item",table:"table",caption:"table-caption",colgroup:"table-column-group",col:"table-column",thead:"table-header-group",tbody:"table-row-group",tfoot:"table-footer-group",tr:"table-row",td:"table-cell",th:"table-cell",fieldset:"block",button:"inline-block",details:"block",summary:"block",dialog:"block",meter:"inline-block",progress:"inline-block",object:"inline-block",video:"inline-block",audio:"inline-block",select:"inline-block",option:"block",optgroup:"block"},CSS_DISPLAY_DEFAULT:"inline",CSS_WHITE_SPACE_TAGS:{listing:"pre",plaintext:"pre",pre:"pre",xmp:"pre",nobr:"nowrap",table:"initial",textarea:"pre-wrap"},CSS_WHITE_SPACE_DEFAULT:"normal"}}}),hg=te({"src/language-html/utils/is-unknown-namespace.js"(e,r){"use strict";ne();function t(s){return s.type==="element"&&!s.hasExplicitNamespace&&!["html","svg"].includes(s.namespace)}r.exports=t}}),Rt=te({"src/language-html/utils/index.js"(e,r){"use strict";ne();var{inferParserByLanguage:t,isFrontMatterNode:s}=Ue(),{builders:{line:a,hardline:n,join:u},utils:{getDocParts:i,replaceTextEndOfLine:l}}=qe(),{CSS_DISPLAY_TAGS:p,CSS_DISPLAY_DEFAULT:y,CSS_WHITE_SPACE_TAGS:h,CSS_WHITE_SPACE_DEFAULT:g}=yg(),c=hg(),f=new Set([" ",` +`,"\f","\r"," "]),F=A=>A.replace(/^[\t\n\f\r ]+/,""),_=A=>A.replace(/[\t\n\f\r ]+$/,""),w=A=>F(_(A)),E=A=>A.replace(/^[\t\f\r ]*\n/g,""),N=A=>E(_(A)),x=A=>A.split(/[\t\n\f\r ]+/),I=A=>A.match(/^[\t\n\f\r ]*/)[0],P=A=>{let[,G,re,ye]=A.match(/^([\t\n\f\r ]*)(.*?)([\t\n\f\r ]*)$/s);return{leadingWhitespace:G,trailingWhitespace:ye,text:re}},$=A=>/[\t\n\f\r ]/.test(A);function D(A,G){return!!(A.type==="ieConditionalComment"&&A.lastChild&&!A.lastChild.isSelfClosing&&!A.lastChild.endSourceSpan||A.type==="ieConditionalComment"&&!A.complete||se(A)&&A.children.some(re=>re.type!=="text"&&re.type!=="interpolation")||X(A,G)&&!o(A)&&A.type!=="interpolation")}function T(A){return A.type==="attribute"||!A.parent||!A.prev?!1:m(A.prev)}function m(A){return A.type==="comment"&&A.value.trim()==="prettier-ignore"}function C(A){return A.type==="text"||A.type==="comment"}function o(A){return A.type==="element"&&(A.fullName==="script"||A.fullName==="style"||A.fullName==="svg:style"||c(A)&&(A.name==="script"||A.name==="style"))}function d(A){return A.children&&!o(A)}function v(A){return o(A)||A.type==="interpolation"||S(A)}function S(A){return we(A).startsWith("pre")}function b(A,G){let re=ye();if(re&&!A.prev&&A.parent&&A.parent.tagDefinition&&A.parent.tagDefinition.ignoreFirstLf)return A.type==="interpolation";return re;function ye(){return s(A)?!1:(A.type==="text"||A.type==="interpolation")&&A.prev&&(A.prev.type==="text"||A.prev.type==="interpolation")?!0:!A.parent||A.parent.cssDisplay==="none"?!1:se(A.parent)?!0:!(!A.prev&&(A.parent.type==="root"||se(A)&&A.parent||o(A.parent)||H(A.parent,G)||!ue(A.parent.cssDisplay))||A.prev&&!U(A.prev.cssDisplay))}}function B(A,G){return s(A)?!1:(A.type==="text"||A.type==="interpolation")&&A.next&&(A.next.type==="text"||A.next.type==="interpolation")?!0:!A.parent||A.parent.cssDisplay==="none"?!1:se(A.parent)?!0:!(!A.next&&(A.parent.type==="root"||se(A)&&A.parent||o(A.parent)||H(A.parent,G)||!Fe(A.parent.cssDisplay))||A.next&&!z(A.next.cssDisplay))}function k(A){return Z(A.cssDisplay)&&!o(A)}function M(A){return s(A)||A.next&&A.sourceSpan.end&&A.sourceSpan.end.line+10&&(["body","script","style"].includes(A.name)||A.children.some(G=>ee(G)))||A.firstChild&&A.firstChild===A.lastChild&&A.firstChild.type!=="text"&&V(A.firstChild)&&(!A.lastChild.isTrailingSpaceSensitive||j(A.lastChild))}function q(A){return A.type==="element"&&A.children.length>0&&(["html","head","ul","ol","select"].includes(A.name)||A.cssDisplay.startsWith("table")&&A.cssDisplay!=="table-cell")}function J(A){return Y(A)||A.prev&&L(A.prev)||Q(A)}function L(A){return Y(A)||A.type==="element"&&A.fullName==="br"||Q(A)}function Q(A){return V(A)&&j(A)}function V(A){return A.hasLeadingSpaces&&(A.prev?A.prev.sourceSpan.end.lineA.sourceSpan.end.line:A.parent.type==="root"||A.parent.endSourceSpan&&A.parent.endSourceSpan.start.line>A.sourceSpan.end.line)}function Y(A){switch(A.type){case"ieConditionalComment":case"comment":case"directive":return!0;case"element":return["script","select"].includes(A.name)}return!1}function ie(A){return A.lastChild?ie(A.lastChild):A}function ee(A){return A.children&&A.children.some(G=>G.type!=="text")}function ce(A){let{type:G,lang:re}=A.attrMap;if(G==="module"||G==="text/javascript"||G==="text/babel"||G==="application/javascript"||re==="jsx")return"babel";if(G==="application/x-typescript"||re==="ts"||re==="tsx")return"typescript";if(G==="text/markdown")return"markdown";if(G==="text/html")return"html";if(G&&(G.endsWith("json")||G.endsWith("importmap"))||G==="speculationrules")return"json";if(G==="text/x-handlebars-template")return"glimmer"}function W(A,G){let{lang:re}=A.attrMap;if(!re||re==="postcss"||re==="css")return"css";if(re==="scss")return"scss";if(re==="less")return"less";if(re==="stylus")return t("stylus",G)}function K(A,G){if(A.name==="script"&&!A.attrMap.src)return!A.attrMap.lang&&!A.attrMap.type?"babel":ce(A);if(A.name==="style")return W(A,G);if(G&&X(A,G))return ce(A)||!("src"in A.attrMap)&&t(A.attrMap.lang,G)}function de(A){return A==="block"||A==="list-item"||A.startsWith("table")}function ue(A){return!de(A)&&A!=="inline-block"}function Fe(A){return!de(A)&&A!=="inline-block"}function z(A){return!de(A)}function U(A){return!de(A)}function Z(A){return!de(A)&&A!=="inline-block"}function se(A){return we(A).startsWith("pre")}function fe(A,G){let re=0;for(let ye=A.stack.length-1;ye>=0;ye--){let Ce=A.stack[ye];Ce&&typeof Ce=="object"&&!Array.isArray(Ce)&&G(Ce)&&re++}return re}function ge(A,G){let re=A;for(;re;){if(G(re))return!0;re=re.parent}return!1}function he(A,G){if(A.prev&&A.prev.type==="comment"){let ye=A.prev.value.match(/^\s*display:\s*([a-z]+)\s*$/);if(ye)return ye[1]}let re=!1;if(A.type==="element"&&A.namespace==="svg")if(ge(A,ye=>ye.fullName==="svg:foreignObject"))re=!0;else return A.name==="svg"?"inline-block":"block";switch(G.htmlWhitespaceSensitivity){case"strict":return"inline";case"ignore":return"block";default:return G.parser==="vue"&&A.parent&&A.parent.type==="root"?"block":A.type==="element"&&(!A.namespace||re||c(A))&&p[A.name]||y}}function we(A){return A.type==="element"&&(!A.namespace||c(A))&&h[A.name]||g}function ke(A){let G=Number.POSITIVE_INFINITY;for(let re of A.split(` +`)){if(re.length===0)continue;if(!f.has(re[0]))return 0;let ye=I(re).length;re.length!==ye&&ye1&&arguments[1]!==void 0?arguments[1]:ke(A);return G===0?A:A.split(` +`).map(re=>re.slice(G)).join(` +`)}function Ne(A,G){let re=0;for(let ye=0;ye1&&arguments[1]!==void 0?arguments[1]:A.value;return A.parent.isWhitespaceSensitive?A.parent.isIndentationSensitive?l(G):l(Re(N(G)),n):i(u(a,x(G)))}function De(A,G){return pe(A,G)&&A.name==="script"}r.exports={htmlTrim:w,htmlTrimPreserveIndentation:N,hasHtmlWhitespace:$,getLeadingAndTrailingHtmlWhitespace:P,canHaveInterpolation:d,countChars:Ne,countParents:fe,dedentString:Re,forceBreakChildren:q,forceBreakContent:R,forceNextEmptyLine:M,getLastDescendant:ie,getNodeCssStyleDisplay:he,getNodeCssStyleWhiteSpace:we,hasPrettierIgnore:T,inferScriptParser:K,isVueCustomBlock:H,isVueNonHtmlBlock:X,isVueScriptTag:De,isVueSlotAttribute:le,isVueSfcBindingsAttribute:Ae,isVueSfcBlock:pe,isDanglingSpaceSensitiveNode:k,isIndentationSensitiveNode:S,isLeadingSpaceSensitiveNode:b,isPreLikeNode:se,isScriptLikeTag:o,isTextLikeNode:C,isTrailingSpaceSensitiveNode:B,isWhitespaceSensitiveNode:v,isUnknownNamespace:c,preferHardlineAsLeadingSpaces:J,preferHardlineAsTrailingSpaces:L,shouldPreserveContent:D,unescapeQuoteEntities:Pe,getTextValueParts:Ee}}}),vg=te({"node_modules/angular-html-parser/lib/compiler/src/chars.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0}),e.$EOF=0,e.$BSPACE=8,e.$TAB=9,e.$LF=10,e.$VTAB=11,e.$FF=12,e.$CR=13,e.$SPACE=32,e.$BANG=33,e.$DQ=34,e.$HASH=35,e.$$=36,e.$PERCENT=37,e.$AMPERSAND=38,e.$SQ=39,e.$LPAREN=40,e.$RPAREN=41,e.$STAR=42,e.$PLUS=43,e.$COMMA=44,e.$MINUS=45,e.$PERIOD=46,e.$SLASH=47,e.$COLON=58,e.$SEMICOLON=59,e.$LT=60,e.$EQ=61,e.$GT=62,e.$QUESTION=63,e.$0=48,e.$7=55,e.$9=57,e.$A=65,e.$E=69,e.$F=70,e.$X=88,e.$Z=90,e.$LBRACKET=91,e.$BACKSLASH=92,e.$RBRACKET=93,e.$CARET=94,e.$_=95,e.$a=97,e.$b=98,e.$e=101,e.$f=102,e.$n=110,e.$r=114,e.$t=116,e.$u=117,e.$v=118,e.$x=120,e.$z=122,e.$LBRACE=123,e.$BAR=124,e.$RBRACE=125,e.$NBSP=160,e.$PIPE=124,e.$TILDA=126,e.$AT=64,e.$BT=96;function r(i){return i>=e.$TAB&&i<=e.$SPACE||i==e.$NBSP}e.isWhitespace=r;function t(i){return e.$0<=i&&i<=e.$9}e.isDigit=t;function s(i){return i>=e.$a&&i<=e.$z||i>=e.$A&&i<=e.$Z}e.isAsciiLetter=s;function a(i){return i>=e.$a&&i<=e.$f||i>=e.$A&&i<=e.$F||t(i)}e.isAsciiHexDigit=a;function n(i){return i===e.$LF||i===e.$CR}e.isNewLine=n;function u(i){return e.$0<=i&&i<=e.$7}e.isOctalDigit=u}}),Cg=te({"node_modules/angular-html-parser/lib/compiler/src/aot/static_symbol.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=class{constructor(s,a,n){this.filePath=s,this.name=a,this.members=n}assertNoMembers(){if(this.members.length)throw new Error(`Illegal state: symbol without members expected, but got ${JSON.stringify(this)}.`)}};e.StaticSymbol=r;var t=class{constructor(){this.cache=new Map}get(s,a,n){n=n||[];let u=n.length?`.${n.join(".")}`:"",i=`"${s}".${a}${u}`,l=this.cache.get(i);return l||(l=new r(s,a,n),this.cache.set(i,l)),l}};e.StaticSymbolCache=t}}),Eg=te({"node_modules/angular-html-parser/lib/compiler/src/util.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=/-+([a-z0-9])/g;function t(o){return o.replace(r,function(){for(var d=arguments.length,v=new Array(d),S=0;Su(v,this,d))}visitStringMap(o,d){let v={};return Object.keys(o).forEach(S=>{v[S]=u(o[S],this,d)}),v}visitPrimitive(o,d){return o}visitOther(o,d){return o}};e.ValueTransformer=p,e.SyncAsync={assertSync:o=>{if(P(o))throw new Error("Illegal state: value cannot be a promise");return o},then:(o,d)=>P(o)?o.then(d):d(o),all:o=>o.some(P)?Promise.all(o):o};function y(o){throw new Error(`Internal Error: ${o}`)}e.error=y;function h(o,d){let v=Error(o);return v[g]=!0,d&&(v[c]=d),v}e.syntaxError=h;var g="ngSyntaxError",c="ngParseErrors";function f(o){return o[g]}e.isSyntaxError=f;function F(o){return o[c]||[]}e.getParseErrors=F;function _(o){return o.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")}e.escapeRegExp=_;var w=Object.getPrototypeOf({});function E(o){return typeof o=="object"&&o!==null&&Object.getPrototypeOf(o)===w}function N(o){let d="";for(let v=0;v=55296&&S<=56319&&o.length>v+1){let b=o.charCodeAt(v+1);b>=56320&&b<=57343&&(v++,S=(S-55296<<10)+b-56320+65536)}S<=127?d+=String.fromCharCode(S):S<=2047?d+=String.fromCharCode(S>>6&31|192,S&63|128):S<=65535?d+=String.fromCharCode(S>>12|224,S>>6&63|128,S&63|128):S<=2097151&&(d+=String.fromCharCode(S>>18&7|240,S>>12&63|128,S>>6&63|128,S&63|128))}return d}e.utf8Encode=N;function x(o){if(typeof o=="string")return o;if(o instanceof Array)return"["+o.map(x).join(", ")+"]";if(o==null)return""+o;if(o.overriddenName)return`${o.overriddenName}`;if(o.name)return`${o.name}`;if(!o.toString)return"object";let d=o.toString();if(d==null)return""+d;let v=d.indexOf(` +`);return v===-1?d:d.substring(0,v)}e.stringify=x;function I(o){return typeof o=="function"&&o.hasOwnProperty("__forward_ref__")?o():o}e.resolveForwardRef=I;function P(o){return!!o&&typeof o.then=="function"}e.isPromise=P;var $=class{constructor(o){this.full=o;let d=o.split(".");this.major=d[0],this.minor=d[1],this.patch=d.slice(2).join(".")}};e.Version=$;var D=typeof window<"u"&&window,T=typeof self<"u"&&typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&self,m=typeof globalThis<"u"&&globalThis,C=m||D||T;e.global=C}}),Fg=te({"node_modules/angular-html-parser/lib/compiler/src/compile_metadata.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=Cg(),t=Eg(),s=/^(?:(?:\[([^\]]+)\])|(?:\(([^\)]+)\)))|(\@[-\w]+)$/;function a(v){return v.replace(/\W/g,"_")}e.sanitizeIdentifier=a;var n=0;function u(v){if(!v||!v.reference)return null;let S=v.reference;if(S instanceof r.StaticSymbol)return S.name;if(S.__anonymousType)return S.__anonymousType;let b=t.stringify(S);return b.indexOf("(")>=0?(b=`anonymous_${n++}`,S.__anonymousType=b):b=a(b),b}e.identifierName=u;function i(v){let S=v.reference;return S instanceof r.StaticSymbol?S.filePath:`./${t.stringify(S)}`}e.identifierModuleUrl=i;function l(v,S){return`View_${u({reference:v})}_${S}`}e.viewClassName=l;function p(v){return`RenderType_${u({reference:v})}`}e.rendererTypeName=p;function y(v){return`HostView_${u({reference:v})}`}e.hostViewClassName=y;function h(v){return`${u({reference:v})}NgFactory`}e.componentFactoryName=h;var g;(function(v){v[v.Pipe=0]="Pipe",v[v.Directive=1]="Directive",v[v.NgModule=2]="NgModule",v[v.Injectable=3]="Injectable"})(g=e.CompileSummaryKind||(e.CompileSummaryKind={}));function c(v){return v.value!=null?a(v.value):u(v.identifier)}e.tokenName=c;function f(v){return v.identifier!=null?v.identifier.reference:v.value}e.tokenReference=f;var F=class{constructor(){let{moduleUrl:v,styles:S,styleUrls:b}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.moduleUrl=v||null,this.styles=P(S),this.styleUrls=P(b)}};e.CompileStylesheetMetadata=F;var _=class{constructor(v){let{encapsulation:S,template:b,templateUrl:B,htmlAst:k,styles:M,styleUrls:R,externalStylesheets:q,animations:J,ngContentSelectors:L,interpolation:Q,isInline:V,preserveWhitespaces:j}=v;if(this.encapsulation=S,this.template=b,this.templateUrl=B,this.htmlAst=k,this.styles=P(M),this.styleUrls=P(R),this.externalStylesheets=P(q),this.animations=J?D(J):[],this.ngContentSelectors=L||[],Q&&Q.length!=2)throw new Error("'interpolation' should have a start and an end symbol.");this.interpolation=Q,this.isInline=V,this.preserveWhitespaces=j}toSummary(){return{ngContentSelectors:this.ngContentSelectors,encapsulation:this.encapsulation,styles:this.styles,animations:this.animations}}};e.CompileTemplateMetadata=_;var w=class{static create(v){let{isHost:S,type:b,isComponent:B,selector:k,exportAs:M,changeDetection:R,inputs:q,outputs:J,host:L,providers:Q,viewProviders:V,queries:j,guards:Y,viewQueries:ie,entryComponents:ee,template:ce,componentViewType:W,rendererType:K,componentFactory:de}=v,ue={},Fe={},z={};L!=null&&Object.keys(L).forEach(se=>{let fe=L[se],ge=se.match(s);ge===null?z[se]=fe:ge[1]!=null?Fe[ge[1]]=fe:ge[2]!=null&&(ue[ge[2]]=fe)});let U={};q!=null&&q.forEach(se=>{let fe=t.splitAtColon(se,[se,se]);U[fe[0]]=fe[1]});let Z={};return J!=null&&J.forEach(se=>{let fe=t.splitAtColon(se,[se,se]);Z[fe[0]]=fe[1]}),new w({isHost:S,type:b,isComponent:!!B,selector:k,exportAs:M,changeDetection:R,inputs:U,outputs:Z,hostListeners:ue,hostProperties:Fe,hostAttributes:z,providers:Q,viewProviders:V,queries:j,guards:Y,viewQueries:ie,entryComponents:ee,template:ce,componentViewType:W,rendererType:K,componentFactory:de})}constructor(v){let{isHost:S,type:b,isComponent:B,selector:k,exportAs:M,changeDetection:R,inputs:q,outputs:J,hostListeners:L,hostProperties:Q,hostAttributes:V,providers:j,viewProviders:Y,queries:ie,guards:ee,viewQueries:ce,entryComponents:W,template:K,componentViewType:de,rendererType:ue,componentFactory:Fe}=v;this.isHost=!!S,this.type=b,this.isComponent=B,this.selector=k,this.exportAs=M,this.changeDetection=R,this.inputs=q,this.outputs=J,this.hostListeners=L,this.hostProperties=Q,this.hostAttributes=V,this.providers=P(j),this.viewProviders=P(Y),this.queries=P(ie),this.guards=ee,this.viewQueries=P(ce),this.entryComponents=P(W),this.template=K,this.componentViewType=de,this.rendererType=ue,this.componentFactory=Fe}toSummary(){return{summaryKind:g.Directive,type:this.type,isComponent:this.isComponent,selector:this.selector,exportAs:this.exportAs,inputs:this.inputs,outputs:this.outputs,hostListeners:this.hostListeners,hostProperties:this.hostProperties,hostAttributes:this.hostAttributes,providers:this.providers,viewProviders:this.viewProviders,queries:this.queries,guards:this.guards,viewQueries:this.viewQueries,entryComponents:this.entryComponents,changeDetection:this.changeDetection,template:this.template&&this.template.toSummary(),componentViewType:this.componentViewType,rendererType:this.rendererType,componentFactory:this.componentFactory}}};e.CompileDirectiveMetadata=w;var E=class{constructor(v){let{type:S,name:b,pure:B}=v;this.type=S,this.name=b,this.pure=!!B}toSummary(){return{summaryKind:g.Pipe,type:this.type,name:this.name,pure:this.pure}}};e.CompilePipeMetadata=E;var N=class{};e.CompileShallowModuleMetadata=N;var x=class{constructor(v){let{type:S,providers:b,declaredDirectives:B,exportedDirectives:k,declaredPipes:M,exportedPipes:R,entryComponents:q,bootstrapComponents:J,importedModules:L,exportedModules:Q,schemas:V,transitiveModule:j,id:Y}=v;this.type=S||null,this.declaredDirectives=P(B),this.exportedDirectives=P(k),this.declaredPipes=P(M),this.exportedPipes=P(R),this.providers=P(b),this.entryComponents=P(q),this.bootstrapComponents=P(J),this.importedModules=P(L),this.exportedModules=P(Q),this.schemas=P(V),this.id=Y||null,this.transitiveModule=j||null}toSummary(){let v=this.transitiveModule;return{summaryKind:g.NgModule,type:this.type,entryComponents:v.entryComponents,providers:v.providers,modules:v.modules,exportedDirectives:v.exportedDirectives,exportedPipes:v.exportedPipes}}};e.CompileNgModuleMetadata=x;var I=class{constructor(){this.directivesSet=new Set,this.directives=[],this.exportedDirectivesSet=new Set,this.exportedDirectives=[],this.pipesSet=new Set,this.pipes=[],this.exportedPipesSet=new Set,this.exportedPipes=[],this.modulesSet=new Set,this.modules=[],this.entryComponentsSet=new Set,this.entryComponents=[],this.providers=[]}addProvider(v,S){this.providers.push({provider:v,module:S})}addDirective(v){this.directivesSet.has(v.reference)||(this.directivesSet.add(v.reference),this.directives.push(v))}addExportedDirective(v){this.exportedDirectivesSet.has(v.reference)||(this.exportedDirectivesSet.add(v.reference),this.exportedDirectives.push(v))}addPipe(v){this.pipesSet.has(v.reference)||(this.pipesSet.add(v.reference),this.pipes.push(v))}addExportedPipe(v){this.exportedPipesSet.has(v.reference)||(this.exportedPipesSet.add(v.reference),this.exportedPipes.push(v))}addModule(v){this.modulesSet.has(v.reference)||(this.modulesSet.add(v.reference),this.modules.push(v))}addEntryComponent(v){this.entryComponentsSet.has(v.componentType)||(this.entryComponentsSet.add(v.componentType),this.entryComponents.push(v))}};e.TransitiveCompileNgModuleMetadata=I;function P(v){return v||[]}var $=class{constructor(v,S){let{useClass:b,useValue:B,useExisting:k,useFactory:M,deps:R,multi:q}=S;this.token=v,this.useClass=b||null,this.useValue=B,this.useExisting=k,this.useFactory=M||null,this.dependencies=R||null,this.multi=!!q}};e.ProviderMeta=$;function D(v){return v.reduce((S,b)=>{let B=Array.isArray(b)?D(b):b;return S.concat(B)},[])}e.flatten=D;function T(v){return v.replace(/(\w+:\/\/[\w:-]+)?(\/+)?/,"ng:///")}function m(v,S,b){let B;return b.isInline?S.type.reference instanceof r.StaticSymbol?B=`${S.type.reference.filePath}.${S.type.reference.name}.html`:B=`${u(v)}/${u(S.type)}.html`:B=b.templateUrl,S.type.reference instanceof r.StaticSymbol?B:T(B)}e.templateSourceUrl=m;function C(v,S){let b=v.moduleUrl.split(/\/\\/g),B=b[b.length-1];return T(`css/${S}${B}.ngstyle.js`)}e.sharedStylesheetJitUrl=C;function o(v){return T(`${u(v.type)}/module.ngfactory.js`)}e.ngModuleJitUrl=o;function d(v,S){return T(`${u(v)}/${u(S.type)}.ngfactory.js`)}e.templateJitUrl=d}}),Ag=te({"node_modules/angular-html-parser/lib/compiler/src/parse_util.js"(e){"use strict";ne(),Object.defineProperty(e,"__esModule",{value:!0});var r=vg(),t=Fg(),s=class{constructor(y,h,g,c){this.file=y,this.offset=h,this.line=g,this.col=c}toString(){return this.offset!=null?`${this.file.url}@${this.line}:${this.col}`:this.file.url}moveBy(y){let h=this.file.content,g=h.length,c=this.offset,f=this.line,F=this.col;for(;c>0&&y<0;)if(c--,y++,h.charCodeAt(c)==r.$LF){f--;let w=h.substr(0,c-1).lastIndexOf(String.fromCharCode(r.$LF));F=w>0?c-w:c}else F--;for(;c0;){let _=h.charCodeAt(c);c++,y--,_==r.$LF?(f++,F=0):F++}return new s(this.file,c,f,F)}getContext(y,h){let g=this.file.content,c=this.offset;if(c!=null){c>g.length-1&&(c=g.length-1);let f=c,F=0,_=0;for(;F0&&(c--,F++,!(g[c]==` +`&&++_==h)););for(F=0,_=0;F2&&arguments[2]!==void 0?arguments[2]:null;this.start=y,this.end=h,this.details=g}toString(){return this.start.file.content.substring(this.start.offset,this.end.offset)}};e.ParseSourceSpan=n,e.EMPTY_PARSE_LOCATION=new s(new a("",""),0,0,0),e.EMPTY_SOURCE_SPAN=new n(e.EMPTY_PARSE_LOCATION,e.EMPTY_PARSE_LOCATION);var u;(function(y){y[y.WARNING=0]="WARNING",y[y.ERROR=1]="ERROR"})(u=e.ParseErrorLevel||(e.ParseErrorLevel={}));var i=class{constructor(y,h){let g=arguments.length>2&&arguments[2]!==void 0?arguments[2]:u.ERROR;this.span=y,this.msg=h,this.level=g}contextualMessage(){let y=this.span.start.getContext(100,3);return y?`${this.msg} ("${y.before}[${u[this.level]} ->]${y.after}")`:this.msg}toString(){let y=this.span.details?`, ${this.span.details}`:"";return`${this.contextualMessage()}: ${this.span.start}${y}`}};e.ParseError=i;function l(y,h){let g=t.identifierModuleUrl(h),c=g!=null?`in ${y} ${t.identifierName(h)} in ${g}`:`in ${y} ${t.identifierName(h)}`,f=new a("",c);return new n(new s(f,-1,-1,-1),new s(f,-1,-1,-1))}e.typeSourceSpan=l;function p(y,h,g){let c=`in ${y} ${h} in ${g}`,f=new a("",c);return new n(new s(f,-1,-1,-1),new s(f,-1,-1,-1))}e.r3JitTypeSourceSpan=p}}),Sg=te({"src/language-html/print-preprocess.js"(e,r){"use strict";ne();var{ParseSourceSpan:t}=Ag(),{htmlTrim:s,getLeadingAndTrailingHtmlWhitespace:a,hasHtmlWhitespace:n,canHaveInterpolation:u,getNodeCssStyleDisplay:i,isDanglingSpaceSensitiveNode:l,isIndentationSensitiveNode:p,isLeadingSpaceSensitiveNode:y,isTrailingSpaceSensitiveNode:h,isWhitespaceSensitiveNode:g,isVueScriptTag:c}=Rt(),f=[_,w,N,I,P,T,$,D,m,x,C];function F(o,d){for(let v of f)v(o,d);return o}function _(o){o.walk(d=>{if(d.type==="element"&&d.tagDefinition.ignoreFirstLf&&d.children.length>0&&d.children[0].type==="text"&&d.children[0].value[0]===` +`){let v=d.children[0];v.value.length===1?d.removeChild(v):v.value=v.value.slice(1)}})}function w(o){let d=v=>v.type==="element"&&v.prev&&v.prev.type==="ieConditionalStartComment"&&v.prev.sourceSpan.end.offset===v.startSourceSpan.start.offset&&v.firstChild&&v.firstChild.type==="ieConditionalEndComment"&&v.firstChild.sourceSpan.start.offset===v.startSourceSpan.end.offset;o.walk(v=>{if(v.children)for(let S=0;S{if(S.children)for(let b=0;bd.type==="cdata",d=>``)}function x(o){let d=v=>v.type==="element"&&v.attrs.length===0&&v.children.length===1&&v.firstChild.type==="text"&&!n(v.children[0].value)&&!v.firstChild.hasLeadingSpaces&&!v.firstChild.hasTrailingSpaces&&v.isLeadingSpaceSensitive&&!v.hasLeadingSpaces&&v.isTrailingSpaceSensitive&&!v.hasTrailingSpaces&&v.prev&&v.prev.type==="text"&&v.next&&v.next.type==="text";o.walk(v=>{if(v.children)for(let S=0;S`+b.firstChild.value+``+k.value,B.sourceSpan=new t(B.sourceSpan.start,k.sourceSpan.end),B.isTrailingSpaceSensitive=k.isTrailingSpaceSensitive,B.hasTrailingSpaces=k.hasTrailingSpaces,v.removeChild(b),S--,v.removeChild(k)}})}function I(o,d){if(d.parser==="html")return;let v=/{{(.+?)}}/s;o.walk(S=>{if(u(S))for(let b of S.children){if(b.type!=="text")continue;let B=b.sourceSpan.start,k=null,M=b.value.split(v);for(let R=0;R0&&S.insertChildBefore(b,{type:"text",value:q,sourceSpan:new t(B,k)});continue}k=B.moveBy(q.length+4),S.insertChildBefore(b,{type:"interpolation",sourceSpan:new t(B,k),children:q.length===0?[]:[{type:"text",value:q,sourceSpan:new t(B.moveBy(2),k.moveBy(-2))}]})}S.removeChild(b)}})}function P(o){o.walk(d=>{if(!d.children)return;if(d.children.length===0||d.children.length===1&&d.children[0].type==="text"&&s(d.children[0].value).length===0){d.hasDanglingSpaces=d.children.length>0,d.children=[];return}let v=g(d),S=p(d);if(!v)for(let b=0;b{d.isSelfClosing=!d.children||d.type==="element"&&(d.tagDefinition.isVoid||d.startSourceSpan===d.endSourceSpan)})}function D(o,d){o.walk(v=>{v.type==="element"&&(v.hasHtmComponentClosingTag=v.endSourceSpan&&/^<\s*\/\s*\/\s*>$/.test(d.originalText.slice(v.endSourceSpan.start.offset,v.endSourceSpan.end.offset)))})}function T(o,d){o.walk(v=>{v.cssDisplay=i(v,d)})}function m(o,d){o.walk(v=>{let{children:S}=v;if(S){if(S.length===0){v.isDanglingSpaceSensitive=l(v);return}for(let b of S)b.isLeadingSpaceSensitive=y(b,d),b.isTrailingSpaceSensitive=h(b,d);for(let b=0;bc(b,d));if(!v)return;let{lang:S}=v.attrMap;(S==="ts"||S==="typescript")&&(d.__should_parse_vue_template_with_ts=!0)}}r.exports=F}}),xg=te({"src/language-html/pragma.js"(e,r){"use strict";ne();function t(a){return/^\s*/.test(a)}function s(a){return` + +`+a.replace(/^\s*\n/,"")}r.exports={hasPragma:t,insertPragma:s}}}),au=te({"src/language-html/loc.js"(e,r){"use strict";ne();function t(a){return a.sourceSpan.start.offset}function s(a){return a.sourceSpan.end.offset}r.exports={locStart:t,locEnd:s}}}),ur=te({"src/language-html/print/tag.js"(e,r){"use strict";ne();var t=Zt(),{isNonEmptyArray:s}=Ue(),{builders:{indent:a,join:n,line:u,softline:i,hardline:l},utils:{replaceTextEndOfLine:p}}=qe(),{locStart:y,locEnd:h}=au(),{isTextLikeNode:g,getLastDescendant:c,isPreLikeNode:f,hasPrettierIgnore:F,shouldPreserveContent:_,isVueSfcBlock:w}=Rt();function E(L,Q){return[L.isSelfClosing?"":N(L,Q),x(L,Q)]}function N(L,Q){return L.lastChild&&o(L.lastChild)?"":[I(L,Q),$(L,Q)]}function x(L,Q){return(L.next?m(L.next):C(L.parent))?"":[D(L,Q),P(L,Q)]}function I(L,Q){return C(L)?D(L.lastChild,Q):""}function P(L,Q){return o(L)?$(L.parent,Q):d(L)?q(L.next):""}function $(L,Q){if(t(!L.isSelfClosing),T(L,Q))return"";switch(L.type){case"ieConditionalComment":return"";case"ieConditionalStartComment":return"]>";case"interpolation":return"}}";case"element":if(L.isSelfClosing)return"/>";default:return">"}}function T(L,Q){return!L.isSelfClosing&&!L.endSourceSpan&&(F(L)||_(L.parent,Q))}function m(L){return L.prev&&L.prev.type!=="docType"&&!g(L.prev)&&L.isLeadingSpaceSensitive&&!L.hasLeadingSpaces}function C(L){return L.lastChild&&L.lastChild.isTrailingSpaceSensitive&&!L.lastChild.hasTrailingSpaces&&!g(c(L.lastChild))&&!f(L)}function o(L){return!L.next&&!L.hasTrailingSpaces&&L.isTrailingSpaceSensitive&&g(c(L))}function d(L){return L.next&&!g(L.next)&&g(L)&&L.isTrailingSpaceSensitive&&!L.hasTrailingSpaces}function v(L){let Q=L.trim().match(/^prettier-ignore-attribute(?:\s+(.+))?$/s);return Q?Q[1]?Q[1].split(/\s+/):!0:!1}function S(L){return!L.prev&&L.isLeadingSpaceSensitive&&!L.hasLeadingSpaces}function b(L,Q,V){let j=L.getValue();if(!s(j.attrs))return j.isSelfClosing?" ":"";let Y=j.prev&&j.prev.type==="comment"&&v(j.prev.value),ie=typeof Y=="boolean"?()=>Y:Array.isArray(Y)?ue=>Y.includes(ue.rawName):()=>!1,ee=L.map(ue=>{let Fe=ue.getValue();return ie(Fe)?p(Q.originalText.slice(y(Fe),h(Fe))):V()},"attrs"),ce=j.type==="element"&&j.fullName==="script"&&j.attrs.length===1&&j.attrs[0].fullName==="src"&&j.children.length===0,K=Q.singleAttributePerLine&&j.attrs.length>1&&!w(j,Q)?l:u,de=[a([ce?" ":u,n(K,ee)])];return j.firstChild&&S(j.firstChild)||j.isSelfClosing&&C(j.parent)||ce?de.push(j.isSelfClosing?" ":""):de.push(Q.bracketSameLine?j.isSelfClosing?" ":"":j.isSelfClosing?u:i),de}function B(L){return L.firstChild&&S(L.firstChild)?"":J(L)}function k(L,Q,V){let j=L.getValue();return[M(j,Q),b(L,Q,V),j.isSelfClosing?"":B(j)]}function M(L,Q){return L.prev&&d(L.prev)?"":[R(L,Q),q(L)]}function R(L,Q){return S(L)?J(L.parent):m(L)?D(L.prev,Q):""}function q(L){switch(L.type){case"ieConditionalComment":case"ieConditionalStartComment":return`<${L.rawName}`;default:return`<${L.rawName}`}}function J(L){switch(t(!L.isSelfClosing),L.type){case"ieConditionalComment":return"]>";case"element":if(L.condition)return">";default:return">"}}r.exports={printClosingTag:E,printClosingTagStart:N,printClosingTagStartMarker:$,printClosingTagEndMarker:D,printClosingTagSuffix:P,printClosingTagEnd:x,needsToBorrowLastChildClosingTagEndMarker:C,needsToBorrowParentClosingTagStartMarker:o,needsToBorrowPrevClosingTagEndMarker:m,printOpeningTag:k,printOpeningTagStart:M,printOpeningTagPrefix:R,printOpeningTagStartMarker:q,printOpeningTagEndMarker:J,needsToBorrowNextOpeningTagStartMarker:d,needsToBorrowParentOpeningTagEndMarker:S}}}),bg=te({"node_modules/parse-srcset/src/parse-srcset.js"(e,r){ne(),function(t,s){typeof define=="function"&&define.amd?define([],s):typeof r=="object"&&r.exports?r.exports=s():t.parseSrcset=s()}(e,function(){return function(t,s){var a=s&&s.logger||console;function n($){return $===" "||$===" "||$===` +`||$==="\f"||$==="\r"}function u($){var D,T=$.exec(t.substring(N));if(T)return D=T[0],N+=D.length,D}for(var i=t.length,l=/^[ \t\n\r\u000c]+/,p=/^[, \t\n\r\u000c]+/,y=/^[^ \t\n\r\u000c]+/,h=/[,]+$/,g=/^\d+$/,c=/^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/,f,F,_,w,E,N=0,x=[];;){if(u(p),N>=i)return x;f=u(y),F=[],f.slice(-1)===","?(f=f.replace(h,""),P()):I()}function I(){for(u(l),_="",w="in descriptor";;){if(E=t.charAt(N),w==="in descriptor")if(n(E))_&&(F.push(_),_="",w="after descriptor");else if(E===","){N+=1,_&&F.push(_),P();return}else if(E==="(")_=_+E,w="in parens";else if(E===""){_&&F.push(_),P();return}else _=_+E;else if(w==="in parens")if(E===")")_=_+E,w="in descriptor";else if(E===""){F.push(_),P();return}else _=_+E;else if(w==="after descriptor"&&!n(E))if(E===""){P();return}else w="in descriptor",N-=1;N+=1}}function P(){var $=!1,D,T,m,C,o={},d,v,S,b,B;for(C=0;C{let{w:P}=I;return P}),h=p.some(I=>{let{h:P}=I;return P}),g=p.some(I=>{let{d:P}=I;return P});if(y+h+g>1)throw new Error("Mixed descriptor in srcset is not supported");let c=y?"w":h?"h":"d",f=y?"w":h?"h":"x",F=I=>Math.max(...I),_=p.map(I=>I.url),w=F(_.map(I=>I.length)),E=p.map(I=>I[c]).map(I=>I?I.toString():""),N=E.map(I=>{let P=I.indexOf(".");return P===-1?I.length:P}),x=F(N);return a([",",n],_.map((I,P)=>{let $=[I],D=E[P];if(D){let T=w-I.length+1,m=x-N[P],C=" ".repeat(T+m);$.push(s(C," "),D+f)}return $}))}function i(l){return l.trim().split(/\s+/).join(" ")}r.exports={printImgSrcset:u,printClassNames:i}}}),Bg=te({"src/language-html/syntax-vue.js"(e,r){"use strict";ne();var{builders:{group:t}}=qe();function s(i,l){let{left:p,operator:y,right:h}=a(i);return[t(l(`function _(${p}) {}`,{parser:"babel",__isVueForBindingLeft:!0}))," ",y," ",l(h,{parser:"__js_expression"},{stripTrailingHardline:!0})]}function a(i){let l=/(.*?)\s+(in|of)\s+(.*)/s,p=/,([^,\]}]*)(?:,([^,\]}]*))?$/,y=/^\(|\)$/g,h=i.match(l);if(!h)return;let g={};if(g.for=h[3].trim(),!g.for)return;let c=h[1].trim().replace(y,""),f=c.match(p);f?(g.alias=c.replace(p,""),g.iterator1=f[1].trim(),f[2]&&(g.iterator2=f[2].trim())):g.alias=c;let F=[g.alias,g.iterator1,g.iterator2];if(!F.some((_,w)=>!_&&(w===0||F.slice(w+1).some(Boolean))))return{left:F.filter(Boolean).join(","),operator:h[2],right:g.for}}function n(i,l){return l(`function _(${i}) {}`,{parser:"babel",__isVueBindings:!0})}function u(i){let l=/^(?:[\w$]+|\([^)]*\))\s*=>|^function\s*\(/,p=/^[$A-Z_a-z][\w$]*(?:\.[$A-Z_a-z][\w$]*|\['[^']*']|\["[^"]*"]|\[\d+]|\[[$A-Z_a-z][\w$]*])*$/,y=i.trim();return l.test(y)||p.test(y)}r.exports={isVueEventBindingExpression:u,printVueFor:s,printVueBindings:n}}}),Lo=te({"src/language-html/get-node-content.js"(e,r){"use strict";ne();var{needsToBorrowParentClosingTagStartMarker:t,printClosingTagStartMarker:s,needsToBorrowLastChildClosingTagEndMarker:a,printClosingTagEndMarker:n,needsToBorrowParentOpeningTagEndMarker:u,printOpeningTagEndMarker:i}=ur();function l(p,y){let h=p.startSourceSpan.end.offset;p.firstChild&&u(p.firstChild)&&(h-=i(p).length);let g=p.endSourceSpan.start.offset;return p.lastChild&&t(p.lastChild)?g+=s(p,y).length:a(p)&&(g-=n(p.lastChild,y).length),y.originalText.slice(h,g)}r.exports=l}}),Ng=te({"src/language-html/embed.js"(e,r){"use strict";ne();var{builders:{breakParent:t,group:s,hardline:a,indent:n,line:u,fill:i,softline:l},utils:{mapDoc:p,replaceTextEndOfLine:y}}=qe(),h=su(),{printClosingTag:g,printClosingTagSuffix:c,needsToBorrowPrevClosingTagEndMarker:f,printOpeningTagPrefix:F,printOpeningTag:_}=ur(),{printImgSrcset:w,printClassNames:E}=Tg(),{printVueFor:N,printVueBindings:x,isVueEventBindingExpression:I}=Bg(),{isScriptLikeTag:P,isVueNonHtmlBlock:$,inferScriptParser:D,htmlTrimPreserveIndentation:T,dedentString:m,unescapeQuoteEntities:C,isVueSlotAttribute:o,isVueSfcBindingsAttribute:d,getTextValueParts:v}=Rt(),S=Lo();function b(k,M,R){let q=ee=>new RegExp(ee.join("|")).test(k.fullName),J=()=>C(k.value),L=!1,Q=(ee,ce)=>{let W=ee.type==="NGRoot"?ee.node.type==="NGMicrosyntax"&&ee.node.body.length===1&&ee.node.body[0].type==="NGMicrosyntaxExpression"?ee.node.body[0].expression:ee.node:ee.type==="JsExpressionRoot"?ee.node:ee;W&&(W.type==="ObjectExpression"||W.type==="ArrayExpression"||ce.parser==="__vue_expression"&&(W.type==="TemplateLiteral"||W.type==="StringLiteral"))&&(L=!0)},V=ee=>s(ee),j=function(ee){let ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return s([n([l,ee]),ce?l:""])},Y=ee=>L?V(ee):j(ee),ie=(ee,ce)=>M(ee,Object.assign({__onHtmlBindingRoot:Q,__embeddedInHtml:!0},ce));if(k.fullName==="srcset"&&(k.parent.fullName==="img"||k.parent.fullName==="source"))return j(w(J()));if(k.fullName==="class"&&!R.parentParser){let ee=J();if(!ee.includes("{{"))return E(ee)}if(k.fullName==="style"&&!R.parentParser){let ee=J();if(!ee.includes("{{"))return j(ie(ee,{parser:"css",__isHTMLStyleAttribute:!0}))}if(R.parser==="vue"){if(k.fullName==="v-for")return N(J(),ie);if(o(k)||d(k,R))return x(J(),ie);let ee=["^@","^v-on:"],ce=["^:","^v-bind:"],W=["^v-"];if(q(ee)){let K=J(),de=I(K)?"__js_expression":R.__should_parse_vue_template_with_ts?"__vue_ts_event_binding":"__vue_event_binding";return Y(ie(K,{parser:de}))}if(q(ce))return Y(ie(J(),{parser:"__vue_expression"}));if(q(W))return Y(ie(J(),{parser:"__js_expression"}))}if(R.parser==="angular"){let ee=(z,U)=>ie(z,Object.assign(Object.assign({},U),{},{trailingComma:"none"})),ce=["^\\*"],W=["^\\(.+\\)$","^on-"],K=["^\\[.+\\]$","^bind(on)?-","^ng-(if|show|hide|class|style)$"],de=["^i18n(-.+)?$"];if(q(W))return Y(ee(J(),{parser:"__ng_action"}));if(q(K))return Y(ee(J(),{parser:"__ng_binding"}));if(q(de)){let z=J().trim();return j(i(v(k,z)),!z.includes("@@"))}if(q(ce))return Y(ee(J(),{parser:"__ng_directive"}));let ue=/{{(.+?)}}/s,Fe=J();if(ue.test(Fe)){let z=[];for(let[U,Z]of Fe.split(ue).entries())if(U%2===0)z.push(y(Z));else try{z.push(s(["{{",n([u,ee(Z,{parser:"__ng_interpolation",__isInHtmlInterpolation:!0})]),u,"}}"]))}catch{z.push("{{",y(Z),"}}")}return s(z)}}return null}function B(k,M,R,q){let J=k.getValue();switch(J.type){case"element":{if(P(J)||J.type==="interpolation")return;if(!J.isSelfClosing&&$(J,q)){let L=D(J,q);if(!L)return;let Q=S(J,q),V=/^\s*$/.test(Q),j="";return V||(j=R(T(Q),{parser:L,__embeddedInHtml:!0},{stripTrailingHardline:!0}),V=j===""),[F(J,q),s(_(k,q,M)),V?"":a,j,V?"":a,g(J,q),c(J,q)]}break}case"text":{if(P(J.parent)){let L=D(J.parent,q);if(L){let Q=L==="markdown"?m(J.value.replace(/^[^\S\n]*\n/,"")):J.value,V={parser:L,__embeddedInHtml:!0};if(q.parser==="html"&&L==="babel"){let j="script",{attrMap:Y}=J.parent;Y&&(Y.type==="module"||Y.type==="text/babel"&&Y["data-type"]==="module")&&(j="module"),V.__babelSourceType=j}return[t,F(J,q),R(Q,V,{stripTrailingHardline:!0}),c(J,q)]}}else if(J.parent.type==="interpolation"){let L={__isInHtmlInterpolation:!0,__embeddedInHtml:!0};return q.parser==="angular"?(L.parser="__ng_interpolation",L.trailingComma="none"):q.parser==="vue"?L.parser=q.__should_parse_vue_template_with_ts?"__vue_ts_expression":"__vue_expression":L.parser="__js_expression",[n([u,R(J.value,L,{stripTrailingHardline:!0})]),J.parent.next&&f(J.parent.next)?" ":u]}break}case"attribute":{if(!J.value)break;if(/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/.test(q.originalText.slice(J.valueSpan.start.offset,J.valueSpan.end.offset)))return[J.rawName,"=",J.value];if(q.parser==="lwc"&&/^{.*}$/s.test(q.originalText.slice(J.valueSpan.start.offset,J.valueSpan.end.offset)))return[J.rawName,"=",J.value];let L=b(J,(Q,V)=>R(Q,Object.assign({__isInHtmlAttribute:!0,__embeddedInHtml:!0},V),{stripTrailingHardline:!0}),q);if(L)return[J.rawName,'="',s(p(L,Q=>typeof Q=="string"?Q.replace(/"/g,"""):Q)),'"'];break}case"front-matter":return h(J,R)}}r.exports=B}}),Oo=te({"src/language-html/print/children.js"(e,r){"use strict";ne();var{builders:{breakParent:t,group:s,ifBreak:a,line:n,softline:u,hardline:i},utils:{replaceTextEndOfLine:l}}=qe(),{locStart:p,locEnd:y}=au(),{forceBreakChildren:h,forceNextEmptyLine:g,isTextLikeNode:c,hasPrettierIgnore:f,preferHardlineAsLeadingSpaces:F}=Rt(),{printOpeningTagPrefix:_,needsToBorrowNextOpeningTagStartMarker:w,printOpeningTagStartMarker:E,needsToBorrowPrevClosingTagEndMarker:N,printClosingTagEndMarker:x,printClosingTagSuffix:I,needsToBorrowParentClosingTagStartMarker:P}=ur();function $(m,C,o){let d=m.getValue();return f(d)?[_(d,C),...l(C.originalText.slice(p(d)+(d.prev&&w(d.prev)?E(d).length:0),y(d)-(d.next&&N(d.next)?x(d,C).length:0))),I(d,C)]:o()}function D(m,C){return c(m)&&c(C)?m.isTrailingSpaceSensitive?m.hasTrailingSpaces?F(C)?i:n:"":F(C)?i:u:w(m)&&(f(C)||C.firstChild||C.isSelfClosing||C.type==="element"&&C.attrs.length>0)||m.type==="element"&&m.isSelfClosing&&N(C)?"":!C.isLeadingSpaceSensitive||F(C)||N(C)&&m.lastChild&&P(m.lastChild)&&m.lastChild.lastChild&&P(m.lastChild.lastChild)?i:C.hasLeadingSpaces?n:u}function T(m,C,o){let d=m.getValue();if(h(d))return[t,...m.map(S=>{let b=S.getValue(),B=b.prev?D(b.prev,b):"";return[B?[B,g(b.prev)?i:""]:"",$(S,C,o)]},"children")];let v=d.children.map(()=>Symbol(""));return m.map((S,b)=>{let B=S.getValue();if(c(B)){if(B.prev&&c(B.prev)){let Q=D(B.prev,B);if(Q)return g(B.prev)?[i,i,$(S,C,o)]:[Q,$(S,C,o)]}return $(S,C,o)}let k=[],M=[],R=[],q=[],J=B.prev?D(B.prev,B):"",L=B.next?D(B,B.next):"";return J&&(g(B.prev)?k.push(i,i):J===i?k.push(i):c(B.prev)?M.push(J):M.push(a("",u,{groupId:v[b-1]}))),L&&(g(B)?c(B.next)&&q.push(i,i):L===i?c(B.next)&&q.push(i):R.push(L)),[...k,s([...M,s([$(S,C,o),...R],{id:v[b]})]),...q]},"children")}r.exports={printChildren:T}}}),wg=te({"src/language-html/print/element.js"(e,r){"use strict";ne();var{builders:{breakParent:t,dedentToRoot:s,group:a,ifBreak:n,indentIfBreak:u,indent:i,line:l,softline:p},utils:{replaceTextEndOfLine:y}}=qe(),h=Lo(),{shouldPreserveContent:g,isScriptLikeTag:c,isVueCustomBlock:f,countParents:F,forceBreakContent:_}=Rt(),{printOpeningTagPrefix:w,printOpeningTag:E,printClosingTagSuffix:N,printClosingTag:x,needsToBorrowPrevClosingTagEndMarker:I,needsToBorrowLastChildClosingTagEndMarker:P}=ur(),{printChildren:$}=Oo();function D(T,m,C){let o=T.getValue();if(g(o,m))return[w(o,m),a(E(T,m,C)),...y(h(o,m)),...x(o,m),N(o,m)];let d=o.children.length===1&&o.firstChild.type==="interpolation"&&o.firstChild.isLeadingSpaceSensitive&&!o.firstChild.hasLeadingSpaces&&o.lastChild.isTrailingSpaceSensitive&&!o.lastChild.hasTrailingSpaces,v=Symbol("element-attr-group-id"),S=M=>a([a(E(T,m,C),{id:v}),M,x(o,m)]),b=M=>d?u(M,{groupId:v}):(c(o)||f(o,m))&&o.parent.type==="root"&&m.parser==="vue"&&!m.vueIndentScriptAndStyle?M:i(M),B=()=>d?n(p,"",{groupId:v}):o.firstChild.hasLeadingSpaces&&o.firstChild.isLeadingSpaceSensitive?l:o.firstChild.type==="text"&&o.isWhitespaceSensitive&&o.isIndentationSensitive?s(p):p,k=()=>(o.next?I(o.next):P(o.parent))?o.lastChild.hasTrailingSpaces&&o.lastChild.isTrailingSpaceSensitive?" ":"":d?n(p,"",{groupId:v}):o.lastChild.hasTrailingSpaces&&o.lastChild.isTrailingSpaceSensitive?l:(o.lastChild.type==="comment"||o.lastChild.type==="text"&&o.isWhitespaceSensitive&&o.isIndentationSensitive)&&new RegExp(`\\n[\\t ]{${m.tabWidth*F(T,R=>R.parent&&R.parent.type!=="root")}}$`).test(o.lastChild.value)?"":p;return o.children.length===0?S(o.hasDanglingSpaces&&o.isDanglingSpaceSensitive?l:""):S([_(o)?t:"",b([B(),$(T,m,C)]),k()])}r.exports={printElement:D}}}),_g=te({"src/language-html/printer-html.js"(e,r){"use strict";ne();var{builders:{fill:t,group:s,hardline:a,literalline:n},utils:{cleanDoc:u,getDocParts:i,isConcat:l,replaceTextEndOfLine:p}}=qe(),y=gg(),{countChars:h,unescapeQuoteEntities:g,getTextValueParts:c}=Rt(),f=Sg(),{insertPragma:F}=xg(),{locStart:_,locEnd:w}=au(),E=Ng(),{printClosingTagSuffix:N,printClosingTagEnd:x,printOpeningTagPrefix:I,printOpeningTagStart:P}=ur(),{printElement:$}=wg(),{printChildren:D}=Oo();function T(m,C,o){let d=m.getValue();switch(d.type){case"front-matter":return p(d.raw);case"root":return C.__onHtmlRoot&&C.__onHtmlRoot(d),[s(D(m,C,o)),a];case"element":case"ieConditionalComment":return $(m,C,o);case"ieConditionalStartComment":case"ieConditionalEndComment":return[P(d),x(d)];case"interpolation":return[P(d,C),...m.map(o,"children"),x(d,C)];case"text":{if(d.parent.type==="interpolation"){let S=/\n[^\S\n]*$/,b=S.test(d.value),B=b?d.value.replace(S,""):d.value;return[...p(B),b?a:""]}let v=u([I(d,C),...c(d),N(d,C)]);return l(v)||v.type==="fill"?t(i(v)):v}case"docType":return[s([P(d,C)," ",d.value.replace(/^html\b/i,"html").replace(/\s+/g," ")]),x(d,C)];case"comment":return[I(d,C),...p(C.originalText.slice(_(d),w(d)),n),N(d,C)];case"attribute":{if(d.value===null)return d.rawName;let v=g(d.value),S=h(v,"'"),b=h(v,'"'),B=S({name:"Angular",since:"1.15.0",parsers:["angular"],vscodeLanguageIds:["html"],extensions:[".component.html"],filenames:[]})),t(On(),l=>({since:"1.15.0",parsers:["html"],vscodeLanguageIds:["html"],extensions:[...l.extensions,".mjml"]})),t(On(),()=>({name:"Lightning Web Components",since:"1.17.0",parsers:["lwc"],vscodeLanguageIds:["html"],extensions:[],filenames:[]})),t(kg(),()=>({since:"1.10.0",parsers:["vue"],vscodeLanguageIds:["vue"]}))],i={html:s};r.exports={languages:u,printers:i,options:a,parsers:n}}}),Og=te({"src/language-yaml/pragma.js"(e,r){"use strict";ne();function t(n){return/^\s*@(?:prettier|format)\s*$/.test(n)}function s(n){return/^\s*#[^\S\n]*@(?:prettier|format)\s*?(?:\n|$)/.test(n)}function a(n){return`# @format + +${n}`}r.exports={isPragma:t,hasPragma:s,insertPragma:a}}}),jg=te({"src/language-yaml/loc.js"(e,r){"use strict";ne();function t(a){return a.position.start.offset}function s(a){return a.position.end.offset}r.exports={locStart:t,locEnd:s}}}),qg=te({"src/language-yaml/embed.js"(e,r){"use strict";ne();function t(s,a,n,u){if(s.getValue().type==="root"&&u.filepath&&/(?:[/\\]|^)\.(?:prettier|stylelint|lintstaged)rc$/.test(u.filepath))return n(u.originalText,Object.assign(Object.assign({},u),{},{parser:"json"}))}r.exports=t}}),$t=te({"src/language-yaml/utils.js"(e,r){"use strict";ne();var{getLast:t,isNonEmptyArray:s}=Ue();function a(D,T){let m=0,C=D.stack.length-1;for(let o=0;ou(C,T,D))}):D,m)}function i(D,T,m){Object.defineProperty(D,T,{get:m,enumerable:!1})}function l(D,T){let m=0,C=T.length;for(let o=D.position.end.offset-1;od===0&&d===v.length-1?o:d!==0&&d!==v.length-1?o.trim():d===0?o.trimEnd():o.trimStart());return m.proseWrap==="preserve"?C.map(o=>o.length===0?[]:[o]):C.map(o=>o.length===0?[]:x(o)).reduce((o,d,v)=>v!==0&&C[v-1].length>0&&d.length>0&&!(D==="quoteDouble"&&t(t(o)).endsWith("\\"))?[...o.slice(0,-1),[...t(o),...d]]:[...o,d],[]).map(o=>m.proseWrap==="never"?[o.join(" ")]:o)}function P(D,T){let{parentIndent:m,isLastDescendant:C,options:o}=T,d=D.position.start.line===D.position.end.line?"":o.originalText.slice(D.position.start.offset,D.position.end.offset).match(/^[^\n]*\n(.*)$/s)[1],v;if(D.indent===null){let B=d.match(/^(? *)[^\n\r ]/m);v=B?B.groups.leadingSpace.length:Number.POSITIVE_INFINITY}else v=D.indent-1+m;let S=d.split(` +`).map(B=>B.slice(v));if(o.proseWrap==="preserve"||D.type==="blockLiteral")return b(S.map(B=>B.length===0?[]:[B]));return b(S.map(B=>B.length===0?[]:x(B)).reduce((B,k,M)=>M!==0&&S[M-1].length>0&&k.length>0&&!/^\s/.test(k[0])&&!/^\s|\s$/.test(t(B))?[...B.slice(0,-1),[...t(B),...k]]:[...B,k],[]).map(B=>B.reduce((k,M)=>k.length>0&&/\s$/.test(t(k))?[...k.slice(0,-1),t(k)+" "+M]:[...k,M],[])).map(B=>o.proseWrap==="never"?[B.join(" ")]:B));function b(B){if(D.chomping==="keep")return t(B).length===0?B.slice(0,-1):B;let k=0;for(let M=B.length-1;M>=0&&B[M].length===0;M--)k++;return k===0?B:k>=2&&!C?B.slice(0,-(k-1)):B.slice(0,-k)}}function $(D){if(!D)return!0;switch(D.type){case"plain":case"quoteDouble":case"quoteSingle":case"alias":case"flowMapping":case"flowSequence":return!0;default:return!1}}r.exports={getLast:t,getAncestorCount:a,isNode:n,isEmptyNode:c,isInlineNode:$,mapNode:u,defineShortcut:i,isNextLineEmpty:l,isLastDescendantNode:p,getBlockValueLineContents:P,getFlowScalarLineContents:I,getLastDescendantNode:y,hasPrettierIgnore:g,hasLeadingComments:F,hasMiddleComments:_,hasIndicatorComment:w,hasTrailingComment:E,hasEndComments:N}}}),Mg=te({"src/language-yaml/print-preprocess.js"(e,r){"use strict";ne();var{defineShortcut:t,mapNode:s}=$t();function a(u){return s(u,n)}function n(u){switch(u.type){case"document":t(u,"head",()=>u.children[0]),t(u,"body",()=>u.children[1]);break;case"documentBody":case"sequenceItem":case"flowSequenceItem":case"mappingKey":case"mappingValue":t(u,"content",()=>u.children[0]);break;case"mappingItem":case"flowMappingItem":t(u,"key",()=>u.children[0]),t(u,"value",()=>u.children[1]);break}return u}r.exports=a}}),Mr=te({"src/language-yaml/print/misc.js"(e,r){"use strict";ne();var{builders:{softline:t,align:s}}=qe(),{hasEndComments:a,isNextLineEmpty:n,isNode:u}=$t(),i=new WeakMap;function l(h,g){let c=h.getValue(),f=h.stack[0],F;return i.has(f)?F=i.get(f):(F=new Set,i.set(f,F)),!F.has(c.position.end.line)&&(F.add(c.position.end.line),n(c,g)&&!p(h.getParentNode()))?t:""}function p(h){return a(h)&&!u(h,["documentHead","documentBody","flowMapping","flowSequence"])}function y(h,g){return s(" ".repeat(h),g)}r.exports={alignWithSpaces:y,shouldPrintEndComments:p,printNextEmptyLine:l}}}),Rg=te({"src/language-yaml/print/flow-mapping-sequence.js"(e,r){"use strict";ne();var{builders:{ifBreak:t,line:s,softline:a,hardline:n,join:u}}=qe(),{isEmptyNode:i,getLast:l,hasEndComments:p}=$t(),{printNextEmptyLine:y,alignWithSpaces:h}=Mr();function g(f,F,_){let w=f.getValue(),E=w.type==="flowMapping",N=E?"{":"[",x=E?"}":"]",I=a;E&&w.children.length>0&&_.bracketSpacing&&(I=s);let P=l(w.children),$=P&&P.type==="flowMappingItem"&&i(P.key)&&i(P.value);return[N,h(_.tabWidth,[I,c(f,F,_),_.trailingComma==="none"?"":t(","),p(w)?[n,u(n,f.map(F,"endComments"))]:""]),$?"":I,x]}function c(f,F,_){let w=f.getValue();return f.map((N,x)=>[F(),x===w.children.length-1?"":[",",s,w.children[x].position.start.line!==w.children[x+1].position.start.line?y(N,_.originalText):""]],"children")}r.exports={printFlowMapping:g,printFlowSequence:g}}}),$g=te({"src/language-yaml/print/mapping-item.js"(e,r){"use strict";ne();var{builders:{conditionalGroup:t,group:s,hardline:a,ifBreak:n,join:u,line:i}}=qe(),{hasLeadingComments:l,hasMiddleComments:p,hasTrailingComment:y,hasEndComments:h,isNode:g,isEmptyNode:c,isInlineNode:f}=$t(),{alignWithSpaces:F}=Mr();function _(x,I,P,$,D){let{key:T,value:m}=x,C=c(T),o=c(m);if(C&&o)return": ";let d=$("key"),v=E(x)?" ":"";if(o)return x.type==="flowMappingItem"&&I.type==="flowMapping"?d:x.type==="mappingItem"&&w(T.content,D)&&!y(T.content)&&(!I.tag||I.tag.value!=="tag:yaml.org,2002:set")?[d,v,":"]:["? ",F(2,d)];let S=$("value");if(C)return[": ",F(2,S)];if(l(m)||!f(T.content))return["? ",F(2,d),a,u("",P.map($,"value","leadingComments").map(q=>[q,a])),": ",F(2,S)];if(N(T.content)&&!l(T.content)&&!p(T.content)&&!y(T.content)&&!h(T)&&!l(m.content)&&!p(m.content)&&!h(m)&&w(m.content,D))return[d,v,": ",S];let b=Symbol("mappingKey"),B=s([n("? "),s(F(2,d),{id:b})]),k=[a,": ",F(2,S)],M=[v,":"];l(m.content)||h(m)&&m.content&&!g(m.content,["mapping","sequence"])||I.type==="mapping"&&y(T.content)&&f(m.content)||g(m.content,["mapping","sequence"])&&m.content.tag===null&&m.content.anchor===null?M.push(a):m.content&&M.push(i),M.push(S);let R=F(D.tabWidth,M);return w(T.content,D)&&!l(T.content)&&!p(T.content)&&!h(T)?t([[d,R]]):t([[B,n(k,R,{groupId:b})]])}function w(x,I){if(!x)return!0;switch(x.type){case"plain":case"quoteSingle":case"quoteDouble":break;case"alias":return!0;default:return!1}if(I.proseWrap==="preserve")return x.position.start.line===x.position.end.line;if(/\\$/m.test(I.originalText.slice(x.position.start.offset,x.position.end.offset)))return!1;switch(I.proseWrap){case"never":return!x.value.includes(` +`);case"always":return!/[\n ]/.test(x.value);default:return!1}}function E(x){return x.key.content&&x.key.content.type==="alias"}function N(x){if(!x)return!0;switch(x.type){case"plain":case"quoteDouble":case"quoteSingle":return x.position.start.line===x.position.end.line;case"alias":return!0;default:return!1}}r.exports=_}}),Vg=te({"src/language-yaml/print/block.js"(e,r){"use strict";ne();var{builders:{dedent:t,dedentToRoot:s,fill:a,hardline:n,join:u,line:i,literalline:l,markAsRoot:p},utils:{getDocParts:y}}=qe(),{getAncestorCount:h,getBlockValueLineContents:g,hasIndicatorComment:c,isLastDescendantNode:f,isNode:F}=$t(),{alignWithSpaces:_}=Mr();function w(E,N,x){let I=E.getValue(),P=h(E,C=>F(C,["sequence","mapping"])),$=f(E),D=[I.type==="blockFolded"?">":"|"];I.indent!==null&&D.push(I.indent.toString()),I.chomping!=="clip"&&D.push(I.chomping==="keep"?"+":"-"),c(I)&&D.push(" ",N("indicatorComment"));let T=g(I,{parentIndent:P,isLastDescendant:$,options:x}),m=[];for(let[C,o]of T.entries())C===0&&m.push(n),m.push(a(y(u(i,o)))),C!==T.length-1?m.push(o.length===0?n:p(l)):I.chomping==="keep"&&$&&m.push(s(o.length===0?n:l));return I.indent===null?D.push(t(_(x.tabWidth,m))):D.push(s(_(I.indent-1+P,m))),D}r.exports=w}}),Wg=te({"src/language-yaml/printer-yaml.js"(e,r){"use strict";ne();var{builders:{breakParent:t,fill:s,group:a,hardline:n,join:u,line:i,lineSuffix:l,literalline:p},utils:{getDocParts:y,replaceTextEndOfLine:h}}=qe(),{isPreviousLineEmpty:g}=Ue(),{insertPragma:c,isPragma:f}=Og(),{locStart:F}=jg(),_=qg(),{getFlowScalarLineContents:w,getLastDescendantNode:E,hasLeadingComments:N,hasMiddleComments:x,hasTrailingComment:I,hasEndComments:P,hasPrettierIgnore:$,isLastDescendantNode:D,isNode:T,isInlineNode:m}=$t(),C=Mg(),{alignWithSpaces:o,printNextEmptyLine:d,shouldPrintEndComments:v}=Mr(),{printFlowMapping:S,printFlowSequence:b}=Rg(),B=$g(),k=Vg();function M(j,Y,ie){let ee=j.getValue(),ce=[];ee.type!=="mappingValue"&&N(ee)&&ce.push([u(n,j.map(ie,"leadingComments")),n]);let{tag:W,anchor:K}=ee;W&&ce.push(ie("tag")),W&&K&&ce.push(" "),K&&ce.push(ie("anchor"));let de="";T(ee,["mapping","sequence","comment","directive","mappingItem","sequenceItem"])&&!D(j)&&(de=d(j,Y.originalText)),(W||K)&&(T(ee,["sequence","mapping"])&&!x(ee)?ce.push(n):ce.push(" ")),x(ee)&&ce.push([ee.middleComments.length===1?"":n,u(n,j.map(ie,"middleComments")),n]);let ue=j.getParentNode();return $(j)?ce.push(h(Y.originalText.slice(ee.position.start.offset,ee.position.end.offset).trimEnd(),p)):ce.push(a(R(ee,ue,j,Y,ie))),I(ee)&&!T(ee,["document","documentHead"])&&ce.push(l([ee.type==="mappingValue"&&!ee.content?"":" ",ue.type==="mappingKey"&&j.getParentNode(2).type==="mapping"&&m(ee)?"":t,ie("trailingComment")])),v(ee)&&ce.push(o(ee.type==="sequenceItem"?2:0,[n,u(n,j.map(Fe=>[g(Y.originalText,Fe.getValue(),F)?n:"",ie()],"endComments"))])),ce.push(de),ce}function R(j,Y,ie,ee,ce){switch(j.type){case"root":{let{children:W}=j,K=[];ie.each((ue,Fe)=>{let z=W[Fe],U=W[Fe+1];Fe!==0&&K.push(n),K.push(ce()),J(z,U)?(K.push(n,"..."),I(z)&&K.push(" ",ce("trailingComment"))):U&&!I(U.head)&&K.push(n,"---")},"children");let de=E(j);return(!T(de,["blockLiteral","blockFolded"])||de.chomping!=="keep")&&K.push(n),K}case"document":{let W=Y.children[ie.getName()+1],K=[];return L(j,W,Y,ee)==="head"&&((j.head.children.length>0||j.head.endComments.length>0)&&K.push(ce("head")),I(j.head)?K.push(["---"," ",ce(["head","trailingComment"])]):K.push("---")),q(j)&&K.push(ce("body")),u(n,K)}case"documentHead":return u(n,[...ie.map(ce,"children"),...ie.map(ce,"endComments")]);case"documentBody":{let{children:W,endComments:K}=j,de="";if(W.length>0&&K.length>0){let ue=E(j);T(ue,["blockFolded","blockLiteral"])?ue.chomping!=="keep"&&(de=[n,n]):de=n}return[u(n,ie.map(ce,"children")),de,u(n,ie.map(ce,"endComments"))]}case"directive":return["%",u(" ",[j.name,...j.parameters])];case"comment":return["#",j.value];case"alias":return["*",j.value];case"tag":return ee.originalText.slice(j.position.start.offset,j.position.end.offset);case"anchor":return["&",j.value];case"plain":return Q(j.type,ee.originalText.slice(j.position.start.offset,j.position.end.offset),ee);case"quoteDouble":case"quoteSingle":{let W="'",K='"',de=ee.originalText.slice(j.position.start.offset+1,j.position.end.offset-1);if(j.type==="quoteSingle"&&de.includes("\\")||j.type==="quoteDouble"&&/\\[^"]/.test(de)){let Fe=j.type==="quoteDouble"?K:W;return[Fe,Q(j.type,de,ee),Fe]}if(de.includes(K))return[W,Q(j.type,j.type==="quoteDouble"?de.replace(/\\"/g,K).replace(/'/g,W.repeat(2)):de,ee),W];if(de.includes(W))return[K,Q(j.type,j.type==="quoteSingle"?de.replace(/''/g,W):de,ee),K];let ue=ee.singleQuote?W:K;return[ue,Q(j.type,de,ee),ue]}case"blockFolded":case"blockLiteral":return k(ie,ce,ee);case"mapping":case"sequence":return u(n,ie.map(ce,"children"));case"sequenceItem":return["- ",o(2,j.content?ce("content"):"")];case"mappingKey":case"mappingValue":return j.content?ce("content"):"";case"mappingItem":case"flowMappingItem":return B(j,Y,ie,ce,ee);case"flowMapping":return S(ie,ce,ee);case"flowSequence":return b(ie,ce,ee);case"flowSequenceItem":return ce("content");default:throw new Error(`Unexpected node type ${j.type}`)}}function q(j){return j.body.children.length>0||P(j.body)}function J(j,Y){return I(j)||Y&&(Y.head.children.length>0||P(Y.head))}function L(j,Y,ie,ee){return ie.children[0]===j&&/---(?:\s|$)/.test(ee.originalText.slice(F(j),F(j)+4))||j.head.children.length>0||P(j.head)||I(j.head)?"head":J(j,Y)?!1:Y?"root":!1}function Q(j,Y,ie){let ee=w(j,Y,ie);return u(n,ee.map(ce=>s(y(u(i,ce)))))}function V(j,Y){if(T(Y))switch(delete Y.position,Y.type){case"comment":if(f(Y.value))return null;break;case"quoteDouble":case"quoteSingle":Y.type="quote";break}}r.exports={preprocess:C,embed:_,print:M,massageAstNode:V,insertPragma:c}}}),Hg=te({"src/language-yaml/options.js"(e,r){"use strict";ne();var t=Mt();r.exports={bracketSpacing:t.bracketSpacing,singleQuote:t.singleQuote,proseWrap:t.proseWrap}}}),Gg=te({"src/language-yaml/parsers.js"(){ne()}}),Ug=te({"node_modules/linguist-languages/data/YAML.json"(e,r){r.exports={name:"YAML",type:"data",color:"#cb171e",tmScope:"source.yaml",aliases:["yml"],extensions:[".yml",".mir",".reek",".rviz",".sublime-syntax",".syntax",".yaml",".yaml-tmlanguage",".yaml.sed",".yml.mysql"],filenames:[".clang-format",".clang-tidy",".gemrc","CITATION.cff","glide.lock","yarn.lock"],aceMode:"yaml",codemirrorMode:"yaml",codemirrorMimeType:"text/x-yaml",languageId:407}}}),Jg=te({"src/language-yaml/index.js"(e,r){"use strict";ne();var t=_t(),s=Wg(),a=Hg(),n=Gg(),u=[t(Ug(),i=>({since:"1.14.0",parsers:["yaml"],vscodeLanguageIds:["yaml","ansible","home-assistant"],filenames:[...i.filenames.filter(l=>l!=="yarn.lock"),".prettierrc",".stylelintrc",".lintstagedrc"]}))];r.exports={languages:u,printers:{yaml:s},options:a,parsers:n}}}),zg=te({"src/languages.js"(e,r){"use strict";ne(),r.exports=[Bd(),Ud(),eg(),ag(),dg(),Lg(),Jg()]}});ne();var{version:Xg}=Ia(),Ot=Gm(),{getSupportInfo:Kg}=Xn(),Yg=Um(),Qg=zg(),Zg=qe();function Nt(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;return function(){for(var t=arguments.length,s=new Array(t),a=0;a function __require() { + return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { + exports: {} + }).exports, mod), mod.exports; +}; +var require_resolve_from = __commonJS({ + "node_modules/import-fresh/node_modules/resolve-from/index.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var Module = require("module"); + var fs = require("fs"); + var resolveFrom = (fromDir, moduleId, silent) => { + if (typeof fromDir !== "string") { + throw new TypeError(`Expected \`fromDir\` to be of type \`string\`, got \`${typeof fromDir}\``); + } + if (typeof moduleId !== "string") { + throw new TypeError(`Expected \`moduleId\` to be of type \`string\`, got \`${typeof moduleId}\``); + } + try { + fromDir = fs.realpathSync(fromDir); + } catch (err) { + if (err.code === "ENOENT") { + fromDir = path.resolve(fromDir); + } else if (silent) { + return null; + } else { + throw err; + } + } + const fromFile = path.join(fromDir, "noop.js"); + const resolveFileName = () => Module._resolveFilename(moduleId, { + id: fromFile, + filename: fromFile, + paths: Module._nodeModulePaths(fromDir) + }); + if (silent) { + try { + return resolveFileName(); + } catch (err) { + return null; + } + } + return resolveFileName(); + }; + module2.exports = (fromDir, moduleId) => resolveFrom(fromDir, moduleId); + module2.exports.silent = (fromDir, moduleId) => resolveFrom(fromDir, moduleId, true); + } +}); +var require_parent_module = __commonJS({ + "scripts/build/shims/parent-module.cjs"(exports2, module2) { + "use strict"; + module2.exports = (file) => file; + } +}); +var require_import_fresh = __commonJS({ + "node_modules/import-fresh/index.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var resolveFrom = require_resolve_from(); + var parentModule = require_parent_module(); + module2.exports = (moduleId) => { + if (typeof moduleId !== "string") { + throw new TypeError("Expected a string"); + } + const parentPath = parentModule(__filename); + const cwd = parentPath ? path.dirname(parentPath) : __dirname; + const filePath = resolveFrom(cwd, moduleId); + const oldModule = require.cache[filePath]; + if (oldModule && oldModule.parent) { + let i = oldModule.parent.children.length; + while (i--) { + if (oldModule.parent.children[i].id === filePath) { + oldModule.parent.children.splice(i, 1); + } + } + } + delete require.cache[filePath]; + const parent = require.cache[parentPath]; + return parent === void 0 ? require(filePath) : parent.require(filePath); + }; + } +}); +var require_is_arrayish = __commonJS({ + "node_modules/is-arrayish/index.js"(exports2, module2) { + "use strict"; + module2.exports = function isArrayish(obj) { + if (!obj) { + return false; + } + return obj instanceof Array || Array.isArray(obj) || obj.length >= 0 && obj.splice instanceof Function; + }; + } +}); +var require_error_ex = __commonJS({ + "node_modules/error-ex/index.js"(exports2, module2) { + "use strict"; + var util = require("util"); + var isArrayish = require_is_arrayish(); + var errorEx = function errorEx2(name, properties) { + if (!name || name.constructor !== String) { + properties = name || {}; + name = Error.name; + } + var errorExError = function ErrorEXError(message) { + if (!this) { + return new ErrorEXError(message); + } + message = message instanceof Error ? message.message : message || this.message; + Error.call(this, message); + Error.captureStackTrace(this, errorExError); + this.name = name; + Object.defineProperty(this, "message", { + configurable: true, + enumerable: false, + get: function() { + var newMessage = message.split(/\r?\n/g); + for (var key in properties) { + if (!properties.hasOwnProperty(key)) { + continue; + } + var modifier = properties[key]; + if ("message" in modifier) { + newMessage = modifier.message(this[key], newMessage) || newMessage; + if (!isArrayish(newMessage)) { + newMessage = [newMessage]; + } + } + } + return newMessage.join("\n"); + }, + set: function(v) { + message = v; + } + }); + var overwrittenStack = null; + var stackDescriptor = Object.getOwnPropertyDescriptor(this, "stack"); + var stackGetter = stackDescriptor.get; + var stackValue = stackDescriptor.value; + delete stackDescriptor.value; + delete stackDescriptor.writable; + stackDescriptor.set = function(newstack) { + overwrittenStack = newstack; + }; + stackDescriptor.get = function() { + var stack = (overwrittenStack || (stackGetter ? stackGetter.call(this) : stackValue)).split(/\r?\n+/g); + if (!overwrittenStack) { + stack[0] = this.name + ": " + this.message; + } + var lineCount = 1; + for (var key in properties) { + if (!properties.hasOwnProperty(key)) { + continue; + } + var modifier = properties[key]; + if ("line" in modifier) { + var line = modifier.line(this[key]); + if (line) { + stack.splice(lineCount++, 0, " " + line); + } + } + if ("stack" in modifier) { + modifier.stack(this[key], stack); + } + } + return stack.join("\n"); + }; + Object.defineProperty(this, "stack", stackDescriptor); + }; + if (Object.setPrototypeOf) { + Object.setPrototypeOf(errorExError.prototype, Error.prototype); + Object.setPrototypeOf(errorExError, Error); + } else { + util.inherits(errorExError, Error); + } + return errorExError; + }; + errorEx.append = function(str, def) { + return { + message: function(v, message) { + v = v || def; + if (v) { + message[0] += " " + str.replace("%s", v.toString()); + } + return message; + } + }; + }; + errorEx.line = function(str, def) { + return { + line: function(v) { + v = v || def; + if (v) { + return str.replace("%s", v.toString()); + } + return null; + } + }; + }; + module2.exports = errorEx; + } +}); +var require_json_parse_even_better_errors = __commonJS({ + "node_modules/json-parse-even-better-errors/index.js"(exports2, module2) { + "use strict"; + var hexify = (char) => { + const h = char.charCodeAt(0).toString(16).toUpperCase(); + return "0x" + (h.length % 2 ? "0" : "") + h; + }; + var parseError = (e, txt, context) => { + if (!txt) { + return { + message: e.message + " while parsing empty string", + position: 0 + }; + } + const badToken = e.message.match(/^Unexpected token (.) .*position\s+(\d+)/i); + const errIdx = badToken ? +badToken[2] : e.message.match(/^Unexpected end of JSON.*/i) ? txt.length - 1 : null; + const msg = badToken ? e.message.replace(/^Unexpected token ./, `Unexpected token ${JSON.stringify(badToken[1])} (${hexify(badToken[1])})`) : e.message; + if (errIdx !== null && errIdx !== void 0) { + const start = errIdx <= context ? 0 : errIdx - context; + const end = errIdx + context >= txt.length ? txt.length : errIdx + context; + const slice = (start === 0 ? "" : "...") + txt.slice(start, end) + (end === txt.length ? "" : "..."); + const near = txt === slice ? "" : "near "; + return { + message: msg + ` while parsing ${near}${JSON.stringify(slice)}`, + position: errIdx + }; + } else { + return { + message: msg + ` while parsing '${txt.slice(0, context * 2)}'`, + position: 0 + }; + } + }; + var JSONParseError = class extends SyntaxError { + constructor(er, txt, context, caller) { + context = context || 20; + const metadata = parseError(er, txt, context); + super(metadata.message); + Object.assign(this, metadata); + this.code = "EJSONPARSE"; + this.systemError = er; + Error.captureStackTrace(this, caller || this.constructor); + } + get name() { + return this.constructor.name; + } + set name(n) { + } + get [Symbol.toStringTag]() { + return this.constructor.name; + } + }; + var kIndent = Symbol.for("indent"); + var kNewline = Symbol.for("newline"); + var formatRE = /^\s*[{\[]((?:\r?\n)+)([\s\t]*)/; + var emptyRE = /^(?:\{\}|\[\])((?:\r?\n)+)?$/; + var parseJson = (txt, reviver, context) => { + const parseText = stripBOM(txt); + context = context || 20; + try { + const [, newline = "\n", indent = " "] = parseText.match(emptyRE) || parseText.match(formatRE) || [, "", ""]; + const result = JSON.parse(parseText, reviver); + if (result && typeof result === "object") { + result[kNewline] = newline; + result[kIndent] = indent; + } + return result; + } catch (e) { + if (typeof txt !== "string" && !Buffer.isBuffer(txt)) { + const isEmptyArray = Array.isArray(txt) && txt.length === 0; + throw Object.assign(new TypeError(`Cannot parse ${isEmptyArray ? "an empty array" : String(txt)}`), { + code: "EJSONPARSE", + systemError: e + }); + } + throw new JSONParseError(e, parseText, context, parseJson); + } + }; + var stripBOM = (txt) => String(txt).replace(/^\uFEFF/, ""); + module2.exports = parseJson; + parseJson.JSONParseError = JSONParseError; + parseJson.noExceptions = (txt, reviver) => { + try { + return JSON.parse(stripBOM(txt), reviver); + } catch (e) { + } + }; + } +}); +var require_build = __commonJS({ + "node_modules/parse-json/node_modules/lines-and-columns/build/index.js"(exports2) { + "use strict"; + exports2.__esModule = true; + exports2.LinesAndColumns = void 0; + var LF = "\n"; + var CR = "\r"; + var LinesAndColumns = function() { + function LinesAndColumns2(string) { + this.string = string; + var offsets = [0]; + for (var offset = 0; offset < string.length; ) { + switch (string[offset]) { + case LF: + offset += LF.length; + offsets.push(offset); + break; + case CR: + offset += CR.length; + if (string[offset] === LF) { + offset += LF.length; + } + offsets.push(offset); + break; + default: + offset++; + break; + } + } + this.offsets = offsets; + } + LinesAndColumns2.prototype.locationForIndex = function(index) { + if (index < 0 || index > this.string.length) { + return null; + } + var line = 0; + var offsets = this.offsets; + while (offsets[line + 1] <= index) { + line++; + } + var column = index - offsets[line]; + return { + line, + column + }; + }; + LinesAndColumns2.prototype.indexForLocation = function(location) { + var line = location.line, column = location.column; + if (line < 0 || line >= this.offsets.length) { + return null; + } + if (column < 0 || column > this.lengthOfLine(line)) { + return null; + } + return this.offsets[line] + column; + }; + LinesAndColumns2.prototype.lengthOfLine = function(line) { + var offset = this.offsets[line]; + var nextOffset = line === this.offsets.length - 1 ? this.string.length : this.offsets[line + 1]; + return nextOffset - offset; + }; + return LinesAndColumns2; + }(); + exports2.LinesAndColumns = LinesAndColumns; + exports2["default"] = LinesAndColumns; + } +}); +var require_js_tokens = __commonJS({ + "node_modules/js-tokens/index.js"(exports2) { + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = /((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g; + exports2.matchToToken = function(match) { + var token = { + type: "invalid", + value: match[0], + closed: void 0 + }; + if (match[1]) + token.type = "string", token.closed = !!(match[3] || match[4]); + else if (match[5]) + token.type = "comment"; + else if (match[6]) + token.type = "comment", token.closed = !!match[7]; + else if (match[8]) + token.type = "regex"; + else if (match[9]) + token.type = "number"; + else if (match[10]) + token.type = "name"; + else if (match[11]) + token.type = "punctuator"; + else if (match[12]) + token.type = "whitespace"; + return token; + }; + } +}); +var require_identifier = __commonJS({ + "node_modules/@babel/helper-validator-identifier/lib/identifier.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.isIdentifierChar = isIdentifierChar; + exports2.isIdentifierName = isIdentifierName; + exports2.isIdentifierStart = isIdentifierStart; + var nonASCIIidentifierStartChars = "\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC"; + var nonASCIIidentifierChars = "\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F"; + var nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]"); + var nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]"); + nonASCIIidentifierStartChars = nonASCIIidentifierChars = null; + var astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 68, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 349, 41, 7, 1, 79, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 20, 1, 64, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 16, 0, 2, 12, 2, 33, 125, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1071, 18, 5, 4026, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 16, 0, 30, 2, 3, 0, 15, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 7, 5, 262, 61, 147, 44, 11, 6, 17, 0, 322, 29, 19, 43, 485, 27, 757, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4153, 7, 221, 3, 5761, 15, 7472, 3104, 541, 1507, 4938, 6, 4191]; + var astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 81, 2, 71, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 3, 0, 158, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 10, 1, 2, 0, 49, 6, 4, 4, 14, 9, 5351, 0, 7, 14, 13835, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 101, 0, 161, 6, 10, 9, 357, 0, 62, 13, 499, 13, 983, 6, 110, 6, 6, 9, 4759, 9, 787719, 239]; + function isInAstralSet(code, set) { + let pos = 65536; + for (let i = 0, length = set.length; i < length; i += 2) { + pos += set[i]; + if (pos > code) + return false; + pos += set[i + 1]; + if (pos >= code) + return true; + } + return false; + } + function isIdentifierStart(code) { + if (code < 65) + return code === 36; + if (code <= 90) + return true; + if (code < 97) + return code === 95; + if (code <= 122) + return true; + if (code <= 65535) { + return code >= 170 && nonASCIIidentifierStart.test(String.fromCharCode(code)); + } + return isInAstralSet(code, astralIdentifierStartCodes); + } + function isIdentifierChar(code) { + if (code < 48) + return code === 36; + if (code < 58) + return true; + if (code < 65) + return false; + if (code <= 90) + return true; + if (code < 97) + return code === 95; + if (code <= 122) + return true; + if (code <= 65535) { + return code >= 170 && nonASCIIidentifier.test(String.fromCharCode(code)); + } + return isInAstralSet(code, astralIdentifierStartCodes) || isInAstralSet(code, astralIdentifierCodes); + } + function isIdentifierName(name) { + let isFirst = true; + for (let i = 0; i < name.length; i++) { + let cp = name.charCodeAt(i); + if ((cp & 64512) === 55296 && i + 1 < name.length) { + const trail = name.charCodeAt(++i); + if ((trail & 64512) === 56320) { + cp = 65536 + ((cp & 1023) << 10) + (trail & 1023); + } + } + if (isFirst) { + isFirst = false; + if (!isIdentifierStart(cp)) { + return false; + } + } else if (!isIdentifierChar(cp)) { + return false; + } + } + return !isFirst; + } + } +}); +var require_keyword = __commonJS({ + "node_modules/@babel/helper-validator-identifier/lib/keyword.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.isKeyword = isKeyword; + exports2.isReservedWord = isReservedWord; + exports2.isStrictBindOnlyReservedWord = isStrictBindOnlyReservedWord; + exports2.isStrictBindReservedWord = isStrictBindReservedWord; + exports2.isStrictReservedWord = isStrictReservedWord; + var reservedWords = { + keyword: ["break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete"], + strict: ["implements", "interface", "let", "package", "private", "protected", "public", "static", "yield"], + strictBind: ["eval", "arguments"] + }; + var keywords = new Set(reservedWords.keyword); + var reservedWordsStrictSet = new Set(reservedWords.strict); + var reservedWordsStrictBindSet = new Set(reservedWords.strictBind); + function isReservedWord(word, inModule) { + return inModule && word === "await" || word === "enum"; + } + function isStrictReservedWord(word, inModule) { + return isReservedWord(word, inModule) || reservedWordsStrictSet.has(word); + } + function isStrictBindOnlyReservedWord(word) { + return reservedWordsStrictBindSet.has(word); + } + function isStrictBindReservedWord(word, inModule) { + return isStrictReservedWord(word, inModule) || isStrictBindOnlyReservedWord(word); + } + function isKeyword(word) { + return keywords.has(word); + } + } +}); +var require_lib = __commonJS({ + "node_modules/@babel/helper-validator-identifier/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + Object.defineProperty(exports2, "isIdentifierChar", { + enumerable: true, + get: function() { + return _identifier.isIdentifierChar; + } + }); + Object.defineProperty(exports2, "isIdentifierName", { + enumerable: true, + get: function() { + return _identifier.isIdentifierName; + } + }); + Object.defineProperty(exports2, "isIdentifierStart", { + enumerable: true, + get: function() { + return _identifier.isIdentifierStart; + } + }); + Object.defineProperty(exports2, "isKeyword", { + enumerable: true, + get: function() { + return _keyword.isKeyword; + } + }); + Object.defineProperty(exports2, "isReservedWord", { + enumerable: true, + get: function() { + return _keyword.isReservedWord; + } + }); + Object.defineProperty(exports2, "isStrictBindOnlyReservedWord", { + enumerable: true, + get: function() { + return _keyword.isStrictBindOnlyReservedWord; + } + }); + Object.defineProperty(exports2, "isStrictBindReservedWord", { + enumerable: true, + get: function() { + return _keyword.isStrictBindReservedWord; + } + }); + Object.defineProperty(exports2, "isStrictReservedWord", { + enumerable: true, + get: function() { + return _keyword.isStrictReservedWord; + } + }); + var _identifier = require_identifier(); + var _keyword = require_keyword(); + } +}); +var require_escape_string_regexp = __commonJS({ + "node_modules/@babel/highlight/node_modules/escape-string-regexp/index.js"(exports2, module2) { + "use strict"; + var matchOperatorsRe = /[|\\{}()[\]^$+*?.]/g; + module2.exports = function(str) { + if (typeof str !== "string") { + throw new TypeError("Expected a string"); + } + return str.replace(matchOperatorsRe, "\\$&"); + }; + } +}); +var require_color_name = __commonJS({ + "node_modules/color-name/index.js"(exports2, module2) { + "use strict"; + module2.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 require_conversions = __commonJS({ + "node_modules/color-convert/conversions.js"(exports2, module2) { + var cssKeywords = require_color_name(); + var reverseKeywords = {}; + for (key in cssKeywords) { + if (cssKeywords.hasOwnProperty(key)) { + reverseKeywords[cssKeywords[key]] = key; + } + } + var key; + var convert = module2.exports = { + 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"] + } + }; + for (model in convert) { + if (convert.hasOwnProperty(model)) { + if (!("channels" in convert[model])) { + throw new Error("missing channels property: " + model); + } + if (!("labels" in convert[model])) { + throw new Error("missing channel labels property: " + model); + } + if (convert[model].labels.length !== convert[model].channels) { + throw new Error("channel and label counts mismatch: " + model); + } + channels = convert[model].channels; + labels = convert[model].labels; + delete convert[model].channels; + delete convert[model].labels; + Object.defineProperty(convert[model], "channels", { + value: channels + }); + Object.defineProperty(convert[model], "labels", { + value: labels + }); + } + } + var channels; + var labels; + var model; + convert.rgb.hsl = function(rgb) { + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + var min = Math.min(r, g, b); + var max = Math.max(r, g, b); + var delta = max - min; + var h; + var s; + var l; + if (max === min) { + h = 0; + } else if (r === max) { + h = (g - b) / delta; + } else if (g === max) { + h = 2 + (b - r) / delta; + } else if (b === max) { + h = 4 + (r - g) / delta; + } + h = Math.min(h * 60, 360); + if (h < 0) { + h += 360; + } + l = (min + max) / 2; + if (max === min) { + s = 0; + } else if (l <= 0.5) { + s = delta / (max + min); + } else { + s = delta / (2 - max - min); + } + return [h, s * 100, l * 100]; + }; + convert.rgb.hsv = function(rgb) { + var rdif; + var gdif; + var bdif; + var h; + var s; + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + var v = Math.max(r, g, b); + var diff = v - Math.min(r, g, b); + var diffc = function(c) { + return (v - c) / 6 / diff + 1 / 2; + }; + if (diff === 0) { + h = s = 0; + } else { + s = diff / v; + rdif = diffc(r); + gdif = diffc(g); + bdif = diffc(b); + if (r === v) { + h = bdif - gdif; + } else if (g === v) { + h = 1 / 3 + rdif - bdif; + } else if (b === v) { + h = 2 / 3 + gdif - rdif; + } + if (h < 0) { + h += 1; + } else if (h > 1) { + h -= 1; + } + } + return [h * 360, s * 100, v * 100]; + }; + convert.rgb.hwb = function(rgb) { + var r = rgb[0]; + var g = rgb[1]; + var b = rgb[2]; + var h = convert.rgb.hsl(rgb)[0]; + var w = 1 / 255 * Math.min(r, Math.min(g, b)); + b = 1 - 1 / 255 * Math.max(r, Math.max(g, b)); + return [h, w * 100, b * 100]; + }; + convert.rgb.cmyk = function(rgb) { + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + var c; + var m; + var y; + var k; + k = Math.min(1 - r, 1 - g, 1 - b); + c = (1 - r - k) / (1 - k) || 0; + m = (1 - g - k) / (1 - k) || 0; + y = (1 - b - k) / (1 - k) || 0; + return [c * 100, m * 100, y * 100, k * 100]; + }; + function comparativeDistance(x, y) { + return Math.pow(x[0] - y[0], 2) + Math.pow(x[1] - y[1], 2) + Math.pow(x[2] - y[2], 2); + } + convert.rgb.keyword = function(rgb) { + var reversed = reverseKeywords[rgb]; + if (reversed) { + return reversed; + } + var currentClosestDistance = Infinity; + var currentClosestKeyword; + for (var keyword in cssKeywords) { + if (cssKeywords.hasOwnProperty(keyword)) { + var value = cssKeywords[keyword]; + var distance = comparativeDistance(rgb, value); + if (distance < currentClosestDistance) { + currentClosestDistance = distance; + currentClosestKeyword = keyword; + } + } + } + return currentClosestKeyword; + }; + convert.keyword.rgb = function(keyword) { + return cssKeywords[keyword]; + }; + convert.rgb.xyz = function(rgb) { + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + r = r > 0.04045 ? Math.pow((r + 0.055) / 1.055, 2.4) : r / 12.92; + g = g > 0.04045 ? Math.pow((g + 0.055) / 1.055, 2.4) : g / 12.92; + b = b > 0.04045 ? Math.pow((b + 0.055) / 1.055, 2.4) : b / 12.92; + var x = r * 0.4124 + g * 0.3576 + b * 0.1805; + var y = r * 0.2126 + g * 0.7152 + b * 0.0722; + var z = r * 0.0193 + g * 0.1192 + b * 0.9505; + return [x * 100, y * 100, z * 100]; + }; + convert.rgb.lab = function(rgb) { + var xyz = convert.rgb.xyz(rgb); + var x = xyz[0]; + var y = xyz[1]; + var z = xyz[2]; + var l; + var a; + var b; + x /= 95.047; + y /= 100; + z /= 108.883; + x = x > 8856e-6 ? Math.pow(x, 1 / 3) : 7.787 * x + 16 / 116; + y = y > 8856e-6 ? Math.pow(y, 1 / 3) : 7.787 * y + 16 / 116; + z = z > 8856e-6 ? Math.pow(z, 1 / 3) : 7.787 * z + 16 / 116; + l = 116 * y - 16; + a = 500 * (x - y); + b = 200 * (y - z); + return [l, a, b]; + }; + convert.hsl.rgb = function(hsl) { + var h = hsl[0] / 360; + var s = hsl[1] / 100; + var l = hsl[2] / 100; + var t1; + var t2; + var t3; + var rgb; + var val; + if (s === 0) { + val = l * 255; + return [val, val, val]; + } + if (l < 0.5) { + t2 = l * (1 + s); + } else { + t2 = l + s - l * s; + } + t1 = 2 * l - t2; + rgb = [0, 0, 0]; + for (var i = 0; i < 3; i++) { + t3 = h + 1 / 3 * -(i - 1); + if (t3 < 0) { + t3++; + } + if (t3 > 1) { + t3--; + } + if (6 * t3 < 1) { + val = t1 + (t2 - t1) * 6 * t3; + } else if (2 * t3 < 1) { + val = t2; + } else if (3 * t3 < 2) { + val = t1 + (t2 - t1) * (2 / 3 - t3) * 6; + } else { + val = t1; + } + rgb[i] = val * 255; + } + return rgb; + }; + convert.hsl.hsv = function(hsl) { + var h = hsl[0]; + var s = hsl[1] / 100; + var l = hsl[2] / 100; + var smin = s; + var lmin = Math.max(l, 0.01); + var sv; + var v; + l *= 2; + s *= l <= 1 ? l : 2 - l; + smin *= lmin <= 1 ? lmin : 2 - lmin; + v = (l + s) / 2; + sv = l === 0 ? 2 * smin / (lmin + smin) : 2 * s / (l + s); + return [h, sv * 100, v * 100]; + }; + convert.hsv.rgb = function(hsv) { + var h = hsv[0] / 60; + var s = hsv[1] / 100; + var v = hsv[2] / 100; + var hi = Math.floor(h) % 6; + var f = h - Math.floor(h); + var p = 255 * v * (1 - s); + var q = 255 * v * (1 - s * f); + var t = 255 * v * (1 - s * (1 - f)); + v *= 255; + switch (hi) { + case 0: + return [v, t, p]; + case 1: + return [q, v, p]; + case 2: + return [p, v, t]; + case 3: + return [p, q, v]; + case 4: + return [t, p, v]; + case 5: + return [v, p, q]; + } + }; + convert.hsv.hsl = function(hsv) { + var h = hsv[0]; + var s = hsv[1] / 100; + var v = hsv[2] / 100; + var vmin = Math.max(v, 0.01); + var lmin; + var sl; + var l; + l = (2 - s) * v; + lmin = (2 - s) * vmin; + sl = s * vmin; + sl /= lmin <= 1 ? lmin : 2 - lmin; + sl = sl || 0; + l /= 2; + return [h, sl * 100, l * 100]; + }; + convert.hwb.rgb = function(hwb) { + var h = hwb[0] / 360; + var wh = hwb[1] / 100; + var bl = hwb[2] / 100; + var ratio = wh + bl; + var i; + var v; + var f; + var n; + if (ratio > 1) { + wh /= ratio; + bl /= ratio; + } + i = Math.floor(6 * h); + v = 1 - bl; + f = 6 * h - i; + if ((i & 1) !== 0) { + f = 1 - f; + } + n = wh + f * (v - wh); + var r; + var g; + var b; + switch (i) { + default: + case 6: + case 0: + r = v; + g = n; + b = wh; + break; + case 1: + r = n; + g = v; + b = wh; + break; + case 2: + r = wh; + g = v; + b = n; + break; + case 3: + r = wh; + g = n; + b = v; + break; + case 4: + r = n; + g = wh; + b = v; + break; + case 5: + r = v; + g = wh; + b = n; + break; + } + return [r * 255, g * 255, b * 255]; + }; + convert.cmyk.rgb = function(cmyk) { + var c = cmyk[0] / 100; + var m = cmyk[1] / 100; + var y = cmyk[2] / 100; + var k = cmyk[3] / 100; + var r; + var g; + var b; + r = 1 - Math.min(1, c * (1 - k) + k); + g = 1 - Math.min(1, m * (1 - k) + k); + b = 1 - Math.min(1, y * (1 - k) + k); + return [r * 255, g * 255, b * 255]; + }; + convert.xyz.rgb = function(xyz) { + var x = xyz[0] / 100; + var y = xyz[1] / 100; + var z = xyz[2] / 100; + var r; + var g; + var b; + r = x * 3.2406 + y * -1.5372 + z * -0.4986; + g = x * -0.9689 + y * 1.8758 + z * 0.0415; + b = x * 0.0557 + y * -0.204 + z * 1.057; + r = r > 31308e-7 ? 1.055 * Math.pow(r, 1 / 2.4) - 0.055 : r * 12.92; + g = g > 31308e-7 ? 1.055 * Math.pow(g, 1 / 2.4) - 0.055 : g * 12.92; + b = b > 31308e-7 ? 1.055 * Math.pow(b, 1 / 2.4) - 0.055 : b * 12.92; + r = Math.min(Math.max(0, r), 1); + g = Math.min(Math.max(0, g), 1); + b = Math.min(Math.max(0, b), 1); + return [r * 255, g * 255, b * 255]; + }; + convert.xyz.lab = function(xyz) { + var x = xyz[0]; + var y = xyz[1]; + var z = xyz[2]; + var l; + var a; + var b; + x /= 95.047; + y /= 100; + z /= 108.883; + x = x > 8856e-6 ? Math.pow(x, 1 / 3) : 7.787 * x + 16 / 116; + y = y > 8856e-6 ? Math.pow(y, 1 / 3) : 7.787 * y + 16 / 116; + z = z > 8856e-6 ? Math.pow(z, 1 / 3) : 7.787 * z + 16 / 116; + l = 116 * y - 16; + a = 500 * (x - y); + b = 200 * (y - z); + return [l, a, b]; + }; + convert.lab.xyz = function(lab) { + var l = lab[0]; + var a = lab[1]; + var b = lab[2]; + var x; + var y; + var z; + y = (l + 16) / 116; + x = a / 500 + y; + z = y - b / 200; + var y2 = Math.pow(y, 3); + var x2 = Math.pow(x, 3); + var z2 = Math.pow(z, 3); + y = y2 > 8856e-6 ? y2 : (y - 16 / 116) / 7.787; + x = x2 > 8856e-6 ? x2 : (x - 16 / 116) / 7.787; + z = z2 > 8856e-6 ? z2 : (z - 16 / 116) / 7.787; + x *= 95.047; + y *= 100; + z *= 108.883; + return [x, y, z]; + }; + convert.lab.lch = function(lab) { + var l = lab[0]; + var a = lab[1]; + var b = lab[2]; + var hr; + var h; + var c; + hr = Math.atan2(b, a); + h = hr * 360 / 2 / Math.PI; + if (h < 0) { + h += 360; + } + c = Math.sqrt(a * a + b * b); + return [l, c, h]; + }; + convert.lch.lab = function(lch) { + var l = lch[0]; + var c = lch[1]; + var h = lch[2]; + var a; + var b; + var hr; + hr = h / 360 * 2 * Math.PI; + a = c * Math.cos(hr); + b = c * Math.sin(hr); + return [l, a, b]; + }; + convert.rgb.ansi16 = function(args) { + var r = args[0]; + var g = args[1]; + var b = args[2]; + var value = 1 in arguments ? arguments[1] : convert.rgb.hsv(args)[2]; + value = Math.round(value / 50); + if (value === 0) { + return 30; + } + var ansi = 30 + (Math.round(b / 255) << 2 | Math.round(g / 255) << 1 | Math.round(r / 255)); + if (value === 2) { + ansi += 60; + } + return ansi; + }; + convert.hsv.ansi16 = function(args) { + return convert.rgb.ansi16(convert.hsv.rgb(args), args[2]); + }; + convert.rgb.ansi256 = function(args) { + var r = args[0]; + var g = args[1]; + var b = args[2]; + if (r === g && g === b) { + if (r < 8) { + return 16; + } + if (r > 248) { + return 231; + } + return Math.round((r - 8) / 247 * 24) + 232; + } + var ansi = 16 + 36 * Math.round(r / 255 * 5) + 6 * Math.round(g / 255 * 5) + Math.round(b / 255 * 5); + return ansi; + }; + convert.ansi16.rgb = function(args) { + var color = args % 10; + if (color === 0 || color === 7) { + if (args > 50) { + color += 3.5; + } + color = color / 10.5 * 255; + return [color, color, color]; + } + var mult = (~~(args > 50) + 1) * 0.5; + var r = (color & 1) * mult * 255; + var g = (color >> 1 & 1) * mult * 255; + var b = (color >> 2 & 1) * mult * 255; + return [r, g, b]; + }; + convert.ansi256.rgb = function(args) { + if (args >= 232) { + var c = (args - 232) * 10 + 8; + return [c, c, c]; + } + args -= 16; + var rem; + var r = Math.floor(args / 36) / 5 * 255; + var g = Math.floor((rem = args % 36) / 6) / 5 * 255; + var b = rem % 6 / 5 * 255; + return [r, g, b]; + }; + convert.rgb.hex = function(args) { + var integer = ((Math.round(args[0]) & 255) << 16) + ((Math.round(args[1]) & 255) << 8) + (Math.round(args[2]) & 255); + var string = integer.toString(16).toUpperCase(); + return "000000".substring(string.length) + string; + }; + convert.hex.rgb = function(args) { + var match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i); + if (!match) { + return [0, 0, 0]; + } + var colorString = match[0]; + if (match[0].length === 3) { + colorString = colorString.split("").map(function(char) { + return char + char; + }).join(""); + } + var integer = parseInt(colorString, 16); + var r = integer >> 16 & 255; + var g = integer >> 8 & 255; + var b = integer & 255; + return [r, g, b]; + }; + convert.rgb.hcg = function(rgb) { + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + var max = Math.max(Math.max(r, g), b); + var min = Math.min(Math.min(r, g), b); + var chroma = max - min; + var grayscale; + var hue; + if (chroma < 1) { + grayscale = min / (1 - chroma); + } else { + grayscale = 0; + } + if (chroma <= 0) { + hue = 0; + } else if (max === r) { + hue = (g - b) / chroma % 6; + } else if (max === g) { + hue = 2 + (b - r) / chroma; + } else { + hue = 4 + (r - g) / chroma + 4; + } + hue /= 6; + hue %= 1; + return [hue * 360, chroma * 100, grayscale * 100]; + }; + convert.hsl.hcg = function(hsl) { + var s = hsl[1] / 100; + var l = hsl[2] / 100; + var c = 1; + var f = 0; + if (l < 0.5) { + c = 2 * s * l; + } else { + c = 2 * s * (1 - l); + } + if (c < 1) { + f = (l - 0.5 * c) / (1 - c); + } + return [hsl[0], c * 100, f * 100]; + }; + convert.hsv.hcg = function(hsv) { + var s = hsv[1] / 100; + var v = hsv[2] / 100; + var c = s * v; + var f = 0; + if (c < 1) { + f = (v - c) / (1 - c); + } + return [hsv[0], c * 100, f * 100]; + }; + convert.hcg.rgb = function(hcg) { + var h = hcg[0] / 360; + var c = hcg[1] / 100; + var g = hcg[2] / 100; + if (c === 0) { + return [g * 255, g * 255, g * 255]; + } + var pure = [0, 0, 0]; + var hi = h % 1 * 6; + var v = hi % 1; + var w = 1 - v; + var mg = 0; + switch (Math.floor(hi)) { + case 0: + pure[0] = 1; + pure[1] = v; + pure[2] = 0; + break; + case 1: + pure[0] = w; + pure[1] = 1; + pure[2] = 0; + break; + case 2: + pure[0] = 0; + pure[1] = 1; + pure[2] = v; + break; + case 3: + pure[0] = 0; + pure[1] = w; + pure[2] = 1; + break; + case 4: + pure[0] = v; + pure[1] = 0; + pure[2] = 1; + break; + default: + pure[0] = 1; + pure[1] = 0; + pure[2] = w; + } + mg = (1 - c) * g; + return [(c * pure[0] + mg) * 255, (c * pure[1] + mg) * 255, (c * pure[2] + mg) * 255]; + }; + convert.hcg.hsv = function(hcg) { + var c = hcg[1] / 100; + var g = hcg[2] / 100; + var v = c + g * (1 - c); + var f = 0; + if (v > 0) { + f = c / v; + } + return [hcg[0], f * 100, v * 100]; + }; + convert.hcg.hsl = function(hcg) { + var c = hcg[1] / 100; + var g = hcg[2] / 100; + var l = g * (1 - c) + 0.5 * c; + var s = 0; + if (l > 0 && l < 0.5) { + s = c / (2 * l); + } else if (l >= 0.5 && l < 1) { + s = c / (2 * (1 - l)); + } + return [hcg[0], s * 100, l * 100]; + }; + convert.hcg.hwb = function(hcg) { + var c = hcg[1] / 100; + var g = hcg[2] / 100; + var v = c + g * (1 - c); + return [hcg[0], (v - c) * 100, (1 - v) * 100]; + }; + convert.hwb.hcg = function(hwb) { + var w = hwb[1] / 100; + var b = hwb[2] / 100; + var v = 1 - b; + var c = v - w; + var g = 0; + if (c < 1) { + g = (v - c) / (1 - c); + } + return [hwb[0], c * 100, g * 100]; + }; + convert.apple.rgb = function(apple) { + return [apple[0] / 65535 * 255, apple[1] / 65535 * 255, apple[2] / 65535 * 255]; + }; + convert.rgb.apple = function(rgb) { + return [rgb[0] / 255 * 65535, rgb[1] / 255 * 65535, rgb[2] / 255 * 65535]; + }; + convert.gray.rgb = function(args) { + return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255]; + }; + convert.gray.hsl = convert.gray.hsv = function(args) { + return [0, 0, args[0]]; + }; + convert.gray.hwb = function(gray) { + return [0, 100, gray[0]]; + }; + convert.gray.cmyk = function(gray) { + return [0, 0, 0, gray[0]]; + }; + convert.gray.lab = function(gray) { + return [gray[0], 0, 0]; + }; + convert.gray.hex = function(gray) { + var val = Math.round(gray[0] / 100 * 255) & 255; + var integer = (val << 16) + (val << 8) + val; + var string = integer.toString(16).toUpperCase(); + return "000000".substring(string.length) + string; + }; + convert.rgb.gray = function(rgb) { + var val = (rgb[0] + rgb[1] + rgb[2]) / 3; + return [val / 255 * 100]; + }; + } +}); +var require_route = __commonJS({ + "node_modules/color-convert/route.js"(exports2, module2) { + var conversions = require_conversions(); + function buildGraph() { + var graph = {}; + var models = Object.keys(conversions); + for (var len = models.length, i = 0; i < len; i++) { + graph[models[i]] = { + distance: -1, + parent: null + }; + } + return graph; + } + function deriveBFS(fromModel) { + var graph = buildGraph(); + var queue = [fromModel]; + graph[fromModel].distance = 0; + while (queue.length) { + var current = queue.pop(); + var adjacents = Object.keys(conversions[current]); + for (var len = adjacents.length, i = 0; i < len; i++) { + var adjacent = adjacents[i]; + var node = graph[adjacent]; + if (node.distance === -1) { + node.distance = graph[current].distance + 1; + node.parent = current; + queue.unshift(adjacent); + } + } + } + return graph; + } + function link(from, to) { + return function(args) { + return to(from(args)); + }; + } + function wrapConversion(toModel, graph) { + var path = [graph[toModel].parent, toModel]; + var fn = conversions[graph[toModel].parent][toModel]; + var cur = graph[toModel].parent; + while (graph[cur].parent) { + path.unshift(graph[cur].parent); + fn = link(conversions[graph[cur].parent][cur], fn); + cur = graph[cur].parent; + } + fn.conversion = path; + return fn; + } + module2.exports = function(fromModel) { + var graph = deriveBFS(fromModel); + var conversion = {}; + var models = Object.keys(graph); + for (var len = models.length, i = 0; i < len; i++) { + var toModel = models[i]; + var node = graph[toModel]; + if (node.parent === null) { + continue; + } + conversion[toModel] = wrapConversion(toModel, graph); + } + return conversion; + }; + } +}); +var require_color_convert = __commonJS({ + "node_modules/color-convert/index.js"(exports2, module2) { + var conversions = require_conversions(); + var route = require_route(); + var convert = {}; + var models = Object.keys(conversions); + function wrapRaw(fn) { + var wrappedFn = function(args) { + if (args === void 0 || args === null) { + return args; + } + if (arguments.length > 1) { + args = Array.prototype.slice.call(arguments); + } + return fn(args); + }; + if ("conversion" in fn) { + wrappedFn.conversion = fn.conversion; + } + return wrappedFn; + } + function wrapRounded(fn) { + var wrappedFn = function(args) { + if (args === void 0 || args === null) { + return args; + } + if (arguments.length > 1) { + args = Array.prototype.slice.call(arguments); + } + var result = fn(args); + if (typeof result === "object") { + for (var len = result.length, i = 0; i < len; i++) { + result[i] = Math.round(result[i]); + } + } + return result; + }; + if ("conversion" in fn) { + wrappedFn.conversion = fn.conversion; + } + return wrappedFn; + } + models.forEach(function(fromModel) { + convert[fromModel] = {}; + Object.defineProperty(convert[fromModel], "channels", { + value: conversions[fromModel].channels + }); + Object.defineProperty(convert[fromModel], "labels", { + value: conversions[fromModel].labels + }); + var routes = route(fromModel); + var routeModels = Object.keys(routes); + routeModels.forEach(function(toModel) { + var fn = routes[toModel]; + convert[fromModel][toModel] = wrapRounded(fn); + convert[fromModel][toModel].raw = wrapRaw(fn); + }); + }); + module2.exports = convert; + } +}); +var require_ansi_styles = __commonJS({ + "node_modules/ansi-styles/index.js"(exports2, module2) { + "use strict"; + var colorConvert = require_color_convert(); + var wrapAnsi16 = (fn, offset) => function() { + const code = fn.apply(colorConvert, arguments); + return `\x1B[${code + offset}m`; + }; + var wrapAnsi256 = (fn, offset) => function() { + const code = fn.apply(colorConvert, arguments); + return `\x1B[${38 + offset};5;${code}m`; + }; + var wrapAnsi16m = (fn, offset) => function() { + const rgb = fn.apply(colorConvert, arguments); + return `\x1B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; + }; + function assembleStyles() { + const codes = /* @__PURE__ */ new Map(); + const styles = { + 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], + gray: [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] + } + }; + styles.color.grey = styles.color.gray; + for (const groupName of Object.keys(styles)) { + const group = styles[groupName]; + for (const styleName of Object.keys(group)) { + const style = group[styleName]; + styles[styleName] = { + open: `\x1B[${style[0]}m`, + close: `\x1B[${style[1]}m` + }; + group[styleName] = styles[styleName]; + codes.set(style[0], style[1]); + } + Object.defineProperty(styles, groupName, { + value: group, + enumerable: false + }); + Object.defineProperty(styles, "codes", { + value: codes, + enumerable: false + }); + } + const ansi2ansi = (n) => n; + const rgb2rgb = (r, g, b) => [r, g, b]; + styles.color.close = "\x1B[39m"; + styles.bgColor.close = "\x1B[49m"; + styles.color.ansi = { + ansi: wrapAnsi16(ansi2ansi, 0) + }; + styles.color.ansi256 = { + ansi256: wrapAnsi256(ansi2ansi, 0) + }; + styles.color.ansi16m = { + rgb: wrapAnsi16m(rgb2rgb, 0) + }; + styles.bgColor.ansi = { + ansi: wrapAnsi16(ansi2ansi, 10) + }; + styles.bgColor.ansi256 = { + ansi256: wrapAnsi256(ansi2ansi, 10) + }; + styles.bgColor.ansi16m = { + rgb: wrapAnsi16m(rgb2rgb, 10) + }; + for (let key of Object.keys(colorConvert)) { + if (typeof colorConvert[key] !== "object") { + continue; + } + const suite = colorConvert[key]; + if (key === "ansi16") { + key = "ansi"; + } + if ("ansi16" in suite) { + styles.color.ansi[key] = wrapAnsi16(suite.ansi16, 0); + styles.bgColor.ansi[key] = wrapAnsi16(suite.ansi16, 10); + } + if ("ansi256" in suite) { + styles.color.ansi256[key] = wrapAnsi256(suite.ansi256, 0); + styles.bgColor.ansi256[key] = wrapAnsi256(suite.ansi256, 10); + } + if ("rgb" in suite) { + styles.color.ansi16m[key] = wrapAnsi16m(suite.rgb, 0); + styles.bgColor.ansi16m[key] = wrapAnsi16m(suite.rgb, 10); + } + } + return styles; + } + Object.defineProperty(module2, "exports", { + enumerable: true, + get: assembleStyles + }); + } +}); +var require_has_flag = __commonJS({ + "node_modules/@babel/highlight/node_modules/has-flag/index.js"(exports2, module2) { + "use strict"; + module2.exports = (flag, argv) => { + argv = argv || process.argv; + const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; + const pos = argv.indexOf(prefix + flag); + const terminatorPos = argv.indexOf("--"); + return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos); + }; + } +}); +var require_supports_color = __commonJS({ + "node_modules/@babel/highlight/node_modules/supports-color/index.js"(exports2, module2) { + "use strict"; + var os = require("os"); + var hasFlag = require_has_flag(); + var env = process.env; + var forceColor; + if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false")) { + forceColor = false; + } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { + forceColor = true; + } + if ("FORCE_COLOR" in env) { + forceColor = env.FORCE_COLOR.length === 0 || parseInt(env.FORCE_COLOR, 10) !== 0; + } + function translateLevel(level) { + if (level === 0) { + return false; + } + return { + level, + hasBasic: true, + has256: level >= 2, + has16m: level >= 3 + }; + } + function supportsColor(stream) { + if (forceColor === false) { + return 0; + } + if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { + return 3; + } + if (hasFlag("color=256")) { + return 2; + } + if (stream && !stream.isTTY && forceColor !== true) { + return 0; + } + const min = forceColor ? 1 : 0; + if (process.platform === "win32") { + const osRelease = os.release().split("."); + if (Number(process.versions.node.split(".")[0]) >= 8 && Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { + return Number(osRelease[2]) >= 14931 ? 3 : 2; + } + return 1; + } + if ("CI" in env) { + if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI"].some((sign) => sign in env) || env.CI_NAME === "codeship") { + return 1; + } + return min; + } + if ("TEAMCITY_VERSION" in env) { + return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0; + } + if (env.COLORTERM === "truecolor") { + return 3; + } + if ("TERM_PROGRAM" in env) { + const version = parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10); + switch (env.TERM_PROGRAM) { + case "iTerm.app": + return version >= 3 ? 3 : 2; + case "Apple_Terminal": + return 2; + } + } + if (/-256(color)?$/i.test(env.TERM)) { + return 2; + } + if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) { + return 1; + } + if ("COLORTERM" in env) { + return 1; + } + if (env.TERM === "dumb") { + return min; + } + return min; + } + function getSupportLevel(stream) { + const level = supportsColor(stream); + return translateLevel(level); + } + module2.exports = { + supportsColor: getSupportLevel, + stdout: getSupportLevel(process.stdout), + stderr: getSupportLevel(process.stderr) + }; + } +}); +var require_templates = __commonJS({ + "node_modules/@babel/highlight/node_modules/chalk/templates.js"(exports2, module2) { + "use strict"; + var TEMPLATE_REGEX = /(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi; + var STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g; + var STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/; + var ESCAPE_REGEX = /\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi; + var ESCAPES = /* @__PURE__ */ new Map([["n", "\n"], ["r", "\r"], ["t", " "], ["b", "\b"], ["f", "\f"], ["v", "\v"], ["0", "\0"], ["\\", "\\"], ["e", "\x1B"], ["a", "\x07"]]); + function unescape(c) { + if (c[0] === "u" && c.length === 5 || c[0] === "x" && c.length === 3) { + return String.fromCharCode(parseInt(c.slice(1), 16)); + } + return ESCAPES.get(c) || c; + } + function parseArguments(name, args) { + const results = []; + const chunks = args.trim().split(/\s*,\s*/g); + let matches; + for (const chunk of chunks) { + if (!isNaN(chunk)) { + results.push(Number(chunk)); + } else if (matches = chunk.match(STRING_REGEX)) { + results.push(matches[2].replace(ESCAPE_REGEX, (m, escape, chr) => escape ? unescape(escape) : chr)); + } else { + throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`); + } + } + return results; + } + function parseStyle(style) { + STYLE_REGEX.lastIndex = 0; + const results = []; + let matches; + while ((matches = STYLE_REGEX.exec(style)) !== null) { + const name = matches[1]; + if (matches[2]) { + const args = parseArguments(name, matches[2]); + results.push([name].concat(args)); + } else { + results.push([name]); + } + } + return results; + } + function buildStyle(chalk, styles) { + const enabled = {}; + for (const layer of styles) { + for (const style of layer.styles) { + enabled[style[0]] = layer.inverse ? null : style.slice(1); + } + } + let current = chalk; + for (const styleName of Object.keys(enabled)) { + if (Array.isArray(enabled[styleName])) { + if (!(styleName in current)) { + throw new Error(`Unknown Chalk style: ${styleName}`); + } + if (enabled[styleName].length > 0) { + current = current[styleName].apply(current, enabled[styleName]); + } else { + current = current[styleName]; + } + } + } + return current; + } + module2.exports = (chalk, tmp) => { + const styles = []; + const chunks = []; + let chunk = []; + tmp.replace(TEMPLATE_REGEX, (m, escapeChar, inverse, style, close, chr) => { + if (escapeChar) { + chunk.push(unescape(escapeChar)); + } else if (style) { + const str = chunk.join(""); + chunk = []; + chunks.push(styles.length === 0 ? str : buildStyle(chalk, styles)(str)); + styles.push({ + inverse, + styles: parseStyle(style) + }); + } else if (close) { + if (styles.length === 0) { + throw new Error("Found extraneous } in Chalk template literal"); + } + chunks.push(buildStyle(chalk, styles)(chunk.join(""))); + chunk = []; + styles.pop(); + } else { + chunk.push(chr); + } + }); + chunks.push(chunk.join("")); + if (styles.length > 0) { + const errMsg = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? "" : "s"} (\`}\`)`; + throw new Error(errMsg); + } + return chunks.join(""); + }; + } +}); +var require_chalk = __commonJS({ + "node_modules/@babel/highlight/node_modules/chalk/index.js"(exports2, module2) { + "use strict"; + var escapeStringRegexp = require_escape_string_regexp(); + var ansiStyles = require_ansi_styles(); + var stdoutColor = require_supports_color().stdout; + var template = require_templates(); + var isSimpleWindowsTerm = process.platform === "win32" && !(process.env.TERM || "").toLowerCase().startsWith("xterm"); + var levelMapping = ["ansi", "ansi", "ansi256", "ansi16m"]; + var skipModels = /* @__PURE__ */ new Set(["gray"]); + var styles = /* @__PURE__ */ Object.create(null); + function applyOptions(obj, options) { + options = options || {}; + const scLevel = stdoutColor ? stdoutColor.level : 0; + obj.level = options.level === void 0 ? scLevel : options.level; + obj.enabled = "enabled" in options ? options.enabled : obj.level > 0; + } + function Chalk(options) { + if (!this || !(this instanceof Chalk) || this.template) { + const chalk = {}; + applyOptions(chalk, options); + chalk.template = function() { + const args = [].slice.call(arguments); + return chalkTag.apply(null, [chalk.template].concat(args)); + }; + Object.setPrototypeOf(chalk, Chalk.prototype); + Object.setPrototypeOf(chalk.template, chalk); + chalk.template.constructor = Chalk; + return chalk.template; + } + applyOptions(this, options); + } + if (isSimpleWindowsTerm) { + ansiStyles.blue.open = "\x1B[94m"; + } + for (const key of Object.keys(ansiStyles)) { + ansiStyles[key].closeRe = new RegExp(escapeStringRegexp(ansiStyles[key].close), "g"); + styles[key] = { + get() { + const codes = ansiStyles[key]; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, key); + } + }; + } + styles.visible = { + get() { + return build.call(this, this._styles || [], true, "visible"); + } + }; + ansiStyles.color.closeRe = new RegExp(escapeStringRegexp(ansiStyles.color.close), "g"); + for (const model of Object.keys(ansiStyles.color.ansi)) { + if (skipModels.has(model)) { + continue; + } + styles[model] = { + get() { + const level = this.level; + return function() { + const open = ansiStyles.color[levelMapping[level]][model].apply(null, arguments); + const codes = { + open, + close: ansiStyles.color.close, + closeRe: ansiStyles.color.closeRe + }; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); + }; + } + }; + } + ansiStyles.bgColor.closeRe = new RegExp(escapeStringRegexp(ansiStyles.bgColor.close), "g"); + for (const model of Object.keys(ansiStyles.bgColor.ansi)) { + if (skipModels.has(model)) { + continue; + } + const bgModel = "bg" + model[0].toUpperCase() + model.slice(1); + styles[bgModel] = { + get() { + const level = this.level; + return function() { + const open = ansiStyles.bgColor[levelMapping[level]][model].apply(null, arguments); + const codes = { + open, + close: ansiStyles.bgColor.close, + closeRe: ansiStyles.bgColor.closeRe + }; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); + }; + } + }; + } + var proto = Object.defineProperties(() => { + }, styles); + function build(_styles, _empty, key) { + const builder = function() { + return applyStyle.apply(builder, arguments); + }; + builder._styles = _styles; + builder._empty = _empty; + const self = this; + Object.defineProperty(builder, "level", { + enumerable: true, + get() { + return self.level; + }, + set(level) { + self.level = level; + } + }); + Object.defineProperty(builder, "enabled", { + enumerable: true, + get() { + return self.enabled; + }, + set(enabled) { + self.enabled = enabled; + } + }); + builder.hasGrey = this.hasGrey || key === "gray" || key === "grey"; + builder.__proto__ = proto; + return builder; + } + function applyStyle() { + const args = arguments; + const argsLen = args.length; + let str = String(arguments[0]); + if (argsLen === 0) { + return ""; + } + if (argsLen > 1) { + for (let a = 1; a < argsLen; a++) { + str += " " + args[a]; + } + } + if (!this.enabled || this.level <= 0 || !str) { + return this._empty ? "" : str; + } + const originalDim = ansiStyles.dim.open; + if (isSimpleWindowsTerm && this.hasGrey) { + ansiStyles.dim.open = ""; + } + for (const code of this._styles.slice().reverse()) { + str = code.open + str.replace(code.closeRe, code.open) + code.close; + str = str.replace(/\r?\n/g, `${code.close}$&${code.open}`); + } + ansiStyles.dim.open = originalDim; + return str; + } + function chalkTag(chalk, strings) { + if (!Array.isArray(strings)) { + return [].slice.call(arguments, 1).join(" "); + } + const args = [].slice.call(arguments, 2); + const parts = [strings.raw[0]]; + for (let i = 1; i < strings.length; i++) { + parts.push(String(args[i - 1]).replace(/[{}\\]/g, "\\$&")); + parts.push(String(strings.raw[i])); + } + return template(chalk, parts.join("")); + } + Object.defineProperties(Chalk.prototype, styles); + module2.exports = Chalk(); + module2.exports.supportsColor = stdoutColor; + module2.exports.default = module2.exports; + } +}); +var require_lib2 = __commonJS({ + "node_modules/@babel/highlight/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.default = highlight; + exports2.getChalk = getChalk; + exports2.shouldHighlight = shouldHighlight; + var _jsTokens = require_js_tokens(); + var _helperValidatorIdentifier = require_lib(); + var _chalk = require_chalk(); + var sometimesKeywords = /* @__PURE__ */ new Set(["as", "async", "from", "get", "of", "set"]); + function getDefs(chalk) { + return { + keyword: chalk.cyan, + capitalized: chalk.yellow, + jsxIdentifier: chalk.yellow, + punctuator: chalk.yellow, + number: chalk.magenta, + string: chalk.green, + regex: chalk.magenta, + comment: chalk.grey, + invalid: chalk.white.bgRed.bold + }; + } + var NEWLINE = /\r\n|[\n\r\u2028\u2029]/; + var BRACKET = /^[()[\]{}]$/; + var tokenize; + { + const JSX_TAG = /^[a-z][\w-]*$/i; + const getTokenType = function(token, offset, text) { + if (token.type === "name") { + if ((0, _helperValidatorIdentifier.isKeyword)(token.value) || (0, _helperValidatorIdentifier.isStrictReservedWord)(token.value, true) || sometimesKeywords.has(token.value)) { + return "keyword"; + } + if (JSX_TAG.test(token.value) && (text[offset - 1] === "<" || text.slice(offset - 2, offset) == " colorize(str)).join("\n"); + } else { + highlighted += value; + } + } + return highlighted; + } + function shouldHighlight(options) { + return !!_chalk.supportsColor || options.forceColor; + } + function getChalk(options) { + return options.forceColor ? new _chalk.constructor({ + enabled: true, + level: 1 + }) : _chalk; + } + function highlight(code, options = {}) { + if (code !== "" && shouldHighlight(options)) { + const chalk = getChalk(options); + const defs = getDefs(chalk); + return highlightTokens(defs, code); + } else { + return code; + } + } + } +}); +var require_lib3 = __commonJS({ + "node_modules/@babel/code-frame/lib/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.codeFrameColumns = codeFrameColumns; + exports2.default = _default; + var _highlight = require_lib2(); + var deprecationWarningShown = false; + function getDefs(chalk) { + return { + gutter: chalk.grey, + marker: chalk.red.bold, + message: chalk.red.bold + }; + } + var NEWLINE = /\r\n|[\n\r\u2028\u2029]/; + function getMarkerLines(loc, source, opts) { + const startLoc = Object.assign({ + column: 0, + line: -1 + }, loc.start); + const endLoc = Object.assign({}, startLoc, loc.end); + const { + linesAbove = 2, + linesBelow = 3 + } = opts || {}; + const startLine = startLoc.line; + const startColumn = startLoc.column; + const endLine = endLoc.line; + const endColumn = endLoc.column; + let start = Math.max(startLine - (linesAbove + 1), 0); + let end = Math.min(source.length, endLine + linesBelow); + if (startLine === -1) { + start = 0; + } + if (endLine === -1) { + end = source.length; + } + const lineDiff = endLine - startLine; + const markerLines = {}; + if (lineDiff) { + for (let i = 0; i <= lineDiff; i++) { + const lineNumber = i + startLine; + if (!startColumn) { + markerLines[lineNumber] = true; + } else if (i === 0) { + const sourceLength = source[lineNumber - 1].length; + markerLines[lineNumber] = [startColumn, sourceLength - startColumn + 1]; + } else if (i === lineDiff) { + markerLines[lineNumber] = [0, endColumn]; + } else { + const sourceLength = source[lineNumber - i].length; + markerLines[lineNumber] = [0, sourceLength]; + } + } + } else { + if (startColumn === endColumn) { + if (startColumn) { + markerLines[startLine] = [startColumn, 0]; + } else { + markerLines[startLine] = true; + } + } else { + markerLines[startLine] = [startColumn, endColumn - startColumn]; + } + } + return { + start, + end, + markerLines + }; + } + function codeFrameColumns(rawLines, loc, opts = {}) { + const highlighted = (opts.highlightCode || opts.forceColor) && (0, _highlight.shouldHighlight)(opts); + const chalk = (0, _highlight.getChalk)(opts); + const defs = getDefs(chalk); + const maybeHighlight = (chalkFn, string) => { + return highlighted ? chalkFn(string) : string; + }; + const lines = rawLines.split(NEWLINE); + const { + start, + end, + markerLines + } = getMarkerLines(loc, lines, opts); + const hasColumns = loc.start && typeof loc.start.column === "number"; + const numberMaxWidth = String(end).length; + const highlightedLines = highlighted ? (0, _highlight.default)(rawLines, opts) : rawLines; + let frame = highlightedLines.split(NEWLINE, end).slice(start, end).map((line, index) => { + const number = start + 1 + index; + const paddedNumber = ` ${number}`.slice(-numberMaxWidth); + const gutter = ` ${paddedNumber} |`; + const hasMarker = markerLines[number]; + const lastMarkerLine = !markerLines[number + 1]; + if (hasMarker) { + let markerLine = ""; + if (Array.isArray(hasMarker)) { + const markerSpacing = line.slice(0, Math.max(hasMarker[0] - 1, 0)).replace(/[^\t]/g, " "); + const numberOfMarkers = hasMarker[1] || 1; + markerLine = ["\n ", maybeHighlight(defs.gutter, gutter.replace(/\d/g, " ")), " ", markerSpacing, maybeHighlight(defs.marker, "^").repeat(numberOfMarkers)].join(""); + if (lastMarkerLine && opts.message) { + markerLine += " " + maybeHighlight(defs.message, opts.message); + } + } + return [maybeHighlight(defs.marker, ">"), maybeHighlight(defs.gutter, gutter), line.length > 0 ? ` ${line}` : "", markerLine].join(""); + } else { + return ` ${maybeHighlight(defs.gutter, gutter)}${line.length > 0 ? ` ${line}` : ""}`; + } + }).join("\n"); + if (opts.message && !hasColumns) { + frame = `${" ".repeat(numberMaxWidth + 1)}${opts.message} +${frame}`; + } + if (highlighted) { + return chalk.reset(frame); + } else { + return frame; + } + } + function _default(rawLines, lineNumber, colNumber, opts = {}) { + if (!deprecationWarningShown) { + deprecationWarningShown = true; + const message = "Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`."; + if (process.emitWarning) { + process.emitWarning(message, "DeprecationWarning"); + } else { + const deprecationError = new Error(message); + deprecationError.name = "DeprecationWarning"; + console.warn(new Error(message)); + } + } + colNumber = Math.max(colNumber, 0); + const location = { + start: { + column: colNumber, + line: lineNumber + } + }; + return codeFrameColumns(rawLines, location, opts); + } + } +}); +var require_parse_json = __commonJS({ + "node_modules/parse-json/index.js"(exports2, module2) { + "use strict"; + var errorEx = require_error_ex(); + var fallback = require_json_parse_even_better_errors(); + var { + default: LinesAndColumns + } = require_build(); + var { + codeFrameColumns + } = require_lib3(); + var JSONError = errorEx("JSONError", { + fileName: errorEx.append("in %s"), + codeFrame: errorEx.append("\n\n%s\n") + }); + var parseJson = (string, reviver, filename) => { + if (typeof reviver === "string") { + filename = reviver; + reviver = null; + } + try { + try { + return JSON.parse(string, reviver); + } catch (error) { + fallback(string, reviver); + throw error; + } + } catch (error) { + error.message = error.message.replace(/\n/g, ""); + const indexMatch = error.message.match(/in JSON at position (\d+) while parsing/); + const jsonError = new JSONError(error); + if (filename) { + jsonError.fileName = filename; + } + if (indexMatch && indexMatch.length > 0) { + const lines = new LinesAndColumns(string); + const index = Number(indexMatch[1]); + const location = lines.locationForIndex(index); + const codeFrame = codeFrameColumns(string, { + start: { + line: location.line + 1, + column: location.column + 1 + } + }, { + highlightCode: true + }); + jsonError.codeFrame = codeFrame; + } + throw jsonError; + } + }; + parseJson.JSONError = JSONError; + module2.exports = parseJson; + } +}); +var require_PlainValue_ec8e588e = __commonJS({ + "node_modules/yaml/dist/PlainValue-ec8e588e.js"(exports2) { + "use strict"; + var Char = { + ANCHOR: "&", + COMMENT: "#", + TAG: "!", + DIRECTIVES_END: "-", + DOCUMENT_END: "." + }; + var Type = { + ALIAS: "ALIAS", + BLANK_LINE: "BLANK_LINE", + BLOCK_FOLDED: "BLOCK_FOLDED", + BLOCK_LITERAL: "BLOCK_LITERAL", + COMMENT: "COMMENT", + DIRECTIVE: "DIRECTIVE", + DOCUMENT: "DOCUMENT", + FLOW_MAP: "FLOW_MAP", + FLOW_SEQ: "FLOW_SEQ", + MAP: "MAP", + MAP_KEY: "MAP_KEY", + MAP_VALUE: "MAP_VALUE", + PLAIN: "PLAIN", + QUOTE_DOUBLE: "QUOTE_DOUBLE", + QUOTE_SINGLE: "QUOTE_SINGLE", + SEQ: "SEQ", + SEQ_ITEM: "SEQ_ITEM" + }; + var defaultTagPrefix = "tag:yaml.org,2002:"; + var defaultTags = { + MAP: "tag:yaml.org,2002:map", + SEQ: "tag:yaml.org,2002:seq", + STR: "tag:yaml.org,2002:str" + }; + function findLineStarts(src) { + const ls = [0]; + let offset = src.indexOf("\n"); + while (offset !== -1) { + offset += 1; + ls.push(offset); + offset = src.indexOf("\n", offset); + } + return ls; + } + function getSrcInfo(cst) { + let lineStarts, src; + if (typeof cst === "string") { + lineStarts = findLineStarts(cst); + src = cst; + } else { + if (Array.isArray(cst)) + cst = cst[0]; + if (cst && cst.context) { + if (!cst.lineStarts) + cst.lineStarts = findLineStarts(cst.context.src); + lineStarts = cst.lineStarts; + src = cst.context.src; + } + } + return { + lineStarts, + src + }; + } + function getLinePos(offset, cst) { + if (typeof offset !== "number" || offset < 0) + return null; + const { + lineStarts, + src + } = getSrcInfo(cst); + if (!lineStarts || !src || offset > src.length) + return null; + for (let i = 0; i < lineStarts.length; ++i) { + const start = lineStarts[i]; + if (offset < start) { + return { + line: i, + col: offset - lineStarts[i - 1] + 1 + }; + } + if (offset === start) + return { + line: i + 1, + col: 1 + }; + } + const line = lineStarts.length; + return { + line, + col: offset - lineStarts[line - 1] + 1 + }; + } + function getLine(line, cst) { + const { + lineStarts, + src + } = getSrcInfo(cst); + if (!lineStarts || !(line >= 1) || line > lineStarts.length) + return null; + const start = lineStarts[line - 1]; + let end = lineStarts[line]; + while (end && end > start && src[end - 1] === "\n") + --end; + return src.slice(start, end); + } + function getPrettyContext({ + start, + end + }, cst, maxWidth = 80) { + let src = getLine(start.line, cst); + if (!src) + return null; + let { + col + } = start; + if (src.length > maxWidth) { + if (col <= maxWidth - 10) { + src = src.substr(0, maxWidth - 1) + "\u2026"; + } else { + const halfWidth = Math.round(maxWidth / 2); + if (src.length > col + halfWidth) + src = src.substr(0, col + halfWidth - 1) + "\u2026"; + col -= src.length - maxWidth; + src = "\u2026" + src.substr(1 - maxWidth); + } + } + let errLen = 1; + let errEnd = ""; + if (end) { + if (end.line === start.line && col + (end.col - start.col) <= maxWidth + 1) { + errLen = end.col - start.col; + } else { + errLen = Math.min(src.length + 1, maxWidth) - col; + errEnd = "\u2026"; + } + } + const offset = col > 1 ? " ".repeat(col - 1) : ""; + const err = "^".repeat(errLen); + return `${src} +${offset}${err}${errEnd}`; + } + var Range = class { + static copy(orig) { + return new Range(orig.start, orig.end); + } + constructor(start, end) { + this.start = start; + this.end = end || start; + } + isEmpty() { + return typeof this.start !== "number" || !this.end || this.end <= this.start; + } + setOrigRange(cr, offset) { + const { + start, + end + } = this; + if (cr.length === 0 || end <= cr[0]) { + this.origStart = start; + this.origEnd = end; + return offset; + } + let i = offset; + while (i < cr.length) { + if (cr[i] > start) + break; + else + ++i; + } + this.origStart = start + i; + const nextOffset = i; + while (i < cr.length) { + if (cr[i] >= end) + break; + else + ++i; + } + this.origEnd = end + i; + return nextOffset; + } + }; + var Node = class { + static addStringTerminator(src, offset, str) { + if (str[str.length - 1] === "\n") + return str; + const next = Node.endOfWhiteSpace(src, offset); + return next >= src.length || src[next] === "\n" ? str + "\n" : str; + } + static atDocumentBoundary(src, offset, sep) { + const ch0 = src[offset]; + if (!ch0) + return true; + const prev = src[offset - 1]; + if (prev && prev !== "\n") + return false; + if (sep) { + if (ch0 !== sep) + return false; + } else { + if (ch0 !== Char.DIRECTIVES_END && ch0 !== Char.DOCUMENT_END) + return false; + } + const ch1 = src[offset + 1]; + const ch2 = src[offset + 2]; + if (ch1 !== ch0 || ch2 !== ch0) + return false; + const ch3 = src[offset + 3]; + return !ch3 || ch3 === "\n" || ch3 === " " || ch3 === " "; + } + static endOfIdentifier(src, offset) { + let ch = src[offset]; + const isVerbatim = ch === "<"; + const notOk = isVerbatim ? ["\n", " ", " ", ">"] : ["\n", " ", " ", "[", "]", "{", "}", ","]; + while (ch && notOk.indexOf(ch) === -1) + ch = src[offset += 1]; + if (isVerbatim && ch === ">") + offset += 1; + return offset; + } + static endOfIndent(src, offset) { + let ch = src[offset]; + while (ch === " ") + ch = src[offset += 1]; + return offset; + } + static endOfLine(src, offset) { + let ch = src[offset]; + while (ch && ch !== "\n") + ch = src[offset += 1]; + return offset; + } + static endOfWhiteSpace(src, offset) { + let ch = src[offset]; + while (ch === " " || ch === " ") + ch = src[offset += 1]; + return offset; + } + static startOfLine(src, offset) { + let ch = src[offset - 1]; + if (ch === "\n") + return offset; + while (ch && ch !== "\n") + ch = src[offset -= 1]; + return offset + 1; + } + static endOfBlockIndent(src, indent, lineStart) { + const inEnd = Node.endOfIndent(src, lineStart); + if (inEnd > lineStart + indent) { + return inEnd; + } else { + const wsEnd = Node.endOfWhiteSpace(src, inEnd); + const ch = src[wsEnd]; + if (!ch || ch === "\n") + return wsEnd; + } + return null; + } + static atBlank(src, offset, endAsBlank) { + const ch = src[offset]; + return ch === "\n" || ch === " " || ch === " " || endAsBlank && !ch; + } + static nextNodeIsIndented(ch, indentDiff, indicatorAsIndent) { + if (!ch || indentDiff < 0) + return false; + if (indentDiff > 0) + return true; + return indicatorAsIndent && ch === "-"; + } + static normalizeOffset(src, offset) { + const ch = src[offset]; + return !ch ? offset : ch !== "\n" && src[offset - 1] === "\n" ? offset - 1 : Node.endOfWhiteSpace(src, offset); + } + static foldNewline(src, offset, indent) { + let inCount = 0; + let error = false; + let fold = ""; + let ch = src[offset + 1]; + while (ch === " " || ch === " " || ch === "\n") { + switch (ch) { + case "\n": + inCount = 0; + offset += 1; + fold += "\n"; + break; + case " ": + if (inCount <= indent) + error = true; + offset = Node.endOfWhiteSpace(src, offset + 2) - 1; + break; + case " ": + inCount += 1; + offset += 1; + break; + } + ch = src[offset + 1]; + } + if (!fold) + fold = " "; + if (ch && inCount <= indent) + error = true; + return { + fold, + offset, + error + }; + } + constructor(type, props, context) { + Object.defineProperty(this, "context", { + value: context || null, + writable: true + }); + this.error = null; + this.range = null; + this.valueRange = null; + this.props = props || []; + this.type = type; + this.value = null; + } + getPropValue(idx, key, skipKey) { + if (!this.context) + return null; + const { + src + } = this.context; + const prop = this.props[idx]; + return prop && src[prop.start] === key ? src.slice(prop.start + (skipKey ? 1 : 0), prop.end) : null; + } + get anchor() { + for (let i = 0; i < this.props.length; ++i) { + const anchor = this.getPropValue(i, Char.ANCHOR, true); + if (anchor != null) + return anchor; + } + return null; + } + get comment() { + const comments = []; + for (let i = 0; i < this.props.length; ++i) { + const comment = this.getPropValue(i, Char.COMMENT, true); + if (comment != null) + comments.push(comment); + } + return comments.length > 0 ? comments.join("\n") : null; + } + commentHasRequiredWhitespace(start) { + const { + src + } = this.context; + if (this.header && start === this.header.end) + return false; + if (!this.valueRange) + return false; + const { + end + } = this.valueRange; + return start !== end || Node.atBlank(src, end - 1); + } + get hasComment() { + if (this.context) { + const { + src + } = this.context; + for (let i = 0; i < this.props.length; ++i) { + if (src[this.props[i].start] === Char.COMMENT) + return true; + } + } + return false; + } + get hasProps() { + if (this.context) { + const { + src + } = this.context; + for (let i = 0; i < this.props.length; ++i) { + if (src[this.props[i].start] !== Char.COMMENT) + return true; + } + } + return false; + } + get includesTrailingLines() { + return false; + } + get jsonLike() { + const jsonLikeTypes = [Type.FLOW_MAP, Type.FLOW_SEQ, Type.QUOTE_DOUBLE, Type.QUOTE_SINGLE]; + return jsonLikeTypes.indexOf(this.type) !== -1; + } + get rangeAsLinePos() { + if (!this.range || !this.context) + return void 0; + const start = getLinePos(this.range.start, this.context.root); + if (!start) + return void 0; + const end = getLinePos(this.range.end, this.context.root); + return { + start, + end + }; + } + get rawValue() { + if (!this.valueRange || !this.context) + return null; + const { + start, + end + } = this.valueRange; + return this.context.src.slice(start, end); + } + get tag() { + for (let i = 0; i < this.props.length; ++i) { + const tag = this.getPropValue(i, Char.TAG, false); + if (tag != null) { + if (tag[1] === "<") { + return { + verbatim: tag.slice(2, -1) + }; + } else { + const [_, handle, suffix] = tag.match(/^(.*!)([^!]*)$/); + return { + handle, + suffix + }; + } + } + } + return null; + } + get valueRangeContainsNewline() { + if (!this.valueRange || !this.context) + return false; + const { + start, + end + } = this.valueRange; + const { + src + } = this.context; + for (let i = start; i < end; ++i) { + if (src[i] === "\n") + return true; + } + return false; + } + parseComment(start) { + const { + src + } = this.context; + if (src[start] === Char.COMMENT) { + const end = Node.endOfLine(src, start + 1); + const commentRange = new Range(start, end); + this.props.push(commentRange); + return end; + } + return start; + } + setOrigRanges(cr, offset) { + if (this.range) + offset = this.range.setOrigRange(cr, offset); + if (this.valueRange) + this.valueRange.setOrigRange(cr, offset); + this.props.forEach((prop) => prop.setOrigRange(cr, offset)); + return offset; + } + toString() { + const { + context: { + src + }, + range, + value + } = this; + if (value != null) + return value; + const str = src.slice(range.start, range.end); + return Node.addStringTerminator(src, range.end, str); + } + }; + var YAMLError = class extends Error { + constructor(name, source, message) { + if (!message || !(source instanceof Node)) + throw new Error(`Invalid arguments for new ${name}`); + super(); + this.name = name; + this.message = message; + this.source = source; + } + makePretty() { + if (!this.source) + return; + this.nodeType = this.source.type; + const cst = this.source.context && this.source.context.root; + if (typeof this.offset === "number") { + this.range = new Range(this.offset, this.offset + 1); + const start = cst && getLinePos(this.offset, cst); + if (start) { + const end = { + line: start.line, + col: start.col + 1 + }; + this.linePos = { + start, + end + }; + } + delete this.offset; + } else { + this.range = this.source.range; + this.linePos = this.source.rangeAsLinePos; + } + if (this.linePos) { + const { + line, + col + } = this.linePos.start; + this.message += ` at line ${line}, column ${col}`; + const ctx = cst && getPrettyContext(this.linePos, cst); + if (ctx) + this.message += `: + +${ctx} +`; + } + delete this.source; + } + }; + var YAMLReferenceError = class extends YAMLError { + constructor(source, message) { + super("YAMLReferenceError", source, message); + } + }; + var YAMLSemanticError = class extends YAMLError { + constructor(source, message) { + super("YAMLSemanticError", source, message); + } + }; + var YAMLSyntaxError = class extends YAMLError { + constructor(source, message) { + super("YAMLSyntaxError", source, message); + } + }; + var YAMLWarning = class extends YAMLError { + constructor(source, message) { + super("YAMLWarning", source, message); + } + }; + function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + return obj; + } + var PlainValue = class extends Node { + static endOfLine(src, start, inFlow) { + let ch = src[start]; + let offset = start; + while (ch && ch !== "\n") { + if (inFlow && (ch === "[" || ch === "]" || ch === "{" || ch === "}" || ch === ",")) + break; + const next = src[offset + 1]; + if (ch === ":" && (!next || next === "\n" || next === " " || next === " " || inFlow && next === ",")) + break; + if ((ch === " " || ch === " ") && next === "#") + break; + offset += 1; + ch = next; + } + return offset; + } + get strValue() { + if (!this.valueRange || !this.context) + return null; + let { + start, + end + } = this.valueRange; + const { + src + } = this.context; + let ch = src[end - 1]; + while (start < end && (ch === "\n" || ch === " " || ch === " ")) + ch = src[--end - 1]; + let str = ""; + for (let i = start; i < end; ++i) { + const ch2 = src[i]; + if (ch2 === "\n") { + const { + fold, + offset + } = Node.foldNewline(src, i, -1); + str += fold; + i = offset; + } else if (ch2 === " " || ch2 === " ") { + const wsStart = i; + let next = src[i + 1]; + while (i < end && (next === " " || next === " ")) { + i += 1; + next = src[i + 1]; + } + if (next !== "\n") + str += i > wsStart ? src.slice(wsStart, i + 1) : ch2; + } else { + str += ch2; + } + } + const ch0 = src[start]; + switch (ch0) { + case " ": { + const msg = "Plain value cannot start with a tab character"; + const errors = [new YAMLSemanticError(this, msg)]; + return { + errors, + str + }; + } + case "@": + case "`": { + const msg = `Plain value cannot start with reserved character ${ch0}`; + const errors = [new YAMLSemanticError(this, msg)]; + return { + errors, + str + }; + } + default: + return str; + } + } + parseBlockValue(start) { + const { + indent, + inFlow, + src + } = this.context; + let offset = start; + let valueEnd = start; + for (let ch = src[offset]; ch === "\n"; ch = src[offset]) { + if (Node.atDocumentBoundary(src, offset + 1)) + break; + const end = Node.endOfBlockIndent(src, indent, offset + 1); + if (end === null || src[end] === "#") + break; + if (src[end] === "\n") { + offset = end; + } else { + valueEnd = PlainValue.endOfLine(src, end, inFlow); + offset = valueEnd; + } + } + if (this.valueRange.isEmpty()) + this.valueRange.start = start; + this.valueRange.end = valueEnd; + return valueEnd; + } + parse(context, start) { + this.context = context; + const { + inFlow, + src + } = context; + let offset = start; + const ch = src[offset]; + if (ch && ch !== "#" && ch !== "\n") { + offset = PlainValue.endOfLine(src, start, inFlow); + } + this.valueRange = new Range(start, offset); + offset = Node.endOfWhiteSpace(src, offset); + offset = this.parseComment(offset); + if (!this.hasComment || this.valueRange.isEmpty()) { + offset = this.parseBlockValue(offset); + } + return offset; + } + }; + exports2.Char = Char; + exports2.Node = Node; + exports2.PlainValue = PlainValue; + exports2.Range = Range; + exports2.Type = Type; + exports2.YAMLError = YAMLError; + exports2.YAMLReferenceError = YAMLReferenceError; + exports2.YAMLSemanticError = YAMLSemanticError; + exports2.YAMLSyntaxError = YAMLSyntaxError; + exports2.YAMLWarning = YAMLWarning; + exports2._defineProperty = _defineProperty; + exports2.defaultTagPrefix = defaultTagPrefix; + exports2.defaultTags = defaultTags; + } +}); +var require_parse_cst = __commonJS({ + "node_modules/yaml/dist/parse-cst.js"(exports2) { + "use strict"; + var PlainValue = require_PlainValue_ec8e588e(); + var BlankLine = class extends PlainValue.Node { + constructor() { + super(PlainValue.Type.BLANK_LINE); + } + get includesTrailingLines() { + return true; + } + parse(context, start) { + this.context = context; + this.range = new PlainValue.Range(start, start + 1); + return start + 1; + } + }; + var CollectionItem = class extends PlainValue.Node { + constructor(type, props) { + super(type, props); + this.node = null; + } + get includesTrailingLines() { + return !!this.node && this.node.includesTrailingLines; + } + parse(context, start) { + this.context = context; + const { + parseNode, + src + } = context; + let { + atLineStart, + lineStart + } = context; + if (!atLineStart && this.type === PlainValue.Type.SEQ_ITEM) + this.error = new PlainValue.YAMLSemanticError(this, "Sequence items must not have preceding content on the same line"); + const indent = atLineStart ? start - lineStart : context.indent; + let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1); + let ch = src[offset]; + const inlineComment = ch === "#"; + const comments = []; + let blankLine = null; + while (ch === "\n" || ch === "#") { + if (ch === "#") { + const end2 = PlainValue.Node.endOfLine(src, offset + 1); + comments.push(new PlainValue.Range(offset, end2)); + offset = end2; + } else { + atLineStart = true; + lineStart = offset + 1; + const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart); + if (src[wsEnd] === "\n" && comments.length === 0) { + blankLine = new BlankLine(); + lineStart = blankLine.parse({ + src + }, lineStart); + } + offset = PlainValue.Node.endOfIndent(src, lineStart); + } + ch = src[offset]; + } + if (PlainValue.Node.nextNodeIsIndented(ch, offset - (lineStart + indent), this.type !== PlainValue.Type.SEQ_ITEM)) { + this.node = parseNode({ + atLineStart, + inCollection: false, + indent, + lineStart, + parent: this + }, offset); + } else if (ch && lineStart > start + 1) { + offset = lineStart - 1; + } + if (this.node) { + if (blankLine) { + const items = context.parent.items || context.parent.contents; + if (items) + items.push(blankLine); + } + if (comments.length) + Array.prototype.push.apply(this.props, comments); + offset = this.node.range.end; + } else { + if (inlineComment) { + const c = comments[0]; + this.props.push(c); + offset = c.end; + } else { + offset = PlainValue.Node.endOfLine(src, start + 1); + } + } + const end = this.node ? this.node.valueRange.end : offset; + this.valueRange = new PlainValue.Range(start, end); + return offset; + } + setOrigRanges(cr, offset) { + offset = super.setOrigRanges(cr, offset); + return this.node ? this.node.setOrigRanges(cr, offset) : offset; + } + toString() { + const { + context: { + src + }, + node, + range, + value + } = this; + if (value != null) + return value; + const str = node ? src.slice(range.start, node.range.start) + String(node) : src.slice(range.start, range.end); + return PlainValue.Node.addStringTerminator(src, range.end, str); + } + }; + var Comment = class extends PlainValue.Node { + constructor() { + super(PlainValue.Type.COMMENT); + } + parse(context, start) { + this.context = context; + const offset = this.parseComment(start); + this.range = new PlainValue.Range(start, offset); + return offset; + } + }; + function grabCollectionEndComments(node) { + let cnode = node; + while (cnode instanceof CollectionItem) + cnode = cnode.node; + if (!(cnode instanceof Collection)) + return null; + const len = cnode.items.length; + let ci = -1; + for (let i = len - 1; i >= 0; --i) { + const n = cnode.items[i]; + if (n.type === PlainValue.Type.COMMENT) { + const { + indent, + lineStart + } = n.context; + if (indent > 0 && n.range.start >= lineStart + indent) + break; + ci = i; + } else if (n.type === PlainValue.Type.BLANK_LINE) + ci = i; + else + break; + } + if (ci === -1) + return null; + const ca = cnode.items.splice(ci, len - ci); + const prevEnd = ca[0].range.start; + while (true) { + cnode.range.end = prevEnd; + if (cnode.valueRange && cnode.valueRange.end > prevEnd) + cnode.valueRange.end = prevEnd; + if (cnode === node) + break; + cnode = cnode.context.parent; + } + return ca; + } + var Collection = class extends PlainValue.Node { + static nextContentHasIndent(src, offset, indent) { + const lineStart = PlainValue.Node.endOfLine(src, offset) + 1; + offset = PlainValue.Node.endOfWhiteSpace(src, lineStart); + const ch = src[offset]; + if (!ch) + return false; + if (offset >= lineStart + indent) + return true; + if (ch !== "#" && ch !== "\n") + return false; + return Collection.nextContentHasIndent(src, offset, indent); + } + constructor(firstItem) { + super(firstItem.type === PlainValue.Type.SEQ_ITEM ? PlainValue.Type.SEQ : PlainValue.Type.MAP); + for (let i = firstItem.props.length - 1; i >= 0; --i) { + if (firstItem.props[i].start < firstItem.context.lineStart) { + this.props = firstItem.props.slice(0, i + 1); + firstItem.props = firstItem.props.slice(i + 1); + const itemRange = firstItem.props[0] || firstItem.valueRange; + firstItem.range.start = itemRange.start; + break; + } + } + this.items = [firstItem]; + const ec = grabCollectionEndComments(firstItem); + if (ec) + Array.prototype.push.apply(this.items, ec); + } + get includesTrailingLines() { + return this.items.length > 0; + } + parse(context, start) { + this.context = context; + const { + parseNode, + src + } = context; + let lineStart = PlainValue.Node.startOfLine(src, start); + const firstItem = this.items[0]; + firstItem.context.parent = this; + this.valueRange = PlainValue.Range.copy(firstItem.valueRange); + const indent = firstItem.range.start - firstItem.context.lineStart; + let offset = start; + offset = PlainValue.Node.normalizeOffset(src, offset); + let ch = src[offset]; + let atLineStart = PlainValue.Node.endOfWhiteSpace(src, lineStart) === offset; + let prevIncludesTrailingLines = false; + while (ch) { + while (ch === "\n" || ch === "#") { + if (atLineStart && ch === "\n" && !prevIncludesTrailingLines) { + const blankLine = new BlankLine(); + offset = blankLine.parse({ + src + }, offset); + this.valueRange.end = offset; + if (offset >= src.length) { + ch = null; + break; + } + this.items.push(blankLine); + offset -= 1; + } else if (ch === "#") { + if (offset < lineStart + indent && !Collection.nextContentHasIndent(src, offset, indent)) { + return offset; + } + const comment = new Comment(); + offset = comment.parse({ + indent, + lineStart, + src + }, offset); + this.items.push(comment); + this.valueRange.end = offset; + if (offset >= src.length) { + ch = null; + break; + } + } + lineStart = offset + 1; + offset = PlainValue.Node.endOfIndent(src, lineStart); + if (PlainValue.Node.atBlank(src, offset)) { + const wsEnd = PlainValue.Node.endOfWhiteSpace(src, offset); + const next = src[wsEnd]; + if (!next || next === "\n" || next === "#") { + offset = wsEnd; + } + } + ch = src[offset]; + atLineStart = true; + } + if (!ch) { + break; + } + if (offset !== lineStart + indent && (atLineStart || ch !== ":")) { + if (offset < lineStart + indent) { + if (lineStart > start) + offset = lineStart; + break; + } else if (!this.error) { + const msg = "All collection items must start at the same column"; + this.error = new PlainValue.YAMLSyntaxError(this, msg); + } + } + if (firstItem.type === PlainValue.Type.SEQ_ITEM) { + if (ch !== "-") { + if (lineStart > start) + offset = lineStart; + break; + } + } else if (ch === "-" && !this.error) { + const next = src[offset + 1]; + if (!next || next === "\n" || next === " " || next === " ") { + const msg = "A collection cannot be both a mapping and a sequence"; + this.error = new PlainValue.YAMLSyntaxError(this, msg); + } + } + const node = parseNode({ + atLineStart, + inCollection: true, + indent, + lineStart, + parent: this + }, offset); + if (!node) + return offset; + this.items.push(node); + this.valueRange.end = node.valueRange.end; + offset = PlainValue.Node.normalizeOffset(src, node.range.end); + ch = src[offset]; + atLineStart = false; + prevIncludesTrailingLines = node.includesTrailingLines; + if (ch) { + let ls = offset - 1; + let prev = src[ls]; + while (prev === " " || prev === " ") + prev = src[--ls]; + if (prev === "\n") { + lineStart = ls + 1; + atLineStart = true; + } + } + const ec = grabCollectionEndComments(node); + if (ec) + Array.prototype.push.apply(this.items, ec); + } + return offset; + } + setOrigRanges(cr, offset) { + offset = super.setOrigRanges(cr, offset); + this.items.forEach((node) => { + offset = node.setOrigRanges(cr, offset); + }); + return offset; + } + toString() { + const { + context: { + src + }, + items, + range, + value + } = this; + if (value != null) + return value; + let str = src.slice(range.start, items[0].range.start) + String(items[0]); + for (let i = 1; i < items.length; ++i) { + const item = items[i]; + const { + atLineStart, + indent + } = item.context; + if (atLineStart) + for (let i2 = 0; i2 < indent; ++i2) + str += " "; + str += String(item); + } + return PlainValue.Node.addStringTerminator(src, range.end, str); + } + }; + var Directive = class extends PlainValue.Node { + constructor() { + super(PlainValue.Type.DIRECTIVE); + this.name = null; + } + get parameters() { + const raw = this.rawValue; + return raw ? raw.trim().split(/[ \t]+/) : []; + } + parseName(start) { + const { + src + } = this.context; + let offset = start; + let ch = src[offset]; + while (ch && ch !== "\n" && ch !== " " && ch !== " ") + ch = src[offset += 1]; + this.name = src.slice(start, offset); + return offset; + } + parseParameters(start) { + const { + src + } = this.context; + let offset = start; + let ch = src[offset]; + while (ch && ch !== "\n" && ch !== "#") + ch = src[offset += 1]; + this.valueRange = new PlainValue.Range(start, offset); + return offset; + } + parse(context, start) { + this.context = context; + let offset = this.parseName(start + 1); + offset = this.parseParameters(offset); + offset = this.parseComment(offset); + this.range = new PlainValue.Range(start, offset); + return offset; + } + }; + var Document = class extends PlainValue.Node { + static startCommentOrEndBlankLine(src, start) { + const offset = PlainValue.Node.endOfWhiteSpace(src, start); + const ch = src[offset]; + return ch === "#" || ch === "\n" ? offset : start; + } + constructor() { + super(PlainValue.Type.DOCUMENT); + this.directives = null; + this.contents = null; + this.directivesEndMarker = null; + this.documentEndMarker = null; + } + parseDirectives(start) { + const { + src + } = this.context; + this.directives = []; + let atLineStart = true; + let hasDirectives = false; + let offset = start; + while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DIRECTIVES_END)) { + offset = Document.startCommentOrEndBlankLine(src, offset); + switch (src[offset]) { + case "\n": + if (atLineStart) { + const blankLine = new BlankLine(); + offset = blankLine.parse({ + src + }, offset); + if (offset < src.length) { + this.directives.push(blankLine); + } + } else { + offset += 1; + atLineStart = true; + } + break; + case "#": + { + const comment = new Comment(); + offset = comment.parse({ + src + }, offset); + this.directives.push(comment); + atLineStart = false; + } + break; + case "%": + { + const directive = new Directive(); + offset = directive.parse({ + parent: this, + src + }, offset); + this.directives.push(directive); + hasDirectives = true; + atLineStart = false; + } + break; + default: + if (hasDirectives) { + this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line"); + } else if (this.directives.length > 0) { + this.contents = this.directives; + this.directives = []; + } + return offset; + } + } + if (src[offset]) { + this.directivesEndMarker = new PlainValue.Range(offset, offset + 3); + return offset + 3; + } + if (hasDirectives) { + this.error = new PlainValue.YAMLSemanticError(this, "Missing directives-end indicator line"); + } else if (this.directives.length > 0) { + this.contents = this.directives; + this.directives = []; + } + return offset; + } + parseContents(start) { + const { + parseNode, + src + } = this.context; + if (!this.contents) + this.contents = []; + let lineStart = start; + while (src[lineStart - 1] === "-") + lineStart -= 1; + let offset = PlainValue.Node.endOfWhiteSpace(src, start); + let atLineStart = lineStart === start; + this.valueRange = new PlainValue.Range(offset); + while (!PlainValue.Node.atDocumentBoundary(src, offset, PlainValue.Char.DOCUMENT_END)) { + switch (src[offset]) { + case "\n": + if (atLineStart) { + const blankLine = new BlankLine(); + offset = blankLine.parse({ + src + }, offset); + if (offset < src.length) { + this.contents.push(blankLine); + } + } else { + offset += 1; + atLineStart = true; + } + lineStart = offset; + break; + case "#": + { + const comment = new Comment(); + offset = comment.parse({ + src + }, offset); + this.contents.push(comment); + atLineStart = false; + } + break; + default: { + const iEnd = PlainValue.Node.endOfIndent(src, offset); + const context = { + atLineStart, + indent: -1, + inFlow: false, + inCollection: false, + lineStart, + parent: this + }; + const node = parseNode(context, iEnd); + if (!node) + return this.valueRange.end = iEnd; + this.contents.push(node); + offset = node.range.end; + atLineStart = false; + const ec = grabCollectionEndComments(node); + if (ec) + Array.prototype.push.apply(this.contents, ec); + } + } + offset = Document.startCommentOrEndBlankLine(src, offset); + } + this.valueRange.end = offset; + if (src[offset]) { + this.documentEndMarker = new PlainValue.Range(offset, offset + 3); + offset += 3; + if (src[offset]) { + offset = PlainValue.Node.endOfWhiteSpace(src, offset); + if (src[offset] === "#") { + const comment = new Comment(); + offset = comment.parse({ + src + }, offset); + this.contents.push(comment); + } + switch (src[offset]) { + case "\n": + offset += 1; + break; + case void 0: + break; + default: + this.error = new PlainValue.YAMLSyntaxError(this, "Document end marker line cannot have a non-comment suffix"); + } + } + } + return offset; + } + parse(context, start) { + context.root = this; + this.context = context; + const { + src + } = context; + let offset = src.charCodeAt(start) === 65279 ? start + 1 : start; + offset = this.parseDirectives(offset); + offset = this.parseContents(offset); + return offset; + } + setOrigRanges(cr, offset) { + offset = super.setOrigRanges(cr, offset); + this.directives.forEach((node) => { + offset = node.setOrigRanges(cr, offset); + }); + if (this.directivesEndMarker) + offset = this.directivesEndMarker.setOrigRange(cr, offset); + this.contents.forEach((node) => { + offset = node.setOrigRanges(cr, offset); + }); + if (this.documentEndMarker) + offset = this.documentEndMarker.setOrigRange(cr, offset); + return offset; + } + toString() { + const { + contents, + directives, + value + } = this; + if (value != null) + return value; + let str = directives.join(""); + if (contents.length > 0) { + if (directives.length > 0 || contents[0].type === PlainValue.Type.COMMENT) + str += "---\n"; + str += contents.join(""); + } + if (str[str.length - 1] !== "\n") + str += "\n"; + return str; + } + }; + var Alias = class extends PlainValue.Node { + parse(context, start) { + this.context = context; + const { + src + } = context; + let offset = PlainValue.Node.endOfIdentifier(src, start + 1); + this.valueRange = new PlainValue.Range(start + 1, offset); + offset = PlainValue.Node.endOfWhiteSpace(src, offset); + offset = this.parseComment(offset); + return offset; + } + }; + var Chomp = { + CLIP: "CLIP", + KEEP: "KEEP", + STRIP: "STRIP" + }; + var BlockValue = class extends PlainValue.Node { + constructor(type, props) { + super(type, props); + this.blockIndent = null; + this.chomping = Chomp.CLIP; + this.header = null; + } + get includesTrailingLines() { + return this.chomping === Chomp.KEEP; + } + get strValue() { + if (!this.valueRange || !this.context) + return null; + let { + start, + end + } = this.valueRange; + const { + indent, + src + } = this.context; + if (this.valueRange.isEmpty()) + return ""; + let lastNewLine = null; + let ch = src[end - 1]; + while (ch === "\n" || ch === " " || ch === " ") { + end -= 1; + if (end <= start) { + if (this.chomping === Chomp.KEEP) + break; + else + return ""; + } + if (ch === "\n") + lastNewLine = end; + ch = src[end - 1]; + } + let keepStart = end + 1; + if (lastNewLine) { + if (this.chomping === Chomp.KEEP) { + keepStart = lastNewLine; + end = this.valueRange.end; + } else { + end = lastNewLine; + } + } + const bi = indent + this.blockIndent; + const folded = this.type === PlainValue.Type.BLOCK_FOLDED; + let atStart = true; + let str = ""; + let sep = ""; + let prevMoreIndented = false; + for (let i = start; i < end; ++i) { + for (let j = 0; j < bi; ++j) { + if (src[i] !== " ") + break; + i += 1; + } + const ch2 = src[i]; + if (ch2 === "\n") { + if (sep === "\n") + str += "\n"; + else + sep = "\n"; + } else { + const lineEnd = PlainValue.Node.endOfLine(src, i); + const line = src.slice(i, lineEnd); + i = lineEnd; + if (folded && (ch2 === " " || ch2 === " ") && i < keepStart) { + if (sep === " ") + sep = "\n"; + else if (!prevMoreIndented && !atStart && sep === "\n") + sep = "\n\n"; + str += sep + line; + sep = lineEnd < end && src[lineEnd] || ""; + prevMoreIndented = true; + } else { + str += sep + line; + sep = folded && i < keepStart ? " " : "\n"; + prevMoreIndented = false; + } + if (atStart && line !== "") + atStart = false; + } + } + return this.chomping === Chomp.STRIP ? str : str + "\n"; + } + parseBlockHeader(start) { + const { + src + } = this.context; + let offset = start + 1; + let bi = ""; + while (true) { + const ch = src[offset]; + switch (ch) { + case "-": + this.chomping = Chomp.STRIP; + break; + case "+": + this.chomping = Chomp.KEEP; + break; + case "0": + case "1": + case "2": + case "3": + case "4": + case "5": + case "6": + case "7": + case "8": + case "9": + bi += ch; + break; + default: + this.blockIndent = Number(bi) || null; + this.header = new PlainValue.Range(start, offset); + return offset; + } + offset += 1; + } + } + parseBlockValue(start) { + const { + indent, + src + } = this.context; + const explicit = !!this.blockIndent; + let offset = start; + let valueEnd = start; + let minBlockIndent = 1; + for (let ch = src[offset]; ch === "\n"; ch = src[offset]) { + offset += 1; + if (PlainValue.Node.atDocumentBoundary(src, offset)) + break; + const end = PlainValue.Node.endOfBlockIndent(src, indent, offset); + if (end === null) + break; + const ch2 = src[end]; + const lineIndent = end - (offset + indent); + if (!this.blockIndent) { + if (src[end] !== "\n") { + if (lineIndent < minBlockIndent) { + const msg = "Block scalars with more-indented leading empty lines must use an explicit indentation indicator"; + this.error = new PlainValue.YAMLSemanticError(this, msg); + } + this.blockIndent = lineIndent; + } else if (lineIndent > minBlockIndent) { + minBlockIndent = lineIndent; + } + } else if (ch2 && ch2 !== "\n" && lineIndent < this.blockIndent) { + if (src[end] === "#") + break; + if (!this.error) { + const src2 = explicit ? "explicit indentation indicator" : "first line"; + const msg = `Block scalars must not be less indented than their ${src2}`; + this.error = new PlainValue.YAMLSemanticError(this, msg); + } + } + if (src[end] === "\n") { + offset = end; + } else { + offset = valueEnd = PlainValue.Node.endOfLine(src, end); + } + } + if (this.chomping !== Chomp.KEEP) { + offset = src[valueEnd] ? valueEnd + 1 : valueEnd; + } + this.valueRange = new PlainValue.Range(start + 1, offset); + return offset; + } + parse(context, start) { + this.context = context; + const { + src + } = context; + let offset = this.parseBlockHeader(start); + offset = PlainValue.Node.endOfWhiteSpace(src, offset); + offset = this.parseComment(offset); + offset = this.parseBlockValue(offset); + return offset; + } + setOrigRanges(cr, offset) { + offset = super.setOrigRanges(cr, offset); + return this.header ? this.header.setOrigRange(cr, offset) : offset; + } + }; + var FlowCollection = class extends PlainValue.Node { + constructor(type, props) { + super(type, props); + this.items = null; + } + prevNodeIsJsonLike(idx = this.items.length) { + const node = this.items[idx - 1]; + return !!node && (node.jsonLike || node.type === PlainValue.Type.COMMENT && this.prevNodeIsJsonLike(idx - 1)); + } + parse(context, start) { + this.context = context; + const { + parseNode, + src + } = context; + let { + indent, + lineStart + } = context; + let char = src[start]; + this.items = [{ + char, + offset: start + }]; + let offset = PlainValue.Node.endOfWhiteSpace(src, start + 1); + char = src[offset]; + while (char && char !== "]" && char !== "}") { + switch (char) { + case "\n": + { + lineStart = offset + 1; + const wsEnd = PlainValue.Node.endOfWhiteSpace(src, lineStart); + if (src[wsEnd] === "\n") { + const blankLine = new BlankLine(); + lineStart = blankLine.parse({ + src + }, lineStart); + this.items.push(blankLine); + } + offset = PlainValue.Node.endOfIndent(src, lineStart); + if (offset <= lineStart + indent) { + char = src[offset]; + if (offset < lineStart + indent || char !== "]" && char !== "}") { + const msg = "Insufficient indentation in flow collection"; + this.error = new PlainValue.YAMLSemanticError(this, msg); + } + } + } + break; + case ",": + { + this.items.push({ + char, + offset + }); + offset += 1; + } + break; + case "#": + { + const comment = new Comment(); + offset = comment.parse({ + src + }, offset); + this.items.push(comment); + } + break; + case "?": + case ":": { + const next = src[offset + 1]; + if (next === "\n" || next === " " || next === " " || next === "," || char === ":" && this.prevNodeIsJsonLike()) { + this.items.push({ + char, + offset + }); + offset += 1; + break; + } + } + default: { + const node = parseNode({ + atLineStart: false, + inCollection: false, + inFlow: true, + indent: -1, + lineStart, + parent: this + }, offset); + if (!node) { + this.valueRange = new PlainValue.Range(start, offset); + return offset; + } + this.items.push(node); + offset = PlainValue.Node.normalizeOffset(src, node.range.end); + } + } + offset = PlainValue.Node.endOfWhiteSpace(src, offset); + char = src[offset]; + } + this.valueRange = new PlainValue.Range(start, offset + 1); + if (char) { + this.items.push({ + char, + offset + }); + offset = PlainValue.Node.endOfWhiteSpace(src, offset + 1); + offset = this.parseComment(offset); + } + return offset; + } + setOrigRanges(cr, offset) { + offset = super.setOrigRanges(cr, offset); + this.items.forEach((node) => { + if (node instanceof PlainValue.Node) { + offset = node.setOrigRanges(cr, offset); + } else if (cr.length === 0) { + node.origOffset = node.offset; + } else { + let i = offset; + while (i < cr.length) { + if (cr[i] > node.offset) + break; + else + ++i; + } + node.origOffset = node.offset + i; + offset = i; + } + }); + return offset; + } + toString() { + const { + context: { + src + }, + items, + range, + value + } = this; + if (value != null) + return value; + const nodes = items.filter((item) => item instanceof PlainValue.Node); + let str = ""; + let prevEnd = range.start; + nodes.forEach((node) => { + const prefix = src.slice(prevEnd, node.range.start); + prevEnd = node.range.end; + str += prefix + String(node); + if (str[str.length - 1] === "\n" && src[prevEnd - 1] !== "\n" && src[prevEnd] === "\n") { + prevEnd += 1; + } + }); + str += src.slice(prevEnd, range.end); + return PlainValue.Node.addStringTerminator(src, range.end, str); + } + }; + var QuoteDouble = class extends PlainValue.Node { + static endOfQuote(src, offset) { + let ch = src[offset]; + while (ch && ch !== '"') { + offset += ch === "\\" ? 2 : 1; + ch = src[offset]; + } + return offset + 1; + } + get strValue() { + if (!this.valueRange || !this.context) + return null; + const errors = []; + const { + start, + end + } = this.valueRange; + const { + indent, + src + } = this.context; + if (src[end - 1] !== '"') + errors.push(new PlainValue.YAMLSyntaxError(this, 'Missing closing "quote')); + let str = ""; + for (let i = start + 1; i < end - 1; ++i) { + const ch = src[i]; + if (ch === "\n") { + if (PlainValue.Node.atDocumentBoundary(src, i + 1)) + errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values")); + const { + fold, + offset, + error + } = PlainValue.Node.foldNewline(src, i, indent); + str += fold; + i = offset; + if (error) + errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line double-quoted string needs to be sufficiently indented")); + } else if (ch === "\\") { + i += 1; + switch (src[i]) { + case "0": + str += "\0"; + break; + case "a": + str += "\x07"; + break; + case "b": + str += "\b"; + break; + case "e": + str += "\x1B"; + break; + case "f": + str += "\f"; + break; + case "n": + str += "\n"; + break; + case "r": + str += "\r"; + break; + case "t": + str += " "; + break; + case "v": + str += "\v"; + break; + case "N": + str += "\x85"; + break; + case "_": + str += "\xA0"; + break; + case "L": + str += "\u2028"; + break; + case "P": + str += "\u2029"; + break; + case " ": + str += " "; + break; + case '"': + str += '"'; + break; + case "/": + str += "/"; + break; + case "\\": + str += "\\"; + break; + case " ": + str += " "; + break; + case "x": + str += this.parseCharCode(i + 1, 2, errors); + i += 2; + break; + case "u": + str += this.parseCharCode(i + 1, 4, errors); + i += 4; + break; + case "U": + str += this.parseCharCode(i + 1, 8, errors); + i += 8; + break; + case "\n": + while (src[i + 1] === " " || src[i + 1] === " ") + i += 1; + break; + default: + errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(i - 1, 2)}`)); + str += "\\" + src[i]; + } + } else if (ch === " " || ch === " ") { + const wsStart = i; + let next = src[i + 1]; + while (next === " " || next === " ") { + i += 1; + next = src[i + 1]; + } + if (next !== "\n") + str += i > wsStart ? src.slice(wsStart, i + 1) : ch; + } else { + str += ch; + } + } + return errors.length > 0 ? { + errors, + str + } : str; + } + parseCharCode(offset, length, errors) { + const { + src + } = this.context; + const cc = src.substr(offset, length); + const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc); + const code = ok ? parseInt(cc, 16) : NaN; + if (isNaN(code)) { + errors.push(new PlainValue.YAMLSyntaxError(this, `Invalid escape sequence ${src.substr(offset - 2, length + 2)}`)); + return src.substr(offset - 2, length + 2); + } + return String.fromCodePoint(code); + } + parse(context, start) { + this.context = context; + const { + src + } = context; + let offset = QuoteDouble.endOfQuote(src, start + 1); + this.valueRange = new PlainValue.Range(start, offset); + offset = PlainValue.Node.endOfWhiteSpace(src, offset); + offset = this.parseComment(offset); + return offset; + } + }; + var QuoteSingle = class extends PlainValue.Node { + static endOfQuote(src, offset) { + let ch = src[offset]; + while (ch) { + if (ch === "'") { + if (src[offset + 1] !== "'") + break; + ch = src[offset += 2]; + } else { + ch = src[offset += 1]; + } + } + return offset + 1; + } + get strValue() { + if (!this.valueRange || !this.context) + return null; + const errors = []; + const { + start, + end + } = this.valueRange; + const { + indent, + src + } = this.context; + if (src[end - 1] !== "'") + errors.push(new PlainValue.YAMLSyntaxError(this, "Missing closing 'quote")); + let str = ""; + for (let i = start + 1; i < end - 1; ++i) { + const ch = src[i]; + if (ch === "\n") { + if (PlainValue.Node.atDocumentBoundary(src, i + 1)) + errors.push(new PlainValue.YAMLSemanticError(this, "Document boundary indicators are not allowed within string values")); + const { + fold, + offset, + error + } = PlainValue.Node.foldNewline(src, i, indent); + str += fold; + i = offset; + if (error) + errors.push(new PlainValue.YAMLSemanticError(this, "Multi-line single-quoted string needs to be sufficiently indented")); + } else if (ch === "'") { + str += ch; + i += 1; + if (src[i] !== "'") + errors.push(new PlainValue.YAMLSyntaxError(this, "Unescaped single quote? This should not happen.")); + } else if (ch === " " || ch === " ") { + const wsStart = i; + let next = src[i + 1]; + while (next === " " || next === " ") { + i += 1; + next = src[i + 1]; + } + if (next !== "\n") + str += i > wsStart ? src.slice(wsStart, i + 1) : ch; + } else { + str += ch; + } + } + return errors.length > 0 ? { + errors, + str + } : str; + } + parse(context, start) { + this.context = context; + const { + src + } = context; + let offset = QuoteSingle.endOfQuote(src, start + 1); + this.valueRange = new PlainValue.Range(start, offset); + offset = PlainValue.Node.endOfWhiteSpace(src, offset); + offset = this.parseComment(offset); + return offset; + } + }; + function createNewNode(type, props) { + switch (type) { + case PlainValue.Type.ALIAS: + return new Alias(type, props); + case PlainValue.Type.BLOCK_FOLDED: + case PlainValue.Type.BLOCK_LITERAL: + return new BlockValue(type, props); + case PlainValue.Type.FLOW_MAP: + case PlainValue.Type.FLOW_SEQ: + return new FlowCollection(type, props); + case PlainValue.Type.MAP_KEY: + case PlainValue.Type.MAP_VALUE: + case PlainValue.Type.SEQ_ITEM: + return new CollectionItem(type, props); + case PlainValue.Type.COMMENT: + case PlainValue.Type.PLAIN: + return new PlainValue.PlainValue(type, props); + case PlainValue.Type.QUOTE_DOUBLE: + return new QuoteDouble(type, props); + case PlainValue.Type.QUOTE_SINGLE: + return new QuoteSingle(type, props); + default: + return null; + } + } + var ParseContext = class { + static parseType(src, offset, inFlow) { + switch (src[offset]) { + case "*": + return PlainValue.Type.ALIAS; + case ">": + return PlainValue.Type.BLOCK_FOLDED; + case "|": + return PlainValue.Type.BLOCK_LITERAL; + case "{": + return PlainValue.Type.FLOW_MAP; + case "[": + return PlainValue.Type.FLOW_SEQ; + case "?": + return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_KEY : PlainValue.Type.PLAIN; + case ":": + return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.MAP_VALUE : PlainValue.Type.PLAIN; + case "-": + return !inFlow && PlainValue.Node.atBlank(src, offset + 1, true) ? PlainValue.Type.SEQ_ITEM : PlainValue.Type.PLAIN; + case '"': + return PlainValue.Type.QUOTE_DOUBLE; + case "'": + return PlainValue.Type.QUOTE_SINGLE; + default: + return PlainValue.Type.PLAIN; + } + } + constructor(orig = {}, { + atLineStart, + inCollection, + inFlow, + indent, + lineStart, + parent + } = {}) { + PlainValue._defineProperty(this, "parseNode", (overlay, start) => { + if (PlainValue.Node.atDocumentBoundary(this.src, start)) + return null; + const context = new ParseContext(this, overlay); + const { + props, + type, + valueStart + } = context.parseProps(start); + const node = createNewNode(type, props); + let offset = node.parse(context, valueStart); + node.range = new PlainValue.Range(start, offset); + if (offset <= start) { + node.error = new Error(`Node#parse consumed no characters`); + node.error.parseEnd = offset; + node.error.source = node; + node.range.end = start + 1; + } + if (context.nodeStartsCollection(node)) { + if (!node.error && !context.atLineStart && context.parent.type === PlainValue.Type.DOCUMENT) { + node.error = new PlainValue.YAMLSyntaxError(node, "Block collection must not have preceding content here (e.g. directives-end indicator)"); + } + const collection = new Collection(node); + offset = collection.parse(new ParseContext(context), offset); + collection.range = new PlainValue.Range(start, offset); + return collection; + } + return node; + }); + this.atLineStart = atLineStart != null ? atLineStart : orig.atLineStart || false; + this.inCollection = inCollection != null ? inCollection : orig.inCollection || false; + this.inFlow = inFlow != null ? inFlow : orig.inFlow || false; + this.indent = indent != null ? indent : orig.indent; + this.lineStart = lineStart != null ? lineStart : orig.lineStart; + this.parent = parent != null ? parent : orig.parent || {}; + this.root = orig.root; + this.src = orig.src; + } + nodeStartsCollection(node) { + const { + inCollection, + inFlow, + src + } = this; + if (inCollection || inFlow) + return false; + if (node instanceof CollectionItem) + return true; + let offset = node.range.end; + if (src[offset] === "\n" || src[offset - 1] === "\n") + return false; + offset = PlainValue.Node.endOfWhiteSpace(src, offset); + return src[offset] === ":"; + } + parseProps(offset) { + const { + inFlow, + parent, + src + } = this; + const props = []; + let lineHasProps = false; + offset = this.atLineStart ? PlainValue.Node.endOfIndent(src, offset) : PlainValue.Node.endOfWhiteSpace(src, offset); + let ch = src[offset]; + while (ch === PlainValue.Char.ANCHOR || ch === PlainValue.Char.COMMENT || ch === PlainValue.Char.TAG || ch === "\n") { + if (ch === "\n") { + let inEnd = offset; + let lineStart; + do { + lineStart = inEnd + 1; + inEnd = PlainValue.Node.endOfIndent(src, lineStart); + } while (src[inEnd] === "\n"); + const indentDiff = inEnd - (lineStart + this.indent); + const noIndicatorAsIndent = parent.type === PlainValue.Type.SEQ_ITEM && parent.context.atLineStart; + if (src[inEnd] !== "#" && !PlainValue.Node.nextNodeIsIndented(src[inEnd], indentDiff, !noIndicatorAsIndent)) + break; + this.atLineStart = true; + this.lineStart = lineStart; + lineHasProps = false; + offset = inEnd; + } else if (ch === PlainValue.Char.COMMENT) { + const end = PlainValue.Node.endOfLine(src, offset + 1); + props.push(new PlainValue.Range(offset, end)); + offset = end; + } else { + let end = PlainValue.Node.endOfIdentifier(src, offset + 1); + if (ch === PlainValue.Char.TAG && src[end] === "," && /^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(src.slice(offset + 1, end + 13))) { + end = PlainValue.Node.endOfIdentifier(src, end + 5); + } + props.push(new PlainValue.Range(offset, end)); + lineHasProps = true; + offset = PlainValue.Node.endOfWhiteSpace(src, end); + } + ch = src[offset]; + } + if (lineHasProps && ch === ":" && PlainValue.Node.atBlank(src, offset + 1, true)) + offset -= 1; + const type = ParseContext.parseType(src, offset, inFlow); + return { + props, + type, + valueStart: offset + }; + } + }; + function parse(src) { + const cr = []; + if (src.indexOf("\r") !== -1) { + src = src.replace(/\r\n?/g, (match, offset2) => { + if (match.length > 1) + cr.push(offset2); + return "\n"; + }); + } + const documents = []; + let offset = 0; + do { + const doc = new Document(); + const context = new ParseContext({ + src + }); + offset = doc.parse(context, offset); + documents.push(doc); + } while (offset < src.length); + documents.setOrigRanges = () => { + if (cr.length === 0) + return false; + for (let i = 1; i < cr.length; ++i) + cr[i] -= i; + let crOffset = 0; + for (let i = 0; i < documents.length; ++i) { + crOffset = documents[i].setOrigRanges(cr, crOffset); + } + cr.splice(0, cr.length); + return true; + }; + documents.toString = () => documents.join("...\n"); + return documents; + } + exports2.parse = parse; + } +}); +var require_resolveSeq_d03cb037 = __commonJS({ + "node_modules/yaml/dist/resolveSeq-d03cb037.js"(exports2) { + "use strict"; + var PlainValue = require_PlainValue_ec8e588e(); + function addCommentBefore(str, indent, comment) { + if (!comment) + return str; + const cc = comment.replace(/[\s\S]^/gm, `$&${indent}#`); + return `#${cc} +${indent}${str}`; + } + function addComment(str, indent, comment) { + return !comment ? str : comment.indexOf("\n") === -1 ? `${str} #${comment}` : `${str} +` + comment.replace(/^/gm, `${indent || ""}#`); + } + var Node = class { + }; + function toJSON(value, arg, ctx) { + if (Array.isArray(value)) + return value.map((v, i) => toJSON(v, String(i), ctx)); + if (value && typeof value.toJSON === "function") { + const anchor = ctx && ctx.anchors && ctx.anchors.get(value); + if (anchor) + ctx.onCreate = (res2) => { + anchor.res = res2; + delete ctx.onCreate; + }; + const res = value.toJSON(arg, ctx); + if (anchor && ctx.onCreate) + ctx.onCreate(res); + return res; + } + if ((!ctx || !ctx.keep) && typeof value === "bigint") + return Number(value); + return value; + } + var Scalar = class extends Node { + constructor(value) { + super(); + this.value = value; + } + toJSON(arg, ctx) { + return ctx && ctx.keep ? this.value : toJSON(this.value, arg, ctx); + } + toString() { + return String(this.value); + } + }; + function collectionFromPath(schema, path, value) { + let v = value; + for (let i = path.length - 1; i >= 0; --i) { + const k = path[i]; + if (Number.isInteger(k) && k >= 0) { + const a = []; + a[k] = v; + v = a; + } else { + const o = {}; + Object.defineProperty(o, k, { + value: v, + writable: true, + enumerable: true, + configurable: true + }); + v = o; + } + } + return schema.createNode(v, false); + } + var isEmptyPath = (path) => path == null || typeof path === "object" && path[Symbol.iterator]().next().done; + var Collection = class extends Node { + constructor(schema) { + super(); + PlainValue._defineProperty(this, "items", []); + this.schema = schema; + } + addIn(path, value) { + if (isEmptyPath(path)) + this.add(value); + else { + const [key, ...rest] = path; + const node = this.get(key, true); + if (node instanceof Collection) + node.addIn(rest, value); + else if (node === void 0 && this.schema) + this.set(key, collectionFromPath(this.schema, rest, value)); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + } + deleteIn([key, ...rest]) { + if (rest.length === 0) + return this.delete(key); + const node = this.get(key, true); + if (node instanceof Collection) + return node.deleteIn(rest); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + getIn([key, ...rest], keepScalar) { + const node = this.get(key, true); + if (rest.length === 0) + return !keepScalar && node instanceof Scalar ? node.value : node; + else + return node instanceof Collection ? node.getIn(rest, keepScalar) : void 0; + } + hasAllNullValues() { + return this.items.every((node) => { + if (!node || node.type !== "PAIR") + return false; + const n = node.value; + return n == null || n instanceof Scalar && n.value == null && !n.commentBefore && !n.comment && !n.tag; + }); + } + hasIn([key, ...rest]) { + if (rest.length === 0) + return this.has(key); + const node = this.get(key, true); + return node instanceof Collection ? node.hasIn(rest) : false; + } + setIn([key, ...rest], value) { + if (rest.length === 0) { + this.set(key, value); + } else { + const node = this.get(key, true); + if (node instanceof Collection) + node.setIn(rest, value); + else if (node === void 0 && this.schema) + this.set(key, collectionFromPath(this.schema, rest, value)); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + } + toJSON() { + return null; + } + toString(ctx, { + blockItem, + flowChars, + isMap, + itemIndent + }, onComment, onChompKeep) { + const { + indent, + indentStep, + stringify + } = ctx; + const inFlow = this.type === PlainValue.Type.FLOW_MAP || this.type === PlainValue.Type.FLOW_SEQ || ctx.inFlow; + if (inFlow) + itemIndent += indentStep; + const allNullValues = isMap && this.hasAllNullValues(); + ctx = Object.assign({}, ctx, { + allNullValues, + indent: itemIndent, + inFlow, + type: null + }); + let chompKeep = false; + let hasItemWithNewLine = false; + const nodes = this.items.reduce((nodes2, item, i) => { + let comment; + if (item) { + if (!chompKeep && item.spaceBefore) + nodes2.push({ + type: "comment", + str: "" + }); + if (item.commentBefore) + item.commentBefore.match(/^.*$/gm).forEach((line) => { + nodes2.push({ + type: "comment", + str: `#${line}` + }); + }); + if (item.comment) + comment = item.comment; + if (inFlow && (!chompKeep && item.spaceBefore || item.commentBefore || item.comment || item.key && (item.key.commentBefore || item.key.comment) || item.value && (item.value.commentBefore || item.value.comment))) + hasItemWithNewLine = true; + } + chompKeep = false; + let str2 = stringify(item, ctx, () => comment = null, () => chompKeep = true); + if (inFlow && !hasItemWithNewLine && str2.includes("\n")) + hasItemWithNewLine = true; + if (inFlow && i < this.items.length - 1) + str2 += ","; + str2 = addComment(str2, itemIndent, comment); + if (chompKeep && (comment || inFlow)) + chompKeep = false; + nodes2.push({ + type: "item", + str: str2 + }); + return nodes2; + }, []); + let str; + if (nodes.length === 0) { + str = flowChars.start + flowChars.end; + } else if (inFlow) { + const { + start, + end + } = flowChars; + const strings = nodes.map((n) => n.str); + if (hasItemWithNewLine || strings.reduce((sum, str2) => sum + str2.length + 2, 2) > Collection.maxFlowStringSingleLineLength) { + str = start; + for (const s of strings) { + str += s ? ` +${indentStep}${indent}${s}` : "\n"; + } + str += ` +${indent}${end}`; + } else { + str = `${start} ${strings.join(" ")} ${end}`; + } + } else { + const strings = nodes.map(blockItem); + str = strings.shift(); + for (const s of strings) + str += s ? ` +${indent}${s}` : "\n"; + } + if (this.comment) { + str += "\n" + this.comment.replace(/^/gm, `${indent}#`); + if (onComment) + onComment(); + } else if (chompKeep && onChompKeep) + onChompKeep(); + return str; + } + }; + PlainValue._defineProperty(Collection, "maxFlowStringSingleLineLength", 60); + function asItemIndex(key) { + let idx = key instanceof Scalar ? key.value : key; + if (idx && typeof idx === "string") + idx = Number(idx); + return Number.isInteger(idx) && idx >= 0 ? idx : null; + } + var YAMLSeq = class extends Collection { + add(value) { + this.items.push(value); + } + delete(key) { + const idx = asItemIndex(key); + if (typeof idx !== "number") + return false; + const del = this.items.splice(idx, 1); + return del.length > 0; + } + get(key, keepScalar) { + const idx = asItemIndex(key); + if (typeof idx !== "number") + return void 0; + const it = this.items[idx]; + return !keepScalar && it instanceof Scalar ? it.value : it; + } + has(key) { + const idx = asItemIndex(key); + return typeof idx === "number" && idx < this.items.length; + } + set(key, value) { + const idx = asItemIndex(key); + if (typeof idx !== "number") + throw new Error(`Expected a valid index, not ${key}.`); + this.items[idx] = value; + } + toJSON(_, ctx) { + const seq = []; + if (ctx && ctx.onCreate) + ctx.onCreate(seq); + let i = 0; + for (const item of this.items) + seq.push(toJSON(item, String(i++), ctx)); + return seq; + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + return super.toString(ctx, { + blockItem: (n) => n.type === "comment" ? n.str : `- ${n.str}`, + flowChars: { + start: "[", + end: "]" + }, + isMap: false, + itemIndent: (ctx.indent || "") + " " + }, onComment, onChompKeep); + } + }; + var stringifyKey = (key, jsKey, ctx) => { + if (jsKey === null) + return ""; + if (typeof jsKey !== "object") + return String(jsKey); + if (key instanceof Node && ctx && ctx.doc) + return key.toString({ + anchors: /* @__PURE__ */ Object.create(null), + doc: ctx.doc, + indent: "", + indentStep: ctx.indentStep, + inFlow: true, + inStringifyKey: true, + stringify: ctx.stringify + }); + return JSON.stringify(jsKey); + }; + var Pair = class extends Node { + constructor(key, value = null) { + super(); + this.key = key; + this.value = value; + this.type = Pair.Type.PAIR; + } + get commentBefore() { + return this.key instanceof Node ? this.key.commentBefore : void 0; + } + set commentBefore(cb) { + if (this.key == null) + this.key = new Scalar(null); + if (this.key instanceof Node) + this.key.commentBefore = cb; + else { + const msg = "Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node."; + throw new Error(msg); + } + } + addToJSMap(ctx, map) { + const key = toJSON(this.key, "", ctx); + if (map instanceof Map) { + const value = toJSON(this.value, key, ctx); + map.set(key, value); + } else if (map instanceof Set) { + map.add(key); + } else { + const stringKey = stringifyKey(this.key, key, ctx); + const value = toJSON(this.value, stringKey, ctx); + if (stringKey in map) + Object.defineProperty(map, stringKey, { + value, + writable: true, + enumerable: true, + configurable: true + }); + else + map[stringKey] = value; + } + return map; + } + toJSON(_, ctx) { + const pair = ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {}; + return this.addToJSMap(ctx, pair); + } + toString(ctx, onComment, onChompKeep) { + if (!ctx || !ctx.doc) + return JSON.stringify(this); + const { + indent: indentSize, + indentSeq, + simpleKeys + } = ctx.doc.options; + let { + key, + value + } = this; + let keyComment = key instanceof Node && key.comment; + if (simpleKeys) { + if (keyComment) { + throw new Error("With simple keys, key nodes cannot have comments"); + } + if (key instanceof Collection) { + const msg = "With simple keys, collection cannot be used as a key value"; + throw new Error(msg); + } + } + let explicitKey = !simpleKeys && (!key || keyComment || (key instanceof Node ? key instanceof Collection || key.type === PlainValue.Type.BLOCK_FOLDED || key.type === PlainValue.Type.BLOCK_LITERAL : typeof key === "object")); + const { + doc, + indent, + indentStep, + stringify + } = ctx; + ctx = Object.assign({}, ctx, { + implicitKey: !explicitKey, + indent: indent + indentStep + }); + let chompKeep = false; + let str = stringify(key, ctx, () => keyComment = null, () => chompKeep = true); + str = addComment(str, ctx.indent, keyComment); + if (!explicitKey && str.length > 1024) { + if (simpleKeys) + throw new Error("With simple keys, single line scalar must not span more than 1024 characters"); + explicitKey = true; + } + if (ctx.allNullValues && !simpleKeys) { + if (this.comment) { + str = addComment(str, ctx.indent, this.comment); + if (onComment) + onComment(); + } else if (chompKeep && !keyComment && onChompKeep) + onChompKeep(); + return ctx.inFlow && !explicitKey ? str : `? ${str}`; + } + str = explicitKey ? `? ${str} +${indent}:` : `${str}:`; + if (this.comment) { + str = addComment(str, ctx.indent, this.comment); + if (onComment) + onComment(); + } + let vcb = ""; + let valueComment = null; + if (value instanceof Node) { + if (value.spaceBefore) + vcb = "\n"; + if (value.commentBefore) { + const cs = value.commentBefore.replace(/^/gm, `${ctx.indent}#`); + vcb += ` +${cs}`; + } + valueComment = value.comment; + } else if (value && typeof value === "object") { + value = doc.schema.createNode(value, true); + } + ctx.implicitKey = false; + if (!explicitKey && !this.comment && value instanceof Scalar) + ctx.indentAtStart = str.length + 1; + chompKeep = false; + if (!indentSeq && indentSize >= 2 && !ctx.inFlow && !explicitKey && value instanceof YAMLSeq && value.type !== PlainValue.Type.FLOW_SEQ && !value.tag && !doc.anchors.getName(value)) { + ctx.indent = ctx.indent.substr(2); + } + const valueStr = stringify(value, ctx, () => valueComment = null, () => chompKeep = true); + let ws = " "; + if (vcb || this.comment) { + ws = `${vcb} +${ctx.indent}`; + } else if (!explicitKey && value instanceof Collection) { + const flow = valueStr[0] === "[" || valueStr[0] === "{"; + if (!flow || valueStr.includes("\n")) + ws = ` +${ctx.indent}`; + } else if (valueStr[0] === "\n") + ws = ""; + if (chompKeep && !valueComment && onChompKeep) + onChompKeep(); + return addComment(str + ws + valueStr, ctx.indent, valueComment); + } + }; + PlainValue._defineProperty(Pair, "Type", { + PAIR: "PAIR", + MERGE_PAIR: "MERGE_PAIR" + }); + var getAliasCount = (node, anchors) => { + if (node instanceof Alias) { + const anchor = anchors.get(node.source); + return anchor.count * anchor.aliasCount; + } else if (node instanceof Collection) { + let count = 0; + for (const item of node.items) { + const c = getAliasCount(item, anchors); + if (c > count) + count = c; + } + return count; + } else if (node instanceof Pair) { + const kc = getAliasCount(node.key, anchors); + const vc = getAliasCount(node.value, anchors); + return Math.max(kc, vc); + } + return 1; + }; + var Alias = class extends Node { + static stringify({ + range, + source + }, { + anchors, + doc, + implicitKey, + inStringifyKey + }) { + let anchor = Object.keys(anchors).find((a) => anchors[a] === source); + if (!anchor && inStringifyKey) + anchor = doc.anchors.getName(source) || doc.anchors.newName(); + if (anchor) + return `*${anchor}${implicitKey ? " " : ""}`; + const msg = doc.anchors.getName(source) ? "Alias node must be after source node" : "Source node not found for alias node"; + throw new Error(`${msg} [${range}]`); + } + constructor(source) { + super(); + this.source = source; + this.type = PlainValue.Type.ALIAS; + } + set tag(t) { + throw new Error("Alias nodes cannot have tags"); + } + toJSON(arg, ctx) { + if (!ctx) + return toJSON(this.source, arg, ctx); + const { + anchors, + maxAliasCount + } = ctx; + const anchor = anchors.get(this.source); + if (!anchor || anchor.res === void 0) { + const msg = "This should not happen: Alias anchor was not resolved?"; + if (this.cstNode) + throw new PlainValue.YAMLReferenceError(this.cstNode, msg); + else + throw new ReferenceError(msg); + } + if (maxAliasCount >= 0) { + anchor.count += 1; + if (anchor.aliasCount === 0) + anchor.aliasCount = getAliasCount(this.source, anchors); + if (anchor.count * anchor.aliasCount > maxAliasCount) { + const msg = "Excessive alias count indicates a resource exhaustion attack"; + if (this.cstNode) + throw new PlainValue.YAMLReferenceError(this.cstNode, msg); + else + throw new ReferenceError(msg); + } + } + return anchor.res; + } + toString(ctx) { + return Alias.stringify(this, ctx); + } + }; + PlainValue._defineProperty(Alias, "default", true); + function findPair(items, key) { + const k = key instanceof Scalar ? key.value : key; + for (const it of items) { + if (it instanceof Pair) { + if (it.key === key || it.key === k) + return it; + if (it.key && it.key.value === k) + return it; + } + } + return void 0; + } + var YAMLMap = class extends Collection { + add(pair, overwrite) { + if (!pair) + pair = new Pair(pair); + else if (!(pair instanceof Pair)) + pair = new Pair(pair.key || pair, pair.value); + const prev = findPair(this.items, pair.key); + const sortEntries = this.schema && this.schema.sortMapEntries; + if (prev) { + if (overwrite) + prev.value = pair.value; + else + throw new Error(`Key ${pair.key} already set`); + } else if (sortEntries) { + const i = this.items.findIndex((item) => sortEntries(pair, item) < 0); + if (i === -1) + this.items.push(pair); + else + this.items.splice(i, 0, pair); + } else { + this.items.push(pair); + } + } + delete(key) { + const it = findPair(this.items, key); + if (!it) + return false; + const del = this.items.splice(this.items.indexOf(it), 1); + return del.length > 0; + } + get(key, keepScalar) { + const it = findPair(this.items, key); + const node = it && it.value; + return !keepScalar && node instanceof Scalar ? node.value : node; + } + has(key) { + return !!findPair(this.items, key); + } + set(key, value) { + this.add(new Pair(key, value), true); + } + toJSON(_, ctx, Type) { + const map = Type ? new Type() : ctx && ctx.mapAsMap ? /* @__PURE__ */ new Map() : {}; + if (ctx && ctx.onCreate) + ctx.onCreate(map); + for (const item of this.items) + item.addToJSMap(ctx, map); + return map; + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + for (const item of this.items) { + if (!(item instanceof Pair)) + throw new Error(`Map items must all be pairs; found ${JSON.stringify(item)} instead`); + } + return super.toString(ctx, { + blockItem: (n) => n.str, + flowChars: { + start: "{", + end: "}" + }, + isMap: true, + itemIndent: ctx.indent || "" + }, onComment, onChompKeep); + } + }; + var MERGE_KEY = "<<"; + var Merge = class extends Pair { + constructor(pair) { + if (pair instanceof Pair) { + let seq = pair.value; + if (!(seq instanceof YAMLSeq)) { + seq = new YAMLSeq(); + seq.items.push(pair.value); + seq.range = pair.value.range; + } + super(pair.key, seq); + this.range = pair.range; + } else { + super(new Scalar(MERGE_KEY), new YAMLSeq()); + } + this.type = Pair.Type.MERGE_PAIR; + } + addToJSMap(ctx, map) { + for (const { + source + } of this.value.items) { + if (!(source instanceof YAMLMap)) + throw new Error("Merge sources must be maps"); + const srcMap = source.toJSON(null, ctx, Map); + for (const [key, value] of srcMap) { + if (map instanceof Map) { + if (!map.has(key)) + map.set(key, value); + } else if (map instanceof Set) { + map.add(key); + } else if (!Object.prototype.hasOwnProperty.call(map, key)) { + Object.defineProperty(map, key, { + value, + writable: true, + enumerable: true, + configurable: true + }); + } + } + } + return map; + } + toString(ctx, onComment) { + const seq = this.value; + if (seq.items.length > 1) + return super.toString(ctx, onComment); + this.value = seq.items[0]; + const str = super.toString(ctx, onComment); + this.value = seq; + return str; + } + }; + var binaryOptions = { + defaultType: PlainValue.Type.BLOCK_LITERAL, + lineWidth: 76 + }; + var boolOptions = { + trueStr: "true", + falseStr: "false" + }; + var intOptions = { + asBigInt: false + }; + var nullOptions = { + nullStr: "null" + }; + var strOptions = { + defaultType: PlainValue.Type.PLAIN, + doubleQuoted: { + jsonEncoding: false, + minMultiLineLength: 40 + }, + fold: { + lineWidth: 80, + minContentWidth: 20 + } + }; + function resolveScalar(str, tags, scalarFallback) { + for (const { + format, + test, + resolve + } of tags) { + if (test) { + const match = str.match(test); + if (match) { + let res = resolve.apply(null, match); + if (!(res instanceof Scalar)) + res = new Scalar(res); + if (format) + res.format = format; + return res; + } + } + } + if (scalarFallback) + str = scalarFallback(str); + return new Scalar(str); + } + var FOLD_FLOW = "flow"; + var FOLD_BLOCK = "block"; + var FOLD_QUOTED = "quoted"; + var consumeMoreIndentedLines = (text, i) => { + let ch = text[i + 1]; + while (ch === " " || ch === " ") { + do { + ch = text[i += 1]; + } while (ch && ch !== "\n"); + ch = text[i + 1]; + } + return i; + }; + function foldFlowLines(text, indent, mode, { + indentAtStart, + lineWidth = 80, + minContentWidth = 20, + onFold, + onOverflow + }) { + if (!lineWidth || lineWidth < 0) + return text; + const endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length); + if (text.length <= endStep) + return text; + const folds = []; + const escapedFolds = {}; + let end = lineWidth - indent.length; + if (typeof indentAtStart === "number") { + if (indentAtStart > lineWidth - Math.max(2, minContentWidth)) + folds.push(0); + else + end = lineWidth - indentAtStart; + } + let split = void 0; + let prev = void 0; + let overflow = false; + let i = -1; + let escStart = -1; + let escEnd = -1; + if (mode === FOLD_BLOCK) { + i = consumeMoreIndentedLines(text, i); + if (i !== -1) + end = i + endStep; + } + for (let ch; ch = text[i += 1]; ) { + if (mode === FOLD_QUOTED && ch === "\\") { + escStart = i; + switch (text[i + 1]) { + case "x": + i += 3; + break; + case "u": + i += 5; + break; + case "U": + i += 9; + break; + default: + i += 1; + } + escEnd = i; + } + if (ch === "\n") { + if (mode === FOLD_BLOCK) + i = consumeMoreIndentedLines(text, i); + end = i + endStep; + split = void 0; + } else { + if (ch === " " && prev && prev !== " " && prev !== "\n" && prev !== " ") { + const next = text[i + 1]; + if (next && next !== " " && next !== "\n" && next !== " ") + split = i; + } + if (i >= end) { + if (split) { + folds.push(split); + end = split + endStep; + split = void 0; + } else if (mode === FOLD_QUOTED) { + while (prev === " " || prev === " ") { + prev = ch; + ch = text[i += 1]; + overflow = true; + } + const j = i > escEnd + 1 ? i - 2 : escStart - 1; + if (escapedFolds[j]) + return text; + folds.push(j); + escapedFolds[j] = true; + end = j + endStep; + split = void 0; + } else { + overflow = true; + } + } + } + prev = ch; + } + if (overflow && onOverflow) + onOverflow(); + if (folds.length === 0) + return text; + if (onFold) + onFold(); + let res = text.slice(0, folds[0]); + for (let i2 = 0; i2 < folds.length; ++i2) { + const fold = folds[i2]; + const end2 = folds[i2 + 1] || text.length; + if (fold === 0) + res = ` +${indent}${text.slice(0, end2)}`; + else { + if (mode === FOLD_QUOTED && escapedFolds[fold]) + res += `${text[fold]}\\`; + res += ` +${indent}${text.slice(fold + 1, end2)}`; + } + } + return res; + } + var getFoldOptions = ({ + indentAtStart + }) => indentAtStart ? Object.assign({ + indentAtStart + }, strOptions.fold) : strOptions.fold; + var containsDocumentMarker = (str) => /^(%|---|\.\.\.)/m.test(str); + function lineLengthOverLimit(str, lineWidth, indentLength) { + if (!lineWidth || lineWidth < 0) + return false; + const limit = lineWidth - indentLength; + const strLen = str.length; + if (strLen <= limit) + return false; + for (let i = 0, start = 0; i < strLen; ++i) { + if (str[i] === "\n") { + if (i - start > limit) + return true; + start = i + 1; + if (strLen - start <= limit) + return false; + } + } + return true; + } + function doubleQuotedString(value, ctx) { + const { + implicitKey + } = ctx; + const { + jsonEncoding, + minMultiLineLength + } = strOptions.doubleQuoted; + const json = JSON.stringify(value); + if (jsonEncoding) + return json; + const indent = ctx.indent || (containsDocumentMarker(value) ? " " : ""); + let str = ""; + let start = 0; + for (let i = 0, ch = json[i]; ch; ch = json[++i]) { + if (ch === " " && json[i + 1] === "\\" && json[i + 2] === "n") { + str += json.slice(start, i) + "\\ "; + i += 1; + start = i; + ch = "\\"; + } + if (ch === "\\") + switch (json[i + 1]) { + case "u": + { + str += json.slice(start, i); + const code = json.substr(i + 2, 4); + switch (code) { + case "0000": + str += "\\0"; + break; + case "0007": + str += "\\a"; + break; + case "000b": + str += "\\v"; + break; + case "001b": + str += "\\e"; + break; + case "0085": + str += "\\N"; + break; + case "00a0": + str += "\\_"; + break; + case "2028": + str += "\\L"; + break; + case "2029": + str += "\\P"; + break; + default: + if (code.substr(0, 2) === "00") + str += "\\x" + code.substr(2); + else + str += json.substr(i, 6); + } + i += 5; + start = i + 1; + } + break; + case "n": + if (implicitKey || json[i + 2] === '"' || json.length < minMultiLineLength) { + i += 1; + } else { + str += json.slice(start, i) + "\n\n"; + while (json[i + 2] === "\\" && json[i + 3] === "n" && json[i + 4] !== '"') { + str += "\n"; + i += 2; + } + str += indent; + if (json[i + 2] === " ") + str += "\\"; + i += 1; + start = i + 1; + } + break; + default: + i += 1; + } + } + str = start ? str + json.slice(start) : json; + return implicitKey ? str : foldFlowLines(str, indent, FOLD_QUOTED, getFoldOptions(ctx)); + } + function singleQuotedString(value, ctx) { + if (ctx.implicitKey) { + if (/\n/.test(value)) + return doubleQuotedString(value, ctx); + } else { + if (/[ \t]\n|\n[ \t]/.test(value)) + return doubleQuotedString(value, ctx); + } + const indent = ctx.indent || (containsDocumentMarker(value) ? " " : ""); + const res = "'" + value.replace(/'/g, "''").replace(/\n+/g, `$& +${indent}`) + "'"; + return ctx.implicitKey ? res : foldFlowLines(res, indent, FOLD_FLOW, getFoldOptions(ctx)); + } + function blockString({ + comment, + type, + value + }, ctx, onComment, onChompKeep) { + if (/\n[\t ]+$/.test(value) || /^\s*$/.test(value)) { + return doubleQuotedString(value, ctx); + } + const indent = ctx.indent || (ctx.forceBlockIndent || containsDocumentMarker(value) ? " " : ""); + const indentSize = indent ? "2" : "1"; + const literal = type === PlainValue.Type.BLOCK_FOLDED ? false : type === PlainValue.Type.BLOCK_LITERAL ? true : !lineLengthOverLimit(value, strOptions.fold.lineWidth, indent.length); + let header = literal ? "|" : ">"; + if (!value) + return header + "\n"; + let wsStart = ""; + let wsEnd = ""; + value = value.replace(/[\n\t ]*$/, (ws) => { + const n = ws.indexOf("\n"); + if (n === -1) { + header += "-"; + } else if (value === ws || n !== ws.length - 1) { + header += "+"; + if (onChompKeep) + onChompKeep(); + } + wsEnd = ws.replace(/\n$/, ""); + return ""; + }).replace(/^[\n ]*/, (ws) => { + if (ws.indexOf(" ") !== -1) + header += indentSize; + const m = ws.match(/ +$/); + if (m) { + wsStart = ws.slice(0, -m[0].length); + return m[0]; + } else { + wsStart = ws; + return ""; + } + }); + if (wsEnd) + wsEnd = wsEnd.replace(/\n+(?!\n|$)/g, `$&${indent}`); + if (wsStart) + wsStart = wsStart.replace(/\n+/g, `$&${indent}`); + if (comment) { + header += " #" + comment.replace(/ ?[\r\n]+/g, " "); + if (onComment) + onComment(); + } + if (!value) + return `${header}${indentSize} +${indent}${wsEnd}`; + if (literal) { + value = value.replace(/\n+/g, `$&${indent}`); + return `${header} +${indent}${wsStart}${value}${wsEnd}`; + } + value = value.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${indent}`); + const body = foldFlowLines(`${wsStart}${value}${wsEnd}`, indent, FOLD_BLOCK, strOptions.fold); + return `${header} +${indent}${body}`; + } + function plainString(item, ctx, onComment, onChompKeep) { + const { + comment, + type, + value + } = item; + const { + actualString, + implicitKey, + indent, + inFlow + } = ctx; + if (implicitKey && /[\n[\]{},]/.test(value) || inFlow && /[[\]{},]/.test(value)) { + return doubleQuotedString(value, ctx); + } + if (!value || /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) { + return implicitKey || inFlow || value.indexOf("\n") === -1 ? value.indexOf('"') !== -1 && value.indexOf("'") === -1 ? singleQuotedString(value, ctx) : doubleQuotedString(value, ctx) : blockString(item, ctx, onComment, onChompKeep); + } + if (!implicitKey && !inFlow && type !== PlainValue.Type.PLAIN && value.indexOf("\n") !== -1) { + return blockString(item, ctx, onComment, onChompKeep); + } + if (indent === "" && containsDocumentMarker(value)) { + ctx.forceBlockIndent = true; + return blockString(item, ctx, onComment, onChompKeep); + } + const str = value.replace(/\n+/g, `$& +${indent}`); + if (actualString) { + const { + tags + } = ctx.doc.schema; + const resolved = resolveScalar(str, tags, tags.scalarFallback).value; + if (typeof resolved !== "string") + return doubleQuotedString(value, ctx); + } + const body = implicitKey ? str : foldFlowLines(str, indent, FOLD_FLOW, getFoldOptions(ctx)); + if (comment && !inFlow && (body.indexOf("\n") !== -1 || comment.indexOf("\n") !== -1)) { + if (onComment) + onComment(); + return addCommentBefore(body, indent, comment); + } + return body; + } + function stringifyString(item, ctx, onComment, onChompKeep) { + const { + defaultType + } = strOptions; + const { + implicitKey, + inFlow + } = ctx; + let { + type, + value + } = item; + if (typeof value !== "string") { + value = String(value); + item = Object.assign({}, item, { + value + }); + } + const _stringify = (_type) => { + switch (_type) { + case PlainValue.Type.BLOCK_FOLDED: + case PlainValue.Type.BLOCK_LITERAL: + return blockString(item, ctx, onComment, onChompKeep); + case PlainValue.Type.QUOTE_DOUBLE: + return doubleQuotedString(value, ctx); + case PlainValue.Type.QUOTE_SINGLE: + return singleQuotedString(value, ctx); + case PlainValue.Type.PLAIN: + return plainString(item, ctx, onComment, onChompKeep); + default: + return null; + } + }; + if (type !== PlainValue.Type.QUOTE_DOUBLE && /[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(value)) { + type = PlainValue.Type.QUOTE_DOUBLE; + } else if ((implicitKey || inFlow) && (type === PlainValue.Type.BLOCK_FOLDED || type === PlainValue.Type.BLOCK_LITERAL)) { + type = PlainValue.Type.QUOTE_DOUBLE; + } + let res = _stringify(type); + if (res === null) { + res = _stringify(defaultType); + if (res === null) + throw new Error(`Unsupported default string type ${defaultType}`); + } + return res; + } + function stringifyNumber({ + format, + minFractionDigits, + tag, + value + }) { + if (typeof value === "bigint") + return String(value); + if (!isFinite(value)) + return isNaN(value) ? ".nan" : value < 0 ? "-.inf" : ".inf"; + let n = JSON.stringify(value); + if (!format && minFractionDigits && (!tag || tag === "tag:yaml.org,2002:float") && /^\d/.test(n)) { + let i = n.indexOf("."); + if (i < 0) { + i = n.length; + n += "."; + } + let d = minFractionDigits - (n.length - i - 1); + while (d-- > 0) + n += "0"; + } + return n; + } + function checkFlowCollectionEnd(errors, cst) { + let char, name; + switch (cst.type) { + case PlainValue.Type.FLOW_MAP: + char = "}"; + name = "flow map"; + break; + case PlainValue.Type.FLOW_SEQ: + char = "]"; + name = "flow sequence"; + break; + default: + errors.push(new PlainValue.YAMLSemanticError(cst, "Not a flow collection!?")); + return; + } + let lastItem; + for (let i = cst.items.length - 1; i >= 0; --i) { + const item = cst.items[i]; + if (!item || item.type !== PlainValue.Type.COMMENT) { + lastItem = item; + break; + } + } + if (lastItem && lastItem.char !== char) { + const msg = `Expected ${name} to end with ${char}`; + let err; + if (typeof lastItem.offset === "number") { + err = new PlainValue.YAMLSemanticError(cst, msg); + err.offset = lastItem.offset + 1; + } else { + err = new PlainValue.YAMLSemanticError(lastItem, msg); + if (lastItem.range && lastItem.range.end) + err.offset = lastItem.range.end - lastItem.range.start; + } + errors.push(err); + } + } + function checkFlowCommentSpace(errors, comment) { + const prev = comment.context.src[comment.range.start - 1]; + if (prev !== "\n" && prev !== " " && prev !== " ") { + const msg = "Comments must be separated from other tokens by white space characters"; + errors.push(new PlainValue.YAMLSemanticError(comment, msg)); + } + } + function getLongKeyError(source, key) { + const sk = String(key); + const k = sk.substr(0, 8) + "..." + sk.substr(-8); + return new PlainValue.YAMLSemanticError(source, `The "${k}" key is too long`); + } + function resolveComments(collection, comments) { + for (const { + afterKey, + before, + comment + } of comments) { + let item = collection.items[before]; + if (!item) { + if (comment !== void 0) { + if (collection.comment) + collection.comment += "\n" + comment; + else + collection.comment = comment; + } + } else { + if (afterKey && item.value) + item = item.value; + if (comment === void 0) { + if (afterKey || !item.commentBefore) + item.spaceBefore = true; + } else { + if (item.commentBefore) + item.commentBefore += "\n" + comment; + else + item.commentBefore = comment; + } + } + } + } + function resolveString(doc, node) { + const res = node.strValue; + if (!res) + return ""; + if (typeof res === "string") + return res; + res.errors.forEach((error) => { + if (!error.source) + error.source = node; + doc.errors.push(error); + }); + return res.str; + } + function resolveTagHandle(doc, node) { + const { + handle, + suffix + } = node.tag; + let prefix = doc.tagPrefixes.find((p) => p.handle === handle); + if (!prefix) { + const dtp = doc.getDefaults().tagPrefixes; + if (dtp) + prefix = dtp.find((p) => p.handle === handle); + if (!prefix) + throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag handle is non-default and was not declared.`); + } + if (!suffix) + throw new PlainValue.YAMLSemanticError(node, `The ${handle} tag has no suffix.`); + if (handle === "!" && (doc.version || doc.options.version) === "1.0") { + if (suffix[0] === "^") { + doc.warnings.push(new PlainValue.YAMLWarning(node, "YAML 1.0 ^ tag expansion is not supported")); + return suffix; + } + if (/[:/]/.test(suffix)) { + const vocab = suffix.match(/^([a-z0-9-]+)\/(.*)/i); + return vocab ? `tag:${vocab[1]}.yaml.org,2002:${vocab[2]}` : `tag:${suffix}`; + } + } + return prefix.prefix + decodeURIComponent(suffix); + } + function resolveTagName(doc, node) { + const { + tag, + type + } = node; + let nonSpecific = false; + if (tag) { + const { + handle, + suffix, + verbatim + } = tag; + if (verbatim) { + if (verbatim !== "!" && verbatim !== "!!") + return verbatim; + const msg = `Verbatim tags aren't resolved, so ${verbatim} is invalid.`; + doc.errors.push(new PlainValue.YAMLSemanticError(node, msg)); + } else if (handle === "!" && !suffix) { + nonSpecific = true; + } else { + try { + return resolveTagHandle(doc, node); + } catch (error) { + doc.errors.push(error); + } + } + } + switch (type) { + case PlainValue.Type.BLOCK_FOLDED: + case PlainValue.Type.BLOCK_LITERAL: + case PlainValue.Type.QUOTE_DOUBLE: + case PlainValue.Type.QUOTE_SINGLE: + return PlainValue.defaultTags.STR; + case PlainValue.Type.FLOW_MAP: + case PlainValue.Type.MAP: + return PlainValue.defaultTags.MAP; + case PlainValue.Type.FLOW_SEQ: + case PlainValue.Type.SEQ: + return PlainValue.defaultTags.SEQ; + case PlainValue.Type.PLAIN: + return nonSpecific ? PlainValue.defaultTags.STR : null; + default: + return null; + } + } + function resolveByTagName(doc, node, tagName) { + const { + tags + } = doc.schema; + const matchWithTest = []; + for (const tag of tags) { + if (tag.tag === tagName) { + if (tag.test) + matchWithTest.push(tag); + else { + const res = tag.resolve(doc, node); + return res instanceof Collection ? res : new Scalar(res); + } + } + } + const str = resolveString(doc, node); + if (typeof str === "string" && matchWithTest.length > 0) + return resolveScalar(str, matchWithTest, tags.scalarFallback); + return null; + } + function getFallbackTagName({ + type + }) { + switch (type) { + case PlainValue.Type.FLOW_MAP: + case PlainValue.Type.MAP: + return PlainValue.defaultTags.MAP; + case PlainValue.Type.FLOW_SEQ: + case PlainValue.Type.SEQ: + return PlainValue.defaultTags.SEQ; + default: + return PlainValue.defaultTags.STR; + } + } + function resolveTag(doc, node, tagName) { + try { + const res = resolveByTagName(doc, node, tagName); + if (res) { + if (tagName && node.tag) + res.tag = tagName; + return res; + } + } catch (error) { + if (!error.source) + error.source = node; + doc.errors.push(error); + return null; + } + try { + const fallback = getFallbackTagName(node); + if (!fallback) + throw new Error(`The tag ${tagName} is unavailable`); + const msg = `The tag ${tagName} is unavailable, falling back to ${fallback}`; + doc.warnings.push(new PlainValue.YAMLWarning(node, msg)); + const res = resolveByTagName(doc, node, fallback); + res.tag = tagName; + return res; + } catch (error) { + const refError = new PlainValue.YAMLReferenceError(node, error.message); + refError.stack = error.stack; + doc.errors.push(refError); + return null; + } + } + var isCollectionItem = (node) => { + if (!node) + return false; + const { + type + } = node; + return type === PlainValue.Type.MAP_KEY || type === PlainValue.Type.MAP_VALUE || type === PlainValue.Type.SEQ_ITEM; + }; + function resolveNodeProps(errors, node) { + const comments = { + before: [], + after: [] + }; + let hasAnchor = false; + let hasTag = false; + const props = isCollectionItem(node.context.parent) ? node.context.parent.props.concat(node.props) : node.props; + for (const { + start, + end + } of props) { + switch (node.context.src[start]) { + case PlainValue.Char.COMMENT: { + if (!node.commentHasRequiredWhitespace(start)) { + const msg = "Comments must be separated from other tokens by white space characters"; + errors.push(new PlainValue.YAMLSemanticError(node, msg)); + } + const { + header, + valueRange + } = node; + const cc = valueRange && (start > valueRange.start || header && start > header.start) ? comments.after : comments.before; + cc.push(node.context.src.slice(start + 1, end)); + break; + } + case PlainValue.Char.ANCHOR: + if (hasAnchor) { + const msg = "A node can have at most one anchor"; + errors.push(new PlainValue.YAMLSemanticError(node, msg)); + } + hasAnchor = true; + break; + case PlainValue.Char.TAG: + if (hasTag) { + const msg = "A node can have at most one tag"; + errors.push(new PlainValue.YAMLSemanticError(node, msg)); + } + hasTag = true; + break; + } + } + return { + comments, + hasAnchor, + hasTag + }; + } + function resolveNodeValue(doc, node) { + const { + anchors, + errors, + schema + } = doc; + if (node.type === PlainValue.Type.ALIAS) { + const name = node.rawValue; + const src = anchors.getNode(name); + if (!src) { + const msg = `Aliased anchor not found: ${name}`; + errors.push(new PlainValue.YAMLReferenceError(node, msg)); + return null; + } + const res = new Alias(src); + anchors._cstAliases.push(res); + return res; + } + const tagName = resolveTagName(doc, node); + if (tagName) + return resolveTag(doc, node, tagName); + if (node.type !== PlainValue.Type.PLAIN) { + const msg = `Failed to resolve ${node.type} node here`; + errors.push(new PlainValue.YAMLSyntaxError(node, msg)); + return null; + } + try { + const str = resolveString(doc, node); + return resolveScalar(str, schema.tags, schema.tags.scalarFallback); + } catch (error) { + if (!error.source) + error.source = node; + errors.push(error); + return null; + } + } + function resolveNode(doc, node) { + if (!node) + return null; + if (node.error) + doc.errors.push(node.error); + const { + comments, + hasAnchor, + hasTag + } = resolveNodeProps(doc.errors, node); + if (hasAnchor) { + const { + anchors + } = doc; + const name = node.anchor; + const prev = anchors.getNode(name); + if (prev) + anchors.map[anchors.newName(name)] = prev; + anchors.map[name] = node; + } + if (node.type === PlainValue.Type.ALIAS && (hasAnchor || hasTag)) { + const msg = "An alias node must not specify any properties"; + doc.errors.push(new PlainValue.YAMLSemanticError(node, msg)); + } + const res = resolveNodeValue(doc, node); + if (res) { + res.range = [node.range.start, node.range.end]; + if (doc.options.keepCstNodes) + res.cstNode = node; + if (doc.options.keepNodeTypes) + res.type = node.type; + const cb = comments.before.join("\n"); + if (cb) { + res.commentBefore = res.commentBefore ? `${res.commentBefore} +${cb}` : cb; + } + const ca = comments.after.join("\n"); + if (ca) + res.comment = res.comment ? `${res.comment} +${ca}` : ca; + } + return node.resolved = res; + } + function resolveMap(doc, cst) { + if (cst.type !== PlainValue.Type.MAP && cst.type !== PlainValue.Type.FLOW_MAP) { + const msg = `A ${cst.type} node cannot be resolved as a mapping`; + doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg)); + return null; + } + const { + comments, + items + } = cst.type === PlainValue.Type.FLOW_MAP ? resolveFlowMapItems(doc, cst) : resolveBlockMapItems(doc, cst); + const map = new YAMLMap(); + map.items = items; + resolveComments(map, comments); + let hasCollectionKey = false; + for (let i = 0; i < items.length; ++i) { + const { + key: iKey + } = items[i]; + if (iKey instanceof Collection) + hasCollectionKey = true; + if (doc.schema.merge && iKey && iKey.value === MERGE_KEY) { + items[i] = new Merge(items[i]); + const sources = items[i].value.items; + let error = null; + sources.some((node) => { + if (node instanceof Alias) { + const { + type + } = node.source; + if (type === PlainValue.Type.MAP || type === PlainValue.Type.FLOW_MAP) + return false; + return error = "Merge nodes aliases can only point to maps"; + } + return error = "Merge nodes can only have Alias nodes as values"; + }); + if (error) + doc.errors.push(new PlainValue.YAMLSemanticError(cst, error)); + } else { + for (let j = i + 1; j < items.length; ++j) { + const { + key: jKey + } = items[j]; + if (iKey === jKey || iKey && jKey && Object.prototype.hasOwnProperty.call(iKey, "value") && iKey.value === jKey.value) { + const msg = `Map keys must be unique; "${iKey}" is repeated`; + doc.errors.push(new PlainValue.YAMLSemanticError(cst, msg)); + break; + } + } + } + } + if (hasCollectionKey && !doc.options.mapAsMap) { + const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this."; + doc.warnings.push(new PlainValue.YAMLWarning(cst, warn)); + } + cst.resolved = map; + return map; + } + var valueHasPairComment = ({ + context: { + lineStart, + node, + src + }, + props + }) => { + if (props.length === 0) + return false; + const { + start + } = props[0]; + if (node && start > node.valueRange.start) + return false; + if (src[start] !== PlainValue.Char.COMMENT) + return false; + for (let i = lineStart; i < start; ++i) + if (src[i] === "\n") + return false; + return true; + }; + function resolvePairComment(item, pair) { + if (!valueHasPairComment(item)) + return; + const comment = item.getPropValue(0, PlainValue.Char.COMMENT, true); + let found = false; + const cb = pair.value.commentBefore; + if (cb && cb.startsWith(comment)) { + pair.value.commentBefore = cb.substr(comment.length + 1); + found = true; + } else { + const cc = pair.value.comment; + if (!item.node && cc && cc.startsWith(comment)) { + pair.value.comment = cc.substr(comment.length + 1); + found = true; + } + } + if (found) + pair.comment = comment; + } + function resolveBlockMapItems(doc, cst) { + const comments = []; + const items = []; + let key = void 0; + let keyStart = null; + for (let i = 0; i < cst.items.length; ++i) { + const item = cst.items[i]; + switch (item.type) { + case PlainValue.Type.BLANK_LINE: + comments.push({ + afterKey: !!key, + before: items.length + }); + break; + case PlainValue.Type.COMMENT: + comments.push({ + afterKey: !!key, + before: items.length, + comment: item.comment + }); + break; + case PlainValue.Type.MAP_KEY: + if (key !== void 0) + items.push(new Pair(key)); + if (item.error) + doc.errors.push(item.error); + key = resolveNode(doc, item.node); + keyStart = null; + break; + case PlainValue.Type.MAP_VALUE: + { + if (key === void 0) + key = null; + if (item.error) + doc.errors.push(item.error); + if (!item.context.atLineStart && item.node && item.node.type === PlainValue.Type.MAP && !item.node.context.atLineStart) { + const msg = "Nested mappings are not allowed in compact mappings"; + doc.errors.push(new PlainValue.YAMLSemanticError(item.node, msg)); + } + let valueNode = item.node; + if (!valueNode && item.props.length > 0) { + valueNode = new PlainValue.PlainValue(PlainValue.Type.PLAIN, []); + valueNode.context = { + parent: item, + src: item.context.src + }; + const pos = item.range.start + 1; + valueNode.range = { + start: pos, + end: pos + }; + valueNode.valueRange = { + start: pos, + end: pos + }; + if (typeof item.range.origStart === "number") { + const origPos = item.range.origStart + 1; + valueNode.range.origStart = valueNode.range.origEnd = origPos; + valueNode.valueRange.origStart = valueNode.valueRange.origEnd = origPos; + } + } + const pair = new Pair(key, resolveNode(doc, valueNode)); + resolvePairComment(item, pair); + items.push(pair); + if (key && typeof keyStart === "number") { + if (item.range.start > keyStart + 1024) + doc.errors.push(getLongKeyError(cst, key)); + } + key = void 0; + keyStart = null; + } + break; + default: + if (key !== void 0) + items.push(new Pair(key)); + key = resolveNode(doc, item); + keyStart = item.range.start; + if (item.error) + doc.errors.push(item.error); + next: + for (let j = i + 1; ; ++j) { + const nextItem = cst.items[j]; + switch (nextItem && nextItem.type) { + case PlainValue.Type.BLANK_LINE: + case PlainValue.Type.COMMENT: + continue next; + case PlainValue.Type.MAP_VALUE: + break next; + default: { + const msg = "Implicit map keys need to be followed by map values"; + doc.errors.push(new PlainValue.YAMLSemanticError(item, msg)); + break next; + } + } + } + if (item.valueRangeContainsNewline) { + const msg = "Implicit map keys need to be on a single line"; + doc.errors.push(new PlainValue.YAMLSemanticError(item, msg)); + } + } + } + if (key !== void 0) + items.push(new Pair(key)); + return { + comments, + items + }; + } + function resolveFlowMapItems(doc, cst) { + const comments = []; + const items = []; + let key = void 0; + let explicitKey = false; + let next = "{"; + for (let i = 0; i < cst.items.length; ++i) { + const item = cst.items[i]; + if (typeof item.char === "string") { + const { + char, + offset + } = item; + if (char === "?" && key === void 0 && !explicitKey) { + explicitKey = true; + next = ":"; + continue; + } + if (char === ":") { + if (key === void 0) + key = null; + if (next === ":") { + next = ","; + continue; + } + } else { + if (explicitKey) { + if (key === void 0 && char !== ",") + key = null; + explicitKey = false; + } + if (key !== void 0) { + items.push(new Pair(key)); + key = void 0; + if (char === ",") { + next = ":"; + continue; + } + } + } + if (char === "}") { + if (i === cst.items.length - 1) + continue; + } else if (char === next) { + next = ":"; + continue; + } + const msg = `Flow map contains an unexpected ${char}`; + const err = new PlainValue.YAMLSyntaxError(cst, msg); + err.offset = offset; + doc.errors.push(err); + } else if (item.type === PlainValue.Type.BLANK_LINE) { + comments.push({ + afterKey: !!key, + before: items.length + }); + } else if (item.type === PlainValue.Type.COMMENT) { + checkFlowCommentSpace(doc.errors, item); + comments.push({ + afterKey: !!key, + before: items.length, + comment: item.comment + }); + } else if (key === void 0) { + if (next === ",") + doc.errors.push(new PlainValue.YAMLSemanticError(item, "Separator , missing in flow map")); + key = resolveNode(doc, item); + } else { + if (next !== ",") + doc.errors.push(new PlainValue.YAMLSemanticError(item, "Indicator : missing in flow map entry")); + items.push(new Pair(key, resolveNode(doc, item))); + key = void 0; + explicitKey = false; + } + } + checkFlowCollectionEnd(doc.errors, cst); + if (key !== void 0) + items.push(new Pair(key)); + return { + comments, + items + }; + } + function resolveSeq(doc, cst) { + if (cst.type !== PlainValue.Type.SEQ && cst.type !== PlainValue.Type.FLOW_SEQ) { + const msg = `A ${cst.type} node cannot be resolved as a sequence`; + doc.errors.push(new PlainValue.YAMLSyntaxError(cst, msg)); + return null; + } + const { + comments, + items + } = cst.type === PlainValue.Type.FLOW_SEQ ? resolveFlowSeqItems(doc, cst) : resolveBlockSeqItems(doc, cst); + const seq = new YAMLSeq(); + seq.items = items; + resolveComments(seq, comments); + if (!doc.options.mapAsMap && items.some((it) => it instanceof Pair && it.key instanceof Collection)) { + const warn = "Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this."; + doc.warnings.push(new PlainValue.YAMLWarning(cst, warn)); + } + cst.resolved = seq; + return seq; + } + function resolveBlockSeqItems(doc, cst) { + const comments = []; + const items = []; + for (let i = 0; i < cst.items.length; ++i) { + const item = cst.items[i]; + switch (item.type) { + case PlainValue.Type.BLANK_LINE: + comments.push({ + before: items.length + }); + break; + case PlainValue.Type.COMMENT: + comments.push({ + comment: item.comment, + before: items.length + }); + break; + case PlainValue.Type.SEQ_ITEM: + if (item.error) + doc.errors.push(item.error); + items.push(resolveNode(doc, item.node)); + if (item.hasProps) { + const msg = "Sequence items cannot have tags or anchors before the - indicator"; + doc.errors.push(new PlainValue.YAMLSemanticError(item, msg)); + } + break; + default: + if (item.error) + doc.errors.push(item.error); + doc.errors.push(new PlainValue.YAMLSyntaxError(item, `Unexpected ${item.type} node in sequence`)); + } + } + return { + comments, + items + }; + } + function resolveFlowSeqItems(doc, cst) { + const comments = []; + const items = []; + let explicitKey = false; + let key = void 0; + let keyStart = null; + let next = "["; + let prevItem = null; + for (let i = 0; i < cst.items.length; ++i) { + const item = cst.items[i]; + if (typeof item.char === "string") { + const { + char, + offset + } = item; + if (char !== ":" && (explicitKey || key !== void 0)) { + if (explicitKey && key === void 0) + key = next ? items.pop() : null; + items.push(new Pair(key)); + explicitKey = false; + key = void 0; + keyStart = null; + } + if (char === next) { + next = null; + } else if (!next && char === "?") { + explicitKey = true; + } else if (next !== "[" && char === ":" && key === void 0) { + if (next === ",") { + key = items.pop(); + if (key instanceof Pair) { + const msg = "Chaining flow sequence pairs is invalid"; + const err = new PlainValue.YAMLSemanticError(cst, msg); + err.offset = offset; + doc.errors.push(err); + } + if (!explicitKey && typeof keyStart === "number") { + const keyEnd = item.range ? item.range.start : item.offset; + if (keyEnd > keyStart + 1024) + doc.errors.push(getLongKeyError(cst, key)); + const { + src + } = prevItem.context; + for (let i2 = keyStart; i2 < keyEnd; ++i2) + if (src[i2] === "\n") { + const msg = "Implicit keys of flow sequence pairs need to be on a single line"; + doc.errors.push(new PlainValue.YAMLSemanticError(prevItem, msg)); + break; + } + } + } else { + key = null; + } + keyStart = null; + explicitKey = false; + next = null; + } else if (next === "[" || char !== "]" || i < cst.items.length - 1) { + const msg = `Flow sequence contains an unexpected ${char}`; + const err = new PlainValue.YAMLSyntaxError(cst, msg); + err.offset = offset; + doc.errors.push(err); + } + } else if (item.type === PlainValue.Type.BLANK_LINE) { + comments.push({ + before: items.length + }); + } else if (item.type === PlainValue.Type.COMMENT) { + checkFlowCommentSpace(doc.errors, item); + comments.push({ + comment: item.comment, + before: items.length + }); + } else { + if (next) { + const msg = `Expected a ${next} in flow sequence`; + doc.errors.push(new PlainValue.YAMLSemanticError(item, msg)); + } + const value = resolveNode(doc, item); + if (key === void 0) { + items.push(value); + prevItem = item; + } else { + items.push(new Pair(key, value)); + key = void 0; + } + keyStart = item.range.start; + next = ","; + } + } + checkFlowCollectionEnd(doc.errors, cst); + if (key !== void 0) + items.push(new Pair(key)); + return { + comments, + items + }; + } + exports2.Alias = Alias; + exports2.Collection = Collection; + exports2.Merge = Merge; + exports2.Node = Node; + exports2.Pair = Pair; + exports2.Scalar = Scalar; + exports2.YAMLMap = YAMLMap; + exports2.YAMLSeq = YAMLSeq; + exports2.addComment = addComment; + exports2.binaryOptions = binaryOptions; + exports2.boolOptions = boolOptions; + exports2.findPair = findPair; + exports2.intOptions = intOptions; + exports2.isEmptyPath = isEmptyPath; + exports2.nullOptions = nullOptions; + exports2.resolveMap = resolveMap; + exports2.resolveNode = resolveNode; + exports2.resolveSeq = resolveSeq; + exports2.resolveString = resolveString; + exports2.strOptions = strOptions; + exports2.stringifyNumber = stringifyNumber; + exports2.stringifyString = stringifyString; + exports2.toJSON = toJSON; + } +}); +var require_warnings_1000a372 = __commonJS({ + "node_modules/yaml/dist/warnings-1000a372.js"(exports2) { + "use strict"; + var PlainValue = require_PlainValue_ec8e588e(); + var resolveSeq = require_resolveSeq_d03cb037(); + var binary = { + identify: (value) => value instanceof Uint8Array, + default: false, + tag: "tag:yaml.org,2002:binary", + resolve: (doc, node) => { + const src = resolveSeq.resolveString(doc, node); + if (typeof Buffer === "function") { + return Buffer.from(src, "base64"); + } else if (typeof atob === "function") { + const str = atob(src.replace(/[\n\r]/g, "")); + const buffer = new Uint8Array(str.length); + for (let i = 0; i < str.length; ++i) + buffer[i] = str.charCodeAt(i); + return buffer; + } else { + const msg = "This environment does not support reading binary tags; either Buffer or atob is required"; + doc.errors.push(new PlainValue.YAMLReferenceError(node, msg)); + return null; + } + }, + options: resolveSeq.binaryOptions, + stringify: ({ + comment, + type, + value + }, ctx, onComment, onChompKeep) => { + let src; + if (typeof Buffer === "function") { + src = value instanceof Buffer ? value.toString("base64") : Buffer.from(value.buffer).toString("base64"); + } else if (typeof btoa === "function") { + let s = ""; + for (let i = 0; i < value.length; ++i) + s += String.fromCharCode(value[i]); + src = btoa(s); + } else { + throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required"); + } + if (!type) + type = resolveSeq.binaryOptions.defaultType; + if (type === PlainValue.Type.QUOTE_DOUBLE) { + value = src; + } else { + const { + lineWidth + } = resolveSeq.binaryOptions; + const n = Math.ceil(src.length / lineWidth); + const lines = new Array(n); + for (let i = 0, o = 0; i < n; ++i, o += lineWidth) { + lines[i] = src.substr(o, lineWidth); + } + value = lines.join(type === PlainValue.Type.BLOCK_LITERAL ? "\n" : " "); + } + return resolveSeq.stringifyString({ + comment, + type, + value + }, ctx, onComment, onChompKeep); + } + }; + function parsePairs(doc, cst) { + const seq = resolveSeq.resolveSeq(doc, cst); + for (let i = 0; i < seq.items.length; ++i) { + let item = seq.items[i]; + if (item instanceof resolveSeq.Pair) + continue; + else if (item instanceof resolveSeq.YAMLMap) { + if (item.items.length > 1) { + const msg = "Each pair must have its own sequence indicator"; + throw new PlainValue.YAMLSemanticError(cst, msg); + } + const pair = item.items[0] || new resolveSeq.Pair(); + if (item.commentBefore) + pair.commentBefore = pair.commentBefore ? `${item.commentBefore} +${pair.commentBefore}` : item.commentBefore; + if (item.comment) + pair.comment = pair.comment ? `${item.comment} +${pair.comment}` : item.comment; + item = pair; + } + seq.items[i] = item instanceof resolveSeq.Pair ? item : new resolveSeq.Pair(item); + } + return seq; + } + function createPairs(schema, iterable, ctx) { + const pairs2 = new resolveSeq.YAMLSeq(schema); + pairs2.tag = "tag:yaml.org,2002:pairs"; + for (const it of iterable) { + let key, value; + if (Array.isArray(it)) { + if (it.length === 2) { + key = it[0]; + value = it[1]; + } else + throw new TypeError(`Expected [key, value] tuple: ${it}`); + } else if (it && it instanceof Object) { + const keys = Object.keys(it); + if (keys.length === 1) { + key = keys[0]; + value = it[key]; + } else + throw new TypeError(`Expected { key: value } tuple: ${it}`); + } else { + key = it; + } + const pair = schema.createPair(key, value, ctx); + pairs2.items.push(pair); + } + return pairs2; + } + var pairs = { + default: false, + tag: "tag:yaml.org,2002:pairs", + resolve: parsePairs, + createNode: createPairs + }; + var YAMLOMap = class extends resolveSeq.YAMLSeq { + constructor() { + super(); + PlainValue._defineProperty(this, "add", resolveSeq.YAMLMap.prototype.add.bind(this)); + PlainValue._defineProperty(this, "delete", resolveSeq.YAMLMap.prototype.delete.bind(this)); + PlainValue._defineProperty(this, "get", resolveSeq.YAMLMap.prototype.get.bind(this)); + PlainValue._defineProperty(this, "has", resolveSeq.YAMLMap.prototype.has.bind(this)); + PlainValue._defineProperty(this, "set", resolveSeq.YAMLMap.prototype.set.bind(this)); + this.tag = YAMLOMap.tag; + } + toJSON(_, ctx) { + const map = /* @__PURE__ */ new Map(); + if (ctx && ctx.onCreate) + ctx.onCreate(map); + for (const pair of this.items) { + let key, value; + if (pair instanceof resolveSeq.Pair) { + key = resolveSeq.toJSON(pair.key, "", ctx); + value = resolveSeq.toJSON(pair.value, key, ctx); + } else { + key = resolveSeq.toJSON(pair, "", ctx); + } + if (map.has(key)) + throw new Error("Ordered maps must not include duplicate keys"); + map.set(key, value); + } + return map; + } + }; + PlainValue._defineProperty(YAMLOMap, "tag", "tag:yaml.org,2002:omap"); + function parseOMap(doc, cst) { + const pairs2 = parsePairs(doc, cst); + const seenKeys = []; + for (const { + key + } of pairs2.items) { + if (key instanceof resolveSeq.Scalar) { + if (seenKeys.includes(key.value)) { + const msg = "Ordered maps must not include duplicate keys"; + throw new PlainValue.YAMLSemanticError(cst, msg); + } else { + seenKeys.push(key.value); + } + } + } + return Object.assign(new YAMLOMap(), pairs2); + } + function createOMap(schema, iterable, ctx) { + const pairs2 = createPairs(schema, iterable, ctx); + const omap2 = new YAMLOMap(); + omap2.items = pairs2.items; + return omap2; + } + var omap = { + identify: (value) => value instanceof Map, + nodeClass: YAMLOMap, + default: false, + tag: "tag:yaml.org,2002:omap", + resolve: parseOMap, + createNode: createOMap + }; + var YAMLSet = class extends resolveSeq.YAMLMap { + constructor() { + super(); + this.tag = YAMLSet.tag; + } + add(key) { + const pair = key instanceof resolveSeq.Pair ? key : new resolveSeq.Pair(key); + const prev = resolveSeq.findPair(this.items, pair.key); + if (!prev) + this.items.push(pair); + } + get(key, keepPair) { + const pair = resolveSeq.findPair(this.items, key); + return !keepPair && pair instanceof resolveSeq.Pair ? pair.key instanceof resolveSeq.Scalar ? pair.key.value : pair.key : pair; + } + set(key, value) { + if (typeof value !== "boolean") + throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`); + const prev = resolveSeq.findPair(this.items, key); + if (prev && !value) { + this.items.splice(this.items.indexOf(prev), 1); + } else if (!prev && value) { + this.items.push(new resolveSeq.Pair(key)); + } + } + toJSON(_, ctx) { + return super.toJSON(_, ctx, Set); + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + if (this.hasAllNullValues()) + return super.toString(ctx, onComment, onChompKeep); + else + throw new Error("Set items must all have null values"); + } + }; + PlainValue._defineProperty(YAMLSet, "tag", "tag:yaml.org,2002:set"); + function parseSet(doc, cst) { + const map = resolveSeq.resolveMap(doc, cst); + if (!map.hasAllNullValues()) + throw new PlainValue.YAMLSemanticError(cst, "Set items must all have null values"); + return Object.assign(new YAMLSet(), map); + } + function createSet(schema, iterable, ctx) { + const set2 = new YAMLSet(); + for (const value of iterable) + set2.items.push(schema.createPair(value, null, ctx)); + return set2; + } + var set = { + identify: (value) => value instanceof Set, + nodeClass: YAMLSet, + default: false, + tag: "tag:yaml.org,2002:set", + resolve: parseSet, + createNode: createSet + }; + var parseSexagesimal = (sign, parts) => { + const n = parts.split(":").reduce((n2, p) => n2 * 60 + Number(p), 0); + return sign === "-" ? -n : n; + }; + var stringifySexagesimal = ({ + value + }) => { + if (isNaN(value) || !isFinite(value)) + return resolveSeq.stringifyNumber(value); + let sign = ""; + if (value < 0) { + sign = "-"; + value = Math.abs(value); + } + const parts = [value % 60]; + if (value < 60) { + parts.unshift(0); + } else { + value = Math.round((value - parts[0]) / 60); + parts.unshift(value % 60); + if (value >= 60) { + value = Math.round((value - parts[0]) / 60); + parts.unshift(value); + } + } + return sign + parts.map((n) => n < 10 ? "0" + String(n) : String(n)).join(":").replace(/000000\d*$/, ""); + }; + var intTime = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:int", + format: "TIME", + test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/, + resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")), + stringify: stringifySexagesimal + }; + var floatTime = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + format: "TIME", + test: /^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/, + resolve: (str, sign, parts) => parseSexagesimal(sign, parts.replace(/_/g, "")), + stringify: stringifySexagesimal + }; + var timestamp = { + identify: (value) => value instanceof Date, + default: true, + tag: "tag:yaml.org,2002:timestamp", + test: RegExp("^(?:([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?)$"), + resolve: (str, year, month, day, hour, minute, second, millisec, tz) => { + if (millisec) + millisec = (millisec + "00").substr(1, 3); + let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec || 0); + if (tz && tz !== "Z") { + let d = parseSexagesimal(tz[0], tz.slice(1)); + if (Math.abs(d) < 30) + d *= 60; + date -= 6e4 * d; + } + return new Date(date); + }, + stringify: ({ + value + }) => value.toISOString().replace(/((T00:00)?:00)?\.000Z$/, "") + }; + function shouldWarn(deprecation) { + const env = typeof process !== "undefined" && process.env || {}; + if (deprecation) { + if (typeof YAML_SILENCE_DEPRECATION_WARNINGS !== "undefined") + return !YAML_SILENCE_DEPRECATION_WARNINGS; + return !env.YAML_SILENCE_DEPRECATION_WARNINGS; + } + if (typeof YAML_SILENCE_WARNINGS !== "undefined") + return !YAML_SILENCE_WARNINGS; + return !env.YAML_SILENCE_WARNINGS; + } + function warn(warning, type) { + if (shouldWarn(false)) { + const emit = typeof process !== "undefined" && process.emitWarning; + if (emit) + emit(warning, type); + else { + console.warn(type ? `${type}: ${warning}` : warning); + } + } + } + function warnFileDeprecation(filename) { + if (shouldWarn(true)) { + const path = filename.replace(/.*yaml[/\\]/i, "").replace(/\.js$/, "").replace(/\\/g, "/"); + warn(`The endpoint 'yaml/${path}' will be removed in a future release.`, "DeprecationWarning"); + } + } + var warned = {}; + function warnOptionDeprecation(name, alternative) { + if (!warned[name] && shouldWarn(true)) { + warned[name] = true; + let msg = `The option '${name}' will be removed in a future release`; + msg += alternative ? `, use '${alternative}' instead.` : "."; + warn(msg, "DeprecationWarning"); + } + } + exports2.binary = binary; + exports2.floatTime = floatTime; + exports2.intTime = intTime; + exports2.omap = omap; + exports2.pairs = pairs; + exports2.set = set; + exports2.timestamp = timestamp; + exports2.warn = warn; + exports2.warnFileDeprecation = warnFileDeprecation; + exports2.warnOptionDeprecation = warnOptionDeprecation; + } +}); +var require_Schema_88e323a7 = __commonJS({ + "node_modules/yaml/dist/Schema-88e323a7.js"(exports2) { + "use strict"; + var PlainValue = require_PlainValue_ec8e588e(); + var resolveSeq = require_resolveSeq_d03cb037(); + var warnings = require_warnings_1000a372(); + function createMap(schema, obj, ctx) { + const map2 = new resolveSeq.YAMLMap(schema); + if (obj instanceof Map) { + for (const [key, value] of obj) + map2.items.push(schema.createPair(key, value, ctx)); + } else if (obj && typeof obj === "object") { + for (const key of Object.keys(obj)) + map2.items.push(schema.createPair(key, obj[key], ctx)); + } + if (typeof schema.sortMapEntries === "function") { + map2.items.sort(schema.sortMapEntries); + } + return map2; + } + var map = { + createNode: createMap, + default: true, + nodeClass: resolveSeq.YAMLMap, + tag: "tag:yaml.org,2002:map", + resolve: resolveSeq.resolveMap + }; + function createSeq(schema, obj, ctx) { + const seq2 = new resolveSeq.YAMLSeq(schema); + if (obj && obj[Symbol.iterator]) { + for (const it of obj) { + const v = schema.createNode(it, ctx.wrapScalars, null, ctx); + seq2.items.push(v); + } + } + return seq2; + } + var seq = { + createNode: createSeq, + default: true, + nodeClass: resolveSeq.YAMLSeq, + tag: "tag:yaml.org,2002:seq", + resolve: resolveSeq.resolveSeq + }; + var string = { + identify: (value) => typeof value === "string", + default: true, + tag: "tag:yaml.org,2002:str", + resolve: resolveSeq.resolveString, + stringify(item, ctx, onComment, onChompKeep) { + ctx = Object.assign({ + actualString: true + }, ctx); + return resolveSeq.stringifyString(item, ctx, onComment, onChompKeep); + }, + options: resolveSeq.strOptions + }; + var failsafe = [map, seq, string]; + var intIdentify$2 = (value) => typeof value === "bigint" || Number.isInteger(value); + var intResolve$1 = (src, part, radix) => resolveSeq.intOptions.asBigInt ? BigInt(src) : parseInt(part, radix); + function intStringify$1(node, radix, prefix) { + const { + value + } = node; + if (intIdentify$2(value) && value >= 0) + return prefix + value.toString(radix); + return resolveSeq.stringifyNumber(node); + } + var nullObj = { + identify: (value) => value == null, + createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null, + default: true, + tag: "tag:yaml.org,2002:null", + test: /^(?:~|[Nn]ull|NULL)?$/, + resolve: () => null, + options: resolveSeq.nullOptions, + stringify: () => resolveSeq.nullOptions.nullStr + }; + var boolObj = { + identify: (value) => typeof value === "boolean", + default: true, + tag: "tag:yaml.org,2002:bool", + test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/, + resolve: (str) => str[0] === "t" || str[0] === "T", + options: resolveSeq.boolOptions, + stringify: ({ + value + }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr + }; + var octObj = { + identify: (value) => intIdentify$2(value) && value >= 0, + default: true, + tag: "tag:yaml.org,2002:int", + format: "OCT", + test: /^0o([0-7]+)$/, + resolve: (str, oct) => intResolve$1(str, oct, 8), + options: resolveSeq.intOptions, + stringify: (node) => intStringify$1(node, 8, "0o") + }; + var intObj = { + identify: intIdentify$2, + default: true, + tag: "tag:yaml.org,2002:int", + test: /^[-+]?[0-9]+$/, + resolve: (str) => intResolve$1(str, str, 10), + options: resolveSeq.intOptions, + stringify: resolveSeq.stringifyNumber + }; + var hexObj = { + identify: (value) => intIdentify$2(value) && value >= 0, + default: true, + tag: "tag:yaml.org,2002:int", + format: "HEX", + test: /^0x([0-9a-fA-F]+)$/, + resolve: (str, hex) => intResolve$1(str, hex, 16), + options: resolveSeq.intOptions, + stringify: (node) => intStringify$1(node, 16, "0x") + }; + var nanObj = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + test: /^(?:[-+]?\.inf|(\.nan))$/i, + resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY, + stringify: resolveSeq.stringifyNumber + }; + var expObj = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + format: "EXP", + test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/, + resolve: (str) => parseFloat(str), + stringify: ({ + value + }) => Number(value).toExponential() + }; + var floatObj = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + test: /^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/, + resolve(str, frac1, frac2) { + const frac = frac1 || frac2; + const node = new resolveSeq.Scalar(parseFloat(str)); + if (frac && frac[frac.length - 1] === "0") + node.minFractionDigits = frac.length; + return node; + }, + stringify: resolveSeq.stringifyNumber + }; + var core = failsafe.concat([nullObj, boolObj, octObj, intObj, hexObj, nanObj, expObj, floatObj]); + var intIdentify$1 = (value) => typeof value === "bigint" || Number.isInteger(value); + var stringifyJSON = ({ + value + }) => JSON.stringify(value); + var json = [map, seq, { + identify: (value) => typeof value === "string", + default: true, + tag: "tag:yaml.org,2002:str", + resolve: resolveSeq.resolveString, + stringify: stringifyJSON + }, { + identify: (value) => value == null, + createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null, + default: true, + tag: "tag:yaml.org,2002:null", + test: /^null$/, + resolve: () => null, + stringify: stringifyJSON + }, { + identify: (value) => typeof value === "boolean", + default: true, + tag: "tag:yaml.org,2002:bool", + test: /^true|false$/, + resolve: (str) => str === "true", + stringify: stringifyJSON + }, { + identify: intIdentify$1, + default: true, + tag: "tag:yaml.org,2002:int", + test: /^-?(?:0|[1-9][0-9]*)$/, + resolve: (str) => resolveSeq.intOptions.asBigInt ? BigInt(str) : parseInt(str, 10), + stringify: ({ + value + }) => intIdentify$1(value) ? value.toString() : JSON.stringify(value) + }, { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/, + resolve: (str) => parseFloat(str), + stringify: stringifyJSON + }]; + json.scalarFallback = (str) => { + throw new SyntaxError(`Unresolved plain scalar ${JSON.stringify(str)}`); + }; + var boolStringify = ({ + value + }) => value ? resolveSeq.boolOptions.trueStr : resolveSeq.boolOptions.falseStr; + var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value); + function intResolve(sign, src, radix) { + let str = src.replace(/_/g, ""); + if (resolveSeq.intOptions.asBigInt) { + switch (radix) { + case 2: + str = `0b${str}`; + break; + case 8: + str = `0o${str}`; + break; + case 16: + str = `0x${str}`; + break; + } + const n2 = BigInt(str); + return sign === "-" ? BigInt(-1) * n2 : n2; + } + const n = parseInt(str, radix); + return sign === "-" ? -1 * n : n; + } + function intStringify(node, radix, prefix) { + const { + value + } = node; + if (intIdentify(value)) { + const str = value.toString(radix); + return value < 0 ? "-" + prefix + str.substr(1) : prefix + str; + } + return resolveSeq.stringifyNumber(node); + } + var yaml11 = failsafe.concat([{ + identify: (value) => value == null, + createNode: (schema, value, ctx) => ctx.wrapScalars ? new resolveSeq.Scalar(null) : null, + default: true, + tag: "tag:yaml.org,2002:null", + test: /^(?:~|[Nn]ull|NULL)?$/, + resolve: () => null, + options: resolveSeq.nullOptions, + stringify: () => resolveSeq.nullOptions.nullStr + }, { + identify: (value) => typeof value === "boolean", + default: true, + tag: "tag:yaml.org,2002:bool", + test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/, + resolve: () => true, + options: resolveSeq.boolOptions, + stringify: boolStringify + }, { + identify: (value) => typeof value === "boolean", + default: true, + tag: "tag:yaml.org,2002:bool", + test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i, + resolve: () => false, + options: resolveSeq.boolOptions, + stringify: boolStringify + }, { + identify: intIdentify, + default: true, + tag: "tag:yaml.org,2002:int", + format: "BIN", + test: /^([-+]?)0b([0-1_]+)$/, + resolve: (str, sign, bin) => intResolve(sign, bin, 2), + stringify: (node) => intStringify(node, 2, "0b") + }, { + identify: intIdentify, + default: true, + tag: "tag:yaml.org,2002:int", + format: "OCT", + test: /^([-+]?)0([0-7_]+)$/, + resolve: (str, sign, oct) => intResolve(sign, oct, 8), + stringify: (node) => intStringify(node, 8, "0") + }, { + identify: intIdentify, + default: true, + tag: "tag:yaml.org,2002:int", + test: /^([-+]?)([0-9][0-9_]*)$/, + resolve: (str, sign, abs) => intResolve(sign, abs, 10), + stringify: resolveSeq.stringifyNumber + }, { + identify: intIdentify, + default: true, + tag: "tag:yaml.org,2002:int", + format: "HEX", + test: /^([-+]?)0x([0-9a-fA-F_]+)$/, + resolve: (str, sign, hex) => intResolve(sign, hex, 16), + stringify: (node) => intStringify(node, 16, "0x") + }, { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + test: /^(?:[-+]?\.inf|(\.nan))$/i, + resolve: (str, nan) => nan ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY, + stringify: resolveSeq.stringifyNumber + }, { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + format: "EXP", + test: /^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/, + resolve: (str) => parseFloat(str.replace(/_/g, "")), + stringify: ({ + value + }) => Number(value).toExponential() + }, { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + test: /^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/, + resolve(str, frac) { + const node = new resolveSeq.Scalar(parseFloat(str.replace(/_/g, ""))); + if (frac) { + const f = frac.replace(/_/g, ""); + if (f[f.length - 1] === "0") + node.minFractionDigits = f.length; + } + return node; + }, + stringify: resolveSeq.stringifyNumber + }], warnings.binary, warnings.omap, warnings.pairs, warnings.set, warnings.intTime, warnings.floatTime, warnings.timestamp); + var schemas = { + core, + failsafe, + json, + yaml11 + }; + var tags = { + binary: warnings.binary, + bool: boolObj, + float: floatObj, + floatExp: expObj, + floatNaN: nanObj, + floatTime: warnings.floatTime, + int: intObj, + intHex: hexObj, + intOct: octObj, + intTime: warnings.intTime, + map, + null: nullObj, + omap: warnings.omap, + pairs: warnings.pairs, + seq, + set: warnings.set, + timestamp: warnings.timestamp + }; + function findTagObject(value, tagName, tags2) { + if (tagName) { + const match = tags2.filter((t) => t.tag === tagName); + const tagObj = match.find((t) => !t.format) || match[0]; + if (!tagObj) + throw new Error(`Tag ${tagName} not found`); + return tagObj; + } + return tags2.find((t) => (t.identify && t.identify(value) || t.class && value instanceof t.class) && !t.format); + } + function createNode(value, tagName, ctx) { + if (value instanceof resolveSeq.Node) + return value; + const { + defaultPrefix, + onTagObj, + prevObjects, + schema, + wrapScalars + } = ctx; + if (tagName && tagName.startsWith("!!")) + tagName = defaultPrefix + tagName.slice(2); + let tagObj = findTagObject(value, tagName, schema.tags); + if (!tagObj) { + if (typeof value.toJSON === "function") + value = value.toJSON(); + if (!value || typeof value !== "object") + return wrapScalars ? new resolveSeq.Scalar(value) : value; + tagObj = value instanceof Map ? map : value[Symbol.iterator] ? seq : map; + } + if (onTagObj) { + onTagObj(tagObj); + delete ctx.onTagObj; + } + const obj = { + value: void 0, + node: void 0 + }; + if (value && typeof value === "object" && prevObjects) { + const prev = prevObjects.get(value); + if (prev) { + const alias = new resolveSeq.Alias(prev); + ctx.aliasNodes.push(alias); + return alias; + } + obj.value = value; + prevObjects.set(value, obj); + } + obj.node = tagObj.createNode ? tagObj.createNode(ctx.schema, value, ctx) : wrapScalars ? new resolveSeq.Scalar(value) : value; + if (tagName && obj.node instanceof resolveSeq.Node) + obj.node.tag = tagName; + return obj.node; + } + function getSchemaTags(schemas2, knownTags, customTags, schemaId) { + let tags2 = schemas2[schemaId.replace(/\W/g, "")]; + if (!tags2) { + const keys = Object.keys(schemas2).map((key) => JSON.stringify(key)).join(", "); + throw new Error(`Unknown schema "${schemaId}"; use one of ${keys}`); + } + if (Array.isArray(customTags)) { + for (const tag of customTags) + tags2 = tags2.concat(tag); + } else if (typeof customTags === "function") { + tags2 = customTags(tags2.slice()); + } + for (let i = 0; i < tags2.length; ++i) { + const tag = tags2[i]; + if (typeof tag === "string") { + const tagObj = knownTags[tag]; + if (!tagObj) { + const keys = Object.keys(knownTags).map((key) => JSON.stringify(key)).join(", "); + throw new Error(`Unknown custom tag "${tag}"; use one of ${keys}`); + } + tags2[i] = tagObj; + } + } + return tags2; + } + var sortMapEntriesByKey = (a, b) => a.key < b.key ? -1 : a.key > b.key ? 1 : 0; + var Schema = class { + constructor({ + customTags, + merge, + schema, + sortMapEntries, + tags: deprecatedCustomTags + }) { + this.merge = !!merge; + this.name = schema; + this.sortMapEntries = sortMapEntries === true ? sortMapEntriesByKey : sortMapEntries || null; + if (!customTags && deprecatedCustomTags) + warnings.warnOptionDeprecation("tags", "customTags"); + this.tags = getSchemaTags(schemas, tags, customTags || deprecatedCustomTags, schema); + } + createNode(value, wrapScalars, tagName, ctx) { + const baseCtx = { + defaultPrefix: Schema.defaultPrefix, + schema: this, + wrapScalars + }; + const createCtx = ctx ? Object.assign(ctx, baseCtx) : baseCtx; + return createNode(value, tagName, createCtx); + } + createPair(key, value, ctx) { + if (!ctx) + ctx = { + wrapScalars: true + }; + const k = this.createNode(key, ctx.wrapScalars, null, ctx); + const v = this.createNode(value, ctx.wrapScalars, null, ctx); + return new resolveSeq.Pair(k, v); + } + }; + PlainValue._defineProperty(Schema, "defaultPrefix", PlainValue.defaultTagPrefix); + PlainValue._defineProperty(Schema, "defaultTags", PlainValue.defaultTags); + exports2.Schema = Schema; + } +}); +var require_Document_9b4560a1 = __commonJS({ + "node_modules/yaml/dist/Document-9b4560a1.js"(exports2) { + "use strict"; + var PlainValue = require_PlainValue_ec8e588e(); + var resolveSeq = require_resolveSeq_d03cb037(); + var Schema = require_Schema_88e323a7(); + var defaultOptions = { + anchorPrefix: "a", + customTags: null, + indent: 2, + indentSeq: true, + keepCstNodes: false, + keepNodeTypes: true, + keepBlobsInJSON: true, + mapAsMap: false, + maxAliasCount: 100, + prettyErrors: false, + simpleKeys: false, + version: "1.2" + }; + var scalarOptions = { + get binary() { + return resolveSeq.binaryOptions; + }, + set binary(opt) { + Object.assign(resolveSeq.binaryOptions, opt); + }, + get bool() { + return resolveSeq.boolOptions; + }, + set bool(opt) { + Object.assign(resolveSeq.boolOptions, opt); + }, + get int() { + return resolveSeq.intOptions; + }, + set int(opt) { + Object.assign(resolveSeq.intOptions, opt); + }, + get null() { + return resolveSeq.nullOptions; + }, + set null(opt) { + Object.assign(resolveSeq.nullOptions, opt); + }, + get str() { + return resolveSeq.strOptions; + }, + set str(opt) { + Object.assign(resolveSeq.strOptions, opt); + } + }; + var documentOptions = { + "1.0": { + schema: "yaml-1.1", + merge: true, + tagPrefixes: [{ + handle: "!", + prefix: PlainValue.defaultTagPrefix + }, { + handle: "!!", + prefix: "tag:private.yaml.org,2002:" + }] + }, + 1.1: { + schema: "yaml-1.1", + merge: true, + tagPrefixes: [{ + handle: "!", + prefix: "!" + }, { + handle: "!!", + prefix: PlainValue.defaultTagPrefix + }] + }, + 1.2: { + schema: "core", + merge: false, + tagPrefixes: [{ + handle: "!", + prefix: "!" + }, { + handle: "!!", + prefix: PlainValue.defaultTagPrefix + }] + } + }; + function stringifyTag(doc, tag) { + if ((doc.version || doc.options.version) === "1.0") { + const priv = tag.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/); + if (priv) + return "!" + priv[1]; + const vocab = tag.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/); + return vocab ? `!${vocab[1]}/${vocab[2]}` : `!${tag.replace(/^tag:/, "")}`; + } + let p = doc.tagPrefixes.find((p2) => tag.indexOf(p2.prefix) === 0); + if (!p) { + const dtp = doc.getDefaults().tagPrefixes; + p = dtp && dtp.find((p2) => tag.indexOf(p2.prefix) === 0); + } + if (!p) + return tag[0] === "!" ? tag : `!<${tag}>`; + const suffix = tag.substr(p.prefix.length).replace(/[!,[\]{}]/g, (ch) => ({ + "!": "%21", + ",": "%2C", + "[": "%5B", + "]": "%5D", + "{": "%7B", + "}": "%7D" + })[ch]); + return p.handle + suffix; + } + function getTagObject(tags, item) { + if (item instanceof resolveSeq.Alias) + return resolveSeq.Alias; + if (item.tag) { + const match = tags.filter((t) => t.tag === item.tag); + if (match.length > 0) + return match.find((t) => t.format === item.format) || match[0]; + } + let tagObj, obj; + if (item instanceof resolveSeq.Scalar) { + obj = item.value; + const match = tags.filter((t) => t.identify && t.identify(obj) || t.class && obj instanceof t.class); + tagObj = match.find((t) => t.format === item.format) || match.find((t) => !t.format); + } else { + obj = item; + tagObj = tags.find((t) => t.nodeClass && obj instanceof t.nodeClass); + } + if (!tagObj) { + const name = obj && obj.constructor ? obj.constructor.name : typeof obj; + throw new Error(`Tag not resolved for ${name} value`); + } + return tagObj; + } + function stringifyProps(node, tagObj, { + anchors, + doc + }) { + const props = []; + const anchor = doc.anchors.getName(node); + if (anchor) { + anchors[anchor] = node; + props.push(`&${anchor}`); + } + if (node.tag) { + props.push(stringifyTag(doc, node.tag)); + } else if (!tagObj.default) { + props.push(stringifyTag(doc, tagObj.tag)); + } + return props.join(" "); + } + function stringify(item, ctx, onComment, onChompKeep) { + const { + anchors, + schema + } = ctx.doc; + let tagObj; + if (!(item instanceof resolveSeq.Node)) { + const createCtx = { + aliasNodes: [], + onTagObj: (o) => tagObj = o, + prevObjects: /* @__PURE__ */ new Map() + }; + item = schema.createNode(item, true, null, createCtx); + for (const alias of createCtx.aliasNodes) { + alias.source = alias.source.node; + let name = anchors.getName(alias.source); + if (!name) { + name = anchors.newName(); + anchors.map[name] = alias.source; + } + } + } + if (item instanceof resolveSeq.Pair) + return item.toString(ctx, onComment, onChompKeep); + if (!tagObj) + tagObj = getTagObject(schema.tags, item); + const props = stringifyProps(item, tagObj, ctx); + if (props.length > 0) + ctx.indentAtStart = (ctx.indentAtStart || 0) + props.length + 1; + const str = typeof tagObj.stringify === "function" ? tagObj.stringify(item, ctx, onComment, onChompKeep) : item instanceof resolveSeq.Scalar ? resolveSeq.stringifyString(item, ctx, onComment, onChompKeep) : item.toString(ctx, onComment, onChompKeep); + if (!props) + return str; + return item instanceof resolveSeq.Scalar || str[0] === "{" || str[0] === "[" ? `${props} ${str}` : `${props} +${ctx.indent}${str}`; + } + var Anchors = class { + static validAnchorNode(node) { + return node instanceof resolveSeq.Scalar || node instanceof resolveSeq.YAMLSeq || node instanceof resolveSeq.YAMLMap; + } + constructor(prefix) { + PlainValue._defineProperty(this, "map", /* @__PURE__ */ Object.create(null)); + this.prefix = prefix; + } + createAlias(node, name) { + this.setAnchor(node, name); + return new resolveSeq.Alias(node); + } + createMergePair(...sources) { + const merge = new resolveSeq.Merge(); + merge.value.items = sources.map((s) => { + if (s instanceof resolveSeq.Alias) { + if (s.source instanceof resolveSeq.YAMLMap) + return s; + } else if (s instanceof resolveSeq.YAMLMap) { + return this.createAlias(s); + } + throw new Error("Merge sources must be Map nodes or their Aliases"); + }); + return merge; + } + getName(node) { + const { + map + } = this; + return Object.keys(map).find((a) => map[a] === node); + } + getNames() { + return Object.keys(this.map); + } + getNode(name) { + return this.map[name]; + } + newName(prefix) { + if (!prefix) + prefix = this.prefix; + const names = Object.keys(this.map); + for (let i = 1; true; ++i) { + const name = `${prefix}${i}`; + if (!names.includes(name)) + return name; + } + } + resolveNodes() { + const { + map, + _cstAliases + } = this; + Object.keys(map).forEach((a) => { + map[a] = map[a].resolved; + }); + _cstAliases.forEach((a) => { + a.source = a.source.resolved; + }); + delete this._cstAliases; + } + setAnchor(node, name) { + if (node != null && !Anchors.validAnchorNode(node)) { + throw new Error("Anchors may only be set for Scalar, Seq and Map nodes"); + } + if (name && /[\x00-\x19\s,[\]{}]/.test(name)) { + throw new Error("Anchor names must not contain whitespace or control characters"); + } + const { + map + } = this; + const prev = node && Object.keys(map).find((a) => map[a] === node); + if (prev) { + if (!name) { + return prev; + } else if (prev !== name) { + delete map[prev]; + map[name] = node; + } + } else { + if (!name) { + if (!node) + return null; + name = this.newName(); + } + map[name] = node; + } + return name; + } + }; + var visit = (node, tags) => { + if (node && typeof node === "object") { + const { + tag + } = node; + if (node instanceof resolveSeq.Collection) { + if (tag) + tags[tag] = true; + node.items.forEach((n) => visit(n, tags)); + } else if (node instanceof resolveSeq.Pair) { + visit(node.key, tags); + visit(node.value, tags); + } else if (node instanceof resolveSeq.Scalar) { + if (tag) + tags[tag] = true; + } + } + return tags; + }; + var listTagNames = (node) => Object.keys(visit(node, {})); + function parseContents(doc, contents) { + const comments = { + before: [], + after: [] + }; + let body = void 0; + let spaceBefore = false; + for (const node of contents) { + if (node.valueRange) { + if (body !== void 0) { + const msg = "Document contains trailing content not separated by a ... or --- line"; + doc.errors.push(new PlainValue.YAMLSyntaxError(node, msg)); + break; + } + const res = resolveSeq.resolveNode(doc, node); + if (spaceBefore) { + res.spaceBefore = true; + spaceBefore = false; + } + body = res; + } else if (node.comment !== null) { + const cc = body === void 0 ? comments.before : comments.after; + cc.push(node.comment); + } else if (node.type === PlainValue.Type.BLANK_LINE) { + spaceBefore = true; + if (body === void 0 && comments.before.length > 0 && !doc.commentBefore) { + doc.commentBefore = comments.before.join("\n"); + comments.before = []; + } + } + } + doc.contents = body || null; + if (!body) { + doc.comment = comments.before.concat(comments.after).join("\n") || null; + } else { + const cb = comments.before.join("\n"); + if (cb) { + const cbNode = body instanceof resolveSeq.Collection && body.items[0] ? body.items[0] : body; + cbNode.commentBefore = cbNode.commentBefore ? `${cb} +${cbNode.commentBefore}` : cb; + } + doc.comment = comments.after.join("\n") || null; + } + } + function resolveTagDirective({ + tagPrefixes + }, directive) { + const [handle, prefix] = directive.parameters; + if (!handle || !prefix) { + const msg = "Insufficient parameters given for %TAG directive"; + throw new PlainValue.YAMLSemanticError(directive, msg); + } + if (tagPrefixes.some((p) => p.handle === handle)) { + const msg = "The %TAG directive must only be given at most once per handle in the same document."; + throw new PlainValue.YAMLSemanticError(directive, msg); + } + return { + handle, + prefix + }; + } + function resolveYamlDirective(doc, directive) { + let [version] = directive.parameters; + if (directive.name === "YAML:1.0") + version = "1.0"; + if (!version) { + const msg = "Insufficient parameters given for %YAML directive"; + throw new PlainValue.YAMLSemanticError(directive, msg); + } + if (!documentOptions[version]) { + const v0 = doc.version || doc.options.version; + const msg = `Document will be parsed as YAML ${v0} rather than YAML ${version}`; + doc.warnings.push(new PlainValue.YAMLWarning(directive, msg)); + } + return version; + } + function parseDirectives(doc, directives, prevDoc) { + const directiveComments = []; + let hasDirectives = false; + for (const directive of directives) { + const { + comment, + name + } = directive; + switch (name) { + case "TAG": + try { + doc.tagPrefixes.push(resolveTagDirective(doc, directive)); + } catch (error) { + doc.errors.push(error); + } + hasDirectives = true; + break; + case "YAML": + case "YAML:1.0": + if (doc.version) { + const msg = "The %YAML directive must only be given at most once per document."; + doc.errors.push(new PlainValue.YAMLSemanticError(directive, msg)); + } + try { + doc.version = resolveYamlDirective(doc, directive); + } catch (error) { + doc.errors.push(error); + } + hasDirectives = true; + break; + default: + if (name) { + const msg = `YAML only supports %TAG and %YAML directives, and not %${name}`; + doc.warnings.push(new PlainValue.YAMLWarning(directive, msg)); + } + } + if (comment) + directiveComments.push(comment); + } + if (prevDoc && !hasDirectives && "1.1" === (doc.version || prevDoc.version || doc.options.version)) { + const copyTagPrefix = ({ + handle, + prefix + }) => ({ + handle, + prefix + }); + doc.tagPrefixes = prevDoc.tagPrefixes.map(copyTagPrefix); + doc.version = prevDoc.version; + } + doc.commentBefore = directiveComments.join("\n") || null; + } + function assertCollection(contents) { + if (contents instanceof resolveSeq.Collection) + return true; + throw new Error("Expected a YAML collection as document contents"); + } + var Document = class { + constructor(options) { + this.anchors = new Anchors(options.anchorPrefix); + this.commentBefore = null; + this.comment = null; + this.contents = null; + this.directivesEndMarker = null; + this.errors = []; + this.options = options; + this.schema = null; + this.tagPrefixes = []; + this.version = null; + this.warnings = []; + } + add(value) { + assertCollection(this.contents); + return this.contents.add(value); + } + addIn(path, value) { + assertCollection(this.contents); + this.contents.addIn(path, value); + } + delete(key) { + assertCollection(this.contents); + return this.contents.delete(key); + } + deleteIn(path) { + if (resolveSeq.isEmptyPath(path)) { + if (this.contents == null) + return false; + this.contents = null; + return true; + } + assertCollection(this.contents); + return this.contents.deleteIn(path); + } + getDefaults() { + return Document.defaults[this.version] || Document.defaults[this.options.version] || {}; + } + get(key, keepScalar) { + return this.contents instanceof resolveSeq.Collection ? this.contents.get(key, keepScalar) : void 0; + } + getIn(path, keepScalar) { + if (resolveSeq.isEmptyPath(path)) + return !keepScalar && this.contents instanceof resolveSeq.Scalar ? this.contents.value : this.contents; + return this.contents instanceof resolveSeq.Collection ? this.contents.getIn(path, keepScalar) : void 0; + } + has(key) { + return this.contents instanceof resolveSeq.Collection ? this.contents.has(key) : false; + } + hasIn(path) { + if (resolveSeq.isEmptyPath(path)) + return this.contents !== void 0; + return this.contents instanceof resolveSeq.Collection ? this.contents.hasIn(path) : false; + } + set(key, value) { + assertCollection(this.contents); + this.contents.set(key, value); + } + setIn(path, value) { + if (resolveSeq.isEmptyPath(path)) + this.contents = value; + else { + assertCollection(this.contents); + this.contents.setIn(path, value); + } + } + setSchema(id, customTags) { + if (!id && !customTags && this.schema) + return; + if (typeof id === "number") + id = id.toFixed(1); + if (id === "1.0" || id === "1.1" || id === "1.2") { + if (this.version) + this.version = id; + else + this.options.version = id; + delete this.options.schema; + } else if (id && typeof id === "string") { + this.options.schema = id; + } + if (Array.isArray(customTags)) + this.options.customTags = customTags; + const opt = Object.assign({}, this.getDefaults(), this.options); + this.schema = new Schema.Schema(opt); + } + parse(node, prevDoc) { + if (this.options.keepCstNodes) + this.cstNode = node; + if (this.options.keepNodeTypes) + this.type = "DOCUMENT"; + const { + directives = [], + contents = [], + directivesEndMarker, + error, + valueRange + } = node; + if (error) { + if (!error.source) + error.source = this; + this.errors.push(error); + } + parseDirectives(this, directives, prevDoc); + if (directivesEndMarker) + this.directivesEndMarker = true; + this.range = valueRange ? [valueRange.start, valueRange.end] : null; + this.setSchema(); + this.anchors._cstAliases = []; + parseContents(this, contents); + this.anchors.resolveNodes(); + if (this.options.prettyErrors) { + for (const error2 of this.errors) + if (error2 instanceof PlainValue.YAMLError) + error2.makePretty(); + for (const warn of this.warnings) + if (warn instanceof PlainValue.YAMLError) + warn.makePretty(); + } + return this; + } + listNonDefaultTags() { + return listTagNames(this.contents).filter((t) => t.indexOf(Schema.Schema.defaultPrefix) !== 0); + } + setTagPrefix(handle, prefix) { + if (handle[0] !== "!" || handle[handle.length - 1] !== "!") + throw new Error("Handle must start and end with !"); + if (prefix) { + const prev = this.tagPrefixes.find((p) => p.handle === handle); + if (prev) + prev.prefix = prefix; + else + this.tagPrefixes.push({ + handle, + prefix + }); + } else { + this.tagPrefixes = this.tagPrefixes.filter((p) => p.handle !== handle); + } + } + toJSON(arg, onAnchor) { + const { + keepBlobsInJSON, + mapAsMap, + maxAliasCount + } = this.options; + const keep = keepBlobsInJSON && (typeof arg !== "string" || !(this.contents instanceof resolveSeq.Scalar)); + const ctx = { + doc: this, + indentStep: " ", + keep, + mapAsMap: keep && !!mapAsMap, + maxAliasCount, + stringify + }; + const anchorNames = Object.keys(this.anchors.map); + if (anchorNames.length > 0) + ctx.anchors = new Map(anchorNames.map((name) => [this.anchors.map[name], { + alias: [], + aliasCount: 0, + count: 1 + }])); + const res = resolveSeq.toJSON(this.contents, arg, ctx); + if (typeof onAnchor === "function" && ctx.anchors) + for (const { + count, + res: res2 + } of ctx.anchors.values()) + onAnchor(res2, count); + return res; + } + toString() { + if (this.errors.length > 0) + throw new Error("Document with errors cannot be stringified"); + const indentSize = this.options.indent; + if (!Number.isInteger(indentSize) || indentSize <= 0) { + const s = JSON.stringify(indentSize); + throw new Error(`"indent" option must be a positive integer, not ${s}`); + } + this.setSchema(); + const lines = []; + let hasDirectives = false; + if (this.version) { + let vd = "%YAML 1.2"; + if (this.schema.name === "yaml-1.1") { + if (this.version === "1.0") + vd = "%YAML:1.0"; + else if (this.version === "1.1") + vd = "%YAML 1.1"; + } + lines.push(vd); + hasDirectives = true; + } + const tagNames = this.listNonDefaultTags(); + this.tagPrefixes.forEach(({ + handle, + prefix + }) => { + if (tagNames.some((t) => t.indexOf(prefix) === 0)) { + lines.push(`%TAG ${handle} ${prefix}`); + hasDirectives = true; + } + }); + if (hasDirectives || this.directivesEndMarker) + lines.push("---"); + if (this.commentBefore) { + if (hasDirectives || !this.directivesEndMarker) + lines.unshift(""); + lines.unshift(this.commentBefore.replace(/^/gm, "#")); + } + const ctx = { + anchors: /* @__PURE__ */ Object.create(null), + doc: this, + indent: "", + indentStep: " ".repeat(indentSize), + stringify + }; + let chompKeep = false; + let contentComment = null; + if (this.contents) { + if (this.contents instanceof resolveSeq.Node) { + if (this.contents.spaceBefore && (hasDirectives || this.directivesEndMarker)) + lines.push(""); + if (this.contents.commentBefore) + lines.push(this.contents.commentBefore.replace(/^/gm, "#")); + ctx.forceBlockIndent = !!this.comment; + contentComment = this.contents.comment; + } + const onChompKeep = contentComment ? null : () => chompKeep = true; + const body = stringify(this.contents, ctx, () => contentComment = null, onChompKeep); + lines.push(resolveSeq.addComment(body, "", contentComment)); + } else if (this.contents !== void 0) { + lines.push(stringify(this.contents, ctx)); + } + if (this.comment) { + if ((!chompKeep || contentComment) && lines[lines.length - 1] !== "") + lines.push(""); + lines.push(this.comment.replace(/^/gm, "#")); + } + return lines.join("\n") + "\n"; + } + }; + PlainValue._defineProperty(Document, "defaults", documentOptions); + exports2.Document = Document; + exports2.defaultOptions = defaultOptions; + exports2.scalarOptions = scalarOptions; + } +}); +var require_dist = __commonJS({ + "node_modules/yaml/dist/index.js"(exports2) { + "use strict"; + var parseCst = require_parse_cst(); + var Document$1 = require_Document_9b4560a1(); + var Schema = require_Schema_88e323a7(); + var PlainValue = require_PlainValue_ec8e588e(); + var warnings = require_warnings_1000a372(); + require_resolveSeq_d03cb037(); + function createNode(value, wrapScalars = true, tag) { + if (tag === void 0 && typeof wrapScalars === "string") { + tag = wrapScalars; + wrapScalars = true; + } + const options = Object.assign({}, Document$1.Document.defaults[Document$1.defaultOptions.version], Document$1.defaultOptions); + const schema = new Schema.Schema(options); + return schema.createNode(value, wrapScalars, tag); + } + var Document = class extends Document$1.Document { + constructor(options) { + super(Object.assign({}, Document$1.defaultOptions, options)); + } + }; + function parseAllDocuments(src, options) { + const stream = []; + let prev; + for (const cstDoc of parseCst.parse(src)) { + const doc = new Document(options); + doc.parse(cstDoc, prev); + stream.push(doc); + prev = doc; + } + return stream; + } + function parseDocument(src, options) { + const cst = parseCst.parse(src); + const doc = new Document(options).parse(cst[0]); + if (cst.length > 1) { + const errMsg = "Source contains multiple documents; please use YAML.parseAllDocuments()"; + doc.errors.unshift(new PlainValue.YAMLSemanticError(cst[1], errMsg)); + } + return doc; + } + function parse(src, options) { + const doc = parseDocument(src, options); + doc.warnings.forEach((warning) => warnings.warn(warning)); + if (doc.errors.length > 0) + throw doc.errors[0]; + return doc.toJSON(); + } + function stringify(value, options) { + const doc = new Document(options); + doc.contents = value; + return String(doc); + } + var YAML = { + createNode, + defaultOptions: Document$1.defaultOptions, + Document, + parse, + parseAllDocuments, + parseCST: parseCst.parse, + parseDocument, + scalarOptions: Document$1.scalarOptions, + stringify + }; + exports2.YAML = YAML; + } +}); +var require_yaml = __commonJS({ + "node_modules/yaml/index.js"(exports2, module2) { + module2.exports = require_dist().YAML; + } +}); +var require_loaders = __commonJS({ + "node_modules/cosmiconfig/dist/loaders.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.loaders = void 0; + var importFresh; + var loadJs = function loadJs2(filepath) { + if (importFresh === void 0) { + importFresh = require_import_fresh(); + } + const result = importFresh(filepath); + return result; + }; + var parseJson; + var loadJson = function loadJson2(filepath, content) { + if (parseJson === void 0) { + parseJson = require_parse_json(); + } + try { + const result = parseJson(content); + return result; + } catch (error) { + error.message = `JSON Error in ${filepath}: +${error.message}`; + throw error; + } + }; + var yaml; + var loadYaml = function loadYaml2(filepath, content) { + if (yaml === void 0) { + yaml = require_yaml(); + } + try { + const result = yaml.parse(content, { + prettyErrors: true + }); + return result; + } catch (error) { + error.message = `YAML Error in ${filepath}: +${error.message}`; + throw error; + } + }; + var loaders = { + loadJs, + loadJson, + loadYaml + }; + exports2.loaders = loaders; + } +}); +var require_getPropertyByPath = __commonJS({ + "node_modules/cosmiconfig/dist/getPropertyByPath.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.getPropertyByPath = getPropertyByPath; + function getPropertyByPath(source, path) { + if (typeof path === "string" && Object.prototype.hasOwnProperty.call(source, path)) { + return source[path]; + } + const parsedPath = typeof path === "string" ? path.split(".") : path; + return parsedPath.reduce((previous, key) => { + if (previous === void 0) { + return previous; + } + return previous[key]; + }, source); + } + } +}); +var require_ExplorerBase = __commonJS({ + "node_modules/cosmiconfig/dist/ExplorerBase.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.getExtensionDescription = getExtensionDescription; + exports2.ExplorerBase = void 0; + var _path = _interopRequireDefault(require("path")); + var _loaders = require_loaders(); + var _getPropertyByPath = require_getPropertyByPath(); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + default: obj + }; + } + var ExplorerBase = class { + constructor(options) { + if (options.cache === true) { + this.loadCache = /* @__PURE__ */ new Map(); + this.searchCache = /* @__PURE__ */ new Map(); + } + this.config = options; + this.validateConfig(); + } + clearLoadCache() { + if (this.loadCache) { + this.loadCache.clear(); + } + } + clearSearchCache() { + if (this.searchCache) { + this.searchCache.clear(); + } + } + clearCaches() { + this.clearLoadCache(); + this.clearSearchCache(); + } + validateConfig() { + const config = this.config; + config.searchPlaces.forEach((place) => { + const loaderKey = _path.default.extname(place) || "noExt"; + const loader = config.loaders[loaderKey]; + if (!loader) { + throw new Error(`No loader specified for ${getExtensionDescription(place)}, so searchPlaces item "${place}" is invalid`); + } + if (typeof loader !== "function") { + throw new Error(`loader for ${getExtensionDescription(place)} is not a function (type provided: "${typeof loader}"), so searchPlaces item "${place}" is invalid`); + } + }); + } + shouldSearchStopWithResult(result) { + if (result === null) + return false; + if (result.isEmpty && this.config.ignoreEmptySearchPlaces) + return false; + return true; + } + nextDirectoryToSearch(currentDir, currentResult) { + if (this.shouldSearchStopWithResult(currentResult)) { + return null; + } + const nextDir = nextDirUp(currentDir); + if (nextDir === currentDir || currentDir === this.config.stopDir) { + return null; + } + return nextDir; + } + loadPackageProp(filepath, content) { + const parsedContent = _loaders.loaders.loadJson(filepath, content); + const packagePropValue = (0, _getPropertyByPath.getPropertyByPath)(parsedContent, this.config.packageProp); + return packagePropValue || null; + } + getLoaderEntryForFile(filepath) { + if (_path.default.basename(filepath) === "package.json") { + const loader2 = this.loadPackageProp.bind(this); + return loader2; + } + const loaderKey = _path.default.extname(filepath) || "noExt"; + const loader = this.config.loaders[loaderKey]; + if (!loader) { + throw new Error(`No loader specified for ${getExtensionDescription(filepath)}`); + } + return loader; + } + loadedContentToCosmiconfigResult(filepath, loadedContent) { + if (loadedContent === null) { + return null; + } + if (loadedContent === void 0) { + return { + filepath, + config: void 0, + isEmpty: true + }; + } + return { + config: loadedContent, + filepath + }; + } + validateFilePath(filepath) { + if (!filepath) { + throw new Error("load must pass a non-empty string"); + } + } + }; + exports2.ExplorerBase = ExplorerBase; + function nextDirUp(dir) { + return _path.default.dirname(dir); + } + function getExtensionDescription(filepath) { + const ext = _path.default.extname(filepath); + return ext ? `extension "${ext}"` : "files without extensions"; + } + } +}); +var require_readFile = __commonJS({ + "node_modules/cosmiconfig/dist/readFile.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.readFile = readFile; + exports2.readFileSync = readFileSync; + var _fs = _interopRequireDefault(require("fs")); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + default: obj + }; + } + async function fsReadFileAsync(pathname, encoding) { + return new Promise((resolve, reject) => { + _fs.default.readFile(pathname, encoding, (error, contents) => { + if (error) { + reject(error); + return; + } + resolve(contents); + }); + }); + } + async function readFile(filepath, options = {}) { + const throwNotFound = options.throwNotFound === true; + try { + const content = await fsReadFileAsync(filepath, "utf8"); + return content; + } catch (error) { + if (throwNotFound === false && (error.code === "ENOENT" || error.code === "EISDIR")) { + return null; + } + throw error; + } + } + function readFileSync(filepath, options = {}) { + const throwNotFound = options.throwNotFound === true; + try { + const content = _fs.default.readFileSync(filepath, "utf8"); + return content; + } catch (error) { + if (throwNotFound === false && (error.code === "ENOENT" || error.code === "EISDIR")) { + return null; + } + throw error; + } + } + } +}); +var require_cacheWrapper = __commonJS({ + "node_modules/cosmiconfig/dist/cacheWrapper.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.cacheWrapper = cacheWrapper; + exports2.cacheWrapperSync = cacheWrapperSync; + async function cacheWrapper(cache, key, fn) { + const cached = cache.get(key); + if (cached !== void 0) { + return cached; + } + const result = await fn(); + cache.set(key, result); + return result; + } + function cacheWrapperSync(cache, key, fn) { + const cached = cache.get(key); + if (cached !== void 0) { + return cached; + } + const result = fn(); + cache.set(key, result); + return result; + } + } +}); +var require_path_type = __commonJS({ + "node_modules/path-type/index.js"(exports2) { + "use strict"; + var { + promisify + } = require("util"); + var fs = require("fs"); + async function isType(fsStatType, statsMethodName, filePath) { + if (typeof filePath !== "string") { + throw new TypeError(`Expected a string, got ${typeof filePath}`); + } + try { + const stats = await promisify(fs[fsStatType])(filePath); + return stats[statsMethodName](); + } catch (error) { + if (error.code === "ENOENT") { + return false; + } + throw error; + } + } + function isTypeSync(fsStatType, statsMethodName, filePath) { + if (typeof filePath !== "string") { + throw new TypeError(`Expected a string, got ${typeof filePath}`); + } + try { + return fs[fsStatType](filePath)[statsMethodName](); + } catch (error) { + if (error.code === "ENOENT") { + return false; + } + throw error; + } + } + exports2.isFile = isType.bind(null, "stat", "isFile"); + exports2.isDirectory = isType.bind(null, "stat", "isDirectory"); + exports2.isSymlink = isType.bind(null, "lstat", "isSymbolicLink"); + exports2.isFileSync = isTypeSync.bind(null, "statSync", "isFile"); + exports2.isDirectorySync = isTypeSync.bind(null, "statSync", "isDirectory"); + exports2.isSymlinkSync = isTypeSync.bind(null, "lstatSync", "isSymbolicLink"); + } +}); +var require_getDirectory = __commonJS({ + "node_modules/cosmiconfig/dist/getDirectory.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.getDirectory = getDirectory; + exports2.getDirectorySync = getDirectorySync; + var _path = _interopRequireDefault(require("path")); + var _pathType = require_path_type(); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + default: obj + }; + } + async function getDirectory(filepath) { + const filePathIsDirectory = await (0, _pathType.isDirectory)(filepath); + if (filePathIsDirectory === true) { + return filepath; + } + const directory = _path.default.dirname(filepath); + return directory; + } + function getDirectorySync(filepath) { + const filePathIsDirectory = (0, _pathType.isDirectorySync)(filepath); + if (filePathIsDirectory === true) { + return filepath; + } + const directory = _path.default.dirname(filepath); + return directory; + } + } +}); +var require_Explorer = __commonJS({ + "node_modules/cosmiconfig/dist/Explorer.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.Explorer = void 0; + var _path = _interopRequireDefault(require("path")); + var _ExplorerBase = require_ExplorerBase(); + var _readFile = require_readFile(); + var _cacheWrapper = require_cacheWrapper(); + var _getDirectory = require_getDirectory(); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + default: obj + }; + } + var Explorer = class extends _ExplorerBase.ExplorerBase { + constructor(options) { + super(options); + } + async search(searchFrom = process.cwd()) { + const startDirectory = await (0, _getDirectory.getDirectory)(searchFrom); + const result = await this.searchFromDirectory(startDirectory); + return result; + } + async searchFromDirectory(dir) { + const absoluteDir = _path.default.resolve(process.cwd(), dir); + const run = async () => { + const result = await this.searchDirectory(absoluteDir); + const nextDir = this.nextDirectoryToSearch(absoluteDir, result); + if (nextDir) { + return this.searchFromDirectory(nextDir); + } + const transformResult = await this.config.transform(result); + return transformResult; + }; + if (this.searchCache) { + return (0, _cacheWrapper.cacheWrapper)(this.searchCache, absoluteDir, run); + } + return run(); + } + async searchDirectory(dir) { + for await (const place of this.config.searchPlaces) { + const placeResult = await this.loadSearchPlace(dir, place); + if (this.shouldSearchStopWithResult(placeResult) === true) { + return placeResult; + } + } + return null; + } + async loadSearchPlace(dir, place) { + const filepath = _path.default.join(dir, place); + const fileContents = await (0, _readFile.readFile)(filepath); + const result = await this.createCosmiconfigResult(filepath, fileContents); + return result; + } + async loadFileContent(filepath, content) { + if (content === null) { + return null; + } + if (content.trim() === "") { + return void 0; + } + const loader = this.getLoaderEntryForFile(filepath); + const loaderResult = await loader(filepath, content); + return loaderResult; + } + async createCosmiconfigResult(filepath, content) { + const fileContent = await this.loadFileContent(filepath, content); + const result = this.loadedContentToCosmiconfigResult(filepath, fileContent); + return result; + } + async load(filepath) { + this.validateFilePath(filepath); + const absoluteFilePath = _path.default.resolve(process.cwd(), filepath); + const runLoad = async () => { + const fileContents = await (0, _readFile.readFile)(absoluteFilePath, { + throwNotFound: true + }); + const result = await this.createCosmiconfigResult(absoluteFilePath, fileContents); + const transformResult = await this.config.transform(result); + return transformResult; + }; + if (this.loadCache) { + return (0, _cacheWrapper.cacheWrapper)(this.loadCache, absoluteFilePath, runLoad); + } + return runLoad(); + } + }; + exports2.Explorer = Explorer; + } +}); +var require_ExplorerSync = __commonJS({ + "node_modules/cosmiconfig/dist/ExplorerSync.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.ExplorerSync = void 0; + var _path = _interopRequireDefault(require("path")); + var _ExplorerBase = require_ExplorerBase(); + var _readFile = require_readFile(); + var _cacheWrapper = require_cacheWrapper(); + var _getDirectory = require_getDirectory(); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + default: obj + }; + } + var ExplorerSync = class extends _ExplorerBase.ExplorerBase { + constructor(options) { + super(options); + } + searchSync(searchFrom = process.cwd()) { + const startDirectory = (0, _getDirectory.getDirectorySync)(searchFrom); + const result = this.searchFromDirectorySync(startDirectory); + return result; + } + searchFromDirectorySync(dir) { + const absoluteDir = _path.default.resolve(process.cwd(), dir); + const run = () => { + const result = this.searchDirectorySync(absoluteDir); + const nextDir = this.nextDirectoryToSearch(absoluteDir, result); + if (nextDir) { + return this.searchFromDirectorySync(nextDir); + } + const transformResult = this.config.transform(result); + return transformResult; + }; + if (this.searchCache) { + return (0, _cacheWrapper.cacheWrapperSync)(this.searchCache, absoluteDir, run); + } + return run(); + } + searchDirectorySync(dir) { + for (const place of this.config.searchPlaces) { + const placeResult = this.loadSearchPlaceSync(dir, place); + if (this.shouldSearchStopWithResult(placeResult) === true) { + return placeResult; + } + } + return null; + } + loadSearchPlaceSync(dir, place) { + const filepath = _path.default.join(dir, place); + const content = (0, _readFile.readFileSync)(filepath); + const result = this.createCosmiconfigResultSync(filepath, content); + return result; + } + loadFileContentSync(filepath, content) { + if (content === null) { + return null; + } + if (content.trim() === "") { + return void 0; + } + const loader = this.getLoaderEntryForFile(filepath); + const loaderResult = loader(filepath, content); + return loaderResult; + } + createCosmiconfigResultSync(filepath, content) { + const fileContent = this.loadFileContentSync(filepath, content); + const result = this.loadedContentToCosmiconfigResult(filepath, fileContent); + return result; + } + loadSync(filepath) { + this.validateFilePath(filepath); + const absoluteFilePath = _path.default.resolve(process.cwd(), filepath); + const runLoadSync = () => { + const content = (0, _readFile.readFileSync)(absoluteFilePath, { + throwNotFound: true + }); + const cosmiconfigResult = this.createCosmiconfigResultSync(absoluteFilePath, content); + const transformResult = this.config.transform(cosmiconfigResult); + return transformResult; + }; + if (this.loadCache) { + return (0, _cacheWrapper.cacheWrapperSync)(this.loadCache, absoluteFilePath, runLoadSync); + } + return runLoadSync(); + } + }; + exports2.ExplorerSync = ExplorerSync; + } +}); +var require_types = __commonJS({ + "node_modules/cosmiconfig/dist/types.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + } +}); +var require_dist2 = __commonJS({ + "node_modules/cosmiconfig/dist/index.js"(exports2) { + "use strict"; + Object.defineProperty(exports2, "__esModule", { + value: true + }); + exports2.cosmiconfig = cosmiconfig; + exports2.cosmiconfigSync = cosmiconfigSync; + exports2.defaultLoaders = void 0; + var _os = _interopRequireDefault(require("os")); + var _Explorer = require_Explorer(); + var _ExplorerSync = require_ExplorerSync(); + var _loaders = require_loaders(); + var _types = require_types(); + function _interopRequireDefault(obj) { + return obj && obj.__esModule ? obj : { + default: obj + }; + } + function cosmiconfig(moduleName, options = {}) { + const normalizedOptions = normalizeOptions(moduleName, options); + const explorer = new _Explorer.Explorer(normalizedOptions); + return { + search: explorer.search.bind(explorer), + load: explorer.load.bind(explorer), + clearLoadCache: explorer.clearLoadCache.bind(explorer), + clearSearchCache: explorer.clearSearchCache.bind(explorer), + clearCaches: explorer.clearCaches.bind(explorer) + }; + } + function cosmiconfigSync(moduleName, options = {}) { + const normalizedOptions = normalizeOptions(moduleName, options); + const explorerSync = new _ExplorerSync.ExplorerSync(normalizedOptions); + return { + search: explorerSync.searchSync.bind(explorerSync), + load: explorerSync.loadSync.bind(explorerSync), + clearLoadCache: explorerSync.clearLoadCache.bind(explorerSync), + clearSearchCache: explorerSync.clearSearchCache.bind(explorerSync), + clearCaches: explorerSync.clearCaches.bind(explorerSync) + }; + } + var defaultLoaders = Object.freeze({ + ".cjs": _loaders.loaders.loadJs, + ".js": _loaders.loaders.loadJs, + ".json": _loaders.loaders.loadJson, + ".yaml": _loaders.loaders.loadYaml, + ".yml": _loaders.loaders.loadYaml, + noExt: _loaders.loaders.loadYaml + }); + exports2.defaultLoaders = defaultLoaders; + var identity = function identity2(x) { + return x; + }; + function normalizeOptions(moduleName, options) { + const defaults = { + packageProp: moduleName, + searchPlaces: ["package.json", `.${moduleName}rc`, `.${moduleName}rc.json`, `.${moduleName}rc.yaml`, `.${moduleName}rc.yml`, `.${moduleName}rc.js`, `.${moduleName}rc.cjs`, `${moduleName}.config.js`, `${moduleName}.config.cjs`], + ignoreEmptySearchPlaces: true, + stopDir: _os.default.homedir(), + cache: true, + transform: identity, + loaders: defaultLoaders + }; + const normalizedOptions = Object.assign(Object.assign(Object.assign({}, defaults), options), {}, { + loaders: Object.assign(Object.assign({}, defaults.loaders), options.loaders) + }); + return normalizedOptions; + } + } +}); +var require_find_parent_dir = __commonJS({ + "node_modules/find-parent-dir/index.js"(exports2, module2) { + "use strict"; + var path = require("path"); + var fs = require("fs"); + var exists = fs.exists || path.exists; + var existsSync = fs.existsSync || path.existsSync; + function splitPath(path2) { + var parts = path2.split(/(\/|\\)/); + if (!parts.length) + return parts; + return !parts[0].length ? parts.slice(1) : parts; + } + exports2 = module2.exports = function(currentFullPath, clue, cb) { + function testDir(parts) { + if (parts.length === 0) + return cb(null, null); + var p = parts.join(""); + exists(path.join(p, clue), function(itdoes) { + if (itdoes) + return cb(null, p); + testDir(parts.slice(0, -1)); + }); + } + testDir(splitPath(currentFullPath)); + }; + exports2.sync = function(currentFullPath, clue) { + function testDir(parts) { + if (parts.length === 0) + return null; + var p = parts.join(""); + var itdoes = existsSync(path.join(p, clue)); + return itdoes ? p : testDir(parts.slice(0, -1)); + } + return testDir(splitPath(currentFullPath)); + }; + } +}); +var require_get_stdin = __commonJS({ + "node_modules/get-stdin/index.js"(exports2, module2) { + "use strict"; + var { + stdin + } = process; + module2.exports = async () => { + let result = ""; + if (stdin.isTTY) { + return result; + } + stdin.setEncoding("utf8"); + for await (const chunk of stdin) { + result += chunk; + } + return result; + }; + module2.exports.buffer = async () => { + const result = []; + let length = 0; + if (stdin.isTTY) { + return Buffer.concat([]); + } + for await (const chunk of stdin) { + result.push(chunk); + length += chunk.length; + } + return Buffer.concat(result, length); + }; + } +}); +var require_vendors = __commonJS({ + "node_modules/ci-info/vendors.json"(exports2, module2) { + module2.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: "Expo Application Services", + constant: "EAS", + env: "EAS_BUILD" + }, { + 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 require_ci_info = __commonJS({ + "node_modules/ci-info/index.js"(exports2) { + "use strict"; + var vendors = require_vendors(); + var env = process.env; + Object.defineProperty(exports2, "_vendors", { + value: vendors.map(function(v) { + return v.constant; + }) + }); + exports2.name = null; + exports2.isPR = null; + vendors.forEach(function(vendor) { + const envs = Array.isArray(vendor.env) ? vendor.env : [vendor.env]; + const isCI = envs.every(function(obj) { + return checkEnv(obj); + }); + exports2[vendor.constant] = isCI; + if (isCI) { + exports2.name = vendor.name; + switch (typeof vendor.pr) { + case "string": + exports2.isPR = !!env[vendor.pr]; + break; + case "object": + if ("env" in vendor.pr) { + exports2.isPR = vendor.pr.env in env && env[vendor.pr.env] !== vendor.pr.ne; + } else if ("any" in vendor.pr) { + exports2.isPR = vendor.pr.any.some(function(key) { + return !!env[key]; + }); + } else { + exports2.isPR = checkEnv(vendor.pr); + } + break; + default: + exports2.isPR = null; + } + } + }); + exports2.isCI = !!(env.CI || env.CONTINUOUS_INTEGRATION || env.BUILD_NUMBER || env.RUN_ID || exports2.name || false); + function checkEnv(obj) { + if (typeof obj === "string") + return !!env[obj]; + return Object.keys(obj).every(function(k) { + return env[k] === obj[k]; + }); + } + } +}); +module.exports = { + cosmiconfig: require_dist2().cosmiconfig, + cosmiconfigSync: require_dist2().cosmiconfigSync, + findParentDir: require_find_parent_dir().sync, + getStdin: require_get_stdin(), + isCI: () => require_ci_info().isCI +}; diff --git a/node_modules/pretty-hrtime/.jshintignore b/node_modules/pretty-hrtime/.jshintignore new file mode 100644 index 0000000..cb28eb3 --- /dev/null +++ b/node_modules/pretty-hrtime/.jshintignore @@ -0,0 +1 @@ +node_modules/** diff --git a/node_modules/pretty-hrtime/.npmignore b/node_modules/pretty-hrtime/.npmignore new file mode 100644 index 0000000..094a5f3 --- /dev/null +++ b/node_modules/pretty-hrtime/.npmignore @@ -0,0 +1,10 @@ +.DS_Store +*.log +node_modules +build +*.node +components +*.orig +.idea +test +.travis.yml diff --git a/node_modules/pretty-hrtime/LICENSE b/node_modules/pretty-hrtime/LICENSE new file mode 100644 index 0000000..b7346ab --- /dev/null +++ b/node_modules/pretty-hrtime/LICENSE @@ -0,0 +1,20 @@ +Copyright (c) 2013 [Richardson & Sons, LLC](http://richardsonandsons.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. diff --git a/node_modules/pretty-hrtime/README.md b/node_modules/pretty-hrtime/README.md new file mode 100644 index 0000000..f4be28d --- /dev/null +++ b/node_modules/pretty-hrtime/README.md @@ -0,0 +1,57 @@ +[![Build Status](https://secure.travis-ci.org/robrich/pretty-hrtime.png?branch=master)](https://travis-ci.org/robrich/pretty-hrtime) +[![Dependency Status](https://david-dm.org/robrich/pretty-hrtime.png)](https://david-dm.org/robrich/pretty-hrtime) + +pretty-hrtime +============ + +[process.hrtime()](http://nodejs.org/api/process.html#process_process_hrtime) to words + +Usage +----- + +```javascript +var prettyHrtime = require('pretty-hrtime'); + +var start = process.hrtime(); +// do stuff +var end = process.hrtime(start); + +var words = prettyHrtime(end); +console.log(words); // '1.2 ms' + +words = prettyHrtime(end, {verbose:true}); +console.log(words); // '1 millisecond 209 microseconds' + +words = prettyHrtime(end, {precise:true}); +console.log(words); // '1.20958 ms' +``` + +Note: process.hrtime() has been available since 0.7.6. +See [http://nodejs.org/changelog.html](http://nodejs.org/changelog.html) +and [https://github.com/joyent/node/commit/f06abd](https://github.com/joyent/node/commit/f06abd). + +LICENSE +------- + +(MIT License) + +Copyright (c) 2013 [Richardson & Sons, LLC](http://richardsonandsons.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. diff --git a/node_modules/pretty-hrtime/index.js b/node_modules/pretty-hrtime/index.js new file mode 100644 index 0000000..bed3f89 --- /dev/null +++ b/node_modules/pretty-hrtime/index.js @@ -0,0 +1,80 @@ +/*jshint node:true */ + +"use strict"; + +var minimalDesc = ['h', 'min', 's', 'ms', 'μs', 'ns']; +var verboseDesc = ['hour', 'minute', 'second', 'millisecond', 'microsecond', 'nanosecond']; +var convert = [60*60, 60, 1, 1e6, 1e3, 1]; + +module.exports = function (source, opts) { + var verbose, precise, i, spot, sourceAtStep, valAtStep, decimals, strAtStep, results, totalSeconds; + + verbose = false; + precise = false; + if (opts) { + verbose = opts.verbose || false; + precise = opts.precise || false; + } + + if (!Array.isArray(source) || source.length !== 2) { + return ''; + } + if (typeof source[0] !== 'number' || typeof source[1] !== 'number') { + return ''; + } + + // normalize source array due to changes in node v5.4+ + if (source[1] < 0) { + totalSeconds = source[0] + source[1] / 1e9; + source[0] = parseInt(totalSeconds); + source[1] = parseFloat((totalSeconds % 1).toPrecision(9)) * 1e9; + } + + results = ''; + + // foreach unit + for (i = 0; i < 6; i++) { + spot = i < 3 ? 0 : 1; // grabbing first or second spot in source array + sourceAtStep = source[spot]; + if (i !== 3 && i !== 0) { + sourceAtStep = sourceAtStep % convert[i-1]; // trim off previous portions + } + if (i === 2) { + sourceAtStep += source[1]/1e9; // get partial seconds from other portion of the array + } + valAtStep = sourceAtStep / convert[i]; // val at this unit + if (valAtStep >= 1) { + if (verbose) { + valAtStep = Math.floor(valAtStep); // deal in whole units, subsequent laps will get the decimal portion + } + if (!precise) { + // don't fling too many decimals + decimals = valAtStep >= 10 ? 0 : 2; + strAtStep = valAtStep.toFixed(decimals); + } else { + strAtStep = valAtStep.toString(); + } + if (strAtStep.indexOf('.') > -1 && strAtStep[strAtStep.length-1] === '0') { + strAtStep = strAtStep.replace(/\.?0+$/,''); // remove trailing zeros + } + if (results) { + results += ' '; // append space if we have a previous value + } + results += strAtStep; // append the value + // append units + if (verbose) { + results += ' '+verboseDesc[i]; + if (strAtStep !== '1') { + results += 's'; + } + } else { + results += ' '+minimalDesc[i]; + } + if (!verbose) { + break; // verbose gets as many groups as necessary, the rest get only one + } + } + } + + return results; +}; diff --git a/node_modules/pretty-hrtime/package.json b/node_modules/pretty-hrtime/package.json new file mode 100644 index 0000000..e4a7985 --- /dev/null +++ b/node_modules/pretty-hrtime/package.json @@ -0,0 +1,25 @@ +{ + "name": "pretty-hrtime", + "description": "process.hrtime() to words", + "version": "1.0.3", + "homepage": "https://github.com/robrich/pretty-hrtime", + "repository": "git://github.com/robrich/pretty-hrtime.git", + "author": "Rob Richardson (http://robrich.org/)", + "main": "./index.js", + "keywords": [ + "hrtime", + "benchmark" + ], + "devDependencies": { + "jshint": "^2.9.4", + "mocha": "^3.1.2", + "should": "^11.1.1" + }, + "scripts": { + "test": "mocha && jshint ." + }, + "engines": { + "node": ">= 0.8" + }, + "license": "MIT" +} diff --git a/node_modules/purgecss/README.md b/node_modules/purgecss/README.md new file mode 100644 index 0000000..d127fc4 --- /dev/null +++ b/node_modules/purgecss/README.md @@ -0,0 +1,85 @@ +# PurgeCSS + +[![npm](https://img.shields.io/npm/v/purgecss?style=for-the-badge)](https://www.npmjs.com/package/purgecss) +![npm](https://img.shields.io/npm/dm/purgecss?style=for-the-badge) +![GitHub](https://img.shields.io/github/license/FullHuman/purgecss?style=for-the-badge) +![Dependabot](https://img.shields.io/badge/dependabot-enabled-%23024ea4?style=for-the-badge) +[![Coverage Status](https://img.shields.io/coveralls/github/FullHuman/purgecss/main?style=for-the-badge)](https://coveralls.io/github/FullHuman/purgecss?branch=main) + +

+ PurgeCSS logo +

+ +## What is PurgeCSS? + +When you are building a website, chances are that you are using a css framework like Bootstrap, Materializecss, Foundation, etc... But you will only use a small set of the framework and a lot of unused css styles will be included. + +This is where PurgeCSS comes into play. PurgeCSS analyzes your content and your css files. Then it matches the selectors used in your files with the one in your content files. It removes unused selectors from your css, resulting in smaller css files. + +## Sponsors 🥰 + +[](https://tailwindcss.com) +[](https://vertistudio.com/) + +## Documentation + +You can find the PurgeCSS documentation on [this website](https://purgecss.com). + +### Table of Contents + +#### PurgeCSS + +- [Configuration](https://purgecss.com/configuration.html) +- [Command Line Interface](https://purgecss.com/CLI.html) +- [Programmatic API](https://purgecss.com/api.html) +- [Safelisting](https://purgecss.com/safelisting.html) +- [Extractors](https://purgecss.com/extractors.html) +- [Comparison](https://purgecss.com/comparison.html) + +#### Plugins + +- [PostCSS](https://purgecss.com/plugins/postcss.html) +- [Webpack](https://purgecss.com/plugins/webpack.html) +- [Gulp](https://purgecss.com/plugins/gulp.html) +- [Grunt](https://purgecss.com/plugins/grunt.html) +- [Gatsby](https://purgecss.com/plugins/gatsby.html) + +#### Guides + +- [Vue.js](https://purgecss.com/guides/vue.html) +- [Nuxt.js](https://purgecss.com/guides/nuxt.html) +- [React.js](https://purgecss.com/guides/react.html) +- [Next.js](https://purgecss.com/guides/next.html) +- [Razzle](https://purgecss.com/guides/razzle.html) + +## Getting Started + +#### Installation + +``` +npm i --save-dev purgecss +``` + +## Usage + +```js +import PurgeCSS from 'purgecss' +const purgeCSSResults = await new PurgeCSS().purge({ + content: ['**/*.html'], + css: ['**/*.css'] +}) +``` + +## Contributing + +Please read [CONTRIBUTING.md](./../../CONTRIBUTING.md) for details on our code of +conduct, and the process for submitting pull requests to us. + +## Versioning + +PurgeCSS use [SemVer](http://semver.org/) for versioning. + +## License + +This project is licensed under the MIT License - see the [LICENSE](./../../LICENSE) file +for details. diff --git a/node_modules/purgecss/bin/purgecss.js b/node_modules/purgecss/bin/purgecss.js new file mode 100755 index 0000000..5b6febe --- /dev/null +++ b/node_modules/purgecss/bin/purgecss.js @@ -0,0 +1,2 @@ +#!/usr/bin/env node +"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("commander"),t=require("fs"),s=require("glob"),r=require("path"),o=require("postcss"),i=require("postcss-selector-parser"),n=require("util");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function c(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(s){if("default"!==s){var r=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,r.get?r:{enumerable:!0,get:function(){return e[s]}})}})),t.default=e,Object.freeze(t)}var u=c(t),l=c(s),d=c(r),f=c(o),h=a(i),p="4.1.3",m="Remove unused css selectors";function g(e,t){t&&t.forEach(e.add,e)}class v{constructor(e){this.undetermined=new Set,this.attrNames=new Set,this.attrValues=new Set,this.classes=new Set,this.ids=new Set,this.tags=new Set,this.merge(e)}merge(e){return Array.isArray(e)?g(this.undetermined,e):e instanceof v?(g(this.undetermined,e.undetermined),g(this.attrNames,e.attrNames),g(this.attrValues,e.attrValues),g(this.classes,e.classes),g(this.ids,e.ids),g(this.tags,e.tags)):(g(this.undetermined,e.undetermined),e.attributes&&(g(this.attrNames,e.attributes.names),g(this.attrValues,e.attributes.values)),g(this.classes,e.classes),g(this.ids,e.ids),g(this.tags,e.tags)),this}hasAttrName(e){return this.attrNames.has(e)||this.undetermined.has(e)}someAttrValue(e){for(const t of this.attrValues)if(e(t))return!0;for(const t of this.undetermined)if(e(t))return!0;return!1}hasAttrPrefix(e){return this.someAttrValue((t=>t.startsWith(e)))}hasAttrSuffix(e){return this.someAttrValue((t=>t.endsWith(e)))}hasAttrSubstr(e){return e.trim().split(" ").every((e=>this.someAttrValue((t=>t.includes(e)))))}hasAttrValue(e){return this.attrValues.has(e)||this.undetermined.has(e)}hasClass(e){return this.classes.has(e)||this.undetermined.has(e)}hasId(e){return this.ids.has(e)||this.undetermined.has(e)}hasTag(e){return this.tags.has(e)||this.undetermined.has(e)}}const y=["*",":root",":after",":before"],b={css:[],content:[],defaultExtractor:e=>e.match(/[A-Za-z0-9_-]+/g)||[],extractors:[],fontFace:!1,keyframes:!1,rejected:!1,rejectedCss:!1,sourceMap:!1,stdin:!1,stdout:!1,variables:!1,safelist:{standard:[],deep:[],greedy:[],variables:[],keyframes:[]},blocklist:[],skippedContentGlobs:[],dynamicAttributes:[]};function S(e,t){const s=[];return e.replace(t,(function(){const t=arguments,r=Array.prototype.slice.call(t,0,-2);return r.input=t[t.length-1],r.index=t[t.length-2],s.push(r),e})),s}class w{constructor(e){this.nodes=[],this.isUsed=!1,this.value=e}}class k{constructor(){this.nodes=new Map,this.usedVariables=new Set,this.safelist=[]}addVariable(e){const{prop:t}=e;if(this.nodes.has(t)){const s=new w(e),r=this.nodes.get(t)||[];this.nodes.set(t,[...r,s])}else{const s=new w(e);this.nodes.set(t,[s])}}addVariableUsage(e,t){const{prop:s}=e,r=this.nodes.get(s);for(const e of t){const t=e[1];if(this.nodes.has(t)){const e=this.nodes.get(t);null==r||r.forEach((t=>{null==e||e.forEach((e=>t.nodes.push(e)))}))}}}addVariableUsageInProperties(e){for(const t of e){const e=t[1];this.usedVariables.add(e)}}setAsUsed(e){const t=this.nodes.get(e);if(t){const e=[...t];for(;0!==e.length;){const t=e.pop();t&&!t.isUsed&&(t.isUsed=!0,e.push(...t.nodes))}}}removeUnused(){for(const e of this.usedVariables){const t=this.nodes.get(e);if(t)for(const e of t){S(e.value.value,/var\((.+?)[,)]/g).forEach((e=>{this.usedVariables.has(e[1])||this.usedVariables.add(e[1])}))}}for(const e of this.usedVariables)this.setAsUsed(e);for(const[e,t]of this.nodes)for(const s of t)s.isUsed||this.isVariablesSafelisted(e)||s.value.remove()}isVariablesSafelisted(e){return this.safelist.some((t=>"string"==typeof t?t===e:t.test(e)))}}const F={access:n.promisify(u.access),readFile:n.promisify(u.readFile)};function x(e=[]){return Array.isArray(e)?{...b.safelist,standard:e}:{...b.safelist,...e}}async function A(e="purgecss.config.js"){let t;try{const s=d.resolve(process.cwd(),e);t=await function(e){return Promise.resolve().then((function(){return c(require(e))}))}(s)}catch(e){if(e instanceof Error)throw new Error(`Error loading the config file ${e.message}`);throw new Error}return{...b,...t,safelist:x(t.safelist)}}async function V(e,t){return new v(await t(e))}function j(e,t){switch(t){case"next":return e.text.includes("purgecss ignore");case"start":return e.text.includes("purgecss start ignore");case"end":return e.text.includes("purgecss end ignore")}}function C(e){return e.replace(/(^["'])|(["']$)/g,"")}function U(e,t){if(!t.hasAttrName(e.attribute))return!1;if(void 0===e.value)return!0;switch(e.operator){case"$=":return t.hasAttrSuffix(e.value);case"~=":case"*=":return t.hasAttrSubstr(e.value);case"=":return t.hasAttrValue(e.value);case"|=":case"^=":return t.hasAttrPrefix(e.value);default:return!0}}function E(e,t){return t.hasId(e.value)}function R(e,t){return t.hasTag(e.value)}function N(e){return"atrule"===(null==e?void 0:e.type)}function O(e){return"rule"===(null==e?void 0:e.type)}class P{constructor(){this.ignore=!1,this.atRules={fontFace:[],keyframes:[]},this.usedAnimations=new Set,this.usedFontFaces=new Set,this.selectorsRemoved=new Set,this.removedNodes=[],this.variablesStructure=new k,this.options=b}collectDeclarationsData(e){const{prop:t,value:s}=e;if(this.options.variables){const r=S(s,/var\((.+?)[,)]/g);t.startsWith("--")?(this.variablesStructure.addVariable(e),r.length>0&&this.variablesStructure.addVariableUsage(e,r)):r.length>0&&this.variablesStructure.addVariableUsageInProperties(r)}if(!this.options.keyframes||"animation"!==t&&"animation-name"!==t)if(this.options.fontFace){if("font-family"===t)for(const e of s.split(",")){const t=C(e.trim());this.usedFontFaces.add(t)}}else;else for(const e of s.split(/[\s,]+/))this.usedAnimations.add(e)}getFileExtractor(e,t){const s=t.find((t=>t.extensions.find((t=>e.endsWith(t)))));return void 0===s?this.options.defaultExtractor:s.extractor}async extractSelectorsFromFiles(e,t){const s=new v([]);for(const r of e){let e=[];try{await F.access(r,u.constants.F_OK),e.push(r)}catch(t){e=l.sync(r,{nodir:!0,ignore:this.options.skippedContentGlobs})}for(const r of e){const e=await F.readFile(r,"utf-8"),o=this.getFileExtractor(r,t),i=await V(e,o);s.merge(i)}}return s}async extractSelectorsFromString(e,t){const s=new v([]);for(const{raw:r,extension:o}of e){const e=this.getFileExtractor(`.${o}`,t),i=await V(r,e);s.merge(i)}return s}evaluateAtRule(e){if(this.options.keyframes&&e.name.endsWith("keyframes"))this.atRules.keyframes.push(e);else if(this.options.fontFace&&"font-face"===e.name&&e.nodes)for(const t of e.nodes)"decl"===t.type&&"font-family"===t.prop&&this.atRules.fontFace.push({name:C(t.value),node:e})}evaluateRule(e,t){if(this.ignore)return;const s=e.prev();if(function(e){return"comment"===(null==e?void 0:e.type)}(s)&&j(s,"next"))return void s.remove();if(e.parent&&N(e.parent)&&e.parent.name.endsWith("keyframes"))return;if(!O(e))return;if(function(e){let t=!1;return e.walkComments((e=>{e&&"comment"===e.type&&e.text.includes("purgecss ignore current")&&(t=!0,e.remove())})),t}(e))return;let r=!0;const o=[];if(e.selector=h.default((e=>{e.walk((e=>{"selector"===e.type&&(r=this.shouldKeepSelector(e,t),r||(this.options.rejected&&this.selectorsRemoved.add(e.toString()),this.options.rejectedCss&&o.push(e.toString()),e.remove()))}))})).processSync(e.selector),r&&void 0!==e.nodes)for(const t of e.nodes)"decl"===t.type&&this.collectDeclarationsData(t);const i=e.parent;if(e.selector||e.remove(),function(e){return!!(O(e)&&!e.selector||(null==e?void 0:e.nodes)&&!e.nodes.length||N(e)&&(!e.nodes&&!e.params||!e.params&&e.nodes&&!e.nodes.length))}(i)&&(null==i||i.remove()),this.options.rejectedCss&&o.length>0){const t=e.clone(),s=null==i?void 0:i.clone().removeAll().append(t);t.selectors=o;const r=s||t;this.removedNodes.push(r)}}async getPurgedCSS(e,t){var s;const r=[],o=[];for(const t of e)"string"==typeof t?o.push(...l.sync(t,{nodir:!0,ignore:this.options.skippedContentGlobs})):o.push(t);for(const e of o){const o="string"==typeof e?this.options.stdin?e:await F.readFile(e,"utf-8"):e.raw,i="string"==typeof e&&!this.options.stdin,n=f.parse(o,{from:i?e:void 0});this.walkThroughCSS(n,t),this.options.fontFace&&this.removeUnusedFontFaces(),this.options.keyframes&&this.removeUnusedKeyframes(),this.options.variables&&this.removeUnusedCSSVariables();const a=n.toResult({map:this.options.sourceMap,to:"object"==typeof this.options.sourceMap?this.options.sourceMap.to:void 0}),c={css:a.toString(),file:"string"==typeof e?e:e.name};this.options.sourceMap&&(c.sourceMap=null===(s=a.map)||void 0===s?void 0:s.toString()),this.options.rejected&&(c.rejected=Array.from(this.selectorsRemoved),this.selectorsRemoved.clear()),this.options.rejectedCss&&(c.rejectedCss=f.root({nodes:this.removedNodes}).toString()),r.push(c)}return r}isKeyframesSafelisted(e){return this.options.safelist.keyframes.some((t=>"string"==typeof t?t===e:t.test(e)))}isSelectorBlocklisted(e){return this.options.blocklist.some((t=>"string"==typeof t?t===e:t.test(e)))}isSelectorSafelisted(e){const t=this.options.safelist.standard.some((t=>"string"==typeof t?t===e:t.test(e))),s=/^::.*/.test(e);return y.includes(e)||s||t}isSelectorSafelistedDeep(e){return this.options.safelist.deep.some((t=>t.test(e)))}isSelectorSafelistedGreedy(e){return this.options.safelist.greedy.some((t=>t.test(e)))}async purge(e){this.options="object"!=typeof e?await A(e):{...b,...e,safelist:x(e.safelist)};const{content:t,css:s,extractors:r,safelist:o}=this.options;this.options.variables&&(this.variablesStructure.safelist=o.variables||[]);const i=t.filter((e=>"string"==typeof e)),n=t.filter((e=>"object"==typeof e)),a=await this.extractSelectorsFromFiles(i,r),c=await this.extractSelectorsFromString(n,r);return this.getPurgedCSS(s,function(...e){const t=new v([]);return e.forEach(t.merge,t),t}(a,c))}removeUnusedCSSVariables(){this.variablesStructure.removeUnused()}removeUnusedFontFaces(){for(const{name:e,node:t}of this.atRules.fontFace)this.usedFontFaces.has(e)||t.remove()}removeUnusedKeyframes(){for(const e of this.atRules.keyframes)this.usedAnimations.has(e.params)||this.isKeyframesSafelisted(e.params)||e.remove()}getSelectorValue(e){return"attribute"===e.type&&e.attribute||e.value}shouldKeepSelector(e,t){if(function(e){return e.parent&&"pseudo"===e.parent.type&&e.parent.value.startsWith(":")||!1}(e))return!0;if(this.options.safelist.greedy.length>0){if(e.nodes.map(this.getSelectorValue).some((e=>e&&this.isSelectorSafelistedGreedy(e))))return!0}let s=!1;for(const o of e.nodes){const e=this.getSelectorValue(o);if(e&&this.isSelectorSafelistedDeep(e))return!0;if(e&&(y.includes(e)||this.isSelectorSafelisted(e)))s=!0;else{if(e&&this.isSelectorBlocklisted(e))return!1;switch(o.type){case"attribute":s=!![...this.options.dynamicAttributes,"value","checked","selected","open"].includes(o.attribute)||U(o,t);break;case"class":r=o,s=t.hasClass(r.value);break;case"id":s=E(o,t);break;case"tag":s=R(o,t);break;default:continue}if(!s)return!1}}var r;return s}walkThroughCSS(e,t){e.walk((e=>"rule"===e.type?this.evaluateRule(e,t):"atrule"===e.type?this.evaluateAtRule(e):void("comment"===e.type&&(j(e,"start")?(this.ignore=!0,e.remove()):j(e,"end")&&(this.ignore=!1,e.remove())))))}}async function M(e,t){try{await u.promises.writeFile(e,t)}catch(e){e instanceof Error&&console.error(e.message)}}async function q(e){const t=[];for await(const s of e)t.push(s);return Buffer.concat(t).toString("utf8")}function G(e){return e.description(m).version(p).usage("--css --content [options]"),e.option("-con, --content ","glob of content files").option("-css, --css ","glob of css files").option("-c, --config ","path to the configuration file").option("-o, --output ","file path directory to write purged css files to").option("-font, --font-face","option to remove unused font-faces").option("-keyframes, --keyframes","option to remove unused keyframes").option("-v, --variables","option to remove unused variables").option("-rejected, --rejected","option to output rejected selectors").option("-rejected-css, --rejected-css","option to output rejected css").option("-s, --safelist ","list of classes that should not be removed").option("-b, --blocklist ","list of selectors that should be removed").option("-k, --skippedContentGlobs ","list of glob patterns for folders/files that should not be scanned"),e}async function W(e){const{config:t,css:s,content:r,output:o,fontFace:i,keyframes:n,variables:a,rejected:c,rejectedCss:u,safelist:l,blocklist:d,skippedContentGlobs:f}=e.opts();t||r&&s||e.help();let h=b;return t&&(h=await A(t)),r&&(1===r.length&&"-"===r[0]?h.content=[{raw:await q(process.stdin),extension:""}]:h.content=r),s&&(1===s.length&&"-"===s[0]?h.css=[{raw:await q(process.stdin)}]:h.css=s),i&&(h.fontFace=i),n&&(h.keyframes=n),c&&(h.rejected=c),u&&(h.rejectedCss=u),a&&(h.variables=a),l&&(h.safelist=x(l)),d&&(h.blocklist=d),f&&(h.skippedContentGlobs=f),o&&(h.output=o),h}async function D(e){var t;const s=await W(e),r=await(new P).purge(s);if(s.output){if(1===r.length&&s.output.endsWith(".css"))return void await M(s.output,r[0].css);for(const e of r){const r=null===(t=null==e?void 0:e.file)||void 0===t?void 0:t.split("/").pop();await M(`${s.output}/${r}`,e.css)}}else console.log(JSON.stringify(r))}async function K(){try{const t=G(new e.Command);t.parse(process.argv),D(t)}catch(e){e instanceof Error&&console.error(e.message),process.exit(1)}}exports.getOptions=W,exports.main=K,exports.parseCommandOptions=G,exports.run=D,K(); diff --git a/node_modules/purgecss/lib/purgecss.d.ts b/node_modules/purgecss/lib/purgecss.d.ts new file mode 100644 index 0000000..f7173ba --- /dev/null +++ b/node_modules/purgecss/lib/purgecss.d.ts @@ -0,0 +1,509 @@ +/** + * Core package of PurgeCSS + * + * Contains the core methods to analyze the files, remove unused CSS. + * + * @packageDocumentation + */ + +import * as postcss from 'postcss'; + +/* Excluded from this release type: AtRules */ + +/** + * @public + */ +export declare type ComplexSafelist = { + standard?: StringRegExpArray; + /** + * You can safelist selectors and their children based on a regular + * expression with `safelist.deep` + * + * @example + * + * ```ts + * const purgecss = await new PurgeCSS().purge({ + * content: [], + * css: [], + * safelist: { + * deep: [/red$/] + * } + * }) + * ``` + * + * In this example, selectors such as `.bg-red .child-of-bg` will be left + * in the final CSS, even if `child-of-bg` is not found. + * + */ + deep?: RegExp[]; + greedy?: RegExp[]; + variables?: StringRegExpArray; + keyframes?: StringRegExpArray; +}; + +/** + * @public + */ +export declare const defaultOptions: Options; + +/** + * @public + */ +export declare type ExtractorFunction = (content: T) => ExtractorResult; + +/** + * @public + */ +export declare type ExtractorResult = ExtractorResultDetailed | string[]; + +/** + * @public + */ +export declare interface ExtractorResultDetailed { + attributes: { + names: string[]; + values: string[]; + }; + classes: string[]; + ids: string[]; + tags: string[]; + undetermined: string[]; +} + +/** + * @public + */ +export declare class ExtractorResultSets { + private undetermined; + private attrNames; + private attrValues; + private classes; + private ids; + private tags; + constructor(er: ExtractorResult); + merge(that: ExtractorResult | ExtractorResultSets): this; + hasAttrName(name: string): boolean; + private someAttrValue; + hasAttrPrefix(prefix: string): boolean; + hasAttrSuffix(suffix: string): boolean; + hasAttrSubstr(substr: string): boolean; + hasAttrValue(value: string): boolean; + hasClass(name: string): boolean; + hasId(id: string): boolean; + hasTag(tag: string): boolean; +} + +/** + * @public + */ +export declare interface Extractors { + extensions: string[]; + extractor: ExtractorFunction; +} + +/* Excluded from this release type: IgnoreType */ + +/** + * Merge two extractor selectors + * + * @param extractorSelectorsA - extractor selectors A + * @param extractorSelectorsB - extractor selectors B + * @returns the merged extractor result sets + * + * @public + */ +export declare function mergeExtractorSelectors(...extractors: (ExtractorResultDetailed | ExtractorResultSets)[]): ExtractorResultSets; + +/** + * Options used by PurgeCSS to remove unused CSS + * Those options are used internally + * @see {@link UserDefinedOptions} for the options defined by the user + * + * @public + */ +export declare interface Options { + /** + * You can specify content that should be analyzed by PurgeCSS with an + * array of filenames or globs. The files can be HTML, Pug, Blade, etc. + * + * @example + * + * ```ts + * await new PurgeCSS().purge({ + * content: ['index.html', '*.js', '*.html', '*.vue'], + * css: ['css/app.css'] + * }) + * ``` + * + * @example + * PurgeCSS also works with raw content. To do this, you need to pass an + * object with the `raw` property instead of a filename. To work properly + * with custom extractors you need to pass the `extension` property along + * with the raw content. + * + * ```ts + * await new PurgeCSS().purge({ + * content: [ + * { + * raw: '
', + * extension: 'html' + * }, + * '*.js', + * '*.html', + * '*.vue' + * ], + * css: [ + * { + * raw: 'body { margin: 0 }' + * }, + * 'css/app.css' + * ] + * }) + * ``` + */ + content: Array; + /** + * Similar to content, you can specify css that should be processed by + * PurgeCSS with an array of filenames or globs + */ + css: Array; + defaultExtractor: ExtractorFunction; + extractors: Array; + /** + * If there are any unused \@font-face rules in your css, you can remove + * them by setting the `fontFace` option to `true`. + * + * @defaultValue `false` + * + * @example + * ```ts + * await new PurgeCSS().purge({ + * content: ['index.html', '*.js', '*.html', '*.vue'], + * css: ['css/app.css'], + * fontFace: true + * }) + * ``` + */ + fontFace: boolean; + keyframes: boolean; + output?: string; + rejected: boolean; + rejectedCss: boolean; + /** {@inheritDoc postcss#SourceMapOptions} */ + sourceMap: boolean | (postcss.SourceMapOptions & { + to?: string; + }); + stdin: boolean; + stdout: boolean; + variables: boolean; + /** + * You can indicate which selectors are safe to leave in the final CSS. + * This can be accomplished with the option safelist. + */ + safelist: Required; + /** + * Blocklist will block the CSS selectors from appearing in the final + * output CSS. The selectors will be removed even when they are seen + * as used by PurgeCSS. + */ + blocklist: StringRegExpArray; + /** + * If you provide globs for the content parameter, you can use this option + * to exclude certain files or folders that would otherwise be scanned. + * Pass an array of globs matching items that should be excluded. + * (Note: this option has no effect if content is not globs.) + */ + skippedContentGlobs: Array; + /** + * Option to add custom CSS attribute selectors like "aria-selected", + * "data-selected", ...etc. + */ + dynamicAttributes: string[]; +} + +/** + * @public + */ +export declare type PostCSSRoot = postcss.Root; + +/** + * Class used to instantiate PurgeCSS and can then be used + * to purge CSS files. + * + * @example + * ```ts + * await new PurgeCSS().purge({ + * content: ['index.html'], + * css: ['css/app.css'] + * }) + * ``` + * + * @public + */ +export declare class PurgeCSS { + private ignore; + private atRules; + private usedAnimations; + private usedFontFaces; + selectorsRemoved: Set; + removedNodes: postcss.Node[]; + variablesStructure: VariablesStructure; + options: Options; + private collectDeclarationsData; + /** + * Get the extractor corresponding to the extension file + * @param filename - Name of the file + * @param extractors - Array of extractors definition + */ + private getFileExtractor; + /** + * Extract the selectors present in the files using a PurgeCSS extractor + * + * @param files - Array of files path or glob pattern + * @param extractors - Array of extractors + */ + extractSelectorsFromFiles(files: string[], extractors: Extractors[]): Promise; + /** + * Extract the selectors present in the passed string using a PurgeCSS extractor + * + * @param content - Array of content + * @param extractors - Array of extractors + */ + extractSelectorsFromString(content: RawContent[], extractors: Extractors[]): Promise; + /** + * Evaluate at-rule and register it for future reference + * @param node - node of postcss AST + */ + private evaluateAtRule; + /** + * Evaluate css selector and decide if it should be removed or not + * + * @param node - node of postcss AST + * @param selectors - selectors used in content files + */ + private evaluateRule; + /** + * Get the purged version of the css based on the files + * + * @param cssOptions - css options, files or raw strings + * @param selectors - set of extracted css selectors + */ + getPurgedCSS(cssOptions: Array, selectors: ExtractorResultSets): Promise; + /** + * Check if the keyframe is safelisted with the option safelist keyframes + * + * @param keyframesName - name of the keyframe animation + */ + private isKeyframesSafelisted; + /** + * Check if the selector is blocklisted with the option blocklist + * + * @param selector - css selector + */ + private isSelectorBlocklisted; + /** + * Check if the selector is safelisted with the option safelist standard + * + * @param selector - css selector + */ + private isSelectorSafelisted; + /** + * Check if the selector is safelisted with the option safelist deep + * + * @param selector - selector + */ + private isSelectorSafelistedDeep; + /** + * Check if the selector is safelisted with the option safelist greedy + * + * @param selector - selector + */ + private isSelectorSafelistedGreedy; + /** + * Remove unused CSS + * + * @param userOptions - PurgeCSS options or path to the configuration file + * @returns an array of object containing the filename and the associated CSS + * + * @example Using a configuration file named purgecss.config.js + * ```ts + * const purgeCSSResults = await new PurgeCSS().purge() + * ``` + * + * @example Using a custom path to the configuration file + * ```ts + * const purgeCSSResults = await new PurgeCSS().purge('./purgecss.config.js') + * ``` + * + * @example Using the PurgeCSS options + * ```ts + * const purgeCSSResults = await new PurgeCSS().purge({ + * content: ['index.html', '**\/*.js', '**\/*.html', '**\/*.vue'], + * css: ['css/app.css'] + * }) + * ``` + */ + purge(userOptions: UserDefinedOptions | string | undefined): Promise; + /** + * Remove unused CSS variables + */ + removeUnusedCSSVariables(): void; + /** + * Remove unused font-faces + */ + removeUnusedFontFaces(): void; + /** + * Remove unused keyframes + */ + removeUnusedKeyframes(): void; + /** + * Transform a selector node into a string + */ + private getSelectorValue; + /** + * Determine if the selector should be kept, based on the selectors found in the files + * + * @param selector - set of css selectors found in the content files or string + * @param selectorsFromExtractor - selectors in the css rule + * + * @returns true if the selector should be kept in the processed CSS + */ + private shouldKeepSelector; + /** + * Walk through the CSS AST and remove unused CSS + * + * @param root - root node of the postcss AST + * @param selectors - selectors used in content files + */ + walkThroughCSS(root: PostCSSRoot, selectors: ExtractorResultSets): void; +} + +/** + * @public + */ +export declare interface RawContent { + extension: string; + raw: T; +} + +/** + * @public + */ +export declare interface RawCSS { + raw: string; + name?: string; +} + +/** + * @public + */ +export declare interface ResultPurge { + css: string; + /** + * sourceMap property will be empty if + * {@link UserDefinedOptions.sourceMap} inline is not set to false, as the + * source map will be contained within the text of ResultPurge.css + */ + sourceMap?: string; + rejectedCss?: string; + file?: string; + rejected?: string[]; +} + +/** + * Load the configuration file from the path + * + * @param configFile - Path of the config file + * @returns The options from the configuration file + * + * @throws Error + * This exception is thrown if the configuration file was not imported + * + * @public + */ +export declare function setOptions(configFile?: string): Promise; + +/** + * Format the user defined safelist into a standardized safelist object + * + * @param userDefinedSafelist - the user defined safelist + * @returns the formatted safelist object that can be used in the PurgeCSS options + * + * @public + */ +export declare function standardizeSafelist(userDefinedSafelist?: UserDefinedSafelist): Required; + +/** + * @public + */ +export declare type StringRegExpArray = Array; + +/** + * Options used by PurgeCSS to remove unused CSS + * + * @public + */ +export declare interface UserDefinedOptions { + /** {@inheritDoc Options.content} */ + content: Array; + /** {@inheritDoc Options.css} */ + css: Array; + /** {@inheritDoc Options.defaultExtractor} */ + defaultExtractor?: ExtractorFunction; + /** {@inheritDoc Options.extractors} */ + extractors?: Array; + /** {@inheritDoc Options.fontFace} */ + fontFace?: boolean; + /** {@inheritDoc Options.keyframes} */ + keyframes?: boolean; + /** {@inheritDoc Options.output} */ + output?: string; + /** {@inheritDoc Options.rejected} */ + rejected?: boolean; + /** {@inheritDoc Options.rejectedCss} */ + rejectedCss?: boolean; + /** {@inheritDoc Options.sourceMap } */ + sourceMap?: boolean | (postcss.SourceMapOptions & { + to?: string; + }); + /** {@inheritDoc Options.stdin} */ + stdin?: boolean; + /** {@inheritDoc Options.stdout} */ + stdout?: boolean; + /** {@inheritDoc Options.variables} */ + variables?: boolean; + /** {@inheritDoc Options.safelist} */ + safelist?: UserDefinedSafelist; + /** {@inheritDoc Options.blocklist} */ + blocklist?: StringRegExpArray; + /** {@inheritDoc Options.skippedContentGlobs} */ + skippedContentGlobs?: Array; + /** {@inheritDoc Options.dynamicAttributes} */ + dynamicAttributes?: string[]; +} + +/** + * @public + */ +export declare type UserDefinedSafelist = StringRegExpArray | ComplexSafelist; + +declare class VariableNode { + nodes: VariableNode[]; + value: postcss.Declaration; + isUsed: boolean; + constructor(declaration: postcss.Declaration); +} + +declare class VariablesStructure { + nodes: Map; + usedVariables: Set; + safelist: StringRegExpArray; + addVariable(declaration: postcss.Declaration): void; + addVariableUsage(declaration: postcss.Declaration, matchedVariables: RegExpMatchArray[]): void; + addVariableUsageInProperties(matchedVariables: RegExpMatchArray[]): void; + setAsUsed(variableName: string): void; + removeUnused(): void; + isVariablesSafelisted(variable: string): boolean; +} + +export { } diff --git a/node_modules/purgecss/lib/purgecss.esm.js b/node_modules/purgecss/lib/purgecss.esm.js new file mode 100644 index 0000000..28c15e6 --- /dev/null +++ b/node_modules/purgecss/lib/purgecss.esm.js @@ -0,0 +1 @@ +import*as e from"fs";import*as t from"glob";import*as s from"path";import*as r from"postcss";import o from"postcss-selector-parser";import{promisify as i}from"util";function a(e,t){t&&t.forEach(e.add,e)}class ExtractorResultSets{constructor(e){this.undetermined=new Set,this.attrNames=new Set,this.attrValues=new Set,this.classes=new Set,this.ids=new Set,this.tags=new Set,this.merge(e)}merge(e){return Array.isArray(e)?a(this.undetermined,e):e instanceof ExtractorResultSets?(a(this.undetermined,e.undetermined),a(this.attrNames,e.attrNames),a(this.attrValues,e.attrValues),a(this.classes,e.classes),a(this.ids,e.ids),a(this.tags,e.tags)):(a(this.undetermined,e.undetermined),e.attributes&&(a(this.attrNames,e.attributes.names),a(this.attrValues,e.attributes.values)),a(this.classes,e.classes),a(this.ids,e.ids),a(this.tags,e.tags)),this}hasAttrName(e){return this.attrNames.has(e)||this.undetermined.has(e)}someAttrValue(e){for(const t of this.attrValues)if(e(t))return!0;for(const t of this.undetermined)if(e(t))return!0;return!1}hasAttrPrefix(e){return this.someAttrValue((t=>t.startsWith(e)))}hasAttrSuffix(e){return this.someAttrValue((t=>t.endsWith(e)))}hasAttrSubstr(e){return e.trim().split(" ").every((e=>this.someAttrValue((t=>t.includes(e)))))}hasAttrValue(e){return this.attrValues.has(e)||this.undetermined.has(e)}hasClass(e){return this.classes.has(e)||this.undetermined.has(e)}hasId(e){return this.ids.has(e)||this.undetermined.has(e)}hasTag(e){return this.tags.has(e)||this.undetermined.has(e)}}const n=["*",":root",":after",":before"],c={css:[],content:[],defaultExtractor:e=>e.match(/[A-Za-z0-9_-]+/g)||[],extractors:[],fontFace:!1,keyframes:!1,rejected:!1,rejectedCss:!1,sourceMap:!1,stdin:!1,stdout:!1,variables:!1,safelist:{standard:[],deep:[],greedy:[],variables:[],keyframes:[]},blocklist:[],skippedContentGlobs:[],dynamicAttributes:[]};function l(e,t){const s=[];return e.replace(t,(function(){const t=arguments,r=Array.prototype.slice.call(t,0,-2);return r.input=t[t.length-1],r.index=t[t.length-2],s.push(r),e})),s}class VariableNode{constructor(e){this.nodes=[],this.isUsed=!1,this.value=e}}class VariablesStructure{constructor(){this.nodes=new Map,this.usedVariables=new Set,this.safelist=[]}addVariable(e){const{prop:t}=e;if(this.nodes.has(t)){const s=new VariableNode(e),r=this.nodes.get(t)||[];this.nodes.set(t,[...r,s])}else{const s=new VariableNode(e);this.nodes.set(t,[s])}}addVariableUsage(e,t){const{prop:s}=e,r=this.nodes.get(s);for(const e of t){const t=e[1];if(this.nodes.has(t)){const e=this.nodes.get(t);null==r||r.forEach((t=>{null==e||e.forEach((e=>t.nodes.push(e)))}))}}}addVariableUsageInProperties(e){for(const t of e){const e=t[1];this.usedVariables.add(e)}}setAsUsed(e){const t=this.nodes.get(e);if(t){const e=[...t];for(;0!==e.length;){const t=e.pop();t&&!t.isUsed&&(t.isUsed=!0,e.push(...t.nodes))}}}removeUnused(){for(const e of this.usedVariables){const t=this.nodes.get(e);if(t)for(const e of t){l(e.value.value,/var\((.+?)[,)]/g).forEach((e=>{this.usedVariables.has(e[1])||this.usedVariables.add(e[1])}))}}for(const e of this.usedVariables)this.setAsUsed(e);for(const[e,t]of this.nodes)for(const s of t)s.isUsed||this.isVariablesSafelisted(e)||s.value.remove()}isVariablesSafelisted(e){return this.safelist.some((t=>"string"==typeof t?t===e:t.test(e)))}}const u={access:i(e.access),readFile:i(e.readFile)};function d(e=[]){return Array.isArray(e)?{...c.safelist,standard:e}:{...c.safelist,...e}}async function h(e="purgecss.config.js"){let t;try{const r=s.resolve(process.cwd(),e);t=await import(r)}catch(e){if(e instanceof Error)throw new Error(`Error loading the config file ${e.message}`);throw new Error}return{...c,...t,safelist:d(t.safelist)}}async function f(e,t){return new ExtractorResultSets(await t(e))}function p(e,t){switch(t){case"next":return e.text.includes("purgecss ignore");case"start":return e.text.includes("purgecss start ignore");case"end":return e.text.includes("purgecss end ignore")}}function m(...e){const t=new ExtractorResultSets([]);return e.forEach(t.merge,t),t}function g(e){return e.replace(/(^["'])|(["']$)/g,"")}function v(e,t){if(!t.hasAttrName(e.attribute))return!1;if(void 0===e.value)return!0;switch(e.operator){case"$=":return t.hasAttrSuffix(e.value);case"~=":case"*=":return t.hasAttrSubstr(e.value);case"=":return t.hasAttrValue(e.value);case"|=":case"^=":return t.hasAttrPrefix(e.value);default:return!0}}function S(e,t){return t.hasId(e.value)}function y(e,t){return t.hasTag(e.value)}function b(e){return"atrule"===(null==e?void 0:e.type)}function w(e){return"rule"===(null==e?void 0:e.type)}class PurgeCSS{constructor(){this.ignore=!1,this.atRules={fontFace:[],keyframes:[]},this.usedAnimations=new Set,this.usedFontFaces=new Set,this.selectorsRemoved=new Set,this.removedNodes=[],this.variablesStructure=new VariablesStructure,this.options=c}collectDeclarationsData(e){const{prop:t,value:s}=e;if(this.options.variables){const r=l(s,/var\((.+?)[,)]/g);t.startsWith("--")?(this.variablesStructure.addVariable(e),r.length>0&&this.variablesStructure.addVariableUsage(e,r)):r.length>0&&this.variablesStructure.addVariableUsageInProperties(r)}if(!this.options.keyframes||"animation"!==t&&"animation-name"!==t)if(this.options.fontFace){if("font-family"===t)for(const e of s.split(",")){const t=g(e.trim());this.usedFontFaces.add(t)}}else;else for(const e of s.split(/[\s,]+/))this.usedAnimations.add(e)}getFileExtractor(e,t){const s=t.find((t=>t.extensions.find((t=>e.endsWith(t)))));return void 0===s?this.options.defaultExtractor:s.extractor}async extractSelectorsFromFiles(s,r){const o=new ExtractorResultSets([]);for(const i of s){let s=[];try{await u.access(i,e.constants.F_OK),s.push(i)}catch(e){s=t.sync(i,{nodir:!0,ignore:this.options.skippedContentGlobs})}for(const e of s){const t=await u.readFile(e,"utf-8"),s=this.getFileExtractor(e,r),i=await f(t,s);o.merge(i)}}return o}async extractSelectorsFromString(e,t){const s=new ExtractorResultSets([]);for(const{raw:r,extension:o}of e){const e=this.getFileExtractor(`.${o}`,t),i=await f(r,e);s.merge(i)}return s}evaluateAtRule(e){if(this.options.keyframes&&e.name.endsWith("keyframes"))this.atRules.keyframes.push(e);else if(this.options.fontFace&&"font-face"===e.name&&e.nodes)for(const t of e.nodes)"decl"===t.type&&"font-family"===t.prop&&this.atRules.fontFace.push({name:g(t.value),node:e})}evaluateRule(e,t){if(this.ignore)return;const s=e.prev();if(function(e){return"comment"===(null==e?void 0:e.type)}(s)&&p(s,"next"))return void s.remove();if(e.parent&&b(e.parent)&&e.parent.name.endsWith("keyframes"))return;if(!w(e))return;if(function(e){let t=!1;return e.walkComments((e=>{e&&"comment"===e.type&&e.text.includes("purgecss ignore current")&&(t=!0,e.remove())})),t}(e))return;let r=!0;const i=[];if(e.selector=o((e=>{e.walk((e=>{"selector"===e.type&&(r=this.shouldKeepSelector(e,t),r||(this.options.rejected&&this.selectorsRemoved.add(e.toString()),this.options.rejectedCss&&i.push(e.toString()),e.remove()))}))})).processSync(e.selector),r&&void 0!==e.nodes)for(const t of e.nodes)"decl"===t.type&&this.collectDeclarationsData(t);const a=e.parent;if(e.selector||e.remove(),function(e){return!!(w(e)&&!e.selector||(null==e?void 0:e.nodes)&&!e.nodes.length||b(e)&&(!e.nodes&&!e.params||!e.params&&e.nodes&&!e.nodes.length))}(a)&&(null==a||a.remove()),this.options.rejectedCss&&i.length>0){const t=e.clone(),s=null==a?void 0:a.clone().removeAll().append(t);t.selectors=i;const r=s||t;this.removedNodes.push(r)}}async getPurgedCSS(e,s){var o;const i=[],a=[];for(const s of e)"string"==typeof s?a.push(...t.sync(s,{nodir:!0,ignore:this.options.skippedContentGlobs})):a.push(s);for(const e of a){const t="string"==typeof e?this.options.stdin?e:await u.readFile(e,"utf-8"):e.raw,a="string"==typeof e&&!this.options.stdin,n=r.parse(t,{from:a?e:void 0});this.walkThroughCSS(n,s),this.options.fontFace&&this.removeUnusedFontFaces(),this.options.keyframes&&this.removeUnusedKeyframes(),this.options.variables&&this.removeUnusedCSSVariables();const c=n.toResult({map:this.options.sourceMap,to:"object"==typeof this.options.sourceMap?this.options.sourceMap.to:void 0}),l={css:c.toString(),file:"string"==typeof e?e:e.name};this.options.sourceMap&&(l.sourceMap=null===(o=c.map)||void 0===o?void 0:o.toString()),this.options.rejected&&(l.rejected=Array.from(this.selectorsRemoved),this.selectorsRemoved.clear()),this.options.rejectedCss&&(l.rejectedCss=r.root({nodes:this.removedNodes}).toString()),i.push(l)}return i}isKeyframesSafelisted(e){return this.options.safelist.keyframes.some((t=>"string"==typeof t?t===e:t.test(e)))}isSelectorBlocklisted(e){return this.options.blocklist.some((t=>"string"==typeof t?t===e:t.test(e)))}isSelectorSafelisted(e){const t=this.options.safelist.standard.some((t=>"string"==typeof t?t===e:t.test(e))),s=/^::.*/.test(e);return n.includes(e)||s||t}isSelectorSafelistedDeep(e){return this.options.safelist.deep.some((t=>t.test(e)))}isSelectorSafelistedGreedy(e){return this.options.safelist.greedy.some((t=>t.test(e)))}async purge(e){this.options="object"!=typeof e?await h(e):{...c,...e,safelist:d(e.safelist)};const{content:t,css:s,extractors:r,safelist:o}=this.options;this.options.variables&&(this.variablesStructure.safelist=o.variables||[]);const i=t.filter((e=>"string"==typeof e)),a=t.filter((e=>"object"==typeof e)),n=await this.extractSelectorsFromFiles(i,r),l=await this.extractSelectorsFromString(a,r);return this.getPurgedCSS(s,m(n,l))}removeUnusedCSSVariables(){this.variablesStructure.removeUnused()}removeUnusedFontFaces(){for(const{name:e,node:t}of this.atRules.fontFace)this.usedFontFaces.has(e)||t.remove()}removeUnusedKeyframes(){for(const e of this.atRules.keyframes)this.usedAnimations.has(e.params)||this.isKeyframesSafelisted(e.params)||e.remove()}getSelectorValue(e){return"attribute"===e.type&&e.attribute||e.value}shouldKeepSelector(e,t){if(function(e){return e.parent&&"pseudo"===e.parent.type&&e.parent.value.startsWith(":")||!1}(e))return!0;if(this.options.safelist.greedy.length>0){if(e.nodes.map(this.getSelectorValue).some((e=>e&&this.isSelectorSafelistedGreedy(e))))return!0}let s=!1;for(const o of e.nodes){const e=this.getSelectorValue(o);if(e&&this.isSelectorSafelistedDeep(e))return!0;if(e&&(n.includes(e)||this.isSelectorSafelisted(e)))s=!0;else{if(e&&this.isSelectorBlocklisted(e))return!1;switch(o.type){case"attribute":s=!![...this.options.dynamicAttributes,"value","checked","selected","open"].includes(o.attribute)||v(o,t);break;case"class":r=o,s=t.hasClass(r.value);break;case"id":s=S(o,t);break;case"tag":s=y(o,t);break;default:continue}if(!s)return!1}}var r;return s}walkThroughCSS(e,t){e.walk((e=>"rule"===e.type?this.evaluateRule(e,t):"atrule"===e.type?this.evaluateAtRule(e):void("comment"===e.type&&(p(e,"start")?(this.ignore=!0,e.remove()):p(e,"end")&&(this.ignore=!1,e.remove())))))}}export{ExtractorResultSets,PurgeCSS,c as defaultOptions,m as mergeExtractorSelectors,h as setOptions,d as standardizeSafelist}; diff --git a/node_modules/purgecss/lib/purgecss.js b/node_modules/purgecss/lib/purgecss.js new file mode 100644 index 0000000..c5871a8 --- /dev/null +++ b/node_modules/purgecss/lib/purgecss.js @@ -0,0 +1 @@ +"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("fs"),t=require("glob"),s=require("path"),r=require("postcss"),i=require("postcss-selector-parser"),o=require("util");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function a(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(s){if("default"!==s){var r=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,r.get?r:{enumerable:!0,get:function(){return e[s]}})}})),t.default=e,Object.freeze(t)}var c=a(e),u=a(t),l=a(s),d=a(r),h=n(i);function f(e,t){t&&t.forEach(e.add,e)}class ExtractorResultSets{constructor(e){this.undetermined=new Set,this.attrNames=new Set,this.attrValues=new Set,this.classes=new Set,this.ids=new Set,this.tags=new Set,this.merge(e)}merge(e){return Array.isArray(e)?f(this.undetermined,e):e instanceof ExtractorResultSets?(f(this.undetermined,e.undetermined),f(this.attrNames,e.attrNames),f(this.attrValues,e.attrValues),f(this.classes,e.classes),f(this.ids,e.ids),f(this.tags,e.tags)):(f(this.undetermined,e.undetermined),e.attributes&&(f(this.attrNames,e.attributes.names),f(this.attrValues,e.attributes.values)),f(this.classes,e.classes),f(this.ids,e.ids),f(this.tags,e.tags)),this}hasAttrName(e){return this.attrNames.has(e)||this.undetermined.has(e)}someAttrValue(e){for(const t of this.attrValues)if(e(t))return!0;for(const t of this.undetermined)if(e(t))return!0;return!1}hasAttrPrefix(e){return this.someAttrValue((t=>t.startsWith(e)))}hasAttrSuffix(e){return this.someAttrValue((t=>t.endsWith(e)))}hasAttrSubstr(e){return e.trim().split(" ").every((e=>this.someAttrValue((t=>t.includes(e)))))}hasAttrValue(e){return this.attrValues.has(e)||this.undetermined.has(e)}hasClass(e){return this.classes.has(e)||this.undetermined.has(e)}hasId(e){return this.ids.has(e)||this.undetermined.has(e)}hasTag(e){return this.tags.has(e)||this.undetermined.has(e)}}const p=["*",":root",":after",":before"],m={css:[],content:[],defaultExtractor:e=>e.match(/[A-Za-z0-9_-]+/g)||[],extractors:[],fontFace:!1,keyframes:!1,rejected:!1,rejectedCss:!1,sourceMap:!1,stdin:!1,stdout:!1,variables:!1,safelist:{standard:[],deep:[],greedy:[],variables:[],keyframes:[]},blocklist:[],skippedContentGlobs:[],dynamicAttributes:[]};function g(e,t){const s=[];return e.replace(t,(function(){const t=arguments,r=Array.prototype.slice.call(t,0,-2);return r.input=t[t.length-1],r.index=t[t.length-2],s.push(r),e})),s}class VariableNode{constructor(e){this.nodes=[],this.isUsed=!1,this.value=e}}class VariablesStructure{constructor(){this.nodes=new Map,this.usedVariables=new Set,this.safelist=[]}addVariable(e){const{prop:t}=e;if(this.nodes.has(t)){const s=new VariableNode(e),r=this.nodes.get(t)||[];this.nodes.set(t,[...r,s])}else{const s=new VariableNode(e);this.nodes.set(t,[s])}}addVariableUsage(e,t){const{prop:s}=e,r=this.nodes.get(s);for(const e of t){const t=e[1];if(this.nodes.has(t)){const e=this.nodes.get(t);null==r||r.forEach((t=>{null==e||e.forEach((e=>t.nodes.push(e)))}))}}}addVariableUsageInProperties(e){for(const t of e){const e=t[1];this.usedVariables.add(e)}}setAsUsed(e){const t=this.nodes.get(e);if(t){const e=[...t];for(;0!==e.length;){const t=e.pop();t&&!t.isUsed&&(t.isUsed=!0,e.push(...t.nodes))}}}removeUnused(){for(const e of this.usedVariables){const t=this.nodes.get(e);if(t)for(const e of t){g(e.value.value,/var\((.+?)[,)]/g).forEach((e=>{this.usedVariables.has(e[1])||this.usedVariables.add(e[1])}))}}for(const e of this.usedVariables)this.setAsUsed(e);for(const[e,t]of this.nodes)for(const s of t)s.isUsed||this.isVariablesSafelisted(e)||s.value.remove()}isVariablesSafelisted(e){return this.safelist.some((t=>"string"==typeof t?t===e:t.test(e)))}}const v={access:o.promisify(c.access),readFile:o.promisify(c.readFile)};function S(e=[]){return Array.isArray(e)?{...m.safelist,standard:e}:{...m.safelist,...e}}async function y(e="purgecss.config.js"){let t;try{const s=l.resolve(process.cwd(),e);t=await function(e){return Promise.resolve().then((function(){return a(require(e))}))}(s)}catch(e){if(e instanceof Error)throw new Error(`Error loading the config file ${e.message}`);throw new Error}return{...m,...t,safelist:S(t.safelist)}}async function b(e,t){return new ExtractorResultSets(await t(e))}function w(e,t){switch(t){case"next":return e.text.includes("purgecss ignore");case"start":return e.text.includes("purgecss start ignore");case"end":return e.text.includes("purgecss end ignore")}}function x(...e){const t=new ExtractorResultSets([]);return e.forEach(t.merge,t),t}function V(e){return e.replace(/(^["'])|(["']$)/g,"")}function A(e,t){if(!t.hasAttrName(e.attribute))return!1;if(void 0===e.value)return!0;switch(e.operator){case"$=":return t.hasAttrSuffix(e.value);case"~=":case"*=":return t.hasAttrSubstr(e.value);case"=":return t.hasAttrValue(e.value);case"|=":case"^=":return t.hasAttrPrefix(e.value);default:return!0}}function F(e,t){return t.hasId(e.value)}function k(e,t){return t.hasTag(e.value)}function E(e){return"atrule"===(null==e?void 0:e.type)}function R(e){return"rule"===(null==e?void 0:e.type)}exports.ExtractorResultSets=ExtractorResultSets,exports.PurgeCSS=class PurgeCSS{constructor(){this.ignore=!1,this.atRules={fontFace:[],keyframes:[]},this.usedAnimations=new Set,this.usedFontFaces=new Set,this.selectorsRemoved=new Set,this.removedNodes=[],this.variablesStructure=new VariablesStructure,this.options=m}collectDeclarationsData(e){const{prop:t,value:s}=e;if(this.options.variables){const r=g(s,/var\((.+?)[,)]/g);t.startsWith("--")?(this.variablesStructure.addVariable(e),r.length>0&&this.variablesStructure.addVariableUsage(e,r)):r.length>0&&this.variablesStructure.addVariableUsageInProperties(r)}if(!this.options.keyframes||"animation"!==t&&"animation-name"!==t)if(this.options.fontFace){if("font-family"===t)for(const e of s.split(",")){const t=V(e.trim());this.usedFontFaces.add(t)}}else;else for(const e of s.split(/[\s,]+/))this.usedAnimations.add(e)}getFileExtractor(e,t){const s=t.find((t=>t.extensions.find((t=>e.endsWith(t)))));return void 0===s?this.options.defaultExtractor:s.extractor}async extractSelectorsFromFiles(e,t){const s=new ExtractorResultSets([]);for(const r of e){let e=[];try{await v.access(r,c.constants.F_OK),e.push(r)}catch(t){e=u.sync(r,{nodir:!0,ignore:this.options.skippedContentGlobs})}for(const r of e){const e=await v.readFile(r,"utf-8"),i=this.getFileExtractor(r,t),o=await b(e,i);s.merge(o)}}return s}async extractSelectorsFromString(e,t){const s=new ExtractorResultSets([]);for(const{raw:r,extension:i}of e){const e=this.getFileExtractor(`.${i}`,t),o=await b(r,e);s.merge(o)}return s}evaluateAtRule(e){if(this.options.keyframes&&e.name.endsWith("keyframes"))this.atRules.keyframes.push(e);else if(this.options.fontFace&&"font-face"===e.name&&e.nodes)for(const t of e.nodes)"decl"===t.type&&"font-family"===t.prop&&this.atRules.fontFace.push({name:V(t.value),node:e})}evaluateRule(e,t){if(this.ignore)return;const s=e.prev();if(function(e){return"comment"===(null==e?void 0:e.type)}(s)&&w(s,"next"))return void s.remove();if(e.parent&&E(e.parent)&&e.parent.name.endsWith("keyframes"))return;if(!R(e))return;if(function(e){let t=!1;return e.walkComments((e=>{e&&"comment"===e.type&&e.text.includes("purgecss ignore current")&&(t=!0,e.remove())})),t}(e))return;let r=!0;const i=[];if(e.selector=h.default((e=>{e.walk((e=>{"selector"===e.type&&(r=this.shouldKeepSelector(e,t),r||(this.options.rejected&&this.selectorsRemoved.add(e.toString()),this.options.rejectedCss&&i.push(e.toString()),e.remove()))}))})).processSync(e.selector),r&&void 0!==e.nodes)for(const t of e.nodes)"decl"===t.type&&this.collectDeclarationsData(t);const o=e.parent;if(e.selector||e.remove(),function(e){return!!(R(e)&&!e.selector||(null==e?void 0:e.nodes)&&!e.nodes.length||E(e)&&(!e.nodes&&!e.params||!e.params&&e.nodes&&!e.nodes.length))}(o)&&(null==o||o.remove()),this.options.rejectedCss&&i.length>0){const t=e.clone(),s=null==o?void 0:o.clone().removeAll().append(t);t.selectors=i;const r=s||t;this.removedNodes.push(r)}}async getPurgedCSS(e,t){var s;const r=[],i=[];for(const t of e)"string"==typeof t?i.push(...u.sync(t,{nodir:!0,ignore:this.options.skippedContentGlobs})):i.push(t);for(const e of i){const i="string"==typeof e?this.options.stdin?e:await v.readFile(e,"utf-8"):e.raw,o="string"==typeof e&&!this.options.stdin,n=d.parse(i,{from:o?e:void 0});this.walkThroughCSS(n,t),this.options.fontFace&&this.removeUnusedFontFaces(),this.options.keyframes&&this.removeUnusedKeyframes(),this.options.variables&&this.removeUnusedCSSVariables();const a=n.toResult({map:this.options.sourceMap,to:"object"==typeof this.options.sourceMap?this.options.sourceMap.to:void 0}),c={css:a.toString(),file:"string"==typeof e?e:e.name};this.options.sourceMap&&(c.sourceMap=null===(s=a.map)||void 0===s?void 0:s.toString()),this.options.rejected&&(c.rejected=Array.from(this.selectorsRemoved),this.selectorsRemoved.clear()),this.options.rejectedCss&&(c.rejectedCss=d.root({nodes:this.removedNodes}).toString()),r.push(c)}return r}isKeyframesSafelisted(e){return this.options.safelist.keyframes.some((t=>"string"==typeof t?t===e:t.test(e)))}isSelectorBlocklisted(e){return this.options.blocklist.some((t=>"string"==typeof t?t===e:t.test(e)))}isSelectorSafelisted(e){const t=this.options.safelist.standard.some((t=>"string"==typeof t?t===e:t.test(e))),s=/^::.*/.test(e);return p.includes(e)||s||t}isSelectorSafelistedDeep(e){return this.options.safelist.deep.some((t=>t.test(e)))}isSelectorSafelistedGreedy(e){return this.options.safelist.greedy.some((t=>t.test(e)))}async purge(e){this.options="object"!=typeof e?await y(e):{...m,...e,safelist:S(e.safelist)};const{content:t,css:s,extractors:r,safelist:i}=this.options;this.options.variables&&(this.variablesStructure.safelist=i.variables||[]);const o=t.filter((e=>"string"==typeof e)),n=t.filter((e=>"object"==typeof e)),a=await this.extractSelectorsFromFiles(o,r),c=await this.extractSelectorsFromString(n,r);return this.getPurgedCSS(s,x(a,c))}removeUnusedCSSVariables(){this.variablesStructure.removeUnused()}removeUnusedFontFaces(){for(const{name:e,node:t}of this.atRules.fontFace)this.usedFontFaces.has(e)||t.remove()}removeUnusedKeyframes(){for(const e of this.atRules.keyframes)this.usedAnimations.has(e.params)||this.isKeyframesSafelisted(e.params)||e.remove()}getSelectorValue(e){return"attribute"===e.type&&e.attribute||e.value}shouldKeepSelector(e,t){if(function(e){return e.parent&&"pseudo"===e.parent.type&&e.parent.value.startsWith(":")||!1}(e))return!0;if(this.options.safelist.greedy.length>0){if(e.nodes.map(this.getSelectorValue).some((e=>e&&this.isSelectorSafelistedGreedy(e))))return!0}let s=!1;for(const i of e.nodes){const e=this.getSelectorValue(i);if(e&&this.isSelectorSafelistedDeep(e))return!0;if(e&&(p.includes(e)||this.isSelectorSafelisted(e)))s=!0;else{if(e&&this.isSelectorBlocklisted(e))return!1;switch(i.type){case"attribute":s=!![...this.options.dynamicAttributes,"value","checked","selected","open"].includes(i.attribute)||A(i,t);break;case"class":r=i,s=t.hasClass(r.value);break;case"id":s=F(i,t);break;case"tag":s=k(i,t);break;default:continue}if(!s)return!1}}var r;return s}walkThroughCSS(e,t){e.walk((e=>"rule"===e.type?this.evaluateRule(e,t):"atrule"===e.type?this.evaluateAtRule(e):void("comment"===e.type&&(w(e,"start")?(this.ignore=!0,e.remove()):w(e,"end")&&(this.ignore=!1,e.remove())))))}},exports.defaultOptions=m,exports.mergeExtractorSelectors=x,exports.setOptions=y,exports.standardizeSafelist=S; diff --git a/node_modules/purgecss/package.json b/node_modules/purgecss/package.json new file mode 100644 index 0000000..c61f979 --- /dev/null +++ b/node_modules/purgecss/package.json @@ -0,0 +1,58 @@ +{ + "name": "purgecss", + "version": "5.0.0", + "description": "Remove unused css selectors", + "author": "Ffloriel", + "homepage": "https://purgecss.com", + "keywords": [ + "optimize", + "optimization", + "remove", + "unused", + "css", + "html", + "rules", + "purge", + "uncss", + "purify" + ], + "license": "MIT", + "main": "lib/purgecss.js", + "module": "./lib/purgecss.esm.js", + "types": "./lib/purgecss.d.ts", + "bin": { + "purgecss": "bin/purgecss.js" + }, + "directories": { + "lib": "lib", + "test": "__tests__" + }, + "files": [ + "bin", + "lib" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/FullHuman/purgecss.git" + }, + "scripts": { + "build": "ts-node build.ts", + "test": "jest" + }, + "dependencies": { + "commander": "^9.0.0", + "glob": "^8.0.3", + "postcss": "^8.4.4", + "postcss-selector-parser": "^6.0.7" + }, + "devDependencies": { + "@types/glob": "^7.2.0" + }, + "bugs": { + "url": "https://github.com/FullHuman/purgecss/issues" + }, + "publishConfig": { + "access": "public", + "registry": "https://registry.npmjs.org/" + } +} diff --git a/node_modules/queue-microtask/LICENSE b/node_modules/queue-microtask/LICENSE new file mode 100755 index 0000000..c7e6852 --- /dev/null +++ b/node_modules/queue-microtask/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) Feross Aboukhadijeh + +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. diff --git a/node_modules/queue-microtask/README.md b/node_modules/queue-microtask/README.md new file mode 100644 index 0000000..0be05a6 --- /dev/null +++ b/node_modules/queue-microtask/README.md @@ -0,0 +1,90 @@ +# queue-microtask [![ci][ci-image]][ci-url] [![npm][npm-image]][npm-url] [![downloads][downloads-image]][downloads-url] [![javascript style guide][standard-image]][standard-url] + +[ci-image]: https://img.shields.io/github/workflow/status/feross/queue-microtask/ci/master +[ci-url]: https://github.com/feross/queue-microtask/actions +[npm-image]: https://img.shields.io/npm/v/queue-microtask.svg +[npm-url]: https://npmjs.org/package/queue-microtask +[downloads-image]: https://img.shields.io/npm/dm/queue-microtask.svg +[downloads-url]: https://npmjs.org/package/queue-microtask +[standard-image]: https://img.shields.io/badge/code_style-standard-brightgreen.svg +[standard-url]: https://standardjs.com + +### fast, tiny [`queueMicrotask`](https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/queueMicrotask) shim for modern engines + +- Use [`queueMicrotask`](https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/queueMicrotask) in all modern JS engines. +- No dependencies. Less than 10 lines. No shims or complicated fallbacks. +- Optimal performance in all modern environments + - Uses `queueMicrotask` in modern environments + - Fallback to `Promise.resolve().then(fn)` in Node.js 10 and earlier, and old browsers (same performance as `queueMicrotask`) + +## install + +``` +npm install queue-microtask +``` + +## usage + +```js +const queueMicrotask = require('queue-microtask') + +queueMicrotask(() => { /* this will run soon */ }) +``` + +## What is `queueMicrotask` and why would one use it? + +The `queueMicrotask` function is a WHATWG standard. It queues a microtask to be executed prior to control returning to the event loop. + +A microtask is a short function which will run after the current task has completed its work and when there is no other code waiting to be run before control of the execution context is returned to the event loop. + +The code `queueMicrotask(fn)` is equivalent to the code `Promise.resolve().then(fn)`. It is also very similar to [`process.nextTick(fn)`](https://nodejs.org/api/process.html#process_process_nexttick_callback_args) in Node. + +Using microtasks lets code run without interfering with any other, potentially higher priority, code that is pending, but before the JS engine regains control over the execution context. + +See the [spec](https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#microtask-queuing) or [Node documentation](https://nodejs.org/api/globals.html#globals_queuemicrotask_callback) for more information. + +## Who is this package for? + +This package allows you to use `queueMicrotask` safely in all modern JS engines. Use it if you prioritize small JS bundle size over support for old browsers. + +If you just need to support Node 12 and later, use `queueMicrotask` directly. If you need to support all versions of Node, use this package. + +## Why not use `process.nextTick`? + +In Node, `queueMicrotask` and `process.nextTick` are [essentially equivalent](https://nodejs.org/api/globals.html#globals_queuemicrotask_callback), though there are [subtle differences](https://github.com/YuzuJS/setImmediate#macrotasks-and-microtasks) that don't matter in most situations. + +You can think of `queueMicrotask` as a standardized version of `process.nextTick` that works in the browser. No need to rely on your browser bundler to shim `process` for the browser environment. + +## Why not use `setTimeout(fn, 0)`? + +This approach is the most compatible, but it has problems. Modern browsers throttle timers severely, so `setTimeout(…, 0)` usually takes at least 4ms to run. Furthermore, the throttling gets even worse if the page is backgrounded. If you have many `setTimeout` calls, then this can severely limit the performance of your program. + +## Why not use a microtask library like [`immediate`](https://www.npmjs.com/package/immediate) or [`asap`](https://www.npmjs.com/package/asap)? + +These packages are great! However, if you prioritize small JS bundle size over optimal performance in old browsers then you may want to consider this package. + +This package (`queue-microtask`) is four times smaller than `immediate`, twice as small as `asap`, and twice as small as using `process.nextTick` and letting the browser bundler shim it automatically. + +Note: This package throws an exception in JS environments which lack `Promise` support -- which are usually very old browsers and Node.js versions. + +Since the `queueMicrotask` API is supported in Node.js, Chrome, Firefox, Safari, Opera, and Edge, **the vast majority of users will get optimal performance**. Any JS environment with `Promise`, which is almost all of them, also get optimal performance. If you need support for JS environments which lack `Promise` support, use one of the alternative packages. + +## What is a shim? + +> In computer programming, a shim is a library that transparently intercepts API calls and changes the arguments passed, handles the operation itself or redirects the operation elsewhere. – [Wikipedia](https://en.wikipedia.org/wiki/Shim_(computing)) + +This package could also be described as a "ponyfill". + +> A ponyfill is almost the same as a polyfill, but not quite. Instead of patching functionality for older browsers, a ponyfill provides that functionality as a standalone module you can use. – [PonyFoo](https://ponyfoo.com/articles/polyfills-or-ponyfills) + +## API + +### `queueMicrotask(fn)` + +The `queueMicrotask()` method queues a microtask. + +The `fn` argument is a function to be executed after all pending tasks have completed but before yielding control to the browser's event loop. + +## license + +MIT. Copyright (c) [Feross Aboukhadijeh](https://feross.org). diff --git a/node_modules/queue-microtask/index.d.ts b/node_modules/queue-microtask/index.d.ts new file mode 100644 index 0000000..b6a8646 --- /dev/null +++ b/node_modules/queue-microtask/index.d.ts @@ -0,0 +1,2 @@ +declare const queueMicrotask: (cb: () => void) => void +export = queueMicrotask diff --git a/node_modules/queue-microtask/index.js b/node_modules/queue-microtask/index.js new file mode 100644 index 0000000..5560534 --- /dev/null +++ b/node_modules/queue-microtask/index.js @@ -0,0 +1,9 @@ +/*! queue-microtask. MIT License. Feross Aboukhadijeh */ +let promise + +module.exports = typeof queueMicrotask === 'function' + ? queueMicrotask.bind(typeof window !== 'undefined' ? window : global) + // reuse resolved promise, and allocate it lazily + : cb => (promise || (promise = Promise.resolve())) + .then(cb) + .catch(err => setTimeout(() => { throw err }, 0)) diff --git a/node_modules/queue-microtask/package.json b/node_modules/queue-microtask/package.json new file mode 100644 index 0000000..d29a401 --- /dev/null +++ b/node_modules/queue-microtask/package.json @@ -0,0 +1,55 @@ +{ + "name": "queue-microtask", + "description": "fast, tiny `queueMicrotask` shim for modern engines", + "version": "1.2.3", + "author": { + "name": "Feross Aboukhadijeh", + "email": "feross@feross.org", + "url": "https://feross.org" + }, + "bugs": { + "url": "https://github.com/feross/queue-microtask/issues" + }, + "devDependencies": { + "standard": "*", + "tape": "^5.2.2" + }, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "homepage": "https://github.com/feross/queue-microtask", + "keywords": [ + "asap", + "immediate", + "micro task", + "microtask", + "nextTick", + "process.nextTick", + "queue micro task", + "queue microtask", + "queue-microtask", + "queueMicrotask", + "setImmediate", + "task" + ], + "license": "MIT", + "main": "index.js", + "repository": { + "type": "git", + "url": "git://github.com/feross/queue-microtask.git" + }, + "scripts": { + "test": "standard && tape test/*.js" + } +} diff --git a/node_modules/read-cache/LICENSE b/node_modules/read-cache/LICENSE new file mode 100644 index 0000000..4b98a41 --- /dev/null +++ b/node_modules/read-cache/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright 2016 Bogdan Chadkin + +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. diff --git a/node_modules/read-cache/README.md b/node_modules/read-cache/README.md new file mode 100644 index 0000000..16a5c36 --- /dev/null +++ b/node_modules/read-cache/README.md @@ -0,0 +1,46 @@ +# read-cache [![Build Status](https://travis-ci.org/TrySound/read-cache.svg?branch=master)](https://travis-ci.org/TrySound/read-cache) + +Reads and caches the entire contents of a file until it is modified. + + +## Install + +``` +$ npm i read-cache +``` + + +## Usage + +```js +// foo.js +var readCache = require('read-cache'); + +readCache('foo.js').then(function (contents) { + console.log(contents); +}); +``` + + +## API + +### readCache(path[, encoding]) + +Returns a promise that resolves with the file's contents. + +### readCache.sync(path[, encoding]) + +Returns the content of the file. + +### readCache.get(path[, encoding]) + +Returns the content of cached file or null. + +### readCache.clear() + +Clears the contents of the cache. + + +## License + +MIT © [Bogdan Chadkin](mailto:trysound@yandex.ru) diff --git a/node_modules/read-cache/index.js b/node_modules/read-cache/index.js new file mode 100644 index 0000000..b5263e6 --- /dev/null +++ b/node_modules/read-cache/index.js @@ -0,0 +1,78 @@ +var fs = require('fs'); +var path = require('path'); +var pify = require('pify'); + +var stat = pify(fs.stat); +var readFile = pify(fs.readFile); +var resolve = path.resolve; + +var cache = Object.create(null); + +function convert(content, encoding) { + if (Buffer.isEncoding(encoding)) { + return content.toString(encoding); + } + return content; +} + +module.exports = function (path, encoding) { + path = resolve(path); + + return stat(path).then(function (stats) { + var item = cache[path]; + + if (item && item.mtime.getTime() === stats.mtime.getTime()) { + return convert(item.content, encoding); + } + + return readFile(path).then(function (data) { + cache[path] = { + mtime: stats.mtime, + content: data + }; + + return convert(data, encoding); + }); + }).catch(function (err) { + cache[path] = null; + return Promise.reject(err); + }); +}; + +module.exports.sync = function (path, encoding) { + path = resolve(path); + + try { + var stats = fs.statSync(path); + var item = cache[path]; + + if (item && item.mtime.getTime() === stats.mtime.getTime()) { + return convert(item.content, encoding); + } + + var data = fs.readFileSync(path); + + cache[path] = { + mtime: stats.mtime, + content: data + }; + + return convert(data, encoding); + } catch (err) { + cache[path] = null; + throw err; + } + +}; + +module.exports.get = function (path, encoding) { + path = resolve(path); + if (cache[path]) { + return convert(cache[path].content, encoding); + } + return null; +}; + +module.exports.clear = function () { + cache = Object.create(null); +}; diff --git a/node_modules/read-cache/package.json b/node_modules/read-cache/package.json new file mode 100644 index 0000000..87199b0 --- /dev/null +++ b/node_modules/read-cache/package.json @@ -0,0 +1,34 @@ +{ + "name": "read-cache", + "version": "1.0.0", + "description": "Reads and caches the entire contents of a file until it is modified", + "files": [ + "index.js" + ], + "main": "index.js", + "scripts": { + "test": "ava" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/TrySound/read-cache.git" + }, + "keywords": [ + "fs", + "read", + "cache" + ], + "author": "Bogdan Chadkin ", + "license": "MIT", + "bugs": { + "url": "https://github.com/TrySound/read-cache/issues" + }, + "homepage": "https://github.com/TrySound/read-cache#readme", + "devDependencies": { + "ava": "^0.9.1", + "del": "^2.2.0" + }, + "dependencies": { + "pify": "^2.3.0" + } +} diff --git a/node_modules/readdirp/LICENSE b/node_modules/readdirp/LICENSE new file mode 100644 index 0000000..037cbb4 --- /dev/null +++ b/node_modules/readdirp/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2012-2019 Thorsten Lorenz, Paul Miller (https://paulmillr.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. diff --git a/node_modules/readdirp/README.md b/node_modules/readdirp/README.md new file mode 100644 index 0000000..465593c --- /dev/null +++ b/node_modules/readdirp/README.md @@ -0,0 +1,122 @@ +# readdirp [![Weekly downloads](https://img.shields.io/npm/dw/readdirp.svg)](https://github.com/paulmillr/readdirp) + +Recursive version of [fs.readdir](https://nodejs.org/api/fs.html#fs_fs_readdir_path_options_callback). Exposes a **stream API** and a **promise API**. + + +```sh +npm install readdirp +``` + +```javascript +const readdirp = require('readdirp'); + +// Use streams to achieve small RAM & CPU footprint. +// 1) Streams example with for-await. +for await (const entry of readdirp('.')) { + const {path} = entry; + console.log(`${JSON.stringify({path})}`); +} + +// 2) Streams example, non for-await. +// Print out all JS files along with their size within the current folder & subfolders. +readdirp('.', {fileFilter: '*.js', alwaysStat: true}) + .on('data', (entry) => { + const {path, stats: {size}} = entry; + console.log(`${JSON.stringify({path, size})}`); + }) + // Optionally call stream.destroy() in `warn()` in order to abort and cause 'close' to be emitted + .on('warn', error => console.error('non-fatal error', error)) + .on('error', error => console.error('fatal error', error)) + .on('end', () => console.log('done')); + +// 3) Promise example. More RAM and CPU than streams / for-await. +const files = await readdirp.promise('.'); +console.log(files.map(file => file.path)); + +// Other options. +readdirp('test', { + fileFilter: '*.js', + directoryFilter: ['!.git', '!*modules'] + // directoryFilter: (di) => di.basename.length === 9 + type: 'files_directories', + depth: 1 +}); +``` + +For more examples, check out `examples` directory. + +## API + +`const stream = readdirp(root[, options])` — **Stream API** + +- Reads given root recursively and returns a `stream` of [entry infos](#entryinfo) +- Optionally can be used like `for await (const entry of stream)` with node.js 10+ (`asyncIterator`). +- `on('data', (entry) => {})` [entry info](#entryinfo) for every file / dir. +- `on('warn', (error) => {})` non-fatal `Error` that prevents a file / dir from being processed. Example: inaccessible to the user. +- `on('error', (error) => {})` fatal `Error` which also ends the stream. Example: illegal options where passed. +- `on('end')` — we are done. Called when all entries were found and no more will be emitted. +- `on('close')` — stream is destroyed via `stream.destroy()`. + Could be useful if you want to manually abort even on a non fatal error. + At that point the stream is no longer `readable` and no more entries, warning or errors are emitted +- To learn more about streams, consult the very detailed [nodejs streams documentation](https://nodejs.org/api/stream.html) + or the [stream-handbook](https://github.com/substack/stream-handbook) + +`const entries = await readdirp.promise(root[, options])` — **Promise API**. Returns a list of [entry infos](#entryinfo). + +First argument is awalys `root`, path in which to start reading and recursing into subdirectories. + +### options + +- `fileFilter: ["*.js"]`: filter to include or exclude files. A `Function`, Glob string or Array of glob strings. + - **Function**: a function that takes an entry info as a parameter and returns true to include or false to exclude the entry + - **Glob string**: a string (e.g., `*.js`) which is matched using [picomatch](https://github.com/micromatch/picomatch), so go there for more + information. Globstars (`**`) are not supported since specifying a recursive pattern for an already recursive function doesn't make sense. Negated globs (as explained in the minimatch documentation) are allowed, e.g., `!*.txt` matches everything but text files. + - **Array of glob strings**: either need to be all inclusive or all exclusive (negated) patterns otherwise an error is thrown. + `['*.json', '*.js']` includes all JavaScript and Json files. + `['!.git', '!node_modules']` includes all directories except the '.git' and 'node_modules'. + - Directories that do not pass a filter will not be recursed into. +- `directoryFilter: ['!.git']`: filter to include/exclude directories found and to recurse into. Directories that do not pass a filter will not be recursed into. +- `depth: 5`: depth at which to stop recursing even if more subdirectories are found +- `type: 'files'`: determines if data events on the stream should be emitted for `'files'` (default), `'directories'`, `'files_directories'`, or `'all'`. Setting to `'all'` will also include entries for other types of file descriptors like character devices, unix sockets and named pipes. +- `alwaysStat: false`: always return `stats` property for every file. Default is `false`, readdirp will return `Dirent` entries. Setting it to `true` can double readdir execution time - use it only when you need file `size`, `mtime` etc. Cannot be enabled on node <10.10.0. +- `lstat: false`: include symlink entries in the stream along with files. When `true`, `fs.lstat` would be used instead of `fs.stat` + +### `EntryInfo` + +Has the following properties: + +- `path: 'assets/javascripts/react.js'`: path to the file/directory (relative to given root) +- `fullPath: '/Users/dev/projects/app/assets/javascripts/react.js'`: full path to the file/directory found +- `basename: 'react.js'`: name of the file/directory +- `dirent: fs.Dirent`: built-in [dir entry object](https://nodejs.org/api/fs.html#fs_class_fs_dirent) - only with `alwaysStat: false` +- `stats: fs.Stats`: built in [stat object](https://nodejs.org/api/fs.html#fs_class_fs_stats) - only with `alwaysStat: true` + +## Changelog + +- 3.5 (Oct 13, 2020) disallows recursive directory-based symlinks. + Before, it could have entered infinite loop. +- 3.4 (Mar 19, 2020) adds support for directory-based symlinks. +- 3.3 (Dec 6, 2019) stabilizes RAM consumption and enables perf management with `highWaterMark` option. Fixes race conditions related to `for-await` looping. +- 3.2 (Oct 14, 2019) improves performance by 250% and makes streams implementation more idiomatic. +- 3.1 (Jul 7, 2019) brings `bigint` support to `stat` output on Windows. This is backwards-incompatible for some cases. Be careful. It you use it incorrectly, you'll see "TypeError: Cannot mix BigInt and other types, use explicit conversions". +- 3.0 brings huge performance improvements and stream backpressure support. +- Upgrading 2.x to 3.x: + - Signature changed from `readdirp(options)` to `readdirp(root, options)` + - Replaced callback API with promise API. + - Renamed `entryType` option to `type` + - Renamed `entryType: 'both'` to `'files_directories'` + - `EntryInfo` + - Renamed `stat` to `stats` + - Emitted only when `alwaysStat: true` + - `dirent` is emitted instead of `stats` by default with `alwaysStat: false` + - Renamed `name` to `basename` + - Removed `parentDir` and `fullParentDir` properties +- Supported node.js versions: + - 3.x: node 8+ + - 2.x: node 0.6+ + +## License + +Copyright (c) 2012-2019 Thorsten Lorenz, Paul Miller () + +MIT License, see [LICENSE](LICENSE) file. diff --git a/node_modules/readdirp/index.d.ts b/node_modules/readdirp/index.d.ts new file mode 100644 index 0000000..cbbd76c --- /dev/null +++ b/node_modules/readdirp/index.d.ts @@ -0,0 +1,43 @@ +// TypeScript Version: 3.2 + +/// + +import * as fs from 'fs'; +import { Readable } from 'stream'; + +declare namespace readdir { + interface EntryInfo { + path: string; + fullPath: string; + basename: string; + stats?: fs.Stats; + dirent?: fs.Dirent; + } + + interface ReaddirpOptions { + root?: string; + fileFilter?: string | string[] | ((entry: EntryInfo) => boolean); + directoryFilter?: string | string[] | ((entry: EntryInfo) => boolean); + type?: 'files' | 'directories' | 'files_directories' | 'all'; + lstat?: boolean; + depth?: number; + alwaysStat?: boolean; + } + + interface ReaddirpStream extends Readable, AsyncIterable { + read(): EntryInfo; + [Symbol.asyncIterator](): AsyncIterableIterator; + } + + function promise( + root: string, + options?: ReaddirpOptions + ): Promise; +} + +declare function readdir( + root: string, + options?: readdir.ReaddirpOptions +): readdir.ReaddirpStream; + +export = readdir; diff --git a/node_modules/readdirp/index.js b/node_modules/readdirp/index.js new file mode 100644 index 0000000..cf739b2 --- /dev/null +++ b/node_modules/readdirp/index.js @@ -0,0 +1,287 @@ +'use strict'; + +const fs = require('fs'); +const { Readable } = require('stream'); +const sysPath = require('path'); +const { promisify } = require('util'); +const picomatch = require('picomatch'); + +const readdir = promisify(fs.readdir); +const stat = promisify(fs.stat); +const lstat = promisify(fs.lstat); +const realpath = promisify(fs.realpath); + +/** + * @typedef {Object} EntryInfo + * @property {String} path + * @property {String} fullPath + * @property {fs.Stats=} stats + * @property {fs.Dirent=} dirent + * @property {String} basename + */ + +const BANG = '!'; +const RECURSIVE_ERROR_CODE = 'READDIRP_RECURSIVE_ERROR'; +const NORMAL_FLOW_ERRORS = new Set(['ENOENT', 'EPERM', 'EACCES', 'ELOOP', RECURSIVE_ERROR_CODE]); +const FILE_TYPE = 'files'; +const DIR_TYPE = 'directories'; +const FILE_DIR_TYPE = 'files_directories'; +const EVERYTHING_TYPE = 'all'; +const ALL_TYPES = [FILE_TYPE, DIR_TYPE, FILE_DIR_TYPE, EVERYTHING_TYPE]; + +const isNormalFlowError = error => NORMAL_FLOW_ERRORS.has(error.code); +const [maj, min] = process.versions.node.split('.').slice(0, 2).map(n => Number.parseInt(n, 10)); +const wantBigintFsStats = process.platform === 'win32' && (maj > 10 || (maj === 10 && min >= 5)); + +const normalizeFilter = filter => { + if (filter === undefined) return; + if (typeof filter === 'function') return filter; + + if (typeof filter === 'string') { + const glob = picomatch(filter.trim()); + return entry => glob(entry.basename); + } + + if (Array.isArray(filter)) { + const positive = []; + const negative = []; + for (const item of filter) { + const trimmed = item.trim(); + if (trimmed.charAt(0) === BANG) { + negative.push(picomatch(trimmed.slice(1))); + } else { + positive.push(picomatch(trimmed)); + } + } + + if (negative.length > 0) { + if (positive.length > 0) { + return entry => + positive.some(f => f(entry.basename)) && !negative.some(f => f(entry.basename)); + } + return entry => !negative.some(f => f(entry.basename)); + } + return entry => positive.some(f => f(entry.basename)); + } +}; + +class ReaddirpStream extends Readable { + static get defaultOptions() { + return { + root: '.', + /* eslint-disable no-unused-vars */ + fileFilter: (path) => true, + directoryFilter: (path) => true, + /* eslint-enable no-unused-vars */ + type: FILE_TYPE, + lstat: false, + depth: 2147483648, + alwaysStat: false + }; + } + + constructor(options = {}) { + super({ + objectMode: true, + autoDestroy: true, + highWaterMark: options.highWaterMark || 4096 + }); + const opts = { ...ReaddirpStream.defaultOptions, ...options }; + const { root, type } = opts; + + this._fileFilter = normalizeFilter(opts.fileFilter); + this._directoryFilter = normalizeFilter(opts.directoryFilter); + + const statMethod = opts.lstat ? lstat : stat; + // Use bigint stats if it's windows and stat() supports options (node 10+). + if (wantBigintFsStats) { + this._stat = path => statMethod(path, { bigint: true }); + } else { + this._stat = statMethod; + } + + this._maxDepth = opts.depth; + this._wantsDir = [DIR_TYPE, FILE_DIR_TYPE, EVERYTHING_TYPE].includes(type); + this._wantsFile = [FILE_TYPE, FILE_DIR_TYPE, EVERYTHING_TYPE].includes(type); + this._wantsEverything = type === EVERYTHING_TYPE; + this._root = sysPath.resolve(root); + this._isDirent = ('Dirent' in fs) && !opts.alwaysStat; + this._statsProp = this._isDirent ? 'dirent' : 'stats'; + this._rdOptions = { encoding: 'utf8', withFileTypes: this._isDirent }; + + // Launch stream with one parent, the root dir. + this.parents = [this._exploreDir(root, 1)]; + this.reading = false; + this.parent = undefined; + } + + async _read(batch) { + if (this.reading) return; + this.reading = true; + + try { + while (!this.destroyed && batch > 0) { + const { path, depth, files = [] } = this.parent || {}; + + if (files.length > 0) { + const slice = files.splice(0, batch).map(dirent => this._formatEntry(dirent, path)); + for (const entry of await Promise.all(slice)) { + if (this.destroyed) return; + + const entryType = await this._getEntryType(entry); + if (entryType === 'directory' && this._directoryFilter(entry)) { + if (depth <= this._maxDepth) { + this.parents.push(this._exploreDir(entry.fullPath, depth + 1)); + } + + if (this._wantsDir) { + this.push(entry); + batch--; + } + } else if ((entryType === 'file' || this._includeAsFile(entry)) && this._fileFilter(entry)) { + if (this._wantsFile) { + this.push(entry); + batch--; + } + } + } + } else { + const parent = this.parents.pop(); + if (!parent) { + this.push(null); + break; + } + this.parent = await parent; + if (this.destroyed) return; + } + } + } catch (error) { + this.destroy(error); + } finally { + this.reading = false; + } + } + + async _exploreDir(path, depth) { + let files; + try { + files = await readdir(path, this._rdOptions); + } catch (error) { + this._onError(error); + } + return { files, depth, path }; + } + + async _formatEntry(dirent, path) { + let entry; + try { + const basename = this._isDirent ? dirent.name : dirent; + const fullPath = sysPath.resolve(sysPath.join(path, basename)); + entry = { path: sysPath.relative(this._root, fullPath), fullPath, basename }; + entry[this._statsProp] = this._isDirent ? dirent : await this._stat(fullPath); + } catch (err) { + this._onError(err); + } + return entry; + } + + _onError(err) { + if (isNormalFlowError(err) && !this.destroyed) { + this.emit('warn', err); + } else { + this.destroy(err); + } + } + + async _getEntryType(entry) { + // entry may be undefined, because a warning or an error were emitted + // and the statsProp is undefined + const stats = entry && entry[this._statsProp]; + if (!stats) { + return; + } + if (stats.isFile()) { + return 'file'; + } + if (stats.isDirectory()) { + return 'directory'; + } + if (stats && stats.isSymbolicLink()) { + const full = entry.fullPath; + try { + const entryRealPath = await realpath(full); + const entryRealPathStats = await lstat(entryRealPath); + if (entryRealPathStats.isFile()) { + return 'file'; + } + if (entryRealPathStats.isDirectory()) { + const len = entryRealPath.length; + if (full.startsWith(entryRealPath) && full.substr(len, 1) === sysPath.sep) { + const recursiveError = new Error( + `Circular symlink detected: "${full}" points to "${entryRealPath}"` + ); + recursiveError.code = RECURSIVE_ERROR_CODE; + return this._onError(recursiveError); + } + return 'directory'; + } + } catch (error) { + this._onError(error); + } + } + } + + _includeAsFile(entry) { + const stats = entry && entry[this._statsProp]; + + return stats && this._wantsEverything && !stats.isDirectory(); + } +} + +/** + * @typedef {Object} ReaddirpArguments + * @property {Function=} fileFilter + * @property {Function=} directoryFilter + * @property {String=} type + * @property {Number=} depth + * @property {String=} root + * @property {Boolean=} lstat + * @property {Boolean=} bigint + */ + +/** + * Main function which ends up calling readdirRec and reads all files and directories in given root recursively. + * @param {String} root Root directory + * @param {ReaddirpArguments=} options Options to specify root (start directory), filters and recursion depth + */ +const readdirp = (root, options = {}) => { + let type = options.entryType || options.type; + if (type === 'both') type = FILE_DIR_TYPE; // backwards-compatibility + if (type) options.type = type; + if (!root) { + throw new Error('readdirp: root argument is required. Usage: readdirp(root, options)'); + } else if (typeof root !== 'string') { + throw new TypeError('readdirp: root argument must be a string. Usage: readdirp(root, options)'); + } else if (type && !ALL_TYPES.includes(type)) { + throw new Error(`readdirp: Invalid type passed. Use one of ${ALL_TYPES.join(', ')}`); + } + + options.root = root; + return new ReaddirpStream(options); +}; + +const readdirpPromise = (root, options = {}) => { + return new Promise((resolve, reject) => { + const files = []; + readdirp(root, options) + .on('data', entry => files.push(entry)) + .on('end', () => resolve(files)) + .on('error', error => reject(error)); + }); +}; + +readdirp.promise = readdirpPromise; +readdirp.ReaddirpStream = ReaddirpStream; +readdirp.default = readdirp; + +module.exports = readdirp; diff --git a/node_modules/readdirp/package.json b/node_modules/readdirp/package.json new file mode 100644 index 0000000..dba5388 --- /dev/null +++ b/node_modules/readdirp/package.json @@ -0,0 +1,122 @@ +{ + "name": "readdirp", + "description": "Recursive version of fs.readdir with streaming API.", + "version": "3.6.0", + "homepage": "https://github.com/paulmillr/readdirp", + "repository": { + "type": "git", + "url": "git://github.com/paulmillr/readdirp.git" + }, + "license": "MIT", + "bugs": { + "url": "https://github.com/paulmillr/readdirp/issues" + }, + "author": "Thorsten Lorenz (thlorenz.com)", + "contributors": [ + "Thorsten Lorenz (thlorenz.com)", + "Paul Miller (https://paulmillr.com)" + ], + "main": "index.js", + "engines": { + "node": ">=8.10.0" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "recursive", + "fs", + "stream", + "streams", + "readdir", + "filesystem", + "find", + "filter" + ], + "scripts": { + "dtslint": "dtslint", + "nyc": "nyc", + "mocha": "mocha --exit", + "lint": "eslint --report-unused-disable-directives --ignore-path .gitignore .", + "test": "npm run lint && nyc npm run mocha" + }, + "dependencies": { + "picomatch": "^2.2.1" + }, + "devDependencies": { + "@types/node": "^14", + "chai": "^4.2", + "chai-subset": "^1.6", + "dtslint": "^3.3.0", + "eslint": "^7.0.0", + "mocha": "^7.1.1", + "nyc": "^15.0.0", + "rimraf": "^3.0.0", + "typescript": "^4.0.3" + }, + "nyc": { + "reporter": [ + "html", + "text" + ] + }, + "eslintConfig": { + "root": true, + "extends": "eslint:recommended", + "parserOptions": { + "ecmaVersion": 9, + "sourceType": "script" + }, + "env": { + "node": true, + "es6": true + }, + "rules": { + "array-callback-return": "error", + "no-empty": [ + "error", + { + "allowEmptyCatch": true + } + ], + "no-else-return": [ + "error", + { + "allowElseIf": false + } + ], + "no-lonely-if": "error", + "no-var": "error", + "object-shorthand": "error", + "prefer-arrow-callback": [ + "error", + { + "allowNamedFunctions": true + } + ], + "prefer-const": [ + "error", + { + "ignoreReadBeforeAssign": true + } + ], + "prefer-destructuring": [ + "error", + { + "object": true, + "array": false + } + ], + "prefer-spread": "error", + "prefer-template": "error", + "radix": "error", + "semi": "error", + "strict": "error", + "quotes": [ + "error", + "single" + ] + } + } +} diff --git a/node_modules/require-directory/.jshintrc b/node_modules/require-directory/.jshintrc new file mode 100644 index 0000000..e14e4dc --- /dev/null +++ b/node_modules/require-directory/.jshintrc @@ -0,0 +1,67 @@ +{ + "maxerr" : 50, + "bitwise" : true, + "camelcase" : true, + "curly" : true, + "eqeqeq" : true, + "forin" : true, + "immed" : true, + "indent" : 2, + "latedef" : true, + "newcap" : true, + "noarg" : true, + "noempty" : true, + "nonew" : true, + "plusplus" : true, + "quotmark" : true, + "undef" : true, + "unused" : true, + "strict" : true, + "trailing" : true, + "maxparams" : false, + "maxdepth" : false, + "maxstatements" : false, + "maxcomplexity" : false, + "maxlen" : false, + "asi" : false, + "boss" : false, + "debug" : false, + "eqnull" : true, + "es5" : false, + "esnext" : false, + "moz" : false, + "evil" : false, + "expr" : true, + "funcscope" : true, + "globalstrict" : true, + "iterator" : true, + "lastsemic" : false, + "laxbreak" : false, + "laxcomma" : false, + "loopfunc" : false, + "multistr" : false, + "proto" : false, + "scripturl" : false, + "smarttabs" : false, + "shadow" : false, + "sub" : false, + "supernew" : false, + "validthis" : false, + "browser" : true, + "couch" : false, + "devel" : true, + "dojo" : false, + "jquery" : false, + "mootools" : false, + "node" : true, + "nonstandard" : false, + "prototypejs" : false, + "rhino" : false, + "worker" : false, + "wsh" : false, + "yui" : false, + "nomen" : true, + "onevar" : true, + "passfail" : false, + "white" : true +} diff --git a/node_modules/require-directory/.npmignore b/node_modules/require-directory/.npmignore new file mode 100644 index 0000000..47cf365 --- /dev/null +++ b/node_modules/require-directory/.npmignore @@ -0,0 +1 @@ +test/** diff --git a/node_modules/require-directory/.travis.yml b/node_modules/require-directory/.travis.yml new file mode 100644 index 0000000..20fd86b --- /dev/null +++ b/node_modules/require-directory/.travis.yml @@ -0,0 +1,3 @@ +language: node_js +node_js: + - 0.10 diff --git a/node_modules/require-directory/LICENSE b/node_modules/require-directory/LICENSE new file mode 100644 index 0000000..a70f253 --- /dev/null +++ b/node_modules/require-directory/LICENSE @@ -0,0 +1,22 @@ +The MIT License (MIT) + +Copyright (c) 2011 Troy Goode + +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. diff --git a/node_modules/require-directory/README.markdown b/node_modules/require-directory/README.markdown new file mode 100644 index 0000000..926a063 --- /dev/null +++ b/node_modules/require-directory/README.markdown @@ -0,0 +1,184 @@ +# require-directory + +Recursively iterates over specified directory, `require()`'ing each file, and returning a nested hash structure containing those modules. + +**[Follow me (@troygoode) on Twitter!](https://twitter.com/intent/user?screen_name=troygoode)** + +[![NPM](https://nodei.co/npm/require-directory.png?downloads=true&stars=true)](https://nodei.co/npm/require-directory/) + +[![build status](https://secure.travis-ci.org/troygoode/node-require-directory.png)](http://travis-ci.org/troygoode/node-require-directory) + +## How To Use + +### Installation (via [npm](https://npmjs.org/package/require-directory)) + +```bash +$ npm install require-directory +``` + +### Usage + +A common pattern in node.js is to include an index file which creates a hash of the files in its current directory. Given a directory structure like so: + +* app.js +* routes/ + * index.js + * home.js + * auth/ + * login.js + * logout.js + * register.js + +`routes/index.js` uses `require-directory` to build the hash (rather than doing so manually) like so: + +```javascript +var requireDirectory = require('require-directory'); +module.exports = requireDirectory(module); +``` + +`app.js` references `routes/index.js` like any other module, but it now has a hash/tree of the exports from the `./routes/` directory: + +```javascript +var routes = require('./routes'); + +// snip + +app.get('/', routes.home); +app.get('/register', routes.auth.register); +app.get('/login', routes.auth.login); +app.get('/logout', routes.auth.logout); +``` + +The `routes` variable above is the equivalent of this: + +```javascript +var routes = { + home: require('routes/home.js'), + auth: { + login: require('routes/auth/login.js'), + logout: require('routes/auth/logout.js'), + register: require('routes/auth/register.js') + } +}; +``` + +*Note that `routes.index` will be `undefined` as you would hope.* + +### Specifying Another Directory + +You can specify which directory you want to build a tree of (if it isn't the current directory for whatever reason) by passing it as the second parameter. Not specifying the path (`requireDirectory(module)`) is the equivelant of `requireDirectory(module, __dirname)`: + +```javascript +var requireDirectory = require('require-directory'); +module.exports = requireDirectory(module, './some/subdirectory'); +``` + +For example, in the [example in the Usage section](#usage) we could have avoided creating `routes/index.js` and instead changed the first lines of `app.js` to: + +```javascript +var requireDirectory = require('require-directory'); +var routes = requireDirectory(module, './routes'); +``` + +## Options + +You can pass an options hash to `require-directory` as the 2nd parameter (or 3rd if you're passing the path to another directory as the 2nd parameter already). Here are the available options: + +### Whitelisting + +Whitelisting (either via RegExp or function) allows you to specify that only certain files be loaded. + +```javascript +var requireDirectory = require('require-directory'), + whitelist = /onlyinclude.js$/, + hash = requireDirectory(module, {include: whitelist}); +``` + +```javascript +var requireDirectory = require('require-directory'), + check = function(path){ + if(/onlyinclude.js$/.test(path)){ + return true; // don't include + }else{ + return false; // go ahead and include + } + }, + hash = requireDirectory(module, {include: check}); +``` + +### Blacklisting + +Blacklisting (either via RegExp or function) allows you to specify that all but certain files should be loaded. + +```javascript +var requireDirectory = require('require-directory'), + blacklist = /dontinclude\.js$/, + hash = requireDirectory(module, {exclude: blacklist}); +``` + +```javascript +var requireDirectory = require('require-directory'), + check = function(path){ + if(/dontinclude\.js$/.test(path)){ + return false; // don't include + }else{ + return true; // go ahead and include + } + }, + hash = requireDirectory(module, {exclude: check}); +``` + +### Visiting Objects As They're Loaded + +`require-directory` takes a function as the `visit` option that will be called for each module that is added to module.exports. + +```javascript +var requireDirectory = require('require-directory'), + visitor = function(obj) { + console.log(obj); // will be called for every module that is loaded + }, + hash = requireDirectory(module, {visit: visitor}); +``` + +The visitor can also transform the objects by returning a value: + +```javascript +var requireDirectory = require('require-directory'), + visitor = function(obj) { + return obj(new Date()); + }, + hash = requireDirectory(module, {visit: visitor}); +``` + +### Renaming Keys + +```javascript +var requireDirectory = require('require-directory'), + renamer = function(name) { + return name.toUpperCase(); + }, + hash = requireDirectory(module, {rename: renamer}); +``` + +### No Recursion + +```javascript +var requireDirectory = require('require-directory'), + hash = requireDirectory(module, {recurse: false}); +``` + +## Run Unit Tests + +```bash +$ npm run lint +$ npm test +``` + +## License + +[MIT License](http://www.opensource.org/licenses/mit-license.php) + +## Author + +[Troy Goode](https://github.com/TroyGoode) ([troygoode@gmail.com](mailto:troygoode@gmail.com)) + diff --git a/node_modules/require-directory/index.js b/node_modules/require-directory/index.js new file mode 100644 index 0000000..cd37da7 --- /dev/null +++ b/node_modules/require-directory/index.js @@ -0,0 +1,86 @@ +'use strict'; + +var fs = require('fs'), + join = require('path').join, + resolve = require('path').resolve, + dirname = require('path').dirname, + defaultOptions = { + extensions: ['js', 'json', 'coffee'], + recurse: true, + rename: function (name) { + return name; + }, + visit: function (obj) { + return obj; + } + }; + +function checkFileInclusion(path, filename, options) { + return ( + // verify file has valid extension + (new RegExp('\\.(' + options.extensions.join('|') + ')$', 'i').test(filename)) && + + // if options.include is a RegExp, evaluate it and make sure the path passes + !(options.include && options.include instanceof RegExp && !options.include.test(path)) && + + // if options.include is a function, evaluate it and make sure the path passes + !(options.include && typeof options.include === 'function' && !options.include(path, filename)) && + + // if options.exclude is a RegExp, evaluate it and make sure the path doesn't pass + !(options.exclude && options.exclude instanceof RegExp && options.exclude.test(path)) && + + // if options.exclude is a function, evaluate it and make sure the path doesn't pass + !(options.exclude && typeof options.exclude === 'function' && options.exclude(path, filename)) + ); +} + +function requireDirectory(m, path, options) { + var retval = {}; + + // path is optional + if (path && !options && typeof path !== 'string') { + options = path; + path = null; + } + + // default options + options = options || {}; + for (var prop in defaultOptions) { + if (typeof options[prop] === 'undefined') { + options[prop] = defaultOptions[prop]; + } + } + + // if no path was passed in, assume the equivelant of __dirname from caller + // otherwise, resolve path relative to the equivalent of __dirname + path = !path ? dirname(m.filename) : resolve(dirname(m.filename), path); + + // get the path of each file in specified directory, append to current tree node, recurse + fs.readdirSync(path).forEach(function (filename) { + var joined = join(path, filename), + files, + key, + obj; + + if (fs.statSync(joined).isDirectory() && options.recurse) { + // this node is a directory; recurse + files = requireDirectory(m, joined, options); + // exclude empty directories + if (Object.keys(files).length) { + retval[options.rename(filename, joined, filename)] = files; + } + } else { + if (joined !== m.filename && checkFileInclusion(joined, filename, options)) { + // hash node key shouldn't include file extension + key = filename.substring(0, filename.lastIndexOf('.')); + obj = m.require(joined); + retval[options.rename(key, joined, filename)] = options.visit(obj, joined, filename) || obj; + } + } + }); + + return retval; +} + +module.exports = requireDirectory; +module.exports.defaults = defaultOptions; diff --git a/node_modules/require-directory/package.json b/node_modules/require-directory/package.json new file mode 100644 index 0000000..25ece4b --- /dev/null +++ b/node_modules/require-directory/package.json @@ -0,0 +1,40 @@ +{ + "author": "Troy Goode (http://github.com/troygoode/)", + "name": "require-directory", + "version": "2.1.1", + "description": "Recursively iterates over specified directory, require()'ing each file, and returning a nested hash structure containing those modules.", + "keywords": [ + "require", + "directory", + "library", + "recursive" + ], + "homepage": "https://github.com/troygoode/node-require-directory/", + "main": "index.js", + "repository": { + "type": "git", + "url": "git://github.com/troygoode/node-require-directory.git" + }, + "contributors": [ + { + "name": "Troy Goode", + "email": "troygoode@gmail.com", + "web": "http://github.com/troygoode/" + } + ], + "license": "MIT", + "bugs": { + "url": "http://github.com/troygoode/node-require-directory/issues/" + }, + "engines": { + "node": ">=0.10.0" + }, + "devDependencies": { + "jshint": "^2.6.0", + "mocha": "^2.1.0" + }, + "scripts": { + "test": "mocha", + "lint": "jshint index.js test/test.js" + } +} diff --git a/node_modules/reusify/.github/dependabot.yml b/node_modules/reusify/.github/dependabot.yml new file mode 100644 index 0000000..4872c5a --- /dev/null +++ b/node_modules/reusify/.github/dependabot.yml @@ -0,0 +1,7 @@ +version: 2 +updates: +- package-ecosystem: npm + directory: "/" + schedule: + interval: daily + open-pull-requests-limit: 10 diff --git a/node_modules/reusify/.github/workflows/ci.yml b/node_modules/reusify/.github/workflows/ci.yml new file mode 100644 index 0000000..1e30ad8 --- /dev/null +++ b/node_modules/reusify/.github/workflows/ci.yml @@ -0,0 +1,96 @@ +name: ci + +on: [push, pull_request] + +jobs: + legacy: + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: ['0.10', '0.12', 4.x, 6.x, 8.x, 10.x, 12.x, 13.x, 14.x, 15.x, 16.x] + + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + + - name: Use Node.js + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + + - name: Install + run: | + npm install --production && npm install tape + + - name: Run tests + run: | + npm run test + + test: + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [18.x, 20.x, 22.x] + + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + + - name: Use Node.js + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + + - name: Install + run: | + npm install + + - name: Run tests + run: | + npm run test:coverage + + types: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + + - name: Use Node.js + uses: actions/setup-node@v4 + with: + node-version: 22 + + - name: Install + run: | + npm install + + - name: Run types tests + run: | + npm run test:typescript + + lint: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + + - name: Use Node.js + uses: actions/setup-node@v4 + with: + node-version: 22 + + - name: Install + run: | + npm install + + - name: Lint + run: | + npm run lint diff --git a/node_modules/reusify/LICENSE b/node_modules/reusify/LICENSE new file mode 100644 index 0000000..56d1590 --- /dev/null +++ b/node_modules/reusify/LICENSE @@ -0,0 +1,22 @@ +The MIT License (MIT) + +Copyright (c) 2015-2024 Matteo Collina + +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. + diff --git a/node_modules/reusify/README.md b/node_modules/reusify/README.md new file mode 100644 index 0000000..1aaee5d --- /dev/null +++ b/node_modules/reusify/README.md @@ -0,0 +1,139 @@ +# reusify + +[![npm version][npm-badge]][npm-url] + +Reuse your objects and functions for maximum speed. This technique will +make any function run ~10% faster. You call your functions a +lot, and it adds up quickly in hot code paths. + +``` +$ node benchmarks/createNoCodeFunction.js +Total time 53133 +Total iterations 100000000 +Iteration/s 1882069.5236482036 + +$ node benchmarks/reuseNoCodeFunction.js +Total time 50617 +Total iterations 100000000 +Iteration/s 1975620.838848608 +``` + +The above benchmark uses fibonacci to simulate a real high-cpu load. +The actual numbers might differ for your use case, but the difference +should not. + +The benchmark was taken using Node v6.10.0. + +This library was extracted from +[fastparallel](http://npm.im/fastparallel). + +## Example + +```js +var reusify = require('reusify') +var fib = require('reusify/benchmarks/fib') +var instance = reusify(MyObject) + +// get an object from the cache, +// or creates a new one when cache is empty +var obj = instance.get() + +// set the state +obj.num = 100 +obj.func() + +// reset the state. +// if the state contains any external object +// do not use delete operator (it is slow) +// prefer set them to null +obj.num = 0 + +// store an object in the cache +instance.release(obj) + +function MyObject () { + // you need to define this property + // so V8 can compile MyObject into an + // hidden class + this.next = null + this.num = 0 + + var that = this + + // this function is never reallocated, + // so it can be optimized by V8 + this.func = function () { + if (null) { + // do nothing + } else { + // calculates fibonacci + fib(that.num) + } + } +} +``` + +The above example was intended for synchronous code, let's see async: +```js +var reusify = require('reusify') +var instance = reusify(MyObject) + +for (var i = 0; i < 100; i++) { + getData(i, console.log) +} + +function getData (value, cb) { + var obj = instance.get() + + obj.value = value + obj.cb = cb + obj.run() +} + +function MyObject () { + this.next = null + this.value = null + + var that = this + + this.run = function () { + asyncOperation(that.value, that.handle) + } + + this.handle = function (err, result) { + that.cb(err, result) + that.value = null + that.cb = null + instance.release(that) + } +} +``` + +Also note how in the above examples, the code, that consumes an instance of `MyObject`, +reset the state to initial condition, just before storing it in the cache. +That's needed so that every subsequent request for an instance from the cache, +could get a clean instance. + +## Why + +It is faster because V8 doesn't have to collect all the functions you +create. On a short-lived benchmark, it is as fast as creating the +nested function, but on a longer time frame it creates less +pressure on the garbage collector. + +## Other examples +If you want to see some complex example, checkout [middie](https://github.com/fastify/middie) and [steed](https://github.com/mcollina/steed). + +## Acknowledgements + +Thanks to [Trevor Norris](https://github.com/trevnorris) for +getting me down the rabbit hole of performance, and thanks to [Mathias +Buss](http://github.com/mafintosh) for suggesting me to share this +trick. + +## License + +MIT + +[npm-badge]: https://badge.fury.io/js/reusify.svg +[npm-url]: https://badge.fury.io/js/reusify diff --git a/node_modules/reusify/SECURITY.md b/node_modules/reusify/SECURITY.md new file mode 100644 index 0000000..dd9f1d5 --- /dev/null +++ b/node_modules/reusify/SECURITY.md @@ -0,0 +1,15 @@ +# Security Policy + +## Supported Versions + +Use this section to tell people about which versions of your project are +currently being supported with security updates. + +| Version | Supported | +| ------- | ------------------ | +| 1.x | :white_check_mark: | +| < 1.0 | :x: | + +## Reporting a Vulnerability + +Please report all vulnerabilities at [https://github.com/mcollina/fastq/security](https://github.com/mcollina/fastq/security). diff --git a/node_modules/reusify/benchmarks/createNoCodeFunction.js b/node_modules/reusify/benchmarks/createNoCodeFunction.js new file mode 100644 index 0000000..ce1aac7 --- /dev/null +++ b/node_modules/reusify/benchmarks/createNoCodeFunction.js @@ -0,0 +1,30 @@ +'use strict' + +var fib = require('./fib') +var max = 100000000 +var start = Date.now() + +// create a funcion with the typical error +// pattern, that delegates the heavy load +// to something else +function createNoCodeFunction () { + /* eslint no-constant-condition: "off" */ + var num = 100 + + ;(function () { + if (null) { + // do nothing + } else { + fib(num) + } + })() +} + +for (var i = 0; i < max; i++) { + createNoCodeFunction() +} + +var time = Date.now() - start +console.log('Total time', time) +console.log('Total iterations', max) +console.log('Iteration/s', max / time * 1000) diff --git a/node_modules/reusify/benchmarks/fib.js b/node_modules/reusify/benchmarks/fib.js new file mode 100644 index 0000000..e22cc48 --- /dev/null +++ b/node_modules/reusify/benchmarks/fib.js @@ -0,0 +1,13 @@ +'use strict' + +function fib (num) { + var fib = [] + + fib[0] = 0 + fib[1] = 1 + for (var i = 2; i <= num; i++) { + fib[i] = fib[i - 2] + fib[i - 1] + } +} + +module.exports = fib diff --git a/node_modules/reusify/benchmarks/reuseNoCodeFunction.js b/node_modules/reusify/benchmarks/reuseNoCodeFunction.js new file mode 100644 index 0000000..3358d6e --- /dev/null +++ b/node_modules/reusify/benchmarks/reuseNoCodeFunction.js @@ -0,0 +1,38 @@ +'use strict' + +var reusify = require('../') +var fib = require('./fib') +var instance = reusify(MyObject) +var max = 100000000 +var start = Date.now() + +function reuseNoCodeFunction () { + var obj = instance.get() + obj.num = 100 + obj.func() + obj.num = 0 + instance.release(obj) +} + +function MyObject () { + this.next = null + var that = this + this.num = 0 + this.func = function () { + /* eslint no-constant-condition: "off" */ + if (null) { + // do nothing + } else { + fib(that.num) + } + } +} + +for (var i = 0; i < max; i++) { + reuseNoCodeFunction() +} + +var time = Date.now() - start +console.log('Total time', time) +console.log('Total iterations', max) +console.log('Iteration/s', max / time * 1000) diff --git a/node_modules/reusify/eslint.config.js b/node_modules/reusify/eslint.config.js new file mode 100644 index 0000000..d0a9af6 --- /dev/null +++ b/node_modules/reusify/eslint.config.js @@ -0,0 +1,14 @@ +'use strict' + +const base = require('neostandard')({}) + +module.exports = [ + ...base, + { + name: 'old-standard', + rules: { + 'no-var': 'off', + 'object-shorthand': 'off', + } + } +] diff --git a/node_modules/reusify/package.json b/node_modules/reusify/package.json new file mode 100644 index 0000000..e47ff11 --- /dev/null +++ b/node_modules/reusify/package.json @@ -0,0 +1,50 @@ +{ + "name": "reusify", + "version": "1.1.0", + "description": "Reuse objects and functions with style", + "main": "reusify.js", + "types": "reusify.d.ts", + "scripts": { + "lint": "eslint", + "test": "tape test.js", + "test:coverage": "c8 --100 tape test.js", + "test:typescript": "tsc" + }, + "pre-commit": [ + "lint", + "test", + "test:typescript" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/mcollina/reusify.git" + }, + "keywords": [ + "reuse", + "object", + "performance", + "function", + "fast" + ], + "author": "Matteo Collina ", + "license": "MIT", + "bugs": { + "url": "https://github.com/mcollina/reusify/issues" + }, + "homepage": "https://github.com/mcollina/reusify#readme", + "engines": { + "node": ">=0.10.0", + "iojs": ">=1.0.0" + }, + "devDependencies": { + "@types/node": "^22.9.0", + "eslint": "^9.13.0", + "neostandard": "^0.12.0", + "pre-commit": "^1.2.2", + "tape": "^5.0.0", + "c8": "^10.1.2", + "typescript": "^5.2.2" + }, + "dependencies": { + } +} diff --git a/node_modules/reusify/reusify.d.ts b/node_modules/reusify/reusify.d.ts new file mode 100644 index 0000000..9ba277d --- /dev/null +++ b/node_modules/reusify/reusify.d.ts @@ -0,0 +1,14 @@ +interface Node { + next: Node | null; +} + +interface Constructor { + new(): T; +} + +declare function reusify(constructor: Constructor): { + get(): T; + release(node: T): void; +}; + +export = reusify; diff --git a/node_modules/reusify/reusify.js b/node_modules/reusify/reusify.js new file mode 100644 index 0000000..e6f36f3 --- /dev/null +++ b/node_modules/reusify/reusify.js @@ -0,0 +1,33 @@ +'use strict' + +function reusify (Constructor) { + var head = new Constructor() + var tail = head + + function get () { + var current = head + + if (current.next) { + head = current.next + } else { + head = new Constructor() + tail = head + } + + current.next = null + + return current + } + + function release (obj) { + tail.next = obj + tail = obj + } + + return { + get: get, + release: release + } +} + +module.exports = reusify diff --git a/node_modules/reusify/test.js b/node_modules/reusify/test.js new file mode 100644 index 0000000..929cfd7 --- /dev/null +++ b/node_modules/reusify/test.js @@ -0,0 +1,66 @@ +'use strict' + +var test = require('tape') +var reusify = require('./') + +test('reuse objects', function (t) { + t.plan(6) + + function MyObject () { + t.pass('constructor called') + this.next = null + } + + var instance = reusify(MyObject) + var obj = instance.get() + + t.notEqual(obj, instance.get(), 'two instance created') + t.notOk(obj.next, 'next must be null') + + instance.release(obj) + + // the internals keeps a hot copy ready for reuse + // putting this one back in the queue + instance.release(instance.get()) + + // comparing the old one with the one we got + // never do this in real code, after release you + // should never reuse that instance + t.equal(obj, instance.get(), 'instance must be reused') +}) + +test('reuse more than 2 objects', function (t) { + function MyObject () { + t.pass('constructor called') + this.next = null + } + + var instance = reusify(MyObject) + var obj = instance.get() + var obj2 = instance.get() + var obj3 = instance.get() + + t.notOk(obj.next, 'next must be null') + t.notOk(obj2.next, 'next must be null') + t.notOk(obj3.next, 'next must be null') + + t.notEqual(obj, obj2) + t.notEqual(obj, obj3) + t.notEqual(obj3, obj2) + + instance.release(obj) + instance.release(obj2) + instance.release(obj3) + + // skip one + instance.get() + + var obj4 = instance.get() + var obj5 = instance.get() + var obj6 = instance.get() + + t.equal(obj4, obj) + t.equal(obj5, obj2) + t.equal(obj6, obj3) + t.end() +}) diff --git a/node_modules/reusify/tsconfig.json b/node_modules/reusify/tsconfig.json new file mode 100644 index 0000000..dbe862b --- /dev/null +++ b/node_modules/reusify/tsconfig.json @@ -0,0 +1,11 @@ +{ + "compilerOptions": { + "target": "es6", + "module": "commonjs", + "noEmit": true, + "strict": true + }, + "files": [ + "./reusify.d.ts" + ] +} diff --git a/node_modules/run-parallel/LICENSE b/node_modules/run-parallel/LICENSE new file mode 100644 index 0000000..c7e6852 --- /dev/null +++ b/node_modules/run-parallel/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) Feross Aboukhadijeh + +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. diff --git a/node_modules/run-parallel/README.md b/node_modules/run-parallel/README.md new file mode 100644 index 0000000..edc3da4 --- /dev/null +++ b/node_modules/run-parallel/README.md @@ -0,0 +1,85 @@ +# run-parallel [![travis][travis-image]][travis-url] [![npm][npm-image]][npm-url] [![downloads][downloads-image]][downloads-url] [![javascript style guide][standard-image]][standard-url] + +[travis-image]: https://img.shields.io/travis/feross/run-parallel/master.svg +[travis-url]: https://travis-ci.org/feross/run-parallel +[npm-image]: https://img.shields.io/npm/v/run-parallel.svg +[npm-url]: https://npmjs.org/package/run-parallel +[downloads-image]: https://img.shields.io/npm/dm/run-parallel.svg +[downloads-url]: https://npmjs.org/package/run-parallel +[standard-image]: https://img.shields.io/badge/code_style-standard-brightgreen.svg +[standard-url]: https://standardjs.com + +### Run an array of functions in parallel + +![parallel](https://raw.githubusercontent.com/feross/run-parallel/master/img.png) [![Sauce Test Status](https://saucelabs.com/browser-matrix/run-parallel.svg)](https://saucelabs.com/u/run-parallel) + +### install + +``` +npm install run-parallel +``` + +### usage + +#### parallel(tasks, [callback]) + +Run the `tasks` array of functions in parallel, without waiting until the previous +function has completed. If any of the functions pass an error to its callback, the main +`callback` is immediately called with the value of the error. Once the `tasks` have +completed, the results are passed to the final `callback` as an array. + +It is also possible to use an object instead of an array. Each property will be run as a +function and the results will be passed to the final `callback` as an object instead of +an array. This can be a more readable way of handling the results. + +##### arguments + +- `tasks` - An array or object containing functions to run. Each function is passed a +`callback(err, result)` which it must call on completion with an error `err` (which can +be `null`) and an optional `result` value. +- `callback(err, results)` - An optional callback to run once all the functions have +completed. This function gets a results array (or object) containing all the result +arguments passed to the task callbacks. + +##### example + +```js +var parallel = require('run-parallel') + +parallel([ + function (callback) { + setTimeout(function () { + callback(null, 'one') + }, 200) + }, + function (callback) { + setTimeout(function () { + callback(null, 'two') + }, 100) + } +], +// optional callback +function (err, results) { + // the results array will equal ['one','two'] even though + // the second function had a shorter timeout. +}) +``` + +This module is basically equavalent to +[`async.parallel`](https://github.com/caolan/async#paralleltasks-callback), but it's +handy to just have the one function you need instead of the kitchen sink. Modularity! +Especially handy if you're serving to the browser and need to reduce your javascript +bundle size. + +Works great in the browser with [browserify](http://browserify.org/)! + +### see also + +- [run-auto](https://github.com/feross/run-auto) +- [run-parallel-limit](https://github.com/feross/run-parallel-limit) +- [run-series](https://github.com/feross/run-series) +- [run-waterfall](https://github.com/feross/run-waterfall) + +### license + +MIT. Copyright (c) [Feross Aboukhadijeh](http://feross.org). diff --git a/node_modules/run-parallel/index.js b/node_modules/run-parallel/index.js new file mode 100644 index 0000000..6307141 --- /dev/null +++ b/node_modules/run-parallel/index.js @@ -0,0 +1,51 @@ +/*! run-parallel. MIT License. Feross Aboukhadijeh */ +module.exports = runParallel + +const queueMicrotask = require('queue-microtask') + +function runParallel (tasks, cb) { + let results, pending, keys + let isSync = true + + if (Array.isArray(tasks)) { + results = [] + pending = tasks.length + } else { + keys = Object.keys(tasks) + results = {} + pending = keys.length + } + + function done (err) { + function end () { + if (cb) cb(err, results) + cb = null + } + if (isSync) queueMicrotask(end) + else end() + } + + function each (i, err, result) { + results[i] = result + if (--pending === 0 || err) { + done(err) + } + } + + if (!pending) { + // empty + done(null) + } else if (keys) { + // object + keys.forEach(function (key) { + tasks[key](function (err, result) { each(key, err, result) }) + }) + } else { + // array + tasks.forEach(function (task, i) { + task(function (err, result) { each(i, err, result) }) + }) + } + + isSync = false +} diff --git a/node_modules/run-parallel/package.json b/node_modules/run-parallel/package.json new file mode 100644 index 0000000..1f14757 --- /dev/null +++ b/node_modules/run-parallel/package.json @@ -0,0 +1,58 @@ +{ + "name": "run-parallel", + "description": "Run an array of functions in parallel", + "version": "1.2.0", + "author": { + "name": "Feross Aboukhadijeh", + "email": "feross@feross.org", + "url": "https://feross.org" + }, + "bugs": { + "url": "https://github.com/feross/run-parallel/issues" + }, + "dependencies": { + "queue-microtask": "^1.2.2" + }, + "devDependencies": { + "airtap": "^3.0.0", + "standard": "*", + "tape": "^5.0.1" + }, + "homepage": "https://github.com/feross/run-parallel", + "keywords": [ + "parallel", + "async", + "function", + "callback", + "asynchronous", + "run", + "array", + "run parallel" + ], + "license": "MIT", + "main": "index.js", + "repository": { + "type": "git", + "url": "git://github.com/feross/run-parallel.git" + }, + "scripts": { + "test": "standard && npm run test-node && npm run test-browser", + "test-browser": "airtap -- test/*.js", + "test-browser-local": "airtap --local -- test/*.js", + "test-node": "tape test/*.js" + }, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] +} diff --git a/node_modules/slash/index.d.ts b/node_modules/slash/index.d.ts new file mode 100644 index 0000000..692c7fd --- /dev/null +++ b/node_modules/slash/index.d.ts @@ -0,0 +1,23 @@ +/** +Convert Windows backslash paths to slash paths: `foo\\bar` ➔ `foo/bar`. + +[Forward-slash paths can be used in Windows](http://superuser.com/a/176395/6877) as long as they're not extended-length paths. + +@param path - A Windows backslash path. +@returns A path with forward slashes. + +@example +``` +import path from 'node:path'; +import slash from 'slash'; + +const string = path.join('foo', 'bar'); +// Unix => foo/bar +// Windows => foo\\bar + +slash(string); +// Unix => foo/bar +// Windows => foo/bar +``` +*/ +export default function slash(path: string): string; diff --git a/node_modules/slash/index.js b/node_modules/slash/index.js new file mode 100644 index 0000000..1b7ee1e --- /dev/null +++ b/node_modules/slash/index.js @@ -0,0 +1,9 @@ +export default function slash(path) { + const isExtendedLengthPath = path.startsWith('\\\\?\\'); + + if (isExtendedLengthPath) { + return path; + } + + return path.replace(/\\/g, '/'); +} diff --git a/node_modules/slash/license b/node_modules/slash/license new file mode 100644 index 0000000..fa7ceba --- /dev/null +++ b/node_modules/slash/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.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. diff --git a/node_modules/slash/package.json b/node_modules/slash/package.json new file mode 100644 index 0000000..a0f507c --- /dev/null +++ b/node_modules/slash/package.json @@ -0,0 +1,39 @@ +{ + "name": "slash", + "version": "5.1.0", + "description": "Convert Windows backslash paths to slash paths", + "license": "MIT", + "repository": "sindresorhus/slash", + "funding": "https://github.com/sponsors/sindresorhus", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "https://sindresorhus.com" + }, + "type": "module", + "exports": "./index.js", + "types": "./index.d.ts", + "engines": { + "node": ">=14.16" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "path", + "seperator", + "slash", + "backslash", + "windows", + "convert" + ], + "devDependencies": { + "ava": "^5.2.0", + "tsd": "^0.28.1", + "xo": "^0.54.2" + } +} diff --git a/node_modules/slash/readme.md b/node_modules/slash/readme.md new file mode 100644 index 0000000..42f74f9 --- /dev/null +++ b/node_modules/slash/readme.md @@ -0,0 +1,36 @@ +# slash + +> Convert Windows backslash paths to slash paths: `foo\\bar` ➔ `foo/bar` + +[Forward-slash paths can be used in Windows](http://superuser.com/a/176395/6877) as long as they're not extended-length paths. + +This was created since the `path` methods in Node.js outputs `\\` paths on Windows. + +## Install + +```sh +npm install slash +``` + +## Usage + +```js +import path from 'node:path'; +import slash from 'slash'; + +const string = path.join('foo', 'bar'); +// Unix => foo/bar +// Windows => foo\\bar + +slash(string); +// Unix => foo/bar +// Windows => foo/bar +``` + +## API + +### slash(path) + +Type: `string` + +Accepts a Windows backslash path and returns a path with forward slashes. diff --git a/node_modules/source-map-js/LICENSE b/node_modules/source-map-js/LICENSE new file mode 100644 index 0000000..ed1b7cf --- /dev/null +++ b/node_modules/source-map-js/LICENSE @@ -0,0 +1,28 @@ + +Copyright (c) 2009-2011, Mozilla Foundation and contributors +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the names of the Mozilla Foundation nor the names of project + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/node_modules/source-map-js/README.md b/node_modules/source-map-js/README.md new file mode 100644 index 0000000..614962d --- /dev/null +++ b/node_modules/source-map-js/README.md @@ -0,0 +1,765 @@ +# Source Map JS + +[![NPM](https://nodei.co/npm/source-map-js.png?downloads=true&downloadRank=true)](https://www.npmjs.com/package/source-map-js) + +Difference between original [source-map](https://github.com/mozilla/source-map): + +> TL,DR: it's fork of original source-map@0.6, but with perfomance optimizations. + +This journey starts from [source-map@0.7.0](https://github.com/mozilla/source-map/blob/master/CHANGELOG.md#070). Some part of it was rewritten to Rust and WASM and API became async. + +It's still a major block for many libraries like PostCSS or Sass for example because they need to migrate the whole API to the async way. This is the reason why 0.6.1 has 2x more downloads than 0.7.3 while it's faster several times. + +![Downloads count](media/downloads.png) + +More important that WASM version has some optimizations in JS code too. This is why [community asked to create branch for 0.6 version](https://github.com/mozilla/source-map/issues/324) and port these optimizations but, sadly, the answer was «no». A bit later I discovered [the issue](https://github.com/mozilla/source-map/issues/370) created by [Ben Rothman (@benthemonkey)](https://github.com/benthemonkey) with no response at all. + +[Roman Dvornov (@lahmatiy)](https://github.com/lahmatiy) wrote a [serveral posts](https://t.me/gorshochekvarit/76) (russian, only, sorry) about source-map library in his own Telegram channel. He mentioned the article [«Maybe you don't need Rust and WASM to speed up your JS»](https://mrale.ph/blog/2018/02/03/maybe-you-dont-need-rust-to-speed-up-your-js.html) written by [Vyacheslav Egorov (@mraleph)](https://github.com/mraleph). This article contains optimizations and hacks that lead to almost the same performance compare to WASM implementation. + +I decided to fork the original source-map and port these optimizations from the article and several others PR from the original source-map. + +--------- + +This is a library to generate and consume the source map format +[described here][format]. + +[format]: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit + +## Use with Node + + $ npm install source-map-js + + + +-------------------------------------------------------------------------------- + + + + + +## Table of Contents + +- [Examples](#examples) + - [Consuming a source map](#consuming-a-source-map) + - [Generating a source map](#generating-a-source-map) + - [With SourceNode (high level API)](#with-sourcenode-high-level-api) + - [With SourceMapGenerator (low level API)](#with-sourcemapgenerator-low-level-api) +- [API](#api) + - [SourceMapConsumer](#sourcemapconsumer) + - [new SourceMapConsumer(rawSourceMap)](#new-sourcemapconsumerrawsourcemap) + - [SourceMapConsumer.prototype.computeColumnSpans()](#sourcemapconsumerprototypecomputecolumnspans) + - [SourceMapConsumer.prototype.originalPositionFor(generatedPosition)](#sourcemapconsumerprototypeoriginalpositionforgeneratedposition) + - [SourceMapConsumer.prototype.generatedPositionFor(originalPosition)](#sourcemapconsumerprototypegeneratedpositionfororiginalposition) + - [SourceMapConsumer.prototype.allGeneratedPositionsFor(originalPosition)](#sourcemapconsumerprototypeallgeneratedpositionsfororiginalposition) + - [SourceMapConsumer.prototype.hasContentsOfAllSources()](#sourcemapconsumerprototypehascontentsofallsources) + - [SourceMapConsumer.prototype.sourceContentFor(source[, returnNullOnMissing])](#sourcemapconsumerprototypesourcecontentforsource-returnnullonmissing) + - [SourceMapConsumer.prototype.eachMapping(callback, context, order)](#sourcemapconsumerprototypeeachmappingcallback-context-order) + - [SourceMapGenerator](#sourcemapgenerator) + - [new SourceMapGenerator([startOfSourceMap])](#new-sourcemapgeneratorstartofsourcemap) + - [SourceMapGenerator.fromSourceMap(sourceMapConsumer)](#sourcemapgeneratorfromsourcemapsourcemapconsumer) + - [SourceMapGenerator.prototype.addMapping(mapping)](#sourcemapgeneratorprototypeaddmappingmapping) + - [SourceMapGenerator.prototype.setSourceContent(sourceFile, sourceContent)](#sourcemapgeneratorprototypesetsourcecontentsourcefile-sourcecontent) + - [SourceMapGenerator.prototype.applySourceMap(sourceMapConsumer[, sourceFile[, sourceMapPath]])](#sourcemapgeneratorprototypeapplysourcemapsourcemapconsumer-sourcefile-sourcemappath) + - [SourceMapGenerator.prototype.toString()](#sourcemapgeneratorprototypetostring) + - [SourceNode](#sourcenode) + - [new SourceNode([line, column, source[, chunk[, name]]])](#new-sourcenodeline-column-source-chunk-name) + - [SourceNode.fromStringWithSourceMap(code, sourceMapConsumer[, relativePath])](#sourcenodefromstringwithsourcemapcode-sourcemapconsumer-relativepath) + - [SourceNode.prototype.add(chunk)](#sourcenodeprototypeaddchunk) + - [SourceNode.prototype.prepend(chunk)](#sourcenodeprototypeprependchunk) + - [SourceNode.prototype.setSourceContent(sourceFile, sourceContent)](#sourcenodeprototypesetsourcecontentsourcefile-sourcecontent) + - [SourceNode.prototype.walk(fn)](#sourcenodeprototypewalkfn) + - [SourceNode.prototype.walkSourceContents(fn)](#sourcenodeprototypewalksourcecontentsfn) + - [SourceNode.prototype.join(sep)](#sourcenodeprototypejoinsep) + - [SourceNode.prototype.replaceRight(pattern, replacement)](#sourcenodeprototypereplacerightpattern-replacement) + - [SourceNode.prototype.toString()](#sourcenodeprototypetostring) + - [SourceNode.prototype.toStringWithSourceMap([startOfSourceMap])](#sourcenodeprototypetostringwithsourcemapstartofsourcemap) + + + +## Examples + +### Consuming a source map + +```js +var rawSourceMap = { + version: 3, + file: 'min.js', + names: ['bar', 'baz', 'n'], + sources: ['one.js', 'two.js'], + sourceRoot: 'http://example.com/www/js/', + mappings: 'CAAC,IAAI,IAAM,SAAUA,GAClB,OAAOC,IAAID;CCDb,IAAI,IAAM,SAAUE,GAClB,OAAOA' +}; + +var smc = new SourceMapConsumer(rawSourceMap); + +console.log(smc.sources); +// [ 'http://example.com/www/js/one.js', +// 'http://example.com/www/js/two.js' ] + +console.log(smc.originalPositionFor({ + line: 2, + column: 28 +})); +// { source: 'http://example.com/www/js/two.js', +// line: 2, +// column: 10, +// name: 'n' } + +console.log(smc.generatedPositionFor({ + source: 'http://example.com/www/js/two.js', + line: 2, + column: 10 +})); +// { line: 2, column: 28 } + +smc.eachMapping(function (m) { + // ... +}); +``` + +### Generating a source map + +In depth guide: +[**Compiling to JavaScript, and Debugging with Source Maps**](https://hacks.mozilla.org/2013/05/compiling-to-javascript-and-debugging-with-source-maps/) + +#### With SourceNode (high level API) + +```js +function compile(ast) { + switch (ast.type) { + case 'BinaryExpression': + return new SourceNode( + ast.location.line, + ast.location.column, + ast.location.source, + [compile(ast.left), " + ", compile(ast.right)] + ); + case 'Literal': + return new SourceNode( + ast.location.line, + ast.location.column, + ast.location.source, + String(ast.value) + ); + // ... + default: + throw new Error("Bad AST"); + } +} + +var ast = parse("40 + 2", "add.js"); +console.log(compile(ast).toStringWithSourceMap({ + file: 'add.js' +})); +// { code: '40 + 2', +// map: [object SourceMapGenerator] } +``` + +#### With SourceMapGenerator (low level API) + +```js +var map = new SourceMapGenerator({ + file: "source-mapped.js" +}); + +map.addMapping({ + generated: { + line: 10, + column: 35 + }, + source: "foo.js", + original: { + line: 33, + column: 2 + }, + name: "christopher" +}); + +console.log(map.toString()); +// '{"version":3,"file":"source-mapped.js","sources":["foo.js"],"names":["christopher"],"mappings":";;;;;;;;;mCAgCEA"}' +``` + +## API + +Get a reference to the module: + +```js +// Node.js +var sourceMap = require('source-map'); + +// Browser builds +var sourceMap = window.sourceMap; + +// Inside Firefox +const sourceMap = require("devtools/toolkit/sourcemap/source-map.js"); +``` + +### SourceMapConsumer + +A SourceMapConsumer instance represents a parsed source map which we can query +for information about the original file positions by giving it a file position +in the generated source. + +#### new SourceMapConsumer(rawSourceMap) + +The only parameter is the raw source map (either as a string which can be +`JSON.parse`'d, or an object). According to the spec, source maps have the +following attributes: + +* `version`: Which version of the source map spec this map is following. + +* `sources`: An array of URLs to the original source files. + +* `names`: An array of identifiers which can be referenced by individual + mappings. + +* `sourceRoot`: Optional. The URL root from which all sources are relative. + +* `sourcesContent`: Optional. An array of contents of the original source files. + +* `mappings`: A string of base64 VLQs which contain the actual mappings. + +* `file`: Optional. The generated filename this source map is associated with. + +```js +var consumer = new sourceMap.SourceMapConsumer(rawSourceMapJsonData); +``` + +#### SourceMapConsumer.prototype.computeColumnSpans() + +Compute the last column for each generated mapping. The last column is +inclusive. + +```js +// Before: +consumer.allGeneratedPositionsFor({ line: 2, source: "foo.coffee" }) +// [ { line: 2, +// column: 1 }, +// { line: 2, +// column: 10 }, +// { line: 2, +// column: 20 } ] + +consumer.computeColumnSpans(); + +// After: +consumer.allGeneratedPositionsFor({ line: 2, source: "foo.coffee" }) +// [ { line: 2, +// column: 1, +// lastColumn: 9 }, +// { line: 2, +// column: 10, +// lastColumn: 19 }, +// { line: 2, +// column: 20, +// lastColumn: Infinity } ] + +``` + +#### SourceMapConsumer.prototype.originalPositionFor(generatedPosition) + +Returns the original source, line, and column information for the generated +source's line and column positions provided. The only argument is an object with +the following properties: + +* `line`: The line number in the generated source. Line numbers in + this library are 1-based (note that the underlying source map + specification uses 0-based line numbers -- this library handles the + translation). + +* `column`: The column number in the generated source. Column numbers + in this library are 0-based. + +* `bias`: Either `SourceMapConsumer.GREATEST_LOWER_BOUND` or + `SourceMapConsumer.LEAST_UPPER_BOUND`. Specifies whether to return the closest + element that is smaller than or greater than the one we are searching for, + respectively, if the exact element cannot be found. Defaults to + `SourceMapConsumer.GREATEST_LOWER_BOUND`. + +and an object is returned with the following properties: + +* `source`: The original source file, or null if this information is not + available. + +* `line`: The line number in the original source, or null if this information is + not available. The line number is 1-based. + +* `column`: The column number in the original source, or null if this + information is not available. The column number is 0-based. + +* `name`: The original identifier, or null if this information is not available. + +```js +consumer.originalPositionFor({ line: 2, column: 10 }) +// { source: 'foo.coffee', +// line: 2, +// column: 2, +// name: null } + +consumer.originalPositionFor({ line: 99999999999999999, column: 999999999999999 }) +// { source: null, +// line: null, +// column: null, +// name: null } +``` + +#### SourceMapConsumer.prototype.generatedPositionFor(originalPosition) + +Returns the generated line and column information for the original source, +line, and column positions provided. The only argument is an object with +the following properties: + +* `source`: The filename of the original source. + +* `line`: The line number in the original source. The line number is + 1-based. + +* `column`: The column number in the original source. The column + number is 0-based. + +and an object is returned with the following properties: + +* `line`: The line number in the generated source, or null. The line + number is 1-based. + +* `column`: The column number in the generated source, or null. The + column number is 0-based. + +```js +consumer.generatedPositionFor({ source: "example.js", line: 2, column: 10 }) +// { line: 1, +// column: 56 } +``` + +#### SourceMapConsumer.prototype.allGeneratedPositionsFor(originalPosition) + +Returns all generated line and column information for the original source, line, +and column provided. If no column is provided, returns all mappings +corresponding to a either the line we are searching for or the next closest line +that has any mappings. Otherwise, returns all mappings corresponding to the +given line and either the column we are searching for or the next closest column +that has any offsets. + +The only argument is an object with the following properties: + +* `source`: The filename of the original source. + +* `line`: The line number in the original source. The line number is + 1-based. + +* `column`: Optional. The column number in the original source. The + column number is 0-based. + +and an array of objects is returned, each with the following properties: + +* `line`: The line number in the generated source, or null. The line + number is 1-based. + +* `column`: The column number in the generated source, or null. The + column number is 0-based. + +```js +consumer.allGeneratedpositionsfor({ line: 2, source: "foo.coffee" }) +// [ { line: 2, +// column: 1 }, +// { line: 2, +// column: 10 }, +// { line: 2, +// column: 20 } ] +``` + +#### SourceMapConsumer.prototype.hasContentsOfAllSources() + +Return true if we have the embedded source content for every source listed in +the source map, false otherwise. + +In other words, if this method returns `true`, then +`consumer.sourceContentFor(s)` will succeed for every source `s` in +`consumer.sources`. + +```js +// ... +if (consumer.hasContentsOfAllSources()) { + consumerReadyCallback(consumer); +} else { + fetchSources(consumer, consumerReadyCallback); +} +// ... +``` + +#### SourceMapConsumer.prototype.sourceContentFor(source[, returnNullOnMissing]) + +Returns the original source content for the source provided. The only +argument is the URL of the original source file. + +If the source content for the given source is not found, then an error is +thrown. Optionally, pass `true` as the second param to have `null` returned +instead. + +```js +consumer.sources +// [ "my-cool-lib.clj" ] + +consumer.sourceContentFor("my-cool-lib.clj") +// "..." + +consumer.sourceContentFor("this is not in the source map"); +// Error: "this is not in the source map" is not in the source map + +consumer.sourceContentFor("this is not in the source map", true); +// null +``` + +#### SourceMapConsumer.prototype.eachMapping(callback, context, order) + +Iterate over each mapping between an original source/line/column and a +generated line/column in this source map. + +* `callback`: The function that is called with each mapping. Mappings have the + form `{ source, generatedLine, generatedColumn, originalLine, originalColumn, + name }` + +* `context`: Optional. If specified, this object will be the value of `this` + every time that `callback` is called. + +* `order`: Either `SourceMapConsumer.GENERATED_ORDER` or + `SourceMapConsumer.ORIGINAL_ORDER`. Specifies whether you want to iterate over + the mappings sorted by the generated file's line/column order or the + original's source/line/column order, respectively. Defaults to + `SourceMapConsumer.GENERATED_ORDER`. + +```js +consumer.eachMapping(function (m) { console.log(m); }) +// ... +// { source: 'illmatic.js', +// generatedLine: 1, +// generatedColumn: 0, +// originalLine: 1, +// originalColumn: 0, +// name: null } +// { source: 'illmatic.js', +// generatedLine: 2, +// generatedColumn: 0, +// originalLine: 2, +// originalColumn: 0, +// name: null } +// ... +``` +### SourceMapGenerator + +An instance of the SourceMapGenerator represents a source map which is being +built incrementally. + +#### new SourceMapGenerator([startOfSourceMap]) + +You may pass an object with the following properties: + +* `file`: The filename of the generated source that this source map is + associated with. + +* `sourceRoot`: A root for all relative URLs in this source map. + +* `skipValidation`: Optional. When `true`, disables validation of mappings as + they are added. This can improve performance but should be used with + discretion, as a last resort. Even then, one should avoid using this flag when + running tests, if possible. + +* `ignoreInvalidMapping`: Optional. When `true`, instead of throwing error on + invalid mapping, it will be ignored. + +```js +var generator = new sourceMap.SourceMapGenerator({ + file: "my-generated-javascript-file.js", + sourceRoot: "http://example.com/app/js/" +}); +``` + +#### SourceMapGenerator.fromSourceMap(sourceMapConsumer, sourceMapGeneratorOptions) + +Creates a new `SourceMapGenerator` from an existing `SourceMapConsumer` instance. + +* `sourceMapConsumer` The SourceMap. + +* `sourceMapGeneratorOptions` options that will be passed to the SourceMapGenerator constructor which used under the hood. + +```js +var generator = sourceMap.SourceMapGenerator.fromSourceMap(consumer, { + ignoreInvalidMapping: true, +}); +``` + +#### SourceMapGenerator.prototype.addMapping(mapping) + +Add a single mapping from original source line and column to the generated +source's line and column for this source map being created. The mapping object +should have the following properties: + +* `generated`: An object with the generated line and column positions. + +* `original`: An object with the original line and column positions. + +* `source`: The original source file (relative to the sourceRoot). + +* `name`: An optional original token name for this mapping. + +```js +generator.addMapping({ + source: "module-one.scm", + original: { line: 128, column: 0 }, + generated: { line: 3, column: 456 } +}) +``` + +#### SourceMapGenerator.prototype.setSourceContent(sourceFile, sourceContent) + +Set the source content for an original source file. + +* `sourceFile` the URL of the original source file. + +* `sourceContent` the content of the source file. + +```js +generator.setSourceContent("module-one.scm", + fs.readFileSync("path/to/module-one.scm")) +``` + +#### SourceMapGenerator.prototype.applySourceMap(sourceMapConsumer[, sourceFile[, sourceMapPath]]) + +Applies a SourceMap for a source file to the SourceMap. +Each mapping to the supplied source file is rewritten using the +supplied SourceMap. Note: The resolution for the resulting mappings +is the minimum of this map and the supplied map. + +* `sourceMapConsumer`: The SourceMap to be applied. + +* `sourceFile`: Optional. The filename of the source file. + If omitted, sourceMapConsumer.file will be used, if it exists. + Otherwise an error will be thrown. + +* `sourceMapPath`: Optional. The dirname of the path to the SourceMap + to be applied. If relative, it is relative to the SourceMap. + + This parameter is needed when the two SourceMaps aren't in the same + directory, and the SourceMap to be applied contains relative source + paths. If so, those relative source paths need to be rewritten + relative to the SourceMap. + + If omitted, it is assumed that both SourceMaps are in the same directory, + thus not needing any rewriting. (Supplying `'.'` has the same effect.) + +#### SourceMapGenerator.prototype.toString() + +Renders the source map being generated to a string. + +```js +generator.toString() +// '{"version":3,"sources":["module-one.scm"],"names":[],"mappings":"...snip...","file":"my-generated-javascript-file.js","sourceRoot":"http://example.com/app/js/"}' +``` + +### SourceNode + +SourceNodes provide a way to abstract over interpolating and/or concatenating +snippets of generated JavaScript source code, while maintaining the line and +column information associated between those snippets and the original source +code. This is useful as the final intermediate representation a compiler might +use before outputting the generated JS and source map. + +#### new SourceNode([line, column, source[, chunk[, name]]]) + +* `line`: The original line number associated with this source node, or null if + it isn't associated with an original line. The line number is 1-based. + +* `column`: The original column number associated with this source node, or null + if it isn't associated with an original column. The column number + is 0-based. + +* `source`: The original source's filename; null if no filename is provided. + +* `chunk`: Optional. Is immediately passed to `SourceNode.prototype.add`, see + below. + +* `name`: Optional. The original identifier. + +```js +var node = new SourceNode(1, 2, "a.cpp", [ + new SourceNode(3, 4, "b.cpp", "extern int status;\n"), + new SourceNode(5, 6, "c.cpp", "std::string* make_string(size_t n);\n"), + new SourceNode(7, 8, "d.cpp", "int main(int argc, char** argv) {}\n"), +]); +``` + +#### SourceNode.fromStringWithSourceMap(code, sourceMapConsumer[, relativePath]) + +Creates a SourceNode from generated code and a SourceMapConsumer. + +* `code`: The generated code + +* `sourceMapConsumer` The SourceMap for the generated code + +* `relativePath` The optional path that relative sources in `sourceMapConsumer` + should be relative to. + +```js +var consumer = new SourceMapConsumer(fs.readFileSync("path/to/my-file.js.map", "utf8")); +var node = SourceNode.fromStringWithSourceMap(fs.readFileSync("path/to/my-file.js"), + consumer); +``` + +#### SourceNode.prototype.add(chunk) + +Add a chunk of generated JS to this source node. + +* `chunk`: A string snippet of generated JS code, another instance of + `SourceNode`, or an array where each member is one of those things. + +```js +node.add(" + "); +node.add(otherNode); +node.add([leftHandOperandNode, " + ", rightHandOperandNode]); +``` + +#### SourceNode.prototype.prepend(chunk) + +Prepend a chunk of generated JS to this source node. + +* `chunk`: A string snippet of generated JS code, another instance of + `SourceNode`, or an array where each member is one of those things. + +```js +node.prepend("/** Build Id: f783haef86324gf **/\n\n"); +``` + +#### SourceNode.prototype.setSourceContent(sourceFile, sourceContent) + +Set the source content for a source file. This will be added to the +`SourceMap` in the `sourcesContent` field. + +* `sourceFile`: The filename of the source file + +* `sourceContent`: The content of the source file + +```js +node.setSourceContent("module-one.scm", + fs.readFileSync("path/to/module-one.scm")) +``` + +#### SourceNode.prototype.walk(fn) + +Walk over the tree of JS snippets in this node and its children. The walking +function is called once for each snippet of JS and is passed that snippet and +the its original associated source's line/column location. + +* `fn`: The traversal function. + +```js +var node = new SourceNode(1, 2, "a.js", [ + new SourceNode(3, 4, "b.js", "uno"), + "dos", + [ + "tres", + new SourceNode(5, 6, "c.js", "quatro") + ] +]); + +node.walk(function (code, loc) { console.log("WALK:", code, loc); }) +// WALK: uno { source: 'b.js', line: 3, column: 4, name: null } +// WALK: dos { source: 'a.js', line: 1, column: 2, name: null } +// WALK: tres { source: 'a.js', line: 1, column: 2, name: null } +// WALK: quatro { source: 'c.js', line: 5, column: 6, name: null } +``` + +#### SourceNode.prototype.walkSourceContents(fn) + +Walk over the tree of SourceNodes. The walking function is called for each +source file content and is passed the filename and source content. + +* `fn`: The traversal function. + +```js +var a = new SourceNode(1, 2, "a.js", "generated from a"); +a.setSourceContent("a.js", "original a"); +var b = new SourceNode(1, 2, "b.js", "generated from b"); +b.setSourceContent("b.js", "original b"); +var c = new SourceNode(1, 2, "c.js", "generated from c"); +c.setSourceContent("c.js", "original c"); + +var node = new SourceNode(null, null, null, [a, b, c]); +node.walkSourceContents(function (source, contents) { console.log("WALK:", source, ":", contents); }) +// WALK: a.js : original a +// WALK: b.js : original b +// WALK: c.js : original c +``` + +#### SourceNode.prototype.join(sep) + +Like `Array.prototype.join` except for SourceNodes. Inserts the separator +between each of this source node's children. + +* `sep`: The separator. + +```js +var lhs = new SourceNode(1, 2, "a.rs", "my_copy"); +var operand = new SourceNode(3, 4, "a.rs", "="); +var rhs = new SourceNode(5, 6, "a.rs", "orig.clone()"); + +var node = new SourceNode(null, null, null, [ lhs, operand, rhs ]); +var joinedNode = node.join(" "); +``` + +#### SourceNode.prototype.replaceRight(pattern, replacement) + +Call `String.prototype.replace` on the very right-most source snippet. Useful +for trimming white space from the end of a source node, etc. + +* `pattern`: The pattern to replace. + +* `replacement`: The thing to replace the pattern with. + +```js +// Trim trailing white space. +node.replaceRight(/\s*$/, ""); +``` + +#### SourceNode.prototype.toString() + +Return the string representation of this source node. Walks over the tree and +concatenates all the various snippets together to one string. + +```js +var node = new SourceNode(1, 2, "a.js", [ + new SourceNode(3, 4, "b.js", "uno"), + "dos", + [ + "tres", + new SourceNode(5, 6, "c.js", "quatro") + ] +]); + +node.toString() +// 'unodostresquatro' +``` + +#### SourceNode.prototype.toStringWithSourceMap([startOfSourceMap]) + +Returns the string representation of this tree of source nodes, plus a +SourceMapGenerator which contains all the mappings between the generated and +original sources. + +The arguments are the same as those to `new SourceMapGenerator`. + +```js +var node = new SourceNode(1, 2, "a.js", [ + new SourceNode(3, 4, "b.js", "uno"), + "dos", + [ + "tres", + new SourceNode(5, 6, "c.js", "quatro") + ] +]); + +node.toStringWithSourceMap({ file: "my-output-file.js" }) +// { code: 'unodostresquatro', +// map: [object SourceMapGenerator] } +``` diff --git a/node_modules/source-map-js/lib/array-set.js b/node_modules/source-map-js/lib/array-set.js new file mode 100644 index 0000000..fbd5c81 --- /dev/null +++ b/node_modules/source-map-js/lib/array-set.js @@ -0,0 +1,121 @@ +/* -*- Mode: js; js-indent-level: 2; -*- */ +/* + * Copyright 2011 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE or: + * http://opensource.org/licenses/BSD-3-Clause + */ + +var util = require('./util'); +var has = Object.prototype.hasOwnProperty; +var hasNativeMap = typeof Map !== "undefined"; + +/** + * A data structure which is a combination of an array and a set. Adding a new + * member is O(1), testing for membership is O(1), and finding the index of an + * element is O(1). Removing elements from the set is not supported. Only + * strings are supported for membership. + */ +function ArraySet() { + this._array = []; + this._set = hasNativeMap ? new Map() : Object.create(null); +} + +/** + * Static method for creating ArraySet instances from an existing array. + */ +ArraySet.fromArray = function ArraySet_fromArray(aArray, aAllowDuplicates) { + var set = new ArraySet(); + for (var i = 0, len = aArray.length; i < len; i++) { + set.add(aArray[i], aAllowDuplicates); + } + return set; +}; + +/** + * Return how many unique items are in this ArraySet. If duplicates have been + * added, than those do not count towards the size. + * + * @returns Number + */ +ArraySet.prototype.size = function ArraySet_size() { + return hasNativeMap ? this._set.size : Object.getOwnPropertyNames(this._set).length; +}; + +/** + * Add the given string to this set. + * + * @param String aStr + */ +ArraySet.prototype.add = function ArraySet_add(aStr, aAllowDuplicates) { + var sStr = hasNativeMap ? aStr : util.toSetString(aStr); + var isDuplicate = hasNativeMap ? this.has(aStr) : has.call(this._set, sStr); + var idx = this._array.length; + if (!isDuplicate || aAllowDuplicates) { + this._array.push(aStr); + } + if (!isDuplicate) { + if (hasNativeMap) { + this._set.set(aStr, idx); + } else { + this._set[sStr] = idx; + } + } +}; + +/** + * Is the given string a member of this set? + * + * @param String aStr + */ +ArraySet.prototype.has = function ArraySet_has(aStr) { + if (hasNativeMap) { + return this._set.has(aStr); + } else { + var sStr = util.toSetString(aStr); + return has.call(this._set, sStr); + } +}; + +/** + * What is the index of the given string in the array? + * + * @param String aStr + */ +ArraySet.prototype.indexOf = function ArraySet_indexOf(aStr) { + if (hasNativeMap) { + var idx = this._set.get(aStr); + if (idx >= 0) { + return idx; + } + } else { + var sStr = util.toSetString(aStr); + if (has.call(this._set, sStr)) { + return this._set[sStr]; + } + } + + throw new Error('"' + aStr + '" is not in the set.'); +}; + +/** + * What is the element at the given index? + * + * @param Number aIdx + */ +ArraySet.prototype.at = function ArraySet_at(aIdx) { + if (aIdx >= 0 && aIdx < this._array.length) { + return this._array[aIdx]; + } + throw new Error('No element indexed by ' + aIdx); +}; + +/** + * Returns the array representation of this set (which has the proper indices + * indicated by indexOf). Note that this is a copy of the internal array used + * for storing the members so that no one can mess with internal state. + */ +ArraySet.prototype.toArray = function ArraySet_toArray() { + return this._array.slice(); +}; + +exports.ArraySet = ArraySet; diff --git a/node_modules/source-map-js/lib/base64-vlq.js b/node_modules/source-map-js/lib/base64-vlq.js new file mode 100644 index 0000000..612b404 --- /dev/null +++ b/node_modules/source-map-js/lib/base64-vlq.js @@ -0,0 +1,140 @@ +/* -*- Mode: js; js-indent-level: 2; -*- */ +/* + * Copyright 2011 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE or: + * http://opensource.org/licenses/BSD-3-Clause + * + * Based on the Base 64 VLQ implementation in Closure Compiler: + * https://code.google.com/p/closure-compiler/source/browse/trunk/src/com/google/debugging/sourcemap/Base64VLQ.java + * + * Copyright 2011 The Closure Compiler Authors. All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of Google Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +var base64 = require('./base64'); + +// A single base 64 digit can contain 6 bits of data. For the base 64 variable +// length quantities we use in the source map spec, the first bit is the sign, +// the next four bits are the actual value, and the 6th bit is the +// continuation bit. The continuation bit tells us whether there are more +// digits in this value following this digit. +// +// Continuation +// | Sign +// | | +// V V +// 101011 + +var VLQ_BASE_SHIFT = 5; + +// binary: 100000 +var VLQ_BASE = 1 << VLQ_BASE_SHIFT; + +// binary: 011111 +var VLQ_BASE_MASK = VLQ_BASE - 1; + +// binary: 100000 +var VLQ_CONTINUATION_BIT = VLQ_BASE; + +/** + * Converts from a two-complement value to a value where the sign bit is + * placed in the least significant bit. For example, as decimals: + * 1 becomes 2 (10 binary), -1 becomes 3 (11 binary) + * 2 becomes 4 (100 binary), -2 becomes 5 (101 binary) + */ +function toVLQSigned(aValue) { + return aValue < 0 + ? ((-aValue) << 1) + 1 + : (aValue << 1) + 0; +} + +/** + * Converts to a two-complement value from a value where the sign bit is + * placed in the least significant bit. For example, as decimals: + * 2 (10 binary) becomes 1, 3 (11 binary) becomes -1 + * 4 (100 binary) becomes 2, 5 (101 binary) becomes -2 + */ +function fromVLQSigned(aValue) { + var isNegative = (aValue & 1) === 1; + var shifted = aValue >> 1; + return isNegative + ? -shifted + : shifted; +} + +/** + * Returns the base 64 VLQ encoded value. + */ +exports.encode = function base64VLQ_encode(aValue) { + var encoded = ""; + var digit; + + var vlq = toVLQSigned(aValue); + + do { + digit = vlq & VLQ_BASE_MASK; + vlq >>>= VLQ_BASE_SHIFT; + if (vlq > 0) { + // There are still more digits in this value, so we must make sure the + // continuation bit is marked. + digit |= VLQ_CONTINUATION_BIT; + } + encoded += base64.encode(digit); + } while (vlq > 0); + + return encoded; +}; + +/** + * Decodes the next base 64 VLQ value from the given string and returns the + * value and the rest of the string via the out parameter. + */ +exports.decode = function base64VLQ_decode(aStr, aIndex, aOutParam) { + var strLen = aStr.length; + var result = 0; + var shift = 0; + var continuation, digit; + + do { + if (aIndex >= strLen) { + throw new Error("Expected more digits in base 64 VLQ value."); + } + + digit = base64.decode(aStr.charCodeAt(aIndex++)); + if (digit === -1) { + throw new Error("Invalid base64 digit: " + aStr.charAt(aIndex - 1)); + } + + continuation = !!(digit & VLQ_CONTINUATION_BIT); + digit &= VLQ_BASE_MASK; + result = result + (digit << shift); + shift += VLQ_BASE_SHIFT; + } while (continuation); + + aOutParam.value = fromVLQSigned(result); + aOutParam.rest = aIndex; +}; diff --git a/node_modules/source-map-js/lib/base64.js b/node_modules/source-map-js/lib/base64.js new file mode 100644 index 0000000..8aa86b3 --- /dev/null +++ b/node_modules/source-map-js/lib/base64.js @@ -0,0 +1,67 @@ +/* -*- Mode: js; js-indent-level: 2; -*- */ +/* + * Copyright 2011 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE or: + * http://opensource.org/licenses/BSD-3-Clause + */ + +var intToCharMap = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'.split(''); + +/** + * Encode an integer in the range of 0 to 63 to a single base 64 digit. + */ +exports.encode = function (number) { + if (0 <= number && number < intToCharMap.length) { + return intToCharMap[number]; + } + throw new TypeError("Must be between 0 and 63: " + number); +}; + +/** + * Decode a single base 64 character code digit to an integer. Returns -1 on + * failure. + */ +exports.decode = function (charCode) { + var bigA = 65; // 'A' + var bigZ = 90; // 'Z' + + var littleA = 97; // 'a' + var littleZ = 122; // 'z' + + var zero = 48; // '0' + var nine = 57; // '9' + + var plus = 43; // '+' + var slash = 47; // '/' + + var littleOffset = 26; + var numberOffset = 52; + + // 0 - 25: ABCDEFGHIJKLMNOPQRSTUVWXYZ + if (bigA <= charCode && charCode <= bigZ) { + return (charCode - bigA); + } + + // 26 - 51: abcdefghijklmnopqrstuvwxyz + if (littleA <= charCode && charCode <= littleZ) { + return (charCode - littleA + littleOffset); + } + + // 52 - 61: 0123456789 + if (zero <= charCode && charCode <= nine) { + return (charCode - zero + numberOffset); + } + + // 62: + + if (charCode == plus) { + return 62; + } + + // 63: / + if (charCode == slash) { + return 63; + } + + // Invalid base64 digit. + return -1; +}; diff --git a/node_modules/source-map-js/lib/binary-search.js b/node_modules/source-map-js/lib/binary-search.js new file mode 100644 index 0000000..010ac94 --- /dev/null +++ b/node_modules/source-map-js/lib/binary-search.js @@ -0,0 +1,111 @@ +/* -*- Mode: js; js-indent-level: 2; -*- */ +/* + * Copyright 2011 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE or: + * http://opensource.org/licenses/BSD-3-Clause + */ + +exports.GREATEST_LOWER_BOUND = 1; +exports.LEAST_UPPER_BOUND = 2; + +/** + * Recursive implementation of binary search. + * + * @param aLow Indices here and lower do not contain the needle. + * @param aHigh Indices here and higher do not contain the needle. + * @param aNeedle The element being searched for. + * @param aHaystack The non-empty array being searched. + * @param aCompare Function which takes two elements and returns -1, 0, or 1. + * @param aBias Either 'binarySearch.GREATEST_LOWER_BOUND' or + * 'binarySearch.LEAST_UPPER_BOUND'. Specifies whether to return the + * closest element that is smaller than or greater than the one we are + * searching for, respectively, if the exact element cannot be found. + */ +function recursiveSearch(aLow, aHigh, aNeedle, aHaystack, aCompare, aBias) { + // This function terminates when one of the following is true: + // + // 1. We find the exact element we are looking for. + // + // 2. We did not find the exact element, but we can return the index of + // the next-closest element. + // + // 3. We did not find the exact element, and there is no next-closest + // element than the one we are searching for, so we return -1. + var mid = Math.floor((aHigh - aLow) / 2) + aLow; + var cmp = aCompare(aNeedle, aHaystack[mid], true); + if (cmp === 0) { + // Found the element we are looking for. + return mid; + } + else if (cmp > 0) { + // Our needle is greater than aHaystack[mid]. + if (aHigh - mid > 1) { + // The element is in the upper half. + return recursiveSearch(mid, aHigh, aNeedle, aHaystack, aCompare, aBias); + } + + // The exact needle element was not found in this haystack. Determine if + // we are in termination case (3) or (2) and return the appropriate thing. + if (aBias == exports.LEAST_UPPER_BOUND) { + return aHigh < aHaystack.length ? aHigh : -1; + } else { + return mid; + } + } + else { + // Our needle is less than aHaystack[mid]. + if (mid - aLow > 1) { + // The element is in the lower half. + return recursiveSearch(aLow, mid, aNeedle, aHaystack, aCompare, aBias); + } + + // we are in termination case (3) or (2) and return the appropriate thing. + if (aBias == exports.LEAST_UPPER_BOUND) { + return mid; + } else { + return aLow < 0 ? -1 : aLow; + } + } +} + +/** + * This is an implementation of binary search which will always try and return + * the index of the closest element if there is no exact hit. This is because + * mappings between original and generated line/col pairs are single points, + * and there is an implicit region between each of them, so a miss just means + * that you aren't on the very start of a region. + * + * @param aNeedle The element you are looking for. + * @param aHaystack The array that is being searched. + * @param aCompare A function which takes the needle and an element in the + * array and returns -1, 0, or 1 depending on whether the needle is less + * than, equal to, or greater than the element, respectively. + * @param aBias Either 'binarySearch.GREATEST_LOWER_BOUND' or + * 'binarySearch.LEAST_UPPER_BOUND'. Specifies whether to return the + * closest element that is smaller than or greater than the one we are + * searching for, respectively, if the exact element cannot be found. + * Defaults to 'binarySearch.GREATEST_LOWER_BOUND'. + */ +exports.search = function search(aNeedle, aHaystack, aCompare, aBias) { + if (aHaystack.length === 0) { + return -1; + } + + var index = recursiveSearch(-1, aHaystack.length, aNeedle, aHaystack, + aCompare, aBias || exports.GREATEST_LOWER_BOUND); + if (index < 0) { + return -1; + } + + // We have found either the exact element, or the next-closest element than + // the one we are searching for. However, there may be more than one such + // element. Make sure we always return the smallest of these. + while (index - 1 >= 0) { + if (aCompare(aHaystack[index], aHaystack[index - 1], true) !== 0) { + break; + } + --index; + } + + return index; +}; diff --git a/node_modules/source-map-js/lib/mapping-list.js b/node_modules/source-map-js/lib/mapping-list.js new file mode 100644 index 0000000..06d1274 --- /dev/null +++ b/node_modules/source-map-js/lib/mapping-list.js @@ -0,0 +1,79 @@ +/* -*- Mode: js; js-indent-level: 2; -*- */ +/* + * Copyright 2014 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE or: + * http://opensource.org/licenses/BSD-3-Clause + */ + +var util = require('./util'); + +/** + * Determine whether mappingB is after mappingA with respect to generated + * position. + */ +function generatedPositionAfter(mappingA, mappingB) { + // Optimized for most common case + var lineA = mappingA.generatedLine; + var lineB = mappingB.generatedLine; + var columnA = mappingA.generatedColumn; + var columnB = mappingB.generatedColumn; + return lineB > lineA || lineB == lineA && columnB >= columnA || + util.compareByGeneratedPositionsInflated(mappingA, mappingB) <= 0; +} + +/** + * A data structure to provide a sorted view of accumulated mappings in a + * performance conscious manner. It trades a neglibable overhead in general + * case for a large speedup in case of mappings being added in order. + */ +function MappingList() { + this._array = []; + this._sorted = true; + // Serves as infimum + this._last = {generatedLine: -1, generatedColumn: 0}; +} + +/** + * Iterate through internal items. This method takes the same arguments that + * `Array.prototype.forEach` takes. + * + * NOTE: The order of the mappings is NOT guaranteed. + */ +MappingList.prototype.unsortedForEach = + function MappingList_forEach(aCallback, aThisArg) { + this._array.forEach(aCallback, aThisArg); + }; + +/** + * Add the given source mapping. + * + * @param Object aMapping + */ +MappingList.prototype.add = function MappingList_add(aMapping) { + if (generatedPositionAfter(this._last, aMapping)) { + this._last = aMapping; + this._array.push(aMapping); + } else { + this._sorted = false; + this._array.push(aMapping); + } +}; + +/** + * Returns the flat, sorted array of mappings. The mappings are sorted by + * generated position. + * + * WARNING: This method returns internal data without copying, for + * performance. The return value must NOT be mutated, and should be treated as + * an immutable borrow. If you want to take ownership, you must make your own + * copy. + */ +MappingList.prototype.toArray = function MappingList_toArray() { + if (!this._sorted) { + this._array.sort(util.compareByGeneratedPositionsInflated); + this._sorted = true; + } + return this._array; +}; + +exports.MappingList = MappingList; diff --git a/node_modules/source-map-js/lib/quick-sort.js b/node_modules/source-map-js/lib/quick-sort.js new file mode 100644 index 0000000..23f9eda --- /dev/null +++ b/node_modules/source-map-js/lib/quick-sort.js @@ -0,0 +1,132 @@ +/* -*- Mode: js; js-indent-level: 2; -*- */ +/* + * Copyright 2011 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE or: + * http://opensource.org/licenses/BSD-3-Clause + */ + +// It turns out that some (most?) JavaScript engines don't self-host +// `Array.prototype.sort`. This makes sense because C++ will likely remain +// faster than JS when doing raw CPU-intensive sorting. However, when using a +// custom comparator function, calling back and forth between the VM's C++ and +// JIT'd JS is rather slow *and* loses JIT type information, resulting in +// worse generated code for the comparator function than would be optimal. In +// fact, when sorting with a comparator, these costs outweigh the benefits of +// sorting in C++. By using our own JS-implemented Quick Sort (below), we get +// a ~3500ms mean speed-up in `bench/bench.html`. + +function SortTemplate(comparator) { + +/** + * Swap the elements indexed by `x` and `y` in the array `ary`. + * + * @param {Array} ary + * The array. + * @param {Number} x + * The index of the first item. + * @param {Number} y + * The index of the second item. + */ +function swap(ary, x, y) { + var temp = ary[x]; + ary[x] = ary[y]; + ary[y] = temp; +} + +/** + * Returns a random integer within the range `low .. high` inclusive. + * + * @param {Number} low + * The lower bound on the range. + * @param {Number} high + * The upper bound on the range. + */ +function randomIntInRange(low, high) { + return Math.round(low + (Math.random() * (high - low))); +} + +/** + * The Quick Sort algorithm. + * + * @param {Array} ary + * An array to sort. + * @param {function} comparator + * Function to use to compare two items. + * @param {Number} p + * Start index of the array + * @param {Number} r + * End index of the array + */ +function doQuickSort(ary, comparator, p, r) { + // If our lower bound is less than our upper bound, we (1) partition the + // array into two pieces and (2) recurse on each half. If it is not, this is + // the empty array and our base case. + + if (p < r) { + // (1) Partitioning. + // + // The partitioning chooses a pivot between `p` and `r` and moves all + // elements that are less than or equal to the pivot to the before it, and + // all the elements that are greater than it after it. The effect is that + // once partition is done, the pivot is in the exact place it will be when + // the array is put in sorted order, and it will not need to be moved + // again. This runs in O(n) time. + + // Always choose a random pivot so that an input array which is reverse + // sorted does not cause O(n^2) running time. + var pivotIndex = randomIntInRange(p, r); + var i = p - 1; + + swap(ary, pivotIndex, r); + var pivot = ary[r]; + + // Immediately after `j` is incremented in this loop, the following hold + // true: + // + // * Every element in `ary[p .. i]` is less than or equal to the pivot. + // + // * Every element in `ary[i+1 .. j-1]` is greater than the pivot. + for (var j = p; j < r; j++) { + if (comparator(ary[j], pivot, false) <= 0) { + i += 1; + swap(ary, i, j); + } + } + + swap(ary, i + 1, j); + var q = i + 1; + + // (2) Recurse on each half. + + doQuickSort(ary, comparator, p, q - 1); + doQuickSort(ary, comparator, q + 1, r); + } +} + + return doQuickSort; +} + +function cloneSort(comparator) { + let template = SortTemplate.toString(); + let templateFn = new Function(`return ${template}`)(); + return templateFn(comparator); +} + +/** + * Sort the given array in-place with the given comparator function. + * + * @param {Array} ary + * An array to sort. + * @param {function} comparator + * Function to use to compare two items. + */ + +let sortCache = new WeakMap(); +exports.quickSort = function (ary, comparator, start = 0) { + let doQuickSort = sortCache.get(comparator); + if (doQuickSort === void 0) { + doQuickSort = cloneSort(comparator); + sortCache.set(comparator, doQuickSort); + } + doQuickSort(ary, comparator, start, ary.length - 1); +}; diff --git a/node_modules/source-map-js/lib/source-map-consumer.d.ts b/node_modules/source-map-js/lib/source-map-consumer.d.ts new file mode 100644 index 0000000..744bda7 --- /dev/null +++ b/node_modules/source-map-js/lib/source-map-consumer.d.ts @@ -0,0 +1 @@ +export { SourceMapConsumer } from '..'; diff --git a/node_modules/source-map-js/lib/source-map-consumer.js b/node_modules/source-map-js/lib/source-map-consumer.js new file mode 100644 index 0000000..ee66114 --- /dev/null +++ b/node_modules/source-map-js/lib/source-map-consumer.js @@ -0,0 +1,1188 @@ +/* -*- Mode: js; js-indent-level: 2; -*- */ +/* + * Copyright 2011 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE or: + * http://opensource.org/licenses/BSD-3-Clause + */ + +var util = require('./util'); +var binarySearch = require('./binary-search'); +var ArraySet = require('./array-set').ArraySet; +var base64VLQ = require('./base64-vlq'); +var quickSort = require('./quick-sort').quickSort; + +function SourceMapConsumer(aSourceMap, aSourceMapURL) { + var sourceMap = aSourceMap; + if (typeof aSourceMap === 'string') { + sourceMap = util.parseSourceMapInput(aSourceMap); + } + + return sourceMap.sections != null + ? new IndexedSourceMapConsumer(sourceMap, aSourceMapURL) + : new BasicSourceMapConsumer(sourceMap, aSourceMapURL); +} + +SourceMapConsumer.fromSourceMap = function(aSourceMap, aSourceMapURL) { + return BasicSourceMapConsumer.fromSourceMap(aSourceMap, aSourceMapURL); +} + +/** + * The version of the source mapping spec that we are consuming. + */ +SourceMapConsumer.prototype._version = 3; + +// `__generatedMappings` and `__originalMappings` are arrays that hold the +// parsed mapping coordinates from the source map's "mappings" attribute. They +// are lazily instantiated, accessed via the `_generatedMappings` and +// `_originalMappings` getters respectively, and we only parse the mappings +// and create these arrays once queried for a source location. We jump through +// these hoops because there can be many thousands of mappings, and parsing +// them is expensive, so we only want to do it if we must. +// +// Each object in the arrays is of the form: +// +// { +// generatedLine: The line number in the generated code, +// generatedColumn: The column number in the generated code, +// source: The path to the original source file that generated this +// chunk of code, +// originalLine: The line number in the original source that +// corresponds to this chunk of generated code, +// originalColumn: The column number in the original source that +// corresponds to this chunk of generated code, +// name: The name of the original symbol which generated this chunk of +// code. +// } +// +// All properties except for `generatedLine` and `generatedColumn` can be +// `null`. +// +// `_generatedMappings` is ordered by the generated positions. +// +// `_originalMappings` is ordered by the original positions. + +SourceMapConsumer.prototype.__generatedMappings = null; +Object.defineProperty(SourceMapConsumer.prototype, '_generatedMappings', { + configurable: true, + enumerable: true, + get: function () { + if (!this.__generatedMappings) { + this._parseMappings(this._mappings, this.sourceRoot); + } + + return this.__generatedMappings; + } +}); + +SourceMapConsumer.prototype.__originalMappings = null; +Object.defineProperty(SourceMapConsumer.prototype, '_originalMappings', { + configurable: true, + enumerable: true, + get: function () { + if (!this.__originalMappings) { + this._parseMappings(this._mappings, this.sourceRoot); + } + + return this.__originalMappings; + } +}); + +SourceMapConsumer.prototype._charIsMappingSeparator = + function SourceMapConsumer_charIsMappingSeparator(aStr, index) { + var c = aStr.charAt(index); + return c === ";" || c === ","; + }; + +/** + * Parse the mappings in a string in to a data structure which we can easily + * query (the ordered arrays in the `this.__generatedMappings` and + * `this.__originalMappings` properties). + */ +SourceMapConsumer.prototype._parseMappings = + function SourceMapConsumer_parseMappings(aStr, aSourceRoot) { + throw new Error("Subclasses must implement _parseMappings"); + }; + +SourceMapConsumer.GENERATED_ORDER = 1; +SourceMapConsumer.ORIGINAL_ORDER = 2; + +SourceMapConsumer.GREATEST_LOWER_BOUND = 1; +SourceMapConsumer.LEAST_UPPER_BOUND = 2; + +/** + * Iterate over each mapping between an original source/line/column and a + * generated line/column in this source map. + * + * @param Function aCallback + * The function that is called with each mapping. + * @param Object aContext + * Optional. If specified, this object will be the value of `this` every + * time that `aCallback` is called. + * @param aOrder + * Either `SourceMapConsumer.GENERATED_ORDER` or + * `SourceMapConsumer.ORIGINAL_ORDER`. Specifies whether you want to + * iterate over the mappings sorted by the generated file's line/column + * order or the original's source/line/column order, respectively. Defaults to + * `SourceMapConsumer.GENERATED_ORDER`. + */ +SourceMapConsumer.prototype.eachMapping = + function SourceMapConsumer_eachMapping(aCallback, aContext, aOrder) { + var context = aContext || null; + var order = aOrder || SourceMapConsumer.GENERATED_ORDER; + + var mappings; + switch (order) { + case SourceMapConsumer.GENERATED_ORDER: + mappings = this._generatedMappings; + break; + case SourceMapConsumer.ORIGINAL_ORDER: + mappings = this._originalMappings; + break; + default: + throw new Error("Unknown order of iteration."); + } + + var sourceRoot = this.sourceRoot; + var boundCallback = aCallback.bind(context); + var names = this._names; + var sources = this._sources; + var sourceMapURL = this._sourceMapURL; + + for (var i = 0, n = mappings.length; i < n; i++) { + var mapping = mappings[i]; + var source = mapping.source === null ? null : sources.at(mapping.source); + if(source !== null) { + source = util.computeSourceURL(sourceRoot, source, sourceMapURL); + } + boundCallback({ + source: source, + generatedLine: mapping.generatedLine, + generatedColumn: mapping.generatedColumn, + originalLine: mapping.originalLine, + originalColumn: mapping.originalColumn, + name: mapping.name === null ? null : names.at(mapping.name) + }); + } + }; + +/** + * Returns all generated line and column information for the original source, + * line, and column provided. If no column is provided, returns all mappings + * corresponding to a either the line we are searching for or the next + * closest line that has any mappings. Otherwise, returns all mappings + * corresponding to the given line and either the column we are searching for + * or the next closest column that has any offsets. + * + * The only argument is an object with the following properties: + * + * - source: The filename of the original source. + * - line: The line number in the original source. The line number is 1-based. + * - column: Optional. the column number in the original source. + * The column number is 0-based. + * + * and an array of objects is returned, each with the following properties: + * + * - line: The line number in the generated source, or null. The + * line number is 1-based. + * - column: The column number in the generated source, or null. + * The column number is 0-based. + */ +SourceMapConsumer.prototype.allGeneratedPositionsFor = + function SourceMapConsumer_allGeneratedPositionsFor(aArgs) { + var line = util.getArg(aArgs, 'line'); + + // When there is no exact match, BasicSourceMapConsumer.prototype._findMapping + // returns the index of the closest mapping less than the needle. By + // setting needle.originalColumn to 0, we thus find the last mapping for + // the given line, provided such a mapping exists. + var needle = { + source: util.getArg(aArgs, 'source'), + originalLine: line, + originalColumn: util.getArg(aArgs, 'column', 0) + }; + + needle.source = this._findSourceIndex(needle.source); + if (needle.source < 0) { + return []; + } + + var mappings = []; + + var index = this._findMapping(needle, + this._originalMappings, + "originalLine", + "originalColumn", + util.compareByOriginalPositions, + binarySearch.LEAST_UPPER_BOUND); + if (index >= 0) { + var mapping = this._originalMappings[index]; + + if (aArgs.column === undefined) { + var originalLine = mapping.originalLine; + + // Iterate until either we run out of mappings, or we run into + // a mapping for a different line than the one we found. Since + // mappings are sorted, this is guaranteed to find all mappings for + // the line we found. + while (mapping && mapping.originalLine === originalLine) { + mappings.push({ + line: util.getArg(mapping, 'generatedLine', null), + column: util.getArg(mapping, 'generatedColumn', null), + lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null) + }); + + mapping = this._originalMappings[++index]; + } + } else { + var originalColumn = mapping.originalColumn; + + // Iterate until either we run out of mappings, or we run into + // a mapping for a different line than the one we were searching for. + // Since mappings are sorted, this is guaranteed to find all mappings for + // the line we are searching for. + while (mapping && + mapping.originalLine === line && + mapping.originalColumn == originalColumn) { + mappings.push({ + line: util.getArg(mapping, 'generatedLine', null), + column: util.getArg(mapping, 'generatedColumn', null), + lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null) + }); + + mapping = this._originalMappings[++index]; + } + } + } + + return mappings; + }; + +exports.SourceMapConsumer = SourceMapConsumer; + +/** + * A BasicSourceMapConsumer instance represents a parsed source map which we can + * query for information about the original file positions by giving it a file + * position in the generated source. + * + * The first parameter is the raw source map (either as a JSON string, or + * already parsed to an object). According to the spec, source maps have the + * following attributes: + * + * - version: Which version of the source map spec this map is following. + * - sources: An array of URLs to the original source files. + * - names: An array of identifiers which can be referrenced by individual mappings. + * - sourceRoot: Optional. The URL root from which all sources are relative. + * - sourcesContent: Optional. An array of contents of the original source files. + * - mappings: A string of base64 VLQs which contain the actual mappings. + * - file: Optional. The generated file this source map is associated with. + * + * Here is an example source map, taken from the source map spec[0]: + * + * { + * version : 3, + * file: "out.js", + * sourceRoot : "", + * sources: ["foo.js", "bar.js"], + * names: ["src", "maps", "are", "fun"], + * mappings: "AA,AB;;ABCDE;" + * } + * + * The second parameter, if given, is a string whose value is the URL + * at which the source map was found. This URL is used to compute the + * sources array. + * + * [0]: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit?pli=1# + */ +function BasicSourceMapConsumer(aSourceMap, aSourceMapURL) { + var sourceMap = aSourceMap; + if (typeof aSourceMap === 'string') { + sourceMap = util.parseSourceMapInput(aSourceMap); + } + + var version = util.getArg(sourceMap, 'version'); + var sources = util.getArg(sourceMap, 'sources'); + // Sass 3.3 leaves out the 'names' array, so we deviate from the spec (which + // requires the array) to play nice here. + var names = util.getArg(sourceMap, 'names', []); + var sourceRoot = util.getArg(sourceMap, 'sourceRoot', null); + var sourcesContent = util.getArg(sourceMap, 'sourcesContent', null); + var mappings = util.getArg(sourceMap, 'mappings'); + var file = util.getArg(sourceMap, 'file', null); + + // Once again, Sass deviates from the spec and supplies the version as a + // string rather than a number, so we use loose equality checking here. + if (version != this._version) { + throw new Error('Unsupported version: ' + version); + } + + if (sourceRoot) { + sourceRoot = util.normalize(sourceRoot); + } + + sources = sources + .map(String) + // Some source maps produce relative source paths like "./foo.js" instead of + // "foo.js". Normalize these first so that future comparisons will succeed. + // See bugzil.la/1090768. + .map(util.normalize) + // Always ensure that absolute sources are internally stored relative to + // the source root, if the source root is absolute. Not doing this would + // be particularly problematic when the source root is a prefix of the + // source (valid, but why??). See github issue #199 and bugzil.la/1188982. + .map(function (source) { + return sourceRoot && util.isAbsolute(sourceRoot) && util.isAbsolute(source) + ? util.relative(sourceRoot, source) + : source; + }); + + // Pass `true` below to allow duplicate names and sources. While source maps + // are intended to be compressed and deduplicated, the TypeScript compiler + // sometimes generates source maps with duplicates in them. See Github issue + // #72 and bugzil.la/889492. + this._names = ArraySet.fromArray(names.map(String), true); + this._sources = ArraySet.fromArray(sources, true); + + this._absoluteSources = this._sources.toArray().map(function (s) { + return util.computeSourceURL(sourceRoot, s, aSourceMapURL); + }); + + this.sourceRoot = sourceRoot; + this.sourcesContent = sourcesContent; + this._mappings = mappings; + this._sourceMapURL = aSourceMapURL; + this.file = file; +} + +BasicSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype); +BasicSourceMapConsumer.prototype.consumer = SourceMapConsumer; + +/** + * Utility function to find the index of a source. Returns -1 if not + * found. + */ +BasicSourceMapConsumer.prototype._findSourceIndex = function(aSource) { + var relativeSource = aSource; + if (this.sourceRoot != null) { + relativeSource = util.relative(this.sourceRoot, relativeSource); + } + + if (this._sources.has(relativeSource)) { + return this._sources.indexOf(relativeSource); + } + + // Maybe aSource is an absolute URL as returned by |sources|. In + // this case we can't simply undo the transform. + var i; + for (i = 0; i < this._absoluteSources.length; ++i) { + if (this._absoluteSources[i] == aSource) { + return i; + } + } + + return -1; +}; + +/** + * Create a BasicSourceMapConsumer from a SourceMapGenerator. + * + * @param SourceMapGenerator aSourceMap + * The source map that will be consumed. + * @param String aSourceMapURL + * The URL at which the source map can be found (optional) + * @returns BasicSourceMapConsumer + */ +BasicSourceMapConsumer.fromSourceMap = + function SourceMapConsumer_fromSourceMap(aSourceMap, aSourceMapURL) { + var smc = Object.create(BasicSourceMapConsumer.prototype); + + var names = smc._names = ArraySet.fromArray(aSourceMap._names.toArray(), true); + var sources = smc._sources = ArraySet.fromArray(aSourceMap._sources.toArray(), true); + smc.sourceRoot = aSourceMap._sourceRoot; + smc.sourcesContent = aSourceMap._generateSourcesContent(smc._sources.toArray(), + smc.sourceRoot); + smc.file = aSourceMap._file; + smc._sourceMapURL = aSourceMapURL; + smc._absoluteSources = smc._sources.toArray().map(function (s) { + return util.computeSourceURL(smc.sourceRoot, s, aSourceMapURL); + }); + + // Because we are modifying the entries (by converting string sources and + // names to indices into the sources and names ArraySets), we have to make + // a copy of the entry or else bad things happen. Shared mutable state + // strikes again! See github issue #191. + + var generatedMappings = aSourceMap._mappings.toArray().slice(); + var destGeneratedMappings = smc.__generatedMappings = []; + var destOriginalMappings = smc.__originalMappings = []; + + for (var i = 0, length = generatedMappings.length; i < length; i++) { + var srcMapping = generatedMappings[i]; + var destMapping = new Mapping; + destMapping.generatedLine = srcMapping.generatedLine; + destMapping.generatedColumn = srcMapping.generatedColumn; + + if (srcMapping.source) { + destMapping.source = sources.indexOf(srcMapping.source); + destMapping.originalLine = srcMapping.originalLine; + destMapping.originalColumn = srcMapping.originalColumn; + + if (srcMapping.name) { + destMapping.name = names.indexOf(srcMapping.name); + } + + destOriginalMappings.push(destMapping); + } + + destGeneratedMappings.push(destMapping); + } + + quickSort(smc.__originalMappings, util.compareByOriginalPositions); + + return smc; + }; + +/** + * The version of the source mapping spec that we are consuming. + */ +BasicSourceMapConsumer.prototype._version = 3; + +/** + * The list of original sources. + */ +Object.defineProperty(BasicSourceMapConsumer.prototype, 'sources', { + get: function () { + return this._absoluteSources.slice(); + } +}); + +/** + * Provide the JIT with a nice shape / hidden class. + */ +function Mapping() { + this.generatedLine = 0; + this.generatedColumn = 0; + this.source = null; + this.originalLine = null; + this.originalColumn = null; + this.name = null; +} + +/** + * Parse the mappings in a string in to a data structure which we can easily + * query (the ordered arrays in the `this.__generatedMappings` and + * `this.__originalMappings` properties). + */ + +const compareGenerated = util.compareByGeneratedPositionsDeflatedNoLine; +function sortGenerated(array, start) { + let l = array.length; + let n = array.length - start; + if (n <= 1) { + return; + } else if (n == 2) { + let a = array[start]; + let b = array[start + 1]; + if (compareGenerated(a, b) > 0) { + array[start] = b; + array[start + 1] = a; + } + } else if (n < 20) { + for (let i = start; i < l; i++) { + for (let j = i; j > start; j--) { + let a = array[j - 1]; + let b = array[j]; + if (compareGenerated(a, b) <= 0) { + break; + } + array[j - 1] = b; + array[j] = a; + } + } + } else { + quickSort(array, compareGenerated, start); + } +} +BasicSourceMapConsumer.prototype._parseMappings = + function SourceMapConsumer_parseMappings(aStr, aSourceRoot) { + var generatedLine = 1; + var previousGeneratedColumn = 0; + var previousOriginalLine = 0; + var previousOriginalColumn = 0; + var previousSource = 0; + var previousName = 0; + var length = aStr.length; + var index = 0; + var cachedSegments = {}; + var temp = {}; + var originalMappings = []; + var generatedMappings = []; + var mapping, str, segment, end, value; + + let subarrayStart = 0; + while (index < length) { + if (aStr.charAt(index) === ';') { + generatedLine++; + index++; + previousGeneratedColumn = 0; + + sortGenerated(generatedMappings, subarrayStart); + subarrayStart = generatedMappings.length; + } + else if (aStr.charAt(index) === ',') { + index++; + } + else { + mapping = new Mapping(); + mapping.generatedLine = generatedLine; + + for (end = index; end < length; end++) { + if (this._charIsMappingSeparator(aStr, end)) { + break; + } + } + str = aStr.slice(index, end); + + segment = []; + while (index < end) { + base64VLQ.decode(aStr, index, temp); + value = temp.value; + index = temp.rest; + segment.push(value); + } + + if (segment.length === 2) { + throw new Error('Found a source, but no line and column'); + } + + if (segment.length === 3) { + throw new Error('Found a source and line, but no column'); + } + + // Generated column. + mapping.generatedColumn = previousGeneratedColumn + segment[0]; + previousGeneratedColumn = mapping.generatedColumn; + + if (segment.length > 1) { + // Original source. + mapping.source = previousSource + segment[1]; + previousSource += segment[1]; + + // Original line. + mapping.originalLine = previousOriginalLine + segment[2]; + previousOriginalLine = mapping.originalLine; + // Lines are stored 0-based + mapping.originalLine += 1; + + // Original column. + mapping.originalColumn = previousOriginalColumn + segment[3]; + previousOriginalColumn = mapping.originalColumn; + + if (segment.length > 4) { + // Original name. + mapping.name = previousName + segment[4]; + previousName += segment[4]; + } + } + + generatedMappings.push(mapping); + if (typeof mapping.originalLine === 'number') { + let currentSource = mapping.source; + while (originalMappings.length <= currentSource) { + originalMappings.push(null); + } + if (originalMappings[currentSource] === null) { + originalMappings[currentSource] = []; + } + originalMappings[currentSource].push(mapping); + } + } + } + + sortGenerated(generatedMappings, subarrayStart); + this.__generatedMappings = generatedMappings; + + for (var i = 0; i < originalMappings.length; i++) { + if (originalMappings[i] != null) { + quickSort(originalMappings[i], util.compareByOriginalPositionsNoSource); + } + } + this.__originalMappings = [].concat(...originalMappings); + }; + +/** + * Find the mapping that best matches the hypothetical "needle" mapping that + * we are searching for in the given "haystack" of mappings. + */ +BasicSourceMapConsumer.prototype._findMapping = + function SourceMapConsumer_findMapping(aNeedle, aMappings, aLineName, + aColumnName, aComparator, aBias) { + // To return the position we are searching for, we must first find the + // mapping for the given position and then return the opposite position it + // points to. Because the mappings are sorted, we can use binary search to + // find the best mapping. + + if (aNeedle[aLineName] <= 0) { + throw new TypeError('Line must be greater than or equal to 1, got ' + + aNeedle[aLineName]); + } + if (aNeedle[aColumnName] < 0) { + throw new TypeError('Column must be greater than or equal to 0, got ' + + aNeedle[aColumnName]); + } + + return binarySearch.search(aNeedle, aMappings, aComparator, aBias); + }; + +/** + * Compute the last column for each generated mapping. The last column is + * inclusive. + */ +BasicSourceMapConsumer.prototype.computeColumnSpans = + function SourceMapConsumer_computeColumnSpans() { + for (var index = 0; index < this._generatedMappings.length; ++index) { + var mapping = this._generatedMappings[index]; + + // Mappings do not contain a field for the last generated columnt. We + // can come up with an optimistic estimate, however, by assuming that + // mappings are contiguous (i.e. given two consecutive mappings, the + // first mapping ends where the second one starts). + if (index + 1 < this._generatedMappings.length) { + var nextMapping = this._generatedMappings[index + 1]; + + if (mapping.generatedLine === nextMapping.generatedLine) { + mapping.lastGeneratedColumn = nextMapping.generatedColumn - 1; + continue; + } + } + + // The last mapping for each line spans the entire line. + mapping.lastGeneratedColumn = Infinity; + } + }; + +/** + * Returns the original source, line, and column information for the generated + * source's line and column positions provided. The only argument is an object + * with the following properties: + * + * - line: The line number in the generated source. The line number + * is 1-based. + * - column: The column number in the generated source. The column + * number is 0-based. + * - bias: Either 'SourceMapConsumer.GREATEST_LOWER_BOUND' or + * 'SourceMapConsumer.LEAST_UPPER_BOUND'. Specifies whether to return the + * closest element that is smaller than or greater than the one we are + * searching for, respectively, if the exact element cannot be found. + * Defaults to 'SourceMapConsumer.GREATEST_LOWER_BOUND'. + * + * and an object is returned with the following properties: + * + * - source: The original source file, or null. + * - line: The line number in the original source, or null. The + * line number is 1-based. + * - column: The column number in the original source, or null. The + * column number is 0-based. + * - name: The original identifier, or null. + */ +BasicSourceMapConsumer.prototype.originalPositionFor = + function SourceMapConsumer_originalPositionFor(aArgs) { + var needle = { + generatedLine: util.getArg(aArgs, 'line'), + generatedColumn: util.getArg(aArgs, 'column') + }; + + var index = this._findMapping( + needle, + this._generatedMappings, + "generatedLine", + "generatedColumn", + util.compareByGeneratedPositionsDeflated, + util.getArg(aArgs, 'bias', SourceMapConsumer.GREATEST_LOWER_BOUND) + ); + + if (index >= 0) { + var mapping = this._generatedMappings[index]; + + if (mapping.generatedLine === needle.generatedLine) { + var source = util.getArg(mapping, 'source', null); + if (source !== null) { + source = this._sources.at(source); + source = util.computeSourceURL(this.sourceRoot, source, this._sourceMapURL); + } + var name = util.getArg(mapping, 'name', null); + if (name !== null) { + name = this._names.at(name); + } + return { + source: source, + line: util.getArg(mapping, 'originalLine', null), + column: util.getArg(mapping, 'originalColumn', null), + name: name + }; + } + } + + return { + source: null, + line: null, + column: null, + name: null + }; + }; + +/** + * Return true if we have the source content for every source in the source + * map, false otherwise. + */ +BasicSourceMapConsumer.prototype.hasContentsOfAllSources = + function BasicSourceMapConsumer_hasContentsOfAllSources() { + if (!this.sourcesContent) { + return false; + } + return this.sourcesContent.length >= this._sources.size() && + !this.sourcesContent.some(function (sc) { return sc == null; }); + }; + +/** + * Returns the original source content. The only argument is the url of the + * original source file. Returns null if no original source content is + * available. + */ +BasicSourceMapConsumer.prototype.sourceContentFor = + function SourceMapConsumer_sourceContentFor(aSource, nullOnMissing) { + if (!this.sourcesContent) { + return null; + } + + var index = this._findSourceIndex(aSource); + if (index >= 0) { + return this.sourcesContent[index]; + } + + var relativeSource = aSource; + if (this.sourceRoot != null) { + relativeSource = util.relative(this.sourceRoot, relativeSource); + } + + var url; + if (this.sourceRoot != null + && (url = util.urlParse(this.sourceRoot))) { + // XXX: file:// URIs and absolute paths lead to unexpected behavior for + // many users. We can help them out when they expect file:// URIs to + // behave like it would if they were running a local HTTP server. See + // https://bugzilla.mozilla.org/show_bug.cgi?id=885597. + var fileUriAbsPath = relativeSource.replace(/^file:\/\//, ""); + if (url.scheme == "file" + && this._sources.has(fileUriAbsPath)) { + return this.sourcesContent[this._sources.indexOf(fileUriAbsPath)] + } + + if ((!url.path || url.path == "/") + && this._sources.has("/" + relativeSource)) { + return this.sourcesContent[this._sources.indexOf("/" + relativeSource)]; + } + } + + // This function is used recursively from + // IndexedSourceMapConsumer.prototype.sourceContentFor. In that case, we + // don't want to throw if we can't find the source - we just want to + // return null, so we provide a flag to exit gracefully. + if (nullOnMissing) { + return null; + } + else { + throw new Error('"' + relativeSource + '" is not in the SourceMap.'); + } + }; + +/** + * Returns the generated line and column information for the original source, + * line, and column positions provided. The only argument is an object with + * the following properties: + * + * - source: The filename of the original source. + * - line: The line number in the original source. The line number + * is 1-based. + * - column: The column number in the original source. The column + * number is 0-based. + * - bias: Either 'SourceMapConsumer.GREATEST_LOWER_BOUND' or + * 'SourceMapConsumer.LEAST_UPPER_BOUND'. Specifies whether to return the + * closest element that is smaller than or greater than the one we are + * searching for, respectively, if the exact element cannot be found. + * Defaults to 'SourceMapConsumer.GREATEST_LOWER_BOUND'. + * + * and an object is returned with the following properties: + * + * - line: The line number in the generated source, or null. The + * line number is 1-based. + * - column: The column number in the generated source, or null. + * The column number is 0-based. + */ +BasicSourceMapConsumer.prototype.generatedPositionFor = + function SourceMapConsumer_generatedPositionFor(aArgs) { + var source = util.getArg(aArgs, 'source'); + source = this._findSourceIndex(source); + if (source < 0) { + return { + line: null, + column: null, + lastColumn: null + }; + } + + var needle = { + source: source, + originalLine: util.getArg(aArgs, 'line'), + originalColumn: util.getArg(aArgs, 'column') + }; + + var index = this._findMapping( + needle, + this._originalMappings, + "originalLine", + "originalColumn", + util.compareByOriginalPositions, + util.getArg(aArgs, 'bias', SourceMapConsumer.GREATEST_LOWER_BOUND) + ); + + if (index >= 0) { + var mapping = this._originalMappings[index]; + + if (mapping.source === needle.source) { + return { + line: util.getArg(mapping, 'generatedLine', null), + column: util.getArg(mapping, 'generatedColumn', null), + lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null) + }; + } + } + + return { + line: null, + column: null, + lastColumn: null + }; + }; + +exports.BasicSourceMapConsumer = BasicSourceMapConsumer; + +/** + * An IndexedSourceMapConsumer instance represents a parsed source map which + * we can query for information. It differs from BasicSourceMapConsumer in + * that it takes "indexed" source maps (i.e. ones with a "sections" field) as + * input. + * + * The first parameter is a raw source map (either as a JSON string, or already + * parsed to an object). According to the spec for indexed source maps, they + * have the following attributes: + * + * - version: Which version of the source map spec this map is following. + * - file: Optional. The generated file this source map is associated with. + * - sections: A list of section definitions. + * + * Each value under the "sections" field has two fields: + * - offset: The offset into the original specified at which this section + * begins to apply, defined as an object with a "line" and "column" + * field. + * - map: A source map definition. This source map could also be indexed, + * but doesn't have to be. + * + * Instead of the "map" field, it's also possible to have a "url" field + * specifying a URL to retrieve a source map from, but that's currently + * unsupported. + * + * Here's an example source map, taken from the source map spec[0], but + * modified to omit a section which uses the "url" field. + * + * { + * version : 3, + * file: "app.js", + * sections: [{ + * offset: {line:100, column:10}, + * map: { + * version : 3, + * file: "section.js", + * sources: ["foo.js", "bar.js"], + * names: ["src", "maps", "are", "fun"], + * mappings: "AAAA,E;;ABCDE;" + * } + * }], + * } + * + * The second parameter, if given, is a string whose value is the URL + * at which the source map was found. This URL is used to compute the + * sources array. + * + * [0]: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit#heading=h.535es3xeprgt + */ +function IndexedSourceMapConsumer(aSourceMap, aSourceMapURL) { + var sourceMap = aSourceMap; + if (typeof aSourceMap === 'string') { + sourceMap = util.parseSourceMapInput(aSourceMap); + } + + var version = util.getArg(sourceMap, 'version'); + var sections = util.getArg(sourceMap, 'sections'); + + if (version != this._version) { + throw new Error('Unsupported version: ' + version); + } + + this._sources = new ArraySet(); + this._names = new ArraySet(); + + var lastOffset = { + line: -1, + column: 0 + }; + this._sections = sections.map(function (s) { + if (s.url) { + // The url field will require support for asynchronicity. + // See https://github.com/mozilla/source-map/issues/16 + throw new Error('Support for url field in sections not implemented.'); + } + var offset = util.getArg(s, 'offset'); + var offsetLine = util.getArg(offset, 'line'); + var offsetColumn = util.getArg(offset, 'column'); + + if (offsetLine < lastOffset.line || + (offsetLine === lastOffset.line && offsetColumn < lastOffset.column)) { + throw new Error('Section offsets must be ordered and non-overlapping.'); + } + lastOffset = offset; + + return { + generatedOffset: { + // The offset fields are 0-based, but we use 1-based indices when + // encoding/decoding from VLQ. + generatedLine: offsetLine + 1, + generatedColumn: offsetColumn + 1 + }, + consumer: new SourceMapConsumer(util.getArg(s, 'map'), aSourceMapURL) + } + }); +} + +IndexedSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype); +IndexedSourceMapConsumer.prototype.constructor = SourceMapConsumer; + +/** + * The version of the source mapping spec that we are consuming. + */ +IndexedSourceMapConsumer.prototype._version = 3; + +/** + * The list of original sources. + */ +Object.defineProperty(IndexedSourceMapConsumer.prototype, 'sources', { + get: function () { + var sources = []; + for (var i = 0; i < this._sections.length; i++) { + for (var j = 0; j < this._sections[i].consumer.sources.length; j++) { + sources.push(this._sections[i].consumer.sources[j]); + } + } + return sources; + } +}); + +/** + * Returns the original source, line, and column information for the generated + * source's line and column positions provided. The only argument is an object + * with the following properties: + * + * - line: The line number in the generated source. The line number + * is 1-based. + * - column: The column number in the generated source. The column + * number is 0-based. + * + * and an object is returned with the following properties: + * + * - source: The original source file, or null. + * - line: The line number in the original source, or null. The + * line number is 1-based. + * - column: The column number in the original source, or null. The + * column number is 0-based. + * - name: The original identifier, or null. + */ +IndexedSourceMapConsumer.prototype.originalPositionFor = + function IndexedSourceMapConsumer_originalPositionFor(aArgs) { + var needle = { + generatedLine: util.getArg(aArgs, 'line'), + generatedColumn: util.getArg(aArgs, 'column') + }; + + // Find the section containing the generated position we're trying to map + // to an original position. + var sectionIndex = binarySearch.search(needle, this._sections, + function(needle, section) { + var cmp = needle.generatedLine - section.generatedOffset.generatedLine; + if (cmp) { + return cmp; + } + + return (needle.generatedColumn - + section.generatedOffset.generatedColumn); + }); + var section = this._sections[sectionIndex]; + + if (!section) { + return { + source: null, + line: null, + column: null, + name: null + }; + } + + return section.consumer.originalPositionFor({ + line: needle.generatedLine - + (section.generatedOffset.generatedLine - 1), + column: needle.generatedColumn - + (section.generatedOffset.generatedLine === needle.generatedLine + ? section.generatedOffset.generatedColumn - 1 + : 0), + bias: aArgs.bias + }); + }; + +/** + * Return true if we have the source content for every source in the source + * map, false otherwise. + */ +IndexedSourceMapConsumer.prototype.hasContentsOfAllSources = + function IndexedSourceMapConsumer_hasContentsOfAllSources() { + return this._sections.every(function (s) { + return s.consumer.hasContentsOfAllSources(); + }); + }; + +/** + * Returns the original source content. The only argument is the url of the + * original source file. Returns null if no original source content is + * available. + */ +IndexedSourceMapConsumer.prototype.sourceContentFor = + function IndexedSourceMapConsumer_sourceContentFor(aSource, nullOnMissing) { + for (var i = 0; i < this._sections.length; i++) { + var section = this._sections[i]; + + var content = section.consumer.sourceContentFor(aSource, true); + if (content || content === '') { + return content; + } + } + if (nullOnMissing) { + return null; + } + else { + throw new Error('"' + aSource + '" is not in the SourceMap.'); + } + }; + +/** + * Returns the generated line and column information for the original source, + * line, and column positions provided. The only argument is an object with + * the following properties: + * + * - source: The filename of the original source. + * - line: The line number in the original source. The line number + * is 1-based. + * - column: The column number in the original source. The column + * number is 0-based. + * + * and an object is returned with the following properties: + * + * - line: The line number in the generated source, or null. The + * line number is 1-based. + * - column: The column number in the generated source, or null. + * The column number is 0-based. + */ +IndexedSourceMapConsumer.prototype.generatedPositionFor = + function IndexedSourceMapConsumer_generatedPositionFor(aArgs) { + for (var i = 0; i < this._sections.length; i++) { + var section = this._sections[i]; + + // Only consider this section if the requested source is in the list of + // sources of the consumer. + if (section.consumer._findSourceIndex(util.getArg(aArgs, 'source')) === -1) { + continue; + } + var generatedPosition = section.consumer.generatedPositionFor(aArgs); + if (generatedPosition) { + var ret = { + line: generatedPosition.line + + (section.generatedOffset.generatedLine - 1), + column: generatedPosition.column + + (section.generatedOffset.generatedLine === generatedPosition.line + ? section.generatedOffset.generatedColumn - 1 + : 0) + }; + return ret; + } + } + + return { + line: null, + column: null + }; + }; + +/** + * Parse the mappings in a string in to a data structure which we can easily + * query (the ordered arrays in the `this.__generatedMappings` and + * `this.__originalMappings` properties). + */ +IndexedSourceMapConsumer.prototype._parseMappings = + function IndexedSourceMapConsumer_parseMappings(aStr, aSourceRoot) { + this.__generatedMappings = []; + this.__originalMappings = []; + for (var i = 0; i < this._sections.length; i++) { + var section = this._sections[i]; + var sectionMappings = section.consumer._generatedMappings; + for (var j = 0; j < sectionMappings.length; j++) { + var mapping = sectionMappings[j]; + + var source = section.consumer._sources.at(mapping.source); + if(source !== null) { + source = util.computeSourceURL(section.consumer.sourceRoot, source, this._sourceMapURL); + } + this._sources.add(source); + source = this._sources.indexOf(source); + + var name = null; + if (mapping.name) { + name = section.consumer._names.at(mapping.name); + this._names.add(name); + name = this._names.indexOf(name); + } + + // The mappings coming from the consumer for the section have + // generated positions relative to the start of the section, so we + // need to offset them to be relative to the start of the concatenated + // generated file. + var adjustedMapping = { + source: source, + generatedLine: mapping.generatedLine + + (section.generatedOffset.generatedLine - 1), + generatedColumn: mapping.generatedColumn + + (section.generatedOffset.generatedLine === mapping.generatedLine + ? section.generatedOffset.generatedColumn - 1 + : 0), + originalLine: mapping.originalLine, + originalColumn: mapping.originalColumn, + name: name + }; + + this.__generatedMappings.push(adjustedMapping); + if (typeof adjustedMapping.originalLine === 'number') { + this.__originalMappings.push(adjustedMapping); + } + } + } + + quickSort(this.__generatedMappings, util.compareByGeneratedPositionsDeflated); + quickSort(this.__originalMappings, util.compareByOriginalPositions); + }; + +exports.IndexedSourceMapConsumer = IndexedSourceMapConsumer; diff --git a/node_modules/source-map-js/lib/source-map-generator.d.ts b/node_modules/source-map-js/lib/source-map-generator.d.ts new file mode 100644 index 0000000..f59d70a --- /dev/null +++ b/node_modules/source-map-js/lib/source-map-generator.d.ts @@ -0,0 +1 @@ +export { SourceMapGenerator } from '..'; diff --git a/node_modules/source-map-js/lib/source-map-generator.js b/node_modules/source-map-js/lib/source-map-generator.js new file mode 100644 index 0000000..bab04ff --- /dev/null +++ b/node_modules/source-map-js/lib/source-map-generator.js @@ -0,0 +1,444 @@ +/* -*- Mode: js; js-indent-level: 2; -*- */ +/* + * Copyright 2011 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE or: + * http://opensource.org/licenses/BSD-3-Clause + */ + +var base64VLQ = require('./base64-vlq'); +var util = require('./util'); +var ArraySet = require('./array-set').ArraySet; +var MappingList = require('./mapping-list').MappingList; + +/** + * An instance of the SourceMapGenerator represents a source map which is + * being built incrementally. You may pass an object with the following + * properties: + * + * - file: The filename of the generated source. + * - sourceRoot: A root for all relative URLs in this source map. + */ +function SourceMapGenerator(aArgs) { + if (!aArgs) { + aArgs = {}; + } + this._file = util.getArg(aArgs, 'file', null); + this._sourceRoot = util.getArg(aArgs, 'sourceRoot', null); + this._skipValidation = util.getArg(aArgs, 'skipValidation', false); + this._ignoreInvalidMapping = util.getArg(aArgs, 'ignoreInvalidMapping', false); + this._sources = new ArraySet(); + this._names = new ArraySet(); + this._mappings = new MappingList(); + this._sourcesContents = null; +} + +SourceMapGenerator.prototype._version = 3; + +/** + * Creates a new SourceMapGenerator based on a SourceMapConsumer + * + * @param aSourceMapConsumer The SourceMap. + */ +SourceMapGenerator.fromSourceMap = + function SourceMapGenerator_fromSourceMap(aSourceMapConsumer, generatorOps) { + var sourceRoot = aSourceMapConsumer.sourceRoot; + var generator = new SourceMapGenerator(Object.assign(generatorOps || {}, { + file: aSourceMapConsumer.file, + sourceRoot: sourceRoot + })); + aSourceMapConsumer.eachMapping(function (mapping) { + var newMapping = { + generated: { + line: mapping.generatedLine, + column: mapping.generatedColumn + } + }; + + if (mapping.source != null) { + newMapping.source = mapping.source; + if (sourceRoot != null) { + newMapping.source = util.relative(sourceRoot, newMapping.source); + } + + newMapping.original = { + line: mapping.originalLine, + column: mapping.originalColumn + }; + + if (mapping.name != null) { + newMapping.name = mapping.name; + } + } + + generator.addMapping(newMapping); + }); + aSourceMapConsumer.sources.forEach(function (sourceFile) { + var sourceRelative = sourceFile; + if (sourceRoot !== null) { + sourceRelative = util.relative(sourceRoot, sourceFile); + } + + if (!generator._sources.has(sourceRelative)) { + generator._sources.add(sourceRelative); + } + + var content = aSourceMapConsumer.sourceContentFor(sourceFile); + if (content != null) { + generator.setSourceContent(sourceFile, content); + } + }); + return generator; + }; + +/** + * Add a single mapping from original source line and column to the generated + * source's line and column for this source map being created. The mapping + * object should have the following properties: + * + * - generated: An object with the generated line and column positions. + * - original: An object with the original line and column positions. + * - source: The original source file (relative to the sourceRoot). + * - name: An optional original token name for this mapping. + */ +SourceMapGenerator.prototype.addMapping = + function SourceMapGenerator_addMapping(aArgs) { + var generated = util.getArg(aArgs, 'generated'); + var original = util.getArg(aArgs, 'original', null); + var source = util.getArg(aArgs, 'source', null); + var name = util.getArg(aArgs, 'name', null); + + if (!this._skipValidation) { + if (this._validateMapping(generated, original, source, name) === false) { + return; + } + } + + if (source != null) { + source = String(source); + if (!this._sources.has(source)) { + this._sources.add(source); + } + } + + if (name != null) { + name = String(name); + if (!this._names.has(name)) { + this._names.add(name); + } + } + + this._mappings.add({ + generatedLine: generated.line, + generatedColumn: generated.column, + originalLine: original != null && original.line, + originalColumn: original != null && original.column, + source: source, + name: name + }); + }; + +/** + * Set the source content for a source file. + */ +SourceMapGenerator.prototype.setSourceContent = + function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) { + var source = aSourceFile; + if (this._sourceRoot != null) { + source = util.relative(this._sourceRoot, source); + } + + if (aSourceContent != null) { + // Add the source content to the _sourcesContents map. + // Create a new _sourcesContents map if the property is null. + if (!this._sourcesContents) { + this._sourcesContents = Object.create(null); + } + this._sourcesContents[util.toSetString(source)] = aSourceContent; + } else if (this._sourcesContents) { + // Remove the source file from the _sourcesContents map. + // If the _sourcesContents map is empty, set the property to null. + delete this._sourcesContents[util.toSetString(source)]; + if (Object.keys(this._sourcesContents).length === 0) { + this._sourcesContents = null; + } + } + }; + +/** + * Applies the mappings of a sub-source-map for a specific source file to the + * source map being generated. Each mapping to the supplied source file is + * rewritten using the supplied source map. Note: The resolution for the + * resulting mappings is the minimium of this map and the supplied map. + * + * @param aSourceMapConsumer The source map to be applied. + * @param aSourceFile Optional. The filename of the source file. + * If omitted, SourceMapConsumer's file property will be used. + * @param aSourceMapPath Optional. The dirname of the path to the source map + * to be applied. If relative, it is relative to the SourceMapConsumer. + * This parameter is needed when the two source maps aren't in the same + * directory, and the source map to be applied contains relative source + * paths. If so, those relative source paths need to be rewritten + * relative to the SourceMapGenerator. + */ +SourceMapGenerator.prototype.applySourceMap = + function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) { + var sourceFile = aSourceFile; + // If aSourceFile is omitted, we will use the file property of the SourceMap + if (aSourceFile == null) { + if (aSourceMapConsumer.file == null) { + throw new Error( + 'SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, ' + + 'or the source map\'s "file" property. Both were omitted.' + ); + } + sourceFile = aSourceMapConsumer.file; + } + var sourceRoot = this._sourceRoot; + // Make "sourceFile" relative if an absolute Url is passed. + if (sourceRoot != null) { + sourceFile = util.relative(sourceRoot, sourceFile); + } + // Applying the SourceMap can add and remove items from the sources and + // the names array. + var newSources = new ArraySet(); + var newNames = new ArraySet(); + + // Find mappings for the "sourceFile" + this._mappings.unsortedForEach(function (mapping) { + if (mapping.source === sourceFile && mapping.originalLine != null) { + // Check if it can be mapped by the source map, then update the mapping. + var original = aSourceMapConsumer.originalPositionFor({ + line: mapping.originalLine, + column: mapping.originalColumn + }); + if (original.source != null) { + // Copy mapping + mapping.source = original.source; + if (aSourceMapPath != null) { + mapping.source = util.join(aSourceMapPath, mapping.source) + } + if (sourceRoot != null) { + mapping.source = util.relative(sourceRoot, mapping.source); + } + mapping.originalLine = original.line; + mapping.originalColumn = original.column; + if (original.name != null) { + mapping.name = original.name; + } + } + } + + var source = mapping.source; + if (source != null && !newSources.has(source)) { + newSources.add(source); + } + + var name = mapping.name; + if (name != null && !newNames.has(name)) { + newNames.add(name); + } + + }, this); + this._sources = newSources; + this._names = newNames; + + // Copy sourcesContents of applied map. + aSourceMapConsumer.sources.forEach(function (sourceFile) { + var content = aSourceMapConsumer.sourceContentFor(sourceFile); + if (content != null) { + if (aSourceMapPath != null) { + sourceFile = util.join(aSourceMapPath, sourceFile); + } + if (sourceRoot != null) { + sourceFile = util.relative(sourceRoot, sourceFile); + } + this.setSourceContent(sourceFile, content); + } + }, this); + }; + +/** + * A mapping can have one of the three levels of data: + * + * 1. Just the generated position. + * 2. The Generated position, original position, and original source. + * 3. Generated and original position, original source, as well as a name + * token. + * + * To maintain consistency, we validate that any new mapping being added falls + * in to one of these categories. + */ +SourceMapGenerator.prototype._validateMapping = + function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource, + aName) { + // When aOriginal is truthy but has empty values for .line and .column, + // it is most likely a programmer error. In this case we throw a very + // specific error message to try to guide them the right way. + // For example: https://github.com/Polymer/polymer-bundler/pull/519 + if (aOriginal && typeof aOriginal.line !== 'number' && typeof aOriginal.column !== 'number') { + var message = 'original.line and original.column are not numbers -- you probably meant to omit ' + + 'the original mapping entirely and only map the generated position. If so, pass ' + + 'null for the original mapping instead of an object with empty or null values.' + + if (this._ignoreInvalidMapping) { + if (typeof console !== 'undefined' && console.warn) { + console.warn(message); + } + return false; + } else { + throw new Error(message); + } + } + + if (aGenerated && 'line' in aGenerated && 'column' in aGenerated + && aGenerated.line > 0 && aGenerated.column >= 0 + && !aOriginal && !aSource && !aName) { + // Case 1. + return; + } + else if (aGenerated && 'line' in aGenerated && 'column' in aGenerated + && aOriginal && 'line' in aOriginal && 'column' in aOriginal + && aGenerated.line > 0 && aGenerated.column >= 0 + && aOriginal.line > 0 && aOriginal.column >= 0 + && aSource) { + // Cases 2 and 3. + return; + } + else { + var message = 'Invalid mapping: ' + JSON.stringify({ + generated: aGenerated, + source: aSource, + original: aOriginal, + name: aName + }); + + if (this._ignoreInvalidMapping) { + if (typeof console !== 'undefined' && console.warn) { + console.warn(message); + } + return false; + } else { + throw new Error(message) + } + } + }; + +/** + * Serialize the accumulated mappings in to the stream of base 64 VLQs + * specified by the source map format. + */ +SourceMapGenerator.prototype._serializeMappings = + function SourceMapGenerator_serializeMappings() { + var previousGeneratedColumn = 0; + var previousGeneratedLine = 1; + var previousOriginalColumn = 0; + var previousOriginalLine = 0; + var previousName = 0; + var previousSource = 0; + var result = ''; + var next; + var mapping; + var nameIdx; + var sourceIdx; + + var mappings = this._mappings.toArray(); + for (var i = 0, len = mappings.length; i < len; i++) { + mapping = mappings[i]; + next = '' + + if (mapping.generatedLine !== previousGeneratedLine) { + previousGeneratedColumn = 0; + while (mapping.generatedLine !== previousGeneratedLine) { + next += ';'; + previousGeneratedLine++; + } + } + else { + if (i > 0) { + if (!util.compareByGeneratedPositionsInflated(mapping, mappings[i - 1])) { + continue; + } + next += ','; + } + } + + next += base64VLQ.encode(mapping.generatedColumn + - previousGeneratedColumn); + previousGeneratedColumn = mapping.generatedColumn; + + if (mapping.source != null) { + sourceIdx = this._sources.indexOf(mapping.source); + next += base64VLQ.encode(sourceIdx - previousSource); + previousSource = sourceIdx; + + // lines are stored 0-based in SourceMap spec version 3 + next += base64VLQ.encode(mapping.originalLine - 1 + - previousOriginalLine); + previousOriginalLine = mapping.originalLine - 1; + + next += base64VLQ.encode(mapping.originalColumn + - previousOriginalColumn); + previousOriginalColumn = mapping.originalColumn; + + if (mapping.name != null) { + nameIdx = this._names.indexOf(mapping.name); + next += base64VLQ.encode(nameIdx - previousName); + previousName = nameIdx; + } + } + + result += next; + } + + return result; + }; + +SourceMapGenerator.prototype._generateSourcesContent = + function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) { + return aSources.map(function (source) { + if (!this._sourcesContents) { + return null; + } + if (aSourceRoot != null) { + source = util.relative(aSourceRoot, source); + } + var key = util.toSetString(source); + return Object.prototype.hasOwnProperty.call(this._sourcesContents, key) + ? this._sourcesContents[key] + : null; + }, this); + }; + +/** + * Externalize the source map. + */ +SourceMapGenerator.prototype.toJSON = + function SourceMapGenerator_toJSON() { + var map = { + version: this._version, + sources: this._sources.toArray(), + names: this._names.toArray(), + mappings: this._serializeMappings() + }; + if (this._file != null) { + map.file = this._file; + } + if (this._sourceRoot != null) { + map.sourceRoot = this._sourceRoot; + } + if (this._sourcesContents) { + map.sourcesContent = this._generateSourcesContent(map.sources, map.sourceRoot); + } + + return map; + }; + +/** + * Render the source map being generated to a string. + */ +SourceMapGenerator.prototype.toString = + function SourceMapGenerator_toString() { + return JSON.stringify(this.toJSON()); + }; + +exports.SourceMapGenerator = SourceMapGenerator; diff --git a/node_modules/source-map-js/lib/source-node.d.ts b/node_modules/source-map-js/lib/source-node.d.ts new file mode 100644 index 0000000..4df6a1a --- /dev/null +++ b/node_modules/source-map-js/lib/source-node.d.ts @@ -0,0 +1 @@ +export { SourceNode } from '..'; diff --git a/node_modules/source-map-js/lib/source-node.js b/node_modules/source-map-js/lib/source-node.js new file mode 100644 index 0000000..8bcdbe3 --- /dev/null +++ b/node_modules/source-map-js/lib/source-node.js @@ -0,0 +1,413 @@ +/* -*- Mode: js; js-indent-level: 2; -*- */ +/* + * Copyright 2011 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE or: + * http://opensource.org/licenses/BSD-3-Clause + */ + +var SourceMapGenerator = require('./source-map-generator').SourceMapGenerator; +var util = require('./util'); + +// Matches a Windows-style `\r\n` newline or a `\n` newline used by all other +// operating systems these days (capturing the result). +var REGEX_NEWLINE = /(\r?\n)/; + +// Newline character code for charCodeAt() comparisons +var NEWLINE_CODE = 10; + +// Private symbol for identifying `SourceNode`s when multiple versions of +// the source-map library are loaded. This MUST NOT CHANGE across +// versions! +var isSourceNode = "$$$isSourceNode$$$"; + +/** + * SourceNodes provide a way to abstract over interpolating/concatenating + * snippets of generated JavaScript source code while maintaining the line and + * column information associated with the original source code. + * + * @param aLine The original line number. + * @param aColumn The original column number. + * @param aSource The original source's filename. + * @param aChunks Optional. An array of strings which are snippets of + * generated JS, or other SourceNodes. + * @param aName The original identifier. + */ +function SourceNode(aLine, aColumn, aSource, aChunks, aName) { + this.children = []; + this.sourceContents = {}; + this.line = aLine == null ? null : aLine; + this.column = aColumn == null ? null : aColumn; + this.source = aSource == null ? null : aSource; + this.name = aName == null ? null : aName; + this[isSourceNode] = true; + if (aChunks != null) this.add(aChunks); +} + +/** + * Creates a SourceNode from generated code and a SourceMapConsumer. + * + * @param aGeneratedCode The generated code + * @param aSourceMapConsumer The SourceMap for the generated code + * @param aRelativePath Optional. The path that relative sources in the + * SourceMapConsumer should be relative to. + */ +SourceNode.fromStringWithSourceMap = + function SourceNode_fromStringWithSourceMap(aGeneratedCode, aSourceMapConsumer, aRelativePath) { + // The SourceNode we want to fill with the generated code + // and the SourceMap + var node = new SourceNode(); + + // All even indices of this array are one line of the generated code, + // while all odd indices are the newlines between two adjacent lines + // (since `REGEX_NEWLINE` captures its match). + // Processed fragments are accessed by calling `shiftNextLine`. + var remainingLines = aGeneratedCode.split(REGEX_NEWLINE); + var remainingLinesIndex = 0; + var shiftNextLine = function() { + var lineContents = getNextLine(); + // The last line of a file might not have a newline. + var newLine = getNextLine() || ""; + return lineContents + newLine; + + function getNextLine() { + return remainingLinesIndex < remainingLines.length ? + remainingLines[remainingLinesIndex++] : undefined; + } + }; + + // We need to remember the position of "remainingLines" + var lastGeneratedLine = 1, lastGeneratedColumn = 0; + + // The generate SourceNodes we need a code range. + // To extract it current and last mapping is used. + // Here we store the last mapping. + var lastMapping = null; + + aSourceMapConsumer.eachMapping(function (mapping) { + if (lastMapping !== null) { + // We add the code from "lastMapping" to "mapping": + // First check if there is a new line in between. + if (lastGeneratedLine < mapping.generatedLine) { + // Associate first line with "lastMapping" + addMappingWithCode(lastMapping, shiftNextLine()); + lastGeneratedLine++; + lastGeneratedColumn = 0; + // The remaining code is added without mapping + } else { + // There is no new line in between. + // Associate the code between "lastGeneratedColumn" and + // "mapping.generatedColumn" with "lastMapping" + var nextLine = remainingLines[remainingLinesIndex] || ''; + var code = nextLine.substr(0, mapping.generatedColumn - + lastGeneratedColumn); + remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn - + lastGeneratedColumn); + lastGeneratedColumn = mapping.generatedColumn; + addMappingWithCode(lastMapping, code); + // No more remaining code, continue + lastMapping = mapping; + return; + } + } + // We add the generated code until the first mapping + // to the SourceNode without any mapping. + // Each line is added as separate string. + while (lastGeneratedLine < mapping.generatedLine) { + node.add(shiftNextLine()); + lastGeneratedLine++; + } + if (lastGeneratedColumn < mapping.generatedColumn) { + var nextLine = remainingLines[remainingLinesIndex] || ''; + node.add(nextLine.substr(0, mapping.generatedColumn)); + remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn); + lastGeneratedColumn = mapping.generatedColumn; + } + lastMapping = mapping; + }, this); + // We have processed all mappings. + if (remainingLinesIndex < remainingLines.length) { + if (lastMapping) { + // Associate the remaining code in the current line with "lastMapping" + addMappingWithCode(lastMapping, shiftNextLine()); + } + // and add the remaining lines without any mapping + node.add(remainingLines.splice(remainingLinesIndex).join("")); + } + + // Copy sourcesContent into SourceNode + aSourceMapConsumer.sources.forEach(function (sourceFile) { + var content = aSourceMapConsumer.sourceContentFor(sourceFile); + if (content != null) { + if (aRelativePath != null) { + sourceFile = util.join(aRelativePath, sourceFile); + } + node.setSourceContent(sourceFile, content); + } + }); + + return node; + + function addMappingWithCode(mapping, code) { + if (mapping === null || mapping.source === undefined) { + node.add(code); + } else { + var source = aRelativePath + ? util.join(aRelativePath, mapping.source) + : mapping.source; + node.add(new SourceNode(mapping.originalLine, + mapping.originalColumn, + source, + code, + mapping.name)); + } + } + }; + +/** + * Add a chunk of generated JS to this source node. + * + * @param aChunk A string snippet of generated JS code, another instance of + * SourceNode, or an array where each member is one of those things. + */ +SourceNode.prototype.add = function SourceNode_add(aChunk) { + if (Array.isArray(aChunk)) { + aChunk.forEach(function (chunk) { + this.add(chunk); + }, this); + } + else if (aChunk[isSourceNode] || typeof aChunk === "string") { + if (aChunk) { + this.children.push(aChunk); + } + } + else { + throw new TypeError( + "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk + ); + } + return this; +}; + +/** + * Add a chunk of generated JS to the beginning of this source node. + * + * @param aChunk A string snippet of generated JS code, another instance of + * SourceNode, or an array where each member is one of those things. + */ +SourceNode.prototype.prepend = function SourceNode_prepend(aChunk) { + if (Array.isArray(aChunk)) { + for (var i = aChunk.length-1; i >= 0; i--) { + this.prepend(aChunk[i]); + } + } + else if (aChunk[isSourceNode] || typeof aChunk === "string") { + this.children.unshift(aChunk); + } + else { + throw new TypeError( + "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk + ); + } + return this; +}; + +/** + * Walk over the tree of JS snippets in this node and its children. The + * walking function is called once for each snippet of JS and is passed that + * snippet and the its original associated source's line/column location. + * + * @param aFn The traversal function. + */ +SourceNode.prototype.walk = function SourceNode_walk(aFn) { + var chunk; + for (var i = 0, len = this.children.length; i < len; i++) { + chunk = this.children[i]; + if (chunk[isSourceNode]) { + chunk.walk(aFn); + } + else { + if (chunk !== '') { + aFn(chunk, { source: this.source, + line: this.line, + column: this.column, + name: this.name }); + } + } + } +}; + +/** + * Like `String.prototype.join` except for SourceNodes. Inserts `aStr` between + * each of `this.children`. + * + * @param aSep The separator. + */ +SourceNode.prototype.join = function SourceNode_join(aSep) { + var newChildren; + var i; + var len = this.children.length; + if (len > 0) { + newChildren = []; + for (i = 0; i < len-1; i++) { + newChildren.push(this.children[i]); + newChildren.push(aSep); + } + newChildren.push(this.children[i]); + this.children = newChildren; + } + return this; +}; + +/** + * Call String.prototype.replace on the very right-most source snippet. Useful + * for trimming whitespace from the end of a source node, etc. + * + * @param aPattern The pattern to replace. + * @param aReplacement The thing to replace the pattern with. + */ +SourceNode.prototype.replaceRight = function SourceNode_replaceRight(aPattern, aReplacement) { + var lastChild = this.children[this.children.length - 1]; + if (lastChild[isSourceNode]) { + lastChild.replaceRight(aPattern, aReplacement); + } + else if (typeof lastChild === 'string') { + this.children[this.children.length - 1] = lastChild.replace(aPattern, aReplacement); + } + else { + this.children.push(''.replace(aPattern, aReplacement)); + } + return this; +}; + +/** + * Set the source content for a source file. This will be added to the SourceMapGenerator + * in the sourcesContent field. + * + * @param aSourceFile The filename of the source file + * @param aSourceContent The content of the source file + */ +SourceNode.prototype.setSourceContent = + function SourceNode_setSourceContent(aSourceFile, aSourceContent) { + this.sourceContents[util.toSetString(aSourceFile)] = aSourceContent; + }; + +/** + * Walk over the tree of SourceNodes. The walking function is called for each + * source file content and is passed the filename and source content. + * + * @param aFn The traversal function. + */ +SourceNode.prototype.walkSourceContents = + function SourceNode_walkSourceContents(aFn) { + for (var i = 0, len = this.children.length; i < len; i++) { + if (this.children[i][isSourceNode]) { + this.children[i].walkSourceContents(aFn); + } + } + + var sources = Object.keys(this.sourceContents); + for (var i = 0, len = sources.length; i < len; i++) { + aFn(util.fromSetString(sources[i]), this.sourceContents[sources[i]]); + } + }; + +/** + * Return the string representation of this source node. Walks over the tree + * and concatenates all the various snippets together to one string. + */ +SourceNode.prototype.toString = function SourceNode_toString() { + var str = ""; + this.walk(function (chunk) { + str += chunk; + }); + return str; +}; + +/** + * Returns the string representation of this source node along with a source + * map. + */ +SourceNode.prototype.toStringWithSourceMap = function SourceNode_toStringWithSourceMap(aArgs) { + var generated = { + code: "", + line: 1, + column: 0 + }; + var map = new SourceMapGenerator(aArgs); + var sourceMappingActive = false; + var lastOriginalSource = null; + var lastOriginalLine = null; + var lastOriginalColumn = null; + var lastOriginalName = null; + this.walk(function (chunk, original) { + generated.code += chunk; + if (original.source !== null + && original.line !== null + && original.column !== null) { + if(lastOriginalSource !== original.source + || lastOriginalLine !== original.line + || lastOriginalColumn !== original.column + || lastOriginalName !== original.name) { + map.addMapping({ + source: original.source, + original: { + line: original.line, + column: original.column + }, + generated: { + line: generated.line, + column: generated.column + }, + name: original.name + }); + } + lastOriginalSource = original.source; + lastOriginalLine = original.line; + lastOriginalColumn = original.column; + lastOriginalName = original.name; + sourceMappingActive = true; + } else if (sourceMappingActive) { + map.addMapping({ + generated: { + line: generated.line, + column: generated.column + } + }); + lastOriginalSource = null; + sourceMappingActive = false; + } + for (var idx = 0, length = chunk.length; idx < length; idx++) { + if (chunk.charCodeAt(idx) === NEWLINE_CODE) { + generated.line++; + generated.column = 0; + // Mappings end at eol + if (idx + 1 === length) { + lastOriginalSource = null; + sourceMappingActive = false; + } else if (sourceMappingActive) { + map.addMapping({ + source: original.source, + original: { + line: original.line, + column: original.column + }, + generated: { + line: generated.line, + column: generated.column + }, + name: original.name + }); + } + } else { + generated.column++; + } + } + }); + this.walkSourceContents(function (sourceFile, sourceContent) { + map.setSourceContent(sourceFile, sourceContent); + }); + + return { code: generated.code, map: map }; +}; + +exports.SourceNode = SourceNode; diff --git a/node_modules/source-map-js/lib/util.js b/node_modules/source-map-js/lib/util.js new file mode 100644 index 0000000..430e2d0 --- /dev/null +++ b/node_modules/source-map-js/lib/util.js @@ -0,0 +1,594 @@ +/* -*- Mode: js; js-indent-level: 2; -*- */ +/* + * Copyright 2011 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE or: + * http://opensource.org/licenses/BSD-3-Clause + */ + +/** + * This is a helper function for getting values from parameter/options + * objects. + * + * @param args The object we are extracting values from + * @param name The name of the property we are getting. + * @param defaultValue An optional value to return if the property is missing + * from the object. If this is not specified and the property is missing, an + * error will be thrown. + */ +function getArg(aArgs, aName, aDefaultValue) { + if (aName in aArgs) { + return aArgs[aName]; + } else if (arguments.length === 3) { + return aDefaultValue; + } else { + throw new Error('"' + aName + '" is a required argument.'); + } +} +exports.getArg = getArg; + +var urlRegexp = /^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/; +var dataUrlRegexp = /^data:.+\,.+$/; + +function urlParse(aUrl) { + var match = aUrl.match(urlRegexp); + if (!match) { + return null; + } + return { + scheme: match[1], + auth: match[2], + host: match[3], + port: match[4], + path: match[5] + }; +} +exports.urlParse = urlParse; + +function urlGenerate(aParsedUrl) { + var url = ''; + if (aParsedUrl.scheme) { + url += aParsedUrl.scheme + ':'; + } + url += '//'; + if (aParsedUrl.auth) { + url += aParsedUrl.auth + '@'; + } + if (aParsedUrl.host) { + url += aParsedUrl.host; + } + if (aParsedUrl.port) { + url += ":" + aParsedUrl.port + } + if (aParsedUrl.path) { + url += aParsedUrl.path; + } + return url; +} +exports.urlGenerate = urlGenerate; + +var MAX_CACHED_INPUTS = 32; + +/** + * Takes some function `f(input) -> result` and returns a memoized version of + * `f`. + * + * We keep at most `MAX_CACHED_INPUTS` memoized results of `f` alive. The + * memoization is a dumb-simple, linear least-recently-used cache. + */ +function lruMemoize(f) { + var cache = []; + + return function(input) { + for (var i = 0; i < cache.length; i++) { + if (cache[i].input === input) { + var temp = cache[0]; + cache[0] = cache[i]; + cache[i] = temp; + return cache[0].result; + } + } + + var result = f(input); + + cache.unshift({ + input, + result, + }); + + if (cache.length > MAX_CACHED_INPUTS) { + cache.pop(); + } + + return result; + }; +} + +/** + * Normalizes a path, or the path portion of a URL: + * + * - Replaces consecutive slashes with one slash. + * - Removes unnecessary '.' parts. + * - Removes unnecessary '/..' parts. + * + * Based on code in the Node.js 'path' core module. + * + * @param aPath The path or url to normalize. + */ +var normalize = lruMemoize(function normalize(aPath) { + var path = aPath; + var url = urlParse(aPath); + if (url) { + if (!url.path) { + return aPath; + } + path = url.path; + } + var isAbsolute = exports.isAbsolute(path); + // Split the path into parts between `/` characters. This is much faster than + // using `.split(/\/+/g)`. + var parts = []; + var start = 0; + var i = 0; + while (true) { + start = i; + i = path.indexOf("/", start); + if (i === -1) { + parts.push(path.slice(start)); + break; + } else { + parts.push(path.slice(start, i)); + while (i < path.length && path[i] === "/") { + i++; + } + } + } + + for (var part, up = 0, i = parts.length - 1; i >= 0; i--) { + part = parts[i]; + if (part === '.') { + parts.splice(i, 1); + } else if (part === '..') { + up++; + } else if (up > 0) { + if (part === '') { + // The first part is blank if the path is absolute. Trying to go + // above the root is a no-op. Therefore we can remove all '..' parts + // directly after the root. + parts.splice(i + 1, up); + up = 0; + } else { + parts.splice(i, 2); + up--; + } + } + } + path = parts.join('/'); + + if (path === '') { + path = isAbsolute ? '/' : '.'; + } + + if (url) { + url.path = path; + return urlGenerate(url); + } + return path; +}); +exports.normalize = normalize; + +/** + * Joins two paths/URLs. + * + * @param aRoot The root path or URL. + * @param aPath The path or URL to be joined with the root. + * + * - If aPath is a URL or a data URI, aPath is returned, unless aPath is a + * scheme-relative URL: Then the scheme of aRoot, if any, is prepended + * first. + * - Otherwise aPath is a path. If aRoot is a URL, then its path portion + * is updated with the result and aRoot is returned. Otherwise the result + * is returned. + * - If aPath is absolute, the result is aPath. + * - Otherwise the two paths are joined with a slash. + * - Joining for example 'http://' and 'www.example.com' is also supported. + */ +function join(aRoot, aPath) { + if (aRoot === "") { + aRoot = "."; + } + if (aPath === "") { + aPath = "."; + } + var aPathUrl = urlParse(aPath); + var aRootUrl = urlParse(aRoot); + if (aRootUrl) { + aRoot = aRootUrl.path || '/'; + } + + // `join(foo, '//www.example.org')` + if (aPathUrl && !aPathUrl.scheme) { + if (aRootUrl) { + aPathUrl.scheme = aRootUrl.scheme; + } + return urlGenerate(aPathUrl); + } + + if (aPathUrl || aPath.match(dataUrlRegexp)) { + return aPath; + } + + // `join('http://', 'www.example.com')` + if (aRootUrl && !aRootUrl.host && !aRootUrl.path) { + aRootUrl.host = aPath; + return urlGenerate(aRootUrl); + } + + var joined = aPath.charAt(0) === '/' + ? aPath + : normalize(aRoot.replace(/\/+$/, '') + '/' + aPath); + + if (aRootUrl) { + aRootUrl.path = joined; + return urlGenerate(aRootUrl); + } + return joined; +} +exports.join = join; + +exports.isAbsolute = function (aPath) { + return aPath.charAt(0) === '/' || urlRegexp.test(aPath); +}; + +/** + * Make a path relative to a URL or another path. + * + * @param aRoot The root path or URL. + * @param aPath The path or URL to be made relative to aRoot. + */ +function relative(aRoot, aPath) { + if (aRoot === "") { + aRoot = "."; + } + + aRoot = aRoot.replace(/\/$/, ''); + + // It is possible for the path to be above the root. In this case, simply + // checking whether the root is a prefix of the path won't work. Instead, we + // need to remove components from the root one by one, until either we find + // a prefix that fits, or we run out of components to remove. + var level = 0; + while (aPath.indexOf(aRoot + '/') !== 0) { + var index = aRoot.lastIndexOf("/"); + if (index < 0) { + return aPath; + } + + // If the only part of the root that is left is the scheme (i.e. http://, + // file:///, etc.), one or more slashes (/), or simply nothing at all, we + // have exhausted all components, so the path is not relative to the root. + aRoot = aRoot.slice(0, index); + if (aRoot.match(/^([^\/]+:\/)?\/*$/)) { + return aPath; + } + + ++level; + } + + // Make sure we add a "../" for each component we removed from the root. + return Array(level + 1).join("../") + aPath.substr(aRoot.length + 1); +} +exports.relative = relative; + +var supportsNullProto = (function () { + var obj = Object.create(null); + return !('__proto__' in obj); +}()); + +function identity (s) { + return s; +} + +/** + * Because behavior goes wacky when you set `__proto__` on objects, we + * have to prefix all the strings in our set with an arbitrary character. + * + * See https://github.com/mozilla/source-map/pull/31 and + * https://github.com/mozilla/source-map/issues/30 + * + * @param String aStr + */ +function toSetString(aStr) { + if (isProtoString(aStr)) { + return '$' + aStr; + } + + return aStr; +} +exports.toSetString = supportsNullProto ? identity : toSetString; + +function fromSetString(aStr) { + if (isProtoString(aStr)) { + return aStr.slice(1); + } + + return aStr; +} +exports.fromSetString = supportsNullProto ? identity : fromSetString; + +function isProtoString(s) { + if (!s) { + return false; + } + + var length = s.length; + + if (length < 9 /* "__proto__".length */) { + return false; + } + + if (s.charCodeAt(length - 1) !== 95 /* '_' */ || + s.charCodeAt(length - 2) !== 95 /* '_' */ || + s.charCodeAt(length - 3) !== 111 /* 'o' */ || + s.charCodeAt(length - 4) !== 116 /* 't' */ || + s.charCodeAt(length - 5) !== 111 /* 'o' */ || + s.charCodeAt(length - 6) !== 114 /* 'r' */ || + s.charCodeAt(length - 7) !== 112 /* 'p' */ || + s.charCodeAt(length - 8) !== 95 /* '_' */ || + s.charCodeAt(length - 9) !== 95 /* '_' */) { + return false; + } + + for (var i = length - 10; i >= 0; i--) { + if (s.charCodeAt(i) !== 36 /* '$' */) { + return false; + } + } + + return true; +} + +/** + * Comparator between two mappings where the original positions are compared. + * + * Optionally pass in `true` as `onlyCompareGenerated` to consider two + * mappings with the same original source/line/column, but different generated + * line and column the same. Useful when searching for a mapping with a + * stubbed out mapping. + */ +function compareByOriginalPositions(mappingA, mappingB, onlyCompareOriginal) { + var cmp = strcmp(mappingA.source, mappingB.source); + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.originalLine - mappingB.originalLine; + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.originalColumn - mappingB.originalColumn; + if (cmp !== 0 || onlyCompareOriginal) { + return cmp; + } + + cmp = mappingA.generatedColumn - mappingB.generatedColumn; + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.generatedLine - mappingB.generatedLine; + if (cmp !== 0) { + return cmp; + } + + return strcmp(mappingA.name, mappingB.name); +} +exports.compareByOriginalPositions = compareByOriginalPositions; + +function compareByOriginalPositionsNoSource(mappingA, mappingB, onlyCompareOriginal) { + var cmp + + cmp = mappingA.originalLine - mappingB.originalLine; + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.originalColumn - mappingB.originalColumn; + if (cmp !== 0 || onlyCompareOriginal) { + return cmp; + } + + cmp = mappingA.generatedColumn - mappingB.generatedColumn; + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.generatedLine - mappingB.generatedLine; + if (cmp !== 0) { + return cmp; + } + + return strcmp(mappingA.name, mappingB.name); +} +exports.compareByOriginalPositionsNoSource = compareByOriginalPositionsNoSource; + +/** + * Comparator between two mappings with deflated source and name indices where + * the generated positions are compared. + * + * Optionally pass in `true` as `onlyCompareGenerated` to consider two + * mappings with the same generated line and column, but different + * source/name/original line and column the same. Useful when searching for a + * mapping with a stubbed out mapping. + */ +function compareByGeneratedPositionsDeflated(mappingA, mappingB, onlyCompareGenerated) { + var cmp = mappingA.generatedLine - mappingB.generatedLine; + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.generatedColumn - mappingB.generatedColumn; + if (cmp !== 0 || onlyCompareGenerated) { + return cmp; + } + + cmp = strcmp(mappingA.source, mappingB.source); + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.originalLine - mappingB.originalLine; + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.originalColumn - mappingB.originalColumn; + if (cmp !== 0) { + return cmp; + } + + return strcmp(mappingA.name, mappingB.name); +} +exports.compareByGeneratedPositionsDeflated = compareByGeneratedPositionsDeflated; + +function compareByGeneratedPositionsDeflatedNoLine(mappingA, mappingB, onlyCompareGenerated) { + var cmp = mappingA.generatedColumn - mappingB.generatedColumn; + if (cmp !== 0 || onlyCompareGenerated) { + return cmp; + } + + cmp = strcmp(mappingA.source, mappingB.source); + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.originalLine - mappingB.originalLine; + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.originalColumn - mappingB.originalColumn; + if (cmp !== 0) { + return cmp; + } + + return strcmp(mappingA.name, mappingB.name); +} +exports.compareByGeneratedPositionsDeflatedNoLine = compareByGeneratedPositionsDeflatedNoLine; + +function strcmp(aStr1, aStr2) { + if (aStr1 === aStr2) { + return 0; + } + + if (aStr1 === null) { + return 1; // aStr2 !== null + } + + if (aStr2 === null) { + return -1; // aStr1 !== null + } + + if (aStr1 > aStr2) { + return 1; + } + + return -1; +} + +/** + * Comparator between two mappings with inflated source and name strings where + * the generated positions are compared. + */ +function compareByGeneratedPositionsInflated(mappingA, mappingB) { + var cmp = mappingA.generatedLine - mappingB.generatedLine; + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.generatedColumn - mappingB.generatedColumn; + if (cmp !== 0) { + return cmp; + } + + cmp = strcmp(mappingA.source, mappingB.source); + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.originalLine - mappingB.originalLine; + if (cmp !== 0) { + return cmp; + } + + cmp = mappingA.originalColumn - mappingB.originalColumn; + if (cmp !== 0) { + return cmp; + } + + return strcmp(mappingA.name, mappingB.name); +} +exports.compareByGeneratedPositionsInflated = compareByGeneratedPositionsInflated; + +/** + * Strip any JSON XSSI avoidance prefix from the string (as documented + * in the source maps specification), and then parse the string as + * JSON. + */ +function parseSourceMapInput(str) { + return JSON.parse(str.replace(/^\)]}'[^\n]*\n/, '')); +} +exports.parseSourceMapInput = parseSourceMapInput; + +/** + * Compute the URL of a source given the the source root, the source's + * URL, and the source map's URL. + */ +function computeSourceURL(sourceRoot, sourceURL, sourceMapURL) { + sourceURL = sourceURL || ''; + + if (sourceRoot) { + // This follows what Chrome does. + if (sourceRoot[sourceRoot.length - 1] !== '/' && sourceURL[0] !== '/') { + sourceRoot += '/'; + } + // The spec says: + // Line 4: An optional source root, useful for relocating source + // files on a server or removing repeated values in the + // “sources” entry. This value is prepended to the individual + // entries in the “source” field. + sourceURL = sourceRoot + sourceURL; + } + + // Historically, SourceMapConsumer did not take the sourceMapURL as + // a parameter. This mode is still somewhat supported, which is why + // this code block is conditional. However, it's preferable to pass + // the source map URL to SourceMapConsumer, so that this function + // can implement the source URL resolution algorithm as outlined in + // the spec. This block is basically the equivalent of: + // new URL(sourceURL, sourceMapURL).toString() + // ... except it avoids using URL, which wasn't available in the + // older releases of node still supported by this library. + // + // The spec says: + // If the sources are not absolute URLs after prepending of the + // “sourceRoot”, the sources are resolved relative to the + // SourceMap (like resolving script src in a html document). + if (sourceMapURL) { + var parsed = urlParse(sourceMapURL); + if (!parsed) { + throw new Error("sourceMapURL could not be parsed"); + } + if (parsed.path) { + // Strip the last path component, but keep the "/". + var index = parsed.path.lastIndexOf('/'); + if (index >= 0) { + parsed.path = parsed.path.substring(0, index + 1); + } + } + sourceURL = join(urlGenerate(parsed), sourceURL); + } + + return normalize(sourceURL); +} +exports.computeSourceURL = computeSourceURL; diff --git a/node_modules/source-map-js/package.json b/node_modules/source-map-js/package.json new file mode 100644 index 0000000..f58dbeb --- /dev/null +++ b/node_modules/source-map-js/package.json @@ -0,0 +1,71 @@ +{ + "name": "source-map-js", + "description": "Generates and consumes source maps", + "version": "1.2.1", + "homepage": "https://github.com/7rulnik/source-map-js", + "author": "Valentin 7rulnik Semirulnik ", + "contributors": [ + "Nick Fitzgerald ", + "Tobias Koppers ", + "Duncan Beevers ", + "Stephen Crane ", + "Ryan Seddon ", + "Miles Elam ", + "Mihai Bazon ", + "Michael Ficarra ", + "Todd Wolfson ", + "Alexander Solovyov ", + "Felix Gnass ", + "Conrad Irwin ", + "usrbincc ", + "David Glasser ", + "Chase Douglas ", + "Evan Wallace ", + "Heather Arthur ", + "Hugh Kennedy ", + "David Glasser ", + "Simon Lydell ", + "Jmeas Smith ", + "Michael Z Goddard ", + "azu ", + "John Gozde ", + "Adam Kirkton ", + "Chris Montgomery ", + "J. Ryan Stinnett ", + "Jack Herrington ", + "Chris Truter ", + "Daniel Espeset ", + "Jamie Wong ", + "Eddy Bruël ", + "Hawken Rives ", + "Gilad Peleg ", + "djchie ", + "Gary Ye ", + "Nicolas Lalevée " + ], + "repository": "7rulnik/source-map-js", + "main": "./source-map.js", + "files": [ + "source-map.js", + "source-map.d.ts", + "lib/" + ], + "engines": { + "node": ">=0.10.0" + }, + "license": "BSD-3-Clause", + "scripts": { + "test": "npm run build && node test/run-tests.js", + "build": "webpack --color", + "toc": "doctoc --title '## Table of Contents' README.md && doctoc --title '## Table of Contents' CONTRIBUTING.md" + }, + "devDependencies": { + "clean-publish": "^3.1.0", + "doctoc": "^0.15.0", + "webpack": "^1.12.0" + }, + "clean-publish": { + "cleanDocs": true + }, + "typings": "source-map.d.ts" +} diff --git a/node_modules/source-map-js/source-map.d.ts b/node_modules/source-map-js/source-map.d.ts new file mode 100644 index 0000000..ec8892f --- /dev/null +++ b/node_modules/source-map-js/source-map.d.ts @@ -0,0 +1,104 @@ +export interface StartOfSourceMap { + file?: string; + sourceRoot?: string; +} + +export interface RawSourceMap extends StartOfSourceMap { + version: string; + sources: string[]; + names: string[]; + sourcesContent?: string[]; + mappings: string; +} + +export interface Position { + line: number; + column: number; +} + +export interface LineRange extends Position { + lastColumn: number; +} + +export interface FindPosition extends Position { + // SourceMapConsumer.GREATEST_LOWER_BOUND or SourceMapConsumer.LEAST_UPPER_BOUND + bias?: number; +} + +export interface SourceFindPosition extends FindPosition { + source: string; +} + +export interface MappedPosition extends Position { + source: string; + name?: string; +} + +export interface MappingItem { + source: string | null; + generatedLine: number; + generatedColumn: number; + originalLine: number | null; + originalColumn: number | null; + name: string | null; +} + +export class SourceMapConsumer { + static GENERATED_ORDER: number; + static ORIGINAL_ORDER: number; + + static GREATEST_LOWER_BOUND: number; + static LEAST_UPPER_BOUND: number; + + constructor(rawSourceMap: RawSourceMap); + readonly file: string | undefined | null; + readonly sourceRoot: string | undefined | null; + readonly sourcesContent: readonly string[] | null | undefined; + readonly sources: readonly string[] + + computeColumnSpans(): void; + originalPositionFor(generatedPosition: FindPosition): MappedPosition; + generatedPositionFor(originalPosition: SourceFindPosition): LineRange; + allGeneratedPositionsFor(originalPosition: MappedPosition): Position[]; + hasContentsOfAllSources(): boolean; + sourceContentFor(source: string, returnNullOnMissing?: boolean): string | null; + eachMapping(callback: (mapping: MappingItem) => void, context?: any, order?: number): void; +} + +export interface Mapping { + generated: Position; + original?: Position | null; + source?: string | null; + name?: string | null; +} + +export class SourceMapGenerator { + constructor(startOfSourceMap?: StartOfSourceMap); + static fromSourceMap(sourceMapConsumer: SourceMapConsumer, startOfSourceMap?: StartOfSourceMap): SourceMapGenerator; + addMapping(mapping: Mapping): void; + setSourceContent(sourceFile: string, sourceContent: string | null | undefined): void; + applySourceMap(sourceMapConsumer: SourceMapConsumer, sourceFile?: string, sourceMapPath?: string): void; + toString(): string; + toJSON(): RawSourceMap; +} + +export interface CodeWithSourceMap { + code: string; + map: SourceMapGenerator; +} + +export class SourceNode { + constructor(); + constructor(line: number, column: number, source: string); + constructor(line: number, column: number, source: string, chunk?: string, name?: string); + static fromStringWithSourceMap(code: string, sourceMapConsumer: SourceMapConsumer, relativePath?: string): SourceNode; + add(chunk: string): void; + prepend(chunk: string): void; + setSourceContent(sourceFile: string, sourceContent: string): void; + walk(fn: (chunk: string, mapping: MappedPosition) => void): void; + walkSourceContents(fn: (file: string, content: string) => void): void; + join(sep: string): SourceNode; + replaceRight(pattern: string, replacement: string): SourceNode; + toString(): string; + toStringWithSourceMap(startOfSourceMap?: StartOfSourceMap): CodeWithSourceMap; +} diff --git a/node_modules/source-map-js/source-map.js b/node_modules/source-map-js/source-map.js new file mode 100644 index 0000000..bc88fe8 --- /dev/null +++ b/node_modules/source-map-js/source-map.js @@ -0,0 +1,8 @@ +/* + * Copyright 2009-2011 Mozilla Foundation and contributors + * Licensed under the New BSD license. See LICENSE.txt or: + * http://opensource.org/licenses/BSD-3-Clause + */ +exports.SourceMapGenerator = require('./lib/source-map-generator').SourceMapGenerator; +exports.SourceMapConsumer = require('./lib/source-map-consumer').SourceMapConsumer; +exports.SourceNode = require('./lib/source-node').SourceNode; diff --git a/node_modules/string-width/index.d.ts b/node_modules/string-width/index.d.ts new file mode 100644 index 0000000..12b5309 --- /dev/null +++ b/node_modules/string-width/index.d.ts @@ -0,0 +1,29 @@ +declare const stringWidth: { + /** + Get the visual width of a string - the number of columns required to display it. + + Some Unicode characters are [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) and use double the normal width. [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) are stripped and doesn't affect the width. + + @example + ``` + import stringWidth = require('string-width'); + + stringWidth('a'); + //=> 1 + + stringWidth('古'); + //=> 2 + + stringWidth('\u001B[1m古\u001B[22m'); + //=> 2 + ``` + */ + (string: string): number; + + // TODO: remove this in the next major version, refactor the whole definition to: + // declare function stringWidth(string: string): number; + // export = stringWidth; + default: typeof stringWidth; +} + +export = stringWidth; diff --git a/node_modules/string-width/index.js b/node_modules/string-width/index.js new file mode 100644 index 0000000..f4d261a --- /dev/null +++ b/node_modules/string-width/index.js @@ -0,0 +1,47 @@ +'use strict'; +const stripAnsi = require('strip-ansi'); +const isFullwidthCodePoint = require('is-fullwidth-code-point'); +const emojiRegex = require('emoji-regex'); + +const stringWidth = string => { + if (typeof string !== 'string' || string.length === 0) { + return 0; + } + + string = stripAnsi(string); + + if (string.length === 0) { + return 0; + } + + string = string.replace(emojiRegex(), ' '); + + let width = 0; + + for (let i = 0; i < string.length; i++) { + const code = string.codePointAt(i); + + // Ignore control characters + if (code <= 0x1F || (code >= 0x7F && code <= 0x9F)) { + continue; + } + + // Ignore combining characters + if (code >= 0x300 && code <= 0x36F) { + continue; + } + + // Surrogates + if (code > 0xFFFF) { + i++; + } + + width += isFullwidthCodePoint(code) ? 2 : 1; + } + + return width; +}; + +module.exports = stringWidth; +// TODO: remove this in the next major version +module.exports.default = stringWidth; diff --git a/node_modules/string-width/license b/node_modules/string-width/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/string-width/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.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. diff --git a/node_modules/string-width/package.json b/node_modules/string-width/package.json new file mode 100644 index 0000000..28ba7b4 --- /dev/null +++ b/node_modules/string-width/package.json @@ -0,0 +1,56 @@ +{ + "name": "string-width", + "version": "4.2.3", + "description": "Get the visual width of a string - the number of columns required to display it", + "license": "MIT", + "repository": "sindresorhus/string-width", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "string", + "character", + "unicode", + "width", + "visual", + "column", + "columns", + "fullwidth", + "full-width", + "full", + "ansi", + "escape", + "codes", + "cli", + "command-line", + "terminal", + "console", + "cjk", + "chinese", + "japanese", + "korean", + "fixed-width" + ], + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "devDependencies": { + "ava": "^1.4.1", + "tsd": "^0.7.1", + "xo": "^0.24.0" + } +} diff --git a/node_modules/string-width/readme.md b/node_modules/string-width/readme.md new file mode 100644 index 0000000..bdd3141 --- /dev/null +++ b/node_modules/string-width/readme.md @@ -0,0 +1,50 @@ +# string-width + +> Get the visual width of a string - the number of columns required to display it + +Some Unicode characters are [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) and use double the normal width. [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) are stripped and doesn't affect the width. + +Useful to be able to measure the actual width of command-line output. + + +## Install + +``` +$ npm install string-width +``` + + +## Usage + +```js +const stringWidth = require('string-width'); + +stringWidth('a'); +//=> 1 + +stringWidth('古'); +//=> 2 + +stringWidth('\u001B[1m古\u001B[22m'); +//=> 2 +``` + + +## Related + +- [string-width-cli](https://github.com/sindresorhus/string-width-cli) - CLI for this module +- [string-length](https://github.com/sindresorhus/string-length) - Get the real length of a string +- [widest-line](https://github.com/sindresorhus/widest-line) - Get the visual width of the widest line in a string + + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
diff --git a/node_modules/strip-ansi/index.d.ts b/node_modules/strip-ansi/index.d.ts new file mode 100644 index 0000000..907fccc --- /dev/null +++ b/node_modules/strip-ansi/index.d.ts @@ -0,0 +1,17 @@ +/** +Strip [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) from a string. + +@example +``` +import stripAnsi = require('strip-ansi'); + +stripAnsi('\u001B[4mUnicorn\u001B[0m'); +//=> 'Unicorn' + +stripAnsi('\u001B]8;;https://github.com\u0007Click\u001B]8;;\u0007'); +//=> 'Click' +``` +*/ +declare function stripAnsi(string: string): string; + +export = stripAnsi; diff --git a/node_modules/strip-ansi/index.js b/node_modules/strip-ansi/index.js new file mode 100644 index 0000000..9a593df --- /dev/null +++ b/node_modules/strip-ansi/index.js @@ -0,0 +1,4 @@ +'use strict'; +const ansiRegex = require('ansi-regex'); + +module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string; diff --git a/node_modules/strip-ansi/license b/node_modules/strip-ansi/license new file mode 100644 index 0000000..e7af2f7 --- /dev/null +++ b/node_modules/strip-ansi/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.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. diff --git a/node_modules/strip-ansi/package.json b/node_modules/strip-ansi/package.json new file mode 100644 index 0000000..1a41108 --- /dev/null +++ b/node_modules/strip-ansi/package.json @@ -0,0 +1,54 @@ +{ + "name": "strip-ansi", + "version": "6.0.1", + "description": "Strip ANSI escape codes from a string", + "license": "MIT", + "repository": "chalk/strip-ansi", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "strip", + "trim", + "remove", + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.10.0", + "xo": "^0.25.3" + } +} diff --git a/node_modules/strip-ansi/readme.md b/node_modules/strip-ansi/readme.md new file mode 100644 index 0000000..7c4b56d --- /dev/null +++ b/node_modules/strip-ansi/readme.md @@ -0,0 +1,46 @@ +# strip-ansi [![Build Status](https://travis-ci.org/chalk/strip-ansi.svg?branch=master)](https://travis-ci.org/chalk/strip-ansi) + +> Strip [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) from a string + + +## Install + +``` +$ npm install strip-ansi +``` + + +## Usage + +```js +const stripAnsi = require('strip-ansi'); + +stripAnsi('\u001B[4mUnicorn\u001B[0m'); +//=> 'Unicorn' + +stripAnsi('\u001B]8;;https://github.com\u0007Click\u001B]8;;\u0007'); +//=> 'Click' +``` + + +## strip-ansi for enterprise + +Available as part of the Tidelift Subscription. + +The maintainers of strip-ansi and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-strip-ansi?utm_source=npm-strip-ansi&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) + + +## Related + +- [strip-ansi-cli](https://github.com/chalk/strip-ansi-cli) - CLI for this module +- [strip-ansi-stream](https://github.com/chalk/strip-ansi-stream) - Streaming version of this module +- [has-ansi](https://github.com/chalk/has-ansi) - Check if a string has ANSI escape codes +- [ansi-regex](https://github.com/chalk/ansi-regex) - Regular expression for matching ANSI escape codes +- [chalk](https://github.com/chalk/chalk) - Terminal string styling done right + + +## Maintainers + +- [Sindre Sorhus](https://github.com/sindresorhus) +- [Josh Junon](https://github.com/qix-) + diff --git a/node_modules/thenby/LICENSE.TXT b/node_modules/thenby/LICENSE.TXT new file mode 100644 index 0000000..8dada3e --- /dev/null +++ b/node_modules/thenby/LICENSE.TXT @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/node_modules/thenby/README.md b/node_modules/thenby/README.md new file mode 100644 index 0000000..7b7aac0 --- /dev/null +++ b/node_modules/thenby/README.md @@ -0,0 +1,159 @@ + + + + +- [thenBy.js usage](#thenbyjs-usage) + - [Sort by property names](#sort-by-property-names) + - [Sort by unary functions](#sort-by-unary-functions) + - [Extra options](#extra-options) + - [Sort descending](#sort-descending) + - [Case insensitive sorting](#case-insensitive-sorting) + - [Custom compare function](#custom-compare-function) + - [Internationalization: Using javascripts native `Intl.Collator`](#internationalization-using-javascripts-native-intlcollator) + - [A word on performance](#a-word-on-performance) + - [Installing](#installing) + - [Install in your HTML](#install-in-your-html) + - [Install using npm or yarn](#install-using-npm-or-yarn) + + + +# thenBy.js usage + + [![NPM Version][npm-image]][npm-url] + [![NPM Downloads][downloads-image]][downloads-url] + +`thenBy` is a javascript micro library that helps sorting arrays on multiple keys. It allows you to use the [native Array::sort() method](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort) of javascript, but pass in multiple functions to sort that are composed with `firstBy().thenBy().thenBy()` style. + +Example: +```javascript +// first by length of name, then by population, then by ID +data.sort( + firstBy(function (v1, v2) { return v1.name.length - v2.name.length; }) + .thenBy(function (v1, v2) { return v1.population - v2.population; }) + .thenBy(function (v1, v2) { return v1.id - v2.id; }) +); +``` +`thenBy` also offers some nice shortcuts that make the most common ways of sorting even easier and more readable. + +### Sort by property names +Javascript sorting relies heavily on passing discriminator functions that return -1, 0 or 1 for a pair of items. While this is very flexible, often you want to sort on the value of a simple property. As a convenience, thenBy.js builds the appropriate compare function for you if you pass in a property name (instead of a function). The example above would then look like this: +```javascript +// first by length of name, then by population, then by ID +data.sort( + firstBy(function (v1, v2) { return v1.name.length - v2.name.length; }) + .thenBy("population") + .thenBy("id") +); +``` + +If an element doesn't have the property defined, it will sort like the empty string (""). Typically, this will be at the top. + +### Sort by unary functions +You can also pass a function that takes a single item and returns its sorting key. This turns the above expression into: +```javascript +// first by length of name, then by population, then by ID +data.sort( + firstBy(function (v) { return v.name.length; }) + .thenBy("population") + .thenBy("id") +); +``` + +Note that javascript contains a number of standard functions that can be passed in here as well. The Number() function will make your sorting sort on numeric values instead of lexical values: +```javascript +var values = ["2", "20", "03", "-2", "0", 200, "2"]; +var sorted = values.sort(firstBy(Number)); +``` +## Extra options +### Sort descending +thenBy.js allows you to pass in a second parameter for `direction`. If you pass in 'desc' or -1, the sorting will be reversed. So: +```javascript +// first by length of name descending, then by population descending, then by ID ascending +data.sort( + firstBy(function (v1, v2) { return v1.name.length - v2.name.length; }, -1) + .thenBy("population", "desc") + .thenBy("id") +); +``` + +### Case insensitive sorting +(as of v1.2.0) All of the shortcut methods allow you to sort case insensitive as well. The second parameter expects an options object (if it is a number, it is interpreted as `direction` as above). The ignoreCase property can be set to true, like this: +```javascript +// first by name, case insensitive, then by population +data.sort( + firstBy("name", {ignoreCase:true}) + .thenBy("population") +); +``` +If you want to use both descending and ignoreCase, you have to use the options syntax for direction as well: +```javascript +// sort by name, case insensitive and descending +data.sort(firstBy("name", {ignoreCase:true, direction:"desc"})); +``` +### Custom compare function +If you have more specific wishes for the exact sort order, but still want to use the convenience of unary functions or sorting on property names, you can pass in you own compare function in the options. Here we use a compare function that known about the relative values of playing cards:: + +```javascript +const cards = ['2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K', 'A']; +var cardCompare = (c1, c2) =>{ + return cards.indexOf(c1) - cards.indexOf(c2); +} +var handOfCards = [ + { id: 7, suit:"c", card:"A" }, + { id: 8, suit:"d", card:"10" }, + // etc + ]; +handOfCards.sort(firstBy("card", {cmp: cardCompare, direction: "desc"})); + +``` +You can use the `cmp` function together with `direction`, but not with `ignoreCase` (for obvious reasons). + +### Internationalization: Using javascripts native `Intl.Collator` +One of the more interesting custom compare functions you may want to pass in is the native `compare` function that is exposed by `Intl.Collator`. This compare function knows about the different sorting rules in different cultures. Many browsers have these implemented, but in NodeJS, the API is implemented, but only for the English culture. You would use it with thenBy like this: + +```javascript +// in German, ä sorts with a +var germanCompare = new Intl.Collator('de').compare; +// in Swedish, ä sorts after z +var swedishCompare = new Intl.Collator('sv').compare; +data.sort( + firstBy("name", {cmp: swedishCompare}) +); +``` +Check the [details on using Intl.Collator](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Collator). + +## A word on performance +thenBy constructs a comparer function for you. It does this by combining the functions you pass in with a number of small utility functions that perform tasks like "reverting", "combining the current sort order with the previous one", etc. Also, these operations try to work correctly, no matter what content is in the sorted array. There are two steps here that cost time: constructing the über-function and running it. The construction time should always be negligible. The run time however can be slower than when you carefully handcraft the compare function. Still, *normally you shouldn't worry about this*, but if you're sorting very large sets, it could matter. For example, there is some overhead in making several small functions call each other instead of creating one piece of code. Also, if you know your data well, and know that a specific field is *alwways present* and is *always a number*, you could code a significantly faster compare function then thenBy's results. The unit tests contain an extreme example. + +If you use thenBy to combine multiple compare functions into one (where each function expects two parameters), the difference is small. Using unary functions adds some overhead, using direction:desc adds some, using only a property name adds a little, but will check for missing values, which could be optimized. Ignoring case will slow down, but not more so than when handcoded. + +## Installing +### Install in your HTML +To include it into your page/project, just paste the minified code from https://raw.github.com/Teun/thenBy.js/master/thenBy.min.js into yours (699 characters). If you don't want the `firstBy` function in your global namespace, you can assign it to a local variable (see sample.htm). + +### Install using npm or yarn +```npm install thenby``` + +or + +```yarn add thenby``` + +then in your app: + +```var firstBy = require('thenby');``` + +or in TypeScript/ES6: + +```import {firstBy} from "thenby";``` + +For a small demo of how TypeScript support looks in a good editor (i.e. VS Code), [check this short video](https://youtu.be/mKJovFLyxro). + + +Thanks a lot to [bergus](https://github.com/bergus), [hagabaka](https://github.com/hagabaka), [infolyzer](https://github.com/infolyzer) and [Foxhoundn](https://github.com/Foxhoundn) for their improvements. +Thanks to [jsgoupil](https://github.com/jsgoupil) and [HonoluluHenk](https://github.com/HonoluluHenk) for their help on the TypeScript declaration. + + +[npm-image]: https://img.shields.io/npm/v/thenby.svg +[npm-url]: https://npmjs.org/package/thenby +[downloads-image]: https://img.shields.io/npm/dm/thenby.svg +[downloads-url]: https://npmjs.org/package/thenby diff --git a/node_modules/thenby/package.json b/node_modules/thenby/package.json new file mode 100644 index 0000000..4efb912 --- /dev/null +++ b/node_modules/thenby/package.json @@ -0,0 +1,45 @@ +{ + "name": "thenby", + "version": "1.3.4", + "description": "Micro library for sorting arrays using the firstBy().thenBy().thenBy() syntax", + "main": "thenBy.module.js", + "types": "thenBy.module.d.ts", + "repository": { + "type": "git", + "url": "https://github.com/Teun/thenBy.js.git" + }, + "keywords": [ + "sort", + "order", + "sorting", + "arrays", + "multiple" + ], + "files": [ + "thenBy.module.js", + "thenBy.module.d.ts", + "thenBy.min.js" + ], + "scripts": { + "test": "gulp", + "build": "gulp build" + }, + "author": "Teun Duynstee", + "license": "Apache-2.0", + "bugs": { + "url": "https://github.com/Teun/thenBy.js/issues" + }, + "homepage": "https://github.com/Teun/thenBy.js", + "devDependencies": { + "chai": "^3.5.0", + "gulp": "^4.0.2", + "gulp-insert": "^0.5.0", + "gulp-mocha": "^7.0.2", + "gulp-rename": "^1.2.2", + "gulp-replace": "^0.5.4", + "gulp-uglify": "^2.1.2", + "gulp-umd": "^2.0.0", + "performance-now": "^0.2.0" + }, + "dependencies": {} +} diff --git a/node_modules/thenby/thenBy.min.js b/node_modules/thenby/thenBy.min.js new file mode 100644 index 0000000..ba9ef0b --- /dev/null +++ b/node_modules/thenby/thenBy.min.js @@ -0,0 +1,2 @@ +/*** Copyright 2020 Teun Duynstee Licensed under the Apache License, Version 2.0 ***/ +!function(n,t){"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?module.exports=t():n.firstBy=t()}(this,function(){return function(){function n(n){return n}function t(n){return"string"==typeof n?n.toLowerCase():n}function e(e,r){if(r="object"==typeof r?r:{direction:r},"function"!=typeof e){var i=e;e=function(n){return n[i]?n[i]:""}}if(1===e.length){var o=e,f=r.ignoreCase?t:n,u=r.cmp||function(n,t){return nt?1:0};e=function(n,t){return u(f(o(n)),f(o(t)))}}const c={"-1":"",desc:""};return r.direction in c?function(n,t){return-e(n,t)}:e}function r(n,t){var i="function"==typeof this&&!this.firstBy&&this,o=e(n,t),f=i?function(n,t){return i(n,t)||o(n,t)}:o;return f.thenBy=r,f}return r.firstBy=r,r}()}); \ No newline at end of file diff --git a/node_modules/thenby/thenBy.module.d.ts b/node_modules/thenby/thenBy.module.d.ts new file mode 100644 index 0000000..becb6d5 --- /dev/null +++ b/node_modules/thenby/thenBy.module.d.ts @@ -0,0 +1,51 @@ +// Type definitions for thenBy +// Definitions by: Teun Duynstee (with significant help from @HonoluluHenk) +type SortOrder = "asc" | "desc" | -1 | 1; +declare class opt { + direction?:SortOrder; + ignoreCase?:boolean; +} +declare class typedOpt extends opt { + cmp?: (a:T, b:T)=> number; +} +interface IThenBy { + (v1: T, v2: T) : number; + /** + * Full format to compare two elements and determine which sorts first. + * @param compare function that receives two values from the sorted array and returns a number indicating which comes first: < 0: first comes first, 0: doesn't matter, > 0: second comes first. + * @param direction can be used to reverse the sorting by passing -1 + **/ + thenBy(compare: ((v1: T, v2: T) => number), direction?: SortOrder | opt): IThenBy; + /** + * Shorthand for selecting a value to sort on from the sorted element. + * @param select function that receives a value from the sorted array and selects the thing to sort on + * @param direction reverse by passing -1. opt for other options + **/ + thenBy(select: ((v: T) => U), direction?: SortOrder | typedOpt): IThenBy; + /** + * Shorthand for sorting on a simple property. + * @param byPropertyName is the name of the property to sort on as a string + * @param direction reverse by passing -1. opt for other options + **/ + thenBy(byPropertyName: (keyof T), direction?: SortOrder | typedOpt): IThenBy; +} +declare module "thenby" { + /** + * Full format to compare two elements and determine which sorts first. + * @param compare function that receives two values from the sorted array and returns a number indicating which comes first: < 0: first comes first, 0: doesn't matter, > 0: second comes first. + * @param direction can be used to reverse the sorting by passing -1 + **/ + export function firstBy(compare: ((v1: T, v2: T) => number), direction?: SortOrder | opt): IThenBy; + /** + * Shorthand for selecting a value to sort on from the sorted element. + * @param select function that receives a value from the sorted array and selects the thing to sort on + * @param direction reverse by passing -1. opt for other options + **/ + export function firstBy(select: ((v: T) => U), direction?: SortOrder | typedOpt): IThenBy; + /** + * Shorthand for sorting on a simple property. + * @param byPropertyName is the name of the property to sort on as a string + * @param direction reverse by passing -1. opt for other options + **/ + export function firstBy(byPropertyName: (keyof T), direction?: SortOrder | typedOpt): IThenBy; + } diff --git a/node_modules/thenby/thenBy.module.js b/node_modules/thenby/thenBy.module.js new file mode 100644 index 0000000..bd1dccb --- /dev/null +++ b/node_modules/thenby/thenBy.module.js @@ -0,0 +1,60 @@ +/*** + Copyright 2013 Teun Duynstee + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ +module.exports = (function() { + + function identity(v){return v;} + + function ignoreCase(v){return typeof(v)==="string" ? v.toLowerCase() : v;} + + function makeCompareFunction(f, opt){ + opt = typeof(opt)==="object" ? opt : {direction:opt}; + + if(typeof(f)!="function"){ + var prop = f; + // make unary function + f = function(v1){return !!v1[prop] ? v1[prop] : "";} + } + if(f.length === 1) { + // f is a unary function mapping a single item to its sort score + var uf = f; + var preprocess = opt.ignoreCase?ignoreCase:identity; + var cmp = opt.cmp || function(v1,v2) {return v1 < v2 ? -1 : v1 > v2 ? 1 : 0;} + f = function(v1,v2) {return cmp(preprocess(uf(v1)), preprocess(uf(v2)));} + } + const descTokens = {"-1":'', desc:''}; + if(opt.direction in descTokens) return function(v1,v2){return -f(v1,v2)}; + return f; + } + + /* adds a secondary compare function to the target function (`this` context) + which is applied in case the first one returns 0 (equal) + returns a new compare function, which has a `thenBy` method as well */ + function tb(func, opt) { + /* should get value false for the first call. This can be done by calling the + exported function, or the firstBy property on it (for es6 module compatibility) + */ + var x = (typeof(this) == "function" && !this.firstBy) ? this : false; + var y = makeCompareFunction(func, opt); + var f = x ? function(a, b) { + return x(a,b) || y(a,b); + } + : y; + f.thenBy = tb; + return f; + } + tb.firstBy = tb; + return tb; +})(); diff --git a/node_modules/to-regex-range/LICENSE b/node_modules/to-regex-range/LICENSE new file mode 100644 index 0000000..7cccaf9 --- /dev/null +++ b/node_modules/to-regex-range/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015-present, Jon Schlinkert. + +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. diff --git a/node_modules/to-regex-range/README.md b/node_modules/to-regex-range/README.md new file mode 100644 index 0000000..38887da --- /dev/null +++ b/node_modules/to-regex-range/README.md @@ -0,0 +1,305 @@ +# to-regex-range [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=W8YFZ425KND68) [![NPM version](https://img.shields.io/npm/v/to-regex-range.svg?style=flat)](https://www.npmjs.com/package/to-regex-range) [![NPM monthly downloads](https://img.shields.io/npm/dm/to-regex-range.svg?style=flat)](https://npmjs.org/package/to-regex-range) [![NPM total downloads](https://img.shields.io/npm/dt/to-regex-range.svg?style=flat)](https://npmjs.org/package/to-regex-range) [![Linux Build Status](https://img.shields.io/travis/micromatch/to-regex-range.svg?style=flat&label=Travis)](https://travis-ci.org/micromatch/to-regex-range) + +> Pass two numbers, get a regex-compatible source string for matching ranges. Validated against more than 2.78 million test assertions. + +Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save to-regex-range +``` + +
+What does this do? + +
+ +This libary generates the `source` string to be passed to `new RegExp()` for matching a range of numbers. + +**Example** + +```js +const toRegexRange = require('to-regex-range'); +const regex = new RegExp(toRegexRange('15', '95')); +``` + +A string is returned so that you can do whatever you need with it before passing it to `new RegExp()` (like adding `^` or `$` boundaries, defining flags, or combining it another string). + +
+ +
+ +
+Why use this library? + +
+ +### Convenience + +Creating regular expressions for matching numbers gets deceptively complicated pretty fast. + +For example, let's say you need a validation regex for matching part of a user-id, postal code, social security number, tax id, etc: + +* regex for matching `1` => `/1/` (easy enough) +* regex for matching `1` through `5` => `/[1-5]/` (not bad...) +* regex for matching `1` or `5` => `/(1|5)/` (still easy...) +* regex for matching `1` through `50` => `/([1-9]|[1-4][0-9]|50)/` (uh-oh...) +* regex for matching `1` through `55` => `/([1-9]|[1-4][0-9]|5[0-5])/` (no prob, I can do this...) +* regex for matching `1` through `555` => `/([1-9]|[1-9][0-9]|[1-4][0-9]{2}|5[0-4][0-9]|55[0-5])/` (maybe not...) +* regex for matching `0001` through `5555` => `/(0{3}[1-9]|0{2}[1-9][0-9]|0[1-9][0-9]{2}|[1-4][0-9]{3}|5[0-4][0-9]{2}|55[0-4][0-9]|555[0-5])/` (okay, I get the point!) + +The numbers are contrived, but they're also really basic. In the real world you might need to generate a regex on-the-fly for validation. + +**Learn more** + +If you're interested in learning more about [character classes](http://www.regular-expressions.info/charclass.html) and other regex features, I personally have always found [regular-expressions.info](http://www.regular-expressions.info/charclass.html) to be pretty useful. + +### Heavily tested + +As of April 07, 2019, this library runs [>1m test assertions](./test/test.js) against generated regex-ranges to provide brute-force verification that results are correct. + +Tests run in ~280ms on my MacBook Pro, 2.5 GHz Intel Core i7. + +### Optimized + +Generated regular expressions are optimized: + +* duplicate sequences and character classes are reduced using quantifiers +* smart enough to use `?` conditionals when number(s) or range(s) can be positive or negative +* uses fragment caching to avoid processing the same exact string more than once + +
+ +
+ +## Usage + +Add this library to your javascript application with the following line of code + +```js +const toRegexRange = require('to-regex-range'); +``` + +The main export is a function that takes two integers: the `min` value and `max` value (formatted as strings or numbers). + +```js +const source = toRegexRange('15', '95'); +//=> 1[5-9]|[2-8][0-9]|9[0-5] + +const regex = new RegExp(`^${source}$`); +console.log(regex.test('14')); //=> false +console.log(regex.test('50')); //=> true +console.log(regex.test('94')); //=> true +console.log(regex.test('96')); //=> false +``` + +## Options + +### options.capture + +**Type**: `boolean` + +**Deafault**: `undefined` + +Wrap the returned value in parentheses when there is more than one regex condition. Useful when you're dynamically generating ranges. + +```js +console.log(toRegexRange('-10', '10')); +//=> -[1-9]|-?10|[0-9] + +console.log(toRegexRange('-10', '10', { capture: true })); +//=> (-[1-9]|-?10|[0-9]) +``` + +### options.shorthand + +**Type**: `boolean` + +**Deafault**: `undefined` + +Use the regex shorthand for `[0-9]`: + +```js +console.log(toRegexRange('0', '999999')); +//=> [0-9]|[1-9][0-9]{1,5} + +console.log(toRegexRange('0', '999999', { shorthand: true })); +//=> \d|[1-9]\d{1,5} +``` + +### options.relaxZeros + +**Type**: `boolean` + +**Default**: `true` + +This option relaxes matching for leading zeros when when ranges are zero-padded. + +```js +const source = toRegexRange('-0010', '0010'); +const regex = new RegExp(`^${source}$`); +console.log(regex.test('-10')); //=> true +console.log(regex.test('-010')); //=> true +console.log(regex.test('-0010')); //=> true +console.log(regex.test('10')); //=> true +console.log(regex.test('010')); //=> true +console.log(regex.test('0010')); //=> true +``` + +When `relaxZeros` is false, matching is strict: + +```js +const source = toRegexRange('-0010', '0010', { relaxZeros: false }); +const regex = new RegExp(`^${source}$`); +console.log(regex.test('-10')); //=> false +console.log(regex.test('-010')); //=> false +console.log(regex.test('-0010')); //=> true +console.log(regex.test('10')); //=> false +console.log(regex.test('010')); //=> false +console.log(regex.test('0010')); //=> true +``` + +## Examples + +| **Range** | **Result** | **Compile time** | +| --- | --- | --- | +| `toRegexRange(-10, 10)` | `-[1-9]\|-?10\|[0-9]` | _132μs_ | +| `toRegexRange(-100, -10)` | `-1[0-9]\|-[2-9][0-9]\|-100` | _50μs_ | +| `toRegexRange(-100, 100)` | `-[1-9]\|-?[1-9][0-9]\|-?100\|[0-9]` | _42μs_ | +| `toRegexRange(001, 100)` | `0{0,2}[1-9]\|0?[1-9][0-9]\|100` | _109μs_ | +| `toRegexRange(001, 555)` | `0{0,2}[1-9]\|0?[1-9][0-9]\|[1-4][0-9]{2}\|5[0-4][0-9]\|55[0-5]` | _51μs_ | +| `toRegexRange(0010, 1000)` | `0{0,2}1[0-9]\|0{0,2}[2-9][0-9]\|0?[1-9][0-9]{2}\|1000` | _31μs_ | +| `toRegexRange(1, 50)` | `[1-9]\|[1-4][0-9]\|50` | _24μs_ | +| `toRegexRange(1, 55)` | `[1-9]\|[1-4][0-9]\|5[0-5]` | _23μs_ | +| `toRegexRange(1, 555)` | `[1-9]\|[1-9][0-9]\|[1-4][0-9]{2}\|5[0-4][0-9]\|55[0-5]` | _30μs_ | +| `toRegexRange(1, 5555)` | `[1-9]\|[1-9][0-9]{1,2}\|[1-4][0-9]{3}\|5[0-4][0-9]{2}\|55[0-4][0-9]\|555[0-5]` | _43μs_ | +| `toRegexRange(111, 555)` | `11[1-9]\|1[2-9][0-9]\|[2-4][0-9]{2}\|5[0-4][0-9]\|55[0-5]` | _38μs_ | +| `toRegexRange(29, 51)` | `29\|[34][0-9]\|5[01]` | _24μs_ | +| `toRegexRange(31, 877)` | `3[1-9]\|[4-9][0-9]\|[1-7][0-9]{2}\|8[0-6][0-9]\|87[0-7]` | _32μs_ | +| `toRegexRange(5, 5)` | `5` | _8μs_ | +| `toRegexRange(5, 6)` | `5\|6` | _11μs_ | +| `toRegexRange(1, 2)` | `1\|2` | _6μs_ | +| `toRegexRange(1, 5)` | `[1-5]` | _15μs_ | +| `toRegexRange(1, 10)` | `[1-9]\|10` | _22μs_ | +| `toRegexRange(1, 100)` | `[1-9]\|[1-9][0-9]\|100` | _25μs_ | +| `toRegexRange(1, 1000)` | `[1-9]\|[1-9][0-9]{1,2}\|1000` | _31μs_ | +| `toRegexRange(1, 10000)` | `[1-9]\|[1-9][0-9]{1,3}\|10000` | _34μs_ | +| `toRegexRange(1, 100000)` | `[1-9]\|[1-9][0-9]{1,4}\|100000` | _36μs_ | +| `toRegexRange(1, 1000000)` | `[1-9]\|[1-9][0-9]{1,5}\|1000000` | _42μs_ | +| `toRegexRange(1, 10000000)` | `[1-9]\|[1-9][0-9]{1,6}\|10000000` | _42μs_ | + +## Heads up! + +**Order of arguments** + +When the `min` is larger than the `max`, values will be flipped to create a valid range: + +```js +toRegexRange('51', '29'); +``` + +Is effectively flipped to: + +```js +toRegexRange('29', '51'); +//=> 29|[3-4][0-9]|5[0-1] +``` + +**Steps / increments** + +This library does not support steps (increments). A pr to add support would be welcome. + +## History + +### v2.0.0 - 2017-04-21 + +**New features** + +Adds support for zero-padding! + +### v1.0.0 + +**Optimizations** + +Repeating ranges are now grouped using quantifiers. rocessing time is roughly the same, but the generated regex is much smaller, which should result in faster matching. + +## Attribution + +Inspired by the python library [range-regex](https://github.com/dimka665/range-regex). + +## About + +
+Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +
+ +
+Running Tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +
+ +
+Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +
+ +### Related projects + +You might also be interested in these projects: + +* [expand-range](https://www.npmjs.com/package/expand-range): Fast, bash-like range expansion. Expand a range of numbers or letters, uppercase or lowercase. Used… [more](https://github.com/jonschlinkert/expand-range) | [homepage](https://github.com/jonschlinkert/expand-range "Fast, bash-like range expansion. Expand a range of numbers or letters, uppercase or lowercase. Used by micromatch.") +* [fill-range](https://www.npmjs.com/package/fill-range): Fill in a range of numbers or letters, optionally passing an increment or `step` to… [more](https://github.com/jonschlinkert/fill-range) | [homepage](https://github.com/jonschlinkert/fill-range "Fill in a range of numbers or letters, optionally passing an increment or `step` to use, or create a regex-compatible range with `options.toRegex`") +* [micromatch](https://www.npmjs.com/package/micromatch): Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch. | [homepage](https://github.com/micromatch/micromatch "Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch.") +* [repeat-element](https://www.npmjs.com/package/repeat-element): Create an array by repeating the given value n times. | [homepage](https://github.com/jonschlinkert/repeat-element "Create an array by repeating the given value n times.") +* [repeat-string](https://www.npmjs.com/package/repeat-string): Repeat the given string n times. Fastest implementation for repeating a string. | [homepage](https://github.com/jonschlinkert/repeat-string "Repeat the given string n times. Fastest implementation for repeating a string.") + +### Contributors + +| **Commits** | **Contributor** | +| --- | --- | +| 63 | [jonschlinkert](https://github.com/jonschlinkert) | +| 3 | [doowb](https://github.com/doowb) | +| 2 | [realityking](https://github.com/realityking) | + +### Author + +**Jon Schlinkert** + +* [GitHub Profile](https://github.com/jonschlinkert) +* [Twitter Profile](https://twitter.com/jonschlinkert) +* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) + +Please consider supporting me on Patreon, or [start your own Patreon page](https://patreon.com/invite/bxpbvm)! + + + + + +### License + +Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +*** + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on April 07, 2019._ \ No newline at end of file diff --git a/node_modules/to-regex-range/index.js b/node_modules/to-regex-range/index.js new file mode 100644 index 0000000..77fbace --- /dev/null +++ b/node_modules/to-regex-range/index.js @@ -0,0 +1,288 @@ +/*! + * to-regex-range + * + * Copyright (c) 2015-present, Jon Schlinkert. + * Released under the MIT License. + */ + +'use strict'; + +const isNumber = require('is-number'); + +const toRegexRange = (min, max, options) => { + if (isNumber(min) === false) { + throw new TypeError('toRegexRange: expected the first argument to be a number'); + } + + if (max === void 0 || min === max) { + return String(min); + } + + if (isNumber(max) === false) { + throw new TypeError('toRegexRange: expected the second argument to be a number.'); + } + + let opts = { relaxZeros: true, ...options }; + if (typeof opts.strictZeros === 'boolean') { + opts.relaxZeros = opts.strictZeros === false; + } + + let relax = String(opts.relaxZeros); + let shorthand = String(opts.shorthand); + let capture = String(opts.capture); + let wrap = String(opts.wrap); + let cacheKey = min + ':' + max + '=' + relax + shorthand + capture + wrap; + + if (toRegexRange.cache.hasOwnProperty(cacheKey)) { + return toRegexRange.cache[cacheKey].result; + } + + let a = Math.min(min, max); + let b = Math.max(min, max); + + if (Math.abs(a - b) === 1) { + let result = min + '|' + max; + if (opts.capture) { + return `(${result})`; + } + if (opts.wrap === false) { + return result; + } + return `(?:${result})`; + } + + let isPadded = hasPadding(min) || hasPadding(max); + let state = { min, max, a, b }; + let positives = []; + let negatives = []; + + if (isPadded) { + state.isPadded = isPadded; + state.maxLen = String(state.max).length; + } + + if (a < 0) { + let newMin = b < 0 ? Math.abs(b) : 1; + negatives = splitToPatterns(newMin, Math.abs(a), state, opts); + a = state.a = 0; + } + + if (b >= 0) { + positives = splitToPatterns(a, b, state, opts); + } + + state.negatives = negatives; + state.positives = positives; + state.result = collatePatterns(negatives, positives, opts); + + if (opts.capture === true) { + state.result = `(${state.result})`; + } else if (opts.wrap !== false && (positives.length + negatives.length) > 1) { + state.result = `(?:${state.result})`; + } + + toRegexRange.cache[cacheKey] = state; + return state.result; +}; + +function collatePatterns(neg, pos, options) { + let onlyNegative = filterPatterns(neg, pos, '-', false, options) || []; + let onlyPositive = filterPatterns(pos, neg, '', false, options) || []; + let intersected = filterPatterns(neg, pos, '-?', true, options) || []; + let subpatterns = onlyNegative.concat(intersected).concat(onlyPositive); + return subpatterns.join('|'); +} + +function splitToRanges(min, max) { + let nines = 1; + let zeros = 1; + + let stop = countNines(min, nines); + let stops = new Set([max]); + + while (min <= stop && stop <= max) { + stops.add(stop); + nines += 1; + stop = countNines(min, nines); + } + + stop = countZeros(max + 1, zeros) - 1; + + while (min < stop && stop <= max) { + stops.add(stop); + zeros += 1; + stop = countZeros(max + 1, zeros) - 1; + } + + stops = [...stops]; + stops.sort(compare); + return stops; +} + +/** + * Convert a range to a regex pattern + * @param {Number} `start` + * @param {Number} `stop` + * @return {String} + */ + +function rangeToPattern(start, stop, options) { + if (start === stop) { + return { pattern: start, count: [], digits: 0 }; + } + + let zipped = zip(start, stop); + let digits = zipped.length; + let pattern = ''; + let count = 0; + + for (let i = 0; i < digits; i++) { + let [startDigit, stopDigit] = zipped[i]; + + if (startDigit === stopDigit) { + pattern += startDigit; + + } else if (startDigit !== '0' || stopDigit !== '9') { + pattern += toCharacterClass(startDigit, stopDigit, options); + + } else { + count++; + } + } + + if (count) { + pattern += options.shorthand === true ? '\\d' : '[0-9]'; + } + + return { pattern, count: [count], digits }; +} + +function splitToPatterns(min, max, tok, options) { + let ranges = splitToRanges(min, max); + let tokens = []; + let start = min; + let prev; + + for (let i = 0; i < ranges.length; i++) { + let max = ranges[i]; + let obj = rangeToPattern(String(start), String(max), options); + let zeros = ''; + + if (!tok.isPadded && prev && prev.pattern === obj.pattern) { + if (prev.count.length > 1) { + prev.count.pop(); + } + + prev.count.push(obj.count[0]); + prev.string = prev.pattern + toQuantifier(prev.count); + start = max + 1; + continue; + } + + if (tok.isPadded) { + zeros = padZeros(max, tok, options); + } + + obj.string = zeros + obj.pattern + toQuantifier(obj.count); + tokens.push(obj); + start = max + 1; + prev = obj; + } + + return tokens; +} + +function filterPatterns(arr, comparison, prefix, intersection, options) { + let result = []; + + for (let ele of arr) { + let { string } = ele; + + // only push if _both_ are negative... + if (!intersection && !contains(comparison, 'string', string)) { + result.push(prefix + string); + } + + // or _both_ are positive + if (intersection && contains(comparison, 'string', string)) { + result.push(prefix + string); + } + } + return result; +} + +/** + * Zip strings + */ + +function zip(a, b) { + let arr = []; + for (let i = 0; i < a.length; i++) arr.push([a[i], b[i]]); + return arr; +} + +function compare(a, b) { + return a > b ? 1 : b > a ? -1 : 0; +} + +function contains(arr, key, val) { + return arr.some(ele => ele[key] === val); +} + +function countNines(min, len) { + return Number(String(min).slice(0, -len) + '9'.repeat(len)); +} + +function countZeros(integer, zeros) { + return integer - (integer % Math.pow(10, zeros)); +} + +function toQuantifier(digits) { + let [start = 0, stop = ''] = digits; + if (stop || start > 1) { + return `{${start + (stop ? ',' + stop : '')}}`; + } + return ''; +} + +function toCharacterClass(a, b, options) { + return `[${a}${(b - a === 1) ? '' : '-'}${b}]`; +} + +function hasPadding(str) { + return /^-?(0+)\d/.test(str); +} + +function padZeros(value, tok, options) { + if (!tok.isPadded) { + return value; + } + + let diff = Math.abs(tok.maxLen - String(value).length); + let relax = options.relaxZeros !== false; + + switch (diff) { + case 0: + return ''; + case 1: + return relax ? '0?' : '0'; + case 2: + return relax ? '0{0,2}' : '00'; + default: { + return relax ? `0{0,${diff}}` : `0{${diff}}`; + } + } +} + +/** + * Cache + */ + +toRegexRange.cache = {}; +toRegexRange.clearCache = () => (toRegexRange.cache = {}); + +/** + * Expose `toRegexRange` + */ + +module.exports = toRegexRange; diff --git a/node_modules/to-regex-range/package.json b/node_modules/to-regex-range/package.json new file mode 100644 index 0000000..4ef194f --- /dev/null +++ b/node_modules/to-regex-range/package.json @@ -0,0 +1,88 @@ +{ + "name": "to-regex-range", + "description": "Pass two numbers, get a regex-compatible source string for matching ranges. Validated against more than 2.78 million test assertions.", + "version": "5.0.1", + "homepage": "https://github.com/micromatch/to-regex-range", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "contributors": [ + "Jon Schlinkert (http://twitter.com/jonschlinkert)", + "Rouven Weßling (www.rouvenwessling.de)" + ], + "repository": "micromatch/to-regex-range", + "bugs": { + "url": "https://github.com/micromatch/to-regex-range/issues" + }, + "license": "MIT", + "files": [ + "index.js" + ], + "main": "index.js", + "engines": { + "node": ">=8.0" + }, + "scripts": { + "test": "mocha" + }, + "dependencies": { + "is-number": "^7.0.0" + }, + "devDependencies": { + "fill-range": "^6.0.0", + "gulp-format-md": "^2.0.0", + "mocha": "^6.0.2", + "text-table": "^0.2.0", + "time-diff": "^0.3.1" + }, + "keywords": [ + "bash", + "date", + "expand", + "expansion", + "expression", + "glob", + "match", + "match date", + "match number", + "match numbers", + "match year", + "matches", + "matching", + "number", + "numbers", + "numerical", + "range", + "ranges", + "regex", + "regexp", + "regular", + "regular expression", + "sequence" + ], + "verb": { + "layout": "default", + "toc": false, + "tasks": [ + "readme" + ], + "plugins": [ + "gulp-format-md" + ], + "lint": { + "reflinks": true + }, + "helpers": { + "examples": { + "displayName": "examples" + } + }, + "related": { + "list": [ + "expand-range", + "fill-range", + "micromatch", + "repeat-element", + "repeat-string" + ] + } + } +} diff --git a/node_modules/ulid/LICENSE b/node_modules/ulid/LICENSE new file mode 100644 index 0000000..c711d32 --- /dev/null +++ b/node_modules/ulid/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2017 Alizain Feerasta + +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. diff --git a/node_modules/ulid/README.md b/node_modules/ulid/README.md new file mode 100644 index 0000000..530613c --- /dev/null +++ b/node_modules/ulid/README.md @@ -0,0 +1,183 @@ +

+
+
+ ulid +
+
+
+

+ +[![Tests](https://github.com/ulid/javascript/actions/workflows/test.yml/badge.svg)](https://github.com/ulid/javascript/actions/workflows/test.yml) +[![codecov](https://codecov.io/gh/ulid/javascript/branch/master/graph/badge.svg)](https://codecov.io/gh/ulid/javascript) +[![npm](https://img.shields.io/npm/dm/ulid.svg)](https://www.npmjs.com/package/ulid) + +# Universally Unique Lexicographically Sortable Identifier + +UUID can be suboptimal for many uses-cases because: + +- It isn't the most character efficient way of encoding 128 bits of randomness +- UUID v1/v2 is impractical in many environments, as it requires access to a unique, stable MAC address +- UUID v3/v5 requires a unique seed and produces randomly distributed IDs, which can cause fragmentation in many data structures +- UUID v4 provides no other information than randomness which can cause fragmentation in many data structures + +Instead, herein is proposed ULID: + +- 128-bit compatibility with UUID +- 1.21e+24 unique ULIDs per millisecond +- Lexicographically sortable! +- Canonically encoded as a 26 character string, as opposed to the 36 character UUID +- Uses Crockford's base32 for better efficiency and readability (5 bits per character) +- Case insensitive +- No special characters (URL safe) +- Monotonic sort order (correctly detects and handles the same millisecond) + +## Install with a script tag + +```html + + +``` + +## Install with NPM + +``` +npm install --save ulid +``` + +### Import + +**TypeScript, ES6+, Babel, Webpack, Rollup, etc.. environments** +```javascript +import { ulid } from 'ulid' + +ulid() // 01ARZ3NDEKTSV4RRFFQ69G5FAV +``` + +**CommonJS environments** +```javascript +const ULID = require('ulid') + +ULID.ulid() +``` + +**AMD (RequireJS) environments** +```javascript +define(['ULID'] , function (ULID) { + ULID.ulid() +}); +``` + +## Usage + +To generate a ULID, simply run the function! + +```javascript +import { ulid } from 'ulid' + +ulid() // 01ARZ3NDEKTSV4RRFFQ69G5FAV +``` + +### Seed Time + +You can also input a seed time which will consistently give you the same string for the time component. This is useful for migrating to ulid. + +```javascript +ulid(1469918176385) // 01ARYZ6S41TSV4RRFFQ69G5FAV +``` + +### Monotonic ULIDs + +To generate monotonically increasing ULIDs, create a monotonic counter. + +*Note that the same seed time is being passed in for this example to demonstrate its behaviour when generating multiple ULIDs within the same millisecond* + +```javascript +import { monotonicFactory } from 'ulid' + +const ulid = monotonicFactory() + +// Strict ordering for the same timestamp, by incrementing the least-significant random bit by 1 +ulid(150000) // 000XAL6S41ACTAV9WEVGEMMVR8 +ulid(150000) // 000XAL6S41ACTAV9WEVGEMMVR9 +ulid(150000) // 000XAL6S41ACTAV9WEVGEMMVRA +ulid(150000) // 000XAL6S41ACTAV9WEVGEMMVRB +ulid(150000) // 000XAL6S41ACTAV9WEVGEMMVRC + +// Even if a lower timestamp is passed (or generated), it will preserve sort order +ulid(100000) // 000XAL6S41ACTAV9WEVGEMMVRD +``` + +### Pseudo-Random Number Generators + +`ulid` automatically detects a suitable (cryptographically-secure) PRNG. In the browser it will use `crypto.getRandomValues` and on node it will use `crypto.randomBytes`. + +#### Allowing the insecure `Math.random` + +By default, `ulid` will not use `Math.random`, because that is insecure. To allow the use of `Math.random`, you'll have to use `factory` and `detectPrng`. + +```javascript +import { factory, detectPrng } from 'ulid' + +const prng = detectPrng(true) // pass `true` to allow insecure +const ulid = factory(prng) + +ulid() // 01BXAVRG61YJ5YSBRM51702F6M +``` + +#### Use your own PRNG + +To use your own pseudo-random number generator, import the factory, and pass it your generator function. + +```javascript +import { factory } from 'ulid' +import prng from 'somewhere' + +const ulid = factory(prng) + +ulid() // 01BXAVRG61YJ5YSBRM51702F6M +``` + +You can also pass in a `prng` to the `monotonicFactory` function. + +```javascript +import { monotonicFactory } from 'ulid' +import prng from 'somewhere' + +const ulid = monotonicFactory(prng) + +ulid() // 01BXAVRG61YJ5YSBRM51702F6M +``` + +## Implementations in other languages + +Refer to [ulid/spec](https://github.com/ulid/spec) + +## Specification + +Refer to [ulid/spec](https://github.com/ulid/spec) + +## Test Suite + +``` +npm test +``` + +## Performance + +``` +npm run perf +``` + +``` +ulid +336,331,131 op/s » encodeTime +102,041,736 op/s » encodeRandom +17,408 op/s » generate + + +Suites: 1 +Benches: 3 +Elapsed: 7,285.75 ms +``` diff --git a/node_modules/ulid/bin/cli.js b/node_modules/ulid/bin/cli.js new file mode 100755 index 0000000..cb8b739 --- /dev/null +++ b/node_modules/ulid/bin/cli.js @@ -0,0 +1,4 @@ +#! /usr/bin/env node + +var ULID = require('../dist/index.umd.js') +process.stdout.write(ULID.ulid() + '\n') diff --git a/node_modules/ulid/dist/index.d.ts b/node_modules/ulid/dist/index.d.ts new file mode 100644 index 0000000..8f0ac90 --- /dev/null +++ b/node_modules/ulid/dist/index.d.ts @@ -0,0 +1,19 @@ +export interface PRNG { + (): number; +} +export interface ULID { + (seedTime?: number): string; +} +export interface LibError extends Error { + source: string; +} +export declare function replaceCharAt(str: string, index: number, char: string): string; +export declare function incrementBase32(str: string): string; +export declare function randomChar(prng: PRNG): string; +export declare function encodeTime(now: number, len: number): string; +export declare function encodeRandom(len: number, prng: PRNG): string; +export declare function decodeTime(id: string): number; +export declare function detectPrng(allowInsecure?: boolean, root?: any): PRNG; +export declare function factory(currPrng?: PRNG): ULID; +export declare function monotonicFactory(currPrng?: PRNG): ULID; +export declare const ulid: ULID; diff --git a/node_modules/ulid/dist/index.esm.js b/node_modules/ulid/dist/index.esm.js new file mode 100644 index 0000000..1a788e4 --- /dev/null +++ b/node_modules/ulid/dist/index.esm.js @@ -0,0 +1,158 @@ +function createError(message) { + const err = new Error(message); + err.source = "ulid"; + return err; +} +// These values should NEVER change. If +// they do, we're no longer making ulids! +const ENCODING = "0123456789ABCDEFGHJKMNPQRSTVWXYZ"; // Crockford's Base32 +const ENCODING_LEN = ENCODING.length; +const TIME_MAX = Math.pow(2, 48) - 1; +const TIME_LEN = 10; +const RANDOM_LEN = 16; +function replaceCharAt(str, index, char) { + if (index > str.length - 1) { + return str; + } + return str.substr(0, index) + char + str.substr(index + 1); +} +function incrementBase32(str) { + let done = undefined; + let index = str.length; + let char; + let charIndex; + const maxCharIndex = ENCODING_LEN - 1; + while (!done && index-- >= 0) { + char = str[index]; + charIndex = ENCODING.indexOf(char); + if (charIndex === -1) { + throw createError("incorrectly encoded string"); + } + if (charIndex === maxCharIndex) { + str = replaceCharAt(str, index, ENCODING[0]); + continue; + } + done = replaceCharAt(str, index, ENCODING[charIndex + 1]); + } + if (typeof done === "string") { + return done; + } + throw createError("cannot increment this string"); +} +function randomChar(prng) { + let rand = Math.floor(prng() * ENCODING_LEN); + if (rand === ENCODING_LEN) { + rand = ENCODING_LEN - 1; + } + return ENCODING.charAt(rand); +} +function encodeTime(now, len) { + if (isNaN(now)) { + throw new Error(now + " must be a number"); + } + if (now > TIME_MAX) { + throw createError("cannot encode time greater than " + TIME_MAX); + } + if (now < 0) { + throw createError("time must be positive"); + } + if (Number.isInteger(Number(now)) === false) { + throw createError("time must be an integer"); + } + let mod; + let str = ""; + for (; len > 0; len--) { + mod = now % ENCODING_LEN; + str = ENCODING.charAt(mod) + str; + now = (now - mod) / ENCODING_LEN; + } + return str; +} +function encodeRandom(len, prng) { + let str = ""; + for (; len > 0; len--) { + str = randomChar(prng) + str; + } + return str; +} +function decodeTime(id) { + if (id.length !== TIME_LEN + RANDOM_LEN) { + throw createError("malformed ulid"); + } + var time = id + .substr(0, TIME_LEN) + .split("") + .reverse() + .reduce((carry, char, index) => { + const encodingIndex = ENCODING.indexOf(char); + if (encodingIndex === -1) { + throw createError("invalid character found: " + char); + } + return (carry += encodingIndex * Math.pow(ENCODING_LEN, index)); + }, 0); + if (time > TIME_MAX) { + throw createError("malformed ulid, timestamp too large"); + } + return time; +} +function detectPrng(allowInsecure = false, root) { + if (!root) { + root = typeof window !== "undefined" ? window : null; + } + const browserCrypto = root && (root.crypto || root.msCrypto); + if (browserCrypto) { + return () => { + const buffer = new Uint8Array(1); + browserCrypto.getRandomValues(buffer); + return buffer[0] / 0xff; + }; + } + else { + try { + const nodeCrypto = require("crypto"); + return () => nodeCrypto.randomBytes(1).readUInt8() / 0xff; + } + catch (e) { } + } + if (allowInsecure) { + try { + console.error("secure crypto unusable, falling back to insecure Math.random()!"); + } + catch (e) { } + return () => Math.random(); + } + throw createError("secure crypto unusable, insecure Math.random not allowed"); +} +function factory(currPrng) { + if (!currPrng) { + currPrng = detectPrng(); + } + return function ulid(seedTime) { + if (isNaN(seedTime)) { + seedTime = Date.now(); + } + return encodeTime(seedTime, TIME_LEN) + encodeRandom(RANDOM_LEN, currPrng); + }; +} +function monotonicFactory(currPrng) { + if (!currPrng) { + currPrng = detectPrng(); + } + let lastTime = 0; + let lastRandom; + return function ulid(seedTime) { + if (isNaN(seedTime)) { + seedTime = Date.now(); + } + if (seedTime <= lastTime) { + const incrementedRandom = (lastRandom = incrementBase32(lastRandom)); + return encodeTime(lastTime, TIME_LEN) + incrementedRandom; + } + lastTime = seedTime; + const newRandom = (lastRandom = encodeRandom(RANDOM_LEN, currPrng)); + return encodeTime(seedTime, TIME_LEN) + newRandom; + }; +} +const ulid = factory(); + +export { decodeTime, detectPrng, encodeRandom, encodeTime, factory, incrementBase32, monotonicFactory, randomChar, replaceCharAt, ulid }; diff --git a/node_modules/ulid/dist/index.js b/node_modules/ulid/dist/index.js new file mode 100644 index 0000000..86ab99b --- /dev/null +++ b/node_modules/ulid/dist/index.js @@ -0,0 +1,156 @@ +function createError(message) { + const err = new Error(message); + err.source = "ulid"; + return err; +} +// These values should NEVER change. If +// they do, we're no longer making ulids! +const ENCODING = "0123456789ABCDEFGHJKMNPQRSTVWXYZ"; // Crockford's Base32 +const ENCODING_LEN = ENCODING.length; +const TIME_MAX = Math.pow(2, 48) - 1; +const TIME_LEN = 10; +const RANDOM_LEN = 16; +export function replaceCharAt(str, index, char) { + if (index > str.length - 1) { + return str; + } + return str.substr(0, index) + char + str.substr(index + 1); +} +export function incrementBase32(str) { + let done = undefined; + let index = str.length; + let char; + let charIndex; + const maxCharIndex = ENCODING_LEN - 1; + while (!done && index-- >= 0) { + char = str[index]; + charIndex = ENCODING.indexOf(char); + if (charIndex === -1) { + throw createError("incorrectly encoded string"); + } + if (charIndex === maxCharIndex) { + str = replaceCharAt(str, index, ENCODING[0]); + continue; + } + done = replaceCharAt(str, index, ENCODING[charIndex + 1]); + } + if (typeof done === "string") { + return done; + } + throw createError("cannot increment this string"); +} +export function randomChar(prng) { + let rand = Math.floor(prng() * ENCODING_LEN); + if (rand === ENCODING_LEN) { + rand = ENCODING_LEN - 1; + } + return ENCODING.charAt(rand); +} +export function encodeTime(now, len) { + if (isNaN(now)) { + throw new Error(now + " must be a number"); + } + if (now > TIME_MAX) { + throw createError("cannot encode time greater than " + TIME_MAX); + } + if (now < 0) { + throw createError("time must be positive"); + } + if (Number.isInteger(Number(now)) === false) { + throw createError("time must be an integer"); + } + let mod; + let str = ""; + for (; len > 0; len--) { + mod = now % ENCODING_LEN; + str = ENCODING.charAt(mod) + str; + now = (now - mod) / ENCODING_LEN; + } + return str; +} +export function encodeRandom(len, prng) { + let str = ""; + for (; len > 0; len--) { + str = randomChar(prng) + str; + } + return str; +} +export function decodeTime(id) { + if (id.length !== TIME_LEN + RANDOM_LEN) { + throw createError("malformed ulid"); + } + var time = id + .substr(0, TIME_LEN) + .split("") + .reverse() + .reduce((carry, char, index) => { + const encodingIndex = ENCODING.indexOf(char); + if (encodingIndex === -1) { + throw createError("invalid character found: " + char); + } + return (carry += encodingIndex * Math.pow(ENCODING_LEN, index)); + }, 0); + if (time > TIME_MAX) { + throw createError("malformed ulid, timestamp too large"); + } + return time; +} +export function detectPrng(allowInsecure = false, root) { + if (!root) { + root = typeof window !== "undefined" ? window : null; + } + const browserCrypto = root && (root.crypto || root.msCrypto); + if (browserCrypto) { + return () => { + const buffer = new Uint8Array(1); + browserCrypto.getRandomValues(buffer); + return buffer[0] / 0xff; + }; + } + else { + try { + const nodeCrypto = require("crypto"); + return () => nodeCrypto.randomBytes(1).readUInt8() / 0xff; + } + catch (e) { } + } + if (allowInsecure) { + try { + console.error("secure crypto unusable, falling back to insecure Math.random()!"); + } + catch (e) { } + return () => Math.random(); + } + throw createError("secure crypto unusable, insecure Math.random not allowed"); +} +export function factory(currPrng) { + if (!currPrng) { + currPrng = detectPrng(); + } + return function ulid(seedTime) { + if (isNaN(seedTime)) { + seedTime = Date.now(); + } + return encodeTime(seedTime, TIME_LEN) + encodeRandom(RANDOM_LEN, currPrng); + }; +} +export function monotonicFactory(currPrng) { + if (!currPrng) { + currPrng = detectPrng(); + } + let lastTime = 0; + let lastRandom; + return function ulid(seedTime) { + if (isNaN(seedTime)) { + seedTime = Date.now(); + } + if (seedTime <= lastTime) { + const incrementedRandom = (lastRandom = incrementBase32(lastRandom)); + return encodeTime(lastTime, TIME_LEN) + incrementedRandom; + } + lastTime = seedTime; + const newRandom = (lastRandom = encodeRandom(RANDOM_LEN, currPrng)); + return encodeTime(seedTime, TIME_LEN) + newRandom; + }; +} +export const ulid = factory(); diff --git a/node_modules/ulid/dist/index.umd.js b/node_modules/ulid/dist/index.umd.js new file mode 100644 index 0000000..9363732 --- /dev/null +++ b/node_modules/ulid/dist/index.umd.js @@ -0,0 +1,175 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : + typeof define === 'function' && define.amd ? define(['exports'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.ULID = {})); +})(this, (function (exports) { 'use strict'; + + function createError(message) { + const err = new Error(message); + err.source = "ulid"; + return err; + } + // These values should NEVER change. If + // they do, we're no longer making ulids! + const ENCODING = "0123456789ABCDEFGHJKMNPQRSTVWXYZ"; // Crockford's Base32 + const ENCODING_LEN = ENCODING.length; + const TIME_MAX = Math.pow(2, 48) - 1; + const TIME_LEN = 10; + const RANDOM_LEN = 16; + function replaceCharAt(str, index, char) { + if (index > str.length - 1) { + return str; + } + return str.substr(0, index) + char + str.substr(index + 1); + } + function incrementBase32(str) { + let done = undefined; + let index = str.length; + let char; + let charIndex; + const maxCharIndex = ENCODING_LEN - 1; + while (!done && index-- >= 0) { + char = str[index]; + charIndex = ENCODING.indexOf(char); + if (charIndex === -1) { + throw createError("incorrectly encoded string"); + } + if (charIndex === maxCharIndex) { + str = replaceCharAt(str, index, ENCODING[0]); + continue; + } + done = replaceCharAt(str, index, ENCODING[charIndex + 1]); + } + if (typeof done === "string") { + return done; + } + throw createError("cannot increment this string"); + } + function randomChar(prng) { + let rand = Math.floor(prng() * ENCODING_LEN); + if (rand === ENCODING_LEN) { + rand = ENCODING_LEN - 1; + } + return ENCODING.charAt(rand); + } + function encodeTime(now, len) { + if (isNaN(now)) { + throw new Error(now + " must be a number"); + } + if (now > TIME_MAX) { + throw createError("cannot encode time greater than " + TIME_MAX); + } + if (now < 0) { + throw createError("time must be positive"); + } + if (Number.isInteger(Number(now)) === false) { + throw createError("time must be an integer"); + } + let mod; + let str = ""; + for (; len > 0; len--) { + mod = now % ENCODING_LEN; + str = ENCODING.charAt(mod) + str; + now = (now - mod) / ENCODING_LEN; + } + return str; + } + function encodeRandom(len, prng) { + let str = ""; + for (; len > 0; len--) { + str = randomChar(prng) + str; + } + return str; + } + function decodeTime(id) { + if (id.length !== TIME_LEN + RANDOM_LEN) { + throw createError("malformed ulid"); + } + var time = id + .substr(0, TIME_LEN) + .split("") + .reverse() + .reduce((carry, char, index) => { + const encodingIndex = ENCODING.indexOf(char); + if (encodingIndex === -1) { + throw createError("invalid character found: " + char); + } + return (carry += encodingIndex * Math.pow(ENCODING_LEN, index)); + }, 0); + if (time > TIME_MAX) { + throw createError("malformed ulid, timestamp too large"); + } + return time; + } + function detectPrng(allowInsecure = false, root) { + if (!root) { + root = typeof window !== "undefined" ? window : null; + } + const browserCrypto = root && (root.crypto || root.msCrypto); + if (browserCrypto) { + return () => { + const buffer = new Uint8Array(1); + browserCrypto.getRandomValues(buffer); + return buffer[0] / 0xff; + }; + } + else { + try { + const nodeCrypto = require("crypto"); + return () => nodeCrypto.randomBytes(1).readUInt8() / 0xff; + } + catch (e) { } + } + if (allowInsecure) { + try { + console.error("secure crypto unusable, falling back to insecure Math.random()!"); + } + catch (e) { } + return () => Math.random(); + } + throw createError("secure crypto unusable, insecure Math.random not allowed"); + } + function factory(currPrng) { + if (!currPrng) { + currPrng = detectPrng(); + } + return function ulid(seedTime) { + if (isNaN(seedTime)) { + seedTime = Date.now(); + } + return encodeTime(seedTime, TIME_LEN) + encodeRandom(RANDOM_LEN, currPrng); + }; + } + function monotonicFactory(currPrng) { + if (!currPrng) { + currPrng = detectPrng(); + } + let lastTime = 0; + let lastRandom; + return function ulid(seedTime) { + if (isNaN(seedTime)) { + seedTime = Date.now(); + } + if (seedTime <= lastTime) { + const incrementedRandom = (lastRandom = incrementBase32(lastRandom)); + return encodeTime(lastTime, TIME_LEN) + incrementedRandom; + } + lastTime = seedTime; + const newRandom = (lastRandom = encodeRandom(RANDOM_LEN, currPrng)); + return encodeTime(seedTime, TIME_LEN) + newRandom; + }; + } + const ulid = factory(); + + exports.decodeTime = decodeTime; + exports.detectPrng = detectPrng; + exports.encodeRandom = encodeRandom; + exports.encodeTime = encodeTime; + exports.factory = factory; + exports.incrementBase32 = incrementBase32; + exports.monotonicFactory = monotonicFactory; + exports.randomChar = randomChar; + exports.replaceCharAt = replaceCharAt; + exports.ulid = ulid; + +})); diff --git a/node_modules/ulid/package.json b/node_modules/ulid/package.json new file mode 100644 index 0000000..1ea9235 --- /dev/null +++ b/node_modules/ulid/package.json @@ -0,0 +1,51 @@ +{ + "name": "ulid", + "version": "2.4.0", + "description": "A universally-unique, lexicographically-sortable, identifier generator", + "main": "./dist/index.umd.js", + "module": "./dist/index.esm.js", + "types": "./dist/index.d.ts", + "esnext": "./dist/index.js", + "bin": "./bin/cli.js", + "scripts": { + "build": "npm run clean && npm run ts && npm run rollup", + "clean": "rm -rf ./dist", + "perf": "./node_modules/.bin/matcha perf.js", + "rollup": "./node_modules/.bin/rollup -c", + "test": "npm run test:coverage", + "test:specs": "mocha -- -R spec", + "test:coverage": "c8 --check-coverage --lines 87 --functions 100 --src ./lib npm run test:specs", + "ts": "./node_modules/.bin/tsc -p ." + }, + "files": [ + "bin", + "dist", + "stubs" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/ulid/javascript.git" + }, + "browser": { + "crypto": "./stubs/crypto.js" + }, + "author": "Alizain Feerasta", + "license": "MIT", + "bugs": { + "url": "https://github.com/ulid/javascript/issues" + }, + "homepage": "https://github.com/ulid/javascript#readme", + "devDependencies": { + "@rollup/plugin-babel": "^6.0.4", + "@rollup/plugin-typescript": "^11.1.6", + "@types/node": "^22.13.10", + "c8": "^10.1.3", + "lolex": "^2.7.5", + "matcha": "^0.7.0", + "mocha": "^11.1.0", + "rollup": "^4.35.0", + "tslib": "^2.8.1", + "typedoc": "^0.9.0", + "typescript": "^5.8.2" + } +} diff --git a/node_modules/ulid/stubs/crypto.js b/node_modules/ulid/stubs/crypto.js new file mode 100644 index 0000000..e69de29 diff --git a/node_modules/universalify/LICENSE b/node_modules/universalify/LICENSE new file mode 100644 index 0000000..514e84e --- /dev/null +++ b/node_modules/universalify/LICENSE @@ -0,0 +1,20 @@ +(The MIT License) + +Copyright (c) 2017, Ryan Zimmerman + +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. diff --git a/node_modules/universalify/README.md b/node_modules/universalify/README.md new file mode 100644 index 0000000..1184939 --- /dev/null +++ b/node_modules/universalify/README.md @@ -0,0 +1,76 @@ +# universalify + +![GitHub Workflow Status (branch)](https://img.shields.io/github/actions/workflow/status/RyanZim/universalify/ci.yml?branch=master) +![Coveralls github branch](https://img.shields.io/coveralls/github/RyanZim/universalify/master.svg) +![npm](https://img.shields.io/npm/dm/universalify.svg) +![npm](https://img.shields.io/npm/l/universalify.svg) + +Make a callback- or promise-based function support both promises and callbacks. + +Uses the native promise implementation. + +## Installation + +```bash +npm install universalify +``` + +## API + +### `universalify.fromCallback(fn)` + +Takes a callback-based function to universalify, and returns the universalified function. + +Function must take a callback as the last parameter that will be called with the signature `(error, result)`. `universalify` does not support calling the callback with three or more arguments, and does not ensure that the callback is only called once. + +```js +function callbackFn (n, cb) { + setTimeout(() => cb(null, n), 15) +} + +const fn = universalify.fromCallback(callbackFn) + +// Works with Promises: +fn('Hello World!') +.then(result => console.log(result)) // -> Hello World! +.catch(error => console.error(error)) + +// Works with Callbacks: +fn('Hi!', (error, result) => { + if (error) return console.error(error) + console.log(result) + // -> Hi! +}) +``` + +### `universalify.fromPromise(fn)` + +Takes a promise-based function to universalify, and returns the universalified function. + +Function must return a valid JS promise. `universalify` does not ensure that a valid promise is returned. + +```js +function promiseFn (n) { + return new Promise(resolve => { + setTimeout(() => resolve(n), 15) + }) +} + +const fn = universalify.fromPromise(promiseFn) + +// Works with Promises: +fn('Hello World!') +.then(result => console.log(result)) // -> Hello World! +.catch(error => console.error(error)) + +// Works with Callbacks: +fn('Hi!', (error, result) => { + if (error) return console.error(error) + console.log(result) + // -> Hi! +}) +``` + +## License + +MIT diff --git a/node_modules/universalify/index.js b/node_modules/universalify/index.js new file mode 100644 index 0000000..233beac --- /dev/null +++ b/node_modules/universalify/index.js @@ -0,0 +1,24 @@ +'use strict' + +exports.fromCallback = function (fn) { + return Object.defineProperty(function (...args) { + if (typeof args[args.length - 1] === 'function') fn.apply(this, args) + else { + return new Promise((resolve, reject) => { + args.push((err, res) => (err != null) ? reject(err) : resolve(res)) + fn.apply(this, args) + }) + } + }, 'name', { value: fn.name }) +} + +exports.fromPromise = function (fn) { + return Object.defineProperty(function (...args) { + const cb = args[args.length - 1] + if (typeof cb !== 'function') return fn.apply(this, args) + else { + args.pop() + fn.apply(this, args).then(r => cb(null, r), cb) + } + }, 'name', { value: fn.name }) +} diff --git a/node_modules/universalify/package.json b/node_modules/universalify/package.json new file mode 100644 index 0000000..d60fccb --- /dev/null +++ b/node_modules/universalify/package.json @@ -0,0 +1,34 @@ +{ + "name": "universalify", + "version": "2.0.1", + "description": "Make a callback- or promise-based function support both promises and callbacks.", + "keywords": [ + "callback", + "native", + "promise" + ], + "homepage": "https://github.com/RyanZim/universalify#readme", + "bugs": "https://github.com/RyanZim/universalify/issues", + "license": "MIT", + "author": "Ryan Zimmerman ", + "files": [ + "index.js" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/RyanZim/universalify.git" + }, + "scripts": { + "test": "standard && nyc --reporter text --reporter lcovonly tape test/*.js | colortape" + }, + "devDependencies": { + "colortape": "^0.1.2", + "coveralls": "^3.0.1", + "nyc": "^15.0.0", + "standard": "^14.3.1", + "tape": "^5.0.1" + }, + "engines": { + "node": ">= 10.0.0" + } +} diff --git a/node_modules/util-deprecate/History.md b/node_modules/util-deprecate/History.md new file mode 100644 index 0000000..acc8675 --- /dev/null +++ b/node_modules/util-deprecate/History.md @@ -0,0 +1,16 @@ + +1.0.2 / 2015-10-07 +================== + + * use try/catch when checking `localStorage` (#3, @kumavis) + +1.0.1 / 2014-11-25 +================== + + * browser: use `console.warn()` for deprecation calls + * browser: more jsdocs + +1.0.0 / 2014-04-30 +================== + + * initial commit diff --git a/node_modules/util-deprecate/LICENSE b/node_modules/util-deprecate/LICENSE new file mode 100644 index 0000000..6a60e8c --- /dev/null +++ b/node_modules/util-deprecate/LICENSE @@ -0,0 +1,24 @@ +(The MIT License) + +Copyright (c) 2014 Nathan Rajlich + +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. diff --git a/node_modules/util-deprecate/README.md b/node_modules/util-deprecate/README.md new file mode 100644 index 0000000..75622fa --- /dev/null +++ b/node_modules/util-deprecate/README.md @@ -0,0 +1,53 @@ +util-deprecate +============== +### The Node.js `util.deprecate()` function with browser support + +In Node.js, this module simply re-exports the `util.deprecate()` function. + +In the web browser (i.e. via browserify), a browser-specific implementation +of the `util.deprecate()` function is used. + + +## API + +A `deprecate()` function is the only thing exposed by this module. + +``` javascript +// setup: +exports.foo = deprecate(foo, 'foo() is deprecated, use bar() instead'); + + +// users see: +foo(); +// foo() is deprecated, use bar() instead +foo(); +foo(); +``` + + +## License + +(The MIT License) + +Copyright (c) 2014 Nathan Rajlich + +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. diff --git a/node_modules/util-deprecate/browser.js b/node_modules/util-deprecate/browser.js new file mode 100644 index 0000000..549ae2f --- /dev/null +++ b/node_modules/util-deprecate/browser.js @@ -0,0 +1,67 @@ + +/** + * Module exports. + */ + +module.exports = deprecate; + +/** + * Mark that a method should not be used. + * Returns a modified function which warns once by default. + * + * If `localStorage.noDeprecation = true` is set, then it is a no-op. + * + * If `localStorage.throwDeprecation = true` is set, then deprecated functions + * will throw an Error when invoked. + * + * If `localStorage.traceDeprecation = true` is set, then deprecated functions + * will invoke `console.trace()` instead of `console.error()`. + * + * @param {Function} fn - the function to deprecate + * @param {String} msg - the string to print to the console when `fn` is invoked + * @returns {Function} a new "deprecated" version of `fn` + * @api public + */ + +function deprecate (fn, msg) { + if (config('noDeprecation')) { + return fn; + } + + var warned = false; + function deprecated() { + if (!warned) { + if (config('throwDeprecation')) { + throw new Error(msg); + } else if (config('traceDeprecation')) { + console.trace(msg); + } else { + console.warn(msg); + } + warned = true; + } + return fn.apply(this, arguments); + } + + return deprecated; +} + +/** + * Checks `localStorage` for boolean values for the given `name`. + * + * @param {String} name + * @returns {Boolean} + * @api private + */ + +function config (name) { + // accessing global.localStorage can trigger a DOMException in sandboxed iframes + try { + if (!global.localStorage) return false; + } catch (_) { + return false; + } + var val = global.localStorage[name]; + if (null == val) return false; + return String(val).toLowerCase() === 'true'; +} diff --git a/node_modules/util-deprecate/node.js b/node_modules/util-deprecate/node.js new file mode 100644 index 0000000..5e6fcff --- /dev/null +++ b/node_modules/util-deprecate/node.js @@ -0,0 +1,6 @@ + +/** + * For Node.js, simply re-export the core `util.deprecate` function. + */ + +module.exports = require('util').deprecate; diff --git a/node_modules/util-deprecate/package.json b/node_modules/util-deprecate/package.json new file mode 100644 index 0000000..2e79f89 --- /dev/null +++ b/node_modules/util-deprecate/package.json @@ -0,0 +1,27 @@ +{ + "name": "util-deprecate", + "version": "1.0.2", + "description": "The Node.js `util.deprecate()` function with browser support", + "main": "node.js", + "browser": "browser.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git://github.com/TooTallNate/util-deprecate.git" + }, + "keywords": [ + "util", + "deprecate", + "browserify", + "browser", + "node" + ], + "author": "Nathan Rajlich (http://n8.io/)", + "license": "MIT", + "bugs": { + "url": "https://github.com/TooTallNate/util-deprecate/issues" + }, + "homepage": "https://github.com/TooTallNate/util-deprecate" +} diff --git a/node_modules/wrap-ansi/index.js b/node_modules/wrap-ansi/index.js new file mode 100755 index 0000000..d502255 --- /dev/null +++ b/node_modules/wrap-ansi/index.js @@ -0,0 +1,216 @@ +'use strict'; +const stringWidth = require('string-width'); +const stripAnsi = require('strip-ansi'); +const ansiStyles = require('ansi-styles'); + +const ESCAPES = new Set([ + '\u001B', + '\u009B' +]); + +const END_CODE = 39; + +const ANSI_ESCAPE_BELL = '\u0007'; +const ANSI_CSI = '['; +const ANSI_OSC = ']'; +const ANSI_SGR_TERMINATOR = 'm'; +const ANSI_ESCAPE_LINK = `${ANSI_OSC}8;;`; + +const wrapAnsi = code => `${ESCAPES.values().next().value}${ANSI_CSI}${code}${ANSI_SGR_TERMINATOR}`; +const wrapAnsiHyperlink = uri => `${ESCAPES.values().next().value}${ANSI_ESCAPE_LINK}${uri}${ANSI_ESCAPE_BELL}`; + +// Calculate the length of words split on ' ', ignoring +// the extra characters added by ansi escape codes +const wordLengths = string => string.split(' ').map(character => stringWidth(character)); + +// Wrap a long word across multiple rows +// Ansi escape codes do not count towards length +const wrapWord = (rows, word, columns) => { + const characters = [...word]; + + let isInsideEscape = false; + let isInsideLinkEscape = false; + let visible = stringWidth(stripAnsi(rows[rows.length - 1])); + + for (const [index, character] of characters.entries()) { + const characterLength = stringWidth(character); + + if (visible + characterLength <= columns) { + rows[rows.length - 1] += character; + } else { + rows.push(character); + visible = 0; + } + + if (ESCAPES.has(character)) { + isInsideEscape = true; + isInsideLinkEscape = characters.slice(index + 1).join('').startsWith(ANSI_ESCAPE_LINK); + } + + if (isInsideEscape) { + if (isInsideLinkEscape) { + if (character === ANSI_ESCAPE_BELL) { + isInsideEscape = false; + isInsideLinkEscape = false; + } + } else if (character === ANSI_SGR_TERMINATOR) { + isInsideEscape = false; + } + + continue; + } + + visible += characterLength; + + if (visible === columns && index < characters.length - 1) { + rows.push(''); + visible = 0; + } + } + + // It's possible that the last row we copy over is only + // ansi escape characters, handle this edge-case + if (!visible && rows[rows.length - 1].length > 0 && rows.length > 1) { + rows[rows.length - 2] += rows.pop(); + } +}; + +// Trims spaces from a string ignoring invisible sequences +const stringVisibleTrimSpacesRight = string => { + const words = string.split(' '); + let last = words.length; + + while (last > 0) { + if (stringWidth(words[last - 1]) > 0) { + break; + } + + last--; + } + + if (last === words.length) { + return string; + } + + return words.slice(0, last).join(' ') + words.slice(last).join(''); +}; + +// The wrap-ansi module can be invoked in either 'hard' or 'soft' wrap mode +// +// 'hard' will never allow a string to take up more than columns characters +// +// 'soft' allows long words to expand past the column length +const exec = (string, columns, options = {}) => { + if (options.trim !== false && string.trim() === '') { + return ''; + } + + let returnValue = ''; + let escapeCode; + let escapeUrl; + + const lengths = wordLengths(string); + let rows = ['']; + + for (const [index, word] of string.split(' ').entries()) { + if (options.trim !== false) { + rows[rows.length - 1] = rows[rows.length - 1].trimStart(); + } + + let rowLength = stringWidth(rows[rows.length - 1]); + + if (index !== 0) { + if (rowLength >= columns && (options.wordWrap === false || options.trim === false)) { + // If we start with a new word but the current row length equals the length of the columns, add a new row + rows.push(''); + rowLength = 0; + } + + if (rowLength > 0 || options.trim === false) { + rows[rows.length - 1] += ' '; + rowLength++; + } + } + + // In 'hard' wrap mode, the length of a line is never allowed to extend past 'columns' + if (options.hard && lengths[index] > columns) { + const remainingColumns = (columns - rowLength); + const breaksStartingThisLine = 1 + Math.floor((lengths[index] - remainingColumns - 1) / columns); + const breaksStartingNextLine = Math.floor((lengths[index] - 1) / columns); + if (breaksStartingNextLine < breaksStartingThisLine) { + rows.push(''); + } + + wrapWord(rows, word, columns); + continue; + } + + if (rowLength + lengths[index] > columns && rowLength > 0 && lengths[index] > 0) { + if (options.wordWrap === false && rowLength < columns) { + wrapWord(rows, word, columns); + continue; + } + + rows.push(''); + } + + if (rowLength + lengths[index] > columns && options.wordWrap === false) { + wrapWord(rows, word, columns); + continue; + } + + rows[rows.length - 1] += word; + } + + if (options.trim !== false) { + rows = rows.map(stringVisibleTrimSpacesRight); + } + + const pre = [...rows.join('\n')]; + + for (const [index, character] of pre.entries()) { + returnValue += character; + + if (ESCAPES.has(character)) { + const {groups} = new RegExp(`(?:\\${ANSI_CSI}(?\\d+)m|\\${ANSI_ESCAPE_LINK}(?.*)${ANSI_ESCAPE_BELL})`).exec(pre.slice(index).join('')) || {groups: {}}; + if (groups.code !== undefined) { + const code = Number.parseFloat(groups.code); + escapeCode = code === END_CODE ? undefined : code; + } else if (groups.uri !== undefined) { + escapeUrl = groups.uri.length === 0 ? undefined : groups.uri; + } + } + + const code = ansiStyles.codes.get(Number(escapeCode)); + + if (pre[index + 1] === '\n') { + if (escapeUrl) { + returnValue += wrapAnsiHyperlink(''); + } + + if (escapeCode && code) { + returnValue += wrapAnsi(code); + } + } else if (character === '\n') { + if (escapeCode && code) { + returnValue += wrapAnsi(escapeCode); + } + + if (escapeUrl) { + returnValue += wrapAnsiHyperlink(escapeUrl); + } + } + } + + return returnValue; +}; + +// For each newline, invoke the method separately +module.exports = (string, columns, options) => { + return String(string) + .normalize() + .replace(/\r\n/g, '\n') + .split('\n') + .map(line => exec(line, columns, options)) + .join('\n'); +}; diff --git a/node_modules/wrap-ansi/license b/node_modules/wrap-ansi/license new file mode 100644 index 0000000..fa7ceba --- /dev/null +++ b/node_modules/wrap-ansi/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (https://sindresorhus.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. diff --git a/node_modules/wrap-ansi/package.json b/node_modules/wrap-ansi/package.json new file mode 100644 index 0000000..dfb2f4f --- /dev/null +++ b/node_modules/wrap-ansi/package.json @@ -0,0 +1,62 @@ +{ + "name": "wrap-ansi", + "version": "7.0.0", + "description": "Wordwrap a string with ANSI escape codes", + "license": "MIT", + "repository": "chalk/wrap-ansi", + "funding": "https://github.com/chalk/wrap-ansi?sponsor=1", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "https://sindresorhus.com" + }, + "engines": { + "node": ">=10" + }, + "scripts": { + "test": "xo && nyc ava" + }, + "files": [ + "index.js" + ], + "keywords": [ + "wrap", + "break", + "wordwrap", + "wordbreak", + "linewrap", + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "devDependencies": { + "ava": "^2.1.0", + "chalk": "^4.0.0", + "coveralls": "^3.0.3", + "has-ansi": "^4.0.0", + "nyc": "^15.0.1", + "xo": "^0.29.1" + } +} diff --git a/node_modules/wrap-ansi/readme.md b/node_modules/wrap-ansi/readme.md new file mode 100644 index 0000000..68779ba --- /dev/null +++ b/node_modules/wrap-ansi/readme.md @@ -0,0 +1,91 @@ +# wrap-ansi [![Build Status](https://travis-ci.com/chalk/wrap-ansi.svg?branch=master)](https://travis-ci.com/chalk/wrap-ansi) [![Coverage Status](https://coveralls.io/repos/github/chalk/wrap-ansi/badge.svg?branch=master)](https://coveralls.io/github/chalk/wrap-ansi?branch=master) + +> Wordwrap a string with [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles) + +## Install + +``` +$ npm install wrap-ansi +``` + +## Usage + +```js +const chalk = require('chalk'); +const wrapAnsi = require('wrap-ansi'); + +const input = 'The quick brown ' + chalk.red('fox jumped over ') + + 'the lazy ' + chalk.green('dog and then ran away with the unicorn.'); + +console.log(wrapAnsi(input, 20)); +``` + + + +## API + +### wrapAnsi(string, columns, options?) + +Wrap words to the specified column width. + +#### string + +Type: `string` + +String with ANSI escape codes. Like one styled by [`chalk`](https://github.com/chalk/chalk). Newline characters will be normalized to `\n`. + +#### columns + +Type: `number` + +Number of columns to wrap the text to. + +#### options + +Type: `object` + +##### hard + +Type: `boolean`\ +Default: `false` + +By default the wrap is soft, meaning long words may extend past the column width. Setting this to `true` will make it hard wrap at the column width. + +##### wordWrap + +Type: `boolean`\ +Default: `true` + +By default, an attempt is made to split words at spaces, ensuring that they don't extend past the configured columns. If wordWrap is `false`, each column will instead be completely filled splitting words as necessary. + +##### trim + +Type: `boolean`\ +Default: `true` + +Whitespace on all lines is removed by default. Set this option to `false` if you don't want to trim. + +## Related + +- [slice-ansi](https://github.com/chalk/slice-ansi) - Slice a string with ANSI escape codes +- [cli-truncate](https://github.com/sindresorhus/cli-truncate) - Truncate a string to a specific width in the terminal +- [chalk](https://github.com/chalk/chalk) - Terminal string styling done right +- [jsesc](https://github.com/mathiasbynens/jsesc) - Generate ASCII-only output from Unicode strings. Useful for creating test fixtures. + +## Maintainers + +- [Sindre Sorhus](https://github.com/sindresorhus) +- [Josh Junon](https://github.com/qix-) +- [Benjamin Coe](https://github.com/bcoe) + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
diff --git a/node_modules/wrappy/LICENSE b/node_modules/wrappy/LICENSE new file mode 100644 index 0000000..19129e3 --- /dev/null +++ b/node_modules/wrappy/LICENSE @@ -0,0 +1,15 @@ +The ISC License + +Copyright (c) Isaac Z. Schlueter and Contributors + +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. diff --git a/node_modules/wrappy/README.md b/node_modules/wrappy/README.md new file mode 100644 index 0000000..98eab25 --- /dev/null +++ b/node_modules/wrappy/README.md @@ -0,0 +1,36 @@ +# wrappy + +Callback wrapping utility + +## USAGE + +```javascript +var wrappy = require("wrappy") + +// var wrapper = wrappy(wrapperFunction) + +// make sure a cb is called only once +// See also: http://npm.im/once for this specific use case +var once = wrappy(function (cb) { + var called = false + return function () { + if (called) return + called = true + return cb.apply(this, arguments) + } +}) + +function printBoo () { + console.log('boo') +} +// has some rando property +printBoo.iAmBooPrinter = true + +var onlyPrintOnce = once(printBoo) + +onlyPrintOnce() // prints 'boo' +onlyPrintOnce() // does nothing + +// random property is retained! +assert.equal(onlyPrintOnce.iAmBooPrinter, true) +``` diff --git a/node_modules/wrappy/package.json b/node_modules/wrappy/package.json new file mode 100644 index 0000000..1307520 --- /dev/null +++ b/node_modules/wrappy/package.json @@ -0,0 +1,29 @@ +{ + "name": "wrappy", + "version": "1.0.2", + "description": "Callback wrapping utility", + "main": "wrappy.js", + "files": [ + "wrappy.js" + ], + "directories": { + "test": "test" + }, + "dependencies": {}, + "devDependencies": { + "tap": "^2.3.1" + }, + "scripts": { + "test": "tap --coverage test/*.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/npm/wrappy" + }, + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "license": "ISC", + "bugs": { + "url": "https://github.com/npm/wrappy/issues" + }, + "homepage": "https://github.com/npm/wrappy" +} diff --git a/node_modules/wrappy/wrappy.js b/node_modules/wrappy/wrappy.js new file mode 100644 index 0000000..bb7e7d6 --- /dev/null +++ b/node_modules/wrappy/wrappy.js @@ -0,0 +1,33 @@ +// Returns a wrapper function that returns a wrapped callback +// The wrapper function should do some stuff, and return a +// presumably different callback function. +// This makes sure that own properties are retained, so that +// decorations and such are not lost along the way. +module.exports = wrappy +function wrappy (fn, cb) { + if (fn && cb) return wrappy(fn)(cb) + + if (typeof fn !== 'function') + throw new TypeError('need wrapper function') + + Object.keys(fn).forEach(function (k) { + wrapper[k] = fn[k] + }) + + return wrapper + + function wrapper() { + var args = new Array(arguments.length) + for (var i = 0; i < args.length; i++) { + args[i] = arguments[i] + } + var ret = fn.apply(this, args) + var cb = args[args.length-1] + if (typeof ret === 'function' && ret !== cb) { + Object.keys(cb).forEach(function (k) { + ret[k] = cb[k] + }) + } + return ret + } +} diff --git a/node_modules/y18n/CHANGELOG.md b/node_modules/y18n/CHANGELOG.md new file mode 100644 index 0000000..244d838 --- /dev/null +++ b/node_modules/y18n/CHANGELOG.md @@ -0,0 +1,100 @@ +# Change Log + +All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. + +### [5.0.8](https://www.github.com/yargs/y18n/compare/v5.0.7...v5.0.8) (2021-04-07) + + +### Bug Fixes + +* **deno:** force modern release for Deno ([b1c215a](https://www.github.com/yargs/y18n/commit/b1c215aed714bee5830e76de3e335504dc2c4dab)) + +### [5.0.7](https://www.github.com/yargs/y18n/compare/v5.0.6...v5.0.7) (2021-04-07) + + +### Bug Fixes + +* **deno:** force release for deno ([#121](https://www.github.com/yargs/y18n/issues/121)) ([d3f2560](https://www.github.com/yargs/y18n/commit/d3f2560e6cedf2bfa2352e9eec044da53f9a06b2)) + +### [5.0.6](https://www.github.com/yargs/y18n/compare/v5.0.5...v5.0.6) (2021-04-05) + + +### Bug Fixes + +* **webpack:** skip readFileSync if not defined ([#117](https://www.github.com/yargs/y18n/issues/117)) ([6966fa9](https://www.github.com/yargs/y18n/commit/6966fa91d2881cc6a6c531e836099e01f4da1616)) + +### [5.0.5](https://www.github.com/yargs/y18n/compare/v5.0.4...v5.0.5) (2020-10-25) + + +### Bug Fixes + +* address prototype pollution issue ([#108](https://www.github.com/yargs/y18n/issues/108)) ([a9ac604](https://www.github.com/yargs/y18n/commit/a9ac604abf756dec9687be3843e2c93bfe581f25)) + +### [5.0.4](https://www.github.com/yargs/y18n/compare/v5.0.3...v5.0.4) (2020-10-16) + + +### Bug Fixes + +* **exports:** node 13.0 and 13.1 require the dotted object form _with_ a string fallback ([#105](https://www.github.com/yargs/y18n/issues/105)) ([4f85d80](https://www.github.com/yargs/y18n/commit/4f85d80dbaae6d2c7899ae394f7ad97805df4886)) + +### [5.0.3](https://www.github.com/yargs/y18n/compare/v5.0.2...v5.0.3) (2020-10-16) + + +### Bug Fixes + +* **exports:** node 13.0-13.6 require a string fallback ([#103](https://www.github.com/yargs/y18n/issues/103)) ([e39921e](https://www.github.com/yargs/y18n/commit/e39921e1017f88f5d8ea97ddea854ffe92d68e74)) + +### [5.0.2](https://www.github.com/yargs/y18n/compare/v5.0.1...v5.0.2) (2020-10-01) + + +### Bug Fixes + +* **deno:** update types for deno ^1.4.0 ([#100](https://www.github.com/yargs/y18n/issues/100)) ([3834d9a](https://www.github.com/yargs/y18n/commit/3834d9ab1332f2937c935ada5e76623290efae81)) + +### [5.0.1](https://www.github.com/yargs/y18n/compare/v5.0.0...v5.0.1) (2020-09-05) + + +### Bug Fixes + +* main had old index path ([#98](https://www.github.com/yargs/y18n/issues/98)) ([124f7b0](https://www.github.com/yargs/y18n/commit/124f7b047ba9596bdbdf64459988304e77f3de1b)) + +## [5.0.0](https://www.github.com/yargs/y18n/compare/v4.0.0...v5.0.0) (2020-09-05) + + +### ⚠ BREAKING CHANGES + +* exports maps are now used, which modifies import behavior. +* drops Node 6 and 4. begin following Node.js LTS schedule (#89) + +### Features + +* add support for ESM and Deno [#95](https://www.github.com/yargs/y18n/issues/95)) ([4d7ae94](https://www.github.com/yargs/y18n/commit/4d7ae94bcb42e84164e2180366474b1cd321ed94)) + + +### Build System + +* drops Node 6 and 4. begin following Node.js LTS schedule ([#89](https://www.github.com/yargs/y18n/issues/89)) ([3cc0c28](https://www.github.com/yargs/y18n/commit/3cc0c287240727b84eaf1927f903612ec80f5e43)) + +### 4.0.1 (2020-10-25) + + +### Bug Fixes + +* address prototype pollution issue ([#108](https://www.github.com/yargs/y18n/issues/108)) ([a9ac604](https://www.github.com/yargs/y18n/commit/7de58ca0d315990cdb38234e97fc66254cdbcd71)) + +## [4.0.0](https://github.com/yargs/y18n/compare/v3.2.1...v4.0.0) (2017-10-10) + + +### Bug Fixes + +* allow support for falsy values like 0 in tagged literal ([#45](https://github.com/yargs/y18n/issues/45)) ([c926123](https://github.com/yargs/y18n/commit/c926123)) + + +### Features + +* **__:** added tagged template literal support ([#44](https://github.com/yargs/y18n/issues/44)) ([0598daf](https://github.com/yargs/y18n/commit/0598daf)) + + +### BREAKING CHANGES + +* **__:** dropping Node 0.10/Node 0.12 support diff --git a/node_modules/y18n/LICENSE b/node_modules/y18n/LICENSE new file mode 100644 index 0000000..3c157f0 --- /dev/null +++ b/node_modules/y18n/LICENSE @@ -0,0 +1,13 @@ +Copyright (c) 2015, Contributors + +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. diff --git a/node_modules/y18n/README.md b/node_modules/y18n/README.md new file mode 100644 index 0000000..5102bb1 --- /dev/null +++ b/node_modules/y18n/README.md @@ -0,0 +1,127 @@ +# y18n + +[![NPM version][npm-image]][npm-url] +[![js-standard-style][standard-image]][standard-url] +[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg)](https://conventionalcommits.org) + +The bare-bones internationalization library used by yargs. + +Inspired by [i18n](https://www.npmjs.com/package/i18n). + +## Examples + +_simple string translation:_ + +```js +const __ = require('y18n')().__; + +console.log(__('my awesome string %s', 'foo')); +``` + +output: + +`my awesome string foo` + +_using tagged template literals_ + +```js +const __ = require('y18n')().__; + +const str = 'foo'; + +console.log(__`my awesome string ${str}`); +``` + +output: + +`my awesome string foo` + +_pluralization support:_ + +```js +const __n = require('y18n')().__n; + +console.log(__n('one fish %s', '%d fishes %s', 2, 'foo')); +``` + +output: + +`2 fishes foo` + +## Deno Example + +As of `v5` `y18n` supports [Deno](https://github.com/denoland/deno): + +```typescript +import y18n from "https://deno.land/x/y18n/deno.ts"; + +const __ = y18n({ + locale: 'pirate', + directory: './test/locales' +}).__ + +console.info(__`Hi, ${'Ben'} ${'Coe'}!`) +``` + +You will need to run with `--allow-read` to load alternative locales. + +## JSON Language Files + +The JSON language files should be stored in a `./locales` folder. +File names correspond to locales, e.g., `en.json`, `pirate.json`. + +When strings are observed for the first time they will be +added to the JSON file corresponding to the current locale. + +## Methods + +### require('y18n')(config) + +Create an instance of y18n with the config provided, options include: + +* `directory`: the locale directory, default `./locales`. +* `updateFiles`: should newly observed strings be updated in file, default `true`. +* `locale`: what locale should be used. +* `fallbackToLanguage`: should fallback to a language-only file (e.g. `en.json`) + be allowed if a file matching the locale does not exist (e.g. `en_US.json`), + default `true`. + +### y18n.\_\_(str, arg, arg, arg) + +Print a localized string, `%s` will be replaced with `arg`s. + +This function can also be used as a tag for a template literal. You can use it +like this: __`hello ${'world'}`. This will be equivalent to +`__('hello %s', 'world')`. + +### y18n.\_\_n(singularString, pluralString, count, arg, arg, arg) + +Print a localized string with appropriate pluralization. If `%d` is provided +in the string, the `count` will replace this placeholder. + +### y18n.setLocale(str) + +Set the current locale being used. + +### y18n.getLocale() + +What locale is currently being used? + +### y18n.updateLocale(obj) + +Update the current locale with the key value pairs in `obj`. + +## Supported Node.js Versions + +Libraries in this ecosystem make a best effort to track +[Node.js' release schedule](https://nodejs.org/en/about/releases/). Here's [a +post on why we think this is important](https://medium.com/the-node-js-collection/maintainers-should-consider-following-node-js-release-schedule-ab08ed4de71a). + +## License + +ISC + +[npm-url]: https://npmjs.org/package/y18n +[npm-image]: https://img.shields.io/npm/v/y18n.svg +[standard-image]: https://img.shields.io/badge/code%20style-standard-brightgreen.svg +[standard-url]: https://github.com/feross/standard diff --git a/node_modules/y18n/build/index.cjs b/node_modules/y18n/build/index.cjs new file mode 100644 index 0000000..b2731e1 --- /dev/null +++ b/node_modules/y18n/build/index.cjs @@ -0,0 +1,203 @@ +'use strict'; + +var fs = require('fs'); +var util = require('util'); +var path = require('path'); + +let shim; +class Y18N { + constructor(opts) { + // configurable options. + opts = opts || {}; + this.directory = opts.directory || './locales'; + this.updateFiles = typeof opts.updateFiles === 'boolean' ? opts.updateFiles : true; + this.locale = opts.locale || 'en'; + this.fallbackToLanguage = typeof opts.fallbackToLanguage === 'boolean' ? opts.fallbackToLanguage : true; + // internal stuff. + this.cache = Object.create(null); + this.writeQueue = []; + } + __(...args) { + if (typeof arguments[0] !== 'string') { + return this._taggedLiteral(arguments[0], ...arguments); + } + const str = args.shift(); + let cb = function () { }; // start with noop. + if (typeof args[args.length - 1] === 'function') + cb = args.pop(); + cb = cb || function () { }; // noop. + if (!this.cache[this.locale]) + this._readLocaleFile(); + // we've observed a new string, update the language file. + if (!this.cache[this.locale][str] && this.updateFiles) { + this.cache[this.locale][str] = str; + // include the current directory and locale, + // since these values could change before the + // write is performed. + this._enqueueWrite({ + directory: this.directory, + locale: this.locale, + cb + }); + } + else { + cb(); + } + return shim.format.apply(shim.format, [this.cache[this.locale][str] || str].concat(args)); + } + __n() { + const args = Array.prototype.slice.call(arguments); + const singular = args.shift(); + const plural = args.shift(); + const quantity = args.shift(); + let cb = function () { }; // start with noop. + if (typeof args[args.length - 1] === 'function') + cb = args.pop(); + if (!this.cache[this.locale]) + this._readLocaleFile(); + let str = quantity === 1 ? singular : plural; + if (this.cache[this.locale][singular]) { + const entry = this.cache[this.locale][singular]; + str = entry[quantity === 1 ? 'one' : 'other']; + } + // we've observed a new string, update the language file. + if (!this.cache[this.locale][singular] && this.updateFiles) { + this.cache[this.locale][singular] = { + one: singular, + other: plural + }; + // include the current directory and locale, + // since these values could change before the + // write is performed. + this._enqueueWrite({ + directory: this.directory, + locale: this.locale, + cb + }); + } + else { + cb(); + } + // if a %d placeholder is provided, add quantity + // to the arguments expanded by util.format. + const values = [str]; + if (~str.indexOf('%d')) + values.push(quantity); + return shim.format.apply(shim.format, values.concat(args)); + } + setLocale(locale) { + this.locale = locale; + } + getLocale() { + return this.locale; + } + updateLocale(obj) { + if (!this.cache[this.locale]) + this._readLocaleFile(); + for (const key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) { + this.cache[this.locale][key] = obj[key]; + } + } + } + _taggedLiteral(parts, ...args) { + let str = ''; + parts.forEach(function (part, i) { + const arg = args[i + 1]; + str += part; + if (typeof arg !== 'undefined') { + str += '%s'; + } + }); + return this.__.apply(this, [str].concat([].slice.call(args, 1))); + } + _enqueueWrite(work) { + this.writeQueue.push(work); + if (this.writeQueue.length === 1) + this._processWriteQueue(); + } + _processWriteQueue() { + const _this = this; + const work = this.writeQueue[0]; + // destructure the enqueued work. + const directory = work.directory; + const locale = work.locale; + const cb = work.cb; + const languageFile = this._resolveLocaleFile(directory, locale); + const serializedLocale = JSON.stringify(this.cache[locale], null, 2); + shim.fs.writeFile(languageFile, serializedLocale, 'utf-8', function (err) { + _this.writeQueue.shift(); + if (_this.writeQueue.length > 0) + _this._processWriteQueue(); + cb(err); + }); + } + _readLocaleFile() { + let localeLookup = {}; + const languageFile = this._resolveLocaleFile(this.directory, this.locale); + try { + // When using a bundler such as webpack, readFileSync may not be defined: + if (shim.fs.readFileSync) { + localeLookup = JSON.parse(shim.fs.readFileSync(languageFile, 'utf-8')); + } + } + catch (err) { + if (err instanceof SyntaxError) { + err.message = 'syntax error in ' + languageFile; + } + if (err.code === 'ENOENT') + localeLookup = {}; + else + throw err; + } + this.cache[this.locale] = localeLookup; + } + _resolveLocaleFile(directory, locale) { + let file = shim.resolve(directory, './', locale + '.json'); + if (this.fallbackToLanguage && !this._fileExistsSync(file) && ~locale.lastIndexOf('_')) { + // attempt fallback to language only + const languageFile = shim.resolve(directory, './', locale.split('_')[0] + '.json'); + if (this._fileExistsSync(languageFile)) + file = languageFile; + } + return file; + } + _fileExistsSync(file) { + return shim.exists(file); + } +} +function y18n$1(opts, _shim) { + shim = _shim; + const y18n = new Y18N(opts); + return { + __: y18n.__.bind(y18n), + __n: y18n.__n.bind(y18n), + setLocale: y18n.setLocale.bind(y18n), + getLocale: y18n.getLocale.bind(y18n), + updateLocale: y18n.updateLocale.bind(y18n), + locale: y18n.locale + }; +} + +var nodePlatformShim = { + fs: { + readFileSync: fs.readFileSync, + writeFile: fs.writeFile + }, + format: util.format, + resolve: path.resolve, + exists: (file) => { + try { + return fs.statSync(file).isFile(); + } + catch (err) { + return false; + } + } +}; + +const y18n = (opts) => { + return y18n$1(opts, nodePlatformShim); +}; + +module.exports = y18n; diff --git a/node_modules/y18n/build/lib/cjs.js b/node_modules/y18n/build/lib/cjs.js new file mode 100644 index 0000000..ff58470 --- /dev/null +++ b/node_modules/y18n/build/lib/cjs.js @@ -0,0 +1,6 @@ +import { y18n as _y18n } from './index.js'; +import nodePlatformShim from './platform-shims/node.js'; +const y18n = (opts) => { + return _y18n(opts, nodePlatformShim); +}; +export default y18n; diff --git a/node_modules/y18n/build/lib/index.js b/node_modules/y18n/build/lib/index.js new file mode 100644 index 0000000..e38f335 --- /dev/null +++ b/node_modules/y18n/build/lib/index.js @@ -0,0 +1,174 @@ +let shim; +class Y18N { + constructor(opts) { + // configurable options. + opts = opts || {}; + this.directory = opts.directory || './locales'; + this.updateFiles = typeof opts.updateFiles === 'boolean' ? opts.updateFiles : true; + this.locale = opts.locale || 'en'; + this.fallbackToLanguage = typeof opts.fallbackToLanguage === 'boolean' ? opts.fallbackToLanguage : true; + // internal stuff. + this.cache = Object.create(null); + this.writeQueue = []; + } + __(...args) { + if (typeof arguments[0] !== 'string') { + return this._taggedLiteral(arguments[0], ...arguments); + } + const str = args.shift(); + let cb = function () { }; // start with noop. + if (typeof args[args.length - 1] === 'function') + cb = args.pop(); + cb = cb || function () { }; // noop. + if (!this.cache[this.locale]) + this._readLocaleFile(); + // we've observed a new string, update the language file. + if (!this.cache[this.locale][str] && this.updateFiles) { + this.cache[this.locale][str] = str; + // include the current directory and locale, + // since these values could change before the + // write is performed. + this._enqueueWrite({ + directory: this.directory, + locale: this.locale, + cb + }); + } + else { + cb(); + } + return shim.format.apply(shim.format, [this.cache[this.locale][str] || str].concat(args)); + } + __n() { + const args = Array.prototype.slice.call(arguments); + const singular = args.shift(); + const plural = args.shift(); + const quantity = args.shift(); + let cb = function () { }; // start with noop. + if (typeof args[args.length - 1] === 'function') + cb = args.pop(); + if (!this.cache[this.locale]) + this._readLocaleFile(); + let str = quantity === 1 ? singular : plural; + if (this.cache[this.locale][singular]) { + const entry = this.cache[this.locale][singular]; + str = entry[quantity === 1 ? 'one' : 'other']; + } + // we've observed a new string, update the language file. + if (!this.cache[this.locale][singular] && this.updateFiles) { + this.cache[this.locale][singular] = { + one: singular, + other: plural + }; + // include the current directory and locale, + // since these values could change before the + // write is performed. + this._enqueueWrite({ + directory: this.directory, + locale: this.locale, + cb + }); + } + else { + cb(); + } + // if a %d placeholder is provided, add quantity + // to the arguments expanded by util.format. + const values = [str]; + if (~str.indexOf('%d')) + values.push(quantity); + return shim.format.apply(shim.format, values.concat(args)); + } + setLocale(locale) { + this.locale = locale; + } + getLocale() { + return this.locale; + } + updateLocale(obj) { + if (!this.cache[this.locale]) + this._readLocaleFile(); + for (const key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) { + this.cache[this.locale][key] = obj[key]; + } + } + } + _taggedLiteral(parts, ...args) { + let str = ''; + parts.forEach(function (part, i) { + const arg = args[i + 1]; + str += part; + if (typeof arg !== 'undefined') { + str += '%s'; + } + }); + return this.__.apply(this, [str].concat([].slice.call(args, 1))); + } + _enqueueWrite(work) { + this.writeQueue.push(work); + if (this.writeQueue.length === 1) + this._processWriteQueue(); + } + _processWriteQueue() { + const _this = this; + const work = this.writeQueue[0]; + // destructure the enqueued work. + const directory = work.directory; + const locale = work.locale; + const cb = work.cb; + const languageFile = this._resolveLocaleFile(directory, locale); + const serializedLocale = JSON.stringify(this.cache[locale], null, 2); + shim.fs.writeFile(languageFile, serializedLocale, 'utf-8', function (err) { + _this.writeQueue.shift(); + if (_this.writeQueue.length > 0) + _this._processWriteQueue(); + cb(err); + }); + } + _readLocaleFile() { + let localeLookup = {}; + const languageFile = this._resolveLocaleFile(this.directory, this.locale); + try { + // When using a bundler such as webpack, readFileSync may not be defined: + if (shim.fs.readFileSync) { + localeLookup = JSON.parse(shim.fs.readFileSync(languageFile, 'utf-8')); + } + } + catch (err) { + if (err instanceof SyntaxError) { + err.message = 'syntax error in ' + languageFile; + } + if (err.code === 'ENOENT') + localeLookup = {}; + else + throw err; + } + this.cache[this.locale] = localeLookup; + } + _resolveLocaleFile(directory, locale) { + let file = shim.resolve(directory, './', locale + '.json'); + if (this.fallbackToLanguage && !this._fileExistsSync(file) && ~locale.lastIndexOf('_')) { + // attempt fallback to language only + const languageFile = shim.resolve(directory, './', locale.split('_')[0] + '.json'); + if (this._fileExistsSync(languageFile)) + file = languageFile; + } + return file; + } + _fileExistsSync(file) { + return shim.exists(file); + } +} +export function y18n(opts, _shim) { + shim = _shim; + const y18n = new Y18N(opts); + return { + __: y18n.__.bind(y18n), + __n: y18n.__n.bind(y18n), + setLocale: y18n.setLocale.bind(y18n), + getLocale: y18n.getLocale.bind(y18n), + updateLocale: y18n.updateLocale.bind(y18n), + locale: y18n.locale + }; +} diff --git a/node_modules/y18n/build/lib/platform-shims/node.js b/node_modules/y18n/build/lib/platform-shims/node.js new file mode 100644 index 0000000..181208b --- /dev/null +++ b/node_modules/y18n/build/lib/platform-shims/node.js @@ -0,0 +1,19 @@ +import { readFileSync, statSync, writeFile } from 'fs'; +import { format } from 'util'; +import { resolve } from 'path'; +export default { + fs: { + readFileSync, + writeFile + }, + format, + resolve, + exists: (file) => { + try { + return statSync(file).isFile(); + } + catch (err) { + return false; + } + } +}; diff --git a/node_modules/y18n/index.mjs b/node_modules/y18n/index.mjs new file mode 100644 index 0000000..46c8213 --- /dev/null +++ b/node_modules/y18n/index.mjs @@ -0,0 +1,8 @@ +import shim from './build/lib/platform-shims/node.js' +import { y18n as _y18n } from './build/lib/index.js' + +const y18n = (opts) => { + return _y18n(opts, shim) +} + +export default y18n diff --git a/node_modules/y18n/package.json b/node_modules/y18n/package.json new file mode 100644 index 0000000..4e5c1ca --- /dev/null +++ b/node_modules/y18n/package.json @@ -0,0 +1,70 @@ +{ + "name": "y18n", + "version": "5.0.8", + "description": "the bare-bones internationalization library used by yargs", + "exports": { + ".": [ + { + "import": "./index.mjs", + "require": "./build/index.cjs" + }, + "./build/index.cjs" + ] + }, + "type": "module", + "module": "./build/lib/index.js", + "keywords": [ + "i18n", + "internationalization", + "yargs" + ], + "homepage": "https://github.com/yargs/y18n", + "bugs": { + "url": "https://github.com/yargs/y18n/issues" + }, + "repository": "yargs/y18n", + "license": "ISC", + "author": "Ben Coe ", + "main": "./build/index.cjs", + "scripts": { + "check": "standardx **/*.ts **/*.cjs **/*.mjs", + "fix": "standardx --fix **/*.ts **/*.cjs **/*.mjs", + "pretest": "rimraf build && tsc -p tsconfig.test.json && cross-env NODE_ENV=test npm run build:cjs", + "test": "c8 --reporter=text --reporter=html mocha test/*.cjs", + "test:esm": "c8 --reporter=text --reporter=html mocha test/esm/*.mjs", + "posttest": "npm run check", + "coverage": "c8 report --check-coverage", + "precompile": "rimraf build", + "compile": "tsc", + "postcompile": "npm run build:cjs", + "build:cjs": "rollup -c", + "prepare": "npm run compile" + }, + "devDependencies": { + "@types/node": "^14.6.4", + "@wessberg/rollup-plugin-ts": "^1.3.1", + "c8": "^7.3.0", + "chai": "^4.0.1", + "cross-env": "^7.0.2", + "gts": "^3.0.0", + "mocha": "^8.0.0", + "rimraf": "^3.0.2", + "rollup": "^2.26.10", + "standardx": "^7.0.0", + "ts-transform-default-export": "^1.0.2", + "typescript": "^4.0.0" + }, + "files": [ + "build", + "index.mjs", + "!*.d.ts" + ], + "engines": { + "node": ">=10" + }, + "standardx": { + "ignore": [ + "build" + ] + } +} diff --git a/node_modules/yaml/LICENSE b/node_modules/yaml/LICENSE new file mode 100644 index 0000000..e060aaa --- /dev/null +++ b/node_modules/yaml/LICENSE @@ -0,0 +1,13 @@ +Copyright Eemeli Aro + +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. diff --git a/node_modules/yaml/README.md b/node_modules/yaml/README.md new file mode 100644 index 0000000..1613c1d --- /dev/null +++ b/node_modules/yaml/README.md @@ -0,0 +1,172 @@ +# YAML + +`yaml` is a definitive library for [YAML](https://yaml.org/), the human friendly data serialization standard. +This library: + +- Supports both YAML 1.1 and YAML 1.2 and all common data schemas, +- Passes all of the [yaml-test-suite](https://github.com/yaml/yaml-test-suite) tests, +- Can accept any string as input without throwing, parsing as much YAML out of it as it can, and +- Supports parsing, modifying, and writing YAML comments and blank lines. + +The library is released under the ISC open source license, and the code is [available on GitHub](https://github.com/eemeli/yaml/). +It has no external dependencies and runs on Node.js as well as modern browsers. + +For the purposes of versioning, any changes that break any of the documented endpoints or APIs will be considered semver-major breaking changes. +Undocumented library internals may change between minor versions, and previous APIs may be deprecated (but not removed). + +The minimum supported TypeScript version of the included typings is 3.9; +for use in earlier versions you may need to set `skipLibCheck: true` in your config. +This requirement may be updated between minor versions of the library. + +For more information, see the project's documentation site: [**eemeli.org/yaml**](https://eemeli.org/yaml/) + +For build instructions and contribution guidelines, see [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md). + +To install: + +```sh +npm install yaml +# or +deno add jsr:@eemeli/yaml +``` + +**Note:** These docs are for `yaml@2`. For v1, see the [v1.10.0 tag](https://github.com/eemeli/yaml/tree/v1.10.0) for the source and [eemeli.org/yaml/v1](https://eemeli.org/yaml/v1/) for the documentation. + +## API Overview + +The API provided by `yaml` has three layers, depending on how deep you need to go: [Parse & Stringify](https://eemeli.org/yaml/#parse-amp-stringify), [Documents](https://eemeli.org/yaml/#documents), and the underlying [Lexer/Parser/Composer](https://eemeli.org/yaml/#parsing-yaml). +The first has the simplest API and "just works", the second gets you all the bells and whistles supported by the library along with a decent [AST](https://eemeli.org/yaml/#content-nodes), and the third lets you get progressively closer to YAML source, if that's your thing. + +A [command-line tool](https://eemeli.org/yaml/#command-line-tool) is also included. + +### Parse & Stringify + +```js +import { parse, stringify } from 'yaml' +``` + +- [`parse(str, reviver?, options?): value`](https://eemeli.org/yaml/#yaml-parse) +- [`stringify(value, replacer?, options?): string`](https://eemeli.org/yaml/#yaml-stringify) + +### Documents + + +```js +import { + Document, + isDocument, + parseAllDocuments, + parseDocument +} from 'yaml' +``` + +- [`Document`](https://eemeli.org/yaml/#documents) + - [`constructor(value, replacer?, options?)`](https://eemeli.org/yaml/#creating-documents) + - [`#contents`](https://eemeli.org/yaml/#content-nodes) + - [`#directives`](https://eemeli.org/yaml/#stream-directives) + - [`#errors`](https://eemeli.org/yaml/#errors) + - [`#warnings`](https://eemeli.org/yaml/#errors) +- [`isDocument(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types) +- [`parseAllDocuments(str, options?): Document[]`](https://eemeli.org/yaml/#parsing-documents) +- [`parseDocument(str, options?): Document`](https://eemeli.org/yaml/#parsing-documents) + +### Content Nodes + + +```js +import { + isAlias, isCollection, isMap, isNode, + isPair, isScalar, isSeq, Scalar, + visit, visitAsync, YAMLMap, YAMLSeq +} from 'yaml' +``` + +- [`isAlias(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types) +- [`isCollection(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types) +- [`isMap(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types) +- [`isNode(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types) +- [`isPair(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types) +- [`isScalar(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types) +- [`isSeq(foo): boolean`](https://eemeli.org/yaml/#identifying-node-types) +- [`new Scalar(value)`](https://eemeli.org/yaml/#scalar-values) +- [`new YAMLMap()`](https://eemeli.org/yaml/#collections) +- [`new YAMLSeq()`](https://eemeli.org/yaml/#collections) +- [`doc.createAlias(node, name?): Alias`](https://eemeli.org/yaml/#creating-nodes) +- [`doc.createNode(value, options?): Node`](https://eemeli.org/yaml/#creating-nodes) +- [`doc.createPair(key, value): Pair`](https://eemeli.org/yaml/#creating-nodes) +- [`visit(node, visitor)`](https://eemeli.org/yaml/#finding-and-modifying-nodes) +- [`visitAsync(node, visitor)`](https://eemeli.org/yaml/#finding-and-modifying-nodes) + +### Parsing YAML + +```js +import { Composer, Lexer, Parser } from 'yaml' +``` + +- [`new Lexer().lex(src)`](https://eemeli.org/yaml/#lexer) +- [`new Parser(onNewLine?).parse(src)`](https://eemeli.org/yaml/#parser) +- [`new Composer(options?).compose(tokens)`](https://eemeli.org/yaml/#composer) + +## YAML.parse + +```yaml +# file.yml +YAML: + - A human-readable data serialization language + - https://en.wikipedia.org/wiki/YAML +yaml: + - A complete JavaScript implementation + - https://www.npmjs.com/package/yaml +``` + +```js +import fs from 'fs' +import YAML from 'yaml' + +YAML.parse('3.14159') +// 3.14159 + +YAML.parse('[ true, false, maybe, null ]\n') +// [ true, false, 'maybe', null ] + +const file = fs.readFileSync('./file.yml', 'utf8') +YAML.parse(file) +// { YAML: +// [ 'A human-readable data serialization language', +// 'https://en.wikipedia.org/wiki/YAML' ], +// yaml: +// [ 'A complete JavaScript implementation', +// 'https://www.npmjs.com/package/yaml' ] } +``` + +## YAML.stringify + +```js +import YAML from 'yaml' + +YAML.stringify(3.14159) +// '3.14159\n' + +YAML.stringify([true, false, 'maybe', null]) +// `- true +// - false +// - maybe +// - null +// ` + +YAML.stringify({ number: 3, plain: 'string', block: 'two\nlines\n' }) +// `number: 3 +// plain: string +// block: | +// two +// lines +// ` +``` + +--- + +Browser testing provided by: + + +BrowserStack + diff --git a/node_modules/yaml/bin.mjs b/node_modules/yaml/bin.mjs new file mode 100755 index 0000000..7504ae1 --- /dev/null +++ b/node_modules/yaml/bin.mjs @@ -0,0 +1,11 @@ +#!/usr/bin/env node + +import { UserError, cli, help } from './dist/cli.mjs' + +cli(process.stdin, error => { + if (error instanceof UserError) { + if (error.code === UserError.ARGS) console.error(`${help}\n`) + console.error(error.message) + process.exitCode = error.code + } else if (error) throw error +}) diff --git a/node_modules/yaml/browser/dist/compose/compose-collection.js b/node_modules/yaml/browser/dist/compose/compose-collection.js new file mode 100644 index 0000000..5ecf796 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/compose-collection.js @@ -0,0 +1,88 @@ +import { isNode } from '../nodes/identity.js'; +import { Scalar } from '../nodes/Scalar.js'; +import { YAMLMap } from '../nodes/YAMLMap.js'; +import { YAMLSeq } from '../nodes/YAMLSeq.js'; +import { resolveBlockMap } from './resolve-block-map.js'; +import { resolveBlockSeq } from './resolve-block-seq.js'; +import { resolveFlowCollection } from './resolve-flow-collection.js'; + +function resolveCollection(CN, ctx, token, onError, tagName, tag) { + const coll = token.type === 'block-map' + ? resolveBlockMap(CN, ctx, token, onError, tag) + : token.type === 'block-seq' + ? resolveBlockSeq(CN, ctx, token, onError, tag) + : resolveFlowCollection(CN, ctx, token, onError, tag); + const Coll = coll.constructor; + // If we got a tagName matching the class, or the tag name is '!', + // then use the tagName from the node class used to create it. + if (tagName === '!' || tagName === Coll.tagName) { + coll.tag = Coll.tagName; + return coll; + } + if (tagName) + coll.tag = tagName; + return coll; +} +function composeCollection(CN, ctx, token, props, onError) { + const tagToken = props.tag; + const tagName = !tagToken + ? null + : ctx.directives.tagName(tagToken.source, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg)); + if (token.type === 'block-seq') { + const { anchor, newlineAfterProp: nl } = props; + const lastProp = anchor && tagToken + ? anchor.offset > tagToken.offset + ? anchor + : tagToken + : (anchor ?? tagToken); + if (lastProp && (!nl || nl.offset < lastProp.offset)) { + const message = 'Missing newline after block sequence props'; + onError(lastProp, 'MISSING_CHAR', message); + } + } + const expType = token.type === 'block-map' + ? 'map' + : token.type === 'block-seq' + ? 'seq' + : token.start.source === '{' + ? 'map' + : 'seq'; + // shortcut: check if it's a generic YAMLMap or YAMLSeq + // before jumping into the custom tag logic. + if (!tagToken || + !tagName || + tagName === '!' || + (tagName === YAMLMap.tagName && expType === 'map') || + (tagName === YAMLSeq.tagName && expType === 'seq')) { + return resolveCollection(CN, ctx, token, onError, tagName); + } + let tag = ctx.schema.tags.find(t => t.tag === tagName && t.collection === expType); + if (!tag) { + const kt = ctx.schema.knownTags[tagName]; + if (kt && kt.collection === expType) { + ctx.schema.tags.push(Object.assign({}, kt, { default: false })); + tag = kt; + } + else { + if (kt) { + onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection ?? 'scalar'}`, true); + } + else { + onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, true); + } + return resolveCollection(CN, ctx, token, onError, tagName); + } + } + const coll = resolveCollection(CN, ctx, token, onError, tagName, tag); + const res = tag.resolve?.(coll, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg), ctx.options) ?? coll; + const node = isNode(res) + ? res + : new Scalar(res); + node.range = coll.range; + node.tag = tagName; + if (tag?.format) + node.format = tag.format; + return node; +} + +export { composeCollection }; diff --git a/node_modules/yaml/browser/dist/compose/compose-doc.js b/node_modules/yaml/browser/dist/compose/compose-doc.js new file mode 100644 index 0000000..9827b53 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/compose-doc.js @@ -0,0 +1,43 @@ +import { Document } from '../doc/Document.js'; +import { composeNode, composeEmptyNode } from './compose-node.js'; +import { resolveEnd } from './resolve-end.js'; +import { resolveProps } from './resolve-props.js'; + +function composeDoc(options, directives, { offset, start, value, end }, onError) { + const opts = Object.assign({ _directives: directives }, options); + const doc = new Document(undefined, opts); + const ctx = { + atKey: false, + atRoot: true, + directives: doc.directives, + options: doc.options, + schema: doc.schema + }; + const props = resolveProps(start, { + indicator: 'doc-start', + next: value ?? end?.[0], + offset, + onError, + parentIndent: 0, + startOnNewline: true + }); + if (props.found) { + doc.directives.docStart = true; + if (value && + (value.type === 'block-map' || value.type === 'block-seq') && + !props.hasNewline) + onError(props.end, 'MISSING_CHAR', 'Block collection cannot start on same line with directives-end marker'); + } + // @ts-expect-error If Contents is set, let's trust the user + doc.contents = value + ? composeNode(ctx, value, props, onError) + : composeEmptyNode(ctx, props.end, start, null, props, onError); + const contentEnd = doc.contents.range[2]; + const re = resolveEnd(end, contentEnd, false, onError); + if (re.comment) + doc.comment = re.comment; + doc.range = [offset, contentEnd, re.offset]; + return doc; +} + +export { composeDoc }; diff --git a/node_modules/yaml/browser/dist/compose/compose-node.js b/node_modules/yaml/browser/dist/compose/compose-node.js new file mode 100644 index 0000000..cdc91b5 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/compose-node.js @@ -0,0 +1,102 @@ +import { Alias } from '../nodes/Alias.js'; +import { isScalar } from '../nodes/identity.js'; +import { composeCollection } from './compose-collection.js'; +import { composeScalar } from './compose-scalar.js'; +import { resolveEnd } from './resolve-end.js'; +import { emptyScalarPosition } from './util-empty-scalar-position.js'; + +const CN = { composeNode, composeEmptyNode }; +function composeNode(ctx, token, props, onError) { + const atKey = ctx.atKey; + const { spaceBefore, comment, anchor, tag } = props; + let node; + let isSrcToken = true; + switch (token.type) { + case 'alias': + node = composeAlias(ctx, token, onError); + if (anchor || tag) + onError(token, 'ALIAS_PROPS', 'An alias node must not specify any properties'); + break; + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': + case 'block-scalar': + node = composeScalar(ctx, token, tag, onError); + if (anchor) + node.anchor = anchor.source.substring(1); + break; + case 'block-map': + case 'block-seq': + case 'flow-collection': + node = composeCollection(CN, ctx, token, props, onError); + if (anchor) + node.anchor = anchor.source.substring(1); + break; + default: { + const message = token.type === 'error' + ? token.message + : `Unsupported token (type: ${token.type})`; + onError(token, 'UNEXPECTED_TOKEN', message); + node = composeEmptyNode(ctx, token.offset, undefined, null, props, onError); + isSrcToken = false; + } + } + if (anchor && node.anchor === '') + onError(anchor, 'BAD_ALIAS', 'Anchor cannot be an empty string'); + if (atKey && + ctx.options.stringKeys && + (!isScalar(node) || + typeof node.value !== 'string' || + (node.tag && node.tag !== 'tag:yaml.org,2002:str'))) { + const msg = 'With stringKeys, all keys must be strings'; + onError(tag ?? token, 'NON_STRING_KEY', msg); + } + if (spaceBefore) + node.spaceBefore = true; + if (comment) { + if (token.type === 'scalar' && token.source === '') + node.comment = comment; + else + node.commentBefore = comment; + } + // @ts-expect-error Type checking misses meaning of isSrcToken + if (ctx.options.keepSourceTokens && isSrcToken) + node.srcToken = token; + return node; +} +function composeEmptyNode(ctx, offset, before, pos, { spaceBefore, comment, anchor, tag, end }, onError) { + const token = { + type: 'scalar', + offset: emptyScalarPosition(offset, before, pos), + indent: -1, + source: '' + }; + const node = composeScalar(ctx, token, tag, onError); + if (anchor) { + node.anchor = anchor.source.substring(1); + if (node.anchor === '') + onError(anchor, 'BAD_ALIAS', 'Anchor cannot be an empty string'); + } + if (spaceBefore) + node.spaceBefore = true; + if (comment) { + node.comment = comment; + node.range[2] = end; + } + return node; +} +function composeAlias({ options }, { offset, source, end }, onError) { + const alias = new Alias(source.substring(1)); + if (alias.source === '') + onError(offset, 'BAD_ALIAS', 'Alias cannot be an empty string'); + if (alias.source.endsWith(':')) + onError(offset + source.length - 1, 'BAD_ALIAS', 'Alias ending in : is ambiguous', true); + const valueEnd = offset + source.length; + const re = resolveEnd(end, valueEnd, options.strict, onError); + alias.range = [offset, valueEnd, re.offset]; + if (re.comment) + alias.comment = re.comment; + return alias; +} + +export { composeEmptyNode, composeNode }; diff --git a/node_modules/yaml/browser/dist/compose/compose-scalar.js b/node_modules/yaml/browser/dist/compose/compose-scalar.js new file mode 100644 index 0000000..13ceda5 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/compose-scalar.js @@ -0,0 +1,86 @@ +import { isScalar, SCALAR } from '../nodes/identity.js'; +import { Scalar } from '../nodes/Scalar.js'; +import { resolveBlockScalar } from './resolve-block-scalar.js'; +import { resolveFlowScalar } from './resolve-flow-scalar.js'; + +function composeScalar(ctx, token, tagToken, onError) { + const { value, type, comment, range } = token.type === 'block-scalar' + ? resolveBlockScalar(ctx, token, onError) + : resolveFlowScalar(token, ctx.options.strict, onError); + const tagName = tagToken + ? ctx.directives.tagName(tagToken.source, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg)) + : null; + let tag; + if (ctx.options.stringKeys && ctx.atKey) { + tag = ctx.schema[SCALAR]; + } + else if (tagName) + tag = findScalarTagByName(ctx.schema, value, tagName, tagToken, onError); + else if (token.type === 'scalar') + tag = findScalarTagByTest(ctx, value, token, onError); + else + tag = ctx.schema[SCALAR]; + let scalar; + try { + const res = tag.resolve(value, msg => onError(tagToken ?? token, 'TAG_RESOLVE_FAILED', msg), ctx.options); + scalar = isScalar(res) ? res : new Scalar(res); + } + catch (error) { + const msg = error instanceof Error ? error.message : String(error); + onError(tagToken ?? token, 'TAG_RESOLVE_FAILED', msg); + scalar = new Scalar(value); + } + scalar.range = range; + scalar.source = value; + if (type) + scalar.type = type; + if (tagName) + scalar.tag = tagName; + if (tag.format) + scalar.format = tag.format; + if (comment) + scalar.comment = comment; + return scalar; +} +function findScalarTagByName(schema, value, tagName, tagToken, onError) { + if (tagName === '!') + return schema[SCALAR]; // non-specific tag + const matchWithTest = []; + for (const tag of schema.tags) { + if (!tag.collection && tag.tag === tagName) { + if (tag.default && tag.test) + matchWithTest.push(tag); + else + return tag; + } + } + for (const tag of matchWithTest) + if (tag.test?.test(value)) + return tag; + const kt = schema.knownTags[tagName]; + if (kt && !kt.collection) { + // Ensure that the known tag is available for stringifying, + // but does not get used by default. + schema.tags.push(Object.assign({}, kt, { default: false, test: undefined })); + return kt; + } + onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, tagName !== 'tag:yaml.org,2002:str'); + return schema[SCALAR]; +} +function findScalarTagByTest({ atKey, directives, schema }, value, token, onError) { + const tag = schema.tags.find(tag => (tag.default === true || (atKey && tag.default === 'key')) && + tag.test?.test(value)) || schema[SCALAR]; + if (schema.compat) { + const compat = schema.compat.find(tag => tag.default && tag.test?.test(value)) ?? + schema[SCALAR]; + if (tag.tag !== compat.tag) { + const ts = directives.tagString(tag.tag); + const cs = directives.tagString(compat.tag); + const msg = `Value may be parsed as either ${ts} or ${cs}`; + onError(token, 'TAG_RESOLVE_FAILED', msg, true); + } + } + return tag; +} + +export { composeScalar }; diff --git a/node_modules/yaml/browser/dist/compose/composer.js b/node_modules/yaml/browser/dist/compose/composer.js new file mode 100644 index 0000000..01b387f --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/composer.js @@ -0,0 +1,217 @@ +import { Directives } from '../doc/directives.js'; +import { Document } from '../doc/Document.js'; +import { YAMLWarning, YAMLParseError } from '../errors.js'; +import { isCollection, isPair } from '../nodes/identity.js'; +import { composeDoc } from './compose-doc.js'; +import { resolveEnd } from './resolve-end.js'; + +function getErrorPos(src) { + if (typeof src === 'number') + return [src, src + 1]; + if (Array.isArray(src)) + return src.length === 2 ? src : [src[0], src[1]]; + const { offset, source } = src; + return [offset, offset + (typeof source === 'string' ? source.length : 1)]; +} +function parsePrelude(prelude) { + let comment = ''; + let atComment = false; + let afterEmptyLine = false; + for (let i = 0; i < prelude.length; ++i) { + const source = prelude[i]; + switch (source[0]) { + case '#': + comment += + (comment === '' ? '' : afterEmptyLine ? '\n\n' : '\n') + + (source.substring(1) || ' '); + atComment = true; + afterEmptyLine = false; + break; + case '%': + if (prelude[i + 1]?.[0] !== '#') + i += 1; + atComment = false; + break; + default: + // This may be wrong after doc-end, but in that case it doesn't matter + if (!atComment) + afterEmptyLine = true; + atComment = false; + } + } + return { comment, afterEmptyLine }; +} +/** + * Compose a stream of CST nodes into a stream of YAML Documents. + * + * ```ts + * import { Composer, Parser } from 'yaml' + * + * const src: string = ... + * const tokens = new Parser().parse(src) + * const docs = new Composer().compose(tokens) + * ``` + */ +class Composer { + constructor(options = {}) { + this.doc = null; + this.atDirectives = false; + this.prelude = []; + this.errors = []; + this.warnings = []; + this.onError = (source, code, message, warning) => { + const pos = getErrorPos(source); + if (warning) + this.warnings.push(new YAMLWarning(pos, code, message)); + else + this.errors.push(new YAMLParseError(pos, code, message)); + }; + // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing + this.directives = new Directives({ version: options.version || '1.2' }); + this.options = options; + } + decorate(doc, afterDoc) { + const { comment, afterEmptyLine } = parsePrelude(this.prelude); + //console.log({ dc: doc.comment, prelude, comment }) + if (comment) { + const dc = doc.contents; + if (afterDoc) { + doc.comment = doc.comment ? `${doc.comment}\n${comment}` : comment; + } + else if (afterEmptyLine || doc.directives.docStart || !dc) { + doc.commentBefore = comment; + } + else if (isCollection(dc) && !dc.flow && dc.items.length > 0) { + let it = dc.items[0]; + if (isPair(it)) + it = it.key; + const cb = it.commentBefore; + it.commentBefore = cb ? `${comment}\n${cb}` : comment; + } + else { + const cb = dc.commentBefore; + dc.commentBefore = cb ? `${comment}\n${cb}` : comment; + } + } + if (afterDoc) { + Array.prototype.push.apply(doc.errors, this.errors); + Array.prototype.push.apply(doc.warnings, this.warnings); + } + else { + doc.errors = this.errors; + doc.warnings = this.warnings; + } + this.prelude = []; + this.errors = []; + this.warnings = []; + } + /** + * Current stream status information. + * + * Mostly useful at the end of input for an empty stream. + */ + streamInfo() { + return { + comment: parsePrelude(this.prelude).comment, + directives: this.directives, + errors: this.errors, + warnings: this.warnings + }; + } + /** + * Compose tokens into documents. + * + * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document. + * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly. + */ + *compose(tokens, forceDoc = false, endOffset = -1) { + for (const token of tokens) + yield* this.next(token); + yield* this.end(forceDoc, endOffset); + } + /** Advance the composer by one CST token. */ + *next(token) { + switch (token.type) { + case 'directive': + this.directives.add(token.source, (offset, message, warning) => { + const pos = getErrorPos(token); + pos[0] += offset; + this.onError(pos, 'BAD_DIRECTIVE', message, warning); + }); + this.prelude.push(token.source); + this.atDirectives = true; + break; + case 'document': { + const doc = composeDoc(this.options, this.directives, token, this.onError); + if (this.atDirectives && !doc.directives.docStart) + this.onError(token, 'MISSING_CHAR', 'Missing directives-end/doc-start indicator line'); + this.decorate(doc, false); + if (this.doc) + yield this.doc; + this.doc = doc; + this.atDirectives = false; + break; + } + case 'byte-order-mark': + case 'space': + break; + case 'comment': + case 'newline': + this.prelude.push(token.source); + break; + case 'error': { + const msg = token.source + ? `${token.message}: ${JSON.stringify(token.source)}` + : token.message; + const error = new YAMLParseError(getErrorPos(token), 'UNEXPECTED_TOKEN', msg); + if (this.atDirectives || !this.doc) + this.errors.push(error); + else + this.doc.errors.push(error); + break; + } + case 'doc-end': { + if (!this.doc) { + const msg = 'Unexpected doc-end without preceding document'; + this.errors.push(new YAMLParseError(getErrorPos(token), 'UNEXPECTED_TOKEN', msg)); + break; + } + this.doc.directives.docEnd = true; + const end = resolveEnd(token.end, token.offset + token.source.length, this.doc.options.strict, this.onError); + this.decorate(this.doc, true); + if (end.comment) { + const dc = this.doc.comment; + this.doc.comment = dc ? `${dc}\n${end.comment}` : end.comment; + } + this.doc.range[2] = end.offset; + break; + } + default: + this.errors.push(new YAMLParseError(getErrorPos(token), 'UNEXPECTED_TOKEN', `Unsupported token ${token.type}`)); + } + } + /** + * Call at end of input to yield any remaining document. + * + * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document. + * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly. + */ + *end(forceDoc = false, endOffset = -1) { + if (this.doc) { + this.decorate(this.doc, true); + yield this.doc; + this.doc = null; + } + else if (forceDoc) { + const opts = Object.assign({ _directives: this.directives }, this.options); + const doc = new Document(undefined, opts); + if (this.atDirectives) + this.onError(endOffset, 'MISSING_CHAR', 'Missing directives-end indicator line'); + doc.range = [0, endOffset, endOffset]; + this.decorate(doc, false); + yield doc; + } + } +} + +export { Composer }; diff --git a/node_modules/yaml/browser/dist/compose/resolve-block-map.js b/node_modules/yaml/browser/dist/compose/resolve-block-map.js new file mode 100644 index 0000000..d9b965d --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/resolve-block-map.js @@ -0,0 +1,115 @@ +import { Pair } from '../nodes/Pair.js'; +import { YAMLMap } from '../nodes/YAMLMap.js'; +import { resolveProps } from './resolve-props.js'; +import { containsNewline } from './util-contains-newline.js'; +import { flowIndentCheck } from './util-flow-indent-check.js'; +import { mapIncludes } from './util-map-includes.js'; + +const startColMsg = 'All mapping items must start at the same column'; +function resolveBlockMap({ composeNode, composeEmptyNode }, ctx, bm, onError, tag) { + const NodeClass = tag?.nodeClass ?? YAMLMap; + const map = new NodeClass(ctx.schema); + if (ctx.atRoot) + ctx.atRoot = false; + let offset = bm.offset; + let commentEnd = null; + for (const collItem of bm.items) { + const { start, key, sep, value } = collItem; + // key properties + const keyProps = resolveProps(start, { + indicator: 'explicit-key-ind', + next: key ?? sep?.[0], + offset, + onError, + parentIndent: bm.indent, + startOnNewline: true + }); + const implicitKey = !keyProps.found; + if (implicitKey) { + if (key) { + if (key.type === 'block-seq') + onError(offset, 'BLOCK_AS_IMPLICIT_KEY', 'A block sequence may not be used as an implicit map key'); + else if ('indent' in key && key.indent !== bm.indent) + onError(offset, 'BAD_INDENT', startColMsg); + } + if (!keyProps.anchor && !keyProps.tag && !sep) { + commentEnd = keyProps.end; + if (keyProps.comment) { + if (map.comment) + map.comment += '\n' + keyProps.comment; + else + map.comment = keyProps.comment; + } + continue; + } + if (keyProps.newlineAfterProp || containsNewline(key)) { + onError(key ?? start[start.length - 1], 'MULTILINE_IMPLICIT_KEY', 'Implicit keys need to be on a single line'); + } + } + else if (keyProps.found?.indent !== bm.indent) { + onError(offset, 'BAD_INDENT', startColMsg); + } + // key value + ctx.atKey = true; + const keyStart = keyProps.end; + const keyNode = key + ? composeNode(ctx, key, keyProps, onError) + : composeEmptyNode(ctx, keyStart, start, null, keyProps, onError); + if (ctx.schema.compat) + flowIndentCheck(bm.indent, key, onError); + ctx.atKey = false; + if (mapIncludes(ctx, map.items, keyNode)) + onError(keyStart, 'DUPLICATE_KEY', 'Map keys must be unique'); + // value properties + const valueProps = resolveProps(sep ?? [], { + indicator: 'map-value-ind', + next: value, + offset: keyNode.range[2], + onError, + parentIndent: bm.indent, + startOnNewline: !key || key.type === 'block-scalar' + }); + offset = valueProps.end; + if (valueProps.found) { + if (implicitKey) { + if (value?.type === 'block-map' && !valueProps.hasNewline) + onError(offset, 'BLOCK_AS_IMPLICIT_KEY', 'Nested mappings are not allowed in compact mappings'); + if (ctx.options.strict && + keyProps.start < valueProps.found.offset - 1024) + onError(keyNode.range, 'KEY_OVER_1024_CHARS', 'The : indicator must be at most 1024 chars after the start of an implicit block mapping key'); + } + // value value + const valueNode = value + ? composeNode(ctx, value, valueProps, onError) + : composeEmptyNode(ctx, offset, sep, null, valueProps, onError); + if (ctx.schema.compat) + flowIndentCheck(bm.indent, value, onError); + offset = valueNode.range[2]; + const pair = new Pair(keyNode, valueNode); + if (ctx.options.keepSourceTokens) + pair.srcToken = collItem; + map.items.push(pair); + } + else { + // key with no value + if (implicitKey) + onError(keyNode.range, 'MISSING_CHAR', 'Implicit map keys need to be followed by map values'); + if (valueProps.comment) { + if (keyNode.comment) + keyNode.comment += '\n' + valueProps.comment; + else + keyNode.comment = valueProps.comment; + } + const pair = new Pair(keyNode); + if (ctx.options.keepSourceTokens) + pair.srcToken = collItem; + map.items.push(pair); + } + } + if (commentEnd && commentEnd < offset) + onError(commentEnd, 'IMPOSSIBLE', 'Map comment with trailing content'); + map.range = [bm.offset, offset, commentEnd ?? offset]; + return map; +} + +export { resolveBlockMap }; diff --git a/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js b/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js new file mode 100644 index 0000000..9b7b7b5 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js @@ -0,0 +1,198 @@ +import { Scalar } from '../nodes/Scalar.js'; + +function resolveBlockScalar(ctx, scalar, onError) { + const start = scalar.offset; + const header = parseBlockScalarHeader(scalar, ctx.options.strict, onError); + if (!header) + return { value: '', type: null, comment: '', range: [start, start, start] }; + const type = header.mode === '>' ? Scalar.BLOCK_FOLDED : Scalar.BLOCK_LITERAL; + const lines = scalar.source ? splitLines(scalar.source) : []; + // determine the end of content & start of chomping + let chompStart = lines.length; + for (let i = lines.length - 1; i >= 0; --i) { + const content = lines[i][1]; + if (content === '' || content === '\r') + chompStart = i; + else + break; + } + // shortcut for empty contents + if (chompStart === 0) { + const value = header.chomp === '+' && lines.length > 0 + ? '\n'.repeat(Math.max(1, lines.length - 1)) + : ''; + let end = start + header.length; + if (scalar.source) + end += scalar.source.length; + return { value, type, comment: header.comment, range: [start, end, end] }; + } + // find the indentation level to trim from start + let trimIndent = scalar.indent + header.indent; + let offset = scalar.offset + header.length; + let contentStart = 0; + for (let i = 0; i < chompStart; ++i) { + const [indent, content] = lines[i]; + if (content === '' || content === '\r') { + if (header.indent === 0 && indent.length > trimIndent) + trimIndent = indent.length; + } + else { + if (indent.length < trimIndent) { + const message = 'Block scalars with more-indented leading empty lines must use an explicit indentation indicator'; + onError(offset + indent.length, 'MISSING_CHAR', message); + } + if (header.indent === 0) + trimIndent = indent.length; + contentStart = i; + if (trimIndent === 0 && !ctx.atRoot) { + const message = 'Block scalar values in collections must be indented'; + onError(offset, 'BAD_INDENT', message); + } + break; + } + offset += indent.length + content.length + 1; + } + // include trailing more-indented empty lines in content + for (let i = lines.length - 1; i >= chompStart; --i) { + if (lines[i][0].length > trimIndent) + chompStart = i + 1; + } + let value = ''; + let sep = ''; + let prevMoreIndented = false; + // leading whitespace is kept intact + for (let i = 0; i < contentStart; ++i) + value += lines[i][0].slice(trimIndent) + '\n'; + for (let i = contentStart; i < chompStart; ++i) { + let [indent, content] = lines[i]; + offset += indent.length + content.length + 1; + const crlf = content[content.length - 1] === '\r'; + if (crlf) + content = content.slice(0, -1); + /* istanbul ignore if already caught in lexer */ + if (content && indent.length < trimIndent) { + const src = header.indent + ? 'explicit indentation indicator' + : 'first line'; + const message = `Block scalar lines must not be less indented than their ${src}`; + onError(offset - content.length - (crlf ? 2 : 1), 'BAD_INDENT', message); + indent = ''; + } + if (type === Scalar.BLOCK_LITERAL) { + value += sep + indent.slice(trimIndent) + content; + sep = '\n'; + } + else if (indent.length > trimIndent || content[0] === '\t') { + // more-indented content within a folded block + if (sep === ' ') + sep = '\n'; + else if (!prevMoreIndented && sep === '\n') + sep = '\n\n'; + value += sep + indent.slice(trimIndent) + content; + sep = '\n'; + prevMoreIndented = true; + } + else if (content === '') { + // empty line + if (sep === '\n') + value += '\n'; + else + sep = '\n'; + } + else { + value += sep + content; + sep = ' '; + prevMoreIndented = false; + } + } + switch (header.chomp) { + case '-': + break; + case '+': + for (let i = chompStart; i < lines.length; ++i) + value += '\n' + lines[i][0].slice(trimIndent); + if (value[value.length - 1] !== '\n') + value += '\n'; + break; + default: + value += '\n'; + } + const end = start + header.length + scalar.source.length; + return { value, type, comment: header.comment, range: [start, end, end] }; +} +function parseBlockScalarHeader({ offset, props }, strict, onError) { + /* istanbul ignore if should not happen */ + if (props[0].type !== 'block-scalar-header') { + onError(props[0], 'IMPOSSIBLE', 'Block scalar header not found'); + return null; + } + const { source } = props[0]; + const mode = source[0]; + let indent = 0; + let chomp = ''; + let error = -1; + for (let i = 1; i < source.length; ++i) { + const ch = source[i]; + if (!chomp && (ch === '-' || ch === '+')) + chomp = ch; + else { + const n = Number(ch); + if (!indent && n) + indent = n; + else if (error === -1) + error = offset + i; + } + } + if (error !== -1) + onError(error, 'UNEXPECTED_TOKEN', `Block scalar header includes extra characters: ${source}`); + let hasSpace = false; + let comment = ''; + let length = source.length; + for (let i = 1; i < props.length; ++i) { + const token = props[i]; + switch (token.type) { + case 'space': + hasSpace = true; + // fallthrough + case 'newline': + length += token.source.length; + break; + case 'comment': + if (strict && !hasSpace) { + const message = 'Comments must be separated from other tokens by white space characters'; + onError(token, 'MISSING_CHAR', message); + } + length += token.source.length; + comment = token.source.substring(1); + break; + case 'error': + onError(token, 'UNEXPECTED_TOKEN', token.message); + length += token.source.length; + break; + /* istanbul ignore next should not happen */ + default: { + const message = `Unexpected token in block scalar header: ${token.type}`; + onError(token, 'UNEXPECTED_TOKEN', message); + const ts = token.source; + if (ts && typeof ts === 'string') + length += ts.length; + } + } + } + return { mode, indent, chomp, comment, length }; +} +/** @returns Array of lines split up as `[indent, content]` */ +function splitLines(source) { + const split = source.split(/\n( *)/); + const first = split[0]; + const m = first.match(/^( *)/); + const line0 = m?.[1] + ? [m[1], first.slice(m[1].length)] + : ['', first]; + const lines = [line0]; + for (let i = 1; i < split.length; i += 2) + lines.push([split[i], split[i + 1]]); + return lines; +} + +export { resolveBlockScalar }; diff --git a/node_modules/yaml/browser/dist/compose/resolve-block-seq.js b/node_modules/yaml/browser/dist/compose/resolve-block-seq.js new file mode 100644 index 0000000..5c9e2ce --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/resolve-block-seq.js @@ -0,0 +1,49 @@ +import { YAMLSeq } from '../nodes/YAMLSeq.js'; +import { resolveProps } from './resolve-props.js'; +import { flowIndentCheck } from './util-flow-indent-check.js'; + +function resolveBlockSeq({ composeNode, composeEmptyNode }, ctx, bs, onError, tag) { + const NodeClass = tag?.nodeClass ?? YAMLSeq; + const seq = new NodeClass(ctx.schema); + if (ctx.atRoot) + ctx.atRoot = false; + if (ctx.atKey) + ctx.atKey = false; + let offset = bs.offset; + let commentEnd = null; + for (const { start, value } of bs.items) { + const props = resolveProps(start, { + indicator: 'seq-item-ind', + next: value, + offset, + onError, + parentIndent: bs.indent, + startOnNewline: true + }); + if (!props.found) { + if (props.anchor || props.tag || value) { + if (value && value.type === 'block-seq') + onError(props.end, 'BAD_INDENT', 'All sequence items must start at the same column'); + else + onError(offset, 'MISSING_CHAR', 'Sequence item without - indicator'); + } + else { + commentEnd = props.end; + if (props.comment) + seq.comment = props.comment; + continue; + } + } + const node = value + ? composeNode(ctx, value, props, onError) + : composeEmptyNode(ctx, props.end, start, null, props, onError); + if (ctx.schema.compat) + flowIndentCheck(bs.indent, value, onError); + offset = node.range[2]; + seq.items.push(node); + } + seq.range = [bs.offset, offset, commentEnd ?? offset]; + return seq; +} + +export { resolveBlockSeq }; diff --git a/node_modules/yaml/browser/dist/compose/resolve-end.js b/node_modules/yaml/browser/dist/compose/resolve-end.js new file mode 100644 index 0000000..d5c65d7 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/resolve-end.js @@ -0,0 +1,37 @@ +function resolveEnd(end, offset, reqSpace, onError) { + let comment = ''; + if (end) { + let hasSpace = false; + let sep = ''; + for (const token of end) { + const { source, type } = token; + switch (type) { + case 'space': + hasSpace = true; + break; + case 'comment': { + if (reqSpace && !hasSpace) + onError(token, 'MISSING_CHAR', 'Comments must be separated from other tokens by white space characters'); + const cb = source.substring(1) || ' '; + if (!comment) + comment = cb; + else + comment += sep + cb; + sep = ''; + break; + } + case 'newline': + if (comment) + sep += source; + hasSpace = true; + break; + default: + onError(token, 'UNEXPECTED_TOKEN', `Unexpected ${type} at node end`); + } + offset += source.length; + } + } + return { comment, offset }; +} + +export { resolveEnd }; diff --git a/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js b/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js new file mode 100644 index 0000000..32dc358 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js @@ -0,0 +1,207 @@ +import { isPair } from '../nodes/identity.js'; +import { Pair } from '../nodes/Pair.js'; +import { YAMLMap } from '../nodes/YAMLMap.js'; +import { YAMLSeq } from '../nodes/YAMLSeq.js'; +import { resolveEnd } from './resolve-end.js'; +import { resolveProps } from './resolve-props.js'; +import { containsNewline } from './util-contains-newline.js'; +import { mapIncludes } from './util-map-includes.js'; + +const blockMsg = 'Block collections are not allowed within flow collections'; +const isBlock = (token) => token && (token.type === 'block-map' || token.type === 'block-seq'); +function resolveFlowCollection({ composeNode, composeEmptyNode }, ctx, fc, onError, tag) { + const isMap = fc.start.source === '{'; + const fcName = isMap ? 'flow map' : 'flow sequence'; + const NodeClass = (tag?.nodeClass ?? (isMap ? YAMLMap : YAMLSeq)); + const coll = new NodeClass(ctx.schema); + coll.flow = true; + const atRoot = ctx.atRoot; + if (atRoot) + ctx.atRoot = false; + if (ctx.atKey) + ctx.atKey = false; + let offset = fc.offset + fc.start.source.length; + for (let i = 0; i < fc.items.length; ++i) { + const collItem = fc.items[i]; + const { start, key, sep, value } = collItem; + const props = resolveProps(start, { + flow: fcName, + indicator: 'explicit-key-ind', + next: key ?? sep?.[0], + offset, + onError, + parentIndent: fc.indent, + startOnNewline: false + }); + if (!props.found) { + if (!props.anchor && !props.tag && !sep && !value) { + if (i === 0 && props.comma) + onError(props.comma, 'UNEXPECTED_TOKEN', `Unexpected , in ${fcName}`); + else if (i < fc.items.length - 1) + onError(props.start, 'UNEXPECTED_TOKEN', `Unexpected empty item in ${fcName}`); + if (props.comment) { + if (coll.comment) + coll.comment += '\n' + props.comment; + else + coll.comment = props.comment; + } + offset = props.end; + continue; + } + if (!isMap && ctx.options.strict && containsNewline(key)) + onError(key, // checked by containsNewline() + 'MULTILINE_IMPLICIT_KEY', 'Implicit keys of flow sequence pairs need to be on a single line'); + } + if (i === 0) { + if (props.comma) + onError(props.comma, 'UNEXPECTED_TOKEN', `Unexpected , in ${fcName}`); + } + else { + if (!props.comma) + onError(props.start, 'MISSING_CHAR', `Missing , between ${fcName} items`); + if (props.comment) { + let prevItemComment = ''; + loop: for (const st of start) { + switch (st.type) { + case 'comma': + case 'space': + break; + case 'comment': + prevItemComment = st.source.substring(1); + break loop; + default: + break loop; + } + } + if (prevItemComment) { + let prev = coll.items[coll.items.length - 1]; + if (isPair(prev)) + prev = prev.value ?? prev.key; + if (prev.comment) + prev.comment += '\n' + prevItemComment; + else + prev.comment = prevItemComment; + props.comment = props.comment.substring(prevItemComment.length + 1); + } + } + } + if (!isMap && !sep && !props.found) { + // item is a value in a seq + // → key & sep are empty, start does not include ? or : + const valueNode = value + ? composeNode(ctx, value, props, onError) + : composeEmptyNode(ctx, props.end, sep, null, props, onError); + coll.items.push(valueNode); + offset = valueNode.range[2]; + if (isBlock(value)) + onError(valueNode.range, 'BLOCK_IN_FLOW', blockMsg); + } + else { + // item is a key+value pair + // key value + ctx.atKey = true; + const keyStart = props.end; + const keyNode = key + ? composeNode(ctx, key, props, onError) + : composeEmptyNode(ctx, keyStart, start, null, props, onError); + if (isBlock(key)) + onError(keyNode.range, 'BLOCK_IN_FLOW', blockMsg); + ctx.atKey = false; + // value properties + const valueProps = resolveProps(sep ?? [], { + flow: fcName, + indicator: 'map-value-ind', + next: value, + offset: keyNode.range[2], + onError, + parentIndent: fc.indent, + startOnNewline: false + }); + if (valueProps.found) { + if (!isMap && !props.found && ctx.options.strict) { + if (sep) + for (const st of sep) { + if (st === valueProps.found) + break; + if (st.type === 'newline') { + onError(st, 'MULTILINE_IMPLICIT_KEY', 'Implicit keys of flow sequence pairs need to be on a single line'); + break; + } + } + if (props.start < valueProps.found.offset - 1024) + onError(valueProps.found, 'KEY_OVER_1024_CHARS', 'The : indicator must be at most 1024 chars after the start of an implicit flow sequence key'); + } + } + else if (value) { + if ('source' in value && value.source && value.source[0] === ':') + onError(value, 'MISSING_CHAR', `Missing space after : in ${fcName}`); + else + onError(valueProps.start, 'MISSING_CHAR', `Missing , or : between ${fcName} items`); + } + // value value + const valueNode = value + ? composeNode(ctx, value, valueProps, onError) + : valueProps.found + ? composeEmptyNode(ctx, valueProps.end, sep, null, valueProps, onError) + : null; + if (valueNode) { + if (isBlock(value)) + onError(valueNode.range, 'BLOCK_IN_FLOW', blockMsg); + } + else if (valueProps.comment) { + if (keyNode.comment) + keyNode.comment += '\n' + valueProps.comment; + else + keyNode.comment = valueProps.comment; + } + const pair = new Pair(keyNode, valueNode); + if (ctx.options.keepSourceTokens) + pair.srcToken = collItem; + if (isMap) { + const map = coll; + if (mapIncludes(ctx, map.items, keyNode)) + onError(keyStart, 'DUPLICATE_KEY', 'Map keys must be unique'); + map.items.push(pair); + } + else { + const map = new YAMLMap(ctx.schema); + map.flow = true; + map.items.push(pair); + const endRange = (valueNode ?? keyNode).range; + map.range = [keyNode.range[0], endRange[1], endRange[2]]; + coll.items.push(map); + } + offset = valueNode ? valueNode.range[2] : valueProps.end; + } + } + const expectedEnd = isMap ? '}' : ']'; + const [ce, ...ee] = fc.end; + let cePos = offset; + if (ce && ce.source === expectedEnd) + cePos = ce.offset + ce.source.length; + else { + const name = fcName[0].toUpperCase() + fcName.substring(1); + const msg = atRoot + ? `${name} must end with a ${expectedEnd}` + : `${name} in block collection must be sufficiently indented and end with a ${expectedEnd}`; + onError(offset, atRoot ? 'MISSING_CHAR' : 'BAD_INDENT', msg); + if (ce && ce.source.length !== 1) + ee.unshift(ce); + } + if (ee.length > 0) { + const end = resolveEnd(ee, cePos, ctx.options.strict, onError); + if (end.comment) { + if (coll.comment) + coll.comment += '\n' + end.comment; + else + coll.comment = end.comment; + } + coll.range = [fc.offset, cePos, end.offset]; + } + else { + coll.range = [fc.offset, cePos, cePos]; + } + return coll; +} + +export { resolveFlowCollection }; diff --git a/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js b/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js new file mode 100644 index 0000000..5da8526 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js @@ -0,0 +1,223 @@ +import { Scalar } from '../nodes/Scalar.js'; +import { resolveEnd } from './resolve-end.js'; + +function resolveFlowScalar(scalar, strict, onError) { + const { offset, type, source, end } = scalar; + let _type; + let value; + const _onError = (rel, code, msg) => onError(offset + rel, code, msg); + switch (type) { + case 'scalar': + _type = Scalar.PLAIN; + value = plainValue(source, _onError); + break; + case 'single-quoted-scalar': + _type = Scalar.QUOTE_SINGLE; + value = singleQuotedValue(source, _onError); + break; + case 'double-quoted-scalar': + _type = Scalar.QUOTE_DOUBLE; + value = doubleQuotedValue(source, _onError); + break; + /* istanbul ignore next should not happen */ + default: + onError(scalar, 'UNEXPECTED_TOKEN', `Expected a flow scalar value, but found: ${type}`); + return { + value: '', + type: null, + comment: '', + range: [offset, offset + source.length, offset + source.length] + }; + } + const valueEnd = offset + source.length; + const re = resolveEnd(end, valueEnd, strict, onError); + return { + value, + type: _type, + comment: re.comment, + range: [offset, valueEnd, re.offset] + }; +} +function plainValue(source, onError) { + let badChar = ''; + switch (source[0]) { + /* istanbul ignore next should not happen */ + case '\t': + badChar = 'a tab character'; + break; + case ',': + badChar = 'flow indicator character ,'; + break; + case '%': + badChar = 'directive indicator character %'; + break; + case '|': + case '>': { + badChar = `block scalar indicator ${source[0]}`; + break; + } + case '@': + case '`': { + badChar = `reserved character ${source[0]}`; + break; + } + } + if (badChar) + onError(0, 'BAD_SCALAR_START', `Plain value cannot start with ${badChar}`); + return foldLines(source); +} +function singleQuotedValue(source, onError) { + if (source[source.length - 1] !== "'" || source.length === 1) + onError(source.length, 'MISSING_CHAR', "Missing closing 'quote"); + return foldLines(source.slice(1, -1)).replace(/''/g, "'"); +} +function foldLines(source) { + /** + * The negative lookbehind here and in the `re` RegExp is to + * prevent causing a polynomial search time in certain cases. + * + * The try-catch is for Safari, which doesn't support this yet: + * https://caniuse.com/js-regexp-lookbehind + */ + let first, line; + try { + first = new RegExp('(.*?)(? wsStart ? source.slice(wsStart, i + 1) : ch; + } + else { + res += ch; + } + } + if (source[source.length - 1] !== '"' || source.length === 1) + onError(source.length, 'MISSING_CHAR', 'Missing closing "quote'); + return res; +} +/** + * Fold a single newline into a space, multiple newlines to N - 1 newlines. + * Presumes `source[offset] === '\n'` + */ +function foldNewline(source, offset) { + let fold = ''; + let ch = source[offset + 1]; + while (ch === ' ' || ch === '\t' || ch === '\n' || ch === '\r') { + if (ch === '\r' && source[offset + 2] !== '\n') + break; + if (ch === '\n') + fold += '\n'; + offset += 1; + ch = source[offset + 1]; + } + if (!fold) + fold = ' '; + return { fold, offset }; +} +const escapeCodes = { + '0': '\0', // null character + a: '\x07', // bell character + b: '\b', // backspace + e: '\x1b', // escape character + f: '\f', // form feed + n: '\n', // line feed + r: '\r', // carriage return + t: '\t', // horizontal tab + v: '\v', // vertical tab + N: '\u0085', // Unicode next line + _: '\u00a0', // Unicode non-breaking space + L: '\u2028', // Unicode line separator + P: '\u2029', // Unicode paragraph separator + ' ': ' ', + '"': '"', + '/': '/', + '\\': '\\', + '\t': '\t' +}; +function parseCharCode(source, offset, length, onError) { + const cc = source.substr(offset, length); + const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc); + const code = ok ? parseInt(cc, 16) : NaN; + if (isNaN(code)) { + const raw = source.substr(offset - 2, length + 2); + onError(offset - 2, 'BAD_DQ_ESCAPE', `Invalid escape sequence ${raw}`); + return raw; + } + return String.fromCodePoint(code); +} + +export { resolveFlowScalar }; diff --git a/node_modules/yaml/browser/dist/compose/resolve-props.js b/node_modules/yaml/browser/dist/compose/resolve-props.js new file mode 100644 index 0000000..b6336e1 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/resolve-props.js @@ -0,0 +1,146 @@ +function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIndent, startOnNewline }) { + let spaceBefore = false; + let atNewline = startOnNewline; + let hasSpace = startOnNewline; + let comment = ''; + let commentSep = ''; + let hasNewline = false; + let reqSpace = false; + let tab = null; + let anchor = null; + let tag = null; + let newlineAfterProp = null; + let comma = null; + let found = null; + let start = null; + for (const token of tokens) { + if (reqSpace) { + if (token.type !== 'space' && + token.type !== 'newline' && + token.type !== 'comma') + onError(token.offset, 'MISSING_CHAR', 'Tags and anchors must be separated from the next token by white space'); + reqSpace = false; + } + if (tab) { + if (atNewline && token.type !== 'comment' && token.type !== 'newline') { + onError(tab, 'TAB_AS_INDENT', 'Tabs are not allowed as indentation'); + } + tab = null; + } + switch (token.type) { + case 'space': + // At the doc level, tabs at line start may be parsed + // as leading white space rather than indentation. + // In a flow collection, only the parser handles indent. + if (!flow && + (indicator !== 'doc-start' || next?.type !== 'flow-collection') && + token.source.includes('\t')) { + tab = token; + } + hasSpace = true; + break; + case 'comment': { + if (!hasSpace) + onError(token, 'MISSING_CHAR', 'Comments must be separated from other tokens by white space characters'); + const cb = token.source.substring(1) || ' '; + if (!comment) + comment = cb; + else + comment += commentSep + cb; + commentSep = ''; + atNewline = false; + break; + } + case 'newline': + if (atNewline) { + if (comment) + comment += token.source; + else if (!found || indicator !== 'seq-item-ind') + spaceBefore = true; + } + else + commentSep += token.source; + atNewline = true; + hasNewline = true; + if (anchor || tag) + newlineAfterProp = token; + hasSpace = true; + break; + case 'anchor': + if (anchor) + onError(token, 'MULTIPLE_ANCHORS', 'A node can have at most one anchor'); + if (token.source.endsWith(':')) + onError(token.offset + token.source.length - 1, 'BAD_ALIAS', 'Anchor ending in : is ambiguous', true); + anchor = token; + start ?? (start = token.offset); + atNewline = false; + hasSpace = false; + reqSpace = true; + break; + case 'tag': { + if (tag) + onError(token, 'MULTIPLE_TAGS', 'A node can have at most one tag'); + tag = token; + start ?? (start = token.offset); + atNewline = false; + hasSpace = false; + reqSpace = true; + break; + } + case indicator: + // Could here handle preceding comments differently + if (anchor || tag) + onError(token, 'BAD_PROP_ORDER', `Anchors and tags must be after the ${token.source} indicator`); + if (found) + onError(token, 'UNEXPECTED_TOKEN', `Unexpected ${token.source} in ${flow ?? 'collection'}`); + found = token; + atNewline = + indicator === 'seq-item-ind' || indicator === 'explicit-key-ind'; + hasSpace = false; + break; + case 'comma': + if (flow) { + if (comma) + onError(token, 'UNEXPECTED_TOKEN', `Unexpected , in ${flow}`); + comma = token; + atNewline = false; + hasSpace = false; + break; + } + // else fallthrough + default: + onError(token, 'UNEXPECTED_TOKEN', `Unexpected ${token.type} token`); + atNewline = false; + hasSpace = false; + } + } + const last = tokens[tokens.length - 1]; + const end = last ? last.offset + last.source.length : offset; + if (reqSpace && + next && + next.type !== 'space' && + next.type !== 'newline' && + next.type !== 'comma' && + (next.type !== 'scalar' || next.source !== '')) { + onError(next.offset, 'MISSING_CHAR', 'Tags and anchors must be separated from the next token by white space'); + } + if (tab && + ((atNewline && tab.indent <= parentIndent) || + next?.type === 'block-map' || + next?.type === 'block-seq')) + onError(tab, 'TAB_AS_INDENT', 'Tabs are not allowed as indentation'); + return { + comma, + found, + spaceBefore, + comment, + hasNewline, + anchor, + tag, + newlineAfterProp, + end, + start: start ?? end + }; +} + +export { resolveProps }; diff --git a/node_modules/yaml/browser/dist/compose/util-contains-newline.js b/node_modules/yaml/browser/dist/compose/util-contains-newline.js new file mode 100644 index 0000000..2d65390 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/util-contains-newline.js @@ -0,0 +1,34 @@ +function containsNewline(key) { + if (!key) + return null; + switch (key.type) { + case 'alias': + case 'scalar': + case 'double-quoted-scalar': + case 'single-quoted-scalar': + if (key.source.includes('\n')) + return true; + if (key.end) + for (const st of key.end) + if (st.type === 'newline') + return true; + return false; + case 'flow-collection': + for (const it of key.items) { + for (const st of it.start) + if (st.type === 'newline') + return true; + if (it.sep) + for (const st of it.sep) + if (st.type === 'newline') + return true; + if (containsNewline(it.key) || containsNewline(it.value)) + return true; + } + return false; + default: + return true; + } +} + +export { containsNewline }; diff --git a/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js b/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js new file mode 100644 index 0000000..26f238c --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js @@ -0,0 +1,26 @@ +function emptyScalarPosition(offset, before, pos) { + if (before) { + pos ?? (pos = before.length); + for (let i = pos - 1; i >= 0; --i) { + let st = before[i]; + switch (st.type) { + case 'space': + case 'comment': + case 'newline': + offset -= st.source.length; + continue; + } + // Technically, an empty scalar is immediately after the last non-empty + // node, but it's more useful to place it after any whitespace. + st = before[++i]; + while (st?.type === 'space') { + offset += st.source.length; + st = before[++i]; + } + break; + } + } + return offset; +} + +export { emptyScalarPosition }; diff --git a/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js b/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js new file mode 100644 index 0000000..c20e670 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js @@ -0,0 +1,15 @@ +import { containsNewline } from './util-contains-newline.js'; + +function flowIndentCheck(indent, fc, onError) { + if (fc?.type === 'flow-collection') { + const end = fc.end[0]; + if (end.indent === indent && + (end.source === ']' || end.source === '}') && + containsNewline(fc)) { + const msg = 'Flow end indicator should be more indented than parent'; + onError(end, 'BAD_INDENT', msg, true); + } + } +} + +export { flowIndentCheck }; diff --git a/node_modules/yaml/browser/dist/compose/util-map-includes.js b/node_modules/yaml/browser/dist/compose/util-map-includes.js new file mode 100644 index 0000000..48444b6 --- /dev/null +++ b/node_modules/yaml/browser/dist/compose/util-map-includes.js @@ -0,0 +1,13 @@ +import { isScalar } from '../nodes/identity.js'; + +function mapIncludes(ctx, items, search) { + const { uniqueKeys } = ctx.options; + if (uniqueKeys === false) + return false; + const isEqual = typeof uniqueKeys === 'function' + ? uniqueKeys + : (a, b) => a === b || (isScalar(a) && isScalar(b) && a.value === b.value); + return items.some(pair => isEqual(pair.key, search)); +} + +export { mapIncludes }; diff --git a/node_modules/yaml/browser/dist/doc/Document.js b/node_modules/yaml/browser/dist/doc/Document.js new file mode 100644 index 0000000..f1f4278 --- /dev/null +++ b/node_modules/yaml/browser/dist/doc/Document.js @@ -0,0 +1,335 @@ +import { Alias } from '../nodes/Alias.js'; +import { isEmptyPath, collectionFromPath } from '../nodes/Collection.js'; +import { NODE_TYPE, DOC, isNode, isCollection, isScalar } from '../nodes/identity.js'; +import { Pair } from '../nodes/Pair.js'; +import { toJS } from '../nodes/toJS.js'; +import { Schema } from '../schema/Schema.js'; +import { stringifyDocument } from '../stringify/stringifyDocument.js'; +import { anchorNames, findNewAnchor, createNodeAnchors } from './anchors.js'; +import { applyReviver } from './applyReviver.js'; +import { createNode } from './createNode.js'; +import { Directives } from './directives.js'; + +class Document { + constructor(value, replacer, options) { + /** A comment before this Document */ + this.commentBefore = null; + /** A comment immediately after this Document */ + this.comment = null; + /** Errors encountered during parsing. */ + this.errors = []; + /** Warnings encountered during parsing. */ + this.warnings = []; + Object.defineProperty(this, NODE_TYPE, { value: DOC }); + let _replacer = null; + if (typeof replacer === 'function' || Array.isArray(replacer)) { + _replacer = replacer; + } + else if (options === undefined && replacer) { + options = replacer; + replacer = undefined; + } + const opt = Object.assign({ + intAsBigInt: false, + keepSourceTokens: false, + logLevel: 'warn', + prettyErrors: true, + strict: true, + stringKeys: false, + uniqueKeys: true, + version: '1.2' + }, options); + this.options = opt; + let { version } = opt; + if (options?._directives) { + this.directives = options._directives.atDocument(); + if (this.directives.yaml.explicit) + version = this.directives.yaml.version; + } + else + this.directives = new Directives({ version }); + this.setSchema(version, options); + // @ts-expect-error We can't really know that this matches Contents. + this.contents = + value === undefined ? null : this.createNode(value, _replacer, options); + } + /** + * Create a deep copy of this Document and its contents. + * + * Custom Node values that inherit from `Object` still refer to their original instances. + */ + clone() { + const copy = Object.create(Document.prototype, { + [NODE_TYPE]: { value: DOC } + }); + copy.commentBefore = this.commentBefore; + copy.comment = this.comment; + copy.errors = this.errors.slice(); + copy.warnings = this.warnings.slice(); + copy.options = Object.assign({}, this.options); + if (this.directives) + copy.directives = this.directives.clone(); + copy.schema = this.schema.clone(); + // @ts-expect-error We can't really know that this matches Contents. + copy.contents = isNode(this.contents) + ? this.contents.clone(copy.schema) + : this.contents; + if (this.range) + copy.range = this.range.slice(); + return copy; + } + /** Adds a value to the document. */ + add(value) { + if (assertCollection(this.contents)) + this.contents.add(value); + } + /** Adds a value to the document. */ + addIn(path, value) { + if (assertCollection(this.contents)) + this.contents.addIn(path, value); + } + /** + * Create a new `Alias` node, ensuring that the target `node` has the required anchor. + * + * If `node` already has an anchor, `name` is ignored. + * Otherwise, the `node.anchor` value will be set to `name`, + * or if an anchor with that name is already present in the document, + * `name` will be used as a prefix for a new unique anchor. + * If `name` is undefined, the generated anchor will use 'a' as a prefix. + */ + createAlias(node, name) { + if (!node.anchor) { + const prev = anchorNames(this); + node.anchor = + // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing + !name || prev.has(name) ? findNewAnchor(name || 'a', prev) : name; + } + return new Alias(node.anchor); + } + createNode(value, replacer, options) { + let _replacer = undefined; + if (typeof replacer === 'function') { + value = replacer.call({ '': value }, '', value); + _replacer = replacer; + } + else if (Array.isArray(replacer)) { + const keyToStr = (v) => typeof v === 'number' || v instanceof String || v instanceof Number; + const asStr = replacer.filter(keyToStr).map(String); + if (asStr.length > 0) + replacer = replacer.concat(asStr); + _replacer = replacer; + } + else if (options === undefined && replacer) { + options = replacer; + replacer = undefined; + } + const { aliasDuplicateObjects, anchorPrefix, flow, keepUndefined, onTagObj, tag } = options ?? {}; + const { onAnchor, setAnchors, sourceObjects } = createNodeAnchors(this, + // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing + anchorPrefix || 'a'); + const ctx = { + aliasDuplicateObjects: aliasDuplicateObjects ?? true, + keepUndefined: keepUndefined ?? false, + onAnchor, + onTagObj, + replacer: _replacer, + schema: this.schema, + sourceObjects + }; + const node = createNode(value, tag, ctx); + if (flow && isCollection(node)) + node.flow = true; + setAnchors(); + return node; + } + /** + * Convert a key and a value into a `Pair` using the current schema, + * recursively wrapping all values as `Scalar` or `Collection` nodes. + */ + createPair(key, value, options = {}) { + const k = this.createNode(key, null, options); + const v = this.createNode(value, null, options); + return new Pair(k, v); + } + /** + * Removes a value from the document. + * @returns `true` if the item was found and removed. + */ + delete(key) { + return assertCollection(this.contents) ? this.contents.delete(key) : false; + } + /** + * Removes a value from the document. + * @returns `true` if the item was found and removed. + */ + deleteIn(path) { + if (isEmptyPath(path)) { + if (this.contents == null) + return false; + // @ts-expect-error Presumed impossible if Strict extends false + this.contents = null; + return true; + } + return assertCollection(this.contents) + ? this.contents.deleteIn(path) + : false; + } + /** + * Returns item at `key`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + */ + get(key, keepScalar) { + return isCollection(this.contents) + ? this.contents.get(key, keepScalar) + : undefined; + } + /** + * Returns item at `path`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + */ + getIn(path, keepScalar) { + if (isEmptyPath(path)) + return !keepScalar && isScalar(this.contents) + ? this.contents.value + : this.contents; + return isCollection(this.contents) + ? this.contents.getIn(path, keepScalar) + : undefined; + } + /** + * Checks if the document includes a value with the key `key`. + */ + has(key) { + return isCollection(this.contents) ? this.contents.has(key) : false; + } + /** + * Checks if the document includes a value at `path`. + */ + hasIn(path) { + if (isEmptyPath(path)) + return this.contents !== undefined; + return isCollection(this.contents) ? this.contents.hasIn(path) : false; + } + /** + * Sets a value in this document. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + */ + set(key, value) { + if (this.contents == null) { + // @ts-expect-error We can't really know that this matches Contents. + this.contents = collectionFromPath(this.schema, [key], value); + } + else if (assertCollection(this.contents)) { + this.contents.set(key, value); + } + } + /** + * Sets a value in this document. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + */ + setIn(path, value) { + if (isEmptyPath(path)) { + // @ts-expect-error We can't really know that this matches Contents. + this.contents = value; + } + else if (this.contents == null) { + // @ts-expect-error We can't really know that this matches Contents. + this.contents = collectionFromPath(this.schema, Array.from(path), value); + } + else if (assertCollection(this.contents)) { + this.contents.setIn(path, value); + } + } + /** + * Change the YAML version and schema used by the document. + * A `null` version disables support for directives, explicit tags, anchors, and aliases. + * It also requires the `schema` option to be given as a `Schema` instance value. + * + * Overrides all previously set schema options. + */ + setSchema(version, options = {}) { + if (typeof version === 'number') + version = String(version); + let opt; + switch (version) { + case '1.1': + if (this.directives) + this.directives.yaml.version = '1.1'; + else + this.directives = new Directives({ version: '1.1' }); + opt = { resolveKnownTags: false, schema: 'yaml-1.1' }; + break; + case '1.2': + case 'next': + if (this.directives) + this.directives.yaml.version = version; + else + this.directives = new Directives({ version }); + opt = { resolveKnownTags: true, schema: 'core' }; + break; + case null: + if (this.directives) + delete this.directives; + opt = null; + break; + default: { + const sv = JSON.stringify(version); + throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${sv}`); + } + } + // Not using `instanceof Schema` to allow for duck typing + if (options.schema instanceof Object) + this.schema = options.schema; + else if (opt) + this.schema = new Schema(Object.assign(opt, options)); + else + throw new Error(`With a null YAML version, the { schema: Schema } option is required`); + } + // json & jsonArg are only used from toJSON() + toJS({ json, jsonArg, mapAsMap, maxAliasCount, onAnchor, reviver } = {}) { + const ctx = { + anchors: new Map(), + doc: this, + keep: !json, + mapAsMap: mapAsMap === true, + mapKeyWarned: false, + maxAliasCount: typeof maxAliasCount === 'number' ? maxAliasCount : 100 + }; + const res = toJS(this.contents, jsonArg ?? '', ctx); + if (typeof onAnchor === 'function') + for (const { count, res } of ctx.anchors.values()) + onAnchor(res, count); + return typeof reviver === 'function' + ? applyReviver(reviver, { '': res }, '', res) + : res; + } + /** + * A JSON representation of the document `contents`. + * + * @param jsonArg Used by `JSON.stringify` to indicate the array index or + * property name. + */ + toJSON(jsonArg, onAnchor) { + return this.toJS({ json: true, jsonArg, mapAsMap: false, onAnchor }); + } + /** A YAML representation of the document. */ + toString(options = {}) { + if (this.errors.length > 0) + throw new Error('Document with errors cannot be stringified'); + if ('indent' in options && + (!Number.isInteger(options.indent) || Number(options.indent) <= 0)) { + const s = JSON.stringify(options.indent); + throw new Error(`"indent" option must be a positive integer, not ${s}`); + } + return stringifyDocument(this, options); + } +} +function assertCollection(contents) { + if (isCollection(contents)) + return true; + throw new Error('Expected a YAML collection as document contents'); +} + +export { Document }; diff --git a/node_modules/yaml/browser/dist/doc/anchors.js b/node_modules/yaml/browser/dist/doc/anchors.js new file mode 100644 index 0000000..64810d1 --- /dev/null +++ b/node_modules/yaml/browser/dist/doc/anchors.js @@ -0,0 +1,71 @@ +import { isScalar, isCollection } from '../nodes/identity.js'; +import { visit } from '../visit.js'; + +/** + * Verify that the input string is a valid anchor. + * + * Will throw on errors. + */ +function anchorIsValid(anchor) { + if (/[\x00-\x19\s,[\]{}]/.test(anchor)) { + const sa = JSON.stringify(anchor); + const msg = `Anchor must not contain whitespace or control characters: ${sa}`; + throw new Error(msg); + } + return true; +} +function anchorNames(root) { + const anchors = new Set(); + visit(root, { + Value(_key, node) { + if (node.anchor) + anchors.add(node.anchor); + } + }); + return anchors; +} +/** Find a new anchor name with the given `prefix` and a one-indexed suffix. */ +function findNewAnchor(prefix, exclude) { + for (let i = 1; true; ++i) { + const name = `${prefix}${i}`; + if (!exclude.has(name)) + return name; + } +} +function createNodeAnchors(doc, prefix) { + const aliasObjects = []; + const sourceObjects = new Map(); + let prevAnchors = null; + return { + onAnchor: (source) => { + aliasObjects.push(source); + prevAnchors ?? (prevAnchors = anchorNames(doc)); + const anchor = findNewAnchor(prefix, prevAnchors); + prevAnchors.add(anchor); + return anchor; + }, + /** + * With circular references, the source node is only resolved after all + * of its child nodes are. This is why anchors are set only after all of + * the nodes have been created. + */ + setAnchors: () => { + for (const source of aliasObjects) { + const ref = sourceObjects.get(source); + if (typeof ref === 'object' && + ref.anchor && + (isScalar(ref.node) || isCollection(ref.node))) { + ref.node.anchor = ref.anchor; + } + else { + const error = new Error('Failed to resolve repeated object (this should not happen)'); + error.source = source; + throw error; + } + } + }, + sourceObjects + }; +} + +export { anchorIsValid, anchorNames, createNodeAnchors, findNewAnchor }; diff --git a/node_modules/yaml/browser/dist/doc/applyReviver.js b/node_modules/yaml/browser/dist/doc/applyReviver.js new file mode 100644 index 0000000..6e77336 --- /dev/null +++ b/node_modules/yaml/browser/dist/doc/applyReviver.js @@ -0,0 +1,55 @@ +/** + * Applies the JSON.parse reviver algorithm as defined in the ECMA-262 spec, + * in section 24.5.1.1 "Runtime Semantics: InternalizeJSONProperty" of the + * 2021 edition: https://tc39.es/ecma262/#sec-json.parse + * + * Includes extensions for handling Map and Set objects. + */ +function applyReviver(reviver, obj, key, val) { + if (val && typeof val === 'object') { + if (Array.isArray(val)) { + for (let i = 0, len = val.length; i < len; ++i) { + const v0 = val[i]; + const v1 = applyReviver(reviver, val, String(i), v0); + // eslint-disable-next-line @typescript-eslint/no-array-delete + if (v1 === undefined) + delete val[i]; + else if (v1 !== v0) + val[i] = v1; + } + } + else if (val instanceof Map) { + for (const k of Array.from(val.keys())) { + const v0 = val.get(k); + const v1 = applyReviver(reviver, val, k, v0); + if (v1 === undefined) + val.delete(k); + else if (v1 !== v0) + val.set(k, v1); + } + } + else if (val instanceof Set) { + for (const v0 of Array.from(val)) { + const v1 = applyReviver(reviver, val, v0, v0); + if (v1 === undefined) + val.delete(v0); + else if (v1 !== v0) { + val.delete(v0); + val.add(v1); + } + } + } + else { + for (const [k, v0] of Object.entries(val)) { + const v1 = applyReviver(reviver, val, k, v0); + if (v1 === undefined) + delete val[k]; + else if (v1 !== v0) + val[k] = v1; + } + } + } + return reviver.call(obj, key, val); +} + +export { applyReviver }; diff --git a/node_modules/yaml/browser/dist/doc/createNode.js b/node_modules/yaml/browser/dist/doc/createNode.js new file mode 100644 index 0000000..ddcc211 --- /dev/null +++ b/node_modules/yaml/browser/dist/doc/createNode.js @@ -0,0 +1,88 @@ +import { Alias } from '../nodes/Alias.js'; +import { isNode, isPair, MAP, SEQ, isDocument } from '../nodes/identity.js'; +import { Scalar } from '../nodes/Scalar.js'; + +const defaultTagPrefix = 'tag:yaml.org,2002:'; +function findTagObject(value, tagName, tags) { + if (tagName) { + const match = tags.filter(t => t.tag === tagName); + const tagObj = match.find(t => !t.format) ?? match[0]; + if (!tagObj) + throw new Error(`Tag ${tagName} not found`); + return tagObj; + } + return tags.find(t => t.identify?.(value) && !t.format); +} +function createNode(value, tagName, ctx) { + if (isDocument(value)) + value = value.contents; + if (isNode(value)) + return value; + if (isPair(value)) { + const map = ctx.schema[MAP].createNode?.(ctx.schema, null, ctx); + map.items.push(value); + return map; + } + if (value instanceof String || + value instanceof Number || + value instanceof Boolean || + (typeof BigInt !== 'undefined' && value instanceof BigInt) // not supported everywhere + ) { + // https://tc39.es/ecma262/#sec-serializejsonproperty + value = value.valueOf(); + } + const { aliasDuplicateObjects, onAnchor, onTagObj, schema, sourceObjects } = ctx; + // Detect duplicate references to the same object & use Alias nodes for all + // after first. The `ref` wrapper allows for circular references to resolve. + let ref = undefined; + if (aliasDuplicateObjects && value && typeof value === 'object') { + ref = sourceObjects.get(value); + if (ref) { + ref.anchor ?? (ref.anchor = onAnchor(value)); + return new Alias(ref.anchor); + } + else { + ref = { anchor: null, node: null }; + sourceObjects.set(value, ref); + } + } + if (tagName?.startsWith('!!')) + tagName = defaultTagPrefix + tagName.slice(2); + let tagObj = findTagObject(value, tagName, schema.tags); + if (!tagObj) { + if (value && typeof value.toJSON === 'function') { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call + value = value.toJSON(); + } + if (!value || typeof value !== 'object') { + const node = new Scalar(value); + if (ref) + ref.node = node; + return node; + } + tagObj = + value instanceof Map + ? schema[MAP] + : Symbol.iterator in Object(value) + ? schema[SEQ] + : schema[MAP]; + } + if (onTagObj) { + onTagObj(tagObj); + delete ctx.onTagObj; + } + const node = tagObj?.createNode + ? tagObj.createNode(ctx.schema, value, ctx) + : typeof tagObj?.nodeClass?.from === 'function' + ? tagObj.nodeClass.from(ctx.schema, value, ctx) + : new Scalar(value); + if (tagName) + node.tag = tagName; + else if (!tagObj.default) + node.tag = tagObj.tag; + if (ref) + ref.node = node; + return node; +} + +export { createNode }; diff --git a/node_modules/yaml/browser/dist/doc/directives.js b/node_modules/yaml/browser/dist/doc/directives.js new file mode 100644 index 0000000..c66e612 --- /dev/null +++ b/node_modules/yaml/browser/dist/doc/directives.js @@ -0,0 +1,176 @@ +import { isNode } from '../nodes/identity.js'; +import { visit } from '../visit.js'; + +const escapeChars = { + '!': '%21', + ',': '%2C', + '[': '%5B', + ']': '%5D', + '{': '%7B', + '}': '%7D' +}; +const escapeTagName = (tn) => tn.replace(/[!,[\]{}]/g, ch => escapeChars[ch]); +class Directives { + constructor(yaml, tags) { + /** + * The directives-end/doc-start marker `---`. If `null`, a marker may still be + * included in the document's stringified representation. + */ + this.docStart = null; + /** The doc-end marker `...`. */ + this.docEnd = false; + this.yaml = Object.assign({}, Directives.defaultYaml, yaml); + this.tags = Object.assign({}, Directives.defaultTags, tags); + } + clone() { + const copy = new Directives(this.yaml, this.tags); + copy.docStart = this.docStart; + return copy; + } + /** + * During parsing, get a Directives instance for the current document and + * update the stream state according to the current version's spec. + */ + atDocument() { + const res = new Directives(this.yaml, this.tags); + switch (this.yaml.version) { + case '1.1': + this.atNextDocument = true; + break; + case '1.2': + this.atNextDocument = false; + this.yaml = { + explicit: Directives.defaultYaml.explicit, + version: '1.2' + }; + this.tags = Object.assign({}, Directives.defaultTags); + break; + } + return res; + } + /** + * @param onError - May be called even if the action was successful + * @returns `true` on success + */ + add(line, onError) { + if (this.atNextDocument) { + this.yaml = { explicit: Directives.defaultYaml.explicit, version: '1.1' }; + this.tags = Object.assign({}, Directives.defaultTags); + this.atNextDocument = false; + } + const parts = line.trim().split(/[ \t]+/); + const name = parts.shift(); + switch (name) { + case '%TAG': { + if (parts.length !== 2) { + onError(0, '%TAG directive should contain exactly two parts'); + if (parts.length < 2) + return false; + } + const [handle, prefix] = parts; + this.tags[handle] = prefix; + return true; + } + case '%YAML': { + this.yaml.explicit = true; + if (parts.length !== 1) { + onError(0, '%YAML directive should contain exactly one part'); + return false; + } + const [version] = parts; + if (version === '1.1' || version === '1.2') { + this.yaml.version = version; + return true; + } + else { + const isValid = /^\d+\.\d+$/.test(version); + onError(6, `Unsupported YAML version ${version}`, isValid); + return false; + } + } + default: + onError(0, `Unknown directive ${name}`, true); + return false; + } + } + /** + * Resolves a tag, matching handles to those defined in %TAG directives. + * + * @returns Resolved tag, which may also be the non-specific tag `'!'` or a + * `'!local'` tag, or `null` if unresolvable. + */ + tagName(source, onError) { + if (source === '!') + return '!'; // non-specific tag + if (source[0] !== '!') { + onError(`Not a valid tag: ${source}`); + return null; + } + if (source[1] === '<') { + const verbatim = source.slice(2, -1); + if (verbatim === '!' || verbatim === '!!') { + onError(`Verbatim tags aren't resolved, so ${source} is invalid.`); + return null; + } + if (source[source.length - 1] !== '>') + onError('Verbatim tags must end with a >'); + return verbatim; + } + const [, handle, suffix] = source.match(/^(.*!)([^!]*)$/s); + if (!suffix) + onError(`The ${source} tag has no suffix`); + const prefix = this.tags[handle]; + if (prefix) { + try { + return prefix + decodeURIComponent(suffix); + } + catch (error) { + onError(String(error)); + return null; + } + } + if (handle === '!') + return source; // local tag + onError(`Could not resolve tag: ${source}`); + return null; + } + /** + * Given a fully resolved tag, returns its printable string form, + * taking into account current tag prefixes and defaults. + */ + tagString(tag) { + for (const [handle, prefix] of Object.entries(this.tags)) { + if (tag.startsWith(prefix)) + return handle + escapeTagName(tag.substring(prefix.length)); + } + return tag[0] === '!' ? tag : `!<${tag}>`; + } + toString(doc) { + const lines = this.yaml.explicit + ? [`%YAML ${this.yaml.version || '1.2'}`] + : []; + const tagEntries = Object.entries(this.tags); + let tagNames; + if (doc && tagEntries.length > 0 && isNode(doc.contents)) { + const tags = {}; + visit(doc.contents, (_key, node) => { + if (isNode(node) && node.tag) + tags[node.tag] = true; + }); + tagNames = Object.keys(tags); + } + else + tagNames = []; + for (const [handle, prefix] of tagEntries) { + if (handle === '!!' && prefix === 'tag:yaml.org,2002:') + continue; + if (!doc || tagNames.some(tn => tn.startsWith(prefix))) + lines.push(`%TAG ${handle} ${prefix}`); + } + return lines.join('\n'); + } +} +Directives.defaultYaml = { explicit: false, version: '1.2' }; +Directives.defaultTags = { '!!': 'tag:yaml.org,2002:' }; + +export { Directives }; diff --git a/node_modules/yaml/browser/dist/errors.js b/node_modules/yaml/browser/dist/errors.js new file mode 100644 index 0000000..ad91290 --- /dev/null +++ b/node_modules/yaml/browser/dist/errors.js @@ -0,0 +1,57 @@ +class YAMLError extends Error { + constructor(name, pos, code, message) { + super(); + this.name = name; + this.code = code; + this.message = message; + this.pos = pos; + } +} +class YAMLParseError extends YAMLError { + constructor(pos, code, message) { + super('YAMLParseError', pos, code, message); + } +} +class YAMLWarning extends YAMLError { + constructor(pos, code, message) { + super('YAMLWarning', pos, code, message); + } +} +const prettifyError = (src, lc) => (error) => { + if (error.pos[0] === -1) + return; + error.linePos = error.pos.map(pos => lc.linePos(pos)); + const { line, col } = error.linePos[0]; + error.message += ` at line ${line}, column ${col}`; + let ci = col - 1; + let lineStr = src + .substring(lc.lineStarts[line - 1], lc.lineStarts[line]) + .replace(/[\n\r]+$/, ''); + // Trim to max 80 chars, keeping col position near the middle + if (ci >= 60 && lineStr.length > 80) { + const trimStart = Math.min(ci - 39, lineStr.length - 79); + lineStr = '…' + lineStr.substring(trimStart); + ci -= trimStart - 1; + } + if (lineStr.length > 80) + lineStr = lineStr.substring(0, 79) + '…'; + // Include previous line in context if pointing at line start + if (line > 1 && /^ *$/.test(lineStr.substring(0, ci))) { + // Regexp won't match if start is trimmed + let prev = src.substring(lc.lineStarts[line - 2], lc.lineStarts[line - 1]); + if (prev.length > 80) + prev = prev.substring(0, 79) + '…\n'; + lineStr = prev + lineStr; + } + if (/[^ ]/.test(lineStr)) { + let count = 1; + const end = error.linePos[1]; + if (end && end.line === line && end.col > col) { + count = Math.max(1, Math.min(end.col - col, 80 - ci)); + } + const pointer = ' '.repeat(ci) + '^'.repeat(count); + error.message += `:\n\n${lineStr}\n${pointer}\n`; + } +}; + +export { YAMLError, YAMLParseError, YAMLWarning, prettifyError }; diff --git a/node_modules/yaml/browser/dist/index.js b/node_modules/yaml/browser/dist/index.js new file mode 100644 index 0000000..097bf24 --- /dev/null +++ b/node_modules/yaml/browser/dist/index.js @@ -0,0 +1,17 @@ +export { Composer } from './compose/composer.js'; +export { Document } from './doc/Document.js'; +export { Schema } from './schema/Schema.js'; +export { YAMLError, YAMLParseError, YAMLWarning } from './errors.js'; +export { Alias } from './nodes/Alias.js'; +export { isAlias, isCollection, isDocument, isMap, isNode, isPair, isScalar, isSeq } from './nodes/identity.js'; +export { Pair } from './nodes/Pair.js'; +export { Scalar } from './nodes/Scalar.js'; +export { YAMLMap } from './nodes/YAMLMap.js'; +export { YAMLSeq } from './nodes/YAMLSeq.js'; +import * as cst from './parse/cst.js'; +export { cst as CST }; +export { Lexer } from './parse/lexer.js'; +export { LineCounter } from './parse/line-counter.js'; +export { Parser } from './parse/parser.js'; +export { parse, parseAllDocuments, parseDocument, stringify } from './public-api.js'; +export { visit, visitAsync } from './visit.js'; diff --git a/node_modules/yaml/browser/dist/log.js b/node_modules/yaml/browser/dist/log.js new file mode 100644 index 0000000..d9ec357 --- /dev/null +++ b/node_modules/yaml/browser/dist/log.js @@ -0,0 +1,11 @@ +function debug(logLevel, ...messages) { + if (logLevel === 'debug') + console.log(...messages); +} +function warn(logLevel, warning) { + if (logLevel === 'debug' || logLevel === 'warn') { + console.warn(warning); + } +} + +export { debug, warn }; diff --git a/node_modules/yaml/browser/dist/nodes/Alias.js b/node_modules/yaml/browser/dist/nodes/Alias.js new file mode 100644 index 0000000..7a638ba --- /dev/null +++ b/node_modules/yaml/browser/dist/nodes/Alias.js @@ -0,0 +1,114 @@ +import { anchorIsValid } from '../doc/anchors.js'; +import { visit } from '../visit.js'; +import { ALIAS, isAlias, isCollection, isPair, hasAnchor } from './identity.js'; +import { NodeBase } from './Node.js'; +import { toJS } from './toJS.js'; + +class Alias extends NodeBase { + constructor(source) { + super(ALIAS); + this.source = source; + Object.defineProperty(this, 'tag', { + set() { + throw new Error('Alias nodes cannot have tags'); + } + }); + } + /** + * Resolve the value of this alias within `doc`, finding the last + * instance of the `source` anchor before this node. + */ + resolve(doc, ctx) { + let nodes; + if (ctx?.aliasResolveCache) { + nodes = ctx.aliasResolveCache; + } + else { + nodes = []; + visit(doc, { + Node: (_key, node) => { + if (isAlias(node) || hasAnchor(node)) + nodes.push(node); + } + }); + if (ctx) + ctx.aliasResolveCache = nodes; + } + let found = undefined; + for (const node of nodes) { + if (node === this) + break; + if (node.anchor === this.source) + found = node; + } + return found; + } + toJSON(_arg, ctx) { + if (!ctx) + return { source: this.source }; + const { anchors, doc, maxAliasCount } = ctx; + const source = this.resolve(doc, ctx); + if (!source) { + const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`; + throw new ReferenceError(msg); + } + let data = anchors.get(source); + if (!data) { + // Resolve anchors for Node.prototype.toJS() + toJS(source, null, ctx); + data = anchors.get(source); + } + /* istanbul ignore if */ + if (!data || data.res === undefined) { + const msg = 'This should not happen: Alias anchor was not resolved?'; + throw new ReferenceError(msg); + } + if (maxAliasCount >= 0) { + data.count += 1; + if (data.aliasCount === 0) + data.aliasCount = getAliasCount(doc, source, anchors); + if (data.count * data.aliasCount > maxAliasCount) { + const msg = 'Excessive alias count indicates a resource exhaustion attack'; + throw new ReferenceError(msg); + } + } + return data.res; + } + toString(ctx, _onComment, _onChompKeep) { + const src = `*${this.source}`; + if (ctx) { + anchorIsValid(this.source); + if (ctx.options.verifyAliasOrder && !ctx.anchors.has(this.source)) { + const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`; + throw new Error(msg); + } + if (ctx.implicitKey) + return `${src} `; + } + return src; + } +} +function getAliasCount(doc, node, anchors) { + if (isAlias(node)) { + const source = node.resolve(doc); + const anchor = anchors && source && anchors.get(source); + return anchor ? anchor.count * anchor.aliasCount : 0; + } + else if (isCollection(node)) { + let count = 0; + for (const item of node.items) { + const c = getAliasCount(doc, item, anchors); + if (c > count) + count = c; + } + return count; + } + else if (isPair(node)) { + const kc = getAliasCount(doc, node.key, anchors); + const vc = getAliasCount(doc, node.value, anchors); + return Math.max(kc, vc); + } + return 1; +} + +export { Alias }; diff --git a/node_modules/yaml/browser/dist/nodes/Collection.js b/node_modules/yaml/browser/dist/nodes/Collection.js new file mode 100644 index 0000000..0ebdeda --- /dev/null +++ b/node_modules/yaml/browser/dist/nodes/Collection.js @@ -0,0 +1,147 @@ +import { createNode } from '../doc/createNode.js'; +import { isNode, isPair, isCollection, isScalar } from './identity.js'; +import { NodeBase } from './Node.js'; + +function collectionFromPath(schema, path, value) { + let v = value; + for (let i = path.length - 1; i >= 0; --i) { + const k = path[i]; + if (typeof k === 'number' && Number.isInteger(k) && k >= 0) { + const a = []; + a[k] = v; + v = a; + } + else { + v = new Map([[k, v]]); + } + } + return createNode(v, undefined, { + aliasDuplicateObjects: false, + keepUndefined: false, + onAnchor: () => { + throw new Error('This should not happen, please report a bug.'); + }, + schema, + sourceObjects: new Map() + }); +} +// Type guard is intentionally a little wrong so as to be more useful, +// as it does not cover untypable empty non-string iterables (e.g. []). +const isEmptyPath = (path) => path == null || + (typeof path === 'object' && !!path[Symbol.iterator]().next().done); +class Collection extends NodeBase { + constructor(type, schema) { + super(type); + Object.defineProperty(this, 'schema', { + value: schema, + configurable: true, + enumerable: false, + writable: true + }); + } + /** + * Create a copy of this collection. + * + * @param schema - If defined, overwrites the original's schema + */ + clone(schema) { + const copy = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this)); + if (schema) + copy.schema = schema; + copy.items = copy.items.map(it => isNode(it) || isPair(it) ? it.clone(schema) : it); + if (this.range) + copy.range = this.range.slice(); + return copy; + } + /** + * Adds a value to the collection. For `!!map` and `!!omap` the value must + * be a Pair instance or a `{ key, value }` object, which may not have a key + * that already exists in the map. + */ + addIn(path, value) { + if (isEmptyPath(path)) + this.add(value); + else { + const [key, ...rest] = path; + const node = this.get(key, true); + if (isCollection(node)) + node.addIn(rest, value); + else if (node === undefined && this.schema) + this.set(key, collectionFromPath(this.schema, rest, value)); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + } + /** + * Removes a value from the collection. + * @returns `true` if the item was found and removed. + */ + deleteIn(path) { + const [key, ...rest] = path; + if (rest.length === 0) + return this.delete(key); + const node = this.get(key, true); + if (isCollection(node)) + return node.deleteIn(rest); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + /** + * Returns item at `key`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + */ + getIn(path, keepScalar) { + const [key, ...rest] = path; + const node = this.get(key, true); + if (rest.length === 0) + return !keepScalar && isScalar(node) ? node.value : node; + else + return isCollection(node) ? node.getIn(rest, keepScalar) : undefined; + } + hasAllNullValues(allowScalar) { + return this.items.every(node => { + if (!isPair(node)) + return false; + const n = node.value; + return (n == null || + (allowScalar && + isScalar(n) && + n.value == null && + !n.commentBefore && + !n.comment && + !n.tag)); + }); + } + /** + * Checks if the collection includes a value with the key `key`. + */ + hasIn(path) { + const [key, ...rest] = path; + if (rest.length === 0) + return this.has(key); + const node = this.get(key, true); + return isCollection(node) ? node.hasIn(rest) : false; + } + /** + * Sets a value in this collection. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + */ + setIn(path, value) { + const [key, ...rest] = path; + if (rest.length === 0) { + this.set(key, value); + } + else { + const node = this.get(key, true); + if (isCollection(node)) + node.setIn(rest, value); + else if (node === undefined && this.schema) + this.set(key, collectionFromPath(this.schema, rest, value)); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + } +} + +export { Collection, collectionFromPath, isEmptyPath }; diff --git a/node_modules/yaml/browser/dist/nodes/Node.js b/node_modules/yaml/browser/dist/nodes/Node.js new file mode 100644 index 0000000..b0eb96b --- /dev/null +++ b/node_modules/yaml/browser/dist/nodes/Node.js @@ -0,0 +1,38 @@ +import { applyReviver } from '../doc/applyReviver.js'; +import { NODE_TYPE, isDocument } from './identity.js'; +import { toJS } from './toJS.js'; + +class NodeBase { + constructor(type) { + Object.defineProperty(this, NODE_TYPE, { value: type }); + } + /** Create a copy of this node. */ + clone() { + const copy = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this)); + if (this.range) + copy.range = this.range.slice(); + return copy; + } + /** A plain JavaScript representation of this node. */ + toJS(doc, { mapAsMap, maxAliasCount, onAnchor, reviver } = {}) { + if (!isDocument(doc)) + throw new TypeError('A document argument is required'); + const ctx = { + anchors: new Map(), + doc, + keep: true, + mapAsMap: mapAsMap === true, + mapKeyWarned: false, + maxAliasCount: typeof maxAliasCount === 'number' ? maxAliasCount : 100 + }; + const res = toJS(this, '', ctx); + if (typeof onAnchor === 'function') + for (const { count, res } of ctx.anchors.values()) + onAnchor(res, count); + return typeof reviver === 'function' + ? applyReviver(reviver, { '': res }, '', res) + : res; + } +} + +export { NodeBase }; diff --git a/node_modules/yaml/browser/dist/nodes/Pair.js b/node_modules/yaml/browser/dist/nodes/Pair.js new file mode 100644 index 0000000..6e419f6 --- /dev/null +++ b/node_modules/yaml/browser/dist/nodes/Pair.js @@ -0,0 +1,36 @@ +import { createNode } from '../doc/createNode.js'; +import { stringifyPair } from '../stringify/stringifyPair.js'; +import { addPairToJSMap } from './addPairToJSMap.js'; +import { NODE_TYPE, PAIR, isNode } from './identity.js'; + +function createPair(key, value, ctx) { + const k = createNode(key, undefined, ctx); + const v = createNode(value, undefined, ctx); + return new Pair(k, v); +} +class Pair { + constructor(key, value = null) { + Object.defineProperty(this, NODE_TYPE, { value: PAIR }); + this.key = key; + this.value = value; + } + clone(schema) { + let { key, value } = this; + if (isNode(key)) + key = key.clone(schema); + if (isNode(value)) + value = value.clone(schema); + return new Pair(key, value); + } + toJSON(_, ctx) { + const pair = ctx?.mapAsMap ? new Map() : {}; + return addPairToJSMap(ctx, pair, this); + } + toString(ctx, onComment, onChompKeep) { + return ctx?.doc + ? stringifyPair(this, ctx, onComment, onChompKeep) + : JSON.stringify(this); + } +} + +export { Pair, createPair }; diff --git a/node_modules/yaml/browser/dist/nodes/Scalar.js b/node_modules/yaml/browser/dist/nodes/Scalar.js new file mode 100644 index 0000000..a9f2673 --- /dev/null +++ b/node_modules/yaml/browser/dist/nodes/Scalar.js @@ -0,0 +1,24 @@ +import { SCALAR } from './identity.js'; +import { NodeBase } from './Node.js'; +import { toJS } from './toJS.js'; + +const isScalarValue = (value) => !value || (typeof value !== 'function' && typeof value !== 'object'); +class Scalar extends NodeBase { + constructor(value) { + super(SCALAR); + this.value = value; + } + toJSON(arg, ctx) { + return ctx?.keep ? this.value : toJS(this.value, arg, ctx); + } + toString() { + return String(this.value); + } +} +Scalar.BLOCK_FOLDED = 'BLOCK_FOLDED'; +Scalar.BLOCK_LITERAL = 'BLOCK_LITERAL'; +Scalar.PLAIN = 'PLAIN'; +Scalar.QUOTE_DOUBLE = 'QUOTE_DOUBLE'; +Scalar.QUOTE_SINGLE = 'QUOTE_SINGLE'; + +export { Scalar, isScalarValue }; diff --git a/node_modules/yaml/browser/dist/nodes/YAMLMap.js b/node_modules/yaml/browser/dist/nodes/YAMLMap.js new file mode 100644 index 0000000..6c6a504 --- /dev/null +++ b/node_modules/yaml/browser/dist/nodes/YAMLMap.js @@ -0,0 +1,144 @@ +import { stringifyCollection } from '../stringify/stringifyCollection.js'; +import { addPairToJSMap } from './addPairToJSMap.js'; +import { Collection } from './Collection.js'; +import { MAP, isPair, isScalar } from './identity.js'; +import { Pair, createPair } from './Pair.js'; +import { isScalarValue } from './Scalar.js'; + +function findPair(items, key) { + const k = isScalar(key) ? key.value : key; + for (const it of items) { + if (isPair(it)) { + if (it.key === key || it.key === k) + return it; + if (isScalar(it.key) && it.key.value === k) + return it; + } + } + return undefined; +} +class YAMLMap extends Collection { + static get tagName() { + return 'tag:yaml.org,2002:map'; + } + constructor(schema) { + super(MAP, schema); + this.items = []; + } + /** + * A generic collection parsing method that can be extended + * to other node classes that inherit from YAMLMap + */ + static from(schema, obj, ctx) { + const { keepUndefined, replacer } = ctx; + const map = new this(schema); + const add = (key, value) => { + if (typeof replacer === 'function') + value = replacer.call(obj, key, value); + else if (Array.isArray(replacer) && !replacer.includes(key)) + return; + if (value !== undefined || keepUndefined) + map.items.push(createPair(key, value, ctx)); + }; + if (obj instanceof Map) { + for (const [key, value] of obj) + add(key, value); + } + else if (obj && typeof obj === 'object') { + for (const key of Object.keys(obj)) + add(key, obj[key]); + } + if (typeof schema.sortMapEntries === 'function') { + map.items.sort(schema.sortMapEntries); + } + return map; + } + /** + * Adds a value to the collection. + * + * @param overwrite - If not set `true`, using a key that is already in the + * collection will throw. Otherwise, overwrites the previous value. + */ + add(pair, overwrite) { + let _pair; + if (isPair(pair)) + _pair = pair; + else if (!pair || typeof pair !== 'object' || !('key' in pair)) { + // In TypeScript, this never happens. + _pair = new Pair(pair, pair?.value); + } + else + _pair = new Pair(pair.key, pair.value); + const prev = findPair(this.items, _pair.key); + const sortEntries = this.schema?.sortMapEntries; + if (prev) { + if (!overwrite) + throw new Error(`Key ${_pair.key} already set`); + // For scalars, keep the old node & its comments and anchors + if (isScalar(prev.value) && isScalarValue(_pair.value)) + prev.value.value = _pair.value; + else + prev.value = _pair.value; + } + else if (sortEntries) { + const i = this.items.findIndex(item => sortEntries(_pair, item) < 0); + if (i === -1) + this.items.push(_pair); + else + this.items.splice(i, 0, _pair); + } + else { + this.items.push(_pair); + } + } + delete(key) { + const it = findPair(this.items, key); + if (!it) + return false; + const del = this.items.splice(this.items.indexOf(it), 1); + return del.length > 0; + } + get(key, keepScalar) { + const it = findPair(this.items, key); + const node = it?.value; + return (!keepScalar && isScalar(node) ? node.value : node) ?? undefined; + } + has(key) { + return !!findPair(this.items, key); + } + set(key, value) { + this.add(new Pair(key, value), true); + } + /** + * @param ctx - Conversion context, originally set in Document#toJS() + * @param {Class} Type - If set, forces the returned collection type + * @returns Instance of Type, Map, or Object + */ + toJSON(_, ctx, Type) { + const map = Type ? new Type() : ctx?.mapAsMap ? new Map() : {}; + if (ctx?.onCreate) + ctx.onCreate(map); + for (const item of this.items) + addPairToJSMap(ctx, map, item); + return map; + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + for (const item of this.items) { + if (!isPair(item)) + throw new Error(`Map items must all be pairs; found ${JSON.stringify(item)} instead`); + } + if (!ctx.allNullValues && this.hasAllNullValues(false)) + ctx = Object.assign({}, ctx, { allNullValues: true }); + return stringifyCollection(this, ctx, { + blockItemPrefix: '', + flowChars: { start: '{', end: '}' }, + itemIndent: ctx.indent || '', + onChompKeep, + onComment + }); + } +} + +export { YAMLMap, findPair }; diff --git a/node_modules/yaml/browser/dist/nodes/YAMLSeq.js b/node_modules/yaml/browser/dist/nodes/YAMLSeq.js new file mode 100644 index 0000000..b80de40 --- /dev/null +++ b/node_modules/yaml/browser/dist/nodes/YAMLSeq.js @@ -0,0 +1,113 @@ +import { createNode } from '../doc/createNode.js'; +import { stringifyCollection } from '../stringify/stringifyCollection.js'; +import { Collection } from './Collection.js'; +import { SEQ, isScalar } from './identity.js'; +import { isScalarValue } from './Scalar.js'; +import { toJS } from './toJS.js'; + +class YAMLSeq extends Collection { + static get tagName() { + return 'tag:yaml.org,2002:seq'; + } + constructor(schema) { + super(SEQ, schema); + this.items = []; + } + add(value) { + this.items.push(value); + } + /** + * Removes a value from the collection. + * + * `key` must contain a representation of an integer for this to succeed. + * It may be wrapped in a `Scalar`. + * + * @returns `true` if the item was found and removed. + */ + delete(key) { + const idx = asItemIndex(key); + if (typeof idx !== 'number') + return false; + const del = this.items.splice(idx, 1); + return del.length > 0; + } + get(key, keepScalar) { + const idx = asItemIndex(key); + if (typeof idx !== 'number') + return undefined; + const it = this.items[idx]; + return !keepScalar && isScalar(it) ? it.value : it; + } + /** + * Checks if the collection includes a value with the key `key`. + * + * `key` must contain a representation of an integer for this to succeed. + * It may be wrapped in a `Scalar`. + */ + has(key) { + const idx = asItemIndex(key); + return typeof idx === 'number' && idx < this.items.length; + } + /** + * Sets a value in this collection. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + * + * If `key` does not contain a representation of an integer, this will throw. + * It may be wrapped in a `Scalar`. + */ + set(key, value) { + const idx = asItemIndex(key); + if (typeof idx !== 'number') + throw new Error(`Expected a valid index, not ${key}.`); + const prev = this.items[idx]; + if (isScalar(prev) && isScalarValue(value)) + prev.value = value; + else + this.items[idx] = value; + } + toJSON(_, ctx) { + const seq = []; + if (ctx?.onCreate) + ctx.onCreate(seq); + let i = 0; + for (const item of this.items) + seq.push(toJS(item, String(i++), ctx)); + return seq; + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + return stringifyCollection(this, ctx, { + blockItemPrefix: '- ', + flowChars: { start: '[', end: ']' }, + itemIndent: (ctx.indent || '') + ' ', + onChompKeep, + onComment + }); + } + static from(schema, obj, ctx) { + const { replacer } = ctx; + const seq = new this(schema); + if (obj && Symbol.iterator in Object(obj)) { + let i = 0; + for (let it of obj) { + if (typeof replacer === 'function') { + const key = obj instanceof Set ? it : String(i++); + it = replacer.call(obj, key, it); + } + seq.items.push(createNode(it, undefined, ctx)); + } + } + return seq; + } +} +function asItemIndex(key) { + let idx = isScalar(key) ? key.value : key; + if (idx && typeof idx === 'string') + idx = Number(idx); + return typeof idx === 'number' && Number.isInteger(idx) && idx >= 0 + ? idx + : null; +} + +export { YAMLSeq }; diff --git a/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js b/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js new file mode 100644 index 0000000..8e671cb --- /dev/null +++ b/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js @@ -0,0 +1,63 @@ +import { warn } from '../log.js'; +import { isMergeKey, addMergeToJSMap } from '../schema/yaml-1.1/merge.js'; +import { createStringifyContext } from '../stringify/stringify.js'; +import { isNode } from './identity.js'; +import { toJS } from './toJS.js'; + +function addPairToJSMap(ctx, map, { key, value }) { + if (isNode(key) && key.addToJSMap) + key.addToJSMap(ctx, map, value); + // TODO: Should drop this special case for bare << handling + else if (isMergeKey(ctx, key)) + addMergeToJSMap(ctx, map, value); + else { + const jsKey = toJS(key, '', ctx); + if (map instanceof Map) { + map.set(jsKey, toJS(value, jsKey, ctx)); + } + else if (map instanceof Set) { + map.add(jsKey); + } + else { + const stringKey = stringifyKey(key, jsKey, ctx); + const jsValue = toJS(value, stringKey, ctx); + if (stringKey in map) + Object.defineProperty(map, stringKey, { + value: jsValue, + writable: true, + enumerable: true, + configurable: true + }); + else + map[stringKey] = jsValue; + } + } + return map; +} +function stringifyKey(key, jsKey, ctx) { + if (jsKey === null) + return ''; + // eslint-disable-next-line @typescript-eslint/no-base-to-string + if (typeof jsKey !== 'object') + return String(jsKey); + if (isNode(key) && ctx?.doc) { + const strCtx = createStringifyContext(ctx.doc, {}); + strCtx.anchors = new Set(); + for (const node of ctx.anchors.keys()) + strCtx.anchors.add(node.anchor); + strCtx.inFlow = true; + strCtx.inStringifyKey = true; + const strKey = key.toString(strCtx); + if (!ctx.mapKeyWarned) { + let jsonStr = JSON.stringify(strKey); + if (jsonStr.length > 40) + jsonStr = jsonStr.substring(0, 36) + '..."'; + warn(ctx.doc.options.logLevel, `Keys with collection values will be stringified due to JS Object restrictions: ${jsonStr}. Set mapAsMap: true to use object keys.`); + ctx.mapKeyWarned = true; + } + return strKey; + } + return JSON.stringify(jsKey); +} + +export { addPairToJSMap }; diff --git a/node_modules/yaml/browser/dist/nodes/identity.js b/node_modules/yaml/browser/dist/nodes/identity.js new file mode 100644 index 0000000..7b79920 --- /dev/null +++ b/node_modules/yaml/browser/dist/nodes/identity.js @@ -0,0 +1,36 @@ +const ALIAS = Symbol.for('yaml.alias'); +const DOC = Symbol.for('yaml.document'); +const MAP = Symbol.for('yaml.map'); +const PAIR = Symbol.for('yaml.pair'); +const SCALAR = Symbol.for('yaml.scalar'); +const SEQ = Symbol.for('yaml.seq'); +const NODE_TYPE = Symbol.for('yaml.node.type'); +const isAlias = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === ALIAS; +const isDocument = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === DOC; +const isMap = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === MAP; +const isPair = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === PAIR; +const isScalar = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === SCALAR; +const isSeq = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === SEQ; +function isCollection(node) { + if (node && typeof node === 'object') + switch (node[NODE_TYPE]) { + case MAP: + case SEQ: + return true; + } + return false; +} +function isNode(node) { + if (node && typeof node === 'object') + switch (node[NODE_TYPE]) { + case ALIAS: + case MAP: + case SCALAR: + case SEQ: + return true; + } + return false; +} +const hasAnchor = (node) => (isScalar(node) || isCollection(node)) && !!node.anchor; + +export { ALIAS, DOC, MAP, NODE_TYPE, PAIR, SCALAR, SEQ, hasAnchor, isAlias, isCollection, isDocument, isMap, isNode, isPair, isScalar, isSeq }; diff --git a/node_modules/yaml/browser/dist/nodes/toJS.js b/node_modules/yaml/browser/dist/nodes/toJS.js new file mode 100644 index 0000000..0ca6250 --- /dev/null +++ b/node_modules/yaml/browser/dist/nodes/toJS.js @@ -0,0 +1,37 @@ +import { hasAnchor } from './identity.js'; + +/** + * Recursively convert any node or its contents to native JavaScript + * + * @param value - The input value + * @param arg - If `value` defines a `toJSON()` method, use this + * as its first argument + * @param ctx - Conversion context, originally set in Document#toJS(). If + * `{ keep: true }` is not set, output should be suitable for JSON + * stringification. + */ +function toJS(value, arg, ctx) { + // eslint-disable-next-line @typescript-eslint/no-unsafe-return + if (Array.isArray(value)) + return value.map((v, i) => toJS(v, String(i), ctx)); + if (value && typeof value.toJSON === 'function') { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call + if (!ctx || !hasAnchor(value)) + return value.toJSON(arg, ctx); + const data = { aliasCount: 0, count: 1, res: undefined }; + ctx.anchors.set(value, data); + ctx.onCreate = res => { + data.res = res; + delete ctx.onCreate; + }; + const res = value.toJSON(arg, ctx); + if (ctx.onCreate) + ctx.onCreate(res); + return res; + } + if (typeof value === 'bigint' && !ctx?.keep) + return Number(value); + return value; +} + +export { toJS }; diff --git a/node_modules/yaml/browser/dist/parse/cst-scalar.js b/node_modules/yaml/browser/dist/parse/cst-scalar.js new file mode 100644 index 0000000..29ab354 --- /dev/null +++ b/node_modules/yaml/browser/dist/parse/cst-scalar.js @@ -0,0 +1,214 @@ +import { resolveBlockScalar } from '../compose/resolve-block-scalar.js'; +import { resolveFlowScalar } from '../compose/resolve-flow-scalar.js'; +import { YAMLParseError } from '../errors.js'; +import { stringifyString } from '../stringify/stringifyString.js'; + +function resolveAsScalar(token, strict = true, onError) { + if (token) { + const _onError = (pos, code, message) => { + const offset = typeof pos === 'number' ? pos : Array.isArray(pos) ? pos[0] : pos.offset; + if (onError) + onError(offset, code, message); + else + throw new YAMLParseError([offset, offset + 1], code, message); + }; + switch (token.type) { + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': + return resolveFlowScalar(token, strict, _onError); + case 'block-scalar': + return resolveBlockScalar({ options: { strict } }, token, _onError); + } + } + return null; +} +/** + * Create a new scalar token with `value` + * + * Values that represent an actual string but may be parsed as a different type should use a `type` other than `'PLAIN'`, + * as this function does not support any schema operations and won't check for such conflicts. + * + * @param value The string representation of the value, which will have its content properly indented. + * @param context.end Comments and whitespace after the end of the value, or after the block scalar header. If undefined, a newline will be added. + * @param context.implicitKey Being within an implicit key may affect the resolved type of the token's value. + * @param context.indent The indent level of the token. + * @param context.inFlow Is this scalar within a flow collection? This may affect the resolved type of the token's value. + * @param context.offset The offset position of the token. + * @param context.type The preferred type of the scalar token. If undefined, the previous type of the `token` will be used, defaulting to `'PLAIN'`. + */ +function createScalarToken(value, context) { + const { implicitKey = false, indent, inFlow = false, offset = -1, type = 'PLAIN' } = context; + const source = stringifyString({ type, value }, { + implicitKey, + indent: indent > 0 ? ' '.repeat(indent) : '', + inFlow, + options: { blockQuote: true, lineWidth: -1 } + }); + const end = context.end ?? [ + { type: 'newline', offset: -1, indent, source: '\n' } + ]; + switch (source[0]) { + case '|': + case '>': { + const he = source.indexOf('\n'); + const head = source.substring(0, he); + const body = source.substring(he + 1) + '\n'; + const props = [ + { type: 'block-scalar-header', offset, indent, source: head } + ]; + if (!addEndtoBlockProps(props, end)) + props.push({ type: 'newline', offset: -1, indent, source: '\n' }); + return { type: 'block-scalar', offset, indent, props, source: body }; + } + case '"': + return { type: 'double-quoted-scalar', offset, indent, source, end }; + case "'": + return { type: 'single-quoted-scalar', offset, indent, source, end }; + default: + return { type: 'scalar', offset, indent, source, end }; + } +} +/** + * Set the value of `token` to the given string `value`, overwriting any previous contents and type that it may have. + * + * Best efforts are made to retain any comments previously associated with the `token`, + * though all contents within a collection's `items` will be overwritten. + * + * Values that represent an actual string but may be parsed as a different type should use a `type` other than `'PLAIN'`, + * as this function does not support any schema operations and won't check for such conflicts. + * + * @param token Any token. If it does not include an `indent` value, the value will be stringified as if it were an implicit key. + * @param value The string representation of the value, which will have its content properly indented. + * @param context.afterKey In most cases, values after a key should have an additional level of indentation. + * @param context.implicitKey Being within an implicit key may affect the resolved type of the token's value. + * @param context.inFlow Being within a flow collection may affect the resolved type of the token's value. + * @param context.type The preferred type of the scalar token. If undefined, the previous type of the `token` will be used, defaulting to `'PLAIN'`. + */ +function setScalarValue(token, value, context = {}) { + let { afterKey = false, implicitKey = false, inFlow = false, type } = context; + let indent = 'indent' in token ? token.indent : null; + if (afterKey && typeof indent === 'number') + indent += 2; + if (!type) + switch (token.type) { + case 'single-quoted-scalar': + type = 'QUOTE_SINGLE'; + break; + case 'double-quoted-scalar': + type = 'QUOTE_DOUBLE'; + break; + case 'block-scalar': { + const header = token.props[0]; + if (header.type !== 'block-scalar-header') + throw new Error('Invalid block scalar header'); + type = header.source[0] === '>' ? 'BLOCK_FOLDED' : 'BLOCK_LITERAL'; + break; + } + default: + type = 'PLAIN'; + } + const source = stringifyString({ type, value }, { + implicitKey: implicitKey || indent === null, + indent: indent !== null && indent > 0 ? ' '.repeat(indent) : '', + inFlow, + options: { blockQuote: true, lineWidth: -1 } + }); + switch (source[0]) { + case '|': + case '>': + setBlockScalarValue(token, source); + break; + case '"': + setFlowScalarValue(token, source, 'double-quoted-scalar'); + break; + case "'": + setFlowScalarValue(token, source, 'single-quoted-scalar'); + break; + default: + setFlowScalarValue(token, source, 'scalar'); + } +} +function setBlockScalarValue(token, source) { + const he = source.indexOf('\n'); + const head = source.substring(0, he); + const body = source.substring(he + 1) + '\n'; + if (token.type === 'block-scalar') { + const header = token.props[0]; + if (header.type !== 'block-scalar-header') + throw new Error('Invalid block scalar header'); + header.source = head; + token.source = body; + } + else { + const { offset } = token; + const indent = 'indent' in token ? token.indent : -1; + const props = [ + { type: 'block-scalar-header', offset, indent, source: head } + ]; + if (!addEndtoBlockProps(props, 'end' in token ? token.end : undefined)) + props.push({ type: 'newline', offset: -1, indent, source: '\n' }); + for (const key of Object.keys(token)) + if (key !== 'type' && key !== 'offset') + delete token[key]; + Object.assign(token, { type: 'block-scalar', indent, props, source: body }); + } +} +/** @returns `true` if last token is a newline */ +function addEndtoBlockProps(props, end) { + if (end) + for (const st of end) + switch (st.type) { + case 'space': + case 'comment': + props.push(st); + break; + case 'newline': + props.push(st); + return true; + } + return false; +} +function setFlowScalarValue(token, source, type) { + switch (token.type) { + case 'scalar': + case 'double-quoted-scalar': + case 'single-quoted-scalar': + token.type = type; + token.source = source; + break; + case 'block-scalar': { + const end = token.props.slice(1); + let oa = source.length; + if (token.props[0].type === 'block-scalar-header') + oa -= token.props[0].source.length; + for (const tok of end) + tok.offset += oa; + delete token.props; + Object.assign(token, { type, source, end }); + break; + } + case 'block-map': + case 'block-seq': { + const offset = token.offset + source.length; + const nl = { type: 'newline', offset, indent: token.indent, source: '\n' }; + delete token.items; + Object.assign(token, { type, source, end: [nl] }); + break; + } + default: { + const indent = 'indent' in token ? token.indent : -1; + const end = 'end' in token && Array.isArray(token.end) + ? token.end.filter(st => st.type === 'space' || + st.type === 'comment' || + st.type === 'newline') + : []; + for (const key of Object.keys(token)) + if (key !== 'type' && key !== 'offset') + delete token[key]; + Object.assign(token, { type, indent, source, end }); + } + } +} + +export { createScalarToken, resolveAsScalar, setScalarValue }; diff --git a/node_modules/yaml/browser/dist/parse/cst-stringify.js b/node_modules/yaml/browser/dist/parse/cst-stringify.js new file mode 100644 index 0000000..d6ab58c --- /dev/null +++ b/node_modules/yaml/browser/dist/parse/cst-stringify.js @@ -0,0 +1,61 @@ +/** + * Stringify a CST document, token, or collection item + * + * Fair warning: This applies no validation whatsoever, and + * simply concatenates the sources in their logical order. + */ +const stringify = (cst) => 'type' in cst ? stringifyToken(cst) : stringifyItem(cst); +function stringifyToken(token) { + switch (token.type) { + case 'block-scalar': { + let res = ''; + for (const tok of token.props) + res += stringifyToken(tok); + return res + token.source; + } + case 'block-map': + case 'block-seq': { + let res = ''; + for (const item of token.items) + res += stringifyItem(item); + return res; + } + case 'flow-collection': { + let res = token.start.source; + for (const item of token.items) + res += stringifyItem(item); + for (const st of token.end) + res += st.source; + return res; + } + case 'document': { + let res = stringifyItem(token); + if (token.end) + for (const st of token.end) + res += st.source; + return res; + } + default: { + let res = token.source; + if ('end' in token && token.end) + for (const st of token.end) + res += st.source; + return res; + } + } +} +function stringifyItem({ start, key, sep, value }) { + let res = ''; + for (const st of start) + res += st.source; + if (key) + res += stringifyToken(key); + if (sep) + for (const st of sep) + res += st.source; + if (value) + res += stringifyToken(value); + return res; +} + +export { stringify }; diff --git a/node_modules/yaml/browser/dist/parse/cst-visit.js b/node_modules/yaml/browser/dist/parse/cst-visit.js new file mode 100644 index 0000000..deca086 --- /dev/null +++ b/node_modules/yaml/browser/dist/parse/cst-visit.js @@ -0,0 +1,97 @@ +const BREAK = Symbol('break visit'); +const SKIP = Symbol('skip children'); +const REMOVE = Symbol('remove item'); +/** + * Apply a visitor to a CST document or item. + * + * Walks through the tree (depth-first) starting from the root, calling a + * `visitor` function with two arguments when entering each item: + * - `item`: The current item, which included the following members: + * - `start: SourceToken[]` – Source tokens before the key or value, + * possibly including its anchor or tag. + * - `key?: Token | null` – Set for pair values. May then be `null`, if + * the key before the `:` separator is empty. + * - `sep?: SourceToken[]` – Source tokens between the key and the value, + * which should include the `:` map value indicator if `value` is set. + * - `value?: Token` – The value of a sequence item, or of a map pair. + * - `path`: The steps from the root to the current node, as an array of + * `['key' | 'value', number]` tuples. + * + * The return value of the visitor may be used to control the traversal: + * - `undefined` (default): Do nothing and continue + * - `visit.SKIP`: Do not visit the children of this token, continue with + * next sibling + * - `visit.BREAK`: Terminate traversal completely + * - `visit.REMOVE`: Remove the current item, then continue with the next one + * - `number`: Set the index of the next step. This is useful especially if + * the index of the current token has changed. + * - `function`: Define the next visitor for this item. After the original + * visitor is called on item entry, next visitors are called after handling + * a non-empty `key` and when exiting the item. + */ +function visit(cst, visitor) { + if ('type' in cst && cst.type === 'document') + cst = { start: cst.start, value: cst.value }; + _visit(Object.freeze([]), cst, visitor); +} +// Without the `as symbol` casts, TS declares these in the `visit` +// namespace using `var`, but then complains about that because +// `unique symbol` must be `const`. +/** Terminate visit traversal completely */ +visit.BREAK = BREAK; +/** Do not visit the children of the current item */ +visit.SKIP = SKIP; +/** Remove the current item */ +visit.REMOVE = REMOVE; +/** Find the item at `path` from `cst` as the root */ +visit.itemAtPath = (cst, path) => { + let item = cst; + for (const [field, index] of path) { + const tok = item?.[field]; + if (tok && 'items' in tok) { + item = tok.items[index]; + } + else + return undefined; + } + return item; +}; +/** + * Get the immediate parent collection of the item at `path` from `cst` as the root. + * + * Throws an error if the collection is not found, which should never happen if the item itself exists. + */ +visit.parentCollection = (cst, path) => { + const parent = visit.itemAtPath(cst, path.slice(0, -1)); + const field = path[path.length - 1][0]; + const coll = parent?.[field]; + if (coll && 'items' in coll) + return coll; + throw new Error('Parent collection not found'); +}; +function _visit(path, item, visitor) { + let ctrl = visitor(item, path); + if (typeof ctrl === 'symbol') + return ctrl; + for (const field of ['key', 'value']) { + const token = item[field]; + if (token && 'items' in token) { + for (let i = 0; i < token.items.length; ++i) { + const ci = _visit(Object.freeze(path.concat([[field, i]])), token.items[i], visitor); + if (typeof ci === 'number') + i = ci - 1; + else if (ci === BREAK) + return BREAK; + else if (ci === REMOVE) { + token.items.splice(i, 1); + i -= 1; + } + } + if (typeof ctrl === 'function' && field === 'key') + ctrl = ctrl(item, path); + } + } + return typeof ctrl === 'function' ? ctrl(item, path) : ctrl; +} + +export { visit }; diff --git a/node_modules/yaml/browser/dist/parse/cst.js b/node_modules/yaml/browser/dist/parse/cst.js new file mode 100644 index 0000000..8bb2f4a --- /dev/null +++ b/node_modules/yaml/browser/dist/parse/cst.js @@ -0,0 +1,98 @@ +export { createScalarToken, resolveAsScalar, setScalarValue } from './cst-scalar.js'; +export { stringify } from './cst-stringify.js'; +export { visit } from './cst-visit.js'; + +/** The byte order mark */ +const BOM = '\u{FEFF}'; +/** Start of doc-mode */ +const DOCUMENT = '\x02'; // C0: Start of Text +/** Unexpected end of flow-mode */ +const FLOW_END = '\x18'; // C0: Cancel +/** Next token is a scalar value */ +const SCALAR = '\x1f'; // C0: Unit Separator +/** @returns `true` if `token` is a flow or block collection */ +const isCollection = (token) => !!token && 'items' in token; +/** @returns `true` if `token` is a flow or block scalar; not an alias */ +const isScalar = (token) => !!token && + (token.type === 'scalar' || + token.type === 'single-quoted-scalar' || + token.type === 'double-quoted-scalar' || + token.type === 'block-scalar'); +/* istanbul ignore next */ +/** Get a printable representation of a lexer token */ +function prettyToken(token) { + switch (token) { + case BOM: + return ''; + case DOCUMENT: + return ''; + case FLOW_END: + return ''; + case SCALAR: + return ''; + default: + return JSON.stringify(token); + } +} +/** Identify the type of a lexer token. May return `null` for unknown tokens. */ +function tokenType(source) { + switch (source) { + case BOM: + return 'byte-order-mark'; + case DOCUMENT: + return 'doc-mode'; + case FLOW_END: + return 'flow-error-end'; + case SCALAR: + return 'scalar'; + case '---': + return 'doc-start'; + case '...': + return 'doc-end'; + case '': + case '\n': + case '\r\n': + return 'newline'; + case '-': + return 'seq-item-ind'; + case '?': + return 'explicit-key-ind'; + case ':': + return 'map-value-ind'; + case '{': + return 'flow-map-start'; + case '}': + return 'flow-map-end'; + case '[': + return 'flow-seq-start'; + case ']': + return 'flow-seq-end'; + case ',': + return 'comma'; + } + switch (source[0]) { + case ' ': + case '\t': + return 'space'; + case '#': + return 'comment'; + case '%': + return 'directive-line'; + case '*': + return 'alias'; + case '&': + return 'anchor'; + case '!': + return 'tag'; + case "'": + return 'single-quoted-scalar'; + case '"': + return 'double-quoted-scalar'; + case '|': + case '>': + return 'block-scalar-header'; + } + return null; +} + +export { BOM, DOCUMENT, FLOW_END, SCALAR, isCollection, isScalar, prettyToken, tokenType }; diff --git a/node_modules/yaml/browser/dist/parse/lexer.js b/node_modules/yaml/browser/dist/parse/lexer.js new file mode 100644 index 0000000..fbab236 --- /dev/null +++ b/node_modules/yaml/browser/dist/parse/lexer.js @@ -0,0 +1,717 @@ +import { BOM, DOCUMENT, FLOW_END, SCALAR } from './cst.js'; + +/* +START -> stream + +stream + directive -> line-end -> stream + indent + line-end -> stream + [else] -> line-start + +line-end + comment -> line-end + newline -> . + input-end -> END + +line-start + doc-start -> doc + doc-end -> stream + [else] -> indent -> block-start + +block-start + seq-item-start -> block-start + explicit-key-start -> block-start + map-value-start -> block-start + [else] -> doc + +doc + line-end -> line-start + spaces -> doc + anchor -> doc + tag -> doc + flow-start -> flow -> doc + flow-end -> error -> doc + seq-item-start -> error -> doc + explicit-key-start -> error -> doc + map-value-start -> doc + alias -> doc + quote-start -> quoted-scalar -> doc + block-scalar-header -> line-end -> block-scalar(min) -> line-start + [else] -> plain-scalar(false, min) -> doc + +flow + line-end -> flow + spaces -> flow + anchor -> flow + tag -> flow + flow-start -> flow -> flow + flow-end -> . + seq-item-start -> error -> flow + explicit-key-start -> flow + map-value-start -> flow + alias -> flow + quote-start -> quoted-scalar -> flow + comma -> flow + [else] -> plain-scalar(true, 0) -> flow + +quoted-scalar + quote-end -> . + [else] -> quoted-scalar + +block-scalar(min) + newline + peek(indent < min) -> . + [else] -> block-scalar(min) + +plain-scalar(is-flow, min) + scalar-end(is-flow) -> . + peek(newline + (indent < min)) -> . + [else] -> plain-scalar(min) +*/ +function isEmpty(ch) { + switch (ch) { + case undefined: + case ' ': + case '\n': + case '\r': + case '\t': + return true; + default: + return false; + } +} +const hexDigits = new Set('0123456789ABCDEFabcdef'); +const tagChars = new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"); +const flowIndicatorChars = new Set(',[]{}'); +const invalidAnchorChars = new Set(' ,[]{}\n\r\t'); +const isNotAnchorChar = (ch) => !ch || invalidAnchorChars.has(ch); +/** + * Splits an input string into lexical tokens, i.e. smaller strings that are + * easily identifiable by `tokens.tokenType()`. + * + * Lexing starts always in a "stream" context. Incomplete input may be buffered + * until a complete token can be emitted. + * + * In addition to slices of the original input, the following control characters + * may also be emitted: + * + * - `\x02` (Start of Text): A document starts with the next token + * - `\x18` (Cancel): Unexpected end of flow-mode (indicates an error) + * - `\x1f` (Unit Separator): Next token is a scalar value + * - `\u{FEFF}` (Byte order mark): Emitted separately outside documents + */ +class Lexer { + constructor() { + /** + * Flag indicating whether the end of the current buffer marks the end of + * all input + */ + this.atEnd = false; + /** + * Explicit indent set in block scalar header, as an offset from the current + * minimum indent, so e.g. set to 1 from a header `|2+`. Set to -1 if not + * explicitly set. + */ + this.blockScalarIndent = -1; + /** + * Block scalars that include a + (keep) chomping indicator in their header + * include trailing empty lines, which are otherwise excluded from the + * scalar's contents. + */ + this.blockScalarKeep = false; + /** Current input */ + this.buffer = ''; + /** + * Flag noting whether the map value indicator : can immediately follow this + * node within a flow context. + */ + this.flowKey = false; + /** Count of surrounding flow collection levels. */ + this.flowLevel = 0; + /** + * Minimum level of indentation required for next lines to be parsed as a + * part of the current scalar value. + */ + this.indentNext = 0; + /** Indentation level of the current line. */ + this.indentValue = 0; + /** Position of the next \n character. */ + this.lineEndPos = null; + /** Stores the state of the lexer if reaching the end of incpomplete input */ + this.next = null; + /** A pointer to `buffer`; the current position of the lexer. */ + this.pos = 0; + } + /** + * Generate YAML tokens from the `source` string. If `incomplete`, + * a part of the last line may be left as a buffer for the next call. + * + * @returns A generator of lexical tokens + */ + *lex(source, incomplete = false) { + if (source) { + if (typeof source !== 'string') + throw TypeError('source is not a string'); + this.buffer = this.buffer ? this.buffer + source : source; + this.lineEndPos = null; + } + this.atEnd = !incomplete; + let next = this.next ?? 'stream'; + while (next && (incomplete || this.hasChars(1))) + next = yield* this.parseNext(next); + } + atLineEnd() { + let i = this.pos; + let ch = this.buffer[i]; + while (ch === ' ' || ch === '\t') + ch = this.buffer[++i]; + if (!ch || ch === '#' || ch === '\n') + return true; + if (ch === '\r') + return this.buffer[i + 1] === '\n'; + return false; + } + charAt(n) { + return this.buffer[this.pos + n]; + } + continueScalar(offset) { + let ch = this.buffer[offset]; + if (this.indentNext > 0) { + let indent = 0; + while (ch === ' ') + ch = this.buffer[++indent + offset]; + if (ch === '\r') { + const next = this.buffer[indent + offset + 1]; + if (next === '\n' || (!next && !this.atEnd)) + return offset + indent + 1; + } + return ch === '\n' || indent >= this.indentNext || (!ch && !this.atEnd) + ? offset + indent + : -1; + } + if (ch === '-' || ch === '.') { + const dt = this.buffer.substr(offset, 3); + if ((dt === '---' || dt === '...') && isEmpty(this.buffer[offset + 3])) + return -1; + } + return offset; + } + getLine() { + let end = this.lineEndPos; + if (typeof end !== 'number' || (end !== -1 && end < this.pos)) { + end = this.buffer.indexOf('\n', this.pos); + this.lineEndPos = end; + } + if (end === -1) + return this.atEnd ? this.buffer.substring(this.pos) : null; + if (this.buffer[end - 1] === '\r') + end -= 1; + return this.buffer.substring(this.pos, end); + } + hasChars(n) { + return this.pos + n <= this.buffer.length; + } + setNext(state) { + this.buffer = this.buffer.substring(this.pos); + this.pos = 0; + this.lineEndPos = null; + this.next = state; + return null; + } + peek(n) { + return this.buffer.substr(this.pos, n); + } + *parseNext(next) { + switch (next) { + case 'stream': + return yield* this.parseStream(); + case 'line-start': + return yield* this.parseLineStart(); + case 'block-start': + return yield* this.parseBlockStart(); + case 'doc': + return yield* this.parseDocument(); + case 'flow': + return yield* this.parseFlowCollection(); + case 'quoted-scalar': + return yield* this.parseQuotedScalar(); + case 'block-scalar': + return yield* this.parseBlockScalar(); + case 'plain-scalar': + return yield* this.parsePlainScalar(); + } + } + *parseStream() { + let line = this.getLine(); + if (line === null) + return this.setNext('stream'); + if (line[0] === BOM) { + yield* this.pushCount(1); + line = line.substring(1); + } + if (line[0] === '%') { + let dirEnd = line.length; + let cs = line.indexOf('#'); + while (cs !== -1) { + const ch = line[cs - 1]; + if (ch === ' ' || ch === '\t') { + dirEnd = cs - 1; + break; + } + else { + cs = line.indexOf('#', cs + 1); + } + } + while (true) { + const ch = line[dirEnd - 1]; + if (ch === ' ' || ch === '\t') + dirEnd -= 1; + else + break; + } + const n = (yield* this.pushCount(dirEnd)) + (yield* this.pushSpaces(true)); + yield* this.pushCount(line.length - n); // possible comment + this.pushNewline(); + return 'stream'; + } + if (this.atLineEnd()) { + const sp = yield* this.pushSpaces(true); + yield* this.pushCount(line.length - sp); + yield* this.pushNewline(); + return 'stream'; + } + yield DOCUMENT; + return yield* this.parseLineStart(); + } + *parseLineStart() { + const ch = this.charAt(0); + if (!ch && !this.atEnd) + return this.setNext('line-start'); + if (ch === '-' || ch === '.') { + if (!this.atEnd && !this.hasChars(4)) + return this.setNext('line-start'); + const s = this.peek(3); + if ((s === '---' || s === '...') && isEmpty(this.charAt(3))) { + yield* this.pushCount(3); + this.indentValue = 0; + this.indentNext = 0; + return s === '---' ? 'doc' : 'stream'; + } + } + this.indentValue = yield* this.pushSpaces(false); + if (this.indentNext > this.indentValue && !isEmpty(this.charAt(1))) + this.indentNext = this.indentValue; + return yield* this.parseBlockStart(); + } + *parseBlockStart() { + const [ch0, ch1] = this.peek(2); + if (!ch1 && !this.atEnd) + return this.setNext('block-start'); + if ((ch0 === '-' || ch0 === '?' || ch0 === ':') && isEmpty(ch1)) { + const n = (yield* this.pushCount(1)) + (yield* this.pushSpaces(true)); + this.indentNext = this.indentValue + 1; + this.indentValue += n; + return yield* this.parseBlockStart(); + } + return 'doc'; + } + *parseDocument() { + yield* this.pushSpaces(true); + const line = this.getLine(); + if (line === null) + return this.setNext('doc'); + let n = yield* this.pushIndicators(); + switch (line[n]) { + case '#': + yield* this.pushCount(line.length - n); + // fallthrough + case undefined: + yield* this.pushNewline(); + return yield* this.parseLineStart(); + case '{': + case '[': + yield* this.pushCount(1); + this.flowKey = false; + this.flowLevel = 1; + return 'flow'; + case '}': + case ']': + // this is an error + yield* this.pushCount(1); + return 'doc'; + case '*': + yield* this.pushUntil(isNotAnchorChar); + return 'doc'; + case '"': + case "'": + return yield* this.parseQuotedScalar(); + case '|': + case '>': + n += yield* this.parseBlockScalarHeader(); + n += yield* this.pushSpaces(true); + yield* this.pushCount(line.length - n); + yield* this.pushNewline(); + return yield* this.parseBlockScalar(); + default: + return yield* this.parsePlainScalar(); + } + } + *parseFlowCollection() { + let nl, sp; + let indent = -1; + do { + nl = yield* this.pushNewline(); + if (nl > 0) { + sp = yield* this.pushSpaces(false); + this.indentValue = indent = sp; + } + else { + sp = 0; + } + sp += yield* this.pushSpaces(true); + } while (nl + sp > 0); + const line = this.getLine(); + if (line === null) + return this.setNext('flow'); + if ((indent !== -1 && indent < this.indentNext && line[0] !== '#') || + (indent === 0 && + (line.startsWith('---') || line.startsWith('...')) && + isEmpty(line[3]))) { + // Allowing for the terminal ] or } at the same (rather than greater) + // indent level as the initial [ or { is technically invalid, but + // failing here would be surprising to users. + const atFlowEndMarker = indent === this.indentNext - 1 && + this.flowLevel === 1 && + (line[0] === ']' || line[0] === '}'); + if (!atFlowEndMarker) { + // this is an error + this.flowLevel = 0; + yield FLOW_END; + return yield* this.parseLineStart(); + } + } + let n = 0; + while (line[n] === ',') { + n += yield* this.pushCount(1); + n += yield* this.pushSpaces(true); + this.flowKey = false; + } + n += yield* this.pushIndicators(); + switch (line[n]) { + case undefined: + return 'flow'; + case '#': + yield* this.pushCount(line.length - n); + return 'flow'; + case '{': + case '[': + yield* this.pushCount(1); + this.flowKey = false; + this.flowLevel += 1; + return 'flow'; + case '}': + case ']': + yield* this.pushCount(1); + this.flowKey = true; + this.flowLevel -= 1; + return this.flowLevel ? 'flow' : 'doc'; + case '*': + yield* this.pushUntil(isNotAnchorChar); + return 'flow'; + case '"': + case "'": + this.flowKey = true; + return yield* this.parseQuotedScalar(); + case ':': { + const next = this.charAt(1); + if (this.flowKey || isEmpty(next) || next === ',') { + this.flowKey = false; + yield* this.pushCount(1); + yield* this.pushSpaces(true); + return 'flow'; + } + } + // fallthrough + default: + this.flowKey = false; + return yield* this.parsePlainScalar(); + } + } + *parseQuotedScalar() { + const quote = this.charAt(0); + let end = this.buffer.indexOf(quote, this.pos + 1); + if (quote === "'") { + while (end !== -1 && this.buffer[end + 1] === "'") + end = this.buffer.indexOf("'", end + 2); + } + else { + // double-quote + while (end !== -1) { + let n = 0; + while (this.buffer[end - 1 - n] === '\\') + n += 1; + if (n % 2 === 0) + break; + end = this.buffer.indexOf('"', end + 1); + } + } + // Only looking for newlines within the quotes + const qb = this.buffer.substring(0, end); + let nl = qb.indexOf('\n', this.pos); + if (nl !== -1) { + while (nl !== -1) { + const cs = this.continueScalar(nl + 1); + if (cs === -1) + break; + nl = qb.indexOf('\n', cs); + } + if (nl !== -1) { + // this is an error caused by an unexpected unindent + end = nl - (qb[nl - 1] === '\r' ? 2 : 1); + } + } + if (end === -1) { + if (!this.atEnd) + return this.setNext('quoted-scalar'); + end = this.buffer.length; + } + yield* this.pushToIndex(end + 1, false); + return this.flowLevel ? 'flow' : 'doc'; + } + *parseBlockScalarHeader() { + this.blockScalarIndent = -1; + this.blockScalarKeep = false; + let i = this.pos; + while (true) { + const ch = this.buffer[++i]; + if (ch === '+') + this.blockScalarKeep = true; + else if (ch > '0' && ch <= '9') + this.blockScalarIndent = Number(ch) - 1; + else if (ch !== '-') + break; + } + return yield* this.pushUntil(ch => isEmpty(ch) || ch === '#'); + } + *parseBlockScalar() { + let nl = this.pos - 1; // may be -1 if this.pos === 0 + let indent = 0; + let ch; + loop: for (let i = this.pos; (ch = this.buffer[i]); ++i) { + switch (ch) { + case ' ': + indent += 1; + break; + case '\n': + nl = i; + indent = 0; + break; + case '\r': { + const next = this.buffer[i + 1]; + if (!next && !this.atEnd) + return this.setNext('block-scalar'); + if (next === '\n') + break; + } // fallthrough + default: + break loop; + } + } + if (!ch && !this.atEnd) + return this.setNext('block-scalar'); + if (indent >= this.indentNext) { + if (this.blockScalarIndent === -1) + this.indentNext = indent; + else { + this.indentNext = + this.blockScalarIndent + (this.indentNext === 0 ? 1 : this.indentNext); + } + do { + const cs = this.continueScalar(nl + 1); + if (cs === -1) + break; + nl = this.buffer.indexOf('\n', cs); + } while (nl !== -1); + if (nl === -1) { + if (!this.atEnd) + return this.setNext('block-scalar'); + nl = this.buffer.length; + } + } + // Trailing insufficiently indented tabs are invalid. + // To catch that during parsing, we include them in the block scalar value. + let i = nl + 1; + ch = this.buffer[i]; + while (ch === ' ') + ch = this.buffer[++i]; + if (ch === '\t') { + while (ch === '\t' || ch === ' ' || ch === '\r' || ch === '\n') + ch = this.buffer[++i]; + nl = i - 1; + } + else if (!this.blockScalarKeep) { + do { + let i = nl - 1; + let ch = this.buffer[i]; + if (ch === '\r') + ch = this.buffer[--i]; + const lastChar = i; // Drop the line if last char not more indented + while (ch === ' ') + ch = this.buffer[--i]; + if (ch === '\n' && i >= this.pos && i + 1 + indent > lastChar) + nl = i; + else + break; + } while (true); + } + yield SCALAR; + yield* this.pushToIndex(nl + 1, true); + return yield* this.parseLineStart(); + } + *parsePlainScalar() { + const inFlow = this.flowLevel > 0; + let end = this.pos - 1; + let i = this.pos - 1; + let ch; + while ((ch = this.buffer[++i])) { + if (ch === ':') { + const next = this.buffer[i + 1]; + if (isEmpty(next) || (inFlow && flowIndicatorChars.has(next))) + break; + end = i; + } + else if (isEmpty(ch)) { + let next = this.buffer[i + 1]; + if (ch === '\r') { + if (next === '\n') { + i += 1; + ch = '\n'; + next = this.buffer[i + 1]; + } + else + end = i; + } + if (next === '#' || (inFlow && flowIndicatorChars.has(next))) + break; + if (ch === '\n') { + const cs = this.continueScalar(i + 1); + if (cs === -1) + break; + i = Math.max(i, cs - 2); // to advance, but still account for ' #' + } + } + else { + if (inFlow && flowIndicatorChars.has(ch)) + break; + end = i; + } + } + if (!ch && !this.atEnd) + return this.setNext('plain-scalar'); + yield SCALAR; + yield* this.pushToIndex(end + 1, true); + return inFlow ? 'flow' : 'doc'; + } + *pushCount(n) { + if (n > 0) { + yield this.buffer.substr(this.pos, n); + this.pos += n; + return n; + } + return 0; + } + *pushToIndex(i, allowEmpty) { + const s = this.buffer.slice(this.pos, i); + if (s) { + yield s; + this.pos += s.length; + return s.length; + } + else if (allowEmpty) + yield ''; + return 0; + } + *pushIndicators() { + switch (this.charAt(0)) { + case '!': + return ((yield* this.pushTag()) + + (yield* this.pushSpaces(true)) + + (yield* this.pushIndicators())); + case '&': + return ((yield* this.pushUntil(isNotAnchorChar)) + + (yield* this.pushSpaces(true)) + + (yield* this.pushIndicators())); + case '-': // this is an error + case '?': // this is an error outside flow collections + case ':': { + const inFlow = this.flowLevel > 0; + const ch1 = this.charAt(1); + if (isEmpty(ch1) || (inFlow && flowIndicatorChars.has(ch1))) { + if (!inFlow) + this.indentNext = this.indentValue + 1; + else if (this.flowKey) + this.flowKey = false; + return ((yield* this.pushCount(1)) + + (yield* this.pushSpaces(true)) + + (yield* this.pushIndicators())); + } + } + } + return 0; + } + *pushTag() { + if (this.charAt(1) === '<') { + let i = this.pos + 2; + let ch = this.buffer[i]; + while (!isEmpty(ch) && ch !== '>') + ch = this.buffer[++i]; + return yield* this.pushToIndex(ch === '>' ? i + 1 : i, false); + } + else { + let i = this.pos + 1; + let ch = this.buffer[i]; + while (ch) { + if (tagChars.has(ch)) + ch = this.buffer[++i]; + else if (ch === '%' && + hexDigits.has(this.buffer[i + 1]) && + hexDigits.has(this.buffer[i + 2])) { + ch = this.buffer[(i += 3)]; + } + else + break; + } + return yield* this.pushToIndex(i, false); + } + } + *pushNewline() { + const ch = this.buffer[this.pos]; + if (ch === '\n') + return yield* this.pushCount(1); + else if (ch === '\r' && this.charAt(1) === '\n') + return yield* this.pushCount(2); + else + return 0; + } + *pushSpaces(allowTabs) { + let i = this.pos - 1; + let ch; + do { + ch = this.buffer[++i]; + } while (ch === ' ' || (allowTabs && ch === '\t')); + const n = i - this.pos; + if (n > 0) { + yield this.buffer.substr(this.pos, n); + this.pos = i; + } + return n; + } + *pushUntil(test) { + let i = this.pos; + let ch = this.buffer[i]; + while (!test(ch)) + ch = this.buffer[++i]; + return yield* this.pushToIndex(i, false); + } +} + +export { Lexer }; diff --git a/node_modules/yaml/browser/dist/parse/line-counter.js b/node_modules/yaml/browser/dist/parse/line-counter.js new file mode 100644 index 0000000..002ce24 --- /dev/null +++ b/node_modules/yaml/browser/dist/parse/line-counter.js @@ -0,0 +1,39 @@ +/** + * Tracks newlines during parsing in order to provide an efficient API for + * determining the one-indexed `{ line, col }` position for any offset + * within the input. + */ +class LineCounter { + constructor() { + this.lineStarts = []; + /** + * Should be called in ascending order. Otherwise, call + * `lineCounter.lineStarts.sort()` before calling `linePos()`. + */ + this.addNewLine = (offset) => this.lineStarts.push(offset); + /** + * Performs a binary search and returns the 1-indexed { line, col } + * position of `offset`. If `line === 0`, `addNewLine` has never been + * called or `offset` is before the first known newline. + */ + this.linePos = (offset) => { + let low = 0; + let high = this.lineStarts.length; + while (low < high) { + const mid = (low + high) >> 1; // Math.floor((low + high) / 2) + if (this.lineStarts[mid] < offset) + low = mid + 1; + else + high = mid; + } + if (this.lineStarts[low] === offset) + return { line: low + 1, col: 1 }; + if (low === 0) + return { line: 0, col: offset }; + const start = this.lineStarts[low - 1]; + return { line: low, col: offset - start + 1 }; + }; + } +} + +export { LineCounter }; diff --git a/node_modules/yaml/browser/dist/parse/parser.js b/node_modules/yaml/browser/dist/parse/parser.js new file mode 100644 index 0000000..45a384a --- /dev/null +++ b/node_modules/yaml/browser/dist/parse/parser.js @@ -0,0 +1,967 @@ +import { tokenType } from './cst.js'; +import { Lexer } from './lexer.js'; + +function includesToken(list, type) { + for (let i = 0; i < list.length; ++i) + if (list[i].type === type) + return true; + return false; +} +function findNonEmptyIndex(list) { + for (let i = 0; i < list.length; ++i) { + switch (list[i].type) { + case 'space': + case 'comment': + case 'newline': + break; + default: + return i; + } + } + return -1; +} +function isFlowToken(token) { + switch (token?.type) { + case 'alias': + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': + case 'flow-collection': + return true; + default: + return false; + } +} +function getPrevProps(parent) { + switch (parent.type) { + case 'document': + return parent.start; + case 'block-map': { + const it = parent.items[parent.items.length - 1]; + return it.sep ?? it.start; + } + case 'block-seq': + return parent.items[parent.items.length - 1].start; + /* istanbul ignore next should not happen */ + default: + return []; + } +} +/** Note: May modify input array */ +function getFirstKeyStartProps(prev) { + if (prev.length === 0) + return []; + let i = prev.length; + loop: while (--i >= 0) { + switch (prev[i].type) { + case 'doc-start': + case 'explicit-key-ind': + case 'map-value-ind': + case 'seq-item-ind': + case 'newline': + break loop; + } + } + while (prev[++i]?.type === 'space') { + /* loop */ + } + return prev.splice(i, prev.length); +} +function fixFlowSeqItems(fc) { + if (fc.start.type === 'flow-seq-start') { + for (const it of fc.items) { + if (it.sep && + !it.value && + !includesToken(it.start, 'explicit-key-ind') && + !includesToken(it.sep, 'map-value-ind')) { + if (it.key) + it.value = it.key; + delete it.key; + if (isFlowToken(it.value)) { + if (it.value.end) + Array.prototype.push.apply(it.value.end, it.sep); + else + it.value.end = it.sep; + } + else + Array.prototype.push.apply(it.start, it.sep); + delete it.sep; + } + } + } +} +/** + * A YAML concrete syntax tree (CST) parser + * + * ```ts + * const src: string = ... + * for (const token of new Parser().parse(src)) { + * // token: Token + * } + * ``` + * + * To use the parser with a user-provided lexer: + * + * ```ts + * function* parse(source: string, lexer: Lexer) { + * const parser = new Parser() + * for (const lexeme of lexer.lex(source)) + * yield* parser.next(lexeme) + * yield* parser.end() + * } + * + * const src: string = ... + * const lexer = new Lexer() + * for (const token of parse(src, lexer)) { + * // token: Token + * } + * ``` + */ +class Parser { + /** + * @param onNewLine - If defined, called separately with the start position of + * each new line (in `parse()`, including the start of input). + */ + constructor(onNewLine) { + /** If true, space and sequence indicators count as indentation */ + this.atNewLine = true; + /** If true, next token is a scalar value */ + this.atScalar = false; + /** Current indentation level */ + this.indent = 0; + /** Current offset since the start of parsing */ + this.offset = 0; + /** On the same line with a block map key */ + this.onKeyLine = false; + /** Top indicates the node that's currently being built */ + this.stack = []; + /** The source of the current token, set in parse() */ + this.source = ''; + /** The type of the current token, set in parse() */ + this.type = ''; + // Must be defined after `next()` + this.lexer = new Lexer(); + this.onNewLine = onNewLine; + } + /** + * Parse `source` as a YAML stream. + * If `incomplete`, a part of the last line may be left as a buffer for the next call. + * + * Errors are not thrown, but yielded as `{ type: 'error', message }` tokens. + * + * @returns A generator of tokens representing each directive, document, and other structure. + */ + *parse(source, incomplete = false) { + if (this.onNewLine && this.offset === 0) + this.onNewLine(0); + for (const lexeme of this.lexer.lex(source, incomplete)) + yield* this.next(lexeme); + if (!incomplete) + yield* this.end(); + } + /** + * Advance the parser by the `source` of one lexical token. + */ + *next(source) { + this.source = source; + if (this.atScalar) { + this.atScalar = false; + yield* this.step(); + this.offset += source.length; + return; + } + const type = tokenType(source); + if (!type) { + const message = `Not a YAML token: ${source}`; + yield* this.pop({ type: 'error', offset: this.offset, message, source }); + this.offset += source.length; + } + else if (type === 'scalar') { + this.atNewLine = false; + this.atScalar = true; + this.type = 'scalar'; + } + else { + this.type = type; + yield* this.step(); + switch (type) { + case 'newline': + this.atNewLine = true; + this.indent = 0; + if (this.onNewLine) + this.onNewLine(this.offset + source.length); + break; + case 'space': + if (this.atNewLine && source[0] === ' ') + this.indent += source.length; + break; + case 'explicit-key-ind': + case 'map-value-ind': + case 'seq-item-ind': + if (this.atNewLine) + this.indent += source.length; + break; + case 'doc-mode': + case 'flow-error-end': + return; + default: + this.atNewLine = false; + } + this.offset += source.length; + } + } + /** Call at end of input to push out any remaining constructions */ + *end() { + while (this.stack.length > 0) + yield* this.pop(); + } + get sourceToken() { + const st = { + type: this.type, + offset: this.offset, + indent: this.indent, + source: this.source + }; + return st; + } + *step() { + const top = this.peek(1); + if (this.type === 'doc-end' && (!top || top.type !== 'doc-end')) { + while (this.stack.length > 0) + yield* this.pop(); + this.stack.push({ + type: 'doc-end', + offset: this.offset, + source: this.source + }); + return; + } + if (!top) + return yield* this.stream(); + switch (top.type) { + case 'document': + return yield* this.document(top); + case 'alias': + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': + return yield* this.scalar(top); + case 'block-scalar': + return yield* this.blockScalar(top); + case 'block-map': + return yield* this.blockMap(top); + case 'block-seq': + return yield* this.blockSequence(top); + case 'flow-collection': + return yield* this.flowCollection(top); + case 'doc-end': + return yield* this.documentEnd(top); + } + /* istanbul ignore next should not happen */ + yield* this.pop(); + } + peek(n) { + return this.stack[this.stack.length - n]; + } + *pop(error) { + const token = error ?? this.stack.pop(); + /* istanbul ignore if should not happen */ + if (!token) { + const message = 'Tried to pop an empty stack'; + yield { type: 'error', offset: this.offset, source: '', message }; + } + else if (this.stack.length === 0) { + yield token; + } + else { + const top = this.peek(1); + if (token.type === 'block-scalar') { + // Block scalars use their parent rather than header indent + token.indent = 'indent' in top ? top.indent : 0; + } + else if (token.type === 'flow-collection' && top.type === 'document') { + // Ignore all indent for top-level flow collections + token.indent = 0; + } + if (token.type === 'flow-collection') + fixFlowSeqItems(token); + switch (top.type) { + case 'document': + top.value = token; + break; + case 'block-scalar': + top.props.push(token); // error + break; + case 'block-map': { + const it = top.items[top.items.length - 1]; + if (it.value) { + top.items.push({ start: [], key: token, sep: [] }); + this.onKeyLine = true; + return; + } + else if (it.sep) { + it.value = token; + } + else { + Object.assign(it, { key: token, sep: [] }); + this.onKeyLine = !it.explicitKey; + return; + } + break; + } + case 'block-seq': { + const it = top.items[top.items.length - 1]; + if (it.value) + top.items.push({ start: [], value: token }); + else + it.value = token; + break; + } + case 'flow-collection': { + const it = top.items[top.items.length - 1]; + if (!it || it.value) + top.items.push({ start: [], key: token, sep: [] }); + else if (it.sep) + it.value = token; + else + Object.assign(it, { key: token, sep: [] }); + return; + } + /* istanbul ignore next should not happen */ + default: + yield* this.pop(); + yield* this.pop(token); + } + if ((top.type === 'document' || + top.type === 'block-map' || + top.type === 'block-seq') && + (token.type === 'block-map' || token.type === 'block-seq')) { + const last = token.items[token.items.length - 1]; + if (last && + !last.sep && + !last.value && + last.start.length > 0 && + findNonEmptyIndex(last.start) === -1 && + (token.indent === 0 || + last.start.every(st => st.type !== 'comment' || st.indent < token.indent))) { + if (top.type === 'document') + top.end = last.start; + else + top.items.push({ start: last.start }); + token.items.splice(-1, 1); + } + } + } + } + *stream() { + switch (this.type) { + case 'directive-line': + yield { type: 'directive', offset: this.offset, source: this.source }; + return; + case 'byte-order-mark': + case 'space': + case 'comment': + case 'newline': + yield this.sourceToken; + return; + case 'doc-mode': + case 'doc-start': { + const doc = { + type: 'document', + offset: this.offset, + start: [] + }; + if (this.type === 'doc-start') + doc.start.push(this.sourceToken); + this.stack.push(doc); + return; + } + } + yield { + type: 'error', + offset: this.offset, + message: `Unexpected ${this.type} token in YAML stream`, + source: this.source + }; + } + *document(doc) { + if (doc.value) + return yield* this.lineEnd(doc); + switch (this.type) { + case 'doc-start': { + if (findNonEmptyIndex(doc.start) !== -1) { + yield* this.pop(); + yield* this.step(); + } + else + doc.start.push(this.sourceToken); + return; + } + case 'anchor': + case 'tag': + case 'space': + case 'comment': + case 'newline': + doc.start.push(this.sourceToken); + return; + } + const bv = this.startBlockValue(doc); + if (bv) + this.stack.push(bv); + else { + yield { + type: 'error', + offset: this.offset, + message: `Unexpected ${this.type} token in YAML document`, + source: this.source + }; + } + } + *scalar(scalar) { + if (this.type === 'map-value-ind') { + const prev = getPrevProps(this.peek(2)); + const start = getFirstKeyStartProps(prev); + let sep; + if (scalar.end) { + sep = scalar.end; + sep.push(this.sourceToken); + delete scalar.end; + } + else + sep = [this.sourceToken]; + const map = { + type: 'block-map', + offset: scalar.offset, + indent: scalar.indent, + items: [{ start, key: scalar, sep }] + }; + this.onKeyLine = true; + this.stack[this.stack.length - 1] = map; + } + else + yield* this.lineEnd(scalar); + } + *blockScalar(scalar) { + switch (this.type) { + case 'space': + case 'comment': + case 'newline': + scalar.props.push(this.sourceToken); + return; + case 'scalar': + scalar.source = this.source; + // block-scalar source includes trailing newline + this.atNewLine = true; + this.indent = 0; + if (this.onNewLine) { + let nl = this.source.indexOf('\n') + 1; + while (nl !== 0) { + this.onNewLine(this.offset + nl); + nl = this.source.indexOf('\n', nl) + 1; + } + } + yield* this.pop(); + break; + /* istanbul ignore next should not happen */ + default: + yield* this.pop(); + yield* this.step(); + } + } + *blockMap(map) { + const it = map.items[map.items.length - 1]; + // it.sep is true-ish if pair already has key or : separator + switch (this.type) { + case 'newline': + this.onKeyLine = false; + if (it.value) { + const end = 'end' in it.value ? it.value.end : undefined; + const last = Array.isArray(end) ? end[end.length - 1] : undefined; + if (last?.type === 'comment') + end?.push(this.sourceToken); + else + map.items.push({ start: [this.sourceToken] }); + } + else if (it.sep) { + it.sep.push(this.sourceToken); + } + else { + it.start.push(this.sourceToken); + } + return; + case 'space': + case 'comment': + if (it.value) { + map.items.push({ start: [this.sourceToken] }); + } + else if (it.sep) { + it.sep.push(this.sourceToken); + } + else { + if (this.atIndentedComment(it.start, map.indent)) { + const prev = map.items[map.items.length - 2]; + const end = prev?.value?.end; + if (Array.isArray(end)) { + Array.prototype.push.apply(end, it.start); + end.push(this.sourceToken); + map.items.pop(); + return; + } + } + it.start.push(this.sourceToken); + } + return; + } + if (this.indent >= map.indent) { + const atMapIndent = !this.onKeyLine && this.indent === map.indent; + const atNextItem = atMapIndent && + (it.sep || it.explicitKey) && + this.type !== 'seq-item-ind'; + // For empty nodes, assign newline-separated not indented empty tokens to following node + let start = []; + if (atNextItem && it.sep && !it.value) { + const nl = []; + for (let i = 0; i < it.sep.length; ++i) { + const st = it.sep[i]; + switch (st.type) { + case 'newline': + nl.push(i); + break; + case 'space': + break; + case 'comment': + if (st.indent > map.indent) + nl.length = 0; + break; + default: + nl.length = 0; + } + } + if (nl.length >= 2) + start = it.sep.splice(nl[1]); + } + switch (this.type) { + case 'anchor': + case 'tag': + if (atNextItem || it.value) { + start.push(this.sourceToken); + map.items.push({ start }); + this.onKeyLine = true; + } + else if (it.sep) { + it.sep.push(this.sourceToken); + } + else { + it.start.push(this.sourceToken); + } + return; + case 'explicit-key-ind': + if (!it.sep && !it.explicitKey) { + it.start.push(this.sourceToken); + it.explicitKey = true; + } + else if (atNextItem || it.value) { + start.push(this.sourceToken); + map.items.push({ start, explicitKey: true }); + } + else { + this.stack.push({ + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start: [this.sourceToken], explicitKey: true }] + }); + } + this.onKeyLine = true; + return; + case 'map-value-ind': + if (it.explicitKey) { + if (!it.sep) { + if (includesToken(it.start, 'newline')) { + Object.assign(it, { key: null, sep: [this.sourceToken] }); + } + else { + const start = getFirstKeyStartProps(it.start); + this.stack.push({ + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start, key: null, sep: [this.sourceToken] }] + }); + } + } + else if (it.value) { + map.items.push({ start: [], key: null, sep: [this.sourceToken] }); + } + else if (includesToken(it.sep, 'map-value-ind')) { + this.stack.push({ + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start, key: null, sep: [this.sourceToken] }] + }); + } + else if (isFlowToken(it.key) && + !includesToken(it.sep, 'newline')) { + const start = getFirstKeyStartProps(it.start); + const key = it.key; + const sep = it.sep; + sep.push(this.sourceToken); + // @ts-expect-error type guard is wrong here + delete it.key; + // @ts-expect-error type guard is wrong here + delete it.sep; + this.stack.push({ + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start, key, sep }] + }); + } + else if (start.length > 0) { + // Not actually at next item + it.sep = it.sep.concat(start, this.sourceToken); + } + else { + it.sep.push(this.sourceToken); + } + } + else { + if (!it.sep) { + Object.assign(it, { key: null, sep: [this.sourceToken] }); + } + else if (it.value || atNextItem) { + map.items.push({ start, key: null, sep: [this.sourceToken] }); + } + else if (includesToken(it.sep, 'map-value-ind')) { + this.stack.push({ + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start: [], key: null, sep: [this.sourceToken] }] + }); + } + else { + it.sep.push(this.sourceToken); + } + } + this.onKeyLine = true; + return; + case 'alias': + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': { + const fs = this.flowScalar(this.type); + if (atNextItem || it.value) { + map.items.push({ start, key: fs, sep: [] }); + this.onKeyLine = true; + } + else if (it.sep) { + this.stack.push(fs); + } + else { + Object.assign(it, { key: fs, sep: [] }); + this.onKeyLine = true; + } + return; + } + default: { + const bv = this.startBlockValue(map); + if (bv) { + if (bv.type === 'block-seq') { + if (!it.explicitKey && + it.sep && + !includesToken(it.sep, 'newline')) { + yield* this.pop({ + type: 'error', + offset: this.offset, + message: 'Unexpected block-seq-ind on same line with key', + source: this.source + }); + return; + } + } + else if (atMapIndent) { + map.items.push({ start }); + } + this.stack.push(bv); + return; + } + } + } + } + yield* this.pop(); + yield* this.step(); + } + *blockSequence(seq) { + const it = seq.items[seq.items.length - 1]; + switch (this.type) { + case 'newline': + if (it.value) { + const end = 'end' in it.value ? it.value.end : undefined; + const last = Array.isArray(end) ? end[end.length - 1] : undefined; + if (last?.type === 'comment') + end?.push(this.sourceToken); + else + seq.items.push({ start: [this.sourceToken] }); + } + else + it.start.push(this.sourceToken); + return; + case 'space': + case 'comment': + if (it.value) + seq.items.push({ start: [this.sourceToken] }); + else { + if (this.atIndentedComment(it.start, seq.indent)) { + const prev = seq.items[seq.items.length - 2]; + const end = prev?.value?.end; + if (Array.isArray(end)) { + Array.prototype.push.apply(end, it.start); + end.push(this.sourceToken); + seq.items.pop(); + return; + } + } + it.start.push(this.sourceToken); + } + return; + case 'anchor': + case 'tag': + if (it.value || this.indent <= seq.indent) + break; + it.start.push(this.sourceToken); + return; + case 'seq-item-ind': + if (this.indent !== seq.indent) + break; + if (it.value || includesToken(it.start, 'seq-item-ind')) + seq.items.push({ start: [this.sourceToken] }); + else + it.start.push(this.sourceToken); + return; + } + if (this.indent > seq.indent) { + const bv = this.startBlockValue(seq); + if (bv) { + this.stack.push(bv); + return; + } + } + yield* this.pop(); + yield* this.step(); + } + *flowCollection(fc) { + const it = fc.items[fc.items.length - 1]; + if (this.type === 'flow-error-end') { + let top; + do { + yield* this.pop(); + top = this.peek(1); + } while (top && top.type === 'flow-collection'); + } + else if (fc.end.length === 0) { + switch (this.type) { + case 'comma': + case 'explicit-key-ind': + if (!it || it.sep) + fc.items.push({ start: [this.sourceToken] }); + else + it.start.push(this.sourceToken); + return; + case 'map-value-ind': + if (!it || it.value) + fc.items.push({ start: [], key: null, sep: [this.sourceToken] }); + else if (it.sep) + it.sep.push(this.sourceToken); + else + Object.assign(it, { key: null, sep: [this.sourceToken] }); + return; + case 'space': + case 'comment': + case 'newline': + case 'anchor': + case 'tag': + if (!it || it.value) + fc.items.push({ start: [this.sourceToken] }); + else if (it.sep) + it.sep.push(this.sourceToken); + else + it.start.push(this.sourceToken); + return; + case 'alias': + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': { + const fs = this.flowScalar(this.type); + if (!it || it.value) + fc.items.push({ start: [], key: fs, sep: [] }); + else if (it.sep) + this.stack.push(fs); + else + Object.assign(it, { key: fs, sep: [] }); + return; + } + case 'flow-map-end': + case 'flow-seq-end': + fc.end.push(this.sourceToken); + return; + } + const bv = this.startBlockValue(fc); + /* istanbul ignore else should not happen */ + if (bv) + this.stack.push(bv); + else { + yield* this.pop(); + yield* this.step(); + } + } + else { + const parent = this.peek(2); + if (parent.type === 'block-map' && + ((this.type === 'map-value-ind' && parent.indent === fc.indent) || + (this.type === 'newline' && + !parent.items[parent.items.length - 1].sep))) { + yield* this.pop(); + yield* this.step(); + } + else if (this.type === 'map-value-ind' && + parent.type !== 'flow-collection') { + const prev = getPrevProps(parent); + const start = getFirstKeyStartProps(prev); + fixFlowSeqItems(fc); + const sep = fc.end.splice(1, fc.end.length); + sep.push(this.sourceToken); + const map = { + type: 'block-map', + offset: fc.offset, + indent: fc.indent, + items: [{ start, key: fc, sep }] + }; + this.onKeyLine = true; + this.stack[this.stack.length - 1] = map; + } + else { + yield* this.lineEnd(fc); + } + } + } + flowScalar(type) { + if (this.onNewLine) { + let nl = this.source.indexOf('\n') + 1; + while (nl !== 0) { + this.onNewLine(this.offset + nl); + nl = this.source.indexOf('\n', nl) + 1; + } + } + return { + type, + offset: this.offset, + indent: this.indent, + source: this.source + }; + } + startBlockValue(parent) { + switch (this.type) { + case 'alias': + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': + return this.flowScalar(this.type); + case 'block-scalar-header': + return { + type: 'block-scalar', + offset: this.offset, + indent: this.indent, + props: [this.sourceToken], + source: '' + }; + case 'flow-map-start': + case 'flow-seq-start': + return { + type: 'flow-collection', + offset: this.offset, + indent: this.indent, + start: this.sourceToken, + items: [], + end: [] + }; + case 'seq-item-ind': + return { + type: 'block-seq', + offset: this.offset, + indent: this.indent, + items: [{ start: [this.sourceToken] }] + }; + case 'explicit-key-ind': { + this.onKeyLine = true; + const prev = getPrevProps(parent); + const start = getFirstKeyStartProps(prev); + start.push(this.sourceToken); + return { + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start, explicitKey: true }] + }; + } + case 'map-value-ind': { + this.onKeyLine = true; + const prev = getPrevProps(parent); + const start = getFirstKeyStartProps(prev); + return { + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start, key: null, sep: [this.sourceToken] }] + }; + } + } + return null; + } + atIndentedComment(start, indent) { + if (this.type !== 'comment') + return false; + if (this.indent <= indent) + return false; + return start.every(st => st.type === 'newline' || st.type === 'space'); + } + *documentEnd(docEnd) { + if (this.type !== 'doc-mode') { + if (docEnd.end) + docEnd.end.push(this.sourceToken); + else + docEnd.end = [this.sourceToken]; + if (this.type === 'newline') + yield* this.pop(); + } + } + *lineEnd(token) { + switch (this.type) { + case 'comma': + case 'doc-start': + case 'doc-end': + case 'flow-seq-end': + case 'flow-map-end': + case 'map-value-ind': + yield* this.pop(); + yield* this.step(); + break; + case 'newline': + this.onKeyLine = false; + // fallthrough + case 'space': + case 'comment': + default: + // all other values are errors + if (token.end) + token.end.push(this.sourceToken); + else + token.end = [this.sourceToken]; + if (this.type === 'newline') + yield* this.pop(); + } + } +} + +export { Parser }; diff --git a/node_modules/yaml/browser/dist/public-api.js b/node_modules/yaml/browser/dist/public-api.js new file mode 100644 index 0000000..116f6ee --- /dev/null +++ b/node_modules/yaml/browser/dist/public-api.js @@ -0,0 +1,102 @@ +import { Composer } from './compose/composer.js'; +import { Document } from './doc/Document.js'; +import { prettifyError, YAMLParseError } from './errors.js'; +import { warn } from './log.js'; +import { isDocument } from './nodes/identity.js'; +import { LineCounter } from './parse/line-counter.js'; +import { Parser } from './parse/parser.js'; + +function parseOptions(options) { + const prettyErrors = options.prettyErrors !== false; + const lineCounter = options.lineCounter || (prettyErrors && new LineCounter()) || null; + return { lineCounter, prettyErrors }; +} +/** + * Parse the input as a stream of YAML documents. + * + * Documents should be separated from each other by `...` or `---` marker lines. + * + * @returns If an empty `docs` array is returned, it will be of type + * EmptyStream and contain additional stream information. In + * TypeScript, you should use `'empty' in docs` as a type guard for it. + */ +function parseAllDocuments(source, options = {}) { + const { lineCounter, prettyErrors } = parseOptions(options); + const parser = new Parser(lineCounter?.addNewLine); + const composer = new Composer(options); + const docs = Array.from(composer.compose(parser.parse(source))); + if (prettyErrors && lineCounter) + for (const doc of docs) { + doc.errors.forEach(prettifyError(source, lineCounter)); + doc.warnings.forEach(prettifyError(source, lineCounter)); + } + if (docs.length > 0) + return docs; + return Object.assign([], { empty: true }, composer.streamInfo()); +} +/** Parse an input string into a single YAML.Document */ +function parseDocument(source, options = {}) { + const { lineCounter, prettyErrors } = parseOptions(options); + const parser = new Parser(lineCounter?.addNewLine); + const composer = new Composer(options); + // `doc` is always set by compose.end(true) at the very latest + let doc = null; + for (const _doc of composer.compose(parser.parse(source), true, source.length)) { + if (!doc) + doc = _doc; + else if (doc.options.logLevel !== 'silent') { + doc.errors.push(new YAMLParseError(_doc.range.slice(0, 2), 'MULTIPLE_DOCS', 'Source contains multiple documents; please use YAML.parseAllDocuments()')); + break; + } + } + if (prettyErrors && lineCounter) { + doc.errors.forEach(prettifyError(source, lineCounter)); + doc.warnings.forEach(prettifyError(source, lineCounter)); + } + return doc; +} +function parse(src, reviver, options) { + let _reviver = undefined; + if (typeof reviver === 'function') { + _reviver = reviver; + } + else if (options === undefined && reviver && typeof reviver === 'object') { + options = reviver; + } + const doc = parseDocument(src, options); + if (!doc) + return null; + doc.warnings.forEach(warning => warn(doc.options.logLevel, warning)); + if (doc.errors.length > 0) { + if (doc.options.logLevel !== 'silent') + throw doc.errors[0]; + else + doc.errors = []; + } + return doc.toJS(Object.assign({ reviver: _reviver }, options)); +} +function stringify(value, replacer, options) { + let _replacer = null; + if (typeof replacer === 'function' || Array.isArray(replacer)) { + _replacer = replacer; + } + else if (options === undefined && replacer) { + options = replacer; + } + if (typeof options === 'string') + options = options.length; + if (typeof options === 'number') { + const indent = Math.round(options); + options = indent < 1 ? undefined : indent > 8 ? { indent: 8 } : { indent }; + } + if (value === undefined) { + const { keepUndefined } = options ?? replacer ?? {}; + if (!keepUndefined) + return undefined; + } + if (isDocument(value) && !_replacer) + return value.toString(options); + return new Document(value, _replacer, options).toString(options); +} + +export { parse, parseAllDocuments, parseDocument, stringify }; diff --git a/node_modules/yaml/browser/dist/schema/Schema.js b/node_modules/yaml/browser/dist/schema/Schema.js new file mode 100644 index 0000000..60a85c5 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/Schema.js @@ -0,0 +1,37 @@ +import { MAP, SCALAR, SEQ } from '../nodes/identity.js'; +import { map } from './common/map.js'; +import { seq } from './common/seq.js'; +import { string } from './common/string.js'; +import { getTags, coreKnownTags } from './tags.js'; + +const sortMapEntriesByKey = (a, b) => a.key < b.key ? -1 : a.key > b.key ? 1 : 0; +class Schema { + constructor({ compat, customTags, merge, resolveKnownTags, schema, sortMapEntries, toStringDefaults }) { + this.compat = Array.isArray(compat) + ? getTags(compat, 'compat') + : compat + ? getTags(null, compat) + : null; + this.name = (typeof schema === 'string' && schema) || 'core'; + this.knownTags = resolveKnownTags ? coreKnownTags : {}; + this.tags = getTags(customTags, this.name, merge); + this.toStringOptions = toStringDefaults ?? null; + Object.defineProperty(this, MAP, { value: map }); + Object.defineProperty(this, SCALAR, { value: string }); + Object.defineProperty(this, SEQ, { value: seq }); + // Used by createMap() + this.sortMapEntries = + typeof sortMapEntries === 'function' + ? sortMapEntries + : sortMapEntries === true + ? sortMapEntriesByKey + : null; + } + clone() { + const copy = Object.create(Schema.prototype, Object.getOwnPropertyDescriptors(this)); + copy.tags = this.tags.slice(); + return copy; + } +} + +export { Schema }; diff --git a/node_modules/yaml/browser/dist/schema/common/map.js b/node_modules/yaml/browser/dist/schema/common/map.js new file mode 100644 index 0000000..af97b78 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/common/map.js @@ -0,0 +1,17 @@ +import { isMap } from '../../nodes/identity.js'; +import { YAMLMap } from '../../nodes/YAMLMap.js'; + +const map = { + collection: 'map', + default: true, + nodeClass: YAMLMap, + tag: 'tag:yaml.org,2002:map', + resolve(map, onError) { + if (!isMap(map)) + onError('Expected a mapping for this tag'); + return map; + }, + createNode: (schema, obj, ctx) => YAMLMap.from(schema, obj, ctx) +}; + +export { map }; diff --git a/node_modules/yaml/browser/dist/schema/common/null.js b/node_modules/yaml/browser/dist/schema/common/null.js new file mode 100644 index 0000000..fcbe1b7 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/common/null.js @@ -0,0 +1,15 @@ +import { Scalar } from '../../nodes/Scalar.js'; + +const nullTag = { + identify: value => value == null, + createNode: () => new Scalar(null), + default: true, + tag: 'tag:yaml.org,2002:null', + test: /^(?:~|[Nn]ull|NULL)?$/, + resolve: () => new Scalar(null), + stringify: ({ source }, ctx) => typeof source === 'string' && nullTag.test.test(source) + ? source + : ctx.options.nullStr +}; + +export { nullTag }; diff --git a/node_modules/yaml/browser/dist/schema/common/seq.js b/node_modules/yaml/browser/dist/schema/common/seq.js new file mode 100644 index 0000000..1915b60 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/common/seq.js @@ -0,0 +1,17 @@ +import { isSeq } from '../../nodes/identity.js'; +import { YAMLSeq } from '../../nodes/YAMLSeq.js'; + +const seq = { + collection: 'seq', + default: true, + nodeClass: YAMLSeq, + tag: 'tag:yaml.org,2002:seq', + resolve(seq, onError) { + if (!isSeq(seq)) + onError('Expected a sequence for this tag'); + return seq; + }, + createNode: (schema, obj, ctx) => YAMLSeq.from(schema, obj, ctx) +}; + +export { seq }; diff --git a/node_modules/yaml/browser/dist/schema/common/string.js b/node_modules/yaml/browser/dist/schema/common/string.js new file mode 100644 index 0000000..a064f7b --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/common/string.js @@ -0,0 +1,14 @@ +import { stringifyString } from '../../stringify/stringifyString.js'; + +const string = { + identify: value => typeof value === 'string', + default: true, + tag: 'tag:yaml.org,2002:str', + resolve: str => str, + stringify(item, ctx, onComment, onChompKeep) { + ctx = Object.assign({ actualString: true }, ctx); + return stringifyString(item, ctx, onComment, onChompKeep); + } +}; + +export { string }; diff --git a/node_modules/yaml/browser/dist/schema/core/bool.js b/node_modules/yaml/browser/dist/schema/core/bool.js new file mode 100644 index 0000000..ab3c943 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/core/bool.js @@ -0,0 +1,19 @@ +import { Scalar } from '../../nodes/Scalar.js'; + +const boolTag = { + identify: value => typeof value === 'boolean', + default: true, + tag: 'tag:yaml.org,2002:bool', + test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/, + resolve: str => new Scalar(str[0] === 't' || str[0] === 'T'), + stringify({ source, value }, ctx) { + if (source && boolTag.test.test(source)) { + const sv = source[0] === 't' || source[0] === 'T'; + if (value === sv) + return source; + } + return value ? ctx.options.trueStr : ctx.options.falseStr; + } +}; + +export { boolTag }; diff --git a/node_modules/yaml/browser/dist/schema/core/float.js b/node_modules/yaml/browser/dist/schema/core/float.js new file mode 100644 index 0000000..3fa9cf8 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/core/float.js @@ -0,0 +1,43 @@ +import { Scalar } from '../../nodes/Scalar.js'; +import { stringifyNumber } from '../../stringify/stringifyNumber.js'; + +const floatNaN = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/, + resolve: str => str.slice(-3).toLowerCase() === 'nan' + ? NaN + : str[0] === '-' + ? Number.NEGATIVE_INFINITY + : Number.POSITIVE_INFINITY, + stringify: stringifyNumber +}; +const floatExp = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + format: 'EXP', + test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/, + resolve: str => parseFloat(str), + stringify(node) { + const num = Number(node.value); + return isFinite(num) ? num.toExponential() : stringifyNumber(node); + } +}; +const float = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + test: /^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/, + resolve(str) { + const node = new Scalar(parseFloat(str)); + const dot = str.indexOf('.'); + if (dot !== -1 && str[str.length - 1] === '0') + node.minFractionDigits = str.length - dot - 1; + return node; + }, + stringify: stringifyNumber +}; + +export { float, floatExp, floatNaN }; diff --git a/node_modules/yaml/browser/dist/schema/core/int.js b/node_modules/yaml/browser/dist/schema/core/int.js new file mode 100644 index 0000000..7091235 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/core/int.js @@ -0,0 +1,38 @@ +import { stringifyNumber } from '../../stringify/stringifyNumber.js'; + +const intIdentify = (value) => typeof value === 'bigint' || Number.isInteger(value); +const intResolve = (str, offset, radix, { intAsBigInt }) => (intAsBigInt ? BigInt(str) : parseInt(str.substring(offset), radix)); +function intStringify(node, radix, prefix) { + const { value } = node; + if (intIdentify(value) && value >= 0) + return prefix + value.toString(radix); + return stringifyNumber(node); +} +const intOct = { + identify: value => intIdentify(value) && value >= 0, + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'OCT', + test: /^0o[0-7]+$/, + resolve: (str, _onError, opt) => intResolve(str, 2, 8, opt), + stringify: node => intStringify(node, 8, '0o') +}; +const int = { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + test: /^[-+]?[0-9]+$/, + resolve: (str, _onError, opt) => intResolve(str, 0, 10, opt), + stringify: stringifyNumber +}; +const intHex = { + identify: value => intIdentify(value) && value >= 0, + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'HEX', + test: /^0x[0-9a-fA-F]+$/, + resolve: (str, _onError, opt) => intResolve(str, 2, 16, opt), + stringify: node => intStringify(node, 16, '0x') +}; + +export { int, intHex, intOct }; diff --git a/node_modules/yaml/browser/dist/schema/core/schema.js b/node_modules/yaml/browser/dist/schema/core/schema.js new file mode 100644 index 0000000..dd02b2e --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/core/schema.js @@ -0,0 +1,23 @@ +import { map } from '../common/map.js'; +import { nullTag } from '../common/null.js'; +import { seq } from '../common/seq.js'; +import { string } from '../common/string.js'; +import { boolTag } from './bool.js'; +import { floatNaN, floatExp, float } from './float.js'; +import { intOct, int, intHex } from './int.js'; + +const schema = [ + map, + seq, + string, + nullTag, + boolTag, + intOct, + int, + intHex, + floatNaN, + floatExp, + float +]; + +export { schema }; diff --git a/node_modules/yaml/browser/dist/schema/json/schema.js b/node_modules/yaml/browser/dist/schema/json/schema.js new file mode 100644 index 0000000..ada1c63 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/json/schema.js @@ -0,0 +1,62 @@ +import { Scalar } from '../../nodes/Scalar.js'; +import { map } from '../common/map.js'; +import { seq } from '../common/seq.js'; + +function intIdentify(value) { + return typeof value === 'bigint' || Number.isInteger(value); +} +const stringifyJSON = ({ value }) => JSON.stringify(value); +const jsonScalars = [ + { + identify: value => typeof value === 'string', + default: true, + tag: 'tag:yaml.org,2002:str', + resolve: str => str, + stringify: stringifyJSON + }, + { + identify: value => value == null, + createNode: () => new Scalar(null), + default: true, + tag: 'tag:yaml.org,2002:null', + test: /^null$/, + resolve: () => null, + stringify: stringifyJSON + }, + { + identify: value => typeof value === 'boolean', + default: true, + tag: 'tag:yaml.org,2002:bool', + test: /^true$|^false$/, + resolve: str => str === 'true', + stringify: stringifyJSON + }, + { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + test: /^-?(?:0|[1-9][0-9]*)$/, + resolve: (str, _onError, { intAsBigInt }) => intAsBigInt ? BigInt(str) : parseInt(str, 10), + stringify: ({ value }) => intIdentify(value) ? value.toString() : JSON.stringify(value) + }, + { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/, + resolve: str => parseFloat(str), + stringify: stringifyJSON + } +]; +const jsonError = { + default: true, + tag: '', + test: /^/, + resolve(str, onError) { + onError(`Unresolved plain scalar ${JSON.stringify(str)}`); + return str; + } +}; +const schema = [map, seq].concat(jsonScalars, jsonError); + +export { schema }; diff --git a/node_modules/yaml/browser/dist/schema/tags.js b/node_modules/yaml/browser/dist/schema/tags.js new file mode 100644 index 0000000..5acd99f --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/tags.js @@ -0,0 +1,96 @@ +import { map } from './common/map.js'; +import { nullTag } from './common/null.js'; +import { seq } from './common/seq.js'; +import { string } from './common/string.js'; +import { boolTag } from './core/bool.js'; +import { floatNaN, floatExp, float } from './core/float.js'; +import { intOct, intHex, int } from './core/int.js'; +import { schema } from './core/schema.js'; +import { schema as schema$1 } from './json/schema.js'; +import { binary } from './yaml-1.1/binary.js'; +import { merge } from './yaml-1.1/merge.js'; +import { omap } from './yaml-1.1/omap.js'; +import { pairs } from './yaml-1.1/pairs.js'; +import { schema as schema$2 } from './yaml-1.1/schema.js'; +import { set } from './yaml-1.1/set.js'; +import { timestamp, intTime, floatTime } from './yaml-1.1/timestamp.js'; + +const schemas = new Map([ + ['core', schema], + ['failsafe', [map, seq, string]], + ['json', schema$1], + ['yaml11', schema$2], + ['yaml-1.1', schema$2] +]); +const tagsByName = { + binary, + bool: boolTag, + float, + floatExp, + floatNaN, + floatTime, + int, + intHex, + intOct, + intTime, + map, + merge, + null: nullTag, + omap, + pairs, + seq, + set, + timestamp +}; +const coreKnownTags = { + 'tag:yaml.org,2002:binary': binary, + 'tag:yaml.org,2002:merge': merge, + 'tag:yaml.org,2002:omap': omap, + 'tag:yaml.org,2002:pairs': pairs, + 'tag:yaml.org,2002:set': set, + 'tag:yaml.org,2002:timestamp': timestamp +}; +function getTags(customTags, schemaName, addMergeTag) { + const schemaTags = schemas.get(schemaName); + if (schemaTags && !customTags) { + return addMergeTag && !schemaTags.includes(merge) + ? schemaTags.concat(merge) + : schemaTags.slice(); + } + let tags = schemaTags; + if (!tags) { + if (Array.isArray(customTags)) + tags = []; + else { + const keys = Array.from(schemas.keys()) + .filter(key => key !== 'yaml11') + .map(key => JSON.stringify(key)) + .join(', '); + throw new Error(`Unknown schema "${schemaName}"; use one of ${keys} or define customTags array`); + } + } + if (Array.isArray(customTags)) { + for (const tag of customTags) + tags = tags.concat(tag); + } + else if (typeof customTags === 'function') { + tags = customTags(tags.slice()); + } + if (addMergeTag) + tags = tags.concat(merge); + return tags.reduce((tags, tag) => { + const tagObj = typeof tag === 'string' ? tagsByName[tag] : tag; + if (!tagObj) { + const tagName = JSON.stringify(tag); + const keys = Object.keys(tagsByName) + .map(key => JSON.stringify(key)) + .join(', '); + throw new Error(`Unknown custom tag ${tagName}; use one of ${keys}`); + } + if (!tags.includes(tagObj)) + tags.push(tagObj); + return tags; + }, []); +} + +export { coreKnownTags, getTags }; diff --git a/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js b/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js new file mode 100644 index 0000000..2deda7a --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js @@ -0,0 +1,58 @@ +import { Scalar } from '../../nodes/Scalar.js'; +import { stringifyString } from '../../stringify/stringifyString.js'; + +const binary = { + identify: value => value instanceof Uint8Array, // Buffer inherits from Uint8Array + default: false, + tag: 'tag:yaml.org,2002:binary', + /** + * Returns a Buffer in node and an Uint8Array in browsers + * + * To use the resulting buffer as an image, you'll want to do something like: + * + * const blob = new Blob([buffer], { type: 'image/jpeg' }) + * document.querySelector('#photo').src = URL.createObjectURL(blob) + */ + resolve(src, onError) { + if (typeof atob === 'function') { + // On IE 11, atob() can't handle newlines + const str = atob(src.replace(/[\n\r]/g, '')); + const buffer = new Uint8Array(str.length); + for (let i = 0; i < str.length; ++i) + buffer[i] = str.charCodeAt(i); + return buffer; + } + else { + onError('This environment does not support reading binary tags; either Buffer or atob is required'); + return src; + } + }, + stringify({ comment, type, value }, ctx, onComment, onChompKeep) { + if (!value) + return ''; + const buf = value; // checked earlier by binary.identify() + let str; + if (typeof btoa === 'function') { + let s = ''; + for (let i = 0; i < buf.length; ++i) + s += String.fromCharCode(buf[i]); + str = btoa(s); + } + else { + throw new Error('This environment does not support writing binary tags; either Buffer or btoa is required'); + } + type ?? (type = Scalar.BLOCK_LITERAL); + if (type !== Scalar.QUOTE_DOUBLE) { + const lineWidth = Math.max(ctx.options.lineWidth - ctx.indent.length, ctx.options.minContentWidth); + const n = Math.ceil(str.length / lineWidth); + const lines = new Array(n); + for (let i = 0, o = 0; i < n; ++i, o += lineWidth) { + lines[i] = str.substr(o, lineWidth); + } + str = lines.join(type === Scalar.BLOCK_LITERAL ? '\n' : ' '); + } + return stringifyString({ comment, type, value: str }, ctx, onComment, onChompKeep); + } +}; + +export { binary }; diff --git a/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js b/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js new file mode 100644 index 0000000..999b59d --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js @@ -0,0 +1,26 @@ +import { Scalar } from '../../nodes/Scalar.js'; + +function boolStringify({ value, source }, ctx) { + const boolObj = value ? trueTag : falseTag; + if (source && boolObj.test.test(source)) + return source; + return value ? ctx.options.trueStr : ctx.options.falseStr; +} +const trueTag = { + identify: value => value === true, + default: true, + tag: 'tag:yaml.org,2002:bool', + test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/, + resolve: () => new Scalar(true), + stringify: boolStringify +}; +const falseTag = { + identify: value => value === false, + default: true, + tag: 'tag:yaml.org,2002:bool', + test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/, + resolve: () => new Scalar(false), + stringify: boolStringify +}; + +export { falseTag, trueTag }; diff --git a/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js b/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js new file mode 100644 index 0000000..2f06117 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js @@ -0,0 +1,46 @@ +import { Scalar } from '../../nodes/Scalar.js'; +import { stringifyNumber } from '../../stringify/stringifyNumber.js'; + +const floatNaN = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/, + resolve: (str) => str.slice(-3).toLowerCase() === 'nan' + ? NaN + : str[0] === '-' + ? Number.NEGATIVE_INFINITY + : Number.POSITIVE_INFINITY, + stringify: stringifyNumber +}; +const floatExp = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + format: 'EXP', + test: /^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/, + resolve: (str) => parseFloat(str.replace(/_/g, '')), + stringify(node) { + const num = Number(node.value); + return isFinite(num) ? num.toExponential() : stringifyNumber(node); + } +}; +const float = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + test: /^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/, + resolve(str) { + const node = new Scalar(parseFloat(str.replace(/_/g, ''))); + const dot = str.indexOf('.'); + if (dot !== -1) { + const f = str.substring(dot + 1).replace(/_/g, ''); + if (f[f.length - 1] === '0') + node.minFractionDigits = f.length; + } + return node; + }, + stringify: stringifyNumber +}; + +export { float, floatExp, floatNaN }; diff --git a/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js b/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js new file mode 100644 index 0000000..f572823 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js @@ -0,0 +1,71 @@ +import { stringifyNumber } from '../../stringify/stringifyNumber.js'; + +const intIdentify = (value) => typeof value === 'bigint' || Number.isInteger(value); +function intResolve(str, offset, radix, { intAsBigInt }) { + const sign = str[0]; + if (sign === '-' || sign === '+') + offset += 1; + str = str.substring(offset).replace(/_/g, ''); + if (intAsBigInt) { + switch (radix) { + case 2: + str = `0b${str}`; + break; + case 8: + str = `0o${str}`; + break; + case 16: + str = `0x${str}`; + break; + } + const n = BigInt(str); + return sign === '-' ? BigInt(-1) * n : n; + } + const n = parseInt(str, radix); + return sign === '-' ? -1 * n : n; +} +function intStringify(node, radix, prefix) { + const { value } = node; + if (intIdentify(value)) { + const str = value.toString(radix); + return value < 0 ? '-' + prefix + str.substr(1) : prefix + str; + } + return stringifyNumber(node); +} +const intBin = { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'BIN', + test: /^[-+]?0b[0-1_]+$/, + resolve: (str, _onError, opt) => intResolve(str, 2, 2, opt), + stringify: node => intStringify(node, 2, '0b') +}; +const intOct = { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'OCT', + test: /^[-+]?0[0-7_]+$/, + resolve: (str, _onError, opt) => intResolve(str, 1, 8, opt), + stringify: node => intStringify(node, 8, '0') +}; +const int = { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + test: /^[-+]?[0-9][0-9_]*$/, + resolve: (str, _onError, opt) => intResolve(str, 0, 10, opt), + stringify: stringifyNumber +}; +const intHex = { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'HEX', + test: /^[-+]?0x[0-9a-fA-F_]+$/, + resolve: (str, _onError, opt) => intResolve(str, 2, 16, opt), + stringify: node => intStringify(node, 16, '0x') +}; + +export { int, intBin, intHex, intOct }; diff --git a/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js b/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js new file mode 100644 index 0000000..d361f36 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js @@ -0,0 +1,64 @@ +import { isScalar, isAlias, isSeq, isMap } from '../../nodes/identity.js'; +import { Scalar } from '../../nodes/Scalar.js'; + +// If the value associated with a merge key is a single mapping node, each of +// its key/value pairs is inserted into the current mapping, unless the key +// already exists in it. If the value associated with the merge key is a +// sequence, then this sequence is expected to contain mapping nodes and each +// of these nodes is merged in turn according to its order in the sequence. +// Keys in mapping nodes earlier in the sequence override keys specified in +// later mapping nodes. -- http://yaml.org/type/merge.html +const MERGE_KEY = '<<'; +const merge = { + identify: value => value === MERGE_KEY || + (typeof value === 'symbol' && value.description === MERGE_KEY), + default: 'key', + tag: 'tag:yaml.org,2002:merge', + test: /^<<$/, + resolve: () => Object.assign(new Scalar(Symbol(MERGE_KEY)), { + addToJSMap: addMergeToJSMap + }), + stringify: () => MERGE_KEY +}; +const isMergeKey = (ctx, key) => (merge.identify(key) || + (isScalar(key) && + (!key.type || key.type === Scalar.PLAIN) && + merge.identify(key.value))) && + ctx?.doc.schema.tags.some(tag => tag.tag === merge.tag && tag.default); +function addMergeToJSMap(ctx, map, value) { + value = ctx && isAlias(value) ? value.resolve(ctx.doc) : value; + if (isSeq(value)) + for (const it of value.items) + mergeValue(ctx, map, it); + else if (Array.isArray(value)) + for (const it of value) + mergeValue(ctx, map, it); + else + mergeValue(ctx, map, value); +} +function mergeValue(ctx, map, value) { + const source = ctx && isAlias(value) ? value.resolve(ctx.doc) : value; + if (!isMap(source)) + throw new Error('Merge sources must be maps or map aliases'); + const srcMap = source.toJSON(null, ctx, Map); + for (const [key, value] of srcMap) { + if (map instanceof Map) { + if (!map.has(key)) + map.set(key, value); + } + else if (map instanceof Set) { + map.add(key); + } + else if (!Object.prototype.hasOwnProperty.call(map, key)) { + Object.defineProperty(map, key, { + value, + writable: true, + enumerable: true, + configurable: true + }); + } + } + return map; +} + +export { addMergeToJSMap, isMergeKey, merge }; diff --git a/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js b/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js new file mode 100644 index 0000000..5574ac5 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js @@ -0,0 +1,74 @@ +import { isScalar, isPair } from '../../nodes/identity.js'; +import { toJS } from '../../nodes/toJS.js'; +import { YAMLMap } from '../../nodes/YAMLMap.js'; +import { YAMLSeq } from '../../nodes/YAMLSeq.js'; +import { resolvePairs, createPairs } from './pairs.js'; + +class YAMLOMap extends YAMLSeq { + constructor() { + super(); + this.add = YAMLMap.prototype.add.bind(this); + this.delete = YAMLMap.prototype.delete.bind(this); + this.get = YAMLMap.prototype.get.bind(this); + this.has = YAMLMap.prototype.has.bind(this); + this.set = YAMLMap.prototype.set.bind(this); + this.tag = YAMLOMap.tag; + } + /** + * If `ctx` is given, the return type is actually `Map`, + * but TypeScript won't allow widening the signature of a child method. + */ + toJSON(_, ctx) { + if (!ctx) + return super.toJSON(_); + const map = new Map(); + if (ctx?.onCreate) + ctx.onCreate(map); + for (const pair of this.items) { + let key, value; + if (isPair(pair)) { + key = toJS(pair.key, '', ctx); + value = toJS(pair.value, key, ctx); + } + else { + key = toJS(pair, '', ctx); + } + if (map.has(key)) + throw new Error('Ordered maps must not include duplicate keys'); + map.set(key, value); + } + return map; + } + static from(schema, iterable, ctx) { + const pairs = createPairs(schema, iterable, ctx); + const omap = new this(); + omap.items = pairs.items; + return omap; + } +} +YAMLOMap.tag = 'tag:yaml.org,2002:omap'; +const omap = { + collection: 'seq', + identify: value => value instanceof Map, + nodeClass: YAMLOMap, + default: false, + tag: 'tag:yaml.org,2002:omap', + resolve(seq, onError) { + const pairs = resolvePairs(seq, onError); + const seenKeys = []; + for (const { key } of pairs.items) { + if (isScalar(key)) { + if (seenKeys.includes(key.value)) { + onError(`Ordered maps must not include duplicate keys: ${key.value}`); + } + else { + seenKeys.push(key.value); + } + } + } + return Object.assign(new YAMLOMap(), pairs); + }, + createNode: (schema, iterable, ctx) => YAMLOMap.from(schema, iterable, ctx) +}; + +export { YAMLOMap, omap }; diff --git a/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js b/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js new file mode 100644 index 0000000..579f080 --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js @@ -0,0 +1,78 @@ +import { isSeq, isPair, isMap } from '../../nodes/identity.js'; +import { createPair, Pair } from '../../nodes/Pair.js'; +import { Scalar } from '../../nodes/Scalar.js'; +import { YAMLSeq } from '../../nodes/YAMLSeq.js'; + +function resolvePairs(seq, onError) { + if (isSeq(seq)) { + for (let i = 0; i < seq.items.length; ++i) { + let item = seq.items[i]; + if (isPair(item)) + continue; + else if (isMap(item)) { + if (item.items.length > 1) + onError('Each pair must have its own sequence indicator'); + const pair = item.items[0] || new Pair(new Scalar(null)); + if (item.commentBefore) + pair.key.commentBefore = pair.key.commentBefore + ? `${item.commentBefore}\n${pair.key.commentBefore}` + : item.commentBefore; + if (item.comment) { + const cn = pair.value ?? pair.key; + cn.comment = cn.comment + ? `${item.comment}\n${cn.comment}` + : item.comment; + } + item = pair; + } + seq.items[i] = isPair(item) ? item : new Pair(item); + } + } + else + onError('Expected a sequence for this tag'); + return seq; +} +function createPairs(schema, iterable, ctx) { + const { replacer } = ctx; + const pairs = new YAMLSeq(schema); + pairs.tag = 'tag:yaml.org,2002:pairs'; + let i = 0; + if (iterable && Symbol.iterator in Object(iterable)) + for (let it of iterable) { + if (typeof replacer === 'function') + it = replacer.call(iterable, String(i++), it); + let key, value; + if (Array.isArray(it)) { + if (it.length === 2) { + key = it[0]; + value = it[1]; + } + else + throw new TypeError(`Expected [key, value] tuple: ${it}`); + } + else if (it && it instanceof Object) { + const keys = Object.keys(it); + if (keys.length === 1) { + key = keys[0]; + value = it[key]; + } + else { + throw new TypeError(`Expected tuple with one key, not ${keys.length} keys`); + } + } + else { + key = it; + } + pairs.items.push(createPair(key, value, ctx)); + } + return pairs; +} +const pairs = { + collection: 'seq', + default: false, + tag: 'tag:yaml.org,2002:pairs', + resolve: resolvePairs, + createNode: createPairs +}; + +export { createPairs, pairs, resolvePairs }; diff --git a/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js b/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js new file mode 100644 index 0000000..e516ced --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js @@ -0,0 +1,39 @@ +import { map } from '../common/map.js'; +import { nullTag } from '../common/null.js'; +import { seq } from '../common/seq.js'; +import { string } from '../common/string.js'; +import { binary } from './binary.js'; +import { trueTag, falseTag } from './bool.js'; +import { floatNaN, floatExp, float } from './float.js'; +import { intBin, intOct, int, intHex } from './int.js'; +import { merge } from './merge.js'; +import { omap } from './omap.js'; +import { pairs } from './pairs.js'; +import { set } from './set.js'; +import { intTime, floatTime, timestamp } from './timestamp.js'; + +const schema = [ + map, + seq, + string, + nullTag, + trueTag, + falseTag, + intBin, + intOct, + int, + intHex, + floatNaN, + floatExp, + float, + binary, + merge, + omap, + pairs, + set, + intTime, + floatTime, + timestamp +]; + +export { schema }; diff --git a/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js b/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js new file mode 100644 index 0000000..a3cf4ec --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js @@ -0,0 +1,93 @@ +import { isMap, isPair, isScalar } from '../../nodes/identity.js'; +import { Pair, createPair } from '../../nodes/Pair.js'; +import { YAMLMap, findPair } from '../../nodes/YAMLMap.js'; + +class YAMLSet extends YAMLMap { + constructor(schema) { + super(schema); + this.tag = YAMLSet.tag; + } + add(key) { + let pair; + if (isPair(key)) + pair = key; + else if (key && + typeof key === 'object' && + 'key' in key && + 'value' in key && + key.value === null) + pair = new Pair(key.key, null); + else + pair = new Pair(key, null); + const prev = findPair(this.items, pair.key); + if (!prev) + this.items.push(pair); + } + /** + * If `keepPair` is `true`, returns the Pair matching `key`. + * Otherwise, returns the value of that Pair's key. + */ + get(key, keepPair) { + const pair = findPair(this.items, key); + return !keepPair && isPair(pair) + ? isScalar(pair.key) + ? pair.key.value + : pair.key + : pair; + } + set(key, value) { + if (typeof value !== 'boolean') + throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`); + const prev = findPair(this.items, key); + if (prev && !value) { + this.items.splice(this.items.indexOf(prev), 1); + } + else if (!prev && value) { + this.items.push(new Pair(key)); + } + } + toJSON(_, ctx) { + return super.toJSON(_, ctx, Set); + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + if (this.hasAllNullValues(true)) + return super.toString(Object.assign({}, ctx, { allNullValues: true }), onComment, onChompKeep); + else + throw new Error('Set items must all have null values'); + } + static from(schema, iterable, ctx) { + const { replacer } = ctx; + const set = new this(schema); + if (iterable && Symbol.iterator in Object(iterable)) + for (let value of iterable) { + if (typeof replacer === 'function') + value = replacer.call(iterable, value, value); + set.items.push(createPair(value, null, ctx)); + } + return set; + } +} +YAMLSet.tag = 'tag:yaml.org,2002:set'; +const set = { + collection: 'map', + identify: value => value instanceof Set, + nodeClass: YAMLSet, + default: false, + tag: 'tag:yaml.org,2002:set', + createNode: (schema, iterable, ctx) => YAMLSet.from(schema, iterable, ctx), + resolve(map, onError) { + if (isMap(map)) { + if (map.hasAllNullValues(true)) + return Object.assign(new YAMLSet(), map); + else + onError('Set items must all have null values'); + } + else + onError('Expected a mapping for this tag'); + return map; + } +}; + +export { YAMLSet, set }; diff --git a/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js b/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js new file mode 100644 index 0000000..77e3dbe --- /dev/null +++ b/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js @@ -0,0 +1,101 @@ +import { stringifyNumber } from '../../stringify/stringifyNumber.js'; + +/** Internal types handle bigint as number, because TS can't figure it out. */ +function parseSexagesimal(str, asBigInt) { + const sign = str[0]; + const parts = sign === '-' || sign === '+' ? str.substring(1) : str; + const num = (n) => asBigInt ? BigInt(n) : Number(n); + const res = parts + .replace(/_/g, '') + .split(':') + .reduce((res, p) => res * num(60) + num(p), num(0)); + return (sign === '-' ? num(-1) * res : res); +} +/** + * hhhh:mm:ss.sss + * + * Internal types handle bigint as number, because TS can't figure it out. + */ +function stringifySexagesimal(node) { + let { value } = node; + let num = (n) => n; + if (typeof value === 'bigint') + num = n => BigInt(n); + else if (isNaN(value) || !isFinite(value)) + return stringifyNumber(node); + let sign = ''; + if (value < 0) { + sign = '-'; + value *= num(-1); + } + const _60 = num(60); + const parts = [value % _60]; // seconds, including ms + if (value < 60) { + parts.unshift(0); // at least one : is required + } + else { + value = (value - parts[0]) / _60; + parts.unshift(value % _60); // minutes + if (value >= 60) { + value = (value - parts[0]) / _60; + parts.unshift(value); // hours + } + } + return (sign + + parts + .map(n => String(n).padStart(2, '0')) + .join(':') + .replace(/000000\d*$/, '') // % 60 may introduce error + ); +} +const intTime = { + identify: value => typeof value === 'bigint' || Number.isInteger(value), + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'TIME', + test: /^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/, + resolve: (str, _onError, { intAsBigInt }) => parseSexagesimal(str, intAsBigInt), + stringify: stringifySexagesimal +}; +const floatTime = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + format: 'TIME', + test: /^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/, + resolve: str => parseSexagesimal(str, false), + stringify: stringifySexagesimal +}; +const timestamp = { + identify: value => value instanceof Date, + default: true, + tag: 'tag:yaml.org,2002:timestamp', + // If the time zone is omitted, the timestamp is assumed to be specified in UTC. The time part + // may be omitted altogether, resulting in a date format. In such a case, the time part is + // assumed to be 00:00:00Z (start of day, UTC). + test: RegExp('^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})' + // YYYY-Mm-Dd + '(?:' + // time is optional + '(?:t|T|[ \\t]+)' + // t | T | whitespace + '([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)' + // Hh:Mm:Ss(.ss)? + '(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?' + // Z | +5 | -03:30 + ')?$'), + resolve(str) { + const match = str.match(timestamp.test); + if (!match) + throw new Error('!!timestamp expects a date, starting with yyyy-mm-dd'); + const [, year, month, day, hour, minute, second] = match.map(Number); + const millisec = match[7] ? Number((match[7] + '00').substr(1, 3)) : 0; + let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec); + const tz = match[8]; + if (tz && tz !== 'Z') { + let d = parseSexagesimal(tz, false); + if (Math.abs(d) < 30) + d *= 60; + date -= 60000 * d; + } + return new Date(date); + }, + stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, '') ?? '' +}; + +export { floatTime, intTime, timestamp }; diff --git a/node_modules/yaml/browser/dist/stringify/foldFlowLines.js b/node_modules/yaml/browser/dist/stringify/foldFlowLines.js new file mode 100644 index 0000000..2f0bd07 --- /dev/null +++ b/node_modules/yaml/browser/dist/stringify/foldFlowLines.js @@ -0,0 +1,146 @@ +const FOLD_FLOW = 'flow'; +const FOLD_BLOCK = 'block'; +const FOLD_QUOTED = 'quoted'; +/** + * Tries to keep input at up to `lineWidth` characters, splitting only on spaces + * not followed by newlines or spaces unless `mode` is `'quoted'`. Lines are + * terminated with `\n` and started with `indent`. + */ +function foldFlowLines(text, indent, mode = 'flow', { indentAtStart, lineWidth = 80, minContentWidth = 20, onFold, onOverflow } = {}) { + if (!lineWidth || lineWidth < 0) + return text; + if (lineWidth < minContentWidth) + minContentWidth = 0; + const endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length); + if (text.length <= endStep) + return text; + const folds = []; + const escapedFolds = {}; + let end = lineWidth - indent.length; + if (typeof indentAtStart === 'number') { + if (indentAtStart > lineWidth - Math.max(2, minContentWidth)) + folds.push(0); + else + end = lineWidth - indentAtStart; + } + let split = undefined; + let prev = undefined; + let overflow = false; + let i = -1; + let escStart = -1; + let escEnd = -1; + if (mode === FOLD_BLOCK) { + i = consumeMoreIndentedLines(text, i, indent.length); + if (i !== -1) + end = i + endStep; + } + for (let ch; (ch = text[(i += 1)]);) { + if (mode === FOLD_QUOTED && ch === '\\') { + escStart = i; + switch (text[i + 1]) { + case 'x': + i += 3; + break; + case 'u': + i += 5; + break; + case 'U': + i += 9; + break; + default: + i += 1; + } + escEnd = i; + } + if (ch === '\n') { + if (mode === FOLD_BLOCK) + i = consumeMoreIndentedLines(text, i, indent.length); + end = i + indent.length + endStep; + split = undefined; + } + else { + if (ch === ' ' && + prev && + prev !== ' ' && + prev !== '\n' && + prev !== '\t') { + // space surrounded by non-space can be replaced with newline + indent + const next = text[i + 1]; + if (next && next !== ' ' && next !== '\n' && next !== '\t') + split = i; + } + if (i >= end) { + if (split) { + folds.push(split); + end = split + endStep; + split = undefined; + } + else if (mode === FOLD_QUOTED) { + // white-space collected at end may stretch past lineWidth + while (prev === ' ' || prev === '\t') { + prev = ch; + ch = text[(i += 1)]; + overflow = true; + } + // Account for newline escape, but don't break preceding escape + const j = i > escEnd + 1 ? i - 2 : escStart - 1; + // Bail out if lineWidth & minContentWidth are shorter than an escape string + if (escapedFolds[j]) + return text; + folds.push(j); + escapedFolds[j] = true; + end = j + endStep; + split = undefined; + } + else { + overflow = true; + } + } + } + prev = ch; + } + if (overflow && onOverflow) + onOverflow(); + if (folds.length === 0) + return text; + if (onFold) + onFold(); + let res = text.slice(0, folds[0]); + for (let i = 0; i < folds.length; ++i) { + const fold = folds[i]; + const end = folds[i + 1] || text.length; + if (fold === 0) + res = `\n${indent}${text.slice(0, end)}`; + else { + if (mode === FOLD_QUOTED && escapedFolds[fold]) + res += `${text[fold]}\\`; + res += `\n${indent}${text.slice(fold + 1, end)}`; + } + } + return res; +} +/** + * Presumes `i + 1` is at the start of a line + * @returns index of last newline in more-indented block + */ +function consumeMoreIndentedLines(text, i, indent) { + let end = i; + let start = i + 1; + let ch = text[start]; + while (ch === ' ' || ch === '\t') { + if (i < start + indent) { + ch = text[++i]; + } + else { + do { + ch = text[++i]; + } while (ch && ch !== '\n'); + end = i; + start = i + 1; + ch = text[start]; + } + } + return end; +} + +export { FOLD_BLOCK, FOLD_FLOW, FOLD_QUOTED, foldFlowLines }; diff --git a/node_modules/yaml/browser/dist/stringify/stringify.js b/node_modules/yaml/browser/dist/stringify/stringify.js new file mode 100644 index 0000000..7d27bf4 --- /dev/null +++ b/node_modules/yaml/browser/dist/stringify/stringify.js @@ -0,0 +1,128 @@ +import { anchorIsValid } from '../doc/anchors.js'; +import { isPair, isAlias, isNode, isScalar, isCollection } from '../nodes/identity.js'; +import { stringifyComment } from './stringifyComment.js'; +import { stringifyString } from './stringifyString.js'; + +function createStringifyContext(doc, options) { + const opt = Object.assign({ + blockQuote: true, + commentString: stringifyComment, + defaultKeyType: null, + defaultStringType: 'PLAIN', + directives: null, + doubleQuotedAsJSON: false, + doubleQuotedMinMultiLineLength: 40, + falseStr: 'false', + flowCollectionPadding: true, + indentSeq: true, + lineWidth: 80, + minContentWidth: 20, + nullStr: 'null', + simpleKeys: false, + singleQuote: null, + trueStr: 'true', + verifyAliasOrder: true + }, doc.schema.toStringOptions, options); + let inFlow; + switch (opt.collectionStyle) { + case 'block': + inFlow = false; + break; + case 'flow': + inFlow = true; + break; + default: + inFlow = null; + } + return { + anchors: new Set(), + doc, + flowCollectionPadding: opt.flowCollectionPadding ? ' ' : '', + indent: '', + indentStep: typeof opt.indent === 'number' ? ' '.repeat(opt.indent) : ' ', + inFlow, + options: opt + }; +} +function getTagObject(tags, item) { + if (item.tag) { + const match = tags.filter(t => t.tag === item.tag); + if (match.length > 0) + return match.find(t => t.format === item.format) ?? match[0]; + } + let tagObj = undefined; + let obj; + if (isScalar(item)) { + obj = item.value; + let match = tags.filter(t => t.identify?.(obj)); + if (match.length > 1) { + const testMatch = match.filter(t => t.test); + if (testMatch.length > 0) + match = testMatch; + } + tagObj = + match.find(t => t.format === item.format) ?? match.find(t => !t.format); + } + else { + obj = item; + tagObj = tags.find(t => t.nodeClass && obj instanceof t.nodeClass); + } + if (!tagObj) { + const name = obj?.constructor?.name ?? (obj === null ? 'null' : typeof obj); + throw new Error(`Tag not resolved for ${name} value`); + } + return tagObj; +} +// needs to be called before value stringifier to allow for circular anchor refs +function stringifyProps(node, tagObj, { anchors, doc }) { + if (!doc.directives) + return ''; + const props = []; + const anchor = (isScalar(node) || isCollection(node)) && node.anchor; + if (anchor && anchorIsValid(anchor)) { + anchors.add(anchor); + props.push(`&${anchor}`); + } + const tag = node.tag ?? (tagObj.default ? null : tagObj.tag); + if (tag) + props.push(doc.directives.tagString(tag)); + return props.join(' '); +} +function stringify(item, ctx, onComment, onChompKeep) { + if (isPair(item)) + return item.toString(ctx, onComment, onChompKeep); + if (isAlias(item)) { + if (ctx.doc.directives) + return item.toString(ctx); + if (ctx.resolvedAliases?.has(item)) { + throw new TypeError(`Cannot stringify circular structure without alias nodes`); + } + else { + if (ctx.resolvedAliases) + ctx.resolvedAliases.add(item); + else + ctx.resolvedAliases = new Set([item]); + item = item.resolve(ctx.doc); + } + } + let tagObj = undefined; + const node = isNode(item) + ? item + : ctx.doc.createNode(item, { onTagObj: o => (tagObj = o) }); + tagObj ?? (tagObj = getTagObject(ctx.doc.schema.tags, node)); + const props = stringifyProps(node, tagObj, ctx); + if (props.length > 0) + ctx.indentAtStart = (ctx.indentAtStart ?? 0) + props.length + 1; + const str = typeof tagObj.stringify === 'function' + ? tagObj.stringify(node, ctx, onComment, onChompKeep) + : isScalar(node) + ? stringifyString(node, ctx, onComment, onChompKeep) + : node.toString(ctx, onComment, onChompKeep); + if (!props) + return str; + return isScalar(node) || str[0] === '{' || str[0] === '[' + ? `${props} ${str}` + : `${props}\n${ctx.indent}${str}`; +} + +export { createStringifyContext, stringify }; diff --git a/node_modules/yaml/browser/dist/stringify/stringifyCollection.js b/node_modules/yaml/browser/dist/stringify/stringifyCollection.js new file mode 100644 index 0000000..9019400 --- /dev/null +++ b/node_modules/yaml/browser/dist/stringify/stringifyCollection.js @@ -0,0 +1,143 @@ +import { isNode, isPair } from '../nodes/identity.js'; +import { stringify } from './stringify.js'; +import { lineComment, indentComment } from './stringifyComment.js'; + +function stringifyCollection(collection, ctx, options) { + const flow = ctx.inFlow ?? collection.flow; + const stringify = flow ? stringifyFlowCollection : stringifyBlockCollection; + return stringify(collection, ctx, options); +} +function stringifyBlockCollection({ comment, items }, ctx, { blockItemPrefix, flowChars, itemIndent, onChompKeep, onComment }) { + const { indent, options: { commentString } } = ctx; + const itemCtx = Object.assign({}, ctx, { indent: itemIndent, type: null }); + let chompKeep = false; // flag for the preceding node's status + const lines = []; + for (let i = 0; i < items.length; ++i) { + const item = items[i]; + let comment = null; + if (isNode(item)) { + if (!chompKeep && item.spaceBefore) + lines.push(''); + addCommentBefore(ctx, lines, item.commentBefore, chompKeep); + if (item.comment) + comment = item.comment; + } + else if (isPair(item)) { + const ik = isNode(item.key) ? item.key : null; + if (ik) { + if (!chompKeep && ik.spaceBefore) + lines.push(''); + addCommentBefore(ctx, lines, ik.commentBefore, chompKeep); + } + } + chompKeep = false; + let str = stringify(item, itemCtx, () => (comment = null), () => (chompKeep = true)); + if (comment) + str += lineComment(str, itemIndent, commentString(comment)); + if (chompKeep && comment) + chompKeep = false; + lines.push(blockItemPrefix + str); + } + let str; + if (lines.length === 0) { + str = flowChars.start + flowChars.end; + } + else { + str = lines[0]; + for (let i = 1; i < lines.length; ++i) { + const line = lines[i]; + str += line ? `\n${indent}${line}` : '\n'; + } + } + if (comment) { + str += '\n' + indentComment(commentString(comment), indent); + if (onComment) + onComment(); + } + else if (chompKeep && onChompKeep) + onChompKeep(); + return str; +} +function stringifyFlowCollection({ items }, ctx, { flowChars, itemIndent }) { + const { indent, indentStep, flowCollectionPadding: fcPadding, options: { commentString } } = ctx; + itemIndent += indentStep; + const itemCtx = Object.assign({}, ctx, { + indent: itemIndent, + inFlow: true, + type: null + }); + let reqNewline = false; + let linesAtValue = 0; + const lines = []; + for (let i = 0; i < items.length; ++i) { + const item = items[i]; + let comment = null; + if (isNode(item)) { + if (item.spaceBefore) + lines.push(''); + addCommentBefore(ctx, lines, item.commentBefore, false); + if (item.comment) + comment = item.comment; + } + else if (isPair(item)) { + const ik = isNode(item.key) ? item.key : null; + if (ik) { + if (ik.spaceBefore) + lines.push(''); + addCommentBefore(ctx, lines, ik.commentBefore, false); + if (ik.comment) + reqNewline = true; + } + const iv = isNode(item.value) ? item.value : null; + if (iv) { + if (iv.comment) + comment = iv.comment; + if (iv.commentBefore) + reqNewline = true; + } + else if (item.value == null && ik?.comment) { + comment = ik.comment; + } + } + if (comment) + reqNewline = true; + let str = stringify(item, itemCtx, () => (comment = null)); + if (i < items.length - 1) + str += ','; + if (comment) + str += lineComment(str, itemIndent, commentString(comment)); + if (!reqNewline && (lines.length > linesAtValue || str.includes('\n'))) + reqNewline = true; + lines.push(str); + linesAtValue = lines.length; + } + const { start, end } = flowChars; + if (lines.length === 0) { + return start + end; + } + else { + if (!reqNewline) { + const len = lines.reduce((sum, line) => sum + line.length + 2, 2); + reqNewline = ctx.options.lineWidth > 0 && len > ctx.options.lineWidth; + } + if (reqNewline) { + let str = start; + for (const line of lines) + str += line ? `\n${indentStep}${indent}${line}` : '\n'; + return `${str}\n${indent}${end}`; + } + else { + return `${start}${fcPadding}${lines.join(' ')}${fcPadding}${end}`; + } + } +} +function addCommentBefore({ indent, options: { commentString } }, lines, comment, chompKeep) { + if (comment && chompKeep) + comment = comment.replace(/^\n+/, ''); + if (comment) { + const ic = indentComment(commentString(comment), indent); + lines.push(ic.trimStart()); // Avoid double indent on first line + } +} + +export { stringifyCollection }; diff --git a/node_modules/yaml/browser/dist/stringify/stringifyComment.js b/node_modules/yaml/browser/dist/stringify/stringifyComment.js new file mode 100644 index 0000000..f16fc91 --- /dev/null +++ b/node_modules/yaml/browser/dist/stringify/stringifyComment.js @@ -0,0 +1,20 @@ +/** + * Stringifies a comment. + * + * Empty comment lines are left empty, + * lines consisting of a single space are replaced by `#`, + * and all other lines are prefixed with a `#`. + */ +const stringifyComment = (str) => str.replace(/^(?!$)(?: $)?/gm, '#'); +function indentComment(comment, indent) { + if (/^\n+$/.test(comment)) + return comment.substring(1); + return indent ? comment.replace(/^(?! *$)/gm, indent) : comment; +} +const lineComment = (str, indent, comment) => str.endsWith('\n') + ? indentComment(comment, indent) + : comment.includes('\n') + ? '\n' + indentComment(comment, indent) + : (str.endsWith(' ') ? '' : ' ') + comment; + +export { indentComment, lineComment, stringifyComment }; diff --git a/node_modules/yaml/browser/dist/stringify/stringifyDocument.js b/node_modules/yaml/browser/dist/stringify/stringifyDocument.js new file mode 100644 index 0000000..2a9defa --- /dev/null +++ b/node_modules/yaml/browser/dist/stringify/stringifyDocument.js @@ -0,0 +1,85 @@ +import { isNode } from '../nodes/identity.js'; +import { createStringifyContext, stringify } from './stringify.js'; +import { indentComment, lineComment } from './stringifyComment.js'; + +function stringifyDocument(doc, options) { + const lines = []; + let hasDirectives = options.directives === true; + if (options.directives !== false && doc.directives) { + const dir = doc.directives.toString(doc); + if (dir) { + lines.push(dir); + hasDirectives = true; + } + else if (doc.directives.docStart) + hasDirectives = true; + } + if (hasDirectives) + lines.push('---'); + const ctx = createStringifyContext(doc, options); + const { commentString } = ctx.options; + if (doc.commentBefore) { + if (lines.length !== 1) + lines.unshift(''); + const cs = commentString(doc.commentBefore); + lines.unshift(indentComment(cs, '')); + } + let chompKeep = false; + let contentComment = null; + if (doc.contents) { + if (isNode(doc.contents)) { + if (doc.contents.spaceBefore && hasDirectives) + lines.push(''); + if (doc.contents.commentBefore) { + const cs = commentString(doc.contents.commentBefore); + lines.push(indentComment(cs, '')); + } + // top-level block scalars need to be indented if followed by a comment + ctx.forceBlockIndent = !!doc.comment; + contentComment = doc.contents.comment; + } + const onChompKeep = contentComment ? undefined : () => (chompKeep = true); + let body = stringify(doc.contents, ctx, () => (contentComment = null), onChompKeep); + if (contentComment) + body += lineComment(body, '', commentString(contentComment)); + if ((body[0] === '|' || body[0] === '>') && + lines[lines.length - 1] === '---') { + // Top-level block scalars with a preceding doc marker ought to use the + // same line for their header. + lines[lines.length - 1] = `--- ${body}`; + } + else + lines.push(body); + } + else { + lines.push(stringify(doc.contents, ctx)); + } + if (doc.directives?.docEnd) { + if (doc.comment) { + const cs = commentString(doc.comment); + if (cs.includes('\n')) { + lines.push('...'); + lines.push(indentComment(cs, '')); + } + else { + lines.push(`... ${cs}`); + } + } + else { + lines.push('...'); + } + } + else { + let dc = doc.comment; + if (dc && chompKeep) + dc = dc.replace(/^\n+/, ''); + if (dc) { + if ((!chompKeep || contentComment) && lines[lines.length - 1] !== '') + lines.push(''); + lines.push(indentComment(commentString(dc), '')); + } + } + return lines.join('\n') + '\n'; +} + +export { stringifyDocument }; diff --git a/node_modules/yaml/browser/dist/stringify/stringifyNumber.js b/node_modules/yaml/browser/dist/stringify/stringifyNumber.js new file mode 100644 index 0000000..3fa35f9 --- /dev/null +++ b/node_modules/yaml/browser/dist/stringify/stringifyNumber.js @@ -0,0 +1,24 @@ +function stringifyNumber({ format, minFractionDigits, tag, value }) { + if (typeof value === 'bigint') + return String(value); + const num = typeof value === 'number' ? value : Number(value); + if (!isFinite(num)) + return isNaN(num) ? '.nan' : num < 0 ? '-.inf' : '.inf'; + let n = JSON.stringify(value); + if (!format && + minFractionDigits && + (!tag || tag === 'tag:yaml.org,2002:float') && + /^\d/.test(n)) { + let i = n.indexOf('.'); + if (i < 0) { + i = n.length; + n += '.'; + } + let d = minFractionDigits - (n.length - i - 1); + while (d-- > 0) + n += '0'; + } + return n; +} + +export { stringifyNumber }; diff --git a/node_modules/yaml/browser/dist/stringify/stringifyPair.js b/node_modules/yaml/browser/dist/stringify/stringifyPair.js new file mode 100644 index 0000000..353124c --- /dev/null +++ b/node_modules/yaml/browser/dist/stringify/stringifyPair.js @@ -0,0 +1,150 @@ +import { isCollection, isNode, isScalar, isSeq } from '../nodes/identity.js'; +import { Scalar } from '../nodes/Scalar.js'; +import { stringify } from './stringify.js'; +import { lineComment, indentComment } from './stringifyComment.js'; + +function stringifyPair({ key, value }, ctx, onComment, onChompKeep) { + const { allNullValues, doc, indent, indentStep, options: { commentString, indentSeq, simpleKeys } } = ctx; + let keyComment = (isNode(key) && key.comment) || null; + if (simpleKeys) { + if (keyComment) { + throw new Error('With simple keys, key nodes cannot have comments'); + } + if (isCollection(key) || (!isNode(key) && typeof key === 'object')) { + const msg = 'With simple keys, collection cannot be used as a key value'; + throw new Error(msg); + } + } + let explicitKey = !simpleKeys && + (!key || + (keyComment && value == null && !ctx.inFlow) || + isCollection(key) || + (isScalar(key) + ? key.type === Scalar.BLOCK_FOLDED || key.type === Scalar.BLOCK_LITERAL + : typeof key === 'object')); + ctx = Object.assign({}, ctx, { + allNullValues: false, + implicitKey: !explicitKey && (simpleKeys || !allNullValues), + indent: indent + indentStep + }); + let keyCommentDone = false; + let chompKeep = false; + let str = stringify(key, ctx, () => (keyCommentDone = true), () => (chompKeep = true)); + if (!explicitKey && !ctx.inFlow && str.length > 1024) { + if (simpleKeys) + throw new Error('With simple keys, single line scalar must not span more than 1024 characters'); + explicitKey = true; + } + if (ctx.inFlow) { + if (allNullValues || value == null) { + if (keyCommentDone && onComment) + onComment(); + return str === '' ? '?' : explicitKey ? `? ${str}` : str; + } + } + else if ((allNullValues && !simpleKeys) || (value == null && explicitKey)) { + str = `? ${str}`; + if (keyComment && !keyCommentDone) { + str += lineComment(str, ctx.indent, commentString(keyComment)); + } + else if (chompKeep && onChompKeep) + onChompKeep(); + return str; + } + if (keyCommentDone) + keyComment = null; + if (explicitKey) { + if (keyComment) + str += lineComment(str, ctx.indent, commentString(keyComment)); + str = `? ${str}\n${indent}:`; + } + else { + str = `${str}:`; + if (keyComment) + str += lineComment(str, ctx.indent, commentString(keyComment)); + } + let vsb, vcb, valueComment; + if (isNode(value)) { + vsb = !!value.spaceBefore; + vcb = value.commentBefore; + valueComment = value.comment; + } + else { + vsb = false; + vcb = null; + valueComment = null; + if (value && typeof value === 'object') + value = doc.createNode(value); + } + ctx.implicitKey = false; + if (!explicitKey && !keyComment && isScalar(value)) + ctx.indentAtStart = str.length + 1; + chompKeep = false; + if (!indentSeq && + indentStep.length >= 2 && + !ctx.inFlow && + !explicitKey && + isSeq(value) && + !value.flow && + !value.tag && + !value.anchor) { + // If indentSeq === false, consider '- ' as part of indentation where possible + ctx.indent = ctx.indent.substring(2); + } + let valueCommentDone = false; + const valueStr = stringify(value, ctx, () => (valueCommentDone = true), () => (chompKeep = true)); + let ws = ' '; + if (keyComment || vsb || vcb) { + ws = vsb ? '\n' : ''; + if (vcb) { + const cs = commentString(vcb); + ws += `\n${indentComment(cs, ctx.indent)}`; + } + if (valueStr === '' && !ctx.inFlow) { + if (ws === '\n') + ws = '\n\n'; + } + else { + ws += `\n${ctx.indent}`; + } + } + else if (!explicitKey && isCollection(value)) { + const vs0 = valueStr[0]; + const nl0 = valueStr.indexOf('\n'); + const hasNewline = nl0 !== -1; + const flow = ctx.inFlow ?? value.flow ?? value.items.length === 0; + if (hasNewline || !flow) { + let hasPropsLine = false; + if (hasNewline && (vs0 === '&' || vs0 === '!')) { + let sp0 = valueStr.indexOf(' '); + if (vs0 === '&' && + sp0 !== -1 && + sp0 < nl0 && + valueStr[sp0 + 1] === '!') { + sp0 = valueStr.indexOf(' ', sp0 + 1); + } + if (sp0 === -1 || nl0 < sp0) + hasPropsLine = true; + } + if (!hasPropsLine) + ws = `\n${ctx.indent}`; + } + } + else if (valueStr === '' || valueStr[0] === '\n') { + ws = ''; + } + str += ws + valueStr; + if (ctx.inFlow) { + if (valueCommentDone && onComment) + onComment(); + } + else if (valueComment && !valueCommentDone) { + str += lineComment(str, ctx.indent, commentString(valueComment)); + } + else if (chompKeep && onChompKeep) { + onChompKeep(); + } + return str; +} + +export { stringifyPair }; diff --git a/node_modules/yaml/browser/dist/stringify/stringifyString.js b/node_modules/yaml/browser/dist/stringify/stringifyString.js new file mode 100644 index 0000000..1591ce6 --- /dev/null +++ b/node_modules/yaml/browser/dist/stringify/stringifyString.js @@ -0,0 +1,336 @@ +import { Scalar } from '../nodes/Scalar.js'; +import { foldFlowLines, FOLD_FLOW, FOLD_QUOTED, FOLD_BLOCK } from './foldFlowLines.js'; + +const getFoldOptions = (ctx, isBlock) => ({ + indentAtStart: isBlock ? ctx.indent.length : ctx.indentAtStart, + lineWidth: ctx.options.lineWidth, + minContentWidth: ctx.options.minContentWidth +}); +// Also checks for lines starting with %, as parsing the output as YAML 1.1 will +// presume that's starting a new document. +const containsDocumentMarker = (str) => /^(%|---|\.\.\.)/m.test(str); +function lineLengthOverLimit(str, lineWidth, indentLength) { + if (!lineWidth || lineWidth < 0) + return false; + const limit = lineWidth - indentLength; + const strLen = str.length; + if (strLen <= limit) + return false; + for (let i = 0, start = 0; i < strLen; ++i) { + if (str[i] === '\n') { + if (i - start > limit) + return true; + start = i + 1; + if (strLen - start <= limit) + return false; + } + } + return true; +} +function doubleQuotedString(value, ctx) { + const json = JSON.stringify(value); + if (ctx.options.doubleQuotedAsJSON) + return json; + const { implicitKey } = ctx; + const minMultiLineLength = ctx.options.doubleQuotedMinMultiLineLength; + const indent = ctx.indent || (containsDocumentMarker(value) ? ' ' : ''); + let str = ''; + let start = 0; + for (let i = 0, ch = json[i]; ch; ch = json[++i]) { + if (ch === ' ' && json[i + 1] === '\\' && json[i + 2] === 'n') { + // space before newline needs to be escaped to not be folded + str += json.slice(start, i) + '\\ '; + i += 1; + start = i; + ch = '\\'; + } + if (ch === '\\') + switch (json[i + 1]) { + case 'u': + { + str += json.slice(start, i); + const code = json.substr(i + 2, 4); + switch (code) { + case '0000': + str += '\\0'; + break; + case '0007': + str += '\\a'; + break; + case '000b': + str += '\\v'; + break; + case '001b': + str += '\\e'; + break; + case '0085': + str += '\\N'; + break; + case '00a0': + str += '\\_'; + break; + case '2028': + str += '\\L'; + break; + case '2029': + str += '\\P'; + break; + default: + if (code.substr(0, 2) === '00') + str += '\\x' + code.substr(2); + else + str += json.substr(i, 6); + } + i += 5; + start = i + 1; + } + break; + case 'n': + if (implicitKey || + json[i + 2] === '"' || + json.length < minMultiLineLength) { + i += 1; + } + else { + // folding will eat first newline + str += json.slice(start, i) + '\n\n'; + while (json[i + 2] === '\\' && + json[i + 3] === 'n' && + json[i + 4] !== '"') { + str += '\n'; + i += 2; + } + str += indent; + // space after newline needs to be escaped to not be folded + if (json[i + 2] === ' ') + str += '\\'; + i += 1; + start = i + 1; + } + break; + default: + i += 1; + } + } + str = start ? str + json.slice(start) : json; + return implicitKey + ? str + : foldFlowLines(str, indent, FOLD_QUOTED, getFoldOptions(ctx, false)); +} +function singleQuotedString(value, ctx) { + if (ctx.options.singleQuote === false || + (ctx.implicitKey && value.includes('\n')) || + /[ \t]\n|\n[ \t]/.test(value) // single quoted string can't have leading or trailing whitespace around newline + ) + return doubleQuotedString(value, ctx); + const indent = ctx.indent || (containsDocumentMarker(value) ? ' ' : ''); + const res = "'" + value.replace(/'/g, "''").replace(/\n+/g, `$&\n${indent}`) + "'"; + return ctx.implicitKey + ? res + : foldFlowLines(res, indent, FOLD_FLOW, getFoldOptions(ctx, false)); +} +function quotedString(value, ctx) { + const { singleQuote } = ctx.options; + let qs; + if (singleQuote === false) + qs = doubleQuotedString; + else { + const hasDouble = value.includes('"'); + const hasSingle = value.includes("'"); + if (hasDouble && !hasSingle) + qs = singleQuotedString; + else if (hasSingle && !hasDouble) + qs = doubleQuotedString; + else + qs = singleQuote ? singleQuotedString : doubleQuotedString; + } + return qs(value, ctx); +} +// The negative lookbehind avoids a polynomial search, +// but isn't supported yet on Safari: https://caniuse.com/js-regexp-lookbehind +let blockEndNewlines; +try { + blockEndNewlines = new RegExp('(^|(?\n'; + // determine chomping from whitespace at value end + let chomp; + let endStart; + for (endStart = value.length; endStart > 0; --endStart) { + const ch = value[endStart - 1]; + if (ch !== '\n' && ch !== '\t' && ch !== ' ') + break; + } + let end = value.substring(endStart); + const endNlPos = end.indexOf('\n'); + if (endNlPos === -1) { + chomp = '-'; // strip + } + else if (value === end || endNlPos !== end.length - 1) { + chomp = '+'; // keep + if (onChompKeep) + onChompKeep(); + } + else { + chomp = ''; // clip + } + if (end) { + value = value.slice(0, -end.length); + if (end[end.length - 1] === '\n') + end = end.slice(0, -1); + end = end.replace(blockEndNewlines, `$&${indent}`); + } + // determine indent indicator from whitespace at value start + let startWithSpace = false; + let startEnd; + let startNlPos = -1; + for (startEnd = 0; startEnd < value.length; ++startEnd) { + const ch = value[startEnd]; + if (ch === ' ') + startWithSpace = true; + else if (ch === '\n') + startNlPos = startEnd; + else + break; + } + let start = value.substring(0, startNlPos < startEnd ? startNlPos + 1 : startEnd); + if (start) { + value = value.substring(start.length); + start = start.replace(/\n+/g, `$&${indent}`); + } + const indentSize = indent ? '2' : '1'; // root is at -1 + // Leading | or > is added later + let header = (startWithSpace ? indentSize : '') + chomp; + if (comment) { + header += ' ' + commentString(comment.replace(/ ?[\r\n]+/g, ' ')); + if (onComment) + onComment(); + } + if (!literal) { + const foldedValue = value + .replace(/\n+/g, '\n$&') + .replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, '$1$2') // more-indented lines aren't folded + // ^ more-ind. ^ empty ^ capture next empty lines only at end of indent + .replace(/\n+/g, `$&${indent}`); + let literalFallback = false; + const foldOptions = getFoldOptions(ctx, true); + if (blockQuote !== 'folded' && type !== Scalar.BLOCK_FOLDED) { + foldOptions.onOverflow = () => { + literalFallback = true; + }; + } + const body = foldFlowLines(`${start}${foldedValue}${end}`, indent, FOLD_BLOCK, foldOptions); + if (!literalFallback) + return `>${header}\n${indent}${body}`; + } + value = value.replace(/\n+/g, `$&${indent}`); + return `|${header}\n${indent}${start}${value}${end}`; +} +function plainString(item, ctx, onComment, onChompKeep) { + const { type, value } = item; + const { actualString, implicitKey, indent, indentStep, inFlow } = ctx; + if ((implicitKey && value.includes('\n')) || + (inFlow && /[[\]{},]/.test(value))) { + return quotedString(value, ctx); + } + if (/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) { + // not allowed: + // - '-' or '?' + // - start with an indicator character (except [?:-]) or /[?-] / + // - '\n ', ': ' or ' \n' anywhere + // - '#' not preceded by a non-space char + // - end with ' ' or ':' + return implicitKey || inFlow || !value.includes('\n') + ? quotedString(value, ctx) + : blockString(item, ctx, onComment, onChompKeep); + } + if (!implicitKey && + !inFlow && + type !== Scalar.PLAIN && + value.includes('\n')) { + // Where allowed & type not set explicitly, prefer block style for multiline strings + return blockString(item, ctx, onComment, onChompKeep); + } + if (containsDocumentMarker(value)) { + if (indent === '') { + ctx.forceBlockIndent = true; + return blockString(item, ctx, onComment, onChompKeep); + } + else if (implicitKey && indent === indentStep) { + return quotedString(value, ctx); + } + } + const str = value.replace(/\n+/g, `$&\n${indent}`); + // Verify that output will be parsed as a string, as e.g. plain numbers and + // booleans get parsed with those types in v1.2 (e.g. '42', 'true' & '0.9e-3'), + // and others in v1.1. + if (actualString) { + const test = (tag) => tag.default && tag.tag !== 'tag:yaml.org,2002:str' && tag.test?.test(str); + const { compat, tags } = ctx.doc.schema; + if (tags.some(test) || compat?.some(test)) + return quotedString(value, ctx); + } + return implicitKey + ? str + : foldFlowLines(str, indent, FOLD_FLOW, getFoldOptions(ctx, false)); +} +function stringifyString(item, ctx, onComment, onChompKeep) { + const { implicitKey, inFlow } = ctx; + const ss = typeof item.value === 'string' + ? item + : Object.assign({}, item, { value: String(item.value) }); + let { type } = item; + if (type !== Scalar.QUOTE_DOUBLE) { + // force double quotes on control characters & unpaired surrogates + if (/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(ss.value)) + type = Scalar.QUOTE_DOUBLE; + } + const _stringify = (_type) => { + switch (_type) { + case Scalar.BLOCK_FOLDED: + case Scalar.BLOCK_LITERAL: + return implicitKey || inFlow + ? quotedString(ss.value, ctx) // blocks are not valid inside flow containers + : blockString(ss, ctx, onComment, onChompKeep); + case Scalar.QUOTE_DOUBLE: + return doubleQuotedString(ss.value, ctx); + case Scalar.QUOTE_SINGLE: + return singleQuotedString(ss.value, ctx); + case Scalar.PLAIN: + return plainString(ss, ctx, onComment, onChompKeep); + default: + return null; + } + }; + let res = _stringify(type); + if (res === null) { + const { defaultKeyType, defaultStringType } = ctx.options; + const t = (implicitKey && defaultKeyType) || defaultStringType; + res = _stringify(t); + if (res === null) + throw new Error(`Unsupported default string type ${t}`); + } + return res; +} + +export { stringifyString }; diff --git a/node_modules/yaml/browser/dist/util.js b/node_modules/yaml/browser/dist/util.js new file mode 100644 index 0000000..dfb18ed --- /dev/null +++ b/node_modules/yaml/browser/dist/util.js @@ -0,0 +1,11 @@ +export { createNode } from './doc/createNode.js'; +export { debug, warn } from './log.js'; +export { createPair } from './nodes/Pair.js'; +export { toJS } from './nodes/toJS.js'; +export { findPair } from './nodes/YAMLMap.js'; +export { map as mapTag } from './schema/common/map.js'; +export { seq as seqTag } from './schema/common/seq.js'; +export { string as stringTag } from './schema/common/string.js'; +export { foldFlowLines } from './stringify/foldFlowLines.js'; +export { stringifyNumber } from './stringify/stringifyNumber.js'; +export { stringifyString } from './stringify/stringifyString.js'; diff --git a/node_modules/yaml/browser/dist/visit.js b/node_modules/yaml/browser/dist/visit.js new file mode 100644 index 0000000..b5eef41 --- /dev/null +++ b/node_modules/yaml/browser/dist/visit.js @@ -0,0 +1,233 @@ +import { isDocument, isNode, isPair, isCollection, isMap, isSeq, isScalar, isAlias } from './nodes/identity.js'; + +const BREAK = Symbol('break visit'); +const SKIP = Symbol('skip children'); +const REMOVE = Symbol('remove node'); +/** + * Apply a visitor to an AST node or document. + * + * Walks through the tree (depth-first) starting from `node`, calling a + * `visitor` function with three arguments: + * - `key`: For sequence values and map `Pair`, the node's index in the + * collection. Within a `Pair`, `'key'` or `'value'`, correspondingly. + * `null` for the root node. + * - `node`: The current node. + * - `path`: The ancestry of the current node. + * + * The return value of the visitor may be used to control the traversal: + * - `undefined` (default): Do nothing and continue + * - `visit.SKIP`: Do not visit the children of this node, continue with next + * sibling + * - `visit.BREAK`: Terminate traversal completely + * - `visit.REMOVE`: Remove the current node, then continue with the next one + * - `Node`: Replace the current node, then continue by visiting it + * - `number`: While iterating the items of a sequence or map, set the index + * of the next step. This is useful especially if the index of the current + * node has changed. + * + * If `visitor` is a single function, it will be called with all values + * encountered in the tree, including e.g. `null` values. Alternatively, + * separate visitor functions may be defined for each `Map`, `Pair`, `Seq`, + * `Alias` and `Scalar` node. To define the same visitor function for more than + * one node type, use the `Collection` (map and seq), `Value` (map, seq & scalar) + * and `Node` (alias, map, seq & scalar) targets. Of all these, only the most + * specific defined one will be used for each node. + */ +function visit(node, visitor) { + const visitor_ = initVisitor(visitor); + if (isDocument(node)) { + const cd = visit_(null, node.contents, visitor_, Object.freeze([node])); + if (cd === REMOVE) + node.contents = null; + } + else + visit_(null, node, visitor_, Object.freeze([])); +} +// Without the `as symbol` casts, TS declares these in the `visit` +// namespace using `var`, but then complains about that because +// `unique symbol` must be `const`. +/** Terminate visit traversal completely */ +visit.BREAK = BREAK; +/** Do not visit the children of the current node */ +visit.SKIP = SKIP; +/** Remove the current node */ +visit.REMOVE = REMOVE; +function visit_(key, node, visitor, path) { + const ctrl = callVisitor(key, node, visitor, path); + if (isNode(ctrl) || isPair(ctrl)) { + replaceNode(key, path, ctrl); + return visit_(key, ctrl, visitor, path); + } + if (typeof ctrl !== 'symbol') { + if (isCollection(node)) { + path = Object.freeze(path.concat(node)); + for (let i = 0; i < node.items.length; ++i) { + const ci = visit_(i, node.items[i], visitor, path); + if (typeof ci === 'number') + i = ci - 1; + else if (ci === BREAK) + return BREAK; + else if (ci === REMOVE) { + node.items.splice(i, 1); + i -= 1; + } + } + } + else if (isPair(node)) { + path = Object.freeze(path.concat(node)); + const ck = visit_('key', node.key, visitor, path); + if (ck === BREAK) + return BREAK; + else if (ck === REMOVE) + node.key = null; + const cv = visit_('value', node.value, visitor, path); + if (cv === BREAK) + return BREAK; + else if (cv === REMOVE) + node.value = null; + } + } + return ctrl; +} +/** + * Apply an async visitor to an AST node or document. + * + * Walks through the tree (depth-first) starting from `node`, calling a + * `visitor` function with three arguments: + * - `key`: For sequence values and map `Pair`, the node's index in the + * collection. Within a `Pair`, `'key'` or `'value'`, correspondingly. + * `null` for the root node. + * - `node`: The current node. + * - `path`: The ancestry of the current node. + * + * The return value of the visitor may be used to control the traversal: + * - `Promise`: Must resolve to one of the following values + * - `undefined` (default): Do nothing and continue + * - `visit.SKIP`: Do not visit the children of this node, continue with next + * sibling + * - `visit.BREAK`: Terminate traversal completely + * - `visit.REMOVE`: Remove the current node, then continue with the next one + * - `Node`: Replace the current node, then continue by visiting it + * - `number`: While iterating the items of a sequence or map, set the index + * of the next step. This is useful especially if the index of the current + * node has changed. + * + * If `visitor` is a single function, it will be called with all values + * encountered in the tree, including e.g. `null` values. Alternatively, + * separate visitor functions may be defined for each `Map`, `Pair`, `Seq`, + * `Alias` and `Scalar` node. To define the same visitor function for more than + * one node type, use the `Collection` (map and seq), `Value` (map, seq & scalar) + * and `Node` (alias, map, seq & scalar) targets. Of all these, only the most + * specific defined one will be used for each node. + */ +async function visitAsync(node, visitor) { + const visitor_ = initVisitor(visitor); + if (isDocument(node)) { + const cd = await visitAsync_(null, node.contents, visitor_, Object.freeze([node])); + if (cd === REMOVE) + node.contents = null; + } + else + await visitAsync_(null, node, visitor_, Object.freeze([])); +} +// Without the `as symbol` casts, TS declares these in the `visit` +// namespace using `var`, but then complains about that because +// `unique symbol` must be `const`. +/** Terminate visit traversal completely */ +visitAsync.BREAK = BREAK; +/** Do not visit the children of the current node */ +visitAsync.SKIP = SKIP; +/** Remove the current node */ +visitAsync.REMOVE = REMOVE; +async function visitAsync_(key, node, visitor, path) { + const ctrl = await callVisitor(key, node, visitor, path); + if (isNode(ctrl) || isPair(ctrl)) { + replaceNode(key, path, ctrl); + return visitAsync_(key, ctrl, visitor, path); + } + if (typeof ctrl !== 'symbol') { + if (isCollection(node)) { + path = Object.freeze(path.concat(node)); + for (let i = 0; i < node.items.length; ++i) { + const ci = await visitAsync_(i, node.items[i], visitor, path); + if (typeof ci === 'number') + i = ci - 1; + else if (ci === BREAK) + return BREAK; + else if (ci === REMOVE) { + node.items.splice(i, 1); + i -= 1; + } + } + } + else if (isPair(node)) { + path = Object.freeze(path.concat(node)); + const ck = await visitAsync_('key', node.key, visitor, path); + if (ck === BREAK) + return BREAK; + else if (ck === REMOVE) + node.key = null; + const cv = await visitAsync_('value', node.value, visitor, path); + if (cv === BREAK) + return BREAK; + else if (cv === REMOVE) + node.value = null; + } + } + return ctrl; +} +function initVisitor(visitor) { + if (typeof visitor === 'object' && + (visitor.Collection || visitor.Node || visitor.Value)) { + return Object.assign({ + Alias: visitor.Node, + Map: visitor.Node, + Scalar: visitor.Node, + Seq: visitor.Node + }, visitor.Value && { + Map: visitor.Value, + Scalar: visitor.Value, + Seq: visitor.Value + }, visitor.Collection && { + Map: visitor.Collection, + Seq: visitor.Collection + }, visitor); + } + return visitor; +} +function callVisitor(key, node, visitor, path) { + if (typeof visitor === 'function') + return visitor(key, node, path); + if (isMap(node)) + return visitor.Map?.(key, node, path); + if (isSeq(node)) + return visitor.Seq?.(key, node, path); + if (isPair(node)) + return visitor.Pair?.(key, node, path); + if (isScalar(node)) + return visitor.Scalar?.(key, node, path); + if (isAlias(node)) + return visitor.Alias?.(key, node, path); + return undefined; +} +function replaceNode(key, path, node) { + const parent = path[path.length - 1]; + if (isCollection(parent)) { + parent.items[key] = node; + } + else if (isPair(parent)) { + if (key === 'key') + parent.key = node; + else + parent.value = node; + } + else if (isDocument(parent)) { + parent.contents = node; + } + else { + const pt = isAlias(parent) ? 'alias' : 'scalar'; + throw new Error(`Cannot replace node with ${pt} parent`); + } +} + +export { visit, visitAsync }; diff --git a/node_modules/yaml/browser/index.js b/node_modules/yaml/browser/index.js new file mode 100644 index 0000000..5f73271 --- /dev/null +++ b/node_modules/yaml/browser/index.js @@ -0,0 +1,5 @@ +// `export * as default from ...` fails on Webpack v4 +// https://github.com/eemeli/yaml/issues/228 +import * as YAML from './dist/index.js' +export default YAML +export * from './dist/index.js' diff --git a/node_modules/yaml/browser/package.json b/node_modules/yaml/browser/package.json new file mode 100644 index 0000000..3dbc1ca --- /dev/null +++ b/node_modules/yaml/browser/package.json @@ -0,0 +1,3 @@ +{ + "type": "module" +} diff --git a/node_modules/yaml/dist/cli.d.ts b/node_modules/yaml/dist/cli.d.ts new file mode 100644 index 0000000..4007923 --- /dev/null +++ b/node_modules/yaml/dist/cli.d.ts @@ -0,0 +1,8 @@ +export declare const help = "yaml: A command-line YAML processor and inspector\n\nReads stdin and writes output to stdout and errors & warnings to stderr.\n\nUsage:\n yaml Process a YAML stream, outputting it as YAML\n yaml cst Parse the CST of a YAML stream\n yaml lex Parse the lexical tokens of a YAML stream\n yaml valid Validate a YAML stream, returning 0 on success\n\nOptions:\n --help, -h Show this message.\n --json, -j Output JSON.\n --indent 2 Output pretty-printed data, indented by the given number of spaces.\n --merge, -m Enable support for \"<<\" merge keys.\n\nAdditional options for bare \"yaml\" command:\n --doc, -d Output pretty-printed JS Document objects.\n --single, -1 Require the input to consist of a single YAML document.\n --strict, -s Stop on errors.\n --visit, -v Apply a visitor to each document (requires a path to import)\n --yaml 1.1 Set the YAML version. (default: 1.2)"; +export declare class UserError extends Error { + static ARGS: number; + static SINGLE: number; + code: number; + constructor(code: number, message: string); +} +export declare function cli(stdin: NodeJS.ReadableStream, done: (error?: Error) => void, argv?: string[]): Promise; diff --git a/node_modules/yaml/dist/cli.mjs b/node_modules/yaml/dist/cli.mjs new file mode 100644 index 0000000..639cca4 --- /dev/null +++ b/node_modules/yaml/dist/cli.mjs @@ -0,0 +1,201 @@ +import { resolve } from 'path'; +import { parseArgs } from 'util'; +import { prettyToken } from './parse/cst.js'; +import { Lexer } from './parse/lexer.js'; +import { Parser } from './parse/parser.js'; +import { Composer } from './compose/composer.js'; +import { LineCounter } from './parse/line-counter.js'; +import { prettifyError } from './errors.js'; +import { visit } from './visit.js'; + +const help = `\ +yaml: A command-line YAML processor and inspector + +Reads stdin and writes output to stdout and errors & warnings to stderr. + +Usage: + yaml Process a YAML stream, outputting it as YAML + yaml cst Parse the CST of a YAML stream + yaml lex Parse the lexical tokens of a YAML stream + yaml valid Validate a YAML stream, returning 0 on success + +Options: + --help, -h Show this message. + --json, -j Output JSON. + --indent 2 Output pretty-printed data, indented by the given number of spaces. + --merge, -m Enable support for "<<" merge keys. + +Additional options for bare "yaml" command: + --doc, -d Output pretty-printed JS Document objects. + --single, -1 Require the input to consist of a single YAML document. + --strict, -s Stop on errors. + --visit, -v Apply a visitor to each document (requires a path to import) + --yaml 1.1 Set the YAML version. (default: 1.2)`; +class UserError extends Error { + constructor(code, message) { + super(`Error: ${message}`); + this.code = code; + } +} +UserError.ARGS = 2; +UserError.SINGLE = 3; +async function cli(stdin, done, argv) { + let args; + try { + args = parseArgs({ + args: argv, + allowPositionals: true, + options: { + doc: { type: 'boolean', short: 'd' }, + help: { type: 'boolean', short: 'h' }, + indent: { type: 'string', short: 'i' }, + merge: { type: 'boolean', short: 'm' }, + json: { type: 'boolean', short: 'j' }, + single: { type: 'boolean', short: '1' }, + strict: { type: 'boolean', short: 's' }, + visit: { type: 'string', short: 'v' }, + yaml: { type: 'string', default: '1.2' } + } + }); + } + catch (error) { + return done(new UserError(UserError.ARGS, error.message)); + } + const { positionals: [mode], values: opt } = args; + let indent = Number(opt.indent); + stdin.setEncoding('utf-8'); + // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing + switch (opt.help || mode) { + /* istanbul ignore next */ + case true: // --help + console.log(help); + break; + case 'lex': { + const lexer = new Lexer(); + const data = []; + const add = (tok) => { + if (opt.json) + data.push(tok); + else + console.log(prettyToken(tok)); + }; + stdin.on('data', (chunk) => { + for (const tok of lexer.lex(chunk, true)) + add(tok); + }); + stdin.on('end', () => { + for (const tok of lexer.lex('', false)) + add(tok); + if (opt.json) + console.log(JSON.stringify(data, null, indent)); + done(); + }); + break; + } + case 'cst': { + const parser = new Parser(); + const data = []; + const add = (tok) => { + if (opt.json) + data.push(tok); + else + console.dir(tok, { depth: null }); + }; + stdin.on('data', (chunk) => { + for (const tok of parser.parse(chunk, true)) + add(tok); + }); + stdin.on('end', () => { + for (const tok of parser.parse('', false)) + add(tok); + if (opt.json) + console.log(JSON.stringify(data, null, indent)); + done(); + }); + break; + } + case undefined: + case 'valid': { + const lineCounter = new LineCounter(); + const parser = new Parser(lineCounter.addNewLine); + // @ts-expect-error Version is validated at runtime + const composer = new Composer({ version: opt.yaml, merge: opt.merge }); + const visitor = opt.visit + ? (await import(resolve(opt.visit))).default + : null; + let source = ''; + let hasDoc = false; + let reqDocEnd = false; + const data = []; + const add = (doc) => { + if (hasDoc && opt.single) { + return done(new UserError(UserError.SINGLE, 'Input stream contains multiple documents')); + } + for (const error of doc.errors) { + prettifyError(source, lineCounter)(error); + if (opt.strict || mode === 'valid') + return done(error); + console.error(error); + } + for (const warning of doc.warnings) { + prettifyError(source, lineCounter)(warning); + console.error(warning); + } + if (visitor) + visit(doc, visitor); + if (mode === 'valid') + doc.toJS(); + else if (opt.json) + data.push(doc); + else if (opt.doc) { + Object.defineProperties(doc, { + options: { enumerable: false }, + schema: { enumerable: false } + }); + console.dir(doc, { depth: null }); + } + else { + if (reqDocEnd) + console.log('...'); + try { + indent || (indent = 2); + const str = doc.toString({ indent }); + console.log(str.endsWith('\n') ? str.slice(0, -1) : str); + } + catch (error) { + done(error); + } + } + hasDoc = true; + reqDocEnd = !doc.directives?.docEnd; + }; + stdin.on('data', (chunk) => { + source += chunk; + for (const tok of parser.parse(chunk, true)) { + for (const doc of composer.next(tok)) + add(doc); + } + }); + stdin.on('end', () => { + for (const tok of parser.parse('', false)) { + for (const doc of composer.next(tok)) + add(doc); + } + for (const doc of composer.end(false)) + add(doc); + if (opt.single && !hasDoc) { + return done(new UserError(UserError.SINGLE, 'Input stream contained no documents')); + } + if (mode !== 'valid' && opt.json) { + console.log(JSON.stringify(opt.single ? data[0] : data, null, indent)); + } + done(); + }); + break; + } + default: + done(new UserError(UserError.ARGS, `Unknown command: ${JSON.stringify(mode)}`)); + } +} + +export { UserError, cli, help }; diff --git a/node_modules/yaml/dist/compose/compose-collection.d.ts b/node_modules/yaml/dist/compose/compose-collection.d.ts new file mode 100644 index 0000000..ecbd9e0 --- /dev/null +++ b/node_modules/yaml/dist/compose/compose-collection.d.ts @@ -0,0 +1,11 @@ +import type { ParsedNode } from '../nodes/Node'; +import type { BlockMap, BlockSequence, FlowCollection, SourceToken } from '../parse/cst'; +import type { ComposeContext, ComposeNode } from './compose-node'; +import type { ComposeErrorHandler } from './composer'; +interface Props { + anchor: SourceToken | null; + tag: SourceToken | null; + newlineAfterProp: SourceToken | null; +} +export declare function composeCollection(CN: ComposeNode, ctx: ComposeContext, token: BlockMap | BlockSequence | FlowCollection, props: Props, onError: ComposeErrorHandler): ParsedNode; +export {}; diff --git a/node_modules/yaml/dist/compose/compose-collection.js b/node_modules/yaml/dist/compose/compose-collection.js new file mode 100644 index 0000000..9add89f --- /dev/null +++ b/node_modules/yaml/dist/compose/compose-collection.js @@ -0,0 +1,90 @@ +'use strict'; + +var identity = require('../nodes/identity.js'); +var Scalar = require('../nodes/Scalar.js'); +var YAMLMap = require('../nodes/YAMLMap.js'); +var YAMLSeq = require('../nodes/YAMLSeq.js'); +var resolveBlockMap = require('./resolve-block-map.js'); +var resolveBlockSeq = require('./resolve-block-seq.js'); +var resolveFlowCollection = require('./resolve-flow-collection.js'); + +function resolveCollection(CN, ctx, token, onError, tagName, tag) { + const coll = token.type === 'block-map' + ? resolveBlockMap.resolveBlockMap(CN, ctx, token, onError, tag) + : token.type === 'block-seq' + ? resolveBlockSeq.resolveBlockSeq(CN, ctx, token, onError, tag) + : resolveFlowCollection.resolveFlowCollection(CN, ctx, token, onError, tag); + const Coll = coll.constructor; + // If we got a tagName matching the class, or the tag name is '!', + // then use the tagName from the node class used to create it. + if (tagName === '!' || tagName === Coll.tagName) { + coll.tag = Coll.tagName; + return coll; + } + if (tagName) + coll.tag = tagName; + return coll; +} +function composeCollection(CN, ctx, token, props, onError) { + const tagToken = props.tag; + const tagName = !tagToken + ? null + : ctx.directives.tagName(tagToken.source, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg)); + if (token.type === 'block-seq') { + const { anchor, newlineAfterProp: nl } = props; + const lastProp = anchor && tagToken + ? anchor.offset > tagToken.offset + ? anchor + : tagToken + : (anchor ?? tagToken); + if (lastProp && (!nl || nl.offset < lastProp.offset)) { + const message = 'Missing newline after block sequence props'; + onError(lastProp, 'MISSING_CHAR', message); + } + } + const expType = token.type === 'block-map' + ? 'map' + : token.type === 'block-seq' + ? 'seq' + : token.start.source === '{' + ? 'map' + : 'seq'; + // shortcut: check if it's a generic YAMLMap or YAMLSeq + // before jumping into the custom tag logic. + if (!tagToken || + !tagName || + tagName === '!' || + (tagName === YAMLMap.YAMLMap.tagName && expType === 'map') || + (tagName === YAMLSeq.YAMLSeq.tagName && expType === 'seq')) { + return resolveCollection(CN, ctx, token, onError, tagName); + } + let tag = ctx.schema.tags.find(t => t.tag === tagName && t.collection === expType); + if (!tag) { + const kt = ctx.schema.knownTags[tagName]; + if (kt && kt.collection === expType) { + ctx.schema.tags.push(Object.assign({}, kt, { default: false })); + tag = kt; + } + else { + if (kt) { + onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection ?? 'scalar'}`, true); + } + else { + onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, true); + } + return resolveCollection(CN, ctx, token, onError, tagName); + } + } + const coll = resolveCollection(CN, ctx, token, onError, tagName, tag); + const res = tag.resolve?.(coll, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg), ctx.options) ?? coll; + const node = identity.isNode(res) + ? res + : new Scalar.Scalar(res); + node.range = coll.range; + node.tag = tagName; + if (tag?.format) + node.format = tag.format; + return node; +} + +exports.composeCollection = composeCollection; diff --git a/node_modules/yaml/dist/compose/compose-doc.d.ts b/node_modules/yaml/dist/compose/compose-doc.d.ts new file mode 100644 index 0000000..5ffcc38 --- /dev/null +++ b/node_modules/yaml/dist/compose/compose-doc.d.ts @@ -0,0 +1,7 @@ +import type { Directives } from '../doc/directives'; +import { Document } from '../doc/Document'; +import type { ParsedNode } from '../nodes/Node'; +import type { DocumentOptions, ParseOptions, SchemaOptions } from '../options'; +import type * as CST from '../parse/cst'; +import type { ComposeErrorHandler } from './composer'; +export declare function composeDoc(options: ParseOptions & DocumentOptions & SchemaOptions, directives: Directives, { offset, start, value, end }: CST.Document, onError: ComposeErrorHandler): Document.Parsed; diff --git a/node_modules/yaml/dist/compose/compose-doc.js b/node_modules/yaml/dist/compose/compose-doc.js new file mode 100644 index 0000000..63c9495 --- /dev/null +++ b/node_modules/yaml/dist/compose/compose-doc.js @@ -0,0 +1,45 @@ +'use strict'; + +var Document = require('../doc/Document.js'); +var composeNode = require('./compose-node.js'); +var resolveEnd = require('./resolve-end.js'); +var resolveProps = require('./resolve-props.js'); + +function composeDoc(options, directives, { offset, start, value, end }, onError) { + const opts = Object.assign({ _directives: directives }, options); + const doc = new Document.Document(undefined, opts); + const ctx = { + atKey: false, + atRoot: true, + directives: doc.directives, + options: doc.options, + schema: doc.schema + }; + const props = resolveProps.resolveProps(start, { + indicator: 'doc-start', + next: value ?? end?.[0], + offset, + onError, + parentIndent: 0, + startOnNewline: true + }); + if (props.found) { + doc.directives.docStart = true; + if (value && + (value.type === 'block-map' || value.type === 'block-seq') && + !props.hasNewline) + onError(props.end, 'MISSING_CHAR', 'Block collection cannot start on same line with directives-end marker'); + } + // @ts-expect-error If Contents is set, let's trust the user + doc.contents = value + ? composeNode.composeNode(ctx, value, props, onError) + : composeNode.composeEmptyNode(ctx, props.end, start, null, props, onError); + const contentEnd = doc.contents.range[2]; + const re = resolveEnd.resolveEnd(end, contentEnd, false, onError); + if (re.comment) + doc.comment = re.comment; + doc.range = [offset, contentEnd, re.offset]; + return doc; +} + +exports.composeDoc = composeDoc; diff --git a/node_modules/yaml/dist/compose/compose-node.d.ts b/node_modules/yaml/dist/compose/compose-node.d.ts new file mode 100644 index 0000000..fa5085d --- /dev/null +++ b/node_modules/yaml/dist/compose/compose-node.d.ts @@ -0,0 +1,29 @@ +import type { Directives } from '../doc/directives'; +import type { ParsedNode } from '../nodes/Node'; +import type { ParseOptions } from '../options'; +import type { SourceToken, Token } from '../parse/cst'; +import type { Schema } from '../schema/Schema'; +import type { ComposeErrorHandler } from './composer'; +export interface ComposeContext { + atKey: boolean; + atRoot: boolean; + directives: Directives; + options: Readonly>>; + schema: Readonly; +} +interface Props { + spaceBefore: boolean; + comment: string; + anchor: SourceToken | null; + tag: SourceToken | null; + newlineAfterProp: SourceToken | null; + end: number; +} +declare const CN: { + composeNode: typeof composeNode; + composeEmptyNode: typeof composeEmptyNode; +}; +export type ComposeNode = typeof CN; +export declare function composeNode(ctx: ComposeContext, token: Token, props: Props, onError: ComposeErrorHandler): ParsedNode; +export declare function composeEmptyNode(ctx: ComposeContext, offset: number, before: Token[] | undefined, pos: number | null, { spaceBefore, comment, anchor, tag, end }: Props, onError: ComposeErrorHandler): import('../index').Scalar.Parsed; +export {}; diff --git a/node_modules/yaml/dist/compose/compose-node.js b/node_modules/yaml/dist/compose/compose-node.js new file mode 100644 index 0000000..c5f4d8b --- /dev/null +++ b/node_modules/yaml/dist/compose/compose-node.js @@ -0,0 +1,105 @@ +'use strict'; + +var Alias = require('../nodes/Alias.js'); +var identity = require('../nodes/identity.js'); +var composeCollection = require('./compose-collection.js'); +var composeScalar = require('./compose-scalar.js'); +var resolveEnd = require('./resolve-end.js'); +var utilEmptyScalarPosition = require('./util-empty-scalar-position.js'); + +const CN = { composeNode, composeEmptyNode }; +function composeNode(ctx, token, props, onError) { + const atKey = ctx.atKey; + const { spaceBefore, comment, anchor, tag } = props; + let node; + let isSrcToken = true; + switch (token.type) { + case 'alias': + node = composeAlias(ctx, token, onError); + if (anchor || tag) + onError(token, 'ALIAS_PROPS', 'An alias node must not specify any properties'); + break; + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': + case 'block-scalar': + node = composeScalar.composeScalar(ctx, token, tag, onError); + if (anchor) + node.anchor = anchor.source.substring(1); + break; + case 'block-map': + case 'block-seq': + case 'flow-collection': + node = composeCollection.composeCollection(CN, ctx, token, props, onError); + if (anchor) + node.anchor = anchor.source.substring(1); + break; + default: { + const message = token.type === 'error' + ? token.message + : `Unsupported token (type: ${token.type})`; + onError(token, 'UNEXPECTED_TOKEN', message); + node = composeEmptyNode(ctx, token.offset, undefined, null, props, onError); + isSrcToken = false; + } + } + if (anchor && node.anchor === '') + onError(anchor, 'BAD_ALIAS', 'Anchor cannot be an empty string'); + if (atKey && + ctx.options.stringKeys && + (!identity.isScalar(node) || + typeof node.value !== 'string' || + (node.tag && node.tag !== 'tag:yaml.org,2002:str'))) { + const msg = 'With stringKeys, all keys must be strings'; + onError(tag ?? token, 'NON_STRING_KEY', msg); + } + if (spaceBefore) + node.spaceBefore = true; + if (comment) { + if (token.type === 'scalar' && token.source === '') + node.comment = comment; + else + node.commentBefore = comment; + } + // @ts-expect-error Type checking misses meaning of isSrcToken + if (ctx.options.keepSourceTokens && isSrcToken) + node.srcToken = token; + return node; +} +function composeEmptyNode(ctx, offset, before, pos, { spaceBefore, comment, anchor, tag, end }, onError) { + const token = { + type: 'scalar', + offset: utilEmptyScalarPosition.emptyScalarPosition(offset, before, pos), + indent: -1, + source: '' + }; + const node = composeScalar.composeScalar(ctx, token, tag, onError); + if (anchor) { + node.anchor = anchor.source.substring(1); + if (node.anchor === '') + onError(anchor, 'BAD_ALIAS', 'Anchor cannot be an empty string'); + } + if (spaceBefore) + node.spaceBefore = true; + if (comment) { + node.comment = comment; + node.range[2] = end; + } + return node; +} +function composeAlias({ options }, { offset, source, end }, onError) { + const alias = new Alias.Alias(source.substring(1)); + if (alias.source === '') + onError(offset, 'BAD_ALIAS', 'Alias cannot be an empty string'); + if (alias.source.endsWith(':')) + onError(offset + source.length - 1, 'BAD_ALIAS', 'Alias ending in : is ambiguous', true); + const valueEnd = offset + source.length; + const re = resolveEnd.resolveEnd(end, valueEnd, options.strict, onError); + alias.range = [offset, valueEnd, re.offset]; + if (re.comment) + alias.comment = re.comment; + return alias; +} + +exports.composeEmptyNode = composeEmptyNode; +exports.composeNode = composeNode; diff --git a/node_modules/yaml/dist/compose/compose-scalar.d.ts b/node_modules/yaml/dist/compose/compose-scalar.d.ts new file mode 100644 index 0000000..f2b5ffa --- /dev/null +++ b/node_modules/yaml/dist/compose/compose-scalar.d.ts @@ -0,0 +1,5 @@ +import { Scalar } from '../nodes/Scalar'; +import type { BlockScalar, FlowScalar, SourceToken } from '../parse/cst'; +import type { ComposeContext } from './compose-node'; +import type { ComposeErrorHandler } from './composer'; +export declare function composeScalar(ctx: ComposeContext, token: FlowScalar | BlockScalar, tagToken: SourceToken | null, onError: ComposeErrorHandler): Scalar.Parsed; diff --git a/node_modules/yaml/dist/compose/compose-scalar.js b/node_modules/yaml/dist/compose/compose-scalar.js new file mode 100644 index 0000000..7fc7ed4 --- /dev/null +++ b/node_modules/yaml/dist/compose/compose-scalar.js @@ -0,0 +1,88 @@ +'use strict'; + +var identity = require('../nodes/identity.js'); +var Scalar = require('../nodes/Scalar.js'); +var resolveBlockScalar = require('./resolve-block-scalar.js'); +var resolveFlowScalar = require('./resolve-flow-scalar.js'); + +function composeScalar(ctx, token, tagToken, onError) { + const { value, type, comment, range } = token.type === 'block-scalar' + ? resolveBlockScalar.resolveBlockScalar(ctx, token, onError) + : resolveFlowScalar.resolveFlowScalar(token, ctx.options.strict, onError); + const tagName = tagToken + ? ctx.directives.tagName(tagToken.source, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg)) + : null; + let tag; + if (ctx.options.stringKeys && ctx.atKey) { + tag = ctx.schema[identity.SCALAR]; + } + else if (tagName) + tag = findScalarTagByName(ctx.schema, value, tagName, tagToken, onError); + else if (token.type === 'scalar') + tag = findScalarTagByTest(ctx, value, token, onError); + else + tag = ctx.schema[identity.SCALAR]; + let scalar; + try { + const res = tag.resolve(value, msg => onError(tagToken ?? token, 'TAG_RESOLVE_FAILED', msg), ctx.options); + scalar = identity.isScalar(res) ? res : new Scalar.Scalar(res); + } + catch (error) { + const msg = error instanceof Error ? error.message : String(error); + onError(tagToken ?? token, 'TAG_RESOLVE_FAILED', msg); + scalar = new Scalar.Scalar(value); + } + scalar.range = range; + scalar.source = value; + if (type) + scalar.type = type; + if (tagName) + scalar.tag = tagName; + if (tag.format) + scalar.format = tag.format; + if (comment) + scalar.comment = comment; + return scalar; +} +function findScalarTagByName(schema, value, tagName, tagToken, onError) { + if (tagName === '!') + return schema[identity.SCALAR]; // non-specific tag + const matchWithTest = []; + for (const tag of schema.tags) { + if (!tag.collection && tag.tag === tagName) { + if (tag.default && tag.test) + matchWithTest.push(tag); + else + return tag; + } + } + for (const tag of matchWithTest) + if (tag.test?.test(value)) + return tag; + const kt = schema.knownTags[tagName]; + if (kt && !kt.collection) { + // Ensure that the known tag is available for stringifying, + // but does not get used by default. + schema.tags.push(Object.assign({}, kt, { default: false, test: undefined })); + return kt; + } + onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, tagName !== 'tag:yaml.org,2002:str'); + return schema[identity.SCALAR]; +} +function findScalarTagByTest({ atKey, directives, schema }, value, token, onError) { + const tag = schema.tags.find(tag => (tag.default === true || (atKey && tag.default === 'key')) && + tag.test?.test(value)) || schema[identity.SCALAR]; + if (schema.compat) { + const compat = schema.compat.find(tag => tag.default && tag.test?.test(value)) ?? + schema[identity.SCALAR]; + if (tag.tag !== compat.tag) { + const ts = directives.tagString(tag.tag); + const cs = directives.tagString(compat.tag); + const msg = `Value may be parsed as either ${ts} or ${cs}`; + onError(token, 'TAG_RESOLVE_FAILED', msg, true); + } + } + return tag; +} + +exports.composeScalar = composeScalar; diff --git a/node_modules/yaml/dist/compose/composer.d.ts b/node_modules/yaml/dist/compose/composer.d.ts new file mode 100644 index 0000000..94c28c7 --- /dev/null +++ b/node_modules/yaml/dist/compose/composer.d.ts @@ -0,0 +1,63 @@ +import { Directives } from '../doc/directives'; +import { Document } from '../doc/Document'; +import type { ErrorCode } from '../errors'; +import { YAMLParseError, YAMLWarning } from '../errors'; +import type { ParsedNode, Range } from '../nodes/Node'; +import type { DocumentOptions, ParseOptions, SchemaOptions } from '../options'; +import type { Token } from '../parse/cst'; +type ErrorSource = number | [number, number] | Range | { + offset: number; + source?: string; +}; +export type ComposeErrorHandler = (source: ErrorSource, code: ErrorCode, message: string, warning?: boolean) => void; +/** + * Compose a stream of CST nodes into a stream of YAML Documents. + * + * ```ts + * import { Composer, Parser } from 'yaml' + * + * const src: string = ... + * const tokens = new Parser().parse(src) + * const docs = new Composer().compose(tokens) + * ``` + */ +export declare class Composer { + private directives; + private doc; + private options; + private atDirectives; + private prelude; + private errors; + private warnings; + constructor(options?: ParseOptions & DocumentOptions & SchemaOptions); + private onError; + private decorate; + /** + * Current stream status information. + * + * Mostly useful at the end of input for an empty stream. + */ + streamInfo(): { + comment: string; + directives: Directives; + errors: YAMLParseError[]; + warnings: YAMLWarning[]; + }; + /** + * Compose tokens into documents. + * + * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document. + * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly. + */ + compose(tokens: Iterable, forceDoc?: boolean, endOffset?: number): Generator, void, unknown>; + /** Advance the composer by one CST token. */ + next(token: Token): Generator, void, unknown>; + /** + * Call at end of input to yield any remaining document. + * + * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document. + * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly. + */ + end(forceDoc?: boolean, endOffset?: number): Generator, void, unknown>; +} +export {}; diff --git a/node_modules/yaml/dist/compose/composer.js b/node_modules/yaml/dist/compose/composer.js new file mode 100644 index 0000000..df60391 --- /dev/null +++ b/node_modules/yaml/dist/compose/composer.js @@ -0,0 +1,222 @@ +'use strict'; + +var node_process = require('process'); +var directives = require('../doc/directives.js'); +var Document = require('../doc/Document.js'); +var errors = require('../errors.js'); +var identity = require('../nodes/identity.js'); +var composeDoc = require('./compose-doc.js'); +var resolveEnd = require('./resolve-end.js'); + +function getErrorPos(src) { + if (typeof src === 'number') + return [src, src + 1]; + if (Array.isArray(src)) + return src.length === 2 ? src : [src[0], src[1]]; + const { offset, source } = src; + return [offset, offset + (typeof source === 'string' ? source.length : 1)]; +} +function parsePrelude(prelude) { + let comment = ''; + let atComment = false; + let afterEmptyLine = false; + for (let i = 0; i < prelude.length; ++i) { + const source = prelude[i]; + switch (source[0]) { + case '#': + comment += + (comment === '' ? '' : afterEmptyLine ? '\n\n' : '\n') + + (source.substring(1) || ' '); + atComment = true; + afterEmptyLine = false; + break; + case '%': + if (prelude[i + 1]?.[0] !== '#') + i += 1; + atComment = false; + break; + default: + // This may be wrong after doc-end, but in that case it doesn't matter + if (!atComment) + afterEmptyLine = true; + atComment = false; + } + } + return { comment, afterEmptyLine }; +} +/** + * Compose a stream of CST nodes into a stream of YAML Documents. + * + * ```ts + * import { Composer, Parser } from 'yaml' + * + * const src: string = ... + * const tokens = new Parser().parse(src) + * const docs = new Composer().compose(tokens) + * ``` + */ +class Composer { + constructor(options = {}) { + this.doc = null; + this.atDirectives = false; + this.prelude = []; + this.errors = []; + this.warnings = []; + this.onError = (source, code, message, warning) => { + const pos = getErrorPos(source); + if (warning) + this.warnings.push(new errors.YAMLWarning(pos, code, message)); + else + this.errors.push(new errors.YAMLParseError(pos, code, message)); + }; + // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing + this.directives = new directives.Directives({ version: options.version || '1.2' }); + this.options = options; + } + decorate(doc, afterDoc) { + const { comment, afterEmptyLine } = parsePrelude(this.prelude); + //console.log({ dc: doc.comment, prelude, comment }) + if (comment) { + const dc = doc.contents; + if (afterDoc) { + doc.comment = doc.comment ? `${doc.comment}\n${comment}` : comment; + } + else if (afterEmptyLine || doc.directives.docStart || !dc) { + doc.commentBefore = comment; + } + else if (identity.isCollection(dc) && !dc.flow && dc.items.length > 0) { + let it = dc.items[0]; + if (identity.isPair(it)) + it = it.key; + const cb = it.commentBefore; + it.commentBefore = cb ? `${comment}\n${cb}` : comment; + } + else { + const cb = dc.commentBefore; + dc.commentBefore = cb ? `${comment}\n${cb}` : comment; + } + } + if (afterDoc) { + Array.prototype.push.apply(doc.errors, this.errors); + Array.prototype.push.apply(doc.warnings, this.warnings); + } + else { + doc.errors = this.errors; + doc.warnings = this.warnings; + } + this.prelude = []; + this.errors = []; + this.warnings = []; + } + /** + * Current stream status information. + * + * Mostly useful at the end of input for an empty stream. + */ + streamInfo() { + return { + comment: parsePrelude(this.prelude).comment, + directives: this.directives, + errors: this.errors, + warnings: this.warnings + }; + } + /** + * Compose tokens into documents. + * + * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document. + * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly. + */ + *compose(tokens, forceDoc = false, endOffset = -1) { + for (const token of tokens) + yield* this.next(token); + yield* this.end(forceDoc, endOffset); + } + /** Advance the composer by one CST token. */ + *next(token) { + if (node_process.env.LOG_STREAM) + console.dir(token, { depth: null }); + switch (token.type) { + case 'directive': + this.directives.add(token.source, (offset, message, warning) => { + const pos = getErrorPos(token); + pos[0] += offset; + this.onError(pos, 'BAD_DIRECTIVE', message, warning); + }); + this.prelude.push(token.source); + this.atDirectives = true; + break; + case 'document': { + const doc = composeDoc.composeDoc(this.options, this.directives, token, this.onError); + if (this.atDirectives && !doc.directives.docStart) + this.onError(token, 'MISSING_CHAR', 'Missing directives-end/doc-start indicator line'); + this.decorate(doc, false); + if (this.doc) + yield this.doc; + this.doc = doc; + this.atDirectives = false; + break; + } + case 'byte-order-mark': + case 'space': + break; + case 'comment': + case 'newline': + this.prelude.push(token.source); + break; + case 'error': { + const msg = token.source + ? `${token.message}: ${JSON.stringify(token.source)}` + : token.message; + const error = new errors.YAMLParseError(getErrorPos(token), 'UNEXPECTED_TOKEN', msg); + if (this.atDirectives || !this.doc) + this.errors.push(error); + else + this.doc.errors.push(error); + break; + } + case 'doc-end': { + if (!this.doc) { + const msg = 'Unexpected doc-end without preceding document'; + this.errors.push(new errors.YAMLParseError(getErrorPos(token), 'UNEXPECTED_TOKEN', msg)); + break; + } + this.doc.directives.docEnd = true; + const end = resolveEnd.resolveEnd(token.end, token.offset + token.source.length, this.doc.options.strict, this.onError); + this.decorate(this.doc, true); + if (end.comment) { + const dc = this.doc.comment; + this.doc.comment = dc ? `${dc}\n${end.comment}` : end.comment; + } + this.doc.range[2] = end.offset; + break; + } + default: + this.errors.push(new errors.YAMLParseError(getErrorPos(token), 'UNEXPECTED_TOKEN', `Unsupported token ${token.type}`)); + } + } + /** + * Call at end of input to yield any remaining document. + * + * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document. + * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly. + */ + *end(forceDoc = false, endOffset = -1) { + if (this.doc) { + this.decorate(this.doc, true); + yield this.doc; + this.doc = null; + } + else if (forceDoc) { + const opts = Object.assign({ _directives: this.directives }, this.options); + const doc = new Document.Document(undefined, opts); + if (this.atDirectives) + this.onError(endOffset, 'MISSING_CHAR', 'Missing directives-end indicator line'); + doc.range = [0, endOffset, endOffset]; + this.decorate(doc, false); + yield doc; + } + } +} + +exports.Composer = Composer; diff --git a/node_modules/yaml/dist/compose/resolve-block-map.d.ts b/node_modules/yaml/dist/compose/resolve-block-map.d.ts new file mode 100644 index 0000000..0e33a11 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-block-map.d.ts @@ -0,0 +1,6 @@ +import { YAMLMap } from '../nodes/YAMLMap'; +import type { BlockMap } from '../parse/cst'; +import type { CollectionTag } from '../schema/types'; +import type { ComposeContext, ComposeNode } from './compose-node'; +import type { ComposeErrorHandler } from './composer'; +export declare function resolveBlockMap({ composeNode, composeEmptyNode }: ComposeNode, ctx: ComposeContext, bm: BlockMap, onError: ComposeErrorHandler, tag?: CollectionTag): YAMLMap.Parsed; diff --git a/node_modules/yaml/dist/compose/resolve-block-map.js b/node_modules/yaml/dist/compose/resolve-block-map.js new file mode 100644 index 0000000..f0d9727 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-block-map.js @@ -0,0 +1,117 @@ +'use strict'; + +var Pair = require('../nodes/Pair.js'); +var YAMLMap = require('../nodes/YAMLMap.js'); +var resolveProps = require('./resolve-props.js'); +var utilContainsNewline = require('./util-contains-newline.js'); +var utilFlowIndentCheck = require('./util-flow-indent-check.js'); +var utilMapIncludes = require('./util-map-includes.js'); + +const startColMsg = 'All mapping items must start at the same column'; +function resolveBlockMap({ composeNode, composeEmptyNode }, ctx, bm, onError, tag) { + const NodeClass = tag?.nodeClass ?? YAMLMap.YAMLMap; + const map = new NodeClass(ctx.schema); + if (ctx.atRoot) + ctx.atRoot = false; + let offset = bm.offset; + let commentEnd = null; + for (const collItem of bm.items) { + const { start, key, sep, value } = collItem; + // key properties + const keyProps = resolveProps.resolveProps(start, { + indicator: 'explicit-key-ind', + next: key ?? sep?.[0], + offset, + onError, + parentIndent: bm.indent, + startOnNewline: true + }); + const implicitKey = !keyProps.found; + if (implicitKey) { + if (key) { + if (key.type === 'block-seq') + onError(offset, 'BLOCK_AS_IMPLICIT_KEY', 'A block sequence may not be used as an implicit map key'); + else if ('indent' in key && key.indent !== bm.indent) + onError(offset, 'BAD_INDENT', startColMsg); + } + if (!keyProps.anchor && !keyProps.tag && !sep) { + commentEnd = keyProps.end; + if (keyProps.comment) { + if (map.comment) + map.comment += '\n' + keyProps.comment; + else + map.comment = keyProps.comment; + } + continue; + } + if (keyProps.newlineAfterProp || utilContainsNewline.containsNewline(key)) { + onError(key ?? start[start.length - 1], 'MULTILINE_IMPLICIT_KEY', 'Implicit keys need to be on a single line'); + } + } + else if (keyProps.found?.indent !== bm.indent) { + onError(offset, 'BAD_INDENT', startColMsg); + } + // key value + ctx.atKey = true; + const keyStart = keyProps.end; + const keyNode = key + ? composeNode(ctx, key, keyProps, onError) + : composeEmptyNode(ctx, keyStart, start, null, keyProps, onError); + if (ctx.schema.compat) + utilFlowIndentCheck.flowIndentCheck(bm.indent, key, onError); + ctx.atKey = false; + if (utilMapIncludes.mapIncludes(ctx, map.items, keyNode)) + onError(keyStart, 'DUPLICATE_KEY', 'Map keys must be unique'); + // value properties + const valueProps = resolveProps.resolveProps(sep ?? [], { + indicator: 'map-value-ind', + next: value, + offset: keyNode.range[2], + onError, + parentIndent: bm.indent, + startOnNewline: !key || key.type === 'block-scalar' + }); + offset = valueProps.end; + if (valueProps.found) { + if (implicitKey) { + if (value?.type === 'block-map' && !valueProps.hasNewline) + onError(offset, 'BLOCK_AS_IMPLICIT_KEY', 'Nested mappings are not allowed in compact mappings'); + if (ctx.options.strict && + keyProps.start < valueProps.found.offset - 1024) + onError(keyNode.range, 'KEY_OVER_1024_CHARS', 'The : indicator must be at most 1024 chars after the start of an implicit block mapping key'); + } + // value value + const valueNode = value + ? composeNode(ctx, value, valueProps, onError) + : composeEmptyNode(ctx, offset, sep, null, valueProps, onError); + if (ctx.schema.compat) + utilFlowIndentCheck.flowIndentCheck(bm.indent, value, onError); + offset = valueNode.range[2]; + const pair = new Pair.Pair(keyNode, valueNode); + if (ctx.options.keepSourceTokens) + pair.srcToken = collItem; + map.items.push(pair); + } + else { + // key with no value + if (implicitKey) + onError(keyNode.range, 'MISSING_CHAR', 'Implicit map keys need to be followed by map values'); + if (valueProps.comment) { + if (keyNode.comment) + keyNode.comment += '\n' + valueProps.comment; + else + keyNode.comment = valueProps.comment; + } + const pair = new Pair.Pair(keyNode); + if (ctx.options.keepSourceTokens) + pair.srcToken = collItem; + map.items.push(pair); + } + } + if (commentEnd && commentEnd < offset) + onError(commentEnd, 'IMPOSSIBLE', 'Map comment with trailing content'); + map.range = [bm.offset, offset, commentEnd ?? offset]; + return map; +} + +exports.resolveBlockMap = resolveBlockMap; diff --git a/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts b/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts new file mode 100644 index 0000000..0634630 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts @@ -0,0 +1,11 @@ +import type { Range } from '../nodes/Node'; +import { Scalar } from '../nodes/Scalar'; +import type { BlockScalar } from '../parse/cst'; +import type { ComposeContext } from './compose-node'; +import type { ComposeErrorHandler } from './composer'; +export declare function resolveBlockScalar(ctx: ComposeContext, scalar: BlockScalar, onError: ComposeErrorHandler): { + value: string; + type: Scalar.BLOCK_FOLDED | Scalar.BLOCK_LITERAL | null; + comment: string; + range: Range; +}; diff --git a/node_modules/yaml/dist/compose/resolve-block-scalar.js b/node_modules/yaml/dist/compose/resolve-block-scalar.js new file mode 100644 index 0000000..97eaf2b --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-block-scalar.js @@ -0,0 +1,200 @@ +'use strict'; + +var Scalar = require('../nodes/Scalar.js'); + +function resolveBlockScalar(ctx, scalar, onError) { + const start = scalar.offset; + const header = parseBlockScalarHeader(scalar, ctx.options.strict, onError); + if (!header) + return { value: '', type: null, comment: '', range: [start, start, start] }; + const type = header.mode === '>' ? Scalar.Scalar.BLOCK_FOLDED : Scalar.Scalar.BLOCK_LITERAL; + const lines = scalar.source ? splitLines(scalar.source) : []; + // determine the end of content & start of chomping + let chompStart = lines.length; + for (let i = lines.length - 1; i >= 0; --i) { + const content = lines[i][1]; + if (content === '' || content === '\r') + chompStart = i; + else + break; + } + // shortcut for empty contents + if (chompStart === 0) { + const value = header.chomp === '+' && lines.length > 0 + ? '\n'.repeat(Math.max(1, lines.length - 1)) + : ''; + let end = start + header.length; + if (scalar.source) + end += scalar.source.length; + return { value, type, comment: header.comment, range: [start, end, end] }; + } + // find the indentation level to trim from start + let trimIndent = scalar.indent + header.indent; + let offset = scalar.offset + header.length; + let contentStart = 0; + for (let i = 0; i < chompStart; ++i) { + const [indent, content] = lines[i]; + if (content === '' || content === '\r') { + if (header.indent === 0 && indent.length > trimIndent) + trimIndent = indent.length; + } + else { + if (indent.length < trimIndent) { + const message = 'Block scalars with more-indented leading empty lines must use an explicit indentation indicator'; + onError(offset + indent.length, 'MISSING_CHAR', message); + } + if (header.indent === 0) + trimIndent = indent.length; + contentStart = i; + if (trimIndent === 0 && !ctx.atRoot) { + const message = 'Block scalar values in collections must be indented'; + onError(offset, 'BAD_INDENT', message); + } + break; + } + offset += indent.length + content.length + 1; + } + // include trailing more-indented empty lines in content + for (let i = lines.length - 1; i >= chompStart; --i) { + if (lines[i][0].length > trimIndent) + chompStart = i + 1; + } + let value = ''; + let sep = ''; + let prevMoreIndented = false; + // leading whitespace is kept intact + for (let i = 0; i < contentStart; ++i) + value += lines[i][0].slice(trimIndent) + '\n'; + for (let i = contentStart; i < chompStart; ++i) { + let [indent, content] = lines[i]; + offset += indent.length + content.length + 1; + const crlf = content[content.length - 1] === '\r'; + if (crlf) + content = content.slice(0, -1); + /* istanbul ignore if already caught in lexer */ + if (content && indent.length < trimIndent) { + const src = header.indent + ? 'explicit indentation indicator' + : 'first line'; + const message = `Block scalar lines must not be less indented than their ${src}`; + onError(offset - content.length - (crlf ? 2 : 1), 'BAD_INDENT', message); + indent = ''; + } + if (type === Scalar.Scalar.BLOCK_LITERAL) { + value += sep + indent.slice(trimIndent) + content; + sep = '\n'; + } + else if (indent.length > trimIndent || content[0] === '\t') { + // more-indented content within a folded block + if (sep === ' ') + sep = '\n'; + else if (!prevMoreIndented && sep === '\n') + sep = '\n\n'; + value += sep + indent.slice(trimIndent) + content; + sep = '\n'; + prevMoreIndented = true; + } + else if (content === '') { + // empty line + if (sep === '\n') + value += '\n'; + else + sep = '\n'; + } + else { + value += sep + content; + sep = ' '; + prevMoreIndented = false; + } + } + switch (header.chomp) { + case '-': + break; + case '+': + for (let i = chompStart; i < lines.length; ++i) + value += '\n' + lines[i][0].slice(trimIndent); + if (value[value.length - 1] !== '\n') + value += '\n'; + break; + default: + value += '\n'; + } + const end = start + header.length + scalar.source.length; + return { value, type, comment: header.comment, range: [start, end, end] }; +} +function parseBlockScalarHeader({ offset, props }, strict, onError) { + /* istanbul ignore if should not happen */ + if (props[0].type !== 'block-scalar-header') { + onError(props[0], 'IMPOSSIBLE', 'Block scalar header not found'); + return null; + } + const { source } = props[0]; + const mode = source[0]; + let indent = 0; + let chomp = ''; + let error = -1; + for (let i = 1; i < source.length; ++i) { + const ch = source[i]; + if (!chomp && (ch === '-' || ch === '+')) + chomp = ch; + else { + const n = Number(ch); + if (!indent && n) + indent = n; + else if (error === -1) + error = offset + i; + } + } + if (error !== -1) + onError(error, 'UNEXPECTED_TOKEN', `Block scalar header includes extra characters: ${source}`); + let hasSpace = false; + let comment = ''; + let length = source.length; + for (let i = 1; i < props.length; ++i) { + const token = props[i]; + switch (token.type) { + case 'space': + hasSpace = true; + // fallthrough + case 'newline': + length += token.source.length; + break; + case 'comment': + if (strict && !hasSpace) { + const message = 'Comments must be separated from other tokens by white space characters'; + onError(token, 'MISSING_CHAR', message); + } + length += token.source.length; + comment = token.source.substring(1); + break; + case 'error': + onError(token, 'UNEXPECTED_TOKEN', token.message); + length += token.source.length; + break; + /* istanbul ignore next should not happen */ + default: { + const message = `Unexpected token in block scalar header: ${token.type}`; + onError(token, 'UNEXPECTED_TOKEN', message); + const ts = token.source; + if (ts && typeof ts === 'string') + length += ts.length; + } + } + } + return { mode, indent, chomp, comment, length }; +} +/** @returns Array of lines split up as `[indent, content]` */ +function splitLines(source) { + const split = source.split(/\n( *)/); + const first = split[0]; + const m = first.match(/^( *)/); + const line0 = m?.[1] + ? [m[1], first.slice(m[1].length)] + : ['', first]; + const lines = [line0]; + for (let i = 1; i < split.length; i += 2) + lines.push([split[i], split[i + 1]]); + return lines; +} + +exports.resolveBlockScalar = resolveBlockScalar; diff --git a/node_modules/yaml/dist/compose/resolve-block-seq.d.ts b/node_modules/yaml/dist/compose/resolve-block-seq.d.ts new file mode 100644 index 0000000..38d5399 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-block-seq.d.ts @@ -0,0 +1,6 @@ +import { YAMLSeq } from '../nodes/YAMLSeq'; +import type { BlockSequence } from '../parse/cst'; +import type { CollectionTag } from '../schema/types'; +import type { ComposeContext, ComposeNode } from './compose-node'; +import type { ComposeErrorHandler } from './composer'; +export declare function resolveBlockSeq({ composeNode, composeEmptyNode }: ComposeNode, ctx: ComposeContext, bs: BlockSequence, onError: ComposeErrorHandler, tag?: CollectionTag): YAMLSeq.Parsed; diff --git a/node_modules/yaml/dist/compose/resolve-block-seq.js b/node_modules/yaml/dist/compose/resolve-block-seq.js new file mode 100644 index 0000000..8787fd7 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-block-seq.js @@ -0,0 +1,51 @@ +'use strict'; + +var YAMLSeq = require('../nodes/YAMLSeq.js'); +var resolveProps = require('./resolve-props.js'); +var utilFlowIndentCheck = require('./util-flow-indent-check.js'); + +function resolveBlockSeq({ composeNode, composeEmptyNode }, ctx, bs, onError, tag) { + const NodeClass = tag?.nodeClass ?? YAMLSeq.YAMLSeq; + const seq = new NodeClass(ctx.schema); + if (ctx.atRoot) + ctx.atRoot = false; + if (ctx.atKey) + ctx.atKey = false; + let offset = bs.offset; + let commentEnd = null; + for (const { start, value } of bs.items) { + const props = resolveProps.resolveProps(start, { + indicator: 'seq-item-ind', + next: value, + offset, + onError, + parentIndent: bs.indent, + startOnNewline: true + }); + if (!props.found) { + if (props.anchor || props.tag || value) { + if (value && value.type === 'block-seq') + onError(props.end, 'BAD_INDENT', 'All sequence items must start at the same column'); + else + onError(offset, 'MISSING_CHAR', 'Sequence item without - indicator'); + } + else { + commentEnd = props.end; + if (props.comment) + seq.comment = props.comment; + continue; + } + } + const node = value + ? composeNode(ctx, value, props, onError) + : composeEmptyNode(ctx, props.end, start, null, props, onError); + if (ctx.schema.compat) + utilFlowIndentCheck.flowIndentCheck(bs.indent, value, onError); + offset = node.range[2]; + seq.items.push(node); + } + seq.range = [bs.offset, offset, commentEnd ?? offset]; + return seq; +} + +exports.resolveBlockSeq = resolveBlockSeq; diff --git a/node_modules/yaml/dist/compose/resolve-end.d.ts b/node_modules/yaml/dist/compose/resolve-end.d.ts new file mode 100644 index 0000000..c9d27c2 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-end.d.ts @@ -0,0 +1,6 @@ +import type { SourceToken } from '../parse/cst'; +import type { ComposeErrorHandler } from './composer'; +export declare function resolveEnd(end: SourceToken[] | undefined, offset: number, reqSpace: boolean, onError: ComposeErrorHandler): { + comment: string; + offset: number; +}; diff --git a/node_modules/yaml/dist/compose/resolve-end.js b/node_modules/yaml/dist/compose/resolve-end.js new file mode 100644 index 0000000..3a58347 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-end.js @@ -0,0 +1,39 @@ +'use strict'; + +function resolveEnd(end, offset, reqSpace, onError) { + let comment = ''; + if (end) { + let hasSpace = false; + let sep = ''; + for (const token of end) { + const { source, type } = token; + switch (type) { + case 'space': + hasSpace = true; + break; + case 'comment': { + if (reqSpace && !hasSpace) + onError(token, 'MISSING_CHAR', 'Comments must be separated from other tokens by white space characters'); + const cb = source.substring(1) || ' '; + if (!comment) + comment = cb; + else + comment += sep + cb; + sep = ''; + break; + } + case 'newline': + if (comment) + sep += source; + hasSpace = true; + break; + default: + onError(token, 'UNEXPECTED_TOKEN', `Unexpected ${type} at node end`); + } + offset += source.length; + } + } + return { comment, offset }; +} + +exports.resolveEnd = resolveEnd; diff --git a/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts b/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts new file mode 100644 index 0000000..86ffd09 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts @@ -0,0 +1,7 @@ +import { YAMLMap } from '../nodes/YAMLMap'; +import { YAMLSeq } from '../nodes/YAMLSeq'; +import type { FlowCollection } from '../parse/cst'; +import type { CollectionTag } from '../schema/types'; +import type { ComposeContext, ComposeNode } from './compose-node'; +import type { ComposeErrorHandler } from './composer'; +export declare function resolveFlowCollection({ composeNode, composeEmptyNode }: ComposeNode, ctx: ComposeContext, fc: FlowCollection, onError: ComposeErrorHandler, tag?: CollectionTag): YAMLMap.Parsed | YAMLSeq.Parsed; diff --git a/node_modules/yaml/dist/compose/resolve-flow-collection.js b/node_modules/yaml/dist/compose/resolve-flow-collection.js new file mode 100644 index 0000000..10a7506 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-flow-collection.js @@ -0,0 +1,209 @@ +'use strict'; + +var identity = require('../nodes/identity.js'); +var Pair = require('../nodes/Pair.js'); +var YAMLMap = require('../nodes/YAMLMap.js'); +var YAMLSeq = require('../nodes/YAMLSeq.js'); +var resolveEnd = require('./resolve-end.js'); +var resolveProps = require('./resolve-props.js'); +var utilContainsNewline = require('./util-contains-newline.js'); +var utilMapIncludes = require('./util-map-includes.js'); + +const blockMsg = 'Block collections are not allowed within flow collections'; +const isBlock = (token) => token && (token.type === 'block-map' || token.type === 'block-seq'); +function resolveFlowCollection({ composeNode, composeEmptyNode }, ctx, fc, onError, tag) { + const isMap = fc.start.source === '{'; + const fcName = isMap ? 'flow map' : 'flow sequence'; + const NodeClass = (tag?.nodeClass ?? (isMap ? YAMLMap.YAMLMap : YAMLSeq.YAMLSeq)); + const coll = new NodeClass(ctx.schema); + coll.flow = true; + const atRoot = ctx.atRoot; + if (atRoot) + ctx.atRoot = false; + if (ctx.atKey) + ctx.atKey = false; + let offset = fc.offset + fc.start.source.length; + for (let i = 0; i < fc.items.length; ++i) { + const collItem = fc.items[i]; + const { start, key, sep, value } = collItem; + const props = resolveProps.resolveProps(start, { + flow: fcName, + indicator: 'explicit-key-ind', + next: key ?? sep?.[0], + offset, + onError, + parentIndent: fc.indent, + startOnNewline: false + }); + if (!props.found) { + if (!props.anchor && !props.tag && !sep && !value) { + if (i === 0 && props.comma) + onError(props.comma, 'UNEXPECTED_TOKEN', `Unexpected , in ${fcName}`); + else if (i < fc.items.length - 1) + onError(props.start, 'UNEXPECTED_TOKEN', `Unexpected empty item in ${fcName}`); + if (props.comment) { + if (coll.comment) + coll.comment += '\n' + props.comment; + else + coll.comment = props.comment; + } + offset = props.end; + continue; + } + if (!isMap && ctx.options.strict && utilContainsNewline.containsNewline(key)) + onError(key, // checked by containsNewline() + 'MULTILINE_IMPLICIT_KEY', 'Implicit keys of flow sequence pairs need to be on a single line'); + } + if (i === 0) { + if (props.comma) + onError(props.comma, 'UNEXPECTED_TOKEN', `Unexpected , in ${fcName}`); + } + else { + if (!props.comma) + onError(props.start, 'MISSING_CHAR', `Missing , between ${fcName} items`); + if (props.comment) { + let prevItemComment = ''; + loop: for (const st of start) { + switch (st.type) { + case 'comma': + case 'space': + break; + case 'comment': + prevItemComment = st.source.substring(1); + break loop; + default: + break loop; + } + } + if (prevItemComment) { + let prev = coll.items[coll.items.length - 1]; + if (identity.isPair(prev)) + prev = prev.value ?? prev.key; + if (prev.comment) + prev.comment += '\n' + prevItemComment; + else + prev.comment = prevItemComment; + props.comment = props.comment.substring(prevItemComment.length + 1); + } + } + } + if (!isMap && !sep && !props.found) { + // item is a value in a seq + // → key & sep are empty, start does not include ? or : + const valueNode = value + ? composeNode(ctx, value, props, onError) + : composeEmptyNode(ctx, props.end, sep, null, props, onError); + coll.items.push(valueNode); + offset = valueNode.range[2]; + if (isBlock(value)) + onError(valueNode.range, 'BLOCK_IN_FLOW', blockMsg); + } + else { + // item is a key+value pair + // key value + ctx.atKey = true; + const keyStart = props.end; + const keyNode = key + ? composeNode(ctx, key, props, onError) + : composeEmptyNode(ctx, keyStart, start, null, props, onError); + if (isBlock(key)) + onError(keyNode.range, 'BLOCK_IN_FLOW', blockMsg); + ctx.atKey = false; + // value properties + const valueProps = resolveProps.resolveProps(sep ?? [], { + flow: fcName, + indicator: 'map-value-ind', + next: value, + offset: keyNode.range[2], + onError, + parentIndent: fc.indent, + startOnNewline: false + }); + if (valueProps.found) { + if (!isMap && !props.found && ctx.options.strict) { + if (sep) + for (const st of sep) { + if (st === valueProps.found) + break; + if (st.type === 'newline') { + onError(st, 'MULTILINE_IMPLICIT_KEY', 'Implicit keys of flow sequence pairs need to be on a single line'); + break; + } + } + if (props.start < valueProps.found.offset - 1024) + onError(valueProps.found, 'KEY_OVER_1024_CHARS', 'The : indicator must be at most 1024 chars after the start of an implicit flow sequence key'); + } + } + else if (value) { + if ('source' in value && value.source && value.source[0] === ':') + onError(value, 'MISSING_CHAR', `Missing space after : in ${fcName}`); + else + onError(valueProps.start, 'MISSING_CHAR', `Missing , or : between ${fcName} items`); + } + // value value + const valueNode = value + ? composeNode(ctx, value, valueProps, onError) + : valueProps.found + ? composeEmptyNode(ctx, valueProps.end, sep, null, valueProps, onError) + : null; + if (valueNode) { + if (isBlock(value)) + onError(valueNode.range, 'BLOCK_IN_FLOW', blockMsg); + } + else if (valueProps.comment) { + if (keyNode.comment) + keyNode.comment += '\n' + valueProps.comment; + else + keyNode.comment = valueProps.comment; + } + const pair = new Pair.Pair(keyNode, valueNode); + if (ctx.options.keepSourceTokens) + pair.srcToken = collItem; + if (isMap) { + const map = coll; + if (utilMapIncludes.mapIncludes(ctx, map.items, keyNode)) + onError(keyStart, 'DUPLICATE_KEY', 'Map keys must be unique'); + map.items.push(pair); + } + else { + const map = new YAMLMap.YAMLMap(ctx.schema); + map.flow = true; + map.items.push(pair); + const endRange = (valueNode ?? keyNode).range; + map.range = [keyNode.range[0], endRange[1], endRange[2]]; + coll.items.push(map); + } + offset = valueNode ? valueNode.range[2] : valueProps.end; + } + } + const expectedEnd = isMap ? '}' : ']'; + const [ce, ...ee] = fc.end; + let cePos = offset; + if (ce && ce.source === expectedEnd) + cePos = ce.offset + ce.source.length; + else { + const name = fcName[0].toUpperCase() + fcName.substring(1); + const msg = atRoot + ? `${name} must end with a ${expectedEnd}` + : `${name} in block collection must be sufficiently indented and end with a ${expectedEnd}`; + onError(offset, atRoot ? 'MISSING_CHAR' : 'BAD_INDENT', msg); + if (ce && ce.source.length !== 1) + ee.unshift(ce); + } + if (ee.length > 0) { + const end = resolveEnd.resolveEnd(ee, cePos, ctx.options.strict, onError); + if (end.comment) { + if (coll.comment) + coll.comment += '\n' + end.comment; + else + coll.comment = end.comment; + } + coll.range = [fc.offset, cePos, end.offset]; + } + else { + coll.range = [fc.offset, cePos, cePos]; + } + return coll; +} + +exports.resolveFlowCollection = resolveFlowCollection; diff --git a/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts b/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts new file mode 100644 index 0000000..ee24cd7 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts @@ -0,0 +1,10 @@ +import type { Range } from '../nodes/Node'; +import { Scalar } from '../nodes/Scalar'; +import type { FlowScalar } from '../parse/cst'; +import type { ComposeErrorHandler } from './composer'; +export declare function resolveFlowScalar(scalar: FlowScalar, strict: boolean, onError: ComposeErrorHandler): { + value: string; + type: Scalar.PLAIN | Scalar.QUOTE_DOUBLE | Scalar.QUOTE_SINGLE | null; + comment: string; + range: Range; +}; diff --git a/node_modules/yaml/dist/compose/resolve-flow-scalar.js b/node_modules/yaml/dist/compose/resolve-flow-scalar.js new file mode 100644 index 0000000..45aad99 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-flow-scalar.js @@ -0,0 +1,225 @@ +'use strict'; + +var Scalar = require('../nodes/Scalar.js'); +var resolveEnd = require('./resolve-end.js'); + +function resolveFlowScalar(scalar, strict, onError) { + const { offset, type, source, end } = scalar; + let _type; + let value; + const _onError = (rel, code, msg) => onError(offset + rel, code, msg); + switch (type) { + case 'scalar': + _type = Scalar.Scalar.PLAIN; + value = plainValue(source, _onError); + break; + case 'single-quoted-scalar': + _type = Scalar.Scalar.QUOTE_SINGLE; + value = singleQuotedValue(source, _onError); + break; + case 'double-quoted-scalar': + _type = Scalar.Scalar.QUOTE_DOUBLE; + value = doubleQuotedValue(source, _onError); + break; + /* istanbul ignore next should not happen */ + default: + onError(scalar, 'UNEXPECTED_TOKEN', `Expected a flow scalar value, but found: ${type}`); + return { + value: '', + type: null, + comment: '', + range: [offset, offset + source.length, offset + source.length] + }; + } + const valueEnd = offset + source.length; + const re = resolveEnd.resolveEnd(end, valueEnd, strict, onError); + return { + value, + type: _type, + comment: re.comment, + range: [offset, valueEnd, re.offset] + }; +} +function plainValue(source, onError) { + let badChar = ''; + switch (source[0]) { + /* istanbul ignore next should not happen */ + case '\t': + badChar = 'a tab character'; + break; + case ',': + badChar = 'flow indicator character ,'; + break; + case '%': + badChar = 'directive indicator character %'; + break; + case '|': + case '>': { + badChar = `block scalar indicator ${source[0]}`; + break; + } + case '@': + case '`': { + badChar = `reserved character ${source[0]}`; + break; + } + } + if (badChar) + onError(0, 'BAD_SCALAR_START', `Plain value cannot start with ${badChar}`); + return foldLines(source); +} +function singleQuotedValue(source, onError) { + if (source[source.length - 1] !== "'" || source.length === 1) + onError(source.length, 'MISSING_CHAR', "Missing closing 'quote"); + return foldLines(source.slice(1, -1)).replace(/''/g, "'"); +} +function foldLines(source) { + /** + * The negative lookbehind here and in the `re` RegExp is to + * prevent causing a polynomial search time in certain cases. + * + * The try-catch is for Safari, which doesn't support this yet: + * https://caniuse.com/js-regexp-lookbehind + */ + let first, line; + try { + first = new RegExp('(.*?)(? wsStart ? source.slice(wsStart, i + 1) : ch; + } + else { + res += ch; + } + } + if (source[source.length - 1] !== '"' || source.length === 1) + onError(source.length, 'MISSING_CHAR', 'Missing closing "quote'); + return res; +} +/** + * Fold a single newline into a space, multiple newlines to N - 1 newlines. + * Presumes `source[offset] === '\n'` + */ +function foldNewline(source, offset) { + let fold = ''; + let ch = source[offset + 1]; + while (ch === ' ' || ch === '\t' || ch === '\n' || ch === '\r') { + if (ch === '\r' && source[offset + 2] !== '\n') + break; + if (ch === '\n') + fold += '\n'; + offset += 1; + ch = source[offset + 1]; + } + if (!fold) + fold = ' '; + return { fold, offset }; +} +const escapeCodes = { + '0': '\0', // null character + a: '\x07', // bell character + b: '\b', // backspace + e: '\x1b', // escape character + f: '\f', // form feed + n: '\n', // line feed + r: '\r', // carriage return + t: '\t', // horizontal tab + v: '\v', // vertical tab + N: '\u0085', // Unicode next line + _: '\u00a0', // Unicode non-breaking space + L: '\u2028', // Unicode line separator + P: '\u2029', // Unicode paragraph separator + ' ': ' ', + '"': '"', + '/': '/', + '\\': '\\', + '\t': '\t' +}; +function parseCharCode(source, offset, length, onError) { + const cc = source.substr(offset, length); + const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc); + const code = ok ? parseInt(cc, 16) : NaN; + if (isNaN(code)) { + const raw = source.substr(offset - 2, length + 2); + onError(offset - 2, 'BAD_DQ_ESCAPE', `Invalid escape sequence ${raw}`); + return raw; + } + return String.fromCodePoint(code); +} + +exports.resolveFlowScalar = resolveFlowScalar; diff --git a/node_modules/yaml/dist/compose/resolve-props.d.ts b/node_modules/yaml/dist/compose/resolve-props.d.ts new file mode 100644 index 0000000..d9ee381 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-props.d.ts @@ -0,0 +1,23 @@ +import type { SourceToken, Token } from '../parse/cst'; +import type { ComposeErrorHandler } from './composer'; +export interface ResolvePropsArg { + flow?: 'flow map' | 'flow sequence'; + indicator: 'doc-start' | 'explicit-key-ind' | 'map-value-ind' | 'seq-item-ind'; + next: Token | null | undefined; + offset: number; + onError: ComposeErrorHandler; + parentIndent: number; + startOnNewline: boolean; +} +export declare function resolveProps(tokens: SourceToken[], { flow, indicator, next, offset, onError, parentIndent, startOnNewline }: ResolvePropsArg): { + comma: SourceToken | null; + found: SourceToken | null; + spaceBefore: boolean; + comment: string; + hasNewline: boolean; + anchor: SourceToken | null; + tag: SourceToken | null; + newlineAfterProp: SourceToken | null; + end: number; + start: number; +}; diff --git a/node_modules/yaml/dist/compose/resolve-props.js b/node_modules/yaml/dist/compose/resolve-props.js new file mode 100644 index 0000000..a3598c8 --- /dev/null +++ b/node_modules/yaml/dist/compose/resolve-props.js @@ -0,0 +1,148 @@ +'use strict'; + +function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIndent, startOnNewline }) { + let spaceBefore = false; + let atNewline = startOnNewline; + let hasSpace = startOnNewline; + let comment = ''; + let commentSep = ''; + let hasNewline = false; + let reqSpace = false; + let tab = null; + let anchor = null; + let tag = null; + let newlineAfterProp = null; + let comma = null; + let found = null; + let start = null; + for (const token of tokens) { + if (reqSpace) { + if (token.type !== 'space' && + token.type !== 'newline' && + token.type !== 'comma') + onError(token.offset, 'MISSING_CHAR', 'Tags and anchors must be separated from the next token by white space'); + reqSpace = false; + } + if (tab) { + if (atNewline && token.type !== 'comment' && token.type !== 'newline') { + onError(tab, 'TAB_AS_INDENT', 'Tabs are not allowed as indentation'); + } + tab = null; + } + switch (token.type) { + case 'space': + // At the doc level, tabs at line start may be parsed + // as leading white space rather than indentation. + // In a flow collection, only the parser handles indent. + if (!flow && + (indicator !== 'doc-start' || next?.type !== 'flow-collection') && + token.source.includes('\t')) { + tab = token; + } + hasSpace = true; + break; + case 'comment': { + if (!hasSpace) + onError(token, 'MISSING_CHAR', 'Comments must be separated from other tokens by white space characters'); + const cb = token.source.substring(1) || ' '; + if (!comment) + comment = cb; + else + comment += commentSep + cb; + commentSep = ''; + atNewline = false; + break; + } + case 'newline': + if (atNewline) { + if (comment) + comment += token.source; + else if (!found || indicator !== 'seq-item-ind') + spaceBefore = true; + } + else + commentSep += token.source; + atNewline = true; + hasNewline = true; + if (anchor || tag) + newlineAfterProp = token; + hasSpace = true; + break; + case 'anchor': + if (anchor) + onError(token, 'MULTIPLE_ANCHORS', 'A node can have at most one anchor'); + if (token.source.endsWith(':')) + onError(token.offset + token.source.length - 1, 'BAD_ALIAS', 'Anchor ending in : is ambiguous', true); + anchor = token; + start ?? (start = token.offset); + atNewline = false; + hasSpace = false; + reqSpace = true; + break; + case 'tag': { + if (tag) + onError(token, 'MULTIPLE_TAGS', 'A node can have at most one tag'); + tag = token; + start ?? (start = token.offset); + atNewline = false; + hasSpace = false; + reqSpace = true; + break; + } + case indicator: + // Could here handle preceding comments differently + if (anchor || tag) + onError(token, 'BAD_PROP_ORDER', `Anchors and tags must be after the ${token.source} indicator`); + if (found) + onError(token, 'UNEXPECTED_TOKEN', `Unexpected ${token.source} in ${flow ?? 'collection'}`); + found = token; + atNewline = + indicator === 'seq-item-ind' || indicator === 'explicit-key-ind'; + hasSpace = false; + break; + case 'comma': + if (flow) { + if (comma) + onError(token, 'UNEXPECTED_TOKEN', `Unexpected , in ${flow}`); + comma = token; + atNewline = false; + hasSpace = false; + break; + } + // else fallthrough + default: + onError(token, 'UNEXPECTED_TOKEN', `Unexpected ${token.type} token`); + atNewline = false; + hasSpace = false; + } + } + const last = tokens[tokens.length - 1]; + const end = last ? last.offset + last.source.length : offset; + if (reqSpace && + next && + next.type !== 'space' && + next.type !== 'newline' && + next.type !== 'comma' && + (next.type !== 'scalar' || next.source !== '')) { + onError(next.offset, 'MISSING_CHAR', 'Tags and anchors must be separated from the next token by white space'); + } + if (tab && + ((atNewline && tab.indent <= parentIndent) || + next?.type === 'block-map' || + next?.type === 'block-seq')) + onError(tab, 'TAB_AS_INDENT', 'Tabs are not allowed as indentation'); + return { + comma, + found, + spaceBefore, + comment, + hasNewline, + anchor, + tag, + newlineAfterProp, + end, + start: start ?? end + }; +} + +exports.resolveProps = resolveProps; diff --git a/node_modules/yaml/dist/compose/util-contains-newline.d.ts b/node_modules/yaml/dist/compose/util-contains-newline.d.ts new file mode 100644 index 0000000..ca3df48 --- /dev/null +++ b/node_modules/yaml/dist/compose/util-contains-newline.d.ts @@ -0,0 +1,2 @@ +import type { Token } from '../parse/cst'; +export declare function containsNewline(key: Token | null | undefined): boolean | null; diff --git a/node_modules/yaml/dist/compose/util-contains-newline.js b/node_modules/yaml/dist/compose/util-contains-newline.js new file mode 100644 index 0000000..e7aa82d --- /dev/null +++ b/node_modules/yaml/dist/compose/util-contains-newline.js @@ -0,0 +1,36 @@ +'use strict'; + +function containsNewline(key) { + if (!key) + return null; + switch (key.type) { + case 'alias': + case 'scalar': + case 'double-quoted-scalar': + case 'single-quoted-scalar': + if (key.source.includes('\n')) + return true; + if (key.end) + for (const st of key.end) + if (st.type === 'newline') + return true; + return false; + case 'flow-collection': + for (const it of key.items) { + for (const st of it.start) + if (st.type === 'newline') + return true; + if (it.sep) + for (const st of it.sep) + if (st.type === 'newline') + return true; + if (containsNewline(it.key) || containsNewline(it.value)) + return true; + } + return false; + default: + return true; + } +} + +exports.containsNewline = containsNewline; diff --git a/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts b/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts new file mode 100644 index 0000000..a555fe3 --- /dev/null +++ b/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts @@ -0,0 +1,2 @@ +import type { Token } from '../parse/cst'; +export declare function emptyScalarPosition(offset: number, before: Token[] | undefined, pos: number | null): number; diff --git a/node_modules/yaml/dist/compose/util-empty-scalar-position.js b/node_modules/yaml/dist/compose/util-empty-scalar-position.js new file mode 100644 index 0000000..50fedb1 --- /dev/null +++ b/node_modules/yaml/dist/compose/util-empty-scalar-position.js @@ -0,0 +1,28 @@ +'use strict'; + +function emptyScalarPosition(offset, before, pos) { + if (before) { + pos ?? (pos = before.length); + for (let i = pos - 1; i >= 0; --i) { + let st = before[i]; + switch (st.type) { + case 'space': + case 'comment': + case 'newline': + offset -= st.source.length; + continue; + } + // Technically, an empty scalar is immediately after the last non-empty + // node, but it's more useful to place it after any whitespace. + st = before[++i]; + while (st?.type === 'space') { + offset += st.source.length; + st = before[++i]; + } + break; + } + } + return offset; +} + +exports.emptyScalarPosition = emptyScalarPosition; diff --git a/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts b/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts new file mode 100644 index 0000000..7186397 --- /dev/null +++ b/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts @@ -0,0 +1,3 @@ +import type { Token } from '../parse/cst'; +import type { ComposeErrorHandler } from './composer'; +export declare function flowIndentCheck(indent: number, fc: Token | null | undefined, onError: ComposeErrorHandler): void; diff --git a/node_modules/yaml/dist/compose/util-flow-indent-check.js b/node_modules/yaml/dist/compose/util-flow-indent-check.js new file mode 100644 index 0000000..1e6b06f --- /dev/null +++ b/node_modules/yaml/dist/compose/util-flow-indent-check.js @@ -0,0 +1,17 @@ +'use strict'; + +var utilContainsNewline = require('./util-contains-newline.js'); + +function flowIndentCheck(indent, fc, onError) { + if (fc?.type === 'flow-collection') { + const end = fc.end[0]; + if (end.indent === indent && + (end.source === ']' || end.source === '}') && + utilContainsNewline.containsNewline(fc)) { + const msg = 'Flow end indicator should be more indented than parent'; + onError(end, 'BAD_INDENT', msg, true); + } + } +} + +exports.flowIndentCheck = flowIndentCheck; diff --git a/node_modules/yaml/dist/compose/util-map-includes.d.ts b/node_modules/yaml/dist/compose/util-map-includes.d.ts new file mode 100644 index 0000000..838b6bc --- /dev/null +++ b/node_modules/yaml/dist/compose/util-map-includes.d.ts @@ -0,0 +1,4 @@ +import type { ParsedNode } from '../nodes/Node'; +import type { Pair } from '../nodes/Pair'; +import type { ComposeContext } from './compose-node'; +export declare function mapIncludes(ctx: ComposeContext, items: Pair[], search: ParsedNode): boolean; diff --git a/node_modules/yaml/dist/compose/util-map-includes.js b/node_modules/yaml/dist/compose/util-map-includes.js new file mode 100644 index 0000000..ebd7a2d --- /dev/null +++ b/node_modules/yaml/dist/compose/util-map-includes.js @@ -0,0 +1,15 @@ +'use strict'; + +var identity = require('../nodes/identity.js'); + +function mapIncludes(ctx, items, search) { + const { uniqueKeys } = ctx.options; + if (uniqueKeys === false) + return false; + const isEqual = typeof uniqueKeys === 'function' + ? uniqueKeys + : (a, b) => a === b || (identity.isScalar(a) && identity.isScalar(b) && a.value === b.value); + return items.some(pair => isEqual(pair.key, search)); +} + +exports.mapIncludes = mapIncludes; diff --git a/node_modules/yaml/dist/doc/Document.d.ts b/node_modules/yaml/dist/doc/Document.d.ts new file mode 100644 index 0000000..7cfd686 --- /dev/null +++ b/node_modules/yaml/dist/doc/Document.d.ts @@ -0,0 +1,141 @@ +import type { YAMLError, YAMLWarning } from '../errors'; +import { Alias } from '../nodes/Alias'; +import { NODE_TYPE } from '../nodes/identity'; +import type { Node, NodeType, ParsedNode, Range } from '../nodes/Node'; +import { Pair } from '../nodes/Pair'; +import type { Scalar } from '../nodes/Scalar'; +import type { YAMLMap } from '../nodes/YAMLMap'; +import type { YAMLSeq } from '../nodes/YAMLSeq'; +import type { CreateNodeOptions, DocumentOptions, ParseOptions, SchemaOptions, ToJSOptions, ToStringOptions } from '../options'; +import { Schema } from '../schema/Schema'; +import { Directives } from './directives'; +export type Replacer = any[] | ((key: any, value: any) => unknown); +export declare namespace Document { + /** @ts-ignore The typing of directives fails in TS <= 4.2 */ + interface Parsed extends Document { + directives: Directives; + range: Range; + } +} +export declare class Document { + readonly [NODE_TYPE]: symbol; + /** A comment before this Document */ + commentBefore: string | null; + /** A comment immediately after this Document */ + comment: string | null; + /** The document contents. */ + contents: Strict extends true ? Contents | null : Contents; + directives: Strict extends true ? Directives | undefined : Directives; + /** Errors encountered during parsing. */ + errors: YAMLError[]; + options: Required>; + /** + * The `[start, value-end, node-end]` character offsets for the part of the + * source parsed into this document (undefined if not parsed). The `value-end` + * and `node-end` positions are themselves not included in their respective + * ranges. + */ + range?: Range; + /** The schema used with the document. Use `setSchema()` to change. */ + schema: Schema; + /** Warnings encountered during parsing. */ + warnings: YAMLWarning[]; + /** + * @param value - The initial value for the document, which will be wrapped + * in a Node container. + */ + constructor(value?: any, options?: DocumentOptions & SchemaOptions & ParseOptions & CreateNodeOptions); + constructor(value: any, replacer: null | Replacer, options?: DocumentOptions & SchemaOptions & ParseOptions & CreateNodeOptions); + /** + * Create a deep copy of this Document and its contents. + * + * Custom Node values that inherit from `Object` still refer to their original instances. + */ + clone(): Document; + /** Adds a value to the document. */ + add(value: any): void; + /** Adds a value to the document. */ + addIn(path: Iterable, value: unknown): void; + /** + * Create a new `Alias` node, ensuring that the target `node` has the required anchor. + * + * If `node` already has an anchor, `name` is ignored. + * Otherwise, the `node.anchor` value will be set to `name`, + * or if an anchor with that name is already present in the document, + * `name` will be used as a prefix for a new unique anchor. + * If `name` is undefined, the generated anchor will use 'a' as a prefix. + */ + createAlias(node: Strict extends true ? Scalar | YAMLMap | YAMLSeq : Node, name?: string): Alias; + /** + * Convert any value into a `Node` using the current schema, recursively + * turning objects into collections. + */ + createNode(value: T, options?: CreateNodeOptions): NodeType; + createNode(value: T, replacer: Replacer | CreateNodeOptions | null, options?: CreateNodeOptions): NodeType; + /** + * Convert a key and a value into a `Pair` using the current schema, + * recursively wrapping all values as `Scalar` or `Collection` nodes. + */ + createPair(key: unknown, value: unknown, options?: CreateNodeOptions): Pair; + /** + * Removes a value from the document. + * @returns `true` if the item was found and removed. + */ + delete(key: unknown): boolean; + /** + * Removes a value from the document. + * @returns `true` if the item was found and removed. + */ + deleteIn(path: Iterable | null): boolean; + /** + * Returns item at `key`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + */ + get(key: unknown, keepScalar?: boolean): Strict extends true ? unknown : any; + /** + * Returns item at `path`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + */ + getIn(path: Iterable | null, keepScalar?: boolean): Strict extends true ? unknown : any; + /** + * Checks if the document includes a value with the key `key`. + */ + has(key: unknown): boolean; + /** + * Checks if the document includes a value at `path`. + */ + hasIn(path: Iterable | null): boolean; + /** + * Sets a value in this document. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + */ + set(key: any, value: unknown): void; + /** + * Sets a value in this document. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + */ + setIn(path: Iterable | null, value: unknown): void; + /** + * Change the YAML version and schema used by the document. + * A `null` version disables support for directives, explicit tags, anchors, and aliases. + * It also requires the `schema` option to be given as a `Schema` instance value. + * + * Overrides all previously set schema options. + */ + setSchema(version: '1.1' | '1.2' | 'next' | null, options?: SchemaOptions): void; + /** A plain JavaScript representation of the document `contents`. */ + toJS(opt?: ToJSOptions & { + [ignored: string]: unknown; + }): any; + /** + * A JSON representation of the document `contents`. + * + * @param jsonArg Used by `JSON.stringify` to indicate the array index or + * property name. + */ + toJSON(jsonArg?: string | null, onAnchor?: ToJSOptions['onAnchor']): any; + /** A YAML representation of the document. */ + toString(options?: ToStringOptions): string; +} diff --git a/node_modules/yaml/dist/doc/Document.js b/node_modules/yaml/dist/doc/Document.js new file mode 100644 index 0000000..a953088 --- /dev/null +++ b/node_modules/yaml/dist/doc/Document.js @@ -0,0 +1,337 @@ +'use strict'; + +var Alias = require('../nodes/Alias.js'); +var Collection = require('../nodes/Collection.js'); +var identity = require('../nodes/identity.js'); +var Pair = require('../nodes/Pair.js'); +var toJS = require('../nodes/toJS.js'); +var Schema = require('../schema/Schema.js'); +var stringifyDocument = require('../stringify/stringifyDocument.js'); +var anchors = require('./anchors.js'); +var applyReviver = require('./applyReviver.js'); +var createNode = require('./createNode.js'); +var directives = require('./directives.js'); + +class Document { + constructor(value, replacer, options) { + /** A comment before this Document */ + this.commentBefore = null; + /** A comment immediately after this Document */ + this.comment = null; + /** Errors encountered during parsing. */ + this.errors = []; + /** Warnings encountered during parsing. */ + this.warnings = []; + Object.defineProperty(this, identity.NODE_TYPE, { value: identity.DOC }); + let _replacer = null; + if (typeof replacer === 'function' || Array.isArray(replacer)) { + _replacer = replacer; + } + else if (options === undefined && replacer) { + options = replacer; + replacer = undefined; + } + const opt = Object.assign({ + intAsBigInt: false, + keepSourceTokens: false, + logLevel: 'warn', + prettyErrors: true, + strict: true, + stringKeys: false, + uniqueKeys: true, + version: '1.2' + }, options); + this.options = opt; + let { version } = opt; + if (options?._directives) { + this.directives = options._directives.atDocument(); + if (this.directives.yaml.explicit) + version = this.directives.yaml.version; + } + else + this.directives = new directives.Directives({ version }); + this.setSchema(version, options); + // @ts-expect-error We can't really know that this matches Contents. + this.contents = + value === undefined ? null : this.createNode(value, _replacer, options); + } + /** + * Create a deep copy of this Document and its contents. + * + * Custom Node values that inherit from `Object` still refer to their original instances. + */ + clone() { + const copy = Object.create(Document.prototype, { + [identity.NODE_TYPE]: { value: identity.DOC } + }); + copy.commentBefore = this.commentBefore; + copy.comment = this.comment; + copy.errors = this.errors.slice(); + copy.warnings = this.warnings.slice(); + copy.options = Object.assign({}, this.options); + if (this.directives) + copy.directives = this.directives.clone(); + copy.schema = this.schema.clone(); + // @ts-expect-error We can't really know that this matches Contents. + copy.contents = identity.isNode(this.contents) + ? this.contents.clone(copy.schema) + : this.contents; + if (this.range) + copy.range = this.range.slice(); + return copy; + } + /** Adds a value to the document. */ + add(value) { + if (assertCollection(this.contents)) + this.contents.add(value); + } + /** Adds a value to the document. */ + addIn(path, value) { + if (assertCollection(this.contents)) + this.contents.addIn(path, value); + } + /** + * Create a new `Alias` node, ensuring that the target `node` has the required anchor. + * + * If `node` already has an anchor, `name` is ignored. + * Otherwise, the `node.anchor` value will be set to `name`, + * or if an anchor with that name is already present in the document, + * `name` will be used as a prefix for a new unique anchor. + * If `name` is undefined, the generated anchor will use 'a' as a prefix. + */ + createAlias(node, name) { + if (!node.anchor) { + const prev = anchors.anchorNames(this); + node.anchor = + // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing + !name || prev.has(name) ? anchors.findNewAnchor(name || 'a', prev) : name; + } + return new Alias.Alias(node.anchor); + } + createNode(value, replacer, options) { + let _replacer = undefined; + if (typeof replacer === 'function') { + value = replacer.call({ '': value }, '', value); + _replacer = replacer; + } + else if (Array.isArray(replacer)) { + const keyToStr = (v) => typeof v === 'number' || v instanceof String || v instanceof Number; + const asStr = replacer.filter(keyToStr).map(String); + if (asStr.length > 0) + replacer = replacer.concat(asStr); + _replacer = replacer; + } + else if (options === undefined && replacer) { + options = replacer; + replacer = undefined; + } + const { aliasDuplicateObjects, anchorPrefix, flow, keepUndefined, onTagObj, tag } = options ?? {}; + const { onAnchor, setAnchors, sourceObjects } = anchors.createNodeAnchors(this, + // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing + anchorPrefix || 'a'); + const ctx = { + aliasDuplicateObjects: aliasDuplicateObjects ?? true, + keepUndefined: keepUndefined ?? false, + onAnchor, + onTagObj, + replacer: _replacer, + schema: this.schema, + sourceObjects + }; + const node = createNode.createNode(value, tag, ctx); + if (flow && identity.isCollection(node)) + node.flow = true; + setAnchors(); + return node; + } + /** + * Convert a key and a value into a `Pair` using the current schema, + * recursively wrapping all values as `Scalar` or `Collection` nodes. + */ + createPair(key, value, options = {}) { + const k = this.createNode(key, null, options); + const v = this.createNode(value, null, options); + return new Pair.Pair(k, v); + } + /** + * Removes a value from the document. + * @returns `true` if the item was found and removed. + */ + delete(key) { + return assertCollection(this.contents) ? this.contents.delete(key) : false; + } + /** + * Removes a value from the document. + * @returns `true` if the item was found and removed. + */ + deleteIn(path) { + if (Collection.isEmptyPath(path)) { + if (this.contents == null) + return false; + // @ts-expect-error Presumed impossible if Strict extends false + this.contents = null; + return true; + } + return assertCollection(this.contents) + ? this.contents.deleteIn(path) + : false; + } + /** + * Returns item at `key`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + */ + get(key, keepScalar) { + return identity.isCollection(this.contents) + ? this.contents.get(key, keepScalar) + : undefined; + } + /** + * Returns item at `path`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + */ + getIn(path, keepScalar) { + if (Collection.isEmptyPath(path)) + return !keepScalar && identity.isScalar(this.contents) + ? this.contents.value + : this.contents; + return identity.isCollection(this.contents) + ? this.contents.getIn(path, keepScalar) + : undefined; + } + /** + * Checks if the document includes a value with the key `key`. + */ + has(key) { + return identity.isCollection(this.contents) ? this.contents.has(key) : false; + } + /** + * Checks if the document includes a value at `path`. + */ + hasIn(path) { + if (Collection.isEmptyPath(path)) + return this.contents !== undefined; + return identity.isCollection(this.contents) ? this.contents.hasIn(path) : false; + } + /** + * Sets a value in this document. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + */ + set(key, value) { + if (this.contents == null) { + // @ts-expect-error We can't really know that this matches Contents. + this.contents = Collection.collectionFromPath(this.schema, [key], value); + } + else if (assertCollection(this.contents)) { + this.contents.set(key, value); + } + } + /** + * Sets a value in this document. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + */ + setIn(path, value) { + if (Collection.isEmptyPath(path)) { + // @ts-expect-error We can't really know that this matches Contents. + this.contents = value; + } + else if (this.contents == null) { + // @ts-expect-error We can't really know that this matches Contents. + this.contents = Collection.collectionFromPath(this.schema, Array.from(path), value); + } + else if (assertCollection(this.contents)) { + this.contents.setIn(path, value); + } + } + /** + * Change the YAML version and schema used by the document. + * A `null` version disables support for directives, explicit tags, anchors, and aliases. + * It also requires the `schema` option to be given as a `Schema` instance value. + * + * Overrides all previously set schema options. + */ + setSchema(version, options = {}) { + if (typeof version === 'number') + version = String(version); + let opt; + switch (version) { + case '1.1': + if (this.directives) + this.directives.yaml.version = '1.1'; + else + this.directives = new directives.Directives({ version: '1.1' }); + opt = { resolveKnownTags: false, schema: 'yaml-1.1' }; + break; + case '1.2': + case 'next': + if (this.directives) + this.directives.yaml.version = version; + else + this.directives = new directives.Directives({ version }); + opt = { resolveKnownTags: true, schema: 'core' }; + break; + case null: + if (this.directives) + delete this.directives; + opt = null; + break; + default: { + const sv = JSON.stringify(version); + throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${sv}`); + } + } + // Not using `instanceof Schema` to allow for duck typing + if (options.schema instanceof Object) + this.schema = options.schema; + else if (opt) + this.schema = new Schema.Schema(Object.assign(opt, options)); + else + throw new Error(`With a null YAML version, the { schema: Schema } option is required`); + } + // json & jsonArg are only used from toJSON() + toJS({ json, jsonArg, mapAsMap, maxAliasCount, onAnchor, reviver } = {}) { + const ctx = { + anchors: new Map(), + doc: this, + keep: !json, + mapAsMap: mapAsMap === true, + mapKeyWarned: false, + maxAliasCount: typeof maxAliasCount === 'number' ? maxAliasCount : 100 + }; + const res = toJS.toJS(this.contents, jsonArg ?? '', ctx); + if (typeof onAnchor === 'function') + for (const { count, res } of ctx.anchors.values()) + onAnchor(res, count); + return typeof reviver === 'function' + ? applyReviver.applyReviver(reviver, { '': res }, '', res) + : res; + } + /** + * A JSON representation of the document `contents`. + * + * @param jsonArg Used by `JSON.stringify` to indicate the array index or + * property name. + */ + toJSON(jsonArg, onAnchor) { + return this.toJS({ json: true, jsonArg, mapAsMap: false, onAnchor }); + } + /** A YAML representation of the document. */ + toString(options = {}) { + if (this.errors.length > 0) + throw new Error('Document with errors cannot be stringified'); + if ('indent' in options && + (!Number.isInteger(options.indent) || Number(options.indent) <= 0)) { + const s = JSON.stringify(options.indent); + throw new Error(`"indent" option must be a positive integer, not ${s}`); + } + return stringifyDocument.stringifyDocument(this, options); + } +} +function assertCollection(contents) { + if (identity.isCollection(contents)) + return true; + throw new Error('Expected a YAML collection as document contents'); +} + +exports.Document = Document; diff --git a/node_modules/yaml/dist/doc/anchors.d.ts b/node_modules/yaml/dist/doc/anchors.d.ts new file mode 100644 index 0000000..feea5e4 --- /dev/null +++ b/node_modules/yaml/dist/doc/anchors.d.ts @@ -0,0 +1,24 @@ +import type { Node } from '../nodes/Node'; +import type { Document } from './Document'; +/** + * Verify that the input string is a valid anchor. + * + * Will throw on errors. + */ +export declare function anchorIsValid(anchor: string): true; +export declare function anchorNames(root: Document | Node): Set; +/** Find a new anchor name with the given `prefix` and a one-indexed suffix. */ +export declare function findNewAnchor(prefix: string, exclude: Set): string; +export declare function createNodeAnchors(doc: Document, prefix: string): { + onAnchor: (source: unknown) => string; + /** + * With circular references, the source node is only resolved after all + * of its child nodes are. This is why anchors are set only after all of + * the nodes have been created. + */ + setAnchors: () => void; + sourceObjects: Map; +}; diff --git a/node_modules/yaml/dist/doc/anchors.js b/node_modules/yaml/dist/doc/anchors.js new file mode 100644 index 0000000..68613fa --- /dev/null +++ b/node_modules/yaml/dist/doc/anchors.js @@ -0,0 +1,76 @@ +'use strict'; + +var identity = require('../nodes/identity.js'); +var visit = require('../visit.js'); + +/** + * Verify that the input string is a valid anchor. + * + * Will throw on errors. + */ +function anchorIsValid(anchor) { + if (/[\x00-\x19\s,[\]{}]/.test(anchor)) { + const sa = JSON.stringify(anchor); + const msg = `Anchor must not contain whitespace or control characters: ${sa}`; + throw new Error(msg); + } + return true; +} +function anchorNames(root) { + const anchors = new Set(); + visit.visit(root, { + Value(_key, node) { + if (node.anchor) + anchors.add(node.anchor); + } + }); + return anchors; +} +/** Find a new anchor name with the given `prefix` and a one-indexed suffix. */ +function findNewAnchor(prefix, exclude) { + for (let i = 1; true; ++i) { + const name = `${prefix}${i}`; + if (!exclude.has(name)) + return name; + } +} +function createNodeAnchors(doc, prefix) { + const aliasObjects = []; + const sourceObjects = new Map(); + let prevAnchors = null; + return { + onAnchor: (source) => { + aliasObjects.push(source); + prevAnchors ?? (prevAnchors = anchorNames(doc)); + const anchor = findNewAnchor(prefix, prevAnchors); + prevAnchors.add(anchor); + return anchor; + }, + /** + * With circular references, the source node is only resolved after all + * of its child nodes are. This is why anchors are set only after all of + * the nodes have been created. + */ + setAnchors: () => { + for (const source of aliasObjects) { + const ref = sourceObjects.get(source); + if (typeof ref === 'object' && + ref.anchor && + (identity.isScalar(ref.node) || identity.isCollection(ref.node))) { + ref.node.anchor = ref.anchor; + } + else { + const error = new Error('Failed to resolve repeated object (this should not happen)'); + error.source = source; + throw error; + } + } + }, + sourceObjects + }; +} + +exports.anchorIsValid = anchorIsValid; +exports.anchorNames = anchorNames; +exports.createNodeAnchors = createNodeAnchors; +exports.findNewAnchor = findNewAnchor; diff --git a/node_modules/yaml/dist/doc/applyReviver.d.ts b/node_modules/yaml/dist/doc/applyReviver.d.ts new file mode 100644 index 0000000..e125b08 --- /dev/null +++ b/node_modules/yaml/dist/doc/applyReviver.d.ts @@ -0,0 +1,9 @@ +export type Reviver = (key: unknown, value: unknown) => unknown; +/** + * Applies the JSON.parse reviver algorithm as defined in the ECMA-262 spec, + * in section 24.5.1.1 "Runtime Semantics: InternalizeJSONProperty" of the + * 2021 edition: https://tc39.es/ecma262/#sec-json.parse + * + * Includes extensions for handling Map and Set objects. + */ +export declare function applyReviver(reviver: Reviver, obj: unknown, key: unknown, val: any): unknown; diff --git a/node_modules/yaml/dist/doc/applyReviver.js b/node_modules/yaml/dist/doc/applyReviver.js new file mode 100644 index 0000000..bfd0ba8 --- /dev/null +++ b/node_modules/yaml/dist/doc/applyReviver.js @@ -0,0 +1,57 @@ +'use strict'; + +/** + * Applies the JSON.parse reviver algorithm as defined in the ECMA-262 spec, + * in section 24.5.1.1 "Runtime Semantics: InternalizeJSONProperty" of the + * 2021 edition: https://tc39.es/ecma262/#sec-json.parse + * + * Includes extensions for handling Map and Set objects. + */ +function applyReviver(reviver, obj, key, val) { + if (val && typeof val === 'object') { + if (Array.isArray(val)) { + for (let i = 0, len = val.length; i < len; ++i) { + const v0 = val[i]; + const v1 = applyReviver(reviver, val, String(i), v0); + // eslint-disable-next-line @typescript-eslint/no-array-delete + if (v1 === undefined) + delete val[i]; + else if (v1 !== v0) + val[i] = v1; + } + } + else if (val instanceof Map) { + for (const k of Array.from(val.keys())) { + const v0 = val.get(k); + const v1 = applyReviver(reviver, val, k, v0); + if (v1 === undefined) + val.delete(k); + else if (v1 !== v0) + val.set(k, v1); + } + } + else if (val instanceof Set) { + for (const v0 of Array.from(val)) { + const v1 = applyReviver(reviver, val, v0, v0); + if (v1 === undefined) + val.delete(v0); + else if (v1 !== v0) { + val.delete(v0); + val.add(v1); + } + } + } + else { + for (const [k, v0] of Object.entries(val)) { + const v1 = applyReviver(reviver, val, k, v0); + if (v1 === undefined) + delete val[k]; + else if (v1 !== v0) + val[k] = v1; + } + } + } + return reviver.call(obj, key, val); +} + +exports.applyReviver = applyReviver; diff --git a/node_modules/yaml/dist/doc/createNode.d.ts b/node_modules/yaml/dist/doc/createNode.d.ts new file mode 100644 index 0000000..1488ff6 --- /dev/null +++ b/node_modules/yaml/dist/doc/createNode.d.ts @@ -0,0 +1,17 @@ +import type { Node } from '../nodes/Node'; +import type { Schema } from '../schema/Schema'; +import type { CollectionTag, ScalarTag } from '../schema/types'; +import type { Replacer } from './Document'; +export interface CreateNodeContext { + aliasDuplicateObjects: boolean; + keepUndefined: boolean; + onAnchor: (source: unknown) => string; + onTagObj?: (tagObj: ScalarTag | CollectionTag) => void; + sourceObjects: Map; + replacer?: Replacer; + schema: Schema; +} +export declare function createNode(value: unknown, tagName: string | undefined, ctx: CreateNodeContext): Node; diff --git a/node_modules/yaml/dist/doc/createNode.js b/node_modules/yaml/dist/doc/createNode.js new file mode 100644 index 0000000..53522c6 --- /dev/null +++ b/node_modules/yaml/dist/doc/createNode.js @@ -0,0 +1,90 @@ +'use strict'; + +var Alias = require('../nodes/Alias.js'); +var identity = require('../nodes/identity.js'); +var Scalar = require('../nodes/Scalar.js'); + +const defaultTagPrefix = 'tag:yaml.org,2002:'; +function findTagObject(value, tagName, tags) { + if (tagName) { + const match = tags.filter(t => t.tag === tagName); + const tagObj = match.find(t => !t.format) ?? match[0]; + if (!tagObj) + throw new Error(`Tag ${tagName} not found`); + return tagObj; + } + return tags.find(t => t.identify?.(value) && !t.format); +} +function createNode(value, tagName, ctx) { + if (identity.isDocument(value)) + value = value.contents; + if (identity.isNode(value)) + return value; + if (identity.isPair(value)) { + const map = ctx.schema[identity.MAP].createNode?.(ctx.schema, null, ctx); + map.items.push(value); + return map; + } + if (value instanceof String || + value instanceof Number || + value instanceof Boolean || + (typeof BigInt !== 'undefined' && value instanceof BigInt) // not supported everywhere + ) { + // https://tc39.es/ecma262/#sec-serializejsonproperty + value = value.valueOf(); + } + const { aliasDuplicateObjects, onAnchor, onTagObj, schema, sourceObjects } = ctx; + // Detect duplicate references to the same object & use Alias nodes for all + // after first. The `ref` wrapper allows for circular references to resolve. + let ref = undefined; + if (aliasDuplicateObjects && value && typeof value === 'object') { + ref = sourceObjects.get(value); + if (ref) { + ref.anchor ?? (ref.anchor = onAnchor(value)); + return new Alias.Alias(ref.anchor); + } + else { + ref = { anchor: null, node: null }; + sourceObjects.set(value, ref); + } + } + if (tagName?.startsWith('!!')) + tagName = defaultTagPrefix + tagName.slice(2); + let tagObj = findTagObject(value, tagName, schema.tags); + if (!tagObj) { + if (value && typeof value.toJSON === 'function') { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call + value = value.toJSON(); + } + if (!value || typeof value !== 'object') { + const node = new Scalar.Scalar(value); + if (ref) + ref.node = node; + return node; + } + tagObj = + value instanceof Map + ? schema[identity.MAP] + : Symbol.iterator in Object(value) + ? schema[identity.SEQ] + : schema[identity.MAP]; + } + if (onTagObj) { + onTagObj(tagObj); + delete ctx.onTagObj; + } + const node = tagObj?.createNode + ? tagObj.createNode(ctx.schema, value, ctx) + : typeof tagObj?.nodeClass?.from === 'function' + ? tagObj.nodeClass.from(ctx.schema, value, ctx) + : new Scalar.Scalar(value); + if (tagName) + node.tag = tagName; + else if (!tagObj.default) + node.tag = tagObj.tag; + if (ref) + ref.node = node; + return node; +} + +exports.createNode = createNode; diff --git a/node_modules/yaml/dist/doc/directives.d.ts b/node_modules/yaml/dist/doc/directives.d.ts new file mode 100644 index 0000000..ead2911 --- /dev/null +++ b/node_modules/yaml/dist/doc/directives.d.ts @@ -0,0 +1,49 @@ +import type { Document } from './Document'; +export declare class Directives { + static defaultYaml: Directives['yaml']; + static defaultTags: Directives['tags']; + yaml: { + version: '1.1' | '1.2' | 'next'; + explicit?: boolean; + }; + tags: Record; + /** + * The directives-end/doc-start marker `---`. If `null`, a marker may still be + * included in the document's stringified representation. + */ + docStart: true | null; + /** The doc-end marker `...`. */ + docEnd: boolean; + /** + * Used when parsing YAML 1.1, where: + * > If the document specifies no directives, it is parsed using the same + * > settings as the previous document. If the document does specify any + * > directives, all directives of previous documents, if any, are ignored. + */ + private atNextDocument?; + constructor(yaml?: Directives['yaml'], tags?: Directives['tags']); + clone(): Directives; + /** + * During parsing, get a Directives instance for the current document and + * update the stream state according to the current version's spec. + */ + atDocument(): Directives; + /** + * @param onError - May be called even if the action was successful + * @returns `true` on success + */ + add(line: string, onError: (offset: number, message: string, warning?: boolean) => void): boolean; + /** + * Resolves a tag, matching handles to those defined in %TAG directives. + * + * @returns Resolved tag, which may also be the non-specific tag `'!'` or a + * `'!local'` tag, or `null` if unresolvable. + */ + tagName(source: string, onError: (message: string) => void): string | null; + /** + * Given a fully resolved tag, returns its printable string form, + * taking into account current tag prefixes and defaults. + */ + tagString(tag: string): string; + toString(doc?: Document): string; +} diff --git a/node_modules/yaml/dist/doc/directives.js b/node_modules/yaml/dist/doc/directives.js new file mode 100644 index 0000000..e13b10e --- /dev/null +++ b/node_modules/yaml/dist/doc/directives.js @@ -0,0 +1,178 @@ +'use strict'; + +var identity = require('../nodes/identity.js'); +var visit = require('../visit.js'); + +const escapeChars = { + '!': '%21', + ',': '%2C', + '[': '%5B', + ']': '%5D', + '{': '%7B', + '}': '%7D' +}; +const escapeTagName = (tn) => tn.replace(/[!,[\]{}]/g, ch => escapeChars[ch]); +class Directives { + constructor(yaml, tags) { + /** + * The directives-end/doc-start marker `---`. If `null`, a marker may still be + * included in the document's stringified representation. + */ + this.docStart = null; + /** The doc-end marker `...`. */ + this.docEnd = false; + this.yaml = Object.assign({}, Directives.defaultYaml, yaml); + this.tags = Object.assign({}, Directives.defaultTags, tags); + } + clone() { + const copy = new Directives(this.yaml, this.tags); + copy.docStart = this.docStart; + return copy; + } + /** + * During parsing, get a Directives instance for the current document and + * update the stream state according to the current version's spec. + */ + atDocument() { + const res = new Directives(this.yaml, this.tags); + switch (this.yaml.version) { + case '1.1': + this.atNextDocument = true; + break; + case '1.2': + this.atNextDocument = false; + this.yaml = { + explicit: Directives.defaultYaml.explicit, + version: '1.2' + }; + this.tags = Object.assign({}, Directives.defaultTags); + break; + } + return res; + } + /** + * @param onError - May be called even if the action was successful + * @returns `true` on success + */ + add(line, onError) { + if (this.atNextDocument) { + this.yaml = { explicit: Directives.defaultYaml.explicit, version: '1.1' }; + this.tags = Object.assign({}, Directives.defaultTags); + this.atNextDocument = false; + } + const parts = line.trim().split(/[ \t]+/); + const name = parts.shift(); + switch (name) { + case '%TAG': { + if (parts.length !== 2) { + onError(0, '%TAG directive should contain exactly two parts'); + if (parts.length < 2) + return false; + } + const [handle, prefix] = parts; + this.tags[handle] = prefix; + return true; + } + case '%YAML': { + this.yaml.explicit = true; + if (parts.length !== 1) { + onError(0, '%YAML directive should contain exactly one part'); + return false; + } + const [version] = parts; + if (version === '1.1' || version === '1.2') { + this.yaml.version = version; + return true; + } + else { + const isValid = /^\d+\.\d+$/.test(version); + onError(6, `Unsupported YAML version ${version}`, isValid); + return false; + } + } + default: + onError(0, `Unknown directive ${name}`, true); + return false; + } + } + /** + * Resolves a tag, matching handles to those defined in %TAG directives. + * + * @returns Resolved tag, which may also be the non-specific tag `'!'` or a + * `'!local'` tag, or `null` if unresolvable. + */ + tagName(source, onError) { + if (source === '!') + return '!'; // non-specific tag + if (source[0] !== '!') { + onError(`Not a valid tag: ${source}`); + return null; + } + if (source[1] === '<') { + const verbatim = source.slice(2, -1); + if (verbatim === '!' || verbatim === '!!') { + onError(`Verbatim tags aren't resolved, so ${source} is invalid.`); + return null; + } + if (source[source.length - 1] !== '>') + onError('Verbatim tags must end with a >'); + return verbatim; + } + const [, handle, suffix] = source.match(/^(.*!)([^!]*)$/s); + if (!suffix) + onError(`The ${source} tag has no suffix`); + const prefix = this.tags[handle]; + if (prefix) { + try { + return prefix + decodeURIComponent(suffix); + } + catch (error) { + onError(String(error)); + return null; + } + } + if (handle === '!') + return source; // local tag + onError(`Could not resolve tag: ${source}`); + return null; + } + /** + * Given a fully resolved tag, returns its printable string form, + * taking into account current tag prefixes and defaults. + */ + tagString(tag) { + for (const [handle, prefix] of Object.entries(this.tags)) { + if (tag.startsWith(prefix)) + return handle + escapeTagName(tag.substring(prefix.length)); + } + return tag[0] === '!' ? tag : `!<${tag}>`; + } + toString(doc) { + const lines = this.yaml.explicit + ? [`%YAML ${this.yaml.version || '1.2'}`] + : []; + const tagEntries = Object.entries(this.tags); + let tagNames; + if (doc && tagEntries.length > 0 && identity.isNode(doc.contents)) { + const tags = {}; + visit.visit(doc.contents, (_key, node) => { + if (identity.isNode(node) && node.tag) + tags[node.tag] = true; + }); + tagNames = Object.keys(tags); + } + else + tagNames = []; + for (const [handle, prefix] of tagEntries) { + if (handle === '!!' && prefix === 'tag:yaml.org,2002:') + continue; + if (!doc || tagNames.some(tn => tn.startsWith(prefix))) + lines.push(`%TAG ${handle} ${prefix}`); + } + return lines.join('\n'); + } +} +Directives.defaultYaml = { explicit: false, version: '1.2' }; +Directives.defaultTags = { '!!': 'tag:yaml.org,2002:' }; + +exports.Directives = Directives; diff --git a/node_modules/yaml/dist/errors.d.ts b/node_modules/yaml/dist/errors.d.ts new file mode 100644 index 0000000..e5ee857 --- /dev/null +++ b/node_modules/yaml/dist/errors.d.ts @@ -0,0 +1,21 @@ +import type { LineCounter } from './parse/line-counter'; +export type ErrorCode = 'ALIAS_PROPS' | 'BAD_ALIAS' | 'BAD_DIRECTIVE' | 'BAD_DQ_ESCAPE' | 'BAD_INDENT' | 'BAD_PROP_ORDER' | 'BAD_SCALAR_START' | 'BLOCK_AS_IMPLICIT_KEY' | 'BLOCK_IN_FLOW' | 'DUPLICATE_KEY' | 'IMPOSSIBLE' | 'KEY_OVER_1024_CHARS' | 'MISSING_CHAR' | 'MULTILINE_IMPLICIT_KEY' | 'MULTIPLE_ANCHORS' | 'MULTIPLE_DOCS' | 'MULTIPLE_TAGS' | 'NON_STRING_KEY' | 'TAB_AS_INDENT' | 'TAG_RESOLVE_FAILED' | 'UNEXPECTED_TOKEN' | 'BAD_COLLECTION_TYPE'; +export type LinePos = { + line: number; + col: number; +}; +export declare class YAMLError extends Error { + name: 'YAMLParseError' | 'YAMLWarning'; + code: ErrorCode; + message: string; + pos: [number, number]; + linePos?: [LinePos] | [LinePos, LinePos]; + constructor(name: YAMLError['name'], pos: [number, number], code: ErrorCode, message: string); +} +export declare class YAMLParseError extends YAMLError { + constructor(pos: [number, number], code: ErrorCode, message: string); +} +export declare class YAMLWarning extends YAMLError { + constructor(pos: [number, number], code: ErrorCode, message: string); +} +export declare const prettifyError: (src: string, lc: LineCounter) => (error: YAMLError) => void; diff --git a/node_modules/yaml/dist/errors.js b/node_modules/yaml/dist/errors.js new file mode 100644 index 0000000..9d04c60 --- /dev/null +++ b/node_modules/yaml/dist/errors.js @@ -0,0 +1,62 @@ +'use strict'; + +class YAMLError extends Error { + constructor(name, pos, code, message) { + super(); + this.name = name; + this.code = code; + this.message = message; + this.pos = pos; + } +} +class YAMLParseError extends YAMLError { + constructor(pos, code, message) { + super('YAMLParseError', pos, code, message); + } +} +class YAMLWarning extends YAMLError { + constructor(pos, code, message) { + super('YAMLWarning', pos, code, message); + } +} +const prettifyError = (src, lc) => (error) => { + if (error.pos[0] === -1) + return; + error.linePos = error.pos.map(pos => lc.linePos(pos)); + const { line, col } = error.linePos[0]; + error.message += ` at line ${line}, column ${col}`; + let ci = col - 1; + let lineStr = src + .substring(lc.lineStarts[line - 1], lc.lineStarts[line]) + .replace(/[\n\r]+$/, ''); + // Trim to max 80 chars, keeping col position near the middle + if (ci >= 60 && lineStr.length > 80) { + const trimStart = Math.min(ci - 39, lineStr.length - 79); + lineStr = '…' + lineStr.substring(trimStart); + ci -= trimStart - 1; + } + if (lineStr.length > 80) + lineStr = lineStr.substring(0, 79) + '…'; + // Include previous line in context if pointing at line start + if (line > 1 && /^ *$/.test(lineStr.substring(0, ci))) { + // Regexp won't match if start is trimmed + let prev = src.substring(lc.lineStarts[line - 2], lc.lineStarts[line - 1]); + if (prev.length > 80) + prev = prev.substring(0, 79) + '…\n'; + lineStr = prev + lineStr; + } + if (/[^ ]/.test(lineStr)) { + let count = 1; + const end = error.linePos[1]; + if (end && end.line === line && end.col > col) { + count = Math.max(1, Math.min(end.col - col, 80 - ci)); + } + const pointer = ' '.repeat(ci) + '^'.repeat(count); + error.message += `:\n\n${lineStr}\n${pointer}\n`; + } +}; + +exports.YAMLError = YAMLError; +exports.YAMLParseError = YAMLParseError; +exports.YAMLWarning = YAMLWarning; +exports.prettifyError = prettifyError; diff --git a/node_modules/yaml/dist/index.d.ts b/node_modules/yaml/dist/index.d.ts new file mode 100644 index 0000000..075c612 --- /dev/null +++ b/node_modules/yaml/dist/index.d.ts @@ -0,0 +1,25 @@ +export { Composer } from './compose/composer'; +export { Document } from './doc/Document'; +export { Schema } from './schema/Schema'; +export type { ErrorCode } from './errors'; +export { YAMLError, YAMLParseError, YAMLWarning } from './errors'; +export { Alias } from './nodes/Alias'; +export { isAlias, isCollection, isDocument, isMap, isNode, isPair, isScalar, isSeq } from './nodes/identity'; +export type { Node, ParsedNode, Range } from './nodes/Node'; +export { Pair } from './nodes/Pair'; +export { Scalar } from './nodes/Scalar'; +export { YAMLMap } from './nodes/YAMLMap'; +export { YAMLSeq } from './nodes/YAMLSeq'; +export type { CreateNodeOptions, DocumentOptions, ParseOptions, SchemaOptions, ToJSOptions, ToStringOptions } from './options'; +export * as CST from './parse/cst'; +export { Lexer } from './parse/lexer'; +export { LineCounter } from './parse/line-counter'; +export { Parser } from './parse/parser'; +export type { EmptyStream } from './public-api'; +export { parse, parseAllDocuments, parseDocument, stringify } from './public-api'; +export type { TagId, Tags } from './schema/tags'; +export type { CollectionTag, ScalarTag } from './schema/types'; +export type { YAMLOMap } from './schema/yaml-1.1/omap'; +export type { YAMLSet } from './schema/yaml-1.1/set'; +export type { asyncVisitor, asyncVisitorFn, visitor, visitorFn } from './visit'; +export { visit, visitAsync } from './visit'; diff --git a/node_modules/yaml/dist/index.js b/node_modules/yaml/dist/index.js new file mode 100644 index 0000000..18c0cb6 --- /dev/null +++ b/node_modules/yaml/dist/index.js @@ -0,0 +1,50 @@ +'use strict'; + +var composer = require('./compose/composer.js'); +var Document = require('./doc/Document.js'); +var Schema = require('./schema/Schema.js'); +var errors = require('./errors.js'); +var Alias = require('./nodes/Alias.js'); +var identity = require('./nodes/identity.js'); +var Pair = require('./nodes/Pair.js'); +var Scalar = require('./nodes/Scalar.js'); +var YAMLMap = require('./nodes/YAMLMap.js'); +var YAMLSeq = require('./nodes/YAMLSeq.js'); +var cst = require('./parse/cst.js'); +var lexer = require('./parse/lexer.js'); +var lineCounter = require('./parse/line-counter.js'); +var parser = require('./parse/parser.js'); +var publicApi = require('./public-api.js'); +var visit = require('./visit.js'); + + + +exports.Composer = composer.Composer; +exports.Document = Document.Document; +exports.Schema = Schema.Schema; +exports.YAMLError = errors.YAMLError; +exports.YAMLParseError = errors.YAMLParseError; +exports.YAMLWarning = errors.YAMLWarning; +exports.Alias = Alias.Alias; +exports.isAlias = identity.isAlias; +exports.isCollection = identity.isCollection; +exports.isDocument = identity.isDocument; +exports.isMap = identity.isMap; +exports.isNode = identity.isNode; +exports.isPair = identity.isPair; +exports.isScalar = identity.isScalar; +exports.isSeq = identity.isSeq; +exports.Pair = Pair.Pair; +exports.Scalar = Scalar.Scalar; +exports.YAMLMap = YAMLMap.YAMLMap; +exports.YAMLSeq = YAMLSeq.YAMLSeq; +exports.CST = cst; +exports.Lexer = lexer.Lexer; +exports.LineCounter = lineCounter.LineCounter; +exports.Parser = parser.Parser; +exports.parse = publicApi.parse; +exports.parseAllDocuments = publicApi.parseAllDocuments; +exports.parseDocument = publicApi.parseDocument; +exports.stringify = publicApi.stringify; +exports.visit = visit.visit; +exports.visitAsync = visit.visitAsync; diff --git a/node_modules/yaml/dist/log.d.ts b/node_modules/yaml/dist/log.d.ts new file mode 100644 index 0000000..5e21612 --- /dev/null +++ b/node_modules/yaml/dist/log.d.ts @@ -0,0 +1,3 @@ +export type LogLevelId = 'silent' | 'error' | 'warn' | 'debug'; +export declare function debug(logLevel: LogLevelId, ...messages: any[]): void; +export declare function warn(logLevel: LogLevelId, warning: string | Error): void; diff --git a/node_modules/yaml/dist/log.js b/node_modules/yaml/dist/log.js new file mode 100644 index 0000000..65f9950 --- /dev/null +++ b/node_modules/yaml/dist/log.js @@ -0,0 +1,19 @@ +'use strict'; + +var node_process = require('process'); + +function debug(logLevel, ...messages) { + if (logLevel === 'debug') + console.log(...messages); +} +function warn(logLevel, warning) { + if (logLevel === 'debug' || logLevel === 'warn') { + if (typeof node_process.emitWarning === 'function') + node_process.emitWarning(warning); + else + console.warn(warning); + } +} + +exports.debug = debug; +exports.warn = warn; diff --git a/node_modules/yaml/dist/nodes/Alias.d.ts b/node_modules/yaml/dist/nodes/Alias.d.ts new file mode 100644 index 0000000..c48f40e --- /dev/null +++ b/node_modules/yaml/dist/nodes/Alias.d.ts @@ -0,0 +1,29 @@ +import type { Document } from '../doc/Document'; +import type { FlowScalar } from '../parse/cst'; +import type { StringifyContext } from '../stringify/stringify'; +import type { Range } from './Node'; +import { NodeBase } from './Node'; +import type { Scalar } from './Scalar'; +import type { ToJSContext } from './toJS'; +import type { YAMLMap } from './YAMLMap'; +import type { YAMLSeq } from './YAMLSeq'; +export declare namespace Alias { + interface Parsed extends Alias { + range: Range; + srcToken?: FlowScalar & { + type: 'alias'; + }; + } +} +export declare class Alias extends NodeBase { + source: string; + anchor?: never; + constructor(source: string); + /** + * Resolve the value of this alias within `doc`, finding the last + * instance of the `source` anchor before this node. + */ + resolve(doc: Document, ctx?: ToJSContext): Scalar | YAMLMap | YAMLSeq | undefined; + toJSON(_arg?: unknown, ctx?: ToJSContext): unknown; + toString(ctx?: StringifyContext, _onComment?: () => void, _onChompKeep?: () => void): string; +} diff --git a/node_modules/yaml/dist/nodes/Alias.js b/node_modules/yaml/dist/nodes/Alias.js new file mode 100644 index 0000000..a9fac7c --- /dev/null +++ b/node_modules/yaml/dist/nodes/Alias.js @@ -0,0 +1,116 @@ +'use strict'; + +var anchors = require('../doc/anchors.js'); +var visit = require('../visit.js'); +var identity = require('./identity.js'); +var Node = require('./Node.js'); +var toJS = require('./toJS.js'); + +class Alias extends Node.NodeBase { + constructor(source) { + super(identity.ALIAS); + this.source = source; + Object.defineProperty(this, 'tag', { + set() { + throw new Error('Alias nodes cannot have tags'); + } + }); + } + /** + * Resolve the value of this alias within `doc`, finding the last + * instance of the `source` anchor before this node. + */ + resolve(doc, ctx) { + let nodes; + if (ctx?.aliasResolveCache) { + nodes = ctx.aliasResolveCache; + } + else { + nodes = []; + visit.visit(doc, { + Node: (_key, node) => { + if (identity.isAlias(node) || identity.hasAnchor(node)) + nodes.push(node); + } + }); + if (ctx) + ctx.aliasResolveCache = nodes; + } + let found = undefined; + for (const node of nodes) { + if (node === this) + break; + if (node.anchor === this.source) + found = node; + } + return found; + } + toJSON(_arg, ctx) { + if (!ctx) + return { source: this.source }; + const { anchors, doc, maxAliasCount } = ctx; + const source = this.resolve(doc, ctx); + if (!source) { + const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`; + throw new ReferenceError(msg); + } + let data = anchors.get(source); + if (!data) { + // Resolve anchors for Node.prototype.toJS() + toJS.toJS(source, null, ctx); + data = anchors.get(source); + } + /* istanbul ignore if */ + if (!data || data.res === undefined) { + const msg = 'This should not happen: Alias anchor was not resolved?'; + throw new ReferenceError(msg); + } + if (maxAliasCount >= 0) { + data.count += 1; + if (data.aliasCount === 0) + data.aliasCount = getAliasCount(doc, source, anchors); + if (data.count * data.aliasCount > maxAliasCount) { + const msg = 'Excessive alias count indicates a resource exhaustion attack'; + throw new ReferenceError(msg); + } + } + return data.res; + } + toString(ctx, _onComment, _onChompKeep) { + const src = `*${this.source}`; + if (ctx) { + anchors.anchorIsValid(this.source); + if (ctx.options.verifyAliasOrder && !ctx.anchors.has(this.source)) { + const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`; + throw new Error(msg); + } + if (ctx.implicitKey) + return `${src} `; + } + return src; + } +} +function getAliasCount(doc, node, anchors) { + if (identity.isAlias(node)) { + const source = node.resolve(doc); + const anchor = anchors && source && anchors.get(source); + return anchor ? anchor.count * anchor.aliasCount : 0; + } + else if (identity.isCollection(node)) { + let count = 0; + for (const item of node.items) { + const c = getAliasCount(doc, item, anchors); + if (c > count) + count = c; + } + return count; + } + else if (identity.isPair(node)) { + const kc = getAliasCount(doc, node.key, anchors); + const vc = getAliasCount(doc, node.value, anchors); + return Math.max(kc, vc); + } + return 1; +} + +exports.Alias = Alias; diff --git a/node_modules/yaml/dist/nodes/Collection.d.ts b/node_modules/yaml/dist/nodes/Collection.d.ts new file mode 100644 index 0000000..ffbacfc --- /dev/null +++ b/node_modules/yaml/dist/nodes/Collection.d.ts @@ -0,0 +1,73 @@ +import type { Schema } from '../schema/Schema'; +import { NODE_TYPE } from './identity'; +import { NodeBase } from './Node'; +export declare function collectionFromPath(schema: Schema, path: unknown[], value: unknown): import('./Node').Node; +export declare const isEmptyPath: (path: Iterable | null | undefined) => path is null | undefined; +export declare abstract class Collection extends NodeBase { + schema: Schema | undefined; + [NODE_TYPE]: symbol; + items: unknown[]; + /** An optional anchor on this node. Used by alias nodes. */ + anchor?: string; + /** + * If true, stringify this and all child nodes using flow rather than + * block styles. + */ + flow?: boolean; + constructor(type: symbol, schema?: Schema); + /** + * Create a copy of this collection. + * + * @param schema - If defined, overwrites the original's schema + */ + clone(schema?: Schema): Collection; + /** Adds a value to the collection. */ + abstract add(value: unknown): void; + /** + * Removes a value from the collection. + * @returns `true` if the item was found and removed. + */ + abstract delete(key: unknown): boolean; + /** + * Returns item at `key`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + */ + abstract get(key: unknown, keepScalar?: boolean): unknown; + /** + * Checks if the collection includes a value with the key `key`. + */ + abstract has(key: unknown): boolean; + /** + * Sets a value in this collection. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + */ + abstract set(key: unknown, value: unknown): void; + /** + * Adds a value to the collection. For `!!map` and `!!omap` the value must + * be a Pair instance or a `{ key, value }` object, which may not have a key + * that already exists in the map. + */ + addIn(path: Iterable, value: unknown): void; + /** + * Removes a value from the collection. + * @returns `true` if the item was found and removed. + */ + deleteIn(path: Iterable): boolean; + /** + * Returns item at `key`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + */ + getIn(path: Iterable, keepScalar?: boolean): unknown; + hasAllNullValues(allowScalar?: boolean): boolean; + /** + * Checks if the collection includes a value with the key `key`. + */ + hasIn(path: Iterable): boolean; + /** + * Sets a value in this collection. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + */ + setIn(path: Iterable, value: unknown): void; +} diff --git a/node_modules/yaml/dist/nodes/Collection.js b/node_modules/yaml/dist/nodes/Collection.js new file mode 100644 index 0000000..bdf8cb4 --- /dev/null +++ b/node_modules/yaml/dist/nodes/Collection.js @@ -0,0 +1,151 @@ +'use strict'; + +var createNode = require('../doc/createNode.js'); +var identity = require('./identity.js'); +var Node = require('./Node.js'); + +function collectionFromPath(schema, path, value) { + let v = value; + for (let i = path.length - 1; i >= 0; --i) { + const k = path[i]; + if (typeof k === 'number' && Number.isInteger(k) && k >= 0) { + const a = []; + a[k] = v; + v = a; + } + else { + v = new Map([[k, v]]); + } + } + return createNode.createNode(v, undefined, { + aliasDuplicateObjects: false, + keepUndefined: false, + onAnchor: () => { + throw new Error('This should not happen, please report a bug.'); + }, + schema, + sourceObjects: new Map() + }); +} +// Type guard is intentionally a little wrong so as to be more useful, +// as it does not cover untypable empty non-string iterables (e.g. []). +const isEmptyPath = (path) => path == null || + (typeof path === 'object' && !!path[Symbol.iterator]().next().done); +class Collection extends Node.NodeBase { + constructor(type, schema) { + super(type); + Object.defineProperty(this, 'schema', { + value: schema, + configurable: true, + enumerable: false, + writable: true + }); + } + /** + * Create a copy of this collection. + * + * @param schema - If defined, overwrites the original's schema + */ + clone(schema) { + const copy = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this)); + if (schema) + copy.schema = schema; + copy.items = copy.items.map(it => identity.isNode(it) || identity.isPair(it) ? it.clone(schema) : it); + if (this.range) + copy.range = this.range.slice(); + return copy; + } + /** + * Adds a value to the collection. For `!!map` and `!!omap` the value must + * be a Pair instance or a `{ key, value }` object, which may not have a key + * that already exists in the map. + */ + addIn(path, value) { + if (isEmptyPath(path)) + this.add(value); + else { + const [key, ...rest] = path; + const node = this.get(key, true); + if (identity.isCollection(node)) + node.addIn(rest, value); + else if (node === undefined && this.schema) + this.set(key, collectionFromPath(this.schema, rest, value)); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + } + /** + * Removes a value from the collection. + * @returns `true` if the item was found and removed. + */ + deleteIn(path) { + const [key, ...rest] = path; + if (rest.length === 0) + return this.delete(key); + const node = this.get(key, true); + if (identity.isCollection(node)) + return node.deleteIn(rest); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + /** + * Returns item at `key`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + */ + getIn(path, keepScalar) { + const [key, ...rest] = path; + const node = this.get(key, true); + if (rest.length === 0) + return !keepScalar && identity.isScalar(node) ? node.value : node; + else + return identity.isCollection(node) ? node.getIn(rest, keepScalar) : undefined; + } + hasAllNullValues(allowScalar) { + return this.items.every(node => { + if (!identity.isPair(node)) + return false; + const n = node.value; + return (n == null || + (allowScalar && + identity.isScalar(n) && + n.value == null && + !n.commentBefore && + !n.comment && + !n.tag)); + }); + } + /** + * Checks if the collection includes a value with the key `key`. + */ + hasIn(path) { + const [key, ...rest] = path; + if (rest.length === 0) + return this.has(key); + const node = this.get(key, true); + return identity.isCollection(node) ? node.hasIn(rest) : false; + } + /** + * Sets a value in this collection. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + */ + setIn(path, value) { + const [key, ...rest] = path; + if (rest.length === 0) { + this.set(key, value); + } + else { + const node = this.get(key, true); + if (identity.isCollection(node)) + node.setIn(rest, value); + else if (node === undefined && this.schema) + this.set(key, collectionFromPath(this.schema, rest, value)); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + } +} + +exports.Collection = Collection; +exports.collectionFromPath = collectionFromPath; +exports.isEmptyPath = isEmptyPath; diff --git a/node_modules/yaml/dist/nodes/Node.d.ts b/node_modules/yaml/dist/nodes/Node.d.ts new file mode 100644 index 0000000..5fde1d8 --- /dev/null +++ b/node_modules/yaml/dist/nodes/Node.d.ts @@ -0,0 +1,53 @@ +import type { Document } from '../doc/Document'; +import type { ToJSOptions } from '../options'; +import type { Token } from '../parse/cst'; +import type { StringifyContext } from '../stringify/stringify'; +import type { Alias } from './Alias'; +import { NODE_TYPE } from './identity'; +import type { Scalar } from './Scalar'; +import type { ToJSContext } from './toJS'; +import type { MapLike, YAMLMap } from './YAMLMap'; +import type { YAMLSeq } from './YAMLSeq'; +export type Node = Alias | Scalar | YAMLMap | YAMLSeq; +/** Utility type mapper */ +export type NodeType = T extends string | number | bigint | boolean | null | undefined ? Scalar : T extends Date ? Scalar : T extends Array ? YAMLSeq> : T extends { + [key: string]: any; +} ? YAMLMap, NodeType> : T extends { + [key: number]: any; +} ? YAMLMap, NodeType> : Node; +export type ParsedNode = Alias.Parsed | Scalar.Parsed | YAMLMap.Parsed | YAMLSeq.Parsed; +/** `[start, value-end, node-end]` */ +export type Range = [number, number, number]; +export declare abstract class NodeBase { + readonly [NODE_TYPE]: symbol; + /** A comment on or immediately after this */ + comment?: string | null; + /** A comment before this */ + commentBefore?: string | null; + /** + * The `[start, value-end, node-end]` character offsets for the part of the + * source parsed into this node (undefined if not parsed). The `value-end` + * and `node-end` positions are themselves not included in their respective + * ranges. + */ + range?: Range | null; + /** A blank line before this node and its commentBefore */ + spaceBefore?: boolean; + /** The CST token that was composed into this node. */ + srcToken?: Token; + /** A fully qualified tag, if required */ + tag?: string; + /** + * Customize the way that a key-value pair is resolved. + * Used for YAML 1.1 !!merge << handling. + */ + addToJSMap?: (ctx: ToJSContext | undefined, map: MapLike, value: unknown) => void; + /** A plain JS representation of this node */ + abstract toJSON(): any; + abstract toString(ctx?: StringifyContext, onComment?: () => void, onChompKeep?: () => void): string; + constructor(type: symbol); + /** Create a copy of this node. */ + clone(): NodeBase; + /** A plain JavaScript representation of this node. */ + toJS(doc: Document, { mapAsMap, maxAliasCount, onAnchor, reviver }?: ToJSOptions): any; +} diff --git a/node_modules/yaml/dist/nodes/Node.js b/node_modules/yaml/dist/nodes/Node.js new file mode 100644 index 0000000..d384e1c --- /dev/null +++ b/node_modules/yaml/dist/nodes/Node.js @@ -0,0 +1,40 @@ +'use strict'; + +var applyReviver = require('../doc/applyReviver.js'); +var identity = require('./identity.js'); +var toJS = require('./toJS.js'); + +class NodeBase { + constructor(type) { + Object.defineProperty(this, identity.NODE_TYPE, { value: type }); + } + /** Create a copy of this node. */ + clone() { + const copy = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this)); + if (this.range) + copy.range = this.range.slice(); + return copy; + } + /** A plain JavaScript representation of this node. */ + toJS(doc, { mapAsMap, maxAliasCount, onAnchor, reviver } = {}) { + if (!identity.isDocument(doc)) + throw new TypeError('A document argument is required'); + const ctx = { + anchors: new Map(), + doc, + keep: true, + mapAsMap: mapAsMap === true, + mapKeyWarned: false, + maxAliasCount: typeof maxAliasCount === 'number' ? maxAliasCount : 100 + }; + const res = toJS.toJS(this, '', ctx); + if (typeof onAnchor === 'function') + for (const { count, res } of ctx.anchors.values()) + onAnchor(res, count); + return typeof reviver === 'function' + ? applyReviver.applyReviver(reviver, { '': res }, '', res) + : res; + } +} + +exports.NodeBase = NodeBase; diff --git a/node_modules/yaml/dist/nodes/Pair.d.ts b/node_modules/yaml/dist/nodes/Pair.d.ts new file mode 100644 index 0000000..0fa082d --- /dev/null +++ b/node_modules/yaml/dist/nodes/Pair.d.ts @@ -0,0 +1,22 @@ +import type { CreateNodeContext } from '../doc/createNode'; +import type { CollectionItem } from '../parse/cst'; +import type { Schema } from '../schema/Schema'; +import type { StringifyContext } from '../stringify/stringify'; +import { addPairToJSMap } from './addPairToJSMap'; +import { NODE_TYPE } from './identity'; +import type { Node } from './Node'; +import type { ToJSContext } from './toJS'; +export declare function createPair(key: unknown, value: unknown, ctx: CreateNodeContext): Pair; +export declare class Pair { + readonly [NODE_TYPE]: symbol; + /** Always Node or null when parsed, but can be set to anything. */ + key: K; + /** Always Node or null when parsed, but can be set to anything. */ + value: V | null; + /** The CST token that was composed into this pair. */ + srcToken?: CollectionItem; + constructor(key: K, value?: V | null); + clone(schema?: Schema): Pair; + toJSON(_?: unknown, ctx?: ToJSContext): ReturnType; + toString(ctx?: StringifyContext, onComment?: () => void, onChompKeep?: () => void): string; +} diff --git a/node_modules/yaml/dist/nodes/Pair.js b/node_modules/yaml/dist/nodes/Pair.js new file mode 100644 index 0000000..ae4c772 --- /dev/null +++ b/node_modules/yaml/dist/nodes/Pair.js @@ -0,0 +1,39 @@ +'use strict'; + +var createNode = require('../doc/createNode.js'); +var stringifyPair = require('../stringify/stringifyPair.js'); +var addPairToJSMap = require('./addPairToJSMap.js'); +var identity = require('./identity.js'); + +function createPair(key, value, ctx) { + const k = createNode.createNode(key, undefined, ctx); + const v = createNode.createNode(value, undefined, ctx); + return new Pair(k, v); +} +class Pair { + constructor(key, value = null) { + Object.defineProperty(this, identity.NODE_TYPE, { value: identity.PAIR }); + this.key = key; + this.value = value; + } + clone(schema) { + let { key, value } = this; + if (identity.isNode(key)) + key = key.clone(schema); + if (identity.isNode(value)) + value = value.clone(schema); + return new Pair(key, value); + } + toJSON(_, ctx) { + const pair = ctx?.mapAsMap ? new Map() : {}; + return addPairToJSMap.addPairToJSMap(ctx, pair, this); + } + toString(ctx, onComment, onChompKeep) { + return ctx?.doc + ? stringifyPair.stringifyPair(this, ctx, onComment, onChompKeep) + : JSON.stringify(this); + } +} + +exports.Pair = Pair; +exports.createPair = createPair; diff --git a/node_modules/yaml/dist/nodes/Scalar.d.ts b/node_modules/yaml/dist/nodes/Scalar.d.ts new file mode 100644 index 0000000..d3db567 --- /dev/null +++ b/node_modules/yaml/dist/nodes/Scalar.d.ts @@ -0,0 +1,43 @@ +import type { BlockScalar, FlowScalar } from '../parse/cst'; +import type { Range } from './Node'; +import { NodeBase } from './Node'; +import type { ToJSContext } from './toJS'; +export declare const isScalarValue: (value: unknown) => boolean; +export declare namespace Scalar { + interface Parsed extends Scalar { + range: Range; + source: string; + srcToken?: FlowScalar | BlockScalar; + } + type BLOCK_FOLDED = 'BLOCK_FOLDED'; + type BLOCK_LITERAL = 'BLOCK_LITERAL'; + type PLAIN = 'PLAIN'; + type QUOTE_DOUBLE = 'QUOTE_DOUBLE'; + type QUOTE_SINGLE = 'QUOTE_SINGLE'; + type Type = BLOCK_FOLDED | BLOCK_LITERAL | PLAIN | QUOTE_DOUBLE | QUOTE_SINGLE; +} +export declare class Scalar extends NodeBase { + static readonly BLOCK_FOLDED = "BLOCK_FOLDED"; + static readonly BLOCK_LITERAL = "BLOCK_LITERAL"; + static readonly PLAIN = "PLAIN"; + static readonly QUOTE_DOUBLE = "QUOTE_DOUBLE"; + static readonly QUOTE_SINGLE = "QUOTE_SINGLE"; + value: T; + /** An optional anchor on this node. Used by alias nodes. */ + anchor?: string; + /** + * By default (undefined), numbers use decimal notation. + * The YAML 1.2 core schema only supports 'HEX' and 'OCT'. + * The YAML 1.1 schema also supports 'BIN' and 'TIME' + */ + format?: string; + /** If `value` is a number, use this value when stringifying this node. */ + minFractionDigits?: number; + /** Set during parsing to the source string value */ + source?: string; + /** The scalar style used for the node's string representation */ + type?: Scalar.Type; + constructor(value: T); + toJSON(arg?: any, ctx?: ToJSContext): any; + toString(): string; +} diff --git a/node_modules/yaml/dist/nodes/Scalar.js b/node_modules/yaml/dist/nodes/Scalar.js new file mode 100644 index 0000000..bd7d4d2 --- /dev/null +++ b/node_modules/yaml/dist/nodes/Scalar.js @@ -0,0 +1,27 @@ +'use strict'; + +var identity = require('./identity.js'); +var Node = require('./Node.js'); +var toJS = require('./toJS.js'); + +const isScalarValue = (value) => !value || (typeof value !== 'function' && typeof value !== 'object'); +class Scalar extends Node.NodeBase { + constructor(value) { + super(identity.SCALAR); + this.value = value; + } + toJSON(arg, ctx) { + return ctx?.keep ? this.value : toJS.toJS(this.value, arg, ctx); + } + toString() { + return String(this.value); + } +} +Scalar.BLOCK_FOLDED = 'BLOCK_FOLDED'; +Scalar.BLOCK_LITERAL = 'BLOCK_LITERAL'; +Scalar.PLAIN = 'PLAIN'; +Scalar.QUOTE_DOUBLE = 'QUOTE_DOUBLE'; +Scalar.QUOTE_SINGLE = 'QUOTE_SINGLE'; + +exports.Scalar = Scalar; +exports.isScalarValue = isScalarValue; diff --git a/node_modules/yaml/dist/nodes/YAMLMap.d.ts b/node_modules/yaml/dist/nodes/YAMLMap.d.ts new file mode 100644 index 0000000..8a6aa86 --- /dev/null +++ b/node_modules/yaml/dist/nodes/YAMLMap.d.ts @@ -0,0 +1,53 @@ +import type { BlockMap, FlowCollection } from '../parse/cst'; +import type { Schema } from '../schema/Schema'; +import type { StringifyContext } from '../stringify/stringify'; +import type { CreateNodeContext } from '../util'; +import { Collection } from './Collection'; +import type { ParsedNode, Range } from './Node'; +import { Pair } from './Pair'; +import type { Scalar } from './Scalar'; +import type { ToJSContext } from './toJS'; +export type MapLike = Map | Set | Record; +export declare function findPair(items: Iterable>, key: unknown): Pair | undefined; +export declare namespace YAMLMap { + interface Parsed extends YAMLMap { + items: Pair[]; + range: Range; + srcToken?: BlockMap | FlowCollection; + } +} +export declare class YAMLMap extends Collection { + static get tagName(): 'tag:yaml.org,2002:map'; + items: Pair[]; + constructor(schema?: Schema); + /** + * A generic collection parsing method that can be extended + * to other node classes that inherit from YAMLMap + */ + static from(schema: Schema, obj: unknown, ctx: CreateNodeContext): YAMLMap; + /** + * Adds a value to the collection. + * + * @param overwrite - If not set `true`, using a key that is already in the + * collection will throw. Otherwise, overwrites the previous value. + */ + add(pair: Pair | { + key: K; + value: V; + }, overwrite?: boolean): void; + delete(key: unknown): boolean; + get(key: unknown, keepScalar: true): Scalar | undefined; + get(key: unknown, keepScalar?: false): V | undefined; + get(key: unknown, keepScalar?: boolean): V | Scalar | undefined; + has(key: unknown): boolean; + set(key: K, value: V): void; + /** + * @param ctx - Conversion context, originally set in Document#toJS() + * @param {Class} Type - If set, forces the returned collection type + * @returns Instance of Type, Map, or Object + */ + toJSON>(_?: unknown, ctx?: ToJSContext, Type?: { + new (): T; + }): any; + toString(ctx?: StringifyContext, onComment?: () => void, onChompKeep?: () => void): string; +} diff --git a/node_modules/yaml/dist/nodes/YAMLMap.js b/node_modules/yaml/dist/nodes/YAMLMap.js new file mode 100644 index 0000000..210abbf --- /dev/null +++ b/node_modules/yaml/dist/nodes/YAMLMap.js @@ -0,0 +1,147 @@ +'use strict'; + +var stringifyCollection = require('../stringify/stringifyCollection.js'); +var addPairToJSMap = require('./addPairToJSMap.js'); +var Collection = require('./Collection.js'); +var identity = require('./identity.js'); +var Pair = require('./Pair.js'); +var Scalar = require('./Scalar.js'); + +function findPair(items, key) { + const k = identity.isScalar(key) ? key.value : key; + for (const it of items) { + if (identity.isPair(it)) { + if (it.key === key || it.key === k) + return it; + if (identity.isScalar(it.key) && it.key.value === k) + return it; + } + } + return undefined; +} +class YAMLMap extends Collection.Collection { + static get tagName() { + return 'tag:yaml.org,2002:map'; + } + constructor(schema) { + super(identity.MAP, schema); + this.items = []; + } + /** + * A generic collection parsing method that can be extended + * to other node classes that inherit from YAMLMap + */ + static from(schema, obj, ctx) { + const { keepUndefined, replacer } = ctx; + const map = new this(schema); + const add = (key, value) => { + if (typeof replacer === 'function') + value = replacer.call(obj, key, value); + else if (Array.isArray(replacer) && !replacer.includes(key)) + return; + if (value !== undefined || keepUndefined) + map.items.push(Pair.createPair(key, value, ctx)); + }; + if (obj instanceof Map) { + for (const [key, value] of obj) + add(key, value); + } + else if (obj && typeof obj === 'object') { + for (const key of Object.keys(obj)) + add(key, obj[key]); + } + if (typeof schema.sortMapEntries === 'function') { + map.items.sort(schema.sortMapEntries); + } + return map; + } + /** + * Adds a value to the collection. + * + * @param overwrite - If not set `true`, using a key that is already in the + * collection will throw. Otherwise, overwrites the previous value. + */ + add(pair, overwrite) { + let _pair; + if (identity.isPair(pair)) + _pair = pair; + else if (!pair || typeof pair !== 'object' || !('key' in pair)) { + // In TypeScript, this never happens. + _pair = new Pair.Pair(pair, pair?.value); + } + else + _pair = new Pair.Pair(pair.key, pair.value); + const prev = findPair(this.items, _pair.key); + const sortEntries = this.schema?.sortMapEntries; + if (prev) { + if (!overwrite) + throw new Error(`Key ${_pair.key} already set`); + // For scalars, keep the old node & its comments and anchors + if (identity.isScalar(prev.value) && Scalar.isScalarValue(_pair.value)) + prev.value.value = _pair.value; + else + prev.value = _pair.value; + } + else if (sortEntries) { + const i = this.items.findIndex(item => sortEntries(_pair, item) < 0); + if (i === -1) + this.items.push(_pair); + else + this.items.splice(i, 0, _pair); + } + else { + this.items.push(_pair); + } + } + delete(key) { + const it = findPair(this.items, key); + if (!it) + return false; + const del = this.items.splice(this.items.indexOf(it), 1); + return del.length > 0; + } + get(key, keepScalar) { + const it = findPair(this.items, key); + const node = it?.value; + return (!keepScalar && identity.isScalar(node) ? node.value : node) ?? undefined; + } + has(key) { + return !!findPair(this.items, key); + } + set(key, value) { + this.add(new Pair.Pair(key, value), true); + } + /** + * @param ctx - Conversion context, originally set in Document#toJS() + * @param {Class} Type - If set, forces the returned collection type + * @returns Instance of Type, Map, or Object + */ + toJSON(_, ctx, Type) { + const map = Type ? new Type() : ctx?.mapAsMap ? new Map() : {}; + if (ctx?.onCreate) + ctx.onCreate(map); + for (const item of this.items) + addPairToJSMap.addPairToJSMap(ctx, map, item); + return map; + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + for (const item of this.items) { + if (!identity.isPair(item)) + throw new Error(`Map items must all be pairs; found ${JSON.stringify(item)} instead`); + } + if (!ctx.allNullValues && this.hasAllNullValues(false)) + ctx = Object.assign({}, ctx, { allNullValues: true }); + return stringifyCollection.stringifyCollection(this, ctx, { + blockItemPrefix: '', + flowChars: { start: '{', end: '}' }, + itemIndent: ctx.indent || '', + onChompKeep, + onComment + }); + } +} + +exports.YAMLMap = YAMLMap; +exports.findPair = findPair; diff --git a/node_modules/yaml/dist/nodes/YAMLSeq.d.ts b/node_modules/yaml/dist/nodes/YAMLSeq.d.ts new file mode 100644 index 0000000..23baf2b --- /dev/null +++ b/node_modules/yaml/dist/nodes/YAMLSeq.d.ts @@ -0,0 +1,60 @@ +import type { CreateNodeContext } from '../doc/createNode'; +import type { BlockSequence, FlowCollection } from '../parse/cst'; +import type { Schema } from '../schema/Schema'; +import type { StringifyContext } from '../stringify/stringify'; +import { Collection } from './Collection'; +import type { ParsedNode, Range } from './Node'; +import type { Pair } from './Pair'; +import type { Scalar } from './Scalar'; +import type { ToJSContext } from './toJS'; +export declare namespace YAMLSeq { + interface Parsed = ParsedNode> extends YAMLSeq { + items: T[]; + range: Range; + srcToken?: BlockSequence | FlowCollection; + } +} +export declare class YAMLSeq extends Collection { + static get tagName(): 'tag:yaml.org,2002:seq'; + items: T[]; + constructor(schema?: Schema); + add(value: T): void; + /** + * Removes a value from the collection. + * + * `key` must contain a representation of an integer for this to succeed. + * It may be wrapped in a `Scalar`. + * + * @returns `true` if the item was found and removed. + */ + delete(key: unknown): boolean; + /** + * Returns item at `key`, or `undefined` if not found. By default unwraps + * scalar values from their surrounding node; to disable set `keepScalar` to + * `true` (collections are always returned intact). + * + * `key` must contain a representation of an integer for this to succeed. + * It may be wrapped in a `Scalar`. + */ + get(key: unknown, keepScalar: true): Scalar | undefined; + get(key: unknown, keepScalar?: false): T | undefined; + get(key: unknown, keepScalar?: boolean): T | Scalar | undefined; + /** + * Checks if the collection includes a value with the key `key`. + * + * `key` must contain a representation of an integer for this to succeed. + * It may be wrapped in a `Scalar`. + */ + has(key: unknown): boolean; + /** + * Sets a value in this collection. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + * + * If `key` does not contain a representation of an integer, this will throw. + * It may be wrapped in a `Scalar`. + */ + set(key: unknown, value: T): void; + toJSON(_?: unknown, ctx?: ToJSContext): unknown[]; + toString(ctx?: StringifyContext, onComment?: () => void, onChompKeep?: () => void): string; + static from(schema: Schema, obj: unknown, ctx: CreateNodeContext): YAMLSeq; +} diff --git a/node_modules/yaml/dist/nodes/YAMLSeq.js b/node_modules/yaml/dist/nodes/YAMLSeq.js new file mode 100644 index 0000000..a2af086 --- /dev/null +++ b/node_modules/yaml/dist/nodes/YAMLSeq.js @@ -0,0 +1,115 @@ +'use strict'; + +var createNode = require('../doc/createNode.js'); +var stringifyCollection = require('../stringify/stringifyCollection.js'); +var Collection = require('./Collection.js'); +var identity = require('./identity.js'); +var Scalar = require('./Scalar.js'); +var toJS = require('./toJS.js'); + +class YAMLSeq extends Collection.Collection { + static get tagName() { + return 'tag:yaml.org,2002:seq'; + } + constructor(schema) { + super(identity.SEQ, schema); + this.items = []; + } + add(value) { + this.items.push(value); + } + /** + * Removes a value from the collection. + * + * `key` must contain a representation of an integer for this to succeed. + * It may be wrapped in a `Scalar`. + * + * @returns `true` if the item was found and removed. + */ + delete(key) { + const idx = asItemIndex(key); + if (typeof idx !== 'number') + return false; + const del = this.items.splice(idx, 1); + return del.length > 0; + } + get(key, keepScalar) { + const idx = asItemIndex(key); + if (typeof idx !== 'number') + return undefined; + const it = this.items[idx]; + return !keepScalar && identity.isScalar(it) ? it.value : it; + } + /** + * Checks if the collection includes a value with the key `key`. + * + * `key` must contain a representation of an integer for this to succeed. + * It may be wrapped in a `Scalar`. + */ + has(key) { + const idx = asItemIndex(key); + return typeof idx === 'number' && idx < this.items.length; + } + /** + * Sets a value in this collection. For `!!set`, `value` needs to be a + * boolean to add/remove the item from the set. + * + * If `key` does not contain a representation of an integer, this will throw. + * It may be wrapped in a `Scalar`. + */ + set(key, value) { + const idx = asItemIndex(key); + if (typeof idx !== 'number') + throw new Error(`Expected a valid index, not ${key}.`); + const prev = this.items[idx]; + if (identity.isScalar(prev) && Scalar.isScalarValue(value)) + prev.value = value; + else + this.items[idx] = value; + } + toJSON(_, ctx) { + const seq = []; + if (ctx?.onCreate) + ctx.onCreate(seq); + let i = 0; + for (const item of this.items) + seq.push(toJS.toJS(item, String(i++), ctx)); + return seq; + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + return stringifyCollection.stringifyCollection(this, ctx, { + blockItemPrefix: '- ', + flowChars: { start: '[', end: ']' }, + itemIndent: (ctx.indent || '') + ' ', + onChompKeep, + onComment + }); + } + static from(schema, obj, ctx) { + const { replacer } = ctx; + const seq = new this(schema); + if (obj && Symbol.iterator in Object(obj)) { + let i = 0; + for (let it of obj) { + if (typeof replacer === 'function') { + const key = obj instanceof Set ? it : String(i++); + it = replacer.call(obj, key, it); + } + seq.items.push(createNode.createNode(it, undefined, ctx)); + } + } + return seq; + } +} +function asItemIndex(key) { + let idx = identity.isScalar(key) ? key.value : key; + if (idx && typeof idx === 'string') + idx = Number(idx); + return typeof idx === 'number' && Number.isInteger(idx) && idx >= 0 + ? idx + : null; +} + +exports.YAMLSeq = YAMLSeq; diff --git a/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts b/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts new file mode 100644 index 0000000..58e931c --- /dev/null +++ b/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts @@ -0,0 +1,4 @@ +import type { Pair } from './Pair'; +import type { ToJSContext } from './toJS'; +import type { MapLike } from './YAMLMap'; +export declare function addPairToJSMap(ctx: ToJSContext | undefined, map: MapLike, { key, value }: Pair): MapLike; diff --git a/node_modules/yaml/dist/nodes/addPairToJSMap.js b/node_modules/yaml/dist/nodes/addPairToJSMap.js new file mode 100644 index 0000000..a8faa29 --- /dev/null +++ b/node_modules/yaml/dist/nodes/addPairToJSMap.js @@ -0,0 +1,65 @@ +'use strict'; + +var log = require('../log.js'); +var merge = require('../schema/yaml-1.1/merge.js'); +var stringify = require('../stringify/stringify.js'); +var identity = require('./identity.js'); +var toJS = require('./toJS.js'); + +function addPairToJSMap(ctx, map, { key, value }) { + if (identity.isNode(key) && key.addToJSMap) + key.addToJSMap(ctx, map, value); + // TODO: Should drop this special case for bare << handling + else if (merge.isMergeKey(ctx, key)) + merge.addMergeToJSMap(ctx, map, value); + else { + const jsKey = toJS.toJS(key, '', ctx); + if (map instanceof Map) { + map.set(jsKey, toJS.toJS(value, jsKey, ctx)); + } + else if (map instanceof Set) { + map.add(jsKey); + } + else { + const stringKey = stringifyKey(key, jsKey, ctx); + const jsValue = toJS.toJS(value, stringKey, ctx); + if (stringKey in map) + Object.defineProperty(map, stringKey, { + value: jsValue, + writable: true, + enumerable: true, + configurable: true + }); + else + map[stringKey] = jsValue; + } + } + return map; +} +function stringifyKey(key, jsKey, ctx) { + if (jsKey === null) + return ''; + // eslint-disable-next-line @typescript-eslint/no-base-to-string + if (typeof jsKey !== 'object') + return String(jsKey); + if (identity.isNode(key) && ctx?.doc) { + const strCtx = stringify.createStringifyContext(ctx.doc, {}); + strCtx.anchors = new Set(); + for (const node of ctx.anchors.keys()) + strCtx.anchors.add(node.anchor); + strCtx.inFlow = true; + strCtx.inStringifyKey = true; + const strKey = key.toString(strCtx); + if (!ctx.mapKeyWarned) { + let jsonStr = JSON.stringify(strKey); + if (jsonStr.length > 40) + jsonStr = jsonStr.substring(0, 36) + '..."'; + log.warn(ctx.doc.options.logLevel, `Keys with collection values will be stringified due to JS Object restrictions: ${jsonStr}. Set mapAsMap: true to use object keys.`); + ctx.mapKeyWarned = true; + } + return strKey; + } + return JSON.stringify(jsKey); +} + +exports.addPairToJSMap = addPairToJSMap; diff --git a/node_modules/yaml/dist/nodes/identity.d.ts b/node_modules/yaml/dist/nodes/identity.d.ts new file mode 100644 index 0000000..15fc296 --- /dev/null +++ b/node_modules/yaml/dist/nodes/identity.d.ts @@ -0,0 +1,23 @@ +import type { Document } from '../doc/Document'; +import type { Alias } from './Alias'; +import type { Node } from './Node'; +import type { Pair } from './Pair'; +import type { Scalar } from './Scalar'; +import type { YAMLMap } from './YAMLMap'; +import type { YAMLSeq } from './YAMLSeq'; +export declare const ALIAS: unique symbol; +export declare const DOC: unique symbol; +export declare const MAP: unique symbol; +export declare const PAIR: unique symbol; +export declare const SCALAR: unique symbol; +export declare const SEQ: unique symbol; +export declare const NODE_TYPE: unique symbol; +export declare const isAlias: (node: any) => node is Alias; +export declare const isDocument: (node: any) => node is Document; +export declare const isMap: (node: any) => node is YAMLMap; +export declare const isPair: (node: any) => node is Pair; +export declare const isScalar: (node: any) => node is Scalar; +export declare const isSeq: (node: any) => node is YAMLSeq; +export declare function isCollection(node: any): node is YAMLMap | YAMLSeq; +export declare function isNode(node: any): node is Node; +export declare const hasAnchor: (node: unknown) => node is Scalar | YAMLMap | YAMLSeq; diff --git a/node_modules/yaml/dist/nodes/identity.js b/node_modules/yaml/dist/nodes/identity.js new file mode 100644 index 0000000..5794aa3 --- /dev/null +++ b/node_modules/yaml/dist/nodes/identity.js @@ -0,0 +1,53 @@ +'use strict'; + +const ALIAS = Symbol.for('yaml.alias'); +const DOC = Symbol.for('yaml.document'); +const MAP = Symbol.for('yaml.map'); +const PAIR = Symbol.for('yaml.pair'); +const SCALAR = Symbol.for('yaml.scalar'); +const SEQ = Symbol.for('yaml.seq'); +const NODE_TYPE = Symbol.for('yaml.node.type'); +const isAlias = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === ALIAS; +const isDocument = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === DOC; +const isMap = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === MAP; +const isPair = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === PAIR; +const isScalar = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === SCALAR; +const isSeq = (node) => !!node && typeof node === 'object' && node[NODE_TYPE] === SEQ; +function isCollection(node) { + if (node && typeof node === 'object') + switch (node[NODE_TYPE]) { + case MAP: + case SEQ: + return true; + } + return false; +} +function isNode(node) { + if (node && typeof node === 'object') + switch (node[NODE_TYPE]) { + case ALIAS: + case MAP: + case SCALAR: + case SEQ: + return true; + } + return false; +} +const hasAnchor = (node) => (isScalar(node) || isCollection(node)) && !!node.anchor; + +exports.ALIAS = ALIAS; +exports.DOC = DOC; +exports.MAP = MAP; +exports.NODE_TYPE = NODE_TYPE; +exports.PAIR = PAIR; +exports.SCALAR = SCALAR; +exports.SEQ = SEQ; +exports.hasAnchor = hasAnchor; +exports.isAlias = isAlias; +exports.isCollection = isCollection; +exports.isDocument = isDocument; +exports.isMap = isMap; +exports.isNode = isNode; +exports.isPair = isPair; +exports.isScalar = isScalar; +exports.isSeq = isSeq; diff --git a/node_modules/yaml/dist/nodes/toJS.d.ts b/node_modules/yaml/dist/nodes/toJS.d.ts new file mode 100644 index 0000000..d7e129e --- /dev/null +++ b/node_modules/yaml/dist/nodes/toJS.d.ts @@ -0,0 +1,29 @@ +import type { Document } from '../doc/Document'; +import type { Node } from './Node'; +export interface AnchorData { + aliasCount: number; + count: number; + res: unknown; +} +export interface ToJSContext { + anchors: Map; + /** Cached anchor and alias nodes in the order they occur in the document */ + aliasResolveCache?: Node[]; + doc: Document; + keep: boolean; + mapAsMap: boolean; + mapKeyWarned: boolean; + maxAliasCount: number; + onCreate?: (res: unknown) => void; +} +/** + * Recursively convert any node or its contents to native JavaScript + * + * @param value - The input value + * @param arg - If `value` defines a `toJSON()` method, use this + * as its first argument + * @param ctx - Conversion context, originally set in Document#toJS(). If + * `{ keep: true }` is not set, output should be suitable for JSON + * stringification. + */ +export declare function toJS(value: any, arg: string | null, ctx?: ToJSContext): any; diff --git a/node_modules/yaml/dist/nodes/toJS.js b/node_modules/yaml/dist/nodes/toJS.js new file mode 100644 index 0000000..a012823 --- /dev/null +++ b/node_modules/yaml/dist/nodes/toJS.js @@ -0,0 +1,39 @@ +'use strict'; + +var identity = require('./identity.js'); + +/** + * Recursively convert any node or its contents to native JavaScript + * + * @param value - The input value + * @param arg - If `value` defines a `toJSON()` method, use this + * as its first argument + * @param ctx - Conversion context, originally set in Document#toJS(). If + * `{ keep: true }` is not set, output should be suitable for JSON + * stringification. + */ +function toJS(value, arg, ctx) { + // eslint-disable-next-line @typescript-eslint/no-unsafe-return + if (Array.isArray(value)) + return value.map((v, i) => toJS(v, String(i), ctx)); + if (value && typeof value.toJSON === 'function') { + // eslint-disable-next-line @typescript-eslint/no-unsafe-call + if (!ctx || !identity.hasAnchor(value)) + return value.toJSON(arg, ctx); + const data = { aliasCount: 0, count: 1, res: undefined }; + ctx.anchors.set(value, data); + ctx.onCreate = res => { + data.res = res; + delete ctx.onCreate; + }; + const res = value.toJSON(arg, ctx); + if (ctx.onCreate) + ctx.onCreate(res); + return res; + } + if (typeof value === 'bigint' && !ctx?.keep) + return Number(value); + return value; +} + +exports.toJS = toJS; diff --git a/node_modules/yaml/dist/options.d.ts b/node_modules/yaml/dist/options.d.ts new file mode 100644 index 0000000..7771e2a --- /dev/null +++ b/node_modules/yaml/dist/options.d.ts @@ -0,0 +1,344 @@ +import type { Reviver } from './doc/applyReviver'; +import type { Directives } from './doc/directives'; +import type { LogLevelId } from './log'; +import type { ParsedNode } from './nodes/Node'; +import type { Pair } from './nodes/Pair'; +import type { Scalar } from './nodes/Scalar'; +import type { LineCounter } from './parse/line-counter'; +import type { Schema } from './schema/Schema'; +import type { Tags } from './schema/tags'; +import type { CollectionTag, ScalarTag } from './schema/types'; +export type ParseOptions = { + /** + * Whether integers should be parsed into BigInt rather than number values. + * + * Default: `false` + * + * https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/BigInt + */ + intAsBigInt?: boolean; + /** + * Include a `srcToken` value on each parsed `Node`, containing the CST token + * that was composed into this node. + * + * Default: `false` + */ + keepSourceTokens?: boolean; + /** + * If set, newlines will be tracked, to allow for `lineCounter.linePos(offset)` + * to provide the `{ line, col }` positions within the input. + */ + lineCounter?: LineCounter; + /** + * Include line/col position & node type directly in parse errors. + * + * Default: `true` + */ + prettyErrors?: boolean; + /** + * Detect and report errors that are required by the YAML 1.2 spec, + * but are caused by unambiguous content. + * + * Default: `true` + */ + strict?: boolean; + /** + * Parse all mapping keys as strings. Treat all non-scalar keys as errors. + * + * Default: `false` + */ + stringKeys?: boolean; + /** + * YAML requires map keys to be unique. By default, this is checked by + * comparing scalar values with `===`; deep equality is not checked for + * aliases or collections. If merge keys are enabled by the schema, + * multiple `<<` keys are allowed. + * + * Set `false` to disable, or provide your own comparator function to + * customise. The comparator will be passed two `ParsedNode` values, and + * is expected to return a `boolean` indicating their equality. + * + * Default: `true` + */ + uniqueKeys?: boolean | ((a: ParsedNode, b: ParsedNode) => boolean); +}; +export type DocumentOptions = { + /** + * @internal + * Used internally by Composer. If set and includes an explicit version, + * that overrides the `version` option. + */ + _directives?: Directives; + /** + * Control the logging level during parsing + * + * Default: `'warn'` + */ + logLevel?: LogLevelId; + /** + * The YAML version used by documents without a `%YAML` directive. + * + * Default: `"1.2"` + */ + version?: '1.1' | '1.2' | 'next'; +}; +export type SchemaOptions = { + /** + * When parsing, warn about compatibility issues with the given schema. + * When stringifying, use scalar styles that are parsed correctly + * by the `compat` schema as well as the actual schema. + * + * Default: `null` + */ + compat?: string | Tags | null; + /** + * Array of additional tags to include in the schema, or a function that may + * modify the schema's base tag array. + */ + customTags?: Tags | ((tags: Tags) => Tags) | null; + /** + * Enable support for `<<` merge keys. + * + * Default: `false` for YAML 1.2, `true` for earlier versions + */ + merge?: boolean; + /** + * When using the `'core'` schema, support parsing values with these + * explicit YAML 1.1 tags: + * + * `!!binary`, `!!omap`, `!!pairs`, `!!set`, `!!timestamp`. + * + * Default `true` + */ + resolveKnownTags?: boolean; + /** + * The base schema to use. + * + * The core library has built-in support for the following: + * - `'failsafe'`: A minimal schema that parses all scalars as strings + * - `'core'`: The YAML 1.2 core schema + * - `'json'`: The YAML 1.2 JSON schema, with minimal rules for JSON compatibility + * - `'yaml-1.1'`: The YAML 1.1 schema + * + * If using another (custom) schema, the `customTags` array needs to + * fully define the schema's tags. + * + * Default: `'core'` for YAML 1.2, `'yaml-1.1'` for earlier versions + */ + schema?: string | Schema; + /** + * When adding to or stringifying a map, sort the entries. + * If `true`, sort by comparing key values with `<`. + * Does not affect item order when parsing. + * + * Default: `false` + */ + sortMapEntries?: boolean | ((a: Pair, b: Pair) => number); + /** + * Override default values for `toString()` options. + */ + toStringDefaults?: ToStringOptions; +}; +export type CreateNodeOptions = { + /** + * During node construction, use anchors and aliases to keep strictly equal + * non-null objects as equivalent in YAML. + * + * Default: `true` + */ + aliasDuplicateObjects?: boolean; + /** + * Default prefix for anchors. + * + * Default: `'a'`, resulting in anchors `a1`, `a2`, etc. + */ + anchorPrefix?: string; + /** Force the top-level collection node to use flow style. */ + flow?: boolean; + /** + * Keep `undefined` object values when creating mappings, rather than + * discarding them. + * + * Default: `false` + */ + keepUndefined?: boolean | null; + onTagObj?: (tagObj: ScalarTag | CollectionTag) => void; + /** + * Specify the top-level collection type, e.g. `"!!omap"`. Note that this + * requires the corresponding tag to be available in this document's schema. + */ + tag?: string; +}; +export type ToJSOptions = { + /** + * Use Map rather than Object to represent mappings. + * + * Default: `false` + */ + mapAsMap?: boolean; + /** + * Prevent exponential entity expansion attacks by limiting data aliasing count; + * set to `-1` to disable checks; `0` disallows all alias nodes. + * + * Default: `100` + */ + maxAliasCount?: number; + /** + * If defined, called with the resolved `value` and reference `count` for + * each anchor in the document. + */ + onAnchor?: (value: unknown, count: number) => void; + /** + * Optional function that may filter or modify the output JS value + * + * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse#using_the_reviver_parameter + */ + reviver?: Reviver; +}; +export type ToStringOptions = { + /** + * Use block quote styles for scalar values where applicable. + * Set to `false` to disable block quotes completely. + * + * Default: `true` + */ + blockQuote?: boolean | 'folded' | 'literal'; + /** + * Enforce `'block'` or `'flow'` style on maps and sequences. + * Empty collections will always be stringified as `{}` or `[]`. + * + * Default: `'any'`, allowing each node to set its style separately + * with its `flow: boolean` (default `false`) property. + */ + collectionStyle?: 'any' | 'block' | 'flow'; + /** + * Comment stringifier. + * Output should be valid for the current schema. + * + * By default, empty comment lines are left empty, + * lines consisting of a single space are replaced by `#`, + * and all other lines are prefixed with a `#`. + */ + commentString?: (comment: string) => string; + /** + * The default type of string literal used to stringify implicit key values. + * Output may use other types if required to fully represent the value. + * + * If `null`, the value of `defaultStringType` is used. + * + * Default: `null` + */ + defaultKeyType?: Scalar.Type | null; + /** + * The default type of string literal used to stringify values in general. + * Output may use other types if required to fully represent the value. + * + * Default: `'PLAIN'` + */ + defaultStringType?: Scalar.Type; + /** + * Include directives in the output. + * + * - If `true`, at least the document-start marker `---` is always included. + * This does not force the `%YAML` directive to be included. To do that, + * set `doc.directives.yaml.explicit = true`. + * - If `false`, no directives or marker is ever included. If using the `%TAG` + * directive, you are expected to include it manually in the stream before + * its use. + * - If `null`, directives and marker may be included if required. + * + * Default: `null` + */ + directives?: boolean | null; + /** + * Restrict double-quoted strings to use JSON-compatible syntax. + * + * Default: `false` + */ + doubleQuotedAsJSON?: boolean; + /** + * Minimum length for double-quoted strings to use multiple lines to + * represent the value. Ignored if `doubleQuotedAsJSON` is set. + * + * Default: `40` + */ + doubleQuotedMinMultiLineLength?: number; + /** + * String representation for `false`. + * With the core schema, use `'false'`, `'False'`, or `'FALSE'`. + * + * Default: `'false'` + */ + falseStr?: string; + /** + * When true, a single space of padding will be added inside the delimiters + * of non-empty single-line flow collections. + * + * Default: `true` + */ + flowCollectionPadding?: boolean; + /** + * The number of spaces to use when indenting code. + * + * Default: `2` + */ + indent?: number; + /** + * Whether block sequences should be indented. + * + * Default: `true` + */ + indentSeq?: boolean; + /** + * Maximum line width (set to `0` to disable folding). + * + * This is a soft limit, as only double-quoted semantics allow for inserting + * a line break in the middle of a word, as well as being influenced by the + * `minContentWidth` option. + * + * Default: `80` + */ + lineWidth?: number; + /** + * Minimum line width for highly-indented content (set to `0` to disable). + * + * Default: `20` + */ + minContentWidth?: number; + /** + * String representation for `null`. + * With the core schema, use `'null'`, `'Null'`, `'NULL'`, `'~'`, or an empty + * string `''`. + * + * Default: `'null'` + */ + nullStr?: string; + /** + * Require keys to be scalars and to use implicit rather than explicit notation. + * + * Default: `false` + */ + simpleKeys?: boolean; + /** + * Use 'single quote' rather than "double quote" where applicable. + * Set to `false` to disable single quotes completely. + * + * Default: `null` + */ + singleQuote?: boolean | null; + /** + * String representation for `true`. + * With the core schema, use `'true'`, `'True'`, or `'TRUE'`. + * + * Default: `'true'` + */ + trueStr?: string; + /** + * The anchor used by an alias must be defined before the alias node. As it's + * possible for the document to be modified manually, the order may be + * verified during stringification. + * + * Default: `'true'` + */ + verifyAliasOrder?: boolean; +}; diff --git a/node_modules/yaml/dist/parse/cst-scalar.d.ts b/node_modules/yaml/dist/parse/cst-scalar.d.ts new file mode 100644 index 0000000..6064ed8 --- /dev/null +++ b/node_modules/yaml/dist/parse/cst-scalar.d.ts @@ -0,0 +1,64 @@ +import type { ErrorCode } from '../errors'; +import type { Range } from '../nodes/Node'; +import type { Scalar } from '../nodes/Scalar'; +import type { BlockScalar, FlowScalar, SourceToken, Token } from './cst'; +/** + * If `token` is a CST flow or block scalar, determine its string value and a few other attributes. + * Otherwise, return `null`. + */ +export declare function resolveAsScalar(token: FlowScalar | BlockScalar, strict?: boolean, onError?: (offset: number, code: ErrorCode, message: string) => void): { + value: string; + type: Scalar.Type | null; + comment: string; + range: Range; +}; +export declare function resolveAsScalar(token: Token | null | undefined, strict?: boolean, onError?: (offset: number, code: ErrorCode, message: string) => void): { + value: string; + type: Scalar.Type | null; + comment: string; + range: Range; +} | null; +/** + * Create a new scalar token with `value` + * + * Values that represent an actual string but may be parsed as a different type should use a `type` other than `'PLAIN'`, + * as this function does not support any schema operations and won't check for such conflicts. + * + * @param value The string representation of the value, which will have its content properly indented. + * @param context.end Comments and whitespace after the end of the value, or after the block scalar header. If undefined, a newline will be added. + * @param context.implicitKey Being within an implicit key may affect the resolved type of the token's value. + * @param context.indent The indent level of the token. + * @param context.inFlow Is this scalar within a flow collection? This may affect the resolved type of the token's value. + * @param context.offset The offset position of the token. + * @param context.type The preferred type of the scalar token. If undefined, the previous type of the `token` will be used, defaulting to `'PLAIN'`. + */ +export declare function createScalarToken(value: string, context: { + end?: SourceToken[]; + implicitKey?: boolean; + indent: number; + inFlow?: boolean; + offset?: number; + type?: Scalar.Type; +}): BlockScalar | FlowScalar; +/** + * Set the value of `token` to the given string `value`, overwriting any previous contents and type that it may have. + * + * Best efforts are made to retain any comments previously associated with the `token`, + * though all contents within a collection's `items` will be overwritten. + * + * Values that represent an actual string but may be parsed as a different type should use a `type` other than `'PLAIN'`, + * as this function does not support any schema operations and won't check for such conflicts. + * + * @param token Any token. If it does not include an `indent` value, the value will be stringified as if it were an implicit key. + * @param value The string representation of the value, which will have its content properly indented. + * @param context.afterKey In most cases, values after a key should have an additional level of indentation. + * @param context.implicitKey Being within an implicit key may affect the resolved type of the token's value. + * @param context.inFlow Being within a flow collection may affect the resolved type of the token's value. + * @param context.type The preferred type of the scalar token. If undefined, the previous type of the `token` will be used, defaulting to `'PLAIN'`. + */ +export declare function setScalarValue(token: Token, value: string, context?: { + afterKey?: boolean; + implicitKey?: boolean; + inFlow?: boolean; + type?: Scalar.Type; +}): void; diff --git a/node_modules/yaml/dist/parse/cst-scalar.js b/node_modules/yaml/dist/parse/cst-scalar.js new file mode 100644 index 0000000..81b8463 --- /dev/null +++ b/node_modules/yaml/dist/parse/cst-scalar.js @@ -0,0 +1,218 @@ +'use strict'; + +var resolveBlockScalar = require('../compose/resolve-block-scalar.js'); +var resolveFlowScalar = require('../compose/resolve-flow-scalar.js'); +var errors = require('../errors.js'); +var stringifyString = require('../stringify/stringifyString.js'); + +function resolveAsScalar(token, strict = true, onError) { + if (token) { + const _onError = (pos, code, message) => { + const offset = typeof pos === 'number' ? pos : Array.isArray(pos) ? pos[0] : pos.offset; + if (onError) + onError(offset, code, message); + else + throw new errors.YAMLParseError([offset, offset + 1], code, message); + }; + switch (token.type) { + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': + return resolveFlowScalar.resolveFlowScalar(token, strict, _onError); + case 'block-scalar': + return resolveBlockScalar.resolveBlockScalar({ options: { strict } }, token, _onError); + } + } + return null; +} +/** + * Create a new scalar token with `value` + * + * Values that represent an actual string but may be parsed as a different type should use a `type` other than `'PLAIN'`, + * as this function does not support any schema operations and won't check for such conflicts. + * + * @param value The string representation of the value, which will have its content properly indented. + * @param context.end Comments and whitespace after the end of the value, or after the block scalar header. If undefined, a newline will be added. + * @param context.implicitKey Being within an implicit key may affect the resolved type of the token's value. + * @param context.indent The indent level of the token. + * @param context.inFlow Is this scalar within a flow collection? This may affect the resolved type of the token's value. + * @param context.offset The offset position of the token. + * @param context.type The preferred type of the scalar token. If undefined, the previous type of the `token` will be used, defaulting to `'PLAIN'`. + */ +function createScalarToken(value, context) { + const { implicitKey = false, indent, inFlow = false, offset = -1, type = 'PLAIN' } = context; + const source = stringifyString.stringifyString({ type, value }, { + implicitKey, + indent: indent > 0 ? ' '.repeat(indent) : '', + inFlow, + options: { blockQuote: true, lineWidth: -1 } + }); + const end = context.end ?? [ + { type: 'newline', offset: -1, indent, source: '\n' } + ]; + switch (source[0]) { + case '|': + case '>': { + const he = source.indexOf('\n'); + const head = source.substring(0, he); + const body = source.substring(he + 1) + '\n'; + const props = [ + { type: 'block-scalar-header', offset, indent, source: head } + ]; + if (!addEndtoBlockProps(props, end)) + props.push({ type: 'newline', offset: -1, indent, source: '\n' }); + return { type: 'block-scalar', offset, indent, props, source: body }; + } + case '"': + return { type: 'double-quoted-scalar', offset, indent, source, end }; + case "'": + return { type: 'single-quoted-scalar', offset, indent, source, end }; + default: + return { type: 'scalar', offset, indent, source, end }; + } +} +/** + * Set the value of `token` to the given string `value`, overwriting any previous contents and type that it may have. + * + * Best efforts are made to retain any comments previously associated with the `token`, + * though all contents within a collection's `items` will be overwritten. + * + * Values that represent an actual string but may be parsed as a different type should use a `type` other than `'PLAIN'`, + * as this function does not support any schema operations and won't check for such conflicts. + * + * @param token Any token. If it does not include an `indent` value, the value will be stringified as if it were an implicit key. + * @param value The string representation of the value, which will have its content properly indented. + * @param context.afterKey In most cases, values after a key should have an additional level of indentation. + * @param context.implicitKey Being within an implicit key may affect the resolved type of the token's value. + * @param context.inFlow Being within a flow collection may affect the resolved type of the token's value. + * @param context.type The preferred type of the scalar token. If undefined, the previous type of the `token` will be used, defaulting to `'PLAIN'`. + */ +function setScalarValue(token, value, context = {}) { + let { afterKey = false, implicitKey = false, inFlow = false, type } = context; + let indent = 'indent' in token ? token.indent : null; + if (afterKey && typeof indent === 'number') + indent += 2; + if (!type) + switch (token.type) { + case 'single-quoted-scalar': + type = 'QUOTE_SINGLE'; + break; + case 'double-quoted-scalar': + type = 'QUOTE_DOUBLE'; + break; + case 'block-scalar': { + const header = token.props[0]; + if (header.type !== 'block-scalar-header') + throw new Error('Invalid block scalar header'); + type = header.source[0] === '>' ? 'BLOCK_FOLDED' : 'BLOCK_LITERAL'; + break; + } + default: + type = 'PLAIN'; + } + const source = stringifyString.stringifyString({ type, value }, { + implicitKey: implicitKey || indent === null, + indent: indent !== null && indent > 0 ? ' '.repeat(indent) : '', + inFlow, + options: { blockQuote: true, lineWidth: -1 } + }); + switch (source[0]) { + case '|': + case '>': + setBlockScalarValue(token, source); + break; + case '"': + setFlowScalarValue(token, source, 'double-quoted-scalar'); + break; + case "'": + setFlowScalarValue(token, source, 'single-quoted-scalar'); + break; + default: + setFlowScalarValue(token, source, 'scalar'); + } +} +function setBlockScalarValue(token, source) { + const he = source.indexOf('\n'); + const head = source.substring(0, he); + const body = source.substring(he + 1) + '\n'; + if (token.type === 'block-scalar') { + const header = token.props[0]; + if (header.type !== 'block-scalar-header') + throw new Error('Invalid block scalar header'); + header.source = head; + token.source = body; + } + else { + const { offset } = token; + const indent = 'indent' in token ? token.indent : -1; + const props = [ + { type: 'block-scalar-header', offset, indent, source: head } + ]; + if (!addEndtoBlockProps(props, 'end' in token ? token.end : undefined)) + props.push({ type: 'newline', offset: -1, indent, source: '\n' }); + for (const key of Object.keys(token)) + if (key !== 'type' && key !== 'offset') + delete token[key]; + Object.assign(token, { type: 'block-scalar', indent, props, source: body }); + } +} +/** @returns `true` if last token is a newline */ +function addEndtoBlockProps(props, end) { + if (end) + for (const st of end) + switch (st.type) { + case 'space': + case 'comment': + props.push(st); + break; + case 'newline': + props.push(st); + return true; + } + return false; +} +function setFlowScalarValue(token, source, type) { + switch (token.type) { + case 'scalar': + case 'double-quoted-scalar': + case 'single-quoted-scalar': + token.type = type; + token.source = source; + break; + case 'block-scalar': { + const end = token.props.slice(1); + let oa = source.length; + if (token.props[0].type === 'block-scalar-header') + oa -= token.props[0].source.length; + for (const tok of end) + tok.offset += oa; + delete token.props; + Object.assign(token, { type, source, end }); + break; + } + case 'block-map': + case 'block-seq': { + const offset = token.offset + source.length; + const nl = { type: 'newline', offset, indent: token.indent, source: '\n' }; + delete token.items; + Object.assign(token, { type, source, end: [nl] }); + break; + } + default: { + const indent = 'indent' in token ? token.indent : -1; + const end = 'end' in token && Array.isArray(token.end) + ? token.end.filter(st => st.type === 'space' || + st.type === 'comment' || + st.type === 'newline') + : []; + for (const key of Object.keys(token)) + if (key !== 'type' && key !== 'offset') + delete token[key]; + Object.assign(token, { type, indent, source, end }); + } + } +} + +exports.createScalarToken = createScalarToken; +exports.resolveAsScalar = resolveAsScalar; +exports.setScalarValue = setScalarValue; diff --git a/node_modules/yaml/dist/parse/cst-stringify.d.ts b/node_modules/yaml/dist/parse/cst-stringify.d.ts new file mode 100644 index 0000000..312bf6c --- /dev/null +++ b/node_modules/yaml/dist/parse/cst-stringify.d.ts @@ -0,0 +1,8 @@ +import type { CollectionItem, Token } from './cst'; +/** + * Stringify a CST document, token, or collection item + * + * Fair warning: This applies no validation whatsoever, and + * simply concatenates the sources in their logical order. + */ +export declare const stringify: (cst: Token | CollectionItem) => string; diff --git a/node_modules/yaml/dist/parse/cst-stringify.js b/node_modules/yaml/dist/parse/cst-stringify.js new file mode 100644 index 0000000..78e8c37 --- /dev/null +++ b/node_modules/yaml/dist/parse/cst-stringify.js @@ -0,0 +1,63 @@ +'use strict'; + +/** + * Stringify a CST document, token, or collection item + * + * Fair warning: This applies no validation whatsoever, and + * simply concatenates the sources in their logical order. + */ +const stringify = (cst) => 'type' in cst ? stringifyToken(cst) : stringifyItem(cst); +function stringifyToken(token) { + switch (token.type) { + case 'block-scalar': { + let res = ''; + for (const tok of token.props) + res += stringifyToken(tok); + return res + token.source; + } + case 'block-map': + case 'block-seq': { + let res = ''; + for (const item of token.items) + res += stringifyItem(item); + return res; + } + case 'flow-collection': { + let res = token.start.source; + for (const item of token.items) + res += stringifyItem(item); + for (const st of token.end) + res += st.source; + return res; + } + case 'document': { + let res = stringifyItem(token); + if (token.end) + for (const st of token.end) + res += st.source; + return res; + } + default: { + let res = token.source; + if ('end' in token && token.end) + for (const st of token.end) + res += st.source; + return res; + } + } +} +function stringifyItem({ start, key, sep, value }) { + let res = ''; + for (const st of start) + res += st.source; + if (key) + res += stringifyToken(key); + if (sep) + for (const st of sep) + res += st.source; + if (value) + res += stringifyToken(value); + return res; +} + +exports.stringify = stringify; diff --git a/node_modules/yaml/dist/parse/cst-visit.d.ts b/node_modules/yaml/dist/parse/cst-visit.d.ts new file mode 100644 index 0000000..edac140 --- /dev/null +++ b/node_modules/yaml/dist/parse/cst-visit.d.ts @@ -0,0 +1,39 @@ +import type { BlockMap, BlockSequence, CollectionItem, Document, FlowCollection } from './cst'; +export type VisitPath = readonly ['key' | 'value', number][]; +export type Visitor = (item: CollectionItem, path: VisitPath) => number | symbol | Visitor | void; +/** + * Apply a visitor to a CST document or item. + * + * Walks through the tree (depth-first) starting from the root, calling a + * `visitor` function with two arguments when entering each item: + * - `item`: The current item, which included the following members: + * - `start: SourceToken[]` – Source tokens before the key or value, + * possibly including its anchor or tag. + * - `key?: Token | null` – Set for pair values. May then be `null`, if + * the key before the `:` separator is empty. + * - `sep?: SourceToken[]` – Source tokens between the key and the value, + * which should include the `:` map value indicator if `value` is set. + * - `value?: Token` – The value of a sequence item, or of a map pair. + * - `path`: The steps from the root to the current node, as an array of + * `['key' | 'value', number]` tuples. + * + * The return value of the visitor may be used to control the traversal: + * - `undefined` (default): Do nothing and continue + * - `visit.SKIP`: Do not visit the children of this token, continue with + * next sibling + * - `visit.BREAK`: Terminate traversal completely + * - `visit.REMOVE`: Remove the current item, then continue with the next one + * - `number`: Set the index of the next step. This is useful especially if + * the index of the current token has changed. + * - `function`: Define the next visitor for this item. After the original + * visitor is called on item entry, next visitors are called after handling + * a non-empty `key` and when exiting the item. + */ +export declare function visit(cst: Document | CollectionItem, visitor: Visitor): void; +export declare namespace visit { + var BREAK: symbol; + var SKIP: symbol; + var REMOVE: symbol; + var itemAtPath: (cst: Document | CollectionItem, path: VisitPath) => CollectionItem | undefined; + var parentCollection: (cst: Document | CollectionItem, path: VisitPath) => BlockMap | BlockSequence | FlowCollection; +} diff --git a/node_modules/yaml/dist/parse/cst-visit.js b/node_modules/yaml/dist/parse/cst-visit.js new file mode 100644 index 0000000..9ceee93 --- /dev/null +++ b/node_modules/yaml/dist/parse/cst-visit.js @@ -0,0 +1,99 @@ +'use strict'; + +const BREAK = Symbol('break visit'); +const SKIP = Symbol('skip children'); +const REMOVE = Symbol('remove item'); +/** + * Apply a visitor to a CST document or item. + * + * Walks through the tree (depth-first) starting from the root, calling a + * `visitor` function with two arguments when entering each item: + * - `item`: The current item, which included the following members: + * - `start: SourceToken[]` – Source tokens before the key or value, + * possibly including its anchor or tag. + * - `key?: Token | null` – Set for pair values. May then be `null`, if + * the key before the `:` separator is empty. + * - `sep?: SourceToken[]` – Source tokens between the key and the value, + * which should include the `:` map value indicator if `value` is set. + * - `value?: Token` – The value of a sequence item, or of a map pair. + * - `path`: The steps from the root to the current node, as an array of + * `['key' | 'value', number]` tuples. + * + * The return value of the visitor may be used to control the traversal: + * - `undefined` (default): Do nothing and continue + * - `visit.SKIP`: Do not visit the children of this token, continue with + * next sibling + * - `visit.BREAK`: Terminate traversal completely + * - `visit.REMOVE`: Remove the current item, then continue with the next one + * - `number`: Set the index of the next step. This is useful especially if + * the index of the current token has changed. + * - `function`: Define the next visitor for this item. After the original + * visitor is called on item entry, next visitors are called after handling + * a non-empty `key` and when exiting the item. + */ +function visit(cst, visitor) { + if ('type' in cst && cst.type === 'document') + cst = { start: cst.start, value: cst.value }; + _visit(Object.freeze([]), cst, visitor); +} +// Without the `as symbol` casts, TS declares these in the `visit` +// namespace using `var`, but then complains about that because +// `unique symbol` must be `const`. +/** Terminate visit traversal completely */ +visit.BREAK = BREAK; +/** Do not visit the children of the current item */ +visit.SKIP = SKIP; +/** Remove the current item */ +visit.REMOVE = REMOVE; +/** Find the item at `path` from `cst` as the root */ +visit.itemAtPath = (cst, path) => { + let item = cst; + for (const [field, index] of path) { + const tok = item?.[field]; + if (tok && 'items' in tok) { + item = tok.items[index]; + } + else + return undefined; + } + return item; +}; +/** + * Get the immediate parent collection of the item at `path` from `cst` as the root. + * + * Throws an error if the collection is not found, which should never happen if the item itself exists. + */ +visit.parentCollection = (cst, path) => { + const parent = visit.itemAtPath(cst, path.slice(0, -1)); + const field = path[path.length - 1][0]; + const coll = parent?.[field]; + if (coll && 'items' in coll) + return coll; + throw new Error('Parent collection not found'); +}; +function _visit(path, item, visitor) { + let ctrl = visitor(item, path); + if (typeof ctrl === 'symbol') + return ctrl; + for (const field of ['key', 'value']) { + const token = item[field]; + if (token && 'items' in token) { + for (let i = 0; i < token.items.length; ++i) { + const ci = _visit(Object.freeze(path.concat([[field, i]])), token.items[i], visitor); + if (typeof ci === 'number') + i = ci - 1; + else if (ci === BREAK) + return BREAK; + else if (ci === REMOVE) { + token.items.splice(i, 1); + i -= 1; + } + } + if (typeof ctrl === 'function' && field === 'key') + ctrl = ctrl(item, path); + } + } + return typeof ctrl === 'function' ? ctrl(item, path) : ctrl; +} + +exports.visit = visit; diff --git a/node_modules/yaml/dist/parse/cst.d.ts b/node_modules/yaml/dist/parse/cst.d.ts new file mode 100644 index 0000000..3606c0c --- /dev/null +++ b/node_modules/yaml/dist/parse/cst.d.ts @@ -0,0 +1,109 @@ +export { createScalarToken, resolveAsScalar, setScalarValue } from './cst-scalar'; +export { stringify } from './cst-stringify'; +export type { Visitor, VisitPath } from './cst-visit'; +export { visit } from './cst-visit'; +export interface SourceToken { + type: 'byte-order-mark' | 'doc-mode' | 'doc-start' | 'space' | 'comment' | 'newline' | 'directive-line' | 'anchor' | 'tag' | 'seq-item-ind' | 'explicit-key-ind' | 'map-value-ind' | 'flow-map-start' | 'flow-map-end' | 'flow-seq-start' | 'flow-seq-end' | 'flow-error-end' | 'comma' | 'block-scalar-header'; + offset: number; + indent: number; + source: string; +} +export interface ErrorToken { + type: 'error'; + offset: number; + source: string; + message: string; +} +export interface Directive { + type: 'directive'; + offset: number; + source: string; +} +export interface Document { + type: 'document'; + offset: number; + start: SourceToken[]; + value?: Token; + end?: SourceToken[]; +} +export interface DocumentEnd { + type: 'doc-end'; + offset: number; + source: string; + end?: SourceToken[]; +} +export interface FlowScalar { + type: 'alias' | 'scalar' | 'single-quoted-scalar' | 'double-quoted-scalar'; + offset: number; + indent: number; + source: string; + end?: SourceToken[]; +} +export interface BlockScalar { + type: 'block-scalar'; + offset: number; + indent: number; + props: Token[]; + source: string; +} +export interface BlockMap { + type: 'block-map'; + offset: number; + indent: number; + items: Array<{ + start: SourceToken[]; + explicitKey?: true; + key?: never; + sep?: never; + value?: never; + } | { + start: SourceToken[]; + explicitKey?: true; + key: Token | null; + sep: SourceToken[]; + value?: Token; + }>; +} +export interface BlockSequence { + type: 'block-seq'; + offset: number; + indent: number; + items: Array<{ + start: SourceToken[]; + key?: never; + sep?: never; + value?: Token; + }>; +} +export type CollectionItem = { + start: SourceToken[]; + key?: Token | null; + sep?: SourceToken[]; + value?: Token; +}; +export interface FlowCollection { + type: 'flow-collection'; + offset: number; + indent: number; + start: SourceToken; + items: CollectionItem[]; + end: SourceToken[]; +} +export type Token = SourceToken | ErrorToken | Directive | Document | DocumentEnd | FlowScalar | BlockScalar | BlockMap | BlockSequence | FlowCollection; +export type TokenType = SourceToken['type'] | DocumentEnd['type'] | FlowScalar['type']; +/** The byte order mark */ +export declare const BOM = "\uFEFF"; +/** Start of doc-mode */ +export declare const DOCUMENT = "\u0002"; +/** Unexpected end of flow-mode */ +export declare const FLOW_END = "\u0018"; +/** Next token is a scalar value */ +export declare const SCALAR = "\u001F"; +/** @returns `true` if `token` is a flow or block collection */ +export declare const isCollection: (token: Token | null | undefined) => token is BlockMap | BlockSequence | FlowCollection; +/** @returns `true` if `token` is a flow or block scalar; not an alias */ +export declare const isScalar: (token: Token | null | undefined) => token is FlowScalar | BlockScalar; +/** Get a printable representation of a lexer token */ +export declare function prettyToken(token: string): string; +/** Identify the type of a lexer token. May return `null` for unknown tokens. */ +export declare function tokenType(source: string): TokenType | null; diff --git a/node_modules/yaml/dist/parse/cst.js b/node_modules/yaml/dist/parse/cst.js new file mode 100644 index 0000000..613c229 --- /dev/null +++ b/node_modules/yaml/dist/parse/cst.js @@ -0,0 +1,112 @@ +'use strict'; + +var cstScalar = require('./cst-scalar.js'); +var cstStringify = require('./cst-stringify.js'); +var cstVisit = require('./cst-visit.js'); + +/** The byte order mark */ +const BOM = '\u{FEFF}'; +/** Start of doc-mode */ +const DOCUMENT = '\x02'; // C0: Start of Text +/** Unexpected end of flow-mode */ +const FLOW_END = '\x18'; // C0: Cancel +/** Next token is a scalar value */ +const SCALAR = '\x1f'; // C0: Unit Separator +/** @returns `true` if `token` is a flow or block collection */ +const isCollection = (token) => !!token && 'items' in token; +/** @returns `true` if `token` is a flow or block scalar; not an alias */ +const isScalar = (token) => !!token && + (token.type === 'scalar' || + token.type === 'single-quoted-scalar' || + token.type === 'double-quoted-scalar' || + token.type === 'block-scalar'); +/* istanbul ignore next */ +/** Get a printable representation of a lexer token */ +function prettyToken(token) { + switch (token) { + case BOM: + return ''; + case DOCUMENT: + return ''; + case FLOW_END: + return ''; + case SCALAR: + return ''; + default: + return JSON.stringify(token); + } +} +/** Identify the type of a lexer token. May return `null` for unknown tokens. */ +function tokenType(source) { + switch (source) { + case BOM: + return 'byte-order-mark'; + case DOCUMENT: + return 'doc-mode'; + case FLOW_END: + return 'flow-error-end'; + case SCALAR: + return 'scalar'; + case '---': + return 'doc-start'; + case '...': + return 'doc-end'; + case '': + case '\n': + case '\r\n': + return 'newline'; + case '-': + return 'seq-item-ind'; + case '?': + return 'explicit-key-ind'; + case ':': + return 'map-value-ind'; + case '{': + return 'flow-map-start'; + case '}': + return 'flow-map-end'; + case '[': + return 'flow-seq-start'; + case ']': + return 'flow-seq-end'; + case ',': + return 'comma'; + } + switch (source[0]) { + case ' ': + case '\t': + return 'space'; + case '#': + return 'comment'; + case '%': + return 'directive-line'; + case '*': + return 'alias'; + case '&': + return 'anchor'; + case '!': + return 'tag'; + case "'": + return 'single-quoted-scalar'; + case '"': + return 'double-quoted-scalar'; + case '|': + case '>': + return 'block-scalar-header'; + } + return null; +} + +exports.createScalarToken = cstScalar.createScalarToken; +exports.resolveAsScalar = cstScalar.resolveAsScalar; +exports.setScalarValue = cstScalar.setScalarValue; +exports.stringify = cstStringify.stringify; +exports.visit = cstVisit.visit; +exports.BOM = BOM; +exports.DOCUMENT = DOCUMENT; +exports.FLOW_END = FLOW_END; +exports.SCALAR = SCALAR; +exports.isCollection = isCollection; +exports.isScalar = isScalar; +exports.prettyToken = prettyToken; +exports.tokenType = tokenType; diff --git a/node_modules/yaml/dist/parse/lexer.d.ts b/node_modules/yaml/dist/parse/lexer.d.ts new file mode 100644 index 0000000..4c01430 --- /dev/null +++ b/node_modules/yaml/dist/parse/lexer.d.ts @@ -0,0 +1,87 @@ +/** + * Splits an input string into lexical tokens, i.e. smaller strings that are + * easily identifiable by `tokens.tokenType()`. + * + * Lexing starts always in a "stream" context. Incomplete input may be buffered + * until a complete token can be emitted. + * + * In addition to slices of the original input, the following control characters + * may also be emitted: + * + * - `\x02` (Start of Text): A document starts with the next token + * - `\x18` (Cancel): Unexpected end of flow-mode (indicates an error) + * - `\x1f` (Unit Separator): Next token is a scalar value + * - `\u{FEFF}` (Byte order mark): Emitted separately outside documents + */ +export declare class Lexer { + /** + * Flag indicating whether the end of the current buffer marks the end of + * all input + */ + private atEnd; + /** + * Explicit indent set in block scalar header, as an offset from the current + * minimum indent, so e.g. set to 1 from a header `|2+`. Set to -1 if not + * explicitly set. + */ + private blockScalarIndent; + /** + * Block scalars that include a + (keep) chomping indicator in their header + * include trailing empty lines, which are otherwise excluded from the + * scalar's contents. + */ + private blockScalarKeep; + /** Current input */ + private buffer; + /** + * Flag noting whether the map value indicator : can immediately follow this + * node within a flow context. + */ + private flowKey; + /** Count of surrounding flow collection levels. */ + private flowLevel; + /** + * Minimum level of indentation required for next lines to be parsed as a + * part of the current scalar value. + */ + private indentNext; + /** Indentation level of the current line. */ + private indentValue; + /** Position of the next \n character. */ + private lineEndPos; + /** Stores the state of the lexer if reaching the end of incpomplete input */ + private next; + /** A pointer to `buffer`; the current position of the lexer. */ + private pos; + /** + * Generate YAML tokens from the `source` string. If `incomplete`, + * a part of the last line may be left as a buffer for the next call. + * + * @returns A generator of lexical tokens + */ + lex(source: string, incomplete?: boolean): Generator; + private atLineEnd; + private charAt; + private continueScalar; + private getLine; + private hasChars; + private setNext; + private peek; + private parseNext; + private parseStream; + private parseLineStart; + private parseBlockStart; + private parseDocument; + private parseFlowCollection; + private parseQuotedScalar; + private parseBlockScalarHeader; + private parseBlockScalar; + private parsePlainScalar; + private pushCount; + private pushToIndex; + private pushIndicators; + private pushTag; + private pushNewline; + private pushSpaces; + private pushUntil; +} diff --git a/node_modules/yaml/dist/parse/lexer.js b/node_modules/yaml/dist/parse/lexer.js new file mode 100644 index 0000000..9ac766e --- /dev/null +++ b/node_modules/yaml/dist/parse/lexer.js @@ -0,0 +1,719 @@ +'use strict'; + +var cst = require('./cst.js'); + +/* +START -> stream + +stream + directive -> line-end -> stream + indent + line-end -> stream + [else] -> line-start + +line-end + comment -> line-end + newline -> . + input-end -> END + +line-start + doc-start -> doc + doc-end -> stream + [else] -> indent -> block-start + +block-start + seq-item-start -> block-start + explicit-key-start -> block-start + map-value-start -> block-start + [else] -> doc + +doc + line-end -> line-start + spaces -> doc + anchor -> doc + tag -> doc + flow-start -> flow -> doc + flow-end -> error -> doc + seq-item-start -> error -> doc + explicit-key-start -> error -> doc + map-value-start -> doc + alias -> doc + quote-start -> quoted-scalar -> doc + block-scalar-header -> line-end -> block-scalar(min) -> line-start + [else] -> plain-scalar(false, min) -> doc + +flow + line-end -> flow + spaces -> flow + anchor -> flow + tag -> flow + flow-start -> flow -> flow + flow-end -> . + seq-item-start -> error -> flow + explicit-key-start -> flow + map-value-start -> flow + alias -> flow + quote-start -> quoted-scalar -> flow + comma -> flow + [else] -> plain-scalar(true, 0) -> flow + +quoted-scalar + quote-end -> . + [else] -> quoted-scalar + +block-scalar(min) + newline + peek(indent < min) -> . + [else] -> block-scalar(min) + +plain-scalar(is-flow, min) + scalar-end(is-flow) -> . + peek(newline + (indent < min)) -> . + [else] -> plain-scalar(min) +*/ +function isEmpty(ch) { + switch (ch) { + case undefined: + case ' ': + case '\n': + case '\r': + case '\t': + return true; + default: + return false; + } +} +const hexDigits = new Set('0123456789ABCDEFabcdef'); +const tagChars = new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"); +const flowIndicatorChars = new Set(',[]{}'); +const invalidAnchorChars = new Set(' ,[]{}\n\r\t'); +const isNotAnchorChar = (ch) => !ch || invalidAnchorChars.has(ch); +/** + * Splits an input string into lexical tokens, i.e. smaller strings that are + * easily identifiable by `tokens.tokenType()`. + * + * Lexing starts always in a "stream" context. Incomplete input may be buffered + * until a complete token can be emitted. + * + * In addition to slices of the original input, the following control characters + * may also be emitted: + * + * - `\x02` (Start of Text): A document starts with the next token + * - `\x18` (Cancel): Unexpected end of flow-mode (indicates an error) + * - `\x1f` (Unit Separator): Next token is a scalar value + * - `\u{FEFF}` (Byte order mark): Emitted separately outside documents + */ +class Lexer { + constructor() { + /** + * Flag indicating whether the end of the current buffer marks the end of + * all input + */ + this.atEnd = false; + /** + * Explicit indent set in block scalar header, as an offset from the current + * minimum indent, so e.g. set to 1 from a header `|2+`. Set to -1 if not + * explicitly set. + */ + this.blockScalarIndent = -1; + /** + * Block scalars that include a + (keep) chomping indicator in their header + * include trailing empty lines, which are otherwise excluded from the + * scalar's contents. + */ + this.blockScalarKeep = false; + /** Current input */ + this.buffer = ''; + /** + * Flag noting whether the map value indicator : can immediately follow this + * node within a flow context. + */ + this.flowKey = false; + /** Count of surrounding flow collection levels. */ + this.flowLevel = 0; + /** + * Minimum level of indentation required for next lines to be parsed as a + * part of the current scalar value. + */ + this.indentNext = 0; + /** Indentation level of the current line. */ + this.indentValue = 0; + /** Position of the next \n character. */ + this.lineEndPos = null; + /** Stores the state of the lexer if reaching the end of incpomplete input */ + this.next = null; + /** A pointer to `buffer`; the current position of the lexer. */ + this.pos = 0; + } + /** + * Generate YAML tokens from the `source` string. If `incomplete`, + * a part of the last line may be left as a buffer for the next call. + * + * @returns A generator of lexical tokens + */ + *lex(source, incomplete = false) { + if (source) { + if (typeof source !== 'string') + throw TypeError('source is not a string'); + this.buffer = this.buffer ? this.buffer + source : source; + this.lineEndPos = null; + } + this.atEnd = !incomplete; + let next = this.next ?? 'stream'; + while (next && (incomplete || this.hasChars(1))) + next = yield* this.parseNext(next); + } + atLineEnd() { + let i = this.pos; + let ch = this.buffer[i]; + while (ch === ' ' || ch === '\t') + ch = this.buffer[++i]; + if (!ch || ch === '#' || ch === '\n') + return true; + if (ch === '\r') + return this.buffer[i + 1] === '\n'; + return false; + } + charAt(n) { + return this.buffer[this.pos + n]; + } + continueScalar(offset) { + let ch = this.buffer[offset]; + if (this.indentNext > 0) { + let indent = 0; + while (ch === ' ') + ch = this.buffer[++indent + offset]; + if (ch === '\r') { + const next = this.buffer[indent + offset + 1]; + if (next === '\n' || (!next && !this.atEnd)) + return offset + indent + 1; + } + return ch === '\n' || indent >= this.indentNext || (!ch && !this.atEnd) + ? offset + indent + : -1; + } + if (ch === '-' || ch === '.') { + const dt = this.buffer.substr(offset, 3); + if ((dt === '---' || dt === '...') && isEmpty(this.buffer[offset + 3])) + return -1; + } + return offset; + } + getLine() { + let end = this.lineEndPos; + if (typeof end !== 'number' || (end !== -1 && end < this.pos)) { + end = this.buffer.indexOf('\n', this.pos); + this.lineEndPos = end; + } + if (end === -1) + return this.atEnd ? this.buffer.substring(this.pos) : null; + if (this.buffer[end - 1] === '\r') + end -= 1; + return this.buffer.substring(this.pos, end); + } + hasChars(n) { + return this.pos + n <= this.buffer.length; + } + setNext(state) { + this.buffer = this.buffer.substring(this.pos); + this.pos = 0; + this.lineEndPos = null; + this.next = state; + return null; + } + peek(n) { + return this.buffer.substr(this.pos, n); + } + *parseNext(next) { + switch (next) { + case 'stream': + return yield* this.parseStream(); + case 'line-start': + return yield* this.parseLineStart(); + case 'block-start': + return yield* this.parseBlockStart(); + case 'doc': + return yield* this.parseDocument(); + case 'flow': + return yield* this.parseFlowCollection(); + case 'quoted-scalar': + return yield* this.parseQuotedScalar(); + case 'block-scalar': + return yield* this.parseBlockScalar(); + case 'plain-scalar': + return yield* this.parsePlainScalar(); + } + } + *parseStream() { + let line = this.getLine(); + if (line === null) + return this.setNext('stream'); + if (line[0] === cst.BOM) { + yield* this.pushCount(1); + line = line.substring(1); + } + if (line[0] === '%') { + let dirEnd = line.length; + let cs = line.indexOf('#'); + while (cs !== -1) { + const ch = line[cs - 1]; + if (ch === ' ' || ch === '\t') { + dirEnd = cs - 1; + break; + } + else { + cs = line.indexOf('#', cs + 1); + } + } + while (true) { + const ch = line[dirEnd - 1]; + if (ch === ' ' || ch === '\t') + dirEnd -= 1; + else + break; + } + const n = (yield* this.pushCount(dirEnd)) + (yield* this.pushSpaces(true)); + yield* this.pushCount(line.length - n); // possible comment + this.pushNewline(); + return 'stream'; + } + if (this.atLineEnd()) { + const sp = yield* this.pushSpaces(true); + yield* this.pushCount(line.length - sp); + yield* this.pushNewline(); + return 'stream'; + } + yield cst.DOCUMENT; + return yield* this.parseLineStart(); + } + *parseLineStart() { + const ch = this.charAt(0); + if (!ch && !this.atEnd) + return this.setNext('line-start'); + if (ch === '-' || ch === '.') { + if (!this.atEnd && !this.hasChars(4)) + return this.setNext('line-start'); + const s = this.peek(3); + if ((s === '---' || s === '...') && isEmpty(this.charAt(3))) { + yield* this.pushCount(3); + this.indentValue = 0; + this.indentNext = 0; + return s === '---' ? 'doc' : 'stream'; + } + } + this.indentValue = yield* this.pushSpaces(false); + if (this.indentNext > this.indentValue && !isEmpty(this.charAt(1))) + this.indentNext = this.indentValue; + return yield* this.parseBlockStart(); + } + *parseBlockStart() { + const [ch0, ch1] = this.peek(2); + if (!ch1 && !this.atEnd) + return this.setNext('block-start'); + if ((ch0 === '-' || ch0 === '?' || ch0 === ':') && isEmpty(ch1)) { + const n = (yield* this.pushCount(1)) + (yield* this.pushSpaces(true)); + this.indentNext = this.indentValue + 1; + this.indentValue += n; + return yield* this.parseBlockStart(); + } + return 'doc'; + } + *parseDocument() { + yield* this.pushSpaces(true); + const line = this.getLine(); + if (line === null) + return this.setNext('doc'); + let n = yield* this.pushIndicators(); + switch (line[n]) { + case '#': + yield* this.pushCount(line.length - n); + // fallthrough + case undefined: + yield* this.pushNewline(); + return yield* this.parseLineStart(); + case '{': + case '[': + yield* this.pushCount(1); + this.flowKey = false; + this.flowLevel = 1; + return 'flow'; + case '}': + case ']': + // this is an error + yield* this.pushCount(1); + return 'doc'; + case '*': + yield* this.pushUntil(isNotAnchorChar); + return 'doc'; + case '"': + case "'": + return yield* this.parseQuotedScalar(); + case '|': + case '>': + n += yield* this.parseBlockScalarHeader(); + n += yield* this.pushSpaces(true); + yield* this.pushCount(line.length - n); + yield* this.pushNewline(); + return yield* this.parseBlockScalar(); + default: + return yield* this.parsePlainScalar(); + } + } + *parseFlowCollection() { + let nl, sp; + let indent = -1; + do { + nl = yield* this.pushNewline(); + if (nl > 0) { + sp = yield* this.pushSpaces(false); + this.indentValue = indent = sp; + } + else { + sp = 0; + } + sp += yield* this.pushSpaces(true); + } while (nl + sp > 0); + const line = this.getLine(); + if (line === null) + return this.setNext('flow'); + if ((indent !== -1 && indent < this.indentNext && line[0] !== '#') || + (indent === 0 && + (line.startsWith('---') || line.startsWith('...')) && + isEmpty(line[3]))) { + // Allowing for the terminal ] or } at the same (rather than greater) + // indent level as the initial [ or { is technically invalid, but + // failing here would be surprising to users. + const atFlowEndMarker = indent === this.indentNext - 1 && + this.flowLevel === 1 && + (line[0] === ']' || line[0] === '}'); + if (!atFlowEndMarker) { + // this is an error + this.flowLevel = 0; + yield cst.FLOW_END; + return yield* this.parseLineStart(); + } + } + let n = 0; + while (line[n] === ',') { + n += yield* this.pushCount(1); + n += yield* this.pushSpaces(true); + this.flowKey = false; + } + n += yield* this.pushIndicators(); + switch (line[n]) { + case undefined: + return 'flow'; + case '#': + yield* this.pushCount(line.length - n); + return 'flow'; + case '{': + case '[': + yield* this.pushCount(1); + this.flowKey = false; + this.flowLevel += 1; + return 'flow'; + case '}': + case ']': + yield* this.pushCount(1); + this.flowKey = true; + this.flowLevel -= 1; + return this.flowLevel ? 'flow' : 'doc'; + case '*': + yield* this.pushUntil(isNotAnchorChar); + return 'flow'; + case '"': + case "'": + this.flowKey = true; + return yield* this.parseQuotedScalar(); + case ':': { + const next = this.charAt(1); + if (this.flowKey || isEmpty(next) || next === ',') { + this.flowKey = false; + yield* this.pushCount(1); + yield* this.pushSpaces(true); + return 'flow'; + } + } + // fallthrough + default: + this.flowKey = false; + return yield* this.parsePlainScalar(); + } + } + *parseQuotedScalar() { + const quote = this.charAt(0); + let end = this.buffer.indexOf(quote, this.pos + 1); + if (quote === "'") { + while (end !== -1 && this.buffer[end + 1] === "'") + end = this.buffer.indexOf("'", end + 2); + } + else { + // double-quote + while (end !== -1) { + let n = 0; + while (this.buffer[end - 1 - n] === '\\') + n += 1; + if (n % 2 === 0) + break; + end = this.buffer.indexOf('"', end + 1); + } + } + // Only looking for newlines within the quotes + const qb = this.buffer.substring(0, end); + let nl = qb.indexOf('\n', this.pos); + if (nl !== -1) { + while (nl !== -1) { + const cs = this.continueScalar(nl + 1); + if (cs === -1) + break; + nl = qb.indexOf('\n', cs); + } + if (nl !== -1) { + // this is an error caused by an unexpected unindent + end = nl - (qb[nl - 1] === '\r' ? 2 : 1); + } + } + if (end === -1) { + if (!this.atEnd) + return this.setNext('quoted-scalar'); + end = this.buffer.length; + } + yield* this.pushToIndex(end + 1, false); + return this.flowLevel ? 'flow' : 'doc'; + } + *parseBlockScalarHeader() { + this.blockScalarIndent = -1; + this.blockScalarKeep = false; + let i = this.pos; + while (true) { + const ch = this.buffer[++i]; + if (ch === '+') + this.blockScalarKeep = true; + else if (ch > '0' && ch <= '9') + this.blockScalarIndent = Number(ch) - 1; + else if (ch !== '-') + break; + } + return yield* this.pushUntil(ch => isEmpty(ch) || ch === '#'); + } + *parseBlockScalar() { + let nl = this.pos - 1; // may be -1 if this.pos === 0 + let indent = 0; + let ch; + loop: for (let i = this.pos; (ch = this.buffer[i]); ++i) { + switch (ch) { + case ' ': + indent += 1; + break; + case '\n': + nl = i; + indent = 0; + break; + case '\r': { + const next = this.buffer[i + 1]; + if (!next && !this.atEnd) + return this.setNext('block-scalar'); + if (next === '\n') + break; + } // fallthrough + default: + break loop; + } + } + if (!ch && !this.atEnd) + return this.setNext('block-scalar'); + if (indent >= this.indentNext) { + if (this.blockScalarIndent === -1) + this.indentNext = indent; + else { + this.indentNext = + this.blockScalarIndent + (this.indentNext === 0 ? 1 : this.indentNext); + } + do { + const cs = this.continueScalar(nl + 1); + if (cs === -1) + break; + nl = this.buffer.indexOf('\n', cs); + } while (nl !== -1); + if (nl === -1) { + if (!this.atEnd) + return this.setNext('block-scalar'); + nl = this.buffer.length; + } + } + // Trailing insufficiently indented tabs are invalid. + // To catch that during parsing, we include them in the block scalar value. + let i = nl + 1; + ch = this.buffer[i]; + while (ch === ' ') + ch = this.buffer[++i]; + if (ch === '\t') { + while (ch === '\t' || ch === ' ' || ch === '\r' || ch === '\n') + ch = this.buffer[++i]; + nl = i - 1; + } + else if (!this.blockScalarKeep) { + do { + let i = nl - 1; + let ch = this.buffer[i]; + if (ch === '\r') + ch = this.buffer[--i]; + const lastChar = i; // Drop the line if last char not more indented + while (ch === ' ') + ch = this.buffer[--i]; + if (ch === '\n' && i >= this.pos && i + 1 + indent > lastChar) + nl = i; + else + break; + } while (true); + } + yield cst.SCALAR; + yield* this.pushToIndex(nl + 1, true); + return yield* this.parseLineStart(); + } + *parsePlainScalar() { + const inFlow = this.flowLevel > 0; + let end = this.pos - 1; + let i = this.pos - 1; + let ch; + while ((ch = this.buffer[++i])) { + if (ch === ':') { + const next = this.buffer[i + 1]; + if (isEmpty(next) || (inFlow && flowIndicatorChars.has(next))) + break; + end = i; + } + else if (isEmpty(ch)) { + let next = this.buffer[i + 1]; + if (ch === '\r') { + if (next === '\n') { + i += 1; + ch = '\n'; + next = this.buffer[i + 1]; + } + else + end = i; + } + if (next === '#' || (inFlow && flowIndicatorChars.has(next))) + break; + if (ch === '\n') { + const cs = this.continueScalar(i + 1); + if (cs === -1) + break; + i = Math.max(i, cs - 2); // to advance, but still account for ' #' + } + } + else { + if (inFlow && flowIndicatorChars.has(ch)) + break; + end = i; + } + } + if (!ch && !this.atEnd) + return this.setNext('plain-scalar'); + yield cst.SCALAR; + yield* this.pushToIndex(end + 1, true); + return inFlow ? 'flow' : 'doc'; + } + *pushCount(n) { + if (n > 0) { + yield this.buffer.substr(this.pos, n); + this.pos += n; + return n; + } + return 0; + } + *pushToIndex(i, allowEmpty) { + const s = this.buffer.slice(this.pos, i); + if (s) { + yield s; + this.pos += s.length; + return s.length; + } + else if (allowEmpty) + yield ''; + return 0; + } + *pushIndicators() { + switch (this.charAt(0)) { + case '!': + return ((yield* this.pushTag()) + + (yield* this.pushSpaces(true)) + + (yield* this.pushIndicators())); + case '&': + return ((yield* this.pushUntil(isNotAnchorChar)) + + (yield* this.pushSpaces(true)) + + (yield* this.pushIndicators())); + case '-': // this is an error + case '?': // this is an error outside flow collections + case ':': { + const inFlow = this.flowLevel > 0; + const ch1 = this.charAt(1); + if (isEmpty(ch1) || (inFlow && flowIndicatorChars.has(ch1))) { + if (!inFlow) + this.indentNext = this.indentValue + 1; + else if (this.flowKey) + this.flowKey = false; + return ((yield* this.pushCount(1)) + + (yield* this.pushSpaces(true)) + + (yield* this.pushIndicators())); + } + } + } + return 0; + } + *pushTag() { + if (this.charAt(1) === '<') { + let i = this.pos + 2; + let ch = this.buffer[i]; + while (!isEmpty(ch) && ch !== '>') + ch = this.buffer[++i]; + return yield* this.pushToIndex(ch === '>' ? i + 1 : i, false); + } + else { + let i = this.pos + 1; + let ch = this.buffer[i]; + while (ch) { + if (tagChars.has(ch)) + ch = this.buffer[++i]; + else if (ch === '%' && + hexDigits.has(this.buffer[i + 1]) && + hexDigits.has(this.buffer[i + 2])) { + ch = this.buffer[(i += 3)]; + } + else + break; + } + return yield* this.pushToIndex(i, false); + } + } + *pushNewline() { + const ch = this.buffer[this.pos]; + if (ch === '\n') + return yield* this.pushCount(1); + else if (ch === '\r' && this.charAt(1) === '\n') + return yield* this.pushCount(2); + else + return 0; + } + *pushSpaces(allowTabs) { + let i = this.pos - 1; + let ch; + do { + ch = this.buffer[++i]; + } while (ch === ' ' || (allowTabs && ch === '\t')); + const n = i - this.pos; + if (n > 0) { + yield this.buffer.substr(this.pos, n); + this.pos = i; + } + return n; + } + *pushUntil(test) { + let i = this.pos; + let ch = this.buffer[i]; + while (!test(ch)) + ch = this.buffer[++i]; + return yield* this.pushToIndex(i, false); + } +} + +exports.Lexer = Lexer; diff --git a/node_modules/yaml/dist/parse/line-counter.d.ts b/node_modules/yaml/dist/parse/line-counter.d.ts new file mode 100644 index 0000000..b469095 --- /dev/null +++ b/node_modules/yaml/dist/parse/line-counter.d.ts @@ -0,0 +1,22 @@ +/** + * Tracks newlines during parsing in order to provide an efficient API for + * determining the one-indexed `{ line, col }` position for any offset + * within the input. + */ +export declare class LineCounter { + lineStarts: number[]; + /** + * Should be called in ascending order. Otherwise, call + * `lineCounter.lineStarts.sort()` before calling `linePos()`. + */ + addNewLine: (offset: number) => number; + /** + * Performs a binary search and returns the 1-indexed { line, col } + * position of `offset`. If `line === 0`, `addNewLine` has never been + * called or `offset` is before the first known newline. + */ + linePos: (offset: number) => { + line: number; + col: number; + }; +} diff --git a/node_modules/yaml/dist/parse/line-counter.js b/node_modules/yaml/dist/parse/line-counter.js new file mode 100644 index 0000000..0e7383b --- /dev/null +++ b/node_modules/yaml/dist/parse/line-counter.js @@ -0,0 +1,41 @@ +'use strict'; + +/** + * Tracks newlines during parsing in order to provide an efficient API for + * determining the one-indexed `{ line, col }` position for any offset + * within the input. + */ +class LineCounter { + constructor() { + this.lineStarts = []; + /** + * Should be called in ascending order. Otherwise, call + * `lineCounter.lineStarts.sort()` before calling `linePos()`. + */ + this.addNewLine = (offset) => this.lineStarts.push(offset); + /** + * Performs a binary search and returns the 1-indexed { line, col } + * position of `offset`. If `line === 0`, `addNewLine` has never been + * called or `offset` is before the first known newline. + */ + this.linePos = (offset) => { + let low = 0; + let high = this.lineStarts.length; + while (low < high) { + const mid = (low + high) >> 1; // Math.floor((low + high) / 2) + if (this.lineStarts[mid] < offset) + low = mid + 1; + else + high = mid; + } + if (this.lineStarts[low] === offset) + return { line: low + 1, col: 1 }; + if (low === 0) + return { line: 0, col: offset }; + const start = this.lineStarts[low - 1]; + return { line: low, col: offset - start + 1 }; + }; + } +} + +exports.LineCounter = LineCounter; diff --git a/node_modules/yaml/dist/parse/parser.d.ts b/node_modules/yaml/dist/parse/parser.d.ts new file mode 100644 index 0000000..b7ab545 --- /dev/null +++ b/node_modules/yaml/dist/parse/parser.d.ts @@ -0,0 +1,84 @@ +import type { Token } from './cst'; +/** + * A YAML concrete syntax tree (CST) parser + * + * ```ts + * const src: string = ... + * for (const token of new Parser().parse(src)) { + * // token: Token + * } + * ``` + * + * To use the parser with a user-provided lexer: + * + * ```ts + * function* parse(source: string, lexer: Lexer) { + * const parser = new Parser() + * for (const lexeme of lexer.lex(source)) + * yield* parser.next(lexeme) + * yield* parser.end() + * } + * + * const src: string = ... + * const lexer = new Lexer() + * for (const token of parse(src, lexer)) { + * // token: Token + * } + * ``` + */ +export declare class Parser { + private onNewLine?; + /** If true, space and sequence indicators count as indentation */ + private atNewLine; + /** If true, next token is a scalar value */ + private atScalar; + /** Current indentation level */ + private indent; + /** Current offset since the start of parsing */ + offset: number; + /** On the same line with a block map key */ + private onKeyLine; + /** Top indicates the node that's currently being built */ + stack: Token[]; + /** The source of the current token, set in parse() */ + private source; + /** The type of the current token, set in parse() */ + private type; + /** + * @param onNewLine - If defined, called separately with the start position of + * each new line (in `parse()`, including the start of input). + */ + constructor(onNewLine?: (offset: number) => void); + /** + * Parse `source` as a YAML stream. + * If `incomplete`, a part of the last line may be left as a buffer for the next call. + * + * Errors are not thrown, but yielded as `{ type: 'error', message }` tokens. + * + * @returns A generator of tokens representing each directive, document, and other structure. + */ + parse(source: string, incomplete?: boolean): Generator; + /** + * Advance the parser by the `source` of one lexical token. + */ + next(source: string): Generator; + private lexer; + /** Call at end of input to push out any remaining constructions */ + end(): Generator; + private get sourceToken(); + private step; + private peek; + private pop; + private stream; + private document; + private scalar; + private blockScalar; + private blockMap; + private blockSequence; + private flowCollection; + private flowScalar; + private startBlockValue; + private atIndentedComment; + private documentEnd; + private lineEnd; +} diff --git a/node_modules/yaml/dist/parse/parser.js b/node_modules/yaml/dist/parse/parser.js new file mode 100644 index 0000000..d66ee5b --- /dev/null +++ b/node_modules/yaml/dist/parse/parser.js @@ -0,0 +1,972 @@ +'use strict'; + +var node_process = require('process'); +var cst = require('./cst.js'); +var lexer = require('./lexer.js'); + +function includesToken(list, type) { + for (let i = 0; i < list.length; ++i) + if (list[i].type === type) + return true; + return false; +} +function findNonEmptyIndex(list) { + for (let i = 0; i < list.length; ++i) { + switch (list[i].type) { + case 'space': + case 'comment': + case 'newline': + break; + default: + return i; + } + } + return -1; +} +function isFlowToken(token) { + switch (token?.type) { + case 'alias': + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': + case 'flow-collection': + return true; + default: + return false; + } +} +function getPrevProps(parent) { + switch (parent.type) { + case 'document': + return parent.start; + case 'block-map': { + const it = parent.items[parent.items.length - 1]; + return it.sep ?? it.start; + } + case 'block-seq': + return parent.items[parent.items.length - 1].start; + /* istanbul ignore next should not happen */ + default: + return []; + } +} +/** Note: May modify input array */ +function getFirstKeyStartProps(prev) { + if (prev.length === 0) + return []; + let i = prev.length; + loop: while (--i >= 0) { + switch (prev[i].type) { + case 'doc-start': + case 'explicit-key-ind': + case 'map-value-ind': + case 'seq-item-ind': + case 'newline': + break loop; + } + } + while (prev[++i]?.type === 'space') { + /* loop */ + } + return prev.splice(i, prev.length); +} +function fixFlowSeqItems(fc) { + if (fc.start.type === 'flow-seq-start') { + for (const it of fc.items) { + if (it.sep && + !it.value && + !includesToken(it.start, 'explicit-key-ind') && + !includesToken(it.sep, 'map-value-ind')) { + if (it.key) + it.value = it.key; + delete it.key; + if (isFlowToken(it.value)) { + if (it.value.end) + Array.prototype.push.apply(it.value.end, it.sep); + else + it.value.end = it.sep; + } + else + Array.prototype.push.apply(it.start, it.sep); + delete it.sep; + } + } + } +} +/** + * A YAML concrete syntax tree (CST) parser + * + * ```ts + * const src: string = ... + * for (const token of new Parser().parse(src)) { + * // token: Token + * } + * ``` + * + * To use the parser with a user-provided lexer: + * + * ```ts + * function* parse(source: string, lexer: Lexer) { + * const parser = new Parser() + * for (const lexeme of lexer.lex(source)) + * yield* parser.next(lexeme) + * yield* parser.end() + * } + * + * const src: string = ... + * const lexer = new Lexer() + * for (const token of parse(src, lexer)) { + * // token: Token + * } + * ``` + */ +class Parser { + /** + * @param onNewLine - If defined, called separately with the start position of + * each new line (in `parse()`, including the start of input). + */ + constructor(onNewLine) { + /** If true, space and sequence indicators count as indentation */ + this.atNewLine = true; + /** If true, next token is a scalar value */ + this.atScalar = false; + /** Current indentation level */ + this.indent = 0; + /** Current offset since the start of parsing */ + this.offset = 0; + /** On the same line with a block map key */ + this.onKeyLine = false; + /** Top indicates the node that's currently being built */ + this.stack = []; + /** The source of the current token, set in parse() */ + this.source = ''; + /** The type of the current token, set in parse() */ + this.type = ''; + // Must be defined after `next()` + this.lexer = new lexer.Lexer(); + this.onNewLine = onNewLine; + } + /** + * Parse `source` as a YAML stream. + * If `incomplete`, a part of the last line may be left as a buffer for the next call. + * + * Errors are not thrown, but yielded as `{ type: 'error', message }` tokens. + * + * @returns A generator of tokens representing each directive, document, and other structure. + */ + *parse(source, incomplete = false) { + if (this.onNewLine && this.offset === 0) + this.onNewLine(0); + for (const lexeme of this.lexer.lex(source, incomplete)) + yield* this.next(lexeme); + if (!incomplete) + yield* this.end(); + } + /** + * Advance the parser by the `source` of one lexical token. + */ + *next(source) { + this.source = source; + if (node_process.env.LOG_TOKENS) + console.log('|', cst.prettyToken(source)); + if (this.atScalar) { + this.atScalar = false; + yield* this.step(); + this.offset += source.length; + return; + } + const type = cst.tokenType(source); + if (!type) { + const message = `Not a YAML token: ${source}`; + yield* this.pop({ type: 'error', offset: this.offset, message, source }); + this.offset += source.length; + } + else if (type === 'scalar') { + this.atNewLine = false; + this.atScalar = true; + this.type = 'scalar'; + } + else { + this.type = type; + yield* this.step(); + switch (type) { + case 'newline': + this.atNewLine = true; + this.indent = 0; + if (this.onNewLine) + this.onNewLine(this.offset + source.length); + break; + case 'space': + if (this.atNewLine && source[0] === ' ') + this.indent += source.length; + break; + case 'explicit-key-ind': + case 'map-value-ind': + case 'seq-item-ind': + if (this.atNewLine) + this.indent += source.length; + break; + case 'doc-mode': + case 'flow-error-end': + return; + default: + this.atNewLine = false; + } + this.offset += source.length; + } + } + /** Call at end of input to push out any remaining constructions */ + *end() { + while (this.stack.length > 0) + yield* this.pop(); + } + get sourceToken() { + const st = { + type: this.type, + offset: this.offset, + indent: this.indent, + source: this.source + }; + return st; + } + *step() { + const top = this.peek(1); + if (this.type === 'doc-end' && (!top || top.type !== 'doc-end')) { + while (this.stack.length > 0) + yield* this.pop(); + this.stack.push({ + type: 'doc-end', + offset: this.offset, + source: this.source + }); + return; + } + if (!top) + return yield* this.stream(); + switch (top.type) { + case 'document': + return yield* this.document(top); + case 'alias': + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': + return yield* this.scalar(top); + case 'block-scalar': + return yield* this.blockScalar(top); + case 'block-map': + return yield* this.blockMap(top); + case 'block-seq': + return yield* this.blockSequence(top); + case 'flow-collection': + return yield* this.flowCollection(top); + case 'doc-end': + return yield* this.documentEnd(top); + } + /* istanbul ignore next should not happen */ + yield* this.pop(); + } + peek(n) { + return this.stack[this.stack.length - n]; + } + *pop(error) { + const token = error ?? this.stack.pop(); + /* istanbul ignore if should not happen */ + if (!token) { + const message = 'Tried to pop an empty stack'; + yield { type: 'error', offset: this.offset, source: '', message }; + } + else if (this.stack.length === 0) { + yield token; + } + else { + const top = this.peek(1); + if (token.type === 'block-scalar') { + // Block scalars use their parent rather than header indent + token.indent = 'indent' in top ? top.indent : 0; + } + else if (token.type === 'flow-collection' && top.type === 'document') { + // Ignore all indent for top-level flow collections + token.indent = 0; + } + if (token.type === 'flow-collection') + fixFlowSeqItems(token); + switch (top.type) { + case 'document': + top.value = token; + break; + case 'block-scalar': + top.props.push(token); // error + break; + case 'block-map': { + const it = top.items[top.items.length - 1]; + if (it.value) { + top.items.push({ start: [], key: token, sep: [] }); + this.onKeyLine = true; + return; + } + else if (it.sep) { + it.value = token; + } + else { + Object.assign(it, { key: token, sep: [] }); + this.onKeyLine = !it.explicitKey; + return; + } + break; + } + case 'block-seq': { + const it = top.items[top.items.length - 1]; + if (it.value) + top.items.push({ start: [], value: token }); + else + it.value = token; + break; + } + case 'flow-collection': { + const it = top.items[top.items.length - 1]; + if (!it || it.value) + top.items.push({ start: [], key: token, sep: [] }); + else if (it.sep) + it.value = token; + else + Object.assign(it, { key: token, sep: [] }); + return; + } + /* istanbul ignore next should not happen */ + default: + yield* this.pop(); + yield* this.pop(token); + } + if ((top.type === 'document' || + top.type === 'block-map' || + top.type === 'block-seq') && + (token.type === 'block-map' || token.type === 'block-seq')) { + const last = token.items[token.items.length - 1]; + if (last && + !last.sep && + !last.value && + last.start.length > 0 && + findNonEmptyIndex(last.start) === -1 && + (token.indent === 0 || + last.start.every(st => st.type !== 'comment' || st.indent < token.indent))) { + if (top.type === 'document') + top.end = last.start; + else + top.items.push({ start: last.start }); + token.items.splice(-1, 1); + } + } + } + } + *stream() { + switch (this.type) { + case 'directive-line': + yield { type: 'directive', offset: this.offset, source: this.source }; + return; + case 'byte-order-mark': + case 'space': + case 'comment': + case 'newline': + yield this.sourceToken; + return; + case 'doc-mode': + case 'doc-start': { + const doc = { + type: 'document', + offset: this.offset, + start: [] + }; + if (this.type === 'doc-start') + doc.start.push(this.sourceToken); + this.stack.push(doc); + return; + } + } + yield { + type: 'error', + offset: this.offset, + message: `Unexpected ${this.type} token in YAML stream`, + source: this.source + }; + } + *document(doc) { + if (doc.value) + return yield* this.lineEnd(doc); + switch (this.type) { + case 'doc-start': { + if (findNonEmptyIndex(doc.start) !== -1) { + yield* this.pop(); + yield* this.step(); + } + else + doc.start.push(this.sourceToken); + return; + } + case 'anchor': + case 'tag': + case 'space': + case 'comment': + case 'newline': + doc.start.push(this.sourceToken); + return; + } + const bv = this.startBlockValue(doc); + if (bv) + this.stack.push(bv); + else { + yield { + type: 'error', + offset: this.offset, + message: `Unexpected ${this.type} token in YAML document`, + source: this.source + }; + } + } + *scalar(scalar) { + if (this.type === 'map-value-ind') { + const prev = getPrevProps(this.peek(2)); + const start = getFirstKeyStartProps(prev); + let sep; + if (scalar.end) { + sep = scalar.end; + sep.push(this.sourceToken); + delete scalar.end; + } + else + sep = [this.sourceToken]; + const map = { + type: 'block-map', + offset: scalar.offset, + indent: scalar.indent, + items: [{ start, key: scalar, sep }] + }; + this.onKeyLine = true; + this.stack[this.stack.length - 1] = map; + } + else + yield* this.lineEnd(scalar); + } + *blockScalar(scalar) { + switch (this.type) { + case 'space': + case 'comment': + case 'newline': + scalar.props.push(this.sourceToken); + return; + case 'scalar': + scalar.source = this.source; + // block-scalar source includes trailing newline + this.atNewLine = true; + this.indent = 0; + if (this.onNewLine) { + let nl = this.source.indexOf('\n') + 1; + while (nl !== 0) { + this.onNewLine(this.offset + nl); + nl = this.source.indexOf('\n', nl) + 1; + } + } + yield* this.pop(); + break; + /* istanbul ignore next should not happen */ + default: + yield* this.pop(); + yield* this.step(); + } + } + *blockMap(map) { + const it = map.items[map.items.length - 1]; + // it.sep is true-ish if pair already has key or : separator + switch (this.type) { + case 'newline': + this.onKeyLine = false; + if (it.value) { + const end = 'end' in it.value ? it.value.end : undefined; + const last = Array.isArray(end) ? end[end.length - 1] : undefined; + if (last?.type === 'comment') + end?.push(this.sourceToken); + else + map.items.push({ start: [this.sourceToken] }); + } + else if (it.sep) { + it.sep.push(this.sourceToken); + } + else { + it.start.push(this.sourceToken); + } + return; + case 'space': + case 'comment': + if (it.value) { + map.items.push({ start: [this.sourceToken] }); + } + else if (it.sep) { + it.sep.push(this.sourceToken); + } + else { + if (this.atIndentedComment(it.start, map.indent)) { + const prev = map.items[map.items.length - 2]; + const end = prev?.value?.end; + if (Array.isArray(end)) { + Array.prototype.push.apply(end, it.start); + end.push(this.sourceToken); + map.items.pop(); + return; + } + } + it.start.push(this.sourceToken); + } + return; + } + if (this.indent >= map.indent) { + const atMapIndent = !this.onKeyLine && this.indent === map.indent; + const atNextItem = atMapIndent && + (it.sep || it.explicitKey) && + this.type !== 'seq-item-ind'; + // For empty nodes, assign newline-separated not indented empty tokens to following node + let start = []; + if (atNextItem && it.sep && !it.value) { + const nl = []; + for (let i = 0; i < it.sep.length; ++i) { + const st = it.sep[i]; + switch (st.type) { + case 'newline': + nl.push(i); + break; + case 'space': + break; + case 'comment': + if (st.indent > map.indent) + nl.length = 0; + break; + default: + nl.length = 0; + } + } + if (nl.length >= 2) + start = it.sep.splice(nl[1]); + } + switch (this.type) { + case 'anchor': + case 'tag': + if (atNextItem || it.value) { + start.push(this.sourceToken); + map.items.push({ start }); + this.onKeyLine = true; + } + else if (it.sep) { + it.sep.push(this.sourceToken); + } + else { + it.start.push(this.sourceToken); + } + return; + case 'explicit-key-ind': + if (!it.sep && !it.explicitKey) { + it.start.push(this.sourceToken); + it.explicitKey = true; + } + else if (atNextItem || it.value) { + start.push(this.sourceToken); + map.items.push({ start, explicitKey: true }); + } + else { + this.stack.push({ + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start: [this.sourceToken], explicitKey: true }] + }); + } + this.onKeyLine = true; + return; + case 'map-value-ind': + if (it.explicitKey) { + if (!it.sep) { + if (includesToken(it.start, 'newline')) { + Object.assign(it, { key: null, sep: [this.sourceToken] }); + } + else { + const start = getFirstKeyStartProps(it.start); + this.stack.push({ + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start, key: null, sep: [this.sourceToken] }] + }); + } + } + else if (it.value) { + map.items.push({ start: [], key: null, sep: [this.sourceToken] }); + } + else if (includesToken(it.sep, 'map-value-ind')) { + this.stack.push({ + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start, key: null, sep: [this.sourceToken] }] + }); + } + else if (isFlowToken(it.key) && + !includesToken(it.sep, 'newline')) { + const start = getFirstKeyStartProps(it.start); + const key = it.key; + const sep = it.sep; + sep.push(this.sourceToken); + // @ts-expect-error type guard is wrong here + delete it.key; + // @ts-expect-error type guard is wrong here + delete it.sep; + this.stack.push({ + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start, key, sep }] + }); + } + else if (start.length > 0) { + // Not actually at next item + it.sep = it.sep.concat(start, this.sourceToken); + } + else { + it.sep.push(this.sourceToken); + } + } + else { + if (!it.sep) { + Object.assign(it, { key: null, sep: [this.sourceToken] }); + } + else if (it.value || atNextItem) { + map.items.push({ start, key: null, sep: [this.sourceToken] }); + } + else if (includesToken(it.sep, 'map-value-ind')) { + this.stack.push({ + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start: [], key: null, sep: [this.sourceToken] }] + }); + } + else { + it.sep.push(this.sourceToken); + } + } + this.onKeyLine = true; + return; + case 'alias': + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': { + const fs = this.flowScalar(this.type); + if (atNextItem || it.value) { + map.items.push({ start, key: fs, sep: [] }); + this.onKeyLine = true; + } + else if (it.sep) { + this.stack.push(fs); + } + else { + Object.assign(it, { key: fs, sep: [] }); + this.onKeyLine = true; + } + return; + } + default: { + const bv = this.startBlockValue(map); + if (bv) { + if (bv.type === 'block-seq') { + if (!it.explicitKey && + it.sep && + !includesToken(it.sep, 'newline')) { + yield* this.pop({ + type: 'error', + offset: this.offset, + message: 'Unexpected block-seq-ind on same line with key', + source: this.source + }); + return; + } + } + else if (atMapIndent) { + map.items.push({ start }); + } + this.stack.push(bv); + return; + } + } + } + } + yield* this.pop(); + yield* this.step(); + } + *blockSequence(seq) { + const it = seq.items[seq.items.length - 1]; + switch (this.type) { + case 'newline': + if (it.value) { + const end = 'end' in it.value ? it.value.end : undefined; + const last = Array.isArray(end) ? end[end.length - 1] : undefined; + if (last?.type === 'comment') + end?.push(this.sourceToken); + else + seq.items.push({ start: [this.sourceToken] }); + } + else + it.start.push(this.sourceToken); + return; + case 'space': + case 'comment': + if (it.value) + seq.items.push({ start: [this.sourceToken] }); + else { + if (this.atIndentedComment(it.start, seq.indent)) { + const prev = seq.items[seq.items.length - 2]; + const end = prev?.value?.end; + if (Array.isArray(end)) { + Array.prototype.push.apply(end, it.start); + end.push(this.sourceToken); + seq.items.pop(); + return; + } + } + it.start.push(this.sourceToken); + } + return; + case 'anchor': + case 'tag': + if (it.value || this.indent <= seq.indent) + break; + it.start.push(this.sourceToken); + return; + case 'seq-item-ind': + if (this.indent !== seq.indent) + break; + if (it.value || includesToken(it.start, 'seq-item-ind')) + seq.items.push({ start: [this.sourceToken] }); + else + it.start.push(this.sourceToken); + return; + } + if (this.indent > seq.indent) { + const bv = this.startBlockValue(seq); + if (bv) { + this.stack.push(bv); + return; + } + } + yield* this.pop(); + yield* this.step(); + } + *flowCollection(fc) { + const it = fc.items[fc.items.length - 1]; + if (this.type === 'flow-error-end') { + let top; + do { + yield* this.pop(); + top = this.peek(1); + } while (top && top.type === 'flow-collection'); + } + else if (fc.end.length === 0) { + switch (this.type) { + case 'comma': + case 'explicit-key-ind': + if (!it || it.sep) + fc.items.push({ start: [this.sourceToken] }); + else + it.start.push(this.sourceToken); + return; + case 'map-value-ind': + if (!it || it.value) + fc.items.push({ start: [], key: null, sep: [this.sourceToken] }); + else if (it.sep) + it.sep.push(this.sourceToken); + else + Object.assign(it, { key: null, sep: [this.sourceToken] }); + return; + case 'space': + case 'comment': + case 'newline': + case 'anchor': + case 'tag': + if (!it || it.value) + fc.items.push({ start: [this.sourceToken] }); + else if (it.sep) + it.sep.push(this.sourceToken); + else + it.start.push(this.sourceToken); + return; + case 'alias': + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': { + const fs = this.flowScalar(this.type); + if (!it || it.value) + fc.items.push({ start: [], key: fs, sep: [] }); + else if (it.sep) + this.stack.push(fs); + else + Object.assign(it, { key: fs, sep: [] }); + return; + } + case 'flow-map-end': + case 'flow-seq-end': + fc.end.push(this.sourceToken); + return; + } + const bv = this.startBlockValue(fc); + /* istanbul ignore else should not happen */ + if (bv) + this.stack.push(bv); + else { + yield* this.pop(); + yield* this.step(); + } + } + else { + const parent = this.peek(2); + if (parent.type === 'block-map' && + ((this.type === 'map-value-ind' && parent.indent === fc.indent) || + (this.type === 'newline' && + !parent.items[parent.items.length - 1].sep))) { + yield* this.pop(); + yield* this.step(); + } + else if (this.type === 'map-value-ind' && + parent.type !== 'flow-collection') { + const prev = getPrevProps(parent); + const start = getFirstKeyStartProps(prev); + fixFlowSeqItems(fc); + const sep = fc.end.splice(1, fc.end.length); + sep.push(this.sourceToken); + const map = { + type: 'block-map', + offset: fc.offset, + indent: fc.indent, + items: [{ start, key: fc, sep }] + }; + this.onKeyLine = true; + this.stack[this.stack.length - 1] = map; + } + else { + yield* this.lineEnd(fc); + } + } + } + flowScalar(type) { + if (this.onNewLine) { + let nl = this.source.indexOf('\n') + 1; + while (nl !== 0) { + this.onNewLine(this.offset + nl); + nl = this.source.indexOf('\n', nl) + 1; + } + } + return { + type, + offset: this.offset, + indent: this.indent, + source: this.source + }; + } + startBlockValue(parent) { + switch (this.type) { + case 'alias': + case 'scalar': + case 'single-quoted-scalar': + case 'double-quoted-scalar': + return this.flowScalar(this.type); + case 'block-scalar-header': + return { + type: 'block-scalar', + offset: this.offset, + indent: this.indent, + props: [this.sourceToken], + source: '' + }; + case 'flow-map-start': + case 'flow-seq-start': + return { + type: 'flow-collection', + offset: this.offset, + indent: this.indent, + start: this.sourceToken, + items: [], + end: [] + }; + case 'seq-item-ind': + return { + type: 'block-seq', + offset: this.offset, + indent: this.indent, + items: [{ start: [this.sourceToken] }] + }; + case 'explicit-key-ind': { + this.onKeyLine = true; + const prev = getPrevProps(parent); + const start = getFirstKeyStartProps(prev); + start.push(this.sourceToken); + return { + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start, explicitKey: true }] + }; + } + case 'map-value-ind': { + this.onKeyLine = true; + const prev = getPrevProps(parent); + const start = getFirstKeyStartProps(prev); + return { + type: 'block-map', + offset: this.offset, + indent: this.indent, + items: [{ start, key: null, sep: [this.sourceToken] }] + }; + } + } + return null; + } + atIndentedComment(start, indent) { + if (this.type !== 'comment') + return false; + if (this.indent <= indent) + return false; + return start.every(st => st.type === 'newline' || st.type === 'space'); + } + *documentEnd(docEnd) { + if (this.type !== 'doc-mode') { + if (docEnd.end) + docEnd.end.push(this.sourceToken); + else + docEnd.end = [this.sourceToken]; + if (this.type === 'newline') + yield* this.pop(); + } + } + *lineEnd(token) { + switch (this.type) { + case 'comma': + case 'doc-start': + case 'doc-end': + case 'flow-seq-end': + case 'flow-map-end': + case 'map-value-ind': + yield* this.pop(); + yield* this.step(); + break; + case 'newline': + this.onKeyLine = false; + // fallthrough + case 'space': + case 'comment': + default: + // all other values are errors + if (token.end) + token.end.push(this.sourceToken); + else + token.end = [this.sourceToken]; + if (this.type === 'newline') + yield* this.pop(); + } + } +} + +exports.Parser = Parser; diff --git a/node_modules/yaml/dist/public-api.d.ts b/node_modules/yaml/dist/public-api.d.ts new file mode 100644 index 0000000..fd6dd45 --- /dev/null +++ b/node_modules/yaml/dist/public-api.d.ts @@ -0,0 +1,44 @@ +import { Composer } from './compose/composer'; +import type { Reviver } from './doc/applyReviver'; +import type { Replacer } from './doc/Document'; +import { Document } from './doc/Document'; +import type { Node, ParsedNode } from './nodes/Node'; +import type { CreateNodeOptions, DocumentOptions, ParseOptions, SchemaOptions, ToJSOptions, ToStringOptions } from './options'; +export interface EmptyStream extends Array, ReturnType { + empty: true; +} +/** + * Parse the input as a stream of YAML documents. + * + * Documents should be separated from each other by `...` or `---` marker lines. + * + * @returns If an empty `docs` array is returned, it will be of type + * EmptyStream and contain additional stream information. In + * TypeScript, you should use `'empty' in docs` as a type guard for it. + */ +export declare function parseAllDocuments(source: string, options?: ParseOptions & DocumentOptions & SchemaOptions): Array : Document> | EmptyStream; +/** Parse an input string into a single YAML.Document */ +export declare function parseDocument(source: string, options?: ParseOptions & DocumentOptions & SchemaOptions): Contents extends ParsedNode ? Document.Parsed : Document; +/** + * Parse an input string into JavaScript. + * + * Only supports input consisting of a single YAML document; for multi-document + * support you should use `YAML.parseAllDocuments`. May throw on error, and may + * log warnings using `console.warn`. + * + * @param str - A string with YAML formatting. + * @param reviver - A reviver function, as in `JSON.parse()` + * @returns The value will match the type of the root value of the parsed YAML + * document, so Maps become objects, Sequences arrays, and scalars result in + * nulls, booleans, numbers and strings. + */ +export declare function parse(src: string, options?: ParseOptions & DocumentOptions & SchemaOptions & ToJSOptions): any; +export declare function parse(src: string, reviver: Reviver, options?: ParseOptions & DocumentOptions & SchemaOptions & ToJSOptions): any; +/** + * Stringify a value as a YAML document. + * + * @param replacer - A replacer array or function, as in `JSON.stringify()` + * @returns Will always include `\n` as the last character, as is expected of YAML documents. + */ +export declare function stringify(value: any, options?: DocumentOptions & SchemaOptions & ParseOptions & CreateNodeOptions & ToStringOptions): string; +export declare function stringify(value: any, replacer?: Replacer | null, options?: string | number | (DocumentOptions & SchemaOptions & ParseOptions & CreateNodeOptions & ToStringOptions)): string; diff --git a/node_modules/yaml/dist/public-api.js b/node_modules/yaml/dist/public-api.js new file mode 100644 index 0000000..db76cef --- /dev/null +++ b/node_modules/yaml/dist/public-api.js @@ -0,0 +1,107 @@ +'use strict'; + +var composer = require('./compose/composer.js'); +var Document = require('./doc/Document.js'); +var errors = require('./errors.js'); +var log = require('./log.js'); +var identity = require('./nodes/identity.js'); +var lineCounter = require('./parse/line-counter.js'); +var parser = require('./parse/parser.js'); + +function parseOptions(options) { + const prettyErrors = options.prettyErrors !== false; + const lineCounter$1 = options.lineCounter || (prettyErrors && new lineCounter.LineCounter()) || null; + return { lineCounter: lineCounter$1, prettyErrors }; +} +/** + * Parse the input as a stream of YAML documents. + * + * Documents should be separated from each other by `...` or `---` marker lines. + * + * @returns If an empty `docs` array is returned, it will be of type + * EmptyStream and contain additional stream information. In + * TypeScript, you should use `'empty' in docs` as a type guard for it. + */ +function parseAllDocuments(source, options = {}) { + const { lineCounter, prettyErrors } = parseOptions(options); + const parser$1 = new parser.Parser(lineCounter?.addNewLine); + const composer$1 = new composer.Composer(options); + const docs = Array.from(composer$1.compose(parser$1.parse(source))); + if (prettyErrors && lineCounter) + for (const doc of docs) { + doc.errors.forEach(errors.prettifyError(source, lineCounter)); + doc.warnings.forEach(errors.prettifyError(source, lineCounter)); + } + if (docs.length > 0) + return docs; + return Object.assign([], { empty: true }, composer$1.streamInfo()); +} +/** Parse an input string into a single YAML.Document */ +function parseDocument(source, options = {}) { + const { lineCounter, prettyErrors } = parseOptions(options); + const parser$1 = new parser.Parser(lineCounter?.addNewLine); + const composer$1 = new composer.Composer(options); + // `doc` is always set by compose.end(true) at the very latest + let doc = null; + for (const _doc of composer$1.compose(parser$1.parse(source), true, source.length)) { + if (!doc) + doc = _doc; + else if (doc.options.logLevel !== 'silent') { + doc.errors.push(new errors.YAMLParseError(_doc.range.slice(0, 2), 'MULTIPLE_DOCS', 'Source contains multiple documents; please use YAML.parseAllDocuments()')); + break; + } + } + if (prettyErrors && lineCounter) { + doc.errors.forEach(errors.prettifyError(source, lineCounter)); + doc.warnings.forEach(errors.prettifyError(source, lineCounter)); + } + return doc; +} +function parse(src, reviver, options) { + let _reviver = undefined; + if (typeof reviver === 'function') { + _reviver = reviver; + } + else if (options === undefined && reviver && typeof reviver === 'object') { + options = reviver; + } + const doc = parseDocument(src, options); + if (!doc) + return null; + doc.warnings.forEach(warning => log.warn(doc.options.logLevel, warning)); + if (doc.errors.length > 0) { + if (doc.options.logLevel !== 'silent') + throw doc.errors[0]; + else + doc.errors = []; + } + return doc.toJS(Object.assign({ reviver: _reviver }, options)); +} +function stringify(value, replacer, options) { + let _replacer = null; + if (typeof replacer === 'function' || Array.isArray(replacer)) { + _replacer = replacer; + } + else if (options === undefined && replacer) { + options = replacer; + } + if (typeof options === 'string') + options = options.length; + if (typeof options === 'number') { + const indent = Math.round(options); + options = indent < 1 ? undefined : indent > 8 ? { indent: 8 } : { indent }; + } + if (value === undefined) { + const { keepUndefined } = options ?? replacer ?? {}; + if (!keepUndefined) + return undefined; + } + if (identity.isDocument(value) && !_replacer) + return value.toString(options); + return new Document.Document(value, _replacer, options).toString(options); +} + +exports.parse = parse; +exports.parseAllDocuments = parseAllDocuments; +exports.parseDocument = parseDocument; +exports.stringify = stringify; diff --git a/node_modules/yaml/dist/schema/Schema.d.ts b/node_modules/yaml/dist/schema/Schema.d.ts new file mode 100644 index 0000000..cb6c3ed --- /dev/null +++ b/node_modules/yaml/dist/schema/Schema.d.ts @@ -0,0 +1,17 @@ +import { MAP, SCALAR, SEQ } from '../nodes/identity'; +import type { Pair } from '../nodes/Pair'; +import type { SchemaOptions, ToStringOptions } from '../options'; +import type { CollectionTag, ScalarTag } from './types'; +export declare class Schema { + compat: Array | null; + knownTags: Record; + name: string; + sortMapEntries: ((a: Pair, b: Pair) => number) | null; + tags: Array; + toStringOptions: Readonly | null; + readonly [MAP]: CollectionTag; + readonly [SCALAR]: ScalarTag; + readonly [SEQ]: CollectionTag; + constructor({ compat, customTags, merge, resolveKnownTags, schema, sortMapEntries, toStringDefaults }: SchemaOptions); + clone(): Schema; +} diff --git a/node_modules/yaml/dist/schema/Schema.js b/node_modules/yaml/dist/schema/Schema.js new file mode 100644 index 0000000..3926547 --- /dev/null +++ b/node_modules/yaml/dist/schema/Schema.js @@ -0,0 +1,39 @@ +'use strict'; + +var identity = require('../nodes/identity.js'); +var map = require('./common/map.js'); +var seq = require('./common/seq.js'); +var string = require('./common/string.js'); +var tags = require('./tags.js'); + +const sortMapEntriesByKey = (a, b) => a.key < b.key ? -1 : a.key > b.key ? 1 : 0; +class Schema { + constructor({ compat, customTags, merge, resolveKnownTags, schema, sortMapEntries, toStringDefaults }) { + this.compat = Array.isArray(compat) + ? tags.getTags(compat, 'compat') + : compat + ? tags.getTags(null, compat) + : null; + this.name = (typeof schema === 'string' && schema) || 'core'; + this.knownTags = resolveKnownTags ? tags.coreKnownTags : {}; + this.tags = tags.getTags(customTags, this.name, merge); + this.toStringOptions = toStringDefaults ?? null; + Object.defineProperty(this, identity.MAP, { value: map.map }); + Object.defineProperty(this, identity.SCALAR, { value: string.string }); + Object.defineProperty(this, identity.SEQ, { value: seq.seq }); + // Used by createMap() + this.sortMapEntries = + typeof sortMapEntries === 'function' + ? sortMapEntries + : sortMapEntries === true + ? sortMapEntriesByKey + : null; + } + clone() { + const copy = Object.create(Schema.prototype, Object.getOwnPropertyDescriptors(this)); + copy.tags = this.tags.slice(); + return copy; + } +} + +exports.Schema = Schema; diff --git a/node_modules/yaml/dist/schema/common/map.d.ts b/node_modules/yaml/dist/schema/common/map.d.ts new file mode 100644 index 0000000..5db47c5 --- /dev/null +++ b/node_modules/yaml/dist/schema/common/map.d.ts @@ -0,0 +1,2 @@ +import type { CollectionTag } from '../types'; +export declare const map: CollectionTag; diff --git a/node_modules/yaml/dist/schema/common/map.js b/node_modules/yaml/dist/schema/common/map.js new file mode 100644 index 0000000..649c3b9 --- /dev/null +++ b/node_modules/yaml/dist/schema/common/map.js @@ -0,0 +1,19 @@ +'use strict'; + +var identity = require('../../nodes/identity.js'); +var YAMLMap = require('../../nodes/YAMLMap.js'); + +const map = { + collection: 'map', + default: true, + nodeClass: YAMLMap.YAMLMap, + tag: 'tag:yaml.org,2002:map', + resolve(map, onError) { + if (!identity.isMap(map)) + onError('Expected a mapping for this tag'); + return map; + }, + createNode: (schema, obj, ctx) => YAMLMap.YAMLMap.from(schema, obj, ctx) +}; + +exports.map = map; diff --git a/node_modules/yaml/dist/schema/common/null.d.ts b/node_modules/yaml/dist/schema/common/null.d.ts new file mode 100644 index 0000000..66f9f83 --- /dev/null +++ b/node_modules/yaml/dist/schema/common/null.d.ts @@ -0,0 +1,4 @@ +import type { ScalarTag } from '../types'; +export declare const nullTag: ScalarTag & { + test: RegExp; +}; diff --git a/node_modules/yaml/dist/schema/common/null.js b/node_modules/yaml/dist/schema/common/null.js new file mode 100644 index 0000000..cb353a7 --- /dev/null +++ b/node_modules/yaml/dist/schema/common/null.js @@ -0,0 +1,17 @@ +'use strict'; + +var Scalar = require('../../nodes/Scalar.js'); + +const nullTag = { + identify: value => value == null, + createNode: () => new Scalar.Scalar(null), + default: true, + tag: 'tag:yaml.org,2002:null', + test: /^(?:~|[Nn]ull|NULL)?$/, + resolve: () => new Scalar.Scalar(null), + stringify: ({ source }, ctx) => typeof source === 'string' && nullTag.test.test(source) + ? source + : ctx.options.nullStr +}; + +exports.nullTag = nullTag; diff --git a/node_modules/yaml/dist/schema/common/seq.d.ts b/node_modules/yaml/dist/schema/common/seq.d.ts new file mode 100644 index 0000000..fc8f562 --- /dev/null +++ b/node_modules/yaml/dist/schema/common/seq.d.ts @@ -0,0 +1,2 @@ +import type { CollectionTag } from '../types'; +export declare const seq: CollectionTag; diff --git a/node_modules/yaml/dist/schema/common/seq.js b/node_modules/yaml/dist/schema/common/seq.js new file mode 100644 index 0000000..9c54bc9 --- /dev/null +++ b/node_modules/yaml/dist/schema/common/seq.js @@ -0,0 +1,19 @@ +'use strict'; + +var identity = require('../../nodes/identity.js'); +var YAMLSeq = require('../../nodes/YAMLSeq.js'); + +const seq = { + collection: 'seq', + default: true, + nodeClass: YAMLSeq.YAMLSeq, + tag: 'tag:yaml.org,2002:seq', + resolve(seq, onError) { + if (!identity.isSeq(seq)) + onError('Expected a sequence for this tag'); + return seq; + }, + createNode: (schema, obj, ctx) => YAMLSeq.YAMLSeq.from(schema, obj, ctx) +}; + +exports.seq = seq; diff --git a/node_modules/yaml/dist/schema/common/string.d.ts b/node_modules/yaml/dist/schema/common/string.d.ts new file mode 100644 index 0000000..d03dc89 --- /dev/null +++ b/node_modules/yaml/dist/schema/common/string.d.ts @@ -0,0 +1,2 @@ +import type { ScalarTag } from '../types'; +export declare const string: ScalarTag; diff --git a/node_modules/yaml/dist/schema/common/string.js b/node_modules/yaml/dist/schema/common/string.js new file mode 100644 index 0000000..7601420 --- /dev/null +++ b/node_modules/yaml/dist/schema/common/string.js @@ -0,0 +1,16 @@ +'use strict'; + +var stringifyString = require('../../stringify/stringifyString.js'); + +const string = { + identify: value => typeof value === 'string', + default: true, + tag: 'tag:yaml.org,2002:str', + resolve: str => str, + stringify(item, ctx, onComment, onChompKeep) { + ctx = Object.assign({ actualString: true }, ctx); + return stringifyString.stringifyString(item, ctx, onComment, onChompKeep); + } +}; + +exports.string = string; diff --git a/node_modules/yaml/dist/schema/core/bool.d.ts b/node_modules/yaml/dist/schema/core/bool.d.ts new file mode 100644 index 0000000..36c6149 --- /dev/null +++ b/node_modules/yaml/dist/schema/core/bool.d.ts @@ -0,0 +1,4 @@ +import type { ScalarTag } from '../types'; +export declare const boolTag: ScalarTag & { + test: RegExp; +}; diff --git a/node_modules/yaml/dist/schema/core/bool.js b/node_modules/yaml/dist/schema/core/bool.js new file mode 100644 index 0000000..4def73c --- /dev/null +++ b/node_modules/yaml/dist/schema/core/bool.js @@ -0,0 +1,21 @@ +'use strict'; + +var Scalar = require('../../nodes/Scalar.js'); + +const boolTag = { + identify: value => typeof value === 'boolean', + default: true, + tag: 'tag:yaml.org,2002:bool', + test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/, + resolve: str => new Scalar.Scalar(str[0] === 't' || str[0] === 'T'), + stringify({ source, value }, ctx) { + if (source && boolTag.test.test(source)) { + const sv = source[0] === 't' || source[0] === 'T'; + if (value === sv) + return source; + } + return value ? ctx.options.trueStr : ctx.options.falseStr; + } +}; + +exports.boolTag = boolTag; diff --git a/node_modules/yaml/dist/schema/core/float.d.ts b/node_modules/yaml/dist/schema/core/float.d.ts new file mode 100644 index 0000000..6e5412b --- /dev/null +++ b/node_modules/yaml/dist/schema/core/float.d.ts @@ -0,0 +1,4 @@ +import type { ScalarTag } from '../types'; +export declare const floatNaN: ScalarTag; +export declare const floatExp: ScalarTag; +export declare const float: ScalarTag; diff --git a/node_modules/yaml/dist/schema/core/float.js b/node_modules/yaml/dist/schema/core/float.js new file mode 100644 index 0000000..8756446 --- /dev/null +++ b/node_modules/yaml/dist/schema/core/float.js @@ -0,0 +1,47 @@ +'use strict'; + +var Scalar = require('../../nodes/Scalar.js'); +var stringifyNumber = require('../../stringify/stringifyNumber.js'); + +const floatNaN = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/, + resolve: str => str.slice(-3).toLowerCase() === 'nan' + ? NaN + : str[0] === '-' + ? Number.NEGATIVE_INFINITY + : Number.POSITIVE_INFINITY, + stringify: stringifyNumber.stringifyNumber +}; +const floatExp = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + format: 'EXP', + test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/, + resolve: str => parseFloat(str), + stringify(node) { + const num = Number(node.value); + return isFinite(num) ? num.toExponential() : stringifyNumber.stringifyNumber(node); + } +}; +const float = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + test: /^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/, + resolve(str) { + const node = new Scalar.Scalar(parseFloat(str)); + const dot = str.indexOf('.'); + if (dot !== -1 && str[str.length - 1] === '0') + node.minFractionDigits = str.length - dot - 1; + return node; + }, + stringify: stringifyNumber.stringifyNumber +}; + +exports.float = float; +exports.floatExp = floatExp; +exports.floatNaN = floatNaN; diff --git a/node_modules/yaml/dist/schema/core/int.d.ts b/node_modules/yaml/dist/schema/core/int.d.ts new file mode 100644 index 0000000..fb884bb --- /dev/null +++ b/node_modules/yaml/dist/schema/core/int.d.ts @@ -0,0 +1,4 @@ +import type { ScalarTag } from '../types'; +export declare const intOct: ScalarTag; +export declare const int: ScalarTag; +export declare const intHex: ScalarTag; diff --git a/node_modules/yaml/dist/schema/core/int.js b/node_modules/yaml/dist/schema/core/int.js new file mode 100644 index 0000000..fe4c9ca --- /dev/null +++ b/node_modules/yaml/dist/schema/core/int.js @@ -0,0 +1,42 @@ +'use strict'; + +var stringifyNumber = require('../../stringify/stringifyNumber.js'); + +const intIdentify = (value) => typeof value === 'bigint' || Number.isInteger(value); +const intResolve = (str, offset, radix, { intAsBigInt }) => (intAsBigInt ? BigInt(str) : parseInt(str.substring(offset), radix)); +function intStringify(node, radix, prefix) { + const { value } = node; + if (intIdentify(value) && value >= 0) + return prefix + value.toString(radix); + return stringifyNumber.stringifyNumber(node); +} +const intOct = { + identify: value => intIdentify(value) && value >= 0, + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'OCT', + test: /^0o[0-7]+$/, + resolve: (str, _onError, opt) => intResolve(str, 2, 8, opt), + stringify: node => intStringify(node, 8, '0o') +}; +const int = { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + test: /^[-+]?[0-9]+$/, + resolve: (str, _onError, opt) => intResolve(str, 0, 10, opt), + stringify: stringifyNumber.stringifyNumber +}; +const intHex = { + identify: value => intIdentify(value) && value >= 0, + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'HEX', + test: /^0x[0-9a-fA-F]+$/, + resolve: (str, _onError, opt) => intResolve(str, 2, 16, opt), + stringify: node => intStringify(node, 16, '0x') +}; + +exports.int = int; +exports.intHex = intHex; +exports.intOct = intOct; diff --git a/node_modules/yaml/dist/schema/core/schema.d.ts b/node_modules/yaml/dist/schema/core/schema.d.ts new file mode 100644 index 0000000..0d21e56 --- /dev/null +++ b/node_modules/yaml/dist/schema/core/schema.d.ts @@ -0,0 +1 @@ +export declare const schema: (import('../types').CollectionTag | import('../types').ScalarTag)[]; diff --git a/node_modules/yaml/dist/schema/core/schema.js b/node_modules/yaml/dist/schema/core/schema.js new file mode 100644 index 0000000..6ab87f2 --- /dev/null +++ b/node_modules/yaml/dist/schema/core/schema.js @@ -0,0 +1,25 @@ +'use strict'; + +var map = require('../common/map.js'); +var _null = require('../common/null.js'); +var seq = require('../common/seq.js'); +var string = require('../common/string.js'); +var bool = require('./bool.js'); +var float = require('./float.js'); +var int = require('./int.js'); + +const schema = [ + map.map, + seq.seq, + string.string, + _null.nullTag, + bool.boolTag, + int.intOct, + int.int, + int.intHex, + float.floatNaN, + float.floatExp, + float.float +]; + +exports.schema = schema; diff --git a/node_modules/yaml/dist/schema/json-schema.d.ts b/node_modules/yaml/dist/schema/json-schema.d.ts new file mode 100644 index 0000000..6d51f40 --- /dev/null +++ b/node_modules/yaml/dist/schema/json-schema.d.ts @@ -0,0 +1,69 @@ +type JsonSchema = boolean | ArraySchema | ObjectSchema | NumberSchema | StringSchema; +type JsonType = 'array' | 'object' | 'string' | 'number' | 'integer' | 'boolean' | 'null'; +interface CommonSchema { + type?: JsonType | JsonType[]; + const?: unknown; + enum?: unknown[]; + format?: string; + allOf?: JsonSchema[]; + anyOf?: JsonSchema[]; + oneOf?: JsonSchema[]; + not?: JsonSchema; + if?: JsonSchema; + then?: JsonSchema; + else?: JsonSchema; + $id?: string; + $defs?: Record; + $anchor?: string; + $dynamicAnchor?: string; + $ref?: string; + $dynamicRef?: string; + $schema?: string; + $vocabulary?: Record; + $comment?: string; + default?: unknown; + deprecated?: boolean; + readOnly?: boolean; + writeOnly?: boolean; + title?: string; + description?: string; + examples?: unknown[]; +} +interface ArraySchema extends CommonSchema { + prefixItems?: JsonSchema[]; + items?: JsonSchema; + contains?: JsonSchema; + unevaluatedItems?: JsonSchema; + maxItems?: number; + minItems?: number; + uniqueItems?: boolean; + maxContains?: number; + minContains?: number; +} +interface ObjectSchema extends CommonSchema { + properties?: Record; + patternProperties?: Record; + additionalProperties?: JsonSchema; + propertyNames?: JsonSchema; + unevaluatedProperties?: JsonSchema; + maxProperties?: number; + minProperties?: number; + required?: string[]; + dependentRequired?: Record; + dependentSchemas?: Record; +} +interface StringSchema extends CommonSchema { + maxLength?: number; + minLength?: number; + patter?: string; + contentEncoding?: string; + contentMediaType?: string; + contentSchema?: JsonSchema; +} +interface NumberSchema extends CommonSchema { + multipleOf?: number; + maximum?: number; + exclusiveMaximum?: number; + minimum?: number; + exclusiveMinimum?: number; +} diff --git a/node_modules/yaml/dist/schema/json/schema.d.ts b/node_modules/yaml/dist/schema/json/schema.d.ts new file mode 100644 index 0000000..5c18c61 --- /dev/null +++ b/node_modules/yaml/dist/schema/json/schema.d.ts @@ -0,0 +1,2 @@ +import type { CollectionTag, ScalarTag } from '../types'; +export declare const schema: (CollectionTag | ScalarTag)[]; diff --git a/node_modules/yaml/dist/schema/json/schema.js b/node_modules/yaml/dist/schema/json/schema.js new file mode 100644 index 0000000..ccb871a --- /dev/null +++ b/node_modules/yaml/dist/schema/json/schema.js @@ -0,0 +1,64 @@ +'use strict'; + +var Scalar = require('../../nodes/Scalar.js'); +var map = require('../common/map.js'); +var seq = require('../common/seq.js'); + +function intIdentify(value) { + return typeof value === 'bigint' || Number.isInteger(value); +} +const stringifyJSON = ({ value }) => JSON.stringify(value); +const jsonScalars = [ + { + identify: value => typeof value === 'string', + default: true, + tag: 'tag:yaml.org,2002:str', + resolve: str => str, + stringify: stringifyJSON + }, + { + identify: value => value == null, + createNode: () => new Scalar.Scalar(null), + default: true, + tag: 'tag:yaml.org,2002:null', + test: /^null$/, + resolve: () => null, + stringify: stringifyJSON + }, + { + identify: value => typeof value === 'boolean', + default: true, + tag: 'tag:yaml.org,2002:bool', + test: /^true$|^false$/, + resolve: str => str === 'true', + stringify: stringifyJSON + }, + { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + test: /^-?(?:0|[1-9][0-9]*)$/, + resolve: (str, _onError, { intAsBigInt }) => intAsBigInt ? BigInt(str) : parseInt(str, 10), + stringify: ({ value }) => intIdentify(value) ? value.toString() : JSON.stringify(value) + }, + { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/, + resolve: str => parseFloat(str), + stringify: stringifyJSON + } +]; +const jsonError = { + default: true, + tag: '', + test: /^/, + resolve(str, onError) { + onError(`Unresolved plain scalar ${JSON.stringify(str)}`); + return str; + } +}; +const schema = [map.map, seq.seq].concat(jsonScalars, jsonError); + +exports.schema = schema; diff --git a/node_modules/yaml/dist/schema/tags.d.ts b/node_modules/yaml/dist/schema/tags.d.ts new file mode 100644 index 0000000..01cf33f --- /dev/null +++ b/node_modules/yaml/dist/schema/tags.d.ts @@ -0,0 +1,48 @@ +import type { SchemaOptions } from '../options'; +import type { CollectionTag, ScalarTag } from './types'; +declare const tagsByName: { + binary: ScalarTag; + bool: ScalarTag & { + test: RegExp; + }; + float: ScalarTag; + floatExp: ScalarTag; + floatNaN: ScalarTag; + floatTime: ScalarTag; + int: ScalarTag; + intHex: ScalarTag; + intOct: ScalarTag; + intTime: ScalarTag; + map: CollectionTag; + merge: ScalarTag & { + identify(value: unknown): boolean; + test: RegExp; + }; + null: ScalarTag & { + test: RegExp; + }; + omap: CollectionTag; + pairs: CollectionTag; + seq: CollectionTag; + set: CollectionTag; + timestamp: ScalarTag & { + test: RegExp; + }; +}; +export type TagId = keyof typeof tagsByName; +export type Tags = Array; +export declare const coreKnownTags: { + 'tag:yaml.org,2002:binary': ScalarTag; + 'tag:yaml.org,2002:merge': ScalarTag & { + identify(value: unknown): boolean; + test: RegExp; + }; + 'tag:yaml.org,2002:omap': CollectionTag; + 'tag:yaml.org,2002:pairs': CollectionTag; + 'tag:yaml.org,2002:set': CollectionTag; + 'tag:yaml.org,2002:timestamp': ScalarTag & { + test: RegExp; + }; +}; +export declare function getTags(customTags: SchemaOptions['customTags'] | undefined, schemaName: string, addMergeTag?: boolean): (CollectionTag | ScalarTag)[]; +export {}; diff --git a/node_modules/yaml/dist/schema/tags.js b/node_modules/yaml/dist/schema/tags.js new file mode 100644 index 0000000..bd67d86 --- /dev/null +++ b/node_modules/yaml/dist/schema/tags.js @@ -0,0 +1,99 @@ +'use strict'; + +var map = require('./common/map.js'); +var _null = require('./common/null.js'); +var seq = require('./common/seq.js'); +var string = require('./common/string.js'); +var bool = require('./core/bool.js'); +var float = require('./core/float.js'); +var int = require('./core/int.js'); +var schema = require('./core/schema.js'); +var schema$1 = require('./json/schema.js'); +var binary = require('./yaml-1.1/binary.js'); +var merge = require('./yaml-1.1/merge.js'); +var omap = require('./yaml-1.1/omap.js'); +var pairs = require('./yaml-1.1/pairs.js'); +var schema$2 = require('./yaml-1.1/schema.js'); +var set = require('./yaml-1.1/set.js'); +var timestamp = require('./yaml-1.1/timestamp.js'); + +const schemas = new Map([ + ['core', schema.schema], + ['failsafe', [map.map, seq.seq, string.string]], + ['json', schema$1.schema], + ['yaml11', schema$2.schema], + ['yaml-1.1', schema$2.schema] +]); +const tagsByName = { + binary: binary.binary, + bool: bool.boolTag, + float: float.float, + floatExp: float.floatExp, + floatNaN: float.floatNaN, + floatTime: timestamp.floatTime, + int: int.int, + intHex: int.intHex, + intOct: int.intOct, + intTime: timestamp.intTime, + map: map.map, + merge: merge.merge, + null: _null.nullTag, + omap: omap.omap, + pairs: pairs.pairs, + seq: seq.seq, + set: set.set, + timestamp: timestamp.timestamp +}; +const coreKnownTags = { + 'tag:yaml.org,2002:binary': binary.binary, + 'tag:yaml.org,2002:merge': merge.merge, + 'tag:yaml.org,2002:omap': omap.omap, + 'tag:yaml.org,2002:pairs': pairs.pairs, + 'tag:yaml.org,2002:set': set.set, + 'tag:yaml.org,2002:timestamp': timestamp.timestamp +}; +function getTags(customTags, schemaName, addMergeTag) { + const schemaTags = schemas.get(schemaName); + if (schemaTags && !customTags) { + return addMergeTag && !schemaTags.includes(merge.merge) + ? schemaTags.concat(merge.merge) + : schemaTags.slice(); + } + let tags = schemaTags; + if (!tags) { + if (Array.isArray(customTags)) + tags = []; + else { + const keys = Array.from(schemas.keys()) + .filter(key => key !== 'yaml11') + .map(key => JSON.stringify(key)) + .join(', '); + throw new Error(`Unknown schema "${schemaName}"; use one of ${keys} or define customTags array`); + } + } + if (Array.isArray(customTags)) { + for (const tag of customTags) + tags = tags.concat(tag); + } + else if (typeof customTags === 'function') { + tags = customTags(tags.slice()); + } + if (addMergeTag) + tags = tags.concat(merge.merge); + return tags.reduce((tags, tag) => { + const tagObj = typeof tag === 'string' ? tagsByName[tag] : tag; + if (!tagObj) { + const tagName = JSON.stringify(tag); + const keys = Object.keys(tagsByName) + .map(key => JSON.stringify(key)) + .join(', '); + throw new Error(`Unknown custom tag ${tagName}; use one of ${keys}`); + } + if (!tags.includes(tagObj)) + tags.push(tagObj); + return tags; + }, []); +} + +exports.coreKnownTags = coreKnownTags; +exports.getTags = getTags; diff --git a/node_modules/yaml/dist/schema/types.d.ts b/node_modules/yaml/dist/schema/types.d.ts new file mode 100644 index 0000000..631cc53 --- /dev/null +++ b/node_modules/yaml/dist/schema/types.d.ts @@ -0,0 +1,92 @@ +import type { CreateNodeContext } from '../doc/createNode'; +import type { Node } from '../nodes/Node'; +import type { Scalar } from '../nodes/Scalar'; +import type { YAMLMap } from '../nodes/YAMLMap'; +import type { YAMLSeq } from '../nodes/YAMLSeq'; +import type { ParseOptions } from '../options'; +import type { StringifyContext } from '../stringify/stringify'; +import type { Schema } from './Schema'; +interface TagBase { + /** + * An optional factory function, used e.g. by collections when wrapping JS objects as AST nodes. + */ + createNode?: (schema: Schema, value: unknown, ctx: CreateNodeContext) => Node; + /** + * If `true`, allows for values to be stringified without + * an explicit tag together with `test`. + * If `'key'`, this only applies if the value is used as a mapping key. + * For most cases, it's unlikely that you'll actually want to use this, + * even if you first think you do. + */ + default?: boolean | 'key'; + /** + * If a tag has multiple forms that should be parsed and/or stringified + * differently, use `format` to identify them. + */ + format?: string; + /** + * Used by `YAML.createNode` to detect your data type, e.g. using `typeof` or + * `instanceof`. + */ + identify?: (value: unknown) => boolean; + /** + * The identifier for your data type, with which its stringified form will be + * prefixed. Should either be a !-prefixed local `!tag`, or a fully qualified + * `tag:domain,date:foo`. + */ + tag: string; +} +export interface ScalarTag extends TagBase { + collection?: never; + nodeClass?: never; + /** + * Turns a value into an AST node. + * If returning a non-`Node` value, the output will be wrapped as a `Scalar`. + */ + resolve(value: string, onError: (message: string) => void, options: ParseOptions): unknown; + /** + * Optional function stringifying a Scalar node. If your data includes a + * suitable `.toString()` method, you can probably leave this undefined and + * use the default stringifier. + * + * @param item The node being stringified. + * @param ctx Contains the stringifying context variables. + * @param onComment Callback to signal that the stringifier includes the + * item's comment in its output. + * @param onChompKeep Callback to signal that the output uses a block scalar + * type with the `+` chomping indicator. + */ + stringify?: (item: Scalar, ctx: StringifyContext, onComment?: () => void, onChompKeep?: () => void) => string; + /** + * Together with `default` allows for values to be stringified without an + * explicit tag and detected using a regular expression. For most cases, it's + * unlikely that you'll actually want to use these, even if you first think + * you do. + */ + test?: RegExp; +} +export interface CollectionTag extends TagBase { + stringify?: never; + test?: never; + /** The source collection type supported by this tag. */ + collection: 'map' | 'seq'; + /** + * The `Node` child class that implements this tag. + * If set, used to select this tag when stringifying. + * + * If the class provides a static `from` method, then that + * will be used if the tag object doesn't have a `createNode` method. + */ + nodeClass?: { + new (schema?: Schema): Node; + from?: (schema: Schema, obj: unknown, ctx: CreateNodeContext) => Node; + }; + /** + * Turns a value into an AST node. + * If returning a non-`Node` value, the output will be wrapped as a `Scalar`. + * + * Note: this is required if nodeClass is not provided. + */ + resolve?: (value: YAMLMap.Parsed | YAMLSeq.Parsed, onError: (message: string) => void, options: ParseOptions) => unknown; +} +export {}; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts b/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts new file mode 100644 index 0000000..6a7e60b --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts @@ -0,0 +1,2 @@ +import type { ScalarTag } from '../types'; +export declare const binary: ScalarTag; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/binary.js b/node_modules/yaml/dist/schema/yaml-1.1/binary.js new file mode 100644 index 0000000..e529d74 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/binary.js @@ -0,0 +1,70 @@ +'use strict'; + +var node_buffer = require('buffer'); +var Scalar = require('../../nodes/Scalar.js'); +var stringifyString = require('../../stringify/stringifyString.js'); + +const binary = { + identify: value => value instanceof Uint8Array, // Buffer inherits from Uint8Array + default: false, + tag: 'tag:yaml.org,2002:binary', + /** + * Returns a Buffer in node and an Uint8Array in browsers + * + * To use the resulting buffer as an image, you'll want to do something like: + * + * const blob = new Blob([buffer], { type: 'image/jpeg' }) + * document.querySelector('#photo').src = URL.createObjectURL(blob) + */ + resolve(src, onError) { + if (typeof node_buffer.Buffer === 'function') { + return node_buffer.Buffer.from(src, 'base64'); + } + else if (typeof atob === 'function') { + // On IE 11, atob() can't handle newlines + const str = atob(src.replace(/[\n\r]/g, '')); + const buffer = new Uint8Array(str.length); + for (let i = 0; i < str.length; ++i) + buffer[i] = str.charCodeAt(i); + return buffer; + } + else { + onError('This environment does not support reading binary tags; either Buffer or atob is required'); + return src; + } + }, + stringify({ comment, type, value }, ctx, onComment, onChompKeep) { + if (!value) + return ''; + const buf = value; // checked earlier by binary.identify() + let str; + if (typeof node_buffer.Buffer === 'function') { + str = + buf instanceof node_buffer.Buffer + ? buf.toString('base64') + : node_buffer.Buffer.from(buf.buffer).toString('base64'); + } + else if (typeof btoa === 'function') { + let s = ''; + for (let i = 0; i < buf.length; ++i) + s += String.fromCharCode(buf[i]); + str = btoa(s); + } + else { + throw new Error('This environment does not support writing binary tags; either Buffer or btoa is required'); + } + type ?? (type = Scalar.Scalar.BLOCK_LITERAL); + if (type !== Scalar.Scalar.QUOTE_DOUBLE) { + const lineWidth = Math.max(ctx.options.lineWidth - ctx.indent.length, ctx.options.minContentWidth); + const n = Math.ceil(str.length / lineWidth); + const lines = new Array(n); + for (let i = 0, o = 0; i < n; ++i, o += lineWidth) { + lines[i] = str.substr(o, lineWidth); + } + str = lines.join(type === Scalar.Scalar.BLOCK_LITERAL ? '\n' : ' '); + } + return stringifyString.stringifyString({ comment, type, value: str }, ctx, onComment, onChompKeep); + } +}; + +exports.binary = binary; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts b/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts new file mode 100644 index 0000000..5208456 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts @@ -0,0 +1,7 @@ +import type { ScalarTag } from '../types'; +export declare const trueTag: ScalarTag & { + test: RegExp; +}; +export declare const falseTag: ScalarTag & { + test: RegExp; +}; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/bool.js b/node_modules/yaml/dist/schema/yaml-1.1/bool.js new file mode 100644 index 0000000..d987952 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/bool.js @@ -0,0 +1,29 @@ +'use strict'; + +var Scalar = require('../../nodes/Scalar.js'); + +function boolStringify({ value, source }, ctx) { + const boolObj = value ? trueTag : falseTag; + if (source && boolObj.test.test(source)) + return source; + return value ? ctx.options.trueStr : ctx.options.falseStr; +} +const trueTag = { + identify: value => value === true, + default: true, + tag: 'tag:yaml.org,2002:bool', + test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/, + resolve: () => new Scalar.Scalar(true), + stringify: boolStringify +}; +const falseTag = { + identify: value => value === false, + default: true, + tag: 'tag:yaml.org,2002:bool', + test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/, + resolve: () => new Scalar.Scalar(false), + stringify: boolStringify +}; + +exports.falseTag = falseTag; +exports.trueTag = trueTag; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts b/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts new file mode 100644 index 0000000..6e5412b --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts @@ -0,0 +1,4 @@ +import type { ScalarTag } from '../types'; +export declare const floatNaN: ScalarTag; +export declare const floatExp: ScalarTag; +export declare const float: ScalarTag; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/float.js b/node_modules/yaml/dist/schema/yaml-1.1/float.js new file mode 100644 index 0000000..39f1eb0 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/float.js @@ -0,0 +1,50 @@ +'use strict'; + +var Scalar = require('../../nodes/Scalar.js'); +var stringifyNumber = require('../../stringify/stringifyNumber.js'); + +const floatNaN = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/, + resolve: (str) => str.slice(-3).toLowerCase() === 'nan' + ? NaN + : str[0] === '-' + ? Number.NEGATIVE_INFINITY + : Number.POSITIVE_INFINITY, + stringify: stringifyNumber.stringifyNumber +}; +const floatExp = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + format: 'EXP', + test: /^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/, + resolve: (str) => parseFloat(str.replace(/_/g, '')), + stringify(node) { + const num = Number(node.value); + return isFinite(num) ? num.toExponential() : stringifyNumber.stringifyNumber(node); + } +}; +const float = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + test: /^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/, + resolve(str) { + const node = new Scalar.Scalar(parseFloat(str.replace(/_/g, ''))); + const dot = str.indexOf('.'); + if (dot !== -1) { + const f = str.substring(dot + 1).replace(/_/g, ''); + if (f[f.length - 1] === '0') + node.minFractionDigits = f.length; + } + return node; + }, + stringify: stringifyNumber.stringifyNumber +}; + +exports.float = float; +exports.floatExp = floatExp; +exports.floatNaN = floatNaN; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts b/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts new file mode 100644 index 0000000..22461ed --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts @@ -0,0 +1,5 @@ +import type { ScalarTag } from '../types'; +export declare const intBin: ScalarTag; +export declare const intOct: ScalarTag; +export declare const int: ScalarTag; +export declare const intHex: ScalarTag; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/int.js b/node_modules/yaml/dist/schema/yaml-1.1/int.js new file mode 100644 index 0000000..fdf47ca --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/int.js @@ -0,0 +1,76 @@ +'use strict'; + +var stringifyNumber = require('../../stringify/stringifyNumber.js'); + +const intIdentify = (value) => typeof value === 'bigint' || Number.isInteger(value); +function intResolve(str, offset, radix, { intAsBigInt }) { + const sign = str[0]; + if (sign === '-' || sign === '+') + offset += 1; + str = str.substring(offset).replace(/_/g, ''); + if (intAsBigInt) { + switch (radix) { + case 2: + str = `0b${str}`; + break; + case 8: + str = `0o${str}`; + break; + case 16: + str = `0x${str}`; + break; + } + const n = BigInt(str); + return sign === '-' ? BigInt(-1) * n : n; + } + const n = parseInt(str, radix); + return sign === '-' ? -1 * n : n; +} +function intStringify(node, radix, prefix) { + const { value } = node; + if (intIdentify(value)) { + const str = value.toString(radix); + return value < 0 ? '-' + prefix + str.substr(1) : prefix + str; + } + return stringifyNumber.stringifyNumber(node); +} +const intBin = { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'BIN', + test: /^[-+]?0b[0-1_]+$/, + resolve: (str, _onError, opt) => intResolve(str, 2, 2, opt), + stringify: node => intStringify(node, 2, '0b') +}; +const intOct = { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'OCT', + test: /^[-+]?0[0-7_]+$/, + resolve: (str, _onError, opt) => intResolve(str, 1, 8, opt), + stringify: node => intStringify(node, 8, '0') +}; +const int = { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + test: /^[-+]?[0-9][0-9_]*$/, + resolve: (str, _onError, opt) => intResolve(str, 0, 10, opt), + stringify: stringifyNumber.stringifyNumber +}; +const intHex = { + identify: intIdentify, + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'HEX', + test: /^[-+]?0x[0-9a-fA-F_]+$/, + resolve: (str, _onError, opt) => intResolve(str, 2, 16, opt), + stringify: node => intStringify(node, 16, '0x') +}; + +exports.int = int; +exports.intBin = intBin; +exports.intHex = intHex; +exports.intOct = intOct; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts b/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts new file mode 100644 index 0000000..8ade171 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts @@ -0,0 +1,9 @@ +import type { ToJSContext } from '../../nodes/toJS'; +import type { MapLike } from '../../nodes/YAMLMap'; +import type { ScalarTag } from '../types'; +export declare const merge: ScalarTag & { + identify(value: unknown): boolean; + test: RegExp; +}; +export declare const isMergeKey: (ctx: ToJSContext | undefined, key: unknown) => boolean | undefined; +export declare function addMergeToJSMap(ctx: ToJSContext | undefined, map: MapLike, value: unknown): void; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/merge.js b/node_modules/yaml/dist/schema/yaml-1.1/merge.js new file mode 100644 index 0000000..ef2ff32 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/merge.js @@ -0,0 +1,68 @@ +'use strict'; + +var identity = require('../../nodes/identity.js'); +var Scalar = require('../../nodes/Scalar.js'); + +// If the value associated with a merge key is a single mapping node, each of +// its key/value pairs is inserted into the current mapping, unless the key +// already exists in it. If the value associated with the merge key is a +// sequence, then this sequence is expected to contain mapping nodes and each +// of these nodes is merged in turn according to its order in the sequence. +// Keys in mapping nodes earlier in the sequence override keys specified in +// later mapping nodes. -- http://yaml.org/type/merge.html +const MERGE_KEY = '<<'; +const merge = { + identify: value => value === MERGE_KEY || + (typeof value === 'symbol' && value.description === MERGE_KEY), + default: 'key', + tag: 'tag:yaml.org,2002:merge', + test: /^<<$/, + resolve: () => Object.assign(new Scalar.Scalar(Symbol(MERGE_KEY)), { + addToJSMap: addMergeToJSMap + }), + stringify: () => MERGE_KEY +}; +const isMergeKey = (ctx, key) => (merge.identify(key) || + (identity.isScalar(key) && + (!key.type || key.type === Scalar.Scalar.PLAIN) && + merge.identify(key.value))) && + ctx?.doc.schema.tags.some(tag => tag.tag === merge.tag && tag.default); +function addMergeToJSMap(ctx, map, value) { + value = ctx && identity.isAlias(value) ? value.resolve(ctx.doc) : value; + if (identity.isSeq(value)) + for (const it of value.items) + mergeValue(ctx, map, it); + else if (Array.isArray(value)) + for (const it of value) + mergeValue(ctx, map, it); + else + mergeValue(ctx, map, value); +} +function mergeValue(ctx, map, value) { + const source = ctx && identity.isAlias(value) ? value.resolve(ctx.doc) : value; + if (!identity.isMap(source)) + throw new Error('Merge sources must be maps or map aliases'); + const srcMap = source.toJSON(null, ctx, Map); + for (const [key, value] of srcMap) { + if (map instanceof Map) { + if (!map.has(key)) + map.set(key, value); + } + else if (map instanceof Set) { + map.add(key); + } + else if (!Object.prototype.hasOwnProperty.call(map, key)) { + Object.defineProperty(map, key, { + value, + writable: true, + enumerable: true, + configurable: true + }); + } + } + return map; +} + +exports.addMergeToJSMap = addMergeToJSMap; +exports.isMergeKey = isMergeKey; +exports.merge = merge; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts b/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts new file mode 100644 index 0000000..33425af --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts @@ -0,0 +1,22 @@ +import type { ToJSContext } from '../../nodes/toJS'; +import { YAMLMap } from '../../nodes/YAMLMap'; +import { YAMLSeq } from '../../nodes/YAMLSeq'; +import type { CreateNodeContext } from '../../util'; +import type { Schema } from '../Schema'; +import type { CollectionTag } from '../types'; +export declare class YAMLOMap extends YAMLSeq { + static tag: string; + constructor(); + add: typeof YAMLMap.prototype.add; + delete: typeof YAMLMap.prototype.delete; + get: typeof YAMLMap.prototype.get; + has: typeof YAMLMap.prototype.has; + set: typeof YAMLMap.prototype.set; + /** + * If `ctx` is given, the return type is actually `Map`, + * but TypeScript won't allow widening the signature of a child method. + */ + toJSON(_?: unknown, ctx?: ToJSContext): unknown[]; + static from(schema: Schema, iterable: unknown, ctx: CreateNodeContext): YAMLOMap; +} +export declare const omap: CollectionTag; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/omap.js b/node_modules/yaml/dist/schema/yaml-1.1/omap.js new file mode 100644 index 0000000..3ca141d --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/omap.js @@ -0,0 +1,77 @@ +'use strict'; + +var identity = require('../../nodes/identity.js'); +var toJS = require('../../nodes/toJS.js'); +var YAMLMap = require('../../nodes/YAMLMap.js'); +var YAMLSeq = require('../../nodes/YAMLSeq.js'); +var pairs = require('./pairs.js'); + +class YAMLOMap extends YAMLSeq.YAMLSeq { + constructor() { + super(); + this.add = YAMLMap.YAMLMap.prototype.add.bind(this); + this.delete = YAMLMap.YAMLMap.prototype.delete.bind(this); + this.get = YAMLMap.YAMLMap.prototype.get.bind(this); + this.has = YAMLMap.YAMLMap.prototype.has.bind(this); + this.set = YAMLMap.YAMLMap.prototype.set.bind(this); + this.tag = YAMLOMap.tag; + } + /** + * If `ctx` is given, the return type is actually `Map`, + * but TypeScript won't allow widening the signature of a child method. + */ + toJSON(_, ctx) { + if (!ctx) + return super.toJSON(_); + const map = new Map(); + if (ctx?.onCreate) + ctx.onCreate(map); + for (const pair of this.items) { + let key, value; + if (identity.isPair(pair)) { + key = toJS.toJS(pair.key, '', ctx); + value = toJS.toJS(pair.value, key, ctx); + } + else { + key = toJS.toJS(pair, '', ctx); + } + if (map.has(key)) + throw new Error('Ordered maps must not include duplicate keys'); + map.set(key, value); + } + return map; + } + static from(schema, iterable, ctx) { + const pairs$1 = pairs.createPairs(schema, iterable, ctx); + const omap = new this(); + omap.items = pairs$1.items; + return omap; + } +} +YAMLOMap.tag = 'tag:yaml.org,2002:omap'; +const omap = { + collection: 'seq', + identify: value => value instanceof Map, + nodeClass: YAMLOMap, + default: false, + tag: 'tag:yaml.org,2002:omap', + resolve(seq, onError) { + const pairs$1 = pairs.resolvePairs(seq, onError); + const seenKeys = []; + for (const { key } of pairs$1.items) { + if (identity.isScalar(key)) { + if (seenKeys.includes(key.value)) { + onError(`Ordered maps must not include duplicate keys: ${key.value}`); + } + else { + seenKeys.push(key.value); + } + } + } + return Object.assign(new YAMLOMap(), pairs$1); + }, + createNode: (schema, iterable, ctx) => YAMLOMap.from(schema, iterable, ctx) +}; + +exports.YAMLOMap = YAMLOMap; +exports.omap = omap; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts b/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts new file mode 100644 index 0000000..3bb7d0c --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts @@ -0,0 +1,10 @@ +import type { CreateNodeContext } from '../../doc/createNode'; +import type { ParsedNode } from '../../nodes/Node'; +import { Pair } from '../../nodes/Pair'; +import type { YAMLMap } from '../../nodes/YAMLMap'; +import { YAMLSeq } from '../../nodes/YAMLSeq'; +import type { Schema } from '../../schema/Schema'; +import type { CollectionTag } from '../types'; +export declare function resolvePairs(seq: YAMLSeq.Parsed> | YAMLMap.Parsed, onError: (message: string) => void): YAMLSeq.Parsed>; +export declare function createPairs(schema: Schema, iterable: unknown, ctx: CreateNodeContext): YAMLSeq; +export declare const pairs: CollectionTag; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/pairs.js b/node_modules/yaml/dist/schema/yaml-1.1/pairs.js new file mode 100644 index 0000000..aa32e0f --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/pairs.js @@ -0,0 +1,82 @@ +'use strict'; + +var identity = require('../../nodes/identity.js'); +var Pair = require('../../nodes/Pair.js'); +var Scalar = require('../../nodes/Scalar.js'); +var YAMLSeq = require('../../nodes/YAMLSeq.js'); + +function resolvePairs(seq, onError) { + if (identity.isSeq(seq)) { + for (let i = 0; i < seq.items.length; ++i) { + let item = seq.items[i]; + if (identity.isPair(item)) + continue; + else if (identity.isMap(item)) { + if (item.items.length > 1) + onError('Each pair must have its own sequence indicator'); + const pair = item.items[0] || new Pair.Pair(new Scalar.Scalar(null)); + if (item.commentBefore) + pair.key.commentBefore = pair.key.commentBefore + ? `${item.commentBefore}\n${pair.key.commentBefore}` + : item.commentBefore; + if (item.comment) { + const cn = pair.value ?? pair.key; + cn.comment = cn.comment + ? `${item.comment}\n${cn.comment}` + : item.comment; + } + item = pair; + } + seq.items[i] = identity.isPair(item) ? item : new Pair.Pair(item); + } + } + else + onError('Expected a sequence for this tag'); + return seq; +} +function createPairs(schema, iterable, ctx) { + const { replacer } = ctx; + const pairs = new YAMLSeq.YAMLSeq(schema); + pairs.tag = 'tag:yaml.org,2002:pairs'; + let i = 0; + if (iterable && Symbol.iterator in Object(iterable)) + for (let it of iterable) { + if (typeof replacer === 'function') + it = replacer.call(iterable, String(i++), it); + let key, value; + if (Array.isArray(it)) { + if (it.length === 2) { + key = it[0]; + value = it[1]; + } + else + throw new TypeError(`Expected [key, value] tuple: ${it}`); + } + else if (it && it instanceof Object) { + const keys = Object.keys(it); + if (keys.length === 1) { + key = keys[0]; + value = it[key]; + } + else { + throw new TypeError(`Expected tuple with one key, not ${keys.length} keys`); + } + } + else { + key = it; + } + pairs.items.push(Pair.createPair(key, value, ctx)); + } + return pairs; +} +const pairs = { + collection: 'seq', + default: false, + tag: 'tag:yaml.org,2002:pairs', + resolve: resolvePairs, + createNode: createPairs +}; + +exports.createPairs = createPairs; +exports.pairs = pairs; +exports.resolvePairs = resolvePairs; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts b/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts new file mode 100644 index 0000000..0d21e56 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts @@ -0,0 +1 @@ +export declare const schema: (import('../types').CollectionTag | import('../types').ScalarTag)[]; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/schema.js b/node_modules/yaml/dist/schema/yaml-1.1/schema.js new file mode 100644 index 0000000..2ea4b73 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/schema.js @@ -0,0 +1,41 @@ +'use strict'; + +var map = require('../common/map.js'); +var _null = require('../common/null.js'); +var seq = require('../common/seq.js'); +var string = require('../common/string.js'); +var binary = require('./binary.js'); +var bool = require('./bool.js'); +var float = require('./float.js'); +var int = require('./int.js'); +var merge = require('./merge.js'); +var omap = require('./omap.js'); +var pairs = require('./pairs.js'); +var set = require('./set.js'); +var timestamp = require('./timestamp.js'); + +const schema = [ + map.map, + seq.seq, + string.string, + _null.nullTag, + bool.trueTag, + bool.falseTag, + int.intBin, + int.intOct, + int.int, + int.intHex, + float.floatNaN, + float.floatExp, + float.float, + binary.binary, + merge.merge, + omap.omap, + pairs.pairs, + set.set, + timestamp.intTime, + timestamp.floatTime, + timestamp.timestamp +]; + +exports.schema = schema; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts b/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts new file mode 100644 index 0000000..ddf43aa --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts @@ -0,0 +1,28 @@ +import { Pair } from '../../nodes/Pair'; +import type { Scalar } from '../../nodes/Scalar'; +import type { ToJSContext } from '../../nodes/toJS'; +import { YAMLMap } from '../../nodes/YAMLMap'; +import type { Schema } from '../../schema/Schema'; +import type { StringifyContext } from '../../stringify/stringify'; +import type { CreateNodeContext } from '../../util'; +import type { CollectionTag } from '../types'; +export declare class YAMLSet extends YAMLMap | null> { + static tag: string; + constructor(schema?: Schema); + add(key: T | Pair | null> | { + key: T; + value: Scalar | null; + }): void; + /** + * If `keepPair` is `true`, returns the Pair matching `key`. + * Otherwise, returns the value of that Pair's key. + */ + get(key: unknown, keepPair?: boolean): any; + set(key: T, value: boolean): void; + /** @deprecated Will throw; `value` must be boolean */ + set(key: T, value: null): void; + toJSON(_?: unknown, ctx?: ToJSContext): any; + toString(ctx?: StringifyContext, onComment?: () => void, onChompKeep?: () => void): string; + static from(schema: Schema, iterable: unknown, ctx: CreateNodeContext): YAMLSet; +} +export declare const set: CollectionTag; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/set.js b/node_modules/yaml/dist/schema/yaml-1.1/set.js new file mode 100644 index 0000000..650c250 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/set.js @@ -0,0 +1,96 @@ +'use strict'; + +var identity = require('../../nodes/identity.js'); +var Pair = require('../../nodes/Pair.js'); +var YAMLMap = require('../../nodes/YAMLMap.js'); + +class YAMLSet extends YAMLMap.YAMLMap { + constructor(schema) { + super(schema); + this.tag = YAMLSet.tag; + } + add(key) { + let pair; + if (identity.isPair(key)) + pair = key; + else if (key && + typeof key === 'object' && + 'key' in key && + 'value' in key && + key.value === null) + pair = new Pair.Pair(key.key, null); + else + pair = new Pair.Pair(key, null); + const prev = YAMLMap.findPair(this.items, pair.key); + if (!prev) + this.items.push(pair); + } + /** + * If `keepPair` is `true`, returns the Pair matching `key`. + * Otherwise, returns the value of that Pair's key. + */ + get(key, keepPair) { + const pair = YAMLMap.findPair(this.items, key); + return !keepPair && identity.isPair(pair) + ? identity.isScalar(pair.key) + ? pair.key.value + : pair.key + : pair; + } + set(key, value) { + if (typeof value !== 'boolean') + throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`); + const prev = YAMLMap.findPair(this.items, key); + if (prev && !value) { + this.items.splice(this.items.indexOf(prev), 1); + } + else if (!prev && value) { + this.items.push(new Pair.Pair(key)); + } + } + toJSON(_, ctx) { + return super.toJSON(_, ctx, Set); + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + if (this.hasAllNullValues(true)) + return super.toString(Object.assign({}, ctx, { allNullValues: true }), onComment, onChompKeep); + else + throw new Error('Set items must all have null values'); + } + static from(schema, iterable, ctx) { + const { replacer } = ctx; + const set = new this(schema); + if (iterable && Symbol.iterator in Object(iterable)) + for (let value of iterable) { + if (typeof replacer === 'function') + value = replacer.call(iterable, value, value); + set.items.push(Pair.createPair(value, null, ctx)); + } + return set; + } +} +YAMLSet.tag = 'tag:yaml.org,2002:set'; +const set = { + collection: 'map', + identify: value => value instanceof Set, + nodeClass: YAMLSet, + default: false, + tag: 'tag:yaml.org,2002:set', + createNode: (schema, iterable, ctx) => YAMLSet.from(schema, iterable, ctx), + resolve(map, onError) { + if (identity.isMap(map)) { + if (map.hasAllNullValues(true)) + return Object.assign(new YAMLSet(), map); + else + onError('Set items must all have null values'); + } + else + onError('Expected a mapping for this tag'); + return map; + } +}; + +exports.YAMLSet = YAMLSet; +exports.set = set; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts b/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts new file mode 100644 index 0000000..8513466 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts @@ -0,0 +1,6 @@ +import type { ScalarTag } from '../types'; +export declare const intTime: ScalarTag; +export declare const floatTime: ScalarTag; +export declare const timestamp: ScalarTag & { + test: RegExp; +}; diff --git a/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js b/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js new file mode 100644 index 0000000..982fd06 --- /dev/null +++ b/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js @@ -0,0 +1,105 @@ +'use strict'; + +var stringifyNumber = require('../../stringify/stringifyNumber.js'); + +/** Internal types handle bigint as number, because TS can't figure it out. */ +function parseSexagesimal(str, asBigInt) { + const sign = str[0]; + const parts = sign === '-' || sign === '+' ? str.substring(1) : str; + const num = (n) => asBigInt ? BigInt(n) : Number(n); + const res = parts + .replace(/_/g, '') + .split(':') + .reduce((res, p) => res * num(60) + num(p), num(0)); + return (sign === '-' ? num(-1) * res : res); +} +/** + * hhhh:mm:ss.sss + * + * Internal types handle bigint as number, because TS can't figure it out. + */ +function stringifySexagesimal(node) { + let { value } = node; + let num = (n) => n; + if (typeof value === 'bigint') + num = n => BigInt(n); + else if (isNaN(value) || !isFinite(value)) + return stringifyNumber.stringifyNumber(node); + let sign = ''; + if (value < 0) { + sign = '-'; + value *= num(-1); + } + const _60 = num(60); + const parts = [value % _60]; // seconds, including ms + if (value < 60) { + parts.unshift(0); // at least one : is required + } + else { + value = (value - parts[0]) / _60; + parts.unshift(value % _60); // minutes + if (value >= 60) { + value = (value - parts[0]) / _60; + parts.unshift(value); // hours + } + } + return (sign + + parts + .map(n => String(n).padStart(2, '0')) + .join(':') + .replace(/000000\d*$/, '') // % 60 may introduce error + ); +} +const intTime = { + identify: value => typeof value === 'bigint' || Number.isInteger(value), + default: true, + tag: 'tag:yaml.org,2002:int', + format: 'TIME', + test: /^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/, + resolve: (str, _onError, { intAsBigInt }) => parseSexagesimal(str, intAsBigInt), + stringify: stringifySexagesimal +}; +const floatTime = { + identify: value => typeof value === 'number', + default: true, + tag: 'tag:yaml.org,2002:float', + format: 'TIME', + test: /^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/, + resolve: str => parseSexagesimal(str, false), + stringify: stringifySexagesimal +}; +const timestamp = { + identify: value => value instanceof Date, + default: true, + tag: 'tag:yaml.org,2002:timestamp', + // If the time zone is omitted, the timestamp is assumed to be specified in UTC. The time part + // may be omitted altogether, resulting in a date format. In such a case, the time part is + // assumed to be 00:00:00Z (start of day, UTC). + test: RegExp('^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})' + // YYYY-Mm-Dd + '(?:' + // time is optional + '(?:t|T|[ \\t]+)' + // t | T | whitespace + '([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)' + // Hh:Mm:Ss(.ss)? + '(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?' + // Z | +5 | -03:30 + ')?$'), + resolve(str) { + const match = str.match(timestamp.test); + if (!match) + throw new Error('!!timestamp expects a date, starting with yyyy-mm-dd'); + const [, year, month, day, hour, minute, second] = match.map(Number); + const millisec = match[7] ? Number((match[7] + '00').substr(1, 3)) : 0; + let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec); + const tz = match[8]; + if (tz && tz !== 'Z') { + let d = parseSexagesimal(tz, false); + if (Math.abs(d) < 30) + d *= 60; + date -= 60000 * d; + } + return new Date(date); + }, + stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, '') ?? '' +}; + +exports.floatTime = floatTime; +exports.intTime = intTime; +exports.timestamp = timestamp; diff --git a/node_modules/yaml/dist/stringify/foldFlowLines.d.ts b/node_modules/yaml/dist/stringify/foldFlowLines.d.ts new file mode 100644 index 0000000..aac3cac --- /dev/null +++ b/node_modules/yaml/dist/stringify/foldFlowLines.d.ts @@ -0,0 +1,34 @@ +export declare const FOLD_FLOW = "flow"; +export declare const FOLD_BLOCK = "block"; +export declare const FOLD_QUOTED = "quoted"; +/** + * `'block'` prevents more-indented lines from being folded; + * `'quoted'` allows for `\` escapes, including escaped newlines + */ +export type FoldMode = 'flow' | 'block' | 'quoted'; +export interface FoldOptions { + /** + * Accounts for leading contents on the first line, defaulting to + * `indent.length` + */ + indentAtStart?: number; + /** Default: `80` */ + lineWidth?: number; + /** + * Allow highly indented lines to stretch the line width or indent content + * from the start. + * + * Default: `20` + */ + minContentWidth?: number; + /** Called once if the text is folded */ + onFold?: () => void; + /** Called once if any line of text exceeds lineWidth characters */ + onOverflow?: () => void; +} +/** + * Tries to keep input at up to `lineWidth` characters, splitting only on spaces + * not followed by newlines or spaces unless `mode` is `'quoted'`. Lines are + * terminated with `\n` and started with `indent`. + */ +export declare function foldFlowLines(text: string, indent: string, mode?: FoldMode, { indentAtStart, lineWidth, minContentWidth, onFold, onOverflow }?: FoldOptions): string; diff --git a/node_modules/yaml/dist/stringify/foldFlowLines.js b/node_modules/yaml/dist/stringify/foldFlowLines.js new file mode 100644 index 0000000..9c61058 --- /dev/null +++ b/node_modules/yaml/dist/stringify/foldFlowLines.js @@ -0,0 +1,151 @@ +'use strict'; + +const FOLD_FLOW = 'flow'; +const FOLD_BLOCK = 'block'; +const FOLD_QUOTED = 'quoted'; +/** + * Tries to keep input at up to `lineWidth` characters, splitting only on spaces + * not followed by newlines or spaces unless `mode` is `'quoted'`. Lines are + * terminated with `\n` and started with `indent`. + */ +function foldFlowLines(text, indent, mode = 'flow', { indentAtStart, lineWidth = 80, minContentWidth = 20, onFold, onOverflow } = {}) { + if (!lineWidth || lineWidth < 0) + return text; + if (lineWidth < minContentWidth) + minContentWidth = 0; + const endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length); + if (text.length <= endStep) + return text; + const folds = []; + const escapedFolds = {}; + let end = lineWidth - indent.length; + if (typeof indentAtStart === 'number') { + if (indentAtStart > lineWidth - Math.max(2, minContentWidth)) + folds.push(0); + else + end = lineWidth - indentAtStart; + } + let split = undefined; + let prev = undefined; + let overflow = false; + let i = -1; + let escStart = -1; + let escEnd = -1; + if (mode === FOLD_BLOCK) { + i = consumeMoreIndentedLines(text, i, indent.length); + if (i !== -1) + end = i + endStep; + } + for (let ch; (ch = text[(i += 1)]);) { + if (mode === FOLD_QUOTED && ch === '\\') { + escStart = i; + switch (text[i + 1]) { + case 'x': + i += 3; + break; + case 'u': + i += 5; + break; + case 'U': + i += 9; + break; + default: + i += 1; + } + escEnd = i; + } + if (ch === '\n') { + if (mode === FOLD_BLOCK) + i = consumeMoreIndentedLines(text, i, indent.length); + end = i + indent.length + endStep; + split = undefined; + } + else { + if (ch === ' ' && + prev && + prev !== ' ' && + prev !== '\n' && + prev !== '\t') { + // space surrounded by non-space can be replaced with newline + indent + const next = text[i + 1]; + if (next && next !== ' ' && next !== '\n' && next !== '\t') + split = i; + } + if (i >= end) { + if (split) { + folds.push(split); + end = split + endStep; + split = undefined; + } + else if (mode === FOLD_QUOTED) { + // white-space collected at end may stretch past lineWidth + while (prev === ' ' || prev === '\t') { + prev = ch; + ch = text[(i += 1)]; + overflow = true; + } + // Account for newline escape, but don't break preceding escape + const j = i > escEnd + 1 ? i - 2 : escStart - 1; + // Bail out if lineWidth & minContentWidth are shorter than an escape string + if (escapedFolds[j]) + return text; + folds.push(j); + escapedFolds[j] = true; + end = j + endStep; + split = undefined; + } + else { + overflow = true; + } + } + } + prev = ch; + } + if (overflow && onOverflow) + onOverflow(); + if (folds.length === 0) + return text; + if (onFold) + onFold(); + let res = text.slice(0, folds[0]); + for (let i = 0; i < folds.length; ++i) { + const fold = folds[i]; + const end = folds[i + 1] || text.length; + if (fold === 0) + res = `\n${indent}${text.slice(0, end)}`; + else { + if (mode === FOLD_QUOTED && escapedFolds[fold]) + res += `${text[fold]}\\`; + res += `\n${indent}${text.slice(fold + 1, end)}`; + } + } + return res; +} +/** + * Presumes `i + 1` is at the start of a line + * @returns index of last newline in more-indented block + */ +function consumeMoreIndentedLines(text, i, indent) { + let end = i; + let start = i + 1; + let ch = text[start]; + while (ch === ' ' || ch === '\t') { + if (i < start + indent) { + ch = text[++i]; + } + else { + do { + ch = text[++i]; + } while (ch && ch !== '\n'); + end = i; + start = i + 1; + ch = text[start]; + } + } + return end; +} + +exports.FOLD_BLOCK = FOLD_BLOCK; +exports.FOLD_FLOW = FOLD_FLOW; +exports.FOLD_QUOTED = FOLD_QUOTED; +exports.foldFlowLines = foldFlowLines; diff --git a/node_modules/yaml/dist/stringify/stringify.d.ts b/node_modules/yaml/dist/stringify/stringify.d.ts new file mode 100644 index 0000000..b693d45 --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringify.d.ts @@ -0,0 +1,21 @@ +import type { Document } from '../doc/Document'; +import type { Alias } from '../nodes/Alias'; +import type { ToStringOptions } from '../options'; +export type StringifyContext = { + actualString?: boolean; + allNullValues?: boolean; + anchors: Set; + doc: Document; + forceBlockIndent?: boolean; + implicitKey?: boolean; + indent: string; + indentStep: string; + indentAtStart?: number; + inFlow: boolean | null; + inStringifyKey?: boolean; + flowCollectionPadding: string; + options: Readonly>>; + resolvedAliases?: Set; +}; +export declare function createStringifyContext(doc: Document, options: ToStringOptions): StringifyContext; +export declare function stringify(item: unknown, ctx: StringifyContext, onComment?: () => void, onChompKeep?: () => void): string; diff --git a/node_modules/yaml/dist/stringify/stringify.js b/node_modules/yaml/dist/stringify/stringify.js new file mode 100644 index 0000000..e6cc402 --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringify.js @@ -0,0 +1,131 @@ +'use strict'; + +var anchors = require('../doc/anchors.js'); +var identity = require('../nodes/identity.js'); +var stringifyComment = require('./stringifyComment.js'); +var stringifyString = require('./stringifyString.js'); + +function createStringifyContext(doc, options) { + const opt = Object.assign({ + blockQuote: true, + commentString: stringifyComment.stringifyComment, + defaultKeyType: null, + defaultStringType: 'PLAIN', + directives: null, + doubleQuotedAsJSON: false, + doubleQuotedMinMultiLineLength: 40, + falseStr: 'false', + flowCollectionPadding: true, + indentSeq: true, + lineWidth: 80, + minContentWidth: 20, + nullStr: 'null', + simpleKeys: false, + singleQuote: null, + trueStr: 'true', + verifyAliasOrder: true + }, doc.schema.toStringOptions, options); + let inFlow; + switch (opt.collectionStyle) { + case 'block': + inFlow = false; + break; + case 'flow': + inFlow = true; + break; + default: + inFlow = null; + } + return { + anchors: new Set(), + doc, + flowCollectionPadding: opt.flowCollectionPadding ? ' ' : '', + indent: '', + indentStep: typeof opt.indent === 'number' ? ' '.repeat(opt.indent) : ' ', + inFlow, + options: opt + }; +} +function getTagObject(tags, item) { + if (item.tag) { + const match = tags.filter(t => t.tag === item.tag); + if (match.length > 0) + return match.find(t => t.format === item.format) ?? match[0]; + } + let tagObj = undefined; + let obj; + if (identity.isScalar(item)) { + obj = item.value; + let match = tags.filter(t => t.identify?.(obj)); + if (match.length > 1) { + const testMatch = match.filter(t => t.test); + if (testMatch.length > 0) + match = testMatch; + } + tagObj = + match.find(t => t.format === item.format) ?? match.find(t => !t.format); + } + else { + obj = item; + tagObj = tags.find(t => t.nodeClass && obj instanceof t.nodeClass); + } + if (!tagObj) { + const name = obj?.constructor?.name ?? (obj === null ? 'null' : typeof obj); + throw new Error(`Tag not resolved for ${name} value`); + } + return tagObj; +} +// needs to be called before value stringifier to allow for circular anchor refs +function stringifyProps(node, tagObj, { anchors: anchors$1, doc }) { + if (!doc.directives) + return ''; + const props = []; + const anchor = (identity.isScalar(node) || identity.isCollection(node)) && node.anchor; + if (anchor && anchors.anchorIsValid(anchor)) { + anchors$1.add(anchor); + props.push(`&${anchor}`); + } + const tag = node.tag ?? (tagObj.default ? null : tagObj.tag); + if (tag) + props.push(doc.directives.tagString(tag)); + return props.join(' '); +} +function stringify(item, ctx, onComment, onChompKeep) { + if (identity.isPair(item)) + return item.toString(ctx, onComment, onChompKeep); + if (identity.isAlias(item)) { + if (ctx.doc.directives) + return item.toString(ctx); + if (ctx.resolvedAliases?.has(item)) { + throw new TypeError(`Cannot stringify circular structure without alias nodes`); + } + else { + if (ctx.resolvedAliases) + ctx.resolvedAliases.add(item); + else + ctx.resolvedAliases = new Set([item]); + item = item.resolve(ctx.doc); + } + } + let tagObj = undefined; + const node = identity.isNode(item) + ? item + : ctx.doc.createNode(item, { onTagObj: o => (tagObj = o) }); + tagObj ?? (tagObj = getTagObject(ctx.doc.schema.tags, node)); + const props = stringifyProps(node, tagObj, ctx); + if (props.length > 0) + ctx.indentAtStart = (ctx.indentAtStart ?? 0) + props.length + 1; + const str = typeof tagObj.stringify === 'function' + ? tagObj.stringify(node, ctx, onComment, onChompKeep) + : identity.isScalar(node) + ? stringifyString.stringifyString(node, ctx, onComment, onChompKeep) + : node.toString(ctx, onComment, onChompKeep); + if (!props) + return str; + return identity.isScalar(node) || str[0] === '{' || str[0] === '[' + ? `${props} ${str}` + : `${props}\n${ctx.indent}${str}`; +} + +exports.createStringifyContext = createStringifyContext; +exports.stringify = stringify; diff --git a/node_modules/yaml/dist/stringify/stringifyCollection.d.ts b/node_modules/yaml/dist/stringify/stringifyCollection.d.ts new file mode 100644 index 0000000..c5e8ffa --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyCollection.d.ts @@ -0,0 +1,17 @@ +import type { Collection } from '../nodes/Collection'; +import type { StringifyContext } from './stringify'; +interface StringifyCollectionOptions { + blockItemPrefix: string; + flowChars: { + start: '{'; + end: '}'; + } | { + start: '['; + end: ']'; + }; + itemIndent: string; + onChompKeep?: () => void; + onComment?: () => void; +} +export declare function stringifyCollection(collection: Readonly, ctx: StringifyContext, options: StringifyCollectionOptions): string; +export {}; diff --git a/node_modules/yaml/dist/stringify/stringifyCollection.js b/node_modules/yaml/dist/stringify/stringifyCollection.js new file mode 100644 index 0000000..6efffc5 --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyCollection.js @@ -0,0 +1,145 @@ +'use strict'; + +var identity = require('../nodes/identity.js'); +var stringify = require('./stringify.js'); +var stringifyComment = require('./stringifyComment.js'); + +function stringifyCollection(collection, ctx, options) { + const flow = ctx.inFlow ?? collection.flow; + const stringify = flow ? stringifyFlowCollection : stringifyBlockCollection; + return stringify(collection, ctx, options); +} +function stringifyBlockCollection({ comment, items }, ctx, { blockItemPrefix, flowChars, itemIndent, onChompKeep, onComment }) { + const { indent, options: { commentString } } = ctx; + const itemCtx = Object.assign({}, ctx, { indent: itemIndent, type: null }); + let chompKeep = false; // flag for the preceding node's status + const lines = []; + for (let i = 0; i < items.length; ++i) { + const item = items[i]; + let comment = null; + if (identity.isNode(item)) { + if (!chompKeep && item.spaceBefore) + lines.push(''); + addCommentBefore(ctx, lines, item.commentBefore, chompKeep); + if (item.comment) + comment = item.comment; + } + else if (identity.isPair(item)) { + const ik = identity.isNode(item.key) ? item.key : null; + if (ik) { + if (!chompKeep && ik.spaceBefore) + lines.push(''); + addCommentBefore(ctx, lines, ik.commentBefore, chompKeep); + } + } + chompKeep = false; + let str = stringify.stringify(item, itemCtx, () => (comment = null), () => (chompKeep = true)); + if (comment) + str += stringifyComment.lineComment(str, itemIndent, commentString(comment)); + if (chompKeep && comment) + chompKeep = false; + lines.push(blockItemPrefix + str); + } + let str; + if (lines.length === 0) { + str = flowChars.start + flowChars.end; + } + else { + str = lines[0]; + for (let i = 1; i < lines.length; ++i) { + const line = lines[i]; + str += line ? `\n${indent}${line}` : '\n'; + } + } + if (comment) { + str += '\n' + stringifyComment.indentComment(commentString(comment), indent); + if (onComment) + onComment(); + } + else if (chompKeep && onChompKeep) + onChompKeep(); + return str; +} +function stringifyFlowCollection({ items }, ctx, { flowChars, itemIndent }) { + const { indent, indentStep, flowCollectionPadding: fcPadding, options: { commentString } } = ctx; + itemIndent += indentStep; + const itemCtx = Object.assign({}, ctx, { + indent: itemIndent, + inFlow: true, + type: null + }); + let reqNewline = false; + let linesAtValue = 0; + const lines = []; + for (let i = 0; i < items.length; ++i) { + const item = items[i]; + let comment = null; + if (identity.isNode(item)) { + if (item.spaceBefore) + lines.push(''); + addCommentBefore(ctx, lines, item.commentBefore, false); + if (item.comment) + comment = item.comment; + } + else if (identity.isPair(item)) { + const ik = identity.isNode(item.key) ? item.key : null; + if (ik) { + if (ik.spaceBefore) + lines.push(''); + addCommentBefore(ctx, lines, ik.commentBefore, false); + if (ik.comment) + reqNewline = true; + } + const iv = identity.isNode(item.value) ? item.value : null; + if (iv) { + if (iv.comment) + comment = iv.comment; + if (iv.commentBefore) + reqNewline = true; + } + else if (item.value == null && ik?.comment) { + comment = ik.comment; + } + } + if (comment) + reqNewline = true; + let str = stringify.stringify(item, itemCtx, () => (comment = null)); + if (i < items.length - 1) + str += ','; + if (comment) + str += stringifyComment.lineComment(str, itemIndent, commentString(comment)); + if (!reqNewline && (lines.length > linesAtValue || str.includes('\n'))) + reqNewline = true; + lines.push(str); + linesAtValue = lines.length; + } + const { start, end } = flowChars; + if (lines.length === 0) { + return start + end; + } + else { + if (!reqNewline) { + const len = lines.reduce((sum, line) => sum + line.length + 2, 2); + reqNewline = ctx.options.lineWidth > 0 && len > ctx.options.lineWidth; + } + if (reqNewline) { + let str = start; + for (const line of lines) + str += line ? `\n${indentStep}${indent}${line}` : '\n'; + return `${str}\n${indent}${end}`; + } + else { + return `${start}${fcPadding}${lines.join(' ')}${fcPadding}${end}`; + } + } +} +function addCommentBefore({ indent, options: { commentString } }, lines, comment, chompKeep) { + if (comment && chompKeep) + comment = comment.replace(/^\n+/, ''); + if (comment) { + const ic = stringifyComment.indentComment(commentString(comment), indent); + lines.push(ic.trimStart()); // Avoid double indent on first line + } +} + +exports.stringifyCollection = stringifyCollection; diff --git a/node_modules/yaml/dist/stringify/stringifyComment.d.ts b/node_modules/yaml/dist/stringify/stringifyComment.d.ts new file mode 100644 index 0000000..9fcf48d --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyComment.d.ts @@ -0,0 +1,10 @@ +/** + * Stringifies a comment. + * + * Empty comment lines are left empty, + * lines consisting of a single space are replaced by `#`, + * and all other lines are prefixed with a `#`. + */ +export declare const stringifyComment: (str: string) => string; +export declare function indentComment(comment: string, indent: string): string; +export declare const lineComment: (str: string, indent: string, comment: string) => string; diff --git a/node_modules/yaml/dist/stringify/stringifyComment.js b/node_modules/yaml/dist/stringify/stringifyComment.js new file mode 100644 index 0000000..26bf361 --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyComment.js @@ -0,0 +1,24 @@ +'use strict'; + +/** + * Stringifies a comment. + * + * Empty comment lines are left empty, + * lines consisting of a single space are replaced by `#`, + * and all other lines are prefixed with a `#`. + */ +const stringifyComment = (str) => str.replace(/^(?!$)(?: $)?/gm, '#'); +function indentComment(comment, indent) { + if (/^\n+$/.test(comment)) + return comment.substring(1); + return indent ? comment.replace(/^(?! *$)/gm, indent) : comment; +} +const lineComment = (str, indent, comment) => str.endsWith('\n') + ? indentComment(comment, indent) + : comment.includes('\n') + ? '\n' + indentComment(comment, indent) + : (str.endsWith(' ') ? '' : ' ') + comment; + +exports.indentComment = indentComment; +exports.lineComment = lineComment; +exports.stringifyComment = stringifyComment; diff --git a/node_modules/yaml/dist/stringify/stringifyDocument.d.ts b/node_modules/yaml/dist/stringify/stringifyDocument.d.ts new file mode 100644 index 0000000..6b37acc --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyDocument.d.ts @@ -0,0 +1,4 @@ +import type { Document } from '../doc/Document'; +import type { Node } from '../nodes/Node'; +import type { ToStringOptions } from '../options'; +export declare function stringifyDocument(doc: Readonly>, options: ToStringOptions): string; diff --git a/node_modules/yaml/dist/stringify/stringifyDocument.js b/node_modules/yaml/dist/stringify/stringifyDocument.js new file mode 100644 index 0000000..fb9d73c --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyDocument.js @@ -0,0 +1,87 @@ +'use strict'; + +var identity = require('../nodes/identity.js'); +var stringify = require('./stringify.js'); +var stringifyComment = require('./stringifyComment.js'); + +function stringifyDocument(doc, options) { + const lines = []; + let hasDirectives = options.directives === true; + if (options.directives !== false && doc.directives) { + const dir = doc.directives.toString(doc); + if (dir) { + lines.push(dir); + hasDirectives = true; + } + else if (doc.directives.docStart) + hasDirectives = true; + } + if (hasDirectives) + lines.push('---'); + const ctx = stringify.createStringifyContext(doc, options); + const { commentString } = ctx.options; + if (doc.commentBefore) { + if (lines.length !== 1) + lines.unshift(''); + const cs = commentString(doc.commentBefore); + lines.unshift(stringifyComment.indentComment(cs, '')); + } + let chompKeep = false; + let contentComment = null; + if (doc.contents) { + if (identity.isNode(doc.contents)) { + if (doc.contents.spaceBefore && hasDirectives) + lines.push(''); + if (doc.contents.commentBefore) { + const cs = commentString(doc.contents.commentBefore); + lines.push(stringifyComment.indentComment(cs, '')); + } + // top-level block scalars need to be indented if followed by a comment + ctx.forceBlockIndent = !!doc.comment; + contentComment = doc.contents.comment; + } + const onChompKeep = contentComment ? undefined : () => (chompKeep = true); + let body = stringify.stringify(doc.contents, ctx, () => (contentComment = null), onChompKeep); + if (contentComment) + body += stringifyComment.lineComment(body, '', commentString(contentComment)); + if ((body[0] === '|' || body[0] === '>') && + lines[lines.length - 1] === '---') { + // Top-level block scalars with a preceding doc marker ought to use the + // same line for their header. + lines[lines.length - 1] = `--- ${body}`; + } + else + lines.push(body); + } + else { + lines.push(stringify.stringify(doc.contents, ctx)); + } + if (doc.directives?.docEnd) { + if (doc.comment) { + const cs = commentString(doc.comment); + if (cs.includes('\n')) { + lines.push('...'); + lines.push(stringifyComment.indentComment(cs, '')); + } + else { + lines.push(`... ${cs}`); + } + } + else { + lines.push('...'); + } + } + else { + let dc = doc.comment; + if (dc && chompKeep) + dc = dc.replace(/^\n+/, ''); + if (dc) { + if ((!chompKeep || contentComment) && lines[lines.length - 1] !== '') + lines.push(''); + lines.push(stringifyComment.indentComment(commentString(dc), '')); + } + } + return lines.join('\n') + '\n'; +} + +exports.stringifyDocument = stringifyDocument; diff --git a/node_modules/yaml/dist/stringify/stringifyNumber.d.ts b/node_modules/yaml/dist/stringify/stringifyNumber.d.ts new file mode 100644 index 0000000..743b424 --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyNumber.d.ts @@ -0,0 +1,2 @@ +import type { Scalar } from '../nodes/Scalar'; +export declare function stringifyNumber({ format, minFractionDigits, tag, value }: Scalar): string; diff --git a/node_modules/yaml/dist/stringify/stringifyNumber.js b/node_modules/yaml/dist/stringify/stringifyNumber.js new file mode 100644 index 0000000..4118ff6 --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyNumber.js @@ -0,0 +1,26 @@ +'use strict'; + +function stringifyNumber({ format, minFractionDigits, tag, value }) { + if (typeof value === 'bigint') + return String(value); + const num = typeof value === 'number' ? value : Number(value); + if (!isFinite(num)) + return isNaN(num) ? '.nan' : num < 0 ? '-.inf' : '.inf'; + let n = JSON.stringify(value); + if (!format && + minFractionDigits && + (!tag || tag === 'tag:yaml.org,2002:float') && + /^\d/.test(n)) { + let i = n.indexOf('.'); + if (i < 0) { + i = n.length; + n += '.'; + } + let d = minFractionDigits - (n.length - i - 1); + while (d-- > 0) + n += '0'; + } + return n; +} + +exports.stringifyNumber = stringifyNumber; diff --git a/node_modules/yaml/dist/stringify/stringifyPair.d.ts b/node_modules/yaml/dist/stringify/stringifyPair.d.ts new file mode 100644 index 0000000..2126bee --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyPair.d.ts @@ -0,0 +1,3 @@ +import type { Pair } from '../nodes/Pair'; +import type { StringifyContext } from './stringify'; +export declare function stringifyPair({ key, value }: Readonly, ctx: StringifyContext, onComment?: () => void, onChompKeep?: () => void): string; diff --git a/node_modules/yaml/dist/stringify/stringifyPair.js b/node_modules/yaml/dist/stringify/stringifyPair.js new file mode 100644 index 0000000..716ea9a --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyPair.js @@ -0,0 +1,152 @@ +'use strict'; + +var identity = require('../nodes/identity.js'); +var Scalar = require('../nodes/Scalar.js'); +var stringify = require('./stringify.js'); +var stringifyComment = require('./stringifyComment.js'); + +function stringifyPair({ key, value }, ctx, onComment, onChompKeep) { + const { allNullValues, doc, indent, indentStep, options: { commentString, indentSeq, simpleKeys } } = ctx; + let keyComment = (identity.isNode(key) && key.comment) || null; + if (simpleKeys) { + if (keyComment) { + throw new Error('With simple keys, key nodes cannot have comments'); + } + if (identity.isCollection(key) || (!identity.isNode(key) && typeof key === 'object')) { + const msg = 'With simple keys, collection cannot be used as a key value'; + throw new Error(msg); + } + } + let explicitKey = !simpleKeys && + (!key || + (keyComment && value == null && !ctx.inFlow) || + identity.isCollection(key) || + (identity.isScalar(key) + ? key.type === Scalar.Scalar.BLOCK_FOLDED || key.type === Scalar.Scalar.BLOCK_LITERAL + : typeof key === 'object')); + ctx = Object.assign({}, ctx, { + allNullValues: false, + implicitKey: !explicitKey && (simpleKeys || !allNullValues), + indent: indent + indentStep + }); + let keyCommentDone = false; + let chompKeep = false; + let str = stringify.stringify(key, ctx, () => (keyCommentDone = true), () => (chompKeep = true)); + if (!explicitKey && !ctx.inFlow && str.length > 1024) { + if (simpleKeys) + throw new Error('With simple keys, single line scalar must not span more than 1024 characters'); + explicitKey = true; + } + if (ctx.inFlow) { + if (allNullValues || value == null) { + if (keyCommentDone && onComment) + onComment(); + return str === '' ? '?' : explicitKey ? `? ${str}` : str; + } + } + else if ((allNullValues && !simpleKeys) || (value == null && explicitKey)) { + str = `? ${str}`; + if (keyComment && !keyCommentDone) { + str += stringifyComment.lineComment(str, ctx.indent, commentString(keyComment)); + } + else if (chompKeep && onChompKeep) + onChompKeep(); + return str; + } + if (keyCommentDone) + keyComment = null; + if (explicitKey) { + if (keyComment) + str += stringifyComment.lineComment(str, ctx.indent, commentString(keyComment)); + str = `? ${str}\n${indent}:`; + } + else { + str = `${str}:`; + if (keyComment) + str += stringifyComment.lineComment(str, ctx.indent, commentString(keyComment)); + } + let vsb, vcb, valueComment; + if (identity.isNode(value)) { + vsb = !!value.spaceBefore; + vcb = value.commentBefore; + valueComment = value.comment; + } + else { + vsb = false; + vcb = null; + valueComment = null; + if (value && typeof value === 'object') + value = doc.createNode(value); + } + ctx.implicitKey = false; + if (!explicitKey && !keyComment && identity.isScalar(value)) + ctx.indentAtStart = str.length + 1; + chompKeep = false; + if (!indentSeq && + indentStep.length >= 2 && + !ctx.inFlow && + !explicitKey && + identity.isSeq(value) && + !value.flow && + !value.tag && + !value.anchor) { + // If indentSeq === false, consider '- ' as part of indentation where possible + ctx.indent = ctx.indent.substring(2); + } + let valueCommentDone = false; + const valueStr = stringify.stringify(value, ctx, () => (valueCommentDone = true), () => (chompKeep = true)); + let ws = ' '; + if (keyComment || vsb || vcb) { + ws = vsb ? '\n' : ''; + if (vcb) { + const cs = commentString(vcb); + ws += `\n${stringifyComment.indentComment(cs, ctx.indent)}`; + } + if (valueStr === '' && !ctx.inFlow) { + if (ws === '\n') + ws = '\n\n'; + } + else { + ws += `\n${ctx.indent}`; + } + } + else if (!explicitKey && identity.isCollection(value)) { + const vs0 = valueStr[0]; + const nl0 = valueStr.indexOf('\n'); + const hasNewline = nl0 !== -1; + const flow = ctx.inFlow ?? value.flow ?? value.items.length === 0; + if (hasNewline || !flow) { + let hasPropsLine = false; + if (hasNewline && (vs0 === '&' || vs0 === '!')) { + let sp0 = valueStr.indexOf(' '); + if (vs0 === '&' && + sp0 !== -1 && + sp0 < nl0 && + valueStr[sp0 + 1] === '!') { + sp0 = valueStr.indexOf(' ', sp0 + 1); + } + if (sp0 === -1 || nl0 < sp0) + hasPropsLine = true; + } + if (!hasPropsLine) + ws = `\n${ctx.indent}`; + } + } + else if (valueStr === '' || valueStr[0] === '\n') { + ws = ''; + } + str += ws + valueStr; + if (ctx.inFlow) { + if (valueCommentDone && onComment) + onComment(); + } + else if (valueComment && !valueCommentDone) { + str += stringifyComment.lineComment(str, ctx.indent, commentString(valueComment)); + } + else if (chompKeep && onChompKeep) { + onChompKeep(); + } + return str; +} + +exports.stringifyPair = stringifyPair; diff --git a/node_modules/yaml/dist/stringify/stringifyString.d.ts b/node_modules/yaml/dist/stringify/stringifyString.d.ts new file mode 100644 index 0000000..df10930 --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyString.d.ts @@ -0,0 +1,9 @@ +import { Scalar } from '../nodes/Scalar'; +import type { StringifyContext } from './stringify'; +interface StringifyScalar { + value: string; + comment?: string | null; + type?: string; +} +export declare function stringifyString(item: Scalar | StringifyScalar, ctx: StringifyContext, onComment?: () => void, onChompKeep?: () => void): string; +export {}; diff --git a/node_modules/yaml/dist/stringify/stringifyString.js b/node_modules/yaml/dist/stringify/stringifyString.js new file mode 100644 index 0000000..2caadc6 --- /dev/null +++ b/node_modules/yaml/dist/stringify/stringifyString.js @@ -0,0 +1,338 @@ +'use strict'; + +var Scalar = require('../nodes/Scalar.js'); +var foldFlowLines = require('./foldFlowLines.js'); + +const getFoldOptions = (ctx, isBlock) => ({ + indentAtStart: isBlock ? ctx.indent.length : ctx.indentAtStart, + lineWidth: ctx.options.lineWidth, + minContentWidth: ctx.options.minContentWidth +}); +// Also checks for lines starting with %, as parsing the output as YAML 1.1 will +// presume that's starting a new document. +const containsDocumentMarker = (str) => /^(%|---|\.\.\.)/m.test(str); +function lineLengthOverLimit(str, lineWidth, indentLength) { + if (!lineWidth || lineWidth < 0) + return false; + const limit = lineWidth - indentLength; + const strLen = str.length; + if (strLen <= limit) + return false; + for (let i = 0, start = 0; i < strLen; ++i) { + if (str[i] === '\n') { + if (i - start > limit) + return true; + start = i + 1; + if (strLen - start <= limit) + return false; + } + } + return true; +} +function doubleQuotedString(value, ctx) { + const json = JSON.stringify(value); + if (ctx.options.doubleQuotedAsJSON) + return json; + const { implicitKey } = ctx; + const minMultiLineLength = ctx.options.doubleQuotedMinMultiLineLength; + const indent = ctx.indent || (containsDocumentMarker(value) ? ' ' : ''); + let str = ''; + let start = 0; + for (let i = 0, ch = json[i]; ch; ch = json[++i]) { + if (ch === ' ' && json[i + 1] === '\\' && json[i + 2] === 'n') { + // space before newline needs to be escaped to not be folded + str += json.slice(start, i) + '\\ '; + i += 1; + start = i; + ch = '\\'; + } + if (ch === '\\') + switch (json[i + 1]) { + case 'u': + { + str += json.slice(start, i); + const code = json.substr(i + 2, 4); + switch (code) { + case '0000': + str += '\\0'; + break; + case '0007': + str += '\\a'; + break; + case '000b': + str += '\\v'; + break; + case '001b': + str += '\\e'; + break; + case '0085': + str += '\\N'; + break; + case '00a0': + str += '\\_'; + break; + case '2028': + str += '\\L'; + break; + case '2029': + str += '\\P'; + break; + default: + if (code.substr(0, 2) === '00') + str += '\\x' + code.substr(2); + else + str += json.substr(i, 6); + } + i += 5; + start = i + 1; + } + break; + case 'n': + if (implicitKey || + json[i + 2] === '"' || + json.length < minMultiLineLength) { + i += 1; + } + else { + // folding will eat first newline + str += json.slice(start, i) + '\n\n'; + while (json[i + 2] === '\\' && + json[i + 3] === 'n' && + json[i + 4] !== '"') { + str += '\n'; + i += 2; + } + str += indent; + // space after newline needs to be escaped to not be folded + if (json[i + 2] === ' ') + str += '\\'; + i += 1; + start = i + 1; + } + break; + default: + i += 1; + } + } + str = start ? str + json.slice(start) : json; + return implicitKey + ? str + : foldFlowLines.foldFlowLines(str, indent, foldFlowLines.FOLD_QUOTED, getFoldOptions(ctx, false)); +} +function singleQuotedString(value, ctx) { + if (ctx.options.singleQuote === false || + (ctx.implicitKey && value.includes('\n')) || + /[ \t]\n|\n[ \t]/.test(value) // single quoted string can't have leading or trailing whitespace around newline + ) + return doubleQuotedString(value, ctx); + const indent = ctx.indent || (containsDocumentMarker(value) ? ' ' : ''); + const res = "'" + value.replace(/'/g, "''").replace(/\n+/g, `$&\n${indent}`) + "'"; + return ctx.implicitKey + ? res + : foldFlowLines.foldFlowLines(res, indent, foldFlowLines.FOLD_FLOW, getFoldOptions(ctx, false)); +} +function quotedString(value, ctx) { + const { singleQuote } = ctx.options; + let qs; + if (singleQuote === false) + qs = doubleQuotedString; + else { + const hasDouble = value.includes('"'); + const hasSingle = value.includes("'"); + if (hasDouble && !hasSingle) + qs = singleQuotedString; + else if (hasSingle && !hasDouble) + qs = doubleQuotedString; + else + qs = singleQuote ? singleQuotedString : doubleQuotedString; + } + return qs(value, ctx); +} +// The negative lookbehind avoids a polynomial search, +// but isn't supported yet on Safari: https://caniuse.com/js-regexp-lookbehind +let blockEndNewlines; +try { + blockEndNewlines = new RegExp('(^|(?\n'; + // determine chomping from whitespace at value end + let chomp; + let endStart; + for (endStart = value.length; endStart > 0; --endStart) { + const ch = value[endStart - 1]; + if (ch !== '\n' && ch !== '\t' && ch !== ' ') + break; + } + let end = value.substring(endStart); + const endNlPos = end.indexOf('\n'); + if (endNlPos === -1) { + chomp = '-'; // strip + } + else if (value === end || endNlPos !== end.length - 1) { + chomp = '+'; // keep + if (onChompKeep) + onChompKeep(); + } + else { + chomp = ''; // clip + } + if (end) { + value = value.slice(0, -end.length); + if (end[end.length - 1] === '\n') + end = end.slice(0, -1); + end = end.replace(blockEndNewlines, `$&${indent}`); + } + // determine indent indicator from whitespace at value start + let startWithSpace = false; + let startEnd; + let startNlPos = -1; + for (startEnd = 0; startEnd < value.length; ++startEnd) { + const ch = value[startEnd]; + if (ch === ' ') + startWithSpace = true; + else if (ch === '\n') + startNlPos = startEnd; + else + break; + } + let start = value.substring(0, startNlPos < startEnd ? startNlPos + 1 : startEnd); + if (start) { + value = value.substring(start.length); + start = start.replace(/\n+/g, `$&${indent}`); + } + const indentSize = indent ? '2' : '1'; // root is at -1 + // Leading | or > is added later + let header = (startWithSpace ? indentSize : '') + chomp; + if (comment) { + header += ' ' + commentString(comment.replace(/ ?[\r\n]+/g, ' ')); + if (onComment) + onComment(); + } + if (!literal) { + const foldedValue = value + .replace(/\n+/g, '\n$&') + .replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, '$1$2') // more-indented lines aren't folded + // ^ more-ind. ^ empty ^ capture next empty lines only at end of indent + .replace(/\n+/g, `$&${indent}`); + let literalFallback = false; + const foldOptions = getFoldOptions(ctx, true); + if (blockQuote !== 'folded' && type !== Scalar.Scalar.BLOCK_FOLDED) { + foldOptions.onOverflow = () => { + literalFallback = true; + }; + } + const body = foldFlowLines.foldFlowLines(`${start}${foldedValue}${end}`, indent, foldFlowLines.FOLD_BLOCK, foldOptions); + if (!literalFallback) + return `>${header}\n${indent}${body}`; + } + value = value.replace(/\n+/g, `$&${indent}`); + return `|${header}\n${indent}${start}${value}${end}`; +} +function plainString(item, ctx, onComment, onChompKeep) { + const { type, value } = item; + const { actualString, implicitKey, indent, indentStep, inFlow } = ctx; + if ((implicitKey && value.includes('\n')) || + (inFlow && /[[\]{},]/.test(value))) { + return quotedString(value, ctx); + } + if (/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) { + // not allowed: + // - '-' or '?' + // - start with an indicator character (except [?:-]) or /[?-] / + // - '\n ', ': ' or ' \n' anywhere + // - '#' not preceded by a non-space char + // - end with ' ' or ':' + return implicitKey || inFlow || !value.includes('\n') + ? quotedString(value, ctx) + : blockString(item, ctx, onComment, onChompKeep); + } + if (!implicitKey && + !inFlow && + type !== Scalar.Scalar.PLAIN && + value.includes('\n')) { + // Where allowed & type not set explicitly, prefer block style for multiline strings + return blockString(item, ctx, onComment, onChompKeep); + } + if (containsDocumentMarker(value)) { + if (indent === '') { + ctx.forceBlockIndent = true; + return blockString(item, ctx, onComment, onChompKeep); + } + else if (implicitKey && indent === indentStep) { + return quotedString(value, ctx); + } + } + const str = value.replace(/\n+/g, `$&\n${indent}`); + // Verify that output will be parsed as a string, as e.g. plain numbers and + // booleans get parsed with those types in v1.2 (e.g. '42', 'true' & '0.9e-3'), + // and others in v1.1. + if (actualString) { + const test = (tag) => tag.default && tag.tag !== 'tag:yaml.org,2002:str' && tag.test?.test(str); + const { compat, tags } = ctx.doc.schema; + if (tags.some(test) || compat?.some(test)) + return quotedString(value, ctx); + } + return implicitKey + ? str + : foldFlowLines.foldFlowLines(str, indent, foldFlowLines.FOLD_FLOW, getFoldOptions(ctx, false)); +} +function stringifyString(item, ctx, onComment, onChompKeep) { + const { implicitKey, inFlow } = ctx; + const ss = typeof item.value === 'string' + ? item + : Object.assign({}, item, { value: String(item.value) }); + let { type } = item; + if (type !== Scalar.Scalar.QUOTE_DOUBLE) { + // force double quotes on control characters & unpaired surrogates + if (/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(ss.value)) + type = Scalar.Scalar.QUOTE_DOUBLE; + } + const _stringify = (_type) => { + switch (_type) { + case Scalar.Scalar.BLOCK_FOLDED: + case Scalar.Scalar.BLOCK_LITERAL: + return implicitKey || inFlow + ? quotedString(ss.value, ctx) // blocks are not valid inside flow containers + : blockString(ss, ctx, onComment, onChompKeep); + case Scalar.Scalar.QUOTE_DOUBLE: + return doubleQuotedString(ss.value, ctx); + case Scalar.Scalar.QUOTE_SINGLE: + return singleQuotedString(ss.value, ctx); + case Scalar.Scalar.PLAIN: + return plainString(ss, ctx, onComment, onChompKeep); + default: + return null; + } + }; + let res = _stringify(type); + if (res === null) { + const { defaultKeyType, defaultStringType } = ctx.options; + const t = (implicitKey && defaultKeyType) || defaultStringType; + res = _stringify(t); + if (res === null) + throw new Error(`Unsupported default string type ${t}`); + } + return res; +} + +exports.stringifyString = stringifyString; diff --git a/node_modules/yaml/dist/test-events.d.ts b/node_modules/yaml/dist/test-events.d.ts new file mode 100644 index 0000000..d1a2348 --- /dev/null +++ b/node_modules/yaml/dist/test-events.d.ts @@ -0,0 +1,4 @@ +export declare function testEvents(src: string): { + events: string[]; + error: unknown; +}; diff --git a/node_modules/yaml/dist/test-events.js b/node_modules/yaml/dist/test-events.js new file mode 100644 index 0000000..f38d336 --- /dev/null +++ b/node_modules/yaml/dist/test-events.js @@ -0,0 +1,134 @@ +'use strict'; + +var identity = require('./nodes/identity.js'); +var publicApi = require('./public-api.js'); +var visit = require('./visit.js'); + +const scalarChar = { + BLOCK_FOLDED: '>', + BLOCK_LITERAL: '|', + PLAIN: ':', + QUOTE_DOUBLE: '"', + QUOTE_SINGLE: "'" +}; +function anchorExists(doc, anchor) { + let found = false; + visit.visit(doc, { + Value(_key, node) { + if (node.anchor === anchor) { + found = true; + return visit.visit.BREAK; + } + } + }); + return found; +} +// test harness for yaml-test-suite event tests +function testEvents(src) { + const docs = publicApi.parseAllDocuments(src); + const errDoc = docs.find(doc => doc.errors.length > 0); + const error = errDoc ? errDoc.errors[0].message : null; + const events = ['+STR']; + try { + for (let i = 0; i < docs.length; ++i) { + const doc = docs[i]; + let root = doc.contents; + if (Array.isArray(root)) + root = root[0]; + const [rootStart] = doc.range || [0]; + const error = doc.errors[0]; + if (error && (!error.pos || error.pos[0] < rootStart)) + throw new Error(); + let docStart = '+DOC'; + if (doc.directives.docStart) + docStart += ' ---'; + else if (doc.contents && + doc.contents.range[2] === doc.contents.range[0] && + !doc.contents.anchor && + !doc.contents.tag) + continue; + events.push(docStart); + addEvents(events, doc, error?.pos[0] ?? -1, root); + let docEnd = '-DOC'; + if (doc.directives.docEnd) + docEnd += ' ...'; + events.push(docEnd); + } + } + catch (e) { + return { events, error: error ?? e }; + } + events.push('-STR'); + return { events, error }; +} +function addEvents(events, doc, errPos, node) { + if (!node) { + events.push('=VAL :'); + return; + } + if (errPos !== -1 && identity.isNode(node) && node.range[0] >= errPos) + throw new Error(); + let props = ''; + let anchor = identity.isScalar(node) || identity.isCollection(node) ? node.anchor : undefined; + if (anchor) { + if (/\d$/.test(anchor)) { + const alt = anchor.replace(/\d$/, ''); + if (anchorExists(doc, alt)) + anchor = alt; + } + props = ` &${anchor}`; + } + if (identity.isNode(node) && node.tag) + props += ` <${node.tag}>`; + if (identity.isMap(node)) { + const ev = node.flow ? '+MAP {}' : '+MAP'; + events.push(`${ev}${props}`); + node.items.forEach(({ key, value }) => { + addEvents(events, doc, errPos, key); + addEvents(events, doc, errPos, value); + }); + events.push('-MAP'); + } + else if (identity.isSeq(node)) { + const ev = node.flow ? '+SEQ []' : '+SEQ'; + events.push(`${ev}${props}`); + node.items.forEach(item => { + addEvents(events, doc, errPos, item); + }); + events.push('-SEQ'); + } + else if (identity.isPair(node)) { + events.push(`+MAP${props}`); + addEvents(events, doc, errPos, node.key); + addEvents(events, doc, errPos, node.value); + events.push('-MAP'); + } + else if (identity.isAlias(node)) { + let alias = node.source; + if (alias && /\d$/.test(alias)) { + const alt = alias.replace(/\d$/, ''); + if (anchorExists(doc, alt)) + alias = alt; + } + events.push(`=ALI${props} *${alias}`); + } + else { + const scalar = scalarChar[String(node.type)]; + if (!scalar) + throw new Error(`Unexpected node type ${node.type}`); + const value = node.source + .replace(/\\/g, '\\\\') + .replace(/\0/g, '\\0') + .replace(/\x07/g, '\\a') + .replace(/\x08/g, '\\b') + .replace(/\t/g, '\\t') + .replace(/\n/g, '\\n') + .replace(/\v/g, '\\v') + .replace(/\f/g, '\\f') + .replace(/\r/g, '\\r') + .replace(/\x1b/g, '\\e'); + events.push(`=VAL${props} ${scalar}${value}`); + } +} + +exports.testEvents = testEvents; diff --git a/node_modules/yaml/dist/util.d.ts b/node_modules/yaml/dist/util.d.ts new file mode 100644 index 0000000..176130e --- /dev/null +++ b/node_modules/yaml/dist/util.d.ts @@ -0,0 +1,16 @@ +export { createNode } from './doc/createNode'; +export type { CreateNodeContext } from './doc/createNode'; +export { debug, warn } from './log'; +export type { LogLevelId } from './log'; +export { createPair } from './nodes/Pair'; +export { toJS } from './nodes/toJS'; +export type { ToJSContext } from './nodes/toJS'; +export { findPair } from './nodes/YAMLMap'; +export { map as mapTag } from './schema/common/map'; +export { seq as seqTag } from './schema/common/seq'; +export { string as stringTag } from './schema/common/string'; +export { foldFlowLines } from './stringify/foldFlowLines'; +export type { FoldOptions } from './stringify/foldFlowLines'; +export type { StringifyContext } from './stringify/stringify'; +export { stringifyNumber } from './stringify/stringifyNumber'; +export { stringifyString } from './stringify/stringifyString'; diff --git a/node_modules/yaml/dist/util.js b/node_modules/yaml/dist/util.js new file mode 100644 index 0000000..ae3c4ab --- /dev/null +++ b/node_modules/yaml/dist/util.js @@ -0,0 +1,28 @@ +'use strict'; + +var createNode = require('./doc/createNode.js'); +var log = require('./log.js'); +var Pair = require('./nodes/Pair.js'); +var toJS = require('./nodes/toJS.js'); +var YAMLMap = require('./nodes/YAMLMap.js'); +var map = require('./schema/common/map.js'); +var seq = require('./schema/common/seq.js'); +var string = require('./schema/common/string.js'); +var foldFlowLines = require('./stringify/foldFlowLines.js'); +var stringifyNumber = require('./stringify/stringifyNumber.js'); +var stringifyString = require('./stringify/stringifyString.js'); + + + +exports.createNode = createNode.createNode; +exports.debug = log.debug; +exports.warn = log.warn; +exports.createPair = Pair.createPair; +exports.toJS = toJS.toJS; +exports.findPair = YAMLMap.findPair; +exports.mapTag = map.map; +exports.seqTag = seq.seq; +exports.stringTag = string.string; +exports.foldFlowLines = foldFlowLines.foldFlowLines; +exports.stringifyNumber = stringifyNumber.stringifyNumber; +exports.stringifyString = stringifyString.stringifyString; diff --git a/node_modules/yaml/dist/visit.d.ts b/node_modules/yaml/dist/visit.d.ts new file mode 100644 index 0000000..8af3631 --- /dev/null +++ b/node_modules/yaml/dist/visit.d.ts @@ -0,0 +1,102 @@ +import type { Document } from './doc/Document'; +import type { Alias } from './nodes/Alias'; +import type { Node } from './nodes/Node'; +import type { Pair } from './nodes/Pair'; +import type { Scalar } from './nodes/Scalar'; +import type { YAMLMap } from './nodes/YAMLMap'; +import type { YAMLSeq } from './nodes/YAMLSeq'; +export type visitorFn = (key: number | 'key' | 'value' | null, node: T, path: readonly (Document | Node | Pair)[]) => void | symbol | number | Node | Pair; +export type visitor = visitorFn | { + Alias?: visitorFn; + Collection?: visitorFn; + Map?: visitorFn; + Node?: visitorFn; + Pair?: visitorFn; + Scalar?: visitorFn; + Seq?: visitorFn; + Value?: visitorFn; +}; +export type asyncVisitorFn = (key: number | 'key' | 'value' | null, node: T, path: readonly (Document | Node | Pair)[]) => void | symbol | number | Node | Pair | Promise; +export type asyncVisitor = asyncVisitorFn | { + Alias?: asyncVisitorFn; + Collection?: asyncVisitorFn; + Map?: asyncVisitorFn; + Node?: asyncVisitorFn; + Pair?: asyncVisitorFn; + Scalar?: asyncVisitorFn; + Seq?: asyncVisitorFn; + Value?: asyncVisitorFn; +}; +/** + * Apply a visitor to an AST node or document. + * + * Walks through the tree (depth-first) starting from `node`, calling a + * `visitor` function with three arguments: + * - `key`: For sequence values and map `Pair`, the node's index in the + * collection. Within a `Pair`, `'key'` or `'value'`, correspondingly. + * `null` for the root node. + * - `node`: The current node. + * - `path`: The ancestry of the current node. + * + * The return value of the visitor may be used to control the traversal: + * - `undefined` (default): Do nothing and continue + * - `visit.SKIP`: Do not visit the children of this node, continue with next + * sibling + * - `visit.BREAK`: Terminate traversal completely + * - `visit.REMOVE`: Remove the current node, then continue with the next one + * - `Node`: Replace the current node, then continue by visiting it + * - `number`: While iterating the items of a sequence or map, set the index + * of the next step. This is useful especially if the index of the current + * node has changed. + * + * If `visitor` is a single function, it will be called with all values + * encountered in the tree, including e.g. `null` values. Alternatively, + * separate visitor functions may be defined for each `Map`, `Pair`, `Seq`, + * `Alias` and `Scalar` node. To define the same visitor function for more than + * one node type, use the `Collection` (map and seq), `Value` (map, seq & scalar) + * and `Node` (alias, map, seq & scalar) targets. Of all these, only the most + * specific defined one will be used for each node. + */ +export declare function visit(node: Node | Document | null, visitor: visitor): void; +export declare namespace visit { + var BREAK: symbol; + var SKIP: symbol; + var REMOVE: symbol; +} +/** + * Apply an async visitor to an AST node or document. + * + * Walks through the tree (depth-first) starting from `node`, calling a + * `visitor` function with three arguments: + * - `key`: For sequence values and map `Pair`, the node's index in the + * collection. Within a `Pair`, `'key'` or `'value'`, correspondingly. + * `null` for the root node. + * - `node`: The current node. + * - `path`: The ancestry of the current node. + * + * The return value of the visitor may be used to control the traversal: + * - `Promise`: Must resolve to one of the following values + * - `undefined` (default): Do nothing and continue + * - `visit.SKIP`: Do not visit the children of this node, continue with next + * sibling + * - `visit.BREAK`: Terminate traversal completely + * - `visit.REMOVE`: Remove the current node, then continue with the next one + * - `Node`: Replace the current node, then continue by visiting it + * - `number`: While iterating the items of a sequence or map, set the index + * of the next step. This is useful especially if the index of the current + * node has changed. + * + * If `visitor` is a single function, it will be called with all values + * encountered in the tree, including e.g. `null` values. Alternatively, + * separate visitor functions may be defined for each `Map`, `Pair`, `Seq`, + * `Alias` and `Scalar` node. To define the same visitor function for more than + * one node type, use the `Collection` (map and seq), `Value` (map, seq & scalar) + * and `Node` (alias, map, seq & scalar) targets. Of all these, only the most + * specific defined one will be used for each node. + */ +export declare function visitAsync(node: Node | Document | null, visitor: asyncVisitor): Promise; +export declare namespace visitAsync { + var BREAK: symbol; + var SKIP: symbol; + var REMOVE: symbol; +} diff --git a/node_modules/yaml/dist/visit.js b/node_modules/yaml/dist/visit.js new file mode 100644 index 0000000..f126e54 --- /dev/null +++ b/node_modules/yaml/dist/visit.js @@ -0,0 +1,236 @@ +'use strict'; + +var identity = require('./nodes/identity.js'); + +const BREAK = Symbol('break visit'); +const SKIP = Symbol('skip children'); +const REMOVE = Symbol('remove node'); +/** + * Apply a visitor to an AST node or document. + * + * Walks through the tree (depth-first) starting from `node`, calling a + * `visitor` function with three arguments: + * - `key`: For sequence values and map `Pair`, the node's index in the + * collection. Within a `Pair`, `'key'` or `'value'`, correspondingly. + * `null` for the root node. + * - `node`: The current node. + * - `path`: The ancestry of the current node. + * + * The return value of the visitor may be used to control the traversal: + * - `undefined` (default): Do nothing and continue + * - `visit.SKIP`: Do not visit the children of this node, continue with next + * sibling + * - `visit.BREAK`: Terminate traversal completely + * - `visit.REMOVE`: Remove the current node, then continue with the next one + * - `Node`: Replace the current node, then continue by visiting it + * - `number`: While iterating the items of a sequence or map, set the index + * of the next step. This is useful especially if the index of the current + * node has changed. + * + * If `visitor` is a single function, it will be called with all values + * encountered in the tree, including e.g. `null` values. Alternatively, + * separate visitor functions may be defined for each `Map`, `Pair`, `Seq`, + * `Alias` and `Scalar` node. To define the same visitor function for more than + * one node type, use the `Collection` (map and seq), `Value` (map, seq & scalar) + * and `Node` (alias, map, seq & scalar) targets. Of all these, only the most + * specific defined one will be used for each node. + */ +function visit(node, visitor) { + const visitor_ = initVisitor(visitor); + if (identity.isDocument(node)) { + const cd = visit_(null, node.contents, visitor_, Object.freeze([node])); + if (cd === REMOVE) + node.contents = null; + } + else + visit_(null, node, visitor_, Object.freeze([])); +} +// Without the `as symbol` casts, TS declares these in the `visit` +// namespace using `var`, but then complains about that because +// `unique symbol` must be `const`. +/** Terminate visit traversal completely */ +visit.BREAK = BREAK; +/** Do not visit the children of the current node */ +visit.SKIP = SKIP; +/** Remove the current node */ +visit.REMOVE = REMOVE; +function visit_(key, node, visitor, path) { + const ctrl = callVisitor(key, node, visitor, path); + if (identity.isNode(ctrl) || identity.isPair(ctrl)) { + replaceNode(key, path, ctrl); + return visit_(key, ctrl, visitor, path); + } + if (typeof ctrl !== 'symbol') { + if (identity.isCollection(node)) { + path = Object.freeze(path.concat(node)); + for (let i = 0; i < node.items.length; ++i) { + const ci = visit_(i, node.items[i], visitor, path); + if (typeof ci === 'number') + i = ci - 1; + else if (ci === BREAK) + return BREAK; + else if (ci === REMOVE) { + node.items.splice(i, 1); + i -= 1; + } + } + } + else if (identity.isPair(node)) { + path = Object.freeze(path.concat(node)); + const ck = visit_('key', node.key, visitor, path); + if (ck === BREAK) + return BREAK; + else if (ck === REMOVE) + node.key = null; + const cv = visit_('value', node.value, visitor, path); + if (cv === BREAK) + return BREAK; + else if (cv === REMOVE) + node.value = null; + } + } + return ctrl; +} +/** + * Apply an async visitor to an AST node or document. + * + * Walks through the tree (depth-first) starting from `node`, calling a + * `visitor` function with three arguments: + * - `key`: For sequence values and map `Pair`, the node's index in the + * collection. Within a `Pair`, `'key'` or `'value'`, correspondingly. + * `null` for the root node. + * - `node`: The current node. + * - `path`: The ancestry of the current node. + * + * The return value of the visitor may be used to control the traversal: + * - `Promise`: Must resolve to one of the following values + * - `undefined` (default): Do nothing and continue + * - `visit.SKIP`: Do not visit the children of this node, continue with next + * sibling + * - `visit.BREAK`: Terminate traversal completely + * - `visit.REMOVE`: Remove the current node, then continue with the next one + * - `Node`: Replace the current node, then continue by visiting it + * - `number`: While iterating the items of a sequence or map, set the index + * of the next step. This is useful especially if the index of the current + * node has changed. + * + * If `visitor` is a single function, it will be called with all values + * encountered in the tree, including e.g. `null` values. Alternatively, + * separate visitor functions may be defined for each `Map`, `Pair`, `Seq`, + * `Alias` and `Scalar` node. To define the same visitor function for more than + * one node type, use the `Collection` (map and seq), `Value` (map, seq & scalar) + * and `Node` (alias, map, seq & scalar) targets. Of all these, only the most + * specific defined one will be used for each node. + */ +async function visitAsync(node, visitor) { + const visitor_ = initVisitor(visitor); + if (identity.isDocument(node)) { + const cd = await visitAsync_(null, node.contents, visitor_, Object.freeze([node])); + if (cd === REMOVE) + node.contents = null; + } + else + await visitAsync_(null, node, visitor_, Object.freeze([])); +} +// Without the `as symbol` casts, TS declares these in the `visit` +// namespace using `var`, but then complains about that because +// `unique symbol` must be `const`. +/** Terminate visit traversal completely */ +visitAsync.BREAK = BREAK; +/** Do not visit the children of the current node */ +visitAsync.SKIP = SKIP; +/** Remove the current node */ +visitAsync.REMOVE = REMOVE; +async function visitAsync_(key, node, visitor, path) { + const ctrl = await callVisitor(key, node, visitor, path); + if (identity.isNode(ctrl) || identity.isPair(ctrl)) { + replaceNode(key, path, ctrl); + return visitAsync_(key, ctrl, visitor, path); + } + if (typeof ctrl !== 'symbol') { + if (identity.isCollection(node)) { + path = Object.freeze(path.concat(node)); + for (let i = 0; i < node.items.length; ++i) { + const ci = await visitAsync_(i, node.items[i], visitor, path); + if (typeof ci === 'number') + i = ci - 1; + else if (ci === BREAK) + return BREAK; + else if (ci === REMOVE) { + node.items.splice(i, 1); + i -= 1; + } + } + } + else if (identity.isPair(node)) { + path = Object.freeze(path.concat(node)); + const ck = await visitAsync_('key', node.key, visitor, path); + if (ck === BREAK) + return BREAK; + else if (ck === REMOVE) + node.key = null; + const cv = await visitAsync_('value', node.value, visitor, path); + if (cv === BREAK) + return BREAK; + else if (cv === REMOVE) + node.value = null; + } + } + return ctrl; +} +function initVisitor(visitor) { + if (typeof visitor === 'object' && + (visitor.Collection || visitor.Node || visitor.Value)) { + return Object.assign({ + Alias: visitor.Node, + Map: visitor.Node, + Scalar: visitor.Node, + Seq: visitor.Node + }, visitor.Value && { + Map: visitor.Value, + Scalar: visitor.Value, + Seq: visitor.Value + }, visitor.Collection && { + Map: visitor.Collection, + Seq: visitor.Collection + }, visitor); + } + return visitor; +} +function callVisitor(key, node, visitor, path) { + if (typeof visitor === 'function') + return visitor(key, node, path); + if (identity.isMap(node)) + return visitor.Map?.(key, node, path); + if (identity.isSeq(node)) + return visitor.Seq?.(key, node, path); + if (identity.isPair(node)) + return visitor.Pair?.(key, node, path); + if (identity.isScalar(node)) + return visitor.Scalar?.(key, node, path); + if (identity.isAlias(node)) + return visitor.Alias?.(key, node, path); + return undefined; +} +function replaceNode(key, path, node) { + const parent = path[path.length - 1]; + if (identity.isCollection(parent)) { + parent.items[key] = node; + } + else if (identity.isPair(parent)) { + if (key === 'key') + parent.key = node; + else + parent.value = node; + } + else if (identity.isDocument(parent)) { + parent.contents = node; + } + else { + const pt = identity.isAlias(parent) ? 'alias' : 'scalar'; + throw new Error(`Cannot replace node with ${pt} parent`); + } +} + +exports.visit = visit; +exports.visitAsync = visitAsync; diff --git a/node_modules/yaml/package.json b/node_modules/yaml/package.json new file mode 100644 index 0000000..1c43f12 --- /dev/null +++ b/node_modules/yaml/package.json @@ -0,0 +1,97 @@ +{ + "name": "yaml", + "version": "2.8.1", + "license": "ISC", + "author": "Eemeli Aro ", + "repository": "github:eemeli/yaml", + "description": "JavaScript parser and stringifier for YAML", + "keywords": [ + "YAML", + "parser", + "stringifier" + ], + "homepage": "https://eemeli.org/yaml/", + "files": [ + "browser/", + "dist/", + "util.js" + ], + "type": "commonjs", + "main": "./dist/index.js", + "bin": "./bin.mjs", + "browser": { + "./dist/index.js": "./browser/index.js", + "./dist/util.js": "./browser/dist/util.js", + "./util.js": "./browser/dist/util.js" + }, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "node": "./dist/index.js", + "default": "./browser/index.js" + }, + "./package.json": "./package.json", + "./util": { + "types": "./dist/util.d.ts", + "node": "./dist/util.js", + "default": "./browser/dist/util.js" + } + }, + "scripts": { + "build": "npm run build:node && npm run build:browser", + "build:browser": "rollup -c config/rollup.browser-config.mjs", + "build:node": "rollup -c config/rollup.node-config.mjs", + "clean": "git clean -fdxe node_modules", + "lint": "eslint config/ src/", + "prettier": "prettier --write .", + "prestart": "rollup --sourcemap -c config/rollup.node-config.mjs", + "start": "node --enable-source-maps -i -e 'YAML=require(\"./dist/index.js\");const{parse,parseDocument,parseAllDocuments}=YAML'", + "test": "jest --config config/jest.config.js", + "test:all": "npm test && npm run test:types && npm run test:dist && npm run test:dist:types", + "test:browsers": "cd playground && npm test", + "test:dist": "npm run build:node && jest --config config/jest.config.js", + "test:dist:types": "tsc --allowJs --moduleResolution node --noEmit --target es5 dist/index.js", + "test:types": "tsc --noEmit && tsc --noEmit -p tests/tsconfig.json", + "docs:install": "cd docs-slate && bundle install", + "predocs:deploy": "node docs/prepare-docs.mjs", + "docs:deploy": "cd docs-slate && ./deploy.sh", + "predocs": "node docs/prepare-docs.mjs", + "docs": "cd docs-slate && bundle exec middleman server", + "preversion": "npm test && npm run build", + "prepublishOnly": "npm run clean && npm test && npm run build" + }, + "browserslist": "defaults, not ie 11", + "prettier": { + "arrowParens": "avoid", + "semi": false, + "singleQuote": true, + "trailingComma": "none" + }, + "devDependencies": { + "@babel/core": "^7.12.10", + "@babel/plugin-transform-typescript": "^7.12.17", + "@babel/preset-env": "^7.12.11", + "@eslint/js": "^9.9.1", + "@rollup/plugin-babel": "^6.0.3", + "@rollup/plugin-replace": "^5.0.2", + "@rollup/plugin-typescript": "^12.1.1", + "@types/jest": "^29.2.4", + "@types/node": "^20.11.20", + "babel-jest": "^29.0.1", + "cross-env": "^7.0.3", + "eslint": "^9.9.1", + "eslint-config-prettier": "^9.0.0", + "fast-check": "^2.12.0", + "jest": "^29.0.1", + "jest-resolve": "^29.7.0", + "jest-ts-webcompat-resolver": "^1.0.0", + "prettier": "^3.0.2", + "rollup": "^4.12.0", + "tslib": "^2.8.1", + "typescript": "^5.7.2", + "typescript-eslint": "^8.4.0" + }, + "engines": { + "node": ">= 14.6" + } +} diff --git a/node_modules/yaml/util.js b/node_modules/yaml/util.js new file mode 100644 index 0000000..070103f --- /dev/null +++ b/node_modules/yaml/util.js @@ -0,0 +1,2 @@ +// Re-exporter for Node.js < 12.16.0 +module.exports = require('./dist/util.js') diff --git a/node_modules/yargs-parser/CHANGELOG.md b/node_modules/yargs-parser/CHANGELOG.md new file mode 100644 index 0000000..584eb86 --- /dev/null +++ b/node_modules/yargs-parser/CHANGELOG.md @@ -0,0 +1,308 @@ +# Changelog + +All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. + +## [21.1.1](https://github.com/yargs/yargs-parser/compare/yargs-parser-v21.1.0...yargs-parser-v21.1.1) (2022-08-04) + + +### Bug Fixes + +* **typescript:** ignore .cts files during publish ([#454](https://github.com/yargs/yargs-parser/issues/454)) ([d69f9c3](https://github.com/yargs/yargs-parser/commit/d69f9c3a91c3ad2f9494d0a94e29a8b76c41b81b)), closes [#452](https://github.com/yargs/yargs-parser/issues/452) + +## [21.1.0](https://github.com/yargs/yargs-parser/compare/yargs-parser-v21.0.1...yargs-parser-v21.1.0) (2022-08-03) + + +### Features + +* allow the browser build to be imported ([#443](https://github.com/yargs/yargs-parser/issues/443)) ([a89259f](https://github.com/yargs/yargs-parser/commit/a89259ff41d6f5312b3ce8a30bef343a993f395a)) + + +### Bug Fixes + +* **halt-at-non-option:** prevent known args from being parsed when "unknown-options-as-args" is enabled ([#438](https://github.com/yargs/yargs-parser/issues/438)) ([c474bc1](https://github.com/yargs/yargs-parser/commit/c474bc10c3aa0ae864b95e5722730114ef15f573)) +* node version check now uses process.versions.node ([#450](https://github.com/yargs/yargs-parser/issues/450)) ([d07bcdb](https://github.com/yargs/yargs-parser/commit/d07bcdbe43075f7201fbe8a08e491217247fe1f1)) +* parse options ending with 3+ hyphens ([#434](https://github.com/yargs/yargs-parser/issues/434)) ([4f1060b](https://github.com/yargs/yargs-parser/commit/4f1060b50759fadbac3315c5117b0c3d65b0a7d8)) + +### [21.0.1](https://github.com/yargs/yargs-parser/compare/yargs-parser-v21.0.0...yargs-parser-v21.0.1) (2022-02-27) + + +### Bug Fixes + +* return deno env object ([#432](https://github.com/yargs/yargs-parser/issues/432)) ([b00eb87](https://github.com/yargs/yargs-parser/commit/b00eb87b4860a890dd2dab0d6058241bbfd2b3ec)) + +## [21.0.0](https://www.github.com/yargs/yargs-parser/compare/yargs-parser-v20.2.9...yargs-parser-v21.0.0) (2021-11-15) + + +### ⚠ BREAKING CHANGES + +* drops support for 10 (#421) + +### Bug Fixes + +* esm json import ([#416](https://www.github.com/yargs/yargs-parser/issues/416)) ([90f970a](https://www.github.com/yargs/yargs-parser/commit/90f970a6482dd4f5b5eb18d38596dd6f02d73edf)) +* parser should preserve inner quotes ([#407](https://www.github.com/yargs/yargs-parser/issues/407)) ([ae11f49](https://www.github.com/yargs/yargs-parser/commit/ae11f496a8318ea8885aa25015d429b33713c314)) + + +### Code Refactoring + +* drops support for 10 ([#421](https://www.github.com/yargs/yargs-parser/issues/421)) ([3aaf878](https://www.github.com/yargs/yargs-parser/commit/3aaf8784f5c7f2aec6108c1c6a55537fa7e3b5c1)) + +### [20.2.9](https://www.github.com/yargs/yargs-parser/compare/yargs-parser-v20.2.8...yargs-parser-v20.2.9) (2021-06-20) + + +### Bug Fixes + +* **build:** fixed automated release pipeline ([1fe9135](https://www.github.com/yargs/yargs-parser/commit/1fe9135884790a083615419b2861683e2597dac3)) + +### [20.2.8](https://www.github.com/yargs/yargs-parser/compare/yargs-parser-v20.2.7...yargs-parser-v20.2.8) (2021-06-20) + + +### Bug Fixes + +* **locale:** Turkish camelize and decamelize issues with toLocaleLowerCase/toLocaleUpperCase ([2617303](https://www.github.com/yargs/yargs-parser/commit/261730383e02448562f737b94bbd1f164aed5143)) +* **perf:** address slow parse when using unknown-options-as-args ([#394](https://www.github.com/yargs/yargs-parser/issues/394)) ([441f059](https://www.github.com/yargs/yargs-parser/commit/441f059d585d446551068ad213db79ac91daf83a)) +* **string-utils:** detect [0,1] ranged values as numbers ([#388](https://www.github.com/yargs/yargs-parser/issues/388)) ([efcc32c](https://www.github.com/yargs/yargs-parser/commit/efcc32c2d6b09aba31abfa2db9bd947befe5586b)) + +### [20.2.7](https://www.github.com/yargs/yargs-parser/compare/v20.2.6...v20.2.7) (2021-03-10) + + +### Bug Fixes + +* **deno:** force release for Deno ([6687c97](https://www.github.com/yargs/yargs-parser/commit/6687c972d0f3ca7865a97908dde3080b05f8b026)) + +### [20.2.6](https://www.github.com/yargs/yargs-parser/compare/v20.2.5...v20.2.6) (2021-02-22) + + +### Bug Fixes + +* **populate--:** -- should always be array ([#354](https://www.github.com/yargs/yargs-parser/issues/354)) ([585ae8f](https://www.github.com/yargs/yargs-parser/commit/585ae8ffad74cc02974f92d788e750137fd65146)) + +### [20.2.5](https://www.github.com/yargs/yargs-parser/compare/v20.2.4...v20.2.5) (2021-02-13) + + +### Bug Fixes + +* do not lowercase camel cased string ([#348](https://www.github.com/yargs/yargs-parser/issues/348)) ([5f4da1f](https://www.github.com/yargs/yargs-parser/commit/5f4da1f17d9d50542d2aaa206c9806ce3e320335)) + +### [20.2.4](https://www.github.com/yargs/yargs-parser/compare/v20.2.3...v20.2.4) (2020-11-09) + + +### Bug Fixes + +* **deno:** address import issues in Deno ([#339](https://www.github.com/yargs/yargs-parser/issues/339)) ([3b54e5e](https://www.github.com/yargs/yargs-parser/commit/3b54e5eef6e9a7b7c6eec7c12bab3ba3b8ba8306)) + +### [20.2.3](https://www.github.com/yargs/yargs-parser/compare/v20.2.2...v20.2.3) (2020-10-16) + + +### Bug Fixes + +* **exports:** node 13.0 and 13.1 require the dotted object form _with_ a string fallback ([#336](https://www.github.com/yargs/yargs-parser/issues/336)) ([3ae7242](https://www.github.com/yargs/yargs-parser/commit/3ae7242040ff876d28dabded60ac226e00150c88)) + +### [20.2.2](https://www.github.com/yargs/yargs-parser/compare/v20.2.1...v20.2.2) (2020-10-14) + + +### Bug Fixes + +* **exports:** node 13.0-13.6 require a string fallback ([#333](https://www.github.com/yargs/yargs-parser/issues/333)) ([291aeda](https://www.github.com/yargs/yargs-parser/commit/291aeda06b685b7a015d83bdf2558e180b37388d)) + +### [20.2.1](https://www.github.com/yargs/yargs-parser/compare/v20.2.0...v20.2.1) (2020-10-01) + + +### Bug Fixes + +* **deno:** update types for deno ^1.4.0 ([#330](https://www.github.com/yargs/yargs-parser/issues/330)) ([0ab92e5](https://www.github.com/yargs/yargs-parser/commit/0ab92e50b090f11196334c048c9c92cecaddaf56)) + +## [20.2.0](https://www.github.com/yargs/yargs-parser/compare/v20.1.0...v20.2.0) (2020-09-21) + + +### Features + +* **string-utils:** export looksLikeNumber helper ([#324](https://www.github.com/yargs/yargs-parser/issues/324)) ([c8580a2](https://www.github.com/yargs/yargs-parser/commit/c8580a2327b55f6342acecb6e72b62963d506750)) + + +### Bug Fixes + +* **unknown-options-as-args:** convert positionals that look like numbers ([#326](https://www.github.com/yargs/yargs-parser/issues/326)) ([f85ebb4](https://www.github.com/yargs/yargs-parser/commit/f85ebb4face9d4b0f56147659404cbe0002f3dad)) + +## [20.1.0](https://www.github.com/yargs/yargs-parser/compare/v20.0.0...v20.1.0) (2020-09-20) + + +### Features + +* adds parse-positional-numbers configuration ([#321](https://www.github.com/yargs/yargs-parser/issues/321)) ([9cec00a](https://www.github.com/yargs/yargs-parser/commit/9cec00a622251292ffb7dce6f78f5353afaa0d4c)) + + +### Bug Fixes + +* **build:** update release-please; make labels kick off builds ([#323](https://www.github.com/yargs/yargs-parser/issues/323)) ([09f448b](https://www.github.com/yargs/yargs-parser/commit/09f448b4cd66e25d2872544718df46dab8af062a)) + +## [20.0.0](https://www.github.com/yargs/yargs-parser/compare/v19.0.4...v20.0.0) (2020-09-09) + + +### ⚠ BREAKING CHANGES + +* do not ship type definitions (#318) + +### Bug Fixes + +* only strip camel case if hyphenated ([#316](https://www.github.com/yargs/yargs-parser/issues/316)) ([95a9e78](https://www.github.com/yargs/yargs-parser/commit/95a9e785127b9bbf2d1db1f1f808ca1fb100e82a)), closes [#315](https://www.github.com/yargs/yargs-parser/issues/315) + + +### Code Refactoring + +* do not ship type definitions ([#318](https://www.github.com/yargs/yargs-parser/issues/318)) ([8fbd56f](https://www.github.com/yargs/yargs-parser/commit/8fbd56f1d0b6c44c30fca62708812151ca0ce330)) + +### [19.0.4](https://www.github.com/yargs/yargs-parser/compare/v19.0.3...v19.0.4) (2020-08-27) + + +### Bug Fixes + +* **build:** fixing publication ([#310](https://www.github.com/yargs/yargs-parser/issues/310)) ([5d3c6c2](https://www.github.com/yargs/yargs-parser/commit/5d3c6c29a9126248ba601920d9cf87c78e161ff5)) + +### [19.0.3](https://www.github.com/yargs/yargs-parser/compare/v19.0.2...v19.0.3) (2020-08-27) + + +### Bug Fixes + +* **build:** switch to action for publish ([#308](https://www.github.com/yargs/yargs-parser/issues/308)) ([5c2f305](https://www.github.com/yargs/yargs-parser/commit/5c2f30585342bcd8aaf926407c863099d256d174)) + +### [19.0.2](https://www.github.com/yargs/yargs-parser/compare/v19.0.1...v19.0.2) (2020-08-27) + + +### Bug Fixes + +* **types:** envPrefix should be optional ([#305](https://www.github.com/yargs/yargs-parser/issues/305)) ([ae3f180](https://www.github.com/yargs/yargs-parser/commit/ae3f180e14df2de2fd962145f4518f9aa0e76523)) + +### [19.0.1](https://www.github.com/yargs/yargs-parser/compare/v19.0.0...v19.0.1) (2020-08-09) + + +### Bug Fixes + +* **build:** push tag created for deno ([2186a14](https://www.github.com/yargs/yargs-parser/commit/2186a14989749887d56189867602e39e6679f8b0)) + +## [19.0.0](https://www.github.com/yargs/yargs-parser/compare/v18.1.3...v19.0.0) (2020-08-09) + + +### ⚠ BREAKING CHANGES + +* adds support for ESM and Deno (#295) +* **ts:** projects using `@types/yargs-parser` may see variations in type definitions. +* drops Node 6. begin following Node.js LTS schedule (#278) + +### Features + +* adds support for ESM and Deno ([#295](https://www.github.com/yargs/yargs-parser/issues/295)) ([195bc4a](https://www.github.com/yargs/yargs-parser/commit/195bc4a7f20c2a8f8e33fbb6ba96ef6e9a0120a1)) +* expose camelCase and decamelize helpers ([#296](https://www.github.com/yargs/yargs-parser/issues/296)) ([39154ce](https://www.github.com/yargs/yargs-parser/commit/39154ceb5bdcf76b5f59a9219b34cedb79b67f26)) +* **deps:** update to latest camelcase/decamelize ([#281](https://www.github.com/yargs/yargs-parser/issues/281)) ([8931ab0](https://www.github.com/yargs/yargs-parser/commit/8931ab08f686cc55286f33a95a83537da2be5516)) + + +### Bug Fixes + +* boolean numeric short option ([#294](https://www.github.com/yargs/yargs-parser/issues/294)) ([f600082](https://www.github.com/yargs/yargs-parser/commit/f600082c959e092076caf420bbbc9d7a231e2418)) +* raise permission error for Deno if config load fails ([#298](https://www.github.com/yargs/yargs-parser/issues/298)) ([1174e2b](https://www.github.com/yargs/yargs-parser/commit/1174e2b3f0c845a1cd64e14ffc3703e730567a84)) +* **deps:** update dependency decamelize to v3 ([#274](https://www.github.com/yargs/yargs-parser/issues/274)) ([4d98698](https://www.github.com/yargs/yargs-parser/commit/4d98698bc6767e84ec54a0842908191739be73b7)) +* **types:** switch back to using Partial types ([#293](https://www.github.com/yargs/yargs-parser/issues/293)) ([bdc80ba](https://www.github.com/yargs/yargs-parser/commit/bdc80ba59fa13bc3025ce0a85e8bad9f9da24ea7)) + + +### Build System + +* drops Node 6. begin following Node.js LTS schedule ([#278](https://www.github.com/yargs/yargs-parser/issues/278)) ([9014ed7](https://www.github.com/yargs/yargs-parser/commit/9014ed722a32768b96b829e65a31705db5c1458a)) + + +### Code Refactoring + +* **ts:** move index.js to TypeScript ([#292](https://www.github.com/yargs/yargs-parser/issues/292)) ([f78d2b9](https://www.github.com/yargs/yargs-parser/commit/f78d2b97567ac4828624406e420b4047c710b789)) + +### [18.1.3](https://www.github.com/yargs/yargs-parser/compare/v18.1.2...v18.1.3) (2020-04-16) + + +### Bug Fixes + +* **setArg:** options using camel-case and dot-notation populated twice ([#268](https://www.github.com/yargs/yargs-parser/issues/268)) ([f7e15b9](https://www.github.com/yargs/yargs-parser/commit/f7e15b9800900b9856acac1a830a5f35847be73e)) + +### [18.1.2](https://www.github.com/yargs/yargs-parser/compare/v18.1.1...v18.1.2) (2020-03-26) + + +### Bug Fixes + +* **array, nargs:** support -o=--value and --option=--value format ([#262](https://www.github.com/yargs/yargs-parser/issues/262)) ([41d3f81](https://www.github.com/yargs/yargs-parser/commit/41d3f8139e116706b28de9b0de3433feb08d2f13)) + +### [18.1.1](https://www.github.com/yargs/yargs-parser/compare/v18.1.0...v18.1.1) (2020-03-16) + + +### Bug Fixes + +* \_\_proto\_\_ will now be replaced with \_\_\_proto\_\_\_ in parse ([#258](https://www.github.com/yargs/yargs-parser/issues/258)), patching a potential +prototype pollution vulnerability. This was reported by the Snyk Security Research Team.([63810ca](https://www.github.com/yargs/yargs-parser/commit/63810ca1ae1a24b08293a4d971e70e058c7a41e2)) + +## [18.1.0](https://www.github.com/yargs/yargs-parser/compare/v18.0.0...v18.1.0) (2020-03-07) + + +### Features + +* introduce single-digit boolean aliases ([#255](https://www.github.com/yargs/yargs-parser/issues/255)) ([9c60265](https://www.github.com/yargs/yargs-parser/commit/9c60265fd7a03cb98e6df3e32c8c5e7508d9f56f)) + +## [18.0.0](https://www.github.com/yargs/yargs-parser/compare/v17.1.0...v18.0.0) (2020-03-02) + + +### ⚠ BREAKING CHANGES + +* the narg count is now enforced when parsing arrays. + +### Features + +* NaN can now be provided as a value for nargs, indicating "at least" one value is expected for array ([#251](https://www.github.com/yargs/yargs-parser/issues/251)) ([9db4be8](https://www.github.com/yargs/yargs-parser/commit/9db4be81417a2c7097128db34d86fe70ef4af70c)) + +## [17.1.0](https://www.github.com/yargs/yargs-parser/compare/v17.0.1...v17.1.0) (2020-03-01) + + +### Features + +* introduce greedy-arrays config, for specifying whether arrays consume multiple positionals ([#249](https://www.github.com/yargs/yargs-parser/issues/249)) ([60e880a](https://www.github.com/yargs/yargs-parser/commit/60e880a837046314d89fa4725f923837fd33a9eb)) + +### [17.0.1](https://www.github.com/yargs/yargs-parser/compare/v17.0.0...v17.0.1) (2020-02-29) + + +### Bug Fixes + +* normalized keys were not enumerable ([#247](https://www.github.com/yargs/yargs-parser/issues/247)) ([57119f9](https://www.github.com/yargs/yargs-parser/commit/57119f9f17cf27499bd95e61c2f72d18314f11ba)) + +## [17.0.0](https://www.github.com/yargs/yargs-parser/compare/v16.1.0...v17.0.0) (2020-02-10) + + +### ⚠ BREAKING CHANGES + +* this reverts parsing behavior of booleans to that of yargs@14 +* objects used during parsing are now created with a null +prototype. There may be some scenarios where this change in behavior +leaks externally. + +### Features + +* boolean arguments will not be collected into an implicit array ([#236](https://www.github.com/yargs/yargs-parser/issues/236)) ([34c4e19](https://www.github.com/yargs/yargs-parser/commit/34c4e19bae4e7af63e3cb6fa654a97ed476e5eb5)) +* introduce nargs-eats-options config option ([#246](https://www.github.com/yargs/yargs-parser/issues/246)) ([d50822a](https://www.github.com/yargs/yargs-parser/commit/d50822ac10e1b05f2e9643671ca131ac251b6732)) + + +### Bug Fixes + +* address bugs with "uknown-options-as-args" ([bc023e3](https://www.github.com/yargs/yargs-parser/commit/bc023e3b13e20a118353f9507d1c999bf388a346)) +* array should take precedence over nargs, but enforce nargs ([#243](https://www.github.com/yargs/yargs-parser/issues/243)) ([4cbc188](https://www.github.com/yargs/yargs-parser/commit/4cbc188b7abb2249529a19c090338debdad2fe6c)) +* support keys that collide with object prototypes ([#234](https://www.github.com/yargs/yargs-parser/issues/234)) ([1587b6d](https://www.github.com/yargs/yargs-parser/commit/1587b6d91db853a9109f1be6b209077993fee4de)) +* unknown options terminated with digits now handled by unknown-options-as-args ([#238](https://www.github.com/yargs/yargs-parser/issues/238)) ([d36cdfa](https://www.github.com/yargs/yargs-parser/commit/d36cdfa854254d7c7e0fe1d583818332ac46c2a5)) + +## [16.1.0](https://www.github.com/yargs/yargs-parser/compare/v16.0.0...v16.1.0) (2019-11-01) + + +### ⚠ BREAKING CHANGES + +* populate error if incompatible narg/count or array/count options are used (#191) + +### Features + +* options that have had their default value used are now tracked ([#211](https://www.github.com/yargs/yargs-parser/issues/211)) ([a525234](https://www.github.com/yargs/yargs-parser/commit/a525234558c847deedd73f8792e0a3b77b26e2c0)) +* populate error if incompatible narg/count or array/count options are used ([#191](https://www.github.com/yargs/yargs-parser/issues/191)) ([84a401f](https://www.github.com/yargs/yargs-parser/commit/84a401f0fa3095e0a19661670d1570d0c3b9d3c9)) + + +### Reverts + +* revert 16.0.0 CHANGELOG entry ([920320a](https://www.github.com/yargs/yargs-parser/commit/920320ad9861bbfd58eda39221ae211540fc1daf)) diff --git a/node_modules/yargs-parser/LICENSE.txt b/node_modules/yargs-parser/LICENSE.txt new file mode 100644 index 0000000..836440b --- /dev/null +++ b/node_modules/yargs-parser/LICENSE.txt @@ -0,0 +1,14 @@ +Copyright (c) 2016, Contributors + +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. diff --git a/node_modules/yargs-parser/README.md b/node_modules/yargs-parser/README.md new file mode 100644 index 0000000..2614840 --- /dev/null +++ b/node_modules/yargs-parser/README.md @@ -0,0 +1,518 @@ +# yargs-parser + +![ci](https://github.com/yargs/yargs-parser/workflows/ci/badge.svg) +[![NPM version](https://img.shields.io/npm/v/yargs-parser.svg)](https://www.npmjs.com/package/yargs-parser) +[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg)](https://conventionalcommits.org) +![nycrc config on GitHub](https://img.shields.io/nycrc/yargs/yargs-parser) + +The mighty option parser used by [yargs](https://github.com/yargs/yargs). + +visit the [yargs website](http://yargs.js.org/) for more examples, and thorough usage instructions. + + + +## Example + +```sh +npm i yargs-parser --save +``` + +```js +const argv = require('yargs-parser')(process.argv.slice(2)) +console.log(argv) +``` + +```console +$ node example.js --foo=33 --bar hello +{ _: [], foo: 33, bar: 'hello' } +``` + +_or parse a string!_ + +```js +const argv = require('yargs-parser')('--foo=99 --bar=33') +console.log(argv) +``` + +```console +{ _: [], foo: 99, bar: 33 } +``` + +Convert an array of mixed types before passing to `yargs-parser`: + +```js +const parse = require('yargs-parser') +parse(['-f', 11, '--zoom', 55].join(' ')) // <-- array to string +parse(['-f', 11, '--zoom', 55].map(String)) // <-- array of strings +``` + +## Deno Example + +As of `v19` `yargs-parser` supports [Deno](https://github.com/denoland/deno): + +```typescript +import parser from "https://deno.land/x/yargs_parser/deno.ts"; + +const argv = parser('--foo=99 --bar=9987930', { + string: ['bar'] +}) +console.log(argv) +``` + +## ESM Example + +As of `v19` `yargs-parser` supports ESM (_both in Node.js and in the browser_): + +**Node.js:** + +```js +import parser from 'yargs-parser' + +const argv = parser('--foo=99 --bar=9987930', { + string: ['bar'] +}) +console.log(argv) +``` + +**Browsers:** + +```html + + + + +``` + +## API + +### parser(args, opts={}) + +Parses command line arguments returning a simple mapping of keys and values. + +**expects:** + +* `args`: a string or array of strings representing the options to parse. +* `opts`: provide a set of hints indicating how `args` should be parsed: + * `opts.alias`: an object representing the set of aliases for a key: `{alias: {foo: ['f']}}`. + * `opts.array`: indicate that keys should be parsed as an array: `{array: ['foo', 'bar']}`.
+ Indicate that keys should be parsed as an array and coerced to booleans / numbers:
+ `{array: [{ key: 'foo', boolean: true }, {key: 'bar', number: true}]}`. + * `opts.boolean`: arguments should be parsed as booleans: `{boolean: ['x', 'y']}`. + * `opts.coerce`: provide a custom synchronous function that returns a coerced value from the argument provided + (or throws an error). For arrays the function is called only once for the entire array:
+ `{coerce: {foo: function (arg) {return modifiedArg}}}`. + * `opts.config`: indicate a key that represents a path to a configuration file (this file will be loaded and parsed). + * `opts.configObjects`: configuration objects to parse, their properties will be set as arguments:
+ `{configObjects: [{'x': 5, 'y': 33}, {'z': 44}]}`. + * `opts.configuration`: provide configuration options to the yargs-parser (see: [configuration](#configuration)). + * `opts.count`: indicate a key that should be used as a counter, e.g., `-vvv` = `{v: 3}`. + * `opts.default`: provide default values for keys: `{default: {x: 33, y: 'hello world!'}}`. + * `opts.envPrefix`: environment variables (`process.env`) with the prefix provided should be parsed. + * `opts.narg`: specify that a key requires `n` arguments: `{narg: {x: 2}}`. + * `opts.normalize`: `path.normalize()` will be applied to values set to this key. + * `opts.number`: keys should be treated as numbers. + * `opts.string`: keys should be treated as strings (even if they resemble a number `-x 33`). + +**returns:** + +* `obj`: an object representing the parsed value of `args` + * `key/value`: key value pairs for each argument and their aliases. + * `_`: an array representing the positional arguments. + * [optional] `--`: an array with arguments after the end-of-options flag `--`. + +### require('yargs-parser').detailed(args, opts={}) + +Parses a command line string, returning detailed information required by the +yargs engine. + +**expects:** + +* `args`: a string or array of strings representing options to parse. +* `opts`: provide a set of hints indicating how `args`, inputs are identical to `require('yargs-parser')(args, opts={})`. + +**returns:** + +* `argv`: an object representing the parsed value of `args` + * `key/value`: key value pairs for each argument and their aliases. + * `_`: an array representing the positional arguments. + * [optional] `--`: an array with arguments after the end-of-options flag `--`. +* `error`: populated with an error object if an exception occurred during parsing. +* `aliases`: the inferred list of aliases built by combining lists in `opts.alias`. +* `newAliases`: any new aliases added via camel-case expansion: + * `boolean`: `{ fooBar: true }` +* `defaulted`: any new argument created by `opts.default`, no aliases included. + * `boolean`: `{ foo: true }` +* `configuration`: given by default settings and `opts.configuration`. + + + +### Configuration + +The yargs-parser applies several automated transformations on the keys provided +in `args`. These features can be turned on and off using the `configuration` field +of `opts`. + +```js +var parsed = parser(['--no-dice'], { + configuration: { + 'boolean-negation': false + } +}) +``` + +### short option groups + +* default: `true`. +* key: `short-option-groups`. + +Should a group of short-options be treated as boolean flags? + +```console +$ node example.js -abc +{ _: [], a: true, b: true, c: true } +``` + +_if disabled:_ + +```console +$ node example.js -abc +{ _: [], abc: true } +``` + +### camel-case expansion + +* default: `true`. +* key: `camel-case-expansion`. + +Should hyphenated arguments be expanded into camel-case aliases? + +```console +$ node example.js --foo-bar +{ _: [], 'foo-bar': true, fooBar: true } +``` + +_if disabled:_ + +```console +$ node example.js --foo-bar +{ _: [], 'foo-bar': true } +``` + +### dot-notation + +* default: `true` +* key: `dot-notation` + +Should keys that contain `.` be treated as objects? + +```console +$ node example.js --foo.bar +{ _: [], foo: { bar: true } } +``` + +_if disabled:_ + +```console +$ node example.js --foo.bar +{ _: [], "foo.bar": true } +``` + +### parse numbers + +* default: `true` +* key: `parse-numbers` + +Should keys that look like numbers be treated as such? + +```console +$ node example.js --foo=99.3 +{ _: [], foo: 99.3 } +``` + +_if disabled:_ + +```console +$ node example.js --foo=99.3 +{ _: [], foo: "99.3" } +``` + +### parse positional numbers + +* default: `true` +* key: `parse-positional-numbers` + +Should positional keys that look like numbers be treated as such. + +```console +$ node example.js 99.3 +{ _: [99.3] } +``` + +_if disabled:_ + +```console +$ node example.js 99.3 +{ _: ['99.3'] } +``` + +### boolean negation + +* default: `true` +* key: `boolean-negation` + +Should variables prefixed with `--no` be treated as negations? + +```console +$ node example.js --no-foo +{ _: [], foo: false } +``` + +_if disabled:_ + +```console +$ node example.js --no-foo +{ _: [], "no-foo": true } +``` + +### combine arrays + +* default: `false` +* key: `combine-arrays` + +Should arrays be combined when provided by both command line arguments and +a configuration file. + +### duplicate arguments array + +* default: `true` +* key: `duplicate-arguments-array` + +Should arguments be coerced into an array when duplicated: + +```console +$ node example.js -x 1 -x 2 +{ _: [], x: [1, 2] } +``` + +_if disabled:_ + +```console +$ node example.js -x 1 -x 2 +{ _: [], x: 2 } +``` + +### flatten duplicate arrays + +* default: `true` +* key: `flatten-duplicate-arrays` + +Should array arguments be coerced into a single array when duplicated: + +```console +$ node example.js -x 1 2 -x 3 4 +{ _: [], x: [1, 2, 3, 4] } +``` + +_if disabled:_ + +```console +$ node example.js -x 1 2 -x 3 4 +{ _: [], x: [[1, 2], [3, 4]] } +``` + +### greedy arrays + +* default: `true` +* key: `greedy-arrays` + +Should arrays consume more than one positional argument following their flag. + +```console +$ node example --arr 1 2 +{ _: [], arr: [1, 2] } +``` + +_if disabled:_ + +```console +$ node example --arr 1 2 +{ _: [2], arr: [1] } +``` + +**Note: in `v18.0.0` we are considering defaulting greedy arrays to `false`.** + +### nargs eats options + +* default: `false` +* key: `nargs-eats-options` + +Should nargs consume dash options as well as positional arguments. + +### negation prefix + +* default: `no-` +* key: `negation-prefix` + +The prefix to use for negated boolean variables. + +```console +$ node example.js --no-foo +{ _: [], foo: false } +``` + +_if set to `quux`:_ + +```console +$ node example.js --quuxfoo +{ _: [], foo: false } +``` + +### populate -- + +* default: `false`. +* key: `populate--` + +Should unparsed flags be stored in `--` or `_`. + +_If disabled:_ + +```console +$ node example.js a -b -- x y +{ _: [ 'a', 'x', 'y' ], b: true } +``` + +_If enabled:_ + +```console +$ node example.js a -b -- x y +{ _: [ 'a' ], '--': [ 'x', 'y' ], b: true } +``` + +### set placeholder key + +* default: `false`. +* key: `set-placeholder-key`. + +Should a placeholder be added for keys not set via the corresponding CLI argument? + +_If disabled:_ + +```console +$ node example.js -a 1 -c 2 +{ _: [], a: 1, c: 2 } +``` + +_If enabled:_ + +```console +$ node example.js -a 1 -c 2 +{ _: [], a: 1, b: undefined, c: 2 } +``` + +### halt at non-option + +* default: `false`. +* key: `halt-at-non-option`. + +Should parsing stop at the first positional argument? This is similar to how e.g. `ssh` parses its command line. + +_If disabled:_ + +```console +$ node example.js -a run b -x y +{ _: [ 'b' ], a: 'run', x: 'y' } +``` + +_If enabled:_ + +```console +$ node example.js -a run b -x y +{ _: [ 'b', '-x', 'y' ], a: 'run' } +``` + +### strip aliased + +* default: `false` +* key: `strip-aliased` + +Should aliases be removed before returning results? + +_If disabled:_ + +```console +$ node example.js --test-field 1 +{ _: [], 'test-field': 1, testField: 1, 'test-alias': 1, testAlias: 1 } +``` + +_If enabled:_ + +```console +$ node example.js --test-field 1 +{ _: [], 'test-field': 1, testField: 1 } +``` + +### strip dashed + +* default: `false` +* key: `strip-dashed` + +Should dashed keys be removed before returning results? This option has no effect if +`camel-case-expansion` is disabled. + +_If disabled:_ + +```console +$ node example.js --test-field 1 +{ _: [], 'test-field': 1, testField: 1 } +``` + +_If enabled:_ + +```console +$ node example.js --test-field 1 +{ _: [], testField: 1 } +``` + +### unknown options as args + +* default: `false` +* key: `unknown-options-as-args` + +Should unknown options be treated like regular arguments? An unknown option is one that is not +configured in `opts`. + +_If disabled_ + +```console +$ node example.js --unknown-option --known-option 2 --string-option --unknown-option2 +{ _: [], unknownOption: true, knownOption: 2, stringOption: '', unknownOption2: true } +``` + +_If enabled_ + +```console +$ node example.js --unknown-option --known-option 2 --string-option --unknown-option2 +{ _: ['--unknown-option'], knownOption: 2, stringOption: '--unknown-option2' } +``` + +## Supported Node.js Versions + +Libraries in this ecosystem make a best effort to track +[Node.js' release schedule](https://nodejs.org/en/about/releases/). Here's [a +post on why we think this is important](https://medium.com/the-node-js-collection/maintainers-should-consider-following-node-js-release-schedule-ab08ed4de71a). + +## Special Thanks + +The yargs project evolves from optimist and minimist. It owes its +existence to a lot of James Halliday's hard work. Thanks [substack](https://github.com/substack) **beep** **boop** \o/ + +## License + +ISC diff --git a/node_modules/yargs-parser/browser.js b/node_modules/yargs-parser/browser.js new file mode 100644 index 0000000..241202c --- /dev/null +++ b/node_modules/yargs-parser/browser.js @@ -0,0 +1,29 @@ +// Main entrypoint for ESM web browser environments. Avoids using Node.js +// specific libraries, such as "path". +// +// TODO: figure out reasonable web equivalents for "resolve", "normalize", etc. +import { camelCase, decamelize, looksLikeNumber } from './build/lib/string-utils.js' +import { YargsParser } from './build/lib/yargs-parser.js' +const parser = new YargsParser({ + cwd: () => { return '' }, + format: (str, arg) => { return str.replace('%s', arg) }, + normalize: (str) => { return str }, + resolve: (str) => { return str }, + require: () => { + throw Error('loading config from files not currently supported in browser') + }, + env: () => {} +}) + +const yargsParser = function Parser (args, opts) { + const result = parser.parse(args.slice(), opts) + return result.argv +} +yargsParser.detailed = function (args, opts) { + return parser.parse(args.slice(), opts) +} +yargsParser.camelCase = camelCase +yargsParser.decamelize = decamelize +yargsParser.looksLikeNumber = looksLikeNumber + +export default yargsParser diff --git a/node_modules/yargs-parser/build/index.cjs b/node_modules/yargs-parser/build/index.cjs new file mode 100644 index 0000000..cf6f50f --- /dev/null +++ b/node_modules/yargs-parser/build/index.cjs @@ -0,0 +1,1050 @@ +'use strict'; + +var util = require('util'); +var path = require('path'); +var fs = require('fs'); + +function camelCase(str) { + const isCamelCase = str !== str.toLowerCase() && str !== str.toUpperCase(); + if (!isCamelCase) { + str = str.toLowerCase(); + } + if (str.indexOf('-') === -1 && str.indexOf('_') === -1) { + return str; + } + else { + let camelcase = ''; + let nextChrUpper = false; + const leadingHyphens = str.match(/^-+/); + for (let i = leadingHyphens ? leadingHyphens[0].length : 0; i < str.length; i++) { + let chr = str.charAt(i); + if (nextChrUpper) { + nextChrUpper = false; + chr = chr.toUpperCase(); + } + if (i !== 0 && (chr === '-' || chr === '_')) { + nextChrUpper = true; + } + else if (chr !== '-' && chr !== '_') { + camelcase += chr; + } + } + return camelcase; + } +} +function decamelize(str, joinString) { + const lowercase = str.toLowerCase(); + joinString = joinString || '-'; + let notCamelcase = ''; + for (let i = 0; i < str.length; i++) { + const chrLower = lowercase.charAt(i); + const chrString = str.charAt(i); + if (chrLower !== chrString && i > 0) { + notCamelcase += `${joinString}${lowercase.charAt(i)}`; + } + else { + notCamelcase += chrString; + } + } + return notCamelcase; +} +function looksLikeNumber(x) { + if (x === null || x === undefined) + return false; + if (typeof x === 'number') + return true; + if (/^0x[0-9a-f]+$/i.test(x)) + return true; + if (/^0[^.]/.test(x)) + return false; + return /^[-]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x); +} + +function tokenizeArgString(argString) { + if (Array.isArray(argString)) { + return argString.map(e => typeof e !== 'string' ? e + '' : e); + } + argString = argString.trim(); + let i = 0; + let prevC = null; + let c = null; + let opening = null; + const args = []; + for (let ii = 0; ii < argString.length; ii++) { + prevC = c; + c = argString.charAt(ii); + if (c === ' ' && !opening) { + if (!(prevC === ' ')) { + i++; + } + continue; + } + if (c === opening) { + opening = null; + } + else if ((c === "'" || c === '"') && !opening) { + opening = c; + } + if (!args[i]) + args[i] = ''; + args[i] += c; + } + return args; +} + +var DefaultValuesForTypeKey; +(function (DefaultValuesForTypeKey) { + DefaultValuesForTypeKey["BOOLEAN"] = "boolean"; + DefaultValuesForTypeKey["STRING"] = "string"; + DefaultValuesForTypeKey["NUMBER"] = "number"; + DefaultValuesForTypeKey["ARRAY"] = "array"; +})(DefaultValuesForTypeKey || (DefaultValuesForTypeKey = {})); + +let mixin; +class YargsParser { + constructor(_mixin) { + mixin = _mixin; + } + parse(argsInput, options) { + const opts = Object.assign({ + alias: undefined, + array: undefined, + boolean: undefined, + config: undefined, + configObjects: undefined, + configuration: undefined, + coerce: undefined, + count: undefined, + default: undefined, + envPrefix: undefined, + narg: undefined, + normalize: undefined, + string: undefined, + number: undefined, + __: undefined, + key: undefined + }, options); + const args = tokenizeArgString(argsInput); + const inputIsString = typeof argsInput === 'string'; + const aliases = combineAliases(Object.assign(Object.create(null), opts.alias)); + const configuration = Object.assign({ + 'boolean-negation': true, + 'camel-case-expansion': true, + 'combine-arrays': false, + 'dot-notation': true, + 'duplicate-arguments-array': true, + 'flatten-duplicate-arrays': true, + 'greedy-arrays': true, + 'halt-at-non-option': false, + 'nargs-eats-options': false, + 'negation-prefix': 'no-', + 'parse-numbers': true, + 'parse-positional-numbers': true, + 'populate--': false, + 'set-placeholder-key': false, + 'short-option-groups': true, + 'strip-aliased': false, + 'strip-dashed': false, + 'unknown-options-as-args': false + }, opts.configuration); + const defaults = Object.assign(Object.create(null), opts.default); + const configObjects = opts.configObjects || []; + const envPrefix = opts.envPrefix; + const notFlagsOption = configuration['populate--']; + const notFlagsArgv = notFlagsOption ? '--' : '_'; + const newAliases = Object.create(null); + const defaulted = Object.create(null); + const __ = opts.__ || mixin.format; + const flags = { + aliases: Object.create(null), + arrays: Object.create(null), + bools: Object.create(null), + strings: Object.create(null), + numbers: Object.create(null), + counts: Object.create(null), + normalize: Object.create(null), + configs: Object.create(null), + nargs: Object.create(null), + coercions: Object.create(null), + keys: [] + }; + const negative = /^-([0-9]+(\.[0-9]+)?|\.[0-9]+)$/; + const negatedBoolean = new RegExp('^--' + configuration['negation-prefix'] + '(.+)'); + [].concat(opts.array || []).filter(Boolean).forEach(function (opt) { + const key = typeof opt === 'object' ? opt.key : opt; + const assignment = Object.keys(opt).map(function (key) { + const arrayFlagKeys = { + boolean: 'bools', + string: 'strings', + number: 'numbers' + }; + return arrayFlagKeys[key]; + }).filter(Boolean).pop(); + if (assignment) { + flags[assignment][key] = true; + } + flags.arrays[key] = true; + flags.keys.push(key); + }); + [].concat(opts.boolean || []).filter(Boolean).forEach(function (key) { + flags.bools[key] = true; + flags.keys.push(key); + }); + [].concat(opts.string || []).filter(Boolean).forEach(function (key) { + flags.strings[key] = true; + flags.keys.push(key); + }); + [].concat(opts.number || []).filter(Boolean).forEach(function (key) { + flags.numbers[key] = true; + flags.keys.push(key); + }); + [].concat(opts.count || []).filter(Boolean).forEach(function (key) { + flags.counts[key] = true; + flags.keys.push(key); + }); + [].concat(opts.normalize || []).filter(Boolean).forEach(function (key) { + flags.normalize[key] = true; + flags.keys.push(key); + }); + if (typeof opts.narg === 'object') { + Object.entries(opts.narg).forEach(([key, value]) => { + if (typeof value === 'number') { + flags.nargs[key] = value; + flags.keys.push(key); + } + }); + } + if (typeof opts.coerce === 'object') { + Object.entries(opts.coerce).forEach(([key, value]) => { + if (typeof value === 'function') { + flags.coercions[key] = value; + flags.keys.push(key); + } + }); + } + if (typeof opts.config !== 'undefined') { + if (Array.isArray(opts.config) || typeof opts.config === 'string') { + [].concat(opts.config).filter(Boolean).forEach(function (key) { + flags.configs[key] = true; + }); + } + else if (typeof opts.config === 'object') { + Object.entries(opts.config).forEach(([key, value]) => { + if (typeof value === 'boolean' || typeof value === 'function') { + flags.configs[key] = value; + } + }); + } + } + extendAliases(opts.key, aliases, opts.default, flags.arrays); + Object.keys(defaults).forEach(function (key) { + (flags.aliases[key] || []).forEach(function (alias) { + defaults[alias] = defaults[key]; + }); + }); + let error = null; + checkConfiguration(); + let notFlags = []; + const argv = Object.assign(Object.create(null), { _: [] }); + const argvReturn = {}; + for (let i = 0; i < args.length; i++) { + const arg = args[i]; + const truncatedArg = arg.replace(/^-{3,}/, '---'); + let broken; + let key; + let letters; + let m; + let next; + let value; + if (arg !== '--' && /^-/.test(arg) && isUnknownOptionAsArg(arg)) { + pushPositional(arg); + } + else if (truncatedArg.match(/^---+(=|$)/)) { + pushPositional(arg); + continue; + } + else if (arg.match(/^--.+=/) || (!configuration['short-option-groups'] && arg.match(/^-.+=/))) { + m = arg.match(/^--?([^=]+)=([\s\S]*)$/); + if (m !== null && Array.isArray(m) && m.length >= 3) { + if (checkAllAliases(m[1], flags.arrays)) { + i = eatArray(i, m[1], args, m[2]); + } + else if (checkAllAliases(m[1], flags.nargs) !== false) { + i = eatNargs(i, m[1], args, m[2]); + } + else { + setArg(m[1], m[2], true); + } + } + } + else if (arg.match(negatedBoolean) && configuration['boolean-negation']) { + m = arg.match(negatedBoolean); + if (m !== null && Array.isArray(m) && m.length >= 2) { + key = m[1]; + setArg(key, checkAllAliases(key, flags.arrays) ? [false] : false); + } + } + else if (arg.match(/^--.+/) || (!configuration['short-option-groups'] && arg.match(/^-[^-]+/))) { + m = arg.match(/^--?(.+)/); + if (m !== null && Array.isArray(m) && m.length >= 2) { + key = m[1]; + if (checkAllAliases(key, flags.arrays)) { + i = eatArray(i, key, args); + } + else if (checkAllAliases(key, flags.nargs) !== false) { + i = eatNargs(i, key, args); + } + else { + next = args[i + 1]; + if (next !== undefined && (!next.match(/^-/) || + next.match(negative)) && + !checkAllAliases(key, flags.bools) && + !checkAllAliases(key, flags.counts)) { + setArg(key, next); + i++; + } + else if (/^(true|false)$/.test(next)) { + setArg(key, next); + i++; + } + else { + setArg(key, defaultValue(key)); + } + } + } + } + else if (arg.match(/^-.\..+=/)) { + m = arg.match(/^-([^=]+)=([\s\S]*)$/); + if (m !== null && Array.isArray(m) && m.length >= 3) { + setArg(m[1], m[2]); + } + } + else if (arg.match(/^-.\..+/) && !arg.match(negative)) { + next = args[i + 1]; + m = arg.match(/^-(.\..+)/); + if (m !== null && Array.isArray(m) && m.length >= 2) { + key = m[1]; + if (next !== undefined && !next.match(/^-/) && + !checkAllAliases(key, flags.bools) && + !checkAllAliases(key, flags.counts)) { + setArg(key, next); + i++; + } + else { + setArg(key, defaultValue(key)); + } + } + } + else if (arg.match(/^-[^-]+/) && !arg.match(negative)) { + letters = arg.slice(1, -1).split(''); + broken = false; + for (let j = 0; j < letters.length; j++) { + next = arg.slice(j + 2); + if (letters[j + 1] && letters[j + 1] === '=') { + value = arg.slice(j + 3); + key = letters[j]; + if (checkAllAliases(key, flags.arrays)) { + i = eatArray(i, key, args, value); + } + else if (checkAllAliases(key, flags.nargs) !== false) { + i = eatNargs(i, key, args, value); + } + else { + setArg(key, value); + } + broken = true; + break; + } + if (next === '-') { + setArg(letters[j], next); + continue; + } + if (/[A-Za-z]/.test(letters[j]) && + /^-?\d+(\.\d*)?(e-?\d+)?$/.test(next) && + checkAllAliases(next, flags.bools) === false) { + setArg(letters[j], next); + broken = true; + break; + } + if (letters[j + 1] && letters[j + 1].match(/\W/)) { + setArg(letters[j], next); + broken = true; + break; + } + else { + setArg(letters[j], defaultValue(letters[j])); + } + } + key = arg.slice(-1)[0]; + if (!broken && key !== '-') { + if (checkAllAliases(key, flags.arrays)) { + i = eatArray(i, key, args); + } + else if (checkAllAliases(key, flags.nargs) !== false) { + i = eatNargs(i, key, args); + } + else { + next = args[i + 1]; + if (next !== undefined && (!/^(-|--)[^-]/.test(next) || + next.match(negative)) && + !checkAllAliases(key, flags.bools) && + !checkAllAliases(key, flags.counts)) { + setArg(key, next); + i++; + } + else if (/^(true|false)$/.test(next)) { + setArg(key, next); + i++; + } + else { + setArg(key, defaultValue(key)); + } + } + } + } + else if (arg.match(/^-[0-9]$/) && + arg.match(negative) && + checkAllAliases(arg.slice(1), flags.bools)) { + key = arg.slice(1); + setArg(key, defaultValue(key)); + } + else if (arg === '--') { + notFlags = args.slice(i + 1); + break; + } + else if (configuration['halt-at-non-option']) { + notFlags = args.slice(i); + break; + } + else { + pushPositional(arg); + } + } + applyEnvVars(argv, true); + applyEnvVars(argv, false); + setConfig(argv); + setConfigObjects(); + applyDefaultsAndAliases(argv, flags.aliases, defaults, true); + applyCoercions(argv); + if (configuration['set-placeholder-key']) + setPlaceholderKeys(argv); + Object.keys(flags.counts).forEach(function (key) { + if (!hasKey(argv, key.split('.'))) + setArg(key, 0); + }); + if (notFlagsOption && notFlags.length) + argv[notFlagsArgv] = []; + notFlags.forEach(function (key) { + argv[notFlagsArgv].push(key); + }); + if (configuration['camel-case-expansion'] && configuration['strip-dashed']) { + Object.keys(argv).filter(key => key !== '--' && key.includes('-')).forEach(key => { + delete argv[key]; + }); + } + if (configuration['strip-aliased']) { + [].concat(...Object.keys(aliases).map(k => aliases[k])).forEach(alias => { + if (configuration['camel-case-expansion'] && alias.includes('-')) { + delete argv[alias.split('.').map(prop => camelCase(prop)).join('.')]; + } + delete argv[alias]; + }); + } + function pushPositional(arg) { + const maybeCoercedNumber = maybeCoerceNumber('_', arg); + if (typeof maybeCoercedNumber === 'string' || typeof maybeCoercedNumber === 'number') { + argv._.push(maybeCoercedNumber); + } + } + function eatNargs(i, key, args, argAfterEqualSign) { + let ii; + let toEat = checkAllAliases(key, flags.nargs); + toEat = typeof toEat !== 'number' || isNaN(toEat) ? 1 : toEat; + if (toEat === 0) { + if (!isUndefined(argAfterEqualSign)) { + error = Error(__('Argument unexpected for: %s', key)); + } + setArg(key, defaultValue(key)); + return i; + } + let available = isUndefined(argAfterEqualSign) ? 0 : 1; + if (configuration['nargs-eats-options']) { + if (args.length - (i + 1) + available < toEat) { + error = Error(__('Not enough arguments following: %s', key)); + } + available = toEat; + } + else { + for (ii = i + 1; ii < args.length; ii++) { + if (!args[ii].match(/^-[^0-9]/) || args[ii].match(negative) || isUnknownOptionAsArg(args[ii])) + available++; + else + break; + } + if (available < toEat) + error = Error(__('Not enough arguments following: %s', key)); + } + let consumed = Math.min(available, toEat); + if (!isUndefined(argAfterEqualSign) && consumed > 0) { + setArg(key, argAfterEqualSign); + consumed--; + } + for (ii = i + 1; ii < (consumed + i + 1); ii++) { + setArg(key, args[ii]); + } + return (i + consumed); + } + function eatArray(i, key, args, argAfterEqualSign) { + let argsToSet = []; + let next = argAfterEqualSign || args[i + 1]; + const nargsCount = checkAllAliases(key, flags.nargs); + if (checkAllAliases(key, flags.bools) && !(/^(true|false)$/.test(next))) { + argsToSet.push(true); + } + else if (isUndefined(next) || + (isUndefined(argAfterEqualSign) && /^-/.test(next) && !negative.test(next) && !isUnknownOptionAsArg(next))) { + if (defaults[key] !== undefined) { + const defVal = defaults[key]; + argsToSet = Array.isArray(defVal) ? defVal : [defVal]; + } + } + else { + if (!isUndefined(argAfterEqualSign)) { + argsToSet.push(processValue(key, argAfterEqualSign, true)); + } + for (let ii = i + 1; ii < args.length; ii++) { + if ((!configuration['greedy-arrays'] && argsToSet.length > 0) || + (nargsCount && typeof nargsCount === 'number' && argsToSet.length >= nargsCount)) + break; + next = args[ii]; + if (/^-/.test(next) && !negative.test(next) && !isUnknownOptionAsArg(next)) + break; + i = ii; + argsToSet.push(processValue(key, next, inputIsString)); + } + } + if (typeof nargsCount === 'number' && ((nargsCount && argsToSet.length < nargsCount) || + (isNaN(nargsCount) && argsToSet.length === 0))) { + error = Error(__('Not enough arguments following: %s', key)); + } + setArg(key, argsToSet); + return i; + } + function setArg(key, val, shouldStripQuotes = inputIsString) { + if (/-/.test(key) && configuration['camel-case-expansion']) { + const alias = key.split('.').map(function (prop) { + return camelCase(prop); + }).join('.'); + addNewAlias(key, alias); + } + const value = processValue(key, val, shouldStripQuotes); + const splitKey = key.split('.'); + setKey(argv, splitKey, value); + if (flags.aliases[key]) { + flags.aliases[key].forEach(function (x) { + const keyProperties = x.split('.'); + setKey(argv, keyProperties, value); + }); + } + if (splitKey.length > 1 && configuration['dot-notation']) { + (flags.aliases[splitKey[0]] || []).forEach(function (x) { + let keyProperties = x.split('.'); + const a = [].concat(splitKey); + a.shift(); + keyProperties = keyProperties.concat(a); + if (!(flags.aliases[key] || []).includes(keyProperties.join('.'))) { + setKey(argv, keyProperties, value); + } + }); + } + if (checkAllAliases(key, flags.normalize) && !checkAllAliases(key, flags.arrays)) { + const keys = [key].concat(flags.aliases[key] || []); + keys.forEach(function (key) { + Object.defineProperty(argvReturn, key, { + enumerable: true, + get() { + return val; + }, + set(value) { + val = typeof value === 'string' ? mixin.normalize(value) : value; + } + }); + }); + } + } + function addNewAlias(key, alias) { + if (!(flags.aliases[key] && flags.aliases[key].length)) { + flags.aliases[key] = [alias]; + newAliases[alias] = true; + } + if (!(flags.aliases[alias] && flags.aliases[alias].length)) { + addNewAlias(alias, key); + } + } + function processValue(key, val, shouldStripQuotes) { + if (shouldStripQuotes) { + val = stripQuotes(val); + } + if (checkAllAliases(key, flags.bools) || checkAllAliases(key, flags.counts)) { + if (typeof val === 'string') + val = val === 'true'; + } + let value = Array.isArray(val) + ? val.map(function (v) { return maybeCoerceNumber(key, v); }) + : maybeCoerceNumber(key, val); + if (checkAllAliases(key, flags.counts) && (isUndefined(value) || typeof value === 'boolean')) { + value = increment(); + } + if (checkAllAliases(key, flags.normalize) && checkAllAliases(key, flags.arrays)) { + if (Array.isArray(val)) + value = val.map((val) => { return mixin.normalize(val); }); + else + value = mixin.normalize(val); + } + return value; + } + function maybeCoerceNumber(key, value) { + if (!configuration['parse-positional-numbers'] && key === '_') + return value; + if (!checkAllAliases(key, flags.strings) && !checkAllAliases(key, flags.bools) && !Array.isArray(value)) { + const shouldCoerceNumber = looksLikeNumber(value) && configuration['parse-numbers'] && (Number.isSafeInteger(Math.floor(parseFloat(`${value}`)))); + if (shouldCoerceNumber || (!isUndefined(value) && checkAllAliases(key, flags.numbers))) { + value = Number(value); + } + } + return value; + } + function setConfig(argv) { + const configLookup = Object.create(null); + applyDefaultsAndAliases(configLookup, flags.aliases, defaults); + Object.keys(flags.configs).forEach(function (configKey) { + const configPath = argv[configKey] || configLookup[configKey]; + if (configPath) { + try { + let config = null; + const resolvedConfigPath = mixin.resolve(mixin.cwd(), configPath); + const resolveConfig = flags.configs[configKey]; + if (typeof resolveConfig === 'function') { + try { + config = resolveConfig(resolvedConfigPath); + } + catch (e) { + config = e; + } + if (config instanceof Error) { + error = config; + return; + } + } + else { + config = mixin.require(resolvedConfigPath); + } + setConfigObject(config); + } + catch (ex) { + if (ex.name === 'PermissionDenied') + error = ex; + else if (argv[configKey]) + error = Error(__('Invalid JSON config file: %s', configPath)); + } + } + }); + } + function setConfigObject(config, prev) { + Object.keys(config).forEach(function (key) { + const value = config[key]; + const fullKey = prev ? prev + '.' + key : key; + if (typeof value === 'object' && value !== null && !Array.isArray(value) && configuration['dot-notation']) { + setConfigObject(value, fullKey); + } + else { + if (!hasKey(argv, fullKey.split('.')) || (checkAllAliases(fullKey, flags.arrays) && configuration['combine-arrays'])) { + setArg(fullKey, value); + } + } + }); + } + function setConfigObjects() { + if (typeof configObjects !== 'undefined') { + configObjects.forEach(function (configObject) { + setConfigObject(configObject); + }); + } + } + function applyEnvVars(argv, configOnly) { + if (typeof envPrefix === 'undefined') + return; + const prefix = typeof envPrefix === 'string' ? envPrefix : ''; + const env = mixin.env(); + Object.keys(env).forEach(function (envVar) { + if (prefix === '' || envVar.lastIndexOf(prefix, 0) === 0) { + const keys = envVar.split('__').map(function (key, i) { + if (i === 0) { + key = key.substring(prefix.length); + } + return camelCase(key); + }); + if (((configOnly && flags.configs[keys.join('.')]) || !configOnly) && !hasKey(argv, keys)) { + setArg(keys.join('.'), env[envVar]); + } + } + }); + } + function applyCoercions(argv) { + let coerce; + const applied = new Set(); + Object.keys(argv).forEach(function (key) { + if (!applied.has(key)) { + coerce = checkAllAliases(key, flags.coercions); + if (typeof coerce === 'function') { + try { + const value = maybeCoerceNumber(key, coerce(argv[key])); + ([].concat(flags.aliases[key] || [], key)).forEach(ali => { + applied.add(ali); + argv[ali] = value; + }); + } + catch (err) { + error = err; + } + } + } + }); + } + function setPlaceholderKeys(argv) { + flags.keys.forEach((key) => { + if (~key.indexOf('.')) + return; + if (typeof argv[key] === 'undefined') + argv[key] = undefined; + }); + return argv; + } + function applyDefaultsAndAliases(obj, aliases, defaults, canLog = false) { + Object.keys(defaults).forEach(function (key) { + if (!hasKey(obj, key.split('.'))) { + setKey(obj, key.split('.'), defaults[key]); + if (canLog) + defaulted[key] = true; + (aliases[key] || []).forEach(function (x) { + if (hasKey(obj, x.split('.'))) + return; + setKey(obj, x.split('.'), defaults[key]); + }); + } + }); + } + function hasKey(obj, keys) { + let o = obj; + if (!configuration['dot-notation']) + keys = [keys.join('.')]; + keys.slice(0, -1).forEach(function (key) { + o = (o[key] || {}); + }); + const key = keys[keys.length - 1]; + if (typeof o !== 'object') + return false; + else + return key in o; + } + function setKey(obj, keys, value) { + let o = obj; + if (!configuration['dot-notation']) + keys = [keys.join('.')]; + keys.slice(0, -1).forEach(function (key) { + key = sanitizeKey(key); + if (typeof o === 'object' && o[key] === undefined) { + o[key] = {}; + } + if (typeof o[key] !== 'object' || Array.isArray(o[key])) { + if (Array.isArray(o[key])) { + o[key].push({}); + } + else { + o[key] = [o[key], {}]; + } + o = o[key][o[key].length - 1]; + } + else { + o = o[key]; + } + }); + const key = sanitizeKey(keys[keys.length - 1]); + const isTypeArray = checkAllAliases(keys.join('.'), flags.arrays); + const isValueArray = Array.isArray(value); + let duplicate = configuration['duplicate-arguments-array']; + if (!duplicate && checkAllAliases(key, flags.nargs)) { + duplicate = true; + if ((!isUndefined(o[key]) && flags.nargs[key] === 1) || (Array.isArray(o[key]) && o[key].length === flags.nargs[key])) { + o[key] = undefined; + } + } + if (value === increment()) { + o[key] = increment(o[key]); + } + else if (Array.isArray(o[key])) { + if (duplicate && isTypeArray && isValueArray) { + o[key] = configuration['flatten-duplicate-arrays'] ? o[key].concat(value) : (Array.isArray(o[key][0]) ? o[key] : [o[key]]).concat([value]); + } + else if (!duplicate && Boolean(isTypeArray) === Boolean(isValueArray)) { + o[key] = value; + } + else { + o[key] = o[key].concat([value]); + } + } + else if (o[key] === undefined && isTypeArray) { + o[key] = isValueArray ? value : [value]; + } + else if (duplicate && !(o[key] === undefined || + checkAllAliases(key, flags.counts) || + checkAllAliases(key, flags.bools))) { + o[key] = [o[key], value]; + } + else { + o[key] = value; + } + } + function extendAliases(...args) { + args.forEach(function (obj) { + Object.keys(obj || {}).forEach(function (key) { + if (flags.aliases[key]) + return; + flags.aliases[key] = [].concat(aliases[key] || []); + flags.aliases[key].concat(key).forEach(function (x) { + if (/-/.test(x) && configuration['camel-case-expansion']) { + const c = camelCase(x); + if (c !== key && flags.aliases[key].indexOf(c) === -1) { + flags.aliases[key].push(c); + newAliases[c] = true; + } + } + }); + flags.aliases[key].concat(key).forEach(function (x) { + if (x.length > 1 && /[A-Z]/.test(x) && configuration['camel-case-expansion']) { + const c = decamelize(x, '-'); + if (c !== key && flags.aliases[key].indexOf(c) === -1) { + flags.aliases[key].push(c); + newAliases[c] = true; + } + } + }); + flags.aliases[key].forEach(function (x) { + flags.aliases[x] = [key].concat(flags.aliases[key].filter(function (y) { + return x !== y; + })); + }); + }); + }); + } + function checkAllAliases(key, flag) { + const toCheck = [].concat(flags.aliases[key] || [], key); + const keys = Object.keys(flag); + const setAlias = toCheck.find(key => keys.includes(key)); + return setAlias ? flag[setAlias] : false; + } + function hasAnyFlag(key) { + const flagsKeys = Object.keys(flags); + const toCheck = [].concat(flagsKeys.map(k => flags[k])); + return toCheck.some(function (flag) { + return Array.isArray(flag) ? flag.includes(key) : flag[key]; + }); + } + function hasFlagsMatching(arg, ...patterns) { + const toCheck = [].concat(...patterns); + return toCheck.some(function (pattern) { + const match = arg.match(pattern); + return match && hasAnyFlag(match[1]); + }); + } + function hasAllShortFlags(arg) { + if (arg.match(negative) || !arg.match(/^-[^-]+/)) { + return false; + } + let hasAllFlags = true; + let next; + const letters = arg.slice(1).split(''); + for (let j = 0; j < letters.length; j++) { + next = arg.slice(j + 2); + if (!hasAnyFlag(letters[j])) { + hasAllFlags = false; + break; + } + if ((letters[j + 1] && letters[j + 1] === '=') || + next === '-' || + (/[A-Za-z]/.test(letters[j]) && /^-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) || + (letters[j + 1] && letters[j + 1].match(/\W/))) { + break; + } + } + return hasAllFlags; + } + function isUnknownOptionAsArg(arg) { + return configuration['unknown-options-as-args'] && isUnknownOption(arg); + } + function isUnknownOption(arg) { + arg = arg.replace(/^-{3,}/, '--'); + if (arg.match(negative)) { + return false; + } + if (hasAllShortFlags(arg)) { + return false; + } + const flagWithEquals = /^-+([^=]+?)=[\s\S]*$/; + const normalFlag = /^-+([^=]+?)$/; + const flagEndingInHyphen = /^-+([^=]+?)-$/; + const flagEndingInDigits = /^-+([^=]+?\d+)$/; + const flagEndingInNonWordCharacters = /^-+([^=]+?)\W+.*$/; + return !hasFlagsMatching(arg, flagWithEquals, negatedBoolean, normalFlag, flagEndingInHyphen, flagEndingInDigits, flagEndingInNonWordCharacters); + } + function defaultValue(key) { + if (!checkAllAliases(key, flags.bools) && + !checkAllAliases(key, flags.counts) && + `${key}` in defaults) { + return defaults[key]; + } + else { + return defaultForType(guessType(key)); + } + } + function defaultForType(type) { + const def = { + [DefaultValuesForTypeKey.BOOLEAN]: true, + [DefaultValuesForTypeKey.STRING]: '', + [DefaultValuesForTypeKey.NUMBER]: undefined, + [DefaultValuesForTypeKey.ARRAY]: [] + }; + return def[type]; + } + function guessType(key) { + let type = DefaultValuesForTypeKey.BOOLEAN; + if (checkAllAliases(key, flags.strings)) + type = DefaultValuesForTypeKey.STRING; + else if (checkAllAliases(key, flags.numbers)) + type = DefaultValuesForTypeKey.NUMBER; + else if (checkAllAliases(key, flags.bools)) + type = DefaultValuesForTypeKey.BOOLEAN; + else if (checkAllAliases(key, flags.arrays)) + type = DefaultValuesForTypeKey.ARRAY; + return type; + } + function isUndefined(num) { + return num === undefined; + } + function checkConfiguration() { + Object.keys(flags.counts).find(key => { + if (checkAllAliases(key, flags.arrays)) { + error = Error(__('Invalid configuration: %s, opts.count excludes opts.array.', key)); + return true; + } + else if (checkAllAliases(key, flags.nargs)) { + error = Error(__('Invalid configuration: %s, opts.count excludes opts.narg.', key)); + return true; + } + return false; + }); + } + return { + aliases: Object.assign({}, flags.aliases), + argv: Object.assign(argvReturn, argv), + configuration: configuration, + defaulted: Object.assign({}, defaulted), + error: error, + newAliases: Object.assign({}, newAliases) + }; + } +} +function combineAliases(aliases) { + const aliasArrays = []; + const combined = Object.create(null); + let change = true; + Object.keys(aliases).forEach(function (key) { + aliasArrays.push([].concat(aliases[key], key)); + }); + while (change) { + change = false; + for (let i = 0; i < aliasArrays.length; i++) { + for (let ii = i + 1; ii < aliasArrays.length; ii++) { + const intersect = aliasArrays[i].filter(function (v) { + return aliasArrays[ii].indexOf(v) !== -1; + }); + if (intersect.length) { + aliasArrays[i] = aliasArrays[i].concat(aliasArrays[ii]); + aliasArrays.splice(ii, 1); + change = true; + break; + } + } + } + } + aliasArrays.forEach(function (aliasArray) { + aliasArray = aliasArray.filter(function (v, i, self) { + return self.indexOf(v) === i; + }); + const lastAlias = aliasArray.pop(); + if (lastAlias !== undefined && typeof lastAlias === 'string') { + combined[lastAlias] = aliasArray; + } + }); + return combined; +} +function increment(orig) { + return orig !== undefined ? orig + 1 : 1; +} +function sanitizeKey(key) { + if (key === '__proto__') + return '___proto___'; + return key; +} +function stripQuotes(val) { + return (typeof val === 'string' && + (val[0] === "'" || val[0] === '"') && + val[val.length - 1] === val[0]) + ? val.substring(1, val.length - 1) + : val; +} + +var _a, _b, _c; +const minNodeVersion = (process && process.env && process.env.YARGS_MIN_NODE_VERSION) + ? Number(process.env.YARGS_MIN_NODE_VERSION) + : 12; +const nodeVersion = (_b = (_a = process === null || process === void 0 ? void 0 : process.versions) === null || _a === void 0 ? void 0 : _a.node) !== null && _b !== void 0 ? _b : (_c = process === null || process === void 0 ? void 0 : process.version) === null || _c === void 0 ? void 0 : _c.slice(1); +if (nodeVersion) { + const major = Number(nodeVersion.match(/^([^.]+)/)[1]); + if (major < minNodeVersion) { + throw Error(`yargs parser supports a minimum Node.js version of ${minNodeVersion}. Read our version support policy: https://github.com/yargs/yargs-parser#supported-nodejs-versions`); + } +} +const env = process ? process.env : {}; +const parser = new YargsParser({ + cwd: process.cwd, + env: () => { + return env; + }, + format: util.format, + normalize: path.normalize, + resolve: path.resolve, + require: (path) => { + if (typeof require !== 'undefined') { + return require(path); + } + else if (path.match(/\.json$/)) { + return JSON.parse(fs.readFileSync(path, 'utf8')); + } + else { + throw Error('only .json config files are supported in ESM'); + } + } +}); +const yargsParser = function Parser(args, opts) { + const result = parser.parse(args.slice(), opts); + return result.argv; +}; +yargsParser.detailed = function (args, opts) { + return parser.parse(args.slice(), opts); +}; +yargsParser.camelCase = camelCase; +yargsParser.decamelize = decamelize; +yargsParser.looksLikeNumber = looksLikeNumber; + +module.exports = yargsParser; diff --git a/node_modules/yargs-parser/build/lib/index.js b/node_modules/yargs-parser/build/lib/index.js new file mode 100644 index 0000000..43ef485 --- /dev/null +++ b/node_modules/yargs-parser/build/lib/index.js @@ -0,0 +1,62 @@ +/** + * @fileoverview Main entrypoint for libraries using yargs-parser in Node.js + * CJS and ESM environments. + * + * @license + * Copyright (c) 2016, Contributors + * SPDX-License-Identifier: ISC + */ +var _a, _b, _c; +import { format } from 'util'; +import { normalize, resolve } from 'path'; +import { camelCase, decamelize, looksLikeNumber } from './string-utils.js'; +import { YargsParser } from './yargs-parser.js'; +import { readFileSync } from 'fs'; +// See https://github.com/yargs/yargs-parser#supported-nodejs-versions for our +// version support policy. The YARGS_MIN_NODE_VERSION is used for testing only. +const minNodeVersion = (process && process.env && process.env.YARGS_MIN_NODE_VERSION) + ? Number(process.env.YARGS_MIN_NODE_VERSION) + : 12; +const nodeVersion = (_b = (_a = process === null || process === void 0 ? void 0 : process.versions) === null || _a === void 0 ? void 0 : _a.node) !== null && _b !== void 0 ? _b : (_c = process === null || process === void 0 ? void 0 : process.version) === null || _c === void 0 ? void 0 : _c.slice(1); +if (nodeVersion) { + const major = Number(nodeVersion.match(/^([^.]+)/)[1]); + if (major < minNodeVersion) { + throw Error(`yargs parser supports a minimum Node.js version of ${minNodeVersion}. Read our version support policy: https://github.com/yargs/yargs-parser#supported-nodejs-versions`); + } +} +// Creates a yargs-parser instance using Node.js standard libraries: +const env = process ? process.env : {}; +const parser = new YargsParser({ + cwd: process.cwd, + env: () => { + return env; + }, + format, + normalize, + resolve, + // TODO: figure out a way to combine ESM and CJS coverage, such that + // we can exercise all the lines below: + require: (path) => { + if (typeof require !== 'undefined') { + return require(path); + } + else if (path.match(/\.json$/)) { + // Addresses: https://github.com/yargs/yargs/issues/2040 + return JSON.parse(readFileSync(path, 'utf8')); + } + else { + throw Error('only .json config files are supported in ESM'); + } + } +}); +const yargsParser = function Parser(args, opts) { + const result = parser.parse(args.slice(), opts); + return result.argv; +}; +yargsParser.detailed = function (args, opts) { + return parser.parse(args.slice(), opts); +}; +yargsParser.camelCase = camelCase; +yargsParser.decamelize = decamelize; +yargsParser.looksLikeNumber = looksLikeNumber; +export default yargsParser; diff --git a/node_modules/yargs-parser/build/lib/string-utils.js b/node_modules/yargs-parser/build/lib/string-utils.js new file mode 100644 index 0000000..4e8bd99 --- /dev/null +++ b/node_modules/yargs-parser/build/lib/string-utils.js @@ -0,0 +1,65 @@ +/** + * @license + * Copyright (c) 2016, Contributors + * SPDX-License-Identifier: ISC + */ +export function camelCase(str) { + // Handle the case where an argument is provided as camel case, e.g., fooBar. + // by ensuring that the string isn't already mixed case: + const isCamelCase = str !== str.toLowerCase() && str !== str.toUpperCase(); + if (!isCamelCase) { + str = str.toLowerCase(); + } + if (str.indexOf('-') === -1 && str.indexOf('_') === -1) { + return str; + } + else { + let camelcase = ''; + let nextChrUpper = false; + const leadingHyphens = str.match(/^-+/); + for (let i = leadingHyphens ? leadingHyphens[0].length : 0; i < str.length; i++) { + let chr = str.charAt(i); + if (nextChrUpper) { + nextChrUpper = false; + chr = chr.toUpperCase(); + } + if (i !== 0 && (chr === '-' || chr === '_')) { + nextChrUpper = true; + } + else if (chr !== '-' && chr !== '_') { + camelcase += chr; + } + } + return camelcase; + } +} +export function decamelize(str, joinString) { + const lowercase = str.toLowerCase(); + joinString = joinString || '-'; + let notCamelcase = ''; + for (let i = 0; i < str.length; i++) { + const chrLower = lowercase.charAt(i); + const chrString = str.charAt(i); + if (chrLower !== chrString && i > 0) { + notCamelcase += `${joinString}${lowercase.charAt(i)}`; + } + else { + notCamelcase += chrString; + } + } + return notCamelcase; +} +export function looksLikeNumber(x) { + if (x === null || x === undefined) + return false; + // if loaded from config, may already be a number. + if (typeof x === 'number') + return true; + // hexadecimal. + if (/^0x[0-9a-f]+$/i.test(x)) + return true; + // don't treat 0123 as a number; as it drops the leading '0'. + if (/^0[^.]/.test(x)) + return false; + return /^[-]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x); +} diff --git a/node_modules/yargs-parser/build/lib/tokenize-arg-string.js b/node_modules/yargs-parser/build/lib/tokenize-arg-string.js new file mode 100644 index 0000000..5e732ef --- /dev/null +++ b/node_modules/yargs-parser/build/lib/tokenize-arg-string.js @@ -0,0 +1,40 @@ +/** + * @license + * Copyright (c) 2016, Contributors + * SPDX-License-Identifier: ISC + */ +// take an un-split argv string and tokenize it. +export function tokenizeArgString(argString) { + if (Array.isArray(argString)) { + return argString.map(e => typeof e !== 'string' ? e + '' : e); + } + argString = argString.trim(); + let i = 0; + let prevC = null; + let c = null; + let opening = null; + const args = []; + for (let ii = 0; ii < argString.length; ii++) { + prevC = c; + c = argString.charAt(ii); + // split on spaces unless we're in quotes. + if (c === ' ' && !opening) { + if (!(prevC === ' ')) { + i++; + } + continue; + } + // don't split the string if we're in matching + // opening or closing single and double quotes. + if (c === opening) { + opening = null; + } + else if ((c === "'" || c === '"') && !opening) { + opening = c; + } + if (!args[i]) + args[i] = ''; + args[i] += c; + } + return args; +} diff --git a/node_modules/yargs-parser/build/lib/yargs-parser-types.js b/node_modules/yargs-parser/build/lib/yargs-parser-types.js new file mode 100644 index 0000000..63b7c31 --- /dev/null +++ b/node_modules/yargs-parser/build/lib/yargs-parser-types.js @@ -0,0 +1,12 @@ +/** + * @license + * Copyright (c) 2016, Contributors + * SPDX-License-Identifier: ISC + */ +export var DefaultValuesForTypeKey; +(function (DefaultValuesForTypeKey) { + DefaultValuesForTypeKey["BOOLEAN"] = "boolean"; + DefaultValuesForTypeKey["STRING"] = "string"; + DefaultValuesForTypeKey["NUMBER"] = "number"; + DefaultValuesForTypeKey["ARRAY"] = "array"; +})(DefaultValuesForTypeKey || (DefaultValuesForTypeKey = {})); diff --git a/node_modules/yargs-parser/build/lib/yargs-parser.js b/node_modules/yargs-parser/build/lib/yargs-parser.js new file mode 100644 index 0000000..415d4bc --- /dev/null +++ b/node_modules/yargs-parser/build/lib/yargs-parser.js @@ -0,0 +1,1045 @@ +/** + * @license + * Copyright (c) 2016, Contributors + * SPDX-License-Identifier: ISC + */ +import { tokenizeArgString } from './tokenize-arg-string.js'; +import { DefaultValuesForTypeKey } from './yargs-parser-types.js'; +import { camelCase, decamelize, looksLikeNumber } from './string-utils.js'; +let mixin; +export class YargsParser { + constructor(_mixin) { + mixin = _mixin; + } + parse(argsInput, options) { + const opts = Object.assign({ + alias: undefined, + array: undefined, + boolean: undefined, + config: undefined, + configObjects: undefined, + configuration: undefined, + coerce: undefined, + count: undefined, + default: undefined, + envPrefix: undefined, + narg: undefined, + normalize: undefined, + string: undefined, + number: undefined, + __: undefined, + key: undefined + }, options); + // allow a string argument to be passed in rather + // than an argv array. + const args = tokenizeArgString(argsInput); + // tokenizeArgString adds extra quotes to args if argsInput is a string + // only strip those extra quotes in processValue if argsInput is a string + const inputIsString = typeof argsInput === 'string'; + // aliases might have transitive relationships, normalize this. + const aliases = combineAliases(Object.assign(Object.create(null), opts.alias)); + const configuration = Object.assign({ + 'boolean-negation': true, + 'camel-case-expansion': true, + 'combine-arrays': false, + 'dot-notation': true, + 'duplicate-arguments-array': true, + 'flatten-duplicate-arrays': true, + 'greedy-arrays': true, + 'halt-at-non-option': false, + 'nargs-eats-options': false, + 'negation-prefix': 'no-', + 'parse-numbers': true, + 'parse-positional-numbers': true, + 'populate--': false, + 'set-placeholder-key': false, + 'short-option-groups': true, + 'strip-aliased': false, + 'strip-dashed': false, + 'unknown-options-as-args': false + }, opts.configuration); + const defaults = Object.assign(Object.create(null), opts.default); + const configObjects = opts.configObjects || []; + const envPrefix = opts.envPrefix; + const notFlagsOption = configuration['populate--']; + const notFlagsArgv = notFlagsOption ? '--' : '_'; + const newAliases = Object.create(null); + const defaulted = Object.create(null); + // allow a i18n handler to be passed in, default to a fake one (util.format). + const __ = opts.__ || mixin.format; + const flags = { + aliases: Object.create(null), + arrays: Object.create(null), + bools: Object.create(null), + strings: Object.create(null), + numbers: Object.create(null), + counts: Object.create(null), + normalize: Object.create(null), + configs: Object.create(null), + nargs: Object.create(null), + coercions: Object.create(null), + keys: [] + }; + const negative = /^-([0-9]+(\.[0-9]+)?|\.[0-9]+)$/; + const negatedBoolean = new RegExp('^--' + configuration['negation-prefix'] + '(.+)'); + [].concat(opts.array || []).filter(Boolean).forEach(function (opt) { + const key = typeof opt === 'object' ? opt.key : opt; + // assign to flags[bools|strings|numbers] + const assignment = Object.keys(opt).map(function (key) { + const arrayFlagKeys = { + boolean: 'bools', + string: 'strings', + number: 'numbers' + }; + return arrayFlagKeys[key]; + }).filter(Boolean).pop(); + // assign key to be coerced + if (assignment) { + flags[assignment][key] = true; + } + flags.arrays[key] = true; + flags.keys.push(key); + }); + [].concat(opts.boolean || []).filter(Boolean).forEach(function (key) { + flags.bools[key] = true; + flags.keys.push(key); + }); + [].concat(opts.string || []).filter(Boolean).forEach(function (key) { + flags.strings[key] = true; + flags.keys.push(key); + }); + [].concat(opts.number || []).filter(Boolean).forEach(function (key) { + flags.numbers[key] = true; + flags.keys.push(key); + }); + [].concat(opts.count || []).filter(Boolean).forEach(function (key) { + flags.counts[key] = true; + flags.keys.push(key); + }); + [].concat(opts.normalize || []).filter(Boolean).forEach(function (key) { + flags.normalize[key] = true; + flags.keys.push(key); + }); + if (typeof opts.narg === 'object') { + Object.entries(opts.narg).forEach(([key, value]) => { + if (typeof value === 'number') { + flags.nargs[key] = value; + flags.keys.push(key); + } + }); + } + if (typeof opts.coerce === 'object') { + Object.entries(opts.coerce).forEach(([key, value]) => { + if (typeof value === 'function') { + flags.coercions[key] = value; + flags.keys.push(key); + } + }); + } + if (typeof opts.config !== 'undefined') { + if (Array.isArray(opts.config) || typeof opts.config === 'string') { + ; + [].concat(opts.config).filter(Boolean).forEach(function (key) { + flags.configs[key] = true; + }); + } + else if (typeof opts.config === 'object') { + Object.entries(opts.config).forEach(([key, value]) => { + if (typeof value === 'boolean' || typeof value === 'function') { + flags.configs[key] = value; + } + }); + } + } + // create a lookup table that takes into account all + // combinations of aliases: {f: ['foo'], foo: ['f']} + extendAliases(opts.key, aliases, opts.default, flags.arrays); + // apply default values to all aliases. + Object.keys(defaults).forEach(function (key) { + (flags.aliases[key] || []).forEach(function (alias) { + defaults[alias] = defaults[key]; + }); + }); + let error = null; + checkConfiguration(); + let notFlags = []; + const argv = Object.assign(Object.create(null), { _: [] }); + // TODO(bcoe): for the first pass at removing object prototype we didn't + // remove all prototypes from objects returned by this API, we might want + // to gradually move towards doing so. + const argvReturn = {}; + for (let i = 0; i < args.length; i++) { + const arg = args[i]; + const truncatedArg = arg.replace(/^-{3,}/, '---'); + let broken; + let key; + let letters; + let m; + let next; + let value; + // any unknown option (except for end-of-options, "--") + if (arg !== '--' && /^-/.test(arg) && isUnknownOptionAsArg(arg)) { + pushPositional(arg); + // ---, ---=, ----, etc, + } + else if (truncatedArg.match(/^---+(=|$)/)) { + // options without key name are invalid. + pushPositional(arg); + continue; + // -- separated by = + } + else if (arg.match(/^--.+=/) || (!configuration['short-option-groups'] && arg.match(/^-.+=/))) { + // Using [\s\S] instead of . because js doesn't support the + // 'dotall' regex modifier. See: + // http://stackoverflow.com/a/1068308/13216 + m = arg.match(/^--?([^=]+)=([\s\S]*)$/); + // arrays format = '--f=a b c' + if (m !== null && Array.isArray(m) && m.length >= 3) { + if (checkAllAliases(m[1], flags.arrays)) { + i = eatArray(i, m[1], args, m[2]); + } + else if (checkAllAliases(m[1], flags.nargs) !== false) { + // nargs format = '--f=monkey washing cat' + i = eatNargs(i, m[1], args, m[2]); + } + else { + setArg(m[1], m[2], true); + } + } + } + else if (arg.match(negatedBoolean) && configuration['boolean-negation']) { + m = arg.match(negatedBoolean); + if (m !== null && Array.isArray(m) && m.length >= 2) { + key = m[1]; + setArg(key, checkAllAliases(key, flags.arrays) ? [false] : false); + } + // -- separated by space. + } + else if (arg.match(/^--.+/) || (!configuration['short-option-groups'] && arg.match(/^-[^-]+/))) { + m = arg.match(/^--?(.+)/); + if (m !== null && Array.isArray(m) && m.length >= 2) { + key = m[1]; + if (checkAllAliases(key, flags.arrays)) { + // array format = '--foo a b c' + i = eatArray(i, key, args); + } + else if (checkAllAliases(key, flags.nargs) !== false) { + // nargs format = '--foo a b c' + // should be truthy even if: flags.nargs[key] === 0 + i = eatNargs(i, key, args); + } + else { + next = args[i + 1]; + if (next !== undefined && (!next.match(/^-/) || + next.match(negative)) && + !checkAllAliases(key, flags.bools) && + !checkAllAliases(key, flags.counts)) { + setArg(key, next); + i++; + } + else if (/^(true|false)$/.test(next)) { + setArg(key, next); + i++; + } + else { + setArg(key, defaultValue(key)); + } + } + } + // dot-notation flag separated by '='. + } + else if (arg.match(/^-.\..+=/)) { + m = arg.match(/^-([^=]+)=([\s\S]*)$/); + if (m !== null && Array.isArray(m) && m.length >= 3) { + setArg(m[1], m[2]); + } + // dot-notation flag separated by space. + } + else if (arg.match(/^-.\..+/) && !arg.match(negative)) { + next = args[i + 1]; + m = arg.match(/^-(.\..+)/); + if (m !== null && Array.isArray(m) && m.length >= 2) { + key = m[1]; + if (next !== undefined && !next.match(/^-/) && + !checkAllAliases(key, flags.bools) && + !checkAllAliases(key, flags.counts)) { + setArg(key, next); + i++; + } + else { + setArg(key, defaultValue(key)); + } + } + } + else if (arg.match(/^-[^-]+/) && !arg.match(negative)) { + letters = arg.slice(1, -1).split(''); + broken = false; + for (let j = 0; j < letters.length; j++) { + next = arg.slice(j + 2); + if (letters[j + 1] && letters[j + 1] === '=') { + value = arg.slice(j + 3); + key = letters[j]; + if (checkAllAliases(key, flags.arrays)) { + // array format = '-f=a b c' + i = eatArray(i, key, args, value); + } + else if (checkAllAliases(key, flags.nargs) !== false) { + // nargs format = '-f=monkey washing cat' + i = eatNargs(i, key, args, value); + } + else { + setArg(key, value); + } + broken = true; + break; + } + if (next === '-') { + setArg(letters[j], next); + continue; + } + // current letter is an alphabetic character and next value is a number + if (/[A-Za-z]/.test(letters[j]) && + /^-?\d+(\.\d*)?(e-?\d+)?$/.test(next) && + checkAllAliases(next, flags.bools) === false) { + setArg(letters[j], next); + broken = true; + break; + } + if (letters[j + 1] && letters[j + 1].match(/\W/)) { + setArg(letters[j], next); + broken = true; + break; + } + else { + setArg(letters[j], defaultValue(letters[j])); + } + } + key = arg.slice(-1)[0]; + if (!broken && key !== '-') { + if (checkAllAliases(key, flags.arrays)) { + // array format = '-f a b c' + i = eatArray(i, key, args); + } + else if (checkAllAliases(key, flags.nargs) !== false) { + // nargs format = '-f a b c' + // should be truthy even if: flags.nargs[key] === 0 + i = eatNargs(i, key, args); + } + else { + next = args[i + 1]; + if (next !== undefined && (!/^(-|--)[^-]/.test(next) || + next.match(negative)) && + !checkAllAliases(key, flags.bools) && + !checkAllAliases(key, flags.counts)) { + setArg(key, next); + i++; + } + else if (/^(true|false)$/.test(next)) { + setArg(key, next); + i++; + } + else { + setArg(key, defaultValue(key)); + } + } + } + } + else if (arg.match(/^-[0-9]$/) && + arg.match(negative) && + checkAllAliases(arg.slice(1), flags.bools)) { + // single-digit boolean alias, e.g: xargs -0 + key = arg.slice(1); + setArg(key, defaultValue(key)); + } + else if (arg === '--') { + notFlags = args.slice(i + 1); + break; + } + else if (configuration['halt-at-non-option']) { + notFlags = args.slice(i); + break; + } + else { + pushPositional(arg); + } + } + // order of precedence: + // 1. command line arg + // 2. value from env var + // 3. value from config file + // 4. value from config objects + // 5. configured default value + applyEnvVars(argv, true); // special case: check env vars that point to config file + applyEnvVars(argv, false); + setConfig(argv); + setConfigObjects(); + applyDefaultsAndAliases(argv, flags.aliases, defaults, true); + applyCoercions(argv); + if (configuration['set-placeholder-key']) + setPlaceholderKeys(argv); + // for any counts either not in args or without an explicit default, set to 0 + Object.keys(flags.counts).forEach(function (key) { + if (!hasKey(argv, key.split('.'))) + setArg(key, 0); + }); + // '--' defaults to undefined. + if (notFlagsOption && notFlags.length) + argv[notFlagsArgv] = []; + notFlags.forEach(function (key) { + argv[notFlagsArgv].push(key); + }); + if (configuration['camel-case-expansion'] && configuration['strip-dashed']) { + Object.keys(argv).filter(key => key !== '--' && key.includes('-')).forEach(key => { + delete argv[key]; + }); + } + if (configuration['strip-aliased']) { + ; + [].concat(...Object.keys(aliases).map(k => aliases[k])).forEach(alias => { + if (configuration['camel-case-expansion'] && alias.includes('-')) { + delete argv[alias.split('.').map(prop => camelCase(prop)).join('.')]; + } + delete argv[alias]; + }); + } + // Push argument into positional array, applying numeric coercion: + function pushPositional(arg) { + const maybeCoercedNumber = maybeCoerceNumber('_', arg); + if (typeof maybeCoercedNumber === 'string' || typeof maybeCoercedNumber === 'number') { + argv._.push(maybeCoercedNumber); + } + } + // how many arguments should we consume, based + // on the nargs option? + function eatNargs(i, key, args, argAfterEqualSign) { + let ii; + let toEat = checkAllAliases(key, flags.nargs); + // NaN has a special meaning for the array type, indicating that one or + // more values are expected. + toEat = typeof toEat !== 'number' || isNaN(toEat) ? 1 : toEat; + if (toEat === 0) { + if (!isUndefined(argAfterEqualSign)) { + error = Error(__('Argument unexpected for: %s', key)); + } + setArg(key, defaultValue(key)); + return i; + } + let available = isUndefined(argAfterEqualSign) ? 0 : 1; + if (configuration['nargs-eats-options']) { + // classic behavior, yargs eats positional and dash arguments. + if (args.length - (i + 1) + available < toEat) { + error = Error(__('Not enough arguments following: %s', key)); + } + available = toEat; + } + else { + // nargs will not consume flag arguments, e.g., -abc, --foo, + // and terminates when one is observed. + for (ii = i + 1; ii < args.length; ii++) { + if (!args[ii].match(/^-[^0-9]/) || args[ii].match(negative) || isUnknownOptionAsArg(args[ii])) + available++; + else + break; + } + if (available < toEat) + error = Error(__('Not enough arguments following: %s', key)); + } + let consumed = Math.min(available, toEat); + if (!isUndefined(argAfterEqualSign) && consumed > 0) { + setArg(key, argAfterEqualSign); + consumed--; + } + for (ii = i + 1; ii < (consumed + i + 1); ii++) { + setArg(key, args[ii]); + } + return (i + consumed); + } + // if an option is an array, eat all non-hyphenated arguments + // following it... YUM! + // e.g., --foo apple banana cat becomes ["apple", "banana", "cat"] + function eatArray(i, key, args, argAfterEqualSign) { + let argsToSet = []; + let next = argAfterEqualSign || args[i + 1]; + // If both array and nargs are configured, enforce the nargs count: + const nargsCount = checkAllAliases(key, flags.nargs); + if (checkAllAliases(key, flags.bools) && !(/^(true|false)$/.test(next))) { + argsToSet.push(true); + } + else if (isUndefined(next) || + (isUndefined(argAfterEqualSign) && /^-/.test(next) && !negative.test(next) && !isUnknownOptionAsArg(next))) { + // for keys without value ==> argsToSet remains an empty [] + // set user default value, if available + if (defaults[key] !== undefined) { + const defVal = defaults[key]; + argsToSet = Array.isArray(defVal) ? defVal : [defVal]; + } + } + else { + // value in --option=value is eaten as is + if (!isUndefined(argAfterEqualSign)) { + argsToSet.push(processValue(key, argAfterEqualSign, true)); + } + for (let ii = i + 1; ii < args.length; ii++) { + if ((!configuration['greedy-arrays'] && argsToSet.length > 0) || + (nargsCount && typeof nargsCount === 'number' && argsToSet.length >= nargsCount)) + break; + next = args[ii]; + if (/^-/.test(next) && !negative.test(next) && !isUnknownOptionAsArg(next)) + break; + i = ii; + argsToSet.push(processValue(key, next, inputIsString)); + } + } + // If both array and nargs are configured, create an error if less than + // nargs positionals were found. NaN has special meaning, indicating + // that at least one value is required (more are okay). + if (typeof nargsCount === 'number' && ((nargsCount && argsToSet.length < nargsCount) || + (isNaN(nargsCount) && argsToSet.length === 0))) { + error = Error(__('Not enough arguments following: %s', key)); + } + setArg(key, argsToSet); + return i; + } + function setArg(key, val, shouldStripQuotes = inputIsString) { + if (/-/.test(key) && configuration['camel-case-expansion']) { + const alias = key.split('.').map(function (prop) { + return camelCase(prop); + }).join('.'); + addNewAlias(key, alias); + } + const value = processValue(key, val, shouldStripQuotes); + const splitKey = key.split('.'); + setKey(argv, splitKey, value); + // handle populating aliases of the full key + if (flags.aliases[key]) { + flags.aliases[key].forEach(function (x) { + const keyProperties = x.split('.'); + setKey(argv, keyProperties, value); + }); + } + // handle populating aliases of the first element of the dot-notation key + if (splitKey.length > 1 && configuration['dot-notation']) { + ; + (flags.aliases[splitKey[0]] || []).forEach(function (x) { + let keyProperties = x.split('.'); + // expand alias with nested objects in key + const a = [].concat(splitKey); + a.shift(); // nuke the old key. + keyProperties = keyProperties.concat(a); + // populate alias only if is not already an alias of the full key + // (already populated above) + if (!(flags.aliases[key] || []).includes(keyProperties.join('.'))) { + setKey(argv, keyProperties, value); + } + }); + } + // Set normalize getter and setter when key is in 'normalize' but isn't an array + if (checkAllAliases(key, flags.normalize) && !checkAllAliases(key, flags.arrays)) { + const keys = [key].concat(flags.aliases[key] || []); + keys.forEach(function (key) { + Object.defineProperty(argvReturn, key, { + enumerable: true, + get() { + return val; + }, + set(value) { + val = typeof value === 'string' ? mixin.normalize(value) : value; + } + }); + }); + } + } + function addNewAlias(key, alias) { + if (!(flags.aliases[key] && flags.aliases[key].length)) { + flags.aliases[key] = [alias]; + newAliases[alias] = true; + } + if (!(flags.aliases[alias] && flags.aliases[alias].length)) { + addNewAlias(alias, key); + } + } + function processValue(key, val, shouldStripQuotes) { + // strings may be quoted, clean this up as we assign values. + if (shouldStripQuotes) { + val = stripQuotes(val); + } + // handle parsing boolean arguments --foo=true --bar false. + if (checkAllAliases(key, flags.bools) || checkAllAliases(key, flags.counts)) { + if (typeof val === 'string') + val = val === 'true'; + } + let value = Array.isArray(val) + ? val.map(function (v) { return maybeCoerceNumber(key, v); }) + : maybeCoerceNumber(key, val); + // increment a count given as arg (either no value or value parsed as boolean) + if (checkAllAliases(key, flags.counts) && (isUndefined(value) || typeof value === 'boolean')) { + value = increment(); + } + // Set normalized value when key is in 'normalize' and in 'arrays' + if (checkAllAliases(key, flags.normalize) && checkAllAliases(key, flags.arrays)) { + if (Array.isArray(val)) + value = val.map((val) => { return mixin.normalize(val); }); + else + value = mixin.normalize(val); + } + return value; + } + function maybeCoerceNumber(key, value) { + if (!configuration['parse-positional-numbers'] && key === '_') + return value; + if (!checkAllAliases(key, flags.strings) && !checkAllAliases(key, flags.bools) && !Array.isArray(value)) { + const shouldCoerceNumber = looksLikeNumber(value) && configuration['parse-numbers'] && (Number.isSafeInteger(Math.floor(parseFloat(`${value}`)))); + if (shouldCoerceNumber || (!isUndefined(value) && checkAllAliases(key, flags.numbers))) { + value = Number(value); + } + } + return value; + } + // set args from config.json file, this should be + // applied last so that defaults can be applied. + function setConfig(argv) { + const configLookup = Object.create(null); + // expand defaults/aliases, in-case any happen to reference + // the config.json file. + applyDefaultsAndAliases(configLookup, flags.aliases, defaults); + Object.keys(flags.configs).forEach(function (configKey) { + const configPath = argv[configKey] || configLookup[configKey]; + if (configPath) { + try { + let config = null; + const resolvedConfigPath = mixin.resolve(mixin.cwd(), configPath); + const resolveConfig = flags.configs[configKey]; + if (typeof resolveConfig === 'function') { + try { + config = resolveConfig(resolvedConfigPath); + } + catch (e) { + config = e; + } + if (config instanceof Error) { + error = config; + return; + } + } + else { + config = mixin.require(resolvedConfigPath); + } + setConfigObject(config); + } + catch (ex) { + // Deno will receive a PermissionDenied error if an attempt is + // made to load config without the --allow-read flag: + if (ex.name === 'PermissionDenied') + error = ex; + else if (argv[configKey]) + error = Error(__('Invalid JSON config file: %s', configPath)); + } + } + }); + } + // set args from config object. + // it recursively checks nested objects. + function setConfigObject(config, prev) { + Object.keys(config).forEach(function (key) { + const value = config[key]; + const fullKey = prev ? prev + '.' + key : key; + // if the value is an inner object and we have dot-notation + // enabled, treat inner objects in config the same as + // heavily nested dot notations (foo.bar.apple). + if (typeof value === 'object' && value !== null && !Array.isArray(value) && configuration['dot-notation']) { + // if the value is an object but not an array, check nested object + setConfigObject(value, fullKey); + } + else { + // setting arguments via CLI takes precedence over + // values within the config file. + if (!hasKey(argv, fullKey.split('.')) || (checkAllAliases(fullKey, flags.arrays) && configuration['combine-arrays'])) { + setArg(fullKey, value); + } + } + }); + } + // set all config objects passed in opts + function setConfigObjects() { + if (typeof configObjects !== 'undefined') { + configObjects.forEach(function (configObject) { + setConfigObject(configObject); + }); + } + } + function applyEnvVars(argv, configOnly) { + if (typeof envPrefix === 'undefined') + return; + const prefix = typeof envPrefix === 'string' ? envPrefix : ''; + const env = mixin.env(); + Object.keys(env).forEach(function (envVar) { + if (prefix === '' || envVar.lastIndexOf(prefix, 0) === 0) { + // get array of nested keys and convert them to camel case + const keys = envVar.split('__').map(function (key, i) { + if (i === 0) { + key = key.substring(prefix.length); + } + return camelCase(key); + }); + if (((configOnly && flags.configs[keys.join('.')]) || !configOnly) && !hasKey(argv, keys)) { + setArg(keys.join('.'), env[envVar]); + } + } + }); + } + function applyCoercions(argv) { + let coerce; + const applied = new Set(); + Object.keys(argv).forEach(function (key) { + if (!applied.has(key)) { // If we haven't already coerced this option via one of its aliases + coerce = checkAllAliases(key, flags.coercions); + if (typeof coerce === 'function') { + try { + const value = maybeCoerceNumber(key, coerce(argv[key])); + ([].concat(flags.aliases[key] || [], key)).forEach(ali => { + applied.add(ali); + argv[ali] = value; + }); + } + catch (err) { + error = err; + } + } + } + }); + } + function setPlaceholderKeys(argv) { + flags.keys.forEach((key) => { + // don't set placeholder keys for dot notation options 'foo.bar'. + if (~key.indexOf('.')) + return; + if (typeof argv[key] === 'undefined') + argv[key] = undefined; + }); + return argv; + } + function applyDefaultsAndAliases(obj, aliases, defaults, canLog = false) { + Object.keys(defaults).forEach(function (key) { + if (!hasKey(obj, key.split('.'))) { + setKey(obj, key.split('.'), defaults[key]); + if (canLog) + defaulted[key] = true; + (aliases[key] || []).forEach(function (x) { + if (hasKey(obj, x.split('.'))) + return; + setKey(obj, x.split('.'), defaults[key]); + }); + } + }); + } + function hasKey(obj, keys) { + let o = obj; + if (!configuration['dot-notation']) + keys = [keys.join('.')]; + keys.slice(0, -1).forEach(function (key) { + o = (o[key] || {}); + }); + const key = keys[keys.length - 1]; + if (typeof o !== 'object') + return false; + else + return key in o; + } + function setKey(obj, keys, value) { + let o = obj; + if (!configuration['dot-notation']) + keys = [keys.join('.')]; + keys.slice(0, -1).forEach(function (key) { + // TODO(bcoe): in the next major version of yargs, switch to + // Object.create(null) for dot notation: + key = sanitizeKey(key); + if (typeof o === 'object' && o[key] === undefined) { + o[key] = {}; + } + if (typeof o[key] !== 'object' || Array.isArray(o[key])) { + // ensure that o[key] is an array, and that the last item is an empty object. + if (Array.isArray(o[key])) { + o[key].push({}); + } + else { + o[key] = [o[key], {}]; + } + // we want to update the empty object at the end of the o[key] array, so set o to that object + o = o[key][o[key].length - 1]; + } + else { + o = o[key]; + } + }); + // TODO(bcoe): in the next major version of yargs, switch to + // Object.create(null) for dot notation: + const key = sanitizeKey(keys[keys.length - 1]); + const isTypeArray = checkAllAliases(keys.join('.'), flags.arrays); + const isValueArray = Array.isArray(value); + let duplicate = configuration['duplicate-arguments-array']; + // nargs has higher priority than duplicate + if (!duplicate && checkAllAliases(key, flags.nargs)) { + duplicate = true; + if ((!isUndefined(o[key]) && flags.nargs[key] === 1) || (Array.isArray(o[key]) && o[key].length === flags.nargs[key])) { + o[key] = undefined; + } + } + if (value === increment()) { + o[key] = increment(o[key]); + } + else if (Array.isArray(o[key])) { + if (duplicate && isTypeArray && isValueArray) { + o[key] = configuration['flatten-duplicate-arrays'] ? o[key].concat(value) : (Array.isArray(o[key][0]) ? o[key] : [o[key]]).concat([value]); + } + else if (!duplicate && Boolean(isTypeArray) === Boolean(isValueArray)) { + o[key] = value; + } + else { + o[key] = o[key].concat([value]); + } + } + else if (o[key] === undefined && isTypeArray) { + o[key] = isValueArray ? value : [value]; + } + else if (duplicate && !(o[key] === undefined || + checkAllAliases(key, flags.counts) || + checkAllAliases(key, flags.bools))) { + o[key] = [o[key], value]; + } + else { + o[key] = value; + } + } + // extend the aliases list with inferred aliases. + function extendAliases(...args) { + args.forEach(function (obj) { + Object.keys(obj || {}).forEach(function (key) { + // short-circuit if we've already added a key + // to the aliases array, for example it might + // exist in both 'opts.default' and 'opts.key'. + if (flags.aliases[key]) + return; + flags.aliases[key] = [].concat(aliases[key] || []); + // For "--option-name", also set argv.optionName + flags.aliases[key].concat(key).forEach(function (x) { + if (/-/.test(x) && configuration['camel-case-expansion']) { + const c = camelCase(x); + if (c !== key && flags.aliases[key].indexOf(c) === -1) { + flags.aliases[key].push(c); + newAliases[c] = true; + } + } + }); + // For "--optionName", also set argv['option-name'] + flags.aliases[key].concat(key).forEach(function (x) { + if (x.length > 1 && /[A-Z]/.test(x) && configuration['camel-case-expansion']) { + const c = decamelize(x, '-'); + if (c !== key && flags.aliases[key].indexOf(c) === -1) { + flags.aliases[key].push(c); + newAliases[c] = true; + } + } + }); + flags.aliases[key].forEach(function (x) { + flags.aliases[x] = [key].concat(flags.aliases[key].filter(function (y) { + return x !== y; + })); + }); + }); + }); + } + function checkAllAliases(key, flag) { + const toCheck = [].concat(flags.aliases[key] || [], key); + const keys = Object.keys(flag); + const setAlias = toCheck.find(key => keys.includes(key)); + return setAlias ? flag[setAlias] : false; + } + function hasAnyFlag(key) { + const flagsKeys = Object.keys(flags); + const toCheck = [].concat(flagsKeys.map(k => flags[k])); + return toCheck.some(function (flag) { + return Array.isArray(flag) ? flag.includes(key) : flag[key]; + }); + } + function hasFlagsMatching(arg, ...patterns) { + const toCheck = [].concat(...patterns); + return toCheck.some(function (pattern) { + const match = arg.match(pattern); + return match && hasAnyFlag(match[1]); + }); + } + // based on a simplified version of the short flag group parsing logic + function hasAllShortFlags(arg) { + // if this is a negative number, or doesn't start with a single hyphen, it's not a short flag group + if (arg.match(negative) || !arg.match(/^-[^-]+/)) { + return false; + } + let hasAllFlags = true; + let next; + const letters = arg.slice(1).split(''); + for (let j = 0; j < letters.length; j++) { + next = arg.slice(j + 2); + if (!hasAnyFlag(letters[j])) { + hasAllFlags = false; + break; + } + if ((letters[j + 1] && letters[j + 1] === '=') || + next === '-' || + (/[A-Za-z]/.test(letters[j]) && /^-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) || + (letters[j + 1] && letters[j + 1].match(/\W/))) { + break; + } + } + return hasAllFlags; + } + function isUnknownOptionAsArg(arg) { + return configuration['unknown-options-as-args'] && isUnknownOption(arg); + } + function isUnknownOption(arg) { + arg = arg.replace(/^-{3,}/, '--'); + // ignore negative numbers + if (arg.match(negative)) { + return false; + } + // if this is a short option group and all of them are configured, it isn't unknown + if (hasAllShortFlags(arg)) { + return false; + } + // e.g. '--count=2' + const flagWithEquals = /^-+([^=]+?)=[\s\S]*$/; + // e.g. '-a' or '--arg' + const normalFlag = /^-+([^=]+?)$/; + // e.g. '-a-' + const flagEndingInHyphen = /^-+([^=]+?)-$/; + // e.g. '-abc123' + const flagEndingInDigits = /^-+([^=]+?\d+)$/; + // e.g. '-a/usr/local' + const flagEndingInNonWordCharacters = /^-+([^=]+?)\W+.*$/; + // check the different types of flag styles, including negatedBoolean, a pattern defined near the start of the parse method + return !hasFlagsMatching(arg, flagWithEquals, negatedBoolean, normalFlag, flagEndingInHyphen, flagEndingInDigits, flagEndingInNonWordCharacters); + } + // make a best effort to pick a default value + // for an option based on name and type. + function defaultValue(key) { + if (!checkAllAliases(key, flags.bools) && + !checkAllAliases(key, flags.counts) && + `${key}` in defaults) { + return defaults[key]; + } + else { + return defaultForType(guessType(key)); + } + } + // return a default value, given the type of a flag., + function defaultForType(type) { + const def = { + [DefaultValuesForTypeKey.BOOLEAN]: true, + [DefaultValuesForTypeKey.STRING]: '', + [DefaultValuesForTypeKey.NUMBER]: undefined, + [DefaultValuesForTypeKey.ARRAY]: [] + }; + return def[type]; + } + // given a flag, enforce a default type. + function guessType(key) { + let type = DefaultValuesForTypeKey.BOOLEAN; + if (checkAllAliases(key, flags.strings)) + type = DefaultValuesForTypeKey.STRING; + else if (checkAllAliases(key, flags.numbers)) + type = DefaultValuesForTypeKey.NUMBER; + else if (checkAllAliases(key, flags.bools)) + type = DefaultValuesForTypeKey.BOOLEAN; + else if (checkAllAliases(key, flags.arrays)) + type = DefaultValuesForTypeKey.ARRAY; + return type; + } + function isUndefined(num) { + return num === undefined; + } + // check user configuration settings for inconsistencies + function checkConfiguration() { + // count keys should not be set as array/narg + Object.keys(flags.counts).find(key => { + if (checkAllAliases(key, flags.arrays)) { + error = Error(__('Invalid configuration: %s, opts.count excludes opts.array.', key)); + return true; + } + else if (checkAllAliases(key, flags.nargs)) { + error = Error(__('Invalid configuration: %s, opts.count excludes opts.narg.', key)); + return true; + } + return false; + }); + } + return { + aliases: Object.assign({}, flags.aliases), + argv: Object.assign(argvReturn, argv), + configuration: configuration, + defaulted: Object.assign({}, defaulted), + error: error, + newAliases: Object.assign({}, newAliases) + }; + } +} +// if any aliases reference each other, we should +// merge them together. +function combineAliases(aliases) { + const aliasArrays = []; + const combined = Object.create(null); + let change = true; + // turn alias lookup hash {key: ['alias1', 'alias2']} into + // a simple array ['key', 'alias1', 'alias2'] + Object.keys(aliases).forEach(function (key) { + aliasArrays.push([].concat(aliases[key], key)); + }); + // combine arrays until zero changes are + // made in an iteration. + while (change) { + change = false; + for (let i = 0; i < aliasArrays.length; i++) { + for (let ii = i + 1; ii < aliasArrays.length; ii++) { + const intersect = aliasArrays[i].filter(function (v) { + return aliasArrays[ii].indexOf(v) !== -1; + }); + if (intersect.length) { + aliasArrays[i] = aliasArrays[i].concat(aliasArrays[ii]); + aliasArrays.splice(ii, 1); + change = true; + break; + } + } + } + } + // map arrays back to the hash-lookup (de-dupe while + // we're at it). + aliasArrays.forEach(function (aliasArray) { + aliasArray = aliasArray.filter(function (v, i, self) { + return self.indexOf(v) === i; + }); + const lastAlias = aliasArray.pop(); + if (lastAlias !== undefined && typeof lastAlias === 'string') { + combined[lastAlias] = aliasArray; + } + }); + return combined; +} +// this function should only be called when a count is given as an arg +// it is NOT called to set a default value +// thus we can start the count at 1 instead of 0 +function increment(orig) { + return orig !== undefined ? orig + 1 : 1; +} +// TODO(bcoe): in the next major version of yargs, switch to +// Object.create(null) for dot notation: +function sanitizeKey(key) { + if (key === '__proto__') + return '___proto___'; + return key; +} +function stripQuotes(val) { + return (typeof val === 'string' && + (val[0] === "'" || val[0] === '"') && + val[val.length - 1] === val[0]) + ? val.substring(1, val.length - 1) + : val; +} diff --git a/node_modules/yargs-parser/package.json b/node_modules/yargs-parser/package.json new file mode 100644 index 0000000..decd0c3 --- /dev/null +++ b/node_modules/yargs-parser/package.json @@ -0,0 +1,92 @@ +{ + "name": "yargs-parser", + "version": "21.1.1", + "description": "the mighty option parser used by yargs", + "main": "build/index.cjs", + "exports": { + ".": [ + { + "import": "./build/lib/index.js", + "require": "./build/index.cjs" + }, + "./build/index.cjs" + ], + "./browser": [ + "./browser.js" + ] + }, + "type": "module", + "module": "./build/lib/index.js", + "scripts": { + "check": "standardx '**/*.ts' && standardx '**/*.js' && standardx '**/*.cjs'", + "fix": "standardx --fix '**/*.ts' && standardx --fix '**/*.js' && standardx --fix '**/*.cjs'", + "pretest": "rimraf build && tsc -p tsconfig.test.json && cross-env NODE_ENV=test npm run build:cjs", + "test": "c8 --reporter=text --reporter=html mocha test/*.cjs", + "test:esm": "c8 --reporter=text --reporter=html mocha test/*.mjs", + "test:browser": "start-server-and-test 'serve ./ -p 8080' http://127.0.0.1:8080/package.json 'node ./test/browser/yargs-test.cjs'", + "pretest:typescript": "npm run pretest", + "test:typescript": "c8 mocha ./build/test/typescript/*.js", + "coverage": "c8 report --check-coverage", + "precompile": "rimraf build", + "compile": "tsc", + "postcompile": "npm run build:cjs", + "build:cjs": "rollup -c", + "prepare": "npm run compile" + }, + "repository": { + "type": "git", + "url": "https://github.com/yargs/yargs-parser.git" + }, + "keywords": [ + "argument", + "parser", + "yargs", + "command", + "cli", + "parsing", + "option", + "args", + "argument" + ], + "author": "Ben Coe ", + "license": "ISC", + "devDependencies": { + "@types/chai": "^4.2.11", + "@types/mocha": "^9.0.0", + "@types/node": "^16.11.4", + "@typescript-eslint/eslint-plugin": "^3.10.1", + "@typescript-eslint/parser": "^3.10.1", + "c8": "^7.3.0", + "chai": "^4.2.0", + "cross-env": "^7.0.2", + "eslint": "^7.0.0", + "eslint-plugin-import": "^2.20.1", + "eslint-plugin-node": "^11.0.0", + "gts": "^3.0.0", + "mocha": "^10.0.0", + "puppeteer": "^16.0.0", + "rimraf": "^3.0.2", + "rollup": "^2.22.1", + "rollup-plugin-cleanup": "^3.1.1", + "rollup-plugin-ts": "^3.0.2", + "serve": "^14.0.0", + "standardx": "^7.0.0", + "start-server-and-test": "^1.11.2", + "ts-transform-default-export": "^1.0.2", + "typescript": "^4.0.0" + }, + "files": [ + "browser.js", + "build", + "!*.d.ts", + "!*.d.cts" + ], + "engines": { + "node": ">=12" + }, + "standardx": { + "ignore": [ + "build" + ] + } +} diff --git a/node_modules/yargs/LICENSE b/node_modules/yargs/LICENSE new file mode 100644 index 0000000..b0145ca --- /dev/null +++ b/node_modules/yargs/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright 2010 James Halliday (mail@substack.net); Modified work Copyright 2014 Contributors (ben@npmjs.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. diff --git a/node_modules/yargs/README.md b/node_modules/yargs/README.md new file mode 100644 index 0000000..51f5b22 --- /dev/null +++ b/node_modules/yargs/README.md @@ -0,0 +1,204 @@ +

+ +

+

Yargs

+

+ Yargs be a node.js library fer hearties tryin' ter parse optstrings +

+ +
+ +![ci](https://github.com/yargs/yargs/workflows/ci/badge.svg) +[![NPM version][npm-image]][npm-url] +[![js-standard-style][standard-image]][standard-url] +[![Coverage][coverage-image]][coverage-url] +[![Conventional Commits][conventional-commits-image]][conventional-commits-url] +[![Slack][slack-image]][slack-url] + +## Description +Yargs helps you build interactive command line tools, by parsing arguments and generating an elegant user interface. + +It gives you: + +* commands and (grouped) options (`my-program.js serve --port=5000`). +* a dynamically generated help menu based on your arguments: + +``` +mocha [spec..] + +Run tests with Mocha + +Commands + mocha inspect [spec..] Run tests with Mocha [default] + mocha init create a client-side Mocha setup at + +Rules & Behavior + --allow-uncaught Allow uncaught errors to propagate [boolean] + --async-only, -A Require all tests to use a callback (async) or + return a Promise [boolean] +``` + +* bash-completion shortcuts for commands and options. +* and [tons more](/docs/api.md). + +## Installation + +Stable version: +```bash +npm i yargs +``` + +Bleeding edge version with the most recent features: +```bash +npm i yargs@next +``` + +## Usage + +### Simple Example + +```javascript +#!/usr/bin/env node +const yargs = require('yargs/yargs') +const { hideBin } = require('yargs/helpers') +const argv = yargs(hideBin(process.argv)).argv + +if (argv.ships > 3 && argv.distance < 53.5) { + console.log('Plunder more riffiwobbles!') +} else { + console.log('Retreat from the xupptumblers!') +} +``` + +```bash +$ ./plunder.js --ships=4 --distance=22 +Plunder more riffiwobbles! + +$ ./plunder.js --ships 12 --distance 98.7 +Retreat from the xupptumblers! +``` + +> Note: `hideBin` is a shorthand for [`process.argv.slice(2)`](https://nodejs.org/en/knowledge/command-line/how-to-parse-command-line-arguments/). It has the benefit that it takes into account variations in some environments, e.g., [Electron](https://github.com/electron/electron/issues/4690). + +### Complex Example + +```javascript +#!/usr/bin/env node +const yargs = require('yargs/yargs') +const { hideBin } = require('yargs/helpers') + +yargs(hideBin(process.argv)) + .command('serve [port]', 'start the server', (yargs) => { + return yargs + .positional('port', { + describe: 'port to bind on', + default: 5000 + }) + }, (argv) => { + if (argv.verbose) console.info(`start server on :${argv.port}`) + serve(argv.port) + }) + .option('verbose', { + alias: 'v', + type: 'boolean', + description: 'Run with verbose logging' + }) + .parse() +``` + +Run the example above with `--help` to see the help for the application. + +## Supported Platforms + +### TypeScript + +yargs has type definitions at [@types/yargs][type-definitions]. + +``` +npm i @types/yargs --save-dev +``` + +See usage examples in [docs](/docs/typescript.md). + +### Deno + +As of `v16`, `yargs` supports [Deno](https://github.com/denoland/deno): + +```typescript +import yargs from 'https://deno.land/x/yargs/deno.ts' +import { Arguments } from 'https://deno.land/x/yargs/deno-types.ts' + +yargs(Deno.args) + .command('download ', 'download a list of files', (yargs: any) => { + return yargs.positional('files', { + describe: 'a list of files to do something with' + }) + }, (argv: Arguments) => { + console.info(argv) + }) + .strictCommands() + .demandCommand(1) + .parse() +``` + +### ESM + +As of `v16`,`yargs` supports ESM imports: + +```js +import yargs from 'yargs' +import { hideBin } from 'yargs/helpers' + +yargs(hideBin(process.argv)) + .command('curl ', 'fetch the contents of the URL', () => {}, (argv) => { + console.info(argv) + }) + .demandCommand(1) + .parse() +``` + +### Usage in Browser + +See examples of using yargs in the browser in [docs](/docs/browser.md). + +## Community + +Having problems? want to contribute? join our [community slack](http://devtoolscommunity.herokuapp.com). + +## Documentation + +### Table of Contents + +* [Yargs' API](/docs/api.md) +* [Examples](/docs/examples.md) +* [Parsing Tricks](/docs/tricks.md) + * [Stop the Parser](/docs/tricks.md#stop) + * [Negating Boolean Arguments](/docs/tricks.md#negate) + * [Numbers](/docs/tricks.md#numbers) + * [Arrays](/docs/tricks.md#arrays) + * [Objects](/docs/tricks.md#objects) + * [Quotes](/docs/tricks.md#quotes) +* [Advanced Topics](/docs/advanced.md) + * [Composing Your App Using Commands](/docs/advanced.md#commands) + * [Building Configurable CLI Apps](/docs/advanced.md#configuration) + * [Customizing Yargs' Parser](/docs/advanced.md#customizing) + * [Bundling yargs](/docs/bundling.md) +* [Contributing](/contributing.md) + +## Supported Node.js Versions + +Libraries in this ecosystem make a best effort to track +[Node.js' release schedule](https://nodejs.org/en/about/releases/). Here's [a +post on why we think this is important](https://medium.com/the-node-js-collection/maintainers-should-consider-following-node-js-release-schedule-ab08ed4de71a). + +[npm-url]: https://www.npmjs.com/package/yargs +[npm-image]: https://img.shields.io/npm/v/yargs.svg +[standard-image]: https://img.shields.io/badge/code%20style-standard-brightgreen.svg +[standard-url]: http://standardjs.com/ +[conventional-commits-image]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg +[conventional-commits-url]: https://conventionalcommits.org/ +[slack-image]: http://devtoolscommunity.herokuapp.com/badge.svg +[slack-url]: http://devtoolscommunity.herokuapp.com +[type-definitions]: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/yargs +[coverage-image]: https://img.shields.io/nycrc/yargs/yargs +[coverage-url]: https://github.com/yargs/yargs/blob/main/.nycrc diff --git a/node_modules/yargs/browser.d.ts b/node_modules/yargs/browser.d.ts new file mode 100644 index 0000000..21f3fc6 --- /dev/null +++ b/node_modules/yargs/browser.d.ts @@ -0,0 +1,5 @@ +import {YargsFactory} from './build/lib/yargs-factory'; + +declare const Yargs: ReturnType; + +export default Yargs; diff --git a/node_modules/yargs/browser.mjs b/node_modules/yargs/browser.mjs new file mode 100644 index 0000000..2d0d6e9 --- /dev/null +++ b/node_modules/yargs/browser.mjs @@ -0,0 +1,7 @@ +// Bootstrap yargs for browser: +import browserPlatformShim from './lib/platform-shims/browser.mjs'; +import {YargsFactory} from './build/lib/yargs-factory.js'; + +const Yargs = YargsFactory(browserPlatformShim); + +export default Yargs; diff --git a/node_modules/yargs/build/index.cjs b/node_modules/yargs/build/index.cjs new file mode 100644 index 0000000..e9cf013 --- /dev/null +++ b/node_modules/yargs/build/index.cjs @@ -0,0 +1 @@ +"use strict";var t=require("assert");class e extends Error{constructor(t){super(t||"yargs error"),this.name="YError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}}let s,i=[];function n(t,o,a,h){s=h;let l={};if(Object.prototype.hasOwnProperty.call(t,"extends")){if("string"!=typeof t.extends)return l;const r=/\.json|\..*rc$/.test(t.extends);let h=null;if(r)h=function(t,e){return s.path.resolve(t,e)}(o,t.extends);else try{h=require.resolve(t.extends)}catch(e){return t}!function(t){if(i.indexOf(t)>-1)throw new e(`Circular extended configurations: '${t}'.`)}(h),i.push(h),l=r?JSON.parse(s.readFileSync(h,"utf8")):require(t.extends),delete t.extends,l=n(l,s.path.dirname(h),a,s)}return i=[],a?r(l,t):Object.assign({},l,t)}function r(t,e){const s={};function i(t){return t&&"object"==typeof t&&!Array.isArray(t)}Object.assign(s,t);for(const n of Object.keys(e))i(e[n])&&i(s[n])?s[n]=r(t[n],e[n]):s[n]=e[n];return s}function o(t){const e=t.replace(/\s{2,}/g," ").split(/\s+(?![^[]*]|[^<]*>)/),s=/\.*[\][<>]/g,i=e.shift();if(!i)throw new Error(`No command found in: ${t}`);const n={cmd:i.replace(s,""),demanded:[],optional:[]};return e.forEach(((t,i)=>{let r=!1;t=t.replace(/\s/g,""),/\.+[\]>]/.test(t)&&i===e.length-1&&(r=!0),/^\[/.test(t)?n.optional.push({cmd:t.replace(s,"").split("|"),variadic:r}):n.demanded.push({cmd:t.replace(s,"").split("|"),variadic:r})})),n}const a=["first","second","third","fourth","fifth","sixth"];function h(t,s,i){try{let n=0;const[r,a,h]="object"==typeof t?[{demanded:[],optional:[]},t,s]:[o(`cmd ${t}`),s,i],f=[].slice.call(a);for(;f.length&&void 0===f[f.length-1];)f.pop();const d=h||f.length;if(du)throw new e(`Too many arguments provided. Expected max ${u} but received ${d}.`);r.demanded.forEach((t=>{const e=l(f.shift());0===t.cmd.filter((t=>t===e||"*"===t)).length&&c(e,t.cmd,n),n+=1})),r.optional.forEach((t=>{if(0===f.length)return;const e=l(f.shift());0===t.cmd.filter((t=>t===e||"*"===t)).length&&c(e,t.cmd,n),n+=1}))}catch(t){console.warn(t.stack)}}function l(t){return Array.isArray(t)?"array":null===t?"null":typeof t}function c(t,s,i){throw new e(`Invalid ${a[i]||"manyith"} argument. Expected ${s.join(" or ")} but received ${t}.`)}function f(t){return!!t&&!!t.then&&"function"==typeof t.then}function d(t,e,s,i){s.assert.notStrictEqual(t,e,i)}function u(t,e){e.assert.strictEqual(typeof t,"string")}function p(t){return Object.keys(t)}function g(t={},e=(()=>!0)){const s={};return p(t).forEach((i=>{e(i,t[i])&&(s[i]=t[i])})),s}function m(){return process.versions.electron&&!process.defaultApp?0:1}function y(){return process.argv[m()]}var b=Object.freeze({__proto__:null,hideBin:function(t){return t.slice(m()+1)},getProcessArgvBin:y});function v(t,e,s,i){if("a"===s&&!i)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof e?t!==e||!i:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===s?i:"a"===s?i.call(t):i?i.value:e.get(t)}function O(t,e,s,i,n){if("m"===i)throw new TypeError("Private method is not writable");if("a"===i&&!n)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof e?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===i?n.call(t,s):n?n.value=s:e.set(t,s),s}class w{constructor(t){this.globalMiddleware=[],this.frozens=[],this.yargs=t}addMiddleware(t,e,s=!0,i=!1){if(h(" [boolean] [boolean] [boolean]",[t,e,s],arguments.length),Array.isArray(t)){for(let i=0;i{const i=[...s[e]||[],e];return!t.option||!i.includes(t.option)})),t.option=e,this.addMiddleware(t,!0,!0,!0)}getMiddleware(){return this.globalMiddleware}freeze(){this.frozens.push([...this.globalMiddleware])}unfreeze(){const t=this.frozens.pop();void 0!==t&&(this.globalMiddleware=t)}reset(){this.globalMiddleware=this.globalMiddleware.filter((t=>t.global))}}function C(t,e,s,i){return s.reduce(((t,s)=>{if(s.applyBeforeValidation!==i)return t;if(s.mutates){if(s.applied)return t;s.applied=!0}if(f(t))return t.then((t=>Promise.all([t,s(t,e)]))).then((([t,e])=>Object.assign(t,e)));{const i=s(t,e);return f(i)?i.then((e=>Object.assign(t,e))):Object.assign(t,i)}}),t)}function j(t,e,s=(t=>{throw t})){try{const s="function"==typeof t?t():t;return f(s)?s.then((t=>e(t))):e(s)}catch(t){return s(t)}}const M=/(^\*)|(^\$0)/;class _{constructor(t,e,s,i){this.requireCache=new Set,this.handlers={},this.aliasMap={},this.frozens=[],this.shim=i,this.usage=t,this.globalMiddleware=s,this.validation=e}addDirectory(t,e,s,i){"boolean"!=typeof(i=i||{}).recurse&&(i.recurse=!1),Array.isArray(i.extensions)||(i.extensions=["js"]);const n="function"==typeof i.visit?i.visit:t=>t;i.visit=(t,e,s)=>{const i=n(t,e,s);if(i){if(this.requireCache.has(e))return i;this.requireCache.add(e),this.addHandler(i)}return i},this.shim.requireDirectory({require:e,filename:s},t,i)}addHandler(t,e,s,i,n,r){let a=[];const h=function(t){return t?t.map((t=>(t.applyBeforeValidation=!1,t))):[]}(n);if(i=i||(()=>{}),Array.isArray(t))if(function(t){return t.every((t=>"string"==typeof t))}(t))[t,...a]=t;else for(const e of t)this.addHandler(e);else{if(function(t){return"object"==typeof t&&!Array.isArray(t)}(t)){let e=Array.isArray(t.command)||"string"==typeof t.command?t.command:this.moduleName(t);return t.aliases&&(e=[].concat(e).concat(t.aliases)),void this.addHandler(e,this.extractDesc(t),t.builder,t.handler,t.middlewares,t.deprecated)}if(k(s))return void this.addHandler([t].concat(a),e,s.builder,s.handler,s.middlewares,s.deprecated)}if("string"==typeof t){const n=o(t);a=a.map((t=>o(t).cmd));let l=!1;const c=[n.cmd].concat(a).filter((t=>!M.test(t)||(l=!0,!1)));0===c.length&&l&&c.push("$0"),l&&(n.cmd=c[0],a=c.slice(1),t=t.replace(M,n.cmd)),a.forEach((t=>{this.aliasMap[t]=n.cmd})),!1!==e&&this.usage.command(t,e,l,a,r),this.handlers[n.cmd]={original:t,description:e,handler:i,builder:s||{},middlewares:h,deprecated:r,demanded:n.demanded,optional:n.optional},l&&(this.defaultCommand=this.handlers[n.cmd])}}getCommandHandlers(){return this.handlers}getCommands(){return Object.keys(this.handlers).concat(Object.keys(this.aliasMap))}hasDefaultCommand(){return!!this.defaultCommand}runCommand(t,e,s,i,n,r){const o=this.handlers[t]||this.handlers[this.aliasMap[t]]||this.defaultCommand,a=e.getInternalMethods().getContext(),h=a.commands.slice(),l=!t;t&&(a.commands.push(t),a.fullCommands.push(o.original));const c=this.applyBuilderUpdateUsageAndParse(l,o,e,s.aliases,h,i,n,r);return f(c)?c.then((t=>this.applyMiddlewareAndGetResult(l,o,t.innerArgv,a,n,t.aliases,e))):this.applyMiddlewareAndGetResult(l,o,c.innerArgv,a,n,c.aliases,e)}applyBuilderUpdateUsageAndParse(t,e,s,i,n,r,o,a){const h=e.builder;let l=s;if(x(h)){s.getInternalMethods().getUsageInstance().freeze();const c=h(s.getInternalMethods().reset(i),a);if(f(c))return c.then((i=>{var a;return l=(a=i)&&"function"==typeof a.getInternalMethods?i:s,this.parseAndUpdateUsage(t,e,l,n,r,o)}))}else(function(t){return"object"==typeof t})(h)&&(s.getInternalMethods().getUsageInstance().freeze(),l=s.getInternalMethods().reset(i),Object.keys(e.builder).forEach((t=>{l.option(t,h[t])})));return this.parseAndUpdateUsage(t,e,l,n,r,o)}parseAndUpdateUsage(t,e,s,i,n,r){t&&s.getInternalMethods().getUsageInstance().unfreeze(!0),this.shouldUpdateUsage(s)&&s.getInternalMethods().getUsageInstance().usage(this.usageFromParentCommandsCommandHandler(i,e),e.description);const o=s.getInternalMethods().runYargsParserAndExecuteCommands(null,void 0,!0,n,r);return f(o)?o.then((t=>({aliases:s.parsed.aliases,innerArgv:t}))):{aliases:s.parsed.aliases,innerArgv:o}}shouldUpdateUsage(t){return!t.getInternalMethods().getUsageInstance().getUsageDisabled()&&0===t.getInternalMethods().getUsageInstance().getUsage().length}usageFromParentCommandsCommandHandler(t,e){const s=M.test(e.original)?e.original.replace(M,"").trim():e.original,i=t.filter((t=>!M.test(t)));return i.push(s),`$0 ${i.join(" ")}`}handleValidationAndGetResult(t,e,s,i,n,r,o,a){if(!r.getInternalMethods().getHasOutput()){const e=r.getInternalMethods().runValidation(n,a,r.parsed.error,t);s=j(s,(t=>(e(t),t)))}if(e.handler&&!r.getInternalMethods().getHasOutput()){r.getInternalMethods().setHasOutput();const i=!!r.getOptions().configuration["populate--"];r.getInternalMethods().postProcess(s,i,!1,!1),s=j(s=C(s,r,o,!1),(t=>{const s=e.handler(t);return f(s)?s.then((()=>t)):t})),t||r.getInternalMethods().getUsageInstance().cacheHelpMessage(),f(s)&&!r.getInternalMethods().hasParseCallback()&&s.catch((t=>{try{r.getInternalMethods().getUsageInstance().fail(null,t)}catch(t){}}))}return t||(i.commands.pop(),i.fullCommands.pop()),s}applyMiddlewareAndGetResult(t,e,s,i,n,r,o){let a={};if(n)return s;o.getInternalMethods().getHasOutput()||(a=this.populatePositionals(e,s,i,o));const h=this.globalMiddleware.getMiddleware().slice(0).concat(e.middlewares),l=C(s,o,h,!0);return f(l)?l.then((s=>this.handleValidationAndGetResult(t,e,s,i,r,o,h,a))):this.handleValidationAndGetResult(t,e,l,i,r,o,h,a)}populatePositionals(t,e,s,i){e._=e._.slice(s.commands.length);const n=t.demanded.slice(0),r=t.optional.slice(0),o={};for(this.validation.positionalCount(n.length,e._.length);n.length;){const t=n.shift();this.populatePositional(t,e,o)}for(;r.length;){const t=r.shift();this.populatePositional(t,e,o)}return e._=s.commands.concat(e._.map((t=>""+t))),this.postProcessPositionals(e,o,this.cmdToParseOptions(t.original),i),o}populatePositional(t,e,s){const i=t.cmd[0];t.variadic?s[i]=e._.splice(0).map(String):e._.length&&(s[i]=[String(e._.shift())])}cmdToParseOptions(t){const e={array:[],default:{},alias:{},demand:{}},s=o(t);return s.demanded.forEach((t=>{const[s,...i]=t.cmd;t.variadic&&(e.array.push(s),e.default[s]=[]),e.alias[s]=i,e.demand[s]=!0})),s.optional.forEach((t=>{const[s,...i]=t.cmd;t.variadic&&(e.array.push(s),e.default[s]=[]),e.alias[s]=i})),e}postProcessPositionals(t,e,s,i){const n=Object.assign({},i.getOptions());n.default=Object.assign(s.default,n.default);for(const t of Object.keys(s.alias))n.alias[t]=(n.alias[t]||[]).concat(s.alias[t]);n.array=n.array.concat(s.array),n.config={};const r=[];if(Object.keys(e).forEach((t=>{e[t].map((e=>{n.configuration["unknown-options-as-args"]&&(n.key[t]=!0),r.push(`--${t}`),r.push(e)}))})),!r.length)return;const o=Object.assign({},n.configuration,{"populate--":!1}),a=this.shim.Parser.detailed(r,Object.assign({},n,{configuration:o}));if(a.error)i.getInternalMethods().getUsageInstance().fail(a.error.message,a.error);else{const s=Object.keys(e);Object.keys(e).forEach((t=>{s.push(...a.aliases[t])})),Object.keys(a.argv).forEach((n=>{s.includes(n)&&(e[n]||(e[n]=a.argv[n]),!this.isInConfigs(i,n)&&!this.isDefaulted(i,n)&&Object.prototype.hasOwnProperty.call(t,n)&&Object.prototype.hasOwnProperty.call(a.argv,n)&&(Array.isArray(t[n])||Array.isArray(a.argv[n]))?t[n]=[].concat(t[n],a.argv[n]):t[n]=a.argv[n])}))}}isDefaulted(t,e){const{default:s}=t.getOptions();return Object.prototype.hasOwnProperty.call(s,e)||Object.prototype.hasOwnProperty.call(s,this.shim.Parser.camelCase(e))}isInConfigs(t,e){const{configObjects:s}=t.getOptions();return s.some((t=>Object.prototype.hasOwnProperty.call(t,e)))||s.some((t=>Object.prototype.hasOwnProperty.call(t,this.shim.Parser.camelCase(e))))}runDefaultBuilderOn(t){if(!this.defaultCommand)return;if(this.shouldUpdateUsage(t)){const e=M.test(this.defaultCommand.original)?this.defaultCommand.original:this.defaultCommand.original.replace(/^[^[\]<>]*/,"$0 ");t.getInternalMethods().getUsageInstance().usage(e,this.defaultCommand.description)}const e=this.defaultCommand.builder;if(x(e))return e(t,!0);k(e)||Object.keys(e).forEach((s=>{t.option(s,e[s])}))}moduleName(t){const e=function(t){if("undefined"==typeof require)return null;for(let e,s=0,i=Object.keys(require.cache);s{const s=e;s._handle&&s.isTTY&&"function"==typeof s._handle.setBlocking&&s._handle.setBlocking(t)}))}function A(t){return"boolean"==typeof t}function P(t,s){const i=s.y18n.__,n={},r=[];n.failFn=function(t){r.push(t)};let o=null,a=null,h=!0;n.showHelpOnFail=function(e=!0,s){const[i,r]="string"==typeof e?[!0,e]:[e,s];return t.getInternalMethods().isGlobalContext()&&(a=r),o=r,h=i,n};let l=!1;n.fail=function(s,i){const c=t.getInternalMethods().getLoggerInstance();if(!r.length){if(t.getExitProcess()&&E(!0),!l){l=!0,h&&(t.showHelp("error"),c.error()),(s||i)&&c.error(s||i);const e=o||a;e&&((s||i)&&c.error(""),c.error(e))}if(i=i||new e(s),t.getExitProcess())return t.exit(1);if(t.getInternalMethods().hasParseCallback())return t.exit(1,i);throw i}for(let t=r.length-1;t>=0;--t){const e=r[t];if(A(e)){if(i)throw i;if(s)throw Error(s)}else e(s,i,n)}};let c=[],f=!1;n.usage=(t,e)=>null===t?(f=!0,c=[],n):(f=!1,c.push([t,e||""]),n),n.getUsage=()=>c,n.getUsageDisabled=()=>f,n.getPositionalGroupName=()=>i("Positionals:");let d=[];n.example=(t,e)=>{d.push([t,e||""])};let u=[];n.command=function(t,e,s,i,n=!1){s&&(u=u.map((t=>(t[2]=!1,t)))),u.push([t,e||"",s,i,n])},n.getCommands=()=>u;let p={};n.describe=function(t,e){Array.isArray(t)?t.forEach((t=>{n.describe(t,e)})):"object"==typeof t?Object.keys(t).forEach((e=>{n.describe(e,t[e])})):p[t]=e},n.getDescriptions=()=>p;let m=[];n.epilog=t=>{m.push(t)};let y,b=!1;n.wrap=t=>{b=!0,y=t},n.getWrap=()=>s.getEnv("YARGS_DISABLE_WRAP")?null:(b||(y=function(){const t=80;return s.process.stdColumns?Math.min(t,s.process.stdColumns):t}(),b=!0),y);const v="__yargsString__:";function O(t,e,i){let n=0;return Array.isArray(t)||(t=Object.values(t).map((t=>[t]))),t.forEach((t=>{n=Math.max(s.stringWidth(i?`${i} ${I(t[0])}`:I(t[0]))+$(t[0]),n)})),e&&(n=Math.min(n,parseInt((.5*e).toString(),10))),n}let w;function C(e){return t.getOptions().hiddenOptions.indexOf(e)<0||t.parsed.argv[t.getOptions().showHiddenOpt]}function j(t,e){let s=`[${i("default:")} `;if(void 0===t&&!e)return null;if(e)s+=e;else switch(typeof t){case"string":s+=`"${t}"`;break;case"object":s+=JSON.stringify(t);break;default:s+=t}return`${s}]`}n.deferY18nLookup=t=>v+t,n.help=function(){if(w)return w;!function(){const e=t.getDemandedOptions(),s=t.getOptions();(Object.keys(s.alias)||[]).forEach((i=>{s.alias[i].forEach((r=>{p[r]&&n.describe(i,p[r]),r in e&&t.demandOption(i,e[r]),s.boolean.includes(r)&&t.boolean(i),s.count.includes(r)&&t.count(i),s.string.includes(r)&&t.string(i),s.normalize.includes(r)&&t.normalize(i),s.array.includes(r)&&t.array(i),s.number.includes(r)&&t.number(i)}))}))}();const e=t.customScriptName?t.$0:s.path.basename(t.$0),r=t.getDemandedOptions(),o=t.getDemandedCommands(),a=t.getDeprecatedOptions(),h=t.getGroups(),l=t.getOptions();let g=[];g=g.concat(Object.keys(p)),g=g.concat(Object.keys(r)),g=g.concat(Object.keys(o)),g=g.concat(Object.keys(l.default)),g=g.filter(C),g=Object.keys(g.reduce(((t,e)=>("_"!==e&&(t[e]=!0),t)),{}));const y=n.getWrap(),b=s.cliui({width:y,wrap:!!y});if(!f)if(c.length)c.forEach((t=>{b.div({text:`${t[0].replace(/\$0/g,e)}`}),t[1]&&b.div({text:`${t[1]}`,padding:[1,0,0,0]})})),b.div();else if(u.length){let t=null;t=o._?`${e} <${i("command")}>\n`:`${e} [${i("command")}]\n`,b.div(`${t}`)}if(u.length>1||1===u.length&&!u[0][2]){b.div(i("Commands:"));const s=t.getInternalMethods().getContext(),n=s.commands.length?`${s.commands.join(" ")} `:"";!0===t.getInternalMethods().getParserConfiguration()["sort-commands"]&&(u=u.sort(((t,e)=>t[0].localeCompare(e[0]))));const r=e?`${e} `:"";u.forEach((t=>{const s=`${r}${n}${t[0].replace(/^\$0 ?/,"")}`;b.span({text:s,padding:[0,2,0,2],width:O(u,y,`${e}${n}`)+4},{text:t[1]});const o=[];t[2]&&o.push(`[${i("default")}]`),t[3]&&t[3].length&&o.push(`[${i("aliases:")} ${t[3].join(", ")}]`),t[4]&&("string"==typeof t[4]?o.push(`[${i("deprecated: %s",t[4])}]`):o.push(`[${i("deprecated")}]`)),o.length?b.div({text:o.join(" "),padding:[0,0,0,2],align:"right"}):b.div()})),b.div()}const M=(Object.keys(l.alias)||[]).concat(Object.keys(t.parsed.newAliases)||[]);g=g.filter((e=>!t.parsed.newAliases[e]&&M.every((t=>-1===(l.alias[t]||[]).indexOf(e)))));const _=i("Options:");h[_]||(h[_]=[]),function(t,e,s,i){let n=[],r=null;Object.keys(s).forEach((t=>{n=n.concat(s[t])})),t.forEach((t=>{r=[t].concat(e[t]),r.some((t=>-1!==n.indexOf(t)))||s[i].push(t)}))}(g,l.alias,h,_);const k=t=>/^--/.test(I(t)),x=Object.keys(h).filter((t=>h[t].length>0)).map((t=>({groupName:t,normalizedKeys:h[t].filter(C).map((t=>{if(M.includes(t))return t;for(let e,s=0;void 0!==(e=M[s]);s++)if((l.alias[e]||[]).includes(t))return e;return t}))}))).filter((({normalizedKeys:t})=>t.length>0)).map((({groupName:t,normalizedKeys:e})=>{const s=e.reduce(((e,s)=>(e[s]=[s].concat(l.alias[s]||[]).map((e=>t===n.getPositionalGroupName()?e:(/^[0-9]$/.test(e)?l.boolean.includes(s)?"-":"--":e.length>1?"--":"-")+e)).sort(((t,e)=>k(t)===k(e)?0:k(t)?1:-1)).join(", "),e)),{});return{groupName:t,normalizedKeys:e,switches:s}}));if(x.filter((({groupName:t})=>t!==n.getPositionalGroupName())).some((({normalizedKeys:t,switches:e})=>!t.every((t=>k(e[t])))))&&x.filter((({groupName:t})=>t!==n.getPositionalGroupName())).forEach((({normalizedKeys:t,switches:e})=>{t.forEach((t=>{var s,i;k(e[t])&&(e[t]=(s=e[t],i=4,S(s)?{text:s.text,indentation:s.indentation+i}:{text:s,indentation:i}))}))})),x.forEach((({groupName:e,normalizedKeys:s,switches:o})=>{b.div(e),s.forEach((e=>{const s=o[e];let h=p[e]||"",c=null;h.includes(v)&&(h=i(h.substring(16))),l.boolean.includes(e)&&(c=`[${i("boolean")}]`),l.count.includes(e)&&(c=`[${i("count")}]`),l.string.includes(e)&&(c=`[${i("string")}]`),l.normalize.includes(e)&&(c=`[${i("string")}]`),l.array.includes(e)&&(c=`[${i("array")}]`),l.number.includes(e)&&(c=`[${i("number")}]`);const f=[e in a?(d=a[e],"string"==typeof d?`[${i("deprecated: %s",d)}]`:`[${i("deprecated")}]`):null,c,e in r?`[${i("required")}]`:null,l.choices&&l.choices[e]?`[${i("choices:")} ${n.stringifiedValues(l.choices[e])}]`:null,j(l.default[e],l.defaultDescription[e])].filter(Boolean).join(" ");var d;b.span({text:I(s),padding:[0,2,0,2+$(s)],width:O(o,y)+4},h);const u=!0===t.getInternalMethods().getUsageConfiguration()["hide-types"];f&&!u?b.div({text:f,padding:[0,0,0,2],align:"right"}):b.div()})),b.div()})),d.length&&(b.div(i("Examples:")),d.forEach((t=>{t[0]=t[0].replace(/\$0/g,e)})),d.forEach((t=>{""===t[1]?b.div({text:t[0],padding:[0,2,0,2]}):b.div({text:t[0],padding:[0,2,0,2],width:O(d,y)+4},{text:t[1]})})),b.div()),m.length>0){const t=m.map((t=>t.replace(/\$0/g,e))).join("\n");b.div(`${t}\n`)}return b.toString().replace(/\s*$/,"")},n.cacheHelpMessage=function(){w=this.help()},n.clearCachedHelpMessage=function(){w=void 0},n.hasCachedHelpMessage=function(){return!!w},n.showHelp=e=>{const s=t.getInternalMethods().getLoggerInstance();e||(e="error");("function"==typeof e?e:s[e])(n.help())},n.functionDescription=t=>["(",t.name?s.Parser.decamelize(t.name,"-"):i("generated-value"),")"].join(""),n.stringifiedValues=function(t,e){let s="";const i=e||", ",n=[].concat(t);return t&&n.length?(n.forEach((t=>{s.length&&(s+=i),s+=JSON.stringify(t)})),s):s};let M=null;n.version=t=>{M=t},n.showVersion=e=>{const s=t.getInternalMethods().getLoggerInstance();e||(e="error");("function"==typeof e?e:s[e])(M)},n.reset=function(t){return o=null,l=!1,c=[],f=!1,m=[],d=[],u=[],p=g(p,(e=>!t[e])),n};const _=[];return n.freeze=function(){_.push({failMessage:o,failureOutput:l,usages:c,usageDisabled:f,epilogs:m,examples:d,commands:u,descriptions:p})},n.unfreeze=function(t=!1){const e=_.pop();e&&(t?(p={...e.descriptions,...p},u=[...e.commands,...u],c=[...e.usages,...c],d=[...e.examples,...d],m=[...e.epilogs,...m]):({failMessage:o,failureOutput:l,usages:c,usageDisabled:f,epilogs:m,examples:d,commands:u,descriptions:p}=e))},n}function S(t){return"object"==typeof t}function $(t){return S(t)?t.indentation:0}function I(t){return S(t)?t.text:t}class D{constructor(t,e,s,i){var n,r,o;this.yargs=t,this.usage=e,this.command=s,this.shim=i,this.completionKey="get-yargs-completions",this.aliases=null,this.customCompletionFunction=null,this.indexAfterLastReset=0,this.zshShell=null!==(o=(null===(n=this.shim.getEnv("SHELL"))||void 0===n?void 0:n.includes("zsh"))||(null===(r=this.shim.getEnv("ZSH_NAME"))||void 0===r?void 0:r.includes("zsh")))&&void 0!==o&&o}defaultCompletion(t,e,s,i){const n=this.command.getCommandHandlers();for(let e=0,s=t.length;e{const i=o(s[0]).cmd;if(-1===e.indexOf(i))if(this.zshShell){const e=s[1]||"";t.push(i.replace(/:/g,"\\:")+":"+e)}else t.push(i)}))}optionCompletions(t,e,s,i){if((i.match(/^-/)||""===i&&0===t.length)&&!this.previousArgHasChoices(e)){const s=this.yargs.getOptions(),n=this.yargs.getGroups()[this.usage.getPositionalGroupName()]||[];Object.keys(s.key).forEach((r=>{const o=!!s.configuration["boolean-negation"]&&s.boolean.includes(r);n.includes(r)||s.hiddenOptions.includes(r)||this.argsContainKey(e,r,o)||this.completeOptionKey(r,t,i,o&&!!s.default[r])}))}}choicesFromOptionsCompletions(t,e,s,i){if(this.previousArgHasChoices(e)){const s=this.getPreviousArgChoices(e);s&&s.length>0&&t.push(...s.map((t=>t.replace(/:/g,"\\:"))))}}choicesFromPositionalsCompletions(t,e,s,i){if(""===i&&t.length>0&&this.previousArgHasChoices(e))return;const n=this.yargs.getGroups()[this.usage.getPositionalGroupName()]||[],r=Math.max(this.indexAfterLastReset,this.yargs.getInternalMethods().getContext().commands.length+1),o=n[s._.length-r-1];if(!o)return;const a=this.yargs.getOptions().choices[o]||[];for(const e of a)e.startsWith(i)&&t.push(e.replace(/:/g,"\\:"))}getPreviousArgChoices(t){if(t.length<1)return;let e=t[t.length-1],s="";if(!e.startsWith("-")&&t.length>1&&(s=e,e=t[t.length-2]),!e.startsWith("-"))return;const i=e.replace(/^-+/,""),n=this.yargs.getOptions(),r=[i,...this.yargs.getAliases()[i]||[]];let o;for(const t of r)if(Object.prototype.hasOwnProperty.call(n.key,t)&&Array.isArray(n.choices[t])){o=n.choices[t];break}return o?o.filter((t=>!s||t.startsWith(s))):void 0}previousArgHasChoices(t){const e=this.getPreviousArgChoices(t);return void 0!==e&&e.length>0}argsContainKey(t,e,s){const i=e=>-1!==t.indexOf((/^[^0-9]$/.test(e)?"-":"--")+e);if(i(e))return!0;if(s&&i(`no-${e}`))return!0;if(this.aliases)for(const t of this.aliases[e])if(i(t))return!0;return!1}completeOptionKey(t,e,s,i){var n,r,o,a;let h=t;if(this.zshShell){const e=this.usage.getDescriptions(),s=null===(r=null===(n=null==this?void 0:this.aliases)||void 0===n?void 0:n[t])||void 0===r?void 0:r.find((t=>{const s=e[t];return"string"==typeof s&&s.length>0})),i=s?e[s]:void 0,l=null!==(a=null!==(o=e[t])&&void 0!==o?o:i)&&void 0!==a?a:"";h=`${t.replace(/:/g,"\\:")}:${l.replace("__yargsString__:","").replace(/(\r\n|\n|\r)/gm," ")}`}const l=!/^--/.test(s)&&(t=>/^[^0-9]$/.test(t))(t)?"-":"--";e.push(l+h),i&&e.push(l+"no-"+h)}customCompletion(t,e,s,i){if(d(this.customCompletionFunction,null,this.shim),this.customCompletionFunction.length<3){const t=this.customCompletionFunction(s,e);return f(t)?t.then((t=>{this.shim.process.nextTick((()=>{i(null,t)}))})).catch((t=>{this.shim.process.nextTick((()=>{i(t,void 0)}))})):i(null,t)}return function(t){return t.length>3}(this.customCompletionFunction)?this.customCompletionFunction(s,e,((n=i)=>this.defaultCompletion(t,e,s,n)),(t=>{i(null,t)})):this.customCompletionFunction(s,e,(t=>{i(null,t)}))}getCompletion(t,e){const s=t.length?t[t.length-1]:"",i=this.yargs.parse(t,!0),n=this.customCompletionFunction?i=>this.customCompletion(t,i,s,e):i=>this.defaultCompletion(t,i,s,e);return f(i)?i.then(n):n(i)}generateCompletionScript(t,e){let s=this.zshShell?'#compdef {{app_name}}\n###-begin-{{app_name}}-completions-###\n#\n# yargs command completion script\n#\n# Installation: {{app_path}} {{completion_command}} >> ~/.zshrc\n# or {{app_path}} {{completion_command}} >> ~/.zprofile on OSX.\n#\n_{{app_name}}_yargs_completions()\n{\n local reply\n local si=$IFS\n IFS=$\'\n\' reply=($(COMP_CWORD="$((CURRENT-1))" COMP_LINE="$BUFFER" COMP_POINT="$CURSOR" {{app_path}} --get-yargs-completions "${words[@]}"))\n IFS=$si\n _describe \'values\' reply\n}\ncompdef _{{app_name}}_yargs_completions {{app_name}}\n###-end-{{app_name}}-completions-###\n':'###-begin-{{app_name}}-completions-###\n#\n# yargs command completion script\n#\n# Installation: {{app_path}} {{completion_command}} >> ~/.bashrc\n# or {{app_path}} {{completion_command}} >> ~/.bash_profile on OSX.\n#\n_{{app_name}}_yargs_completions()\n{\n local cur_word args type_list\n\n cur_word="${COMP_WORDS[COMP_CWORD]}"\n args=("${COMP_WORDS[@]}")\n\n # ask yargs to generate completions.\n type_list=$({{app_path}} --get-yargs-completions "${args[@]}")\n\n COMPREPLY=( $(compgen -W "${type_list}" -- ${cur_word}) )\n\n # if no match was found, fall back to filename completion\n if [ ${#COMPREPLY[@]} -eq 0 ]; then\n COMPREPLY=()\n fi\n\n return 0\n}\ncomplete -o bashdefault -o default -F _{{app_name}}_yargs_completions {{app_name}}\n###-end-{{app_name}}-completions-###\n';const i=this.shim.path.basename(t);return t.match(/\.js$/)&&(t=`./${t}`),s=s.replace(/{{app_name}}/g,i),s=s.replace(/{{completion_command}}/g,e),s.replace(/{{app_path}}/g,t)}registerFunction(t){this.customCompletionFunction=t}setParsed(t){this.aliases=t.aliases}}function N(t,e){if(0===t.length)return e.length;if(0===e.length)return t.length;const s=[];let i,n;for(i=0;i<=e.length;i++)s[i]=[i];for(n=0;n<=t.length;n++)s[0][n]=n;for(i=1;i<=e.length;i++)for(n=1;n<=t.length;n++)e.charAt(i-1)===t.charAt(n-1)?s[i][n]=s[i-1][n-1]:i>1&&n>1&&e.charAt(i-2)===t.charAt(n-1)&&e.charAt(i-1)===t.charAt(n-2)?s[i][n]=s[i-2][n-2]+1:s[i][n]=Math.min(s[i-1][n-1]+1,Math.min(s[i][n-1]+1,s[i-1][n]+1));return s[e.length][t.length]}const H=["$0","--","_"];var z,W,q,U,F,L,V,G,R,T,B,Y,K,J,Z,X,Q,tt,et,st,it,nt,rt,ot,at,ht,lt,ct,ft,dt,ut,pt,gt,mt,yt;const bt=Symbol("copyDoubleDash"),vt=Symbol("copyDoubleDash"),Ot=Symbol("deleteFromParserHintObject"),wt=Symbol("emitWarning"),Ct=Symbol("freeze"),jt=Symbol("getDollarZero"),Mt=Symbol("getParserConfiguration"),_t=Symbol("getUsageConfiguration"),kt=Symbol("guessLocale"),xt=Symbol("guessVersion"),Et=Symbol("parsePositionalNumbers"),At=Symbol("pkgUp"),Pt=Symbol("populateParserHintArray"),St=Symbol("populateParserHintSingleValueDictionary"),$t=Symbol("populateParserHintArrayDictionary"),It=Symbol("populateParserHintDictionary"),Dt=Symbol("sanitizeKey"),Nt=Symbol("setKey"),Ht=Symbol("unfreeze"),zt=Symbol("validateAsync"),Wt=Symbol("getCommandInstance"),qt=Symbol("getContext"),Ut=Symbol("getHasOutput"),Ft=Symbol("getLoggerInstance"),Lt=Symbol("getParseContext"),Vt=Symbol("getUsageInstance"),Gt=Symbol("getValidationInstance"),Rt=Symbol("hasParseCallback"),Tt=Symbol("isGlobalContext"),Bt=Symbol("postProcess"),Yt=Symbol("rebase"),Kt=Symbol("reset"),Jt=Symbol("runYargsParserAndExecuteCommands"),Zt=Symbol("runValidation"),Xt=Symbol("setHasOutput"),Qt=Symbol("kTrackManuallySetKeys");class te{constructor(t=[],e,s,i){this.customScriptName=!1,this.parsed=!1,z.set(this,void 0),W.set(this,void 0),q.set(this,{commands:[],fullCommands:[]}),U.set(this,null),F.set(this,null),L.set(this,"show-hidden"),V.set(this,null),G.set(this,!0),R.set(this,{}),T.set(this,!0),B.set(this,[]),Y.set(this,void 0),K.set(this,{}),J.set(this,!1),Z.set(this,null),X.set(this,!0),Q.set(this,void 0),tt.set(this,""),et.set(this,void 0),st.set(this,void 0),it.set(this,{}),nt.set(this,null),rt.set(this,null),ot.set(this,{}),at.set(this,{}),ht.set(this,void 0),lt.set(this,!1),ct.set(this,void 0),ft.set(this,!1),dt.set(this,!1),ut.set(this,!1),pt.set(this,void 0),gt.set(this,{}),mt.set(this,null),yt.set(this,void 0),O(this,ct,i,"f"),O(this,ht,t,"f"),O(this,W,e,"f"),O(this,st,s,"f"),O(this,Y,new w(this),"f"),this.$0=this[jt](),this[Kt](),O(this,z,v(this,z,"f"),"f"),O(this,pt,v(this,pt,"f"),"f"),O(this,yt,v(this,yt,"f"),"f"),O(this,et,v(this,et,"f"),"f"),v(this,et,"f").showHiddenOpt=v(this,L,"f"),O(this,Q,this[vt](),"f")}addHelpOpt(t,e){return h("[string|boolean] [string]",[t,e],arguments.length),v(this,Z,"f")&&(this[Ot](v(this,Z,"f")),O(this,Z,null,"f")),!1===t&&void 0===e||(O(this,Z,"string"==typeof t?t:"help","f"),this.boolean(v(this,Z,"f")),this.describe(v(this,Z,"f"),e||v(this,pt,"f").deferY18nLookup("Show help"))),this}help(t,e){return this.addHelpOpt(t,e)}addShowHiddenOpt(t,e){if(h("[string|boolean] [string]",[t,e],arguments.length),!1===t&&void 0===e)return this;const s="string"==typeof t?t:v(this,L,"f");return this.boolean(s),this.describe(s,e||v(this,pt,"f").deferY18nLookup("Show hidden options")),v(this,et,"f").showHiddenOpt=s,this}showHidden(t,e){return this.addShowHiddenOpt(t,e)}alias(t,e){return h(" [string|array]",[t,e],arguments.length),this[$t](this.alias.bind(this),"alias",t,e),this}array(t){return h("",[t],arguments.length),this[Pt]("array",t),this[Qt](t),this}boolean(t){return h("",[t],arguments.length),this[Pt]("boolean",t),this[Qt](t),this}check(t,e){return h(" [boolean]",[t,e],arguments.length),this.middleware(((e,s)=>j((()=>t(e,s.getOptions())),(s=>(s?("string"==typeof s||s instanceof Error)&&v(this,pt,"f").fail(s.toString(),s):v(this,pt,"f").fail(v(this,ct,"f").y18n.__("Argument check failed: %s",t.toString())),e)),(t=>(v(this,pt,"f").fail(t.message?t.message:t.toString(),t),e)))),!1,e),this}choices(t,e){return h(" [string|array]",[t,e],arguments.length),this[$t](this.choices.bind(this),"choices",t,e),this}coerce(t,s){if(h(" [function]",[t,s],arguments.length),Array.isArray(t)){if(!s)throw new e("coerce callback must be provided");for(const e of t)this.coerce(e,s);return this}if("object"==typeof t){for(const e of Object.keys(t))this.coerce(e,t[e]);return this}if(!s)throw new e("coerce callback must be provided");return v(this,et,"f").key[t]=!0,v(this,Y,"f").addCoerceMiddleware(((i,n)=>{let r;return Object.prototype.hasOwnProperty.call(i,t)?j((()=>(r=n.getAliases(),s(i[t]))),(e=>{i[t]=e;const s=n.getInternalMethods().getParserConfiguration()["strip-aliased"];if(r[t]&&!0!==s)for(const s of r[t])i[s]=e;return i}),(t=>{throw new e(t.message)})):i}),t),this}conflicts(t,e){return h(" [string|array]",[t,e],arguments.length),v(this,yt,"f").conflicts(t,e),this}config(t="config",e,s){return h("[object|string] [string|function] [function]",[t,e,s],arguments.length),"object"!=typeof t||Array.isArray(t)?("function"==typeof e&&(s=e,e=void 0),this.describe(t,e||v(this,pt,"f").deferY18nLookup("Path to JSON config file")),(Array.isArray(t)?t:[t]).forEach((t=>{v(this,et,"f").config[t]=s||!0})),this):(t=n(t,v(this,W,"f"),this[Mt]()["deep-merge-config"]||!1,v(this,ct,"f")),v(this,et,"f").configObjects=(v(this,et,"f").configObjects||[]).concat(t),this)}completion(t,e,s){return h("[string] [string|boolean|function] [function]",[t,e,s],arguments.length),"function"==typeof e&&(s=e,e=void 0),O(this,F,t||v(this,F,"f")||"completion","f"),e||!1===e||(e="generate completion script"),this.command(v(this,F,"f"),e),s&&v(this,U,"f").registerFunction(s),this}command(t,e,s,i,n,r){return h(" [string|boolean] [function|object] [function] [array] [boolean|string]",[t,e,s,i,n,r],arguments.length),v(this,z,"f").addHandler(t,e,s,i,n,r),this}commands(t,e,s,i,n,r){return this.command(t,e,s,i,n,r)}commandDir(t,e){h(" [object]",[t,e],arguments.length);const s=v(this,st,"f")||v(this,ct,"f").require;return v(this,z,"f").addDirectory(t,s,v(this,ct,"f").getCallerFile(),e),this}count(t){return h("",[t],arguments.length),this[Pt]("count",t),this[Qt](t),this}default(t,e,s){return h(" [*] [string]",[t,e,s],arguments.length),s&&(u(t,v(this,ct,"f")),v(this,et,"f").defaultDescription[t]=s),"function"==typeof e&&(u(t,v(this,ct,"f")),v(this,et,"f").defaultDescription[t]||(v(this,et,"f").defaultDescription[t]=v(this,pt,"f").functionDescription(e)),e=e.call()),this[St](this.default.bind(this),"default",t,e),this}defaults(t,e,s){return this.default(t,e,s)}demandCommand(t=1,e,s,i){return h("[number] [number|string] [string|null|undefined] [string|null|undefined]",[t,e,s,i],arguments.length),"number"!=typeof e&&(s=e,e=1/0),this.global("_",!1),v(this,et,"f").demandedCommands._={min:t,max:e,minMsg:s,maxMsg:i},this}demand(t,e,s){return Array.isArray(e)?(e.forEach((t=>{d(s,!0,v(this,ct,"f")),this.demandOption(t,s)})),e=1/0):"number"!=typeof e&&(s=e,e=1/0),"number"==typeof t?(d(s,!0,v(this,ct,"f")),this.demandCommand(t,e,s,s)):Array.isArray(t)?t.forEach((t=>{d(s,!0,v(this,ct,"f")),this.demandOption(t,s)})):"string"==typeof s?this.demandOption(t,s):!0!==s&&void 0!==s||this.demandOption(t),this}demandOption(t,e){return h(" [string]",[t,e],arguments.length),this[St](this.demandOption.bind(this),"demandedOptions",t,e),this}deprecateOption(t,e){return h(" [string|boolean]",[t,e],arguments.length),v(this,et,"f").deprecatedOptions[t]=e,this}describe(t,e){return h(" [string]",[t,e],arguments.length),this[Nt](t,!0),v(this,pt,"f").describe(t,e),this}detectLocale(t){return h("",[t],arguments.length),O(this,G,t,"f"),this}env(t){return h("[string|boolean]",[t],arguments.length),!1===t?delete v(this,et,"f").envPrefix:v(this,et,"f").envPrefix=t||"",this}epilogue(t){return h("",[t],arguments.length),v(this,pt,"f").epilog(t),this}epilog(t){return this.epilogue(t)}example(t,e){return h(" [string]",[t,e],arguments.length),Array.isArray(t)?t.forEach((t=>this.example(...t))):v(this,pt,"f").example(t,e),this}exit(t,e){O(this,J,!0,"f"),O(this,V,e,"f"),v(this,T,"f")&&v(this,ct,"f").process.exit(t)}exitProcess(t=!0){return h("[boolean]",[t],arguments.length),O(this,T,t,"f"),this}fail(t){if(h("",[t],arguments.length),"boolean"==typeof t&&!1!==t)throw new e("Invalid first argument. Expected function or boolean 'false'");return v(this,pt,"f").failFn(t),this}getAliases(){return this.parsed?this.parsed.aliases:{}}async getCompletion(t,e){return h(" [function]",[t,e],arguments.length),e?v(this,U,"f").getCompletion(t,e):new Promise(((e,s)=>{v(this,U,"f").getCompletion(t,((t,i)=>{t?s(t):e(i)}))}))}getDemandedOptions(){return h([],0),v(this,et,"f").demandedOptions}getDemandedCommands(){return h([],0),v(this,et,"f").demandedCommands}getDeprecatedOptions(){return h([],0),v(this,et,"f").deprecatedOptions}getDetectLocale(){return v(this,G,"f")}getExitProcess(){return v(this,T,"f")}getGroups(){return Object.assign({},v(this,K,"f"),v(this,at,"f"))}getHelp(){if(O(this,J,!0,"f"),!v(this,pt,"f").hasCachedHelpMessage()){if(!this.parsed){const t=this[Jt](v(this,ht,"f"),void 0,void 0,0,!0);if(f(t))return t.then((()=>v(this,pt,"f").help()))}const t=v(this,z,"f").runDefaultBuilderOn(this);if(f(t))return t.then((()=>v(this,pt,"f").help()))}return Promise.resolve(v(this,pt,"f").help())}getOptions(){return v(this,et,"f")}getStrict(){return v(this,ft,"f")}getStrictCommands(){return v(this,dt,"f")}getStrictOptions(){return v(this,ut,"f")}global(t,e){return h(" [boolean]",[t,e],arguments.length),t=[].concat(t),!1!==e?v(this,et,"f").local=v(this,et,"f").local.filter((e=>-1===t.indexOf(e))):t.forEach((t=>{v(this,et,"f").local.includes(t)||v(this,et,"f").local.push(t)})),this}group(t,e){h(" ",[t,e],arguments.length);const s=v(this,at,"f")[e]||v(this,K,"f")[e];v(this,at,"f")[e]&&delete v(this,at,"f")[e];const i={};return v(this,K,"f")[e]=(s||[]).concat(t).filter((t=>!i[t]&&(i[t]=!0))),this}hide(t){return h("",[t],arguments.length),v(this,et,"f").hiddenOptions.push(t),this}implies(t,e){return h(" [number|string|array]",[t,e],arguments.length),v(this,yt,"f").implies(t,e),this}locale(t){return h("[string]",[t],arguments.length),void 0===t?(this[kt](),v(this,ct,"f").y18n.getLocale()):(O(this,G,!1,"f"),v(this,ct,"f").y18n.setLocale(t),this)}middleware(t,e,s){return v(this,Y,"f").addMiddleware(t,!!e,s)}nargs(t,e){return h(" [number]",[t,e],arguments.length),this[St](this.nargs.bind(this),"narg",t,e),this}normalize(t){return h("",[t],arguments.length),this[Pt]("normalize",t),this}number(t){return h("",[t],arguments.length),this[Pt]("number",t),this[Qt](t),this}option(t,e){if(h(" [object]",[t,e],arguments.length),"object"==typeof t)Object.keys(t).forEach((e=>{this.options(e,t[e])}));else{"object"!=typeof e&&(e={}),this[Qt](t),!v(this,mt,"f")||"version"!==t&&"version"!==(null==e?void 0:e.alias)||this[wt](['"version" is a reserved word.',"Please do one of the following:",'- Disable version with `yargs.version(false)` if using "version" as an option',"- Use the built-in `yargs.version` method instead (if applicable)","- Use a different option key","https://yargs.js.org/docs/#api-reference-version"].join("\n"),void 0,"versionWarning"),v(this,et,"f").key[t]=!0,e.alias&&this.alias(t,e.alias);const s=e.deprecate||e.deprecated;s&&this.deprecateOption(t,s);const i=e.demand||e.required||e.require;i&&this.demand(t,i),e.demandOption&&this.demandOption(t,"string"==typeof e.demandOption?e.demandOption:void 0),e.conflicts&&this.conflicts(t,e.conflicts),"default"in e&&this.default(t,e.default),void 0!==e.implies&&this.implies(t,e.implies),void 0!==e.nargs&&this.nargs(t,e.nargs),e.config&&this.config(t,e.configParser),e.normalize&&this.normalize(t),e.choices&&this.choices(t,e.choices),e.coerce&&this.coerce(t,e.coerce),e.group&&this.group(t,e.group),(e.boolean||"boolean"===e.type)&&(this.boolean(t),e.alias&&this.boolean(e.alias)),(e.array||"array"===e.type)&&(this.array(t),e.alias&&this.array(e.alias)),(e.number||"number"===e.type)&&(this.number(t),e.alias&&this.number(e.alias)),(e.string||"string"===e.type)&&(this.string(t),e.alias&&this.string(e.alias)),(e.count||"count"===e.type)&&this.count(t),"boolean"==typeof e.global&&this.global(t,e.global),e.defaultDescription&&(v(this,et,"f").defaultDescription[t]=e.defaultDescription),e.skipValidation&&this.skipValidation(t);const n=e.describe||e.description||e.desc,r=v(this,pt,"f").getDescriptions();Object.prototype.hasOwnProperty.call(r,t)&&"string"!=typeof n||this.describe(t,n),e.hidden&&this.hide(t),e.requiresArg&&this.requiresArg(t)}return this}options(t,e){return this.option(t,e)}parse(t,e,s){h("[string|array] [function|boolean|object] [function]",[t,e,s],arguments.length),this[Ct](),void 0===t&&(t=v(this,ht,"f")),"object"==typeof e&&(O(this,rt,e,"f"),e=s),"function"==typeof e&&(O(this,nt,e,"f"),e=!1),e||O(this,ht,t,"f"),v(this,nt,"f")&&O(this,T,!1,"f");const i=this[Jt](t,!!e),n=this.parsed;return v(this,U,"f").setParsed(this.parsed),f(i)?i.then((t=>(v(this,nt,"f")&&v(this,nt,"f").call(this,v(this,V,"f"),t,v(this,tt,"f")),t))).catch((t=>{throw v(this,nt,"f")&&v(this,nt,"f")(t,this.parsed.argv,v(this,tt,"f")),t})).finally((()=>{this[Ht](),this.parsed=n})):(v(this,nt,"f")&&v(this,nt,"f").call(this,v(this,V,"f"),i,v(this,tt,"f")),this[Ht](),this.parsed=n,i)}parseAsync(t,e,s){const i=this.parse(t,e,s);return f(i)?i:Promise.resolve(i)}parseSync(t,s,i){const n=this.parse(t,s,i);if(f(n))throw new e(".parseSync() must not be used with asynchronous builders, handlers, or middleware");return n}parserConfiguration(t){return h("",[t],arguments.length),O(this,it,t,"f"),this}pkgConf(t,e){h(" [string]",[t,e],arguments.length);let s=null;const i=this[At](e||v(this,W,"f"));return i[t]&&"object"==typeof i[t]&&(s=n(i[t],e||v(this,W,"f"),this[Mt]()["deep-merge-config"]||!1,v(this,ct,"f")),v(this,et,"f").configObjects=(v(this,et,"f").configObjects||[]).concat(s)),this}positional(t,e){h(" ",[t,e],arguments.length);const s=["default","defaultDescription","implies","normalize","choices","conflicts","coerce","type","describe","desc","description","alias"];e=g(e,((t,e)=>!("type"===t&&!["string","number","boolean"].includes(e))&&s.includes(t)));const i=v(this,q,"f").fullCommands[v(this,q,"f").fullCommands.length-1],n=i?v(this,z,"f").cmdToParseOptions(i):{array:[],alias:{},default:{},demand:{}};return p(n).forEach((s=>{const i=n[s];Array.isArray(i)?-1!==i.indexOf(t)&&(e[s]=!0):i[t]&&!(s in e)&&(e[s]=i[t])})),this.group(t,v(this,pt,"f").getPositionalGroupName()),this.option(t,e)}recommendCommands(t=!0){return h("[boolean]",[t],arguments.length),O(this,lt,t,"f"),this}required(t,e,s){return this.demand(t,e,s)}require(t,e,s){return this.demand(t,e,s)}requiresArg(t){return h(" [number]",[t],arguments.length),"string"==typeof t&&v(this,et,"f").narg[t]||this[St](this.requiresArg.bind(this),"narg",t,NaN),this}showCompletionScript(t,e){return h("[string] [string]",[t,e],arguments.length),t=t||this.$0,v(this,Q,"f").log(v(this,U,"f").generateCompletionScript(t,e||v(this,F,"f")||"completion")),this}showHelp(t){if(h("[string|function]",[t],arguments.length),O(this,J,!0,"f"),!v(this,pt,"f").hasCachedHelpMessage()){if(!this.parsed){const e=this[Jt](v(this,ht,"f"),void 0,void 0,0,!0);if(f(e))return e.then((()=>{v(this,pt,"f").showHelp(t)})),this}const e=v(this,z,"f").runDefaultBuilderOn(this);if(f(e))return e.then((()=>{v(this,pt,"f").showHelp(t)})),this}return v(this,pt,"f").showHelp(t),this}scriptName(t){return this.customScriptName=!0,this.$0=t,this}showHelpOnFail(t,e){return h("[boolean|string] [string]",[t,e],arguments.length),v(this,pt,"f").showHelpOnFail(t,e),this}showVersion(t){return h("[string|function]",[t],arguments.length),v(this,pt,"f").showVersion(t),this}skipValidation(t){return h("",[t],arguments.length),this[Pt]("skipValidation",t),this}strict(t){return h("[boolean]",[t],arguments.length),O(this,ft,!1!==t,"f"),this}strictCommands(t){return h("[boolean]",[t],arguments.length),O(this,dt,!1!==t,"f"),this}strictOptions(t){return h("[boolean]",[t],arguments.length),O(this,ut,!1!==t,"f"),this}string(t){return h("",[t],arguments.length),this[Pt]("string",t),this[Qt](t),this}terminalWidth(){return h([],0),v(this,ct,"f").process.stdColumns}updateLocale(t){return this.updateStrings(t)}updateStrings(t){return h("",[t],arguments.length),O(this,G,!1,"f"),v(this,ct,"f").y18n.updateLocale(t),this}usage(t,s,i,n){if(h(" [string|boolean] [function|object] [function]",[t,s,i,n],arguments.length),void 0!==s){if(d(t,null,v(this,ct,"f")),(t||"").match(/^\$0( |$)/))return this.command(t,s,i,n);throw new e(".usage() description must start with $0 if being used as alias for .command()")}return v(this,pt,"f").usage(t),this}usageConfiguration(t){return h("",[t],arguments.length),O(this,gt,t,"f"),this}version(t,e,s){const i="version";if(h("[boolean|string] [string] [string]",[t,e,s],arguments.length),v(this,mt,"f")&&(this[Ot](v(this,mt,"f")),v(this,pt,"f").version(void 0),O(this,mt,null,"f")),0===arguments.length)s=this[xt](),t=i;else if(1===arguments.length){if(!1===t)return this;s=t,t=i}else 2===arguments.length&&(s=e,e=void 0);return O(this,mt,"string"==typeof t?t:i,"f"),e=e||v(this,pt,"f").deferY18nLookup("Show version number"),v(this,pt,"f").version(s||void 0),this.boolean(v(this,mt,"f")),this.describe(v(this,mt,"f"),e),this}wrap(t){return h("",[t],arguments.length),v(this,pt,"f").wrap(t),this}[(z=new WeakMap,W=new WeakMap,q=new WeakMap,U=new WeakMap,F=new WeakMap,L=new WeakMap,V=new WeakMap,G=new WeakMap,R=new WeakMap,T=new WeakMap,B=new WeakMap,Y=new WeakMap,K=new WeakMap,J=new WeakMap,Z=new WeakMap,X=new WeakMap,Q=new WeakMap,tt=new WeakMap,et=new WeakMap,st=new WeakMap,it=new WeakMap,nt=new WeakMap,rt=new WeakMap,ot=new WeakMap,at=new WeakMap,ht=new WeakMap,lt=new WeakMap,ct=new WeakMap,ft=new WeakMap,dt=new WeakMap,ut=new WeakMap,pt=new WeakMap,gt=new WeakMap,mt=new WeakMap,yt=new WeakMap,bt)](t){if(!t._||!t["--"])return t;t._.push.apply(t._,t["--"]);try{delete t["--"]}catch(t){}return t}[vt](){return{log:(...t)=>{this[Rt]()||console.log(...t),O(this,J,!0,"f"),v(this,tt,"f").length&&O(this,tt,v(this,tt,"f")+"\n","f"),O(this,tt,v(this,tt,"f")+t.join(" "),"f")},error:(...t)=>{this[Rt]()||console.error(...t),O(this,J,!0,"f"),v(this,tt,"f").length&&O(this,tt,v(this,tt,"f")+"\n","f"),O(this,tt,v(this,tt,"f")+t.join(" "),"f")}}}[Ot](t){p(v(this,et,"f")).forEach((e=>{if("configObjects"===e)return;const s=v(this,et,"f")[e];Array.isArray(s)?s.includes(t)&&s.splice(s.indexOf(t),1):"object"==typeof s&&delete s[t]})),delete v(this,pt,"f").getDescriptions()[t]}[wt](t,e,s){v(this,R,"f")[s]||(v(this,ct,"f").process.emitWarning(t,e),v(this,R,"f")[s]=!0)}[Ct](){v(this,B,"f").push({options:v(this,et,"f"),configObjects:v(this,et,"f").configObjects.slice(0),exitProcess:v(this,T,"f"),groups:v(this,K,"f"),strict:v(this,ft,"f"),strictCommands:v(this,dt,"f"),strictOptions:v(this,ut,"f"),completionCommand:v(this,F,"f"),output:v(this,tt,"f"),exitError:v(this,V,"f"),hasOutput:v(this,J,"f"),parsed:this.parsed,parseFn:v(this,nt,"f"),parseContext:v(this,rt,"f")}),v(this,pt,"f").freeze(),v(this,yt,"f").freeze(),v(this,z,"f").freeze(),v(this,Y,"f").freeze()}[jt](){let t,e="";return t=/\b(node|iojs|electron)(\.exe)?$/.test(v(this,ct,"f").process.argv()[0])?v(this,ct,"f").process.argv().slice(1,2):v(this,ct,"f").process.argv().slice(0,1),e=t.map((t=>{const e=this[Yt](v(this,W,"f"),t);return t.match(/^(\/|([a-zA-Z]:)?\\)/)&&e.lengthe.includes("package.json")?"package.json":void 0));d(i,void 0,v(this,ct,"f")),s=JSON.parse(v(this,ct,"f").readFileSync(i,"utf8"))}catch(t){}return v(this,ot,"f")[e]=s||{},v(this,ot,"f")[e]}[Pt](t,e){(e=[].concat(e)).forEach((e=>{e=this[Dt](e),v(this,et,"f")[t].push(e)}))}[St](t,e,s,i){this[It](t,e,s,i,((t,e,s)=>{v(this,et,"f")[t][e]=s}))}[$t](t,e,s,i){this[It](t,e,s,i,((t,e,s)=>{v(this,et,"f")[t][e]=(v(this,et,"f")[t][e]||[]).concat(s)}))}[It](t,e,s,i,n){if(Array.isArray(s))s.forEach((e=>{t(e,i)}));else if((t=>"object"==typeof t)(s))for(const e of p(s))t(e,s[e]);else n(e,this[Dt](s),i)}[Dt](t){return"__proto__"===t?"___proto___":t}[Nt](t,e){return this[St](this[Nt].bind(this),"key",t,e),this}[Ht](){var t,e,s,i,n,r,o,a,h,l,c,f;const u=v(this,B,"f").pop();let p;d(u,void 0,v(this,ct,"f")),t=this,e=this,s=this,i=this,n=this,r=this,o=this,a=this,h=this,l=this,c=this,f=this,({options:{set value(e){O(t,et,e,"f")}}.value,configObjects:p,exitProcess:{set value(t){O(e,T,t,"f")}}.value,groups:{set value(t){O(s,K,t,"f")}}.value,output:{set value(t){O(i,tt,t,"f")}}.value,exitError:{set value(t){O(n,V,t,"f")}}.value,hasOutput:{set value(t){O(r,J,t,"f")}}.value,parsed:this.parsed,strict:{set value(t){O(o,ft,t,"f")}}.value,strictCommands:{set value(t){O(a,dt,t,"f")}}.value,strictOptions:{set value(t){O(h,ut,t,"f")}}.value,completionCommand:{set value(t){O(l,F,t,"f")}}.value,parseFn:{set value(t){O(c,nt,t,"f")}}.value,parseContext:{set value(t){O(f,rt,t,"f")}}.value}=u),v(this,et,"f").configObjects=p,v(this,pt,"f").unfreeze(),v(this,yt,"f").unfreeze(),v(this,z,"f").unfreeze(),v(this,Y,"f").unfreeze()}[zt](t,e){return j(e,(e=>(t(e),e)))}getInternalMethods(){return{getCommandInstance:this[Wt].bind(this),getContext:this[qt].bind(this),getHasOutput:this[Ut].bind(this),getLoggerInstance:this[Ft].bind(this),getParseContext:this[Lt].bind(this),getParserConfiguration:this[Mt].bind(this),getUsageConfiguration:this[_t].bind(this),getUsageInstance:this[Vt].bind(this),getValidationInstance:this[Gt].bind(this),hasParseCallback:this[Rt].bind(this),isGlobalContext:this[Tt].bind(this),postProcess:this[Bt].bind(this),reset:this[Kt].bind(this),runValidation:this[Zt].bind(this),runYargsParserAndExecuteCommands:this[Jt].bind(this),setHasOutput:this[Xt].bind(this)}}[Wt](){return v(this,z,"f")}[qt](){return v(this,q,"f")}[Ut](){return v(this,J,"f")}[Ft](){return v(this,Q,"f")}[Lt](){return v(this,rt,"f")||{}}[Vt](){return v(this,pt,"f")}[Gt](){return v(this,yt,"f")}[Rt](){return!!v(this,nt,"f")}[Tt](){return v(this,X,"f")}[Bt](t,e,s,i){if(s)return t;if(f(t))return t;e||(t=this[bt](t));return(this[Mt]()["parse-positional-numbers"]||void 0===this[Mt]()["parse-positional-numbers"])&&(t=this[Et](t)),i&&(t=C(t,this,v(this,Y,"f").getMiddleware(),!1)),t}[Kt](t={}){O(this,et,v(this,et,"f")||{},"f");const e={};e.local=v(this,et,"f").local||[],e.configObjects=v(this,et,"f").configObjects||[];const s={};e.local.forEach((e=>{s[e]=!0,(t[e]||[]).forEach((t=>{s[t]=!0}))})),Object.assign(v(this,at,"f"),Object.keys(v(this,K,"f")).reduce(((t,e)=>{const i=v(this,K,"f")[e].filter((t=>!(t in s)));return i.length>0&&(t[e]=i),t}),{})),O(this,K,{},"f");return["array","boolean","string","skipValidation","count","normalize","number","hiddenOptions"].forEach((t=>{e[t]=(v(this,et,"f")[t]||[]).filter((t=>!s[t]))})),["narg","key","alias","default","defaultDescription","config","choices","demandedOptions","demandedCommands","deprecatedOptions"].forEach((t=>{e[t]=g(v(this,et,"f")[t],(t=>!s[t]))})),e.envPrefix=v(this,et,"f").envPrefix,O(this,et,e,"f"),O(this,pt,v(this,pt,"f")?v(this,pt,"f").reset(s):P(this,v(this,ct,"f")),"f"),O(this,yt,v(this,yt,"f")?v(this,yt,"f").reset(s):function(t,e,s){const i=s.y18n.__,n=s.y18n.__n,r={nonOptionCount:function(s){const i=t.getDemandedCommands(),r=s._.length+(s["--"]?s["--"].length:0)-t.getInternalMethods().getContext().commands.length;i._&&(ri._.max)&&(ri._.max&&(void 0!==i._.maxMsg?e.fail(i._.maxMsg?i._.maxMsg.replace(/\$0/g,r.toString()).replace(/\$1/,i._.max.toString()):null):e.fail(n("Too many non-option arguments: got %s, maximum of %s","Too many non-option arguments: got %s, maximum of %s",r,r.toString(),i._.max.toString()))))},positionalCount:function(t,s){s{H.includes(e)||Object.prototype.hasOwnProperty.call(o,e)||Object.prototype.hasOwnProperty.call(t.getInternalMethods().getParseContext(),e)||r.isValidAndSomeAliasIsNotNew(e,i)||f.push(e)})),h&&(d.commands.length>0||c.length>0||a)&&s._.slice(d.commands.length).forEach((t=>{c.includes(""+t)||f.push(""+t)})),h){const e=(null===(l=t.getDemandedCommands()._)||void 0===l?void 0:l.max)||0,i=d.commands.length+e;i{t=String(t),d.commands.includes(t)||f.includes(t)||f.push(t)}))}f.length&&e.fail(n("Unknown argument: %s","Unknown arguments: %s",f.length,f.map((t=>t.trim()?t:`"${t}"`)).join(", ")))},unknownCommands:function(s){const i=t.getInternalMethods().getCommandInstance().getCommands(),r=[],o=t.getInternalMethods().getContext();return(o.commands.length>0||i.length>0)&&s._.slice(o.commands.length).forEach((t=>{i.includes(""+t)||r.push(""+t)})),r.length>0&&(e.fail(n("Unknown command: %s","Unknown commands: %s",r.length,r.join(", "))),!0)},isValidAndSomeAliasIsNotNew:function(e,s){if(!Object.prototype.hasOwnProperty.call(s,e))return!1;const i=t.parsed.newAliases;return[e,...s[e]].some((t=>!Object.prototype.hasOwnProperty.call(i,t)||!i[e]))},limitedChoices:function(s){const n=t.getOptions(),r={};if(!Object.keys(n.choices).length)return;Object.keys(s).forEach((t=>{-1===H.indexOf(t)&&Object.prototype.hasOwnProperty.call(n.choices,t)&&[].concat(s[t]).forEach((e=>{-1===n.choices[t].indexOf(e)&&void 0!==e&&(r[t]=(r[t]||[]).concat(e))}))}));const o=Object.keys(r);if(!o.length)return;let a=i("Invalid values:");o.forEach((t=>{a+=`\n ${i("Argument: %s, Given: %s, Choices: %s",t,e.stringifiedValues(r[t]),e.stringifiedValues(n.choices[t]))}`})),e.fail(a)}};let o={};function a(t,e){const s=Number(e);return"number"==typeof(e=isNaN(s)?e:s)?e=t._.length>=e:e.match(/^--no-.+/)?(e=e.match(/^--no-(.+)/)[1],e=!Object.prototype.hasOwnProperty.call(t,e)):e=Object.prototype.hasOwnProperty.call(t,e),e}r.implies=function(e,i){h(" [array|number|string]",[e,i],arguments.length),"object"==typeof e?Object.keys(e).forEach((t=>{r.implies(t,e[t])})):(t.global(e),o[e]||(o[e]=[]),Array.isArray(i)?i.forEach((t=>r.implies(e,t))):(d(i,void 0,s),o[e].push(i)))},r.getImplied=function(){return o},r.implications=function(t){const s=[];if(Object.keys(o).forEach((e=>{const i=e;(o[e]||[]).forEach((e=>{let n=i;const r=e;n=a(t,n),e=a(t,e),n&&!e&&s.push(` ${i} -> ${r}`)}))})),s.length){let t=`${i("Implications failed:")}\n`;s.forEach((e=>{t+=e})),e.fail(t)}};let l={};r.conflicts=function(e,s){h(" [array|string]",[e,s],arguments.length),"object"==typeof e?Object.keys(e).forEach((t=>{r.conflicts(t,e[t])})):(t.global(e),l[e]||(l[e]=[]),Array.isArray(s)?s.forEach((t=>r.conflicts(e,t))):l[e].push(s))},r.getConflicting=()=>l,r.conflicting=function(n){Object.keys(n).forEach((t=>{l[t]&&l[t].forEach((s=>{s&&void 0!==n[t]&&void 0!==n[s]&&e.fail(i("Arguments %s and %s are mutually exclusive",t,s))}))})),t.getInternalMethods().getParserConfiguration()["strip-dashed"]&&Object.keys(l).forEach((t=>{l[t].forEach((r=>{r&&void 0!==n[s.Parser.camelCase(t)]&&void 0!==n[s.Parser.camelCase(r)]&&e.fail(i("Arguments %s and %s are mutually exclusive",t,r))}))}))},r.recommendCommands=function(t,s){s=s.sort(((t,e)=>e.length-t.length));let n=null,r=1/0;for(let e,i=0;void 0!==(e=s[i]);i++){const s=N(t,e);s<=3&&s!t[e])),l=g(l,(e=>!t[e])),r};const c=[];return r.freeze=function(){c.push({implied:o,conflicting:l})},r.unfreeze=function(){const t=c.pop();d(t,void 0,s),({implied:o,conflicting:l}=t)},r}(this,v(this,pt,"f"),v(this,ct,"f")),"f"),O(this,z,v(this,z,"f")?v(this,z,"f").reset():function(t,e,s,i){return new _(t,e,s,i)}(v(this,pt,"f"),v(this,yt,"f"),v(this,Y,"f"),v(this,ct,"f")),"f"),v(this,U,"f")||O(this,U,function(t,e,s,i){return new D(t,e,s,i)}(this,v(this,pt,"f"),v(this,z,"f"),v(this,ct,"f")),"f"),v(this,Y,"f").reset(),O(this,F,null,"f"),O(this,tt,"","f"),O(this,V,null,"f"),O(this,J,!1,"f"),this.parsed=!1,this}[Yt](t,e){return v(this,ct,"f").path.relative(t,e)}[Jt](t,s,i,n=0,r=!1){let o=!!i||r;t=t||v(this,ht,"f"),v(this,et,"f").__=v(this,ct,"f").y18n.__,v(this,et,"f").configuration=this[Mt]();const a=!!v(this,et,"f").configuration["populate--"],h=Object.assign({},v(this,et,"f").configuration,{"populate--":!0}),l=v(this,ct,"f").Parser.detailed(t,Object.assign({},v(this,et,"f"),{configuration:{"parse-positional-numbers":!1,...h}})),c=Object.assign(l.argv,v(this,rt,"f"));let d;const u=l.aliases;let p=!1,g=!1;Object.keys(c).forEach((t=>{t===v(this,Z,"f")&&c[t]?p=!0:t===v(this,mt,"f")&&c[t]&&(g=!0)})),c.$0=this.$0,this.parsed=l,0===n&&v(this,pt,"f").clearCachedHelpMessage();try{if(this[kt](),s)return this[Bt](c,a,!!i,!1);if(v(this,Z,"f")){[v(this,Z,"f")].concat(u[v(this,Z,"f")]||[]).filter((t=>t.length>1)).includes(""+c._[c._.length-1])&&(c._.pop(),p=!0)}O(this,X,!1,"f");const h=v(this,z,"f").getCommands(),m=v(this,U,"f").completionKey in c,y=p||m||r;if(c._.length){if(h.length){let t;for(let e,s=n||0;void 0!==c._[s];s++){if(e=String(c._[s]),h.includes(e)&&e!==v(this,F,"f")){const t=v(this,z,"f").runCommand(e,this,l,s+1,r,p||g||r);return this[Bt](t,a,!!i,!1)}if(!t&&e!==v(this,F,"f")){t=e;break}}!v(this,z,"f").hasDefaultCommand()&&v(this,lt,"f")&&t&&!y&&v(this,yt,"f").recommendCommands(t,h)}v(this,F,"f")&&c._.includes(v(this,F,"f"))&&!m&&(v(this,T,"f")&&E(!0),this.showCompletionScript(),this.exit(0))}if(v(this,z,"f").hasDefaultCommand()&&!y){const t=v(this,z,"f").runCommand(null,this,l,0,r,p||g||r);return this[Bt](t,a,!!i,!1)}if(m){v(this,T,"f")&&E(!0);const s=(t=[].concat(t)).slice(t.indexOf(`--${v(this,U,"f").completionKey}`)+1);return v(this,U,"f").getCompletion(s,((t,s)=>{if(t)throw new e(t.message);(s||[]).forEach((t=>{v(this,Q,"f").log(t)})),this.exit(0)})),this[Bt](c,!a,!!i,!1)}if(v(this,J,"f")||(p?(v(this,T,"f")&&E(!0),o=!0,this.showHelp("log"),this.exit(0)):g&&(v(this,T,"f")&&E(!0),o=!0,v(this,pt,"f").showVersion("log"),this.exit(0))),!o&&v(this,et,"f").skipValidation.length>0&&(o=Object.keys(c).some((t=>v(this,et,"f").skipValidation.indexOf(t)>=0&&!0===c[t]))),!o){if(l.error)throw new e(l.error.message);if(!m){const t=this[Zt](u,{},l.error);i||(d=C(c,this,v(this,Y,"f").getMiddleware(),!0)),d=this[zt](t,null!=d?d:c),f(d)&&!i&&(d=d.then((()=>C(c,this,v(this,Y,"f").getMiddleware(),!1))))}}}catch(t){if(!(t instanceof e))throw t;v(this,pt,"f").fail(t.message,t)}return this[Bt](null!=d?d:c,a,!!i,!0)}[Zt](t,s,i,n){const r={...this.getDemandedOptions()};return o=>{if(i)throw new e(i.message);v(this,yt,"f").nonOptionCount(o),v(this,yt,"f").requiredArguments(o,r);let a=!1;v(this,dt,"f")&&(a=v(this,yt,"f").unknownCommands(o)),v(this,ft,"f")&&!a?v(this,yt,"f").unknownArguments(o,t,s,!!n):v(this,ut,"f")&&v(this,yt,"f").unknownArguments(o,t,{},!1,!1),v(this,yt,"f").limitedChoices(o),v(this,yt,"f").implications(o),v(this,yt,"f").conflicting(o)}}[Xt](){O(this,J,!0,"f")}[Qt](t){if("string"==typeof t)v(this,et,"f").key[t]=!0;else for(const e of t)v(this,et,"f").key[e]=!0}}var ee,se;const{readFileSync:ie}=require("fs"),{inspect:ne}=require("util"),{resolve:re}=require("path"),oe=require("y18n"),ae=require("yargs-parser");var he,le={assert:{notStrictEqual:t.notStrictEqual,strictEqual:t.strictEqual},cliui:require("cliui"),findUp:require("escalade/sync"),getEnv:t=>process.env[t],getCallerFile:require("get-caller-file"),getProcessArgvBin:y,inspect:ne,mainFilename:null!==(se=null===(ee=null===require||void 0===require?void 0:require.main)||void 0===ee?void 0:ee.filename)&&void 0!==se?se:process.cwd(),Parser:ae,path:require("path"),process:{argv:()=>process.argv,cwd:process.cwd,emitWarning:(t,e)=>process.emitWarning(t,e),execPath:()=>process.execPath,exit:t=>{process.exit(t)},nextTick:process.nextTick,stdColumns:void 0!==process.stdout.columns?process.stdout.columns:null},readFileSync:ie,require:require,requireDirectory:require("require-directory"),stringWidth:require("string-width"),y18n:oe({directory:re(__dirname,"../locales"),updateFiles:!1})};const ce=(null===(he=null===process||void 0===process?void 0:process.env)||void 0===he?void 0:he.YARGS_MIN_NODE_VERSION)?Number(process.env.YARGS_MIN_NODE_VERSION):12;if(process&&process.version){if(Number(process.version.match(/v([^.]+)/)[1]){const i=new te(t,e,s,de);return Object.defineProperty(i,"argv",{get:()=>i.parse(),enumerable:!0}),i.help(),i.version(),i}),argsert:h,isPromise:f,objFilter:g,parseCommand:o,Parser:fe,processArgv:b,YError:e};module.exports=ue; diff --git a/node_modules/yargs/build/lib/argsert.js b/node_modules/yargs/build/lib/argsert.js new file mode 100644 index 0000000..be5b3aa --- /dev/null +++ b/node_modules/yargs/build/lib/argsert.js @@ -0,0 +1,62 @@ +import { YError } from './yerror.js'; +import { parseCommand } from './parse-command.js'; +const positionName = ['first', 'second', 'third', 'fourth', 'fifth', 'sixth']; +export function argsert(arg1, arg2, arg3) { + function parseArgs() { + return typeof arg1 === 'object' + ? [{ demanded: [], optional: [] }, arg1, arg2] + : [ + parseCommand(`cmd ${arg1}`), + arg2, + arg3, + ]; + } + try { + let position = 0; + const [parsed, callerArguments, _length] = parseArgs(); + const args = [].slice.call(callerArguments); + while (args.length && args[args.length - 1] === undefined) + args.pop(); + const length = _length || args.length; + if (length < parsed.demanded.length) { + throw new YError(`Not enough arguments provided. Expected ${parsed.demanded.length} but received ${args.length}.`); + } + const totalCommands = parsed.demanded.length + parsed.optional.length; + if (length > totalCommands) { + throw new YError(`Too many arguments provided. Expected max ${totalCommands} but received ${length}.`); + } + parsed.demanded.forEach(demanded => { + const arg = args.shift(); + const observedType = guessType(arg); + const matchingTypes = demanded.cmd.filter(type => type === observedType || type === '*'); + if (matchingTypes.length === 0) + argumentTypeError(observedType, demanded.cmd, position); + position += 1; + }); + parsed.optional.forEach(optional => { + if (args.length === 0) + return; + const arg = args.shift(); + const observedType = guessType(arg); + const matchingTypes = optional.cmd.filter(type => type === observedType || type === '*'); + if (matchingTypes.length === 0) + argumentTypeError(observedType, optional.cmd, position); + position += 1; + }); + } + catch (err) { + console.warn(err.stack); + } +} +function guessType(arg) { + if (Array.isArray(arg)) { + return 'array'; + } + else if (arg === null) { + return 'null'; + } + return typeof arg; +} +function argumentTypeError(observedType, allowedTypes, position) { + throw new YError(`Invalid ${positionName[position] || 'manyith'} argument. Expected ${allowedTypes.join(' or ')} but received ${observedType}.`); +} diff --git a/node_modules/yargs/build/lib/command.js b/node_modules/yargs/build/lib/command.js new file mode 100644 index 0000000..47c1ed6 --- /dev/null +++ b/node_modules/yargs/build/lib/command.js @@ -0,0 +1,449 @@ +import { assertNotStrictEqual, } from './typings/common-types.js'; +import { isPromise } from './utils/is-promise.js'; +import { applyMiddleware, commandMiddlewareFactory, } from './middleware.js'; +import { parseCommand } from './parse-command.js'; +import { isYargsInstance, } from './yargs-factory.js'; +import { maybeAsyncResult } from './utils/maybe-async-result.js'; +import whichModule from './utils/which-module.js'; +const DEFAULT_MARKER = /(^\*)|(^\$0)/; +export class CommandInstance { + constructor(usage, validation, globalMiddleware, shim) { + this.requireCache = new Set(); + this.handlers = {}; + this.aliasMap = {}; + this.frozens = []; + this.shim = shim; + this.usage = usage; + this.globalMiddleware = globalMiddleware; + this.validation = validation; + } + addDirectory(dir, req, callerFile, opts) { + opts = opts || {}; + if (typeof opts.recurse !== 'boolean') + opts.recurse = false; + if (!Array.isArray(opts.extensions)) + opts.extensions = ['js']; + const parentVisit = typeof opts.visit === 'function' ? opts.visit : (o) => o; + opts.visit = (obj, joined, filename) => { + const visited = parentVisit(obj, joined, filename); + if (visited) { + if (this.requireCache.has(joined)) + return visited; + else + this.requireCache.add(joined); + this.addHandler(visited); + } + return visited; + }; + this.shim.requireDirectory({ require: req, filename: callerFile }, dir, opts); + } + addHandler(cmd, description, builder, handler, commandMiddleware, deprecated) { + let aliases = []; + const middlewares = commandMiddlewareFactory(commandMiddleware); + handler = handler || (() => { }); + if (Array.isArray(cmd)) { + if (isCommandAndAliases(cmd)) { + [cmd, ...aliases] = cmd; + } + else { + for (const command of cmd) { + this.addHandler(command); + } + } + } + else if (isCommandHandlerDefinition(cmd)) { + let command = Array.isArray(cmd.command) || typeof cmd.command === 'string' + ? cmd.command + : this.moduleName(cmd); + if (cmd.aliases) + command = [].concat(command).concat(cmd.aliases); + this.addHandler(command, this.extractDesc(cmd), cmd.builder, cmd.handler, cmd.middlewares, cmd.deprecated); + return; + } + else if (isCommandBuilderDefinition(builder)) { + this.addHandler([cmd].concat(aliases), description, builder.builder, builder.handler, builder.middlewares, builder.deprecated); + return; + } + if (typeof cmd === 'string') { + const parsedCommand = parseCommand(cmd); + aliases = aliases.map(alias => parseCommand(alias).cmd); + let isDefault = false; + const parsedAliases = [parsedCommand.cmd].concat(aliases).filter(c => { + if (DEFAULT_MARKER.test(c)) { + isDefault = true; + return false; + } + return true; + }); + if (parsedAliases.length === 0 && isDefault) + parsedAliases.push('$0'); + if (isDefault) { + parsedCommand.cmd = parsedAliases[0]; + aliases = parsedAliases.slice(1); + cmd = cmd.replace(DEFAULT_MARKER, parsedCommand.cmd); + } + aliases.forEach(alias => { + this.aliasMap[alias] = parsedCommand.cmd; + }); + if (description !== false) { + this.usage.command(cmd, description, isDefault, aliases, deprecated); + } + this.handlers[parsedCommand.cmd] = { + original: cmd, + description, + handler, + builder: builder || {}, + middlewares, + deprecated, + demanded: parsedCommand.demanded, + optional: parsedCommand.optional, + }; + if (isDefault) + this.defaultCommand = this.handlers[parsedCommand.cmd]; + } + } + getCommandHandlers() { + return this.handlers; + } + getCommands() { + return Object.keys(this.handlers).concat(Object.keys(this.aliasMap)); + } + hasDefaultCommand() { + return !!this.defaultCommand; + } + runCommand(command, yargs, parsed, commandIndex, helpOnly, helpOrVersionSet) { + const commandHandler = this.handlers[command] || + this.handlers[this.aliasMap[command]] || + this.defaultCommand; + const currentContext = yargs.getInternalMethods().getContext(); + const parentCommands = currentContext.commands.slice(); + const isDefaultCommand = !command; + if (command) { + currentContext.commands.push(command); + currentContext.fullCommands.push(commandHandler.original); + } + const builderResult = this.applyBuilderUpdateUsageAndParse(isDefaultCommand, commandHandler, yargs, parsed.aliases, parentCommands, commandIndex, helpOnly, helpOrVersionSet); + return isPromise(builderResult) + ? builderResult.then(result => this.applyMiddlewareAndGetResult(isDefaultCommand, commandHandler, result.innerArgv, currentContext, helpOnly, result.aliases, yargs)) + : this.applyMiddlewareAndGetResult(isDefaultCommand, commandHandler, builderResult.innerArgv, currentContext, helpOnly, builderResult.aliases, yargs); + } + applyBuilderUpdateUsageAndParse(isDefaultCommand, commandHandler, yargs, aliases, parentCommands, commandIndex, helpOnly, helpOrVersionSet) { + const builder = commandHandler.builder; + let innerYargs = yargs; + if (isCommandBuilderCallback(builder)) { + yargs.getInternalMethods().getUsageInstance().freeze(); + const builderOutput = builder(yargs.getInternalMethods().reset(aliases), helpOrVersionSet); + if (isPromise(builderOutput)) { + return builderOutput.then(output => { + innerYargs = isYargsInstance(output) ? output : yargs; + return this.parseAndUpdateUsage(isDefaultCommand, commandHandler, innerYargs, parentCommands, commandIndex, helpOnly); + }); + } + } + else if (isCommandBuilderOptionDefinitions(builder)) { + yargs.getInternalMethods().getUsageInstance().freeze(); + innerYargs = yargs.getInternalMethods().reset(aliases); + Object.keys(commandHandler.builder).forEach(key => { + innerYargs.option(key, builder[key]); + }); + } + return this.parseAndUpdateUsage(isDefaultCommand, commandHandler, innerYargs, parentCommands, commandIndex, helpOnly); + } + parseAndUpdateUsage(isDefaultCommand, commandHandler, innerYargs, parentCommands, commandIndex, helpOnly) { + if (isDefaultCommand) + innerYargs.getInternalMethods().getUsageInstance().unfreeze(true); + if (this.shouldUpdateUsage(innerYargs)) { + innerYargs + .getInternalMethods() + .getUsageInstance() + .usage(this.usageFromParentCommandsCommandHandler(parentCommands, commandHandler), commandHandler.description); + } + const innerArgv = innerYargs + .getInternalMethods() + .runYargsParserAndExecuteCommands(null, undefined, true, commandIndex, helpOnly); + return isPromise(innerArgv) + ? innerArgv.then(argv => ({ + aliases: innerYargs.parsed.aliases, + innerArgv: argv, + })) + : { + aliases: innerYargs.parsed.aliases, + innerArgv: innerArgv, + }; + } + shouldUpdateUsage(yargs) { + return (!yargs.getInternalMethods().getUsageInstance().getUsageDisabled() && + yargs.getInternalMethods().getUsageInstance().getUsage().length === 0); + } + usageFromParentCommandsCommandHandler(parentCommands, commandHandler) { + const c = DEFAULT_MARKER.test(commandHandler.original) + ? commandHandler.original.replace(DEFAULT_MARKER, '').trim() + : commandHandler.original; + const pc = parentCommands.filter(c => { + return !DEFAULT_MARKER.test(c); + }); + pc.push(c); + return `$0 ${pc.join(' ')}`; + } + handleValidationAndGetResult(isDefaultCommand, commandHandler, innerArgv, currentContext, aliases, yargs, middlewares, positionalMap) { + if (!yargs.getInternalMethods().getHasOutput()) { + const validation = yargs + .getInternalMethods() + .runValidation(aliases, positionalMap, yargs.parsed.error, isDefaultCommand); + innerArgv = maybeAsyncResult(innerArgv, result => { + validation(result); + return result; + }); + } + if (commandHandler.handler && !yargs.getInternalMethods().getHasOutput()) { + yargs.getInternalMethods().setHasOutput(); + const populateDoubleDash = !!yargs.getOptions().configuration['populate--']; + yargs + .getInternalMethods() + .postProcess(innerArgv, populateDoubleDash, false, false); + innerArgv = applyMiddleware(innerArgv, yargs, middlewares, false); + innerArgv = maybeAsyncResult(innerArgv, result => { + const handlerResult = commandHandler.handler(result); + return isPromise(handlerResult) + ? handlerResult.then(() => result) + : result; + }); + if (!isDefaultCommand) { + yargs.getInternalMethods().getUsageInstance().cacheHelpMessage(); + } + if (isPromise(innerArgv) && + !yargs.getInternalMethods().hasParseCallback()) { + innerArgv.catch(error => { + try { + yargs.getInternalMethods().getUsageInstance().fail(null, error); + } + catch (_err) { + } + }); + } + } + if (!isDefaultCommand) { + currentContext.commands.pop(); + currentContext.fullCommands.pop(); + } + return innerArgv; + } + applyMiddlewareAndGetResult(isDefaultCommand, commandHandler, innerArgv, currentContext, helpOnly, aliases, yargs) { + let positionalMap = {}; + if (helpOnly) + return innerArgv; + if (!yargs.getInternalMethods().getHasOutput()) { + positionalMap = this.populatePositionals(commandHandler, innerArgv, currentContext, yargs); + } + const middlewares = this.globalMiddleware + .getMiddleware() + .slice(0) + .concat(commandHandler.middlewares); + const maybePromiseArgv = applyMiddleware(innerArgv, yargs, middlewares, true); + return isPromise(maybePromiseArgv) + ? maybePromiseArgv.then(resolvedInnerArgv => this.handleValidationAndGetResult(isDefaultCommand, commandHandler, resolvedInnerArgv, currentContext, aliases, yargs, middlewares, positionalMap)) + : this.handleValidationAndGetResult(isDefaultCommand, commandHandler, maybePromiseArgv, currentContext, aliases, yargs, middlewares, positionalMap); + } + populatePositionals(commandHandler, argv, context, yargs) { + argv._ = argv._.slice(context.commands.length); + const demanded = commandHandler.demanded.slice(0); + const optional = commandHandler.optional.slice(0); + const positionalMap = {}; + this.validation.positionalCount(demanded.length, argv._.length); + while (demanded.length) { + const demand = demanded.shift(); + this.populatePositional(demand, argv, positionalMap); + } + while (optional.length) { + const maybe = optional.shift(); + this.populatePositional(maybe, argv, positionalMap); + } + argv._ = context.commands.concat(argv._.map(a => '' + a)); + this.postProcessPositionals(argv, positionalMap, this.cmdToParseOptions(commandHandler.original), yargs); + return positionalMap; + } + populatePositional(positional, argv, positionalMap) { + const cmd = positional.cmd[0]; + if (positional.variadic) { + positionalMap[cmd] = argv._.splice(0).map(String); + } + else { + if (argv._.length) + positionalMap[cmd] = [String(argv._.shift())]; + } + } + cmdToParseOptions(cmdString) { + const parseOptions = { + array: [], + default: {}, + alias: {}, + demand: {}, + }; + const parsed = parseCommand(cmdString); + parsed.demanded.forEach(d => { + const [cmd, ...aliases] = d.cmd; + if (d.variadic) { + parseOptions.array.push(cmd); + parseOptions.default[cmd] = []; + } + parseOptions.alias[cmd] = aliases; + parseOptions.demand[cmd] = true; + }); + parsed.optional.forEach(o => { + const [cmd, ...aliases] = o.cmd; + if (o.variadic) { + parseOptions.array.push(cmd); + parseOptions.default[cmd] = []; + } + parseOptions.alias[cmd] = aliases; + }); + return parseOptions; + } + postProcessPositionals(argv, positionalMap, parseOptions, yargs) { + const options = Object.assign({}, yargs.getOptions()); + options.default = Object.assign(parseOptions.default, options.default); + for (const key of Object.keys(parseOptions.alias)) { + options.alias[key] = (options.alias[key] || []).concat(parseOptions.alias[key]); + } + options.array = options.array.concat(parseOptions.array); + options.config = {}; + const unparsed = []; + Object.keys(positionalMap).forEach(key => { + positionalMap[key].map(value => { + if (options.configuration['unknown-options-as-args']) + options.key[key] = true; + unparsed.push(`--${key}`); + unparsed.push(value); + }); + }); + if (!unparsed.length) + return; + const config = Object.assign({}, options.configuration, { + 'populate--': false, + }); + const parsed = this.shim.Parser.detailed(unparsed, Object.assign({}, options, { + configuration: config, + })); + if (parsed.error) { + yargs + .getInternalMethods() + .getUsageInstance() + .fail(parsed.error.message, parsed.error); + } + else { + const positionalKeys = Object.keys(positionalMap); + Object.keys(positionalMap).forEach(key => { + positionalKeys.push(...parsed.aliases[key]); + }); + Object.keys(parsed.argv).forEach(key => { + if (positionalKeys.includes(key)) { + if (!positionalMap[key]) + positionalMap[key] = parsed.argv[key]; + if (!this.isInConfigs(yargs, key) && + !this.isDefaulted(yargs, key) && + Object.prototype.hasOwnProperty.call(argv, key) && + Object.prototype.hasOwnProperty.call(parsed.argv, key) && + (Array.isArray(argv[key]) || Array.isArray(parsed.argv[key]))) { + argv[key] = [].concat(argv[key], parsed.argv[key]); + } + else { + argv[key] = parsed.argv[key]; + } + } + }); + } + } + isDefaulted(yargs, key) { + const { default: defaults } = yargs.getOptions(); + return (Object.prototype.hasOwnProperty.call(defaults, key) || + Object.prototype.hasOwnProperty.call(defaults, this.shim.Parser.camelCase(key))); + } + isInConfigs(yargs, key) { + const { configObjects } = yargs.getOptions(); + return (configObjects.some(c => Object.prototype.hasOwnProperty.call(c, key)) || + configObjects.some(c => Object.prototype.hasOwnProperty.call(c, this.shim.Parser.camelCase(key)))); + } + runDefaultBuilderOn(yargs) { + if (!this.defaultCommand) + return; + if (this.shouldUpdateUsage(yargs)) { + const commandString = DEFAULT_MARKER.test(this.defaultCommand.original) + ? this.defaultCommand.original + : this.defaultCommand.original.replace(/^[^[\]<>]*/, '$0 '); + yargs + .getInternalMethods() + .getUsageInstance() + .usage(commandString, this.defaultCommand.description); + } + const builder = this.defaultCommand.builder; + if (isCommandBuilderCallback(builder)) { + return builder(yargs, true); + } + else if (!isCommandBuilderDefinition(builder)) { + Object.keys(builder).forEach(key => { + yargs.option(key, builder[key]); + }); + } + return undefined; + } + moduleName(obj) { + const mod = whichModule(obj); + if (!mod) + throw new Error(`No command name given for module: ${this.shim.inspect(obj)}`); + return this.commandFromFilename(mod.filename); + } + commandFromFilename(filename) { + return this.shim.path.basename(filename, this.shim.path.extname(filename)); + } + extractDesc({ describe, description, desc }) { + for (const test of [describe, description, desc]) { + if (typeof test === 'string' || test === false) + return test; + assertNotStrictEqual(test, true, this.shim); + } + return false; + } + freeze() { + this.frozens.push({ + handlers: this.handlers, + aliasMap: this.aliasMap, + defaultCommand: this.defaultCommand, + }); + } + unfreeze() { + const frozen = this.frozens.pop(); + assertNotStrictEqual(frozen, undefined, this.shim); + ({ + handlers: this.handlers, + aliasMap: this.aliasMap, + defaultCommand: this.defaultCommand, + } = frozen); + } + reset() { + this.handlers = {}; + this.aliasMap = {}; + this.defaultCommand = undefined; + this.requireCache = new Set(); + return this; + } +} +export function command(usage, validation, globalMiddleware, shim) { + return new CommandInstance(usage, validation, globalMiddleware, shim); +} +export function isCommandBuilderDefinition(builder) { + return (typeof builder === 'object' && + !!builder.builder && + typeof builder.handler === 'function'); +} +function isCommandAndAliases(cmd) { + return cmd.every(c => typeof c === 'string'); +} +export function isCommandBuilderCallback(builder) { + return typeof builder === 'function'; +} +function isCommandBuilderOptionDefinitions(builder) { + return typeof builder === 'object'; +} +export function isCommandHandlerDefinition(cmd) { + return typeof cmd === 'object' && !Array.isArray(cmd); +} diff --git a/node_modules/yargs/build/lib/completion-templates.js b/node_modules/yargs/build/lib/completion-templates.js new file mode 100644 index 0000000..2c4dcb5 --- /dev/null +++ b/node_modules/yargs/build/lib/completion-templates.js @@ -0,0 +1,48 @@ +export const completionShTemplate = `###-begin-{{app_name}}-completions-### +# +# yargs command completion script +# +# Installation: {{app_path}} {{completion_command}} >> ~/.bashrc +# or {{app_path}} {{completion_command}} >> ~/.bash_profile on OSX. +# +_{{app_name}}_yargs_completions() +{ + local cur_word args type_list + + cur_word="\${COMP_WORDS[COMP_CWORD]}" + args=("\${COMP_WORDS[@]}") + + # ask yargs to generate completions. + type_list=$({{app_path}} --get-yargs-completions "\${args[@]}") + + COMPREPLY=( $(compgen -W "\${type_list}" -- \${cur_word}) ) + + # if no match was found, fall back to filename completion + if [ \${#COMPREPLY[@]} -eq 0 ]; then + COMPREPLY=() + fi + + return 0 +} +complete -o bashdefault -o default -F _{{app_name}}_yargs_completions {{app_name}} +###-end-{{app_name}}-completions-### +`; +export const completionZshTemplate = `#compdef {{app_name}} +###-begin-{{app_name}}-completions-### +# +# yargs command completion script +# +# Installation: {{app_path}} {{completion_command}} >> ~/.zshrc +# or {{app_path}} {{completion_command}} >> ~/.zprofile on OSX. +# +_{{app_name}}_yargs_completions() +{ + local reply + local si=$IFS + IFS=$'\n' reply=($(COMP_CWORD="$((CURRENT-1))" COMP_LINE="$BUFFER" COMP_POINT="$CURSOR" {{app_path}} --get-yargs-completions "\${words[@]}")) + IFS=$si + _describe 'values' reply +} +compdef _{{app_name}}_yargs_completions {{app_name}} +###-end-{{app_name}}-completions-### +`; diff --git a/node_modules/yargs/build/lib/completion.js b/node_modules/yargs/build/lib/completion.js new file mode 100644 index 0000000..cef2bbe --- /dev/null +++ b/node_modules/yargs/build/lib/completion.js @@ -0,0 +1,243 @@ +import { isCommandBuilderCallback } from './command.js'; +import { assertNotStrictEqual } from './typings/common-types.js'; +import * as templates from './completion-templates.js'; +import { isPromise } from './utils/is-promise.js'; +import { parseCommand } from './parse-command.js'; +export class Completion { + constructor(yargs, usage, command, shim) { + var _a, _b, _c; + this.yargs = yargs; + this.usage = usage; + this.command = command; + this.shim = shim; + this.completionKey = 'get-yargs-completions'; + this.aliases = null; + this.customCompletionFunction = null; + this.indexAfterLastReset = 0; + this.zshShell = + (_c = (((_a = this.shim.getEnv('SHELL')) === null || _a === void 0 ? void 0 : _a.includes('zsh')) || + ((_b = this.shim.getEnv('ZSH_NAME')) === null || _b === void 0 ? void 0 : _b.includes('zsh')))) !== null && _c !== void 0 ? _c : false; + } + defaultCompletion(args, argv, current, done) { + const handlers = this.command.getCommandHandlers(); + for (let i = 0, ii = args.length; i < ii; ++i) { + if (handlers[args[i]] && handlers[args[i]].builder) { + const builder = handlers[args[i]].builder; + if (isCommandBuilderCallback(builder)) { + this.indexAfterLastReset = i + 1; + const y = this.yargs.getInternalMethods().reset(); + builder(y, true); + return y.argv; + } + } + } + const completions = []; + this.commandCompletions(completions, args, current); + this.optionCompletions(completions, args, argv, current); + this.choicesFromOptionsCompletions(completions, args, argv, current); + this.choicesFromPositionalsCompletions(completions, args, argv, current); + done(null, completions); + } + commandCompletions(completions, args, current) { + const parentCommands = this.yargs + .getInternalMethods() + .getContext().commands; + if (!current.match(/^-/) && + parentCommands[parentCommands.length - 1] !== current && + !this.previousArgHasChoices(args)) { + this.usage.getCommands().forEach(usageCommand => { + const commandName = parseCommand(usageCommand[0]).cmd; + if (args.indexOf(commandName) === -1) { + if (!this.zshShell) { + completions.push(commandName); + } + else { + const desc = usageCommand[1] || ''; + completions.push(commandName.replace(/:/g, '\\:') + ':' + desc); + } + } + }); + } + } + optionCompletions(completions, args, argv, current) { + if ((current.match(/^-/) || (current === '' && completions.length === 0)) && + !this.previousArgHasChoices(args)) { + const options = this.yargs.getOptions(); + const positionalKeys = this.yargs.getGroups()[this.usage.getPositionalGroupName()] || []; + Object.keys(options.key).forEach(key => { + const negable = !!options.configuration['boolean-negation'] && + options.boolean.includes(key); + const isPositionalKey = positionalKeys.includes(key); + if (!isPositionalKey && + !options.hiddenOptions.includes(key) && + !this.argsContainKey(args, key, negable)) { + this.completeOptionKey(key, completions, current, negable && !!options.default[key]); + } + }); + } + } + choicesFromOptionsCompletions(completions, args, argv, current) { + if (this.previousArgHasChoices(args)) { + const choices = this.getPreviousArgChoices(args); + if (choices && choices.length > 0) { + completions.push(...choices.map(c => c.replace(/:/g, '\\:'))); + } + } + } + choicesFromPositionalsCompletions(completions, args, argv, current) { + if (current === '' && + completions.length > 0 && + this.previousArgHasChoices(args)) { + return; + } + const positionalKeys = this.yargs.getGroups()[this.usage.getPositionalGroupName()] || []; + const offset = Math.max(this.indexAfterLastReset, this.yargs.getInternalMethods().getContext().commands.length + + 1); + const positionalKey = positionalKeys[argv._.length - offset - 1]; + if (!positionalKey) { + return; + } + const choices = this.yargs.getOptions().choices[positionalKey] || []; + for (const choice of choices) { + if (choice.startsWith(current)) { + completions.push(choice.replace(/:/g, '\\:')); + } + } + } + getPreviousArgChoices(args) { + if (args.length < 1) + return; + let previousArg = args[args.length - 1]; + let filter = ''; + if (!previousArg.startsWith('-') && args.length > 1) { + filter = previousArg; + previousArg = args[args.length - 2]; + } + if (!previousArg.startsWith('-')) + return; + const previousArgKey = previousArg.replace(/^-+/, ''); + const options = this.yargs.getOptions(); + const possibleAliases = [ + previousArgKey, + ...(this.yargs.getAliases()[previousArgKey] || []), + ]; + let choices; + for (const possibleAlias of possibleAliases) { + if (Object.prototype.hasOwnProperty.call(options.key, possibleAlias) && + Array.isArray(options.choices[possibleAlias])) { + choices = options.choices[possibleAlias]; + break; + } + } + if (choices) { + return choices.filter(choice => !filter || choice.startsWith(filter)); + } + } + previousArgHasChoices(args) { + const choices = this.getPreviousArgChoices(args); + return choices !== undefined && choices.length > 0; + } + argsContainKey(args, key, negable) { + const argsContains = (s) => args.indexOf((/^[^0-9]$/.test(s) ? '-' : '--') + s) !== -1; + if (argsContains(key)) + return true; + if (negable && argsContains(`no-${key}`)) + return true; + if (this.aliases) { + for (const alias of this.aliases[key]) { + if (argsContains(alias)) + return true; + } + } + return false; + } + completeOptionKey(key, completions, current, negable) { + var _a, _b, _c, _d; + let keyWithDesc = key; + if (this.zshShell) { + const descs = this.usage.getDescriptions(); + const aliasKey = (_b = (_a = this === null || this === void 0 ? void 0 : this.aliases) === null || _a === void 0 ? void 0 : _a[key]) === null || _b === void 0 ? void 0 : _b.find(alias => { + const desc = descs[alias]; + return typeof desc === 'string' && desc.length > 0; + }); + const descFromAlias = aliasKey ? descs[aliasKey] : undefined; + const desc = (_d = (_c = descs[key]) !== null && _c !== void 0 ? _c : descFromAlias) !== null && _d !== void 0 ? _d : ''; + keyWithDesc = `${key.replace(/:/g, '\\:')}:${desc + .replace('__yargsString__:', '') + .replace(/(\r\n|\n|\r)/gm, ' ')}`; + } + const startsByTwoDashes = (s) => /^--/.test(s); + const isShortOption = (s) => /^[^0-9]$/.test(s); + const dashes = !startsByTwoDashes(current) && isShortOption(key) ? '-' : '--'; + completions.push(dashes + keyWithDesc); + if (negable) { + completions.push(dashes + 'no-' + keyWithDesc); + } + } + customCompletion(args, argv, current, done) { + assertNotStrictEqual(this.customCompletionFunction, null, this.shim); + if (isSyncCompletionFunction(this.customCompletionFunction)) { + const result = this.customCompletionFunction(current, argv); + if (isPromise(result)) { + return result + .then(list => { + this.shim.process.nextTick(() => { + done(null, list); + }); + }) + .catch(err => { + this.shim.process.nextTick(() => { + done(err, undefined); + }); + }); + } + return done(null, result); + } + else if (isFallbackCompletionFunction(this.customCompletionFunction)) { + return this.customCompletionFunction(current, argv, (onCompleted = done) => this.defaultCompletion(args, argv, current, onCompleted), completions => { + done(null, completions); + }); + } + else { + return this.customCompletionFunction(current, argv, completions => { + done(null, completions); + }); + } + } + getCompletion(args, done) { + const current = args.length ? args[args.length - 1] : ''; + const argv = this.yargs.parse(args, true); + const completionFunction = this.customCompletionFunction + ? (argv) => this.customCompletion(args, argv, current, done) + : (argv) => this.defaultCompletion(args, argv, current, done); + return isPromise(argv) + ? argv.then(completionFunction) + : completionFunction(argv); + } + generateCompletionScript($0, cmd) { + let script = this.zshShell + ? templates.completionZshTemplate + : templates.completionShTemplate; + const name = this.shim.path.basename($0); + if ($0.match(/\.js$/)) + $0 = `./${$0}`; + script = script.replace(/{{app_name}}/g, name); + script = script.replace(/{{completion_command}}/g, cmd); + return script.replace(/{{app_path}}/g, $0); + } + registerFunction(fn) { + this.customCompletionFunction = fn; + } + setParsed(parsed) { + this.aliases = parsed.aliases; + } +} +export function completion(yargs, usage, command, shim) { + return new Completion(yargs, usage, command, shim); +} +function isSyncCompletionFunction(completionFunction) { + return completionFunction.length < 3; +} +function isFallbackCompletionFunction(completionFunction) { + return completionFunction.length > 3; +} diff --git a/node_modules/yargs/build/lib/middleware.js b/node_modules/yargs/build/lib/middleware.js new file mode 100644 index 0000000..4e561a7 --- /dev/null +++ b/node_modules/yargs/build/lib/middleware.js @@ -0,0 +1,88 @@ +import { argsert } from './argsert.js'; +import { isPromise } from './utils/is-promise.js'; +export class GlobalMiddleware { + constructor(yargs) { + this.globalMiddleware = []; + this.frozens = []; + this.yargs = yargs; + } + addMiddleware(callback, applyBeforeValidation, global = true, mutates = false) { + argsert(' [boolean] [boolean] [boolean]', [callback, applyBeforeValidation, global], arguments.length); + if (Array.isArray(callback)) { + for (let i = 0; i < callback.length; i++) { + if (typeof callback[i] !== 'function') { + throw Error('middleware must be a function'); + } + const m = callback[i]; + m.applyBeforeValidation = applyBeforeValidation; + m.global = global; + } + Array.prototype.push.apply(this.globalMiddleware, callback); + } + else if (typeof callback === 'function') { + const m = callback; + m.applyBeforeValidation = applyBeforeValidation; + m.global = global; + m.mutates = mutates; + this.globalMiddleware.push(callback); + } + return this.yargs; + } + addCoerceMiddleware(callback, option) { + const aliases = this.yargs.getAliases(); + this.globalMiddleware = this.globalMiddleware.filter(m => { + const toCheck = [...(aliases[option] || []), option]; + if (!m.option) + return true; + else + return !toCheck.includes(m.option); + }); + callback.option = option; + return this.addMiddleware(callback, true, true, true); + } + getMiddleware() { + return this.globalMiddleware; + } + freeze() { + this.frozens.push([...this.globalMiddleware]); + } + unfreeze() { + const frozen = this.frozens.pop(); + if (frozen !== undefined) + this.globalMiddleware = frozen; + } + reset() { + this.globalMiddleware = this.globalMiddleware.filter(m => m.global); + } +} +export function commandMiddlewareFactory(commandMiddleware) { + if (!commandMiddleware) + return []; + return commandMiddleware.map(middleware => { + middleware.applyBeforeValidation = false; + return middleware; + }); +} +export function applyMiddleware(argv, yargs, middlewares, beforeValidation) { + return middlewares.reduce((acc, middleware) => { + if (middleware.applyBeforeValidation !== beforeValidation) { + return acc; + } + if (middleware.mutates) { + if (middleware.applied) + return acc; + middleware.applied = true; + } + if (isPromise(acc)) { + return acc + .then(initialObj => Promise.all([initialObj, middleware(initialObj, yargs)])) + .then(([initialObj, middlewareObj]) => Object.assign(initialObj, middlewareObj)); + } + else { + const result = middleware(acc, yargs); + return isPromise(result) + ? result.then(middlewareObj => Object.assign(acc, middlewareObj)) + : Object.assign(acc, result); + } + }, argv); +} diff --git a/node_modules/yargs/build/lib/parse-command.js b/node_modules/yargs/build/lib/parse-command.js new file mode 100644 index 0000000..4989f53 --- /dev/null +++ b/node_modules/yargs/build/lib/parse-command.js @@ -0,0 +1,32 @@ +export function parseCommand(cmd) { + const extraSpacesStrippedCommand = cmd.replace(/\s{2,}/g, ' '); + const splitCommand = extraSpacesStrippedCommand.split(/\s+(?![^[]*]|[^<]*>)/); + const bregex = /\.*[\][<>]/g; + const firstCommand = splitCommand.shift(); + if (!firstCommand) + throw new Error(`No command found in: ${cmd}`); + const parsedCommand = { + cmd: firstCommand.replace(bregex, ''), + demanded: [], + optional: [], + }; + splitCommand.forEach((cmd, i) => { + let variadic = false; + cmd = cmd.replace(/\s/g, ''); + if (/\.+[\]>]/.test(cmd) && i === splitCommand.length - 1) + variadic = true; + if (/^\[/.test(cmd)) { + parsedCommand.optional.push({ + cmd: cmd.replace(bregex, '').split('|'), + variadic, + }); + } + else { + parsedCommand.demanded.push({ + cmd: cmd.replace(bregex, '').split('|'), + variadic, + }); + } + }); + return parsedCommand; +} diff --git a/node_modules/yargs/build/lib/typings/common-types.js b/node_modules/yargs/build/lib/typings/common-types.js new file mode 100644 index 0000000..73e1773 --- /dev/null +++ b/node_modules/yargs/build/lib/typings/common-types.js @@ -0,0 +1,9 @@ +export function assertNotStrictEqual(actual, expected, shim, message) { + shim.assert.notStrictEqual(actual, expected, message); +} +export function assertSingleKey(actual, shim) { + shim.assert.strictEqual(typeof actual, 'string'); +} +export function objectKeys(object) { + return Object.keys(object); +} diff --git a/node_modules/yargs/build/lib/typings/yargs-parser-types.js b/node_modules/yargs/build/lib/typings/yargs-parser-types.js new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/node_modules/yargs/build/lib/typings/yargs-parser-types.js @@ -0,0 +1 @@ +export {}; diff --git a/node_modules/yargs/build/lib/usage.js b/node_modules/yargs/build/lib/usage.js new file mode 100644 index 0000000..0127c13 --- /dev/null +++ b/node_modules/yargs/build/lib/usage.js @@ -0,0 +1,584 @@ +import { objFilter } from './utils/obj-filter.js'; +import { YError } from './yerror.js'; +import setBlocking from './utils/set-blocking.js'; +function isBoolean(fail) { + return typeof fail === 'boolean'; +} +export function usage(yargs, shim) { + const __ = shim.y18n.__; + const self = {}; + const fails = []; + self.failFn = function failFn(f) { + fails.push(f); + }; + let failMessage = null; + let globalFailMessage = null; + let showHelpOnFail = true; + self.showHelpOnFail = function showHelpOnFailFn(arg1 = true, arg2) { + const [enabled, message] = typeof arg1 === 'string' ? [true, arg1] : [arg1, arg2]; + if (yargs.getInternalMethods().isGlobalContext()) { + globalFailMessage = message; + } + failMessage = message; + showHelpOnFail = enabled; + return self; + }; + let failureOutput = false; + self.fail = function fail(msg, err) { + const logger = yargs.getInternalMethods().getLoggerInstance(); + if (fails.length) { + for (let i = fails.length - 1; i >= 0; --i) { + const fail = fails[i]; + if (isBoolean(fail)) { + if (err) + throw err; + else if (msg) + throw Error(msg); + } + else { + fail(msg, err, self); + } + } + } + else { + if (yargs.getExitProcess()) + setBlocking(true); + if (!failureOutput) { + failureOutput = true; + if (showHelpOnFail) { + yargs.showHelp('error'); + logger.error(); + } + if (msg || err) + logger.error(msg || err); + const globalOrCommandFailMessage = failMessage || globalFailMessage; + if (globalOrCommandFailMessage) { + if (msg || err) + logger.error(''); + logger.error(globalOrCommandFailMessage); + } + } + err = err || new YError(msg); + if (yargs.getExitProcess()) { + return yargs.exit(1); + } + else if (yargs.getInternalMethods().hasParseCallback()) { + return yargs.exit(1, err); + } + else { + throw err; + } + } + }; + let usages = []; + let usageDisabled = false; + self.usage = (msg, description) => { + if (msg === null) { + usageDisabled = true; + usages = []; + return self; + } + usageDisabled = false; + usages.push([msg, description || '']); + return self; + }; + self.getUsage = () => { + return usages; + }; + self.getUsageDisabled = () => { + return usageDisabled; + }; + self.getPositionalGroupName = () => { + return __('Positionals:'); + }; + let examples = []; + self.example = (cmd, description) => { + examples.push([cmd, description || '']); + }; + let commands = []; + self.command = function command(cmd, description, isDefault, aliases, deprecated = false) { + if (isDefault) { + commands = commands.map(cmdArray => { + cmdArray[2] = false; + return cmdArray; + }); + } + commands.push([cmd, description || '', isDefault, aliases, deprecated]); + }; + self.getCommands = () => commands; + let descriptions = {}; + self.describe = function describe(keyOrKeys, desc) { + if (Array.isArray(keyOrKeys)) { + keyOrKeys.forEach(k => { + self.describe(k, desc); + }); + } + else if (typeof keyOrKeys === 'object') { + Object.keys(keyOrKeys).forEach(k => { + self.describe(k, keyOrKeys[k]); + }); + } + else { + descriptions[keyOrKeys] = desc; + } + }; + self.getDescriptions = () => descriptions; + let epilogs = []; + self.epilog = msg => { + epilogs.push(msg); + }; + let wrapSet = false; + let wrap; + self.wrap = cols => { + wrapSet = true; + wrap = cols; + }; + self.getWrap = () => { + if (shim.getEnv('YARGS_DISABLE_WRAP')) { + return null; + } + if (!wrapSet) { + wrap = windowWidth(); + wrapSet = true; + } + return wrap; + }; + const deferY18nLookupPrefix = '__yargsString__:'; + self.deferY18nLookup = str => deferY18nLookupPrefix + str; + self.help = function help() { + if (cachedHelpMessage) + return cachedHelpMessage; + normalizeAliases(); + const base$0 = yargs.customScriptName + ? yargs.$0 + : shim.path.basename(yargs.$0); + const demandedOptions = yargs.getDemandedOptions(); + const demandedCommands = yargs.getDemandedCommands(); + const deprecatedOptions = yargs.getDeprecatedOptions(); + const groups = yargs.getGroups(); + const options = yargs.getOptions(); + let keys = []; + keys = keys.concat(Object.keys(descriptions)); + keys = keys.concat(Object.keys(demandedOptions)); + keys = keys.concat(Object.keys(demandedCommands)); + keys = keys.concat(Object.keys(options.default)); + keys = keys.filter(filterHiddenOptions); + keys = Object.keys(keys.reduce((acc, key) => { + if (key !== '_') + acc[key] = true; + return acc; + }, {})); + const theWrap = self.getWrap(); + const ui = shim.cliui({ + width: theWrap, + wrap: !!theWrap, + }); + if (!usageDisabled) { + if (usages.length) { + usages.forEach(usage => { + ui.div({ text: `${usage[0].replace(/\$0/g, base$0)}` }); + if (usage[1]) { + ui.div({ text: `${usage[1]}`, padding: [1, 0, 0, 0] }); + } + }); + ui.div(); + } + else if (commands.length) { + let u = null; + if (demandedCommands._) { + u = `${base$0} <${__('command')}>\n`; + } + else { + u = `${base$0} [${__('command')}]\n`; + } + ui.div(`${u}`); + } + } + if (commands.length > 1 || (commands.length === 1 && !commands[0][2])) { + ui.div(__('Commands:')); + const context = yargs.getInternalMethods().getContext(); + const parentCommands = context.commands.length + ? `${context.commands.join(' ')} ` + : ''; + if (yargs.getInternalMethods().getParserConfiguration()['sort-commands'] === + true) { + commands = commands.sort((a, b) => a[0].localeCompare(b[0])); + } + const prefix = base$0 ? `${base$0} ` : ''; + commands.forEach(command => { + const commandString = `${prefix}${parentCommands}${command[0].replace(/^\$0 ?/, '')}`; + ui.span({ + text: commandString, + padding: [0, 2, 0, 2], + width: maxWidth(commands, theWrap, `${base$0}${parentCommands}`) + 4, + }, { text: command[1] }); + const hints = []; + if (command[2]) + hints.push(`[${__('default')}]`); + if (command[3] && command[3].length) { + hints.push(`[${__('aliases:')} ${command[3].join(', ')}]`); + } + if (command[4]) { + if (typeof command[4] === 'string') { + hints.push(`[${__('deprecated: %s', command[4])}]`); + } + else { + hints.push(`[${__('deprecated')}]`); + } + } + if (hints.length) { + ui.div({ + text: hints.join(' '), + padding: [0, 0, 0, 2], + align: 'right', + }); + } + else { + ui.div(); + } + }); + ui.div(); + } + const aliasKeys = (Object.keys(options.alias) || []).concat(Object.keys(yargs.parsed.newAliases) || []); + keys = keys.filter(key => !yargs.parsed.newAliases[key] && + aliasKeys.every(alias => (options.alias[alias] || []).indexOf(key) === -1)); + const defaultGroup = __('Options:'); + if (!groups[defaultGroup]) + groups[defaultGroup] = []; + addUngroupedKeys(keys, options.alias, groups, defaultGroup); + const isLongSwitch = (sw) => /^--/.test(getText(sw)); + const displayedGroups = Object.keys(groups) + .filter(groupName => groups[groupName].length > 0) + .map(groupName => { + const normalizedKeys = groups[groupName] + .filter(filterHiddenOptions) + .map(key => { + if (aliasKeys.includes(key)) + return key; + for (let i = 0, aliasKey; (aliasKey = aliasKeys[i]) !== undefined; i++) { + if ((options.alias[aliasKey] || []).includes(key)) + return aliasKey; + } + return key; + }); + return { groupName, normalizedKeys }; + }) + .filter(({ normalizedKeys }) => normalizedKeys.length > 0) + .map(({ groupName, normalizedKeys }) => { + const switches = normalizedKeys.reduce((acc, key) => { + acc[key] = [key] + .concat(options.alias[key] || []) + .map(sw => { + if (groupName === self.getPositionalGroupName()) + return sw; + else { + return ((/^[0-9]$/.test(sw) + ? options.boolean.includes(key) + ? '-' + : '--' + : sw.length > 1 + ? '--' + : '-') + sw); + } + }) + .sort((sw1, sw2) => isLongSwitch(sw1) === isLongSwitch(sw2) + ? 0 + : isLongSwitch(sw1) + ? 1 + : -1) + .join(', '); + return acc; + }, {}); + return { groupName, normalizedKeys, switches }; + }); + const shortSwitchesUsed = displayedGroups + .filter(({ groupName }) => groupName !== self.getPositionalGroupName()) + .some(({ normalizedKeys, switches }) => !normalizedKeys.every(key => isLongSwitch(switches[key]))); + if (shortSwitchesUsed) { + displayedGroups + .filter(({ groupName }) => groupName !== self.getPositionalGroupName()) + .forEach(({ normalizedKeys, switches }) => { + normalizedKeys.forEach(key => { + if (isLongSwitch(switches[key])) { + switches[key] = addIndentation(switches[key], '-x, '.length); + } + }); + }); + } + displayedGroups.forEach(({ groupName, normalizedKeys, switches }) => { + ui.div(groupName); + normalizedKeys.forEach(key => { + const kswitch = switches[key]; + let desc = descriptions[key] || ''; + let type = null; + if (desc.includes(deferY18nLookupPrefix)) + desc = __(desc.substring(deferY18nLookupPrefix.length)); + if (options.boolean.includes(key)) + type = `[${__('boolean')}]`; + if (options.count.includes(key)) + type = `[${__('count')}]`; + if (options.string.includes(key)) + type = `[${__('string')}]`; + if (options.normalize.includes(key)) + type = `[${__('string')}]`; + if (options.array.includes(key)) + type = `[${__('array')}]`; + if (options.number.includes(key)) + type = `[${__('number')}]`; + const deprecatedExtra = (deprecated) => typeof deprecated === 'string' + ? `[${__('deprecated: %s', deprecated)}]` + : `[${__('deprecated')}]`; + const extra = [ + key in deprecatedOptions + ? deprecatedExtra(deprecatedOptions[key]) + : null, + type, + key in demandedOptions ? `[${__('required')}]` : null, + options.choices && options.choices[key] + ? `[${__('choices:')} ${self.stringifiedValues(options.choices[key])}]` + : null, + defaultString(options.default[key], options.defaultDescription[key]), + ] + .filter(Boolean) + .join(' '); + ui.span({ + text: getText(kswitch), + padding: [0, 2, 0, 2 + getIndentation(kswitch)], + width: maxWidth(switches, theWrap) + 4, + }, desc); + const shouldHideOptionExtras = yargs.getInternalMethods().getUsageConfiguration()['hide-types'] === + true; + if (extra && !shouldHideOptionExtras) + ui.div({ text: extra, padding: [0, 0, 0, 2], align: 'right' }); + else + ui.div(); + }); + ui.div(); + }); + if (examples.length) { + ui.div(__('Examples:')); + examples.forEach(example => { + example[0] = example[0].replace(/\$0/g, base$0); + }); + examples.forEach(example => { + if (example[1] === '') { + ui.div({ + text: example[0], + padding: [0, 2, 0, 2], + }); + } + else { + ui.div({ + text: example[0], + padding: [0, 2, 0, 2], + width: maxWidth(examples, theWrap) + 4, + }, { + text: example[1], + }); + } + }); + ui.div(); + } + if (epilogs.length > 0) { + const e = epilogs + .map(epilog => epilog.replace(/\$0/g, base$0)) + .join('\n'); + ui.div(`${e}\n`); + } + return ui.toString().replace(/\s*$/, ''); + }; + function maxWidth(table, theWrap, modifier) { + let width = 0; + if (!Array.isArray(table)) { + table = Object.values(table).map(v => [v]); + } + table.forEach(v => { + width = Math.max(shim.stringWidth(modifier ? `${modifier} ${getText(v[0])}` : getText(v[0])) + getIndentation(v[0]), width); + }); + if (theWrap) + width = Math.min(width, parseInt((theWrap * 0.5).toString(), 10)); + return width; + } + function normalizeAliases() { + const demandedOptions = yargs.getDemandedOptions(); + const options = yargs.getOptions(); + (Object.keys(options.alias) || []).forEach(key => { + options.alias[key].forEach(alias => { + if (descriptions[alias]) + self.describe(key, descriptions[alias]); + if (alias in demandedOptions) + yargs.demandOption(key, demandedOptions[alias]); + if (options.boolean.includes(alias)) + yargs.boolean(key); + if (options.count.includes(alias)) + yargs.count(key); + if (options.string.includes(alias)) + yargs.string(key); + if (options.normalize.includes(alias)) + yargs.normalize(key); + if (options.array.includes(alias)) + yargs.array(key); + if (options.number.includes(alias)) + yargs.number(key); + }); + }); + } + let cachedHelpMessage; + self.cacheHelpMessage = function () { + cachedHelpMessage = this.help(); + }; + self.clearCachedHelpMessage = function () { + cachedHelpMessage = undefined; + }; + self.hasCachedHelpMessage = function () { + return !!cachedHelpMessage; + }; + function addUngroupedKeys(keys, aliases, groups, defaultGroup) { + let groupedKeys = []; + let toCheck = null; + Object.keys(groups).forEach(group => { + groupedKeys = groupedKeys.concat(groups[group]); + }); + keys.forEach(key => { + toCheck = [key].concat(aliases[key]); + if (!toCheck.some(k => groupedKeys.indexOf(k) !== -1)) { + groups[defaultGroup].push(key); + } + }); + return groupedKeys; + } + function filterHiddenOptions(key) { + return (yargs.getOptions().hiddenOptions.indexOf(key) < 0 || + yargs.parsed.argv[yargs.getOptions().showHiddenOpt]); + } + self.showHelp = (level) => { + const logger = yargs.getInternalMethods().getLoggerInstance(); + if (!level) + level = 'error'; + const emit = typeof level === 'function' ? level : logger[level]; + emit(self.help()); + }; + self.functionDescription = fn => { + const description = fn.name + ? shim.Parser.decamelize(fn.name, '-') + : __('generated-value'); + return ['(', description, ')'].join(''); + }; + self.stringifiedValues = function stringifiedValues(values, separator) { + let string = ''; + const sep = separator || ', '; + const array = [].concat(values); + if (!values || !array.length) + return string; + array.forEach(value => { + if (string.length) + string += sep; + string += JSON.stringify(value); + }); + return string; + }; + function defaultString(value, defaultDescription) { + let string = `[${__('default:')} `; + if (value === undefined && !defaultDescription) + return null; + if (defaultDescription) { + string += defaultDescription; + } + else { + switch (typeof value) { + case 'string': + string += `"${value}"`; + break; + case 'object': + string += JSON.stringify(value); + break; + default: + string += value; + } + } + return `${string}]`; + } + function windowWidth() { + const maxWidth = 80; + if (shim.process.stdColumns) { + return Math.min(maxWidth, shim.process.stdColumns); + } + else { + return maxWidth; + } + } + let version = null; + self.version = ver => { + version = ver; + }; + self.showVersion = level => { + const logger = yargs.getInternalMethods().getLoggerInstance(); + if (!level) + level = 'error'; + const emit = typeof level === 'function' ? level : logger[level]; + emit(version); + }; + self.reset = function reset(localLookup) { + failMessage = null; + failureOutput = false; + usages = []; + usageDisabled = false; + epilogs = []; + examples = []; + commands = []; + descriptions = objFilter(descriptions, k => !localLookup[k]); + return self; + }; + const frozens = []; + self.freeze = function freeze() { + frozens.push({ + failMessage, + failureOutput, + usages, + usageDisabled, + epilogs, + examples, + commands, + descriptions, + }); + }; + self.unfreeze = function unfreeze(defaultCommand = false) { + const frozen = frozens.pop(); + if (!frozen) + return; + if (defaultCommand) { + descriptions = { ...frozen.descriptions, ...descriptions }; + commands = [...frozen.commands, ...commands]; + usages = [...frozen.usages, ...usages]; + examples = [...frozen.examples, ...examples]; + epilogs = [...frozen.epilogs, ...epilogs]; + } + else { + ({ + failMessage, + failureOutput, + usages, + usageDisabled, + epilogs, + examples, + commands, + descriptions, + } = frozen); + } + }; + return self; +} +function isIndentedText(text) { + return typeof text === 'object'; +} +function addIndentation(text, indent) { + return isIndentedText(text) + ? { text: text.text, indentation: text.indentation + indent } + : { text, indentation: indent }; +} +function getIndentation(text) { + return isIndentedText(text) ? text.indentation : 0; +} +function getText(text) { + return isIndentedText(text) ? text.text : text; +} diff --git a/node_modules/yargs/build/lib/utils/apply-extends.js b/node_modules/yargs/build/lib/utils/apply-extends.js new file mode 100644 index 0000000..0e593b4 --- /dev/null +++ b/node_modules/yargs/build/lib/utils/apply-extends.js @@ -0,0 +1,59 @@ +import { YError } from '../yerror.js'; +let previouslyVisitedConfigs = []; +let shim; +export function applyExtends(config, cwd, mergeExtends, _shim) { + shim = _shim; + let defaultConfig = {}; + if (Object.prototype.hasOwnProperty.call(config, 'extends')) { + if (typeof config.extends !== 'string') + return defaultConfig; + const isPath = /\.json|\..*rc$/.test(config.extends); + let pathToDefault = null; + if (!isPath) { + try { + pathToDefault = require.resolve(config.extends); + } + catch (_err) { + return config; + } + } + else { + pathToDefault = getPathToDefaultConfig(cwd, config.extends); + } + checkForCircularExtends(pathToDefault); + previouslyVisitedConfigs.push(pathToDefault); + defaultConfig = isPath + ? JSON.parse(shim.readFileSync(pathToDefault, 'utf8')) + : require(config.extends); + delete config.extends; + defaultConfig = applyExtends(defaultConfig, shim.path.dirname(pathToDefault), mergeExtends, shim); + } + previouslyVisitedConfigs = []; + return mergeExtends + ? mergeDeep(defaultConfig, config) + : Object.assign({}, defaultConfig, config); +} +function checkForCircularExtends(cfgPath) { + if (previouslyVisitedConfigs.indexOf(cfgPath) > -1) { + throw new YError(`Circular extended configurations: '${cfgPath}'.`); + } +} +function getPathToDefaultConfig(cwd, pathToExtend) { + return shim.path.resolve(cwd, pathToExtend); +} +function mergeDeep(config1, config2) { + const target = {}; + function isObject(obj) { + return obj && typeof obj === 'object' && !Array.isArray(obj); + } + Object.assign(target, config1); + for (const key of Object.keys(config2)) { + if (isObject(config2[key]) && isObject(target[key])) { + target[key] = mergeDeep(config1[key], config2[key]); + } + else { + target[key] = config2[key]; + } + } + return target; +} diff --git a/node_modules/yargs/build/lib/utils/is-promise.js b/node_modules/yargs/build/lib/utils/is-promise.js new file mode 100644 index 0000000..d250c08 --- /dev/null +++ b/node_modules/yargs/build/lib/utils/is-promise.js @@ -0,0 +1,5 @@ +export function isPromise(maybePromise) { + return (!!maybePromise && + !!maybePromise.then && + typeof maybePromise.then === 'function'); +} diff --git a/node_modules/yargs/build/lib/utils/levenshtein.js b/node_modules/yargs/build/lib/utils/levenshtein.js new file mode 100644 index 0000000..60575ef --- /dev/null +++ b/node_modules/yargs/build/lib/utils/levenshtein.js @@ -0,0 +1,34 @@ +export function levenshtein(a, b) { + if (a.length === 0) + return b.length; + if (b.length === 0) + return a.length; + const matrix = []; + let i; + for (i = 0; i <= b.length; i++) { + matrix[i] = [i]; + } + let j; + for (j = 0; j <= a.length; j++) { + matrix[0][j] = j; + } + for (i = 1; i <= b.length; i++) { + for (j = 1; j <= a.length; j++) { + if (b.charAt(i - 1) === a.charAt(j - 1)) { + matrix[i][j] = matrix[i - 1][j - 1]; + } + else { + if (i > 1 && + j > 1 && + b.charAt(i - 2) === a.charAt(j - 1) && + b.charAt(i - 1) === a.charAt(j - 2)) { + matrix[i][j] = matrix[i - 2][j - 2] + 1; + } + else { + matrix[i][j] = Math.min(matrix[i - 1][j - 1] + 1, Math.min(matrix[i][j - 1] + 1, matrix[i - 1][j] + 1)); + } + } + } + } + return matrix[b.length][a.length]; +} diff --git a/node_modules/yargs/build/lib/utils/maybe-async-result.js b/node_modules/yargs/build/lib/utils/maybe-async-result.js new file mode 100644 index 0000000..8c6a40c --- /dev/null +++ b/node_modules/yargs/build/lib/utils/maybe-async-result.js @@ -0,0 +1,17 @@ +import { isPromise } from './is-promise.js'; +export function maybeAsyncResult(getResult, resultHandler, errorHandler = (err) => { + throw err; +}) { + try { + const result = isFunction(getResult) ? getResult() : getResult; + return isPromise(result) + ? result.then((result) => resultHandler(result)) + : resultHandler(result); + } + catch (err) { + return errorHandler(err); + } +} +function isFunction(arg) { + return typeof arg === 'function'; +} diff --git a/node_modules/yargs/build/lib/utils/obj-filter.js b/node_modules/yargs/build/lib/utils/obj-filter.js new file mode 100644 index 0000000..cd68ad2 --- /dev/null +++ b/node_modules/yargs/build/lib/utils/obj-filter.js @@ -0,0 +1,10 @@ +import { objectKeys } from '../typings/common-types.js'; +export function objFilter(original = {}, filter = () => true) { + const obj = {}; + objectKeys(original).forEach(key => { + if (filter(key, original[key])) { + obj[key] = original[key]; + } + }); + return obj; +} diff --git a/node_modules/yargs/build/lib/utils/process-argv.js b/node_modules/yargs/build/lib/utils/process-argv.js new file mode 100644 index 0000000..74dc9e4 --- /dev/null +++ b/node_modules/yargs/build/lib/utils/process-argv.js @@ -0,0 +1,17 @@ +function getProcessArgvBinIndex() { + if (isBundledElectronApp()) + return 0; + return 1; +} +function isBundledElectronApp() { + return isElectronApp() && !process.defaultApp; +} +function isElectronApp() { + return !!process.versions.electron; +} +export function hideBin(argv) { + return argv.slice(getProcessArgvBinIndex() + 1); +} +export function getProcessArgvBin() { + return process.argv[getProcessArgvBinIndex()]; +} diff --git a/node_modules/yargs/build/lib/utils/set-blocking.js b/node_modules/yargs/build/lib/utils/set-blocking.js new file mode 100644 index 0000000..88fb806 --- /dev/null +++ b/node_modules/yargs/build/lib/utils/set-blocking.js @@ -0,0 +1,12 @@ +export default function setBlocking(blocking) { + if (typeof process === 'undefined') + return; + [process.stdout, process.stderr].forEach(_stream => { + const stream = _stream; + if (stream._handle && + stream.isTTY && + typeof stream._handle.setBlocking === 'function') { + stream._handle.setBlocking(blocking); + } + }); +} diff --git a/node_modules/yargs/build/lib/utils/which-module.js b/node_modules/yargs/build/lib/utils/which-module.js new file mode 100644 index 0000000..5974e22 --- /dev/null +++ b/node_modules/yargs/build/lib/utils/which-module.js @@ -0,0 +1,10 @@ +export default function whichModule(exported) { + if (typeof require === 'undefined') + return null; + for (let i = 0, files = Object.keys(require.cache), mod; i < files.length; i++) { + mod = require.cache[files[i]]; + if (mod.exports === exported) + return mod; + } + return null; +} diff --git a/node_modules/yargs/build/lib/validation.js b/node_modules/yargs/build/lib/validation.js new file mode 100644 index 0000000..bd2e1b8 --- /dev/null +++ b/node_modules/yargs/build/lib/validation.js @@ -0,0 +1,305 @@ +import { argsert } from './argsert.js'; +import { assertNotStrictEqual, } from './typings/common-types.js'; +import { levenshtein as distance } from './utils/levenshtein.js'; +import { objFilter } from './utils/obj-filter.js'; +const specialKeys = ['$0', '--', '_']; +export function validation(yargs, usage, shim) { + const __ = shim.y18n.__; + const __n = shim.y18n.__n; + const self = {}; + self.nonOptionCount = function nonOptionCount(argv) { + const demandedCommands = yargs.getDemandedCommands(); + const positionalCount = argv._.length + (argv['--'] ? argv['--'].length : 0); + const _s = positionalCount - yargs.getInternalMethods().getContext().commands.length; + if (demandedCommands._ && + (_s < demandedCommands._.min || _s > demandedCommands._.max)) { + if (_s < demandedCommands._.min) { + if (demandedCommands._.minMsg !== undefined) { + usage.fail(demandedCommands._.minMsg + ? demandedCommands._.minMsg + .replace(/\$0/g, _s.toString()) + .replace(/\$1/, demandedCommands._.min.toString()) + : null); + } + else { + usage.fail(__n('Not enough non-option arguments: got %s, need at least %s', 'Not enough non-option arguments: got %s, need at least %s', _s, _s.toString(), demandedCommands._.min.toString())); + } + } + else if (_s > demandedCommands._.max) { + if (demandedCommands._.maxMsg !== undefined) { + usage.fail(demandedCommands._.maxMsg + ? demandedCommands._.maxMsg + .replace(/\$0/g, _s.toString()) + .replace(/\$1/, demandedCommands._.max.toString()) + : null); + } + else { + usage.fail(__n('Too many non-option arguments: got %s, maximum of %s', 'Too many non-option arguments: got %s, maximum of %s', _s, _s.toString(), demandedCommands._.max.toString())); + } + } + } + }; + self.positionalCount = function positionalCount(required, observed) { + if (observed < required) { + usage.fail(__n('Not enough non-option arguments: got %s, need at least %s', 'Not enough non-option arguments: got %s, need at least %s', observed, observed + '', required + '')); + } + }; + self.requiredArguments = function requiredArguments(argv, demandedOptions) { + let missing = null; + for (const key of Object.keys(demandedOptions)) { + if (!Object.prototype.hasOwnProperty.call(argv, key) || + typeof argv[key] === 'undefined') { + missing = missing || {}; + missing[key] = demandedOptions[key]; + } + } + if (missing) { + const customMsgs = []; + for (const key of Object.keys(missing)) { + const msg = missing[key]; + if (msg && customMsgs.indexOf(msg) < 0) { + customMsgs.push(msg); + } + } + const customMsg = customMsgs.length ? `\n${customMsgs.join('\n')}` : ''; + usage.fail(__n('Missing required argument: %s', 'Missing required arguments: %s', Object.keys(missing).length, Object.keys(missing).join(', ') + customMsg)); + } + }; + self.unknownArguments = function unknownArguments(argv, aliases, positionalMap, isDefaultCommand, checkPositionals = true) { + var _a; + const commandKeys = yargs + .getInternalMethods() + .getCommandInstance() + .getCommands(); + const unknown = []; + const currentContext = yargs.getInternalMethods().getContext(); + Object.keys(argv).forEach(key => { + if (!specialKeys.includes(key) && + !Object.prototype.hasOwnProperty.call(positionalMap, key) && + !Object.prototype.hasOwnProperty.call(yargs.getInternalMethods().getParseContext(), key) && + !self.isValidAndSomeAliasIsNotNew(key, aliases)) { + unknown.push(key); + } + }); + if (checkPositionals && + (currentContext.commands.length > 0 || + commandKeys.length > 0 || + isDefaultCommand)) { + argv._.slice(currentContext.commands.length).forEach(key => { + if (!commandKeys.includes('' + key)) { + unknown.push('' + key); + } + }); + } + if (checkPositionals) { + const demandedCommands = yargs.getDemandedCommands(); + const maxNonOptDemanded = ((_a = demandedCommands._) === null || _a === void 0 ? void 0 : _a.max) || 0; + const expected = currentContext.commands.length + maxNonOptDemanded; + if (expected < argv._.length) { + argv._.slice(expected).forEach(key => { + key = String(key); + if (!currentContext.commands.includes(key) && + !unknown.includes(key)) { + unknown.push(key); + } + }); + } + } + if (unknown.length) { + usage.fail(__n('Unknown argument: %s', 'Unknown arguments: %s', unknown.length, unknown.map(s => (s.trim() ? s : `"${s}"`)).join(', '))); + } + }; + self.unknownCommands = function unknownCommands(argv) { + const commandKeys = yargs + .getInternalMethods() + .getCommandInstance() + .getCommands(); + const unknown = []; + const currentContext = yargs.getInternalMethods().getContext(); + if (currentContext.commands.length > 0 || commandKeys.length > 0) { + argv._.slice(currentContext.commands.length).forEach(key => { + if (!commandKeys.includes('' + key)) { + unknown.push('' + key); + } + }); + } + if (unknown.length > 0) { + usage.fail(__n('Unknown command: %s', 'Unknown commands: %s', unknown.length, unknown.join(', '))); + return true; + } + else { + return false; + } + }; + self.isValidAndSomeAliasIsNotNew = function isValidAndSomeAliasIsNotNew(key, aliases) { + if (!Object.prototype.hasOwnProperty.call(aliases, key)) { + return false; + } + const newAliases = yargs.parsed.newAliases; + return [key, ...aliases[key]].some(a => !Object.prototype.hasOwnProperty.call(newAliases, a) || !newAliases[key]); + }; + self.limitedChoices = function limitedChoices(argv) { + const options = yargs.getOptions(); + const invalid = {}; + if (!Object.keys(options.choices).length) + return; + Object.keys(argv).forEach(key => { + if (specialKeys.indexOf(key) === -1 && + Object.prototype.hasOwnProperty.call(options.choices, key)) { + [].concat(argv[key]).forEach(value => { + if (options.choices[key].indexOf(value) === -1 && + value !== undefined) { + invalid[key] = (invalid[key] || []).concat(value); + } + }); + } + }); + const invalidKeys = Object.keys(invalid); + if (!invalidKeys.length) + return; + let msg = __('Invalid values:'); + invalidKeys.forEach(key => { + msg += `\n ${__('Argument: %s, Given: %s, Choices: %s', key, usage.stringifiedValues(invalid[key]), usage.stringifiedValues(options.choices[key]))}`; + }); + usage.fail(msg); + }; + let implied = {}; + self.implies = function implies(key, value) { + argsert(' [array|number|string]', [key, value], arguments.length); + if (typeof key === 'object') { + Object.keys(key).forEach(k => { + self.implies(k, key[k]); + }); + } + else { + yargs.global(key); + if (!implied[key]) { + implied[key] = []; + } + if (Array.isArray(value)) { + value.forEach(i => self.implies(key, i)); + } + else { + assertNotStrictEqual(value, undefined, shim); + implied[key].push(value); + } + } + }; + self.getImplied = function getImplied() { + return implied; + }; + function keyExists(argv, val) { + const num = Number(val); + val = isNaN(num) ? val : num; + if (typeof val === 'number') { + val = argv._.length >= val; + } + else if (val.match(/^--no-.+/)) { + val = val.match(/^--no-(.+)/)[1]; + val = !Object.prototype.hasOwnProperty.call(argv, val); + } + else { + val = Object.prototype.hasOwnProperty.call(argv, val); + } + return val; + } + self.implications = function implications(argv) { + const implyFail = []; + Object.keys(implied).forEach(key => { + const origKey = key; + (implied[key] || []).forEach(value => { + let key = origKey; + const origValue = value; + key = keyExists(argv, key); + value = keyExists(argv, value); + if (key && !value) { + implyFail.push(` ${origKey} -> ${origValue}`); + } + }); + }); + if (implyFail.length) { + let msg = `${__('Implications failed:')}\n`; + implyFail.forEach(value => { + msg += value; + }); + usage.fail(msg); + } + }; + let conflicting = {}; + self.conflicts = function conflicts(key, value) { + argsert(' [array|string]', [key, value], arguments.length); + if (typeof key === 'object') { + Object.keys(key).forEach(k => { + self.conflicts(k, key[k]); + }); + } + else { + yargs.global(key); + if (!conflicting[key]) { + conflicting[key] = []; + } + if (Array.isArray(value)) { + value.forEach(i => self.conflicts(key, i)); + } + else { + conflicting[key].push(value); + } + } + }; + self.getConflicting = () => conflicting; + self.conflicting = function conflictingFn(argv) { + Object.keys(argv).forEach(key => { + if (conflicting[key]) { + conflicting[key].forEach(value => { + if (value && argv[key] !== undefined && argv[value] !== undefined) { + usage.fail(__('Arguments %s and %s are mutually exclusive', key, value)); + } + }); + } + }); + if (yargs.getInternalMethods().getParserConfiguration()['strip-dashed']) { + Object.keys(conflicting).forEach(key => { + conflicting[key].forEach(value => { + if (value && + argv[shim.Parser.camelCase(key)] !== undefined && + argv[shim.Parser.camelCase(value)] !== undefined) { + usage.fail(__('Arguments %s and %s are mutually exclusive', key, value)); + } + }); + }); + } + }; + self.recommendCommands = function recommendCommands(cmd, potentialCommands) { + const threshold = 3; + potentialCommands = potentialCommands.sort((a, b) => b.length - a.length); + let recommended = null; + let bestDistance = Infinity; + for (let i = 0, candidate; (candidate = potentialCommands[i]) !== undefined; i++) { + const d = distance(cmd, candidate); + if (d <= threshold && d < bestDistance) { + bestDistance = d; + recommended = candidate; + } + } + if (recommended) + usage.fail(__('Did you mean %s?', recommended)); + }; + self.reset = function reset(localLookup) { + implied = objFilter(implied, k => !localLookup[k]); + conflicting = objFilter(conflicting, k => !localLookup[k]); + return self; + }; + const frozens = []; + self.freeze = function freeze() { + frozens.push({ + implied, + conflicting, + }); + }; + self.unfreeze = function unfreeze() { + const frozen = frozens.pop(); + assertNotStrictEqual(frozen, undefined, shim); + ({ implied, conflicting } = frozen); + }; + return self; +} diff --git a/node_modules/yargs/build/lib/yargs-factory.js b/node_modules/yargs/build/lib/yargs-factory.js new file mode 100644 index 0000000..c4b1d50 --- /dev/null +++ b/node_modules/yargs/build/lib/yargs-factory.js @@ -0,0 +1,1512 @@ +var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) { + if (kind === "m") throw new TypeError("Private method is not writable"); + if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); + if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); + return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value; +}; +var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) { + if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); + if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); + return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); +}; +var _YargsInstance_command, _YargsInstance_cwd, _YargsInstance_context, _YargsInstance_completion, _YargsInstance_completionCommand, _YargsInstance_defaultShowHiddenOpt, _YargsInstance_exitError, _YargsInstance_detectLocale, _YargsInstance_emittedWarnings, _YargsInstance_exitProcess, _YargsInstance_frozens, _YargsInstance_globalMiddleware, _YargsInstance_groups, _YargsInstance_hasOutput, _YargsInstance_helpOpt, _YargsInstance_isGlobalContext, _YargsInstance_logger, _YargsInstance_output, _YargsInstance_options, _YargsInstance_parentRequire, _YargsInstance_parserConfig, _YargsInstance_parseFn, _YargsInstance_parseContext, _YargsInstance_pkgs, _YargsInstance_preservedGroups, _YargsInstance_processArgs, _YargsInstance_recommendCommands, _YargsInstance_shim, _YargsInstance_strict, _YargsInstance_strictCommands, _YargsInstance_strictOptions, _YargsInstance_usage, _YargsInstance_usageConfig, _YargsInstance_versionOpt, _YargsInstance_validation; +import { command as Command, } from './command.js'; +import { assertNotStrictEqual, assertSingleKey, objectKeys, } from './typings/common-types.js'; +import { YError } from './yerror.js'; +import { usage as Usage } from './usage.js'; +import { argsert } from './argsert.js'; +import { completion as Completion, } from './completion.js'; +import { validation as Validation, } from './validation.js'; +import { objFilter } from './utils/obj-filter.js'; +import { applyExtends } from './utils/apply-extends.js'; +import { applyMiddleware, GlobalMiddleware, } from './middleware.js'; +import { isPromise } from './utils/is-promise.js'; +import { maybeAsyncResult } from './utils/maybe-async-result.js'; +import setBlocking from './utils/set-blocking.js'; +export function YargsFactory(_shim) { + return (processArgs = [], cwd = _shim.process.cwd(), parentRequire) => { + const yargs = new YargsInstance(processArgs, cwd, parentRequire, _shim); + Object.defineProperty(yargs, 'argv', { + get: () => { + return yargs.parse(); + }, + enumerable: true, + }); + yargs.help(); + yargs.version(); + return yargs; + }; +} +const kCopyDoubleDash = Symbol('copyDoubleDash'); +const kCreateLogger = Symbol('copyDoubleDash'); +const kDeleteFromParserHintObject = Symbol('deleteFromParserHintObject'); +const kEmitWarning = Symbol('emitWarning'); +const kFreeze = Symbol('freeze'); +const kGetDollarZero = Symbol('getDollarZero'); +const kGetParserConfiguration = Symbol('getParserConfiguration'); +const kGetUsageConfiguration = Symbol('getUsageConfiguration'); +const kGuessLocale = Symbol('guessLocale'); +const kGuessVersion = Symbol('guessVersion'); +const kParsePositionalNumbers = Symbol('parsePositionalNumbers'); +const kPkgUp = Symbol('pkgUp'); +const kPopulateParserHintArray = Symbol('populateParserHintArray'); +const kPopulateParserHintSingleValueDictionary = Symbol('populateParserHintSingleValueDictionary'); +const kPopulateParserHintArrayDictionary = Symbol('populateParserHintArrayDictionary'); +const kPopulateParserHintDictionary = Symbol('populateParserHintDictionary'); +const kSanitizeKey = Symbol('sanitizeKey'); +const kSetKey = Symbol('setKey'); +const kUnfreeze = Symbol('unfreeze'); +const kValidateAsync = Symbol('validateAsync'); +const kGetCommandInstance = Symbol('getCommandInstance'); +const kGetContext = Symbol('getContext'); +const kGetHasOutput = Symbol('getHasOutput'); +const kGetLoggerInstance = Symbol('getLoggerInstance'); +const kGetParseContext = Symbol('getParseContext'); +const kGetUsageInstance = Symbol('getUsageInstance'); +const kGetValidationInstance = Symbol('getValidationInstance'); +const kHasParseCallback = Symbol('hasParseCallback'); +const kIsGlobalContext = Symbol('isGlobalContext'); +const kPostProcess = Symbol('postProcess'); +const kRebase = Symbol('rebase'); +const kReset = Symbol('reset'); +const kRunYargsParserAndExecuteCommands = Symbol('runYargsParserAndExecuteCommands'); +const kRunValidation = Symbol('runValidation'); +const kSetHasOutput = Symbol('setHasOutput'); +const kTrackManuallySetKeys = Symbol('kTrackManuallySetKeys'); +export class YargsInstance { + constructor(processArgs = [], cwd, parentRequire, shim) { + this.customScriptName = false; + this.parsed = false; + _YargsInstance_command.set(this, void 0); + _YargsInstance_cwd.set(this, void 0); + _YargsInstance_context.set(this, { commands: [], fullCommands: [] }); + _YargsInstance_completion.set(this, null); + _YargsInstance_completionCommand.set(this, null); + _YargsInstance_defaultShowHiddenOpt.set(this, 'show-hidden'); + _YargsInstance_exitError.set(this, null); + _YargsInstance_detectLocale.set(this, true); + _YargsInstance_emittedWarnings.set(this, {}); + _YargsInstance_exitProcess.set(this, true); + _YargsInstance_frozens.set(this, []); + _YargsInstance_globalMiddleware.set(this, void 0); + _YargsInstance_groups.set(this, {}); + _YargsInstance_hasOutput.set(this, false); + _YargsInstance_helpOpt.set(this, null); + _YargsInstance_isGlobalContext.set(this, true); + _YargsInstance_logger.set(this, void 0); + _YargsInstance_output.set(this, ''); + _YargsInstance_options.set(this, void 0); + _YargsInstance_parentRequire.set(this, void 0); + _YargsInstance_parserConfig.set(this, {}); + _YargsInstance_parseFn.set(this, null); + _YargsInstance_parseContext.set(this, null); + _YargsInstance_pkgs.set(this, {}); + _YargsInstance_preservedGroups.set(this, {}); + _YargsInstance_processArgs.set(this, void 0); + _YargsInstance_recommendCommands.set(this, false); + _YargsInstance_shim.set(this, void 0); + _YargsInstance_strict.set(this, false); + _YargsInstance_strictCommands.set(this, false); + _YargsInstance_strictOptions.set(this, false); + _YargsInstance_usage.set(this, void 0); + _YargsInstance_usageConfig.set(this, {}); + _YargsInstance_versionOpt.set(this, null); + _YargsInstance_validation.set(this, void 0); + __classPrivateFieldSet(this, _YargsInstance_shim, shim, "f"); + __classPrivateFieldSet(this, _YargsInstance_processArgs, processArgs, "f"); + __classPrivateFieldSet(this, _YargsInstance_cwd, cwd, "f"); + __classPrivateFieldSet(this, _YargsInstance_parentRequire, parentRequire, "f"); + __classPrivateFieldSet(this, _YargsInstance_globalMiddleware, new GlobalMiddleware(this), "f"); + this.$0 = this[kGetDollarZero](); + this[kReset](); + __classPrivateFieldSet(this, _YargsInstance_command, __classPrivateFieldGet(this, _YargsInstance_command, "f"), "f"); + __classPrivateFieldSet(this, _YargsInstance_usage, __classPrivateFieldGet(this, _YargsInstance_usage, "f"), "f"); + __classPrivateFieldSet(this, _YargsInstance_validation, __classPrivateFieldGet(this, _YargsInstance_validation, "f"), "f"); + __classPrivateFieldSet(this, _YargsInstance_options, __classPrivateFieldGet(this, _YargsInstance_options, "f"), "f"); + __classPrivateFieldGet(this, _YargsInstance_options, "f").showHiddenOpt = __classPrivateFieldGet(this, _YargsInstance_defaultShowHiddenOpt, "f"); + __classPrivateFieldSet(this, _YargsInstance_logger, this[kCreateLogger](), "f"); + } + addHelpOpt(opt, msg) { + const defaultHelpOpt = 'help'; + argsert('[string|boolean] [string]', [opt, msg], arguments.length); + if (__classPrivateFieldGet(this, _YargsInstance_helpOpt, "f")) { + this[kDeleteFromParserHintObject](__classPrivateFieldGet(this, _YargsInstance_helpOpt, "f")); + __classPrivateFieldSet(this, _YargsInstance_helpOpt, null, "f"); + } + if (opt === false && msg === undefined) + return this; + __classPrivateFieldSet(this, _YargsInstance_helpOpt, typeof opt === 'string' ? opt : defaultHelpOpt, "f"); + this.boolean(__classPrivateFieldGet(this, _YargsInstance_helpOpt, "f")); + this.describe(__classPrivateFieldGet(this, _YargsInstance_helpOpt, "f"), msg || __classPrivateFieldGet(this, _YargsInstance_usage, "f").deferY18nLookup('Show help')); + return this; + } + help(opt, msg) { + return this.addHelpOpt(opt, msg); + } + addShowHiddenOpt(opt, msg) { + argsert('[string|boolean] [string]', [opt, msg], arguments.length); + if (opt === false && msg === undefined) + return this; + const showHiddenOpt = typeof opt === 'string' ? opt : __classPrivateFieldGet(this, _YargsInstance_defaultShowHiddenOpt, "f"); + this.boolean(showHiddenOpt); + this.describe(showHiddenOpt, msg || __classPrivateFieldGet(this, _YargsInstance_usage, "f").deferY18nLookup('Show hidden options')); + __classPrivateFieldGet(this, _YargsInstance_options, "f").showHiddenOpt = showHiddenOpt; + return this; + } + showHidden(opt, msg) { + return this.addShowHiddenOpt(opt, msg); + } + alias(key, value) { + argsert(' [string|array]', [key, value], arguments.length); + this[kPopulateParserHintArrayDictionary](this.alias.bind(this), 'alias', key, value); + return this; + } + array(keys) { + argsert('', [keys], arguments.length); + this[kPopulateParserHintArray]('array', keys); + this[kTrackManuallySetKeys](keys); + return this; + } + boolean(keys) { + argsert('', [keys], arguments.length); + this[kPopulateParserHintArray]('boolean', keys); + this[kTrackManuallySetKeys](keys); + return this; + } + check(f, global) { + argsert(' [boolean]', [f, global], arguments.length); + this.middleware((argv, _yargs) => { + return maybeAsyncResult(() => { + return f(argv, _yargs.getOptions()); + }, (result) => { + if (!result) { + __classPrivateFieldGet(this, _YargsInstance_usage, "f").fail(__classPrivateFieldGet(this, _YargsInstance_shim, "f").y18n.__('Argument check failed: %s', f.toString())); + } + else if (typeof result === 'string' || result instanceof Error) { + __classPrivateFieldGet(this, _YargsInstance_usage, "f").fail(result.toString(), result); + } + return argv; + }, (err) => { + __classPrivateFieldGet(this, _YargsInstance_usage, "f").fail(err.message ? err.message : err.toString(), err); + return argv; + }); + }, false, global); + return this; + } + choices(key, value) { + argsert(' [string|array]', [key, value], arguments.length); + this[kPopulateParserHintArrayDictionary](this.choices.bind(this), 'choices', key, value); + return this; + } + coerce(keys, value) { + argsert(' [function]', [keys, value], arguments.length); + if (Array.isArray(keys)) { + if (!value) { + throw new YError('coerce callback must be provided'); + } + for (const key of keys) { + this.coerce(key, value); + } + return this; + } + else if (typeof keys === 'object') { + for (const key of Object.keys(keys)) { + this.coerce(key, keys[key]); + } + return this; + } + if (!value) { + throw new YError('coerce callback must be provided'); + } + __classPrivateFieldGet(this, _YargsInstance_options, "f").key[keys] = true; + __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").addCoerceMiddleware((argv, yargs) => { + let aliases; + const shouldCoerce = Object.prototype.hasOwnProperty.call(argv, keys); + if (!shouldCoerce) { + return argv; + } + return maybeAsyncResult(() => { + aliases = yargs.getAliases(); + return value(argv[keys]); + }, (result) => { + argv[keys] = result; + const stripAliased = yargs + .getInternalMethods() + .getParserConfiguration()['strip-aliased']; + if (aliases[keys] && stripAliased !== true) { + for (const alias of aliases[keys]) { + argv[alias] = result; + } + } + return argv; + }, (err) => { + throw new YError(err.message); + }); + }, keys); + return this; + } + conflicts(key1, key2) { + argsert(' [string|array]', [key1, key2], arguments.length); + __classPrivateFieldGet(this, _YargsInstance_validation, "f").conflicts(key1, key2); + return this; + } + config(key = 'config', msg, parseFn) { + argsert('[object|string] [string|function] [function]', [key, msg, parseFn], arguments.length); + if (typeof key === 'object' && !Array.isArray(key)) { + key = applyExtends(key, __classPrivateFieldGet(this, _YargsInstance_cwd, "f"), this[kGetParserConfiguration]()['deep-merge-config'] || false, __classPrivateFieldGet(this, _YargsInstance_shim, "f")); + __classPrivateFieldGet(this, _YargsInstance_options, "f").configObjects = (__classPrivateFieldGet(this, _YargsInstance_options, "f").configObjects || []).concat(key); + return this; + } + if (typeof msg === 'function') { + parseFn = msg; + msg = undefined; + } + this.describe(key, msg || __classPrivateFieldGet(this, _YargsInstance_usage, "f").deferY18nLookup('Path to JSON config file')); + (Array.isArray(key) ? key : [key]).forEach(k => { + __classPrivateFieldGet(this, _YargsInstance_options, "f").config[k] = parseFn || true; + }); + return this; + } + completion(cmd, desc, fn) { + argsert('[string] [string|boolean|function] [function]', [cmd, desc, fn], arguments.length); + if (typeof desc === 'function') { + fn = desc; + desc = undefined; + } + __classPrivateFieldSet(this, _YargsInstance_completionCommand, cmd || __classPrivateFieldGet(this, _YargsInstance_completionCommand, "f") || 'completion', "f"); + if (!desc && desc !== false) { + desc = 'generate completion script'; + } + this.command(__classPrivateFieldGet(this, _YargsInstance_completionCommand, "f"), desc); + if (fn) + __classPrivateFieldGet(this, _YargsInstance_completion, "f").registerFunction(fn); + return this; + } + command(cmd, description, builder, handler, middlewares, deprecated) { + argsert(' [string|boolean] [function|object] [function] [array] [boolean|string]', [cmd, description, builder, handler, middlewares, deprecated], arguments.length); + __classPrivateFieldGet(this, _YargsInstance_command, "f").addHandler(cmd, description, builder, handler, middlewares, deprecated); + return this; + } + commands(cmd, description, builder, handler, middlewares, deprecated) { + return this.command(cmd, description, builder, handler, middlewares, deprecated); + } + commandDir(dir, opts) { + argsert(' [object]', [dir, opts], arguments.length); + const req = __classPrivateFieldGet(this, _YargsInstance_parentRequire, "f") || __classPrivateFieldGet(this, _YargsInstance_shim, "f").require; + __classPrivateFieldGet(this, _YargsInstance_command, "f").addDirectory(dir, req, __classPrivateFieldGet(this, _YargsInstance_shim, "f").getCallerFile(), opts); + return this; + } + count(keys) { + argsert('', [keys], arguments.length); + this[kPopulateParserHintArray]('count', keys); + this[kTrackManuallySetKeys](keys); + return this; + } + default(key, value, defaultDescription) { + argsert(' [*] [string]', [key, value, defaultDescription], arguments.length); + if (defaultDescription) { + assertSingleKey(key, __classPrivateFieldGet(this, _YargsInstance_shim, "f")); + __classPrivateFieldGet(this, _YargsInstance_options, "f").defaultDescription[key] = defaultDescription; + } + if (typeof value === 'function') { + assertSingleKey(key, __classPrivateFieldGet(this, _YargsInstance_shim, "f")); + if (!__classPrivateFieldGet(this, _YargsInstance_options, "f").defaultDescription[key]) + __classPrivateFieldGet(this, _YargsInstance_options, "f").defaultDescription[key] = + __classPrivateFieldGet(this, _YargsInstance_usage, "f").functionDescription(value); + value = value.call(); + } + this[kPopulateParserHintSingleValueDictionary](this.default.bind(this), 'default', key, value); + return this; + } + defaults(key, value, defaultDescription) { + return this.default(key, value, defaultDescription); + } + demandCommand(min = 1, max, minMsg, maxMsg) { + argsert('[number] [number|string] [string|null|undefined] [string|null|undefined]', [min, max, minMsg, maxMsg], arguments.length); + if (typeof max !== 'number') { + minMsg = max; + max = Infinity; + } + this.global('_', false); + __classPrivateFieldGet(this, _YargsInstance_options, "f").demandedCommands._ = { + min, + max, + minMsg, + maxMsg, + }; + return this; + } + demand(keys, max, msg) { + if (Array.isArray(max)) { + max.forEach(key => { + assertNotStrictEqual(msg, true, __classPrivateFieldGet(this, _YargsInstance_shim, "f")); + this.demandOption(key, msg); + }); + max = Infinity; + } + else if (typeof max !== 'number') { + msg = max; + max = Infinity; + } + if (typeof keys === 'number') { + assertNotStrictEqual(msg, true, __classPrivateFieldGet(this, _YargsInstance_shim, "f")); + this.demandCommand(keys, max, msg, msg); + } + else if (Array.isArray(keys)) { + keys.forEach(key => { + assertNotStrictEqual(msg, true, __classPrivateFieldGet(this, _YargsInstance_shim, "f")); + this.demandOption(key, msg); + }); + } + else { + if (typeof msg === 'string') { + this.demandOption(keys, msg); + } + else if (msg === true || typeof msg === 'undefined') { + this.demandOption(keys); + } + } + return this; + } + demandOption(keys, msg) { + argsert(' [string]', [keys, msg], arguments.length); + this[kPopulateParserHintSingleValueDictionary](this.demandOption.bind(this), 'demandedOptions', keys, msg); + return this; + } + deprecateOption(option, message) { + argsert(' [string|boolean]', [option, message], arguments.length); + __classPrivateFieldGet(this, _YargsInstance_options, "f").deprecatedOptions[option] = message; + return this; + } + describe(keys, description) { + argsert(' [string]', [keys, description], arguments.length); + this[kSetKey](keys, true); + __classPrivateFieldGet(this, _YargsInstance_usage, "f").describe(keys, description); + return this; + } + detectLocale(detect) { + argsert('', [detect], arguments.length); + __classPrivateFieldSet(this, _YargsInstance_detectLocale, detect, "f"); + return this; + } + env(prefix) { + argsert('[string|boolean]', [prefix], arguments.length); + if (prefix === false) + delete __classPrivateFieldGet(this, _YargsInstance_options, "f").envPrefix; + else + __classPrivateFieldGet(this, _YargsInstance_options, "f").envPrefix = prefix || ''; + return this; + } + epilogue(msg) { + argsert('', [msg], arguments.length); + __classPrivateFieldGet(this, _YargsInstance_usage, "f").epilog(msg); + return this; + } + epilog(msg) { + return this.epilogue(msg); + } + example(cmd, description) { + argsert(' [string]', [cmd, description], arguments.length); + if (Array.isArray(cmd)) { + cmd.forEach(exampleParams => this.example(...exampleParams)); + } + else { + __classPrivateFieldGet(this, _YargsInstance_usage, "f").example(cmd, description); + } + return this; + } + exit(code, err) { + __classPrivateFieldSet(this, _YargsInstance_hasOutput, true, "f"); + __classPrivateFieldSet(this, _YargsInstance_exitError, err, "f"); + if (__classPrivateFieldGet(this, _YargsInstance_exitProcess, "f")) + __classPrivateFieldGet(this, _YargsInstance_shim, "f").process.exit(code); + } + exitProcess(enabled = true) { + argsert('[boolean]', [enabled], arguments.length); + __classPrivateFieldSet(this, _YargsInstance_exitProcess, enabled, "f"); + return this; + } + fail(f) { + argsert('', [f], arguments.length); + if (typeof f === 'boolean' && f !== false) { + throw new YError("Invalid first argument. Expected function or boolean 'false'"); + } + __classPrivateFieldGet(this, _YargsInstance_usage, "f").failFn(f); + return this; + } + getAliases() { + return this.parsed ? this.parsed.aliases : {}; + } + async getCompletion(args, done) { + argsert(' [function]', [args, done], arguments.length); + if (!done) { + return new Promise((resolve, reject) => { + __classPrivateFieldGet(this, _YargsInstance_completion, "f").getCompletion(args, (err, completions) => { + if (err) + reject(err); + else + resolve(completions); + }); + }); + } + else { + return __classPrivateFieldGet(this, _YargsInstance_completion, "f").getCompletion(args, done); + } + } + getDemandedOptions() { + argsert([], 0); + return __classPrivateFieldGet(this, _YargsInstance_options, "f").demandedOptions; + } + getDemandedCommands() { + argsert([], 0); + return __classPrivateFieldGet(this, _YargsInstance_options, "f").demandedCommands; + } + getDeprecatedOptions() { + argsert([], 0); + return __classPrivateFieldGet(this, _YargsInstance_options, "f").deprecatedOptions; + } + getDetectLocale() { + return __classPrivateFieldGet(this, _YargsInstance_detectLocale, "f"); + } + getExitProcess() { + return __classPrivateFieldGet(this, _YargsInstance_exitProcess, "f"); + } + getGroups() { + return Object.assign({}, __classPrivateFieldGet(this, _YargsInstance_groups, "f"), __classPrivateFieldGet(this, _YargsInstance_preservedGroups, "f")); + } + getHelp() { + __classPrivateFieldSet(this, _YargsInstance_hasOutput, true, "f"); + if (!__classPrivateFieldGet(this, _YargsInstance_usage, "f").hasCachedHelpMessage()) { + if (!this.parsed) { + const parse = this[kRunYargsParserAndExecuteCommands](__classPrivateFieldGet(this, _YargsInstance_processArgs, "f"), undefined, undefined, 0, true); + if (isPromise(parse)) { + return parse.then(() => { + return __classPrivateFieldGet(this, _YargsInstance_usage, "f").help(); + }); + } + } + const builderResponse = __classPrivateFieldGet(this, _YargsInstance_command, "f").runDefaultBuilderOn(this); + if (isPromise(builderResponse)) { + return builderResponse.then(() => { + return __classPrivateFieldGet(this, _YargsInstance_usage, "f").help(); + }); + } + } + return Promise.resolve(__classPrivateFieldGet(this, _YargsInstance_usage, "f").help()); + } + getOptions() { + return __classPrivateFieldGet(this, _YargsInstance_options, "f"); + } + getStrict() { + return __classPrivateFieldGet(this, _YargsInstance_strict, "f"); + } + getStrictCommands() { + return __classPrivateFieldGet(this, _YargsInstance_strictCommands, "f"); + } + getStrictOptions() { + return __classPrivateFieldGet(this, _YargsInstance_strictOptions, "f"); + } + global(globals, global) { + argsert(' [boolean]', [globals, global], arguments.length); + globals = [].concat(globals); + if (global !== false) { + __classPrivateFieldGet(this, _YargsInstance_options, "f").local = __classPrivateFieldGet(this, _YargsInstance_options, "f").local.filter(l => globals.indexOf(l) === -1); + } + else { + globals.forEach(g => { + if (!__classPrivateFieldGet(this, _YargsInstance_options, "f").local.includes(g)) + __classPrivateFieldGet(this, _YargsInstance_options, "f").local.push(g); + }); + } + return this; + } + group(opts, groupName) { + argsert(' ', [opts, groupName], arguments.length); + const existing = __classPrivateFieldGet(this, _YargsInstance_preservedGroups, "f")[groupName] || __classPrivateFieldGet(this, _YargsInstance_groups, "f")[groupName]; + if (__classPrivateFieldGet(this, _YargsInstance_preservedGroups, "f")[groupName]) { + delete __classPrivateFieldGet(this, _YargsInstance_preservedGroups, "f")[groupName]; + } + const seen = {}; + __classPrivateFieldGet(this, _YargsInstance_groups, "f")[groupName] = (existing || []).concat(opts).filter(key => { + if (seen[key]) + return false; + return (seen[key] = true); + }); + return this; + } + hide(key) { + argsert('', [key], arguments.length); + __classPrivateFieldGet(this, _YargsInstance_options, "f").hiddenOptions.push(key); + return this; + } + implies(key, value) { + argsert(' [number|string|array]', [key, value], arguments.length); + __classPrivateFieldGet(this, _YargsInstance_validation, "f").implies(key, value); + return this; + } + locale(locale) { + argsert('[string]', [locale], arguments.length); + if (locale === undefined) { + this[kGuessLocale](); + return __classPrivateFieldGet(this, _YargsInstance_shim, "f").y18n.getLocale(); + } + __classPrivateFieldSet(this, _YargsInstance_detectLocale, false, "f"); + __classPrivateFieldGet(this, _YargsInstance_shim, "f").y18n.setLocale(locale); + return this; + } + middleware(callback, applyBeforeValidation, global) { + return __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").addMiddleware(callback, !!applyBeforeValidation, global); + } + nargs(key, value) { + argsert(' [number]', [key, value], arguments.length); + this[kPopulateParserHintSingleValueDictionary](this.nargs.bind(this), 'narg', key, value); + return this; + } + normalize(keys) { + argsert('', [keys], arguments.length); + this[kPopulateParserHintArray]('normalize', keys); + return this; + } + number(keys) { + argsert('', [keys], arguments.length); + this[kPopulateParserHintArray]('number', keys); + this[kTrackManuallySetKeys](keys); + return this; + } + option(key, opt) { + argsert(' [object]', [key, opt], arguments.length); + if (typeof key === 'object') { + Object.keys(key).forEach(k => { + this.options(k, key[k]); + }); + } + else { + if (typeof opt !== 'object') { + opt = {}; + } + this[kTrackManuallySetKeys](key); + if (__classPrivateFieldGet(this, _YargsInstance_versionOpt, "f") && (key === 'version' || (opt === null || opt === void 0 ? void 0 : opt.alias) === 'version')) { + this[kEmitWarning]([ + '"version" is a reserved word.', + 'Please do one of the following:', + '- Disable version with `yargs.version(false)` if using "version" as an option', + '- Use the built-in `yargs.version` method instead (if applicable)', + '- Use a different option key', + 'https://yargs.js.org/docs/#api-reference-version', + ].join('\n'), undefined, 'versionWarning'); + } + __classPrivateFieldGet(this, _YargsInstance_options, "f").key[key] = true; + if (opt.alias) + this.alias(key, opt.alias); + const deprecate = opt.deprecate || opt.deprecated; + if (deprecate) { + this.deprecateOption(key, deprecate); + } + const demand = opt.demand || opt.required || opt.require; + if (demand) { + this.demand(key, demand); + } + if (opt.demandOption) { + this.demandOption(key, typeof opt.demandOption === 'string' ? opt.demandOption : undefined); + } + if (opt.conflicts) { + this.conflicts(key, opt.conflicts); + } + if ('default' in opt) { + this.default(key, opt.default); + } + if (opt.implies !== undefined) { + this.implies(key, opt.implies); + } + if (opt.nargs !== undefined) { + this.nargs(key, opt.nargs); + } + if (opt.config) { + this.config(key, opt.configParser); + } + if (opt.normalize) { + this.normalize(key); + } + if (opt.choices) { + this.choices(key, opt.choices); + } + if (opt.coerce) { + this.coerce(key, opt.coerce); + } + if (opt.group) { + this.group(key, opt.group); + } + if (opt.boolean || opt.type === 'boolean') { + this.boolean(key); + if (opt.alias) + this.boolean(opt.alias); + } + if (opt.array || opt.type === 'array') { + this.array(key); + if (opt.alias) + this.array(opt.alias); + } + if (opt.number || opt.type === 'number') { + this.number(key); + if (opt.alias) + this.number(opt.alias); + } + if (opt.string || opt.type === 'string') { + this.string(key); + if (opt.alias) + this.string(opt.alias); + } + if (opt.count || opt.type === 'count') { + this.count(key); + } + if (typeof opt.global === 'boolean') { + this.global(key, opt.global); + } + if (opt.defaultDescription) { + __classPrivateFieldGet(this, _YargsInstance_options, "f").defaultDescription[key] = opt.defaultDescription; + } + if (opt.skipValidation) { + this.skipValidation(key); + } + const desc = opt.describe || opt.description || opt.desc; + const descriptions = __classPrivateFieldGet(this, _YargsInstance_usage, "f").getDescriptions(); + if (!Object.prototype.hasOwnProperty.call(descriptions, key) || + typeof desc === 'string') { + this.describe(key, desc); + } + if (opt.hidden) { + this.hide(key); + } + if (opt.requiresArg) { + this.requiresArg(key); + } + } + return this; + } + options(key, opt) { + return this.option(key, opt); + } + parse(args, shortCircuit, _parseFn) { + argsert('[string|array] [function|boolean|object] [function]', [args, shortCircuit, _parseFn], arguments.length); + this[kFreeze](); + if (typeof args === 'undefined') { + args = __classPrivateFieldGet(this, _YargsInstance_processArgs, "f"); + } + if (typeof shortCircuit === 'object') { + __classPrivateFieldSet(this, _YargsInstance_parseContext, shortCircuit, "f"); + shortCircuit = _parseFn; + } + if (typeof shortCircuit === 'function') { + __classPrivateFieldSet(this, _YargsInstance_parseFn, shortCircuit, "f"); + shortCircuit = false; + } + if (!shortCircuit) + __classPrivateFieldSet(this, _YargsInstance_processArgs, args, "f"); + if (__classPrivateFieldGet(this, _YargsInstance_parseFn, "f")) + __classPrivateFieldSet(this, _YargsInstance_exitProcess, false, "f"); + const parsed = this[kRunYargsParserAndExecuteCommands](args, !!shortCircuit); + const tmpParsed = this.parsed; + __classPrivateFieldGet(this, _YargsInstance_completion, "f").setParsed(this.parsed); + if (isPromise(parsed)) { + return parsed + .then(argv => { + if (__classPrivateFieldGet(this, _YargsInstance_parseFn, "f")) + __classPrivateFieldGet(this, _YargsInstance_parseFn, "f").call(this, __classPrivateFieldGet(this, _YargsInstance_exitError, "f"), argv, __classPrivateFieldGet(this, _YargsInstance_output, "f")); + return argv; + }) + .catch(err => { + if (__classPrivateFieldGet(this, _YargsInstance_parseFn, "f")) { + __classPrivateFieldGet(this, _YargsInstance_parseFn, "f")(err, this.parsed.argv, __classPrivateFieldGet(this, _YargsInstance_output, "f")); + } + throw err; + }) + .finally(() => { + this[kUnfreeze](); + this.parsed = tmpParsed; + }); + } + else { + if (__classPrivateFieldGet(this, _YargsInstance_parseFn, "f")) + __classPrivateFieldGet(this, _YargsInstance_parseFn, "f").call(this, __classPrivateFieldGet(this, _YargsInstance_exitError, "f"), parsed, __classPrivateFieldGet(this, _YargsInstance_output, "f")); + this[kUnfreeze](); + this.parsed = tmpParsed; + } + return parsed; + } + parseAsync(args, shortCircuit, _parseFn) { + const maybePromise = this.parse(args, shortCircuit, _parseFn); + return !isPromise(maybePromise) + ? Promise.resolve(maybePromise) + : maybePromise; + } + parseSync(args, shortCircuit, _parseFn) { + const maybePromise = this.parse(args, shortCircuit, _parseFn); + if (isPromise(maybePromise)) { + throw new YError('.parseSync() must not be used with asynchronous builders, handlers, or middleware'); + } + return maybePromise; + } + parserConfiguration(config) { + argsert('', [config], arguments.length); + __classPrivateFieldSet(this, _YargsInstance_parserConfig, config, "f"); + return this; + } + pkgConf(key, rootPath) { + argsert(' [string]', [key, rootPath], arguments.length); + let conf = null; + const obj = this[kPkgUp](rootPath || __classPrivateFieldGet(this, _YargsInstance_cwd, "f")); + if (obj[key] && typeof obj[key] === 'object') { + conf = applyExtends(obj[key], rootPath || __classPrivateFieldGet(this, _YargsInstance_cwd, "f"), this[kGetParserConfiguration]()['deep-merge-config'] || false, __classPrivateFieldGet(this, _YargsInstance_shim, "f")); + __classPrivateFieldGet(this, _YargsInstance_options, "f").configObjects = (__classPrivateFieldGet(this, _YargsInstance_options, "f").configObjects || []).concat(conf); + } + return this; + } + positional(key, opts) { + argsert(' ', [key, opts], arguments.length); + const supportedOpts = [ + 'default', + 'defaultDescription', + 'implies', + 'normalize', + 'choices', + 'conflicts', + 'coerce', + 'type', + 'describe', + 'desc', + 'description', + 'alias', + ]; + opts = objFilter(opts, (k, v) => { + if (k === 'type' && !['string', 'number', 'boolean'].includes(v)) + return false; + return supportedOpts.includes(k); + }); + const fullCommand = __classPrivateFieldGet(this, _YargsInstance_context, "f").fullCommands[__classPrivateFieldGet(this, _YargsInstance_context, "f").fullCommands.length - 1]; + const parseOptions = fullCommand + ? __classPrivateFieldGet(this, _YargsInstance_command, "f").cmdToParseOptions(fullCommand) + : { + array: [], + alias: {}, + default: {}, + demand: {}, + }; + objectKeys(parseOptions).forEach(pk => { + const parseOption = parseOptions[pk]; + if (Array.isArray(parseOption)) { + if (parseOption.indexOf(key) !== -1) + opts[pk] = true; + } + else { + if (parseOption[key] && !(pk in opts)) + opts[pk] = parseOption[key]; + } + }); + this.group(key, __classPrivateFieldGet(this, _YargsInstance_usage, "f").getPositionalGroupName()); + return this.option(key, opts); + } + recommendCommands(recommend = true) { + argsert('[boolean]', [recommend], arguments.length); + __classPrivateFieldSet(this, _YargsInstance_recommendCommands, recommend, "f"); + return this; + } + required(keys, max, msg) { + return this.demand(keys, max, msg); + } + require(keys, max, msg) { + return this.demand(keys, max, msg); + } + requiresArg(keys) { + argsert(' [number]', [keys], arguments.length); + if (typeof keys === 'string' && __classPrivateFieldGet(this, _YargsInstance_options, "f").narg[keys]) { + return this; + } + else { + this[kPopulateParserHintSingleValueDictionary](this.requiresArg.bind(this), 'narg', keys, NaN); + } + return this; + } + showCompletionScript($0, cmd) { + argsert('[string] [string]', [$0, cmd], arguments.length); + $0 = $0 || this.$0; + __classPrivateFieldGet(this, _YargsInstance_logger, "f").log(__classPrivateFieldGet(this, _YargsInstance_completion, "f").generateCompletionScript($0, cmd || __classPrivateFieldGet(this, _YargsInstance_completionCommand, "f") || 'completion')); + return this; + } + showHelp(level) { + argsert('[string|function]', [level], arguments.length); + __classPrivateFieldSet(this, _YargsInstance_hasOutput, true, "f"); + if (!__classPrivateFieldGet(this, _YargsInstance_usage, "f").hasCachedHelpMessage()) { + if (!this.parsed) { + const parse = this[kRunYargsParserAndExecuteCommands](__classPrivateFieldGet(this, _YargsInstance_processArgs, "f"), undefined, undefined, 0, true); + if (isPromise(parse)) { + parse.then(() => { + __classPrivateFieldGet(this, _YargsInstance_usage, "f").showHelp(level); + }); + return this; + } + } + const builderResponse = __classPrivateFieldGet(this, _YargsInstance_command, "f").runDefaultBuilderOn(this); + if (isPromise(builderResponse)) { + builderResponse.then(() => { + __classPrivateFieldGet(this, _YargsInstance_usage, "f").showHelp(level); + }); + return this; + } + } + __classPrivateFieldGet(this, _YargsInstance_usage, "f").showHelp(level); + return this; + } + scriptName(scriptName) { + this.customScriptName = true; + this.$0 = scriptName; + return this; + } + showHelpOnFail(enabled, message) { + argsert('[boolean|string] [string]', [enabled, message], arguments.length); + __classPrivateFieldGet(this, _YargsInstance_usage, "f").showHelpOnFail(enabled, message); + return this; + } + showVersion(level) { + argsert('[string|function]', [level], arguments.length); + __classPrivateFieldGet(this, _YargsInstance_usage, "f").showVersion(level); + return this; + } + skipValidation(keys) { + argsert('', [keys], arguments.length); + this[kPopulateParserHintArray]('skipValidation', keys); + return this; + } + strict(enabled) { + argsert('[boolean]', [enabled], arguments.length); + __classPrivateFieldSet(this, _YargsInstance_strict, enabled !== false, "f"); + return this; + } + strictCommands(enabled) { + argsert('[boolean]', [enabled], arguments.length); + __classPrivateFieldSet(this, _YargsInstance_strictCommands, enabled !== false, "f"); + return this; + } + strictOptions(enabled) { + argsert('[boolean]', [enabled], arguments.length); + __classPrivateFieldSet(this, _YargsInstance_strictOptions, enabled !== false, "f"); + return this; + } + string(keys) { + argsert('', [keys], arguments.length); + this[kPopulateParserHintArray]('string', keys); + this[kTrackManuallySetKeys](keys); + return this; + } + terminalWidth() { + argsert([], 0); + return __classPrivateFieldGet(this, _YargsInstance_shim, "f").process.stdColumns; + } + updateLocale(obj) { + return this.updateStrings(obj); + } + updateStrings(obj) { + argsert('', [obj], arguments.length); + __classPrivateFieldSet(this, _YargsInstance_detectLocale, false, "f"); + __classPrivateFieldGet(this, _YargsInstance_shim, "f").y18n.updateLocale(obj); + return this; + } + usage(msg, description, builder, handler) { + argsert(' [string|boolean] [function|object] [function]', [msg, description, builder, handler], arguments.length); + if (description !== undefined) { + assertNotStrictEqual(msg, null, __classPrivateFieldGet(this, _YargsInstance_shim, "f")); + if ((msg || '').match(/^\$0( |$)/)) { + return this.command(msg, description, builder, handler); + } + else { + throw new YError('.usage() description must start with $0 if being used as alias for .command()'); + } + } + else { + __classPrivateFieldGet(this, _YargsInstance_usage, "f").usage(msg); + return this; + } + } + usageConfiguration(config) { + argsert('', [config], arguments.length); + __classPrivateFieldSet(this, _YargsInstance_usageConfig, config, "f"); + return this; + } + version(opt, msg, ver) { + const defaultVersionOpt = 'version'; + argsert('[boolean|string] [string] [string]', [opt, msg, ver], arguments.length); + if (__classPrivateFieldGet(this, _YargsInstance_versionOpt, "f")) { + this[kDeleteFromParserHintObject](__classPrivateFieldGet(this, _YargsInstance_versionOpt, "f")); + __classPrivateFieldGet(this, _YargsInstance_usage, "f").version(undefined); + __classPrivateFieldSet(this, _YargsInstance_versionOpt, null, "f"); + } + if (arguments.length === 0) { + ver = this[kGuessVersion](); + opt = defaultVersionOpt; + } + else if (arguments.length === 1) { + if (opt === false) { + return this; + } + ver = opt; + opt = defaultVersionOpt; + } + else if (arguments.length === 2) { + ver = msg; + msg = undefined; + } + __classPrivateFieldSet(this, _YargsInstance_versionOpt, typeof opt === 'string' ? opt : defaultVersionOpt, "f"); + msg = msg || __classPrivateFieldGet(this, _YargsInstance_usage, "f").deferY18nLookup('Show version number'); + __classPrivateFieldGet(this, _YargsInstance_usage, "f").version(ver || undefined); + this.boolean(__classPrivateFieldGet(this, _YargsInstance_versionOpt, "f")); + this.describe(__classPrivateFieldGet(this, _YargsInstance_versionOpt, "f"), msg); + return this; + } + wrap(cols) { + argsert('', [cols], arguments.length); + __classPrivateFieldGet(this, _YargsInstance_usage, "f").wrap(cols); + return this; + } + [(_YargsInstance_command = new WeakMap(), _YargsInstance_cwd = new WeakMap(), _YargsInstance_context = new WeakMap(), _YargsInstance_completion = new WeakMap(), _YargsInstance_completionCommand = new WeakMap(), _YargsInstance_defaultShowHiddenOpt = new WeakMap(), _YargsInstance_exitError = new WeakMap(), _YargsInstance_detectLocale = new WeakMap(), _YargsInstance_emittedWarnings = new WeakMap(), _YargsInstance_exitProcess = new WeakMap(), _YargsInstance_frozens = new WeakMap(), _YargsInstance_globalMiddleware = new WeakMap(), _YargsInstance_groups = new WeakMap(), _YargsInstance_hasOutput = new WeakMap(), _YargsInstance_helpOpt = new WeakMap(), _YargsInstance_isGlobalContext = new WeakMap(), _YargsInstance_logger = new WeakMap(), _YargsInstance_output = new WeakMap(), _YargsInstance_options = new WeakMap(), _YargsInstance_parentRequire = new WeakMap(), _YargsInstance_parserConfig = new WeakMap(), _YargsInstance_parseFn = new WeakMap(), _YargsInstance_parseContext = new WeakMap(), _YargsInstance_pkgs = new WeakMap(), _YargsInstance_preservedGroups = new WeakMap(), _YargsInstance_processArgs = new WeakMap(), _YargsInstance_recommendCommands = new WeakMap(), _YargsInstance_shim = new WeakMap(), _YargsInstance_strict = new WeakMap(), _YargsInstance_strictCommands = new WeakMap(), _YargsInstance_strictOptions = new WeakMap(), _YargsInstance_usage = new WeakMap(), _YargsInstance_usageConfig = new WeakMap(), _YargsInstance_versionOpt = new WeakMap(), _YargsInstance_validation = new WeakMap(), kCopyDoubleDash)](argv) { + if (!argv._ || !argv['--']) + return argv; + argv._.push.apply(argv._, argv['--']); + try { + delete argv['--']; + } + catch (_err) { } + return argv; + } + [kCreateLogger]() { + return { + log: (...args) => { + if (!this[kHasParseCallback]()) + console.log(...args); + __classPrivateFieldSet(this, _YargsInstance_hasOutput, true, "f"); + if (__classPrivateFieldGet(this, _YargsInstance_output, "f").length) + __classPrivateFieldSet(this, _YargsInstance_output, __classPrivateFieldGet(this, _YargsInstance_output, "f") + '\n', "f"); + __classPrivateFieldSet(this, _YargsInstance_output, __classPrivateFieldGet(this, _YargsInstance_output, "f") + args.join(' '), "f"); + }, + error: (...args) => { + if (!this[kHasParseCallback]()) + console.error(...args); + __classPrivateFieldSet(this, _YargsInstance_hasOutput, true, "f"); + if (__classPrivateFieldGet(this, _YargsInstance_output, "f").length) + __classPrivateFieldSet(this, _YargsInstance_output, __classPrivateFieldGet(this, _YargsInstance_output, "f") + '\n', "f"); + __classPrivateFieldSet(this, _YargsInstance_output, __classPrivateFieldGet(this, _YargsInstance_output, "f") + args.join(' '), "f"); + }, + }; + } + [kDeleteFromParserHintObject](optionKey) { + objectKeys(__classPrivateFieldGet(this, _YargsInstance_options, "f")).forEach((hintKey) => { + if (((key) => key === 'configObjects')(hintKey)) + return; + const hint = __classPrivateFieldGet(this, _YargsInstance_options, "f")[hintKey]; + if (Array.isArray(hint)) { + if (hint.includes(optionKey)) + hint.splice(hint.indexOf(optionKey), 1); + } + else if (typeof hint === 'object') { + delete hint[optionKey]; + } + }); + delete __classPrivateFieldGet(this, _YargsInstance_usage, "f").getDescriptions()[optionKey]; + } + [kEmitWarning](warning, type, deduplicationId) { + if (!__classPrivateFieldGet(this, _YargsInstance_emittedWarnings, "f")[deduplicationId]) { + __classPrivateFieldGet(this, _YargsInstance_shim, "f").process.emitWarning(warning, type); + __classPrivateFieldGet(this, _YargsInstance_emittedWarnings, "f")[deduplicationId] = true; + } + } + [kFreeze]() { + __classPrivateFieldGet(this, _YargsInstance_frozens, "f").push({ + options: __classPrivateFieldGet(this, _YargsInstance_options, "f"), + configObjects: __classPrivateFieldGet(this, _YargsInstance_options, "f").configObjects.slice(0), + exitProcess: __classPrivateFieldGet(this, _YargsInstance_exitProcess, "f"), + groups: __classPrivateFieldGet(this, _YargsInstance_groups, "f"), + strict: __classPrivateFieldGet(this, _YargsInstance_strict, "f"), + strictCommands: __classPrivateFieldGet(this, _YargsInstance_strictCommands, "f"), + strictOptions: __classPrivateFieldGet(this, _YargsInstance_strictOptions, "f"), + completionCommand: __classPrivateFieldGet(this, _YargsInstance_completionCommand, "f"), + output: __classPrivateFieldGet(this, _YargsInstance_output, "f"), + exitError: __classPrivateFieldGet(this, _YargsInstance_exitError, "f"), + hasOutput: __classPrivateFieldGet(this, _YargsInstance_hasOutput, "f"), + parsed: this.parsed, + parseFn: __classPrivateFieldGet(this, _YargsInstance_parseFn, "f"), + parseContext: __classPrivateFieldGet(this, _YargsInstance_parseContext, "f"), + }); + __classPrivateFieldGet(this, _YargsInstance_usage, "f").freeze(); + __classPrivateFieldGet(this, _YargsInstance_validation, "f").freeze(); + __classPrivateFieldGet(this, _YargsInstance_command, "f").freeze(); + __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").freeze(); + } + [kGetDollarZero]() { + let $0 = ''; + let default$0; + if (/\b(node|iojs|electron)(\.exe)?$/.test(__classPrivateFieldGet(this, _YargsInstance_shim, "f").process.argv()[0])) { + default$0 = __classPrivateFieldGet(this, _YargsInstance_shim, "f").process.argv().slice(1, 2); + } + else { + default$0 = __classPrivateFieldGet(this, _YargsInstance_shim, "f").process.argv().slice(0, 1); + } + $0 = default$0 + .map(x => { + const b = this[kRebase](__classPrivateFieldGet(this, _YargsInstance_cwd, "f"), x); + return x.match(/^(\/|([a-zA-Z]:)?\\)/) && b.length < x.length ? b : x; + }) + .join(' ') + .trim(); + if (__classPrivateFieldGet(this, _YargsInstance_shim, "f").getEnv('_') && + __classPrivateFieldGet(this, _YargsInstance_shim, "f").getProcessArgvBin() === __classPrivateFieldGet(this, _YargsInstance_shim, "f").getEnv('_')) { + $0 = __classPrivateFieldGet(this, _YargsInstance_shim, "f") + .getEnv('_') + .replace(`${__classPrivateFieldGet(this, _YargsInstance_shim, "f").path.dirname(__classPrivateFieldGet(this, _YargsInstance_shim, "f").process.execPath())}/`, ''); + } + return $0; + } + [kGetParserConfiguration]() { + return __classPrivateFieldGet(this, _YargsInstance_parserConfig, "f"); + } + [kGetUsageConfiguration]() { + return __classPrivateFieldGet(this, _YargsInstance_usageConfig, "f"); + } + [kGuessLocale]() { + if (!__classPrivateFieldGet(this, _YargsInstance_detectLocale, "f")) + return; + const locale = __classPrivateFieldGet(this, _YargsInstance_shim, "f").getEnv('LC_ALL') || + __classPrivateFieldGet(this, _YargsInstance_shim, "f").getEnv('LC_MESSAGES') || + __classPrivateFieldGet(this, _YargsInstance_shim, "f").getEnv('LANG') || + __classPrivateFieldGet(this, _YargsInstance_shim, "f").getEnv('LANGUAGE') || + 'en_US'; + this.locale(locale.replace(/[.:].*/, '')); + } + [kGuessVersion]() { + const obj = this[kPkgUp](); + return obj.version || 'unknown'; + } + [kParsePositionalNumbers](argv) { + const args = argv['--'] ? argv['--'] : argv._; + for (let i = 0, arg; (arg = args[i]) !== undefined; i++) { + if (__classPrivateFieldGet(this, _YargsInstance_shim, "f").Parser.looksLikeNumber(arg) && + Number.isSafeInteger(Math.floor(parseFloat(`${arg}`)))) { + args[i] = Number(arg); + } + } + return argv; + } + [kPkgUp](rootPath) { + const npath = rootPath || '*'; + if (__classPrivateFieldGet(this, _YargsInstance_pkgs, "f")[npath]) + return __classPrivateFieldGet(this, _YargsInstance_pkgs, "f")[npath]; + let obj = {}; + try { + let startDir = rootPath || __classPrivateFieldGet(this, _YargsInstance_shim, "f").mainFilename; + if (!rootPath && __classPrivateFieldGet(this, _YargsInstance_shim, "f").path.extname(startDir)) { + startDir = __classPrivateFieldGet(this, _YargsInstance_shim, "f").path.dirname(startDir); + } + const pkgJsonPath = __classPrivateFieldGet(this, _YargsInstance_shim, "f").findUp(startDir, (dir, names) => { + if (names.includes('package.json')) { + return 'package.json'; + } + else { + return undefined; + } + }); + assertNotStrictEqual(pkgJsonPath, undefined, __classPrivateFieldGet(this, _YargsInstance_shim, "f")); + obj = JSON.parse(__classPrivateFieldGet(this, _YargsInstance_shim, "f").readFileSync(pkgJsonPath, 'utf8')); + } + catch (_noop) { } + __classPrivateFieldGet(this, _YargsInstance_pkgs, "f")[npath] = obj || {}; + return __classPrivateFieldGet(this, _YargsInstance_pkgs, "f")[npath]; + } + [kPopulateParserHintArray](type, keys) { + keys = [].concat(keys); + keys.forEach(key => { + key = this[kSanitizeKey](key); + __classPrivateFieldGet(this, _YargsInstance_options, "f")[type].push(key); + }); + } + [kPopulateParserHintSingleValueDictionary](builder, type, key, value) { + this[kPopulateParserHintDictionary](builder, type, key, value, (type, key, value) => { + __classPrivateFieldGet(this, _YargsInstance_options, "f")[type][key] = value; + }); + } + [kPopulateParserHintArrayDictionary](builder, type, key, value) { + this[kPopulateParserHintDictionary](builder, type, key, value, (type, key, value) => { + __classPrivateFieldGet(this, _YargsInstance_options, "f")[type][key] = (__classPrivateFieldGet(this, _YargsInstance_options, "f")[type][key] || []).concat(value); + }); + } + [kPopulateParserHintDictionary](builder, type, key, value, singleKeyHandler) { + if (Array.isArray(key)) { + key.forEach(k => { + builder(k, value); + }); + } + else if (((key) => typeof key === 'object')(key)) { + for (const k of objectKeys(key)) { + builder(k, key[k]); + } + } + else { + singleKeyHandler(type, this[kSanitizeKey](key), value); + } + } + [kSanitizeKey](key) { + if (key === '__proto__') + return '___proto___'; + return key; + } + [kSetKey](key, set) { + this[kPopulateParserHintSingleValueDictionary](this[kSetKey].bind(this), 'key', key, set); + return this; + } + [kUnfreeze]() { + var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m; + const frozen = __classPrivateFieldGet(this, _YargsInstance_frozens, "f").pop(); + assertNotStrictEqual(frozen, undefined, __classPrivateFieldGet(this, _YargsInstance_shim, "f")); + let configObjects; + (_a = this, _b = this, _c = this, _d = this, _e = this, _f = this, _g = this, _h = this, _j = this, _k = this, _l = this, _m = this, { + options: ({ set value(_o) { __classPrivateFieldSet(_a, _YargsInstance_options, _o, "f"); } }).value, + configObjects, + exitProcess: ({ set value(_o) { __classPrivateFieldSet(_b, _YargsInstance_exitProcess, _o, "f"); } }).value, + groups: ({ set value(_o) { __classPrivateFieldSet(_c, _YargsInstance_groups, _o, "f"); } }).value, + output: ({ set value(_o) { __classPrivateFieldSet(_d, _YargsInstance_output, _o, "f"); } }).value, + exitError: ({ set value(_o) { __classPrivateFieldSet(_e, _YargsInstance_exitError, _o, "f"); } }).value, + hasOutput: ({ set value(_o) { __classPrivateFieldSet(_f, _YargsInstance_hasOutput, _o, "f"); } }).value, + parsed: this.parsed, + strict: ({ set value(_o) { __classPrivateFieldSet(_g, _YargsInstance_strict, _o, "f"); } }).value, + strictCommands: ({ set value(_o) { __classPrivateFieldSet(_h, _YargsInstance_strictCommands, _o, "f"); } }).value, + strictOptions: ({ set value(_o) { __classPrivateFieldSet(_j, _YargsInstance_strictOptions, _o, "f"); } }).value, + completionCommand: ({ set value(_o) { __classPrivateFieldSet(_k, _YargsInstance_completionCommand, _o, "f"); } }).value, + parseFn: ({ set value(_o) { __classPrivateFieldSet(_l, _YargsInstance_parseFn, _o, "f"); } }).value, + parseContext: ({ set value(_o) { __classPrivateFieldSet(_m, _YargsInstance_parseContext, _o, "f"); } }).value, + } = frozen); + __classPrivateFieldGet(this, _YargsInstance_options, "f").configObjects = configObjects; + __classPrivateFieldGet(this, _YargsInstance_usage, "f").unfreeze(); + __classPrivateFieldGet(this, _YargsInstance_validation, "f").unfreeze(); + __classPrivateFieldGet(this, _YargsInstance_command, "f").unfreeze(); + __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").unfreeze(); + } + [kValidateAsync](validation, argv) { + return maybeAsyncResult(argv, result => { + validation(result); + return result; + }); + } + getInternalMethods() { + return { + getCommandInstance: this[kGetCommandInstance].bind(this), + getContext: this[kGetContext].bind(this), + getHasOutput: this[kGetHasOutput].bind(this), + getLoggerInstance: this[kGetLoggerInstance].bind(this), + getParseContext: this[kGetParseContext].bind(this), + getParserConfiguration: this[kGetParserConfiguration].bind(this), + getUsageConfiguration: this[kGetUsageConfiguration].bind(this), + getUsageInstance: this[kGetUsageInstance].bind(this), + getValidationInstance: this[kGetValidationInstance].bind(this), + hasParseCallback: this[kHasParseCallback].bind(this), + isGlobalContext: this[kIsGlobalContext].bind(this), + postProcess: this[kPostProcess].bind(this), + reset: this[kReset].bind(this), + runValidation: this[kRunValidation].bind(this), + runYargsParserAndExecuteCommands: this[kRunYargsParserAndExecuteCommands].bind(this), + setHasOutput: this[kSetHasOutput].bind(this), + }; + } + [kGetCommandInstance]() { + return __classPrivateFieldGet(this, _YargsInstance_command, "f"); + } + [kGetContext]() { + return __classPrivateFieldGet(this, _YargsInstance_context, "f"); + } + [kGetHasOutput]() { + return __classPrivateFieldGet(this, _YargsInstance_hasOutput, "f"); + } + [kGetLoggerInstance]() { + return __classPrivateFieldGet(this, _YargsInstance_logger, "f"); + } + [kGetParseContext]() { + return __classPrivateFieldGet(this, _YargsInstance_parseContext, "f") || {}; + } + [kGetUsageInstance]() { + return __classPrivateFieldGet(this, _YargsInstance_usage, "f"); + } + [kGetValidationInstance]() { + return __classPrivateFieldGet(this, _YargsInstance_validation, "f"); + } + [kHasParseCallback]() { + return !!__classPrivateFieldGet(this, _YargsInstance_parseFn, "f"); + } + [kIsGlobalContext]() { + return __classPrivateFieldGet(this, _YargsInstance_isGlobalContext, "f"); + } + [kPostProcess](argv, populateDoubleDash, calledFromCommand, runGlobalMiddleware) { + if (calledFromCommand) + return argv; + if (isPromise(argv)) + return argv; + if (!populateDoubleDash) { + argv = this[kCopyDoubleDash](argv); + } + const parsePositionalNumbers = this[kGetParserConfiguration]()['parse-positional-numbers'] || + this[kGetParserConfiguration]()['parse-positional-numbers'] === undefined; + if (parsePositionalNumbers) { + argv = this[kParsePositionalNumbers](argv); + } + if (runGlobalMiddleware) { + argv = applyMiddleware(argv, this, __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").getMiddleware(), false); + } + return argv; + } + [kReset](aliases = {}) { + __classPrivateFieldSet(this, _YargsInstance_options, __classPrivateFieldGet(this, _YargsInstance_options, "f") || {}, "f"); + const tmpOptions = {}; + tmpOptions.local = __classPrivateFieldGet(this, _YargsInstance_options, "f").local || []; + tmpOptions.configObjects = __classPrivateFieldGet(this, _YargsInstance_options, "f").configObjects || []; + const localLookup = {}; + tmpOptions.local.forEach(l => { + localLookup[l] = true; + (aliases[l] || []).forEach(a => { + localLookup[a] = true; + }); + }); + Object.assign(__classPrivateFieldGet(this, _YargsInstance_preservedGroups, "f"), Object.keys(__classPrivateFieldGet(this, _YargsInstance_groups, "f")).reduce((acc, groupName) => { + const keys = __classPrivateFieldGet(this, _YargsInstance_groups, "f")[groupName].filter(key => !(key in localLookup)); + if (keys.length > 0) { + acc[groupName] = keys; + } + return acc; + }, {})); + __classPrivateFieldSet(this, _YargsInstance_groups, {}, "f"); + const arrayOptions = [ + 'array', + 'boolean', + 'string', + 'skipValidation', + 'count', + 'normalize', + 'number', + 'hiddenOptions', + ]; + const objectOptions = [ + 'narg', + 'key', + 'alias', + 'default', + 'defaultDescription', + 'config', + 'choices', + 'demandedOptions', + 'demandedCommands', + 'deprecatedOptions', + ]; + arrayOptions.forEach(k => { + tmpOptions[k] = (__classPrivateFieldGet(this, _YargsInstance_options, "f")[k] || []).filter((k) => !localLookup[k]); + }); + objectOptions.forEach((k) => { + tmpOptions[k] = objFilter(__classPrivateFieldGet(this, _YargsInstance_options, "f")[k], k => !localLookup[k]); + }); + tmpOptions.envPrefix = __classPrivateFieldGet(this, _YargsInstance_options, "f").envPrefix; + __classPrivateFieldSet(this, _YargsInstance_options, tmpOptions, "f"); + __classPrivateFieldSet(this, _YargsInstance_usage, __classPrivateFieldGet(this, _YargsInstance_usage, "f") + ? __classPrivateFieldGet(this, _YargsInstance_usage, "f").reset(localLookup) + : Usage(this, __classPrivateFieldGet(this, _YargsInstance_shim, "f")), "f"); + __classPrivateFieldSet(this, _YargsInstance_validation, __classPrivateFieldGet(this, _YargsInstance_validation, "f") + ? __classPrivateFieldGet(this, _YargsInstance_validation, "f").reset(localLookup) + : Validation(this, __classPrivateFieldGet(this, _YargsInstance_usage, "f"), __classPrivateFieldGet(this, _YargsInstance_shim, "f")), "f"); + __classPrivateFieldSet(this, _YargsInstance_command, __classPrivateFieldGet(this, _YargsInstance_command, "f") + ? __classPrivateFieldGet(this, _YargsInstance_command, "f").reset() + : Command(__classPrivateFieldGet(this, _YargsInstance_usage, "f"), __classPrivateFieldGet(this, _YargsInstance_validation, "f"), __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f"), __classPrivateFieldGet(this, _YargsInstance_shim, "f")), "f"); + if (!__classPrivateFieldGet(this, _YargsInstance_completion, "f")) + __classPrivateFieldSet(this, _YargsInstance_completion, Completion(this, __classPrivateFieldGet(this, _YargsInstance_usage, "f"), __classPrivateFieldGet(this, _YargsInstance_command, "f"), __classPrivateFieldGet(this, _YargsInstance_shim, "f")), "f"); + __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").reset(); + __classPrivateFieldSet(this, _YargsInstance_completionCommand, null, "f"); + __classPrivateFieldSet(this, _YargsInstance_output, '', "f"); + __classPrivateFieldSet(this, _YargsInstance_exitError, null, "f"); + __classPrivateFieldSet(this, _YargsInstance_hasOutput, false, "f"); + this.parsed = false; + return this; + } + [kRebase](base, dir) { + return __classPrivateFieldGet(this, _YargsInstance_shim, "f").path.relative(base, dir); + } + [kRunYargsParserAndExecuteCommands](args, shortCircuit, calledFromCommand, commandIndex = 0, helpOnly = false) { + let skipValidation = !!calledFromCommand || helpOnly; + args = args || __classPrivateFieldGet(this, _YargsInstance_processArgs, "f"); + __classPrivateFieldGet(this, _YargsInstance_options, "f").__ = __classPrivateFieldGet(this, _YargsInstance_shim, "f").y18n.__; + __classPrivateFieldGet(this, _YargsInstance_options, "f").configuration = this[kGetParserConfiguration](); + const populateDoubleDash = !!__classPrivateFieldGet(this, _YargsInstance_options, "f").configuration['populate--']; + const config = Object.assign({}, __classPrivateFieldGet(this, _YargsInstance_options, "f").configuration, { + 'populate--': true, + }); + const parsed = __classPrivateFieldGet(this, _YargsInstance_shim, "f").Parser.detailed(args, Object.assign({}, __classPrivateFieldGet(this, _YargsInstance_options, "f"), { + configuration: { 'parse-positional-numbers': false, ...config }, + })); + const argv = Object.assign(parsed.argv, __classPrivateFieldGet(this, _YargsInstance_parseContext, "f")); + let argvPromise = undefined; + const aliases = parsed.aliases; + let helpOptSet = false; + let versionOptSet = false; + Object.keys(argv).forEach(key => { + if (key === __classPrivateFieldGet(this, _YargsInstance_helpOpt, "f") && argv[key]) { + helpOptSet = true; + } + else if (key === __classPrivateFieldGet(this, _YargsInstance_versionOpt, "f") && argv[key]) { + versionOptSet = true; + } + }); + argv.$0 = this.$0; + this.parsed = parsed; + if (commandIndex === 0) { + __classPrivateFieldGet(this, _YargsInstance_usage, "f").clearCachedHelpMessage(); + } + try { + this[kGuessLocale](); + if (shortCircuit) { + return this[kPostProcess](argv, populateDoubleDash, !!calledFromCommand, false); + } + if (__classPrivateFieldGet(this, _YargsInstance_helpOpt, "f")) { + const helpCmds = [__classPrivateFieldGet(this, _YargsInstance_helpOpt, "f")] + .concat(aliases[__classPrivateFieldGet(this, _YargsInstance_helpOpt, "f")] || []) + .filter(k => k.length > 1); + if (helpCmds.includes('' + argv._[argv._.length - 1])) { + argv._.pop(); + helpOptSet = true; + } + } + __classPrivateFieldSet(this, _YargsInstance_isGlobalContext, false, "f"); + const handlerKeys = __classPrivateFieldGet(this, _YargsInstance_command, "f").getCommands(); + const requestCompletions = __classPrivateFieldGet(this, _YargsInstance_completion, "f").completionKey in argv; + const skipRecommendation = helpOptSet || requestCompletions || helpOnly; + if (argv._.length) { + if (handlerKeys.length) { + let firstUnknownCommand; + for (let i = commandIndex || 0, cmd; argv._[i] !== undefined; i++) { + cmd = String(argv._[i]); + if (handlerKeys.includes(cmd) && cmd !== __classPrivateFieldGet(this, _YargsInstance_completionCommand, "f")) { + const innerArgv = __classPrivateFieldGet(this, _YargsInstance_command, "f").runCommand(cmd, this, parsed, i + 1, helpOnly, helpOptSet || versionOptSet || helpOnly); + return this[kPostProcess](innerArgv, populateDoubleDash, !!calledFromCommand, false); + } + else if (!firstUnknownCommand && + cmd !== __classPrivateFieldGet(this, _YargsInstance_completionCommand, "f")) { + firstUnknownCommand = cmd; + break; + } + } + if (!__classPrivateFieldGet(this, _YargsInstance_command, "f").hasDefaultCommand() && + __classPrivateFieldGet(this, _YargsInstance_recommendCommands, "f") && + firstUnknownCommand && + !skipRecommendation) { + __classPrivateFieldGet(this, _YargsInstance_validation, "f").recommendCommands(firstUnknownCommand, handlerKeys); + } + } + if (__classPrivateFieldGet(this, _YargsInstance_completionCommand, "f") && + argv._.includes(__classPrivateFieldGet(this, _YargsInstance_completionCommand, "f")) && + !requestCompletions) { + if (__classPrivateFieldGet(this, _YargsInstance_exitProcess, "f")) + setBlocking(true); + this.showCompletionScript(); + this.exit(0); + } + } + if (__classPrivateFieldGet(this, _YargsInstance_command, "f").hasDefaultCommand() && !skipRecommendation) { + const innerArgv = __classPrivateFieldGet(this, _YargsInstance_command, "f").runCommand(null, this, parsed, 0, helpOnly, helpOptSet || versionOptSet || helpOnly); + return this[kPostProcess](innerArgv, populateDoubleDash, !!calledFromCommand, false); + } + if (requestCompletions) { + if (__classPrivateFieldGet(this, _YargsInstance_exitProcess, "f")) + setBlocking(true); + args = [].concat(args); + const completionArgs = args.slice(args.indexOf(`--${__classPrivateFieldGet(this, _YargsInstance_completion, "f").completionKey}`) + 1); + __classPrivateFieldGet(this, _YargsInstance_completion, "f").getCompletion(completionArgs, (err, completions) => { + if (err) + throw new YError(err.message); + (completions || []).forEach(completion => { + __classPrivateFieldGet(this, _YargsInstance_logger, "f").log(completion); + }); + this.exit(0); + }); + return this[kPostProcess](argv, !populateDoubleDash, !!calledFromCommand, false); + } + if (!__classPrivateFieldGet(this, _YargsInstance_hasOutput, "f")) { + if (helpOptSet) { + if (__classPrivateFieldGet(this, _YargsInstance_exitProcess, "f")) + setBlocking(true); + skipValidation = true; + this.showHelp('log'); + this.exit(0); + } + else if (versionOptSet) { + if (__classPrivateFieldGet(this, _YargsInstance_exitProcess, "f")) + setBlocking(true); + skipValidation = true; + __classPrivateFieldGet(this, _YargsInstance_usage, "f").showVersion('log'); + this.exit(0); + } + } + if (!skipValidation && __classPrivateFieldGet(this, _YargsInstance_options, "f").skipValidation.length > 0) { + skipValidation = Object.keys(argv).some(key => __classPrivateFieldGet(this, _YargsInstance_options, "f").skipValidation.indexOf(key) >= 0 && argv[key] === true); + } + if (!skipValidation) { + if (parsed.error) + throw new YError(parsed.error.message); + if (!requestCompletions) { + const validation = this[kRunValidation](aliases, {}, parsed.error); + if (!calledFromCommand) { + argvPromise = applyMiddleware(argv, this, __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").getMiddleware(), true); + } + argvPromise = this[kValidateAsync](validation, argvPromise !== null && argvPromise !== void 0 ? argvPromise : argv); + if (isPromise(argvPromise) && !calledFromCommand) { + argvPromise = argvPromise.then(() => { + return applyMiddleware(argv, this, __classPrivateFieldGet(this, _YargsInstance_globalMiddleware, "f").getMiddleware(), false); + }); + } + } + } + } + catch (err) { + if (err instanceof YError) + __classPrivateFieldGet(this, _YargsInstance_usage, "f").fail(err.message, err); + else + throw err; + } + return this[kPostProcess](argvPromise !== null && argvPromise !== void 0 ? argvPromise : argv, populateDoubleDash, !!calledFromCommand, true); + } + [kRunValidation](aliases, positionalMap, parseErrors, isDefaultCommand) { + const demandedOptions = { ...this.getDemandedOptions() }; + return (argv) => { + if (parseErrors) + throw new YError(parseErrors.message); + __classPrivateFieldGet(this, _YargsInstance_validation, "f").nonOptionCount(argv); + __classPrivateFieldGet(this, _YargsInstance_validation, "f").requiredArguments(argv, demandedOptions); + let failedStrictCommands = false; + if (__classPrivateFieldGet(this, _YargsInstance_strictCommands, "f")) { + failedStrictCommands = __classPrivateFieldGet(this, _YargsInstance_validation, "f").unknownCommands(argv); + } + if (__classPrivateFieldGet(this, _YargsInstance_strict, "f") && !failedStrictCommands) { + __classPrivateFieldGet(this, _YargsInstance_validation, "f").unknownArguments(argv, aliases, positionalMap, !!isDefaultCommand); + } + else if (__classPrivateFieldGet(this, _YargsInstance_strictOptions, "f")) { + __classPrivateFieldGet(this, _YargsInstance_validation, "f").unknownArguments(argv, aliases, {}, false, false); + } + __classPrivateFieldGet(this, _YargsInstance_validation, "f").limitedChoices(argv); + __classPrivateFieldGet(this, _YargsInstance_validation, "f").implications(argv); + __classPrivateFieldGet(this, _YargsInstance_validation, "f").conflicting(argv); + }; + } + [kSetHasOutput]() { + __classPrivateFieldSet(this, _YargsInstance_hasOutput, true, "f"); + } + [kTrackManuallySetKeys](keys) { + if (typeof keys === 'string') { + __classPrivateFieldGet(this, _YargsInstance_options, "f").key[keys] = true; + } + else { + for (const k of keys) { + __classPrivateFieldGet(this, _YargsInstance_options, "f").key[k] = true; + } + } + } +} +export function isYargsInstance(y) { + return !!y && typeof y.getInternalMethods === 'function'; +} diff --git a/node_modules/yargs/build/lib/yerror.js b/node_modules/yargs/build/lib/yerror.js new file mode 100644 index 0000000..7a36684 --- /dev/null +++ b/node_modules/yargs/build/lib/yerror.js @@ -0,0 +1,9 @@ +export class YError extends Error { + constructor(msg) { + super(msg || 'yargs error'); + this.name = 'YError'; + if (Error.captureStackTrace) { + Error.captureStackTrace(this, YError); + } + } +} diff --git a/node_modules/yargs/helpers/helpers.mjs b/node_modules/yargs/helpers/helpers.mjs new file mode 100644 index 0000000..3f96b3d --- /dev/null +++ b/node_modules/yargs/helpers/helpers.mjs @@ -0,0 +1,10 @@ +import {applyExtends as _applyExtends} from '../build/lib/utils/apply-extends.js'; +import {hideBin} from '../build/lib/utils/process-argv.js'; +import Parser from 'yargs-parser'; +import shim from '../lib/platform-shims/esm.mjs'; + +const applyExtends = (config, cwd, mergeExtends) => { + return _applyExtends(config, cwd, mergeExtends, shim); +}; + +export {applyExtends, hideBin, Parser}; diff --git a/node_modules/yargs/helpers/index.js b/node_modules/yargs/helpers/index.js new file mode 100644 index 0000000..8ab79a3 --- /dev/null +++ b/node_modules/yargs/helpers/index.js @@ -0,0 +1,14 @@ +const { + applyExtends, + cjsPlatformShim, + Parser, + processArgv, +} = require('../build/index.cjs'); + +module.exports = { + applyExtends: (config, cwd, mergeExtends) => { + return applyExtends(config, cwd, mergeExtends, cjsPlatformShim); + }, + hideBin: processArgv.hideBin, + Parser, +}; diff --git a/node_modules/yargs/helpers/package.json b/node_modules/yargs/helpers/package.json new file mode 100644 index 0000000..5bbefff --- /dev/null +++ b/node_modules/yargs/helpers/package.json @@ -0,0 +1,3 @@ +{ + "type": "commonjs" +} diff --git a/node_modules/yargs/index.cjs b/node_modules/yargs/index.cjs new file mode 100644 index 0000000..d1eee82 --- /dev/null +++ b/node_modules/yargs/index.cjs @@ -0,0 +1,53 @@ +'use strict'; +// classic singleton yargs API, to use yargs +// without running as a singleton do: +// require('yargs/yargs')(process.argv.slice(2)) +const {Yargs, processArgv} = require('./build/index.cjs'); + +Argv(processArgv.hideBin(process.argv)); + +module.exports = Argv; + +function Argv(processArgs, cwd) { + const argv = Yargs(processArgs, cwd, require); + singletonify(argv); + // TODO(bcoe): warn if argv.parse() or argv.argv is used directly. + return argv; +} + +function defineGetter(obj, key, getter) { + Object.defineProperty(obj, key, { + configurable: true, + enumerable: true, + get: getter, + }); +} +function lookupGetter(obj, key) { + const desc = Object.getOwnPropertyDescriptor(obj, key); + if (typeof desc !== 'undefined') { + return desc.get; + } +} + +/* Hack an instance of Argv with process.argv into Argv + so people can do + require('yargs')(['--beeble=1','-z','zizzle']).argv + to parse a list of args and + require('yargs').argv + to get a parsed version of process.argv. +*/ +function singletonify(inst) { + [ + ...Object.keys(inst), + ...Object.getOwnPropertyNames(inst.constructor.prototype), + ].forEach(key => { + if (key === 'argv') { + defineGetter(Argv, key, lookupGetter(inst, key)); + } else if (typeof inst[key] === 'function') { + Argv[key] = inst[key].bind(inst); + } else { + defineGetter(Argv, '$0', () => inst.$0); + defineGetter(Argv, 'parsed', () => inst.parsed); + } + }); +} diff --git a/node_modules/yargs/index.mjs b/node_modules/yargs/index.mjs new file mode 100644 index 0000000..c6440b9 --- /dev/null +++ b/node_modules/yargs/index.mjs @@ -0,0 +1,8 @@ +'use strict'; + +// Bootstraps yargs for ESM: +import esmPlatformShim from './lib/platform-shims/esm.mjs'; +import {YargsFactory} from './build/lib/yargs-factory.js'; + +const Yargs = YargsFactory(esmPlatformShim); +export default Yargs; diff --git a/node_modules/yargs/lib/platform-shims/browser.mjs b/node_modules/yargs/lib/platform-shims/browser.mjs new file mode 100644 index 0000000..5f8ec61 --- /dev/null +++ b/node_modules/yargs/lib/platform-shims/browser.mjs @@ -0,0 +1,95 @@ +/* eslint-disable no-unused-vars */ +'use strict'; + +import cliui from 'https://unpkg.com/cliui@7.0.1/index.mjs'; // eslint-disable-line +import Parser from 'https://unpkg.com/yargs-parser@19.0.0/browser.js'; // eslint-disable-line +import {getProcessArgvBin} from '../../build/lib/utils/process-argv.js'; +import {YError} from '../../build/lib/yerror.js'; + +const REQUIRE_ERROR = 'require is not supported in browser'; +const REQUIRE_DIRECTORY_ERROR = + 'loading a directory of commands is not supported in browser'; + +export default { + assert: { + notStrictEqual: (a, b) => { + // noop. + }, + strictEqual: (a, b) => { + // noop. + }, + }, + cliui, + findUp: () => undefined, + getEnv: key => { + // There is no environment in browser: + return undefined; + }, + inspect: console.log, + getCallerFile: () => { + throw new YError(REQUIRE_DIRECTORY_ERROR); + }, + getProcessArgvBin, + mainFilename: 'yargs', + Parser, + path: { + basename: str => str, + dirname: str => str, + extname: str => str, + relative: str => str, + }, + process: { + argv: () => [], + cwd: () => '', + emitWarning: (warning, name) => {}, + execPath: () => '', + // exit is noop browser: + exit: () => {}, + nextTick: cb => { + // eslint-disable-next-line no-undef + window.setTimeout(cb, 1); + }, + stdColumns: 80, + }, + readFileSync: () => { + return ''; + }, + require: () => { + throw new YError(REQUIRE_ERROR); + }, + requireDirectory: () => { + throw new YError(REQUIRE_DIRECTORY_ERROR); + }, + stringWidth: str => { + return [...str].length; + }, + // TODO: replace this with y18n once it's ported to ESM: + y18n: { + __: (...str) => { + if (str.length === 0) return ''; + const args = str.slice(1); + return sprintf(str[0], ...args); + }, + __n: (str1, str2, count, ...args) => { + if (count === 1) { + return sprintf(str1, ...args); + } else { + return sprintf(str2, ...args); + } + }, + getLocale: () => { + return 'en_US'; + }, + setLocale: () => {}, + updateLocale: () => {}, + }, +}; + +function sprintf(_str, ...args) { + let str = ''; + const split = _str.split('%s'); + split.forEach((token, i) => { + str += `${token}${split[i + 1] !== undefined && args[i] ? args[i] : ''}`; + }); + return str; +} diff --git a/node_modules/yargs/lib/platform-shims/esm.mjs b/node_modules/yargs/lib/platform-shims/esm.mjs new file mode 100644 index 0000000..c25baa5 --- /dev/null +++ b/node_modules/yargs/lib/platform-shims/esm.mjs @@ -0,0 +1,73 @@ +'use strict' + +import { notStrictEqual, strictEqual } from 'assert' +import cliui from 'cliui' +import escalade from 'escalade/sync' +import { inspect } from 'util' +import { readFileSync } from 'fs' +import { fileURLToPath } from 'url'; +import Parser from 'yargs-parser' +import { basename, dirname, extname, relative, resolve } from 'path' +import { getProcessArgvBin } from '../../build/lib/utils/process-argv.js' +import { YError } from '../../build/lib/yerror.js' +import y18n from 'y18n' + +const REQUIRE_ERROR = 'require is not supported by ESM' +const REQUIRE_DIRECTORY_ERROR = 'loading a directory of commands is not supported yet for ESM' + +let __dirname; +try { + __dirname = fileURLToPath(import.meta.url); +} catch (e) { + __dirname = process.cwd(); +} +const mainFilename = __dirname.substring(0, __dirname.lastIndexOf('node_modules')); + +export default { + assert: { + notStrictEqual, + strictEqual + }, + cliui, + findUp: escalade, + getEnv: (key) => { + return process.env[key] + }, + inspect, + getCallerFile: () => { + throw new YError(REQUIRE_DIRECTORY_ERROR) + }, + getProcessArgvBin, + mainFilename: mainFilename || process.cwd(), + Parser, + path: { + basename, + dirname, + extname, + relative, + resolve + }, + process: { + argv: () => process.argv, + cwd: process.cwd, + emitWarning: (warning, type) => process.emitWarning(warning, type), + execPath: () => process.execPath, + exit: process.exit, + nextTick: process.nextTick, + stdColumns: typeof process.stdout.columns !== 'undefined' ? process.stdout.columns : null + }, + readFileSync, + require: () => { + throw new YError(REQUIRE_ERROR) + }, + requireDirectory: () => { + throw new YError(REQUIRE_DIRECTORY_ERROR) + }, + stringWidth: (str) => { + return [...str].length + }, + y18n: y18n({ + directory: resolve(__dirname, '../../../locales'), + updateFiles: false + }) +} diff --git a/node_modules/yargs/locales/be.json b/node_modules/yargs/locales/be.json new file mode 100644 index 0000000..e28fa30 --- /dev/null +++ b/node_modules/yargs/locales/be.json @@ -0,0 +1,46 @@ +{ + "Commands:": "Каманды:", + "Options:": "Опцыі:", + "Examples:": "Прыклады:", + "boolean": "булевы тып", + "count": "падлік", + "string": "радковы тып", + "number": "лік", + "array": "масіў", + "required": "неабходна", + "default": "па змаўчанні", + "default:": "па змаўчанні:", + "choices:": "магчымасці:", + "aliases:": "аліасы:", + "generated-value": "згенераванае значэнне", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Недастаткова неапцыйных аргументаў: ёсць %s, трэба як мінімум %s", + "other": "Недастаткова неапцыйных аргументаў: ёсць %s, трэба як мінімум %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Занадта шмат неапцыйных аргументаў: ёсць %s, максімум дапушчальна %s", + "other": "Занадта шмат неапцыйных аргументаў: ёсць %s, максімум дапушчальна %s" + }, + "Missing argument value: %s": { + "one": "Не хапае значэння аргументу: %s", + "other": "Не хапае значэнняў аргументаў: %s" + }, + "Missing required argument: %s": { + "one": "Не хапае неабходнага аргументу: %s", + "other": "Не хапае неабходных аргументаў: %s" + }, + "Unknown argument: %s": { + "one": "Невядомы аргумент: %s", + "other": "Невядомыя аргументы: %s" + }, + "Invalid values:": "Несапраўдныя значэння:", + "Argument: %s, Given: %s, Choices: %s": "Аргумент: %s, Дадзенае значэнне: %s, Магчымасці: %s", + "Argument check failed: %s": "Праверка аргументаў не ўдалася: %s", + "Implications failed:": "Дадзены аргумент патрабуе наступны дадатковы аргумент:", + "Not enough arguments following: %s": "Недастаткова наступных аргументаў: %s", + "Invalid JSON config file: %s": "Несапраўдны файл канфігурацыі JSON: %s", + "Path to JSON config file": "Шлях да файла канфігурацыі JSON", + "Show help": "Паказаць дапамогу", + "Show version number": "Паказаць нумар версіі", + "Did you mean %s?": "Вы мелі на ўвазе %s?" +} diff --git a/node_modules/yargs/locales/cs.json b/node_modules/yargs/locales/cs.json new file mode 100644 index 0000000..6394875 --- /dev/null +++ b/node_modules/yargs/locales/cs.json @@ -0,0 +1,51 @@ +{ + "Commands:": "Příkazy:", + "Options:": "Možnosti:", + "Examples:": "Příklady:", + "boolean": "logická hodnota", + "count": "počet", + "string": "řetězec", + "number": "číslo", + "array": "pole", + "required": "povinné", + "default": "výchozí", + "default:": "výchozí:", + "choices:": "volby:", + "aliases:": "aliasy:", + "generated-value": "generovaná-hodnota", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Nedostatek argumentů: zadáno %s, je potřeba alespoň %s", + "other": "Nedostatek argumentů: zadáno %s, je potřeba alespoň %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Příliš mnoho argumentů: zadáno %s, maximálně %s", + "other": "Příliš mnoho argumentů: zadáno %s, maximálně %s" + }, + "Missing argument value: %s": { + "one": "Chybí hodnota argumentu: %s", + "other": "Chybí hodnoty argumentů: %s" + }, + "Missing required argument: %s": { + "one": "Chybí požadovaný argument: %s", + "other": "Chybí požadované argumenty: %s" + }, + "Unknown argument: %s": { + "one": "Neznámý argument: %s", + "other": "Neznámé argumenty: %s" + }, + "Invalid values:": "Neplatné hodnoty:", + "Argument: %s, Given: %s, Choices: %s": "Argument: %s, Zadáno: %s, Možnosti: %s", + "Argument check failed: %s": "Kontrola argumentů se nezdařila: %s", + "Implications failed:": "Chybí závislé argumenty:", + "Not enough arguments following: %s": "Následuje nedostatek argumentů: %s", + "Invalid JSON config file: %s": "Neplatný konfigurační soubor JSON: %s", + "Path to JSON config file": "Cesta ke konfiguračnímu souboru JSON", + "Show help": "Zobrazit nápovědu", + "Show version number": "Zobrazit číslo verze", + "Did you mean %s?": "Měl jste na mysli %s?", + "Arguments %s and %s are mutually exclusive" : "Argumenty %s a %s se vzájemně vylučují", + "Positionals:": "Poziční:", + "command": "příkaz", + "deprecated": "zastaralé", + "deprecated: %s": "zastaralé: %s" +} diff --git a/node_modules/yargs/locales/de.json b/node_modules/yargs/locales/de.json new file mode 100644 index 0000000..dc73ec3 --- /dev/null +++ b/node_modules/yargs/locales/de.json @@ -0,0 +1,46 @@ +{ + "Commands:": "Kommandos:", + "Options:": "Optionen:", + "Examples:": "Beispiele:", + "boolean": "boolean", + "count": "Zähler", + "string": "string", + "number": "Zahl", + "array": "array", + "required": "erforderlich", + "default": "Standard", + "default:": "Standard:", + "choices:": "Möglichkeiten:", + "aliases:": "Aliase:", + "generated-value": "Generierter-Wert", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Nicht genügend Argumente ohne Optionen: %s vorhanden, mindestens %s benötigt", + "other": "Nicht genügend Argumente ohne Optionen: %s vorhanden, mindestens %s benötigt" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Zu viele Argumente ohne Optionen: %s vorhanden, maximal %s erlaubt", + "other": "Zu viele Argumente ohne Optionen: %s vorhanden, maximal %s erlaubt" + }, + "Missing argument value: %s": { + "one": "Fehlender Argumentwert: %s", + "other": "Fehlende Argumentwerte: %s" + }, + "Missing required argument: %s": { + "one": "Fehlendes Argument: %s", + "other": "Fehlende Argumente: %s" + }, + "Unknown argument: %s": { + "one": "Unbekanntes Argument: %s", + "other": "Unbekannte Argumente: %s" + }, + "Invalid values:": "Unzulässige Werte:", + "Argument: %s, Given: %s, Choices: %s": "Argument: %s, Gegeben: %s, Möglichkeiten: %s", + "Argument check failed: %s": "Argumente-Check fehlgeschlagen: %s", + "Implications failed:": "Fehlende abhängige Argumente:", + "Not enough arguments following: %s": "Nicht genügend Argumente nach: %s", + "Invalid JSON config file: %s": "Fehlerhafte JSON-Config Datei: %s", + "Path to JSON config file": "Pfad zur JSON-Config Datei", + "Show help": "Hilfe anzeigen", + "Show version number": "Version anzeigen", + "Did you mean %s?": "Meintest du %s?" +} diff --git a/node_modules/yargs/locales/en.json b/node_modules/yargs/locales/en.json new file mode 100644 index 0000000..af096a1 --- /dev/null +++ b/node_modules/yargs/locales/en.json @@ -0,0 +1,55 @@ +{ + "Commands:": "Commands:", + "Options:": "Options:", + "Examples:": "Examples:", + "boolean": "boolean", + "count": "count", + "string": "string", + "number": "number", + "array": "array", + "required": "required", + "default": "default", + "default:": "default:", + "choices:": "choices:", + "aliases:": "aliases:", + "generated-value": "generated-value", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Not enough non-option arguments: got %s, need at least %s", + "other": "Not enough non-option arguments: got %s, need at least %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Too many non-option arguments: got %s, maximum of %s", + "other": "Too many non-option arguments: got %s, maximum of %s" + }, + "Missing argument value: %s": { + "one": "Missing argument value: %s", + "other": "Missing argument values: %s" + }, + "Missing required argument: %s": { + "one": "Missing required argument: %s", + "other": "Missing required arguments: %s" + }, + "Unknown argument: %s": { + "one": "Unknown argument: %s", + "other": "Unknown arguments: %s" + }, + "Unknown command: %s": { + "one": "Unknown command: %s", + "other": "Unknown commands: %s" + }, + "Invalid values:": "Invalid values:", + "Argument: %s, Given: %s, Choices: %s": "Argument: %s, Given: %s, Choices: %s", + "Argument check failed: %s": "Argument check failed: %s", + "Implications failed:": "Missing dependent arguments:", + "Not enough arguments following: %s": "Not enough arguments following: %s", + "Invalid JSON config file: %s": "Invalid JSON config file: %s", + "Path to JSON config file": "Path to JSON config file", + "Show help": "Show help", + "Show version number": "Show version number", + "Did you mean %s?": "Did you mean %s?", + "Arguments %s and %s are mutually exclusive" : "Arguments %s and %s are mutually exclusive", + "Positionals:": "Positionals:", + "command": "command", + "deprecated": "deprecated", + "deprecated: %s": "deprecated: %s" +} diff --git a/node_modules/yargs/locales/es.json b/node_modules/yargs/locales/es.json new file mode 100644 index 0000000..d77b461 --- /dev/null +++ b/node_modules/yargs/locales/es.json @@ -0,0 +1,46 @@ +{ + "Commands:": "Comandos:", + "Options:": "Opciones:", + "Examples:": "Ejemplos:", + "boolean": "booleano", + "count": "cuenta", + "string": "cadena de caracteres", + "number": "número", + "array": "tabla", + "required": "requerido", + "default": "defecto", + "default:": "defecto:", + "choices:": "selección:", + "aliases:": "alias:", + "generated-value": "valor-generado", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Hacen falta argumentos no-opcionales: Número recibido %s, necesita por lo menos %s", + "other": "Hacen falta argumentos no-opcionales: Número recibido %s, necesita por lo menos %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Demasiados argumentos no-opcionales: Número recibido %s, máximo es %s", + "other": "Demasiados argumentos no-opcionales: Número recibido %s, máximo es %s" + }, + "Missing argument value: %s": { + "one": "Falta argumento: %s", + "other": "Faltan argumentos: %s" + }, + "Missing required argument: %s": { + "one": "Falta argumento requerido: %s", + "other": "Faltan argumentos requeridos: %s" + }, + "Unknown argument: %s": { + "one": "Argumento desconocido: %s", + "other": "Argumentos desconocidos: %s" + }, + "Invalid values:": "Valores inválidos:", + "Argument: %s, Given: %s, Choices: %s": "Argumento: %s, Recibido: %s, Seleccionados: %s", + "Argument check failed: %s": "Verificación de argumento ha fallado: %s", + "Implications failed:": "Implicaciones fallidas:", + "Not enough arguments following: %s": "No hay suficientes argumentos después de: %s", + "Invalid JSON config file: %s": "Archivo de configuración JSON inválido: %s", + "Path to JSON config file": "Ruta al archivo de configuración JSON", + "Show help": "Muestra ayuda", + "Show version number": "Muestra número de versión", + "Did you mean %s?": "Quisiste decir %s?" +} diff --git a/node_modules/yargs/locales/fi.json b/node_modules/yargs/locales/fi.json new file mode 100644 index 0000000..481feb7 --- /dev/null +++ b/node_modules/yargs/locales/fi.json @@ -0,0 +1,49 @@ +{ + "Commands:": "Komennot:", + "Options:": "Valinnat:", + "Examples:": "Esimerkkejä:", + "boolean": "totuusarvo", + "count": "lukumäärä", + "string": "merkkijono", + "number": "numero", + "array": "taulukko", + "required": "pakollinen", + "default": "oletusarvo", + "default:": "oletusarvo:", + "choices:": "vaihtoehdot:", + "aliases:": "aliakset:", + "generated-value": "generoitu-arvo", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Liian vähän argumentteja, jotka eivät ole valintoja: annettu %s, vaaditaan vähintään %s", + "other": "Liian vähän argumentteja, jotka eivät ole valintoja: annettu %s, vaaditaan vähintään %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Liikaa argumentteja, jotka eivät ole valintoja: annettu %s, sallitaan enintään %s", + "other": "Liikaa argumentteja, jotka eivät ole valintoja: annettu %s, sallitaan enintään %s" + }, + "Missing argument value: %s": { + "one": "Argumentin arvo puuttuu: %s", + "other": "Argumentin arvot puuttuvat: %s" + }, + "Missing required argument: %s": { + "one": "Pakollinen argumentti puuttuu: %s", + "other": "Pakollisia argumentteja puuttuu: %s" + }, + "Unknown argument: %s": { + "one": "Tuntematon argumentti: %s", + "other": "Tuntemattomia argumentteja: %s" + }, + "Invalid values:": "Virheelliset arvot:", + "Argument: %s, Given: %s, Choices: %s": "Argumentti: %s, Annettu: %s, Vaihtoehdot: %s", + "Argument check failed: %s": "Argumentin tarkistus epäonnistui: %s", + "Implications failed:": "Riippuvia argumentteja puuttuu:", + "Not enough arguments following: %s": "Argumentin perässä ei ole tarpeeksi argumentteja: %s", + "Invalid JSON config file: %s": "Epävalidi JSON-asetustiedosto: %s", + "Path to JSON config file": "JSON-asetustiedoston polku", + "Show help": "Näytä ohje", + "Show version number": "Näytä versionumero", + "Did you mean %s?": "Tarkoititko %s?", + "Arguments %s and %s are mutually exclusive" : "Argumentit %s ja %s eivät ole yhteensopivat", + "Positionals:": "Sijaintiparametrit:", + "command": "komento" +} diff --git a/node_modules/yargs/locales/fr.json b/node_modules/yargs/locales/fr.json new file mode 100644 index 0000000..edd743f --- /dev/null +++ b/node_modules/yargs/locales/fr.json @@ -0,0 +1,53 @@ +{ + "Commands:": "Commandes :", + "Options:": "Options :", + "Examples:": "Exemples :", + "boolean": "booléen", + "count": "compteur", + "string": "chaîne de caractères", + "number": "nombre", + "array": "tableau", + "required": "requis", + "default": "défaut", + "default:": "défaut :", + "choices:": "choix :", + "aliases:": "alias :", + "generated-value": "valeur générée", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Pas assez d'arguments (hors options) : reçu %s, besoin d'au moins %s", + "other": "Pas assez d'arguments (hors options) : reçus %s, besoin d'au moins %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Trop d'arguments (hors options) : reçu %s, maximum de %s", + "other": "Trop d'arguments (hors options) : reçus %s, maximum de %s" + }, + "Missing argument value: %s": { + "one": "Argument manquant : %s", + "other": "Arguments manquants : %s" + }, + "Missing required argument: %s": { + "one": "Argument requis manquant : %s", + "other": "Arguments requis manquants : %s" + }, + "Unknown argument: %s": { + "one": "Argument inconnu : %s", + "other": "Arguments inconnus : %s" + }, + "Unknown command: %s": { + "one": "Commande inconnue : %s", + "other": "Commandes inconnues : %s" + }, + "Invalid values:": "Valeurs invalides :", + "Argument: %s, Given: %s, Choices: %s": "Argument : %s, donné : %s, choix : %s", + "Argument check failed: %s": "Echec de la vérification de l'argument : %s", + "Implications failed:": "Arguments dépendants manquants :", + "Not enough arguments following: %s": "Pas assez d'arguments après : %s", + "Invalid JSON config file: %s": "Fichier de configuration JSON invalide : %s", + "Path to JSON config file": "Chemin du fichier de configuration JSON", + "Show help": "Affiche l'aide", + "Show version number": "Affiche le numéro de version", + "Did you mean %s?": "Vouliez-vous dire %s ?", + "Arguments %s and %s are mutually exclusive" : "Les arguments %s et %s sont mutuellement exclusifs", + "Positionals:": "Arguments positionnels :", + "command": "commande" +} diff --git a/node_modules/yargs/locales/hi.json b/node_modules/yargs/locales/hi.json new file mode 100644 index 0000000..a9de77c --- /dev/null +++ b/node_modules/yargs/locales/hi.json @@ -0,0 +1,49 @@ +{ + "Commands:": "आदेश:", + "Options:": "विकल्प:", + "Examples:": "उदाहरण:", + "boolean": "सत्यता", + "count": "संख्या", + "string": "वर्णों का तार ", + "number": "अंक", + "array": "सरणी", + "required": "आवश्यक", + "default": "डिफॉल्ट", + "default:": "डिफॉल्ट:", + "choices:": "विकल्प:", + "aliases:": "उपनाम:", + "generated-value": "उत्पन्न-मूल्य", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "पर्याप्त गैर-विकल्प तर्क प्राप्त नहीं: %s प्राप्त, कम से कम %s की आवश्यकता है", + "other": "पर्याप्त गैर-विकल्प तर्क प्राप्त नहीं: %s प्राप्त, कम से कम %s की आवश्यकता है" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "बहुत सारे गैर-विकल्प तर्क: %s प्राप्त, अधिकतम %s मान्य", + "other": "बहुत सारे गैर-विकल्प तर्क: %s प्राप्त, अधिकतम %s मान्य" + }, + "Missing argument value: %s": { + "one": "कुछ तर्को के मूल्य गुम हैं: %s", + "other": "कुछ तर्को के मूल्य गुम हैं: %s" + }, + "Missing required argument: %s": { + "one": "आवश्यक तर्क गुम हैं: %s", + "other": "आवश्यक तर्क गुम हैं: %s" + }, + "Unknown argument: %s": { + "one": "अज्ञात तर्क प्राप्त: %s", + "other": "अज्ञात तर्क प्राप्त: %s" + }, + "Invalid values:": "अमान्य मूल्य:", + "Argument: %s, Given: %s, Choices: %s": "तर्क: %s, प्राप्त: %s, विकल्प: %s", + "Argument check failed: %s": "तर्क जांच विफल: %s", + "Implications failed:": "दिए गए तर्क के लिए अतिरिक्त तर्क की अपेक्षा है:", + "Not enough arguments following: %s": "निम्नलिखित के बाद पर्याप्त तर्क नहीं प्राप्त: %s", + "Invalid JSON config file: %s": "अमान्य JSON config फाइल: %s", + "Path to JSON config file": "JSON config फाइल का पथ", + "Show help": "सहायता दिखाएँ", + "Show version number": "Version संख्या दिखाएँ", + "Did you mean %s?": "क्या आपका मतलब है %s?", + "Arguments %s and %s are mutually exclusive" : "तर्क %s और %s परस्पर अनन्य हैं", + "Positionals:": "स्थानीय:", + "command": "आदेश" +} diff --git a/node_modules/yargs/locales/hu.json b/node_modules/yargs/locales/hu.json new file mode 100644 index 0000000..21492d0 --- /dev/null +++ b/node_modules/yargs/locales/hu.json @@ -0,0 +1,46 @@ +{ + "Commands:": "Parancsok:", + "Options:": "Opciók:", + "Examples:": "Példák:", + "boolean": "boolean", + "count": "számláló", + "string": "szöveg", + "number": "szám", + "array": "tömb", + "required": "kötelező", + "default": "alapértelmezett", + "default:": "alapértelmezett:", + "choices:": "lehetőségek:", + "aliases:": "aliaszok:", + "generated-value": "generált-érték", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Nincs elég nem opcionális argumentum: %s van, legalább %s kell", + "other": "Nincs elég nem opcionális argumentum: %s van, legalább %s kell" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Túl sok nem opciánlis argumentum van: %s van, maximum %s lehet", + "other": "Túl sok nem opciánlis argumentum van: %s van, maximum %s lehet" + }, + "Missing argument value: %s": { + "one": "Hiányzó argumentum érték: %s", + "other": "Hiányzó argumentum értékek: %s" + }, + "Missing required argument: %s": { + "one": "Hiányzó kötelező argumentum: %s", + "other": "Hiányzó kötelező argumentumok: %s" + }, + "Unknown argument: %s": { + "one": "Ismeretlen argumentum: %s", + "other": "Ismeretlen argumentumok: %s" + }, + "Invalid values:": "Érvénytelen érték:", + "Argument: %s, Given: %s, Choices: %s": "Argumentum: %s, Megadott: %s, Lehetőségek: %s", + "Argument check failed: %s": "Argumentum ellenőrzés sikertelen: %s", + "Implications failed:": "Implikációk sikertelenek:", + "Not enough arguments following: %s": "Nem elég argumentum követi: %s", + "Invalid JSON config file: %s": "Érvénytelen JSON konfigurációs file: %s", + "Path to JSON config file": "JSON konfigurációs file helye", + "Show help": "Súgo megjelenítése", + "Show version number": "Verziószám megjelenítése", + "Did you mean %s?": "Erre gondoltál %s?" +} diff --git a/node_modules/yargs/locales/id.json b/node_modules/yargs/locales/id.json new file mode 100644 index 0000000..125867c --- /dev/null +++ b/node_modules/yargs/locales/id.json @@ -0,0 +1,50 @@ + +{ + "Commands:": "Perintah:", + "Options:": "Pilihan:", + "Examples:": "Contoh:", + "boolean": "boolean", + "count": "jumlah", + "number": "nomor", + "string": "string", + "array": "larik", + "required": "diperlukan", + "default": "bawaan", + "default:": "bawaan:", + "aliases:": "istilah lain:", + "choices:": "pilihan:", + "generated-value": "nilai-yang-dihasilkan", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Argumen wajib kurang: hanya %s, minimal %s", + "other": "Argumen wajib kurang: hanya %s, minimal %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Terlalu banyak argumen wajib: ada %s, maksimal %s", + "other": "Terlalu banyak argumen wajib: ada %s, maksimal %s" + }, + "Missing argument value: %s": { + "one": "Kurang argumen: %s", + "other": "Kurang argumen: %s" + }, + "Missing required argument: %s": { + "one": "Kurang argumen wajib: %s", + "other": "Kurang argumen wajib: %s" + }, + "Unknown argument: %s": { + "one": "Argumen tak diketahui: %s", + "other": "Argumen tak diketahui: %s" + }, + "Invalid values:": "Nilai-nilai tidak valid:", + "Argument: %s, Given: %s, Choices: %s": "Argumen: %s, Diberikan: %s, Pilihan: %s", + "Argument check failed: %s": "Pemeriksaan argument gagal: %s", + "Implications failed:": "Implikasi gagal:", + "Not enough arguments following: %s": "Kurang argumen untuk: %s", + "Invalid JSON config file: %s": "Berkas konfigurasi JSON tidak valid: %s", + "Path to JSON config file": "Alamat berkas konfigurasi JSON", + "Show help": "Lihat bantuan", + "Show version number": "Lihat nomor versi", + "Did you mean %s?": "Maksud Anda: %s?", + "Arguments %s and %s are mutually exclusive" : "Argumen %s dan %s saling eksklusif", + "Positionals:": "Posisional-posisional:", + "command": "perintah" +} diff --git a/node_modules/yargs/locales/it.json b/node_modules/yargs/locales/it.json new file mode 100644 index 0000000..fde5756 --- /dev/null +++ b/node_modules/yargs/locales/it.json @@ -0,0 +1,46 @@ +{ + "Commands:": "Comandi:", + "Options:": "Opzioni:", + "Examples:": "Esempi:", + "boolean": "booleano", + "count": "contatore", + "string": "stringa", + "number": "numero", + "array": "vettore", + "required": "richiesto", + "default": "predefinito", + "default:": "predefinito:", + "choices:": "scelte:", + "aliases:": "alias:", + "generated-value": "valore generato", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Numero insufficiente di argomenti non opzione: inseriti %s, richiesti almeno %s", + "other": "Numero insufficiente di argomenti non opzione: inseriti %s, richiesti almeno %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Troppi argomenti non opzione: inseriti %s, massimo possibile %s", + "other": "Troppi argomenti non opzione: inseriti %s, massimo possibile %s" + }, + "Missing argument value: %s": { + "one": "Argomento mancante: %s", + "other": "Argomenti mancanti: %s" + }, + "Missing required argument: %s": { + "one": "Argomento richiesto mancante: %s", + "other": "Argomenti richiesti mancanti: %s" + }, + "Unknown argument: %s": { + "one": "Argomento sconosciuto: %s", + "other": "Argomenti sconosciuti: %s" + }, + "Invalid values:": "Valori non validi:", + "Argument: %s, Given: %s, Choices: %s": "Argomento: %s, Richiesto: %s, Scelte: %s", + "Argument check failed: %s": "Controllo dell'argomento fallito: %s", + "Implications failed:": "Argomenti dipendenti mancanti:", + "Not enough arguments following: %s": "Argomenti insufficienti dopo: %s", + "Invalid JSON config file: %s": "File di configurazione JSON non valido: %s", + "Path to JSON config file": "Percorso del file di configurazione JSON", + "Show help": "Mostra la schermata di aiuto", + "Show version number": "Mostra il numero di versione", + "Did you mean %s?": "Intendi forse %s?" +} diff --git a/node_modules/yargs/locales/ja.json b/node_modules/yargs/locales/ja.json new file mode 100644 index 0000000..3954ae6 --- /dev/null +++ b/node_modules/yargs/locales/ja.json @@ -0,0 +1,51 @@ +{ + "Commands:": "コマンド:", + "Options:": "オプション:", + "Examples:": "例:", + "boolean": "真偽", + "count": "カウント", + "string": "文字列", + "number": "数値", + "array": "配列", + "required": "必須", + "default": "デフォルト", + "default:": "デフォルト:", + "choices:": "選択してください:", + "aliases:": "エイリアス:", + "generated-value": "生成された値", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "オプションではない引数が %s 個では不足しています。少なくとも %s 個の引数が必要です:", + "other": "オプションではない引数が %s 個では不足しています。少なくとも %s 個の引数が必要です:" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "オプションではない引数が %s 個では多すぎます。最大で %s 個までです:", + "other": "オプションではない引数が %s 個では多すぎます。最大で %s 個までです:" + }, + "Missing argument value: %s": { + "one": "引数の値が見つかりません: %s", + "other": "引数の値が見つかりません: %s" + }, + "Missing required argument: %s": { + "one": "必須の引数が見つかりません: %s", + "other": "必須の引数が見つかりません: %s" + }, + "Unknown argument: %s": { + "one": "未知の引数です: %s", + "other": "未知の引数です: %s" + }, + "Invalid values:": "不正な値です:", + "Argument: %s, Given: %s, Choices: %s": "引数は %s です。与えられた値: %s, 選択してください: %s", + "Argument check failed: %s": "引数のチェックに失敗しました: %s", + "Implications failed:": "オプションの組み合わせで不正が生じました:", + "Not enough arguments following: %s": "次の引数が不足しています。: %s", + "Invalid JSON config file: %s": "JSONの設定ファイルが不正です: %s", + "Path to JSON config file": "JSONの設定ファイルまでのpath", + "Show help": "ヘルプを表示", + "Show version number": "バージョンを表示", + "Did you mean %s?": "もしかして %s?", + "Arguments %s and %s are mutually exclusive" : "引数 %s と %s は同時に指定できません", + "Positionals:": "位置:", + "command": "コマンド", + "deprecated": "非推奨", + "deprecated: %s": "非推奨: %s" +} diff --git a/node_modules/yargs/locales/ko.json b/node_modules/yargs/locales/ko.json new file mode 100644 index 0000000..746bc89 --- /dev/null +++ b/node_modules/yargs/locales/ko.json @@ -0,0 +1,49 @@ +{ + "Commands:": "명령:", + "Options:": "옵션:", + "Examples:": "예시:", + "boolean": "불리언", + "count": "개수", + "string": "문자열", + "number": "숫자", + "array": "배열", + "required": "필수", + "default": "기본값", + "default:": "기본값:", + "choices:": "선택지:", + "aliases:": "별칭:", + "generated-value": "생성된 값", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "옵션이 아닌 인수가 충분하지 않습니다: %s개 입력받음, 최소 %s개 입력 필요", + "other": "옵션이 아닌 인수가 충분하지 않습니다: %s개 입력받음, 최소 %s개 입력 필요" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "옵션이 아닌 인수가 너무 많습니다: %s개 입력받음, 최대 %s개 입력 가능", + "other": "옵션이 아닌 인수가 너무 많습니다: %s개 입력받음, 최대 %s개 입력 가능" + }, + "Missing argument value: %s": { + "one": "인수가 주어지지 않았습니다: %s", + "other": "인수가 주어지지 않았습니다: %s" + }, + "Missing required argument: %s": { + "one": "필수 인수가 주어지지 않았습니다: %s", + "other": "필수 인수가 주어지지 않았습니다: %s" + }, + "Unknown argument: %s": { + "one": "알 수 없는 인수입니다: %s", + "other": "알 수 없는 인수입니다: %s" + }, + "Invalid values:": "유효하지 않은 값:", + "Argument: %s, Given: %s, Choices: %s": "인수: %s, 주어진 값: %s, 선택지: %s", + "Argument check failed: %s": "인수 체크에 실패했습니다: %s", + "Implications failed:": "주어진 인수에 필요한 추가 인수가 주어지지 않았습니다:", + "Not enough arguments following: %s": "다음 인수가 주어지지 않았습니다: %s", + "Invalid JSON config file: %s": "유효하지 않은 JSON 설정 파일: %s", + "Path to JSON config file": "JSON 설정 파일 경로", + "Show help": "도움말 표시", + "Show version number": "버전 표시", + "Did you mean %s?": "%s을(를) 찾으시나요?", + "Arguments %s and %s are mutually exclusive" : "인수 %s과(와) %s은(는) 동시에 지정할 수 없습니다", + "Positionals:": "위치:", + "command": "명령" +} diff --git a/node_modules/yargs/locales/nb.json b/node_modules/yargs/locales/nb.json new file mode 100644 index 0000000..6f410ed --- /dev/null +++ b/node_modules/yargs/locales/nb.json @@ -0,0 +1,44 @@ +{ + "Commands:": "Kommandoer:", + "Options:": "Alternativer:", + "Examples:": "Eksempler:", + "boolean": "boolsk", + "count": "antall", + "string": "streng", + "number": "nummer", + "array": "matrise", + "required": "obligatorisk", + "default": "standard", + "default:": "standard:", + "choices:": "valg:", + "generated-value": "generert-verdi", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Ikke nok ikke-alternativ argumenter: fikk %s, trenger minst %s", + "other": "Ikke nok ikke-alternativ argumenter: fikk %s, trenger minst %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "For mange ikke-alternativ argumenter: fikk %s, maksimum %s", + "other": "For mange ikke-alternativ argumenter: fikk %s, maksimum %s" + }, + "Missing argument value: %s": { + "one": "Mangler argument verdi: %s", + "other": "Mangler argument verdier: %s" + }, + "Missing required argument: %s": { + "one": "Mangler obligatorisk argument: %s", + "other": "Mangler obligatoriske argumenter: %s" + }, + "Unknown argument: %s": { + "one": "Ukjent argument: %s", + "other": "Ukjente argumenter: %s" + }, + "Invalid values:": "Ugyldige verdier:", + "Argument: %s, Given: %s, Choices: %s": "Argument: %s, Gitt: %s, Valg: %s", + "Argument check failed: %s": "Argumentsjekk mislyktes: %s", + "Implications failed:": "Konsekvensene mislyktes:", + "Not enough arguments following: %s": "Ikke nok følgende argumenter: %s", + "Invalid JSON config file: %s": "Ugyldig JSON konfigurasjonsfil: %s", + "Path to JSON config file": "Bane til JSON konfigurasjonsfil", + "Show help": "Vis hjelp", + "Show version number": "Vis versjonsnummer" +} diff --git a/node_modules/yargs/locales/nl.json b/node_modules/yargs/locales/nl.json new file mode 100644 index 0000000..9ff95c5 --- /dev/null +++ b/node_modules/yargs/locales/nl.json @@ -0,0 +1,49 @@ +{ + "Commands:": "Commando's:", + "Options:": "Opties:", + "Examples:": "Voorbeelden:", + "boolean": "booleaans", + "count": "aantal", + "string": "string", + "number": "getal", + "array": "lijst", + "required": "verplicht", + "default": "standaard", + "default:": "standaard:", + "choices:": "keuzes:", + "aliases:": "aliassen:", + "generated-value": "gegenereerde waarde", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Niet genoeg niet-optie-argumenten: %s gekregen, minstens %s nodig", + "other": "Niet genoeg niet-optie-argumenten: %s gekregen, minstens %s nodig" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Te veel niet-optie-argumenten: %s gekregen, maximum is %s", + "other": "Te veel niet-optie-argumenten: %s gekregen, maximum is %s" + }, + "Missing argument value: %s": { + "one": "Missende argumentwaarde: %s", + "other": "Missende argumentwaarden: %s" + }, + "Missing required argument: %s": { + "one": "Missend verplicht argument: %s", + "other": "Missende verplichte argumenten: %s" + }, + "Unknown argument: %s": { + "one": "Onbekend argument: %s", + "other": "Onbekende argumenten: %s" + }, + "Invalid values:": "Ongeldige waarden:", + "Argument: %s, Given: %s, Choices: %s": "Argument: %s, Gegeven: %s, Keuzes: %s", + "Argument check failed: %s": "Argumentcontrole mislukt: %s", + "Implications failed:": "Ontbrekende afhankelijke argumenten:", + "Not enough arguments following: %s": "Niet genoeg argumenten na: %s", + "Invalid JSON config file: %s": "Ongeldig JSON-config-bestand: %s", + "Path to JSON config file": "Pad naar JSON-config-bestand", + "Show help": "Toon help", + "Show version number": "Toon versienummer", + "Did you mean %s?": "Bedoelde u misschien %s?", + "Arguments %s and %s are mutually exclusive": "Argumenten %s en %s kunnen niet tegelijk gebruikt worden", + "Positionals:": "Positie-afhankelijke argumenten", + "command": "commando" +} diff --git a/node_modules/yargs/locales/nn.json b/node_modules/yargs/locales/nn.json new file mode 100644 index 0000000..24479ac --- /dev/null +++ b/node_modules/yargs/locales/nn.json @@ -0,0 +1,44 @@ +{ + "Commands:": "Kommandoar:", + "Options:": "Alternativ:", + "Examples:": "Døme:", + "boolean": "boolsk", + "count": "mengd", + "string": "streng", + "number": "nummer", + "array": "matrise", + "required": "obligatorisk", + "default": "standard", + "default:": "standard:", + "choices:": "val:", + "generated-value": "generert-verdi", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Ikkje nok ikkje-alternativ argument: fekk %s, treng minst %s", + "other": "Ikkje nok ikkje-alternativ argument: fekk %s, treng minst %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "For mange ikkje-alternativ argument: fekk %s, maksimum %s", + "other": "For mange ikkje-alternativ argument: fekk %s, maksimum %s" + }, + "Missing argument value: %s": { + "one": "Manglar argumentverdi: %s", + "other": "Manglar argumentverdiar: %s" + }, + "Missing required argument: %s": { + "one": "Manglar obligatorisk argument: %s", + "other": "Manglar obligatoriske argument: %s" + }, + "Unknown argument: %s": { + "one": "Ukjent argument: %s", + "other": "Ukjende argument: %s" + }, + "Invalid values:": "Ugyldige verdiar:", + "Argument: %s, Given: %s, Choices: %s": "Argument: %s, Gjeve: %s, Val: %s", + "Argument check failed: %s": "Argumentsjekk mislukkast: %s", + "Implications failed:": "Konsekvensane mislukkast:", + "Not enough arguments following: %s": "Ikkje nok fylgjande argument: %s", + "Invalid JSON config file: %s": "Ugyldig JSON konfigurasjonsfil: %s", + "Path to JSON config file": "Bane til JSON konfigurasjonsfil", + "Show help": "Vis hjelp", + "Show version number": "Vis versjonsnummer" +} diff --git a/node_modules/yargs/locales/pirate.json b/node_modules/yargs/locales/pirate.json new file mode 100644 index 0000000..dcb5cb7 --- /dev/null +++ b/node_modules/yargs/locales/pirate.json @@ -0,0 +1,13 @@ +{ + "Commands:": "Choose yer command:", + "Options:": "Options for me hearties!", + "Examples:": "Ex. marks the spot:", + "required": "requi-yar-ed", + "Missing required argument: %s": { + "one": "Ye be havin' to set the followin' argument land lubber: %s", + "other": "Ye be havin' to set the followin' arguments land lubber: %s" + }, + "Show help": "Parlay this here code of conduct", + "Show version number": "'Tis the version ye be askin' fer", + "Arguments %s and %s are mutually exclusive" : "Yon scurvy dogs %s and %s be as bad as rum and a prudish wench" +} diff --git a/node_modules/yargs/locales/pl.json b/node_modules/yargs/locales/pl.json new file mode 100644 index 0000000..a41d4bd --- /dev/null +++ b/node_modules/yargs/locales/pl.json @@ -0,0 +1,49 @@ +{ + "Commands:": "Polecenia:", + "Options:": "Opcje:", + "Examples:": "Przykłady:", + "boolean": "boolean", + "count": "ilość", + "string": "ciąg znaków", + "number": "liczba", + "array": "tablica", + "required": "wymagany", + "default": "domyślny", + "default:": "domyślny:", + "choices:": "dostępne:", + "aliases:": "aliasy:", + "generated-value": "wygenerowana-wartość", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Niewystarczająca ilość argumentów: otrzymano %s, wymagane co najmniej %s", + "other": "Niewystarczająca ilość argumentów: otrzymano %s, wymagane co najmniej %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Zbyt duża ilość argumentów: otrzymano %s, wymagane co najwyżej %s", + "other": "Zbyt duża ilość argumentów: otrzymano %s, wymagane co najwyżej %s" + }, + "Missing argument value: %s": { + "one": "Brak wartości dla argumentu: %s", + "other": "Brak wartości dla argumentów: %s" + }, + "Missing required argument: %s": { + "one": "Brak wymaganego argumentu: %s", + "other": "Brak wymaganych argumentów: %s" + }, + "Unknown argument: %s": { + "one": "Nieznany argument: %s", + "other": "Nieznane argumenty: %s" + }, + "Invalid values:": "Nieprawidłowe wartości:", + "Argument: %s, Given: %s, Choices: %s": "Argument: %s, Otrzymano: %s, Dostępne: %s", + "Argument check failed: %s": "Weryfikacja argumentów nie powiodła się: %s", + "Implications failed:": "Założenia nie zostały spełnione:", + "Not enough arguments following: %s": "Niewystarczająca ilość argumentów następujących po: %s", + "Invalid JSON config file: %s": "Nieprawidłowy plik konfiguracyjny JSON: %s", + "Path to JSON config file": "Ścieżka do pliku konfiguracyjnego JSON", + "Show help": "Pokaż pomoc", + "Show version number": "Pokaż numer wersji", + "Did you mean %s?": "Czy chodziło Ci o %s?", + "Arguments %s and %s are mutually exclusive": "Argumenty %s i %s wzajemnie się wykluczają", + "Positionals:": "Pozycyjne:", + "command": "polecenie" +} diff --git a/node_modules/yargs/locales/pt.json b/node_modules/yargs/locales/pt.json new file mode 100644 index 0000000..0c8ac99 --- /dev/null +++ b/node_modules/yargs/locales/pt.json @@ -0,0 +1,45 @@ +{ + "Commands:": "Comandos:", + "Options:": "Opções:", + "Examples:": "Exemplos:", + "boolean": "boolean", + "count": "contagem", + "string": "cadeia de caracteres", + "number": "número", + "array": "arranjo", + "required": "requerido", + "default": "padrão", + "default:": "padrão:", + "choices:": "escolhas:", + "generated-value": "valor-gerado", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Argumentos insuficientes não opcionais: Argumento %s, necessário pelo menos %s", + "other": "Argumentos insuficientes não opcionais: Argumento %s, necessário pelo menos %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Excesso de argumentos não opcionais: recebido %s, máximo de %s", + "other": "Excesso de argumentos não opcionais: recebido %s, máximo de %s" + }, + "Missing argument value: %s": { + "one": "Falta valor de argumento: %s", + "other": "Falta valores de argumento: %s" + }, + "Missing required argument: %s": { + "one": "Falta argumento obrigatório: %s", + "other": "Faltando argumentos obrigatórios: %s" + }, + "Unknown argument: %s": { + "one": "Argumento desconhecido: %s", + "other": "Argumentos desconhecidos: %s" + }, + "Invalid values:": "Valores inválidos:", + "Argument: %s, Given: %s, Choices: %s": "Argumento: %s, Dado: %s, Escolhas: %s", + "Argument check failed: %s": "Verificação de argumento falhou: %s", + "Implications failed:": "Implicações falharam:", + "Not enough arguments following: %s": "Insuficientes argumentos a seguir: %s", + "Invalid JSON config file: %s": "Arquivo de configuração em JSON esta inválido: %s", + "Path to JSON config file": "Caminho para o arquivo de configuração em JSON", + "Show help": "Mostra ajuda", + "Show version number": "Mostra número de versão", + "Arguments %s and %s are mutually exclusive" : "Argumentos %s e %s são mutualmente exclusivos" +} diff --git a/node_modules/yargs/locales/pt_BR.json b/node_modules/yargs/locales/pt_BR.json new file mode 100644 index 0000000..eae1ec6 --- /dev/null +++ b/node_modules/yargs/locales/pt_BR.json @@ -0,0 +1,48 @@ +{ + "Commands:": "Comandos:", + "Options:": "Opções:", + "Examples:": "Exemplos:", + "boolean": "booleano", + "count": "contagem", + "string": "string", + "number": "número", + "array": "array", + "required": "obrigatório", + "default:": "padrão:", + "choices:": "opções:", + "aliases:": "sinônimos:", + "generated-value": "valor-gerado", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Argumentos insuficientes: Argumento %s, necessário pelo menos %s", + "other": "Argumentos insuficientes: Argumento %s, necessário pelo menos %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Excesso de argumentos: recebido %s, máximo de %s", + "other": "Excesso de argumentos: recebido %s, máximo de %s" + }, + "Missing argument value: %s": { + "one": "Falta valor de argumento: %s", + "other": "Falta valores de argumento: %s" + }, + "Missing required argument: %s": { + "one": "Falta argumento obrigatório: %s", + "other": "Faltando argumentos obrigatórios: %s" + }, + "Unknown argument: %s": { + "one": "Argumento desconhecido: %s", + "other": "Argumentos desconhecidos: %s" + }, + "Invalid values:": "Valores inválidos:", + "Argument: %s, Given: %s, Choices: %s": "Argumento: %s, Dado: %s, Opções: %s", + "Argument check failed: %s": "Verificação de argumento falhou: %s", + "Implications failed:": "Implicações falharam:", + "Not enough arguments following: %s": "Argumentos insuficientes a seguir: %s", + "Invalid JSON config file: %s": "Arquivo JSON de configuração inválido: %s", + "Path to JSON config file": "Caminho para o arquivo JSON de configuração", + "Show help": "Exibe ajuda", + "Show version number": "Exibe a versão", + "Did you mean %s?": "Você quis dizer %s?", + "Arguments %s and %s are mutually exclusive" : "Argumentos %s e %s são mutualmente exclusivos", + "Positionals:": "Posicionais:", + "command": "comando" +} diff --git a/node_modules/yargs/locales/ru.json b/node_modules/yargs/locales/ru.json new file mode 100644 index 0000000..d5c9e32 --- /dev/null +++ b/node_modules/yargs/locales/ru.json @@ -0,0 +1,51 @@ +{ + "Commands:": "Команды:", + "Options:": "Опции:", + "Examples:": "Примеры:", + "boolean": "булевый тип", + "count": "подсчет", + "string": "строковой тип", + "number": "число", + "array": "массив", + "required": "необходимо", + "default": "по умолчанию", + "default:": "по умолчанию:", + "choices:": "возможности:", + "aliases:": "алиасы:", + "generated-value": "генерированное значение", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Недостаточно неопционных аргументов: есть %s, нужно как минимум %s", + "other": "Недостаточно неопционных аргументов: есть %s, нужно как минимум %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Слишком много неопционных аргументов: есть %s, максимум допустимо %s", + "other": "Слишком много неопционных аргументов: есть %s, максимум допустимо %s" + }, + "Missing argument value: %s": { + "one": "Не хватает значения аргумента: %s", + "other": "Не хватает значений аргументов: %s" + }, + "Missing required argument: %s": { + "one": "Не хватает необходимого аргумента: %s", + "other": "Не хватает необходимых аргументов: %s" + }, + "Unknown argument: %s": { + "one": "Неизвестный аргумент: %s", + "other": "Неизвестные аргументы: %s" + }, + "Invalid values:": "Недействительные значения:", + "Argument: %s, Given: %s, Choices: %s": "Аргумент: %s, Данное значение: %s, Возможности: %s", + "Argument check failed: %s": "Проверка аргументов не удалась: %s", + "Implications failed:": "Данный аргумент требует следующий дополнительный аргумент:", + "Not enough arguments following: %s": "Недостаточно следующих аргументов: %s", + "Invalid JSON config file: %s": "Недействительный файл конфигурации JSON: %s", + "Path to JSON config file": "Путь к файлу конфигурации JSON", + "Show help": "Показать помощь", + "Show version number": "Показать номер версии", + "Did you mean %s?": "Вы имели в виду %s?", + "Arguments %s and %s are mutually exclusive": "Аргументы %s и %s являются взаимоисключающими", + "Positionals:": "Позиционные аргументы:", + "command": "команда", + "deprecated": "устар.", + "deprecated: %s": "устар.: %s" +} diff --git a/node_modules/yargs/locales/th.json b/node_modules/yargs/locales/th.json new file mode 100644 index 0000000..33b048e --- /dev/null +++ b/node_modules/yargs/locales/th.json @@ -0,0 +1,46 @@ +{ + "Commands:": "คอมมาน", + "Options:": "ออฟชั่น", + "Examples:": "ตัวอย่าง", + "boolean": "บูลีน", + "count": "นับ", + "string": "สตริง", + "number": "ตัวเลข", + "array": "อาเรย์", + "required": "จำเป็น", + "default": "ค่าเริ่มต้", + "default:": "ค่าเริ่มต้น", + "choices:": "ตัวเลือก", + "aliases:": "เอเลียส", + "generated-value": "ค่าที่ถูกสร้างขึ้น", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "ใส่อาร์กิวเมนต์ไม่ครบตามจำนวนที่กำหนด: ใส่ค่ามาจำนวน %s ค่า, แต่ต้องการอย่างน้อย %s ค่า", + "other": "ใส่อาร์กิวเมนต์ไม่ครบตามจำนวนที่กำหนด: ใส่ค่ามาจำนวน %s ค่า, แต่ต้องการอย่างน้อย %s ค่า" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "ใส่อาร์กิวเมนต์เกินจำนวนที่กำหนด: ใส่ค่ามาจำนวน %s ค่า, แต่ต้องการมากที่สุด %s ค่า", + "other": "ใส่อาร์กิวเมนต์เกินจำนวนที่กำหนด: ใส่ค่ามาจำนวน %s ค่า, แต่ต้องการมากที่สุด %s ค่า" + }, + "Missing argument value: %s": { + "one": "ค่าอาร์กิวเมนต์ที่ขาดไป: %s", + "other": "ค่าอาร์กิวเมนต์ที่ขาดไป: %s" + }, + "Missing required argument: %s": { + "one": "อาร์กิวเมนต์จำเป็นที่ขาดไป: %s", + "other": "อาร์กิวเมนต์จำเป็นที่ขาดไป: %s" + }, + "Unknown argument: %s": { + "one": "อาร์กิวเมนต์ที่ไม่รู้จัก: %s", + "other": "อาร์กิวเมนต์ที่ไม่รู้จัก: %s" + }, + "Invalid values:": "ค่าไม่ถูกต้อง:", + "Argument: %s, Given: %s, Choices: %s": "อาร์กิวเมนต์: %s, ได้รับ: %s, ตัวเลือก: %s", + "Argument check failed: %s": "ตรวจสอบพบอาร์กิวเมนต์ที่ไม่ถูกต้อง: %s", + "Implications failed:": "Implications ไม่สำเร็จ:", + "Not enough arguments following: %s": "ใส่อาร์กิวเมนต์ไม่ครบ: %s", + "Invalid JSON config file: %s": "ไฟล์คอนฟิค JSON ไม่ถูกต้อง: %s", + "Path to JSON config file": "พาทไฟล์คอนฟิค JSON", + "Show help": "ขอความช่วยเหลือ", + "Show version number": "แสดงตัวเลขเวอร์ชั่น", + "Did you mean %s?": "คุณหมายถึง %s?" +} diff --git a/node_modules/yargs/locales/tr.json b/node_modules/yargs/locales/tr.json new file mode 100644 index 0000000..0d0d2cc --- /dev/null +++ b/node_modules/yargs/locales/tr.json @@ -0,0 +1,48 @@ +{ + "Commands:": "Komutlar:", + "Options:": "Seçenekler:", + "Examples:": "Örnekler:", + "boolean": "boolean", + "count": "sayı", + "string": "string", + "number": "numara", + "array": "array", + "required": "zorunlu", + "default": "varsayılan", + "default:": "varsayılan:", + "choices:": "seçimler:", + "aliases:": "takma adlar:", + "generated-value": "oluşturulan-değer", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Seçenek dışı argümanlar yetersiz: %s bulundu, %s gerekli", + "other": "Seçenek dışı argümanlar yetersiz: %s bulundu, %s gerekli" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Seçenek dışı argümanlar gereğinden fazla: %s bulundu, azami %s", + "other": "Seçenek dışı argümanlar gereğinden fazla: %s bulundu, azami %s" + }, + "Missing argument value: %s": { + "one": "Eksik argüman değeri: %s", + "other": "Eksik argüman değerleri: %s" + }, + "Missing required argument: %s": { + "one": "Eksik zorunlu argüman: %s", + "other": "Eksik zorunlu argümanlar: %s" + }, + "Unknown argument: %s": { + "one": "Bilinmeyen argüman: %s", + "other": "Bilinmeyen argümanlar: %s" + }, + "Invalid values:": "Geçersiz değerler:", + "Argument: %s, Given: %s, Choices: %s": "Argüman: %s, Verilen: %s, Seçimler: %s", + "Argument check failed: %s": "Argüman kontrolü başarısız oldu: %s", + "Implications failed:": "Sonuçlar başarısız oldu:", + "Not enough arguments following: %s": "%s için yeterli argüman bulunamadı", + "Invalid JSON config file: %s": "Geçersiz JSON yapılandırma dosyası: %s", + "Path to JSON config file": "JSON yapılandırma dosya konumu", + "Show help": "Yardım detaylarını göster", + "Show version number": "Versiyon detaylarını göster", + "Did you mean %s?": "Bunu mu demek istediniz: %s?", + "Positionals:": "Sıralılar:", + "command": "komut" +} diff --git a/node_modules/yargs/locales/uk_UA.json b/node_modules/yargs/locales/uk_UA.json new file mode 100644 index 0000000..0af0e99 --- /dev/null +++ b/node_modules/yargs/locales/uk_UA.json @@ -0,0 +1,51 @@ +{ + "Commands:": "Команди:", + "Options:": "Опції:", + "Examples:": "Приклади:", + "boolean": "boolean", + "count": "кількість", + "string": "строка", + "number": "число", + "array": "масива", + "required": "обов'язково", + "default": "за замовчуванням", + "default:": "за замовчуванням:", + "choices:": "доступні варіанти:", + "aliases:": "псевдоніми:", + "generated-value": "згенероване значення", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "Недостатньо аргументів: наразі %s, потрібно %s або більше", + "other": "Недостатньо аргументів: наразі %s, потрібно %s або більше" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "Забагато аргументів: наразі %s, максимум %s", + "other": "Too many non-option arguments: наразі %s, максимум of %s" + }, + "Missing argument value: %s": { + "one": "Відсутнє значення для аргументу: %s", + "other": "Відсутні значення для аргументу: %s" + }, + "Missing required argument: %s": { + "one": "Відсутній обов'язковий аргумент: %s", + "other": "Відсутні обов'язкові аргументи: %s" + }, + "Unknown argument: %s": { + "one": "Аргумент %s не підтримується", + "other": "Аргументи %s не підтримуються" + }, + "Invalid values:": "Некоректні значення:", + "Argument: %s, Given: %s, Choices: %s": "Аргумент: %s, Введено: %s, Доступні варіанти: %s", + "Argument check failed: %s": "Аргумент не пройшов перевірку: %s", + "Implications failed:": "Відсутні залежні аргументи:", + "Not enough arguments following: %s": "Не достатньо аргументів після: %s", + "Invalid JSON config file: %s": "Некоректний JSON-файл конфігурації: %s", + "Path to JSON config file": "Шлях до JSON-файлу конфігурації", + "Show help": "Показати довідку", + "Show version number": "Показати версію", + "Did you mean %s?": "Можливо, ви мали на увазі %s?", + "Arguments %s and %s are mutually exclusive" : "Аргументи %s та %s взаємовиключні", + "Positionals:": "Позиційні:", + "command": "команда", + "deprecated": "застарілий", + "deprecated: %s": "застарілий: %s" +} diff --git a/node_modules/yargs/locales/uz.json b/node_modules/yargs/locales/uz.json new file mode 100644 index 0000000..0d07168 --- /dev/null +++ b/node_modules/yargs/locales/uz.json @@ -0,0 +1,52 @@ +{ + "Commands:": "Buyruqlar:", + "Options:": "Imkoniyatlar:", + "Examples:": "Misollar:", + "boolean": "boolean", + "count": "sanoq", + "string": "satr", + "number": "raqam", + "array": "massiv", + "required": "majburiy", + "default": "boshlang'ich", + "default:": "boshlang'ich:", + "choices:": "tanlovlar:", + "aliases:": "taxalluslar:", + "generated-value": "yaratilgan-qiymat", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "No-imkoniyat argumentlar yetarli emas: berilgan %s, minimum %s", + "other": "No-imkoniyat argumentlar yetarli emas: berilgan %s, minimum %s" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "No-imkoniyat argumentlar juda ko'p: berilgan %s, maksimum %s", + "other": "No-imkoniyat argumentlar juda ko'p: got %s, maksimum %s" + }, + "Missing argument value: %s": { + "one": "Argument qiymati berilmagan: %s", + "other": "Argument qiymatlari berilmagan: %s" + }, + "Missing required argument: %s": { + "one": "Majburiy argument berilmagan: %s", + "other": "Majburiy argumentlar berilmagan: %s" + }, + "Unknown argument: %s": { + "one": "Noma'lum argument berilmagan: %s", + "other": "Noma'lum argumentlar berilmagan: %s" + }, + "Invalid values:": "Nosoz qiymatlar:", + "Argument: %s, Given: %s, Choices: %s": "Argument: %s, Berilgan: %s, Tanlovlar: %s", + "Argument check failed: %s": "Muvaffaqiyatsiz argument tekshiruvi: %s", + "Implications failed:": "Bog'liq argumentlar berilmagan:", + "Not enough arguments following: %s": "Quyidagi argumentlar yetarli emas: %s", + "Invalid JSON config file: %s": "Nosoz JSON konfiguratsiya fayli: %s", + "Path to JSON config file": "JSON konfiguratsiya fayli joylashuvi", + "Show help": "Yordam ko'rsatish", + "Show version number": "Versiyani ko'rsatish", + "Did you mean %s?": "%s ni nazarda tutyapsizmi?", + "Arguments %s and %s are mutually exclusive" : "%s va %s argumentlari alohida", + "Positionals:": "Positsionallar:", + "command": "buyruq", + "deprecated": "eskirgan", + "deprecated: %s": "eskirgan: %s" + } + \ No newline at end of file diff --git a/node_modules/yargs/locales/zh_CN.json b/node_modules/yargs/locales/zh_CN.json new file mode 100644 index 0000000..257d26b --- /dev/null +++ b/node_modules/yargs/locales/zh_CN.json @@ -0,0 +1,48 @@ +{ + "Commands:": "命令:", + "Options:": "选项:", + "Examples:": "示例:", + "boolean": "布尔", + "count": "计数", + "string": "字符串", + "number": "数字", + "array": "数组", + "required": "必需", + "default": "默认值", + "default:": "默认值:", + "choices:": "可选值:", + "generated-value": "生成的值", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "缺少 non-option 参数:传入了 %s 个, 至少需要 %s 个", + "other": "缺少 non-option 参数:传入了 %s 个, 至少需要 %s 个" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "non-option 参数过多:传入了 %s 个, 最大允许 %s 个", + "other": "non-option 参数过多:传入了 %s 个, 最大允许 %s 个" + }, + "Missing argument value: %s": { + "one": "没有给此选项指定值:%s", + "other": "没有给这些选项指定值:%s" + }, + "Missing required argument: %s": { + "one": "缺少必须的选项:%s", + "other": "缺少这些必须的选项:%s" + }, + "Unknown argument: %s": { + "one": "无法识别的选项:%s", + "other": "无法识别这些选项:%s" + }, + "Invalid values:": "无效的选项值:", + "Argument: %s, Given: %s, Choices: %s": "选项名称: %s, 传入的值: %s, 可选的值:%s", + "Argument check failed: %s": "选项值验证失败:%s", + "Implications failed:": "缺少依赖的选项:", + "Not enough arguments following: %s": "没有提供足够的值给此选项:%s", + "Invalid JSON config file: %s": "无效的 JSON 配置文件:%s", + "Path to JSON config file": "JSON 配置文件的路径", + "Show help": "显示帮助信息", + "Show version number": "显示版本号", + "Did you mean %s?": "是指 %s?", + "Arguments %s and %s are mutually exclusive" : "选项 %s 和 %s 是互斥的", + "Positionals:": "位置:", + "command": "命令" +} diff --git a/node_modules/yargs/locales/zh_TW.json b/node_modules/yargs/locales/zh_TW.json new file mode 100644 index 0000000..e38495d --- /dev/null +++ b/node_modules/yargs/locales/zh_TW.json @@ -0,0 +1,51 @@ +{ + "Commands:": "命令:", + "Options:": "選項:", + "Examples:": "範例:", + "boolean": "布林", + "count": "次數", + "string": "字串", + "number": "數字", + "array": "陣列", + "required": "必填", + "default": "預設值", + "default:": "預設值:", + "choices:": "可選值:", + "aliases:": "別名:", + "generated-value": "生成的值", + "Not enough non-option arguments: got %s, need at least %s": { + "one": "non-option 引數不足:只傳入了 %s 個, 至少要 %s 個", + "other": "non-option 引數不足:只傳入了 %s 個, 至少要 %s 個" + }, + "Too many non-option arguments: got %s, maximum of %s": { + "one": "non-option 引數過多:傳入了 %s 個, 但最多 %s 個", + "other": "non-option 引數過多:傳入了 %s 個, 但最多 %s 個" + }, + "Missing argument value: %s": { + "one": "此引數無指定值:%s", + "other": "這些引數無指定值:%s" + }, + "Missing required argument: %s": { + "one": "缺少必須的引數:%s", + "other": "缺少這些必須的引數:%s" + }, + "Unknown argument: %s": { + "one": "未知的引數:%s", + "other": "未知的引數:%s" + }, + "Invalid values:": "無效的選項值:", + "Argument: %s, Given: %s, Choices: %s": "引數名稱: %s, 傳入的值: %s, 可選的值:%s", + "Argument check failed: %s": "引數驗證失敗:%s", + "Implications failed:": "缺少依賴引數:", + "Not enough arguments following: %s": "沒有提供足夠的值給此引數:%s", + "Invalid JSON config file: %s": "無效的 JSON 設置文件:%s", + "Path to JSON config file": "JSON 設置文件的路徑", + "Show help": "顯示說明", + "Show version number": "顯示版本", + "Did you mean %s?": "您是指 %s 嗎?", + "Arguments %s and %s are mutually exclusive" : "引數 %s 和 %s 互斥", + "Positionals:": "位置:", + "command": "命令", + "deprecated": "已淘汰", + "deprecated: %s": "已淘汰:%s" + } diff --git a/node_modules/yargs/package.json b/node_modules/yargs/package.json new file mode 100644 index 0000000..389cc6b --- /dev/null +++ b/node_modules/yargs/package.json @@ -0,0 +1,123 @@ +{ + "name": "yargs", + "version": "17.7.2", + "description": "yargs the modern, pirate-themed, successor to optimist.", + "main": "./index.cjs", + "exports": { + "./package.json": "./package.json", + ".": [ + { + "import": "./index.mjs", + "require": "./index.cjs" + }, + "./index.cjs" + ], + "./helpers": { + "import": "./helpers/helpers.mjs", + "require": "./helpers/index.js" + }, + "./browser": { + "import": "./browser.mjs", + "types": "./browser.d.ts" + }, + "./yargs": [ + { + "import": "./yargs.mjs", + "require": "./yargs" + }, + "./yargs" + ] + }, + "type": "module", + "module": "./index.mjs", + "contributors": [ + { + "name": "Yargs Contributors", + "url": "https://github.com/yargs/yargs/graphs/contributors" + } + ], + "files": [ + "browser.mjs", + "browser.d.ts", + "index.cjs", + "helpers/*.js", + "helpers/*", + "index.mjs", + "yargs", + "yargs.mjs", + "build", + "locales", + "LICENSE", + "lib/platform-shims/*.mjs", + "!*.d.ts", + "!**/*.d.ts" + ], + "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" + }, + "devDependencies": { + "@types/chai": "^4.2.11", + "@types/mocha": "^9.0.0", + "@types/node": "^18.0.0", + "c8": "^7.7.0", + "chai": "^4.2.0", + "chalk": "^4.0.0", + "coveralls": "^3.0.9", + "cpr": "^3.0.1", + "cross-env": "^7.0.2", + "cross-spawn": "^7.0.0", + "eslint": "^7.23.0", + "gts": "^3.0.0", + "hashish": "0.0.4", + "mocha": "^9.0.0", + "rimraf": "^3.0.2", + "rollup": "^2.23.0", + "rollup-plugin-cleanup": "^3.1.1", + "rollup-plugin-terser": "^7.0.2", + "rollup-plugin-ts": "^2.0.4", + "typescript": "^4.0.2", + "which": "^2.0.0", + "yargs-test-extends": "^1.0.1" + }, + "scripts": { + "fix": "gts fix && npm run fix:js", + "fix:js": "eslint . --ext cjs --ext mjs --ext js --fix", + "posttest": "npm run check", + "test": "c8 mocha --enable-source-maps ./test/*.cjs --require ./test/before.cjs --timeout=12000 --check-leaks", + "test:esm": "c8 mocha --enable-source-maps ./test/esm/*.mjs --check-leaks", + "coverage": "c8 report --check-coverage", + "prepare": "npm run compile", + "pretest": "npm run compile -- -p tsconfig.test.json && cross-env NODE_ENV=test npm run build:cjs", + "compile": "rimraf build && tsc", + "postcompile": "npm run build:cjs", + "build:cjs": "rollup -c rollup.config.cjs", + "postbuild:cjs": "rimraf ./build/index.cjs.d.ts", + "check": "gts lint && npm run check:js", + "check:js": "eslint . --ext cjs --ext mjs --ext js", + "clean": "gts clean" + }, + "repository": { + "type": "git", + "url": "https://github.com/yargs/yargs.git" + }, + "homepage": "https://yargs.js.org/", + "keywords": [ + "argument", + "args", + "option", + "parser", + "parsing", + "cli", + "command" + ], + "license": "MIT", + "engines": { + "node": ">=12" + } +} diff --git a/node_modules/yargs/yargs b/node_modules/yargs/yargs new file mode 100644 index 0000000..8460d10 --- /dev/null +++ b/node_modules/yargs/yargs @@ -0,0 +1,9 @@ +// TODO: consolidate on using a helpers file at some point in the future, which +// is the approach currently used to export Parser and applyExtends for ESM: +const {applyExtends, cjsPlatformShim, Parser, Yargs, processArgv} = require('./build/index.cjs') +Yargs.applyExtends = (config, cwd, mergeExtends) => { + return applyExtends(config, cwd, mergeExtends, cjsPlatformShim) +} +Yargs.hideBin = processArgv.hideBin +Yargs.Parser = Parser +module.exports = Yargs diff --git a/node_modules/yargs/yargs.mjs b/node_modules/yargs/yargs.mjs new file mode 100644 index 0000000..6d9f390 --- /dev/null +++ b/node_modules/yargs/yargs.mjs @@ -0,0 +1,10 @@ +// TODO: consolidate on using a helpers file at some point in the future, which +// is the approach currently used to export Parser and applyExtends for ESM: +import pkg from './build/index.cjs'; +const {applyExtends, cjsPlatformShim, Parser, processArgv, Yargs} = pkg; +Yargs.applyExtends = (config, cwd, mergeExtends) => { + return applyExtends(config, cwd, mergeExtends, cjsPlatformShim); +}; +Yargs.hideBin = processArgv.hideBin; +Yargs.Parser = Parser; +export default Yargs;